@restforgejs/platform 4.3.4 → 4.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/generators/cli/payload/migrate.js +96 -0
- package/generators/lib/migrate/backend-payload-migrator.js +221 -0
- package/generators/lib/migrate/field-type-resolver.js +319 -0
- package/generators/lib/migrate/label-generator.js +38 -0
- package/generators/lib/migrate/migrate-runner.js +187 -0
- package/generators/lib/migrate/naming.js +43 -0
- package/generators/lib/migrate/sql-parser.js +124 -0
- package/generators/lib/payload/endpoint-schema-validator.js +181 -181
- package/generators/lib/payload/payload-runner.js +1313 -1218
- package/generators/lib/payload/schema-diff.js +460 -460
- 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/node_modules/readdir-glob/node_modules/brace-expansion/index.js +1 -1
- package/node_modules/readdir-glob/node_modules/brace-expansion/package.json +1 -1
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/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
|
-
function a0_0x13d6(){const _0x131543=['CMv0CNK','ufrWs2u','zxjYB3i','D3jPDgvFBg9JA19LCNjVCG','x3jLDhj5q291BNq','r2HqALa','D2fYBG','CMv0CNLdB3vUDa','nJe3mZK4uNfJwu5P','D29YA2vYlq','CMvHzf9SB2nRx3DHAxrPBMC','v1blAxa','CMvHzf9SB2nRx3jLBgvHC2vK','v3HIBvK','mJa2ndC1mgrUAeTuva','BunnrKO','D3jPDgvFBg9JA19YzwXLyxnLza','BK1xqMG','mtjRDuDVDfy','tgTfChy','tg9JAYbuveWGzxH0zw5Kzwq','te9ds19esvnuuKLcvvrfrf9srvrswq','CMv0CNLezwXHEq','zfHKsvu','zxHWB3j0CW','C3vIC3rYAw5N','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','zxzHBa','x2LUAxrdB25MAwC','v1jjveuGBg9JAYbLCNjVCG','mZnfqMv6q3m','D3jPDgu','C2XeDeK','ndi0nZG2nw9cs1L5sW','CMvHza','x3jLDhj5rgvSyxK','q1PRtxe','Bg5dweO','z2v0','EeHzExi','zgvMyxvSDfruta','uKvbrcbSB2nRigvYCM9Y','x2vUC3vYzuLUAxrPywXPEMvK','zgvS','Bg9JA19LEhrLBMrLza','wNnntui','z2v0q2XPzw50','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','mJCYodC5nuDgz2TSCq','x2LUAxrPywXPEMvK','ywXS','AeDWshC','Cg93','ywnXDwLYzvDYAxrLtg9JAW','BgfZDeLUzgv4t2y','CMy6Bg9JAZO','tLrnDMO','uKvbrcbSB2nRihjLBgvHC2vK','AxnfBMfIBgvK','DK5UwMq','x2rLzMf1BhruveW','x2vUywjSzwq','v1jjveuGBg9JAYbYzwXLyxnLza','yNvPBgrmB2nRs2v5','z2vUzxjHDgvmB2nRvMfSDwu','x3DVCMTLCKLK','ug1hz0i','tg9JAYbLEhrLBMqGzxjYB3i','ndm2mtK4z0jQzvHd','Ae9qBMq','zgvIDwC','x3bYzwzPEa','zxH0zw5Ktg9JAW','twjuruy','Dhj1zq','odmYmZi4mfzdq1zhta','z2v0tg9JA0LUzM8','BwvZC2fNzq','zw5HyMXLza','mZKZmZzhwefktLy','x3n0CMf0zwD5','CMvQzwn0','D3jPDgvFBg9JA19Hy3f1AxjLza','zwXer3u','C2XLzxa','tg9JAYbYzwXLyxnLigvYCM9Y','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','og9hr3DABq','zw52'];a0_0x13d6=function(){return _0x131543;};return a0_0x13d6();}const a0_0x558805=a0_0x31bc;function a0_0x31bc(_0x213086,_0x858827){_0x213086=_0x213086-0xd9;const _0x13d672=a0_0x13d6();let _0x31bc11=_0x13d672[_0x213086];if(a0_0x31bc['uvuGHt']===undefined){var _0x68f8b0=function(_0x2d000a){const _0x5c62ee='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x16c1ad='',_0x445d02='';for(let _0x544b02=0x0,_0xeaf48b,_0x1d953e,_0x2eb80a=0x0;_0x1d953e=_0x2d000a['charAt'](_0x2eb80a++);~_0x1d953e&&(_0xeaf48b=_0x544b02%0x4?_0xeaf48b*0x40+_0x1d953e:_0x1d953e,_0x544b02++%0x4)?_0x16c1ad+=String['fromCharCode'](0xff&_0xeaf48b>>(-0x2*_0x544b02&0x6)):0x0){_0x1d953e=_0x5c62ee['indexOf'](_0x1d953e);}for(let _0x306df9=0x0,_0x47bad5=_0x16c1ad['length'];_0x306df9<_0x47bad5;_0x306df9++){_0x445d02+='%'+('00'+_0x16c1ad['charCodeAt'](_0x306df9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x445d02);};a0_0x31bc['YLKalO']=_0x68f8b0,a0_0x31bc['WcOUwD']={},a0_0x31bc['uvuGHt']=!![];}const _0x46a239=_0x13d672[0x0],_0xdce2ed=_0x213086+_0x46a239,_0x14b4a9=a0_0x31bc['WcOUwD'][_0xdce2ed];return!_0x14b4a9?(_0x31bc11=a0_0x31bc['YLKalO'](_0x31bc11),a0_0x31bc['WcOUwD'][_0xdce2ed]=_0x31bc11):_0x31bc11=_0x14b4a9,_0x31bc11;}(function(_0x429c47,_0x17036a){const _0x45e75a=a0_0x31bc,_0x15fee4=_0x429c47();while(!![]){try{const _0x437462=parseInt(_0x45e75a(0xe1))/0x1+parseInt(_0x45e75a(0xe7))/0x2+parseInt(_0x45e75a(0xf8))/0x3*(-parseInt(_0x45e75a(0x129))/0x4)+-parseInt(_0x45e75a(0x10a))/0x5*(parseInt(_0x45e75a(0xeb))/0x6)+-parseInt(_0x45e75a(0x11e))/0x7*(parseInt(_0x45e75a(0x131))/0x8)+-parseInt(_0x45e75a(0xfb))/0x9+parseInt(_0x45e75a(0x125))/0xa;if(_0x437462===_0x17036a)break;else _0x15fee4['push'](_0x15fee4['shift']());}catch(_0x3d4d2a){_0x15fee4['push'](_0x15fee4['shift']());}}}(a0_0x13d6,0xb6a4e));const redisClient=require('./redis-client'),{logger}=require('./logger'),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0x586a5f=a0_0x31bc,_0x51e425='5|4|1|2|3|7|6|0'['split']('|');let _0x33183c=0x0;while(!![]){switch(_0x51e425[_0x33183c++]){case'0':this[_0x586a5f(0x10b)]=![];continue;case'1':this['_defaultTTL']=null;continue;case'2':this['_retryCount']=null;continue;case'3':this['_retryDelay']=null;continue;case'4':this[_0x586a5f(0x117)]=null;continue;case'5':this[_0x586a5f(0x121)]=null;continue;case'6':this[_0x586a5f(0x11b)]=null;continue;case'7':this[_0x586a5f(0x12a)]=null;continue;}break;}}[a0_0x558805(0xf6)](){const _0x3fdce0=a0_0x558805,_0x409343={'MqhYv':'lock_config_init','ZsMMB':_0x3fdce0(0x111),'slDtI':function(_0x4f58e6,_0x441c72,_0x417206){return _0x4f58e6(_0x441c72,_0x417206);}},_0x46dabf='1|6|3|7|8|4|2|5|0'['split']('|');let _0x3c16c2=0x0;while(!![]){switch(_0x46dabf[_0x3c16c2++]){case'0':logger['info']({'event':_0x409343['MqhYv'],'enabled':this['_enabled'],'strategy':this['_strategy'],'ttl':this[_0x3fdce0(0x116)],'retryCount':this['_retryCount'],'retryDelay':this[_0x3fdce0(0xfd)],'workerId':this['_workerId']},_0x3fdce0(0xf4)+this['_enabled']+',\x20strategy:\x20'+this[_0x3fdce0(0x12a)]);continue;case'1':this['_prefix']=_0x409343[_0x3fdce0(0x107)];continue;case'2':this[_0x3fdce0(0x11b)]=_0x3fdce0(0xe2)+process['pid'];continue;case'3':this[_0x3fdce0(0x116)]=_0x409343[_0x3fdce0(0xfa)](parseInt,process['env']['LOCK_DISTRIBUTED_TTL'],0xa)||0xa;continue;case'4':this['_strategy']=process[_0x3fdce0(0x132)][_0x3fdce0(0xf3)]||'retry';continue;case'5':this['_initialized']=!![];continue;case'6':this['_enabled']=process[_0x3fdce0(0x132)]['LOCK_DISTRIBUTED_ENABLED']===_0x3fdce0(0x124);continue;case'7':this[_0x3fdce0(0xdd)]=parseInt(process['env'][_0x3fdce0(0xee)],0xa)||0x3;continue;case'8':this['_retryDelay']=_0x409343[_0x3fdce0(0xfa)](parseInt,process[_0x3fdce0(0x132)]['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64;continue;}break;}}[a0_0x558805(0x104)](){const _0x1b9ebd=a0_0x558805;!this[_0x1b9ebd(0x10b)]&&this[_0x1b9ebd(0xf6)]();}get['prefix'](){return this['_ensureInitialized'](),this['_prefix'];}get[a0_0x558805(0x128)](){const _0x1f993c=a0_0x558805;return this['_ensureInitialized'](),this[_0x1f993c(0x117)];}get[a0_0x558805(0x102)](){return this['_ensureInitialized'](),this['_defaultTTL'];}get[a0_0x558805(0xe0)](){const _0x981760=a0_0x558805;return this[_0x981760(0x104)](),this['_retryCount'];}get['retryDelay'](){return this['_ensureInitialized'](),this['_retryDelay'];}get['strategy'](){const _0x240a97=a0_0x558805;return this[_0x240a97(0x104)](),this[_0x240a97(0x12a)];}get['workerId'](){return this['_ensureInitialized'](),this['_workerId'];}[a0_0x558805(0x119)](_0x3b2389){const {module:_0xcb9479,endpoint:_0x1e9686,lockType:_0x311e60,recordId:_0x586e49}=_0x3b2389;if(_0x586e49)return''+this['prefix']+_0xcb9479+':'+_0x1e9686+':'+_0x586e49+':'+_0x311e60;return''+this['prefix']+_0xcb9479+':'+_0x1e9686+':'+_0x311e60;}[a0_0x558805(0x11a)](){return this['workerId']+':'+uuidv4()+':'+Date['now']();}async['acquireReadLock'](_0x3f2b9e){const _0x5e2724=a0_0x558805,_0x12c7ac={'hGpHw':function(_0x2d4498,_0x31151e){return _0x2d4498<_0x31151e;},'MbTEF':'read_lock_acquired','NTMvj':_0x5e2724(0xe3),'CVXOw':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release','JUORJ':function(_0x291468,_0x550ecd){return _0x291468*_0x550ecd;},'PmGgB':_0x5e2724(0x103)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x53a4cc=this['buildLockKey']({..._0x3f2b9e,'lockType':_0x5e2724(0xf9)}),_0x1554aa=this['buildLockKey']({..._0x3f2b9e,'lockType':_0x5e2724(0xfc)}),_0xf56b60=this[_0x5e2724(0x11a)]();try{const _0x278484=redisClient['getClient']();for(let _0xb6dd9a=0x0;_0x12c7ac[_0x5e2724(0x10d)](_0xb6dd9a,this['retryCount']);_0xb6dd9a++){const _0x1e555f=await _0x278484['get'](_0x53a4cc);if(!_0x1e555f){await _0x278484['incr'](_0x1554aa),await _0x278484['expire'](_0x1554aa,this['defaultTTL']);const _0x21a398=_0x1554aa+':'+_0xf56b60;return await _0x278484['setex'](_0x21a398,this[_0x5e2724(0x102)],_0xf56b60),logger['debug']({'event':_0x12c7ac[_0x5e2724(0x123)],'key':_0x1554aa,'value':_0xf56b60},'READ\x20lock\x20acquired'),{'success':!![],'lockValue':_0xf56b60,'lockKey':_0x21a398};}logger[_0x5e2724(0x120)]({'event':_0x12c7ac[_0x5e2724(0x112)],'writeKey':_0x53a4cc,'attempt':_0xb6dd9a},_0x12c7ac['CVXOw']),await this[_0x5e2724(0x12e)](_0x12c7ac['JUORJ'](this['retryDelay'],Math[_0x5e2724(0x10e)](0x2,_0xb6dd9a)));}return logger[_0x5e2724(0xdf)]({'event':'read_lock_timeout','key':_0x1554aa},'READ\x20lock\x20acquire\x20timeout'),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x43908d){return logger[_0x5e2724(0xdb)]({'event':'read_lock_error','error':_0x43908d['message']},_0x12c7ac[_0x5e2724(0x11c)]),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x558805(0x10f)](_0x7c76a2){const _0x2d5fcc=a0_0x558805,_0x5e03a7={'GhPjP':'write','OLwcn':_0x2d5fcc(0xfc),'nMWBh':_0x2d5fcc(0x12b),'ajzpP':function(_0x30a24a,_0x54e8f1){return _0x30a24a===_0x54e8f1;},'WxbmY':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','xHYyr':function(_0x4bddf4,_0x3161d0){return _0x4bddf4<_0x3161d0;},'Jjdyf':_0x2d5fcc(0x12c),'CZkMq':_0x2d5fcc(0xd9),'mCMFJ':'write_lock_waiting','dXdIU':'write_lock_timeout','WPKip':_0x2d5fcc(0x130),'FXzVF':_0x2d5fcc(0xf7)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x5dd711=this['buildLockKey']({..._0x7c76a2,'lockType':_0x5e03a7[_0x2d5fcc(0xde)]}),_0x426276=this[_0x2d5fcc(0x119)]({..._0x7c76a2,'lockType':_0x5e03a7['OLwcn']}),_0x415aec=this['generateLockValue']();try{const _0x437d5a=redisClient[_0x2d5fcc(0x108)]();if(this['strategy']===_0x5e03a7['nMWBh']){const _0xd441b5=await _0x437d5a['set'](_0x5dd711,_0x415aec,'EX',this[_0x2d5fcc(0x102)],'NX');if(_0x5e03a7['ajzpP'](_0xd441b5,'OK'))return logger['debug']({'event':_0x2d5fcc(0x12c),'key':_0x5dd711,'value':_0x415aec,'strategy':_0x5e03a7[_0x2d5fcc(0xea)]},'WRITE\x20lock\x20acquired\x20(reject\x20mode)'),{'success':!![],'lockValue':_0x415aec,'lockKey':_0x5dd711};return logger['debug']({'event':'write_lock_rejected','key':_0x5dd711},_0x5e03a7[_0x2d5fcc(0xe6)]),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x50161a=0x0;_0x5e03a7[_0x2d5fcc(0x101)](_0x50161a,this['retryCount']);_0x50161a++){const [_0x89ea74,_0x189d0b]=await Promise[_0x2d5fcc(0x10c)]([_0x437d5a[_0x2d5fcc(0x100)](_0x426276),_0x437d5a[_0x2d5fcc(0x100)](_0x5dd711)]);if(!_0x189d0b&&(!_0x89ea74||parseInt(_0x89ea74)===0x0)){const _0x46f22f=await _0x437d5a['set'](_0x5dd711,_0x415aec,'EX',this[_0x2d5fcc(0x102)],'NX');if(_0x46f22f==='OK')return logger[_0x2d5fcc(0x120)]({'event':_0x5e03a7['Jjdyf'],'key':_0x5dd711,'value':_0x415aec,'strategy':_0x5e03a7[_0x2d5fcc(0xfe)]},_0x2d5fcc(0x109)),{'success':!![],'lockValue':_0x415aec,'lockKey':_0x5dd711};}logger[_0x2d5fcc(0x120)]({'event':_0x5e03a7[_0x2d5fcc(0xe8)],'writeKey':_0x5dd711,'readCount':_0x89ea74,'attempt':_0x50161a},'Waiting\x20for\x20locks\x20to\x20release'),await this['sleep'](this[_0x2d5fcc(0xef)]*Math['pow'](0x2,_0x50161a));}return logger['warn']({'event':_0x5e03a7[_0x2d5fcc(0xf0)],'key':_0x5dd711},_0x5e03a7[_0x2d5fcc(0xe4)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x201ef8){return logger['error']({'event':_0x2d5fcc(0xdc),'error':_0x201ef8[_0x2d5fcc(0x127)]},_0x5e03a7['FXzVF']),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x5e2882,_0x516b75){const _0x414be1=a0_0x558805,_0x1d7b72={'urKzV':function(_0x5fad8b,_0x156bde){return _0x5fad8b(_0x156bde);},'pcCSQ':_0x414be1(0xe5),'LcjzG':function(_0x6a92b,_0x1f0ea5){return _0x6a92b===_0x1f0ea5;},'OhrCT':_0x414be1(0xe9),'LkEpv':'lock_release_error','lnCXJ':_0x414be1(0x12f)};if(!this[_0x414be1(0x128)]||!_0x5e2882)return!![];try{const _0x4b1d46=redisClient[_0x414be1(0x108)]();if(_0x5e2882['includes'](':read:')){await _0x4b1d46[_0x414be1(0x105)](_0x5e2882);const _0x1b3004=_0x5e2882[_0x414be1(0xf2)](0x0,_0x5e2882[_0x414be1(0x110)](':')),_0x174ce7=await _0x4b1d46[_0x414be1(0x100)](_0x1b3004);return _0x174ce7&&_0x1d7b72['urKzV'](parseInt,_0x174ce7)>0x0&&await _0x4b1d46['decr'](_0x1b3004),logger['debug']({'event':_0x1d7b72['pcCSQ'],'key':_0x5e2882},_0x414be1(0x113)),!![];}const _0x56ff7e='\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x200\x0a\x20\x20\x20\x20\x20\x20\x20\x20end\x0a\x20\x20\x20\x20\x20\x20',_0x3af3dd=await _0x4b1d46[_0x414be1(0xf5)](_0x56ff7e,0x1,_0x5e2882,_0x516b75);if(_0x1d7b72['LcjzG'](_0x3af3dd,0x1))return logger[_0x414be1(0x120)]({'event':_0x1d7b72['OhrCT'],'key':_0x5e2882},_0x414be1(0x118)),!![];return logger['warn']({'event':'lock_release_not_owner','key':_0x5e2882},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0xc133bf){return logger[_0x414be1(0xdb)]({'event':_0x1d7b72[_0x414be1(0xec)],'key':_0x5e2882,'error':_0xc133bf['message']},_0x1d7b72[_0x414be1(0xff)]),![];}}async[a0_0x558805(0x122)](_0x107f17,_0x5282b2,_0x5ef832=null){const _0x148eb6=a0_0x558805,_0x639561={'vNnZd':_0x148eb6(0xed),'elDGu':'lock_extend_error'};if(!this['enabled']||!_0x107f17)return!![];try{const _0x5a73db=redisClient['getClient'](),_0x6080e7='\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20redis.call(\x22expire\x22,\x20KEYS[1],\x20ARGV[2])\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x200\x0a\x20\x20\x20\x20\x20\x20\x20\x20end\x0a\x20\x20\x20\x20\x20\x20',_0x483421=await _0x5a73db[_0x148eb6(0xf5)](_0x6080e7,0x1,_0x107f17,_0x5282b2,_0x5ef832||this['defaultTTL']);if(_0x483421===0x1)return logger[_0x148eb6(0x120)]({'event':_0x148eb6(0x106),'key':_0x107f17,'ttl':_0x5ef832||this[_0x148eb6(0x102)]},_0x639561[_0x148eb6(0x115)]),!![];return![];}catch(_0x59523b){return logger[_0x148eb6(0xdb)]({'event':_0x639561[_0x148eb6(0x12d)],'key':_0x107f17,'error':_0x59523b[_0x148eb6(0x127)]},_0x148eb6(0x11d)),![];}}[a0_0x558805(0x114)](){const _0x483a58=a0_0x558805;return this[_0x483a58(0x128)];}[a0_0x558805(0x12e)](_0xa10923){return new Promise(_0x4986ed=>setTimeout(_0x4986ed,_0xa10923));}async[a0_0x558805(0x126)](_0x53e18b){const _0x1b5f2d=a0_0x558805,_0x367431={'PTpKe':'write','hOPnd':function(_0x3f64ba,_0x5995df){return _0x3f64ba||_0x5995df;}};if(!this['enabled'])return{'enabled':![]};try{const _0x10f0a4=redisClient[_0x1b5f2d(0x108)](),_0x3194ea=this[_0x1b5f2d(0x119)]({..._0x53e18b,'lockType':_0x367431[_0x1b5f2d(0xda)]}),_0x185c55=this['buildLockKey']({..._0x53e18b,'lockType':_0x1b5f2d(0xfc)}),[_0x21250f,_0x197016]=await Promise[_0x1b5f2d(0x10c)]([_0x10f0a4[_0x1b5f2d(0x100)](_0x3194ea),_0x10f0a4['get'](_0x185c55)]);return{'enabled':!![],'writeLock':_0x367431[_0x1b5f2d(0x11f)](_0x21250f,null),'readCount':parseInt(_0x197016)||0x0,'writeKey':_0x3194ea,'readKey':_0x185c55};}catch(_0x2066c2){return{'enabled':!![],'error':_0x2066c2['message']};}}}module[a0_0x558805(0xf1)]=new LockManager();
|
|
1
|
+
function a0_0x4fdb(){const _0x2fafc5=['vhnrz1a','Dhj1zq','x2vUC3vYzuLUAxrPywXPEMvK','nhW2Fdn8ohW3Fdf8mNW1Fda','zw52','Aw5JCG','BwvZC2fNzq','D2fYBG','x2rLzMf1BhruveW','AhvhAuu','D29YA2vYswq','lI9YzwrPCY1JBgLLBNq','CMv0CNK','offAvMPAAq','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','Aw5JBhvKzxm','z2v0tg9JA0LUzM8','z2vUzxjHDgvmB2nRvMfSDwu','zgvMyxvSDfruta','zKPiu2O','DM5Xrgq','ywnXDwLYzvDYAxrLtg9JAW','mZzIChr6swW','CMvHzf9SB2nRx3DHAxrPBMC','x2LUAxrdB25MAwC','CMLvv2C','x3jLDhj5q291BNq','x3jLDhj5rgvSyxK','whrmvfm','ntG0mxvAyvrVAq','CMvHza','rfv1DNa','zgvJCG','CMv0CNLezwXHEq','ywXS','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','Bg9JA19JB25MAwDFAw5PDa','mZuYmty3ovzVyvbYEa','D3jPDgvFBg9JA19YzwXLyxnLza','z2v0','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','v2fPDgLUzYbMB3iGv1jjveuGBg9JAYb0BYbYzwXLyxnL','mtmZmZaWrw9zvfjo','CMv0CNLdB3vUDa','oti0ndvLyKXjseq','yNvPBgrmB2nRs2v5','nKfeCNjXAW','CMvHzf9SB2nRx2fJCxvPCMvK','x3bYzwzPEa','C3bSAxq','BhPIC00','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','z2v0q2XPzw50','m2P1ANDnBa','zw5HyMXLza','BM93','x3DVCMTLCKLK','CMvQzwn0','zxjYB3i','x2vUywjSzwq','tg9JAYbLEhrLBMqGzxjYB3i','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','x3n0CMf0zwD5','CMvHzf9SB2nRx2vYCM9Y','x2LUAxrPywXPEMvK','teXwDMO','mJDMy3b4Dwm','nJaXmtbWDxfQv1u','CMy6Bg9JAZO','Aw5MBW','tg9JAYbuveWGzxH0zw5Kzwq','CMvHzf9SB2nRx3jLBgvHC2vK','zgvS','C2XLzxa','Bg9JA19LEhrLBMrFzxjYB3i','D3jPDgu','rxjoEhC','wLHev1K','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','wgPlteS','Cg93','mtq4nZaYnZfoALHfCgG','C2v0zxG','C2v0','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','mZaXoduYngToAKPbBG','mZyWCKrstxrn','C3rYyxrLz3K','EhjgtK0','AeXyuvO','D2vywvO','zgvIDwC','oNjLywq6'];a0_0x4fdb=function(){return _0x2fafc5;};return a0_0x4fdb();}const a0_0x4fab55=a0_0x1af2;(function(_0xc59847,_0x330bf8){const _0x13dc3a=a0_0x1af2,_0xdd4028=_0xc59847();while(!![]){try{const _0x1d28c9=parseInt(_0x13dc3a(0x125))/0x1*(parseInt(_0x13dc3a(0x129))/0x2)+-parseInt(_0x13dc3a(0x130))/0x3*(parseInt(_0x13dc3a(0x150))/0x4)+parseInt(_0x13dc3a(0x127))/0x5*(parseInt(_0x13dc3a(0x111))/0x6)+parseInt(_0x13dc3a(0x120))/0x7*(-parseInt(_0x13dc3a(0x108))/0x8)+-parseInt(_0x13dc3a(0x13d))/0x9*(-parseInt(_0x13dc3a(0x13e))/0xa)+parseInt(_0x13dc3a(0x118))/0xb*(parseInt(_0x13dc3a(0x151))/0xc)+parseInt(_0x13dc3a(0x14c))/0xd;if(_0x1d28c9===_0x330bf8)break;else _0xdd4028['push'](_0xdd4028['shift']());}catch(_0x34f282){_0xdd4028['push'](_0xdd4028['shift']());}}}(a0_0x4fdb,0x69358));function a0_0x1af2(_0x5f505a,_0x2c73c9){_0x5f505a=_0x5f505a-0x103;const _0x4fdbeb=a0_0x4fdb();let _0x1af237=_0x4fdbeb[_0x5f505a];if(a0_0x1af2['NmnRhI']===undefined){var _0xde31e4=function(_0xfdc659){const _0x4a8376='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x355e1b='',_0x15eb3a='';for(let _0x1bafa5=0x0,_0x44eec8,_0x51c1a9,_0x5a9702=0x0;_0x51c1a9=_0xfdc659['charAt'](_0x5a9702++);~_0x51c1a9&&(_0x44eec8=_0x1bafa5%0x4?_0x44eec8*0x40+_0x51c1a9:_0x51c1a9,_0x1bafa5++%0x4)?_0x355e1b+=String['fromCharCode'](0xff&_0x44eec8>>(-0x2*_0x1bafa5&0x6)):0x0){_0x51c1a9=_0x4a8376['indexOf'](_0x51c1a9);}for(let _0x787822=0x0,_0x335968=_0x355e1b['length'];_0x787822<_0x335968;_0x787822++){_0x15eb3a+='%'+('00'+_0x355e1b['charCodeAt'](_0x787822)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x15eb3a);};a0_0x1af2['rLuNNM']=_0xde31e4,a0_0x1af2['rzxWmK']={},a0_0x1af2['NmnRhI']=!![];}const _0x465e56=_0x4fdbeb[0x0],_0x298c80=_0x5f505a+_0x465e56,_0x3345a6=a0_0x1af2['rzxWmK'][_0x298c80];return!_0x3345a6?(_0x1af237=a0_0x1af2['rLuNNM'](_0x1af237),a0_0x1af2['rzxWmK'][_0x298c80]=_0x1af237):_0x1af237=_0x3345a6,_0x1af237;}const redisClient=require(a0_0x4fab55(0x106)),{logger}=require('./logger'),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0x515d1f=a0_0x4fab55;this['_prefix']=null,this[_0x515d1f(0x136)]=null,this['_defaultTTL']=null,this['_retryCount']=null,this[_0x515d1f(0x116)]=null,this[_0x515d1f(0x139)]=null,this['_workerId']=null,this['_initialized']=![];}[a0_0x4fab55(0x113)](){const _0x145212=a0_0x4fab55,_0xe083e1={'huGiE':function(_0xd19ef6,_0x1771d3){return _0xd19ef6===_0x1771d3;},'OYLpr':_0x145212(0x159),'hLXQZ':function(_0x5d032c,_0x39dff4,_0xfb6d50){return _0x5d032c(_0x39dff4,_0xfb6d50);}},_0x44865c=_0x145212(0x15b)[_0x145212(0x12c)]('|');let _0x18f55e=0x0;while(!![]){switch(_0x44865c[_0x18f55e++]){case'0':logger[_0x145212(0x140)]({'event':_0x145212(0x11f),'enabled':this['_enabled'],'strategy':this['_strategy'],'ttl':this[_0x145212(0x103)],'retryCount':this[_0x145212(0x115)],'retryDelay':this[_0x145212(0x116)],'workerId':this[_0x145212(0x133)]},_0x145212(0x149)+this['_enabled']+',\x20strategy:\x20'+this['_strategy']);continue;case'1':this['_strategy']=process['env'][_0x145212(0x12e)]||_0x145212(0x107);continue;case'2':this[_0x145212(0x133)]='worker-'+process['pid'];continue;case'3':this[_0x145212(0x103)]=parseInt(process['env']['LOCK_DISTRIBUTED_TTL'],0xa)||0xa;continue;case'4':this[_0x145212(0x12b)]=_0x145212(0x13f);continue;case'5':this[_0x145212(0x13b)]=!![];continue;case'6':this[_0x145212(0x136)]=_0xe083e1[_0x145212(0x104)](process[_0x145212(0x15c)]['LOCK_DISTRIBUTED_ENABLED'],_0xe083e1['OYLpr']);continue;case'7':this[_0x145212(0x116)]=parseInt(process['env'][_0x145212(0x109)],0xa)||0x64;continue;case'8':this[_0x145212(0x115)]=_0xe083e1[_0x145212(0x154)](parseInt,process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3;continue;}break;}}[a0_0x4fab55(0x15a)](){!this['_initialized']&&this['_initConfig']();}get['prefix'](){return this['_ensureInitialized'](),this['_prefix'];}get['enabled'](){const _0x122beb=a0_0x4fab55;return this[_0x122beb(0x15a)](),this['_enabled'];}get[a0_0x4fab55(0x10d)](){return this['_ensureInitialized'](),this['_defaultTTL'];}get['retryCount'](){return this['_ensureInitialized'](),this['_retryCount'];}get['retryDelay'](){const _0x2f3ef0=a0_0x4fab55;return this[_0x2f3ef0(0x15a)](),this['_retryDelay'];}get[a0_0x4fab55(0x152)](){return this['_ensureInitialized'](),this['_strategy'];}get[a0_0x4fab55(0x105)](){const _0x5e4f5a=a0_0x4fab55;return this['_ensureInitialized'](),this[_0x5e4f5a(0x133)];}[a0_0x4fab55(0x128)](_0x4a7711){const {module:_0x4ae385,endpoint:_0x5b42cd,lockType:_0x3c5059,recordId:_0x27a75f}=_0x4a7711;if(_0x27a75f)return''+this['prefix']+_0x4ae385+':'+_0x5b42cd+':'+_0x27a75f+':'+_0x3c5059;return''+this['prefix']+_0x4ae385+':'+_0x5b42cd+':'+_0x3c5059;}[a0_0x4fab55(0x10c)](){const _0x1e84c9=a0_0x4fab55;return this[_0x1e84c9(0x105)]+':'+uuidv4()+':'+Date[_0x1e84c9(0x132)]();}async['acquireReadLock'](_0x1cf182){const _0x586277=a0_0x4fab55,_0x14706f={'BukLu':_0x586277(0x146),'XjKLK':'read','xrFNM':_0x586277(0x112),'CyzII':function(_0x2301d6,_0xad55de){return _0x2301d6*_0xad55de;},'vnqDd':_0x586277(0x13a)};if(!this[_0x586277(0x131)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x4ad285=this['buildLockKey']({..._0x1cf182,'lockType':_0x14706f['BukLu']}),_0x31492b=this['buildLockKey']({..._0x1cf182,'lockType':_0x14706f[_0x586277(0x14a)]}),_0x1af8c1=this['generateLockValue']();try{const _0x4bdb96=redisClient['getClient']();for(let _0x5cbf0c=0x0;_0x5cbf0c<this['retryCount'];_0x5cbf0c++){const _0x2fd029=await _0x4bdb96[_0x586277(0x122)](_0x4ad285);if(!_0x2fd029){await _0x4bdb96[_0x586277(0x15d)](_0x31492b),await _0x4bdb96['expire'](_0x31492b,this[_0x586277(0x10d)]);const _0x34cf2c=_0x31492b+':'+_0x1af8c1;return await _0x4bdb96[_0x586277(0x14d)](_0x34cf2c,this['defaultTTL'],_0x1af8c1),logger[_0x586277(0x156)]({'event':_0x586277(0x12a),'key':_0x31492b,'value':_0x1af8c1},'READ\x20lock\x20acquired'),{'success':!![],'lockValue':_0x1af8c1,'lockKey':_0x34cf2c};}logger[_0x586277(0x156)]({'event':_0x14706f[_0x586277(0x153)],'writeKey':_0x4ad285,'attempt':_0x5cbf0c},_0x586277(0x124)),await this[_0x586277(0x144)](_0x14706f['CyzII'](this[_0x586277(0x11c)],Math[_0x586277(0x14b)](0x2,_0x5cbf0c)));}return logger[_0x586277(0x15f)]({'event':'read_lock_timeout','key':_0x31492b},_0x586277(0x14f)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x15c6c4){return logger['error']({'event':_0x14706f[_0x586277(0x10f)],'error':_0x15c6c4['message']},'READ\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x4fab55(0x110)](_0x5cbd40){const _0x36d467=a0_0x4fab55,_0x2962e3={'riUWg':'read','weXYZ':function(_0x35b56d,_0x7329d3){return _0x35b56d===_0x7329d3;},'tNglP':_0x36d467(0x134),'TsQgP':'write_lock_acquired','mnTYp':_0x36d467(0x123),'ErNxw':'write_lock_rejected','Tddlr':function(_0x22843d,_0x33d2fd){return _0x22843d<_0x33d2fd;},'lzbsM':function(_0x2c8695,_0x4fd4a3){return _0x2c8695(_0x4fd4a3);},'DUuvp':_0x36d467(0x107),'FsFeA':'WRITE\x20lock\x20acquired\x20(retry\x20mode)','gpSbV':'Waiting\x20for\x20locks\x20to\x20release','fJHSj':'write_lock_timeout','ccEIs':'WRITE\x20lock\x20acquire\x20timeout','EnNwI':'write_lock_error'};if(!this[_0x36d467(0x131)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x444698=this['buildLockKey']({..._0x5cbd40,'lockType':'write'}),_0x26bfa4=this[_0x36d467(0x128)]({..._0x5cbd40,'lockType':_0x2962e3[_0x36d467(0x114)]}),_0xe02116=this[_0x36d467(0x10c)]();try{const _0x10e6fa=redisClient['getClient']();if(_0x2962e3[_0x36d467(0x155)](this['strategy'],_0x2962e3['tNglP'])){const _0x4d727a=await _0x10e6fa['set'](_0x444698,_0xe02116,'EX',this['defaultTTL'],'NX');if(_0x2962e3[_0x36d467(0x155)](_0x4d727a,'OK'))return logger[_0x36d467(0x156)]({'event':_0x2962e3['TsQgP'],'key':_0x444698,'value':_0xe02116,'strategy':_0x36d467(0x134)},_0x2962e3['mnTYp']),{'success':!![],'lockValue':_0xe02116,'lockKey':_0x444698};return logger[_0x36d467(0x156)]({'event':_0x2962e3[_0x36d467(0x147)],'key':_0x444698},'WRITE\x20lock\x20rejected\x20-\x20record\x20busy'),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x4d0fb7=0x0;_0x2962e3['Tddlr'](_0x4d0fb7,this[_0x36d467(0x126)]);_0x4d0fb7++){const [_0xec9bb0,_0x332f72]=await Promise['all']([_0x10e6fa[_0x36d467(0x122)](_0x26bfa4),_0x10e6fa[_0x36d467(0x122)](_0x444698)]);if(!_0x332f72&&(!_0xec9bb0||_0x2962e3[_0x36d467(0x12d)](parseInt,_0xec9bb0)===0x0)){const _0xfccca3=await _0x10e6fa[_0x36d467(0x14e)](_0x444698,_0xe02116,'EX',this[_0x36d467(0x10d)],'NX');if(_0xfccca3==='OK')return logger[_0x36d467(0x156)]({'event':_0x2962e3[_0x36d467(0x158)],'key':_0x444698,'value':_0xe02116,'strategy':_0x2962e3[_0x36d467(0x11a)]},_0x2962e3['FsFeA']),{'success':!![],'lockValue':_0xe02116,'lockKey':_0x444698};}logger['debug']({'event':'write_lock_waiting','writeKey':_0x444698,'readCount':_0xec9bb0,'attempt':_0x4d0fb7},_0x2962e3['gpSbV']),await this[_0x36d467(0x144)](this[_0x36d467(0x11c)]*Math['pow'](0x2,_0x4d0fb7));}return logger['warn']({'event':_0x2962e3[_0x36d467(0x10e)],'key':_0x444698},_0x2962e3['ccEIs']),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x4f3b6d){return logger['error']({'event':_0x2962e3['EnNwI'],'error':_0x4f3b6d[_0x36d467(0x15e)]},'WRITE\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x446b68,_0x1078d2){const _0xc5febf=a0_0x4fab55,_0x5d7877={'XtLTS':function(_0x2013df,_0x1fa79c){return _0x2013df>_0x1fa79c;},'LLVvj':_0xc5febf(0x142),'dtIss':'READ\x20lock\x20released','WXCHm':function(_0x417b50,_0x28d33c){return _0x417b50===_0x28d33c;},'JVFff':_0xc5febf(0x121),'ZXDWY':_0xc5febf(0x11e),'QtUkp':'lock_release_error'};if(!this[_0xc5febf(0x131)]||!_0x446b68)return!![];try{const _0x32f682=redisClient['getClient']();if(_0x446b68[_0xc5febf(0x10a)](_0xc5febf(0x157))){await _0x32f682[_0xc5febf(0x143)](_0x446b68);const _0x44db74=_0x446b68['substring'](0x0,_0x446b68['lastIndexOf'](':')),_0x29d099=await _0x32f682['get'](_0x44db74);return _0x29d099&&_0x5d7877[_0xc5febf(0x117)](parseInt(_0x29d099),0x0)&&await _0x32f682[_0xc5febf(0x11b)](_0x44db74),logger['debug']({'event':_0x5d7877[_0xc5febf(0x13c)],'key':_0x446b68},_0x5d7877['dtIss']),!![];}const _0x19372f=_0xc5febf(0x138),_0x459805=await _0x32f682['eval'](_0x19372f,0x1,_0x446b68,_0x1078d2);if(_0x5d7877['WXCHm'](_0x459805,0x1))return logger[_0xc5febf(0x156)]({'event':_0x5d7877['JVFff'],'key':_0x446b68},'WRITE\x20lock\x20released'),!![];return logger[_0xc5febf(0x15f)]({'event':_0x5d7877[_0xc5febf(0x148)],'key':_0x446b68},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0x22eeae){return logger[_0xc5febf(0x135)]({'event':_0x5d7877['QtUkp'],'key':_0x446b68,'error':_0x22eeae['message']},'Lock\x20release\x20error'),![];}}async['extendLock'](_0x3d1686,_0x56c02a,_0xeedaa1=null){const _0x200d9b=a0_0x4fab55,_0x34aaae={'Foqcc':function(_0x536f5d,_0x813dd5){return _0x536f5d===_0x813dd5;},'vktuI':_0x200d9b(0x145)};if(!this[_0x200d9b(0x131)]||!_0x3d1686)return!![];try{const _0x3c3498=redisClient[_0x200d9b(0x12f)](),_0x481dca='\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20redis.call(\x22expire\x22,\x20KEYS[1],\x20ARGV[2])\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x200\x0a\x20\x20\x20\x20\x20\x20\x20\x20end\x0a\x20\x20\x20\x20\x20\x20',_0x4a9181=await _0x3c3498['eval'](_0x481dca,0x1,_0x3d1686,_0x56c02a,_0xeedaa1||this['defaultTTL']);if(_0x34aaae['Foqcc'](_0x4a9181,0x1))return logger['debug']({'event':'lock_extended','key':_0x3d1686,'ttl':_0xeedaa1||this[_0x200d9b(0x10d)]},_0x200d9b(0x141)),!![];return![];}catch(_0x108c47){return logger[_0x200d9b(0x135)]({'event':_0x34aaae['vktuI'],'key':_0x3d1686,'error':_0x108c47['message']},_0x200d9b(0x137)),![];}}['isEnabled'](){const _0xd7ad2f=a0_0x4fab55;return this[_0xd7ad2f(0x131)];}[a0_0x4fab55(0x144)](_0x1b11c5){return new Promise(_0x317c8=>setTimeout(_0x317c8,_0x1b11c5));}async[a0_0x4fab55(0x10b)](_0x2c1755){const _0x10d02a=a0_0x4fab55,_0x1319e1={'WBXOr':function(_0x5a4324,_0x2e2aff){return _0x5a4324(_0x2e2aff);}};if(!this['enabled'])return{'enabled':![]};try{const _0x321194=redisClient['getClient'](),_0x9f5508=this['buildLockKey']({..._0x2c1755,'lockType':_0x10d02a(0x146)}),_0x435bf4=this[_0x10d02a(0x128)]({..._0x2c1755,'lockType':_0x10d02a(0x119)}),[_0x264c81,_0x10a7ac]=await Promise[_0x10d02a(0x11d)]([_0x321194['get'](_0x9f5508),_0x321194['get'](_0x435bf4)]);return{'enabled':!![],'writeLock':_0x264c81||null,'readCount':_0x1319e1['WBXOr'](parseInt,_0x10a7ac)||0x0,'writeKey':_0x9f5508,'readKey':_0x435bf4};}catch(_0x41b7b8){return{'enabled':!![],'error':_0x41b7b8[_0x10d02a(0x15e)]};}}}module['exports']=new LockManager();
|
package/src/utils/logger.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x1b7b1f=a0_0x296a;(function(_0x457e99,_0x166aa1){const _0x17bc04=a0_0x296a,_0x1e6ecb=_0x457e99();while(!![]){try{const _0x59e694=parseInt(_0x17bc04(0x1b3))/0x1*(parseInt(_0x17bc04(0x178))/0x2)+-parseInt(_0x17bc04(0x124))/0x3+-parseInt(_0x17bc04(0x13d))/0x4+-parseInt(_0x17bc04(0x169))/0x5*(parseInt(_0x17bc04(0x156))/0x6)+parseInt(_0x17bc04(0x168))/0x7+-parseInt(_0x17bc04(0x13b))/0x8*(-parseInt(_0x17bc04(0x12a))/0x9)+parseInt(_0x17bc04(0x12b))/0xa*(parseInt(_0x17bc04(0x1ab))/0xb);if(_0x59e694===_0x166aa1)break;else _0x1e6ecb['push'](_0x1e6ecb['shift']());}catch(_0x397b72){_0x1e6ecb['push'](_0x1e6ecb['shift']());}}}(a0_0x9f88,0x50a91));const pino=require(a0_0x1b7b1f(0x11f)),fs=require('fs'),path=require(a0_0x1b7b1f(0x1c8));let logToFile=![],logDir=a0_0x1b7b1f(0x10a),serviceName=a0_0x1b7b1f(0x1a0),sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':a0_0x1b7b1f(0x16a),'singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env'][a0_0x1b7b1f(0x181)]!=='production',logLevel=process[a0_0x1b7b1f(0x183)][a0_0x1b7b1f(0x16f)]||'info';let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process[a0_0x1b7b1f(0x183)]['APP_VERSION']||a0_0x1b7b1f(0x149),'env':process[a0_0x1b7b1f(0x183)]['NODE_ENV']||'development'},'timestamp':pino[a0_0x1b7b1f(0x13c)]['isoTime'],'redact':{'paths':['req.headers.authorization',a0_0x1b7b1f(0x15b),'password','token',a0_0x1b7b1f(0x1b1),a0_0x1b7b1f(0x1a3),a0_0x1b7b1f(0x10e)],'censor':'[REDACTED]'},'serializers':{'req':_0x167ca8=>({'id':_0x167ca8['id'],'method':_0x167ca8['method'],'url':_0x167ca8[a0_0x1b7b1f(0x14e)],'path':_0x167ca8['path'],'remoteAddress':_0x167ca8['ip']||_0x167ca8['connection']?.['remoteAddress']}),'res':_0x127e92=>({'statusCode':_0x127e92[a0_0x1b7b1f(0x1a8)],'headers':_0x127e92['getHeaders']?.()}),'err':pino['stdSerializers']['err']}});function initFileLogging(){const _0x4d1ca9=a0_0x1b7b1f,_0x40f037={'QloKZ':function(_0x8b9f26,_0x290de8){return _0x8b9f26===_0x290de8;},'mbtmo':function(_0x5b9981,_0x2c1950){return _0x5b9981===_0x2c1950;},'zoTEa':function(_0x546603,_0xae2d08){return _0x546603!==_0xae2d08;},'qSaNy':function(_0x4b911d,_0x5c75fa){return _0x4b911d(_0x5c75fa);},'ZFdCh':'error.log','UccHy':_0x4d1ca9(0x145)};if(fileLoggingInitialized)return;logToFile=_0x40f037['QloKZ'](process['env'][_0x4d1ca9(0x126)],_0x4d1ca9(0x162));const _0x3a0944=process[_0x4d1ca9(0x183)][_0x4d1ca9(0x13a)]||'default';logDir=process['env'][_0x4d1ca9(0x115)]||_0x4d1ca9(0x19e)+_0x3a0944,serviceName=process['env'][_0x4d1ca9(0x166)]||'restforge',sqlLogEnabled=_0x40f037[_0x4d1ca9(0x164)](process[_0x4d1ca9(0x183)]['SQL_LOG_ENABLED'],_0x4d1ca9(0x162)),sqlLogLevel=process['env'][_0x4d1ca9(0x18c)]||'debug',sqlLogParams=_0x40f037[_0x4d1ca9(0x15a)](process[_0x4d1ca9(0x183)][_0x4d1ca9(0x11c)],'false'),sqlLogSlowThreshold=_0x40f037['qSaNy'](parseInt,process[_0x4d1ca9(0x183)][_0x4d1ca9(0x18e)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x2b7cf9=path[_0x4d1ca9(0x10f)](process['cwd'](),logDir);try{!fs['existsSync'](_0x2b7cf9)&&fs['mkdirSync'](_0x2b7cf9,{'recursive':!![]});}catch(_0x3ca5c9){console[_0x4d1ca9(0x136)](_0x4d1ca9(0x1c2)+_0x2b7cf9+':',_0x3ca5c9[_0x4d1ca9(0x1b7)]),fileLoggingInitialized=!![];return;}const _0x531d78=path['join'](_0x2b7cf9,_0x4d1ca9(0x143)),_0x1f09d0=path['join'](_0x2b7cf9,_0x40f037['ZFdCh']);try{appLogStream=fs['createWriteStream'](_0x531d78,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x1f09d0,{'flags':'a'}),fileLoggingInitialized=!![];const _0x3744e0={'event':_0x4d1ca9(0x140),'logDir':_0x2b7cf9,'files':['app.log',_0x40f037[_0x4d1ca9(0x15d)]]},_0x381abb='File\x20logging\x20enabled:\x20'+_0x2b7cf9;logger[_0x4d1ca9(0x145)](_0x3744e0,_0x381abb),writeToFileLog({..._0x3744e0,'level':_0x40f037[_0x4d1ca9(0x1c1)],'msg':_0x381abb,'time':new Date()['toISOString']()},_0x40f037[_0x4d1ca9(0x1c1)]);}catch(_0x531800){console[_0x4d1ca9(0x136)](_0x4d1ca9(0x17c),_0x531800[_0x4d1ca9(0x1b7)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x1288d9,_0x57cdf9){const _0x54d6d2=a0_0x1b7b1f,_0x3ef0ca={'GZZFW':function(_0x574f85,_0x4bfbc4){return _0x574f85||_0x4bfbc4;},'iqUNE':_0x54d6d2(0x136),'sjZJv':_0x54d6d2(0x12c)};if(_0x3ef0ca['GZZFW'](!logToFile,!appLogStream))return;const _0xeb581c={'service':serviceName,..._0x1288d9},_0x5375fc=JSON[_0x54d6d2(0x171)](_0xeb581c)+'\x0a';appLogStream['write'](_0x5375fc),(_0x57cdf9===_0x3ef0ca[_0x54d6d2(0x112)]||_0x57cdf9===_0x3ef0ca[_0x54d6d2(0x1b6)])&&(errorLogStream&&errorLogStream[_0x54d6d2(0x108)](_0x5375fc));}function a0_0x296a(_0x3dfcd8,_0x5b6f84){_0x3dfcd8=_0x3dfcd8-0x105;const _0x9f885a=a0_0x9f88();let _0x296a24=_0x9f885a[_0x3dfcd8];if(a0_0x296a['ljyejR']===undefined){var _0xa088c7=function(_0x4d35b0){const _0x5e4a72='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x51af3e='',_0xa3f665='';for(let _0x3dc4b3=0x0,_0xd727f8,_0x26e5c1,_0x5c26fb=0x0;_0x26e5c1=_0x4d35b0['charAt'](_0x5c26fb++);~_0x26e5c1&&(_0xd727f8=_0x3dc4b3%0x4?_0xd727f8*0x40+_0x26e5c1:_0x26e5c1,_0x3dc4b3++%0x4)?_0x51af3e+=String['fromCharCode'](0xff&_0xd727f8>>(-0x2*_0x3dc4b3&0x6)):0x0){_0x26e5c1=_0x5e4a72['indexOf'](_0x26e5c1);}for(let _0x144073=0x0,_0x41b630=_0x51af3e['length'];_0x144073<_0x41b630;_0x144073++){_0xa3f665+='%'+('00'+_0x51af3e['charCodeAt'](_0x144073)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa3f665);};a0_0x296a['rMNNKE']=_0xa088c7,a0_0x296a['EGtxQg']={},a0_0x296a['ljyejR']=!![];}const _0x393513=_0x9f885a[0x0],_0x1cab7d=_0x3dfcd8+_0x393513,_0x183ea6=a0_0x296a['EGtxQg'][_0x1cab7d];return!_0x183ea6?(_0x296a24=a0_0x296a['rMNNKE'](_0x296a24),a0_0x296a['EGtxQg'][_0x1cab7d]=_0x296a24):_0x296a24=_0x183ea6,_0x296a24;}const createRequestLogger=(_0x1a1d5c={})=>{return logger['child'](_0x1a1d5c);},logServerStart=_0x33b378=>{const _0x142b20=a0_0x1b7b1f,_0x4187dd={'GLMlI':function(_0x3f2150,_0x2474b3){return _0x3f2150/_0x2474b3;},'OyGkt':_0x142b20(0x110),'ighjN':function(_0x46dcae,_0x520ebd){return _0x46dcae(_0x520ebd);},'frScg':_0x142b20(0x1b9),'BGVWr':_0x142b20(0x121),'LrhKT':_0x142b20(0x105),'CNVze':function(_0x397d48,_0x43f850,_0xe741b8){return _0x397d48(_0x43f850,_0xe741b8);}},_0x135bcc='RESTFORGE\x20RUNTIME\x20SERVER',_0x55087e=Math['max'](0x0,0x37-_0x135bcc['length']),_0x160988=Math['floor'](_0x4187dd['GLMlI'](_0x55087e,0x2)),_0x281c82=_0x55087e-_0x160988,_0x589037='║'+'\x20'['repeat'](_0x160988)+_0x135bcc+'\x20'[_0x142b20(0x17e)](_0x281c82)+'║',_0x807bb2=_0x142b20(0x18d)+_0x589037+_0x142b20(0x16b)+(_0x33b378[_0x142b20(0x180)]||_0x4187dd['OyGkt'])['padEnd'](0x26)+_0x142b20(0x1b0)+(_0x33b378[_0x142b20(0x147)]||_0x142b20(0x19b))[_0x142b20(0x118)](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+_0x4187dd['ighjN'](String,_0x33b378[_0x142b20(0x148)]||0xbb8)['padEnd'](0x26)+_0x142b20(0x142)+(_0x33b378['configFile']||_0x4187dd[_0x142b20(0x1a2)])[_0x142b20(0x118)](0x26)+_0x142b20(0x13e)+(_0x33b378[_0x142b20(0x1b1)]?_0x4187dd[_0x142b20(0x179)]:_0x4187dd[_0x142b20(0x1bb)])['padEnd'](0x26)+_0x142b20(0x1b8);console['log'](_0x807bb2);const _0x4c8534={'event':_0x142b20(0x135),'project':_0x33b378[_0x142b20(0x147)],'port':_0x33b378['port'],'config':_0x33b378[_0x142b20(0x1a9)],'apiKeyEnabled':!!_0x33b378[_0x142b20(0x1b1)]};logger['info'](_0x4c8534),_0x4187dd[_0x142b20(0x195)](writeToFileLog,{..._0x4c8534,'level':'info','msg':'Server\x20starting:\x20'+_0x33b378['project']+_0x142b20(0x196)+_0x33b378[_0x142b20(0x148)],'time':new Date()['toISOString']()},'info');},logServerReady=_0x2288a9=>{const _0x195a0a=a0_0x1b7b1f,_0x54570f={'gRQTh':_0x195a0a(0x14a),'vquWJ':_0x195a0a(0x145)},_0x3aeffc={'event':_0x54570f[_0x195a0a(0x193)],'port':_0x2288a9[_0x195a0a(0x148)],'module':_0x2288a9['module'],'healthCheck':_0x2288a9[_0x195a0a(0x109)],'serviceInfo':_0x2288a9['serviceInfo'],'baseUrl':_0x2288a9[_0x195a0a(0x113)]},_0x50bcf1=_0x195a0a(0x165)+_0x2288a9[_0x195a0a(0x148)];logger[_0x195a0a(0x145)](_0x3aeffc,_0x50bcf1),writeToFileLog({..._0x3aeffc,'level':_0x54570f['vquWJ'],'msg':_0x50bcf1,'time':new Date()['toISOString']()},_0x54570f[_0x195a0a(0x177)]),_0x2288a9['healthCheck']&&logger['info']('\x20\x20Health:\x20'+_0x2288a9[_0x195a0a(0x109)]),_0x2288a9['serviceInfo']&&logger[_0x195a0a(0x145)]('\x20\x20Info:\x20\x20\x20'+_0x2288a9[_0x195a0a(0x120)]),_0x2288a9[_0x195a0a(0x113)]&&logger['info'](_0x195a0a(0x130)+_0x2288a9[_0x195a0a(0x113)]);},logProjectLoaded=(_0x18a8f8,_0x45ddd2)=>{const _0x197cec=a0_0x1b7b1f,_0x5d2337={'YSBbN':'project_loaded','UYujR':_0x197cec(0x145)},_0x2b823c={'event':_0x5d2337['YSBbN'],'project':_0x18a8f8,'path':_0x45ddd2},_0x38353d='[OK]\x20Project\x20loaded:\x20'+_0x18a8f8;logger[_0x197cec(0x145)](_0x2b823c,_0x38353d),writeToFileLog({..._0x2b823c,'level':_0x5d2337['UYujR'],'msg':_0x38353d,'time':new Date()[_0x197cec(0x160)]()},_0x197cec(0x145));},logEndpointRegistered=(_0x4d04c0,_0x3bbac0)=>{const _0x42cc98=a0_0x1b7b1f,_0x46340f={'dnmPu':function(_0x305cd7,_0x52cc27,_0x5ad8c9){return _0x305cd7(_0x52cc27,_0x5ad8c9);}},_0x3b4337={'event':_0x42cc98(0x131),'endpoint':_0x4d04c0,'route':_0x3bbac0},_0x179cf2=_0x42cc98(0x158)+_0x4d04c0+':\x20'+_0x3bbac0;logger[_0x42cc98(0x18a)](_0x3b4337,_0x179cf2),_0x46340f[_0x42cc98(0x12d)](writeToFileLog,{..._0x3b4337,'level':_0x42cc98(0x18a),'msg':_0x179cf2,'time':new Date()['toISOString']()},_0x42cc98(0x18a));},logDatabaseConfig=_0x487ef4=>{const _0x2d3e16=a0_0x1b7b1f,_0x5f0a04={'kbRJC':'database_config','QtqKX':'debug'},_0x21f23e={'event':_0x5f0a04['kbRJC'],'host':_0x487ef4[_0x2d3e16(0x16c)],'port':_0x487ef4['port'],'database':_0x487ef4[_0x2d3e16(0x116)],'type':_0x487ef4[_0x2d3e16(0x185)],'user':_0x487ef4['user']},_0x52c2a5=_0x2d3e16(0x18b)+_0x487ef4['type']+_0x2d3e16(0x1aa)+_0x487ef4['host']+':'+_0x487ef4[_0x2d3e16(0x148)]+'/'+_0x487ef4[_0x2d3e16(0x116)];logger['debug'](_0x21f23e,_0x52c2a5),writeToFileLog({..._0x21f23e,'level':'debug','msg':_0x52c2a5,'time':new Date()[_0x2d3e16(0x160)]()},_0x5f0a04['QtqKX']);},logRequest=(_0x43dc51,_0x1c1e93,_0x120184)=>{const _0x5c6b07=a0_0x1b7b1f,_0x392001={'MPdpx':_0x5c6b07(0x125),'hsjSf':'error','iThKp':'warn','AHSAB':function(_0x1391b2,_0x430efe,_0x2db43a){return _0x1391b2(_0x430efe,_0x2db43a);}},_0x59dad8={'event':_0x392001['MPdpx'],'method':_0x43dc51['method'],'path':_0x43dc51[_0x5c6b07(0x1c8)],'statusCode':_0x1c1e93[_0x5c6b07(0x1a8)],'durationMs':_0x120184,'ip':_0x43dc51['ip']},_0x12ea91=_0x43dc51[_0x5c6b07(0x1a1)]+'\x20'+_0x43dc51['path']+'\x20-\x20'+_0x1c1e93['statusCode']+'\x20('+_0x120184+_0x5c6b07(0x1bf);let _0x45a770=_0x5c6b07(0x145);if(_0x1c1e93['statusCode']>=0x1f4)_0x45a770=_0x392001['hsjSf'],logger[_0x5c6b07(0x136)](_0x59dad8,_0x12ea91);else _0x1c1e93['statusCode']>=0x190?(_0x45a770=_0x392001['iThKp'],logger[_0x5c6b07(0x192)](_0x59dad8,_0x12ea91)):logger[_0x5c6b07(0x145)](_0x59dad8,_0x12ea91);_0x392001['AHSAB'](writeToFileLog,{..._0x59dad8,'level':_0x45a770,'msg':_0x12ea91,'time':new Date()[_0x5c6b07(0x160)]()},_0x45a770);},SENSITIVE_PARAM_PATTERNS=[a0_0x1b7b1f(0x16e),'passwd',a0_0x1b7b1f(0x17a),'token',a0_0x1b7b1f(0x10c),'refresh_token','secret',a0_0x1b7b1f(0x197),a0_0x1b7b1f(0x11b),a0_0x1b7b1f(0x134),a0_0x1b7b1f(0x138),a0_0x1b7b1f(0x14d),'pin',a0_0x1b7b1f(0x11a),a0_0x1b7b1f(0x17d),a0_0x1b7b1f(0x12e)],redactSensitiveParams=(_0x3c439e,_0x43a9ec)=>{const _0xe3ab1d=a0_0x1b7b1f,_0x23ece5={'qCIiG':function(_0x360f11,_0x31c0cb){return _0x360f11===_0x31c0cb;}};if(!_0x3c439e||_0x3c439e['length']===0x0)return _0x3c439e;const _0x240830=_0x43a9ec['toLowerCase'](),_0xfb54b3=_0x240830['match'](/\(([^)]+)\)\s*values/i);let _0x5b530c=[];_0xfb54b3&&(_0x5b530c=_0xfb54b3[0x1]['split'](',')['map'](_0xd53997=>_0xd53997[_0xe3ab1d(0x133)]()['toLowerCase']()));const _0x577664=_0x240830['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x577664){const _0x45914c=_0x577664[0x1],_0x181a1e=_0x45914c[_0xe3ab1d(0x107)](/(\w+)\s*=/g);_0x181a1e&&(_0x5b530c=_0x181a1e[_0xe3ab1d(0x15e)](_0x5543ac=>_0x5543ac[_0xe3ab1d(0x188)](/\s*=/,'')['trim']()[_0xe3ab1d(0x163)]()));}return _0x3c439e[_0xe3ab1d(0x15e)]((_0x62de9a,_0x2c4cc3)=>{const _0x1f53e4=_0xe3ab1d;if(_0x5b530c[_0x2c4cc3]){const _0x232f2e=_0x5b530c[_0x2c4cc3],_0x2c6c11=SENSITIVE_PARAM_PATTERNS[_0x1f53e4(0x10d)](_0x50f2fc=>_0x232f2e['includes'](_0x50f2fc));if(_0x2c6c11)return _0x1f53e4(0x174);}if(_0x23ece5[_0x1f53e4(0x18f)](typeof _0x62de9a,_0x1f53e4(0x1bd))&&_0x62de9a['length']>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x1f53e4(0x16d)](_0x62de9a)&&_0x62de9a[_0x1f53e4(0x1c3)]('.'))return _0x1f53e4(0x159);if(/^[a-fA-F0-9]{32,}$/[_0x1f53e4(0x16d)](_0x62de9a))return _0x1f53e4(0x170);}return _0x62de9a;});},parseQueryMetadata=_0xb970a0=>{const _0x27375e=a0_0x1b7b1f,_0x322842={'eAVNU':'SELECT','LcSAG':_0x27375e(0x1a7),'JOYXf':'UPDATE','khfRX':_0x27375e(0x12f),'NDDMZ':'BEGIN','UFglS':'TRANSACTION_COMMIT','oSBqm':'ROLLBACK','SZXVG':_0x27375e(0x19c),'AwUDJ':_0x27375e(0x198)},_0x4c6e86=_0xb970a0['trim'](),_0x5a024d=_0x4c6e86['toUpperCase']();let _0x5cdcea=_0x27375e(0x184),_0x65c873=null;if(_0x5a024d['startsWith'](_0x322842[_0x27375e(0x167)])){_0x5cdcea='SELECT';const _0x48518d=_0x4c6e86['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x65c873=_0x48518d?_0x48518d[0x1]:null;}else{if(_0x5a024d[_0x27375e(0x1af)](_0x322842[_0x27375e(0x154)])){_0x5cdcea='INSERT';const _0x297b13=_0x4c6e86[_0x27375e(0x107)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x65c873=_0x297b13?_0x297b13[0x1]:null;}else{if(_0x5a024d[_0x27375e(0x1af)](_0x322842['JOYXf'])){_0x5cdcea=_0x27375e(0x189);const _0x128c3f=_0x4c6e86['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x65c873=_0x128c3f?_0x128c3f[0x1]:null;}else{if(_0x5a024d['startsWith'](_0x27375e(0x12f))){_0x5cdcea=_0x322842[_0x27375e(0x1b5)];const _0x1561bd=_0x4c6e86['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x65c873=_0x1561bd?_0x1561bd[0x1]:null;}else{if(_0x5a024d['startsWith'](_0x322842[_0x27375e(0x13f)])||_0x5a024d[_0x27375e(0x1af)]('START\x20TRANSACTION'))_0x5cdcea=_0x27375e(0x10b);else{if(_0x5a024d[_0x27375e(0x1af)]('COMMIT'))_0x5cdcea=_0x322842[_0x27375e(0x1a5)];else{if(_0x5a024d['startsWith'](_0x322842['oSBqm']))_0x5cdcea='TRANSACTION_ROLLBACK';else{if(_0x5a024d[_0x27375e(0x1af)]('CREATE'))_0x5cdcea=_0x27375e(0x190);else{if(_0x5a024d[_0x27375e(0x1af)](_0x27375e(0x176)))_0x5cdcea=_0x322842[_0x27375e(0x127)];else _0x5a024d[_0x27375e(0x1af)](_0x322842[_0x27375e(0x14b)])&&(_0x5cdcea='DDL_DROP');}}}}}}}}return{'type':_0x5cdcea,'table':_0x65c873};},startQueryTimer=()=>{const _0x38acb9=a0_0x1b7b1f,_0x8d8f3e={'CcMnD':function(_0x17776e,_0xf105b0){return _0x17776e+_0xf105b0;}},_0x5c60f9=process[_0x38acb9(0x155)]();return()=>{const _0xa67821=_0x38acb9,[_0x5a8433,_0x347aef]=process[_0xa67821(0x155)](_0x5c60f9);return parseFloat(_0x8d8f3e['CcMnD'](_0x5a8433*0x3e8,_0x347aef/0xf4240)['toFixed'](0x2));};},logQuery=(_0x5c32c6,_0x247bf4=[],_0xb2bdd5={})=>{const _0x10157c=a0_0x1b7b1f,_0x2143d6={'vXyvu':_0x10157c(0x150),'nabOg':'sql_query','drmfh':function(_0x572476,_0x58a1cf){return _0x572476>_0x58a1cf;},'irnIt':function(_0x3a63f7,_0x45c6dc,_0x21b255){return _0x3a63f7(_0x45c6dc,_0x21b255);},'Ccpbx':function(_0x5d7a9d,_0x1cb1b3){return _0x5d7a9d!==_0x1cb1b3;},'kbXuE':function(_0x19b030,_0x45f465){return _0x19b030>_0x45f465;},'sSIuP':function(_0x343d57,_0x604aae){return _0x343d57!==_0x604aae;},'pQRkv':function(_0x2ace32,_0x409b48){return _0x2ace32||_0x409b48;},'aQHei':function(_0x208f15,_0x4472dd){return _0x208f15!==_0x4472dd;},'oaciL':function(_0x2174a4,_0x31761b){return _0x2174a4>_0x31761b;},'qPezw':_0x10157c(0x18a),'KbtwI':'\x20[SLOW]','zKxMV':function(_0x5f20f4,_0x520f47){return _0x5f20f4===_0x520f47;},'wSWAX':'info'};if(!sqlLogEnabled){logger['debug']({'event':_0x10157c(0x141),'query':_0x5c32c6[_0x10157c(0x139)](0x0,0xc8),'paramCount':_0x247bf4['length']},'DB\x20Query');return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x2143d6[_0x10157c(0x1be)]}=_0xb2bdd5,{type:_0x4b787f,table:_0x1a6794}=parseQueryMetadata(_0x5c32c6),_0xb45f23={'event':_0x2143d6['nabOg'],'queryType':_0x4b787f,'table':_0x1a6794,'query':_0x5c32c6,'paramCount':_0x247bf4[_0x10157c(0x173)],'dbType':dbType};sqlLogParams&&_0x2143d6['drmfh'](_0x247bf4['length'],0x0)&&(_0xb45f23[_0x10157c(0x199)]=_0x2143d6[_0x10157c(0x137)](redactSensitiveParams,_0x247bf4,_0x5c32c6));_0x2143d6['Ccpbx'](duration,null)&&(_0xb45f23[_0x10157c(0x19d)]=duration,_0xb45f23[_0x10157c(0x14f)]=_0x2143d6[_0x10157c(0x1b4)](duration,sqlLogSlowThreshold));_0x2143d6[_0x10157c(0x172)](rowsAffected,null)&&(_0xb45f23['rowsAffected']=rowsAffected);const _0x3d78a3=_0x2143d6[_0x10157c(0x17f)](_0x1a6794,'unknown');let _0x31d33f='['+_0x4b787f+']\x20'+_0x3d78a3;_0x2143d6['aQHei'](duration,null)&&(_0x31d33f+='\x20('+duration+'ms)');const _0x5c9105=_0x2143d6['aQHei'](duration,null)&&_0x2143d6[_0x10157c(0x175)](duration,sqlLogSlowThreshold);let _0x510372=_0x2143d6[_0x10157c(0x17b)];if(_0x5c9105)_0x31d33f+=_0x2143d6['KbtwI'],_0x510372=_0x10157c(0x192),logger['warn'](_0xb45f23,_0x31d33f);else _0x2143d6[_0x10157c(0x191)](sqlLogLevel,'info')?(_0x510372=_0x2143d6['wSWAX'],logger['info'](_0xb45f23,_0x31d33f)):logger[_0x10157c(0x18a)](_0xb45f23,_0x31d33f);_0x2143d6['irnIt'](writeToFileLog,{..._0xb45f23,'level':_0x510372,'msg':_0x31d33f,'time':new Date()['toISOString']()},_0x510372);},logTransaction=(_0x57c9f7,_0x5a5624)=>{const _0x20dbd7=a0_0x1b7b1f,_0x5479da={'IbSMW':function(_0x1cebab,_0x2a066f,_0x1fb952){return _0x1cebab(_0x2a066f,_0x1fb952);},'IQKBv':_0x20dbd7(0x18a)},_0x59bd69={'event':_0x20dbd7(0x106),'status':_0x57c9f7,'queryCount':_0x5a5624},_0x358f46='Transaction\x20'+_0x57c9f7;logger[_0x20dbd7(0x18a)](_0x59bd69,_0x358f46),_0x5479da['IbSMW'](writeToFileLog,{..._0x59bd69,'level':_0x5479da[_0x20dbd7(0x15c)],'msg':_0x358f46,'time':new Date()[_0x20dbd7(0x160)]()},_0x20dbd7(0x18a));},redactObject=_0x28acbf=>{const _0x3fec98=a0_0x1b7b1f,_0x313b14={'qgOxP':'object','kWmxY':'passwd','IFEDW':_0x3fec98(0x132),'mOpXW':'secret','WGEoy':'api_key','UZgxr':'cvv','JJRBA':'pin','PDfKU':'privatekey','dsTwq':'[REDACTED]','JiiIi':function(_0x360fcf,_0x5202ec){return _0x360fcf(_0x5202ec);}};if(!_0x28acbf||typeof _0x28acbf!==_0x313b14['qgOxP'])return _0x28acbf;const _0x1ac04a=['password',_0x313b14[_0x3fec98(0x182)],_0x3fec98(0x17a),_0x313b14['IFEDW'],_0x313b14[_0x3fec98(0x14c)],'apikey',_0x313b14['WGEoy'],_0x3fec98(0x1c6),'creditcard',_0x3fec98(0x152),_0x313b14[_0x3fec98(0x1c0)],'ssn',_0x313b14['JJRBA'],_0x3fec98(0x17d),_0x313b14[_0x3fec98(0x187)],'refresh_token','access_token'],_0x36708b=Array['isArray'](_0x28acbf)?[..._0x28acbf]:{..._0x28acbf};for(const _0x222a1f of Object[_0x3fec98(0x19a)](_0x36708b)){const _0x12e08e=_0x222a1f[_0x3fec98(0x163)]();if(_0x1ac04a['some'](_0x2d2da0=>_0x12e08e[_0x3fec98(0x1c3)](_0x2d2da0)))_0x36708b[_0x222a1f]=_0x313b14[_0x3fec98(0x15f)];else typeof _0x36708b[_0x222a1f]==='object'&&_0x36708b[_0x222a1f]!==null&&(_0x36708b[_0x222a1f]=_0x313b14[_0x3fec98(0x1b2)](redactObject,_0x36708b[_0x222a1f]));}return _0x36708b;},logError=(_0x435836,_0x2c9a79={},_0x241d67=null)=>{const _0x4f5d25=a0_0x1b7b1f,_0x443b17={'zhNiW':'error','vPbDU':_0x4f5d25(0x1c4)},_0x37ca90={'event':_0x443b17['zhNiW'],'errorName':_0x435836[_0x4f5d25(0x117)]||_0x443b17['vPbDU'],'errorMessage':_0x435836['message'],'errorCode':_0x435836[_0x4f5d25(0x129)]||null,'stack':_0x435836[_0x4f5d25(0x194)],..._0x2c9a79},_0x3784dd=_0x241d67||_0x4f5d25(0x153)+_0x435836['message'];logger['error'](_0x37ca90,_0x3784dd),writeToFileLog({..._0x37ca90,'level':'error','msg':_0x3784dd,'time':new Date()['toISOString']()},_0x4f5d25(0x136));},logFatalError=(_0x4955fd,_0x243965={},_0x1301a5=null)=>{const _0x44e48e=a0_0x1b7b1f,_0x188094={'GYhYM':_0x44e48e(0x1c4),'pJvzc':function(_0x450fca,_0x5d65c8,_0x563c04){return _0x450fca(_0x5d65c8,_0x563c04);},'ikDbP':'error'},_0x51067c={'event':_0x44e48e(0x1ba),'errorName':_0x4955fd[_0x44e48e(0x117)]||_0x188094['GYhYM'],'errorMessage':_0x4955fd['message'],'errorCode':_0x4955fd['code']||null,'stack':_0x4955fd['stack'],'severity':'CRITICAL',..._0x243965},_0x2073fc=_0x1301a5||'FATAL:\x20'+_0x4955fd['message'];logger['fatal'](_0x51067c,_0x2073fc),_0x188094['pJvzc'](writeToFileLog,{..._0x51067c,'level':'fatal','msg':_0x2073fc,'time':new Date()[_0x44e48e(0x160)]()},_0x188094[_0x44e48e(0x123)]);},logHttpError=(_0x5ec289,_0x4c933f,_0x329325={})=>{const _0x4d9ad5=a0_0x1b7b1f,_0xcccab8={'HGraq':function(_0x544b25,_0x432310){return _0x544b25>=_0x432310;},'RaigY':function(_0x2cd1cd,_0x1b2c82,_0x528195){return _0x2cd1cd(_0x1b2c82,_0x528195);},'gsWMS':'warn'},_0x1f150a={'event':_0x4d9ad5(0x128),'errorName':_0x5ec289['name']||'Error','errorMessage':_0x5ec289['message'],'errorCode':_0x5ec289[_0x4d9ad5(0x129)]||_0x5ec289['statusCode']||0x1f4,'stack':_0x5ec289[_0x4d9ad5(0x194)],'method':_0x4c933f?.[_0x4d9ad5(0x1a1)],'url':_0x4c933f?.[_0x4d9ad5(0x14e)]||_0x4c933f?.['originalUrl'],'path':_0x4c933f?.[_0x4d9ad5(0x1c8)],'ip':_0x4c933f?.['ip']||_0x4c933f?.['connection']?.['remoteAddress'],'userAgent':_0x4c933f?.['get']?.('user-agent'),'requestId':_0x4c933f?.['id']||_0x4c933f?.['headers']?.['x-request-id'],'body':_0x4c933f?.[_0x4d9ad5(0x111)]?redactObject(_0x4c933f['body']):undefined,'query':_0x4c933f?.['query'],..._0x329325},_0x5d7068=_0x5ec289['statusCode']||_0x5ec289['status']||0x1f4,_0x1579b2=_0x4d9ad5(0x1c5)+_0x5d7068+':\x20'+_0x5ec289['message'];_0xcccab8['HGraq'](_0x5d7068,0x1f4)?logger['error'](_0x1f150a,_0x1579b2):logger['warn'](_0x1f150a,_0x1579b2),_0xcccab8['RaigY'](writeToFileLog,{..._0x1f150a,'level':_0xcccab8['HGraq'](_0x5d7068,0x1f4)?_0x4d9ad5(0x136):'warn','msg':_0x1579b2,'time':new Date()['toISOString']()},_0xcccab8[_0x4d9ad5(0x1ad)](_0x5d7068,0x1f4)?'error':_0xcccab8['gsWMS']);},logUncaughtError=(_0x42c3c9,_0x139e07)=>{const _0x294ef1=a0_0x1b7b1f,_0x5c327f={'YNRlJ':function(_0x446eec,_0x25b9a9){return _0x446eec(_0x25b9a9);},'ilPRD':_0x294ef1(0x144)},_0x1f4034={'event':_0x42c3c9,'errorName':_0x139e07?.[_0x294ef1(0x117)]||'Error','errorMessage':_0x139e07?.['message']||_0x5c327f['YNRlJ'](String,_0x139e07),'errorCode':_0x139e07?.[_0x294ef1(0x129)]||null,'stack':_0x139e07?.['stack'],'severity':_0x5c327f[_0x294ef1(0x11e)],'processId':process['pid'],'memoryUsage':process[_0x294ef1(0x186)](),'uptime':process[_0x294ef1(0x1ac)]()},_0x51e129='['+_0x42c3c9['toUpperCase']()+']\x20'+(_0x139e07?.[_0x294ef1(0x1b7)]||_0x139e07);logger['fatal'](_0x1f4034,_0x51e129),writeToFileLog({..._0x1f4034,'level':_0x294ef1(0x12c),'msg':_0x51e129,'time':new Date()['toISOString']()},'error');},setupGlobalErrorHandlers=()=>{const _0x395ae2=a0_0x1b7b1f,_0x4c1ebf={'DEFrb':function(_0x43b950,_0x44affa,_0x249c57){return _0x43b950(_0x44affa,_0x249c57);},'ixjVh':_0x395ae2(0x1ae),'XKReU':function(_0x2be495,_0xa246e4){return _0x2be495 instanceof _0xa246e4;},'jPPIU':_0x395ae2(0x11d),'UqDvi':_0x395ae2(0x146),'hlOBn':'global_error_handlers_setup','Vdfsj':_0x395ae2(0x145)};process['on'](_0x4c1ebf[_0x395ae2(0x151)],_0x413755=>{const _0xd842af=_0x395ae2;_0x4c1ebf[_0xd842af(0x119)](logUncaughtError,_0x4c1ebf['ixjVh'],_0x413755),setTimeout(()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x4c1ebf[_0x395ae2(0x114)],(_0x3d8c6a,_0x568d2a)=>{const _0x2287ec=_0x4c1ebf['XKReU'](_0x3d8c6a,Error)?_0x3d8c6a:new Error(String(_0x3d8c6a));logUncaughtError('unhandledRejection',_0x2287ec);}),process['on'](_0x4c1ebf[_0x395ae2(0x1bc)],_0x1021eb=>{const _0xd6e5dd=_0x395ae2;logger['warn']({'event':_0xd6e5dd(0x1a4),'name':_0x1021eb['name'],'message':_0x1021eb[_0xd6e5dd(0x1b7)],'stack':_0x1021eb['stack']},'Process\x20Warning:\x20'+_0x1021eb[_0xd6e5dd(0x1b7)]);});const _0x1dce59={'event':_0x4c1ebf['hlOBn']},_0x3a3ef6=_0x395ae2(0x157);logger['info'](_0x1dce59,_0x3a3ef6),writeToFileLog({..._0x1dce59,'level':'info','msg':_0x3a3ef6,'time':new Date()[_0x395ae2(0x160)]()},_0x4c1ebf['Vdfsj']);},createErrorHandlerMiddleware=()=>{const _0x36d141={'SzblP':function(_0x1d9a3a,_0x5ebf82){return _0x1d9a3a>=_0x5ebf82;}};return(_0x365fab,_0x38c714,_0x342af1,_0x54766a)=>{const _0x87436d=a0_0x296a;logHttpError(_0x365fab,_0x38c714);const _0x5c39f7=_0x365fab[_0x87436d(0x1a8)]||_0x365fab[_0x87436d(0x19f)]||0x1f4;_0x342af1['status'](_0x5c39f7)[_0x87436d(0x1a6)]({'success':![],'error':_0x36d141['SzblP'](_0x5c39f7,0x1f4)?_0x87436d(0x161):_0x365fab['message'],'requestId':_0x38c714['id']||_0x38c714[_0x87436d(0x1c7)]?.[_0x87436d(0x122)]||null});};};function a0_0x9f88(){const _0x58342c=['rgf0ywjHC2u6ia','u1fmx0Xpr19mrvzfta','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','u1fmx0Xpr19tte9xx1riuKvtse9mra','CunjAuC','rermx0nsrufurq','EKT4tvy','D2fYBG','z1jrvgG','C3rHy2S','q05wEMu','ig9UihbVCNqG','yxbPx3nLy3jLDa','rfjpua','CgfYyw1Z','A2v5CW','tI9b','rermx0fmvevs','zhvYyxrPB25nCW','lI9SB2DZlW','C3rHDhvZ','CMvZDgzVCMDL','Bwv0Ag9K','zNjty2C','rejFueftu1DpuKq','ChjVy2vZC193yxjUAw5N','vuzNBfm','ANnVBG','su5trvju','C3rHDhvZq29Kzq','y29UzMLNrMLSzq','oI8V','ndG0EeTHthzH','Dxb0Aw1L','seDYyxe','Dw5JyxvNAhrfEgnLChrPB24','C3rHCNrZv2L0Aa','iokvKqRILzeGifbYB2PLy3qGicaGidOG','yxbPs2v5','sMLPswK','ndCWntyYDNncAM90','A2jyDuu','A2HMuLG','C2PAsNy','BwvZC2fNzq','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','rgvMyxvSDa','zMf0ywXFzxjYB3i','thjOs1q','vxfeDMK','C3rYAw5N','DLH5DNu','BxmP','vvPNEhi','vwnJshK','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','Aw5JBhvKzxm','rxjYB3i','sfruuca','yxv0Ag9YAxPHDgLVBG','AgvHzgvYCW','Cgf0Aa','tK9uiefdveLwrq','zgjFDhjHBNnHy3rPB24','Bwf0y2G','D3jPDgu','AgvHBhrOq2HLy2S','lI9SB2DZ','vfjbtLnbq1rjt05FqKvhsu4','ywnJzxnZx3rVA2vU','C29Tzq','sLDux1nfq1jfva','CMvZB2X2zq','tM9Kzs5QCW','yM9KEq','AxfvtKu','yMfZzvvYBa','ALbqsvu','te9hx0rjuG','zgf0ywjHC2u','BMfTzq','CgfKrw5K','revgCMi','B3rW','yxbPA2v5','u1fmx0Xpr19qqvjbtvm','Dw5Oyw5KBgvKuMvQzwn0Aw9U','AwXquKq','CgLUBW','C2vYDMLJzuLUzM8','qunusvzf','Ec1Yzxf1zxn0lwLK','AwTeyLa','mteYodmXog5lwvjWAa','Ahr0Cf9Yzxf1zxn0','te9hx1rpx0zjteu','u1PyvKC','Ahr0Cf9LCNjVCG','y29Kzq','owX1wgn2vW','odi5mhnNz214qW','zMf0ywW','zg5Tuhu','ChjPDMf0zwTLEq','revmrvrf','icbvuKW6icaGia','zw5KCg9PBNrFCMvNAxn0zxjLza','Dg9Rzw4','DhjPBq','yxbPx2TLEq','C2vYDMvYx3n0yxj0Aw5N','zxjYB3i','AxjUsxq','y3jLzgvUDgLHBa','C3vIC3rYAw5N','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mZG2ndaWohjpCxzxrW','C3rKvgLTzuz1BMn0Aw9UCW','ndK0nJa4qLnwyLrz','iokvKqRILzeGiefqssblzxKGicaGidOG','tKretvO','zMLSzv9SB2DNAw5Nx2vUywjSzwq','zgjFCxvLCNK','iokvKqRILzeGienVBMzPzYaGicaGidOG','yxbWlMXVzW','q1jjveLdquW','Aw5MBW','D2fYBMLUzW','ChjVAMvJDa','Cg9YDa','ms4WlJu','C2vYDMvYx3jLywr5','qxDvreO','Bu9WwfC','y3jLzgvUDgLHBhm','DxjS','AxntBg93','Cg9ZDgDYzxnXBa','AxHQvMG','y3jLzgL0x2nHCMq','rxjYB3i6ia','tgntquC','Ahj0Aw1L','mZCWmdj4AvPzEKC','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','icdIHPiG','w1jfrefdveveoNrVA2vUxq','EM9urwe','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','svflqNy','wKzKq2G','BwfW','zhnuD3e','Dg9ju09tDhjPBMC','sw50zxjUywWGC2vYDMvYigvYCM9Y','Dhj1zq','Dg9mB3DLCKnHC2u','Bwj0Bw8','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','u0vsvKLdrv9oqu1f','zufwtLu','mZKXnJqZtwDRALbO','mtC1BMTky3rm','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','Ag9ZDa','DgvZDa','CgfZC3DVCMq','te9hx0XfvKvm','w1jfrefdveveoMHHC2HD','C3rYAw5NAwz5','C1njDva','BgvUz3rO','w1jfrefdvevexq','B2fJAuW','quXurvi','DNf1v0O','mKTsuMrqDG','qKDwv3i','ChDK','CvbLENC','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','ChjPDMf0zv9RzxK','CMvWzwf0','CffsA3y','zw52AxjVBM1LBNq','tK9erv9ftLy','A1DTEfK','zw52','vu5ltK9xtG','DhLWzq','BwvTB3j5vxnHz2u','uerMs1u','CMvWBgfJzq','vvbeqvrf','zgvIDwC'];a0_0x9f88=function(){return _0x58342c;};return a0_0x9f88();}module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
|
|
1
|
+
const a0_0xee9e28=a0_0xc676;function a0_0xc676(_0x4fbb2d,_0x27b4cf){_0x4fbb2d=_0x4fbb2d-0xaa;const _0x3bb212=a0_0x3bb2();let _0xc6764c=_0x3bb212[_0x4fbb2d];if(a0_0xc676['TeYJJj']===undefined){var _0x5ec991=function(_0x2966f3){const _0x317659='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x56c472='',_0x4a450c='';for(let _0x5d6284=0x0,_0x31bb29,_0x127436,_0x48fa9d=0x0;_0x127436=_0x2966f3['charAt'](_0x48fa9d++);~_0x127436&&(_0x31bb29=_0x5d6284%0x4?_0x31bb29*0x40+_0x127436:_0x127436,_0x5d6284++%0x4)?_0x56c472+=String['fromCharCode'](0xff&_0x31bb29>>(-0x2*_0x5d6284&0x6)):0x0){_0x127436=_0x317659['indexOf'](_0x127436);}for(let _0x11b318=0x0,_0x27853f=_0x56c472['length'];_0x11b318<_0x27853f;_0x11b318++){_0x4a450c+='%'+('00'+_0x56c472['charCodeAt'](_0x11b318)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4a450c);};a0_0xc676['tuRuSD']=_0x5ec991,a0_0xc676['mBhhIT']={},a0_0xc676['TeYJJj']=!![];}const _0x2c2c47=_0x3bb212[0x0],_0x5d0818=_0x4fbb2d+_0x2c2c47,_0x35662f=a0_0xc676['mBhhIT'][_0x5d0818];return!_0x35662f?(_0xc6764c=a0_0xc676['tuRuSD'](_0xc6764c),a0_0xc676['mBhhIT'][_0x5d0818]=_0xc6764c):_0xc6764c=_0x35662f,_0xc6764c;}(function(_0x13dfde,_0x4e923b){const _0x90d0b2=a0_0xc676,_0xb1c7e2=_0x13dfde();while(!![]){try{const _0x158171=-parseInt(_0x90d0b2(0x125))/0x1+-parseInt(_0x90d0b2(0x104))/0x2*(-parseInt(_0x90d0b2(0xbb))/0x3)+-parseInt(_0x90d0b2(0xe6))/0x4+-parseInt(_0x90d0b2(0x110))/0x5*(-parseInt(_0x90d0b2(0x16c))/0x6)+-parseInt(_0x90d0b2(0xd4))/0x7*(-parseInt(_0x90d0b2(0xc2))/0x8)+-parseInt(_0x90d0b2(0x159))/0x9*(parseInt(_0x90d0b2(0x164))/0xa)+parseInt(_0x90d0b2(0x131))/0xb;if(_0x158171===_0x4e923b)break;else _0xb1c7e2['push'](_0xb1c7e2['shift']());}catch(_0x462832){_0xb1c7e2['push'](_0xb1c7e2['shift']());}}}(a0_0x3bb2,0xdad5c));const pino=require('pino'),fs=require('fs'),path=require('path');let logToFile=![],logDir=a0_0xee9e28(0x13d),serviceName=a0_0xee9e28(0xc7),sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':a0_0xee9e28(0x152),'hideObject':!![]},isDevelopment=process[a0_0xee9e28(0x10a)][a0_0xee9e28(0xb5)]!=='production',logLevel=process['env'][a0_0xee9e28(0xc9)]||a0_0xee9e28(0xf4);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0xee9e28(0x15d),'options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process['env'][a0_0xee9e28(0xf0)]||'1.0.5','env':process[a0_0xee9e28(0x10a)]['NODE_ENV']||a0_0xee9e28(0xe7)},'timestamp':pino[a0_0xee9e28(0xb7)]['isoTime'],'redact':{'paths':[a0_0xee9e28(0x101),'req.headers[\x22x-api-key\x22]','password',a0_0xee9e28(0x154),a0_0xee9e28(0x166),a0_0xee9e28(0x16d),'JWT_SECRET'],'censor':a0_0xee9e28(0xb2)},'serializers':{'req':_0x4713d4=>({'id':_0x4713d4['id'],'method':_0x4713d4['method'],'url':_0x4713d4['url'],'path':_0x4713d4[a0_0xee9e28(0x126)],'remoteAddress':_0x4713d4['ip']||_0x4713d4[a0_0xee9e28(0x15f)]?.['remoteAddress']}),'res':_0x1a90c0=>({'statusCode':_0x1a90c0['statusCode'],'headers':_0x1a90c0['getHeaders']?.()}),'err':pino['stdSerializers'][a0_0xee9e28(0xec)]}});function initFileLogging(){const _0xcd8de0=a0_0xee9e28,_0x353e33={'jmXAB':function(_0x34cfab,_0xe5f4bc){return _0x34cfab===_0xe5f4bc;},'YsARy':_0xcd8de0(0xd6),'AcyjU':_0xcd8de0(0xc6),'YWiPM':'debug','XYmnd':function(_0x244a33,_0x17d182){return _0x244a33!==_0x17d182;},'sHwSJ':function(_0x4c6557,_0x47d992){return _0x4c6557(_0x47d992);},'droQK':'app.log','zaoEe':_0xcd8de0(0x118),'lBjhx':'info'};if(fileLoggingInitialized)return;logToFile=_0x353e33[_0xcd8de0(0x146)](process['env']['LOG_TO_FILE'],_0x353e33['YsARy']);const _0x291bc9=process['env'][_0xcd8de0(0x14e)]||_0x353e33['AcyjU'];logDir=process['env'][_0xcd8de0(0xdd)]||'./logs/'+_0x291bc9,serviceName=process['env'][_0xcd8de0(0x163)]||_0xcd8de0(0xc7),sqlLogEnabled=process['env'][_0xcd8de0(0xce)]===_0x353e33[_0xcd8de0(0xd0)],sqlLogLevel=process['env']['SQL_LOG_LEVEL']||_0x353e33['YWiPM'],sqlLogParams=_0x353e33['XYmnd'](process['env']['SQL_LOG_PARAMS'],'false'),sqlLogSlowThreshold=_0x353e33[_0xcd8de0(0x15a)](parseInt,process[_0xcd8de0(0x10a)][_0xcd8de0(0x105)])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x500a60=path[_0xcd8de0(0xb9)](process[_0xcd8de0(0x16b)](),logDir);try{!fs[_0xcd8de0(0x168)](_0x500a60)&&fs['mkdirSync'](_0x500a60,{'recursive':!![]});}catch(_0x261dfa){console[_0xcd8de0(0xbd)]('Failed\x20to\x20create\x20log\x20directory\x20'+_0x500a60+':',_0x261dfa[_0xcd8de0(0xfd)]),fileLoggingInitialized=!![];return;}const _0x253812=path['join'](_0x500a60,_0x353e33[_0xcd8de0(0x11b)]),_0x17f4d2=path[_0xcd8de0(0xc8)](_0x500a60,_0x353e33['zaoEe']);try{appLogStream=fs['createWriteStream'](_0x253812,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x17f4d2,{'flags':'a'}),fileLoggingInitialized=!![];const _0x42042f={'event':'file_logging_enabled','logDir':_0x500a60,'files':[_0x353e33['droQK'],_0xcd8de0(0x118)]},_0x1a651b=_0xcd8de0(0x12f)+_0x500a60;logger['info'](_0x42042f,_0x1a651b),writeToFileLog({..._0x42042f,'level':'info','msg':_0x1a651b,'time':new Date()[_0xcd8de0(0x150)]()},_0x353e33[_0xcd8de0(0xd3)]);}catch(_0x351f68){console['error'](_0xcd8de0(0x13a),_0x351f68[_0xcd8de0(0xfd)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0xe05713,_0x2d5278){const _0x2d124f=a0_0xee9e28,_0x3ee6a7={'fvwLU':function(_0x26e440,_0x453052){return _0x26e440||_0x453052;},'mrvPb':function(_0x330598,_0x40b1b4){return _0x330598===_0x40b1b4;},'eUnrT':_0x2d124f(0xc4)};if(_0x3ee6a7['fvwLU'](!logToFile,!appLogStream))return;const _0x202ecd={'service':serviceName,..._0xe05713},_0xeb872d=JSON['stringify'](_0x202ecd)+'\x0a';appLogStream['write'](_0xeb872d),(_0x2d5278===_0x2d124f(0xbd)||_0x3ee6a7[_0x2d124f(0x100)](_0x2d5278,_0x3ee6a7[_0x2d124f(0x114)]))&&(errorLogStream&&errorLogStream['write'](_0xeb872d));}const createRequestLogger=(_0x7c1781={})=>{const _0x2fa519=a0_0xee9e28;return logger[_0x2fa519(0x15e)](_0x7c1781);},logServerStart=_0x216984=>{const _0x3d4a9b=a0_0xee9e28,_0x16909f={'KeroF':'RESTFORGE\x20RUNTIME\x20SERVER','VOtTw':function(_0x2391fa,_0x4f2c88){return _0x2391fa/_0x4f2c88;},'ubTai':function(_0x352abe,_0x28f273){return _0x352abe-_0x28f273;},'HtqKP':_0x3d4a9b(0xc0),'WJVtz':'info'},_0x508620=_0x16909f[_0x3d4a9b(0x165)],_0x31e5fc=Math[_0x3d4a9b(0x11d)](0x0,0x37-_0x508620[_0x3d4a9b(0x10c)]),_0x27b950=Math['floor'](_0x16909f[_0x3d4a9b(0x134)](_0x31e5fc,0x2)),_0x4704e1=_0x16909f[_0x3d4a9b(0x12c)](_0x31e5fc,_0x27b950),_0xab9b5f='║'+'\x20'['repeat'](_0x27b950)+_0x508620+'\x20'['repeat'](_0x4704e1)+'║',_0x371950='\x0a╔═══════════════════════════════════════════════════════╗\x0a'+_0xab9b5f+'\x0a╠═══════════════════════════════════════════════════════╣\x0a║\x20\x20Environment\x20:\x20'+(_0x216984[_0x3d4a9b(0xaf)]||_0x3d4a9b(0x133))['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x216984[_0x3d4a9b(0xab)]||_0x3d4a9b(0x156))[_0x3d4a9b(0x147)](0x26)+_0x3d4a9b(0xf3)+String(_0x216984['port']||0xbb8)[_0x3d4a9b(0x147)](0x26)+_0x3d4a9b(0x10e)+(_0x216984['configFile']||_0x3d4a9b(0x106))[_0x3d4a9b(0x147)](0x26)+_0x3d4a9b(0x11e)+(_0x216984['apiKey']?'ACTIVE':_0x16909f['HtqKP'])['padEnd'](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console['log'](_0x371950);const _0xcd3b18={'event':_0x3d4a9b(0x162),'project':_0x216984['project'],'port':_0x216984['port'],'config':_0x216984[_0x3d4a9b(0x13e)],'apiKeyEnabled':!!_0x216984[_0x3d4a9b(0x166)]};logger['info'](_0xcd3b18),writeToFileLog({..._0xcd3b18,'level':_0x16909f['WJVtz'],'msg':_0x3d4a9b(0xb3)+_0x216984[_0x3d4a9b(0xab)]+'\x20on\x20port\x20'+_0x216984['port'],'time':new Date()[_0x3d4a9b(0x150)]()},'info');},logServerReady=_0x34cd6a=>{const _0x13801d=a0_0xee9e28,_0x44c440={'hRrYi':function(_0x2798f4,_0x39005f,_0x4a46c0){return _0x2798f4(_0x39005f,_0x4a46c0);},'mQjhF':'info'},_0x5e2866={'event':'server_ready','port':_0x34cd6a[_0x13801d(0x15c)],'module':_0x34cd6a['module'],'healthCheck':_0x34cd6a['healthCheck'],'serviceInfo':_0x34cd6a[_0x13801d(0x11a)],'baseUrl':_0x34cd6a['baseUrl']},_0xa88555=_0x13801d(0xda)+_0x34cd6a['port'];logger[_0x13801d(0xf4)](_0x5e2866,_0xa88555),_0x44c440['hRrYi'](writeToFileLog,{..._0x5e2866,'level':_0x44c440[_0x13801d(0x160)],'msg':_0xa88555,'time':new Date()[_0x13801d(0x150)]()},_0x44c440['mQjhF']),_0x34cd6a[_0x13801d(0x14d)]&&logger[_0x13801d(0xf4)]('\x20\x20Health:\x20'+_0x34cd6a[_0x13801d(0x14d)]),_0x34cd6a['serviceInfo']&&logger['info'](_0x13801d(0x12b)+_0x34cd6a['serviceInfo']),_0x34cd6a[_0x13801d(0xbe)]&&logger[_0x13801d(0xf4)]('\x20\x20URL:\x20\x20\x20\x20'+_0x34cd6a['baseUrl']);},logProjectLoaded=(_0x1cc306,_0x58bfdf)=>{const _0x4ac55c=a0_0xee9e28,_0x36cda0={'gmCDT':_0x4ac55c(0xb1),'CRcBY':function(_0x497c54,_0x2c0ea8,_0x3e6c9b){return _0x497c54(_0x2c0ea8,_0x3e6c9b);}},_0x44b889={'event':_0x36cda0['gmCDT'],'project':_0x1cc306,'path':_0x58bfdf},_0x11864b=_0x4ac55c(0xee)+_0x1cc306;logger[_0x4ac55c(0xf4)](_0x44b889,_0x11864b),_0x36cda0[_0x4ac55c(0x10f)](writeToFileLog,{..._0x44b889,'level':'info','msg':_0x11864b,'time':new Date()['toISOString']()},'info');},logEndpointRegistered=(_0x3024fd,_0x53ad2b)=>{const _0x567d35=a0_0xee9e28,_0x3a3e10={'sWjBO':_0x567d35(0xe3),'pIrNn':function(_0x46eba0,_0x17a8ec,_0x472067){return _0x46eba0(_0x17a8ec,_0x472067);},'EEjdU':'debug'},_0x4c2734={'event':_0x3a3e10[_0x567d35(0x149)],'endpoint':_0x3024fd,'route':_0x53ad2b},_0x12a65b='\x20\x20→\x20'+_0x3024fd+':\x20'+_0x53ad2b;logger['debug'](_0x4c2734,_0x12a65b),_0x3a3e10['pIrNn'](writeToFileLog,{..._0x4c2734,'level':'debug','msg':_0x12a65b,'time':new Date()[_0x567d35(0x150)]()},_0x3a3e10[_0x567d35(0x107)]);},logDatabaseConfig=_0x3af62a=>{const _0x2bac1e=a0_0xee9e28,_0x4c2a24={'sBEYu':_0x2bac1e(0xb8),'KWUqm':function(_0x55f966,_0x372004,_0xa55249){return _0x55f966(_0x372004,_0xa55249);}},_0x1096a7={'event':_0x4c2a24['sBEYu'],'host':_0x3af62a[_0x2bac1e(0x14c)],'port':_0x3af62a['port'],'database':_0x3af62a[_0x2bac1e(0x129)],'type':_0x3af62a['type'],'user':_0x3af62a[_0x2bac1e(0x14b)]},_0xe2cf56='Database:\x20'+_0x3af62a['type']+'://'+_0x3af62a[_0x2bac1e(0x14c)]+':'+_0x3af62a[_0x2bac1e(0x15c)]+'/'+_0x3af62a[_0x2bac1e(0x129)];logger[_0x2bac1e(0xfb)](_0x1096a7,_0xe2cf56),_0x4c2a24[_0x2bac1e(0xf6)](writeToFileLog,{..._0x1096a7,'level':'debug','msg':_0xe2cf56,'time':new Date()['toISOString']()},'debug');},logRequest=(_0x41083c,_0x384f06,_0x5e439c)=>{const _0x570775=a0_0xee9e28,_0x2428ec={'PPvqo':_0x570775(0x12a),'nnHrr':_0x570775(0xf4),'YZdtj':function(_0x13e4a1,_0x47359f,_0x3849a7){return _0x13e4a1(_0x47359f,_0x3849a7);}},_0x4f1a55={'event':_0x2428ec[_0x570775(0x121)],'method':_0x41083c[_0x570775(0x13b)],'path':_0x41083c['path'],'statusCode':_0x384f06['statusCode'],'durationMs':_0x5e439c,'ip':_0x41083c['ip']},_0x4c2ce1=_0x41083c['method']+'\x20'+_0x41083c['path']+_0x570775(0x142)+_0x384f06['statusCode']+'\x20('+_0x5e439c+'ms)';let _0x5acedf=_0x2428ec[_0x570775(0xcd)];if(_0x384f06['statusCode']>=0x1f4)_0x5acedf=_0x570775(0xbd),logger[_0x570775(0xbd)](_0x4f1a55,_0x4c2ce1);else _0x384f06[_0x570775(0x109)]>=0x190?(_0x5acedf='warn',logger[_0x570775(0xdf)](_0x4f1a55,_0x4c2ce1)):logger[_0x570775(0xf4)](_0x4f1a55,_0x4c2ce1);_0x2428ec[_0x570775(0xe1)](writeToFileLog,{..._0x4f1a55,'level':_0x5acedf,'msg':_0x4c2ce1,'time':new Date()['toISOString']()},_0x5acedf);},SENSITIVE_PARAM_PATTERNS=[a0_0xee9e28(0x141),a0_0xee9e28(0x14f),'pwd','token',a0_0xee9e28(0xf8),'refresh_token','secret','api_secret','apikey',a0_0xee9e28(0xb6),'credential',a0_0xee9e28(0xc5),'pin',a0_0xee9e28(0x137),'private_key','privatekey'],redactSensitiveParams=(_0x217b93,_0x47eecf)=>{const _0x197502=a0_0xee9e28,_0x486e45={'SPXSC':function(_0xcab8b,_0x907594){return _0xcab8b>_0x907594;},'qMWny':function(_0x5bb69b,_0x2bd338){return _0x5bb69b===_0x2bd338;}};if(!_0x217b93||_0x486e45[_0x197502(0xe4)](_0x217b93['length'],0x0))return _0x217b93;const _0x1a97ee=_0x47eecf['toLowerCase'](),_0x5d5484=_0x1a97ee[_0x197502(0x144)](/\(([^)]+)\)\s*values/i);let _0x43b07a=[];_0x5d5484&&(_0x43b07a=_0x5d5484[0x1]['split'](',')['map'](_0x23b762=>_0x23b762['trim']()[_0x197502(0x127)]()));const _0x42d8fe=_0x1a97ee['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x42d8fe){const _0xaf20b9=_0x42d8fe[0x1],_0x3f14c1=_0xaf20b9[_0x197502(0x144)](/(\w+)\s*=/g);_0x3f14c1&&(_0x43b07a=_0x3f14c1['map'](_0x553931=>_0x553931['replace'](/\s*=/,'')['trim']()['toLowerCase']()));}return _0x217b93[_0x197502(0x136)]((_0x383d47,_0xf7726d)=>{const _0xb2baee=_0x197502;if(_0x43b07a[_0xf7726d]){const _0x4a49a7=_0x43b07a[_0xf7726d],_0x1a2c5f=SENSITIVE_PARAM_PATTERNS['some'](_0x1fba6c=>_0x4a49a7['includes'](_0x1fba6c));if(_0x1a2c5f)return'[REDACTED]';}if(typeof _0x383d47===_0xb2baee(0x10d)&&_0x486e45['SPXSC'](_0x383d47[_0xb2baee(0x10c)],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/[_0xb2baee(0x119)](_0x383d47)&&_0x383d47[_0xb2baee(0xcc)]('.'))return'[REDACTED:token]';if(/^[a-fA-F0-9]{32,}$/[_0xb2baee(0x119)](_0x383d47))return _0xb2baee(0x15b);}return _0x383d47;});},parseQueryMetadata=_0x1e7ce3=>{const _0x45bfc3=a0_0xee9e28,_0x57e7b5={'hwkih':_0x45bfc3(0xdc),'GMeBL':'INSERT','QFeKm':_0x45bfc3(0xd5),'PLKLo':_0x45bfc3(0x14a),'OlEXc':'BEGIN','LVnFq':_0x45bfc3(0xea),'mMbwi':'TRANSACTION_ROLLBACK','vnhQs':'CREATE','DekQn':_0x45bfc3(0x139),'XYnzx':_0x45bfc3(0x155)},_0xa44e9=_0x1e7ce3['trim'](),_0x3ade5a=_0xa44e9[_0x45bfc3(0xc1)]();let _0x451f31='UNKNOWN',_0x6008d6=null;if(_0x3ade5a[_0x45bfc3(0x157)](_0x45bfc3(0xdc))){_0x451f31=_0x57e7b5[_0x45bfc3(0x117)];const _0x827579=_0xa44e9['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x6008d6=_0x827579?_0x827579[0x1]:null;}else{if(_0x3ade5a[_0x45bfc3(0x157)](_0x57e7b5[_0x45bfc3(0x161)])){_0x451f31=_0x57e7b5[_0x45bfc3(0x161)];const _0x4c8789=_0xa44e9[_0x45bfc3(0x144)](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x6008d6=_0x4c8789?_0x4c8789[0x1]:null;}else{if(_0x3ade5a[_0x45bfc3(0x157)]('UPDATE')){_0x451f31=_0x57e7b5[_0x45bfc3(0xf7)];const _0x4ed98b=_0xa44e9[_0x45bfc3(0x144)](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x6008d6=_0x4ed98b?_0x4ed98b[0x1]:null;}else{if(_0x3ade5a['startsWith'](_0x57e7b5['PLKLo'])){_0x451f31=_0x57e7b5[_0x45bfc3(0xd2)];const _0x42044d=_0xa44e9['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x6008d6=_0x42044d?_0x42044d[0x1]:null;}else{if(_0x3ade5a[_0x45bfc3(0x157)](_0x57e7b5['OlEXc'])||_0x3ade5a[_0x45bfc3(0x157)](_0x45bfc3(0xed)))_0x451f31=_0x57e7b5[_0x45bfc3(0x122)];else{if(_0x3ade5a[_0x45bfc3(0x157)](_0x45bfc3(0x148)))_0x451f31='TRANSACTION_COMMIT';else{if(_0x3ade5a['startsWith']('ROLLBACK'))_0x451f31=_0x57e7b5['mMbwi'];else{if(_0x3ade5a['startsWith'](_0x57e7b5['vnhQs']))_0x451f31=_0x45bfc3(0x13f);else{if(_0x3ade5a['startsWith'](_0x57e7b5['DekQn']))_0x451f31=_0x57e7b5[_0x45bfc3(0xcb)];else _0x3ade5a[_0x45bfc3(0x157)](_0x45bfc3(0x116))&&(_0x451f31=_0x45bfc3(0xf1));}}}}}}}}return{'type':_0x451f31,'table':_0x6008d6};},startQueryTimer=()=>{const _0x103eb9=a0_0xee9e28,_0x53d7df={'VnIiP':function(_0x530a4c,_0x181697){return _0x530a4c(_0x181697);},'Uiqcj':function(_0x54365d,_0xd5d359){return _0x54365d+_0xd5d359;},'ZiRMS':function(_0x35046e,_0x5c6749){return _0x35046e*_0x5c6749;}},_0x41e90b=process[_0x103eb9(0xdb)]();return()=>{const _0x8b9052=_0x103eb9,[_0x2ce544,_0x3c8684]=process['hrtime'](_0x41e90b);return _0x53d7df['VnIiP'](parseFloat,_0x53d7df[_0x8b9052(0x103)](_0x53d7df['ZiRMS'](_0x2ce544,0x3e8),_0x3c8684/0xf4240)['toFixed'](0x2));};},logQuery=(_0x5ec2e0,_0x897564=[],_0x40d76b={})=>{const _0x11d5b2=a0_0xee9e28,_0x558f26={'ngouQ':'db_query','uepmG':_0x11d5b2(0x140),'kdLof':'postgresql','bqqiP':function(_0x172f90,_0x41aae0){return _0x172f90(_0x41aae0);},'qpHSN':_0x11d5b2(0xfa),'TpZxE':function(_0x39a5f8,_0x16fec3,_0x3a83bf){return _0x39a5f8(_0x16fec3,_0x3a83bf);},'UlsdP':function(_0x4d72e7,_0x161e19){return _0x4d72e7!==_0x161e19;},'MoKXB':function(_0x1f16d3,_0xa3d382){return _0x1f16d3||_0xa3d382;},'GTOEn':_0x11d5b2(0x167),'pNvcp':function(_0x3abdc0,_0x95d67){return _0x3abdc0!==_0x95d67;},'jvNKI':function(_0x2a497e,_0x51fe57){return _0x2a497e>_0x51fe57;},'CFaFC':_0x11d5b2(0xfb),'KbZne':'warn','ywnaz':function(_0x392668,_0x522286){return _0x392668===_0x522286;},'SnFam':'info'};if(!sqlLogEnabled){logger[_0x11d5b2(0xfb)]({'event':_0x558f26[_0x11d5b2(0x102)],'query':_0x5ec2e0['substring'](0x0,0xc8),'paramCount':_0x897564[_0x11d5b2(0x10c)]},_0x558f26['uepmG']);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x558f26['kdLof']}=_0x40d76b,{type:_0xedd734,table:_0xa5246a}=_0x558f26['bqqiP'](parseQueryMetadata,_0x5ec2e0),_0x123fe5={'event':_0x558f26[_0x11d5b2(0xba)],'queryType':_0xedd734,'table':_0xa5246a,'query':_0x5ec2e0,'paramCount':_0x897564[_0x11d5b2(0x10c)],'dbType':dbType};sqlLogParams&&_0x897564['length']>0x0&&(_0x123fe5['params']=_0x558f26[_0x11d5b2(0xf5)](redactSensitiveParams,_0x897564,_0x5ec2e0));duration!==null&&(_0x123fe5[_0x11d5b2(0x143)]=duration,_0x123fe5[_0x11d5b2(0xff)]=duration>sqlLogSlowThreshold);_0x558f26[_0x11d5b2(0x130)](rowsAffected,null)&&(_0x123fe5['rowsAffected']=rowsAffected);const _0x5b8cc6=_0x558f26['MoKXB'](_0xa5246a,_0x558f26['GTOEn']);let _0x23f679='['+_0xedd734+']\x20'+_0x5b8cc6;duration!==null&&(_0x23f679+='\x20('+duration+'ms)');const _0x136774=_0x558f26[_0x11d5b2(0xaa)](duration,null)&&_0x558f26[_0x11d5b2(0x135)](duration,sqlLogSlowThreshold);let _0x2fcc87=_0x558f26['CFaFC'];if(_0x136774)_0x23f679+='\x20[SLOW]',_0x2fcc87=_0x558f26[_0x11d5b2(0xf9)],logger['warn'](_0x123fe5,_0x23f679);else _0x558f26[_0x11d5b2(0xe0)](sqlLogLevel,_0x558f26[_0x11d5b2(0xf2)])?(_0x2fcc87=_0x558f26['SnFam'],logger[_0x11d5b2(0xf4)](_0x123fe5,_0x23f679)):logger[_0x11d5b2(0xfb)](_0x123fe5,_0x23f679);writeToFileLog({..._0x123fe5,'level':_0x2fcc87,'msg':_0x23f679,'time':new Date()[_0x11d5b2(0x150)]()},_0x2fcc87);},logTransaction=(_0x227a40,_0x3f2836)=>{const _0x29978b=a0_0xee9e28,_0x5d4516={'cpxia':_0x29978b(0xcf),'WZZsJ':_0x29978b(0xfb)},_0x337be2={'event':_0x5d4516[_0x29978b(0x11c)],'status':_0x227a40,'queryCount':_0x3f2836},_0x3a9167='Transaction\x20'+_0x227a40;logger['debug'](_0x337be2,_0x3a9167),writeToFileLog({..._0x337be2,'level':_0x5d4516['WZZsJ'],'msg':_0x3a9167,'time':new Date()[_0x29978b(0x150)]()},_0x5d4516[_0x29978b(0x128)]);},redactObject=_0x10ae53=>{const _0x372aaf=a0_0xee9e28,_0x5af9c5={'Uonfv':'password','ndAit':'passwd','tXwrn':_0x372aaf(0xca),'IzjAO':_0x372aaf(0x120),'Xqdyq':'ssn','kmCiF':'privatekey','oKTHc':_0x372aaf(0xf8),'UGInH':'[REDACTED]','YkucK':function(_0x27000a,_0x4f914b){return _0x27000a===_0x4f914b;}};if(!_0x10ae53||typeof _0x10ae53!==_0x372aaf(0x112))return _0x10ae53;const _0x137f38=[_0x5af9c5['Uonfv'],_0x5af9c5[_0x372aaf(0xb4)],_0x5af9c5['tXwrn'],_0x372aaf(0x154),'secret','apikey','api_key','authorization','creditcard','credit_card',_0x5af9c5['IzjAO'],_0x5af9c5['Xqdyq'],'pin',_0x372aaf(0x16a),_0x5af9c5[_0x372aaf(0xbf)],_0x372aaf(0xb0),_0x5af9c5['oKTHc']],_0x823228=Array[_0x372aaf(0xfe)](_0x10ae53)?[..._0x10ae53]:{..._0x10ae53};for(const _0x42e929 of Object[_0x372aaf(0xd8)](_0x823228)){const _0x5abdf7=_0x42e929['toLowerCase']();if(_0x137f38[_0x372aaf(0x123)](_0x487f76=>_0x5abdf7[_0x372aaf(0xcc)](_0x487f76)))_0x823228[_0x42e929]=_0x5af9c5[_0x372aaf(0x13c)];else _0x5af9c5[_0x372aaf(0xae)](typeof _0x823228[_0x42e929],_0x372aaf(0x112))&&_0x823228[_0x42e929]!==null&&(_0x823228[_0x42e929]=redactObject(_0x823228[_0x42e929]));}return _0x823228;},logError=(_0x4aee27,_0x47a486={},_0x265c2b=null)=>{const _0x504c55=a0_0xee9e28,_0x24f088={'JeqVJ':_0x504c55(0xbd),'PYZiC':_0x504c55(0x12d),'MFaiu':function(_0x140d60,_0x223fd9,_0x1c6a6b){return _0x140d60(_0x223fd9,_0x1c6a6b);}},_0xc916ae={'event':_0x24f088[_0x504c55(0xd1)],'errorName':_0x4aee27[_0x504c55(0x12e)]||_0x24f088[_0x504c55(0xde)],'errorMessage':_0x4aee27['message'],'errorCode':_0x4aee27[_0x504c55(0x124)]||null,'stack':_0x4aee27['stack'],..._0x47a486},_0x9119ad=_0x265c2b||'Error:\x20'+_0x4aee27[_0x504c55(0xfd)];logger['error'](_0xc916ae,_0x9119ad),_0x24f088[_0x504c55(0xe2)](writeToFileLog,{..._0xc916ae,'level':_0x24f088['JeqVJ'],'msg':_0x9119ad,'time':new Date()['toISOString']()},_0x504c55(0xbd));},logFatalError=(_0x294c31,_0x7321a={},_0x4543f0=null)=>{const _0x43c4bb=a0_0xee9e28,_0x205e86={'mmGKv':_0x43c4bb(0x12d),'eTbhC':'error'},_0x5b112f={'event':_0x43c4bb(0x111),'errorName':_0x294c31['name']||_0x205e86[_0x43c4bb(0xac)],'errorMessage':_0x294c31['message'],'errorCode':_0x294c31['code']||null,'stack':_0x294c31[_0x43c4bb(0xbc)],'severity':'CRITICAL',..._0x7321a},_0x3ec8ef=_0x4543f0||'FATAL:\x20'+_0x294c31['message'];logger['fatal'](_0x5b112f,_0x3ec8ef),writeToFileLog({..._0x5b112f,'level':_0x43c4bb(0xc4),'msg':_0x3ec8ef,'time':new Date()['toISOString']()},_0x205e86['eTbhC']);},logHttpError=(_0x52b723,_0x4059b9,_0x179efe={})=>{const _0x17f1df=a0_0xee9e28,_0x1a0c39={'UNITY':'user-agent','lprdP':'x-request-id','Gwdwm':function(_0x838bc0,_0x3a0d97){return _0x838bc0>=_0x3a0d97;},'pIhvr':function(_0x3f97de,_0x103eeb,_0x2f0f9c){return _0x3f97de(_0x103eeb,_0x2f0f9c);},'lfvOT':'error','nTrcw':'warn'},_0xb2f8b0={'event':'http_error','errorName':_0x52b723['name']||'Error','errorMessage':_0x52b723[_0x17f1df(0xfd)],'errorCode':_0x52b723['code']||_0x52b723[_0x17f1df(0x109)]||0x1f4,'stack':_0x52b723['stack'],'method':_0x4059b9?.['method'],'url':_0x4059b9?.['url']||_0x4059b9?.['originalUrl'],'path':_0x4059b9?.['path'],'ip':_0x4059b9?.['ip']||_0x4059b9?.['connection']?.['remoteAddress'],'userAgent':_0x4059b9?.['get']?.(_0x1a0c39['UNITY']),'requestId':_0x4059b9?.['id']||_0x4059b9?.[_0x17f1df(0xfc)]?.[_0x1a0c39['lprdP']],'body':_0x4059b9?.[_0x17f1df(0x132)]?redactObject(_0x4059b9['body']):undefined,'query':_0x4059b9?.[_0x17f1df(0x151)],..._0x179efe},_0x65e08b=_0x52b723['statusCode']||_0x52b723['status']||0x1f4,_0x2a00b7=_0x17f1df(0x158)+_0x65e08b+':\x20'+_0x52b723['message'];_0x1a0c39['Gwdwm'](_0x65e08b,0x1f4)?logger['error'](_0xb2f8b0,_0x2a00b7):logger[_0x17f1df(0xdf)](_0xb2f8b0,_0x2a00b7),_0x1a0c39[_0x17f1df(0x113)](writeToFileLog,{..._0xb2f8b0,'level':_0x65e08b>=0x1f4?_0x1a0c39['lfvOT']:'warn','msg':_0x2a00b7,'time':new Date()[_0x17f1df(0x150)]()},_0x65e08b>=0x1f4?_0x1a0c39['lfvOT']:_0x1a0c39[_0x17f1df(0x115)]);},logUncaughtError=(_0x26c74d,_0x43685e)=>{const _0x6b0d7b=a0_0xee9e28,_0x41a5fb={'GxWtB':function(_0x58f99e,_0x1a7370){return _0x58f99e(_0x1a7370);},'JAGgn':function(_0x1ccb44,_0x34f09a,_0x2465b){return _0x1ccb44(_0x34f09a,_0x2465b);}},_0x131a69={'event':_0x26c74d,'errorName':_0x43685e?.[_0x6b0d7b(0x12e)]||'Error','errorMessage':_0x43685e?.[_0x6b0d7b(0xfd)]||_0x41a5fb['GxWtB'](String,_0x43685e),'errorCode':_0x43685e?.['code']||null,'stack':_0x43685e?.[_0x6b0d7b(0xbc)],'severity':'CRITICAL','processId':process[_0x6b0d7b(0x145)],'memoryUsage':process[_0x6b0d7b(0x10b)](),'uptime':process[_0x6b0d7b(0x169)]()},_0x38d842='['+_0x26c74d['toUpperCase']()+']\x20'+(_0x43685e?.['message']||_0x43685e);logger['fatal'](_0x131a69,_0x38d842),_0x41a5fb['JAGgn'](writeToFileLog,{..._0x131a69,'level':_0x6b0d7b(0xc4),'msg':_0x38d842,'time':new Date()['toISOString']()},'error');},setupGlobalErrorHandlers=()=>{const _0x55c32e=a0_0xee9e28,_0x458512={'TZLPL':_0x55c32e(0xd7),'JfSGX':function(_0x350b83,_0x28b0ed){return _0x350b83 instanceof _0x28b0ed;},'ylXTZ':function(_0x5f463a,_0x268dde){return _0x5f463a(_0x268dde);},'ernmq':function(_0x549c95,_0x59d188,_0x18ae1d){return _0x549c95(_0x59d188,_0x18ae1d);},'DmOqn':'unhandledRejection','YzNlK':'process_warning','nOhcB':_0x55c32e(0xe8),'SJXda':_0x55c32e(0xf4)};process['on'](_0x458512['TZLPL'],_0x17e8ce=>{logUncaughtError(_0x458512['TZLPL'],_0x17e8ce),setTimeout(()=>{const _0xce13cd=a0_0xc676;process[_0xce13cd(0xad)](0x1);},0x3e8);}),process['on'](_0x458512['DmOqn'],(_0x257c31,_0x462196)=>{const _0x43fb5c=_0x55c32e,_0xfdd391=_0x458512[_0x43fb5c(0x153)](_0x257c31,Error)?_0x257c31:new Error(_0x458512[_0x43fb5c(0x11f)](String,_0x257c31));_0x458512[_0x43fb5c(0xe9)](logUncaughtError,_0x458512['DmOqn'],_0xfdd391);}),process['on'](_0x55c32e(0x138),_0x2217f5=>{const _0x3f0ecd=_0x55c32e;logger[_0x3f0ecd(0xdf)]({'event':_0x458512['YzNlK'],'name':_0x2217f5['name'],'message':_0x2217f5[_0x3f0ecd(0xfd)],'stack':_0x2217f5['stack']},_0x3f0ecd(0x108)+_0x2217f5['message']);});const _0x18c7cc={'event':_0x55c32e(0xd9)},_0x523d59=_0x458512[_0x55c32e(0xef)];logger[_0x55c32e(0xf4)](_0x18c7cc,_0x523d59),_0x458512['ernmq'](writeToFileLog,{..._0x18c7cc,'level':_0x55c32e(0xf4),'msg':_0x523d59,'time':new Date()['toISOString']()},_0x458512['SJXda']);},createErrorHandlerMiddleware=()=>{const _0x90f9ac={'IkfUh':function(_0x3e77a1,_0xcb3fd4,_0x2a2308){return _0x3e77a1(_0xcb3fd4,_0x2a2308);},'ZcvoE':'Internal\x20server\x20error'};return(_0x4f416e,_0x958d1a,_0x5ba259,_0x140ce2)=>{const _0x41bdb6=a0_0xc676;_0x90f9ac[_0x41bdb6(0xe5)](logHttpError,_0x4f416e,_0x958d1a);const _0x5d66c9=_0x4f416e[_0x41bdb6(0x109)]||_0x4f416e[_0x41bdb6(0xeb)]||0x1f4;_0x5ba259[_0x41bdb6(0xeb)](_0x5d66c9)['json']({'success':![],'error':_0x5d66c9>=0x1f4?_0x90f9ac['ZcvoE']:_0x4f416e['message'],'requestId':_0x958d1a['id']||_0x958d1a[_0x41bdb6(0xfc)]?.[_0x41bdb6(0xc3)]||null});};};module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};function a0_0x3bb2(){const _0x33f36b=['zxjY','u1rbuLqGvfjbtLnbq1rjt04','w09lxsbqCM9Qzwn0igXVywrLzdOG','BK9Oy0i','qvbqx1zfuLnjt04','rermx0rst1a','u25gyw0','iokvKqRILzeGifbVCNqGicaGicaGidOG','Aw5MBW','vhbAEeu','s1DvCw0','uuzLs20','ywnJzxnZx3rVA2vU','s2jABMu','C3fSx3f1zxj5','zgvIDwC','AgvHzgvYCW','BwvZC2fNzq','AxnbCNjHEq','AxntBg93','Bxj2ugi','CMvXlMHLywrLCNmUyxv0Ag9YAxPHDgLVBG','BMDVDve','vwLXy2O','mLnYD1vxqW','u1fmx0Xpr19tte9xx1riuKvtse9mra','rgvMyxvSDa','ruvQzfu','uhjVy2vZCYbxyxjUAw5NoIa','C3rHDhvZq29Kzq','zw52','BwvTB3j5vxnHz2u','BgvUz3rO','C3rYAw5N','iokvKqRILzeGienVBMzPzYaGicaGidOG','q1jJqLK','mJGYmdv5qw5ftwC','zMf0ywXFzxjYB3i','B2jQzwn0','CeLODNi','zvvUCLq','BLrYy3C','rfjpua','AhDRAwG','zxjYB3iUBg9N','DgvZDa','C2vYDMLJzuLUzM8','zhjVuuS','y3b4Awe','Bwf4','iokvKqRILzeGiefqssblzxKGicaGidOG','EwXyvfO','y3z2','ufb2Cw8','tfzUrNe','C29Tzq','y29Kzq','nZiWntq1tw55AMzf','Cgf0Aa','Dg9mB3DLCKnHC2u','v1PAC0O','zgf0ywjHC2u','Ahr0Cf9Yzxf1zxn0','icbjBMzVoIaGia','DwjuywK','rxjYB3i','BMfTzq','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','vwXZzfa','mte0mtK3nZfhDMPZDui','yM9KEq','tM9Kzs5QCW','vK90vhC','ANzos0K','BwfW','B3rW','D2fYBMLUzW','quXurvi','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','Bwv0Ag9K','vuDjBKG','lI9SB2DZ','y29UzMLNrMLSzq','rermx0nsrufurq','reiGuxvLCNK','CgfZC3DVCMq','ic0G','zhvYyxrPB25nCW','Bwf0y2G','CgLK','AM1yqui','CgfKrw5K','q09ntuLu','C1DQqK8','revmrvrf','DxnLCG','Ag9ZDa','AgvHBhrOq2HLy2S','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','CgfZC3DK','Dg9ju09tDhjPBMC','CxvLCNK','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','sMztr1G','Dg9Rzw4','rermx0fmvevs','tI9b','C3rHCNrZv2L0Aa','sfruuca','mta2mM5AvMjQqq','C0H3u0O','w1jfrefdveveoMHHC2HD','Cg9YDa','CgLUBY1WCMv0DhK','y2HPBgq','y29UBMvJDgLVBG','BvfQAey','r01LqKW','C2vYDMvYx3n0yxj0Aw5N','u0vsvKLdrv9oqu1f','mJy5meXvqvD1ta','s2vYB0y','yxbPs2v5','Dw5RBM93BG','zxHPC3rZu3LUyW','Dxb0Aw1L','ChjPDMf0zv9RzxK','y3DK','mJGYrhzutM9P','rejFueftu1DpuKq','Ce52y3a','ChjVAMvJDa','Bw1hs3y','zxHPDa','wwT1y0S','zw52AxjVBM1LBNq','CMvMCMvZAf90B2TLBG','ChjVAMvJDf9SB2fKzwq','w1jfrefdvevexq','u2vYDMvYihn0yxj0Aw5NoIa','BMrbAxq','tK9erv9ftLy','yxbPx2TLEq','C3rKvgLTzuz1BMn0Aw9UCW','zgf0ywjHC2vFy29UzMLN','CMvZB2X2zq','Cxbiu04','mJuXmdC5nLnJwgr6wq','C3rHy2S','zxjYB3i','yMfZzvvYBa','A21dAuy','tK9uiefdveLwrq','Dg9vChbLCKnHC2u','mtzkvvjQDfK','Ec1Yzxf1zxn0lwLK','zMf0ywW','y3jLzgvUDgLHBhm','zgvMyxvSDa','CMvZDgzVCMDL','AM9PBG','te9hx0XfvKvm','ChDK','wfLUENG','Aw5JBhvKzxm','BM5iCNi','u1fmx0Xpr19ftKfcteve','zgjFDhjHBNnHy3rPB24','wxnbuNK','sMvXvKO','ueXltg8','BejQAhG','odm5mti1vvL0r1D1','vvbeqvrf','Dhj1zq','Dw5JyxvNAhrfEgnLChrPB24','A2v5CW','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','w09lxsbtzxj2zxiGCMvHzhKGB24GCg9YDca','Ahj0Aw1L','u0vmrunu','te9hx0rjuG','ufLAAum','D2fYBG','ExDUyxO','wvPKDgO','tuzHAxu','zw5KCg9PBNrFCMvNAxn0zxjLza','Cu1xBNK','swTMvwG','mJKYntm0mgD2quLeyW','zgv2zwXVCg1LBNq','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','zxjUBxe','vfjbtLnbq1rjt05FqKvhsu4','C3rHDhvZ'];a0_0x3bb2=function(){return _0x33f36b;};return a0_0x3bb2();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x1293d6=a0_0x2a01;function a0_0x2a01(_0x40b593,_0x2871e3){_0x40b593=_0x40b593-0x10c;const _0x31cfe0=a0_0x31cf();let _0x2a0149=_0x31cfe0[_0x40b593];if(a0_0x2a01['WsPhqe']===undefined){var _0x52c5d5=function(_0x2f52e3){const _0x4c79c3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2133e0='',_0x1932fe='';for(let _0x13e88d=0x0,_0x468811,_0x510589,_0x28ff46=0x0;_0x510589=_0x2f52e3['charAt'](_0x28ff46++);~_0x510589&&(_0x468811=_0x13e88d%0x4?_0x468811*0x40+_0x510589:_0x510589,_0x13e88d++%0x4)?_0x2133e0+=String['fromCharCode'](0xff&_0x468811>>(-0x2*_0x13e88d&0x6)):0x0){_0x510589=_0x4c79c3['indexOf'](_0x510589);}for(let _0x294ec7=0x0,_0x554988=_0x2133e0['length'];_0x294ec7<_0x554988;_0x294ec7++){_0x1932fe+='%'+('00'+_0x2133e0['charCodeAt'](_0x294ec7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1932fe);};a0_0x2a01['RSHdOy']=_0x52c5d5,a0_0x2a01['tkmxwA']={},a0_0x2a01['WsPhqe']=!![];}const _0x127454=_0x31cfe0[0x0],_0x56a49b=_0x40b593+_0x127454,_0x1d6fb9=a0_0x2a01['tkmxwA'][_0x56a49b];return!_0x1d6fb9?(_0x2a0149=a0_0x2a01['RSHdOy'](_0x2a0149),a0_0x2a01['tkmxwA'][_0x56a49b]=_0x2a0149):_0x2a0149=_0x1d6fb9,_0x2a0149;}(function(_0xb842db,_0x4ab75b){const _0x103d9e=a0_0x2a01,_0x595764=_0xb842db();while(!![]){try{const _0x551c41=parseInt(_0x103d9e(0x118))/0x1+parseInt(_0x103d9e(0x113))/0x2+-parseInt(_0x103d9e(0x114))/0x3*(parseInt(_0x103d9e(0x121))/0x4)+parseInt(_0x103d9e(0x11b))/0x5*(-parseInt(_0x103d9e(0x12c))/0x6)+-parseInt(_0x103d9e(0x11e))/0x7+parseInt(_0x103d9e(0x11f))/0x8*(parseInt(_0x103d9e(0x129))/0x9)+parseInt(_0x103d9e(0x112))/0xa;if(_0x551c41===_0x4ab75b)break;else _0x595764['push'](_0x595764['shift']());}catch(_0x101ed){_0x595764['push'](_0x595764['shift']());}}}(a0_0x31cf,0x2b00a));const dbType=(process['env'][a0_0x1293d6(0x123)]||a0_0x1293d6(0x116))[a0_0x1293d6(0x11d)]();let executeQuery;if(dbType==='oracle'){const oracleDb=require(a0_0x1293d6(0x127));executeQuery=(_0x19251f,_0x311b14)=>oracleDb['executeQuery'](_0x19251f,_0x311b14);}else{if(dbType===a0_0x1293d6(0x137)){const mysqlDb=require(a0_0x1293d6(0x12e));executeQuery=(_0x1d5d13,_0x59c97e)=>mysqlDb['executeQuery'](_0x1d5d13,_0x59c97e);}else executeQuery=require('./db')['executeQuery'];}function a0_0x31cf(){const _0xfce07b=['AgfZ','z2v0','BwvZC2fNzq','lI9KyI1VCMfJBgu','y2XLyxjdywnOzq','mJK2mJCXsLDmExn5','u0vmrunuia','BgvUz3rO','nNPxAMPLBq','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','lI9KyI1TExnXBa','DhjPBq','zM9YrwfJAa','Bff4D28','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','Bg9VA3vWx3rHyMXLx2XVywrFzxjYB3i','C2v0','CuTnBKC','BxLZCwW','u0vgCLO','vNjdAwO','Bg9HzeXVB2T1CfrHyMXL','iIbUB3qGzM91BMqGAw4G','q2nPz0S','A2v5CW','CxndC0K','Bg9VA3vWq2fJAgu','ntu5mtqWuLHkuhbq','nJu1mJm4yuDxvevJ','nti3mZCZrenyDevw','ChvZAa','Cg9ZDgDYzxnXBa','iezst00G','mJy1mtHRAMLVv1q','CMvZB2X2zuXVB2T1CfzHBhvL','Dxzdzwi','mZaYntG1ufPjsvjn','vMfSDwuGiG','Dg9mB3DLCKnHC2u','mJeZnJy4AgLkrgHh','ohffDvD4sW','Aw5MBW','nfDLAMnTsW','A2rbzMK','rejFvfLqrq'];a0_0x31cf=function(){return _0xfce07b;};return a0_0x31cf();}const {logger}=require('./logger');class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x1293d6(0x128)](){const _0x306389=a0_0x1293d6,_0x39f57d={'CcigK':'lookup_cache_cleared'};this[_0x306389(0x111)]['clear'](),logger['debug']({'event':_0x39f57d[_0x306389(0x10e)]},'Lookup\x20cache\x20cleared');}async[a0_0x1293d6(0x10c)](_0x4a68ce,_0x1ab3fe,_0x10bd1f){const _0x32783d=a0_0x1293d6,_0x2abe76={'qsCsI':function(_0x16097e,_0x8f5c16){return _0x16097e!==_0x8f5c16;},'uvCeb':function(_0x3fb110,_0xdcef42){return _0x3fb110(_0xdcef42);},'qKMnG':function(_0x58570c,_0x3d0a73){return _0x58570c(_0x3d0a73);},'uedYv':'lookup_table_loaded'},_0x123fb4=_0x4a68ce+':'+_0x1ab3fe+':'+_0x10bd1f;if(this['lookupCache'][_0x32783d(0x124)](_0x123fb4))return this[_0x32783d(0x111)]['get'](_0x123fb4);try{const _0xf79ba=_0x32783d(0x12a)+_0x10bd1f+',\x20'+_0x1ab3fe+_0x32783d(0x117)+_0x4a68ce,_0x1bb41b=await _0x2abe76[_0x32783d(0x136)](executeQuery,_0xf79ba),_0x190e0b=new Map();return _0x1bb41b[_0x32783d(0x130)](_0x366099=>{const _0x290d9a=_0x32783d,_0x5b8d22=_0x2abe76[_0x290d9a(0x110)](_0x366099[_0x1ab3fe],undefined)?_0x366099[_0x1ab3fe]:_0x366099[_0x1ab3fe['toUpperCase']()],_0x67289b=_0x2abe76['qsCsI'](_0x366099[_0x10bd1f],undefined)?_0x366099[_0x10bd1f]:_0x366099[_0x10bd1f['toUpperCase']()];_0x5b8d22!==null&&_0x2abe76['qsCsI'](_0x5b8d22,undefined)&&(_0x190e0b['set'](_0x2abe76[_0x290d9a(0x11a)](String,_0x5b8d22)[_0x290d9a(0x11d)]()[_0x290d9a(0x12f)](),_0x67289b),_0x190e0b[_0x290d9a(0x135)](_0x2abe76['uvCeb'](String,_0x5b8d22)['trim'](),_0x67289b));}),this[_0x32783d(0x111)]['set'](_0x123fb4,_0x190e0b),logger[_0x32783d(0x120)]({'event':_0x2abe76['uedYv'],'table':_0x4a68ce,'column':_0x1ab3fe,'count':_0x1bb41b['length']},'Lookup\x20table\x20loaded:\x20'+_0x4a68ce),_0x190e0b;}catch(_0x181e32){logger['error']({'event':_0x32783d(0x134),'table':_0x4a68ce,'error':_0x181e32[_0x32783d(0x126)]},_0x32783d(0x132)+_0x4a68ce);throw _0x181e32;}}[a0_0x1293d6(0x119)](_0x10dc16,_0x3a7096){const _0x325e12=a0_0x1293d6;if(_0x10dc16===null||_0x10dc16===undefined||_0x10dc16==='')return null;const _0x491504=String(_0x10dc16)['trim']();if(_0x3a7096[_0x325e12(0x124)](_0x491504))return _0x3a7096[_0x325e12(0x125)](_0x491504);const _0x11c0de=_0x491504[_0x325e12(0x11d)]();if(_0x3a7096['has'](_0x11c0de))return _0x3a7096['get'](_0x11c0de);return null;}async['processLookupFields'](_0x2186ed,_0xc7f266){const _0x28e214=a0_0x1293d6,_0x37786f={'lQxwo':function(_0x153cd1,_0x5a4496){return _0x153cd1===_0x5a4496;},'Venyh':function(_0x2c9acb,_0x22476a){return _0x2c9acb===_0x22476a;},'ZnSsm':_0x28e214(0x12d),'VrCij':'Lookup\x20fields\x20processed'};if(!_0xc7f266||_0x37786f['Venyh'](Object['keys'](_0xc7f266)[_0x28e214(0x12b)],0x0))return{'processedRows':_0x2186ed,'errors':[]};const _0x4874df=[],_0x4d64ee=new Map();for(const [_0x4ad43a,_0x15b9c4]of Object['entries'](_0xc7f266)){const {lookupTable:_0xc4010f,lookupColumn:_0x492a25,lookupIdColumn:_0x4ef82e}=_0x15b9c4,_0x52c687=_0xc4010f+':'+_0x492a25+':'+_0x4ef82e;if(!_0x4d64ee[_0x28e214(0x124)](_0x52c687)){const _0x412f09=await this[_0x28e214(0x10c)](_0xc4010f,_0x492a25,_0x4ef82e);_0x4d64ee['set'](_0x52c687,_0x412f09);}}const _0x43a997=_0x2186ed['map']((_0x52a72c,_0x1e183b)=>{const _0xcdb6c3=_0x28e214,_0x30b87b={..._0x52a72c};for(const [_0x20cdf4,_0x5ac710]of Object['entries'](_0xc7f266)){const {lookupTable:_0x4ee054,lookupColumn:_0x271bb7,lookupIdColumn:_0x2a2720,targetField:_0x1a97b1,required:_0x4b5cf0}=_0x5ac710,_0xed9b12=_0x4ee054+':'+_0x271bb7+':'+_0x2a2720,_0x3eacab=_0x4d64ee[_0xcdb6c3(0x125)](_0xed9b12),_0x144aaf=_0x52a72c[_0x20cdf4];if((_0x144aaf===null||_0x144aaf===undefined||_0x37786f[_0xcdb6c3(0x131)](_0x144aaf,''))&&!_0x4b5cf0){_0x30b87b[_0x1a97b1]=null;continue;}const _0x3544ea=this['resolveLookupValue'](_0x144aaf,_0x3eacab);_0x3544ea!==null?_0x30b87b[_0x1a97b1]=_0x3544ea:(_0x4b5cf0&&_0x4874df['push']({'rowIndex':_0x1e183b,'field':_0x20cdf4,'value':_0x144aaf,'targetField':_0x1a97b1,'lookupTable':_0x4ee054,'message':_0xcdb6c3(0x11c)+_0x144aaf+_0xcdb6c3(0x10d)+_0x4ee054}),_0x30b87b[_0x1a97b1]=null);}return _0x30b87b;});return logger['info']({'event':_0x37786f['ZnSsm'],'totalRows':_0x2186ed['length'],'errorCount':_0x4874df['length'],'lookupFieldCount':Object['keys'](_0xc7f266)[_0x28e214(0x12b)]},_0x37786f[_0x28e214(0x139)]),{'processedRows':_0x43a997,'errors':_0x4874df};}['getDistinctValues'](_0x50e6f8,_0x37cc8f){const _0x41c34b={'kdAfi':function(_0x3364eb,_0x424304){return _0x3364eb!==_0x424304;},'IxlcM':function(_0x231c74,_0x4f1b10){return _0x231c74!==_0x4f1b10;},'SEFrZ':function(_0x17648f,_0x355c0c){return _0x17648f(_0x355c0c);}},_0x4b9cf2=new Set();return _0x50e6f8['forEach'](_0x4b3798=>{const _0x966d67=a0_0x2a01,_0xe96cc2=_0x4b3798[_0x37cc8f];_0x41c34b[_0x966d67(0x122)](_0xe96cc2,null)&&_0x41c34b['IxlcM'](_0xe96cc2,undefined)&&_0xe96cc2!==''&&_0x4b9cf2['add'](_0x41c34b[_0x966d67(0x138)](String,_0xe96cc2)[_0x966d67(0x12f)]());}),Array['from'](_0x4b9cf2);}async['validateLookupValues'](_0x2172d6,_0x18b41d){const _0x3f4467=a0_0x1293d6,_0x3b4cc1={'WcAYS':function(_0x2b6a53,_0x176388){return _0x2b6a53===_0x176388;}};if(!_0x18b41d||Object[_0x3f4467(0x10f)](_0x18b41d)[_0x3f4467(0x12b)]===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x3fb6fa=[],_0x4b5811={};for(const [_0x254a63,_0x3f96d3]of Object['entries'](_0x18b41d)){const {lookupTable:_0x3f911b,lookupColumn:_0x1b2196,lookupIdColumn:_0x5619fc,required:_0x507168}=_0x3f96d3,_0x129e03=this['getDistinctValues'](_0x2172d6,_0x254a63),_0x1d2c12=await this[_0x3f4467(0x10c)](_0x3f911b,_0x1b2196,_0x5619fc),_0x5384c7=[],_0x9d1f88=[];_0x129e03['forEach'](_0x3dd2ab=>{const _0x4d3790=_0x3f4467,_0x551741=this[_0x4d3790(0x119)](_0x3dd2ab,_0x1d2c12);_0x551741!==null?_0x9d1f88[_0x4d3790(0x115)](_0x3dd2ab):_0x5384c7['push'](_0x3dd2ab);});if(_0x5384c7[_0x3f4467(0x12b)]>0x0&&_0x507168){_0x3fb6fa[_0x3f4467(0x115)]({'field':_0x254a63,'lookupTable':_0x3f911b,'invalidValues':_0x5384c7,'message':_0x5384c7[_0x3f4467(0x12b)]+_0x3f4467(0x133)+_0x3f911b});const _0x4dbb48=[];_0x1d2c12['forEach']((_0xe043f1,_0x2eecca)=>{const _0x3485ab=_0x3f4467;if(_0x3b4cc1['WcAYS'](_0x2eecca,_0x2eecca['toLowerCase']()))return;_0x4dbb48[_0x3485ab(0x115)](_0x2eecca);}),_0x4b5811[_0x254a63]={'invalidValues':_0x5384c7,'availableValues':_0x4dbb48['slice'](0x0,0x32)};}}return{'valid':_0x3fb6fa['length']===0x0,'errors':_0x3fb6fa,'suggestions':_0x4b5811};}}module['exports']=new LookupResolver();
|
|
1
|
+
const a0_0x3ae4e0=a0_0x9b8c;(function(_0x55f1f4,_0x1d8c52){const _0x11b93c=a0_0x9b8c,_0x2a1715=_0x55f1f4();while(!![]){try{const _0x1dba7a=-parseInt(_0x11b93c(0x1d9))/0x1+parseInt(_0x11b93c(0x1fd))/0x2*(parseInt(_0x11b93c(0x1dc))/0x3)+-parseInt(_0x11b93c(0x1e3))/0x4+-parseInt(_0x11b93c(0x1f3))/0x5+parseInt(_0x11b93c(0x200))/0x6+-parseInt(_0x11b93c(0x1df))/0x7*(-parseInt(_0x11b93c(0x1fc))/0x8)+-parseInt(_0x11b93c(0x1f1))/0x9*(-parseInt(_0x11b93c(0x203))/0xa);if(_0x1dba7a===_0x1d8c52)break;else _0x2a1715['push'](_0x2a1715['shift']());}catch(_0x411c96){_0x2a1715['push'](_0x2a1715['shift']());}}}(a0_0x4bed,0xa49ca));function a0_0x4bed(){const _0x3a8d0c=['zw50CMLLCW','B3jHy2XL','lI9KyI1TExnXBa','C2v0','ntCXnJa4twruB1LO','Dg9vChbLCKnHC2u','ndi5mtaXnuHTug5QyW','Bg9VA3vWq2fJAgu','BgvUz3rO','zxHLy3v0zvf1zxj5','AvrszMy','Bg9HzeXVB2T1CfrHyMXL','sNPuyM0','lI9KyG','AgfZ','ndmYoteYwxHyv2Tu','otGZmfzfte95Ca','DhjPBq','iIbUB3qGzM91BMqGAw4G','nty4ntm0mKfzAuDOsa','zxHWB3j0CW','BxLZCwW','mtuWENHdChzL','y2XLyxjdywnOzq','tg9VA3vWignHy2HLignSzwfYzwq','qujmy2G','zxjYB3i','zNjVBq','DMfSAwrHDgvmB29RDxbwywX1zxm','ChjVy2vZC0XVB2T1CezPzwXKCW','ENrhzvO','u2jby1u','nZC5mJK0AuvHDwj1','sezwvMm','BwfW','ntCWtNjyv2fk','A2v5CW','CMvZB2X2zuXVB2T1CfzHBhvL','otflzhL0wNO','Dg9mB3DLCKnHC2u','AMfLyKK','BwvZC2fNzq','ndKWmZi4ofLHvgXsyW','u0vmrunuia','Cg9ZDgDYzxnXBa','rfDjv0i','ywrK','DNzXywi','ChvZAa','Bg9VA3vWx3rHyMXLx2XVywrLza','z2v0rgLZDgLUy3rwywX1zxm','rejFvfLqrq'];a0_0x4bed=function(){return _0x3a8d0c;};return a0_0x4bed();}const dbType=(process['env'][a0_0x3ae4e0(0x1ec)]||a0_0x3ae4e0(0x1e5))['toLowerCase']();let executeQuery;if(dbType===a0_0x3ae4e0(0x1ee)){const oracleDb=require('./db-oracle');executeQuery=(_0x358e25,_0x14a776)=>oracleDb[a0_0x3ae4e0(0x1f6)](_0x358e25,_0x14a776);}else{if(dbType===a0_0x3ae4e0(0x202)){const mysqlDb=require(a0_0x3ae4e0(0x1ef));executeQuery=(_0x3a9c8b,_0xd56b0f)=>mysqlDb[a0_0x3ae4e0(0x1f6)](_0x3a9c8b,_0xd56b0f);}else executeQuery=require(a0_0x3ae4e0(0x1fa))[a0_0x3ae4e0(0x1f6)];}const {logger}=require('./logger');function a0_0x9b8c(_0xa935ee,_0x2945aa){_0xa935ee=_0xa935ee-0x1d1;const _0x4bed89=a0_0x4bed();let _0x9b8ce8=_0x4bed89[_0xa935ee];if(a0_0x9b8c['PvgOrd']===undefined){var _0x3a9537=function(_0x369174){const _0x5ec1e8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2a09e1='',_0x1e25cc='';for(let _0xf79587=0x0,_0x1de6b9,_0x2afd4d,_0x1bfc71=0x0;_0x2afd4d=_0x369174['charAt'](_0x1bfc71++);~_0x2afd4d&&(_0x1de6b9=_0xf79587%0x4?_0x1de6b9*0x40+_0x2afd4d:_0x2afd4d,_0xf79587++%0x4)?_0x2a09e1+=String['fromCharCode'](0xff&_0x1de6b9>>(-0x2*_0xf79587&0x6)):0x0){_0x2afd4d=_0x5ec1e8['indexOf'](_0x2afd4d);}for(let _0x3a9d9a=0x0,_0x13dd1b=_0x2a09e1['length'];_0x3a9d9a<_0x13dd1b;_0x3a9d9a++){_0x1e25cc+='%'+('00'+_0x2a09e1['charCodeAt'](_0x3a9d9a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1e25cc);};a0_0x9b8c['raxcaB']=_0x3a9537,a0_0x9b8c['yffMer']={},a0_0x9b8c['PvgOrd']=!![];}const _0x2fc656=_0x4bed89[0x0],_0x434985=_0xa935ee+_0x2fc656,_0x40e18e=a0_0x9b8c['yffMer'][_0x434985];return!_0x40e18e?(_0x9b8ce8=a0_0x9b8c['raxcaB'](_0x9b8ce8),a0_0x9b8c['yffMer'][_0x434985]=_0x9b8ce8):_0x9b8ce8=_0x40e18e,_0x9b8ce8;}class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x3ae4e0(0x204)](){const _0x1d6e2c=a0_0x3ae4e0,_0x30245e={'YmioX':'lookup_cache_cleared','WFWww':_0x1d6e2c(0x1d1)};this['lookupCache']['clear'](),logger['debug']({'event':_0x30245e['YmioX']},_0x30245e['WFWww']);}async[a0_0x3ae4e0(0x1f8)](_0xd39d10,_0x39aca8,_0x3afe61){const _0x277879=a0_0x3ae4e0,_0x5cd41f={'HFVVc':function(_0x9de0e2,_0x460345){return _0x9de0e2!==_0x460345;},'SbAcU':function(_0x36917a,_0x63bbb8){return _0x36917a(_0x63bbb8);},'pJozZ':function(_0x428d8c,_0x1f4e54){return _0x428d8c(_0x1f4e54);}},_0x3e7b5a=_0xd39d10+':'+_0x39aca8+':'+_0x3afe61;if(this['lookupCache'][_0x277879(0x1fb)](_0x3e7b5a))return this[_0x277879(0x1f4)]['get'](_0x3e7b5a);try{const _0x3187af=_0x277879(0x1e4)+_0x3afe61+',\x20'+_0x39aca8+'\x20FROM\x20'+_0xd39d10,_0x146248=await _0x5cd41f['SbAcU'](executeQuery,_0x3187af),_0x469636=new Map();return _0x146248['forEach'](_0xb406ad=>{const _0x107dba=_0x277879,_0x3bb53c=_0xb406ad[_0x39aca8]!==undefined?_0xb406ad[_0x39aca8]:_0xb406ad[_0x39aca8[_0x107dba(0x1f2)]()],_0x569ed4=_0xb406ad[_0x3afe61]!==undefined?_0xb406ad[_0x3afe61]:_0xb406ad[_0x3afe61[_0x107dba(0x1f2)]()];_0x5cd41f[_0x107dba(0x1da)](_0x3bb53c,null)&&_0x5cd41f[_0x107dba(0x1da)](_0x3bb53c,undefined)&&(_0x469636['set'](_0x5cd41f[_0x107dba(0x1d8)](String,_0x3bb53c)[_0x107dba(0x1e0)]()['trim'](),_0x569ed4),_0x469636[_0x107dba(0x1f0)](_0x5cd41f['pJozZ'](String,_0x3bb53c)['trim'](),_0x569ed4));}),this['lookupCache'][_0x277879(0x1f0)](_0x3e7b5a,_0x469636),logger['info']({'event':_0x277879(0x1ea),'table':_0xd39d10,'column':_0x39aca8,'count':_0x146248['length']},'Lookup\x20table\x20loaded:\x20'+_0xd39d10),_0x469636;}catch(_0x4c111d){logger[_0x277879(0x1d3)]({'event':'lookup_table_load_error','table':_0xd39d10,'error':_0x4c111d[_0x277879(0x1e2)]},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0xd39d10);throw _0x4c111d;}}[a0_0x3ae4e0(0x1de)](_0x3afe2c,_0x5839ee){const _0x241766=a0_0x3ae4e0,_0x187919={'OVtYK':function(_0x94f3b4,_0x5b685b){return _0x94f3b4===_0x5b685b;},'vvqab':function(_0x1356fe,_0x4ffa7f){return _0x1356fe===_0x4ffa7f;}};if(_0x187919['OVtYK'](_0x3afe2c,null)||_0x187919['OVtYK'](_0x3afe2c,undefined)||_0x187919[_0x241766(0x1e8)](_0x3afe2c,''))return null;const _0x2e1a43=String(_0x3afe2c)['trim']();if(_0x5839ee[_0x241766(0x1fb)](_0x2e1a43))return _0x5839ee['get'](_0x2e1a43);const _0x19b2d4=_0x2e1a43['toLowerCase']();if(_0x5839ee['has'](_0x19b2d4))return _0x5839ee['get'](_0x19b2d4);return null;}async[a0_0x3ae4e0(0x1d6)](_0x6ae098,_0x298921){const _0x4b3eb5=a0_0x3ae4e0,_0x51ce28={'DWIWB':function(_0x328862,_0x54d688){return _0x328862===_0x54d688;},'jaebI':function(_0x35c0c3,_0x449036){return _0x35c0c3===_0x449036;},'XQJzr':'lookup_fields_processed','iTRff':'Lookup\x20fields\x20processed'};if(!_0x298921||_0x51ce28[_0x4b3eb5(0x1e1)](Object[_0x4b3eb5(0x1dd)](_0x298921)['length'],0x0))return{'processedRows':_0x6ae098,'errors':[]};const _0x4a3841=[],_0x4f9638=new Map();for(const [_0x127aab,_0x48fe27]of Object['entries'](_0x298921)){const {lookupTable:_0x45878e,lookupColumn:_0x33c137,lookupIdColumn:_0x13b861}=_0x48fe27,_0x56ec40=_0x45878e+':'+_0x33c137+':'+_0x13b861;if(!_0x4f9638[_0x4b3eb5(0x1fb)](_0x56ec40)){const _0x525b47=await this[_0x4b3eb5(0x1f8)](_0x45878e,_0x33c137,_0x13b861);_0x4f9638[_0x4b3eb5(0x1f0)](_0x56ec40,_0x525b47);}}const _0x177685=_0x6ae098[_0x4b3eb5(0x1db)]((_0x5b180d,_0x426d34)=>{const _0xa74a26=_0x4b3eb5,_0x4dfdd2={..._0x5b180d};for(const [_0x3ba8d5,_0x2b9b8a]of Object[_0xa74a26(0x1ed)](_0x298921)){const {lookupTable:_0x4fa260,lookupColumn:_0x3fe48a,lookupIdColumn:_0x5328d1,targetField:_0x29f5fd,required:_0x31eea8}=_0x2b9b8a,_0x3ed652=_0x4fa260+':'+_0x3fe48a+':'+_0x5328d1,_0x36af25=_0x4f9638['get'](_0x3ed652),_0x59e128=_0x5b180d[_0x3ba8d5];if((_0x59e128===null||_0x59e128===undefined||_0x51ce28[_0xa74a26(0x1e6)](_0x59e128,''))&&!_0x31eea8){_0x4dfdd2[_0x29f5fd]=null;continue;}const _0x25ada3=this[_0xa74a26(0x1de)](_0x59e128,_0x36af25);_0x25ada3!==null?_0x4dfdd2[_0x29f5fd]=_0x25ada3:(_0x31eea8&&_0x4a3841['push']({'rowIndex':_0x426d34,'field':_0x3ba8d5,'value':_0x59e128,'targetField':_0x29f5fd,'lookupTable':_0x4fa260,'message':'Value\x20\x22'+_0x59e128+_0xa74a26(0x1ff)+_0x4fa260}),_0x4dfdd2[_0x29f5fd]=null);}return _0x4dfdd2;});return logger['info']({'event':_0x51ce28['XQJzr'],'totalRows':_0x6ae098['length'],'errorCount':_0x4a3841['length'],'lookupFieldCount':Object[_0x4b3eb5(0x1dd)](_0x298921)['length']},_0x51ce28[_0x4b3eb5(0x1f7)]),{'processedRows':_0x177685,'errors':_0x4a3841};}[a0_0x3ae4e0(0x1eb)](_0x5af54b,_0x598ab4){const _0x2e30de=a0_0x3ae4e0,_0x356409={'jMhQH':function(_0x55d04a,_0xad1597){return _0x55d04a!==_0xad1597;},'ABLch':function(_0x258af3,_0x489576){return _0x258af3(_0x489576);}},_0x19d55c=new Set();return _0x5af54b['forEach'](_0x8863bb=>{const _0x3573a3=a0_0x9b8c,_0x20e9b9=_0x8863bb[_0x598ab4];_0x356409['jMhQH'](_0x20e9b9,null)&&_0x356409['jMhQH'](_0x20e9b9,undefined)&&_0x20e9b9!==''&&_0x19d55c[_0x3573a3(0x1e7)](_0x356409[_0x3573a3(0x1d2)](String,_0x20e9b9)[_0x3573a3(0x1fe)]());}),Array[_0x2e30de(0x1d4)](_0x19d55c);}async[a0_0x3ae4e0(0x1d5)](_0x552ce3,_0x12e369){const _0x4b664d=a0_0x3ae4e0,_0x207d14={'dJxaq':function(_0x2858dc,_0x25d340){return _0x2858dc===_0x25d340;},'JzTbm':function(_0x57cbcd,_0xbe89b){return _0x57cbcd===_0xbe89b;},'qjVFj':function(_0x5b8517,_0x4fb57){return _0x5b8517>_0x4fb57;},'ztGeZ':function(_0x271ba5,_0x4e174c){return _0x271ba5===_0x4e174c;}};if(!_0x12e369||_0x207d14[_0x4b664d(0x1f9)](Object[_0x4b664d(0x1dd)](_0x12e369)[_0x4b664d(0x1f5)],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x2cfd11=[],_0x13cabe={};for(const [_0x1e5624,_0x3cf4e9]of Object['entries'](_0x12e369)){const {lookupTable:_0x4600dd,lookupColumn:_0x29c888,lookupIdColumn:_0x20f57b,required:_0x5d11c5}=_0x3cf4e9,_0x21ce8a=this[_0x4b664d(0x1eb)](_0x552ce3,_0x1e5624),_0x19f666=await this['loadLookupTable'](_0x4600dd,_0x29c888,_0x20f57b),_0x1f30bf=[],_0x585619=[];_0x21ce8a['forEach'](_0x754086=>{const _0x76426b=_0x4b664d,_0x21e0fe=this[_0x76426b(0x1de)](_0x754086,_0x19f666);_0x21e0fe!==null?_0x585619[_0x76426b(0x1e9)](_0x754086):_0x1f30bf['push'](_0x754086);});if(_0x207d14['qjVFj'](_0x1f30bf['length'],0x0)&&_0x5d11c5){_0x2cfd11[_0x4b664d(0x1e9)]({'field':_0x1e5624,'lookupTable':_0x4600dd,'invalidValues':_0x1f30bf,'message':_0x1f30bf['length']+'\x20value(s)\x20not\x20found\x20in\x20'+_0x4600dd});const _0x35ce98=[];_0x19f666['forEach']((_0x1c8889,_0x247624)=>{const _0x3d0ea3=_0x4b664d;if(_0x207d14['dJxaq'](_0x247624,_0x247624[_0x3d0ea3(0x1e0)]()))return;_0x35ce98['push'](_0x247624);}),_0x13cabe[_0x1e5624]={'invalidValues':_0x1f30bf,'availableValues':_0x35ce98['slice'](0x0,0x32)};}}return{'valid':_0x207d14[_0x4b664d(0x1d7)](_0x2cfd11[_0x4b664d(0x1f5)],0x0),'errors':_0x2cfd11,'suggestions':_0x13cabe};}}module[a0_0x3ae4e0(0x201)]=new LookupResolver();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a0_0x308e(_0xaa78f7,_0x9dad4){_0xaa78f7=_0xaa78f7-0x1a9;const _0x5125bd=a0_0x5125();let _0x308e1b=_0x5125bd[_0xaa78f7];if(a0_0x308e['GMSIba']===undefined){var _0x55da7b=function(_0x53b244){const _0x6258b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5a23f8='',_0x5d14dc='';for(let _0x3e1443=0x0,_0x55abeb,_0x3eed70,_0x487314=0x0;_0x3eed70=_0x53b244['charAt'](_0x487314++);~_0x3eed70&&(_0x55abeb=_0x3e1443%0x4?_0x55abeb*0x40+_0x3eed70:_0x3eed70,_0x3e1443++%0x4)?_0x5a23f8+=String['fromCharCode'](0xff&_0x55abeb>>(-0x2*_0x3e1443&0x6)):0x0){_0x3eed70=_0x6258b['indexOf'](_0x3eed70);}for(let _0x2b4cd5=0x0,_0x2962a0=_0x5a23f8['length'];_0x2b4cd5<_0x2962a0;_0x2b4cd5++){_0x5d14dc+='%'+('00'+_0x5a23f8['charCodeAt'](_0x2b4cd5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5d14dc);};a0_0x308e['MHKjmC']=_0x55da7b,a0_0x308e['YPeXel']={},a0_0x308e['GMSIba']=!![];}const _0x538770=_0x5125bd[0x0],_0x13f70b=_0xaa78f7+_0x538770,_0x26b349=a0_0x308e['YPeXel'][_0x13f70b];return!_0x26b349?(_0x308e1b=a0_0x308e['MHKjmC'](_0x308e1b),a0_0x308e['YPeXel'][_0x13f70b]=_0x308e1b):_0x308e1b=_0x26b349,_0x308e1b;}const a0_0x2b3fae=a0_0x308e;(function(_0x19769a,_0x417530){const _0x2bf419=a0_0x308e,_0x5377e5=_0x19769a();while(!![]){try{const _0x2350f0=-parseInt(_0x2bf419(0x1b3))/0x1+parseInt(_0x2bf419(0x1b1))/0x2+parseInt(_0x2bf419(0x1ad))/0x3*(parseInt(_0x2bf419(0x1a9))/0x4)+-parseInt(_0x2bf419(0x1cd))/0x5+parseInt(_0x2bf419(0x1c2))/0x6+parseInt(_0x2bf419(0x1bf))/0x7*(-parseInt(_0x2bf419(0x1b2))/0x8)+parseInt(_0x2bf419(0x1aa))/0x9;if(_0x2350f0===_0x417530)break;else _0x5377e5['push'](_0x5377e5['shift']());}catch(_0x39c012){_0x5377e5['push'](_0x5377e5['shift']());}}}(a0_0x5125,0x4e583));function a0_0x5125(){const _0x5653fb=['y2XLyxjdywnOzq','Axnby3rPB25fBMfIBgvK','mJe2oezAyK9Lrq','mta5mduXmtf2v3borhG','ywn0Aw9U','Cgf5Bg9HzerPCG','mtmYnLjMtw1uCa','vfLnDxC','CgfYC2u','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','mJC0nZrHywDVr1u','mJy5nLLTyxbIvG','ntGXmdqXBwrYD2P2','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','lMPZB24','BKnptLK','CwDiBgW','Aw5MBW','Cgf5Bg9Hzf9SB2fKzwq','z2v0rxHWB3j0q29UzMLN','CMvHzezPBgu','zxHWB3j0CW','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','mti1mJnLCxHzuge','y2fJAgu','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','mtKYmdGXmefJBuP4sG','CMvWBgfJzq','zxjYB3i','vLnADMq','C2v0','lI4VlI4VCgf5Bg9Hza','DxrMoa','r3LOtfO','DgfIBgvoyw1L','ugf5Bg9HzcbUB3qGzM91BMq6ia','BwvZC2fNzq','mtqWmtqXmfDpwhLiyW','zgvIDwC','AM9PBG'];a0_0x5125=function(){return _0x5653fb;};return a0_0x5125();}const fs=require('fs')['promises'],path=require('path'),{logger}=require('./logger');class PayloadLoader{constructor(){const _0x24c9a3=a0_0x308e;this[_0x24c9a3(0x1ac)]=path[_0x24c9a3(0x1cf)](__dirname,_0x24c9a3(0x1c7)),this[_0x24c9a3(0x1c0)]=new Map();}async['loadPayload'](_0x483cca,_0x4498d9){const _0x9c0ba6=a0_0x308e,_0x1bc018={'VSZvd':'payload_loaded','wOEiO':'payload_load_error','TYMuw':_0x9c0ba6(0x1b5)},_0x29d0f4=_0x483cca+':'+_0x4498d9;if(this[_0x9c0ba6(0x1c0)]['has'](_0x29d0f4))return this['cache']['get'](_0x29d0f4);const _0x877fe3=path['join'](this[_0x9c0ba6(0x1ac)],_0x483cca+'_'+_0x4498d9+'.json');try{const _0x3d014c=await fs['readFile'](_0x877fe3,_0x9c0ba6(0x1c8)),_0x1b054e=JSON[_0x9c0ba6(0x1af)](_0x3d014c);return this['cache'][_0x9c0ba6(0x1c6)](_0x29d0f4,_0x1b054e),logger['debug']({'event':_0x1bc018[_0x9c0ba6(0x1c5)],'project':_0x483cca,'resource':_0x4498d9},_0x9c0ba6(0x1be)),_0x1b054e;}catch(_0x1d46f5){logger[_0x9c0ba6(0x1c4)]({'event':_0x1bc018['wOEiO'],'project':_0x483cca,'resource':_0x4498d9,'error':_0x1d46f5[_0x9c0ba6(0x1cc)]},_0x1bc018[_0x9c0ba6(0x1ae)]);throw new Error('Payload\x20not\x20found:\x20'+_0x483cca+'_'+_0x4498d9);}}async['loadPayloadByName'](_0x25090e){const _0xa725e8=a0_0x308e,_0x3ad77b={'nCONY':'utf8','RNxZH':_0xa725e8(0x1ba)},_0x11b1d1='payload:'+_0x25090e;if(this['cache']['has'](_0x11b1d1))return this[_0xa725e8(0x1c0)]['get'](_0x11b1d1);const _0x1bc1f3=path[_0xa725e8(0x1cf)](this[_0xa725e8(0x1ac)],_0x25090e+_0xa725e8(0x1b6));try{const _0x3cab4b=await fs[_0xa725e8(0x1bc)](_0x1bc1f3,_0x3ad77b[_0xa725e8(0x1b7)]),_0x1d4b2c=JSON['parse'](_0x3cab4b);return this['cache'][_0xa725e8(0x1c6)](_0x11b1d1,_0x1d4b2c),logger[_0xa725e8(0x1ce)]({'event':_0x3ad77b['RNxZH'],'payloadName':_0x25090e},_0xa725e8(0x1b4)),_0x1d4b2c;}catch(_0x5d5cd2){logger[_0xa725e8(0x1c4)]({'event':_0xa725e8(0x1b0),'payloadName':_0x25090e,'error':_0x5d5cd2['message']},'Failed\x20to\x20load\x20payload\x20by\x20name');throw new Error(_0xa725e8(0x1cb)+_0x25090e);}}[a0_0x2b3fae(0x1d1)](_0x467c20,_0x487b8d){const _0x2cc35e=a0_0x2b3fae,_0x437706={'qgHll':function(_0x1fc5e9,_0x5ea13b){return _0x1fc5e9===_0x5ea13b;}};return _0x467c20['action']&&_0x437706[_0x2cc35e(0x1b8)](_0x467c20[_0x2cc35e(0x1ab)][_0x487b8d],!![]);}[a0_0x2b3fae(0x1bb)](_0x16da0c){const _0x399cfe=a0_0x2b3fae;return{'columns':_0x16da0c['fieldName']||[],'filename':_0x16da0c[_0x399cfe(0x1ca)][_0x399cfe(0x1c3)]('.','-')+'-export','datatablesQuery':_0x16da0c['datatablesQuery']||null,'columnFormats':_0x16da0c['columnFormats']||null,'fieldLabels':_0x16da0c['fieldLabels']||null};}[a0_0x2b3fae(0x1d0)](){const _0x57919a=a0_0x2b3fae,_0x8e512c={'GyhLZ':'payload_cache_cleared','BcgrG':_0x57919a(0x1c1)};this[_0x57919a(0x1c0)]['clear'](),logger[_0x57919a(0x1b9)]({'event':_0x8e512c[_0x57919a(0x1c9)]},_0x8e512c['BcgrG']);}}module[a0_0x2b3fae(0x1bd)]=new PayloadLoader();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var a0_0x1210d3=a0_0x4e95;(function(_0x4af298,_0x1d317b){var _0x31adc7=a0_0x4e95,_0x5282ec=_0x4af298();while(!![]){try{var _0x4f3566=-parseInt(_0x31adc7(0x19a))/0x1*(-parseInt(_0x31adc7(0x191))/0x2)+parseInt(_0x31adc7(0x193))/0x3+-parseInt(_0x31adc7(0x194))/0x4*(parseInt(_0x31adc7(0x197))/0x5)+-parseInt(_0x31adc7(0x192))/0x6*(-parseInt(_0x31adc7(0x190))/0x7)+parseInt(_0x31adc7(0x196))/0x8*(parseInt(_0x31adc7(0x19b))/0x9)+-parseInt(_0x31adc7(0x199))/0xa*(-parseInt(_0x31adc7(0x18f))/0xb)+-parseInt(_0x31adc7(0x19c))/0xc;if(_0x4f3566===_0x1d317b)break;else _0x5282ec['push'](_0x5282ec['shift']());}catch(_0x4e8017){_0x5282ec['push'](_0x5282ec['shift']());}}}(a0_0xdf1c,0xefb6f));function a0_0x4e95(_0x1cdf2c,_0x329877){_0x1cdf2c=_0x1cdf2c-0x18f;var _0xdf1c00=a0_0xdf1c();var _0x4e958e=_0xdf1c00[_0x1cdf2c];if(a0_0x4e95['hbxmNe']===undefined){var _0x177ad9=function(_0x25b060){var _0x1dfc92='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x51b8be='',_0x532895='';for(var _0x3f401e=0x0,_0x5c7db7,_0x15620b,_0x13b976=0x0;_0x15620b=_0x25b060['charAt'](_0x13b976++);~_0x15620b&&(_0x5c7db7=_0x3f401e%0x4?_0x5c7db7*0x40+_0x15620b:_0x15620b,_0x3f401e++%0x4)?_0x51b8be+=String['fromCharCode'](0xff&_0x5c7db7>>(-0x2*_0x3f401e&0x6)):0x0){_0x15620b=_0x1dfc92['indexOf'](_0x15620b);}for(var _0x96d0b8=0x0,_0x5c57cc=_0x51b8be['length'];_0x96d0b8<_0x5c57cc;_0x96d0b8++){_0x532895+='%'+('00'+_0x51b8be['charCodeAt'](_0x96d0b8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x532895);};a0_0x4e95['KorgOs']=_0x177ad9,a0_0x4e95['GsijMO']={},a0_0x4e95['hbxmNe']=!![];}var _0x108aef=_0xdf1c00[0x0],_0x25618f=_0x1cdf2c+_0x108aef,_0x31bb44=a0_0x4e95['GsijMO'][_0x25618f];return!_0x31bb44?(_0x4e958e=a0_0x4e95['KorgOs'](_0x4e958e),a0_0x4e95['GsijMO'][_0x25618f]=_0x4e958e):_0x4e958e=_0x31bb44,_0x4e958e;}function createResponse(_0x415292,_0x6b98da,_0x1a9326=null){var _0x3b3f02=a0_0x4e95;return{'success':!![],'statusCode':_0x415292,'message':_0x6b98da,'data':_0x1a9326,'timestamp':new Date()[_0x3b3f02(0x198)]()};}function createError(_0x34d577,_0x5b0353,_0x4769cc=null){var _0x5d0b04=a0_0x4e95;return{'success':![],'statusCode':_0x34d577,'message':_0x5b0353,'data':_0x4769cc,'timestamp':new Date()[_0x5d0b04(0x198)]()};}function createValidationError(_0x1b5843,_0x142b89){return{'success':![],'statusCode':0x190,'message':_0x1b5843,'data':{'errors':_0x142b89},'timestamp':new Date()['toISOString']()};}function a0_0xdf1c(){var _0x2ada99=['ntaXm3zTqLbQEG','nde0otuWnZzgrevAteS','mZqXota3nuTVDgHYra','nJCWotq0neXoruzmwq','nda0ELDJEfjX','nLvXA1nXDa','ndu0nZuWnwrtzwDdCW','ngrKyKTXra','zxHWB3j0CW','mtG3ntjjrwHLywu','mZKXndyWnxbmvhvquG','Dg9ju09tDhjPBMC','mJbswKL3C3e','nda2nuDby1rJua'];a0_0xdf1c=function(){return _0x2ada99;};return a0_0xdf1c();}module[a0_0x1210d3(0x195)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
|
package/src/utils/rabbitmq.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x2bebf1=a0_0x560d;(function(_0x183efd,_0x3a062a){const _0x4e1748=a0_0x560d,_0x54a394=_0x183efd();while(!![]){try{const _0x28309f=parseInt(_0x4e1748(0x8e))/0x1*(-parseInt(_0x4e1748(0x80))/0x2)+parseInt(_0x4e1748(0x74))/0x3*(-parseInt(_0x4e1748(0x9d))/0x4)+-parseInt(_0x4e1748(0x77))/0x5*(parseInt(_0x4e1748(0x94))/0x6)+-parseInt(_0x4e1748(0x75))/0x7+-parseInt(_0x4e1748(0x8c))/0x8*(parseInt(_0x4e1748(0x8f))/0x9)+parseInt(_0x4e1748(0x99))/0xa+-parseInt(_0x4e1748(0x9b))/0xb*(-parseInt(_0x4e1748(0x87))/0xc);if(_0x28309f===_0x3a062a)break;else _0x54a394['push'](_0x54a394['shift']());}catch(_0x483744){_0x54a394['push'](_0x54a394['shift']());}}}(a0_0x4c4e,0x65bdd),require('dotenv')['config']());function a0_0x560d(_0x31c24e,_0xc53de4){_0x31c24e=_0x31c24e-0x70;const _0x4c4e00=a0_0x4c4e();let _0x560dbc=_0x4c4e00[_0x31c24e];if(a0_0x560d['WEhdUr']===undefined){var _0x4b24f1=function(_0x32ea1b){const _0x31c6c3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc3c16c='',_0x49a7b0='';for(let _0x216755=0x0,_0x49f339,_0x1f3e81,_0x15f891=0x0;_0x1f3e81=_0x32ea1b['charAt'](_0x15f891++);~_0x1f3e81&&(_0x49f339=_0x216755%0x4?_0x49f339*0x40+_0x1f3e81:_0x1f3e81,_0x216755++%0x4)?_0xc3c16c+=String['fromCharCode'](0xff&_0x49f339>>(-0x2*_0x216755&0x6)):0x0){_0x1f3e81=_0x31c6c3['indexOf'](_0x1f3e81);}for(let _0x507b5b=0x0,_0x3d07bf=_0xc3c16c['length'];_0x507b5b<_0x3d07bf;_0x507b5b++){_0x49a7b0+='%'+('00'+_0xc3c16c['charCodeAt'](_0x507b5b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49a7b0);};a0_0x560d['DwUAcd']=_0x4b24f1,a0_0x560d['oOOhVG']={},a0_0x560d['WEhdUr']=!![];}const _0x53de94=_0x4c4e00[0x0],_0x404bc8=_0x31c24e+_0x53de94,_0x1d402e=a0_0x560d['oOOhVG'][_0x404bc8];return!_0x1d402e?(_0x560dbc=a0_0x560d['DwUAcd'](_0x560dbc),a0_0x560d['oOOhVG'][_0x404bc8]=_0x560dbc):_0x560dbc=_0x1d402e,_0x560dbc;}const amqp=require(a0_0x2bebf1(0x9a)),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process['env'][a0_0x2bebf1(0x90)],ROUTING_KEY=process['env'][a0_0x2bebf1(0x89)],QUEUE=process[a0_0x2bebf1(0x92)][a0_0x2bebf1(0x86)];async function createConnection(){const _0x4668b7=a0_0x2bebf1,_0x15ba87={'qZCYV':function(_0x119c22,_0x20903f){return _0x119c22(_0x20903f);}};try{const _0x155363=await amqp['connect'](RABBITMQ_URL);return console['log']('['+formatDate(new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x155363;}catch(_0x478ea1){console[_0x4668b7(0x98)]('['+_0x15ba87['qZCYV'](formatDate,new Date())+_0x4668b7(0x91)+_0x478ea1[_0x4668b7(0x83)]);throw _0x478ea1;}}async function createChannel(_0x1904e1){const _0x5873ea=a0_0x2bebf1,_0x1de60d={'ORWtA':function(_0x287776,_0x1f1859){return _0x287776(_0x1f1859);}};try{const _0x95d8a9=await _0x1904e1[_0x5873ea(0x81)]();return console[_0x5873ea(0x9f)]('['+formatDate(new Date())+_0x5873ea(0x82)),_0x95d8a9;}catch(_0x433966){console[_0x5873ea(0x98)]('['+_0x1de60d[_0x5873ea(0x7b)](formatDate,new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0x433966['message']);throw _0x433966;}}function a0_0x4c4e(){const _0x387f8e=['nZa0mhvgshrJBq','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','mJi4EuDjrKPN','zgLYzwn0','Bg9N','D3bgswy','ihDHCYbJCMvHDgvKihDPDgGGysbKAwzMzxjLBNqGEc1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEs4','wg1sCxO','x3jLDhj5','mtuXnZfdsvfLAgu','mZu2otiZn3nLte9uyW','Aw5JBhvKzxm','nufsEKHvEa','CMv0CNKTzxHJAgfUz2u','zxHWB3j0CW','xsbfCNjVCIbJCMvHDgLUzYbXDwv1zsa','t1jxDee','yxnZzxj0rxHJAgfUz2u','yMLUzff1zxvL','ywPVyuK','xsbsywjIAxrnusbJB25Uzwn0Aw9UignSB3nLza','mLPRvLjzva','y3jLyxrLq2HHBM5LBa','xsbsywjIAxrnusbJAgfUBMvSignYzwf0zwqGC3vJy2vZC2z1BgX5','BwvZC2fNzq','yxnZzxj0uxvLDwu','zfrlAgy','uKfcqKLutvfFuvvfvuu','ndu4mtzJzfryt1G','ic0+ia','uKfcqKLutvfFuK9vveLor19lrvK','xsbszxrYEsbXDwv1zsa','Aw5LCxvPDMfSzw50igfYzW','ofPkuwzQAq','wgLKtLu','nta4ntyXqKfLsujc','nte4ntKZnxD6y3zJAq','uKfcqKLutvfFrvHdsefor0u','xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','zw52','igLZigfSCMvHzhKGAw4GDxnLihDPDgGGysbKAwzMzxjLBNqGCM91DgLUzYbRzxKU','mti1odu5mfzUwwzpBW','zxHPDa','Ec1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEq','ihDPDgGGreXy','zxjYB3i','nJu4otqWu0zTsNn2','yw1XCgXPyG'];a0_0x4c4e=function(){return _0x387f8e;};return a0_0x4c4e();}async function setupInfrastructure(_0x401d06){const _0x3ad27f=a0_0x2bebf1,_0xddbc9c={'XidNU':'retry-exchange','wpFIf':'direct','XmRqz':function(_0x53ef32,_0x2525dd){return _0x53ef32(_0x2525dd);},'ajoaI':function(_0x44c078,_0x572c0f){return _0x44c078(_0x572c0f);},'qdcqr':'created/ready','dTKhf':'found','ZpASO':function(_0x24d42c,_0x35060b){return _0x24d42c(_0x35060b);},'TdzMM':'inequivalent\x20arg','vyDje':_0x3ad27f(0x96),'UdsDN':function(_0xe59d10,_0x58a0c6){return _0xe59d10(_0x58a0c6);}};try{await _0x401d06[_0x3ad27f(0x7c)](_0xddbc9c[_0x3ad27f(0x8d)],_0x3ad27f(0x9e),{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x313aac){console[_0x3ad27f(0x98)]('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20exchange:',_0x313aac['message']);throw _0x313aac;}try{await _0x401d06['assertExchange'](EXCHANGE,_0xddbc9c[_0x3ad27f(0x70)],{'durable':!![],'autoDelete':![]}),console[_0x3ad27f(0x9f)]('['+_0xddbc9c[_0x3ad27f(0x72)](formatDate,new Date())+']\x20Exchange\x20'+EXCHANGE+'\x20created/ready');}catch(_0x4bdf35){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x4bdf35[_0x3ad27f(0x83)]);throw _0x4bdf35;}const _0x4f2c37=ROUTING_KEY+_0x3ad27f(0x73);try{const _0x2ab07a={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x401d06['assertQueue'](_0x4f2c37,_0x2ab07a),console['log']('['+formatDate(new Date())+_0x3ad27f(0x8a)+_0x4f2c37+'\x20created/ready'),await _0x401d06[_0x3ad27f(0x7d)](_0x4f2c37,_0x3ad27f(0x78),ROUTING_KEY),console[_0x3ad27f(0x9f)]('['+formatDate(new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+'\x20created');}catch(_0x1f5f5e){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x1f5f5e['message']);throw _0x1f5f5e;}try{const _0x1a31b1={'durable':!![],'arguments':{'x-dead-letter-exchange':'retry-exchange','x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x533a69=await _0x401d06[_0x3ad27f(0x84)](QUEUE,_0x1a31b1);console['log']('['+_0xddbc9c['ajoaI'](formatDate,new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x533a69['queue']===QUEUE?_0xddbc9c['qdcqr']:_0xddbc9c[_0x3ad27f(0x85)])+_0x3ad27f(0x97)),await _0x401d06['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console[_0x3ad27f(0x9f)]('['+_0xddbc9c['ZpASO'](formatDate,new Date())+']\x20Binding\x20'+EXCHANGE+_0x3ad27f(0x88)+QUEUE+'\x20('+ROUTING_KEY+')\x20created');}catch(_0x966046){if(_0x966046['message']['includes'](_0xddbc9c['TdzMM'])&&_0x966046['message'][_0x3ad27f(0x76)](_0xddbc9c['vyDje']))console[_0x3ad27f(0x98)]('\x0a['+_0xddbc9c[_0x3ad27f(0x7e)](formatDate,new Date())+']\x20ERROR:\x20Queue\x20'+QUEUE+_0x3ad27f(0x93)),console['error']('Queue\x20'+QUEUE+_0x3ad27f(0x71)),console['error']('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process[_0x3ad27f(0x95)](0x1);else{console[_0x3ad27f(0x98)]('['+formatDate(new Date())+_0x3ad27f(0x7a)+QUEUE+':',_0x966046['message']);throw _0x966046;}}}catch(_0x596dd6){if(!_0x596dd6[_0x3ad27f(0x83)]['includes'](_0x3ad27f(0x8b))){console[_0x3ad27f(0x98)]('['+_0xddbc9c['UdsDN'](formatDate,new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x596dd6['message']);throw _0x596dd6;}process['exit'](0x1);}}async function closeConnection(_0x3742f1){const _0x5e3c3f=a0_0x2bebf1;if(_0x3742f1)try{await _0x3742f1['close'](),console[_0x5e3c3f(0x9f)]('['+formatDate(new Date())+_0x5e3c3f(0x7f));}catch(_0x17aeb8){console[_0x5e3c3f(0x98)]('['+formatDate(new Date())+_0x5e3c3f(0x9c)+_0x17aeb8['message']);}}module[a0_0x2bebf1(0x79)]={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x3c1b96=a0_0x1373;(function(_0x21a755,_0x30015d){const _0x18e6c7=a0_0x1373,_0x22422c=_0x21a755();while(!![]){try{const _0x1ce0ac=-parseInt(_0x18e6c7(0x15d))/0x1*(-parseInt(_0x18e6c7(0x155))/0x2)+-parseInt(_0x18e6c7(0x14e))/0x3*(parseInt(_0x18e6c7(0x158))/0x4)+parseInt(_0x18e6c7(0x150))/0x5+-parseInt(_0x18e6c7(0x156))/0x6+parseInt(_0x18e6c7(0x15c))/0x7+parseInt(_0x18e6c7(0x166))/0x8+-parseInt(_0x18e6c7(0x16d))/0x9*(parseInt(_0x18e6c7(0x167))/0xa);if(_0x1ce0ac===_0x30015d)break;else _0x22422c['push'](_0x22422c['shift']());}catch(_0x70fd1b){_0x22422c['push'](_0x22422c['shift']());}}}(a0_0x5e21,0x6456f));const Redis=require('ioredis'),{logger}=require('./logger');class RedisClient{constructor(){this['client']=null,this['isConnected']=![];}['connect'](){const _0xc9bd82=a0_0x1373,_0x17a926={'DqgVP':function(_0xca3e41,_0x444e23){return _0xca3e41*_0x444e23;},'dJloT':_0xc9bd82(0x164),'CIzeN':_0xc9bd82(0x159),'rOffF':'localhost','YrtMG':_0xc9bd82(0x16c)};if(this[_0xc9bd82(0x16b)])return this['client'];try{return this[_0xc9bd82(0x16b)]=new Redis({'host':process[_0xc9bd82(0x169)]['REDIS_HOST']||_0x17a926['rOffF'],'port':parseInt(process[_0xc9bd82(0x169)]['REDIS_PORT'],0xa)||0x18ec,'password':process[_0xc9bd82(0x169)][_0xc9bd82(0x153)]||undefined,'db':parseInt(process[_0xc9bd82(0x169)][_0xc9bd82(0x15e)],0xa)||0x0,'retryStrategy'(_0x59c023){const _0x4027be=_0xc9bd82,_0x49c891=Math[_0x4027be(0x14f)](_0x17a926[_0x4027be(0x154)](_0x59c023,0x32),0x7d0);return _0x49c891;}}),this['client']['on']('connect',()=>{const _0x69fffa=_0xc9bd82;this['isConnected']=!![],logger[_0x69fffa(0x168)]({'event':_0x17a926['dJloT']},_0x69fffa(0x163));}),this['client']['on'](_0x17a926[_0xc9bd82(0x160)],_0x189a30=>{const _0x29ac82=_0xc9bd82;this[_0x29ac82(0x15f)]=![],logger[_0x29ac82(0x16c)]({'event':_0x29ac82(0x151),'error':_0x189a30[_0x29ac82(0x157)]},'Redis\x20connection\x20error:\x20'+_0x189a30[_0x29ac82(0x157)]);}),this[_0xc9bd82(0x16b)]['on']('close',()=>{const _0x144ddc=_0xc9bd82;this['isConnected']=![],logger[_0x144ddc(0x16a)]({'event':_0x144ddc(0x165)},_0x17a926[_0x144ddc(0x15b)]);}),this['client'];}catch(_0x3e8c59){logger['error']({'event':_0xc9bd82(0x15a),'error':_0x3e8c59[_0xc9bd82(0x157)]},'Failed\x20to\x20initialize\x20Redis');throw _0x3e8c59;}}['getClient'](){const _0x3aab37=a0_0x1373;return!this[_0x3aab37(0x16b)]&&this[_0x3aab37(0x170)](),this['client'];}async['ping'](_0x1ab6c8=0x1388){const _0x32408a=a0_0x1373,_0x4c8e2f={'FUQvj':function(_0x34a2a9,_0x31fe8f){return _0x34a2a9===_0x31fe8f;},'pGlSe':'PONG'};try{const _0x141606=this[_0x32408a(0x152)](),_0x5b0a3f=await Promise['race']([_0x141606['ping'](),new Promise((_0x2b5a67,_0x87f3ec)=>setTimeout(()=>_0x87f3ec(new Error(_0x32408a(0x16e))),_0x1ab6c8))]);return _0x4c8e2f['FUQvj'](_0x5b0a3f,_0x4c8e2f['pGlSe']);}catch(_0x15f1c1){return![];}}async[a0_0x3c1b96(0x14d)](){const _0x49bdff=a0_0x3c1b96;this['client']&&(await this[_0x49bdff(0x16b)][_0x49bdff(0x161)](),this[_0x49bdff(0x16b)]=null,this['isConnected']=![]);}[a0_0x3c1b96(0x162)](){const _0xbdf6bb=a0_0x3c1b96;this[_0xbdf6bb(0x16b)]&&(this['client']['disconnect'](),this['client']=null,this[_0xbdf6bb(0x15f)]=![]);}}function a0_0x5e21(){const _0x4c1f5a=['mJeXmtfut0PuC3K','BwLU','nteXndyWt3H4AM9r','CMvKAxnFzxjYB3i','z2v0q2XPzw50','uKvesvnFueftu1DpuKq','rhfNvLa','nZK3nZHAwvPwyNq','mZi0mdGZngPfz3f3wa','BwvZC2fNzq','mZG4BuzWshzu','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','CMvKAxnFAw5PDf9LCNjVCG','q0L6zu4','ntu5ode3m1nVufvYuW','mJb2tM1hs3G','uKvesvnFrei','AxndB25Uzwn0zwq','wxj0tuC','CxvPDa','zM9Yy2veAxnJB25Uzwn0','uMvKAxmGy29UBMvJDgvKihn1y2nLC3nMDwXSEq','CMvKAxnFy29UBMvJDgvK','CMvKAxnFzgLZy29UBMvJDgvK','mtG1nZy0mhPLDNjeCa','mZe3mgPiCLfqAq','Aw5MBW','zw52','D2fYBG','y2XPzw50','zxjYB3i','odq2oxPICuPWrW','uMvKAxmGueLorYb0Aw1LB3v0','zxHWB3j0CW','y29UBMvJDa','zgLZy29UBMvJDa'];a0_0x5e21=function(){return _0x4c1f5a;};return a0_0x5e21();}function a0_0x1373(_0x2c1cd1,_0x5b6d6a){_0x2c1cd1=_0x2c1cd1-0x14d;const _0x5e21e9=a0_0x5e21();let _0x137373=_0x5e21e9[_0x2c1cd1];if(a0_0x1373['ftzfyw']===undefined){var _0x4d89ff=function(_0x40e1bd){const _0x2696db='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c3e93='',_0x1ece3f='';for(let _0x354d8b=0x0,_0x39468f,_0x360b2a,_0x20e519=0x0;_0x360b2a=_0x40e1bd['charAt'](_0x20e519++);~_0x360b2a&&(_0x39468f=_0x354d8b%0x4?_0x39468f*0x40+_0x360b2a:_0x360b2a,_0x354d8b++%0x4)?_0x3c3e93+=String['fromCharCode'](0xff&_0x39468f>>(-0x2*_0x354d8b&0x6)):0x0){_0x360b2a=_0x2696db['indexOf'](_0x360b2a);}for(let _0x12a4e6=0x0,_0x53869a=_0x3c3e93['length'];_0x12a4e6<_0x53869a;_0x12a4e6++){_0x1ece3f+='%'+('00'+_0x3c3e93['charCodeAt'](_0x12a4e6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ece3f);};a0_0x1373['tucweg']=_0x4d89ff,a0_0x1373['vvMzUv']={},a0_0x1373['ftzfyw']=!![];}const _0x2671e9=_0x5e21e9[0x0],_0x3a298a=_0x2c1cd1+_0x2671e9,_0x1533ce=a0_0x1373['vvMzUv'][_0x3a298a];return!_0x1533ce?(_0x137373=a0_0x1373['tucweg'](_0x137373),a0_0x1373['vvMzUv'][_0x3a298a]=_0x137373):_0x137373=_0x1533ce,_0x137373;}module[a0_0x3c1b96(0x16f)]=new RedisClient();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0xeff9fe=a0_0x5323;(function(_0x5c50a5,_0x5c0ecc){const _0xe14ece=a0_0x5323,_0x8e2635=_0x5c50a5();while(!![]){try{const _0x5846c1=parseInt(_0xe14ece(0x11d))/0x1+parseInt(_0xe14ece(0x10c))/0x2*(parseInt(_0xe14ece(0x107))/0x3)+parseInt(_0xe14ece(0x101))/0x4+parseInt(_0xe14ece(0x10a))/0x5*(parseInt(_0xe14ece(0x10e))/0x6)+-parseInt(_0xe14ece(0x110))/0x7+parseInt(_0xe14ece(0x118))/0x8*(-parseInt(_0xe14ece(0x122))/0x9)+parseInt(_0xe14ece(0x121))/0xa*(-parseInt(_0xe14ece(0x104))/0xb);if(_0x5846c1===_0x5c0ecc)break;else _0x8e2635['push'](_0x8e2635['shift']());}catch(_0x310198){_0x8e2635['push'](_0x8e2635['shift']());}}}(a0_0x3a02,0xab398));const redisClient=require(a0_0xeff9fe(0x115)),{logger}=require(a0_0xeff9fe(0x119));function a0_0x5323(_0x33d669,_0x55f9d1){_0x33d669=_0x33d669-0x100;const _0x3a02f3=a0_0x3a02();let _0x532322=_0x3a02f3[_0x33d669];if(a0_0x5323['RfVZql']===undefined){var _0x3b411e=function(_0x3bab87){const _0x38ce06='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55ad4e='',_0x679e7b='';for(let _0x198882=0x0,_0x17220a,_0x3f7359,_0x2b261b=0x0;_0x3f7359=_0x3bab87['charAt'](_0x2b261b++);~_0x3f7359&&(_0x17220a=_0x198882%0x4?_0x17220a*0x40+_0x3f7359:_0x3f7359,_0x198882++%0x4)?_0x55ad4e+=String['fromCharCode'](0xff&_0x17220a>>(-0x2*_0x198882&0x6)):0x0){_0x3f7359=_0x38ce06['indexOf'](_0x3f7359);}for(let _0x44acd2=0x0,_0xbefb85=_0x55ad4e['length'];_0x44acd2<_0xbefb85;_0x44acd2++){_0x679e7b+='%'+('00'+_0x55ad4e['charCodeAt'](_0x44acd2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x679e7b);};a0_0x5323['fRYquF']=_0x3b411e,a0_0x5323['vUvlhn']={},a0_0x5323['RfVZql']=!![];}const _0x154321=_0x3a02f3[0x0],_0x521551=_0x33d669+_0x154321,_0x480daf=a0_0x5323['vUvlhn'][_0x521551];return!_0x480daf?(_0x532322=a0_0x5323['fRYquF'](_0x532322),a0_0x5323['vUvlhn'][_0x521551]=_0x532322):_0x532322=_0x480daf,_0x532322;}class RedisHelper{constructor(){const _0x29a3de=a0_0xeff9fe;this['_prefix']=null,this[_0x29a3de(0x102)]=parseInt(process['env']['EXPORT_FILE_EXPIRY'],0xa)||0xe10;}get['prefix'](){const _0x58ade0=a0_0xeff9fe,_0x40b223={'rkViI':_0x58ade0(0x117)};if(!this['_prefix']){const _0x22cc17=process[_0x58ade0(0x120)]['RESTFORGE_PROJECT_NAME']||_0x40b223['rkViI'];this['_prefix']=_0x58ade0(0x11a)+_0x22cc17+':export:';}return this['_prefix'];}async[a0_0xeff9fe(0x111)](_0xd459a9,_0x5551a0){const _0x4a5013=a0_0xeff9fe,_0x567c1b={'ndIuR':_0x4a5013(0x10f),'EPZLS':'Failed\x20to\x20set\x20job\x20in\x20Redis'};try{const _0x5172b3=redisClient[_0x4a5013(0x106)](),_0x432c59=''+this[_0x4a5013(0x112)]+_0xd459a9;return await _0x5172b3['setex'](_0x432c59,this['ttl'],JSON['stringify'](_0x5551a0)),!![];}catch(_0x4f52b7){return logger['error']({'event':_0x567c1b['ndIuR'],'jobId':_0xd459a9,'error':_0x4f52b7[_0x4a5013(0x114)]},_0x567c1b[_0x4a5013(0x103)]),![];}}async['getJob'](_0x5e86fe){const _0x478630=a0_0xeff9fe,_0x317b39={'rEuZp':'redis_get_error','Wdqah':'Failed\x20to\x20get\x20job\x20from\x20Redis'};try{const _0x4e6d0a=redisClient['getClient'](),_0x1dfcde=''+this[_0x478630(0x112)]+_0x5e86fe,_0x539a8e=await _0x4e6d0a['get'](_0x1dfcde);return _0x539a8e?JSON[_0x478630(0x113)](_0x539a8e):null;}catch(_0x211b70){return logger[_0x478630(0x10d)]({'event':_0x317b39[_0x478630(0x11e)],'jobId':_0x5e86fe,'error':_0x211b70['message']},_0x317b39['Wdqah']),null;}}async[a0_0xeff9fe(0x116)](_0x49d331,_0x1bf3c1){const _0x23df0d=a0_0xeff9fe,_0x3e68e2=await this[_0x23df0d(0x100)](_0x49d331);if(!_0x3e68e2)return![];const _0x57a5a9={..._0x3e68e2,..._0x1bf3c1};return await this[_0x23df0d(0x111)](_0x49d331,_0x57a5a9);}async['deleteJob'](_0x551795){const _0x2cfa9e=a0_0xeff9fe,_0x271c15={'CXUaS':'redis_delete_error','ulLam':'Failed\x20to\x20delete\x20job\x20from\x20Redis'};try{const _0xd21f64=redisClient['getClient'](),_0x156493=''+this['prefix']+_0x551795;return await _0xd21f64[_0x2cfa9e(0x109)](_0x156493),!![];}catch(_0x57643a){return logger['error']({'event':_0x271c15[_0x2cfa9e(0x11f)],'jobId':_0x551795,'error':_0x57643a[_0x2cfa9e(0x114)]},_0x271c15['ulLam']),![];}}async[a0_0xeff9fe(0x108)](){const _0x6030ab=a0_0xeff9fe;try{const _0x291efd=redisClient[_0x6030ab(0x106)](),_0x387169=await _0x291efd['keys'](this['prefix']+'*'),_0x5da9a9=[];for(const _0x5331f0 of _0x387169){const _0x3d01bb=await _0x291efd[_0x6030ab(0x105)](_0x5331f0);_0x3d01bb&&_0x5da9a9[_0x6030ab(0x11c)](JSON['parse'](_0x3d01bb));}return _0x5da9a9;}catch(_0x3376b1){return logger['error']({'event':_0x6030ab(0x10b),'error':_0x3376b1['message']},_0x6030ab(0x11b)),[];}}}function a0_0x3a02(){const _0x2ce790=['mZG3mZa0BMfRAfDr','lI9SB2DNzxi','CMvZDgzVCMDLoG','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','ChvZAa','mte0mZmXnMTvrgTlzW','CKv1wNa','q1Hvyvm','zw52','otyYnZm1mg9dv2XSwG','mZzAzfD1r3i','z2v0sM9I','ntu1mtiYmgrUALLRza','DhrS','rvbAtfm','mZn4wLvuvee','z2v0','z2v0q2XPzw50','otCWmJC4wgrOsxfu','z2v0qwXSsM9ICW','zgvS','ntbPyLjtCfy','CMvKAxnFz2v0ywXSx2vYCM9Y','nKDHz0LVEG','zxjYB3i','ntq4mJiWBMrqrxzZ','CMvKAxnFC2v0x2vYCM9Y','ndqYmZm0mNrWu3rVqq','C2v0sM9I','ChjLzML4','CgfYC2u','BwvZC2fNzq','lI9YzwrPCY1JBgLLBNq','DxbKyxrLsM9I','zgvMyxvSDa'];a0_0x3a02=function(){return _0x2ce790;};return a0_0x3a02();}module['exports']=new RedisHelper();
|