flexbiz-server 12.4.21 → 12.4.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1068) hide show
  1. package/package.json +2 -1
  2. package/server/app.js +1 -22
  3. package/server/auths/bearer.js +1 -3
  4. package/server/auths/facebook.js +1 -12
  5. package/server/auths/google.js +1 -13
  6. package/server/auths/local.js +1 -64
  7. package/server/cluster.js +1 -27
  8. package/server/controllers/controller.js +1 -107
  9. package/server/controllers/controllerRPT.js +1 -27
  10. package/server/controllers/controllerUtils.js +1 -76
  11. package/server/controllers/createHandler.js +1 -35
  12. package/server/controllers/createRouteHandler.js +1 -4
  13. package/server/controllers/deleteHandler.js +1 -11
  14. package/server/controllers/deleteManyHandler.js +1 -2
  15. package/server/controllers/exportHandler.js +1 -17
  16. package/server/controllers/findHandler.js +1 -53
  17. package/server/controllers/handlers.js +1 -3
  18. package/server/controllers/historyHandler.js +1 -5
  19. package/server/controllers/importFromExcelHandler.js +1 -14
  20. package/server/controllers/importFromGsHandler.js +1 -10
  21. package/server/controllers/importFromJsonHandler.js +1 -7
  22. package/server/controllers/importHandler.js +1 -21
  23. package/server/controllers/logHandler.js +1 -5
  24. package/server/controllers/rptCreateRouteHandler.js +1 -4
  25. package/server/controllers/rptExcelHandler.js +1 -32
  26. package/server/controllers/rptHandler.js +1 -13
  27. package/server/controllers/updateBookHandler.js +1 -10
  28. package/server/controllers/updateFieldHandler.js +1 -12
  29. package/server/controllers/updateHandler.js +1 -39
  30. package/server/controllers/updateKeyHandler.js +1 -14
  31. package/server/controllers/viewHandler.js +1 -13
  32. package/server/flow/FlowEngine.js +1 -64
  33. package/server/flow/WebhookManager.js +1 -26
  34. package/server/flow/handlers.js +1 -3
  35. package/server/flow/nodes/aiAnalysis.js +1 -9
  36. package/server/flow/nodes/customer.js +1 -15
  37. package/server/flow/nodes/data.js +1 -14
  38. package/server/flow/nodes/debug.js +1 -2
  39. package/server/flow/nodes/delay.js +1 -3
  40. package/server/flow/nodes/email.js +1 -9
  41. package/server/flow/nodes/event.js +1 -11
  42. package/server/flow/nodes/facebook.js +1 -3
  43. package/server/flow/nodes/facebookConversations.js +1 -5
  44. package/server/flow/nodes/facebookCreatePost.js +1 -10
  45. package/server/flow/nodes/facebookSendMessage.js +1 -12
  46. package/server/flow/nodes/forEachItem.js +1 -8
  47. package/server/flow/nodes/function.js +1 -4
  48. package/server/flow/nodes/httprequest.js +1 -7
  49. package/server/flow/nodes/inject.js +1 -12
  50. package/server/flow/nodes/pushNotification.js +1 -5
  51. package/server/flow/nodes/report.js +1 -6
  52. package/server/flow/nodes/saveData.js +1 -2
  53. package/server/flow/nodes/switch.js +1 -20
  54. package/server/flow/nodes/webhook.js +1 -1
  55. package/server/flow/nodes/zaloSendMessage.js +1 -4
  56. package/server/flow/utils.js +1 -2
  57. package/server/global.js +1 -23
  58. package/server/libs/BlockchainTransactionPool.js +1 -3
  59. package/server/libs/WorkerPool.js +1 -4
  60. package/server/libs/WorkerStaticPool.js +1 -16
  61. package/server/libs/WorkerStaticPool_v1.js +1 -5
  62. package/server/libs/assbonus.js +1 -7
  63. package/server/libs/backup.js +1 -2
  64. package/server/libs/blockchainconnect.js +1 -12
  65. package/server/libs/cdpsdiem.js +1 -5
  66. package/server/libs/cdpsdt.js +1 -7
  67. package/server/libs/cdpskh.js +1 -9
  68. package/server/libs/cdpsnphep.js +1 -6
  69. package/server/libs/cdpstk.js +1 -11
  70. package/server/libs/ckcn.js +1 -12
  71. package/server/libs/ckdiem.js +1 -5
  72. package/server/libs/ckdt.js +1 -6
  73. package/server/libs/cknphep.js +1 -6
  74. package/server/libs/cktk.js +1 -4
  75. package/server/libs/cktt.js +1 -9
  76. package/server/libs/ckvt.js +1 -12
  77. package/server/libs/ckvtcapphat.js +1 -6
  78. package/server/libs/ckvtnpp.js +1 -8
  79. package/server/libs/ckvttt.js +1 -11
  80. package/server/libs/createSocaitheongay.js +1 -9
  81. package/server/libs/ctdiem.js +1 -5
  82. package/server/libs/ctvt.js +1 -7
  83. package/server/libs/ctvtnpp.js +1 -7
  84. package/server/libs/ctvttt.js +1 -7
  85. package/server/libs/databanle.js +1 -17
  86. package/server/libs/databanlenpp.js +1 -8
  87. package/server/libs/databanletheongay.js +1 -27
  88. package/server/libs/dkcn.js +1 -10
  89. package/server/libs/dkdiem.js +1 -5
  90. package/server/libs/dkdt.js +1 -6
  91. package/server/libs/dknphep.js +1 -7
  92. package/server/libs/dktk.js +1 -4
  93. package/server/libs/dktt.js +1 -8
  94. package/server/libs/dkvt.js +1 -9
  95. package/server/libs/dkvtnpp.js +1 -7
  96. package/server/libs/dkvttt.js +1 -7
  97. package/server/libs/dncn.js +1 -6
  98. package/server/libs/dntk.js +1 -4
  99. package/server/libs/dntt.js +1 -6
  100. package/server/libs/docs.js +1 -452
  101. package/server/libs/dstkcn.js +1 -1
  102. package/server/libs/dstktt.js +1 -1
  103. package/server/libs/dtbanletheonpp.js +1 -17
  104. package/server/libs/dtbanletheosp.js +1 -15
  105. package/server/libs/dtbanletheospnpp.js +1 -15
  106. package/server/libs/email.js +1 -3
  107. package/server/libs/excel.js +1 -2
  108. package/server/libs/getGiaban.js +1 -67
  109. package/server/libs/getGiabanAsync.js +1 -1
  110. package/server/libs/getNotifies.js +1 -1
  111. package/server/libs/htmlReport.js +1 -9
  112. package/server/libs/initDatabase.js +1 -9
  113. package/server/libs/invoiceEasy.js +1 -109
  114. package/server/libs/invoiceViettel.js +1 -29
  115. package/server/libs/invoiceVnpt.js +1 -22
  116. package/server/libs/kpistatus.js +1 -32
  117. package/server/libs/load-template.js +1 -3
  118. package/server/libs/mailmanagement.js +1 -13
  119. package/server/libs/mongooseDeletePost.js +1 -6
  120. package/server/libs/mongooseLeanId.js +1 -1
  121. package/server/libs/mongoosePatch.js +1 -8
  122. package/server/libs/onepay-payment.js +1 -4
  123. package/server/libs/optimizeBookkeeping.js +1 -14
  124. package/server/libs/parse-template.js +1 -5
  125. package/server/libs/permission.js +1 -51
  126. package/server/libs/phanbokh.js +1 -3
  127. package/server/libs/post-book.js +1 -23
  128. package/server/libs/post-socai.js +1 -25
  129. package/server/libs/post-sokho.js +1 -27
  130. package/server/libs/prototypes.js +1 -29
  131. package/server/libs/psdt.js +1 -1
  132. package/server/libs/pskh.js +1 -1
  133. package/server/libs/pstk.js +1 -1
  134. package/server/libs/redis-cache.js +1 -17
  135. package/server/libs/restore.js +1 -1
  136. package/server/libs/schedule.js +1 -18
  137. package/server/libs/sessionContext.js +2 -14
  138. package/server/libs/textReport.js +1 -3
  139. package/server/libs/thnxt.js +1 -9
  140. package/server/libs/thnxtnpp.js +1 -9
  141. package/server/libs/thnxttt.js +1 -8
  142. package/server/libs/tinhGt.js +1 -7
  143. package/server/libs/tinhGtCapnhatPNK.js +1 -7
  144. package/server/libs/tinhGtPhanboHeSo.js +1 -12
  145. package/server/libs/tinhGtPhanboSltp.js +1 -10
  146. package/server/libs/tinhGtPhanboYtcp.js +1 -11
  147. package/server/libs/tinhGtSltk.js +1 -9
  148. package/server/libs/tinhGtThcppstk.js +1 -10
  149. package/server/libs/tinhGtTrucTiep.js +1 -7
  150. package/server/libs/tinhGtXoa.js +1 -3
  151. package/server/libs/tinhgiatb.js +1 -38
  152. package/server/libs/tinhgiatb1vt.js +1 -5
  153. package/server/libs/tinhhoahong.js +1 -64
  154. package/server/libs/tinhhoahongnpp.js +1 -46
  155. package/server/libs/tinhkhauhao1ts.js +1 -12
  156. package/server/libs/tinhkhauhaots.js +1 -8
  157. package/server/libs/tuoinophaithu.js +1 -10
  158. package/server/libs/tuoinophaitra.js +1 -11
  159. package/server/libs/utils.js +1 -78
  160. package/server/libs/validate.js +1 -4
  161. package/server/libs/validator-acc-cust.js +1 -1
  162. package/server/libs/validator-account.js +1 -4
  163. package/server/libs/validator-vt.js +1 -2
  164. package/server/libs/validator.js +1 -11
  165. package/server/libs/vsocai.js +1 -8
  166. package/server/models/account.js +1 -7
  167. package/server/models/afflink.js +1 -2
  168. package/server/models/app.js +1 -15
  169. package/server/models/approve.js +1 -93
  170. package/server/models/assabcihandler.js +1 -35
  171. package/server/models/assbank.js +1 -19
  172. package/server/models/assbooking.js +1 -4
  173. package/server/models/assbuy.js +1 -3
  174. package/server/models/asscashwithdraw.js +1 -4
  175. package/server/models/assfindhash.js +1 -2
  176. package/server/models/assinvestment.js +1 -13
  177. package/server/models/assissue.js +1 -2
  178. package/server/models/asskey.js +1 -15
  179. package/server/models/assneedtobuy.js +1 -6
  180. package/server/models/assperiod.js +1 -7
  181. package/server/models/assproduct.js +1 -13
  182. package/server/models/assprofitsharing.js +1 -4
  183. package/server/models/assreceiver.js +1 -2
  184. package/server/models/assrequest.js +1 -11
  185. package/server/models/asssell.js +1 -7
  186. package/server/models/asstransaction.js +1 -3
  187. package/server/models/asstransfer.js +1 -4
  188. package/server/models/assuser_identity.js +1 -4
  189. package/server/models/asswithdraw.js +1 -4
  190. package/server/models/attend.js +1 -2
  191. package/server/models/banggiaban.js +1 -8
  192. package/server/models/bangtinhluong.js +1 -6
  193. package/server/models/base.js +1 -1
  194. package/server/models/bds_area.js +1 -4
  195. package/server/models/bds_block.js +1 -3
  196. package/server/models/bds_building.js +1 -4
  197. package/server/models/bds_floor.js +1 -3
  198. package/server/models/bds_floordetail.js +1 -9
  199. package/server/models/bds_nhadat.js +1 -11
  200. package/server/models/bds_nhomnhadat.js +1 -4
  201. package/server/models/bds_phanloainhadat.js +1 -3
  202. package/server/models/bg1.js +1 -9
  203. package/server/models/bg2.js +1 -10
  204. package/server/models/cache.js +1 -3
  205. package/server/models/calllog.js +1 -4
  206. package/server/models/campaign.js +1 -6
  207. package/server/models/cart.js +1 -5
  208. package/server/models/cddiem.js +1 -2
  209. package/server/models/cddt.js +1 -3
  210. package/server/models/cdkh.js +1 -5
  211. package/server/models/cdkhtheongay.js +1 -5
  212. package/server/models/cdnphep.js +1 -2
  213. package/server/models/cdtk.js +1 -3
  214. package/server/models/cdtktheongay.js +1 -3
  215. package/server/models/cdvt.js +1 -5
  216. package/server/models/cdvtnpp.js +1 -6
  217. package/server/models/cdvttheongay.js +1 -5
  218. package/server/models/chamcong.js +1 -7
  219. package/server/models/checkin.js +1 -4
  220. package/server/models/checkinactivity.js +1 -3
  221. package/server/models/checkinkpi.js +1 -4
  222. package/server/models/checkinlocation.js +1 -2
  223. package/server/models/chitieukpi.js +1 -3
  224. package/server/models/chudethaoluan.js +1 -3
  225. package/server/models/ckgtluong.js +1 -2
  226. package/server/models/colleague.js +1 -2
  227. package/server/models/comment.js +1 -4
  228. package/server/models/congdoansx.js +1 -4
  229. package/server/models/congtacvien.js +1 -4
  230. package/server/models/congthuctinhgiaban.js +1 -8
  231. package/server/models/consultant.js +1 -4
  232. package/server/models/contract.js +1 -6
  233. package/server/models/counter.js +1 -2
  234. package/server/models/ctds.js +1 -5
  235. package/server/models/ctds2.js +1 -6
  236. package/server/models/currency.js +1 -3
  237. package/server/models/customer.js +1 -31
  238. package/server/models/databanle.js +1 -8
  239. package/server/models/datlich.js +1 -4
  240. package/server/models/department.js +1 -4
  241. package/server/models/dh2.js +1 -20
  242. package/server/models/diagram.js +1 -2
  243. package/server/models/dinhmucsx.js +1 -8
  244. package/server/models/dkhoc.js +1 -6
  245. package/server/models/dknphep.js +1 -2
  246. package/server/models/dmban.js +1 -4
  247. package/server/models/dmbp.js +1 -12
  248. package/server/models/dmca.js +1 -2
  249. package/server/models/dmchietkhau.js +1 -9
  250. package/server/models/dmchietkhauhd.js +1 -20
  251. package/server/models/dmcpmh.js +1 -2
  252. package/server/models/dmdiemthuong.js +1 -5
  253. package/server/models/dmdoi.js +1 -4
  254. package/server/models/dmdoituongdanhgia.js +1 -2
  255. package/server/models/dmdt.js +1 -8
  256. package/server/models/dmdvt.js +1 -3
  257. package/server/models/dmgiaban.js +1 -9
  258. package/server/models/dmgiamua.js +1 -5
  259. package/server/models/dmgiathitruong.js +1 -5
  260. package/server/models/dmgiathitruong_ngay.js +1 -2
  261. package/server/models/dmgiathitruong_theodoi.js +1 -2
  262. package/server/models/dmhoahonghd.js +1 -9
  263. package/server/models/dmhoahongnpp.js +1 -9
  264. package/server/models/dmkc.js +1 -3
  265. package/server/models/dmkho.js +1 -6
  266. package/server/models/dmkhuyenmai.js +1 -9
  267. package/server/models/dmkhuyenmaihd.js +1 -11
  268. package/server/models/dmletet.js +1 -2
  269. package/server/models/dmlo.js +1 -4
  270. package/server/models/dmloaicong.js +1 -4
  271. package/server/models/dmloaitask.js +1 -2
  272. package/server/models/dmloaits.js +1 -2
  273. package/server/models/dmnckkm.js +1 -4
  274. package/server/models/dmnghiepvu.js +1 -4
  275. package/server/models/dmnguonvon.js +1 -2
  276. package/server/models/dmnhnv.js +1 -4
  277. package/server/models/dmnv.js +1 -17
  278. package/server/models/dmnvt.js +1 -9
  279. package/server/models/dmphatdichvu.js +1 -5
  280. package/server/models/dmphi.js +1 -3
  281. package/server/models/dmqct.js +1 -3
  282. package/server/models/dmqddvt.js +1 -3
  283. package/server/models/dmtanggiamts.js +1 -3
  284. package/server/models/dmto.js +1 -4
  285. package/server/models/dmtt.js +1 -6
  286. package/server/models/dmvt.js +1 -17
  287. package/server/models/dmyt.js +1 -4
  288. package/server/models/dn0.js +1 -13
  289. package/server/models/dnm.js +1 -11
  290. package/server/models/dokho.js +1 -2
  291. package/server/models/domain.js +1 -2
  292. package/server/models/dvcs.js +1 -3
  293. package/server/models/ecomcategories.js +1 -3
  294. package/server/models/ecomcategories_cty.js +1 -3
  295. package/server/models/ecomproductlines.js +1 -2
  296. package/server/models/ecompromotion_flashsales.js +1 -2
  297. package/server/models/ecompromotion_freeships.js +1 -2
  298. package/server/models/email.js +1 -2
  299. package/server/models/endpoint.js +1 -1
  300. package/server/models/events.js +1 -3
  301. package/server/models/evoucher.js +1 -5
  302. package/server/models/experiencejourney.js +1 -2
  303. package/server/models/experiencejourneydata.js +1 -4
  304. package/server/models/experiencejourneypersona.js +1 -3
  305. package/server/models/experiencejourneystage.js +1 -2
  306. package/server/models/exportexceltemplate.js +1 -2
  307. package/server/models/fbconversation.js +1 -15
  308. package/server/models/fbmessage.js +1 -2
  309. package/server/models/fbpage.js +1 -2
  310. package/server/models/fbpost.js +1 -2
  311. package/server/models/fieldright.js +1 -2
  312. package/server/models/file.js +1 -4
  313. package/server/models/financialroadmap.js +1 -3
  314. package/server/models/flow.js +1 -2
  315. package/server/models/flowdata.js +1 -3
  316. package/server/models/folder.js +1 -4
  317. package/server/models/follow.js +1 -2
  318. package/server/models/form.js +1 -3
  319. package/server/models/forminfo.js +1 -5
  320. package/server/models/formvalue.js +1 -3
  321. package/server/models/giaoca.js +1 -4
  322. package/server/models/giatb.js +1 -3
  323. package/server/models/group.js +1 -11
  324. package/server/models/gt_ctgt.js +1 -4
  325. package/server/models/gt_hspb.js +1 -3
  326. package/server/models/gt_sltk.js +1 -3
  327. package/server/models/gt_thcppstk.js +1 -3
  328. package/server/models/hanmucton.js +1 -4
  329. package/server/models/hd1.js +1 -11
  330. package/server/models/hd2.js +1 -27
  331. package/server/models/hd3.js +1 -18
  332. package/server/models/hd4.js +1 -13
  333. package/server/models/hd7.js +1 -17
  334. package/server/models/hd8.js +1 -12
  335. package/server/models/hde.js +1 -11
  336. package/server/models/hlink.js +1 -2
  337. package/server/models/hlinkvalue.js +1 -2
  338. package/server/models/hmcn.js +1 -3
  339. package/server/models/hmcnct.js +1 -2
  340. package/server/models/hspbts.js +1 -4
  341. package/server/models/htl.js +1 -13
  342. package/server/models/importexceltemplate.js +1 -2
  343. package/server/models/introducebonus.js +1 -4
  344. package/server/models/introducecode.js +1 -3
  345. package/server/models/introducer.js +1 -4
  346. package/server/models/kbbtpb.js +1 -7
  347. package/server/models/kbmPttct.js +1 -4
  348. package/server/models/kbmTkgtgt.js +1 -5
  349. package/server/models/kbm_bcdkt.js +1 -4
  350. package/server/models/kbm_kqhdkd.js +1 -3
  351. package/server/models/kbm_lcttgt.js +1 -5
  352. package/server/models/kbm_lctttt.js +1 -4
  353. package/server/models/kbm_pttct.js +1 -4
  354. package/server/models/kbm_tkgtgt.js +1 -5
  355. package/server/models/kbmbcdkt.js +1 -4
  356. package/server/models/kbmbcqt.js +1 -4
  357. package/server/models/kbmkqhdkd.js +1 -3
  358. package/server/models/kbmlcttgt.js +1 -6
  359. package/server/models/kbmlctttt.js +1 -4
  360. package/server/models/kbmtmbctc.js +1 -4
  361. package/server/models/kehoachdtcp.js +1 -3
  362. package/server/models/kehoachmh.js +1 -8
  363. package/server/models/keyresult.js +1 -7
  364. package/server/models/khunghangthanhvien.js +1 -3
  365. package/server/models/label.js +1 -2
  366. package/server/models/labelinfo.js +1 -2
  367. package/server/models/lenhcapphat.js +1 -8
  368. package/server/models/lenhsx.js +1 -8
  369. package/server/models/lienhe.js +1 -4
  370. package/server/models/like_module.js +1 -2
  371. package/server/models/link.js +1 -2
  372. package/server/models/loaidiem.js +1 -2
  373. package/server/models/lock.js +1 -2
  374. package/server/models/log.js +1 -5
  375. package/server/models/mailaccount.js +1 -3
  376. package/server/models/mailgroup.js +1 -3
  377. package/server/models/mailreceived.js +1 -2
  378. package/server/models/mailschedule.js +1 -2
  379. package/server/models/mailsent.js +1 -2
  380. package/server/models/mailtemplate.js +1 -2
  381. package/server/models/maudanhgia.js +1 -2
  382. package/server/models/menuinfo.js +1 -2
  383. package/server/models/message.js +1 -8
  384. package/server/models/message2.js +1 -4
  385. package/server/models/message2setting.js +1 -3
  386. package/server/models/moduleinfo.js +1 -4
  387. package/server/models/momo.js +1 -17
  388. package/server/models/news.js +1 -3
  389. package/server/models/newsfeed.js +1 -4
  390. package/server/models/note.js +1 -2
  391. package/server/models/notification.js +1 -7
  392. package/server/models/okr.js +1 -4
  393. package/server/models/okrdiagram.js +1 -3
  394. package/server/models/onepay.js +1 -24
  395. package/server/models/opportunity.js +1 -4
  396. package/server/models/options.js +1 -2
  397. package/server/models/originimportid.js +1 -1
  398. package/server/models/otp.js +1 -1
  399. package/server/models/parameter.js +1 -2
  400. package/server/models/participant.js +1 -20
  401. package/server/models/partner.js +1 -1
  402. package/server/models/payload.js +1 -1
  403. package/server/models/pbl.js +1 -16
  404. package/server/models/pc0.js +1 -13
  405. package/server/models/pc1.js +1 -14
  406. package/server/models/pc2.js +1 -13
  407. package/server/models/pc3.js +1 -13
  408. package/server/models/pc5.js +1 -8
  409. package/server/models/pc6.js +1 -14
  410. package/server/models/pcl.js +1 -6
  411. package/server/models/pdn.js +1 -9
  412. package/server/models/pdx.js +1 -9
  413. package/server/models/pgh.js +1 -5
  414. package/server/models/phieudanhgia.js +1 -3
  415. package/server/models/pht.js +1 -8
  416. package/server/models/phucap.js +1 -4
  417. package/server/models/pkc.js +1 -6
  418. package/server/models/pkh.js +1 -6
  419. package/server/models/pkk.js +1 -10
  420. package/server/models/pkt.js +1 -12
  421. package/server/models/pn1.js +1 -17
  422. package/server/models/pn2.js +1 -11
  423. package/server/models/pn3.js +1 -13
  424. package/server/models/pn5.js +1 -14
  425. package/server/models/pn6.js +1 -14
  426. package/server/models/pn9.js +1 -17
  427. package/server/models/pnc.js +1 -10
  428. package/server/models/pnh.js +1 -12
  429. package/server/models/pnk.js +1 -10
  430. package/server/models/po1.js +1 -19
  431. package/server/models/ppb.js +1 -6
  432. package/server/models/profile.js +1 -4
  433. package/server/models/pt1.js +1 -12
  434. package/server/models/pt5.js +1 -8
  435. package/server/models/ptl.js +1 -6
  436. package/server/models/ptthanhtoan.js +1 -6
  437. package/server/models/purchase_contract.js +1 -17
  438. package/server/models/pxc.js +1 -9
  439. package/server/models/pxh.js +1 -12
  440. package/server/models/pxk.js +1 -10
  441. package/server/models/qts.js +1 -14
  442. package/server/models/qts_dieuchinh.js +1 -3
  443. package/server/models/qts_dieuchuyen.js +1 -4
  444. package/server/models/quanhuyen.js +1 -2
  445. package/server/models/reason.js +1 -2
  446. package/server/models/receivedinvoice.js +1 -2
  447. package/server/models/reportinfo.js +1 -5
  448. package/server/models/right.js +1 -4
  449. package/server/models/rpt.js +1 -2
  450. package/server/models/rptform.js +1 -5
  451. package/server/models/rptobject.js +1 -2
  452. package/server/models/sale_contract.js +1 -9
  453. package/server/models/schedule.js +1 -16
  454. package/server/models/schedule_log.js +1 -2
  455. package/server/models/service.js +1 -4
  456. package/server/models/shipbook.js +1 -12
  457. package/server/models/shortcut.js +1 -2
  458. package/server/models/smsaccount.js +1 -10
  459. package/server/models/smssend.js +1 -2
  460. package/server/models/so1.js +1 -22
  461. package/server/models/so2.js +1 -10
  462. package/server/models/so3.js +1 -9
  463. package/server/models/so5.js +1 -15
  464. package/server/models/so9.js +1 -19
  465. package/server/models/socai.js +1 -26
  466. package/server/models/socainpp.js +1 -18
  467. package/server/models/socaitc.js +1 -6
  468. package/server/models/socaitmp.js +1 -16
  469. package/server/models/socaitt.js +1 -4
  470. package/server/models/sodiemthuong.js +1 -4
  471. package/server/models/sokho.js +1 -28
  472. package/server/models/sokhocapphat.js +1 -18
  473. package/server/models/sokhokhongton.js +1 -19
  474. package/server/models/sokhonpp.js +1 -19
  475. package/server/models/sokhotc.js +1 -8
  476. package/server/models/sokhott.js +1 -18
  477. package/server/models/sophanbokh.js +1 -3
  478. package/server/models/sosanxuat.js +1 -5
  479. package/server/models/sotinhkh.js +1 -2
  480. package/server/models/spdd_ck.js +1 -3
  481. package/server/models/spdd_dk.js +1 -3
  482. package/server/models/step.js +1 -2
  483. package/server/models/strategicdiagram.js +1 -3
  484. package/server/models/strategicgoal.js +1 -4
  485. package/server/models/strategickpi.js +1 -6
  486. package/server/models/strategicobjective.js +1 -5
  487. package/server/models/strategicplan.js +1 -5
  488. package/server/models/subscribe.js +1 -2
  489. package/server/models/support.js +1 -2
  490. package/server/models/synctime.js +1 -2
  491. package/server/models/sysconfig.js +1 -2
  492. package/server/models/sysgroup.js +1 -2
  493. package/server/models/tableinfo.js +1 -3
  494. package/server/models/task.js +1 -9
  495. package/server/models/taskreg.js +1 -4
  496. package/server/models/tc.js +1 -2
  497. package/server/models/tdttco.js +1 -8
  498. package/server/models/tdttco_tt.js +1 -5
  499. package/server/models/tdttno.js +1 -8
  500. package/server/models/tdttno_tt.js +1 -5
  501. package/server/models/templaterpt.js +1 -2
  502. package/server/models/templatestore.js +1 -3
  503. package/server/models/templatevoucher.js +1 -3
  504. package/server/models/tinhthanh.js +1 -2
  505. package/server/models/tokens.js +1 -2
  506. package/server/models/tontucthoi.js +1 -9
  507. package/server/models/trangthai.js +1 -4
  508. package/server/models/trangthaiapp.js +1 -4
  509. package/server/models/transaction.js +1 -16
  510. package/server/models/trialinfo.js +1 -2
  511. package/server/models/user.js +1 -38
  512. package/server/models/usergroup.js +1 -7
  513. package/server/models/vanchuyen.js +1 -12
  514. package/server/models/vat.js +1 -3
  515. package/server/models/vatra.js +1 -6
  516. package/server/models/vatvao.js +1 -6
  517. package/server/models/versioninfo.js +1 -2
  518. package/server/models/vietqrbanks.js +1 -2
  519. package/server/models/vsocai.js +1 -6
  520. package/server/models/waitevent.js +1 -2
  521. package/server/models/wallet.js +1 -8
  522. package/server/models/warranty.js +1 -3
  523. package/server/models/warrantyclaim.js +1 -2
  524. package/server/models/warrantypolicy.js +1 -1
  525. package/server/models/xaphuong.js +1 -2
  526. package/server/models/xhd.js +1 -10
  527. package/server/models/ytdd_ck.js +1 -4
  528. package/server/models/ytdd_dk.js +1 -4
  529. package/server/models/zalo.js +1 -17
  530. package/server/modules/lists/bg-cddiem.js +1 -6
  531. package/server/modules/lists/bg-cddt.js +1 -7
  532. package/server/modules/lists/bg-cdkh.js +1 -11
  533. package/server/modules/lists/bg-cdnphep.js +1 -6
  534. package/server/modules/lists/bg-cdtk.js +1 -9
  535. package/server/modules/lists/bg-cdvt.js +1 -8
  536. package/server/modules/lists/bg-cdvtnpp.js +1 -8
  537. package/server/modules/lists/ls-account.js +1 -4
  538. package/server/modules/lists/ls-afflink.js +1 -3
  539. package/server/modules/lists/ls-approve.js +1 -4
  540. package/server/modules/lists/ls-assabcihandler.js +1 -3
  541. package/server/modules/lists/ls-assbank.js +1 -3
  542. package/server/modules/lists/ls-assbooking.js +1 -20
  543. package/server/modules/lists/ls-assbuy.js +1 -8
  544. package/server/modules/lists/ls-asscashwithdraw.js +1 -8
  545. package/server/modules/lists/ls-assinvestment.js +1 -31
  546. package/server/modules/lists/ls-assissue.js +1 -3
  547. package/server/modules/lists/ls-asskey.js +1 -41
  548. package/server/modules/lists/ls-assneedtobuy.js +1 -10
  549. package/server/modules/lists/ls-assperiod.js +1 -19
  550. package/server/modules/lists/ls-assproduct.js +1 -9
  551. package/server/modules/lists/ls-assprofitsharing.js +1 -8
  552. package/server/modules/lists/ls-assreceiver.js +1 -3
  553. package/server/modules/lists/ls-assrequest.js +1 -4
  554. package/server/modules/lists/ls-asssell.js +1 -13
  555. package/server/modules/lists/ls-asstransaction.js +1 -3
  556. package/server/modules/lists/ls-asstransfer.js +1 -3
  557. package/server/modules/lists/ls-assuser_identity.js +1 -1
  558. package/server/modules/lists/ls-asswithdraw.js +1 -12
  559. package/server/modules/lists/ls-bangtinhluong.js +1 -2
  560. package/server/modules/lists/ls-bds_area.js +1 -3
  561. package/server/modules/lists/ls-bds_block.js +1 -1
  562. package/server/modules/lists/ls-bds_building.js +1 -3
  563. package/server/modules/lists/ls-bds_dmnhbds.js +1 -6
  564. package/server/modules/lists/ls-bds_floor.js +1 -2
  565. package/server/modules/lists/ls-bds_floordetail.js +1 -19
  566. package/server/modules/lists/ls-bds_nhadat.js +1 -16
  567. package/server/modules/lists/ls-bds_nhomnhadat.js +1 -1
  568. package/server/modules/lists/ls-bds_phanloainhadat.js +1 -1
  569. package/server/modules/lists/ls-calllog.js +1 -4
  570. package/server/modules/lists/ls-campaign.js +1 -1
  571. package/server/modules/lists/ls-cart.js +1 -14
  572. package/server/modules/lists/ls-chamcong.js +1 -3
  573. package/server/modules/lists/ls-checkin.js +1 -12
  574. package/server/modules/lists/ls-checkinactivity.js +1 -8
  575. package/server/modules/lists/ls-checkinkpi.js +1 -3
  576. package/server/modules/lists/ls-checkinlocation.js +1 -1
  577. package/server/modules/lists/ls-chitieukpi.js +1 -1
  578. package/server/modules/lists/ls-chudethaoluan.js +1 -1
  579. package/server/modules/lists/ls-ckgtluong.js +1 -1
  580. package/server/modules/lists/ls-comment.js +1 -9
  581. package/server/modules/lists/ls-congdoansx.js +1 -3
  582. package/server/modules/lists/ls-congtacvien.js +1 -5
  583. package/server/modules/lists/ls-consultant.js +1 -2
  584. package/server/modules/lists/ls-contract.js +1 -7
  585. package/server/modules/lists/ls-ctds.js +1 -4
  586. package/server/modules/lists/ls-ctds2.js +1 -4
  587. package/server/modules/lists/ls-currency.js +1 -1
  588. package/server/modules/lists/ls-customer.js +1 -21
  589. package/server/modules/lists/ls-datlich.js +1 -9
  590. package/server/modules/lists/ls-dckhauhaots.js +1 -3
  591. package/server/modules/lists/ls-department.js +1 -3
  592. package/server/modules/lists/ls-diagram.js +1 -1
  593. package/server/modules/lists/ls-dkhoc.js +1 -6
  594. package/server/modules/lists/ls-dknphep.js +1 -1
  595. package/server/modules/lists/ls-dmban.js +1 -4
  596. package/server/modules/lists/ls-dmbp.js +1 -7
  597. package/server/modules/lists/ls-dmca.js +1 -1
  598. package/server/modules/lists/ls-dmchietkhau.js +1 -19
  599. package/server/modules/lists/ls-dmchietkhauhd.js +1 -4
  600. package/server/modules/lists/ls-dmchucvu.js +1 -2
  601. package/server/modules/lists/ls-dmcpmh.js +1 -1
  602. package/server/modules/lists/ls-dmdiemthuong.js +1 -4
  603. package/server/modules/lists/ls-dmdoi.js +1 -4
  604. package/server/modules/lists/ls-dmdoituongdanhgia.js +1 -1
  605. package/server/modules/lists/ls-dmdt.js +1 -11
  606. package/server/modules/lists/ls-dmdvt.js +1 -2
  607. package/server/modules/lists/ls-dmgiaban.js +1 -4
  608. package/server/modules/lists/ls-dmgiamua.js +1 -4
  609. package/server/modules/lists/ls-dmgiathitruong.js +1 -15
  610. package/server/modules/lists/ls-dmgiathitruong_ngay.js +1 -2
  611. package/server/modules/lists/ls-dmgiathitruong_theodoi.js +1 -1
  612. package/server/modules/lists/ls-dmhoahonghd.js +1 -1
  613. package/server/modules/lists/ls-dmhoahongnpp.js +1 -1
  614. package/server/modules/lists/ls-dmkc.js +1 -3
  615. package/server/modules/lists/ls-dmkho.js +1 -1
  616. package/server/modules/lists/ls-dmkhuyenmai.js +1 -5
  617. package/server/modules/lists/ls-dmkhuyenmaihd.js +1 -3
  618. package/server/modules/lists/ls-dmletet.js +1 -1
  619. package/server/modules/lists/ls-dmlo.js +1 -1
  620. package/server/modules/lists/ls-dmloaicong.js +1 -1
  621. package/server/modules/lists/ls-dmloaits.js +1 -1
  622. package/server/modules/lists/ls-dmnckkm.js +1 -7
  623. package/server/modules/lists/ls-dmnghiepvu.js +1 -1
  624. package/server/modules/lists/ls-dmnguonvon.js +1 -1
  625. package/server/modules/lists/ls-dmnhnv.js +1 -6
  626. package/server/modules/lists/ls-dmnhtask.js +1 -5
  627. package/server/modules/lists/ls-dmnkh.js +1 -6
  628. package/server/modules/lists/ls-dmntt.js +1 -6
  629. package/server/modules/lists/ls-dmnv.js +1 -17
  630. package/server/modules/lists/ls-dmnvt.js +1 -8
  631. package/server/modules/lists/ls-dmphatdichvu.js +1 -3
  632. package/server/modules/lists/ls-dmphi.js +1 -6
  633. package/server/modules/lists/ls-dmqct.js +1 -2
  634. package/server/modules/lists/ls-dmqddvt.js +1 -3
  635. package/server/modules/lists/ls-dmtanggiamts.js +1 -1
  636. package/server/modules/lists/ls-dmto.js +1 -5
  637. package/server/modules/lists/ls-dmtt.js +1 -7
  638. package/server/modules/lists/ls-dmvt.js +1 -68
  639. package/server/modules/lists/ls-dmyt.js +1 -1
  640. package/server/modules/lists/ls-dokho.js +1 -1
  641. package/server/modules/lists/ls-dvcs.js +1 -1
  642. package/server/modules/lists/ls-ecomcategories.js +1 -5
  643. package/server/modules/lists/ls-ecomcategories_cty.js +1 -5
  644. package/server/modules/lists/ls-email.js +1 -4
  645. package/server/modules/lists/ls-events.js +1 -3
  646. package/server/modules/lists/ls-evoucher.js +1 -3
  647. package/server/modules/lists/ls-experiencejourney.js +1 -1
  648. package/server/modules/lists/ls-experiencejourneydata.js +1 -3
  649. package/server/modules/lists/ls-experiencejourneypersona.js +1 -4
  650. package/server/modules/lists/ls-experiencejourneystage.js +1 -1
  651. package/server/modules/lists/ls-fbconversation.js +1 -2
  652. package/server/modules/lists/ls-fbmessage.js +1 -2
  653. package/server/modules/lists/ls-fbpage.js +1 -11
  654. package/server/modules/lists/ls-fbpost.js +1 -2
  655. package/server/modules/lists/ls-file.js +1 -31
  656. package/server/modules/lists/ls-financialroadmap.js +1 -3
  657. package/server/modules/lists/ls-flow.js +1 -6
  658. package/server/modules/lists/ls-flowdata.js +1 -1
  659. package/server/modules/lists/ls-folder.js +1 -1
  660. package/server/modules/lists/ls-form.js +1 -1
  661. package/server/modules/lists/ls-forminfo.js +1 -1
  662. package/server/modules/lists/ls-formvalue.js +1 -1
  663. package/server/modules/lists/ls-giaoca.js +1 -4
  664. package/server/modules/lists/ls-group.js +1 -5
  665. package/server/modules/lists/ls-hlink.js +1 -1
  666. package/server/modules/lists/ls-hlinkvalue.js +1 -1
  667. package/server/modules/lists/ls-hmcn.js +1 -2
  668. package/server/modules/lists/ls-hspbts.js +1 -3
  669. package/server/modules/lists/ls-introducebonus.js +1 -4
  670. package/server/modules/lists/ls-introducecode.js +1 -10
  671. package/server/modules/lists/ls-introducer.js +1 -20
  672. package/server/modules/lists/ls-kbm-bcdkt.js +1 -1
  673. package/server/modules/lists/ls-kbm-bcqt.js +1 -5
  674. package/server/modules/lists/ls-kbm-kqhdkd.js +1 -1
  675. package/server/modules/lists/ls-kbm-lcttgt.js +1 -1
  676. package/server/modules/lists/ls-kbm-lctttt.js +1 -1
  677. package/server/modules/lists/ls-kbm-pttct.js +1 -3
  678. package/server/modules/lists/ls-kbm-tkgtgt.js +1 -3
  679. package/server/modules/lists/ls-kbm-tmbctc.js +1 -3
  680. package/server/modules/lists/ls-kehoachdtcp.js +1 -4
  681. package/server/modules/lists/ls-keyresult.js +1 -7
  682. package/server/modules/lists/ls-khunghangthanhvien.js +1 -1
  683. package/server/modules/lists/ls-kygui.js +1 -19
  684. package/server/modules/lists/ls-label.js +1 -1
  685. package/server/modules/lists/ls-lienhe.js +1 -4
  686. package/server/modules/lists/ls-like-module.js +1 -1
  687. package/server/modules/lists/ls-link.js +1 -1
  688. package/server/modules/lists/ls-loaidiem.js +1 -1
  689. package/server/modules/lists/ls-lock.js +1 -1
  690. package/server/modules/lists/ls-log.js +1 -3
  691. package/server/modules/lists/ls-mailaccount.js +1 -5
  692. package/server/modules/lists/ls-mailreceived.js +1 -5
  693. package/server/modules/lists/ls-mailschedule.js +1 -7
  694. package/server/modules/lists/ls-mailsent.js +1 -4
  695. package/server/modules/lists/ls-mailtemplate.js +1 -4
  696. package/server/modules/lists/ls-maudanhgia.js +1 -3
  697. package/server/modules/lists/ls-message2.js +1 -8
  698. package/server/modules/lists/ls-message2setting.js +1 -5
  699. package/server/modules/lists/ls-news.js +1 -7
  700. package/server/modules/lists/ls-newsfeed.js +1 -4
  701. package/server/modules/lists/ls-note.js +1 -6
  702. package/server/modules/lists/ls-okr.js +1 -5
  703. package/server/modules/lists/ls-okrdiagram.js +1 -1
  704. package/server/modules/lists/ls-opportunity.js +1 -5
  705. package/server/modules/lists/ls-options.js +1 -4
  706. package/server/modules/lists/ls-parameter.js +1 -3
  707. package/server/modules/lists/ls-participant.js +1 -10
  708. package/server/modules/lists/ls-phieudanhgia.js +1 -7
  709. package/server/modules/lists/ls-phucap.js +1 -2
  710. package/server/modules/lists/ls-profile.js +1 -1
  711. package/server/modules/lists/ls-ptthanhtoan.js +1 -3
  712. package/server/modules/lists/ls-qts-dieuchinh.js +1 -2
  713. package/server/modules/lists/ls-qts-dieuchuyen.js +1 -8
  714. package/server/modules/lists/ls-reason.js +1 -1
  715. package/server/modules/lists/ls-rpt.js +1 -5
  716. package/server/modules/lists/ls-rptform.js +1 -4
  717. package/server/modules/lists/ls-service.js +1 -3
  718. package/server/modules/lists/ls-shortcut.js +1 -1
  719. package/server/modules/lists/ls-smsaccount.js +1 -1
  720. package/server/modules/lists/ls-smssend.js +1 -3
  721. package/server/modules/lists/ls-sosanxuat.js +1 -4
  722. package/server/modules/lists/ls-step.js +1 -1
  723. package/server/modules/lists/ls-strategicdiagram.js +1 -1
  724. package/server/modules/lists/ls-strategicgoal.js +1 -3
  725. package/server/modules/lists/ls-strategickpi.js +1 -7
  726. package/server/modules/lists/ls-strategicobjective.js +1 -3
  727. package/server/modules/lists/ls-strategicplan.js +1 -6
  728. package/server/modules/lists/ls-support.js +1 -3
  729. package/server/modules/lists/ls-task.js +1 -34
  730. package/server/modules/lists/ls-taskreg.js +1 -2
  731. package/server/modules/lists/ls-tc.js +1 -1
  732. package/server/modules/lists/ls-templaterpt.js +1 -5
  733. package/server/modules/lists/ls-templatevoucher.js +1 -1
  734. package/server/modules/lists/ls-tontucthoi.js +1 -3
  735. package/server/modules/lists/ls-trangthaiapp.js +1 -3
  736. package/server/modules/lists/ls-transaction.js +1 -4
  737. package/server/modules/lists/ls-usergroup.js +1 -7
  738. package/server/modules/lists/ls-vat.js +1 -1
  739. package/server/modules/lists/ls-vatra.js +1 -5
  740. package/server/modules/lists/ls-vatvao.js +1 -6
  741. package/server/modules/lists/ls-waitevent.js +1 -1
  742. package/server/modules/lists/ls-warranty.js +1 -4
  743. package/server/modules/lists/ls_hanmucton.js +1 -3
  744. package/server/modules/lists/ls_hspb.js +1 -4
  745. package/server/modules/lists/ls_spdd_ck.js +1 -3
  746. package/server/modules/lists/ls_spdd_dk.js +1 -3
  747. package/server/modules/lists/ls_ytdd_ck.js +1 -4
  748. package/server/modules/lists/ls_ytdd_dk.js +1 -4
  749. package/server/modules/lists/sys-attend.js +1 -4
  750. package/server/modules/lists/sys-follow.js +1 -4
  751. package/server/modules/lists/sys-right.js +1 -2
  752. package/server/modules/public/app.js +1 -4
  753. package/server/modules/public/approve.js +1 -37
  754. package/server/modules/public/callin.js +1 -7
  755. package/server/modules/public/comment.js +1 -5
  756. package/server/modules/public/dmnvt.js +1 -4
  757. package/server/modules/public/dmvt.js +1 -9
  758. package/server/modules/public/file.js +1 -11
  759. package/server/modules/public/form.js +1 -7
  760. package/server/modules/public/forminfo.js +1 -1
  761. package/server/modules/public/group.js +1 -4
  762. package/server/modules/public/hlink.js +1 -3
  763. package/server/modules/public/introducecode.js +1 -1
  764. package/server/modules/public/listinfo.js +1 -1
  765. package/server/modules/public/media-webhook.js +1 -1
  766. package/server/modules/public/partner.js +1 -1
  767. package/server/modules/public/paymentCallback.js +1 -32
  768. package/server/modules/public/province.js +1 -1
  769. package/server/modules/public/ptthanhtoan.js +1 -4
  770. package/server/modules/public/subscribe.js +1 -30
  771. package/server/modules/public/support.js +1 -3
  772. package/server/modules/public/tableinfo.js +1 -1
  773. package/server/modules/public/trialinfo.js +1 -4
  774. package/server/modules/public/versioninfo.js +1 -1
  775. package/server/modules/reports/calc-tinhgiatb.js +1 -6
  776. package/server/modules/reports/calc-tinhgiathanh.js +1 -6
  777. package/server/modules/reports/calc-tinhkhauhaots.js +1 -3
  778. package/server/modules/reports/calc-tinhluong.js +1 -37
  779. package/server/modules/reports/rp-analyzedata.js +1 -6
  780. package/server/modules/reports/rp-assbonus.js +1 -4
  781. package/server/modules/reports/rp-assinterest.js +1 -8
  782. package/server/modules/reports/rp-assproductowners.js +1 -3
  783. package/server/modules/reports/rp-asssupply.js +1 -1
  784. package/server/modules/reports/rp-asstransferlog.js +1 -10
  785. package/server/modules/reports/rp-banggiatb.js +1 -3
  786. package/server/modules/reports/rp-bangtinhkhauhao.js +1 -6
  787. package/server/modules/reports/rp-baocaokhachhang.js +1 -6
  788. package/server/modules/reports/rp-bcdkt.js +1 -11
  789. package/server/modules/reports/rp-bcintroducebonus.js +1 -4
  790. package/server/modules/reports/rp-bckhtiemnang.js +1 -3
  791. package/server/modules/reports/rp-bcqt.js +1 -85
  792. package/server/modules/reports/rp-bkct.js +1 -13
  793. package/server/modules/reports/rp-bkshipbook.js +1 -8
  794. package/server/modules/reports/rp-bkvanchuyen.js +1 -8
  795. package/server/modules/reports/rp-bkvatra.js +1 -7
  796. package/server/modules/reports/rp-bkvatvao.js +1 -7
  797. package/server/modules/reports/rp-capnhatsocaitc.js +1 -4
  798. package/server/modules/reports/rp-cdpsdiem.js +1 -4
  799. package/server/modules/reports/rp-cdpsdt.js +1 -5
  800. package/server/modules/reports/rp-cdpskh.js +1 -7
  801. package/server/modules/reports/rp-cdpsnphep.js +1 -3
  802. package/server/modules/reports/rp-cdpstk.js +1 -4
  803. package/server/modules/reports/rp-chitietchitientheohoadon.js +1 -12
  804. package/server/modules/reports/rp-chitiettaisan.js +1 -13
  805. package/server/modules/reports/rp-chitietthutientheohoadon.js +1 -13
  806. package/server/modules/reports/rp-ckcn.js +1 -3
  807. package/server/modules/reports/rp-ckdiem.js +1 -2
  808. package/server/modules/reports/rp-cktk.js +1 -3
  809. package/server/modules/reports/rp-ckvt.js +1 -10
  810. package/server/modules/reports/rp-ckvttheokho.js +1 -4
  811. package/server/modules/reports/rp-ckvttheotg.js +1 -4
  812. package/server/modules/reports/rp-ckvttt.js +1 -3
  813. package/server/modules/reports/rp-congnophaithutheotuoino.js +1 -3
  814. package/server/modules/reports/rp-congnophaitratheotuoino.js +1 -3
  815. package/server/modules/reports/rp-congnosapthu.js +1 -4
  816. package/server/modules/reports/rp-congnosaptra.js +1 -4
  817. package/server/modules/reports/rp-congviectheobp.js +1 -9
  818. package/server/modules/reports/rp-congviectheodt.js +1 -8
  819. package/server/modules/reports/rp-congviectheokh.js +1 -8
  820. package/server/modules/reports/rp-congviectheonv.js +1 -9
  821. package/server/modules/reports/rp-congviectheotimeline.js +1 -6
  822. package/server/modules/reports/rp-ctbanle.js +1 -15
  823. package/server/modules/reports/rp-ctbanle2.js +1 -20
  824. package/server/modules/reports/rp-ctbanlectv.js +1 -20
  825. package/server/modules/reports/rp-ctbanlenpp.js +1 -24
  826. package/server/modules/reports/rp-ctdanhgianhanvien.js +1 -8
  827. package/server/modules/reports/rp-cthangbanbitralai.js +1 -4
  828. package/server/modules/reports/rp-ctmuahang.js +1 -7
  829. package/server/modules/reports/rp-cttralaihang.js +1 -4
  830. package/server/modules/reports/rp-databanle.js +1 -10
  831. package/server/modules/reports/rp-diemthuong.js +1 -2
  832. package/server/modules/reports/rp-dkcn.js +1 -3
  833. package/server/modules/reports/rp-dktk.js +1 -2
  834. package/server/modules/reports/rp-dsnhanviencm.js +1 -9
  835. package/server/modules/reports/rp-dsnhanvientb.js +1 -9
  836. package/server/modules/reports/rp-dtbanlekempk.js +1 -9
  837. package/server/modules/reports/rp-dtbanletheoct.js +1 -23
  838. package/server/modules/reports/rp-dtbanletheoctkempk.js +1 -25
  839. package/server/modules/reports/rp-dtbanletheokh.js +1 -20
  840. package/server/modules/reports/rp-dtbanletheokhnpp.js +1 -19
  841. package/server/modules/reports/rp-dtbanletheokho.js +1 -18
  842. package/server/modules/reports/rp-dtbanletheonam.js +1 -3
  843. package/server/modules/reports/rp-dtbanletheongay.js +1 -1
  844. package/server/modules/reports/rp-dtbanletheonpp.js +1 -23
  845. package/server/modules/reports/rp-dtbanletheonv.js +1 -19
  846. package/server/modules/reports/rp-dtbanletheoquy.js +1 -3
  847. package/server/modules/reports/rp-dtbanletheosp.js +1 -8
  848. package/server/modules/reports/rp-dtbanletheospnpp.js +1 -6
  849. package/server/modules/reports/rp-dtbanletheothang.js +1 -3
  850. package/server/modules/reports/rp-dtbanletheothungan.js +1 -12
  851. package/server/modules/reports/rp-dtbanletheovt.js +1 -2
  852. package/server/modules/reports/rp-dtbanletheovtnpp.js +1 -2
  853. package/server/modules/reports/rp-dutoanthuchitheodt.js +1 -4
  854. package/server/modules/reports/rp-getPXC2PNC.js +1 -8
  855. package/server/modules/reports/rp-getariseofaccountsbymonth.js +1 -4
  856. package/server/modules/reports/rp-getbtpb.js +1 -6
  857. package/server/modules/reports/rp-getcashbycashier.js +1 -7
  858. package/server/modules/reports/rp-getcschietkhau.js +1 -5
  859. package/server/modules/reports/rp-getdinhmuc4lenhcp.js +1 -7
  860. package/server/modules/reports/rp-getdinhmuc4pxk.js +1 -9
  861. package/server/modules/reports/rp-getdk4pht.js +1 -8
  862. package/server/modules/reports/rp-getdk4pkc.js +1 -9
  863. package/server/modules/reports/rp-getdttheoca.js +1 -5
  864. package/server/modules/reports/rp-getinvoice2pay.js +1 -4
  865. package/server/modules/reports/rp-getinvoice2receive.js +1 -4
  866. package/server/modules/reports/rp-getinvoice2return.js +1 -5
  867. package/server/modules/reports/rp-getinvoice2return_bl.js +1 -6
  868. package/server/modules/reports/rp-getkehoachmh4lenhcp.js +1 -4
  869. package/server/modules/reports/rp-getkhauhao.js +1 -7
  870. package/server/modules/reports/rp-getluong.js +1 -8
  871. package/server/modules/reports/rp-getluongchuyen.js +1 -5
  872. package/server/modules/reports/rp-getpn2fee.js +1 -5
  873. package/server/modules/reports/rp-getpn2return.js +1 -5
  874. package/server/modules/reports/rp-getthanhpham4pnk.js +1 -7
  875. package/server/modules/reports/rp-getvc2xhd.js +1 -11
  876. package/server/modules/reports/rp-gt_cpnvltt.js +1 -6
  877. package/server/modules/reports/rp-hangbanbitralai.js +1 -5
  878. package/server/modules/reports/rp-hangthanhvien.js +1 -3
  879. package/server/modules/reports/rp-hoadonbanhangtheohantt.js +1 -5
  880. package/server/modules/reports/rp-hoadonmuahangtheohantt.js +1 -5
  881. package/server/modules/reports/rp-hoahong.js +1 -15
  882. package/server/modules/reports/rp-kcsns.js +1 -19
  883. package/server/modules/reports/rp-kgchamcong.js +1 -7
  884. package/server/modules/reports/rp-khoaso.js +1 -12
  885. package/server/modules/reports/rp-kiemtrasocaitcvssocai.js +1 -6
  886. package/server/modules/reports/rp-kqdanhgianhanvien.js +1 -5
  887. package/server/modules/reports/rp-kqhdkd.js +1 -7
  888. package/server/modules/reports/rp-lcttgt.js +1 -17
  889. package/server/modules/reports/rp-lctttt.js +1 -11
  890. package/server/modules/reports/rp-linkslist.js +1 -4
  891. package/server/modules/reports/rp-phanbochitienchohoadon.js +1 -11
  892. package/server/modules/reports/rp-phanbothutienchohoadon.js +1 -10
  893. package/server/modules/reports/rp-ptbitralai.js +1 -7
  894. package/server/modules/reports/rp-ptcttct.js +1 -22
  895. package/server/modules/reports/rp-ptdonhang.js +1 -8
  896. package/server/modules/reports/rp-pttct.js +1 -49
  897. package/server/modules/reports/rp-pttctkho.js +1 -32
  898. package/server/modules/reports/rp-pttctkho2.js +1 -29
  899. package/server/modules/reports/rp-referredusers.js +1 -1
  900. package/server/modules/reports/rp-sctbhxh.js +1 -4
  901. package/server/modules/reports/rp-sctcnkh.js +1 -17
  902. package/server/modules/reports/rp-sctdiem.js +1 -3
  903. package/server/modules/reports/rp-sctdt.js +1 -7
  904. package/server/modules/reports/rp-sctdtcp.js +1 -11
  905. package/server/modules/reports/rp-sctluong.js +1 -4
  906. package/server/modules/reports/rp-sctthuetncn.js +1 -4
  907. package/server/modules/reports/rp-scttk.js +1 -7
  908. package/server/modules/reports/rp-sctvt.js +1 -5
  909. package/server/modules/reports/rp-sctvt_sl.js +1 -5
  910. package/server/modules/reports/rp-sctvtnpp.js +1 -6
  911. package/server/modules/reports/rp-sctvttt.js +1 -5
  912. package/server/modules/reports/rp-search.js +1 -4
  913. package/server/modules/reports/rp-socai.js +1 -6
  914. package/server/modules/reports/rp-socaitk.js +1 -7
  915. package/server/modules/reports/rp-sochut.js +1 -7
  916. package/server/modules/reports/rp-sokho.js +1 -7
  917. package/server/modules/reports/rp-sokhott.js +1 -5
  918. package/server/modules/reports/rp-sonkbh.js +1 -5
  919. package/server/modules/reports/rp-sonkc.js +1 -6
  920. package/server/modules/reports/rp-sonkct.js +1 -5
  921. package/server/modules/reports/rp-sonkmh.js +1 -5
  922. package/server/modules/reports/rp-sonktt.js +1 -5
  923. package/server/modules/reports/rp-soquy.js +1 -11
  924. package/server/modules/reports/rp-sosanhkhvatt.js +1 -13
  925. package/server/modules/reports/rp-sosanhkhvatt2.js +1 -6
  926. package/server/modules/reports/rp-sotaisan.js +1 -13
  927. package/server/modules/reports/rp-sotiengui.js +1 -7
  928. package/server/modules/reports/rp-taodinhmuctudkhoc.js +1 -5
  929. package/server/modules/reports/rp-thbanhangkempk.js +1 -28
  930. package/server/modules/reports/rp-thdanhgianhanvien.js +1 -9
  931. package/server/modules/reports/rp-thgt.js +1 -6
  932. package/server/modules/reports/rp-thnxt.js +1 -12
  933. package/server/modules/reports/rp-thnxt_sl.js +1 -9
  934. package/server/modules/reports/rp-thnxtnpp.js +1 -10
  935. package/server/modules/reports/rp-thnxttt.js +1 -9
  936. package/server/modules/reports/rp-tkbanhangtheogioithieu.js +1 -9
  937. package/server/modules/reports/rp-tkgioithieukh.js +1 -4
  938. package/server/modules/reports/rp-tkgtgt.js +1 -7
  939. package/server/modules/reports/rp-tmbctc.js +1 -20
  940. package/server/modules/reports/rp-tonghopbanhang.js +1 -6
  941. package/server/modules/reports/rp-tonghopmuahang.js +1 -5
  942. package/server/modules/reports/rp-tonghoptralaihang.js +1 -5
  943. package/server/modules/reports/rp-tongquanbanle.js +1 -20
  944. package/server/modules/reports/rp-tongquanbds.js +1 -3
  945. package/server/modules/reports/rp-tongquancongty.js +1 -6
  946. package/server/modules/reports/rp-tongquanctvnpp.js +1 -12
  947. package/server/modules/reports/rp-tongquannvbh.js +1 -14
  948. package/server/modules/reports/rp-tongquannvnpp.js +1 -5
  949. package/server/modules/reports/rp-uoctinhnvl.js +1 -11
  950. package/server/modules/reports/rp-wallet.js +1 -3
  951. package/server/modules/reports/rpt-tkdiemtichluy.js +1 -9
  952. package/server/modules/systems/sys-app.js +1 -30
  953. package/server/modules/systems/sys-colleague.js +1 -11
  954. package/server/modules/systems/sys-domain.js +1 -4
  955. package/server/modules/systems/sys-ecomproductlines.js +1 -1
  956. package/server/modules/systems/sys-exportexceltemplate.js +1 -4
  957. package/server/modules/systems/sys-fieldright.js +1 -3
  958. package/server/modules/systems/sys-importexceltemplate.js +1 -4
  959. package/server/modules/systems/sys-labelinfo.js +1 -4
  960. package/server/modules/systems/sys-listinfo.js +1 -10
  961. package/server/modules/systems/sys-menuinfo.js +1 -4
  962. package/server/modules/systems/sys-message.js +1 -14
  963. package/server/modules/systems/sys-moduleinfo.js +1 -4
  964. package/server/modules/systems/sys-notification.js +1 -8
  965. package/server/modules/systems/sys-quanhuyen.js +1 -4
  966. package/server/modules/systems/sys-reportinfo.js +1 -4
  967. package/server/modules/systems/sys-rptobject.js +1 -3
  968. package/server/modules/systems/sys-schedule.js +1 -11
  969. package/server/modules/systems/sys-sysconfig.js +1 -3
  970. package/server/modules/systems/sys-sysgroup.js +1 -3
  971. package/server/modules/systems/sys-tableinfo.js +1 -3
  972. package/server/modules/systems/sys-templatestore.js +1 -5
  973. package/server/modules/systems/sys-tinhthanh.js +1 -4
  974. package/server/modules/systems/sys-token.js +1 -3
  975. package/server/modules/systems/sys-trangthai.js +1 -4
  976. package/server/modules/systems/sys-trialinfo.js +1 -3
  977. package/server/modules/systems/sys-user.js +1 -45
  978. package/server/modules/systems/sys-users.js +1 -10
  979. package/server/modules/systems/sys-versioninfo.js +1 -3
  980. package/server/modules/systems/sys-vietqrbanks.js +1 -4
  981. package/server/modules/systems/sys-xaphuong.js +1 -4
  982. package/server/modules/vouchers/vo-banggiaban.js +1 -5
  983. package/server/modules/vouchers/vo-bc1.js +1 -33
  984. package/server/modules/vouchers/vo-bc5.js +1 -15
  985. package/server/modules/vouchers/vo-bg1.js +1 -10
  986. package/server/modules/vouchers/vo-bg2.js +1 -12
  987. package/server/modules/vouchers/vo-bn1.js +1 -35
  988. package/server/modules/vouchers/vo-bn5.js +1 -15
  989. package/server/modules/vouchers/vo-dh2.js +1 -35
  990. package/server/modules/vouchers/vo-dinhmucsx.js +1 -6
  991. package/server/modules/vouchers/vo-dkb.js +1 -21
  992. package/server/modules/vouchers/vo-dn0.js +1 -9
  993. package/server/modules/vouchers/vo-dnm.js +1 -21
  994. package/server/modules/vouchers/vo-hd1.js +1 -36
  995. package/server/modules/vouchers/vo-hd2.js +1 -107
  996. package/server/modules/vouchers/vo-hd3.js +1 -44
  997. package/server/modules/vouchers/vo-hd4.js +1 -13
  998. package/server/modules/vouchers/vo-hd7.js +1 -29
  999. package/server/modules/vouchers/vo-hd8.js +1 -29
  1000. package/server/modules/vouchers/vo-hde.js +1 -40
  1001. package/server/modules/vouchers/vo-htl.js +1 -11
  1002. package/server/modules/vouchers/vo-kbbtpb.js +1 -6
  1003. package/server/modules/vouchers/vo-kehoachmh.js +1 -13
  1004. package/server/modules/vouchers/vo-lenhcapphat.js +1 -10
  1005. package/server/modules/vouchers/vo-lenhsx.js +1 -12
  1006. package/server/modules/vouchers/vo-pbl.js +1 -93
  1007. package/server/modules/vouchers/vo-pc0.js +1 -14
  1008. package/server/modules/vouchers/vo-pc1.js +1 -31
  1009. package/server/modules/vouchers/vo-pc2.js +1 -24
  1010. package/server/modules/vouchers/vo-pc3.js +1 -14
  1011. package/server/modules/vouchers/vo-pc5.js +1 -15
  1012. package/server/modules/vouchers/vo-pc6.js +1 -19
  1013. package/server/modules/vouchers/vo-pcl.js +1 -7
  1014. package/server/modules/vouchers/vo-pdn.js +1 -11
  1015. package/server/modules/vouchers/vo-pdx.js +1 -9
  1016. package/server/modules/vouchers/vo-pgh.js +1 -19
  1017. package/server/modules/vouchers/vo-pht.js +1 -7
  1018. package/server/modules/vouchers/vo-pkc.js +1 -7
  1019. package/server/modules/vouchers/vo-pkh.js +1 -10
  1020. package/server/modules/vouchers/vo-pkk.js +1 -12
  1021. package/server/modules/vouchers/vo-pkt.js +1 -13
  1022. package/server/modules/vouchers/vo-pn1.js +1 -33
  1023. package/server/modules/vouchers/vo-pn2.js +1 -16
  1024. package/server/modules/vouchers/vo-pn3.js +1 -18
  1025. package/server/modules/vouchers/vo-pn5.js +1 -19
  1026. package/server/modules/vouchers/vo-pn6.js +1 -18
  1027. package/server/modules/vouchers/vo-pn9.js +1 -22
  1028. package/server/modules/vouchers/vo-pnc.js +1 -20
  1029. package/server/modules/vouchers/vo-pnh.js +1 -20
  1030. package/server/modules/vouchers/vo-pnk.js +1 -14
  1031. package/server/modules/vouchers/vo-pnknpp.js +1 -12
  1032. package/server/modules/vouchers/vo-po1.js +1 -15
  1033. package/server/modules/vouchers/vo-ppb.js +1 -8
  1034. package/server/modules/vouchers/vo-pt1.js +1 -21
  1035. package/server/modules/vouchers/vo-pt5.js +1 -15
  1036. package/server/modules/vouchers/vo-ptl.js +1 -8
  1037. package/server/modules/vouchers/vo-purchase_contract.js +1 -9
  1038. package/server/modules/vouchers/vo-pxc.js +1 -22
  1039. package/server/modules/vouchers/vo-pxh.js +1 -28
  1040. package/server/modules/vouchers/vo-pxk.js +1 -15
  1041. package/server/modules/vouchers/vo-pxknpp.js +1 -14
  1042. package/server/modules/vouchers/vo-qts.js +1 -12
  1043. package/server/modules/vouchers/vo-sale_contract.js +1 -11
  1044. package/server/modules/vouchers/vo-shipbook.js +1 -17
  1045. package/server/modules/vouchers/vo-so1.js +1 -126
  1046. package/server/modules/vouchers/vo-so2.js +1 -37
  1047. package/server/modules/vouchers/vo-so3.js +1 -41
  1048. package/server/modules/vouchers/vo-so5.js +1 -57
  1049. package/server/modules/vouchers/vo-so7.js +1 -97
  1050. package/server/modules/vouchers/vo-so9.js +1 -119
  1051. package/server/modules/vouchers/vo-vanchuyen.js +1 -14
  1052. package/server/modules/vouchers/vo-xhd.js +1 -33
  1053. package/server/route.js +1 -51
  1054. package/server/services/invoiceFetcher.js +1 -15
  1055. package/server/sslConfig.js +1 -2
  1056. package/server/transactionMiddleware.js +1 -5
  1057. package/server/workers/backupApp.js +1 -9
  1058. package/server/workers/calcGrid.js +1 -9
  1059. package/server/workers/customerOnImport.js +1 -8
  1060. package/server/workers/dmvtOnImport.js +1 -9
  1061. package/server/workers/excelParser.js +1 -9
  1062. package/server/workers/inputWorker.js +1 -6
  1063. package/server/workers/pushNotify.js +1 -10
  1064. package/server/workers/reportWorker.js +1 -7
  1065. package/server/workers/restoreApp.js +1 -23
  1066. package/server/workers/runScript.js +1 -4
  1067. package/server/workers/sendEmail.js +1 -13
  1068. package/server/workers/webhook.js +1 -5
@@ -1,64 +1 @@
1
- const nodeHandlers=require("./handlers"),crypto=require("crypto");
2
- class FlowEngine{constructor(){this.runningFlows={};this.webhookManager=null}setWebhookManager($manager$$){$manager$$?(console.log("[FlowEngine] WebhookManager instance injected."),this.webhookManager=$manager$$):console.warn("[FlowEngine] Attempted to set a null or undefined WebhookManager.")}async startFlow($flowDefinition_flowState_flow_id$$,$initialData$$,$flowInstanceId$$,$begin_node_potentialStartNodes_startNodeIdOverride$$=null){const $flowIdStr$$=$flowDefinition_flowState_flow_id$$.toString();
3
- if(!global.mongoose.Types.ObjectId.isValid($flowDefinition_flowState_flow_id$$))throw Error(`Flow ID "${$flowDefinition_flowState_flow_id$$}" is not valid`);$flowDefinition_flowState_flow_id$$=await global.getModel("flow").findOne({_id:$flowDefinition_flowState_flow_id$$}).lean();if(!$flowDefinition_flowState_flow_id$$)throw Error(`Flow ID "${$flowIdStr$$}" does not exist`);const $nodes$$={};var $edges_finalStatus_startNodeType$$=$flowDefinition_flowState_flow_id$$.edges||[];const $inDegrees$$={};
4
- $edges_finalStatus_startNodeType$$.forEach($edge$$=>{$edge$$.target&&($inDegrees$$[$edge$$.target]=($inDegrees$$[$edge$$.target]||0)+1)});($flowDefinition_flowState_flow_id$$.nodes||[]).forEach($node$$=>{$node$$&&$node$$.id?$nodes$$[$node$$.id]={...$node$$,status:$node$$.data?.disabled?"disabled":"pending",predecessorCount:$inDegrees$$[$node$$.id]||0,incomingPayloads:{},completedPredecessors:new Set,outputData:void 0,inputPayload:void 0}:console.warn("Node definition without ID found, skipping:",
5
- $node$$)});if($begin_node_potentialStartNodes_startNodeIdOverride$$&&$nodes$$[$begin_node_potentialStartNodes_startNodeIdOverride$$])$begin_node_potentialStartNodes_startNodeIdOverride$$=$nodes$$[$begin_node_potentialStartNodes_startNodeIdOverride$$];else{const $targetNodes$$=new Set($edges_finalStatus_startNodeType$$.map($e$$=>$e$$.target));$begin_node_potentialStartNodes_startNodeIdOverride$$=Object.values($nodes$$).filter($n$$=>!$targetNodes$$.has($n$$.id));if($begin_node_potentialStartNodes_startNodeIdOverride$$.length===
6
- 0&&Object.keys($nodes$$).length>0)throw Error(`[${$flowInstanceId$$}] No start node found for Flow ${$flowIdStr$$}.`);if($begin_node_potentialStartNodes_startNodeIdOverride$$.length>1)console.warn(`[${$flowInstanceId$$}] Multiple start nodes found. Using first: ${$begin_node_potentialStartNodes_startNodeIdOverride$$[0].id}`),$begin_node_potentialStartNodes_startNodeIdOverride$$=$begin_node_potentialStartNodes_startNodeIdOverride$$[0];else if($begin_node_potentialStartNodes_startNodeIdOverride$$.length===
7
- 1)$begin_node_potentialStartNodes_startNodeIdOverride$$=$begin_node_potentialStartNodes_startNodeIdOverride$$[0];else throw Error(`[${$flowInstanceId$$}] Flow ${$flowIdStr$$} has no nodes.`);}if(!$begin_node_potentialStartNodes_startNodeIdOverride$$)throw Error(`[${$flowInstanceId$$}] Cannot start Flow ${$flowIdStr$$}: Start node could not be determined.`);if($begin_node_potentialStartNodes_startNodeIdOverride$$?.data?.disabled)throw Error("Node kh\u1edfi \u0111\u1ea7u \u0111\u00e3 b\u1ecb v\u00f4 hi\u1ec7u ho\u00e1");
8
- var $abortController_isWebhookStart$$=new AbortController;$flowDefinition_flowState_flow_id$$={flowId:$flowIdStr$$,instanceId:$flowInstanceId$$,status:"initializing",initialData:$initialData$$,nodes:$nodes$$,edges:$edges_finalStatus_startNodeType$$,flowDefinition:$flowDefinition_flowState_flow_id$$,abortController:$abortController_isWebhookStart$$,abortSignal:$abortController_isWebhookStart$$.signal,triggerDownstreamCallback:($sourceNodeId$$,$payload$$)=>{this.triggerDownstreamNodesInternal($flowInstanceId$$,
9
- $sourceNodeId$$,$payload$$)}};this.runningFlows[$flowInstanceId$$]=$flowDefinition_flowState_flow_id$$;console.log(`[${$flowInstanceId$$}] Start node is ${$begin_node_potentialStartNodes_startNodeIdOverride$$.id} - ${$begin_node_potentialStartNodes_startNodeIdOverride$$.name} - ${$begin_node_potentialStartNodes_startNodeIdOverride$$.type}`);$edges_finalStatus_startNodeType$$=$begin_node_potentialStartNodes_startNodeIdOverride$$.type;$abortController_isWebhookStart$$=$edges_finalStatus_startNodeType$$===
10
- "webhook"||$edges_finalStatus_startNodeType$$==="facebook";if(this.webhookManager){const $webhookNodes$$=Object.values($flowDefinition_flowState_flow_id$$.nodes).filter($n$$=>($n$$.type==="webhook"||$n$$.type==="facebook")&&$n$$.data?.path&&!$n$$.data?.disabled);if($webhookNodes$$.length>0){console.log(`[${$flowInstanceId$$}] Registering webhooks for flow ${$flowIdStr$$}...`);try{await Promise.all($webhookNodes$$.map(async $whNode$$=>{let {path:$path$$,method:$method$$,verificationMethod:$verificationMethod$$,
11
- verificationChallengeQueryParam:$verificationChallengeQueryParam$$,verificationTokenQueryParam:$verificationTokenQueryParam$$,verificationTokenValue:$verificationTokenValue$$,appSecret:$appSecret$$}=$whNode$$.data;const $nodeId$$=$whNode$$.id;var $fbVerifyToken_verificationConfig$$=null;let $dataMethod$$=$method$$;if($whNode$$.type==="facebook"){$dataMethod$$="POST";({verifyTokenValue:$fbVerifyToken_verificationConfig$$}=$whNode$$.data);$appSecret$$=$whNode$$.data.appSecret;if(!$fbVerifyToken_verificationConfig$$){console.error(`[${$flowInstanceId$$}] Skipping FB node ${$nodeId$$}: Missing 'verifyTokenValue'.`);
12
- return}$fbVerifyToken_verificationConfig$$={method:"GET",challengeQueryParam:"hub.challenge",tokenParam:"hub.verify_token",tokenValue:$fbVerifyToken_verificationConfig$$}}else $verificationChallengeQueryParam$$&&($fbVerifyToken_verificationConfig$$={method:$verificationMethod$$||"GET",challengeQueryParam:$verificationChallengeQueryParam$$,...($verificationTokenQueryParam$$&&$verificationTokenValue$$&&{tokenParam:$verificationTokenQueryParam$$,tokenValue:$verificationTokenValue$$})});$dataMethod$$=
13
- $dataMethod$$?.toLowerCase()||"post";await this.webhookManager.registerWebhook($path$$,$dataMethod$$,$flowIdStr$$,$nodeId$$,$flowInstanceId$$,$fbVerifyToken_verificationConfig$$,$appSecret$$);console.log(`[${$flowInstanceId$$}] Registered webhook: ${$dataMethod$$.toUpperCase()} ${$path$$} (Node ${$nodeId$$})`)}))}catch($registerError$$){throw console.error(`[${$flowInstanceId$$}] Error during webhook registration:`,$registerError$$),this.cleanupFlow($flowIdStr$$,$flowInstanceId$$),Error(`Failed during webhook registration: ${$registerError$$.message}`);
14
- }}}else $abortController_isWebhookStart$$&&console.warn(`[${$flowInstanceId$$}] Webhook start node detected but WebhookManager is not set.`);$abortController_isWebhookStart$$?($edges_finalStatus_startNodeType$$="listening",$flowDefinition_flowState_flow_id$$.status=$edges_finalStatus_startNodeType$$,console.log(`[${$flowInstanceId$$}] Flow instance is LISTENING for webhook trigger at node ${$begin_node_potentialStartNodes_startNodeIdOverride$$.id}. Status: ${$edges_finalStatus_startNodeType$$}`),
15
- global.socketContainer?.socketIO&&global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-started",{flowInstanceId:$flowInstanceId$$,flowId:$flowIdStr$$,status:$edges_finalStatus_startNodeType$$})):($edges_finalStatus_startNodeType$$=$edges_finalStatus_startNodeType$$==="event"?"listening":"running",$flowDefinition_flowState_flow_id$$.status=$edges_finalStatus_startNodeType$$,console.log(`[${$flowInstanceId$$}] Flow ${$flowIdStr$$} instance starting nodes immediately. Status: ${$edges_finalStatus_startNodeType$$}`),
16
- global.socketContainer?.socketIO&&global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-started",{flowInstanceId:$flowInstanceId$$,flowId:$flowIdStr$$,status:$edges_finalStatus_startNodeType$$}),this.runNode($begin_node_potentialStartNodes_startNodeIdOverride$$,$initialData$$??{},$flowInstanceId$$,"initial").catch($error$$=>{console.error(`[${$flowInstanceId$$}] Critical error during initial node run:`,$error$$);this.stopFlow($flowInstanceId$$,!0,`Critical error starting flow: ${$error$$.message}`)}));
17
- await global.getModel("flow").updateOne({_id:$flowIdStr$$},{activeInstance:{status:$edges_finalStatus_startNodeType$$,initialData:$initialData$$,instanceId:$flowInstanceId$$}});return{flowInstanceId:$flowInstanceId$$,status:$edges_finalStatus_startNodeType$$}}async runNode($node$$,$errorMsg$jscomp$1_payload$$,$flowInstanceId$$,$triggerId$$=null){const $triggerContext$$=$triggerId$$?`|${$triggerId$$}`:"";console.log(`[${$flowInstanceId$$}${$triggerContext$$}] --- runNode ENTERED for node ${$node$$?.id} - ${$node$$.name} - ${$node$$.type} ---`);
18
- var $errorMsg_flowState$$=this.runningFlows[$flowInstanceId$$];if($errorMsg_flowState$$&&["running","listening"].includes($errorMsg_flowState$$.status))if($node$$&&$node$$.id&&$errorMsg_flowState$$.nodes[$node$$.id]){$errorMsg_flowState$$.status==="listening"&&(console.log(`[${$flowInstanceId$$}${$triggerContext$$}] runNode: Transitioning flow status from 'listening' to 'running'.`),$errorMsg_flowState$$.status="running",global.socketContainer?.socketIO&&global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-status-updated",
19
- {flowInstanceId:$flowInstanceId$$,status:"running"}));var $currentNodeState$$=$errorMsg_flowState$$.nodes[$node$$.id];if($errorMsg_flowState$$.abortSignal.aborted)console.log(`[${$flowInstanceId$$}${$triggerContext$$}] runNode: Node ${$node$$.id} aborted before execution.`),this.updateNodeStatus($flowInstanceId$$,$node$$.id,"cancelled",void 0,void 0,$triggerId$$),this.checkFlowCompletion($flowInstanceId$$);else{console.log(`[${$flowInstanceId$$}${$triggerContext$$}] ---> Attempting to set node ${$node$$.id} to RUNNING`);
20
- this.updateNodeStatus($flowInstanceId$$,$node$$.id,"running",void 0,$errorMsg$jscomp$1_payload$$,$triggerId$$);console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Status of node ${$node$$.id} AFTER update attempt: ${$errorMsg_flowState$$.nodes[$node$$.id]?.status}`);console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Running node ${$node$$.id} (Type: ${$node$$.type})`);var $handler$$=nodeHandlers[$node$$.type]||nodeHandlers.debug;$handler$$||(console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Don't find handler for type node ${$node$$.type}. Use debug node...`),
21
- $handler$$=nodeHandlers.debug);if($handler$$)try{console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Executing handler for node ${$node$$.id}...`);const $engineContext$$={updateNodeStatus:this.updateNodeStatus.bind(this),triggerDownstreamNodesInternal:this.triggerDownstreamNodesInternal.bind(this),runNode:this.runNode.bind(this),cancelBranch:this._cancelBranch.bind(this)},$outputData$$=await $handler$$($errorMsg_flowState$$,$currentNodeState$$,$errorMsg$jscomp$1_payload$$,$errorMsg_flowState$$.abortSignal,
22
- $engineContext$$);console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Handler for node ${$node$$.id} finished.`);if(this.runningFlows[$flowInstanceId$$]&&["running","listening"].includes(this.runningFlows[$flowInstanceId$$].status))if($errorMsg_flowState$$.abortSignal.aborted)console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Node ${$node$$.id} aborted during handler execution.`),this.updateNodeStatus($flowInstanceId$$,$node$$.id,"cancelled",void 0,void 0,$triggerId$$),this.checkFlowCompletion($flowInstanceId$$);
23
- else if($outputData$$===void 0&&["switch","foreachitem"].includes($node$$.type))console.log(`[${$flowInstanceId$$}${$triggerContext$$}] ${$node$$.type} node ${$node$$.id} handled branching. Setting status to completed.`),console.log(`[${$flowInstanceId$$}${$triggerContext$$}] ---> Attempting to set node ${$node$$.id} to COMPLETED (after branching)`),this.updateNodeStatus($flowInstanceId$$,$node$$.id,"completed",void 0,void 0,$triggerId$$),this.checkFlowCompletion($flowInstanceId$$);else if($outputData$$&&
24
- typeof $outputData$$==="object"&&$outputData$$.repeating===!0){const $nodeStatus$$=$outputData$$.nodeStatus||"active_repeating";console.log(`[${$flowInstanceId$$}] Node ${$node$$.id} is now an active '${$outputData$$.nodeType||"repeating"}' node (independent of trigger ${$triggerId$$}).`);console.log(`[${$flowInstanceId$$}] ---> Attempting to set node ${$node$$.id} to ${$nodeStatus$$} (repeating)`);this.updateNodeStatus($flowInstanceId$$,$node$$.id,$nodeStatus$$,void 0,void 0,null)}else console.log(`[${$flowInstanceId$$}${$triggerContext$$}] ---> Attempting to set node ${$node$$.id} to COMPLETED`),
25
- this.updateNodeStatus($flowInstanceId$$,$node$$.id,"completed",$outputData$$,void 0,$triggerId$$),console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Node ${$node$$.id} completed normally.`),console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Triggering downstream nodes from ${$node$$.id}...`),this.triggerDownstreamNodesInternal($flowInstanceId$$,$node$$.id,$outputData$$,$triggerId$$);else console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Flow stopped or changed status during node ${$node$$.id} execution.`),
26
- this.checkFlowCompletion($flowInstanceId$$)}catch($error$$){$error$$ instanceof DOMException&&$error$$.name==="AbortError"?(console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Node ${$node$$.id} execution aborted by signal.`),console.log(`[${$flowInstanceId$$}${$triggerContext$$}] ---> Attempting to set node ${$node$$.id} to CANCELLED (AbortError)`),this.updateNodeStatus($flowInstanceId$$,$node$$.id,"cancelled",void 0,void 0,$triggerId$$)):(console.error(`[${$flowInstanceId$$}${$triggerContext$$}] Node ${$node$$.id} failed during execution:`,
27
- $error$$),$errorMsg$jscomp$1_payload$$=$error$$.message||$error$$,console.log(`[${$flowInstanceId$$}${$triggerContext$$}] ---> Attempting to set node ${$node$$.id} to FAILED:`,$errorMsg$jscomp$1_payload$$),this.updateNodeStatus($flowInstanceId$$,$node$$.id,"failed",$errorMsg$jscomp$1_payload$$,void 0,$triggerId$$),console.warn(`[${$flowInstanceId$$}${$triggerContext$$}] Execution path failed for this trigger at node ${$node$$.id}.`)),Object.values($errorMsg_flowState$$.nodes).find($n$$=>$n$$.type===
28
- "webhook"||$n$$.type==="facebook")||(console.log(`[${$flowInstanceId$$}${$triggerContext$$}]: check flow completion`),this.checkFlowCompletion($flowInstanceId$$))}else $errorMsg_flowState$$=`No handler for type ${$node$$.type} or debug (Node ${$node$$.id}).`,console.error(`[${$flowInstanceId$$}${$triggerContext$$}] ${$errorMsg_flowState$$}`),this.updateNodeStatus($flowInstanceId$$,$node$$.id,"failed",$errorMsg_flowState$$,void 0,$triggerId$$),this.stopFlow($flowInstanceId$$,!0,$errorMsg_flowState$$)}}else console.error(`[${$flowInstanceId$$}${$triggerContext$$}] runNode ERROR: Invalid node object passed:`,
29
- $node$$),this.stopFlow($flowInstanceId$$,!0,`Invalid node ID: ${$node$$?.id}`);else $errorMsg_flowState$$?console.log(`[${$flowInstanceId$$}${$triggerContext$$}] runNode SKIPPED for node ${$node$$?.id}: Flow status is ${$errorMsg_flowState$$.status}.`):console.log(`[${$flowInstanceId$$}${$triggerContext$$}] runNode SKIPPED for node ${$node$$?.id}: Flow state not found.`)}triggerDownstreamNodesInternal($flowInstanceId$$,$sourceNodeId$$,$payload$$,$triggerId$$){const $flowState$$=this.runningFlows[$flowInstanceId$$],
30
- $triggerContext$$=$triggerId$$?`|${$triggerId$$}`:"";if(!$flowState$$||$flowState$$.status!=="running"&&$flowState$$.status!=="listening"||$flowState$$.abortSignal.aborted)console.log(`\u26a0\ufe0f [${$flowInstanceId$$}${$triggerContext$$}] Skipping downstream trigger from ${$sourceNodeId$$}. Reason: Flow status (${$flowState$$?.status}) not 'running or listening' or aborted (${$flowState$$.abortSignal.aborted}).`);else if($flowState$$.nodes[$sourceNodeId$$]){var $nextNodeIds$$=$flowState$$.edges.filter($edge$$=>
31
- $edge$$.source===$sourceNodeId$$).map($edge$$=>$edge$$.target).filter($id$$=>$flowState$$.nodes[$id$$]&&!$flowState$$.nodes[$id$$].data?.disabled);if($nextNodeIds$$.length>0){console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Node ${$sourceNodeId$$} has ${$nextNodeIds$$.length} downstream nodes: ${$nextNodeIds$$.join(", ")}`);for(const $nextNodeId$$ of $nextNodeIds$$){const $targetNodeState$$=$flowState$$.nodes[$nextNodeId$$];if(!$targetNodeState$$||$targetNodeState$$.data?.disabled)console.warn(`\u26a0\ufe0f [${$flowInstanceId$$}${$triggerContext$$}] Edge target ${$nextNodeId$$} not found or disabled.`);
32
- else if($targetNodeState$$.incomingPayloads=$targetNodeState$$.incomingPayloads||{},$targetNodeState$$.completedPredecessors=$targetNodeState$$.completedPredecessors||new Set,$targetNodeState$$.incomingPayloads[$sourceNodeId$$]=$payload$$,$targetNodeState$$.completedPredecessors.add($sourceNodeId$$),console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Node ${$sourceNodeId$$} -> ${$nextNodeId$$}. Join: ${$targetNodeState$$.completedPredecessors.size}/${$targetNodeState$$.predecessorCount}`),$targetNodeState$$.predecessorCount<=
33
- 0||$targetNodeState$$.completedPredecessors.size>=$targetNodeState$$.predecessorCount){$targetNodeState$$.predecessorCount<=0?console.warn(`[${$flowInstanceId$$}${$triggerContext$$}] Node ${$nextNodeId$$} triggered with 0 predecessors.`):console.log(`[${$flowInstanceId$$}${$triggerContext$$}] All predecessors for ${$nextNodeId$$} done. Triggering.`);let $combinedPayload$$;const $incomingPayloadValues$$=Object.values($targetNodeState$$.incomingPayloads);$targetNodeState$$.predecessorCount<=1?($combinedPayload$$=
34
- $incomingPayloadValues$$.length>0?$incomingPayloadValues$$[$incomingPayloadValues$$.length-1]:{},console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Using single payload for node ${$nextNodeId$$}.`)):($combinedPayload$$=$incomingPayloadValues$$,console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Combining ${$incomingPayloadValues$$.length} payloads into array for node ${$nextNodeId$$}.`));$targetNodeState$$.completedPredecessors.clear();$targetNodeState$$.incomingPayloads={};console.log(`[${$flowInstanceId$$}${$triggerContext$$}] ---> Attempting to set node ${$nextNodeId$$} to PENDING (before run)`);
35
- this.updateNodeStatus($flowInstanceId$$,$nextNodeId$$,"pending",void 0,void 0,null);console.log(`\ud83d\udd25 [${$flowInstanceId$$}${$triggerContext$$}] Calling runNode for ${$nextNodeId$$}...`);this.runNode($targetNodeState$$,$combinedPayload$$,$flowInstanceId$$,$triggerId$$).catch($error$$=>{console.error(`\u274c [${$flowInstanceId$$}${$triggerContext$$}] Error starting ${$nextNodeId$$}:`,$error$$);this.updateNodeStatus($flowInstanceId$$,$nextNodeId$$,"failed",$error$$.message||String($error$$),
36
- void 0,$triggerId$$)})}else console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Node ${$nextNodeId$$} still waiting for predecessors.`)}}else console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Node ${$sourceNodeId$$} is a terminal node for trigger ${$triggerId$$}.`);Object.values($flowState$$.nodes).find($n$$=>($n$$.type==="webhook"||$n$$.type==="facebook"||$n$$.type==="event")&&$n$$.predecessorCount===0)&&$flowState$$.status==="running"?Object.values($flowState$$.nodes).some($n$$=>$n$$.status===
37
- "running")?console.log(`[${$flowInstanceId$$}] Path for trigger ${$triggerId$$} ended, but other nodes might be running. Keeping status 'running'.`):(console.log(`[${$flowInstanceId$$}] No nodes seem to be running. Setting status back to 'listening'.`),$flowState$$.status="listening",global.socketContainer?.socketIO&&global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-status-updated",{flowInstanceId:$flowInstanceId$$,status:"listening"})):$nextNodeIds$$.length==0?(Object.values($flowState$$.nodes).forEach($node$$=>
38
- {["pending"].includes($node$$.status)&&this.updateNodeStatus($flowInstanceId$$,$node$$.id,"cancelled",void 0,void 0,null)}),$flowState$$.status="completed",global.socketContainer?.socketIO&&global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-status-updated",{flowInstanceId:$flowInstanceId$$,status:"completed"})):this.checkFlowCompletion($flowInstanceId$$)}else console.warn(`\u26a0\ufe0f [${$flowInstanceId$$}${$triggerContext$$}] Source node ${$sourceNodeId$$} not found.`)}async triggerNodeInInstance($flowInstanceId$$,
39
- $targetNodeId$$,$payload$$){var $flowState$$=this.runningFlows[$flowInstanceId$$];if($flowState$$)if(["running","listening"].includes($flowState$$.status))if($flowState$$=$flowState$$.nodes[$targetNodeId$$],!$flowState$$||$flowState$$.data?.disabled)console.error(`[FlowEngine.triggerNode] Target node ${$targetNodeId$$} not found or disabled in instance ${$flowInstanceId$$}.`);else{var $triggerId$$=`trig_${Date.now()}_${crypto.randomBytes(4).toString("hex")}`,$triggerContext$$=`|${$triggerId$$}`;console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Received external trigger for node ${$targetNodeId$$}. Resetting and running...`);
40
- console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Resetting branch starting from ${$targetNodeId$$}...`);await this._resetBranchStatus($flowInstanceId$$,$targetNodeId$$,$triggerId$$);this.runNode($flowState$$,$payload$$??{},$flowInstanceId$$,$triggerId$$).catch($error$$=>{console.error(`[${$flowInstanceId$$}|${$triggerId$$}] Error re-running node ${$targetNodeId$$} from external trigger:`,$error$$);this.updateNodeStatus($flowInstanceId$$,$targetNodeId$$,"failed",$error$$.message||String($error$$),
41
- void 0,$triggerId$$)})}else console.warn(`[FlowEngine.triggerNode] Instance ${$flowInstanceId$$} is not in 'running' or 'listening' state (current: ${$flowState$$.status}). Ignoring trigger.`);else console.warn(`[FlowEngine.triggerNode] Instance ${$flowInstanceId$$} not found. Ignoring trigger.`)}checkFlowCompletion($flowInstanceId$$){const $flowState$$=this.runningFlows[$flowInstanceId$$];$flowState$$&&!["completed","failed","stopped","listening"].includes($flowState$$.status)&&(Object.values($flowState$$.nodes).find($n$$=>
42
- ($n$$.type==="webhook"||$n$$.type==="facebook")&&$n$$.predecessorCount===0)?console.log("start node l\u00e0 m\u1ed9t webhook. Flow webhook kh\u00f4ng t\u1ef1 ho\u00e0n th\u00e0nh"):Object.values($flowState$$.nodes).find($n$$=>$n$$.status=="failed")&&!Object.values($flowState$$.nodes).find($n$$=>$n$$.status=="active_repeating"||$n$$.status=="active_listening")?(console.log(`[${$flowInstanceId$$}] Flow ${$flowState$$.flowId} instance failed.`),$flowState$$.status="failed",global.socketContainer?.socketIO&&
43
- global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-failed",{flowInstanceId:$flowInstanceId$$,flowId:$flowState$$.flowId}),this.cleanupFlow($flowState$$.flowId,$flowInstanceId$$)):Object.values($flowState$$.nodes).every($node$$=>["completed","failed","cancelled","stopped","disabled"].includes($node$$.status))&&(console.log(`[${$flowInstanceId$$}] All nodes finalized. Flow ${$flowState$$.flowId} instance completed.`),$flowState$$.status="completed",global.socketContainer?.socketIO&&global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-completed",
44
- {flowInstanceId:$flowInstanceId$$,flowId:$flowState$$.flowId}),this.cleanupFlow($flowState$$.flowId,$flowInstanceId$$)))}stopFlow($flowInstanceId$$,$isError$$=!1,$reason$$="Flow stopped manually"){const $flowState$$=this.runningFlows[$flowInstanceId$$];var $originalFlowId_stoppableStates$$="running pending active_repeating active_listening waiting listening initializing".split(" ");if($flowState$$&&$originalFlowId_stoppableStates$$.includes($flowState$$.status)){$originalFlowId_stoppableStates$$=
45
- $flowState$$.flowId;const $finalStatus$$=$isError$$?"failed":"stopped";console.log(`[${$flowInstanceId$$}] Stopping flow instance for ${$originalFlowId_stoppableStates$$}. Reason: ${$finalStatus$$}. Msg: ${$reason$$}`);$flowState$$.abortController&&!$flowState$$.abortController.signal.aborted&&($flowState$$.abortController.abort(),console.log(`[${$flowInstanceId$$}] Abort signal sent.`));$flowState$$.status=$finalStatus$$;Object.values($flowState$$.nodes).forEach($node$$=>{["running","pending","active_repeating",
46
- "active_listening"].includes($node$$.status)&&this.updateNodeStatus($flowInstanceId$$,$node$$.id,"cancelled",void 0,void 0,null)});if(global.socketContainer?.socketIO){const $eventData$$={flowInstanceId:$flowInstanceId$$,flowId:$originalFlowId_stoppableStates$$};$isError$$?($eventData$$.error=$reason$$,global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-failed",$eventData$$)):global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-stopped",$eventData$$)}this._unregisterWebhooksForInstance($flowState$$);
47
- this.cleanupFlow($originalFlowId_stoppableStates$$,$flowInstanceId$$);console.log(`[${$flowInstanceId$$}] Flow instance finalized as ${$finalStatus$$}.`);return{...$flowState$$,status:$finalStatus$$}}return $flowState$$?$flowState$$:null}_unregisterWebhooksForInstance($dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$){if(this.webhookManager&&$dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$){var $flowInstanceId$$=$dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$.instanceId;console.log(`[${$flowInstanceId$$}] Requesting unregistration of webhooks for flow ${$dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$.flowId}...`);
48
- $dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$=Object.values($dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$.nodes).filter($n$$=>($n$$.type==="webhook"||$n$$.type==="facebook")&&$n$$.data?.path);for(const $whNode$$ of $dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$){let {path:$path$$,method:$method$$,verificationMethod:$verificationMethod$$}=$whNode$$.data;$dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$=$method$$;let $verifyMethod$$=$verificationMethod$$||"GET";$whNode$$.type===
49
- "facebook"&&($dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$="POST",$verifyMethod$$="GET");$dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$=$dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$?.toLowerCase()||"post";try{this.webhookManager.unregisterWebhook($path$$,$dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$,$flowInstanceId$$,$verifyMethod$$.toLowerCase()),console.log(`[${$flowInstanceId$$}] Requested unregistration for webhook: ${$dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$.toUpperCase()} ${$path$$} (Node ${$whNode$$.id})`)}catch($unregisterError$$){console.error(`[${$flowInstanceId$$}] Failed to unregister webhook ${$dataMethod$jscomp$1_flowState$jscomp$6_webhookNodes$$.toUpperCase()} ${$path$$} for node ${$whNode$$.id}:`,
50
- $unregisterError$$.message)}}}}_cancelBranch($flowInstanceId$$,$startNodeId$$,$triggerId$$,$visitedNodes$$=new Set){const $flowState$$=this.runningFlows[$flowInstanceId$$];if($flowState$$&&!$visitedNodes$$.has($startNodeId$$)){var $nodeToCancel$$=$flowState$$.nodes[$startNodeId$$];$nodeToCancel$$?($visitedNodes$$.add($startNodeId$$),$nodeToCancel$$.status==="pending"&&(console.log(`[${$flowInstanceId$$}${$triggerId$$?`|${$triggerId$$}`:""}] ---> Cancelling node ${$startNodeId$$} in unused branch.`),
51
- this.updateNodeStatus($flowInstanceId$$,$startNodeId$$,"cancelled",void 0,void 0,$triggerId$$),$flowState$$.edges.filter($edge$$=>$edge$$.source===$startNodeId$$).forEach($edge$$=>{this._cancelBranch($flowInstanceId$$,$edge$$.target,$triggerId$$,$visitedNodes$$)}))):console.warn(`[${$flowInstanceId$$}] _cancelBranch: Node ${$startNodeId$$} not found.`)}}async _resetBranchStatus($flowInstanceId$$,$startNodeId$$,$triggerId$$,$visitedNodes$$=new Set){var $flowState$jscomp$8_nextEdges$$=this.runningFlows[$flowInstanceId$$];
52
- if($flowState$jscomp$8_nextEdges$$&&!$visitedNodes$$.has($startNodeId$$)){var $nodeToReset$$=$flowState$jscomp$8_nextEdges$$.nodes[$startNodeId$$];if($nodeToReset$$){$visitedNodes$$.add($startNodeId$$);$nodeToReset$$.status!=="pending"&&(console.log(`[${$flowInstanceId$$}${$triggerId$$?`|${$triggerId$$}`:""}] ---> Resetting node ${$startNodeId$$} to PENDING.`),this.updateNodeStatus($flowInstanceId$$,$startNodeId$$,"pending",void 0,void 0,null),$nodeToReset$$.incomingPayloads={},$nodeToReset$$.completedPredecessors=
53
- new Set);$flowState$jscomp$8_nextEdges$$=$flowState$jscomp$8_nextEdges$$.edges.filter($edge$$=>$edge$$.source===$startNodeId$$);for(const $edge$$ of $flowState$jscomp$8_nextEdges$$)await this._resetBranchStatus($flowInstanceId$$,$edge$$.target,$triggerId$$,$visitedNodes$$)}else console.warn(`[${$flowInstanceId$$}${$triggerId$$?`|${$triggerId$$}`:""}] _resetBranchStatus: Node ${$startNodeId$$} not found.`)}}_checkAndSetListening($flowInstanceId$$,$triggerContext$$){const $flowState$$=this.runningFlows[$flowInstanceId$$];
54
- $flowState$$&&$flowState$$.status==="running"&&Object.values($flowState$$.nodes).find($n$$=>($n$$.type==="webhook"||$n$$.type==="facebook"||$n$$.type==="event")&&$n$$.predecessorCount===0)&&(Object.values($flowState$$.nodes).some($n$$=>$n$$.status==="running")?console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Path ended, but other nodes might be running. Keeping status 'running'.`):(console.log(`[${$flowInstanceId$$}${$triggerContext$$}] No nodes seem to be running. Setting status back to 'listening'.`),
55
- $flowState$$.status="listening",global.socketContainer?.socketIO&&global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-status-updated",{flowInstanceId:$flowInstanceId$$,status:"listening"})))}async cleanupFlow($flowId$$,$flowInstanceId$$){if(this.runningFlows[$flowInstanceId$$]){const {status:$status$$,initialData:$initialData$$,instanceId:$instanceId$$}=this.runningFlows[$flowInstanceId$$];await global.getModel("flow").updateOne({_id:$flowId$$},{activeInstance:{status:$status$$,initialData:$initialData$$,
56
- instanceId:$instanceId$$}});console.log(`[${$flowInstanceId$$}] Cleaned up instance data.`)}}updateNodeStatus($flowInstanceId$$,$nodeId$$,$status$$,$logEventPayload_outputDataOrError$$,$errorMsg$$,$triggerId$$=null){var $flowState$$=this.runningFlows[$flowInstanceId$$];if($flowState$$?.nodes[$nodeId$$]){const $node$$=$flowState$$.nodes[$nodeId$$];$flowState$$=$node$$.status;const $triggerContext$$=$triggerId$$?`|${$triggerId$$}`:"";$flowState$$!==$status$$&&($node$$.status=$status$$);$status$$===
57
- "completed"&&$logEventPayload_outputDataOrError$$!==void 0&&($node$$.outputData=$logEventPayload_outputDataOrError$$);$status$$==="running"&&$errorMsg$$!==void 0&&($node$$.inputPayload=$errorMsg$$);$status$$!=="completed"&&($node$$.outputData=void 0);$errorMsg$$=null;$status$$==="failed"?$errorMsg$$=$node$$.error=$logEventPayload_outputDataOrError$$:$node$$.error=void 0;$flowState$$!==$status$$&&global.socketContainer?.socketIO&&($logEventPayload_outputDataOrError$$={flowInstanceId:$flowInstanceId$$,
58
- triggerId:$triggerId$$||"initial",nodeId:$nodeId$$,nodeType:$node$$.type,status:$status$$,timestamp:Date.now(),...($status$$==="completed"&&{outputData:$logEventPayload_outputDataOrError$$}),...($status$$==="failed"&&{error:$errorMsg$$})},console.log(`[${$flowInstanceId$$}${$triggerContext$$}] Emitting flow-log-event:`,{...$logEventPayload_outputDataOrError$$,outputData:"..."}),global.socketContainer.socketIO.to($flowInstanceId$$).emit("flow-log-event",$logEventPayload_outputDataOrError$$));$flowState$$!==
59
- $status$$&&console.log(`[${$flowInstanceId$$}${$triggerContext$$}] UPDATED Node ${$nodeId$$} status: ${$flowState$$} -> ${$status$$}`)}else console.warn(`[${$flowInstanceId$$}] ### updateNodeStatus ### Cannot update node ${$nodeId$$}: Node or flow instance not found.`)}getFlowStatus($flowInstanceId$jscomp$12_flowState$$){return($flowInstanceId$jscomp$12_flowState$$=this.runningFlows[$flowInstanceId$jscomp$12_flowState$$])?{flowId:$flowInstanceId$jscomp$12_flowState$$.flowId,instanceId:$flowInstanceId$jscomp$12_flowState$$.instanceId,
60
- status:$flowInstanceId$jscomp$12_flowState$$.status,nodes:Object.values($flowInstanceId$jscomp$12_flowState$$.nodes).map($n$$=>({id:$n$$.id,type:$n$$.type,status:$n$$.status,outputData:$n$$.outputData,inputPayload:$n$$.inputPayload,error:$n$$.error}))}:null}getAllFlowStatuses(){return Object.keys(this.runningFlows).map($id$$=>this.getFlowStatus($id$$)).filter(Boolean)}getInstancesForFlow($flowId$$){const $targetFlowId$$=$flowId$$.toString();return Object.values(this.runningFlows).filter($state$$=>
61
- $state$$.flowId===$targetFlowId$$).map($state$$=>this.getFlowStatus($state$$.instanceId)).filter(Boolean)}stopAllInstancesOfFlow($flowId$$,$reason$$="Stopped all instances for flow definition"){const $targetFlowId$$=$flowId$$.toString();$flowId$$=Object.values(this.runningFlows).filter($state$$=>$state$$.flowId===$targetFlowId$$&&"running pending active_repeating active_listening waiting listening".split(" ").includes($state$$.status)).map($state$$=>$state$$.instanceId);if($flowId$$.length===0)return console.log(`[FlowEngine] No running/waiting/listening instances found for flow ${$targetFlowId$$} to stop.`),
62
- [];console.log(`[FlowEngine] Requesting stop for ${$flowId$$.length} instances of flow ${$targetFlowId$$}. Reason: ${$reason$$}`);const $stoppedInstanceIds$$=[];$flowId$$.forEach($instanceId$$=>{try{this.stopFlow($instanceId$$,!1,$reason$$),$stoppedInstanceIds$$.push($instanceId$$)}catch($error$$){console.error(`[FlowEngine] Error stopping instance ${$instanceId$$} for flow ${$targetFlowId$$}:`,$error$$)}});return $stoppedInstanceIds$$}}
63
- const WebhookManager=require("./WebhookManager"),init=async $activeInstance_app_flows$$=>{console.log("init FlowEngine...");var $flowEngine_flowInstanceId$$=global.flowEngine=new FlowEngine;const $webhookManager$$=new WebhookManager($flowEngine_flowInstanceId$$);$flowEngine_flowInstanceId$$.setWebhookManager($webhookManager$$);$webhookManager$$.attach($activeInstance_app_flows$$);$activeInstance_app_flows$$=await global.getModel("flow").find({"activeInstance.status":{$in:["running","listening"]}}).lean();
64
- for(let $flow$$ of $activeInstance_app_flows$$)if($activeInstance_app_flows$$=$flow$$.activeInstance){$flowEngine_flowInstanceId$$=$activeInstance_app_flows$$.instanceId;try{await global.flowEngine.startFlow($flow$$._id.toString(),$activeInstance_app_flows$$.initialData||{},$flowEngine_flowInstanceId$$),console.log("[FlowEngin] restart flow",$flow$$.title,$flow$$._id)}catch($e$$){console.error("[FlowEngin] restart flow",$e$$)}}};module.exports=init;
1
+ const _0x407afa=_0x5c4b;(function(_0x28322b,_0x491b3f){const _0x46487c=_0x5c4b,_0x245437=_0x28322b();while(!![]){try{const _0x35b751=-parseInt(_0x46487c(0x307))/0x1+-parseInt(_0x46487c(0x2bc))/0x2*(-parseInt(_0x46487c(0x33a))/0x3)+-parseInt(_0x46487c(0x2a5))/0x4+-parseInt(_0x46487c(0x240))/0x5*(-parseInt(_0x46487c(0x284))/0x6)+parseInt(_0x46487c(0x1ce))/0x7+-parseInt(_0x46487c(0x1d9))/0x8+parseInt(_0x46487c(0x245))/0x9;if(_0x35b751===_0x491b3f)break;else _0x245437['push'](_0x245437['shift']());}catch(_0x236bc4){_0x245437['push'](_0x245437['shift']());}}}(_0x16fe,0xccdd3));const nodeHandlers=require(_0x407afa(0x1c7)),crypto=require(_0x407afa(0x326));class FlowEngine{constructor(){const _0x155e87=_0x407afa;this[_0x155e87(0x205)]={},this[_0x155e87(0x22c)]=null;}['setWebhookManager'](_0xfb975e){const _0x49f29b=_0x407afa,_0x4348f1={'MjfvO':_0x49f29b(0x211),'soDTf':'[FlowEngine]\x20WebhookManager\x20instance\x20injected.'};!_0xfb975e?console[_0x49f29b(0x347)](_0x4348f1['MjfvO']):(console['log'](_0x4348f1['soDTf']),this[_0x49f29b(0x22c)]=_0xfb975e);}async[_0x407afa(0x2cc)](_0x5a0b00,_0x2af520,_0x32c2bb,_0x4c808b=null){const _0x1e225f=_0x407afa,_0x27ed6f={'fvAjy':function(_0x1a9c7c,_0x1da868){return _0x1a9c7c!==_0x1da868;},'YXNTA':_0x1e225f(0x32d),'hsrpF':_0x1e225f(0x162),'aZPUu':function(_0x1b9445,_0xf734a6){return _0x1b9445+_0xf734a6;},'gGfeW':function(_0x4a7fbb,_0xd4b3a5){return _0x4a7fbb===_0xd4b3a5;},'nRiPQ':_0x1e225f(0x335),'VFJus':function(_0x26e0f9,_0x48edd0){return _0x26e0f9!==_0x48edd0;},'eLaVM':_0x1e225f(0x2f1),'aVqsm':'LlyJU','zfWiv':_0x1e225f(0x2fa),'oiHYH':_0x1e225f(0x1a9),'MlqYX':'pending','SajbA':'debug','AssZN':_0x1e225f(0x28c),'zXSuY':_0x1e225f(0x233),'qZkRs':_0x1e225f(0x295),'LXuwa':function(_0x2cbea0,_0x4c24a9){return _0x2cbea0===_0x4c24a9;},'VXlKH':'facebook','DNYdo':function(_0x2e03b6,_0x468dbc){return _0x2e03b6===_0x468dbc;},'xmIwO':_0x1e225f(0x187),'nGGpV':'zVexe','PxQam':_0x1e225f(0x1d5),'ESTNn':'GET','yUqcN':_0x1e225f(0x216),'bVJRp':_0x1e225f(0x320),'TbaWe':_0x1e225f(0x2df),'HKWIX':_0x1e225f(0x319),'hSzHe':function(_0x620f59,_0x122597){return _0x620f59||_0x122597;},'rDjUk':function(_0x53e11c,_0x5bf0bc){return _0x53e11c&&_0x5bf0bc;},'UWHeY':_0x1e225f(0x1c4),'DDhrY':_0x1e225f(0x1a8),'dZVaK':_0x1e225f(0x2a9),'gyGXE':_0x1e225f(0x294),'CYwus':function(_0x355d9d,_0x1af956){return _0x355d9d??_0x1af956;},'DldHC':'initial','xXIFy':_0x1e225f(0x2ec),'vRebp':_0x1e225f(0x1b0),'AacBm':_0x1e225f(0x341),'oEOnE':function(_0x4d4c8a,_0x1c907a){return _0x4d4c8a>_0x1c907a;},'WABps':_0x1e225f(0x244),'cGqXz':function(_0x420c38,_0x56c5dc){return _0x420c38===_0x56c5dc;},'fnTVU':_0x1e225f(0x1ca),'gLvek':function(_0xf097b5,_0x2b811c){return _0xf097b5===_0x2b811c;},'ymVai':'RxwNC','OHYaQ':_0x1e225f(0x2d5),'NBSHa':_0x1e225f(0x166),'geldE':'HEMoJ','UCMaK':function(_0x44cfbd,_0x1c6b91){return _0x44cfbd===_0x1c6b91;},'tQlsR':_0x1e225f(0x1c0),'ADOno':'zowCu','RUBsG':function(_0x23ef64,_0x2a5fcc){return _0x23ef64!==_0x2a5fcc;},'KaqrH':_0x1e225f(0x2e0),'IdoVx':_0x1e225f(0x21f),'vCxAY':function(_0x14a1cd,_0xc297d3){return _0x14a1cd===_0xc297d3;},'gVAWA':_0x1e225f(0x2c2),'oknTN':'wvBUp','aRkhq':_0x1e225f(0x345),'YAKOo':function(_0x3fbc24,_0x393a66){return _0x3fbc24===_0x393a66;}},_0x2ba5f6=_0x5a0b00[_0x1e225f(0x346)]();if(!global[_0x1e225f(0x21d)][_0x1e225f(0x272)][_0x1e225f(0x330)][_0x1e225f(0x177)](_0x5a0b00))throw new Error('Flow\x20ID\x20\x22'+_0x5a0b00+_0x1e225f(0x2db));const _0xaf1dfb=await global[_0x1e225f(0x2c8)](_0x1e225f(0x291))['findOne']({'_id':_0x5a0b00})[_0x1e225f(0x287)]();if(!_0xaf1dfb)throw new Error(_0x1e225f(0x2f0)+_0x2ba5f6+'\x22\x20does\x20not\x20exist');const _0xd4bc5e={},_0x1162a9=_0xaf1dfb[_0x1e225f(0x310)]||[],_0x7b771e={};_0x1162a9[_0x1e225f(0x218)](_0x5aced5=>{const _0x20005a=_0x1e225f,_0x11c9d1={'vypps':_0x20005a(0x329)};_0x5aced5[_0x20005a(0x1f3)]&&(_0x27ed6f[_0x20005a(0x189)](_0x27ed6f[_0x20005a(0x2e2)],_0x27ed6f[_0x20005a(0x1b5)])?_0x7b771e[_0x5aced5[_0x20005a(0x1f3)]]=_0x27ed6f[_0x20005a(0x301)](_0x7b771e[_0x5aced5[_0x20005a(0x1f3)]]||0x0,0x1):(_0x27bbac=_0x20005a(0x1d5),_0x45452f=_0x11c9d1[_0x20005a(0x31b)]));}),(_0xaf1dfb[_0x1e225f(0x2c3)]||[])['forEach'](_0x43d87a=>{const _0x25fa86=_0x1e225f;if(_0x27ed6f[_0x25fa86(0x1fc)](_0x27ed6f[_0x25fa86(0x2ba)],_0x27ed6f['nRiPQ'])){if(!_0x43d87a||!_0x43d87a['id']){if(_0x27ed6f[_0x25fa86(0x270)](_0x27ed6f[_0x25fa86(0x20c)],_0x27ed6f[_0x25fa86(0x18e)])){console[_0x25fa86(0x347)](_0x27ed6f[_0x25fa86(0x2ab)],_0x43d87a);return;}else _0x22763a['error']('[FlowEngine]\x20Error\x20stopping\x20instance\x20'+_0x539dce+_0x25fa86(0x15b)+_0x4cf859+':',_0x8e40c);}_0xd4bc5e[_0x43d87a['id']]={..._0x43d87a,'status':_0x43d87a[_0x25fa86(0x243)]?.[_0x25fa86(0x1a9)]?_0x27ed6f['oiHYH']:_0x27ed6f[_0x25fa86(0x194)],'predecessorCount':_0x7b771e[_0x43d87a['id']]||0x0,'incomingPayloads':{},'completedPredecessors':new Set(),'outputData':undefined,'inputPayload':undefined};}else{_0x58bdae[_0x25fa86(0x1c8)]('⚠️\x20['+_0xad8790+_0x1bd704+_0x25fa86(0x26c)+_0x37bdcf+_0x25fa86(0x268)+_0xa52e65?.[_0x25fa86(0x1c9)]+_0x25fa86(0x286)+_0x126d73[_0x25fa86(0x2da)][_0x25fa86(0x2f4)]+').');return;}});let _0x539316;if(_0x4c808b&&_0xd4bc5e[_0x4c808b])_0x539316=_0xd4bc5e[_0x4c808b];else{const _0x4ae29e=new Set(_0x1162a9['map'](_0x2ae66c=>_0x2ae66c[_0x1e225f(0x1f3)]));let _0x359e37=Object[_0x1e225f(0x2b4)](_0xd4bc5e)['filter'](_0x4d1e46=>!_0x4ae29e[_0x1e225f(0x25d)](_0x4d1e46['id']));if(_0x27ed6f[_0x1e225f(0x1fc)](_0x359e37['length'],0x0)&&_0x27ed6f[_0x1e225f(0x324)](Object[_0x1e225f(0x1b4)](_0xd4bc5e)[_0x1e225f(0x1a4)],0x0)){if(_0x27ed6f['fvAjy'](_0x27ed6f['WABps'],_0x27ed6f[_0x1e225f(0x1af)]))this[_0x1e225f(0x205)]={},this[_0x1e225f(0x22c)]=null;else throw new Error('['+_0x32c2bb+_0x1e225f(0x33e)+_0x2ba5f6+'.');}else{if(_0x27ed6f[_0x1e225f(0x324)](_0x359e37[_0x1e225f(0x1a4)],0x1)){if(_0x27ed6f[_0x1e225f(0x213)](_0x27ed6f['fnTVU'],'vkspL'))console[_0x1e225f(0x347)]('['+_0x32c2bb+_0x1e225f(0x185)+_0x359e37[0x0]['id']),_0x539316=_0x359e37[0x0];else return null;}else{if(_0x27ed6f['gLvek'](_0x359e37[_0x1e225f(0x1a4)],0x1))_0x539316=_0x359e37[0x0];else throw new Error('['+_0x32c2bb+_0x1e225f(0x18b)+_0x2ba5f6+_0x1e225f(0x170));}}}if(!_0x539316)throw new Error('['+_0x32c2bb+_0x1e225f(0x2cf)+_0x2ba5f6+':\x20Start\x20node\x20could\x20not\x20be\x20determined.');if(_0x539316?.[_0x1e225f(0x243)]?.[_0x1e225f(0x1a9)]){if(_0x27ed6f['ymVai']===_0x27ed6f['OHYaQ'])throw new _0x1c43fc(_0x1e225f(0x2f0)+_0x2d60fd+_0x1e225f(0x2db));else throw new Error(_0x1e225f(0x305));}const _0x2da76e=new AbortController(),_0x2ff457={'flowId':_0x2ba5f6,'instanceId':_0x32c2bb,'status':'initializing','initialData':_0x2af520,'nodes':_0xd4bc5e,'edges':_0x1162a9,'flowDefinition':_0xaf1dfb,'abortController':_0x2da76e,'abortSignal':_0x2da76e[_0x1e225f(0x2a3)],'triggerDownstreamCallback':(_0xbb60ff,_0xad4217)=>{const _0x929736=_0x1e225f;this[_0x929736(0x31e)](_0x32c2bb,_0xbb60ff,_0xad4217);}};this[_0x1e225f(0x205)][_0x32c2bb]=_0x2ff457,console[_0x1e225f(0x1c8)]('['+_0x32c2bb+_0x1e225f(0x25b)+_0x539316['id']+_0x1e225f(0x2dc)+_0x539316[_0x1e225f(0x16b)]+_0x1e225f(0x2dc)+_0x539316[_0x1e225f(0x1b1)]);const _0x429cb4=_0x539316[_0x1e225f(0x1b1)],_0x51390f=_0x27ed6f['LXuwa'](_0x429cb4,_0x27ed6f[_0x1e225f(0x2eb)])||_0x429cb4===_0x27ed6f[_0x1e225f(0x348)];if(this['webhookManager']){if(_0x27ed6f[_0x1e225f(0x1fc)](_0x27ed6f[_0x1e225f(0x248)],_0x27ed6f[_0x1e225f(0x248)])){const _0x57aeb1=Object['values'](_0x2ff457[_0x1e225f(0x2c3)])[_0x1e225f(0x15d)](_0x3462a6=>(_0x3462a6[_0x1e225f(0x1b1)]==='webhook'||_0x3462a6[_0x1e225f(0x1b1)]===_0x1e225f(0x29b))&&_0x3462a6['data']?.[_0x1e225f(0x1e1)]&&!_0x3462a6['data']?.[_0x1e225f(0x1a9)]);if(_0x27ed6f[_0x1e225f(0x324)](_0x57aeb1[_0x1e225f(0x1a4)],0x0)){if(_0x27ed6f[_0x1e225f(0x2a6)](_0x27ed6f[_0x1e225f(0x34a)],_0x27ed6f[_0x1e225f(0x261)]))_0x2ee3de['log']('['+_0x11f52e+_0x27a880+_0x1e225f(0x224)+_0x10fe38['type']+_0x1e225f(0x2b3)),_0x5f0006=_0x546efe[_0x27ed6f['SajbA']];else{console[_0x1e225f(0x1c8)]('['+_0x32c2bb+_0x1e225f(0x2fb)+_0x2ba5f6+'...');try{_0x27ed6f[_0x1e225f(0x1fc)]('MlQbY',_0x1e225f(0x2f8))?(_0x153f8d['log']('['+_0x3fb846+_0x17d8e7+_0x1e225f(0x203)+_0x4a37d6['id']+_0x1e225f(0x298)),_0x18b482[_0x1e225f(0x1c8)]('['+_0x247ebb+_0x592921+_0x1e225f(0x2e4)+_0x50b136['id']+'\x20to\x20CANCELLED\x20(AbortError)'),this['updateNodeStatus'](_0x3e7143,_0x509bf1['id'],_0x27ed6f[_0x1e225f(0x19c)],_0x553ee5,_0x1bc75d,_0x2bb3fa)):await Promise[_0x1e225f(0x2ad)](_0x57aeb1['map'](async _0x2106da=>{const _0xceb8a4=_0x1e225f;if(_0x27ed6f[_0xceb8a4(0x226)]!==_0x27ed6f[_0xceb8a4(0x202)]){let {path:_0x1fe539,method:_0x51bb62,verificationMethod:_0x1e1be3,verificationChallengeQueryParam:_0x21abf1,verificationTokenQueryParam:_0x4af540,verificationTokenValue:_0x343ae9,appSecret:_0x1fa8c2}=_0x2106da['data'];const _0x3c451d=_0x2106da['id'];let _0x31b552=null,_0x2a434e=_0x51bb62;if(_0x27ed6f[_0xceb8a4(0x1b3)](_0x2106da[_0xceb8a4(0x1b1)],_0x27ed6f[_0xceb8a4(0x348)])){if(_0x27ed6f[_0xceb8a4(0x2d1)](_0x27ed6f['xmIwO'],_0x27ed6f[_0xceb8a4(0x1ee)]))_0x186061=_0x2e889b[0x0];else{_0x2a434e=_0x27ed6f[_0xceb8a4(0x2f3)];const {verifyTokenValue:_0x129d2e}=_0x2106da[_0xceb8a4(0x243)];_0x1fa8c2=_0x2106da[_0xceb8a4(0x243)][_0xceb8a4(0x232)];if(!_0x129d2e){console[_0xceb8a4(0x21b)]('['+_0x32c2bb+_0xceb8a4(0x229)+_0x3c451d+_0xceb8a4(0x1ec));return;}_0x31b552={'method':_0x27ed6f[_0xceb8a4(0x283)],'challengeQueryParam':_0x27ed6f[_0xceb8a4(0x2f6)],'tokenParam':_0x27ed6f['bVJRp'],'tokenValue':_0x129d2e};}}else _0x21abf1&&(_0x27ed6f[_0xceb8a4(0x2d1)](_0x27ed6f[_0xceb8a4(0x312)],_0x27ed6f[_0xceb8a4(0x207)])?(this[_0xceb8a4(0x1fa)](_0xe94fbb,![],_0x1e5a6d),_0x2cf39f['push'](_0x10eb48)):_0x31b552={'method':_0x27ed6f[_0xceb8a4(0x30b)](_0x1e1be3,_0xceb8a4(0x329)),'challengeQueryParam':_0x21abf1,..._0x27ed6f[_0xceb8a4(0x215)](_0x4af540,_0x343ae9)&&{'tokenParam':_0x4af540,'tokenValue':_0x343ae9}});_0x2a434e=_0x2a434e?.['toLowerCase']()||_0x27ed6f[_0xceb8a4(0x1f2)],await this[_0xceb8a4(0x22c)][_0xceb8a4(0x2de)](_0x1fe539,_0x2a434e,_0x2ba5f6,_0x3c451d,_0x32c2bb,_0x31b552,_0x1fa8c2),console['log']('['+_0x32c2bb+_0xceb8a4(0x1ae)+_0x2a434e[_0xceb8a4(0x247)]()+'\x20'+_0x1fe539+_0xceb8a4(0x208)+_0x3c451d+')');}else _0x419efe[_0xceb8a4(0x19a)]=_0x4c6f6e;}));}catch(_0x4efc59){console[_0x1e225f(0x21b)]('['+_0x32c2bb+']\x20Error\x20during\x20webhook\x20registration:',_0x4efc59),this[_0x1e225f(0x1df)](_0x2ba5f6,_0x32c2bb);throw new Error(_0x1e225f(0x163)+_0x4efc59[_0x1e225f(0x196)]);}}}}else _0x5d2c7a[_0x1e225f(0x1c8)]('['+_0x47d5cc+_0x25cbbf+']\x20Path\x20ended,\x20but\x20other\x20nodes\x20might\x20be\x20running.\x20Keeping\x20status\x20\x27running\x27.');}else _0x51390f&&console['warn']('['+_0x32c2bb+_0x1e225f(0x1cb));let _0x1d63be;if(_0x51390f)_0x27ed6f[_0x1e225f(0x179)](_0x27ed6f[_0x1e225f(0x16d)],_0x27ed6f['IdoVx'])?(_0x1d63be=_0x27ed6f['vRebp'],_0x2ff457[_0x1e225f(0x1c9)]=_0x1d63be,console[_0x1e225f(0x1c8)]('['+_0x32c2bb+_0x1e225f(0x1a1)+_0x539316['id']+_0x1e225f(0x350)+_0x1d63be),global[_0x1e225f(0x20f)]?.[_0x1e225f(0x15e)]&&global[_0x1e225f(0x20f)][_0x1e225f(0x15e)]['to'](_0x32c2bb)['emit'](_0x27ed6f[_0x1e225f(0x340)],{'flowInstanceId':_0x32c2bb,'flowId':_0x2ba5f6,'status':_0x1d63be})):[_0x27ed6f[_0x1e225f(0x219)],_0x27ed6f[_0x1e225f(0x194)],_0x1e225f(0x24d),_0x27ed6f[_0x1e225f(0x2b1)]][_0x1e225f(0x21e)](_0x1cdd13[_0x1e225f(0x1c9)])&&this['updateNodeStatus'](_0x4a866f,_0x25b083['id'],'cancelled',_0x41bb8c,_0x4148b7,null);else{if(_0x27ed6f[_0x1e225f(0x278)](_0x27ed6f['gVAWA'],_0x27ed6f[_0x1e225f(0x1dc)])){const _0x2ce3f1=_0x27ed6f[_0x1e225f(0x1f7)][_0x1e225f(0x259)]('|');let _0x1482ed=0x0;while(!![]){switch(_0x2ce3f1[_0x1482ed++]){case'0':_0xaef24e['log']('['+_0x564140+_0x1e225f(0x18b)+_0x3b32b6+_0x1e225f(0x31f)+_0x35d8e8);continue;case'1':this['runNode'](_0x34f7f7,_0x27ed6f['CYwus'](_0x3cfaa1,{}),_0x38c34c,_0x27ed6f['DldHC'])['catch'](_0x172816=>{const _0x24a3d2=_0x1e225f;_0x224ed4[_0x24a3d2(0x21b)]('['+_0xce8fb6+_0x24a3d2(0x1cd),_0x172816),this['stopFlow'](_0x588eab,!![],'Critical\x20error\x20starting\x20flow:\x20'+_0x172816[_0x24a3d2(0x196)]);});continue;case'2':_0x2104f5[_0x1e225f(0x1c9)]=_0x4b54da;continue;case'3':_0x394790=_0x3219dd===_0x27ed6f['xXIFy']?_0x27ed6f[_0x1e225f(0x22a)]:_0x1e225f(0x1a8);continue;case'4':_0x4b6338[_0x1e225f(0x20f)]?.[_0x1e225f(0x15e)]&&_0x3c9bb0[_0x1e225f(0x20f)][_0x1e225f(0x15e)]['to'](_0x57b290)['emit'](_0x27ed6f[_0x1e225f(0x340)],{'flowInstanceId':_0x3c4de6,'flowId':_0x2fd83c,'status':_0x4f4682});continue;}break;}}else{const _0x16d90c=_0x27ed6f[_0x1e225f(0x173)][_0x1e225f(0x259)]('|');let _0x2050ad=0x0;while(!![]){switch(_0x16d90c[_0x2050ad++]){case'0':console[_0x1e225f(0x1c8)]('['+_0x32c2bb+_0x1e225f(0x18b)+_0x2ba5f6+_0x1e225f(0x31f)+_0x1d63be);continue;case'1':_0x1d63be=_0x27ed6f['YAKOo'](_0x429cb4,_0x1e225f(0x2ec))?_0x27ed6f[_0x1e225f(0x22a)]:_0x27ed6f[_0x1e225f(0x219)];continue;case'2':global[_0x1e225f(0x20f)]?.['socketIO']&&global[_0x1e225f(0x20f)]['socketIO']['to'](_0x32c2bb)[_0x1e225f(0x231)](_0x27ed6f[_0x1e225f(0x340)],{'flowInstanceId':_0x32c2bb,'flowId':_0x2ba5f6,'status':_0x1d63be});continue;case'3':this[_0x1e225f(0x1c5)](_0x539316,_0x27ed6f[_0x1e225f(0x195)](_0x2af520,{}),_0x32c2bb,_0x27ed6f[_0x1e225f(0x325)])[_0x1e225f(0x2e8)](_0x67336a=>{const _0x440c86=_0x1e225f;console['error']('['+_0x32c2bb+_0x440c86(0x1cd),_0x67336a),this['stopFlow'](_0x32c2bb,!![],_0x440c86(0x1f9)+_0x67336a['message']);});continue;case'4':_0x2ff457['status']=_0x1d63be;continue;}break;}}}return await global[_0x1e225f(0x2c8)]('flow')[_0x1e225f(0x198)]({'_id':_0x2ba5f6},{'activeInstance':{'status':_0x1d63be,'initialData':_0x2af520,'instanceId':_0x32c2bb}}),{'flowInstanceId':_0x32c2bb,'status':_0x1d63be};}async[_0x407afa(0x1c5)](_0x4e4ec7,_0x50c159,_0x539d88,_0x5bcaed=null){const _0x2b064e=_0x407afa,_0x40a404={'RlokX':_0x2b064e(0x19b),'ndkJP':_0x2b064e(0x2fa),'oNSxR':_0x2b064e(0x1b0),'JZbGX':_0x2b064e(0x341),'JkJft':_0x2b064e(0x1a8),'VacmG':function(_0xaee6b4,_0x52d6f3){return _0xaee6b4!==_0x52d6f3;},'bNdjJ':'jThPh','sYnmu':_0x2b064e(0x225),'IHtno':_0x2b064e(0x327),'WoMUj':_0x2b064e(0x2b7),'OzZVi':_0x2b064e(0x2e1),'KMLAz':function(_0x40da16,_0x4a73ea){return _0x40da16!==_0x4a73ea;},'cQhEa':_0x2b064e(0x32e),'SUHNl':_0x2b064e(0x1d2),'kNEgL':function(_0x48b4e2,_0x349ab8){return _0x48b4e2===_0x349ab8;},'dBTsP':_0x2b064e(0x2c4),'NsHHN':_0x2b064e(0x190),'xmKNs':'cancelled','jyMKl':function(_0x158920,_0x4f31e8){return _0x158920===_0x4f31e8;},'YAoSA':'switch','DxtZy':_0x2b064e(0x2a4),'UmoNe':_0x2b064e(0x260),'GZOgJ':_0x2b064e(0x2d6),'PMTxc':_0x2b064e(0x2af),'HZQvU':'active_repeating','GmMLb':function(_0x2e5442,_0x5c2b1f){return _0x2e5442 instanceof _0x5c2b1f;},'nEOjQ':function(_0x55edae,_0x3ab567){return _0x55edae===_0x3ab567;},'UYzYT':function(_0x5dc3f7,_0x165c43){return _0x5dc3f7!==_0x165c43;},'vvbOt':_0x2b064e(0x2e7),'jKezV':function(_0x4010dc,_0x543170){return _0x4010dc!==_0x543170;},'XPMVL':_0x2b064e(0x175)},_0x389ee5=_0x5bcaed?'|'+_0x5bcaed:'';console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x2a0)+_0x4e4ec7?.['id']+_0x2b064e(0x2dc)+_0x4e4ec7[_0x2b064e(0x16b)]+_0x2b064e(0x2dc)+_0x4e4ec7[_0x2b064e(0x1b1)]+_0x2b064e(0x184));const _0x2735f8=this[_0x2b064e(0x205)][_0x539d88];if(!_0x2735f8||![_0x40a404[_0x2b064e(0x1bf)],'listening'][_0x2b064e(0x21e)](_0x2735f8[_0x2b064e(0x1c9)])){if(_0x40a404['VacmG'](_0x40a404['bNdjJ'],_0x40a404[_0x2b064e(0x24e)])){_0x2735f8?console['log']('['+_0x539d88+_0x389ee5+_0x2b064e(0x28b)+_0x4e4ec7?.['id']+':\x20Flow\x20status\x20is\x20'+_0x2735f8['status']+'.'):console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x28b)+_0x4e4ec7?.['id']+_0x2b064e(0x1d0));return;}else _0x21f16a[_0x2b064e(0x19a)]=_0x359010;}if(!_0x4e4ec7||!_0x4e4ec7['id']||!_0x2735f8['nodes'][_0x4e4ec7['id']]){console['error']('['+_0x539d88+_0x389ee5+_0x2b064e(0x176),_0x4e4ec7),this[_0x2b064e(0x1fa)](_0x539d88,!![],_0x2b064e(0x267)+_0x4e4ec7?.['id']);return;}if(_0x2735f8[_0x2b064e(0x1c9)]===_0x40a404[_0x2b064e(0x17f)]){console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x217)),_0x2735f8[_0x2b064e(0x1c9)]=_0x40a404[_0x2b064e(0x1bf)];if(global[_0x2b064e(0x20f)]?.['socketIO']){if(_0x40a404[_0x2b064e(0x281)](_0x2b064e(0x1a3),_0x2b064e(0x297)))global['socketContainer'][_0x2b064e(0x15e)]['to'](_0x539d88)[_0x2b064e(0x231)](_0x2b064e(0x172),{'flowInstanceId':_0x539d88,'status':_0x40a404['JkJft']});else{_0x2506f3?_0x34aa31[_0x2b064e(0x1c8)]('['+_0x53cb0b+_0x56126d+_0x2b064e(0x28b)+_0x18909f?.['id']+_0x2b064e(0x1e9)+_0x2dffc7[_0x2b064e(0x1c9)]+'.'):_0x3c31b0['log']('['+_0x4c7eeb+_0x1aaf8d+']\x20runNode\x20SKIPPED\x20for\x20node\x20'+_0x44e749?.['id']+':\x20Flow\x20state\x20not\x20found.');return;}}}const _0x1e9f07=_0x2735f8['nodes'][_0x4e4ec7['id']];if(_0x2735f8['abortSignal'][_0x2b064e(0x2f4)]){if(_0x40a404[_0x2b064e(0x281)](_0x40a404[_0x2b064e(0x27e)],_0x40a404[_0x2b064e(0x255)])){console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x293)+_0x4e4ec7['id']+_0x2b064e(0x2b6)),this['updateNodeStatus'](_0x539d88,_0x4e4ec7['id'],'cancelled',undefined,undefined,_0x5bcaed),this[_0x2b064e(0x30f)](_0x539d88);return;}else _0x2b6b32[_0x2b064e(0x1c8)](_0x40a404[_0x2b064e(0x30d)]),this[_0x2b064e(0x22c)]=_0x4e8c53;}console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+']\x20--->\x20Attempting\x20to\x20set\x20node\x20'+_0x4e4ec7['id']+_0x2b064e(0x2dd)),this[_0x2b064e(0x266)](_0x539d88,_0x4e4ec7['id'],_0x40a404[_0x2b064e(0x1bf)],undefined,_0x50c159,_0x5bcaed),console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x2b0)+_0x4e4ec7['id']+'\x20AFTER\x20update\x20attempt:\x20'+_0x2735f8['nodes'][_0x4e4ec7['id']]?.['status']),console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+']\x20Running\x20node\x20'+_0x4e4ec7['id']+_0x2b064e(0x276)+_0x4e4ec7[_0x2b064e(0x1b1)]+')');let _0x286109=nodeHandlers[_0x4e4ec7[_0x2b064e(0x1b1)]]||nodeHandlers[_0x40a404['OzZVi']];if(!_0x286109){if(_0x40a404[_0x2b064e(0x258)](_0x40a404[_0x2b064e(0x2c9)],_0x40a404[_0x2b064e(0x2c9)])){_0x58abd7[_0x2b064e(0x347)](_0x40a404[_0x2b064e(0x32c)],_0x1eee1c);return;}else console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x224)+_0x4e4ec7[_0x2b064e(0x1b1)]+'.\x20Use\x20debug\x20node...'),_0x286109=nodeHandlers[_0x40a404[_0x2b064e(0x323)]];}if(!_0x286109){const _0x54deae=_0x2b064e(0x279)+_0x4e4ec7['type']+_0x2b064e(0x178)+_0x4e4ec7['id']+').';console['error']('['+_0x539d88+_0x389ee5+']\x20'+_0x54deae),this[_0x2b064e(0x266)](_0x539d88,_0x4e4ec7['id'],_0x40a404[_0x2b064e(0x1f4)],_0x54deae,undefined,_0x5bcaed),this[_0x2b064e(0x1fa)](_0x539d88,!![],_0x54deae);return;}try{console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+']\x20Executing\x20handler\x20for\x20node\x20'+_0x4e4ec7['id']+_0x2b064e(0x159));const _0xfd5cc8={'updateNodeStatus':this[_0x2b064e(0x266)][_0x2b064e(0x1ac)](this),'triggerDownstreamNodesInternal':this[_0x2b064e(0x31e)][_0x2b064e(0x1ac)](this),'runNode':this[_0x2b064e(0x1c5)][_0x2b064e(0x1ac)](this),'cancelBranch':this[_0x2b064e(0x199)][_0x2b064e(0x1ac)](this)},_0x2b70b4=await _0x286109(_0x2735f8,_0x1e9f07,_0x50c159,_0x2735f8[_0x2b064e(0x2da)],_0xfd5cc8);console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x2ef)+_0x4e4ec7['id']+_0x2b064e(0x1ab));if(!this[_0x2b064e(0x205)][_0x539d88]||![_0x40a404['JkJft'],_0x40a404[_0x2b064e(0x17f)]]['includes'](this['runningFlows'][_0x539d88][_0x2b064e(0x1c9)])){if(_0x40a404[_0x2b064e(0x1e4)]('fwnRr',_0x2b064e(0x2cd)))_0x4e281f[_0x2b064e(0x21b)]('['+_0x147fda+_0x2b064e(0x33d)+_0x3e241f[_0x2b064e(0x247)]()+'\x20'+_0x2a0113+'\x20for\x20node\x20'+_0xf38eb3['id']+':',_0x4a743f[_0x2b064e(0x196)]);else{console['log']('['+_0x539d88+_0x389ee5+_0x2b064e(0x2d7)+_0x4e4ec7['id']+_0x2b064e(0x26d)),this['checkFlowCompletion'](_0x539d88);return;}}if(_0x2735f8['abortSignal'][_0x2b064e(0x2f4)]){if(_0x40a404['kNEgL'](_0x40a404['dBTsP'],_0x40a404[_0x2b064e(0x15a)])){_0x42bfea[_0x2b064e(0x347)]('[FlowEngine.triggerNode]\x20Instance\x20'+_0x4cc431+'\x20not\x20found.\x20Ignoring\x20trigger.');return;}else{console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x203)+_0x4e4ec7['id']+_0x2b064e(0x290)),this[_0x2b064e(0x266)](_0x539d88,_0x4e4ec7['id'],_0x40a404['xmKNs'],undefined,undefined,_0x5bcaed),this[_0x2b064e(0x30f)](_0x539d88);return;}}if(_0x40a404[_0x2b064e(0x192)](_0x2b70b4,undefined)&&[_0x40a404[_0x2b064e(0x238)],_0x40a404[_0x2b064e(0x236)]][_0x2b064e(0x21e)](_0x4e4ec7[_0x2b064e(0x1b1)]))console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+']\x20'+_0x4e4ec7[_0x2b064e(0x1b1)]+_0x2b064e(0x33c)+_0x4e4ec7['id']+_0x2b064e(0x263)),console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x2e4)+_0x4e4ec7['id']+_0x2b064e(0x1b7)),this['updateNodeStatus'](_0x539d88,_0x4e4ec7['id'],_0x40a404['UmoNe'],undefined,undefined,_0x5bcaed),this[_0x2b064e(0x30f)](_0x539d88);else{if(_0x2b70b4&&_0x40a404[_0x2b064e(0x192)](typeof _0x2b70b4,_0x40a404[_0x2b064e(0x18a)])&&_0x40a404['kNEgL'](_0x2b70b4[_0x2b064e(0x2af)],!![])){const _0x259e35=_0x2b70b4[_0x2b064e(0x214)]||_0x40a404[_0x2b064e(0x1db)],_0x599d96=_0x2b70b4[_0x2b064e(0x2e6)]||_0x40a404[_0x2b064e(0x2bd)];console['log']('['+_0x539d88+_0x2b064e(0x203)+_0x4e4ec7['id']+_0x2b064e(0x1fe)+_0x259e35+'\x27\x20node\x20(independent\x20of\x20trigger\x20'+_0x5bcaed+').'),console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x2b064e(0x2e4)+_0x4e4ec7['id']+_0x2b064e(0x164)+_0x599d96+_0x2b064e(0x30c)),this[_0x2b064e(0x266)](_0x539d88,_0x4e4ec7['id'],_0x599d96,undefined,undefined,null);}else console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x2e4)+_0x4e4ec7['id']+'\x20to\x20COMPLETED'),this['updateNodeStatus'](_0x539d88,_0x4e4ec7['id'],_0x40a404[_0x2b064e(0x250)],_0x2b70b4,undefined,_0x5bcaed),console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x203)+_0x4e4ec7['id']+_0x2b064e(0x209)),console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x2c6)+_0x4e4ec7['id']+_0x2b064e(0x159)),this[_0x2b064e(0x31e)](_0x539d88,_0x4e4ec7['id'],_0x2b70b4,_0x5bcaed);}}catch(_0x537ded){if(_0x40a404['GmMLb'](_0x537ded,DOMException)&&_0x40a404[_0x2b064e(0x183)](_0x537ded['name'],'AbortError'))console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x203)+_0x4e4ec7['id']+_0x2b064e(0x298)),console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x2e4)+_0x4e4ec7['id']+_0x2b064e(0x2cb)),this[_0x2b064e(0x266)](_0x539d88,_0x4e4ec7['id'],_0x40a404[_0x2b064e(0x328)],undefined,undefined,_0x5bcaed);else{if(_0x40a404[_0x2b064e(0x239)](_0x40a404[_0x2b064e(0x24c)],_0x40a404[_0x2b064e(0x24c)]))throw new _0xba602f(_0x2b064e(0x2f0)+_0x25cd81+_0x2b064e(0x273));else{console[_0x2b064e(0x21b)]('['+_0x539d88+_0x389ee5+']\x20Node\x20'+_0x4e4ec7['id']+_0x2b064e(0x182),_0x537ded);const _0x46c592=_0x537ded[_0x2b064e(0x196)]||_0x537ded;console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x2e4)+_0x4e4ec7['id']+_0x2b064e(0x222),_0x46c592),this[_0x2b064e(0x266)](_0x539d88,_0x4e4ec7['id'],_0x40a404[_0x2b064e(0x1f4)],_0x46c592,undefined,_0x5bcaed),console[_0x2b064e(0x347)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x285)+_0x4e4ec7['id']+'.');}}const _0x302b3e=Object[_0x2b064e(0x2b4)](_0x2735f8['nodes'])['find'](_0x2dbc92=>_0x2dbc92[_0x2b064e(0x1b1)]===_0x2b064e(0x166)||_0x2dbc92[_0x2b064e(0x1b1)]===_0x2b064e(0x29b));!_0x302b3e&&(_0x40a404[_0x2b064e(0x28e)](_0x2b064e(0x262),_0x40a404[_0x2b064e(0x19d)])?(console[_0x2b064e(0x1c8)]('['+_0x539d88+_0x389ee5+_0x2b064e(0x2ca)),this[_0x2b064e(0x30f)](_0x539d88)):(_0x351b1d=_0x40a404[_0x2b064e(0x17f)],_0x442a3e[_0x2b064e(0x1c9)]=_0x86100d,_0xcd1606[_0x2b064e(0x1c8)]('['+_0x3e9b42+_0x2b064e(0x1a1)+_0x4cb4d0['id']+_0x2b064e(0x350)+_0x33cb91),_0x322025[_0x2b064e(0x20f)]?.[_0x2b064e(0x15e)]&&_0x1f444f[_0x2b064e(0x20f)][_0x2b064e(0x15e)]['to'](_0x471cc7)[_0x2b064e(0x231)](_0x40a404[_0x2b064e(0x160)],{'flowInstanceId':_0x249b9d,'flowId':_0x11b1b1,'status':_0x5e9a8c})));}}['triggerDownstreamNodesInternal'](_0x5e16a7,_0x2320fc,_0x22254f,_0xdbf1cb){const _0x3b30b0=_0x407afa,_0x730166={'KTVBJ':_0x3b30b0(0x1b0),'IwWDE':'flow-status-updated','LkduV':_0x3b30b0(0x1d2),'QbmkJ':function(_0x17ae74,_0x145f2c){return _0x17ae74(_0x145f2c);},'XMjcu':_0x3b30b0(0x221),'LJXqX':_0x3b30b0(0x211),'mtkIG':'pending','BTfXl':_0x3b30b0(0x260),'giGbH':function(_0x3ff757,_0xc9b8f){return _0x3ff757!==_0xc9b8f;},'fbTqp':_0x3b30b0(0x1a8),'HBmgG':function(_0x8f1057,_0x2389fb){return _0x8f1057<=_0x2389fb;},'zNoQY':function(_0x46e993,_0x1d1d99){return _0x46e993!==_0x1d1d99;},'AAYZa':_0x3b30b0(0x339),'Dphlp':_0x3b30b0(0x34b),'mKTgL':function(_0x4df16c,_0x4d476d){return _0x4df16c>_0x4d476d;},'fVxlv':function(_0x33982d,_0x46fb99){return _0x33982d===_0x46fb99;},'NELPI':_0x3b30b0(0x1ba),'uyxJa':_0x3b30b0(0x27b),'GDXDo':function(_0x4ab56a,_0x5871ae){return _0x4ab56a===_0x5871ae;},'lnLdF':_0x3b30b0(0x193),'aoWoz':_0x3b30b0(0x306),'aoqhJ':function(_0x9e4684,_0x1468da){return _0x9e4684!==_0x1468da;},'AbpUs':_0x3b30b0(0x2c0),'YOdPo':_0x3b30b0(0x18d),'XDjDo':function(_0xfcc7cc,_0x361841){return _0xfcc7cc==_0x361841;},'eSvTq':_0x3b30b0(0x1d7),'FrGPs':_0x3b30b0(0x23f)},_0x389a97=this[_0x3b30b0(0x205)][_0x5e16a7],_0xddc817=_0xdbf1cb?'|'+_0xdbf1cb:'';if(!_0x389a97||_0x730166[_0x3b30b0(0x33f)](_0x389a97[_0x3b30b0(0x1c9)],_0x730166['fbTqp'])&&_0x730166[_0x3b30b0(0x33f)](_0x389a97[_0x3b30b0(0x1c9)],_0x730166[_0x3b30b0(0x169)])||_0x389a97[_0x3b30b0(0x2da)][_0x3b30b0(0x2f4)]){console[_0x3b30b0(0x1c8)](_0x3b30b0(0x27d)+_0x5e16a7+_0xddc817+_0x3b30b0(0x26c)+_0x2320fc+_0x3b30b0(0x268)+_0x389a97?.[_0x3b30b0(0x1c9)]+')\x20not\x20\x27running\x20or\x20listening\x27\x20or\x20aborted\x20('+_0x389a97['abortSignal']['aborted']+').');return;}const _0x1c4c22=_0x389a97[_0x3b30b0(0x2c3)][_0x2320fc];if(!_0x1c4c22){console[_0x3b30b0(0x347)]('⚠️\x20['+_0x5e16a7+_0xddc817+']\x20Source\x20node\x20'+_0x2320fc+_0x3b30b0(0x2bf));return;}const _0x489962=_0x389a97['edges'][_0x3b30b0(0x15d)](_0x5c7bdb=>_0x5c7bdb['source']===_0x2320fc),_0x1f00e6=_0x489962[_0x3b30b0(0x24b)](_0x17bc3f=>_0x17bc3f[_0x3b30b0(0x1f3)])['filter'](_0x40b1a2=>_0x389a97[_0x3b30b0(0x2c3)][_0x40b1a2]&&!_0x389a97['nodes'][_0x40b1a2]['data']?.[_0x3b30b0(0x1a9)]);if(_0x1f00e6[_0x3b30b0(0x1a4)]>0x0){console[_0x3b30b0(0x1c8)]('['+_0x5e16a7+_0xddc817+_0x3b30b0(0x203)+_0x2320fc+_0x3b30b0(0x254)+_0x1f00e6[_0x3b30b0(0x1a4)]+_0x3b30b0(0x2ce)+_0x1f00e6[_0x3b30b0(0x1aa)](',\x20'));for(const _0x7490f6 of _0x1f00e6){const _0x6476f2=_0x389a97['nodes'][_0x7490f6];if(!_0x6476f2||_0x6476f2['data']?.[_0x3b30b0(0x1a9)]){console['warn'](_0x3b30b0(0x27d)+_0x5e16a7+_0xddc817+']\x20Edge\x20target\x20'+_0x7490f6+'\x20not\x20found\x20or\x20disabled.');continue;}_0x6476f2[_0x3b30b0(0x288)]=_0x6476f2[_0x3b30b0(0x288)]||{},_0x6476f2['completedPredecessors']=_0x6476f2[_0x3b30b0(0x332)]||new Set(),_0x6476f2[_0x3b30b0(0x288)][_0x2320fc]=_0x22254f,_0x6476f2['completedPredecessors']['add'](_0x2320fc),console[_0x3b30b0(0x1c8)]('['+_0x5e16a7+_0xddc817+']\x20Node\x20'+_0x2320fc+_0x3b30b0(0x1d8)+_0x7490f6+'.\x20Join:\x20'+_0x6476f2[_0x3b30b0(0x332)][_0x3b30b0(0x2e5)]+'/'+_0x6476f2[_0x3b30b0(0x1ed)]);if(_0x730166['HBmgG'](_0x6476f2[_0x3b30b0(0x1ed)],0x0)||_0x6476f2['completedPredecessors']['size']>=_0x6476f2[_0x3b30b0(0x1ed)]){if(_0x6476f2[_0x3b30b0(0x1ed)]<=0x0)console[_0x3b30b0(0x347)]('['+_0x5e16a7+_0xddc817+_0x3b30b0(0x203)+_0x7490f6+_0x3b30b0(0x2ff));else{if(_0x730166[_0x3b30b0(0x25c)](_0x730166[_0x3b30b0(0x342)],_0x730166[_0x3b30b0(0x2f5)]))console[_0x3b30b0(0x1c8)]('['+_0x5e16a7+_0xddc817+_0x3b30b0(0x1f1)+_0x7490f6+_0x3b30b0(0x253));else{const _0x3f3994=_0x1979a6['values'](_0x3e39a6['nodes'])[_0x3b30b0(0x2d2)](_0x495cc5=>_0x495cc5[_0x3b30b0(0x1c9)]===_0x3b30b0(0x1a8));!_0x3f3994?(_0x4bc9d6[_0x3b30b0(0x1c8)]('['+_0x485c9e+_0xc06355+_0x3b30b0(0x29f)),_0x2c40c8[_0x3b30b0(0x1c9)]=_0x730166[_0x3b30b0(0x169)],_0x525575['socketContainer']?.[_0x3b30b0(0x15e)]&&_0x3a9de6['socketContainer'][_0x3b30b0(0x15e)]['to'](_0x4d3d32)[_0x3b30b0(0x231)](_0x730166[_0x3b30b0(0x1dd)],{'flowInstanceId':_0x381484,'status':_0x730166[_0x3b30b0(0x169)]})):_0x53cd47[_0x3b30b0(0x1c8)]('['+_0x31c461+_0x5b9ec0+_0x3b30b0(0x2f7));}}let _0x4e6b59;const _0x43f7d4=Object[_0x3b30b0(0x2b4)](_0x6476f2[_0x3b30b0(0x288)]);if(_0x730166[_0x3b30b0(0x331)](_0x6476f2[_0x3b30b0(0x1ed)],0x1))_0x4e6b59=_0x730166[_0x3b30b0(0x22e)](_0x43f7d4[_0x3b30b0(0x1a4)],0x0)?_0x43f7d4[_0x43f7d4[_0x3b30b0(0x1a4)]-0x1]:{},console[_0x3b30b0(0x1c8)]('['+_0x5e16a7+_0xddc817+_0x3b30b0(0x220)+_0x7490f6+'.');else{if(_0x730166[_0x3b30b0(0x1ef)](_0x730166[_0x3b30b0(0x1e8)],_0x730166[_0x3b30b0(0x269)])){const _0x128402=this[_0x3b30b0(0x205)][_0x207f2c];if(!_0x128402)return null;return{'flowId':_0x128402[_0x3b30b0(0x25a)],'instanceId':_0x128402[_0x3b30b0(0x1c2)],'status':_0x128402[_0x3b30b0(0x1c9)],'nodes':_0x2e553d[_0x3b30b0(0x2b4)](_0x128402[_0x3b30b0(0x2c3)])[_0x3b30b0(0x24b)](_0x5ea29c=>({'id':_0x5ea29c['id'],'type':_0x5ea29c['type'],'status':_0x5ea29c[_0x3b30b0(0x1c9)],'outputData':_0x5ea29c[_0x3b30b0(0x19a)],'inputPayload':_0x5ea29c['inputPayload'],'error':_0x5ea29c[_0x3b30b0(0x21b)]}))};}else _0x4e6b59=_0x43f7d4,console['log']('['+_0x5e16a7+_0xddc817+_0x3b30b0(0x212)+_0x43f7d4[_0x3b30b0(0x1a4)]+'\x20payloads\x20into\x20array\x20for\x20node\x20'+_0x7490f6+'.');}_0x6476f2[_0x3b30b0(0x332)][_0x3b30b0(0x309)](),_0x6476f2[_0x3b30b0(0x288)]={},console[_0x3b30b0(0x1c8)]('['+_0x5e16a7+_0xddc817+']\x20--->\x20Attempting\x20to\x20set\x20node\x20'+_0x7490f6+_0x3b30b0(0x34c)),this[_0x3b30b0(0x266)](_0x5e16a7,_0x7490f6,_0x730166[_0x3b30b0(0x1fb)],undefined,undefined,null),console[_0x3b30b0(0x1c8)](_0x3b30b0(0x336)+_0x5e16a7+_0xddc817+_0x3b30b0(0x2c1)+_0x7490f6+_0x3b30b0(0x159)),this['runNode'](_0x6476f2,_0x4e6b59,_0x5e16a7,_0xdbf1cb)[_0x3b30b0(0x2e8)](_0x3e26b5=>{const _0x1e17d6=_0x3b30b0;console[_0x1e17d6(0x21b)](_0x1e17d6(0x15f)+_0x5e16a7+_0xddc817+_0x1e17d6(0x274)+_0x7490f6+':',_0x3e26b5),this[_0x1e17d6(0x266)](_0x5e16a7,_0x7490f6,_0x730166[_0x1e17d6(0x1b6)],_0x3e26b5[_0x1e17d6(0x196)]||_0x730166[_0x1e17d6(0x264)](String,_0x3e26b5),undefined,_0xdbf1cb);});}else console[_0x3b30b0(0x1c8)]('['+_0x5e16a7+_0xddc817+_0x3b30b0(0x203)+_0x7490f6+_0x3b30b0(0x206));}}else console[_0x3b30b0(0x1c8)]('['+_0x5e16a7+_0xddc817+_0x3b30b0(0x203)+_0x2320fc+_0x3b30b0(0x32a)+_0xdbf1cb+'.');const _0x3662db=Object[_0x3b30b0(0x2b4)](_0x389a97[_0x3b30b0(0x2c3)])[_0x3b30b0(0x338)](_0x736be2=>(_0x736be2['type']==='webhook'||_0x736be2[_0x3b30b0(0x1b1)]===_0x3b30b0(0x29b)||_0x736be2[_0x3b30b0(0x1b1)]===_0x3b30b0(0x2ec))&&_0x736be2[_0x3b30b0(0x1ed)]===0x0);if(_0x3662db&&_0x389a97[_0x3b30b0(0x1c9)]===_0x730166[_0x3b30b0(0x19e)]){if(_0x730166[_0x3b30b0(0x1a7)](_0x3b30b0(0x201),_0x3b30b0(0x201))){const _0xaa48a4=Object[_0x3b30b0(0x2b4)](_0x389a97[_0x3b30b0(0x2c3)])[_0x3b30b0(0x2d2)](_0x3034cf=>_0x3034cf[_0x3b30b0(0x1c9)]==='running');if(!_0xaa48a4){console[_0x3b30b0(0x1c8)]('['+_0x5e16a7+']\x20No\x20nodes\x20seem\x20to\x20be\x20running.\x20Setting\x20status\x20back\x20to\x20\x27listening\x27.'),_0x389a97['status']=_0x730166[_0x3b30b0(0x169)];if(global[_0x3b30b0(0x20f)]?.[_0x3b30b0(0x15e)]){if(_0x730166['lnLdF']===_0x730166['lnLdF'])global[_0x3b30b0(0x20f)][_0x3b30b0(0x15e)]['to'](_0x5e16a7)[_0x3b30b0(0x231)](_0x730166[_0x3b30b0(0x1dd)],{'flowInstanceId':_0x5e16a7,'status':_0x730166[_0x3b30b0(0x169)]});else{_0x5a7a1e[_0x3b30b0(0x1c8)]('['+_0x4f3063+_0xaa6eec+_0x3b30b0(0x2d7)+_0x32bf46['id']+'\x20execution.'),this[_0x3b30b0(0x30f)](_0xf47ce7);return;}}}else _0x3b30b0(0x306)===_0x730166['aoWoz']?console[_0x3b30b0(0x1c8)]('['+_0x5e16a7+']\x20Path\x20for\x20trigger\x20'+_0xdbf1cb+'\x20ended,\x20but\x20other\x20nodes\x20might\x20be\x20running.\x20Keeping\x20status\x20\x27running\x27.'):(_0x22714a[_0x3b30b0(0x1c8)]('['+_0x6803e0+_0x3b30b0(0x1b2)+_0x479b63['flowId']+_0x3b30b0(0x2a2)),_0x1a465c[_0x3b30b0(0x1c9)]=_0x3b30b0(0x260),_0x40c619[_0x3b30b0(0x20f)]?.['socketIO']&&_0x591ece[_0x3b30b0(0x20f)][_0x3b30b0(0x15e)]['to'](_0x5edb40)[_0x3b30b0(0x231)](_0x730166[_0x3b30b0(0x2ee)],{'flowInstanceId':_0x399d74,'flowId':_0x55ee57[_0x3b30b0(0x25a)]}),this[_0x3b30b0(0x1df)](_0xd9d9e2[_0x3b30b0(0x25a)],_0x37907d));}else _0x2c2126[_0x3b30b0(0x1c8)]('['+_0x26a554+_0x3b30b0(0x29f)),_0x30565d[_0x3b30b0(0x1c9)]=_0x730166['KTVBJ'],_0x4ad199[_0x3b30b0(0x20f)]?.[_0x3b30b0(0x15e)]&&_0x5e474e[_0x3b30b0(0x20f)][_0x3b30b0(0x15e)]['to'](_0x569e40)[_0x3b30b0(0x231)](_0x730166[_0x3b30b0(0x1dd)],{'flowInstanceId':_0x136db9,'status':_0x730166[_0x3b30b0(0x169)]});}else _0x730166['aoqhJ'](_0x730166[_0x3b30b0(0x2be)],_0x730166[_0x3b30b0(0x31a)])?_0x730166[_0x3b30b0(0x228)](_0x1f00e6[_0x3b30b0(0x1a4)],0x0)?_0x730166['fVxlv'](_0x730166[_0x3b30b0(0x2d0)],_0x730166[_0x3b30b0(0x2d9)])?!_0x582ddf?_0x3abc3d[_0x3b30b0(0x347)](_0x730166[_0x3b30b0(0x337)]):(_0x3086b9[_0x3b30b0(0x1c8)](_0x3b30b0(0x19b)),this[_0x3b30b0(0x22c)]=_0x8981b2):(Object[_0x3b30b0(0x2b4)](_0x389a97[_0x3b30b0(0x2c3)])[_0x3b30b0(0x218)](_0x4c4107=>{const _0x165d67=_0x3b30b0;[_0x730166[_0x165d67(0x1fb)]][_0x165d67(0x21e)](_0x4c4107[_0x165d67(0x1c9)])&&this[_0x165d67(0x266)](_0x5e16a7,_0x4c4107['id'],_0x165d67(0x28c),undefined,undefined,null);}),_0x389a97['status']='completed',global['socketContainer']?.[_0x3b30b0(0x15e)]&&global[_0x3b30b0(0x20f)][_0x3b30b0(0x15e)]['to'](_0x5e16a7)['emit'](_0x730166[_0x3b30b0(0x1dd)],{'flowInstanceId':_0x5e16a7,'status':_0x730166[_0x3b30b0(0x343)]})):this['checkFlowCompletion'](_0x5e16a7):(_0x264701[_0x3b30b0(0x2b4)](_0xccb417[_0x3b30b0(0x2c3)])[_0x3b30b0(0x218)](_0x9a5857=>{const _0x24a50a=_0x3b30b0;[_0x730166[_0x24a50a(0x1fb)]][_0x24a50a(0x21e)](_0x9a5857[_0x24a50a(0x1c9)])&&this[_0x24a50a(0x266)](_0x40c367,_0x9a5857['id'],_0x24a50a(0x28c),_0x17d707,_0x5a7d2c,null);}),_0xbb1da2['status']=_0x3b30b0(0x260),_0x3911be[_0x3b30b0(0x20f)]?.[_0x3b30b0(0x15e)]&&_0x21146a['socketContainer'][_0x3b30b0(0x15e)]['to'](_0x2513a9)[_0x3b30b0(0x231)]('flow-status-updated',{'flowInstanceId':_0x24f28b,'status':_0x730166[_0x3b30b0(0x343)]}));}async['triggerNodeInInstance'](_0x16ae1e,_0x340a3c,_0x198e76){const _0x2cd05c=_0x407afa,_0x198c8b={'rLbOk':function(_0xa15d26,_0x46d960){return _0xa15d26+_0x46d960;},'CSFEC':_0x2cd05c(0x1b0),'IYHpW':_0x2cd05c(0x172),'QziUz':'failed','koOGz':function(_0x4675bb,_0x75033d){return _0x4675bb(_0x75033d);},'ZIRDS':function(_0x15560e,_0xdc75bf){return _0x15560e!==_0xdc75bf;},'tctvw':'yHxNl','klDmR':_0x2cd05c(0x2b8),'DQaFV':_0x2cd05c(0x22f),'YelHb':function(_0x461889,_0x5cbaed){return _0x461889??_0x5cbaed;}},_0x54de1a=this[_0x2cd05c(0x205)][_0x16ae1e];if(!_0x54de1a){if(_0x198c8b[_0x2cd05c(0x271)](_0x198c8b[_0x2cd05c(0x28f)],_0x2cd05c(0x1bb))){console[_0x2cd05c(0x347)](_0x2cd05c(0x29c)+_0x16ae1e+_0x2cd05c(0x299));return;}else _0x557c75[_0x2cd05c(0x1f3)]&&(_0x402958[_0x1dc643[_0x2cd05c(0x1f3)]]=_0x198c8b[_0x2cd05c(0x1c3)](_0x25fc35[_0x3a47db[_0x2cd05c(0x1f3)]]||0x0,0x1));}if(!['running',_0x198c8b['CSFEC']][_0x2cd05c(0x21e)](_0x54de1a['status'])){if(_0x198c8b[_0x2cd05c(0x280)]!=='eXPbD'){const _0x46929a=_0x2f6424[_0x2cd05c(0x2b4)](_0x291ed5[_0x2cd05c(0x2c3)])[_0x2cd05c(0x2d2)](_0x3cd4d9=>_0x3cd4d9[_0x2cd05c(0x1c9)]==='running');!_0x46929a?(_0x2a3d2b[_0x2cd05c(0x1c8)]('['+_0x53e506+_0x2cd05c(0x29f)),_0x1f6ae4['status']=_0x198c8b[_0x2cd05c(0x26f)],_0x263008['socketContainer']?.[_0x2cd05c(0x15e)]&&_0x1411ce[_0x2cd05c(0x20f)]['socketIO']['to'](_0x6aa8a0)['emit'](_0x198c8b[_0x2cd05c(0x2b9)],{'flowInstanceId':_0xb27e93,'status':_0x198c8b[_0x2cd05c(0x26f)]})):_0x388b98[_0x2cd05c(0x1c8)]('['+_0x2a2454+']\x20Path\x20for\x20trigger\x20'+_0x6e9140+'\x20ended,\x20but\x20other\x20nodes\x20might\x20be\x20running.\x20Keeping\x20status\x20\x27running\x27.');}else{console[_0x2cd05c(0x347)]('[FlowEngine.triggerNode]\x20Instance\x20'+_0x16ae1e+_0x2cd05c(0x349)+_0x54de1a['status']+_0x2cd05c(0x234));return;}}const _0x4427c5=_0x54de1a[_0x2cd05c(0x2c3)][_0x340a3c];if(!_0x4427c5||_0x4427c5[_0x2cd05c(0x243)]?.[_0x2cd05c(0x1a9)]){console[_0x2cd05c(0x21b)](_0x2cd05c(0x26e)+_0x340a3c+_0x2cd05c(0x22b)+_0x16ae1e+'.');return;}const _0x1cf81d=_0x2cd05c(0x2aa)+Date['now']()+'_'+crypto[_0x2cd05c(0x29d)](0x4)['toString'](_0x198c8b[_0x2cd05c(0x180)]),_0x29c85f='|'+_0x1cf81d;console[_0x2cd05c(0x1c8)]('['+_0x16ae1e+_0x29c85f+_0x2cd05c(0x1f5)+_0x340a3c+_0x2cd05c(0x16e)),console[_0x2cd05c(0x1c8)]('['+_0x16ae1e+_0x29c85f+_0x2cd05c(0x29a)+_0x340a3c+_0x2cd05c(0x159)),await this['_resetBranchStatus'](_0x16ae1e,_0x340a3c,_0x1cf81d),this[_0x2cd05c(0x1c5)](_0x4427c5,_0x198c8b[_0x2cd05c(0x313)](_0x198e76,{}),_0x16ae1e,_0x1cf81d)['catch'](_0x5a7189=>{const _0x4c8085=_0x2cd05c;console[_0x4c8085(0x21b)]('['+_0x16ae1e+'|'+_0x1cf81d+_0x4c8085(0x1e6)+_0x340a3c+_0x4c8085(0x2d4),_0x5a7189),this['updateNodeStatus'](_0x16ae1e,_0x340a3c,_0x198c8b[_0x4c8085(0x1f6)],_0x5a7189['message']||_0x198c8b[_0x4c8085(0x289)](String,_0x5a7189),undefined,_0x1cf81d);});}[_0x407afa(0x30f)](_0x48a5ee){const _0x3e27d1=_0x407afa,_0x40f24d={'uKOhG':_0x3e27d1(0x211),'QxHUp':_0x3e27d1(0x1b0),'hFgrn':_0x3e27d1(0x172),'zOrsD':_0x3e27d1(0x260),'prRjG':_0x3e27d1(0x31c),'pwVVZ':function(_0x3ad0c5,_0x4b471e){return _0x3ad0c5===_0x4b471e;},'cSSbD':_0x3e27d1(0x1bd),'HYDhB':_0x3e27d1(0x15c),'IqLjc':_0x3e27d1(0x1d2),'kAWRV':function(_0x351056,_0x1430c2){return _0x351056!==_0x1430c2;},'nfJcy':_0x3e27d1(0x321),'UZSdj':'qvchh','QHPmv':_0x3e27d1(0x161),'xGLSR':'yrEEy','nItEU':_0x3e27d1(0x221)},_0x249719=this[_0x3e27d1(0x205)][_0x48a5ee];if(!_0x249719||[_0x40f24d['zOrsD'],_0x3e27d1(0x1d2),_0x40f24d[_0x3e27d1(0x20b)],_0x3e27d1(0x1b0)][_0x3e27d1(0x21e)](_0x249719['status'])){if(_0x40f24d[_0x3e27d1(0x2c7)](_0x40f24d[_0x3e27d1(0x197)],_0x3e27d1(0x33b)))this['checkFlowCompletion'](_0x5af61f);else return;}const _0x26ac7d=Object[_0x3e27d1(0x2b4)](_0x249719['nodes'])[_0x3e27d1(0x338)](_0x1584a8=>(_0x1584a8[_0x3e27d1(0x1b1)]==='webhook'||_0x1584a8[_0x3e27d1(0x1b1)]==='facebook')&&_0x1584a8[_0x3e27d1(0x1ed)]===0x0);if(_0x26ac7d){if(_0x40f24d[_0x3e27d1(0x17e)]!==_0x40f24d[_0x3e27d1(0x17e)]){_0x3207fe[_0x3e27d1(0x1c8)]('['+_0x4e517e+_0x37a7d8+']\x20Node\x20'+_0x5ecb0e['id']+_0x3e27d1(0x290)),this['updateNodeStatus'](_0x8240a,_0x324e9d['id'],'cancelled',_0x2bf569,_0x5781e0,_0x295374),this['checkFlowCompletion'](_0x4f891e);return;}else{console[_0x3e27d1(0x1c8)]('start\x20node\x20là\x20một\x20webhook.\x20Flow\x20webhook\x20không\x20tự\x20hoàn\x20thành');return;}}if(Object[_0x3e27d1(0x2b4)](_0x249719[_0x3e27d1(0x2c3)])[_0x3e27d1(0x338)](_0x181d00=>_0x181d00[_0x3e27d1(0x1c9)]=='failed')&&!Object[_0x3e27d1(0x2b4)](_0x249719[_0x3e27d1(0x2c3)])['find'](_0x425af0=>_0x425af0[_0x3e27d1(0x1c9)]==_0x3e27d1(0x24d)||_0x425af0['status']==_0x3e27d1(0x2a9))){console[_0x3e27d1(0x1c8)]('['+_0x48a5ee+']\x20Flow\x20'+_0x249719[_0x3e27d1(0x25a)]+'\x20instance\x20failed.'),_0x249719[_0x3e27d1(0x1c9)]=_0x40f24d[_0x3e27d1(0x1a0)];global['socketContainer']?.['socketIO']&&(_0x40f24d[_0x3e27d1(0x344)](_0x40f24d['nfJcy'],_0x40f24d[_0x3e27d1(0x241)])?global['socketContainer'][_0x3e27d1(0x15e)]['to'](_0x48a5ee)['emit'](_0x40f24d[_0x3e27d1(0x24f)],{'flowInstanceId':_0x48a5ee,'flowId':_0x249719[_0x3e27d1(0x25a)]}):_0xd7425[_0x3e27d1(0x347)](_0x40f24d[_0x3e27d1(0x1cf)]));this[_0x3e27d1(0x1df)](_0x249719[_0x3e27d1(0x25a)],_0x48a5ee);return;}const _0x5832e2=Object[_0x3e27d1(0x2b4)](_0x249719[_0x3e27d1(0x2c3)])[_0x3e27d1(0x2ed)](_0x26dfe2=>[_0x3e27d1(0x260),_0x3e27d1(0x1d2),_0x3e27d1(0x28c),_0x3e27d1(0x31c),_0x3e27d1(0x1a9)][_0x3e27d1(0x21e)](_0x26dfe2[_0x3e27d1(0x1c9)]));_0x5832e2&&(console[_0x3e27d1(0x1c8)]('['+_0x48a5ee+']\x20All\x20nodes\x20finalized.\x20Flow\x20'+_0x249719[_0x3e27d1(0x25a)]+_0x3e27d1(0x2a2)),_0x249719[_0x3e27d1(0x1c9)]=_0x3e27d1(0x260),global[_0x3e27d1(0x20f)]?.[_0x3e27d1(0x15e)]&&(_0x40f24d[_0x3e27d1(0x2c7)](_0x40f24d[_0x3e27d1(0x23a)],_0x40f24d[_0x3e27d1(0x23a)])?global[_0x3e27d1(0x20f)]['socketIO']['to'](_0x48a5ee)[_0x3e27d1(0x231)](_0x40f24d['nItEU'],{'flowInstanceId':_0x48a5ee,'flowId':_0x249719[_0x3e27d1(0x25a)]}):(_0x2fc7b3[_0x3e27d1(0x1c8)]('['+_0x59b943+_0x5349b5+_0x3e27d1(0x29f)),_0x3d862f['status']=_0x40f24d[_0x3e27d1(0x1bc)],_0x3d2e92['socketContainer']?.[_0x3e27d1(0x15e)]&&_0x429e01[_0x3e27d1(0x20f)][_0x3e27d1(0x15e)]['to'](_0x2bb173)[_0x3e27d1(0x231)](_0x40f24d[_0x3e27d1(0x314)],{'flowInstanceId':_0x4987d4,'status':_0x3e27d1(0x1b0)}))),this['cleanupFlow'](_0x249719['flowId'],_0x48a5ee));}[_0x407afa(0x1fa)](_0x4b29d2,_0xf968cc=![],_0x143685=_0x407afa(0x249)){const _0x31444c=_0x407afa,_0x13c550={'FQHkx':function(_0x26b8a9,_0x423ba4){return _0x26b8a9===_0x423ba4;},'Ybqaw':'IpaAt','aPSBg':_0x31444c(0x1a8),'CjTky':'active_repeating','kWmui':_0x31444c(0x1d1),'gVfQS':_0x31444c(0x1e5),'VPgRo':_0x31444c(0x28c),'IbVYj':_0x31444c(0x2a9),'RTcMM':'listening','VmfGq':_0x31444c(0x1de),'DnbOQ':function(_0x3fe3e0,_0x161d6d){return _0x3fe3e0===_0x161d6d;},'lnlYB':_0x31444c(0x251),'JtkaH':_0x31444c(0x1d2),'UFhBc':_0x31444c(0x23e),'kDngw':'flow-stopped'},_0x4ba290=this[_0x31444c(0x205)][_0x4b29d2],_0x1979be=[_0x13c550[_0x31444c(0x23d)],'pending',_0x31444c(0x24d),_0x13c550[_0x31444c(0x21c)],_0x31444c(0x318),_0x13c550[_0x31444c(0x223)],_0x13c550[_0x31444c(0x334)]];if(_0x4ba290&&_0x1979be['includes'](_0x4ba290[_0x31444c(0x1c9)])){if(_0x13c550[_0x31444c(0x265)](_0x13c550[_0x31444c(0x24a)],_0x13c550[_0x31444c(0x24a)])){const _0x474326=_0x4ba290[_0x31444c(0x25a)],_0x50cf38=_0xf968cc?_0x13c550['JtkaH']:'stopped';console['log']('['+_0x4b29d2+_0x31444c(0x168)+_0x474326+'.\x20Reason:\x20'+_0x50cf38+_0x31444c(0x18c)+_0x143685);_0x4ba290[_0x31444c(0x2f9)]&&!_0x4ba290[_0x31444c(0x2f9)][_0x31444c(0x2a3)]['aborted']&&(_0x13c550['DnbOQ'](_0x13c550['UFhBc'],_0x13c550['UFhBc'])?(_0x4ba290[_0x31444c(0x2f9)][_0x31444c(0x2fd)](),console[_0x31444c(0x1c8)]('['+_0x4b29d2+']\x20Abort\x20signal\x20sent.')):this[_0x31444c(0x199)](_0xe72839,_0x204896[_0x31444c(0x1f3)],_0x17d054,_0x10071f));_0x4ba290['status']=_0x50cf38,Object[_0x31444c(0x2b4)](_0x4ba290['nodes'])[_0x31444c(0x218)](_0x31e706=>{const _0x4faa33=_0x31444c;if(_0x13c550['FQHkx'](_0x13c550[_0x4faa33(0x19f)],'NKjvI')){const _0x2cfba9=_0x533123[_0x4faa33(0x346)]();return _0x4bde8e[_0x4faa33(0x2b4)](this[_0x4faa33(0x205)])[_0x4faa33(0x15d)](_0x488b04=>_0x488b04[_0x4faa33(0x25a)]===_0x2cfba9)[_0x4faa33(0x24b)](_0x105a14=>this[_0x4faa33(0x227)](_0x105a14[_0x4faa33(0x1c2)]))[_0x4faa33(0x15d)](_0x5b5700);}else{if([_0x13c550[_0x4faa33(0x23d)],_0x4faa33(0x230),_0x13c550[_0x4faa33(0x16c)],_0x4faa33(0x2a9)][_0x4faa33(0x21e)](_0x31e706[_0x4faa33(0x1c9)])){if(_0x13c550[_0x4faa33(0x275)](_0x13c550[_0x4faa33(0x317)],_0x13c550['gVfQS']))throw new _0xab8c5c('['+_0x3b9874+_0x4faa33(0x33e)+_0xb192fc+'.');else this[_0x4faa33(0x266)](_0x4b29d2,_0x31e706['id'],_0x13c550[_0x4faa33(0x17d)],undefined,undefined,null);}}});if(global[_0x31444c(0x20f)]?.[_0x31444c(0x15e)]){const _0x511535={'flowInstanceId':_0x4b29d2,'flowId':_0x474326};_0xf968cc?(_0x511535['error']=_0x143685,global[_0x31444c(0x20f)][_0x31444c(0x15e)]['to'](_0x4b29d2)[_0x31444c(0x231)](_0x31444c(0x161),_0x511535)):global[_0x31444c(0x20f)]['socketIO']['to'](_0x4b29d2)[_0x31444c(0x231)](_0x13c550[_0x31444c(0x322)],_0x511535);}return this['_unregisterWebhooksForInstance'](_0x4ba290),this[_0x31444c(0x1df)](_0x474326,_0x4b29d2),console[_0x31444c(0x1c8)]('['+_0x4b29d2+_0x31444c(0x16f)+_0x50cf38+'.'),{..._0x4ba290,'status':_0x50cf38};}else _0x1d9f21=_0x1a5b3c[_0x237ccb];}else return _0x4ba290?_0x4ba290:null;}[_0x407afa(0x1f8)](_0x45ba3a){const _0xffced8=_0x407afa,_0x2380dc={'OaXLd':function(_0x168a97,_0x5eb92a){return _0x168a97||_0x5eb92a;},'sojQd':_0xffced8(0x34e),'vDbrG':function(_0x42fe68,_0x36ce46){return _0x42fe68===_0x36ce46;},'IXZML':_0xffced8(0x260),'wiFKT':'failed','yTnRx':_0xffced8(0x26a),'BGkco':function(_0x523bcd,_0x108547){return _0x523bcd===_0x108547;},'idsMB':_0xffced8(0x29b),'ZVAzd':_0xffced8(0x329),'RxaFG':_0xffced8(0x1f0),'PRbcW':function(_0x63ac45,_0x18855d){return _0x63ac45!==_0x18855d;},'vvrjN':_0xffced8(0x315),'vqnvs':_0xffced8(0x22d)};if(!this[_0xffced8(0x22c)]||!_0x45ba3a)return;const _0x597d66=_0x45ba3a[_0xffced8(0x1c2)],_0x2b7456=_0x45ba3a['flowId'];console[_0xffced8(0x1c8)]('['+_0x597d66+_0xffced8(0x30e)+_0x2b7456+'...');const _0x140e7f=Object[_0xffced8(0x2b4)](_0x45ba3a[_0xffced8(0x2c3)])[_0xffced8(0x15d)](_0x1924e6=>(_0x1924e6[_0xffced8(0x1b1)]===_0xffced8(0x166)||_0x1924e6['type']===_0xffced8(0x29b))&&_0x1924e6[_0xffced8(0x243)]?.[_0xffced8(0x1e1)]);for(const _0x4a74b3 of _0x140e7f){if(_0x2380dc[_0xffced8(0x191)](_0x2380dc[_0xffced8(0x2b5)],_0x2380dc[_0xffced8(0x2b5)])){let {path:_0x21205f,method:_0x453344,verificationMethod:_0x4c3e04}=_0x4a74b3[_0xffced8(0x243)],_0x5d0625=_0x453344,_0x3c3da7=_0x2380dc[_0xffced8(0x20e)](_0x4c3e04,_0xffced8(0x329));_0x2380dc[_0xffced8(0x1e3)](_0x4a74b3[_0xffced8(0x1b1)],_0x2380dc[_0xffced8(0x30a)])&&(_0x5d0625='POST',_0x3c3da7=_0x2380dc[_0xffced8(0x174)]);_0x5d0625=_0x5d0625?.['toLowerCase']()||'post';try{if(_0x2380dc['vDbrG'](_0x2380dc['RxaFG'],_0xffced8(0x2c5))){const _0x306491={'flowInstanceId':_0x3f9875,'triggerId':_0x2380dc[_0xffced8(0x20e)](_0x67b2f2,_0x2380dc['sojQd']),'nodeId':_0x75bf45,'nodeType':_0x20155f[_0xffced8(0x1b1)],'status':_0x15eb48,'timestamp':_0x3718be[_0xffced8(0x1b9)](),..._0x2380dc[_0xffced8(0x191)](_0x8b8d87,_0x2380dc[_0xffced8(0x2ac)])&&{'outputData':_0x3b414c},..._0x2380dc['vDbrG'](_0x2a8538,_0x2380dc[_0xffced8(0x186)])&&{'error':_0x3801cd}};_0x3b0adc['log']('['+_0x33e70e+_0x4e1e50+']\x20Emitting\x20flow-log-event:',{..._0x306491,'outputData':_0xffced8(0x159)}),_0x239148[_0xffced8(0x20f)][_0xffced8(0x15e)]['to'](_0x329ec0)['emit'](_0xffced8(0x1ad),_0x306491);}else this[_0xffced8(0x22c)][_0xffced8(0x23c)](_0x21205f,_0x5d0625,_0x597d66,_0x3c3da7[_0xffced8(0x17c)]()),console[_0xffced8(0x1c8)]('['+_0x597d66+']\x20Requested\x20unregistration\x20for\x20webhook:\x20'+_0x5d0625[_0xffced8(0x247)]()+'\x20'+_0x21205f+_0xffced8(0x208)+_0x4a74b3['id']+')');}catch(_0x52ddd1){if(_0x2380dc[_0xffced8(0x1c1)](_0x2380dc[_0xffced8(0x1da)],_0x2380dc[_0xffced8(0x300)]))console[_0xffced8(0x21b)]('['+_0x597d66+_0xffced8(0x33d)+_0x5d0625[_0xffced8(0x247)]()+'\x20'+_0x21205f+_0xffced8(0x32f)+_0x4a74b3['id']+':',_0x52ddd1[_0xffced8(0x196)]);else{const _0x2c9fac=_0xffced8(0x279)+_0x343d2a[_0xffced8(0x1b1)]+_0xffced8(0x178)+_0x309eb1['id']+').';_0x4958e6[_0xffced8(0x21b)]('['+_0x35781a+_0x887f54+']\x20'+_0x2c9fac),this[_0xffced8(0x266)](_0x23a383,_0x5b9d88['id'],_0x2380dc['wiFKT'],_0x2c9fac,_0x2c9a4f,_0x442dcd),this[_0xffced8(0x1fa)](_0x395ed1,!![],_0x2c9fac);return;}}}else _0x4eeb6e=_0x3cae03[_0xffced8(0x1a4)]>0x0?_0x16be27[_0x4d477e[_0xffced8(0x1a4)]-0x1]:{},_0x52922b[_0xffced8(0x1c8)]('['+_0x16f7b9+_0x4158bb+_0xffced8(0x220)+_0x129290+'.');}}[_0x407afa(0x199)](_0x5bb9f6,_0x556021,_0x39eb51,_0x39f500=new Set()){const _0x278f8c=_0x407afa,_0x2c87aa={'aBanm':'flow-status-updated','bdbbj':'failed','VYjXA':function(_0x11fa4f,_0x3ca655){return _0x11fa4f===_0x3ca655;},'ctSBL':_0x278f8c(0x200),'GdcDt':'DElMI','yXyZZ':function(_0x164fa2,_0x3001b5){return _0x164fa2===_0x3001b5;},'ixqGk':function(_0xa00650,_0x1fb0d7){return _0xa00650!==_0x1fb0d7;},'eNwgQ':_0x278f8c(0x20a)},_0x98fe43=this['runningFlows'][_0x5bb9f6];if(!_0x98fe43||_0x39f500[_0x278f8c(0x25d)](_0x556021))return;const _0x39a76b=_0x98fe43[_0x278f8c(0x2c3)][_0x556021];if(!_0x39a76b){if(_0x2c87aa[_0x278f8c(0x1d6)](_0x2c87aa['GdcDt'],_0x278f8c(0x21a))){console[_0x278f8c(0x347)]('['+_0x5bb9f6+']\x20_cancelBranch:\x20Node\x20'+_0x556021+'\x20not\x20found.');return;}else _0x5d5f2e[_0x278f8c(0x20f)][_0x278f8c(0x15e)]['to'](_0x2133b1)[_0x278f8c(0x231)](_0x2c87aa[_0x278f8c(0x1d4)],{'flowInstanceId':_0x3f01e0,'status':'listening'});}_0x39f500[_0x278f8c(0x292)](_0x556021);if(_0x2c87aa[_0x278f8c(0x29e)](_0x39a76b['status'],'pending')){if(_0x2c87aa[_0x278f8c(0x181)](_0x2c87aa[_0x278f8c(0x2fe)],_0x278f8c(0x20a))){_0xf7ab04[_0x278f8c(0x21b)]('['+_0x564566+_0x31daf1+_0x278f8c(0x203)+_0x415c61['id']+'\x20failed\x20during\x20execution:',_0xc66384);const _0x1486ef=_0x1878be['message']||_0x4ecc26;_0x32d8e3[_0x278f8c(0x1c8)]('['+_0x187c0c+_0x5d2120+']\x20--->\x20Attempting\x20to\x20set\x20node\x20'+_0x436f1f['id']+'\x20to\x20FAILED:',_0x1486ef),this['updateNodeStatus'](_0x1b05f6,_0x45086d['id'],_0x2c87aa[_0x278f8c(0x25f)],_0x1486ef,_0x264732,_0x4f8fd2),_0x581455[_0x278f8c(0x347)]('['+_0x58e838+_0x4d4fb0+']\x20Execution\x20path\x20failed\x20for\x20this\x20trigger\x20at\x20node\x20'+_0x5041c1['id']+'.');}else{console[_0x278f8c(0x1c8)]('['+_0x5bb9f6+(_0x39eb51?'|'+_0x39eb51:'')+_0x278f8c(0x1cc)+_0x556021+_0x278f8c(0x2e9)),this[_0x278f8c(0x266)](_0x5bb9f6,_0x556021,_0x278f8c(0x28c),undefined,undefined,_0x39eb51);const _0x5c0147=_0x98fe43[_0x278f8c(0x310)][_0x278f8c(0x15d)](_0xf43065=>_0xf43065[_0x278f8c(0x316)]===_0x556021);_0x5c0147[_0x278f8c(0x218)](_0x13efa7=>{const _0x3e709a=_0x278f8c;_0x2c87aa[_0x3e709a(0x1d6)](_0x3e709a(0x200),_0x2c87aa[_0x3e709a(0x246)])?this[_0x3e709a(0x199)](_0x5bb9f6,_0x13efa7[_0x3e709a(0x1f3)],_0x39eb51,_0x39f500):_0x13c507[_0x3e709a(0x1c8)]('['+_0x5af39f+_0x559910+_0x3e709a(0x203)+_0x355bbd+_0x3e709a(0x32a)+_0x2d999d+'.');});}}else{}}async[_0x407afa(0x28d)](_0x5405ba,_0x1081d3,_0x4eff87,_0x3b36a5=new Set()){const _0x328861=_0x407afa,_0xa31e71={'MXtdE':_0x328861(0x2fa),'PkNHQ':_0x328861(0x1a9),'VLJmH':'pending','FsoOz':function(_0x4aaf42,_0x44371a){return _0x4aaf42===_0x44371a;},'OOsKc':_0x328861(0x27f),'zjLix':function(_0x2e7099,_0x5f3dff){return _0x2e7099!==_0x5f3dff;},'fJpRK':function(_0x18b661,_0x35c881){return _0x18b661===_0x35c881;},'kFwKY':_0x328861(0x167)},_0x19b38d=this[_0x328861(0x205)][_0x5405ba];if(!_0x19b38d||_0x3b36a5[_0x328861(0x25d)](_0x1081d3))return;const _0x4e6a2d=_0x19b38d[_0x328861(0x2c3)][_0x1081d3];if(!_0x4e6a2d){if(_0xa31e71['FsoOz'](_0xa31e71[_0x328861(0x1ff)],_0x328861(0x2fc)))this[_0x328861(0x31e)](_0x44d286,_0x562d9f,_0x10d6c7);else{console[_0x328861(0x347)]('['+_0x5405ba+(_0x4eff87?'|'+_0x4eff87:'')+_0x328861(0x308)+_0x1081d3+_0x328861(0x2bf));return;}}_0x3b36a5[_0x328861(0x292)](_0x1081d3);if(_0xa31e71['zjLix'](_0x4e6a2d[_0x328861(0x1c9)],_0xa31e71[_0x328861(0x34f)])){if(_0xa31e71[_0x328861(0x16a)](_0xa31e71[_0x328861(0x32b)],_0xa31e71[_0x328861(0x32b)]))console['log']('['+_0x5405ba+(_0x4eff87?'|'+_0x4eff87:'')+_0x328861(0x2b2)+_0x1081d3+_0x328861(0x158)),this[_0x328861(0x266)](_0x5405ba,_0x1081d3,'pending',undefined,undefined,null),_0x4e6a2d['incomingPayloads']={},_0x4e6a2d[_0x328861(0x332)]=new Set();else{if(!_0x1206e0||!_0x31ef42['id']){_0x4641b6[_0x328861(0x347)](_0xa31e71['MXtdE'],_0x24867c);return;}_0xaee51f[_0x48114d['id']]={..._0x2fa688,'status':_0x1a9dc6[_0x328861(0x243)]?.[_0x328861(0x1a9)]?_0xa31e71[_0x328861(0x303)]:_0xa31e71[_0x328861(0x34f)],'predecessorCount':_0x457452[_0x2db7a9['id']]||0x0,'incomingPayloads':{},'completedPredecessors':new _0x952f60(),'outputData':_0x38643d,'inputPayload':_0x5dc0a8};}}const _0x150ebb=_0x19b38d[_0x328861(0x310)][_0x328861(0x15d)](_0x5ba769=>_0x5ba769['source']===_0x1081d3);for(const _0x576e0e of _0x150ebb){await this[_0x328861(0x28d)](_0x5405ba,_0x576e0e[_0x328861(0x1f3)],_0x4eff87,_0x3b36a5);}}['_checkAndSetListening'](_0xe69774,_0x297bb6){const _0x2e2043=_0x407afa,_0x281953={'YNsud':function(_0x2ceeae,_0x423c4d){return _0x2ceeae!==_0x423c4d;},'VbeAr':'running','fbCAU':function(_0x4f4526,_0x3efb96){return _0x4f4526===_0x3efb96;},'NyGze':_0x2e2043(0x2e3),'ASzFu':'listening'},_0x1194cf=this[_0x2e2043(0x205)][_0xe69774];if(!_0x1194cf||_0x281953[_0x2e2043(0x17a)](_0x1194cf['status'],_0x281953[_0x2e2043(0x2d8)]))return;const _0xa0a903=Object[_0x2e2043(0x2b4)](_0x1194cf[_0x2e2043(0x2c3)])[_0x2e2043(0x338)](_0xc8937e=>(_0xc8937e['type']===_0x2e2043(0x166)||_0xc8937e[_0x2e2043(0x1b1)]===_0x2e2043(0x29b)||_0xc8937e[_0x2e2043(0x1b1)]===_0x2e2043(0x2ec))&&_0xc8937e[_0x2e2043(0x1ed)]===0x0);if(_0xa0a903){const _0x2e40cc=Object[_0x2e2043(0x2b4)](_0x1194cf['nodes'])['some'](_0x3384c8=>_0x3384c8[_0x2e2043(0x1c9)]==='running');if(!_0x2e40cc){console['log']('['+_0xe69774+_0x297bb6+_0x2e2043(0x29f)),_0x1194cf['status']='listening';if(global[_0x2e2043(0x20f)]?.['socketIO']){if(_0x281953[_0x2e2043(0x2ea)](_0x281953[_0x2e2043(0x2a1)],'GTTgp'))global[_0x2e2043(0x20f)][_0x2e2043(0x15e)]['to'](_0xe69774)[_0x2e2043(0x231)](_0x2e2043(0x172),{'flowInstanceId':_0xe69774,'status':_0x281953[_0x2e2043(0x1eb)]});else{_0x546e65['error']('['+_0x1aadb8+_0x2000c0+_0x2e2043(0x176),_0x31d7ad),this[_0x2e2043(0x1fa)](_0x3a1cbf,!![],_0x2e2043(0x267)+_0x703f10?.['id']);return;}}}else console[_0x2e2043(0x1c8)]('['+_0xe69774+_0x297bb6+_0x2e2043(0x2f7));}}async[_0x407afa(0x1df)](_0x4ce68e,_0xc8a819){const _0x388d99=_0x407afa,_0x17f0cb={'wwKCh':function(_0x1d89c3,_0x4a026a){return _0x1d89c3!==_0x4a026a;},'iSrOV':'grtPQ','NkbXI':'flow'};if(this[_0x388d99(0x205)][_0xc8a819]){if(_0x17f0cb['wwKCh'](_0x17f0cb[_0x388d99(0x2d3)],_0x388d99(0x1e0))){const {status:_0x25adce,initialData:_0x46a110,instanceId:_0x42bbf7}=this[_0x388d99(0x205)][_0xc8a819];await global['getModel'](_0x17f0cb[_0x388d99(0x1a6)])['updateOne']({'_id':_0x4ce68e},{'activeInstance':{'status':_0x25adce,'initialData':_0x46a110,'instanceId':_0x42bbf7}}),console[_0x388d99(0x1c8)]('['+_0xc8a819+']\x20Cleaned\x20up\x20instance\x20data.');}else{_0x26f746['error']('['+_0x38c910+_0x388d99(0x229)+_0x122af4+_0x388d99(0x1ec));return;}}}[_0x407afa(0x266)](_0x528a79,_0x2eaac5,_0x1e5714,_0x4e4fcf=undefined,_0x5079bc=undefined,_0x1fe14e=null){const _0x148758=_0x407afa,_0x38a0d3={'snbZi':_0x148758(0x242),'rhcii':'yGKBG','BbAMo':function(_0x175fa0,_0xbf8595){return _0x175fa0!==_0xbf8595;},'EQcub':function(_0x184aba,_0x2be0e5){return _0x184aba===_0x2be0e5;},'SmDUj':function(_0x3fdba8,_0x59c5f4){return _0x3fdba8!==_0x59c5f4;},'wLbOQ':_0x148758(0x1a8),'ekpFB':_0x148758(0x260),'wvdAW':_0x148758(0x1d2),'QpQHD':function(_0x9462c1,_0x1a90b9){return _0x9462c1!==_0x1a90b9;},'zzWdp':_0x148758(0x304),'Chzcv':'initial','efnPY':_0x148758(0x159)},_0x2e2ea0=this['runningFlows'][_0x528a79];if(_0x2e2ea0?.[_0x148758(0x2c3)][_0x2eaac5]){if(_0x38a0d3['snbZi']!==_0x38a0d3[_0x148758(0x277)]){const _0x534a19=_0x2e2ea0[_0x148758(0x2c3)][_0x2eaac5],_0x114277=_0x534a19[_0x148758(0x1c9)],_0x165e9b=_0x1fe14e?'|'+_0x1fe14e:'';_0x38a0d3[_0x148758(0x28a)](_0x114277,_0x1e5714)&&(_0x534a19[_0x148758(0x1c9)]=_0x1e5714);_0x38a0d3[_0x148758(0x237)](_0x1e5714,_0x148758(0x260))&&_0x38a0d3[_0x148758(0x256)](_0x4e4fcf,undefined)&&(_0x534a19[_0x148758(0x19a)]=_0x4e4fcf);_0x38a0d3[_0x148758(0x237)](_0x1e5714,_0x38a0d3['wLbOQ'])&&_0x5079bc!==undefined&&(_0x534a19[_0x148758(0x2ae)]=_0x5079bc);_0x1e5714!==_0x38a0d3[_0x148758(0x257)]&&(_0x534a19[_0x148758(0x19a)]=undefined);let _0x2b9935=null;_0x38a0d3[_0x148758(0x237)](_0x1e5714,_0x38a0d3[_0x148758(0x20d)])?(_0x534a19[_0x148758(0x21b)]=_0x4e4fcf,_0x2b9935=_0x4e4fcf):_0x534a19[_0x148758(0x21b)]=undefined;if(_0x38a0d3['QpQHD'](_0x114277,_0x1e5714)&&global[_0x148758(0x20f)]?.[_0x148758(0x15e)]){if(_0x38a0d3['zzWdp']===_0x38a0d3['zzWdp']){const _0x342d5a={'flowInstanceId':_0x528a79,'triggerId':_0x1fe14e||_0x38a0d3[_0x148758(0x311)],'nodeId':_0x2eaac5,'nodeType':_0x534a19[_0x148758(0x1b1)],'status':_0x1e5714,'timestamp':Date['now'](),..._0x38a0d3[_0x148758(0x237)](_0x1e5714,_0x148758(0x260))&&{'outputData':_0x4e4fcf},..._0x38a0d3[_0x148758(0x237)](_0x1e5714,_0x38a0d3[_0x148758(0x20d)])&&{'error':_0x2b9935}};console[_0x148758(0x1c8)]('['+_0x528a79+_0x165e9b+_0x148758(0x27c),{..._0x342d5a,'outputData':_0x38a0d3[_0x148758(0x235)]}),global['socketContainer'][_0x148758(0x15e)]['to'](_0x528a79)['emit']('flow-log-event',_0x342d5a);}else _0x111d75[_0x148758(0x1c8)]('['+_0x25110b+_0x150eb7+_0x148758(0x17b)+_0x22bb8f+_0x148758(0x333)+_0x24d2bc+_0x148758(0x1d8)+_0x41b9a3);}_0x114277!==_0x1e5714&&console['log']('['+_0x528a79+_0x165e9b+_0x148758(0x17b)+_0x2eaac5+'\x20status:\x20'+_0x114277+_0x148758(0x1d8)+_0x1e5714);}else _0x455417[_0x148758(0x1c8)]('['+_0x41f0ab+_0x11aa51+_0x148758(0x28b)+_0x1b6cce?.['id']+_0x148758(0x1e9)+_0x34957a[_0x148758(0x1c9)]+'.');}else console[_0x148758(0x347)]('['+_0x528a79+_0x148758(0x31d)+_0x2eaac5+_0x148758(0x296));}[_0x407afa(0x227)](_0x25a15f){const _0x3fbb4c=_0x407afa,_0x1ab214=this[_0x3fbb4c(0x205)][_0x25a15f];if(!_0x1ab214)return null;return{'flowId':_0x1ab214[_0x3fbb4c(0x25a)],'instanceId':_0x1ab214[_0x3fbb4c(0x1c2)],'status':_0x1ab214[_0x3fbb4c(0x1c9)],'nodes':Object[_0x3fbb4c(0x2b4)](_0x1ab214[_0x3fbb4c(0x2c3)])[_0x3fbb4c(0x24b)](_0x5290cd=>({'id':_0x5290cd['id'],'type':_0x5290cd[_0x3fbb4c(0x1b1)],'status':_0x5290cd[_0x3fbb4c(0x1c9)],'outputData':_0x5290cd[_0x3fbb4c(0x19a)],'inputPayload':_0x5290cd[_0x3fbb4c(0x2ae)],'error':_0x5290cd[_0x3fbb4c(0x21b)]}))};}[_0x407afa(0x1ea)](){const _0x383172=_0x407afa;return Object[_0x383172(0x1b4)](this[_0x383172(0x205)])[_0x383172(0x24b)](_0x268b8f=>this[_0x383172(0x227)](_0x268b8f))['filter'](Boolean);}['getInstancesForFlow'](_0x40c9ef){const _0x361f33=_0x407afa,_0x5ed1a3=_0x40c9ef['toString']();return Object[_0x361f33(0x2b4)](this['runningFlows'])['filter'](_0x15440e=>_0x15440e[_0x361f33(0x25a)]===_0x5ed1a3)[_0x361f33(0x24b)](_0x1b31aa=>this[_0x361f33(0x227)](_0x1b31aa[_0x361f33(0x1c2)]))['filter'](Boolean);}['stopAllInstancesOfFlow'](_0x560bf1,_0x3ee7d8=_0x407afa(0x210)){const _0x4ef453=_0x407afa,_0x13b9d2={'OqxFB':function(_0x578199,_0x4ad7d9){return _0x578199!==_0x4ad7d9;},'NBNzt':_0x4ef453(0x1a2)},_0x2f7f08=_0x560bf1[_0x4ef453(0x346)](),_0x31797e=Object[_0x4ef453(0x2b4)](this['runningFlows'])['filter'](_0x4587fe=>_0x4587fe['flowId']===_0x2f7f08&&[_0x4ef453(0x1a8),_0x4ef453(0x230),_0x4ef453(0x24d),_0x4ef453(0x2a9),_0x4ef453(0x318),'listening']['includes'](_0x4587fe[_0x4ef453(0x1c9)]))[_0x4ef453(0x24b)](_0x3d8496=>_0x3d8496[_0x4ef453(0x1c2)]);if(_0x31797e[_0x4ef453(0x1a4)]===0x0)return console[_0x4ef453(0x1c8)]('[FlowEngine]\x20No\x20running/waiting/listening\x20instances\x20found\x20for\x20flow\x20'+_0x2f7f08+_0x4ef453(0x1c6)),[];console[_0x4ef453(0x1c8)](_0x4ef453(0x25e)+_0x31797e[_0x4ef453(0x1a4)]+_0x4ef453(0x302)+_0x2f7f08+_0x4ef453(0x34d)+_0x3ee7d8);const _0x2a6306=[];return _0x31797e[_0x4ef453(0x218)](_0x553843=>{const _0x27c6d2=_0x4ef453;try{this[_0x27c6d2(0x1fa)](_0x553843,![],_0x3ee7d8),_0x2a6306[_0x27c6d2(0x18f)](_0x553843);}catch(_0x5414ff){_0x13b9d2[_0x27c6d2(0x2a7)](_0x13b9d2[_0x27c6d2(0x171)],_0x13b9d2[_0x27c6d2(0x171)])?_0x4a0454[_0x27c6d2(0x20f)][_0x27c6d2(0x15e)]['to'](_0x34c600)[_0x27c6d2(0x231)](_0x27c6d2(0x161),{'flowInstanceId':_0x5cf19b,'flowId':_0x37bc24['flowId']}):console[_0x27c6d2(0x21b)](_0x27c6d2(0x188)+_0x553843+'\x20for\x20flow\x20'+_0x2f7f08+':',_0x5414ff);}}),_0x2a6306;}}const WebhookManager=require(_0x407afa(0x282)),init=async _0x27d629=>{const _0x20859c=_0x407afa,_0x5ba0ce={'FOjXr':_0x20859c(0x1a8),'DyHvr':function(_0x24ad32,_0x408e3f){return _0x24ad32!==_0x408e3f;},'bCCaT':_0x20859c(0x2f2),'QHiuA':'[FlowEngin]\x20restart\x20flow','fmEsd':_0x20859c(0x27a)};console[_0x20859c(0x1c8)](_0x20859c(0x1fd));const _0x67aaaf=global[_0x20859c(0x252)]=new FlowEngine(),_0x5362a7=new WebhookManager(_0x67aaaf);_0x67aaaf[_0x20859c(0x165)](_0x5362a7),_0x5362a7[_0x20859c(0x1e7)](_0x27d629);let _0x278a85=await global['getModel'](_0x20859c(0x291))[_0x20859c(0x338)]({'activeInstance.status':{'$in':[_0x5ba0ce['FOjXr'],'listening']}})[_0x20859c(0x287)]();for(let _0x32957c of _0x278a85){let _0x496350=_0x32957c[_0x20859c(0x1e2)];if(_0x496350){let _0x485ec5=_0x496350[_0x20859c(0x1c2)];try{if(_0x5ba0ce[_0x20859c(0x1b8)](_0x5ba0ce[_0x20859c(0x2bb)],_0x5ba0ce[_0x20859c(0x2bb)])){_0x19f598[_0x20859c(0x21b)]('['+_0x402453+_0x20859c(0x1a5),_0x16d827),this[_0x20859c(0x1df)](_0x19ec2a,_0x3dfb1b);throw new _0x454523(_0x20859c(0x163)+_0x1b734b[_0x20859c(0x196)]);}else await global[_0x20859c(0x252)][_0x20859c(0x2cc)](_0x32957c[_0x20859c(0x23b)]['toString'](),_0x496350['initialData']||{},_0x485ec5),console[_0x20859c(0x1c8)](_0x5ba0ce[_0x20859c(0x26b)],_0x32957c['title'],_0x32957c[_0x20859c(0x23b)]);}catch(_0x6ce87d){if(_0x20859c(0x204)!==_0x5ba0ce[_0x20859c(0x1d3)])console['error'](_0x5ba0ce['QHiuA'],_0x6ce87d);else throw new _0xdf637a('['+_0x16ec8b+_0x20859c(0x2cf)+_0x3f5cd8+_0x20859c(0x2a8));}}}};function _0x5c4b(_0x58f826,_0x5a8b2f){const _0x16fef4=_0x16fe();return _0x5c4b=function(_0x5c4bef,_0x460c6e){_0x5c4bef=_0x5c4bef-0x158;let _0x3605f9=_0x16fef4[_0x5c4bef];if(_0x5c4b['USZOpS']===undefined){var _0x4916ce=function(_0xca587a){const _0x13e846='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x275553='',_0x32894e='';for(let _0x582ddf=0x0,_0x23c92f,_0x5306ed,_0x3a7a30=0x0;_0x5306ed=_0xca587a['charAt'](_0x3a7a30++);~_0x5306ed&&(_0x23c92f=_0x582ddf%0x4?_0x23c92f*0x40+_0x5306ed:_0x5306ed,_0x582ddf++%0x4)?_0x275553+=String['fromCharCode'](0xff&_0x23c92f>>(-0x2*_0x582ddf&0x6)):0x0){_0x5306ed=_0x13e846['indexOf'](_0x5306ed);}for(let _0x3abc3d=0x0,_0x3086b9=_0x275553['length'];_0x3abc3d<_0x3086b9;_0x3abc3d++){_0x32894e+='%'+('00'+_0x275553['charCodeAt'](_0x3abc3d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x32894e);};_0x5c4b['cTMEhZ']=_0x4916ce,_0x58f826=arguments,_0x5c4b['USZOpS']=!![];}const _0xf7b96a=_0x16fef4[0x0],_0x19088e=_0x5c4bef+_0xf7b96a,_0x104d97=_0x58f826[_0x19088e];return!_0x104d97?(_0x3605f9=_0x5c4b['cTMEhZ'](_0x3605f9),_0x58f826[_0x19088e]=_0x3605f9):_0x3605f9=_0x104d97,_0x3605f9;},_0x5c4b(_0x58f826,_0x5a8b2f);}function _0x16fe(){const _0x2ea7bd=['D1j4Bey','xsbdywXSAw5Nihj1BK5VzguGzM9Yia','uejuA2q','BM9Kzxm','svnIsMe','sg9jBLm','xsbuCMLNz2vYAw5NigrVD25ZDhjLyw0GBM9KzxmGzNjVBsa','ChDwvLO','z2v0tw9KzwW','y1fOrwe','xtOGy2HLy2SGzMXVDYbJB21WBgv0Aw9U','ihrVienbtKnfteXfrcaOqwjVCNrfCNjVCIK','C3rHCNrgBg93','DuLZBLG','igrVD25ZDhjLyw0GBM9Kzxm6ia','xsbdyw5UB3qGC3rHCNqGrMXVDYa','zvn2vhe','re5zzg8','C29Tzq','AvnYt1y','igzYB20GzxH0zxjUywWGDhjPz2DLCJO','C1DhCNq','B2jQzwn0','xsbgBg93ihn0B3bWzwqGB3iGy2HHBMDLzcbZDgf0DxmGzhvYAw5Nig5VzguG','vMjLqxi','rNjhuhm','ywjVCNrtAwDUywW','iIbPCYbUB3qGDMfSAwq','ic0G','ihrVifjvtK5jtKC','CMvNAxn0zxjxzwjOB29R','u2vpAxe','tezOzhK','zgvIDwC','wvHovee','r1ruz3a','xsaTls0+ief0DgvTChrPBMCGDg8GC2v0ig5VzguG','C2L6zq','BM9Kzvn0yxr1CW','q051uLO','y2f0y2G','igLUihvUDxnLzcbICMfUy2GU','zMjdqvu','tKjtsge','zxzLBNq','zxzLCNK','we1Qy3u','xsbiyw5KBgvYigzVCIbUB2rLia','rMXVDYbjrcaI','qLvPsgu','u0votLK','uhHryw0','ywjVCNrLza','rhbOBha','EvvXy04','xsbqyxrOigvUzgvKlcbIDxqGB3rOzxiGBM9KzxmGBwLNAhqGyMuGCNvUBMLUzY4Gs2vLCgLUzYbZDgf0DxmGj3j1BM5PBMCNlG','BLzXr3e','ywjVCNrdB250CM9SBgvY','tM9KzsbKzwzPBML0Aw9UihDPDgHVDxqGsuqGzM91BMqSihnRAxbWAw5NoG','xsbszwDPC3rLCMLUzYb3zwjOB29RCYbMB3iGzMXVDYa','wu1jEfK','ywjVCNq','zu53z1e','ihrYAwDNzxjLzcb3AxrOidaGChjLzgvJzxnZB3jZlG','DNfUDNm','yvPqvxu','igLUC3rHBMnLCYbVzIbMBg93ia','ugTosfe','DgXPAMy','tM9KzsbRAog7N2KGXjhHUQD1imsrW6mGyUg7IYb2W7qGAgNHU4D1igHVW6e','DeTiCuC','mte5mJyXnhrbBejvua','xsbFCMvZzxrcCMfUy2HtDgf0Dxm6ie5VzguG','y2XLyxi','AwrZtui','Afn6sgu','icHYzxbLyxrPBMCP','uMXVA1G','xsbszxf1zxn0Aw5NihvUCMvNAxn0CMf0Aw9Uig9MihDLyMHVB2TZigzVCIbMBg93ia','y2HLy2TgBg93q29TCgXLDgLVBG','zwrNzxm','q2H6y3y','vgjHv2u','wwvSsgi','AezNCM4','DuTAAfO','C291CMnL','A1DTDwK','D2fPDgLUzW','BgzYCwy','wu9Kug8','DNLWChm','C3rVChbLza','xsaJiYmGDxbKyxrLtM9Kzvn0yxr1CYaJiYmGq2fUBM90ihvWzgf0zsbUB2rLia','DhjPz2DLCKrVD25ZDhjLyw1oB2rLC0LUDgvYBMfS','igLUC3rHBMnLihn0yxj0Aw5Nig5VzgvZigLTBwvKAwf0zwX5lIbtDgf0Dxm6ia','AhvIlNzLCMLMEv90B2TLBG','C1Plu3K','A0rUz3C','t3PAvMK','B0vpBKu','rgXKsem','y3j5ChrV','vxD1rfC','Eg1ltNm','r0vu','igLZigeGDgvYBwLUywWGBM9KzsbMB3iGDhjPz2DLCIa','A0z3s1K','BMrRsLa','sfjizMy','wurJwxe','igzVCIbUB2rLia','t2jQzwn0swq','sejTz0C','y29TCgXLDgvKuhjLzgvJzxnZB3jZ','ihn0yxr1CZOG','vM1Mr3e','DxbSs0O','8j+uPsbB','tePyCvG','zMLUza','wxv1D1u','ndq0m2XOAfDyqW','C2zOtLq','ig5VzguG','xsbgywLSzwqGDg8GDw5YzwDPC3rLCIb3zwjOB29Ria','xsboBYbZDgfYDcbUB2rLigzVDw5KigzVCIbgBg93ia','z2LhyKG','qwfJqM0','zMXVDY1ZDgfYDgvK','qufzwMe','qLrMwgW','A0fxuLy','mxW0Fdb8mNWZ','Dg9tDhjPBMC','D2fYBG','vLHSs0G','igLZig5VDcbPBIaNCNvUBMLUzYCGB3iGj2XPC3rLBMLUzYCGC3rHDguGkgn1CNjLBNq6ia','DffSC1i','rgf0Ava','ihrVifbftKrjtKCGkgjLzM9YzsbYDw4P','lIbszwfZB246ia','Aw5PDgLHBa','vKXkBuG','lIbtDgf0Dxm6ia','ihrVifbftKrjtKCU','lI4U','tNnise4','igzVCIbMBg93ia','se1dC1a','zMLSDgvY','C29JA2v0su8','4P2mifS','sLPIr1G','zMXVDY1MywLSzwq','uwDArLe','rMfPBgvKigr1CMLUzYb3zwjOB29RihjLz2LZDhjHDgLVBJOG','ihrVia','C2v0v2vIAg9VA01HBMfNzxi','D2vIAg9VAW','u25gD1q','xsbtDg9WCgLUzYbMBg93igLUC3rHBMnLigzVCIa','s1rwqKO','zKPWuKS','BMfTzq','q2PuA3K','s2fXCKG','lIbszxnLDhrPBMCGyw5Kihj1BM5PBMCUlI4','xsbgBg93igLUC3rHBMnLigzPBMfSAxPLzcbHCYa','igHHCYbUBYbUB2rLCY4','tKjoENq','zMXVDY1ZDgf0DxmTDxbKyxrLza','yvjRAhe','wLzbEMq','C0Hjy3K','xsbYDw5oB2rLievsuK9soIbjBNzHBgLKig5VzguGB2jQzwn0ihbHC3nLzdO','AxnwywXPza','ig9YigrLyNvNicHoB2rLia','uLvcC0C','wu5ZDwq','xsbvuerbveveie5VzguG','Dg9mB3DLCKnHC2u','vLbNuM8','sfLeAei','B05tEfi','rffHrLy','AxHXr2S','igzHAwXLzcbKDxjPBMCGzxHLy3v0Aw9UoG','BKvpALe','ic0Tlq','xsbnDwX0AxbSzsbZDgfYDcbUB2rLCYbMB3vUzc4GvxnPBMCGzMLYC3q6ia','D2Lgs1q','AMXtAue','w0zSB3DfBMDPBMvDievYCM9Yihn0B3bWAw5NigLUC3rHBMnLia','zNzbANK','r1Ppz0O','xsbgBg93ia','lIbnC2C6ia','rMLNC1a','yvzXC20','ChvZAa','CLfNC1i','DKrICKC','ANLns2W','Dwvqs20','twXXwvG','q1L3Dxm','BwvZC2fNzq','y1ntyKq','DxbKyxrLt25L','x2nHBMnLBejYyw5JAa','B3v0Chv0rgf0yq','w0zSB3DfBMDPBMvDifDLyMHVB2Tnyw5Hz2vYigLUC3rHBMnLigLUAMvJDgvKlG','qxnZwK4','wfbnvKW','zMjuCxa','wwjXyxC','sxfmAMm','xsbgBg93igLUC3rHBMnLigLZieXju1rftKLorYbMB3iGD2vIAg9VAYb0CMLNz2vYigf0ig5VzguG','u0D2Dvu','shDxveK','BgvUz3rO','xsbfCNjVCIbKDxjPBMCGD2vIAg9VAYbYzwDPC3rYyxrPB246','tMTIweK','r0ryrg8','CNvUBMLUzW','zgLZywjSzwq','AM9PBG','igzPBMLZAgvKlG','yMLUza','zMXVDY1SB2CTzxzLBNq','xsbszwDPC3rLCMvKihDLyMHVB2S6ia','v0fcChm','BgLZDgvUAw5N','DhLWzq','xsbbBgWGBM9KzxmGzMLUywXPEMvKlIbgBg93ia','tfH1D2e','A2v5CW','AhnYCey','tgTKDvy','ihrVienptvbmrvrfrcaOywz0zxiGyNjHBMnOAw5Nkq','rhLiDNi','BM93','tLzOvem','AM54q2u','uxHivxa','qMjtAgm','zxHWB3j0CW','sMTkzNq','shDmzeG','ufjIy1C','Aw5ZDgfUy2vjza','CKXIt2S','Cg9ZDa','CNvUtM9Kzq','ihrVihn0B3aU','lI9Oyw5KBgvYCW','Bg9N','C3rHDhvZ','DMTZCeW','xsbxzwjOB29Rihn0yxj0ig5VzguGzgv0zwn0zwqGyNv0ifDLyMHVB2Tnyw5Hz2vYigLZig5VDcbZzxqU','xsaTls0+ienHBMnLBgXPBMCGBM9Kzsa','xsbdCML0AwnHBcbLCNjVCIbKDxjPBMCGAw5PDgLHBcbUB2rLihj1BJO','mtK0nZeYn0jNu1PkCq','DuTpAeC','oIbgBg93ihn0yxrLig5VDcbMB3vUzc4','se10vLG','zMfPBgvK','zM1fC2q','yujHBM0','ue9tva','vLLQwee','AhrqsNq','ic0+ia','nJu3mZK3nM9Mz0Dtra','DNzYAK4','ue1uEgm','B2TUve4','sxDxreu','Aw5PDgLHBgL6Aw5N','y2XLyw51CezSB3C','twD4wxe','Cgf0Aa','ywn0AxzLsw5ZDgfUy2u','qKDRy28','A05fz0W','uuHxtvi','xsbfCNjVCIbYzs1YDw5UAw5Nig5VzguG','yxr0ywnO','tKvmueK','oIbgBg93ihn0yxr1CYbPCYa','z2v0qwXSrMXVD1n0yxr1C2vZ','qvn6rNu','oIbnAxnZAw5NicD2zxjPzNLuB2TLBLzHBhvLjY4','ChjLzgvJzxnZB3jdB3vUDa','BKDhCfy','zLz4Bhy','CMHNvfO','xsbbBgWGChjLzgvJzxnZB3jZigzVCIa','vvDizvK','DgfYz2v0','u1vitMW','xsbszwnLAxzLzcbLEhrLCM5HBcb0CMLNz2vYigzVCIbUB2rLia','uxPPvxO','z3Lhweu','x3vUCMvNAxn0zxjxzwjOB29RC0zVCKLUC3rHBMnL','q3jPDgLJywWGzxjYB3iGC3rHCNrPBMCGzMXVDZOG','C3rVCezSB3C','BxrRsuC','z0DMzvC','Aw5PDcbgBg93rw5NAw5LlI4U','igLZig5VDYbHBIbHy3rPDMuGjW','t09Zs2m','sKHKBMW','suDxCKy','CvPRuNm','xsboB2rLia','y0r3vgC','CNvUBMLUz0zSB3DZ','ihn0AwXSihDHAxrPBMCGzM9YihbYzwrLy2vZC29YCY4','seTxsvG','icHoB2rLia','ignVBxbSzxrLzcbUB3jTywXSEs4','v0zHsvi','ChjsAKC','zuXHvK0','D3zKqvC','t2fytgq','C29JA2v0q29UDgfPBMvY','u3rVChbLzcbHBgWGAw5ZDgfUy2vZigzVCIbMBg93igrLzMLUAxrPB24','w0zSB3DfBMDPBMvDief0DgvTChrLzcb0BYbZzxqGysbUDwXSig9YihvUzgvMAw5LzcbxzwjOB29RtwfUywDLCI4','xsbdB21IAw5PBMCG','y0DXwhO','BM9Kzvr5Cgu','CKrQvwS','AhvIlMnOywXSzw5Nzq','xsbYDw5oB2rLoIbuCMfUC2L0Aw9UAw5NigzSB3CGC3rHDhvZigzYB20Gj2XPC3rLBMLUzYCGDg8Gj3j1BM5PBMCNlG','zM9YrwfJAa','rerOCLK','revStuK','zxjYB3i','swjwwwO','Bw9Uz29VC2u','Aw5JBhvKzxm','wfrfq1m','xsbvC2LUzYbZAw5NBguGCgf5Bg9HzcbMB3iGBM9Kzsa','zMXVDY1JB21WBgv0zwq','ihrViezbsuXfrdO','uLrJtu0','xsbeB24NDcbMAw5KigHHBMrSzxiGzM9Yihr5CguGBM9Kzsa','BwrgEeq','ELHtDvK','z2v0rMXVD1n0yxr1CW','werQrg8','xsbtA2LWCgLUzYbgqIbUB2rLia','DLjLyNa','ig5VDcbMB3vUzcbVCIbKAxnHyMXLzcbPBIbPBNn0yw5Jzsa','D2vIAg9VA01HBMfNzxi','DKPrBge','BuTuz0W','Agv4','CgvUzgLUzW','zw1PDa','yxbWu2vJCMv0','Ewfjv2y','ks4GswDUB3jPBMCGDhjPz2DLCI4','zwzUufK','rhH0wNK','rvfJDwi','wufVu0e','vvL6wvq','EeDmu1i','x2LK','Dw5YzwDPC3rLCLDLyMHVB2S','yvbtqMC','v2P1vM0','B3DZyNK','nunODevoBG','vvPtzgO','BNzIuee','zgf0yq','uMD2Dva','mJGXnJGWmJLQqKn0v3u','y3rtqKW','Dg9vChbLCKnHC2u','z2vSzeu','rMXVDYbZDg9WCgvKig1HBNvHBgX5','Bg5Swui','BwfW','DNzIt3q','ywn0AxzLx3jLCgvHDgLUzW','C1LUBxu','uuHqBxy','vw1VtMu','C2fusM0','zMXVD0vUz2LUzq','igrVBMuUifrYAwDNzxjPBMCU','igHHCYa','v29nvwO','u21evwO','zwTWrKi','s01mqxO','C3bSAxq','zMXVD0LK','xsbtDgfYDcbUB2rLigLZia','EK5VuvK','AgfZ','w0zSB3DfBMDPBMvDifjLCxvLC3rPBMCGC3rVCcbMB3iG','yMrIyMO','y29TCgXLDgvK','qurpBM8','ugvsB28','igHHBMrSzwqGyNjHBMnOAw5NlIbtzxr0Aw5Nihn0yxr1CYb0BYbJB21WBgv0zwqU','uwjTA0O','rg5It1e','DxbKyxrLtM9Kzvn0yxr1CW','sw52ywXPzcbUB2rLieLeoIa','lIbszwfZB246iezSB3CGC3rHDhvZicG','DxL4sMe','ru5hEgO','uuHPDue','xsbtA2LWCgLUzYbKB3DUC3rYzwfTihrYAwDNzxiGzNjVBsa','igv4zwn1DgLVBI4','w0zSB3DfBMDPBMuUDhjPz2DLCK5VzgvDifrHCMDLDcbUB2rLia','q1ngrum','vKzkDxm','wKLsrfm','vhLWzxm','iIbKB2vZig5VDcbLEgLZDa','xsbfCNjVCIbZDgfYDgLUzYa','rLfiA3G','icHuExbLoIa','CMHJAwK','DKn4qvK','tM8GAgfUzgXLCIbMB3iGDhLWzsa','AvDbrxa','sfL4quC','xsbfBwL0DgLUzYbMBg93lwXVzY1LDMvUDdO','4PQG77IpifS','suH0BM8','B2DJyNy','A2XeBvi','vMfJBuC','lI9xzwjOB29RtwfUywDLCG','rvnutM4','mJGYmdy1neHIzhPkDG','xsbfEgvJDxrPB24GCgf0AcbMywLSzwqGzM9YihrOAxmGDhjPz2DLCIbHDcbUB2rLia','ksbUB3qGj3j1BM5PBMCGB3iGBgLZDgvUAw5NjYbVCIbHyM9YDgvKicG','BgvHBG','Aw5JB21PBMDqyxLSB2fKCW','A29pr3O','qMjbtw8','xsbYDw5oB2rLifnlsvbqruqGzM9Yig5VzguG','y2fUy2vSBgvK','x3jLC2v0qNjHBMnOu3rHDhvZ','AKTLELy','Dgn0DNC','igfIB3j0zwqGzhvYAw5NigHHBMrSzxiGzxHLy3v0Aw9UlG','zMXVDW','ywrK','xsbYDw5oB2rLoIboB2rLia','m3WYFdb8nhWX','yKLNBey','oIboB2rLig9YigzSB3CGAw5ZDgfUy2uGBM90igzVDw5KlG','rfrHAMe','igv4zwn1DgLVBIbHyM9YDgvKigj5ihnPz25HBc4','ig5VDcbMB3vUzc4GswDUB3jPBMCGDhjPz2DLCI4','xsbszxnLDhrPBMCGyNjHBMnOihn0yxj0Aw5NigzYB20G','zMfJzwjVB2S','w0zSB3DfBMDPBMuUDhjPz2DLCK5VzgvDieLUC3rHBMnLia','CMfUzg9TqNL0zxm','EvH5wLO','xsboBYbUB2rLCYbZzwvTihrVigjLihj1BM5PBMCUifnLDhrPBMCGC3rHDhvZigjHy2SGDg8Gj2XPC3rLBMLUzYCU','xsaTls0GCNvUtM9KzsbftLrfuKveigzVCIbUB2rLia','tNLhEMu','igLUC3rHBMnLignVBxbSzxrLzc4','C2LNBMfS','zM9YzwfJAgL0zw0','nduXodG3mMDjwuvqBW','vunnyuS','t3f4rKi','oIbtDgfYDcbUB2rLignVDwXKig5VDcbIzsbKzxrLCM1PBMvKlG','ywn0AxzLx2XPC3rLBMLUzW','DhjPz18','EMzxAxy','svHAtuW','ywXS','Aw5WDxrqyxLSB2fK','CMvWzwf0Aw5N','xsbtDgf0DxmGB2yGBM9Kzsa','zfPwyuS','xsaTls0+ifjLC2v0DgLUzYbUB2rLia','lIbvC2uGzgvIDwCGBM9Kzs4UlG','DMfSDwvZ','EvrUuNG','igfIB3j0zwqGyMvMB3jLigv4zwn1DgLVBI4','tM9Ny3i','zvHqyKq','svLiCfC','BLjPufe','yKndyvq','mtqYCvL5uufA','sfPrDLu','qwjWvxm','ig5VDcbMB3vUzc4'];_0x16fe=function(){return _0x2ea7bd;};return _0x16fe();}module[_0x407afa(0x1be)]=init;
@@ -1,26 +1 @@
1
- const express=require("express"),crypto=require("crypto");
2
- class WebhookManager{constructor($flowEngine$$){if(!$flowEngine$$)throw Error("WebhookManager requires a FlowEngine instance.");this.flowEngine=$flowEngine$$;this.registeredWebhooks=new Map;this.router=express.Router()}attach($app$$,$basePath$$="/webhooks"){this.router.use(express.json({limit:"10mb",verify:($req$$,$res$$,$buf$$)=>{$buf$$&&$buf$$.length&&$req$$.headers["content-type"]?.includes("application/json")&&($req$$.rawBodyBuffer=$buf$$)}}));this.router.use(express.urlencoded({extended:!0,limit:"10mb"}));
3
- this.router.use(($req$$,$res$$,$next$$)=>{var $key$$=`${$req$$.method.toLowerCase()}:${$req$$.path}`;$key$$=this.registeredWebhooks.get($key$$);if(!$key$$||$key$$.activeInstances.size===0)return console.warn(`[WebhookManager] Request received for inactive or unregistered webhook: ${$req$$.method} ${$req$$.path}`),$res$$.status(404).send({error:"Webhook endpoint is inactive or not found."});$req$$.webhookRegistration=$key$$;$next$$()});$app$$.use($basePath$$,this.router);console.log(`[WebhookManager] Attached webhook router to base path: ${$basePath$$}`)}_hasRouteHandler($path$$,
4
- $httpMethod$$){const $fullPath$$=$path$$.startsWith("/")?$path$$:"/"+$path$$,$method$$=$httpMethod$$.toLowerCase();return this.router.stack.some($layer$$=>$layer$$.route&&$layer$$.route.path===$fullPath$$&&$layer$$.route.methods[$method$$])}async registerWebhook($fullPath$jscomp$1_path$$,$dataMethod_httpMethod$$,$flowId$$,$nodeId$$,$flowInstanceId$$,$verificationConfig$$=null,$appSecret_verificationMethod$$=null){$fullPath$jscomp$1_path$$=`/${$flowInstanceId$$}${$fullPath$jscomp$1_path$$.startsWith("/")?
5
- $fullPath$jscomp$1_path$$:"/"+$fullPath$jscomp$1_path$$}`;$dataMethod_httpMethod$$=$dataMethod_httpMethod$$.toLowerCase();var $dataKey_verificationRegistration$$=`${$dataMethod_httpMethod$$}:${$fullPath$jscomp$1_path$$}`,$dataRegistration_verificationHandler$$=this.registeredWebhooks.get($dataKey_verificationRegistration$$);if(!$dataRegistration_verificationHandler$$&&(console.log(`[WebhookManager] First registration for ${$dataMethod_httpMethod$$.toUpperCase()} ${$fullPath$jscomp$1_path$$}. Creating entry.`),
6
- $dataRegistration_verificationHandler$$={info:{flowId:$flowId$$,nodeId:$nodeId$$,method:$dataMethod_httpMethod$$,path:$fullPath$jscomp$1_path$$,verificationConfig:null,appSecret:$appSecret_verificationMethod$$},activeInstances:new Set},this.registeredWebhooks.set($dataKey_verificationRegistration$$,$dataRegistration_verificationHandler$$),!this._hasRouteHandler($fullPath$jscomp$1_path$$,$dataMethod_httpMethod$$))){const $dataHandler$$=this.createWebhookHandler($dataKey_verificationRegistration$$,
7
- !1,null);this.router[$dataMethod_httpMethod$$]($fullPath$jscomp$1_path$$,$dataHandler$$);console.log(`[WebhookManager] Express route handler added for ${$dataMethod_httpMethod$$.toUpperCase()} ${$fullPath$jscomp$1_path$$}`)}$appSecret_verificationMethod$$&&($dataRegistration_verificationHandler$$.info.appSecret=$appSecret_verificationMethod$$,$dataRegistration_verificationHandler$$.info.flowId=$flowId$$,$dataRegistration_verificationHandler$$.info.nodeId=$nodeId$$);$dataRegistration_verificationHandler$$.activeInstances.add($flowInstanceId$$);
8
- console.log(`[WebhookManager] Instance ${$flowInstanceId$$} added to webhook ${$dataKey_verificationRegistration$$}. Total active: ${$dataRegistration_verificationHandler$$.activeInstances.size}`);$verificationConfig$$&&$verificationConfig$$.challengeQueryParam&&($appSecret_verificationMethod$$=($verificationConfig$$.method||"GET").toLowerCase(),$dataMethod_httpMethod$$=`${$appSecret_verificationMethod$$}:${$fullPath$jscomp$1_path$$}`,$dataKey_verificationRegistration$$=this.registeredWebhooks.get($dataMethod_httpMethod$$),
9
- $dataKey_verificationRegistration$$||(console.log(`[WebhookManager] First registration for ${$appSecret_verificationMethod$$.toUpperCase()} ${$fullPath$jscomp$1_path$$}. Creating entry.`),$dataKey_verificationRegistration$$={info:{flowId:$flowId$$,nodeId:$nodeId$$,method:$appSecret_verificationMethod$$,path:$fullPath$jscomp$1_path$$,verificationConfig:$verificationConfig$$,appSecret:null},activeInstances:new Set},this.registeredWebhooks.set($dataMethod_httpMethod$$,$dataKey_verificationRegistration$$),
10
- this._hasRouteHandler($fullPath$jscomp$1_path$$,$appSecret_verificationMethod$$)||($dataRegistration_verificationHandler$$=this.createWebhookHandler($dataMethod_httpMethod$$,!0,$verificationConfig$$),this.router[$appSecret_verificationMethod$$]($fullPath$jscomp$1_path$$,$dataRegistration_verificationHandler$$),console.log(`[WebhookManager] Express route handler added for ${$appSecret_verificationMethod$$.toUpperCase()} ${$fullPath$jscomp$1_path$$}`))),$dataKey_verificationRegistration$$.info.verificationConfig=
11
- $verificationConfig$$,$dataKey_verificationRegistration$$.info.flowId=$flowId$$,$dataKey_verificationRegistration$$.info.nodeId=$nodeId$$,$dataKey_verificationRegistration$$.activeInstances.add($flowInstanceId$$),console.log(`[WebhookManager] Instance ${$flowInstanceId$$} added to webhook ${$dataMethod_httpMethod$$}. Total active: ${$dataKey_verificationRegistration$$.activeInstances.size}`))}unregisterWebhook($fullPath$jscomp$2_path$$,$dataMethod$jscomp$1_dataRegistration$jscomp$1_httpMethod$$,$flowInstanceId$$,
12
- $dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$="GET"){$fullPath$jscomp$2_path$$=`/${$flowInstanceId$$}${$fullPath$jscomp$2_path$$.startsWith("/")?$fullPath$jscomp$2_path$$:"/"+$fullPath$jscomp$2_path$$}`;$dataMethod$jscomp$1_dataRegistration$jscomp$1_httpMethod$$=$dataMethod$jscomp$1_dataRegistration$jscomp$1_httpMethod$$.toLowerCase();const $verifyMethod$$=$dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$.toLowerCase();$dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$=
13
- `${$dataMethod$jscomp$1_dataRegistration$jscomp$1_httpMethod$$}:${$fullPath$jscomp$2_path$$}`;$fullPath$jscomp$2_path$$=`${$verifyMethod$$}:${$fullPath$jscomp$2_path$$}`;($dataMethod$jscomp$1_dataRegistration$jscomp$1_httpMethod$$=this.registeredWebhooks.get($dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$))?$dataMethod$jscomp$1_dataRegistration$jscomp$1_httpMethod$$.activeInstances.delete($flowInstanceId$$)?(console.log(`[WebhookManager] Instance ${$flowInstanceId$$} removed from webhook ${$dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$}. Remaining active: ${$dataMethod$jscomp$1_dataRegistration$jscomp$1_httpMethod$$.activeInstances.size}`),
14
- $dataMethod$jscomp$1_dataRegistration$jscomp$1_httpMethod$$.activeInstances.size===0&&(console.log(`[WebhookManager] No active instances remaining for ${$dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$}. Marking as inactive.`),this.registeredWebhooks.delete($dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$))):console.warn(`[WebhookManager] Instance ${$flowInstanceId$$} not found in active list for ${$dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$}.`):
15
- console.warn(`[WebhookManager] Cannot unregister instance ${$flowInstanceId$$} from ${$dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$}: Webhook key not found.`);($dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$=this.registeredWebhooks.get($fullPath$jscomp$2_path$$))&&$dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$.activeInstances.delete($flowInstanceId$$)&&(console.log(`[WebhookManager] Instance ${$flowInstanceId$$} removed from webhook ${$fullPath$jscomp$2_path$$}. Remaining active: ${$dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$.activeInstances.size}`),
16
- $dataKey$jscomp$1_verificationHttpMethod_verificationRegistration$$.activeInstances.size===0&&(console.log(`[WebhookManager] No active instances remaining for ${$fullPath$jscomp$2_path$$}. Marking as inactive.`),this.registeredWebhooks.delete($fullPath$jscomp$2_path$$)))}createWebhookHandler($registrationKey$$,$isVerificationHandler$$,$fixedVerificationConfig$$=null){return async($activeInstanceIds_req$$,$res$$)=>{var $registration$$=$activeInstanceIds_req$$.webhookRegistration||this.registeredWebhooks.get($registrationKey$$);
17
- if(!$registration$$||$registration$$.activeInstances.size===0)return console.warn(`[WebhookManager] Handler invoked for inactive webhook: ${$activeInstanceIds_req$$.method} ${$activeInstanceIds_req$$.path} (Key: ${$registrationKey$$})`),$res$$.status(404).send({error:"Webhook endpoint is inactive or not found."});const {nodeId:$nodeId$$,verificationConfig:$verificationConfig$$,appSecret:$appSecret$$}=$registration$$.info;var $challengeValue_currentVerificationConfig_signatureHeader$$=$fixedVerificationConfig$$||
18
- $verificationConfig$$;if($isVerificationHandler$$&&$challengeValue_currentVerificationConfig_signatureHeader$$){$registration$$=$challengeValue_currentVerificationConfig_signatureHeader$$.tokenParam;var $expectedToken_signatureHash$$=$challengeValue_currentVerificationConfig_signatureHeader$$.tokenValue;$challengeValue_currentVerificationConfig_signatureHeader$$=$activeInstanceIds_req$$.query[$challengeValue_currentVerificationConfig_signatureHeader$$.challengeQueryParam];var $expectedHash_mode$$=
19
- $activeInstanceIds_req$$.query["hub.mode"];if($challengeValue_currentVerificationConfig_signatureHeader$$===void 0||$registration$$&&$expectedHash_mode$$!=="subscribe")return console.warn(`[WebhookManager] Invalid verification request for ${$activeInstanceIds_req$$.path}. Missing params or invalid mode.`),$res$$.status(400).send("Bad Request: Invalid verification parameters.");console.log(`[WebhookManager] Handling verification for ${$activeInstanceIds_req$$.path}. Challenge=${$challengeValue_currentVerificationConfig_signatureHeader$$}, Mode=${$expectedHash_mode$$}`);
20
- if($registration$$&&$expectedToken_signatureHash$$&&$activeInstanceIds_req$$.query[$registration$$]!==$expectedToken_signatureHash$$)return console.warn(`[WebhookManager] Verification FAILED for ${$activeInstanceIds_req$$.path}: Invalid verify token.`),$res$$.status(403).send("Forbidden: Invalid verification token");console.log(`[WebhookManager] Verification OK for ${$activeInstanceIds_req$$.path}. Responding with challenge.`);return $res$$.status(200).type("text/plain").send(String($challengeValue_currentVerificationConfig_signatureHeader$$))}if($isVerificationHandler$$)return console.error(`[WebhookManager] Handler config error for ${$activeInstanceIds_req$$.method} ${$activeInstanceIds_req$$.path}. Key: ${$registrationKey$$}`),
21
- $res$$.status(500).send("Internal Server Configuration Error.");if($appSecret$$){$challengeValue_currentVerificationConfig_signatureHeader$$=$activeInstanceIds_req$$.headers["x-hub-signature-256"];const $rawBodyBuffer$$=$activeInstanceIds_req$$.rawBodyBuffer;if(!$challengeValue_currentVerificationConfig_signatureHeader$$)return $res$$.status(403).send("Forbidden: Missing request signature.");if(!$rawBodyBuffer$$)return $res$$.status(400).send("Bad Request: Could not verify signature (missing raw body).");
22
- try{$expectedToken_signatureHash$$=$challengeValue_currentVerificationConfig_signatureHeader$$.split("=")[1];if(!$expectedToken_signatureHash$$)throw Error("Invalid signature format.");$expectedHash_mode$$=crypto.createHmac("sha256",$appSecret$$).update($rawBodyBuffer$$).digest("hex");if(!crypto.timingSafeEqual(Buffer.from($expectedToken_signatureHash$$,"hex"),Buffer.from($expectedHash_mode$$,"hex")))return console.warn(`[WebhookManager] Denying request for ${$activeInstanceIds_req$$.path}: Invalid signature.`),
23
- $res$$.status(403).send("Forbidden: Invalid request signature.");console.log(`[WebhookManager] Signature VERIFIED for ${$activeInstanceIds_req$$.method} ${$activeInstanceIds_req$$.path}.`)}catch($sigError$$){return console.error(`[WebhookManager] Error verifying signature for ${$activeInstanceIds_req$$.path}:`,$sigError$$),$res$$.status(400).send("Bad Request: Could not verify signature.")}}else console.warn(`[WebhookManager] Proceeding without signature verification for ${$activeInstanceIds_req$$.path} (App Secret not configured).`);
24
- const $webhookData$$={body:$activeInstanceIds_req$$.body,query:$activeInstanceIds_req$$.query,headers:$activeInstanceIds_req$$.headers,method:$activeInstanceIds_req$$.method,path:$activeInstanceIds_req$$.path,ip:$activeInstanceIds_req$$.ip};$activeInstanceIds_req$$=Array.from($registration$$.activeInstances);if($activeInstanceIds_req$$.length>0)return console.log(`[WebhookManager] Triggering node ${$nodeId$$} in ${$activeInstanceIds_req$$.length} active instance(s) for ${$registrationKey$$}...`),
25
- $activeInstanceIds_req$$.map($instanceId$$=>this.flowEngine.triggerNodeInInstance($instanceId$$,$nodeId$$,$webhookData$$).catch($triggerError$$=>{console.error(`[WebhookManager] Error triggering node ${$nodeId$$} in instance ${$instanceId$$}:`,$triggerError$$);return{status:"rejected",instanceId:$instanceId$$,error:$triggerError$$}})),$res$$.status(200).send({status:"success",triggeredInstances:$activeInstanceIds_req$$.length});console.warn(`[WebhookManager] Received data for ${$registrationKey$$}, but no active instances found. Ignoring.`);
26
- return $res$$.status(200).send({status:"ignored",message:"No active flow instances found for this trigger."})}}getActiveWebhooks(){const $activeWebhooks$$=[];for(const [$key$$,$registration$$]of this.registeredWebhooks.entries())$registration$$.activeInstances.size>0&&$activeWebhooks$$.push({key:$key$$,...$registration$$.info,activeInstanceCount:$registration$$.activeInstances.size});return $activeWebhooks$$}}module.exports=WebhookManager;
1
+ function _0x3df3(_0x84fa91,_0x1c1d1e){const _0x253e91=_0x253e();return _0x3df3=function(_0x3df3b1,_0x4c9b5e){_0x3df3b1=_0x3df3b1-0xaa;let _0x47cc9c=_0x253e91[_0x3df3b1];if(_0x3df3['DorlHl']===undefined){var _0x626f08=function(_0x451486){const _0x35753e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3d0f0d='',_0x534b98='';for(let _0x24e5c6=0x0,_0x277d9e,_0x9a53ad,_0x2f8389=0x0;_0x9a53ad=_0x451486['charAt'](_0x2f8389++);~_0x9a53ad&&(_0x277d9e=_0x24e5c6%0x4?_0x277d9e*0x40+_0x9a53ad:_0x9a53ad,_0x24e5c6++%0x4)?_0x3d0f0d+=String['fromCharCode'](0xff&_0x277d9e>>(-0x2*_0x24e5c6&0x6)):0x0){_0x9a53ad=_0x35753e['indexOf'](_0x9a53ad);}for(let _0x2da842=0x0,_0x3a976c=_0x3d0f0d['length'];_0x2da842<_0x3a976c;_0x2da842++){_0x534b98+='%'+('00'+_0x3d0f0d['charCodeAt'](_0x2da842)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x534b98);};_0x3df3['NnpfVI']=_0x626f08,_0x84fa91=arguments,_0x3df3['DorlHl']=!![];}const _0x9cffa7=_0x253e91[0x0],_0x50d310=_0x3df3b1+_0x9cffa7,_0x25d079=_0x84fa91[_0x50d310];return!_0x25d079?(_0x47cc9c=_0x3df3['NnpfVI'](_0x47cc9c),_0x84fa91[_0x50d310]=_0x47cc9c):_0x47cc9c=_0x25d079,_0x47cc9c;},_0x3df3(_0x84fa91,_0x1c1d1e);}function _0x253e(){const _0x351be3=['vurOqKe','w1DLyMHVB2Tnyw5Hz2vYxsbezw55Aw5NihjLCxvLC3qGzM9Yia','y3j5ChrV','rer0AgW','r09rzNa','Dg9Rzw5wywX1zq','lIblzxK6ia','qMfKifjLCxvLC3q6ieLUDMfSAwqGDMvYAwzPy2f0Aw9UihbHCMfTzxrLCNmU','mtbTyG','igfKzgvKihrVihDLyMHVB2SG','l3DLyMHVB2TZ','v2vIAg9VAYbLBMrWB2LUDcbPCYbPBMfJDgL2zsbVCIbUB3qGzM91BMqU','ALLIEwS','ig5VDcbMB3vUzcbPBIbHy3rPDMuGBgLZDcbMB3iG','Ec1ODwiTC2LNBMf0DxjLlti1nG','twLHCgq','Dg9mB3DLCKnHC2u','CMvQzwn0zwq','nJu3nJbKsKzWs2S','CxvLCNK','C2HHmJu2','r21ArLO','lIbdCMvHDgLUzYbLBNrYEs4','BKXRvNG','ofDPsfriqW','s1L0Bw8','Au5MCfG','igzYB20G','B0f2ENe','ze9MtuS','Dgv4Dc9WBgfPBG','CMf3qM9KEuj1zMzLCG','w1DLyMHVB2Tnyw5Hz2vYxsbbDhrHy2HLzcb3zwjOB29RihjVDxrLCIb0BYbIyxnLihbHDgG6ia','icHbChaGu2vJCMv0ig5VDcbJB25MAwD1CMvKks4','C3bSAxq','w1DLyMHVB2Tnyw5Hz2vYxsbjBNzHBgLKihzLCMLMAwnHDgLVBIbYzxf1zxn0igzVCIa','lIbuB3rHBcbHy3rPDMu6ia','z2v0qwn0AxzLv2vIAg9VA3m','zxjYB3i','AhvIlM1Vzgu','vgzyDMO','AgvHzgvYCW','rMPmwLa','C2vUza','DgrODee','qMfKifjLCxvLC3q6ienVDwXKig5VDcb2zxjPzNKGC2LNBMf0DxjLicHTAxnZAw5NihjHDYbIB2r5ks4','w1DLyMHVB2Tnyw5Hz2vYxsbjBNn0yw5Jzsa','ywn0AxzLsw5ZDgfUy2vZ','mZm0nZC5uKHQBwHT','Bwv0Ag9K','mvrNDMnvBG','D2fYBG','lIbdAgfSBgvUz2u9','z2v0','CNflwLa','qMfKifjLCxvLC3q6ienVDwXKig5VDcb2zxjPzNKGC2LNBMf0DxjLlG','y2HHBgXLBMDLuxvLCNLqyxjHBq','yvrUyNe','zMXVD0LK','CKPjvwu','wgTwthG','Dg9vChbLCKnHC2u','Aw5MBW','s3H4zuS','lIbszxnWB25KAw5NihDPDgGGy2HHBgXLBMDLlG','x2HHC1jVDxrLsgfUzgXLCG','DMvYAwzPy2f0Aw9Uq29UzMLN','DxHWyxO','rhvoDw4','Aw1xy3a','tfLyt04','zMXVD0vUz2LUzq','rfrqu0i','D2vIAg9VA1jLz2LZDhjHDgLVBG','v1btr1q','ru1stuC','igLUigLUC3rHBMnLia','veTfB0K','Ce5KELi','ue1mvvm','Dw5YzwDPC3rLCLDLyMHVB2S','oIbxzwjOB29RigTLEsbUB3qGzM91BMqU','y3jLyxrLv2vIAg9VA0HHBMrSzxi','w1DLyMHVB2Tnyw5Hz2vYxsbuCMLNz2vYAw5Nig5VzguG','ndCYmdiZmfr6C05Rzq','w1DLyMHVB2Tnyw5Hz2vYxsbdyw5UB3qGDw5YzwDPC3rLCIbPBNn0yw5Jzsa','vhHjt0K','otCXnJG1BLjRBKTj','DhjPz2DLCK5VzgvjBKLUC3rHBMnL','zxHWCMvZCW','zgvSzxrL','mtu5mZmWwwTequjj','yKvnyMm','EhPeAMO','EgTKD3i','lIbszw1HAw5PBMCGywn0AxzLoIa','y0HhB3y','v2vIAg9VA01HBMfNzxiGCMvXDwLYzxmGysbgBg93rw5NAw5LigLUC3rHBMnLlG','Bwv0Ag9KCW','DxjSzw5JB2rLza','tKvoA1O','C3vJy2vZCW','zeHRue4','CMvNAxn0zxjLzfDLyMHVB2TZ','sw52ywXPzcbZAwDUyxr1CMuGzM9YBwf0lG','w1DLyMHVB2Tnyw5Hz2vYxsbfCNjVCIb2zxjPzNLPBMCGC2LNBMf0DxjLigzVCIa','oIbjBNzHBgLKihnPz25HDhvYzs4','AKDoEve','zK9ysuS','BwfW','C3fcqvu','CM91Dgu','lIbnAxnZAw5NihbHCMfTCYbVCIbPBNzHBgLKig1VzguU','tMHiDu4','zfv2uei','ugDTs3u','ANnVBG','D0v4vum','Bg9N','w1DLyMHVB2Tnyw5Hz2vYxsbfEhbYzxnZihjVDxrLigHHBMrSzxiGywrKzwqGzM9Yia','mZK4otm2yNjPzufM','igLUia','v05pELm','txLdA2q','rezqz2W','BKTZDgi','w1DLyMHVB2Tnyw5Hz2vYxsbszxf1zxn0ihjLy2vPDMvKigzVCIbPBMfJDgL2zsbVCIb1BNjLz2LZDgvYzwqGD2vIAg9VAZOG','uM91DgvY','w1DLyMHVB2Tnyw5Hz2vYxsboBYbHy3rPDMuGAw5ZDgfUy2vZihjLBwfPBMLUzYbMB3iG','w1DLyMHVB2Tnyw5Hz2vYxsbiyw5KBgvYignVBMzPzYbLCNjVCIbMB3iG','C29Tzq','BwX4C00','s2vWrgK','svHRzfm','zgLNzxn0','BeXAsxG','AK9Ywu0','lcbnB2rLpq','EfHhr04','Cgf0Aa','y2zgrwO','w1DLyMHVB2Tnyw5Hz2vYxsbgAxjZDcbYzwDPC3rYyxrPB24GzM9Yia','rMLHDui','rgzJEKq','z0TYvhG','igfJDgL2zsbPBNn0yw5JzsHZksbMB3iG','CwDLzva','yxj6u3m','ChvZAa','lI4U','C2L6zq','yxr0ywnO','wNL5zeq','ru1lzK4','BuPLwxa','C2v0','DgLTAw5Nu2fMzuvXDwfS','DhrXALq','w1DLyMHVB2Tnyw5Hz2vYxsbtAwDUyxr1CMuGvKvssuzjruqGzM9Yia','oIbjBNzHBgLKihzLCMLMEsb0B2TLBI4','nteZoda2m0rczg5htW','ywrK','w1DLyMHVB2Tnyw5Hz2vYxsbiyw5KBgLUzYb2zxjPzMLJyxrPB24GzM9Yia','y29UDgvUDc10ExbL','C0D6vwW','Bu9JvNi','rM9YyMLKzgvUoIbjBNzHBgLKihjLCxvLC3qGC2LNBMf0DxjLlG','Agv4','yvLQsKq','BM9KzuLK','C3rHDhvZ','w1DLyMHVB2Tnyw5Hz2vYxsbqCM9JzwvKAw5NihDPDgHVDxqGC2LNBMf0DxjLihzLCMLMAwnHDgLVBIbMB3iG','DxnL','CM91DgvY','zNjVBq','y1bHA2W','Aw5JBhvKzxm','C3vIC2nYAwjL','BgvUz3rO','lIbnyxjRAw5NigfZigLUywn0AxzLlG','C3rHy2S','AwDUB3jLza','EvDfsLi','r0vu','v1bqvw4','rMTcs3u','C3rHCNrZv2L0Aa','zxHWB3j0CW','rM9YyMLKzgvUoIbjBNzHBgLKihzLCMLMAwnHDgLVBIb0B2TLBG','C3Lwthq','DxbKyxrL','zw50CMLLCW','yxbWBgLJyxrPB24VANnVBG'];_0x253e=function(){return _0x351be3;};return _0x253e();}const _0x2256a5=_0x3df3;(function(_0x1a7306,_0x39f6e7){const _0x152d79=_0x3df3,_0xdb5031=_0x1a7306();while(!![]){try{const _0x2fee88=parseInt(_0x152d79(0xe9))/0x1*(parseInt(_0x152d79(0x12f))/0x2)+-parseInt(_0x152d79(0xe7))/0x3+parseInt(_0x152d79(0xc9))/0x4+parseInt(_0x152d79(0x10e))/0x5+-parseInt(_0x152d79(0x112))/0x6+parseInt(_0x152d79(0x157))/0x7+-parseInt(_0x152d79(0xcf))/0x8*(parseInt(_0x152d79(0x10b))/0x9);if(_0x2fee88===_0x39f6e7)break;else _0xdb5031['push'](_0xdb5031['shift']());}catch(_0x41a937){_0xdb5031['push'](_0xdb5031['shift']());}}}(_0x253e,0x75964));const express=require(_0x2256a5(0x110)),crypto=require(_0x2256a5(0xb9));class WebhookManager{constructor(_0x353567){const _0x4e36b6=_0x2256a5,_0x3ccd4b={'xXGGN':'Bad\x20Request:\x20Could\x20not\x20verify\x20signature.','zGdhh':_0x4e36b6(0x106),'GOQfp':_0x4e36b6(0xff)};if(!_0x353567){if(_0x3ccd4b['zGdhh']!==_0x3ccd4b[_0x4e36b6(0xbb)])throw new Error(_0x4e36b6(0x118));else return _0x11af1a[_0x4e36b6(0xdd)](_0x4e36b6(0x120)+_0x24b472['path']+':',_0x298918),_0x17ae0b[_0x4e36b6(0x161)](0x190)['send'](_0x3ccd4b[_0x4e36b6(0x141)]);}this['flowEngine']=_0x353567,this[_0x4e36b6(0x11e)]=new Map(),this[_0x4e36b6(0x164)]=express[_0x4e36b6(0x136)]();}[_0x2256a5(0x14e)](_0x1accaa,_0x1fa0d8=_0x2256a5(0xc1)){const _0x3bb129=_0x2256a5,_0x174f21={'dOfMK':function(_0x207ab5,_0x287d1e){return _0x207ab5===_0x287d1e;},'anneX':function(_0x139ec8,_0x18448a){return _0x139ec8!==_0x18448a;},'imWcp':_0x3bb129(0x15c),'sqBAU':_0x3bb129(0xe1),'QRJBw':_0x3bb129(0xb6),'dHkPN':_0x3bb129(0xc2),'veqLQ':_0x3bb129(0xbf)};this[_0x3bb129(0x164)][_0x3bb129(0x163)](express[_0x3bb129(0x12b)]({'limit':_0x174f21['veqLQ'],'verify':(_0x28f8d9,_0x31b0e5,_0x261e04)=>{const _0x4e22b9=_0x3bb129,_0x57282d={'oAvzq':function(_0x1b1431,_0x1cba78){const _0x474497=_0x3df3;return _0x174f21[_0x474497(0xd4)](_0x1b1431,_0x1cba78);},'kBSoQ':_0x4e22b9(0xc2)};if(_0x174f21['anneX'](_0x174f21[_0x4e22b9(0xfc)],_0x174f21[_0x4e22b9(0x125)]))_0x261e04&&_0x261e04[_0x4e22b9(0x169)]&&_0x28f8d9[_0x4e22b9(0xe0)][_0x4e22b9(0x15a)]?.[_0x4e22b9(0x167)](_0x174f21['QRJBw'])&&(_0x28f8d9['rawBodyBuffer']=_0x261e04);else{const _0x515ebb=_0x169847[_0x4e22b9(0xe8)][_0x4e22b9(0xc7)]()+':'+_0x1353fa[_0x4e22b9(0x142)],_0x344cdc=this[_0x4e22b9(0x11e)][_0x4e22b9(0xec)](_0x515ebb);if(!_0x344cdc||_0x57282d[_0x4e22b9(0xd3)](_0x344cdc['activeInstances']['size'],0x0))return _0x268053['warn'](_0x4e22b9(0x135)+_0x423716[_0x4e22b9(0xe8)]+'\x20'+_0x1896ec['path']),_0x5c931f[_0x4e22b9(0x161)](0x194)['send']({'error':_0x57282d['kBSoQ']});_0x1b6679[_0x4e22b9(0x100)]=_0x344cdc,_0x4aad13();}}})),this[_0x3bb129(0x164)][_0x3bb129(0x163)](express[_0x3bb129(0x11a)]({'extended':!![],'limit':_0x174f21['veqLQ']})),this[_0x3bb129(0x164)][_0x3bb129(0x163)]((_0x2ea412,_0x216520,_0x20c402)=>{const _0x237f07=_0x3bb129,_0x185238=_0x2ea412[_0x237f07(0xe8)][_0x237f07(0xc7)]()+':'+_0x2ea412['path'],_0x48f314=this['registeredWebhooks'][_0x237f07(0xec)](_0x185238);if(!_0x48f314||_0x174f21[_0x237f07(0xd4)](_0x48f314[_0x237f07(0xe6)][_0x237f07(0x14d)],0x0))return console['warn'](_0x237f07(0x135)+_0x2ea412[_0x237f07(0xe8)]+'\x20'+_0x2ea412[_0x237f07(0x142)]),_0x216520[_0x237f07(0x161)](0x194)[_0x237f07(0xe2)]({'error':_0x174f21[_0x237f07(0x11d)]});_0x2ea412['webhookRegistration']=_0x48f314,_0x20c402();}),_0x1accaa[_0x3bb129(0x163)](_0x1fa0d8,this['router']),console[_0x3bb129(0x12d)](_0x3bb129(0xd7)+_0x1fa0d8);}[_0x2256a5(0xf8)](_0x581312,_0x152492){const _0x3a631f=_0x2256a5,_0x247e57={'aTnbq':function(_0x4da932,_0x1934f0){return _0x4da932+_0x1934f0;}},_0x43866f=_0x581312[_0x3a631f(0xb0)]('/')?_0x581312:_0x247e57[_0x3a631f(0xf0)]('/',_0x581312),_0x2068df=_0x152492[_0x3a631f(0xc7)]();return this[_0x3a631f(0x164)][_0x3a631f(0xaa)][_0x3a631f(0x139)](_0x4659d7=>_0x4659d7[_0x3a631f(0x126)]&&_0x4659d7[_0x3a631f(0x126)][_0x3a631f(0x142)]===_0x43866f&&_0x4659d7[_0x3a631f(0x126)][_0x3a631f(0x119)][_0x2068df]);}async['registerWebhook'](_0x2578ae,_0x4e57f1,_0x521e30,_0x488450,_0x1afa6a,_0x1a2f1a=null,_0x37d5c3=null){const _0x831d0=_0x2256a5,_0x5e9f8c={'ttqjT':_0x831d0(0xe4),'cfFEj':function(_0xa7419f,_0x4781bd){return _0xa7419f+_0x4781bd;},'FkBKu':function(_0x38061d,_0x3abff5){return _0x38061d!==_0x3abff5;},'DuNun':_0x831d0(0x166),'PgmKu':_0x831d0(0x123),'rJIUe':function(_0x216b7b,_0x1af161){return _0x216b7b===_0x1af161;},'KYtmo':_0x831d0(0x12c),'WPSGT':_0x831d0(0xdf),'nLkVx':_0x831d0(0xad)},_0x20a668='/'+_0x1afa6a+(_0x2578ae['startsWith']('/')?_0x2578ae:_0x5e9f8c[_0x831d0(0x143)]('/',_0x2578ae)),_0x593ea7=_0x4e57f1[_0x831d0(0xc7)](),_0x4b8449=_0x593ea7+':'+_0x20a668;let _0x365d0b=this[_0x831d0(0x11e)][_0x831d0(0xec)](_0x4b8449);if(!_0x365d0b){if(_0x5e9f8c[_0x831d0(0xaf)](_0x5e9f8c[_0x831d0(0xfb)],_0x5e9f8c[_0x831d0(0x12a)])){console[_0x831d0(0x12d)]('[WebhookManager]\x20First\x20registration\x20for\x20'+_0x593ea7[_0x831d0(0xf4)]()+'\x20'+_0x20a668+_0x831d0(0xcd)),_0x365d0b={'info':{'flowId':_0x521e30,'nodeId':_0x488450,'method':_0x593ea7,'path':_0x20a668,'verificationConfig':null,'appSecret':_0x37d5c3},'activeInstances':new Set()},this[_0x831d0(0x11e)][_0x831d0(0x152)](_0x4b8449,_0x365d0b);if(!this[_0x831d0(0xf8)](_0x20a668,_0x593ea7)){if(_0x5e9f8c[_0x831d0(0xf2)]('wExUC',_0x5e9f8c[_0x831d0(0xd0)])){const _0x36c855=this[_0x831d0(0x109)](_0x4b8449,![],null);this[_0x831d0(0x164)][_0x593ea7](_0x20a668,_0x36c855),console[_0x831d0(0x12d)](_0x831d0(0x12e)+_0x593ea7['toUpperCase']()+'\x20'+_0x20a668);}else{const _0x50284d=this['createWebhookHandler'](_0x11aa76,![],null);this[_0x831d0(0x164)][_0x123bc6](_0xdb5111,_0x50284d),_0x3004f1['log'](_0x831d0(0x12e)+_0x4019cb['toUpperCase']()+'\x20'+_0x21ddc7);}}}else _0x1a0ed6[_0x831d0(0xea)]('[WebhookManager]\x20Cannot\x20unregister\x20instance\x20'+_0x169f3b+_0x831d0(0xd2)+_0x2deca1+':\x20Webhook\x20key\x20not\x20found.');}if(_0x37d5c3){if(_0x5e9f8c[_0x831d0(0x101)]===_0x831d0(0xdf))_0x365d0b['info']['appSecret']=_0x37d5c3,_0x365d0b[_0x831d0(0xf5)][_0x831d0(0xf1)]=_0x521e30,_0x365d0b[_0x831d0(0xf5)][_0x831d0(0x160)]=_0x488450;else return _0x23f24c['status'](0x190)['send'](_0x5e9f8c[_0x831d0(0x154)]);}_0x365d0b[_0x831d0(0xe6)][_0x831d0(0x158)](_0x1afa6a),console[_0x831d0(0x12d)](_0x831d0(0xe5)+_0x1afa6a+_0x831d0(0xc0)+_0x4b8449+'.\x20Total\x20active:\x20'+_0x365d0b[_0x831d0(0xe6)][_0x831d0(0x14d)]);if(_0x1a2f1a&&_0x1a2f1a[_0x831d0(0xef)]){const _0x389584=(_0x1a2f1a[_0x831d0(0xe8)]||_0x5e9f8c[_0x831d0(0xce)])[_0x831d0(0xc7)](),_0x6a598a=_0x389584+':'+_0x20a668;let _0x5d251a=this[_0x831d0(0x11e)][_0x831d0(0xec)](_0x6a598a);if(!_0x5d251a){console['log']('[WebhookManager]\x20First\x20registration\x20for\x20'+_0x389584[_0x831d0(0xf4)]()+'\x20'+_0x20a668+_0x831d0(0xcd)),_0x5d251a={'info':{'flowId':_0x521e30,'nodeId':_0x488450,'method':_0x389584,'path':_0x20a668,'verificationConfig':_0x1a2f1a,'appSecret':null},'activeInstances':new Set()},this[_0x831d0(0x11e)][_0x831d0(0x152)](_0x6a598a,_0x5d251a);if(!this['_hasRouteHandler'](_0x20a668,_0x389584)){const _0x26e8f4=this[_0x831d0(0x109)](_0x6a598a,!![],_0x1a2f1a);this[_0x831d0(0x164)][_0x389584](_0x20a668,_0x26e8f4),console[_0x831d0(0x12d)](_0x831d0(0x12e)+_0x389584['toUpperCase']()+'\x20'+_0x20a668);}}_0x5d251a[_0x831d0(0xf5)][_0x831d0(0xf9)]=_0x1a2f1a,_0x5d251a['info'][_0x831d0(0xf1)]=_0x521e30,_0x5d251a['info'][_0x831d0(0x160)]=_0x488450,_0x5d251a[_0x831d0(0xe6)][_0x831d0(0x158)](_0x1afa6a),console['log'](_0x831d0(0xe5)+_0x1afa6a+_0x831d0(0xc0)+_0x6a598a+_0x831d0(0xdb)+_0x5d251a[_0x831d0(0xe6)]['size']);}}[_0x2256a5(0x107)](_0x4c3304,_0x105404,_0x1ebdd0,_0x10db0a=_0x2256a5(0xad)){const _0x27d523=_0x2256a5,_0x446807={'lLZIx':_0x27d523(0xc2),'NhHuN':_0x27d523(0xb2),'TKEoI':function(_0x53f65d,_0x46791e){return _0x53f65d===_0x46791e;},'iNfpX':_0x27d523(0x102),'XkVLx':function(_0x2711f3,_0x5b32f1){return _0x2711f3!==_0x5b32f1;},'jOrYM':'GkoYm','arzSs':_0x27d523(0x10d),'xzDjj':_0x27d523(0x146),'FiauB':_0x27d523(0x117)},_0x39f724='/'+_0x1ebdd0+(_0x4c3304[_0x27d523(0xb0)]('/')?_0x4c3304:'/'+_0x4c3304),_0x12e054=_0x105404['toLowerCase'](),_0x1fa37d=_0x10db0a[_0x27d523(0xc7)](),_0x218695=_0x12e054+':'+_0x39f724,_0x3f1f21=_0x1fa37d+':'+_0x39f724,_0x43f998=this[_0x27d523(0x11e)]['get'](_0x218695);if(_0x43f998){const _0x441567=_0x43f998[_0x27d523(0xe6)][_0x27d523(0x111)](_0x1ebdd0);if(_0x441567){console['log']('[WebhookManager]\x20Instance\x20'+_0x1ebdd0+'\x20removed\x20from\x20webhook\x20'+_0x218695+'.\x20Remaining\x20active:\x20'+_0x43f998[_0x27d523(0xe6)][_0x27d523(0x14d)]);if(_0x446807[_0x27d523(0x104)](_0x43f998[_0x27d523(0xe6)][_0x27d523(0x14d)],0x0)){if(_0x27d523(0x102)===_0x446807[_0x27d523(0xd1)])console[_0x27d523(0x12d)](_0x27d523(0x137)+_0x218695+_0x27d523(0x16a)),this[_0x27d523(0x11e)][_0x27d523(0x111)](_0x218695);else return _0x5e5d2d[_0x27d523(0xea)]('[WebhookManager]\x20Request\x20received\x20for\x20inactive\x20or\x20unregistered\x20webhook:\x20'+_0x279962[_0x27d523(0xe8)]+'\x20'+_0x690061[_0x27d523(0x142)]),_0x4576b4[_0x27d523(0x161)](0x194)['send']({'error':_0x446807[_0x27d523(0x13e)]});}}else console[_0x27d523(0xea)](_0x27d523(0xe5)+_0x1ebdd0+_0x27d523(0xc4)+_0x218695+'.');}else _0x446807[_0x27d523(0xf3)](_0x446807['jOrYM'],_0x446807[_0x27d523(0x13f)])?_0x58cd14[_0x27d523(0x14b)]({'key':_0xbc1739,..._0x56f8e5[_0x27d523(0xf5)],'activeInstanceCount':_0x4332ab['activeInstances']['size']}):console[_0x27d523(0xea)](_0x27d523(0x10c)+_0x1ebdd0+'\x20from\x20'+_0x218695+_0x27d523(0x108));const _0x368650=this[_0x27d523(0x11e)][_0x27d523(0xec)](_0x3f1f21);if(_0x368650){if(_0x446807[_0x27d523(0x104)](_0x446807[_0x27d523(0x14a)],_0x446807[_0x27d523(0x14a)])){const _0x39f718=_0x368650['activeInstances'][_0x27d523(0x111)](_0x1ebdd0);if(_0x39f718){console['log']('[WebhookManager]\x20Instance\x20'+_0x1ebdd0+'\x20removed\x20from\x20webhook\x20'+_0x3f1f21+_0x27d523(0x116)+_0x368650[_0x27d523(0xe6)][_0x27d523(0x14d)]);if(_0x368650[_0x27d523(0xe6)][_0x27d523(0x14d)]===0x0){if(_0x446807[_0x27d523(0x114)]===_0x446807[_0x27d523(0x145)])return _0x5773e3[_0x27d523(0xea)]('[WebhookManager]\x20Verification\x20FAILED\x20for\x20'+_0x4e6f20[_0x27d523(0x142)]+_0x27d523(0x156)),_0x10d9c0[_0x27d523(0x161)](0x193)[_0x27d523(0xe2)](_0x446807[_0x27d523(0x128)]);else console[_0x27d523(0x12d)](_0x27d523(0x137)+_0x3f1f21+_0x27d523(0x16a)),this['registeredWebhooks'][_0x27d523(0x111)](_0x3f1f21);}}}else{_0x2a66c1[_0x27d523(0x12d)](_0x27d523(0x144)+_0x6759cb[_0x27d523(0xf4)]()+'\x20'+_0x5ab00c+_0x27d523(0xcd)),_0xe78a26={'info':{'flowId':_0xefd87a,'nodeId':_0xa45ac6,'method':_0x19ebfb,'path':_0x4178fd,'verificationConfig':null,'appSecret':_0x5fe4a0},'activeInstances':new _0x45dc17()},this[_0x27d523(0x11e)][_0x27d523(0x152)](_0x1651b7,_0x421633);if(!this['_hasRouteHandler'](_0x41e106,_0x1a3703)){const _0x20b295=this[_0x27d523(0x109)](_0x18d16a,![],null);this[_0x27d523(0x164)][_0x381b61](_0x48578f,_0x20b295),_0x2e7021[_0x27d523(0x12d)](_0x27d523(0x12e)+_0x52ff2a['toUpperCase']()+'\x20'+_0xd33470);}}}}[_0x2256a5(0x109)](_0x31931a,_0x681bc3,_0x1b18b0=null){const _0x2118ed=_0x2256a5,_0xe83fcb={'nKstb':_0x2118ed(0xc8),'DFPgl':'Internal\x20Server\x20Configuration\x20Error.','IXkdS':function(_0xe7f897,_0xd1a1bd){return _0xe7f897===_0xd1a1bd;},'nOcPD':function(_0x1af428,_0x1d3884){return _0x1af428||_0x1d3884;},'NENkZ':function(_0x3cb485,_0x5581e5){return _0x3cb485&&_0x5581e5;},'KepDi':_0x2118ed(0xde),'MCXaw':_0x2118ed(0x168),'mlxsM':function(_0x241512,_0x5e82a0){return _0x241512!==_0x5e82a0;},'gKrTx':_0x2118ed(0xb2),'MyCkd':_0x2118ed(0xd5),'WNOzS':function(_0x5cb936,_0x113829){return _0x5cb936(_0x113829);},'piVCE':'QGkhw','EMKfN':_0x2118ed(0xbe),'jYbyk':_0x2118ed(0xb7),'tdhtA':_0x2118ed(0xc5),'jGNyQ':'Forbidden:\x20Missing\x20request\x20signature.','Fotkp':'Bad\x20Request:\x20Could\x20not\x20verify\x20signature\x20(missing\x20raw\x20body).','rqKZP':function(_0xa86953,_0x55b964){return _0xa86953===_0x55b964;},'XoQTu':'Miapd','yWEJR':_0x2118ed(0x11f),'bEMbc':_0x2118ed(0xcb),'xkdwr':_0x2118ed(0x15e),'qgeeP':_0x2118ed(0xae),'qFYdg':_0x2118ed(0x15d),'WMsym':_0x2118ed(0x129),'mJeYp':function(_0x2849a3,_0x49aab3){return _0x2849a3!==_0x49aab3;},'syVLt':_0x2118ed(0x105),'ZyydD':_0x2118ed(0x11c),'uxpaz':function(_0xddad72,_0x36911f){return _0xddad72!==_0x36911f;},'KxxeK':_0x2118ed(0xfd),'DDthl':_0x2118ed(0xab),'aYjJD':'No\x20active\x20flow\x20instances\x20found\x20for\x20this\x20trigger.'};return async(_0x115e27,_0x48342a)=>{const _0x248b44=_0x2118ed,_0x2fb842={'GmZFZ':_0xe83fcb[_0x248b44(0x133)]},_0x3ac023=_0x115e27['webhookRegistration']||this[_0x248b44(0x11e)]['get'](_0x31931a);if(!_0x3ac023||_0xe83fcb[_0x248b44(0x13c)](_0x3ac023[_0x248b44(0xe6)][_0x248b44(0x14d)],0x0))return console['warn']('[WebhookManager]\x20Handler\x20invoked\x20for\x20inactive\x20webhook:\x20'+_0x115e27[_0x248b44(0xe8)]+'\x20'+_0x115e27[_0x248b44(0x142)]+'\x20(Key:\x20'+_0x31931a+')'),_0x48342a['status'](0x194)[_0x248b44(0xe2)]({'error':_0x248b44(0xc2)});const {nodeId:_0x537fcc,verificationConfig:_0x538ef6,appSecret:_0x42fddf}=_0x3ac023['info'],_0x2f23d7=_0xe83fcb['nOcPD'](_0x1b18b0,_0x538ef6);if(_0xe83fcb[_0x248b44(0x11b)](_0x681bc3,_0x2f23d7)){const _0x1f515f=_0x2f23d7[_0x248b44(0xef)],_0x1378b0=_0x2f23d7['tokenParam'],_0x1350da=_0x2f23d7[_0x248b44(0xbc)],_0x25baa0=_0x115e27[_0x248b44(0xca)][_0x1f515f],_0x53e568=_0x115e27['query'][_0xe83fcb[_0x248b44(0x13b)]];if(_0x25baa0!==undefined&&(!_0x1378b0||_0xe83fcb[_0x248b44(0x13c)](_0x53e568,_0xe83fcb['MCXaw']))){console[_0x248b44(0x12d)](_0x248b44(0x159)+_0x115e27[_0x248b44(0x142)]+_0x248b44(0xeb)+_0x25baa0+_0x248b44(0x140)+_0x53e568);if(_0xe83fcb['NENkZ'](_0x1378b0,_0x1350da)){if(_0xe83fcb[_0x248b44(0x13a)](_0x115e27[_0x248b44(0xca)][_0x1378b0],_0x1350da))return console[_0x248b44(0xea)]('[WebhookManager]\x20Verification\x20FAILED\x20for\x20'+_0x115e27[_0x248b44(0x142)]+_0x248b44(0x156)),_0x48342a[_0x248b44(0x161)](0x193)['send'](_0xe83fcb[_0x248b44(0x147)]);}return console[_0x248b44(0x12d)]('[WebhookManager]\x20Verification\x20OK\x20for\x20'+_0x115e27['path']+_0x248b44(0xf7)),_0x48342a['status'](0xc8)['type'](_0xe83fcb[_0x248b44(0x132)])['send'](_0xe83fcb[_0x248b44(0x131)](String,_0x25baa0));}else return'QGkhw'===_0xe83fcb['piVCE']?(console[_0x248b44(0xea)](_0x248b44(0xda)+_0x115e27[_0x248b44(0x142)]+_0x248b44(0x127)),_0x48342a[_0x248b44(0x161)](0x190)[_0x248b44(0xe2)](_0xe83fcb[_0x248b44(0x150)])):(_0x383298['error']('[WebhookManager]\x20Error\x20triggering\x20node\x20'+_0x4998f1+_0x248b44(0x103)+_0x34a661+':',_0x352a8f),{'status':_0x248b44(0xc8),'instanceId':_0x5421e2,'error':_0x300356});}else{if(!_0x681bc3){if(_0xe83fcb[_0x248b44(0xc3)]!==_0xe83fcb[_0x248b44(0xc3)])return _0x417519['error']('[WebhookManager]\x20Handler\x20config\x20error\x20for\x20'+_0x86e5ef[_0x248b44(0xe8)]+'\x20'+_0x361d9b[_0x248b44(0x142)]+_0x248b44(0xbd)+_0x3e0800),_0x859ce5['status'](0x1f4)[_0x248b44(0xe2)](_0x2fb842[_0x248b44(0xcc)]);else{if(_0x42fddf){const _0x3ae061=_0x115e27[_0x248b44(0xe0)][_0xe83fcb[_0x248b44(0xe3)]],_0x45f324=_0x115e27[_0x248b44(0xd6)];if(!_0x3ae061)return _0x48342a[_0x248b44(0x161)](0x193)['send'](_0xe83fcb[_0x248b44(0x122)]);if(!_0x45f324)return _0x48342a[_0x248b44(0x161)](0x190)['send'](_0xe83fcb['Fotkp']);try{const _0x29b0b8=_0x3ae061[_0x248b44(0xd9)]('='),_0x482df0=_0x29b0b8[0x1];if(!_0x482df0){if(_0xe83fcb[_0x248b44(0xed)](_0xe83fcb['XoQTu'],_0x248b44(0xc6)))throw new Error(_0xe83fcb[_0x248b44(0xac)]);else{const _0x5051b5={'EKBzC':_0x248b44(0xc8)};_0x17b7d6[_0x248b44(0x12d)](_0x248b44(0x10a)+_0x591294+_0x248b44(0x130)+_0x476bae[_0x248b44(0x169)]+_0x248b44(0x148)+_0xa743d6+_0x248b44(0x14c));const _0x30ccb1=_0x36fce9[_0x248b44(0x124)](_0x361093=>this['flowEngine'][_0x248b44(0x10f)](_0x361093,_0x414eae,_0x5b98c2)['catch'](_0x4dbfbb=>{const _0x33b258=_0x248b44;return _0x225084[_0x33b258(0xdd)]('[WebhookManager]\x20Error\x20triggering\x20node\x20'+_0x4045a8+_0x33b258(0x103)+_0x361093+':',_0x4dbfbb),{'status':_0x5051b5['EKBzC'],'instanceId':_0x361093,'error':_0x4dbfbb};}));return _0x51eed6[_0x248b44(0x161)](0xc8)[_0x248b44(0xe2)]({'status':_0x248b44(0x11c),'triggeredInstances':_0x39e821[_0x248b44(0x169)]});}}const _0x214e0b=crypto['createHmac'](_0xe83fcb[_0x248b44(0x113)],_0x42fddf)[_0x248b44(0xb4)](_0x45f324)[_0x248b44(0x13d)](_0xe83fcb[_0x248b44(0x115)]);if(!crypto[_0x248b44(0x153)](Buffer[_0x248b44(0x165)](_0x482df0,_0xe83fcb[_0x248b44(0x115)]),Buffer[_0x248b44(0x165)](_0x214e0b,_0xe83fcb[_0x248b44(0x115)])))return _0xe83fcb[_0x248b44(0x13c)](_0xe83fcb['qgeeP'],_0xe83fcb[_0x248b44(0x149)])?(console[_0x248b44(0xea)]('[WebhookManager]\x20Denying\x20request\x20for\x20'+_0x115e27[_0x248b44(0x142)]+_0x248b44(0x121)),_0x48342a[_0x248b44(0x161)](0x193)['send'](_0xe83fcb['qFYdg'])):(_0x27e550['warn'](_0x248b44(0xb8)+_0x52e0bc[_0x248b44(0x142)]+_0x248b44(0x121)),_0x5f4be4[_0x248b44(0x161)](0x193)[_0x248b44(0xe2)](_0x248b44(0x15d)));console[_0x248b44(0x12d)](_0x248b44(0x155)+_0x115e27['method']+'\x20'+_0x115e27[_0x248b44(0x142)]+'.');}catch(_0x384096){return console[_0x248b44(0xdd)](_0x248b44(0x120)+_0x115e27['path']+':',_0x384096),_0x48342a['status'](0x190)[_0x248b44(0xe2)](_0x248b44(0xee));}}else _0xe83fcb['mlxsM'](_0x248b44(0x129),_0xe83fcb['WMsym'])?(_0xc7e6d5[_0x248b44(0x12d)]('[WebhookManager]\x20No\x20active\x20instances\x20remaining\x20for\x20'+_0x1f82d4+_0x248b44(0x16a)),this[_0x248b44(0x11e)]['delete'](_0x4e06eb)):console[_0x248b44(0xea)](_0x248b44(0x162)+_0x115e27[_0x248b44(0x142)]+_0x248b44(0xd8));const _0x5cd366={'body':_0x115e27['body'],'query':_0x115e27[_0x248b44(0xca)],'headers':_0x115e27[_0x248b44(0xe0)],'method':_0x115e27[_0x248b44(0xe8)],'path':_0x115e27[_0x248b44(0x142)],'ip':_0x115e27['ip']},_0x284eb7=Array[_0x248b44(0x165)](_0x3ac023[_0x248b44(0xe6)]);if(_0x284eb7['length']>0x0){if(_0xe83fcb[_0x248b44(0x151)](_0xe83fcb[_0x248b44(0xb3)],'cmJut')){console[_0x248b44(0x12d)](_0x248b44(0x10a)+_0x537fcc+_0x248b44(0x130)+_0x284eb7[_0x248b44(0x169)]+_0x248b44(0x148)+_0x31931a+'...');const _0x45e463=_0x284eb7[_0x248b44(0x124)](_0x304d59=>this[_0x248b44(0xfe)][_0x248b44(0x10f)](_0x304d59,_0x537fcc,_0x5cd366)['catch'](_0x403c9c=>{const _0x31bd11=_0x248b44;return console[_0x31bd11(0xdd)]('[WebhookManager]\x20Error\x20triggering\x20node\x20'+_0x537fcc+_0x31bd11(0x103)+_0x304d59+':',_0x403c9c),{'status':_0xe83fcb[_0x31bd11(0x134)],'instanceId':_0x304d59,'error':_0x403c9c};}));return _0x48342a[_0x248b44(0x161)](0xc8)[_0x248b44(0xe2)]({'status':_0xe83fcb[_0x248b44(0x14f)],'triggeredInstances':_0x284eb7[_0x248b44(0x169)]});}else _0x1d10bf[_0x248b44(0xd6)]=_0xe79bec;}else{if(_0xe83fcb[_0x248b44(0xfa)](_0xe83fcb[_0x248b44(0xf6)],_0xe83fcb[_0x248b44(0xf6)])){const _0x12cb7f=[];for(const [_0x2c0a19,_0x3f59d2]of this[_0x248b44(0x11e)][_0x248b44(0xb5)]()){_0x3f59d2[_0x248b44(0xe6)]['size']>0x0&&_0x12cb7f[_0x248b44(0x14b)]({'key':_0x2c0a19,..._0x3f59d2[_0x248b44(0xf5)],'activeInstanceCount':_0x3f59d2[_0x248b44(0xe6)][_0x248b44(0x14d)]});}return _0x12cb7f;}else return console[_0x248b44(0xea)]('[WebhookManager]\x20Received\x20data\x20for\x20'+_0x31931a+',\x20but\x20no\x20active\x20instances\x20found.\x20Ignoring.'),_0x48342a[_0x248b44(0x161)](0xc8)[_0x248b44(0xe2)]({'status':_0xe83fcb[_0x248b44(0xba)],'message':_0xe83fcb[_0x248b44(0x15f)]});}}}else return console[_0x248b44(0xdd)](_0x248b44(0x138)+_0x115e27['method']+'\x20'+_0x115e27['path']+_0x248b44(0xbd)+_0x31931a),_0x48342a[_0x248b44(0x161)](0x1f4)[_0x248b44(0xe2)](_0xe83fcb[_0x248b44(0x133)]);}};}[_0x2256a5(0xdc)](){const _0x565034=_0x2256a5,_0x54eba1={'sGzUl':function(_0x216909,_0x2bf2b7){return _0x216909>_0x2bf2b7;}},_0x40b0cd=[];for(const [_0x3cd7c1,_0x1c8771]of this[_0x565034(0x11e)][_0x565034(0xb5)]()){_0x54eba1[_0x565034(0x15b)](_0x1c8771[_0x565034(0xe6)][_0x565034(0x14d)],0x0)&&_0x40b0cd['push']({'key':_0x3cd7c1,..._0x1c8771[_0x565034(0xf5)],'activeInstanceCount':_0x1c8771[_0x565034(0xe6)][_0x565034(0x14d)]});}return _0x40b0cd;}}module[_0x2256a5(0xb1)]=WebhookManager;
@@ -1,3 +1 @@
1
- const inject=require("./nodes/inject"),debug=require("./nodes/debug"),delay=require("./nodes/delay"),email=require("./nodes/email"),_function=require("./nodes/function"),forEachItem=require("./nodes/forEachItem"),_switch=require("./nodes/switch"),httprequest=require("./nodes/httprequest"),webhook=require("./nodes/webhook"),facebook=require("./nodes/facebook"),facebooksendmessage=require("./nodes/facebookSendMessage"),facebookconversations=require("./nodes/facebookConversations"),facebookcreatepost=
2
- require("./nodes/facebookCreatePost"),aianalysis=require("./nodes/aiAnalysis"),savedata=require("./nodes/saveData"),customer=require("./nodes/customer"),report=require("./nodes/report"),data=require("./nodes/data"),event=require("./nodes/event"),pushnotification=require("./nodes/pushNotification"),zalosendmessage=require("./nodes/zaloSendMessage");
3
- module.exports={inject,debug,function:_function,foreachitem:forEachItem,switch:_switch,delay,email,httprequest,webhook,facebook,facebooksendmessage,facebookconversations,facebookcreatepost,aianalysis,savedata,customer,report,data,event,pushnotification,zalosendmessage};
1
+ function _0x16aa(){const _0x219c9e=['otqWmZK4BMfdyvHI','ndHYzMDrzg4','mJGYoxP2BwL6qq','lI9UB2rLCY9KzwXHEq','lI9UB2rLCY9JDxn0B21LCG','lI9UB2rLCY9MB3jfywnOsxrLBq','lI9UB2rLCY9LDMvUDa','lI9UB2rLCY9MywnLyM9VA0nVBNzLCNnHDgLVBNm','lI9UB2rLCY9KyxrH','mZuYodiXCgLltMvS','nty0svnerfvT','lI9UB2rLCY9ZyxzLrgf0yq','mJq2nJu4oejIAvfRDq','nJi3mw9HEfbHDW','mtK2nJmYBufsug1T','lI9UB2rLCY93zwjOB29R','lI9UB2rLCY9Kzwj1zW','lI9UB2rLCY9MDw5JDgLVBG','lI9UB2rLCY9MywnLyM9VA1nLBMrnzxnZywDL','nJnoq2nYq0K','mtmWodq0mgnzsenVuG','lI9UB2rLCY9ZD2L0y2G','nwnIs010sa','lI9UB2rLCY9YzxbVCNq','lI9UB2rLCY9ODhrWCMvXDwvZDa','mtfnthbywgy'];_0x16aa=function(){return _0x219c9e;};return _0x16aa();}const _0x3fc7d2=_0x5e3d;(function(_0x2fb9e0,_0x1f6085){const _0x3ddefa=_0x5e3d,_0x350d9b=_0x2fb9e0();while(!![]){try{const _0x1c6f40=-parseInt(_0x3ddefa(0x66))/0x1*(-parseInt(_0x3ddefa(0x74))/0x2)+-parseInt(_0x3ddefa(0x75))/0x3*(-parseInt(_0x3ddefa(0x7d))/0x4)+-parseInt(_0x3ddefa(0x6f))/0x5*(-parseInt(_0x3ddefa(0x73))/0x6)+-parseInt(_0x3ddefa(0x7c))/0x7+parseInt(_0x3ddefa(0x67))/0x8*(-parseInt(_0x3ddefa(0x6c))/0x9)+parseInt(_0x3ddefa(0x6d))/0xa+parseInt(_0x3ddefa(0x72))/0xb*(-parseInt(_0x3ddefa(0x65))/0xc);if(_0x1c6f40===_0x1f6085)break;else _0x350d9b['push'](_0x350d9b['shift']());}catch(_0x1cd913){_0x350d9b['push'](_0x350d9b['shift']());}}}(_0x16aa,0x22ebf));const inject=require('./nodes/inject'),debug=require(_0x3fc7d2(0x69)),delay=require(_0x3fc7d2(0x76)),email=require('./nodes/email'),_function=require(_0x3fc7d2(0x6a)),forEachItem=require(_0x3fc7d2(0x78)),_switch=require(_0x3fc7d2(0x6e)),httprequest=require(_0x3fc7d2(0x71)),webhook=require(_0x3fc7d2(0x68)),facebook=require('./nodes/facebook'),facebooksendmessage=require(_0x3fc7d2(0x6b)),facebookconversations=require(_0x3fc7d2(0x7a)),facebookcreatepost=require('./nodes/facebookCreatePost'),aianalysis=require('./nodes/aiAnalysis'),savedata=require(_0x3fc7d2(0x7e)),customer=require(_0x3fc7d2(0x77)),report=require(_0x3fc7d2(0x70)),data=require(_0x3fc7d2(0x7b)),event=require(_0x3fc7d2(0x79)),pushnotification=require('./nodes/pushNotification'),zalosendmessage=require('./nodes/zaloSendMessage');function _0x5e3d(_0x1c39ec,_0x2822ff){const _0x16aa3e=_0x16aa();return _0x5e3d=function(_0x5e3d55,_0x2186f3){_0x5e3d55=_0x5e3d55-0x65;let _0x73bc9f=_0x16aa3e[_0x5e3d55];if(_0x5e3d['GRwLTy']===undefined){var _0x493321=function(_0x491d79){const _0x48c5a7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x45d93b='',_0x49cf6c='';for(let _0x2749c3=0x0,_0x130376,_0x457ed3,_0x5268bc=0x0;_0x457ed3=_0x491d79['charAt'](_0x5268bc++);~_0x457ed3&&(_0x130376=_0x2749c3%0x4?_0x130376*0x40+_0x457ed3:_0x457ed3,_0x2749c3++%0x4)?_0x45d93b+=String['fromCharCode'](0xff&_0x130376>>(-0x2*_0x2749c3&0x6)):0x0){_0x457ed3=_0x48c5a7['indexOf'](_0x457ed3);}for(let _0x15d35b=0x0,_0x31c3e4=_0x45d93b['length'];_0x15d35b<_0x31c3e4;_0x15d35b++){_0x49cf6c+='%'+('00'+_0x45d93b['charCodeAt'](_0x15d35b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49cf6c);};_0x5e3d['lMcsNN']=_0x493321,_0x1c39ec=arguments,_0x5e3d['GRwLTy']=!![];}const _0x262c99=_0x16aa3e[0x0],_0x527c72=_0x5e3d55+_0x262c99,_0x93104c=_0x1c39ec[_0x527c72];return!_0x93104c?(_0x73bc9f=_0x5e3d['lMcsNN'](_0x73bc9f),_0x1c39ec[_0x527c72]=_0x73bc9f):_0x73bc9f=_0x93104c,_0x73bc9f;},_0x5e3d(_0x1c39ec,_0x2822ff);}module['exports']={'inject':inject,'debug':debug,'function':_function,'foreachitem':forEachItem,'switch':_switch,'delay':delay,'email':email,'httprequest':httprequest,'webhook':webhook,'facebook':facebook,'facebooksendmessage':facebooksendmessage,'facebookconversations':facebookconversations,'facebookcreatepost':facebookcreatepost,'aianalysis':aianalysis,'savedata':savedata,'customer':customer,'report':report,'data':data,'event':event,'pushnotification':pushnotification,'zalosendmessage':zalosendmessage};
@@ -1,9 +1 @@
1
- const {analyzeData}=require("../../libs/utils"),async=require("async"),_=require("lodash");
2
- function parseJsonReplacingOnlyQuotes($jsonStringWithEntities$$){if(typeof $jsonStringWithEntities$$!=="string")return console.error("Input must be a string."),null;let $correctedString$$=$jsonStringWithEntities$$.trim();try{return $correctedString$$.startsWith('"```json')?$correctedString$$=$correctedString$$.substring(8).trimStart():$correctedString$$.startsWith("```json")&&($correctedString$$=$correctedString$$.substring(7).trimStart()),$correctedString$$.endsWith("```")&&($correctedString$$=$correctedString$$.substring(0,
3
- $correctedString$$.length-3).trimEnd()),$correctedString$$=$correctedString$$.replace(/&quot;/g,'"'),JSON.parse($correctedString$$)}catch($error$$){return console.error("Error parsing JSON string after corrections:",$error$$),console.error("Original string:",$jsonStringWithEntities$$),console.error("Corrected string attempt:",$correctedString$$),$jsonStringWithEntities$$}}
4
- async function aiAnalysisHandler($flowState_nodeInstanceId$$,$node$$,$payload$$,$abortSignal$$){$flowState_nodeInstanceId$$=`${$flowState_nodeInstanceId$$.instanceId}-${$node$$.id}`;const $nodeLabel$$=$node$$.data?.name||$node$$.id||"AI Analysis Node";let $prompt$$=$node$$.data?.prompt,$handle_multi_line$$=$node$$.data?.handle_multi_line;if(!$payload$$||$payload$$.length==0)throw Error("Kh\u00f4ng c\u00f3 d\u1eef li\u1ec7u \u0111\u1ec3 ph\u00e2n t\u00edch");if(!$prompt$$)throw Error("Thi\u1ebfu y\u00eau c\u1ea7u ph\u00e2n t\u00edch");
5
- console.log(`[${$flowState_nodeInstanceId$$}] ${$nodeLabel$$}: Executing.`);if($abortSignal$$.aborted)throw console.log(`[${$flowState_nodeInstanceId$$}] ${$nodeLabel$$}: Aborted before execution.`),new DOMException("Aborted before AI analysis","AbortError");console.log(`[${$flowState_nodeInstanceId$$}] ${$nodeLabel$$}: Sending conversation to AI for analysis...`);try{const $analysisResults$$=await new Promise(($resolve$$,$reject$$)=>{if($handle_multi_line$$){let $conversationData$$;$conversationData$$=
6
- _.isArray($payload$$)?$payload$$:[$payload$$];async.mapSeries($conversationData$$,($data$$,$cb$$)=>{setImmediate(async()=>{try{const $analysisResult$$=await analyzeData($data$$,`${$prompt$$}`,null,"B\u1ea1n l\u00e0 m\u1ed9t tr\u1ee3 l\u00fd chuy\u00ean tr\u1ea3 l\u1eddi d\u01b0\u1edbi d\u1ea1ng JSON.");if($abortSignal$$.aborted)throw new DOMException("Aborted during/after AI analysis","AbortError");let $result$$=parseJsonReplacingOnlyQuotes($analysisResult$$.reply)||$analysisResult$$.reply;$result$$&&
7
- $result$$.length==1&&($result$$=$result$$[0]);$conversationData$$.length>10?setTimeout(()=>{$cb$$(null,$result$$)},10):$cb$$(null,$result$$)}catch($e$$){$cb$$($e$$)}})},($e$$,$rs$$)=>{if($e$$)return $reject$$($e$$);$resolve$$($rs$$)})}else setImmediate(async()=>{try{const $analysisResult$$=await analyzeData($payload$$,`${$prompt$$}`,null,"B\u1ea1n l\u00e0 m\u1ed9t tr\u1ee3 l\u00fd chuy\u00ean tr\u1ea3 l\u1eddi d\u01b0\u1edbi d\u1ea1ng JSON.");if($abortSignal$$.aborted)throw new DOMException("Aborted during/after AI analysis",
8
- "AbortError");let $result$$=parseJsonReplacingOnlyQuotes($analysisResult$$.reply)||$analysisResult$$.reply;$resolve$$($result$$)}catch($e$$){$reject$$($e$$)}})});if($abortSignal$$.aborted)throw console.log(`[${$flowState_nodeInstanceId$$}] ${$nodeLabel$$}: Aborted during/after AI analysis.`),new DOMException("Aborted during/after AI analysis","AbortError");console.log(`[${$flowState_nodeInstanceId$$}] ${$nodeLabel$$}: AI analysis successful.`);return $analysisResults$$}catch($error$$){if($error$$.name===
9
- "AbortError"||$error$$ instanceof DOMException&&$error$$.name==="AbortError")throw console.log(`[${$flowState_nodeInstanceId$$}] ${$nodeLabel$$}: AI analysis explicitly aborted.`),$error$$;console.error(`[${$flowState_nodeInstanceId$$}] ${$nodeLabel$$}: Error during AI analysis:`,$error$$);throw Error(`AI analysis failed: ${$error$$.message}`);}}module.exports=aiAnalysisHandler;
1
+ function _0xb9d6(){const _0x1ba8dd=['oIbfEgvJDxrPBMCU','ze9QCKy','mtq5odDlr1bjrfe','ygbGANnVBG','EMflBwm','otCWndrwBMHqB0i','zxjYB3i','Bg9N','q2TuCuu','ANvTC3K','BMj5Dfa','yvzuwg4','swDpq08','vhbStMG','sNv4B3i','quTwqvi','zxHWB3j0CW','EerxtNO','wK1zrKi','CMvWBgfJzq','CgfYC2u','s1v6BMW','oIbbssbHBMfSExnPCYbLEhbSAwnPDgX5igfIB3j0zwqU','ChPdyuC','we1Vzva','DhjPBq','BgT0tfC','suPvqxy','sMDQz3a','sw5WDxqGBxvZDcbIzsbHihn0CMLUzY4','vLP5vwO','EeHUtwW','vgHP4BQ/Dsb5W6P1igpHUQD1ihbOW6jUihtdRwnO','wxv5DM4','Bg9KyxnO','qwjVCNrLzcbKDxjPBMCVywz0zxiGquKGyw5HBhLZAxm','DuXSs0m','Bfvusw4','rKfHDeG','oIbtzw5KAw5NignVBNzLCNnHDgLVBIb0BYbbssbMB3iGyw5HBhLZAxmUlI4','DhjPBuvUza','r2f4te8','uhbNAfG','quKGqw5HBhLZAxmGtM9Kzq','Efj1CuW','t1bpDK0','AvbWsgm','quKGyw5HBhLZAxmGzMfPBgvKoIa','CNLiBg8','C3rHCNrZv2L0Aa','vKjws1O','vMjhs0m','oIbbyM9YDgvKigr1CMLUzY9HzNrLCIbbssbHBMfSExnPCY4','qKTrsNK','AgfUzgXLx211BhrPx2XPBMu','wgfZzMq','EKLMz3a','qUg6Ow4GBmoGig3HU5L0ihrY4BUJigZdVsbJAhv5W6PUihrY4BQJigZHU51PigtgSog7M2KGzog6Ow5NiePtt04U','C3vIC3rYAw5N','sxnhq0O','Au9Oywq','ExvyzNa','z2rXAwq','s0fsqMm','zM1lyMq','twT5s2O','wfbqyLm','r3bmsMC','qwPtww4','AK1Nq3i','ndG3mZC4neP4B0P0qW','Cg1dvfa','wKLIr0O','oIbbssbHBMfSExnPCYbZDwnJzxnZzNvSlG','yxvuy1G','rNvMD2y','C3P4shK','sNH4v0m','owHRBxn6uG','AxnbCNjHEq','CwnOuMW','BMfTzq','ANrJDfa','mte1DMflyuj3','ndK2mtKXrMfpzvb4','t0TZuui','mtCWmJyXmhv2Cu1Ryq','uNLWsgu','ygbG','CK1REMW','AvH0wum','u3zqAKm','CMjAEMm','rfnKC00','ywjVCNrLza','CgPrDNy','lI4VlI4VBgLICY91DgLSCW','yxn5BMm','DLnKCK8','t0LAzeu','uKTirxK','tezRswG','uK9NrNO','zgf0yq','BgvUz3rO','qvLHDuS','CMvWBhK','ue9lwhm','t3jPz2LUywWGC3rYAw5NoG','tfPRy2u','qwjVCNrfCNjVCG','tLrirwu','CeLMAuu','oIbfCNjVCIbKDxjPBMCGquKGyw5HBhLZAxm6','uwjIsgK','wLjJwMO','D3rpzK8','qwjVCNrLzcbIzwzVCMuGquKGyw5HBhLZAxm','DezUrxG','qM9tvva','DKXRA0O','r2Lrs3G','s2JdTg5NigpdSYbK4BUVigXP4BUhDsdeKEg7GYbWAmoIBIb0W61JAa','iMbGygPZB24','mtKYvfLJCxLK','uunIBvC','odeZmdy5sfvbEuj0','DhjPBvn0yxj0','yNfkzNG','re9dzMC','qxfns0C','wxfgCNa','q29YCMvJDgvKihn0CMLUzYbHDhrLBxb0oG','vfbYB3O','zxDdyKe','uxnireO','q1P2BfO','BwvZC2fNzq','oIbbyM9YDgvKigjLzM9YzsbLEgvJDxrPB24U','ANfrEvy','mLb3yuniDq','C2f0sNq','mJq4otKXmZHTr3nZEhi','zw5KC1DPDgG'];_0xb9d6=function(){return _0x1ba8dd;};return _0xb9d6();}function _0x4cb4(_0x35766b,_0x294c74){const _0xb9d6c5=_0xb9d6();return _0x4cb4=function(_0x4cb467,_0x294558){_0x4cb467=_0x4cb467-0x160;let _0x46ff3f=_0xb9d6c5[_0x4cb467];if(_0x4cb4['hjxuDD']===undefined){var _0x2ebcc2=function(_0x16912e){const _0x32db93='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c9a13='',_0x76dfe3='';for(let _0x1f054e=0x0,_0x5bef29,_0x286b60,_0x1403e3=0x0;_0x286b60=_0x16912e['charAt'](_0x1403e3++);~_0x286b60&&(_0x5bef29=_0x1f054e%0x4?_0x5bef29*0x40+_0x286b60:_0x286b60,_0x1f054e++%0x4)?_0x3c9a13+=String['fromCharCode'](0xff&_0x5bef29>>(-0x2*_0x1f054e&0x6)):0x0){_0x286b60=_0x32db93['indexOf'](_0x286b60);}for(let _0x317626=0x0,_0x22b64a=_0x3c9a13['length'];_0x317626<_0x22b64a;_0x317626++){_0x76dfe3+='%'+('00'+_0x3c9a13['charCodeAt'](_0x317626)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x76dfe3);};_0x4cb4['kaHfxd']=_0x2ebcc2,_0x35766b=arguments,_0x4cb4['hjxuDD']=!![];}const _0x332047=_0xb9d6c5[0x0],_0x465f15=_0x4cb467+_0x332047,_0x44d313=_0x35766b[_0x465f15];return!_0x44d313?(_0x46ff3f=_0x4cb4['kaHfxd'](_0x46ff3f),_0x35766b[_0x465f15]=_0x46ff3f):_0x46ff3f=_0x44d313,_0x46ff3f;},_0x4cb4(_0x35766b,_0x294c74);}const _0x3e295e=_0x4cb4;(function(_0x30f6d9,_0x15aa87){const _0x35565f=_0x4cb4,_0x49c6d0=_0x30f6d9();while(!![]){try{const _0x2a2890=-parseInt(_0x35565f(0x1ce))/0x1*(parseInt(_0x35565f(0x176))/0x2)+-parseInt(_0x35565f(0x168))/0x3+-parseInt(_0x35565f(0x17f))/0x4*(parseInt(_0x35565f(0x1cd))/0x5)+-parseInt(_0x35565f(0x166))/0x6*(parseInt(_0x35565f(0x17c))/0x7)+-parseInt(_0x35565f(0x1c0))/0x8+-parseInt(_0x35565f(0x1c8))/0x9*(-parseInt(_0x35565f(0x1d0))/0xa)+parseInt(_0x35565f(0x178))/0xb;if(_0x2a2890===_0x15aa87)break;else _0x49c6d0['push'](_0x49c6d0['shift']());}catch(_0x455863){_0x49c6d0['push'](_0x49c6d0['shift']());}}}(_0xb9d6,0x69313));const {analyzeData}=require(_0x3e295e(0x1da)),async=require(_0x3e295e(0x1db)),_=require(_0x3e295e(0x19c));function parseJsonReplacingOnlyQuotes(_0x50c189){const _0x1b19e7=_0x3e295e,_0x509a47={'iaoOA':function(_0x3cea68,_0x1b2543){return _0x3cea68(_0x1b2543);},'AjSYn':_0x1b19e7(0x1ef),'ROgFz':function(_0x1993f4,_0x5b5b65){return _0x1993f4!==_0x5b5b65;},'UHBPT':'string','PpghX':_0x1b19e7(0x197),'zaKmc':_0x1b19e7(0x165),'gdqid':function(_0x30a868,_0x3093e5){return _0x30a868===_0x3093e5;},'AKVAR':_0x1b19e7(0x1ea),'yuXfp':_0x1b19e7(0x1e3),'lktLW':_0x1b19e7(0x17d),'IsGCJ':_0x1b19e7(0x1d2),'wtOfO':'IHTKJ','QCbmW':function(_0x1033c0,_0x29a43c){return _0x1033c0-_0x29a43c;},'hVXtA':_0x1b19e7(0x16e)};if(_0x509a47[_0x1b19e7(0x1e0)](typeof _0x50c189,_0x509a47['UHBPT']))return console[_0x1b19e7(0x180)](_0x509a47[_0x1b19e7(0x1a4)]),null;let _0x2eb770=_0x50c189[_0x1b19e7(0x193)]();try{if(_0x2eb770[_0x1b19e7(0x1ab)](_0x509a47[_0x1b19e7(0x17e)])){if(_0x509a47[_0x1b19e7(0x1b8)](_0x509a47[_0x1b19e7(0x189)],_0x509a47[_0x1b19e7(0x1b7)])){if(_0x5767b0)return _0x509a47['iaoOA'](_0x206eeb,_0x4d4c5f);_0xc82756(_0x4b96dd);}else _0x2eb770=_0x2eb770['substring'](_0x509a47['zaKmc'][_0x1b19e7(0x1e2)])['trimStart']();}else _0x2eb770[_0x1b19e7(0x1ab)](_0x509a47[_0x1b19e7(0x194)])&&(_0x2eb770=_0x2eb770[_0x1b19e7(0x1b4)](_0x509a47[_0x1b19e7(0x194)][_0x1b19e7(0x1e2)])['trimStart']());if(_0x2eb770[_0x1b19e7(0x179)](_0x509a47[_0x1b19e7(0x1b5)])){if(_0x509a47[_0x1b19e7(0x1b8)](_0x509a47[_0x1b19e7(0x1ee)],_0x509a47[_0x1b19e7(0x1ee)]))_0x2eb770=_0x2eb770[_0x1b19e7(0x1b4)](0x0,_0x509a47[_0x1b19e7(0x167)](_0x2eb770[_0x1b19e7(0x1e2)],_0x509a47['IsGCJ'][_0x1b19e7(0x1e2)]))[_0x1b19e7(0x1a2)]();else{_0x1dce9d[_0x1b19e7(0x181)]('['+_0x383ecf+']\x20'+_0x12f717+':\x20Aborted\x20before\x20execution.');throw new _0x130bd7(_0x509a47[_0x1b19e7(0x1be)],_0x1b19e7(0x1e8));}}_0x2eb770=_0x2eb770[_0x1b19e7(0x18d)](/&quot;/g,'\x22');const _0x54e17e=JSON[_0x1b19e7(0x18e)](_0x2eb770);return _0x54e17e;}catch(_0x4b72c8){return console[_0x1b19e7(0x180)]('Error\x20parsing\x20JSON\x20string\x20after\x20corrections:',_0x4b72c8),console[_0x1b19e7(0x180)](_0x1b19e7(0x1e6),_0x50c189),console[_0x1b19e7(0x180)](_0x509a47['hVXtA'],_0x2eb770),_0x50c189;}}async function aiAnalysisHandler(_0x3f3b85,_0x18b5ff,_0x2cf7e9,_0x25e47e){const _0xb91ad4=_0x3e295e,_0x373789={'ryHlo':function(_0x4f3d17,_0x1c2e2d){return _0x4f3d17===_0x1c2e2d;},'DOCfg':_0xb91ad4(0x1e8),'bqJfx':_0xb91ad4(0x19d),'AqMKG':function(_0x4db7fc,_0x931b82){return _0x4db7fc!==_0x931b82;},'lUTIn':_0xb91ad4(0x1ed),'Juxor':_0xb91ad4(0x199),'DSdsM':function(_0x2cfa99,_0x54fd5f){return _0x2cfa99(_0x54fd5f);},'iOhad':function(_0x6a5bab,_0x431450,_0x4d30bb){return _0x6a5bab(_0x431450,_0x4d30bb);},'LZkce':function(_0x11fab8,_0x47ede1){return _0x11fab8-_0x47ede1;},'VZyUj':_0xb91ad4(0x1d2),'auTcX':'```json','ZMYFB':_0xb91ad4(0x16e),'XPPbS':_0xb91ad4(0x1d9),'QsHDJ':'wgAtY','OPOvM':function(_0x218896,_0x5805df,_0x300146,_0x1c93ab,_0x43e379){return _0x218896(_0x5805df,_0x300146,_0x1c93ab,_0x43e379);},'rMkzl':function(_0x191899,_0x25a2b7){return _0x191899==_0x25a2b7;},'Fufwf':function(_0xc935a6,_0x4f4cf,_0x23d344){return _0xc935a6(_0x4f4cf,_0x23d344);},'xRuqL':function(_0xb1499b,_0x2d39e4){return _0xb1499b(_0x2d39e4);},'vLkkJ':function(_0x36e7c7,_0xe6072a){return _0x36e7c7===_0xe6072a;},'ewCbA':_0xb91ad4(0x1bd),'tFnEx':function(_0x4bff20,_0x434803){return _0x4bff20(_0x434803);},'CkTqE':function(_0x587c2c,_0x2e1201){return _0x587c2c!==_0x2e1201;},'BKQJy':_0xb91ad4(0x1d4),'RypHe':_0xb91ad4(0x1ec),'dOjrF':_0xb91ad4(0x1ac),'KARBc':_0xb91ad4(0x1dd),'sfnNg':_0xb91ad4(0x1bf),'FAatH':'\x22```json','ZxLIG':function(_0x2d7149,_0x19a735){return _0x2d7149==_0x19a735;},'SvPjC':function(_0x4ca9f0,_0x51907c){return _0x4ca9f0!==_0x51907c;},'LFkIh':_0xb91ad4(0x1ca),'YAHgn':function(_0x39ea40,_0x1e2adf){return _0x39ea40===_0x1e2adf;},'iPDkk':_0xb91ad4(0x19e),'IgOCO':'YyScG','TplNh':'Aborted\x20before\x20AI\x20analysis','KUznl':_0xb91ad4(0x1dc),'satJt':function(_0x1a9777,_0x59ecab){return _0x1a9777===_0x59ecab;},'GiQKx':function(_0x48d3f2,_0x1ee8b4){return _0x48d3f2===_0x1ee8b4;},'POKXs':function(_0x31d0ed,_0x1dddb3){return _0x31d0ed!==_0x1dddb3;},'MkyKj':_0xb91ad4(0x1cc)},_0x4cb908=_0x3f3b85['instanceId']+'-'+_0x18b5ff['id'],_0xf9c6e3=_0x18b5ff[_0xb91ad4(0x1e1)]?.[_0xb91ad4(0x1cb)]||_0x18b5ff['id']||_0xb91ad4(0x1a5);let _0x567caa=_0x18b5ff[_0xb91ad4(0x1e1)]?.['prompt'],_0x5c48af=_0x18b5ff[_0xb91ad4(0x1e1)]?.[_0xb91ad4(0x1b0)];if(!_0x2cf7e9||_0x373789['ZxLIG'](_0x2cf7e9[_0xb91ad4(0x1e2)],0x0)){if(_0x373789[_0xb91ad4(0x1d5)](_0x373789[_0xb91ad4(0x1df)],_0x373789[_0xb91ad4(0x1df)])){if(_0x373789[_0xb91ad4(0x1aa)](_0x2d01ea['name'],_0x373789[_0xb91ad4(0x16b)])||_0x281263 instanceof _0x1e1758&&_0x373789[_0xb91ad4(0x1aa)](_0x1424d1[_0xb91ad4(0x1cb)],_0x373789['DOCfg'])){_0x12b6da['log']('['+_0x2411bd+']\x20'+_0x13f6e5+_0xb91ad4(0x190));throw _0x3d9d86;}else{_0x38b16e[_0xb91ad4(0x180)]('['+_0x4380ab+']\x20'+_0x595980+_0xb91ad4(0x1eb),_0x62ea98);throw new _0x3f2c91(_0xb91ad4(0x1a9)+_0x1c443d[_0xb91ad4(0x173)]);}}else throw new Error(_0xb91ad4(0x164));}if(!_0x567caa){if(_0x373789['YAHgn'](_0x373789['iPDkk'],_0x373789[_0xb91ad4(0x186)]))_0x12e6e2=_0x3fefd4[0x0];else throw new Error(_0xb91ad4(0x19a));}console['log']('['+_0x4cb908+']\x20'+_0xf9c6e3+_0xb91ad4(0x17a));if(_0x25e47e[_0xb91ad4(0x1d8)]){console[_0xb91ad4(0x181)]('['+_0x4cb908+']\x20'+_0xf9c6e3+_0xb91ad4(0x174));throw new DOMException(_0x373789[_0xb91ad4(0x187)],_0x373789[_0xb91ad4(0x16b)]);}console[_0xb91ad4(0x181)]('['+_0x4cb908+']\x20'+_0xf9c6e3+_0xb91ad4(0x1a1));try{const _0x11f630=await new Promise((_0x4fec09,_0x495b1e)=>{const _0x4f7928=_0xb91ad4,_0x3de49c={'pmCTP':function(_0x5385c2,_0xcf3fd4,_0x1dbe21){const _0x7024de=_0x4cb4;return _0x373789[_0x7024de(0x1b6)](_0x5385c2,_0xcf3fd4,_0x1dbe21);},'fmKbd':function(_0x1ca4b9,_0x1bc465){const _0x4ec875=_0x4cb4;return _0x373789[_0x4ec875(0x1e7)](_0x1ca4b9,_0x1bc465);},'NTHEe':_0x373789[_0x4f7928(0x198)],'jqQyV':_0x4f7928(0x165),'yQdzH':_0x373789[_0x4f7928(0x1c4)],'OKsQB':function(_0x4607f8,_0x31de6b){return _0x373789['LZkce'](_0x4607f8,_0x31de6b);},'Yuyvn':_0x4f7928(0x1d6),'TProz':_0x373789['bqJfx'],'BoSUP':_0x373789['DOCfg'],'RKHEy':function(_0xd318ca,_0xb24288){const _0x4bd4cc=_0x4f7928;return _0x373789[_0x4bd4cc(0x16c)](_0xd318ca,_0xb24288);},'iPpHc':_0x4f7928(0x18b),'YqFrp':function(_0x5e1b84,_0x43c3ac){return _0x5e1b84(_0x43c3ac);},'zIfgp':_0x373789[_0x4f7928(0x18c)],'jumsy':function(_0x585909,_0x325791){const _0x2d8121=_0x4f7928;return _0x373789[_0x2d8121(0x1aa)](_0x585909,_0x325791);},'GaxLO':_0x373789[_0x4f7928(0x1bc)],'CZvlZ':_0x373789[_0x4f7928(0x171)],'XMoeP':function(_0x57f223,_0x3bd4b3,_0x8e51cb,_0xc35ef2,_0x55ffd9){const _0x3f7ffe=_0x4f7928;return _0x373789[_0x3f7ffe(0x1a7)](_0x57f223,_0x3bd4b3,_0x8e51cb,_0xc35ef2,_0x55ffd9);},'VbGKC':function(_0x10eee0,_0x54ce91){const _0x585de8=_0x4f7928;return _0x373789[_0x585de8(0x1d3)](_0x10eee0,_0x54ce91);},'JxxWC':function(_0x4d1986,_0x406292,_0xe9a5fa){const _0x1807db=_0x4f7928;return _0x373789[_0x1807db(0x1c5)](_0x4d1986,_0x406292,_0xe9a5fa);},'xIfnN':function(_0x12b42d,_0x282c46){const _0x49a1d3=_0x4f7928;return _0x373789[_0x49a1d3(0x1a6)](_0x12b42d,_0x282c46);},'Jgjgp':function(_0x57f674,_0x58c714){return _0x373789['vLkkJ'](_0x57f674,_0x58c714);},'IJUAv':_0x373789[_0x4f7928(0x170)],'nbytP':function(_0x380914,_0x4a5dab){return _0x380914(_0x4a5dab);},'aVTXn':function(_0x5b8ee3,_0x3e111b){const _0x4112b2=_0x4f7928;return _0x373789[_0x4112b2(0x160)](_0x5b8ee3,_0x3e111b);}};if(_0x373789[_0x4f7928(0x182)](_0x373789[_0x4f7928(0x1af)],_0x373789[_0x4f7928(0x1d1)])){if(!_0x5c48af)_0x373789[_0x4f7928(0x17b)]!==_0x373789[_0x4f7928(0x17b)]?_0x3de49c[_0x4f7928(0x1c1)](_0x596395,null,_0x1459d8):_0x373789['xRuqL'](setImmediate,async()=>{const _0x3dcb3d=_0x4f7928;try{const _0x308ab7=await analyzeData(_0x2cf7e9,''+_0x567caa,null,'Bạn\x20là\x20một\x20trợ\x20lý\x20chuyên\x20trả\x20lời\x20dưới\x20dạng\x20JSON.');if(_0x25e47e['aborted']){if(_0x3de49c[_0x3dcb3d(0x19b)]===_0x3de49c[_0x3dcb3d(0x19b)])throw new DOMException(_0x3de49c[_0x3dcb3d(0x16f)],_0x3de49c[_0x3dcb3d(0x161)]);else _0x28fe28=_0x53ba1f['substring'](0x0,_0x3de49c[_0x3dcb3d(0x1ba)](_0x13c4fa['length'],_0x3de49c[_0x3dcb3d(0x1e9)][_0x3dcb3d(0x1e2)]))[_0x3dcb3d(0x1a2)]();}let _0x271588=parseJsonReplacingOnlyQuotes(_0x308ab7[_0x3dcb3d(0x1e4)])||_0x308ab7[_0x3dcb3d(0x1e4)];_0x4fec09(_0x271588);}catch(_0x451e78){if(_0x3de49c[_0x3dcb3d(0x1de)](_0x3de49c[_0x3dcb3d(0x1a8)],_0x3de49c[_0x3dcb3d(0x1a8)])){if(_0x58ec82[_0x3dcb3d(0x1ab)](_0x3de49c[_0x3dcb3d(0x175)]))_0x1af36a=_0x258c5d[_0x3dcb3d(0x1b4)](_0x3de49c[_0x3dcb3d(0x175)][_0x3dcb3d(0x1e2)])['trimStart']();else _0x6221a7[_0x3dcb3d(0x1ab)](_0x3de49c['yQdzH'])&&(_0x1adc68=_0x35afd7[_0x3dcb3d(0x1b4)](_0x3de49c['yQdzH']['length'])[_0x3dcb3d(0x169)]());_0x26b56e['endsWith'](_0x3de49c[_0x3dcb3d(0x1e9)])&&(_0x27fbf7=_0x5d9ce5['substring'](0x0,_0x3de49c[_0x3dcb3d(0x1cf)](_0x3ceccb[_0x3dcb3d(0x1e2)],_0x3dcb3d(0x1d2)[_0x3dcb3d(0x1e2)]))['trimEnd']());_0x3766dc=_0x48a497[_0x3dcb3d(0x18d)](/&quot;/g,'\x22');const _0x24522f=_0x18c1f7[_0x3dcb3d(0x18e)](_0x4231d9);return _0x24522f;}else _0x3de49c[_0x3dcb3d(0x16d)](_0x495b1e,_0x451e78);}});else{let _0x3c216f;if(!_[_0x4f7928(0x1c9)](_0x2cf7e9))_0x373789['ryHlo'](_0x373789[_0x4f7928(0x1b9)],_0x373789[_0x4f7928(0x1b9)])?_0x3c216f=[_0x2cf7e9]:_0x164c8d(null,_0x4e5e99);else{if(_0x373789[_0x4f7928(0x162)](_0x373789['sfnNg'],_0x373789['sfnNg']))_0x3c216f=_0x2cf7e9;else throw new _0x22088b(_0x4f7928(0x19a));}async['mapSeries'](_0x3c216f,(_0x4b3bb7,_0xe0ead1)=>{const _0x1a3bcd=_0x4f7928,_0x3a72df={'qWlZs':_0x373789[_0x1a3bcd(0x16a)],'aqxnj':_0x373789['DOCfg']};if(_0x373789[_0x1a3bcd(0x16c)](_0x373789[_0x1a3bcd(0x19f)],_0x373789[_0x1a3bcd(0x188)]))_0x373789[_0x1a3bcd(0x1d7)](setImmediate,async()=>{const _0x8d9d25=_0x1a3bcd,_0x4de879={'pzCaG':_0x3de49c[_0x8d9d25(0x1b2)],'Xasfd':function(_0x2ea3a1,_0x1753e4,_0x1620f2){return _0x3de49c['pmCTP'](_0x2ea3a1,_0x1753e4,_0x1620f2);}};if(_0x3de49c[_0x8d9d25(0x183)](_0x3de49c[_0x8d9d25(0x1a3)],_0x3de49c[_0x8d9d25(0x172)]))return _0xf6013[_0x8d9d25(0x180)]('Error\x20parsing\x20JSON\x20string\x20after\x20corrections:',_0x7cbec3),_0x18d53d['error']('Original\x20string:',_0x22b28d),_0x3a95f2['error'](_0x4de879[_0x8d9d25(0x191)],_0x4ae099),_0x69e126;else try{const _0x527b7a=await _0x3de49c[_0x8d9d25(0x192)](analyzeData,_0x4b3bb7,''+_0x567caa,null,_0x8d9d25(0x1b3));if(_0x25e47e[_0x8d9d25(0x1d8)])throw new DOMException(_0x3de49c[_0x8d9d25(0x16f)],_0x3de49c[_0x8d9d25(0x161)]);let _0x31cffe=_0x3de49c[_0x8d9d25(0x16d)](parseJsonReplacingOnlyQuotes,_0x527b7a['reply'])||_0x527b7a[_0x8d9d25(0x1e4)];_0x31cffe&&_0x3de49c[_0x8d9d25(0x1ad)](_0x31cffe[_0x8d9d25(0x1e2)],0x1)&&(_0x31cffe=_0x31cffe[0x0]),_0x3c216f[_0x8d9d25(0x1e2)]>0xa?setTimeout(()=>{const _0x11dc45=_0x8d9d25;_0x4de879[_0x11dc45(0x1b1)](_0xe0ead1,null,_0x31cffe);},0xa):_0x3de49c[_0x8d9d25(0x1c7)](_0xe0ead1,null,_0x31cffe);}catch(_0x359519){_0x3de49c['xIfnN'](_0xe0ead1,_0x359519);}});else throw new _0x544c56(_0x3a72df['qWlZs'],_0x3a72df['aqxnj']);},(_0x32b082,_0x208139)=>{const _0x524287=_0x4f7928;if(_0x3de49c[_0x524287(0x196)](_0x524287(0x1c6),_0x3de49c[_0x524287(0x195)]))_0x2c96ef=_0x52368b[_0x524287(0x1b4)](_0x524287(0x17d)[_0x524287(0x1e2)])[_0x524287(0x169)]();else{if(_0x32b082)return _0x3de49c[_0x524287(0x184)](_0x495b1e,_0x32b082);_0x3de49c[_0x524287(0x185)](_0x4fec09,_0x208139);}});}}else{_0x43dd21[_0x4f7928(0x181)]('['+_0x23db38+']\x20'+_0x579364+_0x4f7928(0x190));throw _0x506491;}});if(_0x25e47e[_0xb91ad4(0x1d8)]){console['log']('['+_0x4cb908+']\x20'+_0xf9c6e3+_0xb91ad4(0x1ae));throw new DOMException(_0xb91ad4(0x19d),_0x373789[_0xb91ad4(0x16b)]);}return console[_0xb91ad4(0x181)]('['+_0x4cb908+']\x20'+_0xf9c6e3+_0xb91ad4(0x1c3)),_0x11f630;}catch(_0x39ff9a){if(_0x373789['AqMKG'](_0x373789['KUznl'],_0x373789[_0xb91ad4(0x18f)]))_0x50368c=_0x5a0a6a[_0xb91ad4(0x1b4)](_0x373789[_0xb91ad4(0x1a0)][_0xb91ad4(0x1e2)])[_0xb91ad4(0x169)]();else{if(_0x373789[_0xb91ad4(0x177)](_0x39ff9a[_0xb91ad4(0x1cb)],_0x373789['DOCfg'])||_0x39ff9a instanceof DOMException&&_0x373789[_0xb91ad4(0x163)](_0x39ff9a['name'],_0x373789[_0xb91ad4(0x16b)])){if(_0x373789[_0xb91ad4(0x1e5)](_0x373789[_0xb91ad4(0x1bb)],_0xb91ad4(0x1c2))){console['log']('['+_0x4cb908+']\x20'+_0xf9c6e3+':\x20AI\x20analysis\x20explicitly\x20aborted.');throw _0x39ff9a;}else _0x2731b2=[_0x8bb7dd];}else{console[_0xb91ad4(0x180)]('['+_0x4cb908+']\x20'+_0xf9c6e3+_0xb91ad4(0x1eb),_0x39ff9a);throw new Error(_0xb91ad4(0x1a9)+_0x39ff9a[_0xb91ad4(0x173)]);}}}}module[_0x3e295e(0x18a)]=aiAnalysisHandler;