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