@restforgejs/platform 4.3.4 → 4.3.5

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 (171) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/lib/payload/endpoint-schema-validator.js +181 -181
  5. package/generators/lib/payload/payload-runner.js +1218 -1218
  6. package/generators/lib/payload/schema-diff.js +460 -460
  7. package/generators/lib/templates/dashboard-catalog.js +1 -1
  8. package/generators/lib/templates/db-connection-env.js +1 -1
  9. package/generators/lib/templates/dbschema-catalog.js +1 -1
  10. package/generators/lib/templates/field-validation-catalog.js +1 -1
  11. package/generators/lib/templates/mysql-template.js +1 -1
  12. package/generators/lib/templates/oracle-template.js +1 -1
  13. package/generators/lib/templates/postgres-template.js +1 -1
  14. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  15. package/generators/lib/templates/sqlite-template.js +1 -1
  16. package/integrity-manifest.json +18 -18
  17. package/node_modules/readdir-glob/node_modules/brace-expansion/index.js +1 -1
  18. package/node_modules/readdir-glob/node_modules/brace-expansion/package.json +1 -1
  19. package/package.json +1 -1
  20. package/scripts/verify-integrity.js +1 -1
  21. package/server.js +1 -1
  22. package/src/components/handlers/adjust_handler.js +1 -1
  23. package/src/components/handlers/audit_handler.js +1 -1
  24. package/src/components/handlers/delete_handler.js +1 -1
  25. package/src/components/handlers/export_handler.js +1 -1
  26. package/src/components/handlers/import_handler.js +1 -1
  27. package/src/components/handlers/insert_handler.js +1 -1
  28. package/src/components/handlers/update_handler.js +1 -1
  29. package/src/components/handlers/upload_handler.js +1 -1
  30. package/src/components/handlers/workflow_handler.js +1 -1
  31. package/src/components/integrations/webhook.js +1 -1
  32. package/src/consumers/baseConsumer.js +1 -1
  33. package/src/consumers/declarativeMapper.js +1 -1
  34. package/src/consumers/handlers/apiHandler.js +1 -1
  35. package/src/consumers/handlers/consoleHandler.js +1 -1
  36. package/src/consumers/handlers/databaseHandler.js +1 -1
  37. package/src/consumers/handlers/index.js +1 -1
  38. package/src/consumers/handlers/kafkaHandler.js +1 -1
  39. package/src/consumers/index.js +1 -1
  40. package/src/consumers/messageTransformer.js +1 -1
  41. package/src/consumers/validator.js +1 -1
  42. package/src/core/db/dialect/base-dialect.js +1 -1
  43. package/src/core/db/dialect/index.js +1 -1
  44. package/src/core/db/dialect/mysql-dialect.js +1 -1
  45. package/src/core/db/dialect/oracle-dialect.js +1 -1
  46. package/src/core/db/dialect/postgres-dialect.js +1 -1
  47. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  48. package/src/core/db/flatten-helper.js +1 -1
  49. package/src/core/db/query-builder-error.js +1 -1
  50. package/src/core/db/query-builder.js +1 -1
  51. package/src/core/db/relation-helper.js +1 -1
  52. package/src/core/handlers/delete_handler.js +1 -1
  53. package/src/core/handlers/insert_handler.js +1 -1
  54. package/src/core/handlers/update_handler.js +1 -1
  55. package/src/core/models/base-model.js +1 -1
  56. package/src/core/utils/cache-manager.js +1 -1
  57. package/src/core/utils/component-engine.js +1 -1
  58. package/src/core/utils/context-builder.js +1 -1
  59. package/src/core/utils/datetime-formatter.js +1 -1
  60. package/src/core/utils/datetime-parser.js +1 -1
  61. package/src/core/utils/db.js +1 -1
  62. package/src/core/utils/logger.js +1 -1
  63. package/src/core/utils/payload-loader.js +1 -1
  64. package/src/core/utils/security-checks.js +1 -1
  65. package/src/middleware/body-options.js +1 -1
  66. package/src/middleware/cors.js +1 -1
  67. package/src/middleware/idempotency.js +1 -1
  68. package/src/middleware/rate-limiter.js +1 -1
  69. package/src/middleware/request-logger.js +1 -1
  70. package/src/middleware/security-headers.js +1 -1
  71. package/src/models/base-model-mysql.js +1 -1
  72. package/src/models/base-model-oracle.js +1 -1
  73. package/src/models/base-model-sqlite.js +1 -1
  74. package/src/models/base-model.js +1 -1
  75. package/src/pro/caching/redis-client.js +1 -1
  76. package/src/pro/caching/redis-helper.js +1 -1
  77. package/src/pro/consumers/baseConsumer.js +1 -1
  78. package/src/pro/consumers/declarativeMapper.js +1 -1
  79. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  80. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  81. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  82. package/src/pro/consumers/handlers/index.js +1 -1
  83. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  84. package/src/pro/consumers/index.js +1 -1
  85. package/src/pro/consumers/messageTransformer.js +1 -1
  86. package/src/pro/consumers/validator.js +1 -1
  87. package/src/pro/database/base-model-mysql.js +1 -1
  88. package/src/pro/database/base-model-oracle.js +1 -1
  89. package/src/pro/database/base-model-sqlite.js +1 -1
  90. package/src/pro/database/db-mysql.js +1 -1
  91. package/src/pro/database/db-oracle.js +1 -1
  92. package/src/pro/database/db-sqlite.js +1 -1
  93. package/src/pro/excel/excel-generator.js +1 -1
  94. package/src/pro/excel/excel-parser.js +1 -1
  95. package/src/pro/excel/export-service.js +1 -1
  96. package/src/pro/excel/export_handler.js +1 -1
  97. package/src/pro/excel/import-service.js +1 -1
  98. package/src/pro/excel/import-validator.js +1 -1
  99. package/src/pro/excel/import_handler.js +1 -1
  100. package/src/pro/excel/upsert-builder.js +1 -1
  101. package/src/pro/idgen/idgen-routes.js +1 -1
  102. package/src/pro/integrations/lookup-resolver.js +1 -1
  103. package/src/pro/integrations/upload-handler-v2.js +1 -1
  104. package/src/pro/integrations/upload-handler.js +1 -1
  105. package/src/pro/integrations/webhook.js +1 -1
  106. package/src/pro/locking/lock-routes.js +1 -1
  107. package/src/pro/locking/resource-lock-manager.js +1 -1
  108. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  109. package/src/pro/messaging/kafkaService.js +1 -1
  110. package/src/pro/messaging/messagehubService.js +1 -1
  111. package/src/pro/messaging/rabbitmqService.js +1 -1
  112. package/src/pro/scheduler/job-manager.js +1 -1
  113. package/src/pro/scheduler/job-routes.js +1 -1
  114. package/src/pro/scheduler/job-validator.js +1 -1
  115. package/src/pro/storage/base-storage-provider.js +1 -1
  116. package/src/pro/storage/file-metadata-helper.js +1 -1
  117. package/src/pro/storage/index.js +1 -1
  118. package/src/pro/storage/local-storage-provider.js +1 -1
  119. package/src/pro/storage/s3-storage-provider.js +1 -1
  120. package/src/pro/storage/upload-cleanup-job.js +1 -1
  121. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  122. package/src/pro/storage/upload-pending-tracker.js +1 -1
  123. package/src/pro/websocket/broadcast-helper.js +1 -1
  124. package/src/pro/websocket/index.js +1 -1
  125. package/src/pro/websocket/livesync-server.js +1 -1
  126. package/src/pro/websocket/ws-broadcaster.js +1 -1
  127. package/src/services/export-service.js +1 -1
  128. package/src/services/import-service.js +1 -1
  129. package/src/services/kafkaConsumerService.js +1 -1
  130. package/src/services/kafkaService.js +1 -1
  131. package/src/services/messagehubService.js +1 -1
  132. package/src/services/rabbitmqService.js +1 -1
  133. package/src/utils/cache-invalidation-registry.js +1 -1
  134. package/src/utils/cache-manager.js +1 -1
  135. package/src/utils/component-engine.js +1 -1
  136. package/src/utils/config-extractor.js +1 -1
  137. package/src/utils/consumerLogger.js +1 -1
  138. package/src/utils/context-builder.js +1 -1
  139. package/src/utils/dashboard-helpers.js +1 -1
  140. package/src/utils/dateHelper.js +1 -1
  141. package/src/utils/datetime-formatter.js +1 -1
  142. package/src/utils/datetime-parser.js +1 -1
  143. package/src/utils/db-bootstrap.js +1 -1
  144. package/src/utils/db-mysql.js +1 -1
  145. package/src/utils/db-oracle.js +1 -1
  146. package/src/utils/db-sqlite.js +1 -1
  147. package/src/utils/db.js +1 -1
  148. package/src/utils/demo-generator.js +1 -1
  149. package/src/utils/excel-generator.js +1 -1
  150. package/src/utils/excel-parser.js +1 -1
  151. package/src/utils/file-watcher.js +1 -1
  152. package/src/utils/id-generator.js +1 -1
  153. package/src/utils/idempotency-manager.js +1 -1
  154. package/src/utils/import-validator.js +1 -1
  155. package/src/utils/license-client.js +1 -1
  156. package/src/utils/lock-manager.js +1 -1
  157. package/src/utils/logger.js +1 -1
  158. package/src/utils/lookup-resolver.js +1 -1
  159. package/src/utils/payload-loader.js +1 -1
  160. package/src/utils/processor-response.js +1 -1
  161. package/src/utils/rabbitmq.js +1 -1
  162. package/src/utils/redis-client.js +1 -1
  163. package/src/utils/redis-helper.js +1 -1
  164. package/src/utils/request-scope.js +1 -1
  165. package/src/utils/security-checks.js +1 -1
  166. package/src/utils/service-resolver.js +1 -1
  167. package/src/utils/shutdown-coordinator.js +1 -1
  168. package/src/utils/trusted-keys.js +1 -1
  169. package/src/utils/upload-handler.js +1 -1
  170. package/src/utils/upsert-builder.js +1 -1
  171. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- function a0_0x13d6(){const _0x131543=['CMv0CNK','ufrWs2u','zxjYB3i','D3jPDgvFBg9JA19LCNjVCG','x3jLDhj5q291BNq','r2HqALa','D2fYBG','CMv0CNLdB3vUDa','nJe3mZK4uNfJwu5P','D29YA2vYlq','CMvHzf9SB2nRx3DHAxrPBMC','v1blAxa','CMvHzf9SB2nRx3jLBgvHC2vK','v3HIBvK','mJa2ndC1mgrUAeTuva','BunnrKO','D3jPDgvFBg9JA19YzwXLyxnLza','BK1xqMG','mtjRDuDVDfy','tgTfChy','tg9JAYbuveWGzxH0zw5Kzwq','te9ds19esvnuuKLcvvrfrf9srvrswq','CMv0CNLezwXHEq','zfHKsvu','zxHWB3j0CW','C3vIC3rYAw5N','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','zxzHBa','x2LUAxrdB25MAwC','v1jjveuGBg9JAYbLCNjVCG','mZnfqMv6q3m','D3jPDgu','C2XeDeK','ndi0nZG2nw9cs1L5sW','CMvHza','x3jLDhj5rgvSyxK','q1PRtxe','Bg5dweO','z2v0','EeHzExi','zgvMyxvSDfruta','uKvbrcbSB2nRigvYCM9Y','x2vUC3vYzuLUAxrPywXPEMvK','zgvS','Bg9JA19LEhrLBMrLza','wNnntui','z2v0q2XPzw50','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','mJCYodC5nuDgz2TSCq','x2LUAxrPywXPEMvK','ywXS','AeDWshC','Cg93','ywnXDwLYzvDYAxrLtg9JAW','BgfZDeLUzgv4t2y','CMy6Bg9JAZO','tLrnDMO','uKvbrcbSB2nRihjLBgvHC2vK','AxnfBMfIBgvK','DK5UwMq','x2rLzMf1BhruveW','x2vUywjSzwq','v1jjveuGBg9JAYbYzwXLyxnLza','yNvPBgrmB2nRs2v5','z2vUzxjHDgvmB2nRvMfSDwu','x3DVCMTLCKLK','ug1hz0i','tg9JAYbLEhrLBMqGzxjYB3i','ndm2mtK4z0jQzvHd','Ae9qBMq','zgvIDwC','x3bYzwzPEa','zxH0zw5Ktg9JAW','twjuruy','Dhj1zq','odmYmZi4mfzdq1zhta','z2v0tg9JA0LUzM8','BwvZC2fNzq','zw5HyMXLza','mZKZmZzhwefktLy','x3n0CMf0zwD5','CMvQzwn0','D3jPDgvFBg9JA19Hy3f1AxjLza','zwXer3u','C2XLzxa','tg9JAYbYzwXLyxnLigvYCM9Y','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','og9hr3DABq','zw52'];a0_0x13d6=function(){return _0x131543;};return a0_0x13d6();}const a0_0x558805=a0_0x31bc;function a0_0x31bc(_0x213086,_0x858827){_0x213086=_0x213086-0xd9;const _0x13d672=a0_0x13d6();let _0x31bc11=_0x13d672[_0x213086];if(a0_0x31bc['uvuGHt']===undefined){var _0x68f8b0=function(_0x2d000a){const _0x5c62ee='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x16c1ad='',_0x445d02='';for(let _0x544b02=0x0,_0xeaf48b,_0x1d953e,_0x2eb80a=0x0;_0x1d953e=_0x2d000a['charAt'](_0x2eb80a++);~_0x1d953e&&(_0xeaf48b=_0x544b02%0x4?_0xeaf48b*0x40+_0x1d953e:_0x1d953e,_0x544b02++%0x4)?_0x16c1ad+=String['fromCharCode'](0xff&_0xeaf48b>>(-0x2*_0x544b02&0x6)):0x0){_0x1d953e=_0x5c62ee['indexOf'](_0x1d953e);}for(let _0x306df9=0x0,_0x47bad5=_0x16c1ad['length'];_0x306df9<_0x47bad5;_0x306df9++){_0x445d02+='%'+('00'+_0x16c1ad['charCodeAt'](_0x306df9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x445d02);};a0_0x31bc['YLKalO']=_0x68f8b0,a0_0x31bc['WcOUwD']={},a0_0x31bc['uvuGHt']=!![];}const _0x46a239=_0x13d672[0x0],_0xdce2ed=_0x213086+_0x46a239,_0x14b4a9=a0_0x31bc['WcOUwD'][_0xdce2ed];return!_0x14b4a9?(_0x31bc11=a0_0x31bc['YLKalO'](_0x31bc11),a0_0x31bc['WcOUwD'][_0xdce2ed]=_0x31bc11):_0x31bc11=_0x14b4a9,_0x31bc11;}(function(_0x429c47,_0x17036a){const _0x45e75a=a0_0x31bc,_0x15fee4=_0x429c47();while(!![]){try{const _0x437462=parseInt(_0x45e75a(0xe1))/0x1+parseInt(_0x45e75a(0xe7))/0x2+parseInt(_0x45e75a(0xf8))/0x3*(-parseInt(_0x45e75a(0x129))/0x4)+-parseInt(_0x45e75a(0x10a))/0x5*(parseInt(_0x45e75a(0xeb))/0x6)+-parseInt(_0x45e75a(0x11e))/0x7*(parseInt(_0x45e75a(0x131))/0x8)+-parseInt(_0x45e75a(0xfb))/0x9+parseInt(_0x45e75a(0x125))/0xa;if(_0x437462===_0x17036a)break;else _0x15fee4['push'](_0x15fee4['shift']());}catch(_0x3d4d2a){_0x15fee4['push'](_0x15fee4['shift']());}}}(a0_0x13d6,0xb6a4e));const redisClient=require('./redis-client'),{logger}=require('./logger'),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0x586a5f=a0_0x31bc,_0x51e425='5|4|1|2|3|7|6|0'['split']('|');let _0x33183c=0x0;while(!![]){switch(_0x51e425[_0x33183c++]){case'0':this[_0x586a5f(0x10b)]=![];continue;case'1':this['_defaultTTL']=null;continue;case'2':this['_retryCount']=null;continue;case'3':this['_retryDelay']=null;continue;case'4':this[_0x586a5f(0x117)]=null;continue;case'5':this[_0x586a5f(0x121)]=null;continue;case'6':this[_0x586a5f(0x11b)]=null;continue;case'7':this[_0x586a5f(0x12a)]=null;continue;}break;}}[a0_0x558805(0xf6)](){const _0x3fdce0=a0_0x558805,_0x409343={'MqhYv':'lock_config_init','ZsMMB':_0x3fdce0(0x111),'slDtI':function(_0x4f58e6,_0x441c72,_0x417206){return _0x4f58e6(_0x441c72,_0x417206);}},_0x46dabf='1|6|3|7|8|4|2|5|0'['split']('|');let _0x3c16c2=0x0;while(!![]){switch(_0x46dabf[_0x3c16c2++]){case'0':logger['info']({'event':_0x409343['MqhYv'],'enabled':this['_enabled'],'strategy':this['_strategy'],'ttl':this[_0x3fdce0(0x116)],'retryCount':this['_retryCount'],'retryDelay':this[_0x3fdce0(0xfd)],'workerId':this['_workerId']},_0x3fdce0(0xf4)+this['_enabled']+',\x20strategy:\x20'+this[_0x3fdce0(0x12a)]);continue;case'1':this['_prefix']=_0x409343[_0x3fdce0(0x107)];continue;case'2':this[_0x3fdce0(0x11b)]=_0x3fdce0(0xe2)+process['pid'];continue;case'3':this[_0x3fdce0(0x116)]=_0x409343[_0x3fdce0(0xfa)](parseInt,process['env']['LOCK_DISTRIBUTED_TTL'],0xa)||0xa;continue;case'4':this['_strategy']=process[_0x3fdce0(0x132)][_0x3fdce0(0xf3)]||'retry';continue;case'5':this['_initialized']=!![];continue;case'6':this['_enabled']=process[_0x3fdce0(0x132)]['LOCK_DISTRIBUTED_ENABLED']===_0x3fdce0(0x124);continue;case'7':this[_0x3fdce0(0xdd)]=parseInt(process['env'][_0x3fdce0(0xee)],0xa)||0x3;continue;case'8':this['_retryDelay']=_0x409343[_0x3fdce0(0xfa)](parseInt,process[_0x3fdce0(0x132)]['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64;continue;}break;}}[a0_0x558805(0x104)](){const _0x1b9ebd=a0_0x558805;!this[_0x1b9ebd(0x10b)]&&this[_0x1b9ebd(0xf6)]();}get['prefix'](){return this['_ensureInitialized'](),this['_prefix'];}get[a0_0x558805(0x128)](){const _0x1f993c=a0_0x558805;return this['_ensureInitialized'](),this[_0x1f993c(0x117)];}get[a0_0x558805(0x102)](){return this['_ensureInitialized'](),this['_defaultTTL'];}get[a0_0x558805(0xe0)](){const _0x981760=a0_0x558805;return this[_0x981760(0x104)](),this['_retryCount'];}get['retryDelay'](){return this['_ensureInitialized'](),this['_retryDelay'];}get['strategy'](){const _0x240a97=a0_0x558805;return this[_0x240a97(0x104)](),this[_0x240a97(0x12a)];}get['workerId'](){return this['_ensureInitialized'](),this['_workerId'];}[a0_0x558805(0x119)](_0x3b2389){const {module:_0xcb9479,endpoint:_0x1e9686,lockType:_0x311e60,recordId:_0x586e49}=_0x3b2389;if(_0x586e49)return''+this['prefix']+_0xcb9479+':'+_0x1e9686+':'+_0x586e49+':'+_0x311e60;return''+this['prefix']+_0xcb9479+':'+_0x1e9686+':'+_0x311e60;}[a0_0x558805(0x11a)](){return this['workerId']+':'+uuidv4()+':'+Date['now']();}async['acquireReadLock'](_0x3f2b9e){const _0x5e2724=a0_0x558805,_0x12c7ac={'hGpHw':function(_0x2d4498,_0x31151e){return _0x2d4498<_0x31151e;},'MbTEF':'read_lock_acquired','NTMvj':_0x5e2724(0xe3),'CVXOw':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release','JUORJ':function(_0x291468,_0x550ecd){return _0x291468*_0x550ecd;},'PmGgB':_0x5e2724(0x103)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x53a4cc=this['buildLockKey']({..._0x3f2b9e,'lockType':_0x5e2724(0xf9)}),_0x1554aa=this['buildLockKey']({..._0x3f2b9e,'lockType':_0x5e2724(0xfc)}),_0xf56b60=this[_0x5e2724(0x11a)]();try{const _0x278484=redisClient['getClient']();for(let _0xb6dd9a=0x0;_0x12c7ac[_0x5e2724(0x10d)](_0xb6dd9a,this['retryCount']);_0xb6dd9a++){const _0x1e555f=await _0x278484['get'](_0x53a4cc);if(!_0x1e555f){await _0x278484['incr'](_0x1554aa),await _0x278484['expire'](_0x1554aa,this['defaultTTL']);const _0x21a398=_0x1554aa+':'+_0xf56b60;return await _0x278484['setex'](_0x21a398,this[_0x5e2724(0x102)],_0xf56b60),logger['debug']({'event':_0x12c7ac[_0x5e2724(0x123)],'key':_0x1554aa,'value':_0xf56b60},'READ\x20lock\x20acquired'),{'success':!![],'lockValue':_0xf56b60,'lockKey':_0x21a398};}logger[_0x5e2724(0x120)]({'event':_0x12c7ac[_0x5e2724(0x112)],'writeKey':_0x53a4cc,'attempt':_0xb6dd9a},_0x12c7ac['CVXOw']),await this[_0x5e2724(0x12e)](_0x12c7ac['JUORJ'](this['retryDelay'],Math[_0x5e2724(0x10e)](0x2,_0xb6dd9a)));}return logger[_0x5e2724(0xdf)]({'event':'read_lock_timeout','key':_0x1554aa},'READ\x20lock\x20acquire\x20timeout'),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x43908d){return logger[_0x5e2724(0xdb)]({'event':'read_lock_error','error':_0x43908d['message']},_0x12c7ac[_0x5e2724(0x11c)]),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x558805(0x10f)](_0x7c76a2){const _0x2d5fcc=a0_0x558805,_0x5e03a7={'GhPjP':'write','OLwcn':_0x2d5fcc(0xfc),'nMWBh':_0x2d5fcc(0x12b),'ajzpP':function(_0x30a24a,_0x54e8f1){return _0x30a24a===_0x54e8f1;},'WxbmY':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','xHYyr':function(_0x4bddf4,_0x3161d0){return _0x4bddf4<_0x3161d0;},'Jjdyf':_0x2d5fcc(0x12c),'CZkMq':_0x2d5fcc(0xd9),'mCMFJ':'write_lock_waiting','dXdIU':'write_lock_timeout','WPKip':_0x2d5fcc(0x130),'FXzVF':_0x2d5fcc(0xf7)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x5dd711=this['buildLockKey']({..._0x7c76a2,'lockType':_0x5e03a7[_0x2d5fcc(0xde)]}),_0x426276=this[_0x2d5fcc(0x119)]({..._0x7c76a2,'lockType':_0x5e03a7['OLwcn']}),_0x415aec=this['generateLockValue']();try{const _0x437d5a=redisClient[_0x2d5fcc(0x108)]();if(this['strategy']===_0x5e03a7['nMWBh']){const _0xd441b5=await _0x437d5a['set'](_0x5dd711,_0x415aec,'EX',this[_0x2d5fcc(0x102)],'NX');if(_0x5e03a7['ajzpP'](_0xd441b5,'OK'))return logger['debug']({'event':_0x2d5fcc(0x12c),'key':_0x5dd711,'value':_0x415aec,'strategy':_0x5e03a7[_0x2d5fcc(0xea)]},'WRITE\x20lock\x20acquired\x20(reject\x20mode)'),{'success':!![],'lockValue':_0x415aec,'lockKey':_0x5dd711};return logger['debug']({'event':'write_lock_rejected','key':_0x5dd711},_0x5e03a7[_0x2d5fcc(0xe6)]),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x50161a=0x0;_0x5e03a7[_0x2d5fcc(0x101)](_0x50161a,this['retryCount']);_0x50161a++){const [_0x89ea74,_0x189d0b]=await Promise[_0x2d5fcc(0x10c)]([_0x437d5a[_0x2d5fcc(0x100)](_0x426276),_0x437d5a[_0x2d5fcc(0x100)](_0x5dd711)]);if(!_0x189d0b&&(!_0x89ea74||parseInt(_0x89ea74)===0x0)){const _0x46f22f=await _0x437d5a['set'](_0x5dd711,_0x415aec,'EX',this[_0x2d5fcc(0x102)],'NX');if(_0x46f22f==='OK')return logger[_0x2d5fcc(0x120)]({'event':_0x5e03a7['Jjdyf'],'key':_0x5dd711,'value':_0x415aec,'strategy':_0x5e03a7[_0x2d5fcc(0xfe)]},_0x2d5fcc(0x109)),{'success':!![],'lockValue':_0x415aec,'lockKey':_0x5dd711};}logger[_0x2d5fcc(0x120)]({'event':_0x5e03a7[_0x2d5fcc(0xe8)],'writeKey':_0x5dd711,'readCount':_0x89ea74,'attempt':_0x50161a},'Waiting\x20for\x20locks\x20to\x20release'),await this['sleep'](this[_0x2d5fcc(0xef)]*Math['pow'](0x2,_0x50161a));}return logger['warn']({'event':_0x5e03a7[_0x2d5fcc(0xf0)],'key':_0x5dd711},_0x5e03a7[_0x2d5fcc(0xe4)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x201ef8){return logger['error']({'event':_0x2d5fcc(0xdc),'error':_0x201ef8[_0x2d5fcc(0x127)]},_0x5e03a7['FXzVF']),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x5e2882,_0x516b75){const _0x414be1=a0_0x558805,_0x1d7b72={'urKzV':function(_0x5fad8b,_0x156bde){return _0x5fad8b(_0x156bde);},'pcCSQ':_0x414be1(0xe5),'LcjzG':function(_0x6a92b,_0x1f0ea5){return _0x6a92b===_0x1f0ea5;},'OhrCT':_0x414be1(0xe9),'LkEpv':'lock_release_error','lnCXJ':_0x414be1(0x12f)};if(!this[_0x414be1(0x128)]||!_0x5e2882)return!![];try{const _0x4b1d46=redisClient[_0x414be1(0x108)]();if(_0x5e2882['includes'](':read:')){await _0x4b1d46[_0x414be1(0x105)](_0x5e2882);const _0x1b3004=_0x5e2882[_0x414be1(0xf2)](0x0,_0x5e2882[_0x414be1(0x110)](':')),_0x174ce7=await _0x4b1d46[_0x414be1(0x100)](_0x1b3004);return _0x174ce7&&_0x1d7b72['urKzV'](parseInt,_0x174ce7)>0x0&&await _0x4b1d46['decr'](_0x1b3004),logger['debug']({'event':_0x1d7b72['pcCSQ'],'key':_0x5e2882},_0x414be1(0x113)),!![];}const _0x56ff7e='\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',_0x3af3dd=await _0x4b1d46[_0x414be1(0xf5)](_0x56ff7e,0x1,_0x5e2882,_0x516b75);if(_0x1d7b72['LcjzG'](_0x3af3dd,0x1))return logger[_0x414be1(0x120)]({'event':_0x1d7b72['OhrCT'],'key':_0x5e2882},_0x414be1(0x118)),!![];return logger['warn']({'event':'lock_release_not_owner','key':_0x5e2882},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0xc133bf){return logger[_0x414be1(0xdb)]({'event':_0x1d7b72[_0x414be1(0xec)],'key':_0x5e2882,'error':_0xc133bf['message']},_0x1d7b72[_0x414be1(0xff)]),![];}}async[a0_0x558805(0x122)](_0x107f17,_0x5282b2,_0x5ef832=null){const _0x148eb6=a0_0x558805,_0x639561={'vNnZd':_0x148eb6(0xed),'elDGu':'lock_extend_error'};if(!this['enabled']||!_0x107f17)return!![];try{const _0x5a73db=redisClient['getClient'](),_0x6080e7='\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',_0x483421=await _0x5a73db[_0x148eb6(0xf5)](_0x6080e7,0x1,_0x107f17,_0x5282b2,_0x5ef832||this['defaultTTL']);if(_0x483421===0x1)return logger[_0x148eb6(0x120)]({'event':_0x148eb6(0x106),'key':_0x107f17,'ttl':_0x5ef832||this[_0x148eb6(0x102)]},_0x639561[_0x148eb6(0x115)]),!![];return![];}catch(_0x59523b){return logger[_0x148eb6(0xdb)]({'event':_0x639561[_0x148eb6(0x12d)],'key':_0x107f17,'error':_0x59523b[_0x148eb6(0x127)]},_0x148eb6(0x11d)),![];}}[a0_0x558805(0x114)](){const _0x483a58=a0_0x558805;return this[_0x483a58(0x128)];}[a0_0x558805(0x12e)](_0xa10923){return new Promise(_0x4986ed=>setTimeout(_0x4986ed,_0xa10923));}async[a0_0x558805(0x126)](_0x53e18b){const _0x1b5f2d=a0_0x558805,_0x367431={'PTpKe':'write','hOPnd':function(_0x3f64ba,_0x5995df){return _0x3f64ba||_0x5995df;}};if(!this['enabled'])return{'enabled':![]};try{const _0x10f0a4=redisClient[_0x1b5f2d(0x108)](),_0x3194ea=this[_0x1b5f2d(0x119)]({..._0x53e18b,'lockType':_0x367431[_0x1b5f2d(0xda)]}),_0x185c55=this['buildLockKey']({..._0x53e18b,'lockType':_0x1b5f2d(0xfc)}),[_0x21250f,_0x197016]=await Promise[_0x1b5f2d(0x10c)]([_0x10f0a4[_0x1b5f2d(0x100)](_0x3194ea),_0x10f0a4['get'](_0x185c55)]);return{'enabled':!![],'writeLock':_0x367431[_0x1b5f2d(0x11f)](_0x21250f,null),'readCount':parseInt(_0x197016)||0x0,'writeKey':_0x3194ea,'readKey':_0x185c55};}catch(_0x2066c2){return{'enabled':!![],'error':_0x2066c2['message']};}}}module[a0_0x558805(0xf1)]=new LockManager();
1
+ function a0_0x1ac1(_0x545b8a,_0x24b475){_0x545b8a=_0x545b8a-0x156;const _0x20cddb=a0_0x20cd();let _0x1ac15c=_0x20cddb[_0x545b8a];if(a0_0x1ac1['CXVZjR']===undefined){var _0x333939=function(_0x24af8e){const _0x59724b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x565b2b='',_0xa1646c='';for(let _0x31e9b0=0x0,_0x46ed5a,_0x4ad9a9,_0x3d8477=0x0;_0x4ad9a9=_0x24af8e['charAt'](_0x3d8477++);~_0x4ad9a9&&(_0x46ed5a=_0x31e9b0%0x4?_0x46ed5a*0x40+_0x4ad9a9:_0x4ad9a9,_0x31e9b0++%0x4)?_0x565b2b+=String['fromCharCode'](0xff&_0x46ed5a>>(-0x2*_0x31e9b0&0x6)):0x0){_0x4ad9a9=_0x59724b['indexOf'](_0x4ad9a9);}for(let _0x4b8113=0x0,_0xeb6d67=_0x565b2b['length'];_0x4b8113<_0xeb6d67;_0x4b8113++){_0xa1646c+='%'+('00'+_0x565b2b['charCodeAt'](_0x4b8113)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa1646c);};a0_0x1ac1['wnQpnr']=_0x333939,a0_0x1ac1['NAKMLh']={},a0_0x1ac1['CXVZjR']=!![];}const _0x115dc9=_0x20cddb[0x0],_0x2b4ed3=_0x545b8a+_0x115dc9,_0x25769e=a0_0x1ac1['NAKMLh'][_0x2b4ed3];return!_0x25769e?(_0x1ac15c=a0_0x1ac1['wnQpnr'](_0x1ac15c),a0_0x1ac1['NAKMLh'][_0x2b4ed3]=_0x1ac15c):_0x1ac15c=_0x25769e,_0x1ac15c;}const a0_0x43bb08=a0_0x1ac1;function a0_0x20cd(){const _0x1f00e6=['tg9JAYbuveWGzxH0zw5Kzwq','CMv0CNLdB3vUDa','zgvIDwC','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','CMvHzf9SB2nRx2vYCM9Y','v1jjveuGBg9JAYbLCNjVCG','qLb2BwS','C2v0','D3jPDgvFBg9JA19LCNjVCG','x3DVCMTLCKLK','CMv0CNLezwXHEq','v1jjveuGBg9JAYbYzwXLyxnLza','BgfZDeLUzgv4t2y','zw52','te9ds19esvnuuKLcvvrfrf9uveW','D3jPDgvFBg9JA190Aw1LB3v0','mZK2nZu2wef2uhfs','x2LUAxrPywXPEMvK','Bg9JA19LEhrLBMrLza','CMv0CNK','yKnrEKi','C3bSAxq','x2rLzMf1BhruveW','AxnfBMfIBgvK','D3jPDgvFBg9JA19Hy3f1AxjLza','CMvHzf9SB2nRx2fJCxvPCMvK','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','uKvbrcbSB2nRihjLBgvHC2vK','z2vUzxjHDgvmB2nRvMfSDwu','Chj4B2u','qvPwrxG','uKvbrcbSB2nRigvYCM9Y','CMvSzwfZzuXVy2S','nKLXq1nLrq','AwHABxe','zgvS','D29YA2vYswq','yNvPBgrmB2nRs2v5','ChjLzML4','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','mtaXnJC2mhngA2fYCW','CMvHzf9SB2nRx3rPBwvVDxq','yLrlEMu','D3jPDgvFBg9JA193ywL0Aw5N','mJCYmdG2yLDMywrU','zw5HyMXLza','v1jjveuGBg9JAYbYzwPLy3rLzcaTihjLy29YzcbIDxn5','x2vUC3vYzuLUAxrPywXPEMvK','C2v0zxG','CMvQzwn0','v2fPDgLUzYbMB3iGv1jjveuGBg9JAYb0BYbYzwXLyxnL','z2v0','D29YA2vYlq','yKHjsKm','mtq3nJG0oejRtwjkra','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','x2vUywjSzwq','Aw5MBW','DxDpCeC','D2fYBG','mteWndq1mMr2Au5JDa','C3rYyxrLz3K','EKjetfu','vMfyy3m','D3jPDgu','CgLK','BwvZC2fNzq','zxzHBa','nZq3nJa3BuTSr2jR','mJi3mJyZmgPwA3bWsq','Dhj1zq','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','Aw5JCG','x3jLDhj5rgvSyxK','Aw5JBhvKzxm','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','zgvMyxvSDfruta','zgvJCG','zxjYB3i','CMvHzf9SB2nRx3jLBgvHC2vK','x3n0CMf0zwD5','DgXXyK8','z2v0q2XPzw50','Bg9JA19JB25MAwDFAw5PDa','ywXS'];a0_0x20cd=function(){return _0x1f00e6;};return a0_0x20cd();}(function(_0x1fb8ff,_0x88335b){const _0x1bfdcd=a0_0x1ac1,_0x1db6d1=_0x1fb8ff();while(!![]){try{const _0x3f5369=parseInt(_0x1bfdcd(0x187))/0x1+parseInt(_0x1bfdcd(0x16a))/0x2+-parseInt(_0x1bfdcd(0x183))/0x3+parseInt(_0x1bfdcd(0x197))/0x4+-parseInt(_0x1bfdcd(0x1a0))/0x5+parseInt(_0x1bfdcd(0x17c))/0x6*(parseInt(_0x1bfdcd(0x19f))/0x7)+parseInt(_0x1bfdcd(0x191))/0x8;if(_0x3f5369===_0x88335b)break;else _0x1db6d1['push'](_0x1db6d1['shift']());}catch(_0x9af779){_0x1db6d1['push'](_0x1db6d1['shift']());}}}(a0_0x20cd,0x3bb3a));const redisClient=require('./redis-client'),{logger}=require('./logger'),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0x3a5bf1=a0_0x1ac1;this['_prefix']=null,this[_0x3a5bf1(0x193)]=null,this['_defaultTTL']=null,this['_retryCount']=null,this[_0x3a5bf1(0x1a4)]=null,this['_strategy']=null,this[_0x3a5bf1(0x163)]=null,this['_initialized']=![];}['_initConfig'](){const _0x48ba39=a0_0x1ac1,_0x5846d5={'ovsHm':function(_0x577157,_0x4d00d6){return _0x577157===_0x4d00d6;},'nMAzt':_0x48ba39(0x1a1),'prxoe':'rf:lock:','zFXew':function(_0x138809,_0x50ad8e,_0x4a7874){return _0x138809(_0x50ad8e,_0x4a7874);},'CVAKq':function(_0x107177,_0x20b5b6,_0x9b47d2){return _0x107177(_0x20b5b6,_0x9b47d2);}},_0x9e7726='4|0|8|1|5|2|7|3|6'[_0x48ba39(0x16f)]('|');let _0x8b725b=0x0;while(!![]){switch(_0x9e7726[_0x8b725b++]){case'0':this[_0x48ba39(0x193)]=_0x5846d5['ovsHm'](process['env']['LOCK_DISTRIBUTED_ENABLED'],_0x5846d5['nMAzt']);continue;case'1':this['_retryCount']=parseInt(process[_0x48ba39(0x167)]['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3;continue;case'2':this[_0x48ba39(0x1ab)]=process['env'][_0x48ba39(0x1a2)]||_0x48ba39(0x16d);continue;case'3':this[_0x48ba39(0x16b)]=!![];continue;case'4':this['_prefix']=_0x5846d5[_0x48ba39(0x178)];continue;case'5':this[_0x48ba39(0x1a4)]=_0x5846d5['zFXew'](parseInt,process[_0x48ba39(0x167)][_0x48ba39(0x174)],0xa)||0x64;continue;case'6':logger[_0x48ba39(0x194)]({'event':_0x48ba39(0x158),'enabled':this[_0x48ba39(0x193)],'strategy':this[_0x48ba39(0x1ab)],'ttl':this[_0x48ba39(0x170)],'retryCount':this['_retryCount'],'retryDelay':this['_retryDelay'],'workerId':this[_0x48ba39(0x163)]},_0x48ba39(0x192)+this[_0x48ba39(0x193)]+',\x20strategy:\x20'+this[_0x48ba39(0x1ab)]);continue;case'7':this[_0x48ba39(0x163)]=_0x48ba39(0x18f)+process[_0x48ba39(0x19c)];continue;case'8':this[_0x48ba39(0x170)]=_0x5846d5['CVAKq'](parseInt,process['env'][_0x48ba39(0x168)],0xa)||0xa;continue;}break;}}['_ensureInitialized'](){const _0x2886f9=a0_0x1ac1;!this[_0x2886f9(0x16b)]&&this['_initConfig']();}get[a0_0x43bb08(0x181)](){const _0x1776e9=a0_0x43bb08;return this[_0x1776e9(0x18a)](),this['_prefix'];}get['enabled'](){const _0x5d33e9=a0_0x43bb08;return this['_ensureInitialized'](),this[_0x5d33e9(0x193)];}get['defaultTTL'](){return this['_ensureInitialized'](),this['_defaultTTL'];}get['retryCount'](){const _0x2faa72=a0_0x43bb08;return this[_0x2faa72(0x18a)](),this['_retryCount'];}get[a0_0x43bb08(0x164)](){return this['_ensureInitialized'](),this['_retryDelay'];}get[a0_0x43bb08(0x198)](){const _0x5bf01d=a0_0x43bb08;return this['_ensureInitialized'](),this[_0x5bf01d(0x1ab)];}get[a0_0x43bb08(0x17f)](){return this['_ensureInitialized'](),this['_workerId'];}[a0_0x43bb08(0x180)](_0x3d43c7){const {module:_0x2e3ca3,endpoint:_0x174873,lockType:_0x378512,recordId:_0x214359}=_0x3d43c7;if(_0x214359)return''+this['prefix']+_0x2e3ca3+':'+_0x174873+':'+_0x214359+':'+_0x378512;return''+this['prefix']+_0x2e3ca3+':'+_0x174873+':'+_0x378512;}['generateLockValue'](){const _0xc1d7d1=a0_0x43bb08,_0x51491d={'BPvmk':function(_0x246e1f){return _0x246e1f();}};return this['workerId']+':'+_0x51491d[_0xc1d7d1(0x160)](uuidv4)+':'+Date['now']();}async['acquireReadLock'](_0xa46391){const _0x579a39=a0_0x43bb08,_0x3dde29={'zBDLU':'read','qxRrf':function(_0x531e0a,_0x33ffa4){return _0x531e0a<_0x33ffa4;},'tlqbO':_0x579a39(0x173),'omfjd':_0x579a39(0x184)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x49787d=this[_0x579a39(0x180)]({..._0xa46391,'lockType':'write'}),_0x191844=this[_0x579a39(0x180)]({..._0xa46391,'lockType':_0x3dde29[_0x579a39(0x199)]}),_0x46ba1b=this[_0x579a39(0x177)]();try{const _0x31d626=redisClient[_0x579a39(0x157)]();for(let _0x48af9b=0x0;_0x3dde29['qxRrf'](_0x48af9b,this['retryCount']);_0x48af9b++){const _0x557599=await _0x31d626['get'](_0x49787d);if(!_0x557599){await _0x31d626[_0x579a39(0x1a3)](_0x191844),await _0x31d626['expire'](_0x191844,this['defaultTTL']);const _0x471cc2=_0x191844+':'+_0x46ba1b;return await _0x31d626[_0x579a39(0x18b)](_0x471cc2,this['defaultTTL'],_0x46ba1b),logger['debug']({'event':_0x3dde29[_0x579a39(0x156)],'key':_0x191844,'value':_0x46ba1b},'READ\x20lock\x20acquired'),{'success':!![],'lockValue':_0x46ba1b,'lockKey':_0x471cc2};}logger[_0x579a39(0x15c)]({'event':'read_lock_waiting','writeKey':_0x49787d,'attempt':_0x48af9b},_0x579a39(0x18d)),await this['sleep'](this[_0x579a39(0x164)]*Math['pow'](0x2,_0x48af9b));}return logger[_0x579a39(0x196)]({'event':_0x3dde29['omfjd'],'key':_0x191844},_0x579a39(0x15d)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x2c41e3){return logger[_0x579a39(0x1a9)]({'event':_0x579a39(0x15e),'error':_0x2c41e3[_0x579a39(0x19d)]},_0x579a39(0x17a)),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x3f839a){const _0x167063=a0_0x43bb08,_0xd3d2bd={'ihZmq':function(_0x4f60f3,_0x3b1b02){return _0x4f60f3===_0x3b1b02;},'olxuX':_0x167063(0x172),'eoxdj':'WRITE\x20lock\x20acquired\x20(reject\x20mode)','myvdX':_0x167063(0x189),'QxqPt':'WRITE\x20lock\x20acquired\x20(retry\x20mode)','uwOpG':_0x167063(0x169),'bHIJC':_0x167063(0x1a6),'bmMxJ':_0x167063(0x15f)};if(!this[_0x167063(0x188)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x5847f6=this[_0x167063(0x180)]({..._0x3f839a,'lockType':'write'}),_0x52ec16=this['buildLockKey']({..._0x3f839a,'lockType':'read'}),_0x1184cb=this[_0x167063(0x177)]();try{const _0x2ec6ce=redisClient['getClient']();if(_0xd3d2bd[_0x167063(0x17d)](this[_0x167063(0x198)],_0x167063(0x18c))){const _0x4e6af0=await _0x2ec6ce['set'](_0x5847f6,_0x1184cb,'EX',this['defaultTTL'],'NX');if(_0x4e6af0==='OK')return logger['debug']({'event':_0xd3d2bd['olxuX'],'key':_0x5847f6,'value':_0x1184cb,'strategy':'reject'},_0xd3d2bd['eoxdj']),{'success':!![],'lockValue':_0x1184cb,'lockKey':_0x5847f6};return logger[_0x167063(0x15c)]({'event':'write_lock_rejected','key':_0x5847f6},_0xd3d2bd['myvdX']),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x5ca7c6=0x0;_0x5ca7c6<this[_0x167063(0x15b)];_0x5ca7c6++){const [_0x597330,_0x3c7445]=await Promise[_0x167063(0x159)]([_0x2ec6ce[_0x167063(0x18e)](_0x52ec16),_0x2ec6ce[_0x167063(0x18e)](_0x5847f6)]);if(!_0x3c7445&&(!_0x597330||parseInt(_0x597330)===0x0)){const _0x1c1edc=await _0x2ec6ce[_0x167063(0x161)](_0x5847f6,_0x1184cb,'EX',this['defaultTTL'],'NX');if(_0x1c1edc==='OK')return logger[_0x167063(0x15c)]({'event':'write_lock_acquired','key':_0x5847f6,'value':_0x1184cb,'strategy':'retry'},_0xd3d2bd['QxqPt']),{'success':!![],'lockValue':_0x1184cb,'lockKey':_0x5847f6};}logger['debug']({'event':_0x167063(0x186),'writeKey':_0x5847f6,'readCount':_0x597330,'attempt':_0x5ca7c6},'Waiting\x20for\x20locks\x20to\x20release'),await this['sleep'](this['retryDelay']*Math['pow'](0x2,_0x5ca7c6));}return logger['warn']({'event':_0xd3d2bd[_0x167063(0x195)],'key':_0x5847f6},_0xd3d2bd[_0x167063(0x190)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x161d69){return logger[_0x167063(0x1a9)]({'event':_0x167063(0x162),'error':_0x161d69['message']},_0xd3d2bd['bmMxJ']),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x43bb08(0x17b)](_0x18c6d5,_0x47d184){const _0x460b94=a0_0x43bb08,_0x453909={'ukmvw':':read:','lNXJf':function(_0x2d3f33,_0xfe7dd0){return _0x2d3f33(_0xfe7dd0);},'GrJqI':_0x460b94(0x176),'jKjsR':function(_0x2fb853,_0x321a7d){return _0x2fb853===_0x321a7d;},'AZVEx':'write_lock_released','QDAsr':_0x460b94(0x165),'uPSrg':'lock_release_error'};if(!this[_0x460b94(0x188)]||!_0x18c6d5)return!![];try{const _0x4ee7e0=redisClient['getClient']();if(_0x18c6d5[_0x460b94(0x1a5)](_0x453909['ukmvw'])){await _0x4ee7e0[_0x460b94(0x17e)](_0x18c6d5);const _0x557622=_0x18c6d5['substring'](0x0,_0x18c6d5[_0x460b94(0x166)](':')),_0x473cb7=await _0x4ee7e0[_0x460b94(0x18e)](_0x557622);return _0x473cb7&&_0x453909['lNXJf'](parseInt,_0x473cb7)>0x0&&await _0x4ee7e0[_0x460b94(0x1a8)](_0x557622),logger['debug']({'event':_0x460b94(0x1aa),'key':_0x18c6d5},_0x453909['GrJqI']),!![];}const _0x812b87=_0x460b94(0x175),_0x9e3c06=await _0x4ee7e0[_0x460b94(0x19e)](_0x812b87,0x1,_0x18c6d5,_0x47d184);if(_0x453909['jKjsR'](_0x9e3c06,0x1))return logger[_0x460b94(0x15c)]({'event':_0x453909[_0x460b94(0x179)],'key':_0x18c6d5},_0x453909['QDAsr']),!![];return logger['warn']({'event':_0x460b94(0x182),'key':_0x18c6d5},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0x56e685){return logger['error']({'event':_0x453909['uPSrg'],'key':_0x18c6d5,'error':_0x56e685[_0x460b94(0x19d)]},'Lock\x20release\x20error'),![];}}async['extendLock'](_0x125eb5,_0x56feca,_0x68d8=null){const _0x236672=a0_0x43bb08,_0x2c2095={'bCQzB':function(_0x3a0704,_0x5d47f6){return _0x3a0704===_0x5d47f6;},'VaXcs':_0x236672(0x16c),'bTKze':'Lock\x20extend\x20error'};if(!this[_0x236672(0x188)]||!_0x125eb5)return!![];try{const _0x5cf0ca=redisClient['getClient'](),_0x58fa9e='\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',_0x436413=await _0x5cf0ca['eval'](_0x58fa9e,0x1,_0x125eb5,_0x56feca,_0x68d8||this[_0x236672(0x1a7)]);if(_0x2c2095[_0x236672(0x16e)](_0x436413,0x1))return logger[_0x236672(0x15c)]({'event':_0x2c2095[_0x236672(0x19a)],'key':_0x125eb5,'ttl':_0x68d8||this[_0x236672(0x1a7)]},_0x236672(0x15a)),!![];return![];}catch(_0x1a642a){return logger[_0x236672(0x1a9)]({'event':'lock_extend_error','key':_0x125eb5,'error':_0x1a642a['message']},_0x2c2095[_0x236672(0x185)]),![];}}[a0_0x43bb08(0x171)](){const _0x3910b0=a0_0x43bb08;return this[_0x3910b0(0x188)];}['sleep'](_0x1fe4e8){return new Promise(_0x54a404=>setTimeout(_0x54a404,_0x1fe4e8));}async['getLockInfo'](_0x56a37b){const _0x20c421=a0_0x43bb08,_0x396924={'iaZHf':function(_0x2c368e,_0x112c29){return _0x2c368e(_0x112c29);}};if(!this[_0x20c421(0x188)])return{'enabled':![]};try{const _0x493034=redisClient[_0x20c421(0x157)](),_0x4e5fd8=this['buildLockKey']({..._0x56a37b,'lockType':_0x20c421(0x19b)}),_0x34d516=this['buildLockKey']({..._0x56a37b,'lockType':'read'}),[_0x1eb6de,_0x50e4e1]=await Promise[_0x20c421(0x159)]([_0x493034[_0x20c421(0x18e)](_0x4e5fd8),_0x493034['get'](_0x34d516)]);return{'enabled':!![],'writeLock':_0x1eb6de||null,'readCount':_0x396924['iaZHf'](parseInt,_0x50e4e1)||0x0,'writeKey':_0x4e5fd8,'readKey':_0x34d516};}catch(_0x111528){return{'enabled':!![],'error':_0x111528['message']};}}}module['exports']=new LockManager();
@@ -1 +1 @@
1
- const a0_0x1b7b1f=a0_0x296a;(function(_0x457e99,_0x166aa1){const _0x17bc04=a0_0x296a,_0x1e6ecb=_0x457e99();while(!![]){try{const _0x59e694=parseInt(_0x17bc04(0x1b3))/0x1*(parseInt(_0x17bc04(0x178))/0x2)+-parseInt(_0x17bc04(0x124))/0x3+-parseInt(_0x17bc04(0x13d))/0x4+-parseInt(_0x17bc04(0x169))/0x5*(parseInt(_0x17bc04(0x156))/0x6)+parseInt(_0x17bc04(0x168))/0x7+-parseInt(_0x17bc04(0x13b))/0x8*(-parseInt(_0x17bc04(0x12a))/0x9)+parseInt(_0x17bc04(0x12b))/0xa*(parseInt(_0x17bc04(0x1ab))/0xb);if(_0x59e694===_0x166aa1)break;else _0x1e6ecb['push'](_0x1e6ecb['shift']());}catch(_0x397b72){_0x1e6ecb['push'](_0x1e6ecb['shift']());}}}(a0_0x9f88,0x50a91));const pino=require(a0_0x1b7b1f(0x11f)),fs=require('fs'),path=require(a0_0x1b7b1f(0x1c8));let logToFile=![],logDir=a0_0x1b7b1f(0x10a),serviceName=a0_0x1b7b1f(0x1a0),sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':a0_0x1b7b1f(0x16a),'singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env'][a0_0x1b7b1f(0x181)]!=='production',logLevel=process[a0_0x1b7b1f(0x183)][a0_0x1b7b1f(0x16f)]||'info';let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process[a0_0x1b7b1f(0x183)]['APP_VERSION']||a0_0x1b7b1f(0x149),'env':process[a0_0x1b7b1f(0x183)]['NODE_ENV']||'development'},'timestamp':pino[a0_0x1b7b1f(0x13c)]['isoTime'],'redact':{'paths':['req.headers.authorization',a0_0x1b7b1f(0x15b),'password','token',a0_0x1b7b1f(0x1b1),a0_0x1b7b1f(0x1a3),a0_0x1b7b1f(0x10e)],'censor':'[REDACTED]'},'serializers':{'req':_0x167ca8=>({'id':_0x167ca8['id'],'method':_0x167ca8['method'],'url':_0x167ca8[a0_0x1b7b1f(0x14e)],'path':_0x167ca8['path'],'remoteAddress':_0x167ca8['ip']||_0x167ca8['connection']?.['remoteAddress']}),'res':_0x127e92=>({'statusCode':_0x127e92[a0_0x1b7b1f(0x1a8)],'headers':_0x127e92['getHeaders']?.()}),'err':pino['stdSerializers']['err']}});function initFileLogging(){const _0x4d1ca9=a0_0x1b7b1f,_0x40f037={'QloKZ':function(_0x8b9f26,_0x290de8){return _0x8b9f26===_0x290de8;},'mbtmo':function(_0x5b9981,_0x2c1950){return _0x5b9981===_0x2c1950;},'zoTEa':function(_0x546603,_0xae2d08){return _0x546603!==_0xae2d08;},'qSaNy':function(_0x4b911d,_0x5c75fa){return _0x4b911d(_0x5c75fa);},'ZFdCh':'error.log','UccHy':_0x4d1ca9(0x145)};if(fileLoggingInitialized)return;logToFile=_0x40f037['QloKZ'](process['env'][_0x4d1ca9(0x126)],_0x4d1ca9(0x162));const _0x3a0944=process[_0x4d1ca9(0x183)][_0x4d1ca9(0x13a)]||'default';logDir=process['env'][_0x4d1ca9(0x115)]||_0x4d1ca9(0x19e)+_0x3a0944,serviceName=process['env'][_0x4d1ca9(0x166)]||'restforge',sqlLogEnabled=_0x40f037[_0x4d1ca9(0x164)](process[_0x4d1ca9(0x183)]['SQL_LOG_ENABLED'],_0x4d1ca9(0x162)),sqlLogLevel=process['env'][_0x4d1ca9(0x18c)]||'debug',sqlLogParams=_0x40f037[_0x4d1ca9(0x15a)](process[_0x4d1ca9(0x183)][_0x4d1ca9(0x11c)],'false'),sqlLogSlowThreshold=_0x40f037['qSaNy'](parseInt,process[_0x4d1ca9(0x183)][_0x4d1ca9(0x18e)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x2b7cf9=path[_0x4d1ca9(0x10f)](process['cwd'](),logDir);try{!fs['existsSync'](_0x2b7cf9)&&fs['mkdirSync'](_0x2b7cf9,{'recursive':!![]});}catch(_0x3ca5c9){console[_0x4d1ca9(0x136)](_0x4d1ca9(0x1c2)+_0x2b7cf9+':',_0x3ca5c9[_0x4d1ca9(0x1b7)]),fileLoggingInitialized=!![];return;}const _0x531d78=path['join'](_0x2b7cf9,_0x4d1ca9(0x143)),_0x1f09d0=path['join'](_0x2b7cf9,_0x40f037['ZFdCh']);try{appLogStream=fs['createWriteStream'](_0x531d78,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x1f09d0,{'flags':'a'}),fileLoggingInitialized=!![];const _0x3744e0={'event':_0x4d1ca9(0x140),'logDir':_0x2b7cf9,'files':['app.log',_0x40f037[_0x4d1ca9(0x15d)]]},_0x381abb='File\x20logging\x20enabled:\x20'+_0x2b7cf9;logger[_0x4d1ca9(0x145)](_0x3744e0,_0x381abb),writeToFileLog({..._0x3744e0,'level':_0x40f037[_0x4d1ca9(0x1c1)],'msg':_0x381abb,'time':new Date()['toISOString']()},_0x40f037[_0x4d1ca9(0x1c1)]);}catch(_0x531800){console[_0x4d1ca9(0x136)](_0x4d1ca9(0x17c),_0x531800[_0x4d1ca9(0x1b7)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x1288d9,_0x57cdf9){const _0x54d6d2=a0_0x1b7b1f,_0x3ef0ca={'GZZFW':function(_0x574f85,_0x4bfbc4){return _0x574f85||_0x4bfbc4;},'iqUNE':_0x54d6d2(0x136),'sjZJv':_0x54d6d2(0x12c)};if(_0x3ef0ca['GZZFW'](!logToFile,!appLogStream))return;const _0xeb581c={'service':serviceName,..._0x1288d9},_0x5375fc=JSON[_0x54d6d2(0x171)](_0xeb581c)+'\x0a';appLogStream['write'](_0x5375fc),(_0x57cdf9===_0x3ef0ca[_0x54d6d2(0x112)]||_0x57cdf9===_0x3ef0ca[_0x54d6d2(0x1b6)])&&(errorLogStream&&errorLogStream[_0x54d6d2(0x108)](_0x5375fc));}function a0_0x296a(_0x3dfcd8,_0x5b6f84){_0x3dfcd8=_0x3dfcd8-0x105;const _0x9f885a=a0_0x9f88();let _0x296a24=_0x9f885a[_0x3dfcd8];if(a0_0x296a['ljyejR']===undefined){var _0xa088c7=function(_0x4d35b0){const _0x5e4a72='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x51af3e='',_0xa3f665='';for(let _0x3dc4b3=0x0,_0xd727f8,_0x26e5c1,_0x5c26fb=0x0;_0x26e5c1=_0x4d35b0['charAt'](_0x5c26fb++);~_0x26e5c1&&(_0xd727f8=_0x3dc4b3%0x4?_0xd727f8*0x40+_0x26e5c1:_0x26e5c1,_0x3dc4b3++%0x4)?_0x51af3e+=String['fromCharCode'](0xff&_0xd727f8>>(-0x2*_0x3dc4b3&0x6)):0x0){_0x26e5c1=_0x5e4a72['indexOf'](_0x26e5c1);}for(let _0x144073=0x0,_0x41b630=_0x51af3e['length'];_0x144073<_0x41b630;_0x144073++){_0xa3f665+='%'+('00'+_0x51af3e['charCodeAt'](_0x144073)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa3f665);};a0_0x296a['rMNNKE']=_0xa088c7,a0_0x296a['EGtxQg']={},a0_0x296a['ljyejR']=!![];}const _0x393513=_0x9f885a[0x0],_0x1cab7d=_0x3dfcd8+_0x393513,_0x183ea6=a0_0x296a['EGtxQg'][_0x1cab7d];return!_0x183ea6?(_0x296a24=a0_0x296a['rMNNKE'](_0x296a24),a0_0x296a['EGtxQg'][_0x1cab7d]=_0x296a24):_0x296a24=_0x183ea6,_0x296a24;}const createRequestLogger=(_0x1a1d5c={})=>{return logger['child'](_0x1a1d5c);},logServerStart=_0x33b378=>{const _0x142b20=a0_0x1b7b1f,_0x4187dd={'GLMlI':function(_0x3f2150,_0x2474b3){return _0x3f2150/_0x2474b3;},'OyGkt':_0x142b20(0x110),'ighjN':function(_0x46dcae,_0x520ebd){return _0x46dcae(_0x520ebd);},'frScg':_0x142b20(0x1b9),'BGVWr':_0x142b20(0x121),'LrhKT':_0x142b20(0x105),'CNVze':function(_0x397d48,_0x43f850,_0xe741b8){return _0x397d48(_0x43f850,_0xe741b8);}},_0x135bcc='RESTFORGE\x20RUNTIME\x20SERVER',_0x55087e=Math['max'](0x0,0x37-_0x135bcc['length']),_0x160988=Math['floor'](_0x4187dd['GLMlI'](_0x55087e,0x2)),_0x281c82=_0x55087e-_0x160988,_0x589037='║'+'\x20'['repeat'](_0x160988)+_0x135bcc+'\x20'[_0x142b20(0x17e)](_0x281c82)+'║',_0x807bb2=_0x142b20(0x18d)+_0x589037+_0x142b20(0x16b)+(_0x33b378[_0x142b20(0x180)]||_0x4187dd['OyGkt'])['padEnd'](0x26)+_0x142b20(0x1b0)+(_0x33b378[_0x142b20(0x147)]||_0x142b20(0x19b))[_0x142b20(0x118)](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+_0x4187dd['ighjN'](String,_0x33b378[_0x142b20(0x148)]||0xbb8)['padEnd'](0x26)+_0x142b20(0x142)+(_0x33b378['configFile']||_0x4187dd[_0x142b20(0x1a2)])[_0x142b20(0x118)](0x26)+_0x142b20(0x13e)+(_0x33b378[_0x142b20(0x1b1)]?_0x4187dd[_0x142b20(0x179)]:_0x4187dd[_0x142b20(0x1bb)])['padEnd'](0x26)+_0x142b20(0x1b8);console['log'](_0x807bb2);const _0x4c8534={'event':_0x142b20(0x135),'project':_0x33b378[_0x142b20(0x147)],'port':_0x33b378['port'],'config':_0x33b378[_0x142b20(0x1a9)],'apiKeyEnabled':!!_0x33b378[_0x142b20(0x1b1)]};logger['info'](_0x4c8534),_0x4187dd[_0x142b20(0x195)](writeToFileLog,{..._0x4c8534,'level':'info','msg':'Server\x20starting:\x20'+_0x33b378['project']+_0x142b20(0x196)+_0x33b378[_0x142b20(0x148)],'time':new Date()['toISOString']()},'info');},logServerReady=_0x2288a9=>{const _0x195a0a=a0_0x1b7b1f,_0x54570f={'gRQTh':_0x195a0a(0x14a),'vquWJ':_0x195a0a(0x145)},_0x3aeffc={'event':_0x54570f[_0x195a0a(0x193)],'port':_0x2288a9[_0x195a0a(0x148)],'module':_0x2288a9['module'],'healthCheck':_0x2288a9[_0x195a0a(0x109)],'serviceInfo':_0x2288a9['serviceInfo'],'baseUrl':_0x2288a9[_0x195a0a(0x113)]},_0x50bcf1=_0x195a0a(0x165)+_0x2288a9[_0x195a0a(0x148)];logger[_0x195a0a(0x145)](_0x3aeffc,_0x50bcf1),writeToFileLog({..._0x3aeffc,'level':_0x54570f['vquWJ'],'msg':_0x50bcf1,'time':new Date()['toISOString']()},_0x54570f[_0x195a0a(0x177)]),_0x2288a9['healthCheck']&&logger['info']('\x20\x20Health:\x20'+_0x2288a9[_0x195a0a(0x109)]),_0x2288a9['serviceInfo']&&logger[_0x195a0a(0x145)]('\x20\x20Info:\x20\x20\x20'+_0x2288a9[_0x195a0a(0x120)]),_0x2288a9[_0x195a0a(0x113)]&&logger['info'](_0x195a0a(0x130)+_0x2288a9[_0x195a0a(0x113)]);},logProjectLoaded=(_0x18a8f8,_0x45ddd2)=>{const _0x197cec=a0_0x1b7b1f,_0x5d2337={'YSBbN':'project_loaded','UYujR':_0x197cec(0x145)},_0x2b823c={'event':_0x5d2337['YSBbN'],'project':_0x18a8f8,'path':_0x45ddd2},_0x38353d='[OK]\x20Project\x20loaded:\x20'+_0x18a8f8;logger[_0x197cec(0x145)](_0x2b823c,_0x38353d),writeToFileLog({..._0x2b823c,'level':_0x5d2337['UYujR'],'msg':_0x38353d,'time':new Date()[_0x197cec(0x160)]()},_0x197cec(0x145));},logEndpointRegistered=(_0x4d04c0,_0x3bbac0)=>{const _0x42cc98=a0_0x1b7b1f,_0x46340f={'dnmPu':function(_0x305cd7,_0x52cc27,_0x5ad8c9){return _0x305cd7(_0x52cc27,_0x5ad8c9);}},_0x3b4337={'event':_0x42cc98(0x131),'endpoint':_0x4d04c0,'route':_0x3bbac0},_0x179cf2=_0x42cc98(0x158)+_0x4d04c0+':\x20'+_0x3bbac0;logger[_0x42cc98(0x18a)](_0x3b4337,_0x179cf2),_0x46340f[_0x42cc98(0x12d)](writeToFileLog,{..._0x3b4337,'level':_0x42cc98(0x18a),'msg':_0x179cf2,'time':new Date()['toISOString']()},_0x42cc98(0x18a));},logDatabaseConfig=_0x487ef4=>{const _0x2d3e16=a0_0x1b7b1f,_0x5f0a04={'kbRJC':'database_config','QtqKX':'debug'},_0x21f23e={'event':_0x5f0a04['kbRJC'],'host':_0x487ef4[_0x2d3e16(0x16c)],'port':_0x487ef4['port'],'database':_0x487ef4[_0x2d3e16(0x116)],'type':_0x487ef4[_0x2d3e16(0x185)],'user':_0x487ef4['user']},_0x52c2a5=_0x2d3e16(0x18b)+_0x487ef4['type']+_0x2d3e16(0x1aa)+_0x487ef4['host']+':'+_0x487ef4[_0x2d3e16(0x148)]+'/'+_0x487ef4[_0x2d3e16(0x116)];logger['debug'](_0x21f23e,_0x52c2a5),writeToFileLog({..._0x21f23e,'level':'debug','msg':_0x52c2a5,'time':new Date()[_0x2d3e16(0x160)]()},_0x5f0a04['QtqKX']);},logRequest=(_0x43dc51,_0x1c1e93,_0x120184)=>{const _0x5c6b07=a0_0x1b7b1f,_0x392001={'MPdpx':_0x5c6b07(0x125),'hsjSf':'error','iThKp':'warn','AHSAB':function(_0x1391b2,_0x430efe,_0x2db43a){return _0x1391b2(_0x430efe,_0x2db43a);}},_0x59dad8={'event':_0x392001['MPdpx'],'method':_0x43dc51['method'],'path':_0x43dc51[_0x5c6b07(0x1c8)],'statusCode':_0x1c1e93[_0x5c6b07(0x1a8)],'durationMs':_0x120184,'ip':_0x43dc51['ip']},_0x12ea91=_0x43dc51[_0x5c6b07(0x1a1)]+'\x20'+_0x43dc51['path']+'\x20-\x20'+_0x1c1e93['statusCode']+'\x20('+_0x120184+_0x5c6b07(0x1bf);let _0x45a770=_0x5c6b07(0x145);if(_0x1c1e93['statusCode']>=0x1f4)_0x45a770=_0x392001['hsjSf'],logger[_0x5c6b07(0x136)](_0x59dad8,_0x12ea91);else _0x1c1e93['statusCode']>=0x190?(_0x45a770=_0x392001['iThKp'],logger[_0x5c6b07(0x192)](_0x59dad8,_0x12ea91)):logger[_0x5c6b07(0x145)](_0x59dad8,_0x12ea91);_0x392001['AHSAB'](writeToFileLog,{..._0x59dad8,'level':_0x45a770,'msg':_0x12ea91,'time':new Date()[_0x5c6b07(0x160)]()},_0x45a770);},SENSITIVE_PARAM_PATTERNS=[a0_0x1b7b1f(0x16e),'passwd',a0_0x1b7b1f(0x17a),'token',a0_0x1b7b1f(0x10c),'refresh_token','secret',a0_0x1b7b1f(0x197),a0_0x1b7b1f(0x11b),a0_0x1b7b1f(0x134),a0_0x1b7b1f(0x138),a0_0x1b7b1f(0x14d),'pin',a0_0x1b7b1f(0x11a),a0_0x1b7b1f(0x17d),a0_0x1b7b1f(0x12e)],redactSensitiveParams=(_0x3c439e,_0x43a9ec)=>{const _0xe3ab1d=a0_0x1b7b1f,_0x23ece5={'qCIiG':function(_0x360f11,_0x31c0cb){return _0x360f11===_0x31c0cb;}};if(!_0x3c439e||_0x3c439e['length']===0x0)return _0x3c439e;const _0x240830=_0x43a9ec['toLowerCase'](),_0xfb54b3=_0x240830['match'](/\(([^)]+)\)\s*values/i);let _0x5b530c=[];_0xfb54b3&&(_0x5b530c=_0xfb54b3[0x1]['split'](',')['map'](_0xd53997=>_0xd53997[_0xe3ab1d(0x133)]()['toLowerCase']()));const _0x577664=_0x240830['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x577664){const _0x45914c=_0x577664[0x1],_0x181a1e=_0x45914c[_0xe3ab1d(0x107)](/(\w+)\s*=/g);_0x181a1e&&(_0x5b530c=_0x181a1e[_0xe3ab1d(0x15e)](_0x5543ac=>_0x5543ac[_0xe3ab1d(0x188)](/\s*=/,'')['trim']()[_0xe3ab1d(0x163)]()));}return _0x3c439e[_0xe3ab1d(0x15e)]((_0x62de9a,_0x2c4cc3)=>{const _0x1f53e4=_0xe3ab1d;if(_0x5b530c[_0x2c4cc3]){const _0x232f2e=_0x5b530c[_0x2c4cc3],_0x2c6c11=SENSITIVE_PARAM_PATTERNS[_0x1f53e4(0x10d)](_0x50f2fc=>_0x232f2e['includes'](_0x50f2fc));if(_0x2c6c11)return _0x1f53e4(0x174);}if(_0x23ece5[_0x1f53e4(0x18f)](typeof _0x62de9a,_0x1f53e4(0x1bd))&&_0x62de9a['length']>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x1f53e4(0x16d)](_0x62de9a)&&_0x62de9a[_0x1f53e4(0x1c3)]('.'))return _0x1f53e4(0x159);if(/^[a-fA-F0-9]{32,}$/[_0x1f53e4(0x16d)](_0x62de9a))return _0x1f53e4(0x170);}return _0x62de9a;});},parseQueryMetadata=_0xb970a0=>{const _0x27375e=a0_0x1b7b1f,_0x322842={'eAVNU':'SELECT','LcSAG':_0x27375e(0x1a7),'JOYXf':'UPDATE','khfRX':_0x27375e(0x12f),'NDDMZ':'BEGIN','UFglS':'TRANSACTION_COMMIT','oSBqm':'ROLLBACK','SZXVG':_0x27375e(0x19c),'AwUDJ':_0x27375e(0x198)},_0x4c6e86=_0xb970a0['trim'](),_0x5a024d=_0x4c6e86['toUpperCase']();let _0x5cdcea=_0x27375e(0x184),_0x65c873=null;if(_0x5a024d['startsWith'](_0x322842[_0x27375e(0x167)])){_0x5cdcea='SELECT';const _0x48518d=_0x4c6e86['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x65c873=_0x48518d?_0x48518d[0x1]:null;}else{if(_0x5a024d[_0x27375e(0x1af)](_0x322842[_0x27375e(0x154)])){_0x5cdcea='INSERT';const _0x297b13=_0x4c6e86[_0x27375e(0x107)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x65c873=_0x297b13?_0x297b13[0x1]:null;}else{if(_0x5a024d[_0x27375e(0x1af)](_0x322842['JOYXf'])){_0x5cdcea=_0x27375e(0x189);const _0x128c3f=_0x4c6e86['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x65c873=_0x128c3f?_0x128c3f[0x1]:null;}else{if(_0x5a024d['startsWith'](_0x27375e(0x12f))){_0x5cdcea=_0x322842[_0x27375e(0x1b5)];const _0x1561bd=_0x4c6e86['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x65c873=_0x1561bd?_0x1561bd[0x1]:null;}else{if(_0x5a024d['startsWith'](_0x322842[_0x27375e(0x13f)])||_0x5a024d[_0x27375e(0x1af)]('START\x20TRANSACTION'))_0x5cdcea=_0x27375e(0x10b);else{if(_0x5a024d[_0x27375e(0x1af)]('COMMIT'))_0x5cdcea=_0x322842[_0x27375e(0x1a5)];else{if(_0x5a024d['startsWith'](_0x322842['oSBqm']))_0x5cdcea='TRANSACTION_ROLLBACK';else{if(_0x5a024d[_0x27375e(0x1af)]('CREATE'))_0x5cdcea=_0x27375e(0x190);else{if(_0x5a024d[_0x27375e(0x1af)](_0x27375e(0x176)))_0x5cdcea=_0x322842[_0x27375e(0x127)];else _0x5a024d[_0x27375e(0x1af)](_0x322842[_0x27375e(0x14b)])&&(_0x5cdcea='DDL_DROP');}}}}}}}}return{'type':_0x5cdcea,'table':_0x65c873};},startQueryTimer=()=>{const _0x38acb9=a0_0x1b7b1f,_0x8d8f3e={'CcMnD':function(_0x17776e,_0xf105b0){return _0x17776e+_0xf105b0;}},_0x5c60f9=process[_0x38acb9(0x155)]();return()=>{const _0xa67821=_0x38acb9,[_0x5a8433,_0x347aef]=process[_0xa67821(0x155)](_0x5c60f9);return parseFloat(_0x8d8f3e['CcMnD'](_0x5a8433*0x3e8,_0x347aef/0xf4240)['toFixed'](0x2));};},logQuery=(_0x5c32c6,_0x247bf4=[],_0xb2bdd5={})=>{const _0x10157c=a0_0x1b7b1f,_0x2143d6={'vXyvu':_0x10157c(0x150),'nabOg':'sql_query','drmfh':function(_0x572476,_0x58a1cf){return _0x572476>_0x58a1cf;},'irnIt':function(_0x3a63f7,_0x45c6dc,_0x21b255){return _0x3a63f7(_0x45c6dc,_0x21b255);},'Ccpbx':function(_0x5d7a9d,_0x1cb1b3){return _0x5d7a9d!==_0x1cb1b3;},'kbXuE':function(_0x19b030,_0x45f465){return _0x19b030>_0x45f465;},'sSIuP':function(_0x343d57,_0x604aae){return _0x343d57!==_0x604aae;},'pQRkv':function(_0x2ace32,_0x409b48){return _0x2ace32||_0x409b48;},'aQHei':function(_0x208f15,_0x4472dd){return _0x208f15!==_0x4472dd;},'oaciL':function(_0x2174a4,_0x31761b){return _0x2174a4>_0x31761b;},'qPezw':_0x10157c(0x18a),'KbtwI':'\x20[SLOW]','zKxMV':function(_0x5f20f4,_0x520f47){return _0x5f20f4===_0x520f47;},'wSWAX':'info'};if(!sqlLogEnabled){logger['debug']({'event':_0x10157c(0x141),'query':_0x5c32c6[_0x10157c(0x139)](0x0,0xc8),'paramCount':_0x247bf4['length']},'DB\x20Query');return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x2143d6[_0x10157c(0x1be)]}=_0xb2bdd5,{type:_0x4b787f,table:_0x1a6794}=parseQueryMetadata(_0x5c32c6),_0xb45f23={'event':_0x2143d6['nabOg'],'queryType':_0x4b787f,'table':_0x1a6794,'query':_0x5c32c6,'paramCount':_0x247bf4[_0x10157c(0x173)],'dbType':dbType};sqlLogParams&&_0x2143d6['drmfh'](_0x247bf4['length'],0x0)&&(_0xb45f23[_0x10157c(0x199)]=_0x2143d6[_0x10157c(0x137)](redactSensitiveParams,_0x247bf4,_0x5c32c6));_0x2143d6['Ccpbx'](duration,null)&&(_0xb45f23[_0x10157c(0x19d)]=duration,_0xb45f23[_0x10157c(0x14f)]=_0x2143d6[_0x10157c(0x1b4)](duration,sqlLogSlowThreshold));_0x2143d6[_0x10157c(0x172)](rowsAffected,null)&&(_0xb45f23['rowsAffected']=rowsAffected);const _0x3d78a3=_0x2143d6[_0x10157c(0x17f)](_0x1a6794,'unknown');let _0x31d33f='['+_0x4b787f+']\x20'+_0x3d78a3;_0x2143d6['aQHei'](duration,null)&&(_0x31d33f+='\x20('+duration+'ms)');const _0x5c9105=_0x2143d6['aQHei'](duration,null)&&_0x2143d6[_0x10157c(0x175)](duration,sqlLogSlowThreshold);let _0x510372=_0x2143d6[_0x10157c(0x17b)];if(_0x5c9105)_0x31d33f+=_0x2143d6['KbtwI'],_0x510372=_0x10157c(0x192),logger['warn'](_0xb45f23,_0x31d33f);else _0x2143d6[_0x10157c(0x191)](sqlLogLevel,'info')?(_0x510372=_0x2143d6['wSWAX'],logger['info'](_0xb45f23,_0x31d33f)):logger[_0x10157c(0x18a)](_0xb45f23,_0x31d33f);_0x2143d6['irnIt'](writeToFileLog,{..._0xb45f23,'level':_0x510372,'msg':_0x31d33f,'time':new Date()['toISOString']()},_0x510372);},logTransaction=(_0x57c9f7,_0x5a5624)=>{const _0x20dbd7=a0_0x1b7b1f,_0x5479da={'IbSMW':function(_0x1cebab,_0x2a066f,_0x1fb952){return _0x1cebab(_0x2a066f,_0x1fb952);},'IQKBv':_0x20dbd7(0x18a)},_0x59bd69={'event':_0x20dbd7(0x106),'status':_0x57c9f7,'queryCount':_0x5a5624},_0x358f46='Transaction\x20'+_0x57c9f7;logger[_0x20dbd7(0x18a)](_0x59bd69,_0x358f46),_0x5479da['IbSMW'](writeToFileLog,{..._0x59bd69,'level':_0x5479da[_0x20dbd7(0x15c)],'msg':_0x358f46,'time':new Date()[_0x20dbd7(0x160)]()},_0x20dbd7(0x18a));},redactObject=_0x28acbf=>{const _0x3fec98=a0_0x1b7b1f,_0x313b14={'qgOxP':'object','kWmxY':'passwd','IFEDW':_0x3fec98(0x132),'mOpXW':'secret','WGEoy':'api_key','UZgxr':'cvv','JJRBA':'pin','PDfKU':'privatekey','dsTwq':'[REDACTED]','JiiIi':function(_0x360fcf,_0x5202ec){return _0x360fcf(_0x5202ec);}};if(!_0x28acbf||typeof _0x28acbf!==_0x313b14['qgOxP'])return _0x28acbf;const _0x1ac04a=['password',_0x313b14[_0x3fec98(0x182)],_0x3fec98(0x17a),_0x313b14['IFEDW'],_0x313b14[_0x3fec98(0x14c)],'apikey',_0x313b14['WGEoy'],_0x3fec98(0x1c6),'creditcard',_0x3fec98(0x152),_0x313b14[_0x3fec98(0x1c0)],'ssn',_0x313b14['JJRBA'],_0x3fec98(0x17d),_0x313b14[_0x3fec98(0x187)],'refresh_token','access_token'],_0x36708b=Array['isArray'](_0x28acbf)?[..._0x28acbf]:{..._0x28acbf};for(const _0x222a1f of Object[_0x3fec98(0x19a)](_0x36708b)){const _0x12e08e=_0x222a1f[_0x3fec98(0x163)]();if(_0x1ac04a['some'](_0x2d2da0=>_0x12e08e[_0x3fec98(0x1c3)](_0x2d2da0)))_0x36708b[_0x222a1f]=_0x313b14[_0x3fec98(0x15f)];else typeof _0x36708b[_0x222a1f]==='object'&&_0x36708b[_0x222a1f]!==null&&(_0x36708b[_0x222a1f]=_0x313b14[_0x3fec98(0x1b2)](redactObject,_0x36708b[_0x222a1f]));}return _0x36708b;},logError=(_0x435836,_0x2c9a79={},_0x241d67=null)=>{const _0x4f5d25=a0_0x1b7b1f,_0x443b17={'zhNiW':'error','vPbDU':_0x4f5d25(0x1c4)},_0x37ca90={'event':_0x443b17['zhNiW'],'errorName':_0x435836[_0x4f5d25(0x117)]||_0x443b17['vPbDU'],'errorMessage':_0x435836['message'],'errorCode':_0x435836[_0x4f5d25(0x129)]||null,'stack':_0x435836[_0x4f5d25(0x194)],..._0x2c9a79},_0x3784dd=_0x241d67||_0x4f5d25(0x153)+_0x435836['message'];logger['error'](_0x37ca90,_0x3784dd),writeToFileLog({..._0x37ca90,'level':'error','msg':_0x3784dd,'time':new Date()['toISOString']()},_0x4f5d25(0x136));},logFatalError=(_0x4955fd,_0x243965={},_0x1301a5=null)=>{const _0x44e48e=a0_0x1b7b1f,_0x188094={'GYhYM':_0x44e48e(0x1c4),'pJvzc':function(_0x450fca,_0x5d65c8,_0x563c04){return _0x450fca(_0x5d65c8,_0x563c04);},'ikDbP':'error'},_0x51067c={'event':_0x44e48e(0x1ba),'errorName':_0x4955fd[_0x44e48e(0x117)]||_0x188094['GYhYM'],'errorMessage':_0x4955fd['message'],'errorCode':_0x4955fd['code']||null,'stack':_0x4955fd['stack'],'severity':'CRITICAL',..._0x243965},_0x2073fc=_0x1301a5||'FATAL:\x20'+_0x4955fd['message'];logger['fatal'](_0x51067c,_0x2073fc),_0x188094['pJvzc'](writeToFileLog,{..._0x51067c,'level':'fatal','msg':_0x2073fc,'time':new Date()[_0x44e48e(0x160)]()},_0x188094[_0x44e48e(0x123)]);},logHttpError=(_0x5ec289,_0x4c933f,_0x329325={})=>{const _0x4d9ad5=a0_0x1b7b1f,_0xcccab8={'HGraq':function(_0x544b25,_0x432310){return _0x544b25>=_0x432310;},'RaigY':function(_0x2cd1cd,_0x1b2c82,_0x528195){return _0x2cd1cd(_0x1b2c82,_0x528195);},'gsWMS':'warn'},_0x1f150a={'event':_0x4d9ad5(0x128),'errorName':_0x5ec289['name']||'Error','errorMessage':_0x5ec289['message'],'errorCode':_0x5ec289[_0x4d9ad5(0x129)]||_0x5ec289['statusCode']||0x1f4,'stack':_0x5ec289[_0x4d9ad5(0x194)],'method':_0x4c933f?.[_0x4d9ad5(0x1a1)],'url':_0x4c933f?.[_0x4d9ad5(0x14e)]||_0x4c933f?.['originalUrl'],'path':_0x4c933f?.[_0x4d9ad5(0x1c8)],'ip':_0x4c933f?.['ip']||_0x4c933f?.['connection']?.['remoteAddress'],'userAgent':_0x4c933f?.['get']?.('user-agent'),'requestId':_0x4c933f?.['id']||_0x4c933f?.['headers']?.['x-request-id'],'body':_0x4c933f?.[_0x4d9ad5(0x111)]?redactObject(_0x4c933f['body']):undefined,'query':_0x4c933f?.['query'],..._0x329325},_0x5d7068=_0x5ec289['statusCode']||_0x5ec289['status']||0x1f4,_0x1579b2=_0x4d9ad5(0x1c5)+_0x5d7068+':\x20'+_0x5ec289['message'];_0xcccab8['HGraq'](_0x5d7068,0x1f4)?logger['error'](_0x1f150a,_0x1579b2):logger['warn'](_0x1f150a,_0x1579b2),_0xcccab8['RaigY'](writeToFileLog,{..._0x1f150a,'level':_0xcccab8['HGraq'](_0x5d7068,0x1f4)?_0x4d9ad5(0x136):'warn','msg':_0x1579b2,'time':new Date()['toISOString']()},_0xcccab8[_0x4d9ad5(0x1ad)](_0x5d7068,0x1f4)?'error':_0xcccab8['gsWMS']);},logUncaughtError=(_0x42c3c9,_0x139e07)=>{const _0x294ef1=a0_0x1b7b1f,_0x5c327f={'YNRlJ':function(_0x446eec,_0x25b9a9){return _0x446eec(_0x25b9a9);},'ilPRD':_0x294ef1(0x144)},_0x1f4034={'event':_0x42c3c9,'errorName':_0x139e07?.[_0x294ef1(0x117)]||'Error','errorMessage':_0x139e07?.['message']||_0x5c327f['YNRlJ'](String,_0x139e07),'errorCode':_0x139e07?.[_0x294ef1(0x129)]||null,'stack':_0x139e07?.['stack'],'severity':_0x5c327f[_0x294ef1(0x11e)],'processId':process['pid'],'memoryUsage':process[_0x294ef1(0x186)](),'uptime':process[_0x294ef1(0x1ac)]()},_0x51e129='['+_0x42c3c9['toUpperCase']()+']\x20'+(_0x139e07?.[_0x294ef1(0x1b7)]||_0x139e07);logger['fatal'](_0x1f4034,_0x51e129),writeToFileLog({..._0x1f4034,'level':_0x294ef1(0x12c),'msg':_0x51e129,'time':new Date()['toISOString']()},'error');},setupGlobalErrorHandlers=()=>{const _0x395ae2=a0_0x1b7b1f,_0x4c1ebf={'DEFrb':function(_0x43b950,_0x44affa,_0x249c57){return _0x43b950(_0x44affa,_0x249c57);},'ixjVh':_0x395ae2(0x1ae),'XKReU':function(_0x2be495,_0xa246e4){return _0x2be495 instanceof _0xa246e4;},'jPPIU':_0x395ae2(0x11d),'UqDvi':_0x395ae2(0x146),'hlOBn':'global_error_handlers_setup','Vdfsj':_0x395ae2(0x145)};process['on'](_0x4c1ebf[_0x395ae2(0x151)],_0x413755=>{const _0xd842af=_0x395ae2;_0x4c1ebf[_0xd842af(0x119)](logUncaughtError,_0x4c1ebf['ixjVh'],_0x413755),setTimeout(()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x4c1ebf[_0x395ae2(0x114)],(_0x3d8c6a,_0x568d2a)=>{const _0x2287ec=_0x4c1ebf['XKReU'](_0x3d8c6a,Error)?_0x3d8c6a:new Error(String(_0x3d8c6a));logUncaughtError('unhandledRejection',_0x2287ec);}),process['on'](_0x4c1ebf[_0x395ae2(0x1bc)],_0x1021eb=>{const _0xd6e5dd=_0x395ae2;logger['warn']({'event':_0xd6e5dd(0x1a4),'name':_0x1021eb['name'],'message':_0x1021eb[_0xd6e5dd(0x1b7)],'stack':_0x1021eb['stack']},'Process\x20Warning:\x20'+_0x1021eb[_0xd6e5dd(0x1b7)]);});const _0x1dce59={'event':_0x4c1ebf['hlOBn']},_0x3a3ef6=_0x395ae2(0x157);logger['info'](_0x1dce59,_0x3a3ef6),writeToFileLog({..._0x1dce59,'level':'info','msg':_0x3a3ef6,'time':new Date()[_0x395ae2(0x160)]()},_0x4c1ebf['Vdfsj']);},createErrorHandlerMiddleware=()=>{const _0x36d141={'SzblP':function(_0x1d9a3a,_0x5ebf82){return _0x1d9a3a>=_0x5ebf82;}};return(_0x365fab,_0x38c714,_0x342af1,_0x54766a)=>{const _0x87436d=a0_0x296a;logHttpError(_0x365fab,_0x38c714);const _0x5c39f7=_0x365fab[_0x87436d(0x1a8)]||_0x365fab[_0x87436d(0x19f)]||0x1f4;_0x342af1['status'](_0x5c39f7)[_0x87436d(0x1a6)]({'success':![],'error':_0x36d141['SzblP'](_0x5c39f7,0x1f4)?_0x87436d(0x161):_0x365fab['message'],'requestId':_0x38c714['id']||_0x38c714[_0x87436d(0x1c7)]?.[_0x87436d(0x122)]||null});};};function a0_0x9f88(){const _0x58342c=['rgf0ywjHC2u6ia','u1fmx0Xpr19mrvzfta','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','u1fmx0Xpr19tte9xx1riuKvtse9mra','CunjAuC','rermx0nsrufurq','EKT4tvy','D2fYBG','z1jrvgG','C3rHy2S','q05wEMu','ig9UihbVCNqG','yxbPx3nLy3jLDa','rfjpua','CgfYyw1Z','A2v5CW','tI9b','rermx0fmvevs','zhvYyxrPB25nCW','lI9SB2DZlW','C3rHDhvZ','CMvZDgzVCMDL','Bwv0Ag9K','zNjty2C','rejFueftu1DpuKq','ChjVy2vZC193yxjUAw5N','vuzNBfm','ANnVBG','su5trvju','C3rHDhvZq29Kzq','y29UzMLNrMLSzq','oI8V','ndG0EeTHthzH','Dxb0Aw1L','seDYyxe','Dw5JyxvNAhrfEgnLChrPB24','C3rHCNrZv2L0Aa','iokvKqRILzeGifbYB2PLy3qGicaGidOG','yxbPs2v5','sMLPswK','ndCWntyYDNncAM90','A2jyDuu','A2HMuLG','C2PAsNy','BwvZC2fNzq','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','rgvMyxvSDa','zMf0ywXFzxjYB3i','thjOs1q','vxfeDMK','C3rYAw5N','DLH5DNu','BxmP','vvPNEhi','vwnJshK','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','Aw5JBhvKzxm','rxjYB3i','sfruuca','yxv0Ag9YAxPHDgLVBG','AgvHzgvYCW','Cgf0Aa','tK9uiefdveLwrq','zgjFDhjHBNnHy3rPB24','Bwf0y2G','D3jPDgu','AgvHBhrOq2HLy2S','lI9SB2DZ','vfjbtLnbq1rjt05FqKvhsu4','ywnJzxnZx3rVA2vU','C29Tzq','sLDux1nfq1jfva','CMvZB2X2zq','tM9Kzs5QCW','yM9KEq','AxfvtKu','yMfZzvvYBa','ALbqsvu','te9hx0rjuG','zgf0ywjHC2u','BMfTzq','CgfKrw5K','revgCMi','B3rW','yxbPA2v5','u1fmx0Xpr19qqvjbtvm','Dw5Oyw5KBgvKuMvQzwn0Aw9U','AwXquKq','CgLUBW','C2vYDMLJzuLUzM8','qunusvzf','Ec1Yzxf1zxn0lwLK','AwTeyLa','mteYodmXog5lwvjWAa','Ahr0Cf9Yzxf1zxn0','te9hx1rpx0zjteu','u1PyvKC','Ahr0Cf9LCNjVCG','y29Kzq','owX1wgn2vW','odi5mhnNz214qW','zMf0ywW','zg5Tuhu','ChjPDMf0zwTLEq','revmrvrf','icbvuKW6icaGia','zw5KCg9PBNrFCMvNAxn0zxjLza','Dg9Rzw4','DhjPBq','yxbPx2TLEq','C2vYDMvYx3n0yxj0Aw5N','zxjYB3i','AxjUsxq','y3jLzgvUDgLHBa','C3vIC3rYAw5N','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mZG2ndaWohjpCxzxrW','C3rKvgLTzuz1BMn0Aw9UCW','ndK0nJa4qLnwyLrz','iokvKqRILzeGiefqssblzxKGicaGidOG','tKretvO','zMLSzv9SB2DNAw5Nx2vUywjSzwq','zgjFCxvLCNK','iokvKqRILzeGienVBMzPzYaGicaGidOG','yxbWlMXVzW','q1jjveLdquW','Aw5MBW','D2fYBMLUzW','ChjVAMvJDa','Cg9YDa','ms4WlJu','C2vYDMvYx3jLywr5','qxDvreO','Bu9WwfC','y3jLzgvUDgLHBhm','DxjS','AxntBg93','Cg9ZDgDYzxnXBa','AxHQvMG','y3jLzgL0x2nHCMq','rxjYB3i6ia','tgntquC','Ahj0Aw1L','mZCWmdj4AvPzEKC','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','icdIHPiG','w1jfrefdveveoNrVA2vUxq','EM9urwe','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','svflqNy','wKzKq2G','BwfW','zhnuD3e','Dg9ju09tDhjPBMC','sw50zxjUywWGC2vYDMvYigvYCM9Y','Dhj1zq','Dg9mB3DLCKnHC2u','Bwj0Bw8','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','u0vsvKLdrv9oqu1f','zufwtLu','mZKXnJqZtwDRALbO','mtC1BMTky3rm','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','Ag9ZDa','DgvZDa','CgfZC3DVCMq','te9hx0XfvKvm','w1jfrefdveveoMHHC2HD','C3rYAw5NAwz5','C1njDva','BgvUz3rO','w1jfrefdvevexq','B2fJAuW','quXurvi','DNf1v0O','mKTsuMrqDG','qKDwv3i','ChDK','CvbLENC','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','ChjPDMf0zv9RzxK','CMvWzwf0','CffsA3y','zw52AxjVBM1LBNq','tK9erv9ftLy','A1DTEfK','zw52','vu5ltK9xtG','DhLWzq','BwvTB3j5vxnHz2u','uerMs1u','CMvWBgfJzq','vvbeqvrf','zgvIDwC'];a0_0x9f88=function(){return _0x58342c;};return a0_0x9f88();}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_0x5e5d56=a0_0x32ed;(function(_0x17a3db,_0x1211cb){const _0x32fa36=a0_0x32ed,_0x4d1f69=_0x17a3db();while(!![]){try{const _0x2d51f9=-parseInt(_0x32fa36(0x255))/0x1*(parseInt(_0x32fa36(0x292))/0x2)+-parseInt(_0x32fa36(0x23d))/0x3*(-parseInt(_0x32fa36(0x225))/0x4)+parseInt(_0x32fa36(0x249))/0x5*(-parseInt(_0x32fa36(0x220))/0x6)+parseInt(_0x32fa36(0x25f))/0x7+-parseInt(_0x32fa36(0x213))/0x8+parseInt(_0x32fa36(0x264))/0x9+-parseInt(_0x32fa36(0x1e5))/0xa*(-parseInt(_0x32fa36(0x205))/0xb);if(_0x2d51f9===_0x1211cb)break;else _0x4d1f69['push'](_0x4d1f69['shift']());}catch(_0x5dad91){_0x4d1f69['push'](_0x4d1f69['shift']());}}}(a0_0xad6a,0x575f1));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;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':a0_0x5e5d56(0x23e),'customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process[a0_0x5e5d56(0x25a)][a0_0x5e5d56(0x217)]!==a0_0x5e5d56(0x201),logLevel=process['env'][a0_0x5e5d56(0x297)]||a0_0x5e5d56(0x266);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0x5e5d56(0x260),'options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process[a0_0x5e5d56(0x25a)][a0_0x5e5d56(0x23b)]||a0_0x5e5d56(0x229),'env':process[a0_0x5e5d56(0x25a)][a0_0x5e5d56(0x217)]||a0_0x5e5d56(0x278)},'timestamp':pino[a0_0x5e5d56(0x222)][a0_0x5e5d56(0x29a)],'redact':{'paths':['req.headers.authorization',a0_0x5e5d56(0x27b),'password',a0_0x5e5d56(0x299),a0_0x5e5d56(0x22b),'DB_PASSWORD',a0_0x5e5d56(0x23c)],'censor':a0_0x5e5d56(0x29e)},'serializers':{'req':_0x40d98e=>({'id':_0x40d98e['id'],'method':_0x40d98e[a0_0x5e5d56(0x24a)],'url':_0x40d98e[a0_0x5e5d56(0x28c)],'path':_0x40d98e[a0_0x5e5d56(0x21a)],'remoteAddress':_0x40d98e['ip']||_0x40d98e[a0_0x5e5d56(0x251)]?.['remoteAddress']}),'res':_0x3bc6b1=>({'statusCode':_0x3bc6b1['statusCode'],'headers':_0x3bc6b1[a0_0x5e5d56(0x296)]?.()}),'err':pino['stdSerializers']['err']}});function initFileLogging(){const _0x4e0e4c=a0_0x5e5d56,_0x1a8181={'NEoqi':function(_0x10d3ae,_0x324069){return _0x10d3ae===_0x324069;},'ZdZIB':_0x4e0e4c(0x208),'GPQzU':function(_0x292a9e,_0x5347d1){return _0x292a9e!==_0x5347d1;},'giWox':function(_0xa6d6cf,_0x2fc14c){return _0xa6d6cf(_0x2fc14c);},'QTstF':_0x4e0e4c(0x207),'JqTIX':'file_logging_enabled','EHUVI':_0x4e0e4c(0x253),'dIvJH':function(_0x5d5b61,_0x291a7b,_0x346298){return _0x5d5b61(_0x291a7b,_0x346298);},'VGvHY':_0x4e0e4c(0x266)};if(fileLoggingInitialized)return;logToFile=_0x1a8181['NEoqi'](process[_0x4e0e4c(0x25a)][_0x4e0e4c(0x21c)],'true');const _0x52742c=process['env']['RESTFORGE_PROJECT_NAME']||'default';logDir=process['env'][_0x4e0e4c(0x227)]||_0x4e0e4c(0x214)+_0x52742c,serviceName=process[_0x4e0e4c(0x25a)][_0x4e0e4c(0x236)]||_0x4e0e4c(0x28e),sqlLogEnabled=process['env']['SQL_LOG_ENABLED']===_0x1a8181[_0x4e0e4c(0x22a)],sqlLogLevel=process[_0x4e0e4c(0x25a)]['SQL_LOG_LEVEL']||'debug',sqlLogParams=_0x1a8181[_0x4e0e4c(0x20a)](process[_0x4e0e4c(0x25a)][_0x4e0e4c(0x248)],_0x4e0e4c(0x223)),sqlLogSlowThreshold=_0x1a8181[_0x4e0e4c(0x1f7)](parseInt,process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x73788d=path['resolve'](process['cwd'](),logDir);try{!fs[_0x4e0e4c(0x22e)](_0x73788d)&&fs[_0x4e0e4c(0x2a0)](_0x73788d,{'recursive':!![]});}catch(_0x3fd2d2){console[_0x4e0e4c(0x280)](_0x4e0e4c(0x203)+_0x73788d+':',_0x3fd2d2['message']),fileLoggingInitialized=!![];return;}const _0x246d56=path['join'](_0x73788d,_0x4e0e4c(0x253)),_0x81a63d=path[_0x4e0e4c(0x265)](_0x73788d,_0x1a8181['QTstF']);try{appLogStream=fs['createWriteStream'](_0x246d56,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x81a63d,{'flags':'a'}),fileLoggingInitialized=!![];const _0x9021fa={'event':_0x1a8181[_0x4e0e4c(0x263)],'logDir':_0x73788d,'files':[_0x1a8181['EHUVI'],_0x4e0e4c(0x207)]},_0x80a8ab=_0x4e0e4c(0x29c)+_0x73788d;logger[_0x4e0e4c(0x266)](_0x9021fa,_0x80a8ab),_0x1a8181['dIvJH'](writeToFileLog,{..._0x9021fa,'level':_0x1a8181['VGvHY'],'msg':_0x80a8ab,'time':new Date()[_0x4e0e4c(0x2a5)]()},_0x1a8181[_0x4e0e4c(0x28f)]);}catch(_0x37d1e9){console[_0x4e0e4c(0x280)]('Failed\x20to\x20create\x20log\x20streams:',_0x37d1e9[_0x4e0e4c(0x20b)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x519366,_0x5a3c23){const _0x518fa7=a0_0x5e5d56,_0x3d50f4={'kKwDd':function(_0x2c4578,_0x181f7b){return _0x2c4578||_0x181f7b;},'AaXzI':function(_0x1ee700,_0x36ab23){return _0x1ee700===_0x36ab23;}};if(_0x3d50f4['kKwDd'](!logToFile,!appLogStream))return;const _0x2582d6={'service':serviceName,..._0x519366},_0x1c15c5=JSON['stringify'](_0x2582d6)+'\x0a';appLogStream['write'](_0x1c15c5),(_0x5a3c23===_0x518fa7(0x280)||_0x3d50f4['AaXzI'](_0x5a3c23,_0x518fa7(0x1f0)))&&(errorLogStream&&errorLogStream[_0x518fa7(0x204)](_0x1c15c5));}function a0_0x32ed(_0x44dd1c,_0x1e9a47){_0x44dd1c=_0x44dd1c-0x1e4;const _0xad6a97=a0_0xad6a();let _0x32ed44=_0xad6a97[_0x44dd1c];if(a0_0x32ed['INZCMB']===undefined){var _0x51d8fb=function(_0x324319){const _0x490446='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3287e8='',_0x145d4='';for(let _0x50423f=0x0,_0x534381,_0x74971a,_0x540b8a=0x0;_0x74971a=_0x324319['charAt'](_0x540b8a++);~_0x74971a&&(_0x534381=_0x50423f%0x4?_0x534381*0x40+_0x74971a:_0x74971a,_0x50423f++%0x4)?_0x3287e8+=String['fromCharCode'](0xff&_0x534381>>(-0x2*_0x50423f&0x6)):0x0){_0x74971a=_0x490446['indexOf'](_0x74971a);}for(let _0x324951=0x0,_0x57d58a=_0x3287e8['length'];_0x324951<_0x57d58a;_0x324951++){_0x145d4+='%'+('00'+_0x3287e8['charCodeAt'](_0x324951)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x145d4);};a0_0x32ed['YMasLx']=_0x51d8fb,a0_0x32ed['pKGhff']={},a0_0x32ed['INZCMB']=!![];}const _0x17ac5f=_0xad6a97[0x0],_0x50a93c=_0x44dd1c+_0x17ac5f,_0x5e26ff=a0_0x32ed['pKGhff'][_0x50a93c];return!_0x5e26ff?(_0x32ed44=a0_0x32ed['YMasLx'](_0x32ed44),a0_0x32ed['pKGhff'][_0x50a93c]=_0x32ed44):_0x32ed44=_0x5e26ff,_0x32ed44;}const createRequestLogger=(_0x5f1493={})=>{const _0x7aedda=a0_0x5e5d56;return logger[_0x7aedda(0x231)](_0x5f1493);},logServerStart=_0x2a8c3a=>{const _0x198366=a0_0x5e5d56,_0x2bc9df={'ynjcb':'RESTFORGE\x20RUNTIME\x20SERVER','EtcaZ':function(_0x4f95aa,_0x3e1c9a){return _0x4f95aa/_0x3e1c9a;},'dTcfy':'Node.js','iAKxe':'Default','hxiNF':'ACTIVE','pZtDp':_0x198366(0x1fb),'qdEWd':'info'},_0x405476=_0x2bc9df[_0x198366(0x25b)],_0x4fe21f=Math[_0x198366(0x216)](0x0,0x37-_0x405476['length']),_0x50b76b=Math['floor'](_0x2bc9df[_0x198366(0x24d)](_0x4fe21f,0x2)),_0xd3b5e6=_0x4fe21f-_0x50b76b,_0x2a00ed='║'+'\x20'['repeat'](_0x50b76b)+_0x405476+'\x20'['repeat'](_0xd3b5e6)+'║',_0x16b209=_0x198366(0x288)+_0x2a00ed+_0x198366(0x281)+(_0x2a8c3a['environment']||_0x2bc9df[_0x198366(0x26e)])['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x2a8c3a['project']||'N/A')['padEnd'](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+String(_0x2a8c3a[_0x198366(0x243)]||0xbb8)[_0x198366(0x295)](0x26)+_0x198366(0x1ef)+(_0x2a8c3a[_0x198366(0x1fd)]||_0x2bc9df[_0x198366(0x24c)])[_0x198366(0x295)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x2a8c3a['apiKey']?_0x2bc9df['hxiNF']:_0x198366(0x298))[_0x198366(0x295)](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x198366(0x24b)](_0x16b209);const _0x1061ed={'event':_0x2bc9df[_0x198366(0x245)],'project':_0x2a8c3a[_0x198366(0x25c)],'port':_0x2a8c3a['port'],'config':_0x2a8c3a[_0x198366(0x1fd)],'apiKeyEnabled':!!_0x2a8c3a[_0x198366(0x22b)]};logger['info'](_0x1061ed),writeToFileLog({..._0x1061ed,'level':_0x198366(0x266),'msg':_0x198366(0x26d)+_0x2a8c3a[_0x198366(0x25c)]+_0x198366(0x21d)+_0x2a8c3a[_0x198366(0x243)],'time':new Date()[_0x198366(0x2a5)]()},_0x2bc9df[_0x198366(0x27a)]);},logServerReady=_0x210d25=>{const _0x23799c=a0_0x5e5d56,_0x66c7f4={'PpQBZ':_0x23799c(0x25e),'qcUIX':function(_0xac9745,_0x3208d5,_0xead3ec){return _0xac9745(_0x3208d5,_0xead3ec);},'vwAMz':'info'},_0x4d2f38={'event':_0x66c7f4['PpQBZ'],'port':_0x210d25['port'],'module':_0x210d25[_0x23799c(0x206)],'healthCheck':_0x210d25[_0x23799c(0x2a2)],'serviceInfo':_0x210d25[_0x23799c(0x267)],'baseUrl':_0x210d25[_0x23799c(0x1f5)]},_0x2034ec='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x210d25[_0x23799c(0x243)];logger[_0x23799c(0x266)](_0x4d2f38,_0x2034ec),_0x66c7f4[_0x23799c(0x27f)](writeToFileLog,{..._0x4d2f38,'level':_0x66c7f4[_0x23799c(0x22f)],'msg':_0x2034ec,'time':new Date()[_0x23799c(0x2a5)]()},_0x23799c(0x266)),_0x210d25[_0x23799c(0x2a2)]&&logger[_0x23799c(0x266)]('\x20\x20Health:\x20'+_0x210d25[_0x23799c(0x2a2)]),_0x210d25['serviceInfo']&&logger[_0x23799c(0x266)](_0x23799c(0x1f4)+_0x210d25['serviceInfo']),_0x210d25['baseUrl']&&logger['info'](_0x23799c(0x27e)+_0x210d25['baseUrl']);},logProjectLoaded=(_0x22baa6,_0xa829de)=>{const _0xbaac1f=a0_0x5e5d56,_0xc873db={'uRoYW':_0xbaac1f(0x239),'PcQAc':function(_0x9ef0a,_0x17d8a2,_0x4bae36){return _0x9ef0a(_0x17d8a2,_0x4bae36);},'xBWfV':_0xbaac1f(0x266)},_0x18ff48={'event':_0xc873db[_0xbaac1f(0x1f1)],'project':_0x22baa6,'path':_0xa829de},_0x41c09c=_0xbaac1f(0x202)+_0x22baa6;logger['info'](_0x18ff48,_0x41c09c),_0xc873db[_0xbaac1f(0x21e)](writeToFileLog,{..._0x18ff48,'level':_0xc873db['xBWfV'],'msg':_0x41c09c,'time':new Date()['toISOString']()},_0xc873db[_0xbaac1f(0x24f)]);},logEndpointRegistered=(_0x17972e,_0x9b759c)=>{const _0x2bce5c=a0_0x5e5d56,_0x31f5f9={'FOYwG':'endpoint_registered','JnnbY':function(_0x5605ee,_0x319ca7,_0x5e42e5){return _0x5605ee(_0x319ca7,_0x5e42e5);},'iyong':_0x2bce5c(0x212)},_0x5796b0={'event':_0x31f5f9[_0x2bce5c(0x20e)],'endpoint':_0x17972e,'route':_0x9b759c},_0x571af6=_0x2bce5c(0x27c)+_0x17972e+':\x20'+_0x9b759c;logger['debug'](_0x5796b0,_0x571af6),_0x31f5f9['JnnbY'](writeToFileLog,{..._0x5796b0,'level':_0x31f5f9['iyong'],'msg':_0x571af6,'time':new Date()['toISOString']()},_0x31f5f9[_0x2bce5c(0x218)]);},logDatabaseConfig=_0x563af9=>{const _0x2ffdac=a0_0x5e5d56,_0x47dd0b={'hLlwW':function(_0x5cf230,_0xefdde6,_0x39de25){return _0x5cf230(_0xefdde6,_0x39de25);},'ybXPi':_0x2ffdac(0x212)},_0x81caf0={'event':_0x2ffdac(0x240),'host':_0x563af9[_0x2ffdac(0x1fc)],'port':_0x563af9['port'],'database':_0x563af9[_0x2ffdac(0x1ed)],'type':_0x563af9['type'],'user':_0x563af9[_0x2ffdac(0x289)]},_0x5526d6=_0x2ffdac(0x1f3)+_0x563af9[_0x2ffdac(0x261)]+_0x2ffdac(0x233)+_0x563af9['host']+':'+_0x563af9['port']+'/'+_0x563af9[_0x2ffdac(0x1ed)];logger['debug'](_0x81caf0,_0x5526d6),_0x47dd0b[_0x2ffdac(0x2a3)](writeToFileLog,{..._0x81caf0,'level':_0x47dd0b['ybXPi'],'msg':_0x5526d6,'time':new Date()[_0x2ffdac(0x2a5)]()},'debug');},logRequest=(_0x5641ac,_0x3715e1,_0x10bdb7)=>{const _0x567072=a0_0x5e5d56,_0x591624={'cbRry':'http_request','Ezpdc':_0x567072(0x280)},_0x4c39b9={'event':_0x591624['cbRry'],'method':_0x5641ac['method'],'path':_0x5641ac[_0x567072(0x21a)],'statusCode':_0x3715e1['statusCode'],'durationMs':_0x10bdb7,'ip':_0x5641ac['ip']},_0x5e73b8=_0x5641ac[_0x567072(0x24a)]+'\x20'+_0x5641ac['path']+_0x567072(0x22d)+_0x3715e1['statusCode']+'\x20('+_0x10bdb7+'ms)';let _0x128c06='info';if(_0x3715e1[_0x567072(0x284)]>=0x1f4)_0x128c06=_0x591624[_0x567072(0x21b)],logger[_0x567072(0x280)](_0x4c39b9,_0x5e73b8);else _0x3715e1['statusCode']>=0x190?(_0x128c06=_0x567072(0x2a4),logger[_0x567072(0x2a4)](_0x4c39b9,_0x5e73b8)):logger['info'](_0x4c39b9,_0x5e73b8);writeToFileLog({..._0x4c39b9,'level':_0x128c06,'msg':_0x5e73b8,'time':new Date()[_0x567072(0x2a5)]()},_0x128c06);},SENSITIVE_PARAM_PATTERNS=['password','passwd','pwd',a0_0x5e5d56(0x299),'access_token','refresh_token',a0_0x5e5d56(0x1e4),'api_secret','apikey','api_key',a0_0x5e5d56(0x219),a0_0x5e5d56(0x271),'pin','otp','private_key','privatekey'],redactSensitiveParams=(_0x1ef69e,_0x422f74)=>{const _0x396de2=a0_0x5e5d56,_0x46f01c={'LzCVJ':'[REDACTED]','PMqeh':function(_0x127c65,_0x28ed30){return _0x127c65===_0x28ed30;},'NIWWr':_0x396de2(0x29b),'wkuVP':'[REDACTED:hash]'};if(!_0x1ef69e||_0x46f01c[_0x396de2(0x1f2)](_0x1ef69e['length'],0x0))return _0x1ef69e;const _0x2ff665=_0x422f74['toLowerCase'](),_0x2612c8=_0x2ff665['match'](/\(([^)]+)\)\s*values/i);let _0x1345f5=[];_0x2612c8&&(_0x1345f5=_0x2612c8[0x1][_0x396de2(0x290)](',')[_0x396de2(0x287)](_0xfd3ac6=>_0xfd3ac6[_0x396de2(0x21f)]()[_0x396de2(0x256)]()));const _0x4a6908=_0x2ff665[_0x396de2(0x242)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x4a6908){const _0x10741e=_0x4a6908[0x1],_0x45e941=_0x10741e['match'](/(\w+)\s*=/g);_0x45e941&&(_0x1345f5=_0x45e941['map'](_0x4f52f6=>_0x4f52f6['replace'](/\s*=/,'')[_0x396de2(0x21f)]()['toLowerCase']()));}return _0x1ef69e[_0x396de2(0x287)]((_0x2dd9c1,_0xda3281)=>{const _0x2c6d46=_0x396de2;if(_0x1345f5[_0xda3281]){const _0x155b86=_0x1345f5[_0xda3281],_0x4f261f=SENSITIVE_PARAM_PATTERNS['some'](_0x5ea213=>_0x155b86['includes'](_0x5ea213));if(_0x4f261f)return _0x46f01c['LzCVJ'];}if(_0x46f01c['PMqeh'](typeof _0x2dd9c1,_0x46f01c[_0x2c6d46(0x269)])&&_0x2dd9c1[_0x2c6d46(0x26a)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x2c6d46(0x23f)](_0x2dd9c1)&&_0x2dd9c1[_0x2c6d46(0x1e8)]('.'))return'[REDACTED:token]';if(/^[a-fA-F0-9]{32,}$/['test'](_0x2dd9c1))return _0x46f01c[_0x2c6d46(0x250)];}return _0x2dd9c1;});},parseQueryMetadata=_0x3d1b5d=>{const _0x48b591=a0_0x5e5d56,_0x1578b2={'Wvtoe':_0x48b591(0x1ec),'cfBUU':_0x48b591(0x228),'qSObZ':'DELETE','zPzDq':_0x48b591(0x22c),'pfnqY':_0x48b591(0x215),'KmaZc':'CREATE','maNtJ':_0x48b591(0x282),'dysbd':'DDL_ALTER'},_0x572496=_0x3d1b5d['trim'](),_0xba8e9e=_0x572496[_0x48b591(0x28b)]();let _0x57ca3c=_0x48b591(0x275),_0x1f493d=null;if(_0xba8e9e[_0x48b591(0x258)](_0x1578b2[_0x48b591(0x26b)])){_0x57ca3c=_0x1578b2['Wvtoe'];const _0x38c7ba=_0x572496[_0x48b591(0x242)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x38c7ba?_0x38c7ba[0x1]:null;}else{if(_0xba8e9e[_0x48b591(0x258)](_0x1578b2['cfBUU'])){_0x57ca3c='INSERT';const _0x65b2ca=_0x572496[_0x48b591(0x242)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x65b2ca?_0x65b2ca[0x1]:null;}else{if(_0xba8e9e[_0x48b591(0x258)](_0x48b591(0x1ea))){_0x57ca3c='UPDATE';const _0x2dbc76=_0x572496['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x2dbc76?_0x2dbc76[0x1]:null;}else{if(_0xba8e9e['startsWith'](_0x1578b2['qSObZ'])){_0x57ca3c=_0x48b591(0x1e7);const _0x4a8a56=_0x572496[_0x48b591(0x242)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f493d=_0x4a8a56?_0x4a8a56[0x1]:null;}else{if(_0xba8e9e[_0x48b591(0x258)](_0x48b591(0x1eb))||_0xba8e9e[_0x48b591(0x258)]('START\x20TRANSACTION'))_0x57ca3c=_0x48b591(0x230);else{if(_0xba8e9e['startsWith'](_0x1578b2['zPzDq']))_0x57ca3c=_0x48b591(0x1fa);else{if(_0xba8e9e['startsWith'](_0x48b591(0x273)))_0x57ca3c=_0x1578b2[_0x48b591(0x20f)];else{if(_0xba8e9e[_0x48b591(0x258)](_0x1578b2[_0x48b591(0x268)]))_0x57ca3c=_0x1578b2['maNtJ'];else{if(_0xba8e9e['startsWith']('ALTER'))_0x57ca3c=_0x1578b2[_0x48b591(0x1f6)];else _0xba8e9e['startsWith'](_0x48b591(0x252))&&(_0x57ca3c=_0x48b591(0x274));}}}}}}}}return{'type':_0x57ca3c,'table':_0x1f493d};},startQueryTimer=()=>{const _0x5b2dc9={'msGtE':function(_0x5072cc,_0x17320d){return _0x5072cc(_0x17320d);},'nUlDH':function(_0x482720,_0x941ac1){return _0x482720/_0x941ac1;}},_0x254ae1=process['hrtime']();return()=>{const _0x14fe8b=a0_0x32ed,[_0x226e3a,_0x4a594c]=process[_0x14fe8b(0x27d)](_0x254ae1);return _0x5b2dc9['msGtE'](parseFloat,(_0x226e3a*0x3e8+_0x5b2dc9['nUlDH'](_0x4a594c,0xf4240))[_0x14fe8b(0x20c)](0x2));};},logQuery=(_0x209600,_0x71e829=[],_0x1bcb18={})=>{const _0x451ee4=a0_0x5e5d56,_0x2148fa={'xFyBn':'db_query','FWitF':_0x451ee4(0x1ff),'DoILZ':'postgresql','YqowK':function(_0x148696,_0x2f2293){return _0x148696!==_0x2f2293;},'rHysw':function(_0x48e41a,_0x2fd342){return _0x48e41a>_0x2fd342;},'OVgOd':'debug','YMGKz':_0x451ee4(0x28d),'SYstP':'info','mfNji':function(_0x2bf348,_0x169b81,_0x26499b){return _0x2bf348(_0x169b81,_0x26499b);}};if(!sqlLogEnabled){logger['debug']({'event':_0x2148fa[_0x451ee4(0x26c)],'query':_0x209600['substring'](0x0,0xc8),'paramCount':_0x71e829[_0x451ee4(0x26a)]},_0x2148fa['FWitF']);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x2148fa['DoILZ']}=_0x1bcb18,{type:_0x345360,table:_0x75f655}=parseQueryMetadata(_0x209600),_0x3a02eb={'event':'sql_query','queryType':_0x345360,'table':_0x75f655,'query':_0x209600,'paramCount':_0x71e829['length'],'dbType':dbType};sqlLogParams&&_0x71e829[_0x451ee4(0x26a)]>0x0&&(_0x3a02eb[_0x451ee4(0x200)]=redactSensitiveParams(_0x71e829,_0x209600));_0x2148fa['YqowK'](duration,null)&&(_0x3a02eb[_0x451ee4(0x1ee)]=duration,_0x3a02eb[_0x451ee4(0x210)]=_0x2148fa['rHysw'](duration,sqlLogSlowThreshold));_0x2148fa['YqowK'](rowsAffected,null)&&(_0x3a02eb['rowsAffected']=rowsAffected);const _0x2197be=_0x75f655||'unknown';let _0x4cee78='['+_0x345360+']\x20'+_0x2197be;_0x2148fa['YqowK'](duration,null)&&(_0x4cee78+='\x20('+duration+'ms)');const _0x8f8e24=_0x2148fa['YqowK'](duration,null)&&duration>sqlLogSlowThreshold;let _0x4f746b=_0x2148fa[_0x451ee4(0x29d)];if(_0x8f8e24)_0x4cee78+=_0x2148fa['YMGKz'],_0x4f746b=_0x451ee4(0x2a4),logger[_0x451ee4(0x2a4)](_0x3a02eb,_0x4cee78);else sqlLogLevel===_0x2148fa[_0x451ee4(0x237)]?(_0x4f746b=_0x2148fa['SYstP'],logger[_0x451ee4(0x266)](_0x3a02eb,_0x4cee78)):logger['debug'](_0x3a02eb,_0x4cee78);_0x2148fa[_0x451ee4(0x285)](writeToFileLog,{..._0x3a02eb,'level':_0x4f746b,'msg':_0x4cee78,'time':new Date()[_0x451ee4(0x2a5)]()},_0x4f746b);},logTransaction=(_0x461f99,_0x3bb9d3)=>{const _0x4ed290=a0_0x5e5d56,_0x40c942={'XTKlQ':'db_transaction'},_0x36b04d={'event':_0x40c942[_0x4ed290(0x211)],'status':_0x461f99,'queryCount':_0x3bb9d3},_0x38acdc='Transaction\x20'+_0x461f99;logger[_0x4ed290(0x212)](_0x36b04d,_0x38acdc),writeToFileLog({..._0x36b04d,'level':'debug','msg':_0x38acdc,'time':new Date()['toISOString']()},_0x4ed290(0x212));},redactObject=_0x62f006=>{const _0x319b69=a0_0x5e5d56,_0xb137ba={'ACCVp':'object','QBxLu':'passwd','FFUkV':'pwd','BzMVh':'api_key','mSdqg':_0x319b69(0x1f8),'ouvaF':_0x319b69(0x209),'GaESZ':'ssn','vUxgo':'privatekey','alFCX':_0x319b69(0x291),'UMWFO':function(_0x408b39,_0x12ef98){return _0x408b39===_0x12ef98;}};if(!_0x62f006||typeof _0x62f006!==_0xb137ba[_0x319b69(0x232)])return _0x62f006;const _0x398343=['password',_0xb137ba['QBxLu'],_0xb137ba['FFUkV'],_0x319b69(0x299),'secret','apikey',_0xb137ba[_0x319b69(0x294)],'authorization',_0xb137ba['mSdqg'],_0xb137ba[_0x319b69(0x238)],_0x319b69(0x262),_0xb137ba['GaESZ'],'pin',_0x319b69(0x24e),_0xb137ba[_0x319b69(0x224)],_0xb137ba['alFCX'],_0x319b69(0x234)],_0x34ca10=Array['isArray'](_0x62f006)?[..._0x62f006]:{..._0x62f006};for(const _0x46cee7 of Object['keys'](_0x34ca10)){const _0x4b5c=_0x46cee7[_0x319b69(0x256)]();if(_0x398343[_0x319b69(0x23a)](_0x5ec776=>_0x4b5c[_0x319b69(0x1e8)](_0x5ec776)))_0x34ca10[_0x46cee7]='[REDACTED]';else _0xb137ba[_0x319b69(0x241)](typeof _0x34ca10[_0x46cee7],'object')&&_0x34ca10[_0x46cee7]!==null&&(_0x34ca10[_0x46cee7]=redactObject(_0x34ca10[_0x46cee7]));}return _0x34ca10;},logError=(_0x102e8e,_0x10e6da={},_0x371578=null)=>{const _0x1d382d=a0_0x5e5d56,_0x19c69d={'oFVEJ':_0x1d382d(0x235),'sUPnP':'error'},_0xd0517a={'event':_0x1d382d(0x280),'errorName':_0x102e8e['name']||_0x19c69d['oFVEJ'],'errorMessage':_0x102e8e[_0x1d382d(0x20b)],'errorCode':_0x102e8e[_0x1d382d(0x270)]||null,'stack':_0x102e8e['stack'],..._0x10e6da},_0x5e23fb=_0x371578||'Error:\x20'+_0x102e8e['message'];logger[_0x1d382d(0x280)](_0xd0517a,_0x5e23fb),writeToFileLog({..._0xd0517a,'level':_0x19c69d[_0x1d382d(0x286)],'msg':_0x5e23fb,'time':new Date()[_0x1d382d(0x2a5)]()},'error');},logFatalError=(_0x5d49ce,_0x165b7e={},_0x35f16d=null)=>{const _0x20f12b=a0_0x5e5d56,_0x762995={'TykLx':_0x20f12b(0x2a1),'WYfSy':'fatal','qhDyt':'error'},_0x566dd9={'event':_0x762995[_0x20f12b(0x244)],'errorName':_0x5d49ce[_0x20f12b(0x247)]||'Error','errorMessage':_0x5d49ce['message'],'errorCode':_0x5d49ce['code']||null,'stack':_0x5d49ce[_0x20f12b(0x226)],'severity':_0x20f12b(0x276),..._0x165b7e},_0x25705f=_0x35f16d||'FATAL:\x20'+_0x5d49ce[_0x20f12b(0x20b)];logger[_0x20f12b(0x1f0)](_0x566dd9,_0x25705f),writeToFileLog({..._0x566dd9,'level':_0x762995['WYfSy'],'msg':_0x25705f,'time':new Date()['toISOString']()},_0x762995['qhDyt']);},logHttpError=(_0x3af050,_0xc32872,_0x73fb61={})=>{const _0x2a2601=a0_0x5e5d56,_0x1b9bc3={'AiOUy':_0x2a2601(0x235),'vKpxm':'user-agent','zhemz':'warn'},_0x17c2ca={'event':'http_error','errorName':_0x3af050[_0x2a2601(0x247)]||_0x1b9bc3['AiOUy'],'errorMessage':_0x3af050[_0x2a2601(0x20b)],'errorCode':_0x3af050['code']||_0x3af050['statusCode']||0x1f4,'stack':_0x3af050[_0x2a2601(0x226)],'method':_0xc32872?.['method'],'url':_0xc32872?.['url']||_0xc32872?.['originalUrl'],'path':_0xc32872?.['path'],'ip':_0xc32872?.['ip']||_0xc32872?.[_0x2a2601(0x251)]?.['remoteAddress'],'userAgent':_0xc32872?.[_0x2a2601(0x277)]?.(_0x1b9bc3['vKpxm']),'requestId':_0xc32872?.['id']||_0xc32872?.['headers']?.[_0x2a2601(0x25d)],'body':_0xc32872?.[_0x2a2601(0x246)]?redactObject(_0xc32872[_0x2a2601(0x246)]):undefined,'query':_0xc32872?.[_0x2a2601(0x279)],..._0x73fb61},_0x3efd96=_0x3af050['statusCode']||_0x3af050['status']||0x1f4,_0x4d0abf=_0x2a2601(0x1e9)+_0x3efd96+':\x20'+_0x3af050[_0x2a2601(0x20b)];_0x3efd96>=0x1f4?logger['error'](_0x17c2ca,_0x4d0abf):logger['warn'](_0x17c2ca,_0x4d0abf),writeToFileLog({..._0x17c2ca,'level':_0x3efd96>=0x1f4?'error':_0x1b9bc3[_0x2a2601(0x272)],'msg':_0x4d0abf,'time':new Date()[_0x2a2601(0x2a5)]()},_0x3efd96>=0x1f4?_0x2a2601(0x280):_0x1b9bc3['zhemz']);},logUncaughtError=(_0x110c82,_0x169b30)=>{const _0x4d3885=a0_0x5e5d56,_0x1d00cb={'LzOTz':_0x4d3885(0x235),'uZmOQ':function(_0x12094b,_0x510237){return _0x12094b(_0x510237);},'VPzIo':function(_0x2c85ef,_0x3050c4,_0x31609c){return _0x2c85ef(_0x3050c4,_0x31609c);},'HVUtH':'fatal','zBIJG':'error'},_0x32a113={'event':_0x110c82,'errorName':_0x169b30?.['name']||_0x1d00cb['LzOTz'],'errorMessage':_0x169b30?.[_0x4d3885(0x20b)]||_0x1d00cb[_0x4d3885(0x259)](String,_0x169b30),'errorCode':_0x169b30?.[_0x4d3885(0x270)]||null,'stack':_0x169b30?.[_0x4d3885(0x226)],'severity':_0x4d3885(0x276),'processId':process['pid'],'memoryUsage':process[_0x4d3885(0x1fe)](),'uptime':process[_0x4d3885(0x28a)]()},_0x59602='['+_0x110c82[_0x4d3885(0x28b)]()+']\x20'+(_0x169b30?.[_0x4d3885(0x20b)]||_0x169b30);logger['fatal'](_0x32a113,_0x59602),_0x1d00cb['VPzIo'](writeToFileLog,{..._0x32a113,'level':_0x1d00cb['HVUtH'],'msg':_0x59602,'time':new Date()['toISOString']()},_0x1d00cb['zBIJG']);},setupGlobalErrorHandlers=()=>{const _0x34c91a=a0_0x5e5d56,_0x583aef={'MqtFM':'uncaughtException','dREYf':function(_0x99add9,_0x3784b9,_0x8c4cb6){return _0x99add9(_0x3784b9,_0x8c4cb6);},'vVLDa':function(_0x4da77b,_0x546bf7){return _0x4da77b(_0x546bf7);},'VnxCI':'unhandledRejection','iNzja':'global_error_handlers_setup','tNyNU':'info'};process['on'](_0x34c91a(0x1e6),_0x2dd66c=>{const _0x5570bb=_0x34c91a;logUncaughtError(_0x583aef['MqtFM'],_0x2dd66c),_0x583aef[_0x5570bb(0x293)](setTimeout,()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x583aef['VnxCI'],(_0x6d54,_0x1d649c)=>{const _0x5a1322=_0x34c91a,_0x4af6c1=_0x6d54 instanceof Error?_0x6d54:new Error(_0x583aef[_0x5a1322(0x283)](String,_0x6d54));logUncaughtError('unhandledRejection',_0x4af6c1);}),process['on'](_0x34c91a(0x26f),_0x3206c8=>{const _0x2482b7=_0x34c91a;logger[_0x2482b7(0x2a4)]({'event':'process_warning','name':_0x3206c8[_0x2482b7(0x247)],'message':_0x3206c8[_0x2482b7(0x20b)],'stack':_0x3206c8[_0x2482b7(0x226)]},_0x2482b7(0x20d)+_0x3206c8['message']);});const _0x4946cb={'event':_0x583aef[_0x34c91a(0x1f9)]},_0xcdd721='Global\x20error\x20handlers\x20initialized';logger[_0x34c91a(0x266)](_0x4946cb,_0xcdd721),writeToFileLog({..._0x4946cb,'level':_0x583aef[_0x34c91a(0x257)],'msg':_0xcdd721,'time':new Date()['toISOString']()},'info');},createErrorHandlerMiddleware=()=>{const _0x39b234={'MCvIY':function(_0x2c2c85,_0x282f0c){return _0x2c2c85>=_0x282f0c;}};return(_0x18480f,_0x7e6092,_0x3ecc24,_0x4499c5)=>{const _0x30f5f7=a0_0x32ed;logHttpError(_0x18480f,_0x7e6092);const _0x4f614d=_0x18480f[_0x30f5f7(0x284)]||_0x18480f['status']||0x1f4;_0x3ecc24['status'](_0x4f614d)[_0x30f5f7(0x221)]({'success':![],'error':_0x39b234['MCvIY'](_0x4f614d,0x1f4)?_0x30f5f7(0x254):_0x18480f['message'],'requestId':_0x7e6092['id']||_0x7e6092[_0x30f5f7(0x29f)]?.['x-request-id']||null});};};function a0_0xad6a(){const _0x531510=['Ahj0Aw1L','icbvuKW6icaGia','CwnvsvG','zxjYB3i','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','rermx0nsrufurq','DLzmrge','C3rHDhvZq29Kzq','BwzoAMK','C1vqBLa','BwfW','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','DxnLCG','Dxb0Aw1L','Dg9vChbLCKnHC2u','DxjS','ifTtte9xxq','CMvZDgzVCMDL','vKD2sfK','C3bSAxq','CMvMCMvZAf90B2TLBG','ntu2nZaYy3blyKLc','zfjfwwy','qNPnvMG','CgfKrw5K','z2v0sgvHzgvYCW','te9hx0XfvKvm','tK9uiefdveLwrq','Dg9Rzw4','AxnVvgLTzq','C3rYAw5N','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','t1zNt2q','w1jfrefdvevexq','AgvHzgvYCW','BwTKAxjtEw5J','zMf0ywXFzxjYB3i','AgvHBhrOq2HLy2S','AeXSD1C','D2fYBG','Dg9ju09tDhjPBMC','C2vJCMv0','mtmYnZm5mfDrwuXqDq','Dw5JyxvNAhrfEgnLChrPB24','revmrvrf','Aw5JBhvKzxm','sfruuca','vvbeqvrf','qKvhsu4','u0vmrunu','zgf0ywjHC2u','zhvYyxrPB25nCW','iokvKqRILzeGienVBMzPzYaGicaGidOG','zMf0ywW','DvjVwvC','ue1XzwG','rgf0ywjHC2u6ia','icbjBMzVoIaGia','yMfZzvvYBa','zhLZyMq','z2LxB3G','y3jLzgL0y2fYza','Au56AMe','vfjbtLnbq1rjt05Fq09ntuLu','C2vYDMvYx3n0yxj0Aw5N','Ag9ZDa','y29UzMLNrMLSzq','BwvTB3j5vxnHz2u','reiGuxvLCNK','CgfYyw1Z','ChjVzhvJDgLVBG','w09lxsbqCM9Qzwn0igXVywrLzdOG','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','D3jPDgu','ntvbvKP2rue','Bw9KDwXL','zxjYB3iUBg9N','Dhj1zq','y3jLzgL0x2nHCMq','r1brELu','BwvZC2fNzq','Dg9gAxHLza','uhjVy2vZCYbxyxjUAw5NoIa','rK9zD0C','CgzUCvK','AxntBg93','wfrlBfe','zgvIDwC','mti0nta4off4rgHJzW','lI9SB2DZlW','vfjbtLnbq1rjt05FuK9mtejbq0S','Bwf4','tK9erv9ftLy','AxLVBMC','y3jLzgvUDgLHBa','Cgf0Aa','rxPWzgm','te9hx1rpx0zjteu','ig9UihbVCNqG','ugnrqwm','DhjPBq','mtjrywP2qwu','ANnVBG','C3rKvgLTzuz1BMn0Aw9UCW','zMfSC2u','DLv4z28','nfHIDeP5ua','C3rHy2S','te9hx0rjuG','su5trvju','ms4WlJu','wMrAsui','yxbPs2v5','q09ntuLu','ic0G','zxHPC3rZu3LUyW','DNDbtxO','vfjbtLnbq1rjt05FqKvhsu4','y2HPBgq','qundvNa','oI8V','ywnJzxnZx3rVA2vU','rxjYB3i','u0vsvKLdrv9oqu1f','u1LZDfa','B3v2yuy','ChjVAMvJDf9SB2fKzwq','C29Tzq','qvbqx1zfuLnjt04','sLDux1nfq1jfva','ody5mtL3B2zpugu','E21Zz30','DgvZDa','zgf0ywjHC2vFy29UzMLN','vu1xrK8','Bwf0y2G','Cg9YDa','vhLRthG','CfP0rha','yM9KEq','BMfTzq','u1fmx0Xpr19qqvjbtvm','oti4ndCWzNbJuM9M','Bwv0Ag9K','Bg9N','AuflEgu','rxrJyvO','ChjPDMf0zv9RzxK','EejxzLy','D2T1vLa','y29UBMvJDgLVBG','rfjpua','yxbWlMXVzW','sw50zxjUywWGC2vYDMvYigvYCM9Y','mw5NC0XeAW','Dg9mB3DLCKnHC2u','De55tLu','C3rHCNrZv2L0Aa','DvPTt1e','zw52','Ew5Qy2i','ChjVAMvJDa','Ec1Yzxf1zxn0lwLK','C2vYDMvYx3jLywr5','mZa1mJqYmhHtz1jyEq','CgLUBY1WCMv0DhK','DhLWzq','y3z2','sNfusvG','mZeWnJGWqvn1teHo','AM9PBG','Aw5MBW','C2vYDMLJzuLUzM8','s21HwMm','tKLxv3i','BgvUz3rO','v3z0B2u','Eez5qM4','u2vYDMvYihn0yxj0Aw5NoIa','zfrJzNK','D2fYBMLUzW','y29Kzq','y3jLzgvUDgLHBhm','EMHLBxO','uK9mtejbq0S','rermx0rst1a','vu5ltK9xtG','q1jjveLdquW','z2v0','zgv2zwXVCg1LBNq','CxvLCNK','Cwrfv2q','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','icdIHPiG'];a0_0xad6a=function(){return _0x531510;};return a0_0xad6a();}module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
@@ -1 +1 @@
1
- const a0_0x1293d6=a0_0x2a01;function a0_0x2a01(_0x40b593,_0x2871e3){_0x40b593=_0x40b593-0x10c;const _0x31cfe0=a0_0x31cf();let _0x2a0149=_0x31cfe0[_0x40b593];if(a0_0x2a01['WsPhqe']===undefined){var _0x52c5d5=function(_0x2f52e3){const _0x4c79c3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2133e0='',_0x1932fe='';for(let _0x13e88d=0x0,_0x468811,_0x510589,_0x28ff46=0x0;_0x510589=_0x2f52e3['charAt'](_0x28ff46++);~_0x510589&&(_0x468811=_0x13e88d%0x4?_0x468811*0x40+_0x510589:_0x510589,_0x13e88d++%0x4)?_0x2133e0+=String['fromCharCode'](0xff&_0x468811>>(-0x2*_0x13e88d&0x6)):0x0){_0x510589=_0x4c79c3['indexOf'](_0x510589);}for(let _0x294ec7=0x0,_0x554988=_0x2133e0['length'];_0x294ec7<_0x554988;_0x294ec7++){_0x1932fe+='%'+('00'+_0x2133e0['charCodeAt'](_0x294ec7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1932fe);};a0_0x2a01['RSHdOy']=_0x52c5d5,a0_0x2a01['tkmxwA']={},a0_0x2a01['WsPhqe']=!![];}const _0x127454=_0x31cfe0[0x0],_0x56a49b=_0x40b593+_0x127454,_0x1d6fb9=a0_0x2a01['tkmxwA'][_0x56a49b];return!_0x1d6fb9?(_0x2a0149=a0_0x2a01['RSHdOy'](_0x2a0149),a0_0x2a01['tkmxwA'][_0x56a49b]=_0x2a0149):_0x2a0149=_0x1d6fb9,_0x2a0149;}(function(_0xb842db,_0x4ab75b){const _0x103d9e=a0_0x2a01,_0x595764=_0xb842db();while(!![]){try{const _0x551c41=parseInt(_0x103d9e(0x118))/0x1+parseInt(_0x103d9e(0x113))/0x2+-parseInt(_0x103d9e(0x114))/0x3*(parseInt(_0x103d9e(0x121))/0x4)+parseInt(_0x103d9e(0x11b))/0x5*(-parseInt(_0x103d9e(0x12c))/0x6)+-parseInt(_0x103d9e(0x11e))/0x7+parseInt(_0x103d9e(0x11f))/0x8*(parseInt(_0x103d9e(0x129))/0x9)+parseInt(_0x103d9e(0x112))/0xa;if(_0x551c41===_0x4ab75b)break;else _0x595764['push'](_0x595764['shift']());}catch(_0x101ed){_0x595764['push'](_0x595764['shift']());}}}(a0_0x31cf,0x2b00a));const dbType=(process['env'][a0_0x1293d6(0x123)]||a0_0x1293d6(0x116))[a0_0x1293d6(0x11d)]();let executeQuery;if(dbType==='oracle'){const oracleDb=require(a0_0x1293d6(0x127));executeQuery=(_0x19251f,_0x311b14)=>oracleDb['executeQuery'](_0x19251f,_0x311b14);}else{if(dbType===a0_0x1293d6(0x137)){const mysqlDb=require(a0_0x1293d6(0x12e));executeQuery=(_0x1d5d13,_0x59c97e)=>mysqlDb['executeQuery'](_0x1d5d13,_0x59c97e);}else executeQuery=require('./db')['executeQuery'];}function a0_0x31cf(){const _0xfce07b=['AgfZ','z2v0','BwvZC2fNzq','lI9KyI1VCMfJBgu','y2XLyxjdywnOzq','mJK2mJCXsLDmExn5','u0vmrunuia','BgvUz3rO','nNPxAMPLBq','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','lI9KyI1TExnXBa','DhjPBq','zM9YrwfJAa','Bff4D28','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','C2v0','CuTnBKC','BxLZCwW','u0vgCLO','vNjdAwO','Bg9HzeXVB2T1CfrHyMXL','iIbUB3qGzM91BMqGAw4G','q2nPz0S','A2v5CW','CxndC0K','Bg9VA3vWq2fJAgu','ntu5mtqWuLHkuhbq','nJu1mJm4yuDxvevJ','nti3mZCZrenyDevw','ChvZAa','Cg9ZDgDYzxnXBa','iezst00G','mJy1mtHRAMLVv1q','CMvZB2X2zuXVB2T1CfzHBhvL','Dxzdzwi','mZaYntG1ufPjsvjn','vMfSDwuGiG','Dg9mB3DLCKnHC2u','mJeZnJy4AgLkrgHh','ohffDvD4sW','Aw5MBW','nfDLAMnTsW','A2rbzMK','rejFvfLqrq'];a0_0x31cf=function(){return _0xfce07b;};return a0_0x31cf();}const {logger}=require('./logger');class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x1293d6(0x128)](){const _0x306389=a0_0x1293d6,_0x39f57d={'CcigK':'lookup_cache_cleared'};this[_0x306389(0x111)]['clear'](),logger['debug']({'event':_0x39f57d[_0x306389(0x10e)]},'Lookup\x20cache\x20cleared');}async[a0_0x1293d6(0x10c)](_0x4a68ce,_0x1ab3fe,_0x10bd1f){const _0x32783d=a0_0x1293d6,_0x2abe76={'qsCsI':function(_0x16097e,_0x8f5c16){return _0x16097e!==_0x8f5c16;},'uvCeb':function(_0x3fb110,_0xdcef42){return _0x3fb110(_0xdcef42);},'qKMnG':function(_0x58570c,_0x3d0a73){return _0x58570c(_0x3d0a73);},'uedYv':'lookup_table_loaded'},_0x123fb4=_0x4a68ce+':'+_0x1ab3fe+':'+_0x10bd1f;if(this['lookupCache'][_0x32783d(0x124)](_0x123fb4))return this[_0x32783d(0x111)]['get'](_0x123fb4);try{const _0xf79ba=_0x32783d(0x12a)+_0x10bd1f+',\x20'+_0x1ab3fe+_0x32783d(0x117)+_0x4a68ce,_0x1bb41b=await _0x2abe76[_0x32783d(0x136)](executeQuery,_0xf79ba),_0x190e0b=new Map();return _0x1bb41b[_0x32783d(0x130)](_0x366099=>{const _0x290d9a=_0x32783d,_0x5b8d22=_0x2abe76[_0x290d9a(0x110)](_0x366099[_0x1ab3fe],undefined)?_0x366099[_0x1ab3fe]:_0x366099[_0x1ab3fe['toUpperCase']()],_0x67289b=_0x2abe76['qsCsI'](_0x366099[_0x10bd1f],undefined)?_0x366099[_0x10bd1f]:_0x366099[_0x10bd1f['toUpperCase']()];_0x5b8d22!==null&&_0x2abe76['qsCsI'](_0x5b8d22,undefined)&&(_0x190e0b['set'](_0x2abe76[_0x290d9a(0x11a)](String,_0x5b8d22)[_0x290d9a(0x11d)]()[_0x290d9a(0x12f)](),_0x67289b),_0x190e0b[_0x290d9a(0x135)](_0x2abe76['uvCeb'](String,_0x5b8d22)['trim'](),_0x67289b));}),this[_0x32783d(0x111)]['set'](_0x123fb4,_0x190e0b),logger[_0x32783d(0x120)]({'event':_0x2abe76['uedYv'],'table':_0x4a68ce,'column':_0x1ab3fe,'count':_0x1bb41b['length']},'Lookup\x20table\x20loaded:\x20'+_0x4a68ce),_0x190e0b;}catch(_0x181e32){logger['error']({'event':_0x32783d(0x134),'table':_0x4a68ce,'error':_0x181e32[_0x32783d(0x126)]},_0x32783d(0x132)+_0x4a68ce);throw _0x181e32;}}[a0_0x1293d6(0x119)](_0x10dc16,_0x3a7096){const _0x325e12=a0_0x1293d6;if(_0x10dc16===null||_0x10dc16===undefined||_0x10dc16==='')return null;const _0x491504=String(_0x10dc16)['trim']();if(_0x3a7096[_0x325e12(0x124)](_0x491504))return _0x3a7096[_0x325e12(0x125)](_0x491504);const _0x11c0de=_0x491504[_0x325e12(0x11d)]();if(_0x3a7096['has'](_0x11c0de))return _0x3a7096['get'](_0x11c0de);return null;}async['processLookupFields'](_0x2186ed,_0xc7f266){const _0x28e214=a0_0x1293d6,_0x37786f={'lQxwo':function(_0x153cd1,_0x5a4496){return _0x153cd1===_0x5a4496;},'Venyh':function(_0x2c9acb,_0x22476a){return _0x2c9acb===_0x22476a;},'ZnSsm':_0x28e214(0x12d),'VrCij':'Lookup\x20fields\x20processed'};if(!_0xc7f266||_0x37786f['Venyh'](Object['keys'](_0xc7f266)[_0x28e214(0x12b)],0x0))return{'processedRows':_0x2186ed,'errors':[]};const _0x4874df=[],_0x4d64ee=new Map();for(const [_0x4ad43a,_0x15b9c4]of Object['entries'](_0xc7f266)){const {lookupTable:_0xc4010f,lookupColumn:_0x492a25,lookupIdColumn:_0x4ef82e}=_0x15b9c4,_0x52c687=_0xc4010f+':'+_0x492a25+':'+_0x4ef82e;if(!_0x4d64ee[_0x28e214(0x124)](_0x52c687)){const _0x412f09=await this[_0x28e214(0x10c)](_0xc4010f,_0x492a25,_0x4ef82e);_0x4d64ee['set'](_0x52c687,_0x412f09);}}const _0x43a997=_0x2186ed['map']((_0x52a72c,_0x1e183b)=>{const _0xcdb6c3=_0x28e214,_0x30b87b={..._0x52a72c};for(const [_0x20cdf4,_0x5ac710]of Object['entries'](_0xc7f266)){const {lookupTable:_0x4ee054,lookupColumn:_0x271bb7,lookupIdColumn:_0x2a2720,targetField:_0x1a97b1,required:_0x4b5cf0}=_0x5ac710,_0xed9b12=_0x4ee054+':'+_0x271bb7+':'+_0x2a2720,_0x3eacab=_0x4d64ee[_0xcdb6c3(0x125)](_0xed9b12),_0x144aaf=_0x52a72c[_0x20cdf4];if((_0x144aaf===null||_0x144aaf===undefined||_0x37786f[_0xcdb6c3(0x131)](_0x144aaf,''))&&!_0x4b5cf0){_0x30b87b[_0x1a97b1]=null;continue;}const _0x3544ea=this['resolveLookupValue'](_0x144aaf,_0x3eacab);_0x3544ea!==null?_0x30b87b[_0x1a97b1]=_0x3544ea:(_0x4b5cf0&&_0x4874df['push']({'rowIndex':_0x1e183b,'field':_0x20cdf4,'value':_0x144aaf,'targetField':_0x1a97b1,'lookupTable':_0x4ee054,'message':_0xcdb6c3(0x11c)+_0x144aaf+_0xcdb6c3(0x10d)+_0x4ee054}),_0x30b87b[_0x1a97b1]=null);}return _0x30b87b;});return logger['info']({'event':_0x37786f['ZnSsm'],'totalRows':_0x2186ed['length'],'errorCount':_0x4874df['length'],'lookupFieldCount':Object['keys'](_0xc7f266)[_0x28e214(0x12b)]},_0x37786f[_0x28e214(0x139)]),{'processedRows':_0x43a997,'errors':_0x4874df};}['getDistinctValues'](_0x50e6f8,_0x37cc8f){const _0x41c34b={'kdAfi':function(_0x3364eb,_0x424304){return _0x3364eb!==_0x424304;},'IxlcM':function(_0x231c74,_0x4f1b10){return _0x231c74!==_0x4f1b10;},'SEFrZ':function(_0x17648f,_0x355c0c){return _0x17648f(_0x355c0c);}},_0x4b9cf2=new Set();return _0x50e6f8['forEach'](_0x4b3798=>{const _0x966d67=a0_0x2a01,_0xe96cc2=_0x4b3798[_0x37cc8f];_0x41c34b[_0x966d67(0x122)](_0xe96cc2,null)&&_0x41c34b['IxlcM'](_0xe96cc2,undefined)&&_0xe96cc2!==''&&_0x4b9cf2['add'](_0x41c34b[_0x966d67(0x138)](String,_0xe96cc2)[_0x966d67(0x12f)]());}),Array['from'](_0x4b9cf2);}async['validateLookupValues'](_0x2172d6,_0x18b41d){const _0x3f4467=a0_0x1293d6,_0x3b4cc1={'WcAYS':function(_0x2b6a53,_0x176388){return _0x2b6a53===_0x176388;}};if(!_0x18b41d||Object[_0x3f4467(0x10f)](_0x18b41d)[_0x3f4467(0x12b)]===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x3fb6fa=[],_0x4b5811={};for(const [_0x254a63,_0x3f96d3]of Object['entries'](_0x18b41d)){const {lookupTable:_0x3f911b,lookupColumn:_0x1b2196,lookupIdColumn:_0x5619fc,required:_0x507168}=_0x3f96d3,_0x129e03=this['getDistinctValues'](_0x2172d6,_0x254a63),_0x1d2c12=await this[_0x3f4467(0x10c)](_0x3f911b,_0x1b2196,_0x5619fc),_0x5384c7=[],_0x9d1f88=[];_0x129e03['forEach'](_0x3dd2ab=>{const _0x4d3790=_0x3f4467,_0x551741=this[_0x4d3790(0x119)](_0x3dd2ab,_0x1d2c12);_0x551741!==null?_0x9d1f88[_0x4d3790(0x115)](_0x3dd2ab):_0x5384c7['push'](_0x3dd2ab);});if(_0x5384c7[_0x3f4467(0x12b)]>0x0&&_0x507168){_0x3fb6fa[_0x3f4467(0x115)]({'field':_0x254a63,'lookupTable':_0x3f911b,'invalidValues':_0x5384c7,'message':_0x5384c7[_0x3f4467(0x12b)]+_0x3f4467(0x133)+_0x3f911b});const _0x4dbb48=[];_0x1d2c12['forEach']((_0xe043f1,_0x2eecca)=>{const _0x3485ab=_0x3f4467;if(_0x3b4cc1['WcAYS'](_0x2eecca,_0x2eecca['toLowerCase']()))return;_0x4dbb48[_0x3485ab(0x115)](_0x2eecca);}),_0x4b5811[_0x254a63]={'invalidValues':_0x5384c7,'availableValues':_0x4dbb48['slice'](0x0,0x32)};}}return{'valid':_0x3fb6fa['length']===0x0,'errors':_0x3fb6fa,'suggestions':_0x4b5811};}}module['exports']=new LookupResolver();
1
+ const a0_0x1f94f7=a0_0x15f3;(function(_0x116ef9,_0x4ed6b1){const _0x2e58c3=a0_0x15f3,_0x10ded1=_0x116ef9();while(!![]){try{const _0xbe31e4=-parseInt(_0x2e58c3(0x156))/0x1+parseInt(_0x2e58c3(0x15c))/0x2+-parseInt(_0x2e58c3(0x147))/0x3+parseInt(_0x2e58c3(0x13c))/0x4+parseInt(_0x2e58c3(0x14f))/0x5*(-parseInt(_0x2e58c3(0x160))/0x6)+-parseInt(_0x2e58c3(0x15f))/0x7+parseInt(_0x2e58c3(0x139))/0x8;if(_0xbe31e4===_0x4ed6b1)break;else _0x10ded1['push'](_0x10ded1['shift']());}catch(_0x40eb20){_0x10ded1['push'](_0x10ded1['shift']());}}}(a0_0x5be8,0x22611));const dbType=(process['env'][a0_0x1f94f7(0x14b)]||'postgresql')['toLowerCase']();let executeQuery;if(dbType===a0_0x1f94f7(0x151)){const oracleDb=require(a0_0x1f94f7(0x14e));executeQuery=(_0x5b4218,_0x3e28f2)=>oracleDb[a0_0x1f94f7(0x142)](_0x5b4218,_0x3e28f2);}else{if(dbType===a0_0x1f94f7(0x162)){const mysqlDb=require('./db-mysql');executeQuery=(_0x2ef663,_0x5fbf46)=>mysqlDb['executeQuery'](_0x2ef663,_0x5fbf46);}else executeQuery=require('./db')[a0_0x1f94f7(0x142)];}function a0_0x15f3(_0x503781,_0x2312da){_0x503781=_0x503781-0x137;const _0x5be808=a0_0x5be8();let _0x15f302=_0x5be808[_0x503781];if(a0_0x15f3['OgeXdJ']===undefined){var _0x504c74=function(_0x2f866a){const _0x3580c3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x39a49b='',_0x507a58='';for(let _0x3c6480=0x0,_0x594419,_0x305cce,_0x2ac2b9=0x0;_0x305cce=_0x2f866a['charAt'](_0x2ac2b9++);~_0x305cce&&(_0x594419=_0x3c6480%0x4?_0x594419*0x40+_0x305cce:_0x305cce,_0x3c6480++%0x4)?_0x39a49b+=String['fromCharCode'](0xff&_0x594419>>(-0x2*_0x3c6480&0x6)):0x0){_0x305cce=_0x3580c3['indexOf'](_0x305cce);}for(let _0x3a3f32=0x0,_0x2db8bd=_0x39a49b['length'];_0x3a3f32<_0x2db8bd;_0x3a3f32++){_0x507a58+='%'+('00'+_0x39a49b['charCodeAt'](_0x3a3f32)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x507a58);};a0_0x15f3['ytINdk']=_0x504c74,a0_0x15f3['uPAlSv']={},a0_0x15f3['OgeXdJ']=!![];}const _0x23dff6=_0x5be808[0x0],_0x305dec=_0x503781+_0x23dff6,_0x24a48a=a0_0x15f3['uPAlSv'][_0x305dec];return!_0x24a48a?(_0x15f302=a0_0x15f3['ytINdk'](_0x15f302),a0_0x15f3['uPAlSv'][_0x305dec]=_0x15f302):_0x15f302=_0x24a48a,_0x15f302;}const {logger}=require('./logger');class LookupResolver{constructor(){this['lookupCache']=new Map();}['clearCache'](){const _0x4c5c9b=a0_0x1f94f7,_0x508a51={'bKVPA':_0x4c5c9b(0x13d)};this['lookupCache']['clear'](),logger['debug']({'event':_0x4c5c9b(0x14d)},_0x508a51['bKVPA']);}async[a0_0x1f94f7(0x158)](_0x364dc6,_0x3cb931,_0x41e446){const _0x4e3f7c=a0_0x1f94f7,_0x432522={'Dsjud':function(_0x34cb9d,_0x1a1db3){return _0x34cb9d!==_0x1a1db3;},'cXsVO':function(_0x1bb9cf,_0x3b1eb8){return _0x1bb9cf(_0x3b1eb8);}},_0x37c51d=_0x364dc6+':'+_0x3cb931+':'+_0x41e446;if(this[_0x4e3f7c(0x15e)][_0x4e3f7c(0x148)](_0x37c51d))return this[_0x4e3f7c(0x15e)]['get'](_0x37c51d);try{const _0x47047b='SELECT\x20'+_0x41e446+',\x20'+_0x3cb931+'\x20FROM\x20'+_0x364dc6,_0x44e7d3=await _0x432522['cXsVO'](executeQuery,_0x47047b),_0x3c708c=new Map();return _0x44e7d3[_0x4e3f7c(0x14a)](_0x2f30c1=>{const _0x5d59b5=_0x4e3f7c,_0x317bdd=_0x2f30c1[_0x3cb931]!==undefined?_0x2f30c1[_0x3cb931]:_0x2f30c1[_0x3cb931['toUpperCase']()],_0x345518=_0x432522['Dsjud'](_0x2f30c1[_0x41e446],undefined)?_0x2f30c1[_0x41e446]:_0x2f30c1[_0x41e446['toUpperCase']()];_0x432522[_0x5d59b5(0x161)](_0x317bdd,null)&&_0x317bdd!==undefined&&(_0x3c708c['set'](String(_0x317bdd)[_0x5d59b5(0x140)]()['trim'](),_0x345518),_0x3c708c[_0x5d59b5(0x14c)](_0x432522[_0x5d59b5(0x152)](String,_0x317bdd)['trim'](),_0x345518));}),this['lookupCache']['set'](_0x37c51d,_0x3c708c),logger['info']({'event':_0x4e3f7c(0x146),'table':_0x364dc6,'column':_0x3cb931,'count':_0x44e7d3['length']},_0x4e3f7c(0x145)+_0x364dc6),_0x3c708c;}catch(_0x225eb4){logger[_0x4e3f7c(0x154)]({'event':_0x4e3f7c(0x155),'table':_0x364dc6,'error':_0x225eb4['message']},_0x4e3f7c(0x137)+_0x364dc6);throw _0x225eb4;}}[a0_0x1f94f7(0x13f)](_0x53b688,_0x5eaf3c){const _0x5135f5=a0_0x1f94f7,_0x22c333={'dmZiZ':function(_0x9fabcb,_0x4fa43d){return _0x9fabcb===_0x4fa43d;}};if(_0x53b688===null||_0x53b688===undefined||_0x22c333[_0x5135f5(0x141)](_0x53b688,''))return null;const _0x5037e4=String(_0x53b688)['trim']();if(_0x5eaf3c['has'](_0x5037e4))return _0x5eaf3c[_0x5135f5(0x150)](_0x5037e4);const _0x1b8da7=_0x5037e4['toLowerCase']();if(_0x5eaf3c[_0x5135f5(0x148)](_0x1b8da7))return _0x5eaf3c['get'](_0x1b8da7);return null;}async[a0_0x1f94f7(0x144)](_0x469174,_0x289e33){const _0x4ef163=a0_0x1f94f7,_0x28b8e1={'fNQAG':function(_0x12f3de,_0x1d2688){return _0x12f3de!==_0x1d2688;},'pfCPG':function(_0x1deb2e,_0x4bf4a8){return _0x1deb2e===_0x4bf4a8;},'gzaTK':_0x4ef163(0x13a)};if(!_0x289e33||_0x28b8e1['pfCPG'](Object['keys'](_0x289e33)['length'],0x0))return{'processedRows':_0x469174,'errors':[]};const _0x595078=[],_0xce08dd=new Map();for(const [_0x24c706,_0x5b997c]of Object[_0x4ef163(0x13b)](_0x289e33)){const {lookupTable:_0xf7c745,lookupColumn:_0x32bcf7,lookupIdColumn:_0x39fcb0}=_0x5b997c,_0x4081d7=_0xf7c745+':'+_0x32bcf7+':'+_0x39fcb0;if(!_0xce08dd[_0x4ef163(0x148)](_0x4081d7)){const _0x3fdbdf=await this['loadLookupTable'](_0xf7c745,_0x32bcf7,_0x39fcb0);_0xce08dd[_0x4ef163(0x14c)](_0x4081d7,_0x3fdbdf);}}const _0x14bd5b=_0x469174['map']((_0x2516d5,_0x5aa1e9)=>{const _0x4fcd63=_0x4ef163,_0x4be7af={..._0x2516d5};for(const [_0x3c6d12,_0x1a3dcb]of Object[_0x4fcd63(0x13b)](_0x289e33)){const {lookupTable:_0x599575,lookupColumn:_0xc270ee,lookupIdColumn:_0x5f0956,targetField:_0x9e82f8,required:_0x50fcd1}=_0x1a3dcb,_0x134bfc=_0x599575+':'+_0xc270ee+':'+_0x5f0956,_0x58452d=_0xce08dd['get'](_0x134bfc),_0x507fee=_0x2516d5[_0x3c6d12];if((_0x507fee===null||_0x507fee===undefined||_0x507fee==='')&&!_0x50fcd1){_0x4be7af[_0x9e82f8]=null;continue;}const _0x4165c3=this['resolveLookupValue'](_0x507fee,_0x58452d);_0x28b8e1[_0x4fcd63(0x149)](_0x4165c3,null)?_0x4be7af[_0x9e82f8]=_0x4165c3:(_0x50fcd1&&_0x595078['push']({'rowIndex':_0x5aa1e9,'field':_0x3c6d12,'value':_0x507fee,'targetField':_0x9e82f8,'lookupTable':_0x599575,'message':'Value\x20\x22'+_0x507fee+_0x4fcd63(0x15a)+_0x599575}),_0x4be7af[_0x9e82f8]=null);}return _0x4be7af;});return logger['info']({'event':_0x28b8e1['gzaTK'],'totalRows':_0x469174[_0x4ef163(0x138)],'errorCount':_0x595078[_0x4ef163(0x138)],'lookupFieldCount':Object['keys'](_0x289e33)['length']},'Lookup\x20fields\x20processed'),{'processedRows':_0x14bd5b,'errors':_0x595078};}['getDistinctValues'](_0x3460d4,_0x51ab69){const _0xdc6035=a0_0x1f94f7,_0x558f93={'VVRcg':function(_0x503882,_0x30f6d1){return _0x503882!==_0x30f6d1;}},_0x1d6fff=new Set();return _0x3460d4[_0xdc6035(0x14a)](_0x1c7f9b=>{const _0x287d6c=_0xdc6035,_0x4f0174=_0x1c7f9b[_0x51ab69];_0x4f0174!==null&&_0x558f93[_0x287d6c(0x15d)](_0x4f0174,undefined)&&_0x4f0174!==''&&_0x1d6fff[_0x287d6c(0x157)](String(_0x4f0174)['trim']());}),Array['from'](_0x1d6fff);}async['validateLookupValues'](_0x2a1ef0,_0x2cb4c3){const _0x48a229=a0_0x1f94f7,_0x57c8c9={'plWiX':function(_0xfc8f35,_0x33b564){return _0xfc8f35!==_0x33b564;},'lchOV':function(_0x1dd648,_0x15f2b0){return _0x1dd648===_0x15f2b0;}};if(!_0x2cb4c3||_0x57c8c9[_0x48a229(0x163)](Object[_0x48a229(0x143)](_0x2cb4c3)['length'],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x97174d=[],_0x243b99={};for(const [_0x1e5c6e,_0x4e13ca]of Object[_0x48a229(0x13b)](_0x2cb4c3)){const {lookupTable:_0x269d08,lookupColumn:_0x4f4c9c,lookupIdColumn:_0x3bd0cf,required:_0xe81795}=_0x4e13ca,_0x31132d=this[_0x48a229(0x13e)](_0x2a1ef0,_0x1e5c6e),_0x2bbe74=await this['loadLookupTable'](_0x269d08,_0x4f4c9c,_0x3bd0cf),_0x41a6a8=[],_0x221ac0=[];_0x31132d[_0x48a229(0x14a)](_0x30acaf=>{const _0xac6ed7=_0x48a229,_0x584176=this[_0xac6ed7(0x13f)](_0x30acaf,_0x2bbe74);_0x57c8c9[_0xac6ed7(0x15b)](_0x584176,null)?_0x221ac0[_0xac6ed7(0x159)](_0x30acaf):_0x41a6a8['push'](_0x30acaf);});if(_0x41a6a8['length']>0x0&&_0xe81795){_0x97174d['push']({'field':_0x1e5c6e,'lookupTable':_0x269d08,'invalidValues':_0x41a6a8,'message':_0x41a6a8[_0x48a229(0x138)]+'\x20value(s)\x20not\x20found\x20in\x20'+_0x269d08});const _0x429a0e=[];_0x2bbe74[_0x48a229(0x14a)]((_0x363b5f,_0x550c96)=>{const _0x42b137=_0x48a229;if(_0x550c96===_0x550c96[_0x42b137(0x140)]())return;_0x429a0e['push'](_0x550c96);}),_0x243b99[_0x1e5c6e]={'invalidValues':_0x41a6a8,'availableValues':_0x429a0e['slice'](0x0,0x32)};}}return{'valid':_0x97174d['length']===0x0,'errors':_0x97174d,'suggestions':_0x243b99};}}function a0_0x5be8(){const _0x586f91=['rhnQDwq','BxLZCwW','BgnOt1y','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','BgvUz3rO','mJy5odC2oe5Tr3fxrG','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','zw50CMLLCW','mtm3mZy4rvDus2zo','tg9VA3vWignHy2HLignSzwfYzwq','z2v0rgLZDgLUy3rwywX1zxm','CMvZB2X2zuXVB2T1CfzHBhvL','Dg9mB3DLCKnHC2u','zg1AAvO','zxHLy3v0zvf1zxj5','A2v5CW','ChjVy2vZC0XVB2T1CezPzwXKCW','tg9VA3vWihrHyMXLigXVywrLzdOG','Bg9VA3vWx3rHyMXLx2XVywrLza','ntiXmtyWBLfTsNnR','AgfZ','zK5rquC','zM9YrwfJAa','rejFvfLqrq','C2v0','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','lI9KyI1VCMfJBgu','nu1pt0rZDq','z2v0','B3jHy2XL','y1HZvK8','zxHWB3j0CW','zxjYB3i','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','otqYmgH2DvrtqG','ywrK','Bg9HzeXVB2T1CfrHyMXL','ChvZAa','iIbUB3qGzM91BMqGAw4G','CgXxAvG','mtu3mtG4B21lrNre','vLzsy2C','Bg9VA3vWq2fJAgu','mJq0nZm0ufj5wK9H','ntq4mtC4tfndyKfK'];a0_0x5be8=function(){return _0x586f91;};return a0_0x5be8();}module[a0_0x1f94f7(0x153)]=new LookupResolver();
@@ -1 +1 @@
1
- const a0_0x4df584=a0_0xca8f;(function(_0x594f4f,_0x21cde9){const _0x50eab8=a0_0xca8f,_0x345635=_0x594f4f();while(!![]){try{const _0x3aba20=parseInt(_0x50eab8(0xe2))/0x1+parseInt(_0x50eab8(0xe1))/0x2*(parseInt(_0x50eab8(0xef))/0x3)+parseInt(_0x50eab8(0xed))/0x4+-parseInt(_0x50eab8(0xe3))/0x5*(-parseInt(_0x50eab8(0xe8))/0x6)+-parseInt(_0x50eab8(0xd7))/0x7+-parseInt(_0x50eab8(0xe0))/0x8*(-parseInt(_0x50eab8(0xd8))/0x9)+-parseInt(_0x50eab8(0xda))/0xa*(parseInt(_0x50eab8(0xd9))/0xb);if(_0x3aba20===_0x21cde9)break;else _0x345635['push'](_0x345635['shift']());}catch(_0x4cb4f5){_0x345635['push'](_0x345635['shift']());}}}(a0_0x3af6,0x79b4c));const fs=require('fs')['promises'],path=require('path'),{logger}=require('./logger');function a0_0x3af6(){const _0x149be3=['nZC4nZaWwwHkwu51','EuXSAe4','ntDqwvr5EKm','lMPZB24','CgfYC2u','CMvHzezPBgu','DxrMoa','zMLLBgroyw1L','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','z2v0','y2fJAgu','C2v0','Bg9HzfbHEwXVywq','Cw5owxe','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','yKfPEuG','rfLJqvm','mJGZndi3mKLRAK1suW','ovjVAu95yq','mta5mZK1odHyvvLzrKi','mJbgAeH0zMC','z2v0rxHWB3j0q29UzMLN','ywn0Aw9U','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','AgfZ','zgf0yxrHyMXLC1f1zxj5','nJq4mtGWohHrqvjItW','otm4odz6vwn3u24','mtuYnZK4tKz2vLbf','mta1mZuWnu1SrLzQyW','zxjYB3i','DgfIBgvoyw1L','Bg9HzfbHEwXVywrcEu5HBwu','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','mJreDw9YAw8','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK','AM9PBG','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','zMLLBgrmywjLBhm'];a0_0x3af6=function(){return _0x149be3;};return a0_0x3af6();}function a0_0xca8f(_0x197ae2,_0x4abf64){_0x197ae2=_0x197ae2-0xd1;const _0x3af6cc=a0_0x3af6();let _0xca8fe9=_0x3af6cc[_0x197ae2];if(a0_0xca8f['HEUaQe']===undefined){var _0x370d95=function(_0x24ad94){const _0x3ee88e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x29ec46='',_0x38dd14='';for(let _0x185a81=0x0,_0x14a7b8,_0x11dd1d,_0x5863ab=0x0;_0x11dd1d=_0x24ad94['charAt'](_0x5863ab++);~_0x11dd1d&&(_0x14a7b8=_0x185a81%0x4?_0x14a7b8*0x40+_0x11dd1d:_0x11dd1d,_0x185a81++%0x4)?_0x29ec46+=String['fromCharCode'](0xff&_0x14a7b8>>(-0x2*_0x185a81&0x6)):0x0){_0x11dd1d=_0x3ee88e['indexOf'](_0x11dd1d);}for(let _0x19ff2f=0x0,_0x4cfb0d=_0x29ec46['length'];_0x19ff2f<_0x4cfb0d;_0x19ff2f++){_0x38dd14+='%'+('00'+_0x29ec46['charCodeAt'](_0x19ff2f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x38dd14);};a0_0xca8f['PlImtn']=_0x370d95,a0_0xca8f['eQltFG']={},a0_0xca8f['HEUaQe']=!![];}const _0x9ac11a=_0x3af6cc[0x0],_0x254abf=_0x197ae2+_0x9ac11a,_0x3b839f=a0_0xca8f['eQltFG'][_0x254abf];return!_0x3b839f?(_0xca8fe9=a0_0xca8f['PlImtn'](_0xca8fe9),a0_0xca8f['eQltFG'][_0x254abf]=_0xca8fe9):_0xca8fe9=_0x3b839f,_0xca8fe9;}class PayloadLoader{constructor(){const _0x2e0f27=a0_0xca8f,_0x3f5c45={'yLlhN':'../../payload'};this['payloadDir']=path[_0x2e0f27(0xea)](__dirname,_0x3f5c45[_0x2e0f27(0xee)]),this[_0x2e0f27(0xf7)]=new Map();}async[a0_0x4df584(0xd2)](_0x3dddcc,_0x57903e){const _0x4ec802=a0_0x4df584,_0x519824={'qnNYq':'payload_loaded','EZCVd':_0x4ec802(0xeb)},_0x4ec9e2=_0x3dddcc+':'+_0x57903e;if(this[_0x4ec802(0xf7)][_0x4ec802(0xde)](_0x4ec9e2))return this[_0x4ec802(0xf7)]['get'](_0x4ec9e2);const _0x2c5432=path['join'](this['payloadDir'],_0x3dddcc+'_'+_0x57903e+_0x4ec802(0xf0));try{const _0x7b103=await fs['readFile'](_0x2c5432,'utf8'),_0x3f2046=JSON[_0x4ec802(0xf1)](_0x7b103);return this[_0x4ec802(0xf7)]['set'](_0x4ec9e2,_0x3f2046),logger['debug']({'event':_0x519824[_0x4ec802(0xd3)],'project':_0x3dddcc,'resource':_0x57903e},_0x4ec802(0xd4)),_0x3f2046;}catch(_0x48d564){logger[_0x4ec802(0xe4)]({'event':_0x519824['EZCVd'],'project':_0x3dddcc,'resource':_0x57903e,'error':_0x48d564['message']},_0x4ec802(0xdd));throw new Error('Payload\x20not\x20found:\x20'+_0x3dddcc+'_'+_0x57903e);}}async[a0_0x4df584(0xe6)](_0x260f3a){const _0x2ff1d7=a0_0x4df584,_0x4d1992={'cMVXU':_0x2ff1d7(0xe7)},_0x55153d='payload:'+_0x260f3a;if(this['cache'][_0x2ff1d7(0xde)](_0x55153d))return this['cache'][_0x2ff1d7(0xf6)](_0x55153d);const _0x50aaff=path[_0x2ff1d7(0xea)](this['payloadDir'],_0x260f3a+'.json');try{const _0x2b8df5=await fs[_0x2ff1d7(0xf2)](_0x50aaff,_0x2ff1d7(0xf3)),_0x5ec4c9=JSON['parse'](_0x2b8df5);return this[_0x2ff1d7(0xf7)][_0x2ff1d7(0xd1)](_0x55153d,_0x5ec4c9),logger['debug']({'event':'payload_loaded','payloadName':_0x260f3a},_0x4d1992['cMVXU']),_0x5ec4c9;}catch(_0x189712){logger[_0x2ff1d7(0xe4)]({'event':_0x2ff1d7(0xeb),'payloadName':_0x260f3a,'error':_0x189712['message']},'Failed\x20to\x20load\x20payload\x20by\x20name');throw new Error('Payload\x20not\x20found:\x20'+_0x260f3a);}}['isActionEnabled'](_0x2a7ddc,_0x2c8fca){const _0x12b196=a0_0x4df584,_0x5cf383={'DYcAS':function(_0xc99240,_0x253c43){return _0xc99240===_0x253c43;}};return _0x2a7ddc['action']&&_0x5cf383[_0x12b196(0xd6)](_0x2a7ddc[_0x12b196(0xdc)][_0x2c8fca],!![]);}[a0_0x4df584(0xdb)](_0x2812ec){const _0x5217d1=a0_0x4df584;return{'columns':_0x2812ec[_0x5217d1(0xf4)]||[],'filename':_0x2812ec[_0x5217d1(0xe5)]['replace']('.','-')+'-export','datatablesQuery':_0x2812ec[_0x5217d1(0xdf)]||null,'columnFormats':_0x2812ec['columnFormats']||null,'fieldLabels':_0x2812ec[_0x5217d1(0xec)]||null};}['clearCache'](){const _0x9cd597=a0_0x4df584,_0x52e0a2={'bAiyH':_0x9cd597(0xe9),'ORqfV':_0x9cd597(0xf5)};this['cache']['clear'](),logger['info']({'event':_0x52e0a2[_0x9cd597(0xd5)]},_0x52e0a2['ORqfV']);}}module['exports']=new PayloadLoader();
1
+ const a0_0x553192=a0_0x4dd4;(function(_0x1bc561,_0x2deb10){const _0x586b49=a0_0x4dd4,_0x4b19c0=_0x1bc561();while(!![]){try{const _0xcd0260=parseInt(_0x586b49(0x16c))/0x1+-parseInt(_0x586b49(0x17b))/0x2*(parseInt(_0x586b49(0x165))/0x3)+-parseInt(_0x586b49(0x15f))/0x4*(-parseInt(_0x586b49(0x174))/0x5)+parseInt(_0x586b49(0x176))/0x6+-parseInt(_0x586b49(0x163))/0x7*(parseInt(_0x586b49(0x169))/0x8)+parseInt(_0x586b49(0x16f))/0x9*(parseInt(_0x586b49(0x181))/0xa)+-parseInt(_0x586b49(0x179))/0xb;if(_0xcd0260===_0x2deb10)break;else _0x4b19c0['push'](_0x4b19c0['shift']());}catch(_0x4cf9fa){_0x4b19c0['push'](_0x4b19c0['shift']());}}}(a0_0xc543,0xc9a48));const fs=require('fs')[a0_0x553192(0x160)],path=require('path'),{logger}=require('./logger');function a0_0x4dd4(_0x4a92f5,_0x3c4613){_0x4a92f5=_0x4a92f5-0x157;const _0xc5437d=a0_0xc543();let _0x4dd471=_0xc5437d[_0x4a92f5];if(a0_0x4dd4['ITQtrQ']===undefined){var _0x9dfc6e=function(_0x3f55e8){const _0x14847f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3be755='',_0x16b6a0='';for(let _0x5a40d8=0x0,_0x51d08d,_0xb45d9,_0x54ced4=0x0;_0xb45d9=_0x3f55e8['charAt'](_0x54ced4++);~_0xb45d9&&(_0x51d08d=_0x5a40d8%0x4?_0x51d08d*0x40+_0xb45d9:_0xb45d9,_0x5a40d8++%0x4)?_0x3be755+=String['fromCharCode'](0xff&_0x51d08d>>(-0x2*_0x5a40d8&0x6)):0x0){_0xb45d9=_0x14847f['indexOf'](_0xb45d9);}for(let _0xfa1368=0x0,_0x245709=_0x3be755['length'];_0xfa1368<_0x245709;_0xfa1368++){_0x16b6a0+='%'+('00'+_0x3be755['charCodeAt'](_0xfa1368)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x16b6a0);};a0_0x4dd4['tDhYLu']=_0x9dfc6e,a0_0x4dd4['FNiYbV']={},a0_0x4dd4['ITQtrQ']=!![];}const _0x153569=_0xc5437d[0x0],_0x337673=_0x4a92f5+_0x153569,_0x3a8396=a0_0x4dd4['FNiYbV'][_0x337673];return!_0x3a8396?(_0x4dd471=a0_0x4dd4['tDhYLu'](_0x4dd471),a0_0x4dd4['FNiYbV'][_0x337673]=_0x4dd471):_0x4dd471=_0x3a8396,_0x4dd471;}class PayloadLoader{constructor(){const _0x5c8a8d=a0_0x553192;this[_0x5c8a8d(0x172)]=path[_0x5c8a8d(0x15a)](__dirname,'../../payload'),this[_0x5c8a8d(0x168)]=new Map();}async['loadPayload'](_0x2e387d,_0x435d0e){const _0xad1ef6=a0_0x553192,_0x164f21={'FeXpL':'utf8','sGtEl':'Payload\x20loaded\x20successfully'},_0x5d006e=_0x2e387d+':'+_0x435d0e;if(this[_0xad1ef6(0x168)][_0xad1ef6(0x17f)](_0x5d006e))return this['cache'][_0xad1ef6(0x167)](_0x5d006e);const _0x1be5e0=path['join'](this[_0xad1ef6(0x172)],_0x2e387d+'_'+_0x435d0e+'.json');try{const _0x4e234b=await fs['readFile'](_0x1be5e0,_0x164f21[_0xad1ef6(0x16e)]),_0x75df14=JSON[_0xad1ef6(0x162)](_0x4e234b);return this['cache']['set'](_0x5d006e,_0x75df14),logger['debug']({'event':'payload_loaded','project':_0x2e387d,'resource':_0x435d0e},_0x164f21[_0xad1ef6(0x180)]),_0x75df14;}catch(_0x2d64f7){logger[_0xad1ef6(0x15b)]({'event':_0xad1ef6(0x16d),'project':_0x2e387d,'resource':_0x435d0e,'error':_0x2d64f7[_0xad1ef6(0x173)]},'Failed\x20to\x20load\x20payload');throw new Error(_0xad1ef6(0x177)+_0x2e387d+'_'+_0x435d0e);}}async[a0_0x553192(0x159)](_0x5c62e5){const _0x27d181=a0_0x553192,_0x3a9fae={'sQUfe':_0x27d181(0x175)},_0x3205f1='payload:'+_0x5c62e5;if(this['cache']['has'](_0x3205f1))return this['cache'][_0x27d181(0x167)](_0x3205f1);const _0x9bf417=path[_0x27d181(0x15a)](this[_0x27d181(0x172)],_0x5c62e5+'.json');try{const _0x1ab38f=await fs[_0x27d181(0x15d)](_0x9bf417,_0x27d181(0x17c)),_0x3c297a=JSON['parse'](_0x1ab38f);return this[_0x27d181(0x168)][_0x27d181(0x161)](_0x3205f1,_0x3c297a),logger[_0x27d181(0x178)]({'event':'payload_loaded','payloadName':_0x5c62e5},'Payload\x20loaded\x20successfully\x20by\x20name'),_0x3c297a;}catch(_0x4271a8){logger[_0x27d181(0x15b)]({'event':_0x27d181(0x16d),'payloadName':_0x5c62e5,'error':_0x4271a8[_0x27d181(0x173)]},_0x3a9fae[_0x27d181(0x170)]);throw new Error(_0x27d181(0x177)+_0x5c62e5);}}[a0_0x553192(0x166)](_0x524f3f,_0x20f88e){const _0x17caef=a0_0x553192,_0x2b1eb7={'BERYo':function(_0x1ee761,_0x166cf3){return _0x1ee761===_0x166cf3;}};return _0x524f3f[_0x17caef(0x17d)]&&_0x2b1eb7['BERYo'](_0x524f3f['action'][_0x20f88e],!![]);}[a0_0x553192(0x171)](_0x96c752){const _0x27d829=a0_0x553192;return{'columns':_0x96c752['fieldName']||[],'filename':_0x96c752[_0x27d829(0x15e)]['replace']('.','-')+_0x27d829(0x157),'datatablesQuery':_0x96c752[_0x27d829(0x15c)]||null,'columnFormats':_0x96c752['columnFormats']||null,'fieldLabels':_0x96c752['fieldLabels']||null};}[a0_0x553192(0x16a)](){const _0x2e50ee=a0_0x553192,_0x30031a={'OMYjs':_0x2e50ee(0x164),'Lskdr':_0x2e50ee(0x17e)};this[_0x2e50ee(0x168)]['clear'](),logger['info']({'event':_0x30031a[_0x2e50ee(0x17a)]},_0x30031a[_0x2e50ee(0x16b)]);}}module[a0_0x553192(0x158)]=new PayloadLoader();function a0_0xc543(){const _0x1cea30=['y2fJAgu','mJrTs0n6yw8','y2XLyxjdywnOzq','thnRzhi','mtiZmta3m3fmrvDiwq','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','rMvyCeW','mtCXourTAerLqW','C1fvzMu','z2v0rxHWB3j0q29UzMLN','Cgf5Bg9HzerPCG','BwvZC2fNzq','mti3mZq0nvbqzu9Qsa','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','otCZnZaYohbrANDiDG','ugf5Bg9HzcbUB3qGzM91BMq6ia','zgvIDwC','mti1mJC5mZnND2nfB2q','t01zANm','mti1mJaXogfWsMXQsa','DxrMoa','ywn0Aw9U','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','AgfZ','C0D0rwW','nZa2mfzqEhj0za','lwv4Cg9YDa','zxHWB3j0CW','Bg9HzfbHEwXVywrcEu5HBwu','AM9PBG','zxjYB3i','zgf0yxrHyMXLC1f1zxj5','CMvHzezPBgu','DgfIBgvoyw1L','mJbnCKLQC2i','ChjVBwLZzxm','C2v0','CgfYC2u','mJqZote1n21gCLjKtG','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK','nK95qMHctG','Axnby3rPB25fBMfIBgvK','z2v0'];a0_0xc543=function(){return _0x1cea30;};return a0_0xc543();}
@@ -1 +1 @@
1
- 'use strict';var a0_0x17bc74=a0_0x3571;(function(_0x20d37c,_0x405941){var _0x3221d2=a0_0x3571,_0x2bf9e0=_0x20d37c();while(!![]){try{var _0x22062f=parseInt(_0x3221d2(0x19a))/0x1*(-parseInt(_0x3221d2(0x19e))/0x2)+parseInt(_0x3221d2(0x19b))/0x3*(parseInt(_0x3221d2(0x19c))/0x4)+parseInt(_0x3221d2(0x1a4))/0x5*(parseInt(_0x3221d2(0x1a2))/0x6)+-parseInt(_0x3221d2(0x19d))/0x7+-parseInt(_0x3221d2(0x199))/0x8*(parseInt(_0x3221d2(0x198))/0x9)+parseInt(_0x3221d2(0x19f))/0xa+parseInt(_0x3221d2(0x1a1))/0xb;if(_0x22062f===_0x405941)break;else _0x2bf9e0['push'](_0x2bf9e0['shift']());}catch(_0x294c50){_0x2bf9e0['push'](_0x2bf9e0['shift']());}}}(a0_0x2611,0xdd837));function a0_0x3571(_0x383511,_0x1632ed){_0x383511=_0x383511-0x198;var _0x2611c9=a0_0x2611();var _0x3571aa=_0x2611c9[_0x383511];if(a0_0x3571['tXexLI']===undefined){var _0xf9485=function(_0x3c0d38){var _0x42eaed='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x3681b4='',_0x38c015='';for(var _0x31fdbe=0x0,_0x331d73,_0x4e6206,_0x516a7d=0x0;_0x4e6206=_0x3c0d38['charAt'](_0x516a7d++);~_0x4e6206&&(_0x331d73=_0x31fdbe%0x4?_0x331d73*0x40+_0x4e6206:_0x4e6206,_0x31fdbe++%0x4)?_0x3681b4+=String['fromCharCode'](0xff&_0x331d73>>(-0x2*_0x31fdbe&0x6)):0x0){_0x4e6206=_0x42eaed['indexOf'](_0x4e6206);}for(var _0xce3ee3=0x0,_0x5682d6=_0x3681b4['length'];_0xce3ee3<_0x5682d6;_0xce3ee3++){_0x38c015+='%'+('00'+_0x3681b4['charCodeAt'](_0xce3ee3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x38c015);};a0_0x3571['SAAxSb']=_0xf9485,a0_0x3571['VJeShM']={},a0_0x3571['tXexLI']=!![];}var _0x53bad9=_0x2611c9[0x0],_0x4fbc70=_0x383511+_0x53bad9,_0xd5bb7f=a0_0x3571['VJeShM'][_0x4fbc70];return!_0xd5bb7f?(_0x3571aa=a0_0x3571['SAAxSb'](_0x3571aa),a0_0x3571['VJeShM'][_0x4fbc70]=_0x3571aa):_0x3571aa=_0xd5bb7f,_0x3571aa;}function createResponse(_0xe5e6df,_0x23efb0,_0x45500d=null){var _0x55d2c1=a0_0x3571;return{'success':!![],'statusCode':_0xe5e6df,'message':_0x23efb0,'data':_0x45500d,'timestamp':new Date()[_0x55d2c1(0x1a3)]()};}function createError(_0x1aaabd,_0x51e252,_0x4e107d=null){var _0x3ddd07=a0_0x3571;return{'success':![],'statusCode':_0x1aaabd,'message':_0x51e252,'data':_0x4e107d,'timestamp':new Date()[_0x3ddd07(0x1a3)]()};}function createValidationError(_0x124c10,_0x56dfe8){return{'success':![],'statusCode':0x190,'message':_0x124c10,'data':{'errors':_0x56dfe8},'timestamp':new Date()['toISOString']()};}function a0_0x2611(){var _0x556cfe=['nJqXne1bEenyuG','Dg9ju09tDhjPBMC','nduWnuvRwgPIzG','nZq5ndy2BeHhuxvh','oenKzNvWDW','mti3mJqYn2PTrgzIAq','ntu3odeXAwTVAuLr','mtj5BeTQt1G','otq0nZyWnKLltNPRCq','mKTcD0fLsq','mtu2odC0mhj3B3njzq','zxHWB3j0CW','mJeYodmWnJrbr2TrzNm'];a0_0x2611=function(){return _0x556cfe;};return a0_0x2611();}module[a0_0x17bc74(0x1a0)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
1
+ 'use strict';function a0_0x1b96(){var _0xc57cf7=['nJq2mZmWCNrssePT','mJiZmJmYogTxBfPbzq','mtC0ndG1nNr2reD4vW','nta2nJa4ofDTt0zgrG','zxHWB3j0CW','Dg9ju09tDhjPBMC','mJC2q0Dwy2XM','mta1mZi0ndHLCLjVsKu','mJCWntiXnunzt3LdAG','odq2oxnVtMr2sW'];a0_0x1b96=function(){return _0xc57cf7;};return a0_0x1b96();}var a0_0x1b6e20=a0_0x4a1c;(function(_0x2cb122,_0x34dd88){var _0x4b4c77=a0_0x4a1c,_0x26a2a0=_0x2cb122();while(!![]){try{var _0x1df819=-parseInt(_0x4b4c77(0x81))/0x1+parseInt(_0x4b4c77(0x83))/0x2+parseInt(_0x4b4c77(0x80))/0x3*(parseInt(_0x4b4c77(0x87))/0x4)+-parseInt(_0x4b4c77(0x7f))/0x5+-parseInt(_0x4b4c77(0x84))/0x6+parseInt(_0x4b4c77(0x82))/0x7+parseInt(_0x4b4c77(0x7e))/0x8;if(_0x1df819===_0x34dd88)break;else _0x26a2a0['push'](_0x26a2a0['shift']());}catch(_0x381538){_0x26a2a0['push'](_0x26a2a0['shift']());}}}(a0_0x1b96,0xa3cea));function createResponse(_0x16acda,_0x16bf81,_0x38640f=null){var _0x353b0a=a0_0x4a1c;return{'success':!![],'statusCode':_0x16acda,'message':_0x16bf81,'data':_0x38640f,'timestamp':new Date()[_0x353b0a(0x86)]()};}function a0_0x4a1c(_0x4a3154,_0x35edde){_0x4a3154=_0x4a3154-0x7e;var _0x1b96d8=a0_0x1b96();var _0x4a1c42=_0x1b96d8[_0x4a3154];if(a0_0x4a1c['YKWhSN']===undefined){var _0xebb930=function(_0x53ebf8){var _0x54bd4a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x325eff='',_0x420676='';for(var _0x2fc1ef=0x0,_0x2cf0f9,_0x1b8a8c,_0x462860=0x0;_0x1b8a8c=_0x53ebf8['charAt'](_0x462860++);~_0x1b8a8c&&(_0x2cf0f9=_0x2fc1ef%0x4?_0x2cf0f9*0x40+_0x1b8a8c:_0x1b8a8c,_0x2fc1ef++%0x4)?_0x325eff+=String['fromCharCode'](0xff&_0x2cf0f9>>(-0x2*_0x2fc1ef&0x6)):0x0){_0x1b8a8c=_0x54bd4a['indexOf'](_0x1b8a8c);}for(var _0x239ae2=0x0,_0x57ad30=_0x325eff['length'];_0x239ae2<_0x57ad30;_0x239ae2++){_0x420676+='%'+('00'+_0x325eff['charCodeAt'](_0x239ae2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x420676);};a0_0x4a1c['DbRgez']=_0xebb930,a0_0x4a1c['VycBvg']={},a0_0x4a1c['YKWhSN']=!![];}var _0x57eaad=_0x1b96d8[0x0],_0x26bf45=_0x4a3154+_0x57eaad,_0x2f1091=a0_0x4a1c['VycBvg'][_0x26bf45];return!_0x2f1091?(_0x4a1c42=a0_0x4a1c['DbRgez'](_0x4a1c42),a0_0x4a1c['VycBvg'][_0x26bf45]=_0x4a1c42):_0x4a1c42=_0x2f1091,_0x4a1c42;}function createError(_0x5d283c,_0x44c6bc,_0x33f49f=null){return{'success':![],'statusCode':_0x5d283c,'message':_0x44c6bc,'data':_0x33f49f,'timestamp':new Date()['toISOString']()};}function createValidationError(_0x530a6c,_0x318077){var _0x14c882=a0_0x4a1c;return{'success':![],'statusCode':0x190,'message':_0x530a6c,'data':{'errors':_0x318077},'timestamp':new Date()[_0x14c882(0x86)]()};}module[a0_0x1b6e20(0x85)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
@@ -1 +1 @@
1
- const a0_0x5962f1=a0_0x13d3;function a0_0x3b07(){const _0x18fcd7=['nZe0mJC4B3vkzfnH','odm3nti0oej2C1bKEa','BwvZC2fNzq','BLvYy0G','mtm2nZu0mJrZEufKEg4','zw52','zgLYzwn0','xsbszxrYEsbXDwv1zsa','xsbrDwv1zsa','zg90zw52','xsbtDwnJzxnZzNvSBhKGy29UBMvJDgvKihrVifjHyMjPDe1r','zxHWB3j0CW','CxvLDwu','uKfcqKLutvfFuK9vveLor19lrvK','xsbcAw5KAw5Nia','Aw5LCxvPDMfSzw50igfYzW','mZu0nZuYmxvSu1ntrW','mtbWse1zAhm','zxjYB3i','ndvHrKDUzeW','rxnXv1e','zM91BMq','Bg9N','yw1XCgXPyG','yMLUzff1zxvL','uKfcqKLutvfFvvjm','xsbsywjIAxrnusbJAgfUBMvSignYzwf0zwqGC3vJy2vZC2z1BgX5','ndy0mdm2oe5nzvresW','wLvOrhC','Aw5JBhvKzxm','m0nLCuHwwa','x3jLDhj5','uKfcqKLutvfFuvvfvuu','xsbfCNjVCIbJCMvHDgLUzYbXDwv1zsa','Ec1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEq','ndmYmZK2yK9XCwnw','yNPRBeq','mJq4mtmYofrSsKP5Ea','xsbfCNjVCIbJCMvHDgLUzYbLEgnOyw5Nzsa','zxHPDa','xsbfEgnOyw5Nzsa','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','xsbszxrYEsbIAw5KAw5NigzVCIa'];a0_0x3b07=function(){return _0x18fcd7;};return a0_0x3b07();}(function(_0x9ac943,_0x27561d){const _0xea6799=a0_0x13d3,_0xc7beb7=_0x9ac943();while(!![]){try{const _0x2abf4e=parseInt(_0xea6799(0xe4))/0x1+-parseInt(_0xea6799(0xde))/0x2+-parseInt(_0xea6799(0xd7))/0x3*(parseInt(_0xea6799(0xd4))/0x4)+parseInt(_0xea6799(0xcc))/0x5*(-parseInt(_0xea6799(0xdc))/0x6)+parseInt(_0xea6799(0xe5))/0x7+parseInt(_0xea6799(0xbd))/0x8+-parseInt(_0xea6799(0xc9))/0x9*(-parseInt(_0xea6799(0xca))/0xa);if(_0x2abf4e===_0x27561d)break;else _0xc7beb7['push'](_0xc7beb7['shift']());}catch(_0x24715f){_0xc7beb7['push'](_0xc7beb7['shift']());}}}(a0_0x3b07,0xeb97d),require(a0_0x5962f1(0xc2))['config']());const amqp=require(a0_0x5962f1(0xd0)),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process['env'][a0_0x5962f1(0xd2)],EXCHANGE=process[a0_0x5962f1(0xbe)]['RABBITMQ_EXCHANGE'],ROUTING_KEY=process[a0_0x5962f1(0xbe)][a0_0x5962f1(0xc6)],QUEUE=process['env'][a0_0x5962f1(0xd9)];async function createConnection(){const _0x215fb2=a0_0x5962f1,_0x280cdc={'bzklD':function(_0x7dde92,_0x1f0c1b){return _0x7dde92(_0x1f0c1b);}};try{const _0x2d0fd2=await amqp['connect'](RABBITMQ_URL);return console['log']('['+formatDate(new Date())+_0x215fb2(0xc3)),_0x2d0fd2;}catch(_0x5a69e3){console[_0x215fb2(0xcb)]('['+_0x280cdc[_0x215fb2(0xdd)](formatDate,new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x5a69e3[_0x215fb2(0xe6)]);throw _0x5a69e3;}}function a0_0x13d3(_0x3ece01,_0x427cb4){_0x3ece01=_0x3ece01-0xbd;const _0x3b0742=a0_0x3b07();let _0x13d32d=_0x3b0742[_0x3ece01];if(a0_0x13d3['YRFdhb']===undefined){var _0x3ded85=function(_0x509340){const _0x1e787a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x19d18c='',_0x257b78='';for(let _0x52dc71=0x0,_0x1702b8,_0x455859,_0x2eb082=0x0;_0x455859=_0x509340['charAt'](_0x2eb082++);~_0x455859&&(_0x1702b8=_0x52dc71%0x4?_0x1702b8*0x40+_0x455859:_0x455859,_0x52dc71++%0x4)?_0x19d18c+=String['fromCharCode'](0xff&_0x1702b8>>(-0x2*_0x52dc71&0x6)):0x0){_0x455859=_0x1e787a['indexOf'](_0x455859);}for(let _0x39a453=0x0,_0x375b31=_0x19d18c['length'];_0x39a453<_0x375b31;_0x39a453++){_0x257b78+='%'+('00'+_0x19d18c['charCodeAt'](_0x39a453)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x257b78);};a0_0x13d3['exPUBf']=_0x3ded85,a0_0x13d3['TaEyep']={},a0_0x13d3['YRFdhb']=!![];}const _0x23b0aa=_0x3b0742[0x0],_0x4a9a43=_0x3ece01+_0x23b0aa,_0x5521b6=a0_0x13d3['TaEyep'][_0x4a9a43];return!_0x5521b6?(_0x13d32d=a0_0x13d3['exPUBf'](_0x13d32d),a0_0x13d3['TaEyep'][_0x4a9a43]=_0x13d32d):_0x13d32d=_0x5521b6,_0x13d32d;}async function createChannel(_0x2269d7){const _0x22bf39=a0_0x5962f1,_0xdc8b48={'ZUhDw':function(_0x4ef092,_0x2802ab){return _0x4ef092(_0x2802ab);}};try{const _0x18ca80=await _0x2269d7['createChannel']();return console[_0x22bf39(0xcf)]('['+formatDate(new Date())+_0x22bf39(0xd3)),_0x18ca80;}catch(_0x5baf38){console['error']('['+_0xdc8b48[_0x22bf39(0xd5)](formatDate,new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0x5baf38[_0x22bf39(0xe6)]);throw _0x5baf38;}}async function setupInfrastructure(_0x3d0a4a){const _0x589188=a0_0x5962f1,_0x13fa3c={'nUrcH':function(_0x5346b2,_0x492a1f){return _0x5346b2(_0x492a1f);},'EsqWQ':'retry-exchange'};try{await _0x3d0a4a['assertExchange']('retry-exchange','direct',{'durable':!![],'autoDelete':![]}),console[_0x589188(0xcf)]('['+formatDate(new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x1f8dc0){console[_0x589188(0xcb)]('['+_0x13fa3c[_0x589188(0xe7)](formatDate,new Date())+']\x20Error\x20creating\x20retry\x20exchange:',_0x1f8dc0[_0x589188(0xe6)]);throw _0x1f8dc0;}try{await _0x3d0a4a['assertExchange'](EXCHANGE,_0x589188(0xbf),{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+_0x589188(0xe1)+EXCHANGE+'\x20created/ready');}catch(_0x34016d){console[_0x589188(0xcb)]('['+formatDate(new Date())+_0x589188(0xdf)+EXCHANGE+':',_0x34016d[_0x589188(0xe6)]);throw _0x34016d;}const _0x591845=ROUTING_KEY+_0x589188(0xd8);try{const _0x363cbe={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x3d0a4a['assertQueue'](_0x591845,_0x363cbe),console[_0x589188(0xcf)]('['+_0x13fa3c[_0x589188(0xe7)](formatDate,new Date())+_0x589188(0xc0)+_0x591845+'\x20created/ready'),await _0x3d0a4a[_0x589188(0xd1)](_0x591845,_0x13fa3c['EsqWQ'],ROUTING_KEY),console[_0x589188(0xcf)]('['+formatDate(new Date())+_0x589188(0xe3)+ROUTING_KEY+'\x20created');}catch(_0x5d6611){console[_0x589188(0xcb)]('['+_0x13fa3c['nUrcH'](formatDate,new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x5d6611['message']);throw _0x5d6611;}try{const _0x37e033={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x13fa3c[_0x589188(0xcd)],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x288be8=await _0x3d0a4a['assertQueue'](QUEUE,_0x37e033);console[_0x589188(0xcf)]('['+formatDate(new Date())+_0x589188(0xc1)+QUEUE+'\x20'+(_0x288be8[_0x589188(0xc5)]===QUEUE?'created/ready':_0x589188(0xce))+'\x20with\x20DLX'),await _0x3d0a4a['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console[_0x589188(0xcf)]('['+_0x13fa3c['nUrcH'](formatDate,new Date())+_0x589188(0xc7)+EXCHANGE+'\x20->\x20'+QUEUE+'\x20('+ROUTING_KEY+')\x20created');}catch(_0x49a028){if(_0x49a028['message']['includes']('inequivalent\x20arg')&&_0x49a028['message'][_0x589188(0xd6)](_0x589188(0xdb)))console[_0x589188(0xcb)]('\x0a['+formatDate(new Date())+']\x20ERROR:\x20Queue\x20'+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console[_0x589188(0xcb)]('Queue\x20'+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console[_0x589188(0xcb)]('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process[_0x589188(0xe0)](0x1);else{console[_0x589188(0xcb)]('['+formatDate(new Date())+_0x589188(0xda)+QUEUE+':',_0x49a028[_0x589188(0xe6)]);throw _0x49a028;}}}catch(_0x5eab9d){if(!_0x5eab9d['message']['includes'](_0x589188(0xc8))){console[_0x589188(0xcb)]('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x5eab9d[_0x589188(0xe6)]);throw _0x5eab9d;}process['exit'](0x1);}}async function closeConnection(_0xd80f04){const _0x326328=a0_0x5962f1;if(_0xd80f04)try{await _0xd80f04['close'](),console[_0x326328(0xcf)]('['+formatDate(new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x12f334){console[_0x326328(0xcb)]('['+formatDate(new Date())+_0x326328(0xe2)+_0x12f334['message']);}}module[a0_0x5962f1(0xc4)]={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
1
+ const a0_0x584818=a0_0x4db8;(function(_0x1f2b52,_0x2f0c45){const _0x208bcb=a0_0x4db8,_0x5eff3f=_0x1f2b52();while(!![]){try{const _0x5c3f27=parseInt(_0x208bcb(0xa5))/0x1+parseInt(_0x208bcb(0xaa))/0x2*(-parseInt(_0x208bcb(0x98))/0x3)+parseInt(_0x208bcb(0x9a))/0x4*(parseInt(_0x208bcb(0xa4))/0x5)+parseInt(_0x208bcb(0xba))/0x6*(-parseInt(_0x208bcb(0xad))/0x7)+-parseInt(_0x208bcb(0xa2))/0x8+-parseInt(_0x208bcb(0x95))/0x9+parseInt(_0x208bcb(0xa9))/0xa;if(_0x5c3f27===_0x2f0c45)break;else _0x5eff3f['push'](_0x5eff3f['shift']());}catch(_0x17b167){_0x5eff3f['push'](_0x5eff3f['shift']());}}}(a0_0x1868,0x31ea7),require('dotenv')['config']());const amqp=require('amqplib'),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process[a0_0x584818(0xa7)]['RABBITMQ_EXCHANGE'],ROUTING_KEY=process[a0_0x584818(0xa7)][a0_0x584818(0x9b)],QUEUE=process['env']['RABBITMQ_QUEUE'];function a0_0x1868(){const _0x441008=['zxHPDa','yxnZzxj0rxHJAgfUz2u','xsbcAw5KAw5Nia','mti3odq4ohPvwMXYwq','qNziqKW','mtbPCxbAt3m','mZe3nZe4A25esfHe','x3jLDhj5','zw52','ic0+ia','nteZnZmXmffPBKzwsa','ntiYmJHVr3z3A0C','yxnZzxj0uxvLDwu','yMLUzff1zxvL','nda2rg1XCM14','ignYzwf0zwqVCMvHzhK','zxjYB3i','xsbszxrYEsbLEgnOyw5NzsbJCMvHDgvKl3jLywr5','thL4BLG','BwvZC2fNzq','igLZigfSCMvHzhKGAw4GDxnLihDPDgGGysbKAwzMzxjLBNqGCM91DgLUzYbRzxKU','Aw5LCxvPDMfSzw50igfYzW','xsbszxrYEsbIAw5KAw5NigzVCIa','y3jLyxrLzc9YzwfKEq','xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','ignYzwf0zwq','Bg9N','mJi4nZHKEhLgvwK','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','CMv0CNKTzxHJAgfUz2u','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','vgvzqNK','ihDPDgGGreXy','mJi0mtiWn0r3s0z6uW','xsbsywjIAxrnusbJB25Uzwn0Aw9UignSB3nLza','xsbgywLSzwqGDg8Gy3jLyxrLifjHyMjPDe1rignOyw5UzwW6ia','mZLsC3zVEMC','xsbfuLjpuJOGuxvLDwuG','nJG0otuYveD5uxjk','uKfcqKLutvfFuK9vveLor19lrvK','ksbJCMvHDgvK','B29mrNG','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG'];a0_0x1868=function(){return _0x441008;};return a0_0x1868();}async function createConnection(){const _0x5dc41d=a0_0x584818;try{const _0x2923ae=await amqp['connect'](RABBITMQ_URL);return console[_0x5dc41d(0xb9)]('['+formatDate(new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x2923ae;}catch(_0x425f01){console['error']('['+formatDate(new Date())+_0x5dc41d(0xb7)+_0x425f01['message']);throw _0x425f01;}}function a0_0x4db8(_0x4738a,_0x2e90a6){_0x4738a=_0x4738a-0x90;const _0x18681f=a0_0x1868();let _0x4db8e4=_0x18681f[_0x4738a];if(a0_0x4db8['EiwDtu']===undefined){var _0x2e9a8c=function(_0x4937fc){const _0x5b1a9d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2b4701='',_0x59249e='';for(let _0x4e75bc=0x0,_0x47d020,_0x2cea32,_0x11de91=0x0;_0x2cea32=_0x4937fc['charAt'](_0x11de91++);~_0x2cea32&&(_0x47d020=_0x4e75bc%0x4?_0x47d020*0x40+_0x2cea32:_0x2cea32,_0x4e75bc++%0x4)?_0x2b4701+=String['fromCharCode'](0xff&_0x47d020>>(-0x2*_0x4e75bc&0x6)):0x0){_0x2cea32=_0x5b1a9d['indexOf'](_0x2cea32);}for(let _0x3c0447=0x0,_0xb8b88c=_0x2b4701['length'];_0x3c0447<_0xb8b88c;_0x3c0447++){_0x59249e+='%'+('00'+_0x2b4701['charCodeAt'](_0x3c0447)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x59249e);};a0_0x4db8['ZYHXqA']=_0x2e9a8c,a0_0x4db8['nZiQgA']={},a0_0x4db8['EiwDtu']=!![];}const _0x272cca=_0x18681f[0x0],_0x4f185a=_0x4738a+_0x272cca,_0x5742b7=a0_0x4db8['nZiQgA'][_0x4f185a];return!_0x5742b7?(_0x4db8e4=a0_0x4db8['ZYHXqA'](_0x4db8e4),a0_0x4db8['nZiQgA'][_0x4f185a]=_0x4db8e4):_0x4db8e4=_0x5742b7,_0x4db8e4;}async function createChannel(_0x3b5ff9){const _0x57b7c4=a0_0x584818;try{const _0x5e47da=await _0x3b5ff9['createChannel']();return console[_0x57b7c4(0xb9)]('['+formatDate(new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x5e47da;}catch(_0xd4de91){console[_0x57b7c4(0xaf)]('['+formatDate(new Date())+_0x57b7c4(0x97)+_0xd4de91['message']);throw _0xd4de91;}}async function setupInfrastructure(_0x4034ac){const _0x20e19c=a0_0x584818,_0x4935d4={'XCLec':'direct','fwIEf':function(_0x219b8f,_0x1c45c2){return _0x219b8f(_0x1c45c2);},'LyxnX':function(_0x48f31e,_0x2efb26){return _0x48f31e(_0x2efb26);},'BvHBL':_0x20e19c(0x91),'Dazsc':function(_0x28ad7f,_0x2f571b){return _0x28ad7f(_0x2f571b);},'TeYBy':_0x20e19c(0xb6),'rsMFU':function(_0x54141f,_0x1ff246){return _0x54141f(_0x1ff246);},'HFmdY':_0x20e19c(0xb4),'FGhQr':'x-dead-letter-routing-key'};try{await _0x4034ac['assertExchange']('retry-exchange',_0x4935d4['XCLec'],{'durable':!![],'autoDelete':![]}),console['log']('['+_0x4935d4['fwIEf'](formatDate,new Date())+_0x20e19c(0xb0));}catch(_0x57b27a){console[_0x20e19c(0xaf)]('['+_0x4935d4[_0x20e19c(0xb1)](formatDate,new Date())+_0x20e19c(0x92),_0x57b27a[_0x20e19c(0xb2)]);throw _0x57b27a;}try{await _0x4034ac[_0x20e19c(0xa0)](EXCHANGE,_0x4935d4['XCLec'],{'durable':!![],'autoDelete':![]}),console[_0x20e19c(0xb9)]('['+formatDate(new Date())+']\x20Exchange\x20'+EXCHANGE+'\x20created/ready');}catch(_0x397a9f){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x397a9f[_0x20e19c(0xb2)]);throw _0x397a9f;}const _0x15f2fa=ROUTING_KEY+_0x20e19c(0xa6);try{const _0x9845b0={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x4034ac['assertQueue'](_0x15f2fa,_0x9845b0),console[_0x20e19c(0xb9)]('['+formatDate(new Date())+']\x20Retry\x20queue\x20'+_0x15f2fa+_0x20e19c(0xae)),await _0x4034ac['bindQueue'](_0x15f2fa,_0x4935d4[_0x20e19c(0xa3)],ROUTING_KEY),console[_0x20e19c(0xb9)]('['+_0x4935d4[_0x20e19c(0xb1)](formatDate,new Date())+_0x20e19c(0xb5)+ROUTING_KEY+_0x20e19c(0xb8));}catch(_0x1cfce2){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x1cfce2[_0x20e19c(0xb2)]);throw _0x1cfce2;}try{const _0x1ada7d={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x4935d4['BvHBL'],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x1e55e4=await _0x4034ac[_0x20e19c(0xab)](QUEUE,_0x1ada7d);console['log']('['+_0x4935d4['Dazsc'](formatDate,new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x1e55e4['queue']===QUEUE?_0x4935d4[_0x20e19c(0x93)]:'found')+_0x20e19c(0x94)),await _0x4034ac[_0x20e19c(0xac)](QUEUE,EXCHANGE,ROUTING_KEY),console[_0x20e19c(0xb9)]('['+_0x4935d4['rsMFU'](formatDate,new Date())+_0x20e19c(0xa1)+EXCHANGE+_0x20e19c(0xa8)+QUEUE+'\x20('+ROUTING_KEY+_0x20e19c(0x9c));}catch(_0x5977e7){if(_0x5977e7['message']['includes'](_0x4935d4['HFmdY'])&&_0x5977e7[_0x20e19c(0xb2)]['includes'](_0x4935d4['FGhQr']))console['error']('\x0a['+formatDate(new Date())+_0x20e19c(0x99)+QUEUE+_0x20e19c(0xb3)),console['error']('Queue\x20'+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console['error'](_0x20e19c(0x9e)),process['exit'](0x1);else{console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x5977e7['message']);throw _0x5977e7;}}}catch(_0x437ff4){if(!_0x437ff4['message']['includes'](_0x20e19c(0xb4))){console[_0x20e19c(0xaf)]('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x437ff4['message']);throw _0x437ff4;}process[_0x20e19c(0x9f)](0x1);}}async function closeConnection(_0x3629e1){const _0x248608=a0_0x584818,_0x5c736a={'ooLFx':function(_0x482c9d,_0x2a9673){return _0x482c9d(_0x2a9673);}};if(_0x3629e1)try{await _0x3629e1['close'](),console['log']('['+formatDate(new Date())+_0x248608(0x96));}catch(_0x539715){console[_0x248608(0xaf)]('['+_0x5c736a[_0x248608(0x9d)](formatDate,new Date())+_0x248608(0x90)+_0x539715[_0x248608(0xb2)]);}}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
@@ -1 +1 @@
1
- const a0_0x35b808=a0_0xef60;function a0_0xef60(_0x1548f9,_0x4e47c8){_0x1548f9=_0x1548f9-0x191;const _0x3a67bd=a0_0x3a67();let _0xef6043=_0x3a67bd[_0x1548f9];if(a0_0xef60['ZYDDEE']===undefined){var _0x1a1d70=function(_0x57d9a5){const _0xbad079='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x53ccc2='',_0x436693='';for(let _0x3ab1ae=0x0,_0x4c6393,_0x828218,_0x2d4b73=0x0;_0x828218=_0x57d9a5['charAt'](_0x2d4b73++);~_0x828218&&(_0x4c6393=_0x3ab1ae%0x4?_0x4c6393*0x40+_0x828218:_0x828218,_0x3ab1ae++%0x4)?_0x53ccc2+=String['fromCharCode'](0xff&_0x4c6393>>(-0x2*_0x3ab1ae&0x6)):0x0){_0x828218=_0xbad079['indexOf'](_0x828218);}for(let _0x4f04cc=0x0,_0x30e300=_0x53ccc2['length'];_0x4f04cc<_0x30e300;_0x4f04cc++){_0x436693+='%'+('00'+_0x53ccc2['charCodeAt'](_0x4f04cc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x436693);};a0_0xef60['UqpjHv']=_0x1a1d70,a0_0xef60['qwlIeq']={},a0_0xef60['ZYDDEE']=!![];}const _0x59e522=_0x3a67bd[0x0],_0x5a4fb6=_0x1548f9+_0x59e522,_0x27070e=a0_0xef60['qwlIeq'][_0x5a4fb6];return!_0x27070e?(_0xef6043=a0_0xef60['UqpjHv'](_0xef6043),a0_0xef60['qwlIeq'][_0x5a4fb6]=_0xef6043):_0xef6043=_0x27070e,_0xef6043;}function a0_0x3a67(){const _0x585ece=['r1Dyt0S','ndm3nJG4CvbNDujT','zw52','uMvKAxmGueLorYb0Aw1LB3v0','CMvKAxnFy29UBMvJDgvK','BwLU','zM9Yy2veAxnJB25Uzwn0','mte3nJK4mxjkEeHODa','CMvKAxnFAw5PDf9LCNjVCG','mte3mZeYnKDnt3fpuW','CMfJzq','uKvesvnFrei','wejvA20','mtGWntiWnvLhwNz5yG','mJiWndmYmgHkEM1qwq','Aw5MBW','z2v0q2XPzw50','uMvKAxmGy29UBMvJDgLVBIbLCNjVCJOG','reXLC1y','y2XPzw50','Bg9JywXOB3n0','BwvZC2fNzq','mtGWBLLTCKv0','mtaZmLP0t2nZvG','y29UBMvJDa','AxndB25Uzwn0zwq','ntC3nZHwBLnbD1m','Aw9YzwrPCW','D2fYBG','CMvKAxnFzxjYB3i','zxjYB3i','ndD0BwTWr2G','mtq5mZHWvMP3BMS','zxHWB3j0CW'];a0_0x3a67=function(){return _0x585ece;};return a0_0x3a67();}(function(_0x115545,_0x4f49d5){const _0x825b41=a0_0xef60,_0xc9659=_0x115545();while(!![]){try{const _0x51bfd7=-parseInt(_0x825b41(0x1ab))/0x1*(parseInt(_0x825b41(0x1ac))/0x2)+parseInt(_0x825b41(0x193))/0x3+parseInt(_0x825b41(0x19a))/0x4+parseInt(_0x825b41(0x199))/0x5+-parseInt(_0x825b41(0x195))/0x6+-parseInt(_0x825b41(0x1a6))/0x7*(parseInt(_0x825b41(0x1a3))/0x8)+parseInt(_0x825b41(0x1af))/0x9*(parseInt(_0x825b41(0x1a2))/0xa);if(_0x51bfd7===_0x4f49d5)break;else _0xc9659['push'](_0xc9659['shift']());}catch(_0x3eff14){_0xc9659['push'](_0xc9659['shift']());}}}(a0_0x3a67,0x8acae));const Redis=require(a0_0x35b808(0x1a7)),{logger}=require('./logger');class RedisClient{constructor(){const _0x31ad7d=a0_0x35b808;this['client']=null,this[_0x31ad7d(0x1a5)]=![];}[a0_0x35b808(0x1a4)](){const _0x19518b=a0_0x35b808,_0x2a3a32={'QqlWM':'Redis\x20connected\x20successfully','zmfkF':_0x19518b(0x1a9),'GWXOK':'redis_disconnected','DLesV':'Redis\x20connection\x20closed','kbSVo':_0x19518b(0x1a0),'QTSBW':_0x19518b(0x1a4),'bOGRq':'error','syaIk':'close','XBUkm':'Failed\x20to\x20initialize\x20Redis'};if(this[_0x19518b(0x19f)])return this['client'];try{return this['client']=new Redis({'host':process['env']['REDIS_HOST']||_0x2a3a32['kbSVo'],'port':parseInt(process[_0x19518b(0x1b0)]['REDIS_PORT'],0xa)||0x18ec,'password':process[_0x19518b(0x1b0)]['REDIS_PASSWORD']||undefined,'db':parseInt(process[_0x19518b(0x1b0)][_0x19518b(0x197)],0xa)||0x0,'retryStrategy'(_0x76b221){const _0x4f5c4d=_0x19518b,_0x1b55bb=Math[_0x4f5c4d(0x191)](_0x76b221*0x32,0x7d0);return _0x1b55bb;}}),this[_0x19518b(0x19f)]['on'](_0x2a3a32['QTSBW'],()=>{const _0x26632c=_0x19518b;this['isConnected']=!![],logger[_0x26632c(0x19b)]({'event':_0x26632c(0x1b2)},_0x2a3a32['QqlWM']);}),this['client']['on'](_0x2a3a32['bOGRq'],_0x4c44b0=>{const _0x1ee92f=_0x19518b;this['isConnected']=![],logger['error']({'event':_0x2a3a32['zmfkF'],'error':_0x4c44b0[_0x1ee92f(0x1a1)]},_0x1ee92f(0x19d)+_0x4c44b0[_0x1ee92f(0x1a1)]);}),this['client']['on'](_0x2a3a32['syaIk'],()=>{const _0x2a58e5=_0x19518b;this['isConnected']=![],logger[_0x2a58e5(0x1a8)]({'event':_0x2a3a32[_0x2a58e5(0x1ae)]},_0x2a3a32[_0x2a58e5(0x19e)]);}),this[_0x19518b(0x19f)];}catch(_0x4a73ad){logger[_0x19518b(0x1aa)]({'event':_0x19518b(0x194),'error':_0x4a73ad[_0x19518b(0x1a1)]},_0x2a3a32[_0x19518b(0x198)]);throw _0x4a73ad;}}[a0_0x35b808(0x19c)](){return!this['client']&&this['connect'](),this['client'];}async['ping'](_0x4a6467=0x1388){const _0x23a91f=a0_0x35b808,_0x50a075={'EsJGd':function(_0x5cc7b2,_0x1789b3){return _0x5cc7b2===_0x1789b3;},'EzkRu':'PONG'};try{const _0x41fb33=this[_0x23a91f(0x19c)](),_0x443235=await Promise[_0x23a91f(0x196)]([_0x41fb33['ping'](),new Promise((_0x3d5922,_0x842cc8)=>setTimeout(()=>_0x842cc8(new Error(_0x23a91f(0x1b1))),_0x4a6467))]);return _0x50a075['EsJGd'](_0x443235,_0x50a075['EzkRu']);}catch(_0xeb44b1){return![];}}async['disconnect'](){const _0x21e574=a0_0x35b808;this[_0x21e574(0x19f)]&&(await this['client']['quit'](),this['client']=null,this[_0x21e574(0x1a5)]=![]);}[a0_0x35b808(0x192)](){const _0x208838=a0_0x35b808;this[_0x208838(0x19f)]&&(this[_0x208838(0x19f)]['disconnect'](),this[_0x208838(0x19f)]=null,this['isConnected']=![]);}}module[a0_0x35b808(0x1ad)]=new RedisClient();
1
+ function a0_0x5878(_0x14aa19,_0x5db5c9){_0x14aa19=_0x14aa19-0x10e;const _0x35bf84=a0_0x35bf();let _0x587841=_0x35bf84[_0x14aa19];if(a0_0x5878['ccvqEf']===undefined){var _0x19c54f=function(_0x133eb1){const _0x4dc500='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c1aa0='',_0x52429d='';for(let _0xa93c64=0x0,_0x3a3053,_0x167793,_0x240ab1=0x0;_0x167793=_0x133eb1['charAt'](_0x240ab1++);~_0x167793&&(_0x3a3053=_0xa93c64%0x4?_0x3a3053*0x40+_0x167793:_0x167793,_0xa93c64++%0x4)?_0x5c1aa0+=String['fromCharCode'](0xff&_0x3a3053>>(-0x2*_0xa93c64&0x6)):0x0){_0x167793=_0x4dc500['indexOf'](_0x167793);}for(let _0x4c7209=0x0,_0xb59c53=_0x5c1aa0['length'];_0x4c7209<_0xb59c53;_0x4c7209++){_0x52429d+='%'+('00'+_0x5c1aa0['charCodeAt'](_0x4c7209)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x52429d);};a0_0x5878['SvFAAk']=_0x19c54f,a0_0x5878['mcYThM']={},a0_0x5878['ccvqEf']=!![];}const _0x308ff5=_0x35bf84[0x0],_0xb6fae2=_0x14aa19+_0x308ff5,_0x1d9d4e=a0_0x5878['mcYThM'][_0xb6fae2];return!_0x1d9d4e?(_0x587841=a0_0x5878['SvFAAk'](_0x587841),a0_0x5878['mcYThM'][_0xb6fae2]=_0x587841):_0x587841=_0x1d9d4e,_0x587841;}const a0_0x423c18=a0_0x5878;(function(_0x1193da,_0x300a54){const _0x58ccc2=a0_0x5878,_0x1eb175=_0x1193da();while(!![]){try{const _0x59d228=parseInt(_0x58ccc2(0x115))/0x1+parseInt(_0x58ccc2(0x11c))/0x2+parseInt(_0x58ccc2(0x117))/0x3+parseInt(_0x58ccc2(0x128))/0x4+parseInt(_0x58ccc2(0x122))/0x5+parseInt(_0x58ccc2(0x127))/0x6+-parseInt(_0x58ccc2(0x11b))/0x7;if(_0x59d228===_0x300a54)break;else _0x1eb175['push'](_0x1eb175['shift']());}catch(_0x2b2887){_0x1eb175['push'](_0x1eb175['shift']());}}}(a0_0x35bf,0xc4e45));const Redis=require('ioredis'),{logger}=require('./logger');class RedisClient{constructor(){const _0x6815d7=a0_0x5878;this[_0x6815d7(0x11f)]=null,this[_0x6815d7(0x110)]=![];}['connect'](){const _0x69d101=a0_0x5878,_0xe3bfbb={'kmHLj':_0x69d101(0x118),'UxJRg':'connect','WPklH':'error','bQiSJ':'close','skLWw':'redis_init_error','uhOhq':'Failed\x20to\x20initialize\x20Redis'};if(this['client'])return this[_0x69d101(0x11f)];try{return this[_0x69d101(0x11f)]=new Redis({'host':process[_0x69d101(0x11d)][_0x69d101(0x126)]||'localhost','port':parseInt(process[_0x69d101(0x11d)]['REDIS_PORT'],0xa)||0x18ec,'password':process['env']['REDIS_PASSWORD']||undefined,'db':parseInt(process[_0x69d101(0x11d)]['REDIS_DB'],0xa)||0x0,'retryStrategy'(_0x42c411){const _0x3eb6d7=Math['min'](_0x42c411*0x32,0x7d0);return _0x3eb6d7;}}),this['client']['on'](_0xe3bfbb[_0x69d101(0x11e)],()=>{const _0x225f07=_0x69d101;this['isConnected']=!![],logger[_0x225f07(0x124)]({'event':_0x225f07(0x11a)},_0x225f07(0x116));}),this['client']['on'](_0xe3bfbb[_0x69d101(0x120)],_0x100612=>{const _0x43e138=_0x69d101;this['isConnected']=![],logger[_0x43e138(0x119)]({'event':_0xe3bfbb['kmHLj'],'error':_0x100612[_0x43e138(0x10f)]},_0x43e138(0x114)+_0x100612[_0x43e138(0x10f)]);}),this[_0x69d101(0x11f)]['on'](_0xe3bfbb[_0x69d101(0x125)],()=>{const _0x16862c=_0x69d101;this['isConnected']=![],logger[_0x16862c(0x123)]({'event':'redis_disconnected'},'Redis\x20connection\x20closed');}),this[_0x69d101(0x11f)];}catch(_0x75b7bb){logger['error']({'event':_0xe3bfbb[_0x69d101(0x129)],'error':_0x75b7bb['message']},_0xe3bfbb['uhOhq']);throw _0x75b7bb;}}[a0_0x423c18(0x111)](){const _0x25da32=a0_0x423c18;return!this[_0x25da32(0x11f)]&&this['connect'](),this[_0x25da32(0x11f)];}async[a0_0x423c18(0x112)](_0x53fbf1=0x1388){const _0x1beb95=a0_0x423c18;try{const _0x4b75b6=this['getClient'](),_0x40e181=await Promise[_0x1beb95(0x10e)]([_0x4b75b6[_0x1beb95(0x112)](),new Promise((_0x57b3df,_0x8bb542)=>setTimeout(()=>_0x8bb542(new Error('Redis\x20PING\x20timeout')),_0x53fbf1))]);return _0x40e181===_0x1beb95(0x113);}catch(_0x5a6110){return![];}}async[a0_0x423c18(0x121)](){const _0x406bc5=a0_0x423c18;this[_0x406bc5(0x11f)]&&(await this[_0x406bc5(0x11f)]['quit'](),this['client']=null,this[_0x406bc5(0x110)]=![]);}['forceDisconnect'](){const _0x1deaaa=a0_0x423c18;this[_0x1deaaa(0x11f)]&&(this['client'][_0x1deaaa(0x121)](),this[_0x1deaaa(0x11f)]=null,this[_0x1deaaa(0x110)]=![]);}}function a0_0x35bf(){const _0x18c403=['Aw5MBW','yLfPu0O','uKvesvnFse9tva','ndC4ndGYmeL1zvvmwa','mZK0mtyWC0rvCwXu','C2Tmv3C','CMfJzq','BwvZC2fNzq','AxndB25Uzwn0zwq','z2v0q2XPzw50','CgLUzW','ue9orW','uMvKAxmGy29UBMvJDgLVBIbLCNjVCJOG','nZK2ntC5BLnsq1vj','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','mti2mJy0m2XfDNznBq','CMvKAxnFzxjYB3i','zxjYB3i','CMvKAxnFy29UBMvJDgvK','mJm0nJyYmZnAEgzYExO','mteWmtC4nKHsq0jSBa','zw52','vxHkuMC','y2XPzw50','v1bRBeG','zgLZy29UBMvJDa','nZq3mJeYnuDftwPjDW','D2fYBG'];a0_0x35bf=function(){return _0x18c403;};return a0_0x35bf();}module['exports']=new RedisClient();
@@ -1 +1 @@
1
- const a0_0x3c32d3=a0_0x2a8a;function a0_0x2a8a(_0x51c189,_0x21e39b){_0x51c189=_0x51c189-0xfe;const _0xa7d33b=a0_0xa7d3();let _0x2a8a73=_0xa7d33b[_0x51c189];if(a0_0x2a8a['GeDvNB']===undefined){var _0x3005af=function(_0x60b173){const _0x2db3b2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4dcacf='',_0x1ee2f8='';for(let _0x459b48=0x0,_0x85acd3,_0x35d4c4,_0x48b0e9=0x0;_0x35d4c4=_0x60b173['charAt'](_0x48b0e9++);~_0x35d4c4&&(_0x85acd3=_0x459b48%0x4?_0x85acd3*0x40+_0x35d4c4:_0x35d4c4,_0x459b48++%0x4)?_0x4dcacf+=String['fromCharCode'](0xff&_0x85acd3>>(-0x2*_0x459b48&0x6)):0x0){_0x35d4c4=_0x2db3b2['indexOf'](_0x35d4c4);}for(let _0x22a3a1=0x0,_0x3aee2c=_0x4dcacf['length'];_0x22a3a1<_0x3aee2c;_0x22a3a1++){_0x1ee2f8+='%'+('00'+_0x4dcacf['charCodeAt'](_0x22a3a1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ee2f8);};a0_0x2a8a['rmuiRi']=_0x3005af,a0_0x2a8a['FVoZOi']={},a0_0x2a8a['GeDvNB']=!![];}const _0x3a0ab8=_0xa7d33b[0x0],_0x3508b3=_0x51c189+_0x3a0ab8,_0x314c34=a0_0x2a8a['FVoZOi'][_0x3508b3];return!_0x314c34?(_0x2a8a73=a0_0x2a8a['rmuiRi'](_0x2a8a73),a0_0x2a8a['FVoZOi'][_0x3508b3]=_0x2a8a73):_0x2a8a73=_0x314c34,_0x2a8a73;}(function(_0x3f9825,_0x5c833a){const _0x4800b6=a0_0x2a8a,_0x85928e=_0x3f9825();while(!![]){try{const _0xeafb0c=parseInt(_0x4800b6(0x10f))/0x1*(-parseInt(_0x4800b6(0x111))/0x2)+parseInt(_0x4800b6(0x109))/0x3*(parseInt(_0x4800b6(0x11c))/0x4)+-parseInt(_0x4800b6(0x101))/0x5*(-parseInt(_0x4800b6(0x10d))/0x6)+parseInt(_0x4800b6(0xfe))/0x7+-parseInt(_0x4800b6(0xff))/0x8*(-parseInt(_0x4800b6(0x114))/0x9)+-parseInt(_0x4800b6(0x105))/0xa+-parseInt(_0x4800b6(0x102))/0xb;if(_0xeafb0c===_0x5c833a)break;else _0x85928e['push'](_0x85928e['shift']());}catch(_0xf55827){_0x85928e['push'](_0x85928e['shift']());}}}(a0_0xa7d3,0xd98c3));const redisClient=require(a0_0x3c32d3(0x100)),{logger}=require(a0_0x3c32d3(0x106));function a0_0xa7d3(){const _0x2fc435=['CgfYC2u','oMv4Cg9YDdO','zxHWB3j0CW','mtG3ognQvMz2Ea','zxjYB3i','mte3otrsyMPhBwu','zgvSzxrLsM9I','mJjuEej1Bwi','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','DxbKyxrLsM9I','mtqWmty1mu5qqKfNAW','DhrS','ChvZAa','z2v0q2XPzw50','x3bYzwzPEa','rMfPBgvKihrVihnLDcbQB2iGAw4GuMvKAxm','ChjLzML4','wgrorvC','nJe1ndaYofnHAeLmAa','zw52','ntG4ntG4n3znsgj1tW','ntzPEeHZu3q','lI9YzwrPCY1JBgLLBNq','mty5ndvADNrrr1G','mJa4ntK2mZbZt3LJDg4','z2v0sM9I','z2v0qwXSsM9ICW','mtyXmZeZotbxtLv0wM8','lI9SB2DNzxi','C3rYAw5NAwz5','BwvZC2fNzq','m1rzww9Wrq'];a0_0xa7d3=function(){return _0x2fc435;};return a0_0xa7d3();}class RedisHelper{constructor(){const _0x4b710c=a0_0x3c32d3;this[_0x4b710c(0x118)]=null,this[_0x4b710c(0x115)]=parseInt(process['env']['EXPORT_FILE_EXPIRY'],0xa)||0xe10;}get[a0_0x3c32d3(0x11a)](){const _0x5545e9=a0_0x3c32d3,_0x99b123={'vGqFK':'default'};if(!this['_prefix']){const _0x30b45f=process[_0x5545e9(0x11d)][_0x5545e9(0x112)]||_0x99b123['vGqFK'];this[_0x5545e9(0x118)]='restforge:'+_0x30b45f+_0x5545e9(0x10b);}return this['_prefix'];}async['setJob'](_0x3067e2,_0x17c582){const _0x3fa5eb=a0_0x3c32d3,_0x101c5f={'GTtPb':'redis_set_error'};try{const _0x3ccb86=redisClient['getClient'](),_0x1a554f=''+this['prefix']+_0x3067e2;return await _0x3ccb86['setex'](_0x1a554f,this[_0x3fa5eb(0x115)],JSON[_0x3fa5eb(0x107)](_0x17c582)),!![];}catch(_0x470d52){return logger[_0x3fa5eb(0x10e)]({'event':_0x101c5f['GTtPb'],'jobId':_0x3067e2,'error':_0x470d52[_0x3fa5eb(0x108)]},_0x3fa5eb(0x119)),![];}}async[a0_0x3c32d3(0x103)](_0x4a4cb5){const _0x36e9d4=a0_0x3c32d3;try{const _0x40319f=redisClient[_0x36e9d4(0x117)](),_0xde9978=''+this['prefix']+_0x4a4cb5,_0x160afc=await _0x40319f['get'](_0xde9978);return _0x160afc?JSON[_0x36e9d4(0x10a)](_0x160afc):null;}catch(_0x5509da){return logger['error']({'event':'redis_get_error','jobId':_0x4a4cb5,'error':_0x5509da['message']},'Failed\x20to\x20get\x20job\x20from\x20Redis'),null;}}async[a0_0x3c32d3(0x113)](_0x4d39fb,_0x3fdf75){const _0x31bb87=await this['getJob'](_0x4d39fb);if(!_0x31bb87)return![];const _0x411850={..._0x31bb87,..._0x3fdf75};return await this['setJob'](_0x4d39fb,_0x411850);}async[a0_0x3c32d3(0x110)](_0x2d00ac){const _0x2105ae=a0_0x3c32d3,_0x1121c1={'ekSyR':'redis_delete_error','wJIbN':'Failed\x20to\x20delete\x20job\x20from\x20Redis'};try{const _0x150751=redisClient['getClient'](),_0x538d25=''+this['prefix']+_0x2d00ac;return await _0x150751['del'](_0x538d25),!![];}catch(_0x148539){return logger['error']({'event':_0x1121c1['ekSyR'],'jobId':_0x2d00ac,'error':_0x148539[_0x2105ae(0x108)]},_0x1121c1['wJIbN']),![];}}async[a0_0x3c32d3(0x104)](){const _0x163fb3=a0_0x3c32d3,_0x52c446={'mCMLr':'redis_getall_error','XdNEW':'Failed\x20to\x20get\x20all\x20jobs'};try{const _0x3b7e3e=redisClient['getClient'](),_0x34af44=await _0x3b7e3e['keys'](this[_0x163fb3(0x11a)]+'*'),_0x56b789=[];for(const _0x451d8f of _0x34af44){const _0x2ea6cc=await _0x3b7e3e['get'](_0x451d8f);_0x2ea6cc&&_0x56b789[_0x163fb3(0x116)](JSON[_0x163fb3(0x10a)](_0x2ea6cc));}return _0x56b789;}catch(_0x2a7a8a){return logger['error']({'event':_0x52c446['mCMLr'],'error':_0x2a7a8a['message']},_0x52c446[_0x163fb3(0x11b)]),[];}}}module[a0_0x3c32d3(0x10c)]=new RedisHelper();
1
+ const a0_0x329d1b=a0_0x2500;function a0_0x2139(){const _0x17573b=['yNfRtMi','u1vuvhe','CgfYC2u','vNDLqMm','ntKYuhHhzxHd','ChjLzML4','mJqYmdiYzgzvquD5','rvHqt1jux0zjtevFrvHqsvjz','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','nJCYnZjjturbDgW','zgvSzxrLsM9I','z2v0','mZK4nZftB3fJCuu','A2v5CW','odi1owXACwTyBq','mZvnDhnfCwS','CMvKAxnFzgvSzxrLx2vYCM9Y','mtK3nteWruLXs0fA','zgvMyxvSDa','oduZotKWrLf6q0Pn','zxjYB3i','ChvZAa','C3rYAw5NAwz5','ENjmuhe','x3bYzwzPEa','DhrS','CMvKAxnFC2v0x2vYCM9Y','C2v0sM9I','C2v0zxG','mtCXuhnfuKnV','BwvZC2fNzq','nfvbs0T0EG','z2v0q2XPzw50','odu1nJu4muHSCgzWAG','zw52','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW'];a0_0x2139=function(){return _0x17573b;};return a0_0x2139();}(function(_0x3dd592,_0x4bb74c){const _0x364386=a0_0x2500,_0x418ae5=_0x3dd592();while(!![]){try{const _0x1f23c1=-parseInt(_0x364386(0x1e4))/0x1*(-parseInt(_0x364386(0x1d3))/0x2)+-parseInt(_0x364386(0x1e6))/0x3*(parseInt(_0x364386(0x1dc))/0x4)+parseInt(_0x364386(0x1e9))/0x5+parseInt(_0x364386(0x1de))/0x6*(-parseInt(_0x364386(0x1e7))/0x7)+parseInt(_0x364386(0x1e1))/0x8*(-parseInt(_0x364386(0x1d1))/0x9)+parseInt(_0x364386(0x1eb))/0xa+parseInt(_0x364386(0x1d5))/0xb;if(_0x1f23c1===_0x4bb74c)break;else _0x418ae5['push'](_0x418ae5['shift']());}catch(_0x2e99d0){_0x418ae5['push'](_0x418ae5['shift']());}}}(a0_0x2139,0x3426e));function a0_0x2500(_0x542136,_0x54ccbe){_0x542136=_0x542136-0x1d0;const _0x213920=a0_0x2139();let _0x2500c6=_0x213920[_0x542136];if(a0_0x2500['JmDGhJ']===undefined){var _0x396efa=function(_0x30268a){const _0x49b177='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55bb99='',_0x4492b7='';for(let _0x3e09b6=0x0,_0x126904,_0x16cc02,_0x3ed54b=0x0;_0x16cc02=_0x30268a['charAt'](_0x3ed54b++);~_0x16cc02&&(_0x126904=_0x3e09b6%0x4?_0x126904*0x40+_0x16cc02:_0x16cc02,_0x3e09b6++%0x4)?_0x55bb99+=String['fromCharCode'](0xff&_0x126904>>(-0x2*_0x3e09b6&0x6)):0x0){_0x16cc02=_0x49b177['indexOf'](_0x16cc02);}for(let _0xb6fa66=0x0,_0x438287=_0x55bb99['length'];_0xb6fa66<_0x438287;_0xb6fa66++){_0x4492b7+='%'+('00'+_0x55bb99['charCodeAt'](_0xb6fa66)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4492b7);};a0_0x2500['wVBXYU']=_0x396efa,a0_0x2500['DNtfyx']={},a0_0x2500['JmDGhJ']=!![];}const _0x21ed93=_0x213920[0x0],_0x26a634=_0x542136+_0x21ed93,_0x9cbdfc=a0_0x2500['DNtfyx'][_0x26a634];return!_0x9cbdfc?(_0x2500c6=a0_0x2500['wVBXYU'](_0x2500c6),a0_0x2500['DNtfyx'][_0x26a634]=_0x2500c6):_0x2500c6=_0x9cbdfc,_0x2500c6;}const redisClient=require('./redis-client'),{logger}=require('./logger');class RedisHelper{constructor(){const _0x113549=a0_0x2500,_0x27a9c7={'dpmPl':function(_0x373538,_0x51aa0a,_0x2fce14){return _0x373538(_0x51aa0a,_0x2fce14);}};this['_prefix']=null,this[_0x113549(0x1f1)]=_0x27a9c7['dpmPl'](parseInt,process[_0x113549(0x1d6)][_0x113549(0x1df)],0xa)||0xe10;}get['prefix'](){const _0x2442a4=a0_0x2500;if(!this[_0x2442a4(0x1f0)]){const _0x3b0ae9=process[_0x2442a4(0x1d6)]['RESTFORGE_PROJECT_NAME']||_0x2442a4(0x1ea);this['_prefix']='restforge:'+_0x3b0ae9+':export:';}return this['_prefix'];}async[a0_0x329d1b(0x1f3)](_0x113dc4,_0x1a6851){const _0x3d55c6=a0_0x329d1b,_0x399649={'bqkNb':'Failed\x20to\x20set\x20job\x20in\x20Redis'};try{const _0x41bd45=redisClient['getClient'](),_0x5ed8f2=''+this[_0x3d55c6(0x1dd)]+_0x113dc4;return await _0x41bd45[_0x3d55c6(0x1d0)](_0x5ed8f2,this['ttl'],JSON[_0x3d55c6(0x1ee)](_0x1a6851)),!![];}catch(_0x33b0ad){return logger[_0x3d55c6(0x1ec)]({'event':_0x3d55c6(0x1f2),'jobId':_0x113dc4,'error':_0x33b0ad[_0x3d55c6(0x1d2)]},_0x399649[_0x3d55c6(0x1d8)]),![];}}async['getJob'](_0x2cce1f){const _0x50f122=a0_0x329d1b,_0xa4d9b={'SUTTq':'redis_get_error'};try{const _0x1ddb14=redisClient['getClient'](),_0x780d94=''+this[_0x50f122(0x1dd)]+_0x2cce1f,_0x458cdb=await _0x1ddb14[_0x50f122(0x1e3)](_0x780d94);return _0x458cdb?JSON[_0x50f122(0x1da)](_0x458cdb):null;}catch(_0x1d0489){return logger['error']({'event':_0xa4d9b[_0x50f122(0x1d9)],'jobId':_0x2cce1f,'error':_0x1d0489[_0x50f122(0x1d2)]},'Failed\x20to\x20get\x20job\x20from\x20Redis'),null;}}async['updateJob'](_0x53df26,_0x14556d){const _0x230484=a0_0x329d1b,_0x1c1f15=await this['getJob'](_0x53df26);if(!_0x1c1f15)return![];const _0x2c19ed={..._0x1c1f15,..._0x14556d};return await this[_0x230484(0x1f3)](_0x53df26,_0x2c19ed);}async[a0_0x329d1b(0x1e2)](_0x4966e9){const _0x24794d=a0_0x329d1b,_0x4169b1={'VweBc':_0x24794d(0x1e8)};try{const _0x59fb43=redisClient[_0x24794d(0x1d4)](),_0x919d57=''+this['prefix']+_0x4966e9;return await _0x59fb43['del'](_0x919d57),!![];}catch(_0x34519b){return logger['error']({'event':_0x4169b1[_0x24794d(0x1db)],'jobId':_0x4966e9,'error':_0x34519b[_0x24794d(0x1d2)]},_0x24794d(0x1d7)),![];}}async['getAllJobs'](){const _0xe4212c=a0_0x329d1b,_0x49eb64={'zrLPq':'redis_getall_error','IwtQi':_0xe4212c(0x1e0)};try{const _0x1b9047=redisClient[_0xe4212c(0x1d4)](),_0x1fe2e9=await _0x1b9047[_0xe4212c(0x1e5)](this['prefix']+'*'),_0x422077=[];for(const _0x4af8b6 of _0x1fe2e9){const _0x1724fc=await _0x1b9047['get'](_0x4af8b6);_0x1724fc&&_0x422077[_0xe4212c(0x1ed)](JSON[_0xe4212c(0x1da)](_0x1724fc));}return _0x422077;}catch(_0x5e59ae){return logger[_0xe4212c(0x1ec)]({'event':_0x49eb64[_0xe4212c(0x1ef)],'error':_0x5e59ae['message']},_0x49eb64['IwtQi']),[];}}}module['exports']=new RedisHelper();