@restforgejs/platform 4.1.0 → 4.2.8

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 (181) hide show
  1. package/LICENSE.md +5 -1
  2. package/README.md +30 -14
  3. package/bin/sdf-tools.exe +0 -0
  4. package/build-info.json +2 -2
  5. package/cli/consumer-deploy.js +1 -1
  6. package/cli/consumer.js +1 -1
  7. package/generators/cli/endpoint/create.js +42 -3
  8. package/generators/cli/schema/apply.js +525 -0
  9. package/generators/cli/schema/diff.js +321 -0
  10. package/generators/cli/schema/generate-ddl.js +7 -10
  11. package/generators/cli/schema/init.js +95 -172
  12. package/generators/cli/schema/migrate.js +10 -16
  13. package/generators/cli/schema/models.js +8 -12
  14. package/generators/cli/schema/template.js +222 -0
  15. package/generators/cli/schema/validate.js +8 -12
  16. package/generators/cli-entry.js +17 -2
  17. package/generators/lib/dbschema-kit/apply-engine.js +582 -0
  18. package/generators/lib/dbschema-kit/diff-engine.js +703 -0
  19. package/generators/lib/dbschema-kit/diff-reporter.js +272 -0
  20. package/generators/lib/dbschema-kit/emitters/alter-table.js +275 -0
  21. package/generators/lib/payload/endpoint-schema-validator.js +171 -0
  22. package/generators/lib/payload/payload-runner.js +137 -220
  23. package/generators/lib/payload/schema-diff.js +277 -0
  24. package/generators/lib/utils/audit-columns.js +181 -0
  25. package/generators/lib/utils/cli-output.js +17 -0
  26. package/generators/lib/utils/database-introspector.js +16 -13
  27. package/integrity-manifest.json +8 -8
  28. package/package.json +4 -4
  29. package/scripts/check-install.js +45 -45
  30. package/scripts/verify-integrity.js +1 -1
  31. package/server.js +1 -1
  32. package/src/components/handlers/adjust_handler.js +1 -1
  33. package/src/components/handlers/audit_handler.js +1 -1
  34. package/src/components/handlers/delete_handler.js +1 -1
  35. package/src/components/handlers/export_handler.js +1 -1
  36. package/src/components/handlers/import_handler.js +1 -1
  37. package/src/components/handlers/insert_handler.js +1 -1
  38. package/src/components/handlers/update_handler.js +1 -1
  39. package/src/components/handlers/upload_handler.js +1 -1
  40. package/src/components/handlers/workflow_handler.js +1 -1
  41. package/src/components/integrations/webhook.js +1 -1
  42. package/src/consumers/baseConsumer.js +1 -1
  43. package/src/consumers/declarativeMapper.js +1 -1
  44. package/src/consumers/handlers/apiHandler.js +1 -1
  45. package/src/consumers/handlers/consoleHandler.js +1 -1
  46. package/src/consumers/handlers/databaseHandler.js +1 -1
  47. package/src/consumers/handlers/index.js +1 -1
  48. package/src/consumers/handlers/kafkaHandler.js +1 -1
  49. package/src/consumers/index.js +1 -1
  50. package/src/consumers/messageTransformer.js +1 -1
  51. package/src/consumers/validator.js +1 -1
  52. package/src/core/db/dialect/base-dialect.js +1 -1
  53. package/src/core/db/dialect/index.js +1 -1
  54. package/src/core/db/dialect/mysql-dialect.js +1 -1
  55. package/src/core/db/dialect/oracle-dialect.js +1 -1
  56. package/src/core/db/dialect/postgres-dialect.js +1 -1
  57. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  58. package/src/core/db/flatten-helper.js +1 -1
  59. package/src/core/db/query-builder-error.js +1 -1
  60. package/src/core/db/query-builder.js +1 -1
  61. package/src/core/db/relation-helper.js +1 -1
  62. package/src/core/handlers/delete_handler.js +1 -1
  63. package/src/core/handlers/insert_handler.js +1 -1
  64. package/src/core/handlers/update_handler.js +1 -1
  65. package/src/core/models/base-model.js +1 -1
  66. package/src/core/utils/cache-manager.js +1 -1
  67. package/src/core/utils/component-engine.js +1 -1
  68. package/src/core/utils/context-builder.js +1 -1
  69. package/src/core/utils/datetime-formatter.js +1 -1
  70. package/src/core/utils/datetime-parser.js +1 -1
  71. package/src/core/utils/db.js +1 -1
  72. package/src/core/utils/logger.js +1 -1
  73. package/src/core/utils/payload-loader.js +1 -1
  74. package/src/core/utils/security-checks.js +1 -1
  75. package/src/middleware/body-options.js +1 -1
  76. package/src/middleware/cors.js +1 -1
  77. package/src/middleware/idempotency.js +1 -1
  78. package/src/middleware/rate-limiter.js +1 -1
  79. package/src/middleware/request-logger.js +1 -1
  80. package/src/middleware/security-headers.js +1 -1
  81. package/src/models/base-model-mysql.js +1 -1
  82. package/src/models/base-model-oracle.js +1 -1
  83. package/src/models/base-model-sqlite.js +1 -1
  84. package/src/models/base-model.js +1 -1
  85. package/src/pro/caching/redis-client.js +1 -1
  86. package/src/pro/caching/redis-helper.js +1 -1
  87. package/src/pro/consumers/baseConsumer.js +1 -1
  88. package/src/pro/consumers/declarativeMapper.js +1 -1
  89. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  90. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  91. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  92. package/src/pro/consumers/handlers/index.js +1 -1
  93. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  94. package/src/pro/consumers/index.js +1 -1
  95. package/src/pro/consumers/messageTransformer.js +1 -1
  96. package/src/pro/consumers/validator.js +1 -1
  97. package/src/pro/database/base-model-mysql.js +1 -1
  98. package/src/pro/database/base-model-oracle.js +1 -1
  99. package/src/pro/database/base-model-sqlite.js +1 -1
  100. package/src/pro/database/db-mysql.js +1 -1
  101. package/src/pro/database/db-oracle.js +1 -1
  102. package/src/pro/database/db-sqlite.js +1 -1
  103. package/src/pro/excel/excel-generator.js +1 -1
  104. package/src/pro/excel/excel-parser.js +1 -1
  105. package/src/pro/excel/export-service.js +1 -1
  106. package/src/pro/excel/export_handler.js +1 -1
  107. package/src/pro/excel/import-service.js +1 -1
  108. package/src/pro/excel/import-validator.js +1 -1
  109. package/src/pro/excel/import_handler.js +1 -1
  110. package/src/pro/excel/upsert-builder.js +1 -1
  111. package/src/pro/idgen/idgen-routes.js +1 -1
  112. package/src/pro/integrations/lookup-resolver.js +1 -1
  113. package/src/pro/integrations/upload-handler-v2.js +1 -1
  114. package/src/pro/integrations/upload-handler.js +1 -1
  115. package/src/pro/integrations/webhook.js +1 -1
  116. package/src/pro/locking/lock-routes.js +1 -1
  117. package/src/pro/locking/resource-lock-manager.js +1 -1
  118. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  119. package/src/pro/messaging/kafkaService.js +1 -1
  120. package/src/pro/messaging/messagehubService.js +1 -1
  121. package/src/pro/messaging/rabbitmqService.js +1 -1
  122. package/src/pro/scheduler/job-manager.js +1 -1
  123. package/src/pro/scheduler/job-routes.js +1 -1
  124. package/src/pro/scheduler/job-validator.js +1 -1
  125. package/src/pro/storage/base-storage-provider.js +1 -1
  126. package/src/pro/storage/file-metadata-helper.js +1 -1
  127. package/src/pro/storage/index.js +1 -1
  128. package/src/pro/storage/local-storage-provider.js +1 -1
  129. package/src/pro/storage/s3-storage-provider.js +1 -1
  130. package/src/pro/storage/upload-cleanup-job.js +1 -1
  131. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  132. package/src/pro/storage/upload-pending-tracker.js +1 -1
  133. package/src/pro/websocket/broadcast-helper.js +1 -1
  134. package/src/pro/websocket/index.js +1 -1
  135. package/src/pro/websocket/livesync-server.js +1 -1
  136. package/src/pro/websocket/ws-broadcaster.js +1 -1
  137. package/src/services/export-service.js +1 -1
  138. package/src/services/import-service.js +1 -1
  139. package/src/services/kafkaConsumerService.js +1 -1
  140. package/src/services/kafkaService.js +1 -1
  141. package/src/services/messagehubService.js +1 -1
  142. package/src/services/rabbitmqService.js +1 -1
  143. package/src/utils/cache-invalidation-registry.js +1 -1
  144. package/src/utils/cache-manager.js +1 -1
  145. package/src/utils/component-engine.js +1 -1
  146. package/src/utils/config-extractor.js +1 -1
  147. package/src/utils/consumerLogger.js +1 -1
  148. package/src/utils/context-builder.js +1 -1
  149. package/src/utils/dashboard-helpers.js +1 -1
  150. package/src/utils/dateHelper.js +1 -1
  151. package/src/utils/datetime-formatter.js +1 -1
  152. package/src/utils/datetime-parser.js +1 -1
  153. package/src/utils/db-bootstrap.js +1 -1
  154. package/src/utils/db-mysql.js +1 -1
  155. package/src/utils/db-oracle.js +1 -1
  156. package/src/utils/db-sqlite.js +1 -1
  157. package/src/utils/db.js +1 -1
  158. package/src/utils/demo-generator.js +1 -1
  159. package/src/utils/excel-generator.js +1 -1
  160. package/src/utils/excel-parser.js +1 -1
  161. package/src/utils/file-watcher.js +1 -1
  162. package/src/utils/id-generator.js +1 -1
  163. package/src/utils/idempotency-manager.js +1 -1
  164. package/src/utils/import-validator.js +1 -1
  165. package/src/utils/license-client.js +1 -1
  166. package/src/utils/lock-manager.js +1 -1
  167. package/src/utils/logger.js +1 -1
  168. package/src/utils/lookup-resolver.js +1 -1
  169. package/src/utils/payload-loader.js +1 -1
  170. package/src/utils/processor-response.js +1 -1
  171. package/src/utils/rabbitmq.js +1 -1
  172. package/src/utils/redis-client.js +1 -1
  173. package/src/utils/redis-helper.js +1 -1
  174. package/src/utils/request-scope.js +1 -1
  175. package/src/utils/security-checks.js +1 -1
  176. package/src/utils/service-resolver.js +1 -1
  177. package/src/utils/shutdown-coordinator.js +1 -1
  178. package/src/utils/trusted-keys.js +1 -1
  179. package/src/utils/upload-handler.js +1 -1
  180. package/src/utils/upsert-builder.js +1 -1
  181. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- function a0_0x5ce6(){const _0xb84f7d=['z2v0q2XPzw50','DLbcre8','zw5HyMXLza','DvzMAwe','DM56quu','C3vIC3rYAw5N','CMvQzwn0','CMvSzwfZzuXVy2S','ntb2AhPKq3i','otKYntLSBLbyAMe','x2vUC3vYzuLUAxrPywXPEMvK','x3bYzwzPEa','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','mJfdqNHuz0W','zgvIDwC','C2XLzxa','zgvMyxvSDfruta','x3jLDhj5q291BNq','D3jPDgvFBg9JA190Aw1LB3v0','ChjLzML4','wNLwyLa','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','x2vUywjSzwq','EvnRsKG','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','BenwvgC','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','oNjLywq6','Cg93','thrhr24','tg9JAYbuveWGzxH0zw5Kzwq','v1jjveuGBg9JAYbYzwXLyxnLza','nJeXotrTsvLyzxO','D3jPDgu','CMv0CNK','tg9JAYbYzwXLyxnLigvYCM9Y','v0rYuxK','zgvJCG','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','ndi3whfvAefM','C2v0zxG','nZm3odKYoxzvwgP5AG','mtm0mde3mMHIBNrrqq','x2LUAxrdB25MAwC','Bg9JA19LEhrLBMrFzxjYB3i','ogXdv1jgva','Aw5JCG','D2fYBG','mtjcs2vrA2S','mhW2FdD8mNW1Fdr8mxWZ','te9ds19esvnuuKLcvvrfrf9ftKfcteve','zxzHBa','ywnXDwLYzvDYAxrLtg9JAW','uKvbrcbSB2nRigfJCxvPCMvK','tg9JAYbLEhrLBMqGzxjYB3i','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','C2v0','s2jAuNG','zxjYB3i','C3rYyxrLz3K','C0XYquu','EvzMALa','DxPosLG','D3jPDgvFBg9JA19YzwXLyxnLza','yNvPBgrmB2nRs2v5','lcbZDhjHDgvNEtOG','x3DVCMTLCKLK','lI9SB2DNzxi','t0nrENC','BwvZC2fNzq','uuPODwq','CMvHza','Der1Bwq','u3jov2K','qvjMwwy','uKvbrcbSB2nRihjLBgvHC2vK','D3jPDgvFBg9JA19LCNjVCG','CMy6Bg9JAZO','rxvYwvq','rhzkzfe','lI9YzwrPCY1JBgLLBNq','CMv0CNLdB3vUDa','z2v0','zw52','BhbvA0K','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','D29YA2vYswq','mJK0odm1zMzAAMro','ChLSweW','x3jLDhj5rgvSyxK','ywXS','AxnfBMfIBgvK','ndCYnJm3ELfQuwrk','A3LKvuG','DKvZCgy','x2rLzMf1BhruveW','z2vUzxjHDgvmB2nRvMfSDwu','nZKXotblD25yrNi'];a0_0x5ce6=function(){return _0xb84f7d;};return a0_0x5ce6();}const a0_0xb8578a=a0_0x1fe3;(function(_0x366874,_0x42d22b){const _0xf3e2d8=a0_0x1fe3,_0x1c424d=_0x366874();while(!![]){try{const _0x24c3b8=parseInt(_0xf3e2d8(0x12f))/0x1+-parseInt(_0xf3e2d8(0x125))/0x2*(-parseInt(_0xf3e2d8(0x133))/0x3)+-parseInt(_0xf3e2d8(0xf4))/0x4*(-parseInt(_0xf3e2d8(0x11b))/0x5)+parseInt(_0xf3e2d8(0x147))/0x6*(parseInt(_0xf3e2d8(0x14e))/0x7)+-parseInt(_0xf3e2d8(0x154))/0x8*(parseInt(_0xf3e2d8(0x150))/0x9)+parseInt(_0xf3e2d8(0x12e))/0xa*(parseInt(_0xf3e2d8(0x120))/0xb)+-parseInt(_0xf3e2d8(0x151))/0xc;if(_0x24c3b8===_0x42d22b)break;else _0x1c424d['push'](_0x1c424d['shift']());}catch(_0x3c11f8){_0x1c424d['push'](_0x1c424d['shift']());}}}(a0_0x5ce6,0x6fff1));const redisClient=require(a0_0xb8578a(0x114)),{logger}=require(a0_0xb8578a(0x107)),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0xc41042=a0_0xb8578a,_0x5d7380={'ySkJH':_0xc41042(0xf5)},_0x11fc24=_0x5d7380[_0xc41042(0x13e)]['split']('|');let _0x2bd37a=0x0;while(!![]){switch(_0x11fc24[_0x2bd37a++]){case'0':this[_0xc41042(0x131)]=null;continue;case'1':this[_0xc41042(0x106)]=null;continue;case'2':this[_0xc41042(0x137)]=null;continue;case'3':this['_initialized']=![];continue;case'4':this['_strategy']=null;continue;case'5':this['_retryDelay']=null;continue;case'6':this[_0xc41042(0x13d)]=null;continue;case'7':this['_defaultTTL']=null;continue;}break;}}[a0_0xb8578a(0x152)](){const _0x4f3f14=a0_0xb8578a,_0x508d04={'uVfia':function(_0x34a5b8,_0x1bdf6a){return _0x34a5b8===_0x1bdf6a;},'SrNWi':function(_0x904090,_0xbf2392,_0x492079){return _0x904090(_0xbf2392,_0x492079);},'vnzAE':function(_0x5369e1,_0x2e2387,_0xab2885){return _0x5369e1(_0x2e2387,_0xab2885);},'DsGqk':function(_0x4d2c73,_0x5a9c36,_0x20a774){return _0x4d2c73(_0x5a9c36,_0x20a774);},'ORqtW':_0x4f3f14(0x149),'ZyVbP':'lock_config_init'};this[_0x4f3f14(0x131)]=_0x4f3f14(0x111),this[_0x4f3f14(0x13d)]=_0x508d04[_0x4f3f14(0x129)](process[_0x4f3f14(0x117)][_0x4f3f14(0xf6)],'true'),this['_defaultTTL']=_0x508d04[_0x4f3f14(0x10d)](parseInt,process[_0x4f3f14(0x117)]['LOCK_DISTRIBUTED_TTL'],0xa)||0xa,this[_0x4f3f14(0x137)]=_0x508d04[_0x4f3f14(0x12a)](parseInt,process[_0x4f3f14(0x117)]['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3,this['_retryDelay']=_0x508d04['DsGqk'](parseInt,process['env'][_0x4f3f14(0x132)],0xa)||0x64,this['_strategy']=process[_0x4f3f14(0x117)][_0x4f3f14(0x13b)]||_0x508d04['ORqtW'],this['_workerId']='worker-'+process['pid'],this['_initialized']=!![],logger['info']({'event':_0x508d04[_0x4f3f14(0x13a)],'enabled':this['_enabled'],'strategy':this['_strategy'],'ttl':this[_0x4f3f14(0x123)],'retryCount':this[_0x4f3f14(0x137)],'retryDelay':this[_0x4f3f14(0x11d)],'workerId':this[_0x4f3f14(0x106)]},_0x4f3f14(0x14d)+this[_0x4f3f14(0x13d)]+_0x4f3f14(0x105)+this['_strategy']);}['_ensureInitialized'](){const _0x5bb3c6=a0_0xb8578a;!this['_initialized']&&this[_0x5bb3c6(0x152)]();}get[a0_0xb8578a(0x139)](){const _0x18955e=a0_0xb8578a;return this[_0x18955e(0x130)](),this[_0x18955e(0x131)];}get['enabled'](){const _0x1beec5=a0_0xb8578a;return this[_0x1beec5(0x130)](),this['_enabled'];}get[a0_0xb8578a(0x136)](){const _0x4250ba=a0_0xb8578a;return this[_0x4250ba(0x130)](),this[_0x4250ba(0x123)];}get['retryCount'](){const _0x4a9f82=a0_0xb8578a;return this['_ensureInitialized'](),this[_0x4a9f82(0x137)];}get['retryDelay'](){const _0x524b0c=a0_0xb8578a;return this[_0x524b0c(0x130)](),this['_retryDelay'];}get['strategy'](){const _0x5bbfc2=a0_0xb8578a;return this[_0x5bbfc2(0x130)](),this['_strategy'];}get[a0_0xb8578a(0x11a)](){const _0x38662f=a0_0xb8578a;return this[_0x38662f(0x130)](),this['_workerId'];}[a0_0xb8578a(0x104)](_0x63189f){const _0x30562a=a0_0xb8578a,{module:_0x3d8ecc,endpoint:_0x2f1e6b,lockType:_0xcb0ed7,recordId:_0x7ff911}=_0x63189f;if(_0x7ff911)return''+this['prefix']+_0x3d8ecc+':'+_0x2f1e6b+':'+_0x7ff911+':'+_0xcb0ed7;return''+this[_0x30562a(0x139)]+_0x3d8ecc+':'+_0x2f1e6b+':'+_0xcb0ed7;}[a0_0xb8578a(0x124)](){const _0x1da936=a0_0xb8578a;return this[_0x1da936(0x11a)]+':'+uuidv4()+':'+Date['now']();}async['acquireReadLock'](_0x3c89f3){const _0x1706e6=a0_0xb8578a,_0x4e039e={'OCQzw':_0x1706e6(0x148),'kydUH':_0x1706e6(0x10b),'QJhud':'read_lock_acquired','WDrQy':'read_lock_waiting','vPBDO':function(_0x3b3ba0,_0x5f2909){return _0x3b3ba0*_0x5f2909;},'yVfjP':'read_lock_error','ruzND':'READ\x20lock\x20error'};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x248141=this['buildLockKey']({..._0x3c89f3,'lockType':_0x4e039e[_0x1706e6(0x108)]}),_0x23548c=this[_0x1706e6(0x104)]({..._0x3c89f3,'lockType':_0x4e039e[_0x1706e6(0x121)]}),_0x49bf22=this[_0x1706e6(0x124)]();try{const _0x722056=redisClient[_0x1706e6(0x126)]();for(let _0x5afa39=0x0;_0x5afa39<this[_0x1706e6(0x115)];_0x5afa39++){const _0x432adf=await _0x722056[_0x1706e6(0x116)](_0x248141);if(!_0x432adf){await _0x722056[_0x1706e6(0x155)](_0x23548c),await _0x722056['expire'](_0x23548c,this['defaultTTL']);const _0x3a6115=_0x23548c+':'+_0x49bf22;return await _0x722056[_0x1706e6(0x14f)](_0x3a6115,this[_0x1706e6(0x136)],_0x49bf22),logger['debug']({'event':_0x4e039e[_0x1706e6(0x10a)],'key':_0x23548c,'value':_0x49bf22},_0x1706e6(0xf9)),{'success':!![],'lockValue':_0x49bf22,'lockKey':_0x3a6115};}logger['debug']({'event':_0x4e039e[_0x1706e6(0x14b)],'writeKey':_0x248141,'attempt':_0x5afa39},'Waiting\x20for\x20WRITE\x20lock\x20to\x20release'),await this[_0x1706e6(0x135)](_0x4e039e[_0x1706e6(0x127)](this['retryDelay'],Math[_0x1706e6(0x143)](0x2,_0x5afa39)));}return logger['warn']({'event':'read_lock_timeout','key':_0x23548c},_0x1706e6(0x13c)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x409a0d){return logger['error']({'event':_0x4e039e[_0x1706e6(0x101)],'error':_0x409a0d['message']},_0x4e039e['ruzND']),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0xb8578a(0xf8)](_0xd79af5){const _0x44bc7e=a0_0xb8578a,_0x21da5a={'ARfYf':_0x44bc7e(0x148),'sLrAE':_0x44bc7e(0x10b),'LtGGn':'reject','bKiBY':function(_0x1a74af,_0x320688){return _0x1a74af===_0x320688;},'TTCNK':'write_lock_rejected','lCVTg':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','uVtLj':function(_0x1a24a0,_0x14c624){return _0x1a24a0<_0x14c624;},'mnVpE':function(_0x13cde3,_0x49210d){return _0x13cde3===_0x49210d;},'vxnYW':_0x44bc7e(0x149),'balGD':'write_lock_waiting','KbZRx':'Waiting\x20for\x20locks\x20to\x20release','EurYT':_0x44bc7e(0x138)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x42efd8=this[_0x44bc7e(0x104)]({..._0xd79af5,'lockType':_0x21da5a[_0x44bc7e(0x10e)]}),_0x2fef92=this[_0x44bc7e(0x104)]({..._0xd79af5,'lockType':_0x21da5a[_0x44bc7e(0x100)]}),_0x26d2f4=this[_0x44bc7e(0x124)]();try{const _0x2817cf=redisClient[_0x44bc7e(0x126)]();if(this[_0x44bc7e(0xff)]===_0x21da5a[_0x44bc7e(0x144)]){const _0x1dc8fc=await _0x2817cf[_0x44bc7e(0xfc)](_0x42efd8,_0x26d2f4,'EX',this['defaultTTL'],'NX');if(_0x21da5a['bKiBY'](_0x1dc8fc,'OK'))return logger[_0x44bc7e(0x134)]({'event':'write_lock_acquired','key':_0x42efd8,'value':_0x26d2f4,'strategy':_0x44bc7e(0x12c)},_0x44bc7e(0x141)),{'success':!![],'lockValue':_0x26d2f4,'lockKey':_0x42efd8};return logger['debug']({'event':_0x21da5a['TTCNK'],'key':_0x42efd8},_0x21da5a[_0x44bc7e(0x140)]),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x16a8e9=0x0;_0x21da5a['uVtLj'](_0x16a8e9,this['retryCount']);_0x16a8e9++){const [_0x57b1d0,_0x3a0610]=await Promise[_0x44bc7e(0x11e)]([_0x2817cf['get'](_0x2fef92),_0x2817cf['get'](_0x42efd8)]);if(!_0x3a0610&&(!_0x57b1d0||_0x21da5a['mnVpE'](parseInt(_0x57b1d0),0x0))){const _0x1a7532=await _0x2817cf['set'](_0x42efd8,_0x26d2f4,'EX',this[_0x44bc7e(0x136)],'NX');if(_0x1a7532==='OK')return logger[_0x44bc7e(0x134)]({'event':'write_lock_acquired','key':_0x42efd8,'value':_0x26d2f4,'strategy':_0x21da5a['vxnYW']},_0x44bc7e(0x119)),{'success':!![],'lockValue':_0x26d2f4,'lockKey':_0x42efd8};}logger['debug']({'event':_0x21da5a['balGD'],'writeKey':_0x42efd8,'readCount':_0x57b1d0,'attempt':_0x16a8e9},_0x21da5a[_0x44bc7e(0xfd)]),await this[_0x44bc7e(0x135)](this['retryDelay']*Math[_0x44bc7e(0x143)](0x2,_0x16a8e9));}return logger[_0x44bc7e(0x156)]({'event':_0x21da5a[_0x44bc7e(0x112)],'key':_0x42efd8},_0x44bc7e(0xfb)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x41b976){return logger[_0x44bc7e(0xfe)]({'event':_0x44bc7e(0x110),'error':_0x41b976[_0x44bc7e(0x109)]},'WRITE\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0xb8578a(0x12d)](_0x112d0e,_0xf1735d){const _0x3e744d=a0_0xb8578a,_0x24f79e={'lEIMH':_0x3e744d(0x142),'tDumd':function(_0x361fb6,_0x1cf2a6){return _0x361fb6>_0x1cf2a6;},'qzhks':function(_0x1f311e,_0x2a00b7){return _0x1f311e(_0x2a00b7);},'tUaKB':_0x3e744d(0x146),'lpUkI':'Cannot\x20release\x20lock\x20-\x20not\x20owner','DvJdQ':_0x3e744d(0x14a)};if(!this[_0x3e744d(0x128)]||!_0x112d0e)return!![];try{const _0x4e9473=redisClient['getClient']();if(_0x112d0e['includes'](_0x24f79e['lEIMH'])){await _0x4e9473['del'](_0x112d0e);const _0xda8e70=_0x112d0e[_0x3e744d(0x12b)](0x0,_0x112d0e['lastIndexOf'](':')),_0x1c7a08=await _0x4e9473[_0x3e744d(0x116)](_0xda8e70);return _0x1c7a08&&_0x24f79e[_0x3e744d(0x10c)](_0x24f79e['qzhks'](parseInt,_0x1c7a08),0x0)&&await _0x4e9473[_0x3e744d(0x14c)](_0xda8e70),logger['debug']({'event':'read_lock_released','key':_0x112d0e},_0x3e744d(0x10f)),!![];}const _0x5b6904=_0x3e744d(0x13f),_0x541050=await _0x4e9473[_0x3e744d(0xf7)](_0x5b6904,0x1,_0x112d0e,_0xf1735d);if(_0x541050===0x1)return logger[_0x3e744d(0x134)]({'event':_0x3e744d(0x103),'key':_0x112d0e},_0x24f79e['tUaKB']),!![];return logger[_0x3e744d(0x156)]({'event':'lock_release_not_owner','key':_0x112d0e},_0x24f79e[_0x3e744d(0x118)]),![];}catch(_0x7d257d){return logger['error']({'event':'lock_release_error','key':_0x112d0e,'error':_0x7d257d['message']},_0x24f79e[_0x3e744d(0x113)]),![];}}async['extendLock'](_0x4226cc,_0x13e287,_0x53d4fc=null){const _0x5b5c3b=a0_0xb8578a,_0x14c710={'uzNJX':function(_0xea007d,_0x1d4486){return _0xea007d===_0x1d4486;},'RxYpf':_0x5b5c3b(0x145),'vEspf':_0x5b5c3b(0xfa)};if(!this['enabled']||!_0x4226cc)return!![];try{const _0x47eee3=redisClient[_0x5b5c3b(0x126)](),_0x3e1908='\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',_0x504f78=await _0x47eee3[_0x5b5c3b(0xf7)](_0x3e1908,0x1,_0x4226cc,_0x13e287,_0x53d4fc||this[_0x5b5c3b(0x136)]);if(_0x14c710[_0x5b5c3b(0x102)](_0x504f78,0x1))return logger[_0x5b5c3b(0x134)]({'event':'lock_extended','key':_0x4226cc,'ttl':_0x53d4fc||this[_0x5b5c3b(0x136)]},_0x14c710['RxYpf']),!![];return![];}catch(_0x9a7e48){return logger['error']({'event':_0x5b5c3b(0x153),'key':_0x4226cc,'error':_0x9a7e48['message']},_0x14c710[_0x5b5c3b(0x122)]),![];}}[a0_0xb8578a(0x11f)](){const _0x403f8e=a0_0xb8578a;return this[_0x403f8e(0x128)];}[a0_0xb8578a(0x135)](_0x28c0bf){return new Promise(_0x45feee=>setTimeout(_0x45feee,_0x28c0bf));}async['getLockInfo'](_0x711dbe){const _0x1bb06c=a0_0xb8578a,_0x2e711f={'dyRIW':function(_0x4af3ca,_0x3a732c){return _0x4af3ca||_0x3a732c;},'pylXL':function(_0x2a9ebb,_0x4292f7){return _0x2a9ebb(_0x4292f7);}};if(!this[_0x1bb06c(0x128)])return{'enabled':![]};try{const _0x1c5ba6=redisClient['getClient'](),_0x4469e4=this[_0x1bb06c(0x104)]({..._0x711dbe,'lockType':'write'}),_0x408ef5=this['buildLockKey']({..._0x711dbe,'lockType':_0x1bb06c(0x10b)}),[_0x15b81f,_0x412b1c]=await Promise['all']([_0x1c5ba6[_0x1bb06c(0x116)](_0x4469e4),_0x1c5ba6['get'](_0x408ef5)]);return{'enabled':!![],'writeLock':_0x2e711f['dyRIW'](_0x15b81f,null),'readCount':_0x2e711f[_0x1bb06c(0x11c)](parseInt,_0x412b1c)||0x0,'writeKey':_0x4469e4,'readKey':_0x408ef5};}catch(_0x1c6b35){return{'enabled':!![],'error':_0x1c6b35['message']};}}}function a0_0x1fe3(_0xdf636d,_0x136c7c){_0xdf636d=_0xdf636d-0xf4;const _0x5ce63c=a0_0x5ce6();let _0x1fe328=_0x5ce63c[_0xdf636d];if(a0_0x1fe3['AxMsgu']===undefined){var _0x278427=function(_0x2070f6){const _0x463c51='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1edca6='',_0x22971b='';for(let _0x1495fe=0x0,_0x47d421,_0x538b3f,_0x36545d=0x0;_0x538b3f=_0x2070f6['charAt'](_0x36545d++);~_0x538b3f&&(_0x47d421=_0x1495fe%0x4?_0x47d421*0x40+_0x538b3f:_0x538b3f,_0x1495fe++%0x4)?_0x1edca6+=String['fromCharCode'](0xff&_0x47d421>>(-0x2*_0x1495fe&0x6)):0x0){_0x538b3f=_0x463c51['indexOf'](_0x538b3f);}for(let _0x52d56d=0x0,_0x5ee7ce=_0x1edca6['length'];_0x52d56d<_0x5ee7ce;_0x52d56d++){_0x22971b+='%'+('00'+_0x1edca6['charCodeAt'](_0x52d56d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x22971b);};a0_0x1fe3['DXseee']=_0x278427,a0_0x1fe3['VDfEiC']={},a0_0x1fe3['AxMsgu']=!![];}const _0x12b8a3=_0x5ce63c[0x0],_0x59b5f4=_0xdf636d+_0x12b8a3,_0xb7d54e=a0_0x1fe3['VDfEiC'][_0x59b5f4];return!_0xb7d54e?(_0x1fe328=a0_0x1fe3['DXseee'](_0x1fe328),a0_0x1fe3['VDfEiC'][_0x59b5f4]=_0x1fe328):_0x1fe328=_0xb7d54e,_0x1fe328;}module['exports']=new LockManager();
1
+ function a0_0x293b(){const _0x5e7597=['z2v0','C2v0zxG','te9ds19esvnuuKLcvvrfrf9uveW','uKvbrcbSB2nRihjLBgvHC2vK','tMLlquy','nJG1oduWmNzMAvfwvq','D29YA2vYswq','x2LUAxrPywXPEMvK','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','swniENy','CMv0CNK','CMjtEeq','zw5HyMXLza','zgvMyxvSDfruta','CMvHzf9SB2nRx2vYCM9Y','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','CMvHza','Eev4BeK','zxHWB3j0CW','C3rYyxrLz3K','C3vIC3rYAw5N','x2vUywjSzwq','ywXS','ChjLzML4','Cg93','x3jLDhj5rgvSyxK','zvvMsNm','x2vUC3vYzuLUAxrPywXPEMvK','zgvIDwC','uMX1C2u','mtaXnJi2odnOtxr3BxG','tKTysfa','mMrqtwTVwq','DxvPza','Bg9JA19JB25MAwDFAw5PDa','mta0ndq2nhbxu0zAtW','zxjYB3i','CMvHzf9SB2nRx3DHAxrPBMC','x3bYzwzPEa','x2rLzMf1BhruveW','z2v0q2XPzw50','D3jPDgvFBg9JA190Aw1LB3v0','zgvJCG','nvL5whjNEq','D3jPDgvFBg9JA193ywL0Aw5N','CMvHzf9SB2nRx3rPBwvVDxq','BwvZC2fNzq','C2XLzxa','Aw5JCG','uKvbrcbSB2nRigvYCM9Y','x3jLDhj5q291BNq','z2vUzxjHDgvmB2nRvMfSDwu','ueLyAgO','D29YA2vYlq','BgfZDeLUzgv4t2y','CMvQzwn0','tg9JAYbLEhrLBMqGzxjYB3i','ohfgDKrSDW','ywnXDwLYzvjLywrmB2nR','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','ndy3nte3zgnhvvDi','zxzHBa','nZCZnde1meD0yujYqW','vKjZBuS','D3jPDgvFBg9JA19LCNjVCG','CMv0CNLdB3vUDa','x3DVCMTLCKLK','tMX4DNK','zw52','mZm3mZiYoe9QCLfRBW','D3jPDgu','zgvS','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','x3n0CMf0zwD5','C2v0','Chf1ugC','z2v0tg9JA0LUzM8','AxnfBMfIBgvK','CMvSzwfZzuXVy2S','te9ds19esvnuuKLcvvrfrf9srvrswq','yNvPBgrmB2nRs2v5','otq5ntK5mhr3t0XJDa','D3jPDgvFBg9JA19Hy3f1AxjLza','mNW1Fdb8m3W3Fdz8mxW0'];a0_0x293b=function(){return _0x5e7597;};return a0_0x293b();}const a0_0x52ebe4=a0_0x591b;(function(_0x46160d,_0x3f3357){const _0x2edb62=a0_0x591b,_0x2b8b0a=_0x46160d();while(!![]){try{const _0x44b45a=-parseInt(_0x2edb62(0x14b))/0x1+parseInt(_0x2edb62(0x148))/0x2*(parseInt(_0x2edb62(0x164))/0x3)+parseInt(_0x2edb62(0x16d))/0x4*(-parseInt(_0x2edb62(0x153))/0x5)+parseInt(_0x2edb62(0x166))/0x6+-parseInt(_0x2edb62(0x181))/0x7+-parseInt(_0x2edb62(0x161))/0x8*(-parseInt(_0x2edb62(0x146))/0x9)+parseInt(_0x2edb62(0x179))/0xa;if(_0x44b45a===_0x3f3357)break;else _0x2b8b0a['push'](_0x2b8b0a['shift']());}catch(_0x565d02){_0x2b8b0a['push'](_0x2b8b0a['shift']());}}}(a0_0x293b,0xa02dd));function a0_0x591b(_0x1bcefa,_0x227354){_0x1bcefa=_0x1bcefa-0x13e;const _0x293bea=a0_0x293b();let _0x591b04=_0x293bea[_0x1bcefa];if(a0_0x591b['YFaNvm']===undefined){var _0x1f6146=function(_0x3a1ee0){const _0x12e886='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x9fc6a='',_0x337119='';for(let _0x48772a=0x0,_0x14ce2b,_0x5b885c,_0x584732=0x0;_0x5b885c=_0x3a1ee0['charAt'](_0x584732++);~_0x5b885c&&(_0x14ce2b=_0x48772a%0x4?_0x14ce2b*0x40+_0x5b885c:_0x5b885c,_0x48772a++%0x4)?_0x9fc6a+=String['fromCharCode'](0xff&_0x14ce2b>>(-0x2*_0x48772a&0x6)):0x0){_0x5b885c=_0x12e886['indexOf'](_0x5b885c);}for(let _0x191b8b=0x0,_0x5ed5fc=_0x9fc6a['length'];_0x191b8b<_0x5ed5fc;_0x191b8b++){_0x337119+='%'+('00'+_0x9fc6a['charCodeAt'](_0x191b8b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x337119);};a0_0x591b['UaPjRe']=_0x1f6146,a0_0x591b['WqxDuL']={},a0_0x591b['YFaNvm']=!![];}const _0x59ebfa=_0x293bea[0x0],_0x3d3b62=_0x1bcefa+_0x59ebfa,_0x3ea47f=a0_0x591b['WqxDuL'][_0x3d3b62];return!_0x3ea47f?(_0x591b04=a0_0x591b['UaPjRe'](_0x591b04),a0_0x591b['WqxDuL'][_0x3d3b62]=_0x591b04):_0x591b04=_0x3ea47f,_0x591b04;}const redisClient=require('./redis-client'),{logger}=require('./logger'),{v4:uuidv4}=require(a0_0x52ebe4(0x149));class LockManager{constructor(){const _0x3f6018=a0_0x52ebe4,_0x17e9ff=_0x3f6018(0x17b)['split']('|');let _0x260988=0x0;while(!![]){switch(_0x17e9ff[_0x260988++]){case'0':this['_defaultTTL']=null;continue;case'1':this['_workerId']=null;continue;case'2':this[_0x3f6018(0x14e)]=null;continue;case'3':this[_0x3f6018(0x15a)]=null;continue;case'4':this['_initialized']=![];continue;case'5':this[_0x3f6018(0x191)]=null;continue;case'6':this[_0x3f6018(0x171)]=null;continue;case'7':this[_0x3f6018(0x141)]=null;continue;}break;}}['_initConfig'](){const _0x145b96=a0_0x52ebe4,_0x48d342={'NiKAF':function(_0x412bdd,_0x5cc83b,_0x33d7fe){return _0x412bdd(_0x5cc83b,_0x33d7fe);},'xExlI':_0x145b96(0x186)};this[_0x145b96(0x14e)]='rf:lock:',this[_0x145b96(0x191)]=process[_0x145b96(0x16c)]['LOCK_DISTRIBUTED_ENABLED']==='true',this['_defaultTTL']=_0x48d342[_0x145b96(0x180)](parseInt,process[_0x145b96(0x16c)][_0x145b96(0x17e)],0xa)||0xa,this[_0x145b96(0x15a)]=_0x48d342['NiKAF'](parseInt,process[_0x145b96(0x16c)][_0x145b96(0x177)],0xa)||0x3,this[_0x145b96(0x141)]=_0x48d342[_0x145b96(0x180)](parseInt,process[_0x145b96(0x16c)]['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64,this[_0x145b96(0x171)]=process['env']['LOCK_DISTRIBUTED_STRATEGY']||_0x48d342[_0x145b96(0x18d)],this['_workerId']=_0x145b96(0x15d)+process['pid'],this[_0x145b96(0x183)]=!![],logger['info']({'event':_0x145b96(0x14a),'enabled':this[_0x145b96(0x191)],'strategy':this['_strategy'],'ttl':this[_0x145b96(0x14f)],'retryCount':this[_0x145b96(0x15a)],'retryDelay':this['_retryDelay'],'workerId':this[_0x145b96(0x16a)]},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x145b96(0x191)]+',\x20strategy:\x20'+this[_0x145b96(0x171)]);}['_ensureInitialized'](){const _0x1272bc=a0_0x52ebe4;!this[_0x1272bc(0x183)]&&this['_initConfig']();}get['prefix'](){const _0x2bcca7=a0_0x52ebe4;return this[_0x2bcca7(0x143)](),this['_prefix'];}get['enabled'](){const _0x244e1d=a0_0x52ebe4;return this['_ensureInitialized'](),this[_0x244e1d(0x191)];}get[a0_0x52ebe4(0x189)](){const _0x1ebb71=a0_0x52ebe4;return this[_0x1ebb71(0x143)](),this['_defaultTTL'];}get['retryCount'](){return this['_ensureInitialized'](),this['_retryCount'];}get['retryDelay'](){const _0x1a0d4d=a0_0x52ebe4;return this[_0x1a0d4d(0x143)](),this['_retryDelay'];}get['strategy'](){const _0x5aca18=a0_0x52ebe4;return this[_0x5aca18(0x143)](),this['_strategy'];}get[a0_0x52ebe4(0x182)](){const _0x5a0998=a0_0x52ebe4;return this[_0x5a0998(0x143)](),this['_workerId'];}['buildLockKey'](_0x25127a){const _0x248e90=a0_0x52ebe4,{module:_0xdb84cc,endpoint:_0x4094c6,lockType:_0x421023,recordId:_0x405236}=_0x25127a;if(_0x405236)return''+this[_0x248e90(0x13f)]+_0xdb84cc+':'+_0x4094c6+':'+_0x405236+':'+_0x421023;return''+this[_0x248e90(0x13f)]+_0xdb84cc+':'+_0x4094c6+':'+_0x421023;}[a0_0x52ebe4(0x15b)](){return this['workerId']+':'+uuidv4()+':'+Date['now']();}async[a0_0x52ebe4(0x162)](_0x19a700){const _0x5054d0=a0_0x52ebe4,_0x4fc2d6={'WRfYZ':'read_lock_acquired','rAsAK':_0x5054d0(0x14d),'rbSxD':function(_0x40e02c,_0x52d232){return _0x40e02c*_0x52d232;},'PIXhj':_0x5054d0(0x155)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x4411df=this[_0x5054d0(0x178)]({..._0x19a700,'lockType':_0x5054d0(0x16e)}),_0xa7bafd=this[_0x5054d0(0x178)]({..._0x19a700,'lockType':'read'}),_0x1c123d=this['generateLockValue']();try{const _0x3d95af=redisClient[_0x5054d0(0x150)]();for(let _0x447032=0x0;_0x447032<this[_0x5054d0(0x169)];_0x447032++){const _0x5765bb=await _0x3d95af['get'](_0x4411df);if(!_0x5765bb){await _0x3d95af[_0x5054d0(0x158)](_0xa7bafd),await _0x3d95af['expire'](_0xa7bafd,this['defaultTTL']);const _0x246e93=_0xa7bafd+':'+_0x1c123d;return await _0x3d95af[_0x5054d0(0x17d)](_0x246e93,this['defaultTTL'],_0x1c123d),logger[_0x5054d0(0x144)]({'event':_0x4fc2d6['WRfYZ'],'key':_0xa7bafd,'value':_0x1c123d},'READ\x20lock\x20acquired'),{'success':!![],'lockValue':_0x1c123d,'lockKey':_0x246e93};}logger[_0x5054d0(0x144)]({'event':_0x4fc2d6['rAsAK'],'writeKey':_0x4411df,'attempt':_0x447032},'Waiting\x20for\x20WRITE\x20lock\x20to\x20release'),await this[_0x5054d0(0x157)](_0x4fc2d6[_0x5054d0(0x187)](this['retryDelay'],Math[_0x5054d0(0x140)](0x2,_0x447032)));}return logger['warn']({'event':_0x4fc2d6[_0x5054d0(0x15c)],'key':_0xa7bafd},'READ\x20lock\x20acquire\x20timeout'),{'success':![],'lockValue':null,'lockKey':null};}catch(_0xf6bbd){return logger[_0x5054d0(0x14c)]({'event':_0x5054d0(0x18a),'error':_0xf6bbd['message']},_0x5054d0(0x159)),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x4b903d){const _0x47de25=a0_0x52ebe4,_0x4c915f={'dyBll':function(_0x2cd61,_0x2336b6){return _0x2cd61===_0x2336b6;},'IcHzv':_0x47de25(0x15f),'cZriK':_0x47de25(0x163),'Amysx':'write_lock_rejected','pquPg':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','dcvJL':function(_0x2683bd,_0x57314f){return _0x2683bd(_0x57314f);},'zJaCQ':function(_0x1b8422,_0x5bf5f3){return _0x1b8422===_0x5bf5f3;},'oieJR':'write_lock_acquired','BFiQj':'retry','pLJvv':_0x47de25(0x170),'VBsmK':_0x47de25(0x18b),'PayIJ':function(_0x1a5847,_0x14c6f6){return _0x1a5847*_0x14c6f6;},'Nlxvy':_0x47de25(0x151),'eUfJs':_0x47de25(0x184),'Fxkjh':_0x47de25(0x168),'Rluse':'WRITE\x20lock\x20error'};if(!this[_0x47de25(0x188)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x523a3a=this['buildLockKey']({..._0x4b903d,'lockType':_0x47de25(0x16e)}),_0xd068d0=this[_0x47de25(0x178)]({..._0x4b903d,'lockType':_0x47de25(0x18c)}),_0xc6cc65=this[_0x47de25(0x15b)]();try{const _0x14ab24=redisClient['getClient']();if(_0x4c915f['dyBll'](this[_0x47de25(0x18f)],_0x4c915f['IcHzv'])){const _0x4f8a06=await _0x14ab24[_0x47de25(0x172)](_0x523a3a,_0xc6cc65,'EX',this[_0x47de25(0x189)],'NX');if(_0x4f8a06==='OK')return logger['debug']({'event':_0x47de25(0x17a),'key':_0x523a3a,'value':_0xc6cc65,'strategy':_0x4c915f[_0x47de25(0x185)]},_0x4c915f['cZriK']),{'success':!![],'lockValue':_0xc6cc65,'lockKey':_0x523a3a};return logger[_0x47de25(0x144)]({'event':_0x4c915f['Amysx'],'key':_0x523a3a},_0x4c915f[_0x47de25(0x173)]),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x669263=0x0;_0x669263<this['retryCount'];_0x669263++){const [_0x4580f8,_0x4efad8]=await Promise[_0x47de25(0x13e)]([_0x14ab24['get'](_0xd068d0),_0x14ab24['get'](_0x523a3a)]);if(!_0x4efad8&&(!_0x4580f8||_0x4c915f['dcvJL'](parseInt,_0x4580f8)===0x0)){const _0x19cd8d=await _0x14ab24[_0x47de25(0x172)](_0x523a3a,_0xc6cc65,'EX',this['defaultTTL'],'NX');if(_0x4c915f['zJaCQ'](_0x19cd8d,'OK'))return logger['debug']({'event':_0x4c915f['oieJR'],'key':_0x523a3a,'value':_0xc6cc65,'strategy':_0x4c915f['BFiQj']},_0x4c915f['pLJvv']),{'success':!![],'lockValue':_0xc6cc65,'lockKey':_0x523a3a};}logger['debug']({'event':_0x47de25(0x154),'writeKey':_0x523a3a,'readCount':_0x4580f8,'attempt':_0x669263},_0x4c915f[_0x47de25(0x167)]),await this[_0x47de25(0x157)](_0x4c915f['PayIJ'](this['retryDelay'],Math['pow'](0x2,_0x669263)));}return logger['warn']({'event':_0x4c915f[_0x47de25(0x16b)],'key':_0x523a3a},_0x4c915f[_0x47de25(0x142)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x1343fb){return logger['error']({'event':_0x4c915f['Fxkjh'],'error':_0x1343fb['message']},_0x4c915f[_0x47de25(0x145)]),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x52ebe4(0x176)](_0x4ec0fa,_0x219910){const _0x26b4cd=a0_0x52ebe4,_0x25ecaf={'ofPIZ':':read:','igKoR':function(_0x20b865,_0x17cd30){return _0x20b865>_0x17cd30;},'NKXHP':_0x26b4cd(0x17f),'OCtCj':'WRITE\x20lock\x20released','drOZz':'lock_release_not_owner','REtlq':'Cannot\x20release\x20lock\x20-\x20not\x20owner','RPKgt':'lock_release_error'};if(!this[_0x26b4cd(0x188)]||!_0x4ec0fa)return!![];try{const _0x90acfc=redisClient[_0x26b4cd(0x150)]();if(_0x4ec0fa['includes'](_0x25ecaf['ofPIZ'])){await _0x90acfc[_0x26b4cd(0x16f)](_0x4ec0fa);const _0x515659=_0x4ec0fa[_0x26b4cd(0x190)](0x0,_0x4ec0fa[_0x26b4cd(0x15e)](':')),_0x36e573=await _0x90acfc['get'](_0x515659);return _0x36e573&&_0x25ecaf['igKoR'](parseInt(_0x36e573),0x0)&&await _0x90acfc[_0x26b4cd(0x152)](_0x515659),logger[_0x26b4cd(0x144)]({'event':'read_lock_released','key':_0x4ec0fa},_0x25ecaf[_0x26b4cd(0x147)]),!![];}const _0x540c89='\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',_0x53302f=await _0x90acfc['eval'](_0x540c89,0x1,_0x4ec0fa,_0x219910);if(_0x53302f===0x1)return logger['debug']({'event':'write_lock_released','key':_0x4ec0fa},_0x25ecaf['OCtCj']),!![];return logger['warn']({'event':_0x25ecaf['drOZz'],'key':_0x4ec0fa},_0x25ecaf['REtlq']),![];}catch(_0x2f232d){return logger['error']({'event':_0x25ecaf['RPKgt'],'key':_0x4ec0fa,'error':_0x2f232d['message']},'Lock\x20release\x20error'),![];}}async['extendLock'](_0x2fc60d,_0x122b9d,_0x2ba540=null){const _0x4b1f43=a0_0x52ebe4,_0x549cb7={'DqVeP':'Lock\x20TTL\x20extended','msfOo':_0x4b1f43(0x160)};if(!this[_0x4b1f43(0x188)]||!_0x2fc60d)return!![];try{const _0x2e8a9e=redisClient['getClient'](),_0xc4946a='\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',_0x145a60=await _0x2e8a9e[_0x4b1f43(0x165)](_0xc4946a,0x1,_0x2fc60d,_0x122b9d,_0x2ba540||this[_0x4b1f43(0x189)]);if(_0x145a60===0x1)return logger['debug']({'event':'lock_extended','key':_0x2fc60d,'ttl':_0x2ba540||this[_0x4b1f43(0x189)]},_0x549cb7['DqVeP']),!![];return![];}catch(_0x3fc569){return logger[_0x4b1f43(0x14c)]({'event':'lock_extend_error','key':_0x2fc60d,'error':_0x3fc569[_0x4b1f43(0x156)]},_0x549cb7['msfOo']),![];}}[a0_0x52ebe4(0x175)](){return this['enabled'];}['sleep'](_0x5c9c05){return new Promise(_0xf0a85=>setTimeout(_0xf0a85,_0x5c9c05));}async[a0_0x52ebe4(0x174)](_0x2961e7){const _0x3912ab=a0_0x52ebe4,_0x4954ea={'JDFep':function(_0x2d2dcc,_0x465bb6){return _0x2d2dcc||_0x465bb6;}};if(!this['enabled'])return{'enabled':![]};try{const _0x7e64df=redisClient['getClient'](),_0x217bc5=this['buildLockKey']({..._0x2961e7,'lockType':'write'}),_0x36e7ca=this[_0x3912ab(0x178)]({..._0x2961e7,'lockType':_0x3912ab(0x18c)}),[_0x4cd4cf,_0x544553]=await Promise['all']([_0x7e64df['get'](_0x217bc5),_0x7e64df[_0x3912ab(0x17c)](_0x36e7ca)]);return{'enabled':!![],'writeLock':_0x4954ea['JDFep'](_0x4cd4cf,null),'readCount':parseInt(_0x544553)||0x0,'writeKey':_0x217bc5,'readKey':_0x36e7ca};}catch(_0x48922b){return{'enabled':!![],'error':_0x48922b[_0x3912ab(0x156)]};}}}module[a0_0x52ebe4(0x18e)]=new LockManager();
@@ -1 +1 @@
1
- const a0_0xc69f3=a0_0x337a;function a0_0x5427(){const _0x2731a0=['uMP4zLm','z0Pcs1q','q1zgrfy','yMfZzvvYBa','rfjpua','Aw5MBW','yxbWlMXVzW','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','u0vmrunu','B3jPz2LUywXvCMW','ANPuzvG','y29Kzq','u25IqNK','y29UBMvJDgLVBG','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','ChjPDMf0zwTLEq','Ec1Yzxf1zxn0lwLK','Bw9KDwXL','Cej4CgO','sgDLyvu','tI9b','t2fkC2u','ntGYnZaXENzfsM9H','qujqsxy','w1jfrefdvevexq','DhLWzq','ig9UihbVCNqG','D2fYBG','icbvuKW6icaGia','C3rYAw5N','vvbeqvrf','Ahj0Aw1L','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','vNDrDfa','CMvWBgfJzq','mZqXvefrCeXx','tK9erv9ftLy','icbizwfSDgG6ia','qunusvzf','ic0G','mZaWndG0mePwDhjiEq','rgf0ywjHC2u6ia','zxjYB3iUBg9N','tMPYs2e','A2v5CW','w1jfrefdveveoNrVA2vUxq','CMvZDgzVCMDL','iokvKqRILzeGienVBMzPzYaGicaGidOG','mtaWmZGWtfLzEgjn','vvLnrK0','BxjNCve','y29UzMLNrMLSzq','y0LvELy','qNLir2i','C2vJCMv0','Cgf0Aa','Bwf0y2G','Ahr0Cf9Yzxf1zxn0','wNrWuMO','E21Zz30','iokvKqRILzeGifbVCNqGicaGicaGidOG','veLYEfm','C3rHDhvZq29Kzq','u01dBgy','ChjPDMf0zv9RzxK','rermx0rst1a','D0HTB28','icbjBMzVoIaGia','vu5ltK9xtG','Dxb0Aw1L','y3jLzgvUDgLHBa','C2vYDMLJzuLUzM8','zMP1wMW','u1rbuLqGvfjbtLnbq1rjt04','rxjYB3i','C3rHy2S','AxnVvgLTzq','u1fmx0Xpr19ftKfcteve','DvrrzMK','ywLqDvu','tuTlruG','q09ntuLu','CgfYyw1Z','qKvhsu4','ChjVzhvJDgLVBG','EKX0wMG','Aw5JBhvKzxm','y3z2','zxHPC3rZu3LUyW','yxbPA2v5','zw52AxjVBM1LBNq','CMvWzwf0','Dg9gAxHLza','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','zMfSC2u','BwTKAxjtEw5J','mtu1mJyXnNrVvKDmsq','u1LtoKHioK1noNnZ','BK1RCw4','lI9SB2DZlW','zgf0ywjHC2vFy29UzMLN','shr4AeC','CgLUBY1WCMv0DhK','Dhj1zq','yxbPs2v5','nw5nz01Stq','reiGuxvLCNK','vuTPEMG','uK9mtejbq0S','yxbPx2TLEq','zMLSzv9SB2DNAw5Nx2vUywjSzwq','yxLItM4','C2vYDMvYx3n0yxj0Aw5N','BwfW','zMf0ywW','t1n5zeC','ChjVAMvJDa','C3rHCNrZv2L0Aa','Dg9ju09tDhjPBMC','r2jxyxu','Ag9ZDa','AgvHBhrOq2HLy2S','t1zjCuG','C3vIC3rYAw5N','ovL4t1rguq','Bwv0Ag9K','zgvIDwC','ChjVy2vZC193yxjUAw5N','BMfTzq','tM9Kzs5QCW','zhvYyxrPB25nCW','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','tLjvCKO','su5trvju','C1fIzNa','uffswNi','vhLhsLq','yMfqtvG','yxjQAxm','rfnAt28','z3jKvMW','iokvKqRILzeGifbYB2PLy3qGicaGidOG','rhLlD3O','Cg9ZDgDYzxnXBa','Ahr0Cf9LCNjVCG','zw52','CgfZC3DVCMq','ChjVAMvJDf9SB2fKzwq','mti5odHADgLzA0q','C3rKu2vYAwfSAxPLCNm','yKv1Ewi','wwH5zMG','mJm0otyWyK1vBe1y','zxjYB3i','zxjY','ms4WlJu','DgvZDa','zgv2zwXVCg1LBNq','y3jLzgL0x2nHCMq','Bwf4','zxHPDa','CMvZB2X2zq','zMXVB3i','y3jLyxrLv3jPDgvtDhjLyw0','BwvZC2fNzq','vhjHBNnHy3rPB24G','vfjbtLnbq1rjt05Fq09ntuLu','DhjPBq','te9hx0rjuG','C3fSx3f1zxj5','yu1bD3a','DMLntvK','r3HHv1e','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','C3nU','CgfZC3DK','vuros3y','CMvTB3rLqwrKCMvZCW','Cg9YDa','DxjS','iokvKqRILzeGiefqssblzxKGicaGidOG','CgfKrw5K','EKnQwui','u2vYDMvYihn0yxj0Aw5NoIa','u1fmx0Xpr19qqvjbtvm','C2vYDMvYx3jLywr5','ChDK','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','ANnVBG','y1zbugW','zvrwwgy','zgjFDhjHBNnHy3rPB24','uhjVy2vZCYbxyxjUAw5NoIa','ugfzyxO','wuXwBwG','q1jjveLdquW','qxLqwg0','qvbqx1zfuLnjt04','te9hx1rpx0zjteu','ndv4y0rfC2u','rhn3C2O','C29Tzq','zgf0ywjHC2u','ywnJzxnZx3rVA2vU','Dg9mB3DLCKnHC2u','BgvUz3rO','uePqEKe','AgvHzgvYCW','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','Dg9vChbLCKnHC2u','vfjbtLnbq1rjt05FuK9mtejbq0S','Bg9N','oI8V','C3rHDhvZ','ndCYmZqXEMfHr29A','B2jQzwn0','oejHy0DNzW','wKPHy0u','z2v0sgvHzgvYCW'];a0_0x5427=function(){return _0x2731a0;};return a0_0x5427();}(function(_0x4b18d6,_0xf0a113){const _0x283dc9=a0_0x337a,_0x55e7ed=_0x4b18d6();while(!![]){try{const _0x37d756=parseInt(_0x283dc9(0x133))/0x1*(-parseInt(_0x283dc9(0x82))/0x2)+parseInt(_0x283dc9(0xc4))/0x3*(parseInt(_0x283dc9(0xc6))/0x4)+-parseInt(_0x283dc9(0xb5))/0x5*(parseInt(_0x283dc9(0xf9))/0x6)+-parseInt(_0x283dc9(0xdf))/0x7+-parseInt(_0x283dc9(0x12a))/0x8+parseInt(_0x283dc9(0x6a))/0x9*(-parseInt(_0x283dc9(0xf1))/0xa)+parseInt(_0x283dc9(0xec))/0xb*(parseInt(_0x283dc9(0x86))/0xc);if(_0x37d756===_0xf0a113)break;else _0x55e7ed['push'](_0x55e7ed['shift']());}catch(_0x322626){_0x55e7ed['push'](_0x55e7ed['shift']());}}}(a0_0x5427,0x27506));const pino=require('pino'),fs=require('fs'),path=require('path');let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x337a(_0x4a68b4,_0x4a5bd7){_0x4a68b4=_0x4a68b4-0x6a;const _0x542774=a0_0x5427();let _0x337a29=_0x542774[_0x4a68b4];if(a0_0x337a['XdFfIQ']===undefined){var _0x5e69b7=function(_0x43796f){const _0x52cf40='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1b8e1e='',_0x8a25ac='';for(let _0x10c9e7=0x0,_0x301eef,_0xe165b7,_0x23cdc9=0x0;_0xe165b7=_0x43796f['charAt'](_0x23cdc9++);~_0xe165b7&&(_0x301eef=_0x10c9e7%0x4?_0x301eef*0x40+_0xe165b7:_0xe165b7,_0x10c9e7++%0x4)?_0x1b8e1e+=String['fromCharCode'](0xff&_0x301eef>>(-0x2*_0x10c9e7&0x6)):0x0){_0xe165b7=_0x52cf40['indexOf'](_0xe165b7);}for(let _0x207e72=0x0,_0x5ec543=_0x1b8e1e['length'];_0x207e72<_0x5ec543;_0x207e72++){_0x8a25ac+='%'+('00'+_0x1b8e1e['charCodeAt'](_0x207e72)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x8a25ac);};a0_0x337a['mEevHK']=_0x5e69b7,a0_0x337a['KMFVQR']={},a0_0x337a['XdFfIQ']=!![];}const _0x3eaf44=_0x542774[0x0],_0x45914f=_0x4a68b4+_0x3eaf44,_0x47e027=a0_0x337a['KMFVQR'][_0x45914f];return!_0x47e027?(_0x337a29=a0_0x337a['mEevHK'](_0x337a29),a0_0x337a['KMFVQR'][_0x45914f]=_0x337a29):_0x337a29=_0x47e027,_0x337a29;}const prettyPrintOptions={'colorize':!![],'translateTime':a0_0xc69f3(0x12b),'ignore':a0_0xc69f3(0xa9),'singleLine':![],'levelFirst':!![],'messageFormat':a0_0xc69f3(0x104),'customColors':a0_0xc69f3(0xd0),'hideObject':!![]},isDevelopment=process['env'][a0_0xc69f3(0xed)]!==a0_0xc69f3(0x11d),logLevel=process['env']['LOG_LEVEL']||a0_0xc69f3(0xce);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0xc69f3(0x130),'options':prettyPrintOptions}:undefined,'base':{'service':a0_0xc69f3(0xf7),'version':process['env'][a0_0xc69f3(0xb3)]||a0_0xc69f3(0x89),'env':process['env']['NODE_ENV']||a0_0xc69f3(0x8b)},'timestamp':pino['stdTimeFunctions'][a0_0xc69f3(0x115)],'redact':{'paths':['req.headers.authorization',a0_0xc69f3(0x9b),a0_0xc69f3(0x80),'token',a0_0xc69f3(0x132),'DB_PASSWORD','JWT_SECRET'],'censor':'[REDACTED]'},'serializers':{'req':_0x1ac3fc=>({'id':_0x1ac3fc['id'],'method':_0x1ac3fc['method'],'url':_0x1ac3fc['url'],'path':_0x1ac3fc['path'],'remoteAddress':_0x1ac3fc['ip']||_0x1ac3fc['connection']?.[a0_0xc69f3(0x9f)]}),'res':_0x4e52cd=>({'statusCode':_0x4e52cd['statusCode'],'headers':_0x4e52cd[a0_0xc69f3(0xc8)]?.()}),'err':pino[a0_0xc69f3(0x83)][a0_0xc69f3(0x88)]}});function initFileLogging(){const _0x41a49a=a0_0xc69f3,_0x3e9b01={'NLaIo':'true','CVFDV':'debug','ZbAfY':function(_0x453924,_0xd8e7a3){return _0x453924!==_0xd8e7a3;},'NRUrJ':_0x41a49a(0xcf),'kSshc':_0x41a49a(0xf3)};if(fileLoggingInitialized)return;logToFile=process[_0x41a49a(0x7f)][_0x41a49a(0xb4)]===_0x3e9b01['NLaIo'];const _0x44a7b6=process[_0x41a49a(0x7f)]['RESTFORGE_PROJECT_NAME']||'default';logDir=process['env'][_0x41a49a(0x96)]||_0x41a49a(0x12d)+_0x44a7b6,serviceName=process['env']['SERVICE_NAME']||_0x41a49a(0xf7),sqlLogEnabled=process[_0x41a49a(0x7f)][_0x41a49a(0x116)]===_0x41a49a(0x131),sqlLogLevel=process['env']['SQL_LOG_LEVEL']||_0x3e9b01[_0x41a49a(0xcb)],sqlLogParams=_0x3e9b01['ZbAfY'](process['env'][_0x41a49a(0xa6)],_0x41a49a(0x128)),sqlLogSlowThreshold=parseInt(process[_0x41a49a(0x7f)]['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x376659=path[_0x41a49a(0x8f)](process['cwd'](),logDir);try{!fs[_0x41a49a(0x121)](_0x376659)&&fs[_0x41a49a(0x129)](_0x376659,{'recursive':!![]});}catch(_0x417240){console[_0x41a49a(0x87)]('Failed\x20to\x20create\x20log\x20directory\x20'+_0x376659+':',_0x417240['message']),fileLoggingInitialized=!![];return;}const _0xe02f84=path['join'](_0x376659,_0x3e9b01[_0x41a49a(0x72)]),_0xc5cd77=path['join'](_0x376659,_0x41a49a(0xf3));try{appLogStream=fs['createWriteStream'](_0xe02f84,{'flags':'a'}),errorLogStream=fs[_0x41a49a(0x91)](_0xc5cd77,{'flags':'a'}),fileLoggingInitialized=!![];const _0xd15521={'event':_0x41a49a(0x138),'logDir':_0x376659,'files':[_0x3e9b01['NRUrJ'],_0x3e9b01['kSshc']]},_0xc6762a=_0x41a49a(0xe9)+_0x376659;logger[_0x41a49a(0xce)](_0xd15521,_0xc6762a),writeToFileLog({..._0xd15521,'level':_0x41a49a(0xce),'msg':_0xc6762a,'time':new Date()[_0x41a49a(0x140)]()},'info');}catch(_0x14ee1d){console['error']('Failed\x20to\x20create\x20log\x20streams:',_0x14ee1d[_0x41a49a(0x92)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x514618,_0x52c6b5){const _0x5bbe88=a0_0xc69f3,_0x84fccb={'grdVl':function(_0x2304db,_0x4e8c96){return _0x2304db===_0x4e8c96;},'arjis':_0x5bbe88(0x87)};if(!logToFile||!appLogStream)return;const _0x16b569={'service':serviceName,..._0x514618},_0x534542=JSON['stringify'](_0x16b569)+'\x0a';appLogStream['write'](_0x534542),(_0x84fccb[_0x5bbe88(0x7a)](_0x52c6b5,_0x84fccb[_0x5bbe88(0x78)])||_0x52c6b5===_0x5bbe88(0x13c))&&(errorLogStream&&errorLogStream['write'](_0x534542));}const createRequestLogger=(_0x142627={})=>{return logger['child'](_0x142627);},logServerStart=_0xd9ec84=>{const _0x219d23=a0_0xc69f3,_0x4ebcbc={'DyKwz':_0x219d23(0x126),'FEvPp':function(_0x30738f,_0x4ab698){return _0x30738f/_0x4ab698;},'LvOYx':'Default','baPMX':_0x219d23(0xef),'IDagv':'NOT\x20ACTIVE','DSZOo':_0x219d23(0xce)},_0x187574=_0x4ebcbc[_0x219d23(0x7c)],_0x555b54=Math[_0x219d23(0x8d)](0x0,0x37-_0x187574[_0x219d23(0xbb)]),_0x434cf6=Math[_0x219d23(0x90)](_0x4ebcbc['FEvPp'](_0x555b54,0x2)),_0x52d295=_0x555b54-_0x434cf6,_0x22434f='║'+'\x20'[_0x219d23(0x124)](_0x434cf6)+_0x187574+'\x20'['repeat'](_0x52d295)+'║',_0x375249=_0x219d23(0x127)+_0x22434f+_0x219d23(0xd7)+(_0xd9ec84[_0x219d23(0x123)]||_0x219d23(0x6f))['padEnd'](0x26)+_0x219d23(0x7b)+(_0xd9ec84[_0x219d23(0x13e)]||_0x219d23(0xdd))['padEnd'](0x26)+_0x219d23(0x105)+String(_0xd9ec84[_0x219d23(0xa0)]||0xbb8)[_0x219d23(0xa3)](0x26)+_0x219d23(0xf8)+(_0xd9ec84[_0x219d23(0xfc)]||_0x4ebcbc['LvOYx'])[_0x219d23(0xa3)](0x26)+_0x219d23(0xa2)+(_0xd9ec84['apiKey']?_0x4ebcbc[_0x219d23(0x77)]:_0x4ebcbc['IDagv'])[_0x219d23(0xa3)](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x219d23(0xc1)](_0x375249);const _0x47904b={'event':_0x219d23(0x13a),'project':_0xd9ec84['project'],'port':_0xd9ec84['port'],'config':_0xd9ec84[_0x219d23(0xfc)],'apiKeyEnabled':!!_0xd9ec84['apiKey']};logger[_0x219d23(0xce)](_0x47904b),writeToFileLog({..._0x47904b,'level':_0x4ebcbc['DSZOo'],'msg':_0x219d23(0xa5)+_0xd9ec84[_0x219d23(0x13e)]+_0x219d23(0xe3)+_0xd9ec84[_0x219d23(0xa0)],'time':new Date()[_0x219d23(0x140)]()},_0x4ebcbc[_0x219d23(0x79)]);},logServerReady=_0x2cb42a=>{const _0x4f550b=a0_0xc69f3,_0x34f0ae={'sxDIv':_0x4f550b(0xa7)},_0x3f4b6f={'event':_0x34f0ae['sxDIv'],'port':_0x2cb42a[_0x4f550b(0xa0)],'module':_0x2cb42a[_0x4f550b(0xda)],'healthCheck':_0x2cb42a['healthCheck'],'serviceInfo':_0x2cb42a['serviceInfo'],'baseUrl':_0x2cb42a[_0x4f550b(0xcc)]},_0x16d8bc='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x2cb42a['port'];logger['info'](_0x3f4b6f,_0x16d8bc),writeToFileLog({..._0x3f4b6f,'level':'info','msg':_0x16d8bc,'time':new Date()[_0x4f550b(0x140)]()},_0x4f550b(0xce)),_0x2cb42a['healthCheck']&&logger['info'](_0x4f550b(0xee)+_0x2cb42a[_0x4f550b(0x143)]),_0x2cb42a[_0x4f550b(0x110)]&&logger[_0x4f550b(0xce)](_0x4f550b(0x10c)+_0x2cb42a['serviceInfo']),_0x2cb42a['baseUrl']&&logger[_0x4f550b(0xce)](_0x4f550b(0xe5)+_0x2cb42a['baseUrl']);},logProjectLoaded=(_0x49ecb1,_0x3ece07)=>{const _0x28e39a=a0_0xc69f3,_0x5ca0fc={'UOOll':_0x28e39a(0x81),'AyPXm':function(_0xf8fe7a,_0xbfa633,_0x10bac5){return _0xf8fe7a(_0xbfa633,_0x10bac5);},'PQRZr':'info'},_0x34672b={'event':_0x5ca0fc['UOOll'],'project':_0x49ecb1,'path':_0x3ece07},_0x2ab795='[OK]\x20Project\x20loaded:\x20'+_0x49ecb1;logger[_0x28e39a(0xce)](_0x34672b,_0x2ab795),_0x5ca0fc[_0x28e39a(0xb2)](writeToFileLog,{..._0x34672b,'level':_0x5ca0fc['PQRZr'],'msg':_0x2ab795,'time':new Date()[_0x28e39a(0x140)]()},_0x5ca0fc[_0x28e39a(0x75)]);},logEndpointRegistered=(_0x157a6b,_0x72aad5)=>{const _0x1b184d=a0_0xc69f3,_0x1a67b5={'qWHYZ':'debug'},_0x356963={'event':'endpoint_registered','endpoint':_0x157a6b,'route':_0x72aad5},_0x9bb17e='\x20\x20→\x20'+_0x157a6b+':\x20'+_0x72aad5;logger['debug'](_0x356963,_0x9bb17e),writeToFileLog({..._0x356963,'level':'debug','msg':_0x9bb17e,'time':new Date()[_0x1b184d(0x140)]()},_0x1a67b5['qWHYZ']);},logDatabaseConfig=_0x43715f=>{const _0x262a01=a0_0xc69f3,_0x40c9d9={'gFflE':_0x262a01(0x12e),'GQefw':function(_0x405bcb,_0x45a790,_0x20c32b){return _0x405bcb(_0x45a790,_0x20c32b);},'GxaWQ':_0x262a01(0x6c)},_0x3b3343={'event':_0x40c9d9['gFflE'],'host':_0x43715f[_0x262a01(0x142)],'port':_0x43715f[_0x262a01(0xa0)],'database':_0x43715f[_0x262a01(0xb8)],'type':_0x43715f['type'],'user':_0x43715f['user']},_0x1da5ba=_0x262a01(0xf2)+_0x43715f[_0x262a01(0xe2)]+_0x262a01(0xc2)+_0x43715f['host']+':'+_0x43715f['port']+'/'+_0x43715f['database'];logger['debug'](_0x3b3343,_0x1da5ba),_0x40c9d9['GQefw'](writeToFileLog,{..._0x3b3343,'level':_0x40c9d9[_0x262a01(0x9a)],'msg':_0x1da5ba,'time':new Date()['toISOString']()},_0x40c9d9['GxaWQ']);},logRequest=(_0x1b9ab4,_0xb3cb90,_0x3af855)=>{const _0x382466=a0_0xc69f3,_0x1bf294={'SlSPn':_0x382466(0x87),'aiPuU':function(_0x37ef3b,_0x1cccb5){return _0x37ef3b>=_0x1cccb5;},'hVwMF':_0x382466(0xe4),'wHmoo':function(_0x2262f9,_0x5a879a,_0x5cc192){return _0x2262f9(_0x5a879a,_0x5cc192);}},_0x5b97b1={'event':_0x382466(0x102),'method':_0x1b9ab4['method'],'path':_0x1b9ab4['path'],'statusCode':_0xb3cb90[_0x382466(0x107)],'durationMs':_0x3af855,'ip':_0x1b9ab4['ip']},_0x12b721=_0x1b9ab4[_0x382466(0x6b)]+'\x20'+_0x1b9ab4[_0x382466(0x100)]+_0x382466(0xf0)+_0xb3cb90['statusCode']+'\x20('+_0x3af855+'ms)';let _0x5c3338=_0x382466(0xce);if(_0xb3cb90[_0x382466(0x107)]>=0x1f4)_0x5c3338=_0x1bf294['SlSPn'],logger[_0x382466(0x87)](_0x5b97b1,_0x12b721);else _0x1bf294[_0x382466(0x118)](_0xb3cb90[_0x382466(0x107)],0x190)?(_0x5c3338=_0x1bf294['hVwMF'],logger[_0x382466(0xe4)](_0x5b97b1,_0x12b721)):logger['info'](_0x5b97b1,_0x12b721);_0x1bf294[_0x382466(0x10b)](writeToFileLog,{..._0x5b97b1,'level':_0x5c3338,'msg':_0x12b721,'time':new Date()[_0x382466(0x140)]()},_0x5c3338);},SENSITIVE_PARAM_PATTERNS=[a0_0xc69f3(0x80),a0_0xc69f3(0x9d),a0_0xc69f3(0xa8),'token',a0_0xc69f3(0xb9),'refresh_token',a0_0xc69f3(0xff),'api_secret',a0_0xc69f3(0x122),a0_0xc69f3(0x137),a0_0xc69f3(0x10f),'credentials','pin','otp','private_key',a0_0xc69f3(0xd8)],redactSensitiveParams=(_0x5bd144,_0x25a3a5)=>{const _0x42b0cc=a0_0xc69f3,_0x4f7c6e={'hANXR':function(_0x2e23e9,_0x2e6d92){return _0x2e23e9>_0x2e6d92;},'ABPIv':'[REDACTED:hash]'};if(!_0x5bd144||_0x5bd144['length']===0x0)return _0x5bd144;const _0x284593=_0x25a3a5[_0x42b0cc(0xba)](),_0xc07bf5=_0x284593['match'](/\(([^)]+)\)\s*values/i);let _0x41fd30=[];_0xc07bf5&&(_0x41fd30=_0xc07bf5[0x1]['split'](',')['map'](_0x3d0d63=>_0x3d0d63[_0x42b0cc(0x95)]()[_0x42b0cc(0xba)]()));const _0x120c87=_0x284593['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x120c87){const _0x11c323=_0x120c87[0x1],_0x50b334=_0x11c323['match'](/(\w+)\s*=/g);_0x50b334&&(_0x41fd30=_0x50b334['map'](_0x1a58c1=>_0x1a58c1[_0x42b0cc(0xeb)](/\s*=/,'')['trim']()[_0x42b0cc(0xba)]()));}return _0x5bd144[_0x42b0cc(0x13b)]((_0x168921,_0x5a954d)=>{const _0xa04d2=_0x42b0cc;if(_0x41fd30[_0x5a954d]){const _0x58439e=_0x41fd30[_0x5a954d],_0x39f8fb=SENSITIVE_PARAM_PATTERNS['some'](_0x26f786=>_0x58439e['includes'](_0x26f786));if(_0x39f8fb)return _0xa04d2(0xe1);}if(typeof _0x168921===_0xa04d2(0xe6)&&_0x4f7c6e['hANXR'](_0x168921['length'],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/[_0xa04d2(0x8a)](_0x168921)&&_0x168921[_0xa04d2(0x11f)]('.'))return _0xa04d2(0xf6);if(/^[a-fA-F0-9]{32,}$/[_0xa04d2(0x8a)](_0x168921))return _0x4f7c6e[_0xa04d2(0xe0)];}return _0x168921;});},parseQueryMetadata=_0x39e8d0=>{const _0xa8441a=a0_0xc69f3,_0x349060={'UKizh':_0xa8441a(0xd1),'zCjYB':'UPDATE','zLtZh':_0xa8441a(0x11c),'fjuZl':'TRANSACTION_BEGIN','uTQfi':_0xa8441a(0x136),'whaeW':'CREATE','Yhyfh':'DDL_CREATE','JKnkF':'ALTER','OSydG':'DDL_ALTER','Dswsj':_0xa8441a(0x10a)},_0x29db69=_0x39e8d0['trim'](),_0x239d2b=_0x29db69[_0xa8441a(0xbf)]();let _0xd2e29e=_0xa8441a(0x10d),_0x3fa322=null;if(_0x239d2b['startsWith']('SELECT')){_0xd2e29e=_0x349060[_0xa8441a(0x135)];const _0x342a0e=_0x29db69['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3fa322=_0x342a0e?_0x342a0e[0x1]:null;}else{if(_0x239d2b[_0xa8441a(0x13f)]('INSERT')){_0xd2e29e=_0xa8441a(0x73);const _0x42b5aa=_0x29db69['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3fa322=_0x42b5aa?_0x42b5aa[0x1]:null;}else{if(_0x239d2b['startsWith'](_0x349060[_0xa8441a(0xa4)])){_0xd2e29e=_0xa8441a(0xe7);const _0x34b14b=_0x29db69['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3fa322=_0x34b14b?_0x34b14b[0x1]:null;}else{if(_0x239d2b[_0xa8441a(0x13f)]('DELETE')){_0xd2e29e='DELETE';const _0x409186=_0x29db69[_0xa8441a(0x101)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3fa322=_0x409186?_0x409186[0x1]:null;}else{if(_0x239d2b[_0xa8441a(0x13f)](_0x349060[_0xa8441a(0x11e)])||_0x239d2b[_0xa8441a(0x13f)](_0xa8441a(0x112)))_0xd2e29e=_0x349060[_0xa8441a(0x111)];else{if(_0x239d2b['startsWith'](_0xa8441a(0x11a)))_0xd2e29e=_0xa8441a(0x94);else{if(_0x239d2b['startsWith'](_0x349060[_0xa8441a(0x117)]))_0xd2e29e=_0xa8441a(0xc0);else{if(_0x239d2b['startsWith'](_0x349060['whaeW']))_0xd2e29e=_0x349060[_0xa8441a(0x85)];else{if(_0x239d2b['startsWith'](_0x349060['JKnkF']))_0xd2e29e=_0x349060[_0xa8441a(0x13d)];else _0x239d2b[_0xa8441a(0x13f)](_0xa8441a(0xcd))&&(_0xd2e29e=_0x349060[_0xa8441a(0xb6)]);}}}}}}}}return{'type':_0xd2e29e,'table':_0x3fa322};},startQueryTimer=()=>{const _0x2f56f5=a0_0xc69f3,_0x82f25f={'NjrKa':function(_0x4832fc,_0x37cf1d){return _0x4832fc+_0x37cf1d;},'IXggG':function(_0x200f2c,_0x38f476){return _0x200f2c/_0x38f476;}},_0x5c3114=process[_0x2f56f5(0xe8)]();return()=>{const _0x51cd78=_0x2f56f5,[_0x5e1e60,_0x5a7861]=process[_0x51cd78(0xe8)](_0x5c3114);return parseFloat(_0x82f25f[_0x51cd78(0xf4)](_0x5e1e60*0x3e8,_0x82f25f['IXggG'](_0x5a7861,0xf4240))[_0x51cd78(0x125)](0x2));};},logQuery=(_0x4dd473,_0x3b60bb=[],_0x4add7f={})=>{const _0x5db08f=a0_0xc69f3,_0x4aafad={'clghv':'db_query','UDNKv':function(_0x2174ba,_0x197b29){return _0x2174ba(_0x197b29);},'empeI':function(_0x5c1b92,_0x4641e9){return _0x5c1b92>_0x4641e9;},'ZJacE':'unknown','jzTeX':function(_0x15c580,_0x4f651a){return _0x15c580!==_0x4f651a;},'SMClf':_0x5db08f(0xe4),'ByHGb':function(_0xb27521,_0x1e09f1){return _0xb27521===_0x1e09f1;},'eTVXf':_0x5db08f(0xce)};if(!sqlLogEnabled){logger['debug']({'event':_0x4aafad['clghv'],'query':_0x4dd473[_0x5db08f(0x145)](0x0,0xc8),'paramCount':_0x3b60bb['length']},_0x5db08f(0x134));return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x5db08f(0x7d)}=_0x4add7f,{type:_0x2c91b8,table:_0x57ea22}=_0x4aafad[_0x5db08f(0x9e)](parseQueryMetadata,_0x4dd473),_0x1c2687={'event':_0x5db08f(0x97),'queryType':_0x2c91b8,'table':_0x57ea22,'query':_0x4dd473,'paramCount':_0x3b60bb[_0x5db08f(0xbb)],'dbType':dbType};sqlLogParams&&_0x4aafad['empeI'](_0x3b60bb[_0x5db08f(0xbb)],0x0)&&(_0x1c2687[_0x5db08f(0x11b)]=redactSensitiveParams(_0x3b60bb,_0x4dd473));duration!==null&&(_0x1c2687[_0x5db08f(0x70)]=duration,_0x1c2687['isSlow']=duration>sqlLogSlowThreshold);rowsAffected!==null&&(_0x1c2687['rowsAffected']=rowsAffected);const _0x3e19d2=_0x57ea22||_0x4aafad[_0x5db08f(0xc7)];let _0x44ff7d='['+_0x2c91b8+']\x20'+_0x3e19d2;duration!==null&&(_0x44ff7d+='\x20('+duration+'ms)');const _0x340d67=_0x4aafad[_0x5db08f(0xd3)](duration,null)&&_0x4aafad['empeI'](duration,sqlLogSlowThreshold);let _0x489211='debug';if(_0x340d67)_0x44ff7d+='\x20[SLOW]',_0x489211=_0x4aafad[_0x5db08f(0x108)],logger[_0x5db08f(0xe4)](_0x1c2687,_0x44ff7d);else _0x4aafad[_0x5db08f(0xfe)](sqlLogLevel,_0x4aafad[_0x5db08f(0xac)])?(_0x489211=_0x4aafad[_0x5db08f(0xac)],logger['info'](_0x1c2687,_0x44ff7d)):logger[_0x5db08f(0x6c)](_0x1c2687,_0x44ff7d);writeToFileLog({..._0x1c2687,'level':_0x489211,'msg':_0x44ff7d,'time':new Date()[_0x5db08f(0x140)]()},_0x489211);},logTransaction=(_0x3e19c4,_0x2fb32c)=>{const _0x1bfa26=a0_0xc69f3,_0x551f17={'TIrxS':_0x1bfa26(0xad),'cBZwG':function(_0x4a9f6f,_0x577a45,_0x51785f){return _0x4a9f6f(_0x577a45,_0x51785f);},'HtxhG':'debug'},_0x3b9df8={'event':_0x551f17[_0x1bfa26(0x106)],'status':_0x3e19c4,'queryCount':_0x2fb32c},_0x52e5e8=_0x1bfa26(0x93)+_0x3e19c4;logger[_0x1bfa26(0x6c)](_0x3b9df8,_0x52e5e8),_0x551f17['cBZwG'](writeToFileLog,{..._0x3b9df8,'level':_0x551f17['HtxhG'],'msg':_0x52e5e8,'time':new Date()['toISOString']()},_0x551f17[_0x1bfa26(0x12f)]);},redactObject=_0x15e848=>{const _0x52d961=a0_0xc69f3,_0x435b2b={'dXaKn':function(_0x1c189f,_0x2da4db){return _0x1c189f!==_0x2da4db;},'KhNbP':_0x52d961(0xc5),'UYMFM':_0x52d961(0x80),'pBxpj':'passwd','bEuyb':_0x52d961(0xff),'ZLMoJ':_0x52d961(0x8c),'OVIqH':_0x52d961(0x120),'GbWau':_0x52d961(0x9c),'SnbBy':_0x52d961(0x109),'gjxTu':'refresh_token','cVAPl':'access_token','qPAsL':function(_0x5971ce,_0x399b21){return _0x5971ce===_0x399b21;}};if(!_0x15e848||_0x435b2b['dXaKn'](typeof _0x15e848,_0x435b2b['KhNbP']))return _0x15e848;const _0x3c058f=[_0x435b2b[_0x52d961(0xfa)],_0x435b2b[_0x52d961(0xdb)],'pwd','token',_0x435b2b[_0x52d961(0x84)],'apikey','api_key','authorization','creditcard',_0x435b2b['ZLMoJ'],_0x435b2b[_0x52d961(0x144)],_0x435b2b[_0x52d961(0x141)],'pin',_0x435b2b[_0x52d961(0xd5)],_0x52d961(0xd8),_0x435b2b['gjxTu'],_0x435b2b[_0x52d961(0xab)]],_0x46d60d=Array['isArray'](_0x15e848)?[..._0x15e848]:{..._0x15e848};for(const _0x397533 of Object[_0x52d961(0xf5)](_0x46d60d)){const _0x285a8e=_0x397533[_0x52d961(0xba)]();if(_0x3c058f[_0x52d961(0xb7)](_0x2f078c=>_0x285a8e['includes'](_0x2f078c)))_0x46d60d[_0x397533]=_0x52d961(0xe1);else _0x435b2b['qPAsL'](typeof _0x46d60d[_0x397533],_0x435b2b['KhNbP'])&&_0x435b2b['dXaKn'](_0x46d60d[_0x397533],null)&&(_0x46d60d[_0x397533]=redactObject(_0x46d60d[_0x397533]));}return _0x46d60d;},logError=(_0x46c874,_0x5318b1={},_0x433ff4=null)=>{const _0x4eb4a6=a0_0xc69f3,_0x38b3d8={'YLVmh':'error'},_0x4f3cc2={'event':'error','errorName':_0x46c874[_0x4eb4a6(0x6e)]||'Error','errorMessage':_0x46c874['message'],'errorCode':_0x46c874[_0x4eb4a6(0xd4)]||null,'stack':_0x46c874['stack'],..._0x5318b1},_0xc87ff1=_0x433ff4||'Error:\x20'+_0x46c874[_0x4eb4a6(0x92)];logger['error'](_0x4f3cc2,_0xc87ff1),writeToFileLog({..._0x4f3cc2,'level':_0x38b3d8[_0x4eb4a6(0xb0)],'msg':_0xc87ff1,'time':new Date()[_0x4eb4a6(0x140)]()},_0x38b3d8['YLVmh']);},logFatalError=(_0x5c892c,_0x5c1199={},_0x253d5f=null)=>{const _0x465486=a0_0xc69f3,_0x143c83={'thCJj':'fatal_error','aSBCk':'Error','qEkRQ':function(_0x384450,_0x3dfdc6,_0x7f96d){return _0x384450(_0x3dfdc6,_0x7f96d);},'nMkqn':_0x465486(0x13c),'mpYSn':_0x465486(0x87)},_0x1cfbb4={'event':_0x143c83['thCJj'],'errorName':_0x5c892c['name']||_0x143c83['aSBCk'],'errorMessage':_0x5c892c['message'],'errorCode':_0x5c892c[_0x465486(0xd4)]||null,'stack':_0x5c892c[_0x465486(0x114)],'severity':_0x465486(0xb1),..._0x5c1199},_0x2ae9b8=_0x253d5f||'FATAL:\x20'+_0x5c892c[_0x465486(0x92)];logger['fatal'](_0x1cfbb4,_0x2ae9b8),_0x143c83['qEkRQ'](writeToFileLog,{..._0x1cfbb4,'level':_0x143c83[_0x465486(0x12c)],'msg':_0x2ae9b8,'time':new Date()[_0x465486(0x140)]()},_0x143c83['mpYSn']);},logHttpError=(_0x4c3ed5,_0x519608,_0x11f363={})=>{const _0x946914=a0_0xc69f3,_0x4a5602={'MKKEH':_0x946914(0x7e),'oZLlo':'Error','sQbfp':_0x946914(0xd9),'gJBKT':function(_0x49a354,_0x31a8ba){return _0x49a354(_0x31a8ba);},'djVKX':function(_0xfeaccb,_0x438f9a){return _0xfeaccb>=_0x438f9a;},'jimSs':_0x946914(0x87),'viMMY':'warn'},_0xc71c4c={'event':_0x4a5602[_0x946914(0x119)],'errorName':_0x4c3ed5[_0x946914(0x6e)]||_0x4a5602['oZLlo'],'errorMessage':_0x4c3ed5['message'],'errorCode':_0x4c3ed5[_0x946914(0xd4)]||_0x4c3ed5[_0x946914(0x107)]||0x1f4,'stack':_0x4c3ed5['stack'],'method':_0x519608?.['method'],'url':_0x519608?.[_0x946914(0xa1)]||_0x519608?.[_0x946914(0xd2)],'path':_0x519608?.[_0x946914(0x100)],'ip':_0x519608?.['ip']||_0x519608?.[_0x946914(0xd6)]?.['remoteAddress'],'userAgent':_0x519608?.['get']?.('user-agent'),'requestId':_0x519608?.['id']||_0x519608?.['headers']?.[_0x4a5602[_0x946914(0x74)]],'body':_0x519608?.['body']?_0x4a5602[_0x946914(0xca)](redactObject,_0x519608['body']):undefined,'query':_0x519608?.['query'],..._0x11f363},_0x3d55da=_0x4c3ed5['statusCode']||_0x4c3ed5[_0x946914(0xc3)]||0x1f4,_0x1709a5='HTTP\x20'+_0x3d55da+':\x20'+_0x4c3ed5['message'];_0x4a5602['djVKX'](_0x3d55da,0x1f4)?logger['error'](_0xc71c4c,_0x1709a5):logger[_0x946914(0xe4)](_0xc71c4c,_0x1709a5),writeToFileLog({..._0xc71c4c,'level':_0x3d55da>=0x1f4?_0x4a5602['jimSs']:_0x4a5602[_0x946914(0x99)],'msg':_0x1709a5,'time':new Date()[_0x946914(0x140)]()},_0x3d55da>=0x1f4?'error':'warn');},logUncaughtError=(_0x1c4ff8,_0x1f1969)=>{const _0x73469e=a0_0xc69f3,_0x2c86cf={'HgeaU':function(_0x4a4d84,_0x272530){return _0x4a4d84(_0x272530);},'OrbEH':'CRITICAL','ZtpRj':function(_0x44954d,_0x26b02f,_0x12ed48){return _0x44954d(_0x26b02f,_0x12ed48);},'cIUzV':_0x73469e(0x13c)},_0x5e2ba0={'event':_0x1c4ff8,'errorName':_0x1f1969?.['name']||_0x73469e(0x113),'errorMessage':_0x1f1969?.['message']||_0x2c86cf[_0x73469e(0xdc)](String,_0x1f1969),'errorCode':_0x1f1969?.[_0x73469e(0xd4)]||null,'stack':_0x1f1969?.['stack'],'severity':_0x2c86cf['OrbEH'],'processId':process['pid'],'memoryUsage':process['memoryUsage'](),'uptime':process[_0x73469e(0x10e)]()},_0x3846ba='['+_0x1c4ff8[_0x73469e(0xbf)]()+']\x20'+(_0x1f1969?.['message']||_0x1f1969);logger['fatal'](_0x5e2ba0,_0x3846ba),_0x2c86cf[_0x73469e(0x103)](writeToFileLog,{..._0x5e2ba0,'level':_0x2c86cf[_0x73469e(0xfd)],'msg':_0x3846ba,'time':new Date()[_0x73469e(0x140)]()},'error');},setupGlobalErrorHandlers=()=>{const _0x52acb1=a0_0xc69f3,_0x54e74f={'aMAwp':function(_0x5a86ed,_0x2f3bf3,_0x3f8b46){return _0x5a86ed(_0x2f3bf3,_0x3f8b46);},'RjxfS':'uncaughtException','UYOlE':function(_0x12690e,_0x4887e9,_0x411fe6){return _0x12690e(_0x4887e9,_0x411fe6);},'KyrBx':function(_0x32587f,_0x4a30d9){return _0x32587f instanceof _0x4a30d9;},'AdCRl':function(_0x2e7078,_0x4980c0,_0x289e5d){return _0x2e7078(_0x4980c0,_0x289e5d);},'TyGJT':_0x52acb1(0x6d),'VwQtP':'unhandledRejection','OaJse':_0x52acb1(0xbe),'mrgqQ':function(_0x22ab4f,_0x4219cc,_0xc19ec4){return _0x22ab4f(_0x4219cc,_0xc19ec4);},'PaYaz':'info'};process['on']('uncaughtException',_0x57819a=>{const _0x4849bd=_0x52acb1;_0x54e74f[_0x4849bd(0x98)](logUncaughtError,_0x54e74f[_0x4849bd(0xc9)],_0x57819a),_0x54e74f['UYOlE'](setTimeout,()=>{const _0xb0aee3=_0x4849bd;process[_0xb0aee3(0x8e)](0x1);},0x3e8);}),process['on'](_0x54e74f[_0x52acb1(0xea)],(_0xbac36a,_0x282f3a)=>{const _0x4399d7=_0x54e74f['KyrBx'](_0xbac36a,Error)?_0xbac36a:new Error(String(_0xbac36a));_0x54e74f['AdCRl'](logUncaughtError,'unhandledRejection',_0x4399d7);}),process['on']('warning',_0x1e808b=>{const _0x52caf5=_0x52acb1;logger[_0x52caf5(0xe4)]({'event':_0x54e74f[_0x52caf5(0x76)],'name':_0x1e808b['name'],'message':_0x1e808b['message'],'stack':_0x1e808b['stack']},_0x52caf5(0xae)+_0x1e808b['message']);});const _0x32692b={'event':_0x54e74f[_0x52acb1(0xde)]},_0x40f021=_0x52acb1(0x71);logger['info'](_0x32692b,_0x40f021),_0x54e74f[_0x52acb1(0xfb)](writeToFileLog,{..._0x32692b,'level':_0x54e74f[_0x52acb1(0xaf)],'msg':_0x40f021,'time':new Date()[_0x52acb1(0x140)]()},_0x54e74f['PaYaz']);},createErrorHandlerMiddleware=()=>{const _0x12c02a={'PJPzA':function(_0xa07f34,_0x2277f6){return _0xa07f34>=_0x2277f6;},'aybNn':'Internal\x20server\x20error'};return(_0x49ba91,_0x4c497e,_0x46bc3a,_0x6b151c)=>{const _0x4733a4=a0_0x337a;logHttpError(_0x49ba91,_0x4c497e);const _0x4add2c=_0x49ba91[_0x4733a4(0x107)]||_0x49ba91['status']||0x1f4;_0x46bc3a['status'](_0x4add2c)[_0x4733a4(0xaa)]({'success':![],'error':_0x12c02a[_0x4733a4(0xbc)](_0x4add2c,0x1f4)?_0x12c02a[_0x4733a4(0x139)]:_0x49ba91['message'],'requestId':_0x4c497e['id']||_0x4c497e[_0x4733a4(0xbd)]?.[_0x4733a4(0xd9)]||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_0x26c466=a0_0x23fa;(function(_0xcb88ad,_0x387ebc){const _0x1d1c6c=a0_0x23fa,_0x16f5bc=_0xcb88ad();while(!![]){try{const _0xbe3e95=-parseInt(_0x1d1c6c(0x1d2))/0x1*(parseInt(_0x1d1c6c(0x22d))/0x2)+-parseInt(_0x1d1c6c(0x23f))/0x3*(parseInt(_0x1d1c6c(0x21d))/0x4)+parseInt(_0x1d1c6c(0x27e))/0x5*(-parseInt(_0x1d1c6c(0x235))/0x6)+-parseInt(_0x1d1c6c(0x1f0))/0x7*(-parseInt(_0x1d1c6c(0x263))/0x8)+-parseInt(_0x1d1c6c(0x22a))/0x9*(parseInt(_0x1d1c6c(0x23a))/0xa)+-parseInt(_0x1d1c6c(0x1e4))/0xb*(-parseInt(_0x1d1c6c(0x268))/0xc)+parseInt(_0x1d1c6c(0x25b))/0xd*(parseInt(_0x1d1c6c(0x249))/0xe);if(_0xbe3e95===_0x387ebc)break;else _0x16f5bc['push'](_0x16f5bc['shift']());}catch(_0x2f9c75){_0x16f5bc['push'](_0x16f5bc['shift']());}}}(a0_0x45c9,0x352bc));const pino=require(a0_0x26c466(0x277)),fs=require('fs'),path=require(a0_0x26c466(0x21e));let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':a0_0x26c466(0x215),'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_0x26c466(0x252),'customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env'][a0_0x26c466(0x1ca)]!==a0_0x26c466(0x22f),logLevel=process['env'][a0_0x26c466(0x1f9)]||'info';let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process[a0_0x26c466(0x238)]['APP_VERSION']||'1.0.5','env':process[a0_0x26c466(0x238)][a0_0x26c466(0x1ca)]||'development'},'timestamp':pino[a0_0x26c466(0x236)]['isoTime'],'redact':{'paths':['req.headers.authorization','req.headers[\x22x-api-key\x22]',a0_0x26c466(0x1e3),a0_0x26c466(0x267),'apiKey','DB_PASSWORD',a0_0x26c466(0x1d3)],'censor':a0_0x26c466(0x257)},'serializers':{'req':_0x59c99c=>({'id':_0x59c99c['id'],'method':_0x59c99c[a0_0x26c466(0x217)],'url':_0x59c99c[a0_0x26c466(0x1f6)],'path':_0x59c99c['path'],'remoteAddress':_0x59c99c['ip']||_0x59c99c['connection']?.['remoteAddress']}),'res':_0x5615d9=>({'statusCode':_0x5615d9[a0_0x26c466(0x1db)],'headers':_0x5615d9['getHeaders']?.()}),'err':pino['stdSerializers']['err']}});function initFileLogging(){const _0x1eea99=a0_0x26c466,_0x386df6={'vgkcv':'true','iPGCN':'debug','gPxyu':'false','WdhaD':_0x1eea99(0x213),'GbFPl':_0x1eea99(0x1e1),'pklWd':'error.log','nVjQM':function(_0x20cbb6,_0x45194b,_0x2be05d){return _0x20cbb6(_0x45194b,_0x2be05d);},'WYCzJ':_0x1eea99(0x26c)};if(fileLoggingInitialized)return;logToFile=process['env'][_0x1eea99(0x207)]===_0x386df6[_0x1eea99(0x1d6)];const _0x3bde1f=process[_0x1eea99(0x238)]['RESTFORGE_PROJECT_NAME']||'default';logDir=process['env'][_0x1eea99(0x1f4)]||'./logs/'+_0x3bde1f,serviceName=process[_0x1eea99(0x238)]['SERVICE_NAME']||_0x1eea99(0x27f),sqlLogEnabled=process[_0x1eea99(0x238)][_0x1eea99(0x20a)]==='true',sqlLogLevel=process['env']['SQL_LOG_LEVEL']||_0x386df6[_0x1eea99(0x1ce)],sqlLogParams=process[_0x1eea99(0x238)]['SQL_LOG_PARAMS']!==_0x386df6['gPxyu'],sqlLogSlowThreshold=parseInt(process[_0x1eea99(0x238)]['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x1d7519=path['resolve'](process[_0x1eea99(0x21c)](),logDir);try{!fs['existsSync'](_0x1d7519)&&fs[_0x1eea99(0x241)](_0x1d7519,{'recursive':!![]});}catch(_0x4880b0){console['error'](_0x1eea99(0x24e)+_0x1d7519+':',_0x4880b0['message']),fileLoggingInitialized=!![];return;}const _0x21d4b6=path[_0x1eea99(0x20d)](_0x1d7519,_0x386df6[_0x1eea99(0x1cd)]),_0x1d989a=path['join'](_0x1d7519,_0x1eea99(0x262));try{appLogStream=fs[_0x1eea99(0x256)](_0x21d4b6,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x1d989a,{'flags':'a'}),fileLoggingInitialized=!![];const _0x40584b={'event':_0x386df6['GbFPl'],'logDir':_0x1d7519,'files':[_0x386df6['WdhaD'],_0x386df6[_0x1eea99(0x209)]]},_0x32fec9=_0x1eea99(0x24a)+_0x1d7519;logger[_0x1eea99(0x26c)](_0x40584b,_0x32fec9),_0x386df6['nVjQM'](writeToFileLog,{..._0x40584b,'level':_0x1eea99(0x26c),'msg':_0x32fec9,'time':new Date()['toISOString']()},_0x386df6['WYCzJ']);}catch(_0x2464b0){console['error'](_0x1eea99(0x211),_0x2464b0[_0x1eea99(0x1d8)]),fileLoggingInitialized=!![];}}function a0_0x45c9(){const _0x553871=['DuPdEwq','AM9PBG','icdIHPiG','Ahj0Aw1L','zw52AxjVBM1LBNq','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','tM9Kzs5QCW','yxbWlMXVzW','Dw5JyxvNAhrfEgnLChrPB24','u1LtoKHioK1noNnZ','rgvMyxvSDa','Bwv0Ag9K','BgvUz3rO','Ahr0Cf9LCNjVCG','vfjbtLnbq1rjt05FqKvhsu4','EMvXyMG','y3DK','nZe1mdbYze9YufO','Cgf0Aa','iokvKqRILzeGifbVCNqGicaGicaGidOG','DxnLCG','zxjYB3i','CgfZC3DK','C3fSx3f1zxj5','uMvnzvu','AgvHBhrOq2HLy2S','w1jfrefdveveoNrVA2vUxq','DgL0Dg4','vfjbtLnbq1rjt05FuK9mtejbq0S','iokvKqRILzeGienVBMzPzYaGicaGidOG','mtCWmdq2ow1wsg1vCG','thLACxq','zgjFDhjHBNnHy3rPB24','nhr5rfnoBG','C2vYDMvYx3n0yxj0Aw5N','ChjVzhvJDgLVBG','Bwf0y2G','DhjPBq','tK9uiefdveLwrq','qNjPwuq','B2fsree','mte2mdi3nhzQDwnyCG','C3rKvgLTzuz1BMn0Aw9UCW','y3jLzgL0y2fYza','zw52','iokvKqRILzeGifbYB2PLy3qGicaGidOG','mJbvC2PUwMy','D3jPDgu','AgvHzgvYCW','Ag9ZDa','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','ntDxww1TzKm','sfruuca','BwTKAxjtEw5J','y3jLzgL0x2nHCMq','su5trvju','C0HsvLi','y29Kzq','Ec1Yzxf1zxn0lwLK','Bg9N','AMrTCwi','ndCYmdq1me9Yz2X0DG','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','CgfKrw5K','AgnkvwW','ChjVy2vZC193yxjUAw5N','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','tvzsC0u','C2vJCMv0','D2fYBG','E21Zz30','zxHWB3j0CW','zgf0ywjHC2vFy29UzMLN','z2v0','y3jLyxrLv3jPDgvtDhjLyw0','w1jfrefdvevexq','zMf0ywW','v1Hmy0S','y2HPBgq','mJzYDMfeuwS','r2DOwK4','D2fYBMLUzW','Cg9YDa','Aw5JBhvKzxm','yxbPA2v5','Exjisgm','zxjYB3iUBg9N','odCWmteYzwnLrwnn','w09lxsbqCM9Qzwn0igXVywrLzdOG','Dxb0Aw1L','renXqM4','Dg9Rzw4','odrxtfnyt3O','ChjPDMf0zv9RzxK','y3jLzgvUDgLHBa','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','Aw5MBW','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','CMvWBgfJzq','AgfnqLO','uunyq1O','quXurvi','CMvWzwf0','rgf0ywjHC2u6ia','ANDAy3K','CuXzze8','revmrvrf','CgLUBW','EgPNtMO','DurnEue','BxmP','qKvhsu4','BgzfBgq','rKfuquW6ia','nurlA0LYsW','CMvZDgzVCMDL','C3vIC3rYAw5N','sw50zxjUywWGC2vYDMvYigvYCM9Y','yM9KEq','y3jLzgvUDgLHBhm','q1jfqvrf','tK9erv9ftLy','vKXuAMi','zw5KCg9PBNrFCMvNAxn0zxjLza','v2rOyuq','Avbhq04','AxntBg93','uM5tA0G','CxvLCNK','mtG4mtDLwxDYtvq','sLDux1nfq1jfva','B2jQzwn0','zu13uve','DMDRy3y','yxv0Ag9YAxPHDgLVBG','BwvZC2fNzq','DeXxqvu','Dg9ju09tDhjPBMC','C3rHDhvZq29Kzq','vfjbtLnbq1rjt05Fq09ntuLu','C3rHCNrZv2L0Aa','A2Dhr04','AxbrwKS','C3rHDhvZ','zMLSzv9SB2DNAw5Nx2vUywjSzwq','uKvQDM4','CgfZC3DVCMq','nJaYmtyYywjzvurq','yxbPs2v5','w1jfrefdveveoMHHC2HD','ELHSuu4','ChjPDMf0zwTLEq','u0vmrunu','y2Dnsuq','iokvKqRILzeGiefqssblzxKGicaGidOG','yKDAA00','DfvwthC','zKjAvhK','ChDK','n0z4zhLvCq','C3rHy2S','vKfsruq','C3rYAw5NAwz5','te9hx0rjuG','u1rbuLqGvfjbtLnbq1rjt04','DxjS','zgvIDwC','DgvZDa','te9hx0XfvKvm','BwvTB3j5vxnHz2u','CgLU','C29Tzq','zufwDeK','uNbyBMi','BwfW','ic0G','ANnVBG','Bffctuy','rxjYB3i','BMfTzq','twPKs1O','y29UBMvJDgLVBG','te9hx1rpx0zjteu','zgf0ywjHC2u','CgTSv2q','u1fmx0Xpr19ftKfcteve','ChjVAMvJDa'];a0_0x45c9=function(){return _0x553871;};return a0_0x45c9();}function a0_0x23fa(_0x1f67ce,_0x4e8ff7){_0x1f67ce=_0x1f67ce-0x1c6;const _0x45c90a=a0_0x45c9();let _0x23fa44=_0x45c90a[_0x1f67ce];if(a0_0x23fa['wVecUi']===undefined){var _0x3e42d2=function(_0x3227d0){const _0x568c8e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x350037='',_0x1fe605='';for(let _0x1932ba=0x0,_0xbc8e7d,_0x10615b,_0x16f839=0x0;_0x10615b=_0x3227d0['charAt'](_0x16f839++);~_0x10615b&&(_0xbc8e7d=_0x1932ba%0x4?_0xbc8e7d*0x40+_0x10615b:_0x10615b,_0x1932ba++%0x4)?_0x350037+=String['fromCharCode'](0xff&_0xbc8e7d>>(-0x2*_0x1932ba&0x6)):0x0){_0x10615b=_0x568c8e['indexOf'](_0x10615b);}for(let _0x63ba20=0x0,_0x179ad6=_0x350037['length'];_0x63ba20<_0x179ad6;_0x63ba20++){_0x1fe605+='%'+('00'+_0x350037['charCodeAt'](_0x63ba20)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1fe605);};a0_0x23fa['VsbZTI']=_0x3e42d2,a0_0x23fa['JDzyje']={},a0_0x23fa['wVecUi']=!![];}const _0x1167d4=_0x45c90a[0x0],_0x518418=_0x1f67ce+_0x1167d4,_0x5b191b=a0_0x23fa['JDzyje'][_0x518418];return!_0x5b191b?(_0x23fa44=a0_0x23fa['VsbZTI'](_0x23fa44),a0_0x23fa['JDzyje'][_0x518418]=_0x23fa44):_0x23fa44=_0x5b191b,_0x23fa44;}function writeToFileLog(_0xf57dff,_0x105e0a){const _0x22f707=a0_0x26c466,_0x2bf0cc={'lQBMF':function(_0x38fd9c,_0x480065){return _0x38fd9c||_0x480065;},'GXPzl':function(_0x387bac,_0x459e77){return _0x387bac===_0x459e77;},'lfEld':'error','wIfNC':function(_0x320a0a,_0x31042f){return _0x320a0a===_0x31042f;}};if(_0x2bf0cc[_0x22f707(0x202)](!logToFile,!appLogStream))return;const _0x21f147={'service':serviceName,..._0xf57dff},_0xdc8cc6=JSON[_0x22f707(0x1f3)](_0x21f147)+'\x0a';appLogStream['write'](_0xdc8cc6),(_0x2bf0cc['GXPzl'](_0x105e0a,_0x2bf0cc[_0x22f707(0x27c)])||_0x2bf0cc['wIfNC'](_0x105e0a,'fatal'))&&(errorLogStream&&errorLogStream[_0x22f707(0x23b)](_0xdc8cc6));}const createRequestLogger=(_0x48f446={})=>{const _0xd4fab7=a0_0x26c466;return logger[_0xd4fab7(0x25a)](_0x48f446);},logServerStart=_0x1ad23c=>{const _0x5e2ff4=a0_0x26c466,_0x37cea1={'uJCyd':_0x5e2ff4(0x26b),'hWgaA':function(_0x19754c,_0xa85b6){return _0x19754c/_0xa85b6;},'VARED':function(_0x23b93e,_0x519897){return _0x23b93e-_0x519897;},'jcUpd':'N/A','klMrQ':_0x5e2ff4(0x216),'olncC':_0x5e2ff4(0x22e)},_0x1f2f31=_0x37cea1[_0x5e2ff4(0x20c)],_0x5daaf0=Math['max'](0x0,0x37-_0x1f2f31['length']),_0x26c079=Math['floor'](_0x37cea1['hWgaA'](_0x5daaf0,0x2)),_0x107018=_0x37cea1[_0x5e2ff4(0x1f2)](_0x5daaf0,_0x26c079),_0x11538f='║'+'\x20'[_0x5e2ff4(0x272)](_0x26c079)+_0x1f2f31+'\x20'[_0x5e2ff4(0x272)](_0x107018)+'║',_0xb7df4d='\x0a╔═══════════════════════════════════════════════════════╗\x0a'+_0x11538f+'\x0a╠═══════════════════════════════════════════════════════╣\x0a║\x20\x20Environment\x20:\x20'+(_0x1ad23c[_0x5e2ff4(0x210)]||_0x5e2ff4(0x212))['padEnd'](0x26)+_0x5e2ff4(0x239)+(_0x1ad23c[_0x5e2ff4(0x20b)]||_0x37cea1['jcUpd'])[_0x5e2ff4(0x24b)](0x26)+_0x5e2ff4(0x21f)+String(_0x1ad23c[_0x5e2ff4(0x25e)]||0xbb8)[_0x5e2ff4(0x24b)](0x26)+_0x5e2ff4(0x229)+(_0x1ad23c['configFile']||_0x37cea1['klMrQ'])[_0x5e2ff4(0x24b)](0x26)+_0x5e2ff4(0x1eb)+(_0x1ad23c[_0x5e2ff4(0x1e5)]?'ACTIVE':_0x5e2ff4(0x232))[_0x5e2ff4(0x24b)](0x26)+_0x5e2ff4(0x26d);console[_0x5e2ff4(0x247)](_0xb7df4d);const _0x565f20={'event':_0x37cea1['olncC'],'project':_0x1ad23c[_0x5e2ff4(0x20b)],'port':_0x1ad23c['port'],'config':_0x1ad23c['configFile'],'apiKeyEnabled':!!_0x1ad23c[_0x5e2ff4(0x1e5)]};logger[_0x5e2ff4(0x26c)](_0x565f20),writeToFileLog({..._0x565f20,'level':'info','msg':'Server\x20starting:\x20'+_0x1ad23c['project']+'\x20on\x20port\x20'+_0x1ad23c['port'],'time':new Date()['toISOString']()},_0x5e2ff4(0x26c));},logServerReady=_0x653488=>{const _0x489f47=a0_0x26c466,_0x486230={'haMBZ':'server_ready','GghZN':'info'},_0x305783={'event':_0x486230[_0x489f47(0x26f)],'port':_0x653488['port'],'module':_0x653488['module'],'healthCheck':_0x653488[_0x489f47(0x225)],'serviceInfo':_0x653488['serviceInfo'],'baseUrl':_0x653488['baseUrl']},_0x4237d9=_0x489f47(0x23e)+_0x653488['port'];logger[_0x489f47(0x26c)](_0x305783,_0x4237d9),writeToFileLog({..._0x305783,'level':_0x486230[_0x489f47(0x25c)],'msg':_0x4237d9,'time':new Date()[_0x489f47(0x1da)]()},_0x486230['GghZN']),_0x653488[_0x489f47(0x225)]&&logger[_0x489f47(0x26c)]('\x20\x20Health:\x20'+_0x653488[_0x489f47(0x225)]),_0x653488['serviceInfo']&&logger[_0x489f47(0x26c)]('\x20\x20Info:\x20\x20\x20'+_0x653488['serviceInfo']),_0x653488['baseUrl']&&logger['info']('\x20\x20URL:\x20\x20\x20\x20'+_0x653488['baseUrl']);},logProjectLoaded=(_0x57753f,_0xc60a6d)=>{const _0x148c09=a0_0x26c466,_0x5f0976={'Gqnsn':'project_loaded','tittn':_0x148c09(0x26c)},_0x3df54b={'event':_0x5f0976['Gqnsn'],'project':_0x57753f,'path':_0xc60a6d},_0x4d0305=_0x148c09(0x264)+_0x57753f;logger[_0x148c09(0x26c)](_0x3df54b,_0x4d0305),writeToFileLog({..._0x3df54b,'level':'info','msg':_0x4d0305,'time':new Date()[_0x148c09(0x1da)]()},_0x5f0976[_0x148c09(0x227)]);},logEndpointRegistered=(_0xb386e0,_0x2c8c2e)=>{const _0x384221=a0_0x26c466,_0x137971={'qLYdO':_0x384221(0x1cc),'wQHSC':'debug'},_0x199fa1={'event':_0x137971[_0x384221(0x275)],'endpoint':_0xb386e0,'route':_0x2c8c2e},_0x13687c=_0x384221(0x20e)+_0xb386e0+':\x20'+_0x2c8c2e;logger[_0x384221(0x1f7)](_0x199fa1,_0x13687c),writeToFileLog({..._0x199fa1,'level':_0x137971['wQHSC'],'msg':_0x13687c,'time':new Date()['toISOString']()},'debug');},logDatabaseConfig=_0x52c5a1=>{const _0x15e5e4=a0_0x26c466,_0x46c9a={'DTzqI':_0x15e5e4(0x254),'kgGGN':'debug'},_0x3b1eb2={'event':_0x46c9a['DTzqI'],'host':_0x52c5a1[_0x15e5e4(0x23d)],'port':_0x52c5a1['port'],'database':_0x52c5a1['database'],'type':_0x52c5a1['type'],'user':_0x52c5a1[_0x15e5e4(0x220)]},_0xf2abdf=_0x15e5e4(0x273)+_0x52c5a1['type']+'://'+_0x52c5a1[_0x15e5e4(0x23d)]+':'+_0x52c5a1[_0x15e5e4(0x25e)]+'/'+_0x52c5a1[_0x15e5e4(0x208)];logger[_0x15e5e4(0x1f7)](_0x3b1eb2,_0xf2abdf),writeToFileLog({..._0x3b1eb2,'level':'debug','msg':_0xf2abdf,'time':new Date()[_0x15e5e4(0x1da)]()},_0x46c9a[_0x15e5e4(0x1de)]);},logRequest=(_0xac83ff,_0x5b598a,_0x403f96)=>{const _0x18895e=a0_0x26c466,_0x4d4c77={'kEXyH':'http_request','GFTzd':function(_0x389052,_0xefc5b7){return _0x389052>=_0xefc5b7;},'eMwQQ':'error','oniBr':function(_0x857522,_0x10e6b9,_0x30fe5c){return _0x857522(_0x10e6b9,_0x30fe5c);}},_0x5ba05a={'event':_0x4d4c77['kEXyH'],'method':_0xac83ff['method'],'path':_0xac83ff['path'],'statusCode':_0x5b598a[_0x18895e(0x1db)],'durationMs':_0x403f96,'ip':_0xac83ff['ip']},_0x556be4=_0xac83ff[_0x18895e(0x217)]+'\x20'+_0xac83ff[_0x18895e(0x21e)]+_0x18895e(0x200)+_0x5b598a[_0x18895e(0x1db)]+'\x20('+_0x403f96+'ms)';let _0x2c2680=_0x18895e(0x26c);if(_0x4d4c77['GFTzd'](_0x5b598a[_0x18895e(0x1db)],0x1f4))_0x2c2680=_0x4d4c77[_0x18895e(0x1d5)],logger[_0x18895e(0x221)](_0x5ba05a,_0x556be4);else _0x5b598a['statusCode']>=0x190?(_0x2c2680='warn',logger['warn'](_0x5ba05a,_0x556be4)):logger['info'](_0x5ba05a,_0x556be4);_0x4d4c77['oniBr'](writeToFileLog,{..._0x5ba05a,'level':_0x2c2680,'msg':_0x556be4,'time':new Date()['toISOString']()},_0x2c2680);},SENSITIVE_PARAM_PATTERNS=[a0_0x26c466(0x1e3),a0_0x26c466(0x222),a0_0x26c466(0x1ef),a0_0x26c466(0x267),'access_token','refresh_token',a0_0x26c466(0x250),'api_secret','apikey','api_key',a0_0x26c466(0x26a),a0_0x26c466(0x1c8),a0_0x26c466(0x1fb),'otp',a0_0x26c466(0x269),'privatekey'],redactSensitiveParams=(_0x5a0ed9,_0x2ef030)=>{const _0xe264a1=a0_0x26c466,_0x508988={'Whkga':'string','ReMeU':function(_0x5c638c,_0x1a51a4){return _0x5c638c>_0x1a51a4;}};if(!_0x5a0ed9||_0x5a0ed9['length']===0x0)return _0x5a0ed9;const _0x4fa07c=_0x2ef030['toLowerCase'](),_0x389e9d=_0x4fa07c[_0xe264a1(0x230)](/\(([^)]+)\)\s*values/i);let _0x34288a=[];_0x389e9d&&(_0x34288a=_0x389e9d[0x1]['split'](',')[_0xe264a1(0x1ff)](_0x2c9594=>_0x2c9594['trim']()['toLowerCase']()));const _0x41936f=_0x4fa07c['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x41936f){const _0x243ba9=_0x41936f[0x1],_0xa5b0cc=_0x243ba9['match'](/(\w+)\s*=/g);_0xa5b0cc&&(_0x34288a=_0xa5b0cc[_0xe264a1(0x1ff)](_0x273ca0=>_0x273ca0[_0xe264a1(0x26e)](/\s*=/,'')[_0xe264a1(0x231)]()['toLowerCase']()));}return _0x5a0ed9[_0xe264a1(0x1ff)]((_0x1cb03c,_0x427954)=>{const _0x2ea27c=_0xe264a1;if(_0x34288a[_0x427954]){const _0xdfff22=_0x34288a[_0x427954],_0xfa2213=SENSITIVE_PARAM_PATTERNS[_0x2ea27c(0x1fc)](_0x26053b=>_0xdfff22[_0x2ea27c(0x25f)](_0x26053b));if(_0xfa2213)return _0x2ea27c(0x257);}if(typeof _0x1cb03c===_0x508988['Whkga']&&_0x508988[_0x2ea27c(0x224)](_0x1cb03c['length'],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x2ea27c(0x1f8)](_0x1cb03c)&&_0x1cb03c[_0x2ea27c(0x25f)]('.'))return _0x2ea27c(0x226);if(/^[a-fA-F0-9]{32,}$/['test'](_0x1cb03c))return _0x2ea27c(0x1e6);}return _0x1cb03c;});},parseQueryMetadata=_0x249b57=>{const _0x1921de=a0_0x26c466,_0x1418a8={'LyZqt':'UNKNOWN','mtaqV':_0x1921de(0x1e9),'jdmqb':'UPDATE','fBZTy':_0x1921de(0x276),'hcJUl':_0x1921de(0x27b),'Mqzrw':_0x1921de(0x21a),'xjgNj':_0x1921de(0x1dc),'eAVtI':'ROLLBACK','GFbET':_0x1921de(0x1c9),'ULFjk':'DDL_CREATE','REjvn':_0x1921de(0x271),'TLXOE':'DDL_ALTER','xMQRw':'DROP'},_0x3f5ac8=_0x249b57[_0x1921de(0x231)](),_0x46f29d=_0x3f5ac8['toUpperCase']();let _0x5dfc72=_0x1418a8[_0x1921de(0x22b)],_0x2c8c8f=null;if(_0x46f29d['startsWith'](_0x1418a8['mtaqV'])){_0x5dfc72=_0x1418a8['mtaqV'];const _0x1b66d1=_0x3f5ac8['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x2c8c8f=_0x1b66d1?_0x1b66d1[0x1]:null;}else{if(_0x46f29d['startsWith'](_0x1921de(0x243))){_0x5dfc72=_0x1921de(0x243);const _0xbb3a92=_0x3f5ac8['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x2c8c8f=_0xbb3a92?_0xbb3a92[0x1]:null;}else{if(_0x46f29d['startsWith'](_0x1418a8[_0x1921de(0x248)])){_0x5dfc72=_0x1418a8[_0x1921de(0x248)];const _0x44ee73=_0x3f5ac8['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x2c8c8f=_0x44ee73?_0x44ee73[0x1]:null;}else{if(_0x46f29d[_0x1921de(0x1dd)](_0x1418a8[_0x1921de(0x1ee)])){_0x5dfc72=_0x1418a8[_0x1921de(0x1ee)];const _0x2a187a=_0x3f5ac8['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x2c8c8f=_0x2a187a?_0x2a187a[0x1]:null;}else{if(_0x46f29d['startsWith'](_0x1418a8[_0x1921de(0x24c)])||_0x46f29d['startsWith'](_0x1921de(0x1f5)))_0x5dfc72=_0x1418a8['Mqzrw'];else{if(_0x46f29d['startsWith']('COMMIT'))_0x5dfc72=_0x1418a8[_0x1921de(0x278)];else{if(_0x46f29d[_0x1921de(0x1dd)](_0x1418a8[_0x1921de(0x1fd)]))_0x5dfc72=_0x1921de(0x228);else{if(_0x46f29d['startsWith'](_0x1418a8['GFbET']))_0x5dfc72=_0x1418a8['ULFjk'];else{if(_0x46f29d['startsWith'](_0x1418a8[_0x1921de(0x1e2)]))_0x5dfc72=_0x1418a8['TLXOE'];else _0x46f29d[_0x1921de(0x1dd)](_0x1418a8['xMQRw'])&&(_0x5dfc72='DDL_DROP');}}}}}}}}return{'type':_0x5dfc72,'table':_0x2c8c8f};},startQueryTimer=()=>{const _0x47e967={'otsgb':function(_0x3fefe5,_0x30e9e8){return _0x3fefe5(_0x30e9e8);},'WXLcK':function(_0x3ec580,_0x4896c3){return _0x3ec580*_0x4896c3;}},_0x52032e=process['hrtime']();return()=>{const _0x21a1d2=a0_0x23fa,[_0x11b8b1,_0x4c6d4a]=process[_0x21a1d2(0x20f)](_0x52032e);return _0x47e967['otsgb'](parseFloat,(_0x47e967[_0x21a1d2(0x259)](_0x11b8b1,0x3e8)+_0x4c6d4a/0xf4240)['toFixed'](0x2));};},logQuery=(_0x1f815f,_0x359c2f=[],_0x3bdfe0={})=>{const _0x1ea7a8=a0_0x26c466,_0x2673ce={'jwZcy':function(_0x2061e4,_0x1a8572){return _0x2061e4>_0x1a8572;},'RnSkH':function(_0x329591,_0x9d3a4a,_0x4fe378){return _0x329591(_0x9d3a4a,_0x4fe378);},'zeqbh':function(_0x1fb33e,_0x3c3460){return _0x1fb33e!==_0x3c3460;},'zXlQN':function(_0x448fe4,_0x3489df){return _0x448fe4>_0x3489df;},'ByPDS':function(_0x49587a,_0x3dbedb){return _0x49587a||_0x3dbedb;},'oaRDA':_0x1ea7a8(0x1f7),'Xdkqc':'\x20[SLOW]','yrHHc':'warn','XZnxd':function(_0x4b0474,_0x439316){return _0x4b0474===_0x439316;},'VwraB':'info'};if(!sqlLogEnabled){logger[_0x1ea7a8(0x1f7)]({'event':'db_query','query':_0x1f815f[_0x1ea7a8(0x280)](0x0,0xc8),'paramCount':_0x359c2f[_0x1ea7a8(0x218)]},'DB\x20Query');return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType='postgresql'}=_0x3bdfe0,{type:_0x30b064,table:_0x386537}=parseQueryMetadata(_0x1f815f),_0xd9491d={'event':_0x1ea7a8(0x223),'queryType':_0x30b064,'table':_0x386537,'query':_0x1f815f,'paramCount':_0x359c2f['length'],'dbType':dbType};sqlLogParams&&_0x2673ce[_0x1ea7a8(0x274)](_0x359c2f[_0x1ea7a8(0x218)],0x0)&&(_0xd9491d['params']=_0x2673ce[_0x1ea7a8(0x1d0)](redactSensitiveParams,_0x359c2f,_0x1f815f));_0x2673ce[_0x1ea7a8(0x21b)](duration,null)&&(_0xd9491d['durationMs']=duration,_0xd9491d[_0x1ea7a8(0x1cf)]=_0x2673ce[_0x1ea7a8(0x1e7)](duration,sqlLogSlowThreshold));rowsAffected!==null&&(_0xd9491d['rowsAffected']=rowsAffected);const _0x40232b=_0x2673ce['ByPDS'](_0x386537,'unknown');let _0x456a06='['+_0x30b064+']\x20'+_0x40232b;_0x2673ce[_0x1ea7a8(0x21b)](duration,null)&&(_0x456a06+='\x20('+duration+_0x1ea7a8(0x27a));const _0x10836d=duration!==null&&_0x2673ce['zXlQN'](duration,sqlLogSlowThreshold);let _0x4c8b33=_0x2673ce[_0x1ea7a8(0x234)];if(_0x10836d)_0x456a06+=_0x2673ce['Xdkqc'],_0x4c8b33=_0x2673ce[_0x1ea7a8(0x261)],logger[_0x1ea7a8(0x251)](_0xd9491d,_0x456a06);else _0x2673ce['XZnxd'](sqlLogLevel,_0x1ea7a8(0x26c))?(_0x4c8b33=_0x2673ce['VwraB'],logger[_0x1ea7a8(0x26c)](_0xd9491d,_0x456a06)):logger['debug'](_0xd9491d,_0x456a06);_0x2673ce['RnSkH'](writeToFileLog,{..._0xd9491d,'level':_0x4c8b33,'msg':_0x456a06,'time':new Date()['toISOString']()},_0x4c8b33);},logTransaction=(_0x3d73aa,_0x46f67f)=>{const _0x5abef5=a0_0x26c466,_0x2081e1={'event':_0x5abef5(0x22c),'status':_0x3d73aa,'queryCount':_0x46f67f},_0x2c2337='Transaction\x20'+_0x3d73aa;logger[_0x5abef5(0x1f7)](_0x2081e1,_0x2c2337),writeToFileLog({..._0x2081e1,'level':'debug','msg':_0x2c2337,'time':new Date()[_0x5abef5(0x1da)]()},_0x5abef5(0x1f7));},redactObject=_0x4ea49d=>{const _0x55ed0d=a0_0x26c466,_0x3d626d={'ipQZK':_0x55ed0d(0x1d4),'tUVLw':'password','bzLdb':_0x55ed0d(0x222),'yrdDS':'secret','MjdKZ':_0x55ed0d(0x1d7),'MVRsE':_0x55ed0d(0x237),'RgCSI':_0x55ed0d(0x242),'VLTjb':'cvv','PUcxl':'ssn','cgMID':'access_token','bytCv':function(_0x446cbc,_0x3afd2a){return _0x446cbc===_0x3afd2a;}};if(!_0x4ea49d||typeof _0x4ea49d!==_0x3d626d[_0x55ed0d(0x1df)])return _0x4ea49d;const _0x28d573=[_0x3d626d[_0x55ed0d(0x1ed)],_0x3d626d['bzLdb'],'pwd',_0x55ed0d(0x267),_0x3d626d['yrdDS'],_0x55ed0d(0x260),'api_key',_0x3d626d[_0x55ed0d(0x205)],_0x3d626d[_0x55ed0d(0x24f)],_0x3d626d['RgCSI'],_0x3d626d[_0x55ed0d(0x1cb)],_0x3d626d['PUcxl'],'pin','private_key',_0x55ed0d(0x1e8),'refresh_token',_0x3d626d[_0x55ed0d(0x1ea)]],_0x54aa8b=Array['isArray'](_0x4ea49d)?[..._0x4ea49d]:{..._0x4ea49d};for(const _0x4a3255 of Object['keys'](_0x54aa8b)){const _0x5ebc54=_0x4a3255['toLowerCase']();if(_0x28d573[_0x55ed0d(0x1fc)](_0x3b12ee=>_0x5ebc54['includes'](_0x3b12ee)))_0x54aa8b[_0x4a3255]=_0x55ed0d(0x257);else _0x3d626d['bytCv'](typeof _0x54aa8b[_0x4a3255],'object')&&_0x54aa8b[_0x4a3255]!==null&&(_0x54aa8b[_0x4a3255]=redactObject(_0x54aa8b[_0x4a3255]));}return _0x54aa8b;},logError=(_0x4648b7,_0x4900e3={},_0x1e4c8e=null)=>{const _0x5db4bf=a0_0x26c466,_0x48a656={'OFrRp':'error','MuPyk':_0x5db4bf(0x203),'WTDbq':function(_0x34ff71,_0x39d6d2,_0x22271f){return _0x34ff71(_0x39d6d2,_0x22271f);}},_0x3eac40={'event':_0x48a656['OFrRp'],'errorName':_0x4648b7[_0x5db4bf(0x204)]||_0x48a656['MuPyk'],'errorMessage':_0x4648b7['message'],'errorCode':_0x4648b7[_0x5db4bf(0x245)]||null,'stack':_0x4648b7[_0x5db4bf(0x1f1)],..._0x4900e3},_0x14f2a1=_0x1e4c8e||'Error:\x20'+_0x4648b7['message'];logger['error'](_0x3eac40,_0x14f2a1),_0x48a656['WTDbq'](writeToFileLog,{..._0x3eac40,'level':'error','msg':_0x14f2a1,'time':new Date()['toISOString']()},_0x48a656['OFrRp']);},logFatalError=(_0x2af8a4,_0x393a3c={},_0x390817=null)=>{const _0x224337=a0_0x26c466,_0x514cb7={'DCqBn':'fatal_error','zAylK':'Error','QCXCZ':_0x224337(0x258)},_0xeaa78e={'event':_0x514cb7[_0x224337(0x266)],'errorName':_0x2af8a4['name']||_0x514cb7['zAylK'],'errorMessage':_0x2af8a4['message'],'errorCode':_0x2af8a4[_0x224337(0x245)]||null,'stack':_0x2af8a4['stack'],'severity':'CRITICAL',..._0x393a3c},_0x2bf161=_0x390817||_0x224337(0x27d)+_0x2af8a4['message'];logger['fatal'](_0xeaa78e,_0x2bf161),writeToFileLog({..._0xeaa78e,'level':_0x514cb7[_0x224337(0x270)],'msg':_0x2bf161,'time':new Date()[_0x224337(0x1da)]()},'error');},logHttpError=(_0x5949fa,_0x1dc7e2,_0x269cc5={})=>{const _0x23f6c5=a0_0x26c466,_0x412eea={'VAkMf':_0x23f6c5(0x203),'VcQBR':'user-agent','TtCtI':_0x23f6c5(0x246),'vdcMS':function(_0x1d1d80,_0x285767){return _0x1d1d80>=_0x285767;},'bGZkM':function(_0x3ab4cd,_0x1f9acf,_0x15a7ef){return _0x3ab4cd(_0x1f9acf,_0x15a7ef);},'ZzjYS':'error'},_0x3cb8cc={'event':_0x23f6c5(0x219),'errorName':_0x5949fa[_0x23f6c5(0x204)]||_0x412eea['VAkMf'],'errorMessage':_0x5949fa[_0x23f6c5(0x1d8)],'errorCode':_0x5949fa[_0x23f6c5(0x245)]||_0x5949fa[_0x23f6c5(0x1db)]||0x1f4,'stack':_0x5949fa['stack'],'method':_0x1dc7e2?.[_0x23f6c5(0x217)],'url':_0x1dc7e2?.[_0x23f6c5(0x1f6)]||_0x1dc7e2?.['originalUrl'],'path':_0x1dc7e2?.['path'],'ip':_0x1dc7e2?.['ip']||_0x1dc7e2?.[_0x23f6c5(0x206)]?.['remoteAddress'],'userAgent':_0x1dc7e2?.[_0x23f6c5(0x255)]?.(_0x412eea['VcQBR']),'requestId':_0x1dc7e2?.['id']||_0x1dc7e2?.[_0x23f6c5(0x23c)]?.[_0x412eea['TtCtI']],'body':_0x1dc7e2?.['body']?redactObject(_0x1dc7e2[_0x23f6c5(0x1c7)]):undefined,'query':_0x1dc7e2?.[_0x23f6c5(0x1d1)],..._0x269cc5},_0x12b202=_0x5949fa[_0x23f6c5(0x1db)]||_0x5949fa[_0x23f6c5(0x1e0)]||0x1f4,_0x54b3a9=_0x23f6c5(0x240)+_0x12b202+':\x20'+_0x5949fa['message'];_0x412eea['vdcMS'](_0x12b202,0x1f4)?logger['error'](_0x3cb8cc,_0x54b3a9):logger[_0x23f6c5(0x251)](_0x3cb8cc,_0x54b3a9),_0x412eea[_0x23f6c5(0x1ec)](writeToFileLog,{..._0x3cb8cc,'level':_0x12b202>=0x1f4?_0x412eea['ZzjYS']:'warn','msg':_0x54b3a9,'time':new Date()['toISOString']()},_0x12b202>=0x1f4?_0x23f6c5(0x221):'warn');},logUncaughtError=(_0x253597,_0x3499d2)=>{const _0x277a59=a0_0x26c466,_0x1040aa={'sHRVR':_0x277a59(0x203),'BriYD':'CRITICAL','bmkRz':'error'},_0x4bcd23={'event':_0x253597,'errorName':_0x3499d2?.[_0x277a59(0x204)]||_0x1040aa[_0x277a59(0x244)],'errorMessage':_0x3499d2?.[_0x277a59(0x1d8)]||String(_0x3499d2),'errorCode':_0x3499d2?.['code']||null,'stack':_0x3499d2?.[_0x277a59(0x1f1)],'severity':_0x1040aa[_0x277a59(0x233)],'processId':process['pid'],'memoryUsage':process[_0x277a59(0x1fa)](),'uptime':process[_0x277a59(0x265)]()},_0x4daa0f='['+_0x253597['toUpperCase']()+']\x20'+(_0x3499d2?.[_0x277a59(0x1d8)]||_0x3499d2);logger[_0x277a59(0x258)](_0x4bcd23,_0x4daa0f),writeToFileLog({..._0x4bcd23,'level':'fatal','msg':_0x4daa0f,'time':new Date()['toISOString']()},_0x1040aa['bmkRz']);},setupGlobalErrorHandlers=()=>{const _0xd5c5c=a0_0x26c466,_0x5c5d84={'uDMyA':function(_0x530912,_0x28f3c2,_0xf7de2){return _0x530912(_0x28f3c2,_0xf7de2);},'inWcX':function(_0x1e4ae5,_0x36dd74){return _0x1e4ae5 instanceof _0x36dd74;},'tLWAU':_0xd5c5c(0x24d),'OpRtL':_0xd5c5c(0x25d),'Nlutr':'global_error_handlers_setup','RpXnb':'Global\x20error\x20handlers\x20initialized','nehWR':_0xd5c5c(0x26c)};process['on']('uncaughtException',_0x53a4a9=>{const _0xb3f589=_0xd5c5c;_0x5c5d84[_0xb3f589(0x279)](logUncaughtError,_0xb3f589(0x214),_0x53a4a9),setTimeout(()=>{process['exit'](0x1);},0x3e8);}),process['on']('unhandledRejection',(_0x140e50,_0x3dbb0f)=>{const _0x2c5e49=_0xd5c5c,_0x1f2424=_0x5c5d84['inWcX'](_0x140e50,Error)?_0x140e50:new Error(String(_0x140e50));_0x5c5d84[_0x2c5e49(0x279)](logUncaughtError,'unhandledRejection',_0x1f2424);}),process['on'](_0x5c5d84['OpRtL'],_0x5e9cf0=>{const _0x3e6183=_0xd5c5c;logger['warn']({'event':_0x5c5d84[_0x3e6183(0x1d9)],'name':_0x5e9cf0['name'],'message':_0x5e9cf0['message'],'stack':_0x5e9cf0[_0x3e6183(0x1f1)]},'Process\x20Warning:\x20'+_0x5e9cf0['message']);});const _0x136c34={'event':_0x5c5d84['Nlutr']},_0x533b49=_0x5c5d84[_0xd5c5c(0x1fe)];logger['info'](_0x136c34,_0x533b49),writeToFileLog({..._0x136c34,'level':_0x5c5d84['nehWR'],'msg':_0x533b49,'time':new Date()[_0xd5c5c(0x1da)]()},'info');},createErrorHandlerMiddleware=()=>{const _0xc87a78={'JxQrR':function(_0x1e1050,_0x22e269,_0x18c1fc){return _0x1e1050(_0x22e269,_0x18c1fc);}};return(_0x4832c2,_0x2d953b,_0x41c233,_0x5e601f)=>{const _0x241902=a0_0x23fa;_0xc87a78['JxQrR'](logHttpError,_0x4832c2,_0x2d953b);const _0x241d9d=_0x4832c2[_0x241902(0x1db)]||_0x4832c2[_0x241902(0x1e0)]||0x1f4;_0x41c233[_0x241902(0x1e0)](_0x241d9d)[_0x241902(0x201)]({'success':![],'error':_0x241d9d>=0x1f4?_0x241902(0x1c6):_0x4832c2['message'],'requestId':_0x2d953b['id']||_0x2d953b[_0x241902(0x23c)]?.[_0x241902(0x246)]||null});};};module[a0_0x26c466(0x253)]={'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_0x4260d0=a0_0x101e;(function(_0x3b4c8f,_0x6cd6fa){const _0x333541=a0_0x101e,_0x197d2e=_0x3b4c8f();while(!![]){try{const _0x4fa131=parseInt(_0x333541(0xf9))/0x1*(-parseInt(_0x333541(0xfe))/0x2)+-parseInt(_0x333541(0x104))/0x3*(parseInt(_0x333541(0x118))/0x4)+-parseInt(_0x333541(0x113))/0x5*(parseInt(_0x333541(0x101))/0x6)+-parseInt(_0x333541(0xf3))/0x7*(-parseInt(_0x333541(0x106))/0x8)+-parseInt(_0x333541(0x112))/0x9*(-parseInt(_0x333541(0x111))/0xa)+parseInt(_0x333541(0x115))/0xb+parseInt(_0x333541(0x11a))/0xc;if(_0x4fa131===_0x6cd6fa)break;else _0x197d2e['push'](_0x197d2e['shift']());}catch(_0x3e5d1d){_0x197d2e['push'](_0x197d2e['shift']());}}}(a0_0x5e31,0x5c9ae));function a0_0x101e(_0xd86046,_0x12d4f9){_0xd86046=_0xd86046-0xf3;const _0x5e3138=a0_0x5e31();let _0x101e88=_0x5e3138[_0xd86046];if(a0_0x101e['EzmVvZ']===undefined){var _0x59da96=function(_0x1b11d6){const _0x37746e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x300ba2='',_0x177629='';for(let _0x436202=0x0,_0x315071,_0x1653b8,_0x4b9966=0x0;_0x1653b8=_0x1b11d6['charAt'](_0x4b9966++);~_0x1653b8&&(_0x315071=_0x436202%0x4?_0x315071*0x40+_0x1653b8:_0x1653b8,_0x436202++%0x4)?_0x300ba2+=String['fromCharCode'](0xff&_0x315071>>(-0x2*_0x436202&0x6)):0x0){_0x1653b8=_0x37746e['indexOf'](_0x1653b8);}for(let _0x3403fd=0x0,_0x4be3ce=_0x300ba2['length'];_0x3403fd<_0x4be3ce;_0x3403fd++){_0x177629+='%'+('00'+_0x300ba2['charCodeAt'](_0x3403fd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x177629);};a0_0x101e['FoiciX']=_0x59da96,a0_0x101e['tcpJlp']={},a0_0x101e['EzmVvZ']=!![];}const _0x4f1c28=_0x5e3138[0x0],_0x2d0039=_0xd86046+_0x4f1c28,_0x1f73d3=a0_0x101e['tcpJlp'][_0x2d0039];return!_0x1f73d3?(_0x101e88=a0_0x101e['FoiciX'](_0x101e88),a0_0x101e['tcpJlp'][_0x2d0039]=_0x101e88):_0x101e88=_0x1f73d3,_0x101e88;}const dbType=(process['env']['DB_TYPE']||a0_0x4260d0(0x103))[a0_0x4260d0(0x11f)]();function a0_0x5e31(){const _0x3903d1=['mtKZodqYmhrruu1xvW','y2XLyxjdywnOzq','DhjPBq','mti0DeTZs2P6','r1zMCKO','mtq5mZaXnM5eBgPnyG','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','Dg9vChbLCKnHC2u','iIbUB3qGzM91BMqGAw4G','z2v0','Dg9mB3DLCKnHC2u','lI9KyG','CMvZB2X2zuXVB2T1CfzHBhvL','Bg9VA3vWx3rHyMXLx2XVywrLza','nJG2yK5qr2fR','Cw1TueS','ywrK','BgvUz3rO','z2v0rgLZDgLUy3rwywX1zxm','vMfSDwuGiG','mtvoswHVwfe','zM9YrwfJAa','Bg9HzeXVB2T1CfrHyMXL','Bg9VA3vWq2fJAgu','iezst00G','mtiYnZHeyMD4zeG','zgvIDwC','y2XLyxi','ntKYoe9tyLHNDG','lI9KyI1VCMfJBgu','Cg9ZDgDYzxnXBa','nJy4mZD3tLbtsvu','CMPgs3u','mJKXnZzmr3Dywfe','tg9VA3vWignHy2HLignSzwfYzwq','AgfZ','B2zyr04','ChvZAa','uLfQz0S','rurlvMm','A2v5CW','tg9VA3vWigzPzwXKCYbWCM9JzxnZzwq','zxHLy3v0zvf1zxj5','zw50CMLLCW','ntGWAw9Hrg5U','odqXodzfuwzbseS','mtK1wxjsv091','whHIv0m'];a0_0x5e31=function(){return _0x3903d1;};return a0_0x5e31();}let executeQuery;if(dbType==='oracle'){const oracleDb=require(a0_0x4260d0(0x102));executeQuery=(_0x2a3feb,_0x1fb8dd)=>oracleDb[a0_0x4260d0(0x10f)](_0x2a3feb,_0x1fb8dd);}else{if(dbType==='mysql'){const mysqlDb=require('./db-mysql');executeQuery=(_0x4ebb21,_0x4e441d)=>mysqlDb['executeQuery'](_0x4ebb21,_0x4e441d);}else executeQuery=require(a0_0x4260d0(0x120))['executeQuery'];}const {logger}=require('./logger');class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x4260d0(0x116)](){const _0x58ad5a=a0_0x4260d0;this[_0x58ad5a(0xfc)][_0x58ad5a(0x100)](),logger[_0x58ad5a(0xff)]({'event':'lookup_cache_cleared'},_0x58ad5a(0x107));}async[a0_0x4260d0(0xfb)](_0x3012df,_0x2f415a,_0x2c3947){const _0x47760f=a0_0x4260d0,_0x3aefc9={'CkApx':function(_0x556982,_0x9990e6){return _0x556982!==_0x9990e6;},'mdMdy':function(_0x5af9e4,_0x41645c){return _0x5af9e4(_0x41645c);},'OBIki':_0x47760f(0x122)},_0x26f3dc=_0x3012df+':'+_0x2f415a+':'+_0x2c3947;if(this[_0x47760f(0xfc)]['has'](_0x26f3dc))return this['lookupCache']['get'](_0x26f3dc);try{const _0x29830d='SELECT\x20'+_0x2c3947+',\x20'+_0x2f415a+_0x47760f(0xfd)+_0x3012df,_0x47cb0f=await _0x3aefc9['mdMdy'](executeQuery,_0x29830d),_0x381b36=new Map();return _0x47cb0f['forEach'](_0x197c8b=>{const _0x19db99=_0x47760f,_0x58406a=_0x197c8b[_0x2f415a]!==undefined?_0x197c8b[_0x2f415a]:_0x197c8b[_0x2f415a[_0x19db99(0x11c)]()],_0x59886d=_0x197c8b[_0x2c3947]!==undefined?_0x197c8b[_0x2c3947]:_0x197c8b[_0x2c3947['toUpperCase']()];_0x58406a!==null&&_0x3aefc9['CkApx'](_0x58406a,undefined)&&(_0x381b36['set'](String(_0x58406a)['toLowerCase']()['trim'](),_0x59886d),_0x381b36['set'](String(_0x58406a)['trim'](),_0x59886d));}),this['lookupCache']['set'](_0x26f3dc,_0x381b36),logger['info']({'event':_0x3aefc9['OBIki'],'table':_0x3012df,'column':_0x2f415a,'count':_0x47cb0f['length']},'Lookup\x20table\x20loaded:\x20'+_0x3012df),_0x381b36;}catch(_0x4de24){logger['error']({'event':'lookup_table_load_error','table':_0x3012df,'error':_0x4de24['message']},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x3012df);throw _0x4de24;}}['resolveLookupValue'](_0x4ff026,_0x1272b3){const _0x14b0cc=a0_0x4260d0,_0x57623a={'XxbWC':function(_0xaaba,_0x3b699d){return _0xaaba===_0x3b699d;},'qmmPK':function(_0xe2267d,_0x33844a){return _0xe2267d(_0x33844a);}};if(_0x4ff026===null||_0x57623a[_0x14b0cc(0x114)](_0x4ff026,undefined)||_0x4ff026==='')return null;const _0xdbca5=_0x57623a[_0x14b0cc(0xf4)](String,_0x4ff026)[_0x14b0cc(0x117)]();if(_0x1272b3['has'](_0xdbca5))return _0x1272b3['get'](_0xdbca5);const _0x326493=_0xdbca5['toLowerCase']();if(_0x1272b3[_0x14b0cc(0x108)](_0x326493))return _0x1272b3['get'](_0x326493);return null;}async['processLookupFields'](_0x10d1ab,_0x10ccaf){const _0x52ea94=a0_0x4260d0,_0x1476a0={'ofXGN':function(_0x2aae5b,_0x42aa0b){return _0x2aae5b===_0x42aa0b;},'cTeVI':function(_0x205164,_0x36b5c7){return _0x205164!==_0x36b5c7;},'LqsNv':'lookup_fields_processed'};if(!_0x10ccaf||Object[_0x52ea94(0x10d)](_0x10ccaf)[_0x52ea94(0xf6)]===0x0)return{'processedRows':_0x10d1ab,'errors':[]};const _0x4223e6=[],_0x24c8f6=new Map();for(const [_0x5abfd8,_0x295a35]of Object[_0x52ea94(0x110)](_0x10ccaf)){const {lookupTable:_0x1a7040,lookupColumn:_0x264410,lookupIdColumn:_0x592bae}=_0x295a35,_0x3241e7=_0x1a7040+':'+_0x264410+':'+_0x592bae;if(!_0x24c8f6['has'](_0x3241e7)){const _0x31cb6a=await this[_0x52ea94(0xfb)](_0x1a7040,_0x264410,_0x592bae);_0x24c8f6['set'](_0x3241e7,_0x31cb6a);}}const _0x5d3ca0=_0x10d1ab['map']((_0x2c9113,_0x29bade)=>{const _0x29644=_0x52ea94,_0x1e653b={..._0x2c9113};for(const [_0x1fdbe5,_0x1da2c6]of Object[_0x29644(0x110)](_0x10ccaf)){const {lookupTable:_0x5c6c0f,lookupColumn:_0x2f7e1e,lookupIdColumn:_0x21ce67,targetField:_0x1891ad,required:_0x5e061e}=_0x1da2c6,_0x5489fc=_0x5c6c0f+':'+_0x2f7e1e+':'+_0x21ce67,_0xd50a48=_0x24c8f6[_0x29644(0x11e)](_0x5489fc),_0x155533=_0x2c9113[_0x1fdbe5];if((_0x1476a0[_0x29644(0x109)](_0x155533,null)||_0x155533===undefined||_0x155533==='')&&!_0x5e061e){_0x1e653b[_0x1891ad]=null;continue;}const _0x5f0a75=this[_0x29644(0x121)](_0x155533,_0xd50a48);_0x1476a0['cTeVI'](_0x5f0a75,null)?_0x1e653b[_0x1891ad]=_0x5f0a75:(_0x5e061e&&_0x4223e6[_0x29644(0x10a)]({'rowIndex':_0x29bade,'field':_0x1fdbe5,'value':_0x155533,'targetField':_0x1891ad,'lookupTable':_0x5c6c0f,'message':_0x29644(0xf8)+_0x155533+_0x29644(0x11d)+_0x5c6c0f}),_0x1e653b[_0x1891ad]=null);}return _0x1e653b;});return logger['info']({'event':_0x1476a0['LqsNv'],'totalRows':_0x10d1ab['length'],'errorCount':_0x4223e6['length'],'lookupFieldCount':Object['keys'](_0x10ccaf)['length']},_0x52ea94(0x10e)),{'processedRows':_0x5d3ca0,'errors':_0x4223e6};}[a0_0x4260d0(0xf7)](_0x5f1756,_0x5c53f3){const _0x5f48f7=a0_0x4260d0,_0x2bdc3b={'RQjgK':function(_0x5823fa,_0x5b6be4){return _0x5823fa!==_0x5b6be4;},'rjFKu':function(_0x866633,_0x3535b2){return _0x866633!==_0x3535b2;},'GVfrJ':function(_0x3d29d4,_0x3c1cff){return _0x3d29d4(_0x3c1cff);}},_0x1bca9e=new Set();return _0x5f1756[_0x5f48f7(0xfa)](_0x5c8fd4=>{const _0x57a466=_0x5f48f7,_0x32a9cb=_0x5c8fd4[_0x5c53f3];_0x2bdc3b[_0x57a466(0x10b)](_0x32a9cb,null)&&_0x2bdc3b[_0x57a466(0x105)](_0x32a9cb,undefined)&&_0x32a9cb!==''&&_0x1bca9e[_0x57a466(0xf5)](_0x2bdc3b[_0x57a466(0x119)](String,_0x32a9cb)[_0x57a466(0x117)]());}),Array['from'](_0x1bca9e);}async['validateLookupValues'](_0x5ab751,_0x500083){const _0x1136fa=a0_0x4260d0,_0x45291a={'ySSNy':function(_0x322c18,_0x5bc969){return _0x322c18!==_0x5bc969;},'EDKVc':function(_0x317535,_0x3666a2){return _0x317535===_0x3666a2;},'AzyYC':function(_0x3093b4,_0x5549cb){return _0x3093b4>_0x5549cb;}};if(!_0x500083||Object['keys'](_0x500083)['length']===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x20b9c2=[],_0x49de33={};for(const [_0x570550,_0x1b7779]of Object['entries'](_0x500083)){const {lookupTable:_0x2e6bb3,lookupColumn:_0x229e42,lookupIdColumn:_0x538bb8,required:_0x4b483d}=_0x1b7779,_0x6a4a48=this[_0x1136fa(0xf7)](_0x5ab751,_0x570550),_0x4365ee=await this[_0x1136fa(0xfb)](_0x2e6bb3,_0x229e42,_0x538bb8),_0x1ee683=[],_0xc300c6=[];_0x6a4a48['forEach'](_0x42777e=>{const _0x184c0d=_0x1136fa,_0x17ba5c=this[_0x184c0d(0x121)](_0x42777e,_0x4365ee);_0x45291a['ySSNy'](_0x17ba5c,null)?_0xc300c6['push'](_0x42777e):_0x1ee683[_0x184c0d(0x10a)](_0x42777e);});if(_0x45291a['AzyYC'](_0x1ee683['length'],0x0)&&_0x4b483d){_0x20b9c2['push']({'field':_0x570550,'lookupTable':_0x2e6bb3,'invalidValues':_0x1ee683,'message':_0x1ee683[_0x1136fa(0xf6)]+_0x1136fa(0x11b)+_0x2e6bb3});const _0x255fd5=[];_0x4365ee[_0x1136fa(0xfa)]((_0x288d70,_0x5e68f8)=>{const _0x20479a=_0x1136fa;if(_0x45291a[_0x20479a(0x10c)](_0x5e68f8,_0x5e68f8['toLowerCase']()))return;_0x255fd5['push'](_0x5e68f8);}),_0x49de33[_0x570550]={'invalidValues':_0x1ee683,'availableValues':_0x255fd5['slice'](0x0,0x32)};}}return{'valid':_0x45291a['EDKVc'](_0x20b9c2[_0x1136fa(0xf6)],0x0),'errors':_0x20b9c2,'suggestions':_0x49de33};}}module['exports']=new LookupResolver();
1
+ const a0_0x53c662=a0_0x55e3;function a0_0x4240(){const _0x1ecf39=['tg9VA3vWignHy2HLignSzwfYzwq','Bg9VA3vWq2fJAgu','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','zxHWB3j0CW','tg9VA3vWigzPzwXKCYbWCM9JzxnZzwq','AgfZ','ChvZAa','C2XPy2u','rNnlvxG','mtiYmtvMA2fdwwi','Bg9VA3vWx3rHyMXLx2XVywrLza','yMDwtwC','z2v0','mZK3mZm5nMnZD2zJrq','Cw1wyNC','zw50CMLLCW','BxLZCwW','mZbpquDVq1G','odi5mtaWm0zOBKHrAG','DhjPBq','lI9KyI1TExnXBa','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','iezst00G','mZHXA0Lksuu','Burzv3y','vKPHz2i','Bg9HzeXVB2T1CfrHyMXL','mtq0mtC2mZrSruzStNq','Dg9mB3DLCKnHC2u','zNjVBq','ofzisNPiDW','mtm1ntCZnu5ZEKTjBG','lI9SB2DNzxi','zxHLy3v0zvf1zxj5','ode2otzeCgTnsxi','m2PxtgfuCq','CMvZB2X2zuXVB2T1CfzHBhvL','zgvIDwC','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','DuPpu2W','ChjVy2vZC0XVB2T1CezPzwXKCW','mtHluenWtw8','D0T6u1O','zM9YrwfJAa','BwfW','y2XLyxi','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','DMfSAwrHDgvmB29RDxbwywX1zxm','lI9KyG','nJy4mLn4BgvOra','C2v0','tKXUDKe','BgvUz3rO','ndm1nZe5menxDxviDa'];a0_0x4240=function(){return _0x1ecf39;};return a0_0x4240();}(function(_0x108ec3,_0x4a1e9c){const _0xce746e=a0_0x55e3,_0x1956fa=_0x108ec3();while(!![]){try{const _0x9205e3=-parseInt(_0xce746e(0x1a7))/0x1*(-parseInt(_0xce746e(0x1b5))/0x2)+-parseInt(_0xce746e(0x18b))/0x3*(parseInt(_0xce746e(0x1ab))/0x4)+-parseInt(_0xce746e(0x187))/0x5*(-parseInt(_0xce746e(0x1af))/0x6)+-parseInt(_0xce746e(0x1b0))/0x7*(parseInt(_0xce746e(0x186))/0x8)+parseInt(_0xce746e(0x191))/0x9*(-parseInt(_0xce746e(0x19d))/0xa)+-parseInt(_0xce746e(0x183))/0xb+parseInt(_0xce746e(0x18a))/0xc*(parseInt(_0xce746e(0x199))/0xd);if(_0x9205e3===_0x4a1e9c)break;else _0x1956fa['push'](_0x1956fa['shift']());}catch(_0x5bef42){_0x1956fa['push'](_0x1956fa['shift']());}}}(a0_0x4240,0xb18b6));const dbType=(process['env']['DB_TYPE']||'postgresql')['toLowerCase']();let executeQuery;if(dbType==='oracle'){const oracleDb=require('./db-oracle');executeQuery=(_0x5ce357,_0x19c6de)=>oracleDb['executeQuery'](_0x5ce357,_0x19c6de);}else{if(dbType===a0_0x53c662(0x1ae)){const mysqlDb=require(a0_0x53c662(0x1b2));executeQuery=(_0x5ef826,_0x156bca)=>mysqlDb[a0_0x53c662(0x189)](_0x5ef826,_0x156bca);}else executeQuery=require(a0_0x53c662(0x198))['executeQuery'];}function a0_0x55e3(_0x13f2ce,_0x10858e){_0x13f2ce=_0x13f2ce-0x180;const _0x424066=a0_0x4240();let _0x55e347=_0x424066[_0x13f2ce];if(a0_0x55e3['sDfWLy']===undefined){var _0x4e73e9=function(_0x2fb8e1){const _0x279818='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x43830b='',_0x5c4db0='';for(let _0x572864=0x0,_0x49a808,_0x1da9a6,_0x4635ec=0x0;_0x1da9a6=_0x2fb8e1['charAt'](_0x4635ec++);~_0x1da9a6&&(_0x49a808=_0x572864%0x4?_0x49a808*0x40+_0x1da9a6:_0x1da9a6,_0x572864++%0x4)?_0x43830b+=String['fromCharCode'](0xff&_0x49a808>>(-0x2*_0x572864&0x6)):0x0){_0x1da9a6=_0x279818['indexOf'](_0x1da9a6);}for(let _0x56455e=0x0,_0xe41825=_0x43830b['length'];_0x56455e<_0xe41825;_0x56455e++){_0x5c4db0+='%'+('00'+_0x43830b['charCodeAt'](_0x56455e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c4db0);};a0_0x55e3['BaTTEb']=_0x4e73e9,a0_0x55e3['HuZohP']={},a0_0x55e3['sDfWLy']=!![];}const _0x463c79=_0x424066[0x0],_0x4e4567=_0x13f2ce+_0x463c79,_0x3c04c9=a0_0x55e3['HuZohP'][_0x4e4567];return!_0x3c04c9?(_0x55e347=a0_0x55e3['BaTTEb'](_0x55e347),a0_0x55e3['HuZohP'][_0x4e4567]=_0x55e347):_0x55e347=_0x3c04c9,_0x55e347;}const {logger}=require(a0_0x53c662(0x188));class LookupResolver{constructor(){const _0x31aa0a=a0_0x53c662;this[_0x31aa0a(0x19f)]=new Map();}['clearCache'](){const _0xb12018=a0_0x53c662;this['lookupCache'][_0xb12018(0x195)](),logger[_0xb12018(0x18d)]({'event':_0xb12018(0x196)},_0xb12018(0x19e));}async[a0_0x53c662(0x182)](_0x4c9f9b,_0x14b521,_0x354aff){const _0xf4d948=a0_0x53c662,_0x343347={'NLnvA':function(_0x4d15e7,_0x548963){return _0x4d15e7!==_0x548963;},'FsKUx':function(_0x3fdcc7,_0x50af4c){return _0x3fdcc7!==_0x50af4c;},'umkHV':function(_0x5e9f2f,_0x124cab){return _0x5e9f2f(_0x124cab);},'bZVjp':_0xf4d948(0x1a8)},_0x558f84=_0x4c9f9b+':'+_0x14b521+':'+_0x354aff;if(this[_0xf4d948(0x19f)][_0xf4d948(0x1a3)](_0x558f84))return this['lookupCache']['get'](_0x558f84);try{const _0x1e9c77='SELECT\x20'+_0x354aff+',\x20'+_0x14b521+_0xf4d948(0x1b4)+_0x4c9f9b,_0x3fbd62=await _0x343347['umkHV'](executeQuery,_0x1e9c77),_0x4a16fe=new Map();return _0x3fbd62['forEach'](_0x25d8eb=>{const _0x2d5a9a=_0xf4d948,_0x2e668f=_0x343347[_0x2d5a9a(0x19b)](_0x25d8eb[_0x14b521],undefined)?_0x25d8eb[_0x14b521]:_0x25d8eb[_0x14b521['toUpperCase']()],_0x49aa91=_0x25d8eb[_0x354aff]!==undefined?_0x25d8eb[_0x354aff]:_0x25d8eb[_0x354aff['toUpperCase']()];_0x2e668f!==null&&_0x343347[_0x2d5a9a(0x1a6)](_0x2e668f,undefined)&&(_0x4a16fe[_0x2d5a9a(0x19a)](String(_0x2e668f)['toLowerCase']()[_0x2d5a9a(0x1b1)](),_0x49aa91),_0x4a16fe[_0x2d5a9a(0x19a)](String(_0x2e668f)['trim'](),_0x49aa91));}),this[_0xf4d948(0x19f)]['set'](_0x558f84,_0x4a16fe),logger['info']({'event':_0x343347['bZVjp'],'table':_0x4c9f9b,'column':_0x14b521,'count':_0x3fbd62['length']},'Lookup\x20table\x20loaded:\x20'+_0x4c9f9b),_0x4a16fe;}catch(_0xd5323e){logger['error']({'event':_0xf4d948(0x18e),'table':_0x4c9f9b,'error':_0xd5323e['message']},_0xf4d948(0x1b3)+_0x4c9f9b);throw _0xd5323e;}}[a0_0x53c662(0x18c)](_0x4200d1,_0x4b0a11){const _0x17e306=a0_0x53c662,_0x4bc42a={'zqxUw':function(_0x3dba1a,_0x297dc9){return _0x3dba1a===_0x297dc9;},'YfmWN':function(_0x1d8904,_0x1efc46){return _0x1d8904===_0x1efc46;}};if(_0x4bc42a['zqxUw'](_0x4200d1,null)||_0x4200d1===undefined||_0x4bc42a['YfmWN'](_0x4200d1,''))return null;const _0x51a41a=String(_0x4200d1)['trim']();if(_0x4b0a11[_0x17e306(0x1a3)](_0x51a41a))return _0x4b0a11['get'](_0x51a41a);const _0x116a52=_0x51a41a['toLowerCase']();if(_0x4b0a11['has'](_0x116a52))return _0x4b0a11['get'](_0x116a52);return null;}async[a0_0x53c662(0x190)](_0xfa2ce7,_0x56fb6a){const _0x45d570=a0_0x53c662,_0x26b540={'VJagb':function(_0x1d4e19,_0x293721){return _0x1d4e19===_0x293721;},'qmVbw':function(_0x27ce24,_0x288c95){return _0x27ce24===_0x288c95;},'YXkRj':function(_0x3f0ba6,_0x59a285){return _0x3f0ba6!==_0x59a285;}};if(!_0x56fb6a||_0x26b540[_0x45d570(0x1ac)](Object['keys'](_0x56fb6a)[_0x45d570(0x19c)],0x0))return{'processedRows':_0xfa2ce7,'errors':[]};const _0x3ffab1=[],_0x164064=new Map();for(const [_0x46472b,_0x88b366]of Object['entries'](_0x56fb6a)){const {lookupTable:_0x56758c,lookupColumn:_0x554ecb,lookupIdColumn:_0x5a4a59}=_0x88b366,_0x45d51a=_0x56758c+':'+_0x554ecb+':'+_0x5a4a59;if(!_0x164064['has'](_0x45d51a)){const _0x1e7104=await this[_0x45d570(0x182)](_0x56758c,_0x554ecb,_0x5a4a59);_0x164064[_0x45d570(0x19a)](_0x45d51a,_0x1e7104);}}const _0x3ff192=_0xfa2ce7[_0x45d570(0x194)]((_0x5c1ec4,_0x4647db)=>{const _0x3072ed=_0x45d570,_0x56d4ce={..._0x5c1ec4};for(const [_0xef0e20,_0x44f1ed]of Object[_0x3072ed(0x1ad)](_0x56fb6a)){const {lookupTable:_0x5833d1,lookupColumn:_0x556c25,lookupIdColumn:_0x55db71,targetField:_0xbcac10,required:_0x508c23}=_0x44f1ed,_0x4a46ff=_0x5833d1+':'+_0x556c25+':'+_0x55db71,_0x5a8bff=_0x164064[_0x3072ed(0x1aa)](_0x4a46ff),_0x5aec64=_0x5c1ec4[_0xef0e20];if((_0x5aec64===null||_0x26b540[_0x3072ed(0x181)](_0x5aec64,undefined)||_0x26b540[_0x3072ed(0x1ac)](_0x5aec64,''))&&!_0x508c23){_0x56d4ce[_0xbcac10]=null;continue;}const _0x13f8af=this[_0x3072ed(0x18c)](_0x5aec64,_0x5a8bff);_0x26b540['YXkRj'](_0x13f8af,null)?_0x56d4ce[_0xbcac10]=_0x13f8af:(_0x508c23&&_0x3ffab1['push']({'rowIndex':_0x4647db,'field':_0xef0e20,'value':_0x5aec64,'targetField':_0xbcac10,'lookupTable':_0x5833d1,'message':'Value\x20\x22'+_0x5aec64+'\x22\x20not\x20found\x20in\x20'+_0x5833d1}),_0x56d4ce[_0xbcac10]=null);}return _0x56d4ce;});return logger['info']({'event':'lookup_fields_processed','totalRows':_0xfa2ce7[_0x45d570(0x19c)],'errorCount':_0x3ffab1['length'],'lookupFieldCount':Object['keys'](_0x56fb6a)[_0x45d570(0x19c)]},_0x45d570(0x1a2)),{'processedRows':_0x3ff192,'errors':_0x3ffab1};}['getDistinctValues'](_0x1306b0,_0x3af4e3){const _0x3a62b0=a0_0x53c662,_0x5e5048={'mDYWv':function(_0x32d708,_0x333e87){return _0x32d708!==_0x333e87;},'MNKPq':function(_0xb934f1,_0x3510c6){return _0xb934f1!==_0x3510c6;},'bgVMg':function(_0x4cb245,_0x5813b3){return _0x4cb245!==_0x5813b3;},'uJOSl':function(_0x1df7dc,_0x40c533){return _0x1df7dc(_0x40c533);}},_0xdd7ebf=new Set();return _0x1306b0['forEach'](_0x53856f=>{const _0x45a292=a0_0x55e3,_0x5ecafb=_0x53856f[_0x3af4e3];_0x5e5048[_0x45a292(0x180)](_0x5ecafb,null)&&_0x5e5048['MNKPq'](_0x5ecafb,undefined)&&_0x5e5048[_0x45a292(0x1a9)](_0x5ecafb,'')&&_0xdd7ebf['add'](_0x5e5048[_0x45a292(0x18f)](String,_0x5ecafb)[_0x45a292(0x1b1)]());}),Array[_0x3a62b0(0x185)](_0xdd7ebf);}async[a0_0x53c662(0x197)](_0xef68a3,_0x2c03a8){const _0xc91e43=a0_0x53c662,_0xcc4a44={'wKzSZ':function(_0x3d1c27,_0x2d69a2){return _0x3d1c27!==_0x2d69a2;}};if(!_0x2c03a8||Object['keys'](_0x2c03a8)[_0xc91e43(0x19c)]===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x1f4642=[],_0x25459f={};for(const [_0x25e822,_0x17bb2f]of Object['entries'](_0x2c03a8)){const {lookupTable:_0x3080ff,lookupColumn:_0x4a84fd,lookupIdColumn:_0x1f66b7,required:_0x972b27}=_0x17bb2f,_0x55f883=this['getDistinctValues'](_0xef68a3,_0x25e822),_0x3cf463=await this[_0xc91e43(0x182)](_0x3080ff,_0x4a84fd,_0x1f66b7),_0x241e40=[],_0x36eff0=[];_0x55f883[_0xc91e43(0x193)](_0x3d9155=>{const _0x558060=_0xc91e43,_0xdfd432=this['resolveLookupValue'](_0x3d9155,_0x3cf463);_0xcc4a44[_0x558060(0x192)](_0xdfd432,null)?_0x36eff0['push'](_0x3d9155):_0x241e40[_0x558060(0x1a4)](_0x3d9155);});if(_0x241e40[_0xc91e43(0x19c)]>0x0&&_0x972b27){_0x1f4642[_0xc91e43(0x1a4)]({'field':_0x25e822,'lookupTable':_0x3080ff,'invalidValues':_0x241e40,'message':_0x241e40['length']+_0xc91e43(0x1a0)+_0x3080ff});const _0x3c2dfd=[];_0x3cf463['forEach']((_0x842d5e,_0x22c1dd)=>{const _0x1a4298=_0xc91e43;if(_0x22c1dd===_0x22c1dd[_0x1a4298(0x184)]())return;_0x3c2dfd[_0x1a4298(0x1a4)](_0x22c1dd);}),_0x25459f[_0x25e822]={'invalidValues':_0x241e40,'availableValues':_0x3c2dfd[_0xc91e43(0x1a5)](0x0,0x32)};}}return{'valid':_0x1f4642[_0xc91e43(0x19c)]===0x0,'errors':_0x1f4642,'suggestions':_0x25459f};}}module[a0_0x53c662(0x1a1)]=new LookupResolver();
@@ -1 +1 @@
1
- const a0_0x1d27ec=a0_0x4216;(function(_0x96014b,_0xe76ba9){const _0x1eb0eb=a0_0x4216,_0x57d153=_0x96014b();while(!![]){try{const _0x46d855=parseInt(_0x1eb0eb(0xa4))/0x1*(-parseInt(_0x1eb0eb(0xba))/0x2)+-parseInt(_0x1eb0eb(0xa2))/0x3+parseInt(_0x1eb0eb(0xc2))/0x4+-parseInt(_0x1eb0eb(0xbd))/0x5+-parseInt(_0x1eb0eb(0xb9))/0x6+-parseInt(_0x1eb0eb(0xa8))/0x7*(parseInt(_0x1eb0eb(0xaa))/0x8)+-parseInt(_0x1eb0eb(0xb7))/0x9*(-parseInt(_0x1eb0eb(0xc1))/0xa);if(_0x46d855===_0xe76ba9)break;else _0x57d153['push'](_0x57d153['shift']());}catch(_0x2c52f4){_0x57d153['push'](_0x57d153['shift']());}}}(a0_0x4d69,0x44e4e));function a0_0x4216(_0x2c2f82,_0x3c34be){_0x2c2f82=_0x2c2f82-0x9f;const _0x4d692e=a0_0x4d69();let _0x42169e=_0x4d692e[_0x2c2f82];if(a0_0x4216['Ymeccl']===undefined){var _0x462669=function(_0x1f1259){const _0x3a0005='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3023cf='',_0x303780='';for(let _0x2e6814=0x0,_0xb5e5eb,_0x31e4a5,_0x4fef43=0x0;_0x31e4a5=_0x1f1259['charAt'](_0x4fef43++);~_0x31e4a5&&(_0xb5e5eb=_0x2e6814%0x4?_0xb5e5eb*0x40+_0x31e4a5:_0x31e4a5,_0x2e6814++%0x4)?_0x3023cf+=String['fromCharCode'](0xff&_0xb5e5eb>>(-0x2*_0x2e6814&0x6)):0x0){_0x31e4a5=_0x3a0005['indexOf'](_0x31e4a5);}for(let _0x20a88e=0x0,_0x5c0641=_0x3023cf['length'];_0x20a88e<_0x5c0641;_0x20a88e++){_0x303780+='%'+('00'+_0x3023cf['charCodeAt'](_0x20a88e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x303780);};a0_0x4216['lHEewM']=_0x462669,a0_0x4216['BAiPug']={},a0_0x4216['Ymeccl']=!![];}const _0x248df8=_0x4d692e[0x0],_0xe13bb=_0x2c2f82+_0x248df8,_0x3017a8=a0_0x4216['BAiPug'][_0xe13bb];return!_0x3017a8?(_0x42169e=a0_0x4216['lHEewM'](_0x42169e),a0_0x4216['BAiPug'][_0xe13bb]=_0x42169e):_0x42169e=_0x3017a8,_0x42169e;}const fs=require('fs')['promises'],path=require(a0_0x1d27ec(0xb2)),{logger}=require(a0_0x1d27ec(0xb1));class PayloadLoader{constructor(){const _0x147c55=a0_0x1d27ec,_0x4288a1={'LHxpr':'../../payload'};this[_0x147c55(0xa6)]=path['join'](__dirname,_0x4288a1['LHxpr']),this['cache']=new Map();}async['loadPayload'](_0x16ae0a,_0x1fb501){const _0x49d450=a0_0x1d27ec,_0x5e7c09={'uOfVh':_0x49d450(0xb3),'WBVLE':_0x49d450(0xa9),'lgbYg':'payload_load_error','JpQBL':_0x49d450(0xc0)},_0x3036ff=_0x16ae0a+':'+_0x1fb501;if(this[_0x49d450(0xa3)][_0x49d450(0xad)](_0x3036ff))return this[_0x49d450(0xa3)][_0x49d450(0xae)](_0x3036ff);const _0x52004c=path[_0x49d450(0xab)](this[_0x49d450(0xa6)],_0x16ae0a+'_'+_0x1fb501+'.json');try{const _0x3cfc8c=await fs[_0x49d450(0xbb)](_0x52004c,_0x5e7c09['uOfVh']),_0x21c290=JSON['parse'](_0x3cfc8c);return this['cache'][_0x49d450(0xc5)](_0x3036ff,_0x21c290),logger[_0x49d450(0xa0)]({'event':_0x49d450(0xb0),'project':_0x16ae0a,'resource':_0x1fb501},_0x5e7c09[_0x49d450(0xbe)]),_0x21c290;}catch(_0x42e71b){logger[_0x49d450(0xa1)]({'event':_0x5e7c09['lgbYg'],'project':_0x16ae0a,'resource':_0x1fb501,'error':_0x42e71b['message']},_0x5e7c09['JpQBL']);throw new Error(_0x49d450(0xb5)+_0x16ae0a+'_'+_0x1fb501);}}async['loadPayloadByName'](_0x2b3147){const _0x58be7c=a0_0x1d27ec,_0x41446c={'QnDtO':'payload_loaded','Mubhf':_0x58be7c(0xb6),'DuSqB':_0x58be7c(0xbc),'EzMML':_0x58be7c(0x9f)},_0x555495='payload:'+_0x2b3147;if(this['cache'][_0x58be7c(0xad)](_0x555495))return this['cache']['get'](_0x555495);const _0x50717c=path[_0x58be7c(0xab)](this['payloadDir'],_0x2b3147+'.json');try{const _0x437e34=await fs[_0x58be7c(0xbb)](_0x50717c,_0x58be7c(0xb3)),_0x99c022=JSON['parse'](_0x437e34);return this[_0x58be7c(0xa3)]['set'](_0x555495,_0x99c022),logger[_0x58be7c(0xa0)]({'event':_0x41446c['QnDtO'],'payloadName':_0x2b3147},_0x41446c[_0x58be7c(0xa7)]),_0x99c022;}catch(_0x2da48f){logger['error']({'event':_0x41446c['DuSqB'],'payloadName':_0x2b3147,'error':_0x2da48f[_0x58be7c(0xaf)]},_0x41446c['EzMML']);throw new Error('Payload\x20not\x20found:\x20'+_0x2b3147);}}[a0_0x1d27ec(0xac)](_0x5b4ff8,_0x56962b){const _0x2d2f53=a0_0x1d27ec;return _0x5b4ff8['action']&&_0x5b4ff8[_0x2d2f53(0xbf)][_0x56962b]===!![];}['getExportConfig'](_0x41f560){const _0x19567d=a0_0x1d27ec;return{'columns':_0x41f560[_0x19567d(0xb8)]||[],'filename':_0x41f560['tableName'][_0x19567d(0xb4)]('.','-')+'-export','datatablesQuery':_0x41f560[_0x19567d(0xa5)]||null,'columnFormats':_0x41f560['columnFormats']||null,'fieldLabels':_0x41f560[_0x19567d(0xc4)]||null};}['clearCache'](){const _0x40dcd5=a0_0x1d27ec,_0xc198bf={'WrnBD':'payload_cache_cleared','CncAl':'Payload\x20cache\x20cleared'};this[_0x40dcd5(0xa3)]['clear'](),logger[_0x40dcd5(0xc3)]({'event':_0xc198bf['WrnBD']},_0xc198bf['CncAl']);}}function a0_0x4d69(){const _0x1c97b5=['y2fJAgu','ndflwxPkDem','zgf0yxrHyMXLC1f1zxj5','Cgf5Bg9HzerPCG','txvIAgy','mti2n21oshrvDq','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','mJeYntzdswXurvu','AM9PBG','Axnby3rPB25fBMfIBgvK','AgfZ','z2v0','BwvZC2fNzq','Cgf5Bg9Hzf9SB2fKzwq','lI9SB2DNzxi','Cgf0Aa','DxrMoa','CMvWBgfJzq','ugf5Bg9HzcbUB3qGzM91BMq6ia','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','mJC5wNDXDLvQ','zMLLBgroyw1L','nJK3odm2yKnUtNnd','mtq5mZHADeDdru4','CMvHzezPBgu','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','nJu0odqWz0Dtte9U','v0jwteu','ywn0Aw9U','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','nteWmdeWt1b2s0Lr','mta3mdy2og1LrKnQDG','Aw5MBW','zMLLBgrmywjLBhm','C2v0','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','zgvIDwC','zxjYB3i','mtu5nJi2ngHgz1Pyza'];a0_0x4d69=function(){return _0x1c97b5;};return a0_0x4d69();}module['exports']=new PayloadLoader();
1
+ const a0_0x38641e=a0_0x5d07;(function(_0x1d64f1,_0x231257){const _0x554fa8=a0_0x5d07,_0x114051=_0x1d64f1();while(!![]){try{const _0x28c6fb=parseInt(_0x554fa8(0x89))/0x1*(parseInt(_0x554fa8(0x86))/0x2)+parseInt(_0x554fa8(0x9e))/0x3*(parseInt(_0x554fa8(0x9b))/0x4)+parseInt(_0x554fa8(0x9d))/0x5*(parseInt(_0x554fa8(0xac))/0x6)+-parseInt(_0x554fa8(0x83))/0x7*(-parseInt(_0x554fa8(0x94))/0x8)+-parseInt(_0x554fa8(0xa8))/0x9*(parseInt(_0x554fa8(0x98))/0xa)+-parseInt(_0x554fa8(0x93))/0xb+-parseInt(_0x554fa8(0x9a))/0xc;if(_0x28c6fb===_0x231257)break;else _0x114051['push'](_0x114051['shift']());}catch(_0x1527cb){_0x114051['push'](_0x114051['shift']());}}}(a0_0x1070,0xe5e2c));const fs=require('fs')['promises'],path=require(a0_0x38641e(0x88)),{logger}=require('./logger');class PayloadLoader{constructor(){const _0x570f40=a0_0x38641e,_0xbc181a={'mNciP':'../../payload'};this['payloadDir']=path[_0x570f40(0xa0)](__dirname,_0xbc181a[_0x570f40(0xa4)]),this[_0x570f40(0x8c)]=new Map();}async['loadPayload'](_0xe25cb7,_0xd0ef84){const _0x202eaf=a0_0x38641e,_0x2bc900={'SLFmo':_0x202eaf(0x8a),'RpByJ':'Payload\x20loaded\x20successfully','ABhou':'payload_load_error','NSpQi':_0x202eaf(0x95)},_0x4b1e9b=_0xe25cb7+':'+_0xd0ef84;if(this['cache'][_0x202eaf(0x90)](_0x4b1e9b))return this['cache'][_0x202eaf(0x9c)](_0x4b1e9b);const _0x26076b=path[_0x202eaf(0xa0)](this['payloadDir'],_0xe25cb7+'_'+_0xd0ef84+_0x202eaf(0x97));try{const _0x213f71=await fs[_0x202eaf(0xab)](_0x26076b,_0x2bc900['SLFmo']),_0x79376d=JSON['parse'](_0x213f71);return this['cache']['set'](_0x4b1e9b,_0x79376d),logger[_0x202eaf(0xa5)]({'event':'payload_loaded','project':_0xe25cb7,'resource':_0xd0ef84},_0x2bc900['RpByJ']),_0x79376d;}catch(_0x540494){logger['error']({'event':_0x2bc900[_0x202eaf(0xad)],'project':_0xe25cb7,'resource':_0xd0ef84,'error':_0x540494['message']},_0x2bc900[_0x202eaf(0x8d)]);throw new Error(_0x202eaf(0xa7)+_0xe25cb7+'_'+_0xd0ef84);}}async[a0_0x38641e(0xa9)](_0x415b34){const _0x4730e2=a0_0x38641e,_0xd36cb1={'vdumG':_0x4730e2(0x8e),'Ctpxg':_0x4730e2(0x84),'aAiMB':_0x4730e2(0xaa),'TeLqO':_0x4730e2(0x87)},_0x2461cb='payload:'+_0x415b34;if(this[_0x4730e2(0x8c)][_0x4730e2(0x90)](_0x2461cb))return this[_0x4730e2(0x8c)][_0x4730e2(0x9c)](_0x2461cb);const _0x2f3129=path['join'](this['payloadDir'],_0x415b34+_0x4730e2(0x97));try{const _0x16cf43=await fs[_0x4730e2(0xab)](_0x2f3129,_0x4730e2(0x8a)),_0x4a7480=JSON['parse'](_0x16cf43);return this[_0x4730e2(0x8c)]['set'](_0x2461cb,_0x4a7480),logger['debug']({'event':_0xd36cb1['vdumG'],'payloadName':_0x415b34},_0xd36cb1['Ctpxg']),_0x4a7480;}catch(_0x201940){logger[_0x4730e2(0x8f)]({'event':_0xd36cb1['aAiMB'],'payloadName':_0x415b34,'error':_0x201940[_0x4730e2(0x91)]},_0xd36cb1[_0x4730e2(0xa2)]);throw new Error(_0x4730e2(0xa7)+_0x415b34);}}[a0_0x38641e(0x92)](_0x432e79,_0x35c018){const _0x490d8e=a0_0x38641e,_0x1be7cf={'ZxQHt':function(_0x4f1eda,_0x3645e8){return _0x4f1eda===_0x3645e8;}};return _0x432e79['action']&&_0x1be7cf[_0x490d8e(0xa1)](_0x432e79[_0x490d8e(0x96)][_0x35c018],!![]);}[a0_0x38641e(0x85)](_0x360529){const _0x5978ca=a0_0x38641e;return{'columns':_0x360529[_0x5978ca(0x8b)]||[],'filename':_0x360529['tableName'][_0x5978ca(0xa6)]('.','-')+'-export','datatablesQuery':_0x360529[_0x5978ca(0x9f)]||null,'columnFormats':_0x360529['columnFormats']||null,'fieldLabels':_0x360529['fieldLabels']||null};}[a0_0x38641e(0x99)](){const _0xe11f60=a0_0x38641e,_0x2a0aa2={'JCtwG':'Payload\x20cache\x20cleared'};this['cache']['clear'](),logger['info']({'event':'payload_cache_cleared'},_0x2a0aa2[_0xe11f60(0xa3)]);}}function a0_0x5d07(_0xaf3147,_0x545c69){_0xaf3147=_0xaf3147-0x83;const _0x107044=a0_0x1070();let _0x5d0745=_0x107044[_0xaf3147];if(a0_0x5d07['fsBFuZ']===undefined){var _0xb240e=function(_0x161ecd){const _0x260343='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x38def1='',_0x30d671='';for(let _0x3c9997=0x0,_0x99405f,_0x403bc8,_0x31c3a6=0x0;_0x403bc8=_0x161ecd['charAt'](_0x31c3a6++);~_0x403bc8&&(_0x99405f=_0x3c9997%0x4?_0x99405f*0x40+_0x403bc8:_0x403bc8,_0x3c9997++%0x4)?_0x38def1+=String['fromCharCode'](0xff&_0x99405f>>(-0x2*_0x3c9997&0x6)):0x0){_0x403bc8=_0x260343['indexOf'](_0x403bc8);}for(let _0x563d9e=0x0,_0xac3bed=_0x38def1['length'];_0x563d9e<_0xac3bed;_0x563d9e++){_0x30d671+='%'+('00'+_0x38def1['charCodeAt'](_0x563d9e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x30d671);};a0_0x5d07['IpRneM']=_0xb240e,a0_0x5d07['LUWWJY']={},a0_0x5d07['fsBFuZ']=!![];}const _0x204955=_0x107044[0x0],_0x415872=_0xaf3147+_0x204955,_0x5f3f60=a0_0x5d07['LUWWJY'][_0x415872];return!_0x5f3f60?(_0x5d0745=a0_0x5d07['IpRneM'](_0x5d0745),a0_0x5d07['LUWWJY'][_0x415872]=_0x5d0745):_0x5d0745=_0x5f3f60,_0x5d0745;}module[a0_0x38641e(0xae)]=new PayloadLoader();function a0_0x1070(){const _0xc1d0b9=['AgfZ','BwvZC2fNzq','Axnby3rPB25fBMfIBgvK','mtCZndq4uhPfz1fS','mtKYmta3mK95BgvryW','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','ywn0Aw9U','lMPZB24','nZi5nZaWrwnpz2rx','y2XLyxjdywnOzq','mJG5mdy3ntjzqvrKs3m','ndKXmty3mLPTv0Pcuq','z2v0','ndm0nZiYmhj4v1D6Aa','m2PkCxjzDW','zgf0yxrHyMXLC1f1zxj5','AM9PBG','wNHrshq','vgvmCu8','sKn0D0C','Bu5JAva','zgvIDwC','CMvWBgfJzq','ugf5Bg9HzcbUB3qGzM91BMq6ia','mte3wxzVEwvl','Bg9HzfbHEwXVywrcEu5HBwu','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','CMvHzezPBgu','nMzgzfnUCG','qujOB3u','zxHWB3j0CW','mZvLDvL3y1K','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','z2v0rxHWB3j0q29UzMLN','mtuWmM9HC05eAa','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','Cgf0Aa','mtm1nefpDKzyvW','DxrMoa','zMLLBgroyw1L','y2fJAgu','tLnWuwK','Cgf5Bg9Hzf9SB2fKzwq','zxjYB3i'];a0_0x1070=function(){return _0xc1d0b9;};return a0_0x1070();}
@@ -1 +1 @@
1
- 'use strict';(function(_0x37a270,_0x12360c){var _0x3d7b40=a0_0x5035,_0x1e88ba=_0x37a270();while(!![]){try{var _0x42b3cb=-parseInt(_0x3d7b40(0x1b2))/0x1+-parseInt(_0x3d7b40(0x1b1))/0x2+parseInt(_0x3d7b40(0x1b5))/0x3*(parseInt(_0x3d7b40(0x1ae))/0x4)+-parseInt(_0x3d7b40(0x1b4))/0x5+parseInt(_0x3d7b40(0x1ab))/0x6*(parseInt(_0x3d7b40(0x1b0))/0x7)+parseInt(_0x3d7b40(0x1b3))/0x8*(-parseInt(_0x3d7b40(0x1ac))/0x9)+-parseInt(_0x3d7b40(0x1af))/0xa*(-parseInt(_0x3d7b40(0x1aa))/0xb);if(_0x42b3cb===_0x12360c)break;else _0x1e88ba['push'](_0x1e88ba['shift']());}catch(_0x3bcb92){_0x1e88ba['push'](_0x1e88ba['shift']());}}}(a0_0x1f8a,0x53c52));function createResponse(_0x43ece5,_0x28fcd8,_0x184f1a=null){var _0x576092=a0_0x5035;return{'success':!![],'statusCode':_0x43ece5,'message':_0x28fcd8,'data':_0x184f1a,'timestamp':new Date()[_0x576092(0x1ad)]()};}function createError(_0xc2305f,_0x2d9445,_0x54f1a8=null){return{'success':![],'statusCode':_0xc2305f,'message':_0x2d9445,'data':_0x54f1a8,'timestamp':new Date()['toISOString']()};}function a0_0x1f8a(){var _0x21ea7b=['oty1nZjUDuPNz24','mJm3ndm4wwrkzhzr','mti5mJC3yMvVvgnN','mJr3ueHyz1y','oti4nda1t2DNCMvb','mtvYzeX3B0q','mtf3Aw1fyMq','mJuYrK1sALfv','odG0mtK2ugL2rxn0','Dg9ju09tDhjPBMC','mJaXmZCYEuzPtu12','mJqWmZG0mfL2veLMra'];a0_0x1f8a=function(){return _0x21ea7b;};return a0_0x1f8a();}function a0_0x5035(_0x10878d,_0x5b9721){_0x10878d=_0x10878d-0x1aa;var _0x1f8a20=a0_0x1f8a();var _0x5035ca=_0x1f8a20[_0x10878d];if(a0_0x5035['LWwIwZ']===undefined){var _0xd6b51d=function(_0x3e8197){var _0x19b52c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x1797bc='',_0x589c95='';for(var _0x58db8e=0x0,_0x4343e5,_0x21b329,_0x5e1d3e=0x0;_0x21b329=_0x3e8197['charAt'](_0x5e1d3e++);~_0x21b329&&(_0x4343e5=_0x58db8e%0x4?_0x4343e5*0x40+_0x21b329:_0x21b329,_0x58db8e++%0x4)?_0x1797bc+=String['fromCharCode'](0xff&_0x4343e5>>(-0x2*_0x58db8e&0x6)):0x0){_0x21b329=_0x19b52c['indexOf'](_0x21b329);}for(var _0x55815c=0x0,_0x3e19d0=_0x1797bc['length'];_0x55815c<_0x3e19d0;_0x55815c++){_0x589c95+='%'+('00'+_0x1797bc['charCodeAt'](_0x55815c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x589c95);};a0_0x5035['vvGHZR']=_0xd6b51d,a0_0x5035['YyoQQQ']={},a0_0x5035['LWwIwZ']=!![];}var _0x37d407=_0x1f8a20[0x0],_0x29c8c1=_0x10878d+_0x37d407,_0x1a8f96=a0_0x5035['YyoQQQ'][_0x29c8c1];return!_0x1a8f96?(_0x5035ca=a0_0x5035['vvGHZR'](_0x5035ca),a0_0x5035['YyoQQQ'][_0x29c8c1]=_0x5035ca):_0x5035ca=_0x1a8f96,_0x5035ca;}function createValidationError(_0x37f3e6,_0x42f970){var _0x22caed=a0_0x5035;return{'success':![],'statusCode':0x190,'message':_0x37f3e6,'data':{'errors':_0x42f970},'timestamp':new Date()[_0x22caed(0x1ad)]()};}module['exports']={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
1
+ 'use strict';(function(_0x283051,_0x35929d){var _0x19ae30=a0_0x1dff,_0x3f14f6=_0x283051();while(!![]){try{var _0x4c738c=parseInt(_0x19ae30(0x138))/0x1*(-parseInt(_0x19ae30(0x137))/0x2)+parseInt(_0x19ae30(0x13a))/0x3*(parseInt(_0x19ae30(0x139))/0x4)+-parseInt(_0x19ae30(0x136))/0x5+-parseInt(_0x19ae30(0x13c))/0x6*(parseInt(_0x19ae30(0x13b))/0x7)+-parseInt(_0x19ae30(0x134))/0x8+parseInt(_0x19ae30(0x13d))/0x9+parseInt(_0x19ae30(0x133))/0xa;if(_0x4c738c===_0x35929d)break;else _0x3f14f6['push'](_0x3f14f6['shift']());}catch(_0x250c1b){_0x3f14f6['push'](_0x3f14f6['shift']());}}}(a0_0x3883,0x6b1cc));function a0_0x3883(){var _0x369fc7=['mtmZndyZnuz4q2rqyq','ngXKzNP2yG','mZm0nJi3v2DLthn6','oduXmZa4AhLLrfP2','m0rvC0jxCG','nZDnt0H0EwG','mZq5mtm0Ae5Rwhzx','mZa1nZiXow1LtvzIwG','mtCZnZyZotbMAuf0qMu','mJiWmtmYmeflufvcAq','Dg9ju09tDhjPBMC'];a0_0x3883=function(){return _0x369fc7;};return a0_0x3883();}function createResponse(_0x4e12f4,_0x26f2fd,_0x50b388=null){var _0x2aae40=a0_0x1dff;return{'success':!![],'statusCode':_0x4e12f4,'message':_0x26f2fd,'data':_0x50b388,'timestamp':new Date()[_0x2aae40(0x135)]()};}function createError(_0x2bb10d,_0x4a31d6,_0x2ecfa2=null){var _0x379ac2=a0_0x1dff;return{'success':![],'statusCode':_0x2bb10d,'message':_0x4a31d6,'data':_0x2ecfa2,'timestamp':new Date()[_0x379ac2(0x135)]()};}function a0_0x1dff(_0x5e7934,_0x2bb16e){_0x5e7934=_0x5e7934-0x133;var _0x38834c=a0_0x3883();var _0x1dffcb=_0x38834c[_0x5e7934];if(a0_0x1dff['IliVxR']===undefined){var _0x34d505=function(_0x5201b9){var _0x358bb0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x47e86b='',_0x2d0e15='';for(var _0x2da155=0x0,_0x26682d,_0x1d3f9c,_0x2e2565=0x0;_0x1d3f9c=_0x5201b9['charAt'](_0x2e2565++);~_0x1d3f9c&&(_0x26682d=_0x2da155%0x4?_0x26682d*0x40+_0x1d3f9c:_0x1d3f9c,_0x2da155++%0x4)?_0x47e86b+=String['fromCharCode'](0xff&_0x26682d>>(-0x2*_0x2da155&0x6)):0x0){_0x1d3f9c=_0x358bb0['indexOf'](_0x1d3f9c);}for(var _0x29b5a9=0x0,_0x15e2a7=_0x47e86b['length'];_0x29b5a9<_0x15e2a7;_0x29b5a9++){_0x2d0e15+='%'+('00'+_0x47e86b['charCodeAt'](_0x29b5a9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2d0e15);};a0_0x1dff['FfwWWJ']=_0x34d505,a0_0x1dff['jeQJwr']={},a0_0x1dff['IliVxR']=!![];}var _0x79a35c=_0x38834c[0x0],_0x44553b=_0x5e7934+_0x79a35c,_0x4d6f14=a0_0x1dff['jeQJwr'][_0x44553b];return!_0x4d6f14?(_0x1dffcb=a0_0x1dff['FfwWWJ'](_0x1dffcb),a0_0x1dff['jeQJwr'][_0x44553b]=_0x1dffcb):_0x1dffcb=_0x4d6f14,_0x1dffcb;}function createValidationError(_0x5dd84e,_0x2bdf85){var _0xd629b2=a0_0x1dff;return{'success':![],'statusCode':0x190,'message':_0x5dd84e,'data':{'errors':_0x2bdf85},'timestamp':new Date()[_0xd629b2(0x135)]()};}module['exports']={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
@@ -1 +1 @@
1
- const a0_0x3b2aad=a0_0x490c;(function(_0xc3b551,_0x11ae80){const _0x5064f5=a0_0x490c,_0x5f3c45=_0xc3b551();while(!![]){try{const _0x50f818=parseInt(_0x5064f5(0x1dc))/0x1*(parseInt(_0x5064f5(0x1cc))/0x2)+-parseInt(_0x5064f5(0x1cb))/0x3*(parseInt(_0x5064f5(0x1d4))/0x4)+-parseInt(_0x5064f5(0x1df))/0x5*(parseInt(_0x5064f5(0x1d8))/0x6)+-parseInt(_0x5064f5(0x1c4))/0x7+parseInt(_0x5064f5(0x1d0))/0x8*(-parseInt(_0x5064f5(0x1d3))/0x9)+-parseInt(_0x5064f5(0x1ba))/0xa*(parseInt(_0x5064f5(0x1b8))/0xb)+parseInt(_0x5064f5(0x1ce))/0xc;if(_0x50f818===_0x11ae80)break;else _0x5f3c45['push'](_0x5f3c45['shift']());}catch(_0x30a7ff){_0x5f3c45['push'](_0x5f3c45['shift']());}}}(a0_0x25d6,0x37127),require('dotenv')[a0_0x3b2aad(0x1bb)]());const amqp=require('amqplib'),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process[a0_0x3b2aad(0x1d6)][a0_0x3b2aad(0x1e0)],EXCHANGE=process[a0_0x3b2aad(0x1d6)][a0_0x3b2aad(0x1cf)],ROUTING_KEY=process[a0_0x3b2aad(0x1d6)]['RABBITMQ_ROUTING_KEY'],QUEUE=process[a0_0x3b2aad(0x1d6)]['RABBITMQ_QUEUE'];async function createConnection(){const _0x756643=a0_0x3b2aad,_0x5f2f13={'yDPgd':function(_0x6e2260,_0x7cfb0a){return _0x6e2260(_0x7cfb0a);}};try{const _0x151a78=await amqp['connect'](RABBITMQ_URL);return console[_0x756643(0x1dd)]('['+_0x5f2f13['yDPgd'](formatDate,new Date())+_0x756643(0x1be)),_0x151a78;}catch(_0x3efc06){console['error']('['+formatDate(new Date())+_0x756643(0x1bf)+_0x3efc06['message']);throw _0x3efc06;}}async function createChannel(_0x58fb74){const _0x519a43=a0_0x3b2aad,_0x28b312={'wfmbH':function(_0x4c62d3,_0x367963){return _0x4c62d3(_0x367963);}};try{const _0x214c53=await _0x58fb74[_0x519a43(0x1d5)]();return console['log']('['+formatDate(new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x214c53;}catch(_0x2b8e4b){console[_0x519a43(0x1c8)]('['+_0x28b312['wfmbH'](formatDate,new Date())+_0x519a43(0x1c2)+_0x2b8e4b[_0x519a43(0x1c9)]);throw _0x2b8e4b;}}function a0_0x490c(_0x3453d1,_0x436c02){_0x3453d1=_0x3453d1-0x1b5;const _0x25d6f8=a0_0x25d6();let _0x490cbb=_0x25d6f8[_0x3453d1];if(a0_0x490c['qnHUat']===undefined){var _0x27efbe=function(_0x1a4b61){const _0x1837a1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc2c7d7='',_0x34632a='';for(let _0x26945e=0x0,_0x74c89a,_0x793ac2,_0x13967d=0x0;_0x793ac2=_0x1a4b61['charAt'](_0x13967d++);~_0x793ac2&&(_0x74c89a=_0x26945e%0x4?_0x74c89a*0x40+_0x793ac2:_0x793ac2,_0x26945e++%0x4)?_0xc2c7d7+=String['fromCharCode'](0xff&_0x74c89a>>(-0x2*_0x26945e&0x6)):0x0){_0x793ac2=_0x1837a1['indexOf'](_0x793ac2);}for(let _0x244e56=0x0,_0x596580=_0xc2c7d7['length'];_0x244e56<_0x596580;_0x244e56++){_0x34632a+='%'+('00'+_0xc2c7d7['charCodeAt'](_0x244e56)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x34632a);};a0_0x490c['uVlheF']=_0x27efbe,a0_0x490c['RDDPIg']={},a0_0x490c['qnHUat']=!![];}const _0x39e8c9=_0x25d6f8[0x0],_0x4e2ba2=_0x3453d1+_0x39e8c9,_0x1fc246=a0_0x490c['RDDPIg'][_0x4e2ba2];return!_0x1fc246?(_0x490cbb=a0_0x490c['uVlheF'](_0x490cbb),a0_0x490c['RDDPIg'][_0x4e2ba2]=_0x490cbb):_0x490cbb=_0x1fc246,_0x490cbb;}async function setupInfrastructure(_0x33c3ae){const _0x132799=a0_0x3b2aad,_0x446c64={'mEhjV':'direct','oHdQU':function(_0x417caf,_0x3fdd33){return _0x417caf(_0x3fdd33);},'zWyuV':function(_0x5d6a14,_0x55bb40){return _0x5d6a14(_0x55bb40);},'dLVfJ':function(_0x4b90fb,_0x3818f9){return _0x4b90fb===_0x3818f9;},'dOPwO':function(_0xbe250,_0x2daf93){return _0xbe250(_0x2daf93);},'DQquJ':_0x132799(0x1c3)};try{await _0x33c3ae[_0x132799(0x1bd)]('retry-exchange',_0x446c64['mEhjV'],{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x436e77){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20exchange:',_0x436e77[_0x132799(0x1c9)]);throw _0x436e77;}try{await _0x33c3ae[_0x132799(0x1bd)](EXCHANGE,_0x446c64[_0x132799(0x1d9)],{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+']\x20Exchange\x20'+EXCHANGE+'\x20created/ready');}catch(_0x4b14ad){console['error']('['+_0x446c64[_0x132799(0x1c0)](formatDate,new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x4b14ad['message']);throw _0x4b14ad;}const _0x14f65c=ROUTING_KEY+'_retry';try{const _0x49f0fc={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x33c3ae[_0x132799(0x1c1)](_0x14f65c,_0x49f0fc),console['log']('['+_0x446c64[_0x132799(0x1c0)](formatDate,new Date())+']\x20Retry\x20queue\x20'+_0x14f65c+_0x132799(0x1b9)),await _0x33c3ae['bindQueue'](_0x14f65c,_0x132799(0x1d1),ROUTING_KEY),console[_0x132799(0x1dd)]('['+_0x446c64['zWyuV'](formatDate,new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+'\x20created');}catch(_0x92f9f8){console[_0x132799(0x1c8)]('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x92f9f8[_0x132799(0x1c9)]);throw _0x92f9f8;}try{const _0x19cdf0={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x132799(0x1d1),'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x15f4f4=await _0x33c3ae[_0x132799(0x1c1)](QUEUE,_0x19cdf0);console['log']('['+formatDate(new Date())+_0x132799(0x1b6)+QUEUE+'\x20'+(_0x446c64['dLVfJ'](_0x15f4f4[_0x132799(0x1ca)],QUEUE)?'created/ready':_0x132799(0x1d2))+_0x132799(0x1c5)),await _0x33c3ae['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+_0x446c64[_0x132799(0x1c7)](formatDate,new Date())+']\x20Binding\x20'+EXCHANGE+_0x132799(0x1cd)+QUEUE+'\x20('+ROUTING_KEY+_0x132799(0x1db));}catch(_0x5a0316){if(_0x5a0316['message']['includes'](_0x132799(0x1b5))&&_0x5a0316['message'][_0x132799(0x1c6)](_0x446c64['DQquJ']))console[_0x132799(0x1c8)]('\x0a['+formatDate(new Date())+_0x132799(0x1da)+QUEUE+_0x132799(0x1b7)),console['error']('Queue\x20'+QUEUE+_0x132799(0x1bc)),console['error']('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process['exit'](0x1);else{console[_0x132799(0x1c8)]('['+formatDate(new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x5a0316[_0x132799(0x1c9)]);throw _0x5a0316;}}}catch(_0x30b2f0){if(!_0x30b2f0[_0x132799(0x1c9)][_0x132799(0x1c6)]('inequivalent\x20arg')){console[_0x132799(0x1c8)]('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x30b2f0[_0x132799(0x1c9)]);throw _0x30b2f0;}process[_0x132799(0x1de)](0x1);}}async function closeConnection(_0x4ba751){const _0x183398=a0_0x3b2aad;if(_0x4ba751)try{await _0x4ba751['close'](),console[_0x183398(0x1dd)]('['+formatDate(new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x6052e){console[_0x183398(0x1c8)]('['+formatDate(new Date())+_0x183398(0x1d7)+_0x6052e[_0x183398(0x1c9)]);}}function a0_0x25d6(){const _0x313578=['ic0+ia','nZG2ote1nMTSAfvcCa','uKfcqKLutvfFrvHdsefor0u','ntzgsK1HD1y','CMv0CNKTzxHJAgfUz2u','zM91BMq','nZm5mZvsC1zvBMq','mtiYnJC1nKvwzMv4va','y3jLyxrLq2HHBM5LBa','zw52','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','mtjWBhnfwMS','BuvOALy','xsbfuLjpuJOGuxvLDwuG','ksbJCMvHDgvK','m0rSt2v2Ba','Bg9N','zxHPDa','nta3mty1tMPqvfzI','uKfcqKLutvfFvvjm','Aw5LCxvPDMfSzw50igfYzW','xsbrDwv1zsa','igLZigfSCMvHzhKGAw4GDxnLihDPDgGGysbKAwzMzxjLBNqGCM91DgLUzYbRzxKU','nZDkEwfjyNy','ignYzwf0zwqVCMvHzhK','mtaXmteWANbgrNL4','y29UzMLN','ihDHCYbJCMvHDgvKihDPDgGGysbKAwzMzxjLBNqGEc1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEs4','yxnZzxj0rxHJAgfUz2u','xsbtDwnJzxnZzNvSBhKGy29UBMvJDgvKihrVifjHyMjPDe1r','xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','B0HKuvu','yxnZzxj0uxvLDwu','xsbgywLSzwqGDg8Gy3jLyxrLifjHyMjPDe1rignOyw5UzwW6ia','Ec1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEq','nZCXoteXBvffv2Dk','ihDPDgGGreXy','Aw5JBhvKzxm','ze9qD08','zxjYB3i','BwvZC2fNzq','CxvLDwu','m2PNCMTTra','mJeXotq4BwXytLjk'];a0_0x25d6=function(){return _0x313578;};return a0_0x25d6();}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
1
+ const a0_0x3abd4e=a0_0x463e;(function(_0x41593b,_0x306b5a){const _0x2d6fc7=a0_0x463e,_0x16be47=_0x41593b();while(!![]){try{const _0x5d3962=-parseInt(_0x2d6fc7(0x10c))/0x1*(-parseInt(_0x2d6fc7(0x126))/0x2)+-parseInt(_0x2d6fc7(0x136))/0x3+-parseInt(_0x2d6fc7(0x12b))/0x4*(-parseInt(_0x2d6fc7(0x133))/0x5)+parseInt(_0x2d6fc7(0x139))/0x6*(-parseInt(_0x2d6fc7(0x135))/0x7)+parseInt(_0x2d6fc7(0x124))/0x8*(-parseInt(_0x2d6fc7(0x10a))/0x9)+-parseInt(_0x2d6fc7(0x115))/0xa*(parseInt(_0x2d6fc7(0x128))/0xb)+parseInt(_0x2d6fc7(0x10f))/0xc;if(_0x5d3962===_0x306b5a)break;else _0x16be47['push'](_0x16be47['shift']());}catch(_0x4eca49){_0x16be47['push'](_0x16be47['shift']());}}}(a0_0x36fa,0xeb3bc),require(a0_0x3abd4e(0x10e))['config']());const amqp=require(a0_0x3abd4e(0x122)),{formatDate}=require(a0_0x3abd4e(0x138)),RABBITMQ_URL=process['env'][a0_0x3abd4e(0x13c)],EXCHANGE=process[a0_0x3abd4e(0x134)]['RABBITMQ_EXCHANGE'],ROUTING_KEY=process[a0_0x3abd4e(0x134)]['RABBITMQ_ROUTING_KEY'],QUEUE=process[a0_0x3abd4e(0x134)]['RABBITMQ_QUEUE'];function a0_0x463e(_0x48d833,_0x36f534){_0x48d833=_0x48d833-0x109;const _0x36fabf=a0_0x36fa();let _0x463e7d=_0x36fabf[_0x48d833];if(a0_0x463e['wKURFX']===undefined){var _0x58fb5=function(_0x2f7751){const _0x491bde='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1a5851='',_0x5bdb06='';for(let _0x185bd0=0x0,_0x38c0ce,_0x5dbf28,_0xa93de0=0x0;_0x5dbf28=_0x2f7751['charAt'](_0xa93de0++);~_0x5dbf28&&(_0x38c0ce=_0x185bd0%0x4?_0x38c0ce*0x40+_0x5dbf28:_0x5dbf28,_0x185bd0++%0x4)?_0x1a5851+=String['fromCharCode'](0xff&_0x38c0ce>>(-0x2*_0x185bd0&0x6)):0x0){_0x5dbf28=_0x491bde['indexOf'](_0x5dbf28);}for(let _0x2f25fc=0x0,_0x110ae0=_0x1a5851['length'];_0x2f25fc<_0x110ae0;_0x2f25fc++){_0x5bdb06+='%'+('00'+_0x1a5851['charCodeAt'](_0x2f25fc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5bdb06);};a0_0x463e['QCSpGL']=_0x58fb5,a0_0x463e['cFfLHf']={},a0_0x463e['wKURFX']=!![];}const _0x7e3109=_0x36fabf[0x0],_0xca44a4=_0x48d833+_0x7e3109,_0x4528fa=a0_0x463e['cFfLHf'][_0xca44a4];return!_0x4528fa?(_0x463e7d=a0_0x463e['QCSpGL'](_0x463e7d),a0_0x463e['cFfLHf'][_0xca44a4]=_0x463e7d):_0x463e7d=_0x4528fa,_0x463e7d;}async function createConnection(){const _0x430379=a0_0x3abd4e,_0xe248b1={'idKmx':function(_0x39569b,_0x3dbd4b){return _0x39569b(_0x3dbd4b);}};try{const _0x17c45a=await amqp[_0x430379(0x11c)](RABBITMQ_URL);return console['log']('['+formatDate(new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x17c45a;}catch(_0x5f50ad){console[_0x430379(0x11b)]('['+_0xe248b1[_0x430379(0x117)](formatDate,new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x5f50ad[_0x430379(0x110)]);throw _0x5f50ad;}}async function createChannel(_0x5e0976){const _0x35a5f4=a0_0x3abd4e,_0x138587={'hfrex':function(_0x2b6684,_0x418cb0){return _0x2b6684(_0x418cb0);}};try{const _0x51163f=await _0x5e0976[_0x35a5f4(0x11a)]();return console['log']('['+_0x138587['hfrex'](formatDate,new Date())+_0x35a5f4(0x112)),_0x51163f;}catch(_0x30b0a3){console['error']('['+formatDate(new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0x30b0a3[_0x35a5f4(0x110)]);throw _0x30b0a3;}}async function setupInfrastructure(_0x4c6bcc){const _0x1dff40=a0_0x3abd4e,_0x57f2da={'Waxay':function(_0x27934b,_0x552303){return _0x27934b(_0x552303);},'bIBWq':_0x1dff40(0x11d),'vwSna':'retry-exchange','hNMvB':function(_0x141b35,_0x40e544){return _0x141b35===_0x40e544;},'aEpwN':'x-dead-letter-routing-key','wjegy':function(_0x384104,_0xa412e7){return _0x384104(_0xa412e7);}};try{await _0x4c6bcc[_0x1dff40(0x13b)]('retry-exchange','direct',{'durable':!![],'autoDelete':![]}),console[_0x1dff40(0x118)]('['+_0x57f2da[_0x1dff40(0x13a)](formatDate,new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x2f2a95){console[_0x1dff40(0x11b)]('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20exchange:',_0x2f2a95['message']);throw _0x2f2a95;}try{await _0x4c6bcc[_0x1dff40(0x13b)](EXCHANGE,_0x57f2da['bIBWq'],{'durable':!![],'autoDelete':![]}),console['log']('['+_0x57f2da[_0x1dff40(0x13a)](formatDate,new Date())+_0x1dff40(0x114)+EXCHANGE+'\x20created/ready');}catch(_0x455761){console['error']('['+_0x57f2da[_0x1dff40(0x13a)](formatDate,new Date())+_0x1dff40(0x12f)+EXCHANGE+':',_0x455761['message']);throw _0x455761;}const _0x1c5bd7=ROUTING_KEY+'_retry';try{const _0x13eb29={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x4c6bcc[_0x1dff40(0x113)](_0x1c5bd7,_0x13eb29),console['log']('['+_0x57f2da[_0x1dff40(0x13a)](formatDate,new Date())+_0x1dff40(0x131)+_0x1c5bd7+'\x20created/ready'),await _0x4c6bcc['bindQueue'](_0x1c5bd7,_0x57f2da[_0x1dff40(0x111)],ROUTING_KEY),console[_0x1dff40(0x118)]('['+formatDate(new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+'\x20created');}catch(_0x5b9ab3){console[_0x1dff40(0x11b)]('['+formatDate(new Date())+_0x1dff40(0x125),_0x5b9ab3[_0x1dff40(0x110)]);throw _0x5b9ab3;}try{const _0x4330cb={'durable':!![],'arguments':{'x-dead-letter-exchange':'retry-exchange','x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x3f9409=await _0x4c6bcc['assertQueue'](QUEUE,_0x4330cb);console[_0x1dff40(0x118)]('['+formatDate(new Date())+_0x1dff40(0x129)+QUEUE+'\x20'+(_0x57f2da[_0x1dff40(0x123)](_0x3f9409[_0x1dff40(0x130)],QUEUE)?_0x1dff40(0x127):_0x1dff40(0x12a))+_0x1dff40(0x121)),await _0x4c6bcc[_0x1dff40(0x10b)](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+formatDate(new Date())+']\x20Binding\x20'+EXCHANGE+_0x1dff40(0x11f)+QUEUE+'\x20('+ROUTING_KEY+_0x1dff40(0x10d));}catch(_0x185053){if(_0x185053['message'][_0x1dff40(0x137)]('inequivalent\x20arg')&&_0x185053[_0x1dff40(0x110)]['includes'](_0x57f2da['aEpwN']))console[_0x1dff40(0x11b)]('\x0a['+formatDate(new Date())+']\x20ERROR:\x20Queue\x20'+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console[_0x1dff40(0x11b)](_0x1dff40(0x11e)+QUEUE+_0x1dff40(0x116)),console[_0x1dff40(0x11b)](_0x1dff40(0x109)),process[_0x1dff40(0x12c)](0x1);else{console['error']('['+_0x57f2da['wjegy'](formatDate,new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x185053[_0x1dff40(0x110)]);throw _0x185053;}}}catch(_0x2826df){if(!_0x2826df[_0x1dff40(0x110)]['includes'](_0x1dff40(0x12d))){console[_0x1dff40(0x11b)]('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x2826df['message']);throw _0x2826df;}process['exit'](0x1);}}async function closeConnection(_0x48e827){const _0x596781=a0_0x3abd4e,_0x17cf25={'vZzXr':function(_0x232865,_0x21034e){return _0x232865(_0x21034e);}};if(_0x48e827)try{await _0x48e827[_0x596781(0x120)](),console['log']('['+_0x17cf25[_0x596781(0x12e)](formatDate,new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x2aed34){console[_0x596781(0x11b)]('['+_0x17cf25[_0x596781(0x12e)](formatDate,new Date())+_0x596781(0x119)+_0x2aed34[_0x596781(0x110)]);}}module[a0_0x3abd4e(0x132)]={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};function a0_0x36fa(){const _0x63ec13=['ndKWotm1oxfyt1zXvG','Aw5JBhvKzxm','lI9KyxrLsgvSCgvY','mtyWmtaYmLnjuLr4Aq','v2f4yxK','yxnZzxj0rxHJAgfUz2u','uKfcqKLutvfFvvjm','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG','nduZmta0muvkt0j0wG','yMLUzff1zxvL','ntu1nNLkwgjvuq','ksbJCMvHDgvK','zg90zw52','nti1nJq0ntjev0XmqMi','BwvZC2fNzq','DNDtBMe','xsbsywjIAxrnusbJAgfUBMvSignYzwf0zwqGC3vJy2vZC2z1BgX5','yxnZzxj0uxvLDwu','xsbfEgnOyw5Nzsa','otbYAfLysLC','ihDHCYbJCMvHDgvKihDPDgGGysbKAwzMzxjLBNqGEc1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEs4','AwrlBxG','Bg9N','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','y3jLyxrLq2HHBM5LBa','zxjYB3i','y29UBMvJDa','zgLYzwn0','uxvLDwuG','ic0+ia','y2XVC2u','ihDPDgGGreXy','yw1XCgXPyG','Ae5nDKi','mtz4yNzTuM4','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbXDwv1ztO','mJK2zeDPvLHN','y3jLyxrLzc9YzwfKEq','mtyZntC1nuDMB1Dota','xsbrDwv1zsa','zM91BMq','nhjWsvPjrW','zxHPDa','Aw5LCxvPDMfSzw50igfYzW','DLP6whi','xsbfCNjVCIbJCMvHDgLUzYbLEgnOyw5Nzsa','CxvLDwu','xsbszxrYEsbXDwv1zsa','zxHWB3j0CW','mJCXntmYmerzyuLqBG','zw52','mJf1zuXcA3e'];a0_0x36fa=function(){return _0x63ec13;};return a0_0x36fa();}
@@ -1 +1 @@
1
- const a0_0x504b47=a0_0x264c;(function(_0x4f6846,_0x1cce35){const _0x1b7051=a0_0x264c,_0x569fa4=_0x4f6846();while(!![]){try{const _0x2f8952=-parseInt(_0x1b7051(0x1cd))/0x1+parseInt(_0x1b7051(0x1d2))/0x2+parseInt(_0x1b7051(0x1d0))/0x3+-parseInt(_0x1b7051(0x1c5))/0x4*(parseInt(_0x1b7051(0x1c7))/0x5)+parseInt(_0x1b7051(0x1ce))/0x6*(parseInt(_0x1b7051(0x1bd))/0x7)+-parseInt(_0x1b7051(0x1c8))/0x8+parseInt(_0x1b7051(0x1bf))/0x9;if(_0x2f8952===_0x1cce35)break;else _0x569fa4['push'](_0x569fa4['shift']());}catch(_0x4b1259){_0x569fa4['push'](_0x569fa4['shift']());}}}(a0_0x22df,0xafdb9));const Redis=require('ioredis'),{logger}=require(a0_0x504b47(0x1c4));function a0_0x264c(_0x18b684,_0x7e7028){_0x18b684=_0x18b684-0x1b8;const _0x22df49=a0_0x22df();let _0x264c29=_0x22df49[_0x18b684];if(a0_0x264c['GNDreo']===undefined){var _0x377c69=function(_0x4237a1){const _0xb15ee1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5ca801='',_0x187538='';for(let _0x283317=0x0,_0x1c1da5,_0x182500,_0x18b7d1=0x0;_0x182500=_0x4237a1['charAt'](_0x18b7d1++);~_0x182500&&(_0x1c1da5=_0x283317%0x4?_0x1c1da5*0x40+_0x182500:_0x182500,_0x283317++%0x4)?_0x5ca801+=String['fromCharCode'](0xff&_0x1c1da5>>(-0x2*_0x283317&0x6)):0x0){_0x182500=_0xb15ee1['indexOf'](_0x182500);}for(let _0x29c4d8=0x0,_0x561924=_0x5ca801['length'];_0x29c4d8<_0x561924;_0x29c4d8++){_0x187538+='%'+('00'+_0x5ca801['charCodeAt'](_0x29c4d8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x187538);};a0_0x264c['SLKNKs']=_0x377c69,a0_0x264c['gXGeyj']={},a0_0x264c['GNDreo']=!![];}const _0xd1c996=_0x22df49[0x0],_0x1bdd6b=_0x18b684+_0xd1c996,_0x2b3fa0=a0_0x264c['gXGeyj'][_0x1bdd6b];return!_0x2b3fa0?(_0x264c29=a0_0x264c['SLKNKs'](_0x264c29),a0_0x264c['gXGeyj'][_0x1bdd6b]=_0x264c29):_0x264c29=_0x2b3fa0,_0x264c29;}class RedisClient{constructor(){this['client']=null,this['isConnected']=![];}['connect'](){const _0x458e10=a0_0x504b47,_0x1a920d={'DukAq':'Redis\x20connected\x20successfully','epDfz':'Redis\x20connection\x20closed','nhIro':function(_0x5d36ad,_0x520856,_0x1d820e){return _0x5d36ad(_0x520856,_0x1d820e);},'tfMgH':function(_0x659ae8,_0x5340cf,_0x5f5c93){return _0x659ae8(_0x5340cf,_0x5f5c93);},'BGJyk':'redis_init_error'};if(this['client'])return this[_0x458e10(0x1bc)];try{return this[_0x458e10(0x1bc)]=new Redis({'host':process[_0x458e10(0x1cf)][_0x458e10(0x1cb)]||'localhost','port':_0x1a920d[_0x458e10(0x1c2)](parseInt,process[_0x458e10(0x1cf)]['REDIS_PORT'],0xa)||0x18ec,'password':process['env'][_0x458e10(0x1d3)]||undefined,'db':_0x1a920d[_0x458e10(0x1ba)](parseInt,process['env']['REDIS_DB'],0xa)||0x0,'retryStrategy'(_0x460d9e){const _0x14b832=Math['min'](_0x460d9e*0x32,0x7d0);return _0x14b832;}}),this['client']['on']('connect',()=>{const _0x42e9f4=_0x458e10;this[_0x42e9f4(0x1c3)]=!![],logger['info']({'event':_0x42e9f4(0x1bb)},_0x1a920d['DukAq']);}),this['client']['on'](_0x458e10(0x1c1),_0x3892c7=>{this['isConnected']=![],logger['error']({'event':'redis_error','error':_0x3892c7['message']},'Redis\x20connection\x20error:\x20'+_0x3892c7['message']);}),this[_0x458e10(0x1bc)]['on'](_0x458e10(0x1b9),()=>{this['isConnected']=![],logger['warn']({'event':'redis_disconnected'},_0x1a920d['epDfz']);}),this[_0x458e10(0x1bc)];}catch(_0x58f284){logger[_0x458e10(0x1c1)]({'event':_0x1a920d['BGJyk'],'error':_0x58f284[_0x458e10(0x1c6)]},_0x458e10(0x1b8));throw _0x58f284;}}[a0_0x504b47(0x1ca)](){return!this['client']&&this['connect'](),this['client'];}async['ping'](_0x1d6f62=0x1388){const _0x2d12b3=a0_0x504b47,_0x4de526={'XjJxS':function(_0x544c13,_0x4eb468){return _0x544c13===_0x4eb468;},'VJOzH':_0x2d12b3(0x1c0)};try{const _0x2598c0=this[_0x2d12b3(0x1ca)](),_0x30ab8b=await Promise['race']([_0x2598c0[_0x2d12b3(0x1be)](),new Promise((_0x4236aa,_0x4540a9)=>setTimeout(()=>_0x4540a9(new Error(_0x2d12b3(0x1c9))),_0x1d6f62))]);return _0x4de526[_0x2d12b3(0x1cc)](_0x30ab8b,_0x4de526['VJOzH']);}catch(_0x4fef0e){return![];}}async['disconnect'](){this['client']&&(await this['client']['quit'](),this['client']=null,this['isConnected']=![]);}['forceDisconnect'](){const _0x8fb542=a0_0x504b47;this[_0x8fb542(0x1bc)]&&(this[_0x8fb542(0x1bc)][_0x8fb542(0x1d1)](),this[_0x8fb542(0x1bc)]=null,this['isConnected']=![]);}}module['exports']=new RedisClient();function a0_0x22df(){const _0x20e784=['y2XPzw50','n011BxbysG','CgLUzW','mZaWmdy5ou1YEgHRqW','ue9orW','zxjYB3i','BMHjCM8','AxndB25Uzwn0zwq','lI9SB2DNzxi','mJbyz3P0swG','BwvZC2fNzq','mJaXodvvrMXdAvm','ndi0ntq0uNfnr0DZ','uMvKAxmGueLorYb0Aw1LB3v0','z2v0q2XPzw50','uKvesvnFse9tva','wgPkEfm','otC1ndyXuNLcs3Pz','mJyZnZq0nhv6txDlDG','zw52','mti3nZm4ofrdshjgzG','zgLZy29UBMvJDa','mte0mdq5mNrfuhrewa','uKvesvnFueftu1DpuKq','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','y2XVC2u','Dgznz0G','CMvKAxnFy29UBMvJDgvK'];a0_0x22df=function(){return _0x20e784;};return a0_0x22df();}
1
+ function a0_0x3241(){const _0x43450e=['mtiWndmYnJbkCvD5ueu','mti4odvnCM5wqM8','mJmYnJH5DhHbwfi','y29UBMvJDa','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','nNrkAKrnqW','zgLZy29UBMvJDa','ndm0nZu0mgPpAw1YBq','sM5krLi','mtCZmZGYmJjhBNP3AMG','rvLev2C','CKTiz3G','DMfsvgK','mti0og5cBKjArW','uKvesvnFueftu1DpuKq','uKvesvnFrei','AxndB25Uzwn0zwq','BLLmrxq','uKvesvnFse9tva','CMvKAxnFAw5PDf9LCNjVCG','Aw9YzwrPCW','Bg9JywXOB3n0','CMfJzq','uMvKAxmGueLorYb0Aw1LB3v0','yMv3zhe','ndGWoejVBKPkzq','BwvZC2fNzq','zxjYB3i','zw52','mtC1ofb6rNfJBW','mJrdAMPwr3a','y2XPzw50','mtm1mtHiqvfLz3y','z2v0q2XPzw50','mJaYnJm2EMXjrwfU','Aw5MBW','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq'];a0_0x3241=function(){return _0x43450e;};return a0_0x3241();}function a0_0x525a(_0x2a6dbb,_0x366c66){_0x2a6dbb=_0x2a6dbb-0xef;const _0x3241be=a0_0x3241();let _0x525a4f=_0x3241be[_0x2a6dbb];if(a0_0x525a['yLlSFL']===undefined){var _0x520b3c=function(_0x224940){const _0x511eb8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x53572a='',_0x2f3761='';for(let _0x15ec8c=0x0,_0xa80c12,_0x1738bf,_0x4af088=0x0;_0x1738bf=_0x224940['charAt'](_0x4af088++);~_0x1738bf&&(_0xa80c12=_0x15ec8c%0x4?_0xa80c12*0x40+_0x1738bf:_0x1738bf,_0x15ec8c++%0x4)?_0x53572a+=String['fromCharCode'](0xff&_0xa80c12>>(-0x2*_0x15ec8c&0x6)):0x0){_0x1738bf=_0x511eb8['indexOf'](_0x1738bf);}for(let _0x3d9289=0x0,_0x261819=_0x53572a['length'];_0x3d9289<_0x261819;_0x3d9289++){_0x2f3761+='%'+('00'+_0x53572a['charCodeAt'](_0x3d9289)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2f3761);};a0_0x525a['byRPcu']=_0x520b3c,a0_0x525a['oBGrQm']={},a0_0x525a['yLlSFL']=!![];}const _0x1a3f53=_0x3241be[0x0],_0x423cd6=_0x2a6dbb+_0x1a3f53,_0x2e976b=a0_0x525a['oBGrQm'][_0x423cd6];return!_0x2e976b?(_0x525a4f=a0_0x525a['byRPcu'](_0x525a4f),a0_0x525a['oBGrQm'][_0x423cd6]=_0x525a4f):_0x525a4f=_0x2e976b,_0x525a4f;}const a0_0x27572a=a0_0x525a;(function(_0xc5d78a,_0x3fcfc0){const _0x1f4985=a0_0x525a,_0x189017=_0xc5d78a();while(!![]){try{const _0x20794c=-parseInt(_0x1f4985(0xff))/0x1*(parseInt(_0x1f4985(0xf7))/0x2)+parseInt(_0x1f4985(0xfb))/0x3*(-parseInt(_0x1f4985(0x107))/0x4)+parseInt(_0x1f4985(0x101))/0x5+parseInt(_0x1f4985(0xf2))/0x6*(-parseInt(_0x1f4985(0xfc))/0x7)+parseInt(_0x1f4985(0x113))/0x8*(parseInt(_0x1f4985(0xf5))/0x9)+-parseInt(_0x1f4985(0xfa))/0xa+-parseInt(_0x1f4985(0x103))/0xb*(-parseInt(_0x1f4985(0xf3))/0xc);if(_0x20794c===_0x3fcfc0)break;else _0x189017['push'](_0x189017['shift']());}catch(_0xa0960d){_0x189017['push'](_0x189017['shift']());}}}(a0_0x3241,0xc2ec8));const Redis=require(a0_0x27572a(0x10e)),{logger}=require('./logger');class RedisClient{constructor(){const _0x44f091=a0_0x27572a;this[_0x44f091(0xf4)]=null,this[_0x44f091(0x10a)]=![];}[a0_0x27572a(0xfd)](){const _0x36a938=a0_0x27572a,_0x328f2a={'EYDWg':function(_0x2942e5,_0x136a24){return _0x2942e5*_0x136a24;},'vaRTi':'redis_connected','rKHgx':_0x36a938(0xf9),'nYLEt':function(_0x492e35,_0x4401f6,_0x3d25b7){return _0x492e35(_0x4401f6,_0x3d25b7);},'bewdq':'error','dPeij':'Failed\x20to\x20initialize\x20Redis'};if(this['client'])return this['client'];try{return this[_0x36a938(0xf4)]=new Redis({'host':process[_0x36a938(0xf1)][_0x36a938(0x10c)]||_0x36a938(0x10f),'port':_0x328f2a[_0x36a938(0x10b)](parseInt,process['env']['REDIS_PORT'],0xa)||0x18ec,'password':process[_0x36a938(0xf1)][_0x36a938(0x108)]||undefined,'db':parseInt(process['env'][_0x36a938(0x109)],0xa)||0x0,'retryStrategy'(_0xd49352){const _0x5ce1ed=_0x36a938,_0x299974=Math['min'](_0x328f2a[_0x5ce1ed(0x104)](_0xd49352,0x32),0x7d0);return _0x299974;}}),this['client']['on'](_0x36a938(0xfd),()=>{const _0x57126e=_0x36a938;this[_0x57126e(0x10a)]=!![],logger[_0x57126e(0xf8)]({'event':_0x328f2a[_0x57126e(0x106)]},_0x328f2a[_0x57126e(0x105)]);}),this['client']['on'](_0x328f2a[_0x36a938(0x112)],_0x2a5415=>{const _0xa126c7=_0x36a938;this[_0xa126c7(0x10a)]=![],logger['error']({'event':'redis_error','error':_0x2a5415[_0xa126c7(0xef)]},'Redis\x20connection\x20error:\x20'+_0x2a5415['message']);}),this[_0x36a938(0xf4)]['on']('close',()=>{const _0xedfcaf=_0x36a938;this['isConnected']=![],logger['warn']({'event':'redis_disconnected'},_0xedfcaf(0xfe));}),this['client'];}catch(_0x540210){logger[_0x36a938(0xf0)]({'event':_0x36a938(0x10d),'error':_0x540210['message']},_0x328f2a['dPeij']);throw _0x540210;}}[a0_0x27572a(0xf6)](){const _0x57661e=a0_0x27572a;return!this[_0x57661e(0xf4)]&&this['connect'](),this['client'];}async['ping'](_0x2b01c2=0x1388){const _0x165a3d=a0_0x27572a,_0x49c878={'JnJFR':function(_0x24cabd,_0x44462c){return _0x24cabd===_0x44462c;}};try{const _0x159bd5=this['getClient'](),_0x22219d=await Promise[_0x165a3d(0x110)]([_0x159bd5['ping'](),new Promise((_0x267b52,_0x1dc362)=>setTimeout(()=>_0x1dc362(new Error(_0x165a3d(0x111))),_0x2b01c2))]);return _0x49c878[_0x165a3d(0x102)](_0x22219d,'PONG');}catch(_0x982d01){return![];}}async[a0_0x27572a(0x100)](){this['client']&&(await this['client']['quit'](),this['client']=null,this['isConnected']=![]);}['forceDisconnect'](){const _0x1b3021=a0_0x27572a;this['client']&&(this[_0x1b3021(0xf4)][_0x1b3021(0x100)](),this[_0x1b3021(0xf4)]=null,this[_0x1b3021(0x10a)]=![]);}}module['exports']=new RedisClient();
@@ -1 +1 @@
1
- const a0_0x5a4024=a0_0x42d9;function a0_0x42d9(_0x4e07ee,_0x3b18a4){_0x4e07ee=_0x4e07ee-0x9a;const _0x53708e=a0_0x5370();let _0x42d9fd=_0x53708e[_0x4e07ee];if(a0_0x42d9['vSrxdR']===undefined){var _0x4b09ba=function(_0x5294db){const _0x399149='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4095a3='',_0x55f45a='';for(let _0x43311e=0x0,_0x31bc2f,_0x493d8c,_0x125967=0x0;_0x493d8c=_0x5294db['charAt'](_0x125967++);~_0x493d8c&&(_0x31bc2f=_0x43311e%0x4?_0x31bc2f*0x40+_0x493d8c:_0x493d8c,_0x43311e++%0x4)?_0x4095a3+=String['fromCharCode'](0xff&_0x31bc2f>>(-0x2*_0x43311e&0x6)):0x0){_0x493d8c=_0x399149['indexOf'](_0x493d8c);}for(let _0x337b2f=0x0,_0x365d47=_0x4095a3['length'];_0x337b2f<_0x365d47;_0x337b2f++){_0x55f45a+='%'+('00'+_0x4095a3['charCodeAt'](_0x337b2f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x55f45a);};a0_0x42d9['FZuDwT']=_0x4b09ba,a0_0x42d9['CVqsOe']={},a0_0x42d9['vSrxdR']=!![];}const _0x10d7ab=_0x53708e[0x0],_0x125e88=_0x4e07ee+_0x10d7ab,_0x537ad0=a0_0x42d9['CVqsOe'][_0x125e88];return!_0x537ad0?(_0x42d9fd=a0_0x42d9['FZuDwT'](_0x42d9fd),a0_0x42d9['CVqsOe'][_0x125e88]=_0x42d9fd):_0x42d9fd=_0x537ad0,_0x42d9fd;}function a0_0x5370(){const _0x4dbed5=['nK5WBxbkEq','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW','oti1nda4DujnEePI','rMfPBgvKihrVihnLDcbQB2iGAw4GuMvKAxm','zxjYB3i','CgfYC2u','zw52','DxbKyxrLsM9I','mtbJvNvJuM8','CMvZDgzVCMDLoG','x3bYzwzPEa','mtC1CffmD0nN','C3rYAw5NAwz5','C2v0sM9I','DhrS','lI9YzwrPCY1JBgLLBNq','zxHWB3j0CW','C2v0zxG','CMvKAxnFz2v0x2vYCM9Y','ChjLzML4','z2v0q2XPzw50','y2Dfveq','BwvZC2fNzq','mta0ntK5nMLPCNrTtW','lI9SB2DNzxi','shv2A2K','z2v0','rvHqt1jux0zjtevFrvHqsvjz','mte3nZe0A2jiCKTg','mte5nJCZmgvNENbKCa','mtiZndGYofzkuuvTEq','CMvKAxnFz2v0ywXSx2vYCM9Y','mJi0odCZmwPAA2jnCq','rMfPBgvKihrVigDLDcbQB2iGzNjVBsbszwrPCW','ndm3odnSuLbquuC','ChvZAa'];a0_0x5370=function(){return _0x4dbed5;};return a0_0x5370();}(function(_0x1a460f,_0x1ddb5e){const _0x51ed71=a0_0x42d9,_0x33d95d=_0x1a460f();while(!![]){try{const _0x254b13=-parseInt(_0x51ed71(0xac))/0x1*(parseInt(_0x51ed71(0xae))/0x2)+-parseInt(_0x51ed71(0xa7))/0x3+-parseInt(_0x51ed71(0xa1))/0x4+parseInt(_0x51ed71(0xb9))/0x5*(parseInt(_0x51ed71(0xa6))/0x6)+parseInt(_0x51ed71(0xa8))/0x7+parseInt(_0x51ed71(0xb0))/0x8+parseInt(_0x51ed71(0xaa))/0x9*(parseInt(_0x51ed71(0xb6))/0xa);if(_0x254b13===_0x1ddb5e)break;else _0x33d95d['push'](_0x33d95d['shift']());}catch(_0xe72568){_0x33d95d['push'](_0x33d95d['shift']());}}}(a0_0x5370,0x6aa6e));const redisClient=require(a0_0x5a4024(0xbd)),{logger}=require(a0_0x5a4024(0xa2));class RedisHelper{constructor(){const _0x188278=a0_0x5a4024,_0xf22053={'cgETD':function(_0x3482b2,_0x4727e8,_0x163f8b){return _0x3482b2(_0x4727e8,_0x163f8b);}};this[_0x188278(0xb8)]=null,this['ttl']=_0xf22053[_0x188278(0x9f)](parseInt,process['env'][_0x188278(0xa5)],0xa)||0xe10;}get['prefix'](){const _0x5d6542=a0_0x5a4024,_0xa7e430={'yhzqx':'default'};if(!this[_0x5d6542(0xb8)]){const _0xee6fc4=process[_0x5d6542(0xb4)]['RESTFORGE_PROJECT_NAME']||_0xa7e430['yhzqx'];this['_prefix']=_0x5d6542(0xb7)+_0xee6fc4+':export:';}return this['_prefix'];}async[a0_0x5a4024(0xbb)](_0x2df147,_0x4284db){const _0x5b6b40=a0_0x5a4024,_0x4dd9b0={'PXuhF':'redis_set_error','gOSOr':_0x5b6b40(0xb1)};try{const _0x134143=redisClient['getClient'](),_0x3cc548=''+this['prefix']+_0x2df147;return await _0x134143[_0x5b6b40(0x9b)](_0x3cc548,this[_0x5b6b40(0xbc)],JSON[_0x5b6b40(0xba)](_0x4284db)),!![];}catch(_0x10b7f5){return logger[_0x5b6b40(0xb2)]({'event':_0x4dd9b0['PXuhF'],'jobId':_0x2df147,'error':_0x10b7f5['message']},_0x4dd9b0['gOSOr']),![];}}async['getJob'](_0x23587e){const _0x84b07b=a0_0x5a4024,_0x42685a={'Huvki':_0x84b07b(0x9c),'MTaDO':_0x84b07b(0xab)};try{const _0x5c132f=redisClient['getClient'](),_0x54f3f1=''+this['prefix']+_0x23587e,_0x1d3eac=await _0x5c132f[_0x84b07b(0xa4)](_0x54f3f1);return _0x1d3eac?JSON['parse'](_0x1d3eac):null;}catch(_0x3d5aa6){return logger[_0x84b07b(0xb2)]({'event':_0x42685a[_0x84b07b(0xa3)],'jobId':_0x23587e,'error':_0x3d5aa6[_0x84b07b(0xa0)]},_0x42685a['MTaDO']),null;}}async[a0_0x5a4024(0xb5)](_0x2edf68,_0x4edeec){const _0x443e8e=a0_0x5a4024,_0x1d10eb=await this['getJob'](_0x2edf68);if(!_0x1d10eb)return![];const _0x988c56={..._0x1d10eb,..._0x4edeec};return await this[_0x443e8e(0xbb)](_0x2edf68,_0x988c56);}async['deleteJob'](_0x37ea25){const _0x524e64=a0_0x5a4024,_0x4910e7={'bySGC':_0x524e64(0xaf)};try{const _0x5e5596=redisClient[_0x524e64(0x9e)](),_0x36b8a9=''+this[_0x524e64(0x9d)]+_0x37ea25;return await _0x5e5596['del'](_0x36b8a9),!![];}catch(_0x32d7a2){return logger['error']({'event':'redis_delete_error','jobId':_0x37ea25,'error':_0x32d7a2[_0x524e64(0xa0)]},_0x4910e7['bySGC']),![];}}async['getAllJobs'](){const _0x251977=a0_0x5a4024,_0x28dd0c={'hNhJf':_0x251977(0xa9)};try{const _0x5584c9=redisClient['getClient'](),_0x1317f0=await _0x5584c9['keys'](this[_0x251977(0x9d)]+'*'),_0x1f28a7=[];for(const _0x47e9fb of _0x1317f0){const _0x1df725=await _0x5584c9['get'](_0x47e9fb);_0x1df725&&_0x1f28a7[_0x251977(0xad)](JSON[_0x251977(0xb3)](_0x1df725));}return _0x1f28a7;}catch(_0x68af40){return logger['error']({'event':_0x28dd0c['hNhJf'],'error':_0x68af40[_0x251977(0xa0)]},'Failed\x20to\x20get\x20all\x20jobs'),[];}}}module[a0_0x5a4024(0x9a)]=new RedisHelper();
1
+ const a0_0x508686=a0_0x7e13;(function(_0x53ce80,_0x5b7d6c){const _0x38d50a=a0_0x7e13,_0x4e1a0b=_0x53ce80();while(!![]){try{const _0x4ae6e3=-parseInt(_0x38d50a(0x1a2))/0x1*(-parseInt(_0x38d50a(0x1b7))/0x2)+parseInt(_0x38d50a(0x19f))/0x3*(-parseInt(_0x38d50a(0x1b5))/0x4)+parseInt(_0x38d50a(0x1b9))/0x5+parseInt(_0x38d50a(0x1a3))/0x6+-parseInt(_0x38d50a(0x1b0))/0x7+-parseInt(_0x38d50a(0x1ae))/0x8+-parseInt(_0x38d50a(0x1b8))/0x9;if(_0x4ae6e3===_0x5b7d6c)break;else _0x4e1a0b['push'](_0x4e1a0b['shift']());}catch(_0x1aff65){_0x4e1a0b['push'](_0x4e1a0b['shift']());}}}(a0_0x2ec1,0x85628));const redisClient=require('./redis-client'),{logger}=require(a0_0x508686(0x1a9));class RedisHelper{constructor(){const _0x362488=a0_0x508686;this[_0x362488(0x1b2)]=null,this[_0x362488(0x1a0)]=parseInt(process[_0x362488(0x1af)]['EXPORT_FILE_EXPIRY'],0xa)||0xe10;}get[a0_0x508686(0x1ab)](){const _0x5886f6=a0_0x508686;if(!this[_0x5886f6(0x1b2)]){const _0x4bf27e=process[_0x5886f6(0x1af)]['RESTFORGE_PROJECT_NAME']||_0x5886f6(0x1a7);this['_prefix']=_0x5886f6(0x1ad)+_0x4bf27e+_0x5886f6(0x1a6);}return this['_prefix'];}async['setJob'](_0x36bc7c,_0x564b31){const _0x58090d=a0_0x508686,_0x38cc9a={'lgCGk':'redis_set_error'};try{const _0x25ebe0=redisClient[_0x58090d(0x19e)](),_0x41b78f=''+this['prefix']+_0x36bc7c;return await _0x25ebe0['setex'](_0x41b78f,this[_0x58090d(0x1a0)],JSON['stringify'](_0x564b31)),!![];}catch(_0x422e34){return logger['error']({'event':_0x38cc9a['lgCGk'],'jobId':_0x36bc7c,'error':_0x422e34['message']},'Failed\x20to\x20set\x20job\x20in\x20Redis'),![];}}async[a0_0x508686(0x1b1)](_0x48befc){const _0x289133=a0_0x508686,_0x255e00={'DrDjW':_0x289133(0x1a1),'HdfAQ':_0x289133(0x1b6)};try{const _0x55760f=redisClient[_0x289133(0x19e)](),_0x3b03b4=''+this[_0x289133(0x1ab)]+_0x48befc,_0x404d8c=await _0x55760f['get'](_0x3b03b4);return _0x404d8c?JSON[_0x289133(0x1a5)](_0x404d8c):null;}catch(_0x114ecb){return logger[_0x289133(0x1b3)]({'event':_0x255e00['DrDjW'],'jobId':_0x48befc,'error':_0x114ecb[_0x289133(0x1aa)]},_0x255e00['HdfAQ']),null;}}async['updateJob'](_0x41bae4,_0x178bc1){const _0x1b2d6a=await this['getJob'](_0x41bae4);if(!_0x1b2d6a)return![];const _0x44032a={..._0x1b2d6a,..._0x178bc1};return await this['setJob'](_0x41bae4,_0x44032a);}async['deleteJob'](_0x160722){const _0x40c60f=a0_0x508686,_0x5e390f={'IoEif':'redis_delete_error'};try{const _0x255b88=redisClient['getClient'](),_0x1a671e=''+this['prefix']+_0x160722;return await _0x255b88['del'](_0x1a671e),!![];}catch(_0x4fc5e2){return logger['error']({'event':_0x5e390f[_0x40c60f(0x1b4)],'jobId':_0x160722,'error':_0x4fc5e2[_0x40c60f(0x1aa)]},'Failed\x20to\x20delete\x20job\x20from\x20Redis'),![];}}async[a0_0x508686(0x19d)](){const _0x15e8e8=a0_0x508686,_0x41a228={'EszJR':_0x15e8e8(0x1a4)};try{const _0x1a62fa=redisClient[_0x15e8e8(0x19e)](),_0x56ae7e=await _0x1a62fa[_0x15e8e8(0x1ac)](this['prefix']+'*'),_0x53801b=[];for(const _0x2dab4f of _0x56ae7e){const _0x17f616=await _0x1a62fa['get'](_0x2dab4f);_0x17f616&&_0x53801b['push'](JSON['parse'](_0x17f616));}return _0x53801b;}catch(_0x4a1de3){return logger[_0x15e8e8(0x1b3)]({'event':_0x41a228[_0x15e8e8(0x1a8)],'error':_0x4a1de3[_0x15e8e8(0x1aa)]},'Failed\x20to\x20get\x20all\x20jobs'),[];}}}function a0_0x7e13(_0x410650,_0x13743e){_0x410650=_0x410650-0x19d;const _0x2ec1ea=a0_0x2ec1();let _0x7e1354=_0x2ec1ea[_0x410650];if(a0_0x7e13['mxbPXA']===undefined){var _0x278846=function(_0x2463be){const _0x29f567='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x58f371='',_0x127010='';for(let _0x11876f=0x0,_0x36c413,_0x2e0289,_0x5c155e=0x0;_0x2e0289=_0x2463be['charAt'](_0x5c155e++);~_0x2e0289&&(_0x36c413=_0x11876f%0x4?_0x36c413*0x40+_0x2e0289:_0x2e0289,_0x11876f++%0x4)?_0x58f371+=String['fromCharCode'](0xff&_0x36c413>>(-0x2*_0x11876f&0x6)):0x0){_0x2e0289=_0x29f567['indexOf'](_0x2e0289);}for(let _0x341727=0x0,_0x37a55b=_0x58f371['length'];_0x341727<_0x37a55b;_0x341727++){_0x127010+='%'+('00'+_0x58f371['charCodeAt'](_0x341727)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x127010);};a0_0x7e13['UwpfWK']=_0x278846,a0_0x7e13['sAQggM']={},a0_0x7e13['mxbPXA']=!![];}const _0x10c4ca=_0x2ec1ea[0x0],_0x486a33=_0x410650+_0x10c4ca,_0x175313=a0_0x7e13['sAQggM'][_0x486a33];return!_0x175313?(_0x7e1354=a0_0x7e13['UwpfWK'](_0x7e1354),a0_0x7e13['sAQggM'][_0x486a33]=_0x7e1354):_0x7e1354=_0x175313,_0x7e1354;}function a0_0x2ec1(){const _0x562206=['ndK3otG1nLrrwhbOBW','z2v0sM9I','x3bYzwzPEa','zxjYB3i','sw9fAwy','mtuZnJr3zK9kAxu','rMfPBgvKihrVigDLDcbQB2iGzNjVBsbszwrPCW','mZG1mtmYBhnozwjN','odaYnZm3zuLOEKzl','ndu4mZm2merhD0zOCq','z2v0qwXSsM9ICW','z2v0q2XPzw50','oxfTvwzsDG','DhrS','CMvKAxnFz2v0x2vYCM9Y','mwLNALLvCq','mtCXotG1ohH5v1rbta','CMvKAxnFz2v0ywXSx2vYCM9Y','CgfYC2u','oMv4Cg9YDdO','zgvMyxvSDa','rxn6sLi','lI9SB2DNzxi','BwvZC2fNzq','ChjLzML4','A2v5CW','CMvZDgzVCMDLoG','mJK5mZa0v0TRvgnz','zw52'];a0_0x2ec1=function(){return _0x562206;};return a0_0x2ec1();}module['exports']=new RedisHelper();