@restforgejs/platform 4.3.2 → 4.3.5

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 (178) 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 +0 -1
  5. package/generators/cli/endpoint/create.js +1 -1
  6. package/generators/lib/generators/model-generator.js +1 -1
  7. package/generators/lib/payload/endpoint-schema-validator.js +181 -171
  8. package/generators/lib/payload/payload-runner.js +1218 -1218
  9. package/generators/lib/payload/schema-diff.js +460 -277
  10. package/generators/lib/templates/dashboard-catalog.js +1 -1
  11. package/generators/lib/templates/db-connection-env.js +1 -1
  12. package/generators/lib/templates/dbschema-catalog.js +1 -1
  13. package/generators/lib/templates/field-validation-catalog.js +1 -1
  14. package/generators/lib/templates/mysql-template.js +1 -1
  15. package/generators/lib/templates/oracle-template.js +1 -1
  16. package/generators/lib/templates/postgres-template.js +1 -1
  17. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  18. package/generators/lib/templates/sqlite-template.js +1 -1
  19. package/generators/lib/utils/conflict-checker.js +9 -57
  20. package/generators/lib/utils/database-introspector.js +84 -0
  21. package/generators/lib/utils/file-utils.js +0 -159
  22. package/generators/lib/utils/payload-processor.js +21 -112
  23. package/integrity-manifest.json +18 -18
  24. package/node_modules/readdir-glob/node_modules/brace-expansion/index.js +1 -1
  25. package/node_modules/readdir-glob/node_modules/brace-expansion/package.json +1 -1
  26. package/package.json +1 -1
  27. package/scripts/verify-integrity.js +1 -1
  28. package/server.js +1 -1
  29. package/src/components/handlers/adjust_handler.js +1 -1
  30. package/src/components/handlers/audit_handler.js +1 -1
  31. package/src/components/handlers/delete_handler.js +1 -1
  32. package/src/components/handlers/export_handler.js +1 -1
  33. package/src/components/handlers/import_handler.js +1 -1
  34. package/src/components/handlers/insert_handler.js +1 -1
  35. package/src/components/handlers/update_handler.js +1 -1
  36. package/src/components/handlers/upload_handler.js +1 -1
  37. package/src/components/handlers/workflow_handler.js +1 -1
  38. package/src/components/integrations/webhook.js +1 -1
  39. package/src/consumers/baseConsumer.js +1 -1
  40. package/src/consumers/declarativeMapper.js +1 -1
  41. package/src/consumers/handlers/apiHandler.js +1 -1
  42. package/src/consumers/handlers/consoleHandler.js +1 -1
  43. package/src/consumers/handlers/databaseHandler.js +1 -1
  44. package/src/consumers/handlers/index.js +1 -1
  45. package/src/consumers/handlers/kafkaHandler.js +1 -1
  46. package/src/consumers/index.js +1 -1
  47. package/src/consumers/messageTransformer.js +1 -1
  48. package/src/consumers/validator.js +1 -1
  49. package/src/core/db/dialect/base-dialect.js +1 -1
  50. package/src/core/db/dialect/index.js +1 -1
  51. package/src/core/db/dialect/mysql-dialect.js +1 -1
  52. package/src/core/db/dialect/oracle-dialect.js +1 -1
  53. package/src/core/db/dialect/postgres-dialect.js +1 -1
  54. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  55. package/src/core/db/flatten-helper.js +1 -1
  56. package/src/core/db/query-builder-error.js +1 -1
  57. package/src/core/db/query-builder.js +1 -1
  58. package/src/core/db/relation-helper.js +1 -1
  59. package/src/core/handlers/delete_handler.js +1 -1
  60. package/src/core/handlers/insert_handler.js +1 -1
  61. package/src/core/handlers/update_handler.js +1 -1
  62. package/src/core/models/base-model.js +1 -1
  63. package/src/core/utils/cache-manager.js +1 -1
  64. package/src/core/utils/component-engine.js +1 -1
  65. package/src/core/utils/context-builder.js +1 -1
  66. package/src/core/utils/datetime-formatter.js +1 -1
  67. package/src/core/utils/datetime-parser.js +1 -1
  68. package/src/core/utils/db.js +1 -1
  69. package/src/core/utils/logger.js +1 -1
  70. package/src/core/utils/payload-loader.js +1 -1
  71. package/src/core/utils/security-checks.js +1 -1
  72. package/src/middleware/body-options.js +1 -1
  73. package/src/middleware/cors.js +1 -1
  74. package/src/middleware/idempotency.js +1 -1
  75. package/src/middleware/rate-limiter.js +1 -1
  76. package/src/middleware/request-logger.js +1 -1
  77. package/src/middleware/security-headers.js +1 -1
  78. package/src/models/base-model-mysql.js +1 -1
  79. package/src/models/base-model-oracle.js +1 -1
  80. package/src/models/base-model-sqlite.js +1 -1
  81. package/src/models/base-model.js +1 -1
  82. package/src/pro/caching/redis-client.js +1 -1
  83. package/src/pro/caching/redis-helper.js +1 -1
  84. package/src/pro/consumers/baseConsumer.js +1 -1
  85. package/src/pro/consumers/declarativeMapper.js +1 -1
  86. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  87. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  88. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  89. package/src/pro/consumers/handlers/index.js +1 -1
  90. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  91. package/src/pro/consumers/index.js +1 -1
  92. package/src/pro/consumers/messageTransformer.js +1 -1
  93. package/src/pro/consumers/validator.js +1 -1
  94. package/src/pro/database/base-model-mysql.js +1 -1
  95. package/src/pro/database/base-model-oracle.js +1 -1
  96. package/src/pro/database/base-model-sqlite.js +1 -1
  97. package/src/pro/database/db-mysql.js +1 -1
  98. package/src/pro/database/db-oracle.js +1 -1
  99. package/src/pro/database/db-sqlite.js +1 -1
  100. package/src/pro/excel/excel-generator.js +1 -1
  101. package/src/pro/excel/excel-parser.js +1 -1
  102. package/src/pro/excel/export-service.js +1 -1
  103. package/src/pro/excel/export_handler.js +1 -1
  104. package/src/pro/excel/import-service.js +1 -1
  105. package/src/pro/excel/import-validator.js +1 -1
  106. package/src/pro/excel/import_handler.js +1 -1
  107. package/src/pro/excel/upsert-builder.js +1 -1
  108. package/src/pro/idgen/idgen-routes.js +1 -1
  109. package/src/pro/integrations/lookup-resolver.js +1 -1
  110. package/src/pro/integrations/upload-handler-v2.js +1 -1
  111. package/src/pro/integrations/upload-handler.js +1 -1
  112. package/src/pro/integrations/webhook.js +1 -1
  113. package/src/pro/locking/lock-routes.js +1 -1
  114. package/src/pro/locking/resource-lock-manager.js +1 -1
  115. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  116. package/src/pro/messaging/kafkaService.js +1 -1
  117. package/src/pro/messaging/messagehubService.js +1 -1
  118. package/src/pro/messaging/rabbitmqService.js +1 -1
  119. package/src/pro/scheduler/job-manager.js +1 -1
  120. package/src/pro/scheduler/job-routes.js +1 -1
  121. package/src/pro/scheduler/job-validator.js +1 -1
  122. package/src/pro/storage/base-storage-provider.js +1 -1
  123. package/src/pro/storage/file-metadata-helper.js +1 -1
  124. package/src/pro/storage/index.js +1 -1
  125. package/src/pro/storage/local-storage-provider.js +1 -1
  126. package/src/pro/storage/s3-storage-provider.js +1 -1
  127. package/src/pro/storage/upload-cleanup-job.js +1 -1
  128. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  129. package/src/pro/storage/upload-pending-tracker.js +1 -1
  130. package/src/pro/websocket/broadcast-helper.js +1 -1
  131. package/src/pro/websocket/index.js +1 -1
  132. package/src/pro/websocket/livesync-server.js +1 -1
  133. package/src/pro/websocket/ws-broadcaster.js +1 -1
  134. package/src/services/export-service.js +1 -1
  135. package/src/services/import-service.js +1 -1
  136. package/src/services/kafkaConsumerService.js +1 -1
  137. package/src/services/kafkaService.js +1 -1
  138. package/src/services/messagehubService.js +1 -1
  139. package/src/services/rabbitmqService.js +1 -1
  140. package/src/utils/cache-invalidation-registry.js +1 -1
  141. package/src/utils/cache-manager.js +1 -1
  142. package/src/utils/component-engine.js +1 -1
  143. package/src/utils/config-extractor.js +1 -1
  144. package/src/utils/consumerLogger.js +1 -1
  145. package/src/utils/context-builder.js +1 -1
  146. package/src/utils/dashboard-helpers.js +1 -1
  147. package/src/utils/dateHelper.js +1 -1
  148. package/src/utils/datetime-formatter.js +1 -1
  149. package/src/utils/datetime-parser.js +1 -1
  150. package/src/utils/db-bootstrap.js +1 -1
  151. package/src/utils/db-mysql.js +1 -1
  152. package/src/utils/db-oracle.js +1 -1
  153. package/src/utils/db-sqlite.js +1 -1
  154. package/src/utils/db.js +1 -1
  155. package/src/utils/demo-generator.js +1 -1
  156. package/src/utils/excel-generator.js +1 -1
  157. package/src/utils/excel-parser.js +1 -1
  158. package/src/utils/file-watcher.js +1 -1
  159. package/src/utils/id-generator.js +1 -1
  160. package/src/utils/idempotency-manager.js +1 -1
  161. package/src/utils/import-validator.js +1 -1
  162. package/src/utils/license-client.js +1 -1
  163. package/src/utils/lock-manager.js +1 -1
  164. package/src/utils/logger.js +1 -1
  165. package/src/utils/lookup-resolver.js +1 -1
  166. package/src/utils/payload-loader.js +1 -1
  167. package/src/utils/processor-response.js +1 -1
  168. package/src/utils/rabbitmq.js +1 -1
  169. package/src/utils/redis-client.js +1 -1
  170. package/src/utils/redis-helper.js +1 -1
  171. package/src/utils/request-scope.js +1 -1
  172. package/src/utils/security-checks.js +1 -1
  173. package/src/utils/service-resolver.js +1 -1
  174. package/src/utils/shutdown-coordinator.js +1 -1
  175. package/src/utils/trusted-keys.js +1 -1
  176. package/src/utils/upload-handler.js +1 -1
  177. package/src/utils/upsert-builder.js +1 -1
  178. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x261e05=a0_0x1f5e;(function(_0x4d6fd4,_0x1ac103){const _0x30c30a=a0_0x1f5e,_0x31b85e=_0x4d6fd4();while(!![]){try{const _0x1741b0=parseInt(_0x30c30a(0x17a))/0x1+-parseInt(_0x30c30a(0x154))/0x2+parseInt(_0x30c30a(0x166))/0x3+-parseInt(_0x30c30a(0x167))/0x4*(parseInt(_0x30c30a(0x139))/0x5)+parseInt(_0x30c30a(0x15b))/0x6+-parseInt(_0x30c30a(0x16f))/0x7+-parseInt(_0x30c30a(0x178))/0x8;if(_0x1741b0===_0x1ac103)break;else _0x31b85e['push'](_0x31b85e['shift']());}catch(_0x3e474f){_0x31b85e['push'](_0x31b85e['shift']());}}}(a0_0x4d06,0xa2c31));const redisClient=require('./redis-client'),{logger}=require(a0_0x261e05(0x131)),{v4:uuidv4}=require(a0_0x261e05(0x169));function a0_0x1f5e(_0x11d916,_0x4c966c){_0x11d916=_0x11d916-0x124;const _0x4d0648=a0_0x4d06();let _0x1f5e0b=_0x4d0648[_0x11d916];if(a0_0x1f5e['VBTjOe']===undefined){var _0x4ce606=function(_0x141edb){const _0x364b54='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x305f6a='',_0x5149e8='';for(let _0x2c8d38=0x0,_0x592edc,_0x1eef34,_0x30ae88=0x0;_0x1eef34=_0x141edb['charAt'](_0x30ae88++);~_0x1eef34&&(_0x592edc=_0x2c8d38%0x4?_0x592edc*0x40+_0x1eef34:_0x1eef34,_0x2c8d38++%0x4)?_0x305f6a+=String['fromCharCode'](0xff&_0x592edc>>(-0x2*_0x2c8d38&0x6)):0x0){_0x1eef34=_0x364b54['indexOf'](_0x1eef34);}for(let _0x543d3f=0x0,_0x212031=_0x305f6a['length'];_0x543d3f<_0x212031;_0x543d3f++){_0x5149e8+='%'+('00'+_0x305f6a['charCodeAt'](_0x543d3f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5149e8);};a0_0x1f5e['OiTHRp']=_0x4ce606,a0_0x1f5e['QjhCKb']={},a0_0x1f5e['VBTjOe']=!![];}const _0x5280c9=_0x4d0648[0x0],_0x536fd2=_0x11d916+_0x5280c9,_0x358a36=a0_0x1f5e['QjhCKb'][_0x536fd2];return!_0x358a36?(_0x1f5e0b=a0_0x1f5e['OiTHRp'](_0x1f5e0b),a0_0x1f5e['QjhCKb'][_0x536fd2]=_0x1f5e0b):_0x1f5e0b=_0x358a36,_0x1f5e0b;}class LockManager{constructor(){const _0x305b0e=a0_0x261e05;this[_0x305b0e(0x124)]=null,this[_0x305b0e(0x138)]=null,this['_defaultTTL']=null,this['_retryCount']=null,this['_retryDelay']=null,this['_strategy']=null,this[_0x305b0e(0x16b)]=null,this['_initialized']=![];}[a0_0x261e05(0x146)](){const _0x4d7051=a0_0x261e05,_0x2d4ec6={'NxxzC':'4|2|7|3|6|1|8|0|5','spNpL':'true','KrgLd':_0x4d7051(0x16d),'BKuFQ':'lock_config_init'},_0x249f41=_0x2d4ec6[_0x4d7051(0x15a)]['split']('|');let _0x9ff8cb=0x0;while(!![]){switch(_0x249f41[_0x9ff8cb++]){case'0':this[_0x4d7051(0x15e)]=!![];continue;case'1':this['_strategy']=process['env'][_0x4d7051(0x128)]||'retry';continue;case'2':this[_0x4d7051(0x138)]=process['env']['LOCK_DISTRIBUTED_ENABLED']===_0x2d4ec6['spNpL'];continue;case'3':this[_0x4d7051(0x16c)]=parseInt(process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3;continue;case'4':this[_0x4d7051(0x124)]=_0x2d4ec6['KrgLd'];continue;case'5':logger[_0x4d7051(0x14b)]({'event':_0x2d4ec6[_0x4d7051(0x158)],'enabled':this[_0x4d7051(0x138)],'strategy':this[_0x4d7051(0x172)],'ttl':this['_defaultTTL'],'retryCount':this[_0x4d7051(0x16c)],'retryDelay':this[_0x4d7051(0x163)],'workerId':this[_0x4d7051(0x16b)]},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this['_enabled']+_0x4d7051(0x12d)+this[_0x4d7051(0x172)]);continue;case'6':this[_0x4d7051(0x163)]=parseInt(process['env'][_0x4d7051(0x16e)],0xa)||0x64;continue;case'7':this[_0x4d7051(0x174)]=parseInt(process[_0x4d7051(0x14a)]['LOCK_DISTRIBUTED_TTL'],0xa)||0xa;continue;case'8':this['_workerId']='worker-'+process[_0x4d7051(0x13b)];continue;}break;}}['_ensureInitialized'](){const _0x2e1a80=a0_0x261e05;!this['_initialized']&&this[_0x2e1a80(0x146)]();}get[a0_0x261e05(0x15f)](){return this['_ensureInitialized'](),this['_prefix'];}get['enabled'](){return this['_ensureInitialized'](),this['_enabled'];}get['defaultTTL'](){const _0x42566c=a0_0x261e05;return this[_0x42566c(0x179)](),this[_0x42566c(0x174)];}get[a0_0x261e05(0x130)](){return this['_ensureInitialized'](),this['_retryCount'];}get[a0_0x261e05(0x14e)](){const _0xd81a28=a0_0x261e05;return this[_0xd81a28(0x179)](),this[_0xd81a28(0x163)];}get[a0_0x261e05(0x15d)](){const _0x396a20=a0_0x261e05;return this[_0x396a20(0x179)](),this['_strategy'];}get['workerId'](){const _0x182baa=a0_0x261e05;return this[_0x182baa(0x179)](),this['_workerId'];}['buildLockKey'](_0x5809bd){const _0x2b9e25=a0_0x261e05,{module:_0x4bc7c7,endpoint:_0x43c225,lockType:_0x15652b,recordId:_0x52b9d1}=_0x5809bd;if(_0x52b9d1)return''+this[_0x2b9e25(0x15f)]+_0x4bc7c7+':'+_0x43c225+':'+_0x52b9d1+':'+_0x15652b;return''+this[_0x2b9e25(0x15f)]+_0x4bc7c7+':'+_0x43c225+':'+_0x15652b;}[a0_0x261e05(0x14f)](){const _0xa441db=a0_0x261e05;return this[_0xa441db(0x161)]+':'+uuidv4()+':'+Date['now']();}async['acquireReadLock'](_0x3f8c1d){const _0x91f3b1=a0_0x261e05,_0x25186e={'euxJe':'write','ncCgO':'read','IdAwb':function(_0x225efb,_0x515f23){return _0x225efb<_0x515f23;},'XUrFX':function(_0x5cee42,_0x418c12){return _0x5cee42*_0x418c12;},'LaGTR':_0x91f3b1(0x148),'SeLzj':'READ\x20lock\x20error'};if(!this[_0x91f3b1(0x132)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x12105a=this[_0x91f3b1(0x173)]({..._0x3f8c1d,'lockType':_0x25186e['euxJe']}),_0x9105fc=this['buildLockKey']({..._0x3f8c1d,'lockType':_0x25186e['ncCgO']}),_0x53aa6a=this['generateLockValue']();try{const _0x4f5abc=redisClient['getClient']();for(let _0x42be1b=0x0;_0x25186e[_0x91f3b1(0x12c)](_0x42be1b,this['retryCount']);_0x42be1b++){const _0x47af44=await _0x4f5abc['get'](_0x12105a);if(!_0x47af44){await _0x4f5abc[_0x91f3b1(0x12e)](_0x9105fc),await _0x4f5abc[_0x91f3b1(0x170)](_0x9105fc,this[_0x91f3b1(0x127)]);const _0x13b2c7=_0x9105fc+':'+_0x53aa6a;return await _0x4f5abc['setex'](_0x13b2c7,this[_0x91f3b1(0x127)],_0x53aa6a),logger[_0x91f3b1(0x153)]({'event':_0x91f3b1(0x145),'key':_0x9105fc,'value':_0x53aa6a},_0x91f3b1(0x175)),{'success':!![],'lockValue':_0x53aa6a,'lockKey':_0x13b2c7};}logger[_0x91f3b1(0x153)]({'event':'read_lock_waiting','writeKey':_0x12105a,'attempt':_0x42be1b},'Waiting\x20for\x20WRITE\x20lock\x20to\x20release'),await this['sleep'](_0x25186e[_0x91f3b1(0x133)](this[_0x91f3b1(0x14e)],Math[_0x91f3b1(0x13d)](0x2,_0x42be1b)));}return logger[_0x91f3b1(0x13f)]({'event':_0x91f3b1(0x160),'key':_0x9105fc},_0x25186e[_0x91f3b1(0x135)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x388078){return logger['error']({'event':'read_lock_error','error':_0x388078['message']},_0x25186e['SeLzj']),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x5a78d1){const _0x464975=a0_0x261e05,_0x55a1a0={'KxZoH':_0x464975(0x171),'icEJK':'reject','hQZeJ':'WRITE\x20lock\x20acquired\x20(reject\x20mode)','vABHx':_0x464975(0x159),'LPMJs':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','LtLwd':function(_0x4bf10c,_0x1c01e8){return _0x4bf10c===_0x1c01e8;},'gVrei':_0x464975(0x176),'FJrbg':'write_lock_waiting','IZekD':function(_0x30401f,_0x295830){return _0x30401f*_0x295830;},'PigDL':'write_lock_error'};if(!this[_0x464975(0x132)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x36b6ad=this[_0x464975(0x173)]({..._0x5a78d1,'lockType':_0x55a1a0['KxZoH']}),_0x127704=this[_0x464975(0x173)]({..._0x5a78d1,'lockType':'read'}),_0xcf4915=this['generateLockValue']();try{const _0x22b7a5=redisClient['getClient']();if(this[_0x464975(0x15d)]===_0x464975(0x156)){const _0x4d7d0f=await _0x22b7a5['set'](_0x36b6ad,_0xcf4915,'EX',this[_0x464975(0x127)],'NX');if(_0x4d7d0f==='OK')return logger[_0x464975(0x153)]({'event':'write_lock_acquired','key':_0x36b6ad,'value':_0xcf4915,'strategy':_0x55a1a0[_0x464975(0x147)]},_0x55a1a0['hQZeJ']),{'success':!![],'lockValue':_0xcf4915,'lockKey':_0x36b6ad};return logger[_0x464975(0x153)]({'event':_0x55a1a0[_0x464975(0x12a)],'key':_0x36b6ad},_0x55a1a0[_0x464975(0x152)]),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x132740=0x0;_0x132740<this[_0x464975(0x130)];_0x132740++){const [_0x32140a,_0x9cd71e]=await Promise['all']([_0x22b7a5[_0x464975(0x13c)](_0x127704),_0x22b7a5[_0x464975(0x13c)](_0x36b6ad)]);if(!_0x9cd71e&&(!_0x32140a||_0x55a1a0['LtLwd'](parseInt(_0x32140a),0x0))){const _0x56486c=await _0x22b7a5[_0x464975(0x141)](_0x36b6ad,_0xcf4915,'EX',this['defaultTTL'],'NX');if(_0x56486c==='OK')return logger[_0x464975(0x153)]({'event':'write_lock_acquired','key':_0x36b6ad,'value':_0xcf4915,'strategy':_0x55a1a0['gVrei']},_0x464975(0x13a)),{'success':!![],'lockValue':_0xcf4915,'lockKey':_0x36b6ad};}logger['debug']({'event':_0x55a1a0['FJrbg'],'writeKey':_0x36b6ad,'readCount':_0x32140a,'attempt':_0x132740},_0x464975(0x16a)),await this['sleep'](_0x55a1a0['IZekD'](this[_0x464975(0x14e)],Math[_0x464975(0x13d)](0x2,_0x132740)));}return logger['warn']({'event':_0x464975(0x165),'key':_0x36b6ad},'WRITE\x20lock\x20acquire\x20timeout'),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x555124){return logger[_0x464975(0x14c)]({'event':_0x55a1a0['PigDL'],'error':_0x555124['message']},_0x464975(0x177)),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x261e05(0x168)](_0x3445cc,_0x1ada98){const _0x58f0ce=a0_0x261e05,_0x404938={'RZHKs':function(_0x536d03,_0x401045){return _0x536d03>_0x401045;},'PDckL':_0x58f0ce(0x142),'jvMWg':'Cannot\x20release\x20lock\x20-\x20not\x20owner'};if(!this[_0x58f0ce(0x132)]||!_0x3445cc)return!![];try{const _0x39eb2e=redisClient[_0x58f0ce(0x136)]();if(_0x3445cc[_0x58f0ce(0x15c)](':read:')){await _0x39eb2e[_0x58f0ce(0x162)](_0x3445cc);const _0x537449=_0x3445cc['substring'](0x0,_0x3445cc['lastIndexOf'](':')),_0x4cb2a2=await _0x39eb2e[_0x58f0ce(0x13c)](_0x537449);return _0x4cb2a2&&_0x404938[_0x58f0ce(0x12f)](parseInt(_0x4cb2a2),0x0)&&await _0x39eb2e[_0x58f0ce(0x137)](_0x537449),logger['debug']({'event':_0x58f0ce(0x157),'key':_0x3445cc},'READ\x20lock\x20released'),!![];}const _0x50a65d=_0x58f0ce(0x12b),_0x16d097=await _0x39eb2e['eval'](_0x50a65d,0x1,_0x3445cc,_0x1ada98);if(_0x16d097===0x1)return logger['debug']({'event':_0x58f0ce(0x149),'key':_0x3445cc},'WRITE\x20lock\x20released'),!![];return logger['warn']({'event':_0x404938['PDckL'],'key':_0x3445cc},_0x404938['jvMWg']),![];}catch(_0x184cea){return logger[_0x58f0ce(0x14c)]({'event':'lock_release_error','key':_0x3445cc,'error':_0x184cea[_0x58f0ce(0x14d)]},_0x58f0ce(0x126)),![];}}async[a0_0x261e05(0x13e)](_0x2fdb54,_0x4f9704,_0x351b40=null){const _0x38b63d=a0_0x261e05,_0x1e8bd9={'RgPCl':function(_0xcf84a0,_0x5ceff7){return _0xcf84a0===_0x5ceff7;},'UJWbf':'lock_extended'};if(!this[_0x38b63d(0x132)]||!_0x2fdb54)return!![];try{const _0x3b3f32=redisClient['getClient'](),_0x6d42a1=_0x38b63d(0x143),_0xc949c0=await _0x3b3f32[_0x38b63d(0x140)](_0x6d42a1,0x1,_0x2fdb54,_0x4f9704,_0x351b40||this[_0x38b63d(0x127)]);if(_0x1e8bd9['RgPCl'](_0xc949c0,0x1))return logger['debug']({'event':_0x1e8bd9['UJWbf'],'key':_0x2fdb54,'ttl':_0x351b40||this[_0x38b63d(0x127)]},_0x38b63d(0x129)),!![];return![];}catch(_0x95adde){return logger[_0x38b63d(0x14c)]({'event':_0x38b63d(0x151),'key':_0x2fdb54,'error':_0x95adde[_0x38b63d(0x14d)]},'Lock\x20extend\x20error'),![];}}[a0_0x261e05(0x125)](){const _0x3875b3=a0_0x261e05;return this[_0x3875b3(0x132)];}[a0_0x261e05(0x144)](_0xd27853){return new Promise(_0x507542=>setTimeout(_0x507542,_0xd27853));}async['getLockInfo'](_0x42bba7){const _0x5c7fbb=a0_0x261e05,_0x3e5c8f={'OVqiN':'write','LyjQY':function(_0x2ba4a1,_0x3a01d3){return _0x2ba4a1||_0x3a01d3;}};if(!this['enabled'])return{'enabled':![]};try{const _0xced578=redisClient[_0x5c7fbb(0x136)](),_0x468f05=this[_0x5c7fbb(0x173)]({..._0x42bba7,'lockType':_0x3e5c8f[_0x5c7fbb(0x164)]}),_0x179941=this['buildLockKey']({..._0x42bba7,'lockType':'read'}),[_0x23e4b7,_0x3affb0]=await Promise[_0x5c7fbb(0x150)]([_0xced578[_0x5c7fbb(0x13c)](_0x468f05),_0xced578['get'](_0x179941)]);return{'enabled':!![],'writeLock':_0x3e5c8f[_0x5c7fbb(0x155)](_0x23e4b7,null),'readCount':parseInt(_0x3affb0)||0x0,'writeKey':_0x468f05,'readKey':_0x179941};}catch(_0x49c22b){return{'enabled':!![],'error':_0x49c22b['message']};}}}module[a0_0x261e05(0x134)]=new LockManager();function a0_0x4d06(){const _0xcc014b=['ywXS','Bg9JA19LEhrLBMrFzxjYB3i','tfbnsNm','zgvIDwC','ndiXmZG4v0fpBNbb','thLQuvK','CMvQzwn0','CMvHzf9SB2nRx3jLBgvHC2vK','qKT1rLe','D3jPDgvFBg9JA19YzwPLy3rLza','tNH4EKm','ndK2otC1oejZtLLvva','Aw5JBhvKzxm','C3rYyxrLz3K','x2LUAxrPywXPEMvK','ChjLzML4','CMvHzf9SB2nRx3rPBwvVDxq','D29YA2vYswq','zgvS','x3jLDhj5rgvSyxK','t1zXAu4','D3jPDgvFBg9JA190Aw1LB3v0','mtyXntGWm1P5z3PHsq','ndy0odrtuwL5Dwi','CMvSzwfZzuXVy2S','DxvPza','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','x3DVCMTLCKLK','x3jLDhj5q291BNq','CMy6Bg9JAZO','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','ndeWntiYDu54BufV','zxHWAxjL','D3jPDgu','x3n0CMf0zwD5','yNvPBgrmB2nRs2v5','x2rLzMf1BhruveW','uKvbrcbSB2nRigfJCxvPCMvK','CMv0CNK','v1jjveuGBg9JAYbLCNjVCG','mteXnZm0nJrTrejlvg8','x2vUC3vYzuLUAxrPywXPEMvK','mteXnJG3nwfLzurOvW','x3bYzwzPEa','AxnfBMfIBgvK','tg9JAYbYzwXLyxnLigvYCM9Y','zgvMyxvSDfruta','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','tg9JAYbuveWGzxH0zw5Kzwq','DKfcshG','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','swrbD2i','lcbZDhjHDgvNEtOG','Aw5JCG','uLPis3m','CMv0CNLdB3vUDa','lI9SB2DNzxi','zw5HyMXLza','wfvYrLG','zxHWB3j0CW','tgfhvfi','z2v0q2XPzw50','zgvJCG','x2vUywjSzwq','nJvotKD5ruS','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','CgLK','z2v0','Cg93','zxH0zw5Ktg9JAW','D2fYBG','zxzHBa','C2v0','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzxHWAxjLiIWGs0vzu1SXxsWGqvjhvLSYxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','C2XLzxa','CMvHzf9SB2nRx2fJCxvPCMvK','x2LUAxrdB25MAwC','AwnfsKS','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','D3jPDgvFBg9JA19YzwXLyxnLza','zw52','Aw5MBW','zxjYB3i','BwvZC2fNzq','CMv0CNLezwXHEq','z2vUzxjHDgvmB2nRvMfSDwu'];a0_0x4d06=function(){return _0xcc014b;};return a0_0x4d06();}
1
+ function a0_0x1ac1(_0x545b8a,_0x24b475){_0x545b8a=_0x545b8a-0x156;const _0x20cddb=a0_0x20cd();let _0x1ac15c=_0x20cddb[_0x545b8a];if(a0_0x1ac1['CXVZjR']===undefined){var _0x333939=function(_0x24af8e){const _0x59724b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x565b2b='',_0xa1646c='';for(let _0x31e9b0=0x0,_0x46ed5a,_0x4ad9a9,_0x3d8477=0x0;_0x4ad9a9=_0x24af8e['charAt'](_0x3d8477++);~_0x4ad9a9&&(_0x46ed5a=_0x31e9b0%0x4?_0x46ed5a*0x40+_0x4ad9a9:_0x4ad9a9,_0x31e9b0++%0x4)?_0x565b2b+=String['fromCharCode'](0xff&_0x46ed5a>>(-0x2*_0x31e9b0&0x6)):0x0){_0x4ad9a9=_0x59724b['indexOf'](_0x4ad9a9);}for(let _0x4b8113=0x0,_0xeb6d67=_0x565b2b['length'];_0x4b8113<_0xeb6d67;_0x4b8113++){_0xa1646c+='%'+('00'+_0x565b2b['charCodeAt'](_0x4b8113)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa1646c);};a0_0x1ac1['wnQpnr']=_0x333939,a0_0x1ac1['NAKMLh']={},a0_0x1ac1['CXVZjR']=!![];}const _0x115dc9=_0x20cddb[0x0],_0x2b4ed3=_0x545b8a+_0x115dc9,_0x25769e=a0_0x1ac1['NAKMLh'][_0x2b4ed3];return!_0x25769e?(_0x1ac15c=a0_0x1ac1['wnQpnr'](_0x1ac15c),a0_0x1ac1['NAKMLh'][_0x2b4ed3]=_0x1ac15c):_0x1ac15c=_0x25769e,_0x1ac15c;}const a0_0x43bb08=a0_0x1ac1;function a0_0x20cd(){const _0x1f00e6=['tg9JAYbuveWGzxH0zw5Kzwq','CMv0CNLdB3vUDa','zgvIDwC','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','CMvHzf9SB2nRx2vYCM9Y','v1jjveuGBg9JAYbLCNjVCG','qLb2BwS','C2v0','D3jPDgvFBg9JA19LCNjVCG','x3DVCMTLCKLK','CMv0CNLezwXHEq','v1jjveuGBg9JAYbYzwXLyxnLza','BgfZDeLUzgv4t2y','zw52','te9ds19esvnuuKLcvvrfrf9uveW','D3jPDgvFBg9JA190Aw1LB3v0','mZK2nZu2wef2uhfs','x2LUAxrPywXPEMvK','Bg9JA19LEhrLBMrLza','CMv0CNK','yKnrEKi','C3bSAxq','x2rLzMf1BhruveW','AxnfBMfIBgvK','D3jPDgvFBg9JA19Hy3f1AxjLza','CMvHzf9SB2nRx2fJCxvPCMvK','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','uKvbrcbSB2nRihjLBgvHC2vK','z2vUzxjHDgvmB2nRvMfSDwu','Chj4B2u','qvPwrxG','uKvbrcbSB2nRigvYCM9Y','CMvSzwfZzuXVy2S','nKLXq1nLrq','AwHABxe','zgvS','D29YA2vYswq','yNvPBgrmB2nRs2v5','ChjLzML4','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','mtaXnJC2mhngA2fYCW','CMvHzf9SB2nRx3rPBwvVDxq','yLrlEMu','D3jPDgvFBg9JA193ywL0Aw5N','mJCYmdG2yLDMywrU','zw5HyMXLza','v1jjveuGBg9JAYbYzwPLy3rLzcaTihjLy29YzcbIDxn5','x2vUC3vYzuLUAxrPywXPEMvK','C2v0zxG','CMvQzwn0','v2fPDgLUzYbMB3iGv1jjveuGBg9JAYb0BYbYzwXLyxnL','z2v0','D29YA2vYlq','yKHjsKm','mtq3nJG0oejRtwjkra','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','x2vUywjSzwq','Aw5MBW','DxDpCeC','D2fYBG','mteWndq1mMr2Au5JDa','C3rYyxrLz3K','EKjetfu','vMfyy3m','D3jPDgu','CgLK','BwvZC2fNzq','zxzHBa','nZq3nJa3BuTSr2jR','mJi3mJyZmgPwA3bWsq','Dhj1zq','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','Aw5JCG','x3jLDhj5rgvSyxK','Aw5JBhvKzxm','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','zgvMyxvSDfruta','zgvJCG','zxjYB3i','CMvHzf9SB2nRx3jLBgvHC2vK','x3n0CMf0zwD5','DgXXyK8','z2v0q2XPzw50','Bg9JA19JB25MAwDFAw5PDa','ywXS'];a0_0x20cd=function(){return _0x1f00e6;};return a0_0x20cd();}(function(_0x1fb8ff,_0x88335b){const _0x1bfdcd=a0_0x1ac1,_0x1db6d1=_0x1fb8ff();while(!![]){try{const _0x3f5369=parseInt(_0x1bfdcd(0x187))/0x1+parseInt(_0x1bfdcd(0x16a))/0x2+-parseInt(_0x1bfdcd(0x183))/0x3+parseInt(_0x1bfdcd(0x197))/0x4+-parseInt(_0x1bfdcd(0x1a0))/0x5+parseInt(_0x1bfdcd(0x17c))/0x6*(parseInt(_0x1bfdcd(0x19f))/0x7)+parseInt(_0x1bfdcd(0x191))/0x8;if(_0x3f5369===_0x88335b)break;else _0x1db6d1['push'](_0x1db6d1['shift']());}catch(_0x9af779){_0x1db6d1['push'](_0x1db6d1['shift']());}}}(a0_0x20cd,0x3bb3a));const redisClient=require('./redis-client'),{logger}=require('./logger'),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0x3a5bf1=a0_0x1ac1;this['_prefix']=null,this[_0x3a5bf1(0x193)]=null,this['_defaultTTL']=null,this['_retryCount']=null,this[_0x3a5bf1(0x1a4)]=null,this['_strategy']=null,this[_0x3a5bf1(0x163)]=null,this['_initialized']=![];}['_initConfig'](){const _0x48ba39=a0_0x1ac1,_0x5846d5={'ovsHm':function(_0x577157,_0x4d00d6){return _0x577157===_0x4d00d6;},'nMAzt':_0x48ba39(0x1a1),'prxoe':'rf:lock:','zFXew':function(_0x138809,_0x50ad8e,_0x4a7874){return _0x138809(_0x50ad8e,_0x4a7874);},'CVAKq':function(_0x107177,_0x20b5b6,_0x9b47d2){return _0x107177(_0x20b5b6,_0x9b47d2);}},_0x9e7726='4|0|8|1|5|2|7|3|6'[_0x48ba39(0x16f)]('|');let _0x8b725b=0x0;while(!![]){switch(_0x9e7726[_0x8b725b++]){case'0':this[_0x48ba39(0x193)]=_0x5846d5['ovsHm'](process['env']['LOCK_DISTRIBUTED_ENABLED'],_0x5846d5['nMAzt']);continue;case'1':this['_retryCount']=parseInt(process[_0x48ba39(0x167)]['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3;continue;case'2':this[_0x48ba39(0x1ab)]=process['env'][_0x48ba39(0x1a2)]||_0x48ba39(0x16d);continue;case'3':this[_0x48ba39(0x16b)]=!![];continue;case'4':this['_prefix']=_0x5846d5[_0x48ba39(0x178)];continue;case'5':this[_0x48ba39(0x1a4)]=_0x5846d5['zFXew'](parseInt,process[_0x48ba39(0x167)][_0x48ba39(0x174)],0xa)||0x64;continue;case'6':logger[_0x48ba39(0x194)]({'event':_0x48ba39(0x158),'enabled':this[_0x48ba39(0x193)],'strategy':this[_0x48ba39(0x1ab)],'ttl':this[_0x48ba39(0x170)],'retryCount':this['_retryCount'],'retryDelay':this['_retryDelay'],'workerId':this[_0x48ba39(0x163)]},_0x48ba39(0x192)+this[_0x48ba39(0x193)]+',\x20strategy:\x20'+this[_0x48ba39(0x1ab)]);continue;case'7':this[_0x48ba39(0x163)]=_0x48ba39(0x18f)+process[_0x48ba39(0x19c)];continue;case'8':this[_0x48ba39(0x170)]=_0x5846d5['CVAKq'](parseInt,process['env'][_0x48ba39(0x168)],0xa)||0xa;continue;}break;}}['_ensureInitialized'](){const _0x2886f9=a0_0x1ac1;!this[_0x2886f9(0x16b)]&&this['_initConfig']();}get[a0_0x43bb08(0x181)](){const _0x1776e9=a0_0x43bb08;return this[_0x1776e9(0x18a)](),this['_prefix'];}get['enabled'](){const _0x5d33e9=a0_0x43bb08;return this['_ensureInitialized'](),this[_0x5d33e9(0x193)];}get['defaultTTL'](){return this['_ensureInitialized'](),this['_defaultTTL'];}get['retryCount'](){const _0x2faa72=a0_0x43bb08;return this[_0x2faa72(0x18a)](),this['_retryCount'];}get[a0_0x43bb08(0x164)](){return this['_ensureInitialized'](),this['_retryDelay'];}get[a0_0x43bb08(0x198)](){const _0x5bf01d=a0_0x43bb08;return this['_ensureInitialized'](),this[_0x5bf01d(0x1ab)];}get[a0_0x43bb08(0x17f)](){return this['_ensureInitialized'](),this['_workerId'];}[a0_0x43bb08(0x180)](_0x3d43c7){const {module:_0x2e3ca3,endpoint:_0x174873,lockType:_0x378512,recordId:_0x214359}=_0x3d43c7;if(_0x214359)return''+this['prefix']+_0x2e3ca3+':'+_0x174873+':'+_0x214359+':'+_0x378512;return''+this['prefix']+_0x2e3ca3+':'+_0x174873+':'+_0x378512;}['generateLockValue'](){const _0xc1d7d1=a0_0x43bb08,_0x51491d={'BPvmk':function(_0x246e1f){return _0x246e1f();}};return this['workerId']+':'+_0x51491d[_0xc1d7d1(0x160)](uuidv4)+':'+Date['now']();}async['acquireReadLock'](_0xa46391){const _0x579a39=a0_0x43bb08,_0x3dde29={'zBDLU':'read','qxRrf':function(_0x531e0a,_0x33ffa4){return _0x531e0a<_0x33ffa4;},'tlqbO':_0x579a39(0x173),'omfjd':_0x579a39(0x184)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x49787d=this[_0x579a39(0x180)]({..._0xa46391,'lockType':'write'}),_0x191844=this[_0x579a39(0x180)]({..._0xa46391,'lockType':_0x3dde29[_0x579a39(0x199)]}),_0x46ba1b=this[_0x579a39(0x177)]();try{const _0x31d626=redisClient[_0x579a39(0x157)]();for(let _0x48af9b=0x0;_0x3dde29['qxRrf'](_0x48af9b,this['retryCount']);_0x48af9b++){const _0x557599=await _0x31d626['get'](_0x49787d);if(!_0x557599){await _0x31d626[_0x579a39(0x1a3)](_0x191844),await _0x31d626['expire'](_0x191844,this['defaultTTL']);const _0x471cc2=_0x191844+':'+_0x46ba1b;return await _0x31d626[_0x579a39(0x18b)](_0x471cc2,this['defaultTTL'],_0x46ba1b),logger['debug']({'event':_0x3dde29[_0x579a39(0x156)],'key':_0x191844,'value':_0x46ba1b},'READ\x20lock\x20acquired'),{'success':!![],'lockValue':_0x46ba1b,'lockKey':_0x471cc2};}logger[_0x579a39(0x15c)]({'event':'read_lock_waiting','writeKey':_0x49787d,'attempt':_0x48af9b},_0x579a39(0x18d)),await this['sleep'](this[_0x579a39(0x164)]*Math['pow'](0x2,_0x48af9b));}return logger[_0x579a39(0x196)]({'event':_0x3dde29['omfjd'],'key':_0x191844},_0x579a39(0x15d)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x2c41e3){return logger[_0x579a39(0x1a9)]({'event':_0x579a39(0x15e),'error':_0x2c41e3[_0x579a39(0x19d)]},_0x579a39(0x17a)),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x3f839a){const _0x167063=a0_0x43bb08,_0xd3d2bd={'ihZmq':function(_0x4f60f3,_0x3b1b02){return _0x4f60f3===_0x3b1b02;},'olxuX':_0x167063(0x172),'eoxdj':'WRITE\x20lock\x20acquired\x20(reject\x20mode)','myvdX':_0x167063(0x189),'QxqPt':'WRITE\x20lock\x20acquired\x20(retry\x20mode)','uwOpG':_0x167063(0x169),'bHIJC':_0x167063(0x1a6),'bmMxJ':_0x167063(0x15f)};if(!this[_0x167063(0x188)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x5847f6=this[_0x167063(0x180)]({..._0x3f839a,'lockType':'write'}),_0x52ec16=this['buildLockKey']({..._0x3f839a,'lockType':'read'}),_0x1184cb=this[_0x167063(0x177)]();try{const _0x2ec6ce=redisClient['getClient']();if(_0xd3d2bd[_0x167063(0x17d)](this[_0x167063(0x198)],_0x167063(0x18c))){const _0x4e6af0=await _0x2ec6ce['set'](_0x5847f6,_0x1184cb,'EX',this['defaultTTL'],'NX');if(_0x4e6af0==='OK')return logger['debug']({'event':_0xd3d2bd['olxuX'],'key':_0x5847f6,'value':_0x1184cb,'strategy':'reject'},_0xd3d2bd['eoxdj']),{'success':!![],'lockValue':_0x1184cb,'lockKey':_0x5847f6};return logger[_0x167063(0x15c)]({'event':'write_lock_rejected','key':_0x5847f6},_0xd3d2bd['myvdX']),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x5ca7c6=0x0;_0x5ca7c6<this[_0x167063(0x15b)];_0x5ca7c6++){const [_0x597330,_0x3c7445]=await Promise[_0x167063(0x159)]([_0x2ec6ce[_0x167063(0x18e)](_0x52ec16),_0x2ec6ce[_0x167063(0x18e)](_0x5847f6)]);if(!_0x3c7445&&(!_0x597330||parseInt(_0x597330)===0x0)){const _0x1c1edc=await _0x2ec6ce[_0x167063(0x161)](_0x5847f6,_0x1184cb,'EX',this['defaultTTL'],'NX');if(_0x1c1edc==='OK')return logger[_0x167063(0x15c)]({'event':'write_lock_acquired','key':_0x5847f6,'value':_0x1184cb,'strategy':'retry'},_0xd3d2bd['QxqPt']),{'success':!![],'lockValue':_0x1184cb,'lockKey':_0x5847f6};}logger['debug']({'event':_0x167063(0x186),'writeKey':_0x5847f6,'readCount':_0x597330,'attempt':_0x5ca7c6},'Waiting\x20for\x20locks\x20to\x20release'),await this['sleep'](this['retryDelay']*Math['pow'](0x2,_0x5ca7c6));}return logger['warn']({'event':_0xd3d2bd[_0x167063(0x195)],'key':_0x5847f6},_0xd3d2bd[_0x167063(0x190)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x161d69){return logger[_0x167063(0x1a9)]({'event':_0x167063(0x162),'error':_0x161d69['message']},_0xd3d2bd['bmMxJ']),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x43bb08(0x17b)](_0x18c6d5,_0x47d184){const _0x460b94=a0_0x43bb08,_0x453909={'ukmvw':':read:','lNXJf':function(_0x2d3f33,_0xfe7dd0){return _0x2d3f33(_0xfe7dd0);},'GrJqI':_0x460b94(0x176),'jKjsR':function(_0x2fb853,_0x321a7d){return _0x2fb853===_0x321a7d;},'AZVEx':'write_lock_released','QDAsr':_0x460b94(0x165),'uPSrg':'lock_release_error'};if(!this[_0x460b94(0x188)]||!_0x18c6d5)return!![];try{const _0x4ee7e0=redisClient['getClient']();if(_0x18c6d5[_0x460b94(0x1a5)](_0x453909['ukmvw'])){await _0x4ee7e0[_0x460b94(0x17e)](_0x18c6d5);const _0x557622=_0x18c6d5['substring'](0x0,_0x18c6d5[_0x460b94(0x166)](':')),_0x473cb7=await _0x4ee7e0[_0x460b94(0x18e)](_0x557622);return _0x473cb7&&_0x453909['lNXJf'](parseInt,_0x473cb7)>0x0&&await _0x4ee7e0[_0x460b94(0x1a8)](_0x557622),logger['debug']({'event':_0x460b94(0x1aa),'key':_0x18c6d5},_0x453909['GrJqI']),!![];}const _0x812b87=_0x460b94(0x175),_0x9e3c06=await _0x4ee7e0[_0x460b94(0x19e)](_0x812b87,0x1,_0x18c6d5,_0x47d184);if(_0x453909['jKjsR'](_0x9e3c06,0x1))return logger[_0x460b94(0x15c)]({'event':_0x453909[_0x460b94(0x179)],'key':_0x18c6d5},_0x453909['QDAsr']),!![];return logger['warn']({'event':_0x460b94(0x182),'key':_0x18c6d5},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0x56e685){return logger['error']({'event':_0x453909['uPSrg'],'key':_0x18c6d5,'error':_0x56e685[_0x460b94(0x19d)]},'Lock\x20release\x20error'),![];}}async['extendLock'](_0x125eb5,_0x56feca,_0x68d8=null){const _0x236672=a0_0x43bb08,_0x2c2095={'bCQzB':function(_0x3a0704,_0x5d47f6){return _0x3a0704===_0x5d47f6;},'VaXcs':_0x236672(0x16c),'bTKze':'Lock\x20extend\x20error'};if(!this[_0x236672(0x188)]||!_0x125eb5)return!![];try{const _0x5cf0ca=redisClient['getClient'](),_0x58fa9e='\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20redis.call(\x22expire\x22,\x20KEYS[1],\x20ARGV[2])\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x200\x0a\x20\x20\x20\x20\x20\x20\x20\x20end\x0a\x20\x20\x20\x20\x20\x20',_0x436413=await _0x5cf0ca['eval'](_0x58fa9e,0x1,_0x125eb5,_0x56feca,_0x68d8||this[_0x236672(0x1a7)]);if(_0x2c2095[_0x236672(0x16e)](_0x436413,0x1))return logger[_0x236672(0x15c)]({'event':_0x2c2095[_0x236672(0x19a)],'key':_0x125eb5,'ttl':_0x68d8||this[_0x236672(0x1a7)]},_0x236672(0x15a)),!![];return![];}catch(_0x1a642a){return logger[_0x236672(0x1a9)]({'event':'lock_extend_error','key':_0x125eb5,'error':_0x1a642a['message']},_0x2c2095[_0x236672(0x185)]),![];}}[a0_0x43bb08(0x171)](){const _0x3910b0=a0_0x43bb08;return this[_0x3910b0(0x188)];}['sleep'](_0x1fe4e8){return new Promise(_0x54a404=>setTimeout(_0x54a404,_0x1fe4e8));}async['getLockInfo'](_0x56a37b){const _0x20c421=a0_0x43bb08,_0x396924={'iaZHf':function(_0x2c368e,_0x112c29){return _0x2c368e(_0x112c29);}};if(!this[_0x20c421(0x188)])return{'enabled':![]};try{const _0x493034=redisClient[_0x20c421(0x157)](),_0x4e5fd8=this['buildLockKey']({..._0x56a37b,'lockType':_0x20c421(0x19b)}),_0x34d516=this['buildLockKey']({..._0x56a37b,'lockType':'read'}),[_0x1eb6de,_0x50e4e1]=await Promise[_0x20c421(0x159)]([_0x493034[_0x20c421(0x18e)](_0x4e5fd8),_0x493034['get'](_0x34d516)]);return{'enabled':!![],'writeLock':_0x1eb6de||null,'readCount':_0x396924['iaZHf'](parseInt,_0x50e4e1)||0x0,'writeKey':_0x4e5fd8,'readKey':_0x34d516};}catch(_0x111528){return{'enabled':!![],'error':_0x111528['message']};}}}module['exports']=new LockManager();
@@ -1 +1 @@
1
- const a0_0x3cf150=a0_0x1a6e;(function(_0x524335,_0x4704a1){const _0x4dd850=a0_0x1a6e,_0x43ca40=_0x524335();while(!![]){try{const _0x3df870=-parseInt(_0x4dd850(0xc6))/0x1+parseInt(_0x4dd850(0xfc))/0x2+-parseInt(_0x4dd850(0xe3))/0x3*(parseInt(_0x4dd850(0x158))/0x4)+parseInt(_0x4dd850(0x177))/0x5+-parseInt(_0x4dd850(0xd6))/0x6*(-parseInt(_0x4dd850(0x104))/0x7)+-parseInt(_0x4dd850(0x121))/0x8+parseInt(_0x4dd850(0x117))/0x9;if(_0x3df870===_0x4704a1)break;else _0x43ca40['push'](_0x43ca40['shift']());}catch(_0x3b10f9){_0x43ca40['push'](_0x43ca40['shift']());}}}(a0_0xf325,0xe5840));const pino=require(a0_0x3cf150(0x132)),fs=require('fs'),path=require(a0_0x3cf150(0xce));let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x1a6e(_0x56b168,_0x46e072){_0x56b168=_0x56b168-0xc5;const _0xf32513=a0_0xf325();let _0x1a6ee6=_0xf32513[_0x56b168];if(a0_0x1a6e['wNgdwa']===undefined){var _0x71c73=function(_0x2b2702){const _0x21fefe='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4e9068='',_0x49c517='';for(let _0x4f41fa=0x0,_0x2e95c4,_0x42824d,_0x3c8d72=0x0;_0x42824d=_0x2b2702['charAt'](_0x3c8d72++);~_0x42824d&&(_0x2e95c4=_0x4f41fa%0x4?_0x2e95c4*0x40+_0x42824d:_0x42824d,_0x4f41fa++%0x4)?_0x4e9068+=String['fromCharCode'](0xff&_0x2e95c4>>(-0x2*_0x4f41fa&0x6)):0x0){_0x42824d=_0x21fefe['indexOf'](_0x42824d);}for(let _0x56463d=0x0,_0x454c77=_0x4e9068['length'];_0x56463d<_0x454c77;_0x56463d++){_0x49c517+='%'+('00'+_0x4e9068['charCodeAt'](_0x56463d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49c517);};a0_0x1a6e['AcYDvu']=_0x71c73,a0_0x1a6e['nLGhNH']={},a0_0x1a6e['wNgdwa']=!![];}const _0x46887c=_0xf32513[0x0],_0x28b5ed=_0x56b168+_0x46887c,_0x2bf489=a0_0x1a6e['nLGhNH'][_0x28b5ed];return!_0x2bf489?(_0x1a6ee6=a0_0x1a6e['AcYDvu'](_0x1a6ee6),a0_0x1a6e['nLGhNH'][_0x28b5ed]=_0x1a6ee6):_0x1a6ee6=_0x2bf489,_0x1a6ee6;}const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':a0_0x3cf150(0x16f),'singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env'][a0_0x3cf150(0x100)]!==a0_0x3cf150(0x10e),logLevel=process['env']['LOG_LEVEL']||a0_0x3cf150(0x11d);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':a0_0x3cf150(0x124),'version':process[a0_0x3cf150(0x139)]['APP_VERSION']||a0_0x3cf150(0x178),'env':process['env'][a0_0x3cf150(0x100)]||a0_0x3cf150(0x129)},'timestamp':pino['stdTimeFunctions']['isoTime'],'redact':{'paths':['req.headers.authorization',a0_0x3cf150(0x11f),'password','token','apiKey','DB_PASSWORD',a0_0x3cf150(0x131)],'censor':a0_0x3cf150(0x175)},'serializers':{'req':_0x50d1a6=>({'id':_0x50d1a6['id'],'method':_0x50d1a6[a0_0x3cf150(0xc5)],'url':_0x50d1a6[a0_0x3cf150(0x167)],'path':_0x50d1a6[a0_0x3cf150(0xce)],'remoteAddress':_0x50d1a6['ip']||_0x50d1a6[a0_0x3cf150(0x15b)]?.['remoteAddress']}),'res':_0x423370=>({'statusCode':_0x423370['statusCode'],'headers':_0x423370['getHeaders']?.()}),'err':pino['stdSerializers'][a0_0x3cf150(0x103)]}});function initFileLogging(){const _0x503745=a0_0x3cf150,_0x429199={'Tufxe':function(_0x1f486a,_0x2dbac5){return _0x1f486a===_0x2dbac5;},'gzNEB':'true','iELqI':'app.log','riWcw':'file_logging_enabled','rZrKe':function(_0x9277fc,_0x4b51a2,_0x37a5da){return _0x9277fc(_0x4b51a2,_0x37a5da);},'vuknD':_0x503745(0x11d)};if(fileLoggingInitialized)return;logToFile=_0x429199[_0x503745(0xf7)](process[_0x503745(0x139)][_0x503745(0xe7)],_0x429199['gzNEB']);const _0x3a7002=process['env'][_0x503745(0xea)]||_0x503745(0xf0);logDir=process[_0x503745(0x139)]['LOG_DIR']||_0x503745(0xcc)+_0x3a7002,serviceName=process['env']['SERVICE_NAME']||_0x503745(0x124),sqlLogEnabled=process[_0x503745(0x139)][_0x503745(0xee)]===_0x503745(0x13b),sqlLogLevel=process[_0x503745(0x139)][_0x503745(0x113)]||'debug',sqlLogParams=process[_0x503745(0x139)]['SQL_LOG_PARAMS']!=='false',sqlLogSlowThreshold=parseInt(process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x393cb5=path['resolve'](process[_0x503745(0x106)](),logDir);try{!fs[_0x503745(0x107)](_0x393cb5)&&fs[_0x503745(0x151)](_0x393cb5,{'recursive':!![]});}catch(_0x1a0d97){console[_0x503745(0x183)](_0x503745(0x185)+_0x393cb5+':',_0x1a0d97['message']),fileLoggingInitialized=!![];return;}const _0x50f564=path['join'](_0x393cb5,_0x429199[_0x503745(0x152)]),_0x39f692=path['join'](_0x393cb5,_0x503745(0xf6));try{appLogStream=fs['createWriteStream'](_0x50f564,{'flags':'a'}),errorLogStream=fs[_0x503745(0x119)](_0x39f692,{'flags':'a'}),fileLoggingInitialized=!![];const _0x146694={'event':_0x429199[_0x503745(0x174)],'logDir':_0x393cb5,'files':['app.log',_0x503745(0xf6)]},_0x3e95cf=_0x503745(0xfd)+_0x393cb5;logger[_0x503745(0x11d)](_0x146694,_0x3e95cf),_0x429199[_0x503745(0x125)](writeToFileLog,{..._0x146694,'level':_0x429199[_0x503745(0x15d)],'msg':_0x3e95cf,'time':new Date()[_0x503745(0x123)]()},_0x429199['vuknD']);}catch(_0x35f7b2){console['error']('Failed\x20to\x20create\x20log\x20streams:',_0x35f7b2['message']),fileLoggingInitialized=!![];}}function writeToFileLog(_0x35bb91,_0x4f6198){const _0x5a8c80=a0_0x3cf150,_0x49de4a={'PdoxU':function(_0x1dcea7,_0x304186){return _0x1dcea7===_0x304186;},'TNEMl':_0x5a8c80(0x183),'vvDal':'fatal'};if(!logToFile||!appLogStream)return;const _0x327280={'service':serviceName,..._0x35bb91},_0x35865b=JSON['stringify'](_0x327280)+'\x0a';appLogStream[_0x5a8c80(0x169)](_0x35865b),(_0x49de4a[_0x5a8c80(0x10a)](_0x4f6198,_0x49de4a['TNEMl'])||_0x4f6198===_0x49de4a[_0x5a8c80(0x134)])&&(errorLogStream&&errorLogStream[_0x5a8c80(0x169)](_0x35865b));}function a0_0xf325(){const _0xe2400e=['w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','ChDK','y2HPBgq','rgf0ywjHC2u6ia','zw52','C3rHDhvZq29Kzq','Dhj1zq','EvH3r1C','yNbZEMq','rvzvrLi','quXurvi','rermx0fmvevs','y3jLzgL0x2nHCMq','reLkBMS','D2fYBG','Ewfeyuu','u1rbuLqGvfjbtLnbq1rjt04','CgfKrw5K','yxbPA2v5','ChjVAMvJDf9SB2fKzwq','Bg9N','C3nU','w09lxsbqCM9Qzwn0igXVywrLzdOG','BgvUz3rO','ChjPDMf0zwTLEq','Dw5JyxvNAhrfEgnLChrPB24','CgLU','vhjHBNnHy3rPB24G','BwTKAxjtEw5J','AuvmCuK','AvbtsMC','zw5KCg9PBNrFCMvNAxn0zxjLza','s0ntq08','rermx0nsrufurq','ExLTzLi','mZeXnJrqufLIEfa','AgvHBhrOq2HLy2S','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','y29UBMvJDgLVBG','Ahj0Aw1L','DNvRBKq','t0jXEKi','rxjYB3i','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','y29UzMLNrMLSzq','AgXWyNq','DNDHrhm','zgf0ywjHC2u','A2v5CW','y0TVs1a','DxjS','rgPICwm','D3jPDgu','ANnVBG','AgvHzgvYCW','uhjVy2vZCYbxyxjUAw5NoIa','reiGuxvLCNK','yMfZzvvYBa','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','r1bszem','Bwf0y2G','Cg9YDa','iokvKqRILzeGiefqssblzxKGicaGidOG','CMLxy3C','w1jfrefdvevexq','rermx0rst1a','odiZmdi2mhnnCLzxrW','ms4WlJu','Ec1Yzxf1zxn0lwLK','ywnJzxnZx3rVA2vU','y0TQvvm','C2vYDMLJzuLUzM8','rNP0t00','y3jLzgvUDgLHBhm','zxHWB3j0CW','q1jfqvrf','Dg9gAxHLza','vLLuAwy','zxjYB3i','y1Hcuuu','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','Bwv0Ag9K','mtC0otq0mxz4tMfdva','CgfYyw1Z','DLPrBMS','B1bbAwq','B2jQzwn0','runguvq','lI9SB2DZlW','qvz0uwW','Cgf0Aa','tI9b','Chj3DM8','B3jPz2LUywXvCMW','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','q09ntuLu','zgvIDwC','vvbeqvrf','nLPbDvrvsa','wvjHs2W','C3rHDhvZ','C2vJCMv0','y3z2','v2PYDe8','DhLWzq','C3rHCNrZv2L0Aa','C2vYDMvYx3jLywr5','Dg9mB3DLCKnHC2u','icdIHPiG','q0fHrLO','zMXVB3i','mtC0DxHHsezM','ChjVy2vZC193yxjUAw5N','q1zvwge','AujxuNa','te9hx1rpx0zjteu','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','AxntBg93','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','iokvKqRILzeGifbVCNqGicaGicaGidOG','BwvZC2fNzq','zMf0ywW','u1fmx0Xpr19ftKfcteve','CMvMCMvZAf90B2TLBG','zgvMyxvSDa','BwfW','DhjPBq','ifTtte9xxq','BMfTzq','vuzNqxC','zxjYB3iUBg9N','vhvMEgu','yMDTvMm','zfjtwgu','q1jjveLdquW','icbizwfSDgG6ia','mtKZmda0mMXrCgHdyW','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','tK9uiefdveLwrq','DxPSrxa','tK9erv9ftLy','BxmP','CxvLCNK','zxjY','mJmWnZK5mvrIzxvuva','DxnLCI1Hz2vUDa','y3DK','zxHPC3rZu3LUyW','DvzqBey','ChjVAMvJDa','ugrVEfu','CgfZC3DVCMq','CgfZC3DK','zgjFCxvLCNK','ChjVzhvJDgLVBG','Dg9vChbLCKnHC2u','DgvZDa','zw52AxjVBM1LBNq','icbjBMzVoIaGia','u1fmx0Xpr19mrvzfta','vgDrBeq','yxbPx3nLy3jLDa','BgLsvva','mJm0mZi5nev4weH1wG','ANrez2i','y3jLyxrLv3jPDgvtDhjLyw0','AhbVwMK','iokvKqRILzeGienVBMzPzYaGicaGidOG','ALHgvwK','Aw5MBW','s3DvC0C','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','vu5ltK9xtG','ndC3odK2DNnIrNjH','uK9mtejbq0S','Dg9ju09tDhjPBMC','CMvZDgzVCMDL','CLPYs2u','vfjbtLnbq1rjt05FqKvhsu4','wK5TuMy','ChjPDMf0zv9RzxK','zgv2zwXVCg1LBNq','Aw5JBhvKzxm','rgvMyxvSDa','su5trvju','zhjeuey','yxv0Ag9YAxPHDgLVBG','tM9Kzs5QCW','CMvTB3rLqwrKCMvZCW','sLDux1nfq1jfva','CgLUBW','C3rHy2S','DNzeywW'];a0_0xf325=function(){return _0xe2400e;};return a0_0xf325();}const createRequestLogger=(_0x3e32a7={})=>{const _0x387127=a0_0x3cf150;return logger[_0x387127(0x137)](_0x3e32a7);},logServerStart=_0x5b2bd5=>{const _0x578ba5=a0_0x3cf150,_0x102071={'iPSJg':function(_0x197fdc,_0x31fab4){return _0x197fdc/_0x31fab4;},'XOAwW':function(_0x2bdd6e,_0x14731b){return _0x2bdd6e-_0x14731b;},'cKjUS':function(_0x9f995a,_0x24a29d){return _0x9f995a(_0x24a29d);},'jXFUi':_0x578ba5(0x12b),'yemmH':'ACTIVE','WjrtO':'server_starting','KNLKb':function(_0x4c3678,_0x3f47e2,_0x850c5){return _0x4c3678(_0x3f47e2,_0x850c5);},'uHqHa':'info'},_0x1330d9=_0x578ba5(0xe8),_0x506dda=Math['max'](0x0,0x37-_0x1330d9[_0x578ba5(0x14c)]),_0x486a00=Math[_0x578ba5(0xe2)](_0x102071[_0x578ba5(0x153)](_0x506dda,0x2)),_0x18f9e9=_0x102071['XOAwW'](_0x506dda,_0x486a00),_0x56903b='║'+'\x20'['repeat'](_0x486a00)+_0x1330d9+'\x20'['repeat'](_0x18f9e9)+'║',_0x5b93c0=_0x578ba5(0xd2)+_0x56903b+_0x578ba5(0x160)+(_0x5b2bd5[_0x578ba5(0x111)]||_0x578ba5(0x12f))['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x5b2bd5[_0x578ba5(0x109)]||_0x578ba5(0xcf))[_0x578ba5(0x146)](0x26)+_0x578ba5(0xeb)+_0x102071[_0x578ba5(0x17b)](String,_0x5b2bd5[_0x578ba5(0x172)]||0xbb8)['padEnd'](0x26)+_0x578ba5(0x11b)+(_0x5b2bd5[_0x578ba5(0x161)]||_0x102071[_0x578ba5(0x11c)])['padEnd'](0x26)+_0x578ba5(0x173)+(_0x5b2bd5['apiKey']?_0x102071['yemmH']:_0x578ba5(0xfe))['padEnd'](0x26)+_0x578ba5(0x15a);console[_0x578ba5(0x149)](_0x5b93c0);const _0x400c55={'event':_0x102071[_0x578ba5(0xdb)],'project':_0x5b2bd5[_0x578ba5(0x109)],'port':_0x5b2bd5[_0x578ba5(0x172)],'config':_0x5b2bd5['configFile'],'apiKeyEnabled':!!_0x5b2bd5['apiKey']};logger[_0x578ba5(0x11d)](_0x400c55),_0x102071['KNLKb'](writeToFileLog,{..._0x400c55,'level':_0x102071['uHqHa'],'msg':'Server\x20starting:\x20'+_0x5b2bd5['project']+'\x20on\x20port\x20'+_0x5b2bd5['port'],'time':new Date()['toISOString']()},_0x102071['uHqHa']);},logServerReady=_0x1740f1=>{const _0x2c46b2=a0_0x3cf150,_0x19a776={'noqqK':_0x2c46b2(0xde),'vZQnk':_0x2c46b2(0x11d)},_0x406e3b={'event':_0x19a776['noqqK'],'port':_0x1740f1[_0x2c46b2(0x172)],'module':_0x1740f1['module'],'healthCheck':_0x1740f1[_0x2c46b2(0x159)],'serviceInfo':_0x1740f1[_0x2c46b2(0x17c)],'baseUrl':_0x1740f1[_0x2c46b2(0x16e)]},_0xaadc5c=_0x2c46b2(0x135)+_0x1740f1['port'];logger['info'](_0x406e3b,_0xaadc5c),writeToFileLog({..._0x406e3b,'level':_0x19a776[_0x2c46b2(0xc8)],'msg':_0xaadc5c,'time':new Date()['toISOString']()},_0x2c46b2(0x11d)),_0x1740f1[_0x2c46b2(0x159)]&&logger[_0x2c46b2(0x11d)](_0x2c46b2(0xfb)+_0x1740f1['healthCheck']),_0x1740f1['serviceInfo']&&logger['info'](_0x2c46b2(0x112)+_0x1740f1[_0x2c46b2(0x17c)]),_0x1740f1[_0x2c46b2(0x16e)]&&logger[_0x2c46b2(0x11d)]('\x20\x20URL:\x20\x20\x20\x20'+_0x1740f1['baseUrl']);},logProjectLoaded=(_0x4ac178,_0x4b2988)=>{const _0x5bcb52=a0_0x3cf150,_0x306d26={'bgmVc':function(_0x5b989e,_0x3be1d3,_0x557d12){return _0x5b989e(_0x3be1d3,_0x557d12);}},_0x389ce8={'event':_0x5bcb52(0x148),'project':_0x4ac178,'path':_0x4b2988},_0x4ddfbd=_0x5bcb52(0x14b)+_0x4ac178;logger['info'](_0x389ce8,_0x4ddfbd),_0x306d26[_0x5bcb52(0xf8)](writeToFileLog,{..._0x389ce8,'level':'info','msg':_0x4ddfbd,'time':new Date()['toISOString']()},_0x5bcb52(0x11d));},logEndpointRegistered=(_0x5b297f,_0x1276db)=>{const _0x298961=a0_0x3cf150,_0x3be49d={'bpszd':function(_0x3ca9e5,_0x3be465,_0xd60f62){return _0x3ca9e5(_0x3be465,_0xd60f62);},'mzsEa':_0x298961(0xd4)},_0x47ff99={'event':_0x298961(0x154),'endpoint':_0x5b297f,'route':_0x1276db},_0x117a2f=_0x298961(0xe0)+_0x5b297f+':\x20'+_0x1276db;logger[_0x298961(0xd4)](_0x47ff99,_0x117a2f),_0x3be49d[_0x298961(0x13d)](writeToFileLog,{..._0x47ff99,'level':_0x3be49d['mzsEa'],'msg':_0x117a2f,'time':new Date()['toISOString']()},_0x298961(0xd4));},logDatabaseConfig=_0x41ba38=>{const _0x125e6f=a0_0x3cf150,_0x514927={'FqkIw':function(_0x3997e0,_0x58bdc5,_0x4684a7){return _0x3997e0(_0x58bdc5,_0x4684a7);},'lXpsa':'debug'},_0x502d50={'event':'database_config','host':_0x41ba38['host'],'port':_0x41ba38['port'],'database':_0x41ba38['database'],'type':_0x41ba38['type'],'user':_0x41ba38['user']},_0x3259b4=_0x125e6f(0x138)+_0x41ba38[_0x125e6f(0xdc)]+'://'+_0x41ba38['host']+':'+_0x41ba38['port']+'/'+_0x41ba38[_0x125e6f(0x164)];logger['debug'](_0x502d50,_0x3259b4),_0x514927['FqkIw'](writeToFileLog,{..._0x502d50,'level':_0x125e6f(0xd4),'msg':_0x3259b4,'time':new Date()[_0x125e6f(0x123)]()},_0x514927['lXpsa']);},logRequest=(_0x5576c0,_0x10956d,_0xdab779)=>{const _0x5315f7=a0_0x3cf150,_0x4b38c2={'afieT':'http_request','cDezE':function(_0x3b2aaf,_0x40b8cd){return _0x3b2aaf>=_0x40b8cd;},'iBWRp':'error'},_0x200443={'event':_0x4b38c2['afieT'],'method':_0x5576c0['method'],'path':_0x5576c0[_0x5315f7(0xce)],'statusCode':_0x10956d[_0x5315f7(0x13a)],'durationMs':_0xdab779,'ip':_0x5576c0['ip']},_0x243f32=_0x5576c0[_0x5315f7(0xc5)]+'\x20'+_0x5576c0[_0x5315f7(0xce)]+'\x20-\x20'+_0x10956d[_0x5315f7(0x13a)]+'\x20('+_0xdab779+_0x5315f7(0x101);let _0x206756=_0x5315f7(0x11d);if(_0x4b38c2['cDezE'](_0x10956d[_0x5315f7(0x13a)],0x1f4))_0x206756=_0x4b38c2[_0x5315f7(0xe6)],logger['error'](_0x200443,_0x243f32);else _0x10956d['statusCode']>=0x190?(_0x206756=_0x5315f7(0x143),logger['warn'](_0x200443,_0x243f32)):logger[_0x5315f7(0x11d)](_0x200443,_0x243f32);writeToFileLog({..._0x200443,'level':_0x206756,'msg':_0x243f32,'time':new Date()['toISOString']()},_0x206756);},SENSITIVE_PARAM_PATTERNS=[a0_0x3cf150(0x10b),a0_0x3cf150(0x10c),'pwd','token',a0_0x3cf150(0x17a),a0_0x3cf150(0xef),a0_0x3cf150(0xd9),a0_0x3cf150(0x115),a0_0x3cf150(0x147),'api_key','credential',a0_0x3cf150(0x17e),'pin','otp',a0_0x3cf150(0x128),a0_0x3cf150(0x14d)],redactSensitiveParams=(_0x16a695,_0x3a45a5)=>{const _0x1f4db1=a0_0x3cf150,_0x1e54f5={'JcHCm':function(_0x4ba0a2,_0x2a6cc9){return _0x4ba0a2===_0x2a6cc9;},'fucMD':'string','drDPF':function(_0x365364,_0x534afe){return _0x365364>_0x534afe;}};if(!_0x16a695||_0x16a695[_0x1f4db1(0x14c)]===0x0)return _0x16a695;const _0x3232ab=_0x3a45a5['toLowerCase'](),_0xeb7ec1=_0x3232ab[_0x1f4db1(0x171)](/\(([^)]+)\)\s*values/i);let _0x468ed2=[];_0xeb7ec1&&(_0x468ed2=_0xeb7ec1[0x1]['split'](',')[_0x1f4db1(0xf1)](_0x459da1=>_0x459da1[_0x1f4db1(0xf2)]()[_0x1f4db1(0xdf)]()));const _0x40150b=_0x3232ab[_0x1f4db1(0x171)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x40150b){const _0x84ad5c=_0x40150b[0x1],_0x3e58c2=_0x84ad5c[_0x1f4db1(0x171)](/(\w+)\s*=/g);_0x3e58c2&&(_0x468ed2=_0x3e58c2[_0x1f4db1(0xf1)](_0x18fe2e=>_0x18fe2e['replace'](/\s*=/,'')[_0x1f4db1(0xf2)]()['toLowerCase']()));}return _0x16a695[_0x1f4db1(0xf1)]((_0x121f2f,_0x3a8add)=>{const _0x73e245=_0x1f4db1;if(_0x468ed2[_0x3a8add]){const _0x187db9=_0x468ed2[_0x3a8add],_0x1681cd=SENSITIVE_PARAM_PATTERNS['some'](_0x2be6d7=>_0x187db9['includes'](_0x2be6d7));if(_0x1681cd)return'[REDACTED]';}if(_0x1e54f5['JcHCm'](typeof _0x121f2f,_0x1e54f5['fucMD'])&&_0x1e54f5[_0x73e245(0x12d)](_0x121f2f['length'],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x73e245(0x110)](_0x121f2f)&&_0x121f2f[_0x73e245(0x12a)]('.'))return'[REDACTED:token]';if(/^[a-fA-F0-9]{32,}$/[_0x73e245(0x110)](_0x121f2f))return'[REDACTED:hash]';}return _0x121f2f;});},parseQueryMetadata=_0x3c2e9e=>{const _0x298e16=a0_0x3cf150,_0x47c238={'YRaKl':_0x298e16(0x120),'VYTif':'SELECT','cXBQE':_0x298e16(0xd5),'vwaDs':'DELETE','uVPlF':_0x298e16(0xd3),'mxDYQ':_0x298e16(0x180),'CAaFZ':_0x298e16(0x156),'EtAYr':_0x298e16(0x13f),'ZlsSd':'DROP','yaDaE':_0x298e16(0x176)},_0x200e55=_0x3c2e9e[_0x298e16(0xf2)](),_0x28a021=_0x200e55[_0x298e16(0x10f)]();let _0xf0e76b=_0x47c238[_0x298e16(0xd7)],_0x4a7b7e=null;if(_0x28a021[_0x298e16(0xdd)]('SELECT')){_0xf0e76b=_0x47c238[_0x298e16(0x182)];const _0x19d679=_0x200e55['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4a7b7e=_0x19d679?_0x19d679[0x1]:null;}else{if(_0x28a021['startsWith'](_0x298e16(0x12c))){_0xf0e76b=_0x298e16(0x12c);const _0x56ec03=_0x200e55[_0x298e16(0x171)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4a7b7e=_0x56ec03?_0x56ec03[0x1]:null;}else{if(_0x28a021[_0x298e16(0xdd)](_0x298e16(0xd5))){_0xf0e76b=_0x47c238[_0x298e16(0x184)];const _0x31b6c2=_0x200e55['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4a7b7e=_0x31b6c2?_0x31b6c2[0x1]:null;}else{if(_0x28a021[_0x298e16(0xdd)](_0x47c238[_0x298e16(0x163)])){_0xf0e76b=_0x47c238['vwaDs'];const _0x2c4058=_0x200e55[_0x298e16(0x171)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4a7b7e=_0x2c4058?_0x2c4058[0x1]:null;}else{if(_0x28a021[_0x298e16(0xdd)]('BEGIN')||_0x28a021['startsWith'](_0x298e16(0x145)))_0xf0e76b=_0x298e16(0x126);else{if(_0x28a021['startsWith'](_0x47c238[_0x298e16(0x108)]))_0xf0e76b='TRANSACTION_COMMIT';else{if(_0x28a021[_0x298e16(0xdd)](_0x298e16(0x122)))_0xf0e76b='TRANSACTION_ROLLBACK';else{if(_0x28a021['startsWith'](_0x47c238['mxDYQ']))_0xf0e76b=_0x47c238[_0x298e16(0xe1)];else{if(_0x28a021['startsWith'](_0x47c238['EtAYr']))_0xf0e76b=_0x298e16(0x140);else _0x28a021['startsWith'](_0x47c238['ZlsSd'])&&(_0xf0e76b=_0x47c238[_0x298e16(0x144)]);}}}}}}}}return{'type':_0xf0e76b,'table':_0x4a7b7e};},startQueryTimer=()=>{const _0x485fc4=a0_0x3cf150,_0x2a0a9e={'rNHmZ':function(_0x2b98e5,_0x3461a4){return _0x2b98e5(_0x3461a4);},'CdmeN':function(_0x353edd,_0x205d0d){return _0x353edd+_0x205d0d;},'jtDgb':function(_0x2bdd3c,_0xabdf8c){return _0x2bdd3c/_0xabdf8c;}},_0x4e53a9=process[_0x485fc4(0x15c)]();return()=>{const _0xacc836=_0x485fc4,[_0xf78c15,_0x2ee499]=process['hrtime'](_0x4e53a9);return _0x2a0a9e['rNHmZ'](parseFloat,_0x2a0a9e['CdmeN'](_0xf78c15*0x3e8,_0x2a0a9e[_0xacc836(0x118)](_0x2ee499,0xf4240))[_0xacc836(0x181)](0x2));};},logQuery=(_0x49eb69,_0xc4bb8=[],_0x52085d={})=>{const _0x4a16f3=a0_0x3cf150,_0x18afd6={'FltbQ':'postgresql','CVUXa':function(_0x49cbab,_0x39991e){return _0x49cbab>_0x39991e;},'EVUFR':function(_0x189b7c,_0x4d8c67){return _0x189b7c!==_0x4d8c67;},'AVtQl':function(_0xf9c5fb,_0x1c409c){return _0xf9c5fb>_0x1c409c;},'DIJnk':function(_0x1ba359,_0x26e2c8){return _0x1ba359||_0x26e2c8;},'UFgAw':'unknown','YwVKw':'warn','xePGQ':function(_0x57dc7d,_0x5c794e,_0x411352){return _0x57dc7d(_0x5c794e,_0x411352);}};if(!sqlLogEnabled){logger['debug']({'event':_0x4a16f3(0x10d),'query':_0x49eb69['substring'](0x0,0xc8),'paramCount':_0xc4bb8[_0x4a16f3(0x14c)]},_0x4a16f3(0x16d));return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x18afd6['FltbQ']}=_0x52085d,{type:_0x1e2516,table:_0x2c6cb6}=parseQueryMetadata(_0x49eb69),_0x224425={'event':'sql_query','queryType':_0x1e2516,'table':_0x2c6cb6,'query':_0x49eb69,'paramCount':_0xc4bb8[_0x4a16f3(0x14c)],'dbType':dbType};sqlLogParams&&_0x18afd6[_0x4a16f3(0xe5)](_0xc4bb8['length'],0x0)&&(_0x224425[_0x4a16f3(0xc7)]=redactSensitiveParams(_0xc4bb8,_0x49eb69));_0x18afd6[_0x4a16f3(0x13e)](duration,null)&&(_0x224425['durationMs']=duration,_0x224425[_0x4a16f3(0xe9)]=_0x18afd6['AVtQl'](duration,sqlLogSlowThreshold));rowsAffected!==null&&(_0x224425['rowsAffected']=rowsAffected);const _0x375e27=_0x18afd6[_0x4a16f3(0x142)](_0x2c6cb6,_0x18afd6[_0x4a16f3(0xf5)]);let _0x1236a9='['+_0x1e2516+']\x20'+_0x375e27;_0x18afd6['EVUFR'](duration,null)&&(_0x1236a9+='\x20('+duration+'ms)');const _0x538437=duration!==null&&_0x18afd6[_0x4a16f3(0xcd)](duration,sqlLogSlowThreshold);let _0x271796=_0x4a16f3(0xd4);if(_0x538437)_0x1236a9+=_0x4a16f3(0xf3),_0x271796=_0x18afd6['YwVKw'],logger['warn'](_0x224425,_0x1236a9);else sqlLogLevel===_0x4a16f3(0x11d)?(_0x271796=_0x4a16f3(0x11d),logger[_0x4a16f3(0x11d)](_0x224425,_0x1236a9)):logger['debug'](_0x224425,_0x1236a9);_0x18afd6['xePGQ'](writeToFileLog,{..._0x224425,'level':_0x271796,'msg':_0x1236a9,'time':new Date()['toISOString']()},_0x271796);},logTransaction=(_0xa7acd8,_0xa5e680)=>{const _0x227f3a=a0_0x3cf150,_0x109f29={'TgQlD':_0x227f3a(0xd4)},_0x36855a={'event':'db_transaction','status':_0xa7acd8,'queryCount':_0xa5e680},_0x1f219e=_0x227f3a(0x150)+_0xa7acd8;logger[_0x227f3a(0xd4)](_0x36855a,_0x1f219e),writeToFileLog({..._0x36855a,'level':_0x109f29[_0x227f3a(0x114)],'msg':_0x1f219e,'time':new Date()['toISOString']()},_0x109f29['TgQlD']);},redactObject=_0x4b3b80=>{const _0x3efb7a=a0_0x3cf150,_0x54c2c0={'dAwuk':'passwd','YFANQ':_0x3efb7a(0x136),'KwUsG':'token','GPRdC':'secret','oPAid':'api_key','prwvo':_0x3efb7a(0x12e),'hpoZi':'creditcard','xpEBe':_0x3efb7a(0x141),'OBqzB':_0x3efb7a(0x128),'MarPm':_0x3efb7a(0x14d),'FDPmd':_0x3efb7a(0x175),'lnHKY':function(_0x1382c0,_0x18cec){return _0x1382c0===_0x18cec;},'cKoKP':function(_0x35648b,_0x18c712){return _0x35648b!==_0x18c712;}};if(!_0x4b3b80||typeof _0x4b3b80!=='object')return _0x4b3b80;const _0x5ba7fc=[_0x3efb7a(0x10b),_0x54c2c0['dAwuk'],_0x54c2c0['YFANQ'],_0x54c2c0[_0x3efb7a(0x11e)],_0x54c2c0[_0x3efb7a(0x170)],_0x3efb7a(0x147),_0x54c2c0[_0x3efb7a(0xc9)],_0x54c2c0[_0x3efb7a(0xd0)],_0x54c2c0[_0x3efb7a(0x11a)],_0x54c2c0['xpEBe'],_0x3efb7a(0xda),_0x3efb7a(0x14a),_0x3efb7a(0x14f),_0x54c2c0[_0x3efb7a(0x15e)],_0x54c2c0['MarPm'],_0x3efb7a(0xef),_0x3efb7a(0x17a)],_0x505ec8=Array['isArray'](_0x4b3b80)?[..._0x4b3b80]:{..._0x4b3b80};for(const _0x54e362 of Object[_0x3efb7a(0x165)](_0x505ec8)){const _0x4731ec=_0x54e362['toLowerCase']();if(_0x5ba7fc['some'](_0x51ed15=>_0x4731ec['includes'](_0x51ed15)))_0x505ec8[_0x54e362]=_0x54c2c0['FDPmd'];else _0x54c2c0['lnHKY'](typeof _0x505ec8[_0x54e362],_0x3efb7a(0xca))&&_0x54c2c0[_0x3efb7a(0x166)](_0x505ec8[_0x54e362],null)&&(_0x505ec8[_0x54e362]=redactObject(_0x505ec8[_0x54e362]));}return _0x505ec8;},logError=(_0x38e3f0,_0x5c5f99={},_0x285184=null)=>{const _0x58eb80=a0_0x3cf150,_0x1d0e68={'hlpbt':'error','QCseE':'Error','kmLxt':function(_0x10e0d2,_0x4075ec,_0x321806){return _0x10e0d2(_0x4075ec,_0x321806);}},_0x2445a5={'event':_0x1d0e68[_0x58eb80(0x162)],'errorName':_0x38e3f0[_0x58eb80(0xf4)]||_0x1d0e68['QCseE'],'errorMessage':_0x38e3f0[_0x58eb80(0xec)],'errorCode':_0x38e3f0['code']||null,'stack':_0x38e3f0['stack'],..._0x5c5f99},_0x3edd33=_0x285184||'Error:\x20'+_0x38e3f0['message'];logger['error'](_0x2445a5,_0x3edd33),_0x1d0e68['kmLxt'](writeToFileLog,{..._0x2445a5,'level':_0x58eb80(0x183),'msg':_0x3edd33,'time':new Date()['toISOString']()},_0x1d0e68['hlpbt']);},logFatalError=(_0x29ee3c,_0x392244={},_0x4e5e29=null)=>{const _0x7da5e2=a0_0x3cf150,_0x48e9ed={'fMdhW':'fatal_error','ZNmRf':function(_0x1475e3,_0x3d1bd6,_0x26f165){return _0x1475e3(_0x3d1bd6,_0x26f165);},'ClPfF':'error'},_0x42778e={'event':_0x48e9ed['fMdhW'],'errorName':_0x29ee3c[_0x7da5e2(0xf4)]||_0x7da5e2(0x15f),'errorMessage':_0x29ee3c['message'],'errorCode':_0x29ee3c['code']||null,'stack':_0x29ee3c['stack'],'severity':'CRITICAL',..._0x392244},_0x407fb2=_0x4e5e29||'FATAL:\x20'+_0x29ee3c['message'];logger[_0x7da5e2(0xed)](_0x42778e,_0x407fb2),_0x48e9ed[_0x7da5e2(0x127)](writeToFileLog,{..._0x42778e,'level':_0x7da5e2(0xed),'msg':_0x407fb2,'time':new Date()[_0x7da5e2(0x123)]()},_0x48e9ed['ClPfF']);},logHttpError=(_0x52ed13,_0x4bbae4,_0x1a672e={})=>{const _0x114f9a=a0_0x3cf150,_0x58c0fa={'ECFQT':_0x114f9a(0x15f),'LEmiq':_0x114f9a(0x105),'yymfR':_0x114f9a(0x179),'yXwGW':function(_0x548803,_0x1f8dbe){return _0x548803(_0x1f8dbe);},'KCSCO':function(_0x177a66,_0x414ca0){return _0x177a66>=_0x414ca0;},'QMiAS':function(_0x590180,_0x1ba5e2,_0x4ea523){return _0x590180(_0x1ba5e2,_0x4ea523);},'FztOM':_0x114f9a(0x143),'Djbqc':_0x114f9a(0x183)},_0x1f471b={'event':'http_error','errorName':_0x52ed13['name']||_0x58c0fa[_0x114f9a(0xcb)],'errorMessage':_0x52ed13['message'],'errorCode':_0x52ed13['code']||_0x52ed13['statusCode']||0x1f4,'stack':_0x52ed13['stack'],'method':_0x4bbae4?.[_0x114f9a(0xc5)],'url':_0x4bbae4?.[_0x114f9a(0x167)]||_0x4bbae4?.[_0x114f9a(0xd1)],'path':_0x4bbae4?.[_0x114f9a(0xce)],'ip':_0x4bbae4?.['ip']||_0x4bbae4?.['connection']?.[_0x114f9a(0x130)],'userAgent':_0x4bbae4?.['get']?.(_0x58c0fa['LEmiq']),'requestId':_0x4bbae4?.['id']||_0x4bbae4?.['headers']?.[_0x58c0fa[_0x114f9a(0x157)]],'body':_0x4bbae4?.['body']?_0x58c0fa[_0x114f9a(0x13c)](redactObject,_0x4bbae4['body']):undefined,'query':_0x4bbae4?.[_0x114f9a(0x102)],..._0x1a672e},_0xb32a0e=_0x52ed13[_0x114f9a(0x13a)]||_0x52ed13[_0x114f9a(0xd8)]||0x1f4,_0x517843='HTTP\x20'+_0xb32a0e+':\x20'+_0x52ed13[_0x114f9a(0xec)];_0x58c0fa['KCSCO'](_0xb32a0e,0x1f4)?logger['error'](_0x1f471b,_0x517843):logger[_0x114f9a(0x143)](_0x1f471b,_0x517843),_0x58c0fa['QMiAS'](writeToFileLog,{..._0x1f471b,'level':_0x58c0fa[_0x114f9a(0x155)](_0xb32a0e,0x1f4)?'error':_0x58c0fa[_0x114f9a(0x17d)],'msg':_0x517843,'time':new Date()[_0x114f9a(0x123)]()},_0xb32a0e>=0x1f4?_0x58c0fa[_0x114f9a(0x168)]:_0x114f9a(0x143));},logUncaughtError=(_0x3a23e7,_0x782dff)=>{const _0x38f9ea=a0_0x3cf150,_0x4f1bea={'dRSXe':function(_0x64cd4d,_0x25eaa7,_0x10b608){return _0x64cd4d(_0x25eaa7,_0x10b608);},'QxSrQ':_0x38f9ea(0x183)},_0x5855c6={'event':_0x3a23e7,'errorName':_0x782dff?.['name']||_0x38f9ea(0x15f),'errorMessage':_0x782dff?.[_0x38f9ea(0xec)]||String(_0x782dff),'errorCode':_0x782dff?.['code']||null,'stack':_0x782dff?.[_0x38f9ea(0x133)],'severity':_0x38f9ea(0xfa),'processId':process['pid'],'memoryUsage':process['memoryUsage'](),'uptime':process['uptime']()},_0xb3bd7d='['+_0x3a23e7[_0x38f9ea(0x10f)]()+']\x20'+(_0x782dff?.[_0x38f9ea(0xec)]||_0x782dff);logger[_0x38f9ea(0xed)](_0x5855c6,_0xb3bd7d),_0x4f1bea[_0x38f9ea(0xf9)](writeToFileLog,{..._0x5855c6,'level':'fatal','msg':_0xb3bd7d,'time':new Date()['toISOString']()},_0x4f1bea['QxSrQ']);},setupGlobalErrorHandlers=()=>{const _0x3c9ba6=a0_0x3cf150,_0x44116a={'ZTdee':function(_0x2b7257,_0x5513d0,_0x1b4ab0){return _0x2b7257(_0x5513d0,_0x1b4ab0);},'liRUP':'unhandledRejection','oTYol':_0x3c9ba6(0x14e),'EVSNF':'global_error_handlers_setup','uzlEp':_0x3c9ba6(0x11d)};process['on'](_0x44116a['oTYol'],_0x223182=>{logUncaughtError('uncaughtException',_0x223182),setTimeout(()=>{process['exit'](0x1);},0x3e8);}),process['on']('unhandledRejection',(_0x293dd6,_0x454a8b)=>{const _0x2e8156=_0x3c9ba6,_0x163d83=_0x293dd6 instanceof Error?_0x293dd6:new Error(String(_0x293dd6));_0x44116a['ZTdee'](logUncaughtError,_0x44116a[_0x2e8156(0x116)],_0x163d83);}),process['on']('warning',_0x158769=>{const _0x1965bb=_0x3c9ba6;logger['warn']({'event':_0x1965bb(0xe4),'name':_0x158769[_0x1965bb(0xf4)],'message':_0x158769[_0x1965bb(0xec)],'stack':_0x158769[_0x1965bb(0x133)]},_0x1965bb(0x16c)+_0x158769[_0x1965bb(0xec)]);});const _0x2cb646={'event':_0x44116a['EVSNF']},_0x3ce083='Global\x20error\x20handlers\x20initialized';logger['info'](_0x2cb646,_0x3ce083),writeToFileLog({..._0x2cb646,'level':_0x44116a[_0x3c9ba6(0xff)],'msg':_0x3ce083,'time':new Date()['toISOString']()},_0x44116a[_0x3c9ba6(0xff)]);},createErrorHandlerMiddleware=()=>{const _0x22813e={'OOTtZ':function(_0x3d1ad6,_0x2f91ec){return _0x3d1ad6>=_0x2f91ec;},'NcCIt':'Internal\x20server\x20error','pnWUE':'x-request-id'};return(_0x178cb9,_0x1afdbc,_0x48344c,_0x56b2fe)=>{const _0x2eaa3c=a0_0x1a6e;logHttpError(_0x178cb9,_0x1afdbc);const _0x1d8940=_0x178cb9[_0x2eaa3c(0x13a)]||_0x178cb9[_0x2eaa3c(0xd8)]||0x1f4;_0x48344c['status'](_0x1d8940)[_0x2eaa3c(0x16a)]({'success':![],'error':_0x22813e['OOTtZ'](_0x1d8940,0x1f4)?_0x22813e['NcCIt']:_0x178cb9[_0x2eaa3c(0xec)],'requestId':_0x1afdbc['id']||_0x1afdbc[_0x2eaa3c(0x16b)]?.[_0x22813e['pnWUE']]||null});};};module[a0_0x3cf150(0x17f)]={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
1
+ const a0_0x5e5d56=a0_0x32ed;(function(_0x17a3db,_0x1211cb){const _0x32fa36=a0_0x32ed,_0x4d1f69=_0x17a3db();while(!![]){try{const _0x2d51f9=-parseInt(_0x32fa36(0x255))/0x1*(parseInt(_0x32fa36(0x292))/0x2)+-parseInt(_0x32fa36(0x23d))/0x3*(-parseInt(_0x32fa36(0x225))/0x4)+parseInt(_0x32fa36(0x249))/0x5*(-parseInt(_0x32fa36(0x220))/0x6)+parseInt(_0x32fa36(0x25f))/0x7+-parseInt(_0x32fa36(0x213))/0x8+parseInt(_0x32fa36(0x264))/0x9+-parseInt(_0x32fa36(0x1e5))/0xa*(-parseInt(_0x32fa36(0x205))/0xb);if(_0x2d51f9===_0x1211cb)break;else _0x4d1f69['push'](_0x4d1f69['shift']());}catch(_0x5dad91){_0x4d1f69['push'](_0x4d1f69['shift']());}}}(a0_0xad6a,0x575f1));const pino=require('pino'),fs=require('fs'),path=require('path');let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':a0_0x5e5d56(0x23e),'customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process[a0_0x5e5d56(0x25a)][a0_0x5e5d56(0x217)]!==a0_0x5e5d56(0x201),logLevel=process['env'][a0_0x5e5d56(0x297)]||a0_0x5e5d56(0x266);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0x5e5d56(0x260),'options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process[a0_0x5e5d56(0x25a)][a0_0x5e5d56(0x23b)]||a0_0x5e5d56(0x229),'env':process[a0_0x5e5d56(0x25a)][a0_0x5e5d56(0x217)]||a0_0x5e5d56(0x278)},'timestamp':pino[a0_0x5e5d56(0x222)][a0_0x5e5d56(0x29a)],'redact':{'paths':['req.headers.authorization',a0_0x5e5d56(0x27b),'password',a0_0x5e5d56(0x299),a0_0x5e5d56(0x22b),'DB_PASSWORD',a0_0x5e5d56(0x23c)],'censor':a0_0x5e5d56(0x29e)},'serializers':{'req':_0x40d98e=>({'id':_0x40d98e['id'],'method':_0x40d98e[a0_0x5e5d56(0x24a)],'url':_0x40d98e[a0_0x5e5d56(0x28c)],'path':_0x40d98e[a0_0x5e5d56(0x21a)],'remoteAddress':_0x40d98e['ip']||_0x40d98e[a0_0x5e5d56(0x251)]?.['remoteAddress']}),'res':_0x3bc6b1=>({'statusCode':_0x3bc6b1['statusCode'],'headers':_0x3bc6b1[a0_0x5e5d56(0x296)]?.()}),'err':pino['stdSerializers']['err']}});function initFileLogging(){const _0x4e0e4c=a0_0x5e5d56,_0x1a8181={'NEoqi':function(_0x10d3ae,_0x324069){return _0x10d3ae===_0x324069;},'ZdZIB':_0x4e0e4c(0x208),'GPQzU':function(_0x292a9e,_0x5347d1){return _0x292a9e!==_0x5347d1;},'giWox':function(_0xa6d6cf,_0x2fc14c){return _0xa6d6cf(_0x2fc14c);},'QTstF':_0x4e0e4c(0x207),'JqTIX':'file_logging_enabled','EHUVI':_0x4e0e4c(0x253),'dIvJH':function(_0x5d5b61,_0x291a7b,_0x346298){return _0x5d5b61(_0x291a7b,_0x346298);},'VGvHY':_0x4e0e4c(0x266)};if(fileLoggingInitialized)return;logToFile=_0x1a8181['NEoqi'](process[_0x4e0e4c(0x25a)][_0x4e0e4c(0x21c)],'true');const _0x52742c=process['env']['RESTFORGE_PROJECT_NAME']||'default';logDir=process['env'][_0x4e0e4c(0x227)]||_0x4e0e4c(0x214)+_0x52742c,serviceName=process[_0x4e0e4c(0x25a)][_0x4e0e4c(0x236)]||_0x4e0e4c(0x28e),sqlLogEnabled=process['env']['SQL_LOG_ENABLED']===_0x1a8181[_0x4e0e4c(0x22a)],sqlLogLevel=process[_0x4e0e4c(0x25a)]['SQL_LOG_LEVEL']||'debug',sqlLogParams=_0x1a8181[_0x4e0e4c(0x20a)](process[_0x4e0e4c(0x25a)][_0x4e0e4c(0x248)],_0x4e0e4c(0x223)),sqlLogSlowThreshold=_0x1a8181[_0x4e0e4c(0x1f7)](parseInt,process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x73788d=path['resolve'](process['cwd'](),logDir);try{!fs[_0x4e0e4c(0x22e)](_0x73788d)&&fs[_0x4e0e4c(0x2a0)](_0x73788d,{'recursive':!![]});}catch(_0x3fd2d2){console[_0x4e0e4c(0x280)](_0x4e0e4c(0x203)+_0x73788d+':',_0x3fd2d2['message']),fileLoggingInitialized=!![];return;}const _0x246d56=path['join'](_0x73788d,_0x4e0e4c(0x253)),_0x81a63d=path[_0x4e0e4c(0x265)](_0x73788d,_0x1a8181['QTstF']);try{appLogStream=fs['createWriteStream'](_0x246d56,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x81a63d,{'flags':'a'}),fileLoggingInitialized=!![];const _0x9021fa={'event':_0x1a8181[_0x4e0e4c(0x263)],'logDir':_0x73788d,'files':[_0x1a8181['EHUVI'],_0x4e0e4c(0x207)]},_0x80a8ab=_0x4e0e4c(0x29c)+_0x73788d;logger[_0x4e0e4c(0x266)](_0x9021fa,_0x80a8ab),_0x1a8181['dIvJH'](writeToFileLog,{..._0x9021fa,'level':_0x1a8181['VGvHY'],'msg':_0x80a8ab,'time':new Date()[_0x4e0e4c(0x2a5)]()},_0x1a8181[_0x4e0e4c(0x28f)]);}catch(_0x37d1e9){console[_0x4e0e4c(0x280)]('Failed\x20to\x20create\x20log\x20streams:',_0x37d1e9[_0x4e0e4c(0x20b)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x519366,_0x5a3c23){const _0x518fa7=a0_0x5e5d56,_0x3d50f4={'kKwDd':function(_0x2c4578,_0x181f7b){return _0x2c4578||_0x181f7b;},'AaXzI':function(_0x1ee700,_0x36ab23){return _0x1ee700===_0x36ab23;}};if(_0x3d50f4['kKwDd'](!logToFile,!appLogStream))return;const _0x2582d6={'service':serviceName,..._0x519366},_0x1c15c5=JSON['stringify'](_0x2582d6)+'\x0a';appLogStream['write'](_0x1c15c5),(_0x5a3c23===_0x518fa7(0x280)||_0x3d50f4['AaXzI'](_0x5a3c23,_0x518fa7(0x1f0)))&&(errorLogStream&&errorLogStream[_0x518fa7(0x204)](_0x1c15c5));}function a0_0x32ed(_0x44dd1c,_0x1e9a47){_0x44dd1c=_0x44dd1c-0x1e4;const _0xad6a97=a0_0xad6a();let _0x32ed44=_0xad6a97[_0x44dd1c];if(a0_0x32ed['INZCMB']===undefined){var _0x51d8fb=function(_0x324319){const _0x490446='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3287e8='',_0x145d4='';for(let _0x50423f=0x0,_0x534381,_0x74971a,_0x540b8a=0x0;_0x74971a=_0x324319['charAt'](_0x540b8a++);~_0x74971a&&(_0x534381=_0x50423f%0x4?_0x534381*0x40+_0x74971a:_0x74971a,_0x50423f++%0x4)?_0x3287e8+=String['fromCharCode'](0xff&_0x534381>>(-0x2*_0x50423f&0x6)):0x0){_0x74971a=_0x490446['indexOf'](_0x74971a);}for(let _0x324951=0x0,_0x57d58a=_0x3287e8['length'];_0x324951<_0x57d58a;_0x324951++){_0x145d4+='%'+('00'+_0x3287e8['charCodeAt'](_0x324951)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x145d4);};a0_0x32ed['YMasLx']=_0x51d8fb,a0_0x32ed['pKGhff']={},a0_0x32ed['INZCMB']=!![];}const _0x17ac5f=_0xad6a97[0x0],_0x50a93c=_0x44dd1c+_0x17ac5f,_0x5e26ff=a0_0x32ed['pKGhff'][_0x50a93c];return!_0x5e26ff?(_0x32ed44=a0_0x32ed['YMasLx'](_0x32ed44),a0_0x32ed['pKGhff'][_0x50a93c]=_0x32ed44):_0x32ed44=_0x5e26ff,_0x32ed44;}const createRequestLogger=(_0x5f1493={})=>{const _0x7aedda=a0_0x5e5d56;return logger[_0x7aedda(0x231)](_0x5f1493);},logServerStart=_0x2a8c3a=>{const _0x198366=a0_0x5e5d56,_0x2bc9df={'ynjcb':'RESTFORGE\x20RUNTIME\x20SERVER','EtcaZ':function(_0x4f95aa,_0x3e1c9a){return _0x4f95aa/_0x3e1c9a;},'dTcfy':'Node.js','iAKxe':'Default','hxiNF':'ACTIVE','pZtDp':_0x198366(0x1fb),'qdEWd':'info'},_0x405476=_0x2bc9df[_0x198366(0x25b)],_0x4fe21f=Math[_0x198366(0x216)](0x0,0x37-_0x405476['length']),_0x50b76b=Math['floor'](_0x2bc9df[_0x198366(0x24d)](_0x4fe21f,0x2)),_0xd3b5e6=_0x4fe21f-_0x50b76b,_0x2a00ed='║'+'\x20'['repeat'](_0x50b76b)+_0x405476+'\x20'['repeat'](_0xd3b5e6)+'║',_0x16b209=_0x198366(0x288)+_0x2a00ed+_0x198366(0x281)+(_0x2a8c3a['environment']||_0x2bc9df[_0x198366(0x26e)])['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x2a8c3a['project']||'N/A')['padEnd'](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+String(_0x2a8c3a[_0x198366(0x243)]||0xbb8)[_0x198366(0x295)](0x26)+_0x198366(0x1ef)+(_0x2a8c3a[_0x198366(0x1fd)]||_0x2bc9df[_0x198366(0x24c)])[_0x198366(0x295)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x2a8c3a['apiKey']?_0x2bc9df['hxiNF']:_0x198366(0x298))[_0x198366(0x295)](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x198366(0x24b)](_0x16b209);const _0x1061ed={'event':_0x2bc9df[_0x198366(0x245)],'project':_0x2a8c3a[_0x198366(0x25c)],'port':_0x2a8c3a['port'],'config':_0x2a8c3a[_0x198366(0x1fd)],'apiKeyEnabled':!!_0x2a8c3a[_0x198366(0x22b)]};logger['info'](_0x1061ed),writeToFileLog({..._0x1061ed,'level':_0x198366(0x266),'msg':_0x198366(0x26d)+_0x2a8c3a[_0x198366(0x25c)]+_0x198366(0x21d)+_0x2a8c3a[_0x198366(0x243)],'time':new Date()[_0x198366(0x2a5)]()},_0x2bc9df[_0x198366(0x27a)]);},logServerReady=_0x210d25=>{const _0x23799c=a0_0x5e5d56,_0x66c7f4={'PpQBZ':_0x23799c(0x25e),'qcUIX':function(_0xac9745,_0x3208d5,_0xead3ec){return _0xac9745(_0x3208d5,_0xead3ec);},'vwAMz':'info'},_0x4d2f38={'event':_0x66c7f4['PpQBZ'],'port':_0x210d25['port'],'module':_0x210d25[_0x23799c(0x206)],'healthCheck':_0x210d25[_0x23799c(0x2a2)],'serviceInfo':_0x210d25[_0x23799c(0x267)],'baseUrl':_0x210d25[_0x23799c(0x1f5)]},_0x2034ec='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x210d25[_0x23799c(0x243)];logger[_0x23799c(0x266)](_0x4d2f38,_0x2034ec),_0x66c7f4[_0x23799c(0x27f)](writeToFileLog,{..._0x4d2f38,'level':_0x66c7f4[_0x23799c(0x22f)],'msg':_0x2034ec,'time':new Date()[_0x23799c(0x2a5)]()},_0x23799c(0x266)),_0x210d25[_0x23799c(0x2a2)]&&logger[_0x23799c(0x266)]('\x20\x20Health:\x20'+_0x210d25[_0x23799c(0x2a2)]),_0x210d25['serviceInfo']&&logger[_0x23799c(0x266)](_0x23799c(0x1f4)+_0x210d25['serviceInfo']),_0x210d25['baseUrl']&&logger['info'](_0x23799c(0x27e)+_0x210d25['baseUrl']);},logProjectLoaded=(_0x22baa6,_0xa829de)=>{const _0xbaac1f=a0_0x5e5d56,_0xc873db={'uRoYW':_0xbaac1f(0x239),'PcQAc':function(_0x9ef0a,_0x17d8a2,_0x4bae36){return _0x9ef0a(_0x17d8a2,_0x4bae36);},'xBWfV':_0xbaac1f(0x266)},_0x18ff48={'event':_0xc873db[_0xbaac1f(0x1f1)],'project':_0x22baa6,'path':_0xa829de},_0x41c09c=_0xbaac1f(0x202)+_0x22baa6;logger['info'](_0x18ff48,_0x41c09c),_0xc873db[_0xbaac1f(0x21e)](writeToFileLog,{..._0x18ff48,'level':_0xc873db['xBWfV'],'msg':_0x41c09c,'time':new Date()['toISOString']()},_0xc873db[_0xbaac1f(0x24f)]);},logEndpointRegistered=(_0x17972e,_0x9b759c)=>{const _0x2bce5c=a0_0x5e5d56,_0x31f5f9={'FOYwG':'endpoint_registered','JnnbY':function(_0x5605ee,_0x319ca7,_0x5e42e5){return _0x5605ee(_0x319ca7,_0x5e42e5);},'iyong':_0x2bce5c(0x212)},_0x5796b0={'event':_0x31f5f9[_0x2bce5c(0x20e)],'endpoint':_0x17972e,'route':_0x9b759c},_0x571af6=_0x2bce5c(0x27c)+_0x17972e+':\x20'+_0x9b759c;logger['debug'](_0x5796b0,_0x571af6),_0x31f5f9['JnnbY'](writeToFileLog,{..._0x5796b0,'level':_0x31f5f9['iyong'],'msg':_0x571af6,'time':new Date()['toISOString']()},_0x31f5f9[_0x2bce5c(0x218)]);},logDatabaseConfig=_0x563af9=>{const _0x2ffdac=a0_0x5e5d56,_0x47dd0b={'hLlwW':function(_0x5cf230,_0xefdde6,_0x39de25){return _0x5cf230(_0xefdde6,_0x39de25);},'ybXPi':_0x2ffdac(0x212)},_0x81caf0={'event':_0x2ffdac(0x240),'host':_0x563af9[_0x2ffdac(0x1fc)],'port':_0x563af9['port'],'database':_0x563af9[_0x2ffdac(0x1ed)],'type':_0x563af9['type'],'user':_0x563af9[_0x2ffdac(0x289)]},_0x5526d6=_0x2ffdac(0x1f3)+_0x563af9[_0x2ffdac(0x261)]+_0x2ffdac(0x233)+_0x563af9['host']+':'+_0x563af9['port']+'/'+_0x563af9[_0x2ffdac(0x1ed)];logger['debug'](_0x81caf0,_0x5526d6),_0x47dd0b[_0x2ffdac(0x2a3)](writeToFileLog,{..._0x81caf0,'level':_0x47dd0b['ybXPi'],'msg':_0x5526d6,'time':new Date()[_0x2ffdac(0x2a5)]()},'debug');},logRequest=(_0x5641ac,_0x3715e1,_0x10bdb7)=>{const _0x567072=a0_0x5e5d56,_0x591624={'cbRry':'http_request','Ezpdc':_0x567072(0x280)},_0x4c39b9={'event':_0x591624['cbRry'],'method':_0x5641ac['method'],'path':_0x5641ac[_0x567072(0x21a)],'statusCode':_0x3715e1['statusCode'],'durationMs':_0x10bdb7,'ip':_0x5641ac['ip']},_0x5e73b8=_0x5641ac[_0x567072(0x24a)]+'\x20'+_0x5641ac['path']+_0x567072(0x22d)+_0x3715e1['statusCode']+'\x20('+_0x10bdb7+'ms)';let _0x128c06='info';if(_0x3715e1[_0x567072(0x284)]>=0x1f4)_0x128c06=_0x591624[_0x567072(0x21b)],logger[_0x567072(0x280)](_0x4c39b9,_0x5e73b8);else _0x3715e1['statusCode']>=0x190?(_0x128c06=_0x567072(0x2a4),logger[_0x567072(0x2a4)](_0x4c39b9,_0x5e73b8)):logger['info'](_0x4c39b9,_0x5e73b8);writeToFileLog({..._0x4c39b9,'level':_0x128c06,'msg':_0x5e73b8,'time':new Date()[_0x567072(0x2a5)]()},_0x128c06);},SENSITIVE_PARAM_PATTERNS=['password','passwd','pwd',a0_0x5e5d56(0x299),'access_token','refresh_token',a0_0x5e5d56(0x1e4),'api_secret','apikey','api_key',a0_0x5e5d56(0x219),a0_0x5e5d56(0x271),'pin','otp','private_key','privatekey'],redactSensitiveParams=(_0x1ef69e,_0x422f74)=>{const _0x396de2=a0_0x5e5d56,_0x46f01c={'LzCVJ':'[REDACTED]','PMqeh':function(_0x127c65,_0x28ed30){return _0x127c65===_0x28ed30;},'NIWWr':_0x396de2(0x29b),'wkuVP':'[REDACTED:hash]'};if(!_0x1ef69e||_0x46f01c[_0x396de2(0x1f2)](_0x1ef69e['length'],0x0))return _0x1ef69e;const _0x2ff665=_0x422f74['toLowerCase'](),_0x2612c8=_0x2ff665['match'](/\(([^)]+)\)\s*values/i);let _0x1345f5=[];_0x2612c8&&(_0x1345f5=_0x2612c8[0x1][_0x396de2(0x290)](',')[_0x396de2(0x287)](_0xfd3ac6=>_0xfd3ac6[_0x396de2(0x21f)]()[_0x396de2(0x256)]()));const _0x4a6908=_0x2ff665[_0x396de2(0x242)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x4a6908){const _0x10741e=_0x4a6908[0x1],_0x45e941=_0x10741e['match'](/(\w+)\s*=/g);_0x45e941&&(_0x1345f5=_0x45e941['map'](_0x4f52f6=>_0x4f52f6['replace'](/\s*=/,'')[_0x396de2(0x21f)]()['toLowerCase']()));}return _0x1ef69e[_0x396de2(0x287)]((_0x2dd9c1,_0xda3281)=>{const _0x2c6d46=_0x396de2;if(_0x1345f5[_0xda3281]){const _0x155b86=_0x1345f5[_0xda3281],_0x4f261f=SENSITIVE_PARAM_PATTERNS['some'](_0x5ea213=>_0x155b86['includes'](_0x5ea213));if(_0x4f261f)return _0x46f01c['LzCVJ'];}if(_0x46f01c['PMqeh'](typeof _0x2dd9c1,_0x46f01c[_0x2c6d46(0x269)])&&_0x2dd9c1[_0x2c6d46(0x26a)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x2c6d46(0x23f)](_0x2dd9c1)&&_0x2dd9c1[_0x2c6d46(0x1e8)]('.'))return'[REDACTED:token]';if(/^[a-fA-F0-9]{32,}$/['test'](_0x2dd9c1))return _0x46f01c[_0x2c6d46(0x250)];}return _0x2dd9c1;});},parseQueryMetadata=_0x3d1b5d=>{const _0x48b591=a0_0x5e5d56,_0x1578b2={'Wvtoe':_0x48b591(0x1ec),'cfBUU':_0x48b591(0x228),'qSObZ':'DELETE','zPzDq':_0x48b591(0x22c),'pfnqY':_0x48b591(0x215),'KmaZc':'CREATE','maNtJ':_0x48b591(0x282),'dysbd':'DDL_ALTER'},_0x572496=_0x3d1b5d['trim'](),_0xba8e9e=_0x572496[_0x48b591(0x28b)]();let _0x57ca3c=_0x48b591(0x275),_0x1f493d=null;if(_0xba8e9e[_0x48b591(0x258)](_0x1578b2[_0x48b591(0x26b)])){_0x57ca3c=_0x1578b2['Wvtoe'];const _0x38c7ba=_0x572496[_0x48b591(0x242)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x38c7ba?_0x38c7ba[0x1]:null;}else{if(_0xba8e9e[_0x48b591(0x258)](_0x1578b2['cfBUU'])){_0x57ca3c='INSERT';const _0x65b2ca=_0x572496[_0x48b591(0x242)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x65b2ca?_0x65b2ca[0x1]:null;}else{if(_0xba8e9e[_0x48b591(0x258)](_0x48b591(0x1ea))){_0x57ca3c='UPDATE';const _0x2dbc76=_0x572496['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x2dbc76?_0x2dbc76[0x1]:null;}else{if(_0xba8e9e['startsWith'](_0x1578b2['qSObZ'])){_0x57ca3c=_0x48b591(0x1e7);const _0x4a8a56=_0x572496[_0x48b591(0x242)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x4a8a56?_0x4a8a56[0x1]:null;}else{if(_0xba8e9e[_0x48b591(0x258)](_0x48b591(0x1eb))||_0xba8e9e[_0x48b591(0x258)]('START\x20TRANSACTION'))_0x57ca3c=_0x48b591(0x230);else{if(_0xba8e9e['startsWith'](_0x1578b2['zPzDq']))_0x57ca3c=_0x48b591(0x1fa);else{if(_0xba8e9e['startsWith'](_0x48b591(0x273)))_0x57ca3c=_0x1578b2[_0x48b591(0x20f)];else{if(_0xba8e9e[_0x48b591(0x258)](_0x1578b2[_0x48b591(0x268)]))_0x57ca3c=_0x1578b2['maNtJ'];else{if(_0xba8e9e['startsWith']('ALTER'))_0x57ca3c=_0x1578b2[_0x48b591(0x1f6)];else _0xba8e9e['startsWith'](_0x48b591(0x252))&&(_0x57ca3c=_0x48b591(0x274));}}}}}}}}return{'type':_0x57ca3c,'table':_0x1f493d};},startQueryTimer=()=>{const _0x5b2dc9={'msGtE':function(_0x5072cc,_0x17320d){return _0x5072cc(_0x17320d);},'nUlDH':function(_0x482720,_0x941ac1){return _0x482720/_0x941ac1;}},_0x254ae1=process['hrtime']();return()=>{const _0x14fe8b=a0_0x32ed,[_0x226e3a,_0x4a594c]=process[_0x14fe8b(0x27d)](_0x254ae1);return _0x5b2dc9['msGtE'](parseFloat,(_0x226e3a*0x3e8+_0x5b2dc9['nUlDH'](_0x4a594c,0xf4240))[_0x14fe8b(0x20c)](0x2));};},logQuery=(_0x209600,_0x71e829=[],_0x1bcb18={})=>{const _0x451ee4=a0_0x5e5d56,_0x2148fa={'xFyBn':'db_query','FWitF':_0x451ee4(0x1ff),'DoILZ':'postgresql','YqowK':function(_0x148696,_0x2f2293){return _0x148696!==_0x2f2293;},'rHysw':function(_0x48e41a,_0x2fd342){return _0x48e41a>_0x2fd342;},'OVgOd':'debug','YMGKz':_0x451ee4(0x28d),'SYstP':'info','mfNji':function(_0x2bf348,_0x169b81,_0x26499b){return _0x2bf348(_0x169b81,_0x26499b);}};if(!sqlLogEnabled){logger['debug']({'event':_0x2148fa[_0x451ee4(0x26c)],'query':_0x209600['substring'](0x0,0xc8),'paramCount':_0x71e829[_0x451ee4(0x26a)]},_0x2148fa['FWitF']);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x2148fa['DoILZ']}=_0x1bcb18,{type:_0x345360,table:_0x75f655}=parseQueryMetadata(_0x209600),_0x3a02eb={'event':'sql_query','queryType':_0x345360,'table':_0x75f655,'query':_0x209600,'paramCount':_0x71e829['length'],'dbType':dbType};sqlLogParams&&_0x71e829[_0x451ee4(0x26a)]>0x0&&(_0x3a02eb[_0x451ee4(0x200)]=redactSensitiveParams(_0x71e829,_0x209600));_0x2148fa['YqowK'](duration,null)&&(_0x3a02eb[_0x451ee4(0x1ee)]=duration,_0x3a02eb[_0x451ee4(0x210)]=_0x2148fa['rHysw'](duration,sqlLogSlowThreshold));_0x2148fa['YqowK'](rowsAffected,null)&&(_0x3a02eb['rowsAffected']=rowsAffected);const _0x2197be=_0x75f655||'unknown';let _0x4cee78='['+_0x345360+']\x20'+_0x2197be;_0x2148fa['YqowK'](duration,null)&&(_0x4cee78+='\x20('+duration+'ms)');const _0x8f8e24=_0x2148fa['YqowK'](duration,null)&&duration>sqlLogSlowThreshold;let _0x4f746b=_0x2148fa[_0x451ee4(0x29d)];if(_0x8f8e24)_0x4cee78+=_0x2148fa['YMGKz'],_0x4f746b=_0x451ee4(0x2a4),logger[_0x451ee4(0x2a4)](_0x3a02eb,_0x4cee78);else sqlLogLevel===_0x2148fa[_0x451ee4(0x237)]?(_0x4f746b=_0x2148fa['SYstP'],logger[_0x451ee4(0x266)](_0x3a02eb,_0x4cee78)):logger['debug'](_0x3a02eb,_0x4cee78);_0x2148fa[_0x451ee4(0x285)](writeToFileLog,{..._0x3a02eb,'level':_0x4f746b,'msg':_0x4cee78,'time':new Date()[_0x451ee4(0x2a5)]()},_0x4f746b);},logTransaction=(_0x461f99,_0x3bb9d3)=>{const _0x4ed290=a0_0x5e5d56,_0x40c942={'XTKlQ':'db_transaction'},_0x36b04d={'event':_0x40c942[_0x4ed290(0x211)],'status':_0x461f99,'queryCount':_0x3bb9d3},_0x38acdc='Transaction\x20'+_0x461f99;logger[_0x4ed290(0x212)](_0x36b04d,_0x38acdc),writeToFileLog({..._0x36b04d,'level':'debug','msg':_0x38acdc,'time':new Date()['toISOString']()},_0x4ed290(0x212));},redactObject=_0x62f006=>{const _0x319b69=a0_0x5e5d56,_0xb137ba={'ACCVp':'object','QBxLu':'passwd','FFUkV':'pwd','BzMVh':'api_key','mSdqg':_0x319b69(0x1f8),'ouvaF':_0x319b69(0x209),'GaESZ':'ssn','vUxgo':'privatekey','alFCX':_0x319b69(0x291),'UMWFO':function(_0x408b39,_0x12ef98){return _0x408b39===_0x12ef98;}};if(!_0x62f006||typeof _0x62f006!==_0xb137ba[_0x319b69(0x232)])return _0x62f006;const _0x398343=['password',_0xb137ba['QBxLu'],_0xb137ba['FFUkV'],_0x319b69(0x299),'secret','apikey',_0xb137ba[_0x319b69(0x294)],'authorization',_0xb137ba['mSdqg'],_0xb137ba[_0x319b69(0x238)],_0x319b69(0x262),_0xb137ba['GaESZ'],'pin',_0x319b69(0x24e),_0xb137ba[_0x319b69(0x224)],_0xb137ba['alFCX'],_0x319b69(0x234)],_0x34ca10=Array['isArray'](_0x62f006)?[..._0x62f006]:{..._0x62f006};for(const _0x46cee7 of Object['keys'](_0x34ca10)){const _0x4b5c=_0x46cee7[_0x319b69(0x256)]();if(_0x398343[_0x319b69(0x23a)](_0x5ec776=>_0x4b5c[_0x319b69(0x1e8)](_0x5ec776)))_0x34ca10[_0x46cee7]='[REDACTED]';else _0xb137ba[_0x319b69(0x241)](typeof _0x34ca10[_0x46cee7],'object')&&_0x34ca10[_0x46cee7]!==null&&(_0x34ca10[_0x46cee7]=redactObject(_0x34ca10[_0x46cee7]));}return _0x34ca10;},logError=(_0x102e8e,_0x10e6da={},_0x371578=null)=>{const _0x1d382d=a0_0x5e5d56,_0x19c69d={'oFVEJ':_0x1d382d(0x235),'sUPnP':'error'},_0xd0517a={'event':_0x1d382d(0x280),'errorName':_0x102e8e['name']||_0x19c69d['oFVEJ'],'errorMessage':_0x102e8e[_0x1d382d(0x20b)],'errorCode':_0x102e8e[_0x1d382d(0x270)]||null,'stack':_0x102e8e['stack'],..._0x10e6da},_0x5e23fb=_0x371578||'Error:\x20'+_0x102e8e['message'];logger[_0x1d382d(0x280)](_0xd0517a,_0x5e23fb),writeToFileLog({..._0xd0517a,'level':_0x19c69d[_0x1d382d(0x286)],'msg':_0x5e23fb,'time':new Date()[_0x1d382d(0x2a5)]()},'error');},logFatalError=(_0x5d49ce,_0x165b7e={},_0x35f16d=null)=>{const _0x20f12b=a0_0x5e5d56,_0x762995={'TykLx':_0x20f12b(0x2a1),'WYfSy':'fatal','qhDyt':'error'},_0x566dd9={'event':_0x762995[_0x20f12b(0x244)],'errorName':_0x5d49ce[_0x20f12b(0x247)]||'Error','errorMessage':_0x5d49ce['message'],'errorCode':_0x5d49ce['code']||null,'stack':_0x5d49ce[_0x20f12b(0x226)],'severity':_0x20f12b(0x276),..._0x165b7e},_0x25705f=_0x35f16d||'FATAL:\x20'+_0x5d49ce[_0x20f12b(0x20b)];logger[_0x20f12b(0x1f0)](_0x566dd9,_0x25705f),writeToFileLog({..._0x566dd9,'level':_0x762995['WYfSy'],'msg':_0x25705f,'time':new Date()['toISOString']()},_0x762995['qhDyt']);},logHttpError=(_0x3af050,_0xc32872,_0x73fb61={})=>{const _0x2a2601=a0_0x5e5d56,_0x1b9bc3={'AiOUy':_0x2a2601(0x235),'vKpxm':'user-agent','zhemz':'warn'},_0x17c2ca={'event':'http_error','errorName':_0x3af050[_0x2a2601(0x247)]||_0x1b9bc3['AiOUy'],'errorMessage':_0x3af050[_0x2a2601(0x20b)],'errorCode':_0x3af050['code']||_0x3af050['statusCode']||0x1f4,'stack':_0x3af050[_0x2a2601(0x226)],'method':_0xc32872?.['method'],'url':_0xc32872?.['url']||_0xc32872?.['originalUrl'],'path':_0xc32872?.['path'],'ip':_0xc32872?.['ip']||_0xc32872?.[_0x2a2601(0x251)]?.['remoteAddress'],'userAgent':_0xc32872?.[_0x2a2601(0x277)]?.(_0x1b9bc3['vKpxm']),'requestId':_0xc32872?.['id']||_0xc32872?.['headers']?.[_0x2a2601(0x25d)],'body':_0xc32872?.[_0x2a2601(0x246)]?redactObject(_0xc32872[_0x2a2601(0x246)]):undefined,'query':_0xc32872?.[_0x2a2601(0x279)],..._0x73fb61},_0x3efd96=_0x3af050['statusCode']||_0x3af050['status']||0x1f4,_0x4d0abf=_0x2a2601(0x1e9)+_0x3efd96+':\x20'+_0x3af050[_0x2a2601(0x20b)];_0x3efd96>=0x1f4?logger['error'](_0x17c2ca,_0x4d0abf):logger['warn'](_0x17c2ca,_0x4d0abf),writeToFileLog({..._0x17c2ca,'level':_0x3efd96>=0x1f4?'error':_0x1b9bc3[_0x2a2601(0x272)],'msg':_0x4d0abf,'time':new Date()[_0x2a2601(0x2a5)]()},_0x3efd96>=0x1f4?_0x2a2601(0x280):_0x1b9bc3['zhemz']);},logUncaughtError=(_0x110c82,_0x169b30)=>{const _0x4d3885=a0_0x5e5d56,_0x1d00cb={'LzOTz':_0x4d3885(0x235),'uZmOQ':function(_0x12094b,_0x510237){return _0x12094b(_0x510237);},'VPzIo':function(_0x2c85ef,_0x3050c4,_0x31609c){return _0x2c85ef(_0x3050c4,_0x31609c);},'HVUtH':'fatal','zBIJG':'error'},_0x32a113={'event':_0x110c82,'errorName':_0x169b30?.['name']||_0x1d00cb['LzOTz'],'errorMessage':_0x169b30?.[_0x4d3885(0x20b)]||_0x1d00cb[_0x4d3885(0x259)](String,_0x169b30),'errorCode':_0x169b30?.[_0x4d3885(0x270)]||null,'stack':_0x169b30?.[_0x4d3885(0x226)],'severity':_0x4d3885(0x276),'processId':process['pid'],'memoryUsage':process[_0x4d3885(0x1fe)](),'uptime':process[_0x4d3885(0x28a)]()},_0x59602='['+_0x110c82[_0x4d3885(0x28b)]()+']\x20'+(_0x169b30?.[_0x4d3885(0x20b)]||_0x169b30);logger['fatal'](_0x32a113,_0x59602),_0x1d00cb['VPzIo'](writeToFileLog,{..._0x32a113,'level':_0x1d00cb['HVUtH'],'msg':_0x59602,'time':new Date()['toISOString']()},_0x1d00cb['zBIJG']);},setupGlobalErrorHandlers=()=>{const _0x34c91a=a0_0x5e5d56,_0x583aef={'MqtFM':'uncaughtException','dREYf':function(_0x99add9,_0x3784b9,_0x8c4cb6){return _0x99add9(_0x3784b9,_0x8c4cb6);},'vVLDa':function(_0x4da77b,_0x546bf7){return _0x4da77b(_0x546bf7);},'VnxCI':'unhandledRejection','iNzja':'global_error_handlers_setup','tNyNU':'info'};process['on'](_0x34c91a(0x1e6),_0x2dd66c=>{const _0x5570bb=_0x34c91a;logUncaughtError(_0x583aef['MqtFM'],_0x2dd66c),_0x583aef[_0x5570bb(0x293)](setTimeout,()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x583aef['VnxCI'],(_0x6d54,_0x1d649c)=>{const _0x5a1322=_0x34c91a,_0x4af6c1=_0x6d54 instanceof Error?_0x6d54:new Error(_0x583aef[_0x5a1322(0x283)](String,_0x6d54));logUncaughtError('unhandledRejection',_0x4af6c1);}),process['on'](_0x34c91a(0x26f),_0x3206c8=>{const _0x2482b7=_0x34c91a;logger[_0x2482b7(0x2a4)]({'event':'process_warning','name':_0x3206c8[_0x2482b7(0x247)],'message':_0x3206c8[_0x2482b7(0x20b)],'stack':_0x3206c8[_0x2482b7(0x226)]},_0x2482b7(0x20d)+_0x3206c8['message']);});const _0x4946cb={'event':_0x583aef[_0x34c91a(0x1f9)]},_0xcdd721='Global\x20error\x20handlers\x20initialized';logger[_0x34c91a(0x266)](_0x4946cb,_0xcdd721),writeToFileLog({..._0x4946cb,'level':_0x583aef[_0x34c91a(0x257)],'msg':_0xcdd721,'time':new Date()['toISOString']()},'info');},createErrorHandlerMiddleware=()=>{const _0x39b234={'MCvIY':function(_0x2c2c85,_0x282f0c){return _0x2c2c85>=_0x282f0c;}};return(_0x18480f,_0x7e6092,_0x3ecc24,_0x4499c5)=>{const _0x30f5f7=a0_0x32ed;logHttpError(_0x18480f,_0x7e6092);const _0x4f614d=_0x18480f[_0x30f5f7(0x284)]||_0x18480f['status']||0x1f4;_0x3ecc24['status'](_0x4f614d)[_0x30f5f7(0x221)]({'success':![],'error':_0x39b234['MCvIY'](_0x4f614d,0x1f4)?_0x30f5f7(0x254):_0x18480f['message'],'requestId':_0x7e6092['id']||_0x7e6092[_0x30f5f7(0x29f)]?.['x-request-id']||null});};};function a0_0xad6a(){const _0x531510=['Ahj0Aw1L','icbvuKW6icaGia','CwnvsvG','zxjYB3i','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','rermx0nsrufurq','DLzmrge','C3rHDhvZq29Kzq','BwzoAMK','C1vqBLa','BwfW','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','DxnLCG','Dxb0Aw1L','Dg9vChbLCKnHC2u','DxjS','ifTtte9xxq','CMvZDgzVCMDL','vKD2sfK','C3bSAxq','CMvMCMvZAf90B2TLBG','ntu2nZaYy3blyKLc','zfjfwwy','qNPnvMG','CgfKrw5K','z2v0sgvHzgvYCW','te9hx0XfvKvm','tK9uiefdveLwrq','Dg9Rzw4','AxnVvgLTzq','C3rYAw5N','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','t1zNt2q','w1jfrefdvevexq','AgvHzgvYCW','BwTKAxjtEw5J','zMf0ywXFzxjYB3i','AgvHBhrOq2HLy2S','AeXSD1C','D2fYBG','Dg9ju09tDhjPBMC','C2vJCMv0','mtmYnZm5mfDrwuXqDq','Dw5JyxvNAhrfEgnLChrPB24','revmrvrf','Aw5JBhvKzxm','sfruuca','vvbeqvrf','qKvhsu4','u0vmrunu','zgf0ywjHC2u','zhvYyxrPB25nCW','iokvKqRILzeGienVBMzPzYaGicaGidOG','zMf0ywW','DvjVwvC','ue1XzwG','rgf0ywjHC2u6ia','icbjBMzVoIaGia','yMfZzvvYBa','zhLZyMq','z2LxB3G','y3jLzgL0y2fYza','Au56AMe','vfjbtLnbq1rjt05Fq09ntuLu','C2vYDMvYx3n0yxj0Aw5N','Ag9ZDa','y29UzMLNrMLSzq','BwvTB3j5vxnHz2u','reiGuxvLCNK','CgfYyw1Z','ChjVzhvJDgLVBG','w09lxsbqCM9Qzwn0igXVywrLzdOG','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','D3jPDgu','ntvbvKP2rue','Bw9KDwXL','zxjYB3iUBg9N','Dhj1zq','y3jLzgL0x2nHCMq','r1brELu','BwvZC2fNzq','Dg9gAxHLza','uhjVy2vZCYbxyxjUAw5NoIa','rK9zD0C','CgzUCvK','AxntBg93','wfrlBfe','zgvIDwC','mti0nta4off4rgHJzW','lI9SB2DZlW','vfjbtLnbq1rjt05FuK9mtejbq0S','Bwf4','tK9erv9ftLy','AxLVBMC','y3jLzgvUDgLHBa','Cgf0Aa','rxPWzgm','te9hx1rpx0zjteu','ig9UihbVCNqG','ugnrqwm','DhjPBq','mtjrywP2qwu','ANnVBG','C3rKvgLTzuz1BMn0Aw9UCW','zMfSC2u','DLv4z28','nfHIDeP5ua','C3rHy2S','te9hx0rjuG','su5trvju','ms4WlJu','wMrAsui','yxbPs2v5','q09ntuLu','ic0G','zxHPC3rZu3LUyW','DNDbtxO','vfjbtLnbq1rjt05FqKvhsu4','y2HPBgq','qundvNa','oI8V','ywnJzxnZx3rVA2vU','rxjYB3i','u0vsvKLdrv9oqu1f','u1LZDfa','B3v2yuy','ChjVAMvJDf9SB2fKzwq','C29Tzq','qvbqx1zfuLnjt04','sLDux1nfq1jfva','ody5mtL3B2zpugu','E21Zz30','DgvZDa','zgf0ywjHC2vFy29UzMLN','vu1xrK8','Bwf0y2G','Cg9YDa','vhLRthG','CfP0rha','yM9KEq','BMfTzq','u1fmx0Xpr19qqvjbtvm','oti4ndCWzNbJuM9M','Bwv0Ag9K','Bg9N','AuflEgu','rxrJyvO','ChjPDMf0zv9RzxK','EejxzLy','D2T1vLa','y29UBMvJDgLVBG','rfjpua','yxbWlMXVzW','sw50zxjUywWGC2vYDMvYigvYCM9Y','mw5NC0XeAW','Dg9mB3DLCKnHC2u','De55tLu','C3rHCNrZv2L0Aa','DvPTt1e','zw52','Ew5Qy2i','ChjVAMvJDa','Ec1Yzxf1zxn0lwLK','C2vYDMvYx3jLywr5','mZa1mJqYmhHtz1jyEq','CgLUBY1WCMv0DhK','DhLWzq','y3z2','sNfusvG','mZeWnJGWqvn1teHo','AM9PBG','Aw5MBW','C2vYDMLJzuLUzM8','s21HwMm','tKLxv3i','BgvUz3rO','v3z0B2u','Eez5qM4','u2vYDMvYihn0yxj0Aw5NoIa','zfrJzNK','D2fYBMLUzW','y29Kzq','y3jLzgvUDgLHBhm','EMHLBxO','uK9mtejbq0S','rermx0rst1a','vu5ltK9xtG','q1jjveLdquW','z2v0','zgv2zwXVCg1LBNq','CxvLCNK','Cwrfv2q','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','icdIHPiG'];a0_0xad6a=function(){return _0x531510;};return a0_0xad6a();}module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
@@ -1 +1 @@
1
- const a0_0x2116d0=a0_0x1641;(function(_0x2b3c13,_0x5bb7ae){const _0x45f396=a0_0x1641,_0x28b3f8=_0x2b3c13();while(!![]){try{const _0x17b4e1=-parseInt(_0x45f396(0x94))/0x1+parseInt(_0x45f396(0xa8))/0x2*(parseInt(_0x45f396(0x93))/0x3)+-parseInt(_0x45f396(0x8a))/0x4+-parseInt(_0x45f396(0x87))/0x5+-parseInt(_0x45f396(0x99))/0x6+parseInt(_0x45f396(0xb9))/0x7+parseInt(_0x45f396(0x91))/0x8;if(_0x17b4e1===_0x5bb7ae)break;else _0x28b3f8['push'](_0x28b3f8['shift']());}catch(_0x2300d8){_0x28b3f8['push'](_0x28b3f8['shift']());}}}(a0_0x4645,0x71896));const dbType=(process['env'][a0_0x2116d0(0x9b)]||a0_0x2116d0(0xb5))[a0_0x2116d0(0xad)]();let executeQuery;function a0_0x4645(){const _0x524e93=['u0rlzu4','iIbUB3qGzM91BMqGAw4G','uNPbz2C','zxHWB3j0CW','Dg9mB3DLCKnHC2u','zxHLy3v0zvf1zxj5','y2XLyxi','q2PRDgO','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','Bg9HzeXVB2T1CfrHyMXL','Dgv1D20','lI9KyI1VCMfJBgu','Cg9ZDgDYzxnXBa','zNjVBq','Ae9lEvy','lI9KyG','mJm3odC3nvPMCLj0vG','Bg9VA3vWx3rHyMXLx2XVywrLza','BgvUz3rO','ChvZAa','DMfSAwrHDgvmB29RDxbwywX1zxm','mtm0nJm5nwrtD0zKwa','A2v5CW','C2XPy2u','nJmWota0wM5Wyvn5','z2v0','BwvZC2fNzq','Bg9VA3vWq2fJAgu','zNzKsfa','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','tg9VA3vWihrHyMXLigXVywrLzdOG','otCWmZy3mMjnwwnqBW','AgfZ','m2LvDwfuuq','nZeZnty2q1ntzgLw','CMvZB2X2zuXVB2T1CfzHBhvL','Dg9vChbLCKnHC2u','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','BwfW','ndGXnZqYneXOvvPrqW','zM9YrwfJAa','rejFvfLqrq','r0fKsve','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','C2v0','lI9KyI1TExnXBa','rMH1EvO','zxjYB3i','ChjVy2vZC0XVB2T1CezPzwXKCW','ANHRAgi','lI9SB2DNzxi','DhjPBq','zw50CMLLCW','z2v0rgLZDgLUy3rwywX1zxm','mtCXmtq3nffAzejjtW'];a0_0x4645=function(){return _0x524e93;};return a0_0x4645();}if(dbType==='oracle'){const oracleDb=require(a0_0x2116d0(0xb4));executeQuery=(_0x373923,_0x2963b7)=>oracleDb['executeQuery'](_0x373923,_0x2963b7);}else{if(dbType==='mysql'){const mysqlDb=require(a0_0x2116d0(0x9f));executeQuery=(_0x3d8e59,_0x4d5b86)=>mysqlDb['executeQuery'](_0x3d8e59,_0x4d5b86);}else executeQuery=require(a0_0x2116d0(0xb8))[a0_0x2116d0(0xae)];}const {logger}=require(a0_0x2116d0(0xa4));function a0_0x1641(_0xcae256,_0x862e56){_0xcae256=_0xcae256-0x83;const _0x46451a=a0_0x4645();let _0x164110=_0x46451a[_0xcae256];if(a0_0x1641['iKNvbx']===undefined){var _0x5ce67f=function(_0x88d25e){const _0x428a6d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x469f86='',_0x19590a='';for(let _0x295e4a=0x0,_0x27721a,_0xf3c7a7,_0x53b716=0x0;_0xf3c7a7=_0x88d25e['charAt'](_0x53b716++);~_0xf3c7a7&&(_0x27721a=_0x295e4a%0x4?_0x27721a*0x40+_0xf3c7a7:_0xf3c7a7,_0x295e4a++%0x4)?_0x469f86+=String['fromCharCode'](0xff&_0x27721a>>(-0x2*_0x295e4a&0x6)):0x0){_0xf3c7a7=_0x428a6d['indexOf'](_0xf3c7a7);}for(let _0x1451cd=0x0,_0x8fccf=_0x469f86['length'];_0x1451cd<_0x8fccf;_0x1451cd++){_0x19590a+='%'+('00'+_0x469f86['charCodeAt'](_0x1451cd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x19590a);};a0_0x1641['Bgclaj']=_0x5ce67f,a0_0x1641['asvqRI']={},a0_0x1641['iKNvbx']=!![];}const _0x53aacc=_0x46451a[0x0],_0x3ae119=_0xcae256+_0x53aacc,_0x341fe8=a0_0x1641['asvqRI'][_0x3ae119];return!_0x341fe8?(_0x164110=a0_0x1641['Bgclaj'](_0x164110),a0_0x1641['asvqRI'][_0x3ae119]=_0x164110):_0x164110=_0x341fe8,_0x164110;}class LookupResolver{constructor(){this['lookupCache']=new Map();}['clearCache'](){const _0x40a660=a0_0x2116d0,_0x1a6369={'FfFTp':_0x40a660(0x9d),'lYgiW':'Lookup\x20cache\x20cleared'};this['lookupCache'][_0x40a660(0xaf)](),logger['debug']({'event':_0x1a6369['FfFTp']},_0x1a6369['lYgiW']);}async[a0_0x2116d0(0xb2)](_0x5b211d,_0xb37b0b,_0x520fda){const _0x1b3bf9=a0_0x2116d0,_0x52dd5b={'zOqRW':function(_0x31c8fc,_0x4d4b03){return _0x31c8fc!==_0x4d4b03;},'dxnpa':function(_0x460266,_0x435739){return _0x460266!==_0x435739;},'jxkhb':function(_0x5d7296,_0x54abdf){return _0x5d7296(_0x54abdf);},'Cjktj':function(_0x2fb2f1,_0x337663){return _0x2fb2f1(_0x337663);},'fvdHP':_0x1b3bf9(0x8f)},_0x2e5d04=_0x5b211d+':'+_0xb37b0b+':'+_0x520fda;if(this['lookupCache']['has'](_0x2e5d04))return this[_0x1b3bf9(0x8d)]['get'](_0x2e5d04);try{const _0xc4dedf='SELECT\x20'+_0x520fda+',\x20'+_0xb37b0b+'\x20FROM\x20'+_0x5b211d,_0x413a89=await executeQuery(_0xc4dedf),_0x23543b=new Map();return _0x413a89[_0x1b3bf9(0x9a)](_0xcab405=>{const _0x476098=_0x1b3bf9,_0x1bf395=_0x52dd5b['zOqRW'](_0xcab405[_0xb37b0b],undefined)?_0xcab405[_0xb37b0b]:_0xcab405[_0xb37b0b[_0x476098(0x96)]()],_0x5af9a1=_0xcab405[_0x520fda]!==undefined?_0xcab405[_0x520fda]:_0xcab405[_0x520fda['toUpperCase']()];_0x1bf395!==null&&_0x52dd5b['dxnpa'](_0x1bf395,undefined)&&(_0x23543b[_0x476098(0x9e)](_0x52dd5b[_0x476098(0xa3)](String,_0x1bf395)[_0x476098(0xad)]()['trim'](),_0x5af9a1),_0x23543b[_0x476098(0x9e)](_0x52dd5b[_0x476098(0xb0)](String,_0x1bf395)['trim'](),_0x5af9a1));}),this['lookupCache'][_0x1b3bf9(0x9e)](_0x2e5d04,_0x23543b),logger['info']({'event':_0x1b3bf9(0x83),'table':_0x5b211d,'column':_0xb37b0b,'count':_0x413a89[_0x1b3bf9(0x84)]},_0x1b3bf9(0x90)+_0x5b211d),_0x23543b;}catch(_0x4a1542){logger[_0x1b3bf9(0xa1)]({'event':_0x52dd5b[_0x1b3bf9(0x8e)],'table':_0x5b211d,'error':_0x4a1542[_0x1b3bf9(0x8c)]},_0x1b3bf9(0x97)+_0x5b211d);throw _0x4a1542;}}[a0_0x2116d0(0x95)](_0x505d37,_0x241c0c){const _0x274d22=a0_0x2116d0,_0x2b5c2f={'VlaYJ':function(_0x6aafca,_0x3c3a99){return _0x6aafca===_0x3c3a99;}};if(_0x2b5c2f['VlaYJ'](_0x505d37,null)||_0x505d37===undefined||_0x2b5c2f['VlaYJ'](_0x505d37,''))return null;const _0x5a5843=String(_0x505d37)[_0x274d22(0xa5)]();if(_0x241c0c['has'](_0x5a5843))return _0x241c0c[_0x274d22(0x8b)](_0x5a5843);const _0x482c62=_0x5a5843['toLowerCase']();if(_0x241c0c['has'](_0x482c62))return _0x241c0c[_0x274d22(0x8b)](_0x482c62);return null;}async[a0_0x2116d0(0xa2)](_0x1dcbde,_0x2e4309){const _0xb158d1=a0_0x2116d0,_0x4d6759={'FhuyZ':function(_0x1e1bfc,_0x15e45c){return _0x1e1bfc===_0x15e45c;},'SDKeN':function(_0x300227,_0xb0846e){return _0x300227!==_0xb0846e;},'AzGpU':_0xb158d1(0xb1),'teuwm':'Lookup\x20fields\x20processed'};if(!_0x2e4309||_0x4d6759[_0xb158d1(0xa0)](Object['keys'](_0x2e4309)['length'],0x0))return{'processedRows':_0x1dcbde,'errors':[]};const _0x1cf289=[],_0x8f8334=new Map();for(const [_0x1438c1,_0x24d78d]of Object['entries'](_0x2e4309)){const {lookupTable:_0x2472ef,lookupColumn:_0x59dbb7,lookupIdColumn:_0x30ea00}=_0x24d78d,_0xdfbcca=_0x2472ef+':'+_0x59dbb7+':'+_0x30ea00;if(!_0x8f8334[_0xb158d1(0x92)](_0xdfbcca)){const _0x4d7299=await this[_0xb158d1(0xb2)](_0x2472ef,_0x59dbb7,_0x30ea00);_0x8f8334[_0xb158d1(0x9e)](_0xdfbcca,_0x4d7299);}}const _0xc4865a=_0x1dcbde[_0xb158d1(0x98)]((_0xd66ef2,_0x494b30)=>{const _0x224f2b=_0xb158d1,_0x34c8fb={..._0xd66ef2};for(const [_0x202b31,_0x19ef2c]of Object[_0x224f2b(0xa6)](_0x2e4309)){const {lookupTable:_0x52658d,lookupColumn:_0xbdc31a,lookupIdColumn:_0x4303ad,targetField:_0x2c6b5b,required:_0x396760}=_0x19ef2c,_0xfacc12=_0x52658d+':'+_0xbdc31a+':'+_0x4303ad,_0x3a7c0a=_0x8f8334[_0x224f2b(0x8b)](_0xfacc12),_0x5b49a0=_0xd66ef2[_0x202b31];if((_0x5b49a0===null||_0x5b49a0===undefined||_0x4d6759[_0x224f2b(0xa0)](_0x5b49a0,''))&&!_0x396760){_0x34c8fb[_0x2c6b5b]=null;continue;}const _0x3cd22c=this[_0x224f2b(0x95)](_0x5b49a0,_0x3a7c0a);_0x4d6759[_0x224f2b(0xa9)](_0x3cd22c,null)?_0x34c8fb[_0x2c6b5b]=_0x3cd22c:(_0x396760&&_0x1cf289[_0x224f2b(0x85)]({'rowIndex':_0x494b30,'field':_0x202b31,'value':_0x5b49a0,'targetField':_0x2c6b5b,'lookupTable':_0x52658d,'message':'Value\x20\x22'+_0x5b49a0+_0x224f2b(0xaa)+_0x52658d}),_0x34c8fb[_0x2c6b5b]=null);}return _0x34c8fb;});return logger['info']({'event':_0x4d6759['AzGpU'],'totalRows':_0x1dcbde['length'],'errorCount':_0x1cf289['length'],'lookupFieldCount':Object[_0xb158d1(0x88)](_0x2e4309)['length']},_0x4d6759[_0xb158d1(0xb3)]),{'processedRows':_0xc4865a,'errors':_0x1cf289};}['getDistinctValues'](_0x4a85d6,_0x1fa0a7){const _0x4c41d5=a0_0x2116d0,_0x126e02={'RzAgg':function(_0x331fee,_0x4fca62){return _0x331fee!==_0x4fca62;}},_0x2d7ef8=new Set();return _0x4a85d6[_0x4c41d5(0x9a)](_0x3d9d0d=>{const _0x5d5736=_0x4c41d5,_0x53b597=_0x3d9d0d[_0x1fa0a7];_0x53b597!==null&&_0x126e02[_0x5d5736(0xab)](_0x53b597,undefined)&&_0x53b597!==''&&_0x2d7ef8['add'](String(_0x53b597)['trim']());}),Array[_0x4c41d5(0xb6)](_0x2d7ef8);}async[a0_0x2116d0(0x86)](_0x36b953,_0x1610c8){const _0x38df39=a0_0x2116d0,_0x973b3f={'hOKyV':function(_0x5ed710,_0x99a87a){return _0x5ed710!==_0x99a87a;},'GAdIQ':function(_0x667b6d,_0x440541){return _0x667b6d===_0x440541;},'uMJcc':function(_0x4adea8,_0x3aa56c){return _0x4adea8>_0x3aa56c;}};if(!_0x1610c8||_0x973b3f[_0x38df39(0x9c)](Object['keys'](_0x1610c8)[_0x38df39(0x84)],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x1507d2=[],_0x1a9263={};for(const [_0x49c3d5,_0x36632c]of Object[_0x38df39(0xa6)](_0x1610c8)){const {lookupTable:_0x512c83,lookupColumn:_0x23d2cb,lookupIdColumn:_0xdc2acb,required:_0x1f84f5}=_0x36632c,_0x28deb8=this[_0x38df39(0xa7)](_0x36b953,_0x49c3d5),_0x67bad8=await this['loadLookupTable'](_0x512c83,_0x23d2cb,_0xdc2acb),_0x40fe3c=[],_0x4f1af8=[];_0x28deb8[_0x38df39(0x9a)](_0x4e6c42=>{const _0x28ff63=_0x38df39,_0x5c3459=this[_0x28ff63(0x95)](_0x4e6c42,_0x67bad8);_0x973b3f[_0x28ff63(0xb7)](_0x5c3459,null)?_0x4f1af8['push'](_0x4e6c42):_0x40fe3c['push'](_0x4e6c42);});if(_0x973b3f['uMJcc'](_0x40fe3c['length'],0x0)&&_0x1f84f5){_0x1507d2[_0x38df39(0x85)]({'field':_0x49c3d5,'lookupTable':_0x512c83,'invalidValues':_0x40fe3c,'message':_0x40fe3c['length']+'\x20value(s)\x20not\x20found\x20in\x20'+_0x512c83});const _0x4f55f1=[];_0x67bad8['forEach']((_0x5179a1,_0x164f4c)=>{const _0x1b1ad7=_0x38df39;if(_0x973b3f[_0x1b1ad7(0x9c)](_0x164f4c,_0x164f4c['toLowerCase']()))return;_0x4f55f1[_0x1b1ad7(0x85)](_0x164f4c);}),_0x1a9263[_0x49c3d5]={'invalidValues':_0x40fe3c,'availableValues':_0x4f55f1[_0x38df39(0x89)](0x0,0x32)};}}return{'valid':_0x1507d2['length']===0x0,'errors':_0x1507d2,'suggestions':_0x1a9263};}}module[a0_0x2116d0(0xac)]=new LookupResolver();
1
+ const a0_0x1f94f7=a0_0x15f3;(function(_0x116ef9,_0x4ed6b1){const _0x2e58c3=a0_0x15f3,_0x10ded1=_0x116ef9();while(!![]){try{const _0xbe31e4=-parseInt(_0x2e58c3(0x156))/0x1+parseInt(_0x2e58c3(0x15c))/0x2+-parseInt(_0x2e58c3(0x147))/0x3+parseInt(_0x2e58c3(0x13c))/0x4+parseInt(_0x2e58c3(0x14f))/0x5*(-parseInt(_0x2e58c3(0x160))/0x6)+-parseInt(_0x2e58c3(0x15f))/0x7+parseInt(_0x2e58c3(0x139))/0x8;if(_0xbe31e4===_0x4ed6b1)break;else _0x10ded1['push'](_0x10ded1['shift']());}catch(_0x40eb20){_0x10ded1['push'](_0x10ded1['shift']());}}}(a0_0x5be8,0x22611));const dbType=(process['env'][a0_0x1f94f7(0x14b)]||'postgresql')['toLowerCase']();let executeQuery;if(dbType===a0_0x1f94f7(0x151)){const oracleDb=require(a0_0x1f94f7(0x14e));executeQuery=(_0x5b4218,_0x3e28f2)=>oracleDb[a0_0x1f94f7(0x142)](_0x5b4218,_0x3e28f2);}else{if(dbType===a0_0x1f94f7(0x162)){const mysqlDb=require('./db-mysql');executeQuery=(_0x2ef663,_0x5fbf46)=>mysqlDb['executeQuery'](_0x2ef663,_0x5fbf46);}else executeQuery=require('./db')[a0_0x1f94f7(0x142)];}function a0_0x15f3(_0x503781,_0x2312da){_0x503781=_0x503781-0x137;const _0x5be808=a0_0x5be8();let _0x15f302=_0x5be808[_0x503781];if(a0_0x15f3['OgeXdJ']===undefined){var _0x504c74=function(_0x2f866a){const _0x3580c3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x39a49b='',_0x507a58='';for(let _0x3c6480=0x0,_0x594419,_0x305cce,_0x2ac2b9=0x0;_0x305cce=_0x2f866a['charAt'](_0x2ac2b9++);~_0x305cce&&(_0x594419=_0x3c6480%0x4?_0x594419*0x40+_0x305cce:_0x305cce,_0x3c6480++%0x4)?_0x39a49b+=String['fromCharCode'](0xff&_0x594419>>(-0x2*_0x3c6480&0x6)):0x0){_0x305cce=_0x3580c3['indexOf'](_0x305cce);}for(let _0x3a3f32=0x0,_0x2db8bd=_0x39a49b['length'];_0x3a3f32<_0x2db8bd;_0x3a3f32++){_0x507a58+='%'+('00'+_0x39a49b['charCodeAt'](_0x3a3f32)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x507a58);};a0_0x15f3['ytINdk']=_0x504c74,a0_0x15f3['uPAlSv']={},a0_0x15f3['OgeXdJ']=!![];}const _0x23dff6=_0x5be808[0x0],_0x305dec=_0x503781+_0x23dff6,_0x24a48a=a0_0x15f3['uPAlSv'][_0x305dec];return!_0x24a48a?(_0x15f302=a0_0x15f3['ytINdk'](_0x15f302),a0_0x15f3['uPAlSv'][_0x305dec]=_0x15f302):_0x15f302=_0x24a48a,_0x15f302;}const {logger}=require('./logger');class LookupResolver{constructor(){this['lookupCache']=new Map();}['clearCache'](){const _0x4c5c9b=a0_0x1f94f7,_0x508a51={'bKVPA':_0x4c5c9b(0x13d)};this['lookupCache']['clear'](),logger['debug']({'event':_0x4c5c9b(0x14d)},_0x508a51['bKVPA']);}async[a0_0x1f94f7(0x158)](_0x364dc6,_0x3cb931,_0x41e446){const _0x4e3f7c=a0_0x1f94f7,_0x432522={'Dsjud':function(_0x34cb9d,_0x1a1db3){return _0x34cb9d!==_0x1a1db3;},'cXsVO':function(_0x1bb9cf,_0x3b1eb8){return _0x1bb9cf(_0x3b1eb8);}},_0x37c51d=_0x364dc6+':'+_0x3cb931+':'+_0x41e446;if(this[_0x4e3f7c(0x15e)][_0x4e3f7c(0x148)](_0x37c51d))return this[_0x4e3f7c(0x15e)]['get'](_0x37c51d);try{const _0x47047b='SELECT\x20'+_0x41e446+',\x20'+_0x3cb931+'\x20FROM\x20'+_0x364dc6,_0x44e7d3=await _0x432522['cXsVO'](executeQuery,_0x47047b),_0x3c708c=new Map();return _0x44e7d3[_0x4e3f7c(0x14a)](_0x2f30c1=>{const _0x5d59b5=_0x4e3f7c,_0x317bdd=_0x2f30c1[_0x3cb931]!==undefined?_0x2f30c1[_0x3cb931]:_0x2f30c1[_0x3cb931['toUpperCase']()],_0x345518=_0x432522['Dsjud'](_0x2f30c1[_0x41e446],undefined)?_0x2f30c1[_0x41e446]:_0x2f30c1[_0x41e446['toUpperCase']()];_0x432522[_0x5d59b5(0x161)](_0x317bdd,null)&&_0x317bdd!==undefined&&(_0x3c708c['set'](String(_0x317bdd)[_0x5d59b5(0x140)]()['trim'](),_0x345518),_0x3c708c[_0x5d59b5(0x14c)](_0x432522[_0x5d59b5(0x152)](String,_0x317bdd)['trim'](),_0x345518));}),this['lookupCache']['set'](_0x37c51d,_0x3c708c),logger['info']({'event':_0x4e3f7c(0x146),'table':_0x364dc6,'column':_0x3cb931,'count':_0x44e7d3['length']},_0x4e3f7c(0x145)+_0x364dc6),_0x3c708c;}catch(_0x225eb4){logger[_0x4e3f7c(0x154)]({'event':_0x4e3f7c(0x155),'table':_0x364dc6,'error':_0x225eb4['message']},_0x4e3f7c(0x137)+_0x364dc6);throw _0x225eb4;}}[a0_0x1f94f7(0x13f)](_0x53b688,_0x5eaf3c){const _0x5135f5=a0_0x1f94f7,_0x22c333={'dmZiZ':function(_0x9fabcb,_0x4fa43d){return _0x9fabcb===_0x4fa43d;}};if(_0x53b688===null||_0x53b688===undefined||_0x22c333[_0x5135f5(0x141)](_0x53b688,''))return null;const _0x5037e4=String(_0x53b688)['trim']();if(_0x5eaf3c['has'](_0x5037e4))return _0x5eaf3c[_0x5135f5(0x150)](_0x5037e4);const _0x1b8da7=_0x5037e4['toLowerCase']();if(_0x5eaf3c[_0x5135f5(0x148)](_0x1b8da7))return _0x5eaf3c['get'](_0x1b8da7);return null;}async[a0_0x1f94f7(0x144)](_0x469174,_0x289e33){const _0x4ef163=a0_0x1f94f7,_0x28b8e1={'fNQAG':function(_0x12f3de,_0x1d2688){return _0x12f3de!==_0x1d2688;},'pfCPG':function(_0x1deb2e,_0x4bf4a8){return _0x1deb2e===_0x4bf4a8;},'gzaTK':_0x4ef163(0x13a)};if(!_0x289e33||_0x28b8e1['pfCPG'](Object['keys'](_0x289e33)['length'],0x0))return{'processedRows':_0x469174,'errors':[]};const _0x595078=[],_0xce08dd=new Map();for(const [_0x24c706,_0x5b997c]of Object[_0x4ef163(0x13b)](_0x289e33)){const {lookupTable:_0xf7c745,lookupColumn:_0x32bcf7,lookupIdColumn:_0x39fcb0}=_0x5b997c,_0x4081d7=_0xf7c745+':'+_0x32bcf7+':'+_0x39fcb0;if(!_0xce08dd[_0x4ef163(0x148)](_0x4081d7)){const _0x3fdbdf=await this['loadLookupTable'](_0xf7c745,_0x32bcf7,_0x39fcb0);_0xce08dd[_0x4ef163(0x14c)](_0x4081d7,_0x3fdbdf);}}const _0x14bd5b=_0x469174['map']((_0x2516d5,_0x5aa1e9)=>{const _0x4fcd63=_0x4ef163,_0x4be7af={..._0x2516d5};for(const [_0x3c6d12,_0x1a3dcb]of Object[_0x4fcd63(0x13b)](_0x289e33)){const {lookupTable:_0x599575,lookupColumn:_0xc270ee,lookupIdColumn:_0x5f0956,targetField:_0x9e82f8,required:_0x50fcd1}=_0x1a3dcb,_0x134bfc=_0x599575+':'+_0xc270ee+':'+_0x5f0956,_0x58452d=_0xce08dd['get'](_0x134bfc),_0x507fee=_0x2516d5[_0x3c6d12];if((_0x507fee===null||_0x507fee===undefined||_0x507fee==='')&&!_0x50fcd1){_0x4be7af[_0x9e82f8]=null;continue;}const _0x4165c3=this['resolveLookupValue'](_0x507fee,_0x58452d);_0x28b8e1[_0x4fcd63(0x149)](_0x4165c3,null)?_0x4be7af[_0x9e82f8]=_0x4165c3:(_0x50fcd1&&_0x595078['push']({'rowIndex':_0x5aa1e9,'field':_0x3c6d12,'value':_0x507fee,'targetField':_0x9e82f8,'lookupTable':_0x599575,'message':'Value\x20\x22'+_0x507fee+_0x4fcd63(0x15a)+_0x599575}),_0x4be7af[_0x9e82f8]=null);}return _0x4be7af;});return logger['info']({'event':_0x28b8e1['gzaTK'],'totalRows':_0x469174[_0x4ef163(0x138)],'errorCount':_0x595078[_0x4ef163(0x138)],'lookupFieldCount':Object['keys'](_0x289e33)['length']},'Lookup\x20fields\x20processed'),{'processedRows':_0x14bd5b,'errors':_0x595078};}['getDistinctValues'](_0x3460d4,_0x51ab69){const _0xdc6035=a0_0x1f94f7,_0x558f93={'VVRcg':function(_0x503882,_0x30f6d1){return _0x503882!==_0x30f6d1;}},_0x1d6fff=new Set();return _0x3460d4[_0xdc6035(0x14a)](_0x1c7f9b=>{const _0x287d6c=_0xdc6035,_0x4f0174=_0x1c7f9b[_0x51ab69];_0x4f0174!==null&&_0x558f93[_0x287d6c(0x15d)](_0x4f0174,undefined)&&_0x4f0174!==''&&_0x1d6fff[_0x287d6c(0x157)](String(_0x4f0174)['trim']());}),Array['from'](_0x1d6fff);}async['validateLookupValues'](_0x2a1ef0,_0x2cb4c3){const _0x48a229=a0_0x1f94f7,_0x57c8c9={'plWiX':function(_0xfc8f35,_0x33b564){return _0xfc8f35!==_0x33b564;},'lchOV':function(_0x1dd648,_0x15f2b0){return _0x1dd648===_0x15f2b0;}};if(!_0x2cb4c3||_0x57c8c9[_0x48a229(0x163)](Object[_0x48a229(0x143)](_0x2cb4c3)['length'],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x97174d=[],_0x243b99={};for(const [_0x1e5c6e,_0x4e13ca]of Object[_0x48a229(0x13b)](_0x2cb4c3)){const {lookupTable:_0x269d08,lookupColumn:_0x4f4c9c,lookupIdColumn:_0x3bd0cf,required:_0xe81795}=_0x4e13ca,_0x31132d=this[_0x48a229(0x13e)](_0x2a1ef0,_0x1e5c6e),_0x2bbe74=await this['loadLookupTable'](_0x269d08,_0x4f4c9c,_0x3bd0cf),_0x41a6a8=[],_0x221ac0=[];_0x31132d[_0x48a229(0x14a)](_0x30acaf=>{const _0xac6ed7=_0x48a229,_0x584176=this[_0xac6ed7(0x13f)](_0x30acaf,_0x2bbe74);_0x57c8c9[_0xac6ed7(0x15b)](_0x584176,null)?_0x221ac0[_0xac6ed7(0x159)](_0x30acaf):_0x41a6a8['push'](_0x30acaf);});if(_0x41a6a8['length']>0x0&&_0xe81795){_0x97174d['push']({'field':_0x1e5c6e,'lookupTable':_0x269d08,'invalidValues':_0x41a6a8,'message':_0x41a6a8[_0x48a229(0x138)]+'\x20value(s)\x20not\x20found\x20in\x20'+_0x269d08});const _0x429a0e=[];_0x2bbe74[_0x48a229(0x14a)]((_0x363b5f,_0x550c96)=>{const _0x42b137=_0x48a229;if(_0x550c96===_0x550c96[_0x42b137(0x140)]())return;_0x429a0e['push'](_0x550c96);}),_0x243b99[_0x1e5c6e]={'invalidValues':_0x41a6a8,'availableValues':_0x429a0e['slice'](0x0,0x32)};}}return{'valid':_0x97174d['length']===0x0,'errors':_0x97174d,'suggestions':_0x243b99};}}function a0_0x5be8(){const _0x586f91=['rhnQDwq','BxLZCwW','BgnOt1y','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','BgvUz3rO','mJy5odC2oe5Tr3fxrG','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','zw50CMLLCW','mtm3mZy4rvDus2zo','tg9VA3vWignHy2HLignSzwfYzwq','z2v0rgLZDgLUy3rwywX1zxm','CMvZB2X2zuXVB2T1CfzHBhvL','Dg9mB3DLCKnHC2u','zg1AAvO','zxHLy3v0zvf1zxj5','A2v5CW','ChjVy2vZC0XVB2T1CezPzwXKCW','tg9VA3vWihrHyMXLigXVywrLzdOG','Bg9VA3vWx3rHyMXLx2XVywrLza','ntiXmtyWBLfTsNnR','AgfZ','zK5rquC','zM9YrwfJAa','rejFvfLqrq','C2v0','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','lI9KyI1VCMfJBgu','nu1pt0rZDq','z2v0','B3jHy2XL','y1HZvK8','zxHWB3j0CW','zxjYB3i','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','otqYmgH2DvrtqG','ywrK','Bg9HzeXVB2T1CfrHyMXL','ChvZAa','iIbUB3qGzM91BMqGAw4G','CgXxAvG','mtu3mtG4B21lrNre','vLzsy2C','Bg9VA3vWq2fJAgu','mJq0nZm0ufj5wK9H','ntq4mtC4tfndyKfK'];a0_0x5be8=function(){return _0x586f91;};return a0_0x5be8();}module[a0_0x1f94f7(0x153)]=new LookupResolver();
@@ -1 +1 @@
1
- function a0_0x3793(_0x2fd019,_0x109656){_0x2fd019=_0x2fd019-0x96;const _0x395c34=a0_0x395c();let _0x3793b9=_0x395c34[_0x2fd019];if(a0_0x3793['JMKDvp']===undefined){var _0x371977=function(_0x500f0f){const _0x257c50='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55d880='',_0x1d3cbd='';for(let _0x2e5012=0x0,_0x53e0cf,_0x5b76e8,_0x364a5c=0x0;_0x5b76e8=_0x500f0f['charAt'](_0x364a5c++);~_0x5b76e8&&(_0x53e0cf=_0x2e5012%0x4?_0x53e0cf*0x40+_0x5b76e8:_0x5b76e8,_0x2e5012++%0x4)?_0x55d880+=String['fromCharCode'](0xff&_0x53e0cf>>(-0x2*_0x2e5012&0x6)):0x0){_0x5b76e8=_0x257c50['indexOf'](_0x5b76e8);}for(let _0xf8eaec=0x0,_0x3ea8fa=_0x55d880['length'];_0xf8eaec<_0x3ea8fa;_0xf8eaec++){_0x1d3cbd+='%'+('00'+_0x55d880['charCodeAt'](_0xf8eaec)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1d3cbd);};a0_0x3793['aLQXHo']=_0x371977,a0_0x3793['rqJWNp']={},a0_0x3793['JMKDvp']=!![];}const _0x1a3c80=_0x395c34[0x0],_0x453686=_0x2fd019+_0x1a3c80,_0x3b1515=a0_0x3793['rqJWNp'][_0x453686];return!_0x3b1515?(_0x3793b9=a0_0x3793['aLQXHo'](_0x3793b9),a0_0x3793['rqJWNp'][_0x453686]=_0x3793b9):_0x3793b9=_0x3b1515,_0x3793b9;}const a0_0xcf4a55=a0_0x3793;(function(_0x5aad7f,_0x4e28d4){const _0x5bd9c2=a0_0x3793,_0x218dca=_0x5aad7f();while(!![]){try{const _0x452e7f=parseInt(_0x5bd9c2(0xaf))/0x1+parseInt(_0x5bd9c2(0xaa))/0x2*(parseInt(_0x5bd9c2(0xb9))/0x3)+-parseInt(_0x5bd9c2(0xba))/0x4*(-parseInt(_0x5bd9c2(0xbb))/0x5)+-parseInt(_0x5bd9c2(0xa2))/0x6*(-parseInt(_0x5bd9c2(0x9e))/0x7)+parseInt(_0x5bd9c2(0xa4))/0x8*(parseInt(_0x5bd9c2(0xb8))/0x9)+parseInt(_0x5bd9c2(0xae))/0xa+-parseInt(_0x5bd9c2(0xa1))/0xb;if(_0x452e7f===_0x4e28d4)break;else _0x218dca['push'](_0x218dca['shift']());}catch(_0xec1515){_0x218dca['push'](_0x218dca['shift']());}}}(a0_0x395c,0x8420e));const fs=require('fs')[a0_0xcf4a55(0x96)],path=require('path'),{logger}=require('./logger');function a0_0x395c(){const _0x3b3c9a=['mtq5mdiXmMPhsxDAvW','mtbAvwj5rMC','DxrMoa','AM9PBG','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK','zxjYB3i','ChjVBwLZzxm','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','AgfZ','Cgf5Bg9Hzf9SB2fKzwq','CMvHzezPBgu','CgfYC2u','Cgf5Bg9HzdO','rgHYr1O','n05SrNfzyq','BwvZC2fNzq','y2fJAgu','mJG1nZiYmtrevNnhA0O','ntuYndy3neHvtvHQsG','Axnby3rPB25fBMfIBgvK','odmXmKfrvfH5DG','s2zStwq','ugf5Bg9HzcbUB3qGzM91BMq6ia','Aw5MBW','Bg9HzfbHEwXVywq','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','mZG5mZm4BwHRB1rc','lMPZB24','Cgf5Bg9HzerPCG','z2v0','mJK1nty1mgPrzNzzuq','mZm4mZCZvgz4B0Tl','z2v0rxHWB3j0q29UzMLN','Bg9HzfbHEwXVywrcEu5HBwu','C2v0','zgf0yxrHyMXLC1f1zxj5','lwv4Cg9YDa','lI4VlI4VCgf5Bg9Hza','CMvWBgfJzq','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','ntu4mfPwDhbSqG','m3jJwhPdAq'];a0_0x395c=function(){return _0x3b3c9a;};return a0_0x395c();}class PayloadLoader{constructor(){const _0x25c966=a0_0xcf4a55,_0xc70df4={'cMebg':_0x25c966(0xb5)};this[_0x25c966(0xac)]=path[_0x25c966(0xbd)](__dirname,_0xc70df4['cMebg']),this['cache']=new Map();}async[a0_0xcf4a55(0xa8)](_0x12bfea,_0x14c0bc){const _0x2ee741=a0_0xcf4a55,_0x1044e0={'DhrGZ':_0x2ee741(0x99),'qmLRv':_0x2ee741(0xa9)},_0x252ba6=_0x12bfea+':'+_0x14c0bc;if(this[_0x2ee741(0xa0)][_0x2ee741(0x98)](_0x252ba6))return this[_0x2ee741(0xa0)][_0x2ee741(0xad)](_0x252ba6);const _0x3fab5d=path[_0x2ee741(0xbd)](this['payloadDir'],_0x12bfea+'_'+_0x14c0bc+'.json');try{const _0x3488fd=await fs[_0x2ee741(0x9a)](_0x3fab5d,_0x2ee741(0xbc)),_0x209ee1=JSON['parse'](_0x3488fd);return this['cache']['set'](_0x252ba6,_0x209ee1),logger['debug']({'event':_0x1044e0[_0x2ee741(0x9d)],'project':_0x12bfea,'resource':_0x14c0bc},'Payload\x20loaded\x20successfully'),_0x209ee1;}catch(_0x1437eb){logger[_0x2ee741(0xbf)]({'event':_0x2ee741(0xb7),'project':_0x12bfea,'resource':_0x14c0bc,'error':_0x1437eb[_0x2ee741(0x9f)]},_0x1044e0['qmLRv']);throw new Error('Payload\x20not\x20found:\x20'+_0x12bfea+'_'+_0x14c0bc);}}async[a0_0xcf4a55(0xb1)](_0x24375c){const _0x4fbed8=a0_0xcf4a55,_0x1d5276={'KflMd':'payload_load_error'},_0x53516f=_0x4fbed8(0x9c)+_0x24375c;if(this['cache']['has'](_0x53516f))return this['cache'][_0x4fbed8(0xad)](_0x53516f);const _0x25c7aa=path[_0x4fbed8(0xbd)](this[_0x4fbed8(0xac)],_0x24375c+_0x4fbed8(0xab));try{const _0x468930=await fs['readFile'](_0x25c7aa,_0x4fbed8(0xbc)),_0x364da0=JSON[_0x4fbed8(0x9b)](_0x468930);return this[_0x4fbed8(0xa0)][_0x4fbed8(0xb2)](_0x53516f,_0x364da0),logger['debug']({'event':_0x4fbed8(0x99),'payloadName':_0x24375c},'Payload\x20loaded\x20successfully\x20by\x20name'),_0x364da0;}catch(_0x127d80){logger['error']({'event':_0x1d5276[_0x4fbed8(0xa5)],'payloadName':_0x24375c,'error':_0x127d80['message']},'Failed\x20to\x20load\x20payload\x20by\x20name');throw new Error(_0x4fbed8(0xa6)+_0x24375c);}}[a0_0xcf4a55(0xa3)](_0x2ad2c1,_0x42ee54){const _0x5909a6={'Lfgoz':function(_0x56e44e,_0x23657f){return _0x56e44e===_0x23657f;}};return _0x2ad2c1['action']&&_0x5909a6['Lfgoz'](_0x2ad2c1['action'][_0x42ee54],!![]);}[a0_0xcf4a55(0xb0)](_0x3c37f0){const _0x5713ed=a0_0xcf4a55;return{'columns':_0x3c37f0['fieldName']||[],'filename':_0x3c37f0['tableName'][_0x5713ed(0xb6)]('.','-')+_0x5713ed(0xb4),'datatablesQuery':_0x3c37f0[_0x5713ed(0xb3)]||null,'columnFormats':_0x3c37f0['columnFormats']||null,'fieldLabels':_0x3c37f0['fieldLabels']||null};}['clearCache'](){const _0x29995b=a0_0xcf4a55,_0x35d100={'ulGyb':_0x29995b(0xbe)};this['cache']['clear'](),logger[_0x29995b(0xa7)]({'event':_0x35d100['ulGyb']},_0x29995b(0x97));}}module['exports']=new PayloadLoader();
1
+ const a0_0x553192=a0_0x4dd4;(function(_0x1bc561,_0x2deb10){const _0x586b49=a0_0x4dd4,_0x4b19c0=_0x1bc561();while(!![]){try{const _0xcd0260=parseInt(_0x586b49(0x16c))/0x1+-parseInt(_0x586b49(0x17b))/0x2*(parseInt(_0x586b49(0x165))/0x3)+-parseInt(_0x586b49(0x15f))/0x4*(-parseInt(_0x586b49(0x174))/0x5)+parseInt(_0x586b49(0x176))/0x6+-parseInt(_0x586b49(0x163))/0x7*(parseInt(_0x586b49(0x169))/0x8)+parseInt(_0x586b49(0x16f))/0x9*(parseInt(_0x586b49(0x181))/0xa)+-parseInt(_0x586b49(0x179))/0xb;if(_0xcd0260===_0x2deb10)break;else _0x4b19c0['push'](_0x4b19c0['shift']());}catch(_0x4cf9fa){_0x4b19c0['push'](_0x4b19c0['shift']());}}}(a0_0xc543,0xc9a48));const fs=require('fs')[a0_0x553192(0x160)],path=require('path'),{logger}=require('./logger');function a0_0x4dd4(_0x4a92f5,_0x3c4613){_0x4a92f5=_0x4a92f5-0x157;const _0xc5437d=a0_0xc543();let _0x4dd471=_0xc5437d[_0x4a92f5];if(a0_0x4dd4['ITQtrQ']===undefined){var _0x9dfc6e=function(_0x3f55e8){const _0x14847f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3be755='',_0x16b6a0='';for(let _0x5a40d8=0x0,_0x51d08d,_0xb45d9,_0x54ced4=0x0;_0xb45d9=_0x3f55e8['charAt'](_0x54ced4++);~_0xb45d9&&(_0x51d08d=_0x5a40d8%0x4?_0x51d08d*0x40+_0xb45d9:_0xb45d9,_0x5a40d8++%0x4)?_0x3be755+=String['fromCharCode'](0xff&_0x51d08d>>(-0x2*_0x5a40d8&0x6)):0x0){_0xb45d9=_0x14847f['indexOf'](_0xb45d9);}for(let _0xfa1368=0x0,_0x245709=_0x3be755['length'];_0xfa1368<_0x245709;_0xfa1368++){_0x16b6a0+='%'+('00'+_0x3be755['charCodeAt'](_0xfa1368)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x16b6a0);};a0_0x4dd4['tDhYLu']=_0x9dfc6e,a0_0x4dd4['FNiYbV']={},a0_0x4dd4['ITQtrQ']=!![];}const _0x153569=_0xc5437d[0x0],_0x337673=_0x4a92f5+_0x153569,_0x3a8396=a0_0x4dd4['FNiYbV'][_0x337673];return!_0x3a8396?(_0x4dd471=a0_0x4dd4['tDhYLu'](_0x4dd471),a0_0x4dd4['FNiYbV'][_0x337673]=_0x4dd471):_0x4dd471=_0x3a8396,_0x4dd471;}class PayloadLoader{constructor(){const _0x5c8a8d=a0_0x553192;this[_0x5c8a8d(0x172)]=path[_0x5c8a8d(0x15a)](__dirname,'../../payload'),this[_0x5c8a8d(0x168)]=new Map();}async['loadPayload'](_0x2e387d,_0x435d0e){const _0xad1ef6=a0_0x553192,_0x164f21={'FeXpL':'utf8','sGtEl':'Payload\x20loaded\x20successfully'},_0x5d006e=_0x2e387d+':'+_0x435d0e;if(this[_0xad1ef6(0x168)][_0xad1ef6(0x17f)](_0x5d006e))return this['cache'][_0xad1ef6(0x167)](_0x5d006e);const _0x1be5e0=path['join'](this[_0xad1ef6(0x172)],_0x2e387d+'_'+_0x435d0e+'.json');try{const _0x4e234b=await fs['readFile'](_0x1be5e0,_0x164f21[_0xad1ef6(0x16e)]),_0x75df14=JSON[_0xad1ef6(0x162)](_0x4e234b);return this['cache']['set'](_0x5d006e,_0x75df14),logger['debug']({'event':'payload_loaded','project':_0x2e387d,'resource':_0x435d0e},_0x164f21[_0xad1ef6(0x180)]),_0x75df14;}catch(_0x2d64f7){logger[_0xad1ef6(0x15b)]({'event':_0xad1ef6(0x16d),'project':_0x2e387d,'resource':_0x435d0e,'error':_0x2d64f7[_0xad1ef6(0x173)]},'Failed\x20to\x20load\x20payload');throw new Error(_0xad1ef6(0x177)+_0x2e387d+'_'+_0x435d0e);}}async[a0_0x553192(0x159)](_0x5c62e5){const _0x27d181=a0_0x553192,_0x3a9fae={'sQUfe':_0x27d181(0x175)},_0x3205f1='payload:'+_0x5c62e5;if(this['cache']['has'](_0x3205f1))return this['cache'][_0x27d181(0x167)](_0x3205f1);const _0x9bf417=path[_0x27d181(0x15a)](this[_0x27d181(0x172)],_0x5c62e5+'.json');try{const _0x1ab38f=await fs[_0x27d181(0x15d)](_0x9bf417,_0x27d181(0x17c)),_0x3c297a=JSON['parse'](_0x1ab38f);return this[_0x27d181(0x168)][_0x27d181(0x161)](_0x3205f1,_0x3c297a),logger[_0x27d181(0x178)]({'event':'payload_loaded','payloadName':_0x5c62e5},'Payload\x20loaded\x20successfully\x20by\x20name'),_0x3c297a;}catch(_0x4271a8){logger[_0x27d181(0x15b)]({'event':_0x27d181(0x16d),'payloadName':_0x5c62e5,'error':_0x4271a8[_0x27d181(0x173)]},_0x3a9fae[_0x27d181(0x170)]);throw new Error(_0x27d181(0x177)+_0x5c62e5);}}[a0_0x553192(0x166)](_0x524f3f,_0x20f88e){const _0x17caef=a0_0x553192,_0x2b1eb7={'BERYo':function(_0x1ee761,_0x166cf3){return _0x1ee761===_0x166cf3;}};return _0x524f3f[_0x17caef(0x17d)]&&_0x2b1eb7['BERYo'](_0x524f3f['action'][_0x20f88e],!![]);}[a0_0x553192(0x171)](_0x96c752){const _0x27d829=a0_0x553192;return{'columns':_0x96c752['fieldName']||[],'filename':_0x96c752[_0x27d829(0x15e)]['replace']('.','-')+_0x27d829(0x157),'datatablesQuery':_0x96c752[_0x27d829(0x15c)]||null,'columnFormats':_0x96c752['columnFormats']||null,'fieldLabels':_0x96c752['fieldLabels']||null};}[a0_0x553192(0x16a)](){const _0x2e50ee=a0_0x553192,_0x30031a={'OMYjs':_0x2e50ee(0x164),'Lskdr':_0x2e50ee(0x17e)};this[_0x2e50ee(0x168)]['clear'](),logger['info']({'event':_0x30031a[_0x2e50ee(0x17a)]},_0x30031a[_0x2e50ee(0x16b)]);}}module[a0_0x553192(0x158)]=new PayloadLoader();function a0_0xc543(){const _0x1cea30=['y2fJAgu','mJrTs0n6yw8','y2XLyxjdywnOzq','thnRzhi','mtiZmta3m3fmrvDiwq','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','rMvyCeW','mtCXourTAerLqW','C1fvzMu','z2v0rxHWB3j0q29UzMLN','Cgf5Bg9HzerPCG','BwvZC2fNzq','mti3mZq0nvbqzu9Qsa','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','otCZnZaYohbrANDiDG','ugf5Bg9HzcbUB3qGzM91BMq6ia','zgvIDwC','mti1mJC5mZnND2nfB2q','t01zANm','mti1mJaXogfWsMXQsa','DxrMoa','ywn0Aw9U','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','AgfZ','C0D0rwW','nZa2mfzqEhj0za','lwv4Cg9YDa','zxHWB3j0CW','Bg9HzfbHEwXVywrcEu5HBwu','AM9PBG','zxjYB3i','zgf0yxrHyMXLC1f1zxj5','CMvHzezPBgu','DgfIBgvoyw1L','mJbnCKLQC2i','ChjVBwLZzxm','C2v0','CgfYC2u','mJqZote1n21gCLjKtG','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK','nK95qMHctG','Axnby3rPB25fBMfIBgvK','z2v0'];a0_0xc543=function(){return _0x1cea30;};return a0_0xc543();}
@@ -1 +1 @@
1
- 'use strict';function a0_0x9cad(){var _0x39f6af=['ntKWnZy2nNLbreDsvW','mJy1mJuZmg1PthvtDG','ndK3mdDZy3H4sMO','nJaYmfHwuhn6sa','nta4mtm4sLv6v0TS','mZy0ndu1m2PlA0LXsW','mty3oteYng5ZEMLvrW','nJy5nZKXmKnJALDZEq','n3rrtNzjza','Dg9ju09tDhjPBMC','nNPzq2Puqq'];a0_0x9cad=function(){return _0x39f6af;};return a0_0x9cad();}(function(_0x37d3e3,_0x1a5eb0){var _0x2d1dad=a0_0x1b98,_0x5a71d6=_0x37d3e3();while(!![]){try{var _0x498a0b=parseInt(_0x2d1dad(0xf1))/0x1*(parseInt(_0x2d1dad(0xf6))/0x2)+-parseInt(_0x2d1dad(0xf7))/0x3+-parseInt(_0x2d1dad(0xed))/0x4+-parseInt(_0x2d1dad(0xf3))/0x5+-parseInt(_0x2d1dad(0xf2))/0x6+-parseInt(_0x2d1dad(0xef))/0x7*(parseInt(_0x2d1dad(0xee))/0x8)+-parseInt(_0x2d1dad(0xf4))/0x9*(-parseInt(_0x2d1dad(0xf5))/0xa);if(_0x498a0b===_0x1a5eb0)break;else _0x5a71d6['push'](_0x5a71d6['shift']());}catch(_0x526f3e){_0x5a71d6['push'](_0x5a71d6['shift']());}}}(a0_0x9cad,0xd2840));function a0_0x1b98(_0x3bedc5,_0x1f13c5){_0x3bedc5=_0x3bedc5-0xed;var _0x9cad6d=a0_0x9cad();var _0x1b9884=_0x9cad6d[_0x3bedc5];if(a0_0x1b98['ZlFDht']===undefined){var _0x346385=function(_0x461214){var _0x20744a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x284e70='',_0x2c7f1f='';for(var _0x1da29a=0x0,_0x46357a,_0x3ce990,_0x5bd794=0x0;_0x3ce990=_0x461214['charAt'](_0x5bd794++);~_0x3ce990&&(_0x46357a=_0x1da29a%0x4?_0x46357a*0x40+_0x3ce990:_0x3ce990,_0x1da29a++%0x4)?_0x284e70+=String['fromCharCode'](0xff&_0x46357a>>(-0x2*_0x1da29a&0x6)):0x0){_0x3ce990=_0x20744a['indexOf'](_0x3ce990);}for(var _0x11b88f=0x0,_0x540041=_0x284e70['length'];_0x11b88f<_0x540041;_0x11b88f++){_0x2c7f1f+='%'+('00'+_0x284e70['charCodeAt'](_0x11b88f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2c7f1f);};a0_0x1b98['oktasO']=_0x346385,a0_0x1b98['PMvTix']={},a0_0x1b98['ZlFDht']=!![];}var _0x3c8373=_0x9cad6d[0x0],_0x591a3d=_0x3bedc5+_0x3c8373,_0x2f9c4d=a0_0x1b98['PMvTix'][_0x591a3d];return!_0x2f9c4d?(_0x1b9884=a0_0x1b98['oktasO'](_0x1b9884),a0_0x1b98['PMvTix'][_0x591a3d]=_0x1b9884):_0x1b9884=_0x2f9c4d,_0x1b9884;}function createResponse(_0x5ba2a4,_0x18cbae,_0x21ad10=null){return{'success':!![],'statusCode':_0x5ba2a4,'message':_0x18cbae,'data':_0x21ad10,'timestamp':new Date()['toISOString']()};}function createError(_0x13eb82,_0x264898,_0xb0e804=null){return{'success':![],'statusCode':_0x13eb82,'message':_0x264898,'data':_0xb0e804,'timestamp':new Date()['toISOString']()};}function createValidationError(_0x3560bd,_0x515238){var _0x3efb40=a0_0x1b98;return{'success':![],'statusCode':0x190,'message':_0x3560bd,'data':{'errors':_0x515238},'timestamp':new Date()[_0x3efb40(0xf0)]()};}module['exports']={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
1
+ 'use strict';function a0_0x1b96(){var _0xc57cf7=['nJq2mZmWCNrssePT','mJiZmJmYogTxBfPbzq','mtC0ndG1nNr2reD4vW','nta2nJa4ofDTt0zgrG','zxHWB3j0CW','Dg9ju09tDhjPBMC','mJC2q0Dwy2XM','mta1mZi0ndHLCLjVsKu','mJCWntiXnunzt3LdAG','odq2oxnVtMr2sW'];a0_0x1b96=function(){return _0xc57cf7;};return a0_0x1b96();}var a0_0x1b6e20=a0_0x4a1c;(function(_0x2cb122,_0x34dd88){var _0x4b4c77=a0_0x4a1c,_0x26a2a0=_0x2cb122();while(!![]){try{var _0x1df819=-parseInt(_0x4b4c77(0x81))/0x1+parseInt(_0x4b4c77(0x83))/0x2+parseInt(_0x4b4c77(0x80))/0x3*(parseInt(_0x4b4c77(0x87))/0x4)+-parseInt(_0x4b4c77(0x7f))/0x5+-parseInt(_0x4b4c77(0x84))/0x6+parseInt(_0x4b4c77(0x82))/0x7+parseInt(_0x4b4c77(0x7e))/0x8;if(_0x1df819===_0x34dd88)break;else _0x26a2a0['push'](_0x26a2a0['shift']());}catch(_0x381538){_0x26a2a0['push'](_0x26a2a0['shift']());}}}(a0_0x1b96,0xa3cea));function createResponse(_0x16acda,_0x16bf81,_0x38640f=null){var _0x353b0a=a0_0x4a1c;return{'success':!![],'statusCode':_0x16acda,'message':_0x16bf81,'data':_0x38640f,'timestamp':new Date()[_0x353b0a(0x86)]()};}function a0_0x4a1c(_0x4a3154,_0x35edde){_0x4a3154=_0x4a3154-0x7e;var _0x1b96d8=a0_0x1b96();var _0x4a1c42=_0x1b96d8[_0x4a3154];if(a0_0x4a1c['YKWhSN']===undefined){var _0xebb930=function(_0x53ebf8){var _0x54bd4a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x325eff='',_0x420676='';for(var _0x2fc1ef=0x0,_0x2cf0f9,_0x1b8a8c,_0x462860=0x0;_0x1b8a8c=_0x53ebf8['charAt'](_0x462860++);~_0x1b8a8c&&(_0x2cf0f9=_0x2fc1ef%0x4?_0x2cf0f9*0x40+_0x1b8a8c:_0x1b8a8c,_0x2fc1ef++%0x4)?_0x325eff+=String['fromCharCode'](0xff&_0x2cf0f9>>(-0x2*_0x2fc1ef&0x6)):0x0){_0x1b8a8c=_0x54bd4a['indexOf'](_0x1b8a8c);}for(var _0x239ae2=0x0,_0x57ad30=_0x325eff['length'];_0x239ae2<_0x57ad30;_0x239ae2++){_0x420676+='%'+('00'+_0x325eff['charCodeAt'](_0x239ae2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x420676);};a0_0x4a1c['DbRgez']=_0xebb930,a0_0x4a1c['VycBvg']={},a0_0x4a1c['YKWhSN']=!![];}var _0x57eaad=_0x1b96d8[0x0],_0x26bf45=_0x4a3154+_0x57eaad,_0x2f1091=a0_0x4a1c['VycBvg'][_0x26bf45];return!_0x2f1091?(_0x4a1c42=a0_0x4a1c['DbRgez'](_0x4a1c42),a0_0x4a1c['VycBvg'][_0x26bf45]=_0x4a1c42):_0x4a1c42=_0x2f1091,_0x4a1c42;}function createError(_0x5d283c,_0x44c6bc,_0x33f49f=null){return{'success':![],'statusCode':_0x5d283c,'message':_0x44c6bc,'data':_0x33f49f,'timestamp':new Date()['toISOString']()};}function createValidationError(_0x530a6c,_0x318077){var _0x14c882=a0_0x4a1c;return{'success':![],'statusCode':0x190,'message':_0x530a6c,'data':{'errors':_0x318077},'timestamp':new Date()[_0x14c882(0x86)]()};}module[a0_0x1b6e20(0x85)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
@@ -1 +1 @@
1
- const a0_0x177d31=a0_0x2fcc;(function(_0x364ec4,_0x56ca0f){const _0x243922=a0_0x2fcc,_0x13b55d=_0x364ec4();while(!![]){try{const _0x511038=parseInt(_0x243922(0xf6))/0x1+parseInt(_0x243922(0xde))/0x2*(-parseInt(_0x243922(0xe9))/0x3)+-parseInt(_0x243922(0xec))/0x4*(parseInt(_0x243922(0xd2))/0x5)+parseInt(_0x243922(0xfb))/0x6+parseInt(_0x243922(0xe8))/0x7*(-parseInt(_0x243922(0x102))/0x8)+-parseInt(_0x243922(0x100))/0x9*(parseInt(_0x243922(0xda))/0xa)+-parseInt(_0x243922(0xf2))/0xb*(-parseInt(_0x243922(0xf3))/0xc);if(_0x511038===_0x56ca0f)break;else _0x13b55d['push'](_0x13b55d['shift']());}catch(_0x457953){_0x13b55d['push'](_0x13b55d['shift']());}}}(a0_0x1ef1,0x64f80),require(a0_0x177d31(0xf9))['config']());const amqp=require(a0_0x177d31(0xee)),{formatDate}=require(a0_0x177d31(0xf1)),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process['env']['RABBITMQ_EXCHANGE'],ROUTING_KEY=process['env']['RABBITMQ_ROUTING_KEY'],QUEUE=process['env']['RABBITMQ_QUEUE'];async function createConnection(){const _0x1a4b63=a0_0x177d31,_0x161812={'EIxcw':function(_0x3c9784,_0xb6178e){return _0x3c9784(_0xb6178e);}};try{const _0x58fba3=await amqp['connect'](RABBITMQ_URL);return console[_0x1a4b63(0xd7)]('['+formatDate(new Date())+_0x1a4b63(0xf8)),_0x58fba3;}catch(_0x3b9ef6){console['error']('['+_0x161812[_0x1a4b63(0xfc)](formatDate,new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x3b9ef6['message']);throw _0x3b9ef6;}}async function createChannel(_0x3d4b6b){const _0x14e7d2=a0_0x177d31;try{const _0x366018=await _0x3d4b6b['createChannel']();return console[_0x14e7d2(0xd7)]('['+formatDate(new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x366018;}catch(_0x55b83c){console[_0x14e7d2(0xdb)]('['+formatDate(new Date())+_0x14e7d2(0xe6)+_0x55b83c['message']);throw _0x55b83c;}}function a0_0x2fcc(_0x334abe,_0x1f7b09){_0x334abe=_0x334abe-0xd1;const _0x1ef170=a0_0x1ef1();let _0x2fcc4a=_0x1ef170[_0x334abe];if(a0_0x2fcc['ncJKyZ']===undefined){var _0x5810e4=function(_0x18b3b1){const _0x5f45dd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x32d4e9='',_0x337ce8='';for(let _0x10b8c7=0x0,_0x509d16,_0x54b349,_0x245b2b=0x0;_0x54b349=_0x18b3b1['charAt'](_0x245b2b++);~_0x54b349&&(_0x509d16=_0x10b8c7%0x4?_0x509d16*0x40+_0x54b349:_0x54b349,_0x10b8c7++%0x4)?_0x32d4e9+=String['fromCharCode'](0xff&_0x509d16>>(-0x2*_0x10b8c7&0x6)):0x0){_0x54b349=_0x5f45dd['indexOf'](_0x54b349);}for(let _0x1873fa=0x0,_0x6c4652=_0x32d4e9['length'];_0x1873fa<_0x6c4652;_0x1873fa++){_0x337ce8+='%'+('00'+_0x32d4e9['charCodeAt'](_0x1873fa)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x337ce8);};a0_0x2fcc['Uxpcnx']=_0x5810e4,a0_0x2fcc['EEztAK']={},a0_0x2fcc['ncJKyZ']=!![];}const _0x1770db=_0x1ef170[0x0],_0x2db637=_0x334abe+_0x1770db,_0x3cc35e=a0_0x2fcc['EEztAK'][_0x2db637];return!_0x3cc35e?(_0x2fcc4a=a0_0x2fcc['Uxpcnx'](_0x2fcc4a),a0_0x2fcc['EEztAK'][_0x2db637]=_0x2fcc4a):_0x2fcc4a=_0x3cc35e,_0x2fcc4a;}async function setupInfrastructure(_0x290ee7){const _0x477f59=a0_0x177d31,_0x1bf507={'YOBMp':_0x477f59(0xe2),'LSDPc':'direct','FUWpl':function(_0x21b794,_0x266d60){return _0x21b794(_0x266d60);},'wqmLF':_0x477f59(0xff)};try{await _0x290ee7['assertExchange'](_0x1bf507[_0x477f59(0xe7)],_0x1bf507[_0x477f59(0xf4)],{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+_0x477f59(0xe5));}catch(_0x299694){console[_0x477f59(0xdb)]('['+formatDate(new Date())+_0x477f59(0xf7),_0x299694['message']);throw _0x299694;}try{await _0x290ee7[_0x477f59(0xe0)](EXCHANGE,'direct',{'durable':!![],'autoDelete':![]}),console[_0x477f59(0xd7)]('['+formatDate(new Date())+']\x20Exchange\x20'+EXCHANGE+_0x477f59(0xd5));}catch(_0x4e2c9e){console[_0x477f59(0xdb)]('['+formatDate(new Date())+_0x477f59(0xdd)+EXCHANGE+':',_0x4e2c9e['message']);throw _0x4e2c9e;}const _0x5b55ae=ROUTING_KEY+_0x477f59(0xf0);try{const _0x3af954={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x290ee7['assertQueue'](_0x5b55ae,_0x3af954),console[_0x477f59(0xd7)]('['+formatDate(new Date())+_0x477f59(0xf5)+_0x5b55ae+_0x477f59(0xd5)),await _0x290ee7[_0x477f59(0xef)](_0x5b55ae,_0x477f59(0xe2),ROUTING_KEY),console[_0x477f59(0xd7)]('['+formatDate(new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+_0x477f59(0xd3));}catch(_0x23d46b){console['error']('['+formatDate(new Date())+_0x477f59(0xeb),_0x23d46b[_0x477f59(0xe1)]);throw _0x23d46b;}try{const _0x48b5b6={'durable':!![],'arguments':{'x-dead-letter-exchange':'retry-exchange','x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x54bb6d=await _0x290ee7[_0x477f59(0xd1)](QUEUE,_0x48b5b6);console['log']('['+formatDate(new Date())+_0x477f59(0xd6)+QUEUE+'\x20'+(_0x54bb6d['queue']===QUEUE?_0x477f59(0xfe):'found')+'\x20with\x20DLX'),await _0x290ee7['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+formatDate(new Date())+_0x477f59(0xd9)+EXCHANGE+'\x20->\x20'+QUEUE+'\x20('+ROUTING_KEY+_0x477f59(0xea));}catch(_0x56c6f1){if(_0x56c6f1[_0x477f59(0xe1)]['includes']('inequivalent\x20arg')&&_0x56c6f1[_0x477f59(0xe1)][_0x477f59(0xed)](_0x477f59(0xdf)))console[_0x477f59(0xdb)]('\x0a['+_0x1bf507[_0x477f59(0xd4)](formatDate,new Date())+_0x477f59(0xd8)+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console[_0x477f59(0xdb)](_0x477f59(0xdc)+QUEUE+_0x477f59(0xfa)),console['error']('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process[_0x477f59(0x101)](0x1);else{console[_0x477f59(0xdb)]('['+formatDate(new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x56c6f1['message']);throw _0x56c6f1;}}}catch(_0x4f7b47){if(!_0x4f7b47[_0x477f59(0xe1)]['includes'](_0x1bf507[_0x477f59(0xe4)])){console['error']('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x4f7b47[_0x477f59(0xe1)]);throw _0x4f7b47;}process['exit'](0x1);}}async function closeConnection(_0x271f03){const _0x86027c=a0_0x177d31,_0xe47e73={'eHPDF':function(_0x521b7b,_0x43d3b0){return _0x521b7b(_0x43d3b0);}};if(_0x271f03)try{await _0x271f03[_0x86027c(0xfd)](),console['log']('['+formatDate(new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x28b8f9){console['error']('['+_0xe47e73['eHPDF'](formatDate,new Date())+_0x86027c(0xe3)+_0x28b8f9[_0x86027c(0xe1)]);}}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};function a0_0x1ef1(){const _0x11ebd9=['uxvLDwuG','xsbfCNjVCIbJCMvHDgLUzYbLEgnOyw5Nzsa','mLrIueTjtG','Ec1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEq','yxnZzxj0rxHJAgfUz2u','BwvZC2fNzq','CMv0CNKTzxHJAgfUz2u','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','D3fTtey','xsbszxrYEsbLEgnOyw5NzsbJCMvHDgvKl3jLywr5','xsbgywLSzwqGDg8Gy3jLyxrLifjHyMjPDe1rignOyw5UzwW6ia','wu9ctxa','mJqZmZi3uK55sxj3','nJu2odC3DMrPB3bO','ksbJCMvHDgvK','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbXDwv1ztO','mJbyA0r1vNG','Aw5JBhvKzxm','yw1XCgXPyG','yMLUzff1zxvL','x3jLDhj5','lI9KyxrLsgvSCgvY','mJCYogLfruPesq','otyWnZjmDgXyz0C','tfneugm','xsbszxrYEsbXDwv1zsa','mZKZotK1vLHkrNjH','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','xsbtDwnJzxnZzNvSBhKGy29UBMvJDgvKihrVifjHyMjPDe1r','zg90zw52','ihDHCYbJCMvHDgvKihDPDgGGysbKAwzMzxjLBNqGEc1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEs4','ntq4nZq4v2jxtMPh','ruL4y3C','y2XVC2u','y3jLyxrLzc9YzwfKEq','Aw5LCxvPDMfSzw50igfYzW','oxjrBgLbsq','zxHPDa','mtC2AwfhEhDy','yxnZzxj0uxvLDwu','nZa3mtu1yufVzKrx','ignYzwf0zwq','rLvxCgW','ignYzwf0zwqVCMvHzhK','xsbrDwv1zsa','Bg9N','xsbfuLjpuJOGuxvLDwuG','xsbcAw5KAw5Nia','mZy2nte3mgnSD1H1Aa','zxjYB3i'];a0_0x1ef1=function(){return _0x11ebd9;};return a0_0x1ef1();}
1
+ const a0_0x584818=a0_0x4db8;(function(_0x1f2b52,_0x2f0c45){const _0x208bcb=a0_0x4db8,_0x5eff3f=_0x1f2b52();while(!![]){try{const _0x5c3f27=parseInt(_0x208bcb(0xa5))/0x1+parseInt(_0x208bcb(0xaa))/0x2*(-parseInt(_0x208bcb(0x98))/0x3)+parseInt(_0x208bcb(0x9a))/0x4*(parseInt(_0x208bcb(0xa4))/0x5)+parseInt(_0x208bcb(0xba))/0x6*(-parseInt(_0x208bcb(0xad))/0x7)+-parseInt(_0x208bcb(0xa2))/0x8+-parseInt(_0x208bcb(0x95))/0x9+parseInt(_0x208bcb(0xa9))/0xa;if(_0x5c3f27===_0x2f0c45)break;else _0x5eff3f['push'](_0x5eff3f['shift']());}catch(_0x17b167){_0x5eff3f['push'](_0x5eff3f['shift']());}}}(a0_0x1868,0x31ea7),require('dotenv')['config']());const amqp=require('amqplib'),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process[a0_0x584818(0xa7)]['RABBITMQ_EXCHANGE'],ROUTING_KEY=process[a0_0x584818(0xa7)][a0_0x584818(0x9b)],QUEUE=process['env']['RABBITMQ_QUEUE'];function a0_0x1868(){const _0x441008=['zxHPDa','yxnZzxj0rxHJAgfUz2u','xsbcAw5KAw5Nia','mti3odq4ohPvwMXYwq','qNziqKW','mtbPCxbAt3m','mZe3nZe4A25esfHe','x3jLDhj5','zw52','ic0+ia','nteZnZmXmffPBKzwsa','ntiYmJHVr3z3A0C','yxnZzxj0uxvLDwu','yMLUzff1zxvL','nda2rg1XCM14','ignYzwf0zwqVCMvHzhK','zxjYB3i','xsbszxrYEsbLEgnOyw5NzsbJCMvHDgvKl3jLywr5','thL4BLG','BwvZC2fNzq','igLZigfSCMvHzhKGAw4GDxnLihDPDgGGysbKAwzMzxjLBNqGCM91DgLUzYbRzxKU','Aw5LCxvPDMfSzw50igfYzW','xsbszxrYEsbIAw5KAw5NigzVCIa','y3jLyxrLzc9YzwfKEq','xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','ignYzwf0zwq','Bg9N','mJi4nZHKEhLgvwK','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','CMv0CNKTzxHJAgfUz2u','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','vgvzqNK','ihDPDgGGreXy','mJi0mtiWn0r3s0z6uW','xsbsywjIAxrnusbJB25Uzwn0Aw9UignSB3nLza','xsbgywLSzwqGDg8Gy3jLyxrLifjHyMjPDe1rignOyw5UzwW6ia','mZLsC3zVEMC','xsbfuLjpuJOGuxvLDwuG','nJG0otuYveD5uxjk','uKfcqKLutvfFuK9vveLor19lrvK','ksbJCMvHDgvK','B29mrNG','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG'];a0_0x1868=function(){return _0x441008;};return a0_0x1868();}async function createConnection(){const _0x5dc41d=a0_0x584818;try{const _0x2923ae=await amqp['connect'](RABBITMQ_URL);return console[_0x5dc41d(0xb9)]('['+formatDate(new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x2923ae;}catch(_0x425f01){console['error']('['+formatDate(new Date())+_0x5dc41d(0xb7)+_0x425f01['message']);throw _0x425f01;}}function a0_0x4db8(_0x4738a,_0x2e90a6){_0x4738a=_0x4738a-0x90;const _0x18681f=a0_0x1868();let _0x4db8e4=_0x18681f[_0x4738a];if(a0_0x4db8['EiwDtu']===undefined){var _0x2e9a8c=function(_0x4937fc){const _0x5b1a9d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2b4701='',_0x59249e='';for(let _0x4e75bc=0x0,_0x47d020,_0x2cea32,_0x11de91=0x0;_0x2cea32=_0x4937fc['charAt'](_0x11de91++);~_0x2cea32&&(_0x47d020=_0x4e75bc%0x4?_0x47d020*0x40+_0x2cea32:_0x2cea32,_0x4e75bc++%0x4)?_0x2b4701+=String['fromCharCode'](0xff&_0x47d020>>(-0x2*_0x4e75bc&0x6)):0x0){_0x2cea32=_0x5b1a9d['indexOf'](_0x2cea32);}for(let _0x3c0447=0x0,_0xb8b88c=_0x2b4701['length'];_0x3c0447<_0xb8b88c;_0x3c0447++){_0x59249e+='%'+('00'+_0x2b4701['charCodeAt'](_0x3c0447)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x59249e);};a0_0x4db8['ZYHXqA']=_0x2e9a8c,a0_0x4db8['nZiQgA']={},a0_0x4db8['EiwDtu']=!![];}const _0x272cca=_0x18681f[0x0],_0x4f185a=_0x4738a+_0x272cca,_0x5742b7=a0_0x4db8['nZiQgA'][_0x4f185a];return!_0x5742b7?(_0x4db8e4=a0_0x4db8['ZYHXqA'](_0x4db8e4),a0_0x4db8['nZiQgA'][_0x4f185a]=_0x4db8e4):_0x4db8e4=_0x5742b7,_0x4db8e4;}async function createChannel(_0x3b5ff9){const _0x57b7c4=a0_0x584818;try{const _0x5e47da=await _0x3b5ff9['createChannel']();return console[_0x57b7c4(0xb9)]('['+formatDate(new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x5e47da;}catch(_0xd4de91){console[_0x57b7c4(0xaf)]('['+formatDate(new Date())+_0x57b7c4(0x97)+_0xd4de91['message']);throw _0xd4de91;}}async function setupInfrastructure(_0x4034ac){const _0x20e19c=a0_0x584818,_0x4935d4={'XCLec':'direct','fwIEf':function(_0x219b8f,_0x1c45c2){return _0x219b8f(_0x1c45c2);},'LyxnX':function(_0x48f31e,_0x2efb26){return _0x48f31e(_0x2efb26);},'BvHBL':_0x20e19c(0x91),'Dazsc':function(_0x28ad7f,_0x2f571b){return _0x28ad7f(_0x2f571b);},'TeYBy':_0x20e19c(0xb6),'rsMFU':function(_0x54141f,_0x1ff246){return _0x54141f(_0x1ff246);},'HFmdY':_0x20e19c(0xb4),'FGhQr':'x-dead-letter-routing-key'};try{await _0x4034ac['assertExchange']('retry-exchange',_0x4935d4['XCLec'],{'durable':!![],'autoDelete':![]}),console['log']('['+_0x4935d4['fwIEf'](formatDate,new Date())+_0x20e19c(0xb0));}catch(_0x57b27a){console[_0x20e19c(0xaf)]('['+_0x4935d4[_0x20e19c(0xb1)](formatDate,new Date())+_0x20e19c(0x92),_0x57b27a[_0x20e19c(0xb2)]);throw _0x57b27a;}try{await _0x4034ac[_0x20e19c(0xa0)](EXCHANGE,_0x4935d4['XCLec'],{'durable':!![],'autoDelete':![]}),console[_0x20e19c(0xb9)]('['+formatDate(new Date())+']\x20Exchange\x20'+EXCHANGE+'\x20created/ready');}catch(_0x397a9f){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x397a9f[_0x20e19c(0xb2)]);throw _0x397a9f;}const _0x15f2fa=ROUTING_KEY+_0x20e19c(0xa6);try{const _0x9845b0={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x4034ac['assertQueue'](_0x15f2fa,_0x9845b0),console[_0x20e19c(0xb9)]('['+formatDate(new Date())+']\x20Retry\x20queue\x20'+_0x15f2fa+_0x20e19c(0xae)),await _0x4034ac['bindQueue'](_0x15f2fa,_0x4935d4[_0x20e19c(0xa3)],ROUTING_KEY),console[_0x20e19c(0xb9)]('['+_0x4935d4[_0x20e19c(0xb1)](formatDate,new Date())+_0x20e19c(0xb5)+ROUTING_KEY+_0x20e19c(0xb8));}catch(_0x1cfce2){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x1cfce2[_0x20e19c(0xb2)]);throw _0x1cfce2;}try{const _0x1ada7d={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x4935d4['BvHBL'],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x1e55e4=await _0x4034ac[_0x20e19c(0xab)](QUEUE,_0x1ada7d);console['log']('['+_0x4935d4['Dazsc'](formatDate,new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x1e55e4['queue']===QUEUE?_0x4935d4[_0x20e19c(0x93)]:'found')+_0x20e19c(0x94)),await _0x4034ac[_0x20e19c(0xac)](QUEUE,EXCHANGE,ROUTING_KEY),console[_0x20e19c(0xb9)]('['+_0x4935d4['rsMFU'](formatDate,new Date())+_0x20e19c(0xa1)+EXCHANGE+_0x20e19c(0xa8)+QUEUE+'\x20('+ROUTING_KEY+_0x20e19c(0x9c));}catch(_0x5977e7){if(_0x5977e7['message']['includes'](_0x4935d4['HFmdY'])&&_0x5977e7[_0x20e19c(0xb2)]['includes'](_0x4935d4['FGhQr']))console['error']('\x0a['+formatDate(new Date())+_0x20e19c(0x99)+QUEUE+_0x20e19c(0xb3)),console['error']('Queue\x20'+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console['error'](_0x20e19c(0x9e)),process['exit'](0x1);else{console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x5977e7['message']);throw _0x5977e7;}}}catch(_0x437ff4){if(!_0x437ff4['message']['includes'](_0x20e19c(0xb4))){console[_0x20e19c(0xaf)]('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x437ff4['message']);throw _0x437ff4;}process[_0x20e19c(0x9f)](0x1);}}async function closeConnection(_0x3629e1){const _0x248608=a0_0x584818,_0x5c736a={'ooLFx':function(_0x482c9d,_0x2a9673){return _0x482c9d(_0x2a9673);}};if(_0x3629e1)try{await _0x3629e1['close'](),console['log']('['+formatDate(new Date())+_0x248608(0x96));}catch(_0x539715){console[_0x248608(0xaf)]('['+_0x5c736a[_0x248608(0x9d)](formatDate,new Date())+_0x248608(0x90)+_0x539715[_0x248608(0xb2)]);}}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
@@ -1 +1 @@
1
- const a0_0x1544d1=a0_0x5f59;function a0_0x5f59(_0x301444,_0x4f868d){_0x301444=_0x301444-0x1ad;const _0x51af53=a0_0x51af();let _0x5f5920=_0x51af53[_0x301444];if(a0_0x5f59['NDcjJd']===undefined){var _0x4d2e03=function(_0x115677){const _0x2a3ed7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x422f83='',_0x13c101='';for(let _0x31e1a5=0x0,_0x45b0ef,_0x23c2fd,_0x4e8b33=0x0;_0x23c2fd=_0x115677['charAt'](_0x4e8b33++);~_0x23c2fd&&(_0x45b0ef=_0x31e1a5%0x4?_0x45b0ef*0x40+_0x23c2fd:_0x23c2fd,_0x31e1a5++%0x4)?_0x422f83+=String['fromCharCode'](0xff&_0x45b0ef>>(-0x2*_0x31e1a5&0x6)):0x0){_0x23c2fd=_0x2a3ed7['indexOf'](_0x23c2fd);}for(let _0x2e38b2=0x0,_0x82c4bd=_0x422f83['length'];_0x2e38b2<_0x82c4bd;_0x2e38b2++){_0x13c101+='%'+('00'+_0x422f83['charCodeAt'](_0x2e38b2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x13c101);};a0_0x5f59['kTDeTd']=_0x4d2e03,a0_0x5f59['ZfXeBU']={},a0_0x5f59['NDcjJd']=!![];}const _0x465549=_0x51af53[0x0],_0x36f5b3=_0x301444+_0x465549,_0x2d3db5=a0_0x5f59['ZfXeBU'][_0x36f5b3];return!_0x2d3db5?(_0x5f5920=a0_0x5f59['kTDeTd'](_0x5f5920),a0_0x5f59['ZfXeBU'][_0x36f5b3]=_0x5f5920):_0x5f5920=_0x2d3db5,_0x5f5920;}(function(_0x458432,_0x2843ac){const _0x3818dc=a0_0x5f59,_0x1ad712=_0x458432();while(!![]){try{const _0x62ed53=parseInt(_0x3818dc(0x1bf))/0x1+-parseInt(_0x3818dc(0x1b7))/0x2*(parseInt(_0x3818dc(0x1ae))/0x3)+-parseInt(_0x3818dc(0x1cc))/0x4*(-parseInt(_0x3818dc(0x1c8))/0x5)+-parseInt(_0x3818dc(0x1cd))/0x6+parseInt(_0x3818dc(0x1c5))/0x7+-parseInt(_0x3818dc(0x1b9))/0x8*(parseInt(_0x3818dc(0x1c0))/0x9)+-parseInt(_0x3818dc(0x1ba))/0xa*(-parseInt(_0x3818dc(0x1cb))/0xb);if(_0x62ed53===_0x2843ac)break;else _0x1ad712['push'](_0x1ad712['shift']());}catch(_0x58f3a4){_0x1ad712['push'](_0x1ad712['shift']());}}}(a0_0x51af,0x8f5c2));const Redis=require(a0_0x1544d1(0x1c1)),{logger}=require('./logger');class RedisClient{constructor(){this['client']=null,this['isConnected']=![];}['connect'](){const _0x30c342=a0_0x1544d1,_0x2e8e32={'GKANZ':function(_0x2a5145,_0x3f5f8e){return _0x2a5145*_0x3f5f8e;},'OPXGG':_0x30c342(0x1ca),'yZBiG':_0x30c342(0x1bd),'daJcx':'localhost','jknRi':function(_0x456480,_0x50816f,_0x356c73){return _0x456480(_0x50816f,_0x356c73);},'IxeYZ':'error','kOAHm':'Failed\x20to\x20initialize\x20Redis'};if(this[_0x30c342(0x1be)])return this[_0x30c342(0x1be)];try{return this['client']=new Redis({'host':process[_0x30c342(0x1c3)]['REDIS_HOST']||_0x2e8e32['daJcx'],'port':parseInt(process['env']['REDIS_PORT'],0xa)||0x18ec,'password':process['env']['REDIS_PASSWORD']||undefined,'db':_0x2e8e32[_0x30c342(0x1b6)](parseInt,process[_0x30c342(0x1c3)][_0x30c342(0x1c4)],0xa)||0x0,'retryStrategy'(_0x5b9ccc){const _0x4fec3c=_0x30c342,_0x198fd3=Math[_0x4fec3c(0x1c2)](_0x2e8e32[_0x4fec3c(0x1c7)](_0x5b9ccc,0x32),0x7d0);return _0x198fd3;}}),this[_0x30c342(0x1be)]['on']('connect',()=>{const _0x4185e1=_0x30c342;this[_0x4185e1(0x1bc)]=!![],logger[_0x4185e1(0x1c6)]({'event':_0x2e8e32[_0x4185e1(0x1ce)]},_0x4185e1(0x1ad));}),this[_0x30c342(0x1be)]['on'](_0x2e8e32['IxeYZ'],_0x267f65=>{const _0x1c78ea=_0x30c342;this['isConnected']=![],logger[_0x1c78ea(0x1b1)]({'event':_0x2e8e32['yZBiG'],'error':_0x267f65[_0x1c78ea(0x1c9)]},'Redis\x20connection\x20error:\x20'+_0x267f65[_0x1c78ea(0x1c9)]);}),this['client']['on'](_0x30c342(0x1b3),()=>{const _0x57d9d8=_0x30c342;this[_0x57d9d8(0x1bc)]=![],logger[_0x57d9d8(0x1b4)]({'event':'redis_disconnected'},'Redis\x20connection\x20closed');}),this[_0x30c342(0x1be)];}catch(_0x1a0fd9){logger[_0x30c342(0x1b1)]({'event':_0x30c342(0x1b5),'error':_0x1a0fd9[_0x30c342(0x1c9)]},_0x2e8e32['kOAHm']);throw _0x1a0fd9;}}[a0_0x1544d1(0x1bb)](){const _0x327e4f=a0_0x1544d1;return!this['client']&&this['connect'](),this[_0x327e4f(0x1be)];}async['ping'](_0x88caa6=0x1388){const _0xd20197=a0_0x1544d1,_0x5a825a={'XtLDo':_0xd20197(0x1b0)};try{const _0x1dad4f=this['getClient'](),_0x21f46f=await Promise['race']([_0x1dad4f[_0xd20197(0x1b8)](),new Promise((_0x6fd6ea,_0x477e9e)=>setTimeout(()=>_0x477e9e(new Error('Redis\x20PING\x20timeout')),_0x88caa6))]);return _0x21f46f===_0x5a825a[_0xd20197(0x1af)];}catch(_0x17bf2a){return![];}}async['disconnect'](){const _0x20b82c=a0_0x1544d1;this['client']&&(await this[_0x20b82c(0x1be)]['quit'](),this['client']=null,this['isConnected']=![]);}['forceDisconnect'](){const _0x12c81e=a0_0x1544d1;this['client']&&(this['client'][_0x12c81e(0x1b2)](),this['client']=null,this[_0x12c81e(0x1bc)]=![]);}}module['exports']=new RedisClient();function a0_0x51af(){const _0x172933=['ouLlu3jsCq','whrmrg8','ue9orW','zxjYB3i','zgLZy29UBMvJDa','y2XVC2u','D2fYBG','CMvKAxnFAw5PDf9LCNjVCG','AMTUuMK','nty2ndK4t2Lcq0L5','CgLUzW','nJC5nJbwBNLdwhq','ndKZmdq5mgfkCg50vG','z2v0q2XPzw50','AxndB25Uzwn0zwq','CMvKAxnFzxjYB3i','y2XPzw50','ntCYndy1v2rowKH2','otaWvMD0Ehn0','Aw9YzwrPCW','BwLU','zw52','uKvesvnFrei','ntK1ntqXohHeswjWrW','Aw5MBW','r0TbtLO','mta2odyXmgrbv2jxsa','BwvZC2fNzq','CMvKAxnFy29UBMvJDgvK','mtfYBgLiBKW','ohbuB29htG','mZqZnJK4BNjgCuLq','t1byr0C','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq'];a0_0x51af=function(){return _0x172933;};return a0_0x51af();}
1
+ function a0_0x5878(_0x14aa19,_0x5db5c9){_0x14aa19=_0x14aa19-0x10e;const _0x35bf84=a0_0x35bf();let _0x587841=_0x35bf84[_0x14aa19];if(a0_0x5878['ccvqEf']===undefined){var _0x19c54f=function(_0x133eb1){const _0x4dc500='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c1aa0='',_0x52429d='';for(let _0xa93c64=0x0,_0x3a3053,_0x167793,_0x240ab1=0x0;_0x167793=_0x133eb1['charAt'](_0x240ab1++);~_0x167793&&(_0x3a3053=_0xa93c64%0x4?_0x3a3053*0x40+_0x167793:_0x167793,_0xa93c64++%0x4)?_0x5c1aa0+=String['fromCharCode'](0xff&_0x3a3053>>(-0x2*_0xa93c64&0x6)):0x0){_0x167793=_0x4dc500['indexOf'](_0x167793);}for(let _0x4c7209=0x0,_0xb59c53=_0x5c1aa0['length'];_0x4c7209<_0xb59c53;_0x4c7209++){_0x52429d+='%'+('00'+_0x5c1aa0['charCodeAt'](_0x4c7209)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x52429d);};a0_0x5878['SvFAAk']=_0x19c54f,a0_0x5878['mcYThM']={},a0_0x5878['ccvqEf']=!![];}const _0x308ff5=_0x35bf84[0x0],_0xb6fae2=_0x14aa19+_0x308ff5,_0x1d9d4e=a0_0x5878['mcYThM'][_0xb6fae2];return!_0x1d9d4e?(_0x587841=a0_0x5878['SvFAAk'](_0x587841),a0_0x5878['mcYThM'][_0xb6fae2]=_0x587841):_0x587841=_0x1d9d4e,_0x587841;}const a0_0x423c18=a0_0x5878;(function(_0x1193da,_0x300a54){const _0x58ccc2=a0_0x5878,_0x1eb175=_0x1193da();while(!![]){try{const _0x59d228=parseInt(_0x58ccc2(0x115))/0x1+parseInt(_0x58ccc2(0x11c))/0x2+parseInt(_0x58ccc2(0x117))/0x3+parseInt(_0x58ccc2(0x128))/0x4+parseInt(_0x58ccc2(0x122))/0x5+parseInt(_0x58ccc2(0x127))/0x6+-parseInt(_0x58ccc2(0x11b))/0x7;if(_0x59d228===_0x300a54)break;else _0x1eb175['push'](_0x1eb175['shift']());}catch(_0x2b2887){_0x1eb175['push'](_0x1eb175['shift']());}}}(a0_0x35bf,0xc4e45));const Redis=require('ioredis'),{logger}=require('./logger');class RedisClient{constructor(){const _0x6815d7=a0_0x5878;this[_0x6815d7(0x11f)]=null,this[_0x6815d7(0x110)]=![];}['connect'](){const _0x69d101=a0_0x5878,_0xe3bfbb={'kmHLj':_0x69d101(0x118),'UxJRg':'connect','WPklH':'error','bQiSJ':'close','skLWw':'redis_init_error','uhOhq':'Failed\x20to\x20initialize\x20Redis'};if(this['client'])return this[_0x69d101(0x11f)];try{return this[_0x69d101(0x11f)]=new Redis({'host':process[_0x69d101(0x11d)][_0x69d101(0x126)]||'localhost','port':parseInt(process[_0x69d101(0x11d)]['REDIS_PORT'],0xa)||0x18ec,'password':process['env']['REDIS_PASSWORD']||undefined,'db':parseInt(process[_0x69d101(0x11d)]['REDIS_DB'],0xa)||0x0,'retryStrategy'(_0x42c411){const _0x3eb6d7=Math['min'](_0x42c411*0x32,0x7d0);return _0x3eb6d7;}}),this['client']['on'](_0xe3bfbb[_0x69d101(0x11e)],()=>{const _0x225f07=_0x69d101;this['isConnected']=!![],logger[_0x225f07(0x124)]({'event':_0x225f07(0x11a)},_0x225f07(0x116));}),this['client']['on'](_0xe3bfbb[_0x69d101(0x120)],_0x100612=>{const _0x43e138=_0x69d101;this['isConnected']=![],logger[_0x43e138(0x119)]({'event':_0xe3bfbb['kmHLj'],'error':_0x100612[_0x43e138(0x10f)]},_0x43e138(0x114)+_0x100612[_0x43e138(0x10f)]);}),this[_0x69d101(0x11f)]['on'](_0xe3bfbb[_0x69d101(0x125)],()=>{const _0x16862c=_0x69d101;this['isConnected']=![],logger[_0x16862c(0x123)]({'event':'redis_disconnected'},'Redis\x20connection\x20closed');}),this[_0x69d101(0x11f)];}catch(_0x75b7bb){logger['error']({'event':_0xe3bfbb[_0x69d101(0x129)],'error':_0x75b7bb['message']},_0xe3bfbb['uhOhq']);throw _0x75b7bb;}}[a0_0x423c18(0x111)](){const _0x25da32=a0_0x423c18;return!this[_0x25da32(0x11f)]&&this['connect'](),this[_0x25da32(0x11f)];}async[a0_0x423c18(0x112)](_0x53fbf1=0x1388){const _0x1beb95=a0_0x423c18;try{const _0x4b75b6=this['getClient'](),_0x40e181=await Promise[_0x1beb95(0x10e)]([_0x4b75b6[_0x1beb95(0x112)](),new Promise((_0x57b3df,_0x8bb542)=>setTimeout(()=>_0x8bb542(new Error('Redis\x20PING\x20timeout')),_0x53fbf1))]);return _0x40e181===_0x1beb95(0x113);}catch(_0x5a6110){return![];}}async[a0_0x423c18(0x121)](){const _0x406bc5=a0_0x423c18;this[_0x406bc5(0x11f)]&&(await this[_0x406bc5(0x11f)]['quit'](),this['client']=null,this[_0x406bc5(0x110)]=![]);}['forceDisconnect'](){const _0x1deaaa=a0_0x423c18;this[_0x1deaaa(0x11f)]&&(this['client'][_0x1deaaa(0x121)](),this[_0x1deaaa(0x11f)]=null,this[_0x1deaaa(0x110)]=![]);}}function a0_0x35bf(){const _0x18c403=['Aw5MBW','yLfPu0O','uKvesvnFse9tva','ndC4ndGYmeL1zvvmwa','mZK0mtyWC0rvCwXu','C2Tmv3C','CMfJzq','BwvZC2fNzq','AxndB25Uzwn0zwq','z2v0q2XPzw50','CgLUzW','ue9orW','uMvKAxmGy29UBMvJDgLVBIbLCNjVCJOG','nZK2ntC5BLnsq1vj','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','mti2mJy0m2XfDNznBq','CMvKAxnFzxjYB3i','zxjYB3i','CMvKAxnFy29UBMvJDgvK','mJm0nJyYmZnAEgzYExO','mteWmtC4nKHsq0jSBa','zw52','vxHkuMC','y2XPzw50','v1bRBeG','zgLZy29UBMvJDa','nZq3mJeYnuDftwPjDW','D2fYBG'];a0_0x35bf=function(){return _0x18c403;};return a0_0x35bf();}module['exports']=new RedisClient();
@@ -1 +1 @@
1
- function a0_0x463f(){const _0x211709=['mJq2ndeXnvrbvLnRwa','mtq3mtC0mLndCgfICW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ndC2oez1s2Dfta','nZmXn2PYAxbpDa','C2v0sM9I','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW','zgvSzxrLsM9I','tuvIEu0','zeXRsNG','z0n2vNa','rMfPBgvKihrVihnLDcbQB2iGAw4GuMvKAxm','CMvKAxnFzgvSzxrLx2vYCM9Y','z2v0sM9I','z2v0','mZqWmJm1mJHTq2T4yMu','x3bYzwzPEa','DxbKyxrLsM9I','BwvZC2fNzq','mtb2EePcweK','nMPOwMfesG','nty1nZCWmvPcBerPtW','mJi1mJq0mgLMvufWra','zxjYB3i','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','oMv4Cg9YDdO','mZiZmJq4oefrB2PQBa','ChjLzML4','mvnnvNbZuq','z2v0q2XPzw50','A2v5CW','zgvMyxvSDa','zw52'];a0_0x463f=function(){return _0x211709;};return a0_0x463f();}const a0_0x2ebb59=a0_0x5703;function a0_0x5703(_0x3dba64,_0x462bed){_0x3dba64=_0x3dba64-0x8c;const _0x463fc8=a0_0x463f();let _0x570388=_0x463fc8[_0x3dba64];if(a0_0x5703['HmjXja']===undefined){var _0x1c6f7c=function(_0x494ace){const _0x5d5089='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x373bf3='',_0x3a4835='';for(let _0x22b865=0x0,_0x393efb,_0x2c71ae,_0xb681dc=0x0;_0x2c71ae=_0x494ace['charAt'](_0xb681dc++);~_0x2c71ae&&(_0x393efb=_0x22b865%0x4?_0x393efb*0x40+_0x2c71ae:_0x2c71ae,_0x22b865++%0x4)?_0x373bf3+=String['fromCharCode'](0xff&_0x393efb>>(-0x2*_0x22b865&0x6)):0x0){_0x2c71ae=_0x5d5089['indexOf'](_0x2c71ae);}for(let _0xc56c37=0x0,_0xe6463c=_0x373bf3['length'];_0xc56c37<_0xe6463c;_0xc56c37++){_0x3a4835+='%'+('00'+_0x373bf3['charCodeAt'](_0xc56c37)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3a4835);};a0_0x5703['hyIUHP']=_0x1c6f7c,a0_0x5703['OTiQFD']={},a0_0x5703['HmjXja']=!![];}const _0x34ecc7=_0x463fc8[0x0],_0x2eebb7=_0x3dba64+_0x34ecc7,_0xbd46a1=a0_0x5703['OTiQFD'][_0x2eebb7];return!_0xbd46a1?(_0x570388=a0_0x5703['hyIUHP'](_0x570388),a0_0x5703['OTiQFD'][_0x2eebb7]=_0x570388):_0x570388=_0xbd46a1,_0x570388;}(function(_0x1dd592,_0x22263c){const _0x935cfa=a0_0x5703,_0x3bb3cb=_0x1dd592();while(!![]){try{const _0x23ca4f=parseInt(_0x935cfa(0xa0))/0x1*(-parseInt(_0x935cfa(0xa6))/0x2)+-parseInt(_0x935cfa(0x9e))/0x3+-parseInt(_0x935cfa(0x9a))/0x4+-parseInt(_0x935cfa(0xa5))/0x5*(parseInt(_0x935cfa(0x98))/0x6)+parseInt(_0x935cfa(0x99))/0x7+-parseInt(_0x935cfa(0xa8))/0x8*(parseInt(_0x935cfa(0xa9))/0x9)+-parseInt(_0x935cfa(0x97))/0xa*(-parseInt(_0x935cfa(0x93))/0xb);if(_0x23ca4f===_0x22263c)break;else _0x3bb3cb['push'](_0x3bb3cb['shift']());}catch(_0xc626fa){_0x3bb3cb['push'](_0x3bb3cb['shift']());}}}(a0_0x463f,0x85a73));const redisClient=require('./redis-client'),{logger}=require('./logger');class RedisHelper{constructor(){const _0x50190d=a0_0x5703;this['_prefix']=null,this['ttl']=parseInt(process[_0x50190d(0xa4)]['EXPORT_FILE_EXPIRY'],0xa)||0xe10;}get[a0_0x2ebb59(0x9f)](){const _0x5f484a=a0_0x2ebb59,_0x1aa906={'nAvAh':_0x5f484a(0xa3)};if(!this['_prefix']){const _0x3adeb=process[_0x5f484a(0xa4)][_0x5f484a(0xa7)]||_0x1aa906['nAvAh'];this[_0x5f484a(0x94)]='restforge:'+_0x3adeb+_0x5f484a(0x9d);}return this[_0x5f484a(0x94)];}async['setJob'](_0x3f69f0,_0x3571f2){const _0x40effc=a0_0x2ebb59,_0x1f328e={'MEbyM':'redis_set_error'};try{const _0xbabd4a=redisClient[_0x40effc(0xa1)](),_0x136c59=''+this['prefix']+_0x3f69f0;return await _0xbabd4a['setex'](_0x136c59,this['ttl'],JSON['stringify'](_0x3571f2)),!![];}catch(_0x489cad){return logger[_0x40effc(0x9b)]({'event':_0x1f328e[_0x40effc(0x8c)],'jobId':_0x3f69f0,'error':_0x489cad[_0x40effc(0x96)]},_0x40effc(0x8f)),![];}}async[a0_0x2ebb59(0x91)](_0x3eb809){const _0x1edf61=a0_0x2ebb59,_0x53783d={'gCvVp':'redis_get_error'};try{const _0x2f7957=redisClient['getClient'](),_0x1a1d1a=''+this[_0x1edf61(0x9f)]+_0x3eb809,_0x597949=await _0x2f7957[_0x1edf61(0x92)](_0x1a1d1a);return _0x597949?JSON['parse'](_0x597949):null;}catch(_0x400204){return logger[_0x1edf61(0x9b)]({'event':_0x53783d[_0x1edf61(0x8e)],'jobId':_0x3eb809,'error':_0x400204['message']},'Failed\x20to\x20get\x20job\x20from\x20Redis'),null;}}async[a0_0x2ebb59(0x95)](_0x26d6d2,_0x55c285){const _0x4b88bf=a0_0x2ebb59,_0x24424f=await this[_0x4b88bf(0x91)](_0x26d6d2);if(!_0x24424f)return![];const _0x56aa7c={..._0x24424f,..._0x55c285};return await this[_0x4b88bf(0xaa)](_0x26d6d2,_0x56aa7c);}async[a0_0x2ebb59(0xac)](_0x948abc){const _0x58acce=a0_0x2ebb59,_0x8b1a00={'dLkJx':_0x58acce(0xab)};try{const _0x38bb48=redisClient[_0x58acce(0xa1)](),_0x2b3b3c=''+this[_0x58acce(0x9f)]+_0x948abc;return await _0x38bb48['del'](_0x2b3b3c),!![];}catch(_0x2ef7e4){return logger['error']({'event':_0x58acce(0x90),'jobId':_0x948abc,'error':_0x2ef7e4['message']},_0x8b1a00[_0x58acce(0x8d)]),![];}}async['getAllJobs'](){const _0x56bbf8=a0_0x2ebb59,_0x17ff8a={'mrNWM':_0x56bbf8(0x9c)};try{const _0x35f00e=redisClient['getClient'](),_0x382301=await _0x35f00e[_0x56bbf8(0xa2)](this['prefix']+'*'),_0x33a108=[];for(const _0x2a743c of _0x382301){const _0x5829d8=await _0x35f00e['get'](_0x2a743c);_0x5829d8&&_0x33a108['push'](JSON['parse'](_0x5829d8));}return _0x33a108;}catch(_0x45134e){return logger['error']({'event':'redis_getall_error','error':_0x45134e['message']},_0x17ff8a['mrNWM']),[];}}}module['exports']=new RedisHelper();
1
+ const a0_0x329d1b=a0_0x2500;function a0_0x2139(){const _0x17573b=['yNfRtMi','u1vuvhe','CgfYC2u','vNDLqMm','ntKYuhHhzxHd','ChjLzML4','mJqYmdiYzgzvquD5','rvHqt1jux0zjtevFrvHqsvjz','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','nJCYnZjjturbDgW','zgvSzxrLsM9I','z2v0','mZK4nZftB3fJCuu','A2v5CW','odi1owXACwTyBq','mZvnDhnfCwS','CMvKAxnFzgvSzxrLx2vYCM9Y','mtK3nteWruLXs0fA','zgvMyxvSDa','oduZotKWrLf6q0Pn','zxjYB3i','ChvZAa','C3rYAw5NAwz5','ENjmuhe','x3bYzwzPEa','DhrS','CMvKAxnFC2v0x2vYCM9Y','C2v0sM9I','C2v0zxG','mtCXuhnfuKnV','BwvZC2fNzq','nfvbs0T0EG','z2v0q2XPzw50','odu1nJu4muHSCgzWAG','zw52','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW'];a0_0x2139=function(){return _0x17573b;};return a0_0x2139();}(function(_0x3dd592,_0x4bb74c){const _0x364386=a0_0x2500,_0x418ae5=_0x3dd592();while(!![]){try{const _0x1f23c1=-parseInt(_0x364386(0x1e4))/0x1*(-parseInt(_0x364386(0x1d3))/0x2)+-parseInt(_0x364386(0x1e6))/0x3*(parseInt(_0x364386(0x1dc))/0x4)+parseInt(_0x364386(0x1e9))/0x5+parseInt(_0x364386(0x1de))/0x6*(-parseInt(_0x364386(0x1e7))/0x7)+parseInt(_0x364386(0x1e1))/0x8*(-parseInt(_0x364386(0x1d1))/0x9)+parseInt(_0x364386(0x1eb))/0xa+parseInt(_0x364386(0x1d5))/0xb;if(_0x1f23c1===_0x4bb74c)break;else _0x418ae5['push'](_0x418ae5['shift']());}catch(_0x2e99d0){_0x418ae5['push'](_0x418ae5['shift']());}}}(a0_0x2139,0x3426e));function a0_0x2500(_0x542136,_0x54ccbe){_0x542136=_0x542136-0x1d0;const _0x213920=a0_0x2139();let _0x2500c6=_0x213920[_0x542136];if(a0_0x2500['JmDGhJ']===undefined){var _0x396efa=function(_0x30268a){const _0x49b177='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55bb99='',_0x4492b7='';for(let _0x3e09b6=0x0,_0x126904,_0x16cc02,_0x3ed54b=0x0;_0x16cc02=_0x30268a['charAt'](_0x3ed54b++);~_0x16cc02&&(_0x126904=_0x3e09b6%0x4?_0x126904*0x40+_0x16cc02:_0x16cc02,_0x3e09b6++%0x4)?_0x55bb99+=String['fromCharCode'](0xff&_0x126904>>(-0x2*_0x3e09b6&0x6)):0x0){_0x16cc02=_0x49b177['indexOf'](_0x16cc02);}for(let _0xb6fa66=0x0,_0x438287=_0x55bb99['length'];_0xb6fa66<_0x438287;_0xb6fa66++){_0x4492b7+='%'+('00'+_0x55bb99['charCodeAt'](_0xb6fa66)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4492b7);};a0_0x2500['wVBXYU']=_0x396efa,a0_0x2500['DNtfyx']={},a0_0x2500['JmDGhJ']=!![];}const _0x21ed93=_0x213920[0x0],_0x26a634=_0x542136+_0x21ed93,_0x9cbdfc=a0_0x2500['DNtfyx'][_0x26a634];return!_0x9cbdfc?(_0x2500c6=a0_0x2500['wVBXYU'](_0x2500c6),a0_0x2500['DNtfyx'][_0x26a634]=_0x2500c6):_0x2500c6=_0x9cbdfc,_0x2500c6;}const redisClient=require('./redis-client'),{logger}=require('./logger');class RedisHelper{constructor(){const _0x113549=a0_0x2500,_0x27a9c7={'dpmPl':function(_0x373538,_0x51aa0a,_0x2fce14){return _0x373538(_0x51aa0a,_0x2fce14);}};this['_prefix']=null,this[_0x113549(0x1f1)]=_0x27a9c7['dpmPl'](parseInt,process[_0x113549(0x1d6)][_0x113549(0x1df)],0xa)||0xe10;}get['prefix'](){const _0x2442a4=a0_0x2500;if(!this[_0x2442a4(0x1f0)]){const _0x3b0ae9=process[_0x2442a4(0x1d6)]['RESTFORGE_PROJECT_NAME']||_0x2442a4(0x1ea);this['_prefix']='restforge:'+_0x3b0ae9+':export:';}return this['_prefix'];}async[a0_0x329d1b(0x1f3)](_0x113dc4,_0x1a6851){const _0x3d55c6=a0_0x329d1b,_0x399649={'bqkNb':'Failed\x20to\x20set\x20job\x20in\x20Redis'};try{const _0x41bd45=redisClient['getClient'](),_0x5ed8f2=''+this[_0x3d55c6(0x1dd)]+_0x113dc4;return await _0x41bd45[_0x3d55c6(0x1d0)](_0x5ed8f2,this['ttl'],JSON[_0x3d55c6(0x1ee)](_0x1a6851)),!![];}catch(_0x33b0ad){return logger[_0x3d55c6(0x1ec)]({'event':_0x3d55c6(0x1f2),'jobId':_0x113dc4,'error':_0x33b0ad[_0x3d55c6(0x1d2)]},_0x399649[_0x3d55c6(0x1d8)]),![];}}async['getJob'](_0x2cce1f){const _0x50f122=a0_0x329d1b,_0xa4d9b={'SUTTq':'redis_get_error'};try{const _0x1ddb14=redisClient['getClient'](),_0x780d94=''+this[_0x50f122(0x1dd)]+_0x2cce1f,_0x458cdb=await _0x1ddb14[_0x50f122(0x1e3)](_0x780d94);return _0x458cdb?JSON[_0x50f122(0x1da)](_0x458cdb):null;}catch(_0x1d0489){return logger['error']({'event':_0xa4d9b[_0x50f122(0x1d9)],'jobId':_0x2cce1f,'error':_0x1d0489[_0x50f122(0x1d2)]},'Failed\x20to\x20get\x20job\x20from\x20Redis'),null;}}async['updateJob'](_0x53df26,_0x14556d){const _0x230484=a0_0x329d1b,_0x1c1f15=await this['getJob'](_0x53df26);if(!_0x1c1f15)return![];const _0x2c19ed={..._0x1c1f15,..._0x14556d};return await this[_0x230484(0x1f3)](_0x53df26,_0x2c19ed);}async[a0_0x329d1b(0x1e2)](_0x4966e9){const _0x24794d=a0_0x329d1b,_0x4169b1={'VweBc':_0x24794d(0x1e8)};try{const _0x59fb43=redisClient[_0x24794d(0x1d4)](),_0x919d57=''+this['prefix']+_0x4966e9;return await _0x59fb43['del'](_0x919d57),!![];}catch(_0x34519b){return logger['error']({'event':_0x4169b1[_0x24794d(0x1db)],'jobId':_0x4966e9,'error':_0x34519b[_0x24794d(0x1d2)]},_0x24794d(0x1d7)),![];}}async['getAllJobs'](){const _0xe4212c=a0_0x329d1b,_0x49eb64={'zrLPq':'redis_getall_error','IwtQi':_0xe4212c(0x1e0)};try{const _0x1b9047=redisClient[_0xe4212c(0x1d4)](),_0x1fe2e9=await _0x1b9047[_0xe4212c(0x1e5)](this['prefix']+'*'),_0x422077=[];for(const _0x4af8b6 of _0x1fe2e9){const _0x1724fc=await _0x1b9047['get'](_0x4af8b6);_0x1724fc&&_0x422077[_0xe4212c(0x1ed)](JSON[_0xe4212c(0x1da)](_0x1724fc));}return _0x422077;}catch(_0x5e59ae){return logger[_0xe4212c(0x1ec)]({'event':_0x49eb64[_0xe4212c(0x1ef)],'error':_0x5e59ae['message']},_0x49eb64['IwtQi']),[];}}}module['exports']=new RedisHelper();