@restforgejs/platform 5.0.0 → 5.0.3

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 (175) 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/init.js +4 -104
  5. package/generators/cli/payload/migrate.js +1 -1
  6. package/generators/cli/schema/list.js +82 -18
  7. package/generators/cli/schema/migrate.js +23 -3
  8. package/generators/lib/dbschema-kit/diff-engine.js +715 -715
  9. package/generators/lib/migrate/field-type-resolver.js +9 -3
  10. package/generators/lib/migrate/migrate-runner.js +244 -38
  11. package/generators/lib/migrate/naming.js +9 -0
  12. package/generators/lib/payload/payload-runner.js +20 -0
  13. package/generators/lib/templates/dashboard-catalog.js +1 -1
  14. package/generators/lib/templates/db-connection-env.js +1 -1
  15. package/generators/lib/templates/dbschema-catalog.js +1 -1
  16. package/generators/lib/templates/field-validation-catalog.js +1 -1
  17. package/generators/lib/templates/mysql-template.js +1 -1
  18. package/generators/lib/templates/oracle-template.js +1 -1
  19. package/generators/lib/templates/postgres-template.js +1 -1
  20. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  21. package/generators/lib/templates/sqlite-template.js +1 -1
  22. package/integrity-manifest.json +18 -18
  23. package/package.json +1 -1
  24. package/scripts/verify-integrity.js +1 -1
  25. package/server.js +1 -1
  26. package/src/components/handlers/adjust_handler.js +1 -1
  27. package/src/components/handlers/audit_handler.js +1 -1
  28. package/src/components/handlers/delete_handler.js +1 -1
  29. package/src/components/handlers/export_handler.js +1 -1
  30. package/src/components/handlers/import_handler.js +1 -1
  31. package/src/components/handlers/insert_handler.js +1 -1
  32. package/src/components/handlers/update_handler.js +1 -1
  33. package/src/components/handlers/upload_handler.js +1 -1
  34. package/src/components/handlers/workflow_handler.js +1 -1
  35. package/src/components/integrations/webhook.js +1 -1
  36. package/src/consumers/baseConsumer.js +1 -1
  37. package/src/consumers/declarativeMapper.js +1 -1
  38. package/src/consumers/handlers/apiHandler.js +1 -1
  39. package/src/consumers/handlers/consoleHandler.js +1 -1
  40. package/src/consumers/handlers/databaseHandler.js +1 -1
  41. package/src/consumers/handlers/index.js +1 -1
  42. package/src/consumers/handlers/kafkaHandler.js +1 -1
  43. package/src/consumers/index.js +1 -1
  44. package/src/consumers/messageTransformer.js +1 -1
  45. package/src/consumers/validator.js +1 -1
  46. package/src/core/db/dialect/base-dialect.js +1 -1
  47. package/src/core/db/dialect/index.js +1 -1
  48. package/src/core/db/dialect/mysql-dialect.js +1 -1
  49. package/src/core/db/dialect/oracle-dialect.js +1 -1
  50. package/src/core/db/dialect/postgres-dialect.js +1 -1
  51. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  52. package/src/core/db/flatten-helper.js +1 -1
  53. package/src/core/db/query-builder-error.js +1 -1
  54. package/src/core/db/query-builder.js +1 -1
  55. package/src/core/db/relation-helper.js +1 -1
  56. package/src/core/handlers/delete_handler.js +1 -1
  57. package/src/core/handlers/insert_handler.js +1 -1
  58. package/src/core/handlers/update_handler.js +1 -1
  59. package/src/core/models/base-model.js +1 -1
  60. package/src/core/utils/cache-manager.js +1 -1
  61. package/src/core/utils/component-engine.js +1 -1
  62. package/src/core/utils/context-builder.js +1 -1
  63. package/src/core/utils/datetime-formatter.js +1 -1
  64. package/src/core/utils/datetime-parser.js +1 -1
  65. package/src/core/utils/db.js +1 -1
  66. package/src/core/utils/logger.js +1 -1
  67. package/src/core/utils/payload-loader.js +1 -1
  68. package/src/core/utils/security-checks.js +1 -1
  69. package/src/middleware/body-options.js +1 -1
  70. package/src/middleware/cors.js +1 -1
  71. package/src/middleware/idempotency.js +1 -1
  72. package/src/middleware/rate-limiter.js +1 -1
  73. package/src/middleware/request-logger.js +1 -1
  74. package/src/middleware/security-headers.js +1 -1
  75. package/src/models/base-model-mysql.js +1 -1
  76. package/src/models/base-model-oracle.js +1 -1
  77. package/src/models/base-model-sqlite.js +1 -1
  78. package/src/models/base-model.js +1 -1
  79. package/src/pro/caching/redis-client.js +1 -1
  80. package/src/pro/caching/redis-helper.js +1 -1
  81. package/src/pro/consumers/baseConsumer.js +1 -1
  82. package/src/pro/consumers/declarativeMapper.js +1 -1
  83. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  84. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  85. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  86. package/src/pro/consumers/handlers/index.js +1 -1
  87. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  88. package/src/pro/consumers/index.js +1 -1
  89. package/src/pro/consumers/messageTransformer.js +1 -1
  90. package/src/pro/consumers/validator.js +1 -1
  91. package/src/pro/database/base-model-mysql.js +1 -1
  92. package/src/pro/database/base-model-oracle.js +1 -1
  93. package/src/pro/database/base-model-sqlite.js +1 -1
  94. package/src/pro/database/db-mysql.js +1 -1
  95. package/src/pro/database/db-oracle.js +1 -1
  96. package/src/pro/database/db-sqlite.js +1 -1
  97. package/src/pro/excel/excel-generator.js +1 -1
  98. package/src/pro/excel/excel-parser.js +1 -1
  99. package/src/pro/excel/export-service.js +1 -1
  100. package/src/pro/excel/export_handler.js +1 -1
  101. package/src/pro/excel/import-service.js +1 -1
  102. package/src/pro/excel/import-validator.js +1 -1
  103. package/src/pro/excel/import_handler.js +1 -1
  104. package/src/pro/excel/upsert-builder.js +1 -1
  105. package/src/pro/idgen/idgen-routes.js +1 -1
  106. package/src/pro/integrations/lookup-resolver.js +1 -1
  107. package/src/pro/integrations/upload-handler-v2.js +1 -1
  108. package/src/pro/integrations/upload-handler.js +1 -1
  109. package/src/pro/integrations/webhook.js +1 -1
  110. package/src/pro/locking/lock-routes.js +1 -1
  111. package/src/pro/locking/resource-lock-manager.js +1 -1
  112. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  113. package/src/pro/messaging/kafkaService.js +1 -1
  114. package/src/pro/messaging/messagehubService.js +1 -1
  115. package/src/pro/messaging/rabbitmqService.js +1 -1
  116. package/src/pro/scheduler/job-manager.js +1 -1
  117. package/src/pro/scheduler/job-routes.js +1 -1
  118. package/src/pro/scheduler/job-validator.js +1 -1
  119. package/src/pro/storage/base-storage-provider.js +1 -1
  120. package/src/pro/storage/file-metadata-helper.js +1 -1
  121. package/src/pro/storage/index.js +1 -1
  122. package/src/pro/storage/local-storage-provider.js +1 -1
  123. package/src/pro/storage/s3-storage-provider.js +1 -1
  124. package/src/pro/storage/upload-cleanup-job.js +1 -1
  125. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  126. package/src/pro/storage/upload-pending-tracker.js +1 -1
  127. package/src/pro/websocket/broadcast-helper.js +1 -1
  128. package/src/pro/websocket/index.js +1 -1
  129. package/src/pro/websocket/livesync-server.js +1 -1
  130. package/src/pro/websocket/ws-broadcaster.js +1 -1
  131. package/src/services/export-service.js +1 -1
  132. package/src/services/import-service.js +1 -1
  133. package/src/services/kafkaConsumerService.js +1 -1
  134. package/src/services/kafkaService.js +1 -1
  135. package/src/services/messagehubService.js +1 -1
  136. package/src/services/rabbitmqService.js +1 -1
  137. package/src/utils/cache-invalidation-registry.js +1 -1
  138. package/src/utils/cache-manager.js +1 -1
  139. package/src/utils/component-engine.js +1 -1
  140. package/src/utils/config-extractor.js +1 -1
  141. package/src/utils/consumerLogger.js +1 -1
  142. package/src/utils/context-builder.js +1 -1
  143. package/src/utils/dashboard-helpers.js +1 -1
  144. package/src/utils/dateHelper.js +1 -1
  145. package/src/utils/datetime-formatter.js +1 -1
  146. package/src/utils/datetime-parser.js +1 -1
  147. package/src/utils/db-bootstrap.js +1 -1
  148. package/src/utils/db-mysql.js +1 -1
  149. package/src/utils/db-oracle.js +1 -1
  150. package/src/utils/db-sqlite.js +1 -1
  151. package/src/utils/db.js +1 -1
  152. package/src/utils/demo-generator.js +1 -1
  153. package/src/utils/excel-generator.js +1 -1
  154. package/src/utils/excel-parser.js +1 -1
  155. package/src/utils/file-watcher.js +1 -1
  156. package/src/utils/id-generator.js +1 -1
  157. package/src/utils/idempotency-manager.js +1 -1
  158. package/src/utils/import-validator.js +1 -1
  159. package/src/utils/license-client.js +1 -1
  160. package/src/utils/lock-manager.js +1 -1
  161. package/src/utils/logger.js +1 -1
  162. package/src/utils/lookup-resolver.js +1 -1
  163. package/src/utils/payload-loader.js +1 -1
  164. package/src/utils/processor-response.js +1 -1
  165. package/src/utils/rabbitmq.js +1 -1
  166. package/src/utils/redis-client.js +1 -1
  167. package/src/utils/redis-helper.js +1 -1
  168. package/src/utils/request-scope.js +1 -1
  169. package/src/utils/security-checks.js +1 -1
  170. package/src/utils/service-resolver.js +1 -1
  171. package/src/utils/shutdown-coordinator.js +1 -1
  172. package/src/utils/trusted-keys.js +1 -1
  173. package/src/utils/upload-handler.js +1 -1
  174. package/src/utils/upsert-builder.js +1 -1
  175. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
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
+ 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 +1 @@
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
+ 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 +1 @@
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};
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};