@restforgejs/platform 5.3.5 → 5.3.6
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/bin/restforge-designer-linux +0 -0
- package/bin/restforge-designer.exe +0 -0
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/cli/designer.js +3 -0
- package/generators/cli/fast-track.js +7 -7
- 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 +3 -2
- 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_0x4a5439=a0_0x4df1;(function(_0x37ee56,_0x2d4eb8){const _0x5ed142=a0_0x4df1,_0x43908e=_0x37ee56();while(!![]){try{const _0x470b56=-parseInt(_0x5ed142(0xcd))/0x1+parseInt(_0x5ed142(0xe3))/0x2*(parseInt(_0x5ed142(0xb7))/0x3)+-parseInt(_0x5ed142(0xac))/0x4*(-parseInt(_0x5ed142(0xaa))/0x5)+parseInt(_0x5ed142(0xe8))/0x6*(parseInt(_0x5ed142(0xc7))/0x7)+parseInt(_0x5ed142(0xe0))/0x8+parseInt(_0x5ed142(0xab))/0x9*(parseInt(_0x5ed142(0xb9))/0xa)+-parseInt(_0x5ed142(0xd2))/0xb*(parseInt(_0x5ed142(0x98))/0xc);if(_0x470b56===_0x2d4eb8)break;else _0x43908e['push'](_0x43908e['shift']());}catch(_0x7b11e1){_0x43908e['push'](_0x43908e['shift']());}}}(a0_0x17b1,0x534ad));function a0_0x17b1(){const _0x5cf029=['zurmu2m','mtK1nZeYmM14thvvwa','zgvIDwC','yNvPBgrmB2nRs2v5','tg9JAYbuveWGzxH0zw5Kzwq','v1jjveuGBg9JAYbYzwXLyxnLza','BgfZDeLUzgv4t2y','D29YA2vYswq','ChjLzML4','v1jjveuGBg9JAYbYzwPLy3rLzcaTihjLy29YzcbIDxn5','CgLK','uKvbrcbSB2nRigvYCM9Y','C2XLzxa','mJyXnLP3B1rdEq','v1jjveuGBg9JAYbLCNjVCG','zNrVAuO','z2v0','zxHWAxjL','zgvMyxvSDfruta','A01hEgy','tNPTDwi','ALzHyuG','x2rLzMf1BhruveW','Aw5JBhvKzxm','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','De1pv3y','s0TAAw4','Bg9JA19JB25MAwDFAw5PDa','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','zw52','ywnXDwLYzvDYAxrLtg9JAW','mJi0nZGZnunZBhLQEq','mtuYotCWm0fzzgjdzW','nfHQt0LLqG','D3jPDgu','x3n0CMf0zwD5','Bg9JA19LEhrLBMrLza','AxnfBMfIBgvK','te9ds19esvnuuKLcvvrfrf9srvrswq','zgvJCG','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzxHWAxjLiIWGs0vzu1SXxsWGqvjhvLSYxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','D3jPDgvFBg9JA190Aw1LB3v0','CMy6Bg9JAZO','A0ncq3G','mtGYmuDQvKzVDq','D2fYBG','mtbjwLrKDvi','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','CMvHzf9SB2nRx2vYCM9Y','z2v0q2XPzw50','sKXpBLC','u1zNC2q','uKvbrcbSB2nRigfJCxvPCMvK','D3jPDgvFBg9JA193ywL0Aw5N','x3bYzwzPEa','zxH0zw5Ktg9JAW','CMvHzf9SB2nRx3jLBgvHC2vK','Aw5MBW','x3jLDhj5q291BNq','CMvQzwn0','n1jADKHlAq','BwvZC2fNzq','DMnerxy','te9ds19esvnuuKLcvvrfrf9uveW','x2LUAxrdB25MAwC','x3jLDhj5rgvSyxK','mJy0odCYBfbLsM9L','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','qw1SzxK','Cg93','zw5HyMXLza','nty0nZrYwMzcDgi','q2fUBM90ihjLBgvHC2uGBg9JAYaTig5VDcbVD25LCG','CMvHzf9SB2nRx2fJCxvPCMvK','C3vIC3rYAw5N','D3jPDgvFBg9JA19YzwXLyxnLza','x2vUywjSzwq','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','z2v0tg9JA0LUzM8','CMv0CNLezwXHEq','v2fPDgLUzYbMB3iGv1jjveuGBg9JAYb0BYbYzwXLyxnL','x3DVCMTLCKLK','zxzHBa','CMvHza','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','mJC0ndC2mgXwwgHMBG','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','x2vUC3vYzuLUAxrPywXPEMvK','mtqZohnrB1vfAq','zxjYB3i','BM93','t2nYzxO'];a0_0x17b1=function(){return _0x5cf029;};return a0_0x17b1();}function a0_0x4df1(_0x3d384c,_0x1ab866){_0x3d384c=_0x3d384c-0x8e;const _0x17b17e=a0_0x17b1();let _0x4df1ce=_0x17b17e[_0x3d384c];if(a0_0x4df1['UUaDSo']===undefined){var _0x269948=function(_0x1e64d6){const _0x376ea7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3295b7='',_0x2ac974='';for(let _0x2d7818=0x0,_0x3e8b42,_0x514c72,_0x2c92a7=0x0;_0x514c72=_0x1e64d6['charAt'](_0x2c92a7++);~_0x514c72&&(_0x3e8b42=_0x2d7818%0x4?_0x3e8b42*0x40+_0x514c72:_0x514c72,_0x2d7818++%0x4)?_0x3295b7+=String['fromCharCode'](0xff&_0x3e8b42>>(-0x2*_0x2d7818&0x6)):0x0){_0x514c72=_0x376ea7['indexOf'](_0x514c72);}for(let _0x1e2f81=0x0,_0x470118=_0x3295b7['length'];_0x1e2f81<_0x470118;_0x1e2f81++){_0x2ac974+='%'+('00'+_0x3295b7['charCodeAt'](_0x1e2f81)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2ac974);};a0_0x4df1['hiTLDU']=_0x269948,a0_0x4df1['kLUhYA']={},a0_0x4df1['UUaDSo']=!![];}const _0x2a08ea=_0x17b17e[0x0],_0x4036c4=_0x3d384c+_0x2a08ea,_0x30e259=a0_0x4df1['kLUhYA'][_0x4036c4];return!_0x30e259?(_0x4df1ce=a0_0x4df1['hiTLDU'](_0x4df1ce),a0_0x4df1['kLUhYA'][_0x4036c4]=_0x4df1ce):_0x4df1ce=_0x30e259,_0x4df1ce;}const redisClient=require('./redis-client'),{logger}=require('./logger'),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0x28fd18=a0_0x4df1;this['_prefix']=null,this[_0x28fd18(0xd7)]=null,this[_0x28fd18(0xa1)]=null,this['_retryCount']=null,this['_retryDelay']=null,this[_0x28fd18(0xae)]=null,this['_workerId']=null,this['_initialized']=![];}['_initConfig'](){const _0x37237d=a0_0x4df1,_0x490ab6={'Nzmub':'true'};this['_prefix']=_0x37237d(0xb5),this[_0x37237d(0xd7)]=process['env']['LOCK_DISTRIBUTED_ENABLED']===_0x490ab6[_0x37237d(0x9f)],this['_defaultTTL']=parseInt(process['env'][_0x37237d(0xca)],0xa)||0xa,this[_0x37237d(0xc5)]=parseInt(process[_0x37237d(0xa8)][_0x37237d(0xb1)],0xa)||0x3,this[_0x37237d(0xcc)]=parseInt(process[_0x37237d(0xa8)]['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64,this['_strategy']=process[_0x37237d(0xa8)]['LOCK_DISTRIBUTED_STRATEGY']||'retry',this['_workerId']='worker-'+process[_0x37237d(0x95)],this['_initialized']=!![],logger[_0x37237d(0xc4)]({'event':_0x37237d(0xa6),'enabled':this[_0x37237d(0xd7)],'strategy':this['_strategy'],'ttl':this['_defaultTTL'],'retryCount':this[_0x37237d(0xc5)],'retryDelay':this['_retryDelay'],'workerId':this['_workerId']},_0x37237d(0xdf)+this['_enabled']+',\x20strategy:\x20'+this[_0x37237d(0xae)]);}['_ensureInitialized'](){const _0x3c8c86=a0_0x4df1;!this['_initialized']&&this[_0x3c8c86(0xcb)]();}get['prefix'](){const _0x3d34fb=a0_0x4df1;return this[_0x3d34fb(0xe2)](),this[_0x3d34fb(0xc1)];}get['enabled'](){const _0x59413b=a0_0x4df1;return this['_ensureInitialized'](),this[_0x59413b(0xd7)];}get['defaultTTL'](){const _0x261c88=a0_0x4df1;return this[_0x261c88(0xe2)](),this['_defaultTTL'];}get['retryCount'](){const _0x48d63f=a0_0x4df1;return this[_0x48d63f(0xe2)](),this[_0x48d63f(0xc5)];}get[a0_0x4a5439(0xda)](){return this['_ensureInitialized'](),this['_retryDelay'];}get['strategy'](){const _0xdaf72d=a0_0x4a5439;return this[_0xdaf72d(0xe2)](),this['_strategy'];}get[a0_0x4a5439(0x92)](){const _0x171c38=a0_0x4a5439;return this['_ensureInitialized'](),this[_0x171c38(0xdc)];}[a0_0x4a5439(0x8e)](_0x142cf2){const _0x2cb1d7=a0_0x4a5439,{module:_0x4e59e9,endpoint:_0x1aeaf2,lockType:_0x2463da,recordId:_0x2a5489}=_0x142cf2;if(_0x2a5489)return''+this[_0x2cb1d7(0x93)]+_0x4e59e9+':'+_0x1aeaf2+':'+_0x2a5489+':'+_0x2463da;return''+this['prefix']+_0x4e59e9+':'+_0x1aeaf2+':'+_0x2463da;}['generateLockValue'](){const _0x5edc69=a0_0x4a5439;return this['workerId']+':'+uuidv4()+':'+Date[_0x5edc69(0xe5)]();}async['acquireReadLock'](_0x411f25){const _0x579f7a=a0_0x4a5439,_0x380b9e={'SVgsd':_0x579f7a(0xbf),'ftoiJ':_0x579f7a(0xdb),'KKZin':function(_0x4c0170,_0x5d240c){return _0x4c0170*_0x5d240c;},'jVaaH':'READ\x20lock\x20acquire\x20timeout'};if(!this[_0x579f7a(0xd1)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x2ca665=this[_0x579f7a(0x8e)]({..._0x411f25,'lockType':_0x579f7a(0xad)}),_0x2f017e=this[_0x579f7a(0x8e)]({..._0x411f25,'lockType':_0x579f7a(0xde)}),_0x19751e=this['generateLockValue']();try{const _0x12e6ca=redisClient[_0x579f7a(0xbc)]();for(let _0x121981=0x0;_0x121981<this['retryCount'];_0x121981++){const _0xdd7bf6=await _0x12e6ca['get'](_0x2ca665);if(!_0xdd7bf6){await _0x12e6ca['incr'](_0x2f017e),await _0x12e6ca[_0x579f7a(0x9c)](_0x2f017e,this['defaultTTL']);const _0x46134c=_0x2f017e+':'+_0x19751e;return await _0x12e6ca['setex'](_0x46134c,this[_0x579f7a(0x9d)],_0x19751e),logger['debug']({'event':_0x579f7a(0xd4),'key':_0x2f017e,'value':_0x19751e},_0x380b9e[_0x579f7a(0xbe)]),{'success':!![],'lockValue':_0x19751e,'lockKey':_0x46134c};}logger['debug']({'event':'read_lock_waiting','writeKey':_0x2ca665,'attempt':_0x121981},_0x380b9e[_0x579f7a(0x9a)]),await this[_0x579f7a(0x97)](_0x380b9e[_0x579f7a(0xa5)](this[_0x579f7a(0xda)],Math[_0x579f7a(0xd0)](0x2,_0x121981)));}return logger['warn']({'event':'read_lock_timeout','key':_0x2f017e},_0x380b9e[_0x579f7a(0xa0)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0xd7c14f){return logger['error']({'event':_0x579f7a(0xbb),'error':_0xd7c14f['message']},_0x579f7a(0x96)),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x4a5439(0xa9)](_0x7c8fea){const _0x3e798a=a0_0x4a5439,_0x4cf4ed={'bjwEf':'write','ZLCEI':_0x3e798a(0xc6),'phPsx':_0x3e798a(0xa3),'NeRDI':_0x3e798a(0x94),'Amley':function(_0x3abfa6,_0x286aa4){return _0x3abfa6(_0x286aa4);},'kCBCx':function(_0x5bb272,_0x3d9c24){return _0x5bb272===_0x3d9c24;},'kMGxf':'write_lock_acquired','vcDEv':'retry','jcmwT':_0x3e798a(0xd8),'pDGGK':function(_0x44285e,_0x5c0093){return _0x44285e*_0x5c0093;},'Ocrez':_0x3e798a(0x99)};if(!this[_0x3e798a(0xd1)])return{'success':!![],'lockValue':null,'lockKey':null};const _0xf09275=this['buildLockKey']({..._0x7c8fea,'lockType':_0x4cf4ed['bjwEf']}),_0x159049=this[_0x3e798a(0x8e)]({..._0x7c8fea,'lockType':_0x3e798a(0xde)}),_0x1cee7a=this['generateLockValue']();try{const _0x18a1ee=redisClient[_0x3e798a(0xbc)]();if(this['strategy']===_0x3e798a(0xc6)){const _0xee3bec=await _0x18a1ee['set'](_0xf09275,_0x1cee7a,'EX',this[_0x3e798a(0x9d)],'NX');if(_0xee3bec==='OK')return logger[_0x3e798a(0xe9)]({'event':'write_lock_acquired','key':_0xf09275,'value':_0x1cee7a,'strategy':_0x4cf4ed['ZLCEI']},_0x4cf4ed['phPsx']),{'success':!![],'lockValue':_0x1cee7a,'lockKey':_0xf09275};return logger[_0x3e798a(0xe9)]({'event':'write_lock_rejected','key':_0xf09275},_0x4cf4ed['NeRDI']),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x519582=0x0;_0x519582<this['retryCount'];_0x519582++){const [_0x558911,_0x224386]=await Promise['all']([_0x18a1ee[_0x3e798a(0x9b)](_0x159049),_0x18a1ee[_0x3e798a(0x9b)](_0xf09275)]);if(!_0x224386&&(!_0x558911||_0x4cf4ed[_0x3e798a(0xcf)](parseInt,_0x558911)===0x0)){const _0x5ca96f=await _0x18a1ee['set'](_0xf09275,_0x1cee7a,'EX',this[_0x3e798a(0x9d)],'NX');if(_0x4cf4ed[_0x3e798a(0xb6)](_0x5ca96f,'OK'))return logger['debug']({'event':_0x4cf4ed[_0x3e798a(0x9e)],'key':_0xf09275,'value':_0x1cee7a,'strategy':_0x4cf4ed[_0x3e798a(0xc9)]},_0x3e798a(0xa7)),{'success':!![],'lockValue':_0x1cee7a,'lockKey':_0xf09275};}logger[_0x3e798a(0xe9)]({'event':_0x3e798a(0xc0),'writeKey':_0xf09275,'readCount':_0x558911,'attempt':_0x519582},_0x4cf4ed['jcmwT']),await this[_0x3e798a(0x97)](_0x4cf4ed['pDGGK'](this['retryDelay'],Math['pow'](0x2,_0x519582)));}return logger[_0x3e798a(0xb8)]({'event':_0x3e798a(0xb4),'key':_0xf09275},_0x3e798a(0xe1)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x5df93d){return logger['error']({'event':'write_lock_error','error':_0x5df93d[_0x3e798a(0xc8)]},_0x4cf4ed[_0x3e798a(0xe6)]),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x16b111,_0x263918){const _0x853a39=a0_0x4a5439,_0x4dc32b={'QmEsp':function(_0x411905,_0x57a0a5){return _0x411905>_0x57a0a5;},'tMOWv':'READ\x20lock\x20released','DhCjf':function(_0x37fca4,_0x13596d){return _0x37fca4===_0x13596d;},'FCLIt':_0x853a39(0x90),'JLOnW':'lock_release_error'};if(!this[_0x853a39(0xd1)]||!_0x16b111)return!![];try{const _0x5d19a0=redisClient[_0x853a39(0xbc)]();if(_0x16b111[_0x853a39(0xa2)](':read:')){await _0x5d19a0['del'](_0x16b111);const _0x107c32=_0x16b111[_0x853a39(0xd5)](0x0,_0x16b111[_0x853a39(0x91)](':')),_0xb1e9e=await _0x5d19a0[_0x853a39(0x9b)](_0x107c32);return _0xb1e9e&&_0x4dc32b['QmEsp'](parseInt(_0xb1e9e),0x0)&&await _0x5d19a0[_0x853a39(0xb2)](_0x107c32),logger[_0x853a39(0xe9)]({'event':_0x853a39(0xc3),'key':_0x16b111},_0x4dc32b[_0x853a39(0xa4)]),!![];}const _0x2a03fc=_0x853a39(0xba),_0x4220b1=await _0x5d19a0[_0x853a39(0xdd)](_0x2a03fc,0x1,_0x16b111,_0x263918);if(_0x4dc32b['DhCjf'](_0x4220b1,0x1))return logger['debug']({'event':_0x853a39(0xd6),'key':_0x16b111},_0x4dc32b['FCLIt']),!![];return logger['warn']({'event':_0x853a39(0xce),'key':_0x16b111},_0x853a39(0xd3)),![];}catch(_0x3a5e4d){return logger[_0x853a39(0xe4)]({'event':_0x4dc32b[_0x853a39(0xbd)],'key':_0x16b111,'error':_0x3a5e4d['message']},'Lock\x20release\x20error'),![];}}async[a0_0x4a5439(0xc2)](_0x7e0b91,_0xd3148d,_0x3745a2=null){const _0x528a4e=a0_0x4a5439,_0x1044c9={'RHJnF':function(_0x2a9bdc,_0x47994e){return _0x2a9bdc===_0x47994e;},'BDAGS':_0x528a4e(0xaf),'eDLSc':_0x528a4e(0x8f),'UddCx':'lock_extend_error','YSNSH':'Lock\x20extend\x20error'};if(!this['enabled']||!_0x7e0b91)return!![];try{const _0x1060a7=redisClient['getClient'](),_0x3a997e=_0x528a4e(0xb3),_0x5a9286=await _0x1060a7[_0x528a4e(0xdd)](_0x3a997e,0x1,_0x7e0b91,_0xd3148d,_0x3745a2||this[_0x528a4e(0x9d)]);if(_0x1044c9['RHJnF'](_0x5a9286,0x1))return logger['debug']({'event':_0x1044c9['BDAGS'],'key':_0x7e0b91,'ttl':_0x3745a2||this[_0x528a4e(0x9d)]},_0x1044c9[_0x528a4e(0xe7)]),!![];return![];}catch(_0xb663d1){return logger[_0x528a4e(0xe4)]({'event':_0x1044c9['UddCx'],'key':_0x7e0b91,'error':_0xb663d1['message']},_0x1044c9['YSNSH']),![];}}[a0_0x4a5439(0xb0)](){const _0x33f265=a0_0x4a5439;return this[_0x33f265(0xd1)];}[a0_0x4a5439(0x97)](_0x559660){return new Promise(_0x359fab=>setTimeout(_0x359fab,_0x559660));}async[a0_0x4a5439(0xd9)](_0x5a6616){const _0x53117b=a0_0x4a5439,_0x4ecd5b={'RNeAP':'write','JlOaf':function(_0x7149b2,_0x2f8eda){return _0x7149b2||_0x2f8eda;},'BQSEm':function(_0x4fe5e0,_0x29eab4){return _0x4fe5e0(_0x29eab4);}};if(!this[_0x53117b(0xd1)])return{'enabled':![]};try{const _0x5a9c5d=redisClient[_0x53117b(0xbc)](),_0x2fbfb3=this[_0x53117b(0x8e)]({..._0x5a6616,'lockType':_0x4ecd5b['RNeAP']}),_0x2bb243=this['buildLockKey']({..._0x5a6616,'lockType':'read'}),[_0x4fa790,_0x2adcf0]=await Promise['all']([_0x5a9c5d[_0x53117b(0x9b)](_0x2fbfb3),_0x5a9c5d[_0x53117b(0x9b)](_0x2bb243)]);return{'enabled':!![],'writeLock':_0x4ecd5b['JlOaf'](_0x4fa790,null),'readCount':_0x4ecd5b['BQSEm'](parseInt,_0x2adcf0)||0x0,'writeKey':_0x2fbfb3,'readKey':_0x2bb243};}catch(_0x20261a){return{'enabled':!![],'error':_0x20261a['message']};}}}module['exports']=new LockManager();
|
|
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();
|
package/src/utils/logger.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x43a32d=a0_0x3384;(function(_0x1aa0c0,_0x4c52c2){const _0x45e9fa=a0_0x3384,_0x402a12=_0x1aa0c0();while(!![]){try{const _0x3dfd90=parseInt(_0x45e9fa(0x1da))/0x1+parseInt(_0x45e9fa(0x1e2))/0x2*(parseInt(_0x45e9fa(0x207))/0x3)+parseInt(_0x45e9fa(0x194))/0x4*(-parseInt(_0x45e9fa(0x172))/0x5)+-parseInt(_0x45e9fa(0x184))/0x6+-parseInt(_0x45e9fa(0x1d9))/0x7*(-parseInt(_0x45e9fa(0x1aa))/0x8)+parseInt(_0x45e9fa(0x1ba))/0x9+parseInt(_0x45e9fa(0x1a5))/0xa*(-parseInt(_0x45e9fa(0x1e0))/0xb);if(_0x3dfd90===_0x4c52c2)break;else _0x402a12['push'](_0x402a12['shift']());}catch(_0x2f415d){_0x402a12['push'](_0x402a12['shift']());}}}(a0_0x4d1d,0x39db0));const pino=require('pino'),fs=require('fs'),path=require('path');let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':a0_0x43a32d(0x162),'singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env'][a0_0x43a32d(0x1d4)]!=='production',logLevel=process['env'][a0_0x43a32d(0x205)]||a0_0x43a32d(0x1bd);function a0_0x4d1d(){const _0x5b2984=['CMjmDgq','zgjFCxvLCNK','sfvSDei','vfjbtLnbq1rjt05FuK9mtejbq0S','tM9Kzs5QCW','D3jPDgu','ChjVAMvJDa','Auj0B04','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','CgLUBY1WCMv0DhK','suLlC0e','BwfW','te9hx0XfvKvm','w1jfrefdveveoNrVA2vUxq','odi0nti5sgz0BvPe','zgvIDwC','Aw5JBhvKzxm','te9hx1rpx0zjteu','Cg9YDa','reiGuxvLCNK','ms4WlJu','C3rKvgLTzuz1BMn0Aw9UCW','AxnbCNjHEq','uK9mtejbq0S','t1jRDeC','D2fYBG','BMfTzq','zw52AxjVBM1LBNq','qunusvzf','C3rHy2S','yxbPA2v5','EMzvvLG','BwvTB3j5vxnHz2u','vgLOEhe','DgvZDa','CgfZC3DK','u2vYDMvYihn0yxj0Aw5NoIa','Dg9mB3DLCKnHC2u','yMfZzvvYBa','C3fSx3f1zxj5','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','CMvWzwf0','CNrTvfy','zefqzuS','DhjPBq','t0HIBLO','C3rYAw5NAwz5','AvHkC2y','Bg9N','vMLkDeG','CgLK','oI8V','BwTKAxjtEw5J','zMf0ywW','zxjYB3iUBg9N','w1jfrefdvevexq','mJmWwK55q2He','vvbeqvrf','Dhj1zq','yM9KEq','y3jLyxrLv3jPDgvtDhjLyw0','w1jfrefdveveoMHHC2HD','vhjHBNnHy3rPB24G','CNfqufu','v0rxAKC','rgvMyxvSDa','seXWrLG','BgvUz3rO','y29UBMvJDgLVBG','rgzqq0K','DxnLCG','rermx0rst1a','y3jLzgL0y2fYza','A2v5CW','mtGXmZyZmKzcCgLLCW','y3z2','zNnNwui','C3vIC3rYAw5N','CM93C0fMzMvJDgvK','CMvTB3rLqwrKCMvZCW','AgvHBhrOq2HLy2S','CNLJCK4','tK9jz1K','uhjVy2vZCYbxyxjUAw5NoIa','sxPtANu','vfjbtLnbq1rjt05FqKvhsu4','ChjVAMvJDf9SB2fKzwq','yLHJwNi','BNvKqKq','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','nZiYmhbUAgTpsa','B3PTDuW','wwLJAha','sw50zxjUywWGC2vYDMvYigvYCM9Y','Ahr0Cf9LCNjVCG','rfjpua','Bwf0y2G','yMfWqva','sxflDg8','zgv2zwXVCg1LBNq','Bwv0Ag9K','zgf0ywjHC2u','C3rHCNrZv2L0Aa','CMvWBgfJzq','C2vYDMLJzuLUzM8','CgLU','uMLTrMe','mtqXmZaWBfjqvurd','DxjS','Ahr0Cf9Yzxf1zxn0','Bw9KDwXL','Dw5JyxvNAhrfEgnLChrPB24','mZjXz2TTzLy','C3rHDhvZq29Kzq','BwvZC2fNzq','CMvMCMvZAf90B2TLBG','zw5KCg9PBNrFCMvNAxn0zxjLza','AgvHzgvYCW','u1fmx0Xpr19mrvzfta','vu5ltK9xtG','zw52','quL4u2C','zwfLweW','sfruuca','u0vmrunu','AxrQu3u','AxnVvgLTzq','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','ndy1mZaWv3L1DKj2','zxHWB3j0CW','zxjY','Aw5MBW','iokvKqRILzeGifbYB2PLy3qGicaGidOG','zxHPC3rZu3LUyW','Cg9ZDgDYzxnXBa','tK9uiefdveLwrq','icbjBMzVoIaGia','qwXMzKu','vvHuv0G','yK9bDMy','BgXNDvu','z2v0sgvHzgvYCW','te9hx0rjuG','iokvKqRILzeGifbVCNqGicaGicaGidOG','y29UzMLNrMLSzq','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','ig9UihbVCNqG','icdIHPiG','CgfKrw5K','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','DhrIyum','Ahj0Aw1L','y3jLzgvUDgLHBa','C3rHDhvZ','tK9erv9ftLy','AM9PBG','iokvKqRILzeGiefqssblzxKGicaGidOG','DhLWzq','rKfuquW6ia','nJy2nJu5Axbjv1Hn','otG0nZDUs1HpBwq','zxHPDa','z1DoC1u','Dw5Oyw5KBgvKuMvQzwn0Aw9U','yxbPx2TLEq','zxjYB3i','mtqZtNPSChn1','rufQA3i','mM9VzMD4wa','icbizwfSDgG6ia','sunSuKy','Dg9ju09tDhjPBMC','vLj4D3e','ChjPDMf0zv9RzxK','BxPbrvC','EfbWtKm','y29Kzq','C2vYDMvYx3jLywr5','DxnLCI1Hz2vUDa','w09lxsbqCM9Qzwn0igXVywrLzdOG','Dg9Rzw4','CgfZC3DVCMq','C3rKu2vYAwfSAxPLCNm','ChDK','u1fmx0Xpr19ftKfcteve','B2jQzwn0','Dg9vChbLCKnHC2u','uuHnrLy','zgvMyxvSDa','Cgf0Aa','CMvZB2X2zq'];a0_0x4d1d=function(){return _0x5b2984;};return a0_0x4d1d();}function a0_0x3384(_0x562bdb,_0x3edb50){_0x562bdb=_0x562bdb-0x14c;const _0x4d1d76=a0_0x4d1d();let _0x338453=_0x4d1d76[_0x562bdb];if(a0_0x3384['nAILxD']===undefined){var _0x3dc5f8=function(_0x41203b){const _0xec8262='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1f424a='',_0x3bb360='';for(let _0x55c407=0x0,_0x450395,_0x1b88bc,_0x233f02=0x0;_0x1b88bc=_0x41203b['charAt'](_0x233f02++);~_0x1b88bc&&(_0x450395=_0x55c407%0x4?_0x450395*0x40+_0x1b88bc:_0x1b88bc,_0x55c407++%0x4)?_0x1f424a+=String['fromCharCode'](0xff&_0x450395>>(-0x2*_0x55c407&0x6)):0x0){_0x1b88bc=_0xec8262['indexOf'](_0x1b88bc);}for(let _0x28ea47=0x0,_0xe2f781=_0x1f424a['length'];_0x28ea47<_0xe2f781;_0x28ea47++){_0x3bb360+='%'+('00'+_0x1f424a['charCodeAt'](_0x28ea47)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3bb360);};a0_0x3384['MJaiVG']=_0x3dc5f8,a0_0x3384['ADdyjS']={},a0_0x3384['nAILxD']=!![];}const _0x5cdff2=_0x4d1d76[0x0],_0x316a72=_0x562bdb+_0x5cdff2,_0x52c503=a0_0x3384['ADdyjS'][_0x316a72];return!_0x52c503?(_0x338453=a0_0x3384['MJaiVG'](_0x338453),a0_0x3384['ADdyjS'][_0x316a72]=_0x338453):_0x338453=_0x52c503,_0x338453;}let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0x43a32d(0x202),'options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process['env']['APP_VERSION']||a0_0x43a32d(0x14d),'env':process[a0_0x43a32d(0x1b2)][a0_0x43a32d(0x1d4)]||a0_0x43a32d(0x19d)},'timestamp':pino[a0_0x43a32d(0x14e)][a0_0x43a32d(0x1b8)],'redact':{'paths':['req.headers.authorization','req.headers[\x22x-api-key\x22]','password',a0_0x43a32d(0x1ee),'apiKey','DB_PASSWORD','JWT_SECRET'],'censor':a0_0x43a32d(0x171)},'serializers':{'req':_0x30b1d4=>({'id':_0x30b1d4['id'],'method':_0x30b1d4['method'],'url':_0x30b1d4['url'],'path':_0x30b1d4['path'],'remoteAddress':_0x30b1d4['ip']||_0x30b1d4[a0_0x43a32d(0x17e)]?.['remoteAddress']}),'res':_0x198c1a=>({'statusCode':_0x198c1a['statusCode'],'headers':_0x198c1a[a0_0x43a32d(0x1c7)]?.()}),'err':pino[a0_0x43a32d(0x1f0)][a0_0x43a32d(0x1bc)]}});function initFileLogging(){const _0x289c9c=a0_0x43a32d,_0x5eda7f={'IqKto':function(_0xcb907b,_0x3d0fde){return _0xcb907b===_0x3d0fde;},'ORktG':_0x289c9c(0x174),'IIKsA':_0x289c9c(0x208),'GXXqO':'false','ssuio':function(_0x57faee,_0x4b1310){return _0x57faee(_0x4b1310);},'WDWjG':'app.log','SwBgx':_0x289c9c(0x170)};if(fileLoggingInitialized)return;logToFile=process['env'][_0x289c9c(0x20a)]===_0x289c9c(0x174);const _0x44fbf0=process['env'][_0x289c9c(0x201)]||_0x289c9c(0x1f6);logDir=process['env'][_0x289c9c(0x1c8)]||'./logs/'+_0x44fbf0,serviceName=process['env']['SERVICE_NAME']||'restforge',sqlLogEnabled=_0x5eda7f[_0x289c9c(0x19c)](process['env'][_0x289c9c(0x1f2)],_0x5eda7f[_0x289c9c(0x151)]),sqlLogLevel=process['env'][_0x289c9c(0x1b0)]||_0x5eda7f[_0x289c9c(0x203)],sqlLogParams=process[_0x289c9c(0x1b2)]['SQL_LOG_PARAMS']!==_0x5eda7f['GXXqO'],sqlLogSlowThreshold=_0x5eda7f['ssuio'](parseInt,process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x47970a=path[_0x289c9c(0x1f8)](process['cwd'](),logDir);try{!fs[_0x289c9c(0x1bf)](_0x47970a)&&fs[_0x289c9c(0x16e)](_0x47970a,{'recursive':!![]});}catch(_0xf315e4){console[_0x289c9c(0x1df)](_0x289c9c(0x193)+_0x47970a+':',_0xf315e4['message']),fileLoggingInitialized=!![];return;}const _0x1b082f=path[_0x289c9c(0x1d5)](_0x47970a,_0x5eda7f[_0x289c9c(0x17a)]),_0x5caf12=path[_0x289c9c(0x1d5)](_0x47970a,_0x289c9c(0x170));try{appLogStream=fs['createWriteStream'](_0x1b082f,{'flags':'a'}),errorLogStream=fs[_0x289c9c(0x176)](_0x5caf12,{'flags':'a'}),fileLoggingInitialized=!![];const _0x2570d1={'event':'file_logging_enabled','logDir':_0x47970a,'files':['app.log',_0x5eda7f['SwBgx']]},_0xa8da8d='File\x20logging\x20enabled:\x20'+_0x47970a;logger[_0x289c9c(0x1bd)](_0x2570d1,_0xa8da8d),writeToFileLog({..._0x2570d1,'level':_0x289c9c(0x1bd),'msg':_0xa8da8d,'time':new Date()[_0x289c9c(0x1e5)]()},_0x289c9c(0x1bd));}catch(_0x30031e){console[_0x289c9c(0x1df)](_0x289c9c(0x1cb),_0x30031e['message']),fileLoggingInitialized=!![];}}function writeToFileLog(_0x412894,_0x414b8a){const _0x569e9b=a0_0x43a32d,_0x279b53={'FFmDf':function(_0x4ee97a,_0x103bfb){return _0x4ee97a===_0x103bfb;},'NOIgY':'error','gPIym':_0x569e9b(0x16f)};if(!logToFile||!appLogStream)return;const _0x56fb13={'service':serviceName,..._0x412894},_0x3190e7=JSON[_0x569e9b(0x168)](_0x56fb13)+'\x0a';appLogStream[_0x569e9b(0x1fe)](_0x3190e7),(_0x279b53['FFmDf'](_0x414b8a,_0x279b53[_0x569e9b(0x18c)])||_0x279b53['FFmDf'](_0x414b8a,_0x279b53['gPIym']))&&(errorLogStream&&errorLogStream[_0x569e9b(0x1fe)](_0x3190e7));}const createRequestLogger=(_0x2a2950={})=>{return logger['child'](_0x2a2950);},logServerStart=_0x1af6b2=>{const _0xd8a83b=a0_0x43a32d,_0x2a783b={'zZEyg':function(_0x1204db,_0x4798a2){return _0x1204db-_0x4798a2;},'IClRF':function(_0x3734a8,_0xb4a105){return _0x3734a8/_0xb4a105;},'UXTWH':_0xd8a83b(0x1fd),'LQyiK':'N/A','ILsSd':function(_0x31fc89,_0x611c24){return _0x31fc89(_0x611c24);},'rbLtd':_0xd8a83b(0x155),'EAjkr':_0xd8a83b(0x1c1),'tJTfc':'server_starting','zfUVX':function(_0xd6c2d4,_0x294bd5,_0x1ce92c){return _0xd6c2d4(_0x294bd5,_0x1ce92c);},'IiGLC':'info'},_0x5e450f='RESTFORGE\x20RUNTIME\x20SERVER',_0x737598=Math['max'](0x0,_0x2a783b['zZEyg'](0x37,_0x5e450f['length'])),_0x5ceaba=Math['floor'](_0x2a783b[_0xd8a83b(0x1e4)](_0x737598,0x2)),_0xd650c6=_0x737598-_0x5ceaba,_0xadac5='║'+'\x20'[_0xd8a83b(0x163)](_0x5ceaba)+_0x5e450f+'\x20'[_0xd8a83b(0x163)](_0xd650c6)+'║',_0x20db8b=_0xd8a83b(0x161)+_0xadac5+_0xd8a83b(0x1b9)+(_0x1af6b2[_0xd8a83b(0x154)]||_0x2a783b[_0xd8a83b(0x1c4)])['padEnd'](0x26)+_0xd8a83b(0x1be)+(_0x1af6b2[_0xd8a83b(0x1ff)]||_0x2a783b['LQyiK'])['padEnd'](0x26)+_0xd8a83b(0x1c9)+_0x2a783b['ILsSd'](String,_0x1af6b2[_0xd8a83b(0x20b)]||0xbb8)['padEnd'](0x26)+'\x20║\x0a║\x20\x20Config\x20\x20\x20\x20\x20\x20:\x20'+(_0x1af6b2[_0xd8a83b(0x1ca)]||_0xd8a83b(0x17b))['padEnd'](0x26)+_0xd8a83b(0x1d6)+(_0x1af6b2['apiKey']?_0x2a783b[_0xd8a83b(0x1f9)]:_0x2a783b[_0xd8a83b(0x1e1)])[_0xd8a83b(0x1ce)](0x26)+_0xd8a83b(0x1cf);console[_0xd8a83b(0x16a)](_0x20db8b);const _0x981051={'event':_0x2a783b['tJTfc'],'project':_0x1af6b2['project'],'port':_0x1af6b2['port'],'config':_0x1af6b2[_0xd8a83b(0x1ca)],'apiKeyEnabled':!!_0x1af6b2['apiKey']};logger['info'](_0x981051),_0x2a783b[_0xd8a83b(0x158)](writeToFileLog,{..._0x981051,'level':_0x2a783b['IiGLC'],'msg':_0xd8a83b(0x15d)+_0x1af6b2[_0xd8a83b(0x1ff)]+_0xd8a83b(0x1cc)+_0x1af6b2['port'],'time':new Date()['toISOString']()},'info');},logServerReady=_0x4a8eeb=>{const _0x9c094b=a0_0x43a32d,_0xbb3f18={'Zfwvk':_0x9c094b(0x1eb),'KZRtw':function(_0x571333,_0x438e6c,_0x38abd1){return _0x571333(_0x438e6c,_0x38abd1);},'fsgYB':'info'},_0x22e48d={'event':_0xbb3f18['Zfwvk'],'port':_0x4a8eeb[_0x9c094b(0x20b)],'module':_0x4a8eeb[_0x9c094b(0x1a8)],'healthCheck':_0x4a8eeb['healthCheck'],'serviceInfo':_0x4a8eeb['serviceInfo'],'baseUrl':_0x4a8eeb[_0x9c094b(0x15f)]},_0x42db0a='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x4a8eeb[_0x9c094b(0x20b)];logger['info'](_0x22e48d,_0x42db0a),_0xbb3f18['KZRtw'](writeToFileLog,{..._0x22e48d,'level':_0xbb3f18['fsgYB'],'msg':_0x42db0a,'time':new Date()[_0x9c094b(0x1e5)]()},_0xbb3f18[_0x9c094b(0x186)]),_0x4a8eeb[_0x9c094b(0x18a)]&&logger[_0x9c094b(0x1bd)](_0x9c094b(0x1e3)+_0x4a8eeb[_0x9c094b(0x18a)]),_0x4a8eeb[_0x9c094b(0x1a2)]&&logger['info'](_0x9c094b(0x1c2)+_0x4a8eeb['serviceInfo']),_0x4a8eeb['baseUrl']&&logger['info']('\x20\x20URL:\x20\x20\x20\x20'+_0x4a8eeb[_0x9c094b(0x15f)]);},logProjectLoaded=(_0x1605ed,_0x42494e)=>{const _0x788a1c=a0_0x43a32d,_0x25e3ec={'PYSnK':_0x788a1c(0x190)},_0x2f2762={'event':_0x25e3ec['PYSnK'],'project':_0x1605ed,'path':_0x42494e},_0x33c9bb=_0x788a1c(0x1ed)+_0x1605ed;logger['info'](_0x2f2762,_0x33c9bb),writeToFileLog({..._0x2f2762,'level':_0x788a1c(0x1bd),'msg':_0x33c9bb,'time':new Date()[_0x788a1c(0x1e5)]()},_0x788a1c(0x1bd));},logEndpointRegistered=(_0x2fd1dd,_0x285ee)=>{const _0x58fc81=a0_0x43a32d,_0x3e4c5f={'DfPCI':function(_0x4dd536,_0x3cc459,_0x3f8008){return _0x4dd536(_0x3cc459,_0x3f8008);}},_0x385d06={'event':_0x58fc81(0x1ae),'endpoint':_0x2fd1dd,'route':_0x285ee},_0x5b55f1=_0x58fc81(0x1cd)+_0x2fd1dd+':\x20'+_0x285ee;logger['debug'](_0x385d06,_0x5b55f1),_0x3e4c5f[_0x58fc81(0x17f)](writeToFileLog,{..._0x385d06,'level':'debug','msg':_0x5b55f1,'time':new Date()[_0x58fc81(0x1e5)]()},'debug');},logDatabaseConfig=_0x2f94cc=>{const _0x5ca455=a0_0x43a32d,_0x35e238={'WBhrc':function(_0x93db57,_0x1c73d9,_0x10f23c){return _0x93db57(_0x1c73d9,_0x10f23c);},'bXcZr':'debug'},_0xefffc1={'event':'database_config','host':_0x2f94cc['host'],'port':_0x2f94cc['port'],'database':_0x2f94cc[_0x5ca455(0x19f)],'type':_0x2f94cc[_0x5ca455(0x1d7)],'user':_0x2f94cc[_0x5ca455(0x180)]},_0x51a74d='Database:\x20'+_0x2f94cc['type']+_0x5ca455(0x16d)+_0x2f94cc['host']+':'+_0x2f94cc[_0x5ca455(0x20b)]+'/'+_0x2f94cc['database'];logger['debug'](_0xefffc1,_0x51a74d),_0x35e238['WBhrc'](writeToFileLog,{..._0xefffc1,'level':_0x35e238[_0x5ca455(0x191)],'msg':_0x51a74d,'time':new Date()[_0x5ca455(0x1e5)]()},_0x5ca455(0x208));},logRequest=(_0x4f29ed,_0x32f952,_0x374915)=>{const _0x5f4343=a0_0x43a32d,_0x16806d={'amUQJ':'error','aVmJe':function(_0xbe91ec,_0x52602f,_0x53f5ed){return _0xbe91ec(_0x52602f,_0x53f5ed);}},_0x7d4425={'event':_0x5f4343(0x1a7),'method':_0x4f29ed['method'],'path':_0x4f29ed[_0x5f4343(0x1f7)],'statusCode':_0x32f952[_0x5f4343(0x1ab)],'durationMs':_0x374915,'ip':_0x4f29ed['ip']},_0x17e36a=_0x4f29ed[_0x5f4343(0x19e)]+'\x20'+_0x4f29ed['path']+'\x20-\x20'+_0x32f952['statusCode']+'\x20('+_0x374915+'ms)';let _0x45da37='info';if(_0x32f952[_0x5f4343(0x1ab)]>=0x1f4)_0x45da37=_0x16806d['amUQJ'],logger['error'](_0x7d4425,_0x17e36a);else _0x32f952[_0x5f4343(0x1ab)]>=0x190?(_0x45da37=_0x5f4343(0x152),logger[_0x5f4343(0x152)](_0x7d4425,_0x17e36a)):logger['info'](_0x7d4425,_0x17e36a);_0x16806d['aVmJe'](writeToFileLog,{..._0x7d4425,'level':_0x45da37,'msg':_0x17e36a,'time':new Date()['toISOString']()},_0x45da37);},SENSITIVE_PARAM_PATTERNS=[a0_0x43a32d(0x1ef),a0_0x43a32d(0x15c),'pwd',a0_0x43a32d(0x1ee),'access_token',a0_0x43a32d(0x1ad),'secret','api_secret','apikey',a0_0x43a32d(0x1de),a0_0x43a32d(0x1d2),'credentials','pin','otp',a0_0x43a32d(0x1e7),'privatekey'],redactSensitiveParams=(_0x9f24c1,_0x2b2d14)=>{const _0x4a1024=a0_0x43a32d,_0x51996a={'TUgJu':_0x4a1024(0x171),'IzSju':function(_0x56dc3b,_0x2d3a85){return _0x56dc3b===_0x2d3a85;},'Tihxq':function(_0x115b4d,_0x1fd35d){return _0x115b4d>_0x1fd35d;}};if(!_0x9f24c1||_0x9f24c1['length']===0x0)return _0x9f24c1;const _0x203584=_0x2b2d14[_0x4a1024(0x15e)](),_0x36fda1=_0x203584['match'](/\(([^)]+)\)\s*values/i);let _0x18a52d=[];_0x36fda1&&(_0x18a52d=_0x36fda1[0x1]['split'](',')['map'](_0x722b8c=>_0x722b8c[_0x4a1024(0x166)]()['toLowerCase']()));const _0x437ba5=_0x203584[_0x4a1024(0x19a)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x437ba5){const _0x5efd7d=_0x437ba5[0x1],_0x35705d=_0x5efd7d['match'](/(\w+)\s*=/g);_0x35705d&&(_0x18a52d=_0x35705d[_0x4a1024(0x204)](_0x16b353=>_0x16b353[_0x4a1024(0x1a1)](/\s*=/,'')[_0x4a1024(0x166)]()['toLowerCase']()));}return _0x9f24c1[_0x4a1024(0x204)]((_0x49d742,_0x215019)=>{const _0x237795=_0x4a1024;if(_0x18a52d[_0x215019]){const _0x34f37e=_0x18a52d[_0x215019],_0x592bce=SENSITIVE_PARAM_PATTERNS['some'](_0x4441a5=>_0x34f37e[_0x237795(0x209)](_0x4441a5));if(_0x592bce)return _0x51996a['TUgJu'];}if(_0x51996a[_0x237795(0x18e)](typeof _0x49d742,'string')&&_0x51996a[_0x237795(0x15a)](_0x49d742[_0x237795(0x17d)],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x49d742)&&_0x49d742[_0x237795(0x209)]('.'))return _0x237795(0x206);if(/^[a-fA-F0-9]{32,}$/[_0x237795(0x15b)](_0x49d742))return _0x237795(0x177);}return _0x49d742;});},parseQueryMetadata=_0x30636b=>{const _0x75f1ff=a0_0x43a32d,_0x2f21f={'RimFa':_0x75f1ff(0x1b1),'fwHJG':_0x75f1ff(0x1b6),'ZCSAj':'INSERT','bOAvf':'UPDATE','ttbaC':'DELETE','eaeXL':'BEGIN','CRnSB':_0x75f1ff(0x18f),'OHbnZ':'TRANSACTION_COMMIT','TGhar':_0x75f1ff(0x1fc),'lhjaA':'DDL_ALTER','Yichp':_0x75f1ff(0x181)},_0x556c41=_0x30636b[_0x75f1ff(0x166)](),_0x549344=_0x556c41[_0x75f1ff(0x1f4)]();let _0x200200=_0x2f21f[_0x75f1ff(0x1a4)],_0x5bf87b=null;if(_0x549344['startsWith']('SELECT')){_0x200200=_0x2f21f['fwHJG'];const _0x3c3c2c=_0x556c41['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5bf87b=_0x3c3c2c?_0x3c3c2c[0x1]:null;}else{if(_0x549344[_0x75f1ff(0x1a0)](_0x2f21f['ZCSAj'])){_0x200200='INSERT';const _0x504e41=_0x556c41['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5bf87b=_0x504e41?_0x504e41[0x1]:null;}else{if(_0x549344['startsWith'](_0x75f1ff(0x173))){_0x200200=_0x2f21f[_0x75f1ff(0x1c5)];const _0x45193e=_0x556c41['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5bf87b=_0x45193e?_0x45193e[0x1]:null;}else{if(_0x549344['startsWith'](_0x2f21f[_0x75f1ff(0x1d0)])){_0x200200='DELETE';const _0x549f32=_0x556c41['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5bf87b=_0x549f32?_0x549f32[0x1]:null;}else{if(_0x549344['startsWith'](_0x2f21f[_0x75f1ff(0x1b4)])||_0x549344[_0x75f1ff(0x1a0)]('START\x20TRANSACTION'))_0x200200=_0x2f21f['CRnSB'];else{if(_0x549344['startsWith']('COMMIT'))_0x200200=_0x2f21f[_0x75f1ff(0x167)];else{if(_0x549344[_0x75f1ff(0x1a0)](_0x75f1ff(0x150)))_0x200200=_0x2f21f['TGhar'];else{if(_0x549344[_0x75f1ff(0x1a0)]('CREATE'))_0x200200='DDL_CREATE';else{if(_0x549344['startsWith']('ALTER'))_0x200200=_0x2f21f['lhjaA'];else _0x549344['startsWith'](_0x75f1ff(0x199))&&(_0x200200=_0x2f21f[_0x75f1ff(0x196)]);}}}}}}}}return{'type':_0x200200,'table':_0x5bf87b};},startQueryTimer=()=>{const _0x4a18c7={'ViJtH':function(_0x58e0c2,_0x1ee256){return _0x58e0c2*_0x1ee256;},'TTaEh':function(_0x118156,_0xbd433){return _0x118156/_0xbd433;}},_0x5a3009=process['hrtime']();return()=>{const _0x1a346d=a0_0x3384,[_0x2cfaf1,_0x4e1c11]=process[_0x1a346d(0x1d1)](_0x5a3009);return parseFloat((_0x4a18c7[_0x1a346d(0x16b)](_0x2cfaf1,0x3e8)+_0x4a18c7['TTaEh'](_0x4e1c11,0xf4240))['toFixed'](0x2));};},logQuery=(_0x409561,_0x52c180=[],_0x44e32b={})=>{const _0x3774a7=a0_0x43a32d,_0x4d19c2={'FVtBg':_0x3774a7(0x14c),'SQaJU':function(_0x4e629f,_0x48a3b8){return _0x4e629f(_0x48a3b8);},'mzAEW':function(_0x1346c8,_0x2595a2){return _0x1346c8>_0x2595a2;},'wRlLm':function(_0x4401dd,_0x5c55bd,_0x333a42){return _0x4401dd(_0x5c55bd,_0x333a42);},'iXJsf':function(_0x1eb4e9,_0x5d9433){return _0x1eb4e9||_0x5d9433;},'VRxwq':function(_0x35e43a,_0x3a8ae0){return _0x35e43a!==_0x3a8ae0;},'rqPPU':'debug','glJNc':'\x20[SLOW]','hbJha':'warn'};if(!sqlLogEnabled){logger['debug']({'event':_0x3774a7(0x1fa),'query':_0x409561[_0x3774a7(0x187)](0x0,0xc8),'paramCount':_0x52c180[_0x3774a7(0x17d)]},_0x4d19c2['FVtBg']);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x3774a7(0x1c0)}=_0x44e32b,{type:_0x105c64,table:_0x2e3733}=_0x4d19c2['SQaJU'](parseQueryMetadata,_0x409561),_0x3c832c={'event':_0x3774a7(0x160),'queryType':_0x105c64,'table':_0x2e3733,'query':_0x409561,'paramCount':_0x52c180['length'],'dbType':dbType};sqlLogParams&&_0x4d19c2[_0x3774a7(0x1e8)](_0x52c180['length'],0x0)&&(_0x3c832c['params']=_0x4d19c2['wRlLm'](redactSensitiveParams,_0x52c180,_0x409561));duration!==null&&(_0x3c832c['durationMs']=duration,_0x3c832c['isSlow']=duration>sqlLogSlowThreshold);rowsAffected!==null&&(_0x3c832c[_0x3774a7(0x188)]=rowsAffected);const _0x172fda=_0x4d19c2[_0x3774a7(0x169)](_0x2e3733,'unknown');let _0x35ff81='['+_0x105c64+']\x20'+_0x172fda;_0x4d19c2[_0x3774a7(0x1e6)](duration,null)&&(_0x35ff81+='\x20('+duration+'ms)');const _0x266ef7=duration!==null&&_0x4d19c2['mzAEW'](duration,sqlLogSlowThreshold);let _0x10b003=_0x4d19c2[_0x3774a7(0x179)];if(_0x266ef7)_0x35ff81+=_0x4d19c2['glJNc'],_0x10b003=_0x4d19c2['hbJha'],logger['warn'](_0x3c832c,_0x35ff81);else sqlLogLevel==='info'?(_0x10b003='info',logger[_0x3774a7(0x1bd)](_0x3c832c,_0x35ff81)):logger['debug'](_0x3c832c,_0x35ff81);_0x4d19c2['wRlLm'](writeToFileLog,{..._0x3c832c,'level':_0x10b003,'msg':_0x35ff81,'time':new Date()['toISOString']()},_0x10b003);},logTransaction=(_0x2404fd,_0x41d18b)=>{const _0x46eafc=a0_0x43a32d,_0x3960cc={'qXwOz':'db_transaction','dVeOf':function(_0x4f2c3c,_0x15c078,_0x59eb53){return _0x4f2c3c(_0x15c078,_0x59eb53);},'iBtoN':'debug'},_0x4d2660={'event':_0x3960cc['qXwOz'],'status':_0x2404fd,'queryCount':_0x41d18b},_0x38e245=_0x46eafc(0x178)+_0x2404fd;logger[_0x46eafc(0x208)](_0x4d2660,_0x38e245),_0x3960cc['dVeOf'](writeToFileLog,{..._0x4d2660,'level':_0x3960cc[_0x46eafc(0x200)],'msg':_0x38e245,'time':new Date()[_0x46eafc(0x1e5)]()},_0x3960cc[_0x46eafc(0x200)]);},redactObject=_0x3fb9a1=>{const _0x58e666=a0_0x43a32d,_0x54d8eb={'HLpFX':function(_0x38e14a,_0x3d30e4){return _0x38e14a!==_0x3d30e4;},'xPpNC':_0x58e666(0x1ef),'asNZZ':'secret','gWNsU':_0x58e666(0x157),'wnHTR':_0x58e666(0x182),'itjSu':'ssn','XQXjE':_0x58e666(0x1a3),'XChwF':'private_key','rycrN':'privatekey','jeCFg':'access_token','KoeAX':'[REDACTED]','QHMFV':function(_0x5ae7fa,_0x1cbfb7){return _0x5ae7fa===_0x1cbfb7;},'sItkx':_0x58e666(0x1f3),'AIxSg':function(_0x13a3d6,_0x3a0cc9){return _0x13a3d6(_0x3a0cc9);}};if(!_0x3fb9a1||_0x54d8eb[_0x58e666(0x17c)](typeof _0x3fb9a1,'object'))return _0x3fb9a1;const _0x5c5b3a=[_0x54d8eb[_0x58e666(0x1e9)],'passwd',_0x58e666(0x1f1),_0x58e666(0x1ee),_0x54d8eb['asNZZ'],_0x54d8eb[_0x58e666(0x1dc)],_0x58e666(0x1de),'authorization',_0x54d8eb['wnHTR'],'credit_card',_0x58e666(0x185),_0x54d8eb[_0x58e666(0x1b7)],_0x54d8eb['XQXjE'],_0x54d8eb['XChwF'],_0x54d8eb[_0x58e666(0x18b)],_0x58e666(0x1ad),_0x54d8eb['jeCFg']],_0x6a5feb=Array[_0x58e666(0x14f)](_0x3fb9a1)?[..._0x3fb9a1]:{..._0x3fb9a1};for(const _0x53f9f5 of Object[_0x58e666(0x183)](_0x6a5feb)){const _0x15c6b4=_0x53f9f5['toLowerCase']();if(_0x5c5b3a['some'](_0x395ecf=>_0x15c6b4['includes'](_0x395ecf)))_0x6a5feb[_0x53f9f5]=_0x54d8eb['KoeAX'];else _0x54d8eb[_0x58e666(0x1f5)](typeof _0x6a5feb[_0x53f9f5],_0x54d8eb['sItkx'])&&_0x54d8eb[_0x58e666(0x17c)](_0x6a5feb[_0x53f9f5],null)&&(_0x6a5feb[_0x53f9f5]=_0x54d8eb[_0x58e666(0x1b3)](redactObject,_0x6a5feb[_0x53f9f5]));}return _0x6a5feb;},logError=(_0x1dd343,_0x1b3b20={},_0x985e14=null)=>{const _0x3d1546=a0_0x43a32d,_0x57cb96={'JFAsd':_0x3d1546(0x1df),'KLLxX':function(_0x384875,_0x2d9651,_0x9b8cf5){return _0x384875(_0x2d9651,_0x9b8cf5);}},_0x48da70={'event':_0x57cb96['JFAsd'],'errorName':_0x1dd343['name']||'Error','errorMessage':_0x1dd343['message'],'errorCode':_0x1dd343[_0x3d1546(0x1ea)]||null,'stack':_0x1dd343[_0x3d1546(0x156)],..._0x1b3b20},_0x33137f=_0x985e14||'Error:\x20'+_0x1dd343[_0x3d1546(0x1ac)];logger[_0x3d1546(0x1df)](_0x48da70,_0x33137f),_0x57cb96['KLLxX'](writeToFileLog,{..._0x48da70,'level':_0x57cb96['JFAsd'],'msg':_0x33137f,'time':new Date()[_0x3d1546(0x1e5)]()},_0x57cb96['JFAsd']);},logFatalError=(_0x591371,_0x3c3242={},_0x28de2e=null)=>{const _0x2f209e=a0_0x43a32d,_0x2b02b1={'RgvBE':'fatal_error','CaYks':'Error','PHrsA':function(_0x5daeb,_0x108c0f,_0x2016c4){return _0x5daeb(_0x108c0f,_0x2016c4);}},_0x160a34={'event':_0x2b02b1['RgvBE'],'errorName':_0x591371[_0x2f209e(0x153)]||_0x2b02b1['CaYks'],'errorMessage':_0x591371[_0x2f209e(0x1ac)],'errorCode':_0x591371['code']||null,'stack':_0x591371[_0x2f209e(0x156)],'severity':'CRITICAL',..._0x3c3242},_0x3f0b85=_0x28de2e||_0x2f209e(0x1d8)+_0x591371[_0x2f209e(0x1ac)];logger['fatal'](_0x160a34,_0x3f0b85),_0x2b02b1['PHrsA'](writeToFileLog,{..._0x160a34,'level':_0x2f209e(0x16f),'msg':_0x3f0b85,'time':new Date()['toISOString']()},_0x2f209e(0x1df));},logHttpError=(_0x503d62,_0x1c6de9,_0x12d52d={})=>{const _0x32c7e7=a0_0x43a32d,_0x165b9f={'ozmuL':_0x32c7e7(0x198),'xwehq':_0x32c7e7(0x1ec),'BIWIF':'x-request-id','nudBD':function(_0x2df437,_0xa6bc37){return _0x2df437>=_0xa6bc37;},'jrlGS':_0x32c7e7(0x152),'HOnjN':_0x32c7e7(0x1df)},_0x2a847c={'event':_0x165b9f[_0x32c7e7(0x195)],'errorName':_0x503d62['name']||'Error','errorMessage':_0x503d62['message'],'errorCode':_0x503d62[_0x32c7e7(0x1ea)]||_0x503d62[_0x32c7e7(0x1ab)]||0x1f4,'stack':_0x503d62['stack'],'method':_0x1c6de9?.['method'],'url':_0x1c6de9?.[_0x32c7e7(0x1a6)]||_0x1c6de9?.['originalUrl'],'path':_0x1c6de9?.[_0x32c7e7(0x1f7)],'ip':_0x1c6de9?.['ip']||_0x1c6de9?.[_0x32c7e7(0x17e)]?.[_0x32c7e7(0x189)],'userAgent':_0x1c6de9?.['get']?.(_0x165b9f['xwehq']),'requestId':_0x1c6de9?.['id']||_0x1c6de9?.[_0x32c7e7(0x1af)]?.[_0x165b9f['BIWIF']],'body':_0x1c6de9?.[_0x32c7e7(0x175)]?redactObject(_0x1c6de9[_0x32c7e7(0x175)]):undefined,'query':_0x1c6de9?.['query'],..._0x12d52d},_0x30272e=_0x503d62[_0x32c7e7(0x1ab)]||_0x503d62['status']||0x1f4,_0x50de6a=_0x32c7e7(0x1b5)+_0x30272e+':\x20'+_0x503d62['message'];_0x165b9f[_0x32c7e7(0x192)](_0x30272e,0x1f4)?logger['error'](_0x2a847c,_0x50de6a):logger[_0x32c7e7(0x152)](_0x2a847c,_0x50de6a),writeToFileLog({..._0x2a847c,'level':_0x30272e>=0x1f4?_0x32c7e7(0x1df):_0x165b9f['jrlGS'],'msg':_0x50de6a,'time':new Date()['toISOString']()},_0x30272e>=0x1f4?_0x165b9f['HOnjN']:_0x32c7e7(0x152));},logUncaughtError=(_0x3c7cbb,_0x1f5315)=>{const _0x4f477b=a0_0x43a32d,_0x40558a={'fKttp':'Error','rtmTV':function(_0x393234,_0x2502d5){return _0x393234(_0x2502d5);}},_0x3293cb={'event':_0x3c7cbb,'errorName':_0x1f5315?.[_0x4f477b(0x153)]||_0x40558a['fKttp'],'errorMessage':_0x1f5315?.['message']||_0x40558a[_0x4f477b(0x164)](String,_0x1f5315),'errorCode':_0x1f5315?.['code']||null,'stack':_0x1f5315?.['stack'],'severity':'CRITICAL','processId':process[_0x4f477b(0x16c)],'memoryUsage':process[_0x4f477b(0x159)](),'uptime':process['uptime']()},_0x41694d='['+_0x3c7cbb['toUpperCase']()+']\x20'+(_0x1f5315?.['message']||_0x1f5315);logger[_0x4f477b(0x16f)](_0x3293cb,_0x41694d),writeToFileLog({..._0x3293cb,'level':'fatal','msg':_0x41694d,'time':new Date()[_0x4f477b(0x1e5)]()},_0x4f477b(0x1df));},setupGlobalErrorHandlers=()=>{const _0x12d715=a0_0x43a32d,_0x3f5bef={'YWHnr':function(_0x3de7a7,_0x4a7fbb,_0x21befb){return _0x3de7a7(_0x4a7fbb,_0x21befb);},'dAPeK':function(_0xbcc6d3,_0x19d912){return _0xbcc6d3(_0x19d912);},'HUltB':function(_0x496f29,_0xda9b30,_0x5a8068){return _0x496f29(_0xda9b30,_0x5a8068);},'bapAP':_0x12d715(0x1dd),'JDxww':'global_error_handlers_setup','llguU':'Global\x20error\x20handlers\x20initialized','AlffE':_0x12d715(0x1bd)};process['on'](_0x12d715(0x1a9),_0x1c4f10=>{logUncaughtError('uncaughtException',_0x1c4f10),_0x3f5bef['YWHnr'](setTimeout,()=>{const _0x52e5a3=a0_0x3384;process[_0x52e5a3(0x1db)](0x1);},0x3e8);}),process['on'](_0x12d715(0x1dd),(_0x28a4f3,_0x813316)=>{const _0x4b313f=_0x12d715,_0x247adc=_0x28a4f3 instanceof Error?_0x28a4f3:new Error(_0x3f5bef[_0x4b313f(0x165)](String,_0x28a4f3));_0x3f5bef['HUltB'](logUncaughtError,_0x3f5bef[_0x4b313f(0x19b)],_0x247adc);}),process['on']('warning',_0x2db958=>{const _0x505576=_0x12d715;logger['warn']({'event':'process_warning','name':_0x2db958['name'],'message':_0x2db958[_0x505576(0x1ac)],'stack':_0x2db958[_0x505576(0x156)]},_0x505576(0x18d)+_0x2db958['message']);});const _0x26df4d={'event':_0x3f5bef['JDxww']},_0x5a96d9=_0x3f5bef[_0x12d715(0x1c6)];logger[_0x12d715(0x1bd)](_0x26df4d,_0x5a96d9),_0x3f5bef[_0x12d715(0x1fb)](writeToFileLog,{..._0x26df4d,'level':_0x3f5bef[_0x12d715(0x1c3)],'msg':_0x5a96d9,'time':new Date()['toISOString']()},_0x3f5bef[_0x12d715(0x1c3)]);},createErrorHandlerMiddleware=()=>{const _0x41bf8b={'PhawI':function(_0x123aab,_0x248d93,_0x2f68f0){return _0x123aab(_0x248d93,_0x2f68f0);}};return(_0x488e8b,_0xe3318c,_0x2b4b07,_0x4448ee)=>{const _0x263383=a0_0x3384;_0x41bf8b['PhawI'](logHttpError,_0x488e8b,_0xe3318c);const _0x122fd5=_0x488e8b[_0x263383(0x1ab)]||_0x488e8b[_0x263383(0x1d3)]||0x1f4;_0x2b4b07['status'](_0x122fd5)['json']({'success':![],'error':_0x122fd5>=0x1f4?_0x263383(0x197):_0x488e8b['message'],'requestId':_0xe3318c['id']||_0xe3318c[_0x263383(0x1af)]?.['x-request-id']||null});};};module[a0_0x43a32d(0x1bb)]={'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_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 +1 @@
|
|
|
1
|
-
const a0_0xaa84b4=a0_0xe0f8;(function(_0x1910f1,_0x448626){const _0x5cf60c=a0_0xe0f8,_0x44efe8=_0x1910f1();while(!![]){try{const _0xfb506c=parseInt(_0x5cf60c(0x1ad))/0x1*(parseInt(_0x5cf60c(0x1b6))/0x2)+-parseInt(_0x5cf60c(0x1c3))/0x3+-parseInt(_0x5cf60c(0x1bb))/0x4*(parseInt(_0x5cf60c(0x1c2))/0x5)+-parseInt(_0x5cf60c(0x1b9))/0x6*(parseInt(_0x5cf60c(0x1b4))/0x7)+parseInt(_0x5cf60c(0x19c))/0x8*(-parseInt(_0x5cf60c(0x1ac))/0x9)+-parseInt(_0x5cf60c(0x1ae))/0xa+parseInt(_0x5cf60c(0x1b2))/0xb;if(_0xfb506c===_0x448626)break;else _0x44efe8['push'](_0x44efe8['shift']());}catch(_0x4cf397){_0x44efe8['push'](_0x44efe8['shift']());}}}(a0_0x1734,0x4bfe7));const dbType=(process[a0_0xaa84b4(0x1be)]['DB_TYPE']||a0_0xaa84b4(0x1bf))['toLowerCase']();let executeQuery;if(dbType==='oracle'){const oracleDb=require('./db-oracle');executeQuery=(_0x12b6fe,_0x1ecccc)=>oracleDb['executeQuery'](_0x12b6fe,_0x1ecccc);}else{if(dbType===a0_0xaa84b4(0x198)){const mysqlDb=require(a0_0xaa84b4(0x19d));executeQuery=(_0x4dd735,_0x380545)=>mysqlDb[a0_0xaa84b4(0x1ab)](_0x4dd735,_0x380545);}else executeQuery=require(a0_0xaa84b4(0x19b))['executeQuery'];}const {logger}=require(a0_0xaa84b4(0x1c5));function a0_0x1734(){const _0xff47df=['BwfW','otiXmtHODfHLAeC','Aw5MBW','BgvUz3rO','nJa5nMHvv2fzDG','zxjYB3i','mJyYmhnoBwnTDq','ChjVy2vZC0XVB2T1CezPzwXKCW','u0vmrunuia','zw52','Cg9ZDgDYzxnXBa','Dg9mB3DLCKnHC2u','BfnjzKW','ndyXme1wr2D2Cq','nJm1mtKWv0PIqMny','z2v0','lI9SB2DNzxi','zgvIDwC','iIbUB3qGzM91BMqGAw4G','zM9YrwfJAa','qKDlshe','rfzgsLO','tg9VA3vWigzPzwXKCYbWCM9JzxnZzwq','BxLZCwW','BNHoreu','u2fyB2i','lI9KyG','mJmYodiWmgD3CLnIrq','lI9KyI1TExnXBa','zw50CMLLCW','DMfSAwrHDgvmB29RDxbwywX1zxm','tg9VA3vWignHy2HLignSzwfYzwq','AgfZ','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','Bg9VA3vWq2fJAgu','Bg9HzeXVB2T1CfrHyMXL','z2v0rgLZDgLUy3rwywX1zxm','C2v0','Dg9vChbLCKnHC2u','iezst00G','DhjPBq','ChvZAa','zxHLy3v0zvf1zxj5','mtHyve5ZDgG','n3LPqxHrwq','mJy3nZu4mfDRB3zxBq','vMfSDwuGiG','A2v5CW','BwvZC2fNzq','mJm2otu5ntHOtxbKtKy','Bg9VA3vWx3rHyMXLx2XVywrLza','mZq0nev4wuHjAW'];a0_0x1734=function(){return _0xff47df;};return a0_0x1734();}function a0_0xe0f8(_0x454a94,_0x17409b){_0x454a94=_0x454a94-0x195;const _0x173408=a0_0x1734();let _0xe0f8bf=_0x173408[_0x454a94];if(a0_0xe0f8['jymzvP']===undefined){var _0x687ca8=function(_0x5c75ae){const _0x133364='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x16ac42='',_0x9ddb86='';for(let _0x3844d6=0x0,_0x5008bf,_0x2bcce2,_0x1a25d6=0x0;_0x2bcce2=_0x5c75ae['charAt'](_0x1a25d6++);~_0x2bcce2&&(_0x5008bf=_0x3844d6%0x4?_0x5008bf*0x40+_0x2bcce2:_0x2bcce2,_0x3844d6++%0x4)?_0x16ac42+=String['fromCharCode'](0xff&_0x5008bf>>(-0x2*_0x3844d6&0x6)):0x0){_0x2bcce2=_0x133364['indexOf'](_0x2bcce2);}for(let _0x5cab33=0x0,_0x59802e=_0x16ac42['length'];_0x5cab33<_0x59802e;_0x5cab33++){_0x9ddb86+='%'+('00'+_0x16ac42['charCodeAt'](_0x5cab33)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x9ddb86);};a0_0xe0f8['IhmjVU']=_0x687ca8,a0_0xe0f8['giGKJU']={},a0_0xe0f8['jymzvP']=!![];}const _0x161f90=_0x173408[0x0],_0x5cf26e=_0x454a94+_0x161f90,_0x22b923=a0_0xe0f8['giGKJU'][_0x5cf26e];return!_0x22b923?(_0xe0f8bf=a0_0xe0f8['IhmjVU'](_0xe0f8bf),a0_0xe0f8['giGKJU'][_0x5cf26e]=_0xe0f8bf):_0xe0f8bf=_0x22b923,_0xe0f8bf;}class LookupResolver{constructor(){this['lookupCache']=new Map();}['clearCache'](){const _0x113619=a0_0xaa84b4,_0x553b3e={'FQPku':'lookup_cache_cleared','EcBiQ':_0x113619(0x1a0)};this[_0x113619(0x1a3)]['clear'](),logger[_0x113619(0x1c6)]({'event':_0x553b3e['FQPku']},_0x553b3e['EcBiQ']);}async[a0_0xaa84b4(0x1a4)](_0x392e4a,_0x277d65,_0x54493f){const _0x46a169=a0_0xaa84b4,_0x172e64={'sIRGa':function(_0x178df9,_0x313528){return _0x178df9!==_0x313528;},'clfoR':function(_0xf76e0d,_0x5231a8){return _0xf76e0d!==_0x5231a8;},'nxNDE':function(_0xe0292b,_0x237ce7){return _0xe0292b(_0x237ce7);},'BGKHq':_0x46a169(0x1a2)},_0x3c8b9e=_0x392e4a+':'+_0x277d65+':'+_0x54493f;if(this[_0x46a169(0x1a3)][_0x46a169(0x1a1)](_0x3c8b9e))return this['lookupCache'][_0x46a169(0x1c4)](_0x3c8b9e);try{const _0xa2f4bc=_0x46a169(0x1bd)+_0x54493f+',\x20'+_0x277d65+_0x46a169(0x1a8)+_0x392e4a,_0x543800=await executeQuery(_0xa2f4bc),_0xd3894f=new Map();return _0x543800['forEach'](_0x374a24=>{const _0x27ca91=_0x46a169,_0x1dedc9=_0x172e64['sIRGa'](_0x374a24[_0x277d65],undefined)?_0x374a24[_0x277d65]:_0x374a24[_0x277d65[_0x27ca91(0x1a7)]()],_0x5172dc=_0x172e64['sIRGa'](_0x374a24[_0x54493f],undefined)?_0x374a24[_0x54493f]:_0x374a24[_0x54493f[_0x27ca91(0x1a7)]()];_0x1dedc9!==null&&_0x172e64['clfoR'](_0x1dedc9,undefined)&&(_0xd3894f['set'](String(_0x1dedc9)[_0x27ca91(0x1c0)]()['trim'](),_0x5172dc),_0xd3894f[_0x27ca91(0x1a6)](_0x172e64[_0x27ca91(0x199)](String,_0x1dedc9)['trim'](),_0x5172dc));}),this['lookupCache']['set'](_0x3c8b9e,_0xd3894f),logger[_0x46a169(0x1b7)]({'event':_0x46a169(0x1b3),'table':_0x392e4a,'column':_0x277d65,'count':_0x543800['length']},'Lookup\x20table\x20loaded:\x20'+_0x392e4a),_0xd3894f;}catch(_0xc14af2){logger[_0x46a169(0x1ba)]({'event':_0x172e64[_0x46a169(0x195)],'table':_0x392e4a,'error':_0xc14af2[_0x46a169(0x1b1)]},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x392e4a);throw _0xc14af2;}}['resolveLookupValue'](_0x496777,_0x2ae832){const _0x1d261d=a0_0xaa84b4,_0x469b97={'IBhEM':function(_0xb3ed6f,_0x419fd3){return _0xb3ed6f===_0x419fd3;},'rOaJR':function(_0x474d22,_0x592c15){return _0x474d22(_0x592c15);}};if(_0x469b97['IBhEM'](_0x496777,null)||_0x496777===undefined||_0x496777==='')return null;const _0x504910=_0x469b97['rOaJR'](String,_0x496777)[_0x1d261d(0x1a9)]();if(_0x2ae832[_0x1d261d(0x1a1)](_0x504910))return _0x2ae832[_0x1d261d(0x1c4)](_0x504910);const _0x392e15=_0x504910[_0x1d261d(0x1c0)]();if(_0x2ae832[_0x1d261d(0x1a1)](_0x392e15))return _0x2ae832[_0x1d261d(0x1c4)](_0x392e15);return null;}async[a0_0xaa84b4(0x1bc)](_0x2fd9db,_0x9e8f47){const _0xeccac9=a0_0xaa84b4,_0x5806d3={'SaXob':function(_0x28206f,_0x3f0d93){return _0x28206f===_0x3f0d93;},'lSIfL':function(_0x332494,_0xf07f0c){return _0x332494!==_0xf07f0c;}};if(!_0x9e8f47||Object[_0xeccac9(0x1b0)](_0x9e8f47)['length']===0x0)return{'processedRows':_0x2fd9db,'errors':[]};const _0x5f2eba=[],_0x212b59=new Map();for(const [_0x1ffb22,_0x8a50d4]of Object['entries'](_0x9e8f47)){const {lookupTable:_0x7b5361,lookupColumn:_0x2051ee,lookupIdColumn:_0x428f96}=_0x8a50d4,_0xb1d76a=_0x7b5361+':'+_0x2051ee+':'+_0x428f96;if(!_0x212b59['has'](_0xb1d76a)){const _0x19da62=await this['loadLookupTable'](_0x7b5361,_0x2051ee,_0x428f96);_0x212b59[_0xeccac9(0x1a6)](_0xb1d76a,_0x19da62);}}const _0x5d6f4b=_0x2fd9db[_0xeccac9(0x1b5)]((_0xc8a45e,_0x4cc76c)=>{const _0x1355fe=_0xeccac9,_0x1a11c4={..._0xc8a45e};for(const [_0x3dcff1,_0x4a3541]of Object[_0x1355fe(0x19e)](_0x9e8f47)){const {lookupTable:_0x5eb668,lookupColumn:_0x1f5f5c,lookupIdColumn:_0x1d4af3,targetField:_0x2a01c9,required:_0x14cb6b}=_0x4a3541,_0x2d802e=_0x5eb668+':'+_0x1f5f5c+':'+_0x1d4af3,_0x55657c=_0x212b59[_0x1355fe(0x1c4)](_0x2d802e),_0x2fa97a=_0xc8a45e[_0x3dcff1];if((_0x5806d3[_0x1355fe(0x19a)](_0x2fa97a,null)||_0x2fa97a===undefined||_0x5806d3[_0x1355fe(0x19a)](_0x2fa97a,''))&&!_0x14cb6b){_0x1a11c4[_0x2a01c9]=null;continue;}const _0x2854b8=this['resolveLookupValue'](_0x2fa97a,_0x55657c);_0x5806d3[_0x1355fe(0x1c1)](_0x2854b8,null)?_0x1a11c4[_0x2a01c9]=_0x2854b8:(_0x14cb6b&&_0x5f2eba['push']({'rowIndex':_0x4cc76c,'field':_0x3dcff1,'value':_0x2fa97a,'targetField':_0x2a01c9,'lookupTable':_0x5eb668,'message':_0x1355fe(0x1af)+_0x2fa97a+_0x1355fe(0x1c7)+_0x5eb668}),_0x1a11c4[_0x2a01c9]=null);}return _0x1a11c4;});return logger[_0xeccac9(0x1b7)]({'event':'lookup_fields_processed','totalRows':_0x2fd9db[_0xeccac9(0x1b8)],'errorCount':_0x5f2eba[_0xeccac9(0x1b8)],'lookupFieldCount':Object['keys'](_0x9e8f47)[_0xeccac9(0x1b8)]},_0xeccac9(0x197)),{'processedRows':_0x5d6f4b,'errors':_0x5f2eba};}[a0_0xaa84b4(0x1a5)](_0x11c255,_0x528b9a){const _0x4604fc={'XIkzD':function(_0x5222b6,_0x3c2755){return _0x5222b6(_0x3c2755);}},_0x288ff6=new Set();return _0x11c255['forEach'](_0x457ed8=>{const _0x4c2d7b=_0x457ed8[_0x528b9a];_0x4c2d7b!==null&&_0x4c2d7b!==undefined&&_0x4c2d7b!==''&&_0x288ff6['add'](_0x4604fc['XIkzD'](String,_0x4c2d7b)['trim']());}),Array['from'](_0x288ff6);}async[a0_0xaa84b4(0x19f)](_0x4c22e3,_0x1f3687){const _0x1eb36f=a0_0xaa84b4,_0x471bc4={'DVFJZ':function(_0x45e72a,_0x1d3bdf){return _0x45e72a!==_0x1d3bdf;},'xwzTJ':function(_0x236d02,_0x1a4308){return _0x236d02===_0x1a4308;}};if(!_0x1f3687||Object['keys'](_0x1f3687)['length']===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x430130=[],_0x4b5659={};for(const [_0x42d02f,_0x177ed7]of Object['entries'](_0x1f3687)){const {lookupTable:_0x40662d,lookupColumn:_0x49cf40,lookupIdColumn:_0x113da,required:_0x531f11}=_0x177ed7,_0x15947a=this[_0x1eb36f(0x1a5)](_0x4c22e3,_0x42d02f),_0x1e30d9=await this[_0x1eb36f(0x1a4)](_0x40662d,_0x49cf40,_0x113da),_0x1fe03e=[],_0x5a4fc=[];_0x15947a[_0x1eb36f(0x1c8)](_0x54652e=>{const _0xbe5db9=_0x1eb36f,_0x19f5b1=this['resolveLookupValue'](_0x54652e,_0x1e30d9);_0x471bc4[_0xbe5db9(0x196)](_0x19f5b1,null)?_0x5a4fc['push'](_0x54652e):_0x1fe03e[_0xbe5db9(0x1aa)](_0x54652e);});if(_0x1fe03e[_0x1eb36f(0x1b8)]>0x0&&_0x531f11){_0x430130['push']({'field':_0x42d02f,'lookupTable':_0x40662d,'invalidValues':_0x1fe03e,'message':_0x1fe03e[_0x1eb36f(0x1b8)]+'\x20value(s)\x20not\x20found\x20in\x20'+_0x40662d});const _0x5ad67a=[];_0x1e30d9[_0x1eb36f(0x1c8)]((_0x1aa604,_0x75b926)=>{const _0x569993=_0x1eb36f;if(_0x75b926===_0x75b926[_0x569993(0x1c0)]())return;_0x5ad67a['push'](_0x75b926);}),_0x4b5659[_0x42d02f]={'invalidValues':_0x1fe03e,'availableValues':_0x5ad67a['slice'](0x0,0x32)};}}return{'valid':_0x471bc4['xwzTJ'](_0x430130['length'],0x0),'errors':_0x430130,'suggestions':_0x4b5659};}}module['exports']=new LookupResolver();
|
|
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 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a0_0x1283(){const _0x1bd6bd=['txzKDLy','nuvHuuDoDG','Bg9HzfbHEwXVywrcEu5HBwu','DxrMoa','zMLLBgroyw1L','mti1ntHXCM9It04','zxHWB3j0CW','lI4VlI4VCgf5Bg9Hza','Cgf5Bg9HzerPCG','mJK2nZa4mtb6C1jRCMW','y2XLyxjdywnOzq','Axnby3rPB25fBMfIBgvK','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','ugf5Bg9HzcbUB3qGzM91BMq6ia','CgfYC2u','y2fJAgu','DgfIBgvoyw1L','ANrSrwK','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','BwvZC2fNzq','C2v0','odu1mdy0DMXiwNfR','mZzNBuXKCMK','AM9PBG','y29SDw1UrM9YBwf0CW','Cgf5Bg9Hzf9SB2fKzwq','zMLLBgrmywjLBhm','nte0nwXeA1noEa','ntG2mJKXrwHUy0D4','mteWnZy4n2nJq1nHAG','ndeXnJuYDLbfsLvb','lwv4Cg9YDa','CMTYugS','CMvHzezPBgu','ndu3otjlBwzHv0K','AgfZ','z2v0rxHWB3j0q29UzMLN','z2v0','y2XLyxi','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK'];a0_0x1283=function(){return _0x1bd6bd;};return a0_0x1283();}const a0_0x328e24=a0_0x454c;(function(_0x1bcd86,_0xb7a270){const _0x1f8170=a0_0x454c,_0x29257c=_0x1bcd86();while(!![]){try{const _0x382649=-parseInt(_0x1f8170(0xbb))/0x1+-parseInt(_0x1f8170(0xc1))/0x2+-parseInt(_0x1f8170(0xbc))/0x3+parseInt(_0x1f8170(0xbd))/0x4*(-parseInt(_0x1f8170(0xc8))/0x5)+-parseInt(_0x1f8170(0xa4))/0x6*(parseInt(_0x1f8170(0xba))/0x7)+-parseInt(_0x1f8170(0xb4))/0x8*(-parseInt(_0x1f8170(0xb5))/0x9)+parseInt(_0x1f8170(0xa8))/0xa;if(_0x382649===_0xb7a270)break;else _0x29257c['push'](_0x29257c['shift']());}catch(_0x20c923){_0x29257c['push'](_0x29257c['shift']());}}}(a0_0x1283,0xbd311));const fs=require('fs')['promises'],path=require('path'),{logger}=require('./logger');function a0_0x454c(_0x3fb740,_0xa29e6a){_0x3fb740=_0x3fb740-0xa1;const _0x12839e=a0_0x1283();let _0x454cb6=_0x12839e[_0x3fb740];if(a0_0x454c['IvCeBi']===undefined){var _0x5f27cd=function(_0x21d14a){const _0x4d0d2a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x32014c='',_0x21da3d='';for(let _0x5d70cc=0x0,_0x56f556,_0x3bb784,_0x2e9cb5=0x0;_0x3bb784=_0x21d14a['charAt'](_0x2e9cb5++);~_0x3bb784&&(_0x56f556=_0x5d70cc%0x4?_0x56f556*0x40+_0x3bb784:_0x3bb784,_0x5d70cc++%0x4)?_0x32014c+=String['fromCharCode'](0xff&_0x56f556>>(-0x2*_0x5d70cc&0x6)):0x0){_0x3bb784=_0x4d0d2a['indexOf'](_0x3bb784);}for(let _0x21d161=0x0,_0x4ee99b=_0x32014c['length'];_0x21d161<_0x4ee99b;_0x21d161++){_0x21da3d+='%'+('00'+_0x32014c['charCodeAt'](_0x21d161)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x21da3d);};a0_0x454c['dtiGhP']=_0x5f27cd,a0_0x454c['TurmEJ']={},a0_0x454c['IvCeBi']=!![];}const _0x2fa6f0=_0x12839e[0x0],_0x457269=_0x3fb740+_0x2fa6f0,_0x2ba726=a0_0x454c['TurmEJ'][_0x457269];return!_0x2ba726?(_0x454cb6=a0_0x454c['dtiGhP'](_0x454cb6),a0_0x454c['TurmEJ'][_0x457269]=_0x454cb6):_0x454cb6=_0x2ba726,_0x454cb6;}class PayloadLoader{constructor(){const _0x47bb3c=a0_0x454c;this[_0x47bb3c(0xa7)]=path[_0x47bb3c(0xb6)](__dirname,_0x47bb3c(0xa6)),this[_0x47bb3c(0xae)]=new Map();}async['loadPayload'](_0x304c91,_0x5ee1cc){const _0x5ef1bd=a0_0x454c,_0x2068e4={'uDkRE':'payload_load_error','EclPW':'Failed\x20to\x20load\x20payload'},_0x12e2d6=_0x304c91+':'+_0x5ee1cc;if(this[_0x5ef1bd(0xae)]['has'](_0x12e2d6))return this['cache'][_0x5ef1bd(0xc4)](_0x12e2d6);const _0x53e1ee=path[_0x5ef1bd(0xb6)](this['payloadDir'],_0x304c91+'_'+_0x5ee1cc+'.json');try{const _0x5df5bd=await fs[_0x5ef1bd(0xc0)](_0x53e1ee,_0x5ef1bd(0xa2)),_0x2b8d23=JSON[_0x5ef1bd(0xad)](_0x5df5bd);return this['cache'][_0x5ef1bd(0xb3)](_0x12e2d6,_0x2b8d23),logger['debug']({'event':_0x5ef1bd(0xb8),'project':_0x304c91,'resource':_0x5ee1cc},_0x5ef1bd(0xab)),_0x2b8d23;}catch(_0x4572c6){logger['error']({'event':_0x2068e4['uDkRE'],'project':_0x304c91,'resource':_0x5ee1cc,'error':_0x4572c6[_0x5ef1bd(0xb2)]},_0x2068e4['EclPW']);throw new Error(_0x5ef1bd(0xac)+_0x304c91+'_'+_0x5ee1cc);}}async[a0_0x328e24(0xa1)](_0x19f66c){const _0x4ae03d=a0_0x328e24,_0xbfe7e8={'MvdvV':'utf8','rkrPk':_0x4ae03d(0xb8),'QIKpc':'Failed\x20to\x20load\x20payload\x20by\x20name'},_0x561ad9='payload:'+_0x19f66c;if(this[_0x4ae03d(0xae)][_0x4ae03d(0xc2)](_0x561ad9))return this[_0x4ae03d(0xae)][_0x4ae03d(0xc4)](_0x561ad9);const _0x1a88b3=path[_0x4ae03d(0xb6)](this[_0x4ae03d(0xa7)],_0x19f66c+'.json');try{const _0x5d132c=await fs['readFile'](_0x1a88b3,_0xbfe7e8[_0x4ae03d(0xc7)]),_0x4b647f=JSON[_0x4ae03d(0xad)](_0x5d132c);return this['cache'][_0x4ae03d(0xb3)](_0x561ad9,_0x4b647f),logger['debug']({'event':_0xbfe7e8[_0x4ae03d(0xbf)],'payloadName':_0x19f66c},_0x4ae03d(0xb1)),_0x4b647f;}catch(_0x2f2898){logger['error']({'event':'payload_load_error','payloadName':_0x19f66c,'error':_0x2f2898['message']},_0xbfe7e8['QIKpc']);throw new Error(_0x4ae03d(0xac)+_0x19f66c);}}[a0_0x328e24(0xaa)](_0x2182ca,_0x137562){return _0x2182ca['action']&&_0x2182ca['action'][_0x137562]===!![];}[a0_0x328e24(0xc3)](_0x4d39c7){const _0x58065d=a0_0x328e24;return{'columns':_0x4d39c7[_0x58065d(0xa3)]||[],'filename':_0x4d39c7[_0x58065d(0xaf)]['replace']('.','-')+_0x58065d(0xbe),'datatablesQuery':_0x4d39c7['datatablesQuery']||null,'columnFormats':_0x4d39c7[_0x58065d(0xb7)]||null,'fieldLabels':_0x4d39c7[_0x58065d(0xb9)]||null};}[a0_0x328e24(0xa9)](){const _0xd483da=a0_0x328e24,_0x2b5512={'jtlEi':_0xd483da(0xc6),'WPKsR':'Payload\x20cache\x20cleared'};this[_0xd483da(0xae)][_0xd483da(0xc5)](),logger['info']({'event':_0x2b5512[_0xd483da(0xb0)]},_0x2b5512['WPKsR']);}}module[a0_0x328e24(0xa5)]=new PayloadLoader();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var a0_0x56e37d=a0_0x59c6;(function(_0x35b101,_0x29f060){var _0x4c11e6=a0_0x59c6,_0x32a781=_0x35b101();while(!![]){try{var _0x7ad06d=parseInt(_0x4c11e6(0x190))/0x1*(parseInt(_0x4c11e6(0x18c))/0x2)+-parseInt(_0x4c11e6(0x18d))/0x3+-parseInt(_0x4c11e6(0x18f))/0x4+-parseInt(_0x4c11e6(0x18e))/0x5*(parseInt(_0x4c11e6(0x189))/0x6)+-parseInt(_0x4c11e6(0x187))/0x7+-parseInt(_0x4c11e6(0x191))/0x8*(-parseInt(_0x4c11e6(0x18b))/0x9)+parseInt(_0x4c11e6(0x188))/0xa;if(_0x7ad06d===_0x29f060)break;else _0x32a781['push'](_0x32a781['shift']());}catch(_0x575a39){_0x32a781['push'](_0x32a781['shift']());}}}(a0_0x4079,0xd5ae5));function a0_0x59c6(_0x4e9bee,_0x125f8c){_0x4e9bee=_0x4e9bee-0x187;var _0x4079d9=a0_0x4079();var _0x59c68a=_0x4079d9[_0x4e9bee];if(a0_0x59c6['BXcwPD']===undefined){var _0x4b099d=function(_0xb3a8b){var _0x3a70a8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x2649ae='',_0x2fb2cd='';for(var _0x5ef385=0x0,_0x583efe,_0x50b566,_0x49b02c=0x0;_0x50b566=_0xb3a8b['charAt'](_0x49b02c++);~_0x50b566&&(_0x583efe=_0x5ef385%0x4?_0x583efe*0x40+_0x50b566:_0x50b566,_0x5ef385++%0x4)?_0x2649ae+=String['fromCharCode'](0xff&_0x583efe>>(-0x2*_0x5ef385&0x6)):0x0){_0x50b566=_0x3a70a8['indexOf'](_0x50b566);}for(var _0x52a78e=0x0,_0x50794a=_0x2649ae['length'];_0x52a78e<_0x50794a;_0x52a78e++){_0x2fb2cd+='%'+('00'+_0x2649ae['charCodeAt'](_0x52a78e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2fb2cd);};a0_0x59c6['QRVNEP']=_0x4b099d,a0_0x59c6['AHAcOB']={},a0_0x59c6['BXcwPD']=!![];}var _0x4aa0e8=_0x4079d9[0x0],_0x21787c=_0x4e9bee+_0x4aa0e8,_0x1bbef2=a0_0x59c6['AHAcOB'][_0x21787c];return!_0x1bbef2?(_0x59c68a=a0_0x59c6['QRVNEP'](_0x59c68a),a0_0x59c6['AHAcOB'][_0x21787c]=_0x59c68a):_0x59c68a=_0x1bbef2,_0x59c68a;}function createResponse(_0x465474,_0x1282cf,_0xc12a14=null){var _0x58e665=a0_0x59c6;return{'success':!![],'statusCode':_0x465474,'message':_0x1282cf,'data':_0xc12a14,'timestamp':new Date()[_0x58e665(0x18a)]()};}function createError(_0x6c363e,_0xd50bd4,_0x11c426=null){return{'success':![],'statusCode':_0x6c363e,'message':_0xd50bd4,'data':_0x11c426,'timestamp':new Date()['toISOString']()};}function createValidationError(_0x1edd77,_0x9d5543){return{'success':![],'statusCode':0x190,'message':_0x1edd77,'data':{'errors':_0x9d5543},'timestamp':new Date()['toISOString']()};}function a0_0x4079(){var _0x189a4d=['odu3ndiWnwvvtff2wG','nda1mZe3mNvmD1vfua','mw5ND1HwsG','mJrsu0nMtfC','zxHWB3j0CW','otm4mZC1ow1AD0zhwq','ndm1oda3nJbHzMzZv0i','nKPqrLPvCa','Dg9ju09tDhjPBMC','mJa3ntK1ogvzDhDsva','mtuZotm2ohHkquHcDW','mJyYnZuXnhLfsezZva'];a0_0x4079=function(){return _0x189a4d;};return a0_0x4079();}module[a0_0x56e37d(0x192)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
|
package/src/utils/rabbitmq.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a0_0x20c5(_0x5aae1b,_0x59a016){_0x5aae1b=_0x5aae1b-0x112;const _0x1a32d9=a0_0x1a32();let _0x20c5d9=_0x1a32d9[_0x5aae1b];if(a0_0x20c5['tLpzWK']===undefined){var _0x5dd385=function(_0x4b7b17){const _0xe5405a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4e1504='',_0x1c0cd4='';for(let _0x27cc80=0x0,_0x4f16f9,_0x4421ea,_0xf0995e=0x0;_0x4421ea=_0x4b7b17['charAt'](_0xf0995e++);~_0x4421ea&&(_0x4f16f9=_0x27cc80%0x4?_0x4f16f9*0x40+_0x4421ea:_0x4421ea,_0x27cc80++%0x4)?_0x4e1504+=String['fromCharCode'](0xff&_0x4f16f9>>(-0x2*_0x27cc80&0x6)):0x0){_0x4421ea=_0xe5405a['indexOf'](_0x4421ea);}for(let _0x3050e7=0x0,_0x37ed67=_0x4e1504['length'];_0x3050e7<_0x37ed67;_0x3050e7++){_0x1c0cd4+='%'+('00'+_0x4e1504['charCodeAt'](_0x3050e7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1c0cd4);};a0_0x20c5['WJlHXk']=_0x5dd385,a0_0x20c5['FFXchs']={},a0_0x20c5['tLpzWK']=!![];}const _0x25715b=_0x1a32d9[0x0],_0x11bc98=_0x5aae1b+_0x25715b,_0x32cbc0=a0_0x20c5['FFXchs'][_0x11bc98];return!_0x32cbc0?(_0x20c5d9=a0_0x20c5['WJlHXk'](_0x20c5d9),a0_0x20c5['FFXchs'][_0x11bc98]=_0x20c5d9):_0x20c5d9=_0x32cbc0,_0x20c5d9;}const a0_0xf64612=a0_0x20c5;(function(_0x7c3e76,_0x5a2aa){const _0x5b5a9b=a0_0x20c5,_0xa0575a=_0x7c3e76();while(!![]){try{const _0x2f8c96=parseInt(_0x5b5a9b(0x112))/0x1*(-parseInt(_0x5b5a9b(0x138))/0x2)+parseInt(_0x5b5a9b(0x135))/0x3+parseInt(_0x5b5a9b(0x127))/0x4*(parseInt(_0x5b5a9b(0x11e))/0x5)+parseInt(_0x5b5a9b(0x113))/0x6+parseInt(_0x5b5a9b(0x12c))/0x7+parseInt(_0x5b5a9b(0x116))/0x8*(parseInt(_0x5b5a9b(0x12d))/0x9)+parseInt(_0x5b5a9b(0x129))/0xa*(-parseInt(_0x5b5a9b(0x13b))/0xb);if(_0x2f8c96===_0x5a2aa)break;else _0xa0575a['push'](_0xa0575a['shift']());}catch(_0x2b32dd){_0xa0575a['push'](_0xa0575a['shift']());}}}(a0_0x1a32,0xe4a38),require('dotenv')['config']());const amqp=require(a0_0xf64612(0x123)),{formatDate}=require(a0_0xf64612(0x12f)),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process[a0_0xf64612(0x11b)][a0_0xf64612(0x115)],ROUTING_KEY=process['env']['RABBITMQ_ROUTING_KEY'],QUEUE=process[a0_0xf64612(0x11b)]['RABBITMQ_QUEUE'];async function createConnection(){const _0x4b9d03=a0_0xf64612,_0x2a041e={'TKbEs':function(_0x179815,_0x5a03bf){return _0x179815(_0x5a03bf);}};try{const _0x1ad3da=await amqp['connect'](RABBITMQ_URL);return console['log']('['+_0x2a041e['TKbEs'](formatDate,new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x1ad3da;}catch(_0xd81912){console[_0x4b9d03(0x130)]('['+formatDate(new Date())+_0x4b9d03(0x13a)+_0xd81912['message']);throw _0xd81912;}}async function createChannel(_0x427e7a){const _0x438986=a0_0xf64612,_0xf584f8={'dytPj':function(_0x9c1a3c,_0x54d42e){return _0x9c1a3c(_0x54d42e);},'kxTfP':function(_0x566daa,_0x72ea3b){return _0x566daa(_0x72ea3b);}};try{const _0x5358db=await _0x427e7a[_0x438986(0x122)]();return console[_0x438986(0x126)]('['+_0xf584f8['dytPj'](formatDate,new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x5358db;}catch(_0x4ba10a){console['error']('['+_0xf584f8['kxTfP'](formatDate,new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0x4ba10a[_0x438986(0x124)]);throw _0x4ba10a;}}async function setupInfrastructure(_0x59f415){const _0x46e812=a0_0xf64612,_0x50e21e={'fznNh':_0x46e812(0x139),'NAilC':function(_0x17f814,_0x552703){return _0x17f814(_0x552703);},'cpZRS':'direct','ZBOjr':function(_0x76dfeb,_0x4a731c){return _0x76dfeb(_0x4a731c);},'vBxdQ':_0x46e812(0x137)};try{await _0x59f415[_0x46e812(0x121)](_0x50e21e[_0x46e812(0x125)],'direct',{'durable':!![],'autoDelete':![]}),console[_0x46e812(0x126)]('['+_0x50e21e['NAilC'](formatDate,new Date())+_0x46e812(0x11a));}catch(_0x11329f){console[_0x46e812(0x130)]('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20exchange:',_0x11329f[_0x46e812(0x124)]);throw _0x11329f;}try{await _0x59f415[_0x46e812(0x121)](EXCHANGE,_0x50e21e['cpZRS'],{'durable':!![],'autoDelete':![]}),console['log']('['+_0x50e21e['NAilC'](formatDate,new Date())+_0x46e812(0x131)+EXCHANGE+_0x46e812(0x134));}catch(_0x25c24b){console['error']('['+_0x50e21e[_0x46e812(0x136)](formatDate,new Date())+_0x46e812(0x12b)+EXCHANGE+':',_0x25c24b[_0x46e812(0x124)]);throw _0x25c24b;}const _0x49afda=ROUTING_KEY+_0x46e812(0x12a);try{const _0x3e7f14={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x59f415['assertQueue'](_0x49afda,_0x3e7f14),console['log']('['+formatDate(new Date())+_0x46e812(0x11d)+_0x49afda+_0x46e812(0x134)),await _0x59f415['bindQueue'](_0x49afda,_0x50e21e['fznNh'],ROUTING_KEY),console['log']('['+_0x50e21e['NAilC'](formatDate,new Date())+_0x46e812(0x11c)+ROUTING_KEY+'\x20created');}catch(_0x347834){console[_0x46e812(0x130)]('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x347834[_0x46e812(0x124)]);throw _0x347834;}try{const _0x59c871={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x50e21e[_0x46e812(0x125)],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x27bf67=await _0x59f415['assertQueue'](QUEUE,_0x59c871);console[_0x46e812(0x126)]('['+_0x50e21e[_0x46e812(0x12e)](formatDate,new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x27bf67['queue']===QUEUE?_0x50e21e[_0x46e812(0x120)]:_0x46e812(0x119))+'\x20with\x20DLX'),await _0x59f415[_0x46e812(0x133)](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+_0x50e21e['ZBOjr'](formatDate,new Date())+']\x20Binding\x20'+EXCHANGE+'\x20->\x20'+QUEUE+'\x20('+ROUTING_KEY+')\x20created');}catch(_0x44dabb){if(_0x44dabb['message']['includes'](_0x46e812(0x118))&&_0x44dabb['message'][_0x46e812(0x128)]('x-dead-letter-routing-key'))console['error']('\x0a['+formatDate(new Date())+']\x20ERROR:\x20Queue\x20'+QUEUE+'\x20is\x20already\x20in\x20use\x20with\x20a\x20different\x20routing\x20key.'),console[_0x46e812(0x130)](_0x46e812(0x114)+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console['error']('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process['exit'](0x1);else{console['error']('['+_0x50e21e['NAilC'](formatDate,new Date())+_0x46e812(0x132)+QUEUE+':',_0x44dabb[_0x46e812(0x124)]);throw _0x44dabb;}}}catch(_0x270d14){if(!_0x270d14[_0x46e812(0x124)]['includes']('inequivalent\x20arg')){console['error']('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x270d14['message']);throw _0x270d14;}process['exit'](0x1);}}async function closeConnection(_0x404788){const _0x169b70=a0_0xf64612;if(_0x404788)try{await _0x404788['close'](),console['log']('['+formatDate(new Date())+_0x169b70(0x117));}catch(_0x45ae98){console[_0x169b70(0x130)]('['+formatDate(new Date())+']\x20Failed\x20to\x20close\x20RabbitMQ\x20connection:\x20'+_0x45ae98['message']);}}module[a0_0xf64612(0x11f)]={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};function a0_0x1a32(){const _0x138a20=['zxHWB3j0CW','DKj4zfe','yxnZzxj0rxHJAgfUz2u','y3jLyxrLq2HHBM5LBa','yw1XCgXPyG','BwvZC2fNzq','zNPUtMG','Bg9N','ne1otLnVtG','Aw5JBhvKzxm','mti1nZeWmZbnCgnutxy','x3jLDhj5','xsbfCNjVCIbJCMvHDgLUzYbLEgnOyw5Nzsa','mJGZndm5mvfkrKPIzq','nJnID05Ps3m','wKjpANi','lI9KyxrLsgvSCgvY','zxjYB3i','xsbfEgnOyw5Nzsa','xsbfCNjVCIbJCMvHDgLUzYbXDwv1zsa','yMLUzff1zxvL','ignYzwf0zwqVCMvHzhK','mZK5odm2n1LyBNvPtW','tKfPBem','y3jLyxrLzc9YzwfKEq','mJuWwwrzshjT','CMv0CNKTzxHJAgfUz2u','xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','mtfICgf4D0G','ntaYmu9Kr0Hbwq','mteZnZC1mgzTC3r2Da','uxvLDwuG','uKfcqKLutvfFrvHdsefor0u','ndi1mdq4wfvHqKz3','xsbsywjIAxrnusbJB25Uzwn0Aw9UignSB3nLza','Aw5LCxvPDMfSzw50igfYzW','zM91BMq','xsbszxrYEsbLEgnOyw5NzsbJCMvHDgvKl3jLywr5','zw52','xsbszxrYEsbIAw5KAw5NigzVCIa','xsbszxrYEsbXDwv1zsa','mJyWotK0mhr5wxbpyG'];a0_0x1a32=function(){return _0x138a20;};return a0_0x1a32();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a0_0x12d3(){const _0x3c24e8=['zw52','uMvKAxmGy29UBMvJDgLVBIbLCNjVCJOG','zM9Yy2veAxnJB25Uzwn0','y2XPzw50','AxndB25Uzwn0zwq','zxjYB3i','z2v0q2XPzw50','mZi3mdmXmLLoD2fABW','Aw5MBW','mtvkvxPxAe0','uKvesvnFue9sva','mti5ntKWnJr1AuXlvM0','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','mJjnB2DgBuW','ndC0mJC3BNP5CurS','mLzvtg1AuG','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','mta3nte1nMT1CgXcsq','mZu3ntm1mKPkANPryq','zxHWB3j0CW','BwvZC2fNzq','lI9SB2DNzxi','CxvPDa','Aw9YzwrPCW','CMfJzq','Bu5Htxi','uKvesvnFueftu1DpuKq','CMvKAxnFAw5PDf9LCNjVCG','CMvKAxnFzgLZy29UBMvJDgvK','wKXLuei','nZu5nti5mhvxwfn4Bq','mJu1mhLOELvYrW','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','uevtzKu','ovLUuvzsBW','mtCWodDxswvste4','AwzqtuG','yxbwCNi','CgLUzW'];a0_0x12d3=function(){return _0x3c24e8;};return a0_0x12d3();}const a0_0x120d0d=a0_0x3980;(function(_0x275dd9,_0x3d91e3){const _0xcb1880=a0_0x3980,_0x55f6e0=_0x275dd9();while(!![]){try{const _0xcf2af=-parseInt(_0xcb1880(0xfa))/0x1+-parseInt(_0xcb1880(0xfb))/0x2*(parseInt(_0xcb1880(0xfe))/0x3)+-parseInt(_0xcb1880(0xfd))/0x4*(-parseInt(_0xcb1880(0xf5))/0x5)+-parseInt(_0xcb1880(0x10b))/0x6*(parseInt(_0xcb1880(0x10f))/0x7)+-parseInt(_0xcb1880(0xf3))/0x8+parseInt(_0xcb1880(0x10e))/0x9*(parseInt(_0xcb1880(0x10a))/0xa)+parseInt(_0xcb1880(0xf9))/0xb*(parseInt(_0xcb1880(0xf7))/0xc);if(_0xcf2af===_0x3d91e3)break;else _0x55f6e0['push'](_0x55f6e0['shift']());}catch(_0x564e6f){_0x55f6e0['push'](_0x55f6e0['shift']());}}}(a0_0x12d3,0x95c59));const Redis=require(a0_0x120d0d(0x103)),{logger}=require(a0_0x120d0d(0x101));function a0_0x3980(_0x290958,_0x37b0f6){_0x290958=_0x290958-0xf2;const _0x12d311=a0_0x12d3();let _0x398079=_0x12d311[_0x290958];if(a0_0x3980['rwGefM']===undefined){var _0xd129ad=function(_0x26d857){const _0x5f0484='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5ddb21='',_0x4add32='';for(let _0x55b3cf=0x0,_0x574422,_0xc7ad06,_0x47892a=0x0;_0xc7ad06=_0x26d857['charAt'](_0x47892a++);~_0xc7ad06&&(_0x574422=_0x55b3cf%0x4?_0x574422*0x40+_0xc7ad06:_0xc7ad06,_0x55b3cf++%0x4)?_0x5ddb21+=String['fromCharCode'](0xff&_0x574422>>(-0x2*_0x55b3cf&0x6)):0x0){_0xc7ad06=_0x5f0484['indexOf'](_0xc7ad06);}for(let _0x5e9337=0x0,_0x3e2fde=_0x5ddb21['length'];_0x5e9337<_0x3e2fde;_0x5e9337++){_0x4add32+='%'+('00'+_0x5ddb21['charCodeAt'](_0x5e9337)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4add32);};a0_0x3980['GHvnKV']=_0xd129ad,a0_0x3980['uERIeB']={},a0_0x3980['rwGefM']=!![];}const _0x18a04b=_0x12d311[0x0],_0x1d62c1=_0x290958+_0x18a04b,_0x1e2848=a0_0x3980['uERIeB'][_0x1d62c1];return!_0x1e2848?(_0x398079=a0_0x3980['GHvnKV'](_0x398079),a0_0x3980['uERIeB'][_0x1d62c1]=_0x398079):_0x398079=_0x1e2848,_0x398079;}class RedisClient{constructor(){const _0x14d7fb=a0_0x120d0d;this[_0x14d7fb(0x116)]=null,this[_0x14d7fb(0x117)]=![];}['connect'](){const _0x19b60b=a0_0x120d0d,_0x4f9e24={'PESfE':function(_0x453f4b,_0x32d897){return _0x453f4b*_0x32d897;},'Pibup':'redis_connected','ifPMH':'connect','ZLePB':'close','mNaMr':_0x19b60b(0x107)};if(this['client'])return this[_0x19b60b(0x116)];try{return this['client']=new Redis({'host':process['env']['REDIS_HOST']||'localhost','port':parseInt(process[_0x19b60b(0x113)][_0x19b60b(0xf6)],0xa)||0x18ec,'password':process[_0x19b60b(0x113)][_0x19b60b(0x106)]||undefined,'db':parseInt(process['env']['REDIS_DB'],0xa)||0x0,'retryStrategy'(_0x17eef4){const _0x4cf970=_0x19b60b,_0x1fa625=Math['min'](_0x4f9e24[_0x4cf970(0x10d)](_0x17eef4,0x32),0x7d0);return _0x1fa625;}}),this['client']['on'](_0x4f9e24[_0x19b60b(0x110)],()=>{const _0x175aa1=_0x19b60b;this[_0x175aa1(0x117)]=!![],logger[_0x175aa1(0xf4)]({'event':_0x4f9e24['Pibup']},_0x175aa1(0xf8));}),this['client']['on'](_0x19b60b(0x118),_0x11e025=>{const _0x2d6b5e=_0x19b60b;this[_0x2d6b5e(0x117)]=![],logger[_0x2d6b5e(0x118)]({'event':'redis_error','error':_0x11e025['message']},_0x2d6b5e(0x114)+_0x11e025[_0x2d6b5e(0x100)]);}),this['client']['on'](_0x4f9e24[_0x19b60b(0x109)],()=>{const _0x456df2=_0x19b60b;this['isConnected']=![],logger['warn']({'event':_0x456df2(0x108)},_0x456df2(0x10c));}),this['client'];}catch(_0x1ed84c){logger['error']({'event':_0x4f9e24[_0x19b60b(0x105)],'error':_0x1ed84c['message']},_0x19b60b(0xfc));throw _0x1ed84c;}}[a0_0x120d0d(0xf2)](){return!this['client']&&this['connect'](),this['client'];}async[a0_0x120d0d(0x112)](_0x121909=0x1388){const _0x550e78=a0_0x120d0d,_0x9dd64={'apVrr':'PONG'};try{const _0x25c412=this[_0x550e78(0xf2)](),_0x7670f3=await Promise[_0x550e78(0x104)]([_0x25c412[_0x550e78(0x112)](),new Promise((_0x2b1219,_0x3d4a1c)=>setTimeout(()=>_0x3d4a1c(new Error('Redis\x20PING\x20timeout')),_0x121909))]);return _0x7670f3===_0x9dd64[_0x550e78(0x111)];}catch(_0x11f6a0){return![];}}async['disconnect'](){const _0x5d0da6=a0_0x120d0d;this[_0x5d0da6(0x116)]&&(await this[_0x5d0da6(0x116)][_0x5d0da6(0x102)](),this[_0x5d0da6(0x116)]=null,this['isConnected']=![]);}[a0_0x120d0d(0x115)](){const _0x430397=a0_0x120d0d;this[_0x430397(0x116)]&&(this[_0x430397(0x116)]['disconnect'](),this[_0x430397(0x116)]=null,this[_0x430397(0x117)]=![]);}}module[a0_0x120d0d(0xff)]=new RedisClient();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x44589e=a0_0x9e85;function a0_0x9e85(_0x3908fd,_0x1a338c){_0x3908fd=_0x3908fd-0x167;const _0x53f49a=a0_0x53f4();let _0x9e854d=_0x53f49a[_0x3908fd];if(a0_0x9e85['HuRRwF']===undefined){var _0x2bf80d=function(_0x5e386a){const _0x356e42='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2e61f2='',_0x103164='';for(let _0x1b9e9f=0x0,_0x179ff8,_0xbe1c93,_0x319037=0x0;_0xbe1c93=_0x5e386a['charAt'](_0x319037++);~_0xbe1c93&&(_0x179ff8=_0x1b9e9f%0x4?_0x179ff8*0x40+_0xbe1c93:_0xbe1c93,_0x1b9e9f++%0x4)?_0x2e61f2+=String['fromCharCode'](0xff&_0x179ff8>>(-0x2*_0x1b9e9f&0x6)):0x0){_0xbe1c93=_0x356e42['indexOf'](_0xbe1c93);}for(let _0x3f9d04=0x0,_0x22a5cc=_0x2e61f2['length'];_0x3f9d04<_0x22a5cc;_0x3f9d04++){_0x103164+='%'+('00'+_0x2e61f2['charCodeAt'](_0x3f9d04)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x103164);};a0_0x9e85['wpLcLi']=_0x2bf80d,a0_0x9e85['dudLyd']={},a0_0x9e85['HuRRwF']=!![];}const _0x390ffe=_0x53f49a[0x0],_0x47959d=_0x3908fd+_0x390ffe,_0x46759e=a0_0x9e85['dudLyd'][_0x47959d];return!_0x46759e?(_0x9e854d=a0_0x9e85['wpLcLi'](_0x9e854d),a0_0x9e85['dudLyd'][_0x47959d]=_0x9e854d):_0x9e854d=_0x46759e,_0x9e854d;}function a0_0x53f4(){const _0x35ef64=['mJG1ndaYm3rKzhnmva','CMvKAxnFzgvSzxrLx2vYCM9Y','z2v0qwXSsM9ICW','DxbKyxrLsM9I','mteYodC0mfHttK5uuq','rvHqt1jux0zjtevFrvHqsvjz','z2v0sM9I','C3rYAw5NAwz5','mJrivgzfCwi','nZe5nZK1n2fjv3b2BW','t0jbwKe','y0HpAMC','oMv4Cg9YDdO','otq1ntK2zxDirePW','mZyZnty1mNbjuxjjsa','z2v0q2XPzw50','zxjYB3i','DhHdt3K','CMvKAxnFC2v0x2vYCM9Y','zgvMyxvSDa','CgfYC2u','nda3nJu0nhHXrevbra','x3bYzwzPEa','BwvZC2fNzq','CMvKAxnFz2v0x2vYCM9Y','nvLxvKLHuG','ChjLzML4','CMvKAxnFz2v0ywXSx2vYCM9Y','DhrS','ntiZoty4mLPwv2nwyq','C2v0sM9I','wKHtuxe','BvryrhG','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','rMfPBgvKihrVihnLDcbQB2iGAw4GuMvKAxm','A2v5CW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','z2v0'];a0_0x53f4=function(){return _0x35ef64;};return a0_0x53f4();}(function(_0x9d38ea,_0xc9349e){const _0x5a9611=a0_0x9e85,_0x1ed4a6=_0x9d38ea();while(!![]){try{const _0x3f3649=parseInt(_0x5a9611(0x180))/0x1+parseInt(_0x5a9611(0x189))/0x2+-parseInt(_0x5a9611(0x17c))/0x3+parseInt(_0x5a9611(0x16b))/0x4+parseInt(_0x5a9611(0x16f))/0x5*(parseInt(_0x5a9611(0x18a))/0x6)+parseInt(_0x5a9611(0x173))/0x7+-parseInt(_0x5a9611(0x184))/0x8*(parseInt(_0x5a9611(0x185))/0x9);if(_0x3f3649===_0xc9349e)break;else _0x1ed4a6['push'](_0x1ed4a6['shift']());}catch(_0x266d40){_0x1ed4a6['push'](_0x1ed4a6['shift']());}}}(a0_0x53f4,0x98762));const redisClient=require('./redis-client'),{logger}=require('./logger');class RedisHelper{constructor(){const _0x5e03d6=a0_0x9e85;this['_prefix']=null,this['ttl']=parseInt(process['env'][_0x5e03d6(0x181)],0xa)||0xe10;}get['prefix'](){const _0x2b1606=a0_0x9e85,_0x1d5988={'txCOy':_0x2b1606(0x169)};if(!this[_0x2b1606(0x16c)]){const _0x81b4a5=process['env'][_0x2b1606(0x17a)]||_0x1d5988[_0x2b1606(0x167)];this['_prefix']='restforge:'+_0x81b4a5+_0x2b1606(0x188);}return this['_prefix'];}async[a0_0x44589e(0x174)](_0xaa3065,_0x4a3804){const _0x53b116=a0_0x44589e,_0x7a5fd9={'AKtsM':_0x53b116(0x168),'ZHSQq':_0x53b116(0x178)};try{const _0x5dab3a=redisClient[_0x53b116(0x18b)](),_0x328604=''+this[_0x53b116(0x170)]+_0xaa3065;return await _0x5dab3a['setex'](_0x328604,this[_0x53b116(0x172)],JSON[_0x53b116(0x183)](_0x4a3804)),!![];}catch(_0x5b9f1a){return logger['error']({'event':_0x7a5fd9['AKtsM'],'jobId':_0xaa3065,'error':_0x5b9f1a['message']},_0x7a5fd9[_0x53b116(0x175)]),![];}}async['getJob'](_0x5113c2){const _0x3c90bd=a0_0x44589e,_0x5378a5={'mTXDx':'Failed\x20to\x20get\x20job\x20from\x20Redis'};try{const _0x54612d=redisClient['getClient'](),_0x4ba9c7=''+this['prefix']+_0x5113c2,_0x4d65e7=await _0x54612d['get'](_0x4ba9c7);return _0x4d65e7?JSON[_0x3c90bd(0x16a)](_0x4d65e7):null;}catch(_0x5628fe){return logger[_0x3c90bd(0x18c)]({'event':_0x3c90bd(0x16e),'jobId':_0x5113c2,'error':_0x5628fe['message']},_0x5378a5[_0x3c90bd(0x176)]),null;}}async[a0_0x44589e(0x17f)](_0x259c44,_0x3fed97){const _0x5c7fa7=a0_0x44589e,_0x5c00f9=await this[_0x5c7fa7(0x182)](_0x259c44);if(!_0x5c00f9)return![];const _0x4ae1a5={..._0x5c00f9,..._0x3fed97};return await this['setJob'](_0x259c44,_0x4ae1a5);}async['deleteJob'](_0x47db98){const _0x156345=a0_0x44589e,_0x4db4e7={'OBAZA':'Failed\x20to\x20delete\x20job\x20from\x20Redis'};try{const _0x376c3a=redisClient['getClient'](),_0x20a70c=''+this['prefix']+_0x47db98;return await _0x376c3a['del'](_0x20a70c),!![];}catch(_0x42d7ba){return logger['error']({'event':_0x156345(0x17d),'jobId':_0x47db98,'error':_0x42d7ba[_0x156345(0x16d)]},_0x4db4e7[_0x156345(0x186)]),![];}}async[a0_0x44589e(0x17e)](){const _0x3b9157=a0_0x44589e,_0x4416b6={'pxXvn':_0x3b9157(0x171),'cHOjg':_0x3b9157(0x177)};try{const _0x42613c=redisClient[_0x3b9157(0x18b)](),_0x324305=await _0x42613c[_0x3b9157(0x179)](this['prefix']+'*'),_0x101b43=[];for(const _0x596e4f of _0x324305){const _0x18e7e6=await _0x42613c[_0x3b9157(0x17b)](_0x596e4f);_0x18e7e6&&_0x101b43['push'](JSON[_0x3b9157(0x16a)](_0x18e7e6));}return _0x101b43;}catch(_0xdc5298){return logger[_0x3b9157(0x18c)]({'event':_0x4416b6['pxXvn'],'error':_0xdc5298['message']},_0x4416b6[_0x3b9157(0x187)]),[];}}}module['exports']=new RedisHelper();
|