@restforgejs/platform 5.1.21 → 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 (211) 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/introspect-mapper.js +20 -0
  47. package/generators/lib/templates/dashboard-catalog.js +1 -1
  48. package/generators/lib/templates/db-connection-env.js +1 -1
  49. package/generators/lib/templates/dbschema-catalog.js +1 -1
  50. package/generators/lib/templates/field-validation-catalog.js +1 -1
  51. package/generators/lib/templates/mysql-template.js +1 -1
  52. package/generators/lib/templates/oracle-template.js +1 -1
  53. package/generators/lib/templates/postgres-template.js +1 -1
  54. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  55. package/generators/lib/templates/sqlite-template.js +1 -1
  56. package/integrity-manifest.json +18 -18
  57. package/package.json +1 -1
  58. package/scripts/verify-integrity.js +1 -1
  59. package/server.js +1 -1
  60. package/src/components/handlers/adjust_handler.js +1 -1
  61. package/src/components/handlers/audit_handler.js +1 -1
  62. package/src/components/handlers/delete_handler.js +1 -1
  63. package/src/components/handlers/export_handler.js +1 -1
  64. package/src/components/handlers/import_handler.js +1 -1
  65. package/src/components/handlers/insert_handler.js +1 -1
  66. package/src/components/handlers/update_handler.js +1 -1
  67. package/src/components/handlers/upload_handler.js +1 -1
  68. package/src/components/handlers/workflow_handler.js +1 -1
  69. package/src/components/integrations/webhook.js +1 -1
  70. package/src/consumers/baseConsumer.js +1 -1
  71. package/src/consumers/declarativeMapper.js +1 -1
  72. package/src/consumers/handlers/apiHandler.js +1 -1
  73. package/src/consumers/handlers/consoleHandler.js +1 -1
  74. package/src/consumers/handlers/databaseHandler.js +1 -1
  75. package/src/consumers/handlers/index.js +1 -1
  76. package/src/consumers/handlers/kafkaHandler.js +1 -1
  77. package/src/consumers/index.js +1 -1
  78. package/src/consumers/messageTransformer.js +1 -1
  79. package/src/consumers/validator.js +1 -1
  80. package/src/core/db/dialect/base-dialect.js +1 -1
  81. package/src/core/db/dialect/index.js +1 -1
  82. package/src/core/db/dialect/mysql-dialect.js +1 -1
  83. package/src/core/db/dialect/oracle-dialect.js +1 -1
  84. package/src/core/db/dialect/postgres-dialect.js +1 -1
  85. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  86. package/src/core/db/flatten-helper.js +1 -1
  87. package/src/core/db/query-builder-error.js +1 -1
  88. package/src/core/db/query-builder.js +1 -1
  89. package/src/core/db/relation-helper.js +1 -1
  90. package/src/core/handlers/delete_handler.js +1 -1
  91. package/src/core/handlers/insert_handler.js +1 -1
  92. package/src/core/handlers/update_handler.js +1 -1
  93. package/src/core/models/base-model.js +1 -1
  94. package/src/core/utils/cache-manager.js +1 -1
  95. package/src/core/utils/component-engine.js +1 -1
  96. package/src/core/utils/context-builder.js +1 -1
  97. package/src/core/utils/datetime-formatter.js +1 -1
  98. package/src/core/utils/datetime-parser.js +1 -1
  99. package/src/core/utils/db.js +1 -1
  100. package/src/core/utils/logger.js +1 -1
  101. package/src/core/utils/payload-loader.js +1 -1
  102. package/src/core/utils/security-checks.js +1 -1
  103. package/src/middleware/body-options.js +1 -1
  104. package/src/middleware/cors.js +1 -1
  105. package/src/middleware/idempotency.js +1 -1
  106. package/src/middleware/rate-limiter.js +1 -1
  107. package/src/middleware/request-logger.js +1 -1
  108. package/src/middleware/security-headers.js +1 -1
  109. package/src/models/base-model-mysql.js +1 -1
  110. package/src/models/base-model-oracle.js +1 -1
  111. package/src/models/base-model-sqlite.js +1 -1
  112. package/src/models/base-model.js +1 -1
  113. package/src/pro/caching/redis-client.js +1 -1
  114. package/src/pro/caching/redis-helper.js +1 -1
  115. package/src/pro/consumers/baseConsumer.js +1 -1
  116. package/src/pro/consumers/declarativeMapper.js +1 -1
  117. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  118. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  119. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  120. package/src/pro/consumers/handlers/index.js +1 -1
  121. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  122. package/src/pro/consumers/index.js +1 -1
  123. package/src/pro/consumers/messageTransformer.js +1 -1
  124. package/src/pro/consumers/validator.js +1 -1
  125. package/src/pro/database/base-model-mysql.js +1 -1
  126. package/src/pro/database/base-model-oracle.js +1 -1
  127. package/src/pro/database/base-model-sqlite.js +1 -1
  128. package/src/pro/database/db-mysql.js +1 -1
  129. package/src/pro/database/db-oracle.js +1 -1
  130. package/src/pro/database/db-sqlite.js +1 -1
  131. package/src/pro/excel/excel-generator.js +1 -1
  132. package/src/pro/excel/excel-parser.js +1 -1
  133. package/src/pro/excel/export-service.js +1 -1
  134. package/src/pro/excel/export_handler.js +1 -1
  135. package/src/pro/excel/import-service.js +1 -1
  136. package/src/pro/excel/import-validator.js +1 -1
  137. package/src/pro/excel/import_handler.js +1 -1
  138. package/src/pro/excel/upsert-builder.js +1 -1
  139. package/src/pro/idgen/idgen-routes.js +1 -1
  140. package/src/pro/integrations/lookup-resolver.js +1 -1
  141. package/src/pro/integrations/upload-handler-v2.js +1 -1
  142. package/src/pro/integrations/upload-handler.js +1 -1
  143. package/src/pro/integrations/webhook.js +1 -1
  144. package/src/pro/locking/lock-routes.js +1 -1
  145. package/src/pro/locking/resource-lock-manager.js +1 -1
  146. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  147. package/src/pro/messaging/kafkaService.js +1 -1
  148. package/src/pro/messaging/messagehubService.js +1 -1
  149. package/src/pro/messaging/rabbitmqService.js +1 -1
  150. package/src/pro/scheduler/job-manager.js +1 -1
  151. package/src/pro/scheduler/job-routes.js +1 -1
  152. package/src/pro/scheduler/job-validator.js +1 -1
  153. package/src/pro/storage/base-storage-provider.js +1 -1
  154. package/src/pro/storage/file-metadata-helper.js +1 -1
  155. package/src/pro/storage/index.js +1 -1
  156. package/src/pro/storage/local-storage-provider.js +1 -1
  157. package/src/pro/storage/s3-storage-provider.js +1 -1
  158. package/src/pro/storage/upload-cleanup-job.js +1 -1
  159. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  160. package/src/pro/storage/upload-pending-tracker.js +1 -1
  161. package/src/pro/websocket/broadcast-helper.js +1 -1
  162. package/src/pro/websocket/index.js +1 -1
  163. package/src/pro/websocket/livesync-server.js +1 -1
  164. package/src/pro/websocket/ws-broadcaster.js +1 -1
  165. package/src/services/export-service.js +1 -1
  166. package/src/services/import-service.js +1 -1
  167. package/src/services/kafkaConsumerService.js +1 -1
  168. package/src/services/kafkaService.js +1 -1
  169. package/src/services/messagehubService.js +1 -1
  170. package/src/services/rabbitmqService.js +1 -1
  171. package/src/utils/cache-invalidation-registry.js +1 -1
  172. package/src/utils/cache-manager.js +1 -1
  173. package/src/utils/component-engine.js +1 -1
  174. package/src/utils/config-extractor.js +1 -1
  175. package/src/utils/consumerLogger.js +1 -1
  176. package/src/utils/context-builder.js +1 -1
  177. package/src/utils/dashboard-helpers.js +1 -1
  178. package/src/utils/dateHelper.js +1 -1
  179. package/src/utils/datetime-formatter.js +1 -1
  180. package/src/utils/datetime-parser.js +1 -1
  181. package/src/utils/db-bootstrap.js +1 -1
  182. package/src/utils/db-mysql.js +1 -1
  183. package/src/utils/db-oracle.js +1 -1
  184. package/src/utils/db-sqlite.js +1 -1
  185. package/src/utils/db.js +1 -1
  186. package/src/utils/demo-generator.js +1 -1
  187. package/src/utils/excel-generator.js +1 -1
  188. package/src/utils/excel-parser.js +1 -1
  189. package/src/utils/file-watcher.js +1 -1
  190. package/src/utils/id-generator.js +1 -1
  191. package/src/utils/idempotency-manager.js +1 -1
  192. package/src/utils/import-validator.js +1 -1
  193. package/src/utils/license-client.js +1 -1
  194. package/src/utils/lock-manager.js +1 -1
  195. package/src/utils/logger.js +1 -1
  196. package/src/utils/lookup-resolver.js +1 -1
  197. package/src/utils/payload-loader.js +1 -1
  198. package/src/utils/processor-response.js +1 -1
  199. package/src/utils/rabbitmq.js +1 -1
  200. package/src/utils/redis-client.js +1 -1
  201. package/src/utils/redis-helper.js +1 -1
  202. package/src/utils/request-scope.js +1 -1
  203. package/src/utils/security-checks.js +1 -1
  204. package/src/utils/service-resolver.js +1 -1
  205. package/src/utils/shutdown-coordinator.js +1 -1
  206. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  207. package/src/utils/sql-table-extractor.js +1 -1
  208. package/src/utils/trusted-keys.js +1 -1
  209. package/src/utils/upload-handler.js +1 -1
  210. package/src/utils/upsert-builder.js +1 -1
  211. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x4c3c88=a0_0x907d;function a0_0x12ad(){const _0x134748=['zxzHBa','nJzqDLr0t2q','D3jPDgvFBg9JA193ywL0Aw5N','x3jLDhj5q291BNq','BfziC3K','zxHWB3j0CW','x3jLDhj5rgvSyxK','Bg9JA19LEhrLBMrLza','ENnWCxm','Bg9JA19LEhrLBMrFzxjYB3i','BwvZC2fNzq','CMvHza','ntKWywD4Bfnm','Cg93','te9ds19esvnuuKLcvvrfrf9uveW','Bg9JA19JB25MAwDFAw5PDa','x3n0CMf0zwD5','uKvbrcbSB2nRigvYCM9Y','zgvMyxvSDfruta','v1jjveuGBg9JAYbYzwPLy3rLzcaTihjLy29YzcbIDxn5','ndi3BKjJuNjO','nJiWodrWu0vuzLC','CMy6Bg9JAZO','v1jjveuGBg9JAYbLCNjVCG','mJCWmdq5mNDABLbUAG','CMvHzf9SB2nRx2vYCM9Y','zw5HyMXLza','DKDpv0m','sgvyyLe','te9ds19esvnuuKLcvvrfrf9ftKfcteve','zxjYB3i','CMv0CNK','D3jPDgu','mNWZFdD8nhWXFdb8nxW2','AvHrCLK','zgvS','uKvbrcbSB2nRigfJCxvPCMvK','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','tg9JAYbuveWGzxH0zw5Kzwq','mtKZnZGZnxzLwvz4vW','CMvHzf9SB2nRx3rPBwvVDxq','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','D2fYBG','tLvSEM0','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','Bgnjrvq','x2LUAxrdB25MAwC','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','lI9SB2DNzxi','CKz1wge','AuLVB0S','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','D3jPDgvFBg9JA19YzwPLy3rLza','mtiZnZHOyLnsy1u','uKjcEfC','x2vUC3vYzuLUAxrPywXPEMvK','ChjLzML4','D3jPDgvFBg9JA19YzwXLyxnLza','ywnXDwLYzvjLywrmB2nR','x2rLzMf1BhruveW','mJGYotG2q1vXzg5e','z2v0q2XPzw50','mty0mtzItfDZsLu','oty1veDWvNrN','zgvJCG','rNDgqKe','tLD0Au8','CMvHzf9SB2nRx3jLBgvHC2vK','z2v0','CMvHzf9SB2nRx2fJCxvPCMvK','x3bYzwzPEa','x3DVCMTLCKLK','D29YA2vYswq','CMv0CNLdB3vUDa','AxnfBMfIBgvK','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','CuXkq04','v1jjveuGBg9JAYbYzwXLyxnLza','zgvIDwC','BM93','zxHnCxi','C3bSAxq','yNvPBgrmB2nRs2v5','C2XLzxa','x2LUAxrPywXPEMvK','vhvrv0K','D3jPDgvFBg9JA19LCNjVCG','mJa1mJm1thzjrfP4','uKvbrcbSB2nRihjLBgvHC2vK','z1DlzfG','CMv0CNLezwXHEq','zw52'];a0_0x12ad=function(){return _0x134748;};return a0_0x12ad();}(function(_0x367993,_0x527cd3){const _0x110ddf=a0_0x907d,_0x2e07f2=_0x367993();while(!![]){try{const _0x247fa3=parseInt(_0x110ddf(0x135))/0x1+parseInt(_0x110ddf(0xf2))/0x2*(-parseInt(_0x110ddf(0xde))/0x3)+-parseInt(_0x110ddf(0xf5))/0x4+-parseInt(_0x110ddf(0x11d))/0x5*(-parseInt(_0x110ddf(0x113))/0x6)+parseInt(_0x110ddf(0xf1))/0x7*(-parseInt(_0x110ddf(0x11c))/0x8)+-parseInt(_0x110ddf(0x104))/0x9+parseInt(_0x110ddf(0xe9))/0xa*(parseInt(_0x110ddf(0x11a))/0xb);if(_0x247fa3===_0x527cd3)break;else _0x2e07f2['push'](_0x2e07f2['shift']());}catch(_0x659aa5){_0x2e07f2['push'](_0x2e07f2['shift']());}}}(a0_0x12ad,0x67326));const redisClient=require('./redis-client'),{logger}=require(a0_0x4c3c88(0x10e)),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0x3fa95f=a0_0x4c3c88,_0x84d22e={'ZBaOD':_0x3fa95f(0xfe)},_0x1df159=_0x84d22e['ZBaOD'][_0x3fa95f(0x12f)]('|');let _0x2e05b6=0x0;while(!![]){switch(_0x1df159[_0x2e05b6++]){case'0':this['_strategy']=null;continue;case'1':this[_0x3fa95f(0xe3)]=null;continue;case'2':this[_0x3fa95f(0x124)]=null;continue;case'3':this['_enabled']=null;continue;case'4':this['_retryCount']=null;continue;case'5':this[_0x3fa95f(0x125)]=null;continue;case'6':this['_initialized']=![];continue;case'7':this[_0x3fa95f(0x119)]=null;continue;}break;}}[a0_0x4c3c88(0x10b)](){const _0xba00e1=a0_0x4c3c88,_0x147281={'OTzND':_0xba00e1(0xf3),'mLpHw':_0xba00e1(0xec),'hYNVX':function(_0x46a49b,_0x37c94e,_0x4f7bc2){return _0x46a49b(_0x37c94e,_0x4f7bc2);},'qLJCN':'retry','VctWG':function(_0x3446ce,_0x2cb58a,_0x384e95){return _0x3446ce(_0x2cb58a,_0x384e95);}},_0x3d985d='0|5|3|6|8|7|4|1|2'['split']('|');let _0x28277b=0x0;while(!![]){switch(_0x3d985d[_0x28277b++]){case'0':this[_0xba00e1(0x124)]=_0x147281['OTzND'];continue;case'1':this['_initialized']=!![];continue;case'2':logger['info']({'event':_0x147281['mLpHw'],'enabled':this['_enabled'],'strategy':this['_strategy'],'ttl':this['_defaultTTL'],'retryCount':this['_retryCount'],'retryDelay':this[_0xba00e1(0xe3)],'workerId':this['_workerId']},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this['_enabled']+',\x20strategy:\x20'+this['_strategy']);continue;case'3':this['_defaultTTL']=_0x147281['hYNVX'](parseInt,process[_0xba00e1(0x139)][_0xba00e1(0xeb)],0xa)||0xa;continue;case'4':this['_workerId']='worker-'+process['pid'];continue;case'5':this['_enabled']=process['env'][_0xba00e1(0xfa)]==='true';continue;case'6':this['_retryCount']=parseInt(process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3;continue;case'7':this[_0xba00e1(0xed)]=process[_0xba00e1(0x139)][_0xba00e1(0x129)]||_0x147281[_0xba00e1(0x12a)];continue;case'8':this['_retryDelay']=_0x147281['VctWG'](parseInt,process['env'][_0xba00e1(0x10c)],0xa)||0x64;continue;}break;}}[a0_0x4c3c88(0x115)](){const _0x5f521d=a0_0x4c3c88;!this[_0x5f521d(0x132)]&&this[_0x5f521d(0x10b)]();}get[a0_0x4c3c88(0x116)](){const _0x543450=a0_0x4c3c88;return this['_ensureInitialized'](),this[_0x543450(0x124)];}get[a0_0x4c3c88(0xf7)](){const _0x77b1eb=a0_0x4c3c88;return this[_0x77b1eb(0x115)](),this['_enabled'];}get[a0_0x4c3c88(0xef)](){const _0x4b1049=a0_0x4c3c88;return this[_0x4b1049(0x115)](),this['_defaultTTL'];}get[a0_0x4c3c88(0x127)](){const _0x20e0c7=a0_0x4c3c88;return this[_0x20e0c7(0x115)](),this[_0x20e0c7(0xe0)];}get[a0_0x4c3c88(0x138)](){const _0xd4c410=a0_0x4c3c88;return this['_ensureInitialized'](),this[_0xd4c410(0xe3)];}get['strategy'](){const _0x2d7c02=a0_0x4c3c88;return this[_0x2d7c02(0x115)](),this[_0x2d7c02(0xed)];}get[a0_0x4c3c88(0x126)](){const _0xdb343c=a0_0x4c3c88;return this[_0xdb343c(0x115)](),this['_workerId'];}[a0_0x4c3c88(0x130)](_0x3fe421){const _0x3b2768=a0_0x4c3c88,{module:_0xf3533,endpoint:_0xb2b8dc,lockType:_0x33a925,recordId:_0x31dad2}=_0x3fe421;if(_0x31dad2)return''+this[_0x3b2768(0x116)]+_0xf3533+':'+_0xb2b8dc+':'+_0x31dad2+':'+_0x33a925;return''+this['prefix']+_0xf3533+':'+_0xb2b8dc+':'+_0x33a925;}['generateLockValue'](){const _0x45c5b8=a0_0x4c3c88;return this['workerId']+':'+uuidv4()+':'+Date[_0x45c5b8(0x12d)]();}async[a0_0x4c3c88(0x118)](_0x596f72){const _0x21e8f7=a0_0x4c3c88,_0x483be0={'NWtiO':_0x21e8f7(0xfd),'IiNRd':_0x21e8f7(0x101),'UWxGx':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release','exMqr':'READ\x20lock\x20acquire\x20timeout','NUlzm':_0x21e8f7(0xee)};if(!this[_0x21e8f7(0xf7)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x504ff6=this[_0x21e8f7(0x130)]({..._0x596f72,'lockType':_0x483be0[_0x21e8f7(0x120)]}),_0x394b9a=this['buildLockKey']({..._0x596f72,'lockType':'read'}),_0x2685b3=this['generateLockValue']();try{const _0xb8d73e=redisClient[_0x21e8f7(0x11b)]();for(let _0x14509e=0x0;_0x14509e<this[_0x21e8f7(0x127)];_0x14509e++){const _0x30bbae=await _0xb8d73e['get'](_0x504ff6);if(!_0x30bbae){await _0xb8d73e['incr'](_0x394b9a),await _0xb8d73e['expire'](_0x394b9a,this['defaultTTL']);const _0x435613=_0x394b9a+':'+_0x2685b3;return await _0xb8d73e['setex'](_0x435613,this['defaultTTL'],_0x2685b3),logger['debug']({'event':_0x21e8f7(0x123),'key':_0x394b9a,'value':_0x2685b3},_0x483be0['IiNRd']),{'success':!![],'lockValue':_0x2685b3,'lockKey':_0x435613};}logger['debug']({'event':'read_lock_waiting','writeKey':_0x504ff6,'attempt':_0x14509e},_0x483be0['UWxGx']),await this['sleep'](this[_0x21e8f7(0x138)]*Math['pow'](0x2,_0x14509e));}return logger['warn']({'event':_0x21e8f7(0x105),'key':_0x394b9a},_0x483be0[_0x21e8f7(0x12e)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x1f2f8d){return logger['error']({'event':_0x21e8f7(0xf6),'error':_0x1f2f8d['message']},_0x483be0[_0x21e8f7(0x108)]),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x3f10a1){const _0xe3f191=a0_0x4c3c88,_0x2d846d={'FwFBA':_0xe3f191(0xfd),'gWKdX':_0xe3f191(0xe8),'SLWSR':'reject','EIQiy':_0xe3f191(0x10d),'HeXbQ':_0xe3f191(0x112),'zOiQH':function(_0x345250,_0x15b5d9){return _0x345250(_0x15b5d9);},'rFuXa':function(_0x2a3c03,_0x384ef6){return _0x2a3c03===_0x384ef6;},'mviBM':'write_lock_acquired','dnwFs':_0xe3f191(0xfc),'lQBrU':_0xe3f191(0xdf),'XWBBi':function(_0x28c195,_0x8469dd){return _0x28c195*_0x8469dd;},'iIooK':'write_lock_timeout','emQYY':'WRITE\x20lock\x20acquire\x20timeout','vGOWC':_0xe3f191(0xf4)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x476cc3=this['buildLockKey']({..._0x3f10a1,'lockType':_0x2d846d[_0xe3f191(0x11f)]}),_0x384a64=this['buildLockKey']({..._0x3f10a1,'lockType':_0x2d846d[_0xe3f191(0x137)]}),_0x1b22cb=this['generateLockValue']();try{const _0x41383f=redisClient[_0xe3f191(0x11b)]();if(this['strategy']===_0x2d846d['SLWSR']){const _0x2fb38e=await _0x41383f['set'](_0x476cc3,_0x1b22cb,'EX',this['defaultTTL'],'NX');if(_0x2fb38e==='OK')return logger[_0xe3f191(0x12c)]({'event':'write_lock_acquired','key':_0x476cc3,'value':_0x1b22cb,'strategy':'reject'},_0x2d846d['EIQiy']),{'success':!![],'lockValue':_0x1b22cb,'lockKey':_0x476cc3};return logger[_0xe3f191(0x12c)]({'event':_0x2d846d[_0xe3f191(0xf9)],'key':_0x476cc3},_0xe3f191(0xf0)),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x232b0b=0x0;_0x232b0b<this[_0xe3f191(0x127)];_0x232b0b++){const [_0x346e60,_0x34d3c2]=await Promise['all']([_0x41383f[_0xe3f191(0x122)](_0x384a64),_0x41383f[_0xe3f191(0x122)](_0x476cc3)]);if(!_0x34d3c2&&(!_0x346e60||_0x2d846d['zOiQH'](parseInt,_0x346e60)===0x0)){const _0x523736=await _0x41383f['set'](_0x476cc3,_0x1b22cb,'EX',this[_0xe3f191(0xef)],'NX');if(_0x2d846d[_0xe3f191(0x10f)](_0x523736,'OK'))return logger['debug']({'event':_0x2d846d['mviBM'],'key':_0x476cc3,'value':_0x1b22cb,'strategy':_0x2d846d['dnwFs']},_0xe3f191(0x111)),{'success':!![],'lockValue':_0x1b22cb,'lockKey':_0x476cc3};}logger[_0xe3f191(0x12c)]({'event':_0x2d846d['lQBrU'],'writeKey':_0x476cc3,'readCount':_0x346e60,'attempt':_0x232b0b},_0xe3f191(0x109)),await this[_0xe3f191(0x131)](_0x2d846d['XWBBi'](this[_0xe3f191(0x138)],Math[_0xe3f191(0xea)](0x2,_0x232b0b)));}return logger[_0xe3f191(0x107)]({'event':_0x2d846d[_0xe3f191(0x110)],'key':_0x476cc3},_0x2d846d['emQYY']),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x3a0d4a){return logger[_0xe3f191(0xfb)]({'event':_0xe3f191(0x134),'error':_0x3a0d4a[_0xe3f191(0xe7)]},_0x2d846d[_0xe3f191(0xf8)]),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x4eff9e,_0x5d86cb){const _0x10384f=a0_0x4c3c88,_0x417dcc={'UinST':_0x10384f(0x121),'YbFBa':_0x10384f(0x136),'uuCqL':function(_0x7832e1,_0x256162){return _0x7832e1===_0x256162;},'RBBxW':_0x10384f(0x117),'VFfCu':'Cannot\x20release\x20lock\x20-\x20not\x20owner','TuQWI':'lock_release_error','lcIET':'Lock\x20release\x20error'};if(!this['enabled']||!_0x4eff9e)return!![];try{const _0x183d4a=redisClient['getClient']();if(_0x4eff9e['includes'](':read:')){await _0x183d4a[_0x10384f(0x100)](_0x4eff9e);const _0x172bef=_0x4eff9e['substring'](0x0,_0x4eff9e['lastIndexOf'](':')),_0x11bca8=await _0x183d4a[_0x10384f(0x122)](_0x172bef);return _0x11bca8&&parseInt(_0x11bca8)>0x0&&await _0x183d4a[_0x10384f(0x11e)](_0x172bef),logger['debug']({'event':_0x417dcc['UinST'],'key':_0x4eff9e},_0x417dcc['YbFBa']),!![];}const _0x62907=_0x10384f(0x102),_0x42a46c=await _0x183d4a['eval'](_0x62907,0x1,_0x4eff9e,_0x5d86cb);if(_0x417dcc['uuCqL'](_0x42a46c,0x1))return logger[_0x10384f(0x12c)]({'event':_0x417dcc[_0x10384f(0x114)],'key':_0x4eff9e},_0x10384f(0x12b)),!![];return logger[_0x10384f(0x107)]({'event':_0x10384f(0x106),'key':_0x4eff9e},_0x417dcc['VFfCu']),![];}catch(_0x471b3c){return logger[_0x10384f(0xfb)]({'event':_0x417dcc[_0x10384f(0x133)],'key':_0x4eff9e,'error':_0x471b3c['message']},_0x417dcc[_0x10384f(0x10a)]),![];}}async['extendLock'](_0x32139f,_0x550b3f,_0x32986c=null){const _0x527e3f=a0_0x4c3c88,_0x4b589d={'zspqs':_0x527e3f(0xe6)};if(!this[_0x527e3f(0xf7)]||!_0x32139f)return!![];try{const _0x117249=redisClient['getClient'](),_0x51cd9e='\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',_0x18bc7e=await _0x117249[_0x527e3f(0x13a)](_0x51cd9e,0x1,_0x32139f,_0x550b3f,_0x32986c||this['defaultTTL']);if(_0x18bc7e===0x1)return logger[_0x527e3f(0x12c)]({'event':_0x527e3f(0xe4),'key':_0x32139f,'ttl':_0x32986c||this[_0x527e3f(0xef)]},_0x527e3f(0x103)),!![];return![];}catch(_0x9a68b2){return logger['error']({'event':_0x4b589d[_0x527e3f(0xe5)],'key':_0x32139f,'error':_0x9a68b2[_0x527e3f(0xe7)]},'Lock\x20extend\x20error'),![];}}[a0_0x4c3c88(0x128)](){const _0x379772=a0_0x4c3c88;return this[_0x379772(0xf7)];}['sleep'](_0x2c399){return new Promise(_0x31050d=>setTimeout(_0x31050d,_0x2c399));}async['getLockInfo'](_0x1cf733){const _0x2e3655=a0_0x4c3c88,_0x3a1bf3={'iXQrY':_0x2e3655(0xfd),'lVHsy':'read'};if(!this['enabled'])return{'enabled':![]};try{const _0x739569=redisClient[_0x2e3655(0x11b)](),_0x53e19a=this[_0x2e3655(0x130)]({..._0x1cf733,'lockType':_0x3a1bf3[_0x2e3655(0xff)]}),_0x55ba89=this[_0x2e3655(0x130)]({..._0x1cf733,'lockType':_0x3a1bf3[_0x2e3655(0xe1)]}),[_0x5c7992,_0x57d089]=await Promise['all']([_0x739569[_0x2e3655(0x122)](_0x53e19a),_0x739569[_0x2e3655(0x122)](_0x55ba89)]);return{'enabled':!![],'writeLock':_0x5c7992||null,'readCount':parseInt(_0x57d089)||0x0,'writeKey':_0x53e19a,'readKey':_0x55ba89};}catch(_0x24caa9){return{'enabled':!![],'error':_0x24caa9['message']};}}}function a0_0x907d(_0x4fe94f,_0x3f003b){_0x4fe94f=_0x4fe94f-0xde;const _0x12adf9=a0_0x12ad();let _0x907dbc=_0x12adf9[_0x4fe94f];if(a0_0x907d['HGfNaL']===undefined){var _0x488dcb=function(_0x557a1a){const _0x445cd5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x39fc8a='',_0x20afaf='';for(let _0x206af9=0x0,_0x2772d8,_0x3fef2c,_0x1a4fb4=0x0;_0x3fef2c=_0x557a1a['charAt'](_0x1a4fb4++);~_0x3fef2c&&(_0x2772d8=_0x206af9%0x4?_0x2772d8*0x40+_0x3fef2c:_0x3fef2c,_0x206af9++%0x4)?_0x39fc8a+=String['fromCharCode'](0xff&_0x2772d8>>(-0x2*_0x206af9&0x6)):0x0){_0x3fef2c=_0x445cd5['indexOf'](_0x3fef2c);}for(let _0x11f940=0x0,_0x510e20=_0x39fc8a['length'];_0x11f940<_0x510e20;_0x11f940++){_0x20afaf+='%'+('00'+_0x39fc8a['charCodeAt'](_0x11f940)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x20afaf);};a0_0x907d['dwPYKw']=_0x488dcb,a0_0x907d['xXcvXs']={},a0_0x907d['HGfNaL']=!![];}const _0x3f8345=_0x12adf9[0x0],_0x11bacc=_0x4fe94f+_0x3f8345,_0x3b52e7=a0_0x907d['xXcvXs'][_0x11bacc];return!_0x3b52e7?(_0x907dbc=a0_0x907d['dwPYKw'](_0x907dbc),a0_0x907d['xXcvXs'][_0x11bacc]=_0x907dbc):_0x907dbc=_0x3b52e7,_0x907dbc;}module[a0_0x4c3c88(0xe2)]=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_0x8abba4=a0_0x58aa;(function(_0x15d31c,_0x2b4465){const _0x22b2a6=a0_0x58aa,_0x52cc29=_0x15d31c();while(!![]){try{const _0x28e00d=parseInt(_0x22b2a6(0xce))/0x1*(parseInt(_0x22b2a6(0xc7))/0x2)+-parseInt(_0x22b2a6(0x113))/0x3+-parseInt(_0x22b2a6(0x127))/0x4*(-parseInt(_0x22b2a6(0xfa))/0x5)+parseInt(_0x22b2a6(0x11b))/0x6*(parseInt(_0x22b2a6(0xe9))/0x7)+-parseInt(_0x22b2a6(0x11f))/0x8+parseInt(_0x22b2a6(0xbf))/0x9+-parseInt(_0x22b2a6(0xe4))/0xa;if(_0x28e00d===_0x2b4465)break;else _0x52cc29['push'](_0x52cc29['shift']());}catch(_0x15b1e9){_0x52cc29['push'](_0x52cc29['shift']());}}}(a0_0x10c8,0xb516a));const pino=require('pino'),fs=require('fs'),path=require('path');let logToFile=![],logDir=a0_0x8abba4(0x14d),serviceName=a0_0x8abba4(0xa3),sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':a0_0x8abba4(0xd9),'singleLine':![],'levelFirst':!![],'messageFormat':a0_0x8abba4(0x9a),'customColors':a0_0x8abba4(0x154),'hideObject':!![]},isDevelopment=process[a0_0x8abba4(0xc4)]['NODE_ENV']!==a0_0x8abba4(0x133),logLevel=process[a0_0x8abba4(0xc4)]['LOG_LEVEL']||'info';let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0x8abba4(0x112),'options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process[a0_0x8abba4(0xc4)][a0_0x8abba4(0x114)]||a0_0x8abba4(0xc2),'env':process['env']['NODE_ENV']||'development'},'timestamp':pino['stdTimeFunctions']['isoTime'],'redact':{'paths':[a0_0x8abba4(0xcd),a0_0x8abba4(0x141),a0_0x8abba4(0x10b),'token',a0_0x8abba4(0xbc),'DB_PASSWORD',a0_0x8abba4(0x97)],'censor':'[REDACTED]'},'serializers':{'req':_0x1cfdcf=>({'id':_0x1cfdcf['id'],'method':_0x1cfdcf['method'],'url':_0x1cfdcf[a0_0x8abba4(0x10e)],'path':_0x1cfdcf['path'],'remoteAddress':_0x1cfdcf['ip']||_0x1cfdcf['connection']?.['remoteAddress']}),'res':_0x3ea25f=>({'statusCode':_0x3ea25f[a0_0x8abba4(0x11a)],'headers':_0x3ea25f['getHeaders']?.()}),'err':pino[a0_0x8abba4(0xf3)][a0_0x8abba4(0x136)]}});function a0_0x58aa(_0x5a2355,_0x2c1860){_0x5a2355=_0x5a2355-0x97;const _0x10c82e=a0_0x10c8();let _0x58aa57=_0x10c82e[_0x5a2355];if(a0_0x58aa['tJKLmI']===undefined){var _0x1f3da0=function(_0x20787e){const _0x32f4b4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1df2f9='',_0xc41d7a='';for(let _0x1f27dd=0x0,_0x1b9d78,_0x227a83,_0x169452=0x0;_0x227a83=_0x20787e['charAt'](_0x169452++);~_0x227a83&&(_0x1b9d78=_0x1f27dd%0x4?_0x1b9d78*0x40+_0x227a83:_0x227a83,_0x1f27dd++%0x4)?_0x1df2f9+=String['fromCharCode'](0xff&_0x1b9d78>>(-0x2*_0x1f27dd&0x6)):0x0){_0x227a83=_0x32f4b4['indexOf'](_0x227a83);}for(let _0x2b0a23=0x0,_0x13cb2b=_0x1df2f9['length'];_0x2b0a23<_0x13cb2b;_0x2b0a23++){_0xc41d7a+='%'+('00'+_0x1df2f9['charCodeAt'](_0x2b0a23)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc41d7a);};a0_0x58aa['nCBxQV']=_0x1f3da0,a0_0x58aa['qFZgOu']={},a0_0x58aa['tJKLmI']=!![];}const _0x43f1e8=_0x10c82e[0x0],_0x19f92f=_0x5a2355+_0x43f1e8,_0xd9dbb1=a0_0x58aa['qFZgOu'][_0x19f92f];return!_0xd9dbb1?(_0x58aa57=a0_0x58aa['nCBxQV'](_0x58aa57),a0_0x58aa['qFZgOu'][_0x19f92f]=_0x58aa57):_0x58aa57=_0xd9dbb1,_0x58aa57;}function initFileLogging(){const _0xcbb630=a0_0x8abba4,_0x11fec4={'VJHJZ':_0xcbb630(0x108),'eHsPj':function(_0xc58c34,_0x142287){return _0xc58c34===_0x142287;},'QOXsz':'debug','CPHUU':function(_0x57f77f,_0x24a6a6){return _0x57f77f!==_0x24a6a6;},'ezBRu':function(_0x25d441,_0x1794e8){return _0x25d441(_0x1794e8);},'UMpzp':'error.log','Hwidx':'app.log'};if(fileLoggingInitialized)return;logToFile=process[_0xcbb630(0xc4)]['LOG_TO_FILE']===_0xcbb630(0xf9);const _0x1a9730=process[_0xcbb630(0xc4)]['RESTFORGE_PROJECT_NAME']||_0x11fec4[_0xcbb630(0xd3)];logDir=process[_0xcbb630(0xc4)]['LOG_DIR']||'./logs/'+_0x1a9730,serviceName=process['env'][_0xcbb630(0xfe)]||_0xcbb630(0xa3),sqlLogEnabled=_0x11fec4['eHsPj'](process[_0xcbb630(0xc4)]['SQL_LOG_ENABLED'],'true'),sqlLogLevel=process[_0xcbb630(0xc4)]['SQL_LOG_LEVEL']||_0x11fec4[_0xcbb630(0x13b)],sqlLogParams=_0x11fec4[_0xcbb630(0xa5)](process['env'][_0xcbb630(0xea)],_0xcbb630(0x145)),sqlLogSlowThreshold=_0x11fec4[_0xcbb630(0xda)](parseInt,process[_0xcbb630(0xc4)][_0xcbb630(0x104)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x43dd62=path['resolve'](process['cwd'](),logDir);try{!fs[_0xcbb630(0x143)](_0x43dd62)&&fs[_0xcbb630(0xba)](_0x43dd62,{'recursive':!![]});}catch(_0x357cfe){console[_0xcbb630(0x123)]('Failed\x20to\x20create\x20log\x20directory\x20'+_0x43dd62+':',_0x357cfe[_0xcbb630(0x135)]),fileLoggingInitialized=!![];return;}const _0x4237bc=path['join'](_0x43dd62,_0xcbb630(0xfb)),_0x2b36b7=path['join'](_0x43dd62,_0x11fec4[_0xcbb630(0x99)]);try{appLogStream=fs[_0xcbb630(0xc1)](_0x4237bc,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x2b36b7,{'flags':'a'}),fileLoggingInitialized=!![];const _0x395023={'event':_0xcbb630(0x10d),'logDir':_0x43dd62,'files':[_0x11fec4[_0xcbb630(0x149)],_0x11fec4[_0xcbb630(0x99)]]},_0x1075d5=_0xcbb630(0x14c)+_0x43dd62;logger[_0xcbb630(0xc3)](_0x395023,_0x1075d5),writeToFileLog({..._0x395023,'level':'info','msg':_0x1075d5,'time':new Date()['toISOString']()},'info');}catch(_0x480bfb){console['error']('Failed\x20to\x20create\x20log\x20streams:',_0x480bfb[_0xcbb630(0x135)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x2a693d,_0x160f76){const _0x362530=a0_0x8abba4,_0xddf6c4={'xhPxf':function(_0x16817e,_0x3ff7a2){return _0x16817e||_0x3ff7a2;},'fMkBG':function(_0x557e0a,_0xcbe7a5){return _0x557e0a===_0xcbe7a5;},'diEDa':function(_0xc42fb2,_0x44942c){return _0xc42fb2===_0x44942c;}};if(_0xddf6c4['xhPxf'](!logToFile,!appLogStream))return;const _0x4f69a1={'service':serviceName,..._0x2a693d},_0x16a3d7=JSON['stringify'](_0x4f69a1)+'\x0a';appLogStream['write'](_0x16a3d7),(_0xddf6c4[_0x362530(0xf4)](_0x160f76,_0x362530(0x123))||_0xddf6c4['diEDa'](_0x160f76,_0x362530(0xc8)))&&(errorLogStream&&errorLogStream[_0x362530(0xa4)](_0x16a3d7));}function a0_0x10c8(){const _0x1111cb=['zgjFCxvLCNK','Dhj1zq','mJmWmtvguwL6u1q','yxbWlMXVzW','CgfZC3DK','w1jfrefdveveoMHHC2HD','u0vsvKLdrv9oqu1f','u25uEwq','zhvYyxrPB25nCW','u1rbuLqGvfjbtLnbq1rjt04','w09lxsbqCM9Qzwn0igXVywrLzdOG','su5trvju','u1fmx0Xpr19tte9xx1riuKvtse9mra','sfLsDxK','CxLjuuK','B3jPz2LUywXvCMW','zgvMyxvSDa','CxvLCNK','CwPhrvq','CgfZC3DVCMq','A0nbtMS','zMLSzv9SB2DNAw5Nx2vUywjSzwq','DxjS','Bwf4','yM9KEq','ChjVAMvJDf9SB2fKzwq','CgLUBY1WCMv0DhK','mJC0mtu1owzUC0ritq','qvbqx1zfuLnjt04','C29Tzq','B3rW','ywnJzxnZx3rVA2vU','ChDK','BxmP','C3rHDhvZq29Kzq','mZi3odCXoeftz09uqG','qKvnCgi','yxbPx2TLEq','D2fYBMLUzW','mta2odu4ndbvEuPHq2K','u0vmrunu','Cg9YDa','rNDbzNa','zxjYB3i','Aw5JBhvKzxm','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','yxbPA2v5','nJa4rKXQAg5Z','iokvKqRILzeGienVBMzPzYaGicaGidOG','DxnLCI1Hz2vUDa','zgf0ywjHC2vFy29UzMLN','zw5KCg9PBNrFCMvNAxn0zxjLza','Cgf0Aa','C2vYDMvYx3n0yxj0Aw5N','icbjBMzVoIaGia','Dg9gAxHLza','vMnwD3m','Dg9ju09tDhjPBMC','C3rYAw5N','ChjVzhvJDgLVBG','C3rHy2S','BwvZC2fNzq','zxjY','tK9uiefdveLwrq','Dg9vChbLCKnHC2u','qKvhsu4','C2vJCMv0','uu9yC3O','iokvKqRILzeGifbYB2PLy3qGicaGidOG','ChjTB1K','w1jfrefdvevexq','EKXUzxy','vu5ltK9xtG','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','t3rnAwm','zxHPC3rZu3LUyW','DhjPBq','zMfSC2u','CgfKrw5K','CufkvgO','Dxb0Aw1L','shDPzhG','Bwf0y2G','reDcEvm','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','lI9SB2DZ','yK1Ov0y','AgvHzgvYCW','sfruuca','CgLU','yLjPAMW','C3rHCNrZv2L0Aa','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','Dg9mB3DLCKnHC2u','whvoCu4','yMfZzvvYBa','sLDux1nfq1jfva','BgvUz3rO','vu1WENa','E21Zz30','Evj4vxK','Cg9ZDgDYzxnXBa','CgLK','wu90q3O','rKTesxq','qNjHvfK','zw52AxjVBM1LBNq','r1jVEeK','CMvZDgzVCMDL','D3jPDgu','q1bivvu','vujXDLK','sNjkveO','icdIHPiG','EwP1uue','y3jLzgL0y2fYza','Bwv0Ag9K','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','BwfW','wgDitwO','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','Ahbez2y','AKPjrgq','BMfTzq','sxPVCvq','C3bSAxq','D2fYBG','Dfr1Dvm','Dw5Oyw5KBgvKuMvQzwn0Aw9U','qunusvzf','zMf0ywXFzxjYB3i','BwTKAxjtEw5J','DhLWzq','yxbPs2v5','y3jLzgvUDgLHBhm','shLdsMu','nJa2nty0v0ryuNLf','u2vYDMvYihn0yxj0Aw5NoIa','y3jLyxrLv3jPDgvtDhjLyw0','ms4WlJu','Aw5MBW','zw52','ChjPDMf0zwTLEq','C3zlvee','odiXodbps2HlvNC','zMf0ywW','revmrvrf','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','DxnLCG','Ahj0Aw1L','CMvXlMHLywrLCNmUyxv0Ag9YAxPHDgLVBG','mZjUyKfQC2q','CM93C0fMzMvJDgvK','zgvIDwC','zNzZA0W','Dw5JyxvNAhrfEgnLChrPB24','vKPisLO','rermx0fmvevs','Dg9Rzw4','q1jjveLdquW','C3vIC3rYAw5N','CMvTB3rLqwrKCMvZCW','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','zxPcuNu','Bg9N','C2vYDMLJzuLUzM8','rgf0ywjHC2u6ia','wg9dqMu','uhjVy2vZCYbxyxjUAw5NoIa','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','tI9b','icbvuKW6icaGia','rwn6rfC','mtGZnte3mgzfvfbYEq','D1nSyu8','uK9mtejbq0S','z3nmvMm','iokvKqRILzeGiefqssblzxKGicaGidOG','mtrhuuz1BLC','u1fmx0Xpr19qqvjbtvm','q09ntuLu','whHms3C','DgvZDa','rxjYB3i','CMvWBgfJzq','zxHPDa','Ahr0Cf9LCNjVCG','rxbYA3y','C3rKu2vYAwfSAxPLCNm','zK1RqKC','vhjHBNnHy3rPB24G','icbizwfSDgG6ia','CMvWzwf0'];a0_0x10c8=function(){return _0x1111cb;};return a0_0x10c8();}const createRequestLogger=(_0x3fdf44={})=>{return logger['child'](_0x3fdf44);},logServerStart=_0x11adbe=>{const _0x31e17b=a0_0x8abba4,_0x28f258={'pZlSB':_0x31e17b(0xca),'Eprkv':function(_0x378cbd,_0x1d61a4){return _0x378cbd/_0x1d61a4;},'zLnev':function(_0x2ded5a,_0x335877){return _0x2ded5a-_0x335877;},'bfQLb':'Node.js','xaGpw':_0x31e17b(0xe1),'IzoqT':function(_0x28c4b6,_0x47ca6d){return _0x28c4b6(_0x47ca6d);},'XuNqN':_0x31e17b(0xb8),'lOOJp':_0x31e17b(0x137),'IUvqd':_0x31e17b(0xc3)},_0x4105f9=_0x28f258['pZlSB'],_0x390d1c=Math[_0x31e17b(0x10f)](0x0,0x37-_0x4105f9[_0x31e17b(0x98)]),_0x1fc2e1=Math['floor'](_0x28f258[_0x31e17b(0xf2)](_0x390d1c,0x2)),_0x7d9cc2=_0x28f258[_0x31e17b(0x13f)](_0x390d1c,_0x1fc2e1),_0x3c1517='║'+'\x20'[_0x31e17b(0xf7)](_0x1fc2e1)+_0x4105f9+'\x20'['repeat'](_0x7d9cc2)+'║',_0x1ce3a7=_0x31e17b(0xe0)+_0x3c1517+_0x31e17b(0xaf)+(_0x11adbe[_0x31e17b(0xa1)]||_0x28f258['bfQLb'])[_0x31e17b(0x146)](0x26)+_0x31e17b(0x13c)+(_0x11adbe['project']||_0x28f258['xaGpw'])[_0x31e17b(0x146)](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+_0x28f258[_0x31e17b(0xb3)](String,_0x11adbe['port']||0xbb8)[_0x31e17b(0x146)](0x26)+_0x31e17b(0x128)+(_0x11adbe['configFile']||'Default')['padEnd'](0x26)+_0x31e17b(0xe8)+(_0x11adbe['apiKey']?_0x28f258[_0x31e17b(0x156)]:_0x28f258['lOOJp'])['padEnd'](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x31e17b(0xdb)](_0x1ce3a7);const _0x20a124={'event':_0x31e17b(0x12d),'project':_0x11adbe['project'],'port':_0x11adbe['port'],'config':_0x11adbe['configFile'],'apiKeyEnabled':!!_0x11adbe['apiKey']};logger[_0x31e17b(0xc3)](_0x20a124),writeToFileLog({..._0x20a124,'level':_0x28f258['IUvqd'],'msg':_0x31e17b(0xc0)+_0x11adbe['project']+'\x20on\x20port\x20'+_0x11adbe[_0x31e17b(0x121)],'time':new Date()['toISOString']()},'info');},logServerReady=_0x138c87=>{const _0x1a1cdc=a0_0x8abba4,_0x44d56f={'QHrDS':'server_ready','wSlaO':'info'},_0x259c1e={'event':_0x44d56f['QHrDS'],'port':_0x138c87['port'],'module':_0x138c87['module'],'healthCheck':_0x138c87['healthCheck'],'serviceInfo':_0x138c87['serviceInfo'],'baseUrl':_0x138c87[_0x1a1cdc(0x157)]},_0x2b23b4=_0x1a1cdc(0x125)+_0x138c87[_0x1a1cdc(0x121)];logger['info'](_0x259c1e,_0x2b23b4),writeToFileLog({..._0x259c1e,'level':_0x44d56f['wSlaO'],'msg':_0x2b23b4,'time':new Date()[_0x1a1cdc(0x131)]()},_0x44d56f[_0x1a1cdc(0xe5)]),_0x138c87['healthCheck']&&logger[_0x1a1cdc(0xc3)](_0x1a1cdc(0xf6)+_0x138c87['healthCheck']),_0x138c87['serviceInfo']&&logger['info'](_0x1a1cdc(0x12e)+_0x138c87[_0x1a1cdc(0xdc)]),_0x138c87[_0x1a1cdc(0x157)]&&logger['info'](_0x1a1cdc(0xe2)+_0x138c87[_0x1a1cdc(0x157)]);},logProjectLoaded=(_0x4213cc,_0x228a0b)=>{const _0x289053=a0_0x8abba4,_0x106d66={'JrJTJ':_0x289053(0x111),'itbli':'info'},_0x5b2ed3={'event':_0x106d66[_0x289053(0xa7)],'project':_0x4213cc,'path':_0x228a0b},_0x57e13a=_0x289053(0x102)+_0x4213cc;logger[_0x289053(0xc3)](_0x5b2ed3,_0x57e13a),writeToFileLog({..._0x5b2ed3,'level':'info','msg':_0x57e13a,'time':new Date()['toISOString']()},_0x106d66['itbli']);},logEndpointRegistered=(_0x42e9ea,_0x2bbbe6)=>{const _0x15d64c=a0_0x8abba4,_0x1f1492={'FKDIt':function(_0xa8d7a2,_0x3493df,_0x2bd0b9){return _0xa8d7a2(_0x3493df,_0x2bd0b9);},'BEMpb':'debug'},_0x58a92c={'event':_0x15d64c(0x12b),'endpoint':_0x42e9ea,'route':_0x2bbbe6},_0x1b440b=_0x15d64c(0xa8)+_0x42e9ea+':\x20'+_0x2bbbe6;logger['debug'](_0x58a92c,_0x1b440b),_0x1f1492[_0x15d64c(0x9f)](writeToFileLog,{..._0x58a92c,'level':_0x1f1492[_0x15d64c(0x11c)],'msg':_0x1b440b,'time':new Date()[_0x15d64c(0x131)]()},'debug');},logDatabaseConfig=_0x54d850=>{const _0x2da6dd=a0_0x8abba4,_0x48067f={'bMhWF':function(_0x4c060e,_0x248b57,_0x2f5f53){return _0x4c060e(_0x248b57,_0x2f5f53);}},_0x4e1c29={'event':_0x2da6dd(0x12a),'host':_0x54d850['host'],'port':_0x54d850[_0x2da6dd(0x121)],'database':_0x54d850['database'],'type':_0x54d850[_0x2da6dd(0xbb)],'user':_0x54d850[_0x2da6dd(0xcb)]},_0x489a2e=_0x2da6dd(0xdd)+_0x54d850[_0x2da6dd(0xbb)]+'://'+_0x54d850['host']+':'+_0x54d850['port']+'/'+_0x54d850['database'];logger[_0x2da6dd(0xd0)](_0x4e1c29,_0x489a2e),_0x48067f[_0x2da6dd(0x14e)](writeToFileLog,{..._0x4e1c29,'level':'debug','msg':_0x489a2e,'time':new Date()['toISOString']()},'debug');},logRequest=(_0x3bd154,_0x2ada15,_0x5081f3)=>{const _0x1b7c76=a0_0x8abba4,_0x4bd884={'XgHMj':'http_request','OtMic':'error','prmoY':function(_0x25b1cc,_0x1956ed,_0x43275d){return _0x25b1cc(_0x1956ed,_0x43275d);}},_0x95c33d={'event':_0x4bd884[_0x1b7c76(0xae)],'method':_0x3bd154['method'],'path':_0x3bd154[_0x1b7c76(0x12c)],'statusCode':_0x2ada15['statusCode'],'durationMs':_0x5081f3,'ip':_0x3bd154['ip']},_0x3ab43b=_0x3bd154[_0x1b7c76(0xab)]+'\x20'+_0x3bd154['path']+'\x20-\x20'+_0x2ada15['statusCode']+'\x20('+_0x5081f3+_0x1b7c76(0x119);let _0x2638e7='info';if(_0x2ada15[_0x1b7c76(0x11a)]>=0x1f4)_0x2638e7=_0x4bd884[_0x1b7c76(0x142)],logger['error'](_0x95c33d,_0x3ab43b);else _0x2ada15['statusCode']>=0x190?(_0x2638e7=_0x1b7c76(0xb5),logger['warn'](_0x95c33d,_0x3ab43b)):logger['info'](_0x95c33d,_0x3ab43b);_0x4bd884[_0x1b7c76(0x13d)](writeToFileLog,{..._0x95c33d,'level':_0x2638e7,'msg':_0x3ab43b,'time':new Date()[_0x1b7c76(0x131)]()},_0x2638e7);},SENSITIVE_PARAM_PATTERNS=['password',a0_0x8abba4(0xfc),a0_0x8abba4(0x118),a0_0x8abba4(0xd5),a0_0x8abba4(0x117),'refresh_token',a0_0x8abba4(0x13a),'api_secret','apikey',a0_0x8abba4(0x11d),'credential',a0_0x8abba4(0xbd),'pin',a0_0x8abba4(0x116),'private_key',a0_0x8abba4(0xc5)],redactSensitiveParams=(_0x5df817,_0x1e936d)=>{const _0x12f03c=a0_0x8abba4,_0x15468b={'yRxUy':'[REDACTED:token]'};if(!_0x5df817||_0x5df817['length']===0x0)return _0x5df817;const _0x855e5a=_0x1e936d[_0x12f03c(0x155)](),_0x30db82=_0x855e5a[_0x12f03c(0x14a)](/\(([^)]+)\)\s*values/i);let _0x2d3a8b=[];_0x30db82&&(_0x2d3a8b=_0x30db82[0x1][_0x12f03c(0xb4)](',')['map'](_0x13c5da=>_0x13c5da[_0x12f03c(0x144)]()[_0x12f03c(0x155)]()));const _0x471495=_0x855e5a['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x471495){const _0xb3826c=_0x471495[0x1],_0x40bf8b=_0xb3826c[_0x12f03c(0x14a)](/(\w+)\s*=/g);_0x40bf8b&&(_0x2d3a8b=_0x40bf8b[_0x12f03c(0xad)](_0x14b330=>_0x14b330[_0x12f03c(0xef)](/\s*=/,'')['trim']()['toLowerCase']()));}return _0x5df817['map']((_0x1a5576,_0xb3e931)=>{const _0x464680=_0x12f03c;if(_0x2d3a8b[_0xb3e931]){const _0x55e535=_0x2d3a8b[_0xb3e931],_0x2bd0e3=SENSITIVE_PARAM_PATTERNS[_0x464680(0x115)](_0x1f5053=>_0x55e535[_0x464680(0x124)](_0x1f5053));if(_0x2bd0e3)return _0x464680(0x13e);}if(typeof _0x1a5576===_0x464680(0x132)&&_0x1a5576['length']>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x464680(0xed)](_0x1a5576)&&_0x1a5576[_0x464680(0x124)]('.'))return _0x15468b[_0x464680(0x9b)];if(/^[a-fA-F0-9]{32,}$/['test'](_0x1a5576))return _0x464680(0xfd);}return _0x1a5576;});},parseQueryMetadata=_0x5b1f38=>{const _0x339500=a0_0x8abba4,_0xc5e158={'NvvqT':_0x339500(0x103),'UBqvY':'UPDATE','fvskL':'TRANSACTION_BEGIN','HUjyw':_0x339500(0xeb),'OuvLS':'TRANSACTION_COMMIT','WJYbp':_0x339500(0xe6),'XtcGa':'TRANSACTION_ROLLBACK','DGByS':'DDL_CREATE','wvwfm':'ALTER','qjGET':_0x339500(0xd4)},_0x879eb2=_0x5b1f38[_0x339500(0x144)](),_0x307c66=_0x879eb2[_0x339500(0x138)]();let _0xc63af0=_0x339500(0x140),_0xb80253=null;if(_0x307c66['startsWith'](_0x339500(0x120))){_0xc63af0='SELECT';const _0x3d06e5=_0x879eb2['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0xb80253=_0x3d06e5?_0x3d06e5[0x1]:null;}else{if(_0x307c66[_0x339500(0x153)](_0xc5e158['NvvqT'])){_0xc63af0=_0xc5e158['NvvqT'];const _0x3248d0=_0x879eb2[_0x339500(0x14a)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0xb80253=_0x3248d0?_0x3248d0[0x1]:null;}else{if(_0x307c66[_0x339500(0x153)](_0xc5e158['UBqvY'])){_0xc63af0=_0xc5e158[_0x339500(0xa6)];const _0x8b8ebf=_0x879eb2['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0xb80253=_0x8b8ebf?_0x8b8ebf[0x1]:null;}else{if(_0x307c66[_0x339500(0x153)]('DELETE')){_0xc63af0=_0x339500(0xc9);const _0x4ba8f8=_0x879eb2['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0xb80253=_0x4ba8f8?_0x4ba8f8[0x1]:null;}else{if(_0x307c66['startsWith'](_0x339500(0x139))||_0x307c66[_0x339500(0x153)](_0x339500(0x101)))_0xc63af0=_0xc5e158[_0x339500(0xd1)];else{if(_0x307c66['startsWith'](_0xc5e158['HUjyw']))_0xc63af0=_0xc5e158['OuvLS'];else{if(_0x307c66[_0x339500(0x153)](_0xc5e158['WJYbp']))_0xc63af0=_0xc5e158['XtcGa'];else{if(_0x307c66[_0x339500(0x153)]('CREATE'))_0xc63af0=_0xc5e158[_0x339500(0x14b)];else{if(_0x307c66['startsWith'](_0xc5e158['wvwfm']))_0xc63af0=_0xc5e158[_0x339500(0x10a)];else _0x307c66['startsWith']('DROP')&&(_0xc63af0='DDL_DROP');}}}}}}}}return{'type':_0xc63af0,'table':_0xb80253};},startQueryTimer=()=>{const _0x2f13e6=a0_0x8abba4,_0x279465={'RHRPj':function(_0x5db054,_0x50b809){return _0x5db054(_0x50b809);},'WHEPi':function(_0x49264b,_0x5b6de7){return _0x49264b*_0x5b6de7;}},_0x117bad=process[_0x2f13e6(0xcc)]();return()=>{const _0x726f9b=_0x2f13e6,[_0x4a4c2,_0x53f7cb]=process['hrtime'](_0x117bad);return _0x279465['RHRPj'](parseFloat,(_0x279465['WHEPi'](_0x4a4c2,0x3e8)+_0x53f7cb/0xf4240)[_0x726f9b(0x12f)](0x2));};},logQuery=(_0x781224,_0x1936fa=[],_0x3caee8={})=>{const _0x389ffc=a0_0x8abba4,_0x104789={'EczDW':_0x389ffc(0xf8),'XWnzV':'DB\x20Query','soLjC':'sql_query','bRijl':function(_0x219969,_0x4a272e,_0x2fa0f4){return _0x219969(_0x4a272e,_0x2fa0f4);},'ghMAD':function(_0x438065,_0x1280aa){return _0x438065!==_0x1280aa;},'BraTY':function(_0x2c6112,_0x353b3f){return _0x2c6112||_0x353b3f;},'gsLVc':_0x389ffc(0xb5),'mNMGE':function(_0x52b24c,_0x47d481){return _0x52b24c===_0x47d481;},'nZIKL':'info'};if(!sqlLogEnabled){logger['debug']({'event':_0x104789[_0x389ffc(0xe3)],'query':_0x781224[_0x389ffc(0xd7)](0x0,0xc8),'paramCount':_0x1936fa['length']},_0x104789['XWnzV']);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x389ffc(0x9c)}=_0x3caee8,{type:_0xd3e339,table:_0x49f892}=parseQueryMetadata(_0x781224),_0x181a42={'event':_0x104789['soLjC'],'queryType':_0xd3e339,'table':_0x49f892,'query':_0x781224,'paramCount':_0x1936fa['length'],'dbType':dbType};sqlLogParams&&_0x1936fa['length']>0x0&&(_0x181a42['params']=_0x104789[_0x389ffc(0x152)](redactSensitiveParams,_0x1936fa,_0x781224));duration!==null&&(_0x181a42[_0x389ffc(0x100)]=duration,_0x181a42['isSlow']=duration>sqlLogSlowThreshold);_0x104789['ghMAD'](rowsAffected,null)&&(_0x181a42[_0x389ffc(0xcf)]=rowsAffected);const _0x2af2e7=_0x104789[_0x389ffc(0xa0)](_0x49f892,'unknown');let _0x1c169a='['+_0xd3e339+']\x20'+_0x2af2e7;duration!==null&&(_0x1c169a+='\x20('+duration+_0x389ffc(0x119));const _0x44ea1e=duration!==null&&duration>sqlLogSlowThreshold;let _0x3b78ea=_0x389ffc(0xd0);if(_0x44ea1e)_0x1c169a+='\x20[SLOW]',_0x3b78ea=_0x104789[_0x389ffc(0xe7)],logger['warn'](_0x181a42,_0x1c169a);else _0x104789['mNMGE'](sqlLogLevel,_0x104789['nZIKL'])?(_0x3b78ea=_0x104789['nZIKL'],logger['info'](_0x181a42,_0x1c169a)):logger[_0x389ffc(0xd0)](_0x181a42,_0x1c169a);writeToFileLog({..._0x181a42,'level':_0x3b78ea,'msg':_0x1c169a,'time':new Date()['toISOString']()},_0x3b78ea);},logTransaction=(_0x46c16c,_0x5b8cb9)=>{const _0x5a0062=a0_0x8abba4,_0x5430b9={'svKTA':_0x5a0062(0xd0)},_0x41fb06={'event':'db_transaction','status':_0x46c16c,'queryCount':_0x5b8cb9},_0x5cecde=_0x5a0062(0xf5)+_0x46c16c;logger['debug'](_0x41fb06,_0x5cecde),writeToFileLog({..._0x41fb06,'level':_0x5a0062(0xd0),'msg':_0x5cecde,'time':new Date()[_0x5a0062(0x131)]()},_0x5430b9[_0x5a0062(0xc6)]);},redactObject=_0x512cca=>{const _0xfe7c7c=a0_0x8abba4,_0x244a6d={'qAJTj':'object','rvmMy':_0xfe7c7c(0x10b),'qyIQI':_0xfe7c7c(0xfc),'FwAfp':_0xfe7c7c(0x118),'SbHXC':_0xfe7c7c(0x13a),'hpDgf':'credit_card','tuAtR':'cvv','MWHqR':'ssn','PehrS':'refresh_token'};if(!_0x512cca||typeof _0x512cca!==_0x244a6d[_0xfe7c7c(0x147)])return _0x512cca;const _0x3d23eb=[_0x244a6d['rvmMy'],_0x244a6d[_0xfe7c7c(0x106)],_0x244a6d[_0xfe7c7c(0x122)],_0xfe7c7c(0xd5),_0x244a6d['SbHXC'],_0xfe7c7c(0x126),'api_key','authorization',_0xfe7c7c(0xaa),_0x244a6d[_0xfe7c7c(0xb0)],_0x244a6d['tuAtR'],_0x244a6d['MWHqR'],_0xfe7c7c(0x151),'private_key','privatekey',_0x244a6d['PehrS'],'access_token'],_0x3db5fd=Array['isArray'](_0x512cca)?[..._0x512cca]:{..._0x512cca};for(const _0x3491a9 of Object['keys'](_0x3db5fd)){const _0x4d52ac=_0x3491a9[_0xfe7c7c(0x155)]();if(_0x3d23eb['some'](_0x22e154=>_0x4d52ac[_0xfe7c7c(0x124)](_0x22e154)))_0x3db5fd[_0x3491a9]=_0xfe7c7c(0x13e);else typeof _0x3db5fd[_0x3491a9]===_0x244a6d['qAJTj']&&_0x3db5fd[_0x3491a9]!==null&&(_0x3db5fd[_0x3491a9]=redactObject(_0x3db5fd[_0x3491a9]));}return _0x3db5fd;},logError=(_0x44b02c,_0x31700a={},_0x57a6dc=null)=>{const _0x28929c=a0_0x8abba4,_0x50425d={'XoCBe':'error','jJIDd':'Error','XXEhU':function(_0x1f09ea,_0x30090d,_0x36cdc8){return _0x1f09ea(_0x30090d,_0x36cdc8);}},_0x470da8={'event':_0x50425d['XoCBe'],'errorName':_0x44b02c[_0x28929c(0xb2)]||_0x50425d[_0x28929c(0xb1)],'errorMessage':_0x44b02c['message'],'errorCode':_0x44b02c['code']||null,'stack':_0x44b02c['stack'],..._0x31700a},_0x44f7b2=_0x57a6dc||'Error:\x20'+_0x44b02c['message'];logger[_0x28929c(0x123)](_0x470da8,_0x44f7b2),_0x50425d['XXEhU'](writeToFileLog,{..._0x470da8,'level':_0x50425d['XoCBe'],'msg':_0x44f7b2,'time':new Date()['toISOString']()},_0x50425d[_0x28929c(0xde)]);},logFatalError=(_0x5a265d,_0x5c888f={},_0x55740e=null)=>{const _0x2db504=a0_0x8abba4,_0x2f88f5={'gBmSc':_0x2db504(0xb9),'SnTyd':'Error','GRoxI':function(_0x1f1562,_0x3625f3,_0xe22073){return _0x1f1562(_0x3625f3,_0xe22073);},'xBKMm':_0x2db504(0x123)},_0x2bfcc4={'event':_0x2f88f5['gBmSc'],'errorName':_0x5a265d[_0x2db504(0xb2)]||_0x2f88f5[_0x2db504(0xff)],'errorMessage':_0x5a265d['message'],'errorCode':_0x5a265d['code']||null,'stack':_0x5a265d[_0x2db504(0x134)],'severity':_0x2db504(0xd6),..._0x5c888f},_0x1b49e3=_0x55740e||'FATAL:\x20'+_0x5a265d['message'];logger[_0x2db504(0xc8)](_0x2bfcc4,_0x1b49e3),_0x2f88f5[_0x2db504(0xa2)](writeToFileLog,{..._0x2bfcc4,'level':_0x2db504(0xc8),'msg':_0x1b49e3,'time':new Date()['toISOString']()},_0x2f88f5['xBKMm']);},logHttpError=(_0xef09ef,_0x48622d,_0x1152aa={})=>{const _0xa8c7b8=a0_0x8abba4,_0x39a04f={'HyZsi':_0xa8c7b8(0xf1),'rtohq':_0xa8c7b8(0x129),'tTuuS':function(_0x35e8eb,_0x416ef8){return _0x35e8eb>=_0x416ef8;},'yxbhH':_0xa8c7b8(0xb5),'mMGfV':function(_0x5d0597,_0x46b146){return _0x5d0597>=_0x46b146;},'YOtCz':_0xa8c7b8(0x123)},_0x2ed85b={'event':_0x39a04f['HyZsi'],'errorName':_0xef09ef[_0xa8c7b8(0xb2)]||_0xa8c7b8(0xee),'errorMessage':_0xef09ef[_0xa8c7b8(0x135)],'errorCode':_0xef09ef['code']||_0xef09ef[_0xa8c7b8(0x11a)]||0x1f4,'stack':_0xef09ef[_0xa8c7b8(0x134)],'method':_0x48622d?.[_0xa8c7b8(0xab)],'url':_0x48622d?.[_0xa8c7b8(0x10e)]||_0x48622d?.[_0xa8c7b8(0x107)],'path':_0x48622d?.['path'],'ip':_0x48622d?.['ip']||_0x48622d?.['connection']?.[_0xa8c7b8(0xd8)],'userAgent':_0x48622d?.['get']?.(_0x39a04f['rtohq']),'requestId':_0x48622d?.['id']||_0x48622d?.[_0xa8c7b8(0x14f)]?.['x-request-id'],'body':_0x48622d?.[_0xa8c7b8(0x110)]?redactObject(_0x48622d['body']):undefined,'query':_0x48622d?.[_0xa8c7b8(0x109)],..._0x1152aa},_0x2539b3=_0xef09ef[_0xa8c7b8(0x11a)]||_0xef09ef['status']||0x1f4,_0x775362=_0xa8c7b8(0x150)+_0x2539b3+':\x20'+_0xef09ef[_0xa8c7b8(0x135)];_0x2539b3>=0x1f4?logger['error'](_0x2ed85b,_0x775362):logger['warn'](_0x2ed85b,_0x775362),writeToFileLog({..._0x2ed85b,'level':_0x39a04f[_0xa8c7b8(0xb6)](_0x2539b3,0x1f4)?'error':_0x39a04f['yxbhH'],'msg':_0x775362,'time':new Date()[_0xa8c7b8(0x131)]()},_0x39a04f['mMGfV'](_0x2539b3,0x1f4)?_0x39a04f[_0xa8c7b8(0x9e)]:'warn');},logUncaughtError=(_0x273d3d,_0x3f84a1)=>{const _0x1af311=a0_0x8abba4,_0x2340ae={'RSKwx':_0x1af311(0xee),'YnphH':function(_0x26046c,_0x4a3b1e){return _0x26046c(_0x4a3b1e);},'LvPDO':'CRITICAL','BjoAO':function(_0x35c382,_0x10efc9,_0x1db1a8){return _0x35c382(_0x10efc9,_0x1db1a8);},'VcVws':_0x1af311(0xc8),'bUNfj':'error'},_0x2ee50b={'event':_0x273d3d,'errorName':_0x3f84a1?.[_0x1af311(0xb2)]||_0x2340ae['RSKwx'],'errorMessage':_0x3f84a1?.[_0x1af311(0x135)]||_0x2340ae['YnphH'](String,_0x3f84a1),'errorCode':_0x3f84a1?.['code']||null,'stack':_0x3f84a1?.[_0x1af311(0x134)],'severity':_0x2340ae['LvPDO'],'processId':process[_0x1af311(0x9d)],'memoryUsage':process['memoryUsage'](),'uptime':process[_0x1af311(0x148)]()},_0x32c61b='['+_0x273d3d['toUpperCase']()+']\x20'+(_0x3f84a1?.[_0x1af311(0x135)]||_0x3f84a1);logger[_0x1af311(0xc8)](_0x2ee50b,_0x32c61b),_0x2340ae['BjoAO'](writeToFileLog,{..._0x2ee50b,'level':_0x2340ae[_0x1af311(0x130)],'msg':_0x32c61b,'time':new Date()[_0x1af311(0x131)]()},_0x2340ae['bUNfj']);},setupGlobalErrorHandlers=()=>{const _0x1b84a7=a0_0x8abba4,_0x54c140={'ioBac':function(_0x327e15,_0x108380){return _0x327e15 instanceof _0x108380;},'XxLKw':_0x1b84a7(0xb7),'HYRuy':'process_warning','yjuQA':'uncaughtException','HyCJe':_0x1b84a7(0xac),'hovUO':'Global\x20error\x20handlers\x20initialized'};process['on'](_0x54c140[_0x1b84a7(0xa9)],_0x44a61c=>{const _0x32cbf5=_0x1b84a7;logUncaughtError(_0x32cbf5(0xd2),_0x44a61c),setTimeout(()=>{const _0xcce3f1=_0x32cbf5;process[_0xcce3f1(0xf0)](0x1);},0x3e8);}),process['on'](_0x54c140['XxLKw'],(_0x180901,_0xd63a77)=>{const _0x37c0ae=_0x1b84a7,_0x3a18a9=_0x54c140['ioBac'](_0x180901,Error)?_0x180901:new Error(String(_0x180901));logUncaughtError(_0x54c140[_0x37c0ae(0xec)],_0x3a18a9);}),process['on'](_0x1b84a7(0x11e),_0x58dfe5=>{const _0x1f6767=_0x1b84a7;logger['warn']({'event':_0x54c140[_0x1f6767(0x105)],'name':_0x58dfe5[_0x1f6767(0xb2)],'message':_0x58dfe5[_0x1f6767(0x135)],'stack':_0x58dfe5['stack']},_0x1f6767(0xdf)+_0x58dfe5[_0x1f6767(0x135)]);});const _0x7f8446={'event':_0x54c140[_0x1b84a7(0xbe)]},_0x9911c8=_0x54c140['hovUO'];logger['info'](_0x7f8446,_0x9911c8),writeToFileLog({..._0x7f8446,'level':_0x1b84a7(0xc3),'msg':_0x9911c8,'time':new Date()['toISOString']()},'info');},createErrorHandlerMiddleware=()=>{const _0x389f0c={'SWmYm':'Internal\x20server\x20error','kCANk':'x-request-id'};return(_0x2c6be3,_0x457170,_0x585548,_0x1ba775)=>{const _0x714744=a0_0x58aa;logHttpError(_0x2c6be3,_0x457170);const _0x28df03=_0x2c6be3['statusCode']||_0x2c6be3['status']||0x1f4;_0x585548['status'](_0x28df03)['json']({'success':![],'error':_0x28df03>=0x1f4?_0x389f0c['SWmYm']:_0x2c6be3['message'],'requestId':_0x457170['id']||_0x457170[_0x714744(0x14f)]?.[_0x389f0c[_0x714744(0x10c)]]||null});};};module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
1
+ const a0_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_0xa08675=a0_0xee5e;function a0_0x5725(){const _0x69ff4d=['Bg9VA3vWq2fJAgu','zxHLy3v0zvf1zxj5','u0vmrunuia','CMHXvhC','z2v0rgLZDgLUy3rwywX1zxm','Bg9HzeXVB2T1CfrHyMXL','Aw5MBW','zM9YrwfJAa','ALnosu0','Cg9ZDgDYzxnXBa','odu0nwz0A0PwBq','zxjYB3i','ChvZAa','BxLZCwW','zLfUBK0','zxHWB3j0CW','BwvZC2fNzq','B3jHy2XL','zw50CMLLCW','ndC5nhvlug9kAq','DMfSAwrHDgvmB29RDxbwywX1zxm','oe1Yu2zPtq','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','tg9VA3vWihrHyMXLigXVywrLzdOG','zw52','vgvLC0O','lI9KyI1TExnXBa','CMvZB2X2zuXVB2T1CfzHBhvL','A2v5CW','z2v0','rejFvfLqrq','rwjwCNa','uwDJtfq','zNjVBq','zgvIDwC','DhjPBq','y2XLyxi','mJuYnJu3EvLQsgjh','tg9VA3vWignHy2HLignSzwfYzwq','BgvUz3rO','nJqZmJrArwnPAeK','mJu1B0TVAhvb','AgfZ','C2v0','mtuZmJq4m0LJtxz3yG','ntGWotm2t09QzKHq','Dg9mB3DLCKnHC2u','odKYmdC3oxzvy2fdvG','BLrdz0K','D014uhi','nZy3ndKXmffTBhj5sq'];a0_0x5725=function(){return _0x69ff4d;};return a0_0x5725();}(function(_0x48ec02,_0x167452){const _0x55ce99=a0_0xee5e,_0x787ac9=_0x48ec02();while(!![]){try{const _0x4f6aa1=-parseInt(_0x55ce99(0x99))/0x1+parseInt(_0x55ce99(0x9a))/0x2+-parseInt(_0x55ce99(0x96))/0x3*(-parseInt(_0x55ce99(0x95))/0x4)+-parseInt(_0x55ce99(0xaa))/0x5*(parseInt(_0x55ce99(0xb3))/0x6)+-parseInt(_0x55ce99(0x9c))/0x7*(-parseInt(_0x55ce99(0xb5))/0x8)+-parseInt(_0x55ce99(0x92))/0x9+parseInt(_0x55ce99(0x9f))/0xa;if(_0x4f6aa1===_0x167452)break;else _0x787ac9['push'](_0x787ac9['shift']());}catch(_0x50641a){_0x787ac9['push'](_0x787ac9['shift']());}}}(a0_0x5725,0xbcc4a));function a0_0xee5e(_0x4ac28a,_0xf5cd3a){_0x4ac28a=_0x4ac28a-0x8e;const _0x5725cb=a0_0x5725();let _0xee5e24=_0x5725cb[_0x4ac28a];if(a0_0xee5e['mOUMNx']===undefined){var _0xa81799=function(_0x91d45f){const _0x4dba08='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4b1f38='',_0x484bb8='';for(let _0x5a87be=0x0,_0x5f3ec1,_0xeb55d2,_0x1a9c0f=0x0;_0xeb55d2=_0x91d45f['charAt'](_0x1a9c0f++);~_0xeb55d2&&(_0x5f3ec1=_0x5a87be%0x4?_0x5f3ec1*0x40+_0xeb55d2:_0xeb55d2,_0x5a87be++%0x4)?_0x4b1f38+=String['fromCharCode'](0xff&_0x5f3ec1>>(-0x2*_0x5a87be&0x6)):0x0){_0xeb55d2=_0x4dba08['indexOf'](_0xeb55d2);}for(let _0x46def6=0x0,_0x1e20fb=_0x4b1f38['length'];_0x46def6<_0x1e20fb;_0x46def6++){_0x484bb8+='%'+('00'+_0x4b1f38['charCodeAt'](_0x46def6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x484bb8);};a0_0xee5e['uknBTI']=_0xa81799,a0_0xee5e['bpmjaP']={},a0_0xee5e['mOUMNx']=!![];}const _0x17f2ad=_0x5725cb[0x0],_0x4157b5=_0x4ac28a+_0x17f2ad,_0x4650dd=a0_0xee5e['bpmjaP'][_0x4157b5];return!_0x4650dd?(_0xee5e24=a0_0xee5e['uknBTI'](_0xee5e24),a0_0xee5e['bpmjaP'][_0x4157b5]=_0xee5e24):_0xee5e24=_0x4650dd,_0xee5e24;}const dbType=(process[a0_0xa08675(0xb8)][a0_0xa08675(0xbe)]||a0_0xa08675(0xa9))[a0_0xa08675(0x9b)]();let executeQuery;if(dbType===a0_0xa08675(0xb1)){const oracleDb=require('./db-oracle');executeQuery=(_0x2d4e9f,_0x682dab)=>oracleDb['executeQuery'](_0x2d4e9f,_0x682dab);}else{if(dbType===a0_0xa08675(0xad)){const mysqlDb=require(a0_0xa08675(0xba));executeQuery=(_0x34da95,_0x418023)=>mysqlDb['executeQuery'](_0x34da95,_0x418023);}else executeQuery=require('./db')[a0_0xa08675(0xa1)];}const {logger}=require('./logger');class LookupResolver{constructor(){this['lookupCache']=new Map();}['clearCache'](){const _0x386c9d=a0_0xa08675,_0x4ba11b={'wMxPr':_0x386c9d(0x93)};this[_0x386c9d(0xa0)][_0x386c9d(0x91)](),logger[_0x386c9d(0x8f)]({'event':'lookup_cache_cleared'},_0x4ba11b[_0x386c9d(0x9e)]);}async['loadLookupTable'](_0x554af4,_0x9c0a64,_0x4ad35e){const _0x27c726=a0_0xa08675,_0x3c7974={'HKGzC':function(_0x440f49,_0x518164){return _0x440f49!==_0x518164;},'jSNIM':function(_0x535eea,_0x2fee40){return _0x535eea!==_0x2fee40;},'Pmixv':function(_0x11cfff,_0x596e39){return _0x11cfff(_0x596e39);}},_0xe57134=_0x554af4+':'+_0x9c0a64+':'+_0x4ad35e;if(this[_0x27c726(0xa0)][_0x27c726(0x97)](_0xe57134))return this['lookupCache']['get'](_0xe57134);try{const _0x35d646=_0x27c726(0xa2)+_0x4ad35e+',\x20'+_0x9c0a64+'\x20FROM\x20'+_0x554af4,_0x56cbc2=await _0x3c7974['Pmixv'](executeQuery,_0x35d646),_0x27c692=new Map();return _0x56cbc2['forEach'](_0x3baab3=>{const _0x4586e9=_0x27c726,_0x29c9ba=_0x3baab3[_0x9c0a64]!==undefined?_0x3baab3[_0x9c0a64]:_0x3baab3[_0x9c0a64['toUpperCase']()],_0x13e89f=_0x3baab3[_0x4ad35e]!==undefined?_0x3baab3[_0x4ad35e]:_0x3baab3[_0x4ad35e['toUpperCase']()];_0x3c7974['HKGzC'](_0x29c9ba,null)&&_0x3c7974[_0x4586e9(0xa8)](_0x29c9ba,undefined)&&(_0x27c692[_0x4586e9(0x98)](String(_0x29c9ba)['toLowerCase']()['trim'](),_0x13e89f),_0x27c692['set'](String(_0x29c9ba)['trim'](),_0x13e89f));}),this[_0x27c726(0xa0)][_0x27c726(0x98)](_0xe57134,_0x27c692),logger[_0x27c726(0xa6)]({'event':'lookup_table_loaded','table':_0x554af4,'column':_0x9c0a64,'count':_0x56cbc2['length']},_0x27c726(0xb7)+_0x554af4),_0x27c692;}catch(_0x255f9e){logger[_0x27c726(0xab)]({'event':'lookup_table_load_error','table':_0x554af4,'error':_0x255f9e[_0x27c726(0xb0)]},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x554af4);throw _0x255f9e;}}['resolveLookupValue'](_0x554266,_0x360992){const _0xa981b8=a0_0xa08675,_0x24b0e4={'rhqTw':function(_0x151385,_0x146fee){return _0x151385===_0x146fee;},'QgcLT':function(_0x45aa6d,_0x17d690){return _0x45aa6d(_0x17d690);}};if(_0x554266===null||_0x24b0e4[_0xa981b8(0xa3)](_0x554266,undefined)||_0x24b0e4[_0xa981b8(0xa3)](_0x554266,''))return null;const _0x2ae307=_0x24b0e4[_0xa981b8(0xc0)](String,_0x554266)[_0xa981b8(0x90)]();if(_0x360992['has'](_0x2ae307))return _0x360992['get'](_0x2ae307);const _0xb94099=_0x2ae307['toLowerCase']();if(_0x360992[_0xa981b8(0x97)](_0xb94099))return _0x360992[_0xa981b8(0xbd)](_0xb94099);return null;}async['processLookupFields'](_0x2cc96a,_0x1b6d7e){const _0x1175d7=a0_0xa08675,_0x3759fa={'nTCgI':function(_0x45640c,_0x896d22){return _0x45640c===_0x896d22;},'DksYj':function(_0x28f409,_0x5e6aaf){return _0x28f409===_0x5e6aaf;},'EbVrp':function(_0x2f91c0,_0x18935c){return _0x2f91c0!==_0x18935c;},'tphgf':'Lookup\x20fields\x20processed'};if(!_0x1b6d7e||Object['keys'](_0x1b6d7e)['length']===0x0)return{'processedRows':_0x2cc96a,'errors':[]};const _0x33b6ea=[],_0x50a53e=new Map();for(const [_0x4aab26,_0x55abe8]of Object[_0x1175d7(0xb2)](_0x1b6d7e)){const {lookupTable:_0x55e1a9,lookupColumn:_0x95c821,lookupIdColumn:_0x24cf6a}=_0x55abe8,_0x32e9c3=_0x55e1a9+':'+_0x95c821+':'+_0x24cf6a;if(!_0x50a53e[_0x1175d7(0x97)](_0x32e9c3)){const _0x4bc62c=await this[_0x1175d7(0xa5)](_0x55e1a9,_0x95c821,_0x24cf6a);_0x50a53e['set'](_0x32e9c3,_0x4bc62c);}}const _0x32573a=_0x2cc96a['map']((_0x4091f1,_0x5a3d50)=>{const _0x332700=_0x1175d7,_0x1f7977={..._0x4091f1};for(const [_0x1a39ae,_0x11a742]of Object['entries'](_0x1b6d7e)){const {lookupTable:_0x245fb8,lookupColumn:_0x7b72a4,lookupIdColumn:_0xcde834,targetField:_0x56cad8,required:_0x497b9d}=_0x11a742,_0x5472cf=_0x245fb8+':'+_0x7b72a4+':'+_0xcde834,_0x49e417=_0x50a53e[_0x332700(0xbd)](_0x5472cf),_0x5d8d7b=_0x4091f1[_0x1a39ae];if((_0x3759fa[_0x332700(0x9d)](_0x5d8d7b,null)||_0x3759fa['DksYj'](_0x5d8d7b,undefined)||_0x5d8d7b==='')&&!_0x497b9d){_0x1f7977[_0x56cad8]=null;continue;}const _0xc8fb43=this['resolveLookupValue'](_0x5d8d7b,_0x49e417);_0x3759fa[_0x332700(0xbf)](_0xc8fb43,null)?_0x1f7977[_0x56cad8]=_0xc8fb43:(_0x497b9d&&_0x33b6ea[_0x332700(0xac)]({'rowIndex':_0x5a3d50,'field':_0x1a39ae,'value':_0x5d8d7b,'targetField':_0x56cad8,'lookupTable':_0x245fb8,'message':'Value\x20\x22'+_0x5d8d7b+'\x22\x20not\x20found\x20in\x20'+_0x245fb8}),_0x1f7977[_0x56cad8]=null);}return _0x1f7977;});return logger[_0x1175d7(0xa6)]({'event':_0x1175d7(0xb6),'totalRows':_0x2cc96a[_0x1175d7(0x94)],'errorCount':_0x33b6ea['length'],'lookupFieldCount':Object['keys'](_0x1b6d7e)['length']},_0x3759fa['tphgf']),{'processedRows':_0x32573a,'errors':_0x33b6ea};}['getDistinctValues'](_0x2d0517,_0x3e5786){const _0x4145ac=a0_0xa08675,_0x476651={'eUfgH':function(_0x4ff559,_0x454859){return _0x4ff559!==_0x454859;}},_0x2e5159=new Set();return _0x2d0517['forEach'](_0x223b27=>{const _0x347a8d=a0_0xee5e,_0x72463b=_0x223b27[_0x3e5786];_0x72463b!==null&&_0x72463b!==undefined&&_0x476651['eUfgH'](_0x72463b,'')&&_0x2e5159['add'](String(_0x72463b)[_0x347a8d(0x90)]());}),Array[_0x4145ac(0x8e)](_0x2e5159);}async[a0_0xa08675(0xb4)](_0x41dc06,_0x2590ff){const _0x2b4c53=a0_0xa08675,_0x5af785={'TeesJ':function(_0x1aa64b,_0x337c80){return _0x1aa64b===_0x337c80;},'fQnnM':function(_0x1333b8,_0x37038c){return _0x1333b8>_0x37038c;}};if(!_0x2590ff||Object[_0x2b4c53(0xbc)](_0x2590ff)[_0x2b4c53(0x94)]===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x3e3572=[],_0xa75156={};for(const [_0x12e0b2,_0x38133d]of Object[_0x2b4c53(0xb2)](_0x2590ff)){const {lookupTable:_0x56862b,lookupColumn:_0x293951,lookupIdColumn:_0x4fb97f,required:_0x214d08}=_0x38133d,_0x502903=this[_0x2b4c53(0xa4)](_0x41dc06,_0x12e0b2),_0x3a5e8b=await this['loadLookupTable'](_0x56862b,_0x293951,_0x4fb97f),_0x59fd0b=[],_0x332847=[];_0x502903[_0x2b4c53(0xa7)](_0x4a8d50=>{const _0x197641=_0x2b4c53,_0x393b15=this[_0x197641(0xbb)](_0x4a8d50,_0x3a5e8b);_0x393b15!==null?_0x332847['push'](_0x4a8d50):_0x59fd0b[_0x197641(0xac)](_0x4a8d50);});if(_0x5af785[_0x2b4c53(0xae)](_0x59fd0b[_0x2b4c53(0x94)],0x0)&&_0x214d08){_0x3e3572[_0x2b4c53(0xac)]({'field':_0x12e0b2,'lookupTable':_0x56862b,'invalidValues':_0x59fd0b,'message':_0x59fd0b[_0x2b4c53(0x94)]+'\x20value(s)\x20not\x20found\x20in\x20'+_0x56862b});const _0x32dcdb=[];_0x3a5e8b[_0x2b4c53(0xa7)]((_0x28284f,_0x58100a)=>{const _0xdc6241=_0x2b4c53;if(_0x5af785[_0xdc6241(0xb9)](_0x58100a,_0x58100a[_0xdc6241(0x9b)]()))return;_0x32dcdb[_0xdc6241(0xac)](_0x58100a);}),_0xa75156[_0x12e0b2]={'invalidValues':_0x59fd0b,'availableValues':_0x32dcdb['slice'](0x0,0x32)};}}return{'valid':_0x5af785['TeesJ'](_0x3e3572['length'],0x0),'errors':_0x3e3572,'suggestions':_0xa75156};}}module[a0_0xa08675(0xaf)]=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
- const a0_0x10a491=a0_0x34a3;(function(_0x5122d7,_0x3fdde9){const _0x3f1d65=a0_0x34a3,_0x3b7a38=_0x5122d7();while(!![]){try{const _0x7202be=-parseInt(_0x3f1d65(0x1c1))/0x1+parseInt(_0x3f1d65(0x1c5))/0x2*(-parseInt(_0x3f1d65(0x1e6))/0x3)+-parseInt(_0x3f1d65(0x1df))/0x4*(parseInt(_0x3f1d65(0x1e7))/0x5)+-parseInt(_0x3f1d65(0x1d5))/0x6*(-parseInt(_0x3f1d65(0x1c9))/0x7)+parseInt(_0x3f1d65(0x1d0))/0x8+parseInt(_0x3f1d65(0x1cc))/0x9+-parseInt(_0x3f1d65(0x1de))/0xa*(-parseInt(_0x3f1d65(0x1d2))/0xb);if(_0x7202be===_0x3fdde9)break;else _0x3b7a38['push'](_0x3b7a38['shift']());}catch(_0x383478){_0x3b7a38['push'](_0x3b7a38['shift']());}}}(a0_0x1298,0x273e6));const fs=require('fs')['promises'],path=require(a0_0x10a491(0x1c6)),{logger}=require('./logger');function a0_0x34a3(_0x35372a,_0x2ee36a){_0x35372a=_0x35372a-0x1c0;const _0x129895=a0_0x1298();let _0x34a322=_0x129895[_0x35372a];if(a0_0x34a3['AybcfK']===undefined){var _0x653f5a=function(_0x49d492){const _0x75813c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a07cf='',_0x380dbd='';for(let _0x2c7bf0=0x0,_0x1f5cd2,_0x150010,_0x3cc846=0x0;_0x150010=_0x49d492['charAt'](_0x3cc846++);~_0x150010&&(_0x1f5cd2=_0x2c7bf0%0x4?_0x1f5cd2*0x40+_0x150010:_0x150010,_0x2c7bf0++%0x4)?_0x3a07cf+=String['fromCharCode'](0xff&_0x1f5cd2>>(-0x2*_0x2c7bf0&0x6)):0x0){_0x150010=_0x75813c['indexOf'](_0x150010);}for(let _0x28332a=0x0,_0x2e883e=_0x3a07cf['length'];_0x28332a<_0x2e883e;_0x28332a++){_0x380dbd+='%'+('00'+_0x3a07cf['charCodeAt'](_0x28332a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x380dbd);};a0_0x34a3['EElmoR']=_0x653f5a,a0_0x34a3['nqGgzW']={},a0_0x34a3['AybcfK']=!![];}const _0x52ecca=_0x129895[0x0],_0x55ff4d=_0x35372a+_0x52ecca,_0xf96637=a0_0x34a3['nqGgzW'][_0x55ff4d];return!_0xf96637?(_0x34a322=a0_0x34a3['EElmoR'](_0x34a322),a0_0x34a3['nqGgzW'][_0x55ff4d]=_0x34a322):_0x34a322=_0xf96637,_0x34a322;}class PayloadLoader{constructor(){const _0x1b1df6=a0_0x10a491;this[_0x1b1df6(0x1d6)]=path['join'](__dirname,_0x1b1df6(0x1c4)),this['cache']=new Map();}async[a0_0x10a491(0x1c2)](_0x423792,_0x53c9ec){const _0x5c89cd=a0_0x10a491,_0x5c080e={'lieYw':'utf8','hhxka':_0x5c89cd(0x1d4)},_0x1494e4=_0x423792+':'+_0x53c9ec;if(this[_0x5c89cd(0x1cd)][_0x5c89cd(0x1e1)](_0x1494e4))return this['cache']['get'](_0x1494e4);const _0xb3d599=path[_0x5c89cd(0x1e2)](this[_0x5c89cd(0x1d6)],_0x423792+'_'+_0x53c9ec+'.json');try{const _0x1f9e1b=await fs[_0x5c89cd(0x1c3)](_0xb3d599,_0x5c080e['lieYw']),_0xade531=JSON[_0x5c89cd(0x1d7)](_0x1f9e1b);return this['cache']['set'](_0x1494e4,_0xade531),logger['debug']({'event':'payload_loaded','project':_0x423792,'resource':_0x53c9ec},'Payload\x20loaded\x20successfully'),_0xade531;}catch(_0xff13b){logger['error']({'event':_0x5c080e[_0x5c89cd(0x1cb)],'project':_0x423792,'resource':_0x53c9ec,'error':_0xff13b[_0x5c89cd(0x1e4)]},'Failed\x20to\x20load\x20payload');throw new Error('Payload\x20not\x20found:\x20'+_0x423792+'_'+_0x53c9ec);}}async[a0_0x10a491(0x1ce)](_0x32aa20){const _0x27d16d=a0_0x10a491,_0x4fcd93={'dZmne':'Failed\x20to\x20load\x20payload\x20by\x20name'},_0x1599ab=_0x27d16d(0x1dc)+_0x32aa20;if(this['cache'][_0x27d16d(0x1e1)](_0x1599ab))return this[_0x27d16d(0x1cd)]['get'](_0x1599ab);const _0x508f3c=path[_0x27d16d(0x1e2)](this['payloadDir'],_0x32aa20+_0x27d16d(0x1d3));try{const _0xaadbfd=await fs[_0x27d16d(0x1c3)](_0x508f3c,'utf8'),_0x4369e9=JSON[_0x27d16d(0x1d7)](_0xaadbfd);return this['cache']['set'](_0x1599ab,_0x4369e9),logger['debug']({'event':'payload_loaded','payloadName':_0x32aa20},_0x27d16d(0x1d8)),_0x4369e9;}catch(_0x2ca8d4){logger[_0x27d16d(0x1d9)]({'event':_0x27d16d(0x1d4),'payloadName':_0x32aa20,'error':_0x2ca8d4[_0x27d16d(0x1e4)]},_0x4fcd93[_0x27d16d(0x1dd)]);throw new Error('Payload\x20not\x20found:\x20'+_0x32aa20);}}[a0_0x10a491(0x1ca)](_0x449cfc,_0x59d3c3){const _0x147ebf=a0_0x10a491;return _0x449cfc[_0x147ebf(0x1d1)]&&_0x449cfc[_0x147ebf(0x1d1)][_0x59d3c3]===!![];}['getExportConfig'](_0x1ea49f){const _0x1374c6=a0_0x10a491;return{'columns':_0x1ea49f[_0x1374c6(0x1e5)]||[],'filename':_0x1ea49f[_0x1374c6(0x1e0)]['replace']('.','-')+'-export','datatablesQuery':_0x1ea49f[_0x1374c6(0x1cf)]||null,'columnFormats':_0x1ea49f[_0x1374c6(0x1c7)]||null,'fieldLabels':_0x1ea49f['fieldLabels']||null};}[a0_0x10a491(0x1c0)](){const _0x55af65=a0_0x10a491,_0x7e0bbd={'BiPPF':_0x55af65(0x1c8)};this['cache'][_0x55af65(0x1e3)](),logger[_0x55af65(0x1db)]({'event':'payload_cache_cleared'},_0x7e0bbd[_0x55af65(0x1da)]);}}function a0_0x1298(){const _0x1cc2b0=['mJm5mfrpANPvCq','y2XLyxjdywnOzq','mtu2nZu0CxL1svjh','Bg9HzfbHEwXVywq','CMvHzezPBgu','lI4VlI4VCgf5Bg9Hza','mJaXodbsDMnNuhi','Cgf0Aa','y29SDw1UrM9YBwf0CW','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','mJG0owrNyM1Uza','Axnby3rPB25fBMfIBgvK','AgH4A2e','mti4mZuYnMz0DuLUDG','y2fJAgu','Bg9HzfbHEwXVywrcEu5HBwu','zgf0yxrHyMXLC1f1zxj5','oty0odG4vvnkEufP','ywn0Aw9U','mZe4mJaZnMnItNH0sG','lMPZB24','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','mJKYmK9pAMTeBa','Cgf5Bg9HzerPCG','CgfYC2u','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','zxjYB3i','qMLquey','Aw5MBW','Cgf5Bg9HzdO','zfPTBMu','mtblD0zUBu4','mJyXmNvHCxjYvq','DgfIBgvoyw1L','AgfZ','AM9PBG','y2XLyxi','BwvZC2fNzq','zMLLBgroyw1L','mZzMEg1hCey'];a0_0x1298=function(){return _0x1cc2b0;};return a0_0x1298();}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_0x3514a7=a0_0x19bc;(function(_0xadce5d,_0x2f36df){var _0x4e30bd=a0_0x19bc,_0x410e87=_0xadce5d();while(!![]){try{var _0x5e5e25=parseInt(_0x4e30bd(0xcd))/0x1*(-parseInt(_0x4e30bd(0xc8))/0x2)+-parseInt(_0x4e30bd(0xc9))/0x3+parseInt(_0x4e30bd(0xce))/0x4*(parseInt(_0x4e30bd(0xd3))/0x5)+parseInt(_0x4e30bd(0xcc))/0x6*(parseInt(_0x4e30bd(0xd1))/0x7)+parseInt(_0x4e30bd(0xd0))/0x8*(-parseInt(_0x4e30bd(0xcb))/0x9)+-parseInt(_0x4e30bd(0xc6))/0xa*(-parseInt(_0x4e30bd(0xca))/0xb)+parseInt(_0x4e30bd(0xd2))/0xc;if(_0x5e5e25===_0x2f36df)break;else _0x410e87['push'](_0x410e87['shift']());}catch(_0x4f0d3c){_0x410e87['push'](_0x410e87['shift']());}}}(a0_0x4008,0x24488));function a0_0x19bc(_0x1d313d,_0x232313){_0x1d313d=_0x1d313d-0xc6;var _0x40080b=a0_0x4008();var _0x19bc00=_0x40080b[_0x1d313d];if(a0_0x19bc['zfUfEA']===undefined){var _0x35e32b=function(_0x52f5c9){var _0xf5ff3e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x4671e8='',_0x2a168d='';for(var _0x81bf17=0x0,_0x27df8e,_0x2131c9,_0x6d2da5=0x0;_0x2131c9=_0x52f5c9['charAt'](_0x6d2da5++);~_0x2131c9&&(_0x27df8e=_0x81bf17%0x4?_0x27df8e*0x40+_0x2131c9:_0x2131c9,_0x81bf17++%0x4)?_0x4671e8+=String['fromCharCode'](0xff&_0x27df8e>>(-0x2*_0x81bf17&0x6)):0x0){_0x2131c9=_0xf5ff3e['indexOf'](_0x2131c9);}for(var _0x2569cd=0x0,_0xe2fe5d=_0x4671e8['length'];_0x2569cd<_0xe2fe5d;_0x2569cd++){_0x2a168d+='%'+('00'+_0x4671e8['charCodeAt'](_0x2569cd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2a168d);};a0_0x19bc['ULQgag']=_0x35e32b,a0_0x19bc['bSpmoU']={},a0_0x19bc['zfUfEA']=!![];}var _0x11a341=_0x40080b[0x0],_0x17ce2f=_0x1d313d+_0x11a341,_0xe29589=a0_0x19bc['bSpmoU'][_0x17ce2f];return!_0xe29589?(_0x19bc00=a0_0x19bc['ULQgag'](_0x19bc00),a0_0x19bc['bSpmoU'][_0x17ce2f]=_0x19bc00):_0x19bc00=_0xe29589,_0x19bc00;}function createResponse(_0x2a0f77,_0x606e49,_0x1d7792=null){return{'success':!![],'statusCode':_0x2a0f77,'message':_0x606e49,'data':_0x1d7792,'timestamp':new Date()['toISOString']()};}function a0_0x4008(){var _0x41efdd=['mtyYmtGXmMLwAeXZBW','mtG3nta1D0f4svb0','ntG3mfDXyMPKAW','zxHWB3j0CW','mtb3tKTQsfy','nZuXnZK0u29tvLLh','mJG2s3vHCenJ','nJm5tLDMDgvL','mteWmdK0B1zJAunm','mty1mZjmr1zyBNq','mJbsA2nHB2K','Dg9ju09tDhjPBMC','mtq3otjSru9kvwS','mta1yvntv2Lc'];a0_0x4008=function(){return _0x41efdd;};return a0_0x4008();}function createError(_0x1d7e8b,_0x5ee557,_0x47b0b2=null){var _0x23c052=a0_0x19bc;return{'success':![],'statusCode':_0x1d7e8b,'message':_0x5ee557,'data':_0x47b0b2,'timestamp':new Date()[_0x23c052(0xcf)]()};}function createValidationError(_0x417462,_0x4b62f4){return{'success':![],'statusCode':0x190,'message':_0x417462,'data':{'errors':_0x4b62f4},'timestamp':new Date()['toISOString']()};}module[a0_0x3514a7(0xc7)]={'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_0x33f1c9=a0_0xfc4f;(function(_0x52f45a,_0x2a2a9c){const _0x5e4966=a0_0xfc4f,_0x561391=_0x52f45a();while(!![]){try{const _0x260e74=parseInt(_0x5e4966(0x1f0))/0x1+parseInt(_0x5e4966(0x1ee))/0x2*(-parseInt(_0x5e4966(0x1ed))/0x3)+-parseInt(_0x5e4966(0x1d8))/0x4+-parseInt(_0x5e4966(0x1d2))/0x5+-parseInt(_0x5e4966(0x1d3))/0x6+-parseInt(_0x5e4966(0x1dd))/0x7+parseInt(_0x5e4966(0x1e0))/0x8;if(_0x260e74===_0x2a2a9c)break;else _0x561391['push'](_0x561391['shift']());}catch(_0x5dc79a){_0x561391['push'](_0x561391['shift']());}}}(a0_0x56b9,0x5c293),require('dotenv')['config']());const amqp=require('amqplib'),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process[a0_0x33f1c9(0x1e4)]['RABBITMQ_URL'],EXCHANGE=process['env']['RABBITMQ_EXCHANGE'],ROUTING_KEY=process[a0_0x33f1c9(0x1e4)]['RABBITMQ_ROUTING_KEY'],QUEUE=process[a0_0x33f1c9(0x1e4)]['RABBITMQ_QUEUE'];async function createConnection(){const _0x317c58=a0_0x33f1c9,_0x1a1a6f={'KtEjG':function(_0xa9d4a6,_0x45b1ea){return _0xa9d4a6(_0x45b1ea);},'PsZVr':function(_0x44e7c4,_0x53e029){return _0x44e7c4(_0x53e029);}};try{const _0x2187e2=await amqp[_0x317c58(0x1d7)](RABBITMQ_URL);return console['log']('['+_0x1a1a6f['KtEjG'](formatDate,new Date())+_0x317c58(0x1df)),_0x2187e2;}catch(_0x49af4f){console[_0x317c58(0x1ec)]('['+_0x1a1a6f['PsZVr'](formatDate,new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x49af4f[_0x317c58(0x1de)]);throw _0x49af4f;}}async function createChannel(_0x885cbd){const _0x422981=a0_0x33f1c9;try{const _0x4a1e61=await _0x885cbd[_0x422981(0x1f1)]();return console['log']('['+formatDate(new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x4a1e61;}catch(_0xe51e98){console[_0x422981(0x1ec)]('['+formatDate(new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0xe51e98['message']);throw _0xe51e98;}}async function setupInfrastructure(_0x414f36){const _0x2abfa9=a0_0x33f1c9,_0x3365e8={'NVUay':function(_0x2b1815,_0x3a0865){return _0x2b1815(_0x3a0865);},'YngnI':function(_0x162e4e,_0x8ad264){return _0x162e4e(_0x8ad264);},'fpCsw':function(_0x2c7011,_0x5e41b6){return _0x2c7011(_0x5e41b6);},'qXWHu':'retry-exchange','Llply':_0x2abfa9(0x1e5)};try{await _0x414f36['assertExchange']('retry-exchange','direct',{'durable':!![],'autoDelete':![]}),console['log']('['+_0x3365e8[_0x2abfa9(0x1d5)](formatDate,new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x56d577){console['error']('['+_0x3365e8['NVUay'](formatDate,new Date())+']\x20Error\x20creating\x20retry\x20exchange:',_0x56d577[_0x2abfa9(0x1de)]);throw _0x56d577;}try{await _0x414f36['assertExchange'](EXCHANGE,_0x2abfa9(0x1dc),{'durable':!![],'autoDelete':![]}),console[_0x2abfa9(0x1f2)]('['+_0x3365e8['YngnI'](formatDate,new Date())+_0x2abfa9(0x1e2)+EXCHANGE+'\x20created/ready');}catch(_0x650e89){console[_0x2abfa9(0x1ec)]('['+_0x3365e8['fpCsw'](formatDate,new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x650e89[_0x2abfa9(0x1de)]);throw _0x650e89;}const _0x102d8e=ROUTING_KEY+_0x2abfa9(0x1e7);try{const _0x58981c={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x414f36['assertQueue'](_0x102d8e,_0x58981c),console['log']('['+_0x3365e8['YngnI'](formatDate,new Date())+_0x2abfa9(0x1ea)+_0x102d8e+'\x20created/ready'),await _0x414f36['bindQueue'](_0x102d8e,_0x3365e8['qXWHu'],ROUTING_KEY),console[_0x2abfa9(0x1f2)]('['+_0x3365e8['YngnI'](formatDate,new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+_0x2abfa9(0x1d4));}catch(_0x576ecd){console['error']('['+_0x3365e8[_0x2abfa9(0x1d5)](formatDate,new Date())+_0x2abfa9(0x1f3),_0x576ecd[_0x2abfa9(0x1de)]);throw _0x576ecd;}try{const _0x541aa6={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x2abfa9(0x1e6),'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x22154d=await _0x414f36[_0x2abfa9(0x1d1)](QUEUE,_0x541aa6);console['log']('['+formatDate(new Date())+_0x2abfa9(0x1e8)+QUEUE+'\x20'+(_0x22154d[_0x2abfa9(0x1eb)]===QUEUE?'created/ready':'found')+_0x2abfa9(0x1ef)),await _0x414f36['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+formatDate(new Date())+_0x2abfa9(0x1e3)+EXCHANGE+'\x20->\x20'+QUEUE+'\x20('+ROUTING_KEY+')\x20created');}catch(_0x1c7047){if(_0x1c7047[_0x2abfa9(0x1de)]['includes'](_0x3365e8[_0x2abfa9(0x1d0)])&&_0x1c7047['message'][_0x2abfa9(0x1e1)]('x-dead-letter-routing-key'))console[_0x2abfa9(0x1ec)]('\x0a['+formatDate(new Date())+']\x20ERROR:\x20Queue\x20'+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console['error']('Queue\x20'+QUEUE+_0x2abfa9(0x1d9)),console['error'](_0x2abfa9(0x1db)),process['exit'](0x1);else{console['error']('['+_0x3365e8['fpCsw'](formatDate,new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x1c7047['message']);throw _0x1c7047;}}}catch(_0x5673a6){if(!_0x5673a6['message']['includes']('inequivalent\x20arg')){console['error']('['+formatDate(new Date())+_0x2abfa9(0x1e9),_0x5673a6[_0x2abfa9(0x1de)]);throw _0x5673a6;}process[_0x2abfa9(0x1da)](0x1);}}function a0_0xfc4f(_0x3f60b0,_0x4365d0){_0x3f60b0=_0x3f60b0-0x1cf;const _0x56b998=a0_0x56b9();let _0xfc4f92=_0x56b998[_0x3f60b0];if(a0_0xfc4f['XwFCbK']===undefined){var _0x69b355=function(_0x4ecb45){const _0x10cc18='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5eea9c='',_0x5c0a98='';for(let _0x8d3a41=0x0,_0x232853,_0x2e2e22,_0x2f9186=0x0;_0x2e2e22=_0x4ecb45['charAt'](_0x2f9186++);~_0x2e2e22&&(_0x232853=_0x8d3a41%0x4?_0x232853*0x40+_0x2e2e22:_0x2e2e22,_0x8d3a41++%0x4)?_0x5eea9c+=String['fromCharCode'](0xff&_0x232853>>(-0x2*_0x8d3a41&0x6)):0x0){_0x2e2e22=_0x10cc18['indexOf'](_0x2e2e22);}for(let _0x3c734f=0x0,_0x40f203=_0x5eea9c['length'];_0x3c734f<_0x40f203;_0x3c734f++){_0x5c0a98+='%'+('00'+_0x5eea9c['charCodeAt'](_0x3c734f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c0a98);};a0_0xfc4f['JyLJAF']=_0x69b355,a0_0xfc4f['oCJpVc']={},a0_0xfc4f['XwFCbK']=!![];}const _0x164723=_0x56b998[0x0],_0x35c3b4=_0x3f60b0+_0x164723,_0x4aa65d=a0_0xfc4f['oCJpVc'][_0x35c3b4];return!_0x4aa65d?(_0xfc4f92=a0_0xfc4f['JyLJAF'](_0xfc4f92),a0_0xfc4f['oCJpVc'][_0x35c3b4]=_0xfc4f92):_0xfc4f92=_0x4aa65d,_0xfc4f92;}async function closeConnection(_0x3b09f0){const _0x2f3c02=a0_0x33f1c9,_0x455ac7={'tuWnS':function(_0x24cd09,_0x414c53){return _0x24cd09(_0x414c53);}};if(_0x3b09f0)try{await _0x3b09f0[_0x2f3c02(0x1cf)](),console['log']('['+_0x455ac7['tuWnS'](formatDate,new Date())+_0x2f3c02(0x1d6));}catch(_0xd676fd){console[_0x2f3c02(0x1ec)]('['+_0x455ac7['tuWnS'](formatDate,new Date())+']\x20Failed\x20to\x20close\x20RabbitMQ\x20connection:\x20'+_0xd676fd[_0x2f3c02(0x1de)]);}}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};function a0_0x56b9(){const _0x32a5bb=['ignYzwf0zwq','tLzvyxK','xsbsywjIAxrnusbJB25Uzwn0Aw9UignSB3nLza','y29UBMvJDa','mtiWntC5nK5mr0PTCW','ihDHCYbJCMvHDgvKihDPDgGGysbKAwzMzxjLBNqGEc1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEs4','zxHPDa','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG','zgLYzwn0','ndeZnZeWnwfzqvboDa','BwvZC2fNzq','xsbtDwnJzxnZzNvSBhKGy29UBMvJDgvKihrVifjHyMjPDe1r','mJi5mJm1mZzjsKzsEgO','Aw5JBhvKzxm','xsbfEgnOyw5Nzsa','xsbcAw5KAw5Nia','zw52','Aw5LCxvPDMfSzw50igfYzW','CMv0CNKTzxHJAgfUz2u','x3jLDhj5','xsbrDwv1zsa','xsbfCNjVCIbZzxr0Aw5NihvWig1HAw4GCxvLDwu6','xsbszxrYEsbXDwv1zsa','CxvLDwu','zxjYB3i','m2Dbt1fPuW','nZa1mtqWueT2Eff3','ihDPDgGGreXy','mJa0mdnsyvj4A1u','y3jLyxrLq2HHBM5LBa','Bg9N','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbXDwv1ztO','y2XVC2u','tgXWBhK','yxnZzxj0uxvLDwu','mJy3otCWnu92EKD2va','ndm2ndi3ngXtBwzICW'];a0_0x56b9=function(){return _0x32a5bb;};return a0_0x56b9();}
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_0x1f189b=a0_0x19ff;function a0_0x19ff(_0x324c5b,_0x2e7238){_0x324c5b=_0x324c5b-0xbb;const _0x21d52f=a0_0x21d5();let _0x19ffa4=_0x21d52f[_0x324c5b];if(a0_0x19ff['mgktkH']===undefined){var _0x536673=function(_0x13eb2d){const _0x3535ba='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x47303a='',_0xf1e45f='';for(let _0x320eca=0x0,_0x423b63,_0x13fffc,_0x3edc91=0x0;_0x13fffc=_0x13eb2d['charAt'](_0x3edc91++);~_0x13fffc&&(_0x423b63=_0x320eca%0x4?_0x423b63*0x40+_0x13fffc:_0x13fffc,_0x320eca++%0x4)?_0x47303a+=String['fromCharCode'](0xff&_0x423b63>>(-0x2*_0x320eca&0x6)):0x0){_0x13fffc=_0x3535ba['indexOf'](_0x13fffc);}for(let _0x456bc1=0x0,_0x55426c=_0x47303a['length'];_0x456bc1<_0x55426c;_0x456bc1++){_0xf1e45f+='%'+('00'+_0x47303a['charCodeAt'](_0x456bc1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xf1e45f);};a0_0x19ff['poXLue']=_0x536673,a0_0x19ff['JAaXaT']={},a0_0x19ff['mgktkH']=!![];}const _0xee1193=_0x21d52f[0x0],_0x54cb4c=_0x324c5b+_0xee1193,_0x2d2000=a0_0x19ff['JAaXaT'][_0x54cb4c];return!_0x2d2000?(_0x19ffa4=a0_0x19ff['poXLue'](_0x19ffa4),a0_0x19ff['JAaXaT'][_0x54cb4c]=_0x19ffa4):_0x19ffa4=_0x2d2000,_0x19ffa4;}(function(_0x4519eb,_0x480b1b){const _0x336ac9=a0_0x19ff,_0x353033=_0x4519eb();while(!![]){try{const _0x3ab183=parseInt(_0x336ac9(0xd7))/0x1*(-parseInt(_0x336ac9(0xc7))/0x2)+-parseInt(_0x336ac9(0xc3))/0x3+-parseInt(_0x336ac9(0xc8))/0x4+-parseInt(_0x336ac9(0xbb))/0x5*(parseInt(_0x336ac9(0xc9))/0x6)+-parseInt(_0x336ac9(0xc2))/0x7+-parseInt(_0x336ac9(0xd2))/0x8+-parseInt(_0x336ac9(0xcb))/0x9*(-parseInt(_0x336ac9(0xcc))/0xa);if(_0x3ab183===_0x480b1b)break;else _0x353033['push'](_0x353033['shift']());}catch(_0x109e87){_0x353033['push'](_0x353033['shift']());}}}(a0_0x21d5,0x6d55c));const Redis=require(a0_0x1f189b(0xd3)),{logger}=require(a0_0x1f189b(0xd6));class RedisClient{constructor(){const _0x59aeef=a0_0x1f189b;this[_0x59aeef(0xd4)]=null,this['isConnected']=![];}[a0_0x1f189b(0xdb)](){const _0x2a4f84=a0_0x1f189b,_0x6a99b9={'uhpLI':function(_0x8d11d6,_0x323a02){return _0x8d11d6*_0x323a02;},'cKmiH':_0x2a4f84(0xbe),'EXrzA':_0x2a4f84(0xd0),'aKgjD':'redis_disconnected','BNcQJ':'localhost','NAoxl':function(_0x27dd5c,_0x5e921f,_0x3fbd17){return _0x27dd5c(_0x5e921f,_0x3fbd17);},'EnvFe':_0x2a4f84(0xd8)};if(this[_0x2a4f84(0xd4)])return this['client'];try{return this['client']=new Redis({'host':process['env'][_0x2a4f84(0xd1)]||_0x6a99b9['BNcQJ'],'port':parseInt(process[_0x2a4f84(0xda)][_0x2a4f84(0xbf)],0xa)||0x18ec,'password':process[_0x2a4f84(0xda)][_0x2a4f84(0xcd)]||undefined,'db':_0x6a99b9[_0x2a4f84(0xd9)](parseInt,process['env']['REDIS_DB'],0xa)||0x0,'retryStrategy'(_0x560ed6){const _0xb7ccf3=_0x2a4f84,_0x4cd421=Math['min'](_0x6a99b9[_0xb7ccf3(0xc0)](_0x560ed6,0x32),0x7d0);return _0x4cd421;}}),this['client']['on']('connect',()=>{const _0x567ab9=_0x2a4f84;this['isConnected']=!![],logger[_0x567ab9(0xcf)]({'event':_0x6a99b9['cKmiH']},_0x6a99b9[_0x567ab9(0xc5)]);}),this[_0x2a4f84(0xd4)]['on'](_0x2a4f84(0xdf),_0x4dde98=>{const _0xa3ab89=_0x2a4f84;this[_0xa3ab89(0xdd)]=![],logger['error']({'event':_0xa3ab89(0xca),'error':_0x4dde98['message']},_0xa3ab89(0xc6)+_0x4dde98['message']);}),this['client']['on']('close',()=>{const _0x3716f7=_0x2a4f84;this[_0x3716f7(0xdd)]=![],logger['warn']({'event':_0x6a99b9[_0x3716f7(0xde)]},_0x3716f7(0xd5));}),this['client'];}catch(_0x4528ce){logger[_0x2a4f84(0xdf)]({'event':_0x6a99b9['EnvFe'],'error':_0x4528ce[_0x2a4f84(0xc4)]},_0x2a4f84(0xce));throw _0x4528ce;}}[a0_0x1f189b(0xbc)](){const _0x3e01c5=a0_0x1f189b;return!this['client']&&this[_0x3e01c5(0xdb)](),this[_0x3e01c5(0xd4)];}async['ping'](_0x4ed6db=0x1388){const _0x136009={'YjoqB':function(_0x5dc480,_0x2a1982){return _0x5dc480===_0x2a1982;}};try{const _0x5529b7=this['getClient'](),_0x34b31c=await Promise['race']([_0x5529b7['ping'](),new Promise((_0x3bde14,_0x2c1076)=>setTimeout(()=>_0x2c1076(new Error('Redis\x20PING\x20timeout')),_0x4ed6db))]);return _0x136009['YjoqB'](_0x34b31c,'PONG');}catch(_0x904ed3){return![];}}async['disconnect'](){const _0x1ca9b0=a0_0x1f189b;this[_0x1ca9b0(0xd4)]&&(await this[_0x1ca9b0(0xd4)][_0x1ca9b0(0xdc)](),this[_0x1ca9b0(0xd4)]=null,this['isConnected']=![]);}[a0_0x1f189b(0xc1)](){const _0x35609b=a0_0x1f189b;this['client']&&(this['client'][_0x35609b(0xbd)](),this['client']=null,this[_0x35609b(0xdd)]=![]);}}module['exports']=new RedisClient();function a0_0x21d5(){const _0x1342ed=['CxvPDa','AxndB25Uzwn0zwq','yuTNAKq','zxjYB3i','mJiZmty2nxLTu0HezG','z2v0q2XPzw50','zgLZy29UBMvJDa','CMvKAxnFy29UBMvJDgvK','uKvesvnFue9sva','DwHWteK','zM9Yy2veAxnJB25Uzwn0','ndq0ndiWmK56s3HYrW','nZaWmda1AMn4ChLk','BwvZC2fNzq','rvHYEKe','uMvKAxmGy29UBMvJDgLVBIbLCNjVCJOG','nJeYmMj1ufb0qG','mZm0otq0mfbgDNHqwa','nKHoq3zsuq','CMvKAxnFzxjYB3i','mZuXnJKYmdfICwXlrKi','mtbTugHmDvG','uKvesvnFueftu1DpuKq','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','Aw5MBW','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','uKvesvnFse9tva','mZyZmtm2mgrUwhnrrq','Aw9YzwrPCW','y2XPzw50','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','lI9SB2DNzxi','mJC5s2TIq250','CMvKAxnFAw5PDf9LCNjVCG','tKfVEgW','zw52','y29UBMvJDa'];a0_0x21d5=function(){return _0x1342ed;};return a0_0x21d5();}
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_0x3756f8=a0_0xc7ab;(function(_0xc5bede,_0x152ec2){const _0x239350=a0_0xc7ab,_0x1096da=_0xc5bede();while(!![]){try{const _0x9999ee=-parseInt(_0x239350(0x1c8))/0x1*(-parseInt(_0x239350(0x1e7))/0x2)+-parseInt(_0x239350(0x1d7))/0x3+-parseInt(_0x239350(0x1d6))/0x4*(parseInt(_0x239350(0x1cd))/0x5)+parseInt(_0x239350(0x1cf))/0x6*(-parseInt(_0x239350(0x1cb))/0x7)+parseInt(_0x239350(0x1e4))/0x8+-parseInt(_0x239350(0x1e5))/0x9*(-parseInt(_0x239350(0x1d1))/0xa)+parseInt(_0x239350(0x1c7))/0xb*(parseInt(_0x239350(0x1e1))/0xc);if(_0x9999ee===_0x152ec2)break;else _0x1096da['push'](_0x1096da['shift']());}catch(_0x2792ce){_0x1096da['push'](_0x1096da['shift']());}}}(a0_0x1ccd,0xed370));const redisClient=require('./redis-client'),{logger}=require('./logger');class RedisHelper{constructor(){const _0x392978=a0_0xc7ab;this[_0x392978(0x1e2)]=null,this[_0x392978(0x1d2)]=parseInt(process[_0x392978(0x1ce)]['EXPORT_FILE_EXPIRY'],0xa)||0xe10;}get[a0_0x3756f8(0x1da)](){const _0x46072e=a0_0x3756f8;if(!this[_0x46072e(0x1e2)]){const _0x367926=process[_0x46072e(0x1ce)][_0x46072e(0x1e6)]||'default';this['_prefix']=_0x46072e(0x1e8)+_0x367926+':export:';}return this[_0x46072e(0x1e2)];}async[a0_0x3756f8(0x1df)](_0x4bca7d,_0x2ed3ad){const _0x4d1b71=a0_0x3756f8,_0x3ae0c={'prKOk':'redis_set_error'};try{const _0x260f88=redisClient[_0x4d1b71(0x1d9)](),_0x4ecc55=''+this['prefix']+_0x4bca7d;return await _0x260f88['setex'](_0x4ecc55,this['ttl'],JSON[_0x4d1b71(0x1db)](_0x2ed3ad)),!![];}catch(_0x345a05){return logger[_0x4d1b71(0x1d8)]({'event':_0x3ae0c[_0x4d1b71(0x1ca)],'jobId':_0x4bca7d,'error':_0x345a05[_0x4d1b71(0x1d0)]},'Failed\x20to\x20set\x20job\x20in\x20Redis'),![];}}async['getJob'](_0x4b86c0){const _0x355c01=a0_0x3756f8,_0x59aab0={'QMUsA':'Failed\x20to\x20get\x20job\x20from\x20Redis'};try{const _0x31ddc7=redisClient[_0x355c01(0x1d9)](),_0x3a1db2=''+this[_0x355c01(0x1da)]+_0x4b86c0,_0x2a1f22=await _0x31ddc7[_0x355c01(0x1e3)](_0x3a1db2);return _0x2a1f22?JSON['parse'](_0x2a1f22):null;}catch(_0x11db96){return logger['error']({'event':_0x355c01(0x1d4),'jobId':_0x4b86c0,'error':_0x11db96['message']},_0x59aab0['QMUsA']),null;}}async['updateJob'](_0x4b4e0d,_0x3c902b){const _0x2b3b11=a0_0x3756f8,_0x18cb8a=await this[_0x2b3b11(0x1cc)](_0x4b4e0d);if(!_0x18cb8a)return![];const _0x5b89f9={..._0x18cb8a,..._0x3c902b};return await this['setJob'](_0x4b4e0d,_0x5b89f9);}async['deleteJob'](_0x49d458){const _0x5ea807=a0_0x3756f8,_0xe04e74={'cLiKp':'Failed\x20to\x20delete\x20job\x20from\x20Redis'};try{const _0x6898dc=redisClient['getClient'](),_0xa396e2=''+this['prefix']+_0x49d458;return await _0x6898dc[_0x5ea807(0x1e9)](_0xa396e2),!![];}catch(_0x1a6b4b){return logger['error']({'event':_0x5ea807(0x1d5),'jobId':_0x49d458,'error':_0x1a6b4b['message']},_0xe04e74['cLiKp']),![];}}async[a0_0x3756f8(0x1dd)](){const _0x43a12e=a0_0x3756f8,_0x1e6c62={'WQagA':_0x43a12e(0x1de)};try{const _0x158586=redisClient[_0x43a12e(0x1d9)](),_0x3af80f=await _0x158586[_0x43a12e(0x1d3)](this[_0x43a12e(0x1da)]+'*'),_0x59a3d4=[];for(const _0x931019 of _0x3af80f){const _0x10f1bb=await _0x158586[_0x43a12e(0x1e3)](_0x931019);_0x10f1bb&&_0x59a3d4[_0x43a12e(0x1c9)](JSON[_0x43a12e(0x1dc)](_0x10f1bb));}return _0x59a3d4;}catch(_0x27df08){return logger[_0x43a12e(0x1d8)]({'event':_0x1e6c62[_0x43a12e(0x1e0)],'error':_0x27df08[_0x43a12e(0x1d0)]},'Failed\x20to\x20get\x20all\x20jobs'),[];}}}function a0_0xc7ab(_0x2fd742,_0x459441){_0x2fd742=_0x2fd742-0x1c6;const _0x1ccdd9=a0_0x1ccd();let _0xc7aba8=_0x1ccdd9[_0x2fd742];if(a0_0xc7ab['gcALmN']===undefined){var _0x7b8fb5=function(_0x5be2e8){const _0x571743='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x151baf='',_0x260f63='';for(let _0x3e5802=0x0,_0x51bd0d,_0x50cff7,_0x3a42ae=0x0;_0x50cff7=_0x5be2e8['charAt'](_0x3a42ae++);~_0x50cff7&&(_0x51bd0d=_0x3e5802%0x4?_0x51bd0d*0x40+_0x50cff7:_0x50cff7,_0x3e5802++%0x4)?_0x151baf+=String['fromCharCode'](0xff&_0x51bd0d>>(-0x2*_0x3e5802&0x6)):0x0){_0x50cff7=_0x571743['indexOf'](_0x50cff7);}for(let _0x289d20=0x0,_0x152794=_0x151baf['length'];_0x289d20<_0x152794;_0x289d20++){_0x260f63+='%'+('00'+_0x151baf['charCodeAt'](_0x289d20)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x260f63);};a0_0xc7ab['hClVZF']=_0x7b8fb5,a0_0xc7ab['PDvNOF']={},a0_0xc7ab['gcALmN']=!![];}const _0x1bcfdd=_0x1ccdd9[0x0],_0x5771cb=_0x2fd742+_0x1bcfdd,_0x1e5f52=a0_0xc7ab['PDvNOF'][_0x5771cb];return!_0x1e5f52?(_0xc7aba8=a0_0xc7ab['hClVZF'](_0xc7aba8),a0_0xc7ab['PDvNOF'][_0x5771cb]=_0xc7aba8):_0xc7aba8=_0x1e5f52,_0xc7aba8;}module[a0_0x3756f8(0x1c6)]=new RedisHelper();function a0_0x1ccd(){const _0x2662c1=['x3bYzwzPEa','z2v0','nJqYmdaZmK9Nug9lvG','mJq3ndyXm3DYuwntAW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ngnPBujXCW','CMvZDgzVCMDLoG','zgvS','zxHWB3j0CW','mZnOs2DVs0G','ndKYmZq2t0jqBuLY','ChvZAa','Chjlt2S','n01zC0LXzq','z2v0sM9I','odu2mta1EK90Bgrl','zw52','mte0nZe1nZr1thD1BLy','BwvZC2fNzq','mJbSENjly3q','DhrS','A2v5CW','CMvKAxnFz2v0x2vYCM9Y','CMvKAxnFzgvSzxrLx2vYCM9Y','ndbgrffyvuu','ntC3mJqWmMLIq1DXtG','zxjYB3i','z2v0q2XPzw50','ChjLzML4','C3rYAw5NAwz5','CgfYC2u','z2v0qwXSsM9ICW','CMvKAxnFz2v0ywXSx2vYCM9Y','C2v0sM9I','v1fHz0e','mty3mZeXodbishj0uha'];a0_0x1ccd=function(){return _0x2662c1;};return a0_0x1ccd();}
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();