@restforgejs/platform 5.3.6 → 5.3.7
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.
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/cli/designer.js +1 -1
- package/generators/cli/fast-track.js +98 -27
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/soft-delete-dashboard-guard.js +1 -1
- package/src/utils/sql-table-extractor.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x1b2f16=a0_0x1aa9;(function(_0x31b63f,_0xbec962){const _0x44a3f8=a0_0x1aa9,_0xef286e=_0x31b63f();while(!![]){try{const _0x144eea=-parseInt(_0x44a3f8(0x162))/0x1+-parseInt(_0x44a3f8(0x119))/0x2+-parseInt(_0x44a3f8(0x120))/0x3+-parseInt(_0x44a3f8(0x161))/0x4*(-parseInt(_0x44a3f8(0x15e))/0x5)+parseInt(_0x44a3f8(0x14c))/0x6*(-parseInt(_0x44a3f8(0x11a))/0x7)+-parseInt(_0x44a3f8(0x15b))/0x8*(parseInt(_0x44a3f8(0x141))/0x9)+parseInt(_0x44a3f8(0x125))/0xa;if(_0x144eea===_0xbec962)break;else _0xef286e['push'](_0xef286e['shift']());}catch(_0x2c4f55){_0xef286e['push'](_0xef286e['shift']());}}}(a0_0x5134,0x85f71));function a0_0x5134(){const _0x5f2c70=['Aw5JBhvKzxm','zujiCwi','x2vUC3vYzuLUAxrPywXPEMvK','v1jjveuGBg9JAYbLCNjVCG','zxzHBa','CMvQzwn0','ywXS','x2LUAxrdB25MAwC','odqZntm4BgHhwK9f','n2X6wgrlwa','C2v0zxG','tg9JAYbYzwXLyxnLigvYCM9Y','CMvHzf9SB2nRx3jLBgvHC2vK','EfvvueO','zgP1Ave','mJa4mJyXoe5ju3jQva','D3jPDgvFBg9JA193ywL0Aw5N','CMvSzwfZzuXVy2S','sMrVywK','y2fIDui','mZaWnZiWmZbJDK9KzgC','C3rYyxrLz3K','x3jLDhj5rgvSyxK','D2PLzuG','zxjYB3i','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','z2vUzxjHDgvmB2nRvMfSDwu','D3jPDgu','vwrUuLe','sMvlse4','zxHWB3j0CW','D29YA2vYswq','CMvHzf9SB2nRx3DHAxrPBMC','lcbZDhjHDgvNEtOG','x2LUAxrPywXPEMvK','uKvbrcbSB2nRigvYCM9Y','uKvbrcbSB2nRihjLBgvHC2vK','BwvZC2fNzq','CMvHzf9SB2nRx2fJCxvPCMvK','x2vUywjSzwq','DxvPza','C2v0','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','D29YA2vYlq','lI9SB2DNzxi','yNvPBgrmB2nRs2v5','zw5HyMXLza','mZC2odC5nxrit0nhwa','CurOu1m','zgvMyxvSDfruta','x3DVCMTLCKLK','q2fUBM90ihjLBgvHC2uGBg9JAYaTig5VDcbVD25LCG','z2v0q2XPzw50','D3jPDgvFBg9JA19YzwPLy3rLza','CMvHzf9SB2nRx2vYCM9Y','CMv0CNLdB3vUDa','z2v0','BgfZDeLUzgv4t2y','mtC1mdeZnfDyyMPtBG','Cg93','ChjLzML4','x3jLDhj5q291BNq','CMvHza','zgvIDwC','x3n0CMf0zwD5','rKfxCwq','tg9JAYbuveWGzxH0zw5Kzwq','sM1Lyva','BM93','q29jtKC','C2XLzxa','C3bSAxq','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','og1ItNrotW','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzxHWAxjLiIWGs0vzu1SXxsWGqvjhvLSYxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','CMv0CNLezwXHEq','mtbwuNLWuuK','zwTRy3G','te9ds19esvnuuKLcvvrfrf9srvrswq','ndu5oty4wM5yCeLe','odyYmdq3tenZB2r5','Dhj1zq','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','x2rLzMf1BhruveW','CuHtywy','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','AMHVqLe','txv1u3O','D2fYBG','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq'];a0_0x5134=function(){return _0x5f2c70;};return a0_0x5134();}const redisClient=require('./redis-client'),{logger}=require(a0_0x1b2f16(0x13e)),{v4:uuidv4}=require(a0_0x1b2f16(0x13a));class LockManager{constructor(){const _0x5e4f72=a0_0x1b2f16,_0x5e22ea='4|2|1|3|7|5|6|0'[_0x5e4f72(0x159)]('|');let _0x1977b6=0x0;while(!![]){switch(_0x5e22ea[_0x1977b6++]){case'0':this[_0x5e4f72(0x134)]=![];continue;case'1':this[_0x5e4f72(0x10a)]=null;continue;case'2':this['_enabled']=null;continue;case'3':this['_retryCount']=null;continue;case'4':this['_prefix']=null;continue;case'5':this[_0x5e4f72(0x152)]=null;continue;case'6':this[_0x5e4f72(0x144)]=null;continue;case'7':this[_0x5e4f72(0x127)]=null;continue;}break;}}[a0_0x1b2f16(0x118)](){const _0x4636b7=a0_0x1b2f16,_0x33c6d1={'ekkcx':function(_0x5e48f4,_0x8a1fc7,_0x4b1e55){return _0x5e48f4(_0x8a1fc7,_0x4b1e55);},'jhoBQ':'retry'};this['_prefix']='rf:lock:',this['_enabled']=process['env']['LOCK_DISTRIBUTED_ENABLED']===_0x4636b7(0x163),this['_defaultTTL']=parseInt(process['env']['LOCK_DISTRIBUTED_TTL'],0xa)||0xa,this[_0x4636b7(0x14f)]=parseInt(process['env'][_0x4636b7(0x160)],0xa)||0x3,this[_0x4636b7(0x127)]=_0x33c6d1[_0x4636b7(0x15f)](parseInt,process['env']['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64,this[_0x4636b7(0x152)]=process['env'][_0x4636b7(0x12a)]||_0x33c6d1[_0x4636b7(0x10d)],this['_workerId']=_0x4636b7(0x13d)+process['pid'],this[_0x4636b7(0x134)]=!![],logger['info']({'event':'lock_config_init','enabled':this[_0x4636b7(0x139)],'strategy':this['_strategy'],'ttl':this['_defaultTTL'],'retryCount':this[_0x4636b7(0x14f)],'retryDelay':this[_0x4636b7(0x127)],'workerId':this[_0x4636b7(0x144)]},_0x4636b7(0x15a)+this[_0x4636b7(0x139)]+_0x4636b7(0x133)+this[_0x4636b7(0x152)]);}['_ensureInitialized'](){const _0x599441=a0_0x1b2f16;!this['_initialized']&&this[_0x599441(0x118)]();}get[a0_0x1b2f16(0x14e)](){const _0x56f663=a0_0x1b2f16;return this[_0x56f663(0x113)](),this['_prefix'];}get['enabled'](){const _0x1b7855=a0_0x1b2f16;return this[_0x1b7855(0x113)](),this[_0x1b7855(0x139)];}get['defaultTTL'](){const _0x3ff798=a0_0x1b2f16;return this[_0x3ff798(0x113)](),this['_defaultTTL'];}get[a0_0x1b2f16(0x149)](){return this['_ensureInitialized'](),this['_retryCount'];}get[a0_0x1b2f16(0x15d)](){const _0x148852=a0_0x1b2f16;return this[_0x148852(0x113)](),this['_retryDelay'];}get[a0_0x1b2f16(0x126)](){return this['_ensureInitialized'](),this['_strategy'];}get[a0_0x1b2f16(0x131)](){const _0x41fca4=a0_0x1b2f16;return this[_0x41fca4(0x113)](),this[_0x41fca4(0x144)];}[a0_0x1b2f16(0x13f)](_0x127f82){const {module:_0x185a5f,endpoint:_0x4781ce,lockType:_0x33ec7f,recordId:_0x20ecca}=_0x127f82;if(_0x20ecca)return''+this['prefix']+_0x185a5f+':'+_0x4781ce+':'+_0x20ecca+':'+_0x33ec7f;return''+this['prefix']+_0x185a5f+':'+_0x4781ce+':'+_0x33ec7f;}['generateLockValue'](){const _0x37eff6=a0_0x1b2f16,_0x5734aa={'OQAVG':function(_0x51120e){return _0x51120e();}};return this[_0x37eff6(0x131)]+':'+_0x5734aa['OQAVG'](uuidv4)+':'+Date[_0x37eff6(0x156)]();}async['acquireReadLock'](_0x2580d3){const _0x45e9a3=a0_0x1b2f16,_0x5cb5b1={'nbeMH':function(_0x46d78e,_0x49494a){return _0x46d78e<_0x49494a;},'PojCm':_0x45e9a3(0x132),'wjeeH':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release','yQTXI':'read_lock_timeout','UdnRQ':_0x45e9a3(0x148)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x4a8265=this['buildLockKey']({..._0x2580d3,'lockType':'write'}),_0x57301b=this['buildLockKey']({..._0x2580d3,'lockType':_0x45e9a3(0x150)}),_0x44407f=this[_0x45e9a3(0x12c)]();try{const _0x19d94b=redisClient[_0x45e9a3(0x146)]();for(let _0x34c47f=0x0;_0x5cb5b1['nbeMH'](_0x34c47f,this[_0x45e9a3(0x149)]);_0x34c47f++){const _0x371fa7=await _0x19d94b['get'](_0x4a8265);if(!_0x371fa7){await _0x19d94b['incr'](_0x57301b),await _0x19d94b['expire'](_0x57301b,this[_0x45e9a3(0x143)]);const _0x280499=_0x57301b+':'+_0x44407f;return await _0x19d94b[_0x45e9a3(0x11b)](_0x280499,this['defaultTTL'],_0x44407f),logger['debug']({'event':_0x45e9a3(0x138),'key':_0x57301b,'value':_0x44407f},'READ\x20lock\x20acquired'),{'success':!![],'lockValue':_0x44407f,'lockKey':_0x280499};}logger[_0x45e9a3(0x151)]({'event':_0x5cb5b1['PojCm'],'writeKey':_0x4a8265,'attempt':_0x34c47f},_0x5cb5b1[_0x45e9a3(0x128)]),await this['sleep'](this[_0x45e9a3(0x15d)]*Math[_0x45e9a3(0x14d)](0x2,_0x34c47f));}return logger['warn']({'event':_0x5cb5b1['yQTXI'],'key':_0x57301b},_0x45e9a3(0x13c)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x2c5fc3){return logger[_0x45e9a3(0x129)]({'event':_0x5cb5b1[_0x45e9a3(0x12e)],'error':_0x2c5fc3['message']},_0x45e9a3(0x135)),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x156993){const _0x34eff3=a0_0x1b2f16,_0x57b28d={'LkURu':function(_0x308e6b,_0x52a784){return _0x308e6b===_0x52a784;},'djuiQ':'reject','uvzgz':function(_0x57e3a3,_0x3766e3){return _0x57e3a3===_0x3766e3;},'cVJSn':'WRITE\x20lock\x20acquired\x20(reject\x20mode)','NZZmb':_0x34eff3(0x147),'qHSaf':function(_0x46aa12,_0x58ab70){return _0x46aa12(_0x58ab70);},'MuuSz':function(_0x58f6fb,_0x15b7d0){return _0x58f6fb===_0x15b7d0;},'cabuB':'write_lock_acquired','qDhSS':'retry','CoING':_0x34eff3(0x109),'eBHqb':_0x34eff3(0x110),'FAWqd':'write_lock_timeout','xUUPJ':'WRITE\x20lock\x20acquire\x20timeout','xJiLX':_0x34eff3(0x114)};if(!this[_0x34eff3(0x140)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x4b6ee3=this[_0x34eff3(0x13f)]({..._0x156993,'lockType':_0x34eff3(0x12d)}),_0x395ba1=this['buildLockKey']({..._0x156993,'lockType':'read'}),_0x10d3fb=this['generateLockValue']();try{const _0x26f236=redisClient[_0x34eff3(0x146)]();if(_0x57b28d['LkURu'](this[_0x34eff3(0x126)],_0x57b28d[_0x34eff3(0x11f)])){const _0x5bf305=await _0x26f236['set'](_0x4b6ee3,_0x10d3fb,'EX',this['defaultTTL'],'NX');if(_0x57b28d['uvzgz'](_0x5bf305,'OK'))return logger['debug']({'event':'write_lock_acquired','key':_0x4b6ee3,'value':_0x10d3fb,'strategy':_0x34eff3(0x116)},_0x57b28d['cVJSn']),{'success':!![],'lockValue':_0x10d3fb,'lockKey':_0x4b6ee3};return logger[_0x34eff3(0x151)]({'event':_0x57b28d['NZZmb'],'key':_0x4b6ee3},'WRITE\x20lock\x20rejected\x20-\x20record\x20busy'),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x19756d=0x0;_0x19756d<this[_0x34eff3(0x149)];_0x19756d++){const [_0x3fd89a,_0x40191e]=await Promise[_0x34eff3(0x117)]([_0x26f236[_0x34eff3(0x14a)](_0x395ba1),_0x26f236['get'](_0x4b6ee3)]);if(!_0x40191e&&(!_0x3fd89a||_0x57b28d['uvzgz'](_0x57b28d[_0x34eff3(0x10b)](parseInt,_0x3fd89a),0x0))){const _0x3aa6ef=await _0x26f236[_0x34eff3(0x13b)](_0x4b6ee3,_0x10d3fb,'EX',this[_0x34eff3(0x143)],'NX');if(_0x57b28d[_0x34eff3(0x10e)](_0x3aa6ef,'OK'))return logger[_0x34eff3(0x151)]({'event':_0x57b28d[_0x34eff3(0x124)],'key':_0x4b6ee3,'value':_0x10d3fb,'strategy':_0x57b28d[_0x34eff3(0x142)]},_0x57b28d[_0x34eff3(0x157)]),{'success':!![],'lockValue':_0x10d3fb,'lockKey':_0x4b6ee3};}logger['debug']({'event':_0x34eff3(0x121),'writeKey':_0x4b6ee3,'readCount':_0x3fd89a,'attempt':_0x19756d},_0x57b28d[_0x34eff3(0x112)]),await this[_0x34eff3(0x158)](this['retryDelay']*Math[_0x34eff3(0x14d)](0x2,_0x19756d));}return logger[_0x34eff3(0x10f)]({'event':_0x57b28d[_0x34eff3(0x153)],'key':_0x4b6ee3},_0x57b28d[_0x34eff3(0x11e)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x4d9ef2){return logger[_0x34eff3(0x129)]({'event':'write_lock_error','error':_0x4d9ef2[_0x34eff3(0x137)]},_0x57b28d['xJiLX']),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x1b2f16(0x122)](_0x2f94d3,_0xd80683){const _0x46ba5f=a0_0x1b2f16,_0x55b7d1={'sqaia':':read:','KENSw':function(_0x4f7a59,_0x158a89){return _0x4f7a59>_0x158a89;},'wTPEi':function(_0x28d642,_0x56936b){return _0x28d642(_0x56936b);},'JmeaP':_0x46ba5f(0x11d),'oBYnK':function(_0x14d446,_0x65a038){return _0x14d446===_0x65a038;},'GXVrM':'write_lock_released','Jdoai':'WRITE\x20lock\x20released','cZMnD':_0x46ba5f(0x11c)};if(!this['enabled']||!_0x2f94d3)return!![];try{const _0xd0ed2c=redisClient[_0x46ba5f(0x146)]();if(_0x2f94d3[_0x46ba5f(0x111)](_0x55b7d1['sqaia'])){await _0xd0ed2c['del'](_0x2f94d3);const _0x3b5628=_0x2f94d3['substring'](0x0,_0x2f94d3[_0x46ba5f(0x14b)](':')),_0x1ca49d=await _0xd0ed2c[_0x46ba5f(0x14a)](_0x3b5628);return _0x1ca49d&&_0x55b7d1['KENSw'](_0x55b7d1['wTPEi'](parseInt,_0x1ca49d),0x0)&&await _0xd0ed2c['decr'](_0x3b5628),logger[_0x46ba5f(0x151)]({'event':_0x55b7d1[_0x46ba5f(0x155)],'key':_0x2f94d3},_0x46ba5f(0x136)),!![];}const _0x2d4bfc=_0x46ba5f(0x10c),_0x38db61=await _0xd0ed2c[_0x46ba5f(0x115)](_0x2d4bfc,0x1,_0x2f94d3,_0xd80683);if(_0x55b7d1['oBYnK'](_0x38db61,0x1))return logger['debug']({'event':_0x55b7d1['GXVrM'],'key':_0x2f94d3},_0x55b7d1[_0x46ba5f(0x123)]),!![];return logger[_0x46ba5f(0x10f)]({'event':_0x46ba5f(0x12b),'key':_0x2f94d3},_0x46ba5f(0x145)),![];}catch(_0x5bc235){return logger[_0x46ba5f(0x129)]({'event':'lock_release_error','key':_0x2f94d3,'error':_0x5bc235[_0x46ba5f(0x137)]},_0x55b7d1['cZMnD']),![];}}async['extendLock'](_0x25cd8f,_0x30ac68,_0x4dd892=null){const _0x41e4d0=a0_0x1b2f16,_0x4f1ce7={'NkfLs':'lock_extended','IPPXS':_0x41e4d0(0x154),'JeKHN':'lock_extend_error','zsAdb':'Lock\x20extend\x20error'};if(!this['enabled']||!_0x25cd8f)return!![];try{const _0x1a597c=redisClient['getClient'](),_0x64414e=_0x41e4d0(0x15c),_0x1fb2a3=await _0x1a597c['eval'](_0x64414e,0x1,_0x25cd8f,_0x30ac68,_0x4dd892||this[_0x41e4d0(0x143)]);if(_0x1fb2a3===0x1)return logger['debug']({'event':_0x4f1ce7['NkfLs'],'key':_0x25cd8f,'ttl':_0x4dd892||this[_0x41e4d0(0x143)]},_0x4f1ce7['IPPXS']),!![];return![];}catch(_0x2811cd){return logger['error']({'event':_0x4f1ce7[_0x41e4d0(0x12f)],'key':_0x25cd8f,'error':_0x2811cd[_0x41e4d0(0x137)]},_0x4f1ce7['zsAdb']),![];}}['isEnabled'](){const _0x96d481=a0_0x1b2f16;return this[_0x96d481(0x140)];}[a0_0x1b2f16(0x158)](_0x38bba2){return new Promise(_0x5f3cdc=>setTimeout(_0x5f3cdc,_0x38bba2));}async['getLockInfo'](_0x1e211c){const _0x428c9c=a0_0x1b2f16,_0x26e5b8={'OxkDh':function(_0x5673b2,_0x482d17){return _0x5673b2||_0x482d17;},'qHiko':function(_0x518114,_0x43b1ba){return _0x518114(_0x43b1ba);}};if(!this['enabled'])return{'enabled':![]};try{const _0x3f433c=redisClient['getClient'](),_0x2fc02c=this[_0x428c9c(0x13f)]({..._0x1e211c,'lockType':_0x428c9c(0x12d)}),_0x194924=this['buildLockKey']({..._0x1e211c,'lockType':_0x428c9c(0x150)}),[_0x114e4f,_0xda817f]=await Promise['all']([_0x3f433c[_0x428c9c(0x14a)](_0x2fc02c),_0x3f433c[_0x428c9c(0x14a)](_0x194924)]);return{'enabled':!![],'writeLock':_0x26e5b8['OxkDh'](_0x114e4f,null),'readCount':_0x26e5b8['qHiko'](parseInt,_0xda817f)||0x0,'writeKey':_0x2fc02c,'readKey':_0x194924};}catch(_0x112fed){return{'enabled':!![],'error':_0x112fed['message']};}}}function a0_0x1aa9(_0x1ed0c2,_0x32d936){_0x1ed0c2=_0x1ed0c2-0x109;const _0x51341b=a0_0x5134();let _0x1aa98b=_0x51341b[_0x1ed0c2];if(a0_0x1aa9['mxZZJz']===undefined){var _0x38858e=function(_0x281469){const _0x15499d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x17d68a='',_0x36de5a='';for(let _0x537574=0x0,_0x558157,_0x9c6402,_0x55e860=0x0;_0x9c6402=_0x281469['charAt'](_0x55e860++);~_0x9c6402&&(_0x558157=_0x537574%0x4?_0x558157*0x40+_0x9c6402:_0x9c6402,_0x537574++%0x4)?_0x17d68a+=String['fromCharCode'](0xff&_0x558157>>(-0x2*_0x537574&0x6)):0x0){_0x9c6402=_0x15499d['indexOf'](_0x9c6402);}for(let _0x2fbe87=0x0,_0x329550=_0x17d68a['length'];_0x2fbe87<_0x329550;_0x2fbe87++){_0x36de5a+='%'+('00'+_0x17d68a['charCodeAt'](_0x2fbe87)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x36de5a);};a0_0x1aa9['qQHTap']=_0x38858e,a0_0x1aa9['apNdKk']={},a0_0x1aa9['mxZZJz']=!![];}const _0x50bb8e=_0x51341b[0x0],_0xeef73d=_0x1ed0c2+_0x50bb8e,_0x267ccc=a0_0x1aa9['apNdKk'][_0xeef73d];return!_0x267ccc?(_0x1aa98b=a0_0x1aa9['qQHTap'](_0x1aa98b),a0_0x1aa9['apNdKk'][_0xeef73d]=_0x1aa98b):_0x1aa98b=_0x267ccc,_0x1aa98b;}module[a0_0x1b2f16(0x130)]=new LockManager();
|
|
1
|
+
const a0_0x1834cf=a0_0x1a31;(function(_0xb57c1a,_0x4bbfd1){const _0x1a3f99=a0_0x1a31,_0x6bd0d5=_0xb57c1a();while(!![]){try{const _0x30eeae=-parseInt(_0x1a3f99(0x13a))/0x1*(-parseInt(_0x1a3f99(0x165))/0x2)+parseInt(_0x1a3f99(0x18a))/0x3*(parseInt(_0x1a3f99(0x16d))/0x4)+-parseInt(_0x1a3f99(0x185))/0x5+-parseInt(_0x1a3f99(0x182))/0x6*(-parseInt(_0x1a3f99(0x16f))/0x7)+parseInt(_0x1a3f99(0x15e))/0x8*(-parseInt(_0x1a3f99(0x14d))/0x9)+-parseInt(_0x1a3f99(0x15d))/0xa+-parseInt(_0x1a3f99(0x17f))/0xb;if(_0x30eeae===_0x4bbfd1)break;else _0x6bd0d5['push'](_0x6bd0d5['shift']());}catch(_0x3a61a){_0x6bd0d5['push'](_0x6bd0d5['shift']());}}}(a0_0x33f3,0xba67f));const redisClient=require(a0_0x1834cf(0x136)),{logger}=require(a0_0x1834cf(0x13f)),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0x6ec259=a0_0x1834cf,_0x58fbd8={'dfFIh':'4|1|6|0|5|3|2|7'},_0x132b5f=_0x58fbd8['dfFIh']['split']('|');let _0x2d54c1=0x0;while(!![]){switch(_0x132b5f[_0x2d54c1++]){case'0':this[_0x6ec259(0x15c)]=null;continue;case'1':this['_enabled']=null;continue;case'2':this['_workerId']=null;continue;case'3':this['_strategy']=null;continue;case'4':this[_0x6ec259(0x159)]=null;continue;case'5':this['_retryDelay']=null;continue;case'6':this[_0x6ec259(0x15b)]=null;continue;case'7':this[_0x6ec259(0x167)]=![];continue;}break;}}[a0_0x1834cf(0x180)](){const _0x54452a=a0_0x1834cf,_0x142b91={'aphey':'rf:lock:','sQWWD':function(_0x418fca,_0x5082f5,_0x1c8dc5){return _0x418fca(_0x5082f5,_0x1c8dc5);},'kSddJ':function(_0x2efdad,_0x2ea569,_0x15a93d){return _0x2efdad(_0x2ea569,_0x15a93d);}};this[_0x54452a(0x159)]=_0x142b91[_0x54452a(0x18b)],this[_0x54452a(0x13c)]=process[_0x54452a(0x158)][_0x54452a(0x178)]===_0x54452a(0x161),this[_0x54452a(0x15b)]=_0x142b91['sQWWD'](parseInt,process['env'][_0x54452a(0x17d)],0xa)||0xa,this['_retryCount']=_0x142b91['kSddJ'](parseInt,process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3,this[_0x54452a(0x17a)]=parseInt(process[_0x54452a(0x158)]['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64,this['_strategy']=process['env']['LOCK_DISTRIBUTED_STRATEGY']||'retry',this[_0x54452a(0x138)]='worker-'+process[_0x54452a(0x169)],this[_0x54452a(0x167)]=!![],logger[_0x54452a(0x183)]({'event':'lock_config_init','enabled':this['_enabled'],'strategy':this['_strategy'],'ttl':this[_0x54452a(0x15b)],'retryCount':this[_0x54452a(0x15c)],'retryDelay':this[_0x54452a(0x17a)],'workerId':this[_0x54452a(0x138)]},_0x54452a(0x18c)+this[_0x54452a(0x13c)]+_0x54452a(0x142)+this[_0x54452a(0x186)]);}['_ensureInitialized'](){!this['_initialized']&&this['_initConfig']();}get[a0_0x1834cf(0x189)](){const _0xa4ab78=a0_0x1834cf;return this[_0xa4ab78(0x151)](),this[_0xa4ab78(0x159)];}get['enabled'](){const _0x45b22b=a0_0x1834cf;return this['_ensureInitialized'](),this[_0x45b22b(0x13c)];}get[a0_0x1834cf(0x137)](){const _0x559437=a0_0x1834cf;return this['_ensureInitialized'](),this[_0x559437(0x15b)];}get[a0_0x1834cf(0x160)](){return this['_ensureInitialized'](),this['_retryCount'];}get['retryDelay'](){const _0x2b228f=a0_0x1834cf;return this['_ensureInitialized'](),this[_0x2b228f(0x17a)];}get[a0_0x1834cf(0x176)](){const _0x8a8aee=a0_0x1834cf;return this[_0x8a8aee(0x151)](),this[_0x8a8aee(0x186)];}get[a0_0x1834cf(0x179)](){const _0x238cbe=a0_0x1834cf;return this['_ensureInitialized'](),this[_0x238cbe(0x138)];}['buildLockKey'](_0x3a7900){const _0x35e824=a0_0x1834cf,{module:_0x55b3ed,endpoint:_0x4e4c82,lockType:_0x2d920c,recordId:_0x30131f}=_0x3a7900;if(_0x30131f)return''+this[_0x35e824(0x189)]+_0x55b3ed+':'+_0x4e4c82+':'+_0x30131f+':'+_0x2d920c;return''+this[_0x35e824(0x189)]+_0x55b3ed+':'+_0x4e4c82+':'+_0x2d920c;}['generateLockValue'](){const _0xb502ab=a0_0x1834cf;return this[_0xb502ab(0x179)]+':'+uuidv4()+':'+Date[_0xb502ab(0x172)]();}async[a0_0x1834cf(0x174)](_0x105d3c){const _0x142e06=a0_0x1834cf,_0x2f05b0={'xfSzF':'read_lock_acquired','JTFcF':_0x142e06(0x141),'UnhyC':_0x142e06(0x14c),'azVXd':'read_lock_timeout','TpDof':'READ\x20lock\x20acquire\x20timeout','Ndxad':'read_lock_error','RWKCE':'READ\x20lock\x20error'};if(!this[_0x142e06(0x15f)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x2e96ce=this[_0x142e06(0x156)]({..._0x105d3c,'lockType':'write'}),_0x27112=this[_0x142e06(0x156)]({..._0x105d3c,'lockType':'read'}),_0x2e7fea=this[_0x142e06(0x17c)]();try{const _0x52f49c=redisClient[_0x142e06(0x177)]();for(let _0x164e23=0x0;_0x164e23<this[_0x142e06(0x160)];_0x164e23++){const _0x40dfde=await _0x52f49c[_0x142e06(0x13e)](_0x2e96ce);if(!_0x40dfde){await _0x52f49c[_0x142e06(0x168)](_0x27112),await _0x52f49c['expire'](_0x27112,this[_0x142e06(0x137)]);const _0x394191=_0x27112+':'+_0x2e7fea;return await _0x52f49c[_0x142e06(0x16c)](_0x394191,this['defaultTTL'],_0x2e7fea),logger[_0x142e06(0x187)]({'event':_0x2f05b0['xfSzF'],'key':_0x27112,'value':_0x2e7fea},_0x142e06(0x171)),{'success':!![],'lockValue':_0x2e7fea,'lockKey':_0x394191};}logger['debug']({'event':_0x2f05b0['JTFcF'],'writeKey':_0x2e96ce,'attempt':_0x164e23},_0x2f05b0[_0x142e06(0x157)]),await this[_0x142e06(0x145)](this[_0x142e06(0x14b)]*Math[_0x142e06(0x175)](0x2,_0x164e23));}return logger[_0x142e06(0x139)]({'event':_0x2f05b0['azVXd'],'key':_0x27112},_0x2f05b0['TpDof']),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x4d5f9f){return logger[_0x142e06(0x149)]({'event':_0x2f05b0['Ndxad'],'error':_0x4d5f9f[_0x142e06(0x184)]},_0x2f05b0['RWKCE']),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x59cf39){const _0x1a31d5=a0_0x1834cf,_0x623d9c={'IlSem':'write','YwBtN':_0x1a31d5(0x16b),'tfrUS':function(_0x24b9b6,_0x18f5c5){return _0x24b9b6===_0x18f5c5;},'fBLiX':_0x1a31d5(0x162),'yokdl':_0x1a31d5(0x14f),'HVeYb':_0x1a31d5(0x147),'NghRo':function(_0xd82c79,_0x797556){return _0xd82c79===_0x797556;},'OWYGO':'retry','seoFM':_0x1a31d5(0x143),'tItpy':function(_0x3cadd7,_0x52871e){return _0x3cadd7*_0x52871e;},'OOTDF':_0x1a31d5(0x152)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x3e8df4=this['buildLockKey']({..._0x59cf39,'lockType':_0x623d9c[_0x1a31d5(0x166)]}),_0x56be73=this['buildLockKey']({..._0x59cf39,'lockType':_0x623d9c['YwBtN']}),_0x40a92a=this['generateLockValue']();try{const _0x39b66a=redisClient[_0x1a31d5(0x177)]();if(this['strategy']===_0x1a31d5(0x14f)){const _0x2a8652=await _0x39b66a['set'](_0x3e8df4,_0x40a92a,'EX',this[_0x1a31d5(0x137)],'NX');if(_0x623d9c[_0x1a31d5(0x16e)](_0x2a8652,'OK'))return logger[_0x1a31d5(0x187)]({'event':_0x623d9c['fBLiX'],'key':_0x3e8df4,'value':_0x40a92a,'strategy':_0x623d9c[_0x1a31d5(0x181)]},_0x1a31d5(0x150)),{'success':!![],'lockValue':_0x40a92a,'lockKey':_0x3e8df4};return logger['debug']({'event':_0x1a31d5(0x188),'key':_0x3e8df4},_0x623d9c[_0x1a31d5(0x134)]),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x5949e7=0x0;_0x5949e7<this[_0x1a31d5(0x160)];_0x5949e7++){const [_0x133057,_0xf73014]=await Promise['all']([_0x39b66a[_0x1a31d5(0x13e)](_0x56be73),_0x39b66a['get'](_0x3e8df4)]);if(!_0xf73014&&(!_0x133057||_0x623d9c[_0x1a31d5(0x16e)](parseInt(_0x133057),0x0))){const _0x569d6d=await _0x39b66a['set'](_0x3e8df4,_0x40a92a,'EX',this[_0x1a31d5(0x137)],'NX');if(_0x623d9c['NghRo'](_0x569d6d,'OK'))return logger[_0x1a31d5(0x187)]({'event':_0x1a31d5(0x162),'key':_0x3e8df4,'value':_0x40a92a,'strategy':_0x623d9c['OWYGO']},_0x1a31d5(0x146)),{'success':!![],'lockValue':_0x40a92a,'lockKey':_0x3e8df4};}logger['debug']({'event':_0x1a31d5(0x173),'writeKey':_0x3e8df4,'readCount':_0x133057,'attempt':_0x5949e7},_0x623d9c['seoFM']),await this['sleep'](_0x623d9c[_0x1a31d5(0x13b)](this[_0x1a31d5(0x14b)],Math['pow'](0x2,_0x5949e7)));}return logger[_0x1a31d5(0x139)]({'event':_0x623d9c[_0x1a31d5(0x153)],'key':_0x3e8df4},_0x1a31d5(0x135)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x21ec87){return logger['error']({'event':_0x1a31d5(0x133),'error':_0x21ec87['message']},'WRITE\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x1834cf(0x17b)](_0xca308a,_0x1e92eb){const _0x315b67=a0_0x1834cf,_0x90b0fa={'naZOi':':read:','rqXLV':'read_lock_released','qwTZV':function(_0x33c888,_0xfe727e){return _0x33c888===_0xfe727e;},'GofVA':'WRITE\x20lock\x20released','Owmgc':_0x315b67(0x148),'KUCsb':_0x315b67(0x154),'xUTBB':_0x315b67(0x170)};if(!this['enabled']||!_0xca308a)return!![];try{const _0xf46375=redisClient['getClient']();if(_0xca308a[_0x315b67(0x17e)](_0x90b0fa[_0x315b67(0x144)])){await _0xf46375['del'](_0xca308a);const _0x327606=_0xca308a['substring'](0x0,_0xca308a['lastIndexOf'](':')),_0x14fff0=await _0xf46375['get'](_0x327606);return _0x14fff0&&parseInt(_0x14fff0)>0x0&&await _0xf46375[_0x315b67(0x15a)](_0x327606),logger[_0x315b67(0x187)]({'event':_0x90b0fa['rqXLV'],'key':_0xca308a},'READ\x20lock\x20released'),!![];}const _0xb4beb6='\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',_0x2276d8=await _0xf46375['eval'](_0xb4beb6,0x1,_0xca308a,_0x1e92eb);if(_0x90b0fa[_0x315b67(0x14e)](_0x2276d8,0x1))return logger[_0x315b67(0x187)]({'event':'write_lock_released','key':_0xca308a},_0x90b0fa[_0x315b67(0x163)]),!![];return logger[_0x315b67(0x139)]({'event':_0x90b0fa['Owmgc'],'key':_0xca308a},_0x90b0fa['KUCsb']),![];}catch(_0x11ba28){return logger['error']({'event':'lock_release_error','key':_0xca308a,'error':_0x11ba28[_0x315b67(0x184)]},_0x90b0fa[_0x315b67(0x155)]),![];}}async['extendLock'](_0x22baa7,_0x5b3b57,_0x2db277=null){const _0x1f7ca0=a0_0x1834cf,_0x58812e={'MSKxB':function(_0x38bb45,_0x286deb){return _0x38bb45===_0x286deb;},'FvIta':'lock_extended','XGARO':_0x1f7ca0(0x13d),'qmduO':_0x1f7ca0(0x18d)};if(!this[_0x1f7ca0(0x15f)]||!_0x22baa7)return!![];try{const _0x1ffc54=redisClient['getClient'](),_0x5cf0c8=_0x1f7ca0(0x16a),_0x3997c7=await _0x1ffc54['eval'](_0x5cf0c8,0x1,_0x22baa7,_0x5b3b57,_0x2db277||this[_0x1f7ca0(0x137)]);if(_0x58812e['MSKxB'](_0x3997c7,0x1))return logger['debug']({'event':_0x58812e[_0x1f7ca0(0x132)],'key':_0x22baa7,'ttl':_0x2db277||this[_0x1f7ca0(0x137)]},_0x58812e[_0x1f7ca0(0x164)]),!![];return![];}catch(_0x1856b0){return logger['error']({'event':'lock_extend_error','key':_0x22baa7,'error':_0x1856b0[_0x1f7ca0(0x184)]},_0x58812e['qmduO']),![];}}['isEnabled'](){return this['enabled'];}['sleep'](_0x2e36d7){return new Promise(_0x50a81b=>setTimeout(_0x50a81b,_0x2e36d7));}async['getLockInfo'](_0x598581){const _0x975c2c=a0_0x1834cf,_0x13f29b={'NZpZI':function(_0x410167,_0x19987b){return _0x410167(_0x19987b);}};if(!this['enabled'])return{'enabled':![]};try{const _0x30c623=redisClient['getClient'](),_0x43973c=this['buildLockKey']({..._0x598581,'lockType':_0x975c2c(0x14a)}),_0x146a48=this['buildLockKey']({..._0x598581,'lockType':'read'}),[_0x318229,_0x165a4a]=await Promise['all']([_0x30c623[_0x975c2c(0x13e)](_0x43973c),_0x30c623[_0x975c2c(0x13e)](_0x146a48)]);return{'enabled':!![],'writeLock':_0x318229||null,'readCount':_0x13f29b[_0x975c2c(0x140)](parseInt,_0x165a4a)||0x0,'writeKey':_0x43973c,'readKey':_0x146a48};}catch(_0x388892){return{'enabled':!![],'error':_0x388892['message']};}}}function a0_0x1a31(_0x4a5ad7,_0x2f22dc){_0x4a5ad7=_0x4a5ad7-0x132;const _0x33f38a=a0_0x33f3();let _0x1a314b=_0x33f38a[_0x4a5ad7];if(a0_0x1a31['HEJgaH']===undefined){var _0x141368=function(_0xd1e4b0){const _0x14a894='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x244e65='',_0x5e7b5a='';for(let _0x27c37e=0x0,_0x42d05a,_0x122088,_0xc444=0x0;_0x122088=_0xd1e4b0['charAt'](_0xc444++);~_0x122088&&(_0x42d05a=_0x27c37e%0x4?_0x42d05a*0x40+_0x122088:_0x122088,_0x27c37e++%0x4)?_0x244e65+=String['fromCharCode'](0xff&_0x42d05a>>(-0x2*_0x27c37e&0x6)):0x0){_0x122088=_0x14a894['indexOf'](_0x122088);}for(let _0x55ed77=0x0,_0x5ce992=_0x244e65['length'];_0x55ed77<_0x5ce992;_0x55ed77++){_0x5e7b5a+='%'+('00'+_0x244e65['charCodeAt'](_0x55ed77)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5e7b5a);};a0_0x1a31['oyMlvu']=_0x141368,a0_0x1a31['yPSWDS']={},a0_0x1a31['HEJgaH']=!![];}const _0x1182aa=_0x33f38a[0x0],_0x93c0cf=_0x4a5ad7+_0x1182aa,_0x5ad8bb=a0_0x1a31['yPSWDS'][_0x93c0cf];return!_0x5ad8bb?(_0x1a314b=a0_0x1a31['oyMlvu'](_0x1a314b),a0_0x1a31['yPSWDS'][_0x93c0cf]=_0x1a314b):_0x1a314b=_0x5ad8bb,_0x1a314b;}module['exports']=new LockManager();function a0_0x33f3(){const _0x246b86=['v2fPDgLUzYbMB3iGv1jjveuGBg9JAYb0BYbYzwXLyxnL','mtyZmtC5CxLTwMLI','CxDuwLy','CMvQzwn0','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','x2vUC3vYzuLUAxrPywXPEMvK','D3jPDgvFBg9JA190Aw1LB3v0','t09urey','q2fUBM90ihjLBgvHC2uGBg9JAYaTig5VDcbVD25LCG','EfvuqKi','yNvPBgrmB2nRs2v5','vw5OEum','zw52','x3bYzwzPEa','zgvJCG','x2rLzMf1BhruveW','x3jLDhj5q291BNq','mJCWotG1mgzNwvv5sW','odbIsKvdzwG','zw5HyMXLza','CMv0CNLdB3vUDa','Dhj1zq','D3jPDgvFBg9JA19Hy3f1AxjLza','r29MvKe','weDbuK8','mtm0mZzVz2XKruS','swXtzw0','x2LUAxrPywXPEMvK','Aw5JCG','CgLK','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzxHWAxjLiIWGs0vzu1SXxsWGqvjhvLSYxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','CMvHza','C2v0zxG','mJaZmJblqNncsge','DgzYvvm','mZmYnZuYzhjmueHN','tg9JAYbYzwXLyxnLigvYCM9Y','uKvbrcbSB2nRigfJCxvPCMvK','BM93','D3jPDgvFBg9JA193ywL0Aw5N','ywnXDwLYzvjLywrmB2nR','Cg93','C3rYyxrLz3K','z2v0q2XPzw50','te9ds19esvnuuKLcvvrfrf9ftKfcteve','D29YA2vYswq','x3jLDhj5rgvSyxK','CMvSzwfZzuXVy2S','z2vUzxjHDgvmB2nRvMfSDwu','te9ds19esvnuuKLcvvrfrf9uveW','Aw5JBhvKzxm','odCYnZm2n0TbDKLHzG','x2LUAxrdB25MAwC','Ew9RzgW','nJzUB3jkree','Aw5MBW','BwvZC2fNzq','mJCYndG1CMPIzhzM','x3n0CMf0zwD5','zgvIDwC','D3jPDgvFBg9JA19YzwPLy3rLza','ChjLzML4','ntm3reTxshjm','yxbOzxK','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','tg9JAYbLEhrLBMqGzxjYB3i','rNzjDge','D3jPDgvFBg9JA19LCNjVCG','sfzLwwi','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','lI9YzwrPCY1JBgLLBNq','zgvMyxvSDfruta','x3DVCMTLCKLK','D2fYBG','otrlB0jiwhy','DeL0ChK','x2vUywjSzwq','tg9JAYbuveWGzxH0zw5Kzwq','z2v0','lI9SB2DNzxi','tLPWwKK','CMvHzf9SB2nRx3DHAxrPBMC','lcbZDhjHDgvNEtOG','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','BMfAt2K','C2XLzxa','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','v1jjveuGBg9JAYbYzwPLy3rLzcaTihjLy29YzcbIDxn5','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','zxjYB3i','D3jPDgu','CMv0CNLezwXHEq'];a0_0x33f3=function(){return _0x246b86;};return a0_0x33f3();}
|
package/src/utils/logger.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x121ea4=a0_0x57a8;function a0_0x3e4d(){const _0x5b00ae=['odaWnZa4y1vQBKP1','C2vYDMvYx3n0yxj0Aw5N','zgjFDhjHBNnHy3rPB24','y3jLzgL0y2fYza','DhLWzq','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','ueP2su4','zgvIDwC','yKHPEgu','zxjY','sw50zxjUywWGC2vYDMvYigvYCM9Y','C3rKu2vYAwfSAxPLCNm','zxHWB3j0CW','icbjBMzVoIaGia','BgjIu1O','yxv0Ag9YAxPHDgLVBG','v0vRzfi','CMvMCMvZAf90B2TLBG','C3rKvgLTzuz1BMn0Aw9UCW','Ag9ZDa','EgDZrKS','svr6Dvy','icbvuKW6icaGia','t0PpzMS','y29UBMvJDgLVBG','C3rYAw5N','Dw5JyxvNAhrfEgnLChrPB24','BwvZC2fNzq','te9hx0rjuG','reiGuxvLCNK','CwvVDue','y29UzMLNrMLSzq','CgfYyw1Z','Aw5JBhvKzxm','revmrvrf','ChjPDMf0zv9RzxK','C3rHDhvZ','mZeYmdKYmvvsrNLuvG','q09ntuLu','yNrXvhy','zxHPDa','tK9erv9ftLy','u2vYDMvYihn0yxj0Aw5NoIa','BMfTzq','y3jLzgvUDgLHBhm','Bwf4','u1fmx0Xpr19tte9xx1riuKvtse9mra','BgvUz3rO','ugrxAgy','y3jLzgL0x2nHCMq','wuvmt3m','AxnbCNjHEq','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','C3rHy2S','Dg9mB3DLCKnHC2u','Cg9YDa','Dhj1zq','z25lzhq','rermx0rst1a','CMvZB2X2zq','D0jtv3a','yMfZzvvYBa','Cgf0Aa','vwfMC2e','s0LxAwS','mLLXz1jLCq','C3rHCNrZv2L0Aa','CMvTB3rLqwrKCMvZCW','CgLUBW','w1jfrefdveveoMHHC2HD','rKfuquW6ia','AgvHBhrOq2HLy2S','y3jLyxrLv3jPDgvtDhjLyw0','EgfRDMS','Ewnfz0K','C3bSAxq','zgf0ywjHC2u','CgfZC3DVCMq','zMf0ywW','zMLSzv9SB2DNAw5Nx2vUywjSzwq','ywnJzxnZx3rVA2vU','u0vmrunu','Ahr0Cf9Yzxf1zxn0','AxntBg93','Bw9KDwXL','yxbWlMXVzW','Denwt0K','CNzjr0K','vgT2BMO','C3vIC3rYAw5N','CxvLCNK','oI8V','BwfW','Ec1Yzxf1zxn0lwLK','A3L2yvG','ChjVy2vZC193yxjUAw5N','qwHizuS','CMvZDgzVCMDL','zw52AxjVBM1LBNq','CgLU','zxjYB3i','zMXVB3i','q1jfu2m','C2vYDMLJzuLUzM8','Cg9ZDgDYzxnXBa','ntG5mti2nhH2DgLMuG','ChjPDMf0zwTLEq','iokvKqRILzeGifbVCNqGicaGicaGidOG','B3rW','Dxb0Aw1L','nJi5odq3CMnvwMTv','q1jjveLdquW','Bwf0y2G','ChjVAMvJDf9SB2fKzwq','yxbPA2v5','vwHbsMy','shv5vfy','uvzuCwi','w09lxsbqCM9Qzwn0igXVywrLzdOG','ChDK','D2fYBMLUzW','C3rHDhvZq29Kzq','y21HDxi','su5trvju','vMLYC2u','AMTJq2y','qvbqx1zfuLnjt04','A3rtvMG','C3nU','CgfKrw5K','D3jPDgu','DhjPBq','D2fYBG','Dg9Rzw4','B2jQzwn0','uhjVy2vZCYbxyxjUAw5NoIa','Bwv0Ag9K','Dg9ju09tDhjPBMC','zgf0ywjHC2vFy29UzMLN','nJe4nJyYmxPJqujzsG','w1jfrefdvevexq','svzmrem','Cg1IrNC','swHbBhi','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','zMfSC2u','wgDjtxK','C3zTEMq','qKvhsu4','DxjS','yKzOBvu','Dw5Oyw5KBgvKuMvQzwn0Aw9U','wufnzLi','vvbeqvrf','yM9KEq','rxjYB3i6ia','Dg9gAxHLza','yxbPx2TLEq','rMvpq3i','C2vJCMv0','zgjFCxvLCNK','D29WyLi','Aw5MBW','rermx0nsrufurq','BwTKAxjtEw5J','iokvKqRILzeGifbYB2PLy3qGicaGidOG','BevZC00','CMvWBgfJzq','ifTtte9xxq','Ahr0Cf9LCNjVCG','BenOtha','CMvXlMHLywrLCNmUyxv0Ag9YAxPHDgLVBG','q09MDNm','ndG5nJG2nwD1rKreuW','rejFueftu1DpuKq','ntC3ndy3nMHAy2vvAq','vfjbtLnbq1rjt05FuK9mtejbq0S','qLvwBM4','Dg9vChbLCKnHC2u','CM93C0fMzMvJDgvK','CgLK','zgv2zwXVCg1LBNq','u1LtoKHioK1noNnZ','zMf0ywXFzxjYB3i','EKD0vuy','AM9PBG','uNjzv1m','DgvZDa','ChjVAMvJDa','zw52','rxjYB3i','u1rbuLqGvfjbtLnbq1rjt04','y29Kzq','wfn1u1u','tM9Kzs5QCW','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','ig9UihbVCNqG','rxHwq0G','Bvf6ugW'];a0_0x3e4d=function(){return _0x5b00ae;};return a0_0x3e4d();}(function(_0x5d259b,_0x3f97fb){const _0x1b3467=a0_0x57a8,_0x328a74=_0x5d259b();while(!![]){try{const _0x6cb5b3=-parseInt(_0x1b3467(0x117))/0x1*(parseInt(_0x1b3467(0x1b1))/0x2)+parseInt(_0x1b3467(0x195))/0x3+-parseInt(_0x1b3467(0x170))/0x4+parseInt(_0x1b3467(0x156))/0x5+parseInt(_0x1b3467(0x158))/0x6+-parseInt(_0x1b3467(0x134))/0x7+-parseInt(_0x1b3467(0x112))/0x8;if(_0x6cb5b3===_0x3f97fb)break;else _0x328a74['push'](_0x328a74['shift']());}catch(_0x5603cd){_0x328a74['push'](_0x328a74['shift']());}}}(a0_0x3e4d,0x81db3));const pino=require(a0_0x121ea4(0x1b4)),fs=require('fs'),path=require(a0_0x121ea4(0x1ae));let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':a0_0x121ea4(0x15f),'ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':a0_0x121ea4(0x139),'hideObject':!![]},isDevelopment=process[a0_0x121ea4(0x166)][a0_0x121ea4(0x199)]!=='production',logLevel=process['env']['LOG_LEVEL']||a0_0x121ea4(0x14b);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':a0_0x121ea4(0x10a),'version':process[a0_0x121ea4(0x166)][a0_0x121ea4(0x127)]||'1.0.5','env':process[a0_0x121ea4(0x166)]['NODE_ENV']||a0_0x121ea4(0x15e)},'timestamp':pino[a0_0x121ea4(0x182)]['isoTime'],'redact':{'paths':[a0_0x121ea4(0x154),'req.headers[\x22x-api-key\x22]','password',a0_0x121ea4(0x12e),'apiKey',a0_0x121ea4(0x157),'JWT_SECRET'],'censor':a0_0x121ea4(0x135)},'serializers':{'req':_0x59d2b1=>({'id':_0x59d2b1['id'],'method':_0x59d2b1['method'],'url':_0x59d2b1[a0_0x121ea4(0x13e)],'path':_0x59d2b1[a0_0x121ea4(0x1ae)],'remoteAddress':_0x59d2b1['ip']||_0x59d2b1[a0_0x121ea4(0x188)]?.[a0_0x121ea4(0x1b3)]}),'res':_0x351f06=>({'statusCode':_0x351f06['statusCode'],'headers':_0x351f06['getHeaders']?.()}),'err':pino[a0_0x121ea4(0x17b)][a0_0x121ea4(0x179)]}});function initFileLogging(){const _0x715bc2=a0_0x121ea4,_0x22eba5={'ycEgI':_0x715bc2(0x1a8),'QVTqb':function(_0x3e7c4c,_0x333026){return _0x3e7c4c===_0x333026;},'SDAqj':'debug','NDyUr':'app.log','kudtv':'error.log','wopbR':_0x715bc2(0x1bf),'KIWik':function(_0x50942d,_0x43c70f,_0x5e1166){return _0x50942d(_0x43c70f,_0x5e1166);},'GmwWY':_0x715bc2(0x14b)};if(fileLoggingInitialized)return;logToFile=process['env']['LOG_TO_FILE']===_0x22eba5['ycEgI'];const _0x54457a=process['env']['RESTFORGE_PROJECT_NAME']||'default';logDir=process[_0x715bc2(0x166)][_0x715bc2(0x18c)]||'./logs/'+_0x54457a,serviceName=process[_0x715bc2(0x166)]['SERVICE_NAME']||'restforge',sqlLogEnabled=_0x22eba5[_0x715bc2(0x11e)](process[_0x715bc2(0x166)]['SQL_LOG_ENABLED'],_0x22eba5[_0x715bc2(0x1ba)]),sqlLogLevel=process['env']['SQL_LOG_LEVEL']||_0x22eba5['SDAqj'],sqlLogParams=process[_0x715bc2(0x166)]['SQL_LOG_PARAMS']!==_0x715bc2(0x13a),sqlLogSlowThreshold=parseInt(process[_0x715bc2(0x166)][_0x715bc2(0x19e)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x51b8c9=path[_0x715bc2(0x1ab)](process['cwd'](),logDir);try{!fs['existsSync'](_0x51b8c9)&&fs[_0x715bc2(0x14d)](_0x51b8c9,{'recursive':!![]});}catch(_0x6ff546){console['error']('Failed\x20to\x20create\x20log\x20directory\x20'+_0x51b8c9+':',_0x6ff546[_0x715bc2(0x18b)]),fileLoggingInitialized=!![];return;}const _0x266ca8=path['join'](_0x51b8c9,_0x22eba5['NDyUr']),_0x6dcfa1=path[_0x715bc2(0x162)](_0x51b8c9,_0x22eba5['kudtv']);try{appLogStream=fs[_0x715bc2(0x1b8)](_0x266ca8,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x6dcfa1,{'flags':'a'}),fileLoggingInitialized=!![];const _0x4b7803={'event':_0x22eba5[_0x715bc2(0x14a)],'logDir':_0x51b8c9,'files':[_0x715bc2(0xfe),_0x22eba5['kudtv']]},_0x4f02ed='File\x20logging\x20enabled:\x20'+_0x51b8c9;logger[_0x715bc2(0x14b)](_0x4b7803,_0x4f02ed),_0x22eba5[_0x715bc2(0x1b0)](writeToFileLog,{..._0x4b7803,'level':'info','msg':_0x4f02ed,'time':new Date()[_0x715bc2(0x132)]()},_0x22eba5['GmwWY']);}catch(_0xbb2a67){console[_0x715bc2(0x10d)]('Failed\x20to\x20create\x20log\x20streams:',_0xbb2a67[_0x715bc2(0x18b)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x1e4bad,_0x273772){const _0x3326fc=a0_0x121ea4,_0xfa6e99={'XgIMy':function(_0x574088,_0x24b12d){return _0x574088===_0x24b12d;},'Ohmed':'error','bGTBq':function(_0x5b8c75,_0x2bda5c){return _0x5b8c75===_0x2bda5c;}};if(!logToFile||!appLogStream)return;const _0x54f87a={'service':serviceName,..._0x1e4bad},_0x670a01=JSON['stringify'](_0x54f87a)+'\x0a';appLogStream[_0x3326fc(0x12b)](_0x670a01),(_0xfa6e99[_0x3326fc(0x13b)](_0x273772,_0xfa6e99['Ohmed'])||_0xfa6e99['bGTBq'](_0x273772,_0x3326fc(0x1be)))&&(errorLogStream&&errorLogStream[_0x3326fc(0x12b)](_0x670a01));}function a0_0x57a8(_0x43350e,_0x36f36d){_0x43350e=_0x43350e-0xfe;const _0x3e4d10=a0_0x3e4d();let _0x57a85d=_0x3e4d10[_0x43350e];if(a0_0x57a8['skSxeT']===undefined){var _0x34b8d2=function(_0x22b341){const _0x90513d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3f4063='',_0x380635='';for(let _0x3c4ed9=0x0,_0x3ca0e0,_0x11d123,_0x503ec0=0x0;_0x11d123=_0x22b341['charAt'](_0x503ec0++);~_0x11d123&&(_0x3ca0e0=_0x3c4ed9%0x4?_0x3ca0e0*0x40+_0x11d123:_0x11d123,_0x3c4ed9++%0x4)?_0x3f4063+=String['fromCharCode'](0xff&_0x3ca0e0>>(-0x2*_0x3c4ed9&0x6)):0x0){_0x11d123=_0x90513d['indexOf'](_0x11d123);}for(let _0x4c15e9=0x0,_0x234570=_0x3f4063['length'];_0x4c15e9<_0x234570;_0x4c15e9++){_0x380635+='%'+('00'+_0x3f4063['charCodeAt'](_0x4c15e9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x380635);};a0_0x57a8['RTrmGi']=_0x34b8d2,a0_0x57a8['AWpQOU']={},a0_0x57a8['skSxeT']=!![];}const _0x21df47=_0x3e4d10[0x0],_0x289b52=_0x43350e+_0x21df47,_0x3b56c6=a0_0x57a8['AWpQOU'][_0x289b52];return!_0x3b56c6?(_0x57a85d=a0_0x57a8['RTrmGi'](_0x57a85d),a0_0x57a8['AWpQOU'][_0x289b52]=_0x57a85d):_0x57a85d=_0x3b56c6,_0x57a85d;}const createRequestLogger=(_0x3b4068={})=>{return logger['child'](_0x3b4068);},logServerStart=_0x361f25=>{const _0x2a5c7b=a0_0x121ea4,_0x5c450b={'PdWhf':'RESTFORGE\x20RUNTIME\x20SERVER','nDSxE':function(_0x380ad8,_0x569d96){return _0x380ad8/_0x569d96;},'JGuVJ':'N/A','qbGGr':'Default','COfvs':_0x2a5c7b(0x14b)},_0x513eb0=_0x5c450b[_0x2a5c7b(0x1a0)],_0x2d12c0=Math[_0x2a5c7b(0x19d)](0x0,0x37-_0x513eb0['length']),_0x47757e=Math[_0x2a5c7b(0x10e)](_0x5c450b['nDSxE'](_0x2d12c0,0x2)),_0x39ac41=_0x2d12c0-_0x47757e,_0x167f53='║'+'\x20'['repeat'](_0x47757e)+_0x513eb0+'\x20'['repeat'](_0x39ac41)+'║',_0x19ecc2='\x0a╔═══════════════════════════════════════════════════════╗\x0a'+_0x167f53+_0x2a5c7b(0x175)+(_0x361f25[_0x2a5c7b(0x10b)]||_0x2a5c7b(0x16b))['padEnd'](0x26)+_0x2a5c7b(0x14e)+(_0x361f25[_0x2a5c7b(0x165)]||_0x5c450b['JGuVJ'])[_0x2a5c7b(0x12a)](0x26)+_0x2a5c7b(0x114)+String(_0x361f25[_0x2a5c7b(0x1a7)]||0xbb8)[_0x2a5c7b(0x12a)](0x26)+'\x20║\x0a║\x20\x20Config\x20\x20\x20\x20\x20\x20:\x20'+(_0x361f25['configFile']||_0x5c450b['qbGGr'])[_0x2a5c7b(0x12a)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x361f25['apiKey']?'ACTIVE':'NOT\x20ACTIVE')[_0x2a5c7b(0x12a)](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console['log'](_0x19ecc2);const _0x2ee52c={'event':_0x2a5c7b(0x171),'project':_0x361f25[_0x2a5c7b(0x165)],'port':_0x361f25[_0x2a5c7b(0x1a7)],'config':_0x361f25[_0x2a5c7b(0x18f)],'apiKeyEnabled':!!_0x361f25['apiKey']};logger[_0x2a5c7b(0x14b)](_0x2ee52c),writeToFileLog({..._0x2ee52c,'level':_0x5c450b['COfvs'],'msg':_0x2a5c7b(0x19a)+_0x361f25[_0x2a5c7b(0x165)]+_0x2a5c7b(0x16d)+_0x361f25['port'],'time':new Date()[_0x2a5c7b(0x132)]()},_0x5c450b[_0x2a5c7b(0x155)]);},logServerReady=_0x588aba=>{const _0x328a1e=a0_0x121ea4,_0x58b9fa={'LKJNt':'server_ready','Edgoe':function(_0x2ef764,_0x25e90c,_0x14e996){return _0x2ef764(_0x25e90c,_0x14e996);},'gnKdt':'info'},_0xf58175={'event':_0x58b9fa['LKJNt'],'port':_0x588aba[_0x328a1e(0x1a7)],'module':_0x588aba[_0x328a1e(0x1c4)],'healthCheck':_0x588aba['healthCheck'],'serviceInfo':_0x588aba['serviceInfo'],'baseUrl':_0x588aba[_0x328a1e(0x1ad)]},_0x5ef9ca=_0x328a1e(0x1a4)+_0x588aba[_0x328a1e(0x1a7)];logger['info'](_0xf58175,_0x5ef9ca),_0x58b9fa['Edgoe'](writeToFileLog,{..._0xf58175,'level':_0x58b9fa[_0x328a1e(0x1a9)],'msg':_0x5ef9ca,'time':new Date()['toISOString']()},_0x58b9fa[_0x328a1e(0x1a9)]),_0x588aba['healthCheck']&&logger['info']('\x20\x20Health:\x20'+_0x588aba[_0x328a1e(0x1b7)]),_0x588aba[_0x328a1e(0x110)]&&logger[_0x328a1e(0x14b)](_0x328a1e(0x17d)+_0x588aba[_0x328a1e(0x110)]),_0x588aba['baseUrl']&&logger[_0x328a1e(0x14b)](_0x328a1e(0x186)+_0x588aba[_0x328a1e(0x1ad)]);},logProjectLoaded=(_0x522cf3,_0x35683a)=>{const _0x4a36f3=a0_0x121ea4,_0x10fb5f={'btqTv':_0x4a36f3(0x14b)},_0x21248c={'event':_0x4a36f3(0x11a),'project':_0x522cf3,'path':_0x35683a},_0x4443e6=_0x4a36f3(0x11f)+_0x522cf3;logger[_0x4a36f3(0x14b)](_0x21248c,_0x4443e6),writeToFileLog({..._0x21248c,'level':'info','msg':_0x4443e6,'time':new Date()['toISOString']()},_0x10fb5f[_0x4a36f3(0x197)]);},logEndpointRegistered=(_0x474d25,_0x2b6cad)=>{const _0xecbbcb=a0_0x121ea4,_0x3ab7ec={'tuYAA':'endpoint_registered','IwhvQ':function(_0x55431f,_0x44d01e,_0xdfe998){return _0x55431f(_0x44d01e,_0xdfe998);},'dTKme':_0xecbbcb(0x177)},_0x4a439c={'event':_0x3ab7ec['tuYAA'],'endpoint':_0x474d25,'route':_0x2b6cad},_0x486579='\x20\x20→\x20'+_0x474d25+':\x20'+_0x2b6cad;logger['debug'](_0x4a439c,_0x486579),_0x3ab7ec['IwhvQ'](writeToFileLog,{..._0x4a439c,'level':_0xecbbcb(0x177),'msg':_0x486579,'time':new Date()[_0xecbbcb(0x132)]()},_0x3ab7ec['dTKme']);},logDatabaseConfig=_0x513853=>{const _0x5173b1=a0_0x121ea4,_0x40b3e5={'bJMkJ':_0x5173b1(0x133),'lEssM':function(_0x16b57f,_0x51e9e5,_0x4fcdf5){return _0x16b57f(_0x51e9e5,_0x4fcdf5);},'FqWBo':'debug'},_0x23e34d={'event':_0x40b3e5['bJMkJ'],'host':_0x513853[_0x5173b1(0x183)],'port':_0x513853['port'],'database':_0x513853[_0x5173b1(0x1bc)],'type':_0x513853['type'],'user':_0x513853['user']},_0x150db5='Database:\x20'+_0x513853[_0x5173b1(0x174)]+_0x5173b1(0x104)+_0x513853['host']+':'+_0x513853[_0x5173b1(0x1a7)]+'/'+_0x513853[_0x5173b1(0x1bc)];logger[_0x5173b1(0x177)](_0x23e34d,_0x150db5),_0x40b3e5[_0x5173b1(0x14f)](writeToFileLog,{..._0x23e34d,'level':'debug','msg':_0x150db5,'time':new Date()['toISOString']()},_0x40b3e5['FqWBo']);},logRequest=(_0x43d75b,_0x5ca714,_0x5aecda)=>{const _0x559c40=a0_0x121ea4,_0x2d4683={'xgsFK':_0x559c40(0x14b),'YAMfR':function(_0x4bdf7c,_0x3d3356){return _0x4bdf7c>=_0x3d3356;},'lbbSZ':_0x559c40(0x10d),'AhHeK':'warn'},_0x49260a={'event':_0x559c40(0x1c2),'method':_0x43d75b[_0x559c40(0x131)],'path':_0x43d75b[_0x559c40(0x1ae)],'statusCode':_0x5ca714['statusCode'],'durationMs':_0x5aecda,'ip':_0x43d75b['ip']},_0x5e013f=_0x43d75b['method']+'\x20'+_0x43d75b['path']+'\x20-\x20'+_0x5ca714[_0x559c40(0x122)]+'\x20('+_0x5aecda+'ms)';let _0x5eb8f4=_0x2d4683[_0x559c40(0x184)];if(_0x2d4683['YAMfR'](_0x5ca714['statusCode'],0x1f4))_0x5eb8f4=_0x2d4683[_0x559c40(0x17e)],logger[_0x559c40(0x10d)](_0x49260a,_0x5e013f);else _0x2d4683[_0x559c40(0x141)](_0x5ca714[_0x559c40(0x122)],0x190)?(_0x5eb8f4=_0x2d4683[_0x559c40(0x109)],logger['warn'](_0x49260a,_0x5e013f)):logger[_0x559c40(0x14b)](_0x49260a,_0x5e013f);writeToFileLog({..._0x49260a,'level':_0x5eb8f4,'msg':_0x5e013f,'time':new Date()[_0x559c40(0x132)]()},_0x5eb8f4);},SENSITIVE_PARAM_PATTERNS=[a0_0x121ea4(0x1bd),'passwd',a0_0x121ea4(0x120),a0_0x121ea4(0x12e),'access_token','refresh_token',a0_0x121ea4(0x148),'api_secret',a0_0x121ea4(0x11b),a0_0x121ea4(0x146),'credential',a0_0x121ea4(0x19c),a0_0x121ea4(0x10c),a0_0x121ea4(0x115),'private_key','privatekey'],redactSensitiveParams=(_0x51b986,_0x5f2bc7)=>{const _0x4c6845=a0_0x121ea4,_0x419989={'gJhsX':_0x4c6845(0x135),'BUVnn':function(_0x211345,_0x3e298b){return _0x211345>_0x3e298b;},'Tkvnj':function(_0x271103,_0x5dafc4){return _0x271103===_0x5dafc4;}};if(!_0x51b986||_0x419989[_0x4c6845(0x101)](_0x51b986['length'],0x0))return _0x51b986;const _0x5ba269=_0x5f2bc7[_0x4c6845(0x1a6)](),_0x34bd99=_0x5ba269['match'](/\(([^)]+)\)\s*values/i);let _0x39f7a0=[];_0x34bd99&&(_0x39f7a0=_0x34bd99[0x1][_0x4c6845(0x1bb)](',')['map'](_0xa4db2=>_0xa4db2[_0x4c6845(0x12c)]()['toLowerCase']()));const _0xf46142=_0x5ba269[_0x4c6845(0x119)](/set\s+(.+?)(?:\s+where|$)/i);if(_0xf46142){const _0x51e7b6=_0xf46142[0x1],_0x36240d=_0x51e7b6['match'](/(\w+)\s*=/g);_0x36240d&&(_0x39f7a0=_0x36240d[_0x4c6845(0x105)](_0x5e6c47=>_0x5e6c47[_0x4c6845(0x150)](/\s*=/,'')['trim']()['toLowerCase']()));}return _0x51b986['map']((_0x2ac7cc,_0x314495)=>{const _0x20109e=_0x4c6845;if(_0x39f7a0[_0x314495]){const _0x2e0368=_0x39f7a0[_0x314495],_0x48148b=SENSITIVE_PARAM_PATTERNS['some'](_0x196706=>_0x2e0368['includes'](_0x196706));if(_0x48148b)return _0x419989['gJhsX'];}if(typeof _0x2ac7cc===_0x20109e(0x189)&&_0x419989[_0x20109e(0x15a)](_0x2ac7cc[_0x20109e(0x19f)],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x20109e(0x164)](_0x2ac7cc)&&_0x2ac7cc['includes']('.'))return'[REDACTED:token]';if(/^[a-fA-F0-9]{32,}$/[_0x20109e(0x164)](_0x2ac7cc))return _0x20109e(0x1b5);}return _0x2ac7cc;});},parseQueryMetadata=_0x69f7b7=>{const _0x22f8d2=a0_0x121ea4,_0xddf53c={'HuyTV':_0x22f8d2(0x1c1),'qeouA':_0x22f8d2(0x124),'svmzd':'UPDATE','YELOs':_0x22f8d2(0x192),'KTgtL':_0x22f8d2(0x168),'BXcUw':'TRANSACTION_BEGIN','weJgG':_0x22f8d2(0x196),'BvkEP':_0x22f8d2(0x159),'RxDeh':'CREATE','bHixe':_0x22f8d2(0x1aa)},_0x149c18=_0x69f7b7[_0x22f8d2(0x12c)](),_0x3ccd07=_0x149c18['toUpperCase']();let _0x4340c6='UNKNOWN',_0x3318d1=null;if(_0x3ccd07['startsWith'](_0xddf53c['HuyTV'])){_0x4340c6=_0xddf53c[_0x22f8d2(0x11d)];const _0x22fcba=_0x149c18[_0x22f8d2(0x119)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3318d1=_0x22fcba?_0x22fcba[0x1]:null;}else{if(_0x3ccd07[_0x22f8d2(0x1b2)]('INSERT')){_0x4340c6=_0xddf53c[_0x22f8d2(0x18e)];const _0x1d44f8=_0x149c18[_0x22f8d2(0x119)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3318d1=_0x1d44f8?_0x1d44f8[0x1]:null;}else{if(_0x3ccd07['startsWith'](_0x22f8d2(0x142))){_0x4340c6=_0xddf53c[_0x22f8d2(0x13c)];const _0x36553c=_0x149c18['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3318d1=_0x36553c?_0x36553c[0x1]:null;}else{if(_0x3ccd07[_0x22f8d2(0x1b2)](_0xddf53c[_0x22f8d2(0x1a2)])){_0x4340c6=_0x22f8d2(0x192);const _0x1b7252=_0x149c18['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3318d1=_0x1b7252?_0x1b7252[0x1]:null;}else{if(_0x3ccd07[_0x22f8d2(0x1b2)](_0x22f8d2(0x13d))||_0x3ccd07['startsWith'](_0xddf53c['KTgtL']))_0x4340c6=_0xddf53c['BXcUw'];else{if(_0x3ccd07[_0x22f8d2(0x1b2)](_0xddf53c['weJgG']))_0x4340c6='TRANSACTION_COMMIT';else{if(_0x3ccd07[_0x22f8d2(0x1b2)]('ROLLBACK'))_0x4340c6=_0xddf53c['BvkEP'];else{if(_0x3ccd07[_0x22f8d2(0x1b2)](_0xddf53c['RxDeh']))_0x4340c6=_0x22f8d2(0x14c);else{if(_0x3ccd07['startsWith']('ALTER'))_0x4340c6='DDL_ALTER';else _0x3ccd07[_0x22f8d2(0x1b2)]('DROP')&&(_0x4340c6=_0xddf53c[_0x22f8d2(0x178)]);}}}}}}}}return{'type':_0x4340c6,'table':_0x3318d1};},startQueryTimer=()=>{const _0x50631e={'CRESc':function(_0x110fce,_0xc45094){return _0x110fce(_0xc45094);},'jkcCf':function(_0x397703,_0x2240c5){return _0x397703+_0x2240c5;}},_0x4e6756=process['hrtime']();return()=>{const _0x2f4a31=a0_0x57a8,[_0x31f9f9,_0x1a28ec]=process['hrtime'](_0x4e6756);return _0x50631e[_0x2f4a31(0x10f)](parseFloat,_0x50631e[_0x2f4a31(0x126)](_0x31f9f9*0x3e8,_0x1a28ec/0xf4240)[_0x2f4a31(0x145)](0x2));};},logQuery=(_0x2a814f,_0x5f3396=[],_0x4af2b2={})=>{const _0x85897d=a0_0x121ea4,_0x1fa9ee={'PJvIN':_0x85897d(0x149),'dSjSL':function(_0x32b42,_0x17a797){return _0x32b42(_0x17a797);},'RrYWS':'sql_query','AmGvi':function(_0x179f31,_0x189c18){return _0x179f31>_0x189c18;},'oyRTa':function(_0xae49e9,_0x10c87d){return _0xae49e9!==_0x10c87d;},'HPiIY':function(_0x2e8fb4,_0x368768){return _0x2e8fb4>_0x368768;},'OJOfk':function(_0x171a00,_0xfa9082){return _0x171a00||_0xfa9082;},'TElAf':'unknown','ExVCH':_0x85897d(0x151),'QYiyS':'info','FeOCr':function(_0x1b5b40,_0x5493f9,_0x2bd53d){return _0x1b5b40(_0x5493f9,_0x2bd53d);}};if(!sqlLogEnabled){logger[_0x85897d(0x177)]({'event':_0x1fa9ee[_0x85897d(0x176)],'query':_0x2a814f[_0x85897d(0x102)](0x0,0xc8),'paramCount':_0x5f3396[_0x85897d(0x19f)]},_0x85897d(0x18d));return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x85897d(0x111)}=_0x4af2b2,{type:_0x58d3da,table:_0x3eeb28}=_0x1fa9ee['dSjSL'](parseQueryMetadata,_0x2a814f),_0x472ad3={'event':_0x1fa9ee[_0x85897d(0x163)],'queryType':_0x58d3da,'table':_0x3eeb28,'query':_0x2a814f,'paramCount':_0x5f3396[_0x85897d(0x19f)],'dbType':dbType};sqlLogParams&&_0x1fa9ee['AmGvi'](_0x5f3396[_0x85897d(0x19f)],0x0)&&(_0x472ad3[_0x85897d(0x190)]=redactSensitiveParams(_0x5f3396,_0x2a814f));_0x1fa9ee['oyRTa'](duration,null)&&(_0x472ad3['durationMs']=duration,_0x472ad3[_0x85897d(0x1c3)]=_0x1fa9ee['HPiIY'](duration,sqlLogSlowThreshold));rowsAffected!==null&&(_0x472ad3[_0x85897d(0x15c)]=rowsAffected);const _0xe81bae=_0x1fa9ee[_0x85897d(0x187)](_0x3eeb28,_0x1fa9ee['TElAf']);let _0xb1cf95='['+_0x58d3da+']\x20'+_0xe81bae;duration!==null&&(_0xb1cf95+='\x20('+duration+'ms)');const _0x341518=duration!==null&&duration>sqlLogSlowThreshold;let _0x5b6f7c=_0x85897d(0x177);if(_0x341518)_0xb1cf95+=_0x1fa9ee[_0x85897d(0x16e)],_0x5b6f7c='warn',logger['warn'](_0x472ad3,_0xb1cf95);else sqlLogLevel===_0x85897d(0x14b)?(_0x5b6f7c=_0x1fa9ee['QYiyS'],logger['info'](_0x472ad3,_0xb1cf95)):logger['debug'](_0x472ad3,_0xb1cf95);_0x1fa9ee[_0x85897d(0x147)](writeToFileLog,{..._0x472ad3,'level':_0x5b6f7c,'msg':_0xb1cf95,'time':new Date()[_0x85897d(0x132)]()},_0x5b6f7c);},logTransaction=(_0x5e3e84,_0x28491f)=>{const _0x4f1fc4=a0_0x121ea4,_0x2bc135={'olGfO':_0x4f1fc4(0x177)},_0x57391b={'event':_0x4f1fc4(0x172),'status':_0x5e3e84,'queryCount':_0x28491f},_0xf52ade='Transaction\x20'+_0x5e3e84;logger[_0x4f1fc4(0x177)](_0x57391b,_0xf52ade),writeToFileLog({..._0x57391b,'level':_0x2bc135['olGfO'],'msg':_0xf52ade,'time':new Date()[_0x4f1fc4(0x132)]()},'debug');},redactObject=_0x2f52f9=>{const _0x2abf36=a0_0x121ea4,_0x3afb14={'cmaur':function(_0x27bf59,_0x21730c){return _0x27bf59!==_0x21730c;},'xLafv':_0x2abf36(0x1bd),'nRcTI':'passwd','tCVOI':'token','LbZFF':'secret','kyvaX':'apikey','BJxKC':_0x2abf36(0x173),'bGbvW':_0x2abf36(0x129),'caYhP':_0x2abf36(0x193),'Virse':_0x2abf36(0x181),'INLAD':'[REDACTED]','OxSja':_0x2abf36(0x12f),'Uafsa':function(_0x5aeeaf,_0x47a903){return _0x5aeeaf(_0x47a903);}};if(!_0x2f52f9||_0x3afb14[_0x2abf36(0x123)](typeof _0x2f52f9,_0x2abf36(0x12f)))return _0x2f52f9;const _0x286aa9=[_0x3afb14['xLafv'],_0x3afb14['nRcTI'],'pwd',_0x3afb14[_0x2abf36(0xff)],_0x3afb14['LbZFF'],_0x3afb14[_0x2abf36(0x107)],_0x2abf36(0x146),_0x2abf36(0x17f),_0x3afb14['BJxKC'],_0x2abf36(0x1a1),'cvv',_0x3afb14['bGbvW'],'pin',_0x3afb14['caYhP'],_0x2abf36(0x113),_0x3afb14[_0x2abf36(0x125)],_0x2abf36(0x1c0)],_0x6d692e=Array[_0x2abf36(0x1a3)](_0x2f52f9)?[..._0x2f52f9]:{..._0x2f52f9};for(const _0x56f890 of Object['keys'](_0x6d692e)){const _0x2d36ed=_0x56f890['toLowerCase']();if(_0x286aa9['some'](_0x44b5f1=>_0x2d36ed[_0x2abf36(0x191)](_0x44b5f1)))_0x6d692e[_0x56f890]=_0x3afb14['INLAD'];else typeof _0x6d692e[_0x56f890]===_0x3afb14['OxSja']&&_0x6d692e[_0x56f890]!==null&&(_0x6d692e[_0x56f890]=_0x3afb14[_0x2abf36(0x1af)](redactObject,_0x6d692e[_0x56f890]));}return _0x6d692e;},logError=(_0x9e3e8b,_0xcdb6e0={},_0x530311=null)=>{const _0x2ac2ab=a0_0x121ea4,_0x50461c={'oNhHs':function(_0x1f93cc,_0x2d3187,_0x332fcd){return _0x1f93cc(_0x2d3187,_0x332fcd);},'mowoC':_0x2ac2ab(0x10d)},_0x4e0f8c={'event':_0x2ac2ab(0x10d),'errorName':_0x9e3e8b['name']||_0x2ac2ab(0x167),'errorMessage':_0x9e3e8b['message'],'errorCode':_0x9e3e8b[_0x2ac2ab(0x169)]||null,'stack':_0x9e3e8b[_0x2ac2ab(0x1a5)],..._0xcdb6e0},_0x3fdf48=_0x530311||_0x2ac2ab(0x144)+_0x9e3e8b['message'];logger[_0x2ac2ab(0x10d)](_0x4e0f8c,_0x3fdf48),_0x50461c['oNhHs'](writeToFileLog,{..._0x4e0f8c,'level':'error','msg':_0x3fdf48,'time':new Date()['toISOString']()},_0x50461c['mowoC']);},logFatalError=(_0x2cb99a,_0x190727={},_0xb01acb=null)=>{const _0x4c078f=a0_0x121ea4,_0x518801={'rvIGI':_0x4c078f(0x160),'GaMpr':'Error','DeLJv':_0x4c078f(0x118),'wBSWp':function(_0x40bfb2,_0x4b0687,_0x66dd9f){return _0x40bfb2(_0x4b0687,_0x66dd9f);},'fLeEq':_0x4c078f(0x10d)},_0x4544f8={'event':_0x518801[_0x4c078f(0x100)],'errorName':_0x2cb99a['name']||_0x518801['GaMpr'],'errorMessage':_0x2cb99a['message'],'errorCode':_0x2cb99a[_0x4c078f(0x169)]||null,'stack':_0x2cb99a['stack'],'severity':_0x518801['DeLJv'],..._0x190727},_0x350053=_0xb01acb||_0x4c078f(0x1b6)+_0x2cb99a[_0x4c078f(0x18b)];logger['fatal'](_0x4544f8,_0x350053),_0x518801[_0x4c078f(0x1ac)](writeToFileLog,{..._0x4544f8,'level':'fatal','msg':_0x350053,'time':new Date()['toISOString']()},_0x518801['fLeEq']);},logHttpError=(_0x3f4023,_0x230a20,_0x4e0ecb={})=>{const _0x4ec0b9=a0_0x121ea4,_0x194156={'vREaj':_0x4ec0b9(0x152),'yLLZV':'user-agent','JJlTC':'x-request-id','MiIUR':function(_0x38a5a6,_0x100fdb){return _0x38a5a6(_0x100fdb);},'xakvk':function(_0x9a1402,_0x1f650c){return _0x9a1402>=_0x1f650c;},'FIBsd':function(_0x2ecce0,_0x33d3ca,_0x3a8bfe){return _0x2ecce0(_0x33d3ca,_0x3a8bfe);},'IVLDC':_0x4ec0b9(0x10d),'IhAlr':'warn','mQzPl':function(_0x1d0781,_0x24c863){return _0x1d0781>=_0x24c863;}},_0xf09c8a={'event':_0x194156['vREaj'],'errorName':_0x3f4023['name']||'Error','errorMessage':_0x3f4023[_0x4ec0b9(0x18b)],'errorCode':_0x3f4023['code']||_0x3f4023[_0x4ec0b9(0x122)]||0x1f4,'stack':_0x3f4023[_0x4ec0b9(0x1a5)],'method':_0x230a20?.['method'],'url':_0x230a20?.[_0x4ec0b9(0x13e)]||_0x230a20?.['originalUrl'],'path':_0x230a20?.['path'],'ip':_0x230a20?.['ip']||_0x230a20?.['connection']?.['remoteAddress'],'userAgent':_0x230a20?.['get']?.(_0x194156['yLLZV']),'requestId':_0x230a20?.['id']||_0x230a20?.['headers']?.[_0x194156['JJlTC']],'body':_0x230a20?.[_0x4ec0b9(0x143)]?_0x194156['MiIUR'](redactObject,_0x230a20['body']):undefined,'query':_0x230a20?.[_0x4ec0b9(0x103)],..._0x4e0ecb},_0x153c13=_0x3f4023['statusCode']||_0x3f4023[_0x4ec0b9(0x194)]||0x1f4,_0xad6e0c='HTTP\x20'+_0x153c13+':\x20'+_0x3f4023['message'];_0x194156[_0x4ec0b9(0x1b9)](_0x153c13,0x1f4)?logger[_0x4ec0b9(0x10d)](_0xf09c8a,_0xad6e0c):logger[_0x4ec0b9(0x12d)](_0xf09c8a,_0xad6e0c),_0x194156['FIBsd'](writeToFileLog,{..._0xf09c8a,'level':_0x153c13>=0x1f4?_0x194156['IVLDC']:_0x194156[_0x4ec0b9(0x138)],'msg':_0xad6e0c,'time':new Date()[_0x4ec0b9(0x132)]()},_0x194156[_0x4ec0b9(0x16f)](_0x153c13,0x1f4)?_0x194156[_0x4ec0b9(0x136)]:'warn');},logUncaughtError=(_0x48cc37,_0x19473e)=>{const _0x52b73b=a0_0x121ea4,_0x4e3eae={'lChLp':_0x52b73b(0x167),'wOxwf':function(_0x56fda5,_0x3705d2){return _0x56fda5(_0x3705d2);}},_0x5ef4f9={'event':_0x48cc37,'errorName':_0x19473e?.[_0x52b73b(0x19b)]||_0x4e3eae[_0x52b73b(0x153)],'errorMessage':_0x19473e?.['message']||_0x4e3eae['wOxwf'](String,_0x19473e),'errorCode':_0x19473e?.['code']||null,'stack':_0x19473e?.[_0x52b73b(0x1a5)],'severity':_0x52b73b(0x118),'processId':process[_0x52b73b(0x15d)],'memoryUsage':process['memoryUsage'](),'uptime':process[_0x52b73b(0x116)]()},_0x5e6c7a='['+_0x48cc37[_0x52b73b(0x15b)]()+']\x20'+(_0x19473e?.['message']||_0x19473e);logger['fatal'](_0x5ef4f9,_0x5e6c7a),writeToFileLog({..._0x5ef4f9,'level':_0x52b73b(0x1be),'msg':_0x5e6c7a,'time':new Date()[_0x52b73b(0x132)]()},_0x52b73b(0x10d));},setupGlobalErrorHandlers=()=>{const _0x88ec5a=a0_0x121ea4,_0x2d2dc6={'ktSVh':_0x88ec5a(0x18a),'pmbFw':function(_0xe1f91c,_0x17cbe4,_0x2a236e){return _0xe1f91c(_0x17cbe4,_0x2a236e);},'XSuSU':_0x88ec5a(0x140),'zGtUF':_0x88ec5a(0x121),'ITzuV':'Global\x20error\x20handlers\x20initialized','WEkdR':function(_0x190151,_0x404c40,_0x57df1e){return _0x190151(_0x404c40,_0x57df1e);},'bFhmU':'info'};process['on'](_0x2d2dc6[_0x88ec5a(0x128)],_0x331859=>{const _0x22f394=_0x88ec5a;logUncaughtError(_0x2d2dc6[_0x22f394(0x128)],_0x331859),_0x2d2dc6[_0x22f394(0x137)](setTimeout,()=>{const _0x415817=_0x22f394;process[_0x415817(0x198)](0x1);},0x3e8);}),process['on'](_0x88ec5a(0x140),(_0xcac2c4,_0x5dff91)=>{const _0x50b7d7=_0x88ec5a,_0x4ab195=_0xcac2c4 instanceof Error?_0xcac2c4:new Error(String(_0xcac2c4));_0x2d2dc6[_0x50b7d7(0x137)](logUncaughtError,_0x2d2dc6[_0x50b7d7(0x16a)],_0x4ab195);}),process['on'](_0x2d2dc6[_0x88ec5a(0x161)],_0x7ae380=>{const _0x2a76e4=_0x88ec5a;logger[_0x2a76e4(0x12d)]({'event':_0x2a76e4(0x108),'name':_0x7ae380['name'],'message':_0x7ae380['message'],'stack':_0x7ae380[_0x2a76e4(0x1a5)]},_0x2a76e4(0x130)+_0x7ae380[_0x2a76e4(0x18b)]);});const _0x106bfd={'event':_0x88ec5a(0x16c)},_0x31f4a3=_0x2d2dc6[_0x88ec5a(0x185)];logger[_0x88ec5a(0x14b)](_0x106bfd,_0x31f4a3),_0x2d2dc6[_0x88ec5a(0x180)](writeToFileLog,{..._0x106bfd,'level':_0x2d2dc6[_0x88ec5a(0x13f)],'msg':_0x31f4a3,'time':new Date()['toISOString']()},_0x88ec5a(0x14b));},createErrorHandlerMiddleware=()=>{const _0x377a48=a0_0x121ea4,_0x20fbe8={'UhAJf':_0x377a48(0x106)};return(_0x324c1f,_0x554c35,_0x3d5c8f,_0x143b88)=>{const _0x25c3ef=_0x377a48;logHttpError(_0x324c1f,_0x554c35);const _0x5502f2=_0x324c1f['statusCode']||_0x324c1f[_0x25c3ef(0x194)]||0x1f4;_0x3d5c8f[_0x25c3ef(0x194)](_0x5502f2)['json']({'success':![],'error':_0x5502f2>=0x1f4?_0x25c3ef(0x17a):_0x324c1f['message'],'requestId':_0x554c35['id']||_0x554c35['headers']?.[_0x20fbe8[_0x25c3ef(0x11c)]]||null});};};module[a0_0x121ea4(0x17c)]={'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_0x2cb5eb=a0_0x343d;(function(_0x2191af,_0x1b115e){const _0x1972eb=a0_0x343d,_0x32eede=_0x2191af();while(!![]){try{const _0x43c5d6=-parseInt(_0x1972eb(0x12a))/0x1+-parseInt(_0x1972eb(0x186))/0x2+parseInt(_0x1972eb(0x18c))/0x3+-parseInt(_0x1972eb(0x13b))/0x4*(-parseInt(_0x1972eb(0x190))/0x5)+-parseInt(_0x1972eb(0xee))/0x6*(parseInt(_0x1972eb(0x184))/0x7)+-parseInt(_0x1972eb(0x15e))/0x8+parseInt(_0x1972eb(0x126))/0x9*(parseInt(_0x1972eb(0x139))/0xa);if(_0x43c5d6===_0x1b115e)break;else _0x32eede['push'](_0x32eede['shift']());}catch(_0x2afb0e){_0x32eede['push'](_0x32eede['shift']());}}}(a0_0x3b5a,0xce941));const pino=require(a0_0x2cb5eb(0xff)),fs=require('fs'),path=require('path');let logToFile=![],logDir='./logs',serviceName=a0_0x2cb5eb(0x17e),sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x343d(_0x55ce53,_0x564001){_0x55ce53=_0x55ce53-0xeb;const _0x3b5a11=a0_0x3b5a();let _0x343d40=_0x3b5a11[_0x55ce53];if(a0_0x343d['auEhAs']===undefined){var _0x1382c5=function(_0x396360){const _0x473712='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x256fdc='',_0x576902='';for(let _0x30cbce=0x0,_0x26d7f0,_0x4dec75,_0x5b2b5a=0x0;_0x4dec75=_0x396360['charAt'](_0x5b2b5a++);~_0x4dec75&&(_0x26d7f0=_0x30cbce%0x4?_0x26d7f0*0x40+_0x4dec75:_0x4dec75,_0x30cbce++%0x4)?_0x256fdc+=String['fromCharCode'](0xff&_0x26d7f0>>(-0x2*_0x30cbce&0x6)):0x0){_0x4dec75=_0x473712['indexOf'](_0x4dec75);}for(let _0x3ea2d6=0x0,_0x2f0360=_0x256fdc['length'];_0x3ea2d6<_0x2f0360;_0x3ea2d6++){_0x576902+='%'+('00'+_0x256fdc['charCodeAt'](_0x3ea2d6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x576902);};a0_0x343d['tGMHqp']=_0x1382c5,a0_0x343d['KxtLzF']={},a0_0x343d['auEhAs']=!![];}const _0x2fabf3=_0x3b5a11[0x0],_0x797d6d=_0x55ce53+_0x2fabf3,_0x18a18a=a0_0x343d['KxtLzF'][_0x797d6d];return!_0x18a18a?(_0x343d40=a0_0x343d['tGMHqp'](_0x343d40),a0_0x343d['KxtLzF'][_0x797d6d]=_0x343d40):_0x343d40=_0x18a18a,_0x343d40;}const prettyPrintOptions={'colorize':!![],'translateTime':a0_0x2cb5eb(0x155),'ignore':a0_0x2cb5eb(0xed),'singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':a0_0x2cb5eb(0x17c),'hideObject':!![]},isDevelopment=process[a0_0x2cb5eb(0x15a)]['NODE_ENV']!==a0_0x2cb5eb(0x12d),logLevel=process[a0_0x2cb5eb(0x15a)]['LOG_LEVEL']||a0_0x2cb5eb(0x102);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':a0_0x2cb5eb(0x17e),'version':process['env'][a0_0x2cb5eb(0x1a5)]||'1.0.5','env':process['env']['NODE_ENV']||'development'},'timestamp':pino[a0_0x2cb5eb(0x10f)][a0_0x2cb5eb(0x199)],'redact':{'paths':[a0_0x2cb5eb(0x191),a0_0x2cb5eb(0x116),a0_0x2cb5eb(0xfb),a0_0x2cb5eb(0x108),a0_0x2cb5eb(0x181),a0_0x2cb5eb(0x114),a0_0x2cb5eb(0x14d)],'censor':a0_0x2cb5eb(0x137)},'serializers':{'req':_0xf24924=>({'id':_0xf24924['id'],'method':_0xf24924[a0_0x2cb5eb(0x106)],'url':_0xf24924[a0_0x2cb5eb(0xf1)],'path':_0xf24924[a0_0x2cb5eb(0x167)],'remoteAddress':_0xf24924['ip']||_0xf24924['connection']?.['remoteAddress']}),'res':_0x1c0f40=>({'statusCode':_0x1c0f40[a0_0x2cb5eb(0x133)],'headers':_0x1c0f40['getHeaders']?.()}),'err':pino['stdSerializers']['err']}});function initFileLogging(){const _0x2aec58=a0_0x2cb5eb,_0x4901db={'KgVLf':function(_0x2485f6,_0x530f3a){return _0x2485f6===_0x530f3a;},'dOcFF':_0x2aec58(0x169),'wfbdH':function(_0xc118ad,_0x8070a7){return _0xc118ad===_0x8070a7;},'ykOAj':'app.log','isllT':_0x2aec58(0x162),'uYudy':_0x2aec58(0x16a),'IwfwZ':function(_0x3942f6,_0x51733c,_0x1d0e84){return _0x3942f6(_0x51733c,_0x1d0e84);},'wLXWZ':_0x2aec58(0x102)};if(fileLoggingInitialized)return;logToFile=_0x4901db[_0x2aec58(0x154)](process['env'][_0x2aec58(0x182)],_0x4901db[_0x2aec58(0x14f)]);const _0x485937=process[_0x2aec58(0x15a)]['RESTFORGE_PROJECT_NAME']||_0x2aec58(0x164);logDir=process['env'][_0x2aec58(0x153)]||_0x2aec58(0x14e)+_0x485937,serviceName=process['env']['SERVICE_NAME']||'restforge',sqlLogEnabled=_0x4901db[_0x2aec58(0x175)](process[_0x2aec58(0x15a)][_0x2aec58(0x149)],_0x2aec58(0x169)),sqlLogLevel=process['env'][_0x2aec58(0x18b)]||'debug',sqlLogParams=process['env']['SQL_LOG_PARAMS']!=='false',sqlLogSlowThreshold=parseInt(process[_0x2aec58(0x15a)]['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x108c8a=path['resolve'](process[_0x2aec58(0x18f)](),logDir);try{!fs[_0x2aec58(0x18e)](_0x108c8a)&&fs[_0x2aec58(0x1a6)](_0x108c8a,{'recursive':!![]});}catch(_0x4d2fe1){console[_0x2aec58(0x109)]('Failed\x20to\x20create\x20log\x20directory\x20'+_0x108c8a+':',_0x4d2fe1['message']),fileLoggingInitialized=!![];return;}const _0x59e322=path['join'](_0x108c8a,_0x4901db[_0x2aec58(0x16f)]),_0x55fae2=path['join'](_0x108c8a,_0x4901db[_0x2aec58(0x13e)]);try{appLogStream=fs['createWriteStream'](_0x59e322,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x55fae2,{'flags':'a'}),fileLoggingInitialized=!![];const _0x35c01a={'event':_0x4901db['uYudy'],'logDir':_0x108c8a,'files':[_0x2aec58(0x168),_0x4901db['isllT']]},_0x3e08fc=_0x2aec58(0x122)+_0x108c8a;logger[_0x2aec58(0x102)](_0x35c01a,_0x3e08fc),_0x4901db[_0x2aec58(0x110)](writeToFileLog,{..._0x35c01a,'level':'info','msg':_0x3e08fc,'time':new Date()[_0x2aec58(0xf8)]()},_0x4901db[_0x2aec58(0x1a3)]);}catch(_0x2d0192){console['error']('Failed\x20to\x20create\x20log\x20streams:',_0x2d0192[_0x2aec58(0xf3)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x51bb5b,_0x1820d5){const _0x5014df=a0_0x2cb5eb,_0x3460ac={'HhBAy':function(_0x8a0b4a,_0x319007){return _0x8a0b4a||_0x319007;},'YTINZ':function(_0x483555,_0x5790be){return _0x483555+_0x5790be;},'VhnCN':function(_0x2758e3,_0x498898){return _0x2758e3===_0x498898;},'oYANE':function(_0x4761ec,_0x570237){return _0x4761ec===_0x570237;},'LQLRT':'fatal'};if(_0x3460ac['HhBAy'](!logToFile,!appLogStream))return;const _0x4940a6={'service':serviceName,..._0x51bb5b},_0xf2c9a6=_0x3460ac[_0x5014df(0x176)](JSON[_0x5014df(0x198)](_0x4940a6),'\x0a');appLogStream['write'](_0xf2c9a6),(_0x3460ac[_0x5014df(0x172)](_0x1820d5,'error')||_0x3460ac[_0x5014df(0x13a)](_0x1820d5,_0x3460ac[_0x5014df(0x197)]))&&(errorLogStream&&errorLogStream[_0x5014df(0x11c)](_0xf2c9a6));}const createRequestLogger=(_0x5db6cb={})=>{return logger['child'](_0x5db6cb);},logServerStart=_0x107917=>{const _0x3de06b=a0_0x2cb5eb,_0x223d83={'LdBIU':'RESTFORGE\x20RUNTIME\x20SERVER','fDGhL':function(_0xc87fc1,_0x278e4a){return _0xc87fc1-_0x278e4a;},'pFmyR':function(_0x429be0,_0x480e3c){return _0x429be0-_0x480e3c;},'dObyb':_0x3de06b(0x124),'oHAmq':function(_0x2131e0,_0x3bce2d){return _0x2131e0(_0x3bce2d);},'lgvrO':'Default','YEHkU':'NOT\x20ACTIVE','jDkAA':'server_starting','JCInW':_0x3de06b(0x102)},_0xfa6315=_0x223d83['LdBIU'],_0xe2b276=Math['max'](0x0,_0x223d83['fDGhL'](0x37,_0xfa6315['length'])),_0x19ac73=Math['floor'](_0xe2b276/0x2),_0x3504b5=_0x223d83[_0x3de06b(0x178)](_0xe2b276,_0x19ac73),_0x271432='║'+'\x20'[_0x3de06b(0x11b)](_0x19ac73)+_0xfa6315+'\x20'['repeat'](_0x3504b5)+'║',_0x520766=_0x3de06b(0x150)+_0x271432+'\x0a╠═══════════════════════════════════════════════════════╣\x0a║\x20\x20Environment\x20:\x20'+(_0x107917[_0x3de06b(0x146)]||'Node.js')[_0x3de06b(0xfa)](0x26)+_0x3de06b(0x17a)+(_0x107917[_0x3de06b(0x131)]||_0x223d83[_0x3de06b(0xf2)])[_0x3de06b(0xfa)](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+_0x223d83[_0x3de06b(0x195)](String,_0x107917[_0x3de06b(0x19d)]||0xbb8)[_0x3de06b(0xfa)](0x26)+_0x3de06b(0x113)+(_0x107917['configFile']||_0x223d83[_0x3de06b(0x10b)])['padEnd'](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x107917[_0x3de06b(0x181)]?'ACTIVE':_0x223d83['YEHkU'])['padEnd'](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x3de06b(0x112)](_0x520766);const _0x2d8944={'event':_0x223d83[_0x3de06b(0x189)],'project':_0x107917['project'],'port':_0x107917['port'],'config':_0x107917['configFile'],'apiKeyEnabled':!!_0x107917['apiKey']};logger[_0x3de06b(0x102)](_0x2d8944),writeToFileLog({..._0x2d8944,'level':_0x223d83['JCInW'],'msg':_0x3de06b(0x130)+_0x107917['project']+_0x3de06b(0x157)+_0x107917['port'],'time':new Date()[_0x3de06b(0xf8)]()},_0x3de06b(0x102));},logServerReady=_0xf8cefb=>{const _0x2f82a1=a0_0x2cb5eb,_0x5f214d={'RBlrH':'server_ready','noESN':_0x2f82a1(0x102)},_0x182284={'event':_0x5f214d['RBlrH'],'port':_0xf8cefb['port'],'module':_0xf8cefb['module'],'healthCheck':_0xf8cefb[_0x2f82a1(0x18d)],'serviceInfo':_0xf8cefb[_0x2f82a1(0x1a7)],'baseUrl':_0xf8cefb[_0x2f82a1(0x159)]},_0xfc6934=_0x2f82a1(0x147)+_0xf8cefb['port'];logger['info'](_0x182284,_0xfc6934),writeToFileLog({..._0x182284,'level':'info','msg':_0xfc6934,'time':new Date()[_0x2f82a1(0xf8)]()},_0x5f214d[_0x2f82a1(0xfc)]),_0xf8cefb['healthCheck']&&logger['info'](_0x2f82a1(0x17f)+_0xf8cefb[_0x2f82a1(0x18d)]),_0xf8cefb['serviceInfo']&&logger['info'](_0x2f82a1(0x173)+_0xf8cefb[_0x2f82a1(0x1a7)]),_0xf8cefb[_0x2f82a1(0x159)]&&logger['info']('\x20\x20URL:\x20\x20\x20\x20'+_0xf8cefb[_0x2f82a1(0x159)]);},logProjectLoaded=(_0x506f57,_0x4ae778)=>{const _0x8578cf=a0_0x2cb5eb,_0x2b1534={'bkgfG':'project_loaded','DGtqH':_0x8578cf(0x102)},_0x19cb35={'event':_0x2b1534['bkgfG'],'project':_0x506f57,'path':_0x4ae778},_0x107457='[OK]\x20Project\x20loaded:\x20'+_0x506f57;logger['info'](_0x19cb35,_0x107457),writeToFileLog({..._0x19cb35,'level':_0x2b1534[_0x8578cf(0x19f)],'msg':_0x107457,'time':new Date()[_0x8578cf(0xf8)]()},_0x2b1534['DGtqH']);},logEndpointRegistered=(_0x564161,_0x414292)=>{const _0x209f9c=a0_0x2cb5eb,_0x4a26d0={'QuWEy':_0x209f9c(0xf9),'dSvMn':function(_0x1d74da,_0x2bce54,_0x3db8eb){return _0x1d74da(_0x2bce54,_0x3db8eb);},'KSAGT':_0x209f9c(0x19e)},_0x31fed1={'event':_0x4a26d0[_0x209f9c(0x11d)],'endpoint':_0x564161,'route':_0x414292},_0x22dec1='\x20\x20→\x20'+_0x564161+':\x20'+_0x414292;logger[_0x209f9c(0x19e)](_0x31fed1,_0x22dec1),_0x4a26d0['dSvMn'](writeToFileLog,{..._0x31fed1,'level':_0x209f9c(0x19e),'msg':_0x22dec1,'time':new Date()['toISOString']()},_0x4a26d0[_0x209f9c(0x15c)]);},logDatabaseConfig=_0xb28e9d=>{const _0x1f0ad4=a0_0x2cb5eb,_0x2c8591={'tGjIA':_0x1f0ad4(0x15b),'uTsIx':_0x1f0ad4(0x19e)},_0x385ca4={'event':_0x2c8591['tGjIA'],'host':_0xb28e9d[_0x1f0ad4(0x129)],'port':_0xb28e9d['port'],'database':_0xb28e9d['database'],'type':_0xb28e9d['type'],'user':_0xb28e9d[_0x1f0ad4(0x119)]},_0x42ab40=_0x1f0ad4(0x140)+_0xb28e9d[_0x1f0ad4(0x192)]+'://'+_0xb28e9d['host']+':'+_0xb28e9d['port']+'/'+_0xb28e9d[_0x1f0ad4(0x138)];logger[_0x1f0ad4(0x19e)](_0x385ca4,_0x42ab40),writeToFileLog({..._0x385ca4,'level':'debug','msg':_0x42ab40,'time':new Date()[_0x1f0ad4(0xf8)]()},_0x2c8591['uTsIx']);},logRequest=(_0x41d7da,_0x22d024,_0x4b06e6)=>{const _0x46aba2=a0_0x2cb5eb,_0x36eb95={'pxPBv':function(_0x3919c8,_0x3c0712){return _0x3919c8>=_0x3c0712;},'ZCsBF':function(_0x3058fb,_0x2124eb,_0x4cd77f){return _0x3058fb(_0x2124eb,_0x4cd77f);}},_0x3ce2={'event':'http_request','method':_0x41d7da[_0x46aba2(0x106)],'path':_0x41d7da['path'],'statusCode':_0x22d024['statusCode'],'durationMs':_0x4b06e6,'ip':_0x41d7da['ip']},_0x3837e3=_0x41d7da[_0x46aba2(0x106)]+'\x20'+_0x41d7da['path']+_0x46aba2(0x13d)+_0x22d024['statusCode']+'\x20('+_0x4b06e6+_0x46aba2(0x127);let _0x455bcb=_0x46aba2(0x102);if(_0x22d024[_0x46aba2(0x133)]>=0x1f4)_0x455bcb=_0x46aba2(0x109),logger[_0x46aba2(0x109)](_0x3ce2,_0x3837e3);else _0x36eb95['pxPBv'](_0x22d024[_0x46aba2(0x133)],0x190)?(_0x455bcb=_0x46aba2(0x17b),logger['warn'](_0x3ce2,_0x3837e3)):logger[_0x46aba2(0x102)](_0x3ce2,_0x3837e3);_0x36eb95['ZCsBF'](writeToFileLog,{..._0x3ce2,'level':_0x455bcb,'msg':_0x3837e3,'time':new Date()[_0x46aba2(0xf8)]()},_0x455bcb);},SENSITIVE_PARAM_PATTERNS=['password','passwd','pwd',a0_0x2cb5eb(0x108),a0_0x2cb5eb(0x107),a0_0x2cb5eb(0x165),a0_0x2cb5eb(0x144),a0_0x2cb5eb(0x11e),'apikey',a0_0x2cb5eb(0x166),a0_0x2cb5eb(0x135),'credentials','pin',a0_0x2cb5eb(0x16e),a0_0x2cb5eb(0x187),'privatekey'],redactSensitiveParams=(_0xe6909,_0x2b456b)=>{const _0x57e94c=a0_0x2cb5eb,_0x954c83={'UmBlk':_0x57e94c(0x137),'dANST':function(_0x17a381,_0x11d7a8){return _0x17a381>_0x11d7a8;}};if(!_0xe6909||_0xe6909['length']===0x0)return _0xe6909;const _0x4aba8f=_0x2b456b['toLowerCase'](),_0x327589=_0x4aba8f[_0x57e94c(0x101)](/\(([^)]+)\)\s*values/i);let _0xc51fc5=[];_0x327589&&(_0xc51fc5=_0x327589[0x1][_0x57e94c(0x12f)](',')[_0x57e94c(0x1a9)](_0x4a2c75=>_0x4a2c75[_0x57e94c(0x10d)]()[_0x57e94c(0x120)]()));const _0x115c2f=_0x4aba8f[_0x57e94c(0x101)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x115c2f){const _0x4fcc65=_0x115c2f[0x1],_0x584e51=_0x4fcc65['match'](/(\w+)\s*=/g);_0x584e51&&(_0xc51fc5=_0x584e51['map'](_0x5c365a=>_0x5c365a['replace'](/\s*=/,'')[_0x57e94c(0x10d)]()['toLowerCase']()));}return _0xe6909['map']((_0x110aad,_0x3b87d6)=>{const _0x4be26b=_0x57e94c;if(_0xc51fc5[_0x3b87d6]){const _0x2f0996=_0xc51fc5[_0x3b87d6],_0x2c50ec=SENSITIVE_PARAM_PATTERNS[_0x4be26b(0xf7)](_0x16289f=>_0x2f0996[_0x4be26b(0x142)](_0x16289f));if(_0x2c50ec)return _0x954c83['UmBlk'];}if(typeof _0x110aad==='string'&&_0x954c83['dANST'](_0x110aad[_0x4be26b(0xfe)],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x110aad)&&_0x110aad[_0x4be26b(0x142)]('.'))return'[REDACTED:token]';if(/^[a-fA-F0-9]{32,}$/['test'](_0x110aad))return _0x4be26b(0x179);}return _0x110aad;});},parseQueryMetadata=_0x5bd8e7=>{const _0x3a936b=a0_0x2cb5eb,_0x2ea963={'SQuxi':_0x3a936b(0x171),'FiDQP':'SELECT','XGiRy':_0x3a936b(0x170),'SryiA':'DELETE','owuvT':_0x3a936b(0x161),'AoNAG':_0x3a936b(0x118),'tyAml':'DDL_CREATE','KSHNh':_0x3a936b(0x160)},_0x180daf=_0x5bd8e7[_0x3a936b(0x10d)](),_0x2317e0=_0x180daf[_0x3a936b(0x19b)]();let _0x2de672=_0x2ea963[_0x3a936b(0x1a4)],_0x1fd995=null;if(_0x2317e0[_0x3a936b(0x115)](_0x2ea963['FiDQP'])){_0x2de672=_0x3a936b(0x1a8);const _0x535a17=_0x180daf[_0x3a936b(0x101)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1fd995=_0x535a17?_0x535a17[0x1]:null;}else{if(_0x2317e0['startsWith'](_0x3a936b(0x11f))){_0x2de672=_0x3a936b(0x11f);const _0x30493f=_0x180daf[_0x3a936b(0x101)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1fd995=_0x30493f?_0x30493f[0x1]:null;}else{if(_0x2317e0['startsWith'](_0x2ea963['XGiRy'])){_0x2de672=_0x3a936b(0x170);const _0x46c637=_0x180daf[_0x3a936b(0x101)](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1fd995=_0x46c637?_0x46c637[0x1]:null;}else{if(_0x2317e0['startsWith'](_0x3a936b(0x123))){_0x2de672=_0x2ea963[_0x3a936b(0x185)];const _0x3ca9c6=_0x180daf['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1fd995=_0x3ca9c6?_0x3ca9c6[0x1]:null;}else{if(_0x2317e0['startsWith']('BEGIN')||_0x2317e0['startsWith']('START\x20TRANSACTION'))_0x2de672=_0x3a936b(0x134);else{if(_0x2317e0['startsWith'](_0x2ea963['owuvT']))_0x2de672=_0x2ea963['AoNAG'];else{if(_0x2317e0[_0x3a936b(0x115)](_0x3a936b(0x16b)))_0x2de672='TRANSACTION_ROLLBACK';else{if(_0x2317e0['startsWith'](_0x3a936b(0x121)))_0x2de672=_0x2ea963[_0x3a936b(0x12c)];else{if(_0x2317e0[_0x3a936b(0x115)](_0x3a936b(0x156)))_0x2de672=_0x3a936b(0xec);else _0x2317e0[_0x3a936b(0x115)](_0x2ea963['KSHNh'])&&(_0x2de672='DDL_DROP');}}}}}}}}return{'type':_0x2de672,'table':_0x1fd995};},startQueryTimer=()=>{const _0xcf1b96=a0_0x2cb5eb,_0x21d484={'lThcx':function(_0x28ff82,_0x45df90){return _0x28ff82*_0x45df90;}},_0x557b5e=process[_0xcf1b96(0x163)]();return()=>{const _0x2233ae=_0xcf1b96,[_0x9de7b2,_0x210fed]=process['hrtime'](_0x557b5e);return parseFloat((_0x21d484[_0x2233ae(0x12b)](_0x9de7b2,0x3e8)+_0x210fed/0xf4240)['toFixed'](0x2));};},logQuery=(_0x30a1d3,_0x4d9c42=[],_0x233abf={})=>{const _0x1bc5e8=a0_0x2cb5eb,_0xd2e655={'pJwvA':'DB\x20Query','UPtgA':function(_0x35dc33,_0x392896){return _0x35dc33>_0x392896;},'xWMfb':function(_0x386322,_0x3de178,_0x22fad0){return _0x386322(_0x3de178,_0x22fad0);},'EfoFx':function(_0x231023,_0xddc6ac){return _0x231023!==_0xddc6ac;},'cVPMd':function(_0x2e6e64,_0xc28b29){return _0x2e6e64!==_0xc28b29;},'hSSdn':_0x1bc5e8(0xf0),'vFMve':function(_0x47d70c,_0x58809c){return _0x47d70c===_0x58809c;},'DsxEl':'info','VGzdG':function(_0x2d9ea0,_0x5d6805,_0x5a0e12){return _0x2d9ea0(_0x5d6805,_0x5a0e12);}};if(!sqlLogEnabled){logger['debug']({'event':'db_query','query':_0x30a1d3['substring'](0x0,0xc8),'paramCount':_0x4d9c42['length']},_0xd2e655[_0x1bc5e8(0x1a2)]);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType='postgresql'}=_0x233abf,{type:_0x3a06ae,table:_0x128685}=parseQueryMetadata(_0x30a1d3),_0x1f921d={'event':'sql_query','queryType':_0x3a06ae,'table':_0x128685,'query':_0x30a1d3,'paramCount':_0x4d9c42['length'],'dbType':dbType};sqlLogParams&&_0xd2e655[_0x1bc5e8(0x177)](_0x4d9c42['length'],0x0)&&(_0x1f921d[_0x1bc5e8(0x103)]=_0xd2e655[_0x1bc5e8(0x100)](redactSensitiveParams,_0x4d9c42,_0x30a1d3));_0xd2e655['EfoFx'](duration,null)&&(_0x1f921d[_0x1bc5e8(0x196)]=duration,_0x1f921d['isSlow']=duration>sqlLogSlowThreshold);_0xd2e655['cVPMd'](rowsAffected,null)&&(_0x1f921d['rowsAffected']=rowsAffected);const _0x43d3cb=_0x128685||_0xd2e655[_0x1bc5e8(0x14a)];let _0x4812eb='['+_0x3a06ae+']\x20'+_0x43d3cb;_0xd2e655['cVPMd'](duration,null)&&(_0x4812eb+='\x20('+duration+'ms)');const _0x1cdc3f=duration!==null&&duration>sqlLogSlowThreshold;let _0x4e013a=_0x1bc5e8(0x19e);if(_0x1cdc3f)_0x4812eb+='\x20[SLOW]',_0x4e013a=_0x1bc5e8(0x17b),logger[_0x1bc5e8(0x17b)](_0x1f921d,_0x4812eb);else _0xd2e655[_0x1bc5e8(0x125)](sqlLogLevel,_0xd2e655[_0x1bc5e8(0x14c)])?(_0x4e013a=_0xd2e655[_0x1bc5e8(0x14c)],logger['info'](_0x1f921d,_0x4812eb)):logger[_0x1bc5e8(0x19e)](_0x1f921d,_0x4812eb);_0xd2e655[_0x1bc5e8(0x117)](writeToFileLog,{..._0x1f921d,'level':_0x4e013a,'msg':_0x4812eb,'time':new Date()['toISOString']()},_0x4e013a);},logTransaction=(_0x232618,_0x9c2f82)=>{const _0x3483aa=a0_0x2cb5eb,_0x1f99ff={'aeOAn':_0x3483aa(0x16d),'UfKXE':function(_0x340304,_0x13f139,_0x5ebcf5){return _0x340304(_0x13f139,_0x5ebcf5);},'CEbNU':'debug'},_0x1d37ca={'event':_0x1f99ff['aeOAn'],'status':_0x232618,'queryCount':_0x9c2f82},_0x20cc99='Transaction\x20'+_0x232618;logger['debug'](_0x1d37ca,_0x20cc99),_0x1f99ff['UfKXE'](writeToFileLog,{..._0x1d37ca,'level':_0x3483aa(0x19e),'msg':_0x20cc99,'time':new Date()[_0x3483aa(0xf8)]()},_0x1f99ff[_0x3483aa(0xf6)]);},redactObject=_0x5c0d7f=>{const _0x5243f4=a0_0x2cb5eb,_0x527f1c={'yxOsw':'object','sXXNT':'password','AKJPh':_0x5243f4(0x19c),'MpxLd':_0x5243f4(0xef),'SlGGl':_0x5243f4(0x141),'yPOQp':'creditcard','qwUJf':_0x5243f4(0x17d),'ZuvkS':'cvv','LPDtE':'ssn','DxoXF':'private_key','OjwwZ':'privatekey'};if(!_0x5c0d7f||typeof _0x5c0d7f!==_0x527f1c[_0x5243f4(0xf5)])return _0x5c0d7f;const _0x3a5a75=[_0x527f1c['sXXNT'],_0x527f1c[_0x5243f4(0x19a)],_0x527f1c['MpxLd'],_0x5243f4(0x108),'secret','apikey','api_key',_0x527f1c[_0x5243f4(0x105)],_0x527f1c['yPOQp'],_0x527f1c['qwUJf'],_0x527f1c['ZuvkS'],_0x527f1c[_0x5243f4(0x14b)],'pin',_0x527f1c[_0x5243f4(0x10c)],_0x527f1c[_0x5243f4(0x10e)],_0x5243f4(0x165),_0x5243f4(0x107)],_0x53f0ce=Array[_0x5243f4(0x15d)](_0x5c0d7f)?[..._0x5c0d7f]:{..._0x5c0d7f};for(const _0x1727ec of Object[_0x5243f4(0x132)](_0x53f0ce)){const _0x1d1f58=_0x1727ec['toLowerCase']();if(_0x3a5a75[_0x5243f4(0xf7)](_0x15a336=>_0x1d1f58[_0x5243f4(0x142)](_0x15a336)))_0x53f0ce[_0x1727ec]='[REDACTED]';else typeof _0x53f0ce[_0x1727ec]===_0x527f1c['yxOsw']&&_0x53f0ce[_0x1727ec]!==null&&(_0x53f0ce[_0x1727ec]=redactObject(_0x53f0ce[_0x1727ec]));}return _0x53f0ce;},logError=(_0x1b9ece,_0x5b2e2c={},_0x4ec409=null)=>{const _0x4ebc8a=a0_0x2cb5eb,_0x1de364={'xmYLF':'Error','KIAGf':function(_0x3302ce,_0x3b29a0,_0x46a8b9){return _0x3302ce(_0x3b29a0,_0x46a8b9);},'ntuBK':_0x4ebc8a(0x109)},_0x5d71cf={'event':'error','errorName':_0x1b9ece[_0x4ebc8a(0xf4)]||_0x1de364['xmYLF'],'errorMessage':_0x1b9ece[_0x4ebc8a(0xf3)],'errorCode':_0x1b9ece['code']||null,'stack':_0x1b9ece['stack'],..._0x5b2e2c},_0x2ba41c=_0x4ec409||'Error:\x20'+_0x1b9ece[_0x4ebc8a(0xf3)];logger['error'](_0x5d71cf,_0x2ba41c),_0x1de364['KIAGf'](writeToFileLog,{..._0x5d71cf,'level':'error','msg':_0x2ba41c,'time':new Date()['toISOString']()},_0x1de364[_0x4ebc8a(0x158)]);},logFatalError=(_0xe46bb2,_0x4b6a8c={},_0x40f939=null)=>{const _0x4db51e=a0_0x2cb5eb,_0x2882c2={'PCWmp':_0x4db51e(0x12e),'TTwPA':function(_0x38bbff,_0x148156,_0x4d8bd7){return _0x38bbff(_0x148156,_0x4d8bd7);},'OqszI':'fatal'},_0x1386ab={'event':_0x4db51e(0xeb),'errorName':_0xe46bb2[_0x4db51e(0xf4)]||_0x4db51e(0xfd),'errorMessage':_0xe46bb2['message'],'errorCode':_0xe46bb2[_0x4db51e(0x193)]||null,'stack':_0xe46bb2[_0x4db51e(0x151)],'severity':_0x2882c2['PCWmp'],..._0x4b6a8c},_0xc5ae5a=_0x40f939||'FATAL:\x20'+_0xe46bb2['message'];logger['fatal'](_0x1386ab,_0xc5ae5a),_0x2882c2['TTwPA'](writeToFileLog,{..._0x1386ab,'level':_0x2882c2['OqszI'],'msg':_0xc5ae5a,'time':new Date()['toISOString']()},'error');},logHttpError=(_0x51c4c2,_0x4e3f11,_0x14203b={})=>{const _0x130a5f=a0_0x2cb5eb,_0x46a172={'WWrgh':'http_error','oGDWN':_0x130a5f(0xfd),'UeBxw':_0x130a5f(0x18a),'xqGaZ':function(_0x35ae2e,_0x266c7f,_0x58d6e2){return _0x35ae2e(_0x266c7f,_0x58d6e2);},'KxfZD':_0x130a5f(0x17b),'eWSLs':function(_0x56fe2f,_0x2f832c){return _0x56fe2f>=_0x2f832c;},'mDyKK':_0x130a5f(0x109)},_0x5c4513={'event':_0x46a172[_0x130a5f(0x194)],'errorName':_0x51c4c2['name']||_0x46a172[_0x130a5f(0x1a1)],'errorMessage':_0x51c4c2[_0x130a5f(0xf3)],'errorCode':_0x51c4c2[_0x130a5f(0x193)]||_0x51c4c2['statusCode']||0x1f4,'stack':_0x51c4c2[_0x130a5f(0x151)],'method':_0x4e3f11?.[_0x130a5f(0x106)],'url':_0x4e3f11?.[_0x130a5f(0xf1)]||_0x4e3f11?.['originalUrl'],'path':_0x4e3f11?.[_0x130a5f(0x167)],'ip':_0x4e3f11?.['ip']||_0x4e3f11?.['connection']?.['remoteAddress'],'userAgent':_0x4e3f11?.[_0x130a5f(0x183)]?.(_0x46a172[_0x130a5f(0x174)]),'requestId':_0x4e3f11?.['id']||_0x4e3f11?.['headers']?.[_0x130a5f(0x136)],'body':_0x4e3f11?.[_0x130a5f(0x180)]?redactObject(_0x4e3f11[_0x130a5f(0x180)]):undefined,'query':_0x4e3f11?.['query'],..._0x14203b},_0x4cbc41=_0x51c4c2['statusCode']||_0x51c4c2['status']||0x1f4,_0x83ceea='HTTP\x20'+_0x4cbc41+':\x20'+_0x51c4c2[_0x130a5f(0xf3)];_0x4cbc41>=0x1f4?logger[_0x130a5f(0x109)](_0x5c4513,_0x83ceea):logger[_0x130a5f(0x17b)](_0x5c4513,_0x83ceea),_0x46a172['xqGaZ'](writeToFileLog,{..._0x5c4513,'level':_0x4cbc41>=0x1f4?_0x130a5f(0x109):_0x46a172[_0x130a5f(0x128)],'msg':_0x83ceea,'time':new Date()[_0x130a5f(0xf8)]()},_0x46a172['eWSLs'](_0x4cbc41,0x1f4)?_0x46a172[_0x130a5f(0x16c)]:_0x46a172['KxfZD']);},logUncaughtError=(_0x5813ac,_0x57818b)=>{const _0x33b721=a0_0x2cb5eb,_0x29a6a1={'ROyQu':function(_0x12ddf0,_0x366f5d,_0x3e9e59){return _0x12ddf0(_0x366f5d,_0x3e9e59);}},_0x458d8a={'event':_0x5813ac,'errorName':_0x57818b?.['name']||'Error','errorMessage':_0x57818b?.[_0x33b721(0xf3)]||String(_0x57818b),'errorCode':_0x57818b?.[_0x33b721(0x193)]||null,'stack':_0x57818b?.['stack'],'severity':'CRITICAL','processId':process[_0x33b721(0x145)],'memoryUsage':process[_0x33b721(0x188)](),'uptime':process['uptime']()},_0x39411f='['+_0x5813ac[_0x33b721(0x19b)]()+']\x20'+(_0x57818b?.['message']||_0x57818b);logger['fatal'](_0x458d8a,_0x39411f),_0x29a6a1['ROyQu'](writeToFileLog,{..._0x458d8a,'level':_0x33b721(0x143),'msg':_0x39411f,'time':new Date()['toISOString']()},'error');},setupGlobalErrorHandlers=()=>{const _0x4a008c=a0_0x2cb5eb,_0x53eeed={'vhCYZ':function(_0x3cd791,_0x104649,_0x1850ec){return _0x3cd791(_0x104649,_0x1850ec);},'mewNO':'unhandledRejection','tSiQY':'uncaughtException','zkrQg':_0x4a008c(0x104),'ABaNM':_0x4a008c(0x152),'ecyIk':function(_0x45ce41,_0x4ad77a,_0x1c850c){return _0x45ce41(_0x4ad77a,_0x1c850c);}};process['on'](_0x53eeed['tSiQY'],_0x4a7b5c=>{const _0x25db2c=_0x4a008c;logUncaughtError(_0x25db2c(0x1a0),_0x4a7b5c),_0x53eeed[_0x25db2c(0x10a)](setTimeout,()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x53eeed['mewNO'],(_0x2d2014,_0x20fdb4)=>{const _0x485f4c=_0x2d2014 instanceof Error?_0x2d2014:new Error(String(_0x2d2014));logUncaughtError(_0x53eeed['mewNO'],_0x485f4c);}),process['on'](_0x4a008c(0x111),_0x1cbddf=>{const _0x4e9f06=_0x4a008c;logger[_0x4e9f06(0x17b)]({'event':_0x4e9f06(0x13c),'name':_0x1cbddf['name'],'message':_0x1cbddf['message'],'stack':_0x1cbddf['stack']},'Process\x20Warning:\x20'+_0x1cbddf['message']);});const _0x1475d5={'event':_0x53eeed['zkrQg']},_0x1a8d1c=_0x53eeed['ABaNM'];logger[_0x4a008c(0x102)](_0x1475d5,_0x1a8d1c),_0x53eeed['ecyIk'](writeToFileLog,{..._0x1475d5,'level':'info','msg':_0x1a8d1c,'time':new Date()['toISOString']()},'info');},createErrorHandlerMiddleware=()=>{const _0x875a27=a0_0x2cb5eb,_0x6699c6={'ufCoC':function(_0x14feb2,_0x23fddc,_0xae4d6e){return _0x14feb2(_0x23fddc,_0xae4d6e);},'epeqn':_0x875a27(0x148)};return(_0x373052,_0x302ed6,_0x2b9ea0,_0x6d67e3)=>{const _0x3e5d5a=_0x875a27;_0x6699c6[_0x3e5d5a(0x13f)](logHttpError,_0x373052,_0x302ed6);const _0x1650ba=_0x373052[_0x3e5d5a(0x133)]||_0x373052[_0x3e5d5a(0x11a)]||0x1f4;_0x2b9ea0[_0x3e5d5a(0x11a)](_0x1650ba)[_0x3e5d5a(0x15f)]({'success':![],'error':_0x1650ba>=0x1f4?_0x6699c6['epeqn']:_0x373052[_0x3e5d5a(0xf3)],'requestId':_0x302ed6['id']||_0x302ed6['headers']?.[_0x3e5d5a(0x136)]||null});};};module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};function a0_0x3b5a(){const _0x5c344=['C2vJCMv0','CgLK','zw52AxjVBM1LBNq','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','sw50zxjUywWGC2vYDMvYigvYCM9Y','u1fmx0Xpr19ftKfcteve','Afntzg4','tfbeDeu','rhn4rwW','sLDux1nfq1jfva','lI9SB2DZlW','ze9JrKy','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','C3rHy2S','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','te9hx0rjuG','s2Dwtgy','u1LtoKHioK1noNnZ','quXurvi','ig9UihbVCNqG','BNr1qKS','yMfZzvvYBa','zw52','zgf0ywjHC2vFy29UzMLN','s1nbr1q','AxnbCNjHEq','otuZmtm4nfLXDMT0wG','ANnVBG','rfjpua','q09ntuLu','zxjYB3iUBg9N','Ahj0Aw1L','zgvMyxvSDa','CMvMCMvZAf90B2TLBG','yxbPx2TLEq','Cgf0Aa','yxbWlMXVzW','Dhj1zq','zMLSzv9SB2DNAw5Nx2vUywjSzwq','uK9mtejbq0S','Bur5s0S','zgjFDhjHBNnHy3rPB24','B3rW','EwTpqwO','vvbeqvrf','vu5ltK9xtG','vMHUq04','icbjBMzVoIaGia','vwvcEhC','D2zIzeG','wvrjtLO','vvb0z0e','CezTEvi','w1jfrefdveveoMHHC2HD','iokvKqRILzeGifbYB2PLy3qGicaGidOG','D2fYBG','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','y3jLzgL0x2nHCMq','CMvZDgzVCMDL','icbizwfSDgG6ia','yM9KEq','yxbPs2v5','te9hx1rpx0zjteu','z2v0','mtaWndCXEuvsvvfy','u3j5Aue','otq1mJq2AxHKq2fN','ChjPDMf0zv9RzxK','BwvTB3j5vxnHz2u','AKrRque','DxnLCI1Hz2vUDa','u1fmx0Xpr19mrvzfta','mJK4mJq0nezXqLfQDa','AgvHBhrOq2HLy2S','zxHPC3rZu3LUyW','y3DK','mtvusxveEwS','CMvXlMHLywrLCNmUyxv0Ag9YAxPHDgLVBG','DhLWzq','y29Kzq','v1DYz2G','B0HbBxe','zhvYyxrPB25nCW','tffmuLq','C3rYAw5NAwz5','AxnVvgLTzq','quTkugG','Dg9vChbLCKnHC2u','CgfZC3DK','Cg9YDa','zgvIDwC','reD0CuG','Dw5JyxvNAhrfEgnLChrPB24','B0Dev04','CeP3DKe','D0Xyv1O','u1f1EgK','qvbqx1zfuLnjt04','BwTKAxjtEw5J','C2vYDMLJzuLUzM8','u0vmrunu','BwfW','zMf0ywXFzxjYB3i','rermx0fmvevs','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','nJu0y1r2DuHm','ChDK','Dw5RBM93BG','DxjS','ze9IEwi','BwvZC2fNzq','BMfTzq','ExHpC3C','q0vItLu','C29Tzq','Dg9ju09tDhjPBMC','zw5KCg9PBNrFCMvNAxn0zxjLza','CgfKrw5K','CgfZC3DVCMq','BM9fu04','rxjYB3i','BgvUz3rO','CgLUBW','EfDnzMi','Bwf0y2G','Aw5MBW','CgfYyw1Z','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','u2Xhr2W','Bwv0Ag9K','ywnJzxnZx3rVA2vU','Dg9Rzw4','zxjYB3i','DMHdwvO','BgD2CK8','rhHVwey','DhjPBq','t2P3D1O','C3rKvgLTzuz1BMn0Aw9UCW','sxDMD1O','D2fYBMLUzW','Bg9N','iokvKqRILzeGienVBMzPzYaGicaGidOG','rejFueftu1DpuKq','C3rHCNrZv2L0Aa','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','vKD6zeC','vfjbtLnbq1rjt05Fq09ntuLu','DxnLCG','C3rHDhvZ','CMvWzwf0','D3jPDgu','uxvxrxK','yxbPx3nLy3jLDa','su5trvju','Dg9mB3DLCKnHC2u','q1jfqvrf','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','revmrvrf','tI9b','DKznDMu','ou5YCuLczq','BxmP','s3HMwKq','Ag9ZDa','ndy1mJG5uuXOAMvW','BfrOy3G','DhLbBwW','ChjVzhvJDgLVBG','q1jjveLdquW','C3bSAxq','u2vYDMvYihn0yxj0Aw5NoIa','ChjVAMvJDa','A2v5CW','C3rHDhvZq29Kzq','vfjbtLnbq1rjt05FqKvhsu4','y3jLzgvUDgLHBa','Ec1Yzxf1zxn0lwLK','w1jfrefdvevexq','zgf0ywjHC2u','mZq3mZy0nZbwuvnRz2O','B1LbtKu','otyYmtzhqxHPtNa','ChjVy2vZC193yxjUAw5N','ic0G','AxnSBfq','DwzdB0m','rgf0ywjHC2u6ia','yxv0Ag9YAxPHDgLVBG','Aw5JBhvKzxm','zMf0ywW'];a0_0x3b5a=function(){return _0x5c344;};return a0_0x3b5a();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0xebc2(){const _0x361836=['BwvZC2fNzq','mtaYnMfqseztAG','mJuZmJnYz21jAvy','C2XPy2u','mtKYmZiYoxPds09WDW','zxjYB3i','BxLZCwW','u3P5v1O','zw50CMLLCW','BgvUz3rO','y2XLyxjdywnOzq','yLv1uKq','mtzzC2neCvy','C2v0','ve5QAha','mZq1ndiYuxzrEK9w','DhjPBq','AgfZ','mtm1u3DAvwvM','Dg9mB3DLCKnHC2u','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','Bg9VA3vWq2fJAgu','ndiWotKWrfzyz3HL','B3jHy2XL','Bg9HzeXVB2T1CfrHyMXL','A2v5CW','lI9KyI1TExnXBa','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','zxHWB3j0CW','z2v0','ChjVy2vZC0XVB2T1CezPzwXKCW','Dg9vChbLCKnHC2u','Cg9ZDgDYzxnXBa','tLjYEfe','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','DK1qDfm','zM9YrwfJAa','nLjMwfrnva','ChvZAa','rejFvfLqrq','ngD5AgTlCW','tg9VA3vWigzPzwXKCYbWCM9JzxnZzwq','zNjVBq','lI9SB2DNzxi','rwztvg8','oduZnZy3vM1Avhn5','Bw1zrwe','mte0mteZmhjOALbXwa','zxHLy3v0zvf1zxj5','CMvZB2X2zuXVB2T1CfzHBhvL','iIbUB3qGzM91BMqGAw4G'];a0_0xebc2=function(){return _0x361836;};return a0_0xebc2();}const a0_0x3fd765=a0_0x41b3;(function(_0x24ee77,_0xdc8454){const _0x8f276f=a0_0x41b3,_0x4edc7f=_0x24ee77();while(!![]){try{const _0x473b46=-parseInt(_0x8f276f(0xb7))/0x1*(parseInt(_0x8f276f(0xa6))/0x2)+parseInt(_0x8f276f(0xa7))/0x3*(parseInt(_0x8f276f(0x9a))/0x4)+-parseInt(_0x8f276f(0xbb))/0x5+-parseInt(_0x8f276f(0x97))/0x6*(-parseInt(_0x8f276f(0xa9))/0x7)+-parseInt(_0x8f276f(0xb1))/0x8*(-parseInt(_0x8f276f(0x9f))/0x9)+-parseInt(_0x8f276f(0xa1))/0xa+-parseInt(_0x8f276f(0xb4))/0xb;if(_0x473b46===_0xdc8454)break;else _0x4edc7f['push'](_0x4edc7f['shift']());}catch(_0x39ef7e){_0x4edc7f['push'](_0x4edc7f['shift']());}}}(a0_0xebc2,0x2a77a));const dbType=(process['env'][a0_0x3fd765(0x99)]||a0_0x3fd765(0xc5))[a0_0x3fd765(0xb8)]();function a0_0x41b3(_0x4251b2,_0xd9466b){_0x4251b2=_0x4251b2-0x94;const _0xebc26f=a0_0xebc2();let _0x41b3e9=_0xebc26f[_0x4251b2];if(a0_0x41b3['yWPmWY']===undefined){var _0x4ee7fd=function(_0x3ca068){const _0x5a4755='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5eb847='',_0x17f54c='';for(let _0x1315ea=0x0,_0x295aea,_0xf8c03c,_0x325bfa=0x0;_0xf8c03c=_0x3ca068['charAt'](_0x325bfa++);~_0xf8c03c&&(_0x295aea=_0x1315ea%0x4?_0x295aea*0x40+_0xf8c03c:_0xf8c03c,_0x1315ea++%0x4)?_0x5eb847+=String['fromCharCode'](0xff&_0x295aea>>(-0x2*_0x1315ea&0x6)):0x0){_0xf8c03c=_0x5a4755['indexOf'](_0xf8c03c);}for(let _0x3eec52=0x0,_0x5eaf73=_0x5eb847['length'];_0x3eec52<_0x5eaf73;_0x3eec52++){_0x17f54c+='%'+('00'+_0x5eb847['charCodeAt'](_0x3eec52)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x17f54c);};a0_0x41b3['IcnuMB']=_0x4ee7fd,a0_0x41b3['jqtnsn']={},a0_0x41b3['yWPmWY']=!![];}const _0x364688=_0xebc26f[0x0],_0x5e4b5d=_0x4251b2+_0x364688,_0x2cf444=a0_0x41b3['jqtnsn'][_0x5e4b5d];return!_0x2cf444?(_0x41b3e9=a0_0x41b3['IcnuMB'](_0x41b3e9),a0_0x41b3['jqtnsn'][_0x5e4b5d]=_0x41b3e9):_0x41b3e9=_0x2cf444,_0x41b3e9;}let executeQuery;if(dbType===a0_0x3fd765(0xbc)){const oracleDb=require('./db-oracle');executeQuery=(_0x318765,_0x4b435b)=>oracleDb[a0_0x3fd765(0xa2)](_0x318765,_0x4b435b);}else{if(dbType===a0_0x3fd765(0xab)){const mysqlDb=require(a0_0x3fd765(0xbf));executeQuery=(_0x4a5357,_0x277018)=>mysqlDb['executeQuery'](_0x4a5357,_0x277018);}else executeQuery=require('./db')['executeQuery'];}const {logger}=require(a0_0x3fd765(0x9d));class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x3fd765(0xaf)](){const _0x3f0a1c={'dtyzp':'Lookup\x20cache\x20cleared'};this['lookupCache']['clear'](),logger['debug']({'event':'lookup_cache_cleared'},_0x3f0a1c['dtyzp']);}async[a0_0x3fd765(0xbd)](_0x3d4ede,_0x755856,_0x1770fa){const _0x2fd214=a0_0x3fd765,_0x547ba3={'sUYCj':function(_0x32e5f2,_0x321f67){return _0x32e5f2!==_0x321f67;},'NRrxQ':function(_0x1eca50,_0xe43527){return _0x1eca50!==_0xe43527;},'BZmYe':function(_0x2272c3,_0x3ce673){return _0x2272c3(_0x3ce673);},'oeypc':function(_0x3ae310,_0x55976b){return _0x3ae310(_0x55976b);},'qBMJZ':'lookup_table_loaded','TNjhp':'lookup_table_load_error'},_0x38d624=_0x3d4ede+':'+_0x755856+':'+_0x1770fa;if(this[_0x2fd214(0xba)]['has'](_0x38d624))return this[_0x2fd214(0xba)][_0x2fd214(0xc2)](_0x38d624);try{const _0x10bacc='SELECT\x20'+_0x1770fa+',\x20'+_0x755856+'\x20FROM\x20'+_0x3d4ede,_0x104d47=await _0x547ba3['oeypc'](executeQuery,_0x10bacc),_0x441497=new Map();return _0x104d47['forEach'](_0x29f4c9=>{const _0x53961f=_0x2fd214,_0x48463c=_0x547ba3['sUYCj'](_0x29f4c9[_0x755856],undefined)?_0x29f4c9[_0x755856]:_0x29f4c9[_0x755856['toUpperCase']()],_0x47482c=_0x547ba3['NRrxQ'](_0x29f4c9[_0x1770fa],undefined)?_0x29f4c9[_0x1770fa]:_0x29f4c9[_0x1770fa[_0x53961f(0xc4)]()];_0x547ba3['sUYCj'](_0x48463c,null)&&_0x547ba3[_0x53961f(0xc6)](_0x48463c,undefined)&&(_0x441497['set'](_0x547ba3['BZmYe'](String,_0x48463c)[_0x53961f(0xb8)]()[_0x53961f(0xb5)](),_0x47482c),_0x441497[_0x53961f(0xb2)](_0x547ba3['oeypc'](String,_0x48463c)['trim'](),_0x47482c));}),this[_0x2fd214(0xba)]['set'](_0x38d624,_0x441497),logger['info']({'event':_0x547ba3['qBMJZ'],'table':_0x3d4ede,'column':_0x755856,'count':_0x104d47['length']},'Lookup\x20table\x20loaded:\x20'+_0x3d4ede),_0x441497;}catch(_0x1121b6){logger[_0x2fd214(0xaa)]({'event':_0x547ba3[_0x2fd214(0xb3)],'table':_0x3d4ede,'error':_0x1121b6[_0x2fd214(0xa5)]},_0x2fd214(0xb9)+_0x3d4ede);throw _0x1121b6;}}[a0_0x3fd765(0xa3)](_0x24ce17,_0x22af49){const _0xa69f1c=a0_0x3fd765,_0xce2814={'nhiUS':function(_0x5257e,_0x73e264){return _0x5257e===_0x73e264;},'hfpyP':function(_0x31fe48,_0x533871){return _0x31fe48(_0x533871);}};if(_0x24ce17===null||_0x24ce17===undefined||_0xce2814['nhiUS'](_0x24ce17,''))return null;const _0x2cf64d=_0xce2814['hfpyP'](String,_0x24ce17)[_0xa69f1c(0xb5)]();if(_0x22af49[_0xa69f1c(0xb6)](_0x2cf64d))return _0x22af49['get'](_0x2cf64d);const _0x1b5183=_0x2cf64d['toLowerCase']();if(_0x22af49[_0xa69f1c(0xb6)](_0x1b5183))return _0x22af49[_0xa69f1c(0xc2)](_0x1b5183);return null;}async[a0_0x3fd765(0xc3)](_0x4630bf,_0x227a2d){const _0x38aac3=a0_0x3fd765,_0x59a271={'mmYEa':function(_0x3a2ed1,_0x4ff757){return _0x3a2ed1===_0x4ff757;},'VRWNY':function(_0x36aec9,_0x4d6d11){return _0x36aec9!==_0x4d6d11;},'vMPtS':function(_0x2bf652,_0x259401){return _0x2bf652===_0x259401;},'bUuRD':_0x38aac3(0x9b)};if(!_0x227a2d||_0x59a271[_0x38aac3(0x95)](Object['keys'](_0x227a2d)[_0x38aac3(0xae)],0x0))return{'processedRows':_0x4630bf,'errors':[]};const _0x3a3c5c=[],_0x406cef=new Map();for(const [_0x5a55e3,_0x1ab66b]of Object[_0x38aac3(0xad)](_0x227a2d)){const {lookupTable:_0x1a708f,lookupColumn:_0x5422fa,lookupIdColumn:_0x100114}=_0x1ab66b,_0x1887ec=_0x1a708f+':'+_0x5422fa+':'+_0x100114;if(!_0x406cef[_0x38aac3(0xb6)](_0x1887ec)){const _0x45f113=await this['loadLookupTable'](_0x1a708f,_0x5422fa,_0x100114);_0x406cef['set'](_0x1887ec,_0x45f113);}}const _0x489f15=_0x4630bf['map']((_0x4bd93b,_0xbd564a)=>{const _0x56f39f=_0x38aac3,_0x2d11f5={..._0x4bd93b};for(const [_0x115430,_0xf0198a]of Object[_0x56f39f(0xad)](_0x227a2d)){const {lookupTable:_0x48116e,lookupColumn:_0x4556b1,lookupIdColumn:_0x3c121a,targetField:_0x56c459,required:_0x50392d}=_0xf0198a,_0x3d1fda=_0x48116e+':'+_0x4556b1+':'+_0x3c121a,_0xcd9884=_0x406cef[_0x56f39f(0xc2)](_0x3d1fda),_0x2e4e8e=_0x4bd93b[_0x115430];if((_0x59a271['mmYEa'](_0x2e4e8e,null)||_0x59a271[_0x56f39f(0xa0)](_0x2e4e8e,undefined)||_0x2e4e8e==='')&&!_0x50392d){_0x2d11f5[_0x56c459]=null;continue;}const _0x5b154c=this[_0x56f39f(0xa3)](_0x2e4e8e,_0xcd9884);_0x59a271['VRWNY'](_0x5b154c,null)?_0x2d11f5[_0x56c459]=_0x5b154c:(_0x50392d&&_0x3a3c5c[_0x56f39f(0x98)]({'rowIndex':_0xbd564a,'field':_0x115430,'value':_0x2e4e8e,'targetField':_0x56c459,'lookupTable':_0x48116e,'message':'Value\x20\x22'+_0x2e4e8e+_0x56f39f(0xa4)+_0x48116e}),_0x2d11f5[_0x56c459]=null);}return _0x2d11f5;});return logger['info']({'event':_0x38aac3(0x94),'totalRows':_0x4630bf[_0x38aac3(0xae)],'errorCount':_0x3a3c5c[_0x38aac3(0xae)],'lookupFieldCount':Object[_0x38aac3(0xbe)](_0x227a2d)['length']},_0x59a271[_0x38aac3(0xb0)]),{'processedRows':_0x489f15,'errors':_0x3a3c5c};}['getDistinctValues'](_0xbb1adb,_0x434abe){const _0x4b3650=a0_0x3fd765,_0x1b4dde={'LVMQw':function(_0x3ed424,_0x151351){return _0x3ed424!==_0x151351;},'xCSfp':function(_0x236a5a,_0x3c5b69){return _0x236a5a(_0x3c5b69);}},_0x596ec5=new Set();return _0xbb1adb[_0x4b3650(0x96)](_0x143b8c=>{const _0x308d4c=_0x4b3650,_0x4d7570=_0x143b8c[_0x434abe];_0x1b4dde['LVMQw'](_0x4d7570,null)&&_0x4d7570!==undefined&&_0x4d7570!==''&&_0x596ec5['add'](_0x1b4dde['xCSfp'](String,_0x4d7570)[_0x308d4c(0xb5)]());}),Array[_0x4b3650(0x9c)](_0x596ec5);}async['validateLookupValues'](_0x15cafc,_0x31f1b1){const _0x57476e=a0_0x3fd765,_0x469649={'EfSTo':function(_0x57f9fc,_0x5b7f08){return _0x57f9fc!==_0x5b7f08;},'SzyWZ':function(_0x28f9d2,_0xdeeea0){return _0x28f9d2===_0xdeeea0;}};if(!_0x31f1b1||_0x469649[_0x57476e(0xac)](Object[_0x57476e(0xbe)](_0x31f1b1)[_0x57476e(0xae)],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x32e6dd=[],_0x3881a9={};for(const [_0x2b78ea,_0x26e45e]of Object['entries'](_0x31f1b1)){const {lookupTable:_0x58027c,lookupColumn:_0x3aef89,lookupIdColumn:_0x5b3055,required:_0xa4e0a}=_0x26e45e,_0x97b356=this['getDistinctValues'](_0x15cafc,_0x2b78ea),_0x26f7df=await this['loadLookupTable'](_0x58027c,_0x3aef89,_0x5b3055),_0x471868=[],_0x41aa53=[];_0x97b356[_0x57476e(0x96)](_0xc05e88=>{const _0x20fe1e=_0x57476e,_0x5f256a=this['resolveLookupValue'](_0xc05e88,_0x26f7df);_0x469649[_0x20fe1e(0x9e)](_0x5f256a,null)?_0x41aa53['push'](_0xc05e88):_0x471868['push'](_0xc05e88);});if(_0x471868[_0x57476e(0xae)]>0x0&&_0xa4e0a){_0x32e6dd[_0x57476e(0x98)]({'field':_0x2b78ea,'lookupTable':_0x58027c,'invalidValues':_0x471868,'message':_0x471868['length']+_0x57476e(0xc0)+_0x58027c});const _0x3d4352=[];_0x26f7df[_0x57476e(0x96)]((_0x3aebc1,_0x59c07c)=>{const _0x367881=_0x57476e;if(_0x469649[_0x367881(0xac)](_0x59c07c,_0x59c07c[_0x367881(0xb8)]()))return;_0x3d4352[_0x367881(0x98)](_0x59c07c);}),_0x3881a9[_0x2b78ea]={'invalidValues':_0x471868,'availableValues':_0x3d4352[_0x57476e(0xa8)](0x0,0x32)};}}return{'valid':_0x469649[_0x57476e(0xac)](_0x32e6dd[_0x57476e(0xae)],0x0),'errors':_0x32e6dd,'suggestions':_0x3881a9};}}module[a0_0x3fd765(0xc1)]=new LookupResolver();
|
|
1
|
+
const a0_0x26ea7b=a0_0xaa3a;(function(_0x30aca2,_0x404543){const _0x598d68=a0_0xaa3a,_0x312091=_0x30aca2();while(!![]){try{const _0x2eaba3=parseInt(_0x598d68(0x155))/0x1+parseInt(_0x598d68(0x12a))/0x2*(parseInt(_0x598d68(0x14b))/0x3)+parseInt(_0x598d68(0x142))/0x4*(-parseInt(_0x598d68(0x123))/0x5)+-parseInt(_0x598d68(0x135))/0x6+-parseInt(_0x598d68(0x14e))/0x7+-parseInt(_0x598d68(0x138))/0x8*(parseInt(_0x598d68(0x140))/0x9)+parseInt(_0x598d68(0x11b))/0xa;if(_0x2eaba3===_0x404543)break;else _0x312091['push'](_0x312091['shift']());}catch(_0x11307a){_0x312091['push'](_0x312091['shift']());}}}(a0_0x2df7,0xb387c));const dbType=(process['env'][a0_0x26ea7b(0x12b)]||a0_0x26ea7b(0x147))['toLowerCase']();function a0_0xaa3a(_0xc9d9b3,_0x247eaa){_0xc9d9b3=_0xc9d9b3-0x11b;const _0x2df7a7=a0_0x2df7();let _0xaa3ac1=_0x2df7a7[_0xc9d9b3];if(a0_0xaa3a['AnZBbs']===undefined){var _0x68daa1=function(_0x3c9ad0){const _0x4238d7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x16684b='',_0x9307f6='';for(let _0x55da4b=0x0,_0x373841,_0x1017ad,_0x161c36=0x0;_0x1017ad=_0x3c9ad0['charAt'](_0x161c36++);~_0x1017ad&&(_0x373841=_0x55da4b%0x4?_0x373841*0x40+_0x1017ad:_0x1017ad,_0x55da4b++%0x4)?_0x16684b+=String['fromCharCode'](0xff&_0x373841>>(-0x2*_0x55da4b&0x6)):0x0){_0x1017ad=_0x4238d7['indexOf'](_0x1017ad);}for(let _0x1f7132=0x0,_0x55f1f2=_0x16684b['length'];_0x1f7132<_0x55f1f2;_0x1f7132++){_0x9307f6+='%'+('00'+_0x16684b['charCodeAt'](_0x1f7132)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x9307f6);};a0_0xaa3a['vqzuQw']=_0x68daa1,a0_0xaa3a['EIGZnK']={},a0_0xaa3a['AnZBbs']=!![];}const _0x176aba=_0x2df7a7[0x0],_0x5d2f4e=_0xc9d9b3+_0x176aba,_0x1b01fc=a0_0xaa3a['EIGZnK'][_0x5d2f4e];return!_0x1b01fc?(_0xaa3ac1=a0_0xaa3a['vqzuQw'](_0xaa3ac1),a0_0xaa3a['EIGZnK'][_0x5d2f4e]=_0xaa3ac1):_0xaa3ac1=_0x1b01fc,_0xaa3ac1;}let executeQuery;if(dbType===a0_0x26ea7b(0x146)){const oracleDb=require(a0_0x26ea7b(0x137));executeQuery=(_0x3b5dc6,_0x3a3718)=>oracleDb[a0_0x26ea7b(0x13f)](_0x3b5dc6,_0x3a3718);}else{if(dbType===a0_0x26ea7b(0x122)){const mysqlDb=require(a0_0x26ea7b(0x145));executeQuery=(_0x38b0ee,_0x4c439f)=>mysqlDb[a0_0x26ea7b(0x13f)](_0x38b0ee,_0x4c439f);}else executeQuery=require('./db')['executeQuery'];}const {logger}=require(a0_0x26ea7b(0x13e));class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x26ea7b(0x126)](){const _0x508a26=a0_0x26ea7b,_0xecf275={'GPCjQ':_0x508a26(0x133)};this[_0x508a26(0x150)][_0x508a26(0x121)](),logger['debug']({'event':_0xecf275[_0x508a26(0x149)]},'Lookup\x20cache\x20cleared');}async['loadLookupTable'](_0x293ff4,_0x57732f,_0xe41b4c){const _0x194d82=a0_0x26ea7b,_0x9fc9e8={'TckeD':function(_0x5266a3,_0xeccf49){return _0x5266a3!==_0xeccf49;},'NjHea':function(_0x5e26a4,_0x2de2e8){return _0x5e26a4(_0x2de2e8);},'ylrhy':function(_0x428c3e,_0x7e0a83){return _0x428c3e(_0x7e0a83);},'cUbdH':_0x194d82(0x14d)},_0x7f94a3=_0x293ff4+':'+_0x57732f+':'+_0xe41b4c;if(this[_0x194d82(0x150)][_0x194d82(0x132)](_0x7f94a3))return this['lookupCache']['get'](_0x7f94a3);try{const _0x374c38=_0x194d82(0x13b)+_0xe41b4c+',\x20'+_0x57732f+_0x194d82(0x14c)+_0x293ff4,_0x367f71=await _0x9fc9e8[_0x194d82(0x143)](executeQuery,_0x374c38),_0x227bbd=new Map();return _0x367f71['forEach'](_0x1fa768=>{const _0x4a2bf7=_0x194d82,_0x2fc17c=_0x1fa768[_0x57732f]!==undefined?_0x1fa768[_0x57732f]:_0x1fa768[_0x57732f[_0x4a2bf7(0x136)]()],_0x34f5d8=_0x1fa768[_0xe41b4c]!==undefined?_0x1fa768[_0xe41b4c]:_0x1fa768[_0xe41b4c['toUpperCase']()];_0x2fc17c!==null&&_0x9fc9e8['TckeD'](_0x2fc17c,undefined)&&(_0x227bbd['set'](_0x9fc9e8[_0x4a2bf7(0x151)](String,_0x2fc17c)[_0x4a2bf7(0x13a)]()[_0x4a2bf7(0x125)](),_0x34f5d8),_0x227bbd[_0x4a2bf7(0x131)](String(_0x2fc17c)[_0x4a2bf7(0x125)](),_0x34f5d8));}),this[_0x194d82(0x150)][_0x194d82(0x131)](_0x7f94a3,_0x227bbd),logger['info']({'event':_0x9fc9e8['cUbdH'],'table':_0x293ff4,'column':_0x57732f,'count':_0x367f71[_0x194d82(0x12e)]},_0x194d82(0x12c)+_0x293ff4),_0x227bbd;}catch(_0x3a49e6){logger[_0x194d82(0x11d)]({'event':'lookup_table_load_error','table':_0x293ff4,'error':_0x3a49e6['message']},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x293ff4);throw _0x3a49e6;}}['resolveLookupValue'](_0x2b4deb,_0x3978c8){const _0x334a85=a0_0x26ea7b;if(_0x2b4deb===null||_0x2b4deb===undefined||_0x2b4deb==='')return null;const _0x4465d3=String(_0x2b4deb)[_0x334a85(0x125)]();if(_0x3978c8[_0x334a85(0x132)](_0x4465d3))return _0x3978c8[_0x334a85(0x120)](_0x4465d3);const _0x3b7384=_0x4465d3[_0x334a85(0x13a)]();if(_0x3978c8['has'](_0x3b7384))return _0x3978c8[_0x334a85(0x120)](_0x3b7384);return null;}async[a0_0x26ea7b(0x134)](_0x24c6ba,_0x583ce2){const _0x5b2834=a0_0x26ea7b,_0x59666c={'tkNmj':function(_0xc4c7f2,_0x5539d4){return _0xc4c7f2===_0x5539d4;},'YmYaX':'lookup_fields_processed'};if(!_0x583ce2||_0x59666c[_0x5b2834(0x152)](Object[_0x5b2834(0x128)](_0x583ce2)['length'],0x0))return{'processedRows':_0x24c6ba,'errors':[]};const _0x529889=[],_0x5aca76=new Map();for(const [_0x233394,_0x3900b3]of Object[_0x5b2834(0x14a)](_0x583ce2)){const {lookupTable:_0x3cb777,lookupColumn:_0x480376,lookupIdColumn:_0x4a4881}=_0x3900b3,_0x162df=_0x3cb777+':'+_0x480376+':'+_0x4a4881;if(!_0x5aca76[_0x5b2834(0x132)](_0x162df)){const _0x1b6a09=await this['loadLookupTable'](_0x3cb777,_0x480376,_0x4a4881);_0x5aca76['set'](_0x162df,_0x1b6a09);}}const _0x2d9aed=_0x24c6ba[_0x5b2834(0x124)]((_0x574392,_0x4f4c80)=>{const _0x1e89e4=_0x5b2834,_0x4267db={..._0x574392};for(const [_0x593348,_0x26bda4]of Object['entries'](_0x583ce2)){const {lookupTable:_0x394205,lookupColumn:_0x55ac6d,lookupIdColumn:_0x1dd597,targetField:_0x4e8525,required:_0xbb882e}=_0x26bda4,_0x4de583=_0x394205+':'+_0x55ac6d+':'+_0x1dd597,_0x5e5265=_0x5aca76[_0x1e89e4(0x120)](_0x4de583),_0x3a61f1=_0x574392[_0x593348];if((_0x59666c['tkNmj'](_0x3a61f1,null)||_0x59666c[_0x1e89e4(0x152)](_0x3a61f1,undefined)||_0x3a61f1==='')&&!_0xbb882e){_0x4267db[_0x4e8525]=null;continue;}const _0x4618a5=this['resolveLookupValue'](_0x3a61f1,_0x5e5265);_0x4618a5!==null?_0x4267db[_0x4e8525]=_0x4618a5:(_0xbb882e&&_0x529889[_0x1e89e4(0x148)]({'rowIndex':_0x4f4c80,'field':_0x593348,'value':_0x3a61f1,'targetField':_0x4e8525,'lookupTable':_0x394205,'message':_0x1e89e4(0x130)+_0x3a61f1+_0x1e89e4(0x11f)+_0x394205}),_0x4267db[_0x4e8525]=null);}return _0x4267db;});return logger['info']({'event':_0x59666c[_0x5b2834(0x141)],'totalRows':_0x24c6ba['length'],'errorCount':_0x529889['length'],'lookupFieldCount':Object[_0x5b2834(0x128)](_0x583ce2)['length']},'Lookup\x20fields\x20processed'),{'processedRows':_0x2d9aed,'errors':_0x529889};}['getDistinctValues'](_0x10c205,_0x37aac8){const _0x545f80=a0_0x26ea7b,_0x2e3657={'blTQC':function(_0x4d2a53,_0x189d9c){return _0x4d2a53!==_0x189d9c;},'WjALM':function(_0x2a2629,_0x585075){return _0x2a2629!==_0x585075;},'AcYie':function(_0x5bdec5,_0x4eb6a8){return _0x5bdec5(_0x4eb6a8);}},_0x117e01=new Set();return _0x10c205[_0x545f80(0x153)](_0x5e7905=>{const _0x5f0ca2=_0x545f80,_0x4b4bc3=_0x5e7905[_0x37aac8];_0x2e3657[_0x5f0ca2(0x13d)](_0x4b4bc3,null)&&_0x4b4bc3!==undefined&&_0x2e3657[_0x5f0ca2(0x14f)](_0x4b4bc3,'')&&_0x117e01['add'](_0x2e3657[_0x5f0ca2(0x144)](String,_0x4b4bc3)[_0x5f0ca2(0x125)]());}),Array[_0x545f80(0x11e)](_0x117e01);}async[a0_0x26ea7b(0x11c)](_0x133def,_0x58c9fc){const _0x649a28=a0_0x26ea7b,_0x852958={'dyexl':function(_0x9397f9,_0xeaded5){return _0x9397f9!==_0xeaded5;},'uvEkG':function(_0x51c9b6,_0x4c5cbd){return _0x51c9b6===_0x4c5cbd;},'cvouz':function(_0x2a5645,_0x4e8cad){return _0x2a5645===_0x4e8cad;}};if(!_0x58c9fc||_0x852958['cvouz'](Object['keys'](_0x58c9fc)['length'],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x26d351=[],_0x1144e6={};for(const [_0x3946ab,_0x4ea9b6]of Object[_0x649a28(0x14a)](_0x58c9fc)){const {lookupTable:_0x4fd238,lookupColumn:_0x5711cf,lookupIdColumn:_0x3a3f98,required:_0x3240bd}=_0x4ea9b6,_0x6bb4a0=this[_0x649a28(0x127)](_0x133def,_0x3946ab),_0x4ef1a1=await this[_0x649a28(0x154)](_0x4fd238,_0x5711cf,_0x3a3f98),_0x32cde4=[],_0x5790a8=[];_0x6bb4a0['forEach'](_0x3aca50=>{const _0x1b2e1d=_0x649a28,_0x18efba=this[_0x1b2e1d(0x139)](_0x3aca50,_0x4ef1a1);_0x852958[_0x1b2e1d(0x12f)](_0x18efba,null)?_0x5790a8[_0x1b2e1d(0x148)](_0x3aca50):_0x32cde4['push'](_0x3aca50);});if(_0x32cde4['length']>0x0&&_0x3240bd){_0x26d351[_0x649a28(0x148)]({'field':_0x3946ab,'lookupTable':_0x4fd238,'invalidValues':_0x32cde4,'message':_0x32cde4['length']+_0x649a28(0x129)+_0x4fd238});const _0xe0a4a5=[];_0x4ef1a1['forEach']((_0x291624,_0x2f7643)=>{const _0x25b684=_0x649a28;if(_0x852958[_0x25b684(0x13c)](_0x2f7643,_0x2f7643['toLowerCase']()))return;_0xe0a4a5[_0x25b684(0x148)](_0x2f7643);}),_0x1144e6[_0x3946ab]={'invalidValues':_0x32cde4,'availableValues':_0xe0a4a5[_0x649a28(0x12d)](0x0,0x32)};}}return{'valid':_0x26d351['length']===0x0,'errors':_0x26d351,'suggestions':_0x1144e6};}}module['exports']=new LookupResolver();function a0_0x2df7(){const _0x5e3e5e=['DhjPBq','y2XLyxjdywnOzq','z2v0rgLZDgLUy3rwywX1zxm','A2v5CW','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','mNLSywDZzG','rejFvfLqrq','tg9VA3vWihrHyMXLigXVywrLzdOG','C2XPy2u','BgvUz3rO','zhLLEgW','vMfSDwuGiG','C2v0','AgfZ','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','ChjVy2vZC0XVB2T1CezPzwXKCW','odiWodi2nfPfA2HHzW','Dg9vChbLCKnHC2u','lI9KyI1VCMfJBgu','ndHOwNzICgq','CMvZB2X2zuXVB2T1CfzHBhvL','Dg9mB3DLCKnHC2u','u0vmrunuia','DxzfA0C','yMXuuum','lI9SB2DNzxi','zxHLy3v0zvf1zxj5','mtqXnJm1n1fXtM5TvW','ww1zyvG','ogLctwPTsW','EwXYAhK','qwnzAwu','lI9KyI1TExnXBa','B3jHy2XL','Cg9ZDgDYzxnXBa','ChvZAa','r1bdALe','zw50CMLLCW','nda5mJGXowLpqM5Jva','iezst00G','Bg9VA3vWx3rHyMXLx2XVywrLza','mJiZmZKXmfzZA2L3sW','v2Pbte0','Bg9VA3vWq2fJAgu','tMPizwe','DgToBwO','zM9YrwfJAa','Bg9HzeXVB2T1CfrHyMXL','mtmWnJu2m2fju2fUuW','mte3nZKYnJbkBvj1sNO','DMfSAwrHDgvmB29RDxbwywX1zxm','zxjYB3i','zNjVBq','iIbUB3qGzM91BMqGAw4G','z2v0','y2XLyxi','BxLZCwW','mtiWndK4nu1bDLPtCW','BwfW'];a0_0x2df7=function(){return _0x5e3e5e;};return a0_0x2df7();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a0_0xcdb3(){const _0x56c900=['nZaYndiZnKnYvwnXBG','lwv4Cg9YDa','ndC2vu11wNzf','zgf0yxrHyMXLC1f1zxj5','y2XLyxjdywnOzq','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','mZn0r3fuEvO','lI9SB2DNzxi','mZCWngnZrLbcvG','z2v0','C2v0','mJyYnJi0nwTxDwDoBq','ugf5Bg9HzcbUB3qGzM91BMq6ia','lMPZB24','Axnby3rPB25fBMfIBgvK','mZaXmZG5m1L1D3PvBG','ohjWAKDQta','nJq5mdK1DfnYt0DX','CMvHzezPBgu','AM9PBG','DgfIBgvoyw1L','Aw5MBW','lI4VlI4VCgf5Bg9Hza','nJe0mZrtu3noEwW','AgfZ','y2fJAgu','DxrMoa','uxr6Bfa','y29SDw1UrM9YBwf0CW','mtbZDMv4ExO','t1HgBM0','Bg9HzfbHEwXVywq','Cgf5Bg9HzerPCG','zxHWB3j0CW','ywn0Aw9U','nJK4ndi1nMfcEKfrwG','rhnfrg4','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','wMf4C1e','mZaYENHpDLfq'];a0_0xcdb3=function(){return _0x56c900;};return a0_0xcdb3();}const a0_0x3c4953=a0_0x489f;(function(_0x28a5fa,_0x474329){const _0x44326b=a0_0x489f,_0xf52e1c=_0x28a5fa();while(!![]){try{const _0x2ec70a=-parseInt(_0x44326b(0x106))/0x1*(parseInt(_0x44326b(0x125))/0x2)+parseInt(_0x44326b(0x109))/0x3+parseInt(_0x44326b(0x10e))/0x4*(-parseInt(_0x44326b(0x10f))/0x5)+-parseInt(_0x44326b(0x115))/0x6*(parseInt(_0x44326b(0x128))/0x7)+-parseInt(_0x44326b(0x121))/0x8+-parseInt(_0x44326b(0x10d))/0x9*(-parseInt(_0x44326b(0x11b))/0xa)+parseInt(_0x44326b(0x104))/0xb*(parseInt(_0x44326b(0x126))/0xc);if(_0x2ec70a===_0x474329)break;else _0xf52e1c['push'](_0xf52e1c['shift']());}catch(_0xe979cb){_0xf52e1c['push'](_0xf52e1c['shift']());}}}(a0_0xcdb3,0x8d24d));const fs=require('fs')['promises'],path=require('path'),{logger}=require(a0_0x3c4953(0x105));class PayloadLoader{constructor(){const _0x5d79b0=a0_0x3c4953;this[_0x5d79b0(0x11e)]=path[_0x5d79b0(0x111)](__dirname,_0x5d79b0(0x114)),this[_0x5d79b0(0x117)]=new Map();}async[a0_0x3c4953(0x11d)](_0x579739,_0x270dd7){const _0x872583=a0_0x3c4953,_0x3ae4a9={'ZaxsQ':'payload_loaded','OXFnm':'Payload\x20loaded\x20successfully','DsEDn':'payload_load_error'},_0xa87255=_0x579739+':'+_0x270dd7;if(this['cache']['has'](_0xa87255))return this['cache'][_0x872583(0x107)](_0xa87255);const _0x375714=path['join'](this['payloadDir'],_0x579739+'_'+_0x270dd7+_0x872583(0x10b));try{const _0x2cd47=await fs['readFile'](_0x375714,'utf8'),_0x3929b8=JSON['parse'](_0x2cd47);return this['cache'][_0x872583(0x108)](_0xa87255,_0x3929b8),logger['debug']({'event':_0x3ae4a9[_0x872583(0x124)],'project':_0x579739,'resource':_0x270dd7},_0x3ae4a9[_0x872583(0x11c)]),_0x3929b8;}catch(_0x13c7d6){logger['error']({'event':_0x3ae4a9[_0x872583(0x122)],'project':_0x579739,'resource':_0x270dd7,'error':_0x13c7d6['message']},_0x872583(0x103));throw new Error(_0x872583(0x10a)+_0x579739+'_'+_0x270dd7);}}async['loadPayloadByName'](_0x398722){const _0x2897e=a0_0x3c4953,_0x4c962d={'QtzlP':_0x2897e(0x118),'GPZjQ':'Payload\x20loaded\x20successfully\x20by\x20name','YbHCR':_0x2897e(0x123)},_0x43d399='payload:'+_0x398722;if(this['cache'][_0x2897e(0x116)](_0x43d399))return this['cache']['get'](_0x43d399);const _0x14dd7b=path[_0x2897e(0x111)](this[_0x2897e(0x11e)],_0x398722+_0x2897e(0x10b));try{const _0x1dd85d=await fs[_0x2897e(0x110)](_0x14dd7b,_0x4c962d[_0x2897e(0x119)]),_0x127c33=JSON['parse'](_0x1dd85d);return this['cache']['set'](_0x43d399,_0x127c33),logger['debug']({'event':'payload_loaded','payloadName':_0x398722},_0x4c962d['GPZjQ']),_0x127c33;}catch(_0x3e835f){logger['error']({'event':'payload_load_error','payloadName':_0x398722,'error':_0x3e835f['message']},_0x4c962d['YbHCR']);throw new Error(_0x2897e(0x10a)+_0x398722);}}[a0_0x3c4953(0x10c)](_0x3c09e5,_0x522950){const _0xb46230=a0_0x3c4953;return _0x3c09e5['action']&&_0x3c09e5[_0xb46230(0x120)][_0x522950]===!![];}['getExportConfig'](_0xda4829){const _0x4c37d0=a0_0x3c4953;return{'columns':_0xda4829['fieldName']||[],'filename':_0xda4829[_0x4c37d0(0x112)]['replace']('.','-')+_0x4c37d0(0x127),'datatablesQuery':_0xda4829[_0x4c37d0(0x129)]||null,'columnFormats':_0xda4829[_0x4c37d0(0x11a)]||null,'fieldLabels':_0xda4829['fieldLabels']||null};}[a0_0x3c4953(0x102)](){const _0x5f54f7=a0_0x3c4953;this['cache']['clear'](),logger[_0x5f54f7(0x113)]({'event':'payload_cache_cleared'},'Payload\x20cache\x20cleared');}}function a0_0x489f(_0x420e8f,_0x9aac62){_0x420e8f=_0x420e8f-0x102;const _0xcdb3aa=a0_0xcdb3();let _0x489fd4=_0xcdb3aa[_0x420e8f];if(a0_0x489f['fvnxNn']===undefined){var _0x3d3128=function(_0x53d53f){const _0x21395a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2339d1='',_0x582520='';for(let _0x3ba316=0x0,_0x5aa98f,_0x9763bd,_0x236f00=0x0;_0x9763bd=_0x53d53f['charAt'](_0x236f00++);~_0x9763bd&&(_0x5aa98f=_0x3ba316%0x4?_0x5aa98f*0x40+_0x9763bd:_0x9763bd,_0x3ba316++%0x4)?_0x2339d1+=String['fromCharCode'](0xff&_0x5aa98f>>(-0x2*_0x3ba316&0x6)):0x0){_0x9763bd=_0x21395a['indexOf'](_0x9763bd);}for(let _0x4d4636=0x0,_0x5a4c13=_0x2339d1['length'];_0x4d4636<_0x5a4c13;_0x4d4636++){_0x582520+='%'+('00'+_0x2339d1['charCodeAt'](_0x4d4636)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x582520);};a0_0x489f['ShILfJ']=_0x3d3128,a0_0x489f['KRzXIC']={},a0_0x489f['fvnxNn']=!![];}const _0x29e7c7=_0xcdb3aa[0x0],_0xb7fed0=_0x420e8f+_0x29e7c7,_0x353a6b=a0_0x489f['KRzXIC'][_0xb7fed0];return!_0x353a6b?(_0x489fd4=a0_0x489f['ShILfJ'](_0x489fd4),a0_0x489f['KRzXIC'][_0xb7fed0]=_0x489fd4):_0x489fd4=_0x353a6b,_0x489fd4;}module[a0_0x3c4953(0x11f)]=new PayloadLoader();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';
|
|
1
|
+
'use strict';(function(_0x4560a6,_0x46aaa4){var _0x2682ae=a0_0xa2ee,_0x42d3d8=_0x4560a6();while(!![]){try{var _0x4d1a20=-parseInt(_0x2682ae(0xda))/0x1*(-parseInt(_0x2682ae(0xde))/0x2)+parseInt(_0x2682ae(0xdc))/0x3+-parseInt(_0x2682ae(0xd9))/0x4+-parseInt(_0x2682ae(0xdd))/0x5*(parseInt(_0x2682ae(0xe0))/0x6)+-parseInt(_0x2682ae(0xdf))/0x7+-parseInt(_0x2682ae(0xdb))/0x8*(parseInt(_0x2682ae(0xd7))/0x9)+parseInt(_0x2682ae(0xd6))/0xa;if(_0x4d1a20===_0x46aaa4)break;else _0x42d3d8['push'](_0x42d3d8['shift']());}catch(_0xdba793){_0x42d3d8['push'](_0x42d3d8['shift']());}}}(a0_0x2370,0xeb036));function createResponse(_0x3d1165,_0x2f8806,_0x3470a1=null){var _0x5a7db5=a0_0xa2ee;return{'success':!![],'statusCode':_0x3d1165,'message':_0x2f8806,'data':_0x3470a1,'timestamp':new Date()[_0x5a7db5(0xd8)]()};}function a0_0x2370(){var _0x238296=['odKWota0mhzor3btBa','mta5nZiXmJHnuurmBKC','mJKZmdy5mdbSAMDeB2m','mZiZmZDIs3n3z1K','Dg9ju09tDhjPBMC','nte3mJa1mK5prev4ta','mtm0m09Zs2ToAG','mtaZmMjus1ztBG','ndaZmJe0n25LwgreAW','nw5er09isq','mJmWmNzxu1PYyW'];a0_0x2370=function(){return _0x238296;};return a0_0x2370();}function createError(_0x444bf5,_0x17b8a9,_0x5d1103=null){return{'success':![],'statusCode':_0x444bf5,'message':_0x17b8a9,'data':_0x5d1103,'timestamp':new Date()['toISOString']()};}function a0_0xa2ee(_0x17ce40,_0x11e156){_0x17ce40=_0x17ce40-0xd6;var _0x2370a2=a0_0x2370();var _0xa2ee73=_0x2370a2[_0x17ce40];if(a0_0xa2ee['BLnmjM']===undefined){var _0x31bc7d=function(_0x2cac84){var _0xc5a148='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x3aeabf='',_0x427cba='';for(var _0x529db3=0x0,_0x264a9f,_0x254648,_0x274e93=0x0;_0x254648=_0x2cac84['charAt'](_0x274e93++);~_0x254648&&(_0x264a9f=_0x529db3%0x4?_0x264a9f*0x40+_0x254648:_0x254648,_0x529db3++%0x4)?_0x3aeabf+=String['fromCharCode'](0xff&_0x264a9f>>(-0x2*_0x529db3&0x6)):0x0){_0x254648=_0xc5a148['indexOf'](_0x254648);}for(var _0x45074c=0x0,_0x5e3732=_0x3aeabf['length'];_0x45074c<_0x5e3732;_0x45074c++){_0x427cba+='%'+('00'+_0x3aeabf['charCodeAt'](_0x45074c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x427cba);};a0_0xa2ee['CGmIhM']=_0x31bc7d,a0_0xa2ee['scgddJ']={},a0_0xa2ee['BLnmjM']=!![];}var _0x46645=_0x2370a2[0x0],_0x322c0a=_0x17ce40+_0x46645,_0x12c356=a0_0xa2ee['scgddJ'][_0x322c0a];return!_0x12c356?(_0xa2ee73=a0_0xa2ee['CGmIhM'](_0xa2ee73),a0_0xa2ee['scgddJ'][_0x322c0a]=_0xa2ee73):_0xa2ee73=_0x12c356,_0xa2ee73;}function createValidationError(_0x1db966,_0x2251f0){var _0x2f7d86=a0_0xa2ee;return{'success':![],'statusCode':0x190,'message':_0x1db966,'data':{'errors':_0x2251f0},'timestamp':new Date()[_0x2f7d86(0xd8)]()};}module['exports']={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
|
package/src/utils/rabbitmq.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a0_0x2599b5=a0_0x11f2;(function(_0x36ebe6,_0xd98a6){const _0x2b6450=a0_0x11f2,_0x19b983=_0x36ebe6();while(!![]){try{const _0x9a21aa=parseInt(_0x2b6450(0xdc))/0x1+parseInt(_0x2b6450(0xf9))/0x2*(-parseInt(_0x2b6450(0xe7))/0x3)+parseInt(_0x2b6450(0xee))/0x4+parseInt(_0x2b6450(0xdf))/0x5+parseInt(_0x2b6450(0xe9))/0x6+-parseInt(_0x2b6450(0xcf))/0x7*(parseInt(_0x2b6450(0xf4))/0x8)+-parseInt(_0x2b6450(0xda))/0x9;if(_0x9a21aa===_0xd98a6)break;else _0x19b983['push'](_0x19b983['shift']());}catch(_0xbae7b9){_0x19b983['push'](_0x19b983['shift']());}}}(a0_0x1ca2,0xbd37c),require(a0_0x2599b5(0xe2))['config']());const amqp=require(a0_0x2599b5(0xf3)),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process[a0_0x2599b5(0xf6)][a0_0x2599b5(0xd0)],EXCHANGE=process[a0_0x2599b5(0xf6)]['RABBITMQ_EXCHANGE'],ROUTING_KEY=process['env'][a0_0x2599b5(0xeb)],QUEUE=process['env'][a0_0x2599b5(0xf7)];async function createConnection(){const _0x2d735c=a0_0x2599b5,_0x3290eb={'wCaLd':function(_0x47b533,_0x341849){return _0x47b533(_0x341849);},'HoaUW':function(_0x4a4085,_0x24b81a){return _0x4a4085(_0x24b81a);}};try{const _0x66be40=await amqp[_0x2d735c(0xec)](RABBITMQ_URL);return console[_0x2d735c(0xe5)]('['+_0x3290eb[_0x2d735c(0xe4)](formatDate,new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x66be40;}catch(_0x4c57c7){console[_0x2d735c(0xd8)]('['+_0x3290eb[_0x2d735c(0xce)](formatDate,new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x4c57c7['message']);throw _0x4c57c7;}}function a0_0x1ca2(){const _0x257f6e=['sg9HvvC','n3bcC0Hhsq','uKfcqKLutvfFvvjm','xsbszxrYEsbLEgnOyw5NzsbJCMvHDgvKl3jLywr5','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG','rKT0twy','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','yMLUzff1zxvL','ug9cwxu','xsbgywLSzwqGDg8Gy3jLyxrLifjHyMjPDe1rignOyw5UzwW6ia','zxjYB3i','xsbfCNjVCIbZzxr0Aw5NihvWig1HAw4GCxvLDwu6','ntC0mdG4nfvhA2Dyzq','BfPrruu','nJmWnJuYChLtvxjN','xsbfEgnOyw5Nzsa','zgLYzwn0','ndm4odKZnvj1AMPzCq','yxnZzxj0rxHJAgfUz2u','xsbsywjIAxrnusbJB25Uzwn0Aw9UignSB3nLza','zg90zw52','vwfgqKy','D0nHtgq','Bg9N','zM91BMq','nti3nJCZD2HJq2T4','yxnZzxj0uxvLDwu','mZy5ody4ogngqxHnyW','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbXDwv1ztO','uKfcqKLutvfFuK9vveLor19lrvK','y29UBMvJDa','twzeExG','mZa3nJm4nejsv2fuvq','BwvZC2fNzq','uxvLDwuG','xsbcAw5KAw5Nia','ENnquK4','yw1XCgXPyG','ntKXntq0r2P5BwLS','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','zw52','uKfcqKLutvfFuvvfvuu','CxvLDwu','mtzJzKXqvfu','y3jLyxrLq2HHBM5LBa'];a0_0x1ca2=function(){return _0x257f6e;};return a0_0x1ca2();}function a0_0x11f2(_0x595218,_0x83fd53){_0x595218=_0x595218-0xcd;const _0x1ca239=a0_0x1ca2();let _0x11f247=_0x1ca239[_0x595218];if(a0_0x11f2['cgVPel']===undefined){var _0x125042=function(_0x562b5b){const _0x33cc28='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1544f1='',_0x287916='';for(let _0x26e346=0x0,_0x4812c1,_0xc5c3b7,_0x43f3f0=0x0;_0xc5c3b7=_0x562b5b['charAt'](_0x43f3f0++);~_0xc5c3b7&&(_0x4812c1=_0x26e346%0x4?_0x4812c1*0x40+_0xc5c3b7:_0xc5c3b7,_0x26e346++%0x4)?_0x1544f1+=String['fromCharCode'](0xff&_0x4812c1>>(-0x2*_0x26e346&0x6)):0x0){_0xc5c3b7=_0x33cc28['indexOf'](_0xc5c3b7);}for(let _0x2882fc=0x0,_0x588ab5=_0x1544f1['length'];_0x2882fc<_0x588ab5;_0x2882fc++){_0x287916+='%'+('00'+_0x1544f1['charCodeAt'](_0x2882fc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x287916);};a0_0x11f2['LDYnlP']=_0x125042,a0_0x11f2['iEQfmV']={},a0_0x11f2['cgVPel']=!![];}const _0x20be3c=_0x1ca239[0x0],_0x137018=_0x595218+_0x20be3c,_0x4e2f3a=a0_0x11f2['iEQfmV'][_0x137018];return!_0x4e2f3a?(_0x11f247=a0_0x11f2['LDYnlP'](_0x11f247),a0_0x11f2['iEQfmV'][_0x137018]=_0x11f247):_0x11f247=_0x4e2f3a,_0x11f247;}async function createChannel(_0x47066a){const _0x122263=a0_0x2599b5;try{const _0x5d967a=await _0x47066a[_0x122263(0xcd)]();return console[_0x122263(0xe5)]('['+formatDate(new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x5d967a;}catch(_0xff60cf){console[_0x122263(0xd8)]('['+formatDate(new Date())+_0x122263(0xd7)+_0xff60cf['message']);throw _0xff60cf;}}async function setupInfrastructure(_0x24c0c3){const _0x3de3b1=a0_0x2599b5,_0x2ccee5={'FKtMf':'retry-exchange','dgEAB':_0x3de3b1(0xde),'OQjEE':function(_0x1bf8e2,_0x4d3dc6){return _0x1bf8e2(_0x4d3dc6);},'foxlD':function(_0x3be3a0,_0x3c80af){return _0x3be3a0(_0x3c80af);},'MfDyx':function(_0x100d53,_0x4fbfb7){return _0x100d53===_0x4fbfb7;},'PoBYu':'created/ready','zsPRN':'inequivalent\x20arg','UaFBF':'x-dead-letter-routing-key'};try{await _0x24c0c3['assertExchange'](_0x2ccee5[_0x3de3b1(0xd3)],_0x2ccee5['dgEAB'],{'durable':!![],'autoDelete':![]}),console[_0x3de3b1(0xe5)]('['+_0x2ccee5['OQjEE'](formatDate,new Date())+_0x3de3b1(0xd1));}catch(_0x49732f){console[_0x3de3b1(0xd8)]('['+formatDate(new Date())+_0x3de3b1(0xd4),_0x49732f['message']);throw _0x49732f;}try{await _0x24c0c3[_0x3de3b1(0xe0)](EXCHANGE,_0x2ccee5['dgEAB'],{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+_0x3de3b1(0xdd)+EXCHANGE+'\x20created/ready');}catch(_0x4233da){console[_0x3de3b1(0xd8)]('['+formatDate(new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x4233da[_0x3de3b1(0xef)]);throw _0x4233da;}const _0x2fd34d=ROUTING_KEY+'_retry';try{const _0x325848={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x24c0c3[_0x3de3b1(0xe8)](_0x2fd34d,_0x325848),console[_0x3de3b1(0xe5)]('['+_0x2ccee5['foxlD'](formatDate,new Date())+']\x20Retry\x20queue\x20'+_0x2fd34d+'\x20created/ready'),await _0x24c0c3[_0x3de3b1(0xd5)](_0x2fd34d,_0x2ccee5['FKtMf'],ROUTING_KEY),console[_0x3de3b1(0xe5)]('['+formatDate(new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+'\x20created');}catch(_0x25a2e1){console[_0x3de3b1(0xd8)]('['+_0x2ccee5['OQjEE'](formatDate,new Date())+_0x3de3b1(0xea),_0x25a2e1[_0x3de3b1(0xef)]);throw _0x25a2e1;}try{const _0x28d6ac={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x2ccee5['FKtMf'],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x373bc6=await _0x24c0c3['assertQueue'](QUEUE,_0x28d6ac);console[_0x3de3b1(0xe5)]('['+formatDate(new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x2ccee5[_0x3de3b1(0xed)](_0x373bc6[_0x3de3b1(0xf8)],QUEUE)?_0x2ccee5[_0x3de3b1(0xd6)]:_0x3de3b1(0xe6))+'\x20with\x20DLX'),await _0x24c0c3['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+formatDate(new Date())+_0x3de3b1(0xf1)+EXCHANGE+'\x20->\x20'+QUEUE+'\x20('+ROUTING_KEY+')\x20created');}catch(_0x384861){if(_0x384861[_0x3de3b1(0xef)]['includes'](_0x2ccee5['zsPRN'])&&_0x384861[_0x3de3b1(0xef)]['includes'](_0x2ccee5[_0x3de3b1(0xe3)]))console['error']('\x0a['+formatDate(new Date())+']\x20ERROR:\x20Queue\x20'+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console['error'](_0x3de3b1(0xf0)+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console[_0x3de3b1(0xd8)](_0x3de3b1(0xd2)),process['exit'](0x1);else{console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x384861[_0x3de3b1(0xef)]);throw _0x384861;}}}catch(_0x389338){if(!_0x389338[_0x3de3b1(0xef)]['includes'](_0x2ccee5[_0x3de3b1(0xf2)])){console['error']('['+formatDate(new Date())+_0x3de3b1(0xd9),_0x389338['message']);throw _0x389338;}process['exit'](0x1);}}async function closeConnection(_0x4e65be){const _0x27762f=a0_0x2599b5,_0x410a38={'lZQEE':function(_0xf3efcf,_0x5cbdaf){return _0xf3efcf(_0x5cbdaf);}};if(_0x4e65be)try{await _0x4e65be['close'](),console[_0x27762f(0xe5)]('['+_0x410a38[_0x27762f(0xdb)](formatDate,new Date())+_0x27762f(0xe1));}catch(_0x8b76f3){console['error']('['+formatDate(new Date())+_0x27762f(0xf5)+_0x8b76f3[_0x27762f(0xef)]);}}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a0_0x3f8368=a0_0xa1f5;(function(_0x484ee2,_0x3a9b0a){const _0x989a68=a0_0xa1f5,_0x194392=_0x484ee2();while(!![]){try{const _0x36765e=parseInt(_0x989a68(0x13a))/0x1+parseInt(_0x989a68(0x149))/0x2*(parseInt(_0x989a68(0x136))/0x3)+parseInt(_0x989a68(0x13e))/0x4+-parseInt(_0x989a68(0x14b))/0x5+parseInt(_0x989a68(0x13d))/0x6*(-parseInt(_0x989a68(0x157))/0x7)+parseInt(_0x989a68(0x13c))/0x8+-parseInt(_0x989a68(0x154))/0x9;if(_0x36765e===_0x3a9b0a)break;else _0x194392['push'](_0x194392['shift']());}catch(_0x19f9ff){_0x194392['push'](_0x194392['shift']());}}}(a0_0x2c0c,0x9a111));function a0_0x2c0c(){const _0x8da09d=['y29UBMvJDa','mtiZnJa2yxr6u3PQ','z2v0q2XPzw50','BwvZC2fNzq','mtjsr0nJrfa','uKvesvnFrei','CMvKAxnFAw5PDf9LCNjVCG','Aw5MBW','mZCYnJiXufLkvu5o','lI9SB2DNzxi','ndK1mJe2ogTer1vJAG','mJG4veroEKD4','ndi2nZe5mNjzz0zvCG','D2fYBG','A2H4wgy','uKvesvnFueftu1DpuKq','CMvKAxnFy29UBMvJDgvK','z29vueu','BwLU','zw52','y2XPzw50','zM9Yy2veAxnJB25Uzwn0','uMvKAxmGy29UBMvJDgLVBIbLCNjVCJOG','nJy4nJHWEwHnr1e','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','mti4nta5nuHnsKXywa','y2XVC2u','ue9orW','ENb3DgK','CgLUzW','EufmEva','AxndB25Uzwn0zwq','CMvKAxnFzgLZy29UBMvJDgvK','zgLZy29UBMvJDa','ndeWody0nfncruT4yG','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm'];a0_0x2c0c=function(){return _0x8da09d;};return a0_0x2c0c();}function a0_0xa1f5(_0x51e8db,_0x48d0bd){_0x51e8db=_0x51e8db-0x135;const _0x2c0c8a=a0_0x2c0c();let _0xa1f586=_0x2c0c8a[_0x51e8db];if(a0_0xa1f5['xGaRQJ']===undefined){var _0x442ce9=function(_0x326e3c){const _0x288f1a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x336c5='',_0x6fa88e='';for(let _0x224d7f=0x0,_0x58fe07,_0x469cab,_0xc180e9=0x0;_0x469cab=_0x326e3c['charAt'](_0xc180e9++);~_0x469cab&&(_0x58fe07=_0x224d7f%0x4?_0x58fe07*0x40+_0x469cab:_0x469cab,_0x224d7f++%0x4)?_0x336c5+=String['fromCharCode'](0xff&_0x58fe07>>(-0x2*_0x224d7f&0x6)):0x0){_0x469cab=_0x288f1a['indexOf'](_0x469cab);}for(let _0x33b6f8=0x0,_0x13ab2a=_0x336c5['length'];_0x33b6f8<_0x13ab2a;_0x33b6f8++){_0x6fa88e+='%'+('00'+_0x336c5['charCodeAt'](_0x33b6f8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x6fa88e);};a0_0xa1f5['jaYzLK']=_0x442ce9,a0_0xa1f5['MMHUNn']={},a0_0xa1f5['xGaRQJ']=!![];}const _0x775e09=_0x2c0c8a[0x0],_0x50412e=_0x51e8db+_0x775e09,_0x31b942=a0_0xa1f5['MMHUNn'][_0x50412e];return!_0x31b942?(_0xa1f586=a0_0xa1f5['jaYzLK'](_0xa1f586),a0_0xa1f5['MMHUNn'][_0x50412e]=_0xa1f586):_0xa1f586=_0x31b942,_0xa1f586;}const Redis=require('ioredis'),{logger}=require(a0_0x3f8368(0x13b));class RedisClient{constructor(){const _0x302902=a0_0x3f8368;this['client']=null,this[_0x302902(0x151)]=![];}['connect'](){const _0x2ffb7f=a0_0x3f8368,_0x3a2806={'SfQKZ':_0x2ffb7f(0x142),'zpwti':_0x2ffb7f(0x14a),'DyUzm':function(_0x26eb73,_0xa1f7ef,_0x1b2969){return _0x26eb73(_0xa1f7ef,_0x1b2969);},'goUPE':function(_0x1765ec,_0x1102f0,_0x35f242){return _0x1765ec(_0x1102f0,_0x35f242);},'khxXf':'error','yALyP':_0x2ffb7f(0x138),'MiJaa':_0x2ffb7f(0x155)};if(this[_0x2ffb7f(0x146)])return this['client'];try{return this[_0x2ffb7f(0x146)]=new Redis({'host':process[_0x2ffb7f(0x145)]['REDIS_HOST']||'localhost','port':_0x3a2806['DyUzm'](parseInt,process['env']['REDIS_PORT'],0xa)||0x18ec,'password':process[_0x2ffb7f(0x145)][_0x2ffb7f(0x141)]||undefined,'db':_0x3a2806[_0x2ffb7f(0x143)](parseInt,process['env'][_0x2ffb7f(0x137)],0xa)||0x0,'retryStrategy'(_0x1d2d01){const _0x3c0fb6=_0x2ffb7f,_0x4d723b=Math[_0x3c0fb6(0x144)](_0x1d2d01*0x32,0x7d0);return _0x4d723b;}}),this[_0x2ffb7f(0x146)]['on'](_0x2ffb7f(0x156),()=>{const _0x5e6425=_0x2ffb7f;this[_0x5e6425(0x151)]=!![],logger[_0x5e6425(0x139)]({'event':_0x3a2806['SfQKZ']},_0x3a2806[_0x5e6425(0x14e)]);}),this['client']['on'](_0x3a2806[_0x2ffb7f(0x140)],_0x5aea56=>{const _0x1e567c=_0x2ffb7f;this[_0x1e567c(0x151)]=![],logger['error']({'event':'redis_error','error':_0x5aea56[_0x1e567c(0x135)]},_0x1e567c(0x148)+_0x5aea56['message']);}),this[_0x2ffb7f(0x146)]['on'](_0x2ffb7f(0x14c),()=>{const _0x1ca307=_0x2ffb7f;this[_0x1ca307(0x151)]=![],logger[_0x1ca307(0x13f)]({'event':_0x1ca307(0x152)},'Redis\x20connection\x20closed');}),this['client'];}catch(_0x87cff3){logger['error']({'event':_0x3a2806[_0x2ffb7f(0x150)],'error':_0x87cff3[_0x2ffb7f(0x135)]},_0x3a2806['MiJaa']);throw _0x87cff3;}}[a0_0x3f8368(0x158)](){const _0x38921c=a0_0x3f8368;return!this[_0x38921c(0x146)]&&this['connect'](),this['client'];}async['ping'](_0x33c67d=0x1388){const _0x25e432=a0_0x3f8368;try{const _0x1643a1=this[_0x25e432(0x158)](),_0x58ea3e=await Promise['race']([_0x1643a1[_0x25e432(0x14f)](),new Promise((_0x256c1a,_0x14971f)=>setTimeout(()=>_0x14971f(new Error('Redis\x20PING\x20timeout')),_0x33c67d))]);return _0x58ea3e===_0x25e432(0x14d);}catch(_0x30a784){return![];}}async[a0_0x3f8368(0x153)](){const _0x483527=a0_0x3f8368;this['client']&&(await this[_0x483527(0x146)]['quit'](),this[_0x483527(0x146)]=null,this[_0x483527(0x151)]=![]);}[a0_0x3f8368(0x147)](){const _0x5040d1=a0_0x3f8368;this['client']&&(this[_0x5040d1(0x146)]['disconnect'](),this['client']=null,this['isConnected']=![]);}}module['exports']=new RedisClient();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x279715=a0_0x3331;(function(_0x4080da,_0x21cffc){const _0x5451d0=a0_0x3331,_0x59bcac=_0x4080da();while(!![]){try{const _0x239373=parseInt(_0x5451d0(0x189))/0x1+-parseInt(_0x5451d0(0x185))/0x2*(-parseInt(_0x5451d0(0x180))/0x3)+parseInt(_0x5451d0(0x186))/0x4+parseInt(_0x5451d0(0x18a))/0x5+parseInt(_0x5451d0(0x18c))/0x6+parseInt(_0x5451d0(0x190))/0x7+-parseInt(_0x5451d0(0x17f))/0x8*(parseInt(_0x5451d0(0x17b))/0x9);if(_0x239373===_0x21cffc)break;else _0x59bcac['push'](_0x59bcac['shift']());}catch(_0x5480c0){_0x59bcac['push'](_0x59bcac['shift']());}}}(a0_0x456d,0x6825a));function a0_0x456d(){const _0x10b736=['DxbKyxrLsM9I','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','ntq0nJCZr0LYvhro','mZy3mdu3nvvgCNzRwq','CgfYC2u','mteWnZm5mff1AxnMvW','C2v0sM9I','ChvZAa','z2v0qwXSsM9ICW','mJaWmZuZm3Lksg5fqG','z2v0','rMfPBgvKihrVihnLDcbQB2iGAw4GuMvKAxm','BwvZC2fNzq','DhrS','zw52','zxHWB3j0CW','uvrms0i','zxjYB3i','x3bYzwzPEa','CMvKAxnFz2v0x2vYCM9Y','mtC3nZvvqxHztMS','CMvKAxnFz2v0ywXSx2vYCM9Y','A2v5CW','z2v0q2XPzw50','mtaWndbxDuTrrNu','nda0n3DjqMXowG','C3rYAw5NAwz5','CMvKAxnFzgvSzxrLx2vYCM9Y','ChjLzML4','zgvSzxrLsM9I','mteWmMXKqM5MAW','mty0otm2mfrXqKjUyG'];a0_0x456d=function(){return _0x10b736;};return a0_0x456d();}const redisClient=require('./redis-client'),{logger}=require('./logger');function a0_0x3331(_0x2f8af4,_0x592513){_0x2f8af4=_0x2f8af4-0x17a;const _0x456dff=a0_0x456d();let _0x333194=_0x456dff[_0x2f8af4];if(a0_0x3331['XNFylE']===undefined){var _0x251a58=function(_0x49ded2){const _0x31e776='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x452951='',_0x3bf16c='';for(let _0x569fae=0x0,_0xd7f185,_0x2b23d6,_0x24a89a=0x0;_0x2b23d6=_0x49ded2['charAt'](_0x24a89a++);~_0x2b23d6&&(_0xd7f185=_0x569fae%0x4?_0xd7f185*0x40+_0x2b23d6:_0x2b23d6,_0x569fae++%0x4)?_0x452951+=String['fromCharCode'](0xff&_0xd7f185>>(-0x2*_0x569fae&0x6)):0x0){_0x2b23d6=_0x31e776['indexOf'](_0x2b23d6);}for(let _0x2d7102=0x0,_0x29a1ab=_0x452951['length'];_0x2d7102<_0x29a1ab;_0x2d7102++){_0x3bf16c+='%'+('00'+_0x452951['charCodeAt'](_0x2d7102)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3bf16c);};a0_0x3331['bwgDxb']=_0x251a58,a0_0x3331['tjwWxq']={},a0_0x3331['XNFylE']=!![];}const _0x27b618=_0x456dff[0x0],_0x5e8aac=_0x2f8af4+_0x27b618,_0x25524f=a0_0x3331['tjwWxq'][_0x5e8aac];return!_0x25524f?(_0x333194=a0_0x3331['bwgDxb'](_0x333194),a0_0x3331['tjwWxq'][_0x5e8aac]=_0x333194):_0x333194=_0x25524f,_0x333194;}class RedisHelper{constructor(){const _0x1fc212=a0_0x3331;this[_0x1fc212(0x199)]=null,this[_0x1fc212(0x194)]=parseInt(process[_0x1fc212(0x195)]['EXPORT_FILE_EXPIRY'],0xa)||0xe10;}get['prefix'](){const _0x371ead=a0_0x3331;if(!this[_0x371ead(0x199)]){const _0xf3ddb2=process[_0x371ead(0x195)]['RESTFORGE_PROJECT_NAME']||'default';this['_prefix']='restforge:'+_0xf3ddb2+':export:';}return this['_prefix'];}async[a0_0x279715(0x18d)](_0x37d6aa,_0x2c2434){const _0x1c01aa=a0_0x279715,_0x2c7c00={'dLhBE':'redis_set_error','QTLKB':_0x1c01aa(0x192)};try{const _0x5ce3a2=redisClient[_0x1c01aa(0x17e)](),_0x256cdf=''+this[_0x1c01aa(0x183)]+_0x37d6aa;return await _0x5ce3a2['setex'](_0x256cdf,this[_0x1c01aa(0x194)],JSON[_0x1c01aa(0x181)](_0x2c2434)),!![];}catch(_0xcd1506){return logger[_0x1c01aa(0x198)]({'event':_0x2c7c00['dLhBE'],'jobId':_0x37d6aa,'error':_0xcd1506[_0x1c01aa(0x193)]},_0x2c7c00[_0x1c01aa(0x197)]),![];}}async['getJob'](_0xfe2515){const _0x195183=a0_0x279715;try{const _0x31ca95=redisClient[_0x195183(0x17e)](),_0x5ad638=''+this[_0x195183(0x183)]+_0xfe2515,_0x523bf1=await _0x31ca95[_0x195183(0x191)](_0x5ad638);return _0x523bf1?JSON[_0x195183(0x18b)](_0x523bf1):null;}catch(_0x16b389){return logger['error']({'event':_0x195183(0x17a),'jobId':_0xfe2515,'error':_0x16b389[_0x195183(0x193)]},'Failed\x20to\x20get\x20job\x20from\x20Redis'),null;}}async[a0_0x279715(0x187)](_0x4c1888,_0x3ea154){const _0x55d553=a0_0x279715,_0x4e02eb=await this['getJob'](_0x4c1888);if(!_0x4e02eb)return![];const _0x5cc8b4={..._0x4e02eb,..._0x3ea154};return await this[_0x55d553(0x18d)](_0x4c1888,_0x5cc8b4);}async[a0_0x279715(0x184)](_0x5f19e5){const _0x4dba63=a0_0x279715,_0x81429a={'fInwx':_0x4dba63(0x182)};try{const _0x15ecf6=redisClient['getClient'](),_0x33fa03=''+this[_0x4dba63(0x183)]+_0x5f19e5;return await _0x15ecf6['del'](_0x33fa03),!![];}catch(_0x73bdaa){return logger['error']({'event':_0x81429a['fInwx'],'jobId':_0x5f19e5,'error':_0x73bdaa['message']},'Failed\x20to\x20delete\x20job\x20from\x20Redis'),![];}}async[a0_0x279715(0x18f)](){const _0x1e27c9=a0_0x279715,_0x39f2e2={'zsbka':_0x1e27c9(0x17c)};try{const _0x2751f7=redisClient['getClient'](),_0xc7d184=await _0x2751f7[_0x1e27c9(0x17d)](this[_0x1e27c9(0x183)]+'*'),_0x3538bc=[];for(const _0x5b8d8c of _0xc7d184){const _0x451ef2=await _0x2751f7['get'](_0x5b8d8c);_0x451ef2&&_0x3538bc[_0x1e27c9(0x18e)](JSON[_0x1e27c9(0x18b)](_0x451ef2));}return _0x3538bc;}catch(_0x7a7d12){return logger[_0x1e27c9(0x198)]({'event':_0x39f2e2['zsbka'],'error':_0x7a7d12[_0x1e27c9(0x193)]},_0x1e27c9(0x188)),[];}}}module[a0_0x279715(0x196)]=new RedisHelper();
|