@restforgejs/platform 5.0.0 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) 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 +393 -187
  11. package/generators/lib/migrate/naming.js +9 -0
  12. package/generators/lib/templates/dashboard-catalog.js +1 -1
  13. package/generators/lib/templates/db-connection-env.js +1 -1
  14. package/generators/lib/templates/dbschema-catalog.js +1 -1
  15. package/generators/lib/templates/field-validation-catalog.js +1 -1
  16. package/generators/lib/templates/mysql-template.js +1 -1
  17. package/generators/lib/templates/oracle-template.js +1 -1
  18. package/generators/lib/templates/postgres-template.js +1 -1
  19. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  20. package/generators/lib/templates/sqlite-template.js +1 -1
  21. package/integrity-manifest.json +18 -18
  22. package/package.json +1 -1
  23. package/scripts/verify-integrity.js +1 -1
  24. package/server.js +1 -1
  25. package/src/components/handlers/adjust_handler.js +1 -1
  26. package/src/components/handlers/audit_handler.js +1 -1
  27. package/src/components/handlers/delete_handler.js +1 -1
  28. package/src/components/handlers/export_handler.js +1 -1
  29. package/src/components/handlers/import_handler.js +1 -1
  30. package/src/components/handlers/insert_handler.js +1 -1
  31. package/src/components/handlers/update_handler.js +1 -1
  32. package/src/components/handlers/upload_handler.js +1 -1
  33. package/src/components/handlers/workflow_handler.js +1 -1
  34. package/src/components/integrations/webhook.js +1 -1
  35. package/src/consumers/baseConsumer.js +1 -1
  36. package/src/consumers/declarativeMapper.js +1 -1
  37. package/src/consumers/handlers/apiHandler.js +1 -1
  38. package/src/consumers/handlers/consoleHandler.js +1 -1
  39. package/src/consumers/handlers/databaseHandler.js +1 -1
  40. package/src/consumers/handlers/index.js +1 -1
  41. package/src/consumers/handlers/kafkaHandler.js +1 -1
  42. package/src/consumers/index.js +1 -1
  43. package/src/consumers/messageTransformer.js +1 -1
  44. package/src/consumers/validator.js +1 -1
  45. package/src/core/db/dialect/base-dialect.js +1 -1
  46. package/src/core/db/dialect/index.js +1 -1
  47. package/src/core/db/dialect/mysql-dialect.js +1 -1
  48. package/src/core/db/dialect/oracle-dialect.js +1 -1
  49. package/src/core/db/dialect/postgres-dialect.js +1 -1
  50. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  51. package/src/core/db/flatten-helper.js +1 -1
  52. package/src/core/db/query-builder-error.js +1 -1
  53. package/src/core/db/query-builder.js +1 -1
  54. package/src/core/db/relation-helper.js +1 -1
  55. package/src/core/handlers/delete_handler.js +1 -1
  56. package/src/core/handlers/insert_handler.js +1 -1
  57. package/src/core/handlers/update_handler.js +1 -1
  58. package/src/core/models/base-model.js +1 -1
  59. package/src/core/utils/cache-manager.js +1 -1
  60. package/src/core/utils/component-engine.js +1 -1
  61. package/src/core/utils/context-builder.js +1 -1
  62. package/src/core/utils/datetime-formatter.js +1 -1
  63. package/src/core/utils/datetime-parser.js +1 -1
  64. package/src/core/utils/db.js +1 -1
  65. package/src/core/utils/logger.js +1 -1
  66. package/src/core/utils/payload-loader.js +1 -1
  67. package/src/core/utils/security-checks.js +1 -1
  68. package/src/middleware/body-options.js +1 -1
  69. package/src/middleware/cors.js +1 -1
  70. package/src/middleware/idempotency.js +1 -1
  71. package/src/middleware/rate-limiter.js +1 -1
  72. package/src/middleware/request-logger.js +1 -1
  73. package/src/middleware/security-headers.js +1 -1
  74. package/src/models/base-model-mysql.js +1 -1
  75. package/src/models/base-model-oracle.js +1 -1
  76. package/src/models/base-model-sqlite.js +1 -1
  77. package/src/models/base-model.js +1 -1
  78. package/src/pro/caching/redis-client.js +1 -1
  79. package/src/pro/caching/redis-helper.js +1 -1
  80. package/src/pro/consumers/baseConsumer.js +1 -1
  81. package/src/pro/consumers/declarativeMapper.js +1 -1
  82. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  83. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  84. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  85. package/src/pro/consumers/handlers/index.js +1 -1
  86. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  87. package/src/pro/consumers/index.js +1 -1
  88. package/src/pro/consumers/messageTransformer.js +1 -1
  89. package/src/pro/consumers/validator.js +1 -1
  90. package/src/pro/database/base-model-mysql.js +1 -1
  91. package/src/pro/database/base-model-oracle.js +1 -1
  92. package/src/pro/database/base-model-sqlite.js +1 -1
  93. package/src/pro/database/db-mysql.js +1 -1
  94. package/src/pro/database/db-oracle.js +1 -1
  95. package/src/pro/database/db-sqlite.js +1 -1
  96. package/src/pro/excel/excel-generator.js +1 -1
  97. package/src/pro/excel/excel-parser.js +1 -1
  98. package/src/pro/excel/export-service.js +1 -1
  99. package/src/pro/excel/export_handler.js +1 -1
  100. package/src/pro/excel/import-service.js +1 -1
  101. package/src/pro/excel/import-validator.js +1 -1
  102. package/src/pro/excel/import_handler.js +1 -1
  103. package/src/pro/excel/upsert-builder.js +1 -1
  104. package/src/pro/idgen/idgen-routes.js +1 -1
  105. package/src/pro/integrations/lookup-resolver.js +1 -1
  106. package/src/pro/integrations/upload-handler-v2.js +1 -1
  107. package/src/pro/integrations/upload-handler.js +1 -1
  108. package/src/pro/integrations/webhook.js +1 -1
  109. package/src/pro/locking/lock-routes.js +1 -1
  110. package/src/pro/locking/resource-lock-manager.js +1 -1
  111. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  112. package/src/pro/messaging/kafkaService.js +1 -1
  113. package/src/pro/messaging/messagehubService.js +1 -1
  114. package/src/pro/messaging/rabbitmqService.js +1 -1
  115. package/src/pro/scheduler/job-manager.js +1 -1
  116. package/src/pro/scheduler/job-routes.js +1 -1
  117. package/src/pro/scheduler/job-validator.js +1 -1
  118. package/src/pro/storage/base-storage-provider.js +1 -1
  119. package/src/pro/storage/file-metadata-helper.js +1 -1
  120. package/src/pro/storage/index.js +1 -1
  121. package/src/pro/storage/local-storage-provider.js +1 -1
  122. package/src/pro/storage/s3-storage-provider.js +1 -1
  123. package/src/pro/storage/upload-cleanup-job.js +1 -1
  124. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  125. package/src/pro/storage/upload-pending-tracker.js +1 -1
  126. package/src/pro/websocket/broadcast-helper.js +1 -1
  127. package/src/pro/websocket/index.js +1 -1
  128. package/src/pro/websocket/livesync-server.js +1 -1
  129. package/src/pro/websocket/ws-broadcaster.js +1 -1
  130. package/src/services/export-service.js +1 -1
  131. package/src/services/import-service.js +1 -1
  132. package/src/services/kafkaConsumerService.js +1 -1
  133. package/src/services/kafkaService.js +1 -1
  134. package/src/services/messagehubService.js +1 -1
  135. package/src/services/rabbitmqService.js +1 -1
  136. package/src/utils/cache-invalidation-registry.js +1 -1
  137. package/src/utils/cache-manager.js +1 -1
  138. package/src/utils/component-engine.js +1 -1
  139. package/src/utils/config-extractor.js +1 -1
  140. package/src/utils/consumerLogger.js +1 -1
  141. package/src/utils/context-builder.js +1 -1
  142. package/src/utils/dashboard-helpers.js +1 -1
  143. package/src/utils/dateHelper.js +1 -1
  144. package/src/utils/datetime-formatter.js +1 -1
  145. package/src/utils/datetime-parser.js +1 -1
  146. package/src/utils/db-bootstrap.js +1 -1
  147. package/src/utils/db-mysql.js +1 -1
  148. package/src/utils/db-oracle.js +1 -1
  149. package/src/utils/db-sqlite.js +1 -1
  150. package/src/utils/db.js +1 -1
  151. package/src/utils/demo-generator.js +1 -1
  152. package/src/utils/excel-generator.js +1 -1
  153. package/src/utils/excel-parser.js +1 -1
  154. package/src/utils/file-watcher.js +1 -1
  155. package/src/utils/id-generator.js +1 -1
  156. package/src/utils/idempotency-manager.js +1 -1
  157. package/src/utils/import-validator.js +1 -1
  158. package/src/utils/license-client.js +1 -1
  159. package/src/utils/lock-manager.js +1 -1
  160. package/src/utils/logger.js +1 -1
  161. package/src/utils/lookup-resolver.js +1 -1
  162. package/src/utils/payload-loader.js +1 -1
  163. package/src/utils/processor-response.js +1 -1
  164. package/src/utils/rabbitmq.js +1 -1
  165. package/src/utils/redis-client.js +1 -1
  166. package/src/utils/redis-helper.js +1 -1
  167. package/src/utils/request-scope.js +1 -1
  168. package/src/utils/security-checks.js +1 -1
  169. package/src/utils/service-resolver.js +1 -1
  170. package/src/utils/shutdown-coordinator.js +1 -1
  171. package/src/utils/trusted-keys.js +1 -1
  172. package/src/utils/upload-handler.js +1 -1
  173. package/src/utils/upsert-builder.js +1 -1
  174. 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_0x2950be=a0_0x13af;function a0_0x14d1(){const _0xcd2d91=['sxfiEMy','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','CMfUzg9TqNL0zxm','C2LUz2XL','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','mJjszhLozee','Cgf0Aa','BwvZC2fNzq','Dg9mB3DLCKnHC2u','zw52','DxbSB2fKlq','nwfbvLPKsq','CunjrNq','DxbSB2fKrgLY','nJm1ndzqD2PiqMC','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','nZeXmZGWvNvIsuHv','mta4mZG1C3HbrNzg','mJaWnJu5nvvrwwTdua','mty2nde3ogTTq0j1yG','vgXiA3u','zxH0BMfTzq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mtKYANbICgXl','zxjYB3i','ChjVBwLZzxm','AfPjugO','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','nJiWBe5uywni','B2DYsxq','BwTKAxjtEw5J','Aw5MBW','mZqWnwLnsKfOyq','B3jPz2LUywXUyw1L','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','x3vWBg9HzerPCG','mtiYndm5mMrmDMXSEG','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','lNHSC3G','vvbmt0fex0rjuG','Agv4','Dw5SAw5R','Dg9tDhjPBMC','DxbSB2fKx2HHBMrSzxjFAw5PDa','z2v0u3rVCMfNzq','u2nnCLq','DxbSB2fKx2zPBgvFzgvSzxrLza','zxHWB3j0CW'];a0_0x14d1=function(){return _0xcd2d91;};return a0_0x14d1();}(function(_0x21c899,_0x1d0cce){const _0x5402a4=a0_0x13af,_0x14ca82=_0x21c899();while(!![]){try{const _0x443a87=-parseInt(_0x5402a4(0x116))/0x1+-parseInt(_0x5402a4(0x121))/0x2*(-parseInt(_0x5402a4(0x125))/0x3)+-parseInt(_0x5402a4(0x129))/0x4+parseInt(_0x5402a4(0x140))/0x5*(-parseInt(_0x5402a4(0x118))/0x6)+parseInt(_0x5402a4(0x113))/0x7*(parseInt(_0x5402a4(0x11c))/0x8)+parseInt(_0x5402a4(0x117))/0x9+parseInt(_0x5402a4(0x115))/0xa*(parseInt(_0x5402a4(0x13a))/0xb);if(_0x443a87===_0x1d0cce)break;else _0x14ca82['push'](_0x14ca82['shift']());}catch(_0x15c574){_0x14ca82['push'](_0x14ca82['shift']());}}}(a0_0x14d1,0x3b5a3));function a0_0x13af(_0x1f1c65,_0x59d6af){_0x1f1c65=_0x1f1c65-0x111;const _0x14d1a5=a0_0x14d1();let _0x13af7b=_0x14d1a5[_0x1f1c65];if(a0_0x13af['asYoUO']===undefined){var _0x1076fe=function(_0x2da6d0){const _0x471d85='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x38506f='',_0x426907='';for(let _0x37dda2=0x0,_0x310bce,_0x25bbf8,_0x366db7=0x0;_0x25bbf8=_0x2da6d0['charAt'](_0x366db7++);~_0x25bbf8&&(_0x310bce=_0x37dda2%0x4?_0x310bce*0x40+_0x25bbf8:_0x25bbf8,_0x37dda2++%0x4)?_0x38506f+=String['fromCharCode'](0xff&_0x310bce>>(-0x2*_0x37dda2&0x6)):0x0){_0x25bbf8=_0x471d85['indexOf'](_0x25bbf8);}for(let _0x1d5bfc=0x0,_0xa5f0aa=_0x38506f['length'];_0x1d5bfc<_0xa5f0aa;_0x1d5bfc++){_0x426907+='%'+('00'+_0x38506f['charCodeAt'](_0x1d5bfc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x426907);};a0_0x13af['TFmvTQ']=_0x1076fe,a0_0x13af['PKhsad']={},a0_0x13af['asYoUO']=!![];}const _0x2e623a=_0x14d1a5[0x0],_0x5736c2=_0x1f1c65+_0x2e623a,_0x50069f=a0_0x13af['PKhsad'][_0x5736c2];return!_0x50069f?(_0x13af7b=a0_0x13af['TFmvTQ'](_0x13af7b),a0_0x13af['PKhsad'][_0x5736c2]=_0x13af7b):_0x13af7b=_0x50069f,_0x13af7b;}const multer=require('multer'),path=require(a0_0x2950be(0x13b)),crypto=require('crypto'),fs=require('fs')[a0_0x2950be(0x11e)],fsSync=require('fs'),{logger}=require('./logger');class UploadHandler{constructor(){this['_uploadDir']=null,this['maxFileSize']=0xa*0x400*0x400;}get[a0_0x2950be(0x112)](){const _0x5b6c45=a0_0x2950be,_0x98238d={'nxhxS':'default','ScMrT':_0x5b6c45(0x130)};if(!this['_uploadDir']){const _0x61bc96=process[_0x5b6c45(0x13e)][_0x5b6c45(0x11b)]||_0x98238d['nxhxS'];this[_0x5b6c45(0x128)]=process['env'][_0x5b6c45(0x12c)]||path['join'](__dirname,'../../temp/uploads/'+_0x61bc96);try{!fsSync['existsSync'](this[_0x5b6c45(0x128)])&&fsSync['mkdirSync'](this[_0x5b6c45(0x128)],{'recursive':!![]}),logger[_0x5b6c45(0x124)]({'event':_0x98238d[_0x5b6c45(0x132)],'dir':this[_0x5b6c45(0x128)]},'Upload\x20handler\x20initialized');}catch(_0x27445e){logger['error']({'event':_0x5b6c45(0x136),'error':_0x27445e[_0x5b6c45(0x13c)]},'Failed\x20to\x20initialize\x20upload\x20handler');}}return this[_0x5b6c45(0x128)];}[a0_0x2950be(0x131)](){const _0x315a9d={'hZIPj':function(_0x4aad46,_0x44b6c,_0x13fe4e){return _0x4aad46(_0x44b6c,_0x13fe4e);}};return multer['diskStorage']({'destination':(_0x16bd4f,_0x5c41ae,_0x8b4aeb)=>{const _0x5c68bd=a0_0x13af;!fsSync['existsSync'](this[_0x5c68bd(0x112)])&&fsSync[_0x5c68bd(0x123)](this['uploadDir'],{'recursive':!![]}),_0x315a9d[_0x5c68bd(0x11f)](_0x8b4aeb,null,this[_0x5c68bd(0x112)]);},'filename':(_0x3154bf,_0x4b7acc,_0x4faae2)=>{const _0x2b3d5b=a0_0x13af,_0x5345c2=crypto[_0x2b3d5b(0x137)](0x8)[_0x2b3d5b(0x12f)](_0x2b3d5b(0x12d)),_0x573959=Date['now'](),_0x3b7538=path[_0x2b3d5b(0x11a)](_0x4b7acc[_0x2b3d5b(0x126)]);_0x315a9d['hZIPj'](_0x4faae2,null,_0x2b3d5b(0x13f)+_0x573959+'-'+_0x5345c2+_0x3b7538);}});}['getUploadMiddleware'](){const _0x5a5a36=a0_0x2950be,_0xb1ad41={'IqHzf':_0x5a5a36(0x114),'AcxAq':'.xls','qCIFt':function(_0x413d92,_0x61c87f,_0x3474f8){return _0x413d92(_0x61c87f,_0x3474f8);},'QSohn':'file'};return multer({'storage':this['getStorage'](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x2956a3,_0xd7a4a7,_0x36ba10)=>{const _0x34469e=_0x5a5a36,_0x455b18=[_0xb1ad41[_0x34469e(0x135)],_0x34469e(0x120)],_0x56ba48=[_0x34469e(0x12b),_0xb1ad41['AcxAq']],_0x5218bd=path[_0x34469e(0x11a)](_0xd7a4a7[_0x34469e(0x126)])[_0x34469e(0x13d)]();_0x455b18['includes'](_0xd7a4a7['mimetype'])&&_0x56ba48['includes'](_0x5218bd)?_0xb1ad41[_0x34469e(0x111)](_0x36ba10,null,!![]):_0x36ba10(new Error('Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed'));}})[_0x5a5a36(0x138)](_0xb1ad41['QSohn']);}async['deleteFile'](_0x4babb7){const _0x4c230e=a0_0x2950be,_0x14bd57={'ogrIt':_0x4c230e(0x139),'TlHku':_0x4c230e(0x12a),'fAMet':_0x4c230e(0x127)};try{await fs[_0x4c230e(0x12e)](_0x4babb7),logger[_0x4c230e(0x124)]({'event':_0x4c230e(0x133),'filePath':_0x4babb7},_0x14bd57[_0x4c230e(0x122)]);}catch(_0x46a7f9){logger[_0x4c230e(0x11d)]({'event':_0x14bd57[_0x4c230e(0x119)],'filePath':_0x4babb7,'error':_0x46a7f9[_0x4c230e(0x13c)]},_0x14bd57['fAMet']);}}}module[a0_0x2950be(0x134)]=new UploadHandler();
@@ -1 +1 @@
1
- const a0_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_0x23955b=a0_0x3066;(function(_0x476a31,_0x40d0fc){const _0x45210e=a0_0x3066,_0x4a3a2f=_0x476a31();while(!![]){try{const _0x275d04=-parseInt(_0x45210e(0x1db))/0x1+-parseInt(_0x45210e(0x1ea))/0x2+-parseInt(_0x45210e(0x1a8))/0x3*(parseInt(_0x45210e(0x1df))/0x4)+-parseInt(_0x45210e(0x191))/0x5+parseInt(_0x45210e(0x19c))/0x6*(-parseInt(_0x45210e(0x198))/0x7)+-parseInt(_0x45210e(0x192))/0x8+parseInt(_0x45210e(0x197))/0x9;if(_0x275d04===_0x40d0fc)break;else _0x4a3a2f['push'](_0x4a3a2f['shift']());}catch(_0x2e568c){_0x4a3a2f['push'](_0x4a3a2f['shift']());}}}(a0_0x5829,0xda5b7));function a0_0x5829(){const _0xc961a9=['x2j1AwXKqMf0y2HvCgrHDgvqB3n0z3jLCW','cIaGicaGiezst00GkfzbtfvfuWOGicaGicaGia','lcaNwvLzws1nts1ercCP','AfnmswK','x2j1AwXKqMf0y2HvCgrHDgvnExnXBa','cIaGicaGie1fuKDfieLove8G','yMf0y2HFAw5Zzxj0x2j1AwX0','tLvmtdO6qK9ptevbtG','laOGicaGicaGia','lI9SB2DNzxi','id0GvKfmvuvtka','nZyXmtu4vLrps0Tr','D2fYBG','yNvPBgrcyxrJAeLUC2vYDa','ue9tveDsrvnrta','neruu3nIra','id0GDI4','BNvTyMvY','zgvIDwC','cIaGica','zM9YBwf0qM9VBgvHBLzHBhvL','zMLSDgvY','Cg9ZDgDYzxnXBa','tLvmta','v3nAwLi','iezst00Grfvbta','mJqWodq2mhbuEwjVua','kqOGicaGicbwquXvrvmG','x2j1AwXKqMf0y2HjBNnLCNrpCMfJBgu','x2j1AwXKqMf0y2HjBNnLCNrqB3n0z3jLCW','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','mZi2nZm5nvbxu01UrG','mty0ndG5nNLhwuHnqG','u1fmu0vsvKvs','AM9PBG','vKvJELC','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','ndKYoteXmJHgBKPSCxm','nZa5mZG3rKvIBhDg','tLvmtdO6refurq','ieftia','ve9FrefursG','mJrZtKfcq2G','B3jHy2XL','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','Cwnmz3m','BxLZCwW','C3rYAw5N','z2v0rgf0ywjHC2vuExbL','rKneAuu','zw52','ieftierbveuP','yNvPBgrfC2nHCgvgDw5JDgLVBG','q0ftvcG','nda1nZy3nej2shHusG','Cg1KyMG','Dg9mB3DLCKnHC2u','sKrHBuu','cIaGicaGicKGDGOGicaGicbptIaO','kqOGicaGicbxsevsrsa','zK9oAwW','BwfW','cIaGicaGieLou0vsvcbjtLrpia','ksbwquXvrvmGka','t1jbq0Xf','C3fSAxrL','suHMtgO','ieftiejjvcK','yM9VBgvHBG','zgf0zq','u01Asfu','yMf0y2HFDxbKyxrLx2j1AwX0','laOGicaGicaGica','Cfr3z2O','DhLWzq','BgvUz3rO','u1fmsvrf','EhDeyvC','CxzAvuq','ieforca','icaGifnftevdvca','EeDoswW','sKPIAhi','yNvPBgrcyxrJAfvWzgf0zq','CMvWBgfJzq','tvLtuuW','y2H1BMTsB3DZ','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHnEvnrtcbptIbevvbmsunbveuGs0vzkq','ieftihqkicaGicaGu0vuia','cIaGicaGifvqrefursa','zM9YBwf0rgf0zvzHBhvL','Aw5JBhvKzxm','B1niDxu','oJPct09mrufo'];a0_0x5829=function(){return _0xc961a9;};return a0_0x5829();}const {logger}=require(a0_0x23955b(0x1d9)),DB_TYPES={'POSTGRESQL':a0_0x23955b(0x1e6),'MYSQL':a0_0x23955b(0x1a0),'SQLSERVER':'sqlserver','ORACLE':'oracle','SQLITE':a0_0x23955b(0x1b3)};class UpsertBuilder{['getDatabaseType'](){const _0x4152b5=a0_0x23955b,_0x165da2={'xGNIl':'postgresql'},_0x5af549=(process[_0x4152b5(0x1a4)]['DB_TYPE']||_0x165da2[_0x4152b5(0x1c3)])[_0x4152b5(0x1aa)](),_0xbdda38=Object['values'](DB_TYPES);if(!_0xbdda38[_0x4152b5(0x1cd)](_0x5af549))return logger['warn']({'event':'invalid_db_type','provided':_0x5af549,'fallback':_0x165da2['xGNIl']},'Invalid\x20DB_TYPE:\x20'+_0x5af549+'.\x20Falling\x20back\x20to\x20postgresql.'),DB_TYPES[_0x4152b5(0x1de)];return _0x5af549;}[a0_0x23955b(0x1cc)](_0x2cb725,_0x3b4add,_0x29bc45=![]){const _0x2579de=a0_0x23955b,_0x10a8d2={'LkDaC':_0x2579de(0x199),'pmdbh':'NULL'};if(_0x29bc45)switch(_0x3b4add){case DB_TYPES[_0x2579de(0x1de)]:return _0x10a8d2['LkDaC'];case DB_TYPES[_0x2579de(0x1c7)]:return _0x10a8d2[_0x2579de(0x1a9)];case DB_TYPES[_0x2579de(0x1be)]:return _0x10a8d2[_0x2579de(0x1a9)];case DB_TYPES[_0x2579de(0x193)]:return _0x2579de(0x1e7);case DB_TYPES['ORACLE']:return'NULL';default:return _0x10a8d2['LkDaC'];}switch(_0x3b4add){case DB_TYPES[_0x2579de(0x1de)]:return _0x2cb725+'::DATE';case DB_TYPES[_0x2579de(0x1c7)]:return _0x2cb725;case DB_TYPES[_0x2579de(0x1be)]:return _0x2cb725;case DB_TYPES[_0x2579de(0x193)]:return _0x2579de(0x1a7)+_0x2cb725+_0x2579de(0x1a5);case DB_TYPES[_0x2579de(0x1b2)]:return _0x2579de(0x19b)+_0x2cb725+_0x2579de(0x1d2);default:return _0x2cb725+'::DATE';}}[a0_0x23955b(0x1e4)](_0x38ad5f,_0x4b8323,_0x2ea3dc=![]){const _0x18da27=a0_0x23955b;if(_0x2ea3dc)switch(_0x4b8323){case DB_TYPES['POSTGRESQL']:return _0x18da27(0x1d7);default:return _0x18da27(0x1e7);}switch(_0x4b8323){case DB_TYPES['POSTGRESQL']:return _0x38ad5f+_0x18da27(0x1cf);case DB_TYPES['ORACLE']:return _0x38ad5f;case DB_TYPES[_0x18da27(0x1c7)]:return _0x38ad5f;case DB_TYPES['SQLITE']:return _0x38ad5f;case DB_TYPES[_0x18da27(0x193)]:return _0x18da27(0x1a7)+_0x38ad5f+_0x18da27(0x1b5);default:return _0x38ad5f+_0x18da27(0x1cf);}}[a0_0x23955b(0x1a6)](_0x29386e={}){const _0x33b5b3=a0_0x23955b,_0xd342e3={'MXYzZ':function(_0x306872,_0x48a630){return _0x306872===_0x48a630;},'dLUtQ':'date','qvZUD':_0x33b5b3(0x1b6),'Urfdo':_0x33b5b3(0x1e7),'xwDaW':function(_0x391bcc,_0x3df6c9){return _0x391bcc===_0x3df6c9;},'fONil':_0x33b5b3(0x1a1),'hSLIi':function(_0x40ec77,_0x12171c){return _0x40ec77===_0x12171c;}},_0x1ff4d9=this['getDatabaseType']();return(_0x887e40,_0x5f426f)=>{const _0x549053=_0x33b5b3,_0x2037e4=_0x29386e[_0x5f426f];if(_0x887e40===null||_0x887e40===undefined){if(_0x2037e4&&_0xd342e3['MXYzZ'](_0x2037e4['type'],_0xd342e3['dLUtQ']))return this[_0x549053(0x1cc)](null,_0x1ff4d9,!![]);if(_0x2037e4&&_0xd342e3['MXYzZ'](_0x2037e4[_0x549053(0x1bc)],_0xd342e3[_0x549053(0x1c0)]))return this['formatBooleanValue'](null,_0x1ff4d9,!![]);return _0xd342e3['Urfdo'];}if(_0xd342e3[_0x549053(0x1bf)](typeof _0x887e40,_0xd342e3[_0x549053(0x1ae)])){const _0x42cb6d='\x27'+_0x887e40[_0x549053(0x1c6)](/'/g,'\x27\x27')+'\x27';if(_0x2037e4&&_0x2037e4['type']===_0x549053(0x1b7))return this[_0x549053(0x1cc)](_0x42cb6d,_0x1ff4d9,![]);if(_0x2037e4&&_0x2037e4['type']===_0xd342e3['qvZUD'])return this[_0x549053(0x1e4)](_0x42cb6d,_0x1ff4d9,![]);return _0x42cb6d;}if(typeof _0x887e40===_0x549053(0x1e1))return _0x887e40;if(_0xd342e3[_0x549053(0x1d3)](typeof _0x887e40,_0xd342e3['qvZUD']))return _0x887e40;const _0x3dbbfe='\x27'+String(_0x887e40)[_0x549053(0x1c6)](/'/g,'\x27\x27')+'\x27';if(_0x2037e4&&_0x2037e4[_0x549053(0x1bc)]==='date')return this['formatDateValue'](_0x3dbbfe,_0x1ff4d9,![]);return _0x3dbbfe;};}[a0_0x23955b(0x1dd)](_0x2f1d76,_0x41ea30,_0x5a6784,_0x8292b5={}){const _0x45f01f=a0_0x23955b,_0xdc1f15={'ilaSP':function(_0x5db068,_0x5ea74e){return _0x5db068===_0x5ea74e;}},_0x2277ec=this[_0x45f01f(0x1a2)]();if(_0xdc1f15['ilaSP'](_0x2277ec,DB_TYPES[_0x45f01f(0x1b2)]))return this[_0x45f01f(0x1ec)](_0x2f1d76,_0x41ea30,_0x5a6784,_0x8292b5);return this[_0x45f01f(0x1ed)](_0x2f1d76,_0x41ea30,_0x5a6784,_0x8292b5);}['_buildBatchInsertPostgres'](_0x89b605,_0x4fc24f,_0x4e93cc,_0xf956fe={}){const _0x29d9d5=a0_0x23955b,_0x3e8133={'VEczW':',\x0a\x20\x20\x20\x20\x20\x20\x20','JDamE':_0x29d9d5(0x1d6),'oSHuu':_0x29d9d5(0x1e6)};if(_0x89b605['length']===0x0)return{'query':null,'values':[]};const _0x4fd1ca=this[_0x29d9d5(0x1a6)](_0xf956fe),_0x2bf7e2=_0x89b605['map'](_0x4bbbe8=>{const _0xf094e3=_0x29d9d5,_0xc36905=_0x4e93cc[_0xf094e3(0x1af)](_0x24f203=>_0x4fd1ca(_0x4bbbe8[_0x24f203],_0x24f203));return'('+_0xc36905['join'](',\x20')+')';}),_0xa0d228=_0x29d9d5(0x1b0)+_0x4fc24f+'\x20('+_0x4e93cc[_0x29d9d5(0x194)](',\x20')+_0x29d9d5(0x1eb)+_0x2bf7e2['join'](_0x3e8133[_0x29d9d5(0x195)])+'\x0a\x20\x20\x20\x20';return logger[_0x29d9d5(0x1e2)]({'event':_0x3e8133[_0x29d9d5(0x1ab)],'tableName':_0x4fc24f,'rowCount':_0x89b605[_0x29d9d5(0x1bd)],'dbType':_0x3e8133[_0x29d9d5(0x1ce)]},'Batch\x20INSERT\x20query\x20built\x20(PostgreSQL)'),{'query':_0xa0d228,'values':[]};}[a0_0x23955b(0x1ec)](_0x277c85,_0x2200f7,_0x3557e5,_0x525cf0={}){const _0x3550af=a0_0x23955b,_0x59f961={'wzHya':function(_0xebf312,_0x4d0667){return _0xebf312===_0x4d0667;}};if(_0x59f961['wzHya'](_0x277c85['length'],0x0))return{'query':null,'values':[]};const _0x32a5a0=this[_0x3550af(0x1a6)](_0x525cf0),_0x4ef185=_0x277c85['map'](_0xdcaa07=>{const _0x1bb40b=_0x3550af,_0x22c3cf=_0x3557e5[_0x1bb40b(0x1af)](_0x1d68c1=>_0x32a5a0(_0xdcaa07[_0x1d68c1],_0x1d68c1));return'\x20\x20INTO\x20'+_0x2200f7+'\x20('+_0x3557e5[_0x1bb40b(0x194)](',\x20')+_0x1bb40b(0x1b1)+_0x22c3cf['join'](',\x20')+')';}),_0x6c1e61='INSERT\x20ALL\x0a'+_0x4ef185[_0x3550af(0x194)]('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger['debug']({'event':_0x3550af(0x1d6),'tableName':_0x2200f7,'rowCount':_0x277c85[_0x3550af(0x1bd)],'dbType':'oracle'},'Batch\x20INSERT\x20query\x20built\x20(Oracle)'),{'query':_0x6c1e61,'values':[]};}[a0_0x23955b(0x1c5)](_0x507be1,_0x13b638,_0x38d366,_0x2a75ea,_0x5c1d87,_0x10dc39={}){const _0x36b269=a0_0x23955b,_0x3b8c09={'FgbYE':function(_0x211c47,_0x2db616){return _0x211c47===_0x2db616;}},_0x3b40e9=this[_0x36b269(0x1a2)]();if(_0x3b8c09['FgbYE'](_0x3b40e9,DB_TYPES['ORACLE']))return this[_0x36b269(0x19e)](_0x507be1,_0x13b638,_0x38d366,_0x2a75ea,_0x5c1d87,_0x10dc39);if(_0x3b40e9===DB_TYPES[_0x36b269(0x1c7)])return this[_0x36b269(0x1d4)](_0x507be1,_0x13b638,_0x38d366,_0x2a75ea,_0x5c1d87,_0x10dc39);return this['_buildBatchUpdatePostgres'](_0x507be1,_0x13b638,_0x38d366,_0x2a75ea,_0x5c1d87,_0x10dc39);}[a0_0x23955b(0x1d0)](_0xf5e45,_0x35b62c,_0x554300,_0xd1c9ee,_0x1e0dfa,_0x22eeec={}){const _0x4d4539=a0_0x23955b,_0x882d00={'FCDiE':function(_0x21a7ef,_0x4ca135){return _0x21a7ef===_0x4ca135;},'SMZHU':_0x4d4539(0x1c1),'pOjQa':_0x4d4539(0x1d8),'cFnOA':_0x4d4539(0x1b9),'pTwgj':_0x4d4539(0x1e6),'JJbhr':'Batch\x20UPDATE\x20query\x20built\x20(PostgreSQL)'};if(_0x882d00[_0x4d4539(0x1a3)](_0xf5e45['length'],0x0))return{'query':null,'values':[]};const _0x271a67=this[_0x4d4539(0x1a6)](_0x22eeec),_0x52e960=_0x554300[_0x4d4539(0x1e5)](_0x38cfcd=>!_0x1e0dfa['includes'](_0x38cfcd)&&_0x38cfcd!==_0xd1c9ee);if(_0x882d00['FCDiE'](_0x52e960['length'],0x0))return logger['warn']({'event':'batch_update_no_columns','tableName':_0x35b62c},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x41ae41=_0xf5e45[_0x4d4539(0x1af)](_0x41c137=>{const _0x4779b4=_0x4d4539,_0x3eaf5c=[..._0x1e0dfa,..._0x52e960],_0x10a880=_0x3eaf5c[_0x4779b4(0x1af)](_0x260eb8=>_0x271a67(_0x41c137[_0x260eb8],_0x260eb8));return'('+_0x10a880['join'](',\x20')+')';}),_0x401b99=_0x52e960[_0x4d4539(0x1af)](_0x6d55cf=>_0x6d55cf+_0x4d4539(0x1e0)+_0x6d55cf)['join'](_0x4d4539(0x1ba)),_0x43a94e=_0x1e0dfa[_0x4d4539(0x1af)](_0x31f550=>'t.'+_0x31f550+_0x4d4539(0x1e0)+_0x31f550)['join'](_0x882d00[_0x4d4539(0x1b8)]),_0x272f5f=_0x4d4539(0x1cb)+_0x35b62c+_0x4d4539(0x1ca)+_0x401b99+_0x4d4539(0x1d1)+_0x41ae41['join'](_0x882d00['pOjQa'])+'\x0a\x20\x20\x20\x20\x20\x20)\x20AS\x20v('+[..._0x1e0dfa,..._0x52e960]['join'](',\x20')+_0x4d4539(0x1ad)+_0x43a94e+_0x4d4539(0x1e3);return logger['debug']({'event':_0x882d00['cFnOA'],'tableName':_0x35b62c,'rowCount':_0xf5e45['length'],'updateColumns':_0x52e960['length'],'dbType':_0x882d00[_0x4d4539(0x1bb)]},_0x882d00[_0x4d4539(0x1c4)]),{'query':_0x272f5f,'values':[]};}[a0_0x23955b(0x19e)](_0x358b31,_0x1ced3b,_0x171b89,_0x325548,_0x43c1d9,_0x29adc5={}){const _0x7fdbc1=a0_0x23955b,_0x9fa8d8={'IHfLj':function(_0xd96201,_0xf26a7a){return _0xd96201===_0xf26a7a;},'ryCnD':'batch_update_no_columns','CnyRB':_0x7fdbc1(0x196),'JMxQt':_0x7fdbc1(0x1ba),'BQSEY':_0x7fdbc1(0x19d)};if(_0x9fa8d8[_0x7fdbc1(0x1b4)](_0x358b31[_0x7fdbc1(0x1bd)],0x0))return{'query':null,'values':[]};const _0x529bf3=this['buildEscapeFunction'](_0x29adc5),_0xf38033=_0x171b89[_0x7fdbc1(0x1e5)](_0x2d76a3=>!_0x43c1d9['includes'](_0x2d76a3)&&_0x2d76a3!==_0x325548);if(_0xf38033[_0x7fdbc1(0x1bd)]===0x0)return logger[_0x7fdbc1(0x1dc)]({'event':_0x9fa8d8['ryCnD'],'tableName':_0x1ced3b},_0x9fa8d8['CnyRB']),{'query':null,'values':[]};const _0x58d0e7=[..._0x43c1d9,..._0xf38033],_0x4b0901=_0x358b31['map']((_0x2b6610,_0x446ed6)=>{const _0x53f913=_0x7fdbc1,_0x2087db={'Chtmw':function(_0x23034f,_0x3a068a){return _0x23034f===_0x3a068a;}},_0x5f4bc4=_0x58d0e7[_0x53f913(0x1af)](_0x4598c8=>{const _0x1393c3=_0x53f913,_0x3afda1=_0x529bf3(_0x2b6610[_0x4598c8],_0x4598c8);return _0x2087db['Chtmw'](_0x446ed6,0x0)?_0x3afda1+_0x1393c3(0x19a)+_0x4598c8:_0x3afda1;});return _0x53f913(0x1c2)+_0x5f4bc4['join'](',\x20')+_0x53f913(0x1e9);}),_0x13784b=_0xf38033['map'](_0x2b80da=>'t.'+_0x2b80da+_0x7fdbc1(0x1e0)+_0x2b80da)[_0x7fdbc1(0x194)](_0x9fa8d8['JMxQt']),_0x28a8f6=_0x43c1d9['map'](_0x313cf2=>'t.'+_0x313cf2+'\x20=\x20v.'+_0x313cf2)['join']('\x20AND\x20'),_0x149f35=_0x7fdbc1(0x1d5)+_0x1ced3b+'\x20t\x0a\x20\x20\x20\x20\x20\x20USING\x20(\x0a'+_0x4b0901[_0x7fdbc1(0x194)]('\x0a\x20\x20\x20\x20UNION\x20ALL\x0a')+_0x7fdbc1(0x1ac)+_0x28a8f6+')\x0a\x20\x20\x20\x20\x20\x20WHEN\x20MATCHED\x20THEN\x20UPDATE\x20SET\x20'+_0x13784b+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x7fdbc1(0x1b9),'tableName':_0x1ced3b,'rowCount':_0x358b31['length'],'updateColumns':_0xf38033['length'],'dbType':_0x9fa8d8['BQSEY']},'Batch\x20UPDATE\x20query\x20built\x20(Oracle\x20MERGE)'),{'query':_0x149f35,'values':[]};}['_buildBatchUpdateMysql'](_0x5b7418,_0x5f83da,_0x1944b7,_0x1d959e,_0x1a07ae,_0x172c5b={}){const _0x49d850=a0_0x23955b,_0x1c43c7={'qIaaS':_0x49d850(0x1ee),'qcLgs':_0x49d850(0x1c9)};if(_0x5b7418['length']===0x0)return{'query':null,'values':[]};const _0x4e2f76=this['buildEscapeFunction'](_0x172c5b),_0x367b1c=_0x1944b7[_0x49d850(0x1e5)](_0x40e389=>!_0x1a07ae[_0x49d850(0x1cd)](_0x40e389)&&_0x40e389!==_0x1d959e);if(_0x367b1c['length']===0x0)return logger['warn']({'event':_0x1c43c7['qIaaS'],'tableName':_0x5f83da},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x274006=[...new Set([..._0x1a07ae,..._0x367b1c])],_0x5ef659=_0x5b7418[_0x49d850(0x1af)](_0x25cc1a=>{const _0x526c98=_0x49d850,_0x4155ed=_0x274006[_0x526c98(0x1af)](_0xbe0cde=>_0x4e2f76(_0x25cc1a[_0xbe0cde],_0xbe0cde));return'('+_0x4155ed['join'](',\x20')+')';}),_0x373ef3=_0x367b1c['map'](_0x596ca1=>_0x596ca1+_0x49d850(0x1da)+_0x596ca1+')')[_0x49d850(0x194)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0xda9946='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x5f83da+'\x20('+_0x274006[_0x49d850(0x194)](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x5ef659[_0x49d850(0x194)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20')+'\x0a\x20\x20\x20\x20\x20\x20ON\x20DUPLICATE\x20KEY\x20UPDATE\x20'+_0x373ef3+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':'batch_update_built','tableName':_0x5f83da,'rowCount':_0x5b7418['length'],'updateColumns':_0x367b1c[_0x49d850(0x1bd)],'dbType':'mysql'},_0x1c43c7[_0x49d850(0x19f)]),{'query':_0xda9946,'values':[]};}[a0_0x23955b(0x1c8)](_0x1693c8,_0x29781d=0x64){const _0x2c2b40=a0_0x23955b,_0x189043={'WsZZR':function(_0xd11785,_0x4d34e4){return _0xd11785<_0x4d34e4;},'kRVTt':function(_0x8c7fd3,_0x34c868){return _0x8c7fd3+_0x34c868;}},_0x457cac=[];for(let _0x40bf99=0x0;_0x189043[_0x2c2b40(0x1e8)](_0x40bf99,_0x1693c8['length']);_0x40bf99+=_0x29781d){_0x457cac['push'](_0x1693c8['slice'](_0x40bf99,_0x189043['kRVTt'](_0x40bf99,_0x29781d)));}return _0x457cac;}}function a0_0x3066(_0x11120c,_0x7f781e){_0x11120c=_0x11120c-0x191;const _0x5829f0=a0_0x5829();let _0x30660a=_0x5829f0[_0x11120c];if(a0_0x3066['ViufKg']===undefined){var _0x4cfd6f=function(_0xcca9e6){const _0x1e7db8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xdadb3d='',_0x12eaf9='';for(let _0x2ff9c7=0x0,_0xd79ad1,_0x2527dd,_0x4a7d88=0x0;_0x2527dd=_0xcca9e6['charAt'](_0x4a7d88++);~_0x2527dd&&(_0xd79ad1=_0x2ff9c7%0x4?_0xd79ad1*0x40+_0x2527dd:_0x2527dd,_0x2ff9c7++%0x4)?_0xdadb3d+=String['fromCharCode'](0xff&_0xd79ad1>>(-0x2*_0x2ff9c7&0x6)):0x0){_0x2527dd=_0x1e7db8['indexOf'](_0x2527dd);}for(let _0x533306=0x0,_0x50ed96=_0xdadb3d['length'];_0x533306<_0x50ed96;_0x533306++){_0x12eaf9+='%'+('00'+_0xdadb3d['charCodeAt'](_0x533306)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x12eaf9);};a0_0x3066['gGmldP']=_0x4cfd6f,a0_0x3066['gnsPzl']={},a0_0x3066['ViufKg']=!![];}const _0x57b423=_0x5829f0[0x0],_0x4a69d2=_0x11120c+_0x57b423,_0x2711f7=a0_0x3066['gnsPzl'][_0x4a69d2];return!_0x2711f7?(_0x30660a=a0_0x3066['gGmldP'](_0x30660a),a0_0x3066['gnsPzl'][_0x4a69d2]=_0x30660a):_0x30660a=_0x2711f7,_0x30660a;}module['exports']=new UpsertBuilder();
@@ -1 +1 @@
1
- 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_0xe81d03=a0_0xbf17;(function(_0x14cd4,_0x4ccc1c){const _0x56a641=a0_0xbf17,_0x3d2abd=_0x14cd4();while(!![]){try{const _0x3b55de=parseInt(_0x56a641(0x1ca))/0x1+parseInt(_0x56a641(0x1cc))/0x2+-parseInt(_0x56a641(0x1ec))/0x3+parseInt(_0x56a641(0x1d3))/0x4*(-parseInt(_0x56a641(0x1c3))/0x5)+-parseInt(_0x56a641(0x1d0))/0x6*(parseInt(_0x56a641(0x1f1))/0x7)+parseInt(_0x56a641(0x1dc))/0x8+parseInt(_0x56a641(0x1ce))/0x9;if(_0x3b55de===_0x4ccc1c)break;else _0x3d2abd['push'](_0x3d2abd['shift']());}catch(_0x2e2926){_0x3d2abd['push'](_0x3d2abd['shift']());}}}(a0_0x1ed0,0xbb029));function a0_0x1ed0(){const _0x332920=['sg9VAYbZA2LWCgvKoIb1BNn1ChbVCNrLzcb0ExbL','C3LZDgvT','Bwv0Ag9K','C3rYAw5N','C3rHDhvZ','tM9UlwjSB2nRAw5NigHVB2SGzMfPBgvKicHPz25VCMvKktOG','Bg9JywXOB3n0','EwryzeW','DxnLCKLK','u0vsvKvsx0ferfjfu1m','Bg9N','zw52','AgvHzgvYCW','y3jIv0G','ode4nty1rgn4vMHo','ue9sva','CMvZCg9UC2u','iokgKIa','D2fYBG','mteYndK3DMXIvxLr','rfnsuuu','B2jQzwn0','B2XKu3rHDhvZ','zw50CMLLCW','yxv0AeHLywrLCG','yxv0Ag9YAxPHDgLVBG','qxv0Ag9YAxPHDgLVBG','otm2nwPcu3rhEG','Eg1PB0u','ChjVAMvJDa','CMvWBgfJzq','zxjYB3i','uMvZDezVCMDLlvDVCMTMBg93lZeUma','se9tva','oti1mJG3t2rqB1fQ','z3PstLi','mJm3mtK2AwHID1zs','C2fVtvm','otyYodq5n3rrD0LWtW','Egz6DKe','mJu4t3HUrvnZ','BwvZC2fNzq','CMvKDwnL','mtiYohLLyKTdvq','BgvUz3rO','ue9tva','DhjPBq','yM9KEq','C3rHCNrZv2L0Aa','sg9VAYbLEgvJDxrLzcbZDwnJzxnZzNvSBhK','yxbP','AxnbCNjHEq','mtuYotu1mKHkC0zUsW','DgLTzw91Da'];a0_0x1ed0=function(){return _0x332920;};return a0_0x1ed0();}function a0_0xbf17(_0x2eaf57,_0x2c913e){_0x2eaf57=_0x2eaf57-0x1c2;const _0x1ed0e9=a0_0x1ed0();let _0xbf1772=_0x1ed0e9[_0x2eaf57];if(a0_0xbf17['oiUwaj']===undefined){var _0x33b647=function(_0x4bd685){const _0x25a553='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5cb07e='',_0x5c0408='';for(let _0x4e7520=0x0,_0x358919,_0x2a15ec,_0x144610=0x0;_0x2a15ec=_0x4bd685['charAt'](_0x144610++);~_0x2a15ec&&(_0x358919=_0x4e7520%0x4?_0x358919*0x40+_0x2a15ec:_0x2a15ec,_0x4e7520++%0x4)?_0x5cb07e+=String['fromCharCode'](0xff&_0x358919>>(-0x2*_0x4e7520&0x6)):0x0){_0x2a15ec=_0x25a553['indexOf'](_0x2a15ec);}for(let _0x6e24ee=0x0,_0x2e6cf6=_0x5cb07e['length'];_0x6e24ee<_0x2e6cf6;_0x6e24ee++){_0x5c0408+='%'+('00'+_0x5cb07e['charCodeAt'](_0x6e24ee)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c0408);};a0_0xbf17['MCfgzz']=_0x33b647,a0_0xbf17['Azxaoz']={},a0_0xbf17['oiUwaj']=!![];}const _0x500710=_0x1ed0e9[0x0],_0x4a01a3=_0x2eaf57+_0x500710,_0x32bb0e=a0_0xbf17['Azxaoz'][_0x4a01a3];return!_0x32bb0e?(_0xbf1772=a0_0xbf17['MCfgzz'](_0xbf1772),a0_0xbf17['Azxaoz'][_0x4a01a3]=_0xbf1772):_0xbf1772=_0x32bb0e,_0xbf1772;}const axios=require('axios'),DEFAULT_TIMEOUT=0x2710,DEFAULT_METHOD=a0_0xe81d03(0x1d5),DEFAULT_HOST=a0_0xe81d03(0x1e4),DEFAULT_PORT=0xbb8;function resolveTemplateString(_0x4d2247,_0x278732){const _0x4ef9c0=a0_0xe81d03,_0x2325c0={'gzRNR':function(_0x2abd1c,_0x6505c0){return _0x2abd1c===_0x6505c0;},'wgnjz':function(_0x48df48,_0x3122f1){return _0x48df48!==_0x3122f1;}};if(_0x2325c0['wgnjz'](typeof _0x4d2247,'string'))return _0x4d2247;return _0x4d2247[_0x4ef9c0(0x1c6)](/\{\{([^}]+)\}\}/g,(_0x247035,_0x144d22)=>{const _0x5bf78e=_0x4ef9c0,_0x4bb0d4=_0x144d22[_0x5bf78e(0x1d6)](),_0x391b2e=getNestedValue(_0x278732,_0x4bb0d4);if(_0x391b2e!==undefined&&_0x391b2e!==null)return _0x2325c0[_0x5bf78e(0x1cb)](typeof _0x391b2e,_0x5bf78e(0x1f3))?JSON['stringify'](_0x391b2e):String(_0x391b2e);return _0x247035;});}function resolveTemplateVariables(_0x20754e,_0x126e0d){const _0xfb7381=a0_0xe81d03,_0x2d7a4d={'TjjQl':function(_0x196283,_0x37cccb){return _0x196283===_0x37cccb;},'crbWH':'object','UiKjz':function(_0x43b96c,_0x3ad8c8,_0x6e2aa4){return _0x43b96c(_0x3ad8c8,_0x6e2aa4);}};if(typeof _0x20754e===_0xfb7381(0x1e1))return resolveTemplateString(_0x20754e,_0x126e0d);if(Array['isArray'](_0x20754e))return _0x20754e['map'](_0x4d384c=>resolveTemplateVariables(_0x4d384c,_0x126e0d));if(_0x20754e!==null&&_0x2d7a4d['TjjQl'](typeof _0x20754e,_0x2d7a4d[_0xfb7381(0x1eb)])){const _0x2de39f={};for(const [_0x5ee753,_0x288c94]of Object[_0xfb7381(0x1f5)](_0x20754e)){_0x2de39f[_0x5ee753]=_0x2d7a4d['UiKjz'](resolveTemplateVariables,_0x288c94,_0x126e0d);}return _0x2de39f;}return _0x20754e;}function getNestedValue(_0x51aa42,_0x214ff1){const _0x1f818c=a0_0xe81d03;return _0x214ff1['split']('.')[_0x1f818c(0x1d2)]((_0x23055c,_0x4f565e)=>{return _0x23055c&&_0x23055c[_0x4f565e]!==undefined?_0x23055c[_0x4f565e]:undefined;},_0x51aa42);}function resolveUrl(_0x35dafe,_0x18af35){const _0x2a8b07=a0_0xe81d03,_0x24a643={'saoMS':'http://','xfzvA':'https://','IYuCG':'/api/'};if(!_0x35dafe||typeof _0x35dafe!=='string')return _0x35dafe;if(_0x35dafe['startsWith'](_0x24a643[_0x2a8b07(0x1cd)])||_0x35dafe[_0x2a8b07(0x1d8)](_0x24a643[_0x2a8b07(0x1cf)]))return _0x35dafe;const _0x16fd67=process[_0x2a8b07(0x1e9)][_0x2a8b07(0x1e7)]||process[_0x2a8b07(0x1e9)][_0x2a8b07(0x1c9)]||DEFAULT_HOST,_0x2b63ab=process[_0x2a8b07(0x1e9)][_0x2a8b07(0x1ed)]||DEFAULT_PORT,_0x534c65='http://'+_0x16fd67+':'+_0x2b63ab;if(_0x35dafe['startsWith'](_0x24a643['IYuCG']))return''+_0x534c65+_0x35dafe;if(_0x35dafe['startsWith']('/')){const _0x573680=_0x18af35&&_0x18af35['project']||'';if(_0x573680)return _0x534c65+'/api/'+_0x573680+_0x35dafe;return''+_0x534c65+_0x35dafe;}return _0x35dafe;}function buildHookContext(_0x2f09e2){const _0x114e6d=a0_0xe81d03;return{'id':_0x2f09e2['id']||'','newStatus':_0x2f09e2['newStatus']||'','oldStatus':_0x2f09e2[_0x114e6d(0x1f4)]||'','remarks':_0x2f09e2['remarks']||'','tableName':_0x2f09e2['tableName']||'','user_id':_0x2f09e2[_0x114e6d(0x1e6)]||_0x114e6d(0x1df),'timestamp':new Date()['toISOString'](),'record':_0x2f09e2['record']||{},'requestData':_0x2f09e2['requestData']||{},'project':_0x2f09e2[_0x114e6d(0x1c5)]||'','authHeader':_0x2f09e2['authHeader']||null};}async function executeHook(_0x4902f3,_0x38bbe6){const _0x13f6fb=a0_0xe81d03,_0xbb42c2={'cAYZx':_0x13f6fb(0x1da),'ydXdL':function(_0x17817a,_0x254972){return _0x17817a===_0x254972;},'CEuzI':function(_0x72ccc0,_0x5754f6,_0x325220){return _0x72ccc0(_0x5754f6,_0x325220);},'xmioE':function(_0x2dd132,_0x162445,_0x288686){return _0x2dd132(_0x162445,_0x288686);},'PQJdz':function(_0x246e52,_0x4ce35a,_0x312049){return _0x246e52(_0x4ce35a,_0x312049);},'DSRQE':function(_0x273b9c,_0x593b9d){return _0x273b9c!==_0x593b9d;}};if(!_0x4902f3||_0x4902f3['type']!==_0xbb42c2['cAYZx'])return{'success':!![],'message':_0x13f6fb(0x1de)};const _0x11f7b8=_0xbb42c2[_0x13f6fb(0x1e5)](_0x4902f3['blocking'],!![]),_0x3b1cfc=(_0x4902f3[_0x13f6fb(0x1e0)]||DEFAULT_METHOD)['toUpperCase'](),_0x1308ef=_0x4902f3[_0x13f6fb(0x1dd)]||DEFAULT_TIMEOUT,_0x580c66=_0xbb42c2['CEuzI'](resolveTemplateString,_0x4902f3['url'],_0x38bbe6),_0x2b9b91=resolveUrl(_0x580c66,_0x38bbe6),_0x38150b=_0x4902f3['body']?_0xbb42c2[_0x13f6fb(0x1c4)](resolveTemplateVariables,_0x4902f3[_0x13f6fb(0x1d7)],_0x38bbe6):{},_0x3423f5=_0x4902f3[_0x13f6fb(0x1ea)]?_0xbb42c2['PQJdz'](resolveTemplateVariables,_0x4902f3[_0x13f6fb(0x1ea)],_0x38bbe6):{},_0x145f47=_0x3423f5&&(_0xbb42c2[_0x13f6fb(0x1f2)](_0x3423f5[_0x13f6fb(0x1c2)],undefined)||_0xbb42c2['DSRQE'](_0x3423f5[_0x13f6fb(0x1f7)],undefined)),_0x93ca32=!_0x145f47&&_0x38bbe6&&_0x38bbe6[_0x13f6fb(0x1f6)]?{'Authorization':_0x38bbe6['authHeader']}:{};try{const _0x4bca39=await axios({'method':_0x3b1cfc['toLowerCase'](),'url':_0x2b9b91,'data':_0x38150b,'headers':{'Content-Type':'application/json','User-Agent':_0x13f6fb(0x1c8),..._0x93ca32,..._0x3423f5},'timeout':_0x1308ef});return console[_0x13f6fb(0x1e8)]('Workflow\x20hook\x20executed:\x20'+_0x3b1cfc+'\x20'+_0x2b9b91+'\x20→\x20'+_0x4bca39['status']),{'success':!![],'message':_0x13f6fb(0x1d9),'status':_0x4bca39['status'],'url':_0x2b9b91};}catch(_0x54bc4a){const _0x35048e=_0x54bc4a['response']?'HTTP\x20'+_0x54bc4a['response'][_0x13f6fb(0x1e2)]+':\x20'+_0x54bc4a[_0x13f6fb(0x1ee)]['statusText']:_0x54bc4a['message'];console[_0x13f6fb(0x1c7)]('Workflow\x20hook\x20failed:\x20'+_0x3b1cfc+'\x20'+_0x2b9b91+_0x13f6fb(0x1ef)+_0x35048e);if(_0x11f7b8)return{'success':![],'message':'Blocking\x20hook\x20failed:\x20'+_0x35048e,'error':_0x35048e,'url':_0x2b9b91};return console[_0x13f6fb(0x1f0)](_0x13f6fb(0x1e3)+_0x35048e),{'success':!![],'message':_0x13f6fb(0x1e3)+_0x35048e,'warning':_0x35048e,'url':_0x2b9b91};}}async function executeHooks(_0x2f033f,_0xcab334){const _0x167878=a0_0xe81d03;if(!_0x2f033f||!Array[_0x167878(0x1db)](_0x2f033f)||_0x2f033f['length']===0x0)return{'success':!![],'results':[],'hooksExecuted':0x0};const _0x1db17b=[];for(const _0x5c2892 of _0x2f033f){const _0x1c7ba9=await executeHook(_0x5c2892,_0xcab334);_0x1db17b['push'](_0x1c7ba9);if(!_0x1c7ba9['success'])return{'success':![],'error':_0x1c7ba9[_0x167878(0x1d1)]||'Hook\x20execution\x20failed','results':_0x1db17b,'hooksExecuted':_0x1db17b[_0x167878(0x1d4)]};}return{'success':!![],'results':_0x1db17b,'hooksExecuted':_0x1db17b[_0x167878(0x1d4)]};}module['exports']={'resolveTemplateString':resolveTemplateString,'resolveTemplateVariables':resolveTemplateVariables,'resolveUrl':resolveUrl,'buildHookContext':buildHookContext,'executeHook':executeHook,'executeHooks':executeHooks};