@restforgejs/platform 4.3.5 → 5.0.0

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 (191) 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/payload/migrate.js +96 -0
  6. package/generators/lib/dbschema-kit/apply-engine.js +211 -46
  7. package/generators/lib/dbschema-kit/diff-engine.js +14 -2
  8. package/generators/lib/dbschema-kit/emitters/alter-table.js +96 -2
  9. package/generators/lib/dbschema-kit/introspect-mapper.js +9 -0
  10. package/generators/lib/migrate/backend-payload-migrator.js +221 -0
  11. package/generators/lib/migrate/field-type-resolver.js +319 -0
  12. package/generators/lib/migrate/label-generator.js +38 -0
  13. package/generators/lib/migrate/migrate-runner.js +187 -0
  14. package/generators/lib/migrate/naming.js +43 -0
  15. package/generators/lib/migrate/sql-parser.js +124 -0
  16. package/generators/lib/payload/payload-runner.js +106 -11
  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/integrity-manifest.json +18 -18
  27. package/node_modules/brace-expansion/index.js +1 -1
  28. package/node_modules/brace-expansion/package.json +1 -1
  29. package/node_modules/dayjs/CHANGELOG.md +7 -0
  30. package/node_modules/dayjs/README.md +12 -10
  31. package/node_modules/dayjs/dayjs.min.js +1 -1
  32. package/node_modules/dayjs/esm/constant.js +1 -1
  33. package/node_modules/dayjs/esm/plugin/duration/index.js +5 -4
  34. package/node_modules/dayjs/locale.json +1 -1
  35. package/node_modules/dayjs/package.json +2 -2
  36. package/node_modules/dayjs/plugin/duration.js +1 -1
  37. package/node_modules/tmp/lib/tmp.js +37 -7
  38. package/node_modules/tmp/package.json +4 -16
  39. package/package.json +1 -1
  40. package/scripts/verify-integrity.js +1 -1
  41. package/server.js +1 -1
  42. package/src/components/handlers/adjust_handler.js +1 -1
  43. package/src/components/handlers/audit_handler.js +1 -1
  44. package/src/components/handlers/delete_handler.js +1 -1
  45. package/src/components/handlers/export_handler.js +1 -1
  46. package/src/components/handlers/import_handler.js +1 -1
  47. package/src/components/handlers/insert_handler.js +1 -1
  48. package/src/components/handlers/update_handler.js +1 -1
  49. package/src/components/handlers/upload_handler.js +1 -1
  50. package/src/components/handlers/workflow_handler.js +1 -1
  51. package/src/components/integrations/webhook.js +1 -1
  52. package/src/consumers/baseConsumer.js +1 -1
  53. package/src/consumers/declarativeMapper.js +1 -1
  54. package/src/consumers/handlers/apiHandler.js +1 -1
  55. package/src/consumers/handlers/consoleHandler.js +1 -1
  56. package/src/consumers/handlers/databaseHandler.js +1 -1
  57. package/src/consumers/handlers/index.js +1 -1
  58. package/src/consumers/handlers/kafkaHandler.js +1 -1
  59. package/src/consumers/index.js +1 -1
  60. package/src/consumers/messageTransformer.js +1 -1
  61. package/src/consumers/validator.js +1 -1
  62. package/src/core/db/dialect/base-dialect.js +1 -1
  63. package/src/core/db/dialect/index.js +1 -1
  64. package/src/core/db/dialect/mysql-dialect.js +1 -1
  65. package/src/core/db/dialect/oracle-dialect.js +1 -1
  66. package/src/core/db/dialect/postgres-dialect.js +1 -1
  67. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  68. package/src/core/db/flatten-helper.js +1 -1
  69. package/src/core/db/query-builder-error.js +1 -1
  70. package/src/core/db/query-builder.js +1 -1
  71. package/src/core/db/relation-helper.js +1 -1
  72. package/src/core/handlers/delete_handler.js +1 -1
  73. package/src/core/handlers/insert_handler.js +1 -1
  74. package/src/core/handlers/update_handler.js +1 -1
  75. package/src/core/models/base-model.js +1 -1
  76. package/src/core/utils/cache-manager.js +1 -1
  77. package/src/core/utils/component-engine.js +1 -1
  78. package/src/core/utils/context-builder.js +1 -1
  79. package/src/core/utils/datetime-formatter.js +1 -1
  80. package/src/core/utils/datetime-parser.js +1 -1
  81. package/src/core/utils/db.js +1 -1
  82. package/src/core/utils/logger.js +1 -1
  83. package/src/core/utils/payload-loader.js +1 -1
  84. package/src/core/utils/security-checks.js +1 -1
  85. package/src/middleware/body-options.js +1 -1
  86. package/src/middleware/cors.js +1 -1
  87. package/src/middleware/idempotency.js +1 -1
  88. package/src/middleware/rate-limiter.js +1 -1
  89. package/src/middleware/request-logger.js +1 -1
  90. package/src/middleware/security-headers.js +1 -1
  91. package/src/models/base-model-mysql.js +1 -1
  92. package/src/models/base-model-oracle.js +1 -1
  93. package/src/models/base-model-sqlite.js +1 -1
  94. package/src/models/base-model.js +1 -1
  95. package/src/pro/caching/redis-client.js +1 -1
  96. package/src/pro/caching/redis-helper.js +1 -1
  97. package/src/pro/consumers/baseConsumer.js +1 -1
  98. package/src/pro/consumers/declarativeMapper.js +1 -1
  99. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  100. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  101. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  102. package/src/pro/consumers/handlers/index.js +1 -1
  103. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  104. package/src/pro/consumers/index.js +1 -1
  105. package/src/pro/consumers/messageTransformer.js +1 -1
  106. package/src/pro/consumers/validator.js +1 -1
  107. package/src/pro/database/base-model-mysql.js +1 -1
  108. package/src/pro/database/base-model-oracle.js +1 -1
  109. package/src/pro/database/base-model-sqlite.js +1 -1
  110. package/src/pro/database/db-mysql.js +1 -1
  111. package/src/pro/database/db-oracle.js +1 -1
  112. package/src/pro/database/db-sqlite.js +1 -1
  113. package/src/pro/excel/excel-generator.js +1 -1
  114. package/src/pro/excel/excel-parser.js +1 -1
  115. package/src/pro/excel/export-service.js +1 -1
  116. package/src/pro/excel/export_handler.js +1 -1
  117. package/src/pro/excel/import-service.js +1 -1
  118. package/src/pro/excel/import-validator.js +1 -1
  119. package/src/pro/excel/import_handler.js +1 -1
  120. package/src/pro/excel/upsert-builder.js +1 -1
  121. package/src/pro/idgen/idgen-routes.js +1 -1
  122. package/src/pro/integrations/lookup-resolver.js +1 -1
  123. package/src/pro/integrations/upload-handler-v2.js +1 -1
  124. package/src/pro/integrations/upload-handler.js +1 -1
  125. package/src/pro/integrations/webhook.js +1 -1
  126. package/src/pro/locking/lock-routes.js +1 -1
  127. package/src/pro/locking/resource-lock-manager.js +1 -1
  128. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  129. package/src/pro/messaging/kafkaService.js +1 -1
  130. package/src/pro/messaging/messagehubService.js +1 -1
  131. package/src/pro/messaging/rabbitmqService.js +1 -1
  132. package/src/pro/scheduler/job-manager.js +1 -1
  133. package/src/pro/scheduler/job-routes.js +1 -1
  134. package/src/pro/scheduler/job-validator.js +1 -1
  135. package/src/pro/storage/base-storage-provider.js +1 -1
  136. package/src/pro/storage/file-metadata-helper.js +1 -1
  137. package/src/pro/storage/index.js +1 -1
  138. package/src/pro/storage/local-storage-provider.js +1 -1
  139. package/src/pro/storage/s3-storage-provider.js +1 -1
  140. package/src/pro/storage/upload-cleanup-job.js +1 -1
  141. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  142. package/src/pro/storage/upload-pending-tracker.js +1 -1
  143. package/src/pro/websocket/broadcast-helper.js +1 -1
  144. package/src/pro/websocket/index.js +1 -1
  145. package/src/pro/websocket/livesync-server.js +1 -1
  146. package/src/pro/websocket/ws-broadcaster.js +1 -1
  147. package/src/services/export-service.js +1 -1
  148. package/src/services/import-service.js +1 -1
  149. package/src/services/kafkaConsumerService.js +1 -1
  150. package/src/services/kafkaService.js +1 -1
  151. package/src/services/messagehubService.js +1 -1
  152. package/src/services/rabbitmqService.js +1 -1
  153. package/src/utils/cache-invalidation-registry.js +1 -1
  154. package/src/utils/cache-manager.js +1 -1
  155. package/src/utils/component-engine.js +1 -1
  156. package/src/utils/config-extractor.js +1 -1
  157. package/src/utils/consumerLogger.js +1 -1
  158. package/src/utils/context-builder.js +1 -1
  159. package/src/utils/dashboard-helpers.js +1 -1
  160. package/src/utils/dateHelper.js +1 -1
  161. package/src/utils/datetime-formatter.js +1 -1
  162. package/src/utils/datetime-parser.js +1 -1
  163. package/src/utils/db-bootstrap.js +1 -1
  164. package/src/utils/db-mysql.js +1 -1
  165. package/src/utils/db-oracle.js +1 -1
  166. package/src/utils/db-sqlite.js +1 -1
  167. package/src/utils/db.js +1 -1
  168. package/src/utils/demo-generator.js +1 -1
  169. package/src/utils/excel-generator.js +1 -1
  170. package/src/utils/excel-parser.js +1 -1
  171. package/src/utils/file-watcher.js +1 -1
  172. package/src/utils/id-generator.js +1 -1
  173. package/src/utils/idempotency-manager.js +1 -1
  174. package/src/utils/import-validator.js +1 -1
  175. package/src/utils/license-client.js +1 -1
  176. package/src/utils/lock-manager.js +1 -1
  177. package/src/utils/logger.js +1 -1
  178. package/src/utils/lookup-resolver.js +1 -1
  179. package/src/utils/payload-loader.js +1 -1
  180. package/src/utils/processor-response.js +1 -1
  181. package/src/utils/rabbitmq.js +1 -1
  182. package/src/utils/redis-client.js +1 -1
  183. package/src/utils/redis-helper.js +1 -1
  184. package/src/utils/request-scope.js +1 -1
  185. package/src/utils/security-checks.js +1 -1
  186. package/src/utils/service-resolver.js +1 -1
  187. package/src/utils/shutdown-coordinator.js +1 -1
  188. package/src/utils/trusted-keys.js +1 -1
  189. package/src/utils/upload-handler.js +1 -1
  190. package/src/utils/upsert-builder.js +1 -1
  191. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x3a327d=a0_0x20d4;function a0_0xb447(){const _0x519ac5=['lI9SB2DNzxi','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','Aw5JBhvKzxm','Cgf0Aa','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','nJnYDKHmyMi','ntbPCgvnCfu','mtu4mZm0nNnKCNPIsG','AM9PBG','m3PfDMPdBG','y3j5ChrV','vvbmt0fex0rjuG','z2v0u3rVCMfNzq','C2LUz2XL','yxr2tuK','Aw5MBW','lI4VlI4VDgvTCc91CgXVywrZlW','nZe5mJuZz3DoEhvZ','odvmq3voww8','DxbSB2fKx2zPBgvFzgvSzxrLza','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','nJy3ndC5menvBK9eEq','mtqZoda1m2TdzNjMyq','BxvSDgvY','zgvMyxvSDa','DxbSB2fKrgLY','BM93','Bwf4rMLSzvnPEMu','mty2nti0CMDLs0Dx','BwLTzxr5Cgu','lNHSCW','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','zMLSzq','ndC0odm0ogLSALvTDq','zgLZA1n0B3jHz2u','Dg9mB3DLCKnHC2u','B3jPz2LUywXUyw1L','uerMtfq','BwTKAxjtEw5J','DxbSB2fKlq','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','mte0mJeZnMjXBNr1EG','zxH0BMfTzq','Agv4','zw52','BwvZC2fNzq'];a0_0xb447=function(){return _0x519ac5;};return a0_0xb447();}(function(_0x842dd3,_0x50a474){const _0x327469=a0_0x20d4,_0x27e2f4=_0x842dd3();while(!![]){try{const _0x241189=-parseInt(_0x327469(0x1ab))/0x1+-parseInt(_0x327469(0x1ca))/0x2*(-parseInt(_0x327469(0x1cc))/0x3)+-parseInt(_0x327469(0x1b1))/0x4*(-parseInt(_0x327469(0x1d5))/0x5)+parseInt(_0x327469(0x1d8))/0x6+-parseInt(_0x327469(0x1c8))/0x7*(parseInt(_0x327469(0x1be))/0x8)+-parseInt(_0x327469(0x1d4))/0x9*(-parseInt(_0x327469(0x1c9))/0xa)+parseInt(_0x327469(0x1b6))/0xb;if(_0x241189===_0x50a474)break;else _0x27e2f4['push'](_0x27e2f4['shift']());}catch(_0x219ebd){_0x27e2f4['push'](_0x27e2f4['shift']());}}}(a0_0xb447,0xafd22));function a0_0x20d4(_0x5bd318,_0x519353){_0x5bd318=_0x5bd318-0x1ab;const _0xb44730=a0_0xb447();let _0x20d477=_0xb44730[_0x5bd318];if(a0_0x20d4['iLPZtE']===undefined){var _0x303d1c=function(_0x52ecbf){const _0x51563f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4c2045='',_0x1a5cdb='';for(let _0x14ec5a=0x0,_0x3fe1f2,_0x54a173,_0x6dd801=0x0;_0x54a173=_0x52ecbf['charAt'](_0x6dd801++);~_0x54a173&&(_0x3fe1f2=_0x14ec5a%0x4?_0x3fe1f2*0x40+_0x54a173:_0x54a173,_0x14ec5a++%0x4)?_0x4c2045+=String['fromCharCode'](0xff&_0x3fe1f2>>(-0x2*_0x14ec5a&0x6)):0x0){_0x54a173=_0x51563f['indexOf'](_0x54a173);}for(let _0x4c7f1c=0x0,_0x2500c8=_0x4c2045['length'];_0x4c7f1c<_0x2500c8;_0x4c7f1c++){_0x1a5cdb+='%'+('00'+_0x4c2045['charCodeAt'](_0x4c7f1c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a5cdb);};a0_0x20d4['KLHtAV']=_0x303d1c,a0_0x20d4['Tdjsms']={},a0_0x20d4['iLPZtE']=!![];}const _0x4c45eb=_0xb44730[0x0],_0x509066=_0x5bd318+_0x4c45eb,_0x30a1a6=a0_0x20d4['Tdjsms'][_0x509066];return!_0x30a1a6?(_0x20d477=a0_0x20d4['KLHtAV'](_0x20d477),a0_0x20d4['Tdjsms'][_0x509066]=_0x20d477):_0x20d477=_0x30a1a6,_0x20d477;}const multer=require(a0_0x3a327d(0x1ac)),path=require(a0_0x3a327d(0x1c6)),crypto=require(a0_0x3a327d(0x1cd)),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x3a327d(0x1c3));class UploadHandler{constructor(){const _0x427264=a0_0x3a327d,_0x58b455={'FQmev':function(_0x2c5743,_0x10610c){return _0x2c5743*_0x10610c;},'aBeUv':function(_0x1f65fd,_0x113b29){return _0x1f65fd*_0x113b29;}};this['_uploadDir']=null,this[_0x427264(0x1b0)]=_0x58b455['FQmev'](_0x58b455['aBeUv'](0xa,0x400),0x400);}get[a0_0x3a327d(0x1ae)](){const _0x38bc8e=a0_0x3a327d,_0x3aa42a={'hMCYG':_0x38bc8e(0x1ad),'jFXaf':'upload_handler_init'};if(!this['_uploadDir']){const _0x7c8333=process['env'][_0x38bc8e(0x1d7)]||_0x3aa42a['hMCYG'];this['_uploadDir']=process[_0x38bc8e(0x1c1)][_0x38bc8e(0x1ce)]||path[_0x38bc8e(0x1cb)](__dirname,_0x38bc8e(0x1d3)+_0x7c8333);try{!fsSync['existsSync'](this['_uploadDir'])&&fsSync[_0x38bc8e(0x1bb)](this['_uploadDir'],{'recursive':!![]}),logger['info']({'event':_0x3aa42a['jFXaf'],'dir':this['_uploadDir']},_0x38bc8e(0x1bd));}catch(_0x4cd19b){logger['error']({'event':_0x38bc8e(0x1c4),'error':_0x4cd19b[_0x38bc8e(0x1c2)]},'Failed\x20to\x20initialize\x20upload\x20handler');}}return this['_uploadDir'];}['getStorage'](){const _0x50fcf6=a0_0x3a327d;return multer[_0x50fcf6(0x1b7)]({'destination':(_0x51833a,_0x5336b5,_0xaeb796)=>{const _0xebe3aa=_0x50fcf6;!fsSync['existsSync'](this['uploadDir'])&&fsSync['mkdirSync'](this[_0xebe3aa(0x1ae)],{'recursive':!![]}),_0xaeb796(null,this['uploadDir']);},'filename':(_0x218bdc,_0x3a0ad,_0x717a03)=>{const _0x5ca686=_0x50fcf6,_0x3933e5=crypto['randomBytes'](0x8)['toString'](_0x5ca686(0x1c0)),_0x428477=Date[_0x5ca686(0x1af)](),_0x17a857=path['extname'](_0x3a0ad['originalname']);_0x717a03(null,_0x5ca686(0x1bc)+_0x428477+'-'+_0x3933e5+_0x17a857);}});}['getUploadMiddleware'](){const _0x4cc780=a0_0x3a327d,_0x1c65e2={'UAPar':'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet','Rdrnz':_0x4cc780(0x1b3),'efXep':function(_0x29e7b7,_0xcdbac5){return _0x29e7b7(_0xcdbac5);},'PDfLT':_0x4cc780(0x1b5)};return _0x1c65e2['efXep'](multer,{'storage':this[_0x4cc780(0x1cf)](),'limits':{'fileSize':this[_0x4cc780(0x1b0)],'files':0x1},'fileFilter':(_0x26903e,_0xceed5f,_0x3d438a)=>{const _0x211b0c=_0x4cc780,_0x9e2ee1=[_0x1c65e2['UAPar'],_0x211b0c(0x1c7)],_0x2867ae=['.xlsx',_0x1c65e2['Rdrnz']],_0x1b031f=path[_0x211b0c(0x1bf)](_0xceed5f[_0x211b0c(0x1b9)])[_0x211b0c(0x1b8)]();_0x9e2ee1['includes'](_0xceed5f[_0x211b0c(0x1b2)])&&_0x2867ae[_0x211b0c(0x1c5)](_0x1b031f)?_0x3d438a(null,!![]):_0x1c65e2['efXep'](_0x3d438a,new Error('Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed'));}})[_0x4cc780(0x1d0)](_0x1c65e2[_0x4cc780(0x1ba)]);}async['deleteFile'](_0xa8b87){const _0x2aa248=a0_0x3a327d,_0xdd17e1={'IVUbz':_0x2aa248(0x1d6),'atvMI':'upload_file_delete_error'};try{await fs['unlink'](_0xa8b87),logger[_0x2aa248(0x1d2)]({'event':_0xdd17e1['IVUbz'],'filePath':_0xa8b87},'Uploaded\x20file\x20deleted');}catch(_0x7b8750){logger['error']({'event':_0xdd17e1[_0x2aa248(0x1d1)],'filePath':_0xa8b87,'error':_0x7b8750['message']},_0x2aa248(0x1b4));}}}module['exports']=new UploadHandler();
1
+ const a0_0x1291ca=a0_0x5f27;function a0_0x5f27(_0x4083c2,_0x1a1870){_0x4083c2=_0x4083c2-0xfc;const _0x284f8d=a0_0x284f();let _0x5f2733=_0x284f8d[_0x4083c2];if(a0_0x5f27['AFiWmU']===undefined){var _0x1351e8=function(_0x5a9d25){const _0x1f4b80='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x318d1c='',_0x29f5c4='';for(let _0x57f960=0x0,_0x4fdf37,_0x7ab9c,_0xb3e3cf=0x0;_0x7ab9c=_0x5a9d25['charAt'](_0xb3e3cf++);~_0x7ab9c&&(_0x4fdf37=_0x57f960%0x4?_0x4fdf37*0x40+_0x7ab9c:_0x7ab9c,_0x57f960++%0x4)?_0x318d1c+=String['fromCharCode'](0xff&_0x4fdf37>>(-0x2*_0x57f960&0x6)):0x0){_0x7ab9c=_0x1f4b80['indexOf'](_0x7ab9c);}for(let _0x3d8894=0x0,_0x281174=_0x318d1c['length'];_0x3d8894<_0x281174;_0x3d8894++){_0x29f5c4+='%'+('00'+_0x318d1c['charCodeAt'](_0x3d8894)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29f5c4);};a0_0x5f27['UWRInB']=_0x1351e8,a0_0x5f27['vFlGKf']={},a0_0x5f27['AFiWmU']=!![];}const _0x15811f=_0x284f8d[0x0],_0x25ab1b=_0x4083c2+_0x15811f,_0x1c9c5d=a0_0x5f27['vFlGKf'][_0x25ab1b];return!_0x1c9c5d?(_0x5f2733=a0_0x5f27['UWRInB'](_0x5f2733),a0_0x5f27['vFlGKf'][_0x25ab1b]=_0x5f2733):_0x5f2733=_0x1c9c5d,_0x5f2733;}(function(_0x586da3,_0x409c17){const _0x18a55c=a0_0x5f27,_0x3758e2=_0x586da3();while(!![]){try{const _0x52b43a=-parseInt(_0x18a55c(0x11f))/0x1+-parseInt(_0x18a55c(0x11d))/0x2*(parseInt(_0x18a55c(0x128))/0x3)+-parseInt(_0x18a55c(0x12d))/0x4*(-parseInt(_0x18a55c(0x105))/0x5)+-parseInt(_0x18a55c(0x127))/0x6+-parseInt(_0x18a55c(0x120))/0x7+-parseInt(_0x18a55c(0x108))/0x8+-parseInt(_0x18a55c(0x10c))/0x9*(-parseInt(_0x18a55c(0x11e))/0xa);if(_0x52b43a===_0x409c17)break;else _0x3758e2['push'](_0x3758e2['shift']());}catch(_0x1af989){_0x3758e2['push'](_0x3758e2['shift']());}}}(a0_0x284f,0x1a875));const multer=require(a0_0x1291ca(0xfe)),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require('./logger');class UploadHandler{constructor(){const _0x51a12c=a0_0x1291ca,_0x2cb4a4={'DWmCk':function(_0x3c6708,_0x3b1a52){return _0x3c6708*_0x3b1a52;}};this['_uploadDir']=null,this[_0x51a12c(0x10e)]=_0x2cb4a4['DWmCk'](_0x2cb4a4[_0x51a12c(0x11c)](0xa,0x400),0x400);}get[a0_0x1291ca(0x12a)](){const _0x10e3ae=a0_0x1291ca,_0x1bcefc={'bDGRY':_0x10e3ae(0x11b),'jSASW':_0x10e3ae(0x12b),'kKFmn':'Failed\x20to\x20initialize\x20upload\x20handler'};if(!this['_uploadDir']){const _0x427fed=process[_0x10e3ae(0x106)]['RESTFORGE_PROJECT_NAME']||_0x1bcefc[_0x10e3ae(0x102)];this['_uploadDir']=process['env']['UPLOAD_DIR']||path[_0x10e3ae(0x111)](__dirname,_0x10e3ae(0x103)+_0x427fed);try{!fsSync[_0x10e3ae(0x10b)](this[_0x10e3ae(0x10d)])&&fsSync['mkdirSync'](this[_0x10e3ae(0x10d)],{'recursive':!![]}),logger['info']({'event':'upload_handler_init','dir':this[_0x10e3ae(0x10d)]},'Upload\x20handler\x20initialized');}catch(_0x349edc){logger[_0x10e3ae(0x10a)]({'event':_0x1bcefc['jSASW'],'error':_0x349edc['message']},_0x1bcefc['kKFmn']);}}return this[_0x10e3ae(0x10d)];}[a0_0x1291ca(0x123)](){const _0x586fca=a0_0x1291ca,_0x4640cc={'diWJT':function(_0x3dd2bd,_0xfb4dde,_0xd032e3){return _0x3dd2bd(_0xfb4dde,_0xd032e3);}};return multer[_0x586fca(0x110)]({'destination':(_0x1ba9de,_0x6374d4,_0x7629ae)=>{const _0x3d25a0=_0x586fca;!fsSync['existsSync'](this[_0x3d25a0(0x12a)])&&fsSync[_0x3d25a0(0x115)](this[_0x3d25a0(0x12a)],{'recursive':!![]}),_0x7629ae(null,this[_0x3d25a0(0x12a)]);},'filename':(_0x13e82b,_0x95fc4d,_0x37664f)=>{const _0x3e2b7a=_0x586fca,_0x571341=crypto[_0x3e2b7a(0x114)](0x8)[_0x3e2b7a(0x101)]('hex'),_0x5b40af=Date[_0x3e2b7a(0x109)](),_0x5ee7df=path['extname'](_0x95fc4d[_0x3e2b7a(0x118)]);_0x4640cc[_0x3e2b7a(0x121)](_0x37664f,null,_0x3e2b7a(0xfc)+_0x5b40af+'-'+_0x571341+_0x5ee7df);}});}[a0_0x1291ca(0x100)](){const _0x5c7d9d=a0_0x1291ca,_0x26c695={'fFTtc':'application/vnd.ms-excel','ZhAga':'.xlsx','STZYZ':function(_0x5c0011,_0xb84d71,_0x17cf50){return _0x5c0011(_0xb84d71,_0x17cf50);}};return multer({'storage':this['getStorage'](),'limits':{'fileSize':this[_0x5c7d9d(0x10e)],'files':0x1},'fileFilter':(_0x443900,_0x309560,_0x1343ac)=>{const _0x392a25=_0x5c7d9d,_0x4fee9a=[_0x392a25(0x107),_0x26c695[_0x392a25(0x104)]],_0x20d9d1=[_0x26c695['ZhAga'],_0x392a25(0x116)],_0x365cf9=path[_0x392a25(0x11a)](_0x309560['originalname'])[_0x392a25(0x112)]();_0x4fee9a['includes'](_0x309560[_0x392a25(0x126)])&&_0x20d9d1['includes'](_0x365cf9)?_0x26c695[_0x392a25(0xfd)](_0x1343ac,null,!![]):_0x1343ac(new Error(_0x392a25(0x10f)));}})['single']('file');}async[a0_0x1291ca(0x124)](_0x28a527){const _0x15bf6f=a0_0x1291ca,_0x29a2f2={'jIAsQ':_0x15bf6f(0xff),'yCijZ':'Uploaded\x20file\x20deleted'};try{await fs[_0x15bf6f(0x125)](_0x28a527),logger[_0x15bf6f(0x113)]({'event':_0x29a2f2[_0x15bf6f(0x119)],'filePath':_0x28a527},_0x29a2f2[_0x15bf6f(0x129)]);}catch(_0x36d214){logger['error']({'event':_0x15bf6f(0x12c),'filePath':_0x28a527,'error':_0x36d214[_0x15bf6f(0x117)]},_0x15bf6f(0x122));}}}function a0_0x284f(){const _0x33cf60=['z2v0u3rVCMfNzq','zgvSzxrLrMLSzq','Dw5SAw5R','BwLTzxr5Cgu','ntyZmJm4B214q2Hi','mJuYmdy5uxDvAwr4','EunPALO','DxbSB2fKrgLY','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','mtzXCu9lDMG','DxbSB2fKlq','u1rAwvO','BxvSDgvY','DxbSB2fKx2zPBgvFzgvSzxrLza','z2v0vxbSB2fKtwLKzgXLD2fYzq','Dg9tDhjPBMC','yKrhuLK','lI4VlI4VDgvTCc91CgXVywrZlW','zKzuDgm','mJm5ndbHBfjdA0W','zw52','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','mJKYnde2wKnMCMPy','BM93','zxjYB3i','zxHPC3rZu3LUyW','ounKv3nUDq','x3vWBg9HzerPCG','Bwf4rMLSzvnPEMu','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','zgLZA1n0B3jHz2u','AM9PBG','Dg9mB3DLCKnHC2u','Aw5MBW','CMfUzg9TqNL0zxm','BwTKAxjtEw5J','lNHSCW','BwvZC2fNzq','B3jPz2LUywXUyw1L','AKLbC1e','zxH0BMfTzq','zgvMyxvSDa','rfDTq2S','ngnxvKfnrW','ntu4odiZmgLuAwrpBa','odm3mJnnD1jUAgy','nJa5odqWuwvtvuPS','zgLxsLq','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL'];a0_0x284f=function(){return _0x33cf60;};return a0_0x284f();}module['exports']=new UploadHandler();
@@ -1 +1 @@
1
- function a0_0x2906(){const _0x1d65e7=['EKfNywi','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHpCMfJBguGtuvsr0uP','q21Kwfu','uhDxzLu','mZbMq1nUq2m','qMf0y2GGsu5trvjuihf1zxj5igj1AwX0icHpCMfJBguP','Aw52ywXPzf9KyL90ExbL','zgvIDwC','u1fmsvrf','laOGicaGicaGia','cIaGicaGie9oiervueXjq0fursblrvKGvvbeqvrfia','sw52ywXPzcbeqL9uwvbfoIa','r3HgzLy','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','ywHLCMu','DhnWALG','mtGWmJq5nfLbBLj2vG','zM9YBwf0rgf0zvzHBhvL','zM9YBwf0qM9VBgvHBLzHBhvL','cLnftevdvcaXiezst00Grfvbta','ueHxuwS','yNvPBgrfC2nHCgvgDw5JDgLVBG','B3jHy2XL','lI9SB2DNzxi','C3fSAxrL','ieftia','yMf0y2HFDxbKyxrLx2j1AwX0','qLzNzeG','tvLtuuW','ChvZAa','nZqYode0nfzHs29QAa','yuHTs3q','zxHWB3j0CW','zgf0zq','qwfbthm','rejFvfLqrq','u1fmu0vsvKvs','x2j1AwXKqMf0y2HvCgrHDgvqB3n0z3jLCW','DhLWzq','DMfSDwvZ','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','yM9VBgvHBG','ndrUDvnoCwu','Aw5JBhvKzxm','BxLZCwW','q0ftvcG','ve9FrefursG','laOGicaGicaGica','ieftiejjvcK','z1HouNG','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','DxbSC08','t1jbq0Xf','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','uuDprhq','ieftierbveuP','zMLSDgvY','vgnkwe8','Cg9ZDgDYzxnXBa','nZqZmJe2mhnRzKvgvW','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','C2XPy2u','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','ieforca','C3fSC2vYDMvY','ue9tveDsrvnrta','su5trvjuiefmtaO','cIaGicaGicKGqvmGDIG','cIaGicaGie1fuKDfieLove8G','nZe2oty0r2nqrNHg','cIaGicbvtKLptIbbteWk','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHnEvnrtcbptIbevvbmsunbveuGs0vzkq','ntm4nde1mu1uuNfTqW','vuHfu1e','BgvUz3rO','y2H1BMTsB3DZ','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','ihqkicaGicaGvvnjtKCGkaO','uNztBha','otm1mdyZnuTbzwzWsG','oJPct09mrufo','D2fYBG','cIaGica','sNnJBuC','mxz5r3r5DG','AM9PBG','BwfW','lIbgywXSAw5NigjHy2SGDg8GCg9ZDgDYzxnXBc4','tLvmta','kqOGicaGicbwquXvrvmG','nJq5nJa1AefQDNDS','id0GDI4','z2v0rgf0ywjHC2vuExbL','DwjNrxq','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm'];a0_0x2906=function(){return _0x1d65e7;};return a0_0x2906();}const a0_0x2ce5ba=a0_0x4506;(function(_0x52071a,_0x59a62e){const _0x2347c4=a0_0x4506,_0x76a2e2=_0x52071a();while(!![]){try{const _0x5bd59f=-parseInt(_0x2347c4(0xe5))/0x1*(parseInt(_0x2347c4(0xa1))/0x2)+parseInt(_0x2347c4(0xd6))/0x3+-parseInt(_0x2347c4(0xbb))/0x4*(parseInt(_0x2347c4(0xeb))/0x5)+-parseInt(_0x2347c4(0xaf))/0x6+parseInt(_0x2347c4(0xe0))/0x7+parseInt(_0x2347c4(0xcc))/0x8+parseInt(_0x2347c4(0xd9))/0x9*(parseInt(_0x2347c4(0x95))/0xa);if(_0x5bd59f===_0x59a62e)break;else _0x76a2e2['push'](_0x76a2e2['shift']());}catch(_0x5dc9d7){_0x76a2e2['push'](_0x76a2e2['shift']());}}}(a0_0x2906,0xb2410));function a0_0x4506(_0x2f615f,_0x1e9251){_0x2f615f=_0x2f615f-0x95;const _0x2906b2=a0_0x2906();let _0x45066d=_0x2906b2[_0x2f615f];if(a0_0x4506['zZvXUc']===undefined){var _0x85b655=function(_0x320680){const _0x384d4c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x130d83='',_0x17e8d0='';for(let _0x31850d=0x0,_0x40e73b,_0x168e65,_0x421134=0x0;_0x168e65=_0x320680['charAt'](_0x421134++);~_0x168e65&&(_0x40e73b=_0x31850d%0x4?_0x40e73b*0x40+_0x168e65:_0x168e65,_0x31850d++%0x4)?_0x130d83+=String['fromCharCode'](0xff&_0x40e73b>>(-0x2*_0x31850d&0x6)):0x0){_0x168e65=_0x384d4c['indexOf'](_0x168e65);}for(let _0x47637b=0x0,_0x42cdca=_0x130d83['length'];_0x47637b<_0x42cdca;_0x47637b++){_0x17e8d0+='%'+('00'+_0x130d83['charCodeAt'](_0x47637b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x17e8d0);};a0_0x4506['NzvOwc']=_0x85b655,a0_0x4506['HVerhl']={},a0_0x4506['zZvXUc']=!![];}const _0x4f1f35=_0x2906b2[0x0],_0x46792b=_0x2f615f+_0x4f1f35,_0x36d8bb=a0_0x4506['HVerhl'][_0x46792b];return!_0x36d8bb?(_0x45066d=a0_0x4506['NzvOwc'](_0x45066d),a0_0x4506['HVerhl'][_0x46792b]=_0x45066d):_0x45066d=_0x36d8bb,_0x45066d;}const {logger}=require(a0_0x2ce5ba(0xa8)),DB_TYPES={'POSTGRESQL':'postgresql','MYSQL':a0_0x2ce5ba(0xbd),'SQLSERVER':a0_0x2ce5ba(0xd1),'ORACLE':a0_0x2ce5ba(0xa7),'SQLITE':a0_0x2ce5ba(0xa9)};class UpsertBuilder{['getDatabaseType'](){const _0x371ee4=a0_0x2ce5ba,_0x183e3e={'hnvdB':'postgresql'},_0x3aa1a6=(process['env'][_0x371ee4(0xb4)]||_0x183e3e['hnvdB'])['toLowerCase'](),_0x201222=Object[_0x371ee4(0xb8)](DB_TYPES);if(!_0x201222['includes'](_0x3aa1a6))return logger[_0x371ee4(0xe2)]({'event':_0x371ee4(0x97),'provided':_0x3aa1a6,'fallback':_0x371ee4(0xcb)},_0x371ee4(0x9c)+_0x3aa1a6+_0x371ee4(0xe8)),DB_TYPES['POSTGRESQL'];return _0x3aa1a6;}['formatDateValue'](_0xcf9985,_0x3836cd,_0x53465b=![]){const _0x473f52=a0_0x2ce5ba,_0x46849d={'CmdXU':'NULL::DATE','BVgdH':_0x473f52(0xe9)};if(_0x53465b)switch(_0x3836cd){case DB_TYPES['POSTGRESQL']:return _0x46849d[_0x473f52(0xf2)];case DB_TYPES['MYSQL']:return'NULL';case DB_TYPES[_0x473f52(0x99)]:return'NULL';case DB_TYPES[_0x473f52(0xb5)]:return _0x46849d[_0x473f52(0xac)];case DB_TYPES['ORACLE']:return'NULL';default:return _0x46849d[_0x473f52(0xf2)];}switch(_0x3836cd){case DB_TYPES['POSTGRESQL']:return _0xcf9985+'::DATE';case DB_TYPES['MYSQL']:return _0xcf9985;case DB_TYPES[_0x473f52(0x99)]:return _0xcf9985;case DB_TYPES['SQLSERVER']:return _0x473f52(0xbe)+_0xcf9985+_0x473f52(0xc8);case DB_TYPES[_0x473f52(0xc5)]:return _0x473f52(0xbf)+_0xcf9985+',\x20\x27YYYY-MM-DD\x27)';default:return _0xcf9985+'::DATE';}}[a0_0x2ce5ba(0xa3)](_0x32850d,_0x8fe3a4,_0x9e1e6a=![]){const _0x345df5=a0_0x2ce5ba,_0x30300e={'ubgEt':'NULL::BOOLEAN','OVudB':_0x345df5(0xe9)};if(_0x9e1e6a)switch(_0x8fe3a4){case DB_TYPES[_0x345df5(0xd2)]:return _0x30300e[_0x345df5(0xee)];default:return _0x30300e['OVudB'];}switch(_0x8fe3a4){case DB_TYPES['POSTGRESQL']:return _0x32850d+_0x345df5(0xe1);case DB_TYPES[_0x345df5(0xc5)]:return _0x32850d;case DB_TYPES[_0x345df5(0xad)]:return _0x32850d;case DB_TYPES['SQLITE']:return _0x32850d;case DB_TYPES[_0x345df5(0xb5)]:return _0x345df5(0xbe)+_0x32850d+_0x345df5(0xc1);default:return _0x32850d+_0x345df5(0xe1);}}['buildEscapeFunction'](_0x35581f={}){const _0x1e8765=a0_0x2ce5ba,_0xb5d23c={'tspjX':function(_0x9a3b6b,_0x89a45e){return _0x9a3b6b===_0x89a45e;},'aHmKt':function(_0x4ce0cc,_0x2bf920){return _0x4ce0cc===_0x2bf920;},'PHWQk':_0x1e8765(0xb2),'UHESQ':'boolean','diDVb':'string'},_0x169049=this['getDatabaseType']();return(_0x1d2be1,_0x4a5ef8)=>{const _0x1233b2=_0x1e8765,_0x56b066=_0x35581f[_0x4a5ef8];if(_0xb5d23c[_0x1233b2(0xa0)](_0x1d2be1,null)||_0xb5d23c[_0x1233b2(0xb0)](_0x1d2be1,undefined)){if(_0x56b066&&_0xb5d23c[_0x1233b2(0xa0)](_0x56b066[_0x1233b2(0xb7)],_0xb5d23c[_0x1233b2(0xa5)]))return this['formatDateValue'](null,_0x169049,!![]);if(_0x56b066&&_0xb5d23c['aHmKt'](_0x56b066[_0x1233b2(0xb7)],_0xb5d23c[_0x1233b2(0xda)]))return this[_0x1233b2(0xa3)](null,_0x169049,!![]);return _0x1233b2(0xe9);}if(typeof _0x1d2be1===_0xb5d23c['diDVb']){const _0x5b2f77='\x27'+_0x1d2be1['replace'](/'/g,'\x27\x27')+'\x27';if(_0x56b066&&_0x56b066[_0x1233b2(0xb7)]==='date')return this[_0x1233b2(0xa2)](_0x5b2f77,_0x169049,![]);if(_0x56b066&&_0x56b066['type']===_0x1233b2(0xba))return this[_0x1233b2(0xa3)](_0x5b2f77,_0x169049,![]);return _0x5b2f77;}if(typeof _0x1d2be1==='number')return _0x1d2be1;if(typeof _0x1d2be1===_0x1233b2(0xba))return _0x1d2be1;const _0x47e466='\x27'+String(_0x1d2be1)['replace'](/'/g,'\x27\x27')+'\x27';if(_0x56b066&&_0xb5d23c['tspjX'](_0x56b066['type'],_0xb5d23c[_0x1233b2(0xa5)]))return this['formatDateValue'](_0x47e466,_0x169049,![]);return _0x47e466;};}['buildBatchInsert'](_0x47ab8e,_0xc0a45a,_0x1de8c4,_0x4f1a35={}){const _0x39d3e2=a0_0x2ce5ba,_0x28c518=this[_0x39d3e2(0xed)]();if(_0x28c518===DB_TYPES[_0x39d3e2(0xc5)])return this['_buildBatchInsertOracle'](_0x47ab8e,_0xc0a45a,_0x1de8c4,_0x4f1a35);return this['_buildBatchInsertPostgres'](_0x47ab8e,_0xc0a45a,_0x1de8c4,_0x4f1a35);}[a0_0x2ce5ba(0xc6)](_0x1a26fc,_0x574879,_0x4d744f,_0x46db29={}){const _0x5bd3b5=a0_0x2ce5ba,_0x4f7da3={'RvSlp':',\x0a\x20\x20\x20\x20\x20\x20\x20','ePBVZ':'postgresql','harKC':'Batch\x20INSERT\x20query\x20built\x20(PostgreSQL)'};if(_0x1a26fc['length']===0x0)return{'query':null,'values':[]};const _0x57c9a4=this[_0x5bd3b5(0xa6)](_0x46db29),_0x5d9470=_0x1a26fc[_0x5bd3b5(0xe7)](_0x2f782b=>{const _0x1b9ee9=_0x5bd3b5,_0x1cbc5c=_0x4d744f[_0x1b9ee9(0xe7)](_0x539f63=>_0x57c9a4(_0x2f782b[_0x539f63],_0x539f63));return'('+_0x1cbc5c[_0x1b9ee9(0xe6)](',\x20')+')';}),_0x428f22='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x574879+'\x20('+_0x4d744f['join'](',\x20')+_0x5bd3b5(0xea)+_0x5d9470['join'](_0x4f7da3[_0x5bd3b5(0xdf)])+_0x5bd3b5(0xe3);return logger['debug']({'event':'batch_insert_built','tableName':_0x574879,'rowCount':_0x1a26fc['length'],'dbType':_0x4f7da3['ePBVZ']},_0x4f7da3['harKC']),{'query':_0x428f22,'values':[]};}[a0_0x2ce5ba(0xc3)](_0x11ec7b,_0x5b35c8,_0x34146d,_0x3ecff1={}){const _0x5cd7af=a0_0x2ce5ba,_0x288250={'iOmgQ':function(_0x22bdfe,_0x44a5b7){return _0x22bdfe===_0x44a5b7;},'yhmfm':'oracle'};if(_0x288250['iOmgQ'](_0x11ec7b[_0x5cd7af(0xdb)],0x0))return{'query':null,'values':[]};const _0x5458b1=this[_0x5cd7af(0xa6)](_0x3ecff1),_0xce665b=_0x11ec7b[_0x5cd7af(0xe7)](_0x157509=>{const _0x10ff69=_0x5cd7af,_0x217573=_0x34146d['map'](_0x4c2ba8=>_0x5458b1(_0x157509[_0x4c2ba8],_0x4c2ba8));return'\x20\x20INTO\x20'+_0x5b35c8+'\x20('+_0x34146d[_0x10ff69(0xe6)](',\x20')+')\x20VALUES\x20('+_0x217573['join'](',\x20')+')';}),_0x5b59b4=_0x5cd7af(0xd3)+_0xce665b[_0x5cd7af(0xe6)]('\x0a')+_0x5cd7af(0xa4);return logger['debug']({'event':'batch_insert_built','tableName':_0x5b35c8,'rowCount':_0x11ec7b[_0x5cd7af(0xdb)],'dbType':_0x288250['yhmfm']},_0x5cd7af(0x96)),{'query':_0x5b59b4,'values':[]};}['buildBatchUpdate'](_0x4533f6,_0x4e8992,_0x3a0bfc,_0x2249cd,_0x1dd890,_0x1f6310={}){const _0x6982c1=a0_0x2ce5ba,_0xcc9db6={'ahere':function(_0x189780,_0x3189df){return _0x189780===_0x3189df;}},_0x21a790=this['getDatabaseType']();if(_0xcc9db6[_0x6982c1(0x9f)](_0x21a790,DB_TYPES[_0x6982c1(0xc5)]))return this[_0x6982c1(0xcf)](_0x4533f6,_0x4e8992,_0x3a0bfc,_0x2249cd,_0x1dd890,_0x1f6310);if(_0xcc9db6['ahere'](_0x21a790,DB_TYPES[_0x6982c1(0xad)]))return this['_buildBatchUpdateMysql'](_0x4533f6,_0x4e8992,_0x3a0bfc,_0x2249cd,_0x1dd890,_0x1f6310);return this[_0x6982c1(0xb6)](_0x4533f6,_0x4e8992,_0x3a0bfc,_0x2249cd,_0x1dd890,_0x1f6310);}['_buildBatchUpdatePostgres'](_0x33ba82,_0x486229,_0x2624c7,_0x4495d9,_0x1ed1f3,_0x26c875={}){const _0x6f5686=a0_0x2ce5ba,_0x33c4f6={'QGODt':function(_0x339de7,_0x69c095){return _0x339de7===_0x69c095;},'JscmG':_0x6f5686(0xef),'FUCLs':'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)','gXNRx':_0x6f5686(0xc0),'mwmYh':_0x6f5686(0xd0),'zAgab':_0x6f5686(0x9e)};if(_0x33c4f6[_0x6f5686(0xc7)](_0x33ba82['length'],0x0))return{'query':null,'values':[]};const _0x42f53d=this['buildEscapeFunction'](_0x26c875),_0x2b0e86=_0x2624c7[_0x6f5686(0xc9)](_0x1bbdde=>!_0x1ed1f3[_0x6f5686(0xbc)](_0x1bbdde)&&_0x1bbdde!==_0x4495d9);if(_0x33c4f6['QGODt'](_0x2b0e86[_0x6f5686(0xdb)],0x0))return logger[_0x6f5686(0xe2)]({'event':_0x33c4f6[_0x6f5686(0xe4)],'tableName':_0x486229},_0x33c4f6['FUCLs']),{'query':null,'values':[]};const _0x84550c=_0x33ba82[_0x6f5686(0xe7)](_0x1dcf7c=>{const _0x3f687f=_0x6f5686,_0xaac715=[..._0x1ed1f3,..._0x2b0e86],_0x256da7=_0xaac715['map'](_0x42735f=>_0x42f53d(_0x1dcf7c[_0x42735f],_0x42735f));return'('+_0x256da7[_0x3f687f(0xe6)](',\x20')+')';}),_0x525308=_0x2b0e86['map'](_0x4d2fd2=>_0x4d2fd2+'\x20=\x20v.'+_0x4d2fd2)[_0x6f5686(0xe6)](_0x33c4f6[_0x6f5686(0xc2)]),_0x2d3132=_0x1ed1f3['map'](_0x4e25d5=>'t.'+_0x4e25d5+_0x6f5686(0xec)+_0x4e25d5)[_0x6f5686(0xe6)](_0x33c4f6['mwmYh']),_0x49738b='\x0a\x20\x20\x20\x20\x20\x20UPDATE\x20'+_0x486229+'\x20AS\x20t\x0a\x20\x20\x20\x20\x20\x20SET\x20'+_0x525308+_0x6f5686(0xdd)+_0x84550c[_0x6f5686(0xe6)](_0x6f5686(0x9a))+_0x6f5686(0xd4)+[..._0x1ed1f3,..._0x2b0e86]['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20WHERE\x20'+_0x2d3132+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':'batch_update_built','tableName':_0x486229,'rowCount':_0x33ba82['length'],'updateColumns':_0x2b0e86[_0x6f5686(0xdb)],'dbType':'postgresql'},_0x33c4f6[_0x6f5686(0xf0)]),{'query':_0x49738b,'values':[]};}[a0_0x2ce5ba(0xcf)](_0x4f312b,_0x1bd9a4,_0x140287,_0x2e1be4,_0x3319a8,_0x2dab60={}){const _0x5b111d=a0_0x2ce5ba,_0x18f0d6={'ZteOo':function(_0x28f81b,_0x54a5a0,_0x2fe247){return _0x28f81b(_0x54a5a0,_0x2fe247);},'AaALs':function(_0x1edb63,_0x14bf59){return _0x1edb63===_0x14bf59;},'AZPwK':'batch_update_no_columns','fJDuc':_0x5b111d(0xd7),'GxFfV':'batch_update_built','uplsO':_0x5b111d(0xf1)};if(_0x4f312b['length']===0x0)return{'query':null,'values':[]};const _0x248f9f=this['buildEscapeFunction'](_0x2dab60),_0x2bfac8=_0x140287[_0x5b111d(0xc9)](_0x549d36=>!_0x3319a8[_0x5b111d(0xbc)](_0x549d36)&&_0x549d36!==_0x2e1be4);if(_0x18f0d6[_0x5b111d(0xb3)](_0x2bfac8['length'],0x0))return logger[_0x5b111d(0xe2)]({'event':_0x18f0d6['AZPwK'],'tableName':_0x1bd9a4},_0x5b111d(0xcd)),{'query':null,'values':[]};const _0x542c81=[..._0x3319a8,..._0x2bfac8],_0x1d9462=_0x4f312b[_0x5b111d(0xe7)]((_0xcea733,_0x49e862)=>{const _0x586a50=_0x5b111d,_0x4a1531=_0x542c81['map'](_0x4d4653=>{const _0x3dba52=a0_0x4506,_0x141d52=_0x18f0d6['ZteOo'](_0x248f9f,_0xcea733[_0x4d4653],_0x4d4653);return _0x49e862===0x0?_0x141d52+_0x3dba52(0xaa)+_0x4d4653:_0x141d52;});return'\x20\x20\x20\x20SELECT\x20'+_0x4a1531[_0x586a50(0xe6)](',\x20')+'\x20FROM\x20DUAL';}),_0x12e9d2=_0x2bfac8[_0x5b111d(0xe7)](_0x48a551=>'t.'+_0x48a551+_0x5b111d(0xec)+_0x48a551)['join'](_0x5b111d(0xc0)),_0x38529e=_0x3319a8[_0x5b111d(0xe7)](_0x400499=>'t.'+_0x400499+_0x5b111d(0xec)+_0x400499)['join'](_0x5b111d(0xd0)),_0x1f3200=_0x5b111d(0xd5)+_0x1bd9a4+_0x5b111d(0xde)+_0x1d9462[_0x5b111d(0xe6)](_0x18f0d6['fJDuc'])+'\x0a\x20\x20\x20\x20\x20\x20)\x20v\x0a\x20\x20\x20\x20\x20\x20ON\x20('+_0x38529e+')\x0a\x20\x20\x20\x20\x20\x20WHEN\x20MATCHED\x20THEN\x20UPDATE\x20SET\x20'+_0x12e9d2+_0x5b111d(0xe3);return logger[_0x5b111d(0x98)]({'event':_0x18f0d6[_0x5b111d(0x9d)],'tableName':_0x1bd9a4,'rowCount':_0x4f312b[_0x5b111d(0xdb)],'updateColumns':_0x2bfac8['length'],'dbType':'oracle'},_0x18f0d6[_0x5b111d(0xc4)]),{'query':_0x1f3200,'values':[]};}[a0_0x2ce5ba(0xb9)](_0x193888,_0x4577d7,_0x255c97,_0x28ac3c,_0x5ec86b,_0x361933={}){const _0x43fde0=a0_0x2ce5ba,_0x305aa2={'ypFwA':function(_0x560454,_0x591cd6){return _0x560454===_0x591cd6;},'NBtyg':'batch_update_no_columns','InSbx':'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)','PwWfU':_0x43fde0(0xc0),'TcJXO':_0x43fde0(0xab)};if(_0x193888[_0x43fde0(0xdb)]===0x0)return{'query':null,'values':[]};const _0x32105e=this['buildEscapeFunction'](_0x361933),_0x1e657d=_0x255c97['filter'](_0x5acfac=>!_0x5ec86b[_0x43fde0(0xbc)](_0x5acfac)&&_0x5acfac!==_0x28ac3c);if(_0x305aa2['ypFwA'](_0x1e657d[_0x43fde0(0xdb)],0x0))return logger['warn']({'event':_0x305aa2['NBtyg'],'tableName':_0x4577d7},_0x305aa2['InSbx']),{'query':null,'values':[]};const _0x31d341=[...new Set([..._0x5ec86b,..._0x1e657d])],_0x483a25=_0x193888['map'](_0x2b1df5=>{const _0x685f77=_0x43fde0,_0x48bd44=_0x31d341[_0x685f77(0xe7)](_0x5dbb08=>_0x32105e(_0x2b1df5[_0x5dbb08],_0x5dbb08));return'('+_0x48bd44[_0x685f77(0xe6)](',\x20')+')';}),_0x5be650=_0x1e657d['map'](_0x535332=>_0x535332+'\x20=\x20VALUES('+_0x535332+')')[_0x43fde0(0xe6)](_0x305aa2[_0x43fde0(0xf3)]),_0x685062='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x4577d7+'\x20('+_0x31d341['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x483a25[_0x43fde0(0xe6)](_0x43fde0(0x9a))+_0x43fde0(0x9b)+_0x5be650+'\x0a\x20\x20\x20\x20';return logger[_0x43fde0(0x98)]({'event':_0x305aa2[_0x43fde0(0xca)],'tableName':_0x4577d7,'rowCount':_0x193888['length'],'updateColumns':_0x1e657d[_0x43fde0(0xdb)],'dbType':'mysql'},_0x43fde0(0xd8)),{'query':_0x685062,'values':[]};}[a0_0x2ce5ba(0xdc)](_0x17eeda,_0x23a605=0x64){const _0x5a00a7=a0_0x2ce5ba,_0x6882a2={'ctZuo':function(_0xd78819,_0x3b00b2){return _0xd78819<_0x3b00b2;}},_0x58a7c6=[];for(let _0x2d28ee=0x0;_0x6882a2['ctZuo'](_0x2d28ee,_0x17eeda['length']);_0x2d28ee+=_0x23a605){_0x58a7c6[_0x5a00a7(0xae)](_0x17eeda[_0x5a00a7(0xce)](_0x2d28ee,_0x2d28ee+_0x23a605));}return _0x58a7c6;}}module[a0_0x2ce5ba(0xb1)]=new UpsertBuilder();
1
+ const a0_0x57fbbb=a0_0x165e;(function(_0x31d8d7,_0x51fa0c){const _0x20e21e=a0_0x165e,_0x37d888=_0x31d8d7();while(!![]){try{const _0x215e98=parseInt(_0x20e21e(0x200))/0x1+-parseInt(_0x20e21e(0x22a))/0x2+-parseInt(_0x20e21e(0x1fa))/0x3+-parseInt(_0x20e21e(0x1ea))/0x4+parseInt(_0x20e21e(0x1ec))/0x5*(-parseInt(_0x20e21e(0x22c))/0x6)+-parseInt(_0x20e21e(0x213))/0x7+parseInt(_0x20e21e(0x205))/0x8*(parseInt(_0x20e21e(0x20e))/0x9);if(_0x215e98===_0x51fa0c)break;else _0x37d888['push'](_0x37d888['shift']());}catch(_0x13379c){_0x37d888['push'](_0x37d888['shift']());}}}(a0_0x5c87,0x381e3));function a0_0x165e(_0x1733d4,_0x3beb98){_0x1733d4=_0x1733d4-0x1e3;const _0x5c87bf=a0_0x5c87();let _0x165ee9=_0x5c87bf[_0x1733d4];if(a0_0x165e['uNjGZN']===undefined){var _0x5ec4e0=function(_0x26a26c){const _0x26f9a6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x27799c='',_0x25a67f='';for(let _0x330686=0x0,_0x1703d7,_0x9879f1,_0x44fc62=0x0;_0x9879f1=_0x26a26c['charAt'](_0x44fc62++);~_0x9879f1&&(_0x1703d7=_0x330686%0x4?_0x1703d7*0x40+_0x9879f1:_0x9879f1,_0x330686++%0x4)?_0x27799c+=String['fromCharCode'](0xff&_0x1703d7>>(-0x2*_0x330686&0x6)):0x0){_0x9879f1=_0x26f9a6['indexOf'](_0x9879f1);}for(let _0x453be7=0x0,_0xf200b2=_0x27799c['length'];_0x453be7<_0xf200b2;_0x453be7++){_0x25a67f+='%'+('00'+_0x27799c['charCodeAt'](_0x453be7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x25a67f);};a0_0x165e['fTQrvi']=_0x5ec4e0,a0_0x165e['RVQKkq']={},a0_0x165e['uNjGZN']=!![];}const _0x2bd145=_0x5c87bf[0x0],_0x58602c=_0x1733d4+_0x2bd145,_0x25548c=a0_0x165e['RVQKkq'][_0x58602c];return!_0x25548c?(_0x165ee9=a0_0x165e['fTQrvi'](_0x165ee9),a0_0x165e['RVQKkq'][_0x58602c]=_0x165ee9):_0x165ee9=_0x25548c,_0x165ee9;}function a0_0x5c87(){const _0x59594f=['AvPfr1q','ogf6u1zWtW','Cg9ZDgDYzxnXBa','rvr5vLy','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','D2fYBG','BxLZCwW','z0PiB0S','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','lI9SB2DNzxi','mtaWmZm2ntbqww9RAM0','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHnEvnrtcbptIbevvbmsunbveuGs0vzkq','Dg9mB3DLCKnHC2u','kqOGicaGicbxsevoie1bveniruqGveHftIbvuerbveuGu0vuia','BNvTyMvY','mtG4nJK4m3jiBw1LDq','cIaGicbvtKLptIbbteWk','C3fSAxrL','qMf0y2GGsu5trvjuihf1zxj5igj1AwX0icHpCMfJBguP','oJPct09mrufo','zLzVqxm','cIaGicaGieLou0vsvcbjtLrpia','BwfW','uKHgtKu','t1jbq0Xf','C3rYAw5N','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','Cg9TrNK','yNvPBgrfC2nHCgvgDw5JDgLVBG','id0GDI4','B21bC0O','ue9tveDsrvnrta','Aw5JBhvKzxm','cLnftevdvcaXiezst00Grfvbta','Cg5wzgS','ieforca','y2H1BMTsB3DZ','uMH5ALi','mJuYnZaWyxbiz3Hg','CeHnyxa','odrkEM5iqwK','C2XPy2u','icaGifnftevdvca','rejFvfLqrq','zw52','zgf0zq','y2vVsNO','C3LvAei','teLOC1e','ve9FrefursG','DhLWzq','su5trvjuiefmtaO','yNvPBgrcyxrJAfvWzgf0zq','ieftierbveuP','ChvZAa','zM9YBwf0rgf0zvzHBhvL','lcaNwvLzws1nts1ercCP','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','qMf0y2GGsu5trvjuihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','cIaGicaGie9oiervueXjq0fursblrvKGvvbeqvrfia','yMf0y2HFAw5Zzxj0x2j1AwX0','AM9PBG','ANPhEu4','u1fmsvrf','tvLtuuW','mtaWmJG3nNfdr0DYCq','z29eCgO','mtaZmta1vezhzLrO','oJPeqvrf','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','zM9YBwf0qM9VBgvHBLzHBhvL','tLvmta','yMf0y2HFDxbKyxrLx2j1AwX0','q0ftvcG','CMvWBgfJzq','z2v0rgf0ywjHC2vuExbL','vu1jrfy','kqOGicaGicbwquXvrvmG','t1vRrLa','uhHkEKK','cIaGicaGifvqrefursa','nZG3odmWzMD0A0DP','BgvUz3rO','yNvPBgrcyxrJAeLUC2vYDa','shfeA0y','ihqkicaGicaGvvnjtKCGkaO','zMLSDgvY','mZeYotuXuwjbBerS','laOGicaGicaGia','laOGicaGicaGica','zgvIDwC'];a0_0x5c87=function(){return _0x59594f;};return a0_0x5c87();}const {logger}=require(a0_0x57fbbb(0x20d)),DB_TYPES={'POSTGRESQL':a0_0x57fbbb(0x206),'MYSQL':a0_0x57fbbb(0x20a),'SQLSERVER':'sqlserver','ORACLE':'oracle','SQLITE':a0_0x57fbbb(0x215)};class UpsertBuilder{['getDatabaseType'](){const _0x243ace=a0_0x57fbbb,_0x3f9df7={'nmOME':'postgresql','ceoJz':'invalid_db_type'},_0x1bc797=(process[_0x243ace(0x230)][_0x243ace(0x22f)]||_0x3f9df7['nmOME'])[_0x243ace(0x210)](),_0xbdf610=Object['values'](DB_TYPES);if(!_0xbdf610['includes'](_0x1bc797))return logger[_0x243ace(0x209)]({'event':_0x3f9df7[_0x243ace(0x232)],'provided':_0x1bc797,'fallback':_0x3f9df7['nmOME']},'Invalid\x20DB_TYPE:\x20'+_0x1bc797+'.\x20Falling\x20back\x20to\x20postgresql.'),DB_TYPES[_0x243ace(0x223)];return _0x1bc797;}[a0_0x57fbbb(0x23b)](_0x5517d1,_0x3d0cc5,_0x1e3899=![]){const _0x48d595=a0_0x57fbbb,_0x6f3d59={'iWoID':'NULL::DATE','ETyVV':'NULL'};if(_0x1e3899)switch(_0x3d0cc5){case DB_TYPES['POSTGRESQL']:return _0x6f3d59['iWoID'];case DB_TYPES['MYSQL']:return _0x6f3d59[_0x48d595(0x207)];case DB_TYPES[_0x48d595(0x1e8)]:return _0x6f3d59['ETyVV'];case DB_TYPES['SQLSERVER']:return _0x48d595(0x1f0);case DB_TYPES['ORACLE']:return _0x6f3d59[_0x48d595(0x207)];default:return'NULL::DATE';}switch(_0x3d0cc5){case DB_TYPES[_0x48d595(0x223)]:return _0x5517d1+_0x48d595(0x1ed);case DB_TYPES[_0x48d595(0x1e9)]:return _0x5517d1;case DB_TYPES['SQLITE']:return _0x5517d1;case DB_TYPES['SQLSERVER']:return _0x48d595(0x1f2)+_0x5517d1+_0x48d595(0x239);case DB_TYPES[_0x48d595(0x21c)]:return _0x48d595(0x235)+_0x5517d1+_0x48d595(0x23c);default:return _0x5517d1+_0x48d595(0x1ed);}}[a0_0x57fbbb(0x1ef)](_0x34ca84,_0x1bff56,_0xc46be=![]){const _0xbded8b=a0_0x57fbbb,_0x1b12d7={'gJHoK':'NULL::BOOLEAN','nFJoi':_0xbded8b(0x1f0)};if(_0xc46be)switch(_0x1bff56){case DB_TYPES['POSTGRESQL']:return _0x1b12d7[_0xbded8b(0x20b)];default:return _0x1b12d7['nFJoi'];}switch(_0x1bff56){case DB_TYPES['POSTGRESQL']:return _0x34ca84+_0xbded8b(0x217);case DB_TYPES[_0xbded8b(0x21c)]:return _0x34ca84;case DB_TYPES['MYSQL']:return _0x34ca84;case DB_TYPES[_0xbded8b(0x1e8)]:return _0x34ca84;case DB_TYPES['SQLSERVER']:return _0xbded8b(0x1f2)+_0x34ca84+'\x20AS\x20BIT)';default:return _0x34ca84+_0xbded8b(0x217);}}['buildEscapeFunction'](_0x42ef81={}){const _0x40bfc7=a0_0x57fbbb,_0x1c843e={'LIhsQ':function(_0x5c0cfa,_0x5bb04e){return _0x5c0cfa===_0x5bb04e;},'PxJzI':_0x40bfc7(0x231),'jOyVq':_0x40bfc7(0x21d),'tmfHP':'boolean','otZam':_0x40bfc7(0x212),'goDpj':function(_0x2dcc5d,_0x7a7ce0){return _0x2dcc5d===_0x7a7ce0;}},_0x6a51c7=this[_0x40bfc7(0x1f4)]();return(_0x5c5356,_0x3c8d07)=>{const _0x12b001=_0x40bfc7,_0x11d3b4=_0x42ef81[_0x3c8d07];if(_0x5c5356===null||_0x5c5356===undefined){if(_0x11d3b4&&_0x1c843e['LIhsQ'](_0x11d3b4['type'],_0x1c843e[_0x12b001(0x1f8)]))return this['formatDateValue'](null,_0x6a51c7,!![]);if(_0x11d3b4&&_0x11d3b4[_0x12b001(0x236)]==='boolean')return this[_0x12b001(0x1ef)](null,_0x6a51c7,!![]);return'NULL';}if(_0x1c843e[_0x12b001(0x234)](typeof _0x5c5356,_0x1c843e['jOyVq'])){const _0x23de0d='\x27'+_0x5c5356['replace'](/'/g,'\x27\x27')+'\x27';if(_0x11d3b4&&_0x11d3b4[_0x12b001(0x236)]===_0x12b001(0x231))return this['formatDateValue'](_0x23de0d,_0x6a51c7,![]);if(_0x11d3b4&&_0x11d3b4[_0x12b001(0x236)]===_0x1c843e['tmfHP'])return this[_0x12b001(0x1ef)](_0x23de0d,_0x6a51c7,![]);return _0x23de0d;}if(typeof _0x5c5356===_0x1c843e['otZam'])return _0x5c5356;if(_0x1c843e[_0x12b001(0x1eb)](typeof _0x5c5356,'boolean'))return _0x5c5356;const _0x37782c='\x27'+String(_0x5c5356)[_0x12b001(0x1f3)](/'/g,'\x27\x27')+'\x27';if(_0x11d3b4&&_0x11d3b4['type']===_0x12b001(0x231))return this['formatDateValue'](_0x37782c,_0x6a51c7,![]);return _0x37782c;};}[a0_0x57fbbb(0x1fc)](_0x4ae761,_0x2ce2fd,_0x17cd2a,_0xe210de={}){const _0xc33e44=a0_0x57fbbb,_0x5020a1={'pHMap':function(_0x4ed61a,_0x36e918){return _0x4ed61a===_0x36e918;}},_0xace1fc=this['getDatabaseType']();if(_0x5020a1[_0xc33e44(0x22b)](_0xace1fc,DB_TYPES[_0xc33e44(0x21c)]))return this[_0xc33e44(0x208)](_0x4ae761,_0x2ce2fd,_0x17cd2a,_0xe210de);return this['_buildBatchInsertPostgres'](_0x4ae761,_0x2ce2fd,_0x17cd2a,_0xe210de);}['_buildBatchInsertPostgres'](_0x1606e7,_0x30e3b5,_0x15c76a,_0x274954={}){const _0x3d78d9=a0_0x57fbbb,_0x28275d={'CZZCt':'postgresql','pnVdk':_0x3d78d9(0x1e3)};if(_0x1606e7[_0x3d78d9(0x1fb)]===0x0)return{'query':null,'values':[]};const _0x2debe4=this['buildEscapeFunction'](_0x274954),_0x412208=_0x1606e7['map'](_0x58f2af=>{const _0x49ff00=_0x3d78d9,_0x2c3829=_0x15c76a['map'](_0x4d5bc4=>_0x2debe4(_0x58f2af[_0x4d5bc4],_0x4d5bc4));return'('+_0x2c3829[_0x49ff00(0x1e6)](',\x20')+')';}),_0x577e77=_0x3d78d9(0x219)+_0x30e3b5+'\x20('+_0x15c76a[_0x3d78d9(0x1e6)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x412208[_0x3d78d9(0x1e6)](',\x0a\x20\x20\x20\x20\x20\x20\x20')+'\x0a\x20\x20\x20\x20';return logger[_0x3d78d9(0x203)]({'event':_0x3d78d9(0x1e5),'tableName':_0x30e3b5,'rowCount':_0x1606e7[_0x3d78d9(0x1fb)],'dbType':_0x28275d['CZZCt']},_0x28275d[_0x3d78d9(0x226)]),{'query':_0x577e77,'values':[]};}[a0_0x57fbbb(0x208)](_0x47bd3a,_0x4b1b99,_0x1fb194,_0x570c8d={}){const _0x4c1fe9=a0_0x57fbbb,_0x3559fc={'lVuhF':function(_0x38c9fb,_0xde9c64){return _0x38c9fb===_0xde9c64;},'OfJRk':'batch_insert_built','pomFy':'oracle'};if(_0x3559fc['lVuhF'](_0x47bd3a[_0x4c1fe9(0x1fb)],0x0))return{'query':null,'values':[]};const _0x3c6571=this[_0x4c1fe9(0x220)](_0x570c8d),_0x473c6f=_0x47bd3a['map'](_0x298737=>{const _0x1f69bf=_0x4c1fe9,_0x42a846=_0x1fb194[_0x1f69bf(0x21a)](_0x44d120=>_0x3c6571(_0x298737[_0x44d120],_0x44d120));return'\x20\x20INTO\x20'+_0x4b1b99+'\x20('+_0x1fb194['join'](',\x20')+')\x20VALUES\x20('+_0x42a846[_0x1f69bf(0x1e6)](',\x20')+')';}),_0x20c982=_0x4c1fe9(0x237)+_0x473c6f['join']('\x0a')+_0x4c1fe9(0x225);return logger[_0x4c1fe9(0x203)]({'event':_0x3559fc['OfJRk'],'tableName':_0x4b1b99,'rowCount':_0x47bd3a[_0x4c1fe9(0x1fb)],'dbType':_0x3559fc[_0x4c1fe9(0x21f)]},_0x4c1fe9(0x216)),{'query':_0x20c982,'values':[]};}[a0_0x57fbbb(0x238)](_0x233eea,_0x24cafb,_0x4da74f,_0x4ccae0,_0xcbbbee,_0x6a927={}){const _0x43a727=a0_0x57fbbb,_0x386b4f=this['getDatabaseType']();if(_0x386b4f===DB_TYPES[_0x43a727(0x21c)])return this[_0x43a727(0x21e)](_0x233eea,_0x24cafb,_0x4da74f,_0x4ccae0,_0xcbbbee,_0x6a927);if(_0x386b4f===DB_TYPES[_0x43a727(0x1e9)])return this[_0x43a727(0x23d)](_0x233eea,_0x24cafb,_0x4da74f,_0x4ccae0,_0xcbbbee,_0x6a927);return this['_buildBatchUpdatePostgres'](_0x233eea,_0x24cafb,_0x4da74f,_0x4ccae0,_0xcbbbee,_0x6a927);}['_buildBatchUpdatePostgres'](_0xd8dbb9,_0x22f3d2,_0x1c30b2,_0x453012,_0x5378c0,_0x587696={}){const _0x3bcdef=a0_0x57fbbb,_0x50503b={'GZeet':function(_0x48b524,_0x4953e4){return _0x48b524===_0x4953e4;},'iZEGT':function(_0x3f3dfe,_0x4b4512){return _0x3f3dfe===_0x4b4512;},'hdVHf':'batch_update_no_columns','fVoAs':_0x3bcdef(0x227),'syUhB':_0x3bcdef(0x1f1),'vrXiw':'Batch\x20UPDATE\x20query\x20built\x20(PostgreSQL)'};if(_0x50503b['GZeet'](_0xd8dbb9['length'],0x0))return{'query':null,'values':[]};const _0x249d69=this['buildEscapeFunction'](_0x587696),_0x50aea2=_0x1c30b2[_0x3bcdef(0x1ff)](_0x144d80=>!_0x5378c0[_0x3bcdef(0x224)](_0x144d80)&&_0x144d80!==_0x453012);if(_0x50503b[_0x3bcdef(0x204)](_0x50aea2['length'],0x0))return logger[_0x3bcdef(0x209)]({'event':_0x50503b['hdVHf'],'tableName':_0x22f3d2},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x57b67f=_0xd8dbb9[_0x3bcdef(0x21a)](_0x1ce2d6=>{const _0x6e70a4=_0x3bcdef,_0x5f26e9=[..._0x5378c0,..._0x50aea2],_0x1c2e60=_0x5f26e9[_0x6e70a4(0x21a)](_0x4dfaa4=>_0x249d69(_0x1ce2d6[_0x4dfaa4],_0x4dfaa4));return'('+_0x1c2e60[_0x6e70a4(0x1e6)](',\x20')+')';}),_0x8c0583=_0x50aea2['map'](_0x4fb703=>_0x4fb703+_0x3bcdef(0x221)+_0x4fb703)['join'](_0x3bcdef(0x202)),_0x355d96=_0x5378c0[_0x3bcdef(0x21a)](_0x1b6b76=>'t.'+_0x1b6b76+_0x3bcdef(0x221)+_0x1b6b76)[_0x3bcdef(0x1e6)](_0x50503b[_0x3bcdef(0x218)]),_0x531f2c=_0x3bcdef(0x1f9)+_0x22f3d2+'\x20AS\x20t\x0a\x20\x20\x20\x20\x20\x20SET\x20'+_0x8c0583+'\x0a\x20\x20\x20\x20\x20\x20FROM\x20(VALUES\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x57b67f['join'](_0x3bcdef(0x201))+'\x0a\x20\x20\x20\x20\x20\x20)\x20AS\x20v('+[..._0x5378c0,..._0x50aea2][_0x3bcdef(0x1e6)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20WHERE\x20'+_0x355d96+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x50503b[_0x3bcdef(0x233)],'tableName':_0x22f3d2,'rowCount':_0xd8dbb9[_0x3bcdef(0x1fb)],'updateColumns':_0x50aea2[_0x3bcdef(0x1fb)],'dbType':'postgresql'},_0x50503b['vrXiw']),{'query':_0x531f2c,'values':[]};}['_buildBatchUpdateOracle'](_0x355564,_0x19c394,_0x5691fb,_0x36ba37,_0x519463,_0x1e2b65={}){const _0x3aea03=a0_0x57fbbb,_0x174a9a={'ILhjr':function(_0x40005a,_0xc5743e,_0x493cd8){return _0x40005a(_0xc5743e,_0x493cd8);},'RhyjR':function(_0x4da188,_0x7ff1d6){return _0x4da188===_0x7ff1d6;},'spFgY':'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)','UMIDV':_0x3aea03(0x202),'jzGyN':_0x3aea03(0x227),'LLgbo':_0x3aea03(0x214)};if(_0x174a9a[_0x3aea03(0x229)](_0x355564['length'],0x0))return{'query':null,'values':[]};const _0x1a832e=this['buildEscapeFunction'](_0x1e2b65),_0x257065=_0x5691fb['filter'](_0x4a48ee=>!_0x519463['includes'](_0x4a48ee)&&_0x4a48ee!==_0x36ba37);if(_0x257065['length']===0x0)return logger[_0x3aea03(0x209)]({'event':'batch_update_no_columns','tableName':_0x19c394},_0x174a9a['spFgY']),{'query':null,'values':[]};const _0x1f686d=[..._0x519463,..._0x257065],_0x2efa6f=_0x355564['map']((_0x3483e4,_0x37f1a4)=>{const _0x29692a=_0x3aea03,_0x5f571c=_0x1f686d[_0x29692a(0x21a)](_0x103eba=>{const _0x1edf7f=_0x174a9a['ILhjr'](_0x1a832e,_0x3483e4[_0x103eba],_0x103eba);return _0x37f1a4===0x0?_0x1edf7f+'\x20AS\x20'+_0x103eba:_0x1edf7f;});return _0x29692a(0x22e)+_0x5f571c['join'](',\x20')+'\x20FROM\x20DUAL';}),_0x49a6ac=_0x257065['map'](_0x4fb138=>'t.'+_0x4fb138+_0x3aea03(0x221)+_0x4fb138)['join'](_0x174a9a[_0x3aea03(0x1f5)]),_0x2d0634=_0x519463[_0x3aea03(0x21a)](_0x4549b0=>'t.'+_0x4549b0+_0x3aea03(0x221)+_0x4549b0)[_0x3aea03(0x1e6)](_0x174a9a[_0x3aea03(0x1e7)]),_0x1c038f='\x0a\x20\x20\x20\x20\x20\x20MERGE\x20INTO\x20'+_0x19c394+_0x3aea03(0x1fe)+_0x2efa6f[_0x3aea03(0x1e6)](_0x174a9a['LLgbo'])+'\x0a\x20\x20\x20\x20\x20\x20)\x20v\x0a\x20\x20\x20\x20\x20\x20ON\x20('+_0x2d0634+_0x3aea03(0x211)+_0x49a6ac+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':'batch_update_built','tableName':_0x19c394,'rowCount':_0x355564[_0x3aea03(0x1fb)],'updateColumns':_0x257065[_0x3aea03(0x1fb)],'dbType':'oracle'},'Batch\x20UPDATE\x20query\x20built\x20(Oracle\x20MERGE)'),{'query':_0x1c038f,'values':[]};}['_buildBatchUpdateMysql'](_0x3813f5,_0x3e87f6,_0x32962e,_0x4be941,_0x1be7b7,_0x535db8={}){const _0x4e7143=a0_0x57fbbb,_0x59ec0a={'YAipQ':_0x4e7143(0x20c),'OUkFP':_0x4e7143(0x1ee),'EAakT':'batch_update_built','RHFNE':_0x4e7143(0x20a),'omAsJ':_0x4e7143(0x20f)};if(_0x3813f5['length']===0x0)return{'query':null,'values':[]};const _0x5c1f25=this['buildEscapeFunction'](_0x535db8),_0x1baad8=_0x32962e[_0x4e7143(0x1ff)](_0x4ed7f5=>!_0x1be7b7['includes'](_0x4ed7f5)&&_0x4ed7f5!==_0x4be941);if(_0x1baad8['length']===0x0)return logger[_0x4e7143(0x209)]({'event':_0x59ec0a['YAipQ'],'tableName':_0x3e87f6},_0x59ec0a[_0x4e7143(0x1f7)]),{'query':null,'values':[]};const _0x21fc0e=[...new Set([..._0x1be7b7,..._0x1baad8])],_0x3d5c4c=_0x3813f5[_0x4e7143(0x21a)](_0x387660=>{const _0x715c0=_0x4e7143,_0x16ed53=_0x21fc0e[_0x715c0(0x21a)](_0x54d9ee=>_0x5c1f25(_0x387660[_0x54d9ee],_0x54d9ee));return'('+_0x16ed53['join'](',\x20')+')';}),_0x3e8fa9=_0x1baad8['map'](_0x356b8d=>_0x356b8d+'\x20=\x20VALUES('+_0x356b8d+')')[_0x4e7143(0x1e6)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0x543966='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x3e87f6+'\x20('+_0x21fc0e['join'](',\x20')+_0x4e7143(0x1f6)+_0x3d5c4c[_0x4e7143(0x1e6)](_0x4e7143(0x201))+_0x4e7143(0x1e4)+_0x3e8fa9+'\x0a\x20\x20\x20\x20';return logger[_0x4e7143(0x203)]({'event':_0x59ec0a['EAakT'],'tableName':_0x3e87f6,'rowCount':_0x3813f5[_0x4e7143(0x1fb)],'updateColumns':_0x1baad8[_0x4e7143(0x1fb)],'dbType':_0x59ec0a[_0x4e7143(0x21b)]},_0x59ec0a[_0x4e7143(0x222)]),{'query':_0x543966,'values':[]};}[a0_0x57fbbb(0x228)](_0x3f690c,_0x3eacb0=0x64){const _0x8a83fc=a0_0x57fbbb,_0x5b59a5={'HqDkF':function(_0x2f250e,_0x36a2ec){return _0x2f250e+_0x36a2ec;}},_0x1d6fff=[];for(let _0x3cfa33=0x0;_0x3cfa33<_0x3f690c['length'];_0x3cfa33+=_0x3eacb0){_0x1d6fff[_0x8a83fc(0x23a)](_0x3f690c[_0x8a83fc(0x22d)](_0x3cfa33,_0x5b59a5[_0x8a83fc(0x1fd)](_0x3cfa33,_0x3eacb0)));}return _0x1d6fff;}}module['exports']=new UpsertBuilder();
@@ -1 +1 @@
1
- const a0_0x35b97e=a0_0x2ec0;(function(_0x1ca825,_0x18968a){const _0x414188=a0_0x2ec0,_0x157675=_0x1ca825();while(!![]){try{const _0x40acd6=parseInt(_0x414188(0xa1))/0x1+-parseInt(_0x414188(0x99))/0x2+parseInt(_0x414188(0xa0))/0x3+-parseInt(_0x414188(0x95))/0x4*(parseInt(_0x414188(0x7b))/0x5)+parseInt(_0x414188(0x77))/0x6*(parseInt(_0x414188(0x79))/0x7)+parseInt(_0x414188(0xa6))/0x8+parseInt(_0x414188(0x87))/0x9*(parseInt(_0x414188(0xa2))/0xa);if(_0x40acd6===_0x18968a)break;else _0x157675['push'](_0x157675['shift']());}catch(_0x4a3182){_0x157675['push'](_0x157675['shift']());}}}(a0_0x2b17,0x24d1e));const axios=require(a0_0x35b97e(0x83)),DEFAULT_TIMEOUT=0x2710,DEFAULT_METHOD='POST',DEFAULT_HOST='localhost',DEFAULT_PORT=0xbb8;function resolveTemplateString(_0x186fd3,_0x329eda){const _0x3eaf43=a0_0x35b97e,_0x4c5876={'FpcRL':function(_0x123581,_0x316f80,_0x4608a0){return _0x123581(_0x316f80,_0x4608a0);},'zyHhe':function(_0x20f069,_0x28fc4c){return _0x20f069!==_0x28fc4c;},'nFGSE':'object'};if(typeof _0x186fd3!=='string')return _0x186fd3;return _0x186fd3[_0x3eaf43(0xa8)](/\{\{([^}]+)\}\}/g,(_0x1c866e,_0x56effd)=>{const _0x51449d=_0x3eaf43,_0x3ba3a8=_0x56effd[_0x51449d(0xa7)](),_0x38bd61=_0x4c5876['FpcRL'](getNestedValue,_0x329eda,_0x3ba3a8);if(_0x4c5876['zyHhe'](_0x38bd61,undefined)&&_0x38bd61!==null)return typeof _0x38bd61===_0x4c5876['nFGSE']?JSON[_0x51449d(0x98)](_0x38bd61):String(_0x38bd61);return _0x1c866e;});}function resolveTemplateVariables(_0xb69503,_0x1e871b){const _0x28c91d=a0_0x35b97e,_0x2a210b={'wIRXC':function(_0x453739,_0x5a0d20){return _0x453739===_0x5a0d20;},'rOaVP':'string','uZOnz':function(_0x362b91,_0x79a6e7){return _0x362b91!==_0x79a6e7;},'RHZhu':function(_0x4068f6,_0x33456b,_0x10d404){return _0x4068f6(_0x33456b,_0x10d404);}};if(_0x2a210b['wIRXC'](typeof _0xb69503,_0x2a210b[_0x28c91d(0x82)]))return resolveTemplateString(_0xb69503,_0x1e871b);if(Array['isArray'](_0xb69503))return _0xb69503[_0x28c91d(0x9c)](_0x407e1a=>resolveTemplateVariables(_0x407e1a,_0x1e871b));if(_0x2a210b['uZOnz'](_0xb69503,null)&&typeof _0xb69503==='object'){const _0x33abbd={};for(const [_0x504e88,_0x49b52c]of Object['entries'](_0xb69503)){_0x33abbd[_0x504e88]=_0x2a210b[_0x28c91d(0xa9)](resolveTemplateVariables,_0x49b52c,_0x1e871b);}return _0x33abbd;}return _0xb69503;}function getNestedValue(_0x40845f,_0x1bfcbd){const _0x1e03cc=a0_0x35b97e;return _0x1bfcbd[_0x1e03cc(0x90)]('.')['reduce']((_0x38b3ac,_0x14b960)=>{return _0x38b3ac&&_0x38b3ac[_0x14b960]!==undefined?_0x38b3ac[_0x14b960]:undefined;},_0x40845f);}function resolveUrl(_0x376408,_0x56dee5){const _0x170132=a0_0x35b97e,_0x4f140a={'jdFvo':function(_0xde1e5a,_0x55857e){return _0xde1e5a!==_0x55857e;},'lYNyD':'http://','CdtwN':'https://','mjLpc':'/api/'};if(!_0x376408||_0x4f140a[_0x170132(0x8c)](typeof _0x376408,_0x170132(0x91)))return _0x376408;if(_0x376408['startsWith'](_0x4f140a['lYNyD'])||_0x376408['startsWith'](_0x4f140a[_0x170132(0x85)]))return _0x376408;const _0x45e618=process[_0x170132(0x88)]['SERVER_ADDRESS']||process['env']['HOST']||DEFAULT_HOST,_0x29bee8=process[_0x170132(0x88)]['PORT']||DEFAULT_PORT,_0x1f4bd9='http://'+_0x45e618+':'+_0x29bee8;if(_0x376408[_0x170132(0x7d)](_0x4f140a['mjLpc']))return''+_0x1f4bd9+_0x376408;if(_0x376408['startsWith']('/')){const _0x3835b8=_0x56dee5&&_0x56dee5['project']||'';if(_0x3835b8)return _0x1f4bd9+'/api/'+_0x3835b8+_0x376408;return''+_0x1f4bd9+_0x376408;}return _0x376408;}function a0_0x2ec0(_0x1cd66d,_0x2e6155){_0x1cd66d=_0x1cd66d-0x75;const _0x2b176f=a0_0x2b17();let _0x2ec01d=_0x2b176f[_0x1cd66d];if(a0_0x2ec0['ekRRcT']===undefined){var _0x5f2179=function(_0xa39161){const _0x47c580='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x344e3d='',_0x4706db='';for(let _0x112c39=0x0,_0x3cd65c,_0x67b7ac,_0x12ab74=0x0;_0x67b7ac=_0xa39161['charAt'](_0x12ab74++);~_0x67b7ac&&(_0x3cd65c=_0x112c39%0x4?_0x3cd65c*0x40+_0x67b7ac:_0x67b7ac,_0x112c39++%0x4)?_0x344e3d+=String['fromCharCode'](0xff&_0x3cd65c>>(-0x2*_0x112c39&0x6)):0x0){_0x67b7ac=_0x47c580['indexOf'](_0x67b7ac);}for(let _0xa4d3d7=0x0,_0x51ca1b=_0x344e3d['length'];_0xa4d3d7<_0x51ca1b;_0xa4d3d7++){_0x4706db+='%'+('00'+_0x344e3d['charCodeAt'](_0xa4d3d7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4706db);};a0_0x2ec0['cfjaJi']=_0x5f2179,a0_0x2ec0['SMhyCv']={},a0_0x2ec0['ekRRcT']=!![];}const _0x27e99a=_0x2b176f[0x0],_0x40378a=_0x1cd66d+_0x27e99a,_0x1ea6c2=a0_0x2ec0['SMhyCv'][_0x40378a];return!_0x1ea6c2?(_0x2ec01d=a0_0x2ec0['cfjaJi'](_0x2ec01d),a0_0x2ec0['SMhyCv'][_0x40378a]=_0x2ec01d):_0x2ec01d=_0x1ea6c2,_0x2ec01d;}function buildHookContext(_0x12735a){const _0x19ab54=a0_0x35b97e;return{'id':_0x12735a['id']||'','newStatus':_0x12735a['newStatus']||'','oldStatus':_0x12735a['oldStatus']||'','remarks':_0x12735a['remarks']||'','tableName':_0x12735a[_0x19ab54(0x92)]||'','user_id':_0x12735a['userId']||'system','timestamp':new Date()[_0x19ab54(0xaa)](),'record':_0x12735a['record']||{},'requestData':_0x12735a['requestData']||{},'project':_0x12735a['project']||'','authHeader':_0x12735a['authHeader']||null};}function a0_0x2b17(){const _0x5102d3=['zxHWB3j0CW','mJeZndjoAvPru2y','rMfyA08','mJfAt0PxBe0','BgvUz3rO','mJi4ndviC3rWq24','sg9VAYbZA2LWCgvKoIb1BNn1ChbVCNrLzcb0ExbL','C3rHCNrZv2L0Aa','C3vJy2vZCW','CMvZCg9UC2u','AgvHzgvYCW','sg9VAYbLEgvJDxrPB24GzMfPBgvK','CK9HvLa','yxHPB3m','C3rHDhvZvgv4Da','q2r0D04','Bwv0Ag9K','mJq3otu5D0TerfvM','zw52','Dg9mB3DLCKnHC2u','yxbWBgLJyxrPB24VANnVBG','uMvZDezVCMDLlvDVCMTMBg93lZeUma','AMrgDM8','yMXVy2TPBMC','yxv0Ag9YAxPHDgLVBG','AxnbCNjHEq','C3bSAxq','C3rYAw5N','DgfIBgvoyw1L','yM9KEq','qxv0Ag9YAxPHDgLVBG','mJm2wg9hBgjf','v29YA2zSB3CGAg9VAYbMywLSzwq6ia','q1fJChK','C3rYAw5NAwz5','mJmZote2r3zHDhLv','sg9VAYbLEgvJDxrLzcbZDwnJzxnZzNvSBhK','t1PKDhK','BwfW','sxbWu1K','rujLwfm','BwvZC2fNzq','mJy1mtGYv1LZAurf','mJi1ntG4z1rsvgX4','mtbQt2DAzei','DxjS','C3rHDhvZ','DgLTzw91Da','mtq4mteXmMX5AwHXCG','DhjPBq','CMvWBgfJzq','uKHAAhu','Dg9ju09tDhjPBMC','B1b0wvm','iokgKIa'];a0_0x2b17=function(){return _0x5102d3;};return a0_0x2b17();}async function executeHook(_0x4ab232,_0x110a4d){const _0x522cc5=a0_0x35b97e,_0x572d5f={'CQcpy':function(_0x29fd92,_0x3211bc){return _0x29fd92!==_0x3211bc;},'OZdty':'api','oPtYS':_0x522cc5(0x7c),'rHcSy':function(_0x48e44,_0x5ea5d6,_0x3cd887){return _0x48e44(_0x5ea5d6,_0x3cd887);},'xvrPl':function(_0x5a8cda,_0x27f88a,_0x7739b3){return _0x5a8cda(_0x27f88a,_0x7739b3);},'IppSY':function(_0x3f980,_0xaebf4){return _0x3f980&&_0xaebf4;},'FaXkO':function(_0x11c4cd,_0x2d77ff){return _0x11c4cd(_0x2d77ff);},'Oihsp':_0x522cc5(0x8b)};if(!_0x4ab232||_0x572d5f['CQcpy'](_0x4ab232['type'],_0x572d5f[_0x522cc5(0x9b)]))return{'success':!![],'message':_0x572d5f[_0x522cc5(0xab)]};const _0x1bb9cf=_0x4ab232[_0x522cc5(0x8d)]===!![],_0x1e99de=(_0x4ab232[_0x522cc5(0x86)]||DEFAULT_METHOD)['toUpperCase'](),_0x2dbfe9=_0x4ab232[_0x522cc5(0xa5)]||DEFAULT_TIMEOUT,_0x21687b=resolveTemplateString(_0x4ab232[_0x522cc5(0xa3)],_0x110a4d),_0x14e39a=_0x572d5f['rHcSy'](resolveUrl,_0x21687b,_0x110a4d),_0x22d6c5=_0x4ab232[_0x522cc5(0x93)]?_0x572d5f['xvrPl'](resolveTemplateVariables,_0x4ab232[_0x522cc5(0x93)],_0x110a4d):{},_0x543d93=_0x4ab232[_0x522cc5(0x80)]?resolveTemplateVariables(_0x4ab232['headers'],_0x110a4d):{},_0x8e533=_0x543d93&&(_0x572d5f[_0x522cc5(0x97)](_0x543d93[_0x522cc5(0x94)],undefined)||_0x543d93[_0x522cc5(0x8e)]!==undefined),_0x447e40=_0x572d5f[_0x522cc5(0x9d)](!_0x8e533,_0x110a4d)&&_0x110a4d['authHeader']?{'Authorization':_0x110a4d['authHeader']}:{};try{const _0x49537d=await _0x572d5f[_0x522cc5(0x78)](axios,{'method':_0x1e99de[_0x522cc5(0x89)](),'url':_0x14e39a,'data':_0x22d6c5,'headers':{'Content-Type':_0x522cc5(0x8a),'User-Agent':_0x572d5f['Oihsp'],..._0x447e40,..._0x543d93},'timeout':_0x2dbfe9});return console['log']('Workflow\x20hook\x20executed:\x20'+_0x1e99de+'\x20'+_0x14e39a+_0x522cc5(0x75)+_0x49537d[_0x522cc5(0xa4)]),{'success':!![],'message':_0x522cc5(0x9a),'status':_0x49537d[_0x522cc5(0xa4)],'url':_0x14e39a};}catch(_0x3eca04){const _0x511d76=_0x3eca04['response']?'HTTP\x20'+_0x3eca04[_0x522cc5(0x7f)]['status']+':\x20'+_0x3eca04[_0x522cc5(0x7f)][_0x522cc5(0x84)]:_0x3eca04['message'];console['error'](_0x522cc5(0x96)+_0x1e99de+'\x20'+_0x14e39a+'\x20→\x20'+_0x511d76);if(_0x1bb9cf)return{'success':![],'message':'Blocking\x20hook\x20failed:\x20'+_0x511d76,'error':_0x511d76,'url':_0x14e39a};return console['warn']('Non-blocking\x20hook\x20failed\x20(ignored):\x20'+_0x511d76),{'success':!![],'message':'Non-blocking\x20hook\x20failed\x20(ignored):\x20'+_0x511d76,'warning':_0x511d76,'url':_0x14e39a};}}async function executeHooks(_0x1af051,_0x4db32e){const _0xb67be8=a0_0x35b97e,_0xb92203={'vBqnI':function(_0x768d17,_0x26cb6b){return _0x768d17===_0x26cb6b;},'EBeXS':function(_0x541804,_0x4de03a,_0x553c70){return _0x541804(_0x4de03a,_0x553c70);}};if(!_0x1af051||!Array[_0xb67be8(0x8f)](_0x1af051)||_0xb92203['vBqnI'](_0x1af051['length'],0x0))return{'success':!![],'results':[],'hooksExecuted':0x0};const _0x464cbb=[];for(const _0x2db039 of _0x1af051){const _0x3bc7c1=await _0xb92203[_0xb67be8(0x9e)](executeHook,_0x2db039,_0x4db32e);_0x464cbb['push'](_0x3bc7c1);if(!_0x3bc7c1[_0xb67be8(0x7e)])return{'success':![],'error':_0x3bc7c1[_0xb67be8(0x9f)]||_0xb67be8(0x81),'results':_0x464cbb,'hooksExecuted':_0x464cbb['length']};}return{'success':!![],'results':_0x464cbb,'hooksExecuted':_0x464cbb[_0xb67be8(0x7a)]};}module[a0_0x35b97e(0x76)]={'resolveTemplateString':resolveTemplateString,'resolveTemplateVariables':resolveTemplateVariables,'resolveUrl':resolveUrl,'buildHookContext':buildHookContext,'executeHook':executeHook,'executeHooks':executeHooks};
1
+ function a0_0x231b(_0x3b524d,_0xfa5da8){_0x3b524d=_0x3b524d-0x120;const _0xcfee4f=a0_0xcfee();let _0x231b4b=_0xcfee4f[_0x3b524d];if(a0_0x231b['ulWeqR']===undefined){var _0x53a261=function(_0x230a16){const _0x49178a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x309e24='',_0x78c42c='';for(let _0x104cef=0x0,_0x3aa766,_0x25677f,_0x37e36c=0x0;_0x25677f=_0x230a16['charAt'](_0x37e36c++);~_0x25677f&&(_0x3aa766=_0x104cef%0x4?_0x3aa766*0x40+_0x25677f:_0x25677f,_0x104cef++%0x4)?_0x309e24+=String['fromCharCode'](0xff&_0x3aa766>>(-0x2*_0x104cef&0x6)):0x0){_0x25677f=_0x49178a['indexOf'](_0x25677f);}for(let _0x40a7ac=0x0,_0x16694f=_0x309e24['length'];_0x40a7ac<_0x16694f;_0x40a7ac++){_0x78c42c+='%'+('00'+_0x309e24['charCodeAt'](_0x40a7ac)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x78c42c);};a0_0x231b['luIzvk']=_0x53a261,a0_0x231b['FDPohn']={},a0_0x231b['ulWeqR']=!![];}const _0x1e70c0=_0xcfee4f[0x0],_0x4b7c05=_0x3b524d+_0x1e70c0,_0x442f0f=a0_0x231b['FDPohn'][_0x4b7c05];return!_0x442f0f?(_0x231b4b=a0_0x231b['luIzvk'](_0x231b4b),a0_0x231b['FDPohn'][_0x4b7c05]=_0x231b4b):_0x231b4b=_0x442f0f,_0x231b4b;}function a0_0xcfee(){const _0x31e537=['nduWndK2oe5jyujfEG','mtGWntq2ndfPCuDrz3i','rfDQsK4','l2fWAs8','qMXVy2TPBMCGAg9VAYbMywLSzwq6ia','BgvUz3rO','sg9VAYbZA2LWCgvKoIb1BNn1ChbVCNrLzcb0ExbL','Dg9mB3DLCKnHC2u','B21IzwW','C3vJy2vZCW','mJy1nZy2rgTTuhPh','Ahr0CdOVlW','qxv0Ag9YAxPHDgLVBG','zK9RCfu','tM9UlwjSB2nRAw5NigHVB2SGzMfPBgvKicHPz25VCMvKktOG','ELrdENK','sg5hBxK','ntm3nZG2og1wEMX5sG','C3rHCNrZv2L0Aa','nNrOwMHkrq','ofznrKXrzW','BMv3u3rHDhvZ','AxnbCNjHEq','C3LZDgvT','zKP0ruS','Dg9vChbLCKnHC2u','sev5Cfq','CMvZCg9UC2u','sg9VAYbLEgvJDxrPB24GzMfPBgvK','ue9sva','qMLXyMS','m0jWAvnNyW','EKjVzfe','DhLWzq','CMvJB3jK','sg9VAYbLEgvJDxrLzcbZDwnJzxnZzNvSBhK','rLHzyu0','AgvHzgvYCW','ndq5ndu0nKrtzKjKza','Bg9N','D3j6Chu','Bwv0Ag9K','s3f0EK0','mJy0mtvMAxjTBM0','rMvdEwG','C3rYAw5N','C3rYAw5NAwz5','zw52','C3rHDhvZ','se9tva','DxnLCKLK','v29YA2zSB3CGAg9VAYbLEgvJDxrLzdOG','yM9KEq','CMvTyxjRCW','ndaXnZu2nwLcr3DHtq','mZbXshnxsKy'];a0_0xcfee=function(){return _0x31e537;};return a0_0xcfee();}(function(_0x5c0cbc,_0x2417f1){const _0x1f9499=a0_0x231b,_0x481430=_0x5c0cbc();while(!![]){try{const _0x5ddfbf=-parseInt(_0x1f9499(0x144))/0x1*(-parseInt(_0x1f9499(0x13a))/0x2)+-parseInt(_0x1f9499(0x14f))/0x3*(parseInt(_0x1f9499(0x141))/0x4)+-parseInt(_0x1f9499(0x12e))/0x5*(-parseInt(_0x1f9499(0x143))/0x6)+-parseInt(_0x1f9499(0x156))/0x7+-parseInt(_0x1f9499(0x130))/0x8+parseInt(_0x1f9499(0x123))/0x9*(-parseInt(_0x1f9499(0x12f))/0xa)+parseInt(_0x1f9499(0x131))/0xb;if(_0x5ddfbf===_0x2417f1)break;else _0x481430['push'](_0x481430['shift']());}catch(_0x19d591){_0x481430['push'](_0x481430['shift']());}}}(a0_0xcfee,0xe7cbd));const axios=require('axios'),DEFAULT_TIMEOUT=0x2710,DEFAULT_METHOD='POST',DEFAULT_HOST='localhost',DEFAULT_PORT=0xbb8;function resolveTemplateString(_0x2538ac,_0x1ef094){const _0x120b0a=a0_0x231b,_0x33743f={'PwMja':function(_0x10e30c,_0x435f90){return _0x10e30c===_0x435f90;},'HnGmy':function(_0x18d81a,_0x4f44e6){return _0x18d81a!==_0x4f44e6;},'fOkpU':'string'};if(_0x33743f[_0x120b0a(0x140)](typeof _0x2538ac,_0x33743f[_0x120b0a(0x13d)]))return _0x2538ac;return _0x2538ac['replace'](/\{\{([^}]+)\}\}/g,(_0x2204fe,_0x4274da)=>{const _0x456cea=_0x120b0a,_0x1c7b5f=_0x4274da['trim'](),_0x20d685=getNestedValue(_0x1ef094,_0x1c7b5f);if(_0x20d685!==undefined&&_0x20d685!==null)return _0x33743f['PwMja'](typeof _0x20d685,'object')?JSON[_0x456cea(0x126)](_0x20d685):String(_0x20d685);return _0x2204fe;});}function resolveTemplateVariables(_0x3e3180,_0x5d16b6){const _0x379c04=a0_0x231b,_0x4e4677={'Biqbk':function(_0x4bcf61,_0x366432){return _0x4bcf61===_0x366432;},'FeCyh':function(_0x107dd1,_0x2fc6f3,_0x2c562e){return _0x107dd1(_0x2fc6f3,_0x2c562e);},'HEypT':'object','fJtEK':function(_0x61c294,_0xb279ad,_0x5deb43){return _0x61c294(_0xb279ad,_0x5deb43);}};if(_0x4e4677[_0x379c04(0x14e)](typeof _0x3e3180,'string'))return _0x4e4677[_0x379c04(0x124)](resolveTemplateString,_0x3e3180,_0x5d16b6);if(Array[_0x379c04(0x146)](_0x3e3180))return _0x3e3180['map'](_0x4ecacf=>resolveTemplateVariables(_0x4ecacf,_0x5d16b6));if(_0x3e3180!==null&&_0x4e4677['Biqbk'](typeof _0x3e3180,_0x4e4677[_0x379c04(0x14a)])){const _0x1aee89={};for(const [_0x22ce90,_0x3283c8]of Object['entries'](_0x3e3180)){_0x1aee89[_0x22ce90]=_0x4e4677[_0x379c04(0x148)](resolveTemplateVariables,_0x3283c8,_0x5d16b6);}return _0x1aee89;}return _0x3e3180;}function getNestedValue(_0x44182e,_0x1b5828){const _0x16f3aa={'kGMoI':function(_0x5a49e0,_0x203e30){return _0x5a49e0!==_0x203e30;}};return _0x1b5828['split']('.')['reduce']((_0x219728,_0x3fb63f)=>{return _0x219728&&_0x16f3aa['kGMoI'](_0x219728[_0x3fb63f],undefined)?_0x219728[_0x3fb63f]:undefined;},_0x44182e);}function resolveUrl(_0x4e518e,_0x3cfbf2){const _0x3e3660=a0_0x231b,_0xbd49ca={'MFPUl':_0x3e3660(0x125)};if(!_0x4e518e||typeof _0x4e518e!==_0xbd49ca['MFPUl'])return _0x4e518e;if(_0x4e518e['startsWith'](_0x3e3660(0x13b))||_0x4e518e[_0x3e3660(0x142)]('https://'))return _0x4e518e;const _0x593a2a=process[_0x3e3660(0x127)]['SERVER_ADDRESS']||process[_0x3e3660(0x127)][_0x3e3660(0x129)]||DEFAULT_HOST,_0x106ef1=process['env'][_0x3e3660(0x14d)]||DEFAULT_PORT,_0x3b102b=_0x3e3660(0x13b)+_0x593a2a+':'+_0x106ef1;if(_0x4e518e[_0x3e3660(0x142)](_0x3e3660(0x133)))return''+_0x3b102b+_0x4e518e;if(_0x4e518e[_0x3e3660(0x142)]('/')){const _0x144605=_0x3cfbf2&&_0x3cfbf2['project']||'';if(_0x144605)return _0x3b102b+'/api/'+_0x144605+_0x4e518e;return''+_0x3b102b+_0x4e518e;}return _0x4e518e;}function buildHookContext(_0x44c9a9){const _0x86c31d=a0_0x231b;return{'id':_0x44c9a9['id']||'','newStatus':_0x44c9a9[_0x86c31d(0x145)]||'','oldStatus':_0x44c9a9['oldStatus']||'','remarks':_0x44c9a9[_0x86c31d(0x12d)]||'','tableName':_0x44c9a9['tableName']||'','user_id':_0x44c9a9[_0x86c31d(0x12a)]||_0x86c31d(0x147),'timestamp':new Date()['toISOString'](),'record':_0x44c9a9[_0x86c31d(0x152)]||{},'requestData':_0x44c9a9['requestData']||{},'project':_0x44c9a9['project']||'','authHeader':_0x44c9a9['authHeader']||null};}async function executeHook(_0x2bb521,_0x550a54){const _0xc39608=a0_0x231b,_0x3aae1c={'DWjJN':'api','zBodQ':_0xc39608(0x136),'fyCoy':function(_0x36e288,_0x560ca4){return _0x36e288===_0x560ca4;},'FTBBS':function(_0x2384d7,_0x4291bc,_0xf8b51a){return _0x2384d7(_0x4291bc,_0xf8b51a);},'ombel':function(_0x24597f,_0x332d3e,_0x8644ab){return _0x24597f(_0x332d3e,_0x8644ab);},'WxnXk':function(_0x2d64e5,_0x4f714e,_0x49c566){return _0x2d64e5(_0x4f714e,_0x49c566);},'YKScQ':function(_0x2b33bf,_0x364d0c){return _0x2b33bf!==_0x364d0c;},'TVHwD':function(_0x2a9795,_0x1682aa){return _0x2a9795(_0x1682aa);},'wrzpu':'application/json','FXYaM':'RestForge-Workflow/1.0'};if(!_0x2bb521||_0x2bb521[_0xc39608(0x151)]!==_0x3aae1c[_0xc39608(0x132)])return{'success':!![],'message':_0x3aae1c[_0xc39608(0x150)]};const _0x14d69f=_0x3aae1c['fyCoy'](_0x2bb521['blocking'],!![]),_0x33cef0=(_0x2bb521[_0xc39608(0x121)]||DEFAULT_METHOD)[_0xc39608(0x149)](),_0x2ca95e=_0x2bb521['timeout']||DEFAULT_TIMEOUT,_0x38f7cf=_0x3aae1c['FTBBS'](resolveTemplateString,_0x2bb521['url'],_0x550a54),_0xeb2042=_0x3aae1c[_0xc39608(0x138)](resolveUrl,_0x38f7cf,_0x550a54),_0x2851af=_0x2bb521[_0xc39608(0x12c)]?_0x3aae1c['WxnXk'](resolveTemplateVariables,_0x2bb521[_0xc39608(0x12c)],_0x550a54):{},_0xcf051=_0x2bb521['headers']?resolveTemplateVariables(_0x2bb521[_0xc39608(0x155)],_0x550a54):{},_0x26efa9=_0xcf051&&(_0xcf051[_0xc39608(0x13c)]!==undefined||_0x3aae1c['YKScQ'](_0xcf051['authorization'],undefined)),_0x2d6700=!_0x26efa9&&_0x550a54&&_0x550a54['authHeader']?{'Authorization':_0x550a54['authHeader']}:{};try{const _0x434148=await _0x3aae1c['TVHwD'](axios,{'method':_0x33cef0[_0xc39608(0x137)](),'url':_0xeb2042,'data':_0x2851af,'headers':{'Content-Type':_0x3aae1c[_0xc39608(0x120)],'User-Agent':_0x3aae1c[_0xc39608(0x154)],..._0x2d6700,..._0xcf051},'timeout':_0x2ca95e});return console[_0xc39608(0x157)](_0xc39608(0x12b)+_0x33cef0+'\x20'+_0xeb2042+'\x20→\x20'+_0x434148[_0xc39608(0x128)]),{'success':!![],'message':_0xc39608(0x153),'status':_0x434148[_0xc39608(0x128)],'url':_0xeb2042};}catch(_0x1da569){const _0x42359e=_0x1da569[_0xc39608(0x14b)]?'HTTP\x20'+_0x1da569['response']['status']+':\x20'+_0x1da569[_0xc39608(0x14b)]['statusText']:_0x1da569['message'];console['error']('Workflow\x20hook\x20failed:\x20'+_0x33cef0+'\x20'+_0xeb2042+'\x20→\x20'+_0x42359e);if(_0x14d69f)return{'success':![],'message':_0xc39608(0x134)+_0x42359e,'error':_0x42359e,'url':_0xeb2042};return console['warn']('Non-blocking\x20hook\x20failed\x20(ignored):\x20'+_0x42359e),{'success':!![],'message':_0xc39608(0x13e)+_0x42359e,'warning':_0x42359e,'url':_0xeb2042};}}async function executeHooks(_0x3abf1a,_0x4dd4cf){const _0xa0c84d=a0_0x231b,_0x287949={'zTCzy':function(_0x4881fa,_0x2e6fcf){return _0x4881fa===_0x2e6fcf;},'KqtzM':function(_0x2a77b0,_0x26a615,_0x22a444){return _0x2a77b0(_0x26a615,_0x22a444);}};if(!_0x3abf1a||!Array['isArray'](_0x3abf1a)||_0x287949[_0xa0c84d(0x13f)](_0x3abf1a[_0xa0c84d(0x135)],0x0))return{'success':!![],'results':[],'hooksExecuted':0x0};const _0x7134ef=[];for(const _0x2d102e of _0x3abf1a){const _0x1a5440=await _0x287949[_0xa0c84d(0x122)](executeHook,_0x2d102e,_0x4dd4cf);_0x7134ef['push'](_0x1a5440);if(!_0x1a5440[_0xa0c84d(0x139)])return{'success':![],'error':_0x1a5440['message']||_0xa0c84d(0x14c),'results':_0x7134ef,'hooksExecuted':_0x7134ef['length']};}return{'success':!![],'results':_0x7134ef,'hooksExecuted':_0x7134ef['length']};}module['exports']={'resolveTemplateString':resolveTemplateString,'resolveTemplateVariables':resolveTemplateVariables,'resolveUrl':resolveUrl,'buildHookContext':buildHookContext,'executeHook':executeHook,'executeHooks':executeHooks};