@restforgejs/platform 5.0.1 → 5.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/lib/migrate/migrate-runner.js +393 -393
  5. package/generators/lib/payload/payload-runner.js +20 -0
  6. package/generators/lib/templates/dashboard-catalog.js +1 -1
  7. package/generators/lib/templates/db-connection-env.js +1 -1
  8. package/generators/lib/templates/dbschema-catalog.js +1 -1
  9. package/generators/lib/templates/field-validation-catalog.js +1 -1
  10. package/generators/lib/templates/mysql-template.js +1 -1
  11. package/generators/lib/templates/oracle-template.js +1 -1
  12. package/generators/lib/templates/postgres-template.js +1 -1
  13. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  14. package/generators/lib/templates/sqlite-template.js +1 -1
  15. package/integrity-manifest.json +18 -18
  16. package/package.json +1 -1
  17. package/scripts/verify-integrity.js +1 -1
  18. package/server.js +1 -1
  19. package/src/components/handlers/adjust_handler.js +1 -1
  20. package/src/components/handlers/audit_handler.js +1 -1
  21. package/src/components/handlers/delete_handler.js +1 -1
  22. package/src/components/handlers/export_handler.js +1 -1
  23. package/src/components/handlers/import_handler.js +1 -1
  24. package/src/components/handlers/insert_handler.js +1 -1
  25. package/src/components/handlers/update_handler.js +1 -1
  26. package/src/components/handlers/upload_handler.js +1 -1
  27. package/src/components/handlers/workflow_handler.js +1 -1
  28. package/src/components/integrations/webhook.js +1 -1
  29. package/src/consumers/baseConsumer.js +1 -1
  30. package/src/consumers/declarativeMapper.js +1 -1
  31. package/src/consumers/handlers/apiHandler.js +1 -1
  32. package/src/consumers/handlers/consoleHandler.js +1 -1
  33. package/src/consumers/handlers/databaseHandler.js +1 -1
  34. package/src/consumers/handlers/index.js +1 -1
  35. package/src/consumers/handlers/kafkaHandler.js +1 -1
  36. package/src/consumers/index.js +1 -1
  37. package/src/consumers/messageTransformer.js +1 -1
  38. package/src/consumers/validator.js +1 -1
  39. package/src/core/db/dialect/base-dialect.js +1 -1
  40. package/src/core/db/dialect/index.js +1 -1
  41. package/src/core/db/dialect/mysql-dialect.js +1 -1
  42. package/src/core/db/dialect/oracle-dialect.js +1 -1
  43. package/src/core/db/dialect/postgres-dialect.js +1 -1
  44. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  45. package/src/core/db/flatten-helper.js +1 -1
  46. package/src/core/db/query-builder-error.js +1 -1
  47. package/src/core/db/query-builder.js +1 -1
  48. package/src/core/db/relation-helper.js +1 -1
  49. package/src/core/handlers/delete_handler.js +1 -1
  50. package/src/core/handlers/insert_handler.js +1 -1
  51. package/src/core/handlers/update_handler.js +1 -1
  52. package/src/core/models/base-model.js +1 -1
  53. package/src/core/utils/cache-manager.js +1 -1
  54. package/src/core/utils/component-engine.js +1 -1
  55. package/src/core/utils/context-builder.js +1 -1
  56. package/src/core/utils/datetime-formatter.js +1 -1
  57. package/src/core/utils/datetime-parser.js +1 -1
  58. package/src/core/utils/db.js +1 -1
  59. package/src/core/utils/logger.js +1 -1
  60. package/src/core/utils/payload-loader.js +1 -1
  61. package/src/core/utils/security-checks.js +1 -1
  62. package/src/middleware/body-options.js +1 -1
  63. package/src/middleware/cors.js +1 -1
  64. package/src/middleware/idempotency.js +1 -1
  65. package/src/middleware/rate-limiter.js +1 -1
  66. package/src/middleware/request-logger.js +1 -1
  67. package/src/middleware/security-headers.js +1 -1
  68. package/src/models/base-model-mysql.js +1 -1
  69. package/src/models/base-model-oracle.js +1 -1
  70. package/src/models/base-model-sqlite.js +1 -1
  71. package/src/models/base-model.js +1 -1
  72. package/src/pro/caching/redis-client.js +1 -1
  73. package/src/pro/caching/redis-helper.js +1 -1
  74. package/src/pro/consumers/baseConsumer.js +1 -1
  75. package/src/pro/consumers/declarativeMapper.js +1 -1
  76. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  77. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  78. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  79. package/src/pro/consumers/handlers/index.js +1 -1
  80. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  81. package/src/pro/consumers/index.js +1 -1
  82. package/src/pro/consumers/messageTransformer.js +1 -1
  83. package/src/pro/consumers/validator.js +1 -1
  84. package/src/pro/database/base-model-mysql.js +1 -1
  85. package/src/pro/database/base-model-oracle.js +1 -1
  86. package/src/pro/database/base-model-sqlite.js +1 -1
  87. package/src/pro/database/db-mysql.js +1 -1
  88. package/src/pro/database/db-oracle.js +1 -1
  89. package/src/pro/database/db-sqlite.js +1 -1
  90. package/src/pro/excel/excel-generator.js +1 -1
  91. package/src/pro/excel/excel-parser.js +1 -1
  92. package/src/pro/excel/export-service.js +1 -1
  93. package/src/pro/excel/export_handler.js +1 -1
  94. package/src/pro/excel/import-service.js +1 -1
  95. package/src/pro/excel/import-validator.js +1 -1
  96. package/src/pro/excel/import_handler.js +1 -1
  97. package/src/pro/excel/upsert-builder.js +1 -1
  98. package/src/pro/idgen/idgen-routes.js +1 -1
  99. package/src/pro/integrations/lookup-resolver.js +1 -1
  100. package/src/pro/integrations/upload-handler-v2.js +1 -1
  101. package/src/pro/integrations/upload-handler.js +1 -1
  102. package/src/pro/integrations/webhook.js +1 -1
  103. package/src/pro/locking/lock-routes.js +1 -1
  104. package/src/pro/locking/resource-lock-manager.js +1 -1
  105. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  106. package/src/pro/messaging/kafkaService.js +1 -1
  107. package/src/pro/messaging/messagehubService.js +1 -1
  108. package/src/pro/messaging/rabbitmqService.js +1 -1
  109. package/src/pro/scheduler/job-manager.js +1 -1
  110. package/src/pro/scheduler/job-routes.js +1 -1
  111. package/src/pro/scheduler/job-validator.js +1 -1
  112. package/src/pro/storage/base-storage-provider.js +1 -1
  113. package/src/pro/storage/file-metadata-helper.js +1 -1
  114. package/src/pro/storage/index.js +1 -1
  115. package/src/pro/storage/local-storage-provider.js +1 -1
  116. package/src/pro/storage/s3-storage-provider.js +1 -1
  117. package/src/pro/storage/upload-cleanup-job.js +1 -1
  118. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  119. package/src/pro/storage/upload-pending-tracker.js +1 -1
  120. package/src/pro/websocket/broadcast-helper.js +1 -1
  121. package/src/pro/websocket/index.js +1 -1
  122. package/src/pro/websocket/livesync-server.js +1 -1
  123. package/src/pro/websocket/ws-broadcaster.js +1 -1
  124. package/src/services/export-service.js +1 -1
  125. package/src/services/import-service.js +1 -1
  126. package/src/services/kafkaConsumerService.js +1 -1
  127. package/src/services/kafkaService.js +1 -1
  128. package/src/services/messagehubService.js +1 -1
  129. package/src/services/rabbitmqService.js +1 -1
  130. package/src/utils/cache-invalidation-registry.js +1 -1
  131. package/src/utils/cache-manager.js +1 -1
  132. package/src/utils/component-engine.js +1 -1
  133. package/src/utils/config-extractor.js +1 -1
  134. package/src/utils/consumerLogger.js +1 -1
  135. package/src/utils/context-builder.js +1 -1
  136. package/src/utils/dashboard-helpers.js +1 -1
  137. package/src/utils/dateHelper.js +1 -1
  138. package/src/utils/datetime-formatter.js +1 -1
  139. package/src/utils/datetime-parser.js +1 -1
  140. package/src/utils/db-bootstrap.js +1 -1
  141. package/src/utils/db-mysql.js +1 -1
  142. package/src/utils/db-oracle.js +1 -1
  143. package/src/utils/db-sqlite.js +1 -1
  144. package/src/utils/db.js +1 -1
  145. package/src/utils/demo-generator.js +1 -1
  146. package/src/utils/excel-generator.js +1 -1
  147. package/src/utils/excel-parser.js +1 -1
  148. package/src/utils/file-watcher.js +1 -1
  149. package/src/utils/id-generator.js +1 -1
  150. package/src/utils/idempotency-manager.js +1 -1
  151. package/src/utils/import-validator.js +1 -1
  152. package/src/utils/license-client.js +1 -1
  153. package/src/utils/lock-manager.js +1 -1
  154. package/src/utils/logger.js +1 -1
  155. package/src/utils/lookup-resolver.js +1 -1
  156. package/src/utils/payload-loader.js +1 -1
  157. package/src/utils/processor-response.js +1 -1
  158. package/src/utils/rabbitmq.js +1 -1
  159. package/src/utils/redis-client.js +1 -1
  160. package/src/utils/redis-helper.js +1 -1
  161. package/src/utils/request-scope.js +1 -1
  162. package/src/utils/security-checks.js +1 -1
  163. package/src/utils/service-resolver.js +1 -1
  164. package/src/utils/shutdown-coordinator.js +1 -1
  165. package/src/utils/trusted-keys.js +1 -1
  166. package/src/utils/upload-handler.js +1 -1
  167. package/src/utils/upsert-builder.js +1 -1
  168. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x2e97b9=a0_0x2d6f;(function(_0x5590c2,_0x42393e){const _0x345e47=a0_0x2d6f,_0x4f7421=_0x5590c2();while(!![]){try{const _0x578f0f=-parseInt(_0x345e47(0x112))/0x1*(-parseInt(_0x345e47(0xf0))/0x2)+-parseInt(_0x345e47(0x108))/0x3*(parseInt(_0x345e47(0x10d))/0x4)+parseInt(_0x345e47(0x10a))/0x5+-parseInt(_0x345e47(0x120))/0x6+-parseInt(_0x345e47(0xd2))/0x7*(parseInt(_0x345e47(0x10f))/0x8)+-parseInt(_0x345e47(0xf4))/0x9+-parseInt(_0x345e47(0xd3))/0xa*(-parseInt(_0x345e47(0xcc))/0xb);if(_0x578f0f===_0x42393e)break;else _0x4f7421['push'](_0x4f7421['shift']());}catch(_0x355e02){_0x4f7421['push'](_0x4f7421['shift']());}}}(a0_0x1a3e,0xe720e));const redisClient=require(a0_0x2e97b9(0xe4)),{logger}=require('./logger'),{v4:uuidv4}=require(a0_0x2e97b9(0xd6));function a0_0x2d6f(_0x2a2b81,_0x4f45a7){_0x2a2b81=_0x2a2b81-0xc6;const _0x1a3e7e=a0_0x1a3e();let _0x2d6f41=_0x1a3e7e[_0x2a2b81];if(a0_0x2d6f['AnMLko']===undefined){var _0x5cbe95=function(_0x21de66){const _0x4d7c46='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x35bf88='',_0x259338='';for(let _0x5d7480=0x0,_0x4b065f,_0x1a7256,_0x9a3db9=0x0;_0x1a7256=_0x21de66['charAt'](_0x9a3db9++);~_0x1a7256&&(_0x4b065f=_0x5d7480%0x4?_0x4b065f*0x40+_0x1a7256:_0x1a7256,_0x5d7480++%0x4)?_0x35bf88+=String['fromCharCode'](0xff&_0x4b065f>>(-0x2*_0x5d7480&0x6)):0x0){_0x1a7256=_0x4d7c46['indexOf'](_0x1a7256);}for(let _0x2023bb=0x0,_0x7dbc5e=_0x35bf88['length'];_0x2023bb<_0x7dbc5e;_0x2023bb++){_0x259338+='%'+('00'+_0x35bf88['charCodeAt'](_0x2023bb)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x259338);};a0_0x2d6f['CAjPsK']=_0x5cbe95,a0_0x2d6f['mbzAHX']={},a0_0x2d6f['AnMLko']=!![];}const _0x3a9876=_0x1a3e7e[0x0],_0x24b97e=_0x2a2b81+_0x3a9876,_0xa19ad9=a0_0x2d6f['mbzAHX'][_0x24b97e];return!_0xa19ad9?(_0x2d6f41=a0_0x2d6f['CAjPsK'](_0x2d6f41),a0_0x2d6f['mbzAHX'][_0x24b97e]=_0x2d6f41):_0x2d6f41=_0xa19ad9,_0x2d6f41;}class LockManager{constructor(){const _0x512c70=a0_0x2e97b9;this['_prefix']=null,this[_0x512c70(0x113)]=null,this['_defaultTTL']=null,this[_0x512c70(0xeb)]=null,this['_retryDelay']=null,this[_0x512c70(0xcf)]=null,this['_workerId']=null,this['_initialized']=![];}['_initConfig'](){const _0x1f8c87=a0_0x2e97b9,_0x4df070={'MVQCD':function(_0x784dfa,_0x155df1){return _0x784dfa===_0x155df1;},'AZQBl':_0x1f8c87(0xe7),'rFQvZ':_0x1f8c87(0xed)};this[_0x1f8c87(0x117)]='rf:lock:',this[_0x1f8c87(0x113)]=_0x4df070['MVQCD'](process[_0x1f8c87(0x111)]['LOCK_DISTRIBUTED_ENABLED'],_0x4df070[_0x1f8c87(0xde)]),this[_0x1f8c87(0xe1)]=parseInt(process[_0x1f8c87(0x111)][_0x1f8c87(0xc6)],0xa)||0xa,this[_0x1f8c87(0xeb)]=parseInt(process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3,this['_retryDelay']=parseInt(process[_0x1f8c87(0x111)]['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64,this[_0x1f8c87(0xcf)]=process['env']['LOCK_DISTRIBUTED_STRATEGY']||_0x1f8c87(0xcd),this[_0x1f8c87(0x114)]='worker-'+process['pid'],this['_initialized']=!![],logger['info']({'event':_0x4df070['rFQvZ'],'enabled':this['_enabled'],'strategy':this[_0x1f8c87(0xcf)],'ttl':this['_defaultTTL'],'retryCount':this[_0x1f8c87(0xeb)],'retryDelay':this[_0x1f8c87(0xf3)],'workerId':this[_0x1f8c87(0x114)]},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this['_enabled']+',\x20strategy:\x20'+this[_0x1f8c87(0xcf)]);}['_ensureInitialized'](){const _0xe28e89=a0_0x2e97b9;!this[_0xe28e89(0x100)]&&this[_0xe28e89(0xfc)]();}get[a0_0x2e97b9(0xef)](){const _0x41ec8d=a0_0x2e97b9;return this[_0x41ec8d(0xce)](),this['_prefix'];}get['enabled'](){return this['_ensureInitialized'](),this['_enabled'];}get[a0_0x2e97b9(0x11d)](){const _0x14064e=a0_0x2e97b9;return this['_ensureInitialized'](),this[_0x14064e(0xe1)];}get[a0_0x2e97b9(0xc9)](){return this['_ensureInitialized'](),this['_retryCount'];}get['retryDelay'](){const _0xa422d9=a0_0x2e97b9;return this[_0xa422d9(0xce)](),this[_0xa422d9(0xf3)];}get['strategy'](){const _0x4f16e5=a0_0x2e97b9;return this[_0x4f16e5(0xce)](),this[_0x4f16e5(0xcf)];}get[a0_0x2e97b9(0xd9)](){return this['_ensureInitialized'](),this['_workerId'];}['buildLockKey'](_0x140a4d){const {module:_0x85f02a,endpoint:_0x392514,lockType:_0x5262b8,recordId:_0x460922}=_0x140a4d;if(_0x460922)return''+this['prefix']+_0x85f02a+':'+_0x392514+':'+_0x460922+':'+_0x5262b8;return''+this['prefix']+_0x85f02a+':'+_0x392514+':'+_0x5262b8;}[a0_0x2e97b9(0xd0)](){const _0x2804ce=a0_0x2e97b9,_0x2877f1={'pjsdS':function(_0x419111){return _0x419111();}};return this['workerId']+':'+_0x2877f1[_0x2804ce(0xdd)](uuidv4)+':'+Date[_0x2804ce(0xc8)]();}async[a0_0x2e97b9(0xfb)](_0x31f90a){const _0x42f097=a0_0x2e97b9,_0x4133f4={'jNCjO':'write','vKtFX':function(_0x144c0f,_0x589d8e){return _0x144c0f<_0x589d8e;},'bcKlj':'read_lock_acquired','tBOba':_0x42f097(0x104),'UZyhG':function(_0x19c16f,_0x12b964){return _0x19c16f*_0x12b964;},'hZRWV':'READ\x20lock\x20acquire\x20timeout','DqKgL':'READ\x20lock\x20error'};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x2d9371=this['buildLockKey']({..._0x31f90a,'lockType':_0x4133f4[_0x42f097(0xf9)]}),_0x411404=this['buildLockKey']({..._0x31f90a,'lockType':_0x42f097(0x101)}),_0x5ed73f=this['generateLockValue']();try{const _0x35db32=redisClient[_0x42f097(0xe5)]();for(let _0x4d4e03=0x0;_0x4133f4[_0x42f097(0xd5)](_0x4d4e03,this[_0x42f097(0xc9)]);_0x4d4e03++){const _0xac27b2=await _0x35db32[_0x42f097(0x115)](_0x2d9371);if(!_0xac27b2){await _0x35db32['incr'](_0x411404),await _0x35db32[_0x42f097(0xfe)](_0x411404,this['defaultTTL']);const _0x18f579=_0x411404+':'+_0x5ed73f;return await _0x35db32['setex'](_0x18f579,this['defaultTTL'],_0x5ed73f),logger['debug']({'event':_0x4133f4[_0x42f097(0x116)],'key':_0x411404,'value':_0x5ed73f},_0x4133f4['tBOba']),{'success':!![],'lockValue':_0x5ed73f,'lockKey':_0x18f579};}logger['debug']({'event':_0x42f097(0x121),'writeKey':_0x2d9371,'attempt':_0x4d4e03},'Waiting\x20for\x20WRITE\x20lock\x20to\x20release'),await this['sleep'](_0x4133f4[_0x42f097(0xf6)](this[_0x42f097(0x11f)],Math['pow'](0x2,_0x4d4e03)));}return logger[_0x42f097(0xf2)]({'event':_0x42f097(0xca),'key':_0x411404},_0x4133f4[_0x42f097(0x105)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x46e5ef){return logger[_0x42f097(0xf5)]({'event':_0x42f097(0x11c),'error':_0x46e5ef[_0x42f097(0xf8)]},_0x4133f4['DqKgL']),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x538bbd){const _0x146b00=a0_0x2e97b9,_0x218a18={'RyvSO':'write','LSpci':'write_lock_acquired','tlOHm':_0x146b00(0xd1),'yBuXI':function(_0x57c3b9,_0x5e03b5){return _0x57c3b9===_0x5e03b5;},'ywdmc':function(_0x37f458,_0x29f8d5){return _0x37f458(_0x29f8d5);},'elSZz':'WRITE\x20lock\x20acquired\x20(retry\x20mode)','fGIpO':'write_lock_waiting','meXwd':'Waiting\x20for\x20locks\x20to\x20release','XgJfC':function(_0x2094b7,_0x3af4cc){return _0x2094b7*_0x3af4cc;},'NwtVc':'WRITE\x20lock\x20acquire\x20timeout','ekgrv':_0x146b00(0x119)};if(!this[_0x146b00(0xd4)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x565653=this['buildLockKey']({..._0x538bbd,'lockType':_0x218a18['RyvSO']}),_0x403287=this[_0x146b00(0xf7)]({..._0x538bbd,'lockType':'read'}),_0x1d0c0b=this['generateLockValue']();try{const _0x48392e=redisClient['getClient']();if(this[_0x146b00(0xee)]==='reject'){const _0x4f61cd=await _0x48392e['set'](_0x565653,_0x1d0c0b,'EX',this['defaultTTL'],'NX');if(_0x4f61cd==='OK')return logger['debug']({'event':_0x218a18[_0x146b00(0xe6)],'key':_0x565653,'value':_0x1d0c0b,'strategy':'reject'},_0x146b00(0xe8)),{'success':!![],'lockValue':_0x1d0c0b,'lockKey':_0x565653};return logger['debug']({'event':_0x218a18['tlOHm'],'key':_0x565653},'WRITE\x20lock\x20rejected\x20-\x20record\x20busy'),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x553324=0x0;_0x553324<this['retryCount'];_0x553324++){const [_0x8273ca,_0xce2edd]=await Promise['all']([_0x48392e['get'](_0x403287),_0x48392e[_0x146b00(0x115)](_0x565653)]);if(!_0xce2edd&&(!_0x8273ca||_0x218a18['yBuXI'](_0x218a18[_0x146b00(0x110)](parseInt,_0x8273ca),0x0))){const _0x4f84f9=await _0x48392e['set'](_0x565653,_0x1d0c0b,'EX',this[_0x146b00(0x11d)],'NX');if(_0x4f84f9==='OK')return logger['debug']({'event':_0x146b00(0xe2),'key':_0x565653,'value':_0x1d0c0b,'strategy':'retry'},_0x218a18['elSZz']),{'success':!![],'lockValue':_0x1d0c0b,'lockKey':_0x565653};}logger[_0x146b00(0x102)]({'event':_0x218a18['fGIpO'],'writeKey':_0x565653,'readCount':_0x8273ca,'attempt':_0x553324},_0x218a18['meXwd']),await this[_0x146b00(0xe0)](_0x218a18[_0x146b00(0xf1)](this[_0x146b00(0x11f)],Math['pow'](0x2,_0x553324)));}return logger['warn']({'event':_0x146b00(0xd8),'key':_0x565653},_0x218a18[_0x146b00(0xcb)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x7ce516){return logger[_0x146b00(0xf5)]({'event':_0x218a18['ekgrv'],'error':_0x7ce516['message']},_0x146b00(0x10b)),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x15c7f3,_0x524424){const _0x290458=a0_0x2e97b9,_0x41f945={'WfPno':_0x290458(0xda),'kwkai':function(_0x45c4dc,_0x4d3899){return _0x45c4dc>_0x4d3899;},'DOCvk':_0x290458(0xd7),'GBmHt':_0x290458(0xec),'SCOpz':function(_0x2cdb9c,_0x2e09c8){return _0x2cdb9c===_0x2e09c8;},'dPBLs':_0x290458(0x10e),'Jwbne':'lock_release_not_owner','HmcMG':'Cannot\x20release\x20lock\x20-\x20not\x20owner','yNWbx':'lock_release_error','gNqEZ':'Lock\x20release\x20error'};if(!this['enabled']||!_0x15c7f3)return!![];try{const _0xcfce98=redisClient['getClient']();if(_0x15c7f3[_0x290458(0xdf)](_0x41f945[_0x290458(0x107)])){await _0xcfce98['del'](_0x15c7f3);const _0x4822f0=_0x15c7f3['substring'](0x0,_0x15c7f3['lastIndexOf'](':')),_0x2fac10=await _0xcfce98[_0x290458(0x115)](_0x4822f0);return _0x2fac10&&_0x41f945['kwkai'](parseInt(_0x2fac10),0x0)&&await _0xcfce98[_0x290458(0x118)](_0x4822f0),logger[_0x290458(0x102)]({'event':_0x41f945[_0x290458(0x103)],'key':_0x15c7f3},_0x41f945[_0x290458(0xdb)]),!![];}const _0x1189cf='\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(\x22del\x22,\x20KEYS[1])\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',_0x48d1a2=await _0xcfce98[_0x290458(0xe3)](_0x1189cf,0x1,_0x15c7f3,_0x524424);if(_0x41f945['SCOpz'](_0x48d1a2,0x1))return logger['debug']({'event':_0x290458(0xfd),'key':_0x15c7f3},_0x41f945[_0x290458(0xfa)]),!![];return logger[_0x290458(0xf2)]({'event':_0x41f945['Jwbne'],'key':_0x15c7f3},_0x41f945['HmcMG']),![];}catch(_0x20ecdc){return logger['error']({'event':_0x41f945[_0x290458(0x106)],'key':_0x15c7f3,'error':_0x20ecdc[_0x290458(0xf8)]},_0x41f945['gNqEZ']),![];}}async[a0_0x2e97b9(0xdc)](_0x36b0aa,_0x3fc354,_0x62ca34=null){const _0x94e83d=a0_0x2e97b9,_0x4849bb={'gvasv':_0x94e83d(0x11e),'lensH':_0x94e83d(0x109)};if(!this[_0x94e83d(0xd4)]||!_0x36b0aa)return!![];try{const _0x3ca7b3=redisClient[_0x94e83d(0xe5)](),_0x23078c='\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',_0x4772b0=await _0x3ca7b3['eval'](_0x23078c,0x1,_0x36b0aa,_0x3fc354,_0x62ca34||this['defaultTTL']);if(_0x4772b0===0x1)return logger[_0x94e83d(0x102)]({'event':'lock_extended','key':_0x36b0aa,'ttl':_0x62ca34||this['defaultTTL']},_0x4849bb[_0x94e83d(0x11b)]),!![];return![];}catch(_0x56babc){return logger[_0x94e83d(0xf5)]({'event':'lock_extend_error','key':_0x36b0aa,'error':_0x56babc['message']},_0x4849bb[_0x94e83d(0xea)]),![];}}[a0_0x2e97b9(0x10c)](){const _0x1680cc=a0_0x2e97b9;return this[_0x1680cc(0xd4)];}[a0_0x2e97b9(0xe0)](_0x4d76bb){return new Promise(_0x4661aa=>setTimeout(_0x4661aa,_0x4d76bb));}async[a0_0x2e97b9(0xc7)](_0x4ac1fc){const _0x1d949b=a0_0x2e97b9,_0x32b71f={'jYFmD':_0x1d949b(0x11a),'orkkU':function(_0xe21d6b,_0xa11692){return _0xe21d6b||_0xa11692;}};if(!this[_0x1d949b(0xd4)])return{'enabled':![]};try{const _0x895a04=redisClient['getClient'](),_0x4d3bc6=this[_0x1d949b(0xf7)]({..._0x4ac1fc,'lockType':_0x32b71f['jYFmD']}),_0x4df25c=this[_0x1d949b(0xf7)]({..._0x4ac1fc,'lockType':'read'}),[_0x3470d1,_0x56f2f6]=await Promise['all']([_0x895a04['get'](_0x4d3bc6),_0x895a04['get'](_0x4df25c)]);return{'enabled':!![],'writeLock':_0x32b71f[_0x1d949b(0xff)](_0x3470d1,null),'readCount':parseInt(_0x56f2f6)||0x0,'writeKey':_0x4d3bc6,'readKey':_0x4df25c};}catch(_0x31e0bc){return{'enabled':!![],'error':_0x31e0bc[_0x1d949b(0xf8)]};}}}function a0_0x1a3e(){const _0x3880c5=['x3DVCMTLCKLK','z2v0','yMnlBgO','x3bYzwzPEa','zgvJCG','D3jPDgvFBg9JA19LCNjVCG','D3jPDgu','z3zHC3y','CMvHzf9SB2nRx2vYCM9Y','zgvMyxvSDfruta','tg9JAYbuveWGzxH0zw5Kzwq','CMv0CNLezwXHEq','ndmWmJCZohvuA25gtq','CMvHzf9SB2nRx3DHAxrPBMC','te9ds19esvnuuKLcvvrfrf9uveW','z2v0tg9JA0LUzM8','BM93','CMv0CNLdB3vUDa','CMvHzf9SB2nRx3rPBwvVDxq','tND0vMm','mta1mde3tuLXC2Lv','CMv0CNK','x2vUC3vYzuLUAxrPywXPEMvK','x3n0CMf0zwD5','z2vUzxjHDgvmB2nRvMfSDwu','D3jPDgvFBg9JA19YzwPLy3rLza','n0DZC01Suq','mJKZmhfHy0n3Da','zw5HyMXLza','DKT0rLG','DxvPza','CMvHzf9SB2nRx3jLBgvHC2vK','D3jPDgvFBg9JA190Aw1LB3v0','D29YA2vYswq','oNjLywq6','r0jTshq','zxH0zw5Ktg9JAW','CgPZzfm','qvPrqMW','Aw5JBhvKzxm','C2XLzxa','x2rLzMf1BhruveW','D3jPDgvFBg9JA19Hy3f1AxjLza','zxzHBa','lI9YzwrPCY1JBgLLBNq','z2v0q2XPzw50','tfnWy2K','Dhj1zq','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','zxHWB3j0CW','BgvUC0G','x3jLDhj5q291BNq','uKvbrcbSB2nRihjLBgvHC2vK','Bg9JA19JB25MAwDFAw5PDa','C3rYyxrLz3K','ChjLzML4','mKfkChztCq','wgDkzKm','D2fYBG','x3jLDhj5rgvSyxK','mtu0ndG4mtvQAKnUrg4','zxjYB3i','vvP5AeC','yNvPBgrmB2nRs2v5','BwvZC2fNzq','AK5dAK8','zfbcthm','ywnXDwLYzvjLywrmB2nR','x2LUAxrdB25MAwC','D3jPDgvFBg9JA19YzwXLyxnLza','zxHWAxjL','B3jRA1u','x2LUAxrPywXPEMvK','CMvHza','zgvIDwC','re9dDMS','uKvbrcbSB2nRigfJCxvPCMvK','AfPsv1y','Eu5xyNG','v2zqBM8','mtvSDe5euLK','tg9JAYbLEhrLBMqGzxjYB3i','mJe0mZa5mejhEvPAAa','v1jjveuGBg9JAYbLCNjVCG','AxnfBMfIBgvK','otq3ndm2yuj0C3jT','v1jjveuGBg9JAYbYzwXLyxnLza','mta1mJq3mNDPCKfrDW','ExDKBwm','zw52','mtq3mdmYnxzSwxbRzq','x2vUywjSzwq'];a0_0x1a3e=function(){return _0x3880c5;};return a0_0x1a3e();}module[a0_0x2e97b9(0xe9)]=new LockManager();
1
+ const a0_0x33dda7=a0_0x1fe1;(function(_0x41e424,_0x40ae2d){const _0x10d295=a0_0x1fe1,_0x57d5d0=_0x41e424();while(!![]){try{const _0x505745=parseInt(_0x10d295(0x134))/0x1*(parseInt(_0x10d295(0x127))/0x2)+parseInt(_0x10d295(0x14e))/0x3*(-parseInt(_0x10d295(0x15f))/0x4)+-parseInt(_0x10d295(0x153))/0x5*(-parseInt(_0x10d295(0x16a))/0x6)+parseInt(_0x10d295(0x15d))/0x7+parseInt(_0x10d295(0x122))/0x8*(-parseInt(_0x10d295(0x168))/0x9)+-parseInt(_0x10d295(0x116))/0xa+-parseInt(_0x10d295(0x163))/0xb;if(_0x505745===_0x40ae2d)break;else _0x57d5d0['push'](_0x57d5d0['shift']());}catch(_0x19b352){_0x57d5d0['push'](_0x57d5d0['shift']());}}}(a0_0x5127,0x2f5c5));const redisClient=require(a0_0x33dda7(0x148)),{logger}=require(a0_0x33dda7(0x160)),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0xd79f29=a0_0x33dda7;this['_prefix']=null,this['_enabled']=null,this[_0xd79f29(0x117)]=null,this[_0xd79f29(0x166)]=null,this[_0xd79f29(0x14c)]=null,this['_strategy']=null,this[_0xd79f29(0x13e)]=null,this[_0xd79f29(0x123)]=![];}[a0_0x33dda7(0x15a)](){const _0x285a4a=a0_0x33dda7,_0x16ad21={'MOzbc':_0x285a4a(0x13b),'JFaHY':'true','OtFCg':function(_0xd5209a,_0x332750,_0x16df5d){return _0xd5209a(_0x332750,_0x16df5d);},'fLgit':_0x285a4a(0x16b)};this['_prefix']=_0x16ad21['MOzbc'],this['_enabled']=process['env']['LOCK_DISTRIBUTED_ENABLED']===_0x16ad21['JFaHY'],this[_0x285a4a(0x117)]=parseInt(process['env']['LOCK_DISTRIBUTED_TTL'],0xa)||0xa,this['_retryCount']=parseInt(process['env'][_0x285a4a(0x12b)],0xa)||0x3,this['_retryDelay']=_0x16ad21['OtFCg'](parseInt,process['env']['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64,this[_0x285a4a(0x141)]=process['env']['LOCK_DISTRIBUTED_STRATEGY']||_0x285a4a(0x12d),this[_0x285a4a(0x13e)]=_0x285a4a(0x144)+process['pid'],this['_initialized']=!![],logger[_0x285a4a(0x15b)]({'event':_0x16ad21['fLgit'],'enabled':this[_0x285a4a(0x157)],'strategy':this['_strategy'],'ttl':this[_0x285a4a(0x117)],'retryCount':this[_0x285a4a(0x166)],'retryDelay':this[_0x285a4a(0x14c)],'workerId':this[_0x285a4a(0x13e)]},_0x285a4a(0x155)+this['_enabled']+_0x285a4a(0x14a)+this[_0x285a4a(0x141)]);}[a0_0x33dda7(0x14f)](){const _0x2a4da4=a0_0x33dda7;!this['_initialized']&&this[_0x2a4da4(0x15a)]();}get['prefix'](){const _0x3fa677=a0_0x33dda7;return this['_ensureInitialized'](),this[_0x3fa677(0x120)];}get['enabled'](){const _0x232a6b=a0_0x33dda7;return this[_0x232a6b(0x14f)](),this[_0x232a6b(0x157)];}get[a0_0x33dda7(0x11c)](){const _0x165cbc=a0_0x33dda7;return this[_0x165cbc(0x14f)](),this['_defaultTTL'];}get[a0_0x33dda7(0x140)](){const _0x374ad0=a0_0x33dda7;return this[_0x374ad0(0x14f)](),this['_retryCount'];}get['retryDelay'](){const _0x5167c7=a0_0x33dda7;return this[_0x5167c7(0x14f)](),this['_retryDelay'];}get['strategy'](){const _0x28a276=a0_0x33dda7;return this['_ensureInitialized'](),this[_0x28a276(0x141)];}get['workerId'](){return this['_ensureInitialized'](),this['_workerId'];}['buildLockKey'](_0x2170d4){const _0x34046b=a0_0x33dda7,{module:_0x12a1be,endpoint:_0x49187b,lockType:_0x5b6360,recordId:_0x612ab}=_0x2170d4;if(_0x612ab)return''+this['prefix']+_0x12a1be+':'+_0x49187b+':'+_0x612ab+':'+_0x5b6360;return''+this[_0x34046b(0x12e)]+_0x12a1be+':'+_0x49187b+':'+_0x5b6360;}['generateLockValue'](){const _0x66b239=a0_0x33dda7;return this[_0x66b239(0x124)]+':'+uuidv4()+':'+Date['now']();}async[a0_0x33dda7(0x152)](_0x22f3b3){const _0x35936d=a0_0x33dda7,_0x3e2446={'KXmVP':_0x35936d(0x12a),'lPVsK':function(_0x1fb3fb,_0x1d11fe){return _0x1fb3fb<_0x1d11fe;},'uASee':_0x35936d(0x132),'iWPga':'read_lock_waiting','aRJam':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release','KDVCR':_0x35936d(0x115),'fXnZx':_0x35936d(0x150)};if(!this[_0x35936d(0x138)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x200cb2=this['buildLockKey']({..._0x22f3b3,'lockType':_0x3e2446[_0x35936d(0x154)]}),_0x6fcf70=this[_0x35936d(0x121)]({..._0x22f3b3,'lockType':'read'}),_0x1ee7d1=this[_0x35936d(0x159)]();try{const _0x49d096=redisClient['getClient']();for(let _0x4bc8a8=0x0;_0x3e2446[_0x35936d(0x143)](_0x4bc8a8,this['retryCount']);_0x4bc8a8++){const _0x3f1d2c=await _0x49d096['get'](_0x200cb2);if(!_0x3f1d2c){await _0x49d096['incr'](_0x6fcf70),await _0x49d096['expire'](_0x6fcf70,this[_0x35936d(0x11c)]);const _0x4d359c=_0x6fcf70+':'+_0x1ee7d1;return await _0x49d096[_0x35936d(0x13a)](_0x4d359c,this['defaultTTL'],_0x1ee7d1),logger[_0x35936d(0x15e)]({'event':_0x35936d(0x11b),'key':_0x6fcf70,'value':_0x1ee7d1},_0x3e2446['uASee']),{'success':!![],'lockValue':_0x1ee7d1,'lockKey':_0x4d359c};}logger['debug']({'event':_0x3e2446['iWPga'],'writeKey':_0x200cb2,'attempt':_0x4bc8a8},_0x3e2446[_0x35936d(0x145)]),await this[_0x35936d(0x11e)](this['retryDelay']*Math[_0x35936d(0x133)](0x2,_0x4bc8a8));}return logger['warn']({'event':_0x3e2446[_0x35936d(0x135)],'key':_0x6fcf70},_0x3e2446[_0x35936d(0x14d)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x40f037){return logger['error']({'event':'read_lock_error','error':_0x40f037['message']},_0x35936d(0x137)),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x33dda7(0x11a)](_0x878322){const _0x17c5e9=a0_0x33dda7,_0x1bb7a9={'RxbZx':function(_0x25a8ae,_0x65aea3){return _0x25a8ae===_0x65aea3;},'acfYW':function(_0x1b7f3d,_0x2f6b8d){return _0x1b7f3d===_0x2f6b8d;},'GjKEq':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','dEEVo':function(_0x43b720,_0x247f77){return _0x43b720(_0x247f77);},'fVVtf':function(_0x30f57e,_0x169d97){return _0x30f57e===_0x169d97;},'gvXiX':_0x17c5e9(0x136)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x18c770=this['buildLockKey']({..._0x878322,'lockType':'write'}),_0x2009d4=this[_0x17c5e9(0x121)]({..._0x878322,'lockType':_0x17c5e9(0x167)}),_0x3f1c3a=this['generateLockValue']();try{const _0x554842=redisClient['getClient']();if(_0x1bb7a9[_0x17c5e9(0x12f)](this['strategy'],_0x17c5e9(0x118))){const _0x918e49=await _0x554842[_0x17c5e9(0x14b)](_0x18c770,_0x3f1c3a,'EX',this['defaultTTL'],'NX');if(_0x1bb7a9['acfYW'](_0x918e49,'OK'))return logger[_0x17c5e9(0x15e)]({'event':_0x17c5e9(0x15c),'key':_0x18c770,'value':_0x3f1c3a,'strategy':'reject'},'WRITE\x20lock\x20acquired\x20(reject\x20mode)'),{'success':!![],'lockValue':_0x3f1c3a,'lockKey':_0x18c770};return logger['debug']({'event':_0x17c5e9(0x12c),'key':_0x18c770},_0x1bb7a9['GjKEq']),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x429605=0x0;_0x429605<this['retryCount'];_0x429605++){const [_0x497d93,_0x552a09]=await Promise['all']([_0x554842[_0x17c5e9(0x149)](_0x2009d4),_0x554842['get'](_0x18c770)]);if(!_0x552a09&&(!_0x497d93||_0x1bb7a9[_0x17c5e9(0x142)](_0x1bb7a9['dEEVo'](parseInt,_0x497d93),0x0))){const _0x617c5=await _0x554842['set'](_0x18c770,_0x3f1c3a,'EX',this[_0x17c5e9(0x11c)],'NX');if(_0x1bb7a9[_0x17c5e9(0x130)](_0x617c5,'OK'))return logger['debug']({'event':_0x17c5e9(0x15c),'key':_0x18c770,'value':_0x3f1c3a,'strategy':'retry'},'WRITE\x20lock\x20acquired\x20(retry\x20mode)'),{'success':!![],'lockValue':_0x3f1c3a,'lockKey':_0x18c770};}logger[_0x17c5e9(0x15e)]({'event':_0x17c5e9(0x169),'writeKey':_0x18c770,'readCount':_0x497d93,'attempt':_0x429605},'Waiting\x20for\x20locks\x20to\x20release'),await this['sleep'](this[_0x17c5e9(0x158)]*Math['pow'](0x2,_0x429605));}return logger[_0x17c5e9(0x147)]({'event':'write_lock_timeout','key':_0x18c770},_0x17c5e9(0x162)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x198cab){return logger['error']({'event':_0x1bb7a9[_0x17c5e9(0x11d)],'error':_0x198cab[_0x17c5e9(0x125)]},'WRITE\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x33dda7(0x151)](_0x476788,_0x354af7){const _0x36f677=a0_0x33dda7,_0x2928e6={'afPuD':_0x36f677(0x165),'XLoMn':_0x36f677(0x13c),'prwzY':'write_lock_released','vqIih':_0x36f677(0x114),'gYufi':'Cannot\x20release\x20lock\x20-\x20not\x20owner','IhZXU':'Lock\x20release\x20error'};if(!this['enabled']||!_0x476788)return!![];try{const _0x3c134c=redisClient['getClient']();if(_0x476788['includes'](_0x2928e6['afPuD'])){await _0x3c134c['del'](_0x476788);const _0x980f5a=_0x476788[_0x36f677(0x156)](0x0,_0x476788['lastIndexOf'](':')),_0x2674e3=await _0x3c134c['get'](_0x980f5a);return _0x2674e3&&parseInt(_0x2674e3)>0x0&&await _0x3c134c[_0x36f677(0x13d)](_0x980f5a),logger[_0x36f677(0x15e)]({'event':_0x2928e6[_0x36f677(0x11f)],'key':_0x476788},_0x36f677(0x131)),!![];}const _0x29070b='\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(\x22del\x22,\x20KEYS[1])\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',_0x2548e9=await _0x3c134c[_0x36f677(0x13f)](_0x29070b,0x1,_0x476788,_0x354af7);if(_0x2548e9===0x1)return logger['debug']({'event':_0x2928e6['prwzY'],'key':_0x476788},'WRITE\x20lock\x20released'),!![];return logger['warn']({'event':_0x2928e6['vqIih'],'key':_0x476788},_0x2928e6[_0x36f677(0x126)]),![];}catch(_0x501f50){return logger[_0x36f677(0x139)]({'event':'lock_release_error','key':_0x476788,'error':_0x501f50['message']},_0x2928e6['IhZXU']),![];}}async['extendLock'](_0x309b59,_0x1a52d6,_0x10c437=null){const _0x35860a=a0_0x33dda7,_0x44976d={'tqIlM':function(_0x5921ba,_0x50233f){return _0x5921ba===_0x50233f;},'pxrml':_0x35860a(0x161),'RoJyO':'Lock\x20TTL\x20extended','nqQkD':'Lock\x20extend\x20error'};if(!this['enabled']||!_0x309b59)return!![];try{const _0x1ff237=redisClient[_0x35860a(0x119)](),_0x53d7e9='\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',_0x4f4fdc=await _0x1ff237['eval'](_0x53d7e9,0x1,_0x309b59,_0x1a52d6,_0x10c437||this['defaultTTL']);if(_0x44976d['tqIlM'](_0x4f4fdc,0x1))return logger[_0x35860a(0x15e)]({'event':_0x44976d[_0x35860a(0x164)],'key':_0x309b59,'ttl':_0x10c437||this['defaultTTL']},_0x44976d['RoJyO']),!![];return![];}catch(_0x23caa3){return logger[_0x35860a(0x139)]({'event':'lock_extend_error','key':_0x309b59,'error':_0x23caa3[_0x35860a(0x125)]},_0x44976d['nqQkD']),![];}}[a0_0x33dda7(0x129)](){return this['enabled'];}['sleep'](_0x17e445){return new Promise(_0x4d175b=>setTimeout(_0x4d175b,_0x17e445));}async[a0_0x33dda7(0x128)](_0x7fe435){const _0x598ed6=a0_0x33dda7,_0x25b089={'lxxbK':function(_0x4ec4a7,_0x231175){return _0x4ec4a7(_0x231175);}};if(!this['enabled'])return{'enabled':![]};try{const _0x56067b=redisClient['getClient'](),_0x3dce00=this['buildLockKey']({..._0x7fe435,'lockType':'write'}),_0x3f0004=this['buildLockKey']({..._0x7fe435,'lockType':_0x598ed6(0x167)}),[_0x12dc8a,_0x49465c]=await Promise[_0x598ed6(0x146)]([_0x56067b[_0x598ed6(0x149)](_0x3dce00),_0x56067b[_0x598ed6(0x149)](_0x3f0004)]);return{'enabled':!![],'writeLock':_0x12dc8a||null,'readCount':_0x25b089['lxxbK'](parseInt,_0x49465c)||0x0,'writeKey':_0x3dce00,'readKey':_0x3f0004};}catch(_0x53ff9b){return{'enabled':!![],'error':_0x53ff9b[_0x598ed6(0x125)]};}}}function a0_0x5127(){const _0x3058cc=['D29YA2vYswq','BwvZC2fNzq','z1L1zMK','offpwMD6qq','z2v0tg9JA0LUzM8','AxnfBMfIBgvK','D3jPDgu','te9ds19esvnuuKLcvvrfrf9srvrswq','D3jPDgvFBg9JA19YzwPLy3rLza','CMv0CNK','ChjLzML4','uNHIwNG','zLzwDgy','uKvbrcbSB2nRihjLBgvHC2vK','uKvbrcbSB2nRigfJCxvPCMvK','Cg93','nJKXntDJC1fHCNi','s0rwq1i','D3jPDgvFBg9JA19LCNjVCG','uKvbrcbSB2nRigvYCM9Y','zw5HyMXLza','zxjYB3i','C2v0zxG','CMy6Bg9JAZO','CMvHzf9SB2nRx3jLBgvHC2vK','zgvJCG','x3DVCMTLCKLK','zxzHBa','CMv0CNLdB3vUDa','x3n0CMf0zwD5','ywnMwvC','BfbwC0S','D29YA2vYlq','yvjkyw0','ywXS','D2fYBG','lI9YzwrPCY1JBgLLBNq','z2v0','lcbZDhjHDgvNEtOG','C2v0','x3jLDhj5rgvSyxK','zLHUwNG','mZaZmZLgz2rHqMW','x2vUC3vYzuLUAxrPywXPEMvK','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','CMvSzwfZzuXVy2S','ywnXDwLYzvjLywrmB2nR','odm1nda1D2vLBNf0','s1HTvLa','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','C3vIC3rYAw5N','x2vUywjSzwq','CMv0CNLezwXHEq','z2vUzxjHDgvmB2nRvMfSDwu','x2LUAxrdB25MAwC','Aw5MBW','D3jPDgvFBg9JA19Hy3f1AxjLza','mtGXmdKZnxvsBfjowq','zgvIDwC','nhv4yLLUEq','lI9SB2DNzxi','Bg9JA19LEhrLBMrLza','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','nJGXntyWzLjstMzU','ChHYBwW','oNjLywq6','x3jLDhj5q291BNq','CMvHza','mtaZnwfHrhHZrq','D3jPDgvFBg9JA193ywL0Aw5N','nKfSBerxwq','Bg9JA19JB25MAwDFAw5PDa','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','CMvHzf9SB2nRx3rPBwvVDxq','mJK4ndy3mgHjv3LMCG','x2rLzMf1BhruveW','CMvQzwn0','z2v0q2XPzw50','ywnXDwLYzvDYAxrLtg9JAW','CMvHzf9SB2nRx2fJCxvPCMvK','zgvMyxvSDfruta','z3zyAvG','C2XLzxa','weXVtw4','x3bYzwzPEa','yNvPBgrmB2nRs2v5','otu5mLH5vhHira','x2LUAxrPywXPEMvK'];a0_0x5127=function(){return _0x3058cc;};return a0_0x5127();}function a0_0x1fe1(_0x44a975,_0x40994d){_0x44a975=_0x44a975-0x114;const _0x512764=a0_0x5127();let _0x1fe1f1=_0x512764[_0x44a975];if(a0_0x1fe1['ZoccLZ']===undefined){var _0x3cace4=function(_0x5dfffd){const _0x385bdf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x59232c='',_0x34d470='';for(let _0x3b70c8=0x0,_0x54405,_0x2c6f08,_0x377a76=0x0;_0x2c6f08=_0x5dfffd['charAt'](_0x377a76++);~_0x2c6f08&&(_0x54405=_0x3b70c8%0x4?_0x54405*0x40+_0x2c6f08:_0x2c6f08,_0x3b70c8++%0x4)?_0x59232c+=String['fromCharCode'](0xff&_0x54405>>(-0x2*_0x3b70c8&0x6)):0x0){_0x2c6f08=_0x385bdf['indexOf'](_0x2c6f08);}for(let _0x18c720=0x0,_0x24d3fe=_0x59232c['length'];_0x18c720<_0x24d3fe;_0x18c720++){_0x34d470+='%'+('00'+_0x59232c['charCodeAt'](_0x18c720)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x34d470);};a0_0x1fe1['dvOnCw']=_0x3cace4,a0_0x1fe1['LWBezu']={},a0_0x1fe1['ZoccLZ']=!![];}const _0x67ed8a=_0x512764[0x0],_0x11fafd=_0x44a975+_0x67ed8a,_0x44cf5f=a0_0x1fe1['LWBezu'][_0x11fafd];return!_0x44cf5f?(_0x1fe1f1=a0_0x1fe1['dvOnCw'](_0x1fe1f1),a0_0x1fe1['LWBezu'][_0x11fafd]=_0x1fe1f1):_0x1fe1f1=_0x44cf5f,_0x1fe1f1;}module['exports']=new LockManager();
@@ -1 +1 @@
1
- const a0_0x3cd68b=a0_0x451c;(function(_0x18d3b2,_0x1766fd){const _0x4bf625=a0_0x451c,_0x3d70e3=_0x18d3b2();while(!![]){try{const _0x3b3bd3=-parseInt(_0x4bf625(0x230))/0x1*(parseInt(_0x4bf625(0x1bb))/0x2)+parseInt(_0x4bf625(0x1c4))/0x3*(-parseInt(_0x4bf625(0x1d3))/0x4)+parseInt(_0x4bf625(0x1f5))/0x5+parseInt(_0x4bf625(0x1a7))/0x6*(-parseInt(_0x4bf625(0x248))/0x7)+-parseInt(_0x4bf625(0x20b))/0x8*(-parseInt(_0x4bf625(0x1e0))/0x9)+-parseInt(_0x4bf625(0x247))/0xa*(-parseInt(_0x4bf625(0x1d7))/0xb)+parseInt(_0x4bf625(0x20a))/0xc*(-parseInt(_0x4bf625(0x259))/0xd);if(_0x3b3bd3===_0x1766fd)break;else _0x3d70e3['push'](_0x3d70e3['shift']());}catch(_0xaec2b4){_0x3d70e3['push'](_0x3d70e3['shift']());}}}(a0_0x3324,0xad568));function a0_0x451c(_0x448a18,_0xeebc9){_0x448a18=_0x448a18-0x1a7;const _0x33242f=a0_0x3324();let _0x451ccb=_0x33242f[_0x448a18];if(a0_0x451c['FDWnmj']===undefined){var _0xddbfa2=function(_0x34bfbc){const _0xf6cb8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2064c8='',_0x27b5aa='';for(let _0x5d186e=0x0,_0x33c4e6,_0x1cecbe,_0x20a7be=0x0;_0x1cecbe=_0x34bfbc['charAt'](_0x20a7be++);~_0x1cecbe&&(_0x33c4e6=_0x5d186e%0x4?_0x33c4e6*0x40+_0x1cecbe:_0x1cecbe,_0x5d186e++%0x4)?_0x2064c8+=String['fromCharCode'](0xff&_0x33c4e6>>(-0x2*_0x5d186e&0x6)):0x0){_0x1cecbe=_0xf6cb8['indexOf'](_0x1cecbe);}for(let _0x730def=0x0,_0x3b3f3c=_0x2064c8['length'];_0x730def<_0x3b3f3c;_0x730def++){_0x27b5aa+='%'+('00'+_0x2064c8['charCodeAt'](_0x730def)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x27b5aa);};a0_0x451c['mDrWwi']=_0xddbfa2,a0_0x451c['qgnaXf']={},a0_0x451c['FDWnmj']=!![];}const _0x1f7b19=_0x33242f[0x0],_0x16e690=_0x448a18+_0x1f7b19,_0x46017a=a0_0x451c['qgnaXf'][_0x16e690];return!_0x46017a?(_0x451ccb=a0_0x451c['mDrWwi'](_0x451ccb),a0_0x451c['qgnaXf'][_0x16e690]=_0x451ccb):_0x451ccb=_0x46017a,_0x451ccb;}const pino=require(a0_0x3cd68b(0x1f2)),fs=require('fs'),path=require(a0_0x3cd68b(0x1e9));function a0_0x3324(){const _0xe045dd=['Cgf0Aa','Aw5JBhvKzxm','CgfYyw1Z','ifTtte9xxq','CgLK','rgvMyxvSDa','D2fYBG','icbjBMzVoIaGia','y3jLzgvUDgLHBa','CgLUBW','s3vYq24','vfjbtLnbq1rjt05FqKvhsu4','ntK5mZG2nu5wAvb1AG','zxHWB3j0CW','uvrcBwq','ChjVzhvJDgLVBG','rejFueftu1DpuKq','Dg9Rzw4','zgvMyxvSDa','zgf0ywjHC2u','zgjFDhjHBNnHy3rPB24','ms4WlJu','z0HOyuO','CMvWBgfJzq','CMvMCMvZAf90B2TLBG','DgvZDa','C2vJCMv0','Bwf0y2G','Dg9vChbLCKnHC2u','Ec1Yzxf1zxn0lwLK','rKrhufq','C3vIC3rYAw5N','sfruuca','mZm2yM1Mtu5P','ntG4odi0vvzgBMrr','BgvUz3rO','AhnUExu','Ahj0Aw1L','ChjVy2vZC193yxjUAw5N','B2jQzwn0','tKPQC0i','CgLU','AgvHzgvYCW','Dg9ju09tDhjPBMC','vhrRD1m','C3rKvgLTzuz1BMn0Aw9UCW','CgfZC3DVCMq','rermx0rst1a','CgfKrw5K','zxHPC3rZu3LUyW','qunusvzf','q0Xvshy','zw52','zgf0ywjHC2vFy29UzMLN','yLfYzu4','ic0G','EuzlBKm','quXurvi','y29Kzq','Bwv0Ag9K','q1jjveLdquW','A0zzzxC','BwvZC2fNzq','zgv2zwXVCg1LBNq','te9hx0rjuG','ChjVAMvJDa','BNrUz0m','revmrvrf','AxntBg93','ChDK','zNHUyuS','nteZntvJtfLOC0m','ChjPDMf0zv9RzxK','Aw5MBW','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','vvbeqvrf','BMfTzq','DxnLCG','te9hx0XfvKvm','C3rYAw5N','E21Zz30','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','CxPqAhC','Dw5Oyw5KBgvKuMvQzwn0Aw9U','C2vYDMvYx3n0yxj0Aw5N','ANnVBG','tK9erv9ftLy','weDevKC','qvPSBw4','yxbPA2v5','C3rYAw5NAwz5','A2v5CW','EezWA1O','C3rHCNrZv2L0Aa','mtaWmJCWruPNDhDx','mta2mJm5ter1wKnq','w09lxsbqCM9Qzwn0igXVywrLzdOG','vLLVr1i','C29Tzq','iokvKqRILzeGienVBMzPzYaGicaGidOG','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','ufbNrMK','Dhj1zq','CgLUBY1WCMv0DhK','Cg9ZDgDYzxnXBa','C3rKu2vYAwfSAxPLCNm','Cg9YDa','tI9b','icbizwfSDgG6ia','ig9UihbVCNqG','yxv0Ag9YAxPHDgLVBG','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','mZm0mdiYz1fSEwHi','DLvqv1u','AwDYtfu','yMfZzvvYBa','C2vYDMLJzuLUzM8','v3PfBe0','y29UzMLNrMLSzq','s0XxD2u','ndm4shz1uNbK','q3Ljqva','sw50zxjUywWGC2vYDMvYigvYCM9Y','y3z2','vu5ltK9xtG','CxvLCNK','y3jLyxrLv3jPDgvtDhjLyw0','AM9PBG','zMf0ywW','w1jfrefdvevexq','DKLvue4','CMvWzwf0','u1fmx0Xpr19mrvzfta','veH0qxu','su5trvju','te9hx1rpx0zjteu','rgf0ywjHC2u6ia','u1fmx0Xpr19qqvjbtvm','A0DQuKy','w1jfrefdveveoNrVA2vUxq','mKP2qKXwqq','v0jluMG','C3rHDhvZq29Kzq','w1jfrefdveveoMHHC2HD','CMvZDgzVCMDL','whPUrLy','zgvIDwC','zKHmENC','tLvNA00','mZiXotiXBhLQs1z6','BxmP','EKLXzhC','sLDux1nfq1jfva','zxjYB3i','C3bSAxq','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','ChjPDMf0zwTLEq','EezOzue','CgfZC3DK','yxbWlMXVzW','y0DeDw4','AKHirNG','Dg9mB3DLCKnHC2u','CMvTB3rLqwrKCMvZCW','mtj3CgXotuK','r0rkEgG','yxbPs2v5','zw5KCg9PBNrFCMvNAxn0zxjLza','mtiZmKT5wKjQsW','zvPmB3u','zxjYB3iUBg9N','yMPSrxG','C3rHDhvZ','tK9uiefdveLwrq','yM9KEq','rvPzBNi','C3rHy2S','nZjYB0zZq24','rKfuquW6ia','D3jPDgu','iokvKqRILzeGifbYB2PLy3qGicaGidOG','rwfcCxq','y3jLzgL0y2fYza','vuzkq1C','DhjPBq','rxjYB3i'];a0_0x3324=function(){return _0xe045dd;};return a0_0x3324();}let logToFile=![],logDir='./logs',serviceName=a0_0x3cd68b(0x1bf),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_0x3cd68b(0x239),'customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env'][a0_0x3cd68b(0x23f)]!==a0_0x3cd68b(0x1f8),logLevel=process[a0_0x3cd68b(0x21d)][a0_0x3cd68b(0x237)]||a0_0x3cd68b(0x232);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0x3cd68b(0x250),'options':prettyPrintOptions}:undefined,'base':{'service':a0_0x3cd68b(0x1bf),'version':process['env']['APP_VERSION']||a0_0x3cd68b(0x1fe),'env':process[a0_0x3cd68b(0x21d)][a0_0x3cd68b(0x23f)]||a0_0x3cd68b(0x228)},'timestamp':pino[a0_0x3cd68b(0x216)]['isoTime'],'redact':{'paths':['req.headers.authorization','req.headers[\x22x-api-key\x22]','password',a0_0x3cd68b(0x1fa),a0_0x3cd68b(0x1d5),a0_0x3cd68b(0x1f9),a0_0x3cd68b(0x1c7)],'censor':'[REDACTED]'},'serializers':{'req':_0x2873df=>({'id':_0x2873df['id'],'method':_0x2873df[a0_0x3cd68b(0x224)],'url':_0x2873df['url'],'path':_0x2873df[a0_0x3cd68b(0x1e9)],'remoteAddress':_0x2873df['ip']||_0x2873df['connection']?.['remoteAddress']}),'res':_0x4a1f11=>({'statusCode':_0x4a1f11[a0_0x3cd68b(0x1bd)],'headers':_0x4a1f11['getHeaders']?.()}),'err':pino[a0_0x3cd68b(0x252)]['err']}});function initFileLogging(){const _0x50c008=a0_0x3cd68b,_0x12875b={'EZYnr':function(_0x2852e2,_0x12c9da){return _0x2852e2===_0x12c9da;},'hfsRX':_0x50c008(0x1fb),'GDJxh':function(_0x3d2eb2,_0x18cad8){return _0x3d2eb2===_0x18cad8;},'TtkwS':'true','CyIAP':_0x50c008(0x1c1),'cGDun':function(_0x4bce41,_0x58ddc1){return _0x4bce41!==_0x58ddc1;},'fxnaK':'false','nPumj':function(_0x9e379c,_0x503576){return _0x9e379c(_0x503576);},'DrWUT':'error.log','zIqdw':'file_logging_enabled','bjlEx':_0x50c008(0x232)};if(fileLoggingInitialized)return;logToFile=_0x12875b[_0x50c008(0x1de)](process['env'][_0x50c008(0x1b6)],_0x50c008(0x24f));const _0x3890b8=process[_0x50c008(0x21d)][_0x50c008(0x23a)]||_0x12875b['hfsRX'];logDir=process['env'][_0x50c008(0x229)]||'./logs/'+_0x3890b8,serviceName=process[_0x50c008(0x21d)]['SERVICE_NAME']||_0x50c008(0x1bf),sqlLogEnabled=_0x12875b[_0x50c008(0x1d4)](process['env']['SQL_LOG_ENABLED'],_0x12875b[_0x50c008(0x215)]),sqlLogLevel=process['env'][_0x50c008(0x1b3)]||_0x12875b[_0x50c008(0x1a8)],sqlLogParams=_0x12875b[_0x50c008(0x1cf)](process[_0x50c008(0x21d)][_0x50c008(0x1b8)],_0x12875b[_0x50c008(0x22f)]),sqlLogSlowThreshold=_0x12875b['nPumj'](parseInt,process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x525653=path['resolve'](process['cwd'](),logDir);try{!fs[_0x50c008(0x21a)](_0x525653)&&fs['mkdirSync'](_0x525653,{'recursive':!![]});}catch(_0xe10083){console['error'](_0x50c008(0x258)+_0x525653+':',_0xe10083['message']),fileLoggingInitialized=!![];return;}const _0x2b90b8=path[_0x50c008(0x1ae)](_0x525653,'app.log'),_0x2edca9=path[_0x50c008(0x1ae)](_0x525653,_0x12875b['DrWUT']);try{appLogStream=fs['createWriteStream'](_0x2b90b8,{'flags':'a'}),errorLogStream=fs[_0x50c008(0x1ad)](_0x2edca9,{'flags':'a'}),fileLoggingInitialized=!![];const _0x22dbaa={'event':_0x12875b[_0x50c008(0x1c6)],'logDir':_0x525653,'files':[_0x50c008(0x1ce),_0x50c008(0x1d9)]},_0x17b75c='File\x20logging\x20enabled:\x20'+_0x525653;logger['info'](_0x22dbaa,_0x17b75c),writeToFileLog({..._0x22dbaa,'level':_0x12875b[_0x50c008(0x1da)],'msg':_0x17b75c,'time':new Date()[_0x50c008(0x214)]()},_0x12875b['bjlEx']);}catch(_0x8c1ad2){console[_0x50c008(0x1c8)](_0x50c008(0x233),_0x8c1ad2['message']),fileLoggingInitialized=!![];}}function writeToFileLog(_0x597cfa,_0x845e0b){const _0x2e64de=a0_0x3cd68b,_0x2712ae={'gHhaJ':function(_0x5a9af2,_0x4099a9){return _0x5a9af2===_0x4099a9;},'cHqls':'error'};if(!logToFile||!appLogStream)return;const _0x470f0e={'service':serviceName,..._0x597cfa},_0x381711=JSON[_0x2e64de(0x243)](_0x470f0e)+'\x0a';appLogStream[_0x2e64de(0x1e2)](_0x381711),(_0x2712ae['gHhaJ'](_0x845e0b,_0x2712ae['cHqls'])||_0x2712ae[_0x2e64de(0x1ff)](_0x845e0b,_0x2e64de(0x1af)))&&(errorLogStream&&errorLogStream['write'](_0x381711));}const createRequestLogger=(_0x15aada={})=>{return logger['child'](_0x15aada);},logServerStart=_0x2248f9=>{const _0x52e000=a0_0x3cd68b,_0x965759={'VbRMD':function(_0x2c5185,_0x471e92){return _0x2c5185-_0x471e92;},'xFpkZ':function(_0xc6010b,_0x4339ff){return _0xc6010b/_0x4339ff;},'fHLzw':'Node.js','zXBsw':_0x52e000(0x254),'QTBmd':function(_0x16e293,_0x4b16e6,_0x237115){return _0x16e293(_0x4b16e6,_0x237115);},'jHHFx':_0x52e000(0x232)},_0x55010f='RESTFORGE\x20RUNTIME\x20SERVER',_0x330c1c=Math['max'](0x0,_0x965759['VbRMD'](0x37,_0x55010f[_0x52e000(0x20c)])),_0x424e18=Math['floor'](_0x965759[_0x52e000(0x245)](_0x330c1c,0x2)),_0x1f689f=_0x330c1c-_0x424e18,_0x40366a='║'+'\x20'[_0x52e000(0x1b2)](_0x424e18)+_0x55010f+'\x20'['repeat'](_0x1f689f)+'║',_0x48638b=_0x52e000(0x1ca)+_0x40366a+'\x0a╠═══════════════════════════════════════════════════════╣\x0a║\x20\x20Environment\x20:\x20'+(_0x2248f9['environment']||_0x965759[_0x52e000(0x1c2)])['padEnd'](0x26)+_0x52e000(0x1e3)+(_0x2248f9['project']||_0x965759['zXBsw'])['padEnd'](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+String(_0x2248f9['port']||0xbb8)['padEnd'](0x26)+_0x52e000(0x24c)+(_0x2248f9['configFile']||_0x52e000(0x1ee))[_0x52e000(0x219)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x2248f9[_0x52e000(0x1d5)]?_0x52e000(0x21b):_0x52e000(0x1dc))['padEnd'](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console['log'](_0x48638b);const _0x530f8a={'event':_0x52e000(0x23d),'project':_0x2248f9[_0x52e000(0x22a)],'port':_0x2248f9[_0x52e000(0x253)],'config':_0x2248f9[_0x52e000(0x25f)],'apiKeyEnabled':!!_0x2248f9[_0x52e000(0x1d5)]};logger['info'](_0x530f8a),_0x965759[_0x52e000(0x1f7)](writeToFileLog,{..._0x530f8a,'level':_0x52e000(0x232),'msg':'Server\x20starting:\x20'+_0x2248f9['project']+_0x52e000(0x256)+_0x2248f9['port'],'time':new Date()['toISOString']()},_0x965759[_0x52e000(0x1d0)]);},logServerReady=_0x1b5032=>{const _0x1fe81c=a0_0x3cd68b,_0x5871f6={'xEgcY':_0x1fe81c(0x232)},_0x20a1b8={'event':'server_ready','port':_0x1b5032[_0x1fe81c(0x253)],'module':_0x1b5032['module'],'healthCheck':_0x1b5032['healthCheck'],'serviceInfo':_0x1b5032[_0x1fe81c(0x25d)],'baseUrl':_0x1b5032[_0x1fe81c(0x25c)]},_0x39ed37=_0x1fe81c(0x24d)+_0x1b5032[_0x1fe81c(0x253)];logger[_0x1fe81c(0x232)](_0x20a1b8,_0x39ed37),writeToFileLog({..._0x20a1b8,'level':'info','msg':_0x39ed37,'time':new Date()[_0x1fe81c(0x214)]()},_0x5871f6['xEgcY']),_0x1b5032['healthCheck']&&logger['info'](_0x1fe81c(0x255)+_0x1b5032['healthCheck']),_0x1b5032['serviceInfo']&&logger[_0x1fe81c(0x232)](_0x1fe81c(0x1f0)+_0x1b5032['serviceInfo']),_0x1b5032['baseUrl']&&logger[_0x1fe81c(0x232)]('\x20\x20URL:\x20\x20\x20\x20'+_0x1b5032['baseUrl']);},logProjectLoaded=(_0x14f2dd,_0x41a6cb)=>{const _0x3adfb4=a0_0x3cd68b,_0x581709={'kBSeN':'project_loaded','bBOMN':'info'},_0x59e255={'event':_0x581709['kBSeN'],'project':_0x14f2dd,'path':_0x41a6cb},_0x397043=_0x3adfb4(0x249)+_0x14f2dd;logger[_0x3adfb4(0x232)](_0x59e255,_0x397043),writeToFileLog({..._0x59e255,'level':_0x581709['bBOMN'],'msg':_0x397043,'time':new Date()[_0x3adfb4(0x214)]()},'info');},logEndpointRegistered=(_0x8f36d3,_0x110011)=>{const _0x528dd8=a0_0x3cd68b,_0x5da945={'eZLou':_0x528dd8(0x1c1)},_0x3866d1={'event':_0x528dd8(0x1d6),'endpoint':_0x8f36d3,'route':_0x110011},_0x4c5b82='\x20\x20→\x20'+_0x8f36d3+':\x20'+_0x110011;logger['debug'](_0x3866d1,_0x4c5b82),writeToFileLog({..._0x3866d1,'level':_0x5da945['eZLou'],'msg':_0x4c5b82,'time':new Date()[_0x528dd8(0x214)]()},_0x5da945[_0x528dd8(0x1d8)]);},logDatabaseConfig=_0x2c3522=>{const _0x3390a3=a0_0x3cd68b,_0x811332={'event':_0x3390a3(0x21e),'host':_0x2c3522['host'],'port':_0x2c3522['port'],'database':_0x2c3522[_0x3390a3(0x1fc)],'type':_0x2c3522['type'],'user':_0x2c3522[_0x3390a3(0x236)]},_0x7a4640=_0x3390a3(0x1b7)+_0x2c3522['type']+'://'+_0x2c3522['host']+':'+_0x2c3522[_0x3390a3(0x253)]+'/'+_0x2c3522[_0x3390a3(0x1fc)];logger[_0x3390a3(0x1c1)](_0x811332,_0x7a4640),writeToFileLog({..._0x811332,'level':'debug','msg':_0x7a4640,'time':new Date()[_0x3390a3(0x214)]()},'debug');},logRequest=(_0x26c4f8,_0x27d40d,_0x429d21)=>{const _0x45ef90=a0_0x3cd68b,_0x43678f={'VNmAe':'http_request','THtAu':function(_0x32bb11,_0x342df2){return _0x32bb11>=_0x342df2;}},_0x3c2ecd={'event':_0x43678f['VNmAe'],'method':_0x26c4f8['method'],'path':_0x26c4f8['path'],'statusCode':_0x27d40d['statusCode'],'durationMs':_0x429d21,'ip':_0x26c4f8['ip']},_0x1adf67=_0x26c4f8['method']+'\x20'+_0x26c4f8['path']+_0x45ef90(0x220)+_0x27d40d['statusCode']+'\x20('+_0x429d21+_0x45ef90(0x1c5);let _0x43e339=_0x45ef90(0x232);if(_0x27d40d[_0x45ef90(0x1bd)]>=0x1f4)_0x43e339='error',logger['error'](_0x3c2ecd,_0x1adf67);else _0x43678f[_0x45ef90(0x1b4)](_0x27d40d['statusCode'],0x190)?(_0x43e339=_0x45ef90(0x1ef),logger['warn'](_0x3c2ecd,_0x1adf67)):logger['info'](_0x3c2ecd,_0x1adf67);writeToFileLog({..._0x3c2ecd,'level':_0x43e339,'msg':_0x1adf67,'time':new Date()[_0x45ef90(0x214)]()},_0x43e339);},SENSITIVE_PARAM_PATTERNS=[a0_0x3cd68b(0x217),'passwd',a0_0x3cd68b(0x22e),a0_0x3cd68b(0x1fa),'access_token','refresh_token',a0_0x3cd68b(0x203),'api_secret',a0_0x3cd68b(0x242),'api_key',a0_0x3cd68b(0x1f1),'credentials',a0_0x3cd68b(0x212),'otp','private_key',a0_0x3cd68b(0x1cb)],redactSensitiveParams=(_0x4700c9,_0x408f86)=>{const _0x18c8ee=a0_0x3cd68b,_0x3e3518={'CLUHv':_0x18c8ee(0x1ba)};if(!_0x4700c9||_0x4700c9['length']===0x0)return _0x4700c9;const _0x428b41=_0x408f86['toLowerCase'](),_0x594ba8=_0x428b41['match'](/\(([^)]+)\)\s*values/i);let _0x28dfb5=[];_0x594ba8&&(_0x28dfb5=_0x594ba8[0x1][_0x18c8ee(0x1c9)](',')['map'](_0x54219c=>_0x54219c['trim']()['toLowerCase']()));const _0x13f2a7=_0x428b41[_0x18c8ee(0x204)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x13f2a7){const _0x5e8b8d=_0x13f2a7[0x1],_0x56b9ee=_0x5e8b8d[_0x18c8ee(0x204)](/(\w+)\s*=/g);_0x56b9ee&&(_0x28dfb5=_0x56b9ee['map'](_0x227022=>_0x227022[_0x18c8ee(0x200)](/\s*=/,'')['trim']()[_0x18c8ee(0x1d1)]()));}return _0x4700c9['map']((_0x11a899,_0x4c5731)=>{const _0x8a5970=_0x18c8ee;if(_0x28dfb5[_0x4c5731]){const _0x3eeaab=_0x28dfb5[_0x4c5731],_0x5e19fb=SENSITIVE_PARAM_PATTERNS['some'](_0x1ea907=>_0x3eeaab[_0x8a5970(0x1ea)](_0x1ea907));if(_0x5e19fb)return _0x8a5970(0x1b0);}if(typeof _0x11a899===_0x8a5970(0x238)&&_0x11a899['length']>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x8a5970(0x202)](_0x11a899)&&_0x11a899['includes']('.'))return _0x3e3518[_0x8a5970(0x21c)];if(/^[a-fA-F0-9]{32,}$/[_0x8a5970(0x202)](_0x11a899))return _0x8a5970(0x1be);}return _0x11a899;});},parseQueryMetadata=_0x148ed8=>{const _0x40e6c7=a0_0x3cd68b,_0x2a1669={'wTHJc':_0x40e6c7(0x1ab),'EaBqt':'SELECT','WzElM':_0x40e6c7(0x1b5),'UFJCW':'BEGIN','FDGPT':_0x40e6c7(0x1f4),'vIUPN':'TRANSACTION_ROLLBACK','qzPhw':_0x40e6c7(0x222),'TlnmA':'DROP','bKcqo':_0x40e6c7(0x218)},_0x1362e4=_0x148ed8[_0x40e6c7(0x1e7)](),_0x2e730b=_0x1362e4['toUpperCase']();let _0x4a74e2=_0x2a1669['wTHJc'],_0x1cfadc=null;if(_0x2e730b['startsWith'](_0x2a1669[_0x40e6c7(0x1e4)])){_0x4a74e2=_0x2a1669['EaBqt'];const _0xe33955=_0x1362e4[_0x40e6c7(0x204)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1cfadc=_0xe33955?_0xe33955[0x1]:null;}else{if(_0x2e730b['startsWith'](_0x2a1669[_0x40e6c7(0x25e)])){_0x4a74e2=_0x2a1669['WzElM'];const _0x575322=_0x1362e4['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1cfadc=_0x575322?_0x575322[0x1]:null;}else{if(_0x2e730b[_0x40e6c7(0x246)](_0x40e6c7(0x234))){_0x4a74e2='UPDATE';const _0x2c7b93=_0x1362e4['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1cfadc=_0x2c7b93?_0x2c7b93[0x1]:null;}else{if(_0x2e730b[_0x40e6c7(0x246)]('DELETE')){_0x4a74e2=_0x40e6c7(0x22c);const _0x5383be=_0x1362e4['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1cfadc=_0x5383be?_0x5383be[0x1]:null;}else{if(_0x2e730b['startsWith'](_0x2a1669[_0x40e6c7(0x1e6)])||_0x2e730b[_0x40e6c7(0x246)]('START\x20TRANSACTION'))_0x4a74e2=_0x2a1669[_0x40e6c7(0x207)];else{if(_0x2e730b['startsWith']('COMMIT'))_0x4a74e2='TRANSACTION_COMMIT';else{if(_0x2e730b['startsWith']('ROLLBACK'))_0x4a74e2=_0x2a1669[_0x40e6c7(0x1b1)];else{if(_0x2e730b['startsWith']('CREATE'))_0x4a74e2='DDL_CREATE';else{if(_0x2e730b[_0x40e6c7(0x246)](_0x2a1669[_0x40e6c7(0x23b)]))_0x4a74e2='DDL_ALTER';else _0x2e730b['startsWith'](_0x2a1669['TlnmA'])&&(_0x4a74e2=_0x2a1669['bKcqo']);}}}}}}}}return{'type':_0x4a74e2,'table':_0x1cfadc};},startQueryTimer=()=>{const _0x2b9151=a0_0x3cd68b,_0x29035e={'igrLU':function(_0x317d9b,_0x1b3416){return _0x317d9b(_0x1b3416);},'XznFV':function(_0x34da8a,_0x2ba491){return _0x34da8a/_0x2ba491;}},_0x4ec1dd=process[_0x2b9151(0x20e)]();return()=>{const _0x3ed030=_0x2b9151,[_0x12bf7d,_0x57bae3]=process[_0x3ed030(0x20e)](_0x4ec1dd);return _0x29035e[_0x3ed030(0x25b)](parseFloat,(_0x12bf7d*0x3e8+_0x29035e[_0x3ed030(0x1c0)](_0x57bae3,0xf4240))['toFixed'](0x2));};},logQuery=(_0x2c26b5,_0x476e48=[],_0x1432db={})=>{const _0x3ea501=a0_0x3cd68b,_0x5cf3eb={'bQreN':'db_query','PPgFi':function(_0x4516e7,_0x2de93a){return _0x4516e7>_0x2de93a;},'kPosV':function(_0x4b3291,_0x2bc557,_0x415487){return _0x4b3291(_0x2bc557,_0x415487);},'WBKRh':function(_0x389fef,_0x52c9ac){return _0x389fef!==_0x52c9ac;},'XGDVG':_0x3ea501(0x1ec),'kFYew':'warn','Fwujd':function(_0xbd5957,_0x59b332){return _0xbd5957===_0x59b332;}};if(!sqlLogEnabled){logger['debug']({'event':_0x5cf3eb[_0x3ea501(0x21f)],'query':_0x2c26b5[_0x3ea501(0x208)](0x0,0xc8),'paramCount':_0x476e48[_0x3ea501(0x20c)]},'DB\x20Query');return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x3ea501(0x251)}=_0x1432db,{type:_0x146edf,table:_0x1833be}=parseQueryMetadata(_0x2c26b5),_0x10658f={'event':'sql_query','queryType':_0x146edf,'table':_0x1833be,'query':_0x2c26b5,'paramCount':_0x476e48[_0x3ea501(0x20c)],'dbType':dbType};sqlLogParams&&_0x5cf3eb[_0x3ea501(0x24e)](_0x476e48['length'],0x0)&&(_0x10658f[_0x3ea501(0x1eb)]=_0x5cf3eb['kPosV'](redactSensitiveParams,_0x476e48,_0x2c26b5));duration!==null&&(_0x10658f['durationMs']=duration,_0x10658f[_0x3ea501(0x22d)]=_0x5cf3eb[_0x3ea501(0x24e)](duration,sqlLogSlowThreshold));rowsAffected!==null&&(_0x10658f['rowsAffected']=rowsAffected);const _0x17ef74=_0x1833be||'unknown';let _0x489858='['+_0x146edf+']\x20'+_0x17ef74;_0x5cf3eb[_0x3ea501(0x1bc)](duration,null)&&(_0x489858+='\x20('+duration+_0x3ea501(0x1c5));const _0x598e38=_0x5cf3eb[_0x3ea501(0x1bc)](duration,null)&&duration>sqlLogSlowThreshold;let _0x45137e='debug';if(_0x598e38)_0x489858+=_0x5cf3eb[_0x3ea501(0x240)],_0x45137e=_0x5cf3eb[_0x3ea501(0x226)],logger[_0x3ea501(0x1ef)](_0x10658f,_0x489858);else _0x5cf3eb['Fwujd'](sqlLogLevel,_0x3ea501(0x232))?(_0x45137e='info',logger['info'](_0x10658f,_0x489858)):logger[_0x3ea501(0x1c1)](_0x10658f,_0x489858);_0x5cf3eb['kPosV'](writeToFileLog,{..._0x10658f,'level':_0x45137e,'msg':_0x489858,'time':new Date()['toISOString']()},_0x45137e);},logTransaction=(_0x2e69da,_0x128d8d)=>{const _0x482c25=a0_0x3cd68b,_0xaff238={'yFKnC':function(_0xb38885,_0x31c35e,_0x550204){return _0xb38885(_0x31c35e,_0x550204);},'cmfUw':_0x482c25(0x1c1)},_0xdc6e6b={'event':_0x482c25(0x1fd),'status':_0x2e69da,'queryCount':_0x128d8d},_0x19ca80='Transaction\x20'+_0x2e69da;logger[_0x482c25(0x1c1)](_0xdc6e6b,_0x19ca80),_0xaff238[_0x482c25(0x221)](writeToFileLog,{..._0xdc6e6b,'level':_0xaff238['cmfUw'],'msg':_0x19ca80,'time':new Date()[_0x482c25(0x214)]()},_0x482c25(0x1c1));},redactObject=_0x297575=>{const _0x2e4e5c=a0_0x3cd68b,_0x4b9c20={'KurCn':_0x2e4e5c(0x210),'gWVrd':'password','ipepy':_0x2e4e5c(0x1fa),'fSptg':_0x2e4e5c(0x203),'NUgkM':'apikey','ntngC':_0x2e4e5c(0x1e5),'NJjsB':'credit_card','kGjRF':_0x2e4e5c(0x1aa),'moGey':'ssn','yVgjw':'access_token','NvrTM':function(_0x277d1d,_0x741f65){return _0x277d1d===_0x741f65;},'xFheA':function(_0x55741b,_0x31a675){return _0x55741b(_0x31a675);}};if(!_0x297575||typeof _0x297575!==_0x4b9c20['KurCn'])return _0x297575;const _0x102d0b=[_0x4b9c20['gWVrd'],_0x2e4e5c(0x1cd),'pwd',_0x4b9c20['ipepy'],_0x4b9c20['fSptg'],_0x4b9c20[_0x2e4e5c(0x1c3)],'api_key',_0x2e4e5c(0x257),_0x4b9c20[_0x2e4e5c(0x22b)],_0x4b9c20[_0x2e4e5c(0x211)],_0x4b9c20[_0x2e4e5c(0x1b9)],_0x4b9c20['moGey'],'pin',_0x2e4e5c(0x231),'privatekey',_0x2e4e5c(0x201),_0x4b9c20['yVgjw']],_0x581397=Array['isArray'](_0x297575)?[..._0x297575]:{..._0x297575};for(const _0x33ea9 of Object[_0x2e4e5c(0x244)](_0x581397)){const _0x1dad2f=_0x33ea9['toLowerCase']();if(_0x102d0b[_0x2e4e5c(0x24b)](_0x3755c3=>_0x1dad2f[_0x2e4e5c(0x1ea)](_0x3755c3)))_0x581397[_0x33ea9]=_0x2e4e5c(0x1b0);else _0x4b9c20['NvrTM'](typeof _0x581397[_0x33ea9],_0x4b9c20[_0x2e4e5c(0x1f3)])&&_0x581397[_0x33ea9]!==null&&(_0x581397[_0x33ea9]=_0x4b9c20[_0x2e4e5c(0x1cc)](redactObject,_0x581397[_0x33ea9]));}return _0x581397;},logError=(_0x5e5900,_0xd4c74f={},_0x46ec67=null)=>{const _0x1f398b=a0_0x3cd68b,_0x347259={'jBcEY':'Error','hsnyu':'error'},_0x15a068={'event':'error','errorName':_0x5e5900[_0x1f398b(0x235)]||_0x347259['jBcEY'],'errorMessage':_0x5e5900['message'],'errorCode':_0x5e5900[_0x1f398b(0x223)]||null,'stack':_0x5e5900['stack'],..._0xd4c74f},_0x7d9bbe=_0x46ec67||'Error:\x20'+_0x5e5900[_0x1f398b(0x227)];logger[_0x1f398b(0x1c8)](_0x15a068,_0x7d9bbe),writeToFileLog({..._0x15a068,'level':_0x347259[_0x1f398b(0x20d)],'msg':_0x7d9bbe,'time':new Date()[_0x1f398b(0x214)]()},'error');},logFatalError=(_0x58f17e,_0x1c85f1={},_0x1d0e6e=null)=>{const _0x436615=a0_0x3cd68b,_0x34a261={'VYoGR':'fatal_error','KLWwe':'Error','OFsoD':'CRITICAL','RzuNk':function(_0x1728d6,_0x28a38a,_0x3ceeeb){return _0x1728d6(_0x28a38a,_0x3ceeeb);},'mmGQQ':_0x436615(0x1af)},_0x143da2={'event':_0x34a261[_0x436615(0x24a)],'errorName':_0x58f17e['name']||_0x34a261[_0x436615(0x260)],'errorMessage':_0x58f17e['message'],'errorCode':_0x58f17e['code']||null,'stack':_0x58f17e['stack'],'severity':_0x34a261['OFsoD'],..._0x1c85f1},_0x28d3de=_0x1d0e6e||_0x436615(0x1e1)+_0x58f17e[_0x436615(0x227)];logger['fatal'](_0x143da2,_0x28d3de),_0x34a261['RzuNk'](writeToFileLog,{..._0x143da2,'level':_0x34a261['mmGQQ'],'msg':_0x28d3de,'time':new Date()['toISOString']()},_0x436615(0x1c8));},logHttpError=(_0xc44db4,_0xbb0b,_0x717f6d={})=>{const _0x3c3d9a=a0_0x3cd68b,_0x7e3096={'HxSXD':_0x3c3d9a(0x1e8),'dnqcB':function(_0x5a1b37,_0x3d390f){return _0x5a1b37(_0x3d390f);},'uXZcy':function(_0x2d2e1d,_0xdab222,_0x228f7a){return _0x2d2e1d(_0xdab222,_0x228f7a);},'smxsL':function(_0x56f30b,_0x41a8a4){return _0x56f30b>=_0x41a8a4;},'vNOst':'error','fpMhk':'warn'},_0x20ea2e={'event':'http_error','errorName':_0xc44db4['name']||_0x7e3096['HxSXD'],'errorMessage':_0xc44db4[_0x3c3d9a(0x227)],'errorCode':_0xc44db4['code']||_0xc44db4[_0x3c3d9a(0x1bd)]||0x1f4,'stack':_0xc44db4[_0x3c3d9a(0x1df)],'method':_0xbb0b?.['method'],'url':_0xbb0b?.['url']||_0xbb0b?.['originalUrl'],'path':_0xbb0b?.[_0x3c3d9a(0x1e9)],'ip':_0xbb0b?.['ip']||_0xbb0b?.['connection']?.[_0x3c3d9a(0x1d2)],'userAgent':_0xbb0b?.['get']?.('user-agent'),'requestId':_0xbb0b?.['id']||_0xbb0b?.['headers']?.[_0x3c3d9a(0x206)],'body':_0xbb0b?.[_0x3c3d9a(0x1dd)]?_0x7e3096['dnqcB'](redactObject,_0xbb0b['body']):undefined,'query':_0xbb0b?.[_0x3c3d9a(0x1ac)],..._0x717f6d},_0x2423f4=_0xc44db4[_0x3c3d9a(0x1bd)]||_0xc44db4[_0x3c3d9a(0x1db)]||0x1f4,_0x22f8f7=_0x3c3d9a(0x209)+_0x2423f4+':\x20'+_0xc44db4['message'];_0x2423f4>=0x1f4?logger['error'](_0x20ea2e,_0x22f8f7):logger['warn'](_0x20ea2e,_0x22f8f7),_0x7e3096['uXZcy'](writeToFileLog,{..._0x20ea2e,'level':_0x7e3096['smxsL'](_0x2423f4,0x1f4)?_0x7e3096['vNOst']:_0x3c3d9a(0x1ef),'msg':_0x22f8f7,'time':new Date()[_0x3c3d9a(0x214)]()},_0x7e3096['smxsL'](_0x2423f4,0x1f4)?_0x7e3096['vNOst']:_0x7e3096['fpMhk']);},logUncaughtError=(_0x476892,_0x320b5b)=>{const _0x3242f3=a0_0x3cd68b,_0x13348d={'FjISY':function(_0x567067,_0x36df84){return _0x567067(_0x36df84);},'UZWWD':_0x3242f3(0x225),'kiSnF':function(_0x44af78,_0x2210da,_0x44e83b){return _0x44af78(_0x2210da,_0x44e83b);},'jrHMm':'fatal','dCItm':_0x3242f3(0x1c8)},_0x13389a={'event':_0x476892,'errorName':_0x320b5b?.[_0x3242f3(0x235)]||'Error','errorMessage':_0x320b5b?.[_0x3242f3(0x227)]||_0x13348d['FjISY'](String,_0x320b5b),'errorCode':_0x320b5b?.[_0x3242f3(0x223)]||null,'stack':_0x320b5b?.['stack'],'severity':_0x13348d['UZWWD'],'processId':process[_0x3242f3(0x1ed)],'memoryUsage':process['memoryUsage'](),'uptime':process['uptime']()},_0x1279dd='['+_0x476892[_0x3242f3(0x205)]()+']\x20'+(_0x320b5b?.[_0x3242f3(0x227)]||_0x320b5b);logger[_0x3242f3(0x1af)](_0x13389a,_0x1279dd),_0x13348d['kiSnF'](writeToFileLog,{..._0x13389a,'level':_0x13348d['jrHMm'],'msg':_0x1279dd,'time':new Date()['toISOString']()},_0x13348d['dCItm']);},setupGlobalErrorHandlers=()=>{const _0x4d0f56=a0_0x3cd68b,_0x94afc0={'AZlmn':'uncaughtException','vUPWU':function(_0x4fcc2b,_0x16e8ac,_0x5d52ee){return _0x4fcc2b(_0x16e8ac,_0x5d52ee);},'okqkP':function(_0x5cde78,_0x1760ef){return _0x5cde78 instanceof _0x1760ef;},'eGTSJ':function(_0x1e6164,_0x2afa26){return _0x1e6164(_0x2afa26);},'ZDgFI':'unhandledRejection','dTcdS':'warning','otvxr':'global_error_handlers_setup'};process['on']('uncaughtException',_0x437803=>{const _0x3135ac=a0_0x451c;logUncaughtError(_0x94afc0[_0x3135ac(0x241)],_0x437803),_0x94afc0[_0x3135ac(0x25a)](setTimeout,()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x94afc0['ZDgFI'],(_0x397889,_0x2a60cc)=>{const _0x5d19ec=a0_0x451c,_0x2528c6=_0x94afc0['okqkP'](_0x397889,Error)?_0x397889:new Error(_0x94afc0['eGTSJ'](String,_0x397889));logUncaughtError(_0x5d19ec(0x23c),_0x2528c6);}),process['on'](_0x94afc0['dTcdS'],_0x45c477=>{const _0x4e4ec7=a0_0x451c;logger['warn']({'event':_0x4e4ec7(0x20f),'name':_0x45c477[_0x4e4ec7(0x235)],'message':_0x45c477[_0x4e4ec7(0x227)],'stack':_0x45c477['stack']},'Process\x20Warning:\x20'+_0x45c477[_0x4e4ec7(0x227)]);});const _0x59c348={'event':_0x94afc0['otvxr']},_0x350634='Global\x20error\x20handlers\x20initialized';logger[_0x4d0f56(0x232)](_0x59c348,_0x350634),writeToFileLog({..._0x59c348,'level':'info','msg':_0x350634,'time':new Date()['toISOString']()},_0x4d0f56(0x232));},createErrorHandlerMiddleware=()=>{const _0x11bccb={'evlhT':'x-request-id'};return(_0x14b17f,_0x121691,_0x24745c,_0x332587)=>{const _0x1138d8=a0_0x451c;logHttpError(_0x14b17f,_0x121691);const _0x4afd10=_0x14b17f[_0x1138d8(0x1bd)]||_0x14b17f['status']||0x1f4;_0x24745c[_0x1138d8(0x1db)](_0x4afd10)[_0x1138d8(0x23e)]({'success':![],'error':_0x4afd10>=0x1f4?_0x1138d8(0x1a9):_0x14b17f['message'],'requestId':_0x121691['id']||_0x121691[_0x1138d8(0x213)]?.[_0x11bccb['evlhT']]||null});};};module[a0_0x3cd68b(0x1f6)]={'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_0x257325=a0_0x209b;(function(_0x24fa6c,_0x140019){const _0x110522=a0_0x209b,_0x2fcbc9=_0x24fa6c();while(!![]){try{const _0x58f195=parseInt(_0x110522(0x1bd))/0x1*(-parseInt(_0x110522(0x127))/0x2)+parseInt(_0x110522(0x12e))/0x3+-parseInt(_0x110522(0x197))/0x4+-parseInt(_0x110522(0x16b))/0x5*(parseInt(_0x110522(0x13b))/0x6)+-parseInt(_0x110522(0x1ad))/0x7+parseInt(_0x110522(0x1ab))/0x8+parseInt(_0x110522(0x1b4))/0x9;if(_0x58f195===_0x140019)break;else _0x2fcbc9['push'](_0x2fcbc9['shift']());}catch(_0x34f4c1){_0x2fcbc9['push'](_0x2fcbc9['shift']());}}}(a0_0x1e14,0xf1d66));const pino=require(a0_0x257325(0x11e)),fs=require('fs'),path=require(a0_0x257325(0x1cf));let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel=a0_0x257325(0x1b5),sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x209b(_0x6c6a11,_0x4ba28e){_0x6c6a11=_0x6c6a11-0x11e;const _0x1e1488=a0_0x1e14();let _0x209b59=_0x1e1488[_0x6c6a11];if(a0_0x209b['nAffaz']===undefined){var _0x2d3da1=function(_0x38f02b){const _0x3f050a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x111720='',_0x29fb9b='';for(let _0x4451ad=0x0,_0x1892bb,_0x65ec5b,_0x43709e=0x0;_0x65ec5b=_0x38f02b['charAt'](_0x43709e++);~_0x65ec5b&&(_0x1892bb=_0x4451ad%0x4?_0x1892bb*0x40+_0x65ec5b:_0x65ec5b,_0x4451ad++%0x4)?_0x111720+=String['fromCharCode'](0xff&_0x1892bb>>(-0x2*_0x4451ad&0x6)):0x0){_0x65ec5b=_0x3f050a['indexOf'](_0x65ec5b);}for(let _0x35994a=0x0,_0x672fd3=_0x111720['length'];_0x35994a<_0x672fd3;_0x35994a++){_0x29fb9b+='%'+('00'+_0x111720['charCodeAt'](_0x35994a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29fb9b);};a0_0x209b['apTZIa']=_0x2d3da1,a0_0x209b['bfHLCD']={},a0_0x209b['nAffaz']=!![];}const _0x42f4d6=_0x1e1488[0x0],_0x4da024=_0x6c6a11+_0x42f4d6,_0x3f29cc=a0_0x209b['bfHLCD'][_0x4da024];return!_0x3f29cc?(_0x209b59=a0_0x209b['apTZIa'](_0x209b59),a0_0x209b['bfHLCD'][_0x4da024]=_0x209b59):_0x209b59=_0x3f29cc,_0x209b59;}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':'{msg}','customColors':a0_0x257325(0x15c),'hideObject':!![]},isDevelopment=process['env'][a0_0x257325(0x164)]!=='production',logLevel=process[a0_0x257325(0x18f)][a0_0x257325(0x1c7)]||'info';function a0_0x1e14(){const _0x5b0bac=['BxmP','Cg9YDa','yxbPA2v5','mtu2mZLIDfPsCwW','uLHpuhq','rgf0ywjHC2u6ia','ic0G','Dg9Rzw4','Dw5JyxvNAhrfEgnLChrPB24','tM9Kzs5QCW','y29UBMvJDgLVBG','D2fYBG','Ew9AB0u','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','y2HPBgq','rermx0rst1a','nJznBxLREwq','BwvZC2fNzq','C3rHDhvZq29Kzq','tvjHs1i','ENLcs04','Dhj1zq','B2H2DMO','C2vYDMvYx3n0yxj0Aw5N','zfzXBxi','BwfW','yLbYuKm','wezTwKq','CgLK','zxHPDa','zfb2Axu','B0Dbt1G','DxjS','zxHWB3j0CW','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','uhHzvLm','vfjbtLnbq1rjt05Fq09ntuLu','zgv2zwXVCg1LBNq','DhjPBq','rKfuquW6ia','w09lxsbqCM9Qzwn0igXVywrLzdOG','vMLwvMu','DhLWzq','C2vftuG','Ahr0Cf9LCNjVCG','qu9kDhq','w1jfrefdvevexq','Ahr0Cf9Yzxf1zxn0','q1jjveLdquW','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','zw52AxjVBM1LBNq','B2jQzwn0','yxbPs2v5','y3z2','revuDuC','zgjFCxvLCNK','ve9uu2G','tK9erv9ftLy','BwvTB3j5vxnHz2u','DgvZDa','Ec1Yzxf1zxn0lwLK','Dg9ju09tDhjPBMC','AxPuCeu','Ag9ZDa','ntyWnZuWEevSqKvf','revmrvrf','w1jfrefdveveoMHHC2HD','CgLU','yxDADeC','uefNEei','z2v0','Bwf4','y3jLzgL0x2nHCMq','CMvWzwf0','BhjTwfq','qNDQwem','uhjVy2vZCYbxyxjUAw5NoIa','sMrnAhq','CgfYyw1Z','sfruuca','y29UzMLNrMLSzq','zhvYyxrPB25nCW','zgf0ywjHC2u','Bwf0y2G','AgvHBhrOq2HLy2S','tuTKAwq','CxvLCNK','ChDK','iokvKqRILzeGiefqssblzxKGicaGidOG','C29Tzq','AM9PBG','Aw5MBW','q05oqM0','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','vhjHBNnHy3rPB24G','vvbeqvrf','CMvZDgzVCMDL','CeHdD2q','C2vYDMLJzuLUzM8','C3rHDhvZ','zw52','C3fSx3f1zxj5','CgfKrw5K','z2HpzMi','Dxb0Aw1L','Dg9gAxHLza','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','reDrEwK','mZm1odi4ohnKwhD1BG','rermx0fmvevs','wxvsqK0','y29Kzq','DfHtEKK','y3jLzgL0y2fYza','yM9KEq','B0vuA2i','Bg9N','uhLIAwO','CM93C0fMzMvJDgvK','D2fWBgi','AK54t1a','AvfRrwy','B0DeqNC','CMvZB2X2zq','sLL2y1C','tI9b','tMjrDw0','zxjYB3i','mtqYmtq4mdbWCwH5t0G','Bwv0Ag9K','nZG1ode1ogPYvxPdtG','zMLSzv9SB2DNAw5Nx2vUywjSzwq','AgvHzgvYCW','z1vpyvm','vu5ltK9xtG','yMfZzvvYBa','C3rYAw5N','mJK3mdq2mdHTvg1xyNy','zgvIDwC','qunusvzf','EhD6z1y','yxbWlMXVzW','ywnJzxnZx3rVA2vU','yxbPx2TLEq','CgfZC3DK','C3rHCNrZv2L0Aa','m3zSBhveBG','Cg9ZDgDYzxnXBa','zw1Twxu','C2vYDMvYx3jLywr5','tK9uiefdveLwrq','Dw5Oyw5KBgvKuMvQzwn0Aw9U','BMfTzq','u2fiB0G','Cxr0DLO','iokvKqRILzeGienVBMzPzYaGicaGidOG','te9hx0XfvKvm','C3rHy2S','rfjpua','zgvMyxvSDa','BgvUz3rO','zMf0ywW','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','D3jPDgu','Cgf0Aa','C3rKu2vYAwfSAxPLCNm','qxnry20','quXurvi','CgLUBW','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','rxjYB3i','te9hx0rjuG','lI9SB2DZlW','u1rbuLqGvfjbtLnbq1rjt04','u0vmrunu','CMvMCMvZAf90B2TLBG','Au1XC1a','ntK3ndyYuLjQugPc','u0rYBuW','A09KD08','zgf0ywjHC2vFy29UzMLN'];a0_0x1e14=function(){return _0x5b0bac;};return a0_0x1e14();}let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':a0_0x257325(0x18b),'version':process[a0_0x257325(0x18f)]['APP_VERSION']||'1.0.5','env':process['env'][a0_0x257325(0x164)]||a0_0x257325(0x150)},'timestamp':pino['stdTimeFunctions']['isoTime'],'redact':{'paths':['req.headers.authorization',a0_0x257325(0x1cd),'password',a0_0x257325(0x132),a0_0x257325(0x15f),'DB_PASSWORD','JWT_SECRET'],'censor':a0_0x257325(0x159)},'serializers':{'req':_0x17ab17=>({'id':_0x17ab17['id'],'method':_0x17ab17[a0_0x257325(0x1ac)],'url':_0x17ab17[a0_0x257325(0x14b)],'path':_0x17ab17['path'],'remoteAddress':_0x17ab17['ip']||_0x17ab17['connection']?.['remoteAddress']}),'res':_0x3d9c87=>({'statusCode':_0x3d9c87['statusCode'],'headers':_0x3d9c87['getHeaders']?.()}),'err':pino[a0_0x257325(0x1d0)]['err']}});function initFileLogging(){const _0x59039a=a0_0x257325,_0xb1dc4f={'MKdid':function(_0x2d070d,_0x579ba9){return _0x2d070d===_0x579ba9;},'CNNBm':_0x59039a(0x140),'MRaKR':_0x59039a(0x1ca),'TQAPg':'restforge','seEMH':'debug','awZtG':function(_0x583c26,_0x566663){return _0x583c26!==_0x566663;},'aDuCI':function(_0x2390cb,_0x49c025){return _0x2390cb(_0x49c025);},'XFmZD':'app.log','SaHoH':function(_0x3d2d12,_0x47a661,_0x143a44){return _0x3d2d12(_0x47a661,_0x143a44);}};if(fileLoggingInitialized)return;logToFile=_0xb1dc4f[_0x59039a(0x180)](process['env']['LOG_TO_FILE'],_0xb1dc4f[_0x59039a(0x187)]);const _0x4fd4b7=process[_0x59039a(0x18f)]['RESTFORGE_PROJECT_NAME']||_0xb1dc4f[_0x59039a(0x13e)];logDir=process[_0x59039a(0x18f)][_0x59039a(0x121)]||_0x59039a(0x122)+_0x4fd4b7,serviceName=process[_0x59039a(0x18f)]['SERVICE_NAME']||_0xb1dc4f['TQAPg'],sqlLogEnabled=process['env']['SQL_LOG_ENABLED']==='true',sqlLogLevel=process['env']['SQL_LOG_LEVEL']||_0xb1dc4f[_0x59039a(0x156)],sqlLogParams=_0xb1dc4f[_0x59039a(0x16f)](process[_0x59039a(0x18f)]['SQL_LOG_PARAMS'],'false'),sqlLogSlowThreshold=_0xb1dc4f['aDuCI'](parseInt,process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x13f34f=path[_0x59039a(0x1a6)](process['cwd'](),logDir);try{!fs['existsSync'](_0x13f34f)&&fs['mkdirSync'](_0x13f34f,{'recursive':!![]});}catch(_0x2c188b){console[_0x59039a(0x1aa)]('Failed\x20to\x20create\x20log\x20directory\x20'+_0x13f34f+':',_0x2c188b['message']),fileLoggingInitialized=!![];return;}const _0x160f55=path[_0x59039a(0x185)](_0x13f34f,_0xb1dc4f[_0x59039a(0x146)]),_0x310623=path['join'](_0x13f34f,'error.log');try{appLogStream=fs['createWriteStream'](_0x160f55,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x310623,{'flags':'a'}),fileLoggingInitialized=!![];const _0x9aadb4={'event':_0x59039a(0x1ae),'logDir':_0x13f34f,'files':[_0x59039a(0x1b8),'error.log']},_0x575803='File\x20logging\x20enabled:\x20'+_0x13f34f;logger['info'](_0x9aadb4,_0x575803),_0xb1dc4f[_0x59039a(0x1c4)](writeToFileLog,{..._0x9aadb4,'level':'info','msg':_0x575803,'time':new Date()[_0x59039a(0x168)]()},'info');}catch(_0x29a5af){console[_0x59039a(0x1aa)](_0x59039a(0x188),_0x29a5af[_0x59039a(0x13c)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x383f48,_0x142340){const _0x3fed9b=a0_0x257325,_0x592cec={'oETkb':function(_0x5a367d,_0x44b0b8){return _0x5a367d||_0x44b0b8;},'YVOib':function(_0xcca45d,_0x326104){return _0xcca45d===_0x326104;}};if(_0x592cec[_0x3fed9b(0x19e)](!logToFile,!appLogStream))return;const _0x2cdea1={'service':serviceName,..._0x383f48},_0x1469e6=JSON['stringify'](_0x2cdea1)+'\x0a';appLogStream[_0x3fed9b(0x1ce)](_0x1469e6),(_0x142340===_0x3fed9b(0x1aa)||_0x592cec['YVOib'](_0x142340,'fatal'))&&(errorLogStream&&errorLogStream[_0x3fed9b(0x1ce)](_0x1469e6));}const createRequestLogger=(_0x3a2381={})=>{const _0x5dc750=a0_0x257325;return logger[_0x5dc750(0x139)](_0x3a2381);},logServerStart=_0x28531d=>{const _0x43ce80=a0_0x257325,_0x28c64a={'kOdwO':function(_0x346c05,_0x5a31f0){return _0x346c05-_0x5a31f0;},'ViVVe':function(_0x2c48bf,_0x4305e8){return _0x2c48bf/_0x4305e8;},'tXSzI':_0x43ce80(0x1a8),'DGQyi':function(_0x3207ec,_0x554dbc){return _0x3207ec(_0x554dbc);},'vwBcJ':'Default','ghOfb':_0x43ce80(0x1c1),'waplb':_0x43ce80(0x142)},_0x39383f=_0x43ce80(0x195),_0x190b0d=Math[_0x43ce80(0x172)](0x0,_0x28c64a[_0x43ce80(0x129)](0x37,_0x39383f[_0x43ce80(0x1cb)])),_0x5dc53f=Math['floor'](_0x28c64a[_0x43ce80(0x154)](_0x190b0d,0x2)),_0x5eb452=_0x28c64a[_0x43ce80(0x129)](_0x190b0d,_0x5dc53f),_0x5ccf85='║'+'\x20'['repeat'](_0x5dc53f)+_0x39383f+'\x20'[_0x43ce80(0x174)](_0x5eb452)+'║',_0x58ff04=_0x43ce80(0x138)+_0x5ccf85+'\x0a╠═══════════════════════════════════════════════════════╣\x0a║\x20\x20Environment\x20:\x20'+(_0x28531d[_0x43ce80(0x15d)]||_0x43ce80(0x134))['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x28531d['project']||_0x28c64a[_0x43ce80(0x19b)])['padEnd'](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+_0x28c64a[_0x43ce80(0x196)](String,_0x28531d['port']||0xbb8)['padEnd'](0x26)+_0x43ce80(0x1c6)+(_0x28531d[_0x43ce80(0x17b)]||_0x28c64a['vwBcJ'])[_0x43ce80(0x191)](0x26)+_0x43ce80(0x183)+(_0x28531d['apiKey']?_0x43ce80(0x1b6):_0x28c64a[_0x43ce80(0x192)])['padEnd'](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x43ce80(0x19f)](_0x58ff04);const _0x30eef0={'event':_0x28c64a[_0x43ce80(0x1a2)],'project':_0x28531d['project'],'port':_0x28531d[_0x43ce80(0x12c)],'config':_0x28531d[_0x43ce80(0x17b)],'apiKeyEnabled':!!_0x28531d['apiKey']};logger[_0x43ce80(0x186)](_0x30eef0),writeToFileLog({..._0x30eef0,'level':'info','msg':'Server\x20starting:\x20'+_0x28531d['project']+'\x20on\x20port\x20'+_0x28531d['port'],'time':new Date()['toISOString']()},_0x43ce80(0x186));},logServerReady=_0x54e8e2=>{const _0x2169a2=a0_0x257325,_0x594570={'kgDZg':_0x2169a2(0x1c0),'CAAqW':'info'},_0x433376={'event':_0x594570['kgDZg'],'port':_0x54e8e2[_0x2169a2(0x12c)],'module':_0x54e8e2['module'],'healthCheck':_0x54e8e2['healthCheck'],'serviceInfo':_0x54e8e2['serviceInfo'],'baseUrl':_0x54e8e2[_0x2169a2(0x1b2)]},_0xb48da='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x54e8e2[_0x2169a2(0x12c)];logger['info'](_0x433376,_0xb48da),writeToFileLog({..._0x433376,'level':'info','msg':_0xb48da,'time':new Date()[_0x2169a2(0x168)]()},_0x594570['CAAqW']),_0x54e8e2['healthCheck']&&logger[_0x2169a2(0x186)]('\x20\x20Health:\x20'+_0x54e8e2[_0x2169a2(0x17f)]),_0x54e8e2[_0x2169a2(0x18d)]&&logger['info']('\x20\x20Info:\x20\x20\x20'+_0x54e8e2[_0x2169a2(0x18d)]),_0x54e8e2['baseUrl']&&logger['info']('\x20\x20URL:\x20\x20\x20\x20'+_0x54e8e2[_0x2169a2(0x1b2)]);},logProjectLoaded=(_0x3f4669,_0x53b979)=>{const _0x290f80=a0_0x257325,_0x21861d={'event':'project_loaded','project':_0x3f4669,'path':_0x53b979},_0x3a9aa3=_0x290f80(0x153)+_0x3f4669;logger['info'](_0x21861d,_0x3a9aa3),writeToFileLog({..._0x21861d,'level':_0x290f80(0x186),'msg':_0x3a9aa3,'time':new Date()['toISOString']()},_0x290f80(0x186));},logEndpointRegistered=(_0x1d8e34,_0x76c9dc)=>{const _0x7c61e0=a0_0x257325,_0x431ec3={'YuRBM':'debug'},_0x507ec0={'event':'endpoint_registered','endpoint':_0x1d8e34,'route':_0x76c9dc},_0x2a03e5='\x20\x20→\x20'+_0x1d8e34+':\x20'+_0x76c9dc;logger['debug'](_0x507ec0,_0x2a03e5),writeToFileLog({..._0x507ec0,'level':_0x431ec3['YuRBM'],'msg':_0x2a03e5,'time':new Date()['toISOString']()},_0x431ec3[_0x7c61e0(0x199)]);},logDatabaseConfig=_0x5039e0=>{const _0x3f0ca7=a0_0x257325,_0x4ebefe={'zyBKN':_0x3f0ca7(0x12a),'Wrwez':function(_0x2eda9d,_0x5cfddc,_0x3ba572){return _0x2eda9d(_0x5cfddc,_0x3ba572);},'dVqmr':'debug'},_0x7400cf={'event':_0x4ebefe[_0x3f0ca7(0x13f)],'host':_0x5039e0[_0x3f0ca7(0x16a)],'port':_0x5039e0['port'],'database':_0x5039e0[_0x3f0ca7(0x17d)],'type':_0x5039e0[_0x3f0ca7(0x155)],'user':_0x5039e0['user']},_0x511d9b=_0x3f0ca7(0x130)+_0x5039e0['type']+'://'+_0x5039e0['host']+':'+_0x5039e0['port']+'/'+_0x5039e0['database'];logger[_0x3f0ca7(0x1b5)](_0x7400cf,_0x511d9b),_0x4ebefe['Wrwez'](writeToFileLog,{..._0x7400cf,'level':_0x4ebefe[_0x3f0ca7(0x143)],'msg':_0x511d9b,'time':new Date()[_0x3f0ca7(0x168)]()},_0x3f0ca7(0x1b5));},logRequest=(_0x37e379,_0x21789f,_0xe374d3)=>{const _0x5e3a1f=a0_0x257325,_0x11188a={'PAgxB':function(_0x515e9a,_0x417f27,_0x3bbfc4){return _0x515e9a(_0x417f27,_0x3bbfc4);}},_0x516cdd={'event':_0x5e3a1f(0x15a),'method':_0x37e379['method'],'path':_0x37e379[_0x5e3a1f(0x1cf)],'statusCode':_0x21789f['statusCode'],'durationMs':_0xe374d3,'ip':_0x37e379['ip']},_0x410c8d=_0x37e379['method']+'\x20'+_0x37e379[_0x5e3a1f(0x1cf)]+_0x5e3a1f(0x131)+_0x21789f[_0x5e3a1f(0x13d)]+'\x20('+_0xe374d3+_0x5e3a1f(0x12b);let _0xa26ec0=_0x5e3a1f(0x186);if(_0x21789f[_0x5e3a1f(0x13d)]>=0x1f4)_0xa26ec0=_0x5e3a1f(0x1aa),logger['error'](_0x516cdd,_0x410c8d);else _0x21789f[_0x5e3a1f(0x13d)]>=0x190?(_0xa26ec0=_0x5e3a1f(0x136),logger[_0x5e3a1f(0x136)](_0x516cdd,_0x410c8d)):logger[_0x5e3a1f(0x186)](_0x516cdd,_0x410c8d);_0x11188a[_0x5e3a1f(0x170)](writeToFileLog,{..._0x516cdd,'level':_0xa26ec0,'msg':_0x410c8d,'time':new Date()['toISOString']()},_0xa26ec0);},SENSITIVE_PARAM_PATTERNS=['password',a0_0x257325(0x1bb),a0_0x257325(0x182),a0_0x257325(0x132),'access_token',a0_0x257325(0x125),'secret','api_secret','apikey','api_key','credential','credentials',a0_0x257325(0x16e),'otp','private_key','privatekey'],redactSensitiveParams=(_0x2813cf,_0x491a18)=>{const _0x17ee93=a0_0x257325,_0x2230f9={'AsQcm':_0x17ee93(0x159),'AwlEo':function(_0x4cb808,_0x3f3d6e){return _0x4cb808===_0x3f3d6e;},'kcNlK':_0x17ee93(0x1b3),'uMKVq':'[REDACTED:token]'};if(!_0x2813cf||_0x2813cf[_0x17ee93(0x1cb)]===0x0)return _0x2813cf;const _0x5a2941=_0x491a18['toLowerCase'](),_0x2f3344=_0x5a2941[_0x17ee93(0x17e)](/\(([^)]+)\)\s*values/i);let _0x43495e=[];_0x2f3344&&(_0x43495e=_0x2f3344[0x1]['split'](',')[_0x17ee93(0x144)](_0x116901=>_0x116901['trim']()['toLowerCase']()));const _0x482002=_0x5a2941['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x482002){const _0x530c66=_0x482002[0x1],_0x57b4ac=_0x530c66['match'](/(\w+)\s*=/g);_0x57b4ac&&(_0x43495e=_0x57b4ac['map'](_0x256d05=>_0x256d05['replace'](/\s*=/,'')[_0x17ee93(0x151)]()['toLowerCase']()));}return _0x2813cf[_0x17ee93(0x144)]((_0x783cc5,_0x2ea8fc)=>{const _0x101fb5=_0x17ee93;if(_0x43495e[_0x2ea8fc]){const _0x2ee924=_0x43495e[_0x2ea8fc],_0x29fb9c=SENSITIVE_PARAM_PATTERNS[_0x101fb5(0x184)](_0x1ffdd7=>_0x2ee924['includes'](_0x1ffdd7));if(_0x29fb9c)return _0x2230f9[_0x101fb5(0x1d1)];}if(_0x2230f9['AwlEo'](typeof _0x783cc5,_0x2230f9['kcNlK'])&&_0x783cc5[_0x101fb5(0x1cb)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x101fb5(0x166)](_0x783cc5)&&_0x783cc5['includes']('.'))return _0x2230f9['uMKVq'];if(/^[a-fA-F0-9]{32,}$/['test'](_0x783cc5))return _0x101fb5(0x16d);}return _0x783cc5;});},parseQueryMetadata=_0x13ab42=>{const _0x46d17d=a0_0x257325,_0x18d866={'OQbRU':_0x46d17d(0x124),'emmYu':'INSERT','ZgoAK':'DELETE','ohvvj':'BEGIN','SDrmL':'COMMIT','fuECP':'ROLLBACK','xwzgV':'TRANSACTION_ROLLBACK'},_0x498a00=_0x13ab42['trim'](),_0x3755b2=_0x498a00['toUpperCase']();let _0x3e46a1=_0x46d17d(0x1b1),_0x5d614e=null;if(_0x3755b2[_0x46d17d(0x1bc)](_0x18d866['OQbRU'])){_0x3e46a1=_0x46d17d(0x124);const _0x309fa6=_0x498a00[_0x46d17d(0x17e)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5d614e=_0x309fa6?_0x309fa6[0x1]:null;}else{if(_0x3755b2[_0x46d17d(0x1bc)](_0x18d866[_0x46d17d(0x1bf)])){_0x3e46a1=_0x18d866['emmYu'];const _0x1f7d72=_0x498a00['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5d614e=_0x1f7d72?_0x1f7d72[0x1]:null;}else{if(_0x3755b2['startsWith']('UPDATE')){_0x3e46a1=_0x46d17d(0x18a);const _0x38c345=_0x498a00['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5d614e=_0x38c345?_0x38c345[0x1]:null;}else{if(_0x3755b2['startsWith'](_0x18d866['ZgoAK'])){_0x3e46a1=_0x46d17d(0x16c);const _0x4bd238=_0x498a00[_0x46d17d(0x17e)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5d614e=_0x4bd238?_0x4bd238[0x1]:null;}else{if(_0x3755b2['startsWith'](_0x18d866[_0x46d17d(0x141)])||_0x3755b2['startsWith'](_0x46d17d(0x123)))_0x3e46a1='TRANSACTION_BEGIN';else{if(_0x3755b2[_0x46d17d(0x1bc)](_0x18d866[_0x46d17d(0x128)]))_0x3e46a1=_0x46d17d(0x14f);else{if(_0x3755b2[_0x46d17d(0x1bc)](_0x18d866['fuECP']))_0x3e46a1=_0x18d866[_0x46d17d(0x1b7)];else{if(_0x3755b2[_0x46d17d(0x1bc)]('CREATE'))_0x3e46a1='DDL_CREATE';else{if(_0x3755b2['startsWith'](_0x46d17d(0x1d2)))_0x3e46a1=_0x46d17d(0x198);else _0x3755b2[_0x46d17d(0x1bc)](_0x46d17d(0x1c9))&&(_0x3e46a1=_0x46d17d(0x13a));}}}}}}}}return{'type':_0x3e46a1,'table':_0x5d614e};},startQueryTimer=()=>{const _0x44816c={'RXOPt':function(_0x21346f,_0x2be673){return _0x21346f/_0x2be673;}},_0x5c3771=process['hrtime']();return()=>{const _0x43c2ef=a0_0x209b,[_0x39f84f,_0x181ef0]=process['hrtime'](_0x5c3771);return parseFloat((_0x39f84f*0x3e8+_0x44816c[_0x43c2ef(0x12f)](_0x181ef0,0xf4240))[_0x43c2ef(0x194)](0x2));};},logQuery=(_0x39f91f,_0xe16c7a=[],_0x3eca11={})=>{const _0x1f36db=a0_0x257325,_0x2502f8={'DzGHq':'DB\x20Query','iMqsP':_0x1f36db(0x190),'hNVaQ':function(_0x2c6e42,_0x58bbe0,_0x112df3){return _0x2c6e42(_0x58bbe0,_0x112df3);},'cXqYs':function(_0x4b4be6,_0x298db9){return _0x4b4be6!==_0x298db9;},'izTpE':'unknown','oGAOX':function(_0x235266,_0x1f9eb3){return _0x235266!==_0x1f9eb3;},'dPviu':function(_0x1f9299,_0x281891){return _0x1f9299>_0x281891;},'JdMht':function(_0x3311c8,_0x548f3f,_0x34847b){return _0x3311c8(_0x548f3f,_0x34847b);}};if(!sqlLogEnabled){logger[_0x1f36db(0x1b5)]({'event':_0x1f36db(0x162),'query':_0x39f91f['substring'](0x0,0xc8),'paramCount':_0xe16c7a['length']},_0x2502f8['DzGHq']);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x1f36db(0x1be)}=_0x3eca11,{type:_0x2c384c,table:_0x3c69ee}=parseQueryMetadata(_0x39f91f),_0x10b266={'event':_0x2502f8[_0x1f36db(0x126)],'queryType':_0x2c384c,'table':_0x3c69ee,'query':_0x39f91f,'paramCount':_0xe16c7a[_0x1f36db(0x1cb)],'dbType':dbType};sqlLogParams&&_0xe16c7a[_0x1f36db(0x1cb)]>0x0&&(_0x10b266[_0x1f36db(0x179)]=_0x2502f8['hNVaQ'](redactSensitiveParams,_0xe16c7a,_0x39f91f));_0x2502f8['cXqYs'](duration,null)&&(_0x10b266[_0x1f36db(0x17c)]=duration,_0x10b266['isSlow']=duration>sqlLogSlowThreshold);rowsAffected!==null&&(_0x10b266[_0x1f36db(0x1a1)]=rowsAffected);const _0x25b1b1=_0x3c69ee||_0x2502f8[_0x1f36db(0x169)];let _0x3ddc97='['+_0x2c384c+']\x20'+_0x25b1b1;_0x2502f8[_0x1f36db(0x14a)](duration,null)&&(_0x3ddc97+='\x20('+duration+_0x1f36db(0x12b));const _0x550db3=_0x2502f8['cXqYs'](duration,null)&&_0x2502f8[_0x1f36db(0x149)](duration,sqlLogSlowThreshold);let _0x55462f=_0x1f36db(0x1b5);if(_0x550db3)_0x3ddc97+='\x20[SLOW]',_0x55462f=_0x1f36db(0x136),logger['warn'](_0x10b266,_0x3ddc97);else sqlLogLevel==='info'?(_0x55462f=_0x1f36db(0x186),logger['info'](_0x10b266,_0x3ddc97)):logger['debug'](_0x10b266,_0x3ddc97);_0x2502f8[_0x1f36db(0x178)](writeToFileLog,{..._0x10b266,'level':_0x55462f,'msg':_0x3ddc97,'time':new Date()[_0x1f36db(0x168)]()},_0x55462f);},logTransaction=(_0x553420,_0x2ccc6b)=>{const _0x3e549b=a0_0x257325,_0x544b30={'bPrRC':'db_transaction','zCTHy':function(_0x5e7f56,_0x2c5763,_0x46d00b){return _0x5e7f56(_0x2c5763,_0x46d00b);},'RSGwT':_0x3e549b(0x1b5)},_0x342040={'event':_0x544b30[_0x3e549b(0x145)],'status':_0x553420,'queryCount':_0x2ccc6b},_0x412e73=_0x3e549b(0x189)+_0x553420;logger['debug'](_0x342040,_0x412e73),_0x544b30['zCTHy'](writeToFileLog,{..._0x342040,'level':_0x544b30['RSGwT'],'msg':_0x412e73,'time':new Date()['toISOString']()},_0x3e549b(0x1b5));},redactObject=_0x5bf7a1=>{const _0x38413e=a0_0x257325,_0x24266d={'ehXjs':function(_0xa58a67,_0x18f076){return _0xa58a67!==_0x18f076;},'lCtoS':_0x38413e(0x15e),'qttvZ':'passwd','EXPLZ':_0x38413e(0x182),'JYvcW':'token','yoZoE':'secret','cPnDO':_0x38413e(0x19c),'lrmXT':_0x38413e(0x173),'ayTdn':_0x38413e(0x160),'jNxOP':'ssn','MGCAV':_0x38413e(0x16e),'lkdlY':'private_key','SLKCH':_0x38413e(0x125),'BwjXC':_0x38413e(0x1b9),'iQkEf':_0x38413e(0x159),'AOJtt':function(_0x1a1ade,_0x1e3208){return _0x1a1ade===_0x1e3208;},'tyiYt':function(_0x18e42c,_0x545dee){return _0x18e42c(_0x545dee);}};if(!_0x5bf7a1||_0x24266d['ehXjs'](typeof _0x5bf7a1,_0x24266d['lCtoS']))return _0x5bf7a1;const _0x16379a=['password',_0x24266d[_0x38413e(0x1c5)],_0x24266d['EXPLZ'],_0x24266d[_0x38413e(0x1a7)],_0x24266d[_0x38413e(0x137)],_0x38413e(0x12d),_0x38413e(0x1ba),'authorization',_0x24266d['cPnDO'],_0x24266d[_0x38413e(0x175)],_0x24266d['ayTdn'],_0x24266d[_0x38413e(0x1a3)],_0x24266d['MGCAV'],_0x24266d['lkdlY'],'privatekey',_0x24266d['SLKCH'],_0x24266d[_0x38413e(0x176)]],_0x469f92=Array['isArray'](_0x5bf7a1)?[..._0x5bf7a1]:{..._0x5bf7a1};for(const _0xdabd4a of Object['keys'](_0x469f92)){const _0x803cc5=_0xdabd4a['toLowerCase']();if(_0x16379a[_0x38413e(0x184)](_0x261b4e=>_0x803cc5['includes'](_0x261b4e)))_0x469f92[_0xdabd4a]=_0x24266d[_0x38413e(0x1a4)];else _0x24266d[_0x38413e(0x158)](typeof _0x469f92[_0xdabd4a],'object')&&_0x24266d['ehXjs'](_0x469f92[_0xdabd4a],null)&&(_0x469f92[_0xdabd4a]=_0x24266d['tyiYt'](redactObject,_0x469f92[_0xdabd4a]));}return _0x469f92;},logError=(_0x4eebdc,_0x3a067a={},_0x37e0ed=null)=>{const _0x1d80ab=a0_0x257325,_0x22a8aa={'wgatq':_0x1d80ab(0x1aa),'NbQum':_0x1d80ab(0x120),'Pybij':function(_0x2edc38,_0x14f078,_0x2e3f7f){return _0x2edc38(_0x14f078,_0x2e3f7f);}},_0x3f0faa={'event':_0x22a8aa['wgatq'],'errorName':_0x4eebdc['name']||_0x22a8aa[_0x1d80ab(0x1a9)],'errorMessage':_0x4eebdc[_0x1d80ab(0x13c)],'errorCode':_0x4eebdc[_0x1d80ab(0x19a)]||null,'stack':_0x4eebdc[_0x1d80ab(0x1c8)],..._0x3a067a},_0x3b4bb7=_0x37e0ed||'Error:\x20'+_0x4eebdc['message'];logger[_0x1d80ab(0x1aa)](_0x3f0faa,_0x3b4bb7),_0x22a8aa[_0x1d80ab(0x1a0)](writeToFileLog,{..._0x3f0faa,'level':_0x22a8aa['wgatq'],'msg':_0x3b4bb7,'time':new Date()['toISOString']()},_0x1d80ab(0x1aa));},logFatalError=(_0x473813,_0x10e81e={},_0x498975=null)=>{const _0x888312=a0_0x257325,_0x1a129={'TOTSh':'fatal_error'},_0x3bb7b2={'event':_0x1a129[_0x888312(0x163)],'errorName':_0x473813['name']||'Error','errorMessage':_0x473813['message'],'errorCode':_0x473813['code']||null,'stack':_0x473813['stack'],'severity':_0x888312(0x15b),..._0x10e81e},_0xe4f885=_0x498975||_0x888312(0x152)+_0x473813[_0x888312(0x13c)];logger[_0x888312(0x1cc)](_0x3bb7b2,_0xe4f885),writeToFileLog({..._0x3bb7b2,'level':'fatal','msg':_0xe4f885,'time':new Date()['toISOString']()},_0x888312(0x1aa));},logHttpError=(_0x358588,_0x4f64f9,_0x1eb2b3={})=>{const _0x4a9437=a0_0x257325,_0x11b24f={'oGDBw':_0x4a9437(0x157),'cWGHE':_0x4a9437(0x120),'JUXvW':'user-agent','wAYJU':function(_0x17542a,_0x162649){return _0x17542a>=_0x162649;},'QaJXi':'warn','pHCwd':function(_0x269909,_0x5daf91){return _0x269909>=_0x5daf91;}},_0x398cb4={'event':_0x11b24f[_0x4a9437(0x1a5)],'errorName':_0x358588['name']||_0x11b24f['cWGHE'],'errorMessage':_0x358588[_0x4a9437(0x13c)],'errorCode':_0x358588[_0x4a9437(0x19a)]||_0x358588['statusCode']||0x1f4,'stack':_0x358588['stack'],'method':_0x4f64f9?.['method'],'url':_0x4f64f9?.[_0x4a9437(0x14b)]||_0x4f64f9?.['originalUrl'],'path':_0x4f64f9?.['path'],'ip':_0x4f64f9?.['ip']||_0x4f64f9?.[_0x4a9437(0x135)]?.['remoteAddress'],'userAgent':_0x4f64f9?.[_0x4a9437(0x171)]?.(_0x11b24f['JUXvW']),'requestId':_0x4f64f9?.['id']||_0x4f64f9?.['headers']?.[_0x4a9437(0x167)],'body':_0x4f64f9?.['body']?redactObject(_0x4f64f9[_0x4a9437(0x19d)]):undefined,'query':_0x4f64f9?.[_0x4a9437(0x181)],..._0x1eb2b3},_0x4af8e9=_0x358588['statusCode']||_0x358588['status']||0x1f4,_0x4c0c8e=_0x4a9437(0x17a)+_0x4af8e9+':\x20'+_0x358588[_0x4a9437(0x13c)];_0x11b24f['wAYJU'](_0x4af8e9,0x1f4)?logger[_0x4a9437(0x1aa)](_0x398cb4,_0x4c0c8e):logger[_0x4a9437(0x136)](_0x398cb4,_0x4c0c8e),writeToFileLog({..._0x398cb4,'level':_0x4af8e9>=0x1f4?'error':_0x11b24f['QaJXi'],'msg':_0x4c0c8e,'time':new Date()[_0x4a9437(0x168)]()},_0x11b24f[_0x4a9437(0x18c)](_0x4af8e9,0x1f4)?_0x4a9437(0x1aa):'warn');},logUncaughtError=(_0x29de3a,_0x2ca0c9)=>{const _0x7bb848=a0_0x257325,_0x15707f={'SpRwE':'Error','uVtgD':_0x7bb848(0x15b),'gUOaS':_0x7bb848(0x1cc)},_0x3f6a29={'event':_0x29de3a,'errorName':_0x2ca0c9?.['name']||_0x15707f['SpRwE'],'errorMessage':_0x2ca0c9?.[_0x7bb848(0x13c)]||String(_0x2ca0c9),'errorCode':_0x2ca0c9?.[_0x7bb848(0x19a)]||null,'stack':_0x2ca0c9?.['stack'],'severity':_0x15707f['uVtgD'],'processId':process[_0x7bb848(0x147)],'memoryUsage':process[_0x7bb848(0x165)](),'uptime':process[_0x7bb848(0x193)]()},_0x2277cf='['+_0x29de3a['toUpperCase']()+']\x20'+(_0x2ca0c9?.['message']||_0x2ca0c9);logger['fatal'](_0x3f6a29,_0x2277cf),writeToFileLog({..._0x3f6a29,'level':_0x15707f[_0x7bb848(0x1b0)],'msg':_0x2277cf,'time':new Date()[_0x7bb848(0x168)]()},_0x7bb848(0x1aa));},setupGlobalErrorHandlers=()=>{const _0x2763f9=a0_0x257325,_0x5f1154={'QzeXE':function(_0x1eff71,_0xf75d89,_0x52cb36){return _0x1eff71(_0xf75d89,_0x52cb36);},'YRKfU':'uncaughtException','DETuG':function(_0x1a2ce9,_0xc523ec,_0x2d64df){return _0x1a2ce9(_0xc523ec,_0x2d64df);},'PxYVS':function(_0xa9ea1a,_0x1e7e2f){return _0xa9ea1a(_0x1e7e2f);},'HUJZe':'unhandledRejection','lQqZb':'warning','mtZJn':'info'};process['on'](_0x2763f9(0x133),_0x275ca0=>{const _0x154418=_0x2763f9;_0x5f1154['QzeXE'](logUncaughtError,_0x5f1154['YRKfU'],_0x275ca0),_0x5f1154[_0x154418(0x161)](setTimeout,()=>{const _0x16b3ae=_0x154418;process[_0x16b3ae(0x148)](0x1);},0x3e8);}),process['on'](_0x2763f9(0x1c2),(_0x5020f6,_0x3b3a0e)=>{const _0x2ed322=_0x2763f9,_0x7b3422=_0x5020f6 instanceof Error?_0x5020f6:new Error(_0x5f1154[_0x2ed322(0x14e)](String,_0x5020f6));logUncaughtError(_0x5f1154['HUJZe'],_0x7b3422);}),process['on'](_0x5f1154['lQqZb'],_0x8dc67a=>{const _0x15523d=_0x2763f9;logger['warn']({'event':'process_warning','name':_0x8dc67a[_0x15523d(0x1c3)],'message':_0x8dc67a[_0x15523d(0x13c)],'stack':_0x8dc67a['stack']},_0x15523d(0x177)+_0x8dc67a[_0x15523d(0x13c)]);});const _0x56a22c={'event':_0x2763f9(0x11f)},_0x521df7=_0x2763f9(0x14d);logger['info'](_0x56a22c,_0x521df7),_0x5f1154['QzeXE'](writeToFileLog,{..._0x56a22c,'level':_0x2763f9(0x186),'msg':_0x521df7,'time':new Date()[_0x2763f9(0x168)]()},_0x5f1154['mtZJn']);},createErrorHandlerMiddleware=()=>{const _0x11b389={'JPmjA':function(_0x220f95,_0xf5b73){return _0x220f95>=_0xf5b73;}};return(_0x335a5b,_0xacd83b,_0x1dba1e,_0x2c93d8)=>{const _0x327e38=a0_0x209b;logHttpError(_0x335a5b,_0xacd83b);const _0x5a3173=_0x335a5b['statusCode']||_0x335a5b[_0x327e38(0x18e)]||0x1f4;_0x1dba1e['status'](_0x5a3173)['json']({'success':![],'error':_0x11b389['JPmjA'](_0x5a3173,0x1f4)?'Internal\x20server\x20error':_0x335a5b['message'],'requestId':_0xacd83b['id']||_0xacd83b[_0x327e38(0x1af)]?.[_0x327e38(0x167)]||null});};};module[a0_0x257325(0x14c)]={'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_0x10cc59=a0_0x3cb0;function a0_0x53e1(){const _0x104d73=['zM9YrwfJAa','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','Aw5MBW','zw50CMLLCW','mtC0m1rXrNzfyW','zxHWB3j0CW','vMfSDwuGiG','lI9SB2DNzxi','BgvUz3rO','y2XLyxi','ywrK','AgfZ','Dg9mB3DLCKnHC2u','C2v0','ntuYnNP1DNnbAa','Bg9VA3vWq2fJAgu','lI9KyI1TExnXBa','CxjpwMG','z2v0rgLZDgLUy3rwywX1zxm','CKrLrxa','BxLZCwW','zKvty0y','otC1mteYmfzzsuDUEq','m2DOAurnrq','A2v5CW','y2XLyxjdywnOzq','iIbUB3qGzM91BMqGAw4G','BwfW','tg9VA3vWignHy2HLignSzwfYzwq','zNjVBq','z2v0','zgvIDwC','DMXMzhO','oty4mdeXCvjcB0rJ','mJC4ntmXmgjWtMPXtq','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','EgH2z00','ovLzrM1KCG','mtmXndCWzNHfthjr','ChvZAa','mti1nZmXodDwyxruwMO','iezst00G','zxHLy3v0zvf1zxj5','mta0DeTlsfHA','DMfSAwrHDgvmB29RDxbwywX1zxm','rejFvfLqrq','whbWB28','CMvZB2X2zuXVB2T1CfzHBhvL','mtjiz29ls2u','mZm4nZq3me5qzNPTrW','Bg9HzeXVB2T1CfrHyMXL'];a0_0x53e1=function(){return _0x104d73;};return a0_0x53e1();}(function(_0x5583a2,_0x2ca415){const _0x143ad7=a0_0x3cb0,_0x392182=_0x5583a2();while(!![]){try{const _0x49402b=parseInt(_0x143ad7(0x160))/0x1+-parseInt(_0x143ad7(0x161))/0x2*(parseInt(_0x143ad7(0x156))/0x3)+-parseInt(_0x143ad7(0x16a))/0x4*(-parseInt(_0x143ad7(0x165))/0x5)+parseInt(_0x143ad7(0x181))/0x6*(parseInt(_0x143ad7(0x177))/0x7)+-parseInt(_0x143ad7(0x189))/0x8+parseInt(_0x143ad7(0x164))/0x9*(parseInt(_0x143ad7(0x170))/0xa)+-parseInt(_0x143ad7(0x167))/0xb*(-parseInt(_0x143ad7(0x16f))/0xc);if(_0x49402b===_0x2ca415)break;else _0x392182['push'](_0x392182['shift']());}catch(_0x3e6265){_0x392182['push'](_0x392182['shift']());}}}(a0_0x53e1,0xb7663));const dbType=(process['env'][a0_0x10cc59(0x16c)]||'postgresql')[a0_0x10cc59(0x17f)]();let executeQuery;function a0_0x3cb0(_0x36843a,_0x3d2782){_0x36843a=_0x36843a-0x156;const _0x53e125=a0_0x53e1();let _0x3cb0af=_0x53e125[_0x36843a];if(a0_0x3cb0['XyuucJ']===undefined){var _0x6ed56f=function(_0x13d770){const _0x4bdaad='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x23c364='',_0x3172d6='';for(let _0x47b8bd=0x0,_0x53f2b7,_0x2fa6bd,_0x52602e=0x0;_0x2fa6bd=_0x13d770['charAt'](_0x52602e++);~_0x2fa6bd&&(_0x53f2b7=_0x47b8bd%0x4?_0x53f2b7*0x40+_0x2fa6bd:_0x2fa6bd,_0x47b8bd++%0x4)?_0x23c364+=String['fromCharCode'](0xff&_0x53f2b7>>(-0x2*_0x47b8bd&0x6)):0x0){_0x2fa6bd=_0x4bdaad['indexOf'](_0x2fa6bd);}for(let _0xae9c4b=0x0,_0x13eeb6=_0x23c364['length'];_0xae9c4b<_0x13eeb6;_0xae9c4b++){_0x3172d6+='%'+('00'+_0x23c364['charCodeAt'](_0xae9c4b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3172d6);};a0_0x3cb0['riPJmg']=_0x6ed56f,a0_0x3cb0['VisbtQ']={},a0_0x3cb0['XyuucJ']=!![];}const _0x5890bf=_0x53e125[0x0],_0x3c0785=_0x36843a+_0x5890bf,_0x488a92=a0_0x3cb0['VisbtQ'][_0x3c0785];return!_0x488a92?(_0x3cb0af=a0_0x3cb0['riPJmg'](_0x3cb0af),a0_0x3cb0['VisbtQ'][_0x3c0785]=_0x3cb0af):_0x3cb0af=_0x488a92,_0x3cb0af;}if(dbType==='oracle'){const oracleDb=require('./db-oracle');executeQuery=(_0x4596aa,_0x2cafa8)=>oracleDb[a0_0x10cc59(0x169)](_0x4596aa,_0x2cafa8);}else{if(dbType===a0_0x10cc59(0x187)){const mysqlDb=require(a0_0x10cc59(0x183));executeQuery=(_0x1ef7d2,_0x5e181d)=>mysqlDb[a0_0x10cc59(0x169)](_0x1ef7d2,_0x5e181d);}else executeQuery=require('./db')[a0_0x10cc59(0x169)];}const {logger}=require(a0_0x10cc59(0x17a));class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x10cc59(0x158)](){const _0x1dffab=a0_0x10cc59,_0x3d09a6={'fEScF':_0x1dffab(0x174)};this[_0x1dffab(0x182)][_0x1dffab(0x17c)](),logger[_0x1dffab(0x15e)]({'event':_0x3d09a6[_0x1dffab(0x188)]},_0x1dffab(0x15b));}async[a0_0x10cc59(0x171)](_0x13882a,_0x5192f6,_0x44d928){const _0x3461d2=a0_0x10cc59,_0x21152d={'lkwkl':function(_0x1a5c7c,_0x58e4cc){return _0x1a5c7c!==_0x58e4cc;},'PdrmR':function(_0x2ada48,_0x1a9d92){return _0x2ada48!==_0x1a9d92;},'vlfdz':function(_0x40d2ee,_0x3ce9b2){return _0x40d2ee(_0x3ce9b2);},'sVTYz':'lookup_table_load_error'},_0x8f5278=_0x13882a+':'+_0x5192f6+':'+_0x44d928;if(this[_0x3461d2(0x182)][_0x3461d2(0x17e)](_0x8f5278))return this['lookupCache']['get'](_0x8f5278);try{const _0x5b5bd3='SELECT\x20'+_0x44d928+',\x20'+_0x5192f6+_0x3461d2(0x168)+_0x13882a,_0x197f82=await executeQuery(_0x5b5bd3),_0x3d308d=new Map();return _0x197f82['forEach'](_0x9d5111=>{const _0x31812d=_0x3461d2,_0x34c5d2=_0x21152d['lkwkl'](_0x9d5111[_0x5192f6],undefined)?_0x9d5111[_0x5192f6]:_0x9d5111[_0x5192f6['toUpperCase']()],_0x11a253=_0x21152d['PdrmR'](_0x9d5111[_0x44d928],undefined)?_0x9d5111[_0x44d928]:_0x9d5111[_0x44d928['toUpperCase']()];_0x34c5d2!==null&&_0x34c5d2!==undefined&&(_0x3d308d['set'](_0x21152d[_0x31812d(0x15f)](String,_0x34c5d2)['toLowerCase']()['trim'](),_0x11a253),_0x3d308d['set'](String(_0x34c5d2)['trim'](),_0x11a253));}),this['lookupCache']['set'](_0x8f5278,_0x3d308d),logger[_0x3461d2(0x175)]({'event':'lookup_table_loaded','table':_0x13882a,'column':_0x5192f6,'count':_0x197f82[_0x3461d2(0x17b)]},'Lookup\x20table\x20loaded:\x20'+_0x13882a),_0x3d308d;}catch(_0x103be8){logger['error']({'event':_0x21152d['sVTYz'],'table':_0x13882a,'error':_0x103be8['message']},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x13882a);throw _0x103be8;}}[a0_0x10cc59(0x16e)](_0x157cf0,_0x3049d4){const _0x1bbb5d=a0_0x10cc59,_0x2046a6={'fuXff':function(_0x4edebe,_0x26bbac){return _0x4edebe===_0x26bbac;},'xhvgM':function(_0x4c9cf1,_0x199e6e){return _0x4c9cf1===_0x199e6e;},'GdTZK':function(_0x7f1566,_0x76d09f){return _0x7f1566(_0x76d09f);}};if(_0x2046a6['fuXff'](_0x157cf0,null)||_0x157cf0===undefined||_0x2046a6[_0x1bbb5d(0x163)](_0x157cf0,''))return null;const _0x297cb0=_0x2046a6['GdTZK'](String,_0x157cf0)['trim']();if(_0x3049d4[_0x1bbb5d(0x17e)](_0x297cb0))return _0x3049d4[_0x1bbb5d(0x15d)](_0x297cb0);const _0x27d64b=_0x297cb0['toLowerCase']();if(_0x3049d4['has'](_0x27d64b))return _0x3049d4[_0x1bbb5d(0x15d)](_0x27d64b);return null;}async['processLookupFields'](_0xf7839b,_0x4fb135){const _0x23377d=a0_0x10cc59,_0x536c01={'BVXVR':function(_0x21befa,_0x4d8dd9){return _0x21befa===_0x4d8dd9;},'qrOZh':function(_0x4e7f71,_0x433e05){return _0x4e7f71===_0x433e05;},'ekhEE':_0x23377d(0x162),'rDeEp':'Lookup\x20fields\x20processed'};if(!_0x4fb135||_0x536c01[_0x23377d(0x184)](Object[_0x23377d(0x157)](_0x4fb135)['length'],0x0))return{'processedRows':_0xf7839b,'errors':[]};const _0x34a048=[],_0x312ca5=new Map();for(const [_0x39c3f7,_0x305828]of Object[_0x23377d(0x176)](_0x4fb135)){const {lookupTable:_0x30da0c,lookupColumn:_0x487a80,lookupIdColumn:_0x3d9aaa}=_0x305828,_0xbd21bd=_0x30da0c+':'+_0x487a80+':'+_0x3d9aaa;if(!_0x312ca5['has'](_0xbd21bd)){const _0x21c2db=await this[_0x23377d(0x171)](_0x30da0c,_0x487a80,_0x3d9aaa);_0x312ca5[_0x23377d(0x180)](_0xbd21bd,_0x21c2db);}}const _0xaa6b56=_0xf7839b[_0x23377d(0x15a)]((_0x310f0d,_0x397450)=>{const _0x49c109=_0x23377d,_0x4c0ce8={..._0x310f0d};for(const [_0x1e66a6,_0xad1a14]of Object['entries'](_0x4fb135)){const {lookupTable:_0xf48a9b,lookupColumn:_0x310a3c,lookupIdColumn:_0x584118,targetField:_0x5c75c7,required:_0x36fa74}=_0xad1a14,_0xeae9dd=_0xf48a9b+':'+_0x310a3c+':'+_0x584118,_0x2180d0=_0x312ca5[_0x49c109(0x15d)](_0xeae9dd),_0x502504=_0x310f0d[_0x1e66a6];if((_0x536c01['BVXVR'](_0x502504,null)||_0x502504===undefined||_0x502504==='')&&!_0x36fa74){_0x4c0ce8[_0x5c75c7]=null;continue;}const _0x573e28=this['resolveLookupValue'](_0x502504,_0x2180d0);_0x573e28!==null?_0x4c0ce8[_0x5c75c7]=_0x573e28:(_0x36fa74&&_0x34a048[_0x49c109(0x166)]({'rowIndex':_0x397450,'field':_0x1e66a6,'value':_0x502504,'targetField':_0x5c75c7,'lookupTable':_0xf48a9b,'message':_0x49c109(0x179)+_0x502504+_0x49c109(0x159)+_0xf48a9b}),_0x4c0ce8[_0x5c75c7]=null);}return _0x4c0ce8;});return logger[_0x23377d(0x175)]({'event':_0x536c01['ekhEE'],'totalRows':_0xf7839b['length'],'errorCount':_0x34a048[_0x23377d(0x17b)],'lookupFieldCount':Object[_0x23377d(0x157)](_0x4fb135)['length']},_0x536c01[_0x23377d(0x186)]),{'processedRows':_0xaa6b56,'errors':_0x34a048};}['getDistinctValues'](_0x44477d,_0x4b74f3){const _0x57e168=a0_0x10cc59,_0x58d188={'HgHbw':function(_0x2c792e,_0xc34665){return _0x2c792e!==_0xc34665;}},_0x38a724=new Set();return _0x44477d['forEach'](_0x5d78b3=>{const _0x415450=a0_0x3cb0,_0x35f205=_0x5d78b3[_0x4b74f3];_0x58d188['HgHbw'](_0x35f205,null)&&_0x35f205!==undefined&&_0x35f205!==''&&_0x38a724[_0x415450(0x17d)](String(_0x35f205)['trim']());}),Array[_0x57e168(0x15c)](_0x38a724);}async[a0_0x10cc59(0x16b)](_0x1c3262,_0x24250c){const _0x36dcb3=a0_0x10cc59,_0x5f3076={'Xppoo':function(_0x225273,_0x103367){return _0x225273===_0x103367;}};if(!_0x24250c||_0x5f3076[_0x36dcb3(0x16d)](Object['keys'](_0x24250c)[_0x36dcb3(0x17b)],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x4412c2=[],_0x2025ab={};for(const [_0x1a64d2,_0x28e9d7]of Object['entries'](_0x24250c)){const {lookupTable:_0x3afc74,lookupColumn:_0x46bc50,lookupIdColumn:_0x39b23e,required:_0x3bf5dd}=_0x28e9d7,_0x12767a=this[_0x36dcb3(0x185)](_0x1c3262,_0x1a64d2),_0x21246e=await this[_0x36dcb3(0x171)](_0x3afc74,_0x46bc50,_0x39b23e),_0x57606a=[],_0x2ca982=[];_0x12767a[_0x36dcb3(0x172)](_0x557b97=>{const _0xa143d6=_0x36dcb3,_0x4bbfbf=this['resolveLookupValue'](_0x557b97,_0x21246e);_0x4bbfbf!==null?_0x2ca982['push'](_0x557b97):_0x57606a[_0xa143d6(0x166)](_0x557b97);});if(_0x57606a[_0x36dcb3(0x17b)]>0x0&&_0x3bf5dd){_0x4412c2['push']({'field':_0x1a64d2,'lookupTable':_0x3afc74,'invalidValues':_0x57606a,'message':_0x57606a['length']+_0x36dcb3(0x173)+_0x3afc74});const _0x519d0b=[];_0x21246e['forEach']((_0x362cac,_0x211b6)=>{const _0x206641=_0x36dcb3;if(_0x211b6===_0x211b6['toLowerCase']())return;_0x519d0b[_0x206641(0x166)](_0x211b6);}),_0x2025ab[_0x1a64d2]={'invalidValues':_0x57606a,'availableValues':_0x519d0b['slice'](0x0,0x32)};}}return{'valid':_0x4412c2[_0x36dcb3(0x17b)]===0x0,'errors':_0x4412c2,'suggestions':_0x2025ab};}}module[a0_0x10cc59(0x178)]=new LookupResolver();
1
+ const a0_0x762cd=a0_0x592a;(function(_0x5b0a88,_0x1e3557){const _0x3bb73a=a0_0x592a,_0x1627d7=_0x5b0a88();while(!![]){try{const _0x9c1c6c=-parseInt(_0x3bb73a(0x1c9))/0x1*(-parseInt(_0x3bb73a(0x1cf))/0x2)+parseInt(_0x3bb73a(0x1d3))/0x3*(-parseInt(_0x3bb73a(0x1fc))/0x4)+parseInt(_0x3bb73a(0x1e3))/0x5*(parseInt(_0x3bb73a(0x1e8))/0x6)+-parseInt(_0x3bb73a(0x1e5))/0x7+-parseInt(_0x3bb73a(0x1f6))/0x8*(parseInt(_0x3bb73a(0x1ca))/0x9)+-parseInt(_0x3bb73a(0x1d2))/0xa*(parseInt(_0x3bb73a(0x1ec))/0xb)+-parseInt(_0x3bb73a(0x1c8))/0xc*(-parseInt(_0x3bb73a(0x1e6))/0xd);if(_0x9c1c6c===_0x1e3557)break;else _0x1627d7['push'](_0x1627d7['shift']());}catch(_0x5f45e9){_0x1627d7['push'](_0x1627d7['shift']());}}}(a0_0x33e6,0x333c5));function a0_0x33e6(){const _0x2d0f3f=['BgvUz3rO','z2v0rgLZDgLUy3rwywX1zxm','iezst00G','zw52','ne1dsNLpyq','C2v0','zxHLy3v0zvf1zxj5','mtiWruTztLHS','ndK3CMTWvgvn','ovrNDxHzvq','tg9VA3vWignHy2HLignSzwfYzwq','D1LZyve','Aw5MBW','BxLZCwW','nJqYuurOr2Lv','Dg9vChbLCKnHC2u','ChvZAa','mZbUt3fLrfu','mtiZntC5nLDztKL1Aq','Bg9VA3vWq2fJAgu','ywXWA1G','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','Dg9mB3DLCKnHC2u','Bg9HzeXVB2T1CfrHyMXL','twjmr08','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','zNjVBq','B3jHy2XL','BwfW','vMfSDwuGiG','tg9VA3vWigzPzwXKCYbWCM9JzxnZzwq','s3LAyM4','y2XLyxi','lI9KyG','ndCWntG1Eu9HChfY','zgvIDwC','mJuZmdeYmKzHCvnmBG','mti1mdG5owzjvxrrra','AgfZ','mtjqyNbfzwu','iIbUB3qGzM91BMqGAw4G','lI9KyI1VCMfJBgu','v0LjrNe','nZuWnJCZCer3Benr','u0vmrunuia','zM9YrwfJAa','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','z2v0','CMvZB2X2zuXVB2T1CfzHBhvL','zw50CMLLCW','A2v5CW','BwvZC2fNzq','zuLmt0W','otC2mJy0wwTgEMzY','Bg9VA3vWx3rHyMXLx2XVywrLza'];a0_0x33e6=function(){return _0x2d0f3f;};return a0_0x33e6();}const dbType=(process[a0_0x762cd(0x1fb)]['DB_TYPE']||'postgresql')['toLowerCase']();let executeQuery;if(dbType===a0_0x762cd(0x1dc)){const oracleDb=require(a0_0x762cd(0x1ea));executeQuery=(_0x455c2a,_0x512729)=>oracleDb['executeQuery'](_0x455c2a,_0x512729);}else{if(dbType===a0_0x762cd(0x1ce)){const mysqlDb=require('./db-mysql');executeQuery=(_0x264c4b,_0x394961)=>mysqlDb[a0_0x762cd(0x1c7)](_0x264c4b,_0x394961);}else executeQuery=require(a0_0x762cd(0x1e2))['executeQuery'];}const {logger}=require('./logger');class LookupResolver{constructor(){const _0x4f3da8=a0_0x762cd;this[_0x4f3da8(0x1d4)]=new Map();}['clearCache'](){const _0x5d0682=a0_0x762cd,_0x51afa8={'alpkX':'lookup_cache_cleared'};this['lookupCache'][_0x5d0682(0x1e1)](),logger[_0x5d0682(0x1e4)]({'event':_0x51afa8[_0x5d0682(0x1d5)]},_0x5d0682(0x1cb));}async['loadLookupTable'](_0x115850,_0x55fbe5,_0x271abc){const _0x48b882=a0_0x762cd,_0x511716={'KyZbn':function(_0x951cec,_0xcfe476){return _0x951cec!==_0xcfe476;},'MbLGO':function(_0xda5e41,_0x451260){return _0xda5e41(_0x451260);},'sXfMu':function(_0x547c9a,_0x297261){return _0x547c9a(_0x297261);},'XRecK':_0x48b882(0x1da)},_0x4064d4=_0x115850+':'+_0x55fbe5+':'+_0x271abc;if(this[_0x48b882(0x1d4)][_0x48b882(0x1e7)](_0x4064d4))return this['lookupCache']['get'](_0x4064d4);try{const _0x1c3ae6=_0x48b882(0x1ed)+_0x271abc+',\x20'+_0x55fbe5+_0x48b882(0x1fa)+_0x115850,_0x399f5c=await _0x511716['sXfMu'](executeQuery,_0x1c3ae6),_0x3c5a43=new Map();return _0x399f5c[_0x48b882(0x1ee)](_0x21c86d=>{const _0x40af2b=_0x48b882,_0x4fcdf9=_0x21c86d[_0x55fbe5]!==undefined?_0x21c86d[_0x55fbe5]:_0x21c86d[_0x55fbe5[_0x40af2b(0x1d0)]()],_0xce24d7=_0x511716[_0x40af2b(0x1e0)](_0x21c86d[_0x271abc],undefined)?_0x21c86d[_0x271abc]:_0x21c86d[_0x271abc['toUpperCase']()];_0x511716['KyZbn'](_0x4fcdf9,null)&&_0x4fcdf9!==undefined&&(_0x3c5a43['set'](String(_0x4fcdf9)[_0x40af2b(0x1d7)]()['trim'](),_0xce24d7),_0x3c5a43['set'](_0x511716[_0x40af2b(0x1d9)](String,_0x4fcdf9)['trim'](),_0xce24d7));}),this['lookupCache'][_0x48b882(0x1c6)](_0x4064d4,_0x3c5a43),logger['info']({'event':_0x48b882(0x1f7),'table':_0x115850,'column':_0x55fbe5,'count':_0x399f5c[_0x48b882(0x1f8)]},'Lookup\x20table\x20loaded:\x20'+_0x115850),_0x3c5a43;}catch(_0x11ebb3){logger['error']({'event':_0x511716['XRecK'],'table':_0x115850,'error':_0x11ebb3[_0x48b882(0x1f4)]},_0x48b882(0x1ef)+_0x115850);throw _0x11ebb3;}}[a0_0x762cd(0x1f1)](_0x3ee2b5,_0x27fd8b){const _0x2b67d0=a0_0x762cd,_0x1b8043={'ZFCcK':function(_0x240feb,_0x5d0b3a){return _0x240feb===_0x5d0b3a;}};if(_0x1b8043['ZFCcK'](_0x3ee2b5,null)||_0x3ee2b5===undefined||_0x3ee2b5==='')return null;const _0x342c56=String(_0x3ee2b5)['trim']();if(_0x27fd8b['has'](_0x342c56))return _0x27fd8b[_0x2b67d0(0x1f0)](_0x342c56);const _0x1ad337=_0x342c56[_0x2b67d0(0x1d7)]();if(_0x27fd8b[_0x2b67d0(0x1e7)](_0x1ad337))return _0x27fd8b[_0x2b67d0(0x1f0)](_0x1ad337);return null;}async['processLookupFields'](_0x2db56e,_0x1dc24f){const _0x1afd42=a0_0x762cd,_0x136d80={'WIIFq':function(_0x483b29,_0x2bb258){return _0x483b29===_0x2bb258;},'xYuBJ':function(_0x122984,_0x1900ed){return _0x122984===_0x1900ed;},'wYsaQ':_0x1afd42(0x1d6)};if(!_0x1dc24f||Object[_0x1afd42(0x1f3)](_0x1dc24f)[_0x1afd42(0x1f8)]===0x0)return{'processedRows':_0x2db56e,'errors':[]};const _0x4c8278=[],_0x49b72b=new Map();for(const [_0x56746f,_0x19db1a]of Object[_0x1afd42(0x1f2)](_0x1dc24f)){const {lookupTable:_0x2d4814,lookupColumn:_0x3219dd,lookupIdColumn:_0x2856d9}=_0x19db1a,_0x52c2db=_0x2d4814+':'+_0x3219dd+':'+_0x2856d9;if(!_0x49b72b[_0x1afd42(0x1e7)](_0x52c2db)){const _0x2f3f18=await this['loadLookupTable'](_0x2d4814,_0x3219dd,_0x2856d9);_0x49b72b['set'](_0x52c2db,_0x2f3f18);}}const _0x1f85a0=_0x2db56e[_0x1afd42(0x1dd)]((_0x1c5e65,_0x1ccfd5)=>{const _0x2d46e6=_0x1afd42,_0x46e433={..._0x1c5e65};for(const [_0x78206b,_0x3b9e89]of Object[_0x2d46e6(0x1f2)](_0x1dc24f)){const {lookupTable:_0x467d4c,lookupColumn:_0x26a5f4,lookupIdColumn:_0x4c59cb,targetField:_0x3a62b7,required:_0x307e3a}=_0x3b9e89,_0x2a0ad6=_0x467d4c+':'+_0x26a5f4+':'+_0x4c59cb,_0x47aea8=_0x49b72b['get'](_0x2a0ad6),_0x18e837=_0x1c5e65[_0x78206b];if((_0x136d80[_0x2d46e6(0x1eb)](_0x18e837,null)||_0x18e837===undefined||_0x136d80['xYuBJ'](_0x18e837,''))&&!_0x307e3a){_0x46e433[_0x3a62b7]=null;continue;}const _0x13a787=this[_0x2d46e6(0x1f1)](_0x18e837,_0x47aea8);_0x13a787!==null?_0x46e433[_0x3a62b7]=_0x13a787:(_0x307e3a&&_0x4c8278['push']({'rowIndex':_0x1ccfd5,'field':_0x78206b,'value':_0x18e837,'targetField':_0x3a62b7,'lookupTable':_0x467d4c,'message':_0x2d46e6(0x1de)+_0x18e837+_0x2d46e6(0x1e9)+_0x467d4c}),_0x46e433[_0x3a62b7]=null);}return _0x46e433;});return logger[_0x1afd42(0x1cd)]({'event':_0x136d80[_0x1afd42(0x1cc)],'totalRows':_0x2db56e['length'],'errorCount':_0x4c8278['length'],'lookupFieldCount':Object[_0x1afd42(0x1f3)](_0x1dc24f)['length']},_0x1afd42(0x1df)),{'processedRows':_0x1f85a0,'errors':_0x4c8278};}[a0_0x762cd(0x1f9)](_0x5624d1,_0x4ea7c9){const _0x59acff=a0_0x762cd,_0x59642c={'njJyR':function(_0x12ff90,_0x425894){return _0x12ff90!==_0x425894;}},_0x11f60c=new Set();return _0x5624d1[_0x59acff(0x1ee)](_0x58b340=>{const _0x2b7651=_0x58b340[_0x4ea7c9];_0x2b7651!==null&&_0x59642c['njJyR'](_0x2b7651,undefined)&&_0x59642c['njJyR'](_0x2b7651,'')&&_0x11f60c['add'](String(_0x2b7651)['trim']());}),Array[_0x59acff(0x1db)](_0x11f60c);}async['validateLookupValues'](_0x480147,_0x3001f9){const _0x148375=a0_0x762cd,_0x25aaf2={'cJyjM':function(_0x3e957a,_0x23cca3){return _0x3e957a!==_0x23cca3;},'CCmCe':function(_0x17e304,_0x10b3f7){return _0x17e304===_0x10b3f7;},'eILOL':function(_0x4a4be8,_0x207abf){return _0x4a4be8>_0x207abf;}};if(!_0x3001f9||_0x25aaf2['CCmCe'](Object[_0x148375(0x1f3)](_0x3001f9)['length'],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x2a133a=[],_0x1a626d={};for(const [_0x53691d,_0x363e3f]of Object['entries'](_0x3001f9)){const {lookupTable:_0x2483b1,lookupColumn:_0x515233,lookupIdColumn:_0x3169bf,required:_0x91d5f4}=_0x363e3f,_0x2b0502=this['getDistinctValues'](_0x480147,_0x53691d),_0x1ac2bc=await this[_0x148375(0x1d8)](_0x2483b1,_0x515233,_0x3169bf),_0x139158=[],_0x2e6ba2=[];_0x2b0502[_0x148375(0x1ee)](_0xe1b8bf=>{const _0x41400c=this['resolveLookupValue'](_0xe1b8bf,_0x1ac2bc);_0x25aaf2['cJyjM'](_0x41400c,null)?_0x2e6ba2['push'](_0xe1b8bf):_0x139158['push'](_0xe1b8bf);});if(_0x25aaf2[_0x148375(0x1f5)](_0x139158['length'],0x0)&&_0x91d5f4){_0x2a133a['push']({'field':_0x53691d,'lookupTable':_0x2483b1,'invalidValues':_0x139158,'message':_0x139158[_0x148375(0x1f8)]+'\x20value(s)\x20not\x20found\x20in\x20'+_0x2483b1});const _0x40e19a=[];_0x1ac2bc['forEach']((_0x257b81,_0x56b26f)=>{const _0x1559a3=_0x148375;if(_0x56b26f===_0x56b26f[_0x1559a3(0x1d7)]())return;_0x40e19a[_0x1559a3(0x1d1)](_0x56b26f);}),_0x1a626d[_0x53691d]={'invalidValues':_0x139158,'availableValues':_0x40e19a['slice'](0x0,0x32)};}}return{'valid':_0x2a133a[_0x148375(0x1f8)]===0x0,'errors':_0x2a133a,'suggestions':_0x1a626d};}}function a0_0x592a(_0x3a6662,_0x3c5787){_0x3a6662=_0x3a6662-0x1c6;const _0x33e62d=a0_0x33e6();let _0x592ac9=_0x33e62d[_0x3a6662];if(a0_0x592a['VWDfnL']===undefined){var _0x5d3b26=function(_0x36abc9){const _0x536505='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1fbdca='',_0x16a8c5='';for(let _0x55cb43=0x0,_0x4dbbfd,_0x48d3e1,_0x44c745=0x0;_0x48d3e1=_0x36abc9['charAt'](_0x44c745++);~_0x48d3e1&&(_0x4dbbfd=_0x55cb43%0x4?_0x4dbbfd*0x40+_0x48d3e1:_0x48d3e1,_0x55cb43++%0x4)?_0x1fbdca+=String['fromCharCode'](0xff&_0x4dbbfd>>(-0x2*_0x55cb43&0x6)):0x0){_0x48d3e1=_0x536505['indexOf'](_0x48d3e1);}for(let _0xf34ba8=0x0,_0x258eb1=_0x1fbdca['length'];_0xf34ba8<_0x258eb1;_0xf34ba8++){_0x16a8c5+='%'+('00'+_0x1fbdca['charCodeAt'](_0xf34ba8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x16a8c5);};a0_0x592a['WSrRjp']=_0x5d3b26,a0_0x592a['xBIfdZ']={},a0_0x592a['VWDfnL']=!![];}const _0x5a2481=_0x33e62d[0x0],_0x4a8a9c=_0x3a6662+_0x5a2481,_0x4ff63f=a0_0x592a['xBIfdZ'][_0x4a8a9c];return!_0x4ff63f?(_0x592ac9=a0_0x592a['WSrRjp'](_0x592ac9),a0_0x592a['xBIfdZ'][_0x4a8a9c]=_0x592ac9):_0x592ac9=_0x4ff63f,_0x592ac9;}module['exports']=new LookupResolver();
@@ -1 +1 @@
1
- const a0_0x16efba=a0_0xda68;(function(_0x380f2a,_0x389d6f){const _0x162e49=a0_0xda68,_0x2f73aa=_0x380f2a();while(!![]){try{const _0x1ff630=parseInt(_0x162e49(0x16c))/0x1+parseInt(_0x162e49(0x172))/0x2*(parseInt(_0x162e49(0x187))/0x3)+-parseInt(_0x162e49(0x166))/0x4+parseInt(_0x162e49(0x185))/0x5*(parseInt(_0x162e49(0x179))/0x6)+parseInt(_0x162e49(0x17c))/0x7*(parseInt(_0x162e49(0x162))/0x8)+-parseInt(_0x162e49(0x171))/0x9*(parseInt(_0x162e49(0x17f))/0xa)+-parseInt(_0x162e49(0x182))/0xb*(parseInt(_0x162e49(0x189))/0xc);if(_0x1ff630===_0x389d6f)break;else _0x2f73aa['push'](_0x2f73aa['shift']());}catch(_0x582c77){_0x2f73aa['push'](_0x2f73aa['shift']());}}}(a0_0x4160,0x623c5));const fs=require('fs')[a0_0x16efba(0x173)],path=require(a0_0x16efba(0x183)),{logger}=require('./logger');function a0_0xda68(_0x1aa8b6,_0x9432fc){_0x1aa8b6=_0x1aa8b6-0x161;const _0x416052=a0_0x4160();let _0xda683b=_0x416052[_0x1aa8b6];if(a0_0xda68['ojwGYo']===undefined){var _0x5e6593=function(_0x3bb0f7){const _0x20727c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1855e5='',_0x5966ae='';for(let _0x248af1=0x0,_0x49b71,_0x4f17a6,_0x39a789=0x0;_0x4f17a6=_0x3bb0f7['charAt'](_0x39a789++);~_0x4f17a6&&(_0x49b71=_0x248af1%0x4?_0x49b71*0x40+_0x4f17a6:_0x4f17a6,_0x248af1++%0x4)?_0x1855e5+=String['fromCharCode'](0xff&_0x49b71>>(-0x2*_0x248af1&0x6)):0x0){_0x4f17a6=_0x20727c['indexOf'](_0x4f17a6);}for(let _0x432284=0x0,_0x8b7346=_0x1855e5['length'];_0x432284<_0x8b7346;_0x432284++){_0x5966ae+='%'+('00'+_0x1855e5['charCodeAt'](_0x432284)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5966ae);};a0_0xda68['dLFzws']=_0x5e6593,a0_0xda68['QuPIqG']={},a0_0xda68['ojwGYo']=!![];}const _0x53ed0f=_0x416052[0x0],_0x3d2cd5=_0x1aa8b6+_0x53ed0f,_0x136ee0=a0_0xda68['QuPIqG'][_0x3d2cd5];return!_0x136ee0?(_0xda683b=a0_0xda68['dLFzws'](_0xda683b),a0_0xda68['QuPIqG'][_0x3d2cd5]=_0xda683b):_0xda683b=_0x136ee0,_0xda683b;}class PayloadLoader{constructor(){const _0xe88d7=a0_0x16efba,_0x5d0e2b={'LAibN':'../../payload'};this[_0xe88d7(0x188)]=path[_0xe88d7(0x168)](__dirname,_0x5d0e2b[_0xe88d7(0x16a)]),this[_0xe88d7(0x174)]=new Map();}async['loadPayload'](_0x112db0,_0x487f35){const _0x1b7ccf=a0_0x16efba,_0x3aa9e2={'mzdXI':'utf8','jfyEA':_0x1b7ccf(0x16d),'qiFRB':'Payload\x20loaded\x20successfully','VgsPV':'payload_load_error'},_0x27c5b2=_0x112db0+':'+_0x487f35;if(this[_0x1b7ccf(0x174)]['has'](_0x27c5b2))return this['cache'][_0x1b7ccf(0x17e)](_0x27c5b2);const _0x52883e=path['join'](this[_0x1b7ccf(0x188)],_0x112db0+'_'+_0x487f35+_0x1b7ccf(0x181));try{const _0x19ba0c=await fs[_0x1b7ccf(0x161)](_0x52883e,_0x3aa9e2[_0x1b7ccf(0x165)]),_0x46f4b4=JSON['parse'](_0x19ba0c);return this['cache'][_0x1b7ccf(0x177)](_0x27c5b2,_0x46f4b4),logger['debug']({'event':_0x3aa9e2[_0x1b7ccf(0x167)],'project':_0x112db0,'resource':_0x487f35},_0x3aa9e2[_0x1b7ccf(0x16b)]),_0x46f4b4;}catch(_0x19940e){logger['error']({'event':_0x3aa9e2['VgsPV'],'project':_0x112db0,'resource':_0x487f35,'error':_0x19940e[_0x1b7ccf(0x176)]},'Failed\x20to\x20load\x20payload');throw new Error(_0x1b7ccf(0x16f)+_0x112db0+'_'+_0x487f35);}}async[a0_0x16efba(0x186)](_0x9f2a5a){const _0x34a0b6=a0_0x16efba,_0x3dbb47={'HGgnM':_0x34a0b6(0x16d)},_0xd6c2e3=_0x34a0b6(0x17b)+_0x9f2a5a;if(this['cache']['has'](_0xd6c2e3))return this['cache'][_0x34a0b6(0x17e)](_0xd6c2e3);const _0x161e33=path[_0x34a0b6(0x168)](this['payloadDir'],_0x9f2a5a+_0x34a0b6(0x181));try{const _0x2f5196=await fs['readFile'](_0x161e33,'utf8'),_0x581365=JSON['parse'](_0x2f5196);return this['cache']['set'](_0xd6c2e3,_0x581365),logger['debug']({'event':_0x3dbb47[_0x34a0b6(0x164)],'payloadName':_0x9f2a5a},'Payload\x20loaded\x20successfully\x20by\x20name'),_0x581365;}catch(_0x6929bb){logger[_0x34a0b6(0x163)]({'event':_0x34a0b6(0x175),'payloadName':_0x9f2a5a,'error':_0x6929bb['message']},'Failed\x20to\x20load\x20payload\x20by\x20name');throw new Error('Payload\x20not\x20found:\x20'+_0x9f2a5a);}}['isActionEnabled'](_0x199a53,_0x1e7dca){return _0x199a53['action']&&_0x199a53['action'][_0x1e7dca]===!![];}[a0_0x16efba(0x17a)](_0x4325ad){const _0x1f0125=a0_0x16efba;return{'columns':_0x4325ad[_0x1f0125(0x170)]||[],'filename':_0x4325ad['tableName'][_0x1f0125(0x184)]('.','-')+_0x1f0125(0x16e),'datatablesQuery':_0x4325ad[_0x1f0125(0x17d)]||null,'columnFormats':_0x4325ad['columnFormats']||null,'fieldLabels':_0x4325ad[_0x1f0125(0x180)]||null};}[a0_0x16efba(0x178)](){const _0xc3491c=a0_0x16efba,_0x4e0328={'RmJzx':'Payload\x20cache\x20cleared'};this[_0xc3491c(0x174)][_0xc3491c(0x169)](),logger['info']({'event':'payload_cache_cleared'},_0x4e0328['RmJzx']);}}module['exports']=new PayloadLoader();function a0_0x4160(){const _0x360778=['mtCXsvzszvPz','mtuXodeWnLrHwhP5zW','ChjVBwLZzxm','y2fJAgu','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','BwvZC2fNzq','C2v0','y2XLyxjdywnOzq','otC1oda0s0vqq1De','z2v0rxHWB3j0q29UzMLN','Cgf5Bg9HzdO','mJfmzNDcEhq','zgf0yxrHyMXLC1f1zxj5','z2v0','mJKWnJuWBwHNy0Tk','zMLLBgrmywjLBhm','lMPZB24','mJjnBhr0AuC','Cgf0Aa','CMvWBgfJzq','nxHkwu5oAq','Bg9HzfbHEwXVywrcEu5HBwu','m0LeDNryBG','Cgf5Bg9HzerPCG','mty4ndi0ogzKzxDztq','CMvHzezPBgu','mtK4mdm3nLDSEhz1yq','zxjYB3i','seDNBK0','BxPKweK','mtK5mti0ogHkufvyyq','AMz5rue','AM9PBG','y2XLyxi','tefPyK4','CwLguKi','nJG4mdbwsKTswfi','Cgf5Bg9Hzf9SB2fKzwq','lwv4Cg9YDa','ugf5Bg9HzcbUB3qGzM91BMq6ia','zMLLBgroyw1L'];a0_0x4160=function(){return _0x360778;};return a0_0x4160();}
1
+ const a0_0x132cf1=a0_0x4cfc;(function(_0x134852,_0x44edd8){const _0x48e9a6=a0_0x4cfc,_0x127427=_0x134852();while(!![]){try{const _0xe22e3e=-parseInt(_0x48e9a6(0x1f4))/0x1*(parseInt(_0x48e9a6(0x1ee))/0x2)+parseInt(_0x48e9a6(0x1ed))/0x3*(-parseInt(_0x48e9a6(0x1d4))/0x4)+-parseInt(_0x48e9a6(0x1d9))/0x5+parseInt(_0x48e9a6(0x1ef))/0x6*(parseInt(_0x48e9a6(0x1df))/0x7)+parseInt(_0x48e9a6(0x1ff))/0x8*(-parseInt(_0x48e9a6(0x1e7))/0x9)+parseInt(_0x48e9a6(0x1f8))/0xa+parseInt(_0x48e9a6(0x1e2))/0xb*(parseInt(_0x48e9a6(0x203))/0xc);if(_0xe22e3e===_0x44edd8)break;else _0x127427['push'](_0x127427['shift']());}catch(_0x2d097f){_0x127427['push'](_0x127427['shift']());}}}(a0_0x28b9,0xca524));const fs=require('fs')['promises'],path=require('path'),{logger}=require(a0_0x132cf1(0x1e0));function a0_0x28b9(){const _0x1c58fa=['y2XLyxi','mZq2nZq1u2rqzefn','lI9SB2DNzxi','ugf5Bg9HzcbUB3qGzM91BMq6ia','mtfOqwDeufe','y2fJAgu','ywn0Aw9U','BwvZC2fNzq','BLflwxm','oxjbzu5Xyq','lwv4Cg9YDa','DgfIBgvoyw1L','Bg9HzfbHEwXVywq','Cgf5Bg9HzdO','lI4VlI4VCgf5Bg9Hza','mZi2muznAufmua','mKXXB05rtW','mtiWqxDMz2rM','whzUCgW','wejhvxC','y29SDw1UrM9YBwf0CW','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','mti0nZGXmxfdr09Rva','zgvIDwC','C2v0','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK','mJyZmJe3mfziqvjPwq','y2XLyxjdywnOzq','AgfZ','CgfYC2u','CMvHzezPBgu','DxrMoa','Axnby3rPB25fBMfIBgvK','oti4mJa4ogXJy3jhrq','z2f6C2y','zxjYB3i','zMLLBgroyw1L','ntqWmJmZmdrysuvjEfC','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','mZm1nK5QveD2uW','z2v0rxHWB3j0q29UzMLN','AM9PBG','Cgf5Bg9HzerPCG','z2v0','odaZntqZmgnIrgD5BW','wgrREfe','zxHWB3j0CW','lMPZB24','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5'];a0_0x28b9=function(){return _0x1c58fa;};return a0_0x28b9();}function a0_0x4cfc(_0x20caa3,_0x1dbc52){_0x20caa3=_0x20caa3-0x1d4;const _0x28b9c6=a0_0x28b9();let _0x4cfce9=_0x28b9c6[_0x20caa3];if(a0_0x4cfc['oXSQyi']===undefined){var _0x2da1ce=function(_0x4044f4){const _0xc4d162='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x447b29='',_0x43a36d='';for(let _0x170110=0x0,_0x16767d,_0x45fdd8,_0x11d141=0x0;_0x45fdd8=_0x4044f4['charAt'](_0x11d141++);~_0x45fdd8&&(_0x16767d=_0x170110%0x4?_0x16767d*0x40+_0x45fdd8:_0x45fdd8,_0x170110++%0x4)?_0x447b29+=String['fromCharCode'](0xff&_0x16767d>>(-0x2*_0x170110&0x6)):0x0){_0x45fdd8=_0xc4d162['indexOf'](_0x45fdd8);}for(let _0x14b2c6=0x0,_0x57ed05=_0x447b29['length'];_0x14b2c6<_0x57ed05;_0x14b2c6++){_0x43a36d+='%'+('00'+_0x447b29['charCodeAt'](_0x14b2c6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x43a36d);};a0_0x4cfc['qVEvCo']=_0x2da1ce,a0_0x4cfc['DQBPJJ']={},a0_0x4cfc['oXSQyi']=!![];}const _0x5a5f49=_0x28b9c6[0x0],_0x5efdbd=_0x20caa3+_0x5a5f49,_0x2f7872=a0_0x4cfc['DQBPJJ'][_0x5efdbd];return!_0x2f7872?(_0x4cfce9=a0_0x4cfc['qVEvCo'](_0x4cfce9),a0_0x4cfc['DQBPJJ'][_0x5efdbd]=_0x4cfce9):_0x4cfce9=_0x2f7872,_0x4cfce9;}class PayloadLoader{constructor(){const _0x2d17ae=a0_0x132cf1;this['payloadDir']=path[_0x2d17ae(0x1d6)](__dirname,_0x2d17ae(0x1ec)),this[_0x2d17ae(0x1e3)]=new Map();}async[a0_0x132cf1(0x1ea)](_0x342a96,_0x450a62){const _0x5497e9=a0_0x132cf1,_0x532bb8={'ocMDq':_0x5497e9(0x1fd),'Xvnpl':_0x5497e9(0x1dd),'gazsf':_0x5497e9(0x1f3)},_0x3e567a=_0x342a96+':'+_0x450a62;if(this['cache'][_0x5497e9(0x1fa)](_0x3e567a))return this[_0x5497e9(0x1e3)]['get'](_0x3e567a);const _0x3009e7=path[_0x5497e9(0x1d6)](this[_0x5497e9(0x1d7)],_0x342a96+'_'+_0x450a62+'.json');try{const _0x4ab1a1=await fs[_0x5497e9(0x1fc)](_0x3009e7,_0x532bb8['ocMDq']),_0x352845=JSON[_0x5497e9(0x1fb)](_0x4ab1a1);return this['cache'][_0x5497e9(0x1f6)](_0x3e567a,_0x352845),logger['debug']({'event':'payload_loaded','project':_0x342a96,'resource':_0x450a62},_0x532bb8[_0x5497e9(0x1f0)]),_0x352845;}catch(_0x4fe476){logger['error']({'event':_0x5497e9(0x204),'project':_0x342a96,'resource':_0x450a62,'error':_0x4fe476[_0x5497e9(0x1e5)]},_0x532bb8[_0x5497e9(0x200)]);throw new Error(_0x5497e9(0x1e1)+_0x342a96+'_'+_0x450a62);}}async['loadPayloadByName'](_0x1d1459){const _0x2d082c=a0_0x132cf1,_0x32f6e5={'XdkxQ':_0x2d082c(0x1fd),'XBGUw':'payload_loaded','nQKYs':'Payload\x20loaded\x20successfully\x20by\x20name'},_0x5b90fe=_0x2d082c(0x1eb)+_0x1d1459;if(this['cache'][_0x2d082c(0x1fa)](_0x5b90fe))return this[_0x2d082c(0x1e3)][_0x2d082c(0x1d8)](_0x5b90fe);const _0x40a3e5=path['join'](this[_0x2d082c(0x1d7)],_0x1d1459+_0x2d082c(0x1dc));try{const _0x293d09=await fs[_0x2d082c(0x1fc)](_0x40a3e5,_0x32f6e5[_0x2d082c(0x1da)]),_0x44d956=JSON['parse'](_0x293d09);return this['cache']['set'](_0x5b90fe,_0x44d956),logger[_0x2d082c(0x1f5)]({'event':_0x32f6e5[_0x2d082c(0x1f1)],'payloadName':_0x1d1459},_0x32f6e5[_0x2d082c(0x1e6)]),_0x44d956;}catch(_0x62c819){logger[_0x2d082c(0x201)]({'event':'payload_load_error','payloadName':_0x1d1459,'error':_0x62c819[_0x2d082c(0x1e5)]},'Failed\x20to\x20load\x20payload\x20by\x20name');throw new Error('Payload\x20not\x20found:\x20'+_0x1d1459);}}[a0_0x132cf1(0x1fe)](_0x18c8ca,_0x3eef02){const _0x26bb2d=a0_0x132cf1;return _0x18c8ca['action']&&_0x18c8ca[_0x26bb2d(0x1e4)][_0x3eef02]===!![];}[a0_0x132cf1(0x1d5)](_0x330141){const _0x23bdc2=a0_0x132cf1;return{'columns':_0x330141[_0x23bdc2(0x202)]||[],'filename':_0x330141[_0x23bdc2(0x1e9)]['replace']('.','-')+_0x23bdc2(0x1e8),'datatablesQuery':_0x330141['datatablesQuery']||null,'columnFormats':_0x330141[_0x23bdc2(0x1f2)]||null,'fieldLabels':_0x330141['fieldLabels']||null};}[a0_0x132cf1(0x1f9)](){const _0x34028f=a0_0x132cf1;this[_0x34028f(0x1e3)][_0x34028f(0x1de)](),logger['info']({'event':_0x34028f(0x1f7)},'Payload\x20cache\x20cleared');}}module[a0_0x132cf1(0x1db)]=new PayloadLoader();
@@ -1 +1 @@
1
- 'use strict';function a0_0x57ee(){var _0x466060=['mtjMwe9Jt0y','ote2mJy0n21SA3vKzq','mZm2nJi4y3LcreT5','mZaYodq5mvLfEMjRwq','ndu4we5xv2zK','zxHWB3j0CW','ntG3uuzoBfPo','nw1UrgTAza','mZzzzK1AEfK','nJK3ndG4oevhzMr5sa','mtbVuhbezNG','nZCWmZu5n1zlDMjiza','n0f3AKTcEG','mZe0mdC5mefvC0jOAq'];a0_0x57ee=function(){return _0x466060;};return a0_0x57ee();}var a0_0x54701b=a0_0xaaff;(function(_0x177524,_0x4d1176){var _0x41d934=a0_0xaaff,_0x1f4e01=_0x177524();while(!![]){try{var _0x47359d=-parseInt(_0x41d934(0x162))/0x1*(parseInt(_0x41d934(0x16e))/0x2)+parseInt(_0x41d934(0x164))/0x3*(parseInt(_0x41d934(0x16c))/0x4)+parseInt(_0x41d934(0x163))/0x5*(parseInt(_0x41d934(0x169))/0x6)+parseInt(_0x41d934(0x168))/0x7*(parseInt(_0x41d934(0x165))/0x8)+parseInt(_0x41d934(0x16d))/0x9*(-parseInt(_0x41d934(0x166))/0xa)+-parseInt(_0x41d934(0x167))/0xb+parseInt(_0x41d934(0x16a))/0xc*(-parseInt(_0x41d934(0x16b))/0xd);if(_0x47359d===_0x4d1176)break;else _0x1f4e01['push'](_0x1f4e01['shift']());}catch(_0x18c5d6){_0x1f4e01['push'](_0x1f4e01['shift']());}}}(a0_0x57ee,0x812f6));function createResponse(_0x1f719d,_0x27f8ce,_0x311579=null){return{'success':!![],'statusCode':_0x1f719d,'message':_0x27f8ce,'data':_0x311579,'timestamp':new Date()['toISOString']()};}function a0_0xaaff(_0x5bb7e7,_0x23951e){_0x5bb7e7=_0x5bb7e7-0x162;var _0x57eeb5=a0_0x57ee();var _0xaaff42=_0x57eeb5[_0x5bb7e7];if(a0_0xaaff['bdanwS']===undefined){var _0x5bac83=function(_0x379c6e){var _0x3d7cfb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x2a225a='',_0x1e3e94='';for(var _0x4e23f0=0x0,_0x1c2cfb,_0x1fa707,_0x33afce=0x0;_0x1fa707=_0x379c6e['charAt'](_0x33afce++);~_0x1fa707&&(_0x1c2cfb=_0x4e23f0%0x4?_0x1c2cfb*0x40+_0x1fa707:_0x1fa707,_0x4e23f0++%0x4)?_0x2a225a+=String['fromCharCode'](0xff&_0x1c2cfb>>(-0x2*_0x4e23f0&0x6)):0x0){_0x1fa707=_0x3d7cfb['indexOf'](_0x1fa707);}for(var _0x4229ba=0x0,_0x211217=_0x2a225a['length'];_0x4229ba<_0x211217;_0x4229ba++){_0x1e3e94+='%'+('00'+_0x2a225a['charCodeAt'](_0x4229ba)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1e3e94);};a0_0xaaff['oTSNOe']=_0x5bac83,a0_0xaaff['hKTREI']={},a0_0xaaff['bdanwS']=!![];}var _0x2356f6=_0x57eeb5[0x0],_0xcd942f=_0x5bb7e7+_0x2356f6,_0x217402=a0_0xaaff['hKTREI'][_0xcd942f];return!_0x217402?(_0xaaff42=a0_0xaaff['oTSNOe'](_0xaaff42),a0_0xaaff['hKTREI'][_0xcd942f]=_0xaaff42):_0xaaff42=_0x217402,_0xaaff42;}function createError(_0x2703b7,_0x4f804b,_0x7188bd=null){return{'success':![],'statusCode':_0x2703b7,'message':_0x4f804b,'data':_0x7188bd,'timestamp':new Date()['toISOString']()};}function createValidationError(_0x109685,_0x2ef325){return{'success':![],'statusCode':0x190,'message':_0x109685,'data':{'errors':_0x2ef325},'timestamp':new Date()['toISOString']()};}module[a0_0x54701b(0x16f)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
1
+ 'use strict';(function(_0x2468e9,_0x364f17){var _0x580f22=a0_0x1095,_0x20428d=_0x2468e9();while(!![]){try{var _0x274382=-parseInt(_0x580f22(0x15e))/0x1+-parseInt(_0x580f22(0x163))/0x2+-parseInt(_0x580f22(0x164))/0x3+-parseInt(_0x580f22(0x161))/0x4*(-parseInt(_0x580f22(0x167))/0x5)+parseInt(_0x580f22(0x160))/0x6+-parseInt(_0x580f22(0x162))/0x7*(parseInt(_0x580f22(0x165))/0x8)+parseInt(_0x580f22(0x166))/0x9*(parseInt(_0x580f22(0x15f))/0xa);if(_0x274382===_0x364f17)break;else _0x20428d['push'](_0x20428d['shift']());}catch(_0x37f81a){_0x20428d['push'](_0x20428d['shift']());}}}(a0_0x4960,0x9b960));function a0_0x4960(){var _0x4b76fb=['nZeYu0LtDuLS','mJK4mtiWnZDNrxDrtMK','mJbltu1iExy','Dg9ju09tDhjPBMC','mtaZmteYnuz5vwfPra','mtbwsMXgruG','mZa4mta0oe52zer3ua','ndi0mZCYsvrmEMvy','ote0nJLJExnbzeC','mJa3mZKXmKjhu05iBG','mte0nJaYn2jzquLQBG'];a0_0x4960=function(){return _0x4b76fb;};return a0_0x4960();}function createResponse(_0x1a98b5,_0x16bdde,_0x46529c=null){var _0x5e4689=a0_0x1095;return{'success':!![],'statusCode':_0x1a98b5,'message':_0x16bdde,'data':_0x46529c,'timestamp':new Date()[_0x5e4689(0x168)]()};}function createError(_0x465b17,_0xdedb74,_0x4eb0e3=null){return{'success':![],'statusCode':_0x465b17,'message':_0xdedb74,'data':_0x4eb0e3,'timestamp':new Date()['toISOString']()};}function createValidationError(_0x10c461,_0x688af7){return{'success':![],'statusCode':0x190,'message':_0x10c461,'data':{'errors':_0x688af7},'timestamp':new Date()['toISOString']()};}function a0_0x1095(_0x4033e7,_0x4d8b57){_0x4033e7=_0x4033e7-0x15e;var _0x4960a4=a0_0x4960();var _0x1095f6=_0x4960a4[_0x4033e7];if(a0_0x1095['tNbsyf']===undefined){var _0x2d7100=function(_0x2d549a){var _0x364c11='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x5ecf34='',_0x17e169='';for(var _0x2e16bc=0x0,_0x40ef6b,_0x44e25a,_0x25de95=0x0;_0x44e25a=_0x2d549a['charAt'](_0x25de95++);~_0x44e25a&&(_0x40ef6b=_0x2e16bc%0x4?_0x40ef6b*0x40+_0x44e25a:_0x44e25a,_0x2e16bc++%0x4)?_0x5ecf34+=String['fromCharCode'](0xff&_0x40ef6b>>(-0x2*_0x2e16bc&0x6)):0x0){_0x44e25a=_0x364c11['indexOf'](_0x44e25a);}for(var _0xfcdc5d=0x0,_0x5903d1=_0x5ecf34['length'];_0xfcdc5d<_0x5903d1;_0xfcdc5d++){_0x17e169+='%'+('00'+_0x5ecf34['charCodeAt'](_0xfcdc5d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x17e169);};a0_0x1095['QiadrM']=_0x2d7100,a0_0x1095['YDtxrB']={},a0_0x1095['tNbsyf']=!![];}var _0x1e734a=_0x4960a4[0x0],_0x4fa9a6=_0x4033e7+_0x1e734a,_0x1a9f1c=a0_0x1095['YDtxrB'][_0x4fa9a6];return!_0x1a9f1c?(_0x1095f6=a0_0x1095['QiadrM'](_0x1095f6),a0_0x1095['YDtxrB'][_0x4fa9a6]=_0x1095f6):_0x1095f6=_0x1a9f1c,_0x1095f6;}module['exports']={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
@@ -1 +1 @@
1
- const a0_0x42a9b1=a0_0x185a;(function(_0x43ce7c,_0x48db66){const _0x2b21c7=a0_0x185a,_0x3eb802=_0x43ce7c();while(!![]){try{const _0x8b03b5=parseInt(_0x2b21c7(0xcc))/0x1+-parseInt(_0x2b21c7(0xa4))/0x2*(parseInt(_0x2b21c7(0xc2))/0x3)+parseInt(_0x2b21c7(0xb8))/0x4+parseInt(_0x2b21c7(0xa6))/0x5*(-parseInt(_0x2b21c7(0xac))/0x6)+-parseInt(_0x2b21c7(0xae))/0x7*(parseInt(_0x2b21c7(0xa8))/0x8)+parseInt(_0x2b21c7(0xa0))/0x9*(parseInt(_0x2b21c7(0xa1))/0xa)+-parseInt(_0x2b21c7(0xaa))/0xb;if(_0x8b03b5===_0x48db66)break;else _0x3eb802['push'](_0x3eb802['shift']());}catch(_0x340bb2){_0x3eb802['push'](_0x3eb802['shift']());}}}(a0_0x4454,0xef88e),require(a0_0x42a9b1(0xcb))[a0_0x42a9b1(0xc1)]());const amqp=require(a0_0x42a9b1(0xb6)),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process[a0_0x42a9b1(0xc3)][a0_0x42a9b1(0xab)],ROUTING_KEY=process[a0_0x42a9b1(0xc3)][a0_0x42a9b1(0xba)],QUEUE=process[a0_0x42a9b1(0xc3)]['RABBITMQ_QUEUE'];function a0_0x185a(_0x43f6f0,_0x5b8caa){_0x43f6f0=_0x43f6f0-0xa0;const _0x445499=a0_0x4454();let _0x185a0c=_0x445499[_0x43f6f0];if(a0_0x185a['aLiJqS']===undefined){var _0x178b92=function(_0xa571e4){const _0x3e15a4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ae2b3='',_0x521963='';for(let _0x5e161c=0x0,_0x3d1abf,_0x22ffcc,_0x166c4b=0x0;_0x22ffcc=_0xa571e4['charAt'](_0x166c4b++);~_0x22ffcc&&(_0x3d1abf=_0x5e161c%0x4?_0x3d1abf*0x40+_0x22ffcc:_0x22ffcc,_0x5e161c++%0x4)?_0x4ae2b3+=String['fromCharCode'](0xff&_0x3d1abf>>(-0x2*_0x5e161c&0x6)):0x0){_0x22ffcc=_0x3e15a4['indexOf'](_0x22ffcc);}for(let _0x48524a=0x0,_0xe69d8b=_0x4ae2b3['length'];_0x48524a<_0xe69d8b;_0x48524a++){_0x521963+='%'+('00'+_0x4ae2b3['charCodeAt'](_0x48524a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x521963);};a0_0x185a['MtZAab']=_0x178b92,a0_0x185a['tiKsPS']={},a0_0x185a['aLiJqS']=!![];}const _0xda21f1=_0x445499[0x0],_0x271a0b=_0x43f6f0+_0xda21f1,_0x1b108e=a0_0x185a['tiKsPS'][_0x271a0b];return!_0x1b108e?(_0x185a0c=a0_0x185a['MtZAab'](_0x185a0c),a0_0x185a['tiKsPS'][_0x271a0b]=_0x185a0c):_0x185a0c=_0x1b108e,_0x185a0c;}function a0_0x4454(){const _0x4a6945=['mZGZneDMtuLrAa','uxvLDwuG','mtaXnduXsvL0z09A','q1Luwhi','tg11zNe','ihDPDgGGreXy','CMv0CNKTzxHJAgfUz2u','ihDHCYbJCMvHDgvKihDPDgGGysbKAwzMzxjLBNqGEc1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEs4','qunAv0K','Ee1Iq3q','yw1XCgXPyG','ignYzwf0zwqVCMvHzhK','nJK3mdeYohjtwNzizW','zxHWB3j0CW','uKfcqKLutvfFuK9vveLor19lrvK','xsbgywLSzwqGDg8Gy3jLyxrLifjHyMjPDe1rignOyw5UzwW6ia','zxHPDa','xsbtDwnJzxnZzNvSBhKGy29UBMvJDgvKihrVifjHyMjPDe1r','xsbcAw5KAw5Nia','xsbszxrYEsbIAw5KAw5NigzVCIa','xsbfuLjpuJOGuxvLDwuG','y29UzMLN','mZy5ouznA3jQCW','zw52','BwvZC2fNzq','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','ksbJCMvHDgvK','xsbfCNjVCIbJCMvHDgLUzYbLEgnOyw5Nzsa','xsbszxrYEsbXDwv1zsa','AunYB28','xsbfEgnOyw5Nzsa','zg90zw52','mta4mZC5nvrrrMLOsq','ntrVB1fzyK8','mZa4mZG5meXjzM5lAW','Bg9N','Aw5JBhvKzxm','nZy0BgHMAe5x','xsbfCNjVCIbJCMvHDgLUzYbXDwv1zsa','mZi0nuX4v1brqW','yxnZzxj0uxvLDwu','ntG0Dg5PtK5s','zxjYB3i','mtKYnZaWmZfNAeneve8','uKfcqKLutvfFrvHdsefor0u'];a0_0x4454=function(){return _0x4a6945;};return a0_0x4454();}async function createConnection(){const _0x4c53b9=a0_0x42a9b1,_0x57c208={'jLABs':function(_0x46fc21,_0x4a7ee8){return _0x46fc21(_0x4a7ee8);}};try{const _0x596c8d=await amqp['connect'](RABBITMQ_URL);return console[_0x4c53b9(0xa2)]('['+formatDate(new Date())+_0x4c53b9(0xbd)),_0x596c8d;}catch(_0x28f9dc){console[_0x4c53b9(0xa9)]('['+_0x57c208['jLABs'](formatDate,new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x28f9dc[_0x4c53b9(0xc4)]);throw _0x28f9dc;}}async function createChannel(_0x67d485){const _0xdf75f9=a0_0x42a9b1,_0x1a0fb0={'ndrRc':function(_0x65e2ed,_0x23e04f){return _0x65e2ed(_0x23e04f);}};try{const _0x58d728=await _0x67d485['createChannel']();return console['log']('['+_0x1a0fb0['ndrRc'](formatDate,new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x58d728;}catch(_0x47205c){console['error']('['+formatDate(new Date())+_0xdf75f9(0xbb)+_0x47205c['message']);throw _0x47205c;}}async function setupInfrastructure(_0x113074){const _0x5ce1b1=a0_0x42a9b1,_0x208d80={'ACZWI':function(_0x569feb,_0x135b75){return _0x569feb(_0x135b75);},'xMbCt':function(_0x1f5f38,_0x2ef8e3){return _0x1f5f38(_0x2ef8e3);},'iCroo':_0x5ce1b1(0xb2),'Lmufq':function(_0x142cf7,_0x1bc889){return _0x142cf7===_0x1bc889;},'CYTXr':'inequivalent\x20arg','Dtmsa':'x-dead-letter-routing-key'};try{await _0x113074['assertExchange'](_0x5ce1b1(0xb2),'direct',{'durable':!![],'autoDelete':![]}),console['log']('['+_0x208d80[_0x5ce1b1(0xb4)](formatDate,new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x54e09c){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20exchange:',_0x54e09c['message']);throw _0x54e09c;}try{await _0x113074['assertExchange'](EXCHANGE,'direct',{'durable':!![],'autoDelete':![]}),console[_0x5ce1b1(0xa2)]('['+formatDate(new Date())+_0x5ce1b1(0xca)+EXCHANGE+'\x20created/ready');}catch(_0x5efc24){console['error']('['+_0x208d80[_0x5ce1b1(0xb4)](formatDate,new Date())+_0x5ce1b1(0xc7)+EXCHANGE+':',_0x5efc24['message']);throw _0x5efc24;}const _0x2eda16=ROUTING_KEY+'_retry';try{const _0x517695={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x113074['assertQueue'](_0x2eda16,_0x517695),console['log']('['+formatDate(new Date())+_0x5ce1b1(0xc8)+_0x2eda16+_0x5ce1b1(0xb7)),await _0x113074['bindQueue'](_0x2eda16,_0x5ce1b1(0xb2),ROUTING_KEY),console['log']('['+formatDate(new Date())+_0x5ce1b1(0xbf)+ROUTING_KEY+'\x20created');}catch(_0x1fef54){console[_0x5ce1b1(0xa9)]('['+_0x208d80[_0x5ce1b1(0xb5)](formatDate,new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x1fef54['message']);throw _0x1fef54;}try{const _0x2b4255={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x208d80[_0x5ce1b1(0xc9)],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x488977=await _0x113074[_0x5ce1b1(0xa7)](QUEUE,_0x2b4255);console[_0x5ce1b1(0xa2)]('['+_0x208d80[_0x5ce1b1(0xb5)](formatDate,new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x208d80[_0x5ce1b1(0xb0)](_0x488977['queue'],QUEUE)?'created/ready':'found')+_0x5ce1b1(0xb1)),await _0x113074['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+formatDate(new Date())+_0x5ce1b1(0xbe)+EXCHANGE+'\x20->\x20'+QUEUE+'\x20('+ROUTING_KEY+_0x5ce1b1(0xc6));}catch(_0x8debbf){if(_0x8debbf[_0x5ce1b1(0xc4)][_0x5ce1b1(0xa3)](_0x208d80['CYTXr'])&&_0x8debbf['message'][_0x5ce1b1(0xa3)](_0x208d80['Dtmsa']))console['error']('\x0a['+_0x208d80[_0x5ce1b1(0xb4)](formatDate,new Date())+_0x5ce1b1(0xc0)+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console[_0x5ce1b1(0xa9)](_0x5ce1b1(0xad)+QUEUE+_0x5ce1b1(0xb3)),console[_0x5ce1b1(0xa9)]('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process['exit'](0x1);else{console['error']('['+formatDate(new Date())+_0x5ce1b1(0xa5)+QUEUE+':',_0x8debbf['message']);throw _0x8debbf;}}}catch(_0x284654){if(!_0x284654['message'][_0x5ce1b1(0xa3)](_0x208d80[_0x5ce1b1(0xaf)])){console[_0x5ce1b1(0xa9)]('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x284654['message']);throw _0x284654;}process[_0x5ce1b1(0xbc)](0x1);}}async function closeConnection(_0x5955df){const _0xe322a2=a0_0x42a9b1;if(_0x5955df)try{await _0x5955df['close'](),console[_0xe322a2(0xa2)]('['+formatDate(new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x17806f){console['error']('['+formatDate(new Date())+_0xe322a2(0xc5)+_0x17806f['message']);}}module[a0_0x42a9b1(0xb9)]={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
1
+ const a0_0x140442=a0_0x1bd1;(function(_0x40da5d,_0x3277e0){const _0x44e587=a0_0x1bd1,_0x3485e7=_0x40da5d();while(!![]){try{const _0x18d76e=parseInt(_0x44e587(0x178))/0x1+parseInt(_0x44e587(0x176))/0x2*(parseInt(_0x44e587(0x166))/0x3)+parseInt(_0x44e587(0x17f))/0x4*(-parseInt(_0x44e587(0x17b))/0x5)+-parseInt(_0x44e587(0x165))/0x6*(parseInt(_0x44e587(0x179))/0x7)+parseInt(_0x44e587(0x182))/0x8+parseInt(_0x44e587(0x168))/0x9*(parseInt(_0x44e587(0x16c))/0xa)+-parseInt(_0x44e587(0x188))/0xb;if(_0x18d76e===_0x3277e0)break;else _0x3485e7['push'](_0x3485e7['shift']());}catch(_0x3532f3){_0x3485e7['push'](_0x3485e7['shift']());}}}(a0_0x3504,0x3cf26),require(a0_0x140442(0x162))['config']());const amqp=require(a0_0x140442(0x184)),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process['env'][a0_0x140442(0x16a)],EXCHANGE=process['env'][a0_0x140442(0x18e)],ROUTING_KEY=process['env'][a0_0x140442(0x18b)],QUEUE=process['env']['RABBITMQ_QUEUE'];async function createConnection(){const _0x27669f=a0_0x140442,_0x531b33={'JhAUk':function(_0x3037be,_0x1c20c2){return _0x3037be(_0x1c20c2);},'UaLLu':function(_0x39ee66,_0x4a6d30){return _0x39ee66(_0x4a6d30);}};try{const _0x261e2b=await amqp['connect'](RABBITMQ_URL);return console['log']('['+_0x531b33['JhAUk'](formatDate,new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x261e2b;}catch(_0x30f162){console['error']('['+_0x531b33[_0x27669f(0x164)](formatDate,new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x30f162['message']);throw _0x30f162;}}async function createChannel(_0x1aa980){const _0x30e0a4=a0_0x140442,_0x347fe4={'RGFDs':function(_0x13dad5,_0x21c282){return _0x13dad5(_0x21c282);}};try{const _0x57d2ee=await _0x1aa980[_0x30e0a4(0x186)]();return console['log']('['+formatDate(new Date())+_0x30e0a4(0x171)),_0x57d2ee;}catch(_0x5b3686){console['error']('['+_0x347fe4['RGFDs'](formatDate,new Date())+_0x30e0a4(0x174)+_0x5b3686['message']);throw _0x5b3686;}}function a0_0x1bd1(_0x5340a9,_0x1aa508){_0x5340a9=_0x5340a9-0x162;const _0x350456=a0_0x3504();let _0x1bd10b=_0x350456[_0x5340a9];if(a0_0x1bd1['xgXMjE']===undefined){var _0x4d1baf=function(_0x4afcad){const _0x2e226c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5cfd03='',_0x52a798='';for(let _0x382d31=0x0,_0x141785,_0x487124,_0x2cb00d=0x0;_0x487124=_0x4afcad['charAt'](_0x2cb00d++);~_0x487124&&(_0x141785=_0x382d31%0x4?_0x141785*0x40+_0x487124:_0x487124,_0x382d31++%0x4)?_0x5cfd03+=String['fromCharCode'](0xff&_0x141785>>(-0x2*_0x382d31&0x6)):0x0){_0x487124=_0x2e226c['indexOf'](_0x487124);}for(let _0x353dae=0x0,_0x35ed96=_0x5cfd03['length'];_0x353dae<_0x35ed96;_0x353dae++){_0x52a798+='%'+('00'+_0x5cfd03['charCodeAt'](_0x353dae)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x52a798);};a0_0x1bd1['YJaigl']=_0x4d1baf,a0_0x1bd1['AOXzAR']={},a0_0x1bd1['xgXMjE']=!![];}const _0x449108=_0x350456[0x0],_0x48ee55=_0x5340a9+_0x449108,_0x3ed65c=a0_0x1bd1['AOXzAR'][_0x48ee55];return!_0x3ed65c?(_0x1bd10b=a0_0x1bd1['YJaigl'](_0x1bd10b),a0_0x1bd1['AOXzAR'][_0x48ee55]=_0x1bd10b):_0x1bd10b=_0x3ed65c,_0x1bd10b;}async function setupInfrastructure(_0x3a007e){const _0x535571=a0_0x140442,_0x5ce578={'mzYhF':_0x535571(0x190),'fNdXL':function(_0xf2799e,_0x12e572){return _0xf2799e(_0x12e572);},'kpYtL':function(_0x6804d5,_0x25e53b){return _0x6804d5(_0x25e53b);},'cdLdJ':function(_0x1f3486,_0x3b603d){return _0x1f3486(_0x3b603d);},'zLSRy':'created/ready','irYjt':_0x535571(0x163)};try{await _0x3a007e[_0x535571(0x170)](_0x535571(0x177),_0x5ce578[_0x535571(0x175)],{'durable':!![],'autoDelete':![]}),console['log']('['+_0x5ce578['fNdXL'](formatDate,new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x5da7cf){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20exchange:',_0x5da7cf['message']);throw _0x5da7cf;}try{await _0x3a007e[_0x535571(0x170)](EXCHANGE,_0x5ce578['mzYhF'],{'durable':!![],'autoDelete':![]}),console['log']('['+_0x5ce578[_0x535571(0x187)](formatDate,new Date())+_0x535571(0x16d)+EXCHANGE+'\x20created/ready');}catch(_0x1496a3){console[_0x535571(0x172)]('['+formatDate(new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x1496a3[_0x535571(0x191)]);throw _0x1496a3;}const _0x25829d=ROUTING_KEY+_0x535571(0x16e);try{const _0x30782c={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x3a007e[_0x535571(0x16f)](_0x25829d,_0x30782c),console[_0x535571(0x16b)]('['+_0x5ce578[_0x535571(0x187)](formatDate,new Date())+']\x20Retry\x20queue\x20'+_0x25829d+'\x20created/ready'),await _0x3a007e['bindQueue'](_0x25829d,_0x535571(0x177),ROUTING_KEY),console['log']('['+formatDate(new Date())+_0x535571(0x18f)+ROUTING_KEY+_0x535571(0x17c));}catch(_0x42b6ea){console[_0x535571(0x172)]('['+_0x5ce578['cdLdJ'](formatDate,new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x42b6ea['message']);throw _0x42b6ea;}try{const _0x204e61={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x535571(0x177),'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x1259f0=await _0x3a007e[_0x535571(0x16f)](QUEUE,_0x204e61);console['log']('['+formatDate(new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x1259f0[_0x535571(0x173)]===QUEUE?_0x5ce578['zLSRy']:'found')+_0x535571(0x17d)),await _0x3a007e[_0x535571(0x18d)](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+formatDate(new Date())+']\x20Binding\x20'+EXCHANGE+_0x535571(0x183)+QUEUE+'\x20('+ROUTING_KEY+_0x535571(0x17e));}catch(_0x3a4ecd){if(_0x3a4ecd['message'][_0x535571(0x18a)](_0x535571(0x163))&&_0x3a4ecd[_0x535571(0x191)]['includes'](_0x535571(0x185)))console['error']('\x0a['+formatDate(new Date())+_0x535571(0x181)+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console['error']('Queue\x20'+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console[_0x535571(0x172)](_0x535571(0x17a)),process['exit'](0x1);else{console['error']('['+formatDate(new Date())+_0x535571(0x189)+QUEUE+':',_0x3a4ecd['message']);throw _0x3a4ecd;}}}catch(_0x36b512){if(!_0x36b512[_0x535571(0x191)]['includes'](_0x5ce578['irYjt'])){console['error']('['+formatDate(new Date())+_0x535571(0x169),_0x36b512[_0x535571(0x191)]);throw _0x36b512;}process['exit'](0x1);}}async function closeConnection(_0x20c829){const _0x5abe1a=a0_0x140442,_0x4e8d6c={'xFvpE':function(_0x27ce91,_0x29f91e){return _0x27ce91(_0x29f91e);},'Tekye':function(_0xbe0604,_0xfbb607){return _0xbe0604(_0xfbb607);}};if(_0x20c829)try{await _0x20c829['close'](),console['log']('['+_0x4e8d6c['xFvpE'](formatDate,new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x16cde3){console[_0x5abe1a(0x172)]('['+_0x4e8d6c[_0x5abe1a(0x180)](formatDate,new Date())+_0x5abe1a(0x167)+_0x16cde3['message']);}}function a0_0x3504(){const _0x32414c=['BxPzAey','mLrNCxvzCq','CMv0CNKTzxHJAgfUz2u','mZeXnJKXEMTrBM1Z','n0nXzw1xDG','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG','mJi4odGWAgTlEhvg','ignYzwf0zwq','ihDPDgGGreXy','ksbJCMvHDgvK','mJbtq1brEge','vgvREwu','xsbfuLjpuJOGuxvLDwuG','mJeXmdG5nMLZB0HZsq','ic0+ia','yw1XCgXPyG','Ec1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEq','y3jLyxrLq2HHBM5LBa','A3bzDeW','nJq1mJGYsfzTBxfk','xsbfCNjVCIbJCMvHDgLUzYbXDwv1zsa','Aw5JBhvKzxm','uKfcqKLutvfFuK9vveLor19lrvK','zxHWB3j0CW','yMLUzff1zxvL','uKfcqKLutvfFrvHdsefor0u','xsbszxrYEsbIAw5KAw5NigzVCIa','zgLYzwn0','BwvZC2fNzq','zg90zw52','Aw5LCxvPDMfSzw50igfYzW','vwfmthu','mZG4nJG2BKDnDhHl','nJaYmtnKDvboDui','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','ntCWmZnkwNbMDwO','xsbfCNjVCIbZzxr0Aw5NihvWig1HAw4GCxvLDwu6','uKfcqKLutvfFvvjm','Bg9N','mtbIwuDIB1m','xsbfEgnOyw5Nzsa','x3jLDhj5','yxnZzxj0uxvLDwu','yxnZzxj0rxHJAgfUz2u','xsbsywjIAxrnusbJAgfUBMvSignYzwf0zwqGC3vJy2vZC2z1BgX5','zxjYB3i','CxvLDwu','xsbgywLSzwqGDg8Gy3jLyxrLifjHyMjPDe1rignOyw5UzwW6ia'];a0_0x3504=function(){return _0x32414c;};return a0_0x3504();}module[a0_0x140442(0x18c)]={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
@@ -1 +1 @@
1
- const a0_0x26593c=a0_0x57a8;function a0_0x57a8(_0x368d8f,_0x428d23){_0x368d8f=_0x368d8f-0xba;const _0x4f1823=a0_0x4f18();let _0x57a8cb=_0x4f1823[_0x368d8f];if(a0_0x57a8['zixoGg']===undefined){var _0x2d7167=function(_0x3203b1){const _0x41d6c2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x18916c='',_0x575757='';for(let _0x336d60=0x0,_0x4ef11e,_0x2d14c3,_0xd7c375=0x0;_0x2d14c3=_0x3203b1['charAt'](_0xd7c375++);~_0x2d14c3&&(_0x4ef11e=_0x336d60%0x4?_0x4ef11e*0x40+_0x2d14c3:_0x2d14c3,_0x336d60++%0x4)?_0x18916c+=String['fromCharCode'](0xff&_0x4ef11e>>(-0x2*_0x336d60&0x6)):0x0){_0x2d14c3=_0x41d6c2['indexOf'](_0x2d14c3);}for(let _0x1070ef=0x0,_0x1e0cac=_0x18916c['length'];_0x1070ef<_0x1e0cac;_0x1070ef++){_0x575757+='%'+('00'+_0x18916c['charCodeAt'](_0x1070ef)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x575757);};a0_0x57a8['atSaJJ']=_0x2d7167,a0_0x57a8['uDqJVd']={},a0_0x57a8['zixoGg']=!![];}const _0x2d87b8=_0x4f1823[0x0],_0x3f7f06=_0x368d8f+_0x2d87b8,_0x559c9e=a0_0x57a8['uDqJVd'][_0x3f7f06];return!_0x559c9e?(_0x57a8cb=a0_0x57a8['atSaJJ'](_0x57a8cb),a0_0x57a8['uDqJVd'][_0x3f7f06]=_0x57a8cb):_0x57a8cb=_0x559c9e,_0x57a8cb;}(function(_0x1b4bc9,_0x4d1275){const _0x5f177c=a0_0x57a8,_0x414fe2=_0x1b4bc9();while(!![]){try{const _0x299230=-parseInt(_0x5f177c(0xcc))/0x1*(parseInt(_0x5f177c(0xd4))/0x2)+-parseInt(_0x5f177c(0xbc))/0x3+-parseInt(_0x5f177c(0xd8))/0x4*(parseInt(_0x5f177c(0xc6))/0x5)+-parseInt(_0x5f177c(0xc4))/0x6+parseInt(_0x5f177c(0xd9))/0x7*(-parseInt(_0x5f177c(0xd2))/0x8)+-parseInt(_0x5f177c(0xd0))/0x9+parseInt(_0x5f177c(0xd1))/0xa*(parseInt(_0x5f177c(0xca))/0xb);if(_0x299230===_0x4d1275)break;else _0x414fe2['push'](_0x414fe2['shift']());}catch(_0x5bee7d){_0x414fe2['push'](_0x414fe2['shift']());}}}(a0_0x4f18,0x7f572));const Redis=require('ioredis'),{logger}=require('./logger');function a0_0x4f18(){const _0x8a6364=['CgLUzW','AxndB25Uzwn0zwq','uKvesvnFueftu1DpuKq','mtG1nZa0yLnLwNPf','n1P3t1bfBW','CMfJzq','zw52','mte0nde3nKfcugL3ua','zxHWB3j0CW','CMvKAxnFzxjYB3i','y2XPzw50','zxjYB3i','Bg9JywXOB3n0','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','qNruz3e','mJqWmZy4nhjbuK5grq','uMvKAxmGueLorYb0Aw1LB3v0','mtvIrMTzy0S','B2Hhww0','Aw5MBW','zgLZy29UBMvJDa','mZa5mwz2vuXAAa','y29UBMvJDa','nvzlsgHmBq','y2XVC2u','EKzZuw4','CMvKAxnFzgLZy29UBMvJDgvK','mtu1mZy5n1nyvK9ItG','mta5mteWBLjWzvrp','ndCXntK0nfvfDgLfuq','uKvesvnFrei','mZq0mZK4A05by2vz'];a0_0x4f18=function(){return _0x8a6364;};return a0_0x4f18();}class RedisClient{constructor(){const _0x3c4d6b=a0_0x57a8;this[_0x3c4d6b(0xbf)]=null,this[_0x3c4d6b(0xd6)]=![];}['connect'](){const _0x5b596f=a0_0x57a8,_0x1f1b89={'AhuXi':function(_0x3601bb,_0x3ae5b6){return _0x3601bb*_0x3ae5b6;},'BtTgq':'redis_connected','UyAYZ':_0x5b596f(0xbe),'RecXP':_0x5b596f(0xc2),'OrCZO':function(_0x57dd74,_0x24ae5e,_0x28f7f3){return _0x57dd74(_0x24ae5e,_0x28f7f3);},'zFsQn':_0x5b596f(0xcb),'GFhtO':_0x5b596f(0xc0),'ZHQYM':_0x5b596f(0xcd),'ohGYm':'redis_init_error','PFXIQ':'Failed\x20to\x20initialize\x20Redis'};if(this['client'])return this['client'];try{return this[_0x5b596f(0xbf)]=new Redis({'host':process[_0x5b596f(0xbb)]['REDIS_HOST']||_0x5b596f(0xc1),'port':_0x1f1b89['OrCZO'](parseInt,process['env']['REDIS_PORT'],0xa)||0x18ec,'password':process[_0x5b596f(0xbb)][_0x5b596f(0xd7)]||undefined,'db':parseInt(process[_0x5b596f(0xbb)][_0x5b596f(0xd3)],0xa)||0x0,'retryStrategy'(_0x4be07e){const _0x1915c1=Math['min'](_0x1f1b89['AhuXi'](_0x4be07e,0x32),0x7d0);return _0x1915c1;}}),this['client']['on'](_0x1f1b89[_0x5b596f(0xce)],()=>{const _0x348c53=_0x5b596f;this['isConnected']=!![],logger[_0x348c53(0xc8)]({'event':_0x1f1b89[_0x348c53(0xc3)]},'Redis\x20connected\x20successfully');}),this[_0x5b596f(0xbf)]['on'](_0x1f1b89['GFhtO'],_0x5f33ac=>{const _0x256974=_0x5b596f;this['isConnected']=![],logger[_0x256974(0xc0)]({'event':_0x1f1b89['UyAYZ'],'error':_0x5f33ac['message']},'Redis\x20connection\x20error:\x20'+_0x5f33ac['message']);}),this[_0x5b596f(0xbf)]['on'](_0x1f1b89['ZHQYM'],()=>{const _0x57e3d2=_0x5b596f;this[_0x57e3d2(0xd6)]=![],logger['warn']({'event':_0x57e3d2(0xcf)},_0x1f1b89['RecXP']);}),this['client'];}catch(_0x5c7c20){logger['error']({'event':_0x1f1b89[_0x5b596f(0xc7)],'error':_0x5c7c20['message']},_0x1f1b89['PFXIQ']);throw _0x5c7c20;}}['getClient'](){const _0x46718b=a0_0x57a8;return!this['client']&&this[_0x46718b(0xcb)](),this['client'];}async[a0_0x26593c(0xd5)](_0x5ec669=0x1388){const _0x9026f3=a0_0x26593c,_0x312cfa={'tHAYJ':function(_0x287028,_0x5d3ba3){return _0x287028===_0x5d3ba3;},'KoJaI':'PONG'};try{const _0x10deb3=this['getClient'](),_0x738b16=await Promise[_0x9026f3(0xba)]([_0x10deb3[_0x9026f3(0xd5)](),new Promise((_0x1ea48a,_0xc9b741)=>setTimeout(()=>_0xc9b741(new Error(_0x9026f3(0xc5))),_0x5ec669))]);return _0x312cfa['tHAYJ'](_0x738b16,_0x312cfa['KoJaI']);}catch(_0x31b1e0){return![];}}async['disconnect'](){const _0x2d4b27=a0_0x26593c;this['client']&&(await this[_0x2d4b27(0xbf)]['quit'](),this['client']=null,this[_0x2d4b27(0xd6)]=![]);}['forceDisconnect'](){const _0x1dc956=a0_0x26593c;this[_0x1dc956(0xbf)]&&(this['client'][_0x1dc956(0xc9)](),this['client']=null,this['isConnected']=![]);}}module[a0_0x26593c(0xbd)]=new RedisClient();
1
+ const a0_0x43dd4c=a0_0x3795;function a0_0x3340(){const _0x902360=['BKPIDvm','CMvKAxnFAw5PDf9LCNjVCG','uMvKAxmGueLorYb0Aw1LB3v0','BwLU','uKvesvnFse9tva','mtmXnhjKAvLLtW','CxnVyKK','lI9SB2DNzxi','mtjeqNrdzhm','AxndB25Uzwn0zwq','DxzRugy','zxHWB3j0CW','nJu0ngnZD2jusW','mtaZmtm4ngXez2LOAq','zw52','AxjNCLe','zxjYB3i','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','y29UBMvJDa','mJaZmdu1AvPICLHz','zM9Yy2veAxnJB25Uzwn0','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','mZq2nZy2u01qDKjA','zgLZy29UBMvJDa','mJyYnJy0weroEuni','y2XVC2u','CgLUzW','BwvZC2fNzq','z2v0q2XPzw50','qMPHuw0','y2XPzw50','uKvesvnFrei','nuvkDfPZEq','Aw5MBW','ndC2ndy3mgXJvvvmvW','mJGXmJKYsevpsMTg'];a0_0x3340=function(){return _0x902360;};return a0_0x3340();}(function(_0x3e858e,_0x524033){const _0x2d236e=a0_0x3795,_0x146d90=_0x3e858e();while(!![]){try{const _0x348cf5=parseInt(_0x2d236e(0x110))/0x1+parseInt(_0x2d236e(0x11b))/0x2+-parseInt(_0x2d236e(0x10b))/0x3+parseInt(_0x2d236e(0x105))/0x4*(parseInt(_0x2d236e(0x118))/0x5)+-parseInt(_0x2d236e(0x100))/0x6*(parseInt(_0x2d236e(0x10e))/0x7)+-parseInt(_0x2d236e(0x104))/0x8*(-parseInt(_0x2d236e(0xfd))/0x9)+-parseInt(_0x2d236e(0x11a))/0xa;if(_0x348cf5===_0x524033)break;else _0x146d90['push'](_0x146d90['shift']());}catch(_0x29114a){_0x146d90['push'](_0x146d90['shift']());}}}(a0_0x3340,0x2188c));const Redis=require('ioredis'),{logger}=require(a0_0x43dd4c(0xff));function a0_0x3795(_0x30928f,_0x15d88e){_0x30928f=_0x30928f-0xf9;const _0x334040=a0_0x3340();let _0x3795fd=_0x334040[_0x30928f];if(a0_0x3795['UdzhcF']===undefined){var _0x46e878=function(_0xfb79b){const _0x45295e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5cbedf='',_0x4bf98c='';for(let _0x3cc837=0x0,_0x4cf9ec,_0x3f15af,_0x5295c6=0x0;_0x3f15af=_0xfb79b['charAt'](_0x5295c6++);~_0x3f15af&&(_0x4cf9ec=_0x3cc837%0x4?_0x4cf9ec*0x40+_0x3f15af:_0x3f15af,_0x3cc837++%0x4)?_0x5cbedf+=String['fromCharCode'](0xff&_0x4cf9ec>>(-0x2*_0x3cc837&0x6)):0x0){_0x3f15af=_0x45295e['indexOf'](_0x3f15af);}for(let _0x5b4a0c=0x0,_0x4f4fc2=_0x5cbedf['length'];_0x5b4a0c<_0x4f4fc2;_0x5b4a0c++){_0x4bf98c+='%'+('00'+_0x5cbedf['charCodeAt'](_0x5b4a0c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4bf98c);};a0_0x3795['XTsmfN']=_0x46e878,a0_0x3795['gYczpR']={},a0_0x3795['UdzhcF']=!![];}const _0xe926a4=_0x334040[0x0],_0x139e65=_0x30928f+_0xe926a4,_0x5ee64a=a0_0x3795['gYczpR'][_0x139e65];return!_0x5ee64a?(_0x3795fd=a0_0x3795['XTsmfN'](_0x3795fd),a0_0x3795['gYczpR'][_0x139e65]=_0x3795fd):_0x3795fd=_0x5ee64a,_0x3795fd;}class RedisClient{constructor(){const _0x259cd2=a0_0x43dd4c;this[_0x259cd2(0x116)]=null,this['isConnected']=![];}['connect'](){const _0x386478=a0_0x43dd4c,_0x99bcf3={'nJbuS':'redis_error','dxgKN':'redis_disconnected','irgrQ':_0x386478(0x109),'bUxXo':function(_0xa8160f,_0x3f9d87,_0x24593f){return _0xa8160f(_0x3f9d87,_0x24593f);},'qsobI':_0x386478(0x108),'rgCpY':_0x386478(0x111),'uvkPf':_0x386478(0xf9),'BjaQm':'Failed\x20to\x20initialize\x20Redis'};if(this['client'])return this['client'];try{return this['client']=new Redis({'host':process['env'][_0x386478(0xfc)]||'localhost','port':_0x99bcf3['bUxXo'](parseInt,process[_0x386478(0x106)]['REDIS_PORT'],0xa)||0x18ec,'password':process['env']['REDIS_PASSWORD']||undefined,'db':parseInt(process['env'][_0x386478(0x117)],0xa)||0x0,'retryStrategy'(_0x1b8daf){const _0x425140=_0x386478,_0x34b5ef=Math[_0x425140(0xfb)](_0x1b8daf*0x32,0x7d0);return _0x34b5ef;}}),this['client']['on']('connect',()=>{const _0x41dd67=_0x386478;this['isConnected']=!![],logger[_0x41dd67(0x119)]({'event':'redis_connected'},_0x41dd67(0x10d));}),this[_0x386478(0x116)]['on'](_0x99bcf3[_0x386478(0xfe)],_0x41bfdd=>{const _0x16efd0=_0x386478;this['isConnected']=![],logger[_0x16efd0(0x108)]({'event':_0x99bcf3[_0x16efd0(0x11c)],'error':_0x41bfdd['message']},'Redis\x20connection\x20error:\x20'+_0x41bfdd['message']);}),this['client']['on'](_0x99bcf3['rgCpY'],()=>{const _0x3cf972=_0x386478;this[_0x3cf972(0x101)]=![],logger['warn']({'event':_0x99bcf3['dxgKN']},_0x99bcf3[_0x3cf972(0x107)]);}),this[_0x386478(0x116)];}catch(_0xc3a28f){logger[_0x386478(0x108)]({'event':_0x99bcf3[_0x386478(0x102)],'error':_0xc3a28f[_0x386478(0x113)]},_0x99bcf3[_0x386478(0x115)]);throw _0xc3a28f;}}['getClient'](){const _0xf34526=a0_0x43dd4c;return!this['client']&&this[_0xf34526(0x10a)](),this[_0xf34526(0x116)];}async['ping'](_0x4f1f64=0x1388){const _0x230f6a=a0_0x43dd4c,_0x33d537={'VAGUG':function(_0xf119b8,_0x4f0f5b){return _0xf119b8===_0x4f0f5b;}};try{const _0x4b0d10=this[_0x230f6a(0x114)](),_0x1b2851=await Promise['race']([_0x4b0d10[_0x230f6a(0x112)](),new Promise((_0xb75d1c,_0x43ee45)=>setTimeout(()=>_0x43ee45(new Error(_0x230f6a(0xfa))),_0x4f1f64))]);return _0x33d537['VAGUG'](_0x1b2851,'PONG');}catch(_0x458d30){return![];}}async[a0_0x43dd4c(0x10f)](){const _0x459f4e=a0_0x43dd4c;this['client']&&(await this[_0x459f4e(0x116)]['quit'](),this['client']=null,this['isConnected']=![]);}[a0_0x43dd4c(0x10c)](){const _0x194dad=a0_0x43dd4c;this['client']&&(this[_0x194dad(0x116)]['disconnect'](),this['client']=null,this[_0x194dad(0x101)]=![]);}}module[a0_0x43dd4c(0x103)]=new RedisClient();
@@ -1 +1 @@
1
- const a0_0x5cd073=a0_0xd07f;(function(_0x2ecfac,_0x39144f){const _0x35c049=a0_0xd07f,_0x27dc57=_0x2ecfac();while(!![]){try{const _0x56cc3c=parseInt(_0x35c049(0x12d))/0x1+parseInt(_0x35c049(0x126))/0x2+parseInt(_0x35c049(0x13b))/0x3+-parseInt(_0x35c049(0x130))/0x4*(parseInt(_0x35c049(0x121))/0x5)+parseInt(_0x35c049(0x12e))/0x6+parseInt(_0x35c049(0x13a))/0x7*(parseInt(_0x35c049(0x135))/0x8)+-parseInt(_0x35c049(0x131))/0x9*(parseInt(_0x35c049(0x136))/0xa);if(_0x56cc3c===_0x39144f)break;else _0x27dc57['push'](_0x27dc57['shift']());}catch(_0x203ade){_0x27dc57['push'](_0x27dc57['shift']());}}}(a0_0xc773,0xe67f1));function a0_0xc773(){const _0x1dc7d5=['CMvKAxnFz2v0x2vYCM9Y','C2v0zxG','mtbguhHTwvK','z2v0q2XPzw50','rMfPBgvKihrVigDLDcbQB2iGzNjVBsbszwrPCW','lI9SB2DNzxi','yu5mtuO','mJaWnZe2nLHisLrhzW','oMv4Cg9YDdO','CgfYC2u','z2v0sM9I','CMvZDgzVCMDLoG','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW','BwvZC2fNzq','mtKZmtGWqw5jExfr','nJC2nJGWnLfRDNDMwa','zw52','mtm2odK1nLneCefdBq','nda3ndneug5zseG','ChvZAa','x3bYzwzPEa','CMvKAxnFzgvSzxrLx2vYCM9Y','mtq1odC0mJrnAwLYse8','odq5mhDlwvDHuG','DhrS','z2v0','zxjYB3i','n2rwvwvsEG','mZK3mJa2nKX5CNrjzW','Ew1Twgi','ChjLzML4'];a0_0xc773=function(){return _0x1dc7d5;};return a0_0xc773();}function a0_0xd07f(_0x2f0231,_0x223c01){_0x2f0231=_0x2f0231-0x120;const _0xc77317=a0_0xc773();let _0xd07f1=_0xc77317[_0x2f0231];if(a0_0xd07f['hzpZvF']===undefined){var _0x55e1b1=function(_0x593516){const _0x598c67='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x39ee60='',_0x44e779='';for(let _0x2c50d3=0x0,_0x2fd937,_0x299b2c,_0x483277=0x0;_0x299b2c=_0x593516['charAt'](_0x483277++);~_0x299b2c&&(_0x2fd937=_0x2c50d3%0x4?_0x2fd937*0x40+_0x299b2c:_0x299b2c,_0x2c50d3++%0x4)?_0x39ee60+=String['fromCharCode'](0xff&_0x2fd937>>(-0x2*_0x2c50d3&0x6)):0x0){_0x299b2c=_0x598c67['indexOf'](_0x299b2c);}for(let _0x19af56=0x0,_0x3286ed=_0x39ee60['length'];_0x19af56<_0x3286ed;_0x19af56++){_0x44e779+='%'+('00'+_0x39ee60['charCodeAt'](_0x19af56)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x44e779);};a0_0xd07f['HRlJCB']=_0x55e1b1,a0_0xd07f['FAKenY']={},a0_0xd07f['hzpZvF']=!![];}const _0x52cc8a=_0xc77317[0x0],_0x417e3e=_0x2f0231+_0x52cc8a,_0x4e5c5f=a0_0xd07f['FAKenY'][_0x417e3e];return!_0x4e5c5f?(_0xd07f1=a0_0xd07f['HRlJCB'](_0xd07f1),a0_0xd07f['FAKenY'][_0x417e3e]=_0xd07f1):_0xd07f1=_0x4e5c5f,_0xd07f1;}const redisClient=require('./redis-client'),{logger}=require(a0_0x5cd073(0x124));class RedisHelper{constructor(){const _0x11b3bc=a0_0x5cd073;this['_prefix']=null,this[_0x11b3bc(0x137)]=parseInt(process['env']['EXPORT_FILE_EXPIRY'],0xa)||0xe10;}get[a0_0x5cd073(0x13d)](){const _0x52c688=a0_0x5cd073;if(!this['_prefix']){const _0x23ce24=process[_0x52c688(0x12f)]['RESTFORGE_PROJECT_NAME']||'default';this[_0x52c688(0x133)]=_0x52c688(0x12a)+_0x23ce24+_0x52c688(0x127);}return this[_0x52c688(0x133)];}async['setJob'](_0x4412c5,_0xe123f1){const _0x474a5b=a0_0x5cd073;try{const _0x5f48c2=redisClient[_0x474a5b(0x122)](),_0x585690=''+this[_0x474a5b(0x13d)]+_0x4412c5;return await _0x5f48c2[_0x474a5b(0x120)](_0x585690,this[_0x474a5b(0x137)],JSON['stringify'](_0xe123f1)),!![];}catch(_0x178cf3){return logger['error']({'event':'redis_set_error','jobId':_0x4412c5,'error':_0x178cf3['message']},'Failed\x20to\x20set\x20job\x20in\x20Redis'),![];}}async[a0_0x5cd073(0x129)](_0x4fb45f){const _0x8f38c9=a0_0x5cd073,_0x3b8741={'ymmXb':_0x8f38c9(0x13e),'znwyh':_0x8f38c9(0x123)};try{const _0x5051fe=redisClient['getClient'](),_0x48f0ed=''+this['prefix']+_0x4fb45f,_0x427b2b=await _0x5051fe[_0x8f38c9(0x138)](_0x48f0ed);return _0x427b2b?JSON[_0x8f38c9(0x128)](_0x427b2b):null;}catch(_0x288d9a){return logger[_0x8f38c9(0x139)]({'event':_0x3b8741[_0x8f38c9(0x13c)],'jobId':_0x4fb45f,'error':_0x288d9a[_0x8f38c9(0x12c)]},_0x3b8741['znwyh']),null;}}async['updateJob'](_0x3b627a,_0x291cf4){const _0xacf81b=a0_0x5cd073,_0x2b4615=await this[_0xacf81b(0x129)](_0x3b627a);if(!_0x2b4615)return![];const _0x4da016={..._0x2b4615,..._0x291cf4};return await this['setJob'](_0x3b627a,_0x4da016);}async['deleteJob'](_0x47063d){const _0x29877d=a0_0x5cd073,_0x12d303={'opZdv':_0x29877d(0x12b)};try{const _0x17f30c=redisClient[_0x29877d(0x122)](),_0x28365f=''+this['prefix']+_0x47063d;return await _0x17f30c['del'](_0x28365f),!![];}catch(_0x4d6ae0){return logger['error']({'event':_0x29877d(0x134),'jobId':_0x47063d,'error':_0x4d6ae0['message']},_0x12d303['opZdv']),![];}}async['getAllJobs'](){const _0x4f0a87=a0_0x5cd073,_0x2717d3={'aNLMJ':'redis_getall_error'};try{const _0x292f6=redisClient[_0x4f0a87(0x122)](),_0x406fb2=await _0x292f6['keys'](this[_0x4f0a87(0x13d)]+'*'),_0x5b8d75=[];for(const _0xfb6be3 of _0x406fb2){const _0x48aa49=await _0x292f6[_0x4f0a87(0x138)](_0xfb6be3);_0x48aa49&&_0x5b8d75[_0x4f0a87(0x132)](JSON['parse'](_0x48aa49));}return _0x5b8d75;}catch(_0x43ff0d){return logger[_0x4f0a87(0x139)]({'event':_0x2717d3[_0x4f0a87(0x125)],'error':_0x43ff0d[_0x4f0a87(0x12c)]},'Failed\x20to\x20get\x20all\x20jobs'),[];}}}module['exports']=new RedisHelper();
1
+ const a0_0x49df84=a0_0x56cd;(function(_0x550d61,_0x251fa8){const _0x59272b=a0_0x56cd,_0x1f14b5=_0x550d61();while(!![]){try{const _0x217f94=parseInt(_0x59272b(0x88))/0x1+parseInt(_0x59272b(0x81))/0x2+-parseInt(_0x59272b(0x97))/0x3*(-parseInt(_0x59272b(0x95))/0x4)+-parseInt(_0x59272b(0x7f))/0x5*(parseInt(_0x59272b(0x94))/0x6)+parseInt(_0x59272b(0x8f))/0x7+-parseInt(_0x59272b(0x8c))/0x8+parseInt(_0x59272b(0x82))/0x9*(-parseInt(_0x59272b(0x99))/0xa);if(_0x217f94===_0x251fa8)break;else _0x1f14b5['push'](_0x1f14b5['shift']());}catch(_0x22f9ac){_0x1f14b5['push'](_0x1f14b5['shift']());}}}(a0_0x2841,0x39aa0));function a0_0x56cd(_0x1989ef,_0x490d31){_0x1989ef=_0x1989ef-0x79;const _0x28412a=a0_0x2841();let _0x56cd40=_0x28412a[_0x1989ef];if(a0_0x56cd['GRKcZl']===undefined){var _0x13390a=function(_0x282f91){const _0xb51163='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x51fb00='',_0xe830bd='';for(let _0x232357=0x0,_0x4cbc97,_0x23e70e,_0x1b77d3=0x0;_0x23e70e=_0x282f91['charAt'](_0x1b77d3++);~_0x23e70e&&(_0x4cbc97=_0x232357%0x4?_0x4cbc97*0x40+_0x23e70e:_0x23e70e,_0x232357++%0x4)?_0x51fb00+=String['fromCharCode'](0xff&_0x4cbc97>>(-0x2*_0x232357&0x6)):0x0){_0x23e70e=_0xb51163['indexOf'](_0x23e70e);}for(let _0x26373b=0x0,_0x163dae=_0x51fb00['length'];_0x26373b<_0x163dae;_0x26373b++){_0xe830bd+='%'+('00'+_0x51fb00['charCodeAt'](_0x26373b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xe830bd);};a0_0x56cd['IsNOOe']=_0x13390a,a0_0x56cd['GAzSOx']={},a0_0x56cd['GRKcZl']=!![];}const _0x206973=_0x28412a[0x0],_0x7613bd=_0x1989ef+_0x206973,_0x25c8b8=a0_0x56cd['GAzSOx'][_0x7613bd];return!_0x25c8b8?(_0x56cd40=a0_0x56cd['IsNOOe'](_0x56cd40),a0_0x56cd['GAzSOx'][_0x7613bd]=_0x56cd40):_0x56cd40=_0x25c8b8,_0x56cd40;}const redisClient=require(a0_0x49df84(0x85)),{logger}=require('./logger');class RedisHelper{constructor(){const _0x5b24a8=a0_0x49df84,_0x126efe={'ckvOE':function(_0x4e30b0,_0x101b9d,_0x1c2cbf){return _0x4e30b0(_0x101b9d,_0x1c2cbf);}};this['_prefix']=null,this[_0x5b24a8(0x98)]=_0x126efe[_0x5b24a8(0x93)](parseInt,process[_0x5b24a8(0x90)][_0x5b24a8(0x79)],0xa)||0xe10;}get['prefix'](){const _0x5b8194=a0_0x49df84;if(!this[_0x5b8194(0x7e)]){const _0x5cb644=process['env'][_0x5b8194(0x80)]||'default';this['_prefix']=_0x5b8194(0x87)+_0x5cb644+_0x5b8194(0x91);}return this['_prefix'];}async['setJob'](_0x1e6324,_0x20dd51){const _0x9da53b=a0_0x49df84,_0x4dce95={'aWhZu':'redis_set_error'};try{const _0x21906d=redisClient['getClient'](),_0x475db8=''+this[_0x9da53b(0x86)]+_0x1e6324;return await _0x21906d[_0x9da53b(0x7b)](_0x475db8,this[_0x9da53b(0x98)],JSON[_0x9da53b(0x8d)](_0x20dd51)),!![];}catch(_0x5b4b2b){return logger['error']({'event':_0x4dce95['aWhZu'],'jobId':_0x1e6324,'error':_0x5b4b2b['message']},_0x9da53b(0x8b)),![];}}async['getJob'](_0x30895d){const _0x461bb4=a0_0x49df84,_0x270e57={'EOUuZ':'Failed\x20to\x20get\x20job\x20from\x20Redis'};try{const _0x2936ec=redisClient[_0x461bb4(0x89)](),_0x5ed04c=''+this[_0x461bb4(0x86)]+_0x30895d,_0x47213e=await _0x2936ec[_0x461bb4(0x7d)](_0x5ed04c);return _0x47213e?JSON['parse'](_0x47213e):null;}catch(_0xa99853){return logger['error']({'event':'redis_get_error','jobId':_0x30895d,'error':_0xa99853['message']},_0x270e57[_0x461bb4(0x84)]),null;}}async[a0_0x49df84(0x7c)](_0x432c15,_0x8d276f){const _0x5197f1=await this['getJob'](_0x432c15);if(!_0x5197f1)return![];const _0x11076d={..._0x5197f1,..._0x8d276f};return await this['setJob'](_0x432c15,_0x11076d);}async[a0_0x49df84(0x83)](_0x5a20ed){const _0x2b06ff=a0_0x49df84,_0x2b3fe9={'RzhIJ':'redis_delete_error'};try{const _0x1fa832=redisClient['getClient'](),_0x27a238=''+this['prefix']+_0x5a20ed;return await _0x1fa832['del'](_0x27a238),!![];}catch(_0x5d4ab1){return logger['error']({'event':_0x2b3fe9['RzhIJ'],'jobId':_0x5a20ed,'error':_0x5d4ab1[_0x2b06ff(0x8a)]},'Failed\x20to\x20delete\x20job\x20from\x20Redis'),![];}}async['getAllJobs'](){const _0x3d7bc9=a0_0x49df84,_0x38cf5a={'jGRzT':'redis_getall_error','yTcHE':_0x3d7bc9(0x92)};try{const _0x45687f=redisClient[_0x3d7bc9(0x89)](),_0x448753=await _0x45687f['keys'](this['prefix']+'*'),_0xdd6828=[];for(const _0x314f36 of _0x448753){const _0x13e526=await _0x45687f[_0x3d7bc9(0x7d)](_0x314f36);_0x13e526&&_0xdd6828[_0x3d7bc9(0x7a)](JSON['parse'](_0x13e526));}return _0xdd6828;}catch(_0x368074){return logger['error']({'event':_0x38cf5a[_0x3d7bc9(0x8e)],'error':_0x368074['message']},_0x38cf5a[_0x3d7bc9(0x96)]),[];}}}module['exports']=new RedisHelper();function a0_0x2841(){const _0x570cd9=['y2T2t0u','mtu2nMPgDgzsrW','mtC4ngPWDwDltG','EvrJseu','otzusu1SDfO','DhrS','mtaZnJbiz2vxAvy','rvHqt1jux0zjtevFrvHqsvjz','ChvZAa','C2v0zxG','DxbKyxrLsM9I','z2v0','x3bYzwzPEa','mJG4nuviyxj1wq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','odi3otaYEwH5zxjR','mZe3n2TxANPNrq','zgvSzxrLsM9I','ru9vDvO','lI9YzwrPCY1JBgLLBNq','ChjLzML4','CMvZDgzVCMDLoG','mZmZmdC5wK5xrLjP','z2v0q2XPzw50','BwvZC2fNzq','rMfPBgvKihrVihnLDcbQB2iGAw4GuMvKAxm','mZiZntCYmfPlCLncva','C3rYAw5NAwz5','AKDsELq','mJC2otyYmeXOEwvHuW','zw52','oMv4Cg9YDdO','rMfPBgvKihrVigDLDcbHBgWGAM9ICW'];a0_0x2841=function(){return _0x570cd9;};return a0_0x2841();}