@restforgejs/platform 5.2.12 → 5.2.13

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 (169) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/fast-track.js +4 -7
  5. package/generators/lib/templates/dashboard-catalog.js +1 -1
  6. package/generators/lib/templates/db-connection-env.js +1 -1
  7. package/generators/lib/templates/dbschema-catalog.js +1 -1
  8. package/generators/lib/templates/field-validation-catalog.js +1 -1
  9. package/generators/lib/templates/mysql-template.js +1 -1
  10. package/generators/lib/templates/oracle-template.js +1 -1
  11. package/generators/lib/templates/postgres-template.js +1 -1
  12. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  13. package/generators/lib/templates/sqlite-template.js +1 -1
  14. package/integrity-manifest.json +18 -18
  15. package/package.json +1 -1
  16. package/scripts/verify-integrity.js +1 -1
  17. package/server.js +1 -1
  18. package/src/components/handlers/adjust_handler.js +1 -1
  19. package/src/components/handlers/audit_handler.js +1 -1
  20. package/src/components/handlers/delete_handler.js +1 -1
  21. package/src/components/handlers/export_handler.js +1 -1
  22. package/src/components/handlers/import_handler.js +1 -1
  23. package/src/components/handlers/insert_handler.js +1 -1
  24. package/src/components/handlers/update_handler.js +1 -1
  25. package/src/components/handlers/upload_handler.js +1 -1
  26. package/src/components/handlers/workflow_handler.js +1 -1
  27. package/src/components/integrations/webhook.js +1 -1
  28. package/src/consumers/baseConsumer.js +1 -1
  29. package/src/consumers/declarativeMapper.js +1 -1
  30. package/src/consumers/handlers/apiHandler.js +1 -1
  31. package/src/consumers/handlers/consoleHandler.js +1 -1
  32. package/src/consumers/handlers/databaseHandler.js +1 -1
  33. package/src/consumers/handlers/index.js +1 -1
  34. package/src/consumers/handlers/kafkaHandler.js +1 -1
  35. package/src/consumers/index.js +1 -1
  36. package/src/consumers/messageTransformer.js +1 -1
  37. package/src/consumers/validator.js +1 -1
  38. package/src/core/db/dialect/base-dialect.js +1 -1
  39. package/src/core/db/dialect/index.js +1 -1
  40. package/src/core/db/dialect/mysql-dialect.js +1 -1
  41. package/src/core/db/dialect/oracle-dialect.js +1 -1
  42. package/src/core/db/dialect/postgres-dialect.js +1 -1
  43. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  44. package/src/core/db/flatten-helper.js +1 -1
  45. package/src/core/db/query-builder-error.js +1 -1
  46. package/src/core/db/query-builder.js +1 -1
  47. package/src/core/db/relation-helper.js +1 -1
  48. package/src/core/handlers/delete_handler.js +1 -1
  49. package/src/core/handlers/insert_handler.js +1 -1
  50. package/src/core/handlers/update_handler.js +1 -1
  51. package/src/core/models/base-model.js +1 -1
  52. package/src/core/utils/cache-manager.js +1 -1
  53. package/src/core/utils/component-engine.js +1 -1
  54. package/src/core/utils/context-builder.js +1 -1
  55. package/src/core/utils/datetime-formatter.js +1 -1
  56. package/src/core/utils/datetime-parser.js +1 -1
  57. package/src/core/utils/db.js +1 -1
  58. package/src/core/utils/logger.js +1 -1
  59. package/src/core/utils/payload-loader.js +1 -1
  60. package/src/core/utils/security-checks.js +1 -1
  61. package/src/middleware/body-options.js +1 -1
  62. package/src/middleware/cors.js +1 -1
  63. package/src/middleware/idempotency.js +1 -1
  64. package/src/middleware/rate-limiter.js +1 -1
  65. package/src/middleware/request-logger.js +1 -1
  66. package/src/middleware/security-headers.js +1 -1
  67. package/src/models/base-model-mysql.js +1 -1
  68. package/src/models/base-model-oracle.js +1 -1
  69. package/src/models/base-model-sqlite.js +1 -1
  70. package/src/models/base-model.js +1 -1
  71. package/src/pro/caching/redis-client.js +1 -1
  72. package/src/pro/caching/redis-helper.js +1 -1
  73. package/src/pro/consumers/baseConsumer.js +1 -1
  74. package/src/pro/consumers/declarativeMapper.js +1 -1
  75. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  76. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  77. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  78. package/src/pro/consumers/handlers/index.js +1 -1
  79. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  80. package/src/pro/consumers/index.js +1 -1
  81. package/src/pro/consumers/messageTransformer.js +1 -1
  82. package/src/pro/consumers/validator.js +1 -1
  83. package/src/pro/database/base-model-mysql.js +1 -1
  84. package/src/pro/database/base-model-oracle.js +1 -1
  85. package/src/pro/database/base-model-sqlite.js +1 -1
  86. package/src/pro/database/db-mysql.js +1 -1
  87. package/src/pro/database/db-oracle.js +1 -1
  88. package/src/pro/database/db-sqlite.js +1 -1
  89. package/src/pro/excel/excel-generator.js +1 -1
  90. package/src/pro/excel/excel-parser.js +1 -1
  91. package/src/pro/excel/export-service.js +1 -1
  92. package/src/pro/excel/export_handler.js +1 -1
  93. package/src/pro/excel/import-service.js +1 -1
  94. package/src/pro/excel/import-validator.js +1 -1
  95. package/src/pro/excel/import_handler.js +1 -1
  96. package/src/pro/excel/upsert-builder.js +1 -1
  97. package/src/pro/idgen/idgen-routes.js +1 -1
  98. package/src/pro/integrations/lookup-resolver.js +1 -1
  99. package/src/pro/integrations/upload-handler-v2.js +1 -1
  100. package/src/pro/integrations/upload-handler.js +1 -1
  101. package/src/pro/integrations/webhook.js +1 -1
  102. package/src/pro/locking/lock-routes.js +1 -1
  103. package/src/pro/locking/resource-lock-manager.js +1 -1
  104. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  105. package/src/pro/messaging/kafkaService.js +1 -1
  106. package/src/pro/messaging/messagehubService.js +1 -1
  107. package/src/pro/messaging/rabbitmqService.js +1 -1
  108. package/src/pro/scheduler/job-manager.js +1 -1
  109. package/src/pro/scheduler/job-routes.js +1 -1
  110. package/src/pro/scheduler/job-validator.js +1 -1
  111. package/src/pro/storage/base-storage-provider.js +1 -1
  112. package/src/pro/storage/file-metadata-helper.js +1 -1
  113. package/src/pro/storage/index.js +1 -1
  114. package/src/pro/storage/local-storage-provider.js +1 -1
  115. package/src/pro/storage/s3-storage-provider.js +1 -1
  116. package/src/pro/storage/upload-cleanup-job.js +1 -1
  117. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  118. package/src/pro/storage/upload-pending-tracker.js +1 -1
  119. package/src/pro/websocket/broadcast-helper.js +1 -1
  120. package/src/pro/websocket/index.js +1 -1
  121. package/src/pro/websocket/livesync-server.js +1 -1
  122. package/src/pro/websocket/ws-broadcaster.js +1 -1
  123. package/src/services/export-service.js +1 -1
  124. package/src/services/import-service.js +1 -1
  125. package/src/services/kafkaConsumerService.js +1 -1
  126. package/src/services/kafkaService.js +1 -1
  127. package/src/services/messagehubService.js +1 -1
  128. package/src/services/rabbitmqService.js +1 -1
  129. package/src/utils/cache-invalidation-registry.js +1 -1
  130. package/src/utils/cache-manager.js +1 -1
  131. package/src/utils/component-engine.js +1 -1
  132. package/src/utils/config-extractor.js +1 -1
  133. package/src/utils/consumerLogger.js +1 -1
  134. package/src/utils/context-builder.js +1 -1
  135. package/src/utils/dashboard-helpers.js +1 -1
  136. package/src/utils/dateHelper.js +1 -1
  137. package/src/utils/datetime-formatter.js +1 -1
  138. package/src/utils/datetime-parser.js +1 -1
  139. package/src/utils/db-bootstrap.js +1 -1
  140. package/src/utils/db-mysql.js +1 -1
  141. package/src/utils/db-oracle.js +1 -1
  142. package/src/utils/db-sqlite.js +1 -1
  143. package/src/utils/db.js +1 -1
  144. package/src/utils/demo-generator.js +1 -1
  145. package/src/utils/excel-generator.js +1 -1
  146. package/src/utils/excel-parser.js +1 -1
  147. package/src/utils/file-watcher.js +1 -1
  148. package/src/utils/id-generator.js +1 -1
  149. package/src/utils/idempotency-manager.js +1 -1
  150. package/src/utils/import-validator.js +1 -1
  151. package/src/utils/license-client.js +1 -1
  152. package/src/utils/lock-manager.js +1 -1
  153. package/src/utils/logger.js +1 -1
  154. package/src/utils/lookup-resolver.js +1 -1
  155. package/src/utils/payload-loader.js +1 -1
  156. package/src/utils/processor-response.js +1 -1
  157. package/src/utils/rabbitmq.js +1 -1
  158. package/src/utils/redis-client.js +1 -1
  159. package/src/utils/redis-helper.js +1 -1
  160. package/src/utils/request-scope.js +1 -1
  161. package/src/utils/security-checks.js +1 -1
  162. package/src/utils/service-resolver.js +1 -1
  163. package/src/utils/shutdown-coordinator.js +1 -1
  164. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  165. package/src/utils/sql-table-extractor.js +1 -1
  166. package/src/utils/trusted-keys.js +1 -1
  167. package/src/utils/upload-handler.js +1 -1
  168. package/src/utils/upsert-builder.js +1 -1
  169. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- function a0_0x1fb6(_0x522127,_0x1a7df4){_0x522127=_0x522127-0x1d8;const _0x5a1699=a0_0x5a16();let _0x1fb674=_0x5a1699[_0x522127];if(a0_0x1fb6['coFuhe']===undefined){var _0x48fb45=function(_0x32d0e6){const _0x1062d9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4682b4='',_0x438577='';for(let _0x193086=0x0,_0x3fc0c4,_0x1d7a8e,_0x213116=0x0;_0x1d7a8e=_0x32d0e6['charAt'](_0x213116++);~_0x1d7a8e&&(_0x3fc0c4=_0x193086%0x4?_0x3fc0c4*0x40+_0x1d7a8e:_0x1d7a8e,_0x193086++%0x4)?_0x4682b4+=String['fromCharCode'](0xff&_0x3fc0c4>>(-0x2*_0x193086&0x6)):0x0){_0x1d7a8e=_0x1062d9['indexOf'](_0x1d7a8e);}for(let _0x5e9f8c=0x0,_0x29246e=_0x4682b4['length'];_0x5e9f8c<_0x29246e;_0x5e9f8c++){_0x438577+='%'+('00'+_0x4682b4['charCodeAt'](_0x5e9f8c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x438577);};a0_0x1fb6['lEVdjw']=_0x48fb45,a0_0x1fb6['opBrkc']={},a0_0x1fb6['coFuhe']=!![];}const _0x5ebd87=_0x5a1699[0x0],_0x1f40bc=_0x522127+_0x5ebd87,_0x142793=a0_0x1fb6['opBrkc'][_0x1f40bc];return!_0x142793?(_0x1fb674=a0_0x1fb6['lEVdjw'](_0x1fb674),a0_0x1fb6['opBrkc'][_0x1f40bc]=_0x1fb674):_0x1fb674=_0x142793,_0x1fb674;}const a0_0x29028c=a0_0x1fb6;(function(_0x25646d,_0x1bd853){const _0x5e8590=a0_0x1fb6,_0x572c1f=_0x25646d();while(!![]){try{const _0x4a145b=-parseInt(_0x5e8590(0x1f5))/0x1*(-parseInt(_0x5e8590(0x208))/0x2)+parseInt(_0x5e8590(0x21f))/0x3+-parseInt(_0x5e8590(0x1ef))/0x4*(-parseInt(_0x5e8590(0x222))/0x5)+parseInt(_0x5e8590(0x21d))/0x6+parseInt(_0x5e8590(0x204))/0x7+parseInt(_0x5e8590(0x205))/0x8+-parseInt(_0x5e8590(0x20b))/0x9*(parseInt(_0x5e8590(0x20c))/0xa);if(_0x4a145b===_0x1bd853)break;else _0x572c1f['push'](_0x572c1f['shift']());}catch(_0x12834d){_0x572c1f['push'](_0x572c1f['shift']());}}}(a0_0x5a16,0x19210));const redisClient=require(a0_0x29028c(0x217)),{logger}=require('./logger'),{v4:uuidv4}=require('uuid');function a0_0x5a16(){const _0x1a69e9=['mtK4oty2wwDMEe9l','Bg9JA19LEhrLBMrLza','uKvbrcbSB2nRigvYCM9Y','nJbyAKDUrhy','zxHWAxjL','BK1vtwO','CMv0CNLdB3vUDa','ywnXDwLYzvDYAxrLtg9JAW','x2LUAxrPywXPEMvK','Cg93','q2fUBM90ihjLBgvHC2uGBg9JAYaTig5VDcbVD25LCG','D29YA2vYswq','x3jLDhj5rgvSyxK','wu9fqwu','x3n0CMf0zwD5','D2fYBG','D3jPDgu','x2vUC3vYzuLUAxrPywXPEMvK','r2LeAhe','ywXS','sg5Ktgy','D3jPDgvFBg9JA193ywL0Aw5N','v05MCwy','zxzHBa','r3fqCxG','sNjSCwy','Bg9JA19YzwXLyxnLx2vYCM9Y','ChjLzML4','z2v0q2XPzw50','C2v0zxG','z2v0','x3jLDhj5q291BNq','v2fPDgLUzYbMB3iGv1jjveuGBg9JAYb0BYbYzwXLyxnL','s2XUzMO','r0Htt0m','x2vUywjSzwq','zxjYB3i','mtyXmZjTAKLwAxu','CMv0CNLezwXHEq','C2v0','x3DVCMTLCKLK','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','CMvHza','nda0mLzuv0vLtG','te9ds19esvnuuKLcvvrfrf9ftKfcteve','zgvMyxvSDfruta','BwvZC2fNzq','C3rYyxrLz3K','Bg9JA19JB25MAwDFAw5PDa','y3LUv0u','CMvHzf9SB2nRx3jLBgvHC2vK','qwfXExi','C3vIC3rYAw5N','uKnxyvu','v1jjveuGBg9JAYbYzwPLy3rLzcaTihjLy29YzcbIDxn5','zgvIDwC','tg9JAYbLEhrLBMqGzxjYB3i','x2rLzMf1BhruveW','otyYotq4uLzfwgfx','mZqYmdGWAwPbA2zo','tg9JAYbuveWGzxH0zw5Kzwq','yNvPBgrmB2nRs2v5','odjxBw9Py0i','C2XLzxa','CKzmrwm','mJeWmda3ohz4svLQrq','mJbKEw9vAeW','vffIq1m','D3jPDgvFBg9JA190Aw1LB3v0','Aw5JBhvKzxm','C2zgDLy','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','uKvbrcbSB2nRihjLBgvHC2vK','zw52','zgvS','D3jPDgvFBg9JA19YzwPLy3rLza','CMvHzf9SB2nRx3rPBwvVDxq','lI9YzwrPCY1JBgLLBNq','x2LUAxrdB25MAwC','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','zw5HyMXLza','D3jPDgvFBg9JA19Hy3f1AxjLza','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','nJuZmdG4EfDhuhrY','CMvHzf9SB2nRx3DHAxrPBMC'];a0_0x5a16=function(){return _0x1a69e9;};return a0_0x5a16();}class LockManager{constructor(){const _0x143bf1=a0_0x29028c;this['_prefix']=null,this['_enabled']=null,this['_defaultTTL']=null,this['_retryCount']=null,this['_retryDelay']=null,this[_0x143bf1(0x1d8)]=null,this[_0x143bf1(0x1f2)]=null,this[_0x143bf1(0x227)]=![];}[a0_0x29028c(0x218)](){const _0xfb20c5=a0_0x29028c,_0x8a6880={'mTwDm':function(_0x4e88e7,_0x51d8d7,_0x4c7ada){return _0x4e88e7(_0x51d8d7,_0x4c7ada);},'RCWaU':_0xfb20c5(0x1fa)};this['_prefix']='rf:lock:',this['_enabled']=process[_0xfb20c5(0x213)][_0xfb20c5(0x1f6)]==='true',this[_0xfb20c5(0x203)]=parseInt(process[_0xfb20c5(0x213)]['LOCK_DISTRIBUTED_TTL'],0xa)||0xa,this['_retryCount']=_0x8a6880['mTwDm'](parseInt,process[_0xfb20c5(0x213)]['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3,this['_retryDelay']=parseInt(process[_0xfb20c5(0x213)]['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64,this['_strategy']=process['env'][_0xfb20c5(0x21c)]||'retry',this[_0xfb20c5(0x1f2)]='worker-'+process['pid'],this[_0xfb20c5(0x227)]=!![],logger['info']({'event':_0x8a6880[_0xfb20c5(0x1ff)],'enabled':this['_enabled'],'strategy':this[_0xfb20c5(0x1d8)],'ttl':this['_defaultTTL'],'retryCount':this[_0xfb20c5(0x1e9)],'retryDelay':this['_retryDelay'],'workerId':this['_workerId']},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0xfb20c5(0x1ed)]+',\x20strategy:\x20'+this['_strategy']);}['_ensureInitialized'](){const _0x378df8=a0_0x29028c;!this[_0x378df8(0x227)]&&this['_initConfig']();}get[a0_0x29028c(0x1e5)](){const _0xac65f0=a0_0x29028c;return this[_0xac65f0(0x1db)](),this['_prefix'];}get['enabled'](){const _0x1e12cb=a0_0x29028c;return this[_0x1e12cb(0x1db)](),this[_0x1e12cb(0x1ed)];}get[a0_0x29028c(0x1f7)](){const _0xeeb5b9=a0_0x29028c;return this['_ensureInitialized'](),this[_0xeeb5b9(0x203)];}get['retryCount'](){const _0x389f9e=a0_0x29028c;return this[_0x389f9e(0x1db)](),this['_retryCount'];}get['retryDelay'](){const _0x316c0f=a0_0x29028c;return this['_ensureInitialized'](),this[_0x316c0f(0x22b)];}get[a0_0x29028c(0x1f9)](){const _0x400b15=a0_0x29028c;return this[_0x400b15(0x1db)](),this['_strategy'];}get[a0_0x29028c(0x22a)](){const _0x1d0547=a0_0x29028c;return this['_ensureInitialized'](),this[_0x1d0547(0x1f2)];}['buildLockKey'](_0x588225){const _0x57d8ed=a0_0x29028c,{module:_0x2a0e16,endpoint:_0x480465,lockType:_0x685c53,recordId:_0x4976f6}=_0x588225;if(_0x4976f6)return''+this[_0x57d8ed(0x1e5)]+_0x2a0e16+':'+_0x480465+':'+_0x4976f6+':'+_0x685c53;return''+this['prefix']+_0x2a0e16+':'+_0x480465+':'+_0x685c53;}['generateLockValue'](){return this['workerId']+':'+uuidv4()+':'+Date['now']();}async['acquireReadLock'](_0x10bbc4){const _0x4c608e=a0_0x29028c,_0x2fc165={'sfFvV':_0x4c608e(0x1da),'rFLEc':function(_0x30f4e6,_0x649911){return _0x30f4e6<_0x649911;},'YOEAe':'read_lock_acquired','cynWE':_0x4c608e(0x216),'LVULe':'READ\x20lock\x20acquire\x20timeout','brroa':_0x4c608e(0x221)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x3a8536=this[_0x4c608e(0x207)]({..._0x10bbc4,'lockType':_0x2fc165[_0x4c608e(0x210)]}),_0x10a8a1=this[_0x4c608e(0x207)]({..._0x10bbc4,'lockType':_0x4c608e(0x1f4)}),_0x3b22b0=this['generateLockValue']();try{const _0x3e200a=redisClient[_0x4c608e(0x1e6)]();for(let _0x275938=0x0;_0x2fc165[_0x4c608e(0x20a)](_0x275938,this[_0x4c608e(0x225)]);_0x275938++){const _0x488256=await _0x3e200a['get'](_0x3a8536);if(!_0x488256){await _0x3e200a['incr'](_0x10a8a1),await _0x3e200a[_0x4c608e(0x223)](_0x10a8a1,this[_0x4c608e(0x1f7)]);const _0x394218=_0x10a8a1+':'+_0x3b22b0;return await _0x3e200a[_0x4c608e(0x1e7)](_0x394218,this['defaultTTL'],_0x3b22b0),logger[_0x4c608e(0x201)]({'event':_0x2fc165[_0x4c608e(0x22c)],'key':_0x10a8a1,'value':_0x3b22b0},'READ\x20lock\x20acquired'),{'success':!![],'lockValue':_0x3b22b0,'lockKey':_0x394218};}logger['debug']({'event':_0x4c608e(0x21e),'writeKey':_0x3a8536,'attempt':_0x275938},_0x4c608e(0x1ea)),await this['sleep'](this['retryDelay']*Math[_0x4c608e(0x228)](0x2,_0x275938));}return logger['warn']({'event':_0x2fc165[_0x4c608e(0x1fb)],'key':_0x10a8a1},_0x2fc165['LVULe']),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x209bd8){return logger['error']({'event':'read_lock_error','error':_0x209bd8[_0x4c608e(0x1f8)]},_0x2fc165['brroa']),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x29028c(0x226)](_0x1d1d38){const _0x4285c6=a0_0x29028c,_0x2858b6={'WNfqf':_0x4285c6(0x1f4),'fHVlm':_0x4285c6(0x21b),'vhRib':'reject','JItMw':'WRITE\x20lock\x20acquired\x20(reject\x20mode)','oSyzF':_0x4285c6(0x200),'XpOyG':function(_0xd82918,_0x2148d6){return _0xd82918===_0x2148d6;},'GHSOC':_0x4285c6(0x219),'GqPqx':'Waiting\x20for\x20locks\x20to\x20release','HndLf':_0x4285c6(0x20e),'ytuCr':'write_lock_error'};if(!this[_0x4285c6(0x21a)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x5f0ff0=this['buildLockKey']({..._0x1d1d38,'lockType':_0x4285c6(0x1da)}),_0x4d784f=this[_0x4285c6(0x207)]({..._0x1d1d38,'lockType':_0x2858b6[_0x4285c6(0x1e0)]}),_0x4221ca=this['generateLockValue']();try{const _0x1e8117=redisClient[_0x4285c6(0x1e6)]();if(this['strategy']==='reject'){const _0x9bf771=await _0x1e8117[_0x4285c6(0x1f1)](_0x5f0ff0,_0x4221ca,'EX',this[_0x4285c6(0x1f7)],'NX');if(_0x9bf771==='OK')return logger['debug']({'event':_0x2858b6['fHVlm'],'key':_0x5f0ff0,'value':_0x4221ca,'strategy':_0x2858b6['vhRib']},_0x2858b6['JItMw']),{'success':!![],'lockValue':_0x4221ca,'lockKey':_0x5f0ff0};return logger[_0x4285c6(0x201)]({'event':_0x4285c6(0x215),'key':_0x5f0ff0},_0x2858b6['oSyzF']),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x439dad=0x0;_0x439dad<this['retryCount'];_0x439dad++){const [_0x3478eb,_0x189ef4]=await Promise[_0x4285c6(0x1dd)]([_0x1e8117[_0x4285c6(0x1e8)](_0x4d784f),_0x1e8117['get'](_0x5f0ff0)]);if(!_0x189ef4&&(!_0x3478eb||parseInt(_0x3478eb)===0x0)){const _0x17e95b=await _0x1e8117[_0x4285c6(0x1f1)](_0x5f0ff0,_0x4221ca,'EX',this[_0x4285c6(0x1f7)],'NX');if(_0x2858b6['XpOyG'](_0x17e95b,'OK'))return logger['debug']({'event':_0x4285c6(0x21b),'key':_0x5f0ff0,'value':_0x4221ca,'strategy':'retry'},_0x2858b6[_0x4285c6(0x1ec)]),{'success':!![],'lockValue':_0x4221ca,'lockKey':_0x5f0ff0};}logger['debug']({'event':_0x4285c6(0x1df),'writeKey':_0x5f0ff0,'readCount':_0x3478eb,'attempt':_0x439dad},_0x2858b6[_0x4285c6(0x1e2)]),await this[_0x4285c6(0x209)](this[_0x4285c6(0x1f0)]*Math['pow'](0x2,_0x439dad));}return logger['warn']({'event':_0x2858b6[_0x4285c6(0x1de)],'key':_0x5f0ff0},'WRITE\x20lock\x20acquire\x20timeout'),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x5a89ba){return logger['error']({'event':_0x2858b6['ytuCr'],'error':_0x5a89ba['message']},'WRITE\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x2b5e11,_0x2e1b3d){const _0x2d326=a0_0x29028c,_0x502b34={'Klnfj':function(_0x14197e,_0x530996){return _0x14197e(_0x530996);},'rklvp':_0x2d326(0x212),'CWnCa':_0x2d326(0x229),'GiDhq':'Lock\x20release\x20error'};if(!this['enabled']||!_0x2b5e11)return!![];try{const _0x46548f=redisClient['getClient']();if(_0x2b5e11[_0x2d326(0x20f)](':read:')){await _0x46548f[_0x2d326(0x214)](_0x2b5e11);const _0x50a005=_0x2b5e11[_0x2d326(0x1fe)](0x0,_0x2b5e11['lastIndexOf'](':')),_0x2c69da=await _0x46548f['get'](_0x50a005);return _0x2c69da&&_0x502b34[_0x2d326(0x1eb)](parseInt,_0x2c69da)>0x0&&await _0x46548f['decr'](_0x50a005),logger['debug']({'event':_0x2d326(0x1fc),'key':_0x2b5e11},_0x502b34['rklvp']),!![];}const _0x58c922=_0x2d326(0x211),_0x422456=await _0x46548f[_0x2d326(0x1e1)](_0x58c922,0x1,_0x2b5e11,_0x2e1b3d);if(_0x422456===0x1)return logger['debug']({'event':'write_lock_released','key':_0x2b5e11},'WRITE\x20lock\x20released'),!![];return logger[_0x2d326(0x1d9)]({'event':_0x2d326(0x1f3),'key':_0x2b5e11},_0x502b34['CWnCa']),![];}catch(_0x177abc){return logger[_0x2d326(0x1ee)]({'event':_0x2d326(0x1e4),'key':_0x2b5e11,'error':_0x177abc['message']},_0x502b34[_0x2d326(0x1dc)]),![];}}async['extendLock'](_0x4948d5,_0x149c24,_0x55d9c0=null){const _0x3d900f=a0_0x29028c,_0x1cc263={'rWcvp':function(_0x406c81,_0x2580ab){return _0x406c81===_0x2580ab;},'gqUMc':_0x3d900f(0x220),'Aaqyr':'lock_extend_error','DlaNd':_0x3d900f(0x202)};if(!this['enabled']||!_0x4948d5)return!![];try{const _0x2a538b=redisClient['getClient'](),_0x2b9d91='\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',_0x188ea7=await _0x2a538b[_0x3d900f(0x1e1)](_0x2b9d91,0x1,_0x4948d5,_0x149c24,_0x55d9c0||this['defaultTTL']);if(_0x1cc263['rWcvp'](_0x188ea7,0x1))return logger['debug']({'event':_0x1cc263['gqUMc'],'key':_0x4948d5,'ttl':_0x55d9c0||this[_0x3d900f(0x1f7)]},_0x3d900f(0x206)),!![];return![];}catch(_0x57749d){return logger[_0x3d900f(0x1ee)]({'event':_0x1cc263[_0x3d900f(0x1fd)],'key':_0x4948d5,'error':_0x57749d[_0x3d900f(0x1f8)]},_0x1cc263['DlaNd']),![];}}['isEnabled'](){return this['enabled'];}[a0_0x29028c(0x209)](_0xc87621){return new Promise(_0x53137d=>setTimeout(_0x53137d,_0xc87621));}async['getLockInfo'](_0x399951){const _0x285172=a0_0x29028c,_0x5da814={'nMUMj':'write','Jrlqf':_0x285172(0x1f4),'TQbCS':function(_0x50ac1f,_0x323975){return _0x50ac1f||_0x323975;},'gWjpw':function(_0x35ff0e,_0x1372a0){return _0x35ff0e(_0x1372a0);}};if(!this['enabled'])return{'enabled':![]};try{const _0x35260a=redisClient[_0x285172(0x1e6)](),_0x249b79=this[_0x285172(0x207)]({..._0x399951,'lockType':_0x5da814[_0x285172(0x224)]}),_0x49d215=this[_0x285172(0x207)]({..._0x399951,'lockType':_0x5da814[_0x285172(0x1e3)]}),[_0x3858ec,_0xf9439b]=await Promise[_0x285172(0x1dd)]([_0x35260a['get'](_0x249b79),_0x35260a[_0x285172(0x1e8)](_0x49d215)]);return{'enabled':!![],'writeLock':_0x5da814[_0x285172(0x20d)](_0x3858ec,null),'readCount':_0x5da814['gWjpw'](parseInt,_0xf9439b)||0x0,'writeKey':_0x249b79,'readKey':_0x49d215};}catch(_0x5e050a){return{'enabled':!![],'error':_0x5e050a['message']};}}}module['exports']=new LockManager();
1
+ const a0_0x8a01d0=a0_0x2038;(function(_0x30f12d,_0x1f5ae0){const _0x1e3be1=a0_0x2038,_0x440bd9=_0x30f12d();while(!![]){try{const _0x3ceda9=-parseInt(_0x1e3be1(0xf4))/0x1*(parseInt(_0x1e3be1(0x11f))/0x2)+-parseInt(_0x1e3be1(0xd6))/0x3*(parseInt(_0x1e3be1(0x114))/0x4)+parseInt(_0x1e3be1(0xe9))/0x5+parseInt(_0x1e3be1(0xcd))/0x6+-parseInt(_0x1e3be1(0xcc))/0x7*(parseInt(_0x1e3be1(0x119))/0x8)+parseInt(_0x1e3be1(0x100))/0x9+parseInt(_0x1e3be1(0xd0))/0xa;if(_0x3ceda9===_0x1f5ae0)break;else _0x440bd9['push'](_0x440bd9['shift']());}catch(_0x5b6a49){_0x440bd9['push'](_0x440bd9['shift']());}}}(a0_0x3df4,0x570a0));function a0_0x2038(_0x3941c3,_0x389ef3){_0x3941c3=_0x3941c3-0xcb;const _0x3df422=a0_0x3df4();let _0x20387e=_0x3df422[_0x3941c3];if(a0_0x2038['UJYPqT']===undefined){var _0x3dc1f4=function(_0x489c3f){const _0x2ed4a0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1e0c75='',_0x26ab88='';for(let _0x362dfa=0x0,_0x17b988,_0x49b0e5,_0x101b0d=0x0;_0x49b0e5=_0x489c3f['charAt'](_0x101b0d++);~_0x49b0e5&&(_0x17b988=_0x362dfa%0x4?_0x17b988*0x40+_0x49b0e5:_0x49b0e5,_0x362dfa++%0x4)?_0x1e0c75+=String['fromCharCode'](0xff&_0x17b988>>(-0x2*_0x362dfa&0x6)):0x0){_0x49b0e5=_0x2ed4a0['indexOf'](_0x49b0e5);}for(let _0x1cdc49=0x0,_0x21fa17=_0x1e0c75['length'];_0x1cdc49<_0x21fa17;_0x1cdc49++){_0x26ab88+='%'+('00'+_0x1e0c75['charCodeAt'](_0x1cdc49)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x26ab88);};a0_0x2038['gLVJtk']=_0x3dc1f4,a0_0x2038['BXWxIw']={},a0_0x2038['UJYPqT']=!![];}const _0x21e208=_0x3df422[0x0],_0x54e74d=_0x3941c3+_0x21e208,_0x5c8f79=a0_0x2038['BXWxIw'][_0x54e74d];return!_0x5c8f79?(_0x20387e=a0_0x2038['gLVJtk'](_0x20387e),a0_0x2038['BXWxIw'][_0x54e74d]=_0x20387e):_0x20387e=_0x5c8f79,_0x20387e;}function a0_0x3df4(){const _0x2d087e=['x3bYzwzPEa','x3jLDhj5rgvSyxK','D3jPDgu','mJHesgjpy2i','te11ue8','ChjLzML4','zw5HyMXLza','vMf3q3C','odi0uwT4sM1i','C2v0','D3jPDgvFBg9JA19Hy3f1AxjLza','m3W1Fdf8n3WYFdb8nhW2','uKvbrcbSB2nRigvYCM9Y','svz6zxa','mJbjB2fQvLC','BgfZDeLUzgv4t2y','CuH0vw8','mZqWmJDUAxL1Dge','mJm2mtaWmffKA2XAra','zgvIDwC','A0HSs2u','nJK0otGXme1xENzyCG','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','CMvHzf9SB2nRx3DHAxrPBMC','te9Vthe','tg9JAYbYzwXLyxnLigvYCM9Y','DNnJrLq','mJmWnJy3D1f1se9I','x2vUC3vYzuLUAxrPywXPEMvK','CgLK','CMvHzf9SB2nRx3jLBgvHC2vK','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','AxnfBMfIBgvK','CMvHza','sgHoANm','z2v0','D3jPDgvFBg9JA193ywL0Aw5N','zgvMyxvSDfruta','C2XLzxa','DuLJsgq','z2v0q2XPzw50','CMvHzf9SB2nRx2fJCxvPCMvK','D3jPDgvFBg9JA19YzwXLyxnLza','zw52','u01MDeS','CMv0CNLezwXHEq','mtq1mJmWmg5UAxDyEa','te9ds19esvnuuKLcvvrfrf9uveW','Bg9JA19LEhrLBMrLza','lI9YzwrPCY1JBgLLBNq','tKvvt0O','wgn1C0O','x3DVCMTLCKLK','zxH0zw5Ktg9JAW','Aw5JBhvKzxm','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','x2LUAxrdB25MAwC','mtqZm3DVsffivq','x3n0CMf0zwD5','ywnXDwLYzvDYAxrLtg9JAW','D3jPDgvFBg9JA19LCNjVCG','D2fYBG','zgvJCG','x3jLDhj5q291BNq','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','C2v0zxG','x2rLzMf1BhruveW','CMy6Bg9JAZO','Dhj1zq','mJC3mJyZA0jjt1jb','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','Bg9JA19JB25MAwDFAw5PDa','zgvS','z2vUzxjHDgvmB2nRvMfSDwu','vwTPt0m','lcbZDhjHDgvNEtOG','ywnXDwLYzvjLywrmB2nR','D3jPDgvFBg9JA190Aw1LB3v0','zxjYB3i','x2LUAxrPywXPEMvK','uKvbrcbSB2nRihjLBgvHC2vK','yNvPBgrmB2nRs2v5','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','D29YA2vYlq','rw5jwKG','x2vUywjSzwq'];a0_0x3df4=function(){return _0x2d087e;};return a0_0x3df4();}const redisClient=require(a0_0x8a01d0(0xec)),{logger}=require('./logger'),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0x304e4b=a0_0x8a01d0,_0x4a594d=_0x304e4b(0x11c)['split']('|');let _0x38d605=0x0;while(!![]){switch(_0x4a594d[_0x38d605++]){case'0':this['_strategy']=null;continue;case'1':this[_0x304e4b(0xfd)]=null;continue;case'2':this[_0x304e4b(0x112)]=null;continue;case'3':this[_0x304e4b(0x111)]=null;continue;case'4':this[_0x304e4b(0xef)]=null;continue;case'5':this['_enabled']=null;continue;case'6':this['_initialized']=![];continue;case'7':this['_retryCount']=null;continue;}break;}}[a0_0x8a01d0(0xf3)](){const _0x142ca3=a0_0x8a01d0,_0x49c3de={'SMftK':_0x142ca3(0xfe),'mXCfU':function(_0x42f49f,_0x349dc9,_0x1e68db){return _0x42f49f(_0x349dc9,_0x1e68db);},'kHlKe':_0x142ca3(0x102)};this[_0x142ca3(0x111)]=_0x49c3de[_0x142ca3(0xe7)],this['_enabled']=process[_0x142ca3(0xe6)]['LOCK_DISTRIBUTED_ENABLED']===_0x142ca3(0xff),this['_defaultTTL']=parseInt(process[_0x142ca3(0xe6)][_0x142ca3(0xea)],0xa)||0xa,this['_retryCount']=parseInt(process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3,this[_0x142ca3(0x112)]=_0x49c3de['mXCfU'](parseInt,process['env'][_0x142ca3(0xf2)],0xa)||0x64,this['_strategy']=process[_0x142ca3(0xe6)]['LOCK_DISTRIBUTED_STRATEGY']||'retry',this['_workerId']=_0x142ca3(0x10e)+process[_0x142ca3(0xd8)],this['_initialized']=!![],logger['info']({'event':_0x49c3de[_0x142ca3(0xcf)],'enabled':this[_0x142ca3(0x110)],'strategy':this[_0x142ca3(0xf5)],'ttl':this['_defaultTTL'],'retryCount':this[_0x142ca3(0xfa)],'retryDelay':this['_retryDelay'],'workerId':this['_workerId']},_0x142ca3(0xd1)+this[_0x142ca3(0x110)]+_0x142ca3(0x106)+this['_strategy']);}[a0_0x8a01d0(0xd7)](){const _0x58eb5f=a0_0x8a01d0;!this[_0x58eb5f(0x10a)]&&this[_0x58eb5f(0xf3)]();}get['prefix'](){const _0x3c75eb=a0_0x8a01d0;return this[_0x3c75eb(0xd7)](),this[_0x3c75eb(0x111)];}get[a0_0x8a01d0(0x117)](){const _0x363196=a0_0x8a01d0;return this[_0x363196(0xd7)](),this[_0x363196(0x110)];}get['defaultTTL'](){return this['_ensureInitialized'](),this['_defaultTTL'];}get['retryCount'](){const _0x5572df=a0_0x8a01d0;return this[_0x5572df(0xd7)](),this['_retryCount'];}get[a0_0x8a01d0(0xe8)](){return this['_ensureInitialized'](),this['_retryDelay'];}get['strategy'](){const _0x272b7f=a0_0x8a01d0;return this['_ensureInitialized'](),this[_0x272b7f(0xf5)];}get['workerId'](){const _0x4b7086=a0_0x8a01d0;return this[_0x4b7086(0xd7)](),this[_0x4b7086(0xef)];}['buildLockKey'](_0x2e2ae5){const _0x55f168=a0_0x8a01d0,{module:_0x13f601,endpoint:_0x594b4d,lockType:_0x1ce4cd,recordId:_0x47d017}=_0x2e2ae5;if(_0x47d017)return''+this['prefix']+_0x13f601+':'+_0x594b4d+':'+_0x47d017+':'+_0x1ce4cd;return''+this[_0x55f168(0x116)]+_0x13f601+':'+_0x594b4d+':'+_0x1ce4cd;}[a0_0x8a01d0(0x104)](){const _0x5e6580={'uTlsK':function(_0x2c53e4){return _0x2c53e4();}};return this['workerId']+':'+_0x5e6580['uTlsK'](uuidv4)+':'+Date['now']();}async[a0_0x8a01d0(0x107)](_0x2dfd6c){const _0x4f5829=a0_0x8a01d0,_0x567b1f={'pRkZT':_0x4f5829(0x113),'UkiOC':_0x4f5829(0xdc),'zbTxh':function(_0x51a134,_0x58d687){return _0x51a134<_0x58d687;},'NEUOJ':'READ\x20lock\x20acquired','VawCw':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release','qHtUo':function(_0x40ac89,_0x339e44){return _0x40ac89*_0x339e44;},'EnIZH':'read_lock_error'};if(!this[_0x4f5829(0x117)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x47ab0f=this[_0x4f5829(0x10c)]({..._0x2dfd6c,'lockType':_0x567b1f['pRkZT']}),_0x41149f=this['buildLockKey']({..._0x2dfd6c,'lockType':_0x567b1f[_0x4f5829(0x105)]}),_0x548b2b=this['generateLockValue']();try{const _0x20f2a3=redisClient['getClient']();for(let _0x241412=0x0;_0x567b1f['zbTxh'](_0x241412,this['retryCount']);_0x241412++){const _0x4601db=await _0x20f2a3['get'](_0x47ab0f);if(!_0x4601db){await _0x20f2a3['incr'](_0x41149f),await _0x20f2a3['expire'](_0x41149f,this[_0x4f5829(0xe0)]);const _0x1c6047=_0x41149f+':'+_0x548b2b;return await _0x20f2a3[_0x4f5829(0xfc)](_0x1c6047,this[_0x4f5829(0xe0)],_0x548b2b),logger[_0x4f5829(0xce)]({'event':_0x4f5829(0xe4),'key':_0x41149f,'value':_0x548b2b},_0x567b1f[_0x4f5829(0xed)]),{'success':!![],'lockValue':_0x548b2b,'lockKey':_0x1c6047};}logger[_0x4f5829(0xce)]({'event':_0x4f5829(0xd2),'writeKey':_0x47ab0f,'attempt':_0x241412},_0x567b1f[_0x4f5829(0x118)]),await this[_0x4f5829(0xe1)](_0x567b1f[_0x4f5829(0xcb)](this['retryDelay'],Math['pow'](0x2,_0x241412)));}return logger[_0x4f5829(0xf8)]({'event':'read_lock_timeout','key':_0x41149f},_0x4f5829(0xda)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x155d9f){return logger[_0x4f5829(0x109)]({'event':_0x567b1f[_0x4f5829(0x10f)],'error':_0x155d9f['message']},_0x4f5829(0x11d)),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x8a01d0(0xf6)](_0x1ff95f){const _0x21b8d9=a0_0x8a01d0,_0x3e109f={'OepyW':'write','vscFT':'reject','XcusJ':function(_0x1ea844,_0x1b8016){return _0x1ea844===_0x1b8016;},'mDaQl':_0x21b8d9(0x11b),'gtTZP':'WRITE\x20lock\x20acquired\x20(reject\x20mode)','HhNjs':'write_lock_rejected','yMRAG':'retry','LOoLq':'WRITE\x20lock\x20acquired\x20(retry\x20mode)','cmCSL':_0x21b8d9(0xdf),'mNGvF':'Waiting\x20for\x20locks\x20to\x20release','bfxjG':function(_0x1274e4,_0x25ef07){return _0x1274e4*_0x25ef07;}};if(!this[_0x21b8d9(0x117)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x496f0d=this['buildLockKey']({..._0x1ff95f,'lockType':_0x3e109f['OepyW']}),_0x475970=this[_0x21b8d9(0x10c)]({..._0x1ff95f,'lockType':'read'}),_0x5c2724=this[_0x21b8d9(0x104)]();try{const _0x246602=redisClient[_0x21b8d9(0xe3)]();if(this['strategy']===_0x3e109f[_0x21b8d9(0xd5)]){const _0x2535c9=await _0x246602[_0x21b8d9(0x11a)](_0x496f0d,_0x5c2724,'EX',this[_0x21b8d9(0xe0)],'NX');if(_0x3e109f[_0x21b8d9(0xee)](_0x2535c9,'OK'))return logger[_0x21b8d9(0xce)]({'event':_0x3e109f['mDaQl'],'key':_0x496f0d,'value':_0x5c2724,'strategy':_0x3e109f[_0x21b8d9(0xd5)]},_0x3e109f['gtTZP']),{'success':!![],'lockValue':_0x5c2724,'lockKey':_0x496f0d};return logger[_0x21b8d9(0xce)]({'event':_0x3e109f[_0x21b8d9(0xdd)],'key':_0x496f0d},'WRITE\x20lock\x20rejected\x20-\x20record\x20busy'),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x15f9dc=0x0;_0x15f9dc<this['retryCount'];_0x15f9dc++){const [_0x135b64,_0x25706b]=await Promise['all']([_0x246602[_0x21b8d9(0xde)](_0x475970),_0x246602[_0x21b8d9(0xde)](_0x496f0d)]);if(!_0x25706b&&(!_0x135b64||parseInt(_0x135b64)===0x0)){const _0x277add=await _0x246602[_0x21b8d9(0x11a)](_0x496f0d,_0x5c2724,'EX',this['defaultTTL'],'NX');if(_0x277add==='OK')return logger[_0x21b8d9(0xce)]({'event':'write_lock_acquired','key':_0x496f0d,'value':_0x5c2724,'strategy':_0x3e109f['yMRAG']},_0x3e109f[_0x21b8d9(0xd3)]),{'success':!![],'lockValue':_0x5c2724,'lockKey':_0x496f0d};}logger['debug']({'event':_0x3e109f['cmCSL'],'writeKey':_0x496f0d,'readCount':_0x135b64,'attempt':_0x15f9dc},_0x3e109f['mNGvF']),await this[_0x21b8d9(0xe1)](_0x3e109f['bfxjG'](this['retryDelay'],Math['pow'](0x2,_0x15f9dc)));}return logger[_0x21b8d9(0xf8)]({'event':_0x21b8d9(0x108),'key':_0x496f0d},_0x21b8d9(0xfb)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x29275e){return logger[_0x21b8d9(0x109)]({'event':_0x21b8d9(0xf7),'error':_0x29275e['message']},'WRITE\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x4544af,_0x2de8ef){const _0x1ea3e3=a0_0x8a01d0,_0x43e59a={'wGhEA':':read:','hnIEA':'Cannot\x20release\x20lock\x20-\x20not\x20owner','ocIcW':'lock_release_error'};if(!this['enabled']||!_0x4544af)return!![];try{const _0x2e5023=redisClient['getClient']();if(_0x4544af[_0x1ea3e3(0xf1)](_0x43e59a['wGhEA'])){await _0x2e5023[_0x1ea3e3(0x103)](_0x4544af);const _0x20f8bc=_0x4544af['substring'](0x0,_0x4544af[_0x1ea3e3(0x120)](':')),_0x1c8475=await _0x2e5023[_0x1ea3e3(0xde)](_0x20f8bc);return _0x1c8475&&parseInt(_0x1c8475)>0x0&&await _0x2e5023[_0x1ea3e3(0xf9)](_0x20f8bc),logger['debug']({'event':_0x1ea3e3(0xd9),'key':_0x4544af},_0x1ea3e3(0x10b)),!![];}const _0x51bf6b=_0x1ea3e3(0x101),_0x184660=await _0x2e5023['eval'](_0x51bf6b,0x1,_0x4544af,_0x2de8ef);if(_0x184660===0x1)return logger[_0x1ea3e3(0xce)]({'event':_0x1ea3e3(0xe5),'key':_0x4544af},'WRITE\x20lock\x20released'),!![];return logger['warn']({'event':_0x1ea3e3(0x10d),'key':_0x4544af},_0x43e59a['hnIEA']),![];}catch(_0x140271){return logger[_0x1ea3e3(0x109)]({'event':_0x43e59a['ocIcW'],'key':_0x4544af,'error':_0x140271['message']},_0x1ea3e3(0xd4)),![];}}async[a0_0x8a01d0(0xf0)](_0xa359ca,_0x27285a,_0x3303ff=null){const _0x2b4810=a0_0x8a01d0,_0x166d8c={'LMuPO':function(_0xe72d9a,_0x2bc4df){return _0xe72d9a===_0x2bc4df;},'uIcHd':_0x2b4810(0xeb),'WoRSC':'Lock\x20extend\x20error'};if(!this[_0x2b4810(0x117)]||!_0xa359ca)return!![];try{const _0x4d33ce=redisClient['getClient'](),_0xe65295='\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',_0x14fd12=await _0x4d33ce['eval'](_0xe65295,0x1,_0xa359ca,_0x27285a,_0x3303ff||this['defaultTTL']);if(_0x166d8c[_0x2b4810(0x115)](_0x14fd12,0x1))return logger[_0x2b4810(0xce)]({'event':_0x166d8c[_0x2b4810(0xe2)],'key':_0xa359ca,'ttl':_0x3303ff||this['defaultTTL']},'Lock\x20TTL\x20extended'),!![];return![];}catch(_0x43197f){return logger['error']({'event':'lock_extend_error','key':_0xa359ca,'error':_0x43197f['message']},_0x166d8c['WoRSC']),![];}}[a0_0x8a01d0(0xdb)](){return this['enabled'];}['sleep'](_0x3e63c6){return new Promise(_0x2e7f32=>setTimeout(_0x2e7f32,_0x3e63c6));}async['getLockInfo'](_0x4c5413){const _0x51b73b=a0_0x8a01d0,_0x4d7dae={'IVzep':function(_0xc3a984,_0x4b3f41){return _0xc3a984||_0x4b3f41;}};if(!this['enabled'])return{'enabled':![]};try{const _0x593788=redisClient['getClient'](),_0x1c4b23=this[_0x51b73b(0x10c)]({..._0x4c5413,'lockType':_0x51b73b(0x113)}),_0x5bfcc3=this[_0x51b73b(0x10c)]({..._0x4c5413,'lockType':'read'}),[_0x25920a,_0x4d97ee]=await Promise['all']([_0x593788['get'](_0x1c4b23),_0x593788[_0x51b73b(0xde)](_0x5bfcc3)]);return{'enabled':!![],'writeLock':_0x4d7dae[_0x51b73b(0x11e)](_0x25920a,null),'readCount':parseInt(_0x4d97ee)||0x0,'writeKey':_0x1c4b23,'readKey':_0x5bfcc3};}catch(_0x1f903b){return{'enabled':!![],'error':_0x1f903b['message']};}}}module['exports']=new LockManager();
@@ -1 +1 @@
1
- function a0_0x22da(_0x519345,_0x113fa8){_0x519345=_0x519345-0xcd;const _0x12bf42=a0_0x12bf();let _0x22da7a=_0x12bf42[_0x519345];if(a0_0x22da['yONNLf']===undefined){var _0x327958=function(_0xbf7113){const _0xe55a31='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x360b75='',_0x8e2429='';for(let _0x17f336=0x0,_0x5124b5,_0x2f067b,_0x4b2dd6=0x0;_0x2f067b=_0xbf7113['charAt'](_0x4b2dd6++);~_0x2f067b&&(_0x5124b5=_0x17f336%0x4?_0x5124b5*0x40+_0x2f067b:_0x2f067b,_0x17f336++%0x4)?_0x360b75+=String['fromCharCode'](0xff&_0x5124b5>>(-0x2*_0x17f336&0x6)):0x0){_0x2f067b=_0xe55a31['indexOf'](_0x2f067b);}for(let _0x518e1c=0x0,_0x4c776d=_0x360b75['length'];_0x518e1c<_0x4c776d;_0x518e1c++){_0x8e2429+='%'+('00'+_0x360b75['charCodeAt'](_0x518e1c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x8e2429);};a0_0x22da['pTMKLJ']=_0x327958,a0_0x22da['lADOuy']={},a0_0x22da['yONNLf']=!![];}const _0x1a3245=_0x12bf42[0x0],_0x4cc158=_0x519345+_0x1a3245,_0x3987b5=a0_0x22da['lADOuy'][_0x4cc158];return!_0x3987b5?(_0x22da7a=a0_0x22da['pTMKLJ'](_0x22da7a),a0_0x22da['lADOuy'][_0x4cc158]=_0x22da7a):_0x22da7a=_0x3987b5,_0x22da7a;}const a0_0x1f1287=a0_0x22da;(function(_0x8bd2a1,_0x169c89){const _0x21cdbe=a0_0x22da,_0x165c6b=_0x8bd2a1();while(!![]){try{const _0x17636f=parseInt(_0x21cdbe(0x176))/0x1*(parseInt(_0x21cdbe(0x10b))/0x2)+parseInt(_0x21cdbe(0x15a))/0x3+-parseInt(_0x21cdbe(0x14c))/0x4+-parseInt(_0x21cdbe(0x156))/0x5*(parseInt(_0x21cdbe(0xe0))/0x6)+-parseInt(_0x21cdbe(0x125))/0x7*(parseInt(_0x21cdbe(0x137))/0x8)+-parseInt(_0x21cdbe(0x16b))/0x9+parseInt(_0x21cdbe(0x16a))/0xa;if(_0x17636f===_0x169c89)break;else _0x165c6b['push'](_0x165c6b['shift']());}catch(_0x492363){_0x165c6b['push'](_0x165c6b['shift']());}}}(a0_0x12bf,0x1be6c));const pino=require('pino'),fs=require('fs'),path=require(a0_0x1f1287(0xfb));let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel=a0_0x1f1287(0x153),sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x12bf(){const _0x3b17ac=['CMvXlMHLywrLCNmUyxv0Ag9YAxPHDgLVBG','sxvkB3G','A1P5CNO','zhHru24','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','CgfKrw5K','Eu96Egu','reiGuxvLCNK','CMvWzwf0','uwHztva','Dw5RBM93BG','Dw5Oyw5KBgvKuMvQzwn0Aw9U','CMvMCMvZAf90B2TLBG','C3rKu2vYAwfSAxPLCNm','A256tg4','Ahr0Cf9LCNjVCG','quXurvi','ChjVzhvJDgLVBG','Ag9ZDa','Cg9YDa','CgLU','mtiWuNPxrurd','DxnLCI1Hz2vUDa','Dg9vChbLCKnHC2u','DxjS','zxjYB3i','w1jfrefdvevexq','Dg5OwvK','D2fYBMLUzW','Bwf4','y3jLzgL0x2nHCMq','Ec1Yzxf1zxn0lwLK','C3rHDhvZq29Kzq','q09ntuLu','zgjFDhjHBNnHy3rPB24','E21Zz30','ALfMz1y','Cg9ZDgDYzxnXBa','Ahj0Aw1L','ChjPDMf0zv9RzxK','zuvqqM4','rw1PBMW','suXRz2S','BLLnBgy','tujJCLm','Ew9lAvi','revmrvrf','u0vmrunu','Cgf0Aa','CuDTrKi','vfjbtLnbq1rjt05FqKvhsu4','ChjVAMvJDa','C3rYAw5NAwz5','yxHQDMO','B3rW','C2vYDMvYx3n0yxj0Aw5N','CMHptNK','y3DK','wLHnuNG','yKnMBwq','vMXryMO','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','zw5KCg9PBNrFCMvNAxn0zxjLza','u1fmx0Xpr19ftKfcteve','mtK1mZG2u2j5s1Dn','vu5ltK9xtG','Cxn4tem','u1fmx0Xpr19tte9xx1riuKvtse9mra','A2v5CW','tK9erv9ftLy','yxbWlMXVzW','DhLWzq','C3nU','vNLIzLe','qKD3rgG','u293r2y','uMvnwui','CMvZDgzVCMDL','zMXVB3i','Dxb0Aw1L','ywnJzxnZx3rVA2vU','wKnxu3K','y1fRsgC','C3fSx3f1zxj5','ue5Sr0q','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','Dg9Rzw4','y29UBMvJDgLVBG','yLbXC3C','CgfZC3DVCMq','ntG2mtK0zhjtsNjM','sw50zxjUywWGC2vYDMvYigvYCM9Y','AgvHzgvYCW','z2v0sgvHzgvYCW','y29Kzq','DxnLCG','uK9mtejbq0S','zxjYB3iUBg9N','ANnVBG','BMfTzq','vvr6uLC','BKrtDK0','zLDUAuq','C3rHy2S','iokvKqRILzeGifbVCNqGicaGicaGidOG','w09lxsbqCM9Qzwn0igXVywrLzdOG','CNL3CMO','Dg9mB3DLCKnHC2u','ofjHy0rwyW','tM9Kzs5QCW','CgfZC3DK','yM9KEq','vhjHBNnHy3rPB24G','C3rHDhvZ','zgf0ywjHC2vFy29UzMLN','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','w1jfrefdveveoMHHC2HD','qwvJCKe','vfjbtLnbq1rjt05Fq09ntuLu','zw52AxjVBM1LBNq','C3bSAxq','C29Tzq','Bwf0y2G','qMnQwNm','Dw5JyxvNAhrfEgnLChrPB24','CM93C0fMzMvJDgvK','suLYtvG','u1fmx0Xpr19qqvjbtvm','Aw1wtMK','nteWotq0DM5UEw9y','tI9b','qKrIsKG','sLDux1nfq1jfva','BwfW','zMf0ywXFzxjYB3i','Aw5MBW','zgvIDwC','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','ChDK','mtG5mtbwr21xC3G','Ahr0Cf9Yzxf1zxn0','sfruuca','CMvTB3rLqwrKCMvZCW','mZqXndq1CxjJCwPx','BwvTB3j5vxnHz2u','te9hx1rpx0zjteu','q1jfqvrf','Dhj1zq','swTqCK0','Dg9ju09tDhjPBMC','y3z2','w1jfrefdveveoNrVA2vUxq','zMLSzv9SB2DNAw5Nx2vUywjSzwq','icdIHPiG','y3jLyxrLv3jPDgvtDhjLyw0','B2jQzwn0','yxv0Ag9YAxPHDgLVBG','DhjPBq','icbvuKW6icaGia','mZm1mJC4mfHlsgPAvG','mtmWodq1nLHhC1PfEG','zw5oqwy','twrJqM4','rxjYB3i','tvDLCLK','DgvZDa','ms4WlJu','BwvZC2fNzq','yxbPs2v5','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','C3rHCNrZv2L0Aa','muXvve52Dq','C2vJCMv0','s0zpvuG','zw52','AM9PBG','C2vYDMvYx3jLywr5','yxbPx2TLEq','iokvKqRILzeGifbYB2PLy3qGicaGidOG','Bwv0Ag9K','D2fYBG','ALncEuK','BgvUz3rO','zxHPC3rZu3LUyW','zMf0ywW','C2vYDMLJzuLUzM8','qxLsrgK','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','u1LtoKHioK1noNnZ','zgjFCxvLCNK'];a0_0x12bf=function(){return _0x3b17ac;};return a0_0x12bf();}const prettyPrintOptions={'colorize':!![],'translateTime':a0_0x1f1287(0x187),'ignore':a0_0x1f1287(0x186),'singleLine':![],'levelFirst':!![],'messageFormat':a0_0x1f1287(0xee),'customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env'][a0_0x1f1287(0x110)]!==a0_0x1f1287(0xdc),logLevel=process[a0_0x1f1287(0x179)]['LOG_LEVEL']||a0_0x1f1287(0x152);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process['env']['APP_VERSION']||a0_0x1f1287(0x171),'env':process[a0_0x1f1287(0x179)][a0_0x1f1287(0x110)]||'development'},'timestamp':pino['stdTimeFunctions']['isoTime'],'redact':{'paths':[a0_0x1f1287(0x189),a0_0x1f1287(0x154),a0_0x1f1287(0x124),a0_0x1f1287(0x121),'apiKey','DB_PASSWORD',a0_0x1f1287(0x14f)],'censor':a0_0x1f1287(0xe5)},'serializers':{'req':_0x28d356=>({'id':_0x28d356['id'],'method':_0x28d356[a0_0x1f1287(0x17e)],'url':_0x28d356['url'],'path':_0x28d356[a0_0x1f1287(0xfb)],'remoteAddress':_0x28d356['ip']||_0x28d356[a0_0x1f1287(0x122)]?.[a0_0x1f1287(0x159)]}),'res':_0x47745f=>({'statusCode':_0x47745f[a0_0x1f1287(0xeb)],'headers':_0x47745f[a0_0x1f1287(0x128)]?.()}),'err':pino[a0_0x1f1287(0xd8)]['err']}});function initFileLogging(){const _0x2beacb=a0_0x1f1287,_0x785e8e={'Ovvyz':function(_0x5319cc,_0x3d31e8){return _0x5319cc===_0x3d31e8;},'IIrMX':'true','lZgSx':_0x2beacb(0x118),'vQWMJ':_0x2beacb(0x153),'rhONy':function(_0x2f598f,_0x3ab68b){return _0x2f598f(_0x3ab68b);},'TBdel':_0x2beacb(0x111),'imVNi':_0x2beacb(0x12c),'VybfQ':_0x2beacb(0x163),'IuJox':function(_0x867963,_0x23b00b,_0x2d1dd){return _0x867963(_0x23b00b,_0x2d1dd);},'qERwA':'info'};if(fileLoggingInitialized)return;logToFile=_0x785e8e['Ovvyz'](process['env'][_0x2beacb(0x15c)],_0x785e8e[_0x2beacb(0x149)]);const _0xf4e39f=process[_0x2beacb(0x179)][_0x2beacb(0x13e)]||'default';logDir=process[_0x2beacb(0x179)]['LOG_DIR']||'./logs/'+_0xf4e39f,serviceName=process['env']['SERVICE_NAME']||_0x785e8e['lZgSx'],sqlLogEnabled=_0x785e8e['Ovvyz'](process['env'][_0x2beacb(0x10a)],_0x2beacb(0x15e)),sqlLogLevel=process['env']['SQL_LOG_LEVEL']||_0x785e8e['vQWMJ'],sqlLogParams=process['env'][_0x2beacb(0x14a)]!=='false',sqlLogSlowThreshold=_0x785e8e[_0x2beacb(0x103)](parseInt,process['env'][_0x2beacb(0x10e)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x56a20d=path['resolve'](process[_0x2beacb(0x104)](),logDir);try{!fs[_0x2beacb(0x182)](_0x56a20d)&&fs['mkdirSync'](_0x56a20d,{'recursive':!![]});}catch(_0x4e4336){console[_0x2beacb(0xe4)]('Failed\x20to\x20create\x20log\x20directory\x20'+_0x56a20d+':',_0x4e4336[_0x2beacb(0x172)]),fileLoggingInitialized=!![];return;}const _0x5e6a60=path[_0x2beacb(0x17a)](_0x56a20d,_0x785e8e['TBdel']),_0x1e12cd=path['join'](_0x56a20d,_0x785e8e[_0x2beacb(0x14b)]);try{appLogStream=fs[_0x2beacb(0x165)](_0x5e6a60,{'flags':'a'}),errorLogStream=fs[_0x2beacb(0x165)](_0x1e12cd,{'flags':'a'}),fileLoggingInitialized=!![];const _0x1a6c9b={'event':_0x785e8e[_0x2beacb(0x114)],'logDir':_0x56a20d,'files':[_0x785e8e['TBdel'],_0x785e8e[_0x2beacb(0x14b)]]},_0x535153='File\x20logging\x20enabled:\x20'+_0x56a20d;logger['info'](_0x1a6c9b,_0x535153),_0x785e8e[_0x2beacb(0x18a)](writeToFileLog,{..._0x1a6c9b,'level':'info','msg':_0x535153,'time':new Date()['toISOString']()},_0x785e8e['qERwA']);}catch(_0x51d83d){console[_0x2beacb(0xe4)](_0x2beacb(0x174),_0x51d83d['message']),fileLoggingInitialized=!![];}}function writeToFileLog(_0x3450ca,_0x34cdae){const _0x137e02=a0_0x1f1287,_0x497e1e={'IcAcM':function(_0x348c06,_0x3103c7){return _0x348c06||_0x3103c7;},'tnhYY':function(_0x1842e3,_0x1303cb){return _0x1842e3+_0x1303cb;},'SnSmh':function(_0x20d859,_0x227b7e){return _0x20d859===_0x227b7e;},'jmRPP':_0x137e02(0x183)};if(_0x497e1e['IcAcM'](!logToFile,!appLogStream))return;const _0xe21647={'service':serviceName,..._0x3450ca},_0xf1cdc9=_0x497e1e[_0x137e02(0xe6)](JSON[_0x137e02(0xff)](_0xe21647),'\x0a');appLogStream['write'](_0xf1cdc9),(_0x497e1e['SnSmh'](_0x34cdae,'error')||_0x34cdae===_0x497e1e['jmRPP'])&&(errorLogStream&&errorLogStream['write'](_0xf1cdc9));}const createRequestLogger=(_0x43a9c5={})=>{return logger['child'](_0x43a9c5);},logServerStart=_0x5edb4e=>{const _0x3e82cb=a0_0x1f1287,_0x40d72d={'ThqKV':function(_0x38d84b,_0x1e41df){return _0x38d84b-_0x1e41df;},'AyRDi':function(_0x4d3e7d,_0x19c679){return _0x4d3e7d(_0x19c679);},'qnqaz':'ACTIVE','QIHdx':'info'},_0x2d86c5=_0x3e82cb(0x108),_0x1079c8=Math[_0x3e82cb(0xe8)](0x0,0x37-_0x2d86c5[_0x3e82cb(0x181)]),_0x5736b8=Math[_0x3e82cb(0x119)](_0x1079c8/0x2),_0x3a082e=_0x40d72d['ThqKV'](_0x1079c8,_0x5736b8),_0x2c8407='║'+'\x20'['repeat'](_0x5736b8)+_0x2d86c5+'\x20'[_0x3e82cb(0xd3)](_0x3a082e)+'║',_0x27a5d5='\x0a╔═══════════════════════════════════════════════════════╗\x0a'+_0x2c8407+_0x3e82cb(0x120)+(_0x5edb4e[_0x3e82cb(0x142)]||_0x3e82cb(0x138))['padEnd'](0x26)+_0x3e82cb(0x17d)+(_0x5edb4e['project']||_0x3e82cb(0x14d))[_0x3e82cb(0xd0)](0x26)+_0x3e82cb(0x133)+_0x40d72d[_0x3e82cb(0x185)](String,_0x5edb4e[_0x3e82cb(0xde)]||0xbb8)[_0x3e82cb(0xd0)](0x26)+'\x20║\x0a║\x20\x20Config\x20\x20\x20\x20\x20\x20:\x20'+(_0x5edb4e['configFile']||'Default')['padEnd'](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x5edb4e[_0x3e82cb(0x173)]?_0x40d72d['qnqaz']:'NOT\x20ACTIVE')[_0x3e82cb(0xd0)](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console['log'](_0x27a5d5);const _0x5e1253={'event':_0x3e82cb(0x102),'project':_0x5edb4e[_0x3e82cb(0xfe)],'port':_0x5edb4e['port'],'config':_0x5edb4e['configFile'],'apiKeyEnabled':!!_0x5edb4e['apiKey']};logger['info'](_0x5e1253),writeToFileLog({..._0x5e1253,'level':_0x40d72d['QIHdx'],'msg':'Server\x20starting:\x20'+_0x5edb4e['project']+'\x20on\x20port\x20'+_0x5edb4e[_0x3e82cb(0xde)],'time':new Date()['toISOString']()},_0x40d72d['QIHdx']);},logServerReady=_0x4fb052=>{const _0x598e1b=a0_0x1f1287,_0x1faa4f={'event':_0x598e1b(0x17b),'port':_0x4fb052['port'],'module':_0x4fb052['module'],'healthCheck':_0x4fb052['healthCheck'],'serviceInfo':_0x4fb052[_0x598e1b(0x184)],'baseUrl':_0x4fb052['baseUrl']},_0x29ad74='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x4fb052[_0x598e1b(0xde)];logger['info'](_0x1faa4f,_0x29ad74),writeToFileLog({..._0x1faa4f,'level':'info','msg':_0x29ad74,'time':new Date()[_0x598e1b(0x160)]()},_0x598e1b(0x152)),_0x4fb052['healthCheck']&&logger['info']('\x20\x20Health:\x20'+_0x4fb052['healthCheck']),_0x4fb052['serviceInfo']&&logger[_0x598e1b(0x152)]('\x20\x20Info:\x20\x20\x20'+_0x4fb052['serviceInfo']),_0x4fb052['baseUrl']&&logger[_0x598e1b(0x152)](_0x598e1b(0x169)+_0x4fb052['baseUrl']);},logProjectLoaded=(_0x29ce0b,_0x3937b9)=>{const _0x1ca979=a0_0x1f1287,_0x139a71={'jSByI':'project_loaded','ZCWSy':'info'},_0x44cc66={'event':_0x139a71[_0x1ca979(0x180)],'project':_0x29ce0b,'path':_0x3937b9},_0x5d12e3=_0x1ca979(0x134)+_0x29ce0b;logger[_0x1ca979(0x152)](_0x44cc66,_0x5d12e3),writeToFileLog({..._0x44cc66,'level':_0x139a71[_0x1ca979(0x11c)],'msg':_0x5d12e3,'time':new Date()['toISOString']()},'info');},logEndpointRegistered=(_0x33f98d,_0x16c6f9)=>{const _0x19381e=a0_0x1f1287,_0x2bc663={'fWniD':_0x19381e(0x109),'UrZit':function(_0x18dc29,_0x47acf2,_0xee9684){return _0x18dc29(_0x47acf2,_0xee9684);},'QhYMP':'debug'},_0x3fadd6={'event':_0x2bc663[_0x19381e(0x131)],'endpoint':_0x33f98d,'route':_0x16c6f9},_0xbd786=_0x19381e(0x164)+_0x33f98d+':\x20'+_0x16c6f9;logger['debug'](_0x3fadd6,_0xbd786),_0x2bc663['UrZit'](writeToFileLog,{..._0x3fadd6,'level':_0x2bc663[_0x19381e(0xd4)],'msg':_0xbd786,'time':new Date()[_0x19381e(0x160)]()},'debug');},logDatabaseConfig=_0x546dac=>{const _0xffa8d9=a0_0x1f1287,_0x3cc113={'qsxLC':_0xffa8d9(0x13d)},_0x51acc3={'event':_0x3cc113[_0xffa8d9(0x10d)],'host':_0x546dac[_0xffa8d9(0xdd)],'port':_0x546dac['port'],'database':_0x546dac['database'],'type':_0x546dac[_0xffa8d9(0x112)],'user':_0x546dac[_0xffa8d9(0x12a)]},_0x173556='Database:\x20'+_0x546dac[_0xffa8d9(0x112)]+'://'+_0x546dac[_0xffa8d9(0xdd)]+':'+_0x546dac['port']+'/'+_0x546dac['database'];logger['debug'](_0x51acc3,_0x173556),writeToFileLog({..._0x51acc3,'level':'debug','msg':_0x173556,'time':new Date()[_0xffa8d9(0x160)]()},'debug');},logRequest=(_0x199945,_0x77766,_0x1f5bab)=>{const _0x4537b6=a0_0x1f1287,_0x26ee3e={'CRfzr':_0x4537b6(0x157),'bCfmd':'info','ipyvP':function(_0x341b51,_0xf7d998){return _0x341b51>=_0xf7d998;}},_0x35f874={'event':_0x26ee3e['CRfzr'],'method':_0x199945['method'],'path':_0x199945['path'],'statusCode':_0x77766['statusCode'],'durationMs':_0x1f5bab,'ip':_0x199945['ip']},_0x576ab2=_0x199945['method']+'\x20'+_0x199945[_0x4537b6(0xfb)]+'\x20-\x20'+_0x77766['statusCode']+'\x20('+_0x1f5bab+'ms)';let _0x5ddf4f=_0x26ee3e[_0x4537b6(0x106)];if(_0x77766[_0x4537b6(0xeb)]>=0x1f4)_0x5ddf4f=_0x4537b6(0xe4),logger['error'](_0x35f874,_0x576ab2);else _0x26ee3e['ipyvP'](_0x77766['statusCode'],0x190)?(_0x5ddf4f='warn',logger['warn'](_0x35f874,_0x576ab2)):logger['info'](_0x35f874,_0x576ab2);writeToFileLog({..._0x35f874,'level':_0x5ddf4f,'msg':_0x576ab2,'time':new Date()['toISOString']()},_0x5ddf4f);},SENSITIVE_PARAM_PATTERNS=[a0_0x1f1287(0x124),a0_0x1f1287(0x139),'pwd',a0_0x1f1287(0x121),a0_0x1f1287(0x11b),a0_0x1f1287(0xd7),a0_0x1f1287(0x177),'api_secret','apikey','api_key','credential','credentials',a0_0x1f1287(0xdf),a0_0x1f1287(0x101),a0_0x1f1287(0xf2),'privatekey'],redactSensitiveParams=(_0xb357fe,_0x3fdf9d)=>{const _0x31d4b4=a0_0x1f1287,_0x1c9ba2={'ZXMRx':'[REDACTED]','Cyget':function(_0xb73ee,_0x2c6c05){return _0xb73ee===_0x2c6c05;},'MBcrS':'string','UTzRW':function(_0x368d81,_0x17f1e2){return _0x368d81>_0x17f1e2;},'gPrnj':_0x31d4b4(0x162),'puoAX':_0x31d4b4(0x13f)};if(!_0xb357fe||_0x1c9ba2['Cyget'](_0xb357fe['length'],0x0))return _0xb357fe;const _0x42af4b=_0x3fdf9d['toLowerCase'](),_0x4b7e01=_0x42af4b['match'](/\(([^)]+)\)\s*values/i);let _0xfba24b=[];_0x4b7e01&&(_0xfba24b=_0x4b7e01[0x1][_0x31d4b4(0x143)](',')[_0x31d4b4(0x150)](_0x4b9d4c=>_0x4b9d4c['trim']()[_0x31d4b4(0x136)]()));const _0x585311=_0x42af4b['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x585311){const _0x2e8e9c=_0x585311[0x1],_0x350acd=_0x2e8e9c['match'](/(\w+)\s*=/g);_0x350acd&&(_0xfba24b=_0x350acd['map'](_0x415151=>_0x415151['replace'](/\s*=/,'')[_0x31d4b4(0x168)]()[_0x31d4b4(0x136)]()));}return _0xb357fe[_0x31d4b4(0x150)]((_0x1f3639,_0x5f26a7)=>{const _0x162b9=_0x31d4b4;if(_0xfba24b[_0x5f26a7]){const _0x12da0e=_0xfba24b[_0x5f26a7],_0x2571ca=SENSITIVE_PARAM_PATTERNS['some'](_0x3f86ba=>_0x12da0e['includes'](_0x3f86ba));if(_0x2571ca)return _0x1c9ba2[_0x162b9(0x105)];}if(_0x1c9ba2['Cyget'](typeof _0x1f3639,_0x1c9ba2[_0x162b9(0xf7)])&&_0x1c9ba2[_0x162b9(0x12f)](_0x1f3639['length'],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x162b9(0x170)](_0x1f3639)&&_0x1f3639['includes']('.'))return _0x1c9ba2['gPrnj'];if(/^[a-fA-F0-9]{32,}$/['test'](_0x1f3639))return _0x1c9ba2['puoAX'];}return _0x1f3639;});},parseQueryMetadata=_0x212beb=>{const _0x14602f=a0_0x1f1287,_0x248431={'rnyZN':_0x14602f(0xfa),'bPqsw':'INSERT','cgene':'UPDATE','BcjZs':'DELETE','jQfgV':'START\x20TRANSACTION','PNlGD':_0x14602f(0x12b),'rPxAS':'TRANSACTION_ROLLBACK','XQKcT':'DDL_ALTER','whpKt':'DROP'},_0xe34f39=_0x212beb['trim'](),_0x1d855e=_0xe34f39[_0x14602f(0xe2)]();let _0x2e1272=_0x14602f(0x10c),_0x4c640c=null;if(_0x1d855e[_0x14602f(0x175)](_0x248431['rnyZN'])){_0x2e1272=_0x14602f(0xfa);const _0x1ef11d=_0xe34f39['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4c640c=_0x1ef11d?_0x1ef11d[0x1]:null;}else{if(_0x1d855e['startsWith'](_0x248431[_0x14602f(0x123)])){_0x2e1272=_0x248431['bPqsw'];const _0x2ef5e2=_0xe34f39['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4c640c=_0x2ef5e2?_0x2ef5e2[0x1]:null;}else{if(_0x1d855e['startsWith']('UPDATE')){_0x2e1272=_0x248431['cgene'];const _0x2731b7=_0xe34f39[_0x14602f(0x145)](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4c640c=_0x2731b7?_0x2731b7[0x1]:null;}else{if(_0x1d855e['startsWith'](_0x248431[_0x14602f(0x146)])){_0x2e1272=_0x14602f(0xf9);const _0x195f90=_0xe34f39['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4c640c=_0x195f90?_0x195f90[0x1]:null;}else{if(_0x1d855e[_0x14602f(0x175)]('BEGIN')||_0x1d855e[_0x14602f(0x175)](_0x248431[_0x14602f(0xef)]))_0x2e1272=_0x14602f(0xfd);else{if(_0x1d855e['startsWith'](_0x14602f(0xec)))_0x2e1272=_0x14602f(0x141);else{if(_0x1d855e[_0x14602f(0x175)](_0x248431[_0x14602f(0x11f)]))_0x2e1272=_0x248431['rPxAS'];else{if(_0x1d855e[_0x14602f(0x175)](_0x14602f(0x15d)))_0x2e1272='DDL_CREATE';else{if(_0x1d855e['startsWith'](_0x14602f(0xdb)))_0x2e1272=_0x248431['XQKcT'];else _0x1d855e['startsWith'](_0x248431['whpKt'])&&(_0x2e1272='DDL_DROP');}}}}}}}}return{'type':_0x2e1272,'table':_0x4c640c};},startQueryTimer=()=>{const _0x38d7c3=a0_0x1f1287,_0x49362c={'kZyrz':function(_0x4d02ae,_0x6fc301){return _0x4d02ae*_0x6fc301;},'GHvUq':function(_0x2f0af4,_0x2aaefe){return _0x2f0af4/_0x2aaefe;}},_0x3addc2=process[_0x38d7c3(0xf1)]();return()=>{const _0x10e0a2=_0x38d7c3,[_0x2bb204,_0x394334]=process[_0x10e0a2(0xf1)](_0x3addc2);return parseFloat((_0x49362c[_0x10e0a2(0xcd)](_0x2bb204,0x3e8)+_0x49362c['GHvUq'](_0x394334,0xf4240))['toFixed'](0x2));};},logQuery=(_0x1daae0,_0x3afee5=[],_0x320f91={})=>{const _0x3fe8c9=a0_0x1f1287,_0x5c3be6={'RIugs':_0x3fe8c9(0xd2),'qGmFB':_0x3fe8c9(0xf0),'HEWEU':function(_0x932bb9,_0x492887){return _0x932bb9||_0x492887;},'dHoDz':_0x3fe8c9(0xd5),'rrXue':function(_0x333852,_0x375c05){return _0x333852!==_0x375c05;},'knzLn':_0x3fe8c9(0x153),'nDSvM':'\x20[SLOW]','Eminl':_0x3fe8c9(0x17f),'nYMlf':function(_0x18d043,_0x421aef){return _0x18d043===_0x421aef;},'yoKiR':function(_0x4335af,_0xad1f33,_0x7c432a){return _0x4335af(_0xad1f33,_0x7c432a);}};if(!sqlLogEnabled){logger[_0x3fe8c9(0x153)]({'event':_0x3fe8c9(0x188),'query':_0x1daae0['substring'](0x0,0xc8),'paramCount':_0x3afee5['length']},_0x5c3be6['RIugs']);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x5c3be6[_0x3fe8c9(0xfc)]}=_0x320f91,{type:_0x5bbbc8,table:_0x27541c}=parseQueryMetadata(_0x1daae0),_0x28f78a={'event':_0x3fe8c9(0x11e),'queryType':_0x5bbbc8,'table':_0x27541c,'query':_0x1daae0,'paramCount':_0x3afee5[_0x3fe8c9(0x181)],'dbType':dbType};sqlLogParams&&_0x3afee5[_0x3fe8c9(0x181)]>0x0&&(_0x28f78a['params']=redactSensitiveParams(_0x3afee5,_0x1daae0));duration!==null&&(_0x28f78a['durationMs']=duration,_0x28f78a['isSlow']=duration>sqlLogSlowThreshold);rowsAffected!==null&&(_0x28f78a[_0x3fe8c9(0x148)]=rowsAffected);const _0xdc737b=_0x5c3be6['HEWEU'](_0x27541c,_0x5c3be6['dHoDz']);let _0x2ebf2d='['+_0x5bbbc8+']\x20'+_0xdc737b;duration!==null&&(_0x2ebf2d+='\x20('+duration+'ms)');const _0x200e8f=_0x5c3be6['rrXue'](duration,null)&&duration>sqlLogSlowThreshold;let _0x3b9249=_0x5c3be6[_0x3fe8c9(0xd9)];if(_0x200e8f)_0x2ebf2d+=_0x5c3be6[_0x3fe8c9(0x130)],_0x3b9249=_0x5c3be6[_0x3fe8c9(0xf4)],logger[_0x3fe8c9(0x17f)](_0x28f78a,_0x2ebf2d);else _0x5c3be6[_0x3fe8c9(0xf6)](sqlLogLevel,_0x3fe8c9(0x152))?(_0x3b9249=_0x3fe8c9(0x152),logger[_0x3fe8c9(0x152)](_0x28f78a,_0x2ebf2d)):logger['debug'](_0x28f78a,_0x2ebf2d);_0x5c3be6[_0x3fe8c9(0xf8)](writeToFileLog,{..._0x28f78a,'level':_0x3b9249,'msg':_0x2ebf2d,'time':new Date()['toISOString']()},_0x3b9249);},logTransaction=(_0x3686c7,_0x1f68ee)=>{const _0x32798b=a0_0x1f1287,_0x51279b={'dxQSn':_0x32798b(0xed),'yOzxe':_0x32798b(0x153)},_0x24b12f={'event':_0x51279b[_0x32798b(0xce)],'status':_0x3686c7,'queryCount':_0x1f68ee},_0x3cc04e=_0x32798b(0x13b)+_0x3686c7;logger[_0x32798b(0x153)](_0x24b12f,_0x3cc04e),writeToFileLog({..._0x24b12f,'level':_0x51279b[_0x32798b(0xd1)],'msg':_0x3cc04e,'time':new Date()[_0x32798b(0x160)]()},_0x32798b(0x153));},redactObject=_0x4ebf1a=>{const _0x11689b=a0_0x1f1287,_0xfb6bdd={'eEPBn':'passwd','SowGf':_0x11689b(0x155),'BDbJH':'token','enNAf':'apikey','cQkHg':_0x11689b(0x161),'MdcBn':_0x11689b(0x113),'UVDmH':_0x11689b(0xdf),'TxzGX':'private_key','deqaS':'privatekey','VlQbj':_0x11689b(0xd7),'BGwDh':function(_0x2ec3d0,_0x255418){return _0x2ec3d0===_0x255418;}};if(!_0x4ebf1a||typeof _0x4ebf1a!=='object')return _0x4ebf1a;const _0x5b5b34=['password',_0xfb6bdd[_0x11689b(0xf3)],_0xfb6bdd[_0x11689b(0x116)],_0xfb6bdd[_0x11689b(0x14e)],_0x11689b(0x177),_0xfb6bdd[_0x11689b(0x16c)],_0x11689b(0x17c),_0x11689b(0x167),'creditcard',_0x11689b(0xe9),_0xfb6bdd[_0x11689b(0x11d)],_0xfb6bdd[_0x11689b(0x16d)],_0xfb6bdd['UVDmH'],_0xfb6bdd['TxzGX'],_0xfb6bdd['deqaS'],_0xfb6bdd[_0x11689b(0x107)],'access_token'],_0x25b693=Array['isArray'](_0x4ebf1a)?[..._0x4ebf1a]:{..._0x4ebf1a};for(const _0x3a3481 of Object[_0x11689b(0x10f)](_0x25b693)){const _0x19331f=_0x3a3481[_0x11689b(0x136)]();if(_0x5b5b34[_0x11689b(0x144)](_0x28a159=>_0x19331f['includes'](_0x28a159)))_0x25b693[_0x3a3481]='[REDACTED]';else _0xfb6bdd[_0x11689b(0x115)](typeof _0x25b693[_0x3a3481],_0x11689b(0x166))&&_0x25b693[_0x3a3481]!==null&&(_0x25b693[_0x3a3481]=redactObject(_0x25b693[_0x3a3481]));}return _0x25b693;},logError=(_0x5e8588,_0x3136df={},_0x9b248c=null)=>{const _0x16e751=a0_0x1f1287,_0x87f5df={'KFOUH':_0x16e751(0x16e),'UGRUG':'error'},_0x50e179={'event':_0x16e751(0xe4),'errorName':_0x5e8588[_0x16e751(0x12e)]||_0x87f5df[_0x16e751(0x178)],'errorMessage':_0x5e8588['message'],'errorCode':_0x5e8588[_0x16e751(0x129)]||null,'stack':_0x5e8588[_0x16e751(0x132)],..._0x3136df},_0x152a81=_0x9b248c||'Error:\x20'+_0x5e8588[_0x16e751(0x172)];logger['error'](_0x50e179,_0x152a81),writeToFileLog({..._0x50e179,'level':_0x16e751(0xe4),'msg':_0x152a81,'time':new Date()[_0x16e751(0x160)]()},_0x87f5df['UGRUG']);},logFatalError=(_0xdfb2bd,_0x2dbfbb={},_0x533d0a=null)=>{const _0x389e53=a0_0x1f1287,_0x56c7b3={'MWerY':'Error','AecrA':'CRITICAL','ReMYB':_0x389e53(0x183),'Hnnur':'error'},_0x1498a9={'event':_0x389e53(0x151),'errorName':_0xdfb2bd[_0x389e53(0x12e)]||_0x56c7b3[_0x389e53(0x16f)],'errorMessage':_0xdfb2bd['message'],'errorCode':_0xdfb2bd['code']||null,'stack':_0xdfb2bd['stack'],'severity':_0x56c7b3[_0x389e53(0x140)],..._0x2dbfbb},_0x2b25c9=_0x533d0a||'FATAL:\x20'+_0xdfb2bd[_0x389e53(0x172)];logger[_0x389e53(0x183)](_0x1498a9,_0x2b25c9),writeToFileLog({..._0x1498a9,'level':_0x56c7b3[_0x389e53(0x117)],'msg':_0x2b25c9,'time':new Date()[_0x389e53(0x160)]()},_0x56c7b3['Hnnur']);},logHttpError=(_0x29c869,_0x1b3af6,_0x3f408a={})=>{const _0x20784b=a0_0x1f1287,_0x2084e2={'keZLJ':_0x20784b(0xda),'ILkgk':'Error','rywrj':'error','smWGX':'warn'},_0x388556={'event':_0x2084e2['keZLJ'],'errorName':_0x29c869[_0x20784b(0x12e)]||_0x2084e2[_0x20784b(0xf5)],'errorMessage':_0x29c869['message'],'errorCode':_0x29c869[_0x20784b(0x129)]||_0x29c869[_0x20784b(0xeb)]||0x1f4,'stack':_0x29c869['stack'],'method':_0x1b3af6?.[_0x20784b(0x17e)],'url':_0x1b3af6?.[_0x20784b(0xe3)]||_0x1b3af6?.['originalUrl'],'path':_0x1b3af6?.['path'],'ip':_0x1b3af6?.['ip']||_0x1b3af6?.['connection']?.[_0x20784b(0x159)],'userAgent':_0x1b3af6?.['get']?.(_0x20784b(0xe1)),'requestId':_0x1b3af6?.['id']||_0x1b3af6?.[_0x20784b(0x127)]?.[_0x20784b(0xea)],'body':_0x1b3af6?.[_0x20784b(0x13a)]?redactObject(_0x1b3af6[_0x20784b(0x13a)]):undefined,'query':_0x1b3af6?.['query'],..._0x3f408a},_0x37f9b0=_0x29c869[_0x20784b(0xeb)]||_0x29c869['status']||0x1f4,_0x465fcd=_0x20784b(0x158)+_0x37f9b0+':\x20'+_0x29c869[_0x20784b(0x172)];_0x37f9b0>=0x1f4?logger['error'](_0x388556,_0x465fcd):logger[_0x20784b(0x17f)](_0x388556,_0x465fcd),writeToFileLog({..._0x388556,'level':_0x37f9b0>=0x1f4?'error':_0x20784b(0x17f),'msg':_0x465fcd,'time':new Date()['toISOString']()},_0x37f9b0>=0x1f4?_0x2084e2[_0x20784b(0x135)]:_0x2084e2['smWGX']);},logUncaughtError=(_0x8b6ec9,_0x1d12d1)=>{const _0x23125a=a0_0x1f1287,_0x9aaadb={'QYopm':'Error','DwNcQ':function(_0x43be5f,_0x103615){return _0x43be5f(_0x103615);},'CIias':'CRITICAL','QPBgI':'error'},_0x349bc4={'event':_0x8b6ec9,'errorName':_0x1d12d1?.['name']||_0x9aaadb['QYopm'],'errorMessage':_0x1d12d1?.['message']||_0x9aaadb['DwNcQ'](String,_0x1d12d1),'errorCode':_0x1d12d1?.[_0x23125a(0x129)]||null,'stack':_0x1d12d1?.[_0x23125a(0x132)],'severity':_0x9aaadb['CIias'],'processId':process['pid'],'memoryUsage':process[_0x23125a(0x15b)](),'uptime':process[_0x23125a(0x11a)]()},_0x1ab546='['+_0x8b6ec9['toUpperCase']()+']\x20'+(_0x1d12d1?.['message']||_0x1d12d1);logger[_0x23125a(0x183)](_0x349bc4,_0x1ab546),writeToFileLog({..._0x349bc4,'level':_0x23125a(0x183),'msg':_0x1ab546,'time':new Date()['toISOString']()},_0x9aaadb['QPBgI']);},setupGlobalErrorHandlers=()=>{const _0x4f446c=a0_0x1f1287,_0x5a49ab={'tDnXj':function(_0x17b579,_0x4558ca){return _0x17b579 instanceof _0x4558ca;},'axjvj':_0x4f446c(0xe7),'IkPrM':'global_error_handlers_setup'};process['on']('uncaughtException',_0x516f8a=>{const _0x5d7208=_0x4f446c;logUncaughtError(_0x5d7208(0x147),_0x516f8a),setTimeout(()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x4f446c(0xd6),(_0x460bea,_0x49506c)=>{const _0x578d6e=_0x4f446c,_0x10eff8=_0x5a49ab['tDnXj'](_0x460bea,Error)?_0x460bea:new Error(String(_0x460bea));logUncaughtError(_0x578d6e(0xd6),_0x10eff8);}),process['on'](_0x5a49ab[_0x4f446c(0x100)],_0x54c1c5=>{const _0x17a7da=_0x4f446c;logger[_0x17a7da(0x17f)]({'event':'process_warning','name':_0x54c1c5[_0x17a7da(0x12e)],'message':_0x54c1c5['message'],'stack':_0x54c1c5['stack']},'Process\x20Warning:\x20'+_0x54c1c5[_0x17a7da(0x172)]);});const _0x1d0f3c={'event':_0x5a49ab[_0x4f446c(0x15f)]},_0x7ebe2=_0x4f446c(0xcf);logger[_0x4f446c(0x152)](_0x1d0f3c,_0x7ebe2),writeToFileLog({..._0x1d0f3c,'level':'info','msg':_0x7ebe2,'time':new Date()[_0x4f446c(0x160)]()},_0x4f446c(0x152));},createErrorHandlerMiddleware=()=>{const _0x411a77=a0_0x1f1287,_0x3f5a3f={'IPWIt':_0x411a77(0x126)};return(_0x3001c4,_0x4e83f5,_0x66822e,_0x248460)=>{const _0x305b9e=_0x411a77;logHttpError(_0x3001c4,_0x4e83f5);const _0x58c797=_0x3001c4[_0x305b9e(0xeb)]||_0x3001c4['status']||0x1f4;_0x66822e[_0x305b9e(0x13c)](_0x58c797)[_0x305b9e(0x12d)]({'success':![],'error':_0x58c797>=0x1f4?_0x3f5a3f['IPWIt']:_0x3001c4['message'],'requestId':_0x4e83f5['id']||_0x4e83f5['headers']?.[_0x305b9e(0xea)]||null});};};module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
1
+ function a0_0x261a(_0xc60f06,_0x29e58e){_0xc60f06=_0xc60f06-0x106;const _0x47ba85=a0_0x47ba();let _0x261ac5=_0x47ba85[_0xc60f06];if(a0_0x261a['zDUWSS']===undefined){var _0x315e4f=function(_0x4121e0){const _0xd9e40d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1e7ac1='',_0x43e40d='';for(let _0x520304=0x0,_0x4db0e1,_0x5b6431,_0x977010=0x0;_0x5b6431=_0x4121e0['charAt'](_0x977010++);~_0x5b6431&&(_0x4db0e1=_0x520304%0x4?_0x4db0e1*0x40+_0x5b6431:_0x5b6431,_0x520304++%0x4)?_0x1e7ac1+=String['fromCharCode'](0xff&_0x4db0e1>>(-0x2*_0x520304&0x6)):0x0){_0x5b6431=_0xd9e40d['indexOf'](_0x5b6431);}for(let _0x58a6ec=0x0,_0x1a2bf2=_0x1e7ac1['length'];_0x58a6ec<_0x1a2bf2;_0x58a6ec++){_0x43e40d+='%'+('00'+_0x1e7ac1['charCodeAt'](_0x58a6ec)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x43e40d);};a0_0x261a['mGxLag']=_0x315e4f,a0_0x261a['HAFHqK']={},a0_0x261a['zDUWSS']=!![];}const _0x179cd5=_0x47ba85[0x0],_0x40804a=_0xc60f06+_0x179cd5,_0x2c5fa9=a0_0x261a['HAFHqK'][_0x40804a];return!_0x2c5fa9?(_0x261ac5=a0_0x261a['mGxLag'](_0x261ac5),a0_0x261a['HAFHqK'][_0x40804a]=_0x261ac5):_0x261ac5=_0x2c5fa9,_0x261ac5;}const a0_0x3096f5=a0_0x261a;(function(_0x12a533,_0x59421d){const _0x4cd962=a0_0x261a,_0x2f5c13=_0x12a533();while(!![]){try{const _0x2ec9e6=-parseInt(_0x4cd962(0x177))/0x1+parseInt(_0x4cd962(0x140))/0x2+parseInt(_0x4cd962(0x189))/0x3+-parseInt(_0x4cd962(0x1b1))/0x4+-parseInt(_0x4cd962(0x1b6))/0x5+parseInt(_0x4cd962(0x142))/0x6+parseInt(_0x4cd962(0x172))/0x7;if(_0x2ec9e6===_0x59421d)break;else _0x2f5c13['push'](_0x2f5c13['shift']());}catch(_0x3310a4){_0x2f5c13['push'](_0x2f5c13['shift']());}}}(a0_0x47ba,0x8b0fc));const pino=require('pino'),fs=require('fs'),path=require(a0_0x3096f5(0x17d));let logToFile=![],logDir=a0_0x3096f5(0x187),serviceName=a0_0x3096f5(0x136),sqlLogEnabled=![],sqlLogLevel=a0_0x3096f5(0x12d),sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':a0_0x3096f5(0x12e),'singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':a0_0x3096f5(0x18e),'hideObject':!![]},isDevelopment=process[a0_0x3096f5(0x110)][a0_0x3096f5(0x1ca)]!==a0_0x3096f5(0x128),logLevel=process[a0_0x3096f5(0x110)]['LOG_LEVEL']||a0_0x3096f5(0x1b9);function a0_0x47ba(){const _0x49e4af=['CgLK','otu0odK2sKfuA2LY','AgvHBhrOq2HLy2S','mtK1mZCYmezSqwfQuq','rxjYB3i','Eu9KwMW','rxfNqxe','qKvhsu4','rermx0nsrufurq','C2vYDMvYx3jLywr5','DhLWzq','DenOzKm','C3rHy2S','u0vsvKLdrv9oqu1f','C3bSAxq','u1fmx0Xpr19qqvjbtvm','Bwv0Ag9K','zw5KCg9PBNrFCMvNAxn0zxjLza','D2fYBMLUzW','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','Ce9rDLa','rLLqrwG','uKHsC3K','Dg9mB3DLCKnHC2u','C3rKu2vYAwfSAxPLCNm','zxHPDa','uhjVy2vZCYbxyxjUAw5NoIa','BMfbz2W','te9hx0rjuG','ig9UihbVCNqG','C2rkAMW','zxjYB3i','u0vmrunu','ChjVAMvJDa','rermx0fmvevs','Bwf0y2G','y3jLzgvUDgLHBa','icbvuKW6icaGia','CgTgtNG','BwTKAxjtEw5J','q09ntuLu','zxHWB3j0CW','CwLYq3a','EwrJCgO','q2vIu3G','ANnVBG','Ag9ZDa','C3vIC3rYAw5N','zxjY','qunusvzf','Dg9ju09tDhjPBMC','nZCXnZu2m3z5sKLuwa','CxvrtMm','D2fYBG','C3rYAw5N','qMrcDva','odK1nJa5t09oCvPl','Cg9YDa','zgjFDhjHBNnHy3rPB24','CgfKrw5K','w1jfrefdvevexq','AxntBg93','Cgf0Aa','vMHswKq','AuTWufe','BejiBvG','u3HWBge','CujjtwS','C3rKvgLTzuz1BMn0Aw9UCW','zgv2zwXVCg1LBNq','qvbqx1zfuLnjt04','u2vYDMvYihn0yxj0Aw5NoIa','lI9SB2DZ','AKTPDeG','mJe0mZuWovfRwu9Yrq','BgvUz3rO','txPzCgm','vxfWB1G','tu9xyM0','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','yxbWlMXVzW','AuXZBNi','t3nkDg4','Dw5Oyw5KBgvKuMvQzwn0Aw9U','zLvOBfy','DhjPBq','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','DxnLCG','Dhj1zq','iokvKqRILzeGienVBMzPzYaGicaGidOG','CgLU','CMvXlMHLywrLCNmUyxv0Ag9YAxPHDgLVBG','sMjxs1i','Dw5JyxvNAhrfEgnLChrPB24','oI8V','zMfSC2u','z2v0sgvHzgvYCW','rLbzDum','C2vYDMLJzuLUzM8','rejFueftu1DpuKq','C2vYDMvYx3n0yxj0Aw5N','Aw5JBhvKzxm','wKDxyMi','zxjYB3iUBg9N','C3rHDhvZ','yM9KEq','yLP5vfG','yxbPA2v5','revmrvrf','Bg9N','BuDhqKC','C3nU','BMfTzq','C3rHDhvZq29Kzq','mJe3odq5mMjTvxfxDG','AMrJwK0','CgfZC3DK','Dxb0Aw1L','yxbPx3nLy3jLDa','mZa1mti2merowxjUsW','y29Kzq','ChDK','Aw5MBW','Awj0BKO','ChjPDMf0zwTLEq','ic0G','u0vXrey','zMf0ywW','AxPUzve','zKjYr3u','DKnsz3i','q1jfqvrf','uLvmvLu','BwvZC2fNzq','zgf0ywjHC2vFy29UzMLN','C3rHCNrZv2L0Aa','q1jjveLdquW','w1jfrefdveveoMHHC2HD','D3bSBNe','tK9erv9ftLy','Bgvpzuq','Ahj0Aw1L','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','zvLyBuG','y3DK','rgT5DeK','vNjQCNy','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','C29Tzq','iokvKqRILzeGifbYB2PLy3qGicaGidOG','wLDxD3C','zw52','B2jQzwn0','uNLJrva','su5trvju','rfjpua','CMvTB3rLqwrKCMvZCW','ms4WlJu','B0jKvue','vfjbtLnbq1rjt05Fq09ntuLu','CKf3C3K','Dg9vChbLCKnHC2u','qKXOCMq','vfjbtLnbq1rjt05FuK9mtejbq0S','C3fSx3f1zxj5','rNHIu20','y3z2','DgvZDa','zgf0ywjHC2u','y29UzMLNrMLSzq','q1votKC','wfH5yue','tI9b','ifTtte9xxq','iokvKqRILzeGifbVCNqGicaGicaGidOG','ChjVzhvJDgLVBG','zMf0ywXFzxjYB3i','AM9PBG','q29HBg4','yvPKz0e','zgvIDwC','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','yMfZzvvYBa','AxnbCNjHEq','vKzczLe','u1fmx0Xpr19ftKfcteve','w1jfrefdveveoNrVA2vUxq','C0jJvKO','y3jLyxrLv3jPDgvtDhjLyw0','CMvZDgzVCMDL','Ahr0Cf9Yzxf1zxn0','y0rJzMO','DxjS','te9hx1rpx0zjteu','vvbeqvrf','ExnqDuq','u1fmx0Xpr19mrvzfta','ChjPDMf0zv9RzxK'];a0_0x47ba=function(){return _0x49e4af;};return a0_0x47ba();}let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process['env'][a0_0x3096f5(0x185)]||a0_0x3096f5(0x116),'env':process['env'][a0_0x3096f5(0x1ca)]||a0_0x3096f5(0x184)},'timestamp':pino[a0_0x3096f5(0x183)]['isoTime'],'redact':{'paths':[a0_0x3096f5(0x19a),'req.headers[\x22x-api-key\x22]','password','token','apiKey',a0_0x3096f5(0x1a2),'JWT_SECRET'],'censor':'[REDACTED]'},'serializers':{'req':_0xec587c=>({'id':_0xec587c['id'],'method':_0xec587c[a0_0x3096f5(0x14f)],'url':_0xec587c[a0_0x3096f5(0x139)],'path':_0xec587c[a0_0x3096f5(0x17d)],'remoteAddress':_0xec587c['ip']||_0xec587c['connection']?.['remoteAddress']}),'res':_0xe9d4c5=>({'statusCode':_0xe9d4c5['statusCode'],'headers':_0xe9d4c5[a0_0x3096f5(0x19f)]?.()}),'err':pino[a0_0x3096f5(0x157)][a0_0x3096f5(0x16f)]}});function initFileLogging(){const _0x44ebe4=a0_0x3096f5,_0x25fb1b={'sBcVJ':function(_0x435f73,_0x2806fb){return _0x435f73===_0x2806fb;},'DCBaW':'default','gHFJV':function(_0x412b89,_0x390a14){return _0x412b89===_0x390a14;},'RpIHP':_0x44ebe4(0x197),'VFBfQ':function(_0x555a66,_0x24fb17){return _0x555a66!==_0x24fb17;},'quQNc':function(_0x8f466,_0x41bcda){return _0x8f466(_0x41bcda);},'rAwsy':'error.log','xeQMc':function(_0xededeb,_0x5876b5,_0x5a9ad4){return _0xededeb(_0x5876b5,_0x5a9ad4);},'qirCp':_0x44ebe4(0x1b9)};if(fileLoggingInitialized)return;logToFile=_0x25fb1b[_0x44ebe4(0x134)](process['env'][_0x44ebe4(0x13a)],_0x44ebe4(0x197));const _0x32e056=process['env']['RESTFORGE_PROJECT_NAME']||_0x25fb1b['DCBaW'];logDir=process['env'][_0x44ebe4(0x15b)]||'./logs/'+_0x32e056,serviceName=process[_0x44ebe4(0x110)][_0x44ebe4(0x14c)]||'restforge',sqlLogEnabled=_0x25fb1b['gHFJV'](process['env'][_0x44ebe4(0x132)],_0x25fb1b['RpIHP']),sqlLogLevel=process['env'][_0x44ebe4(0x13d)]||_0x44ebe4(0x12d),sqlLogParams=_0x25fb1b[_0x44ebe4(0x131)](process['env'][_0x44ebe4(0x14e)],_0x44ebe4(0x19e)),sqlLogSlowThreshold=_0x25fb1b[_0x44ebe4(0x173)](parseInt,process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x523b7b=path['resolve'](process[_0x44ebe4(0x109)](),logDir);try{!fs['existsSync'](_0x523b7b)&&fs[_0x44ebe4(0x166)](_0x523b7b,{'recursive':!![]});}catch(_0x10db7b){console['error']('Failed\x20to\x20create\x20log\x20directory\x20'+_0x523b7b+':',_0x10db7b[_0x44ebe4(0x1c4)]),fileLoggingInitialized=!![];return;}const _0xcab749=path[_0x44ebe4(0x12a)](_0x523b7b,_0x44ebe4(0x18f)),_0x5d6ceb=path['join'](_0x523b7b,_0x25fb1b[_0x44ebe4(0x119)]);try{appLogStream=fs[_0x44ebe4(0x135)](_0xcab749,{'flags':'a'}),errorLogStream=fs[_0x44ebe4(0x135)](_0x5d6ceb,{'flags':'a'}),fileLoggingInitialized=!![];const _0x2bd96d={'event':'file_logging_enabled','logDir':_0x523b7b,'files':[_0x44ebe4(0x18f),_0x44ebe4(0x1a6)]},_0x3c4b72='File\x20logging\x20enabled:\x20'+_0x523b7b;logger[_0x44ebe4(0x1b9)](_0x2bd96d,_0x3c4b72),_0x25fb1b['xeQMc'](writeToFileLog,{..._0x2bd96d,'level':'info','msg':_0x3c4b72,'time':new Date()['toISOString']()},_0x25fb1b[_0x44ebe4(0x169)]);}catch(_0x6b632a){console['error'](_0x44ebe4(0x195),_0x6b632a[_0x44ebe4(0x1c4)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x20d8e4,_0x359d62){const _0x1dced1=a0_0x3096f5,_0xd4452a={'oBdUA':function(_0x19ab8f,_0x3da419){return _0x19ab8f===_0x3da419;},'mGGBG':_0x1dced1(0x1be)};if(!logToFile||!appLogStream)return;const _0x8d866f={'service':serviceName,..._0x20d8e4},_0x12a280=JSON['stringify'](_0x8d866f)+'\x0a';appLogStream['write'](_0x12a280),(_0xd4452a[_0x1dced1(0x117)](_0x359d62,_0x1dced1(0x15e))||_0xd4452a['oBdUA'](_0x359d62,_0xd4452a[_0x1dced1(0x1ad)]))&&(errorLogStream&&errorLogStream['write'](_0x12a280));}const createRequestLogger=(_0x21217b={})=>{return logger['child'](_0x21217b);},logServerStart=_0x586edc=>{const _0x76b0c8=a0_0x3096f5,_0x1aa491={'JYiOI':'RESTFORGE\x20RUNTIME\x20SERVER','jdcZM':function(_0x1fa2e7,_0x4fa0aa){return _0x1fa2e7-_0x4fa0aa;},'wllER':'Node.js','cSRcY':'NOT\x20ACTIVE','aZdgA':function(_0x3c77d1,_0x356d2a,_0x2cf1c8){return _0x3c77d1(_0x356d2a,_0x2cf1c8);},'BdBuP':_0x76b0c8(0x1b9)},_0x170d0d=_0x1aa491['JYiOI'],_0x133b23=Math['max'](0x0,_0x1aa491[_0x76b0c8(0x1b2)](0x37,_0x170d0d['length'])),_0x162dc5=Math['floor'](_0x133b23/0x2),_0x58291b=_0x133b23-_0x162dc5,_0x3554d0='║'+'\x20'['repeat'](_0x162dc5)+_0x170d0d+'\x20'['repeat'](_0x58291b)+'║',_0x37f747='\x0a╔═══════════════════════════════════════════════════════╗\x0a'+_0x3554d0+_0x76b0c8(0x152)+(_0x586edc['environment']||_0x1aa491['wllER'])['padEnd'](0x26)+_0x76b0c8(0x10e)+(_0x586edc[_0x76b0c8(0x160)]||_0x76b0c8(0x125))[_0x76b0c8(0x17a)](0x26)+_0x76b0c8(0x127)+String(_0x586edc[_0x76b0c8(0x178)]||0xbb8)['padEnd'](0x26)+_0x76b0c8(0x198)+(_0x586edc[_0x76b0c8(0x122)]||'Default')['padEnd'](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x586edc['apiKey']?_0x76b0c8(0x170):_0x1aa491['cSRcY'])['padEnd'](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x76b0c8(0x1ac)](_0x37f747);const _0x37015a={'event':_0x76b0c8(0x1a3),'project':_0x586edc['project'],'port':_0x586edc['port'],'config':_0x586edc[_0x76b0c8(0x122)],'apiKeyEnabled':!!_0x586edc['apiKey']};logger[_0x76b0c8(0x1b9)](_0x37015a),_0x1aa491[_0x76b0c8(0x12c)](writeToFileLog,{..._0x37015a,'level':_0x1aa491[_0x76b0c8(0x176)],'msg':_0x76b0c8(0x186)+_0x586edc['project']+_0x76b0c8(0x15c)+_0x586edc['port'],'time':new Date()[_0x76b0c8(0x171)]()},'info');},logServerReady=_0x517c69=>{const _0xce8764=a0_0x3096f5,_0x5d502c={'IaKpV':_0xce8764(0x1b9)},_0x441a8d={'event':_0xce8764(0x148),'port':_0x517c69['port'],'module':_0x517c69['module'],'healthCheck':_0x517c69['healthCheck'],'serviceInfo':_0x517c69['serviceInfo'],'baseUrl':_0x517c69[_0xce8764(0x12f)]},_0x63930b=_0xce8764(0x107)+_0x517c69['port'];logger['info'](_0x441a8d,_0x63930b),writeToFileLog({..._0x441a8d,'level':_0x5d502c['IaKpV'],'msg':_0x63930b,'time':new Date()['toISOString']()},_0x5d502c['IaKpV']),_0x517c69[_0xce8764(0x141)]&&logger['info']('\x20\x20Health:\x20'+_0x517c69['healthCheck']),_0x517c69['serviceInfo']&&logger[_0xce8764(0x1b9)]('\x20\x20Info:\x20\x20\x20'+_0x517c69[_0xce8764(0x1a1)]),_0x517c69['baseUrl']&&logger['info'](_0xce8764(0x164)+_0x517c69['baseUrl']);},logProjectLoaded=(_0x2b6fe8,_0x3c54be)=>{const _0x116be3=a0_0x3096f5,_0x4f9fef={'event':'project_loaded','project':_0x2b6fe8,'path':_0x3c54be},_0x38b196='[OK]\x20Project\x20loaded:\x20'+_0x2b6fe8;logger[_0x116be3(0x1b9)](_0x4f9fef,_0x38b196),writeToFileLog({..._0x4f9fef,'level':'info','msg':_0x38b196,'time':new Date()[_0x116be3(0x171)]()},'info');},logEndpointRegistered=(_0x31a4e1,_0x38be89)=>{const _0x5b1201=a0_0x3096f5,_0x5cd434={'eYXmH':_0x5b1201(0x150),'fBrGu':_0x5b1201(0x12d)},_0x3dd3cc={'event':_0x5cd434[_0x5b1201(0x108)],'endpoint':_0x31a4e1,'route':_0x38be89},_0x6c9787='\x20\x20→\x20'+_0x31a4e1+':\x20'+_0x38be89;logger[_0x5b1201(0x12d)](_0x3dd3cc,_0x6c9787),writeToFileLog({..._0x3dd3cc,'level':'debug','msg':_0x6c9787,'time':new Date()['toISOString']()},_0x5cd434[_0x5b1201(0x1c0)]);},logDatabaseConfig=_0x151a19=>{const _0x5d479d=a0_0x3096f5,_0x3f0ef0={'qBIMk':function(_0x50e5e3,_0x2d0381,_0xa69bf8){return _0x50e5e3(_0x2d0381,_0xa69bf8);},'FduMh':'debug'},_0x348019={'event':_0x5d479d(0x1c5),'host':_0x151a19['host'],'port':_0x151a19[_0x5d479d(0x178)],'database':_0x151a19[_0x5d479d(0x121)],'type':_0x151a19['type'],'user':_0x151a19[_0x5d479d(0x196)]},_0x565833='Database:\x20'+_0x151a19[_0x5d479d(0x149)]+_0x5d479d(0x19d)+_0x151a19[_0x5d479d(0x16d)]+':'+_0x151a19[_0x5d479d(0x178)]+'/'+_0x151a19['database'];logger['debug'](_0x348019,_0x565833),_0x3f0ef0[_0x5d479d(0x182)](writeToFileLog,{..._0x348019,'level':_0x5d479d(0x12d),'msg':_0x565833,'time':new Date()[_0x5d479d(0x171)]()},_0x3f0ef0['FduMh']);},logRequest=(_0x30e74c,_0x41f10b,_0x230b39)=>{const _0x37d731=a0_0x3096f5,_0x2c98aa={'leOeD':_0x37d731(0x137),'KcJcl':'info','MFnVw':function(_0x5dec24,_0x154daa){return _0x5dec24>=_0x154daa;},'RHRsy':'error','jTZjW':function(_0xb748a6,_0x2dabf0){return _0xb748a6>=_0x2dabf0;},'Sxpla':'warn'},_0x48d63b={'event':_0x2c98aa[_0x37d731(0x1cb)],'method':_0x30e74c[_0x37d731(0x14f)],'path':_0x30e74c['path'],'statusCode':_0x41f10b['statusCode'],'durationMs':_0x230b39,'ip':_0x30e74c['ip']},_0x10442b=_0x30e74c[_0x37d731(0x14f)]+'\x20'+_0x30e74c['path']+_0x37d731(0x1bc)+_0x41f10b['statusCode']+'\x20('+_0x230b39+'ms)';let _0x63ad16=_0x2c98aa['KcJcl'];if(_0x2c98aa['MFnVw'](_0x41f10b[_0x37d731(0x1b0)],0x1f4))_0x63ad16=_0x2c98aa[_0x37d731(0x155)],logger['error'](_0x48d63b,_0x10442b);else _0x2c98aa['jTZjW'](_0x41f10b[_0x37d731(0x1b0)],0x190)?(_0x63ad16=_0x2c98aa[_0x37d731(0x181)],logger['warn'](_0x48d63b,_0x10442b)):logger['info'](_0x48d63b,_0x10442b);writeToFileLog({..._0x48d63b,'level':_0x63ad16,'msg':_0x10442b,'time':new Date()['toISOString']()},_0x63ad16);},SENSITIVE_PARAM_PATTERNS=['password',a0_0x3096f5(0x1b3),a0_0x3096f5(0x1b8),'token','access_token','refresh_token','secret',a0_0x3096f5(0x1b5),'apikey','api_key',a0_0x3096f5(0x163),'credentials',a0_0x3096f5(0x199),'otp',a0_0x3096f5(0x13e),a0_0x3096f5(0x1bb)],redactSensitiveParams=(_0x58d113,_0x4d55fe)=>{const _0x70dc8=a0_0x3096f5,_0x2774b1={'qFvGx':_0x70dc8(0x17b),'cOyjc':_0x70dc8(0x175),'DmqGV':function(_0x38ad15,_0x296068){return _0x38ad15>_0x296068;},'qmIiA':function(_0x1cd5af,_0xe188d3){return _0x1cd5af===_0xe188d3;}};if(!_0x58d113||_0x2774b1['qmIiA'](_0x58d113['length'],0x0))return _0x58d113;const _0xb5e12e=_0x4d55fe['toLowerCase'](),_0x226061=_0xb5e12e['match'](/\(([^)]+)\)\s*values/i);let _0x4eeae6=[];_0x226061&&(_0x4eeae6=_0x226061[0x1][_0x70dc8(0x14d)](',')['map'](_0x574ef9=>_0x574ef9[_0x70dc8(0x194)]()[_0x70dc8(0x156)]()));const _0x4dc73f=_0xb5e12e['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x4dc73f){const _0xcbc4cd=_0x4dc73f[0x1],_0x1e4f08=_0xcbc4cd[_0x70dc8(0x162)](/(\w+)\s*=/g);_0x1e4f08&&(_0x4eeae6=_0x1e4f08['map'](_0x34741a=>_0x34741a['replace'](/\s*=/,'')['trim']()[_0x70dc8(0x156)]()));}return _0x58d113['map']((_0x2b9938,_0x37a737)=>{const _0x17ecb1=_0x70dc8;if(_0x4eeae6[_0x37a737]){const _0x40b3d1=_0x4eeae6[_0x37a737],_0x1793a4=SENSITIVE_PARAM_PATTERNS[_0x17ecb1(0x10d)](_0x1094bc=>_0x40b3d1['includes'](_0x1094bc));if(_0x1793a4)return _0x2774b1['qFvGx'];}if(typeof _0x2b9938===_0x2774b1['cOyjc']&&_0x2774b1['DmqGV'](_0x2b9938[_0x17ecb1(0x18a)],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x2b9938)&&_0x2b9938['includes']('.'))return _0x17ecb1(0x133);if(/^[a-fA-F0-9]{32,}$/[_0x17ecb1(0x120)](_0x2b9938))return _0x17ecb1(0x1c8);}return _0x2b9938;});},parseQueryMetadata=_0x3f0756=>{const _0x43a7de=a0_0x3096f5,_0x147e49={'xVsyS':'UNKNOWN','JbWKR':_0x43a7de(0x15f),'RycEP':_0x43a7de(0x113),'QgmwO':_0x43a7de(0x13b),'sdJjl':_0x43a7de(0x1ab),'WcNMO':_0x43a7de(0x167),'jSaWv':'ROLLBACK','MOWbm':_0x43a7de(0x11c),'LreWo':_0x43a7de(0x1c2),'CebSx':_0x43a7de(0x147),'jKitH':'ALTER','tChfC':'DDL_DROP'},_0xbbacf4=_0x3f0756[_0x43a7de(0x194)](),_0x5d136e=_0xbbacf4[_0x43a7de(0x11a)]();let _0x83ee93=_0x147e49['xVsyS'],_0x25d5fa=null;if(_0x5d136e['startsWith']('SELECT')){_0x83ee93=_0x147e49[_0x43a7de(0x19b)];const _0x335dba=_0xbbacf4['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x25d5fa=_0x335dba?_0x335dba[0x1]:null;}else{if(_0x5d136e['startsWith'](_0x147e49['RycEP'])){_0x83ee93=_0x147e49[_0x43a7de(0x112)];const _0x545a8d=_0xbbacf4[_0x43a7de(0x162)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x25d5fa=_0x545a8d?_0x545a8d[0x1]:null;}else{if(_0x5d136e[_0x43a7de(0x1c6)](_0x43a7de(0x13b))){_0x83ee93=_0x147e49['QgmwO'];const _0x2f74a1=_0xbbacf4['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x25d5fa=_0x2f74a1?_0x2f74a1[0x1]:null;}else{if(_0x5d136e['startsWith'](_0x147e49[_0x43a7de(0x15d)])){_0x83ee93=_0x147e49[_0x43a7de(0x15d)];const _0x1af80c=_0xbbacf4['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x25d5fa=_0x1af80c?_0x1af80c[0x1]:null;}else{if(_0x5d136e['startsWith'](_0x43a7de(0x146))||_0x5d136e[_0x43a7de(0x1c6)]('START\x20TRANSACTION'))_0x83ee93='TRANSACTION_BEGIN';else{if(_0x5d136e[_0x43a7de(0x1c6)](_0x147e49['WcNMO']))_0x83ee93=_0x43a7de(0x118);else{if(_0x5d136e['startsWith'](_0x147e49['jSaWv']))_0x83ee93=_0x147e49[_0x43a7de(0x18d)];else{if(_0x5d136e['startsWith'](_0x147e49['LreWo']))_0x83ee93=_0x147e49[_0x43a7de(0x16b)];else{if(_0x5d136e[_0x43a7de(0x1c6)](_0x147e49[_0x43a7de(0x188)]))_0x83ee93=_0x43a7de(0x161);else _0x5d136e['startsWith'](_0x43a7de(0x114))&&(_0x83ee93=_0x147e49[_0x43a7de(0x14a)]);}}}}}}}}return{'type':_0x83ee93,'table':_0x25d5fa};},startQueryTimer=()=>{const _0x27f74b=a0_0x3096f5,_0x4bd05a={'iLsnr':function(_0x50a37a,_0x176e95){return _0x50a37a(_0x176e95);},'naAgl':function(_0x45f96b,_0x22bba9){return _0x45f96b+_0x22bba9;},'DkytI':function(_0x2e0c67,_0x39d891){return _0x2e0c67/_0x39d891;}},_0x6c673a=process[_0x27f74b(0x106)]();return()=>{const _0x4ce5a5=_0x27f74b,[_0x33e83c,_0x1cd647]=process[_0x4ce5a5(0x106)](_0x6c673a);return _0x4bd05a[_0x4ce5a5(0x190)](parseFloat,_0x4bd05a[_0x4ce5a5(0x15a)](_0x33e83c*0x3e8,_0x4bd05a[_0x4ce5a5(0x10a)](_0x1cd647,0xf4240))['toFixed'](0x2));};},logQuery=(_0x483ea2,_0x46d34c=[],_0x126c65={})=>{const _0x36a089=a0_0x3096f5,_0x4e1b03={'iKpPQ':function(_0x48c77a,_0x4b6975){return _0x48c77a>_0x4b6975;},'UqpoX':function(_0x5589d9,_0x4522e4){return _0x5589d9!==_0x4522e4;},'biPix':function(_0x39c4ff,_0x1468c6){return _0x39c4ff>_0x1468c6;},'wplnq':'unknown','caLIL':_0x36a089(0x12d),'dTWrk':_0x36a089(0x126),'OiBnQ':_0x36a089(0x174),'ysPuD':function(_0x1223e8,_0x43faa9){return _0x1223e8===_0x43faa9;},'ibtnJ':_0x36a089(0x1b9)};if(!sqlLogEnabled){logger[_0x36a089(0x12d)]({'event':'db_query','query':_0x483ea2[_0x36a089(0x16e)](0x0,0xc8),'paramCount':_0x46d34c['length']},'DB\x20Query');return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType='postgresql'}=_0x126c65,{type:_0x122878,table:_0x5c61bd}=parseQueryMetadata(_0x483ea2),_0x4eb92f={'event':_0x36a089(0x11d),'queryType':_0x122878,'table':_0x5c61bd,'query':_0x483ea2,'paramCount':_0x46d34c[_0x36a089(0x18a)],'dbType':dbType};sqlLogParams&&_0x4e1b03[_0x36a089(0x17f)](_0x46d34c['length'],0x0)&&(_0x4eb92f['params']=redactSensitiveParams(_0x46d34c,_0x483ea2));_0x4e1b03[_0x36a089(0x18c)](duration,null)&&(_0x4eb92f['durationMs']=duration,_0x4eb92f[_0x36a089(0x17c)]=_0x4e1b03['biPix'](duration,sqlLogSlowThreshold));rowsAffected!==null&&(_0x4eb92f['rowsAffected']=rowsAffected);const _0x8a32a5=_0x5c61bd||_0x4e1b03[_0x36a089(0x1c9)];let _0x238950='['+_0x122878+']\x20'+_0x8a32a5;_0x4e1b03[_0x36a089(0x18c)](duration,null)&&(_0x238950+='\x20('+duration+'ms)');const _0xb19098=duration!==null&&_0x4e1b03['biPix'](duration,sqlLogSlowThreshold);let _0x1817be=_0x4e1b03['caLIL'];if(_0xb19098)_0x238950+=_0x4e1b03['dTWrk'],_0x1817be=_0x4e1b03['OiBnQ'],logger['warn'](_0x4eb92f,_0x238950);else _0x4e1b03[_0x36a089(0x13c)](sqlLogLevel,_0x4e1b03[_0x36a089(0x1ba)])?(_0x1817be='info',logger[_0x36a089(0x1b9)](_0x4eb92f,_0x238950)):logger['debug'](_0x4eb92f,_0x238950);writeToFileLog({..._0x4eb92f,'level':_0x1817be,'msg':_0x238950,'time':new Date()['toISOString']()},_0x1817be);},logTransaction=(_0x11c026,_0x5adf5c)=>{const _0xbb7ecc=a0_0x3096f5,_0x50f679={'ydcpj':_0xbb7ecc(0x179),'lnYcv':'debug'},_0x31ee5d={'event':_0x50f679[_0xbb7ecc(0x16a)],'status':_0x11c026,'queryCount':_0x5adf5c},_0x3a0486='Transaction\x20'+_0x11c026;logger[_0xbb7ecc(0x12d)](_0x31ee5d,_0x3a0486),writeToFileLog({..._0x31ee5d,'level':_0x50f679['lnYcv'],'msg':_0x3a0486,'time':new Date()['toISOString']()},_0x50f679['lnYcv']);},redactObject=_0xded90d=>{const _0x34bb0d=a0_0x3096f5,_0x1818e0={'AUFgn':'password','hCdaz':'passwd','ZGWbb':'token','yOdZl':'secret','BLhrd':_0x34bb0d(0x1aa),'FYPEh':'authorization','VQJNe':_0x34bb0d(0x199),'cDcfj':'private_key','fUhlV':'refresh_token','twbUp':'[REDACTED]','SEqDF':'object'};if(!_0xded90d||typeof _0xded90d!==_0x34bb0d(0x111))return _0xded90d;const _0x4517c2=[_0x1818e0['AUFgn'],_0x1818e0['hCdaz'],'pwd',_0x1818e0[_0x34bb0d(0x1a5)],_0x1818e0[_0x34bb0d(0x144)],_0x1818e0[_0x34bb0d(0x11b)],'api_key',_0x1818e0[_0x34bb0d(0x154)],'creditcard','credit_card',_0x34bb0d(0x11f),_0x34bb0d(0x1ae),_0x1818e0['VQJNe'],_0x1818e0[_0x34bb0d(0x138)],'privatekey',_0x1818e0[_0x34bb0d(0x193)],'access_token'],_0x5e5fe3=Array[_0x34bb0d(0x130)](_0xded90d)?[..._0xded90d]:{..._0xded90d};for(const _0x297264 of Object['keys'](_0x5e5fe3)){const _0x38305f=_0x297264[_0x34bb0d(0x156)]();if(_0x4517c2['some'](_0x268c1b=>_0x38305f[_0x34bb0d(0x1a4)](_0x268c1b)))_0x5e5fe3[_0x297264]=_0x1818e0['twbUp'];else typeof _0x5e5fe3[_0x297264]===_0x1818e0[_0x34bb0d(0x1bd)]&&_0x5e5fe3[_0x297264]!==null&&(_0x5e5fe3[_0x297264]=redactObject(_0x5e5fe3[_0x297264]));}return _0x5e5fe3;},logError=(_0xc92ee0,_0x5595dd={},_0x26833e=null)=>{const _0x329959=a0_0x3096f5,_0x4c109a={'bZyTX':_0x329959(0x15e),'vCRgr':'Error'},_0x236eab={'event':_0x4c109a[_0x329959(0x1a9)],'errorName':_0xc92ee0[_0x329959(0x1af)]||_0x4c109a[_0x329959(0x1c1)],'errorMessage':_0xc92ee0['message'],'errorCode':_0xc92ee0['code']||null,'stack':_0xc92ee0['stack'],..._0x5595dd},_0x20fb9=_0x26833e||'Error:\x20'+_0xc92ee0['message'];logger['error'](_0x236eab,_0x20fb9),writeToFileLog({..._0x236eab,'level':'error','msg':_0x20fb9,'time':new Date()[_0x329959(0x171)]()},_0x4c109a[_0x329959(0x1a9)]);},logFatalError=(_0x27bcf0,_0x35628f={},_0x419a85=null)=>{const _0x55aaa6=a0_0x3096f5,_0x5ea884={'olAOl':_0x55aaa6(0x1c7),'zfCZs':function(_0x44b327,_0x26c31a,_0xe60448){return _0x44b327(_0x26c31a,_0xe60448);},'EqgAq':'error'},_0x4134c5={'event':_0x55aaa6(0x129),'errorName':_0x27bcf0['name']||'Error','errorMessage':_0x27bcf0['message'],'errorCode':_0x27bcf0[_0x55aaa6(0x1b7)]||null,'stack':_0x27bcf0[_0x55aaa6(0x14b)],'severity':_0x5ea884['olAOl'],..._0x35628f},_0x4b9d42=_0x419a85||'FATAL:\x20'+_0x27bcf0['message'];logger[_0x55aaa6(0x1be)](_0x4134c5,_0x4b9d42),_0x5ea884['zfCZs'](writeToFileLog,{..._0x4134c5,'level':'fatal','msg':_0x4b9d42,'time':new Date()[_0x55aaa6(0x171)]()},_0x5ea884[_0x55aaa6(0x145)]);},logHttpError=(_0x2fe8e4,_0x4a7814,_0x63d2e8={})=>{const _0x37a8a2=a0_0x3096f5,_0x4a7f2e={'MzYpc':'http_error','CUNNG':_0x37a8a2(0x143),'rYWSA':'user-agent','lBHmX':'x-request-id','RULVU':function(_0x24c6dc,_0x625cb0){return _0x24c6dc(_0x625cb0);},'Vrjrv':function(_0x3ef969,_0x340e93,_0x5b689b){return _0x3ef969(_0x340e93,_0x5b689b);},'XXyaA':'error','FPYuC':'warn'},_0x1f3793={'event':_0x4a7f2e[_0x37a8a2(0x18b)],'errorName':_0x2fe8e4['name']||_0x4a7f2e[_0x37a8a2(0x123)],'errorMessage':_0x2fe8e4[_0x37a8a2(0x1c4)],'errorCode':_0x2fe8e4[_0x37a8a2(0x1b7)]||_0x2fe8e4['statusCode']||0x1f4,'stack':_0x2fe8e4[_0x37a8a2(0x14b)],'method':_0x4a7814?.[_0x37a8a2(0x14f)],'url':_0x4a7814?.[_0x37a8a2(0x139)]||_0x4a7814?.['originalUrl'],'path':_0x4a7814?.[_0x37a8a2(0x17d)],'ip':_0x4a7814?.['ip']||_0x4a7814?.['connection']?.[_0x37a8a2(0x115)],'userAgent':_0x4a7814?.['get']?.(_0x4a7f2e['rYWSA']),'requestId':_0x4a7814?.['id']||_0x4a7814?.['headers']?.[_0x4a7f2e[_0x37a8a2(0x180)]],'body':_0x4a7814?.[_0x37a8a2(0x1a8)]?_0x4a7f2e[_0x37a8a2(0x1c3)](redactObject,_0x4a7814[_0x37a8a2(0x1a8)]):undefined,'query':_0x4a7814?.['query'],..._0x63d2e8},_0x15d856=_0x2fe8e4[_0x37a8a2(0x1b0)]||_0x2fe8e4[_0x37a8a2(0x1a7)]||0x1f4,_0x21246a='HTTP\x20'+_0x15d856+':\x20'+_0x2fe8e4['message'];_0x15d856>=0x1f4?logger['error'](_0x1f3793,_0x21246a):logger[_0x37a8a2(0x174)](_0x1f3793,_0x21246a),_0x4a7f2e[_0x37a8a2(0x10b)](writeToFileLog,{..._0x1f3793,'level':_0x15d856>=0x1f4?_0x4a7f2e['XXyaA']:_0x4a7f2e[_0x37a8a2(0x1a0)],'msg':_0x21246a,'time':new Date()['toISOString']()},_0x15d856>=0x1f4?_0x4a7f2e[_0x37a8a2(0x124)]:'warn');},logUncaughtError=(_0x2c0918,_0x53d56e)=>{const _0x456df9=a0_0x3096f5,_0x5767a8={'yEnrQ':function(_0x10d449,_0x2d4292){return _0x10d449(_0x2d4292);},'AIguf':_0x456df9(0x1c7),'cdwaI':function(_0x458117,_0xc75cdb,_0x4a1b96){return _0x458117(_0xc75cdb,_0x4a1b96);},'FxbSm':_0x456df9(0x15e)},_0xcab78f={'event':_0x2c0918,'errorName':_0x53d56e?.['name']||'Error','errorMessage':_0x53d56e?.['message']||_0x5767a8['yEnrQ'](String,_0x53d56e),'errorCode':_0x53d56e?.['code']||null,'stack':_0x53d56e?.[_0x456df9(0x14b)],'severity':_0x5767a8['AIguf'],'processId':process[_0x456df9(0x13f)],'memoryUsage':process['memoryUsage'](),'uptime':process[_0x456df9(0x1b4)]()},_0x3c67f8='['+_0x2c0918['toUpperCase']()+']\x20'+(_0x53d56e?.['message']||_0x53d56e);logger[_0x456df9(0x1be)](_0xcab78f,_0x3c67f8),_0x5767a8['cdwaI'](writeToFileLog,{..._0xcab78f,'level':_0x456df9(0x1be),'msg':_0x3c67f8,'time':new Date()['toISOString']()},_0x5767a8[_0x456df9(0x11e)]);},setupGlobalErrorHandlers=()=>{const _0x59bf8c=a0_0x3096f5,_0x2d1b80={'OsJtn':function(_0x4c0f0e,_0x42ea58,_0x35143e){return _0x4c0f0e(_0x42ea58,_0x35143e);},'eMEHm':function(_0x1c3a95,_0x1ca2a3){return _0x1c3a95 instanceof _0x1ca2a3;},'NYTIm':function(_0x198059,_0x1a5f1f){return _0x198059(_0x1a5f1f);},'izneQ':_0x59bf8c(0x192),'dhYYb':'process_warning','uJrwL':'uncaughtException','pkFNx':_0x59bf8c(0x151),'ZWWww':'global_error_handlers_setup','UugAr':function(_0x546e34,_0x49fe3a,_0x18c3e0){return _0x546e34(_0x49fe3a,_0x18c3e0);},'VhRZD':'info'};process['on'](_0x2d1b80['uJrwL'],_0x3aca06=>{const _0x2058ac=_0x59bf8c;logUncaughtError(_0x2058ac(0x19c),_0x3aca06),_0x2d1b80['OsJtn'](setTimeout,()=>{const _0x4b9578=_0x2058ac;process[_0x4b9578(0x158)](0x1);},0x3e8);}),process['on'](_0x2d1b80[_0x59bf8c(0x1bf)],(_0x5df95f,_0xaa07ea)=>{const _0x1112d0=_0x59bf8c,_0x4b71b5=_0x2d1b80['eMEHm'](_0x5df95f,Error)?_0x5df95f:new Error(_0x2d1b80['NYTIm'](String,_0x5df95f));_0x2d1b80[_0x1112d0(0x191)](logUncaughtError,_0x2d1b80['izneQ'],_0x4b71b5);}),process['on'](_0x2d1b80[_0x59bf8c(0x165)],_0x4b8389=>{const _0x2626f1=_0x59bf8c;logger['warn']({'event':_0x2d1b80['dhYYb'],'name':_0x4b8389['name'],'message':_0x4b8389['message'],'stack':_0x4b8389['stack']},_0x2626f1(0x159)+_0x4b8389['message']);});const _0x46834c={'event':_0x2d1b80[_0x59bf8c(0x10f)]},_0x1a3a77=_0x59bf8c(0x10c);logger[_0x59bf8c(0x1b9)](_0x46834c,_0x1a3a77),_0x2d1b80['UugAr'](writeToFileLog,{..._0x46834c,'level':_0x59bf8c(0x1b9),'msg':_0x1a3a77,'time':new Date()[_0x59bf8c(0x171)]()},_0x2d1b80[_0x59bf8c(0x17e)]);},createErrorHandlerMiddleware=()=>{const _0x205a40={'Coaln':function(_0x26d837,_0x3d2f6c,_0x45e3af){return _0x26d837(_0x3d2f6c,_0x45e3af);},'pOQvP':function(_0x707909,_0x23d4fe){return _0x707909>=_0x23d4fe;}};return(_0x5d8be8,_0x19305f,_0x177a0b,_0x3bab63)=>{const _0x478e69=a0_0x261a;_0x205a40[_0x478e69(0x12b)](logHttpError,_0x5d8be8,_0x19305f);const _0x53f6da=_0x5d8be8['statusCode']||_0x5d8be8['status']||0x1f4;_0x177a0b['status'](_0x53f6da)[_0x478e69(0x16c)]({'success':![],'error':_0x205a40[_0x478e69(0x153)](_0x53f6da,0x1f4)?'Internal\x20server\x20error':_0x5d8be8['message'],'requestId':_0x19305f['id']||_0x19305f['headers']?.['x-request-id']||null});};};module[a0_0x3096f5(0x168)]={'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
- function a0_0x1309(){const _0x143e86=['lI9SB2DNzxi','m3vmz0r2sG','mtCZnZy0ohLJveLRAa','lI9KyI1VCMfJBgu','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','AM1hC0S','A2v5CW','B1PPzKy','iIbUB3qGzM91BMqGAw4G','zKzyvg4','Aw5MBW','DhjPBq','Dg9vChbLCKnHC2u','BgvUz3rO','C2v0','zgvIDwC','mJa5mtm3nxL6zezTyq','ywrK','tg9VA3vWignHy2HLignSzwfYzwq','Bg9VA3vWq2fJAgu','y2XLyxi','z2v0','rejFvfLqrq','DLPYrMe','Cg9ZDgDYzxnXBa','vMfSDwuGiG','lI9KyG','Dg9mB3DLCKnHC2u','mty2mJDfwwvHyKi','mJC3mte5mfrJCMzKsa','BwfW','ntvHwxrQsuy','nM9YC05dyW','nZyYneneD0HUzW','zNjVBq','mJq3mwzJuwPizW','ChvZAa','zM9YrwfJAa','tg9VA3vWihrHyMXLigXVywrLzdOG','mJq1nJaWC3Dzz0nb','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','mti4odq5neT2yLLMBq','sLv1y2C','iezst00G','zxHLy3v0zvf1zxj5','zxjYB3i','zw50CMLLCW','AgfZ','Bg9HzeXVB2T1CfrHyMXL'];a0_0x1309=function(){return _0x143e86;};return a0_0x1309();}const a0_0x262393=a0_0x3386;(function(_0x47f251,_0x45b69e){const _0x2c6c73=a0_0x3386,_0x1ff991=_0x47f251();while(!![]){try{const _0xe1f840=-parseInt(_0x2c6c73(0x127))/0x1*(-parseInt(_0x2c6c73(0x12b))/0x2)+parseInt(_0x2c6c73(0x13d))/0x3*(-parseInt(_0x2c6c73(0x13e))/0x4)+parseInt(_0x2c6c73(0x14c))/0x5+parseInt(_0x2c6c73(0x134))/0x6+-parseInt(_0x2c6c73(0x12e))/0x7*(-parseInt(_0x2c6c73(0x12c))/0x8)+-parseInt(_0x2c6c73(0x128))/0x9+parseInt(_0x2c6c73(0x132))/0xa*(parseInt(_0x2c6c73(0x12a))/0xb);if(_0xe1f840===_0x45b69e)break;else _0x1ff991['push'](_0x1ff991['shift']());}catch(_0x14c73e){_0x1ff991['push'](_0x1ff991['shift']());}}}(a0_0x1309,0x619b0));const dbType=(process['env'][a0_0x262393(0x121)]||a0_0x262393(0x123))['toLowerCase']();function a0_0x3386(_0x4c1009,_0xde3a74){_0x4c1009=_0x4c1009-0x120;const _0x130955=a0_0x1309();let _0x3386b4=_0x130955[_0x4c1009];if(a0_0x3386['dAFQby']===undefined){var _0x55a7a7=function(_0x4b42e6){const _0x178168='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2825e5='',_0x1bee6b='';for(let _0x9832d3=0x0,_0x414a9e,_0x11a866,_0x52fb52=0x0;_0x11a866=_0x4b42e6['charAt'](_0x52fb52++);~_0x11a866&&(_0x414a9e=_0x9832d3%0x4?_0x414a9e*0x40+_0x11a866:_0x11a866,_0x9832d3++%0x4)?_0x2825e5+=String['fromCharCode'](0xff&_0x414a9e>>(-0x2*_0x9832d3&0x6)):0x0){_0x11a866=_0x178168['indexOf'](_0x11a866);}for(let _0x5b6b55=0x0,_0x3d9c57=_0x2825e5['length'];_0x5b6b55<_0x3d9c57;_0x5b6b55++){_0x1bee6b+='%'+('00'+_0x2825e5['charCodeAt'](_0x5b6b55)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1bee6b);};a0_0x3386['eZKrsN']=_0x55a7a7,a0_0x3386['IKLLGU']={},a0_0x3386['dAFQby']=!![];}const _0x295487=_0x130955[0x0],_0x56c3bd=_0x4c1009+_0x295487,_0x4ab726=a0_0x3386['IKLLGU'][_0x56c3bd];return!_0x4ab726?(_0x3386b4=a0_0x3386['eZKrsN'](_0x3386b4),a0_0x3386['IKLLGU'][_0x56c3bd]=_0x3386b4):_0x3386b4=_0x4ab726,_0x3386b4;}let executeQuery;if(dbType==='oracle'){const oracleDb=require(a0_0x262393(0x13f));executeQuery=(_0x315bff,_0x276ab2)=>oracleDb['executeQuery'](_0x315bff,_0x276ab2);}else{if(dbType==='mysql'){const mysqlDb=require('./db-mysql');executeQuery=(_0x12cc28,_0x409ca6)=>mysqlDb[a0_0x262393(0x137)](_0x12cc28,_0x409ca6);}else executeQuery=require(a0_0x262393(0x125))['executeQuery'];}const {logger}=require(a0_0x262393(0x13c));class LookupResolver{constructor(){const _0x270825=a0_0x262393;this[_0x270825(0x14f)]=new Map();}['clearCache'](){const _0x55a204=a0_0x262393,_0x38c4ea={'TRbjn':'lookup_cache_cleared'};this[_0x55a204(0x14f)][_0x55a204(0x150)](),logger[_0x55a204(0x14b)]({'event':_0x38c4ea['TRbjn']},_0x55a204(0x14e));}async['loadLookupTable'](_0x3798bd,_0x47d7c6,_0x4c78bb){const _0x907868=a0_0x262393,_0x942811={'JUucg':function(_0x5a9d82,_0xe0d0e6){return _0x5a9d82!==_0xe0d0e6;},'VduKq':function(_0xe95d3,_0x580969){return _0xe95d3!==_0x580969;},'vZrFa':function(_0x5e09fa,_0x95534a){return _0x5e09fa(_0x95534a);}},_0x4032ef=_0x3798bd+':'+_0x47d7c6+':'+_0x4c78bb;if(this['lookupCache']['has'](_0x4032ef))return this['lookupCache']['get'](_0x4032ef);try{const _0x513556='SELECT\x20'+_0x4c78bb+',\x20'+_0x47d7c6+_0x907868(0x136)+_0x3798bd,_0x4d2702=await executeQuery(_0x513556),_0xd61e8a=new Map();return _0x4d2702[_0x907868(0x130)](_0x2220c4=>{const _0x43c7cc=_0x907868,_0x56aae0=_0x942811[_0x43c7cc(0x135)](_0x2220c4[_0x47d7c6],undefined)?_0x2220c4[_0x47d7c6]:_0x2220c4[_0x47d7c6[_0x43c7cc(0x148)]()],_0xec28d6=_0x2220c4[_0x4c78bb]!==undefined?_0x2220c4[_0x4c78bb]:_0x2220c4[_0x4c78bb['toUpperCase']()];_0x942811['VduKq'](_0x56aae0,null)&&_0x56aae0!==undefined&&(_0xd61e8a[_0x43c7cc(0x14a)](_0x942811[_0x43c7cc(0x122)](String,_0x56aae0)['toLowerCase']()['trim'](),_0xec28d6),_0xd61e8a['set'](_0x942811['vZrFa'](String,_0x56aae0)[_0x43c7cc(0x147)](),_0xec28d6));}),this['lookupCache']['set'](_0x4032ef,_0xd61e8a),logger['info']({'event':'lookup_table_loaded','table':_0x3798bd,'column':_0x47d7c6,'count':_0x4d2702[_0x907868(0x149)]},_0x907868(0x131)+_0x3798bd),_0xd61e8a;}catch(_0x3536ee){logger[_0x907868(0x138)]({'event':'lookup_table_load_error','table':_0x3798bd,'error':_0x3536ee['message']},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x3798bd);throw _0x3536ee;}}['resolveLookupValue'](_0x3b03fd,_0x3ca92b){const _0x5a4db8=a0_0x262393;if(_0x3b03fd===null||_0x3b03fd===undefined||_0x3b03fd==='')return null;const _0x18c393=String(_0x3b03fd)[_0x5a4db8(0x147)]();if(_0x3ca92b['has'](_0x18c393))return _0x3ca92b[_0x5a4db8(0x120)](_0x18c393);const _0x4e0625=_0x18c393[_0x5a4db8(0x126)]();if(_0x3ca92b['has'](_0x4e0625))return _0x3ca92b['get'](_0x4e0625);return null;}async['processLookupFields'](_0x1c4ed0,_0x2977e7){const _0x4e3af1=a0_0x262393,_0x324f68={'fFXTn':function(_0xc2a1f5,_0x720bef){return _0xc2a1f5!==_0x720bef;},'xffHg':function(_0x2640ef,_0x37af13){return _0x2640ef===_0x37af13;},'oZifF':_0x4e3af1(0x140)};if(!_0x2977e7||_0x324f68['xffHg'](Object[_0x4e3af1(0x142)](_0x2977e7)[_0x4e3af1(0x149)],0x0))return{'processedRows':_0x1c4ed0,'errors':[]};const _0xfba4df=[],_0xec24bf=new Map();for(const [_0x43c064,_0xce514]of Object[_0x4e3af1(0x139)](_0x2977e7)){const {lookupTable:_0x52ba5e,lookupColumn:_0x26193b,lookupIdColumn:_0x4102c5}=_0xce514,_0x3bf388=_0x52ba5e+':'+_0x26193b+':'+_0x4102c5;if(!_0xec24bf[_0x4e3af1(0x13a)](_0x3bf388)){const _0x56c38f=await this[_0x4e3af1(0x13b)](_0x52ba5e,_0x26193b,_0x4102c5);_0xec24bf['set'](_0x3bf388,_0x56c38f);}}const _0x5992d7=_0x1c4ed0[_0x4e3af1(0x129)]((_0x309669,_0x64a238)=>{const _0xed593c=_0x4e3af1,_0x3e496a={..._0x309669};for(const [_0x4e4d05,_0x4cd804]of Object[_0xed593c(0x139)](_0x2977e7)){const {lookupTable:_0xc2bbeb,lookupColumn:_0x43111b,lookupIdColumn:_0x18278f,targetField:_0x3f664b,required:_0x3ebee6}=_0x4cd804,_0x259024=_0xc2bbeb+':'+_0x43111b+':'+_0x18278f,_0x13e019=_0xec24bf['get'](_0x259024),_0xa5d32d=_0x309669[_0x4e4d05];if((_0xa5d32d===null||_0xa5d32d===undefined||_0xa5d32d==='')&&!_0x3ebee6){_0x3e496a[_0x3f664b]=null;continue;}const _0x4799e8=this['resolveLookupValue'](_0xa5d32d,_0x13e019);_0x324f68[_0xed593c(0x145)](_0x4799e8,null)?_0x3e496a[_0x3f664b]=_0x4799e8:(_0x3ebee6&&_0xfba4df['push']({'rowIndex':_0x64a238,'field':_0x4e4d05,'value':_0xa5d32d,'targetField':_0x3f664b,'lookupTable':_0xc2bbeb,'message':_0xed593c(0x124)+_0xa5d32d+_0xed593c(0x144)+_0xc2bbeb}),_0x3e496a[_0x3f664b]=null);}return _0x3e496a;});return logger[_0x4e3af1(0x146)]({'event':_0x324f68[_0x4e3af1(0x143)],'totalRows':_0x1c4ed0[_0x4e3af1(0x149)],'errorCount':_0xfba4df['length'],'lookupFieldCount':Object[_0x4e3af1(0x142)](_0x2977e7)['length']},'Lookup\x20fields\x20processed'),{'processedRows':_0x5992d7,'errors':_0xfba4df};}['getDistinctValues'](_0x3f885c,_0x3edb6c){const _0x18e2f7=a0_0x262393,_0x56151a={'jmGsK':function(_0x1faf3e,_0x543ba7){return _0x1faf3e!==_0x543ba7;}},_0x2742ce=new Set();return _0x3f885c[_0x18e2f7(0x130)](_0x48c78b=>{const _0x4fd935=_0x18e2f7,_0x7403ee=_0x48c78b[_0x3edb6c];_0x56151a[_0x4fd935(0x141)](_0x7403ee,null)&&_0x7403ee!==undefined&&_0x7403ee!==''&&_0x2742ce[_0x4fd935(0x14d)](String(_0x7403ee)[_0x4fd935(0x147)]());}),Array[_0x18e2f7(0x12d)](_0x2742ce);}async['validateLookupValues'](_0x3e2a68,_0x121691){const _0x335280=a0_0x262393,_0x874062={'maMpF':function(_0x1a1b96,_0xf706bb){return _0x1a1b96===_0xf706bb;},'zyfCY':function(_0x5edecf,_0x2b2171){return _0x5edecf>_0x2b2171;}};if(!_0x121691||Object['keys'](_0x121691)['length']===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x5c74dd=[],_0x28f22a={};for(const [_0x5535b6,_0x45d4dc]of Object['entries'](_0x121691)){const {lookupTable:_0x5bdc5e,lookupColumn:_0x59b209,lookupIdColumn:_0x8bf8dd,required:_0x40ac7b}=_0x45d4dc,_0x44592e=this['getDistinctValues'](_0x3e2a68,_0x5535b6),_0x8e8684=await this[_0x335280(0x13b)](_0x5bdc5e,_0x59b209,_0x8bf8dd),_0x4120a7=[],_0x57de84=[];_0x44592e['forEach'](_0x36a29d=>{const _0x4df62f=this['resolveLookupValue'](_0x36a29d,_0x8e8684);_0x4df62f!==null?_0x57de84['push'](_0x36a29d):_0x4120a7['push'](_0x36a29d);});if(_0x874062['zyfCY'](_0x4120a7[_0x335280(0x149)],0x0)&&_0x40ac7b){_0x5c74dd[_0x335280(0x12f)]({'field':_0x5535b6,'lookupTable':_0x5bdc5e,'invalidValues':_0x4120a7,'message':_0x4120a7[_0x335280(0x149)]+_0x335280(0x133)+_0x5bdc5e});const _0xd4f563=[];_0x8e8684['forEach']((_0x271685,_0x4efda9)=>{if(_0x874062['maMpF'](_0x4efda9,_0x4efda9['toLowerCase']()))return;_0xd4f563['push'](_0x4efda9);}),_0x28f22a[_0x5535b6]={'invalidValues':_0x4120a7,'availableValues':_0xd4f563['slice'](0x0,0x32)};}}return{'valid':_0x5c74dd['length']===0x0,'errors':_0x5c74dd,'suggestions':_0x28f22a};}}module['exports']=new LookupResolver();
1
+ const a0_0x398dd7=a0_0x2d54;(function(_0x47650f,_0x592fa1){const _0x10f363=a0_0x2d54,_0x442617=_0x47650f();while(!![]){try{const _0xba9a99=parseInt(_0x10f363(0x123))/0x1*(-parseInt(_0x10f363(0x12e))/0x2)+-parseInt(_0x10f363(0x122))/0x3+-parseInt(_0x10f363(0x134))/0x4+-parseInt(_0x10f363(0x13a))/0x5*(-parseInt(_0x10f363(0x11e))/0x6)+parseInt(_0x10f363(0x120))/0x7*(parseInt(_0x10f363(0x137))/0x8)+parseInt(_0x10f363(0x145))/0x9*(-parseInt(_0x10f363(0x135))/0xa)+parseInt(_0x10f363(0x12f))/0xb;if(_0xba9a99===_0x592fa1)break;else _0x442617['push'](_0x442617['shift']());}catch(_0x524fcf){_0x442617['push'](_0x442617['shift']());}}}(a0_0x480c,0x6042c));function a0_0x480c(){const _0x152628=['BwfW','ywrK','Aw5MBW','zfzOrKi','mZa5mte0q0nRsMzZ','ChvZAa','ndu2nZK5EuHxEwrs','A2v5CW','mtyXmtmYn3b2zwvzrW','mK1nAgfQtG','zgvIDwC','iezst00G','BgvUz3rO','y2XLyxjdywnOzq','zM9YrwfJAa','v1DZCKq','DMfSAwrHDgvmB29RDxbwywX1zxm','BxLZCwW','zeP6B3G','C2v0','ntK3ndC0rfzrAhbN','mtKZnZC2mJjeBMHgtKW','yM1ir3O','Dg9vChbLCKnHC2u','lI9KyG','iIbUB3qGzM91BMqGAw4G','mJqXnZeZmNrzvxfHqq','mta5mJK0mhzQshPdBa','z2v0','ndbXDhbADgW','Bg9VA3vWx3rHyMXLx2XVywrLza','C2XPy2u','mtvwvwrZseK','Dg9mB3DLCKnHC2u','zw50CMLLCW','Bg9VA3vWq2fJAgu','AgfZ','CMvZB2X2zuXVB2T1CfzHBhvL','zxHLy3v0zvf1zxj5','qvHyv0C','DhjPBq','z2v0rgLZDgLUy3rwywX1zxm','ChjVy2vZC0XVB2T1CezPzwXKCW','ovLWy2DXsW','B3jHy2XL','DwXLsM0'];a0_0x480c=function(){return _0x152628;};return a0_0x480c();}const dbType=(process['env']['DB_TYPE']||'postgresql')['toLowerCase']();let executeQuery;if(dbType===a0_0x398dd7(0x146)){const oracleDb=require('./db-oracle');executeQuery=(_0x1c3cd6,_0x480d51)=>oracleDb[a0_0x398dd7(0x140)](_0x1c3cd6,_0x480d51);}else{if(dbType===a0_0x398dd7(0x12b)){const mysqlDb=require('./db-mysql');executeQuery=(_0x427561,_0x9b8072)=>mysqlDb['executeQuery'](_0x427561,_0x9b8072);}else executeQuery=require(a0_0x398dd7(0x132))['executeQuery'];}function a0_0x2d54(_0x5af3d4,_0x4b0ba6){_0x5af3d4=_0x5af3d4-0x119;const _0x480cc2=a0_0x480c();let _0x2d54c4=_0x480cc2[_0x5af3d4];if(a0_0x2d54['ObBAzt']===undefined){var _0x5cea07=function(_0x12f1ab){const _0x4df29e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x408423='',_0x1e6ed8='';for(let _0x168650=0x0,_0x59bca6,_0x32534a,_0x9bceae=0x0;_0x32534a=_0x12f1ab['charAt'](_0x9bceae++);~_0x32534a&&(_0x59bca6=_0x168650%0x4?_0x59bca6*0x40+_0x32534a:_0x32534a,_0x168650++%0x4)?_0x408423+=String['fromCharCode'](0xff&_0x59bca6>>(-0x2*_0x168650&0x6)):0x0){_0x32534a=_0x4df29e['indexOf'](_0x32534a);}for(let _0x26897a=0x0,_0x1ddfe3=_0x408423['length'];_0x26897a<_0x1ddfe3;_0x26897a++){_0x1e6ed8+='%'+('00'+_0x408423['charCodeAt'](_0x26897a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1e6ed8);};a0_0x2d54['SYOrlR']=_0x5cea07,a0_0x2d54['lLEiVF']={},a0_0x2d54['ObBAzt']=!![];}const _0x565d42=_0x480cc2[0x0],_0x34b20a=_0x5af3d4+_0x565d42,_0x5777c2=a0_0x2d54['lLEiVF'][_0x34b20a];return!_0x5777c2?(_0x2d54c4=a0_0x2d54['SYOrlR'](_0x2d54c4),a0_0x2d54['lLEiVF'][_0x34b20a]=_0x2d54c4):_0x2d54c4=_0x5777c2,_0x2d54c4;}const {logger}=require('./logger');class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x398dd7(0x127)](){const _0x11a0fd=a0_0x398dd7,_0x1ad264={'Xpusp':'lookup_cache_cleared','bmHGz':'Lookup\x20cache\x20cleared'};this[_0x11a0fd(0x13d)]['clear'](),logger[_0x11a0fd(0x124)]({'event':_0x1ad264['Xpusp']},_0x1ad264[_0x11a0fd(0x130)]);}async['loadLookupTable'](_0x2d9812,_0x2093d2,_0x57f452){const _0xcc4937=a0_0x398dd7,_0x5f5aed={'NdUrE':function(_0x30c646,_0x125de6){return _0x30c646(_0x125de6);}},_0x58d328=_0x2d9812+':'+_0x2093d2+':'+_0x57f452;if(this[_0xcc4937(0x13d)]['has'](_0x58d328))return this[_0xcc4937(0x13d)][_0xcc4937(0x136)](_0x58d328);try{const _0x196bce='SELECT\x20'+_0x57f452+',\x20'+_0x2093d2+_0xcc4937(0x125)+_0x2d9812,_0x23d9a4=await executeQuery(_0x196bce),_0x642b61=new Map();return _0x23d9a4[_0xcc4937(0x128)](_0x5c5c41=>{const _0xccbfe5=_0xcc4937,_0x3b8596=_0x5c5c41[_0x2093d2]!==undefined?_0x5c5c41[_0x2093d2]:_0x5c5c41[_0x2093d2[_0xccbfe5(0x131)]()],_0x4c508f=_0x5c5c41[_0x57f452]!==undefined?_0x5c5c41[_0x57f452]:_0x5c5c41[_0x57f452[_0xccbfe5(0x131)]()];_0x3b8596!==null&&_0x3b8596!==undefined&&(_0x642b61[_0xccbfe5(0x12d)](_0x5f5aed['NdUrE'](String,_0x3b8596)[_0xccbfe5(0x13b)]()[_0xccbfe5(0x142)](),_0x4c508f),_0x642b61[_0xccbfe5(0x12d)](String(_0x3b8596)[_0xccbfe5(0x142)](),_0x4c508f));}),this['lookupCache'][_0xcc4937(0x12d)](_0x58d328,_0x642b61),logger[_0xcc4937(0x11c)]({'event':_0xcc4937(0x138),'table':_0x2d9812,'column':_0x2093d2,'count':_0x23d9a4['length']},'Lookup\x20table\x20loaded:\x20'+_0x2d9812),_0x642b61;}catch(_0x651684){logger['error']({'event':'lookup_table_load_error','table':_0x2d9812,'error':_0x651684['message']},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x2d9812);throw _0x651684;}}['resolveLookupValue'](_0x19d5b5,_0x150b5b){const _0x1f5c85=a0_0x398dd7,_0x4de534={'BPJZj':function(_0x275fe9,_0x13a2d4){return _0x275fe9===_0x13a2d4;}};if(_0x4de534['BPJZj'](_0x19d5b5,null)||_0x19d5b5===undefined||_0x4de534['BPJZj'](_0x19d5b5,''))return null;const _0x47f159=String(_0x19d5b5)[_0x1f5c85(0x142)]();if(_0x150b5b[_0x1f5c85(0x13e)](_0x47f159))return _0x150b5b['get'](_0x47f159);const _0x389b5d=_0x47f159['toLowerCase']();if(_0x150b5b['has'](_0x389b5d))return _0x150b5b[_0x1f5c85(0x136)](_0x389b5d);return null;}async[a0_0x398dd7(0x144)](_0x4aa06e,_0x3090e7){const _0x2481af=a0_0x398dd7,_0x13e4f1={'dJzox':function(_0x5c6c22,_0x5e0ae8){return _0x5c6c22===_0x5e0ae8;},'ZBLfr':'lookup_fields_processed','dVhFB':'Lookup\x20fields\x20processed'};if(!_0x3090e7||Object['keys'](_0x3090e7)[_0x2481af(0x126)]===0x0)return{'processedRows':_0x4aa06e,'errors':[]};const _0x37856d=[],_0x5ee0de=new Map();for(const [_0x389d35,_0x5c773d]of Object['entries'](_0x3090e7)){const {lookupTable:_0x361bbd,lookupColumn:_0x5b7ac2,lookupIdColumn:_0x2337bd}=_0x5c773d,_0x2e2be9=_0x361bbd+':'+_0x5b7ac2+':'+_0x2337bd;if(!_0x5ee0de['has'](_0x2e2be9)){const _0x2392b8=await this['loadLookupTable'](_0x361bbd,_0x5b7ac2,_0x2337bd);_0x5ee0de[_0x2481af(0x12d)](_0x2e2be9,_0x2392b8);}}const _0x38f8b1=_0x4aa06e[_0x2481af(0x11a)]((_0x1d6284,_0x2dd6e7)=>{const _0x3e523e=_0x2481af,_0x1b46ae={..._0x1d6284};for(const [_0x3061bc,_0x30362c]of Object[_0x3e523e(0x13c)](_0x3090e7)){const {lookupTable:_0x28527e,lookupColumn:_0x194699,lookupIdColumn:_0x51b6c8,targetField:_0x4300e0,required:_0x216d4c}=_0x30362c,_0x233499=_0x28527e+':'+_0x194699+':'+_0x51b6c8,_0x4276bd=_0x5ee0de['get'](_0x233499),_0x251813=_0x1d6284[_0x3061bc];if((_0x251813===null||_0x13e4f1[_0x3e523e(0x12c)](_0x251813,undefined)||_0x13e4f1['dJzox'](_0x251813,''))&&!_0x216d4c){_0x1b46ae[_0x4300e0]=null;continue;}const _0x25d047=this[_0x3e523e(0x13f)](_0x251813,_0x4276bd);_0x25d047!==null?_0x1b46ae[_0x4300e0]=_0x25d047:(_0x216d4c&&_0x37856d[_0x3e523e(0x11f)]({'rowIndex':_0x2dd6e7,'field':_0x3061bc,'value':_0x251813,'targetField':_0x4300e0,'lookupTable':_0x28527e,'message':'Value\x20\x22'+_0x251813+_0x3e523e(0x133)+_0x28527e}),_0x1b46ae[_0x4300e0]=null);}return _0x1b46ae;});return logger[_0x2481af(0x11c)]({'event':_0x13e4f1['ZBLfr'],'totalRows':_0x4aa06e['length'],'errorCount':_0x37856d['length'],'lookupFieldCount':Object[_0x2481af(0x121)](_0x3090e7)[_0x2481af(0x126)]},_0x13e4f1[_0x2481af(0x11d)]),{'processedRows':_0x38f8b1,'errors':_0x37856d};}[a0_0x398dd7(0x143)](_0x24d369,_0x5136f7){const _0x43b63f={'AXXWG':function(_0x4dcf0e,_0x4bf16b){return _0x4dcf0e!==_0x4bf16b;},'WWsrD':function(_0x2ecf73,_0x397e81){return _0x2ecf73(_0x397e81);}},_0x373f45=new Set();return _0x24d369['forEach'](_0x1cc420=>{const _0x147cc1=a0_0x2d54,_0x570d35=_0x1cc420[_0x5136f7];_0x570d35!==null&&_0x43b63f[_0x147cc1(0x141)](_0x570d35,undefined)&&_0x570d35!==''&&_0x373f45[_0x147cc1(0x11b)](_0x43b63f[_0x147cc1(0x129)](String,_0x570d35)[_0x147cc1(0x142)]());}),Array['from'](_0x373f45);}async[a0_0x398dd7(0x12a)](_0x11750a,_0x4fbba0){const _0x511227=a0_0x398dd7,_0x2a299d={'fBhRo':function(_0xe42210,_0x8e8853){return _0xe42210===_0x8e8853;},'uleJm':function(_0x543773,_0x437297){return _0x543773>_0x437297;}};if(!_0x4fbba0||_0x2a299d['fBhRo'](Object[_0x511227(0x121)](_0x4fbba0)['length'],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x322dfc=[],_0x5a7f45={};for(const [_0x2de6dd,_0x413951]of Object['entries'](_0x4fbba0)){const {lookupTable:_0x34d671,lookupColumn:_0x555bc6,lookupIdColumn:_0x1d3adf,required:_0x1c0156}=_0x413951,_0x2ed9c4=this[_0x511227(0x143)](_0x11750a,_0x2de6dd),_0x1813ab=await this['loadLookupTable'](_0x34d671,_0x555bc6,_0x1d3adf),_0xe066d7=[],_0x249775=[];_0x2ed9c4['forEach'](_0x12c3a4=>{const _0x53874f=_0x511227,_0x5437cf=this['resolveLookupValue'](_0x12c3a4,_0x1813ab);_0x5437cf!==null?_0x249775[_0x53874f(0x11f)](_0x12c3a4):_0xe066d7[_0x53874f(0x11f)](_0x12c3a4);});if(_0x2a299d[_0x511227(0x119)](_0xe066d7[_0x511227(0x126)],0x0)&&_0x1c0156){_0x322dfc[_0x511227(0x11f)]({'field':_0x2de6dd,'lookupTable':_0x34d671,'invalidValues':_0xe066d7,'message':_0xe066d7['length']+'\x20value(s)\x20not\x20found\x20in\x20'+_0x34d671});const _0xb69cc9=[];_0x1813ab['forEach']((_0x1e3db2,_0x13bd7e)=>{const _0x1a57a2=_0x511227;if(_0x13bd7e===_0x13bd7e[_0x1a57a2(0x13b)]())return;_0xb69cc9['push'](_0x13bd7e);}),_0x5a7f45[_0x2de6dd]={'invalidValues':_0xe066d7,'availableValues':_0xb69cc9[_0x511227(0x139)](0x0,0x32)};}}return{'valid':_0x322dfc['length']===0x0,'errors':_0x322dfc,'suggestions':_0x5a7f45};}}module['exports']=new LookupResolver();
@@ -1 +1 @@
1
- function a0_0x24e5(){const _0x4d7261=['wg9Zzxm','uMrpsMC','t0nXEuy','ugLfsMu','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','mtbMwK9gBKK','zxHWB3j0CW','y2XLyxjdywnOzq','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','DgfIBgvoyw1L','s2zIufG','mtCWnty5nMrswxHhqq','nZuZndK2og9Xu0LttW','DxrMoa','nJaZoti2nwrXwKzmBa','AM9PBG','z2v0','zgvIDwC','nePjBNPszW','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','y2fJAgu','DKrKCxu','lI9SB2DNzxi','Bg9HzfbHEwXVywq','Aw5MBW','zgf0yxrHyMXLC1f1zxj5','nJG5mti0Cw9jtfzU','lMPZB24','mtnfq0vRAgC','Cgf5Bg9HzerPCG','nta3mJa5nvzKv0nKDW','ntqYmdrNC3vzzwC','lwv4Cg9YDa','C2v0','mta5odK3mZHOBfDcDgK','Cgf0Aa','zxjYB3i','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','ChjVBwLZzxm'];a0_0x24e5=function(){return _0x4d7261;};return a0_0x24e5();}const a0_0x2f2476=a0_0x470d;(function(_0x2bd45a,_0x3ea5ea){const _0x16b788=a0_0x470d,_0x5492bf=_0x2bd45a();while(!![]){try{const _0x1c43be=parseInt(_0x16b788(0x14b))/0x1*(parseInt(_0x16b788(0x14e))/0x2)+parseInt(_0x16b788(0x149))/0x3*(-parseInt(_0x16b788(0x168))/0x4)+parseInt(_0x16b788(0x164))/0x5+-parseInt(_0x16b788(0x162))/0x6+-parseInt(_0x16b788(0x14d))/0x7+parseInt(_0x16b788(0x161))/0x8+-parseInt(_0x16b788(0x151))/0x9*(-parseInt(_0x16b788(0x15b))/0xa);if(_0x1c43be===_0x3ea5ea)break;else _0x5492bf['push'](_0x5492bf['shift']());}catch(_0x1d70b4){_0x5492bf['push'](_0x5492bf['shift']());}}}(a0_0x24e5,0xbf7e0));const fs=require('fs')[a0_0x2f2476(0x155)],path=require(a0_0x2f2476(0x152)),{logger}=require(a0_0x2f2476(0x16c));function a0_0x470d(_0xeeccb4,_0x55cf3d){_0xeeccb4=_0xeeccb4-0x146;const _0x24e53f=a0_0x24e5();let _0x470dba=_0x24e53f[_0xeeccb4];if(a0_0x470d['ZLpZKh']===undefined){var _0xd39595=function(_0x48914a){const _0x5050c5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc1a124='',_0x2e8165='';for(let _0x2853e8=0x0,_0x435550,_0x1895dc,_0x2c1916=0x0;_0x1895dc=_0x48914a['charAt'](_0x2c1916++);~_0x1895dc&&(_0x435550=_0x2853e8%0x4?_0x435550*0x40+_0x1895dc:_0x1895dc,_0x2853e8++%0x4)?_0xc1a124+=String['fromCharCode'](0xff&_0x435550>>(-0x2*_0x2853e8&0x6)):0x0){_0x1895dc=_0x5050c5['indexOf'](_0x1895dc);}for(let _0x43d777=0x0,_0x53c732=_0xc1a124['length'];_0x43d777<_0x53c732;_0x43d777++){_0x2e8165+='%'+('00'+_0xc1a124['charCodeAt'](_0x43d777)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2e8165);};a0_0x470d['oUTqIW']=_0xd39595,a0_0x470d['thAvvh']={},a0_0x470d['ZLpZKh']=!![];}const _0x1c6887=_0x24e53f[0x0],_0x83ba05=_0xeeccb4+_0x1c6887,_0x1212b3=a0_0x470d['thAvvh'][_0x83ba05];return!_0x1212b3?(_0x470dba=a0_0x470d['oUTqIW'](_0x470dba),a0_0x470d['thAvvh'][_0x83ba05]=_0x470dba):_0x470dba=_0x1212b3,_0x470dba;}class PayloadLoader{constructor(){const _0x2101de=a0_0x2f2476,_0x36c747={'Xoses':'../../payload'};this[_0x2101de(0x14c)]=path[_0x2101de(0x165)](__dirname,_0x36c747[_0x2101de(0x156)]),this[_0x2101de(0x16a)]=new Map();}async[a0_0x2f2476(0x146)](_0x38949c,_0xa8191f){const _0x1363be=a0_0x2f2476,_0x3ef689={'KfbPX':'Payload\x20loaded\x20successfully'},_0x55f76f=_0x38949c+':'+_0xa8191f;if(this['cache']['has'](_0x55f76f))return this[_0x1363be(0x16a)][_0x1363be(0x166)](_0x55f76f);const _0xd939ee=path['join'](this[_0x1363be(0x14c)],_0x38949c+'_'+_0xa8191f+_0x1363be(0x14a));try{const _0x4a7162=await fs['readFile'](_0xd939ee,_0x1363be(0x163)),_0x41076a=JSON['parse'](_0x4a7162);return this[_0x1363be(0x16a)][_0x1363be(0x150)](_0x55f76f,_0x41076a),logger['debug']({'event':'payload_loaded','project':_0x38949c,'resource':_0xa8191f},_0x3ef689[_0x1363be(0x160)]),_0x41076a;}catch(_0x9ff7b2){logger[_0x1363be(0x153)]({'event':'payload_load_error','project':_0x38949c,'resource':_0xa8191f,'error':_0x9ff7b2['message']},'Failed\x20to\x20load\x20payload');throw new Error('Payload\x20not\x20found:\x20'+_0x38949c+'_'+_0xa8191f);}}async['loadPayloadByName'](_0x290ffc){const _0x18b6d0=a0_0x2f2476,_0x3fc1c3={'vDdqu':'utf8','RdOJg':'payload_loaded','OCqyF':_0x18b6d0(0x154)},_0x335783='payload:'+_0x290ffc;if(this[_0x18b6d0(0x16a)]['has'](_0x335783))return this[_0x18b6d0(0x16a)][_0x18b6d0(0x166)](_0x335783);const _0xc30bc=path['join'](this['payloadDir'],_0x290ffc+_0x18b6d0(0x14a));try{const _0x867fa2=await fs['readFile'](_0xc30bc,_0x3fc1c3[_0x18b6d0(0x16b)]),_0x51ddc6=JSON['parse'](_0x867fa2);return this['cache']['set'](_0x335783,_0x51ddc6),logger[_0x18b6d0(0x167)]({'event':_0x3fc1c3[_0x18b6d0(0x157)],'payloadName':_0x290ffc},_0x3fc1c3[_0x18b6d0(0x158)]),_0x51ddc6;}catch(_0x160816){logger[_0x18b6d0(0x153)]({'event':_0x18b6d0(0x169),'payloadName':_0x290ffc,'error':_0x160816['message']},_0x18b6d0(0x15e));throw new Error('Payload\x20not\x20found:\x20'+_0x290ffc);}}['isActionEnabled'](_0xaab10,_0x2cb02d){return _0xaab10['action']&&_0xaab10['action'][_0x2cb02d]===!![];}['getExportConfig'](_0x302044){const _0x1dd5c8=a0_0x2f2476;return{'columns':_0x302044['fieldName']||[],'filename':_0x302044[_0x1dd5c8(0x15f)]['replace']('.','-')+_0x1dd5c8(0x14f),'datatablesQuery':_0x302044[_0x1dd5c8(0x148)]||null,'columnFormats':_0x302044['columnFormats']||null,'fieldLabels':_0x302044['fieldLabels']||null};}[a0_0x2f2476(0x15d)](){const _0x5d9bd4=a0_0x2f2476,_0x50ef66={'PiEJe':'payload_cache_cleared'};this[_0x5d9bd4(0x16a)]['clear'](),logger[_0x5d9bd4(0x147)]({'event':_0x50ef66[_0x5d9bd4(0x159)]},_0x5d9bd4(0x15a));}}module[a0_0x2f2476(0x15c)]=new PayloadLoader();
1
+ function a0_0x4c3a(_0x480426,_0x36cdc9){_0x480426=_0x480426-0x1e6;const _0xd5a7f8=a0_0xd5a7();let _0x4c3abf=_0xd5a7f8[_0x480426];if(a0_0x4c3a['wQKcRj']===undefined){var _0xe39724=function(_0x309813){const _0x38257a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x79854='',_0x17107e='';for(let _0x2f36e9=0x0,_0x4ba9c1,_0x397cf4,_0x51d99e=0x0;_0x397cf4=_0x309813['charAt'](_0x51d99e++);~_0x397cf4&&(_0x4ba9c1=_0x2f36e9%0x4?_0x4ba9c1*0x40+_0x397cf4:_0x397cf4,_0x2f36e9++%0x4)?_0x79854+=String['fromCharCode'](0xff&_0x4ba9c1>>(-0x2*_0x2f36e9&0x6)):0x0){_0x397cf4=_0x38257a['indexOf'](_0x397cf4);}for(let _0x332d84=0x0,_0x3e6fc0=_0x79854['length'];_0x332d84<_0x3e6fc0;_0x332d84++){_0x17107e+='%'+('00'+_0x79854['charCodeAt'](_0x332d84)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x17107e);};a0_0x4c3a['CtnmEo']=_0xe39724,a0_0x4c3a['IhrhOA']={},a0_0x4c3a['wQKcRj']=!![];}const _0x559c3b=_0xd5a7f8[0x0],_0x305a4d=_0x480426+_0x559c3b,_0x490282=a0_0x4c3a['IhrhOA'][_0x305a4d];return!_0x490282?(_0x4c3abf=a0_0x4c3a['CtnmEo'](_0x4c3abf),a0_0x4c3a['IhrhOA'][_0x305a4d]=_0x4c3abf):_0x4c3abf=_0x490282,_0x4c3abf;}const a0_0x59e42e=a0_0x4c3a;(function(_0x1ce0a2,_0x52f7d1){const _0x2fff43=a0_0x4c3a,_0x515792=_0x1ce0a2();while(!![]){try{const _0x452cc2=parseInt(_0x2fff43(0x208))/0x1+-parseInt(_0x2fff43(0x20a))/0x2+-parseInt(_0x2fff43(0x210))/0x3*(-parseInt(_0x2fff43(0x1fc))/0x4)+parseInt(_0x2fff43(0x1f5))/0x5+parseInt(_0x2fff43(0x1f8))/0x6*(parseInt(_0x2fff43(0x20b))/0x7)+-parseInt(_0x2fff43(0x206))/0x8+-parseInt(_0x2fff43(0x1ff))/0x9;if(_0x452cc2===_0x52f7d1)break;else _0x515792['push'](_0x515792['shift']());}catch(_0x55fda5){_0x515792['push'](_0x515792['shift']());}}}(a0_0xd5a7,0x95a91));const fs=require('fs')[a0_0x59e42e(0x1f3)],path=require(a0_0x59e42e(0x1ed)),{logger}=require('./logger');class PayloadLoader{constructor(){const _0x1e8f21=a0_0x59e42e;this['payloadDir']=path[_0x1e8f21(0x1f6)](__dirname,'../../payload'),this['cache']=new Map();}async[a0_0x59e42e(0x209)](_0x18b746,_0x29cc39){const _0x512bd3=a0_0x59e42e,_0x3c192f={'lOxQR':_0x512bd3(0x1ef),'eiRxK':_0x512bd3(0x1e6),'FIMDY':'payload_load_error','wWwMI':'Failed\x20to\x20load\x20payload'},_0x2f968a=_0x18b746+':'+_0x29cc39;if(this[_0x512bd3(0x207)]['has'](_0x2f968a))return this['cache']['get'](_0x2f968a);const _0x5bf3e9=path['join'](this['payloadDir'],_0x18b746+'_'+_0x29cc39+_0x512bd3(0x205));try{const _0x31d5f8=await fs[_0x512bd3(0x1fa)](_0x5bf3e9,_0x3c192f[_0x512bd3(0x211)]),_0x5a9319=JSON[_0x512bd3(0x1f1)](_0x31d5f8);return this['cache']['set'](_0x2f968a,_0x5a9319),logger['debug']({'event':_0x3c192f['eiRxK'],'project':_0x18b746,'resource':_0x29cc39},_0x512bd3(0x1fe)),_0x5a9319;}catch(_0x49a4c3){logger['error']({'event':_0x3c192f['FIMDY'],'project':_0x18b746,'resource':_0x29cc39,'error':_0x49a4c3[_0x512bd3(0x20e)]},_0x3c192f[_0x512bd3(0x1ee)]);throw new Error('Payload\x20not\x20found:\x20'+_0x18b746+'_'+_0x29cc39);}}async[a0_0x59e42e(0x201)](_0x592c48){const _0x17741c=a0_0x59e42e,_0x35344c={'Knjgv':'Payload\x20loaded\x20successfully\x20by\x20name','NzQIB':_0x17741c(0x1e9)},_0x568bf8=_0x17741c(0x1e8)+_0x592c48;if(this[_0x17741c(0x207)][_0x17741c(0x202)](_0x568bf8))return this[_0x17741c(0x207)][_0x17741c(0x1ec)](_0x568bf8);const _0x216478=path['join'](this['payloadDir'],_0x592c48+'.json');try{const _0x246dfb=await fs['readFile'](_0x216478,_0x17741c(0x1ef)),_0x53cd57=JSON['parse'](_0x246dfb);return this['cache'][_0x17741c(0x1f4)](_0x568bf8,_0x53cd57),logger[_0x17741c(0x1f2)]({'event':'payload_loaded','payloadName':_0x592c48},_0x35344c['Knjgv']),_0x53cd57;}catch(_0x22cd3a){logger['error']({'event':_0x17741c(0x20f),'payloadName':_0x592c48,'error':_0x22cd3a['message']},_0x35344c['NzQIB']);throw new Error(_0x17741c(0x1eb)+_0x592c48);}}[a0_0x59e42e(0x1fb)](_0x3b278c,_0x37f981){const _0x1df400=a0_0x59e42e;return _0x3b278c[_0x1df400(0x1ea)]&&_0x3b278c['action'][_0x37f981]===!![];}[a0_0x59e42e(0x1f7)](_0x36b3e6){const _0x32ab86=a0_0x59e42e;return{'columns':_0x36b3e6[_0x32ab86(0x1f9)]||[],'filename':_0x36b3e6['tableName'][_0x32ab86(0x20d)]('.','-')+_0x32ab86(0x200),'datatablesQuery':_0x36b3e6['datatablesQuery']||null,'columnFormats':_0x36b3e6['columnFormats']||null,'fieldLabels':_0x36b3e6['fieldLabels']||null};}[a0_0x59e42e(0x1fd)](){const _0xcc2f56=a0_0x59e42e,_0x1c5035={'xhIZL':_0xcc2f56(0x20c)};this['cache'][_0xcc2f56(0x1f0)](),logger['info']({'event':_0xcc2f56(0x1e7)},_0x1c5035[_0xcc2f56(0x204)]);}}function a0_0xd5a7(){const _0x3aa4d2=['nde2nZbMtLPhz3e','zMLLBgroyw1L','CMvHzezPBgu','Axnby3rPB25fBMfIBgvK','ntm2BgniCunj','y2XLyxjdywnOzq','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','mtu1ota0m2Xtyxr4Dq','lwv4Cg9YDa','Bg9HzfbHEwXVywrcEu5HBwu','AgfZ','zxHWB3j0CW','EgHjwKW','lMPZB24','ndyZndK0ng5iyw9MwG','y2fJAgu','nZKZmde2v1bpuMnq','Bg9HzfbHEwXVywq','mtK5mJe4ohbWuNDItW','nJaYvw9ts25R','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','CMvWBgfJzq','BwvZC2fNzq','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','mtCWntHdEgTyEMG','Be94uvi','Cgf5Bg9Hzf9SB2fKzwq','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK','Cgf5Bg9HzdO','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','ywn0Aw9U','ugf5Bg9HzcbUB3qGzM91BMq6ia','z2v0','Cgf0Aa','D1D3tuK','DxrMoa','y2XLyxi','CgfYC2u','zgvIDwC','ChjVBwLZzxm','C2v0','mta0nZq0mhPpAhnksq','AM9PBG','z2v0rxHWB3j0q29UzMLN'];a0_0xd5a7=function(){return _0x3aa4d2;};return a0_0xd5a7();}module[a0_0x59e42e(0x203)]=new PayloadLoader();
@@ -1 +1 @@
1
- 'use strict';function a0_0x1854(_0x2e7e99,_0x29bb1a){_0x2e7e99=_0x2e7e99-0xab;var _0x112066=a0_0x1120();var _0x1854fa=_0x112066[_0x2e7e99];if(a0_0x1854['AvbytO']===undefined){var _0x3ee4e2=function(_0x10c68f){var _0x48496e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x4f1ad6='',_0x5676b5='';for(var _0x3a4610=0x0,_0xf67a22,_0x5b843b,_0x279297=0x0;_0x5b843b=_0x10c68f['charAt'](_0x279297++);~_0x5b843b&&(_0xf67a22=_0x3a4610%0x4?_0xf67a22*0x40+_0x5b843b:_0x5b843b,_0x3a4610++%0x4)?_0x4f1ad6+=String['fromCharCode'](0xff&_0xf67a22>>(-0x2*_0x3a4610&0x6)):0x0){_0x5b843b=_0x48496e['indexOf'](_0x5b843b);}for(var _0x520057=0x0,_0x2cbe0e=_0x4f1ad6['length'];_0x520057<_0x2cbe0e;_0x520057++){_0x5676b5+='%'+('00'+_0x4f1ad6['charCodeAt'](_0x520057)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5676b5);};a0_0x1854['PzHZIw']=_0x3ee4e2,a0_0x1854['WJgmmK']={},a0_0x1854['AvbytO']=!![];}var _0x3bac03=_0x112066[0x0],_0xdc158a=_0x2e7e99+_0x3bac03,_0x480453=a0_0x1854['WJgmmK'][_0xdc158a];return!_0x480453?(_0x1854fa=a0_0x1854['PzHZIw'](_0x1854fa),a0_0x1854['WJgmmK'][_0xdc158a]=_0x1854fa):_0x1854fa=_0x480453,_0x1854fa;}var a0_0x3500e3=a0_0x1854;(function(_0x39360d,_0x5890cc){var _0x391e27=a0_0x1854,_0x301933=_0x39360d();while(!![]){try{var _0x32f822=parseInt(_0x391e27(0xab))/0x1+-parseInt(_0x391e27(0xb2))/0x2+-parseInt(_0x391e27(0xb4))/0x3*(parseInt(_0x391e27(0xac))/0x4)+parseInt(_0x391e27(0xad))/0x5*(parseInt(_0x391e27(0xb3))/0x6)+parseInt(_0x391e27(0xb1))/0x7+-parseInt(_0x391e27(0xb5))/0x8+parseInt(_0x391e27(0xaf))/0x9;if(_0x32f822===_0x5890cc)break;else _0x301933['push'](_0x301933['shift']());}catch(_0x2f9997){_0x301933['push'](_0x301933['shift']());}}}(a0_0x1120,0xcc2c8));function a0_0x1120(){var _0x24d1e6=['mtmZmdGYnKjQzwDKCW','nJG2nty0zKXOAuHz','otGWmZbbshH1vvy','Dg9ju09tDhjPBMC','ntG5mZu2mhfRvhnuCW','zxHWB3j0CW','mta5odm0otD2EuPNBe4','mJKYotaWngnSvfHZza','nZjsBvnivMq','mtHHsMf5wfi','mZy3ndKYmhzqv0rsBa'];a0_0x1120=function(){return _0x24d1e6;};return a0_0x1120();}function createResponse(_0x46719b,_0x4b96fe,_0x153146=null){var _0x46dde1=a0_0x1854;return{'success':!![],'statusCode':_0x46719b,'message':_0x4b96fe,'data':_0x153146,'timestamp':new Date()[_0x46dde1(0xae)]()};}function createError(_0x154cd7,_0xf1086c,_0x918922=null){return{'success':![],'statusCode':_0x154cd7,'message':_0xf1086c,'data':_0x918922,'timestamp':new Date()['toISOString']()};}function createValidationError(_0x14d129,_0x3c7cb3){return{'success':![],'statusCode':0x190,'message':_0x14d129,'data':{'errors':_0x3c7cb3},'timestamp':new Date()['toISOString']()};}module[a0_0x3500e3(0xb0)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
1
+ 'use strict';(function(_0x12831a,_0x491cab){var _0x571ea9=a0_0xa20c,_0x49c25c=_0x12831a();while(!![]){try{var _0x51b62a=-parseInt(_0x571ea9(0x1af))/0x1+parseInt(_0x571ea9(0x1a8))/0x2+-parseInt(_0x571ea9(0x1ab))/0x3+-parseInt(_0x571ea9(0x1ae))/0x4+-parseInt(_0x571ea9(0x1a7))/0x5+-parseInt(_0x571ea9(0x1ac))/0x6*(-parseInt(_0x571ea9(0x1aa))/0x7)+parseInt(_0x571ea9(0x1a9))/0x8;if(_0x51b62a===_0x491cab)break;else _0x49c25c['push'](_0x49c25c['shift']());}catch(_0x5187c7){_0x49c25c['push'](_0x49c25c['shift']());}}}(a0_0x18f1,0x8c17f));function createResponse(_0x4441fc,_0x3b4388,_0x549a0e=null){var _0x10b5b7=a0_0xa20c;return{'success':!![],'statusCode':_0x4441fc,'message':_0x3b4388,'data':_0x549a0e,'timestamp':new Date()[_0x10b5b7(0x1ad)]()};}function createError(_0x54dea0,_0x57d9fa,_0x19b2e2=null){var _0xc953d3=a0_0xa20c;return{'success':![],'statusCode':_0x54dea0,'message':_0x57d9fa,'data':_0x19b2e2,'timestamp':new Date()[_0xc953d3(0x1ad)]()};}function a0_0x18f1(){var _0x3bbadf=['odK1ntG0zK5pr0jt','mZC2mdu3mfL6uMH1ta','mJuZndy0A1HcCxDo','mtK1mda5nJHnDgnKr2C','mtG5nJnICLrMte0','nduXmty3q0DeqMzo','ndaYs1f4t0D2','Dg9ju09tDhjPBMC','mtq5ntC4nhnVBwv5sq'];a0_0x18f1=function(){return _0x3bbadf;};return a0_0x18f1();}function createValidationError(_0x3a0e3a,_0x222201){var _0x5db0e3=a0_0xa20c;return{'success':![],'statusCode':0x190,'message':_0x3a0e3a,'data':{'errors':_0x222201},'timestamp':new Date()[_0x5db0e3(0x1ad)]()};}function a0_0xa20c(_0x2dabf0,_0x416db4){_0x2dabf0=_0x2dabf0-0x1a7;var _0x18f1c4=a0_0x18f1();var _0xa20cda=_0x18f1c4[_0x2dabf0];if(a0_0xa20c['cDddyq']===undefined){var _0x1e5583=function(_0x3906b6){var _0xfa3470='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0xb93d8a='',_0x5888a='';for(var _0x36055b=0x0,_0x2e1216,_0x112e17,_0x4c7390=0x0;_0x112e17=_0x3906b6['charAt'](_0x4c7390++);~_0x112e17&&(_0x2e1216=_0x36055b%0x4?_0x2e1216*0x40+_0x112e17:_0x112e17,_0x36055b++%0x4)?_0xb93d8a+=String['fromCharCode'](0xff&_0x2e1216>>(-0x2*_0x36055b&0x6)):0x0){_0x112e17=_0xfa3470['indexOf'](_0x112e17);}for(var _0x77dede=0x0,_0x5c095a=_0xb93d8a['length'];_0x77dede<_0x5c095a;_0x77dede++){_0x5888a+='%'+('00'+_0xb93d8a['charCodeAt'](_0x77dede)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5888a);};a0_0xa20c['GJlQdD']=_0x1e5583,a0_0xa20c['uycuDv']={},a0_0xa20c['cDddyq']=!![];}var _0x57f220=_0x18f1c4[0x0],_0x572d0b=_0x2dabf0+_0x57f220,_0x46dbb5=a0_0xa20c['uycuDv'][_0x572d0b];return!_0x46dbb5?(_0xa20cda=a0_0xa20c['GJlQdD'](_0xa20cda),a0_0xa20c['uycuDv'][_0x572d0b]=_0xa20cda):_0xa20cda=_0x46dbb5,_0xa20cda;}module['exports']={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
@@ -1 +1 @@
1
- const a0_0x2e0341=a0_0x21bf;(function(_0x966396,_0x5497e2){const _0x270532=a0_0x21bf,_0x365260=_0x966396();while(!![]){try{const _0x3174d0=parseInt(_0x270532(0x18e))/0x1+parseInt(_0x270532(0x19e))/0x2*(parseInt(_0x270532(0x1a2))/0x3)+-parseInt(_0x270532(0x19f))/0x4*(-parseInt(_0x270532(0x19d))/0x5)+-parseInt(_0x270532(0x19c))/0x6*(-parseInt(_0x270532(0x184))/0x7)+-parseInt(_0x270532(0x17e))/0x8*(parseInt(_0x270532(0x193))/0x9)+parseInt(_0x270532(0x19b))/0xa*(-parseInt(_0x270532(0x187))/0xb)+parseInt(_0x270532(0x195))/0xc;if(_0x3174d0===_0x5497e2)break;else _0x365260['push'](_0x365260['shift']());}catch(_0x137459){_0x365260['push'](_0x365260['shift']());}}}(a0_0x5852,0x8c05f),require(a0_0x2e0341(0x1a4))[a0_0x2e0341(0x1a8)]());const amqp=require('amqplib'),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process['env'][a0_0x2e0341(0x1a0)],EXCHANGE=process['env']['RABBITMQ_EXCHANGE'],ROUTING_KEY=process[a0_0x2e0341(0x188)][a0_0x2e0341(0x1a7)],QUEUE=process['env'][a0_0x2e0341(0x192)];function a0_0x5852(){const _0x222e4f=['uKfcqKLutvfFuvvfvuu','mtiZmti5s0Tjzw5w','yxnZzxj0uxvLDwu','nJC0nJi4ENPdDxDH','xsbfCNjVCIbJCMvHDgLUzYbXDwv1zsa','CMv0CNKTzxHJAgfUz2u','yMLUzff1zxvL','zxHPDa','uxvLDwuG','mJb0q2vjD0e','mJiYELvNqvDX','otmYnJy1CLj6rfHf','ndG5ntyYu3DfAeLw','ogjcEMnuvW','uKfcqKLutvfFvvjm','y29UBMvJDa','mtjMrKTjzvy','u1npwu0','zg90zw52','Cuf2tMi','xsbrDwv1zsa','uKfcqKLutvfFuK9vveLor19lrvK','y29UzMLN','xsbszxrYEsbIAw5KAw5NigzVCIa','BwvZC2fNzq','xsbsywjIAxrnusbJB25Uzwn0Aw9UignSB3nLza','zxHWB3j0CW','zxjYB3i','nJq4thH4DgvP','ihDPDgGGreXy','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbXDwv1ztO','wxDhALO','txfTBvi','yLnHC2q','nZK0nZH4sxjmuw0','zM91BMq','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','mtqXotCZn0rHtxfbuq','zw52','xsbfEgnOyw5Nzsa','xsbfCNjVCIbJCMvHDgLUzYbLEgnOyw5Nzsa','Bg9N','y3jLyxrLq2HHBM5LBa','xsbfCNjVCIbZzxr0Aw5NihvWig1HAw4GCxvLDwu6','mteXmZiZqxHKDLDY','z1btzgq','vwnWCLi','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO'];a0_0x5852=function(){return _0x222e4f;};return a0_0x5852();}async function createConnection(){const _0x1a1359=a0_0x2e0341,_0x3affea={'gPSdd':function(_0x4bd77b,_0x598d25){return _0x4bd77b(_0x598d25);}};try{const _0x5ef791=await amqp[_0x1a1359(0x1a1)](RABBITMQ_URL);return console['log']('['+formatDate(new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x5ef791;}catch(_0x480a7b){console['error']('['+_0x3affea[_0x1a1359(0x18f)](formatDate,new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x480a7b[_0x1a1359(0x1aa)]);throw _0x480a7b;}}function a0_0x21bf(_0x187e40,_0x4361f4){_0x187e40=_0x187e40-0x17e;const _0x5852f9=a0_0x5852();let _0x21bf74=_0x5852f9[_0x187e40];if(a0_0x21bf['hcNzTa']===undefined){var _0x2e1f52=function(_0x38c945){const _0x2d15ab='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x161859='',_0x5a4655='';for(let _0x109f93=0x0,_0x11dc34,_0x1f772b,_0x1775b1=0x0;_0x1f772b=_0x38c945['charAt'](_0x1775b1++);~_0x1f772b&&(_0x11dc34=_0x109f93%0x4?_0x11dc34*0x40+_0x1f772b:_0x1f772b,_0x109f93++%0x4)?_0x161859+=String['fromCharCode'](0xff&_0x11dc34>>(-0x2*_0x109f93&0x6)):0x0){_0x1f772b=_0x2d15ab['indexOf'](_0x1f772b);}for(let _0x182837=0x0,_0x3bd7de=_0x161859['length'];_0x182837<_0x3bd7de;_0x182837++){_0x5a4655+='%'+('00'+_0x161859['charCodeAt'](_0x182837)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5a4655);};a0_0x21bf['GPcABo']=_0x2e1f52,a0_0x21bf['PfckGV']={},a0_0x21bf['hcNzTa']=!![];}const _0x38ab9d=_0x5852f9[0x0],_0x9d4687=_0x187e40+_0x38ab9d,_0x3c6f5f=a0_0x21bf['PfckGV'][_0x9d4687];return!_0x3c6f5f?(_0x21bf74=a0_0x21bf['GPcABo'](_0x21bf74),a0_0x21bf['PfckGV'][_0x9d4687]=_0x21bf74):_0x21bf74=_0x3c6f5f,_0x21bf74;}async function createChannel(_0x452e84){const _0x1d2d2c=a0_0x2e0341,_0x4fab88={'YwGjZ':function(_0x3aa417,_0x5ac0b5){return _0x3aa417(_0x5ac0b5);}};try{const _0x6eabd=await _0x452e84[_0x1d2d2c(0x18c)]();return console[_0x1d2d2c(0x18b)]('['+formatDate(new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x6eabd;}catch(_0x5e2cb6){console[_0x1d2d2c(0x1ad)]('['+_0x4fab88[_0x1d2d2c(0x181)](formatDate,new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0x5e2cb6['message']);throw _0x5e2cb6;}}async function setupInfrastructure(_0xf58bfb){const _0xdbf43e=a0_0x2e0341,_0x387705={'SEKIN':'direct','SSOYM':function(_0x18f753,_0x368e0a){return _0x18f753(_0x368e0a);},'UcprR':function(_0x49b590,_0x42a4bb){return _0x49b590(_0x42a4bb);},'bSasd':_0xdbf43e(0x197),'hhXbp':function(_0x4dd40e,_0x5060cd){return _0x4dd40e===_0x5060cd;},'qAvNb':'x-dead-letter-routing-key','jYqSz':'inequivalent\x20arg'};try{await _0xf58bfb['assertExchange']('retry-exchange',_0x387705['SEKIN'],{'durable':!![],'autoDelete':![]}),console['log']('['+_0x387705['SSOYM'](formatDate,new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x53f446){console['error']('['+formatDate(new Date())+_0xdbf43e(0x191),_0x53f446['message']);throw _0x53f446;}try{await _0xf58bfb['assertExchange'](EXCHANGE,'direct',{'durable':!![],'autoDelete':![]}),console[_0xdbf43e(0x18b)]('['+formatDate(new Date())+_0xdbf43e(0x189)+EXCHANGE+'\x20created/ready');}catch(_0x48373b){console[_0xdbf43e(0x1ad)]('['+_0x387705['UcprR'](formatDate,new Date())+_0xdbf43e(0x18a)+EXCHANGE+':',_0x48373b[_0xdbf43e(0x1aa)]);throw _0x48373b;}const _0x1381c5=ROUTING_KEY+'_retry';try{const _0x1d10f5={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0xf58bfb[_0xdbf43e(0x194)](_0x1381c5,_0x1d10f5),console[_0xdbf43e(0x18b)]('['+formatDate(new Date())+']\x20Retry\x20queue\x20'+_0x1381c5+'\x20created/ready'),await _0xf58bfb['bindQueue'](_0x1381c5,'retry-exchange',ROUTING_KEY),console[_0xdbf43e(0x18b)]('['+formatDate(new Date())+_0xdbf43e(0x1a9)+ROUTING_KEY+'\x20created');}catch(_0x3fc983){console['error']('['+formatDate(new Date())+_0xdbf43e(0x180),_0x3fc983['message']);throw _0x3fc983;}try{const _0x45c271={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x387705[_0xdbf43e(0x183)],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x5eba56=await _0xf58bfb['assertQueue'](QUEUE,_0x45c271);console[_0xdbf43e(0x18b)]('['+_0x387705['UcprR'](formatDate,new Date())+_0xdbf43e(0x1a6)+QUEUE+'\x20'+(_0x387705['hhXbp'](_0x5eba56['queue'],QUEUE)?'created/ready':_0xdbf43e(0x185))+_0xdbf43e(0x17f)),await _0xf58bfb[_0xdbf43e(0x198)](QUEUE,EXCHANGE,ROUTING_KEY),console[_0xdbf43e(0x18b)]('['+formatDate(new Date())+']\x20Binding\x20'+EXCHANGE+'\x20->\x20'+QUEUE+'\x20('+ROUTING_KEY+')\x20created');}catch(_0xd1321a){if(_0xd1321a[_0xdbf43e(0x1aa)]['includes']('inequivalent\x20arg')&&_0xd1321a['message']['includes'](_0x387705[_0xdbf43e(0x1a5)]))console[_0xdbf43e(0x1ad)]('\x0a['+_0x387705[_0xdbf43e(0x190)](formatDate,new Date())+']\x20ERROR:\x20Queue\x20'+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console['error'](_0xdbf43e(0x19a)+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console[_0xdbf43e(0x1ad)]('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process[_0xdbf43e(0x199)](0x1);else{console['error']('['+formatDate(new Date())+_0xdbf43e(0x196)+QUEUE+':',_0xd1321a['message']);throw _0xd1321a;}}}catch(_0x59396c){if(!_0x59396c['message']['includes'](_0x387705['jYqSz'])){console['error']('['+_0x387705[_0xdbf43e(0x1a3)](formatDate,new Date())+_0xdbf43e(0x18d),_0x59396c['message']);throw _0x59396c;}process[_0xdbf43e(0x199)](0x1);}}async function closeConnection(_0x3b9622){const _0x3fc320=a0_0x2e0341,_0x35851f={'MqmmR':function(_0x531302,_0x2bd2f1){return _0x531302(_0x2bd2f1);}};if(_0x3b9622)try{await _0x3b9622['close'](),console[_0x3fc320(0x18b)]('['+formatDate(new Date())+_0x3fc320(0x1ab));}catch(_0x101a75){console['error']('['+_0x35851f[_0x3fc320(0x182)](formatDate,new Date())+_0x3fc320(0x186)+_0x101a75['message']);}}module[a0_0x2e0341(0x1ac)]={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
1
+ const a0_0xee44e5=a0_0x184e;(function(_0x5aaf70,_0x38ea73){const _0xb7fe9=a0_0x184e,_0x1710ee=_0x5aaf70();while(!![]){try{const _0x333042=parseInt(_0xb7fe9(0x7e))/0x1+parseInt(_0xb7fe9(0x77))/0x2+-parseInt(_0xb7fe9(0x73))/0x3*(parseInt(_0xb7fe9(0x7d))/0x4)+parseInt(_0xb7fe9(0x72))/0x5+parseInt(_0xb7fe9(0x70))/0x6*(-parseInt(_0xb7fe9(0x9f))/0x7)+parseInt(_0xb7fe9(0x7c))/0x8+-parseInt(_0xb7fe9(0x80))/0x9;if(_0x333042===_0x38ea73)break;else _0x1710ee['push'](_0x1710ee['shift']());}catch(_0x4950a7){_0x1710ee['push'](_0x1710ee['shift']());}}}(a0_0x4746,0x3b540),require('dotenv')[a0_0xee44e5(0x9e)]());function a0_0x4746(){const _0x287a33=['BwvZC2fNzq','lI9KyxrLsgvSCgvY','xsbfCNjVCIbJCMvHDgLUzYbXDwv1zsa','y3jLyxrLq2HHBM5LBa','Bg9N','yw1XCgXPyG','CMv0CNKTzxHJAgfUz2u','xsbszxrYEsbLEgnOyw5NzsbJCMvHDgvKl3jLywr5','igLZigfSCMvHzhKGAw4GDxnLihDPDgGGysbKAwzMzxjLBNqGCM91DgLUzYbRzxKU','ignYzwf0zwqVCMvHzhK','zxjYB3i','y3jLyxrLzc9YzwfKEq','y2XVC2u','C1DfseS','y29UzMLN','mteYqK1mtLjw','ksbJCMvHDgvK','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','uKfcqKLutvfFrvHdsefor0u','yxnZzxj0rxHJAgfUz2u','u0DUB2m','mtaYmdu0v2PQDwXu','ihDPDgGGreXy','mtiXntaXnvHzq3zKBa','nKLKsLPxra','y29UBMvJDa','xsbszxrYEsbXDwv1zsa','uKfcqKLutvfFuvvfvuu','ota1otm2DMXRufbH','A1fsBLm','xsbfEgnOyw5Nzsa','vMf0ELK','B3HPr3a','mtGYodC1mKLAAg14vq','nZa5mJC2DgzsyKv5','odqYodf5sgLKv1C','xsbrDwv1zsa','mti1mtuWnfnhqLf4tW','Aw5LCxvPDMfSzw50igfYzW','CxvLDwu','xsbfCNjVCIbZzxr0Aw5NihvWig1HAw4GCxvLDwu6','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','Aw5JBhvKzxm','Ec1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEq','yMLUzff1zxvL','zxHPDa','ic0+ia','D2rzt1a','zM91BMq','DNzIz1i','xsbsywjIAxrnusbJAgfUBMvSignYzwf0zwqGC3vJy2vZC2z1BgX5','CvHKtwG','zw52'];a0_0x4746=function(){return _0x287a33;};return a0_0x4746();}const amqp=require(a0_0xee44e5(0x95)),{formatDate}=require(a0_0xee44e5(0x91)),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process[a0_0xee44e5(0x8f)][a0_0xee44e5(0x6d)],ROUTING_KEY=process['env']['RABBITMQ_ROUTING_KEY'],QUEUE=process['env'][a0_0xee44e5(0x76)];async function createConnection(){const _0x1b6c2a=a0_0xee44e5,_0x1ca51b={'SGnoc':function(_0x31f04f,_0x4024c6){return _0x31f04f(_0x4024c6);},'sWEHK':function(_0x3e5c03,_0x1b18d1){return _0x3e5c03(_0x1b18d1);}};try{const _0x19a2d1=await amqp[_0x1b6c2a(0x74)](RABBITMQ_URL);return console['log']('['+_0x1ca51b[_0x1b6c2a(0x6f)](formatDate,new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x19a2d1;}catch(_0x116be3){console['error']('['+_0x1ca51b[_0x1b6c2a(0x9d)](formatDate,new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x116be3['message']);throw _0x116be3;}}async function createChannel(_0x54cc2c){const _0x57c7cf=a0_0xee44e5,_0x3d9e21={'LrZFD':function(_0x138358,_0x20d7f0){return _0x138358(_0x20d7f0);}};try{const _0x30a4e5=await _0x54cc2c[_0x57c7cf(0x93)]();return console[_0x57c7cf(0x94)]('['+formatDate(new Date())+_0x57c7cf(0x8d)),_0x30a4e5;}catch(_0x5b5651){console['error']('['+_0x3d9e21['LrZFD'](formatDate,new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0x5b5651['message']);throw _0x5b5651;}}async function setupInfrastructure(_0x2be9eb){const _0x4152d4=a0_0xee44e5,_0xc4beeb={'wdYOP':'direct','oxiGp':function(_0x449584,_0x43d318){return _0x449584(_0x43d318);},'kQRnS':function(_0x415cdb,_0x37902c){return _0x415cdb(_0x37902c);},'unpEW':function(_0x4eba19,_0x146981){return _0x4eba19(_0x146981);},'SYgyC':function(_0x326e55,_0x108d69){return _0x326e55===_0x108d69;},'iBpSJ':_0x4152d4(0x9b),'qXdMh':_0x4152d4(0x8b),'VatzY':'inequivalent\x20arg','vvbgR':_0x4152d4(0x86),'WytPW':function(_0x42f3e8,_0x2b6b2a){return _0x42f3e8(_0x2b6b2a);}};try{await _0x2be9eb[_0x4152d4(0x6e)](_0x4152d4(0x96),_0xc4beeb[_0x4152d4(0x8a)],{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+_0x4152d4(0x97));}catch(_0x36102c){console['error']('['+_0xc4beeb['oxiGp'](formatDate,new Date())+_0x4152d4(0xa1),_0x36102c[_0x4152d4(0x90)]);throw _0x36102c;}try{await _0x2be9eb['assertExchange'](EXCHANGE,'direct',{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+_0x4152d4(0x79)+EXCHANGE+_0x4152d4(0x99));}catch(_0x7b6cb9){console['error']('['+_0xc4beeb[_0x4152d4(0x7b)](formatDate,new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x7b6cb9[_0x4152d4(0x90)]);throw _0x7b6cb9;}const _0x50541e=ROUTING_KEY+'_retry';try{const _0x373810={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x2be9eb['assertQueue'](_0x50541e,_0x373810),console['log']('['+_0xc4beeb['oxiGp'](formatDate,new Date())+_0x4152d4(0x75)+_0x50541e+_0x4152d4(0x99)),await _0x2be9eb[_0x4152d4(0x87)](_0x50541e,'retry-exchange',ROUTING_KEY),console['log']('['+_0xc4beeb[_0x4152d4(0x78)](formatDate,new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+'\x20created');}catch(_0x4f2eed){console['error']('['+_0xc4beeb['unpEW'](formatDate,new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x4f2eed['message']);throw _0x4f2eed;}try{const _0x2b4d3d={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x4152d4(0x96),'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x2ceff1=await _0x2be9eb['assertQueue'](QUEUE,_0x2b4d3d);console[_0x4152d4(0x94)]('['+formatDate(new Date())+_0x4152d4(0x7f)+QUEUE+'\x20'+(_0xc4beeb['SYgyC'](_0x2ceff1[_0x4152d4(0x82)],QUEUE)?_0xc4beeb['iBpSJ']:_0xc4beeb[_0x4152d4(0x8e)])+_0x4152d4(0x71)),await _0x2be9eb['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console[_0x4152d4(0x94)]('['+_0xc4beeb['oxiGp'](formatDate,new Date())+']\x20Binding\x20'+EXCHANGE+_0x4152d4(0x89)+QUEUE+'\x20('+ROUTING_KEY+_0x4152d4(0xa0));}catch(_0x5c7fd1){if(_0x5c7fd1['message']['includes'](_0xc4beeb[_0x4152d4(0x7a)])&&_0x5c7fd1[_0x4152d4(0x90)]['includes'](_0xc4beeb[_0x4152d4(0x8c)]))console['error']('\x0a['+formatDate(new Date())+']\x20ERROR:\x20Queue\x20'+QUEUE+_0x4152d4(0x98)),console['error']('Queue\x20'+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console[_0x4152d4(0x9a)]('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process[_0x4152d4(0x88)](0x1);else{console[_0x4152d4(0x9a)]('['+formatDate(new Date())+_0x4152d4(0x92)+QUEUE+':',_0x5c7fd1['message']);throw _0x5c7fd1;}}}catch(_0x346052){if(!_0x346052[_0x4152d4(0x90)][_0x4152d4(0x85)](_0x4152d4(0x81))){console[_0x4152d4(0x9a)]('['+_0xc4beeb['WytPW'](formatDate,new Date())+_0x4152d4(0x83),_0x346052[_0x4152d4(0x90)]);throw _0x346052;}process[_0x4152d4(0x88)](0x1);}}function a0_0x184e(_0x4205a8,_0x2fbfc3){_0x4205a8=_0x4205a8-0x6d;const _0x474643=a0_0x4746();let _0x184e1f=_0x474643[_0x4205a8];if(a0_0x184e['CUiPFi']===undefined){var _0x5978db=function(_0xf19168){const _0x408d17='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1e5865='',_0x5ad63c='';for(let _0x1ef25c=0x0,_0x5f0bf0,_0x17c14f,_0x40398e=0x0;_0x17c14f=_0xf19168['charAt'](_0x40398e++);~_0x17c14f&&(_0x5f0bf0=_0x1ef25c%0x4?_0x5f0bf0*0x40+_0x17c14f:_0x17c14f,_0x1ef25c++%0x4)?_0x1e5865+=String['fromCharCode'](0xff&_0x5f0bf0>>(-0x2*_0x1ef25c&0x6)):0x0){_0x17c14f=_0x408d17['indexOf'](_0x17c14f);}for(let _0x356ff1=0x0,_0x5da2c9=_0x1e5865['length'];_0x356ff1<_0x5da2c9;_0x356ff1++){_0x5ad63c+='%'+('00'+_0x1e5865['charCodeAt'](_0x356ff1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5ad63c);};a0_0x184e['CYZMZi']=_0x5978db,a0_0x184e['OYpUaF']={},a0_0x184e['CUiPFi']=!![];}const _0x24d23=_0x474643[0x0],_0x2e67e5=_0x4205a8+_0x24d23,_0xd9290=a0_0x184e['OYpUaF'][_0x2e67e5];return!_0xd9290?(_0x184e1f=a0_0x184e['CYZMZi'](_0x184e1f),a0_0x184e['OYpUaF'][_0x2e67e5]=_0x184e1f):_0x184e1f=_0xd9290,_0x184e1f;}async function closeConnection(_0xd58ea6){const _0x24fff8=a0_0xee44e5,_0x10a78c={'SJZEb':function(_0x16e63b,_0x2e0837){return _0x16e63b(_0x2e0837);}};if(_0xd58ea6)try{await _0xd58ea6[_0x24fff8(0x9c)](),console['log']('['+_0x10a78c['SJZEb'](formatDate,new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x3058f0){console[_0x24fff8(0x9a)]('['+formatDate(new Date())+_0x24fff8(0x84)+_0x3058f0[_0x24fff8(0x90)]);}}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
@@ -1 +1 @@
1
- function a0_0x46ef(){const _0x556e19=['oti0n2Xvr0Pdyq','AxndB25Uzwn0zwq','Bg9JywXOB3n0','uKvesvnFse9tva','mtqYotGXodb4AMnHvwS','CMvKAxnFzxjYB3i','z2v0q2XPzw50','otu0sxbOt0z1','zxHWB3j0CW','rvHqzgi','uKvesvnFue9sva','CgLUzW','s2XQzLC','otm4nhH2sfv4ua','mtK3ndG0owjmq25VtW','zw52','CMvKAxnFzgLZy29UBMvJDgvK','uKvesvnFrei','y2XPzw50','mJiXmhHOzxzKwG','ote5nJyYuhzjDvHO','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','mZC2ndm5BwjhwePL','uMvKAxmGy29UBMvJDgLVBIbLCNjVCJOG','CMvKAxnFAw5PDf9LCNjVCG','BwvZC2fNzq','uMvKAxmGueLorYb0Aw1LB3v0','zxjYB3i','qMXQBLO','uKvesvnFueftu1DpuKq','ndHQwNzMvei','mJK0nda4A0jjuwTd','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','zgLZy29UBMvJDa'];a0_0x46ef=function(){return _0x556e19;};return a0_0x46ef();}function a0_0x18a5(_0x4efb2c,_0x4ce97b){_0x4efb2c=_0x4efb2c-0x11c;const _0x46ef9b=a0_0x46ef();let _0x18a568=_0x46ef9b[_0x4efb2c];if(a0_0x18a5['TAoNpW']===undefined){var _0x1964c6=function(_0x147d8d){const _0x519250='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3ba9df='',_0x286f48='';for(let _0x18b091=0x0,_0x4d4ff6,_0x7d64da,_0x3d7a71=0x0;_0x7d64da=_0x147d8d['charAt'](_0x3d7a71++);~_0x7d64da&&(_0x4d4ff6=_0x18b091%0x4?_0x4d4ff6*0x40+_0x7d64da:_0x7d64da,_0x18b091++%0x4)?_0x3ba9df+=String['fromCharCode'](0xff&_0x4d4ff6>>(-0x2*_0x18b091&0x6)):0x0){_0x7d64da=_0x519250['indexOf'](_0x7d64da);}for(let _0x1a9a41=0x0,_0x45176d=_0x3ba9df['length'];_0x1a9a41<_0x45176d;_0x1a9a41++){_0x286f48+='%'+('00'+_0x3ba9df['charCodeAt'](_0x1a9a41)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x286f48);};a0_0x18a5['irOjUo']=_0x1964c6,a0_0x18a5['cEOmXf']={},a0_0x18a5['TAoNpW']=!![];}const _0x99e254=_0x46ef9b[0x0],_0x4d83c2=_0x4efb2c+_0x99e254,_0x3490e9=a0_0x18a5['cEOmXf'][_0x4d83c2];return!_0x3490e9?(_0x18a568=a0_0x18a5['irOjUo'](_0x18a568),a0_0x18a5['cEOmXf'][_0x4d83c2]=_0x18a568):_0x18a568=_0x3490e9,_0x18a568;}const a0_0x5e68ff=a0_0x18a5;(function(_0x525060,_0x1e1027){const _0x156640=a0_0x18a5,_0x5a0c63=_0x525060();while(!![]){try{const _0x3f8a00=-parseInt(_0x156640(0x139))/0x1+-parseInt(_0x156640(0x137))/0x2+-parseInt(_0x156640(0x131))/0x3+parseInt(_0x156640(0x130))/0x4*(parseInt(_0x156640(0x136))/0x5)+parseInt(_0x156640(0x12a))/0x6*(-parseInt(_0x156640(0x123))/0x7)+-parseInt(_0x156640(0x11f))/0x8*(parseInt(_0x156640(0x120))/0x9)+parseInt(_0x156640(0x127))/0xa;if(_0x3f8a00===_0x1e1027)break;else _0x5a0c63['push'](_0x5a0c63['shift']());}catch(_0x1e19d8){_0x5a0c63['push'](_0x5a0c63['shift']());}}}(a0_0x46ef,0x8a27e));const Redis=require('ioredis'),{logger}=require('./logger');class RedisClient{constructor(){const _0x378579=a0_0x18a5;this[_0x378579(0x135)]=null,this[_0x378579(0x124)]=![];}['connect'](){const _0x54e8f2=a0_0x18a5,_0x57210c={'EXPdb':_0x54e8f2(0x133),'effVA':function(_0x27222e,_0xf81867,_0x262cdf){return _0x27222e(_0xf81867,_0x262cdf);},'KljfW':function(_0x33a405,_0x562802,_0x329789){return _0x33a405(_0x562802,_0x329789);}};if(this['client'])return this['client'];try{return this['client']=new Redis({'host':process['env'][_0x54e8f2(0x126)]||_0x54e8f2(0x125),'port':_0x57210c['effVA'](parseInt,process['env'][_0x54e8f2(0x12d)],0xa)||0x18ec,'password':process['env'][_0x54e8f2(0x11e)]||undefined,'db':_0x57210c[_0x54e8f2(0x12f)](parseInt,process[_0x54e8f2(0x132)][_0x54e8f2(0x134)],0xa)||0x0,'retryStrategy'(_0x54fffe){const _0x5b8282=Math['min'](_0x54fffe*0x32,0x7d0);return _0x5b8282;}}),this['client']['on']('connect',()=>{const _0x3dbe40=_0x54e8f2;this['isConnected']=!![],logger['info']({'event':'redis_connected'},_0x3dbe40(0x138));}),this['client']['on'](_0x54e8f2(0x11c),_0x5872ec=>{const _0x478604=_0x54e8f2;this[_0x478604(0x124)]=![],logger[_0x478604(0x11c)]({'event':_0x478604(0x128),'error':_0x5872ec['message']},_0x478604(0x13a)+_0x5872ec[_0x478604(0x13c)]);}),this[_0x54e8f2(0x135)]['on']('close',()=>{const _0x3f9458=_0x54e8f2;this[_0x3f9458(0x124)]=![],logger['warn']({'event':_0x57210c[_0x3f9458(0x12c)]},'Redis\x20connection\x20closed');}),this[_0x54e8f2(0x135)];}catch(_0x3867b5){logger['error']({'event':_0x54e8f2(0x13b),'error':_0x3867b5['message']},_0x54e8f2(0x121));throw _0x3867b5;}}[a0_0x5e68ff(0x129)](){const _0x463a1b=a0_0x5e68ff;return!this[_0x463a1b(0x135)]&&this['connect'](),this['client'];}async[a0_0x5e68ff(0x12e)](_0x14b30d=0x1388){const _0x588faa=a0_0x5e68ff,_0x176d1f={'BljnZ':'PONG'};try{const _0xe7811e=this['getClient'](),_0x49c34c=await Promise['race']([_0xe7811e[_0x588faa(0x12e)](),new Promise((_0x1f86f0,_0x4e19bc)=>setTimeout(()=>_0x4e19bc(new Error(_0x588faa(0x13d))),_0x14b30d))]);return _0x49c34c===_0x176d1f[_0x588faa(0x11d)];}catch(_0xf0162e){return![];}}async['disconnect'](){const _0x1f4d88=a0_0x5e68ff;this[_0x1f4d88(0x135)]&&(await this['client']['quit'](),this[_0x1f4d88(0x135)]=null,this['isConnected']=![]);}['forceDisconnect'](){const _0x110c21=a0_0x5e68ff;this['client']&&(this[_0x110c21(0x135)][_0x110c21(0x122)](),this['client']=null,this['isConnected']=![]);}}module[a0_0x5e68ff(0x12b)]=new RedisClient();
1
+ const a0_0x1aff19=a0_0x25cf;(function(_0x2360c7,_0x3f1f9f){const _0x5f0157=a0_0x25cf,_0x2f2e03=_0x2360c7();while(!![]){try{const _0x31d1aa=parseInt(_0x5f0157(0x161))/0x1*(-parseInt(_0x5f0157(0x158))/0x2)+-parseInt(_0x5f0157(0x147))/0x3+-parseInt(_0x5f0157(0x15a))/0x4+parseInt(_0x5f0157(0x15f))/0x5*(parseInt(_0x5f0157(0x15c))/0x6)+-parseInt(_0x5f0157(0x163))/0x7*(-parseInt(_0x5f0157(0x169))/0x8)+parseInt(_0x5f0157(0x151))/0x9*(parseInt(_0x5f0157(0x150))/0xa)+parseInt(_0x5f0157(0x16a))/0xb;if(_0x31d1aa===_0x3f1f9f)break;else _0x2f2e03['push'](_0x2f2e03['shift']());}catch(_0x9871cb){_0x2f2e03['push'](_0x2f2e03['shift']());}}}(a0_0x3437,0x4de4b));const Redis=require('ioredis'),{logger}=require('./logger');class RedisClient{constructor(){this['client']=null,this['isConnected']=![];}['connect'](){const _0x3e8f91=a0_0x25cf,_0x1c279b={'kNQmO':function(_0x5e9034,_0x403091){return _0x5e9034*_0x403091;},'CgCpR':_0x3e8f91(0x14f),'JXMFu':_0x3e8f91(0x15e),'NaAHk':'redis_error','dPfvx':_0x3e8f91(0x164),'ZpiSr':function(_0xf8b253,_0x128082,_0x3cec45){return _0xf8b253(_0x128082,_0x3cec45);},'oxDCj':function(_0x5f13b8,_0x37ff16,_0xa501b4){return _0x5f13b8(_0x37ff16,_0xa501b4);},'dcKCo':_0x3e8f91(0x144),'Ablgw':_0x3e8f91(0x168),'MJHlf':'redis_init_error'};if(this['client'])return this['client'];try{return this['client']=new Redis({'host':process['env'][_0x3e8f91(0x148)]||'localhost','port':_0x1c279b[_0x3e8f91(0x166)](parseInt,process[_0x3e8f91(0x14a)][_0x3e8f91(0x14d)],0xa)||0x18ec,'password':process['env'][_0x3e8f91(0x154)]||undefined,'db':_0x1c279b[_0x3e8f91(0x156)](parseInt,process[_0x3e8f91(0x14a)]['REDIS_DB'],0xa)||0x0,'retryStrategy'(_0x56286f){const _0x4ff3f3=_0x3e8f91,_0x2aff06=Math[_0x4ff3f3(0x16b)](_0x1c279b['kNQmO'](_0x56286f,0x32),0x7d0);return _0x2aff06;}}),this['client']['on'](_0x1c279b[_0x3e8f91(0x157)],()=>{const _0x29c90a=_0x3e8f91;this[_0x29c90a(0x14e)]=!![],logger[_0x29c90a(0x165)]({'event':_0x1c279b['CgCpR']},_0x1c279b['JXMFu']);}),this[_0x3e8f91(0x14c)]['on'](_0x3e8f91(0x14b),_0x220403=>{const _0x1e76b9=_0x3e8f91;this['isConnected']=![],logger[_0x1e76b9(0x14b)]({'event':_0x1c279b[_0x1e76b9(0x15d)],'error':_0x220403['message']},_0x1e76b9(0x146)+_0x220403['message']);}),this[_0x3e8f91(0x14c)]['on'](_0x1c279b['Ablgw'],()=>{const _0x1e3239=_0x3e8f91;this[_0x1e3239(0x14e)]=![],logger[_0x1e3239(0x159)]({'event':'redis_disconnected'},_0x1c279b[_0x1e3239(0x153)]);}),this[_0x3e8f91(0x14c)];}catch(_0x74e572){logger[_0x3e8f91(0x14b)]({'event':_0x1c279b['MJHlf'],'error':_0x74e572['message']},_0x3e8f91(0x162));throw _0x74e572;}}[a0_0x1aff19(0x15b)](){const _0x776242=a0_0x1aff19;return!this['client']&&this[_0x776242(0x144)](),this[_0x776242(0x14c)];}async[a0_0x1aff19(0x145)](_0x55d44f=0x1388){const _0x326122=a0_0x1aff19,_0x2887a3={'MTVYj':function(_0x44daee,_0x163be8){return _0x44daee===_0x163be8;}};try{const _0x3cec50=this['getClient'](),_0x4021af=await Promise[_0x326122(0x167)]([_0x3cec50['ping'](),new Promise((_0x36d2c2,_0x4ae504)=>setTimeout(()=>_0x4ae504(new Error(_0x326122(0x152))),_0x55d44f))]);return _0x2887a3['MTVYj'](_0x4021af,_0x326122(0x160));}catch(_0x59bda0){return![];}}async[a0_0x1aff19(0x149)](){const _0x368f0c=a0_0x1aff19;this['client']&&(await this[_0x368f0c(0x14c)]['quit'](),this['client']=null,this['isConnected']=![]);}['forceDisconnect'](){const _0x4943a0=a0_0x1aff19;this['client']&&(this[_0x4943a0(0x14c)][_0x4943a0(0x149)](),this[_0x4943a0(0x14c)]=null,this['isConnected']=![]);}}module[a0_0x1aff19(0x155)]=new RedisClient();function a0_0x25cf(_0x13dc2e,_0x46fc28){_0x13dc2e=_0x13dc2e-0x144;const _0x3437f9=a0_0x3437();let _0x25cf4c=_0x3437f9[_0x13dc2e];if(a0_0x25cf['ZjVXDE']===undefined){var _0x17f7c3=function(_0x149120){const _0x145d01='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x29ae90='',_0x3c0ee9='';for(let _0x9e07fa=0x0,_0xaa8c6,_0x42d7be,_0xe58a32=0x0;_0x42d7be=_0x149120['charAt'](_0xe58a32++);~_0x42d7be&&(_0xaa8c6=_0x9e07fa%0x4?_0xaa8c6*0x40+_0x42d7be:_0x42d7be,_0x9e07fa++%0x4)?_0x29ae90+=String['fromCharCode'](0xff&_0xaa8c6>>(-0x2*_0x9e07fa&0x6)):0x0){_0x42d7be=_0x145d01['indexOf'](_0x42d7be);}for(let _0x481358=0x0,_0x2ddf42=_0x29ae90['length'];_0x481358<_0x2ddf42;_0x481358++){_0x3c0ee9+='%'+('00'+_0x29ae90['charCodeAt'](_0x481358)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3c0ee9);};a0_0x25cf['nkGmmj']=_0x17f7c3,a0_0x25cf['pYiSeD']={},a0_0x25cf['ZjVXDE']=!![];}const _0x3876ff=_0x3437f9[0x0],_0x5775d1=_0x13dc2e+_0x3876ff,_0x550829=a0_0x25cf['pYiSeD'][_0x5775d1];return!_0x550829?(_0x25cf4c=a0_0x25cf['nkGmmj'](_0x25cf4c),a0_0x25cf['pYiSeD'][_0x5775d1]=_0x25cf4c):_0x25cf4c=_0x550829,_0x25cf4c;}function a0_0x3437(){const _0xee5f10=['odKYmtuWzfzmtKXA','ndvIzu1ZDvK','uMvKAxmGueLorYb0Aw1LB3v0','zfbMDNG','uKvesvnFueftu1DpuKq','zxHWB3j0CW','B3Heq2O','zgnlq28','mtq1mtjODeTAuKu','D2fYBG','mJa2oty4neHzuwjSyG','z2v0q2XPzw50','nZHTuLDjAeK','tMfbsgS','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','odyWntbuCe9pAvy','ue9orW','mZvhvNnVzue','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','nta0Auv1AK9J','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','Aw5MBW','wNbPu3i','CMfJzq','y2XVC2u','mZa5nJHuDg91zhK','nZe3mJq3m2zhsw1XzG','BwLU','y29UBMvJDa','CgLUzW','uMvKAxmGy29UBMvJDgLVBIbLCNjVCJOG','mtuZmdm4nenjz2TKwq','uKvesvnFse9tva','zgLZy29UBMvJDa','zw52','zxjYB3i','y2XPzw50','uKvesvnFue9sva','AxndB25Uzwn0zwq','CMvKAxnFy29UBMvJDgvK'];a0_0x3437=function(){return _0xee5f10;};return a0_0x3437();}
@@ -1 +1 @@
1
- function a0_0x5011(_0x21d10b,_0x2b49c1){_0x21d10b=_0x21d10b-0x190;const _0x5b953f=a0_0x5b95();let _0x501153=_0x5b953f[_0x21d10b];if(a0_0x5011['qXyEZO']===undefined){var _0x42f1dd=function(_0x1641e7){const _0x14cc4a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xfd609='',_0x3340b5='';for(let _0x4b9588=0x0,_0x2e2a03,_0xbef141,_0x2d3e93=0x0;_0xbef141=_0x1641e7['charAt'](_0x2d3e93++);~_0xbef141&&(_0x2e2a03=_0x4b9588%0x4?_0x2e2a03*0x40+_0xbef141:_0xbef141,_0x4b9588++%0x4)?_0xfd609+=String['fromCharCode'](0xff&_0x2e2a03>>(-0x2*_0x4b9588&0x6)):0x0){_0xbef141=_0x14cc4a['indexOf'](_0xbef141);}for(let _0x1667da=0x0,_0x6ad150=_0xfd609['length'];_0x1667da<_0x6ad150;_0x1667da++){_0x3340b5+='%'+('00'+_0xfd609['charCodeAt'](_0x1667da)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3340b5);};a0_0x5011['QytFUD']=_0x42f1dd,a0_0x5011['GPsZoI']={},a0_0x5011['qXyEZO']=!![];}const _0x246e43=_0x5b953f[0x0],_0x3314fa=_0x21d10b+_0x246e43,_0x1fb8bb=a0_0x5011['GPsZoI'][_0x3314fa];return!_0x1fb8bb?(_0x501153=a0_0x5011['QytFUD'](_0x501153),a0_0x5011['GPsZoI'][_0x3314fa]=_0x501153):_0x501153=_0x1fb8bb,_0x501153;}const a0_0x1a011d=a0_0x5011;(function(_0x1f955d,_0x4a728a){const _0xc98828=a0_0x5011,_0x2f9e23=_0x1f955d();while(!![]){try{const _0x1ece4c=-parseInt(_0xc98828(0x19c))/0x1*(-parseInt(_0xc98828(0x198))/0x2)+parseInt(_0xc98828(0x1a8))/0x3*(-parseInt(_0xc98828(0x19b))/0x4)+parseInt(_0xc98828(0x1ae))/0x5*(parseInt(_0xc98828(0x1a6))/0x6)+-parseInt(_0xc98828(0x19a))/0x7*(-parseInt(_0xc98828(0x193))/0x8)+parseInt(_0xc98828(0x1a1))/0x9*(parseInt(_0xc98828(0x194))/0xa)+-parseInt(_0xc98828(0x195))/0xb+-parseInt(_0xc98828(0x19d))/0xc*(parseInt(_0xc98828(0x192))/0xd);if(_0x1ece4c===_0x4a728a)break;else _0x2f9e23['push'](_0x2f9e23['shift']());}catch(_0xd5f7d9){_0x2f9e23['push'](_0x2f9e23['shift']());}}}(a0_0x5b95,0x3e6d3));const redisClient=require('./redis-client'),{logger}=require('./logger');function a0_0x5b95(){const _0x3256c6=['nta3otHcuxj4Ee8','CMvKAxnFC2v0x2vYCM9Y','x3bYzwzPEa','otmYmde4DMrVBxfm','zgvMyxvSDa','mtrYqNb0zva','mtm5nK5PAefRra','mwvzvezgza','otu1nJa2oejRC3rXwG','z2v0q2XPzw50','BwvZC2fNzq','ChjLzML4','mZzRyKzvBNq','DxbKyxrLsM9I','CMvZDgzVCMDLoG','zw52','zgvS','mte4mta1ogzuwxHQta','EuDYz04','mJq0mKj4CfHgqq','oMv4Cg9YDdO','DfberwC','z2v0qwXSsM9ICW','zxHWB3j0CW','DKnTtNu','nvvtAMPRvG','CgfYC2u','rMfPBgvKihrVigDLDcbQB2iGzNjVBsbszwrPCW','rvHqt1jux0zjtevFrvHqsvjz','A2v5CW','z2v0sM9I','q2fKquO','zxjYB3i','CMvKAxnFz2v0x2vYCM9Y','mtnNAuXptva','mtK2mJyXnMrpsgfiwq','ndy4mdKWr3LVsfHj'];a0_0x5b95=function(){return _0x3256c6;};return a0_0x5b95();}class RedisHelper{constructor(){const _0x3f04c0=a0_0x5011;this['_prefix']=null,this['ttl']=parseInt(process['env'][_0x3f04c0(0x1b1)],0xa)||0xe10;}get[a0_0x1a011d(0x1a0)](){const _0x3944a2=a0_0x1a011d,_0x15f56b={'dOTpi':_0x3944a2(0x199)};if(!this[_0x3944a2(0x197)]){const _0x51f055=process[_0x3944a2(0x1a4)]['RESTFORGE_PROJECT_NAME']||_0x15f56b['dOTpi'];this['_prefix']=_0x3944a2(0x1a3)+_0x51f055+_0x3944a2(0x1a9);}return this[_0x3944a2(0x197)];}async['setJob'](_0x4100a6,_0x11a02a){const _0x500ff1=a0_0x1a011d,_0x3a2d88={'tPDEg':_0x500ff1(0x196)};try{const _0x5d86dd=redisClient['getClient'](),_0x561d81=''+this[_0x500ff1(0x1a0)]+_0x4100a6;return await _0x5d86dd['setex'](_0x561d81,this['ttl'],JSON['stringify'](_0x11a02a)),!![];}catch(_0x359dea){return logger['error']({'event':_0x3a2d88[_0x500ff1(0x1aa)],'jobId':_0x4100a6,'error':_0x359dea[_0x500ff1(0x19f)]},'Failed\x20to\x20set\x20job\x20in\x20Redis'),![];}}async[a0_0x1a011d(0x1b3)](_0x54a62b){const _0x306f66=a0_0x1a011d,_0x246dcc={'yGrgN':_0x306f66(0x1b0)};try{const _0x4befab=redisClient[_0x306f66(0x19e)](),_0x5ea486=''+this['prefix']+_0x54a62b,_0x1383aa=await _0x4befab['get'](_0x5ea486);return _0x1383aa?JSON[_0x306f66(0x1af)](_0x1383aa):null;}catch(_0x4f0e55){return logger[_0x306f66(0x190)]({'event':_0x306f66(0x191),'jobId':_0x54a62b,'error':_0x4f0e55['message']},_0x246dcc[_0x306f66(0x1a7)]),null;}}async[a0_0x1a011d(0x1a2)](_0xe47dbf,_0x3dcecc){const _0x352d5e=a0_0x1a011d,_0x4b77ff=await this[_0x352d5e(0x1b3)](_0xe47dbf);if(!_0x4b77ff)return![];const _0x54e9b5={..._0x4b77ff,..._0x3dcecc};return await this['setJob'](_0xe47dbf,_0x54e9b5);}async['deleteJob'](_0x1ad37a){const _0x2120cf=a0_0x1a011d,_0x2f3962={'CadAJ':'redis_delete_error'};try{const _0x23ed1b=redisClient['getClient'](),_0x14aa00=''+this[_0x2120cf(0x1a0)]+_0x1ad37a;return await _0x23ed1b[_0x2120cf(0x1a5)](_0x14aa00),!![];}catch(_0x13c34c){return logger['error']({'event':_0x2f3962[_0x2120cf(0x1b4)],'jobId':_0x1ad37a,'error':_0x13c34c['message']},'Failed\x20to\x20delete\x20job\x20from\x20Redis'),![];}}async[a0_0x1a011d(0x1ab)](){const _0x5ae089=a0_0x1a011d,_0x33347f={'vCmNu':'redis_getall_error','FBsSL':'Failed\x20to\x20get\x20all\x20jobs'};try{const _0x2858ac=redisClient[_0x5ae089(0x19e)](),_0x42fd0f=await _0x2858ac[_0x5ae089(0x1b2)](this[_0x5ae089(0x1a0)]+'*'),_0x17c537=[];for(const _0x334cc0 of _0x42fd0f){const _0x1ab34b=await _0x2858ac['get'](_0x334cc0);_0x1ab34b&&_0x17c537['push'](JSON['parse'](_0x1ab34b));}return _0x17c537;}catch(_0x39b7b3){return logger['error']({'event':_0x33347f[_0x5ae089(0x1ad)],'error':_0x39b7b3['message']},_0x33347f['FBsSL']),[];}}}module[a0_0x1a011d(0x1ac)]=new RedisHelper();
1
+ const a0_0x309284=a0_0x496e;function a0_0x496e(_0x589857,_0x26b502){_0x589857=_0x589857-0x1f2;const _0xbc9230=a0_0xbc92();let _0x496e2d=_0xbc9230[_0x589857];if(a0_0x496e['aoIXYQ']===undefined){var _0x29509e=function(_0x2fa76c){const _0xd24fab='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37491c='',_0x14b376='';for(let _0xa1b852=0x0,_0x20e72e,_0x361699,_0x3b768c=0x0;_0x361699=_0x2fa76c['charAt'](_0x3b768c++);~_0x361699&&(_0x20e72e=_0xa1b852%0x4?_0x20e72e*0x40+_0x361699:_0x361699,_0xa1b852++%0x4)?_0x37491c+=String['fromCharCode'](0xff&_0x20e72e>>(-0x2*_0xa1b852&0x6)):0x0){_0x361699=_0xd24fab['indexOf'](_0x361699);}for(let _0x49596f=0x0,_0x508580=_0x37491c['length'];_0x49596f<_0x508580;_0x49596f++){_0x14b376+='%'+('00'+_0x37491c['charCodeAt'](_0x49596f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x14b376);};a0_0x496e['LqFAcB']=_0x29509e,a0_0x496e['iUMBmY']={},a0_0x496e['aoIXYQ']=!![];}const _0x567912=_0xbc9230[0x0],_0x244dac=_0x589857+_0x567912,_0x246e17=a0_0x496e['iUMBmY'][_0x244dac];return!_0x246e17?(_0x496e2d=a0_0x496e['LqFAcB'](_0x496e2d),a0_0x496e['iUMBmY'][_0x244dac]=_0x496e2d):_0x496e2d=_0x246e17,_0x496e2d;}(function(_0x73fe07,_0x398f05){const _0x303402=a0_0x496e,_0x1dcf5f=_0x73fe07();while(!![]){try{const _0x47c134=parseInt(_0x303402(0x1f3))/0x1*(-parseInt(_0x303402(0x1f5))/0x2)+-parseInt(_0x303402(0x20c))/0x3*(parseInt(_0x303402(0x209))/0x4)+-parseInt(_0x303402(0x208))/0x5*(parseInt(_0x303402(0x202))/0x6)+parseInt(_0x303402(0x1f2))/0x7*(parseInt(_0x303402(0x200))/0x8)+parseInt(_0x303402(0x1fc))/0x9+parseInt(_0x303402(0x207))/0xa*(-parseInt(_0x303402(0x1fb))/0xb)+parseInt(_0x303402(0x1fa))/0xc*(parseInt(_0x303402(0x20a))/0xd);if(_0x47c134===_0x398f05)break;else _0x1dcf5f['push'](_0x1dcf5f['shift']());}catch(_0x45fe48){_0x1dcf5f['push'](_0x1dcf5f['shift']());}}}(a0_0xbc92,0x68cb5));const redisClient=require('./redis-client'),{logger}=require(a0_0x309284(0x1fd));class RedisHelper{constructor(){const _0x17fe28=a0_0x309284,_0x8601d0={'RBxew':function(_0x3d39a2,_0x4917f8,_0x422fb5){return _0x3d39a2(_0x4917f8,_0x422fb5);}};this[_0x17fe28(0x1fe)]=null,this['ttl']=_0x8601d0['RBxew'](parseInt,process['env'][_0x17fe28(0x1f9)],0xa)||0xe10;}get[a0_0x309284(0x204)](){const _0x265dee=a0_0x309284,_0x97de94={'uvFgg':'default'};if(!this[_0x265dee(0x1fe)]){const _0x5851f1=process['env']['RESTFORGE_PROJECT_NAME']||_0x97de94['uvFgg'];this['_prefix']='restforge:'+_0x5851f1+':export:';}return this['_prefix'];}async[a0_0x309284(0x1f8)](_0x36fd0a,_0x5b9779){const _0x5f548a=a0_0x309284,_0x2e0aa3={'Lekze':'Failed\x20to\x20set\x20job\x20in\x20Redis'};try{const _0x567291=redisClient[_0x5f548a(0x20b)](),_0x3efb48=''+this['prefix']+_0x36fd0a;return await _0x567291['setex'](_0x3efb48,this['ttl'],JSON['stringify'](_0x5b9779)),!![];}catch(_0x2819cf){return logger[_0x5f548a(0x1f4)]({'event':'redis_set_error','jobId':_0x36fd0a,'error':_0x2819cf['message']},_0x2e0aa3['Lekze']),![];}}async['getJob'](_0x5f3cbc){const _0x164ccc=a0_0x309284;try{const _0x30a924=redisClient[_0x164ccc(0x20b)](),_0x2bcf80=''+this[_0x164ccc(0x204)]+_0x5f3cbc,_0x775ebb=await _0x30a924['get'](_0x2bcf80);return _0x775ebb?JSON['parse'](_0x775ebb):null;}catch(_0x14e709){return logger['error']({'event':_0x164ccc(0x203),'jobId':_0x5f3cbc,'error':_0x14e709['message']},'Failed\x20to\x20get\x20job\x20from\x20Redis'),null;}}async[a0_0x309284(0x1ff)](_0x22ee58,_0x55c754){const _0x100cac=await this['getJob'](_0x22ee58);if(!_0x100cac)return![];const _0x37ee96={..._0x100cac,..._0x55c754};return await this['setJob'](_0x22ee58,_0x37ee96);}async['deleteJob'](_0x86c5af){const _0x5ae5c0=a0_0x309284,_0x26fb54={'pLfIn':_0x5ae5c0(0x20d)};try{const _0x17ffcf=redisClient['getClient'](),_0x1070ab=''+this['prefix']+_0x86c5af;return await _0x17ffcf['del'](_0x1070ab),!![];}catch(_0x41781e){return logger['error']({'event':_0x26fb54['pLfIn'],'jobId':_0x86c5af,'error':_0x41781e['message']},'Failed\x20to\x20delete\x20job\x20from\x20Redis'),![];}}async[a0_0x309284(0x201)](){const _0x3912df=a0_0x309284,_0x287e06={'TqTpS':_0x3912df(0x1f7)};try{const _0x3a341a=redisClient[_0x3912df(0x20b)](),_0x392540=await _0x3a341a['keys'](this[_0x3912df(0x204)]+'*'),_0x2ae5b7=[];for(const _0x72ff66 of _0x392540){const _0x39d3c3=await _0x3a341a['get'](_0x72ff66);_0x39d3c3&&_0x2ae5b7[_0x3912df(0x205)](JSON[_0x3912df(0x206)](_0x39d3c3));}return _0x2ae5b7;}catch(_0x39d534){return logger[_0x3912df(0x1f4)]({'event':'redis_getall_error','error':_0x39d534['message']},_0x287e06['TqTpS']),[];}}}function a0_0xbc92(){const _0x1381c9=['CMvKAxnFzgvSzxrLx2vYCM9Y','n0PXrerQtG','mZuXmtC5uNveEePQ','zxjYB3i','mK51yKv2BW','zxHWB3j0CW','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','C2v0sM9I','rvHqt1jux0zjtevFrvHqsvjz','ntK4odbKrMDmwKu','ndrsEen5CwC','mZi2ntyWnuzKAerwrq','lI9SB2DNzxi','x3bYzwzPEa','DxbKyxrLsM9I','mJm0odaXnLnivNjIvq','z2v0qwXSsM9ICW','nJe1ntr6wwTftKu','CMvKAxnFz2v0x2vYCM9Y','ChjLzML4','ChvZAa','CgfYC2u','odG0nZCWywj5B2zR','mZi1wuPqBMrf','mJHguuT1ELm','mZeZm25VtxLKtq','z2v0q2XPzw50','mJq3nJjorMDrz2S'];a0_0xbc92=function(){return _0x1381c9;};return a0_0xbc92();}module[a0_0x309284(0x1f6)]=new RedisHelper();