@restforgejs/platform 5.0.3 → 5.0.8

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 (181) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/dashboard/create.js +1 -1
  5. package/generators/cli/endpoint/create.js +1 -1
  6. package/generators/cli/processor/create.js +1 -1
  7. package/generators/lib/dbschema-kit/apply-executor.js +15 -1
  8. package/generators/lib/dbschema-kit/dialect/mysql.js +2 -0
  9. package/generators/lib/dbschema-kit/dialect/oracle.js +2 -0
  10. package/generators/lib/dbschema-kit/dialect/postgres.js +3 -0
  11. package/generators/lib/dbschema-kit/dialect/sqlite.js +2 -0
  12. package/generators/lib/dbschema-kit/emitters/alter-table.js +7 -0
  13. package/generators/lib/dbschema-kit/emitters/create-table.js +31 -3
  14. package/generators/lib/dbschema-kit/statement-modifier.js +12 -2
  15. package/generators/lib/payload/payload-runner.js +44 -2
  16. package/generators/lib/payload/schema-diff.js +31 -1
  17. package/generators/lib/templates/dashboard-catalog.js +1 -1
  18. package/generators/lib/templates/db-connection-env.js +1 -1
  19. package/generators/lib/templates/dbschema-catalog.js +1 -1
  20. package/generators/lib/templates/field-validation-catalog.js +1 -1
  21. package/generators/lib/templates/mysql-template.js +1 -1
  22. package/generators/lib/templates/oracle-template.js +1 -1
  23. package/generators/lib/templates/postgres-template.js +1 -1
  24. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  25. package/generators/lib/templates/sqlite-template.js +1 -1
  26. package/generators/lib/utils/database-introspector.js +417 -6
  27. package/generators/lib/validators/argument-validator.js +2 -2
  28. package/integrity-manifest.json +18 -18
  29. package/package.json +4 -2
  30. package/scripts/verify-integrity.js +1 -1
  31. package/server.js +1 -1
  32. package/src/components/handlers/adjust_handler.js +1 -1
  33. package/src/components/handlers/audit_handler.js +1 -1
  34. package/src/components/handlers/delete_handler.js +1 -1
  35. package/src/components/handlers/export_handler.js +1 -1
  36. package/src/components/handlers/import_handler.js +1 -1
  37. package/src/components/handlers/insert_handler.js +1 -1
  38. package/src/components/handlers/update_handler.js +1 -1
  39. package/src/components/handlers/upload_handler.js +1 -1
  40. package/src/components/handlers/workflow_handler.js +1 -1
  41. package/src/components/integrations/webhook.js +1 -1
  42. package/src/consumers/baseConsumer.js +1 -1
  43. package/src/consumers/declarativeMapper.js +1 -1
  44. package/src/consumers/handlers/apiHandler.js +1 -1
  45. package/src/consumers/handlers/consoleHandler.js +1 -1
  46. package/src/consumers/handlers/databaseHandler.js +1 -1
  47. package/src/consumers/handlers/index.js +1 -1
  48. package/src/consumers/handlers/kafkaHandler.js +1 -1
  49. package/src/consumers/index.js +1 -1
  50. package/src/consumers/messageTransformer.js +1 -1
  51. package/src/consumers/validator.js +1 -1
  52. package/src/core/db/dialect/base-dialect.js +1 -1
  53. package/src/core/db/dialect/index.js +1 -1
  54. package/src/core/db/dialect/mysql-dialect.js +1 -1
  55. package/src/core/db/dialect/oracle-dialect.js +1 -1
  56. package/src/core/db/dialect/postgres-dialect.js +1 -1
  57. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  58. package/src/core/db/flatten-helper.js +1 -1
  59. package/src/core/db/query-builder-error.js +1 -1
  60. package/src/core/db/query-builder.js +1 -1
  61. package/src/core/db/relation-helper.js +1 -1
  62. package/src/core/handlers/delete_handler.js +1 -1
  63. package/src/core/handlers/insert_handler.js +1 -1
  64. package/src/core/handlers/update_handler.js +1 -1
  65. package/src/core/models/base-model.js +1 -1
  66. package/src/core/utils/cache-manager.js +1 -1
  67. package/src/core/utils/component-engine.js +1 -1
  68. package/src/core/utils/context-builder.js +1 -1
  69. package/src/core/utils/datetime-formatter.js +1 -1
  70. package/src/core/utils/datetime-parser.js +1 -1
  71. package/src/core/utils/db.js +1 -1
  72. package/src/core/utils/logger.js +1 -1
  73. package/src/core/utils/payload-loader.js +1 -1
  74. package/src/core/utils/security-checks.js +1 -1
  75. package/src/middleware/body-options.js +1 -1
  76. package/src/middleware/cors.js +1 -1
  77. package/src/middleware/idempotency.js +1 -1
  78. package/src/middleware/rate-limiter.js +1 -1
  79. package/src/middleware/request-logger.js +1 -1
  80. package/src/middleware/security-headers.js +1 -1
  81. package/src/models/base-model-mysql.js +1 -1
  82. package/src/models/base-model-oracle.js +1 -1
  83. package/src/models/base-model-sqlite.js +1 -1
  84. package/src/models/base-model.js +1 -1
  85. package/src/pro/caching/redis-client.js +1 -1
  86. package/src/pro/caching/redis-helper.js +1 -1
  87. package/src/pro/consumers/baseConsumer.js +1 -1
  88. package/src/pro/consumers/declarativeMapper.js +1 -1
  89. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  90. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  91. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  92. package/src/pro/consumers/handlers/index.js +1 -1
  93. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  94. package/src/pro/consumers/index.js +1 -1
  95. package/src/pro/consumers/messageTransformer.js +1 -1
  96. package/src/pro/consumers/validator.js +1 -1
  97. package/src/pro/database/base-model-mysql.js +1 -1
  98. package/src/pro/database/base-model-oracle.js +1 -1
  99. package/src/pro/database/base-model-sqlite.js +1 -1
  100. package/src/pro/database/db-mysql.js +1 -1
  101. package/src/pro/database/db-oracle.js +1 -1
  102. package/src/pro/database/db-sqlite.js +1 -1
  103. package/src/pro/excel/excel-generator.js +1 -1
  104. package/src/pro/excel/excel-parser.js +1 -1
  105. package/src/pro/excel/export-service.js +1 -1
  106. package/src/pro/excel/export_handler.js +1 -1
  107. package/src/pro/excel/import-service.js +1 -1
  108. package/src/pro/excel/import-validator.js +1 -1
  109. package/src/pro/excel/import_handler.js +1 -1
  110. package/src/pro/excel/upsert-builder.js +1 -1
  111. package/src/pro/idgen/idgen-routes.js +1 -1
  112. package/src/pro/integrations/lookup-resolver.js +1 -1
  113. package/src/pro/integrations/upload-handler-v2.js +1 -1
  114. package/src/pro/integrations/upload-handler.js +1 -1
  115. package/src/pro/integrations/webhook.js +1 -1
  116. package/src/pro/locking/lock-routes.js +1 -1
  117. package/src/pro/locking/resource-lock-manager.js +1 -1
  118. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  119. package/src/pro/messaging/kafkaService.js +1 -1
  120. package/src/pro/messaging/messagehubService.js +1 -1
  121. package/src/pro/messaging/rabbitmqService.js +1 -1
  122. package/src/pro/scheduler/job-manager.js +1 -1
  123. package/src/pro/scheduler/job-routes.js +1 -1
  124. package/src/pro/scheduler/job-validator.js +1 -1
  125. package/src/pro/storage/base-storage-provider.js +1 -1
  126. package/src/pro/storage/file-metadata-helper.js +1 -1
  127. package/src/pro/storage/index.js +1 -1
  128. package/src/pro/storage/local-storage-provider.js +1 -1
  129. package/src/pro/storage/s3-storage-provider.js +1 -1
  130. package/src/pro/storage/upload-cleanup-job.js +1 -1
  131. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  132. package/src/pro/storage/upload-pending-tracker.js +1 -1
  133. package/src/pro/websocket/broadcast-helper.js +1 -1
  134. package/src/pro/websocket/index.js +1 -1
  135. package/src/pro/websocket/livesync-server.js +1 -1
  136. package/src/pro/websocket/ws-broadcaster.js +1 -1
  137. package/src/services/export-service.js +1 -1
  138. package/src/services/import-service.js +1 -1
  139. package/src/services/kafkaConsumerService.js +1 -1
  140. package/src/services/kafkaService.js +1 -1
  141. package/src/services/messagehubService.js +1 -1
  142. package/src/services/rabbitmqService.js +1 -1
  143. package/src/utils/cache-invalidation-registry.js +1 -1
  144. package/src/utils/cache-manager.js +1 -1
  145. package/src/utils/component-engine.js +1 -1
  146. package/src/utils/config-extractor.js +1 -1
  147. package/src/utils/consumerLogger.js +1 -1
  148. package/src/utils/context-builder.js +1 -1
  149. package/src/utils/dashboard-helpers.js +1 -1
  150. package/src/utils/dateHelper.js +1 -1
  151. package/src/utils/datetime-formatter.js +1 -1
  152. package/src/utils/datetime-parser.js +1 -1
  153. package/src/utils/db-bootstrap.js +1 -1
  154. package/src/utils/db-mysql.js +1 -1
  155. package/src/utils/db-oracle.js +1 -1
  156. package/src/utils/db-sqlite.js +1 -1
  157. package/src/utils/db.js +1 -1
  158. package/src/utils/demo-generator.js +1 -1
  159. package/src/utils/excel-generator.js +1 -1
  160. package/src/utils/excel-parser.js +1 -1
  161. package/src/utils/file-watcher.js +1 -1
  162. package/src/utils/id-generator.js +1 -1
  163. package/src/utils/idempotency-manager.js +1 -1
  164. package/src/utils/import-validator.js +1 -1
  165. package/src/utils/license-client.js +1 -1
  166. package/src/utils/lock-manager.js +1 -1
  167. package/src/utils/logger.js +1 -1
  168. package/src/utils/lookup-resolver.js +1 -1
  169. package/src/utils/payload-loader.js +1 -1
  170. package/src/utils/processor-response.js +1 -1
  171. package/src/utils/rabbitmq.js +1 -1
  172. package/src/utils/redis-client.js +1 -1
  173. package/src/utils/redis-helper.js +1 -1
  174. package/src/utils/request-scope.js +1 -1
  175. package/src/utils/security-checks.js +1 -1
  176. package/src/utils/service-resolver.js +1 -1
  177. package/src/utils/shutdown-coordinator.js +1 -1
  178. package/src/utils/trusted-keys.js +1 -1
  179. package/src/utils/upload-handler.js +1 -1
  180. package/src/utils/upsert-builder.js +1 -1
  181. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x491b01=a0_0x32ad;(function(_0x45f3b0,_0x30b9b0){const _0x317deb=a0_0x32ad,_0x2902f6=_0x45f3b0();while(!![]){try{const _0x37cc28=-parseInt(_0x317deb(0x82))/0x1+parseInt(_0x317deb(0x75))/0x2+-parseInt(_0x317deb(0x87))/0x3+parseInt(_0x317deb(0x8e))/0x4+-parseInt(_0x317deb(0x7a))/0x5+parseInt(_0x317deb(0x94))/0x6+parseInt(_0x317deb(0x8a))/0x7*(parseInt(_0x317deb(0x8b))/0x8);if(_0x37cc28===_0x30b9b0)break;else _0x2902f6['push'](_0x2902f6['shift']());}catch(_0x2c7d06){_0x2902f6['push'](_0x2902f6['shift']());}}}(a0_0x506a,0xb8f2f));const multer=require(a0_0x491b01(0x67)),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x491b01(0x80));function a0_0x32ad(_0x47a5ed,_0xce7c12){_0x47a5ed=_0x47a5ed-0x66;const _0x506a69=a0_0x506a();let _0x32addc=_0x506a69[_0x47a5ed];if(a0_0x32ad['qtKWNZ']===undefined){var _0x2159f3=function(_0x4a6a0e){const _0x56e774='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4d8d19='',_0x46201f='';for(let _0x470578=0x0,_0x446e9e,_0x1d7cbc,_0x4b830f=0x0;_0x1d7cbc=_0x4a6a0e['charAt'](_0x4b830f++);~_0x1d7cbc&&(_0x446e9e=_0x470578%0x4?_0x446e9e*0x40+_0x1d7cbc:_0x1d7cbc,_0x470578++%0x4)?_0x4d8d19+=String['fromCharCode'](0xff&_0x446e9e>>(-0x2*_0x470578&0x6)):0x0){_0x1d7cbc=_0x56e774['indexOf'](_0x1d7cbc);}for(let _0xb95a68=0x0,_0x57241d=_0x4d8d19['length'];_0xb95a68<_0x57241d;_0xb95a68++){_0x46201f+='%'+('00'+_0x4d8d19['charCodeAt'](_0xb95a68)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x46201f);};a0_0x32ad['AvPORx']=_0x2159f3,a0_0x32ad['ddZvvw']={},a0_0x32ad['qtKWNZ']=!![];}const _0x1e97dc=_0x506a69[0x0],_0x16ceaa=_0x47a5ed+_0x1e97dc,_0x5de6ce=a0_0x32ad['ddZvvw'][_0x16ceaa];return!_0x5de6ce?(_0x32addc=a0_0x32ad['AvPORx'](_0x32addc),a0_0x32ad['ddZvvw'][_0x16ceaa]=_0x32addc):_0x32addc=_0x5de6ce,_0x32addc;}function a0_0x506a(){const _0x32fccd=['wMrhuwy','zw52','z2v0u3rVCMfNzq','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','mJK3mtK0ofvluM11Aq','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','zMLSzq','zxHPC3rZu3LUyW','zgLZA1n0B3jHz2u','mZq4ntaXnw9hBNfcqG','DxbSB2fKlq','DxbSB2fKrgLY','DxbSB2fKx2HHBMrSzxjFAw5PDa','zxH0BMfTzq','BwLTzxr5Cgu','lI9SB2DNzxi','zxHWB3j0CW','mJG2mtq1uuThDLzm','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','Aw5MBW','AvHtuLO','Aw5JBhvKzxm','ndeZmZmXm0fKEffutW','Dw5SAw5R','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','nJq0vMDMzuDL','otCZmdr5B0XLvva','zxjYB3i','BwTKAxjtEw5J','mtuYodG4nhrtC3nrzG','z25MExu','ELvJsNK','AM9PBG','zgvMyxvSDa','DxbSB2fKx2zPBgvFzgvSzxrLza','nZG3nJC0CNPJu0vl','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','uvn2Cem','BxvSDgvY','rhfuCvC','Dg9tDhjPBMC','Aw9zyNe','lNHSC3G','CMfUzg9TqNL0zxm','Agv4','zffgDNK','Bwf4rMLSzvnPEMu','x3vWBg9HzerPCG'];a0_0x506a=function(){return _0x32fccd;};return a0_0x506a();}class UploadHandler{constructor(){const _0x5e2a32=a0_0x491b01;this[_0x5e2a32(0x70)]=null,this[_0x5e2a32(0x6f)]=0xa*0x400*0x400;}get['uploadDir'](){const _0x312796=a0_0x491b01,_0x291eb1={'iXSRZ':_0x312796(0x7d),'dQFvy':_0x312796(0x95),'gnfyu':'upload_handler_init_error'};if(!this[_0x312796(0x70)]){const _0x1615de=process[_0x312796(0x72)][_0x312796(0x89)]||_0x312796(0x92);this[_0x312796(0x70)]=process[_0x312796(0x72)]['UPLOAD_DIR']||path[_0x312796(0x91)](__dirname,'../../temp/uploads/'+_0x1615de);try{!fsSync['existsSync'](this[_0x312796(0x70)])&&fsSync[_0x312796(0x8d)](this[_0x312796(0x70)],{'recursive':!![]}),logger[_0x312796(0x84)]({'event':_0x291eb1[_0x312796(0x85)],'dir':this['_uploadDir']},_0x291eb1[_0x312796(0x6e)]);}catch(_0x537092){logger[_0x312796(0x8c)]({'event':_0x291eb1[_0x312796(0x8f)],'error':_0x537092['message']},_0x312796(0x76));}}return this['_uploadDir'];}['getStorage'](){const _0x3a3310=a0_0x491b01,_0x4caef3={'QSvpC':function(_0x558bd2,_0x145236,_0x27439c){return _0x558bd2(_0x145236,_0x27439c);},'ZdGQf':_0x3a3310(0x6d)};return multer[_0x3a3310(0x79)]({'destination':(_0x563852,_0x52e464,_0x367e94)=>{const _0x4c7f41=_0x3a3310;!fsSync[_0x4c7f41(0x78)](this[_0x4c7f41(0x7c)])&&fsSync['mkdirSync'](this['uploadDir'],{'recursive':!![]}),_0x4caef3[_0x4c7f41(0x66)](_0x367e94,null,this['uploadDir']);},'filename':(_0x76e6c5,_0x5b89e3,_0x456ecd)=>{const _0x270b98=_0x3a3310,_0x82fd44=crypto[_0x270b98(0x6c)](0x8)[_0x270b98(0x69)](_0x4caef3[_0x270b98(0x71)]),_0x511fee=Date['now'](),_0x54695a=path[_0x270b98(0x7e)](_0x5b89e3['originalname']);_0x4caef3[_0x270b98(0x66)](_0x456ecd,null,_0x270b98(0x7b)+_0x511fee+'-'+_0x82fd44+_0x54695a);}});}['getUploadMiddleware'](){const _0x2591c6=a0_0x491b01,_0x495877={'snXEX':'application/vnd.ms-excel','nwdHT':_0x2591c6(0x6b),'DqTqW':'Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed','zUcJy':function(_0x4b7d99,_0x415f26){return _0x4b7d99(_0x415f26);},'pslSE':_0x2591c6(0x77)};return _0x495877[_0x2591c6(0x90)](multer,{'storage':this[_0x2591c6(0x73)](),'limits':{'fileSize':this[_0x2591c6(0x6f)],'files':0x1},'fileFilter':(_0x22694b,_0x5a1bcc,_0x51f2c2)=>{const _0x1172f5=_0x2591c6,_0x34acb2=['application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',_0x495877['snXEX']],_0x58ac54=[_0x495877['nwdHT'],'.xls'],_0x4ca022=path[_0x1172f5(0x7e)](_0x5a1bcc['originalname'])['toLowerCase']();_0x34acb2[_0x1172f5(0x86)](_0x5a1bcc[_0x1172f5(0x7f)])&&_0x58ac54['includes'](_0x4ca022)?_0x51f2c2(null,!![]):_0x51f2c2(new Error(_0x495877[_0x1172f5(0x68)]));}})['single'](_0x495877['pslSE']);}async['deleteFile'](_0xf67b9f){const _0x1af660=a0_0x491b01,_0x591073={'botGF':_0x1af660(0x93),'BFsaW':'upload_file_delete_error','ioYbq':_0x1af660(0x74)};try{await fs[_0x1af660(0x88)](_0xf67b9f),logger[_0x1af660(0x84)]({'event':_0x591073['botGF'],'filePath':_0xf67b9f},_0x1af660(0x83));}catch(_0x38ad17){logger[_0x1af660(0x8c)]({'event':_0x591073['BFsaW'],'filePath':_0xf67b9f,'error':_0x38ad17['message']},_0x591073[_0x1af660(0x6a)]);}}}module[a0_0x491b01(0x81)]=new UploadHandler();
1
+ function a0_0x51f5(){const _0x2f4b25=['zxHPC3rZu3LUyW','B3jPz2LUywXUyw1L','Bwf4rMLSzvnPEMu','C2LUz2XL','zxjYB3i','mMzpBLzmBG','BwTKAxjtEw5J','y3j5ChrV','zxH0BMfTzq','nJaYndGWn1fwyxfPtG','ChjVBwLZzxm','zgLZA1n0B3jHz2u','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','DxbSB2fKrgLY','zMLSzq','zw52','D2T4the','ndC4mdqYr1vdCev3','z1vwq0m','ndiYmdqZmM5jvhb4zW','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','vvbmt0fex0rjuG','nZe3mtqZovvmyLrqEa','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','mtq5ntLPufLWzw8','mtq2ntu4n3jetNPeyG','BM93','A3rOuwi','rujUEKq','ndKWngTuBxDLCq','x3vWBg9HzerPCG','BwvZC2fNzq','Aw5MBW','ELDADwu','uxb2EMi','nta5ndK0oe5ht1zmBq','lI9SB2DNzxi','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','DxbSB2fKx2HHBMrSzxjFAw5PDa','Dg9mB3DLCKnHC2u','nwvnBgD3uG','uNvbCva','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','DxbSB2fKx2zPBgvFzgvSzxrLza','Cgf0Aa','z2v0u3rVCMfNzq','ntbbuKf4vxa','DxbSB2fKlq'];a0_0x51f5=function(){return _0x2f4b25;};return a0_0x51f5();}const a0_0x5a3103=a0_0x150c;function a0_0x150c(_0x3500da,_0x41b65f){_0x3500da=_0x3500da-0x1cb;const _0x51f525=a0_0x51f5();let _0x150c4a=_0x51f525[_0x3500da];if(a0_0x150c['mHknkG']===undefined){var _0x12d095=function(_0x3ccfb0){const _0xcae5cc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3f3fb6='',_0xf4b63a='';for(let _0x557c5c=0x0,_0x210bd6,_0x17befa,_0x1f1174=0x0;_0x17befa=_0x3ccfb0['charAt'](_0x1f1174++);~_0x17befa&&(_0x210bd6=_0x557c5c%0x4?_0x210bd6*0x40+_0x17befa:_0x17befa,_0x557c5c++%0x4)?_0x3f3fb6+=String['fromCharCode'](0xff&_0x210bd6>>(-0x2*_0x557c5c&0x6)):0x0){_0x17befa=_0xcae5cc['indexOf'](_0x17befa);}for(let _0x5e68dd=0x0,_0x2fc289=_0x3f3fb6['length'];_0x5e68dd<_0x2fc289;_0x5e68dd++){_0xf4b63a+='%'+('00'+_0x3f3fb6['charCodeAt'](_0x5e68dd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xf4b63a);};a0_0x150c['KSNVDK']=_0x12d095,a0_0x150c['ozBqDT']={},a0_0x150c['mHknkG']=!![];}const _0x24d368=_0x51f525[0x0],_0x4c6d36=_0x3500da+_0x24d368,_0x548b63=a0_0x150c['ozBqDT'][_0x4c6d36];return!_0x548b63?(_0x150c4a=a0_0x150c['KSNVDK'](_0x150c4a),a0_0x150c['ozBqDT'][_0x4c6d36]=_0x150c4a):_0x150c4a=_0x548b63,_0x150c4a;}(function(_0x44cbd5,_0x192792){const _0x5f33df=a0_0x150c,_0x19aab9=_0x44cbd5();while(!![]){try{const _0x2c0578=-parseInt(_0x5f33df(0x1f0))/0x1+parseInt(_0x5f33df(0x1e4))/0x2*(parseInt(_0x5f33df(0x1f8))/0x3)+-parseInt(_0x5f33df(0x1f2))/0x4+parseInt(_0x5f33df(0x1d7))/0x5*(-parseInt(_0x5f33df(0x1d2))/0x6)+-parseInt(_0x5f33df(0x1f7))/0x7*(parseInt(_0x5f33df(0x1cc))/0x8)+parseInt(_0x5f33df(0x1e8))/0x9+parseInt(_0x5f33df(0x1dd))/0xa*(parseInt(_0x5f33df(0x1f5))/0xb);if(_0x2c0578===_0x192792)break;else _0x19aab9['push'](_0x19aab9['shift']());}catch(_0x27cb4f){_0x19aab9['push'](_0x19aab9['shift']());}}}(a0_0x51f5,0xb11a0));const multer=require('multer'),path=require(a0_0x5a3103(0x1db)),crypto=require(a0_0x5a3103(0x1e6)),fs=require('fs')[a0_0x5a3103(0x1e9)],fsSync=require('fs'),{logger}=require(a0_0x5a3103(0x1d3));class UploadHandler{constructor(){const _0x5546e6={'ZQGNR':function(_0xf02435,_0x269c60){return _0xf02435*_0x269c60;}};this['_uploadDir']=null,this['maxFileSize']=_0x5546e6['ZQGNR'](0xa,0x400)*0x400;}get[a0_0x5a3103(0x1ec)](){const _0x3d3cd1=a0_0x5a3103,_0x49a73f={'pQqIX':'default','wkxLq':_0x3d3cd1(0x1d5),'gUVCC':'upload_handler_init_error','RuAqP':'Failed\x20to\x20initialize\x20upload\x20handler'};if(!this['_uploadDir']){const _0x19252c=process[_0x3d3cd1(0x1ee)]['RESTFORGE_PROJECT_NAME']||_0x49a73f['pQqIX'];this[_0x3d3cd1(0x1cd)]=process[_0x3d3cd1(0x1ee)][_0x3d3cd1(0x1f4)]||path['join'](__dirname,'../../temp/uploads/'+_0x19252c);try{!fsSync[_0x3d3cd1(0x1df)](this[_0x3d3cd1(0x1cd)])&&fsSync[_0x3d3cd1(0x1e5)](this['_uploadDir'],{'recursive':!![]}),logger[_0x3d3cd1(0x1cf)]({'event':_0x49a73f[_0x3d3cd1(0x1ef)],'dir':this['_uploadDir']},_0x3d3cd1(0x1eb));}catch(_0x467206){logger[_0x3d3cd1(0x1e3)]({'event':_0x49a73f[_0x3d3cd1(0x1f1)],'error':_0x467206[_0x3d3cd1(0x1ce)]},_0x49a73f[_0x3d3cd1(0x1d8)]);}}return this[_0x3d3cd1(0x1cd)];}[a0_0x5a3103(0x1dc)](){const _0xf91582=a0_0x5a3103,_0x1d286c={'zWZue':function(_0x394d23,_0x4bc048,_0x4c94a7){return _0x394d23(_0x4bc048,_0x4c94a7);}};return multer[_0xf91582(0x1ea)]({'destination':(_0x5f164b,_0x204dc0,_0xbfd49)=>{const _0x42e41e=_0xf91582;!fsSync[_0x42e41e(0x1df)](this['uploadDir'])&&fsSync['mkdirSync'](this[_0x42e41e(0x1ec)],{'recursive':!![]}),_0xbfd49(null,this['uploadDir']);},'filename':(_0x451757,_0x12828a,_0x19135d)=>{const _0x4a7161=_0xf91582,_0x528d0f=crypto['randomBytes'](0x8)['toString']('hex'),_0x45f141=Date[_0x4a7161(0x1f9)](),_0xde71e=path[_0x4a7161(0x1e7)](_0x12828a[_0x4a7161(0x1e0)]);_0x1d286c[_0x4a7161(0x1d0)](_0x19135d,null,_0x4a7161(0x1de)+_0x45f141+'-'+_0x528d0f+_0xde71e);}});}['getUploadMiddleware'](){const _0x25e212=a0_0x5a3103,_0x442e00={'kthQb':'.xls','EBnzD':function(_0x507418,_0xb496db){return _0x507418(_0xb496db);},'mOaRu':_0x25e212(0x1d4),'jNKsL':_0x25e212(0x1ed)};return _0x442e00['EBnzD'](multer,{'storage':this[_0x25e212(0x1dc)](),'limits':{'fileSize':this[_0x25e212(0x1e1)],'files':0x1},'fileFilter':(_0x3631a4,_0x2a6bac,_0x66ddc3)=>{const _0x4eca34=_0x25e212,_0x4d1bf7=[_0x4eca34(0x1f3),_0x4eca34(0x1d9)],_0x4ae905=['.xlsx',_0x442e00[_0x4eca34(0x1fa)]],_0xf8abb7=path['extname'](_0x2a6bac['originalname'])[_0x4eca34(0x1d6)]();_0x4d1bf7['includes'](_0x2a6bac['mimetype'])&&_0x4ae905['includes'](_0xf8abb7)?_0x66ddc3(null,!![]):_0x442e00[_0x4eca34(0x1cb)](_0x66ddc3,new Error(_0x442e00['mOaRu']));}})[_0x25e212(0x1e2)](_0x442e00['jNKsL']);}async['deleteFile'](_0x533aeb){const _0x308b7f=a0_0x5a3103,_0x54ec61={'JNxsZ':_0x308b7f(0x1f6),'Qpvzb':'Failed\x20to\x20delete\x20uploaded\x20file'};try{await fs['unlink'](_0x533aeb),logger['info']({'event':_0x308b7f(0x1da),'filePath':_0x533aeb},'Uploaded\x20file\x20deleted');}catch(_0x5ebf0b){logger[_0x308b7f(0x1e3)]({'event':_0x54ec61['JNxsZ'],'filePath':_0x533aeb,'error':_0x5ebf0b['message']},_0x54ec61[_0x308b7f(0x1d1)]);}}}module['exports']=new UploadHandler();
@@ -1 +1 @@
1
- const a0_0x57b682=a0_0x154e;(function(_0x7606a9,_0x3e34f9){const _0x5393e7=a0_0x154e,_0x5534e1=_0x7606a9();while(!![]){try{const _0x357e04=-parseInt(_0x5393e7(0xe9))/0x1+-parseInt(_0x5393e7(0xf9))/0x2*(parseInt(_0x5393e7(0xe0))/0x3)+parseInt(_0x5393e7(0xee))/0x4*(-parseInt(_0x5393e7(0x107))/0x5)+-parseInt(_0x5393e7(0xf4))/0x6+parseInt(_0x5393e7(0x114))/0x7+parseInt(_0x5393e7(0xe6))/0x8+parseInt(_0x5393e7(0x105))/0x9;if(_0x357e04===_0x3e34f9)break;else _0x5534e1['push'](_0x5534e1['shift']());}catch(_0xcf4699){_0x5534e1['push'](_0x5534e1['shift']());}}}(a0_0x15fb,0x562cd));const {logger}=require(a0_0x57b682(0xe5)),DB_TYPES={'POSTGRESQL':a0_0x57b682(0x10c),'MYSQL':a0_0x57b682(0xea),'SQLSERVER':'sqlserver','ORACLE':'oracle','SQLITE':a0_0x57b682(0xeb)};class UpsertBuilder{[a0_0x57b682(0xf2)](){const _0x470477=a0_0x57b682,_0x443b96={'QtkUZ':'invalid_db_type','QUypQ':_0x470477(0x10c)},_0x4535f1=(process['env'][_0x470477(0xff)]||_0x470477(0x10c))[_0x470477(0x100)](),_0x148bfa=Object['values'](DB_TYPES);if(!_0x148bfa[_0x470477(0xf3)](_0x4535f1))return logger[_0x470477(0xdf)]({'event':_0x443b96['QtkUZ'],'provided':_0x4535f1,'fallback':_0x443b96[_0x470477(0xf7)]},_0x470477(0x112)+_0x4535f1+_0x470477(0xef)),DB_TYPES[_0x470477(0xd6)];return _0x4535f1;}['formatDateValue'](_0x3d3b87,_0x4f469b,_0x4f2ee8=![]){const _0x2ed9e1=a0_0x57b682,_0x2dbfaf={'ZLLvB':'NULL'};if(_0x4f2ee8)switch(_0x4f469b){case DB_TYPES[_0x2ed9e1(0xd6)]:return'NULL::DATE';case DB_TYPES[_0x2ed9e1(0xdc)]:return _0x2dbfaf[_0x2ed9e1(0x10f)];case DB_TYPES['SQLITE']:return _0x2dbfaf[_0x2ed9e1(0x10f)];case DB_TYPES['SQLSERVER']:return'NULL';case DB_TYPES['ORACLE']:return _0x2dbfaf['ZLLvB'];default:return'NULL::DATE';}switch(_0x4f469b){case DB_TYPES[_0x2ed9e1(0xd6)]:return _0x3d3b87+'::DATE';case DB_TYPES['MYSQL']:return _0x3d3b87;case DB_TYPES[_0x2ed9e1(0xde)]:return _0x3d3b87;case DB_TYPES[_0x2ed9e1(0xdb)]:return'CAST('+_0x3d3b87+_0x2ed9e1(0x119);case DB_TYPES['ORACLE']:return'TO_DATE('+_0x3d3b87+_0x2ed9e1(0xd9);default:return _0x3d3b87+_0x2ed9e1(0xe2);}}[a0_0x57b682(0x111)](_0x274da1,_0x190e8c,_0x35ac77=![]){const _0x59f348=a0_0x57b682,_0x343e11={'JmzZT':'NULL'};if(_0x35ac77)switch(_0x190e8c){case DB_TYPES[_0x59f348(0xd6)]:return _0x59f348(0xe8);default:return _0x343e11[_0x59f348(0xd3)];}switch(_0x190e8c){case DB_TYPES[_0x59f348(0xd6)]:return _0x274da1+'::BOOLEAN';case DB_TYPES['ORACLE']:return _0x274da1;case DB_TYPES[_0x59f348(0xdc)]:return _0x274da1;case DB_TYPES['SQLITE']:return _0x274da1;case DB_TYPES['SQLSERVER']:return _0x59f348(0xd2)+_0x274da1+'\x20AS\x20BIT)';default:return _0x274da1+'::BOOLEAN';}}['buildEscapeFunction'](_0x40d6ec={}){const _0x392c0f=a0_0x57b682,_0x5b5608={'RttKL':function(_0x38f983,_0x3d5713){return _0x38f983===_0x3d5713;},'uXeCc':_0x392c0f(0xdd),'IWFIN':function(_0x3e2aab,_0x36862e){return _0x3e2aab===_0x36862e;},'vzBNY':'date','Flrdf':function(_0x271bb2,_0x2327c0){return _0x271bb2===_0x2327c0;}},_0x4b8eeb=this[_0x392c0f(0xf2)]();return(_0x3663c3,_0x2d828e)=>{const _0x444ac7=_0x392c0f,_0x1d57a7=_0x40d6ec[_0x2d828e];if(_0x5b5608['RttKL'](_0x3663c3,null)||_0x5b5608['RttKL'](_0x3663c3,undefined)){if(_0x1d57a7&&_0x1d57a7['type']==='date')return this['formatDateValue'](null,_0x4b8eeb,!![]);if(_0x1d57a7&&_0x5b5608['RttKL'](_0x1d57a7['type'],_0x5b5608['uXeCc']))return this[_0x444ac7(0x111)](null,_0x4b8eeb,!![]);return _0x444ac7(0x10e);}if(_0x5b5608['IWFIN'](typeof _0x3663c3,_0x444ac7(0xd4))){const _0x1bf85f='\x27'+_0x3663c3['replace'](/'/g,'\x27\x27')+'\x27';if(_0x1d57a7&&_0x1d57a7[_0x444ac7(0x11e)]===_0x5b5608[_0x444ac7(0x101)])return this['formatDateValue'](_0x1bf85f,_0x4b8eeb,![]);if(_0x1d57a7&&_0x1d57a7['type']===_0x444ac7(0xdd))return this['formatBooleanValue'](_0x1bf85f,_0x4b8eeb,![]);return _0x1bf85f;}if(typeof _0x3663c3===_0x444ac7(0xf5))return _0x3663c3;if(_0x5b5608[_0x444ac7(0xec)](typeof _0x3663c3,_0x5b5608['uXeCc']))return _0x3663c3;const _0x432012='\x27'+String(_0x3663c3)['replace'](/'/g,'\x27\x27')+'\x27';if(_0x1d57a7&&_0x5b5608['Flrdf'](_0x1d57a7['type'],_0x5b5608['vzBNY']))return this[_0x444ac7(0xf8)](_0x432012,_0x4b8eeb,![]);return _0x432012;};}['buildBatchInsert'](_0x52e4ee,_0x395965,_0x31a537,_0x41f30a={}){const _0x1021b7=a0_0x57b682,_0x4fbc47={'KmBtT':function(_0x4c10ff,_0x1bcba9){return _0x4c10ff===_0x1bcba9;}},_0x3b73fe=this['getDatabaseType']();if(_0x4fbc47[_0x1021b7(0x10a)](_0x3b73fe,DB_TYPES['ORACLE']))return this['_buildBatchInsertOracle'](_0x52e4ee,_0x395965,_0x31a537,_0x41f30a);return this[_0x1021b7(0x116)](_0x52e4ee,_0x395965,_0x31a537,_0x41f30a);}[a0_0x57b682(0x116)](_0x34435d,_0x113d28,_0xcf8062,_0x47d8d6={}){const _0x406815=a0_0x57b682,_0x24e76e={'lwofu':'postgresql'};if(_0x34435d['length']===0x0)return{'query':null,'values':[]};const _0x2380ad=this[_0x406815(0xed)](_0x47d8d6),_0x4b0beb=_0x34435d[_0x406815(0x11d)](_0x338e8a=>{const _0x41a59a=_0xcf8062['map'](_0x393584=>_0x2380ad(_0x338e8a[_0x393584],_0x393584));return'('+_0x41a59a['join'](',\x20')+')';}),_0x160128='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x113d28+'\x20('+_0xcf8062['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x4b0beb['join'](',\x0a\x20\x20\x20\x20\x20\x20\x20')+_0x406815(0xd5);return logger[_0x406815(0x110)]({'event':'batch_insert_built','tableName':_0x113d28,'rowCount':_0x34435d[_0x406815(0xf6)],'dbType':_0x24e76e[_0x406815(0xd7)]},'Batch\x20INSERT\x20query\x20built\x20(PostgreSQL)'),{'query':_0x160128,'values':[]};}[a0_0x57b682(0xd8)](_0x329f79,_0x1621c2,_0x4d5e00,_0x449044={}){const _0x29af2b=a0_0x57b682,_0x2c6904={'nzstQ':function(_0x2b60d6,_0x209ffb){return _0x2b60d6===_0x209ffb;},'UGAHF':'oracle'};if(_0x2c6904[_0x29af2b(0x109)](_0x329f79[_0x29af2b(0xf6)],0x0))return{'query':null,'values':[]};const _0x53fb09=this[_0x29af2b(0xed)](_0x449044),_0x36f1fd=_0x329f79[_0x29af2b(0x11d)](_0x5e6e8f=>{const _0x1cf661=_0x4d5e00['map'](_0x40f237=>_0x53fb09(_0x5e6e8f[_0x40f237],_0x40f237));return'\x20\x20INTO\x20'+_0x1621c2+'\x20('+_0x4d5e00['join'](',\x20')+')\x20VALUES\x20('+_0x1cf661['join'](',\x20')+')';}),_0x2c947d=_0x29af2b(0xfe)+_0x36f1fd['join']('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger['debug']({'event':'batch_insert_built','tableName':_0x1621c2,'rowCount':_0x329f79[_0x29af2b(0xf6)],'dbType':_0x2c6904['UGAHF']},'Batch\x20INSERT\x20query\x20built\x20(Oracle)'),{'query':_0x2c947d,'values':[]};}['buildBatchUpdate'](_0x2068cd,_0x260e93,_0x29b8bb,_0x192d04,_0x544636,_0x33357d={}){const _0x37c66e=a0_0x57b682,_0x5f4179={'YWxqU':function(_0x5d3d24,_0x311e84){return _0x5d3d24===_0x311e84;}},_0x28f79c=this['getDatabaseType']();if(_0x5f4179['YWxqU'](_0x28f79c,DB_TYPES['ORACLE']))return this['_buildBatchUpdateOracle'](_0x2068cd,_0x260e93,_0x29b8bb,_0x192d04,_0x544636,_0x33357d);if(_0x5f4179[_0x37c66e(0xda)](_0x28f79c,DB_TYPES[_0x37c66e(0xdc)]))return this[_0x37c66e(0x118)](_0x2068cd,_0x260e93,_0x29b8bb,_0x192d04,_0x544636,_0x33357d);return this['_buildBatchUpdatePostgres'](_0x2068cd,_0x260e93,_0x29b8bb,_0x192d04,_0x544636,_0x33357d);}[a0_0x57b682(0xfd)](_0x1af386,_0x5655ae,_0x1dada1,_0x211039,_0x5cc98d,_0x46fe67={}){const _0x241eb6=a0_0x57b682,_0x11f241={'pNaEY':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20','bCBgy':'\x20AND\x20','jgsVl':'batch_update_built'};if(_0x1af386[_0x241eb6(0xf6)]===0x0)return{'query':null,'values':[]};const _0x352daa=this[_0x241eb6(0xed)](_0x46fe67),_0x78427a=_0x1dada1[_0x241eb6(0x11b)](_0x2e93ec=>!_0x5cc98d[_0x241eb6(0xf3)](_0x2e93ec)&&_0x2e93ec!==_0x211039);if(_0x78427a[_0x241eb6(0xf6)]===0x0)return logger['warn']({'event':'batch_update_no_columns','tableName':_0x5655ae},_0x241eb6(0xe1)),{'query':null,'values':[]};const _0x2d2bbb=_0x1af386[_0x241eb6(0x11d)](_0x52186c=>{const _0xeb1e0d=_0x241eb6,_0x3fe1d1=[..._0x5cc98d,..._0x78427a],_0x448dd5=_0x3fe1d1[_0xeb1e0d(0x11d)](_0x5dfbe6=>_0x352daa(_0x52186c[_0x5dfbe6],_0x5dfbe6));return'('+_0x448dd5[_0xeb1e0d(0x117)](',\x20')+')';}),_0x286bef=_0x78427a['map'](_0x319d96=>_0x319d96+'\x20=\x20v.'+_0x319d96)['join'](_0x11f241['pNaEY']),_0x465e40=_0x5cc98d[_0x241eb6(0x11d)](_0x37f7cf=>'t.'+_0x37f7cf+_0x241eb6(0xfc)+_0x37f7cf)['join'](_0x11f241['bCBgy']),_0x5266c0='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x5655ae+'\x20AS\x20t\x0a\x20\x20\x20\x20\x20\x20SET\x20'+_0x286bef+_0x241eb6(0xe4)+_0x2d2bbb['join'](_0x241eb6(0xe3))+'\x0a\x20\x20\x20\x20\x20\x20)\x20AS\x20v('+[..._0x5cc98d,..._0x78427a][_0x241eb6(0x117)](',\x20')+_0x241eb6(0x104)+_0x465e40+_0x241eb6(0xd5);return logger['debug']({'event':_0x11f241['jgsVl'],'tableName':_0x5655ae,'rowCount':_0x1af386[_0x241eb6(0xf6)],'updateColumns':_0x78427a[_0x241eb6(0xf6)],'dbType':'postgresql'},_0x241eb6(0x10b)),{'query':_0x5266c0,'values':[]};}[a0_0x57b682(0x108)](_0x1cb239,_0x86bb27,_0x153283,_0x28b670,_0x2f4259,_0x37cdbf={}){const _0x39041f=a0_0x57b682,_0x2bceb6={'lwlZW':function(_0x4b33ea,_0x1d2da1){return _0x4b33ea===_0x1d2da1;},'BYjUf':function(_0x33ef45,_0x94034e){return _0x33ef45===_0x94034e;},'ScPoQ':_0x39041f(0xd0),'jvdbf':'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)','kEOyZ':'\x20AND\x20'};if(_0x2bceb6[_0x39041f(0xe7)](_0x1cb239[_0x39041f(0xf6)],0x0))return{'query':null,'values':[]};const _0x2fea74=this['buildEscapeFunction'](_0x37cdbf),_0x236321=_0x153283[_0x39041f(0x11b)](_0xe3989e=>!_0x2f4259['includes'](_0xe3989e)&&_0xe3989e!==_0x28b670);if(_0x236321['length']===0x0)return logger['warn']({'event':_0x2bceb6[_0x39041f(0xfa)],'tableName':_0x86bb27},_0x2bceb6[_0x39041f(0xf0)]),{'query':null,'values':[]};const _0x26a9f4=[..._0x2f4259,..._0x236321],_0x368ba0=_0x1cb239['map']((_0x30cf68,_0x16e158)=>{const _0x3f827c=_0x39041f,_0x390939=_0x26a9f4[_0x3f827c(0x11d)](_0xe9f605=>{const _0x14b74a=_0x2fea74(_0x30cf68[_0xe9f605],_0xe9f605);return _0x2bceb6['lwlZW'](_0x16e158,0x0)?_0x14b74a+'\x20AS\x20'+_0xe9f605:_0x14b74a;});return _0x3f827c(0x113)+_0x390939[_0x3f827c(0x117)](',\x20')+'\x20FROM\x20DUAL';}),_0x1ba6cb=_0x236321[_0x39041f(0x11d)](_0x445b91=>'t.'+_0x445b91+'\x20=\x20v.'+_0x445b91)['join'](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0x44f0d8=_0x2f4259[_0x39041f(0x11d)](_0x5d57d5=>'t.'+_0x5d57d5+_0x39041f(0xfc)+_0x5d57d5)['join'](_0x2bceb6[_0x39041f(0x11a)]),_0x427d17=_0x39041f(0xfb)+_0x86bb27+'\x20t\x0a\x20\x20\x20\x20\x20\x20USING\x20(\x0a'+_0x368ba0[_0x39041f(0x117)]('\x0a\x20\x20\x20\x20UNION\x20ALL\x0a')+_0x39041f(0x103)+_0x44f0d8+')\x0a\x20\x20\x20\x20\x20\x20WHEN\x20MATCHED\x20THEN\x20UPDATE\x20SET\x20'+_0x1ba6cb+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x39041f(0xd1),'tableName':_0x86bb27,'rowCount':_0x1cb239[_0x39041f(0xf6)],'updateColumns':_0x236321[_0x39041f(0xf6)],'dbType':'oracle'},_0x39041f(0x115)),{'query':_0x427d17,'values':[]};}[a0_0x57b682(0x118)](_0x29b08e,_0x277b59,_0x297b46,_0x307c27,_0x52211c,_0x1dd59a={}){const _0x1c5c6e=a0_0x57b682,_0x50d764={'MrKwJ':function(_0x18e018,_0x2befd7){return _0x18e018===_0x2befd7;},'zhfZX':_0x1c5c6e(0xe3)};if(_0x29b08e[_0x1c5c6e(0xf6)]===0x0)return{'query':null,'values':[]};const _0x574084=this[_0x1c5c6e(0xed)](_0x1dd59a),_0x3cfb15=_0x297b46['filter'](_0x21f730=>!_0x52211c[_0x1c5c6e(0xf3)](_0x21f730)&&_0x21f730!==_0x307c27);if(_0x50d764[_0x1c5c6e(0x106)](_0x3cfb15['length'],0x0))return logger['warn']({'event':'batch_update_no_columns','tableName':_0x277b59},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x2760e5=[...new Set([..._0x52211c,..._0x3cfb15])],_0x3169ce=_0x29b08e['map'](_0x43cdb2=>{const _0x40cb08=_0x2760e5['map'](_0x5da0e9=>_0x574084(_0x43cdb2[_0x5da0e9],_0x5da0e9));return'('+_0x40cb08['join'](',\x20')+')';}),_0x10daf1=_0x3cfb15[_0x1c5c6e(0x11d)](_0x266ccd=>_0x266ccd+_0x1c5c6e(0xf1)+_0x266ccd+')')['join'](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0x2b956b='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x277b59+'\x20('+_0x2760e5['join'](',\x20')+_0x1c5c6e(0x10d)+_0x3169ce[_0x1c5c6e(0x117)](_0x50d764['zhfZX'])+'\x0a\x20\x20\x20\x20\x20\x20ON\x20DUPLICATE\x20KEY\x20UPDATE\x20'+_0x10daf1+_0x1c5c6e(0xd5);return logger['debug']({'event':'batch_update_built','tableName':_0x277b59,'rowCount':_0x29b08e['length'],'updateColumns':_0x3cfb15[_0x1c5c6e(0xf6)],'dbType':_0x1c5c6e(0xea)},'Batch\x20UPDATE\x20query\x20built\x20(MySQL\x20ON\x20DUPLICATE\x20KEY)'),{'query':_0x2b956b,'values':[]};}[a0_0x57b682(0x102)](_0x3986fe,_0x199b13=0x64){const _0x1bb23e=a0_0x57b682,_0x110132={'WWQEh':function(_0xf15800,_0x116df3){return _0xf15800<_0x116df3;}},_0x1d111a=[];for(let _0x2c4f09=0x0;_0x110132['WWQEh'](_0x2c4f09,_0x3986fe['length']);_0x2c4f09+=_0x199b13){_0x1d111a['push'](_0x3986fe[_0x1bb23e(0x11c)](_0x2c4f09,_0x2c4f09+_0x199b13));}return _0x1d111a;}}module['exports']=new UpsertBuilder();function a0_0x154e(_0x557db9,_0x4fd462){_0x557db9=_0x557db9-0xd0;const _0x15fb80=a0_0x15fb();let _0x154eac=_0x15fb80[_0x557db9];if(a0_0x154e['SetGEf']===undefined){var _0x311888=function(_0x688185){const _0x43fcd3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x269d95='',_0x47fcfe='';for(let _0x944b74=0x0,_0x1f5f28,_0x2e0200,_0x3cf006=0x0;_0x2e0200=_0x688185['charAt'](_0x3cf006++);~_0x2e0200&&(_0x1f5f28=_0x944b74%0x4?_0x1f5f28*0x40+_0x2e0200:_0x2e0200,_0x944b74++%0x4)?_0x269d95+=String['fromCharCode'](0xff&_0x1f5f28>>(-0x2*_0x944b74&0x6)):0x0){_0x2e0200=_0x43fcd3['indexOf'](_0x2e0200);}for(let _0x1236c0=0x0,_0x5a30c2=_0x269d95['length'];_0x1236c0<_0x5a30c2;_0x1236c0++){_0x47fcfe+='%'+('00'+_0x269d95['charCodeAt'](_0x1236c0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x47fcfe);};a0_0x154e['HGpzCR']=_0x311888,a0_0x154e['uaWdTy']={},a0_0x154e['SetGEf']=!![];}const _0x37d4dd=_0x15fb80[0x0],_0x473021=_0x557db9+_0x37d4dd,_0x36fff6=a0_0x154e['uaWdTy'][_0x473021];return!_0x36fff6?(_0x154eac=a0_0x154e['HGpzCR'](_0x154eac),a0_0x154e['uaWdTy'][_0x473021]=_0x154eac):_0x154eac=_0x36fff6,_0x154eac;}function a0_0x15fb(){const _0x44bc41=['BNvTyMvY','BgvUz3rO','uvv5Cfe','zM9YBwf0rgf0zvzHBhvL','nJe4q0Xyze5s','u2nqB1e','cIaGicaGie1fuKDfieLove8G','id0GDI4','x2j1AwXKqMf0y2HvCgrHDgvqB3n0z3jLCW','su5trvjuiefmtaO','rejFvfLqrq','Dg9mB3DLCKnHC2u','DNPctLK','y2H1BMTsB3DZ','cIaGicaGicKGDGOGicaGicbptIaO','kqOGicaGicbxsevsrsa','nJeZnZiWoeDwzuHosW','txjlD0O','mZm1v1rqzK1R','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','BNPZDfe','s21cDfq','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','Cg9ZDgDYzxnXBa','kqOGicaGicbwquXvrvmG','tLvmta','wKXmDKi','zgvIDwC','zM9YBwf0qM9VBgvHBLzHBhvL','sw52ywXPzcbeqL9uwvbfoIa','icaGifnftevdvca','mZCYmJe5neX6DKHJqG','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHpCMfJBguGtuvsr0uP','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','AM9PBG','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','ieftierbveuP','A0vpEvO','zMLSDgvY','C2XPy2u','BwfW','DhLWzq','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','yMf0y2HFDxbKyxrLx2j1AwX0','q0ftvcG','sM16wLq','C3rYAw5N','cIaGica','ue9tveDsrvnrta','BhDVzNu','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','lcaNwvLzws1nts1ercCP','wvD4Cvu','u1fmu0vsvKvs','tvLtuuW','yM9VBgvHBG','u1fmsvrf','D2fYBG','mZGWmvr3vhHpua','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','oJPeqvrf','laOGicaGicaGia','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','lI9SB2DNzxi','mZuXndiZmKL3CLnSzq','qLLQvwy','tLvmtdO6qK9ptevbtG','mJq4mduXAgLrrNnl','BxLZCwW','C3fSAxrL','uNr0s0W','yNvPBgrfC2nHCgvgDw5JDgLVBG','mJmYofHMug9LvG','lIbgywXSAw5NigjHy2SGDg8GCg9ZDgDYzxnXBc4','ANzKyMy','id0GvKfmvuvtka','z2v0rgf0ywjHC2vuExbL','Aw5JBhvKzxm','mZCYodq3mNvywencDW'];a0_0x15fb=function(){return _0x44bc41;};return a0_0x15fb();}
1
+ const a0_0xd58b44=a0_0x337c;(function(_0x4f567e,_0x4c2079){const _0x480420=a0_0x337c,_0x26d4a8=_0x4f567e();while(!![]){try{const _0x10b5cc=parseInt(_0x480420(0x1ba))/0x1*(parseInt(_0x480420(0x1d4))/0x2)+parseInt(_0x480420(0x1b6))/0x3+-parseInt(_0x480420(0x1a7))/0x4*(parseInt(_0x480420(0x1ab))/0x5)+-parseInt(_0x480420(0x1b0))/0x6+parseInt(_0x480420(0x1ca))/0x7+-parseInt(_0x480420(0x1bf))/0x8+-parseInt(_0x480420(0x1b5))/0x9;if(_0x10b5cc===_0x4c2079)break;else _0x26d4a8['push'](_0x26d4a8['shift']());}catch(_0x499297){_0x26d4a8['push'](_0x26d4a8['shift']());}}}(a0_0xa214,0xf14ad));const {logger}=require(a0_0xd58b44(0x1af)),DB_TYPES={'POSTGRESQL':a0_0xd58b44(0x1d1),'MYSQL':a0_0xd58b44(0x1a4),'SQLSERVER':a0_0xd58b44(0x1e4),'ORACLE':'oracle','SQLITE':a0_0xd58b44(0x1eb)};class UpsertBuilder{['getDatabaseType'](){const _0x38959d=a0_0xd58b44,_0xcf1e0b={'GEspr':'postgresql'},_0x191fcf=(process[_0x38959d(0x1a9)]['DB_TYPE']||_0x38959d(0x1d1))[_0x38959d(0x1bd)](),_0xf84e71=Object['values'](DB_TYPES);if(!_0xf84e71[_0x38959d(0x1e1)](_0x191fcf))return logger['warn']({'event':'invalid_db_type','provided':_0x191fcf,'fallback':_0xcf1e0b['GEspr']},'Invalid\x20DB_TYPE:\x20'+_0x191fcf+'.\x20Falling\x20back\x20to\x20postgresql.'),DB_TYPES['POSTGRESQL'];return _0x191fcf;}['formatDateValue'](_0x40e131,_0x225aaf,_0xef1c2d=![]){const _0x2fbd3c=a0_0xd58b44,_0x57902f={'sqpZW':_0x2fbd3c(0x1f2)};if(_0xef1c2d)switch(_0x225aaf){case DB_TYPES[_0x2fbd3c(0x1c4)]:return _0x2fbd3c(0x1d3);case DB_TYPES[_0x2fbd3c(0x1f8)]:return _0x57902f['sqpZW'];case DB_TYPES['SQLITE']:return _0x57902f[_0x2fbd3c(0x1dd)];case DB_TYPES['SQLSERVER']:return _0x57902f['sqpZW'];case DB_TYPES[_0x2fbd3c(0x1d0)]:return _0x2fbd3c(0x1f2);default:return _0x2fbd3c(0x1d3);}switch(_0x225aaf){case DB_TYPES[_0x2fbd3c(0x1c4)]:return _0x40e131+'::DATE';case DB_TYPES['MYSQL']:return _0x40e131;case DB_TYPES['SQLITE']:return _0x40e131;case DB_TYPES['SQLSERVER']:return'CAST('+_0x40e131+'\x20AS\x20DATE)';case DB_TYPES[_0x2fbd3c(0x1d0)]:return _0x2fbd3c(0x1c6)+_0x40e131+_0x2fbd3c(0x1f9);default:return _0x40e131+_0x2fbd3c(0x1cc);}}[a0_0xd58b44(0x1fb)](_0x307efa,_0x261632,_0xd17ff7=![]){const _0x1e7669=a0_0xd58b44,_0xddd045={'xzUuo':'NULL::BOOLEAN'};if(_0xd17ff7)switch(_0x261632){case DB_TYPES[_0x1e7669(0x1c4)]:return _0xddd045[_0x1e7669(0x1ae)];default:return _0x1e7669(0x1f2);}switch(_0x261632){case DB_TYPES[_0x1e7669(0x1c4)]:return _0x307efa+_0x1e7669(0x1ea);case DB_TYPES[_0x1e7669(0x1d0)]:return _0x307efa;case DB_TYPES[_0x1e7669(0x1f8)]:return _0x307efa;case DB_TYPES[_0x1e7669(0x1cb)]:return _0x307efa;case DB_TYPES['SQLSERVER']:return _0x1e7669(0x1b7)+_0x307efa+_0x1e7669(0x1d8);default:return _0x307efa+_0x1e7669(0x1ea);}}['buildEscapeFunction'](_0x5a967c={}){const _0xe745bf={'AJwjR':function(_0x22b560,_0x15d2b5){return _0x22b560===_0x15d2b5;},'ctoWQ':function(_0x5f0b69,_0x3faf38){return _0x5f0b69===_0x3faf38;},'Hxasx':function(_0x490108,_0x1256df){return _0x490108===_0x1256df;},'zSXcQ':'boolean','mAlOU':function(_0x461070,_0x529a6e){return _0x461070===_0x529a6e;},'yOlMY':'number','faPFj':function(_0x21b75e,_0x427c16){return _0x21b75e(_0x427c16);}},_0x905961=this['getDatabaseType']();return(_0x59e7fc,_0x217a36)=>{const _0x58018a=a0_0x337c,_0x18eafb=_0x5a967c[_0x217a36];if(_0xe745bf[_0x58018a(0x1fd)](_0x59e7fc,null)||_0x59e7fc===undefined){if(_0x18eafb&&_0xe745bf[_0x58018a(0x1cd)](_0x18eafb[_0x58018a(0x1e9)],_0x58018a(0x1fc)))return this[_0x58018a(0x1f6)](null,_0x905961,!![]);if(_0x18eafb&&_0x18eafb['type']==='boolean')return this['formatBooleanValue'](null,_0x905961,!![]);return'NULL';}if(_0xe745bf[_0x58018a(0x1cd)](typeof _0x59e7fc,_0x58018a(0x1b2))){const _0x5b1481='\x27'+_0x59e7fc[_0x58018a(0x1ed)](/'/g,'\x27\x27')+'\x27';if(_0x18eafb&&_0x18eafb[_0x58018a(0x1e9)]==='date')return this[_0x58018a(0x1f6)](_0x5b1481,_0x905961,![]);if(_0x18eafb&&_0xe745bf[_0x58018a(0x1b4)](_0x18eafb['type'],_0xe745bf['zSXcQ']))return this[_0x58018a(0x1fb)](_0x5b1481,_0x905961,![]);return _0x5b1481;}if(_0xe745bf[_0x58018a(0x1d2)](typeof _0x59e7fc,_0xe745bf['yOlMY']))return _0x59e7fc;if(_0xe745bf['mAlOU'](typeof _0x59e7fc,_0xe745bf['zSXcQ']))return _0x59e7fc;const _0x937ce9='\x27'+_0xe745bf[_0x58018a(0x1d6)](String,_0x59e7fc)[_0x58018a(0x1ed)](/'/g,'\x27\x27')+'\x27';if(_0x18eafb&&_0x18eafb['type']==='date')return this[_0x58018a(0x1f6)](_0x937ce9,_0x905961,![]);return _0x937ce9;};}['buildBatchInsert'](_0x13c838,_0x3b3e70,_0x318896,_0x1d5ced={}){const _0xa110f5=a0_0xd58b44,_0x4b7c94=this[_0xa110f5(0x1fa)]();if(_0x4b7c94===DB_TYPES['ORACLE'])return this['_buildBatchInsertOracle'](_0x13c838,_0x3b3e70,_0x318896,_0x1d5ced);return this['_buildBatchInsertPostgres'](_0x13c838,_0x3b3e70,_0x318896,_0x1d5ced);}['_buildBatchInsertPostgres'](_0x50ee39,_0x3516d6,_0x29acc9,_0x209fe7={}){const _0x2f039e=a0_0xd58b44,_0x84dbac={'UrEID':function(_0x167adf,_0x2bdb3a){return _0x167adf===_0x2bdb3a;}};if(_0x84dbac['UrEID'](_0x50ee39[_0x2f039e(0x1d9)],0x0))return{'query':null,'values':[]};const _0x339e4e=this[_0x2f039e(0x1df)](_0x209fe7),_0x3d5457=_0x50ee39['map'](_0x2fa8f5=>{const _0x435c7a=_0x29acc9['map'](_0x43df31=>_0x339e4e(_0x2fa8f5[_0x43df31],_0x43df31));return'('+_0x435c7a['join'](',\x20')+')';}),_0x38f428=_0x2f039e(0x1b1)+_0x3516d6+'\x20('+_0x29acc9[_0x2f039e(0x1ce)](',\x20')+_0x2f039e(0x1e3)+_0x3d5457[_0x2f039e(0x1ce)](',\x0a\x20\x20\x20\x20\x20\x20\x20')+_0x2f039e(0x1e6);return logger['debug']({'event':_0x2f039e(0x1c3),'tableName':_0x3516d6,'rowCount':_0x50ee39[_0x2f039e(0x1d9)],'dbType':_0x2f039e(0x1d1)},'Batch\x20INSERT\x20query\x20built\x20(PostgreSQL)'),{'query':_0x38f428,'values':[]};}['_buildBatchInsertOracle'](_0x40bdf6,_0x47294a,_0x2e77cb,_0x3c05d2={}){const _0xed116=a0_0xd58b44,_0x319a8c={'hbeiH':function(_0x22a642,_0x2f64ad){return _0x22a642===_0x2f64ad;},'kyxGx':'oracle'};if(_0x319a8c['hbeiH'](_0x40bdf6['length'],0x0))return{'query':null,'values':[]};const _0x94eba6=this[_0xed116(0x1df)](_0x3c05d2),_0x2277c6=_0x40bdf6[_0xed116(0x1f4)](_0x110e17=>{const _0x71d767=_0xed116,_0x527c19=_0x2e77cb['map'](_0x516997=>_0x94eba6(_0x110e17[_0x516997],_0x516997));return _0x71d767(0x1c7)+_0x47294a+'\x20('+_0x2e77cb[_0x71d767(0x1ce)](',\x20')+')\x20VALUES\x20('+_0x527c19[_0x71d767(0x1ce)](',\x20')+')';}),_0x527f8e=_0xed116(0x1f3)+_0x2277c6[_0xed116(0x1ce)]('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger[_0xed116(0x1e2)]({'event':'batch_insert_built','tableName':_0x47294a,'rowCount':_0x40bdf6[_0xed116(0x1d9)],'dbType':_0x319a8c[_0xed116(0x1f5)]},'Batch\x20INSERT\x20query\x20built\x20(Oracle)'),{'query':_0x527f8e,'values':[]};}[a0_0xd58b44(0x1a6)](_0x3452ee,_0x209ef2,_0x32de2b,_0x1c997f,_0x9b83b7,_0x53004b={}){const _0x2a01e6=a0_0xd58b44,_0x5a2717={'dJEfG':function(_0x586b45,_0x47b5db){return _0x586b45===_0x47b5db;}},_0x2864a2=this['getDatabaseType']();if(_0x2864a2===DB_TYPES['ORACLE'])return this[_0x2a01e6(0x1da)](_0x3452ee,_0x209ef2,_0x32de2b,_0x1c997f,_0x9b83b7,_0x53004b);if(_0x5a2717[_0x2a01e6(0x1e0)](_0x2864a2,DB_TYPES[_0x2a01e6(0x1f8)]))return this['_buildBatchUpdateMysql'](_0x3452ee,_0x209ef2,_0x32de2b,_0x1c997f,_0x9b83b7,_0x53004b);return this[_0x2a01e6(0x1de)](_0x3452ee,_0x209ef2,_0x32de2b,_0x1c997f,_0x9b83b7,_0x53004b);}[a0_0xd58b44(0x1de)](_0x3271e8,_0x25b2bc,_0x539a01,_0xbbe15,_0x42bac9,_0x3cb17e={}){const _0x13d03d=a0_0xd58b44,_0x297a37={'ahvRP':function(_0xa25d73,_0x2d3d7b){return _0xa25d73===_0x2d3d7b;},'iIDGW':function(_0x279b8f,_0xbfd3e4){return _0x279b8f===_0xbfd3e4;},'gwpWC':_0x13d03d(0x1ef),'AVEds':'batch_update_built','CFdCJ':_0x13d03d(0x1d1)};if(_0x297a37[_0x13d03d(0x1bc)](_0x3271e8['length'],0x0))return{'query':null,'values':[]};const _0x4c431e=this[_0x13d03d(0x1df)](_0x3cb17e),_0x79faed=_0x539a01[_0x13d03d(0x1e8)](_0x2d3f08=>!_0x42bac9['includes'](_0x2d3f08)&&_0x2d3f08!==_0xbbe15);if(_0x297a37[_0x13d03d(0x1f0)](_0x79faed[_0x13d03d(0x1d9)],0x0))return logger['warn']({'event':_0x297a37[_0x13d03d(0x1ac)],'tableName':_0x25b2bc},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x237276=_0x3271e8['map'](_0x5d7e80=>{const _0x52cb23=_0x13d03d,_0x4e8bec=[..._0x42bac9,..._0x79faed],_0x242c9b=_0x4e8bec['map'](_0x1a9fee=>_0x4c431e(_0x5d7e80[_0x1a9fee],_0x1a9fee));return'('+_0x242c9b[_0x52cb23(0x1ce)](',\x20')+')';}),_0xddc3ef=_0x79faed[_0x13d03d(0x1f4)](_0x331090=>_0x331090+_0x13d03d(0x1dc)+_0x331090)['join'](_0x13d03d(0x1a3)),_0x2bcfa2=_0x42bac9[_0x13d03d(0x1f4)](_0x5e6d69=>'t.'+_0x5e6d69+_0x13d03d(0x1dc)+_0x5e6d69)[_0x13d03d(0x1ce)](_0x13d03d(0x1f1)),_0x46cbf4=_0x13d03d(0x1e7)+_0x25b2bc+'\x20AS\x20t\x0a\x20\x20\x20\x20\x20\x20SET\x20'+_0xddc3ef+'\x0a\x20\x20\x20\x20\x20\x20FROM\x20(VALUES\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x237276['join'](_0x13d03d(0x1bb))+_0x13d03d(0x1d5)+[..._0x42bac9,..._0x79faed][_0x13d03d(0x1ce)](',\x20')+_0x13d03d(0x1c0)+_0x2bcfa2+'\x0a\x20\x20\x20\x20';return logger[_0x13d03d(0x1e2)]({'event':_0x297a37[_0x13d03d(0x1d7)],'tableName':_0x25b2bc,'rowCount':_0x3271e8['length'],'updateColumns':_0x79faed[_0x13d03d(0x1d9)],'dbType':_0x297a37['CFdCJ']},_0x13d03d(0x1aa)),{'query':_0x46cbf4,'values':[]};}[a0_0xd58b44(0x1da)](_0x37dd86,_0x3ef1bf,_0x5b9932,_0x4f2cbf,_0x2b3d8a,_0x3bde44={}){const _0x135d8f=a0_0xd58b44,_0x520457={'wQqfD':function(_0x9d4ff3,_0x93922a,_0x1bade1){return _0x9d4ff3(_0x93922a,_0x1bade1);},'UlLBD':function(_0x1f0e32,_0x211f6b){return _0x1f0e32===_0x211f6b;},'WNKJg':_0x135d8f(0x1a8),'WMrrd':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20','FSywS':_0x135d8f(0x1b3),'LywoY':_0x135d8f(0x1be)};if(_0x520457['UlLBD'](_0x37dd86['length'],0x0))return{'query':null,'values':[]};const _0x5e014a=this[_0x135d8f(0x1df)](_0x3bde44),_0x3a25ff=_0x5b9932[_0x135d8f(0x1e8)](_0x569ed7=>!_0x2b3d8a[_0x135d8f(0x1e1)](_0x569ed7)&&_0x569ed7!==_0x4f2cbf);if(_0x520457[_0x135d8f(0x1c2)](_0x3a25ff['length'],0x0))return logger['warn']({'event':_0x135d8f(0x1ef),'tableName':_0x3ef1bf},_0x520457['WNKJg']),{'query':null,'values':[]};const _0x2aefc0=[..._0x2b3d8a,..._0x3a25ff],_0x319867=_0x37dd86[_0x135d8f(0x1f4)]((_0x38ec44,_0x1dd483)=>{const _0x2454be=_0x2aefc0['map'](_0x228318=>{const _0x35c3b5=a0_0x337c,_0x567810=_0x520457[_0x35c3b5(0x1c9)](_0x5e014a,_0x38ec44[_0x228318],_0x228318);return _0x520457[_0x35c3b5(0x1c2)](_0x1dd483,0x0)?_0x567810+'\x20AS\x20'+_0x228318:_0x567810;});return'\x20\x20\x20\x20SELECT\x20'+_0x2454be['join'](',\x20')+'\x20FROM\x20DUAL';}),_0x4fdc39=_0x3a25ff[_0x135d8f(0x1f4)](_0x427283=>'t.'+_0x427283+'\x20=\x20v.'+_0x427283)[_0x135d8f(0x1ce)](_0x520457[_0x135d8f(0x1a5)]),_0x4e2d31=_0x2b3d8a[_0x135d8f(0x1f4)](_0x3196d6=>'t.'+_0x3196d6+'\x20=\x20v.'+_0x3196d6)[_0x135d8f(0x1ce)](_0x135d8f(0x1f1)),_0x388c79='\x0a\x20\x20\x20\x20\x20\x20MERGE\x20INTO\x20'+_0x3ef1bf+_0x135d8f(0x1c1)+_0x319867[_0x135d8f(0x1ce)](_0x520457[_0x135d8f(0x1cf)])+'\x0a\x20\x20\x20\x20\x20\x20)\x20v\x0a\x20\x20\x20\x20\x20\x20ON\x20('+_0x4e2d31+_0x135d8f(0x1fe)+_0x4fdc39+_0x135d8f(0x1e6);return logger['debug']({'event':'batch_update_built','tableName':_0x3ef1bf,'rowCount':_0x37dd86[_0x135d8f(0x1d9)],'updateColumns':_0x3a25ff['length'],'dbType':'oracle'},_0x520457[_0x135d8f(0x1e5)]),{'query':_0x388c79,'values':[]};}['_buildBatchUpdateMysql'](_0x19e3a8,_0x57f48a,_0x4f4cbe,_0x3903ba,_0x2e6816,_0x19aecb={}){const _0x36be4e=a0_0xd58b44,_0x2f6ef1={'djnyz':function(_0x35eec7,_0x4cf7a0){return _0x35eec7===_0x4cf7a0;},'RrskD':_0x36be4e(0x1a8),'QeuGx':_0x36be4e(0x1bb),'mFjTE':'batch_update_built','oluWp':'Batch\x20UPDATE\x20query\x20built\x20(MySQL\x20ON\x20DUPLICATE\x20KEY)'};if(_0x2f6ef1['djnyz'](_0x19e3a8[_0x36be4e(0x1d9)],0x0))return{'query':null,'values':[]};const _0x492076=this['buildEscapeFunction'](_0x19aecb),_0xd31d5c=_0x4f4cbe['filter'](_0x19234b=>!_0x2e6816[_0x36be4e(0x1e1)](_0x19234b)&&_0x19234b!==_0x3903ba);if(_0x2f6ef1[_0x36be4e(0x1ad)](_0xd31d5c['length'],0x0))return logger['warn']({'event':_0x36be4e(0x1ef),'tableName':_0x57f48a},_0x2f6ef1[_0x36be4e(0x1b8)]),{'query':null,'values':[]};const _0x1bfb84=[...new Set([..._0x2e6816,..._0xd31d5c])],_0x2a52e6=_0x19e3a8['map'](_0x4b5a0a=>{const _0x4d2231=_0x36be4e,_0xc140b1=_0x1bfb84[_0x4d2231(0x1f4)](_0x208374=>_0x492076(_0x4b5a0a[_0x208374],_0x208374));return'('+_0xc140b1['join'](',\x20')+')';}),_0x3c2e04=_0xd31d5c['map'](_0x5c5647=>_0x5c5647+_0x36be4e(0x1b9)+_0x5c5647+')')[_0x36be4e(0x1ce)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0x59ed88='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x57f48a+'\x20('+_0x1bfb84['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x2a52e6[_0x36be4e(0x1ce)](_0x2f6ef1['QeuGx'])+_0x36be4e(0x1c5)+_0x3c2e04+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x2f6ef1[_0x36be4e(0x1ec)],'tableName':_0x57f48a,'rowCount':_0x19e3a8[_0x36be4e(0x1d9)],'updateColumns':_0xd31d5c['length'],'dbType':_0x36be4e(0x1a4)},_0x2f6ef1['oluWp']),{'query':_0x59ed88,'values':[]};}['chunkRows'](_0x10453e,_0x1113ab=0x64){const _0x4585d7=a0_0xd58b44,_0x4ada57={'tyACq':function(_0x414576,_0x4b2219){return _0x414576<_0x4b2219;},'aHXmr':function(_0x233024,_0x2c896f){return _0x233024+_0x2c896f;}},_0x19fac2=[];for(let _0xf7f94d=0x0;_0x4ada57[_0x4585d7(0x1f7)](_0xf7f94d,_0x10453e['length']);_0xf7f94d+=_0x1113ab){_0x19fac2[_0x4585d7(0x1ee)](_0x10453e[_0x4585d7(0x1c8)](_0xf7f94d,_0x4ada57[_0x4585d7(0x1db)](_0xf7f94d,_0x1113ab)));}return _0x19fac2;}}function a0_0x337c(_0x442016,_0x215e5b){_0x442016=_0x442016-0x1a3;const _0xa21417=a0_0xa214();let _0x337c5e=_0xa21417[_0x442016];if(a0_0x337c['UztRXL']===undefined){var _0x1a5f4f=function(_0x41bab2){const _0x191746='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1c8768='',_0x37d783='';for(let _0x46e16d=0x0,_0x28a878,_0x1bad48,_0x494f5d=0x0;_0x1bad48=_0x41bab2['charAt'](_0x494f5d++);~_0x1bad48&&(_0x28a878=_0x46e16d%0x4?_0x28a878*0x40+_0x1bad48:_0x1bad48,_0x46e16d++%0x4)?_0x1c8768+=String['fromCharCode'](0xff&_0x28a878>>(-0x2*_0x46e16d&0x6)):0x0){_0x1bad48=_0x191746['indexOf'](_0x1bad48);}for(let _0x300f6a=0x0,_0x1b90e6=_0x1c8768['length'];_0x300f6a<_0x1b90e6;_0x300f6a++){_0x37d783+='%'+('00'+_0x1c8768['charCodeAt'](_0x300f6a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x37d783);};a0_0x337c['OcdzaS']=_0x1a5f4f,a0_0x337c['xQJdsL']={},a0_0x337c['UztRXL']=!![];}const _0x2742a0=_0xa21417[0x0],_0x205873=_0x442016+_0x2742a0,_0x184fb2=a0_0x337c['xQJdsL'][_0x205873];return!_0x184fb2?(_0x337c5e=a0_0x337c['OcdzaS'](_0x337c5e),a0_0x337c['xQJdsL'][_0x205873]=_0x337c5e):_0x337c5e=_0x184fb2,_0x337c5e;}module['exports']=new UpsertBuilder();function a0_0xa214(){const _0x5c02c9=['yNvPBgrcyxrJAfvWzgf0zq','ngngt0DwEG','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','zw52','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','mti0nZG0nvvbs1bwuW','z3DWv0m','zgPUExO','EhPvDw8','lI9SB2DNzxi','nZaXmJeXmfLotKTxrq','cIaGicaGieLou0vsvcbjtLrpia','C3rYAw5N','cIaGicbvtKLptIbbteWk','shHHC3G','nZCZmJyWmMD4DK5SAa','mJaWmdyZn0jxtezuAq','q0ftvcG','uNjZA0q','id0GvKfmvuvtka','mtm1mdq4nxHlBNDWAa','laOGicaGicaGia','ywH2uLa','Dg9mB3DLCKnHC2u','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHpCMfJBguGtuvsr0uP','mZe5mZeWnfvVzwrWCq','kqOGicaGicbxsevsrsa','ihqkicaGicaGvvnjtKCGkaO','vwXmqKq','yMf0y2HFAw5Zzxj0x2j1AwX0','ue9tveDsrvnrta','cIaGicaGie9oiervueXjq0fursblrvKGvvbeqvrfia','ve9FrefursG','icbjtLrpia','C2XPy2u','D1fXzKq','mte1mZi3nZnSzxr4wuS','u1fmsvrf','oJPeqvrf','y3rVv1e','AM9PBG','rLn5D1m','t1jbq0Xf','Cg9ZDgDYzxnXBa','BufSt1u','tLvmtdO6refurq','mLzOvuT1yq','cIaGicaGicKGqvmGDIG','zMfqrMO','qvzfzhm','ieftiejjvcK','BgvUz3rO','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','yuHyBxi','id0GDI4','C3fWwLC','x2j1AwXKqMf0y2HvCgrHDgvqB3n0z3jLCW','yNvPBgrfC2nHCgvgDw5JDgLVBG','zePfzKC','Aw5JBhvKzxm','zgvIDwC','kqOGicaGicbwquXvrvmG','C3fSC2vYDMvY','thL3B1K','cIaGica','cIaGicaGifvqrefursa','zMLSDgvY','DhLWzq','oJPct09mrufo','C3fSAxrL','BuzQveu','CMvWBgfJzq','ChvZAa','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','AuLer1C','ieforca','tLvmta','su5trvjuiefmtaO','BwfW','A3L4r3G','zM9YBwf0rgf0zvzHBhvL','DhLbq3e','tvLtuuW','lcaNwvLzws1nts1ercCP','z2v0rgf0ywjHC2vuExbL','zM9YBwf0qM9VBgvHBLzHBhvL','zgf0zq','quP3ALi','kqOGicaGicbxsevoie1bveniruqGveHftIbvuerbveuGu0vuia','laOGicaGicaGica','BxLZCwW','v01YCMq'];a0_0xa214=function(){return _0x5c02c9;};return a0_0xa214();}
@@ -1 +1 @@
1
- const a0_0x5cd131=a0_0x20e1;(function(_0x3b2b0f,_0x23d5e9){const _0x94aeaf=a0_0x20e1,_0x289e52=_0x3b2b0f();while(!![]){try{const _0x12c27c=parseInt(_0x94aeaf(0x1d1))/0x1+-parseInt(_0x94aeaf(0x1e6))/0x2+parseInt(_0x94aeaf(0x1cd))/0x3*(-parseInt(_0x94aeaf(0x1d8))/0x4)+-parseInt(_0x94aeaf(0x1d3))/0x5*(parseInt(_0x94aeaf(0x1f9))/0x6)+parseInt(_0x94aeaf(0x205))/0x7+parseInt(_0x94aeaf(0x1d9))/0x8*(-parseInt(_0x94aeaf(0x1f1))/0x9)+parseInt(_0x94aeaf(0x1ea))/0xa*(parseInt(_0x94aeaf(0x1de))/0xb);if(_0x12c27c===_0x23d5e9)break;else _0x289e52['push'](_0x289e52['shift']());}catch(_0x1664db){_0x289e52['push'](_0x289e52['shift']());}}}(a0_0x12b2,0x6d0a8));const axios=require(a0_0x5cd131(0x1d4)),DEFAULT_TIMEOUT=0x2710,DEFAULT_METHOD=a0_0x5cd131(0x1d7),DEFAULT_HOST=a0_0x5cd131(0x1f4),DEFAULT_PORT=0xbb8;function a0_0x20e1(_0x17dd84,_0x38cbfb){_0x17dd84=_0x17dd84-0x1cb;const _0x12b27a=a0_0x12b2();let _0x20e166=_0x12b27a[_0x17dd84];if(a0_0x20e1['HgSKKX']===undefined){var _0x11fbe3=function(_0x194109){const _0x16ac99='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2779ef='',_0x4f3ebb='';for(let _0x29a507=0x0,_0x27009d,_0x14638f,_0x4523f6=0x0;_0x14638f=_0x194109['charAt'](_0x4523f6++);~_0x14638f&&(_0x27009d=_0x29a507%0x4?_0x27009d*0x40+_0x14638f:_0x14638f,_0x29a507++%0x4)?_0x2779ef+=String['fromCharCode'](0xff&_0x27009d>>(-0x2*_0x29a507&0x6)):0x0){_0x14638f=_0x16ac99['indexOf'](_0x14638f);}for(let _0x54c336=0x0,_0x33a0fe=_0x2779ef['length'];_0x54c336<_0x33a0fe;_0x54c336++){_0x4f3ebb+='%'+('00'+_0x2779ef['charCodeAt'](_0x54c336)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4f3ebb);};a0_0x20e1['vCJWIX']=_0x11fbe3,a0_0x20e1['lcTHhh']={},a0_0x20e1['HgSKKX']=!![];}const _0x303e1a=_0x12b27a[0x0],_0x4050a7=_0x17dd84+_0x303e1a,_0x4fba8e=a0_0x20e1['lcTHhh'][_0x4050a7];return!_0x4fba8e?(_0x20e166=a0_0x20e1['vCJWIX'](_0x20e166),a0_0x20e1['lcTHhh'][_0x4050a7]=_0x20e166):_0x20e166=_0x4fba8e,_0x20e166;}function resolveTemplateString(_0x328af8,_0x2a9f93){const _0x4cd6a9=a0_0x5cd131,_0x56cbd3={'taRJE':function(_0x2bdb92,_0x3652bb,_0x510576){return _0x2bdb92(_0x3652bb,_0x510576);},'gixZO':function(_0x2103ed,_0x43e73e){return _0x2103ed!==_0x43e73e;},'EqYRe':function(_0x3f418b,_0x3d3b9c){return _0x3f418b!==_0x3d3b9c;},'tQJNW':_0x4cd6a9(0x1f6),'qEahW':function(_0x1709b6,_0x189880){return _0x1709b6(_0x189880);}};if(typeof _0x328af8!=='string')return _0x328af8;return _0x328af8['replace'](/\{\{([^}]+)\}\}/g,(_0x178bb2,_0x7097f7)=>{const _0x465e47=_0x4cd6a9,_0x275907=_0x7097f7['trim'](),_0x41050c=_0x56cbd3[_0x465e47(0x200)](getNestedValue,_0x2a9f93,_0x275907);if(_0x56cbd3[_0x465e47(0x1ee)](_0x41050c,undefined)&&_0x56cbd3[_0x465e47(0x204)](_0x41050c,null))return typeof _0x41050c===_0x56cbd3['tQJNW']?JSON[_0x465e47(0x1f7)](_0x41050c):_0x56cbd3['qEahW'](String,_0x41050c);return _0x178bb2;});}function resolveTemplateVariables(_0x58f759,_0x5e7ba7){const _0xdb5c08=a0_0x5cd131,_0x5bcc06={'fOSZS':_0xdb5c08(0x1ec),'GZOIN':function(_0x369dc4,_0x2d2dca,_0xcc9370){return _0x369dc4(_0x2d2dca,_0xcc9370);},'aRsGI':function(_0x18260a,_0x1ea47e){return _0x18260a!==_0x1ea47e;},'eTNHC':'object'};if(typeof _0x58f759===_0x5bcc06['fOSZS'])return _0x5bcc06['GZOIN'](resolveTemplateString,_0x58f759,_0x5e7ba7);if(Array[_0xdb5c08(0x1db)](_0x58f759))return _0x58f759[_0xdb5c08(0x1eb)](_0x52dbf3=>resolveTemplateVariables(_0x52dbf3,_0x5e7ba7));if(_0x5bcc06['aRsGI'](_0x58f759,null)&&typeof _0x58f759===_0x5bcc06[_0xdb5c08(0x1d6)]){const _0x4678da={};for(const [_0x5dc043,_0x4b28d6]of Object['entries'](_0x58f759)){_0x4678da[_0x5dc043]=resolveTemplateVariables(_0x4b28d6,_0x5e7ba7);}return _0x4678da;}return _0x58f759;}function getNestedValue(_0x3007c6,_0x71d735){const _0x40896e=a0_0x5cd131,_0x18197a={'GeJyx':function(_0x4dcfcf,_0x2e1d72){return _0x4dcfcf!==_0x2e1d72;}};return _0x71d735[_0x40896e(0x1fc)]('.')['reduce']((_0x503659,_0x31aa1a)=>{const _0x16f7ce=_0x40896e;return _0x503659&&_0x18197a[_0x16f7ce(0x1cb)](_0x503659[_0x31aa1a],undefined)?_0x503659[_0x31aa1a]:undefined;},_0x3007c6);}function resolveUrl(_0x1d66e4,_0xa82f4f){const _0x2f79d5=a0_0x5cd131,_0x5bb5d1={'UansT':function(_0x289453,_0x6ff4b1){return _0x289453!==_0x6ff4b1;},'sSJNd':_0x2f79d5(0x1ec)};if(!_0x1d66e4||_0x5bb5d1[_0x2f79d5(0x1d2)](typeof _0x1d66e4,_0x5bb5d1[_0x2f79d5(0x1e7)]))return _0x1d66e4;if(_0x1d66e4['startsWith'](_0x2f79d5(0x1fd))||_0x1d66e4[_0x2f79d5(0x1cf)]('https://'))return _0x1d66e4;const _0x5e4e7d=process['env']['SERVER_ADDRESS']||process['env'][_0x2f79d5(0x1cc)]||DEFAULT_HOST,_0x9caf03=process['env'][_0x2f79d5(0x1e0)]||DEFAULT_PORT,_0x57c276='http://'+_0x5e4e7d+':'+_0x9caf03;if(_0x1d66e4['startsWith'](_0x2f79d5(0x1e9)))return''+_0x57c276+_0x1d66e4;if(_0x1d66e4['startsWith']('/')){const _0x59e6e4=_0xa82f4f&&_0xa82f4f[_0x2f79d5(0x202)]||'';if(_0x59e6e4)return _0x57c276+_0x2f79d5(0x1e9)+_0x59e6e4+_0x1d66e4;return''+_0x57c276+_0x1d66e4;}return _0x1d66e4;}function buildHookContext(_0x4a3923){const _0x4763d2=a0_0x5cd131,_0x24be5d={'JcpCS':_0x4763d2(0x201)};return{'id':_0x4a3923['id']||'','newStatus':_0x4a3923['newStatus']||'','oldStatus':_0x4a3923['oldStatus']||'','remarks':_0x4a3923['remarks']||'','tableName':_0x4a3923['tableName']||'','user_id':_0x4a3923['userId']||_0x24be5d['JcpCS'],'timestamp':new Date()[_0x4763d2(0x1fb)](),'record':_0x4a3923['record']||{},'requestData':_0x4a3923['requestData']||{},'project':_0x4a3923[_0x4763d2(0x202)]||'','authHeader':_0x4a3923[_0x4763d2(0x1e1)]||null};}async function executeHook(_0x16f8ca,_0x2fd13a){const _0x3268ba=a0_0x5cd131,_0x3a21ec={'ySwOY':function(_0x374fc4,_0x2bbce5){return _0x374fc4!==_0x2bbce5;},'gkbpR':'Hook\x20skipped:\x20unsupported\x20type','NyxqZ':function(_0x46adc0,_0x53ce87,_0x5c2f91){return _0x46adc0(_0x53ce87,_0x5c2f91);},'XBKCi':function(_0x13d8c3,_0x5bbcda,_0x4e75e3){return _0x13d8c3(_0x5bbcda,_0x4e75e3);},'MShmG':function(_0x48416f,_0xaa9eea){return _0x48416f&&_0xaa9eea;},'ozoJQ':_0x3268ba(0x1dd),'IkTug':'RestForge-Workflow/1.0'};if(!_0x16f8ca||_0x3a21ec[_0x3268ba(0x1dc)](_0x16f8ca[_0x3268ba(0x203)],'api'))return{'success':!![],'message':_0x3a21ec['gkbpR']};const _0x57deb0=_0x16f8ca[_0x3268ba(0x1f5)]===!![],_0x5aebaa=(_0x16f8ca['method']||DEFAULT_METHOD)[_0x3268ba(0x206)](),_0x2bbc1b=_0x16f8ca[_0x3268ba(0x1ef)]||DEFAULT_TIMEOUT,_0x474b8e=_0x3a21ec[_0x3268ba(0x1d0)](resolveTemplateString,_0x16f8ca['url'],_0x2fd13a),_0x41d3e6=resolveUrl(_0x474b8e,_0x2fd13a),_0x4c00c5=_0x16f8ca['body']?resolveTemplateVariables(_0x16f8ca['body'],_0x2fd13a):{},_0x1ac1cc=_0x16f8ca['headers']?_0x3a21ec[_0x3268ba(0x1e5)](resolveTemplateVariables,_0x16f8ca['headers'],_0x2fd13a):{},_0x823b54=_0x1ac1cc&&(_0x1ac1cc['Authorization']!==undefined||_0x3a21ec[_0x3268ba(0x1dc)](_0x1ac1cc[_0x3268ba(0x1ed)],undefined)),_0x20ef36=_0x3a21ec['MShmG'](!_0x823b54,_0x2fd13a)&&_0x2fd13a[_0x3268ba(0x1e1)]?{'Authorization':_0x2fd13a[_0x3268ba(0x1e1)]}:{};try{const _0x32b4d3=await axios({'method':_0x5aebaa[_0x3268ba(0x1da)](),'url':_0x41d3e6,'data':_0x4c00c5,'headers':{'Content-Type':_0x3a21ec['ozoJQ'],'User-Agent':_0x3a21ec[_0x3268ba(0x1fa)],..._0x20ef36,..._0x1ac1cc},'timeout':_0x2bbc1b});return console['log']('Workflow\x20hook\x20executed:\x20'+_0x5aebaa+'\x20'+_0x41d3e6+'\x20→\x20'+_0x32b4d3[_0x3268ba(0x1f0)]),{'success':!![],'message':'Hook\x20executed\x20successfully','status':_0x32b4d3[_0x3268ba(0x1f0)],'url':_0x41d3e6};}catch(_0x32d66e){const _0x5d9a98=_0x32d66e[_0x3268ba(0x1d5)]?_0x3268ba(0x1e3)+_0x32d66e[_0x3268ba(0x1d5)]['status']+':\x20'+_0x32d66e['response'][_0x3268ba(0x1fe)]:_0x32d66e[_0x3268ba(0x1ff)];console[_0x3268ba(0x1ce)]('Workflow\x20hook\x20failed:\x20'+_0x5aebaa+'\x20'+_0x41d3e6+_0x3268ba(0x1e4)+_0x5d9a98);if(_0x57deb0)return{'success':![],'message':_0x3268ba(0x1f2)+_0x5d9a98,'error':_0x5d9a98,'url':_0x41d3e6};return console[_0x3268ba(0x1e8)](_0x3268ba(0x1f3)+_0x5d9a98),{'success':!![],'message':'Non-blocking\x20hook\x20failed\x20(ignored):\x20'+_0x5d9a98,'warning':_0x5d9a98,'url':_0x41d3e6};}}function a0_0x12b2(){const _0x30b9f0=['mty0nduYotD3rNbdCe4','BgvUz3rO','ue9sva','yxv0AeHLywrLCG','zxHWB3j0CW','sfruuca','iokgKIa','wejlq2K','mJqYmda2tNbIDuz4','C1nktMq','D2fYBG','l2fWAs8','mtbssxnnAu4','BwfW','C3rYAw5N','yxv0Ag9YAxPHDgLVBG','z2L4wK8','DgLTzw91Da','C3rHDhvZ','ntiXodjmzwvsu1G','qMXVy2TPBMCGAg9VAYbMywLSzwq6ia','tM9UlwjSB2nRAw5NigHVB2SGzMfPBgvKicHPz25VCMvKktOG','Bg9JywXOB3n0','yMXVy2TPBMC','B2jQzwn0','C3rYAw5NAwz5','sg9VAYbLEgvJDxrPB24GzMfPBgvK','nNPcy053tW','swTuDwC','Dg9ju09tDhjPBMC','C3bSAxq','Ahr0CdOVlW','C3rHDhvZvgv4Da','BwvZC2fNzq','DgfssKu','C3LZDgvT','ChjVAMvJDa','DhLWzq','rxfzuMu','mJC3mZqZnunpzNzMrW','Dg9vChbLCKnHC2u','r2vkExG','se9tva','m2zjzKDSzq','zxjYB3i','C3rHCNrZv2L0Aa','tNL4CvO','ntKZmdq0vvfOv2Hi','vwfUC1q','mZe4mZy4mffNr0fruG','yxHPB3m','CMvZCg9UC2u','zvrosem','ue9tva','mJu5mty5mMT2ugPHsG','odCYyxHesxnH','Dg9mB3DLCKnHC2u','AxnbCNjHEq','Evn3t1K','yxbWBgLJyxrPB24VANnVBG'];a0_0x12b2=function(){return _0x30b9f0;};return a0_0x12b2();}async function executeHooks(_0x4e39a0,_0x256fcd){const _0x49c3a0=a0_0x5cd131,_0x53d26b={'vdFVp':function(_0x21fe23,_0x309485){return _0x21fe23===_0x309485;},'BAnrD':function(_0x54c6e3,_0x128915,_0x253d3a){return _0x54c6e3(_0x128915,_0x253d3a);},'bqENM':_0x49c3a0(0x1f8)};if(!_0x4e39a0||!Array[_0x49c3a0(0x1db)](_0x4e39a0)||_0x53d26b['vdFVp'](_0x4e39a0[_0x49c3a0(0x1df)],0x0))return{'success':!![],'results':[],'hooksExecuted':0x0};const _0x27e86a=[];for(const _0x513cd0 of _0x4e39a0){const _0x180ca4=await _0x53d26b['BAnrD'](executeHook,_0x513cd0,_0x256fcd);_0x27e86a['push'](_0x180ca4);if(!_0x180ca4['success'])return{'success':![],'error':_0x180ca4[_0x49c3a0(0x1ff)]||_0x53d26b['bqENM'],'results':_0x27e86a,'hooksExecuted':_0x27e86a[_0x49c3a0(0x1df)]};}return{'success':!![],'results':_0x27e86a,'hooksExecuted':_0x27e86a[_0x49c3a0(0x1df)]};}module[a0_0x5cd131(0x1e2)]={'resolveTemplateString':resolveTemplateString,'resolveTemplateVariables':resolveTemplateVariables,'resolveUrl':resolveUrl,'buildHookContext':buildHookContext,'executeHook':executeHook,'executeHooks':executeHooks};
1
+ const a0_0x5a628d=a0_0x7d74;(function(_0x5e687c,_0x3cc31c){const _0x391d27=a0_0x7d74,_0x48bd05=_0x5e687c();while(!![]){try{const _0x26fa23=-parseInt(_0x391d27(0x16c))/0x1+-parseInt(_0x391d27(0x178))/0x2+parseInt(_0x391d27(0x16e))/0x3+parseInt(_0x391d27(0x172))/0x4+parseInt(_0x391d27(0x158))/0x5*(parseInt(_0x391d27(0x14c))/0x6)+parseInt(_0x391d27(0x155))/0x7*(parseInt(_0x391d27(0x14e))/0x8)+-parseInt(_0x391d27(0x14f))/0x9*(-parseInt(_0x391d27(0x153))/0xa);if(_0x26fa23===_0x3cc31c)break;else _0x48bd05['push'](_0x48bd05['shift']());}catch(_0x595af6){_0x48bd05['push'](_0x48bd05['shift']());}}}(a0_0x5597,0xeeefb));const axios=require('axios'),DEFAULT_TIMEOUT=0x2710,DEFAULT_METHOD=a0_0x5a628d(0x167),DEFAULT_HOST=a0_0x5a628d(0x14b),DEFAULT_PORT=0xbb8;function resolveTemplateString(_0x1088fd,_0x32d165){const _0x561d7c=a0_0x5a628d,_0x58951a={'oRLnq':function(_0x5d9e20,_0x1e767a,_0x1de241){return _0x5d9e20(_0x1e767a,_0x1de241);},'jKnfr':function(_0x47362a,_0x2ef19e){return _0x47362a!==_0x2ef19e;},'KfizN':function(_0x4c1430,_0x4f66c7){return _0x4c1430===_0x4f66c7;},'ARzOO':'object','qyNbC':function(_0x456509,_0x2fde04){return _0x456509(_0x2fde04);},'bqgri':_0x561d7c(0x152)};if(_0x58951a['jKnfr'](typeof _0x1088fd,_0x58951a[_0x561d7c(0x157)]))return _0x1088fd;return _0x1088fd[_0x561d7c(0x156)](/\{\{([^}]+)\}\}/g,(_0x28ce34,_0x76052f)=>{const _0x3a4187=_0x561d7c,_0x1e8170=_0x76052f[_0x3a4187(0x14d)](),_0x554b53=_0x58951a[_0x3a4187(0x13b)](getNestedValue,_0x32d165,_0x1e8170);if(_0x58951a['jKnfr'](_0x554b53,undefined)&&_0x554b53!==null)return _0x58951a[_0x3a4187(0x13c)](typeof _0x554b53,_0x58951a['ARzOO'])?JSON['stringify'](_0x554b53):_0x58951a['qyNbC'](String,_0x554b53);return _0x28ce34;});}function a0_0x5597(){const _0x2bcaf3=['wMj0rNe','C3rYAw5N','mJmXmgz0D0XVDW','iokgKIa','mtruvvnsB20','CMvWBgfJzq','yNfNCMK','mtmXmej4AwnovW','l2fWAs8','BMv3u3rHDhvZ','CMvTyxjRCW','se9tva','C3rHDhvZ','qxv0Ag9YAxPHDgLVBG','yxv0AeHLywrLCG','uMvZDezVCMDLlvDVCMTMBg93lZeUma','DgfIBgvoyw1L','CMvKDwnL','BgvUz3rO','sg9VAYbLEgvJDxrPB24GzMfPBgvK','D2fYBG','C3rHCNrZv2L0Aa','ue9tva','BwvZC2fNzq','C3bSAxq','v29YA2zSB3CGAg9VAYbMywLSzwq6ia','rwPRBKu','mtGWntG0n0Xmu1zwva','tM9UlwjSB2nRAw5NigHVB2SGzMfPBgvKicHPz25VCMvKktOG','otu5mda0B0rnB2zd','sfruuca','CMvZCg9UC2u','Ahr0Chm6lY8','mteYmdK4ofDIq01bDq','CKr0CLu','yKzrD08','zxjYB3i','Ahr0CdOVlW','ChjVAMvJDa','mZGZodKXnhDxBLfPrq','yM9KEq','B1jmBNe','s2zPEK4','CMvJB3jK','zw52','B2XKu3rHDhvZ','yxbWBgLJyxrPB24VANnVBG','Bg9N','Bwv0Ag9K','AxnbCNjHEq','u0vsvKvsx0ferfjfu1m','Dg9mB3DLCKnHC2u','yxbP','sg9VAYbLEgvJDxrLzcbZDwnJzxnZzNvSBhK','ChvZAa','v29YA2zSB3CGAg9VAYbLEgvJDxrLzdOG','DhLWzq','Bg9JywXOB3n0','mZi1nJjQC0DbtKS','DhjPBq','mJC1ndy3mNbWsLvlqW','nZC2nZbhuwvRvxq','DxjS'];a0_0x5597=function(){return _0x2bcaf3;};return a0_0x5597();}function resolveTemplateVariables(_0x385fa3,_0x9259ea){const _0xe2addd=a0_0x5a628d,_0x43b5db={'JpWgE':function(_0x5ead7f,_0x5adac1){return _0x5ead7f===_0x5adac1;},'ZbtFq':function(_0x3b7c9e,_0x491e90,_0x5cdae9){return _0x3b7c9e(_0x491e90,_0x5cdae9);}};if(_0x43b5db['JpWgE'](typeof _0x385fa3,'string'))return _0x43b5db[_0xe2addd(0x151)](resolveTemplateString,_0x385fa3,_0x9259ea);if(Array['isArray'](_0x385fa3))return _0x385fa3['map'](_0x553a40=>resolveTemplateVariables(_0x553a40,_0x9259ea));if(_0x385fa3!==null&&typeof _0x385fa3==='object'){const _0x44dedf={};for(const [_0x2d7ef0,_0x1528fd]of Object['entries'](_0x385fa3)){_0x44dedf[_0x2d7ef0]=_0x43b5db['ZbtFq'](resolveTemplateVariables,_0x1528fd,_0x9259ea);}return _0x44dedf;}return _0x385fa3;}function getNestedValue(_0x35190c,_0x3a5915){const _0x20ed01=a0_0x5a628d,_0x46b1e2={'liEOP':function(_0x53fa81,_0xda5ed8){return _0x53fa81!==_0xda5ed8;}};return _0x3a5915[_0x20ed01(0x169)]('.')[_0x20ed01(0x162)]((_0x49b696,_0x43ba58)=>{return _0x49b696&&_0x46b1e2['liEOP'](_0x49b696[_0x43ba58],undefined)?_0x49b696[_0x43ba58]:undefined;},_0x35190c);}function resolveUrl(_0x495fd2,_0x11d88b){const _0x34268b=a0_0x5a628d,_0xaf8f3={'AXguC':function(_0x5dbe67,_0x19f105){return _0x5dbe67!==_0x19f105;},'tlqmj':'string','JdOlY':_0x34268b(0x159)};if(!_0x495fd2||_0xaf8f3['AXguC'](typeof _0x495fd2,_0xaf8f3['tlqmj']))return _0x495fd2;if(_0x495fd2['startsWith'](_0x34268b(0x176))||_0x495fd2[_0x34268b(0x166)](_0x34268b(0x171)))return _0x495fd2;const _0x3385c3=process[_0x34268b(0x13e)][_0x34268b(0x144)]||process[_0x34268b(0x13e)][_0x34268b(0x15c)]||DEFAULT_HOST,_0x316237=process['env']['PORT']||DEFAULT_PORT,_0x165e38='http://'+_0x3385c3+':'+_0x316237;if(_0x495fd2['startsWith'](_0xaf8f3['JdOlY']))return''+_0x165e38+_0x495fd2;if(_0x495fd2['startsWith']('/')){const _0xb8a6ff=_0x11d88b&&_0x11d88b['project']||'';if(_0xb8a6ff)return _0x165e38+_0x34268b(0x159)+_0xb8a6ff+_0x495fd2;return''+_0x165e38+_0x495fd2;}return _0x495fd2;}function buildHookContext(_0x34a469){const _0xaefbef=a0_0x5a628d;return{'id':_0x34a469['id']||'','newStatus':_0x34a469[_0xaefbef(0x15a)]||'','oldStatus':_0x34a469[_0xaefbef(0x13f)]||'','remarks':_0x34a469[_0xaefbef(0x15b)]||'','tableName':_0x34a469[_0xaefbef(0x161)]||'','user_id':_0x34a469['userId']||'system','timestamp':new Date()['toISOString'](),'record':_0x34a469[_0xaefbef(0x13d)]||{},'requestData':_0x34a469['requestData']||{},'project':_0x34a469[_0xaefbef(0x177)]||'','authHeader':_0x34a469['authHeader']||null};}async function executeHook(_0x1feaea,_0x7b5777){const _0x25be9a=a0_0x5a628d,_0x39cbb4={'bFQwO':_0x25be9a(0x146),'EjknE':function(_0x506059,_0x4a57d7,_0x16c93c){return _0x506059(_0x4a57d7,_0x16c93c);},'aCLIi':function(_0x49035f,_0x23b735,_0x50199f){return _0x49035f(_0x23b735,_0x50199f);},'ZBzmd':function(_0x2d42c7,_0x32f8f4,_0x5ec40e){return _0x2d42c7(_0x32f8f4,_0x5ec40e);},'rDtrU':function(_0x2a891c,_0x49bc09){return _0x2a891c!==_0x49bc09;},'Fravm':_0x25be9a(0x160)};if(!_0x1feaea||_0x1feaea[_0x25be9a(0x14a)]!==_0x39cbb4[_0x25be9a(0x174)])return{'success':!![],'message':'Hook\x20skipped:\x20unsupported\x20type'};const _0xc24272=_0x1feaea['blocking']===!![],_0x33e82a=(_0x1feaea[_0x25be9a(0x142)]||DEFAULT_METHOD)['toUpperCase'](),_0x48e2ee=_0x1feaea['timeout']||DEFAULT_TIMEOUT,_0x4ea72a=_0x39cbb4[_0x25be9a(0x16b)](resolveTemplateString,_0x1feaea[_0x25be9a(0x150)],_0x7b5777),_0x16afb4=_0x39cbb4['aCLIi'](resolveUrl,_0x4ea72a,_0x7b5777),_0x3646bd=_0x1feaea['body']?_0x39cbb4['ZBzmd'](resolveTemplateVariables,_0x1feaea[_0x25be9a(0x179)],_0x7b5777):{},_0x42b79f=_0x1feaea['headers']?_0x39cbb4['aCLIi'](resolveTemplateVariables,_0x1feaea['headers'],_0x7b5777):{},_0x530c53=_0x42b79f&&(_0x42b79f[_0x25be9a(0x15e)]!==undefined||_0x39cbb4[_0x25be9a(0x173)](_0x42b79f['authorization'],undefined)),_0x3cba85=!_0x530c53&&_0x7b5777&&_0x7b5777[_0x25be9a(0x15f)]?{'Authorization':_0x7b5777[_0x25be9a(0x15f)]}:{};try{const _0x1f2469=await axios({'method':_0x33e82a[_0x25be9a(0x145)](),'url':_0x16afb4,'data':_0x3646bd,'headers':{'Content-Type':_0x25be9a(0x140),'User-Agent':_0x39cbb4['Fravm'],..._0x3cba85,..._0x42b79f},'timeout':_0x48e2ee});return console[_0x25be9a(0x141)](_0x25be9a(0x149)+_0x33e82a+'\x20'+_0x16afb4+'\x20→\x20'+_0x1f2469['status']),{'success':!![],'message':_0x25be9a(0x147),'status':_0x1f2469[_0x25be9a(0x15d)],'url':_0x16afb4};}catch(_0x38ebbe){const _0x111011=_0x38ebbe[_0x25be9a(0x170)]?_0x25be9a(0x16f)+_0x38ebbe[_0x25be9a(0x170)][_0x25be9a(0x15d)]+':\x20'+_0x38ebbe['response']['statusText']:_0x38ebbe[_0x25be9a(0x168)];console[_0x25be9a(0x175)](_0x25be9a(0x16a)+_0x33e82a+'\x20'+_0x16afb4+_0x25be9a(0x154)+_0x111011);if(_0xc24272)return{'success':![],'message':'Blocking\x20hook\x20failed:\x20'+_0x111011,'error':_0x111011,'url':_0x16afb4};return console[_0x25be9a(0x165)](_0x25be9a(0x16d)+_0x111011),{'success':!![],'message':_0x25be9a(0x16d)+_0x111011,'warning':_0x111011,'url':_0x16afb4};}}function a0_0x7d74(_0x133d56,_0x47eca0){_0x133d56=_0x133d56-0x13b;const _0x55973e=a0_0x5597();let _0x7d74d3=_0x55973e[_0x133d56];if(a0_0x7d74['NzONPz']===undefined){var _0x2e83d4=function(_0x4a0241){const _0x4d3d01='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x226d96='',_0x30ddbf='';for(let _0x53851c=0x0,_0x5cc6ab,_0x20d7ad,_0x12721d=0x0;_0x20d7ad=_0x4a0241['charAt'](_0x12721d++);~_0x20d7ad&&(_0x5cc6ab=_0x53851c%0x4?_0x5cc6ab*0x40+_0x20d7ad:_0x20d7ad,_0x53851c++%0x4)?_0x226d96+=String['fromCharCode'](0xff&_0x5cc6ab>>(-0x2*_0x53851c&0x6)):0x0){_0x20d7ad=_0x4d3d01['indexOf'](_0x20d7ad);}for(let _0x2c5bc5=0x0,_0x55eacc=_0x226d96['length'];_0x2c5bc5<_0x55eacc;_0x2c5bc5++){_0x30ddbf+='%'+('00'+_0x226d96['charCodeAt'](_0x2c5bc5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x30ddbf);};a0_0x7d74['MhSpzH']=_0x2e83d4,a0_0x7d74['fbGNqi']={},a0_0x7d74['NzONPz']=!![];}const _0xfcfa13=_0x55973e[0x0],_0x3fa485=_0x133d56+_0xfcfa13,_0x4bb1c1=a0_0x7d74['fbGNqi'][_0x3fa485];return!_0x4bb1c1?(_0x7d74d3=a0_0x7d74['MhSpzH'](_0x7d74d3),a0_0x7d74['fbGNqi'][_0x3fa485]=_0x7d74d3):_0x7d74d3=_0x4bb1c1,_0x7d74d3;}async function executeHooks(_0xbb3591,_0x551be3){const _0x5be1b6=a0_0x5a628d,_0xfbf466={'RDznT':_0x5be1b6(0x164)};if(!_0xbb3591||!Array[_0x5be1b6(0x143)](_0xbb3591)||_0xbb3591[_0x5be1b6(0x163)]===0x0)return{'success':!![],'results':[],'hooksExecuted':0x0};const _0x4dc1c3=[];for(const _0x5d4408 of _0xbb3591){const _0x1d43af=await executeHook(_0x5d4408,_0x551be3);_0x4dc1c3[_0x5be1b6(0x148)](_0x1d43af);if(!_0x1d43af['success'])return{'success':![],'error':_0x1d43af['message']||_0xfbf466['RDznT'],'results':_0x4dc1c3,'hooksExecuted':_0x4dc1c3['length']};}return{'success':!![],'results':_0x4dc1c3,'hooksExecuted':_0x4dc1c3[_0x5be1b6(0x163)]};}module['exports']={'resolveTemplateString':resolveTemplateString,'resolveTemplateVariables':resolveTemplateVariables,'resolveUrl':resolveUrl,'buildHookContext':buildHookContext,'executeHook':executeHook,'executeHooks':executeHooks};