@restforgejs/platform 5.1.20 → 5.2.0

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 (215) 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/catalog/dashboard.js +1 -1
  5. package/generators/cli/catalog/dbschema.js +3 -3
  6. package/generators/cli/catalog/field-validation.js +1 -1
  7. package/generators/cli/catalog/query-declarative.js +1 -1
  8. package/generators/cli/config/clear-default.js +1 -1
  9. package/generators/cli/config/get-default.js +1 -1
  10. package/generators/cli/config/list.js +1 -1
  11. package/generators/cli/config/schema.js +1 -1
  12. package/generators/cli/config/set-default.js +2 -2
  13. package/generators/cli/config/template.js +1 -1
  14. package/generators/cli/dashboard/create.js +7 -7
  15. package/generators/cli/data/pull.js +12 -12
  16. package/generators/cli/data/push.js +9 -9
  17. package/generators/cli/endpoint/create.js +11 -11
  18. package/generators/cli/endpoint/list.js +3 -3
  19. package/generators/cli/fast-track.js +7 -7
  20. package/generators/cli/init.js +2 -2
  21. package/generators/cli/kafka/consumer-create.js +5 -5
  22. package/generators/cli/key/generate.js +3 -3
  23. package/generators/cli/key/list.js +2 -2
  24. package/generators/cli/key/revoke.js +3 -3
  25. package/generators/cli/payload/diff.js +3 -3
  26. package/generators/cli/payload/generate.js +5 -5
  27. package/generators/cli/payload/sync.js +5 -5
  28. package/generators/cli/payload/validate.js +3 -3
  29. package/generators/cli/processor/create.js +7 -7
  30. package/generators/cli/processor/list.js +3 -3
  31. package/generators/cli/project/delete.js +2 -2
  32. package/generators/cli/project/list.js +1 -1
  33. package/generators/cli/query/validate.js +3 -3
  34. package/generators/cli/schema/apply.js +13 -13
  35. package/generators/cli/schema/describe.js +6 -6
  36. package/generators/cli/schema/diff.js +10 -10
  37. package/generators/cli/schema/generate-ddl.js +11 -11
  38. package/generators/cli/schema/init.js +95 -95
  39. package/generators/cli/schema/introspect.js +8 -8
  40. package/generators/cli/schema/list.js +6 -6
  41. package/generators/cli/schema/migrate.js +91 -13
  42. package/generators/cli/schema/models.js +6 -6
  43. package/generators/cli/schema/template.js +223 -222
  44. package/generators/cli/schema/validate.js +6 -6
  45. package/generators/cli/test/generate.js +6 -6
  46. package/generators/lib/dbschema-kit/apply-executor.js +20 -0
  47. package/generators/lib/dbschema-kit/introspect-mapper.js +20 -0
  48. package/generators/lib/generators/processor-validation-generator.js +4 -1
  49. package/generators/lib/migrate/field-type-resolver.js +23 -0
  50. package/generators/lib/payload/payload-runner.js +17 -3
  51. package/generators/lib/templates/dashboard-catalog.js +1 -1
  52. package/generators/lib/templates/db-connection-env.js +1 -1
  53. package/generators/lib/templates/dbschema-catalog.js +1 -1
  54. package/generators/lib/templates/field-validation-catalog.js +1 -1
  55. package/generators/lib/templates/mysql-template.js +1 -1
  56. package/generators/lib/templates/oracle-template.js +1 -1
  57. package/generators/lib/templates/postgres-template.js +1 -1
  58. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  59. package/generators/lib/templates/sqlite-template.js +1 -1
  60. package/integrity-manifest.json +18 -18
  61. package/package.json +1 -1
  62. package/scripts/verify-integrity.js +1 -1
  63. package/server.js +1 -1
  64. package/src/components/handlers/adjust_handler.js +1 -1
  65. package/src/components/handlers/audit_handler.js +1 -1
  66. package/src/components/handlers/delete_handler.js +1 -1
  67. package/src/components/handlers/export_handler.js +1 -1
  68. package/src/components/handlers/import_handler.js +1 -1
  69. package/src/components/handlers/insert_handler.js +1 -1
  70. package/src/components/handlers/update_handler.js +1 -1
  71. package/src/components/handlers/upload_handler.js +1 -1
  72. package/src/components/handlers/workflow_handler.js +1 -1
  73. package/src/components/integrations/webhook.js +1 -1
  74. package/src/consumers/baseConsumer.js +1 -1
  75. package/src/consumers/declarativeMapper.js +1 -1
  76. package/src/consumers/handlers/apiHandler.js +1 -1
  77. package/src/consumers/handlers/consoleHandler.js +1 -1
  78. package/src/consumers/handlers/databaseHandler.js +1 -1
  79. package/src/consumers/handlers/index.js +1 -1
  80. package/src/consumers/handlers/kafkaHandler.js +1 -1
  81. package/src/consumers/index.js +1 -1
  82. package/src/consumers/messageTransformer.js +1 -1
  83. package/src/consumers/validator.js +1 -1
  84. package/src/core/db/dialect/base-dialect.js +1 -1
  85. package/src/core/db/dialect/index.js +1 -1
  86. package/src/core/db/dialect/mysql-dialect.js +1 -1
  87. package/src/core/db/dialect/oracle-dialect.js +1 -1
  88. package/src/core/db/dialect/postgres-dialect.js +1 -1
  89. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  90. package/src/core/db/flatten-helper.js +1 -1
  91. package/src/core/db/query-builder-error.js +1 -1
  92. package/src/core/db/query-builder.js +1 -1
  93. package/src/core/db/relation-helper.js +1 -1
  94. package/src/core/handlers/delete_handler.js +1 -1
  95. package/src/core/handlers/insert_handler.js +1 -1
  96. package/src/core/handlers/update_handler.js +1 -1
  97. package/src/core/models/base-model.js +1 -1
  98. package/src/core/utils/cache-manager.js +1 -1
  99. package/src/core/utils/component-engine.js +1 -1
  100. package/src/core/utils/context-builder.js +1 -1
  101. package/src/core/utils/datetime-formatter.js +1 -1
  102. package/src/core/utils/datetime-parser.js +1 -1
  103. package/src/core/utils/db.js +1 -1
  104. package/src/core/utils/logger.js +1 -1
  105. package/src/core/utils/payload-loader.js +1 -1
  106. package/src/core/utils/security-checks.js +1 -1
  107. package/src/middleware/body-options.js +1 -1
  108. package/src/middleware/cors.js +1 -1
  109. package/src/middleware/idempotency.js +1 -1
  110. package/src/middleware/rate-limiter.js +1 -1
  111. package/src/middleware/request-logger.js +1 -1
  112. package/src/middleware/security-headers.js +1 -1
  113. package/src/models/base-model-mysql.js +1 -1
  114. package/src/models/base-model-oracle.js +1 -1
  115. package/src/models/base-model-sqlite.js +1 -1
  116. package/src/models/base-model.js +1 -1
  117. package/src/pro/caching/redis-client.js +1 -1
  118. package/src/pro/caching/redis-helper.js +1 -1
  119. package/src/pro/consumers/baseConsumer.js +1 -1
  120. package/src/pro/consumers/declarativeMapper.js +1 -1
  121. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  122. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  123. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  124. package/src/pro/consumers/handlers/index.js +1 -1
  125. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  126. package/src/pro/consumers/index.js +1 -1
  127. package/src/pro/consumers/messageTransformer.js +1 -1
  128. package/src/pro/consumers/validator.js +1 -1
  129. package/src/pro/database/base-model-mysql.js +1 -1
  130. package/src/pro/database/base-model-oracle.js +1 -1
  131. package/src/pro/database/base-model-sqlite.js +1 -1
  132. package/src/pro/database/db-mysql.js +1 -1
  133. package/src/pro/database/db-oracle.js +1 -1
  134. package/src/pro/database/db-sqlite.js +1 -1
  135. package/src/pro/excel/excel-generator.js +1 -1
  136. package/src/pro/excel/excel-parser.js +1 -1
  137. package/src/pro/excel/export-service.js +1 -1
  138. package/src/pro/excel/export_handler.js +1 -1
  139. package/src/pro/excel/import-service.js +1 -1
  140. package/src/pro/excel/import-validator.js +1 -1
  141. package/src/pro/excel/import_handler.js +1 -1
  142. package/src/pro/excel/upsert-builder.js +1 -1
  143. package/src/pro/idgen/idgen-routes.js +1 -1
  144. package/src/pro/integrations/lookup-resolver.js +1 -1
  145. package/src/pro/integrations/upload-handler-v2.js +1 -1
  146. package/src/pro/integrations/upload-handler.js +1 -1
  147. package/src/pro/integrations/webhook.js +1 -1
  148. package/src/pro/locking/lock-routes.js +1 -1
  149. package/src/pro/locking/resource-lock-manager.js +1 -1
  150. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  151. package/src/pro/messaging/kafkaService.js +1 -1
  152. package/src/pro/messaging/messagehubService.js +1 -1
  153. package/src/pro/messaging/rabbitmqService.js +1 -1
  154. package/src/pro/scheduler/job-manager.js +1 -1
  155. package/src/pro/scheduler/job-routes.js +1 -1
  156. package/src/pro/scheduler/job-validator.js +1 -1
  157. package/src/pro/storage/base-storage-provider.js +1 -1
  158. package/src/pro/storage/file-metadata-helper.js +1 -1
  159. package/src/pro/storage/index.js +1 -1
  160. package/src/pro/storage/local-storage-provider.js +1 -1
  161. package/src/pro/storage/s3-storage-provider.js +1 -1
  162. package/src/pro/storage/upload-cleanup-job.js +1 -1
  163. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  164. package/src/pro/storage/upload-pending-tracker.js +1 -1
  165. package/src/pro/websocket/broadcast-helper.js +1 -1
  166. package/src/pro/websocket/index.js +1 -1
  167. package/src/pro/websocket/livesync-server.js +1 -1
  168. package/src/pro/websocket/ws-broadcaster.js +1 -1
  169. package/src/services/export-service.js +1 -1
  170. package/src/services/import-service.js +1 -1
  171. package/src/services/kafkaConsumerService.js +1 -1
  172. package/src/services/kafkaService.js +1 -1
  173. package/src/services/messagehubService.js +1 -1
  174. package/src/services/rabbitmqService.js +1 -1
  175. package/src/utils/cache-invalidation-registry.js +1 -1
  176. package/src/utils/cache-manager.js +1 -1
  177. package/src/utils/component-engine.js +1 -1
  178. package/src/utils/config-extractor.js +1 -1
  179. package/src/utils/consumerLogger.js +1 -1
  180. package/src/utils/context-builder.js +1 -1
  181. package/src/utils/dashboard-helpers.js +1 -1
  182. package/src/utils/dateHelper.js +1 -1
  183. package/src/utils/datetime-formatter.js +1 -1
  184. package/src/utils/datetime-parser.js +1 -1
  185. package/src/utils/db-bootstrap.js +1 -1
  186. package/src/utils/db-mysql.js +1 -1
  187. package/src/utils/db-oracle.js +1 -1
  188. package/src/utils/db-sqlite.js +1 -1
  189. package/src/utils/db.js +1 -1
  190. package/src/utils/demo-generator.js +1 -1
  191. package/src/utils/excel-generator.js +1 -1
  192. package/src/utils/excel-parser.js +1 -1
  193. package/src/utils/file-watcher.js +1 -1
  194. package/src/utils/id-generator.js +1 -1
  195. package/src/utils/idempotency-manager.js +1 -1
  196. package/src/utils/import-validator.js +1 -1
  197. package/src/utils/license-client.js +1 -1
  198. package/src/utils/lock-manager.js +1 -1
  199. package/src/utils/logger.js +1 -1
  200. package/src/utils/lookup-resolver.js +1 -1
  201. package/src/utils/payload-loader.js +1 -1
  202. package/src/utils/processor-response.js +1 -1
  203. package/src/utils/rabbitmq.js +1 -1
  204. package/src/utils/redis-client.js +1 -1
  205. package/src/utils/redis-helper.js +1 -1
  206. package/src/utils/request-scope.js +1 -1
  207. package/src/utils/security-checks.js +1 -1
  208. package/src/utils/service-resolver.js +1 -1
  209. package/src/utils/shutdown-coordinator.js +1 -1
  210. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  211. package/src/utils/sql-table-extractor.js +1 -1
  212. package/src/utils/trusted-keys.js +1 -1
  213. package/src/utils/upload-handler.js +1 -1
  214. package/src/utils/upsert-builder.js +1 -1
  215. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- function a0_0x23eb(){const _0x46213a=['z2v0q2XPzw50','DKT5Ceu','x3n0CMf0zwD5','Bg9JA19LEhrLBMrFzxjYB3i','zxHhvfq','BwvZC2fNzq','C3vIC3rYAw5N','tvjJBfy','Aw5JBhvKzxm','tg9JAYbLEhrLBMqGzxjYB3i','x2vUywjSzwq','zgvMyxvSDfruta','q2fUBM90ihjLBgvHC2uGBg9JAYaTig5VDcbVD25LCG','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','x2LUAxrdB25MAwC','CMv0CNLdB3vUDa','u2nNAMu','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','D2P5rLe','x2LUAxrPywXPEMvK','ChjLzML4','z2v0','rKngD08','Aw1lCfO','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','zgvS','CgLK','odmXnduWvxrQCeH1','yu5VvKy','ywXS','x3jLDhj5q291BNq','C2v0','mtjHzeLgtey','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','C3bSAxq','zxHWAxjL','D3jPDgvFBg9JA190Aw1LB3v0','BgfZDeLUzgv4t2y','C2v0zxG','D3jPDgvFBg9JA19Hy3f1AxjLza','CMvHzf9SB2nRx2fJCxvPCMvK','CMvHzf9SB2nRx2vYCM9Y','CMvSzwfZzuXVy2S','CMv0CNLezwXHEq','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzxHWAxjLiIWGs0vzu1SXxsWGqvjhvLSYxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','yvjzD2W','D3jPDgvFBg9JA19LCNjVCG','DxvPza','x2rLzMf1BhruveW','s3LZCxK','mJq2ndGYmhDPsezMqq','BM93','zgvIDwC','zxHWB3j0CW','vNDUDw0','CMvHza','x2vUC3vYzuLUAxrPywXPEMvK','yNvPBgrmB2nRs2v5','v2zOEhu','v1jjveuGBg9JAYbLCNjVCG','zw52','mJq5nMPwDfPxuW','otCYmJu0n2fxwe9Wuq','ota0z0Dyrgvo','te9ds19esvnuuKLcvvrfrf9ftKfcteve','DKzlq1e','x3bYzwzPEa','C2XLzxa','ywnXDwLYzvjLywrmB2nR','CMvQzwn0','zgvJCG','zxzHBa','mJK4ota1A1D4uuvO','Cg93','mtmWnte0m3D2sKnXqG','Bg9JA19LEhrLBMrLza','zxjYB3i','mJGZnta4mfHpB3n3wq','CMv0CNK','v1jjveuGBg9JAYbYzwXLyxnLza','y3rWywi','z2vUzxjHDgvmB2nRvMfSDwu','D3jPDgvFBg9JA19YzwPLy3rLza','D29YA2vYswq','tg9Ov0i','x3jLDhj5rgvSyxK','vLDHz3q','B3fqsxK','x3DVCMTLCKLK','D2fYBG','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','zw5HyMXLza'];a0_0x23eb=function(){return _0x46213a;};return a0_0x23eb();}function a0_0x4078(_0x362869,_0x95b7a4){_0x362869=_0x362869-0x19e;const _0x23eb71=a0_0x23eb();let _0x40789f=_0x23eb71[_0x362869];if(a0_0x4078['TATrdw']===undefined){var _0x2ca6e2=function(_0x140937){const _0x4690b1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5ce064='',_0x4ce43d='';for(let _0x416b1e=0x0,_0x458657,_0x263eff,_0x38567c=0x0;_0x263eff=_0x140937['charAt'](_0x38567c++);~_0x263eff&&(_0x458657=_0x416b1e%0x4?_0x458657*0x40+_0x263eff:_0x263eff,_0x416b1e++%0x4)?_0x5ce064+=String['fromCharCode'](0xff&_0x458657>>(-0x2*_0x416b1e&0x6)):0x0){_0x263eff=_0x4690b1['indexOf'](_0x263eff);}for(let _0x4beafd=0x0,_0x3ee531=_0x5ce064['length'];_0x4beafd<_0x3ee531;_0x4beafd++){_0x4ce43d+='%'+('00'+_0x5ce064['charCodeAt'](_0x4beafd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ce43d);};a0_0x4078['BGmJyG']=_0x2ca6e2,a0_0x4078['VntnNh']={},a0_0x4078['TATrdw']=!![];}const _0x9a856b=_0x23eb71[0x0],_0x4e7fca=_0x362869+_0x9a856b,_0x2c2cfb=a0_0x4078['VntnNh'][_0x4e7fca];return!_0x2c2cfb?(_0x40789f=a0_0x4078['BGmJyG'](_0x40789f),a0_0x4078['VntnNh'][_0x4e7fca]=_0x40789f):_0x40789f=_0x2c2cfb,_0x40789f;}const a0_0x2bbfa9=a0_0x4078;(function(_0xd15701,_0x4b06eb){const _0x4df1c2=a0_0x4078,_0x47422c=_0xd15701();while(!![]){try{const _0xcc0905=parseInt(_0x4df1c2(0x1a3))/0x1+-parseInt(_0x4df1c2(0x1d3))/0x2+-parseInt(_0x4df1c2(0x1f5))/0x3*(parseInt(_0x4df1c2(0x1f7))/0x4)+-parseInt(_0x4df1c2(0x1ea))/0x5+parseInt(_0x4df1c2(0x1d8))/0x6*(parseInt(_0x4df1c2(0x1a5))/0x7)+-parseInt(_0x4df1c2(0x1a8))/0x8+parseInt(_0x4df1c2(0x1f6))/0x9;if(_0xcc0905===_0x4b06eb)break;else _0x47422c['push'](_0x47422c['shift']());}catch(_0x287663){_0x47422c['push'](_0x47422c['shift']());}}}(a0_0x23eb,0x497b4));const redisClient=require('./redis-client'),{logger}=require('./logger'),{v4:uuidv4}=require(a0_0x2bbfa9(0x1e7));class LockManager{constructor(){const _0x4273d0=a0_0x2bbfa9;this['_prefix']=null,this[_0x4273d0(0x1c2)]=null,this[_0x4273d0(0x1e8)]=null,this['_retryCount']=null,this['_retryDelay']=null,this['_strategy']=null,this[_0x4273d0(0x1b3)]=null,this[_0x4273d0(0x1cb)]=![];}[a0_0x2bbfa9(0x1c6)](){const _0x9c2c8=a0_0x2bbfa9,_0x1644af={'VWagt':'rf:lock:','wjyFQ':function(_0x2b55bf,_0x3e875b,_0x20a8de){return _0x2b55bf(_0x3e875b,_0x20a8de);},'MRclV':function(_0xf3d123,_0x36618d){return _0xf3d123===_0x36618d;},'oqPIy':'true','vFKCQ':'retry'},_0x53bc87='2|6|4|5|8|7|1|0|3'[_0x9c2c8(0x1da)]('|');let _0x55dbc9=0x0;while(!![]){switch(_0x53bc87[_0x55dbc9++]){case'0':this['_initialized']=!![];continue;case'1':this[_0x9c2c8(0x1b3)]='worker-'+process[_0x9c2c8(0x1d2)];continue;case'2':this[_0x9c2c8(0x1fa)]=_0x1644af[_0x9c2c8(0x1b1)];continue;case'3':logger['info']({'event':'lock_config_init','enabled':this['_enabled'],'strategy':this[_0x9c2c8(0x1ba)],'ttl':this[_0x9c2c8(0x1e8)],'retryCount':this[_0x9c2c8(0x1d6)],'retryDelay':this[_0x9c2c8(0x1b0)],'workerId':this['_workerId']},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x9c2c8(0x1c2)]+',\x20strategy:\x20'+this[_0x9c2c8(0x1ba)]);continue;case'4':this[_0x9c2c8(0x1e8)]=parseInt(process['env']['LOCK_DISTRIBUTED_TTL'],0xa)||0xa;continue;case'5':this['_retryCount']=_0x1644af[_0x9c2c8(0x1ca)](parseInt,process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3;continue;case'6':this['_enabled']=_0x1644af[_0x9c2c8(0x1bf)](process[_0x9c2c8(0x1f4)][_0x9c2c8(0x1f8)],_0x1644af[_0x9c2c8(0x1b2)]);continue;case'7':this['_strategy']=process[_0x9c2c8(0x1f4)]['LOCK_DISTRIBUTED_STRATEGY']||_0x1644af[_0x9c2c8(0x1f9)];continue;case'8':this['_retryDelay']=parseInt(process['env'][_0x9c2c8(0x1b6)],0xa)||0x64;continue;}break;}}['_ensureInitialized'](){const _0x8faffb=a0_0x2bbfa9;!this[_0x8faffb(0x1cb)]&&this['_initConfig']();}get[a0_0x2bbfa9(0x1cc)](){const _0x27a137=a0_0x2bbfa9;return this[_0x27a137(0x1f0)](),this['_prefix'];}get[a0_0x2bbfa9(0x1b7)](){return this['_ensureInitialized'](),this['_enabled'];}get[a0_0x2bbfa9(0x1c3)](){const _0xeb80a8=a0_0x2bbfa9;return this[_0xeb80a8(0x1f0)](),this['_defaultTTL'];}get[a0_0x2bbfa9(0x1c7)](){return this['_ensureInitialized'](),this['_retryCount'];}get[a0_0x2bbfa9(0x1e3)](){const _0x7849c4=a0_0x2bbfa9;return this['_ensureInitialized'](),this[_0x7849c4(0x1b0)];}get['strategy'](){const _0x20d99d=a0_0x2bbfa9;return this['_ensureInitialized'](),this[_0x20d99d(0x1ba)];}get[a0_0x2bbfa9(0x1ae)](){const _0x319f2b=a0_0x2bbfa9;return this[_0x319f2b(0x1f0)](),this['_workerId'];}['buildLockKey'](_0x2c69bb){const _0x367eca=a0_0x2bbfa9,{module:_0x4a156b,endpoint:_0x49d473,lockType:_0x5a775d,recordId:_0x2bfa84}=_0x2c69bb;if(_0x2bfa84)return''+this[_0x367eca(0x1cc)]+_0x4a156b+':'+_0x49d473+':'+_0x2bfa84+':'+_0x5a775d;return''+this[_0x367eca(0x1cc)]+_0x4a156b+':'+_0x49d473+':'+_0x5a775d;}['generateLockValue'](){const _0x4deaa4=a0_0x2bbfa9;return this['workerId']+':'+uuidv4()+':'+Date[_0x4deaa4(0x1eb)]();}async[a0_0x2bbfa9(0x19f)](_0x39fa08){const _0x56f514=a0_0x2bbfa9,_0x3a6a47={'vKypE':'write','PupDV':_0x56f514(0x1e0),'yWWuO':'READ\x20lock\x20acquired','FCFwO':_0x56f514(0x1d0),'ryTJj':_0x56f514(0x1e1),'YJQSA':'READ\x20lock\x20error'};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x40a570=this[_0x56f514(0x1f1)]({..._0x39fa08,'lockType':_0x3a6a47[_0x56f514(0x1b9)]}),_0x156735=this['buildLockKey']({..._0x39fa08,'lockType':'read'}),_0x3c98b6=this[_0x56f514(0x1ac)]();try{const _0x55d84e=redisClient['getClient']();for(let _0x2060c4=0x0;_0x2060c4<this['retryCount'];_0x2060c4++){const _0xe99b84=await _0x55d84e['get'](_0x40a570);if(!_0xe99b84){await _0x55d84e['incr'](_0x156735),await _0x55d84e[_0x56f514(0x1db)](_0x156735,this[_0x56f514(0x1c3)]);const _0x2ca4b9=_0x156735+':'+_0x3c98b6;return await _0x55d84e[_0x56f514(0x1de)](_0x2ca4b9,this['defaultTTL'],_0x3c98b6),logger['debug']({'event':_0x3a6a47['PupDV'],'key':_0x156735,'value':_0x3c98b6},_0x3a6a47['yWWuO']),{'success':!![],'lockValue':_0x3c98b6,'lockKey':_0x2ca4b9};}logger['debug']({'event':'read_lock_waiting','writeKey':_0x40a570,'attempt':_0x2060c4},'Waiting\x20for\x20WRITE\x20lock\x20to\x20release'),await this['sleep'](this['retryDelay']*Math[_0x56f514(0x1a4)](0x2,_0x2060c4));}return logger[_0x56f514(0x1b4)]({'event':'read_lock_timeout','key':_0x156735},_0x3a6a47[_0x56f514(0x1ce)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x51e47a){return logger['error']({'event':_0x3a6a47['ryTJj'],'error':_0x51e47a['message']},_0x3a6a47['YJQSA']),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x382795){const _0x1e28cd=a0_0x2bbfa9,_0x39ced5={'LohWB':_0x1e28cd(0x1ef),'TKCJf':function(_0x181148,_0x5aa1f3){return _0x181148===_0x5aa1f3;},'xVNsS':'write_lock_acquired','ctpab':_0x1e28cd(0x1a0),'ixWMl':_0x1e28cd(0x1c5),'OXIZQ':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','doPVr':function(_0x55656f,_0x279153){return _0x55656f<_0x279153;},'aNoVF':_0x1e28cd(0x1a9),'eMtzO':_0x1e28cd(0x1c9),'fqDAV':_0x1e28cd(0x1b5)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x231fe4=this['buildLockKey']({..._0x382795,'lockType':'write'}),_0x3c9643=this['buildLockKey']({..._0x382795,'lockType':_0x39ced5[_0x1e28cd(0x1af)]}),_0x53cc63=this[_0x1e28cd(0x1ac)]();try{const _0xfb85d1=redisClient[_0x1e28cd(0x1b8)]();if(_0x39ced5['TKCJf'](this['strategy'],'reject')){const _0x32a808=await _0xfb85d1[_0x1e28cd(0x1d7)](_0x231fe4,_0x53cc63,'EX',this['defaultTTL'],'NX');if(_0x32a808==='OK')return logger['debug']({'event':_0x39ced5['xVNsS'],'key':_0x231fe4,'value':_0x53cc63,'strategy':_0x39ced5[_0x1e28cd(0x1ab)]},_0x39ced5['ixWMl']),{'success':!![],'lockValue':_0x53cc63,'lockKey':_0x231fe4};return logger['debug']({'event':_0x1e28cd(0x1ad),'key':_0x231fe4},_0x39ced5['OXIZQ']),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x1c0021=0x0;_0x39ced5['doPVr'](_0x1c0021,this['retryCount']);_0x1c0021++){const [_0x1cddb7,_0x487aa9]=await Promise[_0x1e28cd(0x1d5)]([_0xfb85d1[_0x1e28cd(0x1cd)](_0x3c9643),_0xfb85d1[_0x1e28cd(0x1cd)](_0x231fe4)]);if(!_0x487aa9&&(!_0x1cddb7||_0x39ced5['TKCJf'](parseInt(_0x1cddb7),0x0))){const _0x123827=await _0xfb85d1[_0x1e28cd(0x1d7)](_0x231fe4,_0x53cc63,'EX',this[_0x1e28cd(0x1c3)],'NX');if(_0x123827==='OK')return logger['debug']({'event':_0x1e28cd(0x1df),'key':_0x231fe4,'value':_0x53cc63,'strategy':_0x39ced5[_0x1e28cd(0x1d4)]},_0x39ced5['eMtzO']),{'success':!![],'lockValue':_0x53cc63,'lockKey':_0x231fe4};}logger['debug']({'event':'write_lock_waiting','writeKey':_0x231fe4,'readCount':_0x1cddb7,'attempt':_0x1c0021},_0x39ced5['fqDAV']),await this['sleep'](this['retryDelay']*Math['pow'](0x2,_0x1c0021));}return logger[_0x1e28cd(0x1b4)]({'event':_0x1e28cd(0x1dc),'key':_0x231fe4},_0x1e28cd(0x1d9)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x12f37d){return logger[_0x1e28cd(0x1a7)]({'event':_0x1e28cd(0x1e6),'error':_0x12f37d[_0x1e28cd(0x1bd)]},_0x1e28cd(0x1f3)),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x2bbfa9(0x1e2)](_0x392094,_0x54f5e2){const _0x213088=a0_0x2bbfa9,_0x354f80={'kjDiF':':read:','exGTT':function(_0x2b30ea,_0x163804){return _0x2b30ea>_0x163804;},'sGqTm':function(_0x44e3a0,_0x49309c){return _0x44e3a0(_0x49309c);},'imKpZ':'read_lock_released','FWPXW':'READ\x20lock\x20released','VFAYA':function(_0x33b9b2,_0x38feea){return _0x33b9b2===_0x38feea;},'Scgje':'write_lock_released','Wfhxu':_0x213088(0x1aa),'Kysqy':_0x213088(0x1c4)};if(!this['enabled']||!_0x392094)return!![];try{const _0x5e1eb3=redisClient[_0x213088(0x1b8)]();if(_0x392094[_0x213088(0x1c0)](_0x354f80['kjDiF'])){await _0x5e1eb3[_0x213088(0x1d1)](_0x392094);const _0x585393=_0x392094[_0x213088(0x1be)](0x0,_0x392094[_0x213088(0x1dd)](':')),_0x4c3c4a=await _0x5e1eb3['get'](_0x585393);return _0x4c3c4a&&_0x354f80[_0x213088(0x1bc)](_0x354f80['sGqTm'](parseInt,_0x4c3c4a),0x0)&&await _0x5e1eb3[_0x213088(0x1a1)](_0x585393),logger['debug']({'event':_0x354f80[_0x213088(0x1cf)],'key':_0x392094},_0x354f80['FWPXW']),!![];}const _0xa7a4dd='\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',_0x575a58=await _0x5e1eb3['eval'](_0xa7a4dd,0x1,_0x392094,_0x54f5e2);if(_0x354f80['VFAYA'](_0x575a58,0x1))return logger['debug']({'event':_0x354f80[_0x213088(0x1c8)],'key':_0x392094},_0x354f80[_0x213088(0x1f2)]),!![];return logger['warn']({'event':'lock_release_not_owner','key':_0x392094},_0x354f80[_0x213088(0x1e9)]),![];}catch(_0x2a6599){return logger[_0x213088(0x1a7)]({'event':'lock_release_error','key':_0x392094,'error':_0x2a6599[_0x213088(0x1bd)]},'Lock\x20release\x20error'),![];}}async['extendLock'](_0x432f1d,_0x467f78,_0x2eed2e=null){const _0x3f3486=a0_0x2bbfa9,_0x51fd04={'pQNDt':_0x3f3486(0x1a6),'Vwnum':'Lock\x20TTL\x20extended','aRYwl':_0x3f3486(0x1bb)};if(!this['enabled']||!_0x432f1d)return!![];try{const _0x4003bb=redisClient['getClient'](),_0x2a06e3=_0x3f3486(0x1e4),_0x25880d=await _0x4003bb[_0x3f3486(0x1a2)](_0x2a06e3,0x1,_0x432f1d,_0x467f78,_0x2eed2e||this['defaultTTL']);if(_0x25880d===0x1)return logger[_0x3f3486(0x1ec)]({'event':_0x51fd04['pQNDt'],'key':_0x432f1d,'ttl':_0x2eed2e||this['defaultTTL']},_0x51fd04[_0x3f3486(0x1ee)]),!![];return![];}catch(_0x4636e6){return logger[_0x3f3486(0x1a7)]({'event':_0x51fd04[_0x3f3486(0x1e5)],'key':_0x432f1d,'error':_0x4636e6['message']},_0x3f3486(0x1c1)),![];}}['isEnabled'](){return this['enabled'];}[a0_0x2bbfa9(0x19e)](_0x345f6f){return new Promise(_0x4658bb=>setTimeout(_0x4658bb,_0x345f6f));}async['getLockInfo'](_0x5627ea){const _0xbc7038=a0_0x2bbfa9,_0x28a6e8={'FwaRI':function(_0xd557f5,_0x27b8b2){return _0xd557f5(_0x27b8b2);}};if(!this['enabled'])return{'enabled':![]};try{const _0x260915=redisClient[_0xbc7038(0x1b8)](),_0x3003fc=this['buildLockKey']({..._0x5627ea,'lockType':'write'}),_0x111458=this['buildLockKey']({..._0x5627ea,'lockType':_0xbc7038(0x1ef)}),[_0x43016a,_0xdcdc28]=await Promise[_0xbc7038(0x1d5)]([_0x260915[_0xbc7038(0x1cd)](_0x3003fc),_0x260915['get'](_0x111458)]);return{'enabled':!![],'writeLock':_0x43016a||null,'readCount':_0x28a6e8['FwaRI'](parseInt,_0xdcdc28)||0x0,'writeKey':_0x3003fc,'readKey':_0x111458};}catch(_0x306600){return{'enabled':!![],'error':_0x306600['message']};}}}module[a0_0x2bbfa9(0x1ed)]=new LockManager();
1
+ const a0_0x1a5a44=a0_0x1e71;function a0_0x1e71(_0x749256,_0x3cb7d3){_0x749256=_0x749256-0x6b;const _0x14777a=a0_0x1477();let _0x1e71fb=_0x14777a[_0x749256];if(a0_0x1e71['oMCOMh']===undefined){var _0x319b7b=function(_0x2924dc){const _0x4167de='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2e3785='',_0x23b238='';for(let _0x4cf041=0x0,_0x1458b6,_0x284c87,_0xdb23bd=0x0;_0x284c87=_0x2924dc['charAt'](_0xdb23bd++);~_0x284c87&&(_0x1458b6=_0x4cf041%0x4?_0x1458b6*0x40+_0x284c87:_0x284c87,_0x4cf041++%0x4)?_0x2e3785+=String['fromCharCode'](0xff&_0x1458b6>>(-0x2*_0x4cf041&0x6)):0x0){_0x284c87=_0x4167de['indexOf'](_0x284c87);}for(let _0x2aaf01=0x0,_0x176e42=_0x2e3785['length'];_0x2aaf01<_0x176e42;_0x2aaf01++){_0x23b238+='%'+('00'+_0x2e3785['charCodeAt'](_0x2aaf01)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x23b238);};a0_0x1e71['mbHbVU']=_0x319b7b,a0_0x1e71['uydjRG']={},a0_0x1e71['oMCOMh']=!![];}const _0x440727=_0x14777a[0x0],_0x34872b=_0x749256+_0x440727,_0x268d07=a0_0x1e71['uydjRG'][_0x34872b];return!_0x268d07?(_0x1e71fb=a0_0x1e71['mbHbVU'](_0x1e71fb),a0_0x1e71['uydjRG'][_0x34872b]=_0x1e71fb):_0x1e71fb=_0x268d07,_0x1e71fb;}(function(_0x147a23,_0x312833){const _0x3b0ebf=a0_0x1e71,_0x173c4d=_0x147a23();while(!![]){try{const _0x21f1dd=parseInt(_0x3b0ebf(0x89))/0x1*(-parseInt(_0x3b0ebf(0xa2))/0x2)+-parseInt(_0x3b0ebf(0x6b))/0x3*(-parseInt(_0x3b0ebf(0xaa))/0x4)+parseInt(_0x3b0ebf(0xb6))/0x5*(-parseInt(_0x3b0ebf(0x7e))/0x6)+parseInt(_0x3b0ebf(0x8a))/0x7+-parseInt(_0x3b0ebf(0xa5))/0x8+parseInt(_0x3b0ebf(0x83))/0x9+-parseInt(_0x3b0ebf(0xb2))/0xa*(-parseInt(_0x3b0ebf(0x6f))/0xb);if(_0x21f1dd===_0x312833)break;else _0x173c4d['push'](_0x173c4d['shift']());}catch(_0x5679fc){_0x173c4d['push'](_0x173c4d['shift']());}}}(a0_0x1477,0x881fd));function a0_0x1477(){const _0x39bb6b=['mtm2mNnjCufswa','zxjYB3i','yLDKzgS','mty0otyZmKjRyM5Wvq','CMv0CNK','C2v0zxG','zgvMyxvSDfruta','lI9SB2DNzxi','ntKZnJu2CuDKDLf5','zxHWB3j0CW','DufMwLK','EgnjCuq','v1jjveuGBg9JAYbLCNjVCG','zw52','EwXtsgi','z2v0q2XPzw50','mtbMz1rzCfm','C3rYyxrLz3K','x2LUAxrPywXPEMvK','C2XLzxa','ntqZntu3nuH1Auv0Ca','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','D3jPDgu','q0HuA0K','x3bYzwzPEa','Cg93','C2v0','z2v0','Aw5JCG','x3n0CMf0zwD5','Bg9JA19JB25MAwDFAw5PDa','CMv0CNLdB3vUDa','CM5ZCfu','nhWWFdn8mNWXFdH8n3W2Fdu','CMvHza','Bg9JA19LEhrLBMrLza','rengBxC','D29YA2vYswq','BKHoBee','ow5wEffODq','zxH0zw5Ktg9JAW','Aw5JBhvKzxm','yxPnyKy','odCWmdaXmeTdtfb0vG','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','ywnXDwLYzvDYAxrLtg9JAW','z2vUzxjHDgvmB2nRvMfSDwu','x2vUC3vYzuLUAxrPywXPEMvK','D29YA2vYlq','CMvQzwn0','x2rLzMf1BhruveW','Bg9JA19YzwXLyxnLx2vYCM9Y','yNvPBgrmB2nRs2v5','u25Xr0i','DxvPza','CMvSzwfZzuXVy2S','wgjyCuS','CMv0CNLezwXHEq','nMLqEM9psG','uKvbrcbSB2nRigvYCM9Y','x2vUywjSzwq','zw5HyMXLza','r0POzNe','mtG3mJm5nMziu1HwCW','x3jLDhj5rgvSyxK','BwvZC2fNzq','zxvdB0i','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','x3DVCMTLCKLK','mZm3rgDMvwPP','ndq1mZi5nwfUC09RAq','zgvS','zxHWAxjL','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','rgzjuvu','Eg9lrxu','D3jPDgvFBg9JA19Hy3f1AxjLza','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','qwXiq2S','lI9YzwrPCY1JBgLLBNq','D2fYBG','D3jPDgvFBg9JA190Aw1LB3v0','oNjLywq6','wvzTufG','tg9JAYbYzwXLyxnLigvYCM9Y','tg9JAYbLEhrLBMqGzxjYB3i','x2LUAxrdB25MAwC','ChjLzML4','B2HyueK','zgvIDwC','x3jLDhj5q291BNq','ELf2zgC','CMvHzf9SB2nRx2fJCxvPCMvK','ywXS'];a0_0x1477=function(){return _0x39bb6b;};return a0_0x1477();}const redisClient=require(a0_0x1a5a44(0x93)),{logger}=require(a0_0x1a5a44(0xa9)),{v4:uuidv4}=require(a0_0x1a5a44(0x7a));class LockManager{constructor(){const _0x539bc=a0_0x1a5a44,_0x4770c7={'uAfZY':'3|5|7|1|0|6|2|4'},_0x520639=_0x4770c7[_0x539bc(0xac)]['split']('|');let _0x4ef4ec=0x0;while(!![]){switch(_0x520639[_0x4ef4ec++]){case'0':this['_retryDelay']=null;continue;case'1':this['_retryCount']=null;continue;case'2':this[_0x539bc(0x88)]=null;continue;case'3':this[_0x539bc(0xba)]=null;continue;case'4':this['_initialized']=![];continue;case'5':this[_0x539bc(0x80)]=null;continue;case'6':this[_0x539bc(0xbf)]=null;continue;case'7':this[_0x539bc(0x76)]=null;continue;}break;}}['_initConfig'](){const _0x5de2f6=a0_0x1a5a44,_0x49c8cc={'azMbF':function(_0x277a16,_0x5db794){return _0x277a16===_0x5db794;},'rnspU':function(_0x4ba824,_0x433cba,_0x5823bb){return _0x4ba824(_0x433cba,_0x5823bb);},'euCoB':'rf:lock:','DCFmw':_0x5de2f6(0xc0),'jxsAi':_0x5de2f6(0xa6)},_0x503d8f=_0x5de2f6(0xc3)['split']('|');let _0x312a29=0x0;while(!![]){switch(_0x503d8f[_0x312a29++]){case'0':this['_enabled']=_0x49c8cc[_0x5de2f6(0x6e)](process[_0x5de2f6(0xaf)]['LOCK_DISTRIBUTED_ENABLED'],'true');continue;case'1':this['_retryDelay']=parseInt(process['env']['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64;continue;case'2':this[_0x5de2f6(0x9e)]=_0x49c8cc[_0x5de2f6(0xc2)](parseInt,process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3;continue;case'3':this['_defaultTTL']=parseInt(process['env']['LOCK_DISTRIBUTED_TTL'],0xa)||0xa;continue;case'4':this[_0x5de2f6(0xba)]=_0x49c8cc[_0x5de2f6(0x86)];continue;case'5':logger['info']({'event':_0x49c8cc[_0x5de2f6(0xc6)],'enabled':this['_enabled'],'strategy':this[_0x5de2f6(0xbf)],'ttl':this['_defaultTTL'],'retryCount':this['_retryCount'],'retryDelay':this[_0x5de2f6(0x84)],'workerId':this['_workerId']},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this['_enabled']+',\x20strategy:\x20'+this['_strategy']);continue;case'6':this['_initialized']=!![];continue;case'7':this['_workerId']=_0x5de2f6(0x74)+process['pid'];continue;case'8':this['_strategy']=process['env'][_0x5de2f6(0xb7)]||_0x49c8cc['jxsAi'];continue;}break;}}['_ensureInitialized'](){const _0x577d74=a0_0x1a5a44;!this[_0x577d74(0xb4)]&&this[_0x577d74(0x9a)]();}get[a0_0x1a5a44(0x9b)](){return this['_ensureInitialized'](),this['_prefix'];}get['enabled'](){return this['_ensureInitialized'](),this['_enabled'];}get['defaultTTL'](){const _0x266438=a0_0x1a5a44;return this['_ensureInitialized'](),this[_0x266438(0x76)];}get[a0_0x1a5a44(0xc1)](){const _0x1bd653=a0_0x1a5a44;return this[_0x1bd653(0x73)](),this[_0x1bd653(0x9e)];}get[a0_0x1a5a44(0x7d)](){const _0x1159b7=a0_0x1a5a44;return this['_ensureInitialized'](),this[_0x1159b7(0x84)];}get[a0_0x1a5a44(0xb3)](){return this['_ensureInitialized'](),this['_strategy'];}get[a0_0x1a5a44(0xc7)](){const _0x2e1140=a0_0x1a5a44;return this['_ensureInitialized'](),this[_0x2e1140(0x88)];}[a0_0x1a5a44(0x78)](_0x4f684e){const _0x22bdd8=a0_0x1a5a44,{module:_0x1f58b0,endpoint:_0x4afbf3,lockType:_0x351136,recordId:_0x4e7853}=_0x4f684e;if(_0x4e7853)return''+this['prefix']+_0x1f58b0+':'+_0x4afbf3+':'+_0x4e7853+':'+_0x351136;return''+this[_0x22bdd8(0x9b)]+_0x1f58b0+':'+_0x4afbf3+':'+_0x351136;}[a0_0x1a5a44(0x72)](){const _0x30d04d=a0_0x1a5a44,_0x2b661b={'RZetU':function(_0x1e935e){return _0x1e935e();}};return this[_0x30d04d(0xc7)]+':'+_0x2b661b['RZetU'](uuidv4)+':'+Date['now']();}async['acquireReadLock'](_0x2a2635){const _0x5a19df=a0_0x1a5a44,_0x1e70fc={'ylSHb':_0x5a19df(0xb8),'GJhfq':function(_0x24e8c8,_0x3c9fce){return _0x24e8c8<_0x3c9fce;},'CHTkI':_0x5a19df(0xa0),'AlHCk':'READ\x20lock\x20acquired','XMsrw':'read_lock_waiting','dEKXg':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release','EBtqS':function(_0x278502,_0x35294e){return _0x278502*_0x35294e;},'oTvEj':'read_lock_timeout','rKXZV':_0x5a19df(0x7f)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x2db6ae=this['buildLockKey']({..._0x2a2635,'lockType':_0x1e70fc[_0x5a19df(0xb0)]}),_0x377f63=this[_0x5a19df(0x78)]({..._0x2a2635,'lockType':_0x5a19df(0xc4)}),_0x29c47b=this['generateLockValue']();try{const _0x196e1c=redisClient['getClient']();for(let _0x266435=0x0;_0x1e70fc[_0x5a19df(0x82)](_0x266435,this[_0x5a19df(0xc1)]);_0x266435++){const _0x3bd6f0=await _0x196e1c['get'](_0x2db6ae);if(!_0x3bd6f0){await _0x196e1c[_0x5a19df(0xbe)](_0x377f63),await _0x196e1c[_0x5a19df(0x8c)](_0x377f63,this['defaultTTL']);const _0x450607=_0x377f63+':'+_0x29c47b;return await _0x196e1c[_0x5a19df(0xa7)](_0x450607,this[_0x5a19df(0xa8)],_0x29c47b),logger[_0x5a19df(0x9d)]({'event':_0x1e70fc[_0x5a19df(0xb9)],'key':_0x377f63,'value':_0x29c47b},_0x1e70fc[_0x5a19df(0x92)]),{'success':!![],'lockValue':_0x29c47b,'lockKey':_0x450607};}logger['debug']({'event':_0x1e70fc['XMsrw'],'writeKey':_0x2db6ae,'attempt':_0x266435},_0x1e70fc['dEKXg']),await this['sleep'](_0x1e70fc['EBtqS'](this[_0x5a19df(0x7d)],Math[_0x5a19df(0xbb)](0x2,_0x266435)));}return logger['warn']({'event':_0x1e70fc['oTvEj'],'key':_0x377f63},_0x5a19df(0x70)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x23e666){return logger['error']({'event':'read_lock_error','error':_0x23e666[_0x5a19df(0x85)]},_0x1e70fc['rKXZV']),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x1a5a44(0x71)](_0x11daf1){const _0x2b4a4c=a0_0x1a5a44,_0x3c3364={'FnUFL':_0x2b4a4c(0xb8),'nHNlA':_0x2b4a4c(0x75),'GWsqd':'write_lock_rejected','bWddk':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','SnqGB':function(_0x2d3d65,_0x2d9e0a){return _0x2d3d65<_0x2d9e0a;},'hSTVp':function(_0xcbf5b,_0x2b3199){return _0xcbf5b===_0x2b3199;},'YVmPX':function(_0x20f98e,_0x2b4f3b){return _0x20f98e(_0x2b4f3b);},'goebe':_0x2b4a4c(0xa6),'zQvdg':'Waiting\x20for\x20locks\x20to\x20release','cYnsJ':function(_0x558e65,_0x109469){return _0x558e65*_0x109469;},'ohXPI':_0x2b4a4c(0x95),'YpZxy':_0x2b4a4c(0xae)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x387a95=this[_0x2b4a4c(0x78)]({..._0x11daf1,'lockType':_0x3c3364['FnUFL']}),_0x35de5f=this['buildLockKey']({..._0x11daf1,'lockType':'read'}),_0x13f581=this['generateLockValue']();try{const _0x599e45=redisClient['getClient']();if(this[_0x2b4a4c(0xb3)]===_0x3c3364['nHNlA']){const _0x10f9f3=await _0x599e45[_0x2b4a4c(0xbc)](_0x387a95,_0x13f581,'EX',this[_0x2b4a4c(0xa8)],'NX');if(_0x10f9f3==='OK')return logger[_0x2b4a4c(0x9d)]({'event':'write_lock_acquired','key':_0x387a95,'value':_0x13f581,'strategy':_0x3c3364[_0x2b4a4c(0xc8)]},_0x2b4a4c(0x91)),{'success':!![],'lockValue':_0x13f581,'lockKey':_0x387a95};return logger['debug']({'event':_0x3c3364['GWsqd'],'key':_0x387a95},_0x3c3364[_0x2b4a4c(0xa4)]),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x5255e9=0x0;_0x3c3364[_0x2b4a4c(0x79)](_0x5255e9,this['retryCount']);_0x5255e9++){const [_0x59df3d,_0x102636]=await Promise[_0x2b4a4c(0xa1)]([_0x599e45['get'](_0x35de5f),_0x599e45[_0x2b4a4c(0xbd)](_0x387a95)]);if(!_0x102636&&(!_0x59df3d||_0x3c3364['hSTVp'](_0x3c3364[_0x2b4a4c(0x97)](parseInt,_0x59df3d),0x0))){const _0x27420c=await _0x599e45[_0x2b4a4c(0xbc)](_0x387a95,_0x13f581,'EX',this['defaultTTL'],'NX');if(_0x27420c==='OK')return logger[_0x2b4a4c(0x9d)]({'event':_0x2b4a4c(0x90),'key':_0x387a95,'value':_0x13f581,'strategy':_0x3c3364['goebe']},_0x2b4a4c(0x87)),{'success':!![],'lockValue':_0x13f581,'lockKey':_0x387a95};}logger['debug']({'event':'write_lock_waiting','writeKey':_0x387a95,'readCount':_0x59df3d,'attempt':_0x5255e9},_0x3c3364[_0x2b4a4c(0x9f)]),await this[_0x2b4a4c(0xb5)](_0x3c3364['cYnsJ'](this['retryDelay'],Math[_0x2b4a4c(0xbb)](0x2,_0x5255e9)));}return logger[_0x2b4a4c(0x94)]({'event':_0x3c3364[_0x2b4a4c(0x9c)],'key':_0x387a95},'WRITE\x20lock\x20acquire\x20timeout'),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x4344b4){return logger[_0x2b4a4c(0xa3)]({'event':'write_lock_error','error':_0x4344b4['message']},_0x3c3364['YpZxy']),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x1a5a44(0x7b)](_0x56505d,_0x5bf9d2){const _0x2819fb=a0_0x1a5a44,_0x29f2be={'xcIqD':function(_0x4c36e5,_0x1dcbfa){return _0x4c36e5>_0x1dcbfa;},'DfIQU':_0x2819fb(0x8d),'XbXqK':_0x2819fb(0x77),'Buoiu':_0x2819fb(0x98)};if(!this[_0x2819fb(0x81)]||!_0x56505d)return!![];try{const _0x2d1dc4=redisClient[_0x2819fb(0xb1)]();if(_0x56505d[_0x2819fb(0x6d)](_0x2819fb(0x96))){await _0x2d1dc4[_0x2819fb(0x8b)](_0x56505d);const _0x43e827=_0x56505d['substring'](0x0,_0x56505d['lastIndexOf'](':')),_0x48191a=await _0x2d1dc4[_0x2819fb(0xbd)](_0x43e827);return _0x48191a&&_0x29f2be[_0x2819fb(0xad)](parseInt(_0x48191a),0x0)&&await _0x2d1dc4['decr'](_0x43e827),logger[_0x2819fb(0x9d)]({'event':'read_lock_released','key':_0x56505d},'READ\x20lock\x20released'),!![];}const _0x2b5a8f='\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',_0x5cd7a0=await _0x2d1dc4['eval'](_0x2b5a8f,0x1,_0x56505d,_0x5bf9d2);if(_0x5cd7a0===0x1)return logger['debug']({'event':'write_lock_released','key':_0x56505d},'WRITE\x20lock\x20released'),!![];return logger['warn']({'event':_0x29f2be[_0x2819fb(0x8e)],'key':_0x56505d},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0x48c9d0){return logger[_0x2819fb(0xa3)]({'event':_0x29f2be[_0x2819fb(0x7c)],'key':_0x56505d,'error':_0x48c9d0[_0x2819fb(0x85)]},_0x29f2be['Buoiu']),![];}}async[a0_0x1a5a44(0x6c)](_0x469c5d,_0xf77d9d,_0x2a636e=null){const _0x14b5d5=a0_0x1a5a44;if(!this[_0x14b5d5(0x81)]||!_0x469c5d)return!![];try{const _0x57bea2=redisClient[_0x14b5d5(0xb1)](),_0x489d77='\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',_0x13133b=await _0x57bea2['eval'](_0x489d77,0x1,_0x469c5d,_0xf77d9d,_0x2a636e||this[_0x14b5d5(0xa8)]);if(_0x13133b===0x1)return logger['debug']({'event':_0x14b5d5(0xc5),'key':_0x469c5d,'ttl':_0x2a636e||this[_0x14b5d5(0xa8)]},'Lock\x20TTL\x20extended'),!![];return![];}catch(_0x9fb17){return logger['error']({'event':'lock_extend_error','key':_0x469c5d,'error':_0x9fb17[_0x14b5d5(0x85)]},_0x14b5d5(0x99)),![];}}['isEnabled'](){return this['enabled'];}[a0_0x1a5a44(0xb5)](_0x31b110){return new Promise(_0x1f8e71=>setTimeout(_0x1f8e71,_0x31b110));}async['getLockInfo'](_0x579fd9){const _0x2afdff=a0_0x1a5a44,_0x10d14c={'gzrqr':_0x2afdff(0xc4),'xoKEu':function(_0xe7b308,_0x24f165){return _0xe7b308(_0x24f165);}};if(!this[_0x2afdff(0x81)])return{'enabled':![]};try{const _0x3b4a34=redisClient['getClient'](),_0x5bb017=this[_0x2afdff(0x78)]({..._0x579fd9,'lockType':'write'}),_0xdf6000=this[_0x2afdff(0x78)]({..._0x579fd9,'lockType':_0x10d14c['gzrqr']}),[_0x371d92,_0x5a5047]=await Promise['all']([_0x3b4a34['get'](_0x5bb017),_0x3b4a34[_0x2afdff(0xbd)](_0xdf6000)]);return{'enabled':!![],'writeLock':_0x371d92||null,'readCount':_0x10d14c[_0x2afdff(0x8f)](parseInt,_0x5a5047)||0x0,'writeKey':_0x5bb017,'readKey':_0xdf6000};}catch(_0x3eb233){return{'enabled':!![],'error':_0x3eb233['message']};}}}module[a0_0x1a5a44(0xab)]=new LockManager();
@@ -1 +1 @@
1
- const a0_0x5d7352=a0_0x4a24;(function(_0x270a67,_0x1c112b){const _0x417b21=a0_0x4a24,_0x40df1e=_0x270a67();while(!![]){try{const _0xf9065c=parseInt(_0x417b21(0x153))/0x1*(parseInt(_0x417b21(0x11b))/0x2)+-parseInt(_0x417b21(0x12e))/0x3+parseInt(_0x417b21(0x16b))/0x4+-parseInt(_0x417b21(0xea))/0x5*(parseInt(_0x417b21(0x13d))/0x6)+-parseInt(_0x417b21(0x116))/0x7*(parseInt(_0x417b21(0x114))/0x8)+parseInt(_0x417b21(0xd0))/0x9*(-parseInt(_0x417b21(0x12d))/0xa)+parseInt(_0x417b21(0xe4))/0xb*(parseInt(_0x417b21(0x152))/0xc);if(_0xf9065c===_0x1c112b)break;else _0x40df1e['push'](_0x40df1e['shift']());}catch(_0x270c8a){_0x40df1e['push'](_0x40df1e['shift']());}}}(a0_0x48e2,0x31f69));const pino=require('pino'),fs=require('fs'),path=require(a0_0x5d7352(0x186));function a0_0x48e2(){const _0x43bb2c=['Ahr0Cf9LCNjVCG','ChjVzhvJDgLVBG','mJC3mhPlDuXfqW','DhjPBq','CMvWBgfJzq','zgf0ywjHC2vFy29UzMLN','BwvTB3j5vxnHz2u','iokvKqRILzeGiefqssblzxKGicaGidOG','y3jLzgL0y2fYza','w1jfrefdveveoNrVA2vUxq','Bg9N','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','Dw5RBM93BG','u0vsvKLdrv9oqu1f','w1jfrefdvevexq','Dg9Rzw4','q1jjveLdquW','reiGuxvLCNK','Dg9gAxHLza','yM9KEq','CgLUBY1WCMv0DhK','tM9Kzs5QCW','q09ntuLu','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','C3rHDhvZq29Kzq','qNDTEwW','DxnLCI1Hz2vUDa','oI8V','u2vYDMvYihn0yxj0Aw5NoIa','uKjAzem','Cg9YDa','u0vmrunu','ChjVAMvJDa','zvjyrLe','revmrvrf','quHrsu4','s2LuEfC','CMvWzwf0','zgvIDwC','rxrAz3e','vxrXAeW','BwvZC2fNzq','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','uK9mtejbq0S','mJK2svvbwgn6','tK9uiefdveLwrq','ndi1nZrjC3verKm','tLvrC1y','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','A2v5CW','CgfKrw5K','ndyYohfXsgH0wa','vvbZBuG','zxjYB3i','zuvey08','rgHpt1i','Cg9ZDgDYzxnXBa','CMvZB2X2zq','z3HhsuG','ms4WlJu','B2jQzwn0','sLDux1nfq1jfva','ifTtte9xxq','t2T4ELm','wvHtqKW','vfjbtLnbq1rjt05FuK9mtejbq0S','CgLK','Aw5MBW','AgvHBhrOq2HLy2S','nZm5mhfAtLjTsW','nta4mJi0vu5rEhHZ','C3rYAw5NAwz5','D2fYBG','ywnJzxnZx3rVA2vU','zw5KCg9PBNrFCMvNAxn0zxjLza','Dw5JyxvNAhrfEgnLChrPB24','Aw5JBhvKzxm','v3fiuuO','C3rHDhvZ','yvf3teC','q1jfqvrf','Ag9ZDa','BwTKAxjtEw5J','zhrfwwu','Egfcr0G','mZmWmgvvtNbMra','CMvMCMvZAf90B2TLBG','yxv0Ag9YAxPHDgLVBG','DMvHu08','BMfTzq','vfjbtLnbq1rjt05Fq09ntuLu','seDkwxG','AM9PBG','zxjYB3iUBg9N','y3bRuuq','C2vYDMLJzuLUzM8','Ec1Yzxf1zxn0lwLK','y3jLyxrLv3jPDgvtDhjLyw0','y25nsuO','B3jPz2LUywXvCMW','CgfZC3DK','DxvwB0K','y2HrqNm','zgf0ywjHC2u','u1LtoKHioK1noNnZ','C3rKu2vYAwfSAxPLCNm','ntGZndi4Bfn5sw5R','mti1rK9NuKjc','rhzeBfu','uLP6Dwi','Bwf4','y3jLzgL0x2nHCMq','zxHWB3j0CW','AxntBg93','CMvZDgzVCMDL','EM1YyLy','u1fmx0Xpr19tte9xx1riuKvtse9mra','Dg9mB3DLCKnHC2u','yxbPA2v5','qunusvzf','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','uNzjuKO','Ahj0Aw1L','icbizwfSDgG6ia','y29Kzq','quT4Egy','y29UBMvJDgLVBG','CM93C0fMzMvJDgvK','quTUsvm','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','BhDSv3C','mtK2mtyWq05lCwTN','BgvUz3rO','zKLLDKi','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','icbvuKW6icaGia','DhLWzq','ChjVAMvJDf9SB2fKzwq','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','yMfZzvvYBa','zMf0ywW','C2vJCMv0','C3rYAw5N','DxnLCG','yxbWlMXVzW','vvbeqvrf','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','su5trvju','Bwv0Ag9K','ChjPDMf0zwTLEq','Cw5ptKe','zMfSC2u','zgjFDhjHBNnHy3rPB24','DgvZDa','zw52','wu1mzK8','wxbprKq','Bwf0y2G','Cgf0Aa','zMLSzv9SB2DNAw5Nx2vUywjSzwq','C3rHy2S','BxmP','txfVA28','C3bSAxq','C3rHCNrZv2L0Aa','C29Tzq','mZC3mxPsAwvdtq','qKvhsu4','verIuNi','te9hx0rjuG','yKHnzvu','CxvLCNK','B3rW','wxPwAvO','CgLU','CgfZC3DVCMq','rxjYB3i','ChDK','Dw1fvum','Dw5Oyw5KBgvKuMvQzwn0Aw9U','q1rNz00','iokvKqRILzeGienVBMzPzYaGicaGidOG','AujxyLa','Dg9ju09tDhjPBMC','AxnVvgLTzq','q3n0r0S','mtK4t25RugHv','sfruuca','AhfzqNa','CMvXlMHLywrLCNmUyxv0Ag9YAxPHDgLVBG'];a0_0x48e2=function(){return _0x43bb2c;};return a0_0x48e2();}let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':a0_0x5d7352(0x150),'ignore':a0_0x5d7352(0x172),'singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':a0_0x5d7352(0x16e),'hideObject':!![]},isDevelopment=process['env']['NODE_ENV']!==a0_0x5d7352(0xe9),logLevel=process['env']['LOG_LEVEL']||a0_0x5d7352(0x12b);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0x5d7352(0xfc),'options':prettyPrintOptions}:undefined,'base':{'service':a0_0x5d7352(0x15a),'version':process['env']['APP_VERSION']||a0_0x5d7352(0x123),'env':process['env']['NODE_ENV']||'development'},'timestamp':pino['stdTimeFunctions'][a0_0x5d7352(0xe2)],'redact':{'paths':[a0_0x5d7352(0xe7),'req.headers[\x22x-api-key\x22]',a0_0x5d7352(0xd9),a0_0x5d7352(0xf7),'apiKey','DB_PASSWORD',a0_0x5d7352(0x125)],'censor':a0_0x5d7352(0xf6)},'serializers':{'req':_0x507c36=>({'id':_0x507c36['id'],'method':_0x507c36[a0_0x5d7352(0x17c)],'url':_0x507c36['url'],'path':_0x507c36[a0_0x5d7352(0x186)],'remoteAddress':_0x507c36['ip']||_0x507c36[a0_0x5d7352(0x166)]?.['remoteAddress']}),'res':_0x16e1ca=>({'statusCode':_0x16e1ca[a0_0x5d7352(0x100)],'headers':_0x16e1ca['getHeaders']?.()}),'err':pino[a0_0x5d7352(0x151)]['err']}});function a0_0x4a24(_0x26d471,_0xa578c7){_0x26d471=_0x26d471-0xcb;const _0x48e2d7=a0_0x48e2();let _0x4a2490=_0x48e2d7[_0x26d471];if(a0_0x4a24['sedFZM']===undefined){var _0x233664=function(_0x46aefa){const _0x2595d2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x25cf45='',_0x56abb2='';for(let _0x5a3e90=0x0,_0x44a58e,_0x45a98a,_0x45a319=0x0;_0x45a98a=_0x46aefa['charAt'](_0x45a319++);~_0x45a98a&&(_0x44a58e=_0x5a3e90%0x4?_0x44a58e*0x40+_0x45a98a:_0x45a98a,_0x5a3e90++%0x4)?_0x25cf45+=String['fromCharCode'](0xff&_0x44a58e>>(-0x2*_0x5a3e90&0x6)):0x0){_0x45a98a=_0x2595d2['indexOf'](_0x45a98a);}for(let _0x1ddfdc=0x0,_0x2d697e=_0x25cf45['length'];_0x1ddfdc<_0x2d697e;_0x1ddfdc++){_0x56abb2+='%'+('00'+_0x25cf45['charCodeAt'](_0x1ddfdc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x56abb2);};a0_0x4a24['NKFBAd']=_0x233664,a0_0x4a24['yIZZXX']={},a0_0x4a24['sedFZM']=!![];}const _0x5aac72=_0x48e2d7[0x0],_0xdf7123=_0x26d471+_0x5aac72,_0x329b1c=a0_0x4a24['yIZZXX'][_0xdf7123];return!_0x329b1c?(_0x4a2490=a0_0x4a24['NKFBAd'](_0x4a2490),a0_0x4a24['yIZZXX'][_0xdf7123]=_0x4a2490):_0x4a2490=_0x329b1c,_0x4a2490;}function initFileLogging(){const _0x42f07e=a0_0x5d7352,_0x1d1aa2={'CTggM':'default','THUaj':'restforge','Mqoko':function(_0x111f77,_0x58013b){return _0x111f77===_0x58013b;},'nHOjx':'debug','vLKhr':function(_0x4181bc,_0x702166){return _0x4181bc!==_0x702166;},'Bwmyl':_0x42f07e(0x17f),'bZJah':function(_0xc60e6a,_0x1cd85a){return _0xc60e6a(_0x1cd85a);},'eEDcO':_0x42f07e(0x178),'qhLZS':_0x42f07e(0x187),'NUQsV':_0x42f07e(0x145),'IyZBy':function(_0x3667cb,_0x13b776,_0x1f6c86){return _0x3667cb(_0x13b776,_0x1f6c86);},'aJsmG':'info'};if(fileLoggingInitialized)return;logToFile=process[_0x42f07e(0x182)]['LOG_TO_FILE']==='true';const _0x2821e2=process[_0x42f07e(0x182)][_0x42f07e(0x160)]||_0x1d1aa2[_0x42f07e(0xde)];logDir=process['env'][_0x42f07e(0xd3)]||'./logs/'+_0x2821e2,serviceName=process[_0x42f07e(0x182)][_0x42f07e(0xf5)]||_0x1d1aa2['THUaj'],sqlLogEnabled=_0x1d1aa2[_0x42f07e(0xcc)](process[_0x42f07e(0x182)]['SQL_LOG_ENABLED'],'true'),sqlLogLevel=process['env']['SQL_LOG_LEVEL']||_0x1d1aa2['nHOjx'],sqlLogParams=_0x1d1aa2['vLKhr'](process[_0x42f07e(0x182)]['SQL_LOG_PARAMS'],_0x1d1aa2[_0x42f07e(0x101)]),sqlLogSlowThreshold=_0x1d1aa2['bZJah'](parseInt,process['env'][_0x42f07e(0x15c)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x309638=path[_0x42f07e(0x121)](process['cwd'](),logDir);try{!fs['existsSync'](_0x309638)&&fs[_0x42f07e(0x13a)](_0x309638,{'recursive':!![]});}catch(_0x4239a1){console[_0x42f07e(0x11d)]('Failed\x20to\x20create\x20log\x20directory\x20'+_0x309638+':',_0x4239a1['message']),fileLoggingInitialized=!![];return;}const _0x591d49=path[_0x42f07e(0x144)](_0x309638,_0x1d1aa2[_0x42f07e(0x11e)]),_0x417e61=path['join'](_0x309638,_0x42f07e(0x145));try{appLogStream=fs['createWriteStream'](_0x591d49,{'flags':'a'}),errorLogStream=fs[_0x42f07e(0x149)](_0x417e61,{'flags':'a'}),fileLoggingInitialized=!![];const _0x113f31={'event':_0x1d1aa2['qhLZS'],'logDir':_0x309638,'files':[_0x1d1aa2['eEDcO'],_0x1d1aa2[_0x42f07e(0x117)]]},_0x11fa35=_0x42f07e(0x118)+_0x309638;logger['info'](_0x113f31,_0x11fa35),_0x1d1aa2['IyZBy'](writeToFileLog,{..._0x113f31,'level':_0x42f07e(0x12b),'msg':_0x11fa35,'time':new Date()[_0x42f07e(0xe1)]()},_0x1d1aa2['aJsmG']);}catch(_0x30340e){console['error']('Failed\x20to\x20create\x20log\x20streams:',_0x30340e[_0x42f07e(0x111)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x393057,_0x4abc2f){const _0x24e130=a0_0x5d7352,_0x4c8fc8={'EtZgq':function(_0x4e02b8,_0x5d8a4e){return _0x4e02b8||_0x5d8a4e;},'umEUC':function(_0x53dad1,_0x573568){return _0x53dad1+_0x573568;},'DvDlU':function(_0x136495,_0x24a765){return _0x136495===_0x24a765;},'xaBGH':'fatal'};if(_0x4c8fc8[_0x24e130(0x10f)](!logToFile,!appLogStream))return;const _0x16af54={'service':serviceName,..._0x393057},_0x1f3647=_0x4c8fc8[_0x24e130(0xdc)](JSON[_0x24e130(0x12f)](_0x16af54),'\x0a');appLogStream['write'](_0x1f3647),(_0x4c8fc8[_0x24e130(0x154)](_0x4abc2f,_0x24e130(0x11d))||_0x4abc2f===_0x4c8fc8[_0x24e130(0x13c)])&&(errorLogStream&&errorLogStream['write'](_0x1f3647));}const createRequestLogger=(_0x269e06={})=>{return logger['child'](_0x269e06);},logServerStart=_0x498822=>{const _0x16daa8=a0_0x5d7352,_0x584c07={'KiTxW':function(_0x93ecc8,_0x4da5c8){return _0x93ecc8/_0x4da5c8;},'RZzub':'server_starting'},_0x2ba4cc=_0x16daa8(0xff),_0x2eb75e=Math[_0x16daa8(0x156)](0x0,0x37-_0x2ba4cc[_0x16daa8(0x16c)]),_0x4003ca=Math['floor'](_0x584c07[_0x16daa8(0x10c)](_0x2eb75e,0x2)),_0x163909=_0x2eb75e-_0x4003ca,_0x437b6d='║'+'\x20'[_0x16daa8(0x10d)](_0x4003ca)+_0x2ba4cc+'\x20'[_0x16daa8(0x10d)](_0x163909)+'║',_0x28af99=_0x16daa8(0xf3)+_0x437b6d+_0x16daa8(0x17a)+(_0x498822['environment']||_0x16daa8(0xfd))[_0x16daa8(0x11a)](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x498822['project']||'N/A')['padEnd'](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+String(_0x498822[_0x16daa8(0x106)]||0xbb8)['padEnd'](0x26)+_0x16daa8(0xdf)+(_0x498822['configFile']||'Default')[_0x16daa8(0x11a)](0x26)+_0x16daa8(0xef)+(_0x498822['apiKey']?_0x16daa8(0x15f):_0x16daa8(0x115))[_0x16daa8(0x11a)](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x16daa8(0xf2)](_0x28af99);const _0x3140fd={'event':_0x584c07[_0x16daa8(0x155)],'project':_0x498822[_0x16daa8(0x108)],'port':_0x498822['port'],'config':_0x498822['configFile'],'apiKeyEnabled':!!_0x498822['apiKey']};logger['info'](_0x3140fd),writeToFileLog({..._0x3140fd,'level':'info','msg':_0x16daa8(0x104)+_0x498822[_0x16daa8(0x108)]+'\x20on\x20port\x20'+_0x498822[_0x16daa8(0x106)],'time':new Date()[_0x16daa8(0xe1)]()},_0x16daa8(0x12b));},logServerReady=_0x75db3d=>{const _0x279f97=a0_0x5d7352,_0x571e98={'yqxJr':'server_ready','YMLfO':function(_0x32d022,_0x4bab60,_0x13368e){return _0x32d022(_0x4bab60,_0x13368e);}},_0x415def={'event':_0x571e98['yqxJr'],'port':_0x75db3d[_0x279f97(0x106)],'module':_0x75db3d['module'],'healthCheck':_0x75db3d[_0x279f97(0x12c)],'serviceInfo':_0x75db3d[_0x279f97(0x147)],'baseUrl':_0x75db3d[_0x279f97(0x173)]},_0x3c2146='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x75db3d['port'];logger['info'](_0x415def,_0x3c2146),_0x571e98[_0x279f97(0x183)](writeToFileLog,{..._0x415def,'level':'info','msg':_0x3c2146,'time':new Date()[_0x279f97(0xe1)]()},'info'),_0x75db3d[_0x279f97(0x12c)]&&logger['info'](_0x279f97(0x163)+_0x75db3d['healthCheck']),_0x75db3d[_0x279f97(0x147)]&&logger[_0x279f97(0x12b)]('\x20\x20Info:\x20\x20\x20'+_0x75db3d[_0x279f97(0x147)]),_0x75db3d[_0x279f97(0x173)]&&logger[_0x279f97(0x12b)](_0x279f97(0x16f)+_0x75db3d[_0x279f97(0x173)]);},logProjectLoaded=(_0x546fed,_0xa21c7b)=>{const _0x65db7=a0_0x5d7352,_0x5b5a6f={'cpkQD':_0x65db7(0x171),'nFwvX':function(_0x5a569e,_0x43e1cb,_0x357875){return _0x5a569e(_0x43e1cb,_0x357875);},'wEjig':_0x65db7(0x12b)},_0x41c50b={'event':_0x5b5a6f[_0x65db7(0x146)],'project':_0x546fed,'path':_0xa21c7b},_0x2bc4b4='[OK]\x20Project\x20loaded:\x20'+_0x546fed;logger['info'](_0x41c50b,_0x2bc4b4),_0x5b5a6f['nFwvX'](writeToFileLog,{..._0x41c50b,'level':_0x5b5a6f['wEjig'],'msg':_0x2bc4b4,'time':new Date()[_0x65db7(0xe1)]()},'info');},logEndpointRegistered=(_0x7b9bdf,_0x2a4a43)=>{const _0x124742=a0_0x5d7352,_0x38555e={'wUFqs':_0x124742(0x132),'DgGvl':function(_0x382420,_0x49f79e,_0x55cc62){return _0x382420(_0x49f79e,_0x55cc62);}},_0x4200c0={'event':_0x38555e['wUFqs'],'endpoint':_0x7b9bdf,'route':_0x2a4a43},_0x8fd073='\x20\x20→\x20'+_0x7b9bdf+':\x20'+_0x2a4a43;logger[_0x124742(0x10e)](_0x4200c0,_0x8fd073),_0x38555e['DgGvl'](writeToFileLog,{..._0x4200c0,'level':_0x124742(0x10e),'msg':_0x8fd073,'time':new Date()[_0x124742(0xe1)]()},'debug');},logDatabaseConfig=_0x17580b=>{const _0x3493b6=a0_0x5d7352,_0x12963f={'qNRPd':'debug'},_0x373c18={'event':_0x3493b6(0xed),'host':_0x17580b[_0x3493b6(0x139)],'port':_0x17580b[_0x3493b6(0x106)],'database':_0x17580b[_0x3493b6(0x14f)],'type':_0x17580b[_0x3493b6(0x170)],'user':_0x17580b[_0x3493b6(0x177)]},_0x5ff187='Database:\x20'+_0x17580b[_0x3493b6(0x170)]+_0x3493b6(0x103)+_0x17580b['host']+':'+_0x17580b[_0x3493b6(0x106)]+'/'+_0x17580b['database'];logger[_0x3493b6(0x10e)](_0x373c18,_0x5ff187),writeToFileLog({..._0x373c18,'level':_0x12963f['qNRPd'],'msg':_0x5ff187,'time':new Date()['toISOString']()},_0x12963f['qNRPd']);},logRequest=(_0x534910,_0x2caf93,_0x57f659)=>{const _0xc44ca8=a0_0x5d7352,_0x318eb4={'djGVG':'http_request','xbTFi':_0xc44ca8(0x12b),'DrqAV':function(_0x29c920,_0x146a8d){return _0x29c920>=_0x146a8d;},'AKnIS':'warn','AQRjP':function(_0x3ebca2,_0x15d482,_0x23a721){return _0x3ebca2(_0x15d482,_0x23a721);}},_0x486bd9={'event':_0x318eb4['djGVG'],'method':_0x534910['method'],'path':_0x534910[_0xc44ca8(0x186)],'statusCode':_0x2caf93['statusCode'],'durationMs':_0x57f659,'ip':_0x534910['ip']},_0x426985=_0x534910['method']+'\x20'+_0x534910[_0xc44ca8(0x186)]+'\x20-\x20'+_0x2caf93['statusCode']+'\x20('+_0x57f659+_0xc44ca8(0xcb);let _0x20951b=_0x318eb4['xbTFi'];if(_0x2caf93['statusCode']>=0x1f4)_0x20951b='error',logger[_0xc44ca8(0x11d)](_0x486bd9,_0x426985);else _0x318eb4['DrqAV'](_0x2caf93[_0xc44ca8(0x100)],0x190)?(_0x20951b=_0x318eb4[_0xc44ca8(0x168)],logger['warn'](_0x486bd9,_0x426985)):logger[_0xc44ca8(0x12b)](_0x486bd9,_0x426985);_0x318eb4['AQRjP'](writeToFileLog,{..._0x486bd9,'level':_0x20951b,'msg':_0x426985,'time':new Date()['toISOString']()},_0x20951b);},SENSITIVE_PARAM_PATTERNS=['password',a0_0x5d7352(0x14c),'pwd','token','access_token',a0_0x5d7352(0x13e),a0_0x5d7352(0x175),'api_secret',a0_0x5d7352(0x15e),'api_key','credential','credentials',a0_0x5d7352(0xd8),a0_0x5d7352(0xd6),'private_key',a0_0x5d7352(0x17d)],redactSensitiveParams=(_0x3e4774,_0x542255)=>{const _0xa5193a=a0_0x5d7352,_0x3ea130={'xpQDA':_0xa5193a(0x176),'aQwLG':'[REDACTED:hash]','TucTN':function(_0x2810c3,_0x4fb1c5){return _0x2810c3===_0x4fb1c5;}};if(!_0x3e4774||_0x3ea130['TucTN'](_0x3e4774[_0xa5193a(0x16c)],0x0))return _0x3e4774;const _0x23d284=_0x542255['toLowerCase'](),_0x4ee180=_0x23d284[_0xa5193a(0x185)](/\(([^)]+)\)\s*values/i);let _0x3e8348=[];_0x4ee180&&(_0x3e8348=_0x4ee180[0x1][_0xa5193a(0xcd)](',')['map'](_0x62fe87=>_0x62fe87[_0xa5193a(0xeb)]()['toLowerCase']()));const _0x2e3980=_0x23d284['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x2e3980){const _0x446809=_0x2e3980[0x1],_0x1eaabb=_0x446809[_0xa5193a(0x185)](/(\w+)\s*=/g);_0x1eaabb&&(_0x3e8348=_0x1eaabb['map'](_0x2169f6=>_0x2169f6[_0xa5193a(0xec)](/\s*=/,'')[_0xa5193a(0xeb)]()[_0xa5193a(0x15d)]()));}return _0x3e4774['map']((_0x34fafc,_0x2d100c)=>{const _0x19d884=_0xa5193a;if(_0x3e8348[_0x2d100c]){const _0x21de4f=_0x3e8348[_0x2d100c],_0x454283=SENSITIVE_PARAM_PATTERNS[_0x19d884(0xcf)](_0x2ff6f8=>_0x21de4f[_0x19d884(0x134)](_0x2ff6f8));if(_0x454283)return _0x19d884(0xf6);}if(typeof _0x34fafc===_0x3ea130['xpQDA']&&_0x34fafc['length']>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x34fafc)&&_0x34fafc[_0x19d884(0x134)]('.'))return _0x19d884(0xf1);if(/^[a-fA-F0-9]{32,}$/[_0x19d884(0x181)](_0x34fafc))return _0x3ea130[_0x19d884(0x137)];}return _0x34fafc;});},parseQueryMetadata=_0x147ac4=>{const _0x5b6d51=a0_0x5d7352,_0x5254d6={'eTdJg':'UNKNOWN','fIevB':_0x5b6d51(0x107),'DhOOR':_0x5b6d51(0x17b),'qnONA':'DELETE','hqYBp':_0x5b6d51(0xd1),'zmrbV':'START\x20TRANSACTION','NMvup':_0x5b6d51(0x129),'FIANv':'DDL_CREATE'},_0x3cae73=_0x147ac4[_0x5b6d51(0xeb)](),_0x51ba92=_0x3cae73['toUpperCase']();let _0x3689bb=_0x5254d6['eTdJg'],_0x367f06=null;if(_0x51ba92[_0x5b6d51(0xce)](_0x5254d6[_0x5b6d51(0x16d)])){_0x3689bb=_0x5254d6['fIevB'];const _0x3399fe=_0x3cae73[_0x5b6d51(0x185)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x367f06=_0x3399fe?_0x3399fe[0x1]:null;}else{if(_0x51ba92['startsWith'](_0x5254d6[_0x5b6d51(0x11f)])){_0x3689bb='INSERT';const _0x2cef95=_0x3cae73['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x367f06=_0x2cef95?_0x2cef95[0x1]:null;}else{if(_0x51ba92[_0x5b6d51(0xce)](_0x5b6d51(0x179))){_0x3689bb='UPDATE';const _0x152c07=_0x3cae73[_0x5b6d51(0x185)](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x367f06=_0x152c07?_0x152c07[0x1]:null;}else{if(_0x51ba92['startsWith'](_0x5254d6[_0x5b6d51(0x17e)])){_0x3689bb=_0x5b6d51(0x10a);const _0x45e2a8=_0x3cae73['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x367f06=_0x45e2a8?_0x45e2a8[0x1]:null;}else{if(_0x51ba92['startsWith'](_0x5254d6[_0x5b6d51(0xe6)])||_0x51ba92['startsWith'](_0x5254d6[_0x5b6d51(0x15b)]))_0x3689bb='TRANSACTION_BEGIN';else{if(_0x51ba92[_0x5b6d51(0xce)](_0x5b6d51(0xfe)))_0x3689bb=_0x5b6d51(0x142);else{if(_0x51ba92['startsWith'](_0x5b6d51(0x113)))_0x3689bb=_0x5254d6['NMvup'];else{if(_0x51ba92['startsWith'](_0x5b6d51(0x138)))_0x3689bb=_0x5254d6['FIANv'];else{if(_0x51ba92['startsWith']('ALTER'))_0x3689bb='DDL_ALTER';else _0x51ba92[_0x5b6d51(0xce)]('DROP')&&(_0x3689bb='DDL_DROP');}}}}}}}}return{'type':_0x3689bb,'table':_0x367f06};},startQueryTimer=()=>{const _0x271403=process['hrtime']();return()=>{const _0x3fd0a2=a0_0x4a24,[_0x438613,_0x5f4eeb]=process[_0x3fd0a2(0x162)](_0x271403);return parseFloat((_0x438613*0x3e8+_0x5f4eeb/0xf4240)[_0x3fd0a2(0xfa)](0x2));};},logQuery=(_0xd52d6f,_0x577416=[],_0x1326c5={})=>{const _0x378485=a0_0x5d7352,_0x1b083a={'RBZdC':function(_0x1876c6,_0x4b4db6){return _0x1876c6(_0x4b4db6);},'UtqhL':'sql_query','YXSBL':function(_0x3dae6f,_0x534a50){return _0x3dae6f>_0x534a50;},'RcoJG':function(_0x2ba221,_0x4aac19){return _0x2ba221!==_0x4aac19;},'Cqtov':function(_0x355e44,_0x30ed2f){return _0x355e44!==_0x30ed2f;},'CstGK':function(_0xfd10af,_0x1e3c87){return _0xfd10af||_0x1e3c87;},'IXJOj':function(_0x2f7e3b,_0x5d718f){return _0x2f7e3b!==_0x5d718f;},'AHQIN':_0x378485(0x10e),'JlAuS':_0x378485(0x130),'vGaii':function(_0x3fa03a,_0x3acf2a){return _0x3fa03a===_0x3acf2a;},'veaSO':'info','HGJYx':function(_0x273e0e,_0x2c5882,_0x309a50){return _0x273e0e(_0x2c5882,_0x309a50);}};if(!sqlLogEnabled){logger['debug']({'event':'db_query','query':_0xd52d6f['substring'](0x0,0xc8),'paramCount':_0x577416['length']},_0x378485(0xf9));return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x378485(0x120)}=_0x1326c5,{type:_0xb4d8a9,table:_0x19ad34}=_0x1b083a[_0x378485(0x105)](parseQueryMetadata,_0xd52d6f),_0x12a72a={'event':_0x1b083a[_0x378485(0x110)],'queryType':_0xb4d8a9,'table':_0x19ad34,'query':_0xd52d6f,'paramCount':_0x577416['length'],'dbType':dbType};sqlLogParams&&_0x1b083a[_0x378485(0x128)](_0x577416['length'],0x0)&&(_0x12a72a['params']=redactSensitiveParams(_0x577416,_0xd52d6f));_0x1b083a['RcoJG'](duration,null)&&(_0x12a72a['durationMs']=duration,_0x12a72a[_0x378485(0x159)]=_0x1b083a[_0x378485(0x128)](duration,sqlLogSlowThreshold));_0x1b083a['Cqtov'](rowsAffected,null)&&(_0x12a72a[_0x378485(0x167)]=rowsAffected);const _0xf182e3=_0x1b083a[_0x378485(0xe3)](_0x19ad34,_0x378485(0xf4));let _0x4f7887='['+_0xb4d8a9+']\x20'+_0xf182e3;_0x1b083a['IXJOj'](duration,null)&&(_0x4f7887+='\x20('+duration+'ms)');const _0x3459e7=duration!==null&&duration>sqlLogSlowThreshold;let _0x23bd34=_0x1b083a[_0x378485(0x10b)];if(_0x3459e7)_0x4f7887+=_0x378485(0x126),_0x23bd34=_0x1b083a['JlAuS'],logger[_0x378485(0x130)](_0x12a72a,_0x4f7887);else _0x1b083a['vGaii'](sqlLogLevel,_0x1b083a['veaSO'])?(_0x23bd34=_0x1b083a[_0x378485(0x140)],logger[_0x378485(0x12b)](_0x12a72a,_0x4f7887)):logger[_0x378485(0x10e)](_0x12a72a,_0x4f7887);_0x1b083a[_0x378485(0x143)](writeToFileLog,{..._0x12a72a,'level':_0x23bd34,'msg':_0x4f7887,'time':new Date()['toISOString']()},_0x23bd34);},logTransaction=(_0x894eb5,_0x5e8d9d)=>{const _0x36ddb7=a0_0x5d7352,_0x576f8f={'YzViZ':_0x36ddb7(0x10e)},_0x464da5={'event':_0x36ddb7(0x180),'status':_0x894eb5,'queryCount':_0x5e8d9d},_0x55d6da='Transaction\x20'+_0x894eb5;logger[_0x36ddb7(0x10e)](_0x464da5,_0x55d6da),writeToFileLog({..._0x464da5,'level':'debug','msg':_0x55d6da,'time':new Date()[_0x36ddb7(0xe1)]()},_0x576f8f[_0x36ddb7(0xd7)]);},redactObject=_0x48c927=>{const _0x4d68a7=a0_0x5d7352,_0x430ec2={'lPdtZ':function(_0x674860,_0x520a49){return _0x674860!==_0x520a49;},'TDbRr':_0x4d68a7(0x124),'uuVoI':'token','OkxzS':'secret','IHvhX':'apikey','YpOFD':_0x4d68a7(0x157),'xefpi':'cvv','biJXJ':'ssn','PmxnL':'private_key','dtEYe':_0x4d68a7(0x13e),'cnMIJ':_0x4d68a7(0x131),'UPsmH':'[REDACTED]','chQBs':function(_0x3e117b,_0x59a7a2){return _0x3e117b!==_0x59a7a2;}};if(!_0x48c927||_0x430ec2['lPdtZ'](typeof _0x48c927,_0x430ec2['TDbRr']))return _0x48c927;const _0x2d4335=['password',_0x4d68a7(0x14c),_0x4d68a7(0xdb),_0x430ec2[_0x4d68a7(0x14d)],_0x430ec2[_0x4d68a7(0x127)],_0x430ec2['IHvhX'],'api_key',_0x4d68a7(0x13f),_0x4d68a7(0xf0),_0x430ec2[_0x4d68a7(0x184)],_0x430ec2['xefpi'],_0x430ec2['biJXJ'],'pin',_0x430ec2['PmxnL'],_0x4d68a7(0x17d),_0x430ec2[_0x4d68a7(0x13b)],_0x430ec2[_0x4d68a7(0x14a)]],_0x2167d8=Array['isArray'](_0x48c927)?[..._0x48c927]:{..._0x48c927};for(const _0x82928e of Object[_0x4d68a7(0x119)](_0x2167d8)){const _0x58fe65=_0x82928e[_0x4d68a7(0x15d)]();if(_0x2d4335[_0x4d68a7(0xcf)](_0x1e789b=>_0x58fe65[_0x4d68a7(0x134)](_0x1e789b)))_0x2167d8[_0x82928e]=_0x430ec2[_0x4d68a7(0x11c)];else typeof _0x2167d8[_0x82928e]===_0x430ec2[_0x4d68a7(0xd2)]&&_0x430ec2[_0x4d68a7(0x14e)](_0x2167d8[_0x82928e],null)&&(_0x2167d8[_0x82928e]=redactObject(_0x2167d8[_0x82928e]));}return _0x2167d8;},logError=(_0x3044f4,_0x4bef49={},_0xfa5791=null)=>{const _0x350700=a0_0x5d7352,_0x41bfcb={'gxGIH':_0x350700(0x11d)},_0x3c4f7a={'event':_0x41bfcb['gxGIH'],'errorName':_0x3044f4[_0x350700(0x141)]||'Error','errorMessage':_0x3044f4['message'],'errorCode':_0x3044f4['code']||null,'stack':_0x3044f4['stack'],..._0x4bef49},_0x3522d8=_0xfa5791||'Error:\x20'+_0x3044f4['message'];logger['error'](_0x3c4f7a,_0x3522d8),writeToFileLog({..._0x3c4f7a,'level':_0x41bfcb[_0x350700(0x122)],'msg':_0x3522d8,'time':new Date()[_0x350700(0xe1)]()},_0x350700(0x11d));},logFatalError=(_0x2915b8,_0x41716e={},_0x4dc522=null)=>{const _0x171589=a0_0x5d7352,_0x55221c={'RvIRJ':'fatal_error','gCWBB':function(_0x3b5e32,_0x58d34f,_0x524003){return _0x3b5e32(_0x58d34f,_0x524003);},'AKxxf':'fatal'},_0x50d35c={'event':_0x55221c[_0x171589(0x161)],'errorName':_0x2915b8['name']||'Error','errorMessage':_0x2915b8['message'],'errorCode':_0x2915b8[_0x171589(0x164)]||null,'stack':_0x2915b8['stack'],'severity':_0x171589(0xf8),..._0x41716e},_0x430e80=_0x4dc522||'FATAL:\x20'+_0x2915b8['message'];logger['fatal'](_0x50d35c,_0x430e80),_0x55221c['gCWBB'](writeToFileLog,{..._0x50d35c,'level':_0x55221c[_0x171589(0x165)],'msg':_0x430e80,'time':new Date()['toISOString']()},'error');},logHttpError=(_0x9b8301,_0xfc15fa,_0x31ee70={})=>{const _0x2af4bc=a0_0x5d7352,_0x879386={'avcBQ':_0x2af4bc(0xda),'IrdaT':_0x2af4bc(0x102),'LrBeY':function(_0x4ebb07,_0x4cfda6){return _0x4ebb07(_0x4cfda6);},'VtWFD':function(_0x7016d2,_0x1d1ef3){return _0x7016d2>=_0x1d1ef3;},'CPLmp':'error'},_0x5c12ba={'event':_0x2af4bc(0xe8),'errorName':_0x9b8301['name']||_0x879386['avcBQ'],'errorMessage':_0x9b8301['message'],'errorCode':_0x9b8301['code']||_0x9b8301['statusCode']||0x1f4,'stack':_0x9b8301['stack'],'method':_0xfc15fa?.[_0x2af4bc(0x17c)],'url':_0xfc15fa?.['url']||_0xfc15fa?.[_0x2af4bc(0x14b)],'path':_0xfc15fa?.['path'],'ip':_0xfc15fa?.['ip']||_0xfc15fa?.['connection']?.['remoteAddress'],'userAgent':_0xfc15fa?.['get']?.(_0x879386['IrdaT']),'requestId':_0xfc15fa?.['id']||_0xfc15fa?.['headers']?.[_0x2af4bc(0x148)],'body':_0xfc15fa?.['body']?_0x879386['LrBeY'](redactObject,_0xfc15fa[_0x2af4bc(0xfb)]):undefined,'query':_0xfc15fa?.[_0x2af4bc(0xd5)],..._0x31ee70},_0xe54f78=_0x9b8301[_0x2af4bc(0x100)]||_0x9b8301['status']||0x1f4,_0x2b0f43=_0x2af4bc(0xe5)+_0xe54f78+':\x20'+_0x9b8301['message'];_0x879386['VtWFD'](_0xe54f78,0x1f4)?logger['error'](_0x5c12ba,_0x2b0f43):logger[_0x2af4bc(0x130)](_0x5c12ba,_0x2b0f43),writeToFileLog({..._0x5c12ba,'level':_0xe54f78>=0x1f4?_0x879386['CPLmp']:'warn','msg':_0x2b0f43,'time':new Date()[_0x2af4bc(0xe1)]()},_0xe54f78>=0x1f4?_0x2af4bc(0x11d):_0x2af4bc(0x130));},logUncaughtError=(_0x46acbc,_0x3c7b45)=>{const _0x3b6d3a=a0_0x5d7352,_0x3aa83={'focfY':_0x3b6d3a(0xda),'IkArF':function(_0xe45404,_0x324003){return _0xe45404(_0x324003);},'iBWbP':_0x3b6d3a(0x11d)},_0x55844b={'event':_0x46acbc,'errorName':_0x3c7b45?.['name']||_0x3aa83['focfY'],'errorMessage':_0x3c7b45?.['message']||_0x3aa83['IkArF'](String,_0x3c7b45),'errorCode':_0x3c7b45?.['code']||null,'stack':_0x3c7b45?.['stack'],'severity':'CRITICAL','processId':process[_0x3b6d3a(0x12a)],'memoryUsage':process[_0x3b6d3a(0xee)](),'uptime':process['uptime']()},_0x376917='['+_0x46acbc['toUpperCase']()+']\x20'+(_0x3c7b45?.['message']||_0x3c7b45);logger['fatal'](_0x55844b,_0x376917),writeToFileLog({..._0x55844b,'level':_0x3b6d3a(0x174),'msg':_0x376917,'time':new Date()[_0x3b6d3a(0xe1)]()},_0x3aa83[_0x3b6d3a(0xe0)]);},setupGlobalErrorHandlers=()=>{const _0x30d704=a0_0x5d7352,_0xba761d={'eRXFQ':function(_0x8c5e95,_0x20458f,_0x297bfc){return _0x8c5e95(_0x20458f,_0x297bfc);},'lwlWw':function(_0x27ce1b,_0x4e6d59){return _0x27ce1b instanceof _0x4e6d59;},'WqHQJ':function(_0x498195,_0x3c402e){return _0x498195(_0x3c402e);},'siJyZ':_0x30d704(0x12b)};process['on'](_0x30d704(0x133),_0x14f7cf=>{const _0x1d82aa=_0x30d704;_0xba761d[_0x1d82aa(0x109)](logUncaughtError,_0x1d82aa(0x133),_0x14f7cf),setTimeout(()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x30d704(0xdd),(_0x34f6ec,_0x9a55ed)=>{const _0x3acfad=_0x30d704,_0x24fcf0=_0xba761d[_0x3acfad(0x16a)](_0x34f6ec,Error)?_0x34f6ec:new Error(_0xba761d[_0x3acfad(0x135)](String,_0x34f6ec));logUncaughtError('unhandledRejection',_0x24fcf0);}),process['on']('warning',_0x5ca690=>{const _0x233e4f=_0x30d704;logger[_0x233e4f(0x130)]({'event':'process_warning','name':_0x5ca690[_0x233e4f(0x141)],'message':_0x5ca690['message'],'stack':_0x5ca690[_0x233e4f(0x188)]},'Process\x20Warning:\x20'+_0x5ca690[_0x233e4f(0x111)]);});const _0x116ab4={'event':_0x30d704(0x169)},_0x29bfc9=_0x30d704(0x112);logger[_0x30d704(0x12b)](_0x116ab4,_0x29bfc9),writeToFileLog({..._0x116ab4,'level':_0xba761d['siJyZ'],'msg':_0x29bfc9,'time':new Date()[_0x30d704(0xe1)]()},'info');},createErrorHandlerMiddleware=()=>{const _0x5dc4ad={'bHMeU':function(_0x5362bd,_0x4c383c,_0x4da337){return _0x5362bd(_0x4c383c,_0x4da337);},'MDHhK':function(_0x5bd1f6,_0x1e57f5){return _0x5bd1f6>=_0x1e57f5;}};return(_0x59e2f1,_0x1511a2,_0x56b9d0,_0x2fb820)=>{const _0x453520=a0_0x4a24;_0x5dc4ad[_0x453520(0xd4)](logHttpError,_0x59e2f1,_0x1511a2);const _0x52e10f=_0x59e2f1[_0x453520(0x100)]||_0x59e2f1[_0x453520(0x136)]||0x1f4;_0x56b9d0['status'](_0x52e10f)['json']({'success':![],'error':_0x5dc4ad['MDHhK'](_0x52e10f,0x1f4)?'Internal\x20server\x20error':_0x59e2f1[_0x453520(0x111)],'requestId':_0x1511a2['id']||_0x1511a2['headers']?.['x-request-id']||null});};};module[a0_0x5d7352(0x158)]={'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_0x141270=a0_0x62c1;(function(_0x5d46b8,_0x29ca5c){const _0x2c3113=a0_0x62c1,_0x24dac9=_0x5d46b8();while(!![]){try{const _0x4751cb=-parseInt(_0x2c3113(0x288))/0x1*(parseInt(_0x2c3113(0x1d2))/0x2)+-parseInt(_0x2c3113(0x266))/0x3+parseInt(_0x2c3113(0x20f))/0x4+-parseInt(_0x2c3113(0x274))/0x5+parseInt(_0x2c3113(0x23f))/0x6*(parseInt(_0x2c3113(0x283))/0x7)+-parseInt(_0x2c3113(0x23b))/0x8+-parseInt(_0x2c3113(0x227))/0x9*(-parseInt(_0x2c3113(0x267))/0xa);if(_0x4751cb===_0x29ca5c)break;else _0x24dac9['push'](_0x24dac9['shift']());}catch(_0x2c6860){_0x24dac9['push'](_0x24dac9['shift']());}}}(a0_0x413f,0x5e8e0));const pino=require(a0_0x141270(0x1eb)),fs=require('fs'),path=require('path');let logToFile=![],logDir=a0_0x141270(0x28d),serviceName='restforge',sqlLogEnabled=![],sqlLogLevel=a0_0x141270(0x205),sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x62c1(_0x1a453e,_0x2f9620){_0x1a453e=_0x1a453e-0x1cc;const _0x413fe2=a0_0x413f();let _0x62c1c4=_0x413fe2[_0x1a453e];if(a0_0x62c1['EiQJKV']===undefined){var _0x459dae=function(_0x42c2c5){const _0x1da193='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x74452a='',_0x5e9441='';for(let _0x57c7bd=0x0,_0x308eb9,_0x36efbc,_0x8131af=0x0;_0x36efbc=_0x42c2c5['charAt'](_0x8131af++);~_0x36efbc&&(_0x308eb9=_0x57c7bd%0x4?_0x308eb9*0x40+_0x36efbc:_0x36efbc,_0x57c7bd++%0x4)?_0x74452a+=String['fromCharCode'](0xff&_0x308eb9>>(-0x2*_0x57c7bd&0x6)):0x0){_0x36efbc=_0x1da193['indexOf'](_0x36efbc);}for(let _0x8dae4b=0x0,_0x26f343=_0x74452a['length'];_0x8dae4b<_0x26f343;_0x8dae4b++){_0x5e9441+='%'+('00'+_0x74452a['charCodeAt'](_0x8dae4b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5e9441);};a0_0x62c1['lmrMcB']=_0x459dae,a0_0x62c1['uTIYPV']={},a0_0x62c1['EiQJKV']=!![];}const _0x3ef677=_0x413fe2[0x0],_0x4ed1c3=_0x1a453e+_0x3ef677,_0x4123dc=a0_0x62c1['uTIYPV'][_0x4ed1c3];return!_0x4123dc?(_0x62c1c4=a0_0x62c1['lmrMcB'](_0x62c1c4),a0_0x62c1['uTIYPV'][_0x4ed1c3]=_0x62c1c4):_0x62c1c4=_0x4123dc,_0x62c1c4;}const prettyPrintOptions={'colorize':!![],'translateTime':a0_0x141270(0x231),'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_0x141270(0x228),'customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process[a0_0x141270(0x208)][a0_0x141270(0x215)]!=='production',logLevel=process['env'][a0_0x141270(0x214)]||a0_0x141270(0x1d4);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process['env']['APP_VERSION']||'1.0.5','env':process[a0_0x141270(0x208)][a0_0x141270(0x215)]||'development'},'timestamp':pino['stdTimeFunctions']['isoTime'],'redact':{'paths':[a0_0x141270(0x251),a0_0x141270(0x23d),a0_0x141270(0x1d9),'token','apiKey',a0_0x141270(0x20d),a0_0x141270(0x1fc)],'censor':'[REDACTED]'},'serializers':{'req':_0x31ce87=>({'id':_0x31ce87['id'],'method':_0x31ce87[a0_0x141270(0x1fa)],'url':_0x31ce87['url'],'path':_0x31ce87['path'],'remoteAddress':_0x31ce87['ip']||_0x31ce87['connection']?.[a0_0x141270(0x27c)]}),'res':_0x5a8bd8=>({'statusCode':_0x5a8bd8['statusCode'],'headers':_0x5a8bd8['getHeaders']?.()}),'err':pino['stdSerializers']['err']}});function initFileLogging(){const _0x433eb1=a0_0x141270,_0x1201cf={'FOCZP':_0x433eb1(0x1e2),'hViuv':function(_0xde06f3,_0x296037){return _0xde06f3===_0x296037;},'ugNBO':'false','sbgYc':'app.log','TYrzK':_0x433eb1(0x20a),'cNdyI':_0x433eb1(0x223),'LKZiN':'info'};if(fileLoggingInitialized)return;logToFile=process[_0x433eb1(0x208)]['LOG_TO_FILE']==='true';const _0x24d548=process['env'][_0x433eb1(0x1ea)]||_0x1201cf['FOCZP'];logDir=process['env'][_0x433eb1(0x230)]||_0x433eb1(0x273)+_0x24d548,serviceName=process[_0x433eb1(0x208)][_0x433eb1(0x236)]||'restforge',sqlLogEnabled=_0x1201cf[_0x433eb1(0x285)](process[_0x433eb1(0x208)]['SQL_LOG_ENABLED'],'true'),sqlLogLevel=process['env']['SQL_LOG_LEVEL']||'debug',sqlLogParams=process[_0x433eb1(0x208)]['SQL_LOG_PARAMS']!==_0x1201cf[_0x433eb1(0x289)],sqlLogSlowThreshold=parseInt(process[_0x433eb1(0x208)][_0x433eb1(0x212)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x5bc659=path['resolve'](process[_0x433eb1(0x286)](),logDir);try{!fs['existsSync'](_0x5bc659)&&fs[_0x433eb1(0x1fd)](_0x5bc659,{'recursive':!![]});}catch(_0x9876a3){console[_0x433eb1(0x20c)](_0x433eb1(0x222)+_0x5bc659+':',_0x9876a3['message']),fileLoggingInitialized=!![];return;}const _0x3d0f32=path[_0x433eb1(0x1fb)](_0x5bc659,_0x1201cf[_0x433eb1(0x263)]),_0x388380=path[_0x433eb1(0x1fb)](_0x5bc659,_0x1201cf['TYrzK']);try{appLogStream=fs[_0x433eb1(0x280)](_0x3d0f32,{'flags':'a'}),errorLogStream=fs[_0x433eb1(0x280)](_0x388380,{'flags':'a'}),fileLoggingInitialized=!![];const _0x18ee1a={'event':_0x1201cf[_0x433eb1(0x1ff)],'logDir':_0x5bc659,'files':[_0x1201cf[_0x433eb1(0x263)],_0x1201cf[_0x433eb1(0x239)]]},_0x1b2f8b=_0x433eb1(0x28e)+_0x5bc659;logger['info'](_0x18ee1a,_0x1b2f8b),writeToFileLog({..._0x18ee1a,'level':_0x1201cf['LKZiN'],'msg':_0x1b2f8b,'time':new Date()[_0x433eb1(0x1e7)]()},_0x1201cf['LKZiN']);}catch(_0x520082){console['error']('Failed\x20to\x20create\x20log\x20streams:',_0x520082['message']),fileLoggingInitialized=!![];}}function a0_0x413f(){const _0x514178=['D3bMqwK','BNbIv0i','ChjVAMvJDf9SB2fKzwq','y3jLzgL0x2nHCMq','zMXVB3i','D3jPDgu','B2jQzwn0','uK9mtejbq0S','CgDKBhK','C2vYDMvYx3jLywr5','Cg9ZDgDYzxnXBa','tKDmyvK','Dg9vChbLCKnHC2u','rNfMq3O','oI8V','w1jfrefdveveoMHHC2HD','C3rHDhvZ','C2jNwwm','rermx0nsrufurq','y2HPBgq','nti0odiZB0rNv0Dt','nZb0rfbvzMe','zw52AxjVBM1LBNq','BwvZC2fNzq','Dg9Rzw4','su5trvju','B3rW','zMf0ywXFzxjYB3i','u0vmrunu','C3rYAw5NAwz5','iokvKqRILzeGiefqssblzxKGicaGidOG','vhrYtuG','DxDvqxa','lI9SB2DZlW','mtq3nJyXnvnMrwvfAW','Ahr0Cf9Yzxf1zxn0','Ahj0Aw1L','iokvKqRILzeGienVBMzPzYaGicaGidOG','q1jfqvrf','CgLK','w1jfrefdveveoNrVA2vUxq','EMHQDwG','CMvTB3rLqwrKCMvZCW','AxnbCNjHEq','rgvMyxvSDa','w1jfrefdvevexq','y3jLyxrLv3jPDgvtDhjLyw0','wLriBLa','zxHWB3j0CW','mZmYmteZnMvkDMzIvG','zM9kz2S','AfzPDxy','y3DK','BvzMvKi','mJCXnJuWq21NDevm','DwDoqK8','ALHJvK0','CgLU','wun4qMu','lI9SB2DZ','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','vu5ltK9xtG','tLn0BLC','AwvSu2i','y2rbs1y','Cg9YDa','yxbPs2v5','vfjbtLnbq1rjt05Fq09ntuLu','DxjS','icbjBMzVoIaGia','mMPcy1Plua','Dw5Oyw5KBgvKuMvQzwn0Aw9U','Aw5MBW','BerTyM4','B3jPz2LUywXvCMW','DxnLCG','Dw5JyxvNAhrfEgnLChrPB24','CgfZC3DVCMq','C3rHDhvZq29Kzq','icbizwfSDgG6ia','zgf0ywjHC2u','rermx0rst1a','y29Kzq','C3nU','zwLbDey','Aw5JBhvKzxm','zgvMyxvSDa','C2vJCMv0','CgfKrw5K','Dg9mB3DLCKnHC2u','AxntBg93','Dg9ju09tDhjPBMC','AwjRtxy','ChjVAMvJDa','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','CgLUBW','Bwf0y2G','EhDgCwC','y3z2','wfDAv2G','Bwf4','DgvZDa','ChjPDMf0zwTLEq','wg9gCKe','swnqrhu','C3bSAxq','sfruuca','C3rHy2S','Cgf0Aa','CMvMCMvZAf90B2TLBG','Bwv0Ag9K','AM9PBG','sLDux1nfq1jfva','BwTKAxjtEw5J','Bg9N','y05KEuK','rxjYB3i','rNvQBNq','CMvWzwf0','s05Lz1q','tK9uiefdveLwrq','zgvIDwC','sw50zxjUywWGC2vYDMvYigvYCM9Y','vhfzwLm','zw52','Ag9ZDa','zxjYB3iUBg9N','u2vYDMvYihn0yxj0Aw5NoIa','zxjYB3i','rejFueftu1DpuKq','C3rHCNrZv2L0Aa','mJaWnZeYBhzSuLfb','zhvYyxrPB25nCW','B3zbvxy','u1fmx0Xpr19tte9xx1riuKvtse9mra','CxvLCNK','te9hx0XfvKvm','tK9erv9ftLy','ywnJzxnZx3rVA2vU','q1jjveLdquW','r05LqMK','Dxb0Aw1L','y3jLzgvUDgLHBa','yxbPx3nLy3jLDa','reiGuxvLCNK','vhrls3G','qK9sDgS','Dw5RBM93BG','y2jkwKi','tvPKwLO','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','zMLSzv9SB2DNAw5Nx2vUywjSzwq','BgvUz3rO','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','y29UzMLNrMLSzq','mtiXmty2mvDRveP6yW','E21Zz30','C3fSx3f1zxj5','icdIHPiG','ifTtte9xxq','C2vYDMLJzuLUzM8','rMnzuem','Ec1Yzxf1zxn0lwLK','yMfZzvvYBa','te9hx0rjuG','u1LtoKHioK1noNnZ','Bw9KDwXL','y3nHuKS','DhLWzq','y29UBMvJDgLVBG','u0vsvKLdrv9oqu1f','ChjPDMf0zv9RzxK','tgzHugu','vfLYEKS','AgvHBhrOq2HLy2S','mJCWmJu1mK1YDMjPtG','sxHiru8','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','revmrvrf','nM1gr3DhuG','yMPSz0q','BKzqwhi','tK9JzLe','BwvTB3j5vxnHz2u','vxzPzMC','se1rtgW','zMf0ywW','D2fYBG','Dhfou0y','EhDhDeG','vhjHBNnHy3rPB24G','BMfTzq','yxbPx2TLEq','AevNq3G','ELbWwhi','CM93C0fMzMvJDgvK','zgjFDhjHBNnHy3rPB24','CMvXlMHLywrLCNmUyxv0Ag9YAxPHDgLVBG'];a0_0x413f=function(){return _0x514178;};return a0_0x413f();}function writeToFileLog(_0x113093,_0x203aa5){const _0x172f9c=a0_0x141270,_0x38756d={'RHPLl':function(_0x839448,_0x1339dd){return _0x839448||_0x1339dd;},'CteUx':'fatal'};if(_0x38756d['RHPLl'](!logToFile,!appLogStream))return;const _0x224df3={'service':serviceName,..._0x113093},_0x2f8f5f=JSON[_0x172f9c(0x26f)](_0x224df3)+'\x0a';appLogStream[_0x172f9c(0x257)](_0x2f8f5f),(_0x203aa5===_0x172f9c(0x20c)||_0x203aa5===_0x38756d['CteUx'])&&(errorLogStream&&errorLogStream['write'](_0x2f8f5f));}const createRequestLogger=(_0x1264da={})=>{const _0x3f768f=a0_0x141270;return logger[_0x3f768f(0x265)](_0x1264da);},logServerStart=_0x34edc5=>{const _0x11b791=a0_0x141270,_0x2a0b57={'LfaPe':'RESTFORGE\x20RUNTIME\x20SERVER','psNzQ':function(_0x4b8118,_0x8ed6cd){return _0x4b8118/_0x8ed6cd;},'oVauM':function(_0x23f25b,_0x18351e){return _0x23f25b-_0x18351e;},'jsMig':'Node.js','rAcPb':'N/A','ZTHnP':_0x11b791(0x204),'OihaC':'server_starting'},_0x1f3a7e=_0x2a0b57[_0x11b791(0x238)],_0x4bc116=Math[_0x11b791(0x1f0)](0x0,0x37-_0x1f3a7e['length']),_0x1178e5=Math[_0x11b791(0x256)](_0x2a0b57['psNzQ'](_0x4bc116,0x2)),_0x6c3b24=_0x2a0b57['oVauM'](_0x4bc116,_0x1178e5),_0x21841d='║'+'\x20'[_0x11b791(0x202)](_0x1178e5)+_0x1f3a7e+'\x20'['repeat'](_0x6c3b24)+'║',_0x5e92bf=_0x11b791(0x225)+_0x21841d+'\x0a╠═══════════════════════════════════════════════════════╣\x0a║\x20\x20Environment\x20:\x20'+(_0x34edc5[_0x11b791(0x268)]||_0x2a0b57['jsMig'])[_0x11b791(0x1e4)](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x34edc5['project']||_0x2a0b57['rAcPb'])[_0x11b791(0x1e4)](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+String(_0x34edc5[_0x11b791(0x1cd)]||0xbb8)[_0x11b791(0x1e4)](0x26)+_0x11b791(0x277)+(_0x34edc5['configFile']||_0x11b791(0x27e))[_0x11b791(0x1e4)](0x26)+_0x11b791(0x270)+(_0x34edc5['apiKey']?'ACTIVE':_0x2a0b57[_0x11b791(0x281)])['padEnd'](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x11b791(0x1fe)](_0x5e92bf);const _0x4aff28={'event':_0x2a0b57['OihaC'],'project':_0x34edc5[_0x11b791(0x1e9)],'port':_0x34edc5['port'],'config':_0x34edc5[_0x11b791(0x226)],'apiKeyEnabled':!!_0x34edc5[_0x11b791(0x1ce)]};logger['info'](_0x4aff28),writeToFileLog({..._0x4aff28,'level':_0x11b791(0x1d4),'msg':_0x11b791(0x20b)+_0x34edc5['project']+'\x20on\x20port\x20'+_0x34edc5['port'],'time':new Date()['toISOString']()},'info');},logServerReady=_0x4275a1=>{const _0x2f7a44=a0_0x141270,_0x1f8203={'OLFZI':function(_0x182ed4,_0x22ca5f,_0x59f2d7){return _0x182ed4(_0x22ca5f,_0x59f2d7);}},_0x14d04c={'event':_0x2f7a44(0x25b),'port':_0x4275a1[_0x2f7a44(0x1cd)],'module':_0x4275a1[_0x2f7a44(0x232)],'healthCheck':_0x4275a1['healthCheck'],'serviceInfo':_0x4275a1['serviceInfo'],'baseUrl':_0x4275a1['baseUrl']},_0x337004='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x4275a1[_0x2f7a44(0x1cd)];logger[_0x2f7a44(0x1d4)](_0x14d04c,_0x337004),_0x1f8203['OLFZI'](writeToFileLog,{..._0x14d04c,'level':'info','msg':_0x337004,'time':new Date()['toISOString']()},_0x2f7a44(0x1d4)),_0x4275a1[_0x2f7a44(0x23a)]&&logger[_0x2f7a44(0x1d4)](_0x2f7a44(0x1db)+_0x4275a1['healthCheck']),_0x4275a1[_0x2f7a44(0x22c)]&&logger['info'](_0x2f7a44(0x1d1)+_0x4275a1['serviceInfo']),_0x4275a1[_0x2f7a44(0x22f)]&&logger['info']('\x20\x20URL:\x20\x20\x20\x20'+_0x4275a1[_0x2f7a44(0x22f)]);},logProjectLoaded=(_0x3a14c2,_0x28599c)=>{const _0x54ffa3=a0_0x141270,_0x39db35={'GNeBi':function(_0xc12ab7,_0x2a0554,_0xffe91c){return _0xc12ab7(_0x2a0554,_0xffe91c);},'jLkSB':'info'},_0x21e520={'event':_0x54ffa3(0x254),'project':_0x3a14c2,'path':_0x28599c},_0x203f57='[OK]\x20Project\x20loaded:\x20'+_0x3a14c2;logger[_0x54ffa3(0x1d4)](_0x21e520,_0x203f57),_0x39db35[_0x54ffa3(0x218)](writeToFileLog,{..._0x21e520,'level':'info','msg':_0x203f57,'time':new Date()[_0x54ffa3(0x1e7)]()},_0x39db35['jLkSB']);},logEndpointRegistered=(_0x343ec3,_0x3077da)=>{const _0x232b0e=a0_0x141270,_0x1ba622={'IzVeb':'endpoint_registered','xVOLe':_0x232b0e(0x205)},_0x24731e={'event':_0x1ba622['IzVeb'],'endpoint':_0x343ec3,'route':_0x3077da},_0x5d7620=_0x232b0e(0x22a)+_0x343ec3+':\x20'+_0x3077da;logger[_0x232b0e(0x205)](_0x24731e,_0x5d7620),writeToFileLog({..._0x24731e,'level':_0x232b0e(0x205),'msg':_0x5d7620,'time':new Date()[_0x232b0e(0x1e7)]()},_0x1ba622['xVOLe']);},logDatabaseConfig=_0x17a0dd=>{const _0x8c2dd5=a0_0x141270,_0x1cb12d={'JccDL':_0x8c2dd5(0x205)},_0x371ceb={'event':'database_config','host':_0x17a0dd['host'],'port':_0x17a0dd[_0x8c2dd5(0x1cd)],'database':_0x17a0dd[_0x8c2dd5(0x1dc)],'type':_0x17a0dd['type'],'user':_0x17a0dd[_0x8c2dd5(0x1d7)]},_0x1b0bda='Database:\x20'+_0x17a0dd[_0x8c2dd5(0x234)]+_0x8c2dd5(0x260)+_0x17a0dd[_0x8c2dd5(0x209)]+':'+_0x17a0dd['port']+'/'+_0x17a0dd['database'];logger['debug'](_0x371ceb,_0x1b0bda),writeToFileLog({..._0x371ceb,'level':_0x8c2dd5(0x205),'msg':_0x1b0bda,'time':new Date()['toISOString']()},_0x1cb12d['JccDL']);},logRequest=(_0x45495a,_0x437d7e,_0x51d43b)=>{const _0x563edf=a0_0x141270,_0x526adb={'YCxBe':_0x563edf(0x1d4),'npbWB':function(_0x30e0f9,_0x27c080){return _0x30e0f9>=_0x27c080;},'KHwcL':'error','CUSMJ':'warn','zPpXr':function(_0x193af9,_0x1b163f,_0xda5572){return _0x193af9(_0x1b163f,_0xda5572);}},_0x17b819={'event':_0x563edf(0x275),'method':_0x45495a[_0x563edf(0x1fa)],'path':_0x45495a[_0x563edf(0x1f8)],'statusCode':_0x437d7e['statusCode'],'durationMs':_0x51d43b,'ip':_0x45495a['ip']},_0x1280a3=_0x45495a[_0x563edf(0x1fa)]+'\x20'+_0x45495a['path']+'\x20-\x20'+_0x437d7e[_0x563edf(0x1da)]+'\x20('+_0x51d43b+'ms)';let _0xdd0269=_0x526adb[_0x563edf(0x28c)];if(_0x526adb[_0x563edf(0x253)](_0x437d7e[_0x563edf(0x1da)],0x1f4))_0xdd0269=_0x526adb['KHwcL'],logger['error'](_0x17b819,_0x1280a3);else _0x437d7e[_0x563edf(0x1da)]>=0x190?(_0xdd0269=_0x526adb['CUSMJ'],logger['warn'](_0x17b819,_0x1280a3)):logger['info'](_0x17b819,_0x1280a3);_0x526adb[_0x563edf(0x24e)](writeToFileLog,{..._0x17b819,'level':_0xdd0269,'msg':_0x1280a3,'time':new Date()[_0x563edf(0x1e7)]()},_0xdd0269);},SENSITIVE_PARAM_PATTERNS=['password','passwd','pwd',a0_0x141270(0x26a),a0_0x141270(0x216),a0_0x141270(0x1f9),a0_0x141270(0x1e3),a0_0x141270(0x21b),'apikey',a0_0x141270(0x24c),a0_0x141270(0x21a),'credentials',a0_0x141270(0x28b),a0_0x141270(0x26c),'private_key',a0_0x141270(0x1f2)],redactSensitiveParams=(_0x19b220,_0x5e3964)=>{const _0x9461a5=a0_0x141270,_0x66c14b={'wpfAi':'[REDACTED]','Uvifg':function(_0x4aae71,_0x4bd5d2){return _0x4aae71>_0x4bd5d2;},'SHAJQ':_0x9461a5(0x27a),'HMQLl':function(_0x2d7cd6,_0x1dc3d7){return _0x2d7cd6===_0x1dc3d7;}};if(!_0x19b220||_0x66c14b[_0x9461a5(0x245)](_0x19b220['length'],0x0))return _0x19b220;const _0x5f44eb=_0x5e3964['toLowerCase'](),_0x4c3037=_0x5f44eb[_0x9461a5(0x1ec)](/\(([^)]+)\)\s*values/i);let _0x267a60=[];_0x4c3037&&(_0x267a60=_0x4c3037[0x1][_0x9461a5(0x1f5)](',')['map'](_0x48649e=>_0x48649e['trim']()['toLowerCase']()));const _0x14eec8=_0x5f44eb['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x14eec8){const _0xb23d34=_0x14eec8[0x1],_0x189d67=_0xb23d34['match'](/(\w+)\s*=/g);_0x189d67&&(_0x267a60=_0x189d67['map'](_0x4f123f=>_0x4f123f['replace'](/\s*=/,'')['trim']()['toLowerCase']()));}return _0x19b220['map']((_0x45c1df,_0x3f6181)=>{const _0x1cb365=_0x9461a5;if(_0x267a60[_0x3f6181]){const _0xfd3574=_0x267a60[_0x3f6181],_0x3be22b=SENSITIVE_PARAM_PATTERNS['some'](_0x1cd8c3=>_0xfd3574[_0x1cb365(0x1e1)](_0x1cd8c3));if(_0x3be22b)return _0x66c14b[_0x1cb365(0x252)];}if(typeof _0x45c1df==='string'&&_0x66c14b[_0x1cb365(0x244)](_0x45c1df['length'],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x45c1df)&&_0x45c1df[_0x1cb365(0x1e1)]('.'))return _0x66c14b['SHAJQ'];if(/^[a-fA-F0-9]{32,}$/[_0x1cb365(0x1f1)](_0x45c1df))return _0x1cb365(0x261);}return _0x45c1df;});},parseQueryMetadata=_0xd86228=>{const _0x153a31=a0_0x141270,_0x7a3354={'XWZWh':'INSERT','xwFqg':'UPDATE','bjlgD':_0x153a31(0x23e),'BORtk':'BEGIN','JwKlC':'START\x20TRANSACTION','XoFrA':'TRANSACTION_ROLLBACK','IxHEO':_0x153a31(0x278),'cbJZB':_0x153a31(0x264),'wofQd':'ALTER','Fujnt':'DDL_ALTER'},_0x39180d=_0xd86228['trim'](),_0xace81e=_0x39180d['toUpperCase']();let _0x18aa0d=_0x153a31(0x28f),_0x12b053=null;if(_0xace81e[_0x153a31(0x20e)](_0x153a31(0x26e))){_0x18aa0d='SELECT';const _0x10977c=_0x39180d[_0x153a31(0x1ec)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x12b053=_0x10977c?_0x10977c[0x1]:null;}else{if(_0xace81e['startsWith'](_0x7a3354[_0x153a31(0x1ef)])){_0x18aa0d=_0x153a31(0x26b);const _0x29d619=_0x39180d[_0x153a31(0x1ec)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x12b053=_0x29d619?_0x29d619[0x1]:null;}else{if(_0xace81e[_0x153a31(0x20e)](_0x7a3354[_0x153a31(0x1ed)])){_0x18aa0d=_0x7a3354[_0x153a31(0x1ed)];const _0x517eb4=_0x39180d['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x12b053=_0x517eb4?_0x517eb4[0x1]:null;}else{if(_0xace81e[_0x153a31(0x20e)](_0x7a3354[_0x153a31(0x240)])){_0x18aa0d=_0x7a3354['bjlgD'];const _0x2df939=_0x39180d[_0x153a31(0x1ec)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x12b053=_0x2df939?_0x2df939[0x1]:null;}else{if(_0xace81e['startsWith'](_0x7a3354[_0x153a31(0x21e)])||_0xace81e[_0x153a31(0x20e)](_0x7a3354['JwKlC']))_0x18aa0d='TRANSACTION_BEGIN';else{if(_0xace81e['startsWith']('COMMIT'))_0x18aa0d=_0x153a31(0x1cf);else{if(_0xace81e['startsWith'](_0x153a31(0x259)))_0x18aa0d=_0x7a3354[_0x153a31(0x1f3)];else{if(_0xace81e[_0x153a31(0x20e)](_0x7a3354[_0x153a31(0x23c)]))_0x18aa0d=_0x7a3354[_0x153a31(0x220)];else{if(_0xace81e['startsWith'](_0x7a3354['wofQd']))_0x18aa0d=_0x7a3354[_0x153a31(0x201)];else _0xace81e[_0x153a31(0x20e)]('DROP')&&(_0x18aa0d=_0x153a31(0x1dd));}}}}}}}}return{'type':_0x18aa0d,'table':_0x12b053};},startQueryTimer=()=>{const _0x4b3c01={'yDVoE':function(_0x2dfa88,_0x925fca){return _0x2dfa88(_0x925fca);},'SbTED':function(_0x4a5aca,_0x2b76b0){return _0x4a5aca*_0x2b76b0;},'lDmbn':function(_0x19d102,_0x2dcc39){return _0x19d102/_0x2dcc39;}},_0x3a5b7c=process['hrtime']();return()=>{const _0x2cb7fd=a0_0x62c1,[_0x11a614,_0x1c9a00]=process[_0x2cb7fd(0x276)](_0x3a5b7c);return _0x4b3c01['yDVoE'](parseFloat,(_0x4b3c01['SbTED'](_0x11a614,0x3e8)+_0x4b3c01[_0x2cb7fd(0x1d5)](_0x1c9a00,0xf4240))['toFixed'](0x2));};},logQuery=(_0x235bf5,_0x5ede3c=[],_0x210b09={})=>{const _0x4f1eb3=a0_0x141270,_0x41771e={'ibkMv':_0x4f1eb3(0x21c),'NGLaY':function(_0x4bfed8,_0x546926){return _0x4bfed8(_0x546926);},'cdAKV':function(_0xc9c33c,_0x59ef7a){return _0xc9c33c>_0x59ef7a;},'uwUAp':function(_0x4fcdf2,_0x5340de,_0x7ea585){return _0x4fcdf2(_0x5340de,_0x7ea585);},'FqfCz':function(_0x35ece3,_0x2316c5){return _0x35ece3!==_0x2316c5;},'mMvDf':_0x4f1eb3(0x21f),'ielSb':function(_0x187d20,_0x1503cb){return _0x187d20!==_0x1503cb;},'YpuBw':_0x4f1eb3(0x22b),'hEgCx':_0x4f1eb3(0x1d4)};if(!sqlLogEnabled){logger[_0x4f1eb3(0x205)]({'event':'db_query','query':_0x235bf5['substring'](0x0,0xc8),'paramCount':_0x5ede3c[_0x4f1eb3(0x224)]},_0x41771e[_0x4f1eb3(0x1e8)]);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x4f1eb3(0x25c)}=_0x210b09,{type:_0x15ddb0,table:_0x57def1}=_0x41771e[_0x4f1eb3(0x25d)](parseQueryMetadata,_0x235bf5),_0x5e7962={'event':_0x4f1eb3(0x229),'queryType':_0x15ddb0,'table':_0x57def1,'query':_0x235bf5,'paramCount':_0x5ede3c['length'],'dbType':dbType};sqlLogParams&&_0x41771e['cdAKV'](_0x5ede3c[_0x4f1eb3(0x224)],0x0)&&(_0x5e7962['params']=_0x41771e[_0x4f1eb3(0x272)](redactSensitiveParams,_0x5ede3c,_0x235bf5));_0x41771e['FqfCz'](duration,null)&&(_0x5e7962[_0x4f1eb3(0x210)]=duration,_0x5e7962[_0x4f1eb3(0x1e6)]=_0x41771e[_0x4f1eb3(0x1cc)](duration,sqlLogSlowThreshold));rowsAffected!==null&&(_0x5e7962[_0x4f1eb3(0x24f)]=rowsAffected);const _0x51f34c=_0x57def1||_0x41771e['mMvDf'];let _0x1b0dbf='['+_0x15ddb0+']\x20'+_0x51f34c;_0x41771e[_0x4f1eb3(0x25f)](duration,null)&&(_0x1b0dbf+='\x20('+duration+'ms)');const _0xcede21=_0x41771e[_0x4f1eb3(0x291)](duration,null)&&duration>sqlLogSlowThreshold;let _0x541542=_0x4f1eb3(0x205);if(_0xcede21)_0x1b0dbf+=_0x41771e['YpuBw'],_0x541542=_0x4f1eb3(0x247),logger[_0x4f1eb3(0x247)](_0x5e7962,_0x1b0dbf);else sqlLogLevel===_0x41771e[_0x4f1eb3(0x24d)]?(_0x541542=_0x4f1eb3(0x1d4),logger['info'](_0x5e7962,_0x1b0dbf)):logger['debug'](_0x5e7962,_0x1b0dbf);writeToFileLog({..._0x5e7962,'level':_0x541542,'msg':_0x1b0dbf,'time':new Date()[_0x4f1eb3(0x1e7)]()},_0x541542);},logTransaction=(_0x5ae092,_0x3621ee)=>{const _0x524e87=a0_0x141270,_0x3aaacf={'bgvLE':function(_0x393c56,_0x2b36dd,_0x41311b){return _0x393c56(_0x2b36dd,_0x41311b);},'MZdZZ':_0x524e87(0x205)},_0x17c6fe={'event':_0x524e87(0x250),'status':_0x5ae092,'queryCount':_0x3621ee},_0x3955e6=_0x524e87(0x24a)+_0x5ae092;logger[_0x524e87(0x205)](_0x17c6fe,_0x3955e6),_0x3aaacf['bgvLE'](writeToFileLog,{..._0x17c6fe,'level':_0x3aaacf[_0x524e87(0x221)],'msg':_0x3955e6,'time':new Date()[_0x524e87(0x1e7)]()},'debug');},redactObject=_0x40268c=>{const _0x1d43c8=a0_0x141270,_0x7154f8={'FcYPC':function(_0x36361c,_0x29c64c){return _0x36361c!==_0x29c64c;},'eiAtF':'object','zhjuh':_0x1d43c8(0x1d9),'ufbfD':'passwd','yeloI':'pwd','KNegT':'secret','TqYZS':'api_key','yafDo':'creditcard','TtrMH':_0x1d43c8(0x1ee),'tqNSF':'pin','jXcVM':_0x1d43c8(0x237),'kWnQA':'refresh_token','NStnW':_0x1d43c8(0x216),'TtKKx':function(_0x50d43b,_0x29d6a7){return _0x50d43b===_0x29d6a7;}};if(!_0x40268c||_0x7154f8[_0x1d43c8(0x22d)](typeof _0x40268c,_0x7154f8[_0x1d43c8(0x1e0)]))return _0x40268c;const _0x581b14=[_0x7154f8[_0x1d43c8(0x27b)],_0x7154f8['ufbfD'],_0x7154f8['yeloI'],'token',_0x7154f8[_0x1d43c8(0x203)],'apikey',_0x7154f8[_0x1d43c8(0x207)],'authorization',_0x7154f8['yafDo'],_0x1d43c8(0x255),_0x7154f8[_0x1d43c8(0x271)],_0x1d43c8(0x1df),_0x7154f8[_0x1d43c8(0x248)],_0x7154f8[_0x1d43c8(0x28a)],'privatekey',_0x7154f8['kWnQA'],_0x7154f8[_0x1d43c8(0x290)]],_0x2dcf81=Array[_0x1d43c8(0x27d)](_0x40268c)?[..._0x40268c]:{..._0x40268c};for(const _0x394d8a of Object['keys'](_0x2dcf81)){const _0x1e1819=_0x394d8a[_0x1d43c8(0x1e5)]();if(_0x581b14['some'](_0x2b001f=>_0x1e1819[_0x1d43c8(0x1e1)](_0x2b001f)))_0x2dcf81[_0x394d8a]=_0x1d43c8(0x27f);else _0x7154f8[_0x1d43c8(0x21d)](typeof _0x2dcf81[_0x394d8a],_0x1d43c8(0x258))&&_0x7154f8['FcYPC'](_0x2dcf81[_0x394d8a],null)&&(_0x2dcf81[_0x394d8a]=redactObject(_0x2dcf81[_0x394d8a]));}return _0x2dcf81;},logError=(_0x42885c,_0x10a423={},_0x39f0a0=null)=>{const _0x26cbe2=a0_0x141270,_0x5d5705={'mVfVB':'Error','xwGtH':function(_0x4bddca,_0x12eb0e,_0x438b17){return _0x4bddca(_0x12eb0e,_0x438b17);}},_0x2ff690={'event':'error','errorName':_0x42885c['name']||_0x5d5705[_0x26cbe2(0x287)],'errorMessage':_0x42885c[_0x26cbe2(0x269)],'errorCode':_0x42885c['code']||null,'stack':_0x42885c['stack'],..._0x10a423},_0x1aefd8=_0x39f0a0||'Error:\x20'+_0x42885c['message'];logger['error'](_0x2ff690,_0x1aefd8),_0x5d5705[_0x26cbe2(0x249)](writeToFileLog,{..._0x2ff690,'level':'error','msg':_0x1aefd8,'time':new Date()[_0x26cbe2(0x1e7)]()},_0x26cbe2(0x20c));},logFatalError=(_0x1e90ac,_0x44dc1c={},_0x429180=null)=>{const _0x312e68=a0_0x141270,_0x194514={'CwKqE':_0x312e68(0x200),'nFPXr':'CRITICAL','NPaWj':function(_0x202642,_0x2eaedc,_0x2cb2f8){return _0x202642(_0x2eaedc,_0x2cb2f8);},'NbfKb':'error'},_0x407213={'event':_0x312e68(0x26d),'errorName':_0x1e90ac[_0x312e68(0x24b)]||_0x194514['CwKqE'],'errorMessage':_0x1e90ac[_0x312e68(0x269)],'errorCode':_0x1e90ac['code']||null,'stack':_0x1e90ac[_0x312e68(0x1f7)],'severity':_0x194514[_0x312e68(0x241)],..._0x44dc1c},_0x1777ed=_0x429180||'FATAL:\x20'+_0x1e90ac[_0x312e68(0x269)];logger['fatal'](_0x407213,_0x1777ed),_0x194514['NPaWj'](writeToFileLog,{..._0x407213,'level':'fatal','msg':_0x1777ed,'time':new Date()[_0x312e68(0x1e7)]()},_0x194514['NbfKb']);},logHttpError=(_0x2e5b05,_0x1867e9,_0x2e1a23={})=>{const _0x674050=a0_0x141270,_0x69b842={'KdKTD':'Error','pgdly':_0x674050(0x22e),'azCiz':_0x674050(0x20c),'ovAUv':'warn'},_0x561ff6={'event':'http_error','errorName':_0x2e5b05[_0x674050(0x24b)]||_0x69b842['KdKTD'],'errorMessage':_0x2e5b05[_0x674050(0x269)],'errorCode':_0x2e5b05[_0x674050(0x1de)]||_0x2e5b05[_0x674050(0x1da)]||0x1f4,'stack':_0x2e5b05['stack'],'method':_0x1867e9?.[_0x674050(0x1fa)],'url':_0x1867e9?.[_0x674050(0x1d0)]||_0x1867e9?.[_0x674050(0x1d6)],'path':_0x1867e9?.[_0x674050(0x1f8)],'ip':_0x1867e9?.['ip']||_0x1867e9?.[_0x674050(0x235)]?.['remoteAddress'],'userAgent':_0x1867e9?.['get']?.('user-agent'),'requestId':_0x1867e9?.['id']||_0x1867e9?.['headers']?.[_0x69b842[_0x674050(0x25a)]],'body':_0x1867e9?.['body']?redactObject(_0x1867e9['body']):undefined,'query':_0x1867e9?.[_0x674050(0x213)],..._0x2e1a23},_0x1c475e=_0x2e5b05[_0x674050(0x1da)]||_0x2e5b05[_0x674050(0x262)]||0x1f4,_0x1fe13c=_0x674050(0x1f6)+_0x1c475e+':\x20'+_0x2e5b05[_0x674050(0x269)];_0x1c475e>=0x1f4?logger['error'](_0x561ff6,_0x1fe13c):logger[_0x674050(0x247)](_0x561ff6,_0x1fe13c),writeToFileLog({..._0x561ff6,'level':_0x1c475e>=0x1f4?_0x69b842['azCiz']:_0x69b842[_0x674050(0x211)],'msg':_0x1fe13c,'time':new Date()[_0x674050(0x1e7)]()},_0x1c475e>=0x1f4?_0x69b842['azCiz']:_0x69b842['ovAUv']);},logUncaughtError=(_0x213285,_0x520dc9)=>{const _0x4a59f7=a0_0x141270,_0x540216={'rgrdq':_0x4a59f7(0x200)},_0x662617={'event':_0x213285,'errorName':_0x520dc9?.[_0x4a59f7(0x24b)]||_0x540216['rgrdq'],'errorMessage':_0x520dc9?.['message']||String(_0x520dc9),'errorCode':_0x520dc9?.[_0x4a59f7(0x1de)]||null,'stack':_0x520dc9?.['stack'],'severity':_0x4a59f7(0x217),'processId':process[_0x4a59f7(0x279)],'memoryUsage':process[_0x4a59f7(0x243)](),'uptime':process[_0x4a59f7(0x219)]()},_0x57fe1a='['+_0x213285[_0x4a59f7(0x25e)]()+']\x20'+(_0x520dc9?.[_0x4a59f7(0x269)]||_0x520dc9);logger[_0x4a59f7(0x246)](_0x662617,_0x57fe1a),writeToFileLog({..._0x662617,'level':_0x4a59f7(0x246),'msg':_0x57fe1a,'time':new Date()['toISOString']()},_0x4a59f7(0x20c));},setupGlobalErrorHandlers=()=>{const _0x4ea503=a0_0x141270,_0x54547e={'mLVGl':_0x4ea503(0x1d8),'CIPee':function(_0x40429a,_0x10ea7e,_0x507199){return _0x40429a(_0x10ea7e,_0x507199);},'IcPDu':function(_0x5a54a5,_0x491a47){return _0x5a54a5 instanceof _0x491a47;},'mlsum':function(_0x3c4b09,_0x583e40){return _0x3c4b09(_0x583e40);},'yrHze':_0x4ea503(0x1d3),'zAxsH':'warning','OptTQ':'Global\x20error\x20handlers\x20initialized'};process['on'](_0x4ea503(0x1d8),_0x17f0b5=>{logUncaughtError(_0x54547e['mLVGl'],_0x17f0b5),_0x54547e['CIPee'](setTimeout,()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x54547e['yrHze'],(_0xa1e379,_0x2cd430)=>{const _0x28e5f2=_0x4ea503,_0x2182f4=_0x54547e[_0x28e5f2(0x1f4)](_0xa1e379,Error)?_0xa1e379:new Error(_0x54547e['mlsum'](String,_0xa1e379));logUncaughtError(_0x28e5f2(0x1d3),_0x2182f4);}),process['on'](_0x54547e['zAxsH'],_0x4a128a=>{const _0x19d355=_0x4ea503;logger['warn']({'event':'process_warning','name':_0x4a128a['name'],'message':_0x4a128a[_0x19d355(0x269)],'stack':_0x4a128a[_0x19d355(0x1f7)]},'Process\x20Warning:\x20'+_0x4a128a[_0x19d355(0x269)]);});const _0x31ac2b={'event':'global_error_handlers_setup'},_0x497044=_0x54547e['OptTQ'];logger['info'](_0x31ac2b,_0x497044),writeToFileLog({..._0x31ac2b,'level':_0x4ea503(0x1d4),'msg':_0x497044,'time':new Date()[_0x4ea503(0x1e7)]()},_0x4ea503(0x1d4));},createErrorHandlerMiddleware=()=>{const _0x2b4be3=a0_0x141270,_0xc859={'ueSUs':function(_0x2c5d51,_0x421e53,_0x25a25c){return _0x2c5d51(_0x421e53,_0x25a25c);},'foJgk':function(_0x4ba1cb,_0x436671){return _0x4ba1cb>=_0x436671;},'NOcfQ':_0x2b4be3(0x206),'csaRK':'x-request-id'};return(_0x28642d,_0x59f775,_0x9d673a,_0x23a926)=>{const _0x2bf9f8=_0x2b4be3;_0xc859['ueSUs'](logHttpError,_0x28642d,_0x59f775);const _0x546b31=_0x28642d[_0x2bf9f8(0x1da)]||_0x28642d[_0x2bf9f8(0x262)]||0x1f4;_0x9d673a['status'](_0x546b31)['json']({'success':![],'error':_0xc859[_0x2bf9f8(0x284)](_0x546b31,0x1f4)?_0xc859[_0x2bf9f8(0x242)]:_0x28642d[_0x2bf9f8(0x269)],'requestId':_0x59f775['id']||_0x59f775['headers']?.[_0xc859[_0x2bf9f8(0x233)]]||null});};};module[a0_0x141270(0x282)]={'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_0x238db6=a0_0x56e7;(function(_0x2c2630,_0x2183a5){const _0x533a05=a0_0x56e7,_0x255573=_0x2c2630();while(!![]){try{const _0x45a54d=-parseInt(_0x533a05(0xbf))/0x1*(parseInt(_0x533a05(0xd4))/0x2)+-parseInt(_0x533a05(0xb2))/0x3+parseInt(_0x533a05(0xaa))/0x4+parseInt(_0x533a05(0xb4))/0x5+parseInt(_0x533a05(0xb9))/0x6*(parseInt(_0x533a05(0xc0))/0x7)+-parseInt(_0x533a05(0xc4))/0x8*(-parseInt(_0x533a05(0xab))/0x9)+parseInt(_0x533a05(0xa5))/0xa*(parseInt(_0x533a05(0xbc))/0xb);if(_0x45a54d===_0x2183a5)break;else _0x255573['push'](_0x255573['shift']());}catch(_0x2b528d){_0x255573['push'](_0x255573['shift']());}}}(a0_0x2438,0x3586c));const dbType=(process[a0_0x238db6(0xa8)][a0_0x238db6(0xc1)]||a0_0x238db6(0xd0))['toLowerCase']();let executeQuery;if(dbType==='oracle'){const oracleDb=require('./db-oracle');executeQuery=(_0x42339d,_0x1f27ec)=>oracleDb['executeQuery'](_0x42339d,_0x1f27ec);}else{if(dbType==='mysql'){const mysqlDb=require(a0_0x238db6(0xb8));executeQuery=(_0x41b3cb,_0x411b0d)=>mysqlDb['executeQuery'](_0x41b3cb,_0x411b0d);}else executeQuery=require('./db')[a0_0x238db6(0xcd)];}const {logger}=require(a0_0x238db6(0xb6));function a0_0x2438(){const _0x2d1fc6=['Bg9HzeXVB2T1CfrHyMXL','wNrQwuO','Bg9VA3vWq2fJAgu','mJG2ntmWyLnqtfjp','Egzrzvm','mte1nZGXmgzcufvRwa','iIbUB3qGzM91BMqGAw4G','lI9SB2DNzxi','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','lI9KyI1TExnXBa','mJa0ndjpANj2rgG','AgfZ','ChvZAa','mti2otrjBNf3wwq','z2v0','tLzVvKy','ndCXu3fHwvzc','nda2zwjNwgDz','rejFvfLqrq','zw50CMLLCW','DMfSAwrHDgvmB29RDxbwywX1zxm','mJeWnty4sLDrsLro','BNvushK','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','Dg9mB3DLCKnHC2u','zxjYB3i','ELflzvu','CMvZB2X2zuXVB2T1CfzHBhvL','zxHWB3j0CW','A2v5CW','zxHLy3v0zvf1zxj5','u0vmrunuia','ChjVy2vZC0XVB2T1CezPzwXKCW','Cg9ZDgDYzxnXBa','zgvIDwC','rLb6z3O','C2v0','mte4mMj5q1rIrG','ndeWCvrAueL0','BgvUz3rO','DhjPBq','zw52','Dg9vChbLCKnHC2u','mZyXmJq4t0LUDMzm','ow9jrgnrDW','Bg9VA3vWx3rHyMXLx2XVywrLza','zM9YrwfJAa','y2XLyxi'];a0_0x2438=function(){return _0x2d1fc6;};return a0_0x2438();}function a0_0x56e7(_0x26d24d,_0x590ec2){_0x26d24d=_0x26d24d-0xa5;const _0x2438c7=a0_0x2438();let _0x56e773=_0x2438c7[_0x26d24d];if(a0_0x56e7['gznbKA']===undefined){var _0x4c6e97=function(_0x314b2f){const _0x472817='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x18f388='',_0x373e8b='';for(let _0x260313=0x0,_0x34a734,_0x1fc134,_0x181836=0x0;_0x1fc134=_0x314b2f['charAt'](_0x181836++);~_0x1fc134&&(_0x34a734=_0x260313%0x4?_0x34a734*0x40+_0x1fc134:_0x1fc134,_0x260313++%0x4)?_0x18f388+=String['fromCharCode'](0xff&_0x34a734>>(-0x2*_0x260313&0x6)):0x0){_0x1fc134=_0x472817['indexOf'](_0x1fc134);}for(let _0x401cf6=0x0,_0x1bb3f6=_0x18f388['length'];_0x401cf6<_0x1bb3f6;_0x401cf6++){_0x373e8b+='%'+('00'+_0x18f388['charCodeAt'](_0x401cf6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x373e8b);};a0_0x56e7['ZzfgZp']=_0x4c6e97,a0_0x56e7['eOgDtZ']={},a0_0x56e7['gznbKA']=!![];}const _0x431bbe=_0x2438c7[0x0],_0x3a6ebc=_0x26d24d+_0x431bbe,_0x4294a7=a0_0x56e7['eOgDtZ'][_0x3a6ebc];return!_0x4294a7?(_0x56e773=a0_0x56e7['ZzfgZp'](_0x56e773),a0_0x56e7['eOgDtZ'][_0x3a6ebc]=_0x56e773):_0x56e773=_0x4294a7,_0x56e773;}class LookupResolver{constructor(){this['lookupCache']=new Map();}['clearCache'](){const _0x370284=a0_0x238db6,_0x47f247={'fqZrI':_0x370284(0xb7)};this['lookupCache'][_0x370284(0xae)](),logger[_0x370284(0xd1)]({'event':_0x47f247['fqZrI']},'Lookup\x20cache\x20cleared');}async[a0_0x238db6(0xaf)](_0x2c72a4,_0x2aba9e,_0x5baaeb){const _0x46df77=a0_0x238db6,_0x4d52a2={'lHOOt':function(_0x15df12,_0x44f97f){return _0x15df12!==_0x44f97f;},'ErJiQ':function(_0x32d011,_0x2d79c5){return _0x32d011!==_0x2d79c5;},'zQKeU':function(_0x570b9d,_0x141e92){return _0x570b9d(_0x141e92);},'uzZjO':_0x46df77(0xc6)},_0x2876eb=_0x2c72a4+':'+_0x2aba9e+':'+_0x5baaeb;if(this['lookupCache']['has'](_0x2876eb))return this[_0x46df77(0xb1)]['get'](_0x2876eb);try{const _0x19d910=_0x46df77(0xce)+_0x5baaeb+',\x20'+_0x2aba9e+'\x20FROM\x20'+_0x2c72a4,_0x4d4c23=await executeQuery(_0x19d910),_0x135b84=new Map();return _0x4d4c23['forEach'](_0x575193=>{const _0x3d2e3a=_0x46df77,_0x209c68=_0x4d52a2['lHOOt'](_0x575193[_0x2aba9e],undefined)?_0x575193[_0x2aba9e]:_0x575193[_0x2aba9e[_0x3d2e3a(0xa9)]()],_0x11fc5b=_0x4d52a2['lHOOt'](_0x575193[_0x5baaeb],undefined)?_0x575193[_0x5baaeb]:_0x575193[_0x5baaeb['toUpperCase']()];_0x4d52a2['lHOOt'](_0x209c68,null)&&_0x4d52a2['ErJiQ'](_0x209c68,undefined)&&(_0x135b84['set'](String(_0x209c68)['toLowerCase']()['trim'](),_0x11fc5b),_0x135b84['set'](_0x4d52a2[_0x3d2e3a(0xc9)](String,_0x209c68)[_0x3d2e3a(0xa7)](),_0x11fc5b));}),this['lookupCache'][_0x46df77(0xd3)](_0x2876eb,_0x135b84),logger['info']({'event':_0x46df77(0xac),'table':_0x2c72a4,'column':_0x2aba9e,'count':_0x4d4c23['length']},'Lookup\x20table\x20loaded:\x20'+_0x2c72a4),_0x135b84;}catch(_0x446ba7){logger[_0x46df77(0xc8)]({'event':_0x4d52a2['uzZjO'],'table':_0x2c72a4,'error':_0x446ba7['message']},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x2c72a4);throw _0x446ba7;}}[a0_0x238db6(0xca)](_0x50b560,_0x30b297){const _0x406ef7=a0_0x238db6,_0x2ba4a6={'WTDdb':function(_0x4a2bc6,_0x1dcd15){return _0x4a2bc6===_0x1dcd15;},'xfQeS':function(_0x2c19b8,_0x554dde){return _0x2c19b8(_0x554dde);}};if(_0x50b560===null||_0x2ba4a6['WTDdb'](_0x50b560,undefined)||_0x50b560==='')return null;const _0x536b6f=_0x2ba4a6[_0x406ef7(0xb3)](String,_0x50b560)[_0x406ef7(0xa7)]();if(_0x30b297['has'](_0x536b6f))return _0x30b297[_0x406ef7(0xbd)](_0x536b6f);const _0xfd23d=_0x536b6f['toLowerCase']();if(_0x30b297[_0x406ef7(0xba)](_0xfd23d))return _0x30b297[_0x406ef7(0xbd)](_0xfd23d);return null;}async[a0_0x238db6(0xcf)](_0x588025,_0x1d7433){const _0x47c10c=a0_0x238db6,_0x545cd1={'ZtjYJ':function(_0x5109de,_0x3a1cd0){return _0x5109de===_0x3a1cd0;},'VCyLu':function(_0x4d63b3,_0x4d4f23){return _0x4d63b3!==_0x4d4f23;},'NVoVF':'Lookup\x20fields\x20processed'};if(!_0x1d7433||Object['keys'](_0x1d7433)[_0x47c10c(0xa6)]===0x0)return{'processedRows':_0x588025,'errors':[]};const _0x28508b=[],_0xeaa0ac=new Map();for(const [_0x3e8914,_0x301e8e]of Object[_0x47c10c(0xc2)](_0x1d7433)){const {lookupTable:_0x431fa1,lookupColumn:_0x511b13,lookupIdColumn:_0xbd7001}=_0x301e8e,_0x98be3e=_0x431fa1+':'+_0x511b13+':'+_0xbd7001;if(!_0xeaa0ac[_0x47c10c(0xba)](_0x98be3e)){const _0x2d4efc=await this['loadLookupTable'](_0x431fa1,_0x511b13,_0xbd7001);_0xeaa0ac['set'](_0x98be3e,_0x2d4efc);}}const _0x311a36=_0x588025['map']((_0x452f78,_0x488c32)=>{const _0x591c44=_0x47c10c,_0x2966a9={..._0x452f78};for(const [_0x5dd0ee,_0x2292ed]of Object['entries'](_0x1d7433)){const {lookupTable:_0x222ff5,lookupColumn:_0x501589,lookupIdColumn:_0x4a96d7,targetField:_0x6f2141,required:_0x366495}=_0x2292ed,_0x47697f=_0x222ff5+':'+_0x501589+':'+_0x4a96d7,_0x1acf8a=_0xeaa0ac['get'](_0x47697f),_0x4dda98=_0x452f78[_0x5dd0ee];if((_0x545cd1[_0x591c44(0xb0)](_0x4dda98,null)||_0x4dda98===undefined||_0x4dda98==='')&&!_0x366495){_0x2966a9[_0x6f2141]=null;continue;}const _0x477e7a=this[_0x591c44(0xca)](_0x4dda98,_0x1acf8a);_0x545cd1['VCyLu'](_0x477e7a,null)?_0x2966a9[_0x6f2141]=_0x477e7a:(_0x366495&&_0x28508b[_0x591c44(0xbb)]({'rowIndex':_0x488c32,'field':_0x5dd0ee,'value':_0x4dda98,'targetField':_0x6f2141,'lookupTable':_0x222ff5,'message':'Value\x20\x22'+_0x4dda98+_0x591c44(0xb5)+_0x222ff5}),_0x2966a9[_0x6f2141]=null);}return _0x2966a9;});return logger['info']({'event':'lookup_fields_processed','totalRows':_0x588025['length'],'errorCount':_0x28508b[_0x47c10c(0xa6)],'lookupFieldCount':Object[_0x47c10c(0xcc)](_0x1d7433)[_0x47c10c(0xa6)]},_0x545cd1[_0x47c10c(0xbe)]),{'processedRows':_0x311a36,'errors':_0x28508b};}['getDistinctValues'](_0x5e8e4e,_0xa0c9c5){const _0x29ebda=a0_0x238db6,_0x226a93={'ehfjy':function(_0x395e2c,_0x41c7a5){return _0x395e2c!==_0x41c7a5;},'FPzgz':function(_0x4fa16a,_0x49c4b0){return _0x4fa16a(_0x49c4b0);}},_0x3bf3ed=new Set();return _0x5e8e4e[_0x29ebda(0xad)](_0x96f62b=>{const _0x456e0d=_0x29ebda,_0x56248a=_0x96f62b[_0xa0c9c5];_0x226a93['ehfjy'](_0x56248a,null)&&_0x56248a!==undefined&&_0x56248a!==''&&_0x3bf3ed['add'](_0x226a93[_0x456e0d(0xd2)](String,_0x56248a)['trim']());}),Array['from'](_0x3bf3ed);}async[a0_0x238db6(0xc3)](_0x1967e9,_0x1d0802){const _0x572bb4=a0_0x238db6,_0x4b789f={'nuTHy':function(_0x64864d,_0x32134d){return _0x64864d>_0x32134d;}};if(!_0x1d0802||Object[_0x572bb4(0xcc)](_0x1d0802)[_0x572bb4(0xa6)]===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x28518e=[],_0x2e864b={};for(const [_0x5020a1,_0x2307fc]of Object[_0x572bb4(0xc2)](_0x1d0802)){const {lookupTable:_0x274fb7,lookupColumn:_0x599bb4,lookupIdColumn:_0x1dd3f0,required:_0x5cff48}=_0x2307fc,_0x4f89a4=this['getDistinctValues'](_0x1967e9,_0x5020a1),_0x568800=await this['loadLookupTable'](_0x274fb7,_0x599bb4,_0x1dd3f0),_0x843cef=[],_0x380f13=[];_0x4f89a4[_0x572bb4(0xad)](_0x4271f4=>{const _0x395ed7=_0x572bb4,_0xa8fc97=this[_0x395ed7(0xca)](_0x4271f4,_0x568800);_0xa8fc97!==null?_0x380f13['push'](_0x4271f4):_0x843cef['push'](_0x4271f4);});if(_0x4b789f[_0x572bb4(0xc5)](_0x843cef[_0x572bb4(0xa6)],0x0)&&_0x5cff48){_0x28518e['push']({'field':_0x5020a1,'lookupTable':_0x274fb7,'invalidValues':_0x843cef,'message':_0x843cef[_0x572bb4(0xa6)]+'\x20value(s)\x20not\x20found\x20in\x20'+_0x274fb7});const _0x2fd73f=[];_0x568800['forEach']((_0x56d78a,_0x1804a4)=>{const _0x5e6104=_0x572bb4;if(_0x1804a4===_0x1804a4[_0x5e6104(0xc7)]())return;_0x2fd73f[_0x5e6104(0xbb)](_0x1804a4);}),_0x2e864b[_0x5020a1]={'invalidValues':_0x843cef,'availableValues':_0x2fd73f['slice'](0x0,0x32)};}}return{'valid':_0x28518e['length']===0x0,'errors':_0x28518e,'suggestions':_0x2e864b};}}module[a0_0x238db6(0xcb)]=new LookupResolver();
1
+ const a0_0x23c3cd=a0_0x44c4;(function(_0x36b09f,_0x4d631b){const _0x45995b=a0_0x44c4,_0x27df76=_0x36b09f();while(!![]){try{const _0x46a3ff=-parseInt(_0x45995b(0x1db))/0x1+parseInt(_0x45995b(0x1d9))/0x2+parseInt(_0x45995b(0x1e7))/0x3*(-parseInt(_0x45995b(0x1df))/0x4)+-parseInt(_0x45995b(0x1fc))/0x5+-parseInt(_0x45995b(0x1fb))/0x6+parseInt(_0x45995b(0x1dd))/0x7+parseInt(_0x45995b(0x1e0))/0x8*(parseInt(_0x45995b(0x1d2))/0x9);if(_0x46a3ff===_0x4d631b)break;else _0x27df76['push'](_0x27df76['shift']());}catch(_0x1c5aae){_0x27df76['push'](_0x27df76['shift']());}}}(a0_0x25e3,0xee3f4));function a0_0x25e3(){const _0x13ae09=['v0Hcv0W','u0vmrunuia','lI9SB2DNzxi','mtC2nZzutwvquK8','B2HPDMu','Bg9HzeXVB2T1CfrHyMXL','zgvIDwC','z2v0','zM9YrwfJAa','B3jHy2XL','mJC1odCZmfDKuwLmuW','A2v5CW','mtqXmJu1mfnMB1bZrW','iezst00G','odC1otaWoxLrDNLrDG','BxzkEhe','mtzzv2v0uwO','ndmYofrWBLDACa','Bg9VA3vWq2fJAgu','A0HUCgK','lI9KyI1TExnXBa','CMvZB2X2zuXVB2T1CfzHBhvL','reLYAwW','BgvUz3rO','nJyZmtvwqwvpwhy','rKnlz0q','lI9KyG','qKXiB3m','rejFvfLqrq','Bg9VA3vWx3rHyMXLx2XVywrLza','wuX5z1a','ywrK','zNjVBq','wuj2tfm','C2DdzhK','tg9VA3vWigzPzwXKCYbWCM9JzxnZzwq','tg9VA3vWihrHyMXLigXVywrLzdOG','Dg9mB3DLCKnHC2u','DhjPBq','ChvZAa','vMfSDwuGiG','C2v0','z2v0rgLZDgLUy3rwywX1zxm','DMfSAwrHDgvmB29RDxbwywX1zxm','mZy1nZG1mLDiyMXbDW','mZaZmZuYmff1rwPmDa','AgfZ','zw50CMLLCW'];a0_0x25e3=function(){return _0x13ae09;};return a0_0x25e3();}const dbType=(process['env'][a0_0x23c3cd(0x1eb)]||'postgresql')[a0_0x23c3cd(0x1f4)]();let executeQuery;if(dbType===a0_0x23c3cd(0x1d8)){const oracleDb=require('./db-oracle');executeQuery=(_0x43adc1,_0x46f547)=>oracleDb['executeQuery'](_0x43adc1,_0x46f547);}else{if(dbType==='mysql'){const mysqlDb=require(a0_0x23c3cd(0x1e3));executeQuery=(_0x23b7de,_0x50b951)=>mysqlDb['executeQuery'](_0x23b7de,_0x50b951);}else executeQuery=require(a0_0x23c3cd(0x1e9))['executeQuery'];}const {logger}=require(a0_0x23c3cd(0x1d1));function a0_0x44c4(_0x32e13a,_0x5a159c){_0x32e13a=_0x32e13a-0x1cd;const _0x25e3a3=a0_0x25e3();let _0x44c48b=_0x25e3a3[_0x32e13a];if(a0_0x44c4['ikDjKR']===undefined){var _0x3b92d3=function(_0x2fdb96){const _0x44b344='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x43d9df='',_0x2f602e='';for(let _0x17706f=0x0,_0x12c8a8,_0x3ab0c1,_0x284a97=0x0;_0x3ab0c1=_0x2fdb96['charAt'](_0x284a97++);~_0x3ab0c1&&(_0x12c8a8=_0x17706f%0x4?_0x12c8a8*0x40+_0x3ab0c1:_0x3ab0c1,_0x17706f++%0x4)?_0x43d9df+=String['fromCharCode'](0xff&_0x12c8a8>>(-0x2*_0x17706f&0x6)):0x0){_0x3ab0c1=_0x44b344['indexOf'](_0x3ab0c1);}for(let _0x292d83=0x0,_0x2096f3=_0x43d9df['length'];_0x292d83<_0x2096f3;_0x292d83++){_0x2f602e+='%'+('00'+_0x43d9df['charCodeAt'](_0x292d83)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2f602e);};a0_0x44c4['AdUggh']=_0x3b92d3,a0_0x44c4['cbOgbR']={},a0_0x44c4['ikDjKR']=!![];}const _0x1835f8=_0x25e3a3[0x0],_0xd04536=_0x32e13a+_0x1835f8,_0x431f42=a0_0x44c4['cbOgbR'][_0xd04536];return!_0x431f42?(_0x44c48b=a0_0x44c4['AdUggh'](_0x44c48b),a0_0x44c4['cbOgbR'][_0xd04536]=_0x44c48b):_0x44c48b=_0x431f42,_0x44c48b;}class LookupResolver{constructor(){this['lookupCache']=new Map();}['clearCache'](){const _0x354260=a0_0x23c3cd,_0x4b5252={'sgCdy':'lookup_cache_cleared'};this['lookupCache']['clear'](),logger[_0x354260(0x1d5)]({'event':_0x4b5252[_0x354260(0x1f1)]},'Lookup\x20cache\x20cleared');}async['loadLookupTable'](_0xc25272,_0x22cd52,_0x5e39f0){const _0x54c884=a0_0x23c3cd,_0x3813bf={'YlPgq':function(_0x164ea6,_0x1f3e41){return _0x164ea6!==_0x1f3e41;},'ohive':function(_0x3d7787,_0x6af9f0){return _0x3d7787(_0x6af9f0);},'BLHos':function(_0x133c97,_0xc0236){return _0x133c97(_0xc0236);},'ZMvPZ':function(_0x145b83,_0x4780c3){return _0x145b83(_0x4780c3);},'KFIyi':'lookup_table_load_error'},_0x33e8f8=_0xc25272+':'+_0x22cd52+':'+_0x5e39f0;if(this['lookupCache']['has'](_0x33e8f8))return this['lookupCache']['get'](_0x33e8f8);try{const _0x3c2bdb=_0x54c884(0x1d0)+_0x5e39f0+',\x20'+_0x22cd52+_0x54c884(0x1dc)+_0xc25272,_0x60ac3b=await _0x3813bf['ZMvPZ'](executeQuery,_0x3c2bdb),_0xc5bbae=new Map();return _0x60ac3b['forEach'](_0x39d05f=>{const _0x44e641=_0x54c884,_0x15e756=_0x39d05f[_0x22cd52]!==undefined?_0x39d05f[_0x22cd52]:_0x39d05f[_0x22cd52['toUpperCase']()],_0x4cae5e=_0x3813bf['YlPgq'](_0x39d05f[_0x5e39f0],undefined)?_0x39d05f[_0x5e39f0]:_0x39d05f[_0x5e39f0['toUpperCase']()];_0x15e756!==null&&_0x3813bf['YlPgq'](_0x15e756,undefined)&&(_0xc5bbae[_0x44e641(0x1f8)](_0x3813bf[_0x44e641(0x1d3)](String,_0x15e756)[_0x44e641(0x1f4)]()['trim'](),_0x4cae5e),_0xc5bbae[_0x44e641(0x1f8)](_0x3813bf[_0x44e641(0x1ea)](String,_0x15e756)['trim'](),_0x4cae5e));}),this[_0x54c884(0x1e1)][_0x54c884(0x1f8)](_0x33e8f8,_0xc5bbae),logger['info']({'event':_0x54c884(0x1ec),'table':_0xc25272,'column':_0x22cd52,'count':_0x60ac3b[_0x54c884(0x1e6)]},_0x54c884(0x1f3)+_0xc25272),_0xc5bbae;}catch(_0x188310){logger['error']({'event':_0x3813bf['KFIyi'],'table':_0xc25272,'error':_0x188310['message']},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0xc25272);throw _0x188310;}}['resolveLookupValue'](_0x34654c,_0x5329bf){const _0xa7caf7=a0_0x23c3cd,_0x582371={'YLygP':function(_0x5f1936,_0x402eee){return _0x5f1936===_0x402eee;}};if(_0x34654c===null||_0x582371[_0xa7caf7(0x1ed)](_0x34654c,undefined)||_0x34654c==='')return null;const _0x1bb49f=String(_0x34654c)['trim']();if(_0x5329bf[_0xa7caf7(0x1cd)](_0x1bb49f))return _0x5329bf[_0xa7caf7(0x1d6)](_0x1bb49f);const _0x5166e0=_0x1bb49f[_0xa7caf7(0x1f4)]();if(_0x5329bf[_0xa7caf7(0x1cd)](_0x5166e0))return _0x5329bf['get'](_0x5166e0);return null;}async['processLookupFields'](_0x4b06c6,_0x56388f){const _0x1a768b=a0_0x23c3cd,_0xa1b6cf={'kHnpi':function(_0x544940,_0x28e514){return _0x544940===_0x28e514;},'FCKgD':function(_0x480d03,_0x3c1b63){return _0x480d03!==_0x3c1b63;},'YBvLS':'lookup_fields_processed','DIril':_0x1a768b(0x1f2)};if(!_0x56388f||Object['keys'](_0x56388f)['length']===0x0)return{'processedRows':_0x4b06c6,'errors':[]};const _0x46634b=[],_0x22fdf8=new Map();for(const [_0x5878bb,_0x47608c]of Object[_0x1a768b(0x1ce)](_0x56388f)){const {lookupTable:_0x33bd7b,lookupColumn:_0x337f50,lookupIdColumn:_0x429c93}=_0x47608c,_0x2ef370=_0x33bd7b+':'+_0x337f50+':'+_0x429c93;if(!_0x22fdf8['has'](_0x2ef370)){const _0x5795cf=await this['loadLookupTable'](_0x33bd7b,_0x337f50,_0x429c93);_0x22fdf8['set'](_0x2ef370,_0x5795cf);}}const _0x56db34=_0x4b06c6['map']((_0x56dfbb,_0x3e5943)=>{const _0x476260=_0x1a768b,_0x4865e5={..._0x56dfbb};for(const [_0x416ece,_0x20cc59]of Object['entries'](_0x56388f)){const {lookupTable:_0x242ae8,lookupColumn:_0x54b5cb,lookupIdColumn:_0x534f26,targetField:_0x480170,required:_0x2bfddc}=_0x20cc59,_0xf63464=_0x242ae8+':'+_0x54b5cb+':'+_0x534f26,_0x531a94=_0x22fdf8['get'](_0xf63464),_0x3b84cb=_0x56dfbb[_0x416ece];if((_0xa1b6cf[_0x476260(0x1e2)](_0x3b84cb,null)||_0x3b84cb===undefined||_0x3b84cb==='')&&!_0x2bfddc){_0x4865e5[_0x480170]=null;continue;}const _0x537c57=this[_0x476260(0x1e4)](_0x3b84cb,_0x531a94);_0xa1b6cf[_0x476260(0x1e8)](_0x537c57,null)?_0x4865e5[_0x480170]=_0x537c57:(_0x2bfddc&&_0x46634b['push']({'rowIndex':_0x3e5943,'field':_0x416ece,'value':_0x3b84cb,'targetField':_0x480170,'lookupTable':_0x242ae8,'message':_0x476260(0x1f7)+_0x3b84cb+'\x22\x20not\x20found\x20in\x20'+_0x242ae8}),_0x4865e5[_0x480170]=null);}return _0x4865e5;});return logger['info']({'event':_0xa1b6cf[_0x1a768b(0x1f0)],'totalRows':_0x4b06c6['length'],'errorCount':_0x46634b['length'],'lookupFieldCount':Object[_0x1a768b(0x1da)](_0x56388f)['length']},_0xa1b6cf[_0x1a768b(0x1e5)]),{'processedRows':_0x56db34,'errors':_0x46634b};}[a0_0x23c3cd(0x1f9)](_0x8f9a3f,_0x53b560){const _0x591bb7=a0_0x23c3cd,_0x25d271={'WHBWL':function(_0x574aa4,_0x3a5359){return _0x574aa4!==_0x3a5359;}},_0x2730ba=new Set();return _0x8f9a3f['forEach'](_0x3f0a42=>{const _0x2dc13a=a0_0x44c4,_0x36a282=_0x3f0a42[_0x53b560];_0x36a282!==null&&_0x25d271[_0x2dc13a(0x1cf)](_0x36a282,undefined)&&_0x36a282!==''&&_0x2730ba[_0x2dc13a(0x1ee)](String(_0x36a282)[_0x2dc13a(0x1f5)]());}),Array[_0x591bb7(0x1ef)](_0x2730ba);}async[a0_0x23c3cd(0x1fa)](_0x53bf3d,_0x538a83){const _0x103b4f=a0_0x23c3cd,_0x5dfa4c={'mvJxq':function(_0x254207,_0x55689d){return _0x254207===_0x55689d;}};if(!_0x538a83||Object[_0x103b4f(0x1da)](_0x538a83)[_0x103b4f(0x1e6)]===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x2e220e=[],_0x5c0d66={};for(const [_0x2109f8,_0x2f5139]of Object['entries'](_0x538a83)){const {lookupTable:_0x461b0e,lookupColumn:_0x3f1e2d,lookupIdColumn:_0x263ac0,required:_0xc33d90}=_0x2f5139,_0xcdb533=this['getDistinctValues'](_0x53bf3d,_0x2109f8),_0x3fc650=await this[_0x103b4f(0x1d4)](_0x461b0e,_0x3f1e2d,_0x263ac0),_0xcce8b4=[],_0x528d39=[];_0xcdb533[_0x103b4f(0x1d7)](_0x40d247=>{const _0x4ba1bd=_0x103b4f,_0x36d874=this['resolveLookupValue'](_0x40d247,_0x3fc650);_0x36d874!==null?_0x528d39[_0x4ba1bd(0x1f6)](_0x40d247):_0xcce8b4['push'](_0x40d247);});if(_0xcce8b4[_0x103b4f(0x1e6)]>0x0&&_0xc33d90){_0x2e220e['push']({'field':_0x2109f8,'lookupTable':_0x461b0e,'invalidValues':_0xcce8b4,'message':_0xcce8b4[_0x103b4f(0x1e6)]+'\x20value(s)\x20not\x20found\x20in\x20'+_0x461b0e});const _0x22d9ce=[];_0x3fc650[_0x103b4f(0x1d7)]((_0x1ae912,_0x363f9b)=>{const _0x389bc4=_0x103b4f;if(_0x5dfa4c['mvJxq'](_0x363f9b,_0x363f9b['toLowerCase']()))return;_0x22d9ce[_0x389bc4(0x1f6)](_0x363f9b);}),_0x5c0d66[_0x2109f8]={'invalidValues':_0xcce8b4,'availableValues':_0x22d9ce['slice'](0x0,0x32)};}}return{'valid':_0x5dfa4c[_0x103b4f(0x1de)](_0x2e220e[_0x103b4f(0x1e6)],0x0),'errors':_0x2e220e,'suggestions':_0x5c0d66};}}module['exports']=new LookupResolver();
@@ -1 +1 @@
1
- function a0_0x81ef(_0x15474a,_0x1d9a4a){_0x15474a=_0x15474a-0x129;const _0x5a915b=a0_0x5a91();let _0x81efb6=_0x5a915b[_0x15474a];if(a0_0x81ef['vinwLT']===undefined){var _0x13f193=function(_0x2b9ef9){const _0x14b1b3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5cf0ad='',_0x448b52='';for(let _0x160165=0x0,_0x443393,_0x1cbf2d,_0x461b90=0x0;_0x1cbf2d=_0x2b9ef9['charAt'](_0x461b90++);~_0x1cbf2d&&(_0x443393=_0x160165%0x4?_0x443393*0x40+_0x1cbf2d:_0x1cbf2d,_0x160165++%0x4)?_0x5cf0ad+=String['fromCharCode'](0xff&_0x443393>>(-0x2*_0x160165&0x6)):0x0){_0x1cbf2d=_0x14b1b3['indexOf'](_0x1cbf2d);}for(let _0x4ad898=0x0,_0x4d2905=_0x5cf0ad['length'];_0x4ad898<_0x4d2905;_0x4ad898++){_0x448b52+='%'+('00'+_0x5cf0ad['charCodeAt'](_0x4ad898)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x448b52);};a0_0x81ef['FdKUwR']=_0x13f193,a0_0x81ef['JhsrWK']={},a0_0x81ef['vinwLT']=!![];}const _0x4136a6=_0x5a915b[0x0],_0x4af1d5=_0x15474a+_0x4136a6,_0x5e35b2=a0_0x81ef['JhsrWK'][_0x4af1d5];return!_0x5e35b2?(_0x81efb6=a0_0x81ef['FdKUwR'](_0x81efb6),a0_0x81ef['JhsrWK'][_0x4af1d5]=_0x81efb6):_0x81efb6=_0x5e35b2,_0x81efb6;}const a0_0x5623ba=a0_0x81ef;(function(_0x3c6077,_0x2996b0){const _0x1b180f=a0_0x81ef,_0x46375a=_0x3c6077();while(!![]){try{const _0xad6366=-parseInt(_0x1b180f(0x145))/0x1*(-parseInt(_0x1b180f(0x12e))/0x2)+-parseInt(_0x1b180f(0x141))/0x3*(-parseInt(_0x1b180f(0x14e))/0x4)+parseInt(_0x1b180f(0x14a))/0x5+parseInt(_0x1b180f(0x12b))/0x6*(-parseInt(_0x1b180f(0x12d))/0x7)+-parseInt(_0x1b180f(0x12f))/0x8+-parseInt(_0x1b180f(0x132))/0x9+-parseInt(_0x1b180f(0x140))/0xa*(-parseInt(_0x1b180f(0x13f))/0xb);if(_0xad6366===_0x2996b0)break;else _0x46375a['push'](_0x46375a['shift']());}catch(_0x16b5e3){_0x46375a['push'](_0x46375a['shift']());}}}(a0_0x5a91,0x454c7));const fs=require('fs')[a0_0x5623ba(0x149)],path=require('path'),{logger}=require(a0_0x5623ba(0x12c));class PayloadLoader{constructor(){const _0x1eb86c=a0_0x5623ba;this['payloadDir']=path['join'](__dirname,_0x1eb86c(0x138)),this['cache']=new Map();}async['loadPayload'](_0x4e7311,_0x4dac8b){const _0x20ee6c=a0_0x5623ba,_0x4dc70f={'AASWZ':_0x20ee6c(0x13d),'TDIPH':'payload_load_error'},_0x2e646d=_0x4e7311+':'+_0x4dac8b;if(this[_0x20ee6c(0x130)]['has'](_0x2e646d))return this['cache'][_0x20ee6c(0x146)](_0x2e646d);const _0x1885a7=path[_0x20ee6c(0x135)](this['payloadDir'],_0x4e7311+'_'+_0x4dac8b+'.json');try{const _0x1b5cd4=await fs['readFile'](_0x1885a7,_0x20ee6c(0x144)),_0x2b321d=JSON[_0x20ee6c(0x142)](_0x1b5cd4);return this[_0x20ee6c(0x130)][_0x20ee6c(0x131)](_0x2e646d,_0x2b321d),logger['debug']({'event':_0x20ee6c(0x14b),'project':_0x4e7311,'resource':_0x4dac8b},_0x4dc70f['AASWZ']),_0x2b321d;}catch(_0x49b4c8){logger[_0x20ee6c(0x14f)]({'event':_0x4dc70f[_0x20ee6c(0x151)],'project':_0x4e7311,'resource':_0x4dac8b,'error':_0x49b4c8[_0x20ee6c(0x14c)]},_0x20ee6c(0x14d));throw new Error(_0x20ee6c(0x13e)+_0x4e7311+'_'+_0x4dac8b);}}async[a0_0x5623ba(0x134)](_0x324e3e){const _0x2a17dd=a0_0x5623ba,_0x2fcc25={'rkzjP':'utf8','rhLSz':_0x2a17dd(0x13b)},_0x167f4c=_0x2a17dd(0x147)+_0x324e3e;if(this['cache']['has'](_0x167f4c))return this['cache'][_0x2a17dd(0x146)](_0x167f4c);const _0x281248=path['join'](this['payloadDir'],_0x324e3e+'.json');try{const _0x3267e7=await fs[_0x2a17dd(0x13c)](_0x281248,_0x2fcc25[_0x2a17dd(0x139)]),_0x242bf7=JSON['parse'](_0x3267e7);return this[_0x2a17dd(0x130)]['set'](_0x167f4c,_0x242bf7),logger[_0x2a17dd(0x129)]({'event':'payload_loaded','payloadName':_0x324e3e},_0x2fcc25[_0x2a17dd(0x133)]),_0x242bf7;}catch(_0x59c0ac){logger['error']({'event':'payload_load_error','payloadName':_0x324e3e,'error':_0x59c0ac[_0x2a17dd(0x14c)]},'Failed\x20to\x20load\x20payload\x20by\x20name');throw new Error(_0x2a17dd(0x13e)+_0x324e3e);}}['isActionEnabled'](_0x953ffb,_0x5be52d){const _0x2f25f9=a0_0x5623ba,_0x5d86dd={'hhjRH':function(_0x1fe730,_0x588f97){return _0x1fe730===_0x588f97;}};return _0x953ffb['action']&&_0x5d86dd[_0x2f25f9(0x143)](_0x953ffb[_0x2f25f9(0x136)][_0x5be52d],!![]);}['getExportConfig'](_0x2b8ed6){const _0x4ed091=a0_0x5623ba;return{'columns':_0x2b8ed6['fieldName']||[],'filename':_0x2b8ed6['tableName']['replace']('.','-')+'-export','datatablesQuery':_0x2b8ed6['datatablesQuery']||null,'columnFormats':_0x2b8ed6[_0x4ed091(0x148)]||null,'fieldLabels':_0x2b8ed6['fieldLabels']||null};}[a0_0x5623ba(0x137)](){const _0x587a37=a0_0x5623ba,_0x8797af={'FIUiN':_0x587a37(0x12a)};this[_0x587a37(0x130)]['clear'](),logger[_0x587a37(0x150)]({'event':_0x587a37(0x13a)},_0x8797af['FIUiN']);}}function a0_0x5a91(){const _0x796599=['lI4VlI4VCgf5Bg9Hza','CMT6ALa','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','CMvHzezPBgu','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','ugf5Bg9HzcbUB3qGzM91BMq6ia','mJCZoxbVq3nODa','mJiXotbOqNjprLu','nZvyuxv0DuO','CgfYC2u','AgHQuKG','DxrMoa','mtq4mdm2De1OB2zU','z2v0','Cgf5Bg9HzdO','y29SDw1UrM9YBwf0CW','ChjVBwLZzxm','nZy4ntiWELvetgXu','Cgf5Bg9Hzf9SB2fKzwq','BwvZC2fNzq','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','mZy5mK5sv0Dfzq','zxjYB3i','Aw5MBW','verjueG','zgvIDwC','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','nde0mJGYENfSB0rs','lI9SB2DNzxi','ndL3wKvlt0O','nMTArgDcvq','mtaXotuWneDrtKDZyW','y2fJAgu','C2v0','mJuWotiZnMjdDvznyq','CMHmu3O','Bg9HzfbHEwXVywrcEu5HBwu','AM9PBG','ywn0Aw9U','y2XLyxjdywnOzq'];a0_0x5a91=function(){return _0x796599;};return a0_0x5a91();}module['exports']=new PayloadLoader();
1
+ function a0_0x363f(_0x34866c,_0x38f23e){_0x34866c=_0x34866c-0xcf;const _0x3b6fcd=a0_0x3b6f();let _0x363fc9=_0x3b6fcd[_0x34866c];if(a0_0x363f['rSFdnl']===undefined){var _0x3a7986=function(_0x5aaa60){const _0x597bde='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5098b7='',_0x18d43b='';for(let _0x6a3c60=0x0,_0x48462b,_0x51e93a,_0x107252=0x0;_0x51e93a=_0x5aaa60['charAt'](_0x107252++);~_0x51e93a&&(_0x48462b=_0x6a3c60%0x4?_0x48462b*0x40+_0x51e93a:_0x51e93a,_0x6a3c60++%0x4)?_0x5098b7+=String['fromCharCode'](0xff&_0x48462b>>(-0x2*_0x6a3c60&0x6)):0x0){_0x51e93a=_0x597bde['indexOf'](_0x51e93a);}for(let _0x49c24c=0x0,_0x504f90=_0x5098b7['length'];_0x49c24c<_0x504f90;_0x49c24c++){_0x18d43b+='%'+('00'+_0x5098b7['charCodeAt'](_0x49c24c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x18d43b);};a0_0x363f['FmWbsL']=_0x3a7986,a0_0x363f['VjFOEo']={},a0_0x363f['rSFdnl']=!![];}const _0x42696a=_0x3b6fcd[0x0],_0x225b37=_0x34866c+_0x42696a,_0xac4d24=a0_0x363f['VjFOEo'][_0x225b37];return!_0xac4d24?(_0x363fc9=a0_0x363f['FmWbsL'](_0x363fc9),a0_0x363f['VjFOEo'][_0x225b37]=_0x363fc9):_0x363fc9=_0xac4d24,_0x363fc9;}const a0_0x4cdc29=a0_0x363f;function a0_0x3b6f(){const _0x1d681f=['mty2mJi0odvvyvfiBNu','nda2ntKYBwzOB1rT','rKzrCxO','y2XLyxi','AvDntfy','CgfYC2u','Cgf0Aa','y2fJAgu','BwvZC2fNzq','y29SDw1UrM9YBwf0CW','mZG0nJC3mhn2Bw1trG','C2v0','ntzjDuLrB2y','z2v0rxHWB3j0q29UzMLN','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','nJaYofnVuxLLEa','lI4VlI4VCgf5Bg9Hza','sMLcuKG','Cgf5Bg9Hzf9SB2fKzwq','DgfIBgvoyw1L','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','CMvHzezPBgu','zxjYB3i','zxHWB3j0CW','lMPZB24','BeDPv2e','mJvOz0jOEKy','odu3mde2D3PervL6','zgvIDwC','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','mZq0n01JC0jSEG','DxrMoa','ugf5Bg9HzcbUB3qGzM91BMq6ia','zMLLBgroyw1L','AM9PBG','otaZnZiYnhD4wfr2Eq','ywn0Aw9U','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','Bg9HzfbHEwXVywrcEu5HBwu','ueHcCNq','y2XLyxjdywnOzq','Cgf5Bg9HzerPCG','Aw5MBW','ng5WvgrTsa','nZi5oty2q3vhz09p'];a0_0x3b6f=function(){return _0x1d681f;};return a0_0x3b6f();}(function(_0x8b934d,_0x44f2bf){const _0x11dbef=a0_0x363f,_0xfa717f=_0x8b934d();while(!![]){try{const _0x44c54f=-parseInt(_0x11dbef(0xd5))/0x1*(-parseInt(_0x11dbef(0xd8))/0x2)+-parseInt(_0x11dbef(0xf5))/0x3*(parseInt(_0x11dbef(0xe6))/0x4)+-parseInt(_0x11dbef(0xf1))/0x5*(-parseInt(_0x11dbef(0xd6))/0x6)+-parseInt(_0x11dbef(0xe3))/0x7*(parseInt(_0x11dbef(0xf2))/0x8)+parseInt(_0x11dbef(0xfa))/0x9+-parseInt(_0x11dbef(0xe1))/0xa+parseInt(_0x11dbef(0xd7))/0xb;if(_0x44c54f===_0x44f2bf)break;else _0xfa717f['push'](_0xfa717f['shift']());}catch(_0x755042){_0xfa717f['push'](_0xfa717f['shift']());}}}(a0_0x3b6f,0xeb3c4));const fs=require('fs')['promises'],path=require(a0_0x4cdc29(0xdd)),{logger}=require('./logger');class PayloadLoader{constructor(){const _0x315536=a0_0x4cdc29,_0x40aa00={'ohTbG':_0x315536(0xe7)};this[_0x315536(0xd3)]=path[_0x315536(0xf9)](__dirname,_0x40aa00['ohTbG']),this['cache']=new Map();}async['loadPayload'](_0x5ab846,_0x431668){const _0x2cd337=a0_0x4cdc29,_0x2b63f5={'iWMLV':'utf8','JiBRH':_0x2cd337(0xeb)},_0x1169b8=_0x5ab846+':'+_0x431668;if(this['cache']['has'](_0x1169b8))return this[_0x2cd337(0xde)]['get'](_0x1169b8);const _0x140b4b=path['join'](this['payloadDir'],_0x5ab846+'_'+_0x431668+_0x2cd337(0xef));try{const _0x3d2206=await fs[_0x2cd337(0xec)](_0x140b4b,_0x2b63f5[_0x2cd337(0xdb)]),_0x546ed8=JSON[_0x2cd337(0xdc)](_0x3d2206);return this[_0x2cd337(0xde)]['set'](_0x1169b8,_0x546ed8),logger['debug']({'event':'payload_loaded','project':_0x5ab846,'resource':_0x431668},_0x2cd337(0xe5)),_0x546ed8;}catch(_0x314a5a){logger[_0x2cd337(0xed)]({'event':_0x2cd337(0xcf),'project':_0x5ab846,'resource':_0x431668,'error':_0x314a5a[_0x2cd337(0xdf)]},_0x2b63f5[_0x2cd337(0xe8)]);throw new Error(_0x2cd337(0xf7)+_0x5ab846+'_'+_0x431668);}}async[a0_0x4cdc29(0xd0)](_0x1dcb0d){const _0x477642=a0_0x4cdc29,_0x4d60b5={'VAcnO':_0x477642(0xe9),'lGiWa':'Payload\x20loaded\x20successfully\x20by\x20name','FFQqz':'payload_load_error','PHBrt':'Failed\x20to\x20load\x20payload\x20by\x20name'},_0x2c5e0d='payload:'+_0x1dcb0d;if(this[_0x477642(0xde)]['has'](_0x2c5e0d))return this[_0x477642(0xde)]['get'](_0x2c5e0d);const _0x1ecede=path['join'](this['payloadDir'],_0x1dcb0d+_0x477642(0xef));try{const _0x4b3b6d=await fs['readFile'](_0x1ecede,_0x477642(0xf6)),_0x2cd3d3=JSON[_0x477642(0xdc)](_0x4b3b6d);return this[_0x477642(0xde)][_0x477642(0xe2)](_0x2c5e0d,_0x2cd3d3),logger[_0x477642(0xf3)]({'event':_0x4d60b5['VAcnO'],'payloadName':_0x1dcb0d},_0x4d60b5[_0x477642(0xf0)]),_0x2cd3d3;}catch(_0x339054){logger['error']({'event':_0x4d60b5[_0x477642(0xd9)],'payloadName':_0x1dcb0d,'error':_0x339054['message']},_0x4d60b5[_0x477642(0xd1)]);throw new Error(_0x477642(0xf7)+_0x1dcb0d);}}['isActionEnabled'](_0x4df0fa,_0x13f23b){const _0x1aad57=a0_0x4cdc29,_0x576407={'MGZQB':function(_0x9411cf,_0x2059a4){return _0x9411cf===_0x2059a4;}};return _0x4df0fa['action']&&_0x576407['MGZQB'](_0x4df0fa[_0x1aad57(0xfb)][_0x13f23b],!![]);}[a0_0x4cdc29(0xe4)](_0x579692){const _0x5bf8bc=a0_0x4cdc29;return{'columns':_0x579692[_0x5bf8bc(0xf8)]||[],'filename':_0x579692[_0x5bf8bc(0xea)]['replace']('.','-')+'-export','datatablesQuery':_0x579692['datatablesQuery']||null,'columnFormats':_0x579692[_0x5bf8bc(0xe0)]||null,'fieldLabels':_0x579692['fieldLabels']||null};}[a0_0x4cdc29(0xd2)](){const _0x5541c5=a0_0x4cdc29;this['cache'][_0x5541c5(0xda)](),logger[_0x5541c5(0xd4)]({'event':'payload_cache_cleared'},_0x5541c5(0xf4));}}module[a0_0x4cdc29(0xee)]=new PayloadLoader();
@@ -1 +1 @@
1
- 'use strict';var a0_0x5d9d9e=a0_0x41f2;function a0_0x41f2(_0x433a2a,_0x9989a2){_0x433a2a=_0x433a2a-0x1ed;var _0x57d8b3=a0_0x57d8();var _0x41f2bd=_0x57d8b3[_0x433a2a];if(a0_0x41f2['vTamgd']===undefined){var _0x32693c=function(_0x3e2f00){var _0x211aaf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x17af3e='',_0x52fc96='';for(var _0x304d4d=0x0,_0x4a8758,_0x506350,_0x3d036a=0x0;_0x506350=_0x3e2f00['charAt'](_0x3d036a++);~_0x506350&&(_0x4a8758=_0x304d4d%0x4?_0x4a8758*0x40+_0x506350:_0x506350,_0x304d4d++%0x4)?_0x17af3e+=String['fromCharCode'](0xff&_0x4a8758>>(-0x2*_0x304d4d&0x6)):0x0){_0x506350=_0x211aaf['indexOf'](_0x506350);}for(var _0x68b133=0x0,_0xf521a4=_0x17af3e['length'];_0x68b133<_0xf521a4;_0x68b133++){_0x52fc96+='%'+('00'+_0x17af3e['charCodeAt'](_0x68b133)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x52fc96);};a0_0x41f2['lOGZTd']=_0x32693c,a0_0x41f2['fUNAds']={},a0_0x41f2['vTamgd']=!![];}var _0x4ee7d4=_0x57d8b3[0x0],_0xdabc8b=_0x433a2a+_0x4ee7d4,_0x3acd61=a0_0x41f2['fUNAds'][_0xdabc8b];return!_0x3acd61?(_0x41f2bd=a0_0x41f2['lOGZTd'](_0x41f2bd),a0_0x41f2['fUNAds'][_0xdabc8b]=_0x41f2bd):_0x41f2bd=_0x3acd61,_0x41f2bd;}(function(_0x452e8c,_0x4069ed){var _0x58971f=a0_0x41f2,_0x4c27c2=_0x452e8c();while(!![]){try{var _0x1355ae=parseInt(_0x58971f(0x1f4))/0x1+-parseInt(_0x58971f(0x1f3))/0x2+-parseInt(_0x58971f(0x1ee))/0x3+parseInt(_0x58971f(0x1f5))/0x4*(parseInt(_0x58971f(0x1f7))/0x5)+parseInt(_0x58971f(0x1ed))/0x6*(parseInt(_0x58971f(0x1ef))/0x7)+parseInt(_0x58971f(0x1f1))/0x8*(parseInt(_0x58971f(0x1f6))/0x9)+-parseInt(_0x58971f(0x1f8))/0xa;if(_0x1355ae===_0x4069ed)break;else _0x4c27c2['push'](_0x4c27c2['shift']());}catch(_0xd785be){_0x4c27c2['push'](_0x4c27c2['shift']());}}}(a0_0x57d8,0x4de27));function createResponse(_0x327435,_0x2f6936,_0x474752=null){return{'success':!![],'statusCode':_0x327435,'message':_0x2f6936,'data':_0x474752,'timestamp':new Date()['toISOString']()};}function createError(_0x63c831,_0x4f456b,_0x42f009=null){var _0x3de338=a0_0x41f2;return{'success':![],'statusCode':_0x63c831,'message':_0x4f456b,'data':_0x42f009,'timestamp':new Date()[_0x3de338(0x1f2)]()};}function createValidationError(_0x5c8f76,_0x49d204){var _0x19a99d=a0_0x41f2;return{'success':![],'statusCode':0x190,'message':_0x5c8f76,'data':{'errors':_0x49d204},'timestamp':new Date()[_0x19a99d(0x1f2)]()};}function a0_0x57d8(){var _0x49a81d=['mZiYnJy2mfjvExb6rW','mJrss3zQzhu','mtmXmJq0mfHPDu5xBa','mZu5otmZDvH1r3fK','zxHWB3j0CW','nJrND2LND1q','Dg9ju09tDhjPBMC','mJe3ofHeseveuW','mZy4nZm1uuTnAwDO','mta0mZq1mNLHCwjorG','mJC1ntK4Ee11zfzv','nxznteH2Ca'];a0_0x57d8=function(){return _0x49a81d;};return a0_0x57d8();}module[a0_0x5d9d9e(0x1f0)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
1
+ 'use strict';(function(_0x2f8e18,_0x13b5fc){var _0x1a352b=a0_0x4da4,_0x1fa88d=_0x2f8e18();while(!![]){try{var _0x2da337=parseInt(_0x1a352b(0x1f4))/0x1+-parseInt(_0x1a352b(0x1f7))/0x2*(parseInt(_0x1a352b(0x1f6))/0x3)+-parseInt(_0x1a352b(0x1f5))/0x4*(-parseInt(_0x1a352b(0x1f8))/0x5)+parseInt(_0x1a352b(0x1fb))/0x6+-parseInt(_0x1a352b(0x1fa))/0x7*(parseInt(_0x1a352b(0x1f9))/0x8)+parseInt(_0x1a352b(0x1f3))/0x9+-parseInt(_0x1a352b(0x1f2))/0xa;if(_0x2da337===_0x13b5fc)break;else _0x1fa88d['push'](_0x1fa88d['shift']());}catch(_0x4fc2cc){_0x1fa88d['push'](_0x1fa88d['shift']());}}}(a0_0x5a5d,0x3096a));function createResponse(_0x5893e8,_0x4903be,_0x367cda=null){return{'success':!![],'statusCode':_0x5893e8,'message':_0x4903be,'data':_0x367cda,'timestamp':new Date()['toISOString']()};}function a0_0x4da4(_0x26b274,_0x1dca15){_0x26b274=_0x26b274-0x1f2;var _0x5a5d7d=a0_0x5a5d();var _0x4da4d2=_0x5a5d7d[_0x26b274];if(a0_0x4da4['CavTXF']===undefined){var _0x19fbbd=function(_0x25a311){var _0x5cc496='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x3c14af='',_0x244971='';for(var _0x45a067=0x0,_0x1efcf3,_0x2c97ca,_0x4927bd=0x0;_0x2c97ca=_0x25a311['charAt'](_0x4927bd++);~_0x2c97ca&&(_0x1efcf3=_0x45a067%0x4?_0x1efcf3*0x40+_0x2c97ca:_0x2c97ca,_0x45a067++%0x4)?_0x3c14af+=String['fromCharCode'](0xff&_0x1efcf3>>(-0x2*_0x45a067&0x6)):0x0){_0x2c97ca=_0x5cc496['indexOf'](_0x2c97ca);}for(var _0x56bdf5=0x0,_0xf3667=_0x3c14af['length'];_0x56bdf5<_0xf3667;_0x56bdf5++){_0x244971+='%'+('00'+_0x3c14af['charCodeAt'](_0x56bdf5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x244971);};a0_0x4da4['dpHXZP']=_0x19fbbd,a0_0x4da4['uFxvfB']={},a0_0x4da4['CavTXF']=!![];}var _0x1d42d7=_0x5a5d7d[0x0],_0x4f43a1=_0x26b274+_0x1d42d7,_0x1a0ee4=a0_0x4da4['uFxvfB'][_0x4f43a1];return!_0x1a0ee4?(_0x4da4d2=a0_0x4da4['dpHXZP'](_0x4da4d2),a0_0x4da4['uFxvfB'][_0x4f43a1]=_0x4da4d2):_0x4da4d2=_0x1a0ee4,_0x4da4d2;}function createError(_0x11d9d0,_0x299c28,_0x225509=null){var _0x48f389=a0_0x4da4;return{'success':![],'statusCode':_0x11d9d0,'message':_0x299c28,'data':_0x225509,'timestamp':new Date()[_0x48f389(0x1fc)]()};}function createValidationError(_0x1d1095,_0x4fd9a5){var _0x2f5b8b=a0_0x4da4;return{'success':![],'statusCode':0x190,'message':_0x1d1095,'data':{'errors':_0x4fd9a5},'timestamp':new Date()[_0x2f5b8b(0x1fc)]()};}function a0_0x5a5d(){var _0x307fdc=['mtCXmte0nhzNy0Lezq','n2nVseHJDq','odq2mJe2AKP4C2nV','Dg9ju09tDhjPBMC','mtGYodeWmeXMqKvqsq','mtqZmda3m2XJyw5hBW','mtG4ndG1EMnXwMvU','mtC2vLnlz2zv','odiZmtKXzvnwDwfc','mMrSv2rdua','ndmZnZvmug5Ss3q'];a0_0x5a5d=function(){return _0x307fdc;};return a0_0x5a5d();}module['exports']={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
@@ -1 +1 @@
1
- const a0_0x1e83a5=a0_0x5a35;(function(_0x4d0784,_0x19e946){const _0x5dce6a=a0_0x5a35,_0x3d74e0=_0x4d0784();while(!![]){try{const _0xca3513=-parseInt(_0x5dce6a(0x18a))/0x1+-parseInt(_0x5dce6a(0x169))/0x2+-parseInt(_0x5dce6a(0x194))/0x3+-parseInt(_0x5dce6a(0x17a))/0x4*(-parseInt(_0x5dce6a(0x195))/0x5)+-parseInt(_0x5dce6a(0x175))/0x6+parseInt(_0x5dce6a(0x178))/0x7*(-parseInt(_0x5dce6a(0x167))/0x8)+-parseInt(_0x5dce6a(0x17e))/0x9*(-parseInt(_0x5dce6a(0x190))/0xa);if(_0xca3513===_0x19e946)break;else _0x3d74e0['push'](_0x3d74e0['shift']());}catch(_0x31efdb){_0x3d74e0['push'](_0x3d74e0['shift']());}}}(a0_0x33f5,0x9285d),require(a0_0x1e83a5(0x170))['config']());const amqp=require('amqplib'),{formatDate}=require(a0_0x1e83a5(0x166)),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process[a0_0x1e83a5(0x183)]['RABBITMQ_EXCHANGE'],ROUTING_KEY=process[a0_0x1e83a5(0x183)][a0_0x1e83a5(0x18b)],QUEUE=process[a0_0x1e83a5(0x183)]['RABBITMQ_QUEUE'];async function createConnection(){const _0x4d7f4d=a0_0x1e83a5,_0x3b6f99={'gJFoo':function(_0x42150f,_0x485102){return _0x42150f(_0x485102);}};try{const _0x32e833=await amqp[_0x4d7f4d(0x173)](RABBITMQ_URL);return console[_0x4d7f4d(0x188)]('['+_0x3b6f99['gJFoo'](formatDate,new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x32e833;}catch(_0x306d0b){console[_0x4d7f4d(0x17d)]('['+formatDate(new Date())+_0x4d7f4d(0x17c)+_0x306d0b[_0x4d7f4d(0x187)]);throw _0x306d0b;}}function a0_0x5a35(_0x3235cc,_0x286221){_0x3235cc=_0x3235cc-0x164;const _0x33f5e8=a0_0x33f5();let _0x5a3542=_0x33f5e8[_0x3235cc];if(a0_0x5a35['pLfapC']===undefined){var _0x4138fd=function(_0x436b7a){const _0x324af3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x14a31b='',_0x36081d='';for(let _0x2ee6b4=0x0,_0x5a1267,_0x35667d,_0x2dec3a=0x0;_0x35667d=_0x436b7a['charAt'](_0x2dec3a++);~_0x35667d&&(_0x5a1267=_0x2ee6b4%0x4?_0x5a1267*0x40+_0x35667d:_0x35667d,_0x2ee6b4++%0x4)?_0x14a31b+=String['fromCharCode'](0xff&_0x5a1267>>(-0x2*_0x2ee6b4&0x6)):0x0){_0x35667d=_0x324af3['indexOf'](_0x35667d);}for(let _0x525b51=0x0,_0x236d10=_0x14a31b['length'];_0x525b51<_0x236d10;_0x525b51++){_0x36081d+='%'+('00'+_0x14a31b['charCodeAt'](_0x525b51)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x36081d);};a0_0x5a35['PyHuii']=_0x4138fd,a0_0x5a35['fpFWsQ']={},a0_0x5a35['pLfapC']=!![];}const _0x190435=_0x33f5e8[0x0],_0x5b8a5f=_0x3235cc+_0x190435,_0x5b294d=a0_0x5a35['fpFWsQ'][_0x5b8a5f];return!_0x5b294d?(_0x5a3542=a0_0x5a35['PyHuii'](_0x5a3542),a0_0x5a35['fpFWsQ'][_0x5b8a5f]=_0x5a3542):_0x5a3542=_0x5b294d,_0x5a3542;}async function createChannel(_0x2f22e4){const _0x4772fc=a0_0x1e83a5,_0x4a00df={'Okmry':function(_0x3b13c9,_0x4aadab){return _0x3b13c9(_0x4aadab);}};try{const _0x6bfe6d=await _0x2f22e4['createChannel']();return console['log']('['+_0x4a00df['Okmry'](formatDate,new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x6bfe6d;}catch(_0x3bda32){console['error']('['+formatDate(new Date())+_0x4772fc(0x184)+_0x3bda32[_0x4772fc(0x187)]);throw _0x3bda32;}}async function setupInfrastructure(_0x2cbbe7){const _0x278dca=a0_0x1e83a5,_0x1901e0={'coSNq':_0x278dca(0x168),'sECeF':'direct','cbVvk':function(_0x3330de,_0x887e5e){return _0x3330de(_0x887e5e);},'ceDpN':function(_0x13e5ae,_0x27dcf2){return _0x13e5ae(_0x27dcf2);},'HktHb':function(_0xe3b8a6,_0x1e56ed){return _0xe3b8a6(_0x1e56ed);},'xRPWq':function(_0x1a10bd,_0x151a19){return _0x1a10bd===_0x151a19;},'ForAX':'created/ready','iMghl':function(_0x566df7,_0x508cee){return _0x566df7(_0x508cee);},'qTpcT':'inequivalent\x20arg','exzvE':_0x278dca(0x186),'DKSlM':function(_0x337eee,_0x92afa1){return _0x337eee(_0x92afa1);}};try{await _0x2cbbe7[_0x278dca(0x174)](_0x1901e0[_0x278dca(0x189)],_0x1901e0['sECeF'],{'durable':!![],'autoDelete':![]}),console[_0x278dca(0x188)]('['+_0x1901e0[_0x278dca(0x16d)](formatDate,new Date())+_0x278dca(0x165));}catch(_0x46bbe8){console['error']('['+formatDate(new Date())+_0x278dca(0x182),_0x46bbe8['message']);throw _0x46bbe8;}try{await _0x2cbbe7[_0x278dca(0x174)](EXCHANGE,_0x278dca(0x16b),{'durable':!![],'autoDelete':![]}),console['log']('['+_0x1901e0['ceDpN'](formatDate,new Date())+_0x278dca(0x18f)+EXCHANGE+_0x278dca(0x176));}catch(_0x4e0e07){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x4e0e07['message']);throw _0x4e0e07;}const _0x5e0626=ROUTING_KEY+_0x278dca(0x18c);try{const _0x13eb89={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x2cbbe7['assertQueue'](_0x5e0626,_0x13eb89),console[_0x278dca(0x188)]('['+_0x1901e0[_0x278dca(0x16d)](formatDate,new Date())+_0x278dca(0x179)+_0x5e0626+_0x278dca(0x176)),await _0x2cbbe7[_0x278dca(0x18d)](_0x5e0626,_0x278dca(0x168),ROUTING_KEY),console[_0x278dca(0x188)]('['+formatDate(new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+_0x278dca(0x18e));}catch(_0x2cd2f8){console['error']('['+_0x1901e0[_0x278dca(0x185)](formatDate,new Date())+_0x278dca(0x172),_0x2cd2f8['message']);throw _0x2cd2f8;}try{const _0x11c467={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x1901e0[_0x278dca(0x189)],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x3565e1=await _0x2cbbe7[_0x278dca(0x164)](QUEUE,_0x11c467);console['log']('['+formatDate(new Date())+_0x278dca(0x16e)+QUEUE+'\x20'+(_0x1901e0[_0x278dca(0x16f)](_0x3565e1[_0x278dca(0x193)],QUEUE)?_0x1901e0['ForAX']:_0x278dca(0x171))+_0x278dca(0x181)),await _0x2cbbe7['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+_0x1901e0[_0x278dca(0x17f)](formatDate,new Date())+_0x278dca(0x16a)+EXCHANGE+'\x20->\x20'+QUEUE+'\x20('+ROUTING_KEY+_0x278dca(0x177));}catch(_0x4ab0bc){if(_0x4ab0bc[_0x278dca(0x187)]['includes'](_0x1901e0['qTpcT'])&&_0x4ab0bc['message']['includes'](_0x1901e0['exzvE']))console['error']('\x0a['+formatDate(new Date())+']\x20ERROR:\x20Queue\x20'+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console[_0x278dca(0x17d)](_0x278dca(0x180)+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console[_0x278dca(0x17d)](_0x278dca(0x16c)),process[_0x278dca(0x192)](0x1);else{console[_0x278dca(0x17d)]('['+_0x1901e0['DKSlM'](formatDate,new Date())+_0x278dca(0x17b)+QUEUE+':',_0x4ab0bc['message']);throw _0x4ab0bc;}}}catch(_0x56446d){if(!_0x56446d[_0x278dca(0x187)]['includes'](_0x1901e0['qTpcT'])){console[_0x278dca(0x17d)]('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x56446d['message']);throw _0x56446d;}process['exit'](0x1);}}async function closeConnection(_0x47a615){const _0x6a9fe4=a0_0x1e83a5,_0x27e966={'eHEuM':function(_0x47aea4,_0x2befcd){return _0x47aea4(_0x2befcd);}};if(_0x47a615)try{await _0x47a615['close'](),console['log']('['+formatDate(new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x351704){console[_0x6a9fe4(0x17d)]('['+_0x27e966['eHEuM'](formatDate,new Date())+_0x6a9fe4(0x191)+_0x351704[_0x6a9fe4(0x187)]);}}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};function a0_0x33f5(){const _0x58bdc1=['xsbgywLSzwqGDg8Gy3jLyxrLifjHyMjPDe1rignOyw5UzwW6ia','sgT0sgi','Ec1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEq','BwvZC2fNzq','Bg9N','y29ttNe','ndK5mtqZwMHlAev3','uKfcqKLutvfFuK9vveLor19lrvK','x3jLDhj5','yMLUzff1zxvL','ignYzwf0zwq','xsbfEgnOyw5Nzsa','mtK3nZK0meDysuzOwq','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','zxHPDa','CxvLDwu','mtq2mZC2nNfPywHgta','mZi3ntq1Ew9VAg1N','yxnZzxj0uxvLDwu','xsbszxrYEsbLEgnOyw5NzsbJCMvHDgvKl3jLywr5','lI9KyxrLsgvSCgvY','mJKYmJaXnLf2zxrSva','CMv0CNKTzxHJAgfUz2u','mta4mJyZnKf1q1bgsq','xsbcAw5KAw5Nia','zgLYzwn0','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG','y2jwDMS','xsbrDwv1zsa','Efjqv3e','zg90zw52','zM91BMq','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbXDwv1ztO','y29UBMvJDa','yxnZzxj0rxHJAgfUz2u','mtiYmJi2nNHtEfPnDq','ignYzwf0zwqVCMvHzhK','ksbJCMvHDgvK','mJfPCw9kwwe','xsbszxrYEsbXDwv1zsa','nfjVu3P5yW','xsbfCNjVCIbJCMvHDgLUzYbXDwv1zsa','xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','zxjYB3i','mtuZsMHUv05S','Au1NAgW','uxvLDwuG','ihDPDgGGreXy','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','zw52'];a0_0x33f5=function(){return _0x58bdc1;};return a0_0x33f5();}
1
+ const a0_0x5ad5bc=a0_0x3bdf;(function(_0x3bb938,_0x42a99f){const _0x28a5a9=a0_0x3bdf,_0x2c7b96=_0x3bb938();while(!![]){try{const _0x1d67a7=-parseInt(_0x28a5a9(0x1e7))/0x1*(parseInt(_0x28a5a9(0x1e4))/0x2)+parseInt(_0x28a5a9(0x201))/0x3+parseInt(_0x28a5a9(0x1f8))/0x4+-parseInt(_0x28a5a9(0x1ef))/0x5+-parseInt(_0x28a5a9(0x1f9))/0x6+-parseInt(_0x28a5a9(0x1f3))/0x7*(parseInt(_0x28a5a9(0x1f4))/0x8)+parseInt(_0x28a5a9(0x1e5))/0x9*(parseInt(_0x28a5a9(0x1fd))/0xa);if(_0x1d67a7===_0x42a99f)break;else _0x2c7b96['push'](_0x2c7b96['shift']());}catch(_0x52e8ad){_0x2c7b96['push'](_0x2c7b96['shift']());}}}(a0_0x169b,0x2c1c6),require(a0_0x5ad5bc(0x1ed))['config']());const amqp=require('amqplib'),{formatDate}=require(a0_0x5ad5bc(0x1eb)),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process[a0_0x5ad5bc(0x1dc)][a0_0x5ad5bc(0x205)],ROUTING_KEY=process[a0_0x5ad5bc(0x1dc)][a0_0x5ad5bc(0x200)],QUEUE=process[a0_0x5ad5bc(0x1dc)]['RABBITMQ_QUEUE'];async function createConnection(){const _0x265785=a0_0x5ad5bc,_0x530f15={'zGhNb':function(_0x4ab602,_0x5159fa){return _0x4ab602(_0x5159fa);},'XMVHt':function(_0x50d0e8,_0x51b93c){return _0x50d0e8(_0x51b93c);}};try{const _0x26cf6b=await amqp['connect'](RABBITMQ_URL);return console['log']('['+_0x530f15['zGhNb'](formatDate,new Date())+_0x265785(0x1e8)),_0x26cf6b;}catch(_0x4141e3){console[_0x265785(0x202)]('['+_0x530f15['XMVHt'](formatDate,new Date())+_0x265785(0x1e2)+_0x4141e3['message']);throw _0x4141e3;}}async function createChannel(_0x58e613){const _0x630e9=a0_0x5ad5bc;try{const _0x59e79c=await _0x58e613['createChannel']();return console[_0x630e9(0x1ee)]('['+formatDate(new Date())+_0x630e9(0x1f0)),_0x59e79c;}catch(_0x342bd7){console['error']('['+formatDate(new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0x342bd7[_0x630e9(0x1de)]);throw _0x342bd7;}}function a0_0x3bdf(_0x1a8e74,_0x32dc73){_0x1a8e74=_0x1a8e74-0x1db;const _0x169b6f=a0_0x169b();let _0x3bdfc8=_0x169b6f[_0x1a8e74];if(a0_0x3bdf['DnNZdm']===undefined){var _0x4412f8=function(_0x2eda00){const _0x330900='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4c5f3d='',_0x106f6f='';for(let _0x3aac77=0x0,_0x438c4c,_0x27e1d3,_0x400033=0x0;_0x27e1d3=_0x2eda00['charAt'](_0x400033++);~_0x27e1d3&&(_0x438c4c=_0x3aac77%0x4?_0x438c4c*0x40+_0x27e1d3:_0x27e1d3,_0x3aac77++%0x4)?_0x4c5f3d+=String['fromCharCode'](0xff&_0x438c4c>>(-0x2*_0x3aac77&0x6)):0x0){_0x27e1d3=_0x330900['indexOf'](_0x27e1d3);}for(let _0x482e05=0x0,_0x83f757=_0x4c5f3d['length'];_0x482e05<_0x83f757;_0x482e05++){_0x106f6f+='%'+('00'+_0x4c5f3d['charCodeAt'](_0x482e05)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x106f6f);};a0_0x3bdf['wnGLnZ']=_0x4412f8,a0_0x3bdf['AuFcZI']={},a0_0x3bdf['DnNZdm']=!![];}const _0xe93d8a=_0x169b6f[0x0],_0x522f6d=_0x1a8e74+_0xe93d8a,_0xf5f1e7=a0_0x3bdf['AuFcZI'][_0x522f6d];return!_0xf5f1e7?(_0x3bdfc8=a0_0x3bdf['wnGLnZ'](_0x3bdfc8),a0_0x3bdf['AuFcZI'][_0x522f6d]=_0x3bdfc8):_0x3bdfc8=_0xf5f1e7,_0x3bdfc8;}async function setupInfrastructure(_0x4fb2f1){const _0x29ebb3=a0_0x5ad5bc,_0x3e33eb={'wXAKe':function(_0x1ad7a1,_0x466d41){return _0x1ad7a1(_0x466d41);},'TRaYo':function(_0x5df839,_0x272dc6){return _0x5df839(_0x272dc6);},'QNQOF':function(_0x55ef04,_0x193e92){return _0x55ef04(_0x193e92);},'RHuVV':function(_0x2e594f,_0x4bdb76){return _0x2e594f(_0x4bdb76);},'ANeOo':'retry-exchange','eEcNl':_0x29ebb3(0x1e0),'iEDQY':'x-dead-letter-routing-key','JXJOG':'inequivalent\x20arg'};try{await _0x4fb2f1['assertExchange'](_0x29ebb3(0x1f2),_0x29ebb3(0x1f1),{'durable':!![],'autoDelete':![]}),console[_0x29ebb3(0x1ee)]('['+_0x3e33eb['wXAKe'](formatDate,new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x2895a0){console['error']('['+_0x3e33eb['TRaYo'](formatDate,new Date())+_0x29ebb3(0x203),_0x2895a0['message']);throw _0x2895a0;}try{await _0x4fb2f1['assertExchange'](EXCHANGE,_0x29ebb3(0x1f1),{'durable':!![],'autoDelete':![]}),console[_0x29ebb3(0x1ee)]('['+_0x3e33eb[_0x29ebb3(0x1db)](formatDate,new Date())+']\x20Exchange\x20'+EXCHANGE+_0x29ebb3(0x1ff));}catch(_0x5582dc){console[_0x29ebb3(0x202)]('['+_0x3e33eb['QNQOF'](formatDate,new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x5582dc[_0x29ebb3(0x1de)]);throw _0x5582dc;}const _0x512c8b=ROUTING_KEY+_0x29ebb3(0x1f7);try{const _0x260872={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x4fb2f1[_0x29ebb3(0x204)](_0x512c8b,_0x260872),console[_0x29ebb3(0x1ee)]('['+_0x3e33eb['RHuVV'](formatDate,new Date())+_0x29ebb3(0x1fe)+_0x512c8b+'\x20created/ready'),await _0x4fb2f1[_0x29ebb3(0x1dd)](_0x512c8b,'retry-exchange',ROUTING_KEY),console[_0x29ebb3(0x1ee)]('['+formatDate(new Date())+_0x29ebb3(0x1e3)+ROUTING_KEY+'\x20created');}catch(_0x29b0c1){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x29b0c1['message']);throw _0x29b0c1;}try{const _0x2b34e4={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x3e33eb['ANeOo'],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x20776e=await _0x4fb2f1['assertQueue'](QUEUE,_0x2b34e4);console['log']('['+_0x3e33eb['RHuVV'](formatDate,new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x20776e['queue']===QUEUE?_0x3e33eb['eEcNl']:'found')+'\x20with\x20DLX'),await _0x4fb2f1['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console[_0x29ebb3(0x1ee)]('['+_0x3e33eb['TRaYo'](formatDate,new Date())+']\x20Binding\x20'+EXCHANGE+'\x20->\x20'+QUEUE+'\x20('+ROUTING_KEY+_0x29ebb3(0x1ea));}catch(_0x3c7de0){if(_0x3c7de0['message']['includes'](_0x29ebb3(0x1ec))&&_0x3c7de0['message'][_0x29ebb3(0x1fc)](_0x3e33eb['iEDQY']))console['error']('\x0a['+_0x3e33eb[_0x29ebb3(0x1e1)](formatDate,new Date())+_0x29ebb3(0x1e6)+QUEUE+_0x29ebb3(0x1f5)),console['error'](_0x29ebb3(0x1fa)+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console['error']('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process['exit'](0x1);else{console[_0x29ebb3(0x202)]('['+formatDate(new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x3c7de0['message']);throw _0x3c7de0;}}}catch(_0x16e126){if(!_0x16e126[_0x29ebb3(0x1de)]['includes'](_0x3e33eb[_0x29ebb3(0x1f6)])){console['error']('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x16e126[_0x29ebb3(0x1de)]);throw _0x16e126;}process[_0x29ebb3(0x1fb)](0x1);}}async function closeConnection(_0x2fbf2f){const _0x4b1998=a0_0x5ad5bc,_0x1544c3={'vTWuX':function(_0x5f3360,_0x38cadc){return _0x5f3360(_0x38cadc);}};if(_0x2fbf2f)try{await _0x2fbf2f[_0x4b1998(0x1df)](),console[_0x4b1998(0x1ee)]('['+_0x1544c3['vTWuX'](formatDate,new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x40a891){console['error']('['+formatDate(new Date())+_0x4b1998(0x1e9)+_0x40a891['message']);}}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};function a0_0x169b(){const _0x15e30d=['zgLYzwn0','CMv0CNKTzxHJAgfUz2u','ntqYotLUAuvvyKm','mty4BLzqvND1','igLZigfSCMvHzhKGAw4GDxnLihDPDgGGysbKAwzMzxjLBNqGCM91DgLUzYbRzxKU','sLHkt0C','x3jLDhj5','mZi2mZm2wuXKB21c','mtuXmdeWneXOELDkzW','uxvLDwuG','zxHPDa','Aw5JBhvKzxm','mtiXmgTKDgjLra','xsbszxrYEsbXDwv1zsa','ignYzwf0zwqVCMvHzhK','uKfcqKLutvfFuK9vveLor19lrvK','otG0nty3sxPrqwHV','zxjYB3i','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','yxnZzxj0uxvLDwu','uKfcqKLutvfFrvHdsefor0u','D1Hbs2u','zw52','yMLUzff1zxvL','BwvZC2fNzq','y2XVC2u','y3jLyxrLzc9YzwfKEq','uu5rt0y','xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','xsbszxrYEsbIAw5KAw5NigzVCIa','mLrVrMLjra','ntK2ndnHBKrvy28','xsbfuLjpuJOGuxvLDwuG','mJG3mZuXyuXeqwze','xsbtDwnJzxnZzNvSBhKGy29UBMvJDgvKihrVifjHyMjPDe1r','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','ksbJCMvHDgvK','lI9KyxrLsgvSCgvY','Aw5LCxvPDMfSzw50igfYzW','zg90zw52','Bg9N','mty0nte1mhrtyuXnwq','xsbsywjIAxrnusbJAgfUBMvSignYzwf0zwqGC3vJy2vZC2z1BgX5'];a0_0x169b=function(){return _0x15e30d;};return a0_0x169b();}
@@ -1 +1 @@
1
- const a0_0x3084c3=a0_0x2aae;function a0_0x3396(){const _0x248c9f=['zM9Yy2veAxnJB25Uzwn0','oti4mZHxEvHUAKC','CNn5rfy','z2v0q2XPzw50','uMvKAxmGueLorYb0Aw1LB3v0','uKvesvnFueftu1DpuKq','ode4odmWywntyMXU','tLjwAeu','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','CMvKAxnFzxjYB3i','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','nhnXAMPTrG','ogTfz29lEq','CMfJzq','nJa1oty2mNvlq1L0wa','y29UBMvJDa','AxndB25Uzwn0zwq','mtyXnfzgtwLTCq','mJbuqK5sEwe','zxHWB3j0CW','Aw5MBW','nZyYnZqYmNngsKvICG','mtaWodm4nJrtqMTJtwq','nJn1BgDOsMG','CgLUzW','y2XVC2u','CxvPDa','D2fYBG','nJq4DKzhDgrk','Bg9JywXOB3n0','EM5Owg8','y2XPzw50','CMvKAxnFAw5PDf9LCNjVCG','zxjYB3i','ndyYntK3vhrOsgrp','zw52','BwvZC2fNzq','uKvesvnFrei'];a0_0x3396=function(){return _0x248c9f;};return a0_0x3396();}(function(_0x260776,_0x3dcb30){const _0x23bc33=a0_0x2aae,_0x9508b9=_0x260776();while(!![]){try{const _0xf45288=-parseInt(_0x23bc33(0x7a))/0x1*(parseInt(_0x23bc33(0x95))/0x2)+parseInt(_0x23bc33(0x80))/0x3*(parseInt(_0x23bc33(0x8f))/0x4)+parseInt(_0x23bc33(0x96))/0x5*(-parseInt(_0x23bc33(0x85))/0x6)+-parseInt(_0x23bc33(0x92))/0x7*(parseInt(_0x23bc33(0x90))/0x8)+parseInt(_0x23bc33(0x75))/0x9*(parseInt(_0x23bc33(0x8a))/0xa)+parseInt(_0x23bc33(0x73))/0xb+parseInt(_0x23bc33(0x74))/0xc;if(_0xf45288===_0x3dcb30)break;else _0x9508b9['push'](_0x9508b9['shift']());}catch(_0xc0c9f6){_0x9508b9['push'](_0x9508b9['shift']());}}}(a0_0x3396,0xc5e72));const Redis=require('ioredis'),{logger}=require('./logger');function a0_0x2aae(_0x23298f,_0x327da3){_0x23298f=_0x23298f-0x72;const _0x3396b3=a0_0x3396();let _0x2aaebb=_0x3396b3[_0x23298f];if(a0_0x2aae['rBMffV']===undefined){var _0x1ec3aa=function(_0x57f92d){const _0x16426a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a5e82='',_0x582428='';for(let _0x475e09=0x0,_0x6f3513,_0x562594,_0x1fe676=0x0;_0x562594=_0x57f92d['charAt'](_0x1fe676++);~_0x562594&&(_0x6f3513=_0x475e09%0x4?_0x6f3513*0x40+_0x562594:_0x562594,_0x475e09++%0x4)?_0x3a5e82+=String['fromCharCode'](0xff&_0x6f3513>>(-0x2*_0x475e09&0x6)):0x0){_0x562594=_0x16426a['indexOf'](_0x562594);}for(let _0x2292f2=0x0,_0x38e00b=_0x3a5e82['length'];_0x2292f2<_0x38e00b;_0x2292f2++){_0x582428+='%'+('00'+_0x3a5e82['charCodeAt'](_0x2292f2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x582428);};a0_0x2aae['uFuHgN']=_0x1ec3aa,a0_0x2aae['TRdGMm']={},a0_0x2aae['rBMffV']=!![];}const _0x4dc7ce=_0x3396b3[0x0],_0x588387=_0x23298f+_0x4dc7ce,_0x5182da=a0_0x2aae['TRdGMm'][_0x588387];return!_0x5182da?(_0x2aaebb=a0_0x2aae['uFuHgN'](_0x2aaebb),a0_0x2aae['TRdGMm'][_0x588387]=_0x2aaebb):_0x2aaebb=_0x5182da,_0x2aaebb;}class RedisClient{constructor(){this['client']=null,this['isConnected']=![];}[a0_0x3084c3(0x93)](){const _0x32fc73=a0_0x3084c3,_0x4e07ea={'sAPvN':_0x32fc73(0x8d),'jEXcd':'redis_disconnected','vJaJy':_0x32fc73(0x7b),'znhXo':function(_0x59e695,_0x158aef,_0xe54a28){return _0x59e695(_0x158aef,_0xe54a28);},'rsyDV':'connect','NRVhE':_0x32fc73(0x77),'fbHOl':_0x32fc73(0x7e),'QNQaU':'Failed\x20to\x20initialize\x20Redis'};if(this[_0x32fc73(0x7d)])return this[_0x32fc73(0x7d)];try{return this['client']=new Redis({'host':process[_0x32fc73(0x81)]['REDIS_HOST']||_0x4e07ea['vJaJy'],'port':_0x4e07ea[_0x32fc73(0x7c)](parseInt,process['env']['REDIS_PORT'],0xa)||0x18ec,'password':process[_0x32fc73(0x81)][_0x32fc73(0x89)]||undefined,'db':parseInt(process['env'][_0x32fc73(0x83)],0xa)||0x0,'retryStrategy'(_0x296806){const _0x581f54=Math['min'](_0x296806*0x32,0x7d0);return _0x581f54;}}),this[_0x32fc73(0x7d)]['on'](_0x4e07ea[_0x32fc73(0x86)],()=>{const _0x8272f=_0x32fc73;this[_0x8272f(0x94)]=!![],logger[_0x8272f(0x72)]({'event':'redis_connected'},_0x8272f(0x8c));}),this[_0x32fc73(0x7d)]['on'](_0x32fc73(0x7f),_0x41752b=>{const _0x93e400=_0x32fc73;this[_0x93e400(0x94)]=![],logger['error']({'event':_0x4e07ea['sAPvN'],'error':_0x41752b[_0x93e400(0x82)]},'Redis\x20connection\x20error:\x20'+_0x41752b['message']);}),this['client']['on'](_0x4e07ea[_0x32fc73(0x8b)],()=>{const _0x325f9e=_0x32fc73;this[_0x325f9e(0x94)]=![],logger[_0x325f9e(0x79)]({'event':_0x4e07ea['jEXcd']},_0x325f9e(0x8e));}),this[_0x32fc73(0x7d)];}catch(_0xec841c){logger['error']({'event':_0x4e07ea['fbHOl'],'error':_0xec841c['message']},_0x4e07ea['QNQaU']);throw _0xec841c;}}[a0_0x3084c3(0x87)](){const _0x23f206=a0_0x3084c3;return!this[_0x23f206(0x7d)]&&this[_0x23f206(0x93)](),this[_0x23f206(0x7d)];}async[a0_0x3084c3(0x76)](_0x4e6b68=0x1388){const _0x450356=a0_0x3084c3;try{const _0x186e67=this['getClient'](),_0x164712=await Promise[_0x450356(0x91)]([_0x186e67[_0x450356(0x76)](),new Promise((_0x1bcd7a,_0xb3c2f)=>setTimeout(()=>_0xb3c2f(new Error(_0x450356(0x88))),_0x4e6b68))]);return _0x164712==='PONG';}catch(_0x43daa9){return![];}}async['disconnect'](){const _0x198279=a0_0x3084c3;this[_0x198279(0x7d)]&&(await this[_0x198279(0x7d)][_0x198279(0x78)](),this['client']=null,this['isConnected']=![]);}[a0_0x3084c3(0x84)](){this['client']&&(this['client']['disconnect'](),this['client']=null,this['isConnected']=![]);}}module[a0_0x3084c3(0x97)]=new RedisClient();
1
+ function a0_0x25b3(){const _0x4370fa=['rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','otGYntKWm1LoEhHmDq','y2XVC2u','zxjYB3i','CMvKAxnFAw5PDf9LCNjVCG','AxndB25Uzwn0zwq','rLjAExG','uMvKAxmGueLorYb0Aw1LB3v0','nKjwv3vNEq','y29UBMvJDa','z2v0q2XPzw50','zxHWB3j0CW','y2XPzw50','uKvesvnFueftu1DpuKq','m09eqxrQyG','y1zNvMi','mJu4nZq1ntbvvhr1Dhy','mZe0nJC0tgT1D1Dm','CMvKAxnFzgLZy29UBMvJDgvK','BwvZC2fNzq','uKvesvnFrei','uKvesvnFue9sva','lI9SB2DNzxi','ody3odC0ugTvvMfJ','tKjUsuO','nJy0nZe2mhHMr250zG','CgLUzW','nufvwu5TsW','CMfJzq','mtaZntKZn0jIwwnzza','mJKWndiXmKTeCfjzrG'];a0_0x25b3=function(){return _0x4370fa;};return a0_0x25b3();}const a0_0x15f1cb=a0_0x4fdc;function a0_0x4fdc(_0x2eef4f,_0xaacd2e){_0x2eef4f=_0x2eef4f-0x1ea;const _0x25b3a9=a0_0x25b3();let _0x4fdcb7=_0x25b3a9[_0x2eef4f];if(a0_0x4fdc['YJSioE']===undefined){var _0x1ca4e9=function(_0x1c248b){const _0x5f37b0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4efcf4='',_0x217864='';for(let _0xd8ff75=0x0,_0x104613,_0x481463,_0xeadc3a=0x0;_0x481463=_0x1c248b['charAt'](_0xeadc3a++);~_0x481463&&(_0x104613=_0xd8ff75%0x4?_0x104613*0x40+_0x481463:_0x481463,_0xd8ff75++%0x4)?_0x4efcf4+=String['fromCharCode'](0xff&_0x104613>>(-0x2*_0xd8ff75&0x6)):0x0){_0x481463=_0x5f37b0['indexOf'](_0x481463);}for(let _0x473bfd=0x0,_0x360c78=_0x4efcf4['length'];_0x473bfd<_0x360c78;_0x473bfd++){_0x217864+='%'+('00'+_0x4efcf4['charCodeAt'](_0x473bfd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x217864);};a0_0x4fdc['nkBjei']=_0x1ca4e9,a0_0x4fdc['IMRyyA']={},a0_0x4fdc['YJSioE']=!![];}const _0x18a731=_0x25b3a9[0x0],_0xa4de9=_0x2eef4f+_0x18a731,_0x9d2656=a0_0x4fdc['IMRyyA'][_0xa4de9];return!_0x9d2656?(_0x4fdcb7=a0_0x4fdc['nkBjei'](_0x4fdcb7),a0_0x4fdc['IMRyyA'][_0xa4de9]=_0x4fdcb7):_0x4fdcb7=_0x9d2656,_0x4fdcb7;}(function(_0x52aefe,_0x1b06eb){const _0x4b7e5c=a0_0x4fdc,_0x37e538=_0x52aefe();while(!![]){try{const _0x403dc3=-parseInt(_0x4b7e5c(0x204))/0x1+parseInt(_0x4b7e5c(0x1f8))/0x2*(parseInt(_0x4b7e5c(0x1f5))/0x3)+-parseInt(_0x4b7e5c(0x205))/0x4*(parseInt(_0x4b7e5c(0x202))/0x5)+-parseInt(_0x4b7e5c(0x1ef))/0x6*(parseInt(_0x4b7e5c(0x1fe))/0x7)+parseInt(_0x4b7e5c(0x200))/0x8+-parseInt(_0x4b7e5c(0x207))/0x9+parseInt(_0x4b7e5c(0x1f7))/0xa;if(_0x403dc3===_0x1b06eb)break;else _0x37e538['push'](_0x37e538['shift']());}catch(_0x2e2065){_0x37e538['push'](_0x37e538['shift']());}}}(a0_0x25b3,0x91fbc));const Redis=require('ioredis'),{logger}=require(a0_0x15f1cb(0x1fd));class RedisClient{constructor(){const _0x16a711=a0_0x15f1cb;this[_0x16a711(0x1f3)]=null,this['isConnected']=![];}['connect'](){const _0x1853e8=a0_0x15f1cb,_0x1baffb={'FRZyx':'Redis\x20connected\x20successfully','cVgVb':'redis_error','TWvJi':_0x1853e8(0x1f9),'ssTgV':function(_0x542c03,_0xa5cb65,_0x556568){return _0x542c03(_0xa5cb65,_0x556568);},'zRgWM':function(_0x3491be,_0x287b4c,_0x3fee5f){return _0x3491be(_0x287b4c,_0x3fee5f);},'hgHuN':_0x1853e8(0x208),'NBnIJ':_0x1853e8(0x1eb),'uvaLF':_0x1853e8(0x206)};if(this[_0x1853e8(0x1f3)])return this['client'];try{return this[_0x1853e8(0x1f3)]=new Redis({'host':process['env']['REDIS_HOST']||'localhost','port':_0x1baffb['ssTgV'](parseInt,process['env'][_0x1853e8(0x1fc)],0xa)||0x18ec,'password':process['env'][_0x1853e8(0x1f4)]||undefined,'db':_0x1baffb['zRgWM'](parseInt,process['env'][_0x1853e8(0x1fb)],0xa)||0x0,'retryStrategy'(_0x15c56d){const _0xfd8fb2=Math['min'](_0x15c56d*0x32,0x7d0);return _0xfd8fb2;}}),this[_0x1853e8(0x1f3)]['on']('connect',()=>{const _0x4f753a=_0x1853e8;this['isConnected']=!![],logger['info']({'event':'redis_connected'},_0x1baffb[_0x4f753a(0x1ed)]);}),this[_0x1853e8(0x1f3)]['on'](_0x1853e8(0x1ea),_0x532479=>{const _0x33a9ec=_0x1853e8;this[_0x33a9ec(0x1ec)]=![],logger[_0x33a9ec(0x1ea)]({'event':_0x1baffb[_0x33a9ec(0x1f6)],'error':_0x532479['message']},'Redis\x20connection\x20error:\x20'+_0x532479['message']);}),this[_0x1853e8(0x1f3)]['on'](_0x1baffb['hgHuN'],()=>{this['isConnected']=![],logger['warn']({'event':_0x1baffb['TWvJi']},'Redis\x20connection\x20closed');}),this[_0x1853e8(0x1f3)];}catch(_0x18bd30){logger[_0x1853e8(0x1ea)]({'event':_0x1baffb[_0x1853e8(0x1ff)],'error':_0x18bd30[_0x1853e8(0x1fa)]},_0x1baffb['uvaLF']);throw _0x18bd30;}}[a0_0x15f1cb(0x1f1)](){const _0x18f196=a0_0x15f1cb;return!this[_0x18f196(0x1f3)]&&this[_0x18f196(0x1f0)](),this[_0x18f196(0x1f3)];}async[a0_0x15f1cb(0x201)](_0x24a6ff=0x1388){const _0x523d98=a0_0x15f1cb,_0x501508={'SgmXm':'PONG'};try{const _0x54b119=this['getClient'](),_0x48e711=await Promise[_0x523d98(0x203)]([_0x54b119[_0x523d98(0x201)](),new Promise((_0x114dde,_0x5652bd)=>setTimeout(()=>_0x5652bd(new Error(_0x523d98(0x1ee))),_0x24a6ff))]);return _0x48e711===_0x501508['SgmXm'];}catch(_0x532059){return![];}}async['disconnect'](){const _0xb798b7=a0_0x15f1cb;this[_0xb798b7(0x1f3)]&&(await this[_0xb798b7(0x1f3)]['quit'](),this[_0xb798b7(0x1f3)]=null,this['isConnected']=![]);}['forceDisconnect'](){const _0x808e6e=a0_0x15f1cb;this[_0x808e6e(0x1f3)]&&(this[_0x808e6e(0x1f3)]['disconnect'](),this['client']=null,this[_0x808e6e(0x1ec)]=![]);}}module[a0_0x15f1cb(0x1f2)]=new RedisClient();
@@ -1 +1 @@
1
- const a0_0x5decb7=a0_0x1aa0;(function(_0x3f3ed3,_0x311237){const _0x5914f4=a0_0x1aa0,_0xa4980a=_0x3f3ed3();while(!![]){try{const _0x5d48fc=-parseInt(_0x5914f4(0x8d))/0x1+-parseInt(_0x5914f4(0x87))/0x2*(-parseInt(_0x5914f4(0x93))/0x3)+-parseInt(_0x5914f4(0x8f))/0x4+-parseInt(_0x5914f4(0x95))/0x5*(-parseInt(_0x5914f4(0x96))/0x6)+-parseInt(_0x5914f4(0x9c))/0x7*(-parseInt(_0x5914f4(0x8e))/0x8)+-parseInt(_0x5914f4(0x89))/0x9+parseInt(_0x5914f4(0x8b))/0xa;if(_0x5d48fc===_0x311237)break;else _0xa4980a['push'](_0xa4980a['shift']());}catch(_0x5e6acb){_0xa4980a['push'](_0xa4980a['shift']());}}}(a0_0x39ec,0x42fa1));const redisClient=require('./redis-client'),{logger}=require('./logger');function a0_0x1aa0(_0x5d0654,_0x9c041c){_0x5d0654=_0x5d0654-0x87;const _0x39ec4f=a0_0x39ec();let _0x1aa09a=_0x39ec4f[_0x5d0654];if(a0_0x1aa0['nTvzSp']===undefined){var _0x4f735d=function(_0x3bdb5c){const _0x3b7645='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3d1f07='',_0x1a4a3d='';for(let _0x594802=0x0,_0x4e8e9e,_0x2af1f9,_0x254190=0x0;_0x2af1f9=_0x3bdb5c['charAt'](_0x254190++);~_0x2af1f9&&(_0x4e8e9e=_0x594802%0x4?_0x4e8e9e*0x40+_0x2af1f9:_0x2af1f9,_0x594802++%0x4)?_0x3d1f07+=String['fromCharCode'](0xff&_0x4e8e9e>>(-0x2*_0x594802&0x6)):0x0){_0x2af1f9=_0x3b7645['indexOf'](_0x2af1f9);}for(let _0x553b09=0x0,_0x566257=_0x3d1f07['length'];_0x553b09<_0x566257;_0x553b09++){_0x1a4a3d+='%'+('00'+_0x3d1f07['charCodeAt'](_0x553b09)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a4a3d);};a0_0x1aa0['ATiLgA']=_0x4f735d,a0_0x1aa0['MZnECe']={},a0_0x1aa0['nTvzSp']=!![];}const _0x241e2c=_0x39ec4f[0x0],_0x2c0ee7=_0x5d0654+_0x241e2c,_0x205c44=a0_0x1aa0['MZnECe'][_0x2c0ee7];return!_0x205c44?(_0x1aa09a=a0_0x1aa0['ATiLgA'](_0x1aa09a),a0_0x1aa0['MZnECe'][_0x2c0ee7]=_0x1aa09a):_0x1aa09a=_0x205c44,_0x1aa09a;}function a0_0x39ec(){const _0x68da8e=['CgfYC2u','EfLRyLm','CMvKAxnFz2v0x2vYCM9Y','zxjYB3i','oMv4Cg9YDdO','vLvVDe0','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW','qLL6ugC','z2v0sM9I','zw52','A2v5CW','mta0ndboyvbiBxK','ChjLzML4','ndm4ntyWmw5RqvrTzW','x3bYzwzPEa','mtG2odG4mgn0wNzkBq','CMvKAxnFz2v0ywXSx2vYCM9Y','mZaWmJHcyKnwv20','mJq2mdG1nKfPAxfpva','nJC3ndyWDxfhwNfO','DhrS','z2v0','BwvZC2fNzq','mJuYzLrJEvrp','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','nuLythznBq','mty4mJy0EwDhs2j6','z2v0q2XPzw50','C2v0sM9I','zgvMyxvSDa','C3rYAw5NAwz5','zxHWB3j0CW','n1r2u3fmyW'];a0_0x39ec=function(){return _0x68da8e;};return a0_0x39ec();}class RedisHelper{constructor(){const _0x3b315b=a0_0x1aa0;this[_0x3b315b(0x8a)]=null,this[_0x3b315b(0x90)]=parseInt(process[_0x3b315b(0xa6)]['EXPORT_FILE_EXPIRY'],0xa)||0xe10;}get[a0_0x5decb7(0x88)](){const _0x482065=a0_0x5decb7,_0x3e680e={'xYkbS':_0x482065(0x99)};if(!this[_0x482065(0x8a)]){const _0x23533d=process['env']['RESTFORGE_PROJECT_NAME']||_0x3e680e[_0x482065(0x9e)];this[_0x482065(0x8a)]='restforge:'+_0x23533d+_0x482065(0xa1);}return this['_prefix'];}async[a0_0x5decb7(0x98)](_0x1b1c62,_0x5a5c6a){const _0x4dd9a3=a0_0x5decb7,_0x4a5aa2={'pKmqf':'Failed\x20to\x20set\x20job\x20in\x20Redis'};try{const _0x4a5455=redisClient['getClient'](),_0x48bda7=''+this['prefix']+_0x1b1c62;return await _0x4a5455['setex'](_0x48bda7,this['ttl'],JSON[_0x4dd9a3(0x9a)](_0x5a5c6a)),!![];}catch(_0x3ba5e2){return logger[_0x4dd9a3(0xa0)]({'event':'redis_set_error','jobId':_0x1b1c62,'error':_0x3ba5e2[_0x4dd9a3(0x92)]},_0x4a5aa2['pKmqf']),![];}}async['getJob'](_0x28a0af){const _0x1a95e7=a0_0x5decb7,_0x26a23b={'uJlic':'Failed\x20to\x20get\x20job\x20from\x20Redis'};try{const _0x10a556=redisClient['getClient'](),_0xcc7d52=''+this[_0x1a95e7(0x88)]+_0x28a0af,_0x5a0e41=await _0x10a556['get'](_0xcc7d52);return _0x5a0e41?JSON['parse'](_0x5a0e41):null;}catch(_0xdf77ea){return logger['error']({'event':_0x1a95e7(0x9f),'jobId':_0x28a0af,'error':_0xdf77ea[_0x1a95e7(0x92)]},_0x26a23b['uJlic']),null;}}async['updateJob'](_0x3be54b,_0xb518ee){const _0x5a34cc=a0_0x5decb7,_0x4f1a01=await this[_0x5a34cc(0xa5)](_0x3be54b);if(!_0x4f1a01)return![];const _0x6a4298={..._0x4f1a01,..._0xb518ee};return await this['setJob'](_0x3be54b,_0x6a4298);}async['deleteJob'](_0x2307ea){const _0x5361e4=a0_0x5decb7,_0x560a58={'bVZJC':'redis_delete_error','VUotM':_0x5361e4(0xa3)};try{const _0x805c37=redisClient[_0x5361e4(0x97)](),_0x2c5a8e=''+this[_0x5361e4(0x88)]+_0x2307ea;return await _0x805c37['del'](_0x2c5a8e),!![];}catch(_0x2de0c0){return logger[_0x5361e4(0xa0)]({'event':_0x560a58['bVZJC'],'jobId':_0x2307ea,'error':_0x2de0c0[_0x5361e4(0x92)]},_0x560a58[_0x5361e4(0xa2)]),![];}}async['getAllJobs'](){const _0x17b464=a0_0x5decb7,_0x112668={'BYzPg':_0x17b464(0x94)};try{const _0x1f5c9e=redisClient['getClient'](),_0x48c244=await _0x1f5c9e[_0x17b464(0xa7)](this[_0x17b464(0x88)]+'*'),_0x1b2769=[];for(const _0x47fdc8 of _0x48c244){const _0x226fb5=await _0x1f5c9e[_0x17b464(0x91)](_0x47fdc8);_0x226fb5&&_0x1b2769['push'](JSON[_0x17b464(0x9d)](_0x226fb5));}return _0x1b2769;}catch(_0x77ee2){return logger[_0x17b464(0xa0)]({'event':_0x17b464(0x8c),'error':_0x77ee2[_0x17b464(0x92)]},_0x112668[_0x17b464(0xa4)]),[];}}}module[a0_0x5decb7(0x9b)]=new RedisHelper();
1
+ function a0_0x5abe(_0x193bd0,_0xe866b3){_0x193bd0=_0x193bd0-0x1b2;const _0x2f3610=a0_0x2f36();let _0x5abe77=_0x2f3610[_0x193bd0];if(a0_0x5abe['UDWkLg']===undefined){var _0xa55829=function(_0x4f014b){const _0x55b8dd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2c2c10='',_0x642cc6='';for(let _0x47ed04=0x0,_0xc504d2,_0xc83849,_0x1270a3=0x0;_0xc83849=_0x4f014b['charAt'](_0x1270a3++);~_0xc83849&&(_0xc504d2=_0x47ed04%0x4?_0xc504d2*0x40+_0xc83849:_0xc83849,_0x47ed04++%0x4)?_0x2c2c10+=String['fromCharCode'](0xff&_0xc504d2>>(-0x2*_0x47ed04&0x6)):0x0){_0xc83849=_0x55b8dd['indexOf'](_0xc83849);}for(let _0x4f3849=0x0,_0x245252=_0x2c2c10['length'];_0x4f3849<_0x245252;_0x4f3849++){_0x642cc6+='%'+('00'+_0x2c2c10['charCodeAt'](_0x4f3849)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x642cc6);};a0_0x5abe['vlnlid']=_0xa55829,a0_0x5abe['FVMSNA']={},a0_0x5abe['UDWkLg']=!![];}const _0x5cc66f=_0x2f3610[0x0],_0x14c710=_0x193bd0+_0x5cc66f,_0xf0a3ff=a0_0x5abe['FVMSNA'][_0x14c710];return!_0xf0a3ff?(_0x5abe77=a0_0x5abe['vlnlid'](_0x5abe77),a0_0x5abe['FVMSNA'][_0x14c710]=_0x5abe77):_0x5abe77=_0xf0a3ff,_0x5abe77;}const a0_0xfadea8=a0_0x5abe;(function(_0x17fa4b,_0xd2823a){const _0x6b52fd=a0_0x5abe,_0x490b70=_0x17fa4b();while(!![]){try{const _0x32023d=parseInt(_0x6b52fd(0x1c1))/0x1+-parseInt(_0x6b52fd(0x1ce))/0x2*(parseInt(_0x6b52fd(0x1ca))/0x3)+-parseInt(_0x6b52fd(0x1c3))/0x4*(parseInt(_0x6b52fd(0x1cd))/0x5)+-parseInt(_0x6b52fd(0x1b6))/0x6*(-parseInt(_0x6b52fd(0x1c7))/0x7)+parseInt(_0x6b52fd(0x1c0))/0x8*(parseInt(_0x6b52fd(0x1bb))/0x9)+-parseInt(_0x6b52fd(0x1c8))/0xa+parseInt(_0x6b52fd(0x1b4))/0xb*(parseInt(_0x6b52fd(0x1b8))/0xc);if(_0x32023d===_0xd2823a)break;else _0x490b70['push'](_0x490b70['shift']());}catch(_0x116810){_0x490b70['push'](_0x490b70['shift']());}}}(a0_0x2f36,0x5392d));const redisClient=require(a0_0xfadea8(0x1bf)),{logger}=require(a0_0xfadea8(0x1cc));class RedisHelper{constructor(){const _0x442798=a0_0xfadea8;this[_0x442798(0x1d0)]=null,this[_0x442798(0x1c5)]=parseInt(process['env']['EXPORT_FILE_EXPIRY'],0xa)||0xe10;}get['prefix'](){const _0x53bced=a0_0xfadea8;if(!this['_prefix']){const _0x116a83=process['env']['RESTFORGE_PROJECT_NAME']||_0x53bced(0x1be);this['_prefix']='restforge:'+_0x116a83+':export:';}return this['_prefix'];}async[a0_0xfadea8(0x1b2)](_0x3c5f5f,_0x1e79c8){const _0x3196c2=a0_0xfadea8;try{const _0x361f6c=redisClient[_0x3196c2(0x1c4)](),_0x425287=''+this['prefix']+_0x3c5f5f;return await _0x361f6c['setex'](_0x425287,this['ttl'],JSON['stringify'](_0x1e79c8)),!![];}catch(_0x168f58){return logger[_0x3196c2(0x1bc)]({'event':_0x3196c2(0x1c6),'jobId':_0x3c5f5f,'error':_0x168f58[_0x3196c2(0x1ba)]},_0x3196c2(0x1b7)),![];}}async['getJob'](_0x1c5a8f){const _0x4aaef0=a0_0xfadea8,_0x23cd4f={'ddVXb':'redis_get_error','DEyiZ':'Failed\x20to\x20get\x20job\x20from\x20Redis'};try{const _0x13acd2=redisClient[_0x4aaef0(0x1c4)](),_0x4eaa1b=''+this['prefix']+_0x1c5a8f,_0x3393b8=await _0x13acd2[_0x4aaef0(0x1b9)](_0x4eaa1b);return _0x3393b8?JSON[_0x4aaef0(0x1c9)](_0x3393b8):null;}catch(_0xc82463){return logger['error']({'event':_0x23cd4f['ddVXb'],'jobId':_0x1c5a8f,'error':_0xc82463[_0x4aaef0(0x1ba)]},_0x23cd4f[_0x4aaef0(0x1b5)]),null;}}async['updateJob'](_0x1c1440,_0x4624a){const _0x115b17=a0_0xfadea8,_0x4c58c6=await this['getJob'](_0x1c1440);if(!_0x4c58c6)return![];const _0x18a341={..._0x4c58c6,..._0x4624a};return await this[_0x115b17(0x1b2)](_0x1c1440,_0x18a341);}async['deleteJob'](_0x278621){const _0xb6fb9=a0_0xfadea8;try{const _0x2a0be1=redisClient['getClient'](),_0x3a7af4=''+this['prefix']+_0x278621;return await _0x2a0be1[_0xb6fb9(0x1cb)](_0x3a7af4),!![];}catch(_0x3d994a){return logger['error']({'event':'redis_delete_error','jobId':_0x278621,'error':_0x3d994a[_0xb6fb9(0x1ba)]},_0xb6fb9(0x1cf)),![];}}async['getAllJobs'](){const _0x422d58=a0_0xfadea8,_0x330aac={'QufBO':_0x422d58(0x1bd)};try{const _0x211929=redisClient['getClient'](),_0xd004f1=await _0x211929['keys'](this[_0x422d58(0x1b3)]+'*'),_0x1c52cb=[];for(const _0x346678 of _0xd004f1){const _0xb7ae5c=await _0x211929['get'](_0x346678);_0xb7ae5c&&_0x1c52cb['push'](JSON[_0x422d58(0x1c9)](_0xb7ae5c));}return _0x1c52cb;}catch(_0x185362){return logger['error']({'event':_0x330aac['QufBO'],'error':_0x185362[_0x422d58(0x1ba)]},'Failed\x20to\x20get\x20all\x20jobs'),[];}}}function a0_0x2f36(){const _0xa32239=['mNzIBhHXEG','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW','x3bYzwzPEa','C2v0sM9I','ChjLzML4','nZmXodnAy296Cxu','rev5AvO','nduZmeHsvhHkuq','rMfPBgvKihrVihnLDcbQB2iGAw4GuMvKAxm','nJG0rKDiyw1W','z2v0','BwvZC2fNzq','mtmXngHxtgriBG','zxjYB3i','CMvKAxnFz2v0ywXSx2vYCM9Y','zgvMyxvSDa','lI9YzwrPCY1JBgLLBNq','odiYnfbrA1zOBq','nJy4otG1qwDmELvh','zxHWB3j0CW','nJi3nKj1we5Wza','z2v0q2XPzw50','DhrS','CMvKAxnFC2v0x2vYCM9Y','mZe0m0PYqw5svG','nJuWmtmYmezjtgvntG','CgfYC2u','mtm0nZm5m0PiBNvJCq','zgvS','lI9SB2DNzxi','mZa1BejsEvrI'];a0_0x2f36=function(){return _0xa32239;};return a0_0x2f36();}module[a0_0xfadea8(0x1c2)]=new RedisHelper();