@restforgejs/platform 5.1.0 → 5.1.6

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 (180) 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/data/pull.js +104 -0
  5. package/generators/cli/data/push.js +95 -0
  6. package/generators/cli/fast-track.js +12 -25
  7. package/generators/cli/init.js +347 -97
  8. package/generators/cli/schema/introspect.js +10 -10
  9. package/generators/lib/data/data-scope.js +138 -0
  10. package/generators/lib/data/db-executor.js +440 -0
  11. package/generators/lib/data/dialect-kit.js +56 -0
  12. package/generators/lib/data/envelope.js +236 -0
  13. package/generators/lib/data/pull-runner.js +414 -0
  14. package/generators/lib/data/push-runner.js +400 -0
  15. package/generators/lib/data/sdf-reader.js +132 -0
  16. package/generators/lib/data/table-order.js +126 -0
  17. package/generators/lib/data/value-codec.js +188 -0
  18. package/generators/lib/templates/dashboard-catalog.js +1 -1
  19. package/generators/lib/templates/db-connection-env.js +1 -1
  20. package/generators/lib/templates/dbschema-catalog.js +1 -1
  21. package/generators/lib/templates/field-validation-catalog.js +1 -1
  22. package/generators/lib/templates/mysql-template.js +1 -1
  23. package/generators/lib/templates/oracle-template.js +1 -1
  24. package/generators/lib/templates/postgres-template.js +1 -1
  25. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  26. package/generators/lib/templates/sqlite-template.js +1 -1
  27. package/integrity-manifest.json +18 -18
  28. package/package.json +1 -1
  29. package/scripts/verify-integrity.js +1 -1
  30. package/server.js +1 -1
  31. package/src/components/handlers/adjust_handler.js +1 -1
  32. package/src/components/handlers/audit_handler.js +1 -1
  33. package/src/components/handlers/delete_handler.js +1 -1
  34. package/src/components/handlers/export_handler.js +1 -1
  35. package/src/components/handlers/import_handler.js +1 -1
  36. package/src/components/handlers/insert_handler.js +1 -1
  37. package/src/components/handlers/update_handler.js +1 -1
  38. package/src/components/handlers/upload_handler.js +1 -1
  39. package/src/components/handlers/workflow_handler.js +1 -1
  40. package/src/components/integrations/webhook.js +1 -1
  41. package/src/consumers/baseConsumer.js +1 -1
  42. package/src/consumers/declarativeMapper.js +1 -1
  43. package/src/consumers/handlers/apiHandler.js +1 -1
  44. package/src/consumers/handlers/consoleHandler.js +1 -1
  45. package/src/consumers/handlers/databaseHandler.js +1 -1
  46. package/src/consumers/handlers/index.js +1 -1
  47. package/src/consumers/handlers/kafkaHandler.js +1 -1
  48. package/src/consumers/index.js +1 -1
  49. package/src/consumers/messageTransformer.js +1 -1
  50. package/src/consumers/validator.js +1 -1
  51. package/src/core/db/dialect/base-dialect.js +1 -1
  52. package/src/core/db/dialect/index.js +1 -1
  53. package/src/core/db/dialect/mysql-dialect.js +1 -1
  54. package/src/core/db/dialect/oracle-dialect.js +1 -1
  55. package/src/core/db/dialect/postgres-dialect.js +1 -1
  56. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  57. package/src/core/db/flatten-helper.js +1 -1
  58. package/src/core/db/query-builder-error.js +1 -1
  59. package/src/core/db/query-builder.js +1 -1
  60. package/src/core/db/relation-helper.js +1 -1
  61. package/src/core/handlers/delete_handler.js +1 -1
  62. package/src/core/handlers/insert_handler.js +1 -1
  63. package/src/core/handlers/update_handler.js +1 -1
  64. package/src/core/models/base-model.js +1 -1
  65. package/src/core/utils/cache-manager.js +1 -1
  66. package/src/core/utils/component-engine.js +1 -1
  67. package/src/core/utils/context-builder.js +1 -1
  68. package/src/core/utils/datetime-formatter.js +1 -1
  69. package/src/core/utils/datetime-parser.js +1 -1
  70. package/src/core/utils/db.js +1 -1
  71. package/src/core/utils/logger.js +1 -1
  72. package/src/core/utils/payload-loader.js +1 -1
  73. package/src/core/utils/security-checks.js +1 -1
  74. package/src/middleware/body-options.js +1 -1
  75. package/src/middleware/cors.js +1 -1
  76. package/src/middleware/idempotency.js +1 -1
  77. package/src/middleware/rate-limiter.js +1 -1
  78. package/src/middleware/request-logger.js +1 -1
  79. package/src/middleware/security-headers.js +1 -1
  80. package/src/models/base-model-mysql.js +1 -1
  81. package/src/models/base-model-oracle.js +1 -1
  82. package/src/models/base-model-sqlite.js +1 -1
  83. package/src/models/base-model.js +1 -1
  84. package/src/pro/caching/redis-client.js +1 -1
  85. package/src/pro/caching/redis-helper.js +1 -1
  86. package/src/pro/consumers/baseConsumer.js +1 -1
  87. package/src/pro/consumers/declarativeMapper.js +1 -1
  88. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  89. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  90. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  91. package/src/pro/consumers/handlers/index.js +1 -1
  92. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  93. package/src/pro/consumers/index.js +1 -1
  94. package/src/pro/consumers/messageTransformer.js +1 -1
  95. package/src/pro/consumers/validator.js +1 -1
  96. package/src/pro/database/base-model-mysql.js +1 -1
  97. package/src/pro/database/base-model-oracle.js +1 -1
  98. package/src/pro/database/base-model-sqlite.js +1 -1
  99. package/src/pro/database/db-mysql.js +1 -1
  100. package/src/pro/database/db-oracle.js +1 -1
  101. package/src/pro/database/db-sqlite.js +1 -1
  102. package/src/pro/excel/excel-generator.js +1 -1
  103. package/src/pro/excel/excel-parser.js +1 -1
  104. package/src/pro/excel/export-service.js +1 -1
  105. package/src/pro/excel/export_handler.js +1 -1
  106. package/src/pro/excel/import-service.js +1 -1
  107. package/src/pro/excel/import-validator.js +1 -1
  108. package/src/pro/excel/import_handler.js +1 -1
  109. package/src/pro/excel/upsert-builder.js +1 -1
  110. package/src/pro/idgen/idgen-routes.js +1 -1
  111. package/src/pro/integrations/lookup-resolver.js +1 -1
  112. package/src/pro/integrations/upload-handler-v2.js +1 -1
  113. package/src/pro/integrations/upload-handler.js +1 -1
  114. package/src/pro/integrations/webhook.js +1 -1
  115. package/src/pro/locking/lock-routes.js +1 -1
  116. package/src/pro/locking/resource-lock-manager.js +1 -1
  117. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  118. package/src/pro/messaging/kafkaService.js +1 -1
  119. package/src/pro/messaging/messagehubService.js +1 -1
  120. package/src/pro/messaging/rabbitmqService.js +1 -1
  121. package/src/pro/scheduler/job-manager.js +1 -1
  122. package/src/pro/scheduler/job-routes.js +1 -1
  123. package/src/pro/scheduler/job-validator.js +1 -1
  124. package/src/pro/storage/base-storage-provider.js +1 -1
  125. package/src/pro/storage/file-metadata-helper.js +1 -1
  126. package/src/pro/storage/index.js +1 -1
  127. package/src/pro/storage/local-storage-provider.js +1 -1
  128. package/src/pro/storage/s3-storage-provider.js +1 -1
  129. package/src/pro/storage/upload-cleanup-job.js +1 -1
  130. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  131. package/src/pro/storage/upload-pending-tracker.js +1 -1
  132. package/src/pro/websocket/broadcast-helper.js +1 -1
  133. package/src/pro/websocket/index.js +1 -1
  134. package/src/pro/websocket/livesync-server.js +1 -1
  135. package/src/pro/websocket/ws-broadcaster.js +1 -1
  136. package/src/services/export-service.js +1 -1
  137. package/src/services/import-service.js +1 -1
  138. package/src/services/kafkaConsumerService.js +1 -1
  139. package/src/services/kafkaService.js +1 -1
  140. package/src/services/messagehubService.js +1 -1
  141. package/src/services/rabbitmqService.js +1 -1
  142. package/src/utils/cache-invalidation-registry.js +1 -1
  143. package/src/utils/cache-manager.js +1 -1
  144. package/src/utils/component-engine.js +1 -1
  145. package/src/utils/config-extractor.js +1 -1
  146. package/src/utils/consumerLogger.js +1 -1
  147. package/src/utils/context-builder.js +1 -1
  148. package/src/utils/dashboard-helpers.js +1 -1
  149. package/src/utils/dateHelper.js +1 -1
  150. package/src/utils/datetime-formatter.js +1 -1
  151. package/src/utils/datetime-parser.js +1 -1
  152. package/src/utils/db-bootstrap.js +1 -1
  153. package/src/utils/db-mysql.js +1 -1
  154. package/src/utils/db-oracle.js +1 -1
  155. package/src/utils/db-sqlite.js +1 -1
  156. package/src/utils/db.js +1 -1
  157. package/src/utils/demo-generator.js +1 -1
  158. package/src/utils/excel-generator.js +1 -1
  159. package/src/utils/excel-parser.js +1 -1
  160. package/src/utils/file-watcher.js +1 -1
  161. package/src/utils/id-generator.js +1 -1
  162. package/src/utils/idempotency-manager.js +1 -1
  163. package/src/utils/import-validator.js +1 -1
  164. package/src/utils/license-client.js +1 -1
  165. package/src/utils/lock-manager.js +1 -1
  166. package/src/utils/logger.js +1 -1
  167. package/src/utils/lookup-resolver.js +1 -1
  168. package/src/utils/payload-loader.js +1 -1
  169. package/src/utils/processor-response.js +1 -1
  170. package/src/utils/rabbitmq.js +1 -1
  171. package/src/utils/redis-client.js +1 -1
  172. package/src/utils/redis-helper.js +1 -1
  173. package/src/utils/request-scope.js +1 -1
  174. package/src/utils/security-checks.js +1 -1
  175. package/src/utils/service-resolver.js +1 -1
  176. package/src/utils/shutdown-coordinator.js +1 -1
  177. package/src/utils/trusted-keys.js +1 -1
  178. package/src/utils/upload-handler.js +1 -1
  179. package/src/utils/upsert-builder.js +1 -1
  180. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- function a0_0x5541(){const _0x1d6fea=['D3jPDgvFBg9JA19YzwPLy3rLza','ywnXDwLYzvjLywrmB2nR','x2vUC3vYzuLUAxrPywXPEMvK','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','shnjy08','vNLowvC','zw52','Aw5JCG','mZeZmtm0wuL0y3bg','z2v0tg9JA0LUzM8','x3bYzwzPEa','zxjYB3i','mJqXntzxuffNCNu','x3jLDhj5q291BNq','mtyWohnRDfncwq','C3bSAxq','ChjLzML4','x2vUywjSzwq','odyWmJiZzvD0B2Ps','D3jPDgvFBg9JA19Hy3f1AxjLza','rw9XwNG','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','x2LUAxrPywXPEMvK','x3DVCMTLCKLK','zgvMyxvSDfruta','Bg9JA19YzwXLyxnLx2vYCM9Y','tfziwfq','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','zw5HyMXLza','z2vUzxjHDgvmB2nRvMfSDwu','x2rLzMf1BhruveW','zxzHBa','uKvbrcbSB2nRigfJCxvPCMvK','otbPBNHTsLu','D2fYBG','CMv0CNK','mJrPuwjyEhy','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','q1DdENq','C2v0','yNvPBgrmB2nRs2v5','quzYrNe','zxH0zw5Ktg9JAW','CMvHza','CMvHzf9SB2nRx3DHAxrPBMC','CMy6Bg9JAZO','D3jPDgu','mJK4mZi3meXbyuLAAW','C2v0zxG','zgvIDwC','nK1TvfzyAa','x3n0CMf0zwD5','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','x3jLDhj5rgvSyxK','BKfftgi','u3PQDxG','mtKXndiXwwriEhPi','zerWBNG','uKvbrcbSB2nRihjLBgvHC2vK','z2v0','v1jjveuGBg9JAYbLCNjVCG','mxHzCuPlDG','C2XLzxa','te9ds19esvnuuKLcvvrfrf9srvrswq','D3jPDgvFBg9JA19YzwXLyxnLza','AhvjA3q','mJm3mMjtz2vvwa','x2LUAxrdB25MAwC','BwvZC2fNzq','EKHXDuq','whblvg0','y3HVtvG','ywXS','mtCXm3zQD2Xyvq','CMv0CNLezwXHEq','v2fPDgLUzYbMB3iGv1jjveuGBg9JAYb0BYbYzwXLyxnL','D29YA2vYlq','CgLK','mtGYnZq3nNP3D2z6BW','mZKYBNzKANLV','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','v1jjveuGBg9JAYbYzwXLyxnLza','BM93','DxvPza','CMvHzf9SB2nRx3rPBwvVDxq','A0DVvu4','Aw5MBW','lI9YzwrPCY1JBgLLBNq','D3jPDgvFBg9JA19LCNjVCG','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','yuPKALy','zxHWB3j0CW','CMv0CNLdB3vUDa','t2LbwNq','AxnfBMfIBgvK','t09cAgi'];a0_0x5541=function(){return _0x1d6fea;};return a0_0x5541();}const a0_0x521273=a0_0xee61;(function(_0x190b45,_0x447fe7){const _0x56466b=a0_0xee61,_0x13f317=_0x190b45();while(!![]){try{const _0xdaba87=-parseInt(_0x56466b(0x101))/0x1*(-parseInt(_0x56466b(0x12c))/0x2)+-parseInt(_0x56466b(0x10d))/0x3*(parseInt(_0x56466b(0x106))/0x4)+-parseInt(_0x56466b(0xf3))/0x5*(parseInt(_0x56466b(0xf6))/0x6)+parseInt(_0x56466b(0x112))/0x7*(-parseInt(_0x56466b(0xe8))/0x8)+-parseInt(_0x56466b(0xfc))/0x9*(parseInt(_0x56466b(0xe5))/0xa)+parseInt(_0x56466b(0xd0))/0xb*(parseInt(_0x56466b(0xd2))/0xc)+parseInt(_0x56466b(0xd6))/0xd*(parseInt(_0x56466b(0x113))/0xe);if(_0xdaba87===_0x447fe7)break;else _0x13f317['push'](_0x13f317['shift']());}catch(_0x590e4d){_0x13f317['push'](_0x13f317['shift']());}}}(a0_0x5541,0x60209));const redisClient=require(a0_0x521273(0x11b)),{logger}=require('./logger'),{v4:uuidv4}=require(a0_0x521273(0x117));class LockManager{constructor(){const _0x32123e=a0_0x521273;this[_0x32123e(0xce)]=null,this[_0x32123e(0xd5)]=null,this[_0x32123e(0xe2)]=null,this['_retryCount']=null,this['_retryDelay']=null,this[_0x32123e(0xf7)]=null,this[_0x32123e(0xdb)]=null,this[_0x32123e(0xda)]=![];}['_initConfig'](){const _0x20334e=a0_0x521273,_0x4bb528={'CLUdJ':'7|1|0|8|2|5|6|4|3','zHquD':function(_0x2d61e7,_0x2c165d,_0x1443aa){return _0x2d61e7(_0x2c165d,_0x1443aa);},'OiAZt':function(_0x492179,_0x1c895f){return _0x492179===_0x1c895f;},'AFrFq':'true','VyNYW':function(_0x362c8a,_0xa25bad,_0x4491d0){return _0x362c8a(_0xa25bad,_0x4491d0);},'XEEoI':'lock_config_init'},_0x4b5688=_0x4bb528['CLUdJ'][_0x20334e(0xd3)]('|');let _0x1f929d=0x0;while(!![]){switch(_0x4b5688[_0x1f929d++]){case'0':this['_defaultTTL']=_0x4bb528[_0x20334e(0x109)](parseInt,process[_0x20334e(0x12a)]['LOCK_DISTRIBUTED_TTL'],0xa)||0xa;continue;case'1':this['_enabled']=_0x4bb528[_0x20334e(0x121)](process['env']['LOCK_DISTRIBUTED_ENABLED'],_0x4bb528[_0x20334e(0xed)]);continue;case'2':this[_0x20334e(0xf9)]=_0x4bb528[_0x20334e(0x129)](parseInt,process['env'][_0x20334e(0x114)],0xa)||0x64;continue;case'3':logger[_0x20334e(0x11a)]({'event':_0x4bb528['XEEoI'],'enabled':this[_0x20334e(0xd5)],'strategy':this[_0x20334e(0xf7)],'ttl':this[_0x20334e(0xe2)],'retryCount':this[_0x20334e(0xd1)],'retryDelay':this[_0x20334e(0xf9)],'workerId':this['_workerId']},_0x20334e(0xd9)+this[_0x20334e(0xd5)]+',\x20strategy:\x20'+this['_strategy']);continue;case'4':this['_initialized']=!![];continue;case'5':this['_strategy']=process['env'][_0x20334e(0xdf)]||_0x20334e(0xe7);continue;case'6':this[_0x20334e(0xdb)]=_0x20334e(0x110)+process[_0x20334e(0x111)];continue;case'7':this[_0x20334e(0xce)]=_0x20334e(0xf1);continue;case'8':this['_retryCount']=parseInt(process[_0x20334e(0x12a)][_0x20334e(0x103)],0xa)||0x3;continue;}break;}}[a0_0x521273(0x126)](){const _0x5bc72e=a0_0x521273;!this['_initialized']&&this[_0x5bc72e(0x107)]();}get[a0_0x521273(0xd4)](){const _0x46de40=a0_0x521273;return this['_ensureInitialized'](),this[_0x46de40(0xce)];}get['enabled'](){const _0x4d529f=a0_0x521273;return this[_0x4d529f(0x126)](),this['_enabled'];}get['defaultTTL'](){const _0x5f3c2e=a0_0x521273;return this['_ensureInitialized'](),this[_0x5f3c2e(0xe2)];}get['retryCount'](){const _0x90a07c=a0_0x521273;return this[_0x90a07c(0x126)](),this[_0x90a07c(0xd1)];}get[a0_0x521273(0x10e)](){const _0x2a19b2=a0_0x521273;return this[_0x2a19b2(0x126)](),this[_0x2a19b2(0xf9)];}get['strategy'](){const _0x426107=a0_0x521273;return this[_0x426107(0x126)](),this[_0x426107(0xf7)];}get['workerId'](){const _0x1fe864=a0_0x521273;return this['_ensureInitialized'](),this[_0x1fe864(0xdb)];}[a0_0x521273(0xec)](_0xafbc33){const _0x32acbd=a0_0x521273,{module:_0x31b827,endpoint:_0xc8c314,lockType:_0x49b708,recordId:_0x12a0fd}=_0xafbc33;if(_0x12a0fd)return''+this['prefix']+_0x31b827+':'+_0xc8c314+':'+_0x12a0fd+':'+_0x49b708;return''+this[_0x32acbd(0xd4)]+_0x31b827+':'+_0xc8c314+':'+_0x49b708;}[a0_0x521273(0xe1)](){const _0x3ad632=a0_0x521273;return this['workerId']+':'+uuidv4()+':'+Date[_0x3ad632(0x116)]();}async[a0_0x521273(0x125)](_0x281f24){const _0x21283e=a0_0x521273,_0x24622e={'OOBhb':'write','dDpnx':function(_0x146449,_0x3d3339){return _0x146449<_0x3d3339;},'iXVOn':_0x21283e(0xe4),'cxoMX':_0x21283e(0xf0),'HMeuK':function(_0x3da3be,_0x4c1702){return _0x3da3be*_0x4c1702;}};if(!this[_0x21283e(0xe0)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x571aa0=this['buildLockKey']({..._0x281f24,'lockType':_0x24622e[_0x21283e(0x123)]}),_0x41181e=this['buildLockKey']({..._0x281f24,'lockType':'read'}),_0x144d2e=this[_0x21283e(0xe1)]();try{const _0x3ef78e=redisClient['getClient']();for(let _0xdedcf9=0x0;_0x24622e[_0x21283e(0xfd)](_0xdedcf9,this[_0x21283e(0x120)]);_0xdedcf9++){const _0x3b766b=await _0x3ef78e['get'](_0x571aa0);if(!_0x3b766b){await _0x3ef78e[_0x21283e(0x12b)](_0x41181e),await _0x3ef78e['expire'](_0x41181e,this['defaultTTL']);const _0x3f195e=_0x41181e+':'+_0x144d2e;return await _0x3ef78e[_0x21283e(0xf4)](_0x3f195e,this['defaultTTL'],_0x144d2e),logger['debug']({'event':'read_lock_acquired','key':_0x41181e,'value':_0x144d2e},_0x24622e['iXVOn']),{'success':!![],'lockValue':_0x144d2e,'lockKey':_0x3f195e};}logger[_0x21283e(0xf5)]({'event':_0x24622e[_0x21283e(0x10b)],'writeKey':_0x571aa0,'attempt':_0xdedcf9},_0x21283e(0x10f)),await this[_0x21283e(0x102)](_0x24622e['HMeuK'](this['retryDelay'],Math['pow'](0x2,_0xdedcf9)));}return logger[_0x21283e(0xe6)]({'event':_0x21283e(0x118),'key':_0x41181e},'READ\x20lock\x20acquire\x20timeout'),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x15558f){return logger['error']({'event':'read_lock_error','error':_0x15558f[_0x21283e(0x108)]},'READ\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x521beb){const _0x3f4fe4=a0_0x521273,_0x2eb811={'CWCzt':function(_0x4fe4fe,_0x1d663a){return _0x4fe4fe===_0x1d663a;},'XpKTm':'reject','aJdjV':'write_lock_acquired','dKavY':'WRITE\x20lock\x20acquired\x20(reject\x20mode)','lbnEG':function(_0x5e74a8,_0x39b528){return _0x5e74a8<_0x39b528;},'NAGFA':function(_0x38c132,_0x58279c){return _0x38c132===_0x58279c;},'JUoGA':'write_lock_waiting','kGoUN':_0x3f4fe4(0xe9),'fLxmh':_0x3f4fe4(0x11c),'eeHmX':_0x3f4fe4(0x100)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x447fd0=this[_0x3f4fe4(0xec)]({..._0x521beb,'lockType':_0x3f4fe4(0xf2)}),_0x1433ac=this[_0x3f4fe4(0xec)]({..._0x521beb,'lockType':'read'}),_0x475b36=this[_0x3f4fe4(0xe1)]();try{const _0xde0054=redisClient['getClient']();if(_0x2eb811[_0x3f4fe4(0xea)](this['strategy'],_0x2eb811['XpKTm'])){const _0x1b884c=await _0xde0054[_0x3f4fe4(0xeb)](_0x447fd0,_0x475b36,'EX',this[_0x3f4fe4(0xdc)],'NX');if(_0x2eb811[_0x3f4fe4(0xea)](_0x1b884c,'OK'))return logger['debug']({'event':_0x2eb811[_0x3f4fe4(0x11e)],'key':_0x447fd0,'value':_0x475b36,'strategy':_0x2eb811[_0x3f4fe4(0x10a)]},_0x2eb811['dKavY']),{'success':!![],'lockValue':_0x475b36,'lockKey':_0x447fd0};return logger[_0x3f4fe4(0xf5)]({'event':_0x3f4fe4(0x124),'key':_0x447fd0},'WRITE\x20lock\x20rejected\x20-\x20record\x20busy'),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x833c70=0x0;_0x2eb811['lbnEG'](_0x833c70,this['retryCount']);_0x833c70++){const [_0x9728e,_0x32e4e7]=await Promise['all']([_0xde0054[_0x3f4fe4(0xff)](_0x1433ac),_0xde0054['get'](_0x447fd0)]);if(!_0x32e4e7&&(!_0x9728e||_0x2eb811['NAGFA'](parseInt(_0x9728e),0x0))){const _0x198d18=await _0xde0054[_0x3f4fe4(0xeb)](_0x447fd0,_0x475b36,'EX',this[_0x3f4fe4(0xdc)],'NX');if(_0x198d18==='OK')return logger['debug']({'event':_0x3f4fe4(0xd7),'key':_0x447fd0,'value':_0x475b36,'strategy':_0x3f4fe4(0xe7)},'WRITE\x20lock\x20acquired\x20(retry\x20mode)'),{'success':!![],'lockValue':_0x475b36,'lockKey':_0x447fd0};}logger['debug']({'event':_0x2eb811['JUoGA'],'writeKey':_0x447fd0,'readCount':_0x9728e,'attempt':_0x833c70},_0x3f4fe4(0x11d)),await this['sleep'](this['retryDelay']*Math['pow'](0x2,_0x833c70));}return logger['warn']({'event':'write_lock_timeout','key':_0x447fd0},_0x2eb811[_0x3f4fe4(0x119)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x2049ec){return logger['error']({'event':_0x2eb811['fLxmh'],'error':_0x2049ec[_0x3f4fe4(0x108)]},_0x2eb811['eeHmX']),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x1d7b35,_0x4b5c63){const _0x535817=a0_0x521273,_0x1c1efb={'EoqZx':function(_0x584fbf,_0x4ebbcb){return _0x584fbf>_0x4ebbcb;},'KLOFQ':'read_lock_released','nAELb':_0x535817(0xfe),'LVHXT':_0x535817(0x104),'HsIcO':_0x535817(0x115),'OgpQN':_0x535817(0xf8),'huIkt':_0x535817(0xdd)};if(!this[_0x535817(0xe0)]||!_0x1d7b35)return!![];try{const _0x500820=redisClient['getClient']();if(_0x1d7b35['includes'](':read:')){await _0x500820['del'](_0x1d7b35);const _0x310c46=_0x1d7b35['substring'](0x0,_0x1d7b35['lastIndexOf'](':')),_0x5f2601=await _0x500820[_0x535817(0xff)](_0x310c46);return _0x5f2601&&_0x1c1efb[_0x535817(0xd8)](parseInt(_0x5f2601),0x0)&&await _0x500820['decr'](_0x310c46),logger[_0x535817(0xf5)]({'event':_0x1c1efb['KLOFQ'],'key':_0x1d7b35},_0x1c1efb[_0x535817(0xfa)]),!![];}const _0x5e9954=_0x535817(0x127),_0x40e78c=await _0x500820[_0x535817(0xe3)](_0x5e9954,0x1,_0x1d7b35,_0x4b5c63);if(_0x40e78c===0x1)return logger['debug']({'event':_0x1c1efb[_0x535817(0xde)],'key':_0x1d7b35},_0x1c1efb[_0x535817(0x128)]),!![];return logger['warn']({'event':_0x1c1efb['OgpQN'],'key':_0x1d7b35},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0xab586c){return logger[_0x535817(0xcf)]({'event':_0x1c1efb[_0x535817(0x105)],'key':_0x1d7b35,'error':_0xab586c[_0x535817(0x108)]},'Lock\x20release\x20error'),![];}}async[a0_0x521273(0xee)](_0xb3e73a,_0x34c58a,_0x3d122b=null){const _0x2a3a85=a0_0x521273,_0x24969f={'Bybnh':function(_0x21c0d0,_0x5785f4){return _0x21c0d0===_0x5785f4;},'Szjux':'lock_extended','yrIYI':'Lock\x20TTL\x20extended','QSGhQ':'Lock\x20extend\x20error'};if(!this[_0x2a3a85(0xe0)]||!_0xb3e73a)return!![];try{const _0x1876be=redisClient['getClient'](),_0x3a08e7='\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',_0x297bf5=await _0x1876be['eval'](_0x3a08e7,0x1,_0xb3e73a,_0x34c58a,_0x3d122b||this['defaultTTL']);if(_0x24969f['Bybnh'](_0x297bf5,0x1))return logger[_0x2a3a85(0xf5)]({'event':_0x24969f[_0x2a3a85(0xfb)],'key':_0xb3e73a,'ttl':_0x3d122b||this['defaultTTL']},_0x24969f['yrIYI']),!![];return![];}catch(_0xc43220){return logger[_0x2a3a85(0xcf)]({'event':'lock_extend_error','key':_0xb3e73a,'error':_0xc43220['message']},_0x24969f['QSGhQ']),![];}}[a0_0x521273(0x122)](){return this['enabled'];}['sleep'](_0x42294c){return new Promise(_0x10f369=>setTimeout(_0x10f369,_0x42294c));}async[a0_0x521273(0xcd)](_0x9a6c7f){const _0x37033b=a0_0x521273,_0x2fdf18={'ykkIm':function(_0x5856d3,_0x55589b){return _0x5856d3(_0x55589b);}};if(!this[_0x37033b(0xe0)])return{'enabled':![]};try{const _0x4ab77d=redisClient['getClient'](),_0x33449d=this['buildLockKey']({..._0x9a6c7f,'lockType':'write'}),_0x74b2e5=this[_0x37033b(0xec)]({..._0x9a6c7f,'lockType':_0x37033b(0xef)}),[_0x2eda06,_0x5d56d6]=await Promise[_0x37033b(0x10c)]([_0x4ab77d['get'](_0x33449d),_0x4ab77d[_0x37033b(0xff)](_0x74b2e5)]);return{'enabled':!![],'writeLock':_0x2eda06||null,'readCount':_0x2fdf18['ykkIm'](parseInt,_0x5d56d6)||0x0,'writeKey':_0x33449d,'readKey':_0x74b2e5};}catch(_0xffe2a4){return{'enabled':!![],'error':_0xffe2a4['message']};}}}function a0_0xee61(_0x4758ad,_0x3115c9){_0x4758ad=_0x4758ad-0xcd;const _0x55417e=a0_0x5541();let _0xee61a8=_0x55417e[_0x4758ad];if(a0_0xee61['zBORdX']===undefined){var _0x506bd3=function(_0x2d1aa7){const _0x531304='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c0cf2='',_0x3fae45='';for(let _0x1367be=0x0,_0x1567b6,_0x2c6324,_0x50321c=0x0;_0x2c6324=_0x2d1aa7['charAt'](_0x50321c++);~_0x2c6324&&(_0x1567b6=_0x1367be%0x4?_0x1567b6*0x40+_0x2c6324:_0x2c6324,_0x1367be++%0x4)?_0x3c0cf2+=String['fromCharCode'](0xff&_0x1567b6>>(-0x2*_0x1367be&0x6)):0x0){_0x2c6324=_0x531304['indexOf'](_0x2c6324);}for(let _0x1b8931=0x0,_0x4549fa=_0x3c0cf2['length'];_0x1b8931<_0x4549fa;_0x1b8931++){_0x3fae45+='%'+('00'+_0x3c0cf2['charCodeAt'](_0x1b8931)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3fae45);};a0_0xee61['BdgwzD']=_0x506bd3,a0_0xee61['IqDADQ']={},a0_0xee61['zBORdX']=!![];}const _0x7be05b=_0x55417e[0x0],_0x5678db=_0x4758ad+_0x7be05b,_0x3055=a0_0xee61['IqDADQ'][_0x5678db];return!_0x3055?(_0xee61a8=a0_0xee61['BdgwzD'](_0xee61a8),a0_0xee61['IqDADQ'][_0x5678db]=_0xee61a8):_0xee61a8=_0x3055,_0xee61a8;}module[a0_0x521273(0x11f)]=new LockManager();
1
+ const a0_0x292047=a0_0x2b57;(function(_0xdde8ff,_0x570895){const _0x1270d7=a0_0x2b57,_0xbe487b=_0xdde8ff();while(!![]){try{const _0x28c24c=-parseInt(_0x1270d7(0x21e))/0x1*(parseInt(_0x1270d7(0x202))/0x2)+parseInt(_0x1270d7(0x1f9))/0x3+-parseInt(_0x1270d7(0x23b))/0x4*(-parseInt(_0x1270d7(0x204))/0x5)+parseInt(_0x1270d7(0x208))/0x6+-parseInt(_0x1270d7(0x235))/0x7+parseInt(_0x1270d7(0x225))/0x8*(parseInt(_0x1270d7(0x1f0))/0x9)+parseInt(_0x1270d7(0x1f3))/0xa*(parseInt(_0x1270d7(0x21a))/0xb);if(_0x28c24c===_0x570895)break;else _0xbe487b['push'](_0xbe487b['shift']());}catch(_0x47675e){_0xbe487b['push'](_0xbe487b['shift']());}}}(a0_0x328b,0xaa8a3));function a0_0x2b57(_0x40fb07,_0x425755){_0x40fb07=_0x40fb07-0x1ea;const _0x328b29=a0_0x328b();let _0x2b578b=_0x328b29[_0x40fb07];if(a0_0x2b57['yKMoXr']===undefined){var _0x3789ed=function(_0x6972c2){const _0x46af56='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x425dc8='',_0x12ac16='';for(let _0x2770e3=0x0,_0x1abe29,_0x577264,_0x2566b8=0x0;_0x577264=_0x6972c2['charAt'](_0x2566b8++);~_0x577264&&(_0x1abe29=_0x2770e3%0x4?_0x1abe29*0x40+_0x577264:_0x577264,_0x2770e3++%0x4)?_0x425dc8+=String['fromCharCode'](0xff&_0x1abe29>>(-0x2*_0x2770e3&0x6)):0x0){_0x577264=_0x46af56['indexOf'](_0x577264);}for(let _0x9b5b59=0x0,_0x7468b6=_0x425dc8['length'];_0x9b5b59<_0x7468b6;_0x9b5b59++){_0x12ac16+='%'+('00'+_0x425dc8['charCodeAt'](_0x9b5b59)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x12ac16);};a0_0x2b57['qczgkf']=_0x3789ed,a0_0x2b57['XPFKke']={},a0_0x2b57['yKMoXr']=!![];}const _0x5016ed=_0x328b29[0x0],_0x4aa2a8=_0x40fb07+_0x5016ed,_0x41e12f=a0_0x2b57['XPFKke'][_0x4aa2a8];return!_0x41e12f?(_0x2b578b=a0_0x2b57['qczgkf'](_0x2b578b),a0_0x2b57['XPFKke'][_0x4aa2a8]=_0x2b578b):_0x2b578b=_0x41e12f,_0x2b578b;}function a0_0x328b(){const _0x350426=['BgfZDeLUzgv4t2y','t1DVsNi','zxHWB3j0CW','lI9SB2DNzxi','te9ds19esvnuuKLcvvrfrf9uveW','D3jPDgvFBg9JA19Hy3f1AxjLza','tw1jDvq','C2v0','zxHWAxjL','ode5owrpyMHbzW','D3jPDgvFBg9JA193ywL0Aw5N','ywnXDwLYzvjLywrmB2nR','mJaYmtbduKDhEM8','x2LUAxrdB25MAwC','Cg93','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','x3n0CMf0zwD5','x2rLzMf1BhruveW','mtyYndy4B1jZuePz','x3jLDhj5rgvSyxK','BM93','D3jPDgvFBg9JA19LCNjVCG','zxjYB3i','x3jLDhj5q291BNq','A054EKi','zw5HyMXLza','z2v0','mJu5mde5nKHoz3fXDG','x3DVCMTLCKLK','mZGXmZa3nwTIDxDiCG','ywLhDKW','CMvQzwn0','EuPsquK','nJaWmty4nKLOy3zNDa','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','AMzPzgi','venqA1m','Aw5MBW','oNjLywq6','x3bYzwzPEa','zM9Zrgq','ywXS','zgvIDwC','rwHcs1O','x2LUAxrPywXPEMvK','D3zfvLq','z2DiC24','CMvHzf9SB2nRx2vYCM9Y','D3jPDgu','zgvMyxvSDfruta','te9ds19esvnuuKLcvvrfrf9ftKfcteve','mZa5mujgrejnBW','zw52','ChjLzML4','D29YA2vYswq','mvr6Bhf3qW','Bg9JA19JB25MAwDFAw5PDa','D2fYBG','C3vIC3rYAw5N','z2v0q2XPzw50','CMv0CNLezwXHEq','x2vUC3vYzuLUAxrPywXPEMvK','mJe0nfrAt1fuAG','rKzgEwG','CMvHza','BM1srwG','DxvPza','CMv0CNLdB3vUDa','CMvSzwfZzuXVy2S','CMvHzf9SB2nRx3rPBwvVDxq','z2vUzxjHDgvmB2nRvMfSDwu','C2XLzxa','uuvWBfC','qwPJz3y','x2vUywjSzwq','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','uufOCuG','lcbZDhjHDgvNEtOG','ndq0odmWngDwuefNBq','svrSvhe','Aw5JBhvKzxm','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','yNvPBgrmB2nRs2v5','BwvZC2fNzq','ne9Qwu5AwG'];a0_0x328b=function(){return _0x350426;};return a0_0x328b();}const redisClient=require('./redis-client'),{logger}=require(a0_0x292047(0x1ea)),{v4:uuidv4}=require(a0_0x292047(0x229));class LockManager{constructor(){const _0x4f3eb5=a0_0x292047;this[_0x4f3eb5(0x20e)]=null,this[_0x4f3eb5(0x231)]=null,this[_0x4f3eb5(0x1f8)]=null,this[_0x4f3eb5(0x1fe)]=null,this[_0x4f3eb5(0x1fa)]=null,this[_0x4f3eb5(0x1f7)]=null,this['_workerId']=null,this[_0x4f3eb5(0x213)]=![];}[a0_0x292047(0x1f4)](){const _0x5df6b8=a0_0x292047,_0x610eab={'fosDd':function(_0x2ae856,_0x3bcca0){return _0x2ae856===_0x3bcca0;},'EhBKZ':function(_0x231506,_0x519f8c,_0x51f533){return _0x231506(_0x519f8c,_0x51f533);},'gmAJC':function(_0x219348,_0x283c97,_0x51a7cd){return _0x219348(_0x283c97,_0x51a7cd);}};this[_0x5df6b8(0x20e)]='rf:lock:',this[_0x5df6b8(0x231)]=_0x610eab[_0x5df6b8(0x20f)](process['env'][_0x5df6b8(0x219)],'true'),this[_0x5df6b8(0x1f8)]=_0x610eab['EhBKZ'](parseInt,process[_0x5df6b8(0x21b)][_0x5df6b8(0x1eb)],0xa)||0xa,this['_retryCount']=_0x610eab[_0x5df6b8(0x212)](parseInt,process[_0x5df6b8(0x21b)]['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3,this[_0x5df6b8(0x1fa)]=_0x610eab['gmAJC'](parseInt,process['env'][_0x5df6b8(0x232)],0xa)||0x64,this[_0x5df6b8(0x1f7)]=process['env']['LOCK_DISTRIBUTED_STRATEGY']||'retry',this['_workerId']='worker-'+process['pid'],this['_initialized']=!![],logger[_0x5df6b8(0x20c)]({'event':_0x5df6b8(0x21f),'enabled':this['_enabled'],'strategy':this['_strategy'],'ttl':this[_0x5df6b8(0x1f8)],'retryCount':this['_retryCount'],'retryDelay':this[_0x5df6b8(0x1fa)],'workerId':this[_0x5df6b8(0x203)]},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x5df6b8(0x231)]+_0x5df6b8(0x234)+this[_0x5df6b8(0x1f7)]);}['_ensureInitialized'](){const _0x17eccb=a0_0x292047;!this['_initialized']&&this[_0x17eccb(0x1f4)]();}get['prefix'](){return this['_ensureInitialized'](),this['_prefix'];}get['enabled'](){const _0x5e45d3=a0_0x292047;return this[_0x5e45d3(0x224)](),this[_0x5e45d3(0x231)];}get['defaultTTL'](){const _0x3fc9dc=a0_0x292047;return this['_ensureInitialized'](),this[_0x3fc9dc(0x1f8)];}get[a0_0x292047(0x22a)](){const _0x20afb6=a0_0x292047;return this['_ensureInitialized'](),this[_0x20afb6(0x1fe)];}get['retryDelay'](){const _0x1adab2=a0_0x292047;return this['_ensureInitialized'](),this[_0x1adab2(0x1fa)];}get['strategy'](){const _0x2396e1=a0_0x292047;return this[_0x2396e1(0x224)](),this[_0x2396e1(0x1f7)];}get[a0_0x292047(0x21d)](){const _0x37fd0d=a0_0x292047;return this[_0x37fd0d(0x224)](),this['_workerId'];}['buildLockKey'](_0x31882d){const _0x8edd8a=a0_0x292047,{module:_0x3a87f7,endpoint:_0x2b92bc,lockType:_0x18e5ba,recordId:_0x55b691}=_0x31882d;if(_0x55b691)return''+this[_0x8edd8a(0x21c)]+_0x3a87f7+':'+_0x2b92bc+':'+_0x55b691+':'+_0x18e5ba;return''+this['prefix']+_0x3a87f7+':'+_0x2b92bc+':'+_0x18e5ba;}[a0_0x292047(0x22d)](){const _0x1af2d3=a0_0x292047,_0x15c61f={'yJRAI':function(_0x29d947){return _0x29d947();}};return this['workerId']+':'+_0x15c61f[_0x1af2d3(0x207)](uuidv4)+':'+Date[_0x1af2d3(0x1fb)]();}async[a0_0x292047(0x1f2)](_0x1fe932){const _0x2f90e8=a0_0x292047,_0x33211b={'rdivS':_0x2f90e8(0x217),'QAhqH':'read','tbeLj':function(_0x188bdc,_0x41985){return _0x188bdc<_0x41985;},'KSZzL':'READ\x20lock\x20acquired','ITlTq':'read_lock_waiting','QEplW':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release'};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0xf80326=this['buildLockKey']({..._0x1fe932,'lockType':_0x33211b['rdivS']}),_0x211938=this['buildLockKey']({..._0x1fe932,'lockType':_0x33211b[_0x2f90e8(0x233)]}),_0x3bca6b=this['generateLockValue']();try{const _0x5d6300=redisClient[_0x2f90e8(0x222)]();for(let _0x1f9780=0x0;_0x33211b['tbeLj'](_0x1f9780,this[_0x2f90e8(0x22a)]);_0x1f9780++){const _0x554c5e=await _0x5d6300[_0x2f90e8(0x201)](_0xf80326);if(!_0x554c5e){await _0x5d6300['incr'](_0x211938),await _0x5d6300[_0x2f90e8(0x1ef)](_0x211938,this['defaultTTL']);const _0x1791b4=_0x211938+':'+_0x3bca6b;return await _0x5d6300['setex'](_0x1791b4,this['defaultTTL'],_0x3bca6b),logger[_0x2f90e8(0x211)]({'event':'read_lock_acquired','key':_0x211938,'value':_0x3bca6b},_0x33211b['KSZzL']),{'success':!![],'lockValue':_0x3bca6b,'lockKey':_0x1791b4};}logger[_0x2f90e8(0x211)]({'event':_0x33211b[_0x2f90e8(0x236)],'writeKey':_0xf80326,'attempt':_0x1f9780},_0x33211b[_0x2f90e8(0x22f)]),await this[_0x2f90e8(0x22e)](this['retryDelay']*Math[_0x2f90e8(0x1f5)](0x2,_0x1f9780));}return logger[_0x2f90e8(0x220)]({'event':_0x2f90e8(0x22c),'key':_0x211938},_0x2f90e8(0x1f6)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x290620){return logger[_0x2f90e8(0x1fd)]({'event':_0x2f90e8(0x216),'error':_0x290620['message']},'READ\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x1ae196){const _0x3152fb=a0_0x292047,_0x4a33a4={'KSofF':'read','AGWgS':function(_0x10dcbd,_0xb71a41){return _0x10dcbd===_0xb71a41;},'VWVbH':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','acqwp':function(_0x1e1d2f,_0x23a8ee){return _0x1e1d2f===_0x23a8ee;},'CpXwX':_0x3152fb(0x1ec),'TCPkS':'WRITE\x20lock\x20acquired\x20(retry\x20mode)','Ajcgv':_0x3152fb(0x209),'DrEWl':function(_0x1a7ac3,_0x5796a1){return _0x1a7ac3*_0x5796a1;},'OWoJr':_0x3152fb(0x238),'wvEVT':_0x3152fb(0x1fc),'jfidb':'WRITE\x20lock\x20error'};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x147d9b=this[_0x3152fb(0x239)]({..._0x1ae196,'lockType':'write'}),_0x39b961=this[_0x3152fb(0x239)]({..._0x1ae196,'lockType':_0x4a33a4['KSofF']}),_0xa7e9f=this[_0x3152fb(0x22d)]();try{const _0x2e1e86=redisClient[_0x3152fb(0x222)]();if(_0x4a33a4['AGWgS'](this['strategy'],_0x3152fb(0x206))){const _0x1f9487=await _0x2e1e86['set'](_0x147d9b,_0xa7e9f,'EX',this[_0x3152fb(0x218)],'NX');if(_0x1f9487==='OK')return logger['debug']({'event':'write_lock_acquired','key':_0x147d9b,'value':_0xa7e9f,'strategy':'reject'},'WRITE\x20lock\x20acquired\x20(reject\x20mode)'),{'success':!![],'lockValue':_0xa7e9f,'lockKey':_0x147d9b};return logger[_0x3152fb(0x211)]({'event':'write_lock_rejected','key':_0x147d9b},_0x4a33a4['VWVbH']),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x10d44e=0x0;_0x10d44e<this['retryCount'];_0x10d44e++){const [_0x3f8276,_0x514a23]=await Promise[_0x3152fb(0x210)]([_0x2e1e86[_0x3152fb(0x201)](_0x39b961),_0x2e1e86[_0x3152fb(0x201)](_0x147d9b)]);if(!_0x514a23&&(!_0x3f8276||_0x4a33a4['acqwp'](parseInt(_0x3f8276),0x0))){const _0x279315=await _0x2e1e86[_0x3152fb(0x1ee)](_0x147d9b,_0xa7e9f,'EX',this[_0x3152fb(0x218)],'NX');if(_0x4a33a4['AGWgS'](_0x279315,'OK'))return logger['debug']({'event':_0x4a33a4['CpXwX'],'key':_0x147d9b,'value':_0xa7e9f,'strategy':'retry'},_0x4a33a4[_0x3152fb(0x20b)]),{'success':!![],'lockValue':_0xa7e9f,'lockKey':_0x147d9b};}logger['debug']({'event':_0x3152fb(0x1f1),'writeKey':_0x147d9b,'readCount':_0x3f8276,'attempt':_0x10d44e},_0x4a33a4[_0x3152fb(0x230)]),await this[_0x3152fb(0x22e)](_0x4a33a4['DrEWl'](this[_0x3152fb(0x223)],Math[_0x3152fb(0x1f5)](0x2,_0x10d44e)));}return logger['warn']({'event':'write_lock_timeout','key':_0x147d9b},_0x4a33a4[_0x3152fb(0x23d)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x3810b2){return logger[_0x3152fb(0x1fd)]({'event':_0x4a33a4[_0x3152fb(0x214)],'error':_0x3810b2[_0x3152fb(0x23a)]},_0x4a33a4[_0x3152fb(0x20a)]),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x292047(0x22b)](_0x60d950,_0x123a0b){const _0x589161=a0_0x292047,_0xc62a37={'aiGvL':'read_lock_released','MmIuT':'READ\x20lock\x20released','ggHsn':'write_lock_released','HQabG':'WRITE\x20lock\x20released','FFFyh':'lock_release_not_owner'};if(!this['enabled']||!_0x60d950)return!![];try{const _0x296f0d=redisClient['getClient']();if(_0x60d950[_0x589161(0x237)](_0x589161(0x20d))){await _0x296f0d['del'](_0x60d950);const _0x351209=_0x60d950[_0x589161(0x221)](0x0,_0x60d950[_0x589161(0x23c)](':')),_0x24afe3=await _0x296f0d['get'](_0x351209);return _0x24afe3&&parseInt(_0x24afe3)>0x0&&await _0x296f0d['decr'](_0x351209),logger['debug']({'event':_0xc62a37[_0x589161(0x205)],'key':_0x60d950},_0xc62a37[_0x589161(0x1ed)]),!![];}const _0x12c1a6='\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x200\x0a\x20\x20\x20\x20\x20\x20\x20\x20end\x0a\x20\x20\x20\x20\x20\x20',_0x4feb13=await _0x296f0d['eval'](_0x12c1a6,0x1,_0x60d950,_0x123a0b);if(_0x4feb13===0x1)return logger['debug']({'event':_0xc62a37[_0x589161(0x215)],'key':_0x60d950},_0xc62a37['HQabG']),!![];return logger['warn']({'event':_0xc62a37[_0x589161(0x226)],'key':_0x60d950},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0x318f26){return logger['error']({'event':'lock_release_error','key':_0x60d950,'error':_0x318f26[_0x589161(0x23a)]},'Lock\x20release\x20error'),![];}}async['extendLock'](_0x5e07c4,_0x475953,_0x469019=null){const _0x177abb=a0_0x292047,_0xf642c5={'gdevz':'lock_extended','rBvQV':'lock_extend_error','kNxzB':'Lock\x20extend\x20error'};if(!this['enabled']||!_0x5e07c4)return!![];try{const _0x13136e=redisClient['getClient'](),_0x48846f='\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',_0x337ecf=await _0x13136e['eval'](_0x48846f,0x1,_0x5e07c4,_0x475953,_0x469019||this['defaultTTL']);if(_0x337ecf===0x1)return logger['debug']({'event':_0xf642c5['gdevz'],'key':_0x5e07c4,'ttl':_0x469019||this[_0x177abb(0x218)]},'Lock\x20TTL\x20extended'),!![];return![];}catch(_0x507635){return logger[_0x177abb(0x1fd)]({'event':_0xf642c5['rBvQV'],'key':_0x5e07c4,'error':_0x507635['message']},_0xf642c5[_0x177abb(0x1ff)]),![];}}['isEnabled'](){const _0x1f7400=a0_0x292047;return this[_0x1f7400(0x200)];}['sleep'](_0x26db53){return new Promise(_0xe15dc0=>setTimeout(_0xe15dc0,_0x26db53));}async['getLockInfo'](_0x2c26c5){const _0x5c1a61=a0_0x292047,_0x261407={'nmREh':_0x5c1a61(0x217),'qZKWn':_0x5c1a61(0x227),'axfrm':function(_0x24fdea,_0x22ec04){return _0x24fdea||_0x22ec04;}};if(!this['enabled'])return{'enabled':![]};try{const _0x29a453=redisClient['getClient'](),_0x419872=this[_0x5c1a61(0x239)]({..._0x2c26c5,'lockType':_0x261407[_0x5c1a61(0x228)]}),_0x41fa54=this['buildLockKey']({..._0x2c26c5,'lockType':_0x261407['qZKWn']}),[_0x18811e,_0x1a422c]=await Promise['all']([_0x29a453[_0x5c1a61(0x201)](_0x419872),_0x29a453['get'](_0x41fa54)]);return{'enabled':!![],'writeLock':_0x261407['axfrm'](_0x18811e,null),'readCount':parseInt(_0x1a422c)||0x0,'writeKey':_0x419872,'readKey':_0x41fa54};}catch(_0x4828ba){return{'enabled':!![],'error':_0x4828ba['message']};}}}module[a0_0x292047(0x23e)]=new LockManager();
@@ -1 +1 @@
1
- const a0_0x9354c3=a0_0x2be2;function a0_0x152c(){const _0xc252a9=['q09ntuLu','Dw5Oyw5KBgvKuMvQzwn0Aw9U','C3rHCNrZv2L0Aa','zMLSzv9SB2DNAw5Nx2vUywjSzwq','rgvMyxvSDa','ChjVAMvJDa','EM1RwMq','Dw5JyxvNAhrfEgnLChrPB24','vvz4shu','w1jfrefdveveoNrVA2vUxq','C3rHDhvZ','BgvUz3rO','BwfW','BxmP','s3Deru4','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','y29UBMvJDgLVBG','AxntBg93','mJG1mdmYngDPDe1HDG','vfjbtLnbq1rjt05FqKvhsu4','r256uMK','AM9PBG','oI8V','DxnLCI1Hz2vUDa','tK9uiefdveLwrq','CgfKrw5K','tNz3DM0','y29Kzq','C3vIC3rYAw5N','ChDK','yMfZzvvYBa','y3jLzgL0x2nHCMq','BwvZC2fNzq','vNbPrKe','iokvKqRILzeGienVBMzPzYaGicaGidOG','D3jPDgu','ig9UihbVCNqG','C3rHy2S','yxbPx2TLEq','t3juA2W','uK9mtejbq0S','rxH2AfK','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','Dg9ju09tDhjPBMC','u1rbuLqGvfjbtLnbq1rjt04','ywnJzxnZx3rVA2vU','reiGuxvLCNK','z21NyLG','DhjPBq','Aw5MBW','nZu5ndK0nfDSs2rqyW','zxHPDa','te9hx0XfvKvm','Dg9vChbLCKnHC2u','te9hx1rpx0zjteu','AfnOCNK','sw50zxjUywWGC2vYDMvYigvYCM9Y','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','qKLRzNy','AxbPvwe','y3DK','tK9erv9ftLy','te9hx0rjuG','vxLNrfy','Ahj0Aw1L','Bwv0Ag9K','B3jPz2LUywXvCMW','zMXVB3i','DhLWzq','mtfqrhrfsgK','rermx0fmvevs','vfjbtLnbq1rjt05Fq09ntuLu','C29Tzq','zw5KCg9PBNrFCMvNAxn0zxjLza','txzZzg0','CMvZDgzVCMDL','ChjPDMf0zwTLEq','D2fYBG','zgvIDwC','C2vYDMLJzuLUzM8','u1LtoKHioK1noNnZ','CMHZtwK','icbvuKW6icaGia','rNz2CKi','CM93C0fMzMvJDgvK','EujIANG','w1jfrefdvevexq','nJe2odu1mgznvvjHyq','v05OuKO','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','Cg9ZDgDYzxnXBa','u1fmx0Xpr19qqvjbtvm','Ec1Yzxf1zxn0lwLK','Cgf0Aa','C3rKvgLTzuz1BMn0Aw9UCW','y1n2tKm','u1fmx0Xpr19ftKfcteve','r25YEum','swDXsxq','CgfZC3DK','yxbPs2v5','tKDHAvu','revmrvrf','Cg9YDa','quXurvi','y3jLzgvUDgLHBa','Eg5RELa','zgnmvNG','y3z2','CMvMCMvZAf90B2TLBG','zw52AxjVBM1LBNq','rfjpua','u1fmx0Xpr19tte9xx1riuKvtse9mra','zNjQuha','CMvTB3rLqwrKCMvZCW','zxjYB3iUBg9N','u2vYDMvYihn0yxj0Aw5NoIa','Bwf4','DxjS','B2jQzwn0','zgf0ywjHC2u','DxnLCG','y2HPBgq','su5trvju','vfzuseK','Dev3ru0','Ag9ZDa','CgLU','AxnbCNjHEq','vvbeqvrf','qNjWs1q','vfjbtLnbq1rjt05FuK9mtejbq0S','CMvWBgfJzq','rermx0nsrufurq','CgfZC3DVCMq','AgvHBhrOq2HLy2S','rxjYB3i','CMvWzwf0','wNP1y3m','DgvZDa','rKfuquW6ia','yxbWlMXVzW','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','icbjBMzVoIaGia','DM1IseG','y3jLyxrLv3jPDgvtDhjLyw0','zgf0ywjHC2vFy29UzMLN','w09lxsbqCM9Qzwn0igXVywrLzdOG','vMHJD2W','mti3odi4AuzPr1z2','qvbqx1zfuLnjt04','y2Lntuq','CMvZB2X2zq','D09RAvK','C2Poqxm','rermx0rst1a','zefQC3u','C3rHDhvZq29Kzq','Dw5RBM93BG','y29UzMLNrMLSzq','A2vJyLO','zxHPC3rZu3LUyW','tKjHrey','CgLK','ChjPDMf0zv9RzxK','zw52','A2v5CW','Ahr0Cf9LCNjVCG','u0vmrunu','tM9Kzs5QCW','zMf0ywW','BMfTzq','zgjFDhjHBNnHy3rPB24','ve9dCwi','iokvKqRILzeGifbYB2PLy3qGicaGidOG','wufhsMG','zxjYB3i','Aw5JBhvKzxm','v1r1rhi','Bwf0y2G','mZuWnZmYndbzzeHAqxK','yM9KEq','Dhj1zq','mJK3otuWoezbyKLWra','mJGWodG2nhjjELbkBa','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','lI9SB2DZlW','Exjlq3e','rMf1CfK','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','zMf0ywXFzxjYB3i','Dg9mB3DLCKnHC2u','B3rW','sKrwELa','sgHZDMO','D2fYBMLUzW','yxbPA2v5','A2TIBeC'];a0_0x152c=function(){return _0xc252a9;};return a0_0x152c();}(function(_0x35cae3,_0x4fc0b3){const _0x8b4a25=a0_0x2be2,_0x373e69=_0x35cae3();while(!![]){try{const _0x8ada53=parseInt(_0x8b4a25(0x1a2))/0x1*(parseInt(_0x8b4a25(0x1f2))/0x2)+parseInt(_0x8b4a25(0x14f))/0x3+parseInt(_0x8b4a25(0x16f))/0x4+parseInt(_0x8b4a25(0x1b4))/0x5+parseInt(_0x8b4a25(0x18f))/0x6+parseInt(_0x8b4a25(0x14e))/0x7+-parseInt(_0x8b4a25(0x14b))/0x8;if(_0x8ada53===_0x4fc0b3)break;else _0x373e69['push'](_0x373e69['shift']());}catch(_0x5853f7){_0x373e69['push'](_0x373e69['shift']());}}}(a0_0x152c,0xda012));const pino=require('pino'),fs=require('fs'),path=require(a0_0x9354c3(0x1ba));let logToFile=![],logDir='./logs',serviceName=a0_0x9354c3(0x1a8),sqlLogEnabled=![],sqlLogLevel=a0_0x9354c3(0x1ab),sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x2be2(_0x1b496e,_0x42a6f6){_0x1b496e=_0x1b496e-0x140;const _0x152c81=a0_0x152c();let _0x2be290=_0x152c81[_0x1b496e];if(a0_0x2be2['nUYdlr']===undefined){var _0x3f762a=function(_0xbb89a9){const _0x1e4087='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1dc44d='',_0x1973d6='';for(let _0x2a9185=0x0,_0x29dacc,_0x229f80,_0x90a2b7=0x0;_0x229f80=_0xbb89a9['charAt'](_0x90a2b7++);~_0x229f80&&(_0x29dacc=_0x2a9185%0x4?_0x29dacc*0x40+_0x229f80:_0x229f80,_0x2a9185++%0x4)?_0x1dc44d+=String['fromCharCode'](0xff&_0x29dacc>>(-0x2*_0x2a9185&0x6)):0x0){_0x229f80=_0x1e4087['indexOf'](_0x229f80);}for(let _0x3f151d=0x0,_0x3122d3=_0x1dc44d['length'];_0x3f151d<_0x3122d3;_0x3f151d++){_0x1973d6+='%'+('00'+_0x1dc44d['charCodeAt'](_0x3f151d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1973d6);};a0_0x2be2['qCUZjt']=_0x3f762a,a0_0x2be2['UDkdMb']={},a0_0x2be2['nUYdlr']=!![];}const _0x2905a9=_0x152c81[0x0],_0x53275f=_0x1b496e+_0x2905a9,_0x3ee529=a0_0x2be2['UDkdMb'][_0x53275f];return!_0x3ee529?(_0x2be290=a0_0x2be2['qCUZjt'](_0x2be290),a0_0x2be2['UDkdMb'][_0x53275f]=_0x2be290):_0x2be290=_0x3ee529,_0x2be290;}const prettyPrintOptions={'colorize':!![],'translateTime':a0_0x9354c3(0x1ad),'ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':a0_0x9354c3(0x187),'hideObject':!![]},isDevelopment=process['env'][a0_0x9354c3(0x19a)]!=='production',logLevel=process['env'][a0_0x9354c3(0x191)]||a0_0x9354c3(0x18e);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':a0_0x9354c3(0x1a8),'version':process[a0_0x9354c3(0x202)][a0_0x9354c3(0x1f3)]||'1.0.5','env':process['env']['NODE_ENV']||'development'},'timestamp':pino[a0_0x9354c3(0x1bb)]['isoTime'],'redact':{'paths':['req.headers.authorization',a0_0x9354c3(0x196),'password','token','apiKey','DB_PASSWORD','JWT_SECRET'],'censor':'[REDACTED]'},'serializers':{'req':_0x4a516e=>({'id':_0x4a516e['id'],'method':_0x4a516e[a0_0x9354c3(0x19e)],'url':_0x4a516e[a0_0x9354c3(0x1d3)],'path':_0x4a516e['path'],'remoteAddress':_0x4a516e['ip']||_0x4a516e['connection']?.['remoteAddress']}),'res':_0x47d105=>({'statusCode':_0x47d105[a0_0x9354c3(0x1fa)],'headers':_0x47d105['getHeaders']?.()}),'err':pino['stdSerializers']['err']}});function initFileLogging(){const _0x51ccc4=a0_0x9354c3,_0x58e228={'WTuDr':_0x51ccc4(0x14d),'xyOqb':'false','Mvsdm':function(_0x250423,_0x3dc646){return _0x250423(_0x3dc646);},'yERqa':'app.log','ciMMD':'info'};if(fileLoggingInitialized)return;logToFile=process[_0x51ccc4(0x202)][_0x51ccc4(0x193)]===_0x58e228[_0x51ccc4(0x149)];const _0x54ce37=process['env']['RESTFORGE_PROJECT_NAME']||'default';logDir=process[_0x51ccc4(0x202)][_0x51ccc4(0x19b)]||_0x51ccc4(0x151)+_0x54ce37,serviceName=process[_0x51ccc4(0x202)]['SERVICE_NAME']||'restforge',sqlLogEnabled=process['env'][_0x51ccc4(0x1bd)]===_0x51ccc4(0x14d),sqlLogLevel=process[_0x51ccc4(0x202)]['SQL_LOG_LEVEL']||_0x51ccc4(0x1ab),sqlLogParams=process[_0x51ccc4(0x202)][_0x51ccc4(0x1b8)]!==_0x58e228['xyOqb'],sqlLogSlowThreshold=_0x58e228[_0x51ccc4(0x1a7)](parseInt,process[_0x51ccc4(0x202)][_0x51ccc4(0x1cd)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x4ffe7d=path[_0x51ccc4(0x1f5)](process[_0x51ccc4(0x199)](),logDir);try{!fs[_0x51ccc4(0x1fe)](_0x4ffe7d)&&fs['mkdirSync'](_0x4ffe7d,{'recursive':!![]});}catch(_0x352f8b){console['error']('Failed\x20to\x20create\x20log\x20directory\x20'+_0x4ffe7d+':',_0x352f8b[_0x51ccc4(0x17d)]),fileLoggingInitialized=!![];return;}const _0x5b132d=path['join'](_0x4ffe7d,_0x51ccc4(0x1ea)),_0x19da3c=path[_0x51ccc4(0x172)](_0x4ffe7d,_0x51ccc4(0x1d0));try{appLogStream=fs['createWriteStream'](_0x5b132d,{'flags':'a'}),errorLogStream=fs[_0x51ccc4(0x1ee)](_0x19da3c,{'flags':'a'}),fileLoggingInitialized=!![];const _0x2ef217={'event':_0x51ccc4(0x160),'logDir':_0x4ffe7d,'files':[_0x58e228['yERqa'],_0x51ccc4(0x1d0)]},_0x56b1e9='File\x20logging\x20enabled:\x20'+_0x4ffe7d;logger['info'](_0x2ef217,_0x56b1e9),writeToFileLog({..._0x2ef217,'level':_0x58e228[_0x51ccc4(0x1f4)],'msg':_0x56b1e9,'time':new Date()['toISOString']()},_0x58e228[_0x51ccc4(0x1f4)]);}catch(_0x475e0e){console['error'](_0x51ccc4(0x1b6),_0x475e0e[_0x51ccc4(0x17d)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x1cc832,_0x233750){const _0x49c273=a0_0x9354c3,_0x45e70f={'WNhRJ':function(_0x422306,_0x270f90){return _0x422306||_0x270f90;},'kkblG':function(_0x50bd3e,_0x560133){return _0x50bd3e===_0x560133;},'uAdfk':'error','ExvhY':function(_0x4f57e4,_0xced6a7){return _0x4f57e4===_0xced6a7;}};if(_0x45e70f[_0x49c273(0x1b5)](!logToFile,!appLogStream))return;const _0x4ee4be={'service':serviceName,..._0x1cc832},_0x260cc5=JSON['stringify'](_0x4ee4be)+'\x0a';appLogStream['write'](_0x260cc5),(_0x45e70f[_0x49c273(0x15c)](_0x233750,_0x45e70f['uAdfk'])||_0x45e70f[_0x49c273(0x186)](_0x233750,'fatal'))&&(errorLogStream&&errorLogStream[_0x49c273(0x180)](_0x260cc5));}const createRequestLogger=(_0x104e24={})=>{const _0x4a6382=a0_0x9354c3;return logger[_0x4a6382(0x1d7)](_0x104e24);},logServerStart=_0x12e93f=>{const _0x355ff0=a0_0x9354c3,_0x49dd85={'Nvwvm':_0x355ff0(0x140),'qvrdD':'N/A','hShry':function(_0x2f074d,_0x3b8c6e){return _0x2f074d(_0x3b8c6e);},'tuoNl':_0x355ff0(0x161),'IgqIt':'server_starting','rhsMi':_0x355ff0(0x18e)},_0x12cca0='RESTFORGE\x20RUNTIME\x20SERVER',_0x4dfd1c=Math[_0x355ff0(0x1d2)](0x0,0x37-_0x12cca0[_0x355ff0(0x168)]),_0x51525b=Math[_0x355ff0(0x1a0)](_0x4dfd1c/0x2),_0x322492=_0x4dfd1c-_0x51525b,_0x421b2f='║'+'\x20'[_0x355ff0(0x1e6)](_0x51525b)+_0x12cca0+'\x20'['repeat'](_0x322492)+'║',_0xf44279=_0x355ff0(0x16c)+_0x421b2f+'\x0a╠═══════════════════════════════════════════════════════╣\x0a║\x20\x20Environment\x20:\x20'+(_0x12e93f[_0x355ff0(0x1cb)]||_0x49dd85[_0x355ff0(0x177)])[_0x355ff0(0x176)](0x26)+_0x355ff0(0x145)+(_0x12e93f['project']||_0x49dd85['qvrdD'])['padEnd'](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+_0x49dd85[_0x355ff0(0x194)](String,_0x12e93f[_0x355ff0(0x1c4)]||0xbb8)[_0x355ff0(0x176)](0x26)+_0x355ff0(0x17f)+(_0x12e93f[_0x355ff0(0x1fc)]||_0x49dd85['tuoNl'])[_0x355ff0(0x176)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x12e93f[_0x355ff0(0x1c1)]?'ACTIVE':_0x355ff0(0x175))['padEnd'](0x26)+_0x355ff0(0x150);console['log'](_0xf44279);const _0x47566b={'event':_0x49dd85[_0x355ff0(0x1bf)],'project':_0x12e93f['project'],'port':_0x12e93f[_0x355ff0(0x1c4)],'config':_0x12e93f[_0x355ff0(0x1fc)],'apiKeyEnabled':!!_0x12e93f[_0x355ff0(0x1c1)]};logger[_0x355ff0(0x18e)](_0x47566b),writeToFileLog({..._0x47566b,'level':_0x49dd85[_0x355ff0(0x1ae)],'msg':_0x355ff0(0x1d1)+_0x12e93f[_0x355ff0(0x162)]+_0x355ff0(0x181)+_0x12e93f['port'],'time':new Date()[_0x355ff0(0x188)]()},_0x355ff0(0x18e));},logServerReady=_0x5b7da9=>{const _0xec7f94=a0_0x9354c3,_0x3a70c1={'PpWQQ':'server_ready','Zzucs':_0xec7f94(0x18e)},_0x1518cf={'event':_0x3a70c1['PpWQQ'],'port':_0x5b7da9['port'],'module':_0x5b7da9['module'],'healthCheck':_0x5b7da9['healthCheck'],'serviceInfo':_0x5b7da9[_0xec7f94(0x1ac)],'baseUrl':_0x5b7da9[_0xec7f94(0x17b)]},_0x232eeb='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x5b7da9['port'];logger['info'](_0x1518cf,_0x232eeb),writeToFileLog({..._0x1518cf,'level':_0x3a70c1[_0xec7f94(0x1e7)],'msg':_0x232eeb,'time':new Date()[_0xec7f94(0x188)]()},_0x3a70c1['Zzucs']),_0x5b7da9[_0xec7f94(0x1e4)]&&logger['info']('\x20\x20Health:\x20'+_0x5b7da9['healthCheck']),_0x5b7da9[_0xec7f94(0x1ac)]&&logger['info'](_0xec7f94(0x1ec)+_0x5b7da9['serviceInfo']),_0x5b7da9[_0xec7f94(0x17b)]&&logger[_0xec7f94(0x18e)](_0xec7f94(0x1af)+_0x5b7da9[_0xec7f94(0x17b)]);},logProjectLoaded=(_0xca9aa6,_0x2295b5)=>{const _0xbaceb7=a0_0x9354c3,_0x3ceb5a={'EirSE':function(_0xf6650f,_0x2b111d,_0x2fd1b8){return _0xf6650f(_0x2b111d,_0x2fd1b8);},'JDVzP':_0xbaceb7(0x18e)},_0x553215={'event':'project_loaded','project':_0xca9aa6,'path':_0x2295b5},_0x825c2f=_0xbaceb7(0x1f0)+_0xca9aa6;logger['info'](_0x553215,_0x825c2f),_0x3ceb5a['EirSE'](writeToFileLog,{..._0x553215,'level':_0x3ceb5a[_0xbaceb7(0x158)],'msg':_0x825c2f,'time':new Date()[_0xbaceb7(0x188)]()},_0xbaceb7(0x18e));},logEndpointRegistered=(_0x17af01,_0x207afe)=>{const _0x24c226=a0_0x9354c3,_0x53850d={'gmgbX':_0x24c226(0x1ab)},_0x2735c8={'event':_0x24c226(0x1a6),'endpoint':_0x17af01,'route':_0x207afe},_0x56f705='\x20\x20→\x20'+_0x17af01+':\x20'+_0x207afe;logger['debug'](_0x2735c8,_0x56f705),writeToFileLog({..._0x2735c8,'level':_0x53850d[_0x24c226(0x18c)],'msg':_0x56f705,'time':new Date()[_0x24c226(0x188)]()},'debug');},logDatabaseConfig=_0x345f35=>{const _0x26a37d=a0_0x9354c3,_0x5162eb={'XipTd':_0x26a37d(0x1ef),'dAjsu':function(_0x6c95b9,_0x49e6c2,_0x45219c){return _0x6c95b9(_0x49e6c2,_0x45219c);},'TodAc':_0x26a37d(0x1ab)},_0x390935={'event':_0x5162eb['XipTd'],'host':_0x345f35[_0x26a37d(0x1db)],'port':_0x345f35['port'],'database':_0x345f35[_0x26a37d(0x1d5)],'type':_0x345f35[_0x26a37d(0x1a1)],'user':_0x345f35[_0x26a37d(0x1d6)]},_0x23b380='Database:\x20'+_0x345f35['type']+_0x26a37d(0x173)+_0x345f35[_0x26a37d(0x1db)]+':'+_0x345f35[_0x26a37d(0x1c4)]+'/'+_0x345f35['database'];logger[_0x26a37d(0x1ab)](_0x390935,_0x23b380),_0x5162eb[_0x26a37d(0x1f9)](writeToFileLog,{..._0x390935,'level':_0x5162eb['TodAc'],'msg':_0x23b380,'time':new Date()['toISOString']()},_0x5162eb['TodAc']);},logRequest=(_0x3c6286,_0x1ac407,_0x4ad5ab)=>{const _0x32d6d4=a0_0x9354c3,_0x2b708b={'BrpKT':'http_request','YBCGf':_0x32d6d4(0x18e),'lgQyi':function(_0x4475a4,_0x328f36){return _0x4475a4>=_0x328f36;},'ipiUa':_0x32d6d4(0x1aa),'OrTkl':function(_0x1c02e9,_0x1bcf42,_0x296bdb){return _0x1c02e9(_0x1bcf42,_0x296bdb);}},_0x52e2d8={'event':_0x2b708b[_0x32d6d4(0x1df)],'method':_0x3c6286['method'],'path':_0x3c6286[_0x32d6d4(0x1ba)],'statusCode':_0x1ac407[_0x32d6d4(0x1fa)],'durationMs':_0x4ad5ab,'ip':_0x3c6286['ip']},_0x1e8f44=_0x3c6286[_0x32d6d4(0x19e)]+'\x20'+_0x3c6286['path']+'\x20-\x20'+_0x1ac407[_0x32d6d4(0x1fa)]+'\x20('+_0x4ad5ab+'ms)';let _0x5b74c7=_0x2b708b['YBCGf'];if(_0x2b708b['lgQyi'](_0x1ac407['statusCode'],0x1f4))_0x5b74c7=_0x32d6d4(0x147),logger[_0x32d6d4(0x147)](_0x52e2d8,_0x1e8f44);else _0x1ac407['statusCode']>=0x190?(_0x5b74c7=_0x2b708b[_0x32d6d4(0x198)],logger['warn'](_0x52e2d8,_0x1e8f44)):logger['info'](_0x52e2d8,_0x1e8f44);_0x2b708b[_0x32d6d4(0x184)](writeToFileLog,{..._0x52e2d8,'level':_0x5b74c7,'msg':_0x1e8f44,'time':new Date()[_0x32d6d4(0x188)]()},_0x5b74c7);},SENSITIVE_PARAM_PATTERNS=[a0_0x9354c3(0x1e3),'passwd',a0_0x9354c3(0x17a),'token',a0_0x9354c3(0x18a),'refresh_token','secret','api_secret','apikey',a0_0x9354c3(0x183),a0_0x9354c3(0x1c6),'credentials',a0_0x9354c3(0x1dc),a0_0x9354c3(0x157),'private_key',a0_0x9354c3(0x1a9)],redactSensitiveParams=(_0x426a82,_0x48a89f)=>{const _0x428554=a0_0x9354c3,_0x36e3b9={'Vhcwl':_0x428554(0x1b3),'wOkiY':function(_0x1ea7e3,_0x3a27e2){return _0x1ea7e3===_0x3a27e2;},'jLnYM':'string'};if(!_0x426a82||_0x426a82['length']===0x0)return _0x426a82;const _0x5b7377=_0x48a89f['toLowerCase'](),_0x1e2c38=_0x5b7377['match'](/\(([^)]+)\)\s*values/i);let _0x293733=[];_0x1e2c38&&(_0x293733=_0x1e2c38[0x1]['split'](',')['map'](_0x54fd7d=>_0x54fd7d[_0x428554(0x18d)]()[_0x428554(0x156)]()));const _0x31a71=_0x5b7377['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x31a71){const _0x1b896d=_0x31a71[0x1],_0x5d959e=_0x1b896d['match'](/(\w+)\s*=/g);_0x5d959e&&(_0x293733=_0x5d959e[_0x428554(0x169)](_0x58a38b=>_0x58a38b[_0x428554(0x1e1)](/\s*=/,'')['trim']()[_0x428554(0x156)]()));}return _0x426a82[_0x428554(0x169)]((_0x1ec515,_0x1f8eee)=>{const _0x4d2840=_0x428554;if(_0x293733[_0x1f8eee]){const _0x533a7b=_0x293733[_0x1f8eee],_0x332d62=SENSITIVE_PARAM_PATTERNS['some'](_0x2568ce=>_0x533a7b[_0x4d2840(0x148)](_0x2568ce));if(_0x332d62)return _0x36e3b9[_0x4d2840(0x1f1)];}if(_0x36e3b9[_0x4d2840(0x1f6)](typeof _0x1ec515,_0x36e3b9['jLnYM'])&&_0x1ec515['length']>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x1ec515)&&_0x1ec515['includes']('.'))return _0x4d2840(0x166);if(/^[a-fA-F0-9]{32,}$/[_0x4d2840(0x1e8)](_0x1ec515))return'[REDACTED:hash]';}return _0x1ec515;});},parseQueryMetadata=_0x1af3e8=>{const _0x5cf77c=a0_0x9354c3,_0x184af6={'KwDEN':_0x5cf77c(0x205),'fCVlT':_0x5cf77c(0x1c3),'GnzRi':_0x5cf77c(0x15d),'bAFsK':_0x5cf77c(0x185),'CRrIB':_0x5cf77c(0x1a3),'tEwEM':_0x5cf77c(0x1f8)},_0x440b20=_0x1af3e8['trim'](),_0x360a03=_0x440b20['toUpperCase']();let _0x4c8490='UNKNOWN',_0x4c3fb6=null;if(_0x360a03[_0x5cf77c(0x15f)](_0x184af6['KwDEN'])){_0x4c8490=_0x184af6[_0x5cf77c(0x16b)];const _0x5dda75=_0x440b20[_0x5cf77c(0x14a)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4c3fb6=_0x5dda75?_0x5dda75[0x1]:null;}else{if(_0x360a03[_0x5cf77c(0x15f)](_0x5cf77c(0x1d8))){_0x4c8490='INSERT';const _0x23695f=_0x440b20[_0x5cf77c(0x14a)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4c3fb6=_0x23695f?_0x23695f[0x1]:null;}else{if(_0x360a03[_0x5cf77c(0x15f)]('UPDATE')){_0x4c8490=_0x5cf77c(0x1de);const _0x18545e=_0x440b20['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4c3fb6=_0x18545e?_0x18545e[0x1]:null;}else{if(_0x360a03['startsWith'](_0x5cf77c(0x1c3))){_0x4c8490=_0x184af6['fCVlT'];const _0x537d8f=_0x440b20['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x4c3fb6=_0x537d8f?_0x537d8f[0x1]:null;}else{if(_0x360a03['startsWith']('BEGIN')||_0x360a03[_0x5cf77c(0x15f)](_0x5cf77c(0x189)))_0x4c8490=_0x5cf77c(0x170);else{if(_0x360a03[_0x5cf77c(0x15f)](_0x184af6[_0x5cf77c(0x171)]))_0x4c8490=_0x5cf77c(0x1a4);else{if(_0x360a03['startsWith'](_0x184af6['bAFsK']))_0x4c8490=_0x5cf77c(0x1e0);else{if(_0x360a03['startsWith']('CREATE'))_0x4c8490=_0x5cf77c(0x1e2);else{if(_0x360a03[_0x5cf77c(0x15f)](_0x5cf77c(0x1c5)))_0x4c8490=_0x184af6['CRrIB'];else _0x360a03['startsWith'](_0x5cf77c(0x1cc))&&(_0x4c8490=_0x184af6[_0x5cf77c(0x1da)]);}}}}}}}}return{'type':_0x4c8490,'table':_0x4c3fb6};},startQueryTimer=()=>{const _0x4fbfe0={'UXStF':function(_0x15028c,_0x3200b3){return _0x15028c(_0x3200b3);},'mxwNK':function(_0x162d5f,_0x4f09a7){return _0x162d5f+_0x4f09a7;},'TbUxU':function(_0x4aceb5,_0x1eac92){return _0x4aceb5*_0x1eac92;}},_0xb2ba63=process['hrtime']();return()=>{const _0x475f7d=a0_0x2be2,[_0x34d696,_0x213cb5]=process[_0x475f7d(0x19d)](_0xb2ba63);return _0x4fbfe0['UXStF'](parseFloat,_0x4fbfe0['mxwNK'](_0x4fbfe0['TbUxU'](_0x34d696,0x3e8),_0x213cb5/0xf4240)['toFixed'](0x2));};},logQuery=(_0x25efea,_0x2e772e=[],_0x4f296f={})=>{const _0x5d2f77=a0_0x9354c3,_0x226ac8={'FvvrB':'db_query','kecbZ':_0x5d2f77(0x18b),'DWGrN':function(_0x31c110,_0x393b4a){return _0x31c110>_0x393b4a;},'zmkZd':function(_0xb115e1,_0xed9e4d){return _0xb115e1!==_0xed9e4d;},'dkMkd':function(_0x2cc57e,_0x10193b){return _0x2cc57e||_0x10193b;},'nAiNC':_0x5d2f77(0x1fb),'iXGkz':function(_0xc4cf90,_0x1f1597){return _0xc4cf90!==_0x1f1597;},'UVxHu':'\x20[SLOW]','fmCuM':'warn','VpiFA':_0x5d2f77(0x18e)};if(!sqlLogEnabled){logger[_0x5d2f77(0x1ab)]({'event':_0x226ac8[_0x5d2f77(0x1b0)],'query':_0x25efea[_0x5d2f77(0x179)](0x0,0xc8),'paramCount':_0x2e772e[_0x5d2f77(0x168)]},_0x226ac8[_0x5d2f77(0x1fd)]);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x5d2f77(0x1b7)}=_0x4f296f,{type:_0x57e84b,table:_0x32f8fb}=parseQueryMetadata(_0x25efea),_0x2650ea={'event':'sql_query','queryType':_0x57e84b,'table':_0x32f8fb,'query':_0x25efea,'paramCount':_0x2e772e['length'],'dbType':dbType};sqlLogParams&&_0x226ac8['DWGrN'](_0x2e772e[_0x5d2f77(0x168)],0x0)&&(_0x2650ea['params']=redactSensitiveParams(_0x2e772e,_0x25efea));_0x226ac8[_0x5d2f77(0x163)](duration,null)&&(_0x2650ea['durationMs']=duration,_0x2650ea[_0x5d2f77(0x16e)]=_0x226ac8['DWGrN'](duration,sqlLogSlowThreshold));_0x226ac8[_0x5d2f77(0x163)](rowsAffected,null)&&(_0x2650ea[_0x5d2f77(0x1b1)]=rowsAffected);const _0x8dee8c=_0x226ac8['dkMkd'](_0x32f8fb,_0x226ac8['nAiNC']);let _0x383880='['+_0x57e84b+']\x20'+_0x8dee8c;duration!==null&&(_0x383880+='\x20('+duration+_0x5d2f77(0x16a));const _0x3420dc=_0x226ac8['iXGkz'](duration,null)&&duration>sqlLogSlowThreshold;let _0x287b0f='debug';if(_0x3420dc)_0x383880+=_0x226ac8[_0x5d2f77(0x165)],_0x287b0f=_0x226ac8['fmCuM'],logger['warn'](_0x2650ea,_0x383880);else sqlLogLevel===_0x226ac8['VpiFA']?(_0x287b0f=_0x226ac8[_0x5d2f77(0x17e)],logger[_0x5d2f77(0x18e)](_0x2650ea,_0x383880)):logger[_0x5d2f77(0x1ab)](_0x2650ea,_0x383880);writeToFileLog({..._0x2650ea,'level':_0x287b0f,'msg':_0x383880,'time':new Date()['toISOString']()},_0x287b0f);},logTransaction=(_0x4f326f,_0x89d63d)=>{const _0xaf6270=a0_0x9354c3,_0x161694={'TVTHI':function(_0x7e42f1,_0x450e3b,_0x509d99){return _0x7e42f1(_0x450e3b,_0x509d99);},'LAXaq':_0xaf6270(0x1ab)},_0x970380={'event':_0xaf6270(0x143),'status':_0x4f326f,'queryCount':_0x89d63d},_0x2a96a7='Transaction\x20'+_0x4f326f;logger['debug'](_0x970380,_0x2a96a7),_0x161694[_0xaf6270(0x1d9)](writeToFileLog,{..._0x970380,'level':'debug','msg':_0x2a96a7,'time':new Date()[_0xaf6270(0x188)]()},_0x161694['LAXaq']);},redactObject=_0x1d0180=>{const _0x1bb9f5=a0_0x9354c3,_0x9e9fdb={'GnryC':function(_0x3864ca,_0x15f5d2){return _0x3864ca!==_0x15f5d2;},'yBbjx':_0x1bb9f5(0x1d4),'TOCqb':_0x1bb9f5(0x1e3),'JGLqP':_0x1bb9f5(0x1c0),'Tmvqn':'secret','SPFaK':_0x1bb9f5(0x183),'iwChp':'authorization','ZqWPb':'creditcard','sCSHa':_0x1bb9f5(0x17c),'Hhsvj':'pin','HnzgG':'privatekey','BIkfv':'access_token','Rljcl':function(_0x585f38,_0x1fef35){return _0x585f38===_0x1fef35;}};if(!_0x1d0180||_0x9e9fdb['GnryC'](typeof _0x1d0180,_0x9e9fdb[_0x1bb9f5(0x1b2)]))return _0x1d0180;const _0x4b101a=[_0x9e9fdb[_0x1bb9f5(0x144)],_0x9e9fdb['JGLqP'],'pwd','token',_0x9e9fdb['Tmvqn'],_0x1bb9f5(0x15b),_0x9e9fdb['SPFaK'],_0x9e9fdb['iwChp'],_0x9e9fdb['ZqWPb'],_0x9e9fdb['sCSHa'],_0x1bb9f5(0x1c9),'ssn',_0x9e9fdb[_0x1bb9f5(0x159)],_0x1bb9f5(0x201),_0x9e9fdb['HnzgG'],_0x1bb9f5(0x1ca),_0x9e9fdb[_0x1bb9f5(0x197)]],_0x315b5c=Array[_0x1bb9f5(0x1dd)](_0x1d0180)?[..._0x1d0180]:{..._0x1d0180};for(const _0x17e347 of Object[_0x1bb9f5(0x203)](_0x315b5c)){const _0x5d6deb=_0x17e347['toLowerCase']();if(_0x4b101a[_0x1bb9f5(0x1a5)](_0x3ef360=>_0x5d6deb['includes'](_0x3ef360)))_0x315b5c[_0x17e347]='[REDACTED]';else _0x9e9fdb['Rljcl'](typeof _0x315b5c[_0x17e347],'object')&&_0x9e9fdb[_0x1bb9f5(0x1be)](_0x315b5c[_0x17e347],null)&&(_0x315b5c[_0x17e347]=redactObject(_0x315b5c[_0x17e347]));}return _0x315b5c;},logError=(_0x1ae71e,_0x4c0c1b={},_0x580c10=null)=>{const _0x1959d2=a0_0x9354c3,_0x3486a6={'UygDV':'Error','RhaVG':_0x1959d2(0x147)},_0x37e04e={'event':_0x1959d2(0x147),'errorName':_0x1ae71e[_0x1959d2(0x142)]||_0x3486a6[_0x1959d2(0x19c)],'errorMessage':_0x1ae71e['message'],'errorCode':_0x1ae71e['code']||null,'stack':_0x1ae71e[_0x1959d2(0x182)],..._0x4c0c1b},_0xc4142e=_0x580c10||'Error:\x20'+_0x1ae71e['message'];logger[_0x1959d2(0x147)](_0x37e04e,_0xc4142e),writeToFileLog({..._0x37e04e,'level':_0x3486a6['RhaVG'],'msg':_0xc4142e,'time':new Date()['toISOString']()},_0x1959d2(0x147));},logFatalError=(_0x333be7,_0x448ab8={},_0xcb6169=null)=>{const _0x5363c4=a0_0x9354c3,_0x184d02={'tzfNi':'Error','Vmuzs':'CRITICAL','RPFFB':_0x5363c4(0x141)},_0x561b8a={'event':_0x5363c4(0x155),'errorName':_0x333be7['name']||_0x184d02['tzfNi'],'errorMessage':_0x333be7[_0x5363c4(0x17d)],'errorCode':_0x333be7[_0x5363c4(0x178)]||null,'stack':_0x333be7[_0x5363c4(0x182)],'severity':_0x184d02['Vmuzs'],..._0x448ab8},_0x14570a=_0xcb6169||_0x5363c4(0x1e9)+_0x333be7['message'];logger[_0x5363c4(0x141)](_0x561b8a,_0x14570a),writeToFileLog({..._0x561b8a,'level':_0x184d02['RPFFB'],'msg':_0x14570a,'time':new Date()['toISOString']()},_0x5363c4(0x147));},logHttpError=(_0x55cb0e,_0x3b4167,_0x27fd72={})=>{const _0x359fb6=a0_0x9354c3,_0x3d0ecd={'FaupY':_0x359fb6(0x204),'zAnOn':_0x359fb6(0x1e5),'ytPUk':_0x359fb6(0x174),'beLNq':function(_0x4c820e,_0x54d452){return _0x4c820e(_0x54d452);},'pVkCS':function(_0x58b051,_0x510b03,_0x3e5fb3){return _0x58b051(_0x510b03,_0x3e5fb3);},'cSvNC':_0x359fb6(0x147),'xnkzP':_0x359fb6(0x1aa),'sjNAs':function(_0x1944df,_0x47097c){return _0x1944df>=_0x47097c;}},_0x3ebef3={'event':_0x3d0ecd[_0x359fb6(0x153)],'errorName':_0x55cb0e['name']||_0x3d0ecd['zAnOn'],'errorMessage':_0x55cb0e['message'],'errorCode':_0x55cb0e[_0x359fb6(0x178)]||_0x55cb0e[_0x359fb6(0x1fa)]||0x1f4,'stack':_0x55cb0e['stack'],'method':_0x3b4167?.[_0x359fb6(0x19e)],'url':_0x3b4167?.['url']||_0x3b4167?.[_0x359fb6(0x19f)],'path':_0x3b4167?.[_0x359fb6(0x1ba)],'ip':_0x3b4167?.['ip']||_0x3b4167?.[_0x359fb6(0x16d)]?.[_0x359fb6(0x1cf)],'userAgent':_0x3b4167?.['get']?.(_0x3d0ecd['ytPUk']),'requestId':_0x3b4167?.['id']||_0x3b4167?.['headers']?.[_0x359fb6(0x1b9)],'body':_0x3b4167?.[_0x359fb6(0x14c)]?_0x3d0ecd['beLNq'](redactObject,_0x3b4167['body']):undefined,'query':_0x3b4167?.['query'],..._0x27fd72},_0x11707f=_0x55cb0e['statusCode']||_0x55cb0e['status']||0x1f4,_0x22e3ab='HTTP\x20'+_0x11707f+':\x20'+_0x55cb0e[_0x359fb6(0x17d)];_0x11707f>=0x1f4?logger[_0x359fb6(0x147)](_0x3ebef3,_0x22e3ab):logger['warn'](_0x3ebef3,_0x22e3ab),_0x3d0ecd['pVkCS'](writeToFileLog,{..._0x3ebef3,'level':_0x11707f>=0x1f4?_0x3d0ecd[_0x359fb6(0x1bc)]:_0x3d0ecd[_0x359fb6(0x1c7)],'msg':_0x22e3ab,'time':new Date()[_0x359fb6(0x188)]()},_0x3d0ecd[_0x359fb6(0x1f7)](_0x11707f,0x1f4)?_0x359fb6(0x147):'warn');},logUncaughtError=(_0x2d8a6d,_0x77306f)=>{const _0xed55c2=a0_0x9354c3,_0x192240={'dcLVx':function(_0x55cdbd,_0x31f89e){return _0x55cdbd(_0x31f89e);},'vmbHH':_0xed55c2(0x141)},_0x42e7ab={'event':_0x2d8a6d,'errorName':_0x77306f?.[_0xed55c2(0x142)]||_0xed55c2(0x1e5),'errorMessage':_0x77306f?.['message']||_0x192240[_0xed55c2(0x1c8)](String,_0x77306f),'errorCode':_0x77306f?.[_0xed55c2(0x178)]||null,'stack':_0x77306f?.['stack'],'severity':'CRITICAL','processId':process[_0xed55c2(0x200)],'memoryUsage':process['memoryUsage'](),'uptime':process['uptime']()},_0x5a52c4='['+_0x2d8a6d[_0xed55c2(0x192)]()+']\x20'+(_0x77306f?.[_0xed55c2(0x17d)]||_0x77306f);logger['fatal'](_0x42e7ab,_0x5a52c4),writeToFileLog({..._0x42e7ab,'level':_0x192240[_0xed55c2(0x1ed)],'msg':_0x5a52c4,'time':new Date()[_0xed55c2(0x188)]()},'error');},setupGlobalErrorHandlers=()=>{const _0x7743c8=a0_0x9354c3,_0x5631eb={'NBaDF':function(_0xc600b9,_0xad1611,_0x13bfdd){return _0xc600b9(_0xad1611,_0x13bfdd);},'YAGJh':_0x7743c8(0x164),'CGYSs':function(_0x5c0abb,_0x4be17c){return _0x5c0abb instanceof _0x4be17c;},'ULvsQ':function(_0x53d33d,_0x775a26){return _0x53d33d(_0x775a26);},'frjPp':'process_warning','jawgl':_0x7743c8(0x15a),'yrKCq':_0x7743c8(0x1eb),'NGaiU':_0x7743c8(0x18e)};process['on'](_0x5631eb['YAGJh'],_0x29afdc=>{const _0x2fd698=_0x7743c8;_0x5631eb[_0x2fd698(0x1ff)](logUncaughtError,_0x5631eb[_0x2fd698(0x146)],_0x29afdc),setTimeout(()=>{const _0x3c83f8=_0x2fd698;process[_0x3c83f8(0x190)](0x1);},0x3e8);}),process['on'](_0x7743c8(0x15e),(_0x1e3480,_0x36de42)=>{const _0x2aad92=_0x7743c8,_0x47e703=_0x5631eb['CGYSs'](_0x1e3480,Error)?_0x1e3480:new Error(_0x5631eb['ULvsQ'](String,_0x1e3480));logUncaughtError(_0x2aad92(0x15e),_0x47e703);}),process['on'](_0x5631eb['jawgl'],_0x40f523=>{const _0xb76396=_0x7743c8;logger['warn']({'event':_0x5631eb[_0xb76396(0x1ce)],'name':_0x40f523['name'],'message':_0x40f523[_0xb76396(0x17d)],'stack':_0x40f523[_0xb76396(0x182)]},'Process\x20Warning:\x20'+_0x40f523['message']);});const _0x419767={'event':_0x7743c8(0x154)},_0x5aab8d=_0x5631eb[_0x7743c8(0x152)];logger['info'](_0x419767,_0x5aab8d),_0x5631eb[_0x7743c8(0x1ff)](writeToFileLog,{..._0x419767,'level':_0x5631eb[_0x7743c8(0x1c2)],'msg':_0x5aab8d,'time':new Date()['toISOString']()},'info');},createErrorHandlerMiddleware=()=>{const _0x8e0c97=a0_0x9354c3,_0x390434={'KcfDh':_0x8e0c97(0x195),'JukHl':'x-request-id'};return(_0x2cfdd1,_0x2eb923,_0x3115de,_0x497ef0)=>{const _0x39e16e=_0x8e0c97;logHttpError(_0x2cfdd1,_0x2eb923);const _0x34df42=_0x2cfdd1['statusCode']||_0x2cfdd1['status']||0x1f4;_0x3115de[_0x39e16e(0x167)](_0x34df42)['json']({'success':![],'error':_0x34df42>=0x1f4?_0x390434['KcfDh']:_0x2cfdd1[_0x39e16e(0x17d)],'requestId':_0x2eb923['id']||_0x2eb923['headers']?.[_0x390434['JukHl']]||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
+ const a0_0x3698b4=a0_0x15d9;(function(_0x5de069,_0x274842){const _0x393e7e=a0_0x15d9,_0x4d4965=_0x5de069();while(!![]){try{const _0x4f3a26=-parseInt(_0x393e7e(0x241))/0x1+parseInt(_0x393e7e(0x1a9))/0x2*(-parseInt(_0x393e7e(0x1ee))/0x3)+-parseInt(_0x393e7e(0x1b3))/0x4*(parseInt(_0x393e7e(0x24c))/0x5)+parseInt(_0x393e7e(0x1ce))/0x6+-parseInt(_0x393e7e(0x223))/0x7*(parseInt(_0x393e7e(0x1c1))/0x8)+parseInt(_0x393e7e(0x22b))/0x9*(parseInt(_0x393e7e(0x1b7))/0xa)+parseInt(_0x393e7e(0x1c3))/0xb*(parseInt(_0x393e7e(0x237))/0xc);if(_0x4f3a26===_0x274842)break;else _0x4d4965['push'](_0x4d4965['shift']());}catch(_0x2f4948){_0x4d4965['push'](_0x4d4965['shift']());}}}(a0_0x5372,0x5a9c3));const pino=require(a0_0x3698b4(0x190)),fs=require('fs'),path=require('path');let logToFile=![],logDir=a0_0x3698b4(0x1af),serviceName=a0_0x3698b4(0x242),sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x5372(){const _0x2e8e7a=['D3jPDgu','mtCXnNHOzvbAwq','A3LHu24','v05JwLe','zxjYB3i','uMPutKm','w1jfrefdveveoMHHC2HD','icbizwfSDgG6ia','u29VrLO','te9hx0rjuG','su5trvju','zMf0ywW','mZy1ode1ogjRsLDLDW','s3fcA3u','y2HPBgq','zw52','s092DMC','BhDnywO','ic0G','C3rKvgLTzuz1BMn0Aw9UCW','sLDux1nfq1jfva','C2vYDMLJzuLUzM8','C3rHDhvZ','BwvTB3j5vxnHz2u','BgrlyKq','EKPltu8','B1bpzue','zMLSzv9SB2DNAw5Nx2vUywjSzwq','rermx0rst1a','DejTD3C','DxjS','y3jLyxrLv3jPDgvtDhjLyw0','C3rHDhvZq29Kzq','AM9PBG','qwDPExe','A2vvyLK','C3rHCNrZv2L0Aa','q1jjveLdquW','u2vYDMvYihn0yxj0Aw5NoIa','yK5Msem','u1fmx0Xpr19mrvzfta','zgjFDhjHBNnHy3rPB24','lI9SB2DZlW','ChPmuhK','mtvRz0XfywS','ANnVBG','B3jPz2LUywXvCMW','te9hx0XfvKvm','icbvuKW6icaGia','CgfZC3DVCMq','CxvLCNK','u1fmx0Xpr19qqvjbtvm','yMfZzvvYBa','vfjbtLnbq1rjt05Fq09ntuLu','AgvHBhrOq2HLy2S','qKvhsu4','C0LAzhG','yxbPx2TLEq','DhLtAvu','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','Dw54rgi','ChjPDMf0zv9RzxK','zMf0ywXFzxjYB3i','z2v0sgvHzgvYCW','zgvIDwC','Cgf0Aa','EgDOvM8','CM93C0fMzMvJDgvK','ChjPDMf0zwTLEq','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','ChjVAMvJDa','iokvKqRILzeGifbVCNqGicaGicaGidOG','oI8V','Cg9YDa','D2fYBMLUzW','zgvMyxvSDa','ms4WlJu','Bwf0y2G','Dg9ju09tDhjPBMC','qunusvzf','qLHWvxi','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','u0vsvKLdrv9oqu1f','CgfKrw5K','Dg9gAxHLza','zgf0ywjHC2u','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','Dg9vChbLCKnHC2u','revmrvrf','ChDK','Ahj0Aw1L','q1fNyxG','Ahr0Cf9Yzxf1zxn0','zxjY','BxmP','DhjPBq','rfD4CxG','mJfythbHDNq','uK9mtejbq0S','vfjbtLnbq1rjt05FuK9mtejbq0S','sfbdtuG','rgvMyxvSDa','v3f6Bu4','y1vTwMS','Dxb0Aw1L','oty2mde1se1lrhbA','Dg9Rzw4','BwvZC2fNzq','Dg9mB3DLCKnHC2u','B2jQzwn0','CwTXwM8','CgLU','Dhj1zq','tLnTyue','tI9b','y3jLzgvUDgLHBa','tK9erv9ftLy','ndm4mJrHA2fRsMq','rxjYB3i','rKDJCg4','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','qMnWruG','w1jfrefdveveoNrVA2vUxq','C2vYDMvYx3n0yxj0Aw5N','E21Zz30','DKr4D3e','BgvUz3rO','mtiWntDMz0TiB1C','CMvZDgzVCMDL','AxntBg93','BwfW','BwTKAxjtEw5J','w1jfrefdvevexq','Ag9ZDa','Ec1Yzxf1zxn0lwLK','ywnJzxnZx3rVA2vU','y3z2','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mtC1ndi1ExHpzefq','yxbWlMXVzW','C3bSAxq','C3rHy2S','CgLUBW','zLHWyMO','vKTKwfe','DhLWzq','y3jLzgL0y2fYza','zxjYB3iUBg9N','ig9UihbVCNqG','rePIBfa','Dw5Oyw5KBgvKuMvQzwn0Aw9U','q09ntuLu','u1fmx0Xpr19ftKfcteve','AMnwsuC','wKXRyNG','y3jLzgL0x2nHCMq','BwDozNC','Dw5JyxvNAhrfEgnLChrPB24','Aw5JBhvKzxm','yxbPs2v5','zgjFCxvLCNK','zMXVB3i','C3nU','sw50zxjUywWGC2vYDMvYigvYCM9Y','BMfTzq','tvvoCve','zKvuAfm','mtyZmZK4v29Zs09y','uhfttLa','vfjbtLnbq1rjt05FqKvhsu4','A2L0rxy','veXjAhC','y29UzMLNrMLSzq','lI9SB2DZ','tK9uiefdveLwrq','zg1tyM4','ChjVzhvJDgLVBG','ohzcsufwuW','D05jwM0','wMnTwKm','AwjZDMe','mZbct1jqDwC','B2rLBgq','CMvWzwf0','u0vmrunu','Aw5MBW','D2fYBG','r21dyLi','Bwv0Ag9K','CMvZB2X2zq','C2vJCMv0','mtCWntq2ng5NDLb2Ba'];a0_0x5372=function(){return _0x2e8e7a;};return a0_0x5372();}const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':a0_0x3698b4(0x23e),'customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process[a0_0x3698b4(0x1d1)]['NODE_ENV']!==a0_0x3698b4(0x1b2),logLevel=process[a0_0x3698b4(0x1d1)][a0_0x3698b4(0x1f1)]||'info';let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process['env']['APP_VERSION']||a0_0x3698b4(0x20e),'env':process[a0_0x3698b4(0x1d1)][a0_0x3698b4(0x236)]||'development'},'timestamp':pino[a0_0x3698b4(0x1d5)]['isoTime'],'redact':{'paths':['req.headers.authorization','req.headers[\x22x-api-key\x22]',a0_0x3698b4(0x1f3),'token',a0_0x3698b4(0x1a1),'DB_PASSWORD',a0_0x3698b4(0x1d6)],'censor':a0_0x3698b4(0x246)},'serializers':{'req':_0x2abb26=>({'id':_0x2abb26['id'],'method':_0x2abb26[a0_0x3698b4(0x1be)],'url':_0x2abb26[a0_0x3698b4(0x1e0)],'path':_0x2abb26['path'],'remoteAddress':_0x2abb26['ip']||_0x2abb26['connection']?.['remoteAddress']}),'res':_0x24b2d4=>({'statusCode':_0x24b2d4['statusCode'],'headers':_0x24b2d4[a0_0x3698b4(0x201)]?.()}),'err':pino['stdSerializers'][a0_0x3698b4(0x21f)]}});function initFileLogging(){const _0x5d32a8=a0_0x3698b4,_0x3e6f11={'kitEv':_0x5d32a8(0x232),'DJblP':function(_0x302e8e,_0x2712a1){return _0x302e8e===_0x2712a1;},'CQgax':function(_0x5848f2,_0x270723){return _0x5848f2!==_0x270723;},'jcVIG':'false','fEThS':_0x5d32a8(0x24d),'mgNfw':_0x5d32a8(0x195),'WqzmN':_0x5d32a8(0x1bb)};if(fileLoggingInitialized)return;logToFile=process[_0x5d32a8(0x1d1)]['LOG_TO_FILE']===_0x3e6f11[_0x5d32a8(0x1ac)];const _0x3ba965=process['env'][_0x5d32a8(0x24b)]||_0x5d32a8(0x20d);logDir=process[_0x5d32a8(0x1d1)][_0x5d32a8(0x1cb)]||_0x5d32a8(0x1ec)+_0x3ba965,serviceName=process['env'][_0x5d32a8(0x214)]||'restforge',sqlLogEnabled=_0x3e6f11[_0x5d32a8(0x197)](process['env'][_0x5d32a8(0x19a)],'true'),sqlLogLevel=process['env'][_0x5d32a8(0x1ea)]||'debug',sqlLogParams=_0x3e6f11[_0x5d32a8(0x21d)](process['env'][_0x5d32a8(0x1f5)],_0x3e6f11[_0x5d32a8(0x19b)]),sqlLogSlowThreshold=parseInt(process[_0x5d32a8(0x1d1)]['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x1829bf=path[_0x5d32a8(0x1bf)](process['cwd'](),logDir);try{!fs['existsSync'](_0x1829bf)&&fs[_0x5d32a8(0x245)](_0x1829bf,{'recursive':!![]});}catch(_0x2df67c){console['error']('Failed\x20to\x20create\x20log\x20directory\x20'+_0x1829bf+':',_0x2df67c['message']),fileLoggingInitialized=!![];return;}const _0x426b14=path['join'](_0x1829bf,_0x3e6f11[_0x5d32a8(0x1a8)]),_0xa516b5=path[_0x5d32a8(0x1e3)](_0x1829bf,_0x3e6f11['mgNfw']);try{appLogStream=fs['createWriteStream'](_0x426b14,{'flags':'a'}),errorLogStream=fs[_0x5d32a8(0x1e1)](_0xa516b5,{'flags':'a'}),fileLoggingInitialized=!![];const _0x351e3b={'event':_0x5d32a8(0x1dd),'logDir':_0x1829bf,'files':['app.log',_0x3e6f11[_0x5d32a8(0x19e)]]},_0x40b0af=_0x5d32a8(0x213)+_0x1829bf;logger[_0x5d32a8(0x1bb)](_0x351e3b,_0x40b0af),writeToFileLog({..._0x351e3b,'level':_0x5d32a8(0x1bb),'msg':_0x40b0af,'time':new Date()[_0x5d32a8(0x210)]()},_0x3e6f11[_0x5d32a8(0x228)]);}catch(_0x1f3ec1){console['error'](_0x5d32a8(0x23a),_0x1f3ec1[_0x5d32a8(0x22d)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x4e2b93,_0x5de229){const _0x239cfe=a0_0x3698b4,_0x465c4a={'prcUY':function(_0x2b4e1e,_0x156de5){return _0x2b4e1e||_0x156de5;},'BcpEH':function(_0x5813e2,_0x5e16a6){return _0x5813e2===_0x5e16a6;},'tBmww':_0x239cfe(0x1c6),'HPCMH':'fatal'};if(_0x465c4a['prcUY'](!logToFile,!appLogStream))return;const _0x3cb493={'service':serviceName,..._0x4e2b93},_0x36ac5f=JSON['stringify'](_0x3cb493)+'\x0a';appLogStream[_0x239cfe(0x1c2)](_0x36ac5f),(_0x465c4a['BcpEH'](_0x5de229,_0x465c4a[_0x239cfe(0x1df)])||_0x465c4a[_0x239cfe(0x23b)](_0x5de229,_0x465c4a[_0x239cfe(0x226)]))&&(errorLogStream&&errorLogStream['write'](_0x36ac5f));}function a0_0x15d9(_0x2b2d27,_0x278760){_0x2b2d27=_0x2b2d27-0x18f;const _0x53728a=a0_0x5372();let _0x15d9ee=_0x53728a[_0x2b2d27];if(a0_0x15d9['AgnHNI']===undefined){var _0x1e8dbb=function(_0x373c2b){const _0x2bbece='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x444e51='',_0x2008a6='';for(let _0x33adea=0x0,_0x512627,_0x5f3a39,_0x5a3c29=0x0;_0x5f3a39=_0x373c2b['charAt'](_0x5a3c29++);~_0x5f3a39&&(_0x512627=_0x33adea%0x4?_0x512627*0x40+_0x5f3a39:_0x5f3a39,_0x33adea++%0x4)?_0x444e51+=String['fromCharCode'](0xff&_0x512627>>(-0x2*_0x33adea&0x6)):0x0){_0x5f3a39=_0x2bbece['indexOf'](_0x5f3a39);}for(let _0x180afc=0x0,_0x4b57c1=_0x444e51['length'];_0x180afc<_0x4b57c1;_0x180afc++){_0x2008a6+='%'+('00'+_0x444e51['charCodeAt'](_0x180afc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2008a6);};a0_0x15d9['ItHxOo']=_0x1e8dbb,a0_0x15d9['JvWwNC']={},a0_0x15d9['AgnHNI']=!![];}const _0x15858d=_0x53728a[0x0],_0x4bc6a9=_0x2b2d27+_0x15858d,_0x47b607=a0_0x15d9['JvWwNC'][_0x4bc6a9];return!_0x47b607?(_0x15d9ee=a0_0x15d9['ItHxOo'](_0x15d9ee),a0_0x15d9['JvWwNC'][_0x4bc6a9]=_0x15d9ee):_0x15d9ee=_0x47b607,_0x15d9ee;}const createRequestLogger=(_0x5a9ae6={})=>{const _0x1d5f11=a0_0x3698b4;return logger[_0x1d5f11(0x1d0)](_0x5a9ae6);},logServerStart=_0x446f9d=>{const _0x4fa921=a0_0x3698b4,_0x1325b7={'cUmZk':'RESTFORGE\x20RUNTIME\x20SERVER','wNIZm':function(_0x6a95b0,_0x3cab2b){return _0x6a95b0-_0x3cab2b;},'KFzTM':'Node.js','CiQiK':_0x4fa921(0x234),'sIZdx':_0x4fa921(0x1b0),'ueMit':_0x4fa921(0x23d),'qbbzP':function(_0x2d68b5,_0x208f80,_0x3f7349){return _0x2d68b5(_0x208f80,_0x3f7349);},'ZcmZC':'info'},_0x4b4f1d=_0x1325b7[_0x4fa921(0x229)],_0x39265f=Math['max'](0x0,_0x1325b7[_0x4fa921(0x1b4)](0x37,_0x4b4f1d['length'])),_0x3cb438=Math[_0x4fa921(0x1a3)](_0x39265f/0x2),_0x341884=_0x39265f-_0x3cb438,_0x5e3cae='║'+'\x20'['repeat'](_0x3cb438)+_0x4b4f1d+'\x20'[_0x4fa921(0x1b9)](_0x341884)+'║',_0x43eebe=_0x4fa921(0x1fd)+_0x5e3cae+_0x4fa921(0x218)+(_0x446f9d['environment']||_0x1325b7['KFzTM'])['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x446f9d[_0x4fa921(0x208)]||_0x1325b7['CiQiK'])['padEnd'](0x26)+_0x4fa921(0x209)+String(_0x446f9d[_0x4fa921(0x20b)]||0xbb8)['padEnd'](0x26)+'\x20║\x0a║\x20\x20Config\x20\x20\x20\x20\x20\x20:\x20'+(_0x446f9d[_0x4fa921(0x1ae)]||_0x4fa921(0x227))[_0x4fa921(0x215)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x446f9d[_0x4fa921(0x1a1)]?_0x4fa921(0x211):_0x1325b7[_0x4fa921(0x1fa)])['padEnd'](0x26)+_0x4fa921(0x207);console['log'](_0x43eebe);const _0x4427a8={'event':_0x1325b7['ueMit'],'project':_0x446f9d[_0x4fa921(0x208)],'port':_0x446f9d[_0x4fa921(0x20b)],'config':_0x446f9d[_0x4fa921(0x1ae)],'apiKeyEnabled':!!_0x446f9d['apiKey']};logger['info'](_0x4427a8),_0x1325b7['qbbzP'](writeToFileLog,{..._0x4427a8,'level':'info','msg':_0x4fa921(0x1e8)+_0x446f9d[_0x4fa921(0x208)]+_0x4fa921(0x196)+_0x446f9d[_0x4fa921(0x20b)],'time':new Date()[_0x4fa921(0x210)]()},_0x1325b7[_0x4fa921(0x1b5)]);},logServerReady=_0xe526fb=>{const _0x30e30e=a0_0x3698b4,_0x425fe5={'kyaSn':'server_ready','PsUre':function(_0x10e3f9,_0x1b5de2,_0x372282){return _0x10e3f9(_0x1b5de2,_0x372282);},'WJwwb':'info'},_0x3ff1b1={'event':_0x425fe5[_0x30e30e(0x1c4)],'port':_0xe526fb['port'],'module':_0xe526fb['module'],'healthCheck':_0xe526fb[_0x30e30e(0x1f8)],'serviceInfo':_0xe526fb['serviceInfo'],'baseUrl':_0xe526fb['baseUrl']},_0x5d1b9e='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0xe526fb['port'];logger[_0x30e30e(0x1bb)](_0x3ff1b1,_0x5d1b9e),_0x425fe5['PsUre'](writeToFileLog,{..._0x3ff1b1,'level':_0x425fe5['WJwwb'],'msg':_0x5d1b9e,'time':new Date()['toISOString']()},_0x425fe5['WJwwb']),_0xe526fb['healthCheck']&&logger['info'](_0x30e30e(0x1c9)+_0xe526fb['healthCheck']),_0xe526fb[_0x30e30e(0x1d7)]&&logger[_0x30e30e(0x1bb)]('\x20\x20Info:\x20\x20\x20'+_0xe526fb[_0x30e30e(0x1d7)]),_0xe526fb[_0x30e30e(0x1f6)]&&logger['info'](_0x30e30e(0x1f2)+_0xe526fb['baseUrl']);},logProjectLoaded=(_0x4fadb3,_0x103bd8)=>{const _0x1d16c0=a0_0x3698b4,_0x164b4f={'TZpDt':'project_loaded','GmCbR':function(_0xa3b115,_0x2984cc,_0x14f6c2){return _0xa3b115(_0x2984cc,_0x14f6c2);},'fXpbj':_0x1d16c0(0x1bb)},_0x2c28dd={'event':_0x164b4f['TZpDt'],'project':_0x4fadb3,'path':_0x103bd8},_0x5c9086='[OK]\x20Project\x20loaded:\x20'+_0x4fadb3;logger[_0x1d16c0(0x1bb)](_0x2c28dd,_0x5c9086),_0x164b4f[_0x1d16c0(0x1bd)](writeToFileLog,{..._0x2c28dd,'level':_0x1d16c0(0x1bb),'msg':_0x5c9086,'time':new Date()[_0x1d16c0(0x210)]()},_0x164b4f[_0x1d16c0(0x191)]);},logEndpointRegistered=(_0x428a37,_0x5157c7)=>{const _0x4752b9=a0_0x3698b4,_0x121c01={'MsTrA':'endpoint_registered','qSJPT':function(_0xa941c6,_0x6adf0,_0x3d10d4){return _0xa941c6(_0x6adf0,_0x3d10d4);},'JoqFl':'debug'},_0x223ab4={'event':_0x121c01['MsTrA'],'endpoint':_0x428a37,'route':_0x5157c7},_0x2c08d4='\x20\x20→\x20'+_0x428a37+':\x20'+_0x5157c7;logger['debug'](_0x223ab4,_0x2c08d4),_0x121c01['qSJPT'](writeToFileLog,{..._0x223ab4,'level':_0x4752b9(0x202),'msg':_0x2c08d4,'time':new Date()['toISOString']()},_0x121c01['JoqFl']);},logDatabaseConfig=_0x47b0be=>{const _0x547feb=a0_0x3698b4,_0x5fe52b={'lwMaj':function(_0xef33ba,_0xb6dc69,_0x556bd5){return _0xef33ba(_0xb6dc69,_0x556bd5);},'pzLPy':_0x547feb(0x202)},_0x1f7033={'event':'database_config','host':_0x47b0be[_0x547feb(0x247)],'port':_0x47b0be[_0x547feb(0x20b)],'database':_0x47b0be[_0x547feb(0x217)],'type':_0x47b0be['type'],'user':_0x47b0be['user']},_0x3e123c='Database:\x20'+_0x47b0be[_0x547feb(0x193)]+_0x547feb(0x20a)+_0x47b0be[_0x547feb(0x247)]+':'+_0x47b0be[_0x547feb(0x20b)]+'/'+_0x47b0be['database'];logger['debug'](_0x1f7033,_0x3e123c),_0x5fe52b[_0x547feb(0x1d3)](writeToFileLog,{..._0x1f7033,'level':_0x5fe52b[_0x547feb(0x1ed)],'msg':_0x3e123c,'time':new Date()[_0x547feb(0x210)]()},'debug');},logRequest=(_0x57a21a,_0x12635e,_0x506805)=>{const _0x4b1f4d=a0_0x3698b4,_0x3904f8={'ldKbD':_0x4b1f4d(0x21e),'biEWG':_0x4b1f4d(0x1bb),'ZLkbx':'error','FGcpn':function(_0x39a23a,_0x471a77){return _0x39a23a>=_0x471a77;},'izyvZ':_0x4b1f4d(0x1bc)},_0x15c524={'event':_0x3904f8[_0x4b1f4d(0x1da)],'method':_0x57a21a['method'],'path':_0x57a21a['path'],'statusCode':_0x12635e[_0x4b1f4d(0x1e2)],'durationMs':_0x506805,'ip':_0x57a21a['ip']},_0x7eeca4=_0x57a21a[_0x4b1f4d(0x1be)]+'\x20'+_0x57a21a[_0x4b1f4d(0x203)]+_0x4b1f4d(0x1d4)+_0x12635e['statusCode']+'\x20('+_0x506805+_0x4b1f4d(0x220);let _0x3fb4d1=_0x3904f8['biEWG'];if(_0x12635e[_0x4b1f4d(0x1e2)]>=0x1f4)_0x3fb4d1=_0x3904f8[_0x4b1f4d(0x19c)],logger['error'](_0x15c524,_0x7eeca4);else _0x3904f8[_0x4b1f4d(0x239)](_0x12635e['statusCode'],0x190)?(_0x3fb4d1=_0x3904f8['izyvZ'],logger['warn'](_0x15c524,_0x7eeca4)):logger[_0x4b1f4d(0x1bb)](_0x15c524,_0x7eeca4);writeToFileLog({..._0x15c524,'level':_0x3fb4d1,'msg':_0x7eeca4,'time':new Date()['toISOString']()},_0x3fb4d1);},SENSITIVE_PARAM_PATTERNS=['password','passwd',a0_0x3698b4(0x21b),'token',a0_0x3698b4(0x249),'refresh_token',a0_0x3698b4(0x1c0),'api_secret','apikey','api_key',a0_0x3698b4(0x235),'credentials',a0_0x3698b4(0x231),'otp',a0_0x3698b4(0x1ff),a0_0x3698b4(0x206)],redactSensitiveParams=(_0x5e5d04,_0x17e4ab)=>{const _0x8db986=a0_0x3698b4,_0x2d53b5={'GrQBT':_0x8db986(0x246),'yXWWm':function(_0x4c205e,_0x367c2a){return _0x4c205e===_0x367c2a;},'brgpU':'string','GexFz':function(_0x18b1a9,_0x2c1c15){return _0x18b1a9===_0x2c1c15;}};if(!_0x5e5d04||_0x2d53b5['GexFz'](_0x5e5d04[_0x8db986(0x240)],0x0))return _0x5e5d04;const _0x42f9ee=_0x17e4ab[_0x8db986(0x22e)](),_0x2495c3=_0x42f9ee[_0x8db986(0x20f)](/\(([^)]+)\)\s*values/i);let _0x51cc76=[];_0x2495c3&&(_0x51cc76=_0x2495c3[0x1][_0x8db986(0x24e)](',')['map'](_0x23e144=>_0x23e144[_0x8db986(0x221)]()['toLowerCase']()));const _0x2f21c1=_0x42f9ee[_0x8db986(0x20f)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x2f21c1){const _0x3f5653=_0x2f21c1[0x1],_0x17c88d=_0x3f5653['match'](/(\w+)\s*=/g);_0x17c88d&&(_0x51cc76=_0x17c88d[_0x8db986(0x244)](_0x5557a3=>_0x5557a3['replace'](/\s*=/,'')[_0x8db986(0x221)]()['toLowerCase']()));}return _0x5e5d04['map']((_0x100c14,_0x3927c9)=>{const _0x153413=_0x8db986;if(_0x51cc76[_0x3927c9]){const _0xeab313=_0x51cc76[_0x3927c9],_0x4ab943=SENSITIVE_PARAM_PATTERNS['some'](_0x451911=>_0xeab313[_0x153413(0x1a0)](_0x451911));if(_0x4ab943)return _0x2d53b5['GrQBT'];}if(_0x2d53b5['yXWWm'](typeof _0x100c14,_0x2d53b5['brgpU'])&&_0x100c14[_0x153413(0x240)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x100c14)&&_0x100c14[_0x153413(0x1a0)]('.'))return _0x153413(0x23c);if(/^[a-fA-F0-9]{32,}$/['test'](_0x100c14))return _0x153413(0x1c8);}return _0x100c14;});},parseQueryMetadata=_0x2ec1a3=>{const _0x84cb5b=a0_0x3698b4,_0x36289e={'QeWcq':_0x84cb5b(0x1cc),'zJKMO':_0x84cb5b(0x21a),'zjaPI':_0x84cb5b(0x1f9),'bNfHC':'START\x20TRANSACTION','NSmaA':_0x84cb5b(0x199),'sqMXA':_0x84cb5b(0x1f7),'WGtIS':_0x84cb5b(0x225),'eRKbP':'CREATE','PqSNP':'DROP','iSQus':_0x84cb5b(0x1de)},_0x5a5808=_0x2ec1a3['trim'](),_0x2b959=_0x5a5808[_0x84cb5b(0x219)]();let _0x31ac65='UNKNOWN',_0x5a2f9d=null;if(_0x2b959[_0x84cb5b(0x1e6)](_0x84cb5b(0x1ba))){_0x31ac65=_0x84cb5b(0x1ba);const _0x5e9292=_0x5a5808[_0x84cb5b(0x20f)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5a2f9d=_0x5e9292?_0x5e9292[0x1]:null;}else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x36289e['QeWcq'])){_0x31ac65=_0x84cb5b(0x1cc);const _0x32ac89=_0x5a5808['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5a2f9d=_0x32ac89?_0x32ac89[0x1]:null;}else{if(_0x2b959['startsWith']('UPDATE')){_0x31ac65='UPDATE';const _0x210ec3=_0x5a5808['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5a2f9d=_0x210ec3?_0x210ec3[0x1]:null;}else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x36289e[_0x84cb5b(0x1db)])){_0x31ac65='DELETE';const _0x7cb9f5=_0x5a5808['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5a2f9d=_0x7cb9f5?_0x7cb9f5[0x1]:null;}else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x36289e['zjaPI'])||_0x2b959['startsWith'](_0x36289e[_0x84cb5b(0x1e9)]))_0x31ac65=_0x84cb5b(0x1ab);else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x36289e[_0x84cb5b(0x233)]))_0x31ac65=_0x36289e['sqMXA'];else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x84cb5b(0x224)))_0x31ac65=_0x36289e['WGtIS'];else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x36289e['eRKbP']))_0x31ac65='DDL_CREATE';else{if(_0x2b959['startsWith']('ALTER'))_0x31ac65='DDL_ALTER';else _0x2b959[_0x84cb5b(0x1e6)](_0x36289e[_0x84cb5b(0x1aa)])&&(_0x31ac65=_0x36289e['iSQus']);}}}}}}}}return{'type':_0x31ac65,'table':_0x5a2f9d};},startQueryTimer=()=>{const _0x18eaf5=a0_0x3698b4,_0x5bf11e=process[_0x18eaf5(0x21c)]();return()=>{const _0x2cf24b=_0x18eaf5,[_0x137c0f,_0x5ad187]=process[_0x2cf24b(0x21c)](_0x5bf11e);return parseFloat((_0x137c0f*0x3e8+_0x5ad187/0xf4240)[_0x2cf24b(0x216)](0x2));};},logQuery=(_0x38487d,_0x4ccc34=[],_0x5a49f6={})=>{const _0x419923=a0_0x3698b4,_0x14e9a3={'uudjp':_0x419923(0x1a2),'DWxqx':function(_0x422808,_0x5a5387){return _0x422808(_0x5a5387);},'gDqMC':'sql_query','unxDb':function(_0xb09380,_0x250a4f){return _0xb09380>_0x250a4f;},'WNcZQ':function(_0x44bdad,_0x2ad27a){return _0x44bdad!==_0x2ad27a;},'FRMsB':function(_0x1e2e3d,_0x2747f1){return _0x1e2e3d!==_0x2747f1;},'SooFZ':'unknown','RjTNC':function(_0x1686c7,_0xa369f8){return _0x1686c7>_0xa369f8;},'KqBku':'debug','zJXIp':'\x20[SLOW]','KGEyY':function(_0x4fae46,_0x52431b){return _0x4fae46===_0x52431b;},'wJBbx':'info'};if(!sqlLogEnabled){logger[_0x419923(0x202)]({'event':_0x14e9a3['uudjp'],'query':_0x38487d['substring'](0x0,0xc8),'paramCount':_0x4ccc34[_0x419923(0x240)]},'DB\x20Query');return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType='postgresql'}=_0x5a49f6,{type:_0x1bd013,table:_0x404427}=_0x14e9a3[_0x419923(0x222)](parseQueryMetadata,_0x38487d),_0x12c378={'event':_0x14e9a3['gDqMC'],'queryType':_0x1bd013,'table':_0x404427,'query':_0x38487d,'paramCount':_0x4ccc34[_0x419923(0x240)],'dbType':dbType};sqlLogParams&&_0x14e9a3[_0x419923(0x1fe)](_0x4ccc34[_0x419923(0x240)],0x0)&&(_0x12c378['params']=redactSensitiveParams(_0x4ccc34,_0x38487d));_0x14e9a3[_0x419923(0x1c5)](duration,null)&&(_0x12c378['durationMs']=duration,_0x12c378[_0x419923(0x243)]=duration>sqlLogSlowThreshold);_0x14e9a3['FRMsB'](rowsAffected,null)&&(_0x12c378[_0x419923(0x205)]=rowsAffected);const _0x5b79e9=_0x404427||_0x14e9a3[_0x419923(0x1ca)];let _0x52210d='['+_0x1bd013+']\x20'+_0x5b79e9;_0x14e9a3[_0x419923(0x1c5)](duration,null)&&(_0x52210d+='\x20('+duration+_0x419923(0x220));const _0x17498b=duration!==null&&_0x14e9a3[_0x419923(0x1c7)](duration,sqlLogSlowThreshold);let _0x2e2db2=_0x14e9a3[_0x419923(0x1cf)];if(_0x17498b)_0x52210d+=_0x14e9a3['zJXIp'],_0x2e2db2=_0x419923(0x1bc),logger[_0x419923(0x1bc)](_0x12c378,_0x52210d);else _0x14e9a3['KGEyY'](sqlLogLevel,_0x14e9a3['wJBbx'])?(_0x2e2db2=_0x14e9a3['wJBbx'],logger['info'](_0x12c378,_0x52210d)):logger['debug'](_0x12c378,_0x52210d);writeToFileLog({..._0x12c378,'level':_0x2e2db2,'msg':_0x52210d,'time':new Date()[_0x419923(0x210)]()},_0x2e2db2);},logTransaction=(_0xa33796,_0xeae2b5)=>{const _0x243f4f=a0_0x3698b4,_0x15abda={'Agiyq':_0x243f4f(0x1eb)},_0x511896={'event':_0x15abda[_0x243f4f(0x1e4)],'status':_0xa33796,'queryCount':_0xeae2b5},_0x15342b='Transaction\x20'+_0xa33796;logger['debug'](_0x511896,_0x15342b),writeToFileLog({..._0x511896,'level':_0x243f4f(0x202),'msg':_0x15342b,'time':new Date()['toISOString']()},'debug');},redactObject=_0x20b437=>{const _0x1b522b=a0_0x3698b4,_0x32bf27={'qkqZo':'object','odeld':'secret','gfrbu':'apikey','JUfdn':_0x1b522b(0x24a),'pCVtl':_0x1b522b(0x1a4),'yCrQL':'pin','Jtton':_0x1b522b(0x1ff),'JBSBp':_0x1b522b(0x249),'TLIhw':'[REDACTED]'};if(!_0x20b437||typeof _0x20b437!==_0x32bf27[_0x1b522b(0x230)])return _0x20b437;const _0x1151bc=['password','passwd',_0x1b522b(0x21b),_0x1b522b(0x22c),_0x32bf27[_0x1b522b(0x1b8)],_0x32bf27['gfrbu'],_0x1b522b(0x1fb),'authorization',_0x1b522b(0x194),_0x1b522b(0x19d),_0x32bf27['JUfdn'],_0x32bf27['pCVtl'],_0x32bf27['yCrQL'],_0x32bf27['Jtton'],_0x1b522b(0x206),'refresh_token',_0x32bf27['JBSBp']],_0x1d6834=Array['isArray'](_0x20b437)?[..._0x20b437]:{..._0x20b437};for(const _0x5897f7 of Object['keys'](_0x1d6834)){const _0x71fa07=_0x5897f7[_0x1b522b(0x22e)]();if(_0x1151bc['some'](_0x802ace=>_0x71fa07[_0x1b522b(0x1a0)](_0x802ace)))_0x1d6834[_0x5897f7]=_0x32bf27[_0x1b522b(0x1ad)];else typeof _0x1d6834[_0x5897f7]===_0x1b522b(0x22f)&&_0x1d6834[_0x5897f7]!==null&&(_0x1d6834[_0x5897f7]=redactObject(_0x1d6834[_0x5897f7]));}return _0x1d6834;},logError=(_0x29a9cd,_0x3358aa={},_0x14b637=null)=>{const _0x3a53bb=a0_0x3698b4,_0x21af41={'MUNqQ':'error','uALMn':'Error'},_0x35a0be={'event':_0x21af41[_0x3a53bb(0x1a7)],'errorName':_0x29a9cd['name']||_0x21af41['uALMn'],'errorMessage':_0x29a9cd['message'],'errorCode':_0x29a9cd['code']||null,'stack':_0x29a9cd['stack'],..._0x3358aa},_0xc4dece=_0x14b637||'Error:\x20'+_0x29a9cd[_0x3a53bb(0x22d)];logger[_0x3a53bb(0x1c6)](_0x35a0be,_0xc4dece),writeToFileLog({..._0x35a0be,'level':'error','msg':_0xc4dece,'time':new Date()['toISOString']()},_0x21af41['MUNqQ']);},logFatalError=(_0x39f434,_0x146540={},_0x176d4e=null)=>{const _0x57c9a9=a0_0x3698b4,_0x472c5f={'FQGla':_0x57c9a9(0x200),'VKdXQ':_0x57c9a9(0x238),'xghVo':function(_0xeacc73,_0x51ff6e,_0x517645){return _0xeacc73(_0x51ff6e,_0x517645);},'UAUDF':'fatal'},_0x5f471c={'event':_0x472c5f['FQGla'],'errorName':_0x39f434[_0x57c9a9(0x1a6)]||_0x472c5f[_0x57c9a9(0x192)],'errorMessage':_0x39f434['message'],'errorCode':_0x39f434['code']||null,'stack':_0x39f434[_0x57c9a9(0x18f)],'severity':_0x57c9a9(0x1e7),..._0x146540},_0x34fbe1=_0x176d4e||'FATAL:\x20'+_0x39f434[_0x57c9a9(0x22d)];logger[_0x57c9a9(0x1cd)](_0x5f471c,_0x34fbe1),_0x472c5f[_0x57c9a9(0x204)](writeToFileLog,{..._0x5f471c,'level':_0x472c5f['UAUDF'],'msg':_0x34fbe1,'time':new Date()[_0x57c9a9(0x210)]()},'error');},logHttpError=(_0x2506ee,_0x534f07,_0x5894f1={})=>{const _0x1ac68f=a0_0x3698b4,_0xd0f894={'oPOeA':'http_error','ibsva':_0x1ac68f(0x238),'BMkHp':function(_0x537c29,_0x4978df){return _0x537c29(_0x4978df);},'keUbY':function(_0x2d3e45,_0x5282e5,_0x150e3a){return _0x2d3e45(_0x5282e5,_0x150e3a);},'gKORs':function(_0x3437a5,_0x1c8bcc){return _0x3437a5>=_0x1c8bcc;},'BXpUr':_0x1ac68f(0x1c6),'OzqFs':_0x1ac68f(0x1bc)},_0x544569={'event':_0xd0f894[_0x1ac68f(0x1dc)],'errorName':_0x2506ee['name']||_0xd0f894[_0x1ac68f(0x1b6)],'errorMessage':_0x2506ee['message'],'errorCode':_0x2506ee['code']||_0x2506ee[_0x1ac68f(0x1e2)]||0x1f4,'stack':_0x2506ee[_0x1ac68f(0x18f)],'method':_0x534f07?.['method'],'url':_0x534f07?.['url']||_0x534f07?.[_0x1ac68f(0x1f0)],'path':_0x534f07?.[_0x1ac68f(0x203)],'ip':_0x534f07?.['ip']||_0x534f07?.['connection']?.['remoteAddress'],'userAgent':_0x534f07?.['get']?.('user-agent'),'requestId':_0x534f07?.['id']||_0x534f07?.['headers']?.['x-request-id'],'body':_0x534f07?.['body']?_0xd0f894['BMkHp'](redactObject,_0x534f07['body']):undefined,'query':_0x534f07?.[_0x1ac68f(0x1f4)],..._0x5894f1},_0x2ea300=_0x2506ee[_0x1ac68f(0x1e2)]||_0x2506ee['status']||0x1f4,_0x2a867b='HTTP\x20'+_0x2ea300+':\x20'+_0x2506ee['message'];_0x2ea300>=0x1f4?logger['error'](_0x544569,_0x2a867b):logger['warn'](_0x544569,_0x2a867b),_0xd0f894[_0x1ac68f(0x1e5)](writeToFileLog,{..._0x544569,'level':_0xd0f894['gKORs'](_0x2ea300,0x1f4)?_0xd0f894[_0x1ac68f(0x212)]:'warn','msg':_0x2a867b,'time':new Date()['toISOString']()},_0x2ea300>=0x1f4?_0xd0f894['BXpUr']:_0xd0f894['OzqFs']);},logUncaughtError=(_0x4d3858,_0x48c6f3)=>{const _0x281982=a0_0x3698b4,_0x2a1d06={'tySiU':function(_0x329114,_0x485e19){return _0x329114(_0x485e19);}},_0x16dc6d={'event':_0x4d3858,'errorName':_0x48c6f3?.[_0x281982(0x1a6)]||'Error','errorMessage':_0x48c6f3?.[_0x281982(0x22d)]||_0x2a1d06[_0x281982(0x1fc)](String,_0x48c6f3),'errorCode':_0x48c6f3?.['code']||null,'stack':_0x48c6f3?.[_0x281982(0x18f)],'severity':_0x281982(0x1e7),'processId':process['pid'],'memoryUsage':process[_0x281982(0x1d9)](),'uptime':process[_0x281982(0x22a)]()},_0x9d5217='['+_0x4d3858['toUpperCase']()+']\x20'+(_0x48c6f3?.['message']||_0x48c6f3);logger[_0x281982(0x1cd)](_0x16dc6d,_0x9d5217),writeToFileLog({..._0x16dc6d,'level':_0x281982(0x1cd),'msg':_0x9d5217,'time':new Date()[_0x281982(0x210)]()},_0x281982(0x1c6));},setupGlobalErrorHandlers=()=>{const _0x14cc21=a0_0x3698b4,_0xb4b417={'dmSbn':function(_0x55b46a,_0x18b514,_0x49beb7){return _0x55b46a(_0x18b514,_0x49beb7);},'KOvvg':function(_0x1fe76d,_0x728d7d,_0x5a556b){return _0x1fe76d(_0x728d7d,_0x5a556b);},'RPMvv':function(_0x111cd7,_0x821dd2){return _0x111cd7 instanceof _0x821dd2;},'vDxwq':function(_0x5b2bab,_0x48803e){return _0x5b2bab(_0x48803e);},'XiKSt':_0x14cc21(0x198),'QlEPw':'process_warning','yFoCo':'global_error_handlers_setup','ZcAuo':'Global\x20error\x20handlers\x20initialized'};process['on'](_0x14cc21(0x19f),_0x18ff38=>{const _0x357b51=_0x14cc21;_0xb4b417[_0x357b51(0x1b1)](logUncaughtError,_0x357b51(0x19f),_0x18ff38),_0xb4b417[_0x357b51(0x1d2)](setTimeout,()=>{process['exit'](0x1);},0x3e8);}),process['on']('unhandledRejection',(_0x111576,_0x254b57)=>{const _0x3e00e7=_0x14cc21,_0x649b01=_0xb4b417['RPMvv'](_0x111576,Error)?_0x111576:new Error(_0xb4b417[_0x3e00e7(0x23f)](String,_0x111576));logUncaughtError(_0xb4b417['XiKSt'],_0x649b01);}),process['on'](_0x14cc21(0x20c),_0x4cc6ee=>{const _0x3a1beb=_0x14cc21;logger['warn']({'event':_0xb4b417['QlEPw'],'name':_0x4cc6ee[_0x3a1beb(0x1a6)],'message':_0x4cc6ee[_0x3a1beb(0x22d)],'stack':_0x4cc6ee[_0x3a1beb(0x18f)]},'Process\x20Warning:\x20'+_0x4cc6ee[_0x3a1beb(0x22d)]);});const _0xa01e3c={'event':_0xb4b417['yFoCo']},_0x4b0cbc=_0xb4b417['ZcAuo'];logger['info'](_0xa01e3c,_0x4b0cbc),writeToFileLog({..._0xa01e3c,'level':'info','msg':_0x4b0cbc,'time':new Date()[_0x14cc21(0x210)]()},'info');},createErrorHandlerMiddleware=()=>{const _0x2ee778={'hDNbh':function(_0x3a6090,_0x293ccd){return _0x3a6090>=_0x293ccd;}};return(_0x1c19da,_0x49d82f,_0x2ce2c9,_0x403cef)=>{const _0xcb8491=a0_0x15d9;logHttpError(_0x1c19da,_0x49d82f);const _0xfff743=_0x1c19da[_0xcb8491(0x1e2)]||_0x1c19da[_0xcb8491(0x1d8)]||0x1f4;_0x2ce2c9[_0xcb8491(0x1d8)](_0xfff743)[_0xcb8491(0x1ef)]({'success':![],'error':_0x2ee778['hDNbh'](_0xfff743,0x1f4)?_0xcb8491(0x1a5):_0x1c19da['message'],'requestId':_0x49d82f['id']||_0x49d82f['headers']?.[_0xcb8491(0x248)]||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 +1 @@
1
- const a0_0x1f8e5b=a0_0x48cc;function a0_0x3b5b(){const _0x55f0dc=['Dg9mB3DLCKnHC2u','mKPqwNvLzW','u0vmrunuia','Cg9ZDgDYzxnXBa','ChvZAa','mti1ndqXnLHbD1vTuW','zM9YrwfJAa','runvEvu','lI9KyG','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','mtfKug5PyKK','z2v0rgLZDgLUy3rwywX1zxm','nJnQs1nhEe4','C2v0','CMvZB2X2zuXVB2T1CfzHBhvL','Bg9VA3vWx3rHyMXLx2XVywrLza','Dg9vChbLCKnHC2u','odiYotq2mgHbqvD2vG','BxLZCwW','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','uNnithO','zgvIDwC','BwfW','BgvUz3rO','y2XLyxi','nda5otq2nfjstfj3CW','nND1yNjtBa','sM5SuwW','zM1JD2W','yMXqAMi','EwXIA20','rMfJB3q','lI9KyI1VCMfJBgu','A2v5CW','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','zw50CMLLCW','zxHLy3v0zvf1zxj5','q25hwhG','BwvZC2fNzq','Bg9HzeXVB2T1CfrHyMXL','nJC2mte2tKfhsKjW','mZqZmZeXmJb5DvbrsgC','ndu4nty5DfbUtu1n','Bg9VA3vWq2fJAgu','vMfSDwuGiG','Aw5MBW','tg9VA3vWignHy2HLignSzwfYzwq','wwnWAKK','mZGZmZG1muHvquDdEG','ywrK','DhjPBq'];a0_0x3b5b=function(){return _0x55f0dc;};return a0_0x3b5b();}(function(_0x36ef64,_0x1f46c1){const _0x45f2fb=a0_0x48cc,_0x10be95=_0x36ef64();while(!![]){try{const _0x4e2e1f=parseInt(_0x45f2fb(0x194))/0x1*(parseInt(_0x45f2fb(0x16b))/0x2)+parseInt(_0x45f2fb(0x192))/0x3+-parseInt(_0x45f2fb(0x183))/0x4+-parseInt(_0x45f2fb(0x17b))/0x5+-parseInt(_0x45f2fb(0x184))/0x6*(-parseInt(_0x45f2fb(0x167))/0x7)+-parseInt(_0x45f2fb(0x16f))/0x8*(parseInt(_0x45f2fb(0x176))/0x9)+parseInt(_0x45f2fb(0x193))/0xa*(parseInt(_0x45f2fb(0x174))/0xb);if(_0x4e2e1f===_0x1f46c1)break;else _0x10be95['push'](_0x10be95['shift']());}catch(_0x4fbe13){_0x10be95['push'](_0x10be95['shift']());}}}(a0_0x3b5b,0xdad76));function a0_0x48cc(_0x2b17b7,_0x3385be){_0x2b17b7=_0x2b17b7-0x165;const _0x3b5bf0=a0_0x3b5b();let _0x48ccf1=_0x3b5bf0[_0x2b17b7];if(a0_0x48cc['jkurQB']===undefined){var _0x3156b4=function(_0x4815b8){const _0x45dc87='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1d8d27='',_0x45d8a9='';for(let _0x312d9=0x0,_0x519ebe,_0x18e9ca,_0x389016=0x0;_0x18e9ca=_0x4815b8['charAt'](_0x389016++);~_0x18e9ca&&(_0x519ebe=_0x312d9%0x4?_0x519ebe*0x40+_0x18e9ca:_0x18e9ca,_0x312d9++%0x4)?_0x1d8d27+=String['fromCharCode'](0xff&_0x519ebe>>(-0x2*_0x312d9&0x6)):0x0){_0x18e9ca=_0x45dc87['indexOf'](_0x18e9ca);}for(let _0x326c7a=0x0,_0x93b1b4=_0x1d8d27['length'];_0x326c7a<_0x93b1b4;_0x326c7a++){_0x45d8a9+='%'+('00'+_0x1d8d27['charCodeAt'](_0x326c7a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x45d8a9);};a0_0x48cc['HrrSKS']=_0x3156b4,a0_0x48cc['EIKlfZ']={},a0_0x48cc['jkurQB']=!![];}const _0x512b48=_0x3b5bf0[0x0],_0x1fc8a9=_0x2b17b7+_0x512b48,_0x2dae38=a0_0x48cc['EIKlfZ'][_0x1fc8a9];return!_0x2dae38?(_0x48ccf1=a0_0x48cc['HrrSKS'](_0x48ccf1),a0_0x48cc['EIKlfZ'][_0x1fc8a9]=_0x48ccf1):_0x48ccf1=_0x2dae38,_0x48ccf1;}const dbType=(process['env']['DB_TYPE']||a0_0x1f8e5b(0x16d))[a0_0x1f8e5b(0x16a)]();let executeQuery;if(dbType==='oracle'){const oracleDb=require(a0_0x1f8e5b(0x18a));executeQuery=(_0x3407b6,_0x5ccfd7)=>oracleDb[a0_0x1f8e5b(0x18e)](_0x3407b6,_0x5ccfd7);}else{if(dbType===a0_0x1f8e5b(0x17c)){const mysqlDb=require('./db-mysql');executeQuery=(_0x32b45f,_0x5b293e)=>mysqlDb[a0_0x1f8e5b(0x18e)](_0x32b45f,_0x5b293e);}else executeQuery=require(a0_0x1f8e5b(0x172))['executeQuery'];}const {logger}=require('./logger');class LookupResolver{constructor(){this['lookupCache']=new Map();}['clearCache'](){const _0x7985d6=a0_0x1f8e5b;this['lookupCache'][_0x7985d6(0x182)](),logger[_0x7985d6(0x17f)]({'event':_0x7985d6(0x18c)},_0x7985d6(0x165));}async['loadLookupTable'](_0x545ed9,_0x4e41aa,_0x2f839f){const _0x578d4b=a0_0x1f8e5b,_0x3684e0={'RsHLz':function(_0x3b8043,_0x176947){return _0x3b8043!==_0x176947;},'ECUyU':function(_0x2d655c,_0xa0a496){return _0x2d655c!==_0xa0a496;},'CnGXx':function(_0x58183d,_0x246d2d){return _0x58183d!==_0x246d2d;},'zAhae':_0x578d4b(0x179),'YETJE':'lookup_table_load_error'},_0x4d8b13=_0x545ed9+':'+_0x4e41aa+':'+_0x2f839f;if(this[_0x578d4b(0x195)]['has'](_0x4d8b13))return this['lookupCache']['get'](_0x4d8b13);try{const _0x18862d=_0x578d4b(0x16c)+_0x2f839f+',\x20'+_0x4e41aa+'\x20FROM\x20'+_0x545ed9,_0x51a00e=await executeQuery(_0x18862d),_0x325cf7=new Map();return _0x51a00e[_0x578d4b(0x170)](_0x112ef6=>{const _0x2dc723=_0x578d4b,_0x281d3d=_0x3684e0['RsHLz'](_0x112ef6[_0x4e41aa],undefined)?_0x112ef6[_0x4e41aa]:_0x112ef6[_0x4e41aa[_0x2dc723(0x17a)]()],_0xc7c846=_0x3684e0[_0x2dc723(0x171)](_0x112ef6[_0x2f839f],undefined)?_0x112ef6[_0x2f839f]:_0x112ef6[_0x2f839f[_0x2dc723(0x17a)]()];_0x3684e0[_0x2dc723(0x18f)](_0x281d3d,null)&&_0x3684e0[_0x2dc723(0x17e)](_0x281d3d,undefined)&&(_0x325cf7[_0x2dc723(0x177)](String(_0x281d3d)[_0x2dc723(0x16a)]()[_0x2dc723(0x169)](),_0xc7c846),_0x325cf7[_0x2dc723(0x177)](String(_0x281d3d)['trim'](),_0xc7c846));}),this[_0x578d4b(0x195)][_0x578d4b(0x177)](_0x4d8b13,_0x325cf7),logger['info']({'event':_0x3684e0['zAhae'],'table':_0x545ed9,'column':_0x4e41aa,'count':_0x51a00e[_0x578d4b(0x181)]},'Lookup\x20table\x20loaded:\x20'+_0x545ed9),_0x325cf7;}catch(_0x5a5f34){logger['error']({'event':_0x3684e0['YETJE'],'table':_0x545ed9,'error':_0x5a5f34[_0x578d4b(0x190)]},_0x578d4b(0x173)+_0x545ed9);throw _0x5a5f34;}}[a0_0x1f8e5b(0x178)](_0x5ec409,_0x4990a2){const _0x3ec9dc=a0_0x1f8e5b,_0x5c2eb8={'Facot':function(_0x2816d3,_0x444ef1){return _0x2816d3===_0x444ef1;},'RbFKe':function(_0x45f31b,_0x14e755){return _0x45f31b===_0x14e755;},'OfXfU':function(_0x17de01,_0x30c129){return _0x17de01===_0x30c129;},'YcpjI':function(_0x22fd79,_0xdd04a8){return _0x22fd79(_0xdd04a8);}};if(_0x5c2eb8[_0x3ec9dc(0x189)](_0x5ec409,null)||_0x5c2eb8['RbFKe'](_0x5ec409,undefined)||_0x5c2eb8['OfXfU'](_0x5ec409,''))return null;const _0x4b3f89=_0x5c2eb8[_0x3ec9dc(0x166)](String,_0x5ec409)[_0x3ec9dc(0x169)]();if(_0x4990a2['has'](_0x4b3f89))return _0x4990a2['get'](_0x4b3f89);const _0x2f7ed0=_0x4b3f89['toLowerCase']();if(_0x4990a2['has'](_0x2f7ed0))return _0x4990a2['get'](_0x2f7ed0);return null;}async['processLookupFields'](_0x4b279a,_0x195e9f){const _0x3a7ba9=a0_0x1f8e5b,_0x48c1dc={'blPjb':function(_0x17cd73,_0x8b9155){return _0x17cd73===_0x8b9155;},'HpoRi':'lookup_fields_processed'};if(!_0x195e9f||Object['keys'](_0x195e9f)['length']===0x0)return{'processedRows':_0x4b279a,'errors':[]};const _0x47157a=[],_0x403432=new Map();for(const [_0x37e9cc,_0x535b54]of Object['entries'](_0x195e9f)){const {lookupTable:_0x546536,lookupColumn:_0x2abcf9,lookupIdColumn:_0x304150}=_0x535b54,_0x240982=_0x546536+':'+_0x2abcf9+':'+_0x304150;if(!_0x403432['has'](_0x240982)){const _0x3518f5=await this[_0x3a7ba9(0x191)](_0x546536,_0x2abcf9,_0x304150);_0x403432[_0x3a7ba9(0x177)](_0x240982,_0x3518f5);}}const _0x54139b=_0x4b279a[_0x3a7ba9(0x180)]((_0x51f621,_0x58bb6a)=>{const _0x5d9320=_0x3a7ba9,_0x7a70f8={..._0x51f621};for(const [_0x36365c,_0x4feab0]of Object['entries'](_0x195e9f)){const {lookupTable:_0x343a66,lookupColumn:_0x49c659,lookupIdColumn:_0x3c3cc0,targetField:_0xecd121,required:_0x267687}=_0x4feab0,_0x10824a=_0x343a66+':'+_0x49c659+':'+_0x3c3cc0,_0x4d029e=_0x403432['get'](_0x10824a),_0x2568fe=_0x51f621[_0x36365c];if((_0x48c1dc['blPjb'](_0x2568fe,null)||_0x2568fe===undefined||_0x48c1dc[_0x5d9320(0x187)](_0x2568fe,''))&&!_0x267687){_0x7a70f8[_0xecd121]=null;continue;}const _0x3b218a=this[_0x5d9320(0x178)](_0x2568fe,_0x4d029e);_0x3b218a!==null?_0x7a70f8[_0xecd121]=_0x3b218a:(_0x267687&&_0x47157a[_0x5d9320(0x16e)]({'rowIndex':_0x58bb6a,'field':_0x36365c,'value':_0x2568fe,'targetField':_0xecd121,'lookupTable':_0x343a66,'message':_0x5d9320(0x196)+_0x2568fe+'\x22\x20not\x20found\x20in\x20'+_0x343a66}),_0x7a70f8[_0xecd121]=null);}return _0x7a70f8;});return logger[_0x3a7ba9(0x197)]({'event':_0x48c1dc['HpoRi'],'totalRows':_0x4b279a['length'],'errorCount':_0x47157a['length'],'lookupFieldCount':Object[_0x3a7ba9(0x18b)](_0x195e9f)['length']},'Lookup\x20fields\x20processed'),{'processedRows':_0x54139b,'errors':_0x47157a};}[a0_0x1f8e5b(0x175)](_0x30c33a,_0x1e68d3){const _0x3b30b8={'GOjjy':function(_0x4bd2fd,_0x43d3cd){return _0x4bd2fd!==_0x43d3cd;},'ylbkm':function(_0x57eded,_0xdeef95){return _0x57eded!==_0xdeef95;},'rrFsS':function(_0x223e2c,_0x315f69){return _0x223e2c(_0x315f69);}},_0x49ff4d=new Set();return _0x30c33a['forEach'](_0x554a8c=>{const _0x3cf40a=a0_0x48cc,_0x4d4805=_0x554a8c[_0x1e68d3];_0x4d4805!==null&&_0x3b30b8['GOjjy'](_0x4d4805,undefined)&&_0x3b30b8[_0x3cf40a(0x188)](_0x4d4805,'')&&_0x49ff4d[_0x3cf40a(0x168)](_0x3b30b8['rrFsS'](String,_0x4d4805)[_0x3cf40a(0x169)]());}),Array['from'](_0x49ff4d);}async['validateLookupValues'](_0xf71a13,_0x1a330e){const _0x56a7f0=a0_0x1f8e5b,_0x4c0d02={'NBmve':function(_0x132b40,_0x41eb28){return _0x132b40!==_0x41eb28;},'JnlQl':function(_0x56c5d7,_0x2fc0cc){return _0x56c5d7===_0x2fc0cc;},'fmcwl':function(_0x2ef399,_0x3180ca){return _0x2ef399===_0x3180ca;}};if(!_0x1a330e||Object['keys'](_0x1a330e)['length']===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x1643e8=[],_0x3be6c1={};for(const [_0x4ad1f1,_0x241ae2]of Object[_0x56a7f0(0x18d)](_0x1a330e)){const {lookupTable:_0x68a381,lookupColumn:_0xfad1ad,lookupIdColumn:_0x38758a,required:_0x4eeecb}=_0x241ae2,_0x4ee490=this[_0x56a7f0(0x175)](_0xf71a13,_0x4ad1f1),_0x28feff=await this[_0x56a7f0(0x191)](_0x68a381,_0xfad1ad,_0x38758a),_0x40ce07=[],_0x45dd6e=[];_0x4ee490[_0x56a7f0(0x170)](_0x368f4a=>{const _0x4c76f1=_0x56a7f0,_0x56e187=this['resolveLookupValue'](_0x368f4a,_0x28feff);_0x4c0d02['NBmve'](_0x56e187,null)?_0x45dd6e[_0x4c76f1(0x16e)](_0x368f4a):_0x40ce07[_0x4c76f1(0x16e)](_0x368f4a);});if(_0x40ce07[_0x56a7f0(0x181)]>0x0&&_0x4eeecb){_0x1643e8['push']({'field':_0x4ad1f1,'lookupTable':_0x68a381,'invalidValues':_0x40ce07,'message':_0x40ce07[_0x56a7f0(0x181)]+_0x56a7f0(0x17d)+_0x68a381});const _0x3acc3c=[];_0x28feff[_0x56a7f0(0x170)]((_0x391ff5,_0x2ea16a)=>{const _0x37c486=_0x56a7f0;if(_0x4c0d02[_0x37c486(0x185)](_0x2ea16a,_0x2ea16a[_0x37c486(0x16a)]()))return;_0x3acc3c['push'](_0x2ea16a);}),_0x3be6c1[_0x4ad1f1]={'invalidValues':_0x40ce07,'availableValues':_0x3acc3c['slice'](0x0,0x32)};}}return{'valid':_0x4c0d02[_0x56a7f0(0x186)](_0x1643e8['length'],0x0),'errors':_0x1643e8,'suggestions':_0x3be6c1};}}module['exports']=new LookupResolver();
1
+ function a0_0x4de8(){const _0x2e1253=['s1vcwge','A2v5CW','uM50B2q','BgvUz3rO','nM5QB1beAq','y2XLyxi','zw50CMLLCW','y2XLyxjdywnOzq','AgfZ','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','mte0oty0Bfnsrxfq','tg9VA3vWignHy2HLignSzwfYzwq','zw52','BxLZCwW','mteWuNjKzvrt','lI9KyI1TExnXBa','nJu1ndC3mevUuMDfCG','zNjVBq','rMjvque','lI9KyG','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','Bg9VA3vWq2fJAgu','ofnrBvzTza','CMvZB2X2zuXVB2T1CfzHBhvL','tMTbvLm','zxHLy3v0zvf1zxj5','Dg9mB3DLCKnHC2u','rejFvfLqrq','DMfSAwrHDgvmB29RDxbwywX1zxm','DhjPBq','Bg9VA3vWx3rHyMXLx2XVywrLza','ndmWodGXzKPpu1LS','mZa5mtK4vevStNPK','u0vmrunuia','iezst00G','m0zyqMviAG','lI9KyI1VCMfJBgu','Bg9HzeXVB2T1CfrHyMXL','mta5odG1ntH5AfLxAgK','BwfW','Dg9vChbLCKnHC2u','vvPJvwO','uLD6uha','vfz1Dfe','mty4ntK0muHHsxfurq','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','iIbUB3qGzM91BMqGAw4G','lI9SB2DNzxi','BwvZC2fNzq','zM9YrwfJAa','z2v0rgLZDgLUy3rwywX1zxm','C2XPy2u','mtqWndC5nZrSwM9PtNO','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','Aw5MBW','C2v0','ChvZAa','z2v0','B3jHy2XL'];a0_0x4de8=function(){return _0x2e1253;};return a0_0x4de8();}const a0_0x103eee=a0_0x24c8;(function(_0x1019c0,_0x287f9d){const _0x3adc9f=a0_0x24c8,_0x528cd2=_0x1019c0();while(!![]){try{const _0x338bb8=parseInt(_0x3adc9f(0x1c8))/0x1+parseInt(_0x3adc9f(0x1f7))/0x2*(parseInt(_0x3adc9f(0x1fa))/0x3)+parseInt(_0x3adc9f(0x1e1))/0x4+-parseInt(_0x3adc9f(0x1e7))/0x5+parseInt(_0x3adc9f(0x1db))/0x6*(parseInt(_0x3adc9f(0x1fd))/0x7)+-parseInt(_0x3adc9f(0x1ed))/0x8*(parseInt(_0x3adc9f(0x1d0))/0x9)+parseInt(_0x3adc9f(0x1e5))/0xa*(parseInt(_0x3adc9f(0x1f6))/0xb);if(_0x338bb8===_0x287f9d)break;else _0x528cd2['push'](_0x528cd2['shift']());}catch(_0x17c977){_0x528cd2['push'](_0x528cd2['shift']());}}}(a0_0x4de8,0xf3ae4));const dbType=(process[a0_0x103eee(0x1e3)][a0_0x103eee(0x1f2)]||'postgresql')['toLowerCase']();function a0_0x24c8(_0x43aa23,_0x3eaba1){_0x43aa23=_0x43aa23-0x1c4;const _0x4de82f=a0_0x4de8();let _0x24c885=_0x4de82f[_0x43aa23];if(a0_0x24c8['SGIXQK']===undefined){var _0x30ba1b=function(_0x592313){const _0x5f3b0f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37c907='',_0x291b33='';for(let _0x426795=0x0,_0x4135f4,_0x1d55e7,_0x3ffcb2=0x0;_0x1d55e7=_0x592313['charAt'](_0x3ffcb2++);~_0x1d55e7&&(_0x4135f4=_0x426795%0x4?_0x4135f4*0x40+_0x1d55e7:_0x1d55e7,_0x426795++%0x4)?_0x37c907+=String['fromCharCode'](0xff&_0x4135f4>>(-0x2*_0x426795&0x6)):0x0){_0x1d55e7=_0x5f3b0f['indexOf'](_0x1d55e7);}for(let _0x5afd45=0x0,_0x22b764=_0x37c907['length'];_0x5afd45<_0x22b764;_0x5afd45++){_0x291b33+='%'+('00'+_0x37c907['charCodeAt'](_0x5afd45)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x291b33);};a0_0x24c8['AYiPnQ']=_0x30ba1b,a0_0x24c8['ZDtCJz']={},a0_0x24c8['SGIXQK']=!![];}const _0x31f5a0=_0x4de82f[0x0],_0x3e6fa1=_0x43aa23+_0x31f5a0,_0x1cb269=a0_0x24c8['ZDtCJz'][_0x3e6fa1];return!_0x1cb269?(_0x24c885=a0_0x24c8['AYiPnQ'](_0x24c885),a0_0x24c8['ZDtCJz'][_0x3e6fa1]=_0x24c885):_0x24c885=_0x1cb269,_0x24c885;}let executeQuery;if(dbType===a0_0x103eee(0x1d6)){const oracleDb=require(a0_0x103eee(0x1fb));executeQuery=(_0x4a215e,_0x93f6ec)=>oracleDb[a0_0x103eee(0x1f0)](_0x4a215e,_0x93f6ec);}else{if(dbType===a0_0x103eee(0x1e4)){const mysqlDb=require(a0_0x103eee(0x1e6));executeQuery=(_0xc4b3c3,_0x404af5)=>mysqlDb['executeQuery'](_0xc4b3c3,_0x404af5);}else executeQuery=require(a0_0x103eee(0x1ea))[a0_0x103eee(0x1f0)];}const {logger}=require(a0_0x103eee(0x1cb));class LookupResolver{constructor(){const _0x1d73f5=a0_0x103eee;this[_0x1d73f5(0x1ec)]=new Map();}[a0_0x103eee(0x1de)](){const _0x515531=a0_0x103eee,_0xddd193={'eUnAr':_0x515531(0x1c9),'udqNQ':_0x515531(0x1e2)};this['lookupCache'][_0x515531(0x1dc)](),logger['debug']({'event':_0xddd193['eUnAr']},_0xddd193['udqNQ']);}async['loadLookupTable'](_0x4fd51b,_0x41195d,_0x1ed39f){const _0x738927=a0_0x103eee,_0x102755={'ZVzmd':function(_0x293610,_0x44514b){return _0x293610!==_0x44514b;},'FbUAA':function(_0x3c17d0,_0x2cc716){return _0x3c17d0!==_0x2cc716;},'RWzPp':function(_0x44b851,_0x5330b2){return _0x44b851(_0x5330b2);},'euCfR':function(_0x250475,_0x2f1c32){return _0x250475(_0x2f1c32);}},_0xb6d678=_0x4fd51b+':'+_0x41195d+':'+_0x1ed39f;if(this[_0x738927(0x1ec)][_0x738927(0x1df)](_0xb6d678))return this['lookupCache']['get'](_0xb6d678);try{const _0x17c383=_0x738927(0x1f8)+_0x1ed39f+',\x20'+_0x41195d+_0x738927(0x1f9)+_0x4fd51b,_0x12f8eb=await executeQuery(_0x17c383),_0x1371f0=new Map();return _0x12f8eb['forEach'](_0x2cab45=>{const _0x12aac8=_0x738927,_0x461cc2=_0x102755['ZVzmd'](_0x2cab45[_0x41195d],undefined)?_0x2cab45[_0x41195d]:_0x2cab45[_0x41195d[_0x12aac8(0x1c4)]()],_0x56e17f=_0x102755['ZVzmd'](_0x2cab45[_0x1ed39f],undefined)?_0x2cab45[_0x1ed39f]:_0x2cab45[_0x1ed39f['toUpperCase']()];_0x102755[_0x12aac8(0x1e9)](_0x461cc2,null)&&_0x461cc2!==undefined&&(_0x1371f0['set'](_0x102755[_0x12aac8(0x1c6)](String,_0x461cc2)['toLowerCase']()['trim'](),_0x56e17f),_0x1371f0['set'](_0x102755['euCfR'](String,_0x461cc2)['trim'](),_0x56e17f));}),this['lookupCache'][_0x738927(0x1d3)](_0xb6d678,_0x1371f0),logger[_0x738927(0x1d2)]({'event':_0x738927(0x1f5),'table':_0x4fd51b,'column':_0x41195d,'count':_0x12f8eb['length']},'Lookup\x20table\x20loaded:\x20'+_0x4fd51b),_0x1371f0;}catch(_0x531e4b){logger['error']({'event':'lookup_table_load_error','table':_0x4fd51b,'error':_0x531e4b[_0x738927(0x1cc)]},_0x738927(0x1d1)+_0x4fd51b);throw _0x531e4b;}}['resolveLookupValue'](_0x2b7da4,_0x15e8fe){const _0x3ecef8=a0_0x103eee,_0xc46273={'KUBXa':function(_0x1c462c,_0x53e8b2){return _0x1c462c===_0x53e8b2;},'xHKet':function(_0x46a615,_0x31caa0){return _0x46a615===_0x31caa0;},'ZqOgb':function(_0x2627df,_0x409b67){return _0x2627df(_0x409b67);}};if(_0xc46273[_0x3ecef8(0x1d7)](_0x2b7da4,null)||_0x2b7da4===undefined||_0xc46273['xHKet'](_0x2b7da4,''))return null;const _0x21cd4e=_0xc46273['ZqOgb'](String,_0x2b7da4)['trim']();if(_0x15e8fe['has'](_0x21cd4e))return _0x15e8fe[_0x3ecef8(0x1d5)](_0x21cd4e);const _0x241dc5=_0x21cd4e[_0x3ecef8(0x1f1)]();if(_0x15e8fe['has'](_0x241dc5))return _0x15e8fe['get'](_0x241dc5);return null;}async['processLookupFields'](_0x1e9b6f,_0x342ba7){const _0x545a4a=a0_0x103eee,_0x39dc83={'TVutQ':function(_0x55bc38,_0x43ced7){return _0x55bc38===_0x43ced7;},'FChgG':_0x545a4a(0x1eb),'UZcUj':'Lookup\x20fields\x20processed'};if(!_0x342ba7||Object[_0x545a4a(0x1d8)](_0x342ba7)[_0x545a4a(0x1da)]===0x0)return{'processedRows':_0x1e9b6f,'errors':[]};const _0x4c9855=[],_0xa821fe=new Map();for(const [_0x34564d,_0x4cf319]of Object[_0x545a4a(0x1dd)](_0x342ba7)){const {lookupTable:_0xa1a993,lookupColumn:_0x4aadfd,lookupIdColumn:_0xd1b9ad}=_0x4cf319,_0x2a619b=_0xa1a993+':'+_0x4aadfd+':'+_0xd1b9ad;if(!_0xa821fe[_0x545a4a(0x1df)](_0x2a619b)){const _0x3b2d97=await this[_0x545a4a(0x1fc)](_0xa1a993,_0x4aadfd,_0xd1b9ad);_0xa821fe['set'](_0x2a619b,_0x3b2d97);}}const _0x4d28d2=_0x1e9b6f[_0x545a4a(0x1fe)]((_0xd8d05e,_0x5a9b41)=>{const _0x385d66=_0x545a4a,_0x598188={..._0xd8d05e};for(const [_0x846fea,_0x528556]of Object[_0x385d66(0x1dd)](_0x342ba7)){const {lookupTable:_0x426d03,lookupColumn:_0x1df208,lookupIdColumn:_0x3617fd,targetField:_0x4e1892,required:_0x1df85f}=_0x528556,_0x5d5134=_0x426d03+':'+_0x1df208+':'+_0x3617fd,_0x151fda=_0xa821fe['get'](_0x5d5134),_0x2956c7=_0xd8d05e[_0x846fea];if((_0x2956c7===null||_0x39dc83[_0x385d66(0x1c7)](_0x2956c7,undefined)||_0x2956c7==='')&&!_0x1df85f){_0x598188[_0x4e1892]=null;continue;}const _0x575c75=this[_0x385d66(0x1ee)](_0x2956c7,_0x151fda);_0x575c75!==null?_0x598188[_0x4e1892]=_0x575c75:(_0x1df85f&&_0x4c9855[_0x385d66(0x1d4)]({'rowIndex':_0x5a9b41,'field':_0x846fea,'value':_0x2956c7,'targetField':_0x4e1892,'lookupTable':_0x426d03,'message':'Value\x20\x22'+_0x2956c7+_0x385d66(0x1ca)+_0x426d03}),_0x598188[_0x4e1892]=null);}return _0x598188;});return logger['info']({'event':_0x39dc83['FChgG'],'totalRows':_0x1e9b6f['length'],'errorCount':_0x4c9855['length'],'lookupFieldCount':Object[_0x545a4a(0x1d8)](_0x342ba7)[_0x545a4a(0x1da)]},_0x39dc83[_0x545a4a(0x1c5)]),{'processedRows':_0x4d28d2,'errors':_0x4c9855};}[a0_0x103eee(0x1ce)](_0x16abf2,_0x1214c8){const _0x3fb365=a0_0x103eee,_0x3a2697={'Rntod':function(_0x39e695,_0xb0540e){return _0x39e695!==_0xb0540e;}},_0xd037e6=new Set();return _0x16abf2['forEach'](_0x5136e3=>{const _0x5e0faf=a0_0x24c8,_0x4c3069=_0x5136e3[_0x1214c8];_0x4c3069!==null&&_0x4c3069!==undefined&&_0x3a2697[_0x5e0faf(0x1d9)](_0x4c3069,'')&&_0xd037e6['add'](String(_0x4c3069)[_0x5e0faf(0x1f4)]());}),Array[_0x3fb365(0x1e8)](_0xd037e6);}async[a0_0x103eee(0x1f3)](_0x218ca7,_0x2548c4){const _0x12d673=a0_0x103eee,_0x417978={'yZbOY':function(_0x3db3ca,_0x296ae5){return _0x3db3ca!==_0x296ae5;},'NkAVS':function(_0x37253d,_0x4d2d83){return _0x37253d===_0x4d2d83;}};if(!_0x2548c4||Object[_0x12d673(0x1d8)](_0x2548c4)[_0x12d673(0x1da)]===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x495bb5=[],_0x24ddb1={};for(const [_0x332336,_0x11083f]of Object[_0x12d673(0x1dd)](_0x2548c4)){const {lookupTable:_0x559672,lookupColumn:_0xc480a1,lookupIdColumn:_0x15e5f5,required:_0x36aca7}=_0x11083f,_0x1ded6b=this['getDistinctValues'](_0x218ca7,_0x332336),_0x153ffd=await this[_0x12d673(0x1fc)](_0x559672,_0xc480a1,_0x15e5f5),_0x368917=[],_0x43b521=[];_0x1ded6b['forEach'](_0x18f357=>{const _0xe57175=_0x12d673,_0x551bf7=this[_0xe57175(0x1ee)](_0x18f357,_0x153ffd);_0x417978['yZbOY'](_0x551bf7,null)?_0x43b521[_0xe57175(0x1d4)](_0x18f357):_0x368917[_0xe57175(0x1d4)](_0x18f357);});if(_0x368917['length']>0x0&&_0x36aca7){_0x495bb5[_0x12d673(0x1d4)]({'field':_0x332336,'lookupTable':_0x559672,'invalidValues':_0x368917,'message':_0x368917[_0x12d673(0x1da)]+_0x12d673(0x1e0)+_0x559672});const _0xfb3ee1=[];_0x153ffd[_0x12d673(0x1cd)]((_0x56f3b7,_0x23cf06)=>{const _0x496432=_0x12d673;if(_0x23cf06===_0x23cf06[_0x496432(0x1f1)]())return;_0xfb3ee1[_0x496432(0x1d4)](_0x23cf06);}),_0x24ddb1[_0x332336]={'invalidValues':_0x368917,'availableValues':_0xfb3ee1[_0x12d673(0x1cf)](0x0,0x32)};}}return{'valid':_0x417978[_0x12d673(0x1ef)](_0x495bb5[_0x12d673(0x1da)],0x0),'errors':_0x495bb5,'suggestions':_0x24ddb1};}}module['exports']=new LookupResolver();
@@ -1 +1 @@
1
- function a0_0x3514(_0x301813,_0x555ec1){_0x301813=_0x301813-0xf0;const _0x35ca98=a0_0x35ca();let _0x3514cd=_0x35ca98[_0x301813];if(a0_0x3514['hNXNSX']===undefined){var _0x27c7e7=function(_0x544db6){const _0x52bb70='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x50da85='',_0x25fcd2='';for(let _0x4432bc=0x0,_0x2a276a,_0x43d6ab,_0x430a1a=0x0;_0x43d6ab=_0x544db6['charAt'](_0x430a1a++);~_0x43d6ab&&(_0x2a276a=_0x4432bc%0x4?_0x2a276a*0x40+_0x43d6ab:_0x43d6ab,_0x4432bc++%0x4)?_0x50da85+=String['fromCharCode'](0xff&_0x2a276a>>(-0x2*_0x4432bc&0x6)):0x0){_0x43d6ab=_0x52bb70['indexOf'](_0x43d6ab);}for(let _0x52374b=0x0,_0x34c632=_0x50da85['length'];_0x52374b<_0x34c632;_0x52374b++){_0x25fcd2+='%'+('00'+_0x50da85['charCodeAt'](_0x52374b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x25fcd2);};a0_0x3514['bslTlP']=_0x27c7e7,a0_0x3514['RvMfWi']={},a0_0x3514['hNXNSX']=!![];}const _0x50f20d=_0x35ca98[0x0],_0x5e2a21=_0x301813+_0x50f20d,_0xfdf853=a0_0x3514['RvMfWi'][_0x5e2a21];return!_0xfdf853?(_0x3514cd=a0_0x3514['bslTlP'](_0x3514cd),a0_0x3514['RvMfWi'][_0x5e2a21]=_0x3514cd):_0x3514cd=_0xfdf853,_0x3514cd;}const a0_0x43faf4=a0_0x3514;(function(_0x4ac048,_0x1aba1b){const _0x22becd=a0_0x3514,_0x5d75a0=_0x4ac048();while(!![]){try{const _0x35e8d7=-parseInt(_0x22becd(0x100))/0x1*(-parseInt(_0x22becd(0x103))/0x2)+parseInt(_0x22becd(0x11b))/0x3*(parseInt(_0x22becd(0x114))/0x4)+parseInt(_0x22becd(0x109))/0x5*(parseInt(_0x22becd(0xf6))/0x6)+parseInt(_0x22becd(0xf7))/0x7*(-parseInt(_0x22becd(0x11c))/0x8)+parseInt(_0x22becd(0x119))/0x9*(-parseInt(_0x22becd(0x10b))/0xa)+-parseInt(_0x22becd(0x10a))/0xb*(parseInt(_0x22becd(0xf9))/0xc)+parseInt(_0x22becd(0xfd))/0xd;if(_0x35e8d7===_0x1aba1b)break;else _0x5d75a0['push'](_0x5d75a0['shift']());}catch(_0x41b09f){_0x5d75a0['push'](_0x5d75a0['shift']());}}}(a0_0x35ca,0xcb052));const fs=require('fs')[a0_0x43faf4(0x10f)],path=require('path'),{logger}=require(a0_0x43faf4(0xf4));function a0_0x35ca(){const _0x4a36d9=['Aw5MBW','CMvWBgfJzq','mtKWndC4nJbOAujjBgS','Axnby3rPB25fBMfIBgvK','y2fJAgu','mND6rLf1zq','zxHWB3j0CW','BKPmAMC','mJi4mdG2BNfzBwjN','ywn0Aw9U','Bg9HzfbHEwXVywq','ugf5Bg9HzcbUB3qGzM91BMq6ia','Cgf5Bg9Hzf9SB2fKzwq','AgfZ','nJvmqMvot2y','mte4mJmYntfIvwP4wLG','odbXCMj2Dwy','Bg9HzfbHEwXVywrcEu5HBwu','Cgf5Bg9HzdO','BwvZC2fNzq','ChjVBwLZzxm','CgfYC2u','y29SDw1UrM9YBwf0CW','lMPZB24','CMvHzezPBgu','otm3ndq0ruvKwKrS','DxrMoa','Cgf5Bg9HzerPCG','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','z2v0','nJy0mdGZv3DkDMrk','C2v0','nKLpBuP2vG','ndaWvM5hD2T3','AM9PBG','wfDKCem','zgvIDwC','lI4VlI4VCgf5Bg9Hza','BujAuhq','lI9SB2DNzxi','DgfIBgvoyw1L','ntyXndK4D2Lssg1h','mtiZndy2A2D3whjW','yuPNswm','mtjPC09ozKG','zgf0yxrHyMXLC1f1zxj5'];a0_0x35ca=function(){return _0x4a36d9;};return a0_0x35ca();}class PayloadLoader{constructor(){const _0x5bbb9d=a0_0x43faf4;this[_0x5bbb9d(0x116)]=path[_0x5bbb9d(0x11d)](__dirname,_0x5bbb9d(0xf2)),this[_0x5bbb9d(0xff)]=new Map();}async[a0_0x43faf4(0x105)](_0x23aa7f,_0x227ec7){const _0x3f4f30=a0_0x43faf4,_0x320781={'mBZPt':_0x3f4f30(0x107),'XWdpC':'Payload\x20loaded\x20successfully','uzVfx':_0x3f4f30(0x117),'gLIRX':'Failed\x20to\x20load\x20payload'},_0x216866=_0x23aa7f+':'+_0x227ec7;if(this[_0x3f4f30(0xff)][_0x3f4f30(0x108)](_0x216866))return this[_0x3f4f30(0xff)]['get'](_0x216866);const _0x413e21=path['join'](this['payloadDir'],_0x23aa7f+'_'+_0x227ec7+_0x3f4f30(0x112));try{const _0x4b7841=await fs[_0x3f4f30(0x113)](_0x413e21,'utf8'),_0x2cc813=JSON[_0x3f4f30(0x110)](_0x4b7841);return this['cache'][_0x3f4f30(0x11a)](_0x216866,_0x2cc813),logger[_0x3f4f30(0xf1)]({'event':_0x320781[_0x3f4f30(0xf3)],'project':_0x23aa7f,'resource':_0x227ec7},_0x320781[_0x3f4f30(0xf0)]),_0x2cc813;}catch(_0x122dea){logger['error']({'event':_0x320781['uzVfx'],'project':_0x23aa7f,'resource':_0x227ec7,'error':_0x122dea['message']},_0x320781['gLIRX']);throw new Error(_0x3f4f30(0x106)+_0x23aa7f+'_'+_0x227ec7);}}async[a0_0x43faf4(0x10c)](_0x146db8){const _0x181736=a0_0x43faf4,_0x2cb7a7={'aJgIc':_0x181736(0x115)},_0x419d09=_0x181736(0x10d)+_0x146db8;if(this['cache'][_0x181736(0x108)](_0x419d09))return this['cache'][_0x181736(0x118)](_0x419d09);const _0x5384cc=path['join'](this[_0x181736(0x116)],_0x146db8+'.json');try{const _0x2443cc=await fs[_0x181736(0x113)](_0x5384cc,_0x2cb7a7[_0x181736(0xf8)]),_0x193ab6=JSON[_0x181736(0x110)](_0x2443cc);return this['cache'][_0x181736(0x11a)](_0x419d09,_0x193ab6),logger[_0x181736(0xf1)]({'event':'payload_loaded','payloadName':_0x146db8},'Payload\x20loaded\x20successfully\x20by\x20name'),_0x193ab6;}catch(_0x1e0728){logger['error']({'event':'payload_load_error','payloadName':_0x146db8,'error':_0x1e0728[_0x181736(0x10e)]},'Failed\x20to\x20load\x20payload\x20by\x20name');throw new Error(_0x181736(0x106)+_0x146db8);}}[a0_0x43faf4(0xfe)](_0x1b80b0,_0x1a2ecd){const _0x476f27=a0_0x43faf4,_0x248a36={'femrZ':function(_0x102126,_0x3a09c3){return _0x102126===_0x3a09c3;}};return _0x1b80b0[_0x476f27(0x104)]&&_0x248a36['femrZ'](_0x1b80b0['action'][_0x1a2ecd],!![]);}['getExportConfig'](_0x4863ee){const _0x47302b=a0_0x43faf4;return{'columns':_0x4863ee['fieldName']||[],'filename':_0x4863ee[_0x47302b(0xf5)][_0x47302b(0xfc)]('.','-')+'-export','datatablesQuery':_0x4863ee[_0x47302b(0xfa)]||null,'columnFormats':_0x4863ee[_0x47302b(0x111)]||null,'fieldLabels':_0x4863ee['fieldLabels']||null};}['clearCache'](){const _0x2fcb72=a0_0x43faf4,_0x511b48={'mAHQu':'payload_cache_cleared','nJLjg':'Payload\x20cache\x20cleared'};this[_0x2fcb72(0xff)]['clear'](),logger[_0x2fcb72(0xfb)]({'event':_0x511b48['mAHQu']},_0x511b48[_0x2fcb72(0x102)]);}}module[a0_0x43faf4(0x101)]=new PayloadLoader();
1
+ function a0_0x1309(){const _0x39e0a6=['zMLLBgrmywjLBhm','uKDYC3u','CgfYC2u','mtK2mNfkshLlEa','zxjYB3i','y2fJAgu','C2v0','mtuZnMP6yMjdrq','AM9PBG','CMvWBgfJzq','vKrWrgC','AgfZ','otmWodjLtKfyyLy','nJeWnJjXAhDStvm','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','mtyWExHsqK9j','mti5otaYndbNz2Lvufe','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','ugf5Bg9HzcbUB3qGzM91BMq6ia','ndyZmJa2qxLOANbv','zgvIDwC','mNDTvu9hsG','uLvvEui','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','s2jos2e','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','Bg9HzfbHEwXVywq','DxrMoa','mJy4odHdwwHQExC','mtyXmZm1mvPKAxf2Aa','DgfIBgvoyw1L','lI4VlI4VCgf5Bg9Hza','z2v0','Cgf5Bg9HzdO','mta5ndq0nZjoCKPrzfC','Cgf0Aa','lwv4Cg9YDa','mtbuy1r4DLC','Axnby3rPB25fBMfIBgvK','zgf0yxrHyMXLC1f1zxj5','Cgf5Bg9HzerPCG','Cgf5Bg9Hzf9SB2fKzwq'];a0_0x1309=function(){return _0x39e0a6;};return a0_0x1309();}function a0_0x5f00(_0xa84d2c,_0x29a8d6){_0xa84d2c=_0xa84d2c-0x8f;const _0x130922=a0_0x1309();let _0x5f005f=_0x130922[_0xa84d2c];if(a0_0x5f00['rljkyO']===undefined){var _0x4c2888=function(_0x3892ff){const _0x38878b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55d6b3='',_0x3caccd='';for(let _0x3f4ac8=0x0,_0x47741d,_0xb85064,_0x523ed2=0x0;_0xb85064=_0x3892ff['charAt'](_0x523ed2++);~_0xb85064&&(_0x47741d=_0x3f4ac8%0x4?_0x47741d*0x40+_0xb85064:_0xb85064,_0x3f4ac8++%0x4)?_0x55d6b3+=String['fromCharCode'](0xff&_0x47741d>>(-0x2*_0x3f4ac8&0x6)):0x0){_0xb85064=_0x38878b['indexOf'](_0xb85064);}for(let _0x5e143b=0x0,_0x352d38=_0x55d6b3['length'];_0x5e143b<_0x352d38;_0x5e143b++){_0x3caccd+='%'+('00'+_0x55d6b3['charCodeAt'](_0x5e143b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3caccd);};a0_0x5f00['gLOQNr']=_0x4c2888,a0_0x5f00['yUmauc']={},a0_0x5f00['rljkyO']=!![];}const _0x4dd46f=_0x130922[0x0],_0x17ac65=_0xa84d2c+_0x4dd46f,_0x2defd3=a0_0x5f00['yUmauc'][_0x17ac65];return!_0x2defd3?(_0x5f005f=a0_0x5f00['gLOQNr'](_0x5f005f),a0_0x5f00['yUmauc'][_0x17ac65]=_0x5f005f):_0x5f005f=_0x2defd3,_0x5f005f;}const a0_0x53057d=a0_0x5f00;(function(_0xb10685,_0x20d35e){const _0x2ba5d8=a0_0x5f00,_0x23fada=_0xb10685();while(!![]){try{const _0x1552dc=parseInt(_0x2ba5d8(0xaf))/0x1*(parseInt(_0x2ba5d8(0xa7))/0x2)+-parseInt(_0x2ba5d8(0x9f))/0x3*(parseInt(_0x2ba5d8(0xa1))/0x4)+parseInt(_0x2ba5d8(0xb7))/0x5*(parseInt(_0x2ba5d8(0xa5))/0x6)+parseInt(_0x2ba5d8(0xb4))/0x7+-parseInt(_0x2ba5d8(0xae))/0x8*(-parseInt(_0x2ba5d8(0x95))/0x9)+-parseInt(_0x2ba5d8(0xa2))/0xa+parseInt(_0x2ba5d8(0x9e))/0xb*(-parseInt(_0x2ba5d8(0x99))/0xc);if(_0x1552dc===_0x20d35e)break;else _0x23fada['push'](_0x23fada['shift']());}catch(_0x1e24c1){_0x23fada['push'](_0x23fada['shift']());}}}(a0_0x1309,0xd3d2b));const fs=require('fs')['promises'],path=require(a0_0x53057d(0xb5)),{logger}=require('./logger');class PayloadLoader{constructor(){const _0x5ab8a4=a0_0x53057d;this[_0x5ab8a4(0x90)]=path[_0x5ab8a4(0x9a)](__dirname,_0x5ab8a4(0xb1)),this['cache']=new Map();}async[a0_0x53057d(0xac)](_0x5562a4,_0x4d31cf){const _0xfc0bab=a0_0x53057d,_0x3935c3={'VDpDg':_0xfc0bab(0xab),'RUUyB':'payload_load_error'},_0xcba087=_0x5562a4+':'+_0x4d31cf;if(this['cache'][_0xfc0bab(0x9d)](_0xcba087))return this[_0xfc0bab(0x97)]['get'](_0xcba087);const _0xce3baf=path['join'](this['payloadDir'],_0x5562a4+'_'+_0x4d31cf+'.json');try{const _0x22ed1c=await fs['readFile'](_0xce3baf,_0xfc0bab(0xad)),_0x3acfe3=JSON[_0xfc0bab(0x94)](_0x22ed1c);return this[_0xfc0bab(0x97)]['set'](_0xcba087,_0x3acfe3),logger[_0xfc0bab(0xa6)]({'event':'payload_loaded','project':_0x5562a4,'resource':_0x4d31cf},_0x3935c3[_0xfc0bab(0x9c)]),_0x3acfe3;}catch(_0x198105){logger[_0xfc0bab(0x96)]({'event':_0x3935c3[_0xfc0bab(0xa8)],'project':_0x5562a4,'resource':_0x4d31cf,'error':_0x198105['message']},'Failed\x20to\x20load\x20payload');throw new Error(_0xfc0bab(0xa4)+_0x5562a4+'_'+_0x4d31cf);}}async['loadPayloadByName'](_0x2ee0e4){const _0x3353ba=a0_0x53057d,_0x41bfd1={'kRQgU':_0x3353ba(0xad),'odQEs':_0x3353ba(0x91),'KbNKa':'Payload\x20loaded\x20successfully\x20by\x20name','RGrsu':_0x3353ba(0xa0),'JNlvn':_0x3353ba(0xa3)},_0x54e293=_0x3353ba(0xb3)+_0x2ee0e4;if(this['cache'][_0x3353ba(0x9d)](_0x54e293))return this[_0x3353ba(0x97)][_0x3353ba(0xb2)](_0x54e293);const _0x4b47a0=path['join'](this['payloadDir'],_0x2ee0e4+'.json');try{const _0x2a9eef=await fs['readFile'](_0x4b47a0,_0x41bfd1['kRQgU']),_0x37bb4b=JSON[_0x3353ba(0x94)](_0x2a9eef);return this[_0x3353ba(0x97)][_0x3353ba(0x98)](_0x54e293,_0x37bb4b),logger[_0x3353ba(0xa6)]({'event':_0x41bfd1['odQEs'],'payloadName':_0x2ee0e4},_0x41bfd1[_0x3353ba(0xaa)]),_0x37bb4b;}catch(_0x3a6737){logger[_0x3353ba(0x96)]({'event':_0x41bfd1[_0x3353ba(0x93)],'payloadName':_0x2ee0e4,'error':_0x3a6737['message']},_0x41bfd1['JNlvn']);throw new Error(_0x3353ba(0xa4)+_0x2ee0e4);}}[a0_0x53057d(0xb8)](_0x369997,_0x2ea063){const _0x160f7d={'qOShH':function(_0x4a370d,_0x4a63a7){return _0x4a370d===_0x4a63a7;}};return _0x369997['action']&&_0x160f7d['qOShH'](_0x369997['action'][_0x2ea063],!![]);}['getExportConfig'](_0x33341b){const _0x120643=a0_0x53057d;return{'columns':_0x33341b['fieldName']||[],'filename':_0x33341b[_0x120643(0xb0)][_0x120643(0x9b)]('.','-')+_0x120643(0xb6),'datatablesQuery':_0x33341b[_0x120643(0x8f)]||null,'columnFormats':_0x33341b['columnFormats']||null,'fieldLabels':_0x33341b[_0x120643(0x92)]||null};}['clearCache'](){const _0x23bac1=a0_0x53057d;this[_0x23bac1(0x97)]['clear'](),logger['info']({'event':'payload_cache_cleared'},_0x23bac1(0xa9));}}module['exports']=new PayloadLoader();
@@ -1 +1 @@
1
- 'use strict';function a0_0x5941(_0x560f97,_0x593df0){_0x560f97=_0x560f97-0x97;var _0x163054=a0_0x1630();var _0x5941bf=_0x163054[_0x560f97];if(a0_0x5941['UfGyZF']===undefined){var _0x381225=function(_0x29dc26){var _0x4afc69='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x52dd9a='',_0xe7e898='';for(var _0x4c6b5b=0x0,_0x146eaf,_0x3c5244,_0x1efa11=0x0;_0x3c5244=_0x29dc26['charAt'](_0x1efa11++);~_0x3c5244&&(_0x146eaf=_0x4c6b5b%0x4?_0x146eaf*0x40+_0x3c5244:_0x3c5244,_0x4c6b5b++%0x4)?_0x52dd9a+=String['fromCharCode'](0xff&_0x146eaf>>(-0x2*_0x4c6b5b&0x6)):0x0){_0x3c5244=_0x4afc69['indexOf'](_0x3c5244);}for(var _0x35de40=0x0,_0x2a3b0e=_0x52dd9a['length'];_0x35de40<_0x2a3b0e;_0x35de40++){_0xe7e898+='%'+('00'+_0x52dd9a['charCodeAt'](_0x35de40)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xe7e898);};a0_0x5941['ZdQpHx']=_0x381225,a0_0x5941['eDtDJG']={},a0_0x5941['UfGyZF']=!![];}var _0x5e89b7=_0x163054[0x0],_0x4ddc87=_0x560f97+_0x5e89b7,_0xa6c314=a0_0x5941['eDtDJG'][_0x4ddc87];return!_0xa6c314?(_0x5941bf=a0_0x5941['ZdQpHx'](_0x5941bf),a0_0x5941['eDtDJG'][_0x4ddc87]=_0x5941bf):_0x5941bf=_0xa6c314,_0x5941bf;}function a0_0x1630(){var _0xa0ad90=['ndHSA2XpuMe','n0rmvhzoCW','nZeYuu5Mr2HJ','ntiXnJmYmJbeyw5fr1y','mLbXrKvbzW','nZa1nJy4vxHzDhbJ','ndm1otG0nNPrrffRva','Dg9ju09tDhjPBMC','nJq3nJm3q1nytKXo','nZCYntzWDwL2yw8','zxHWB3j0CW','ndeZotbqCKDQqKG','ndeZotbsquvsC1C','mZCXoezOB1fkva'];a0_0x1630=function(){return _0xa0ad90;};return a0_0x1630();}var a0_0x135881=a0_0x5941;(function(_0x555d38,_0x5f03ff){var _0x16a953=a0_0x5941,_0x11b926=_0x555d38();while(!![]){try{var _0x3bb84c=parseInt(_0x16a953(0xa2))/0x1*(-parseInt(_0x16a953(0xa1))/0x2)+parseInt(_0x16a953(0x97))/0x3+-parseInt(_0x16a953(0x9d))/0x4*(parseInt(_0x16a953(0x9a))/0x5)+-parseInt(_0x16a953(0xa3))/0x6*(parseInt(_0x16a953(0x9e))/0x7)+-parseInt(_0x16a953(0x9f))/0x8*(parseInt(_0x16a953(0x98))/0x9)+parseInt(_0x16a953(0x9b))/0xa*(-parseInt(_0x16a953(0x9c))/0xb)+parseInt(_0x16a953(0xa0))/0xc;if(_0x3bb84c===_0x5f03ff)break;else _0x11b926['push'](_0x11b926['shift']());}catch(_0x45be48){_0x11b926['push'](_0x11b926['shift']());}}}(a0_0x1630,0xd3f73));function createResponse(_0x121990,_0xf0d8c0,_0x283072=null){var _0x16a940=a0_0x5941;return{'success':!![],'statusCode':_0x121990,'message':_0xf0d8c0,'data':_0x283072,'timestamp':new Date()[_0x16a940(0xa4)]()};}function createError(_0x4d11a5,_0x57b5cc,_0x32b623=null){return{'success':![],'statusCode':_0x4d11a5,'message':_0x57b5cc,'data':_0x32b623,'timestamp':new Date()['toISOString']()};}function createValidationError(_0x4da09c,_0x346c2e){var _0x1daa91=a0_0x5941;return{'success':![],'statusCode':0x190,'message':_0x4da09c,'data':{'errors':_0x346c2e},'timestamp':new Date()[_0x1daa91(0xa4)]()};}module[a0_0x135881(0x99)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
1
+ 'use strict';var a0_0x51613e=a0_0x3a33;(function(_0x48bd66,_0x3999e7){var _0x41b414=a0_0x3a33,_0x5bfbdf=_0x48bd66();while(!![]){try{var _0xb819d3=-parseInt(_0x41b414(0xf8))/0x1*(parseInt(_0x41b414(0xf9))/0x2)+-parseInt(_0x41b414(0xf2))/0x3+-parseInt(_0x41b414(0xf7))/0x4+-parseInt(_0x41b414(0xfd))/0x5*(parseInt(_0x41b414(0xfc))/0x6)+parseInt(_0x41b414(0xfa))/0x7+parseInt(_0x41b414(0xf4))/0x8+parseInt(_0x41b414(0xf6))/0x9*(parseInt(_0x41b414(0xf5))/0xa);if(_0xb819d3===_0x3999e7)break;else _0x5bfbdf['push'](_0x5bfbdf['shift']());}catch(_0x2dca00){_0x5bfbdf['push'](_0x5bfbdf['shift']());}}}(a0_0x5e15,0x4ab8f));function createResponse(_0x425131,_0x9bdcf,_0x35b813=null){var _0x40cf2f=a0_0x3a33;return{'success':!![],'statusCode':_0x425131,'message':_0x9bdcf,'data':_0x35b813,'timestamp':new Date()[_0x40cf2f(0xfb)]()};}function a0_0x5e15(){var _0x2b532f=['nty0mdKZvMXMBNzk','zxHWB3j0CW','nda5ntaXnKPzuMfzAa','mtbeEwHzELu','mJi3ntGZvLD6v2zn','ndy0mZi4q1Hbuuvo','nJeZvvDOyvrR','mJbpqwv6B08','nZa3mZqZAfbctujw','Dg9ju09tDhjPBMC','nKD4Cufpva','mta5ntm1sM9Xv0v1'];a0_0x5e15=function(){return _0x2b532f;};return a0_0x5e15();}function createError(_0x394079,_0xfb90e3,_0x1a4060=null){var _0x3c7034=a0_0x3a33;return{'success':![],'statusCode':_0x394079,'message':_0xfb90e3,'data':_0x1a4060,'timestamp':new Date()[_0x3c7034(0xfb)]()};}function a0_0x3a33(_0x4ddd2e,_0x2c9efa){_0x4ddd2e=_0x4ddd2e-0xf2;var _0x5e157b=a0_0x5e15();var _0x3a3331=_0x5e157b[_0x4ddd2e];if(a0_0x3a33['MvFkuT']===undefined){var _0x4cb0b3=function(_0x486dfc){var _0x273036='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x2d09bb='',_0x27a4d9='';for(var _0x7d9605=0x0,_0x5889eb,_0x329ea6,_0x2b03ca=0x0;_0x329ea6=_0x486dfc['charAt'](_0x2b03ca++);~_0x329ea6&&(_0x5889eb=_0x7d9605%0x4?_0x5889eb*0x40+_0x329ea6:_0x329ea6,_0x7d9605++%0x4)?_0x2d09bb+=String['fromCharCode'](0xff&_0x5889eb>>(-0x2*_0x7d9605&0x6)):0x0){_0x329ea6=_0x273036['indexOf'](_0x329ea6);}for(var _0x3988be=0x0,_0x209e3e=_0x2d09bb['length'];_0x3988be<_0x209e3e;_0x3988be++){_0x27a4d9+='%'+('00'+_0x2d09bb['charCodeAt'](_0x3988be)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x27a4d9);};a0_0x3a33['yaVpcn']=_0x4cb0b3,a0_0x3a33['umhiQk']={},a0_0x3a33['MvFkuT']=!![];}var _0x391101=_0x5e157b[0x0],_0x24d4a3=_0x4ddd2e+_0x391101,_0x3684a1=a0_0x3a33['umhiQk'][_0x24d4a3];return!_0x3684a1?(_0x3a3331=a0_0x3a33['yaVpcn'](_0x3a3331),a0_0x3a33['umhiQk'][_0x24d4a3]=_0x3a3331):_0x3a3331=_0x3684a1,_0x3a3331;}function createValidationError(_0x74d610,_0x2c02c0){return{'success':![],'statusCode':0x190,'message':_0x74d610,'data':{'errors':_0x2c02c0},'timestamp':new Date()['toISOString']()};}module[a0_0x51613e(0xf3)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
@@ -1 +1 @@
1
- const a0_0x1000ac=a0_0x2eb6;(function(_0x23d1e3,_0x259111){const _0x535a58=a0_0x2eb6,_0x1204c7=_0x23d1e3();while(!![]){try{const _0xf0fce2=-parseInt(_0x535a58(0x1b6))/0x1+parseInt(_0x535a58(0x1cd))/0x2*(-parseInt(_0x535a58(0x1cc))/0x3)+-parseInt(_0x535a58(0x1b5))/0x4*(parseInt(_0x535a58(0x1a3))/0x5)+-parseInt(_0x535a58(0x1be))/0x6+-parseInt(_0x535a58(0x1a8))/0x7*(parseInt(_0x535a58(0x1c9))/0x8)+-parseInt(_0x535a58(0x1b0))/0x9+parseInt(_0x535a58(0x1bb))/0xa*(parseInt(_0x535a58(0x1ae))/0xb);if(_0xf0fce2===_0x259111)break;else _0x1204c7['push'](_0x1204c7['shift']());}catch(_0x333000){_0x1204c7['push'](_0x1204c7['shift']());}}}(a0_0x463a,0xd9f76),require('dotenv')['config']());const amqp=require(a0_0x1000ac(0x1c2)),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process['env'][a0_0x1000ac(0x1c7)],EXCHANGE=process['env'][a0_0x1000ac(0x1a9)],ROUTING_KEY=process[a0_0x1000ac(0x1ca)]['RABBITMQ_ROUTING_KEY'],QUEUE=process['env']['RABBITMQ_QUEUE'];async function createConnection(){const _0x93ae66=a0_0x1000ac,_0x38e511={'LFVMx':function(_0x59e4ca,_0x42eaae){return _0x59e4ca(_0x42eaae);}};try{const _0x9f0403=await amqp['connect'](RABBITMQ_URL);return console['log']('['+_0x38e511[_0x93ae66(0x1bf)](formatDate,new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x9f0403;}catch(_0x39a0ea){console['error']('['+formatDate(new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x39a0ea[_0x93ae66(0x1a2)]);throw _0x39a0ea;}}async function createChannel(_0x18be19){const _0x426c62=a0_0x1000ac;try{const _0x478147=await _0x18be19[_0x426c62(0x1ad)]();return console['log']('['+formatDate(new Date())+_0x426c62(0x1c4)),_0x478147;}catch(_0xd492f7){console[_0x426c62(0x1c8)]('['+formatDate(new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0xd492f7['message']);throw _0xd492f7;}}function a0_0x2eb6(_0xda239e,_0x5f4e60){_0xda239e=_0xda239e-0x19f;const _0x463a25=a0_0x463a();let _0x2eb65f=_0x463a25[_0xda239e];if(a0_0x2eb6['aebaGu']===undefined){var _0x512e84=function(_0x1e9998){const _0x3020bf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xf7c9c0='',_0x2cc0c0='';for(let _0xc85604=0x0,_0x2f1f89,_0x200646,_0x1baf02=0x0;_0x200646=_0x1e9998['charAt'](_0x1baf02++);~_0x200646&&(_0x2f1f89=_0xc85604%0x4?_0x2f1f89*0x40+_0x200646:_0x200646,_0xc85604++%0x4)?_0xf7c9c0+=String['fromCharCode'](0xff&_0x2f1f89>>(-0x2*_0xc85604&0x6)):0x0){_0x200646=_0x3020bf['indexOf'](_0x200646);}for(let _0x592eed=0x0,_0x414b50=_0xf7c9c0['length'];_0x592eed<_0x414b50;_0x592eed++){_0x2cc0c0+='%'+('00'+_0xf7c9c0['charCodeAt'](_0x592eed)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2cc0c0);};a0_0x2eb6['EMYFRy']=_0x512e84,a0_0x2eb6['txZsFk']={},a0_0x2eb6['aebaGu']=!![];}const _0x46ed3a=_0x463a25[0x0],_0x4d5dfe=_0xda239e+_0x46ed3a,_0x274d5e=a0_0x2eb6['txZsFk'][_0x4d5dfe];return!_0x274d5e?(_0x2eb65f=a0_0x2eb6['EMYFRy'](_0x2eb65f),a0_0x2eb6['txZsFk'][_0x4d5dfe]=_0x2eb65f):_0x2eb65f=_0x274d5e,_0x2eb65f;}async function setupInfrastructure(_0x42f3ba){const _0x1ad1a9=a0_0x1000ac,_0x9af6b6={'emWKO':_0x1ad1a9(0x1bd),'FjnPD':function(_0x3a4dc2,_0x5bee0e){return _0x3a4dc2(_0x5bee0e);},'LEbBf':function(_0x387ccc,_0x3703e9){return _0x387ccc(_0x3703e9);},'yYGml':function(_0x5b8398,_0x25e930){return _0x5b8398===_0x25e930;},'CyzkT':'created/ready','RiUdQ':function(_0x4795b2,_0x577ae1){return _0x4795b2(_0x577ae1);},'PZtOu':_0x1ad1a9(0x1c3),'nFTHy':_0x1ad1a9(0x1ba)};try{await _0x42f3ba['assertExchange'](_0x9af6b6['emWKO'],'direct',{'durable':!![],'autoDelete':![]}),console['log']('['+_0x9af6b6['FjnPD'](formatDate,new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x43b26c){console['error']('['+formatDate(new Date())+_0x1ad1a9(0x1bc),_0x43b26c['message']);throw _0x43b26c;}try{await _0x42f3ba[_0x1ad1a9(0x1b1)](EXCHANGE,'direct',{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+']\x20Exchange\x20'+EXCHANGE+_0x1ad1a9(0x1c0));}catch(_0x2b9e11){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x2b9e11[_0x1ad1a9(0x1a2)]);throw _0x2b9e11;}const _0x580b23=ROUTING_KEY+'_retry';try{const _0x131c63={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x42f3ba['assertQueue'](_0x580b23,_0x131c63),console['log']('['+formatDate(new Date())+_0x1ad1a9(0x1b3)+_0x580b23+_0x1ad1a9(0x1c0)),await _0x42f3ba[_0x1ad1a9(0x19f)](_0x580b23,_0x9af6b6['emWKO'],ROUTING_KEY),console[_0x1ad1a9(0x1a6)]('['+_0x9af6b6[_0x1ad1a9(0x1a4)](formatDate,new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+_0x1ad1a9(0x1af));}catch(_0x55ee2d){console['error']('['+_0x9af6b6['LEbBf'](formatDate,new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x55ee2d['message']);throw _0x55ee2d;}try{const _0x6a712b={'durable':!![],'arguments':{'x-dead-letter-exchange':'retry-exchange','x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x349be3=await _0x42f3ba['assertQueue'](QUEUE,_0x6a712b);console[_0x1ad1a9(0x1a6)]('['+_0x9af6b6[_0x1ad1a9(0x1a4)](formatDate,new Date())+_0x1ad1a9(0x1b2)+QUEUE+'\x20'+(_0x9af6b6[_0x1ad1a9(0x1a1)](_0x349be3['queue'],QUEUE)?_0x9af6b6[_0x1ad1a9(0x1ab)]:'found')+_0x1ad1a9(0x1aa)),await _0x42f3ba[_0x1ad1a9(0x19f)](QUEUE,EXCHANGE,ROUTING_KEY),console[_0x1ad1a9(0x1a6)]('['+_0x9af6b6[_0x1ad1a9(0x1b7)](formatDate,new Date())+_0x1ad1a9(0x1ac)+EXCHANGE+_0x1ad1a9(0x1cb)+QUEUE+'\x20('+ROUTING_KEY+_0x1ad1a9(0x1b9));}catch(_0xb5f857){if(_0xb5f857[_0x1ad1a9(0x1a2)]['includes'](_0x9af6b6['PZtOu'])&&_0xb5f857['message'][_0x1ad1a9(0x1b4)](_0x9af6b6[_0x1ad1a9(0x1a5)]))console['error']('\x0a['+formatDate(new Date())+_0x1ad1a9(0x1c6)+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console['error'](_0x1ad1a9(0x1b8)+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console['error'](_0x1ad1a9(0x1a0)),process['exit'](0x1);else{console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0xb5f857[_0x1ad1a9(0x1a2)]);throw _0xb5f857;}}}catch(_0x3569a6){if(!_0x3569a6['message']['includes'](_0x9af6b6[_0x1ad1a9(0x1a7)])){console['error']('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x3569a6[_0x1ad1a9(0x1a2)]);throw _0x3569a6;}process[_0x1ad1a9(0x1c1)](0x1);}}function a0_0x463a(){const _0x2d8712=['ignYzwf0zwq','mZm4mJq2mvfgt0nWAa','yxnZzxj0rxHJAgfUz2u','xsbrDwv1zsa','xsbszxrYEsbXDwv1zsa','Aw5JBhvKzxm','mtG5nteYBvbpv21Y','otm2nJe0DwzcrxPv','uMLvzfe','uxvLDwuG','ksbJCMvHDgvK','Ec1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEq','mtKWu0TJDe14','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','CMv0CNKTzxHJAgfUz2u','otC2nJi2Au9LqwPr','tezwtxG','ignYzwf0zwqVCMvHzhK','zxHPDa','yw1XCgXPyG','Aw5LCxvPDMfSzw50igfYzW','xsbsywjIAxrnusbJAgfUBMvSignYzwf0zwqGC3vJy2vZC2z1BgX5','Awj5DKG','xsbfuLjpuJOGuxvLDwuG','uKfcqKLutvfFvvjm','zxjYB3i','nJa0oduYogXoz25HqG','zw52','ic0+ia','owXhCxnIrq','oda0ode0CMn4uhzo','yMLUzff1zxvL','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG','EvLhBwW','BwvZC2fNzq','mJbXCxrvywe','tevIqMy','BKzushK','Bg9N','ufP0t3u','n0DAuuLAsW','uKfcqKLutvfFrvHdsefor0u','ihDPDgGGreXy','q3L6A1q','xsbcAw5KAw5Nia','y3jLyxrLq2HHBM5LBa','mJyXnZmWn1voBujdua'];a0_0x463a=function(){return _0x2d8712;};return a0_0x463a();}async function closeConnection(_0x3300a6){const _0x485937=a0_0x1000ac,_0x599723={'ibyvH':function(_0x2bb664,_0x5a9253){return _0x2bb664(_0x5a9253);}};if(_0x3300a6)try{await _0x3300a6['close'](),console['log']('['+_0x599723[_0x485937(0x1c5)](formatDate,new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x5f24ee){console[_0x485937(0x1c8)]('['+_0x599723['ibyvH'](formatDate,new Date())+']\x20Failed\x20to\x20close\x20RabbitMQ\x20connection:\x20'+_0x5f24ee['message']);}}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
1
+ const a0_0x4ad7db=a0_0x3fdc;(function(_0x727b80,_0x105917){const _0x35eb34=a0_0x3fdc,_0x24ff5b=_0x727b80();while(!![]){try{const _0x6b6717=-parseInt(_0x35eb34(0x89))/0x1*(parseInt(_0x35eb34(0x8a))/0x2)+parseInt(_0x35eb34(0x73))/0x3+parseInt(_0x35eb34(0x9a))/0x4+-parseInt(_0x35eb34(0x92))/0x5+parseInt(_0x35eb34(0x7d))/0x6*(-parseInt(_0x35eb34(0x9d))/0x7)+-parseInt(_0x35eb34(0x91))/0x8*(parseInt(_0x35eb34(0x7e))/0x9)+-parseInt(_0x35eb34(0x88))/0xa*(-parseInt(_0x35eb34(0x8f))/0xb);if(_0x6b6717===_0x105917)break;else _0x24ff5b['push'](_0x24ff5b['shift']());}catch(_0x2e68b9){_0x24ff5b['push'](_0x24ff5b['shift']());}}}(a0_0x9b06,0x48262),require(a0_0x4ad7db(0x95))[a0_0x4ad7db(0x81)]());const amqp=require('amqplib'),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process[a0_0x4ad7db(0x79)]['RABBITMQ_URL'],EXCHANGE=process['env']['RABBITMQ_EXCHANGE'],ROUTING_KEY=process[a0_0x4ad7db(0x79)]['RABBITMQ_ROUTING_KEY'],QUEUE=process[a0_0x4ad7db(0x79)][a0_0x4ad7db(0x77)];async function createConnection(){const _0x25a3d1=a0_0x4ad7db,_0x2000a6={'cNQUu':function(_0x484ed5,_0x76a23){return _0x484ed5(_0x76a23);}};try{const _0x401452=await amqp['connect'](RABBITMQ_URL);return console['log']('['+_0x2000a6['cNQUu'](formatDate,new Date())+_0x25a3d1(0x7b)),_0x401452;}catch(_0x235a5c){console['error']('['+formatDate(new Date())+_0x25a3d1(0x85)+_0x235a5c['message']);throw _0x235a5c;}}async function createChannel(_0x1ff0ac){const _0x5aedb5=a0_0x4ad7db,_0x12db40={'fpNSJ':function(_0x408af8,_0x5a3efc){return _0x408af8(_0x5a3efc);},'dJbuW':function(_0xf2d186,_0x281d63){return _0xf2d186(_0x281d63);}};try{const _0x29fce0=await _0x1ff0ac['createChannel']();return console[_0x5aedb5(0x83)]('['+_0x12db40[_0x5aedb5(0x97)](formatDate,new Date())+_0x5aedb5(0x72)),_0x29fce0;}catch(_0x114cba){console[_0x5aedb5(0x8c)]('['+_0x12db40['dJbuW'](formatDate,new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0x114cba[_0x5aedb5(0x7a)]);throw _0x114cba;}}async function setupInfrastructure(_0x4c0ae8){const _0x562c4d=a0_0x4ad7db,_0x268b14={'TLbxl':'retry-exchange','DAVRR':function(_0x3cabe3,_0x6283b0){return _0x3cabe3(_0x6283b0);},'djpUj':function(_0x22610d,_0x5742aa){return _0x22610d(_0x5742aa);},'uYiwX':_0x562c4d(0x76),'asRLE':_0x562c4d(0x87),'fDvJT':'x-dead-letter-routing-key','Kchye':function(_0x1f6cfd,_0x5884f6){return _0x1f6cfd(_0x5884f6);}};try{await _0x4c0ae8['assertExchange'](_0x268b14[_0x562c4d(0x78)],'direct',{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+_0x562c4d(0x93));}catch(_0x7a2223){console['error']('['+formatDate(new Date())+_0x562c4d(0x75),_0x7a2223['message']);throw _0x7a2223;}try{await _0x4c0ae8[_0x562c4d(0x7f)](EXCHANGE,'direct',{'durable':!![],'autoDelete':![]}),console['log']('['+_0x268b14[_0x562c4d(0x7c)](formatDate,new Date())+_0x562c4d(0x99)+EXCHANGE+'\x20created/ready');}catch(_0x2152f6){console['error']('['+formatDate(new Date())+_0x562c4d(0x9c)+EXCHANGE+':',_0x2152f6[_0x562c4d(0x7a)]);throw _0x2152f6;}const _0x160736=ROUTING_KEY+'_retry';try{const _0x163644={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x4c0ae8['assertQueue'](_0x160736,_0x163644),console[_0x562c4d(0x83)]('['+_0x268b14['DAVRR'](formatDate,new Date())+_0x562c4d(0x98)+_0x160736+'\x20created/ready'),await _0x4c0ae8[_0x562c4d(0x80)](_0x160736,_0x268b14[_0x562c4d(0x78)],ROUTING_KEY),console['log']('['+_0x268b14[_0x562c4d(0x86)](formatDate,new Date())+_0x562c4d(0x8b)+ROUTING_KEY+_0x562c4d(0x9b));}catch(_0x397ed8){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x397ed8['message']);throw _0x397ed8;}try{const _0x159753={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x268b14[_0x562c4d(0x78)],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x5a2af7=await _0x4c0ae8['assertQueue'](QUEUE,_0x159753);console[_0x562c4d(0x83)]('['+formatDate(new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x5a2af7['queue']===QUEUE?_0x268b14[_0x562c4d(0x84)]:'found')+'\x20with\x20DLX'),await _0x4c0ae8['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+_0x268b14['DAVRR'](formatDate,new Date())+']\x20Binding\x20'+EXCHANGE+_0x562c4d(0x82)+QUEUE+'\x20('+ROUTING_KEY+_0x562c4d(0x9e));}catch(_0x378c7e){if(_0x378c7e[_0x562c4d(0x7a)]['includes'](_0x268b14['asRLE'])&&_0x378c7e['message']['includes'](_0x268b14['fDvJT']))console['error']('\x0a['+formatDate(new Date())+_0x562c4d(0x8d)+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console['error'](_0x562c4d(0x71)+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console['error']('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process[_0x562c4d(0x90)](0x1);else{console['error']('['+_0x268b14[_0x562c4d(0x74)](formatDate,new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x378c7e['message']);throw _0x378c7e;}}}catch(_0x591571){if(!_0x591571[_0x562c4d(0x7a)]['includes']('inequivalent\x20arg')){console[_0x562c4d(0x8c)]('['+_0x268b14['DAVRR'](formatDate,new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x591571[_0x562c4d(0x7a)]);throw _0x591571;}process['exit'](0x1);}}function a0_0x3fdc(_0x172dba,_0x48ec9b){_0x172dba=_0x172dba-0x71;const _0x9b06bc=a0_0x9b06();let _0x3fdc65=_0x9b06bc[_0x172dba];if(a0_0x3fdc['siuWxF']===undefined){var _0x205dbc=function(_0x65daaf){const _0x3185d8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3d03bf='',_0x2208f3='';for(let _0x39822a=0x0,_0x2e5f44,_0x1970ab,_0x30090a=0x0;_0x1970ab=_0x65daaf['charAt'](_0x30090a++);~_0x1970ab&&(_0x2e5f44=_0x39822a%0x4?_0x2e5f44*0x40+_0x1970ab:_0x1970ab,_0x39822a++%0x4)?_0x3d03bf+=String['fromCharCode'](0xff&_0x2e5f44>>(-0x2*_0x39822a&0x6)):0x0){_0x1970ab=_0x3185d8['indexOf'](_0x1970ab);}for(let _0x35289a=0x0,_0x4639d9=_0x3d03bf['length'];_0x35289a<_0x4639d9;_0x35289a++){_0x2208f3+='%'+('00'+_0x3d03bf['charCodeAt'](_0x35289a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2208f3);};a0_0x3fdc['yfkwvW']=_0x205dbc,a0_0x3fdc['CFyBVx']={},a0_0x3fdc['siuWxF']=!![];}const _0xd02df3=_0x9b06bc[0x0],_0x538537=_0x172dba+_0xd02df3,_0x477af7=a0_0x3fdc['CFyBVx'][_0x538537];return!_0x477af7?(_0x3fdc65=a0_0x3fdc['yfkwvW'](_0x3fdc65),a0_0x3fdc['CFyBVx'][_0x538537]=_0x3fdc65):_0x3fdc65=_0x477af7,_0x3fdc65;}function a0_0x9b06(){const _0x85ac55=['xsbszxrYEsbXDwv1zsa','xsbfEgnOyw5Nzsa','mtGZndm4ogPAzgL1vG','ignYzwf0zwq','xsbfCNjVCIbJCMvHDgLUzYbLEgnOyw5Nzsa','mZuXodGXnMrWvLrJra','ksbJCMvHDgvK','uxvLDwuG','xsbsywjIAxrnusbJAgfUBMvSignYzwf0zwqGC3vJy2vZC2z1BgX5','mta5nZuYnK9TzLrRBa','s2nOEwu','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','y3jLyxrLzc9YzwfKEq','uKfcqKLutvfFuvvfvuu','veXIEgW','zw52','BwvZC2fNzq','xsbtDwnJzxnZzNvSBhKGy29UBMvJDgvKihrVifjHyMjPDe1r','refwuLi','nLz1y3HpqG','nZq3tMTuz0rp','yxnZzxj0rxHJAgfUz2u','yMLUzff1zxvL','y29UzMLN','ic0+ia','Bg9N','DvLPD1G','xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','zgPWvwO','Aw5LCxvPDMfSzw50igfYzW','ndyYmtC5mgnZt0PmuW','mZGWm0HiAxLora','mtiYz292qvLV','xsbszxrYEsbIAw5KAw5NigzVCIa','zxjYB3i','xsbfuLjpuJOGuxvLDwuG','y2XVC2u','mtfQEhvwBM0','zxHPDa','mJm0ndHPt2vKru0','nJu3nJbOvezZDwu','xsbszxrYEsbLEgnOyw5NzsbJCMvHDgvKl3jLywr5','xsbsywjIAxrnusbJB25Uzwn0Aw9UignSB3nLza','zg90zw52','zxHWB3j0CW','zNbou0O'];a0_0x9b06=function(){return _0x85ac55;};return a0_0x9b06();}async function closeConnection(_0x3bd0ae){const _0x190bc3=a0_0x4ad7db;if(_0x3bd0ae)try{await _0x3bd0ae[_0x190bc3(0x8e)](),console['log']('['+formatDate(new Date())+_0x190bc3(0x94));}catch(_0x57eaa5){console[_0x190bc3(0x8c)]('['+formatDate(new Date())+']\x20Failed\x20to\x20close\x20RabbitMQ\x20connection:\x20'+_0x57eaa5[_0x190bc3(0x7a)]);}}module[a0_0x4ad7db(0x96)]={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
@@ -1 +1 @@
1
- function a0_0x1f9b(){const _0x3ccf98=['mtm3mtbIBvjcvKe','mJq1ota4nKLcuxfmua','z2v0q2XPzw50','y29UBMvJDa','mty5odK2Dwf5vMj0','CKnxyNC','zw52','zM9Yy2veAxnJB25Uzwn0','mtGWmZG2mgffyuLOqW','Aw9YzwrPCW','zxHWB3j0CW','mJqZweT0DKDR','uKvesvnFueftu1DpuKq','AxndB25Uzwn0zwq','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','y2XPzw50','qwnxuMC','AKPJqKi','mtK1nJiYogjzwKnXza','uKvesvnFue9sva','BwvZC2fNzq','rhnbqw4','y2XVC2u','uKvesvnFse9tva','zgLZy29UBMvJDa','mZmZnta1C2fdtNnw','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','mJK0ntyXrhnPt2Ti','uKvesvnFrei','CxvPDa','CMvKAxnFy29UBMvJDgvK','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','ntbtteXWuLC'];a0_0x1f9b=function(){return _0x3ccf98;};return a0_0x1f9b();}const a0_0x3b8213=a0_0x413b;(function(_0x4b8a60,_0x5817cf){const _0x1458f9=a0_0x413b,_0x3b5e06=_0x4b8a60();while(!![]){try{const _0x15e1c4=parseInt(_0x1458f9(0x1a9))/0x1+parseInt(_0x1458f9(0x1ae))/0x2*(-parseInt(_0x1458f9(0x1af))/0x3)+-parseInt(_0x1458f9(0x1b7))/0x4+parseInt(_0x1458f9(0x1c8))/0x5+parseInt(_0x1458f9(0x1c1))/0x6+-parseInt(_0x1458f9(0x1b0))/0x7+parseInt(_0x1458f9(0x1b3))/0x8*(parseInt(_0x1458f9(0x1ba))/0x9);if(_0x15e1c4===_0x5817cf)break;else _0x3b5e06['push'](_0x3b5e06['shift']());}catch(_0x78255e){_0x3b5e06['push'](_0x3b5e06['shift']());}}}(a0_0x1f9b,0x5407a));const Redis=require(a0_0x3b8213(0x1b8)),{logger}=require('./logger');class RedisClient{constructor(){const _0x5664c8=a0_0x3b8213;this[_0x5664c8(0x1be)]=null,this[_0x5664c8(0x1bc)]=![];}['connect'](){const _0x437109=a0_0x3b8213,_0x22e498={'jBdOX':_0x437109(0x1ac),'BnPVO':'redis_error','wxTDb':'redis_disconnected','jJcBB':_0x437109(0x1ad),'YMXUJ':'localhost','DsAAn':function(_0x4faccb,_0x8906a,_0x1e3826){return _0x4faccb(_0x8906a,_0x1e3826);},'rCWbw':'redis_init_error','FqLcz':_0x437109(0x1c9)};if(this[_0x437109(0x1be)])return this[_0x437109(0x1be)];try{return this['client']=new Redis({'host':process['env'][_0x437109(0x1c6)]||_0x22e498['YMXUJ'],'port':_0x22e498[_0x437109(0x1c4)](parseInt,process[_0x437109(0x1b5)][_0x437109(0x1c2)],0xa)||0x18ec,'password':process[_0x437109(0x1b5)][_0x437109(0x1bb)]||undefined,'db':parseInt(process[_0x437109(0x1b5)][_0x437109(0x1aa)],0xa)||0x0,'retryStrategy'(_0x59851a){const _0x479f76=Math['min'](_0x59851a*0x32,0x7d0);return _0x479f76;}}),this[_0x437109(0x1be)]['on'](_0x437109(0x1b2),()=>{const _0x3ea929=_0x437109;this[_0x3ea929(0x1bc)]=!![],logger['info']({'event':_0x22e498['jBdOX']},_0x3ea929(0x1bd));}),this['client']['on']('error',_0x2b5fb4=>{const _0xd1cbdd=_0x437109;this[_0xd1cbdd(0x1bc)]=![],logger['error']({'event':_0x22e498['BnPVO'],'error':_0x2b5fb4[_0xd1cbdd(0x1c3)]},'Redis\x20connection\x20error:\x20'+_0x2b5fb4[_0xd1cbdd(0x1c3)]);}),this[_0x437109(0x1be)]['on'](_0x437109(0x1c5),()=>{const _0x5bfc14=_0x437109;this[_0x5bfc14(0x1bc)]=![],logger['warn']({'event':_0x22e498['wxTDb']},_0x22e498[_0x5bfc14(0x1c0)]);}),this[_0x437109(0x1be)];}catch(_0x130539){logger['error']({'event':_0x22e498[_0x437109(0x1b4)],'error':_0x130539['message']},_0x22e498['FqLcz']);throw _0x130539;}}['getClient'](){const _0x535ac4=a0_0x3b8213;return!this[_0x535ac4(0x1be)]&&this[_0x535ac4(0x1b2)](),this['client'];}async['ping'](_0x3c9f23=0x1388){const _0x54abf2=a0_0x3b8213,_0x4420f1={'AcWRg':'PONG'};try{const _0x4e955f=this[_0x54abf2(0x1b1)](),_0x36fd02=await Promise['race']([_0x4e955f['ping'](),new Promise((_0x16af4f,_0x5da08a)=>setTimeout(()=>_0x5da08a(new Error('Redis\x20PING\x20timeout')),_0x3c9f23))]);return _0x36fd02===_0x4420f1[_0x54abf2(0x1bf)];}catch(_0x5875d0){return![];}}async['disconnect'](){const _0xb79e51=a0_0x3b8213;this['client']&&(await this['client'][_0xb79e51(0x1ab)](),this['client']=null,this['isConnected']=![]);}[a0_0x3b8213(0x1b6)](){const _0x4fc977=a0_0x3b8213;this[_0x4fc977(0x1be)]&&(this['client'][_0x4fc977(0x1c7)](),this['client']=null,this[_0x4fc977(0x1bc)]=![]);}}function a0_0x413b(_0x382789,_0x451f5f){_0x382789=_0x382789-0x1a9;const _0x1f9b3e=a0_0x1f9b();let _0x413bbf=_0x1f9b3e[_0x382789];if(a0_0x413b['PThkoF']===undefined){var _0x5dacee=function(_0x536c0c){const _0x2e25da='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3b1bf9='',_0x256804='';for(let _0x25406e=0x0,_0x3db1a2,_0x424245,_0x2e96ba=0x0;_0x424245=_0x536c0c['charAt'](_0x2e96ba++);~_0x424245&&(_0x3db1a2=_0x25406e%0x4?_0x3db1a2*0x40+_0x424245:_0x424245,_0x25406e++%0x4)?_0x3b1bf9+=String['fromCharCode'](0xff&_0x3db1a2>>(-0x2*_0x25406e&0x6)):0x0){_0x424245=_0x2e25da['indexOf'](_0x424245);}for(let _0x4a45bd=0x0,_0x179115=_0x3b1bf9['length'];_0x4a45bd<_0x179115;_0x4a45bd++){_0x256804+='%'+('00'+_0x3b1bf9['charCodeAt'](_0x4a45bd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x256804);};a0_0x413b['uvAOVX']=_0x5dacee,a0_0x413b['vZHMtY']={},a0_0x413b['PThkoF']=!![];}const _0x4a079f=_0x1f9b3e[0x0],_0x299c00=_0x382789+_0x4a079f,_0x32bc92=a0_0x413b['vZHMtY'][_0x299c00];return!_0x32bc92?(_0x413bbf=a0_0x413b['uvAOVX'](_0x413bbf),a0_0x413b['vZHMtY'][_0x299c00]=_0x413bbf):_0x413bbf=_0x32bc92,_0x413bbf;}module[a0_0x3b8213(0x1b9)]=new RedisClient();
1
+ function a0_0x503f(){const _0x48f1ea=['CMvKAxnFAw5PDf9LCNjVCG','BKX4wMS','mJuZotKXmfnzwu5ssG','uKvesvnFrei','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','uKvesvnFue9sva','uKvesvnFueftu1DpuKq','zxjYB3i','mJa4mdGWvKvoqKjU','BwvZC2fNzq','CgLUzW','CKHtz00','nJK2yKfXwwHr','AxndB25Uzwn0zwq','BuvzCNa','nteWntG0mgrSrunyyW','Bg9JywXOB3n0','zxHWB3j0CW','nfrPu1DPqq','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','muX4r2Dxqq','ndq1mtiZoevUuwfzyG','y29UBMvJDa','BwLU','y2XPzw50','mJu4nJviqufWAvy','zM9Yy2veAxnJB25Uzwn0','CMfJzq','CMvKAxnFzxjYB3i','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','nJK5mJK4Evz4sxbN','mtuXnZC5ou9MzgnMEa','zw52'];a0_0x503f=function(){return _0x48f1ea;};return a0_0x503f();}function a0_0x2129(_0x4d517c,_0x148e12){_0x4d517c=_0x4d517c-0x7d;const _0x503fa5=a0_0x503f();let _0x2129f0=_0x503fa5[_0x4d517c];if(a0_0x2129['gGoCfK']===undefined){var _0x35faf6=function(_0x453bf0){const _0x14e842='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3d7418='',_0xcd2c01='';for(let _0x577597=0x0,_0x17cb8e,_0x1e9447,_0x357c07=0x0;_0x1e9447=_0x453bf0['charAt'](_0x357c07++);~_0x1e9447&&(_0x17cb8e=_0x577597%0x4?_0x17cb8e*0x40+_0x1e9447:_0x1e9447,_0x577597++%0x4)?_0x3d7418+=String['fromCharCode'](0xff&_0x17cb8e>>(-0x2*_0x577597&0x6)):0x0){_0x1e9447=_0x14e842['indexOf'](_0x1e9447);}for(let _0x5c4eb0=0x0,_0x106554=_0x3d7418['length'];_0x5c4eb0<_0x106554;_0x5c4eb0++){_0xcd2c01+='%'+('00'+_0x3d7418['charCodeAt'](_0x5c4eb0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xcd2c01);};a0_0x2129['PyfqVO']=_0x35faf6,a0_0x2129['zUgQHl']={},a0_0x2129['gGoCfK']=!![];}const _0xea1f12=_0x503fa5[0x0],_0x27962=_0x4d517c+_0xea1f12,_0x5164d4=a0_0x2129['zUgQHl'][_0x27962];return!_0x5164d4?(_0x2129f0=a0_0x2129['PyfqVO'](_0x2129f0),a0_0x2129['zUgQHl'][_0x27962]=_0x2129f0):_0x2129f0=_0x5164d4,_0x2129f0;}const a0_0x1acf00=a0_0x2129;(function(_0x17142d,_0x140697){const _0x4f8eec=a0_0x2129,_0x4f8f72=_0x17142d();while(!![]){try{const _0x2744d1=-parseInt(_0x4f8eec(0x97))/0x1*(-parseInt(_0x4f8eec(0x80))/0x2)+parseInt(_0x4f8eec(0x81))/0x3*(parseInt(_0x4f8eec(0x95))/0x4)+parseInt(_0x4f8eec(0x85))/0x5+-parseInt(_0x4f8eec(0x8f))/0x6*(parseInt(_0x4f8eec(0x9c))/0x7)+-parseInt(_0x4f8eec(0x92))/0x8+parseInt(_0x4f8eec(0x98))/0x9+-parseInt(_0x4f8eec(0x8b))/0xa;if(_0x2744d1===_0x140697)break;else _0x4f8f72['push'](_0x4f8f72['shift']());}catch(_0x2cb796){_0x4f8f72['push'](_0x4f8f72['shift']());}}}(a0_0x503f,0xbc1b8));const Redis=require('ioredis'),{logger}=require('./logger');class RedisClient{constructor(){this['client']=null,this['isConnected']=![];}['connect'](){const _0x441882=a0_0x2129,_0x386bff={'rLGAK':function(_0x48d949,_0x71528){return _0x48d949*_0x71528;},'nLxZk':'redis_connected','SJjkw':_0x441882(0x7f),'jMqQi':_0x441882(0x7e),'isqap':'redis_disconnected','jFnAn':function(_0x352305,_0x459934,_0xac3dd4){return _0x352305(_0x459934,_0xac3dd4);},'yVJea':'error','rHSgM':'close'};if(this[_0x441882(0x9b)])return this['client'];try{return this[_0x441882(0x9b)]=new Redis({'host':process['env']['REDIS_HOST']||_0x441882(0x93),'port':_0x386bff['jFnAn'](parseInt,process[_0x441882(0x82)][_0x441882(0x88)],0xa)||0x18ec,'password':process['env'][_0x441882(0x89)]||undefined,'db':_0x386bff['jFnAn'](parseInt,process['env'][_0x441882(0x86)],0xa)||0x0,'retryStrategy'(_0xe83a1f){const _0xddfeaf=_0x441882,_0x52c3b2=Math[_0xddfeaf(0x9a)](_0x386bff['rLGAK'](_0xe83a1f,0x32),0x7d0);return _0x52c3b2;}}),this[_0x441882(0x9b)]['on'](_0x441882(0x99),()=>{const _0x456a39=_0x441882;this['isConnected']=!![],logger['info']({'event':_0x386bff[_0x456a39(0x84)]},_0x386bff['SJjkw']);}),this[_0x441882(0x9b)]['on'](_0x386bff['yVJea'],_0x74119d=>{const _0x50d5d3=_0x441882;this['isConnected']=![],logger['error']({'event':_0x386bff['jMqQi'],'error':_0x74119d[_0x50d5d3(0x8c)]},'Redis\x20connection\x20error:\x20'+_0x74119d['message']);}),this['client']['on'](_0x386bff[_0x441882(0x8e)],()=>{const _0x5adfe9=_0x441882;this['isConnected']=![],logger['warn']({'event':_0x386bff['isqap']},_0x5adfe9(0x96));}),this[_0x441882(0x9b)];}catch(_0x4165f3){logger[_0x441882(0x8a)]({'event':_0x441882(0x83),'error':_0x4165f3['message']},_0x441882(0x87));throw _0x4165f3;}}['getClient'](){return!this['client']&&this['connect'](),this['client'];}async[a0_0x1acf00(0x8d)](_0xfcd141=0x1388){const _0x2c6083=a0_0x1acf00,_0x4ec935={'mEYrp':'PONG'};try{const _0x46d921=this['getClient'](),_0x3ff50d=await Promise[_0x2c6083(0x7d)]([_0x46d921[_0x2c6083(0x8d)](),new Promise((_0xd5179d,_0x2f5d7e)=>setTimeout(()=>_0x2f5d7e(new Error('Redis\x20PING\x20timeout')),_0xfcd141))]);return _0x3ff50d===_0x4ec935[_0x2c6083(0x91)];}catch(_0x58fcd3){return![];}}async['disconnect'](){this['client']&&(await this['client']['quit'](),this['client']=null,this['isConnected']=![]);}[a0_0x1acf00(0x9d)](){const _0x4d18b7=a0_0x1acf00;this['client']&&(this[_0x4d18b7(0x9b)]['disconnect'](),this[_0x4d18b7(0x9b)]=null,this[_0x4d18b7(0x90)]=![]);}}module[a0_0x1acf00(0x94)]=new RedisClient();
@@ -1 +1 @@
1
- const a0_0x1a7df6=a0_0x1a95;(function(_0x99af83,_0xb603a2){const _0x295e3a=a0_0x1a95,_0x21c7fd=_0x99af83();while(!![]){try{const _0x5e359a=-parseInt(_0x295e3a(0x16f))/0x1*(parseInt(_0x295e3a(0x186))/0x2)+parseInt(_0x295e3a(0x172))/0x3*(-parseInt(_0x295e3a(0x179))/0x4)+parseInt(_0x295e3a(0x187))/0x5+parseInt(_0x295e3a(0x17b))/0x6+parseInt(_0x295e3a(0x18b))/0x7+-parseInt(_0x295e3a(0x178))/0x8+parseInt(_0x295e3a(0x16e))/0x9*(parseInt(_0x295e3a(0x191))/0xa);if(_0x5e359a===_0xb603a2)break;else _0x21c7fd['push'](_0x21c7fd['shift']());}catch(_0x50afb2){_0x21c7fd['push'](_0x21c7fd['shift']());}}}(a0_0x43a7,0x2b165));const redisClient=require(a0_0x1a7df6(0x170)),{logger}=require(a0_0x1a7df6(0x171));function a0_0x43a7(){const _0x100a6b=['CMvKAxnFz2v0x2vYCM9Y','z2v0sM9I','CMvZDgzVCMDLoG','z2v0qwXSsM9ICW','zw52','mMXWtuDdwa','mtq2mZqYnwLKq2zyEq','CMvKAxnFC2v0x2vYCM9Y','DxbKyxrLsM9I','DhrS','mJeZmJm4mNfqEMHYsa','uKvAzge','u2XtA2K','BwvZC2fNzq','A2v5CW','DwvTq1y','nZa5mZbXqw9MtMW','mtCXtMv3DLHW','mJCXmZi1tg1MzhjR','lI9YzwrPCY1JBgLLBNq','lI9SB2DNzxi','ndHRD0vNvgK','rMfPBgvKihrVihnLDcbQB2iGAw4GuMvKAxm','rvHqt1jux0zjtevFrvHqsvjz','CgfYC2u','reHhswC','ChjLzML4','mJu3odqZmMzYrwDsra','mZi5mKnKr0j6Eq','zxHWB3j0CW','mZa3mJi0t1Dgug5r','z2v0q2XPzw50','zgvS','x3bYzwzPEa','zxjYB3i','C2v0sM9I'];a0_0x43a7=function(){return _0x100a6b;};return a0_0x43a7();}class RedisHelper{constructor(){const _0x4fc1d6=a0_0x1a7df6,_0x7beb57={'hkpla':function(_0xe5b9a0,_0x3bd76c,_0x2e08dc){return _0xe5b9a0(_0x3bd76c,_0x2e08dc);}};this['_prefix']=null,this[_0x4fc1d6(0x18a)]=_0x7beb57['hkpla'](parseInt,process[_0x4fc1d6(0x185)][_0x4fc1d6(0x174)],0xa)||0xe10;}get['prefix'](){const _0x50c43f=a0_0x1a7df6,_0x4b4790={'FtaVd':'default'};if(!this[_0x50c43f(0x17e)]){const _0x25af59=process[_0x50c43f(0x185)]['RESTFORGE_PROJECT_NAME']||_0x4b4790['FtaVd'];this[_0x50c43f(0x17e)]=_0x50c43f(0x183)+_0x25af59+':export:';}return this[_0x50c43f(0x17e)];}async['setJob'](_0x5354f5,_0x5d62ed){const _0x37aa1f=a0_0x1a7df6,_0x567306={'liMqz':_0x37aa1f(0x188),'dxaAB':_0x37aa1f(0x173)};try{const _0x671a0c=redisClient[_0x37aa1f(0x17c)](),_0x466796=''+this['prefix']+_0x5354f5;return await _0x671a0c['setex'](_0x466796,this['ttl'],JSON['stringify'](_0x5d62ed)),!![];}catch(_0x2d81e6){return logger['error']({'event':_0x567306['liMqz'],'jobId':_0x5354f5,'error':_0x2d81e6[_0x37aa1f(0x18e)]},_0x567306['dxaAB']),![];}}async[a0_0x1a7df6(0x182)](_0x4790ba){const _0x4339b0=a0_0x1a7df6,_0x31815d={'REZda':_0x4339b0(0x181),'SlSki':'Failed\x20to\x20get\x20job\x20from\x20Redis'};try{const _0x546a15=redisClient[_0x4339b0(0x17c)](),_0x5e4d13=''+this['prefix']+_0x4790ba,_0x55acf2=await _0x546a15['get'](_0x5e4d13);return _0x55acf2?JSON['parse'](_0x55acf2):null;}catch(_0x2346fa){return logger['error']({'event':_0x31815d[_0x4339b0(0x18c)],'jobId':_0x4790ba,'error':_0x2346fa[_0x4339b0(0x18e)]},_0x31815d[_0x4339b0(0x18d)]),null;}}async[a0_0x1a7df6(0x189)](_0x1cfe9e,_0x8fe72c){const _0x4bc6f8=a0_0x1a7df6,_0x2ef703=await this[_0x4bc6f8(0x182)](_0x1cfe9e);if(!_0x2ef703)return![];const _0x417507={..._0x2ef703,..._0x8fe72c};return await this[_0x4bc6f8(0x180)](_0x1cfe9e,_0x417507);}async['deleteJob'](_0x321f39){const _0x47b205=a0_0x1a7df6,_0x515857={'DHGIg':'redis_delete_error','fpdaD':'Failed\x20to\x20delete\x20job\x20from\x20Redis'};try{const _0x8c5e8d=redisClient['getClient'](),_0x1da0ab=''+this[_0x47b205(0x177)]+_0x321f39;return await _0x8c5e8d[_0x47b205(0x17d)](_0x1da0ab),!![];}catch(_0x268fb9){return logger[_0x47b205(0x17f)]({'event':_0x515857[_0x47b205(0x176)],'jobId':_0x321f39,'error':_0x268fb9['message']},_0x515857['fpdaD']),![];}}async[a0_0x1a7df6(0x184)](){const _0xae610f=a0_0x1a7df6,_0x173c38={'uemCV':'Failed\x20to\x20get\x20all\x20jobs'};try{const _0x2ebb67=redisClient['getClient'](),_0x4b2a84=await _0x2ebb67[_0xae610f(0x18f)](this[_0xae610f(0x177)]+'*'),_0x206b4c=[];for(const _0x27e903 of _0x4b2a84){const _0x470852=await _0x2ebb67['get'](_0x27e903);_0x470852&&_0x206b4c['push'](JSON[_0xae610f(0x175)](_0x470852));}return _0x206b4c;}catch(_0x10a2eb){return logger['error']({'event':'redis_getall_error','error':_0x10a2eb['message']},_0x173c38[_0xae610f(0x190)]),[];}}}function a0_0x1a95(_0x5e6233,_0x23c656){_0x5e6233=_0x5e6233-0x16e;const _0x43a7ef=a0_0x43a7();let _0x1a9579=_0x43a7ef[_0x5e6233];if(a0_0x1a95['HtYCFk']===undefined){var _0xa81259=function(_0x4edb24){const _0x54ee38='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3d9b7c='',_0x8c6ca6='';for(let _0x2d4d38=0x0,_0x5813d0,_0x5a0e03,_0x4bfa1b=0x0;_0x5a0e03=_0x4edb24['charAt'](_0x4bfa1b++);~_0x5a0e03&&(_0x5813d0=_0x2d4d38%0x4?_0x5813d0*0x40+_0x5a0e03:_0x5a0e03,_0x2d4d38++%0x4)?_0x3d9b7c+=String['fromCharCode'](0xff&_0x5813d0>>(-0x2*_0x2d4d38&0x6)):0x0){_0x5a0e03=_0x54ee38['indexOf'](_0x5a0e03);}for(let _0x5979a8=0x0,_0x79fb6c=_0x3d9b7c['length'];_0x5979a8<_0x79fb6c;_0x5979a8++){_0x8c6ca6+='%'+('00'+_0x3d9b7c['charCodeAt'](_0x5979a8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x8c6ca6);};a0_0x1a95['EyDruK']=_0xa81259,a0_0x1a95['sSDvPN']={},a0_0x1a95['HtYCFk']=!![];}const _0x4ce7e8=_0x43a7ef[0x0],_0x36a7bb=_0x5e6233+_0x4ce7e8,_0x39ddfb=a0_0x1a95['sSDvPN'][_0x36a7bb];return!_0x39ddfb?(_0x1a9579=a0_0x1a95['EyDruK'](_0x1a9579),a0_0x1a95['sSDvPN'][_0x36a7bb]=_0x1a9579):_0x1a9579=_0x39ddfb,_0x1a9579;}module[a0_0x1a7df6(0x17a)]=new RedisHelper();
1
+ const a0_0x274e73=a0_0xd9fc;function a0_0xd9fc(_0x43b234,_0x551917){_0x43b234=_0x43b234-0x120;const _0x29cb4c=a0_0x29cb();let _0xd9fc29=_0x29cb4c[_0x43b234];if(a0_0xd9fc['jtNXJo']===undefined){var _0x50a3f5=function(_0x138acb){const _0x1708ef='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x325593='',_0x2ef012='';for(let _0x39f3fc=0x0,_0x5eec5d,_0x5a10e0,_0x85b1fb=0x0;_0x5a10e0=_0x138acb['charAt'](_0x85b1fb++);~_0x5a10e0&&(_0x5eec5d=_0x39f3fc%0x4?_0x5eec5d*0x40+_0x5a10e0:_0x5a10e0,_0x39f3fc++%0x4)?_0x325593+=String['fromCharCode'](0xff&_0x5eec5d>>(-0x2*_0x39f3fc&0x6)):0x0){_0x5a10e0=_0x1708ef['indexOf'](_0x5a10e0);}for(let _0x5537d5=0x0,_0x301f9d=_0x325593['length'];_0x5537d5<_0x301f9d;_0x5537d5++){_0x2ef012+='%'+('00'+_0x325593['charCodeAt'](_0x5537d5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2ef012);};a0_0xd9fc['RFppyI']=_0x50a3f5,a0_0xd9fc['pIhbNo']={},a0_0xd9fc['jtNXJo']=!![];}const _0x26cbbe=_0x29cb4c[0x0],_0xb0b8d5=_0x43b234+_0x26cbbe,_0x462a57=a0_0xd9fc['pIhbNo'][_0xb0b8d5];return!_0x462a57?(_0xd9fc29=a0_0xd9fc['RFppyI'](_0xd9fc29),a0_0xd9fc['pIhbNo'][_0xb0b8d5]=_0xd9fc29):_0xd9fc29=_0x462a57,_0xd9fc29;}(function(_0x4fac42,_0x6639e1){const _0x420cdc=a0_0xd9fc,_0x1a87d9=_0x4fac42();while(!![]){try{const _0x58ed64=-parseInt(_0x420cdc(0x134))/0x1+parseInt(_0x420cdc(0x13e))/0x2*(-parseInt(_0x420cdc(0x131))/0x3)+parseInt(_0x420cdc(0x129))/0x4*(-parseInt(_0x420cdc(0x132))/0x5)+parseInt(_0x420cdc(0x127))/0x6*(parseInt(_0x420cdc(0x146))/0x7)+-parseInt(_0x420cdc(0x12e))/0x8*(-parseInt(_0x420cdc(0x12a))/0x9)+-parseInt(_0x420cdc(0x12c))/0xa+-parseInt(_0x420cdc(0x123))/0xb*(-parseInt(_0x420cdc(0x13c))/0xc);if(_0x58ed64===_0x6639e1)break;else _0x1a87d9['push'](_0x1a87d9['shift']());}catch(_0x3854e9){_0x1a87d9['push'](_0x1a87d9['shift']());}}}(a0_0x29cb,0xe3e1e));const redisClient=require('./redis-client'),{logger}=require(a0_0x274e73(0x139));class RedisHelper{constructor(){const _0x3e45a2=a0_0x274e73,_0x10ff7a={'dFPRS':function(_0x2667e3,_0x31b932,_0x557612){return _0x2667e3(_0x31b932,_0x557612);}};this[_0x3e45a2(0x13f)]=null,this['ttl']=_0x10ff7a[_0x3e45a2(0x149)](parseInt,process['env'][_0x3e45a2(0x12d)],0xa)||0xe10;}get[a0_0x274e73(0x122)](){const _0x1d4eaa=a0_0x274e73,_0x225b64={'YgBDY':_0x1d4eaa(0x13b)};if(!this['_prefix']){const _0x1912c6=process[_0x1d4eaa(0x128)]['RESTFORGE_PROJECT_NAME']||_0x225b64[_0x1d4eaa(0x125)];this[_0x1d4eaa(0x13f)]=_0x1d4eaa(0x14b)+_0x1912c6+':export:';}return this['_prefix'];}async[a0_0x274e73(0x126)](_0x25a9b9,_0xe96705){const _0x14b3ac=a0_0x274e73,_0x1fdaf1={'ljQTY':_0x14b3ac(0x12b),'gTIBP':_0x14b3ac(0x13a)};try{const _0x2e11ec=redisClient['getClient'](),_0x96fbb1=''+this['prefix']+_0x25a9b9;return await _0x2e11ec['setex'](_0x96fbb1,this[_0x14b3ac(0x148)],JSON[_0x14b3ac(0x145)](_0xe96705)),!![];}catch(_0xe15ee){return logger[_0x14b3ac(0x13d)]({'event':_0x1fdaf1['ljQTY'],'jobId':_0x25a9b9,'error':_0xe15ee[_0x14b3ac(0x124)]},_0x1fdaf1[_0x14b3ac(0x137)]),![];}}async[a0_0x274e73(0x135)](_0x2a9538){const _0x2eb59e=a0_0x274e73,_0x3b3522={'JvgKw':_0x2eb59e(0x14a),'QLInb':_0x2eb59e(0x120)};try{const _0x3f4276=redisClient['getClient'](),_0x1da547=''+this[_0x2eb59e(0x122)]+_0x2a9538,_0x5c8f43=await _0x3f4276[_0x2eb59e(0x144)](_0x1da547);return _0x5c8f43?JSON[_0x2eb59e(0x142)](_0x5c8f43):null;}catch(_0x28ab9e){return logger[_0x2eb59e(0x13d)]({'event':_0x3b3522['JvgKw'],'jobId':_0x2a9538,'error':_0x28ab9e['message']},_0x3b3522[_0x2eb59e(0x143)]),null;}}async[a0_0x274e73(0x138)](_0x130010,_0x552695){const _0x2c5eec=a0_0x274e73,_0x3f82c3=await this[_0x2c5eec(0x135)](_0x130010);if(!_0x3f82c3)return![];const _0x4c2e78={..._0x3f82c3,..._0x552695};return await this[_0x2c5eec(0x126)](_0x130010,_0x4c2e78);}async['deleteJob'](_0x4a6705){const _0xd31303=a0_0x274e73;try{const _0x59217a=redisClient[_0xd31303(0x140)](),_0x5a53fa=''+this['prefix']+_0x4a6705;return await _0x59217a['del'](_0x5a53fa),!![];}catch(_0x545696){return logger[_0xd31303(0x13d)]({'event':_0xd31303(0x133),'jobId':_0x4a6705,'error':_0x545696['message']},_0xd31303(0x136)),![];}}async['getAllJobs'](){const _0x4e163f=a0_0x274e73,_0x46132c={'FcGdE':_0x4e163f(0x130)};try{const _0x1b42d1=redisClient[_0x4e163f(0x140)](),_0x3ad750=await _0x1b42d1[_0x4e163f(0x121)](this['prefix']+'*'),_0x1ca496=[];for(const _0x3b64ac of _0x3ad750){const _0x2c3197=await _0x1b42d1['get'](_0x3b64ac);_0x2c3197&&_0x1ca496['push'](JSON['parse'](_0x2c3197));}return _0x1ca496;}catch(_0x528af1){return logger['error']({'event':_0x4e163f(0x147),'error':_0x528af1[_0x4e163f(0x124)]},_0x46132c[_0x4e163f(0x141)]),[];}}}module[a0_0x274e73(0x12f)]=new RedisHelper();function a0_0x29cb(){const _0x4ad3d2=['zgvMyxvSDa','mJeWnJiZndbtyK9sCLe','zxjYB3i','ogfAs25SqW','x3bYzwzPEa','z2v0q2XPzw50','rMnhzeu','CgfYC2u','uuXjBMi','z2v0','C3rYAw5NAwz5','ndG1ohb0wMTyzG','CMvKAxnFz2v0ywXSx2vYCM9Y','DhrS','zezquLm','CMvKAxnFz2v0x2vYCM9Y','CMvZDgzVCMDLoG','rMfPBgvKihrVigDLDcbQB2iGzNjVBsbszwrPCW','A2v5CW','ChjLzML4','mJjJEvHuv1O','BwvZC2fNzq','wwDcrfK','C2v0sM9I','nZyZoe5NqLzMta','zw52','mtqYnZmWognOtMrmwG','mtq0s1z0q2nx','CMvKAxnFC2v0x2vYCM9Y','mtCXota0ndbmBKrjq2i','rvHqt1jux0zjtevFrvHqsvjz','mteWndqWze93vgzm','zxHWB3j0CW','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','nZCWmJe0wMjrEvnf','mtbjD1zUCNi','CMvKAxnFzgvSzxrLx2vYCM9Y','mJiXnJC2A09KzeLk','z2v0sM9I','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW','z1rjqLa','DxbKyxrLsM9I','lI9SB2DNzxi','rMfPBgvKihrVihnLDcbQB2iGAw4GuMvKAxm'];a0_0x29cb=function(){return _0x4ad3d2;};return a0_0x29cb();}