@restforgejs/platform 4.3.8 → 5.0.1

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 (193) hide show
  1. package/bin/sdf-tools.exe +0 -0
  2. package/build-info.json +2 -2
  3. package/cli/consumer-deploy.js +1 -1
  4. package/cli/consumer.js +1 -1
  5. package/generators/cli/init.js +4 -104
  6. package/generators/cli/payload/migrate.js +96 -96
  7. package/generators/cli/schema/list.js +82 -18
  8. package/generators/cli/schema/migrate.js +23 -3
  9. package/generators/lib/dbschema-kit/apply-engine.js +211 -46
  10. package/generators/lib/dbschema-kit/diff-engine.js +715 -703
  11. package/generators/lib/dbschema-kit/emitters/alter-table.js +96 -2
  12. package/generators/lib/dbschema-kit/introspect-mapper.js +9 -0
  13. package/generators/lib/migrate/backend-payload-migrator.js +221 -221
  14. package/generators/lib/migrate/field-type-resolver.js +325 -319
  15. package/generators/lib/migrate/label-generator.js +38 -38
  16. package/generators/lib/migrate/migrate-runner.js +244 -38
  17. package/generators/lib/migrate/naming.js +52 -43
  18. package/generators/lib/migrate/sql-parser.js +124 -124
  19. package/generators/lib/templates/dashboard-catalog.js +1 -1
  20. package/generators/lib/templates/db-connection-env.js +1 -1
  21. package/generators/lib/templates/dbschema-catalog.js +1 -1
  22. package/generators/lib/templates/field-validation-catalog.js +1 -1
  23. package/generators/lib/templates/mysql-template.js +1 -1
  24. package/generators/lib/templates/oracle-template.js +1 -1
  25. package/generators/lib/templates/postgres-template.js +1 -1
  26. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  27. package/generators/lib/templates/sqlite-template.js +1 -1
  28. package/integrity-manifest.json +18 -18
  29. package/node_modules/brace-expansion/index.js +1 -1
  30. package/node_modules/brace-expansion/package.json +1 -1
  31. package/node_modules/dayjs/CHANGELOG.md +7 -0
  32. package/node_modules/dayjs/README.md +12 -10
  33. package/node_modules/dayjs/dayjs.min.js +1 -1
  34. package/node_modules/dayjs/esm/constant.js +1 -1
  35. package/node_modules/dayjs/esm/plugin/duration/index.js +5 -4
  36. package/node_modules/dayjs/locale.json +1 -1
  37. package/node_modules/dayjs/package.json +2 -2
  38. package/node_modules/dayjs/plugin/duration.js +1 -1
  39. package/node_modules/tmp/lib/tmp.js +37 -7
  40. package/node_modules/tmp/package.json +4 -16
  41. package/package.json +1 -1
  42. package/scripts/verify-integrity.js +1 -1
  43. package/server.js +1 -1
  44. package/src/components/handlers/adjust_handler.js +1 -1
  45. package/src/components/handlers/audit_handler.js +1 -1
  46. package/src/components/handlers/delete_handler.js +1 -1
  47. package/src/components/handlers/export_handler.js +1 -1
  48. package/src/components/handlers/import_handler.js +1 -1
  49. package/src/components/handlers/insert_handler.js +1 -1
  50. package/src/components/handlers/update_handler.js +1 -1
  51. package/src/components/handlers/upload_handler.js +1 -1
  52. package/src/components/handlers/workflow_handler.js +1 -1
  53. package/src/components/integrations/webhook.js +1 -1
  54. package/src/consumers/baseConsumer.js +1 -1
  55. package/src/consumers/declarativeMapper.js +1 -1
  56. package/src/consumers/handlers/apiHandler.js +1 -1
  57. package/src/consumers/handlers/consoleHandler.js +1 -1
  58. package/src/consumers/handlers/databaseHandler.js +1 -1
  59. package/src/consumers/handlers/index.js +1 -1
  60. package/src/consumers/handlers/kafkaHandler.js +1 -1
  61. package/src/consumers/index.js +1 -1
  62. package/src/consumers/messageTransformer.js +1 -1
  63. package/src/consumers/validator.js +1 -1
  64. package/src/core/db/dialect/base-dialect.js +1 -1
  65. package/src/core/db/dialect/index.js +1 -1
  66. package/src/core/db/dialect/mysql-dialect.js +1 -1
  67. package/src/core/db/dialect/oracle-dialect.js +1 -1
  68. package/src/core/db/dialect/postgres-dialect.js +1 -1
  69. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  70. package/src/core/db/flatten-helper.js +1 -1
  71. package/src/core/db/query-builder-error.js +1 -1
  72. package/src/core/db/query-builder.js +1 -1
  73. package/src/core/db/relation-helper.js +1 -1
  74. package/src/core/handlers/delete_handler.js +1 -1
  75. package/src/core/handlers/insert_handler.js +1 -1
  76. package/src/core/handlers/update_handler.js +1 -1
  77. package/src/core/models/base-model.js +1 -1
  78. package/src/core/utils/cache-manager.js +1 -1
  79. package/src/core/utils/component-engine.js +1 -1
  80. package/src/core/utils/context-builder.js +1 -1
  81. package/src/core/utils/datetime-formatter.js +1 -1
  82. package/src/core/utils/datetime-parser.js +1 -1
  83. package/src/core/utils/db.js +1 -1
  84. package/src/core/utils/logger.js +1 -1
  85. package/src/core/utils/payload-loader.js +1 -1
  86. package/src/core/utils/security-checks.js +1 -1
  87. package/src/middleware/body-options.js +1 -1
  88. package/src/middleware/cors.js +1 -1
  89. package/src/middleware/idempotency.js +1 -1
  90. package/src/middleware/rate-limiter.js +1 -1
  91. package/src/middleware/request-logger.js +1 -1
  92. package/src/middleware/security-headers.js +1 -1
  93. package/src/models/base-model-mysql.js +1 -1
  94. package/src/models/base-model-oracle.js +1 -1
  95. package/src/models/base-model-sqlite.js +1 -1
  96. package/src/models/base-model.js +1 -1
  97. package/src/pro/caching/redis-client.js +1 -1
  98. package/src/pro/caching/redis-helper.js +1 -1
  99. package/src/pro/consumers/baseConsumer.js +1 -1
  100. package/src/pro/consumers/declarativeMapper.js +1 -1
  101. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  102. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  103. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  104. package/src/pro/consumers/handlers/index.js +1 -1
  105. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  106. package/src/pro/consumers/index.js +1 -1
  107. package/src/pro/consumers/messageTransformer.js +1 -1
  108. package/src/pro/consumers/validator.js +1 -1
  109. package/src/pro/database/base-model-mysql.js +1 -1
  110. package/src/pro/database/base-model-oracle.js +1 -1
  111. package/src/pro/database/base-model-sqlite.js +1 -1
  112. package/src/pro/database/db-mysql.js +1 -1
  113. package/src/pro/database/db-oracle.js +1 -1
  114. package/src/pro/database/db-sqlite.js +1 -1
  115. package/src/pro/excel/excel-generator.js +1 -1
  116. package/src/pro/excel/excel-parser.js +1 -1
  117. package/src/pro/excel/export-service.js +1 -1
  118. package/src/pro/excel/export_handler.js +1 -1
  119. package/src/pro/excel/import-service.js +1 -1
  120. package/src/pro/excel/import-validator.js +1 -1
  121. package/src/pro/excel/import_handler.js +1 -1
  122. package/src/pro/excel/upsert-builder.js +1 -1
  123. package/src/pro/idgen/idgen-routes.js +1 -1
  124. package/src/pro/integrations/lookup-resolver.js +1 -1
  125. package/src/pro/integrations/upload-handler-v2.js +1 -1
  126. package/src/pro/integrations/upload-handler.js +1 -1
  127. package/src/pro/integrations/webhook.js +1 -1
  128. package/src/pro/locking/lock-routes.js +1 -1
  129. package/src/pro/locking/resource-lock-manager.js +1 -1
  130. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  131. package/src/pro/messaging/kafkaService.js +1 -1
  132. package/src/pro/messaging/messagehubService.js +1 -1
  133. package/src/pro/messaging/rabbitmqService.js +1 -1
  134. package/src/pro/scheduler/job-manager.js +1 -1
  135. package/src/pro/scheduler/job-routes.js +1 -1
  136. package/src/pro/scheduler/job-validator.js +1 -1
  137. package/src/pro/storage/base-storage-provider.js +1 -1
  138. package/src/pro/storage/file-metadata-helper.js +1 -1
  139. package/src/pro/storage/index.js +1 -1
  140. package/src/pro/storage/local-storage-provider.js +1 -1
  141. package/src/pro/storage/s3-storage-provider.js +1 -1
  142. package/src/pro/storage/upload-cleanup-job.js +1 -1
  143. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  144. package/src/pro/storage/upload-pending-tracker.js +1 -1
  145. package/src/pro/websocket/broadcast-helper.js +1 -1
  146. package/src/pro/websocket/index.js +1 -1
  147. package/src/pro/websocket/livesync-server.js +1 -1
  148. package/src/pro/websocket/ws-broadcaster.js +1 -1
  149. package/src/services/export-service.js +1 -1
  150. package/src/services/import-service.js +1 -1
  151. package/src/services/kafkaConsumerService.js +1 -1
  152. package/src/services/kafkaService.js +1 -1
  153. package/src/services/messagehubService.js +1 -1
  154. package/src/services/rabbitmqService.js +1 -1
  155. package/src/utils/cache-invalidation-registry.js +1 -1
  156. package/src/utils/cache-manager.js +1 -1
  157. package/src/utils/component-engine.js +1 -1
  158. package/src/utils/config-extractor.js +1 -1
  159. package/src/utils/consumerLogger.js +1 -1
  160. package/src/utils/context-builder.js +1 -1
  161. package/src/utils/dashboard-helpers.js +1 -1
  162. package/src/utils/dateHelper.js +1 -1
  163. package/src/utils/datetime-formatter.js +1 -1
  164. package/src/utils/datetime-parser.js +1 -1
  165. package/src/utils/db-bootstrap.js +1 -1
  166. package/src/utils/db-mysql.js +1 -1
  167. package/src/utils/db-oracle.js +1 -1
  168. package/src/utils/db-sqlite.js +1 -1
  169. package/src/utils/db.js +1 -1
  170. package/src/utils/demo-generator.js +1 -1
  171. package/src/utils/excel-generator.js +1 -1
  172. package/src/utils/excel-parser.js +1 -1
  173. package/src/utils/file-watcher.js +1 -1
  174. package/src/utils/id-generator.js +1 -1
  175. package/src/utils/idempotency-manager.js +1 -1
  176. package/src/utils/import-validator.js +1 -1
  177. package/src/utils/license-client.js +1 -1
  178. package/src/utils/lock-manager.js +1 -1
  179. package/src/utils/logger.js +1 -1
  180. package/src/utils/lookup-resolver.js +1 -1
  181. package/src/utils/payload-loader.js +1 -1
  182. package/src/utils/processor-response.js +1 -1
  183. package/src/utils/rabbitmq.js +1 -1
  184. package/src/utils/redis-client.js +1 -1
  185. package/src/utils/redis-helper.js +1 -1
  186. package/src/utils/request-scope.js +1 -1
  187. package/src/utils/security-checks.js +1 -1
  188. package/src/utils/service-resolver.js +1 -1
  189. package/src/utils/shutdown-coordinator.js +1 -1
  190. package/src/utils/trusted-keys.js +1 -1
  191. package/src/utils/upload-handler.js +1 -1
  192. package/src/utils/upsert-builder.js +1 -1
  193. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x3798cd=a0_0x1d65;function a0_0x1d65(_0x42a6c6,_0x8f8bb5){_0x42a6c6=_0x42a6c6-0x173;const _0x4ac496=a0_0x4ac4();let _0x1d655e=_0x4ac496[_0x42a6c6];if(a0_0x1d65['UVvVWm']===undefined){var _0xd1eadd=function(_0x3232d0){const _0x3a11b6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4b19d3='',_0x313357='';for(let _0x130e39=0x0,_0x3f401b,_0x1c07d1,_0x3d285b=0x0;_0x1c07d1=_0x3232d0['charAt'](_0x3d285b++);~_0x1c07d1&&(_0x3f401b=_0x130e39%0x4?_0x3f401b*0x40+_0x1c07d1:_0x1c07d1,_0x130e39++%0x4)?_0x4b19d3+=String['fromCharCode'](0xff&_0x3f401b>>(-0x2*_0x130e39&0x6)):0x0){_0x1c07d1=_0x3a11b6['indexOf'](_0x1c07d1);}for(let _0x127bd8=0x0,_0x32454=_0x4b19d3['length'];_0x127bd8<_0x32454;_0x127bd8++){_0x313357+='%'+('00'+_0x4b19d3['charCodeAt'](_0x127bd8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x313357);};a0_0x1d65['fOcCVm']=_0xd1eadd,a0_0x1d65['bkwfgZ']={},a0_0x1d65['UVvVWm']=!![];}const _0x104bd3=_0x4ac496[0x0],_0x403660=_0x42a6c6+_0x104bd3,_0x303c6c=a0_0x1d65['bkwfgZ'][_0x403660];return!_0x303c6c?(_0x1d655e=a0_0x1d65['fOcCVm'](_0x1d655e),a0_0x1d65['bkwfgZ'][_0x403660]=_0x1d655e):_0x1d655e=_0x303c6c,_0x1d655e;}function a0_0x4ac4(){const _0x53da81=['sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','Dw5SAw5R','Aw5MBW','vvbmt0fex0rjuG','Dg9mB3DLCKnHC2u','zxH0BMfTzq','B3jPz2LUywXUyw1L','ntaXotm5mhntv2DvyW','lI9SB2DNzxi','zxHPC3rZu3LUyW','whnwB1u','ndCXmdCZnK9Xu3LsCq','mtK3ntC5nKDsChLwta','tMzKEM8','mtK0odaWouvmy3HjCG','BwvZC2fNzq','zw52','zgLZA1n0B3jHz2u','Dg9tDhjPBMC','mZy4odeXnxvjzenAwa','z2v0u3rVCMfNzq','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','ohnLC3DgwG','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','x3vWBg9HzerPCG','wwntrwq','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','swnoyNu','BwTKAxjtEw5J','Aw5JBhvKzxm','CMfUzg9TqNL0zxm','DxbSB2fKx2HHBMrSzxjFAw5PDa','ntu0ndfRvvL5BKy','DLbvD3q','Agv4','zxHWB3j0CW','mtq2mdqZovLlBw1tqW','EwfUzuO','zgvSzxrLrMLSzq','DxbSB2fKx2zPBgvFzgvSzxrLza','AgLHDM0'];a0_0x4ac4=function(){return _0x53da81;};return a0_0x4ac4();}(function(_0x20895c,_0x2bf2a1){const _0x16028b=a0_0x1d65,_0x2470ec=_0x20895c();while(!![]){try{const _0x3a4ba9=parseInt(_0x16028b(0x198))/0x1*(-parseInt(_0x16028b(0x18e))/0x2)+-parseInt(_0x16028b(0x173))/0x3+-parseInt(_0x16028b(0x184))/0x4+parseInt(_0x16028b(0x18b))/0x5+parseInt(_0x16028b(0x17f))/0x6+-parseInt(_0x16028b(0x186))/0x7+parseInt(_0x16028b(0x183))/0x8;if(_0x3a4ba9===_0x2bf2a1)break;else _0x2470ec['push'](_0x2470ec['shift']());}catch(_0x4a96ff){_0x2470ec['push'](_0x2470ec['shift']());}}}(a0_0x4ac4,0xa68e9));const multer=require('multer'),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x3798cd(0x180));class UploadHandler{constructor(){const _0x453e77=a0_0x3798cd,_0x834f2a={'IcNbu':function(_0x210405,_0x13a096){return _0x210405*_0x13a096;},'hmxAK':function(_0xbd264e,_0x50f1c7){return _0xbd264e*_0x50f1c7;}};this['_uploadDir']=null,this['maxFileSize']=_0x834f2a[_0x453e77(0x193)](_0x834f2a['hmxAK'](0xa,0x400),0x400);}get['uploadDir'](){const _0x17b764=a0_0x3798cd,_0x209658={'ajBbU':'default','yaneJ':_0x17b764(0x197),'vPUwt':'Upload\x20handler\x20initialized','YVQWv':_0x17b764(0x18d),'hiavm':_0x17b764(0x18f)};if(!this['_uploadDir']){const _0x4e96af=process[_0x17b764(0x188)]['RESTFORGE_PROJECT_NAME']||_0x209658['ajBbU'];this['_uploadDir']=process['env'][_0x17b764(0x17b)]||path['join'](__dirname,'../../temp/uploads/'+_0x4e96af);try{!fsSync['existsSync'](this[_0x17b764(0x190)])&&fsSync[_0x17b764(0x194)](this['_uploadDir'],{'recursive':!![]}),logger[_0x17b764(0x17a)]({'event':_0x209658[_0x17b764(0x174)],'dir':this[_0x17b764(0x190)]},_0x209658[_0x17b764(0x199)]);}catch(_0x97bbe9){logger['error']({'event':_0x209658['YVQWv'],'error':_0x97bbe9[_0x17b764(0x187)]},_0x209658[_0x17b764(0x177)]);}}return this['_uploadDir'];}['getStorage'](){const _0x19b944=a0_0x3798cd,_0x33577a={'ZjolZ':function(_0x3c1bf,_0x3d815c,_0x48c6b9){return _0x3c1bf(_0x3d815c,_0x48c6b9);}};return multer[_0x19b944(0x189)]({'destination':(_0x2af0f8,_0x1d213e,_0x36a269)=>{const _0x122382=_0x19b944;!fsSync[_0x122382(0x181)](this['uploadDir'])&&fsSync[_0x122382(0x194)](this['uploadDir'],{'recursive':!![]}),_0x33577a['ZjolZ'](_0x36a269,null,this['uploadDir']);},'filename':(_0x56a08b,_0x1bee24,_0x1f7ea3)=>{const _0x27a8a9=_0x19b944,_0x478e25=crypto[_0x27a8a9(0x196)](0x8)[_0x27a8a9(0x18a)](_0x27a8a9(0x19a)),_0x3bc482=Date['now'](),_0x2b7b9b=path[_0x27a8a9(0x17d)](_0x1bee24[_0x27a8a9(0x17e)]);_0x1f7ea3(null,'upload-'+_0x3bc482+'-'+_0x478e25+_0x2b7b9b);}});}['getUploadMiddleware'](){const _0x1cf3bc=a0_0x3798cd,_0x36af75={'Vzjjm':'application/vnd.ms-excel','Nfdzo':'.xlsx','GftGw':'.xls','YcSEd':function(_0x1b0dbd,_0x54e206,_0x4b6dc4){return _0x1b0dbd(_0x54e206,_0x4b6dc4);},'zYaew':function(_0x52d11c,_0x4ea008){return _0x52d11c(_0x4ea008);},'EiLZc':'file'};return _0x36af75['zYaew'](multer,{'storage':this[_0x1cf3bc(0x18c)](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x554d75,_0xc6455a,_0x22c507)=>{const _0x4d1a06=_0x1cf3bc,_0x304d05=['application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',_0x36af75['Vzjjm']],_0x526dbb=[_0x36af75[_0x4d1a06(0x185)],_0x36af75['GftGw']],_0x1342a3=path[_0x4d1a06(0x17d)](_0xc6455a[_0x4d1a06(0x17e)])[_0x4d1a06(0x17c)]();_0x304d05[_0x4d1a06(0x195)](_0xc6455a['mimetype'])&&_0x526dbb[_0x4d1a06(0x195)](_0x1342a3)?_0x36af75[_0x4d1a06(0x191)](_0x22c507,null,!![]):_0x22c507(new Error(_0x4d1a06(0x178)));}})['single'](_0x36af75['EiLZc']);}async[a0_0x3798cd(0x175)](_0x52acd1){const _0x1cb6db=a0_0x3798cd,_0x990ce6={'XsVoU':_0x1cb6db(0x192)};try{await fs[_0x1cb6db(0x179)](_0x52acd1),logger['info']({'event':_0x1cb6db(0x176),'filePath':_0x52acd1},'Uploaded\x20file\x20deleted');}catch(_0x18eb01){logger['error']({'event':'upload_file_delete_error','filePath':_0x52acd1,'error':_0x18eb01['message']},_0x990ce6[_0x1cb6db(0x182)]);}}}module[a0_0x3798cd(0x19b)]=new UploadHandler();
1
+ const a0_0x2950be=a0_0x13af;function a0_0x14d1(){const _0xcd2d91=['sxfiEMy','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','CMfUzg9TqNL0zxm','C2LUz2XL','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','mJjszhLozee','Cgf0Aa','BwvZC2fNzq','Dg9mB3DLCKnHC2u','zw52','DxbSB2fKlq','nwfbvLPKsq','CunjrNq','DxbSB2fKrgLY','nJm1ndzqD2PiqMC','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','nZeXmZGWvNvIsuHv','mta4mZG1C3HbrNzg','mJaWnJu5nvvrwwTdua','mty2nde3ogTTq0j1yG','vgXiA3u','zxH0BMfTzq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mtKYANbICgXl','zxjYB3i','ChjVBwLZzxm','AfPjugO','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','nJiWBe5uywni','B2DYsxq','BwTKAxjtEw5J','Aw5MBW','mZqWnwLnsKfOyq','B3jPz2LUywXUyw1L','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','x3vWBg9HzerPCG','mtiYndm5mMrmDMXSEG','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','lNHSC3G','vvbmt0fex0rjuG','Agv4','Dw5SAw5R','Dg9tDhjPBMC','DxbSB2fKx2HHBMrSzxjFAw5PDa','z2v0u3rVCMfNzq','u2nnCLq','DxbSB2fKx2zPBgvFzgvSzxrLza','zxHWB3j0CW'];a0_0x14d1=function(){return _0xcd2d91;};return a0_0x14d1();}(function(_0x21c899,_0x1d0cce){const _0x5402a4=a0_0x13af,_0x14ca82=_0x21c899();while(!![]){try{const _0x443a87=-parseInt(_0x5402a4(0x116))/0x1+-parseInt(_0x5402a4(0x121))/0x2*(-parseInt(_0x5402a4(0x125))/0x3)+-parseInt(_0x5402a4(0x129))/0x4+parseInt(_0x5402a4(0x140))/0x5*(-parseInt(_0x5402a4(0x118))/0x6)+parseInt(_0x5402a4(0x113))/0x7*(parseInt(_0x5402a4(0x11c))/0x8)+parseInt(_0x5402a4(0x117))/0x9+parseInt(_0x5402a4(0x115))/0xa*(parseInt(_0x5402a4(0x13a))/0xb);if(_0x443a87===_0x1d0cce)break;else _0x14ca82['push'](_0x14ca82['shift']());}catch(_0x15c574){_0x14ca82['push'](_0x14ca82['shift']());}}}(a0_0x14d1,0x3b5a3));function a0_0x13af(_0x1f1c65,_0x59d6af){_0x1f1c65=_0x1f1c65-0x111;const _0x14d1a5=a0_0x14d1();let _0x13af7b=_0x14d1a5[_0x1f1c65];if(a0_0x13af['asYoUO']===undefined){var _0x1076fe=function(_0x2da6d0){const _0x471d85='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x38506f='',_0x426907='';for(let _0x37dda2=0x0,_0x310bce,_0x25bbf8,_0x366db7=0x0;_0x25bbf8=_0x2da6d0['charAt'](_0x366db7++);~_0x25bbf8&&(_0x310bce=_0x37dda2%0x4?_0x310bce*0x40+_0x25bbf8:_0x25bbf8,_0x37dda2++%0x4)?_0x38506f+=String['fromCharCode'](0xff&_0x310bce>>(-0x2*_0x37dda2&0x6)):0x0){_0x25bbf8=_0x471d85['indexOf'](_0x25bbf8);}for(let _0x1d5bfc=0x0,_0xa5f0aa=_0x38506f['length'];_0x1d5bfc<_0xa5f0aa;_0x1d5bfc++){_0x426907+='%'+('00'+_0x38506f['charCodeAt'](_0x1d5bfc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x426907);};a0_0x13af['TFmvTQ']=_0x1076fe,a0_0x13af['PKhsad']={},a0_0x13af['asYoUO']=!![];}const _0x2e623a=_0x14d1a5[0x0],_0x5736c2=_0x1f1c65+_0x2e623a,_0x50069f=a0_0x13af['PKhsad'][_0x5736c2];return!_0x50069f?(_0x13af7b=a0_0x13af['TFmvTQ'](_0x13af7b),a0_0x13af['PKhsad'][_0x5736c2]=_0x13af7b):_0x13af7b=_0x50069f,_0x13af7b;}const multer=require('multer'),path=require(a0_0x2950be(0x13b)),crypto=require('crypto'),fs=require('fs')[a0_0x2950be(0x11e)],fsSync=require('fs'),{logger}=require('./logger');class UploadHandler{constructor(){this['_uploadDir']=null,this['maxFileSize']=0xa*0x400*0x400;}get[a0_0x2950be(0x112)](){const _0x5b6c45=a0_0x2950be,_0x98238d={'nxhxS':'default','ScMrT':_0x5b6c45(0x130)};if(!this['_uploadDir']){const _0x61bc96=process[_0x5b6c45(0x13e)][_0x5b6c45(0x11b)]||_0x98238d['nxhxS'];this[_0x5b6c45(0x128)]=process['env'][_0x5b6c45(0x12c)]||path['join'](__dirname,'../../temp/uploads/'+_0x61bc96);try{!fsSync['existsSync'](this[_0x5b6c45(0x128)])&&fsSync['mkdirSync'](this[_0x5b6c45(0x128)],{'recursive':!![]}),logger[_0x5b6c45(0x124)]({'event':_0x98238d[_0x5b6c45(0x132)],'dir':this[_0x5b6c45(0x128)]},'Upload\x20handler\x20initialized');}catch(_0x27445e){logger['error']({'event':_0x5b6c45(0x136),'error':_0x27445e[_0x5b6c45(0x13c)]},'Failed\x20to\x20initialize\x20upload\x20handler');}}return this[_0x5b6c45(0x128)];}[a0_0x2950be(0x131)](){const _0x315a9d={'hZIPj':function(_0x4aad46,_0x44b6c,_0x13fe4e){return _0x4aad46(_0x44b6c,_0x13fe4e);}};return multer['diskStorage']({'destination':(_0x16bd4f,_0x5c41ae,_0x8b4aeb)=>{const _0x5c68bd=a0_0x13af;!fsSync['existsSync'](this[_0x5c68bd(0x112)])&&fsSync[_0x5c68bd(0x123)](this['uploadDir'],{'recursive':!![]}),_0x315a9d[_0x5c68bd(0x11f)](_0x8b4aeb,null,this[_0x5c68bd(0x112)]);},'filename':(_0x3154bf,_0x4b7acc,_0x4faae2)=>{const _0x2b3d5b=a0_0x13af,_0x5345c2=crypto[_0x2b3d5b(0x137)](0x8)[_0x2b3d5b(0x12f)](_0x2b3d5b(0x12d)),_0x573959=Date['now'](),_0x3b7538=path[_0x2b3d5b(0x11a)](_0x4b7acc[_0x2b3d5b(0x126)]);_0x315a9d['hZIPj'](_0x4faae2,null,_0x2b3d5b(0x13f)+_0x573959+'-'+_0x5345c2+_0x3b7538);}});}['getUploadMiddleware'](){const _0x5a5a36=a0_0x2950be,_0xb1ad41={'IqHzf':_0x5a5a36(0x114),'AcxAq':'.xls','qCIFt':function(_0x413d92,_0x61c87f,_0x3474f8){return _0x413d92(_0x61c87f,_0x3474f8);},'QSohn':'file'};return multer({'storage':this['getStorage'](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x2956a3,_0xd7a4a7,_0x36ba10)=>{const _0x34469e=_0x5a5a36,_0x455b18=[_0xb1ad41[_0x34469e(0x135)],_0x34469e(0x120)],_0x56ba48=[_0x34469e(0x12b),_0xb1ad41['AcxAq']],_0x5218bd=path[_0x34469e(0x11a)](_0xd7a4a7[_0x34469e(0x126)])[_0x34469e(0x13d)]();_0x455b18['includes'](_0xd7a4a7['mimetype'])&&_0x56ba48['includes'](_0x5218bd)?_0xb1ad41[_0x34469e(0x111)](_0x36ba10,null,!![]):_0x36ba10(new Error('Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed'));}})[_0x5a5a36(0x138)](_0xb1ad41['QSohn']);}async['deleteFile'](_0x4babb7){const _0x4c230e=a0_0x2950be,_0x14bd57={'ogrIt':_0x4c230e(0x139),'TlHku':_0x4c230e(0x12a),'fAMet':_0x4c230e(0x127)};try{await fs[_0x4c230e(0x12e)](_0x4babb7),logger[_0x4c230e(0x124)]({'event':_0x4c230e(0x133),'filePath':_0x4babb7},_0x14bd57[_0x4c230e(0x122)]);}catch(_0x46a7f9){logger[_0x4c230e(0x11d)]({'event':_0x14bd57[_0x4c230e(0x119)],'filePath':_0x4babb7,'error':_0x46a7f9[_0x4c230e(0x13c)]},_0x14bd57['fAMet']);}}}module[a0_0x2950be(0x134)]=new UploadHandler();
@@ -1 +1 @@
1
- const a0_0x34f01a=a0_0x3c19;function a0_0x3c19(_0x1f421f,_0x5a2e63){_0x1f421f=_0x1f421f-0x12e;const _0x27d0d6=a0_0x27d0();let _0x3c1901=_0x27d0d6[_0x1f421f];if(a0_0x3c19['bOWIJS']===undefined){var _0x12d950=function(_0x5d9ab9){const _0x1bf616='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xcfdd22='',_0x446993='';for(let _0x5559a9=0x0,_0x621cc2,_0x5e165c,_0x5e96db=0x0;_0x5e165c=_0x5d9ab9['charAt'](_0x5e96db++);~_0x5e165c&&(_0x621cc2=_0x5559a9%0x4?_0x621cc2*0x40+_0x5e165c:_0x5e165c,_0x5559a9++%0x4)?_0xcfdd22+=String['fromCharCode'](0xff&_0x621cc2>>(-0x2*_0x5559a9&0x6)):0x0){_0x5e165c=_0x1bf616['indexOf'](_0x5e165c);}for(let _0xa619d5=0x0,_0x449cc8=_0xcfdd22['length'];_0xa619d5<_0x449cc8;_0xa619d5++){_0x446993+='%'+('00'+_0xcfdd22['charCodeAt'](_0xa619d5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x446993);};a0_0x3c19['AgmsPG']=_0x12d950,a0_0x3c19['xHwMwy']={},a0_0x3c19['bOWIJS']=!![];}const _0x58550c=_0x27d0d6[0x0],_0x2e86c2=_0x1f421f+_0x58550c,_0x44227a=a0_0x3c19['xHwMwy'][_0x2e86c2];return!_0x44227a?(_0x3c1901=a0_0x3c19['AgmsPG'](_0x3c1901),a0_0x3c19['xHwMwy'][_0x2e86c2]=_0x3c1901):_0x3c1901=_0x44227a,_0x3c1901;}(function(_0x3ed8c2,_0x590347){const _0x38ebc3=a0_0x3c19,_0x383360=_0x3ed8c2();while(!![]){try{const _0x44b731=parseInt(_0x38ebc3(0x184))/0x1+parseInt(_0x38ebc3(0x174))/0x2+parseInt(_0x38ebc3(0x151))/0x3*(-parseInt(_0x38ebc3(0x14a))/0x4)+-parseInt(_0x38ebc3(0x173))/0x5*(parseInt(_0x38ebc3(0x175))/0x6)+parseInt(_0x38ebc3(0x167))/0x7*(-parseInt(_0x38ebc3(0x16b))/0x8)+-parseInt(_0x38ebc3(0x189))/0x9*(-parseInt(_0x38ebc3(0x154))/0xa)+parseInt(_0x38ebc3(0x183))/0xb;if(_0x44b731===_0x590347)break;else _0x383360['push'](_0x383360['shift']());}catch(_0x2bfcfb){_0x383360['push'](_0x383360['shift']());}}}(a0_0x27d0,0xc204a));function a0_0x27d0(){const _0x25c686=['m0X4Cu5ruG','qNbUB2e','kqOGicaGicbxsevsrsa','mtb6yLPpv3O','B3jHy2XL','yvzIzKy','yMPctNu','ieforca','EevTzNe','t1jbq0Xf','Cg9ZDgDYzxnXBa','BxLZCwW','sMjht20','Aw52ywXPzf9KyL90ExbL','ExzYreq','ieftierbveuP','Dwj4u2e','oJPct09mrufo','yMf0y2HFAw5Zzxj0x2j1AwX0','rM1AzwW','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','lcaNwvLzws1nts1ercCP','n21czuvUuW','ENz3Ewe','lIbgywXSAw5NigjHy2SGDg8GCg9ZDgDYzxnXBc4','D2fYBG','mti1nJCXnZzmvwLtvuC','BNvTyMvY','zMLSDgvY','ksbwquXvrvmGka','D1LSv0K','cIaGica','BwfW','yMfmvMW','mZmYnJuWr0HUyKLq','mtG3nJu0mhzpv0TYzG','mtmYELrQthH2','cIaGicaGicKGDGOGicaGicbptIaO','yNvPBgrcyxrJAeLUC2vYDa','BgvUz3rO','wuzKD20','su5trvjuiefmtaO','zM9YBwf0rgf0zvzHBhvL','zgf0zq','CMvWBgfJzq','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','ieftiejjvcK','DMfSDwvZ','suTbuNi','tvLtuuW','mJi0mZuWodnkELfQCMW','mta5mte5BK5hqujr','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','BLbXwvq','DhLWzq','tLvmta','mteWmti5mdrXvxf0CNe','yMf0y2HFDxbKyxrLx2j1AwX0','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','C3rYAw5N','vxLRsM8','laOGicaGicaGia','kqOGicaGicbwquXvrvmG','id0GDI4','icbjtLrpia','u1fmu0vsvKvs','ieftihqkicaGicaGu0vuia','yNvPBgrfC2nHCgvgDw5JDgLVBG','cIaGicaGie1fuKDfieLove8G','r3jkq3u','zgvIDwC','qMnOuLC','ihqkicaGicaGvvnjtKCGkaO','rujcwuC','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','u1fmsvrf','tLvmtdO6refurq','z2v0rgf0ywjHC2vuExbL','cIaGicaGicKGqvmGDIG','laOGicaGicaGica','zxn4Ege','zM9YBwf0qM9VBgvHBLzHBhvL','Dg9mB3DLCKnHC2u','yM9VBgvHBG','mtKYntm3mK5frND0Da','AM9PBG','qMryvfu','ELjWsgW','zwvmEva','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHnEvnrtcbptIbevvbmsunbveuGs0vzkq','Aw5JBhvKzxm'];a0_0x27d0=function(){return _0x25c686;};return a0_0x27d0();}const {logger}=require('./logger'),DB_TYPES={'POSTGRESQL':'postgresql','MYSQL':'mysql','SQLSERVER':'sqlserver','ORACLE':a0_0x34f01a(0x155),'SQLITE':'sqlite'};class UpsertBuilder{[a0_0x34f01a(0x143)](){const _0x5d0806=a0_0x34f01a,_0x26ca19={'oAmvf':'postgresql','UykJo':_0x5d0806(0x15e)},_0x8d8eba=(process['env']['DB_TYPE']||_0x26ca19['oAmvf'])[_0x5d0806(0x148)](),_0x16844e=Object[_0x5d0806(0x180)](DB_TYPES);if(!_0x16844e[_0x5d0806(0x150)](_0x8d8eba))return logger['warn']({'event':_0x26ca19[_0x5d0806(0x132)],'provided':_0x8d8eba,'fallback':_0x26ca19['oAmvf']},'Invalid\x20DB_TYPE:\x20'+_0x8d8eba+_0x5d0806(0x169)),DB_TYPES['POSTGRESQL'];return _0x8d8eba;}['formatDateValue'](_0x2a4582,_0x150c60,_0x36b094=![]){const _0x33b22b=a0_0x34f01a,_0x27d2be={'bjBNu':'NULL'};if(_0x36b094)switch(_0x150c60){case DB_TYPES['POSTGRESQL']:return _0x33b22b(0x142);case DB_TYPES['MYSQL']:return _0x33b22b(0x188);case DB_TYPES[_0x33b22b(0x141)]:return _0x33b22b(0x188);case DB_TYPES[_0x33b22b(0x137)]:return _0x27d2be[_0x33b22b(0x157)];case DB_TYPES['ORACLE']:return _0x27d2be[_0x33b22b(0x157)];default:return _0x33b22b(0x142);}switch(_0x150c60){case DB_TYPES['POSTGRESQL']:return _0x2a4582+'::DATE';case DB_TYPES[_0x33b22b(0x182)]:return _0x2a4582;case DB_TYPES[_0x33b22b(0x141)]:return _0x2a4582;case DB_TYPES[_0x33b22b(0x137)]:return'CAST('+_0x2a4582+_0x33b22b(0x160);case DB_TYPES['ORACLE']:return'TO_DATE('+_0x2a4582+_0x33b22b(0x166);default:return _0x2a4582+'::DATE';}}['formatBooleanValue'](_0x354e19,_0x128657,_0x1e1188=![]){const _0xf0c8b2=a0_0x34f01a;if(_0x1e1188)switch(_0x128657){case DB_TYPES['POSTGRESQL']:return'NULL::BOOLEAN';default:return _0xf0c8b2(0x188);}switch(_0x128657){case DB_TYPES['POSTGRESQL']:return _0x354e19+_0xf0c8b2(0x162);case DB_TYPES['ORACLE']:return _0x354e19;case DB_TYPES[_0xf0c8b2(0x182)]:return _0x354e19;case DB_TYPES['SQLITE']:return _0x354e19;case DB_TYPES['SQLSERVER']:return'CAST('+_0x354e19+_0xf0c8b2(0x17f);default:return _0x354e19+_0xf0c8b2(0x162);}}[a0_0x34f01a(0x139)](_0x1f5f30={}){const _0x2d42d7=a0_0x34f01a,_0x264cb0={'IKARr':function(_0x5d42cc,_0xeb1c3e){return _0x5d42cc===_0xeb1c3e;},'xEmfq':function(_0x463d39,_0x4b288e){return _0x463d39===_0x4b288e;},'Xamap':'NULL','BchRW':function(_0x57d93f,_0x4a4f88){return _0x57d93f===_0x4a4f88;},'dkrGm':_0x2d42d7(0x131),'nPqYT':function(_0x5469a8,_0xaac2c3){return _0x5469a8===_0xaac2c3;},'XOlKC':_0x2d42d7(0x17c),'CfIZj':function(_0x360db8,_0x5a48ba){return _0x360db8===_0x5a48ba;},'eeLyP':_0x2d42d7(0x149),'EBBYG':function(_0x503b3f,_0x2853d7){return _0x503b3f===_0x2853d7;},'aJIPr':function(_0x167654,_0x487c7c){return _0x167654(_0x487c7c);},'zRpHl':function(_0x5e0d0c,_0x161cc7){return _0x5e0d0c===_0x161cc7;}},_0x309b74=this[_0x2d42d7(0x143)]();return(_0x230aa0,_0x418a73)=>{const _0x2b8466=_0x2d42d7,_0x3a3104=_0x1f5f30[_0x418a73];if(_0x264cb0['IKARr'](_0x230aa0,null)||_0x264cb0[_0x2b8466(0x181)](_0x230aa0,undefined)){if(_0x3a3104&&_0x264cb0['xEmfq'](_0x3a3104['type'],_0x2b8466(0x17c)))return this[_0x2b8466(0x17b)](null,_0x309b74,!![]);if(_0x3a3104&&_0x264cb0[_0x2b8466(0x159)](_0x3a3104[_0x2b8466(0x187)],'boolean'))return this['formatBooleanValue'](null,_0x309b74,!![]);return _0x264cb0['Xamap'];}if(_0x264cb0[_0x2b8466(0x13d)](typeof _0x230aa0,_0x264cb0['dkrGm'])){const _0x22678b='\x27'+_0x230aa0[_0x2b8466(0x17d)](/'/g,'\x27\x27')+'\x27';if(_0x3a3104&&_0x264cb0[_0x2b8466(0x186)](_0x3a3104[_0x2b8466(0x187)],_0x264cb0['XOlKC']))return this[_0x2b8466(0x17b)](_0x22678b,_0x309b74,![]);if(_0x3a3104&&_0x264cb0['CfIZj'](_0x3a3104[_0x2b8466(0x187)],_0x264cb0[_0x2b8466(0x14e)]))return this[_0x2b8466(0x147)](_0x22678b,_0x309b74,![]);return _0x22678b;}if(typeof _0x230aa0===_0x2b8466(0x16c))return _0x230aa0;if(_0x264cb0[_0x2b8466(0x13f)](typeof _0x230aa0,_0x264cb0[_0x2b8466(0x14e)]))return _0x230aa0;const _0x4ad3b0='\x27'+_0x264cb0['aJIPr'](String,_0x230aa0)['replace'](/'/g,'\x27\x27')+'\x27';if(_0x3a3104&&_0x264cb0[_0x2b8466(0x14d)](_0x3a3104[_0x2b8466(0x187)],_0x2b8466(0x17c)))return this['formatDateValue'](_0x4ad3b0,_0x309b74,![]);return _0x4ad3b0;};}[a0_0x34f01a(0x177)](_0x506a66,_0x7784df,_0x283668,_0x29451b={}){const _0x527cbd=a0_0x34f01a,_0x4e40bb=this[_0x527cbd(0x143)]();if(_0x4e40bb===DB_TYPES[_0x527cbd(0x15a)])return this['_buildBatchInsertOracle'](_0x506a66,_0x7784df,_0x283668,_0x29451b);return this[_0x527cbd(0x17e)](_0x506a66,_0x7784df,_0x283668,_0x29451b);}['_buildBatchInsertPostgres'](_0x3786e8,_0x86f002,_0x59f0f5,_0x2ccf1f={}){const _0x12ca47=a0_0x34f01a,_0x10dd5a={'BdXTU':',\x0a\x20\x20\x20\x20\x20\x20\x20','uXoRv':_0x12ca47(0x15b)};if(_0x3786e8['length']===0x0)return{'query':null,'values':[]};const _0x12ba82=this['buildEscapeFunction'](_0x2ccf1f),_0x1ec157=_0x3786e8['map'](_0x2199aa=>{const _0x13f132=_0x12ca47,_0x5a5c94=_0x59f0f5['map'](_0x59add0=>_0x12ba82(_0x2199aa[_0x59add0],_0x59add0));return'('+_0x5a5c94[_0x13f132(0x14b)](',\x20')+')';}),_0x4468e0='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x86f002+'\x20('+_0x59f0f5['join'](',\x20')+_0x12ca47(0x134)+_0x1ec157['join'](_0x10dd5a[_0x12ca47(0x14c)])+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':'batch_insert_built','tableName':_0x86f002,'rowCount':_0x3786e8[_0x12ca47(0x178)],'dbType':_0x10dd5a['uXoRv']},'Batch\x20INSERT\x20query\x20built\x20(PostgreSQL)'),{'query':_0x4468e0,'values':[]};}['_buildBatchInsertOracle'](_0x500100,_0x28e71c,_0x4cef5f,_0x301d93={}){const _0x410062=a0_0x34f01a,_0x17d297={'GrJCu':_0x410062(0x155),'zvwya':'Batch\x20INSERT\x20query\x20built\x20(Oracle)'};if(_0x500100['length']===0x0)return{'query':null,'values':[]};const _0x492732=this[_0x410062(0x139)](_0x301d93),_0x531683=_0x500100['map'](_0x42e981=>{const _0x346bd1=_0x410062,_0xed0c02=_0x4cef5f['map'](_0x164448=>_0x492732(_0x42e981[_0x164448],_0x164448));return _0x346bd1(0x136)+_0x28e71c+'\x20('+_0x4cef5f['join'](',\x20')+_0x346bd1(0x16e)+_0xed0c02['join'](',\x20')+')';}),_0x3fd071=_0x410062(0x17a)+_0x531683[_0x410062(0x14b)]('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger[_0x410062(0x13c)]({'event':_0x410062(0x163),'tableName':_0x28e71c,'rowCount':_0x500100['length'],'dbType':_0x17d297[_0x410062(0x13b)]},_0x17d297[_0x410062(0x168)]),{'query':_0x3fd071,'values':[]};}['buildBatchUpdate'](_0x5c893a,_0xcdea8b,_0x166be2,_0x55ade9,_0x104451,_0x24490e={}){const _0x2cc535=a0_0x34f01a,_0xaadfce={'YFdwm':function(_0x5bffdb,_0x355a56){return _0x5bffdb===_0x355a56;},'ubxSa':function(_0x4892aa,_0x1e7746){return _0x4892aa===_0x1e7746;}},_0x4feaba=this['getDatabaseType']();if(_0xaadfce[_0x2cc535(0x179)](_0x4feaba,DB_TYPES[_0x2cc535(0x15a)]))return this[_0x2cc535(0x185)](_0x5c893a,_0xcdea8b,_0x166be2,_0x55ade9,_0x104451,_0x24490e);if(_0xaadfce[_0x2cc535(0x161)](_0x4feaba,DB_TYPES['MYSQL']))return this[_0x2cc535(0x12f)](_0x5c893a,_0xcdea8b,_0x166be2,_0x55ade9,_0x104451,_0x24490e);return this['_buildBatchUpdatePostgres'](_0x5c893a,_0xcdea8b,_0x166be2,_0x55ade9,_0x104451,_0x24490e);}['_buildBatchUpdatePostgres'](_0x34319c,_0x4f8446,_0x1b2a45,_0x8cf4df,_0x3fe4b4,_0x366838={}){const _0x5d20ea=a0_0x34f01a,_0x224c08={'yvrDD':_0x5d20ea(0x140),'baLVl':_0x5d20ea(0x165),'lTTTr':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20','OfszB':_0x5d20ea(0x12e),'AvBYN':'postgresql'};if(_0x34319c[_0x5d20ea(0x178)]===0x0)return{'query':null,'values':[]};const _0xca7ee5=this['buildEscapeFunction'](_0x366838),_0x9ac187=_0x1b2a45[_0x5d20ea(0x16d)](_0x18296a=>!_0x3fe4b4[_0x5d20ea(0x150)](_0x18296a)&&_0x18296a!==_0x8cf4df);if(_0x9ac187[_0x5d20ea(0x178)]===0x0)return logger[_0x5d20ea(0x16a)]({'event':_0x224c08[_0x5d20ea(0x15f)],'tableName':_0x4f8446},_0x224c08[_0x5d20ea(0x172)]),{'query':null,'values':[]};const _0x233300=_0x34319c['map'](_0x5c85e6=>{const _0x453bc8=_0x5d20ea,_0x3c7f28=[..._0x3fe4b4,..._0x9ac187],_0xc10b0c=_0x3c7f28[_0x453bc8(0x171)](_0x568f3c=>_0xca7ee5(_0x5c85e6[_0x568f3c],_0x568f3c));return'('+_0xc10b0c['join'](',\x20')+')';}),_0x31ff22=_0x9ac187['map'](_0x3e27c5=>_0x3e27c5+'\x20=\x20v.'+_0x3e27c5)[_0x5d20ea(0x14b)](_0x5d20ea(0x145)),_0xdee13d=_0x3fe4b4['map'](_0x57aef3=>'t.'+_0x57aef3+'\x20=\x20v.'+_0x57aef3)['join']('\x20AND\x20'),_0x74d97e='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x4f8446+_0x5d20ea(0x138)+_0x31ff22+_0x5d20ea(0x130)+_0x233300['join'](_0x224c08['lTTTr'])+_0x5d20ea(0x144)+[..._0x3fe4b4,..._0x9ac187][_0x5d20ea(0x14b)](',\x20')+_0x5d20ea(0x153)+_0xdee13d+_0x5d20ea(0x170);return logger[_0x5d20ea(0x13c)]({'event':_0x224c08['OfszB'],'tableName':_0x4f8446,'rowCount':_0x34319c[_0x5d20ea(0x178)],'updateColumns':_0x9ac187[_0x5d20ea(0x178)],'dbType':_0x224c08['AvBYN']},'Batch\x20UPDATE\x20query\x20built\x20(PostgreSQL)'),{'query':_0x74d97e,'values':[]};}[a0_0x34f01a(0x185)](_0x4cbfb7,_0x4a6257,_0x3b2938,_0x23d798,_0x47ae4e,_0x2d8bd2={}){const _0x290c06=a0_0x34f01a,_0x4a4d32={'nqEWS':function(_0x8179a7,_0x5bb7c4,_0x375e5d){return _0x8179a7(_0x5bb7c4,_0x375e5d);},'JbGOm':function(_0x144d5e,_0x3f08f3){return _0x144d5e===_0x3f08f3;},'UWoKC':_0x290c06(0x140),'aVbfF':_0x290c06(0x145),'FmZel':'\x0a\x20\x20\x20\x20UNION\x20ALL\x0a','esxxa':_0x290c06(0x12e)};if(_0x4a4d32[_0x290c06(0x15d)](_0x4cbfb7['length'],0x0))return{'query':null,'values':[]};const _0x33d0cf=this['buildEscapeFunction'](_0x2d8bd2),_0x3dfd33=_0x3b2938['filter'](_0x2687a2=>!_0x47ae4e['includes'](_0x2687a2)&&_0x2687a2!==_0x23d798);if(_0x4a4d32['JbGOm'](_0x3dfd33[_0x290c06(0x178)],0x0))return logger['warn']({'event':_0x4a4d32['UWoKC'],'tableName':_0x4a6257},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x5247c8=[..._0x47ae4e,..._0x3dfd33],_0x140e51=_0x4cbfb7['map']((_0x28ea14,_0x10a8b9)=>{const _0x13df68=_0x290c06,_0x4380ae=_0x5247c8['map'](_0x321cc1=>{const _0x1a78d0=_0x4a4d32['nqEWS'](_0x33d0cf,_0x28ea14[_0x321cc1],_0x321cc1);return _0x10a8b9===0x0?_0x1a78d0+'\x20AS\x20'+_0x321cc1:_0x1a78d0;});return'\x20\x20\x20\x20SELECT\x20'+_0x4380ae[_0x13df68(0x14b)](',\x20')+'\x20FROM\x20DUAL';}),_0x26d208=_0x3dfd33[_0x290c06(0x171)](_0x259995=>'t.'+_0x259995+'\x20=\x20v.'+_0x259995)[_0x290c06(0x14b)](_0x4a4d32[_0x290c06(0x156)]),_0x28c1b0=_0x47ae4e['map'](_0x187fb3=>'t.'+_0x187fb3+_0x290c06(0x135)+_0x187fb3)['join'](_0x290c06(0x158)),_0x4a8fe2=_0x290c06(0x13a)+_0x4a6257+_0x290c06(0x13e)+_0x140e51['join'](_0x4a4d32[_0x290c06(0x164)])+_0x290c06(0x176)+_0x28c1b0+')\x0a\x20\x20\x20\x20\x20\x20WHEN\x20MATCHED\x20THEN\x20UPDATE\x20SET\x20'+_0x26d208+_0x290c06(0x170);return logger['debug']({'event':_0x4a4d32[_0x290c06(0x146)],'tableName':_0x4a6257,'rowCount':_0x4cbfb7['length'],'updateColumns':_0x3dfd33[_0x290c06(0x178)],'dbType':_0x290c06(0x155)},'Batch\x20UPDATE\x20query\x20built\x20(Oracle\x20MERGE)'),{'query':_0x4a8fe2,'values':[]};}[a0_0x34f01a(0x12f)](_0x558ff4,_0x51ca12,_0x3b9ba7,_0x59699e,_0x25e973,_0x3577b7={}){const _0x6831e4=a0_0x34f01a,_0x10648c={'asgJK':_0x6831e4(0x165),'wYlWI':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20','Bpnoa':_0x6831e4(0x133),'SFnTV':_0x6831e4(0x15c)};if(_0x558ff4['length']===0x0)return{'query':null,'values':[]};const _0x11d57d=this[_0x6831e4(0x139)](_0x3577b7),_0x5d2e85=_0x3b9ba7['filter'](_0x6e3839=>!_0x25e973[_0x6831e4(0x150)](_0x6e3839)&&_0x6e3839!==_0x59699e);if(_0x5d2e85[_0x6831e4(0x178)]===0x0)return logger['warn']({'event':'batch_update_no_columns','tableName':_0x51ca12},_0x10648c['asgJK']),{'query':null,'values':[]};const _0x1caefb=[...new Set([..._0x25e973,..._0x5d2e85])],_0x2568e8=_0x558ff4['map'](_0x4fb020=>{const _0x5860ff=_0x6831e4,_0x546b3b=_0x1caefb['map'](_0x45c1bd=>_0x11d57d(_0x4fb020[_0x45c1bd],_0x45c1bd));return'('+_0x546b3b[_0x5860ff(0x14b)](',\x20')+')';}),_0xe71f0f=_0x5d2e85[_0x6831e4(0x171)](_0x5dd911=>_0x5dd911+'\x20=\x20VALUES('+_0x5dd911+')')['join'](_0x10648c[_0x6831e4(0x16f)]),_0x5dfcdd='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x51ca12+'\x20('+_0x1caefb['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x2568e8[_0x6831e4(0x14b)](_0x10648c[_0x6831e4(0x152)])+'\x0a\x20\x20\x20\x20\x20\x20ON\x20DUPLICATE\x20KEY\x20UPDATE\x20'+_0xe71f0f+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x6831e4(0x12e),'tableName':_0x51ca12,'rowCount':_0x558ff4['length'],'updateColumns':_0x5d2e85[_0x6831e4(0x178)],'dbType':_0x10648c['SFnTV']},_0x6831e4(0x14f)),{'query':_0x5dfcdd,'values':[]};}['chunkRows'](_0x8a3087,_0x24c4e8=0x64){const _0xb6bf32=[];for(let _0x209b8a=0x0;_0x209b8a<_0x8a3087['length'];_0x209b8a+=_0x24c4e8){_0xb6bf32['push'](_0x8a3087['slice'](_0x209b8a,_0x209b8a+_0x24c4e8));}return _0xb6bf32;}}module['exports']=new UpsertBuilder();
1
+ const a0_0x23955b=a0_0x3066;(function(_0x476a31,_0x40d0fc){const _0x45210e=a0_0x3066,_0x4a3a2f=_0x476a31();while(!![]){try{const _0x275d04=-parseInt(_0x45210e(0x1db))/0x1+-parseInt(_0x45210e(0x1ea))/0x2+-parseInt(_0x45210e(0x1a8))/0x3*(parseInt(_0x45210e(0x1df))/0x4)+-parseInt(_0x45210e(0x191))/0x5+parseInt(_0x45210e(0x19c))/0x6*(-parseInt(_0x45210e(0x198))/0x7)+-parseInt(_0x45210e(0x192))/0x8+parseInt(_0x45210e(0x197))/0x9;if(_0x275d04===_0x40d0fc)break;else _0x4a3a2f['push'](_0x4a3a2f['shift']());}catch(_0x2e568c){_0x4a3a2f['push'](_0x4a3a2f['shift']());}}}(a0_0x5829,0xda5b7));function a0_0x5829(){const _0xc961a9=['x2j1AwXKqMf0y2HvCgrHDgvqB3n0z3jLCW','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','lcaNwvLzws1nts1ercCP','AfnmswK','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','cIaGicaGie1fuKDfieLove8G','yMf0y2HFAw5Zzxj0x2j1AwX0','tLvmtdO6qK9ptevbtG','laOGicaGicaGia','lI9SB2DNzxi','id0GvKfmvuvtka','nZyXmtu4vLrps0Tr','D2fYBG','yNvPBgrcyxrJAeLUC2vYDa','ue9tveDsrvnrta','neruu3nIra','id0GDI4','BNvTyMvY','zgvIDwC','cIaGica','zM9YBwf0qM9VBgvHBLzHBhvL','zMLSDgvY','Cg9ZDgDYzxnXBa','tLvmta','v3nAwLi','iezst00Grfvbta','mJqWodq2mhbuEwjVua','kqOGicaGicbwquXvrvmG','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','mZi2nZm5nvbxu01UrG','mty0ndG5nNLhwuHnqG','u1fmu0vsvKvs','AM9PBG','vKvJELC','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','ndKYoteXmJHgBKPSCxm','nZa5mZG3rKvIBhDg','tLvmtdO6refurq','ieftia','ve9FrefursG','mJrZtKfcq2G','B3jHy2XL','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','Cwnmz3m','BxLZCwW','C3rYAw5N','z2v0rgf0ywjHC2vuExbL','rKneAuu','zw52','ieftierbveuP','yNvPBgrfC2nHCgvgDw5JDgLVBG','q0ftvcG','nda1nZy3nej2shHusG','Cg1KyMG','Dg9mB3DLCKnHC2u','sKrHBuu','cIaGicaGicKGDGOGicaGicbptIaO','kqOGicaGicbxsevsrsa','zK9oAwW','BwfW','cIaGicaGieLou0vsvcbjtLrpia','ksbwquXvrvmGka','t1jbq0Xf','C3fSAxrL','suHMtgO','ieftiejjvcK','yM9VBgvHBG','zgf0zq','u01Asfu','yMf0y2HFDxbKyxrLx2j1AwX0','laOGicaGicaGica','Cfr3z2O','DhLWzq','BgvUz3rO','u1fmsvrf','EhDeyvC','CxzAvuq','ieforca','icaGifnftevdvca','EeDoswW','sKPIAhi','yNvPBgrcyxrJAfvWzgf0zq','CMvWBgfJzq','tvLtuuW','y2H1BMTsB3DZ','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHnEvnrtcbptIbevvbmsunbveuGs0vzkq','ieftihqkicaGicaGu0vuia','cIaGicaGifvqrefursa','zM9YBwf0rgf0zvzHBhvL','Aw5JBhvKzxm','B1niDxu','oJPct09mrufo'];a0_0x5829=function(){return _0xc961a9;};return a0_0x5829();}const {logger}=require(a0_0x23955b(0x1d9)),DB_TYPES={'POSTGRESQL':a0_0x23955b(0x1e6),'MYSQL':a0_0x23955b(0x1a0),'SQLSERVER':'sqlserver','ORACLE':'oracle','SQLITE':a0_0x23955b(0x1b3)};class UpsertBuilder{['getDatabaseType'](){const _0x4152b5=a0_0x23955b,_0x165da2={'xGNIl':'postgresql'},_0x5af549=(process[_0x4152b5(0x1a4)]['DB_TYPE']||_0x165da2[_0x4152b5(0x1c3)])[_0x4152b5(0x1aa)](),_0xbdda38=Object['values'](DB_TYPES);if(!_0xbdda38[_0x4152b5(0x1cd)](_0x5af549))return logger['warn']({'event':'invalid_db_type','provided':_0x5af549,'fallback':_0x165da2['xGNIl']},'Invalid\x20DB_TYPE:\x20'+_0x5af549+'.\x20Falling\x20back\x20to\x20postgresql.'),DB_TYPES[_0x4152b5(0x1de)];return _0x5af549;}[a0_0x23955b(0x1cc)](_0x2cb725,_0x3b4add,_0x29bc45=![]){const _0x2579de=a0_0x23955b,_0x10a8d2={'LkDaC':_0x2579de(0x199),'pmdbh':'NULL'};if(_0x29bc45)switch(_0x3b4add){case DB_TYPES[_0x2579de(0x1de)]:return _0x10a8d2['LkDaC'];case DB_TYPES[_0x2579de(0x1c7)]:return _0x10a8d2[_0x2579de(0x1a9)];case DB_TYPES[_0x2579de(0x1be)]:return _0x10a8d2[_0x2579de(0x1a9)];case DB_TYPES[_0x2579de(0x193)]:return _0x2579de(0x1e7);case DB_TYPES['ORACLE']:return'NULL';default:return _0x10a8d2['LkDaC'];}switch(_0x3b4add){case DB_TYPES[_0x2579de(0x1de)]:return _0x2cb725+'::DATE';case DB_TYPES[_0x2579de(0x1c7)]:return _0x2cb725;case DB_TYPES[_0x2579de(0x1be)]:return _0x2cb725;case DB_TYPES[_0x2579de(0x193)]:return _0x2579de(0x1a7)+_0x2cb725+_0x2579de(0x1a5);case DB_TYPES[_0x2579de(0x1b2)]:return _0x2579de(0x19b)+_0x2cb725+_0x2579de(0x1d2);default:return _0x2cb725+'::DATE';}}[a0_0x23955b(0x1e4)](_0x38ad5f,_0x4b8323,_0x2ea3dc=![]){const _0x18da27=a0_0x23955b;if(_0x2ea3dc)switch(_0x4b8323){case DB_TYPES['POSTGRESQL']:return _0x18da27(0x1d7);default:return _0x18da27(0x1e7);}switch(_0x4b8323){case DB_TYPES['POSTGRESQL']:return _0x38ad5f+_0x18da27(0x1cf);case DB_TYPES['ORACLE']:return _0x38ad5f;case DB_TYPES[_0x18da27(0x1c7)]:return _0x38ad5f;case DB_TYPES['SQLITE']:return _0x38ad5f;case DB_TYPES[_0x18da27(0x193)]:return _0x18da27(0x1a7)+_0x38ad5f+_0x18da27(0x1b5);default:return _0x38ad5f+_0x18da27(0x1cf);}}[a0_0x23955b(0x1a6)](_0x29386e={}){const _0x33b5b3=a0_0x23955b,_0xd342e3={'MXYzZ':function(_0x306872,_0x48a630){return _0x306872===_0x48a630;},'dLUtQ':'date','qvZUD':_0x33b5b3(0x1b6),'Urfdo':_0x33b5b3(0x1e7),'xwDaW':function(_0x391bcc,_0x3df6c9){return _0x391bcc===_0x3df6c9;},'fONil':_0x33b5b3(0x1a1),'hSLIi':function(_0x40ec77,_0x12171c){return _0x40ec77===_0x12171c;}},_0x1ff4d9=this['getDatabaseType']();return(_0x887e40,_0x5f426f)=>{const _0x549053=_0x33b5b3,_0x2037e4=_0x29386e[_0x5f426f];if(_0x887e40===null||_0x887e40===undefined){if(_0x2037e4&&_0xd342e3['MXYzZ'](_0x2037e4['type'],_0xd342e3['dLUtQ']))return this[_0x549053(0x1cc)](null,_0x1ff4d9,!![]);if(_0x2037e4&&_0xd342e3['MXYzZ'](_0x2037e4[_0x549053(0x1bc)],_0xd342e3[_0x549053(0x1c0)]))return this['formatBooleanValue'](null,_0x1ff4d9,!![]);return _0xd342e3['Urfdo'];}if(_0xd342e3[_0x549053(0x1bf)](typeof _0x887e40,_0xd342e3[_0x549053(0x1ae)])){const _0x42cb6d='\x27'+_0x887e40[_0x549053(0x1c6)](/'/g,'\x27\x27')+'\x27';if(_0x2037e4&&_0x2037e4['type']===_0x549053(0x1b7))return this[_0x549053(0x1cc)](_0x42cb6d,_0x1ff4d9,![]);if(_0x2037e4&&_0x2037e4['type']===_0xd342e3['qvZUD'])return this[_0x549053(0x1e4)](_0x42cb6d,_0x1ff4d9,![]);return _0x42cb6d;}if(typeof _0x887e40===_0x549053(0x1e1))return _0x887e40;if(_0xd342e3[_0x549053(0x1d3)](typeof _0x887e40,_0xd342e3['qvZUD']))return _0x887e40;const _0x3dbbfe='\x27'+String(_0x887e40)[_0x549053(0x1c6)](/'/g,'\x27\x27')+'\x27';if(_0x2037e4&&_0x2037e4[_0x549053(0x1bc)]==='date')return this['formatDateValue'](_0x3dbbfe,_0x1ff4d9,![]);return _0x3dbbfe;};}[a0_0x23955b(0x1dd)](_0x2f1d76,_0x41ea30,_0x5a6784,_0x8292b5={}){const _0x45f01f=a0_0x23955b,_0xdc1f15={'ilaSP':function(_0x5db068,_0x5ea74e){return _0x5db068===_0x5ea74e;}},_0x2277ec=this[_0x45f01f(0x1a2)]();if(_0xdc1f15['ilaSP'](_0x2277ec,DB_TYPES[_0x45f01f(0x1b2)]))return this[_0x45f01f(0x1ec)](_0x2f1d76,_0x41ea30,_0x5a6784,_0x8292b5);return this[_0x45f01f(0x1ed)](_0x2f1d76,_0x41ea30,_0x5a6784,_0x8292b5);}['_buildBatchInsertPostgres'](_0x89b605,_0x4fc24f,_0x4e93cc,_0xf956fe={}){const _0x29d9d5=a0_0x23955b,_0x3e8133={'VEczW':',\x0a\x20\x20\x20\x20\x20\x20\x20','JDamE':_0x29d9d5(0x1d6),'oSHuu':_0x29d9d5(0x1e6)};if(_0x89b605['length']===0x0)return{'query':null,'values':[]};const _0x4fd1ca=this[_0x29d9d5(0x1a6)](_0xf956fe),_0x2bf7e2=_0x89b605['map'](_0x4bbbe8=>{const _0xf094e3=_0x29d9d5,_0xc36905=_0x4e93cc[_0xf094e3(0x1af)](_0x24f203=>_0x4fd1ca(_0x4bbbe8[_0x24f203],_0x24f203));return'('+_0xc36905['join'](',\x20')+')';}),_0xa0d228=_0x29d9d5(0x1b0)+_0x4fc24f+'\x20('+_0x4e93cc[_0x29d9d5(0x194)](',\x20')+_0x29d9d5(0x1eb)+_0x2bf7e2['join'](_0x3e8133[_0x29d9d5(0x195)])+'\x0a\x20\x20\x20\x20';return logger[_0x29d9d5(0x1e2)]({'event':_0x3e8133[_0x29d9d5(0x1ab)],'tableName':_0x4fc24f,'rowCount':_0x89b605[_0x29d9d5(0x1bd)],'dbType':_0x3e8133[_0x29d9d5(0x1ce)]},'Batch\x20INSERT\x20query\x20built\x20(PostgreSQL)'),{'query':_0xa0d228,'values':[]};}[a0_0x23955b(0x1ec)](_0x277c85,_0x2200f7,_0x3557e5,_0x525cf0={}){const _0x3550af=a0_0x23955b,_0x59f961={'wzHya':function(_0xebf312,_0x4d0667){return _0xebf312===_0x4d0667;}};if(_0x59f961['wzHya'](_0x277c85['length'],0x0))return{'query':null,'values':[]};const _0x32a5a0=this[_0x3550af(0x1a6)](_0x525cf0),_0x4ef185=_0x277c85['map'](_0xdcaa07=>{const _0x1bb40b=_0x3550af,_0x22c3cf=_0x3557e5[_0x1bb40b(0x1af)](_0x1d68c1=>_0x32a5a0(_0xdcaa07[_0x1d68c1],_0x1d68c1));return'\x20\x20INTO\x20'+_0x2200f7+'\x20('+_0x3557e5[_0x1bb40b(0x194)](',\x20')+_0x1bb40b(0x1b1)+_0x22c3cf['join'](',\x20')+')';}),_0x6c1e61='INSERT\x20ALL\x0a'+_0x4ef185[_0x3550af(0x194)]('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger['debug']({'event':_0x3550af(0x1d6),'tableName':_0x2200f7,'rowCount':_0x277c85[_0x3550af(0x1bd)],'dbType':'oracle'},'Batch\x20INSERT\x20query\x20built\x20(Oracle)'),{'query':_0x6c1e61,'values':[]};}[a0_0x23955b(0x1c5)](_0x507be1,_0x13b638,_0x38d366,_0x2a75ea,_0x5c1d87,_0x10dc39={}){const _0x36b269=a0_0x23955b,_0x3b8c09={'FgbYE':function(_0x211c47,_0x2db616){return _0x211c47===_0x2db616;}},_0x3b40e9=this[_0x36b269(0x1a2)]();if(_0x3b8c09['FgbYE'](_0x3b40e9,DB_TYPES['ORACLE']))return this[_0x36b269(0x19e)](_0x507be1,_0x13b638,_0x38d366,_0x2a75ea,_0x5c1d87,_0x10dc39);if(_0x3b40e9===DB_TYPES[_0x36b269(0x1c7)])return this[_0x36b269(0x1d4)](_0x507be1,_0x13b638,_0x38d366,_0x2a75ea,_0x5c1d87,_0x10dc39);return this['_buildBatchUpdatePostgres'](_0x507be1,_0x13b638,_0x38d366,_0x2a75ea,_0x5c1d87,_0x10dc39);}[a0_0x23955b(0x1d0)](_0xf5e45,_0x35b62c,_0x554300,_0xd1c9ee,_0x1e0dfa,_0x22eeec={}){const _0x4d4539=a0_0x23955b,_0x882d00={'FCDiE':function(_0x21a7ef,_0x4ca135){return _0x21a7ef===_0x4ca135;},'SMZHU':_0x4d4539(0x1c1),'pOjQa':_0x4d4539(0x1d8),'cFnOA':_0x4d4539(0x1b9),'pTwgj':_0x4d4539(0x1e6),'JJbhr':'Batch\x20UPDATE\x20query\x20built\x20(PostgreSQL)'};if(_0x882d00[_0x4d4539(0x1a3)](_0xf5e45['length'],0x0))return{'query':null,'values':[]};const _0x271a67=this[_0x4d4539(0x1a6)](_0x22eeec),_0x52e960=_0x554300[_0x4d4539(0x1e5)](_0x38cfcd=>!_0x1e0dfa['includes'](_0x38cfcd)&&_0x38cfcd!==_0xd1c9ee);if(_0x882d00['FCDiE'](_0x52e960['length'],0x0))return logger['warn']({'event':'batch_update_no_columns','tableName':_0x35b62c},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x41ae41=_0xf5e45[_0x4d4539(0x1af)](_0x41c137=>{const _0x4779b4=_0x4d4539,_0x3eaf5c=[..._0x1e0dfa,..._0x52e960],_0x10a880=_0x3eaf5c[_0x4779b4(0x1af)](_0x260eb8=>_0x271a67(_0x41c137[_0x260eb8],_0x260eb8));return'('+_0x10a880['join'](',\x20')+')';}),_0x401b99=_0x52e960[_0x4d4539(0x1af)](_0x6d55cf=>_0x6d55cf+_0x4d4539(0x1e0)+_0x6d55cf)['join'](_0x4d4539(0x1ba)),_0x43a94e=_0x1e0dfa[_0x4d4539(0x1af)](_0x31f550=>'t.'+_0x31f550+_0x4d4539(0x1e0)+_0x31f550)['join'](_0x882d00[_0x4d4539(0x1b8)]),_0x272f5f=_0x4d4539(0x1cb)+_0x35b62c+_0x4d4539(0x1ca)+_0x401b99+_0x4d4539(0x1d1)+_0x41ae41['join'](_0x882d00['pOjQa'])+'\x0a\x20\x20\x20\x20\x20\x20)\x20AS\x20v('+[..._0x1e0dfa,..._0x52e960]['join'](',\x20')+_0x4d4539(0x1ad)+_0x43a94e+_0x4d4539(0x1e3);return logger['debug']({'event':_0x882d00['cFnOA'],'tableName':_0x35b62c,'rowCount':_0xf5e45['length'],'updateColumns':_0x52e960['length'],'dbType':_0x882d00[_0x4d4539(0x1bb)]},_0x882d00[_0x4d4539(0x1c4)]),{'query':_0x272f5f,'values':[]};}[a0_0x23955b(0x19e)](_0x358b31,_0x1ced3b,_0x171b89,_0x325548,_0x43c1d9,_0x29adc5={}){const _0x7fdbc1=a0_0x23955b,_0x9fa8d8={'IHfLj':function(_0xd96201,_0xf26a7a){return _0xd96201===_0xf26a7a;},'ryCnD':'batch_update_no_columns','CnyRB':_0x7fdbc1(0x196),'JMxQt':_0x7fdbc1(0x1ba),'BQSEY':_0x7fdbc1(0x19d)};if(_0x9fa8d8[_0x7fdbc1(0x1b4)](_0x358b31[_0x7fdbc1(0x1bd)],0x0))return{'query':null,'values':[]};const _0x529bf3=this['buildEscapeFunction'](_0x29adc5),_0xf38033=_0x171b89[_0x7fdbc1(0x1e5)](_0x2d76a3=>!_0x43c1d9['includes'](_0x2d76a3)&&_0x2d76a3!==_0x325548);if(_0xf38033[_0x7fdbc1(0x1bd)]===0x0)return logger[_0x7fdbc1(0x1dc)]({'event':_0x9fa8d8['ryCnD'],'tableName':_0x1ced3b},_0x9fa8d8['CnyRB']),{'query':null,'values':[]};const _0x58d0e7=[..._0x43c1d9,..._0xf38033],_0x4b0901=_0x358b31['map']((_0x2b6610,_0x446ed6)=>{const _0x53f913=_0x7fdbc1,_0x2087db={'Chtmw':function(_0x23034f,_0x3a068a){return _0x23034f===_0x3a068a;}},_0x5f4bc4=_0x58d0e7[_0x53f913(0x1af)](_0x4598c8=>{const _0x1393c3=_0x53f913,_0x3afda1=_0x529bf3(_0x2b6610[_0x4598c8],_0x4598c8);return _0x2087db['Chtmw'](_0x446ed6,0x0)?_0x3afda1+_0x1393c3(0x19a)+_0x4598c8:_0x3afda1;});return _0x53f913(0x1c2)+_0x5f4bc4['join'](',\x20')+_0x53f913(0x1e9);}),_0x13784b=_0xf38033['map'](_0x2b80da=>'t.'+_0x2b80da+_0x7fdbc1(0x1e0)+_0x2b80da)[_0x7fdbc1(0x194)](_0x9fa8d8['JMxQt']),_0x28a8f6=_0x43c1d9['map'](_0x313cf2=>'t.'+_0x313cf2+'\x20=\x20v.'+_0x313cf2)['join']('\x20AND\x20'),_0x149f35=_0x7fdbc1(0x1d5)+_0x1ced3b+'\x20t\x0a\x20\x20\x20\x20\x20\x20USING\x20(\x0a'+_0x4b0901[_0x7fdbc1(0x194)]('\x0a\x20\x20\x20\x20UNION\x20ALL\x0a')+_0x7fdbc1(0x1ac)+_0x28a8f6+')\x0a\x20\x20\x20\x20\x20\x20WHEN\x20MATCHED\x20THEN\x20UPDATE\x20SET\x20'+_0x13784b+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x7fdbc1(0x1b9),'tableName':_0x1ced3b,'rowCount':_0x358b31['length'],'updateColumns':_0xf38033['length'],'dbType':_0x9fa8d8['BQSEY']},'Batch\x20UPDATE\x20query\x20built\x20(Oracle\x20MERGE)'),{'query':_0x149f35,'values':[]};}['_buildBatchUpdateMysql'](_0x5b7418,_0x5f83da,_0x1944b7,_0x1d959e,_0x1a07ae,_0x172c5b={}){const _0x49d850=a0_0x23955b,_0x1c43c7={'qIaaS':_0x49d850(0x1ee),'qcLgs':_0x49d850(0x1c9)};if(_0x5b7418['length']===0x0)return{'query':null,'values':[]};const _0x4e2f76=this['buildEscapeFunction'](_0x172c5b),_0x367b1c=_0x1944b7[_0x49d850(0x1e5)](_0x40e389=>!_0x1a07ae[_0x49d850(0x1cd)](_0x40e389)&&_0x40e389!==_0x1d959e);if(_0x367b1c['length']===0x0)return logger['warn']({'event':_0x1c43c7['qIaaS'],'tableName':_0x5f83da},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x274006=[...new Set([..._0x1a07ae,..._0x367b1c])],_0x5ef659=_0x5b7418[_0x49d850(0x1af)](_0x25cc1a=>{const _0x526c98=_0x49d850,_0x4155ed=_0x274006[_0x526c98(0x1af)](_0xbe0cde=>_0x4e2f76(_0x25cc1a[_0xbe0cde],_0xbe0cde));return'('+_0x4155ed['join'](',\x20')+')';}),_0x373ef3=_0x367b1c['map'](_0x596ca1=>_0x596ca1+_0x49d850(0x1da)+_0x596ca1+')')[_0x49d850(0x194)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0xda9946='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x5f83da+'\x20('+_0x274006[_0x49d850(0x194)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x5ef659[_0x49d850(0x194)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20')+'\x0a\x20\x20\x20\x20\x20\x20ON\x20DUPLICATE\x20KEY\x20UPDATE\x20'+_0x373ef3+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':'batch_update_built','tableName':_0x5f83da,'rowCount':_0x5b7418['length'],'updateColumns':_0x367b1c[_0x49d850(0x1bd)],'dbType':'mysql'},_0x1c43c7[_0x49d850(0x19f)]),{'query':_0xda9946,'values':[]};}[a0_0x23955b(0x1c8)](_0x1693c8,_0x29781d=0x64){const _0x2c2b40=a0_0x23955b,_0x189043={'WsZZR':function(_0xd11785,_0x4d34e4){return _0xd11785<_0x4d34e4;},'kRVTt':function(_0x8c7fd3,_0x34c868){return _0x8c7fd3+_0x34c868;}},_0x457cac=[];for(let _0x40bf99=0x0;_0x189043[_0x2c2b40(0x1e8)](_0x40bf99,_0x1693c8['length']);_0x40bf99+=_0x29781d){_0x457cac['push'](_0x1693c8['slice'](_0x40bf99,_0x189043['kRVTt'](_0x40bf99,_0x29781d)));}return _0x457cac;}}function a0_0x3066(_0x11120c,_0x7f781e){_0x11120c=_0x11120c-0x191;const _0x5829f0=a0_0x5829();let _0x30660a=_0x5829f0[_0x11120c];if(a0_0x3066['ViufKg']===undefined){var _0x4cfd6f=function(_0xcca9e6){const _0x1e7db8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xdadb3d='',_0x12eaf9='';for(let _0x2ff9c7=0x0,_0xd79ad1,_0x2527dd,_0x4a7d88=0x0;_0x2527dd=_0xcca9e6['charAt'](_0x4a7d88++);~_0x2527dd&&(_0xd79ad1=_0x2ff9c7%0x4?_0xd79ad1*0x40+_0x2527dd:_0x2527dd,_0x2ff9c7++%0x4)?_0xdadb3d+=String['fromCharCode'](0xff&_0xd79ad1>>(-0x2*_0x2ff9c7&0x6)):0x0){_0x2527dd=_0x1e7db8['indexOf'](_0x2527dd);}for(let _0x533306=0x0,_0x50ed96=_0xdadb3d['length'];_0x533306<_0x50ed96;_0x533306++){_0x12eaf9+='%'+('00'+_0xdadb3d['charCodeAt'](_0x533306)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x12eaf9);};a0_0x3066['gGmldP']=_0x4cfd6f,a0_0x3066['gnsPzl']={},a0_0x3066['ViufKg']=!![];}const _0x57b423=_0x5829f0[0x0],_0x4a69d2=_0x11120c+_0x57b423,_0x2711f7=a0_0x3066['gnsPzl'][_0x4a69d2];return!_0x2711f7?(_0x30660a=a0_0x3066['gGmldP'](_0x30660a),a0_0x3066['gnsPzl'][_0x4a69d2]=_0x30660a):_0x30660a=_0x2711f7,_0x30660a;}module['exports']=new UpsertBuilder();
@@ -1 +1 @@
1
- const a0_0x1311dc=a0_0x33f2;(function(_0x5ec024,_0x191685){const _0x52c3c0=a0_0x33f2,_0x515f91=_0x5ec024();while(!![]){try{const _0x4ddf17=parseInt(_0x52c3c0(0x165))/0x1+-parseInt(_0x52c3c0(0x141))/0x2+-parseInt(_0x52c3c0(0x148))/0x3+parseInt(_0x52c3c0(0x164))/0x4+parseInt(_0x52c3c0(0x159))/0x5*(-parseInt(_0x52c3c0(0x14e))/0x6)+-parseInt(_0x52c3c0(0x15c))/0x7+-parseInt(_0x52c3c0(0x162))/0x8*(-parseInt(_0x52c3c0(0x151))/0x9);if(_0x4ddf17===_0x191685)break;else _0x515f91['push'](_0x515f91['shift']());}catch(_0x51f31f){_0x515f91['push'](_0x515f91['shift']());}}}(a0_0x4c0f,0xbea37));const axios=require('axios'),DEFAULT_TIMEOUT=0x2710,DEFAULT_METHOD=a0_0x1311dc(0x153),DEFAULT_HOST='localhost',DEFAULT_PORT=0xbb8;function resolveTemplateString(_0x3ee20c,_0x188c44){const _0x866b66=a0_0x1311dc,_0x3539f5={'OjESE':function(_0x2d3695,_0x43b68b,_0x2cacff){return _0x2d3695(_0x43b68b,_0x2cacff);},'kPmkE':function(_0x2f28db,_0x594947){return _0x2f28db!==_0x594947;},'qeTkd':function(_0x2033ff,_0x2d7afb){return _0x2033ff===_0x2d7afb;},'Xgjgy':function(_0x11c4af,_0x249196){return _0x11c4af(_0x249196);},'NryBM':_0x866b66(0x15d)};if(typeof _0x3ee20c!==_0x3539f5[_0x866b66(0x14d)])return _0x3ee20c;return _0x3ee20c['replace'](/\{\{([^}]+)\}\}/g,(_0x1fe596,_0x169e0f)=>{const _0x4eacad=_0x866b66,_0x3b9954=_0x169e0f[_0x4eacad(0x156)](),_0x1cff7f=_0x3539f5[_0x4eacad(0x13c)](getNestedValue,_0x188c44,_0x3b9954);if(_0x3539f5['kPmkE'](_0x1cff7f,undefined)&&_0x1cff7f!==null)return _0x3539f5['qeTkd'](typeof _0x1cff7f,_0x4eacad(0x155))?JSON[_0x4eacad(0x14a)](_0x1cff7f):_0x3539f5[_0x4eacad(0x146)](String,_0x1cff7f);return _0x1fe596;});}function resolveTemplateVariables(_0x408fe2,_0x4633ba){const _0x379407=a0_0x1311dc,_0x33476b={'HrSxu':function(_0x2980c9,_0x2e202f){return _0x2980c9===_0x2e202f;},'TZtBJ':function(_0x1c8d75,_0x1187de,_0x4807fa){return _0x1c8d75(_0x1187de,_0x4807fa);}};if(typeof _0x408fe2==='string')return resolveTemplateString(_0x408fe2,_0x4633ba);if(Array[_0x379407(0x14c)](_0x408fe2))return _0x408fe2[_0x379407(0x152)](_0x2ab526=>resolveTemplateVariables(_0x2ab526,_0x4633ba));if(_0x408fe2!==null&&_0x33476b[_0x379407(0x147)](typeof _0x408fe2,'object')){const _0xca59cb={};for(const [_0xe2230,_0x34db7c]of Object[_0x379407(0x14b)](_0x408fe2)){_0xca59cb[_0xe2230]=_0x33476b[_0x379407(0x13b)](resolveTemplateVariables,_0x34db7c,_0x4633ba);}return _0xca59cb;}return _0x408fe2;}function getNestedValue(_0x32e3e2,_0xc4f99f){const _0x1bb211=a0_0x1311dc,_0x3df84b={'SwKGS':function(_0x217735,_0x233ecb){return _0x217735!==_0x233ecb;}};return _0xc4f99f[_0x1bb211(0x143)]('.')[_0x1bb211(0x16a)]((_0x5427f2,_0x11df17)=>{const _0x652897=_0x1bb211;return _0x5427f2&&_0x3df84b[_0x652897(0x161)](_0x5427f2[_0x11df17],undefined)?_0x5427f2[_0x11df17]:undefined;},_0x32e3e2);}function resolveUrl(_0xaa30fd,_0x19f6bb){const _0x1d9cf6=a0_0x1311dc,_0x2cef89={'HGZFg':function(_0x456f70,_0x56ea32){return _0x456f70!==_0x56ea32;},'TCUcP':_0x1d9cf6(0x15d),'eGGTf':'http://','wUjEo':'https://'};if(!_0xaa30fd||_0x2cef89[_0x1d9cf6(0x168)](typeof _0xaa30fd,_0x2cef89[_0x1d9cf6(0x15a)]))return _0xaa30fd;if(_0xaa30fd[_0x1d9cf6(0x163)](_0x2cef89['eGGTf'])||_0xaa30fd[_0x1d9cf6(0x163)](_0x2cef89['wUjEo']))return _0xaa30fd;const _0x31828a=process[_0x1d9cf6(0x13f)]['SERVER_ADDRESS']||process[_0x1d9cf6(0x13f)]['HOST']||DEFAULT_HOST,_0x5e6ff8=process['env']['PORT']||DEFAULT_PORT,_0x5a54c0=_0x1d9cf6(0x160)+_0x31828a+':'+_0x5e6ff8;if(_0xaa30fd[_0x1d9cf6(0x163)](_0x1d9cf6(0x138)))return''+_0x5a54c0+_0xaa30fd;if(_0xaa30fd['startsWith']('/')){const _0x239cb0=_0x19f6bb&&_0x19f6bb['project']||'';if(_0x239cb0)return _0x5a54c0+_0x1d9cf6(0x138)+_0x239cb0+_0xaa30fd;return''+_0x5a54c0+_0xaa30fd;}return _0xaa30fd;}function buildHookContext(_0x51000a){const _0x5eb711=a0_0x1311dc;return{'id':_0x51000a['id']||'','newStatus':_0x51000a[_0x5eb711(0x170)]||'','oldStatus':_0x51000a['oldStatus']||'','remarks':_0x51000a['remarks']||'','tableName':_0x51000a[_0x5eb711(0x16d)]||'','user_id':_0x51000a['userId']||_0x5eb711(0x154),'timestamp':new Date()['toISOString'](),'record':_0x51000a[_0x5eb711(0x166)]||{},'requestData':_0x51000a['requestData']||{},'project':_0x51000a[_0x5eb711(0x139)]||'','authHeader':_0x51000a[_0x5eb711(0x171)]||null};}async function executeHook(_0x540473,_0x334835){const _0x3e5cd2=a0_0x1311dc,_0x439aa1={'NSVUv':function(_0x3833e5,_0x1fe282){return _0x3833e5!==_0x1fe282;},'qXeBZ':function(_0x543994,_0x253b22,_0x463576){return _0x543994(_0x253b22,_0x463576);},'opkxK':function(_0x2a6528,_0x34ccaf){return _0x2a6528(_0x34ccaf);},'qpDNb':'application/json','gkhfB':_0x3e5cd2(0x167)};if(!_0x540473||_0x439aa1[_0x3e5cd2(0x158)](_0x540473['type'],'api'))return{'success':!![],'message':_0x3e5cd2(0x15e)};const _0x24dd77=_0x540473[_0x3e5cd2(0x16c)]===!![],_0x23e041=(_0x540473[_0x3e5cd2(0x145)]||DEFAULT_METHOD)[_0x3e5cd2(0x140)](),_0xcfa7c7=_0x540473['timeout']||DEFAULT_TIMEOUT,_0x23cf6e=resolveTemplateString(_0x540473['url'],_0x334835),_0x59eb3f=resolveUrl(_0x23cf6e,_0x334835),_0x1d81ec=_0x540473['body']?resolveTemplateVariables(_0x540473['body'],_0x334835):{},_0x120658=_0x540473['headers']?_0x439aa1['qXeBZ'](resolveTemplateVariables,_0x540473['headers'],_0x334835):{},_0x229f5a=_0x120658&&(_0x120658[_0x3e5cd2(0x150)]!==undefined||_0x120658[_0x3e5cd2(0x16f)]!==undefined),_0x2860c1=!_0x229f5a&&_0x334835&&_0x334835[_0x3e5cd2(0x171)]?{'Authorization':_0x334835[_0x3e5cd2(0x171)]}:{};try{const _0x423588=await _0x439aa1['opkxK'](axios,{'method':_0x23e041['toLowerCase'](),'url':_0x59eb3f,'data':_0x1d81ec,'headers':{'Content-Type':_0x439aa1['qpDNb'],'User-Agent':_0x439aa1[_0x3e5cd2(0x16b)],..._0x2860c1,..._0x120658},'timeout':_0xcfa7c7});return console['log']('Workflow\x20hook\x20executed:\x20'+_0x23e041+'\x20'+_0x59eb3f+_0x3e5cd2(0x15b)+_0x423588[_0x3e5cd2(0x149)]),{'success':!![],'message':_0x3e5cd2(0x15f),'status':_0x423588[_0x3e5cd2(0x149)],'url':_0x59eb3f};}catch(_0xd6fbc1){const _0x53f52a=_0xd6fbc1[_0x3e5cd2(0x16e)]?'HTTP\x20'+_0xd6fbc1['response']['status']+':\x20'+_0xd6fbc1[_0x3e5cd2(0x16e)]['statusText']:_0xd6fbc1[_0x3e5cd2(0x142)];console['error']('Workflow\x20hook\x20failed:\x20'+_0x23e041+'\x20'+_0x59eb3f+'\x20→\x20'+_0x53f52a);if(_0x24dd77)return{'success':![],'message':'Blocking\x20hook\x20failed:\x20'+_0x53f52a,'error':_0x53f52a,'url':_0x59eb3f};return console['warn'](_0x3e5cd2(0x13e)+_0x53f52a),{'success':!![],'message':_0x3e5cd2(0x13e)+_0x53f52a,'warning':_0x53f52a,'url':_0x59eb3f};}}function a0_0x4c0f(){const _0xb1c67b=['B2jQzwn0','DhjPBq','BgvUz3rO','tLnwvxy','nxnsrMflEq','venvy1a','iokgKIa','mJuYmdq2mNbrtejlrW','C3rYAw5N','sg9VAYbZA2LWCgvKoIb1BNn1ChbVCNrLzcb0ExbL','sg9VAYbLEgvJDxrLzcbZDwnJzxnZzNvSBhK','Ahr0CdOVlW','u3Dlr1m','ohfgtvfSqG','C3rHCNrZv2L0Aa','nZa2mJi0u1zKwNnO','mtiWnduXn1nTtxrVsG','CMvJB3jK','uMvZDezVCMDLlvDVCMTMBg93lZeUma','seDArMC','sg9VAYbLEgvJDxrPB24GzMfPBgvK','CMvKDwnL','z2TOzKi','yMXVy2TPBMC','DgfIBgvoyw1L','CMvZCg9UC2u','yxv0Ag9YAxPHDgLVBG','BMv3u3rHDhvZ','yxv0AeHLywrLCG','l2fWAs8','ChjVAMvJDa','C3vJy2vZCW','vfP0qKO','t2Pfu0u','BKztzNu','tM9UlwjSB2nRAw5NigHVB2SGzMfPBgvKicHPz25VCMvKktOG','zw52','Dg9vChbLCKnHC2u','mti0odq2mK1Mz0Ttra','BwvZC2fNzq','C3bSAxq','ChvZAa','Bwv0Ag9K','wgDQz3K','shjtEhu','ndq2nJeXoejpr2vOrG','C3rHDhvZ','C3rYAw5NAwz5','zw50CMLLCW','AxnbCNjHEq','tNj5qK0','mJm5nZm0mLbeterwuW','BwPiq2C','qxv0Ag9YAxPHDgLVBG','mJa0nteWnZHfu2TwDfi','BwfW','ue9tva','C3LZDgvT'];a0_0x4c0f=function(){return _0xb1c67b;};return a0_0x4c0f();}async function executeHooks(_0x4153f0,_0x1cbf37){const _0x8d192b=a0_0x1311dc,_0x3c0f6d={'nFSfu':function(_0x1e940d,_0x51be14,_0x25fbf1){return _0x1e940d(_0x51be14,_0x25fbf1);},'mjHCg':_0x8d192b(0x169)};if(!_0x4153f0||!Array[_0x8d192b(0x14c)](_0x4153f0)||_0x4153f0['length']===0x0)return{'success':!![],'results':[],'hooksExecuted':0x0};const _0x561e1b=[];for(const _0x1bbed8 of _0x4153f0){const _0x3eeebe=await _0x3c0f6d[_0x8d192b(0x13d)](executeHook,_0x1bbed8,_0x1cbf37);_0x561e1b[_0x8d192b(0x144)](_0x3eeebe);if(!_0x3eeebe[_0x8d192b(0x13a)])return{'success':![],'error':_0x3eeebe['message']||_0x3c0f6d[_0x8d192b(0x14f)],'results':_0x561e1b,'hooksExecuted':_0x561e1b['length']};}return{'success':!![],'results':_0x561e1b,'hooksExecuted':_0x561e1b[_0x8d192b(0x157)]};}function a0_0x33f2(_0x35f260,_0x28dff3){_0x35f260=_0x35f260-0x138;const _0x4c0f13=a0_0x4c0f();let _0x33f2ee=_0x4c0f13[_0x35f260];if(a0_0x33f2['vdNtOP']===undefined){var _0x415b3c=function(_0xd9885){const _0x49b582='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5b6368='',_0xdd10aa='';for(let _0x2b58ab=0x0,_0x5307fc,_0x58a14d,_0x58f157=0x0;_0x58a14d=_0xd9885['charAt'](_0x58f157++);~_0x58a14d&&(_0x5307fc=_0x2b58ab%0x4?_0x5307fc*0x40+_0x58a14d:_0x58a14d,_0x2b58ab++%0x4)?_0x5b6368+=String['fromCharCode'](0xff&_0x5307fc>>(-0x2*_0x2b58ab&0x6)):0x0){_0x58a14d=_0x49b582['indexOf'](_0x58a14d);}for(let _0x335785=0x0,_0x39631b=_0x5b6368['length'];_0x335785<_0x39631b;_0x335785++){_0xdd10aa+='%'+('00'+_0x5b6368['charCodeAt'](_0x335785)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xdd10aa);};a0_0x33f2['MDfkTl']=_0x415b3c,a0_0x33f2['KPbrwv']={},a0_0x33f2['vdNtOP']=!![];}const _0x49f467=_0x4c0f13[0x0],_0x4c0ce1=_0x35f260+_0x49f467,_0x21c4d8=a0_0x33f2['KPbrwv'][_0x4c0ce1];return!_0x21c4d8?(_0x33f2ee=a0_0x33f2['MDfkTl'](_0x33f2ee),a0_0x33f2['KPbrwv'][_0x4c0ce1]=_0x33f2ee):_0x33f2ee=_0x21c4d8,_0x33f2ee;}module['exports']={'resolveTemplateString':resolveTemplateString,'resolveTemplateVariables':resolveTemplateVariables,'resolveUrl':resolveUrl,'buildHookContext':buildHookContext,'executeHook':executeHook,'executeHooks':executeHooks};
1
+ const a0_0xe81d03=a0_0xbf17;(function(_0x14cd4,_0x4ccc1c){const _0x56a641=a0_0xbf17,_0x3d2abd=_0x14cd4();while(!![]){try{const _0x3b55de=parseInt(_0x56a641(0x1ca))/0x1+parseInt(_0x56a641(0x1cc))/0x2+-parseInt(_0x56a641(0x1ec))/0x3+parseInt(_0x56a641(0x1d3))/0x4*(-parseInt(_0x56a641(0x1c3))/0x5)+-parseInt(_0x56a641(0x1d0))/0x6*(parseInt(_0x56a641(0x1f1))/0x7)+parseInt(_0x56a641(0x1dc))/0x8+parseInt(_0x56a641(0x1ce))/0x9;if(_0x3b55de===_0x4ccc1c)break;else _0x3d2abd['push'](_0x3d2abd['shift']());}catch(_0x2e2926){_0x3d2abd['push'](_0x3d2abd['shift']());}}}(a0_0x1ed0,0xbb029));function a0_0x1ed0(){const _0x332920=['sg9VAYbZA2LWCgvKoIb1BNn1ChbVCNrLzcb0ExbL','C3LZDgvT','Bwv0Ag9K','C3rYAw5N','C3rHDhvZ','tM9UlwjSB2nRAw5NigHVB2SGzMfPBgvKicHPz25VCMvKktOG','Bg9JywXOB3n0','EwryzeW','DxnLCKLK','u0vsvKvsx0ferfjfu1m','Bg9N','zw52','AgvHzgvYCW','y3jIv0G','ode4nty1rgn4vMHo','ue9sva','CMvZCg9UC2u','iokgKIa','D2fYBG','mteYndK3DMXIvxLr','rfnsuuu','B2jQzwn0','B2XKu3rHDhvZ','zw50CMLLCW','yxv0AeHLywrLCG','yxv0Ag9YAxPHDgLVBG','qxv0Ag9YAxPHDgLVBG','otm2nwPcu3rhEG','Eg1PB0u','ChjVAMvJDa','CMvWBgfJzq','zxjYB3i','uMvZDezVCMDLlvDVCMTMBg93lZeUma','se9tva','oti1mJG3t2rqB1fQ','z3PstLi','mJm3mtK2AwHID1zs','C2fVtvm','otyYodq5n3rrD0LWtW','Egz6DKe','mJu4t3HUrvnZ','BwvZC2fNzq','CMvKDwnL','mtiYohLLyKTdvq','BgvUz3rO','ue9tva','DhjPBq','yM9KEq','C3rHCNrZv2L0Aa','sg9VAYbLEgvJDxrLzcbZDwnJzxnZzNvSBhK','yxbP','AxnbCNjHEq','mtuYotu1mKHkC0zUsW','DgLTzw91Da'];a0_0x1ed0=function(){return _0x332920;};return a0_0x1ed0();}function a0_0xbf17(_0x2eaf57,_0x2c913e){_0x2eaf57=_0x2eaf57-0x1c2;const _0x1ed0e9=a0_0x1ed0();let _0xbf1772=_0x1ed0e9[_0x2eaf57];if(a0_0xbf17['oiUwaj']===undefined){var _0x33b647=function(_0x4bd685){const _0x25a553='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5cb07e='',_0x5c0408='';for(let _0x4e7520=0x0,_0x358919,_0x2a15ec,_0x144610=0x0;_0x2a15ec=_0x4bd685['charAt'](_0x144610++);~_0x2a15ec&&(_0x358919=_0x4e7520%0x4?_0x358919*0x40+_0x2a15ec:_0x2a15ec,_0x4e7520++%0x4)?_0x5cb07e+=String['fromCharCode'](0xff&_0x358919>>(-0x2*_0x4e7520&0x6)):0x0){_0x2a15ec=_0x25a553['indexOf'](_0x2a15ec);}for(let _0x6e24ee=0x0,_0x2e6cf6=_0x5cb07e['length'];_0x6e24ee<_0x2e6cf6;_0x6e24ee++){_0x5c0408+='%'+('00'+_0x5cb07e['charCodeAt'](_0x6e24ee)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c0408);};a0_0xbf17['MCfgzz']=_0x33b647,a0_0xbf17['Azxaoz']={},a0_0xbf17['oiUwaj']=!![];}const _0x500710=_0x1ed0e9[0x0],_0x4a01a3=_0x2eaf57+_0x500710,_0x32bb0e=a0_0xbf17['Azxaoz'][_0x4a01a3];return!_0x32bb0e?(_0xbf1772=a0_0xbf17['MCfgzz'](_0xbf1772),a0_0xbf17['Azxaoz'][_0x4a01a3]=_0xbf1772):_0xbf1772=_0x32bb0e,_0xbf1772;}const axios=require('axios'),DEFAULT_TIMEOUT=0x2710,DEFAULT_METHOD=a0_0xe81d03(0x1d5),DEFAULT_HOST=a0_0xe81d03(0x1e4),DEFAULT_PORT=0xbb8;function resolveTemplateString(_0x4d2247,_0x278732){const _0x4ef9c0=a0_0xe81d03,_0x2325c0={'gzRNR':function(_0x2abd1c,_0x6505c0){return _0x2abd1c===_0x6505c0;},'wgnjz':function(_0x48df48,_0x3122f1){return _0x48df48!==_0x3122f1;}};if(_0x2325c0['wgnjz'](typeof _0x4d2247,'string'))return _0x4d2247;return _0x4d2247[_0x4ef9c0(0x1c6)](/\{\{([^}]+)\}\}/g,(_0x247035,_0x144d22)=>{const _0x5bf78e=_0x4ef9c0,_0x4bb0d4=_0x144d22[_0x5bf78e(0x1d6)](),_0x391b2e=getNestedValue(_0x278732,_0x4bb0d4);if(_0x391b2e!==undefined&&_0x391b2e!==null)return _0x2325c0[_0x5bf78e(0x1cb)](typeof _0x391b2e,_0x5bf78e(0x1f3))?JSON['stringify'](_0x391b2e):String(_0x391b2e);return _0x247035;});}function resolveTemplateVariables(_0x20754e,_0x126e0d){const _0xfb7381=a0_0xe81d03,_0x2d7a4d={'TjjQl':function(_0x196283,_0x37cccb){return _0x196283===_0x37cccb;},'crbWH':'object','UiKjz':function(_0x43b96c,_0x3ad8c8,_0x6e2aa4){return _0x43b96c(_0x3ad8c8,_0x6e2aa4);}};if(typeof _0x20754e===_0xfb7381(0x1e1))return resolveTemplateString(_0x20754e,_0x126e0d);if(Array['isArray'](_0x20754e))return _0x20754e['map'](_0x4d384c=>resolveTemplateVariables(_0x4d384c,_0x126e0d));if(_0x20754e!==null&&_0x2d7a4d['TjjQl'](typeof _0x20754e,_0x2d7a4d[_0xfb7381(0x1eb)])){const _0x2de39f={};for(const [_0x5ee753,_0x288c94]of Object[_0xfb7381(0x1f5)](_0x20754e)){_0x2de39f[_0x5ee753]=_0x2d7a4d['UiKjz'](resolveTemplateVariables,_0x288c94,_0x126e0d);}return _0x2de39f;}return _0x20754e;}function getNestedValue(_0x51aa42,_0x214ff1){const _0x1f818c=a0_0xe81d03;return _0x214ff1['split']('.')[_0x1f818c(0x1d2)]((_0x23055c,_0x4f565e)=>{return _0x23055c&&_0x23055c[_0x4f565e]!==undefined?_0x23055c[_0x4f565e]:undefined;},_0x51aa42);}function resolveUrl(_0x35dafe,_0x18af35){const _0x2a8b07=a0_0xe81d03,_0x24a643={'saoMS':'http://','xfzvA':'https://','IYuCG':'/api/'};if(!_0x35dafe||typeof _0x35dafe!=='string')return _0x35dafe;if(_0x35dafe['startsWith'](_0x24a643[_0x2a8b07(0x1cd)])||_0x35dafe[_0x2a8b07(0x1d8)](_0x24a643[_0x2a8b07(0x1cf)]))return _0x35dafe;const _0x16fd67=process[_0x2a8b07(0x1e9)][_0x2a8b07(0x1e7)]||process[_0x2a8b07(0x1e9)][_0x2a8b07(0x1c9)]||DEFAULT_HOST,_0x2b63ab=process[_0x2a8b07(0x1e9)][_0x2a8b07(0x1ed)]||DEFAULT_PORT,_0x534c65='http://'+_0x16fd67+':'+_0x2b63ab;if(_0x35dafe['startsWith'](_0x24a643['IYuCG']))return''+_0x534c65+_0x35dafe;if(_0x35dafe['startsWith']('/')){const _0x573680=_0x18af35&&_0x18af35['project']||'';if(_0x573680)return _0x534c65+'/api/'+_0x573680+_0x35dafe;return''+_0x534c65+_0x35dafe;}return _0x35dafe;}function buildHookContext(_0x2f09e2){const _0x114e6d=a0_0xe81d03;return{'id':_0x2f09e2['id']||'','newStatus':_0x2f09e2['newStatus']||'','oldStatus':_0x2f09e2[_0x114e6d(0x1f4)]||'','remarks':_0x2f09e2['remarks']||'','tableName':_0x2f09e2['tableName']||'','user_id':_0x2f09e2[_0x114e6d(0x1e6)]||_0x114e6d(0x1df),'timestamp':new Date()['toISOString'](),'record':_0x2f09e2['record']||{},'requestData':_0x2f09e2['requestData']||{},'project':_0x2f09e2[_0x114e6d(0x1c5)]||'','authHeader':_0x2f09e2['authHeader']||null};}async function executeHook(_0x4902f3,_0x38bbe6){const _0x13f6fb=a0_0xe81d03,_0xbb42c2={'cAYZx':_0x13f6fb(0x1da),'ydXdL':function(_0x17817a,_0x254972){return _0x17817a===_0x254972;},'CEuzI':function(_0x72ccc0,_0x5754f6,_0x325220){return _0x72ccc0(_0x5754f6,_0x325220);},'xmioE':function(_0x2dd132,_0x162445,_0x288686){return _0x2dd132(_0x162445,_0x288686);},'PQJdz':function(_0x246e52,_0x4ce35a,_0x312049){return _0x246e52(_0x4ce35a,_0x312049);},'DSRQE':function(_0x273b9c,_0x593b9d){return _0x273b9c!==_0x593b9d;}};if(!_0x4902f3||_0x4902f3['type']!==_0xbb42c2['cAYZx'])return{'success':!![],'message':_0x13f6fb(0x1de)};const _0x11f7b8=_0xbb42c2[_0x13f6fb(0x1e5)](_0x4902f3['blocking'],!![]),_0x3b1cfc=(_0x4902f3[_0x13f6fb(0x1e0)]||DEFAULT_METHOD)['toUpperCase'](),_0x1308ef=_0x4902f3[_0x13f6fb(0x1dd)]||DEFAULT_TIMEOUT,_0x580c66=_0xbb42c2['CEuzI'](resolveTemplateString,_0x4902f3['url'],_0x38bbe6),_0x2b9b91=resolveUrl(_0x580c66,_0x38bbe6),_0x38150b=_0x4902f3['body']?_0xbb42c2[_0x13f6fb(0x1c4)](resolveTemplateVariables,_0x4902f3[_0x13f6fb(0x1d7)],_0x38bbe6):{},_0x3423f5=_0x4902f3[_0x13f6fb(0x1ea)]?_0xbb42c2['PQJdz'](resolveTemplateVariables,_0x4902f3[_0x13f6fb(0x1ea)],_0x38bbe6):{},_0x145f47=_0x3423f5&&(_0xbb42c2[_0x13f6fb(0x1f2)](_0x3423f5[_0x13f6fb(0x1c2)],undefined)||_0xbb42c2['DSRQE'](_0x3423f5[_0x13f6fb(0x1f7)],undefined)),_0x93ca32=!_0x145f47&&_0x38bbe6&&_0x38bbe6[_0x13f6fb(0x1f6)]?{'Authorization':_0x38bbe6['authHeader']}:{};try{const _0x4bca39=await axios({'method':_0x3b1cfc['toLowerCase'](),'url':_0x2b9b91,'data':_0x38150b,'headers':{'Content-Type':'application/json','User-Agent':_0x13f6fb(0x1c8),..._0x93ca32,..._0x3423f5},'timeout':_0x1308ef});return console[_0x13f6fb(0x1e8)]('Workflow\x20hook\x20executed:\x20'+_0x3b1cfc+'\x20'+_0x2b9b91+'\x20→\x20'+_0x4bca39['status']),{'success':!![],'message':_0x13f6fb(0x1d9),'status':_0x4bca39['status'],'url':_0x2b9b91};}catch(_0x54bc4a){const _0x35048e=_0x54bc4a['response']?'HTTP\x20'+_0x54bc4a['response'][_0x13f6fb(0x1e2)]+':\x20'+_0x54bc4a[_0x13f6fb(0x1ee)]['statusText']:_0x54bc4a['message'];console[_0x13f6fb(0x1c7)]('Workflow\x20hook\x20failed:\x20'+_0x3b1cfc+'\x20'+_0x2b9b91+_0x13f6fb(0x1ef)+_0x35048e);if(_0x11f7b8)return{'success':![],'message':'Blocking\x20hook\x20failed:\x20'+_0x35048e,'error':_0x35048e,'url':_0x2b9b91};return console[_0x13f6fb(0x1f0)](_0x13f6fb(0x1e3)+_0x35048e),{'success':!![],'message':_0x13f6fb(0x1e3)+_0x35048e,'warning':_0x35048e,'url':_0x2b9b91};}}async function executeHooks(_0x2f033f,_0xcab334){const _0x167878=a0_0xe81d03;if(!_0x2f033f||!Array[_0x167878(0x1db)](_0x2f033f)||_0x2f033f['length']===0x0)return{'success':!![],'results':[],'hooksExecuted':0x0};const _0x1db17b=[];for(const _0x5c2892 of _0x2f033f){const _0x1c7ba9=await executeHook(_0x5c2892,_0xcab334);_0x1db17b['push'](_0x1c7ba9);if(!_0x1c7ba9['success'])return{'success':![],'error':_0x1c7ba9[_0x167878(0x1d1)]||'Hook\x20execution\x20failed','results':_0x1db17b,'hooksExecuted':_0x1db17b[_0x167878(0x1d4)]};}return{'success':!![],'results':_0x1db17b,'hooksExecuted':_0x1db17b[_0x167878(0x1d4)]};}module['exports']={'resolveTemplateString':resolveTemplateString,'resolveTemplateVariables':resolveTemplateVariables,'resolveUrl':resolveUrl,'buildHookContext':buildHookContext,'executeHook':executeHook,'executeHooks':executeHooks};