@restforgejs/platform 5.0.1 → 5.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/dashboard/create.js +1 -1
  5. package/generators/cli/endpoint/create.js +1 -1
  6. package/generators/cli/processor/create.js +1 -1
  7. package/generators/lib/dbschema-kit/apply-executor.js +15 -1
  8. package/generators/lib/dbschema-kit/dialect/mysql.js +2 -0
  9. package/generators/lib/dbschema-kit/dialect/oracle.js +2 -0
  10. package/generators/lib/dbschema-kit/dialect/postgres.js +3 -0
  11. package/generators/lib/dbschema-kit/dialect/sqlite.js +2 -0
  12. package/generators/lib/dbschema-kit/emitters/alter-table.js +7 -0
  13. package/generators/lib/dbschema-kit/emitters/create-table.js +31 -3
  14. package/generators/lib/dbschema-kit/statement-modifier.js +12 -2
  15. package/generators/lib/migrate/migrate-runner.js +393 -393
  16. package/generators/lib/payload/payload-runner.js +64 -2
  17. package/generators/lib/payload/schema-diff.js +31 -1
  18. package/generators/lib/templates/dashboard-catalog.js +1 -1
  19. package/generators/lib/templates/db-connection-env.js +1 -1
  20. package/generators/lib/templates/dbschema-catalog.js +1 -1
  21. package/generators/lib/templates/field-validation-catalog.js +1 -1
  22. package/generators/lib/templates/mysql-template.js +1 -1
  23. package/generators/lib/templates/oracle-template.js +1 -1
  24. package/generators/lib/templates/postgres-template.js +1 -1
  25. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  26. package/generators/lib/templates/sqlite-template.js +1 -1
  27. package/generators/lib/utils/database-introspector.js +417 -6
  28. package/generators/lib/validators/argument-validator.js +2 -2
  29. package/integrity-manifest.json +18 -18
  30. package/package.json +4 -2
  31. package/scripts/verify-integrity.js +1 -1
  32. package/server.js +1 -1
  33. package/src/components/handlers/adjust_handler.js +1 -1
  34. package/src/components/handlers/audit_handler.js +1 -1
  35. package/src/components/handlers/delete_handler.js +1 -1
  36. package/src/components/handlers/export_handler.js +1 -1
  37. package/src/components/handlers/import_handler.js +1 -1
  38. package/src/components/handlers/insert_handler.js +1 -1
  39. package/src/components/handlers/update_handler.js +1 -1
  40. package/src/components/handlers/upload_handler.js +1 -1
  41. package/src/components/handlers/workflow_handler.js +1 -1
  42. package/src/components/integrations/webhook.js +1 -1
  43. package/src/consumers/baseConsumer.js +1 -1
  44. package/src/consumers/declarativeMapper.js +1 -1
  45. package/src/consumers/handlers/apiHandler.js +1 -1
  46. package/src/consumers/handlers/consoleHandler.js +1 -1
  47. package/src/consumers/handlers/databaseHandler.js +1 -1
  48. package/src/consumers/handlers/index.js +1 -1
  49. package/src/consumers/handlers/kafkaHandler.js +1 -1
  50. package/src/consumers/index.js +1 -1
  51. package/src/consumers/messageTransformer.js +1 -1
  52. package/src/consumers/validator.js +1 -1
  53. package/src/core/db/dialect/base-dialect.js +1 -1
  54. package/src/core/db/dialect/index.js +1 -1
  55. package/src/core/db/dialect/mysql-dialect.js +1 -1
  56. package/src/core/db/dialect/oracle-dialect.js +1 -1
  57. package/src/core/db/dialect/postgres-dialect.js +1 -1
  58. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  59. package/src/core/db/flatten-helper.js +1 -1
  60. package/src/core/db/query-builder-error.js +1 -1
  61. package/src/core/db/query-builder.js +1 -1
  62. package/src/core/db/relation-helper.js +1 -1
  63. package/src/core/handlers/delete_handler.js +1 -1
  64. package/src/core/handlers/insert_handler.js +1 -1
  65. package/src/core/handlers/update_handler.js +1 -1
  66. package/src/core/models/base-model.js +1 -1
  67. package/src/core/utils/cache-manager.js +1 -1
  68. package/src/core/utils/component-engine.js +1 -1
  69. package/src/core/utils/context-builder.js +1 -1
  70. package/src/core/utils/datetime-formatter.js +1 -1
  71. package/src/core/utils/datetime-parser.js +1 -1
  72. package/src/core/utils/db.js +1 -1
  73. package/src/core/utils/logger.js +1 -1
  74. package/src/core/utils/payload-loader.js +1 -1
  75. package/src/core/utils/security-checks.js +1 -1
  76. package/src/middleware/body-options.js +1 -1
  77. package/src/middleware/cors.js +1 -1
  78. package/src/middleware/idempotency.js +1 -1
  79. package/src/middleware/rate-limiter.js +1 -1
  80. package/src/middleware/request-logger.js +1 -1
  81. package/src/middleware/security-headers.js +1 -1
  82. package/src/models/base-model-mysql.js +1 -1
  83. package/src/models/base-model-oracle.js +1 -1
  84. package/src/models/base-model-sqlite.js +1 -1
  85. package/src/models/base-model.js +1 -1
  86. package/src/pro/caching/redis-client.js +1 -1
  87. package/src/pro/caching/redis-helper.js +1 -1
  88. package/src/pro/consumers/baseConsumer.js +1 -1
  89. package/src/pro/consumers/declarativeMapper.js +1 -1
  90. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  91. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  92. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  93. package/src/pro/consumers/handlers/index.js +1 -1
  94. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  95. package/src/pro/consumers/index.js +1 -1
  96. package/src/pro/consumers/messageTransformer.js +1 -1
  97. package/src/pro/consumers/validator.js +1 -1
  98. package/src/pro/database/base-model-mysql.js +1 -1
  99. package/src/pro/database/base-model-oracle.js +1 -1
  100. package/src/pro/database/base-model-sqlite.js +1 -1
  101. package/src/pro/database/db-mysql.js +1 -1
  102. package/src/pro/database/db-oracle.js +1 -1
  103. package/src/pro/database/db-sqlite.js +1 -1
  104. package/src/pro/excel/excel-generator.js +1 -1
  105. package/src/pro/excel/excel-parser.js +1 -1
  106. package/src/pro/excel/export-service.js +1 -1
  107. package/src/pro/excel/export_handler.js +1 -1
  108. package/src/pro/excel/import-service.js +1 -1
  109. package/src/pro/excel/import-validator.js +1 -1
  110. package/src/pro/excel/import_handler.js +1 -1
  111. package/src/pro/excel/upsert-builder.js +1 -1
  112. package/src/pro/idgen/idgen-routes.js +1 -1
  113. package/src/pro/integrations/lookup-resolver.js +1 -1
  114. package/src/pro/integrations/upload-handler-v2.js +1 -1
  115. package/src/pro/integrations/upload-handler.js +1 -1
  116. package/src/pro/integrations/webhook.js +1 -1
  117. package/src/pro/locking/lock-routes.js +1 -1
  118. package/src/pro/locking/resource-lock-manager.js +1 -1
  119. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  120. package/src/pro/messaging/kafkaService.js +1 -1
  121. package/src/pro/messaging/messagehubService.js +1 -1
  122. package/src/pro/messaging/rabbitmqService.js +1 -1
  123. package/src/pro/scheduler/job-manager.js +1 -1
  124. package/src/pro/scheduler/job-routes.js +1 -1
  125. package/src/pro/scheduler/job-validator.js +1 -1
  126. package/src/pro/storage/base-storage-provider.js +1 -1
  127. package/src/pro/storage/file-metadata-helper.js +1 -1
  128. package/src/pro/storage/index.js +1 -1
  129. package/src/pro/storage/local-storage-provider.js +1 -1
  130. package/src/pro/storage/s3-storage-provider.js +1 -1
  131. package/src/pro/storage/upload-cleanup-job.js +1 -1
  132. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  133. package/src/pro/storage/upload-pending-tracker.js +1 -1
  134. package/src/pro/websocket/broadcast-helper.js +1 -1
  135. package/src/pro/websocket/index.js +1 -1
  136. package/src/pro/websocket/livesync-server.js +1 -1
  137. package/src/pro/websocket/ws-broadcaster.js +1 -1
  138. package/src/services/export-service.js +1 -1
  139. package/src/services/import-service.js +1 -1
  140. package/src/services/kafkaConsumerService.js +1 -1
  141. package/src/services/kafkaService.js +1 -1
  142. package/src/services/messagehubService.js +1 -1
  143. package/src/services/rabbitmqService.js +1 -1
  144. package/src/utils/cache-invalidation-registry.js +1 -1
  145. package/src/utils/cache-manager.js +1 -1
  146. package/src/utils/component-engine.js +1 -1
  147. package/src/utils/config-extractor.js +1 -1
  148. package/src/utils/consumerLogger.js +1 -1
  149. package/src/utils/context-builder.js +1 -1
  150. package/src/utils/dashboard-helpers.js +1 -1
  151. package/src/utils/dateHelper.js +1 -1
  152. package/src/utils/datetime-formatter.js +1 -1
  153. package/src/utils/datetime-parser.js +1 -1
  154. package/src/utils/db-bootstrap.js +1 -1
  155. package/src/utils/db-mysql.js +1 -1
  156. package/src/utils/db-oracle.js +1 -1
  157. package/src/utils/db-sqlite.js +1 -1
  158. package/src/utils/db.js +1 -1
  159. package/src/utils/demo-generator.js +1 -1
  160. package/src/utils/excel-generator.js +1 -1
  161. package/src/utils/excel-parser.js +1 -1
  162. package/src/utils/file-watcher.js +1 -1
  163. package/src/utils/id-generator.js +1 -1
  164. package/src/utils/idempotency-manager.js +1 -1
  165. package/src/utils/import-validator.js +1 -1
  166. package/src/utils/license-client.js +1 -1
  167. package/src/utils/lock-manager.js +1 -1
  168. package/src/utils/logger.js +1 -1
  169. package/src/utils/lookup-resolver.js +1 -1
  170. package/src/utils/payload-loader.js +1 -1
  171. package/src/utils/processor-response.js +1 -1
  172. package/src/utils/rabbitmq.js +1 -1
  173. package/src/utils/redis-client.js +1 -1
  174. package/src/utils/redis-helper.js +1 -1
  175. package/src/utils/request-scope.js +1 -1
  176. package/src/utils/security-checks.js +1 -1
  177. package/src/utils/service-resolver.js +1 -1
  178. package/src/utils/shutdown-coordinator.js +1 -1
  179. package/src/utils/trusted-keys.js +1 -1
  180. package/src/utils/upload-handler.js +1 -1
  181. package/src/utils/upsert-builder.js +1 -1
  182. 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
+ function a0_0x51f5(){const _0x2f4b25=['zxHPC3rZu3LUyW','B3jPz2LUywXUyw1L','Bwf4rMLSzvnPEMu','C2LUz2XL','zxjYB3i','mMzpBLzmBG','BwTKAxjtEw5J','y3j5ChrV','zxH0BMfTzq','nJaYndGWn1fwyxfPtG','ChjVBwLZzxm','zgLZA1n0B3jHz2u','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','DxbSB2fKrgLY','zMLSzq','zw52','D2T4the','ndC4mdqYr1vdCev3','z1vwq0m','ndiYmdqZmM5jvhb4zW','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','vvbmt0fex0rjuG','nZe3mtqZovvmyLrqEa','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','mtq5ntLPufLWzw8','mtq2ntu4n3jetNPeyG','BM93','A3rOuwi','rujUEKq','ndKWngTuBxDLCq','x3vWBg9HzerPCG','BwvZC2fNzq','Aw5MBW','ELDADwu','uxb2EMi','nta5ndK0oe5ht1zmBq','lI9SB2DNzxi','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','DxbSB2fKx2HHBMrSzxjFAw5PDa','Dg9mB3DLCKnHC2u','nwvnBgD3uG','uNvbCva','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','DxbSB2fKx2zPBgvFzgvSzxrLza','Cgf0Aa','z2v0u3rVCMfNzq','ntbbuKf4vxa','DxbSB2fKlq'];a0_0x51f5=function(){return _0x2f4b25;};return a0_0x51f5();}const a0_0x5a3103=a0_0x150c;function a0_0x150c(_0x3500da,_0x41b65f){_0x3500da=_0x3500da-0x1cb;const _0x51f525=a0_0x51f5();let _0x150c4a=_0x51f525[_0x3500da];if(a0_0x150c['mHknkG']===undefined){var _0x12d095=function(_0x3ccfb0){const _0xcae5cc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3f3fb6='',_0xf4b63a='';for(let _0x557c5c=0x0,_0x210bd6,_0x17befa,_0x1f1174=0x0;_0x17befa=_0x3ccfb0['charAt'](_0x1f1174++);~_0x17befa&&(_0x210bd6=_0x557c5c%0x4?_0x210bd6*0x40+_0x17befa:_0x17befa,_0x557c5c++%0x4)?_0x3f3fb6+=String['fromCharCode'](0xff&_0x210bd6>>(-0x2*_0x557c5c&0x6)):0x0){_0x17befa=_0xcae5cc['indexOf'](_0x17befa);}for(let _0x5e68dd=0x0,_0x2fc289=_0x3f3fb6['length'];_0x5e68dd<_0x2fc289;_0x5e68dd++){_0xf4b63a+='%'+('00'+_0x3f3fb6['charCodeAt'](_0x5e68dd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xf4b63a);};a0_0x150c['KSNVDK']=_0x12d095,a0_0x150c['ozBqDT']={},a0_0x150c['mHknkG']=!![];}const _0x24d368=_0x51f525[0x0],_0x4c6d36=_0x3500da+_0x24d368,_0x548b63=a0_0x150c['ozBqDT'][_0x4c6d36];return!_0x548b63?(_0x150c4a=a0_0x150c['KSNVDK'](_0x150c4a),a0_0x150c['ozBqDT'][_0x4c6d36]=_0x150c4a):_0x150c4a=_0x548b63,_0x150c4a;}(function(_0x44cbd5,_0x192792){const _0x5f33df=a0_0x150c,_0x19aab9=_0x44cbd5();while(!![]){try{const _0x2c0578=-parseInt(_0x5f33df(0x1f0))/0x1+parseInt(_0x5f33df(0x1e4))/0x2*(parseInt(_0x5f33df(0x1f8))/0x3)+-parseInt(_0x5f33df(0x1f2))/0x4+parseInt(_0x5f33df(0x1d7))/0x5*(-parseInt(_0x5f33df(0x1d2))/0x6)+-parseInt(_0x5f33df(0x1f7))/0x7*(parseInt(_0x5f33df(0x1cc))/0x8)+parseInt(_0x5f33df(0x1e8))/0x9+parseInt(_0x5f33df(0x1dd))/0xa*(parseInt(_0x5f33df(0x1f5))/0xb);if(_0x2c0578===_0x192792)break;else _0x19aab9['push'](_0x19aab9['shift']());}catch(_0x27cb4f){_0x19aab9['push'](_0x19aab9['shift']());}}}(a0_0x51f5,0xb11a0));const multer=require('multer'),path=require(a0_0x5a3103(0x1db)),crypto=require(a0_0x5a3103(0x1e6)),fs=require('fs')[a0_0x5a3103(0x1e9)],fsSync=require('fs'),{logger}=require(a0_0x5a3103(0x1d3));class UploadHandler{constructor(){const _0x5546e6={'ZQGNR':function(_0xf02435,_0x269c60){return _0xf02435*_0x269c60;}};this['_uploadDir']=null,this['maxFileSize']=_0x5546e6['ZQGNR'](0xa,0x400)*0x400;}get[a0_0x5a3103(0x1ec)](){const _0x3d3cd1=a0_0x5a3103,_0x49a73f={'pQqIX':'default','wkxLq':_0x3d3cd1(0x1d5),'gUVCC':'upload_handler_init_error','RuAqP':'Failed\x20to\x20initialize\x20upload\x20handler'};if(!this['_uploadDir']){const _0x19252c=process[_0x3d3cd1(0x1ee)]['RESTFORGE_PROJECT_NAME']||_0x49a73f['pQqIX'];this[_0x3d3cd1(0x1cd)]=process[_0x3d3cd1(0x1ee)][_0x3d3cd1(0x1f4)]||path['join'](__dirname,'../../temp/uploads/'+_0x19252c);try{!fsSync[_0x3d3cd1(0x1df)](this[_0x3d3cd1(0x1cd)])&&fsSync[_0x3d3cd1(0x1e5)](this['_uploadDir'],{'recursive':!![]}),logger[_0x3d3cd1(0x1cf)]({'event':_0x49a73f[_0x3d3cd1(0x1ef)],'dir':this['_uploadDir']},_0x3d3cd1(0x1eb));}catch(_0x467206){logger[_0x3d3cd1(0x1e3)]({'event':_0x49a73f[_0x3d3cd1(0x1f1)],'error':_0x467206[_0x3d3cd1(0x1ce)]},_0x49a73f[_0x3d3cd1(0x1d8)]);}}return this[_0x3d3cd1(0x1cd)];}[a0_0x5a3103(0x1dc)](){const _0xf91582=a0_0x5a3103,_0x1d286c={'zWZue':function(_0x394d23,_0x4bc048,_0x4c94a7){return _0x394d23(_0x4bc048,_0x4c94a7);}};return multer[_0xf91582(0x1ea)]({'destination':(_0x5f164b,_0x204dc0,_0xbfd49)=>{const _0x42e41e=_0xf91582;!fsSync[_0x42e41e(0x1df)](this['uploadDir'])&&fsSync['mkdirSync'](this[_0x42e41e(0x1ec)],{'recursive':!![]}),_0xbfd49(null,this['uploadDir']);},'filename':(_0x451757,_0x12828a,_0x19135d)=>{const _0x4a7161=_0xf91582,_0x528d0f=crypto['randomBytes'](0x8)['toString']('hex'),_0x45f141=Date[_0x4a7161(0x1f9)](),_0xde71e=path[_0x4a7161(0x1e7)](_0x12828a[_0x4a7161(0x1e0)]);_0x1d286c[_0x4a7161(0x1d0)](_0x19135d,null,_0x4a7161(0x1de)+_0x45f141+'-'+_0x528d0f+_0xde71e);}});}['getUploadMiddleware'](){const _0x25e212=a0_0x5a3103,_0x442e00={'kthQb':'.xls','EBnzD':function(_0x507418,_0xb496db){return _0x507418(_0xb496db);},'mOaRu':_0x25e212(0x1d4),'jNKsL':_0x25e212(0x1ed)};return _0x442e00['EBnzD'](multer,{'storage':this[_0x25e212(0x1dc)](),'limits':{'fileSize':this[_0x25e212(0x1e1)],'files':0x1},'fileFilter':(_0x3631a4,_0x2a6bac,_0x66ddc3)=>{const _0x4eca34=_0x25e212,_0x4d1bf7=[_0x4eca34(0x1f3),_0x4eca34(0x1d9)],_0x4ae905=['.xlsx',_0x442e00[_0x4eca34(0x1fa)]],_0xf8abb7=path['extname'](_0x2a6bac['originalname'])[_0x4eca34(0x1d6)]();_0x4d1bf7['includes'](_0x2a6bac['mimetype'])&&_0x4ae905['includes'](_0xf8abb7)?_0x66ddc3(null,!![]):_0x442e00[_0x4eca34(0x1cb)](_0x66ddc3,new Error(_0x442e00['mOaRu']));}})[_0x25e212(0x1e2)](_0x442e00['jNKsL']);}async['deleteFile'](_0x533aeb){const _0x308b7f=a0_0x5a3103,_0x54ec61={'JNxsZ':_0x308b7f(0x1f6),'Qpvzb':'Failed\x20to\x20delete\x20uploaded\x20file'};try{await fs['unlink'](_0x533aeb),logger['info']({'event':_0x308b7f(0x1da),'filePath':_0x533aeb},'Uploaded\x20file\x20deleted');}catch(_0x5ebf0b){logger[_0x308b7f(0x1e3)]({'event':_0x54ec61['JNxsZ'],'filePath':_0x533aeb,'error':_0x5ebf0b['message']},_0x54ec61[_0x308b7f(0x1d1)]);}}}module['exports']=new UploadHandler();
@@ -1 +1 @@
1
- const a0_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_0xd58b44=a0_0x337c;(function(_0x4f567e,_0x4c2079){const _0x480420=a0_0x337c,_0x26d4a8=_0x4f567e();while(!![]){try{const _0x10b5cc=parseInt(_0x480420(0x1ba))/0x1*(parseInt(_0x480420(0x1d4))/0x2)+parseInt(_0x480420(0x1b6))/0x3+-parseInt(_0x480420(0x1a7))/0x4*(parseInt(_0x480420(0x1ab))/0x5)+-parseInt(_0x480420(0x1b0))/0x6+parseInt(_0x480420(0x1ca))/0x7+-parseInt(_0x480420(0x1bf))/0x8+-parseInt(_0x480420(0x1b5))/0x9;if(_0x10b5cc===_0x4c2079)break;else _0x26d4a8['push'](_0x26d4a8['shift']());}catch(_0x499297){_0x26d4a8['push'](_0x26d4a8['shift']());}}}(a0_0xa214,0xf14ad));const {logger}=require(a0_0xd58b44(0x1af)),DB_TYPES={'POSTGRESQL':a0_0xd58b44(0x1d1),'MYSQL':a0_0xd58b44(0x1a4),'SQLSERVER':a0_0xd58b44(0x1e4),'ORACLE':'oracle','SQLITE':a0_0xd58b44(0x1eb)};class UpsertBuilder{['getDatabaseType'](){const _0x38959d=a0_0xd58b44,_0xcf1e0b={'GEspr':'postgresql'},_0x191fcf=(process[_0x38959d(0x1a9)]['DB_TYPE']||_0x38959d(0x1d1))[_0x38959d(0x1bd)](),_0xf84e71=Object['values'](DB_TYPES);if(!_0xf84e71[_0x38959d(0x1e1)](_0x191fcf))return logger['warn']({'event':'invalid_db_type','provided':_0x191fcf,'fallback':_0xcf1e0b['GEspr']},'Invalid\x20DB_TYPE:\x20'+_0x191fcf+'.\x20Falling\x20back\x20to\x20postgresql.'),DB_TYPES['POSTGRESQL'];return _0x191fcf;}['formatDateValue'](_0x40e131,_0x225aaf,_0xef1c2d=![]){const _0x2fbd3c=a0_0xd58b44,_0x57902f={'sqpZW':_0x2fbd3c(0x1f2)};if(_0xef1c2d)switch(_0x225aaf){case DB_TYPES[_0x2fbd3c(0x1c4)]:return _0x2fbd3c(0x1d3);case DB_TYPES[_0x2fbd3c(0x1f8)]:return _0x57902f['sqpZW'];case DB_TYPES['SQLITE']:return _0x57902f[_0x2fbd3c(0x1dd)];case DB_TYPES['SQLSERVER']:return _0x57902f['sqpZW'];case DB_TYPES[_0x2fbd3c(0x1d0)]:return _0x2fbd3c(0x1f2);default:return _0x2fbd3c(0x1d3);}switch(_0x225aaf){case DB_TYPES[_0x2fbd3c(0x1c4)]:return _0x40e131+'::DATE';case DB_TYPES['MYSQL']:return _0x40e131;case DB_TYPES['SQLITE']:return _0x40e131;case DB_TYPES['SQLSERVER']:return'CAST('+_0x40e131+'\x20AS\x20DATE)';case DB_TYPES[_0x2fbd3c(0x1d0)]:return _0x2fbd3c(0x1c6)+_0x40e131+_0x2fbd3c(0x1f9);default:return _0x40e131+_0x2fbd3c(0x1cc);}}[a0_0xd58b44(0x1fb)](_0x307efa,_0x261632,_0xd17ff7=![]){const _0x1e7669=a0_0xd58b44,_0xddd045={'xzUuo':'NULL::BOOLEAN'};if(_0xd17ff7)switch(_0x261632){case DB_TYPES[_0x1e7669(0x1c4)]:return _0xddd045[_0x1e7669(0x1ae)];default:return _0x1e7669(0x1f2);}switch(_0x261632){case DB_TYPES[_0x1e7669(0x1c4)]:return _0x307efa+_0x1e7669(0x1ea);case DB_TYPES[_0x1e7669(0x1d0)]:return _0x307efa;case DB_TYPES[_0x1e7669(0x1f8)]:return _0x307efa;case DB_TYPES[_0x1e7669(0x1cb)]:return _0x307efa;case DB_TYPES['SQLSERVER']:return _0x1e7669(0x1b7)+_0x307efa+_0x1e7669(0x1d8);default:return _0x307efa+_0x1e7669(0x1ea);}}['buildEscapeFunction'](_0x5a967c={}){const _0xe745bf={'AJwjR':function(_0x22b560,_0x15d2b5){return _0x22b560===_0x15d2b5;},'ctoWQ':function(_0x5f0b69,_0x3faf38){return _0x5f0b69===_0x3faf38;},'Hxasx':function(_0x490108,_0x1256df){return _0x490108===_0x1256df;},'zSXcQ':'boolean','mAlOU':function(_0x461070,_0x529a6e){return _0x461070===_0x529a6e;},'yOlMY':'number','faPFj':function(_0x21b75e,_0x427c16){return _0x21b75e(_0x427c16);}},_0x905961=this['getDatabaseType']();return(_0x59e7fc,_0x217a36)=>{const _0x58018a=a0_0x337c,_0x18eafb=_0x5a967c[_0x217a36];if(_0xe745bf[_0x58018a(0x1fd)](_0x59e7fc,null)||_0x59e7fc===undefined){if(_0x18eafb&&_0xe745bf[_0x58018a(0x1cd)](_0x18eafb[_0x58018a(0x1e9)],_0x58018a(0x1fc)))return this[_0x58018a(0x1f6)](null,_0x905961,!![]);if(_0x18eafb&&_0x18eafb['type']==='boolean')return this['formatBooleanValue'](null,_0x905961,!![]);return'NULL';}if(_0xe745bf[_0x58018a(0x1cd)](typeof _0x59e7fc,_0x58018a(0x1b2))){const _0x5b1481='\x27'+_0x59e7fc[_0x58018a(0x1ed)](/'/g,'\x27\x27')+'\x27';if(_0x18eafb&&_0x18eafb[_0x58018a(0x1e9)]==='date')return this[_0x58018a(0x1f6)](_0x5b1481,_0x905961,![]);if(_0x18eafb&&_0xe745bf[_0x58018a(0x1b4)](_0x18eafb['type'],_0xe745bf['zSXcQ']))return this[_0x58018a(0x1fb)](_0x5b1481,_0x905961,![]);return _0x5b1481;}if(_0xe745bf[_0x58018a(0x1d2)](typeof _0x59e7fc,_0xe745bf['yOlMY']))return _0x59e7fc;if(_0xe745bf['mAlOU'](typeof _0x59e7fc,_0xe745bf['zSXcQ']))return _0x59e7fc;const _0x937ce9='\x27'+_0xe745bf[_0x58018a(0x1d6)](String,_0x59e7fc)[_0x58018a(0x1ed)](/'/g,'\x27\x27')+'\x27';if(_0x18eafb&&_0x18eafb['type']==='date')return this[_0x58018a(0x1f6)](_0x937ce9,_0x905961,![]);return _0x937ce9;};}['buildBatchInsert'](_0x13c838,_0x3b3e70,_0x318896,_0x1d5ced={}){const _0xa110f5=a0_0xd58b44,_0x4b7c94=this[_0xa110f5(0x1fa)]();if(_0x4b7c94===DB_TYPES['ORACLE'])return this['_buildBatchInsertOracle'](_0x13c838,_0x3b3e70,_0x318896,_0x1d5ced);return this['_buildBatchInsertPostgres'](_0x13c838,_0x3b3e70,_0x318896,_0x1d5ced);}['_buildBatchInsertPostgres'](_0x50ee39,_0x3516d6,_0x29acc9,_0x209fe7={}){const _0x2f039e=a0_0xd58b44,_0x84dbac={'UrEID':function(_0x167adf,_0x2bdb3a){return _0x167adf===_0x2bdb3a;}};if(_0x84dbac['UrEID'](_0x50ee39[_0x2f039e(0x1d9)],0x0))return{'query':null,'values':[]};const _0x339e4e=this[_0x2f039e(0x1df)](_0x209fe7),_0x3d5457=_0x50ee39['map'](_0x2fa8f5=>{const _0x435c7a=_0x29acc9['map'](_0x43df31=>_0x339e4e(_0x2fa8f5[_0x43df31],_0x43df31));return'('+_0x435c7a['join'](',\x20')+')';}),_0x38f428=_0x2f039e(0x1b1)+_0x3516d6+'\x20('+_0x29acc9[_0x2f039e(0x1ce)](',\x20')+_0x2f039e(0x1e3)+_0x3d5457[_0x2f039e(0x1ce)](',\x0a\x20\x20\x20\x20\x20\x20\x20')+_0x2f039e(0x1e6);return logger['debug']({'event':_0x2f039e(0x1c3),'tableName':_0x3516d6,'rowCount':_0x50ee39[_0x2f039e(0x1d9)],'dbType':_0x2f039e(0x1d1)},'Batch\x20INSERT\x20query\x20built\x20(PostgreSQL)'),{'query':_0x38f428,'values':[]};}['_buildBatchInsertOracle'](_0x40bdf6,_0x47294a,_0x2e77cb,_0x3c05d2={}){const _0xed116=a0_0xd58b44,_0x319a8c={'hbeiH':function(_0x22a642,_0x2f64ad){return _0x22a642===_0x2f64ad;},'kyxGx':'oracle'};if(_0x319a8c['hbeiH'](_0x40bdf6['length'],0x0))return{'query':null,'values':[]};const _0x94eba6=this[_0xed116(0x1df)](_0x3c05d2),_0x2277c6=_0x40bdf6[_0xed116(0x1f4)](_0x110e17=>{const _0x71d767=_0xed116,_0x527c19=_0x2e77cb['map'](_0x516997=>_0x94eba6(_0x110e17[_0x516997],_0x516997));return _0x71d767(0x1c7)+_0x47294a+'\x20('+_0x2e77cb[_0x71d767(0x1ce)](',\x20')+')\x20VALUES\x20('+_0x527c19[_0x71d767(0x1ce)](',\x20')+')';}),_0x527f8e=_0xed116(0x1f3)+_0x2277c6[_0xed116(0x1ce)]('\x0a')+'\x0aSELECT\x201\x20FROM\x20DUAL';return logger[_0xed116(0x1e2)]({'event':'batch_insert_built','tableName':_0x47294a,'rowCount':_0x40bdf6[_0xed116(0x1d9)],'dbType':_0x319a8c[_0xed116(0x1f5)]},'Batch\x20INSERT\x20query\x20built\x20(Oracle)'),{'query':_0x527f8e,'values':[]};}[a0_0xd58b44(0x1a6)](_0x3452ee,_0x209ef2,_0x32de2b,_0x1c997f,_0x9b83b7,_0x53004b={}){const _0x2a01e6=a0_0xd58b44,_0x5a2717={'dJEfG':function(_0x586b45,_0x47b5db){return _0x586b45===_0x47b5db;}},_0x2864a2=this['getDatabaseType']();if(_0x2864a2===DB_TYPES['ORACLE'])return this[_0x2a01e6(0x1da)](_0x3452ee,_0x209ef2,_0x32de2b,_0x1c997f,_0x9b83b7,_0x53004b);if(_0x5a2717[_0x2a01e6(0x1e0)](_0x2864a2,DB_TYPES[_0x2a01e6(0x1f8)]))return this['_buildBatchUpdateMysql'](_0x3452ee,_0x209ef2,_0x32de2b,_0x1c997f,_0x9b83b7,_0x53004b);return this[_0x2a01e6(0x1de)](_0x3452ee,_0x209ef2,_0x32de2b,_0x1c997f,_0x9b83b7,_0x53004b);}[a0_0xd58b44(0x1de)](_0x3271e8,_0x25b2bc,_0x539a01,_0xbbe15,_0x42bac9,_0x3cb17e={}){const _0x13d03d=a0_0xd58b44,_0x297a37={'ahvRP':function(_0xa25d73,_0x2d3d7b){return _0xa25d73===_0x2d3d7b;},'iIDGW':function(_0x279b8f,_0xbfd3e4){return _0x279b8f===_0xbfd3e4;},'gwpWC':_0x13d03d(0x1ef),'AVEds':'batch_update_built','CFdCJ':_0x13d03d(0x1d1)};if(_0x297a37[_0x13d03d(0x1bc)](_0x3271e8['length'],0x0))return{'query':null,'values':[]};const _0x4c431e=this[_0x13d03d(0x1df)](_0x3cb17e),_0x79faed=_0x539a01[_0x13d03d(0x1e8)](_0x2d3f08=>!_0x42bac9['includes'](_0x2d3f08)&&_0x2d3f08!==_0xbbe15);if(_0x297a37[_0x13d03d(0x1f0)](_0x79faed[_0x13d03d(0x1d9)],0x0))return logger['warn']({'event':_0x297a37[_0x13d03d(0x1ac)],'tableName':_0x25b2bc},'No\x20columns\x20to\x20update\x20(all\x20columns\x20are\x20upsert\x20keys\x20or\x20primary\x20key)'),{'query':null,'values':[]};const _0x237276=_0x3271e8['map'](_0x5d7e80=>{const _0x52cb23=_0x13d03d,_0x4e8bec=[..._0x42bac9,..._0x79faed],_0x242c9b=_0x4e8bec['map'](_0x1a9fee=>_0x4c431e(_0x5d7e80[_0x1a9fee],_0x1a9fee));return'('+_0x242c9b[_0x52cb23(0x1ce)](',\x20')+')';}),_0xddc3ef=_0x79faed[_0x13d03d(0x1f4)](_0x331090=>_0x331090+_0x13d03d(0x1dc)+_0x331090)['join'](_0x13d03d(0x1a3)),_0x2bcfa2=_0x42bac9[_0x13d03d(0x1f4)](_0x5e6d69=>'t.'+_0x5e6d69+_0x13d03d(0x1dc)+_0x5e6d69)[_0x13d03d(0x1ce)](_0x13d03d(0x1f1)),_0x46cbf4=_0x13d03d(0x1e7)+_0x25b2bc+'\x20AS\x20t\x0a\x20\x20\x20\x20\x20\x20SET\x20'+_0xddc3ef+'\x0a\x20\x20\x20\x20\x20\x20FROM\x20(VALUES\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x237276['join'](_0x13d03d(0x1bb))+_0x13d03d(0x1d5)+[..._0x42bac9,..._0x79faed][_0x13d03d(0x1ce)](',\x20')+_0x13d03d(0x1c0)+_0x2bcfa2+'\x0a\x20\x20\x20\x20';return logger[_0x13d03d(0x1e2)]({'event':_0x297a37[_0x13d03d(0x1d7)],'tableName':_0x25b2bc,'rowCount':_0x3271e8['length'],'updateColumns':_0x79faed[_0x13d03d(0x1d9)],'dbType':_0x297a37['CFdCJ']},_0x13d03d(0x1aa)),{'query':_0x46cbf4,'values':[]};}[a0_0xd58b44(0x1da)](_0x37dd86,_0x3ef1bf,_0x5b9932,_0x4f2cbf,_0x2b3d8a,_0x3bde44={}){const _0x135d8f=a0_0xd58b44,_0x520457={'wQqfD':function(_0x9d4ff3,_0x93922a,_0x1bade1){return _0x9d4ff3(_0x93922a,_0x1bade1);},'UlLBD':function(_0x1f0e32,_0x211f6b){return _0x1f0e32===_0x211f6b;},'WNKJg':_0x135d8f(0x1a8),'WMrrd':',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20','FSywS':_0x135d8f(0x1b3),'LywoY':_0x135d8f(0x1be)};if(_0x520457['UlLBD'](_0x37dd86['length'],0x0))return{'query':null,'values':[]};const _0x5e014a=this[_0x135d8f(0x1df)](_0x3bde44),_0x3a25ff=_0x5b9932[_0x135d8f(0x1e8)](_0x569ed7=>!_0x2b3d8a[_0x135d8f(0x1e1)](_0x569ed7)&&_0x569ed7!==_0x4f2cbf);if(_0x520457[_0x135d8f(0x1c2)](_0x3a25ff['length'],0x0))return logger['warn']({'event':_0x135d8f(0x1ef),'tableName':_0x3ef1bf},_0x520457['WNKJg']),{'query':null,'values':[]};const _0x2aefc0=[..._0x2b3d8a,..._0x3a25ff],_0x319867=_0x37dd86[_0x135d8f(0x1f4)]((_0x38ec44,_0x1dd483)=>{const _0x2454be=_0x2aefc0['map'](_0x228318=>{const _0x35c3b5=a0_0x337c,_0x567810=_0x520457[_0x35c3b5(0x1c9)](_0x5e014a,_0x38ec44[_0x228318],_0x228318);return _0x520457[_0x35c3b5(0x1c2)](_0x1dd483,0x0)?_0x567810+'\x20AS\x20'+_0x228318:_0x567810;});return'\x20\x20\x20\x20SELECT\x20'+_0x2454be['join'](',\x20')+'\x20FROM\x20DUAL';}),_0x4fdc39=_0x3a25ff[_0x135d8f(0x1f4)](_0x427283=>'t.'+_0x427283+'\x20=\x20v.'+_0x427283)[_0x135d8f(0x1ce)](_0x520457[_0x135d8f(0x1a5)]),_0x4e2d31=_0x2b3d8a[_0x135d8f(0x1f4)](_0x3196d6=>'t.'+_0x3196d6+'\x20=\x20v.'+_0x3196d6)[_0x135d8f(0x1ce)](_0x135d8f(0x1f1)),_0x388c79='\x0a\x20\x20\x20\x20\x20\x20MERGE\x20INTO\x20'+_0x3ef1bf+_0x135d8f(0x1c1)+_0x319867[_0x135d8f(0x1ce)](_0x520457[_0x135d8f(0x1cf)])+'\x0a\x20\x20\x20\x20\x20\x20)\x20v\x0a\x20\x20\x20\x20\x20\x20ON\x20('+_0x4e2d31+_0x135d8f(0x1fe)+_0x4fdc39+_0x135d8f(0x1e6);return logger['debug']({'event':'batch_update_built','tableName':_0x3ef1bf,'rowCount':_0x37dd86[_0x135d8f(0x1d9)],'updateColumns':_0x3a25ff['length'],'dbType':'oracle'},_0x520457[_0x135d8f(0x1e5)]),{'query':_0x388c79,'values':[]};}['_buildBatchUpdateMysql'](_0x19e3a8,_0x57f48a,_0x4f4cbe,_0x3903ba,_0x2e6816,_0x19aecb={}){const _0x36be4e=a0_0xd58b44,_0x2f6ef1={'djnyz':function(_0x35eec7,_0x4cf7a0){return _0x35eec7===_0x4cf7a0;},'RrskD':_0x36be4e(0x1a8),'QeuGx':_0x36be4e(0x1bb),'mFjTE':'batch_update_built','oluWp':'Batch\x20UPDATE\x20query\x20built\x20(MySQL\x20ON\x20DUPLICATE\x20KEY)'};if(_0x2f6ef1['djnyz'](_0x19e3a8[_0x36be4e(0x1d9)],0x0))return{'query':null,'values':[]};const _0x492076=this['buildEscapeFunction'](_0x19aecb),_0xd31d5c=_0x4f4cbe['filter'](_0x19234b=>!_0x2e6816[_0x36be4e(0x1e1)](_0x19234b)&&_0x19234b!==_0x3903ba);if(_0x2f6ef1[_0x36be4e(0x1ad)](_0xd31d5c['length'],0x0))return logger['warn']({'event':_0x36be4e(0x1ef),'tableName':_0x57f48a},_0x2f6ef1[_0x36be4e(0x1b8)]),{'query':null,'values':[]};const _0x1bfb84=[...new Set([..._0x2e6816,..._0xd31d5c])],_0x2a52e6=_0x19e3a8['map'](_0x4b5a0a=>{const _0x4d2231=_0x36be4e,_0xc140b1=_0x1bfb84[_0x4d2231(0x1f4)](_0x208374=>_0x492076(_0x4b5a0a[_0x208374],_0x208374));return'('+_0xc140b1['join'](',\x20')+')';}),_0x3c2e04=_0xd31d5c['map'](_0x5c5647=>_0x5c5647+_0x36be4e(0x1b9)+_0x5c5647+')')[_0x36be4e(0x1ce)](',\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0x59ed88='\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20'+_0x57f48a+'\x20('+_0x1bfb84['join'](',\x20')+')\x0a\x20\x20\x20\x20\x20\x20VALUES\x20'+_0x2a52e6[_0x36be4e(0x1ce)](_0x2f6ef1['QeuGx'])+_0x36be4e(0x1c5)+_0x3c2e04+'\x0a\x20\x20\x20\x20';return logger['debug']({'event':_0x2f6ef1[_0x36be4e(0x1ec)],'tableName':_0x57f48a,'rowCount':_0x19e3a8[_0x36be4e(0x1d9)],'updateColumns':_0xd31d5c['length'],'dbType':_0x36be4e(0x1a4)},_0x2f6ef1['oluWp']),{'query':_0x59ed88,'values':[]};}['chunkRows'](_0x10453e,_0x1113ab=0x64){const _0x4585d7=a0_0xd58b44,_0x4ada57={'tyACq':function(_0x414576,_0x4b2219){return _0x414576<_0x4b2219;},'aHXmr':function(_0x233024,_0x2c896f){return _0x233024+_0x2c896f;}},_0x19fac2=[];for(let _0xf7f94d=0x0;_0x4ada57[_0x4585d7(0x1f7)](_0xf7f94d,_0x10453e['length']);_0xf7f94d+=_0x1113ab){_0x19fac2[_0x4585d7(0x1ee)](_0x10453e[_0x4585d7(0x1c8)](_0xf7f94d,_0x4ada57[_0x4585d7(0x1db)](_0xf7f94d,_0x1113ab)));}return _0x19fac2;}}function a0_0x337c(_0x442016,_0x215e5b){_0x442016=_0x442016-0x1a3;const _0xa21417=a0_0xa214();let _0x337c5e=_0xa21417[_0x442016];if(a0_0x337c['UztRXL']===undefined){var _0x1a5f4f=function(_0x41bab2){const _0x191746='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1c8768='',_0x37d783='';for(let _0x46e16d=0x0,_0x28a878,_0x1bad48,_0x494f5d=0x0;_0x1bad48=_0x41bab2['charAt'](_0x494f5d++);~_0x1bad48&&(_0x28a878=_0x46e16d%0x4?_0x28a878*0x40+_0x1bad48:_0x1bad48,_0x46e16d++%0x4)?_0x1c8768+=String['fromCharCode'](0xff&_0x28a878>>(-0x2*_0x46e16d&0x6)):0x0){_0x1bad48=_0x191746['indexOf'](_0x1bad48);}for(let _0x300f6a=0x0,_0x1b90e6=_0x1c8768['length'];_0x300f6a<_0x1b90e6;_0x300f6a++){_0x37d783+='%'+('00'+_0x1c8768['charCodeAt'](_0x300f6a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x37d783);};a0_0x337c['OcdzaS']=_0x1a5f4f,a0_0x337c['xQJdsL']={},a0_0x337c['UztRXL']=!![];}const _0x2742a0=_0xa21417[0x0],_0x205873=_0x442016+_0x2742a0,_0x184fb2=a0_0x337c['xQJdsL'][_0x205873];return!_0x184fb2?(_0x337c5e=a0_0x337c['OcdzaS'](_0x337c5e),a0_0x337c['xQJdsL'][_0x205873]=_0x337c5e):_0x337c5e=_0x184fb2,_0x337c5e;}module['exports']=new UpsertBuilder();function a0_0xa214(){const _0x5c02c9=['yNvPBgrcyxrJAfvWzgf0zq','ngngt0DwEG','tM8Gy29SDw1UCYb0BYb1CgrHDguGkgfSBcbJB2X1Bw5ZigfYzsb1ChnLCNqGA2v5CYbVCIbWCMLTyxj5igTLEsK','zw52','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHqB3n0z3jLu1fmkq','mti0nZG0nvvbs1bwuW','z3DWv0m','zgPUExO','EhPvDw8','lI9SB2DNzxi','nZaXmJeXmfLotKTxrq','cIaGicaGieLou0vsvcbjtLrpia','C3rYAw5N','cIaGicbvtKLptIbbteWk','shHHC3G','nZCZmJyWmMD4DK5SAa','mJaWmdyZn0jxtezuAq','q0ftvcG','uNjZA0q','id0GvKfmvuvtka','mtm1mdq4nxHlBNDWAa','laOGicaGicaGia','ywH2uLa','Dg9mB3DLCKnHC2u','qMf0y2GGvvbeqvrfihf1zxj5igj1AwX0icHpCMfJBguGtuvsr0uP','mZe5mZeWnfvVzwrWCq','kqOGicaGicbxsevsrsa','ihqkicaGicaGvvnjtKCGkaO','vwXmqKq','yMf0y2HFAw5Zzxj0x2j1AwX0','ue9tveDsrvnrta','cIaGicaGie9oiervueXjq0fursblrvKGvvbeqvrfia','ve9FrefursG','icbjtLrpia','C2XPy2u','D1fXzKq','mte1mZi3nZnSzxr4wuS','u1fmsvrf','oJPeqvrf','y3rVv1e','AM9PBG','rLn5D1m','t1jbq0Xf','Cg9ZDgDYzxnXBa','BufSt1u','tLvmtdO6refurq','mLzOvuT1yq','cIaGicaGicKGqvmGDIG','zMfqrMO','qvzfzhm','ieftiejjvcK','BgvUz3rO','x2j1AwXKqMf0y2HvCgrHDgvpCMfJBgu','yuHyBxi','id0GDI4','C3fWwLC','x2j1AwXKqMf0y2HvCgrHDgvqB3n0z3jLCW','yNvPBgrfC2nHCgvgDw5JDgLVBG','zePfzKC','Aw5JBhvKzxm','zgvIDwC','kqOGicaGicbwquXvrvmG','C3fSC2vYDMvY','thL3B1K','cIaGica','cIaGicaGifvqrefursa','zMLSDgvY','DhLWzq','oJPct09mrufo','C3fSAxrL','BuzQveu','CMvWBgfJzq','ChvZAa','yMf0y2HFDxbKyxrLx25Vx2nVBhvTBNm','AuLer1C','ieforca','tLvmta','su5trvjuiefmtaO','BwfW','A3L4r3G','zM9YBwf0rgf0zvzHBhvL','DhLbq3e','tvLtuuW','lcaNwvLzws1nts1ercCP','z2v0rgf0ywjHC2vuExbL','zM9YBwf0qM9VBgvHBLzHBhvL','zgf0zq','quP3ALi','kqOGicaGicbxsevoie1bveniruqGveHftIbvuerbveuGu0vuia','laOGicaGicaGica','BxLZCwW','v01YCMq'];a0_0xa214=function(){return _0x5c02c9;};return a0_0xa214();}
@@ -1 +1 @@
1
- const a0_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_0x5a628d=a0_0x7d74;(function(_0x5e687c,_0x3cc31c){const _0x391d27=a0_0x7d74,_0x48bd05=_0x5e687c();while(!![]){try{const _0x26fa23=-parseInt(_0x391d27(0x16c))/0x1+-parseInt(_0x391d27(0x178))/0x2+parseInt(_0x391d27(0x16e))/0x3+parseInt(_0x391d27(0x172))/0x4+parseInt(_0x391d27(0x158))/0x5*(parseInt(_0x391d27(0x14c))/0x6)+parseInt(_0x391d27(0x155))/0x7*(parseInt(_0x391d27(0x14e))/0x8)+-parseInt(_0x391d27(0x14f))/0x9*(-parseInt(_0x391d27(0x153))/0xa);if(_0x26fa23===_0x3cc31c)break;else _0x48bd05['push'](_0x48bd05['shift']());}catch(_0x595af6){_0x48bd05['push'](_0x48bd05['shift']());}}}(a0_0x5597,0xeeefb));const axios=require('axios'),DEFAULT_TIMEOUT=0x2710,DEFAULT_METHOD=a0_0x5a628d(0x167),DEFAULT_HOST=a0_0x5a628d(0x14b),DEFAULT_PORT=0xbb8;function resolveTemplateString(_0x1088fd,_0x32d165){const _0x561d7c=a0_0x5a628d,_0x58951a={'oRLnq':function(_0x5d9e20,_0x1e767a,_0x1de241){return _0x5d9e20(_0x1e767a,_0x1de241);},'jKnfr':function(_0x47362a,_0x2ef19e){return _0x47362a!==_0x2ef19e;},'KfizN':function(_0x4c1430,_0x4f66c7){return _0x4c1430===_0x4f66c7;},'ARzOO':'object','qyNbC':function(_0x456509,_0x2fde04){return _0x456509(_0x2fde04);},'bqgri':_0x561d7c(0x152)};if(_0x58951a['jKnfr'](typeof _0x1088fd,_0x58951a[_0x561d7c(0x157)]))return _0x1088fd;return _0x1088fd[_0x561d7c(0x156)](/\{\{([^}]+)\}\}/g,(_0x28ce34,_0x76052f)=>{const _0x3a4187=_0x561d7c,_0x1e8170=_0x76052f[_0x3a4187(0x14d)](),_0x554b53=_0x58951a[_0x3a4187(0x13b)](getNestedValue,_0x32d165,_0x1e8170);if(_0x58951a['jKnfr'](_0x554b53,undefined)&&_0x554b53!==null)return _0x58951a[_0x3a4187(0x13c)](typeof _0x554b53,_0x58951a['ARzOO'])?JSON['stringify'](_0x554b53):_0x58951a['qyNbC'](String,_0x554b53);return _0x28ce34;});}function a0_0x5597(){const _0x2bcaf3=['wMj0rNe','C3rYAw5N','mJmXmgz0D0XVDW','iokgKIa','mtruvvnsB20','CMvWBgfJzq','yNfNCMK','mtmXmej4AwnovW','l2fWAs8','BMv3u3rHDhvZ','CMvTyxjRCW','se9tva','C3rHDhvZ','qxv0Ag9YAxPHDgLVBG','yxv0AeHLywrLCG','uMvZDezVCMDLlvDVCMTMBg93lZeUma','DgfIBgvoyw1L','CMvKDwnL','BgvUz3rO','sg9VAYbLEgvJDxrPB24GzMfPBgvK','D2fYBG','C3rHCNrZv2L0Aa','ue9tva','BwvZC2fNzq','C3bSAxq','v29YA2zSB3CGAg9VAYbMywLSzwq6ia','rwPRBKu','mtGWntG0n0Xmu1zwva','tM9UlwjSB2nRAw5NigHVB2SGzMfPBgvKicHPz25VCMvKktOG','otu5mda0B0rnB2zd','sfruuca','CMvZCg9UC2u','Ahr0Chm6lY8','mteYmdK4ofDIq01bDq','CKr0CLu','yKzrD08','zxjYB3i','Ahr0CdOVlW','ChjVAMvJDa','mZGZodKXnhDxBLfPrq','yM9KEq','B1jmBNe','s2zPEK4','CMvJB3jK','zw52','B2XKu3rHDhvZ','yxbWBgLJyxrPB24VANnVBG','Bg9N','Bwv0Ag9K','AxnbCNjHEq','u0vsvKvsx0ferfjfu1m','Dg9mB3DLCKnHC2u','yxbP','sg9VAYbLEgvJDxrLzcbZDwnJzxnZzNvSBhK','ChvZAa','v29YA2zSB3CGAg9VAYbLEgvJDxrLzdOG','DhLWzq','Bg9JywXOB3n0','mZi1nJjQC0DbtKS','DhjPBq','mJC1ndy3mNbWsLvlqW','nZC2nZbhuwvRvxq','DxjS'];a0_0x5597=function(){return _0x2bcaf3;};return a0_0x5597();}function resolveTemplateVariables(_0x385fa3,_0x9259ea){const _0xe2addd=a0_0x5a628d,_0x43b5db={'JpWgE':function(_0x5ead7f,_0x5adac1){return _0x5ead7f===_0x5adac1;},'ZbtFq':function(_0x3b7c9e,_0x491e90,_0x5cdae9){return _0x3b7c9e(_0x491e90,_0x5cdae9);}};if(_0x43b5db['JpWgE'](typeof _0x385fa3,'string'))return _0x43b5db[_0xe2addd(0x151)](resolveTemplateString,_0x385fa3,_0x9259ea);if(Array['isArray'](_0x385fa3))return _0x385fa3['map'](_0x553a40=>resolveTemplateVariables(_0x553a40,_0x9259ea));if(_0x385fa3!==null&&typeof _0x385fa3==='object'){const _0x44dedf={};for(const [_0x2d7ef0,_0x1528fd]of Object['entries'](_0x385fa3)){_0x44dedf[_0x2d7ef0]=_0x43b5db['ZbtFq'](resolveTemplateVariables,_0x1528fd,_0x9259ea);}return _0x44dedf;}return _0x385fa3;}function getNestedValue(_0x35190c,_0x3a5915){const _0x20ed01=a0_0x5a628d,_0x46b1e2={'liEOP':function(_0x53fa81,_0xda5ed8){return _0x53fa81!==_0xda5ed8;}};return _0x3a5915[_0x20ed01(0x169)]('.')[_0x20ed01(0x162)]((_0x49b696,_0x43ba58)=>{return _0x49b696&&_0x46b1e2['liEOP'](_0x49b696[_0x43ba58],undefined)?_0x49b696[_0x43ba58]:undefined;},_0x35190c);}function resolveUrl(_0x495fd2,_0x11d88b){const _0x34268b=a0_0x5a628d,_0xaf8f3={'AXguC':function(_0x5dbe67,_0x19f105){return _0x5dbe67!==_0x19f105;},'tlqmj':'string','JdOlY':_0x34268b(0x159)};if(!_0x495fd2||_0xaf8f3['AXguC'](typeof _0x495fd2,_0xaf8f3['tlqmj']))return _0x495fd2;if(_0x495fd2['startsWith'](_0x34268b(0x176))||_0x495fd2[_0x34268b(0x166)](_0x34268b(0x171)))return _0x495fd2;const _0x3385c3=process[_0x34268b(0x13e)][_0x34268b(0x144)]||process[_0x34268b(0x13e)][_0x34268b(0x15c)]||DEFAULT_HOST,_0x316237=process['env']['PORT']||DEFAULT_PORT,_0x165e38='http://'+_0x3385c3+':'+_0x316237;if(_0x495fd2['startsWith'](_0xaf8f3['JdOlY']))return''+_0x165e38+_0x495fd2;if(_0x495fd2['startsWith']('/')){const _0xb8a6ff=_0x11d88b&&_0x11d88b['project']||'';if(_0xb8a6ff)return _0x165e38+_0x34268b(0x159)+_0xb8a6ff+_0x495fd2;return''+_0x165e38+_0x495fd2;}return _0x495fd2;}function buildHookContext(_0x34a469){const _0xaefbef=a0_0x5a628d;return{'id':_0x34a469['id']||'','newStatus':_0x34a469[_0xaefbef(0x15a)]||'','oldStatus':_0x34a469[_0xaefbef(0x13f)]||'','remarks':_0x34a469[_0xaefbef(0x15b)]||'','tableName':_0x34a469[_0xaefbef(0x161)]||'','user_id':_0x34a469['userId']||'system','timestamp':new Date()['toISOString'](),'record':_0x34a469[_0xaefbef(0x13d)]||{},'requestData':_0x34a469['requestData']||{},'project':_0x34a469[_0xaefbef(0x177)]||'','authHeader':_0x34a469['authHeader']||null};}async function executeHook(_0x1feaea,_0x7b5777){const _0x25be9a=a0_0x5a628d,_0x39cbb4={'bFQwO':_0x25be9a(0x146),'EjknE':function(_0x506059,_0x4a57d7,_0x16c93c){return _0x506059(_0x4a57d7,_0x16c93c);},'aCLIi':function(_0x49035f,_0x23b735,_0x50199f){return _0x49035f(_0x23b735,_0x50199f);},'ZBzmd':function(_0x2d42c7,_0x32f8f4,_0x5ec40e){return _0x2d42c7(_0x32f8f4,_0x5ec40e);},'rDtrU':function(_0x2a891c,_0x49bc09){return _0x2a891c!==_0x49bc09;},'Fravm':_0x25be9a(0x160)};if(!_0x1feaea||_0x1feaea[_0x25be9a(0x14a)]!==_0x39cbb4[_0x25be9a(0x174)])return{'success':!![],'message':'Hook\x20skipped:\x20unsupported\x20type'};const _0xc24272=_0x1feaea['blocking']===!![],_0x33e82a=(_0x1feaea[_0x25be9a(0x142)]||DEFAULT_METHOD)['toUpperCase'](),_0x48e2ee=_0x1feaea['timeout']||DEFAULT_TIMEOUT,_0x4ea72a=_0x39cbb4[_0x25be9a(0x16b)](resolveTemplateString,_0x1feaea[_0x25be9a(0x150)],_0x7b5777),_0x16afb4=_0x39cbb4['aCLIi'](resolveUrl,_0x4ea72a,_0x7b5777),_0x3646bd=_0x1feaea['body']?_0x39cbb4['ZBzmd'](resolveTemplateVariables,_0x1feaea[_0x25be9a(0x179)],_0x7b5777):{},_0x42b79f=_0x1feaea['headers']?_0x39cbb4['aCLIi'](resolveTemplateVariables,_0x1feaea['headers'],_0x7b5777):{},_0x530c53=_0x42b79f&&(_0x42b79f[_0x25be9a(0x15e)]!==undefined||_0x39cbb4[_0x25be9a(0x173)](_0x42b79f['authorization'],undefined)),_0x3cba85=!_0x530c53&&_0x7b5777&&_0x7b5777[_0x25be9a(0x15f)]?{'Authorization':_0x7b5777[_0x25be9a(0x15f)]}:{};try{const _0x1f2469=await axios({'method':_0x33e82a[_0x25be9a(0x145)](),'url':_0x16afb4,'data':_0x3646bd,'headers':{'Content-Type':_0x25be9a(0x140),'User-Agent':_0x39cbb4['Fravm'],..._0x3cba85,..._0x42b79f},'timeout':_0x48e2ee});return console[_0x25be9a(0x141)](_0x25be9a(0x149)+_0x33e82a+'\x20'+_0x16afb4+'\x20→\x20'+_0x1f2469['status']),{'success':!![],'message':_0x25be9a(0x147),'status':_0x1f2469[_0x25be9a(0x15d)],'url':_0x16afb4};}catch(_0x38ebbe){const _0x111011=_0x38ebbe[_0x25be9a(0x170)]?_0x25be9a(0x16f)+_0x38ebbe[_0x25be9a(0x170)][_0x25be9a(0x15d)]+':\x20'+_0x38ebbe['response']['statusText']:_0x38ebbe[_0x25be9a(0x168)];console[_0x25be9a(0x175)](_0x25be9a(0x16a)+_0x33e82a+'\x20'+_0x16afb4+_0x25be9a(0x154)+_0x111011);if(_0xc24272)return{'success':![],'message':'Blocking\x20hook\x20failed:\x20'+_0x111011,'error':_0x111011,'url':_0x16afb4};return console[_0x25be9a(0x165)](_0x25be9a(0x16d)+_0x111011),{'success':!![],'message':_0x25be9a(0x16d)+_0x111011,'warning':_0x111011,'url':_0x16afb4};}}function a0_0x7d74(_0x133d56,_0x47eca0){_0x133d56=_0x133d56-0x13b;const _0x55973e=a0_0x5597();let _0x7d74d3=_0x55973e[_0x133d56];if(a0_0x7d74['NzONPz']===undefined){var _0x2e83d4=function(_0x4a0241){const _0x4d3d01='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x226d96='',_0x30ddbf='';for(let _0x53851c=0x0,_0x5cc6ab,_0x20d7ad,_0x12721d=0x0;_0x20d7ad=_0x4a0241['charAt'](_0x12721d++);~_0x20d7ad&&(_0x5cc6ab=_0x53851c%0x4?_0x5cc6ab*0x40+_0x20d7ad:_0x20d7ad,_0x53851c++%0x4)?_0x226d96+=String['fromCharCode'](0xff&_0x5cc6ab>>(-0x2*_0x53851c&0x6)):0x0){_0x20d7ad=_0x4d3d01['indexOf'](_0x20d7ad);}for(let _0x2c5bc5=0x0,_0x55eacc=_0x226d96['length'];_0x2c5bc5<_0x55eacc;_0x2c5bc5++){_0x30ddbf+='%'+('00'+_0x226d96['charCodeAt'](_0x2c5bc5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x30ddbf);};a0_0x7d74['MhSpzH']=_0x2e83d4,a0_0x7d74['fbGNqi']={},a0_0x7d74['NzONPz']=!![];}const _0xfcfa13=_0x55973e[0x0],_0x3fa485=_0x133d56+_0xfcfa13,_0x4bb1c1=a0_0x7d74['fbGNqi'][_0x3fa485];return!_0x4bb1c1?(_0x7d74d3=a0_0x7d74['MhSpzH'](_0x7d74d3),a0_0x7d74['fbGNqi'][_0x3fa485]=_0x7d74d3):_0x7d74d3=_0x4bb1c1,_0x7d74d3;}async function executeHooks(_0xbb3591,_0x551be3){const _0x5be1b6=a0_0x5a628d,_0xfbf466={'RDznT':_0x5be1b6(0x164)};if(!_0xbb3591||!Array[_0x5be1b6(0x143)](_0xbb3591)||_0xbb3591[_0x5be1b6(0x163)]===0x0)return{'success':!![],'results':[],'hooksExecuted':0x0};const _0x4dc1c3=[];for(const _0x5d4408 of _0xbb3591){const _0x1d43af=await executeHook(_0x5d4408,_0x551be3);_0x4dc1c3[_0x5be1b6(0x148)](_0x1d43af);if(!_0x1d43af['success'])return{'success':![],'error':_0x1d43af['message']||_0xfbf466['RDznT'],'results':_0x4dc1c3,'hooksExecuted':_0x4dc1c3['length']};}return{'success':!![],'results':_0x4dc1c3,'hooksExecuted':_0x4dc1c3[_0x5be1b6(0x163)]};}module['exports']={'resolveTemplateString':resolveTemplateString,'resolveTemplateVariables':resolveTemplateVariables,'resolveUrl':resolveUrl,'buildHookContext':buildHookContext,'executeHook':executeHook,'executeHooks':executeHooks};