@restforgejs/platform 5.1.6 → 5.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/generators/cli/fast-track.js +63 -43
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x292047=a0_0x2b57;(function(_0xdde8ff,_0x570895){const _0x1270d7=a0_0x2b57,_0xbe487b=_0xdde8ff();while(!![]){try{const _0x28c24c=-parseInt(_0x1270d7(0x21e))/0x1*(parseInt(_0x1270d7(0x202))/0x2)+parseInt(_0x1270d7(0x1f9))/0x3+-parseInt(_0x1270d7(0x23b))/0x4*(-parseInt(_0x1270d7(0x204))/0x5)+parseInt(_0x1270d7(0x208))/0x6+-parseInt(_0x1270d7(0x235))/0x7+parseInt(_0x1270d7(0x225))/0x8*(parseInt(_0x1270d7(0x1f0))/0x9)+parseInt(_0x1270d7(0x1f3))/0xa*(parseInt(_0x1270d7(0x21a))/0xb);if(_0x28c24c===_0x570895)break;else _0xbe487b['push'](_0xbe487b['shift']());}catch(_0x47675e){_0xbe487b['push'](_0xbe487b['shift']());}}}(a0_0x328b,0xaa8a3));function a0_0x2b57(_0x40fb07,_0x425755){_0x40fb07=_0x40fb07-0x1ea;const _0x328b29=a0_0x328b();let _0x2b578b=_0x328b29[_0x40fb07];if(a0_0x2b57['yKMoXr']===undefined){var _0x3789ed=function(_0x6972c2){const _0x46af56='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x425dc8='',_0x12ac16='';for(let _0x2770e3=0x0,_0x1abe29,_0x577264,_0x2566b8=0x0;_0x577264=_0x6972c2['charAt'](_0x2566b8++);~_0x577264&&(_0x1abe29=_0x2770e3%0x4?_0x1abe29*0x40+_0x577264:_0x577264,_0x2770e3++%0x4)?_0x425dc8+=String['fromCharCode'](0xff&_0x1abe29>>(-0x2*_0x2770e3&0x6)):0x0){_0x577264=_0x46af56['indexOf'](_0x577264);}for(let _0x9b5b59=0x0,_0x7468b6=_0x425dc8['length'];_0x9b5b59<_0x7468b6;_0x9b5b59++){_0x12ac16+='%'+('00'+_0x425dc8['charCodeAt'](_0x9b5b59)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x12ac16);};a0_0x2b57['qczgkf']=_0x3789ed,a0_0x2b57['XPFKke']={},a0_0x2b57['yKMoXr']=!![];}const _0x5016ed=_0x328b29[0x0],_0x4aa2a8=_0x40fb07+_0x5016ed,_0x41e12f=a0_0x2b57['XPFKke'][_0x4aa2a8];return!_0x41e12f?(_0x2b578b=a0_0x2b57['qczgkf'](_0x2b578b),a0_0x2b57['XPFKke'][_0x4aa2a8]=_0x2b578b):_0x2b578b=_0x41e12f,_0x2b578b;}function a0_0x328b(){const _0x350426=['BgfZDeLUzgv4t2y','t1DVsNi','zxHWB3j0CW','lI9SB2DNzxi','te9ds19esvnuuKLcvvrfrf9uveW','D3jPDgvFBg9JA19Hy3f1AxjLza','tw1jDvq','C2v0','zxHWAxjL','ode5owrpyMHbzW','D3jPDgvFBg9JA193ywL0Aw5N','ywnXDwLYzvjLywrmB2nR','mJaYmtbduKDhEM8','x2LUAxrdB25MAwC','Cg93','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','x3n0CMf0zwD5','x2rLzMf1BhruveW','mtyYndy4B1jZuePz','x3jLDhj5rgvSyxK','BM93','D3jPDgvFBg9JA19LCNjVCG','zxjYB3i','x3jLDhj5q291BNq','A054EKi','zw5HyMXLza','z2v0','mJu5mde5nKHoz3fXDG','x3DVCMTLCKLK','mZGXmZa3nwTIDxDiCG','ywLhDKW','CMvQzwn0','EuPsquK','nJaWmty4nKLOy3zNDa','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','AMzPzgi','venqA1m','Aw5MBW','oNjLywq6','x3bYzwzPEa','zM9Zrgq','ywXS','zgvIDwC','rwHcs1O','x2LUAxrPywXPEMvK','D3zfvLq','z2DiC24','CMvHzf9SB2nRx2vYCM9Y','D3jPDgu','zgvMyxvSDfruta','te9ds19esvnuuKLcvvrfrf9ftKfcteve','mZa5mujgrejnBW','zw52','ChjLzML4','D29YA2vYswq','mvr6Bhf3qW','Bg9JA19JB25MAwDFAw5PDa','D2fYBG','C3vIC3rYAw5N','z2v0q2XPzw50','CMv0CNLezwXHEq','x2vUC3vYzuLUAxrPywXPEMvK','mJe0nfrAt1fuAG','rKzgEwG','CMvHza','BM1srwG','DxvPza','CMv0CNLdB3vUDa','CMvSzwfZzuXVy2S','CMvHzf9SB2nRx3rPBwvVDxq','z2vUzxjHDgvmB2nRvMfSDwu','C2XLzxa','uuvWBfC','qwPJz3y','x2vUywjSzwq','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','uufOCuG','lcbZDhjHDgvNEtOG','ndq0odmWngDwuefNBq','svrSvhe','Aw5JBhvKzxm','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','yNvPBgrmB2nRs2v5','BwvZC2fNzq','ne9Qwu5AwG'];a0_0x328b=function(){return _0x350426;};return a0_0x328b();}const redisClient=require('./redis-client'),{logger}=require(a0_0x292047(0x1ea)),{v4:uuidv4}=require(a0_0x292047(0x229));class LockManager{constructor(){const _0x4f3eb5=a0_0x292047;this[_0x4f3eb5(0x20e)]=null,this[_0x4f3eb5(0x231)]=null,this[_0x4f3eb5(0x1f8)]=null,this[_0x4f3eb5(0x1fe)]=null,this[_0x4f3eb5(0x1fa)]=null,this[_0x4f3eb5(0x1f7)]=null,this['_workerId']=null,this[_0x4f3eb5(0x213)]=![];}[a0_0x292047(0x1f4)](){const _0x5df6b8=a0_0x292047,_0x610eab={'fosDd':function(_0x2ae856,_0x3bcca0){return _0x2ae856===_0x3bcca0;},'EhBKZ':function(_0x231506,_0x519f8c,_0x51f533){return _0x231506(_0x519f8c,_0x51f533);},'gmAJC':function(_0x219348,_0x283c97,_0x51a7cd){return _0x219348(_0x283c97,_0x51a7cd);}};this[_0x5df6b8(0x20e)]='rf:lock:',this[_0x5df6b8(0x231)]=_0x610eab[_0x5df6b8(0x20f)](process['env'][_0x5df6b8(0x219)],'true'),this[_0x5df6b8(0x1f8)]=_0x610eab['EhBKZ'](parseInt,process[_0x5df6b8(0x21b)][_0x5df6b8(0x1eb)],0xa)||0xa,this['_retryCount']=_0x610eab[_0x5df6b8(0x212)](parseInt,process[_0x5df6b8(0x21b)]['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3,this[_0x5df6b8(0x1fa)]=_0x610eab['gmAJC'](parseInt,process['env'][_0x5df6b8(0x232)],0xa)||0x64,this[_0x5df6b8(0x1f7)]=process['env']['LOCK_DISTRIBUTED_STRATEGY']||'retry',this['_workerId']='worker-'+process['pid'],this['_initialized']=!![],logger[_0x5df6b8(0x20c)]({'event':_0x5df6b8(0x21f),'enabled':this['_enabled'],'strategy':this['_strategy'],'ttl':this[_0x5df6b8(0x1f8)],'retryCount':this['_retryCount'],'retryDelay':this[_0x5df6b8(0x1fa)],'workerId':this[_0x5df6b8(0x203)]},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x5df6b8(0x231)]+_0x5df6b8(0x234)+this[_0x5df6b8(0x1f7)]);}['_ensureInitialized'](){const _0x17eccb=a0_0x292047;!this['_initialized']&&this[_0x17eccb(0x1f4)]();}get['prefix'](){return this['_ensureInitialized'](),this['_prefix'];}get['enabled'](){const _0x5e45d3=a0_0x292047;return this[_0x5e45d3(0x224)](),this[_0x5e45d3(0x231)];}get['defaultTTL'](){const _0x3fc9dc=a0_0x292047;return this['_ensureInitialized'](),this[_0x3fc9dc(0x1f8)];}get[a0_0x292047(0x22a)](){const _0x20afb6=a0_0x292047;return this['_ensureInitialized'](),this[_0x20afb6(0x1fe)];}get['retryDelay'](){const _0x1adab2=a0_0x292047;return this['_ensureInitialized'](),this[_0x1adab2(0x1fa)];}get['strategy'](){const _0x2396e1=a0_0x292047;return this[_0x2396e1(0x224)](),this[_0x2396e1(0x1f7)];}get[a0_0x292047(0x21d)](){const _0x37fd0d=a0_0x292047;return this[_0x37fd0d(0x224)](),this['_workerId'];}['buildLockKey'](_0x31882d){const _0x8edd8a=a0_0x292047,{module:_0x3a87f7,endpoint:_0x2b92bc,lockType:_0x18e5ba,recordId:_0x55b691}=_0x31882d;if(_0x55b691)return''+this[_0x8edd8a(0x21c)]+_0x3a87f7+':'+_0x2b92bc+':'+_0x55b691+':'+_0x18e5ba;return''+this['prefix']+_0x3a87f7+':'+_0x2b92bc+':'+_0x18e5ba;}[a0_0x292047(0x22d)](){const _0x1af2d3=a0_0x292047,_0x15c61f={'yJRAI':function(_0x29d947){return _0x29d947();}};return this['workerId']+':'+_0x15c61f[_0x1af2d3(0x207)](uuidv4)+':'+Date[_0x1af2d3(0x1fb)]();}async[a0_0x292047(0x1f2)](_0x1fe932){const _0x2f90e8=a0_0x292047,_0x33211b={'rdivS':_0x2f90e8(0x217),'QAhqH':'read','tbeLj':function(_0x188bdc,_0x41985){return _0x188bdc<_0x41985;},'KSZzL':'READ\x20lock\x20acquired','ITlTq':'read_lock_waiting','QEplW':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release'};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0xf80326=this['buildLockKey']({..._0x1fe932,'lockType':_0x33211b['rdivS']}),_0x211938=this['buildLockKey']({..._0x1fe932,'lockType':_0x33211b[_0x2f90e8(0x233)]}),_0x3bca6b=this['generateLockValue']();try{const _0x5d6300=redisClient[_0x2f90e8(0x222)]();for(let _0x1f9780=0x0;_0x33211b['tbeLj'](_0x1f9780,this[_0x2f90e8(0x22a)]);_0x1f9780++){const _0x554c5e=await _0x5d6300[_0x2f90e8(0x201)](_0xf80326);if(!_0x554c5e){await _0x5d6300['incr'](_0x211938),await _0x5d6300[_0x2f90e8(0x1ef)](_0x211938,this['defaultTTL']);const _0x1791b4=_0x211938+':'+_0x3bca6b;return await _0x5d6300['setex'](_0x1791b4,this['defaultTTL'],_0x3bca6b),logger[_0x2f90e8(0x211)]({'event':'read_lock_acquired','key':_0x211938,'value':_0x3bca6b},_0x33211b['KSZzL']),{'success':!![],'lockValue':_0x3bca6b,'lockKey':_0x1791b4};}logger[_0x2f90e8(0x211)]({'event':_0x33211b[_0x2f90e8(0x236)],'writeKey':_0xf80326,'attempt':_0x1f9780},_0x33211b[_0x2f90e8(0x22f)]),await this[_0x2f90e8(0x22e)](this['retryDelay']*Math[_0x2f90e8(0x1f5)](0x2,_0x1f9780));}return logger[_0x2f90e8(0x220)]({'event':_0x2f90e8(0x22c),'key':_0x211938},_0x2f90e8(0x1f6)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x290620){return logger[_0x2f90e8(0x1fd)]({'event':_0x2f90e8(0x216),'error':_0x290620['message']},'READ\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x1ae196){const _0x3152fb=a0_0x292047,_0x4a33a4={'KSofF':'read','AGWgS':function(_0x10dcbd,_0xb71a41){return _0x10dcbd===_0xb71a41;},'VWVbH':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','acqwp':function(_0x1e1d2f,_0x23a8ee){return _0x1e1d2f===_0x23a8ee;},'CpXwX':_0x3152fb(0x1ec),'TCPkS':'WRITE\x20lock\x20acquired\x20(retry\x20mode)','Ajcgv':_0x3152fb(0x209),'DrEWl':function(_0x1a7ac3,_0x5796a1){return _0x1a7ac3*_0x5796a1;},'OWoJr':_0x3152fb(0x238),'wvEVT':_0x3152fb(0x1fc),'jfidb':'WRITE\x20lock\x20error'};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x147d9b=this[_0x3152fb(0x239)]({..._0x1ae196,'lockType':'write'}),_0x39b961=this[_0x3152fb(0x239)]({..._0x1ae196,'lockType':_0x4a33a4['KSofF']}),_0xa7e9f=this[_0x3152fb(0x22d)]();try{const _0x2e1e86=redisClient[_0x3152fb(0x222)]();if(_0x4a33a4['AGWgS'](this['strategy'],_0x3152fb(0x206))){const _0x1f9487=await _0x2e1e86['set'](_0x147d9b,_0xa7e9f,'EX',this[_0x3152fb(0x218)],'NX');if(_0x1f9487==='OK')return logger['debug']({'event':'write_lock_acquired','key':_0x147d9b,'value':_0xa7e9f,'strategy':'reject'},'WRITE\x20lock\x20acquired\x20(reject\x20mode)'),{'success':!![],'lockValue':_0xa7e9f,'lockKey':_0x147d9b};return logger[_0x3152fb(0x211)]({'event':'write_lock_rejected','key':_0x147d9b},_0x4a33a4['VWVbH']),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x10d44e=0x0;_0x10d44e<this['retryCount'];_0x10d44e++){const [_0x3f8276,_0x514a23]=await Promise[_0x3152fb(0x210)]([_0x2e1e86[_0x3152fb(0x201)](_0x39b961),_0x2e1e86[_0x3152fb(0x201)](_0x147d9b)]);if(!_0x514a23&&(!_0x3f8276||_0x4a33a4['acqwp'](parseInt(_0x3f8276),0x0))){const _0x279315=await _0x2e1e86[_0x3152fb(0x1ee)](_0x147d9b,_0xa7e9f,'EX',this[_0x3152fb(0x218)],'NX');if(_0x4a33a4['AGWgS'](_0x279315,'OK'))return logger['debug']({'event':_0x4a33a4['CpXwX'],'key':_0x147d9b,'value':_0xa7e9f,'strategy':'retry'},_0x4a33a4[_0x3152fb(0x20b)]),{'success':!![],'lockValue':_0xa7e9f,'lockKey':_0x147d9b};}logger['debug']({'event':_0x3152fb(0x1f1),'writeKey':_0x147d9b,'readCount':_0x3f8276,'attempt':_0x10d44e},_0x4a33a4[_0x3152fb(0x230)]),await this[_0x3152fb(0x22e)](_0x4a33a4['DrEWl'](this[_0x3152fb(0x223)],Math[_0x3152fb(0x1f5)](0x2,_0x10d44e)));}return logger['warn']({'event':'write_lock_timeout','key':_0x147d9b},_0x4a33a4[_0x3152fb(0x23d)]),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x3810b2){return logger[_0x3152fb(0x1fd)]({'event':_0x4a33a4[_0x3152fb(0x214)],'error':_0x3810b2[_0x3152fb(0x23a)]},_0x4a33a4[_0x3152fb(0x20a)]),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x292047(0x22b)](_0x60d950,_0x123a0b){const _0x589161=a0_0x292047,_0xc62a37={'aiGvL':'read_lock_released','MmIuT':'READ\x20lock\x20released','ggHsn':'write_lock_released','HQabG':'WRITE\x20lock\x20released','FFFyh':'lock_release_not_owner'};if(!this['enabled']||!_0x60d950)return!![];try{const _0x296f0d=redisClient['getClient']();if(_0x60d950[_0x589161(0x237)](_0x589161(0x20d))){await _0x296f0d['del'](_0x60d950);const _0x351209=_0x60d950[_0x589161(0x221)](0x0,_0x60d950[_0x589161(0x23c)](':')),_0x24afe3=await _0x296f0d['get'](_0x351209);return _0x24afe3&&parseInt(_0x24afe3)>0x0&&await _0x296f0d['decr'](_0x351209),logger['debug']({'event':_0xc62a37[_0x589161(0x205)],'key':_0x60d950},_0xc62a37[_0x589161(0x1ed)]),!![];}const _0x12c1a6='\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',_0x4feb13=await _0x296f0d['eval'](_0x12c1a6,0x1,_0x60d950,_0x123a0b);if(_0x4feb13===0x1)return logger['debug']({'event':_0xc62a37[_0x589161(0x215)],'key':_0x60d950},_0xc62a37['HQabG']),!![];return logger['warn']({'event':_0xc62a37[_0x589161(0x226)],'key':_0x60d950},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0x318f26){return logger['error']({'event':'lock_release_error','key':_0x60d950,'error':_0x318f26[_0x589161(0x23a)]},'Lock\x20release\x20error'),![];}}async['extendLock'](_0x5e07c4,_0x475953,_0x469019=null){const _0x177abb=a0_0x292047,_0xf642c5={'gdevz':'lock_extended','rBvQV':'lock_extend_error','kNxzB':'Lock\x20extend\x20error'};if(!this['enabled']||!_0x5e07c4)return!![];try{const _0x13136e=redisClient['getClient'](),_0x48846f='\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',_0x337ecf=await _0x13136e['eval'](_0x48846f,0x1,_0x5e07c4,_0x475953,_0x469019||this['defaultTTL']);if(_0x337ecf===0x1)return logger['debug']({'event':_0xf642c5['gdevz'],'key':_0x5e07c4,'ttl':_0x469019||this[_0x177abb(0x218)]},'Lock\x20TTL\x20extended'),!![];return![];}catch(_0x507635){return logger[_0x177abb(0x1fd)]({'event':_0xf642c5['rBvQV'],'key':_0x5e07c4,'error':_0x507635['message']},_0xf642c5[_0x177abb(0x1ff)]),![];}}['isEnabled'](){const _0x1f7400=a0_0x292047;return this[_0x1f7400(0x200)];}['sleep'](_0x26db53){return new Promise(_0xe15dc0=>setTimeout(_0xe15dc0,_0x26db53));}async['getLockInfo'](_0x2c26c5){const _0x5c1a61=a0_0x292047,_0x261407={'nmREh':_0x5c1a61(0x217),'qZKWn':_0x5c1a61(0x227),'axfrm':function(_0x24fdea,_0x22ec04){return _0x24fdea||_0x22ec04;}};if(!this['enabled'])return{'enabled':![]};try{const _0x29a453=redisClient['getClient'](),_0x419872=this[_0x5c1a61(0x239)]({..._0x2c26c5,'lockType':_0x261407[_0x5c1a61(0x228)]}),_0x41fa54=this['buildLockKey']({..._0x2c26c5,'lockType':_0x261407['qZKWn']}),[_0x18811e,_0x1a422c]=await Promise['all']([_0x29a453[_0x5c1a61(0x201)](_0x419872),_0x29a453['get'](_0x41fa54)]);return{'enabled':!![],'writeLock':_0x261407['axfrm'](_0x18811e,null),'readCount':parseInt(_0x1a422c)||0x0,'writeKey':_0x419872,'readKey':_0x41fa54};}catch(_0x4828ba){return{'enabled':!![],'error':_0x4828ba['message']};}}}module[a0_0x292047(0x23e)]=new LockManager();
|
|
1
|
+
function a0_0x4a29(_0x391968,_0x237662){_0x391968=_0x391968-0x1dc;const _0x4bcd12=a0_0x4bcd();let _0x4a2960=_0x4bcd12[_0x391968];if(a0_0x4a29['WtSscA']===undefined){var _0x15cc5b=function(_0x8b403d){const _0x482d6d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2a2bc0='',_0x2fca0f='';for(let _0x24ac9d=0x0,_0x44b523,_0x57459e,_0x5d92d3=0x0;_0x57459e=_0x8b403d['charAt'](_0x5d92d3++);~_0x57459e&&(_0x44b523=_0x24ac9d%0x4?_0x44b523*0x40+_0x57459e:_0x57459e,_0x24ac9d++%0x4)?_0x2a2bc0+=String['fromCharCode'](0xff&_0x44b523>>(-0x2*_0x24ac9d&0x6)):0x0){_0x57459e=_0x482d6d['indexOf'](_0x57459e);}for(let _0x59279e=0x0,_0x54d187=_0x2a2bc0['length'];_0x59279e<_0x54d187;_0x59279e++){_0x2fca0f+='%'+('00'+_0x2a2bc0['charCodeAt'](_0x59279e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2fca0f);};a0_0x4a29['sGfrNc']=_0x15cc5b,a0_0x4a29['VuCvhj']={},a0_0x4a29['WtSscA']=!![];}const _0x21d601=_0x4bcd12[0x0],_0x283a65=_0x391968+_0x21d601,_0x39f7a4=a0_0x4a29['VuCvhj'][_0x283a65];return!_0x39f7a4?(_0x4a2960=a0_0x4a29['sGfrNc'](_0x4a2960),a0_0x4a29['VuCvhj'][_0x283a65]=_0x4a2960):_0x4a2960=_0x39f7a4,_0x4a2960;}const a0_0x8ea4dc=a0_0x4a29;(function(_0x1ed246,_0x45766e){const _0x3cb126=a0_0x4a29,_0x2acb3c=_0x1ed246();while(!![]){try{const _0x31fa83=parseInt(_0x3cb126(0x226))/0x1*(-parseInt(_0x3cb126(0x22c))/0x2)+-parseInt(_0x3cb126(0x1e2))/0x3*(parseInt(_0x3cb126(0x21a))/0x4)+parseInt(_0x3cb126(0x221))/0x5+-parseInt(_0x3cb126(0x216))/0x6+parseInt(_0x3cb126(0x22b))/0x7+-parseInt(_0x3cb126(0x215))/0x8*(parseInt(_0x3cb126(0x20f))/0x9)+parseInt(_0x3cb126(0x1f8))/0xa;if(_0x31fa83===_0x45766e)break;else _0x2acb3c['push'](_0x2acb3c['shift']());}catch(_0x548239){_0x2acb3c['push'](_0x2acb3c['shift']());}}}(a0_0x4bcd,0x721d9));const redisClient=require(a0_0x8ea4dc(0x1df)),{logger}=require(a0_0x8ea4dc(0x224)),{v4:uuidv4}=require(a0_0x8ea4dc(0x209));class LockManager{constructor(){const _0x2cf802=a0_0x8ea4dc,_0x24b445='0|1|6|3|7|4|2|5'['split']('|');let _0x345ee9=0x0;while(!![]){switch(_0x24b445[_0x345ee9++]){case'0':this[_0x2cf802(0x1dd)]=null;continue;case'1':this['_enabled']=null;continue;case'2':this['_workerId']=null;continue;case'3':this['_retryCount']=null;continue;case'4':this['_strategy']=null;continue;case'5':this[_0x2cf802(0x1f0)]=![];continue;case'6':this['_defaultTTL']=null;continue;case'7':this['_retryDelay']=null;continue;}break;}}['_initConfig'](){const _0x4b0ba3=a0_0x8ea4dc,_0x50b91d={'vulmf':function(_0x1d428f,_0x2ecfaa){return _0x1d428f===_0x2ecfaa;},'VxbiA':'true','lMtdq':function(_0x5cfb43,_0x146f29,_0xcb08e7){return _0x5cfb43(_0x146f29,_0xcb08e7);},'vtahA':function(_0x37ab2b,_0x296912,_0x146298){return _0x37ab2b(_0x296912,_0x146298);},'ELVBe':_0x4b0ba3(0x208)};this[_0x4b0ba3(0x1dd)]=_0x4b0ba3(0x22a),this['_enabled']=_0x50b91d['vulmf'](process['env']['LOCK_DISTRIBUTED_ENABLED'],_0x50b91d['VxbiA']),this[_0x4b0ba3(0x229)]=_0x50b91d[_0x4b0ba3(0x218)](parseInt,process[_0x4b0ba3(0x1ea)][_0x4b0ba3(0x1e4)],0xa)||0xa,this[_0x4b0ba3(0x21e)]=_0x50b91d[_0x4b0ba3(0x20b)](parseInt,process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3,this[_0x4b0ba3(0x1fe)]=parseInt(process['env'][_0x4b0ba3(0x1de)],0xa)||0x64,this['_strategy']=process[_0x4b0ba3(0x1ea)][_0x4b0ba3(0x1ec)]||_0x50b91d[_0x4b0ba3(0x200)],this['_workerId']='worker-'+process[_0x4b0ba3(0x1ef)],this[_0x4b0ba3(0x1f0)]=!![],logger['info']({'event':_0x4b0ba3(0x20e),'enabled':this['_enabled'],'strategy':this[_0x4b0ba3(0x206)],'ttl':this['_defaultTTL'],'retryCount':this[_0x4b0ba3(0x21e)],'retryDelay':this['_retryDelay'],'workerId':this['_workerId']},'Lock\x20configuration\x20initialized\x20-\x20enabled:\x20'+this['_enabled']+_0x4b0ba3(0x1fc)+this['_strategy']);}['_ensureInitialized'](){const _0x4413ab=a0_0x8ea4dc;!this[_0x4413ab(0x1f0)]&&this['_initConfig']();}get['prefix'](){return this['_ensureInitialized'](),this['_prefix'];}get[a0_0x8ea4dc(0x1f6)](){const _0x1f4679=a0_0x8ea4dc;return this[_0x1f4679(0x1fa)](),this[_0x1f4679(0x20a)];}get['defaultTTL'](){return this['_ensureInitialized'](),this['_defaultTTL'];}get['retryCount'](){const _0x18ae49=a0_0x8ea4dc;return this[_0x18ae49(0x1fa)](),this['_retryCount'];}get[a0_0x8ea4dc(0x22e)](){const _0x4eedac=a0_0x8ea4dc;return this['_ensureInitialized'](),this[_0x4eedac(0x1fe)];}get['strategy'](){return this['_ensureInitialized'](),this['_strategy'];}get[a0_0x8ea4dc(0x21b)](){const _0x3bf591=a0_0x8ea4dc;return this[_0x3bf591(0x1fa)](),this[_0x3bf591(0x205)];}['buildLockKey'](_0x5bbd4d){const _0xc3a222=a0_0x8ea4dc,{module:_0x3e0c3f,endpoint:_0x2cd0f6,lockType:_0x245cf7,recordId:_0x69003}=_0x5bbd4d;if(_0x69003)return''+this['prefix']+_0x3e0c3f+':'+_0x2cd0f6+':'+_0x69003+':'+_0x245cf7;return''+this[_0xc3a222(0x20c)]+_0x3e0c3f+':'+_0x2cd0f6+':'+_0x245cf7;}[a0_0x8ea4dc(0x1f1)](){const _0x22b99b=a0_0x8ea4dc;return this['workerId']+':'+uuidv4()+':'+Date[_0x22b99b(0x213)]();}async[a0_0x8ea4dc(0x227)](_0xb935e5){const _0x43616e=a0_0x8ea4dc,_0x19c9ae={'jSgCr':'read','CFQqm':function(_0xe65893,_0x16d83c){return _0xe65893<_0x16d83c;},'coMTa':'read_lock_acquired','cgjge':'READ\x20lock\x20acquired','nnNWV':_0x43616e(0x225),'cVJyt':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release','NOrzi':_0x43616e(0x1e3),'UcuLk':'read_lock_error'};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x511a67=this[_0x43616e(0x1e0)]({..._0xb935e5,'lockType':'write'}),_0x101d12=this[_0x43616e(0x1e0)]({..._0xb935e5,'lockType':_0x19c9ae['jSgCr']}),_0x5bd094=this[_0x43616e(0x1f1)]();try{const _0x55aaa9=redisClient['getClient']();for(let _0x39f8fc=0x0;_0x19c9ae['CFQqm'](_0x39f8fc,this['retryCount']);_0x39f8fc++){const _0x3fa434=await _0x55aaa9[_0x43616e(0x1f4)](_0x511a67);if(!_0x3fa434){await _0x55aaa9['incr'](_0x101d12),await _0x55aaa9['expire'](_0x101d12,this[_0x43616e(0x1e9)]);const _0x35fbae=_0x101d12+':'+_0x5bd094;return await _0x55aaa9['setex'](_0x35fbae,this[_0x43616e(0x1e9)],_0x5bd094),logger[_0x43616e(0x223)]({'event':_0x19c9ae['coMTa'],'key':_0x101d12,'value':_0x5bd094},_0x19c9ae['cgjge']),{'success':!![],'lockValue':_0x5bd094,'lockKey':_0x35fbae};}logger['debug']({'event':_0x19c9ae['nnNWV'],'writeKey':_0x511a67,'attempt':_0x39f8fc},_0x19c9ae['cVJyt']),await this[_0x43616e(0x1f9)](this[_0x43616e(0x22e)]*Math['pow'](0x2,_0x39f8fc));}return logger['warn']({'event':_0x19c9ae['NOrzi'],'key':_0x101d12},_0x43616e(0x1e7)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x40734d){return logger['error']({'event':_0x19c9ae['UcuLk'],'error':_0x40734d[_0x43616e(0x207)]},'READ\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0x8ea4dc(0x1dc)](_0x23a143){const _0x22228b=a0_0x8ea4dc,_0x42a72d={'bqERP':'write','ySqgV':'read','bwuIo':function(_0x34d255,_0x5a2d35){return _0x34d255===_0x5a2d35;},'eZUET':'write_lock_acquired','aqada':'reject','ctiRc':_0x22228b(0x222),'dZruV':'write_lock_rejected','zMuSw':function(_0x4c09ef,_0x507cb6){return _0x4c09ef(_0x507cb6);},'ddsgK':_0x22228b(0x208),'nYPrv':_0x22228b(0x1fd),'KuHVv':'Waiting\x20for\x20locks\x20to\x20release','DuuqZ':function(_0xf0bea7,_0x43c2f1){return _0xf0bea7*_0x43c2f1;}};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x40b5ea=this['buildLockKey']({..._0x23a143,'lockType':_0x42a72d['bqERP']}),_0x2e9544=this['buildLockKey']({..._0x23a143,'lockType':_0x42a72d[_0x22228b(0x1f7)]}),_0x11a4b5=this[_0x22228b(0x1f1)]();try{const _0x1486af=redisClient[_0x22228b(0x1f2)]();if(this['strategy']===_0x22228b(0x219)){const _0x28f4fa=await _0x1486af['set'](_0x40b5ea,_0x11a4b5,'EX',this[_0x22228b(0x1e9)],'NX');if(_0x42a72d['bwuIo'](_0x28f4fa,'OK'))return logger['debug']({'event':_0x42a72d[_0x22228b(0x1ed)],'key':_0x40b5ea,'value':_0x11a4b5,'strategy':_0x42a72d['aqada']},_0x42a72d[_0x22228b(0x1f3)]),{'success':!![],'lockValue':_0x11a4b5,'lockKey':_0x40b5ea};return logger[_0x22228b(0x223)]({'event':_0x42a72d['dZruV'],'key':_0x40b5ea},_0x22228b(0x20d)),{'success':![],'lockValue':null,'lockKey':null};}for(let _0xd5560a=0x0;_0xd5560a<this['retryCount'];_0xd5560a++){const [_0x413570,_0x3dab3d]=await Promise['all']([_0x1486af[_0x22228b(0x1f4)](_0x2e9544),_0x1486af['get'](_0x40b5ea)]);if(!_0x3dab3d&&(!_0x413570||_0x42a72d[_0x22228b(0x1eb)](parseInt,_0x413570)===0x0)){const _0x2f7785=await _0x1486af['set'](_0x40b5ea,_0x11a4b5,'EX',this[_0x22228b(0x1e9)],'NX');if(_0x2f7785==='OK')return logger['debug']({'event':_0x42a72d['eZUET'],'key':_0x40b5ea,'value':_0x11a4b5,'strategy':_0x42a72d['ddsgK']},_0x42a72d[_0x22228b(0x1e5)]),{'success':!![],'lockValue':_0x11a4b5,'lockKey':_0x40b5ea};}logger['debug']({'event':'write_lock_waiting','writeKey':_0x40b5ea,'readCount':_0x413570,'attempt':_0xd5560a},_0x42a72d[_0x22228b(0x1e8)]),await this[_0x22228b(0x1f9)](_0x42a72d[_0x22228b(0x1e1)](this[_0x22228b(0x22e)],Math['pow'](0x2,_0xd5560a)));}return logger['warn']({'event':'write_lock_timeout','key':_0x40b5ea},_0x22228b(0x214)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x38e37e){return logger[_0x22228b(0x1e6)]({'event':_0x22228b(0x201),'error':_0x38e37e[_0x22228b(0x207)]},_0x22228b(0x22d)),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x44a584,_0x5df27c){const _0x1f70bf=a0_0x8ea4dc,_0x5207ed={'rFgKh':':read:','LbcQH':function(_0x4c2ac7,_0x3abd0c){return _0x4c2ac7===_0x3abd0c;},'oOSJZ':'write_lock_released'};if(!this[_0x1f70bf(0x1f6)]||!_0x44a584)return!![];try{const _0x4c7c9e=redisClient[_0x1f70bf(0x1f2)]();if(_0x44a584[_0x1f70bf(0x210)](_0x5207ed['rFgKh'])){await _0x4c7c9e[_0x1f70bf(0x21c)](_0x44a584);const _0x3c4d94=_0x44a584[_0x1f70bf(0x211)](0x0,_0x44a584[_0x1f70bf(0x1f5)](':')),_0x36dcdc=await _0x4c7c9e['get'](_0x3c4d94);return _0x36dcdc&&parseInt(_0x36dcdc)>0x0&&await _0x4c7c9e['decr'](_0x3c4d94),logger[_0x1f70bf(0x223)]({'event':'read_lock_released','key':_0x44a584},_0x1f70bf(0x217)),!![];}const _0x4b4add=_0x1f70bf(0x202),_0x5aeea8=await _0x4c7c9e['eval'](_0x4b4add,0x1,_0x44a584,_0x5df27c);if(_0x5207ed['LbcQH'](_0x5aeea8,0x1))return logger[_0x1f70bf(0x223)]({'event':_0x5207ed['oOSJZ'],'key':_0x44a584},_0x1f70bf(0x1ee)),!![];return logger[_0x1f70bf(0x1fb)]({'event':_0x1f70bf(0x203),'key':_0x44a584},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0x1f0b1c){return logger[_0x1f70bf(0x1e6)]({'event':_0x1f70bf(0x1ff),'key':_0x44a584,'error':_0x1f0b1c[_0x1f70bf(0x207)]},_0x1f70bf(0x220)),![];}}async['extendLock'](_0x12df37,_0x295364,_0x391d78=null){const _0x1a6dd8=a0_0x8ea4dc,_0x4887cf={'iHdyp':function(_0x52dab5,_0x18ec16){return _0x52dab5===_0x18ec16;}};if(!this[_0x1a6dd8(0x1f6)]||!_0x12df37)return!![];try{const _0x43e1ce=redisClient['getClient'](),_0x1dfcda='\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',_0x51a9a=await _0x43e1ce['eval'](_0x1dfcda,0x1,_0x12df37,_0x295364,_0x391d78||this['defaultTTL']);if(_0x4887cf['iHdyp'](_0x51a9a,0x1))return logger[_0x1a6dd8(0x223)]({'event':_0x1a6dd8(0x21d),'key':_0x12df37,'ttl':_0x391d78||this['defaultTTL']},_0x1a6dd8(0x21f)),!![];return![];}catch(_0xe8d169){return logger[_0x1a6dd8(0x1e6)]({'event':'lock_extend_error','key':_0x12df37,'error':_0xe8d169['message']},'Lock\x20extend\x20error'),![];}}['isEnabled'](){const _0x48b61f=a0_0x8ea4dc;return this[_0x48b61f(0x1f6)];}[a0_0x8ea4dc(0x1f9)](_0x1092f3){return new Promise(_0x576e5c=>setTimeout(_0x576e5c,_0x1092f3));}async['getLockInfo'](_0x38a4ee){const _0x7ced1e=a0_0x8ea4dc,_0xaa0fc2={'qMDEY':'write','zvzNj':'read','ziLtx':function(_0x3c02a9,_0x25030b){return _0x3c02a9||_0x25030b;},'ZEjUV':function(_0x5421f7,_0x1db388){return _0x5421f7(_0x1db388);}};if(!this['enabled'])return{'enabled':![]};try{const _0x1e53bd=redisClient[_0x7ced1e(0x1f2)](),_0x4d3ab0=this[_0x7ced1e(0x1e0)]({..._0x38a4ee,'lockType':_0xaa0fc2['qMDEY']}),_0x1fbc7b=this['buildLockKey']({..._0x38a4ee,'lockType':_0xaa0fc2[_0x7ced1e(0x204)]}),[_0x236c38,_0x44cd23]=await Promise['all']([_0x1e53bd['get'](_0x4d3ab0),_0x1e53bd[_0x7ced1e(0x1f4)](_0x1fbc7b)]);return{'enabled':!![],'writeLock':_0xaa0fc2[_0x7ced1e(0x228)](_0x236c38,null),'readCount':_0xaa0fc2[_0x7ced1e(0x212)](parseInt,_0x44cd23)||0x0,'writeKey':_0x4d3ab0,'readKey':_0x1fbc7b};}catch(_0x58333e){return{'enabled':!![],'error':_0x58333e['message']};}}}module['exports']=new LockManager();function a0_0x4bcd(){const _0x15eb2f=['x3jLDhj5q291BNq','tg9JAYbuveWGzxH0zw5Kzwq','tg9JAYbYzwXLyxnLigvYCM9Y','mtC4nZa5nwHpA21wsW','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','zgvIDwC','lI9SB2DNzxi','CMvHzf9SB2nRx3DHAxrPBMC','nZyYntq0B1PmCgjl','ywnXDwLYzvjLywrmB2nR','EMLmDhG','x2rLzMf1BhruveW','CMy6Bg9JAZO','mJeXnte5mhPoC011Aa','mLHqAfPtDW','v1jjveuGBg9JAYbLCNjVCG','CMv0CNLezwXHEq','ywnXDwLYzvDYAxrLtg9JAW','x3bYzwzPEa','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','lI9YzwrPCY1JBgLLBNq','yNvPBgrmB2nRs2v5','rhv1CvO','mtm3mtqYm1PfyvDdqW','CMvHzf9SB2nRx3rPBwvVDxq','te9ds19esvnuuKLcvvrfrf9uveW','BLLqCNy','zxjYB3i','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','s3vivNy','zgvMyxvSDfruta','zw52','EK11u3C','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','zvPvrvq','v1jjveuGBg9JAYbYzwXLyxnLza','CgLK','x2LUAxrPywXPEMvK','z2vUzxjHDgvmB2nRvMfSDwu','z2v0q2XPzw50','y3rPuMm','z2v0','BgfZDeLUzgv4t2y','zw5HyMXLza','EvnXz1y','mJq5nZy2mtboruzluu0','C2XLzxa','x2vUC3vYzuLUAxrPywXPEMvK','D2fYBG','lcbZDhjHDgvNEtOG','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','x3jLDhj5rgvSyxK','Bg9JA19YzwXLyxnLx2vYCM9Y','ruXwqMu','D3jPDgvFBg9JA19LCNjVCG','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','ENz6tMO','x3DVCMTLCKLK','x3n0CMf0zwD5','BwvZC2fNzq','CMv0CNK','DxvPza','x2vUywjSzwq','DNrHAee','ChjLzML4','v1jjveuGBg9JAYbYzwPLy3rLzcaTihjLy29YzcbIDxn5','Bg9JA19JB25MAwDFAw5PDa','ndvJEKf0whq','Aw5JBhvKzxm','C3vIC3rYAw5N','wKvQvvy','BM93','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','ndKXntuYtePgqLnw','ndiZndCYmMHxtvbKCW','uKvbrcbSB2nRihjLBgvHC2vK','Be10zhe','CMvQzwn0','oerkDhfrDa','D29YA2vYswq','zgvS','Bg9JA19LEhrLBMrLza'];a0_0x4bcd=function(){return _0x15eb2f;};return a0_0x4bcd();}
|
package/src/utils/logger.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x3698b4=a0_0x15d9;(function(_0x5de069,_0x274842){const _0x393e7e=a0_0x15d9,_0x4d4965=_0x5de069();while(!![]){try{const _0x4f3a26=-parseInt(_0x393e7e(0x241))/0x1+parseInt(_0x393e7e(0x1a9))/0x2*(-parseInt(_0x393e7e(0x1ee))/0x3)+-parseInt(_0x393e7e(0x1b3))/0x4*(parseInt(_0x393e7e(0x24c))/0x5)+parseInt(_0x393e7e(0x1ce))/0x6+-parseInt(_0x393e7e(0x223))/0x7*(parseInt(_0x393e7e(0x1c1))/0x8)+parseInt(_0x393e7e(0x22b))/0x9*(parseInt(_0x393e7e(0x1b7))/0xa)+parseInt(_0x393e7e(0x1c3))/0xb*(parseInt(_0x393e7e(0x237))/0xc);if(_0x4f3a26===_0x274842)break;else _0x4d4965['push'](_0x4d4965['shift']());}catch(_0x2f4948){_0x4d4965['push'](_0x4d4965['shift']());}}}(a0_0x5372,0x5a9c3));const pino=require(a0_0x3698b4(0x190)),fs=require('fs'),path=require('path');let logToFile=![],logDir=a0_0x3698b4(0x1af),serviceName=a0_0x3698b4(0x242),sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x5372(){const _0x2e8e7a=['D3jPDgu','mtCXnNHOzvbAwq','A3LHu24','v05JwLe','zxjYB3i','uMPutKm','w1jfrefdveveoMHHC2HD','icbizwfSDgG6ia','u29VrLO','te9hx0rjuG','su5trvju','zMf0ywW','mZy1ode1ogjRsLDLDW','s3fcA3u','y2HPBgq','zw52','s092DMC','BhDnywO','ic0G','C3rKvgLTzuz1BMn0Aw9UCW','sLDux1nfq1jfva','C2vYDMLJzuLUzM8','C3rHDhvZ','BwvTB3j5vxnHz2u','BgrlyKq','EKPltu8','B1bpzue','zMLSzv9SB2DNAw5Nx2vUywjSzwq','rermx0rst1a','DejTD3C','DxjS','y3jLyxrLv3jPDgvtDhjLyw0','C3rHDhvZq29Kzq','AM9PBG','qwDPExe','A2vvyLK','C3rHCNrZv2L0Aa','q1jjveLdquW','u2vYDMvYihn0yxj0Aw5NoIa','yK5Msem','u1fmx0Xpr19mrvzfta','zgjFDhjHBNnHy3rPB24','lI9SB2DZlW','ChPmuhK','mtvRz0XfywS','ANnVBG','B3jPz2LUywXvCMW','te9hx0XfvKvm','icbvuKW6icaGia','CgfZC3DVCMq','CxvLCNK','u1fmx0Xpr19qqvjbtvm','yMfZzvvYBa','vfjbtLnbq1rjt05Fq09ntuLu','AgvHBhrOq2HLy2S','qKvhsu4','C0LAzhG','yxbPx2TLEq','DhLtAvu','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','Dw54rgi','ChjPDMf0zv9RzxK','zMf0ywXFzxjYB3i','z2v0sgvHzgvYCW','zgvIDwC','Cgf0Aa','EgDOvM8','CM93C0fMzMvJDgvK','ChjPDMf0zwTLEq','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','ChjVAMvJDa','iokvKqRILzeGifbVCNqGicaGicaGidOG','oI8V','Cg9YDa','D2fYBMLUzW','zgvMyxvSDa','ms4WlJu','Bwf0y2G','Dg9ju09tDhjPBMC','qunusvzf','qLHWvxi','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','u0vsvKLdrv9oqu1f','CgfKrw5K','Dg9gAxHLza','zgf0ywjHC2u','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','Dg9vChbLCKnHC2u','revmrvrf','ChDK','Ahj0Aw1L','q1fNyxG','Ahr0Cf9Yzxf1zxn0','zxjY','BxmP','DhjPBq','rfD4CxG','mJfythbHDNq','uK9mtejbq0S','vfjbtLnbq1rjt05FuK9mtejbq0S','sfbdtuG','rgvMyxvSDa','v3f6Bu4','y1vTwMS','Dxb0Aw1L','oty2mde1se1lrhbA','Dg9Rzw4','BwvZC2fNzq','Dg9mB3DLCKnHC2u','B2jQzwn0','CwTXwM8','CgLU','Dhj1zq','tLnTyue','tI9b','y3jLzgvUDgLHBa','tK9erv9ftLy','ndm4mJrHA2fRsMq','rxjYB3i','rKDJCg4','rMfPBgvKihrVignYzwf0zsbSB2CGC3rYzwfTCZO','qMnWruG','w1jfrefdveveoNrVA2vUxq','C2vYDMvYx3n0yxj0Aw5N','E21Zz30','DKr4D3e','BgvUz3rO','mtiWntDMz0TiB1C','CMvZDgzVCMDL','AxntBg93','BwfW','BwTKAxjtEw5J','w1jfrefdvevexq','Ag9ZDa','Ec1Yzxf1zxn0lwLK','ywnJzxnZx3rVA2vU','y3z2','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mtC1ndi1ExHpzefq','yxbWlMXVzW','C3bSAxq','C3rHy2S','CgLUBW','zLHWyMO','vKTKwfe','DhLWzq','y3jLzgL0y2fYza','zxjYB3iUBg9N','ig9UihbVCNqG','rePIBfa','Dw5Oyw5KBgvKuMvQzwn0Aw9U','q09ntuLu','u1fmx0Xpr19ftKfcteve','AMnwsuC','wKXRyNG','y3jLzgL0x2nHCMq','BwDozNC','Dw5JyxvNAhrfEgnLChrPB24','Aw5JBhvKzxm','yxbPs2v5','zgjFCxvLCNK','zMXVB3i','C3nU','sw50zxjUywWGC2vYDMvYigvYCM9Y','BMfTzq','tvvoCve','zKvuAfm','mtyZmZK4v29Zs09y','uhfttLa','vfjbtLnbq1rjt05FqKvhsu4','A2L0rxy','veXjAhC','y29UzMLNrMLSzq','lI9SB2DZ','tK9uiefdveLwrq','zg1tyM4','ChjVzhvJDgLVBG','ohzcsufwuW','D05jwM0','wMnTwKm','AwjZDMe','mZbct1jqDwC','B2rLBgq','CMvWzwf0','u0vmrunu','Aw5MBW','D2fYBG','r21dyLi','Bwv0Ag9K','CMvZB2X2zq','C2vJCMv0','mtCWntq2ng5NDLb2Ba'];a0_0x5372=function(){return _0x2e8e7a;};return a0_0x5372();}const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':a0_0x3698b4(0x23e),'customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process[a0_0x3698b4(0x1d1)]['NODE_ENV']!==a0_0x3698b4(0x1b2),logLevel=process[a0_0x3698b4(0x1d1)][a0_0x3698b4(0x1f1)]||'info';let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':'restforge','version':process['env']['APP_VERSION']||a0_0x3698b4(0x20e),'env':process[a0_0x3698b4(0x1d1)][a0_0x3698b4(0x236)]||'development'},'timestamp':pino[a0_0x3698b4(0x1d5)]['isoTime'],'redact':{'paths':['req.headers.authorization','req.headers[\x22x-api-key\x22]',a0_0x3698b4(0x1f3),'token',a0_0x3698b4(0x1a1),'DB_PASSWORD',a0_0x3698b4(0x1d6)],'censor':a0_0x3698b4(0x246)},'serializers':{'req':_0x2abb26=>({'id':_0x2abb26['id'],'method':_0x2abb26[a0_0x3698b4(0x1be)],'url':_0x2abb26[a0_0x3698b4(0x1e0)],'path':_0x2abb26['path'],'remoteAddress':_0x2abb26['ip']||_0x2abb26['connection']?.['remoteAddress']}),'res':_0x24b2d4=>({'statusCode':_0x24b2d4['statusCode'],'headers':_0x24b2d4[a0_0x3698b4(0x201)]?.()}),'err':pino['stdSerializers'][a0_0x3698b4(0x21f)]}});function initFileLogging(){const _0x5d32a8=a0_0x3698b4,_0x3e6f11={'kitEv':_0x5d32a8(0x232),'DJblP':function(_0x302e8e,_0x2712a1){return _0x302e8e===_0x2712a1;},'CQgax':function(_0x5848f2,_0x270723){return _0x5848f2!==_0x270723;},'jcVIG':'false','fEThS':_0x5d32a8(0x24d),'mgNfw':_0x5d32a8(0x195),'WqzmN':_0x5d32a8(0x1bb)};if(fileLoggingInitialized)return;logToFile=process[_0x5d32a8(0x1d1)]['LOG_TO_FILE']===_0x3e6f11[_0x5d32a8(0x1ac)];const _0x3ba965=process['env'][_0x5d32a8(0x24b)]||_0x5d32a8(0x20d);logDir=process[_0x5d32a8(0x1d1)][_0x5d32a8(0x1cb)]||_0x5d32a8(0x1ec)+_0x3ba965,serviceName=process['env'][_0x5d32a8(0x214)]||'restforge',sqlLogEnabled=_0x3e6f11[_0x5d32a8(0x197)](process['env'][_0x5d32a8(0x19a)],'true'),sqlLogLevel=process['env'][_0x5d32a8(0x1ea)]||'debug',sqlLogParams=_0x3e6f11[_0x5d32a8(0x21d)](process['env'][_0x5d32a8(0x1f5)],_0x3e6f11[_0x5d32a8(0x19b)]),sqlLogSlowThreshold=parseInt(process[_0x5d32a8(0x1d1)]['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x1829bf=path[_0x5d32a8(0x1bf)](process['cwd'](),logDir);try{!fs['existsSync'](_0x1829bf)&&fs[_0x5d32a8(0x245)](_0x1829bf,{'recursive':!![]});}catch(_0x2df67c){console['error']('Failed\x20to\x20create\x20log\x20directory\x20'+_0x1829bf+':',_0x2df67c['message']),fileLoggingInitialized=!![];return;}const _0x426b14=path['join'](_0x1829bf,_0x3e6f11[_0x5d32a8(0x1a8)]),_0xa516b5=path[_0x5d32a8(0x1e3)](_0x1829bf,_0x3e6f11['mgNfw']);try{appLogStream=fs['createWriteStream'](_0x426b14,{'flags':'a'}),errorLogStream=fs[_0x5d32a8(0x1e1)](_0xa516b5,{'flags':'a'}),fileLoggingInitialized=!![];const _0x351e3b={'event':_0x5d32a8(0x1dd),'logDir':_0x1829bf,'files':['app.log',_0x3e6f11[_0x5d32a8(0x19e)]]},_0x40b0af=_0x5d32a8(0x213)+_0x1829bf;logger[_0x5d32a8(0x1bb)](_0x351e3b,_0x40b0af),writeToFileLog({..._0x351e3b,'level':_0x5d32a8(0x1bb),'msg':_0x40b0af,'time':new Date()[_0x5d32a8(0x210)]()},_0x3e6f11[_0x5d32a8(0x228)]);}catch(_0x1f3ec1){console['error'](_0x5d32a8(0x23a),_0x1f3ec1[_0x5d32a8(0x22d)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x4e2b93,_0x5de229){const _0x239cfe=a0_0x3698b4,_0x465c4a={'prcUY':function(_0x2b4e1e,_0x156de5){return _0x2b4e1e||_0x156de5;},'BcpEH':function(_0x5813e2,_0x5e16a6){return _0x5813e2===_0x5e16a6;},'tBmww':_0x239cfe(0x1c6),'HPCMH':'fatal'};if(_0x465c4a['prcUY'](!logToFile,!appLogStream))return;const _0x3cb493={'service':serviceName,..._0x4e2b93},_0x36ac5f=JSON['stringify'](_0x3cb493)+'\x0a';appLogStream[_0x239cfe(0x1c2)](_0x36ac5f),(_0x465c4a['BcpEH'](_0x5de229,_0x465c4a[_0x239cfe(0x1df)])||_0x465c4a[_0x239cfe(0x23b)](_0x5de229,_0x465c4a[_0x239cfe(0x226)]))&&(errorLogStream&&errorLogStream['write'](_0x36ac5f));}function a0_0x15d9(_0x2b2d27,_0x278760){_0x2b2d27=_0x2b2d27-0x18f;const _0x53728a=a0_0x5372();let _0x15d9ee=_0x53728a[_0x2b2d27];if(a0_0x15d9['AgnHNI']===undefined){var _0x1e8dbb=function(_0x373c2b){const _0x2bbece='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x444e51='',_0x2008a6='';for(let _0x33adea=0x0,_0x512627,_0x5f3a39,_0x5a3c29=0x0;_0x5f3a39=_0x373c2b['charAt'](_0x5a3c29++);~_0x5f3a39&&(_0x512627=_0x33adea%0x4?_0x512627*0x40+_0x5f3a39:_0x5f3a39,_0x33adea++%0x4)?_0x444e51+=String['fromCharCode'](0xff&_0x512627>>(-0x2*_0x33adea&0x6)):0x0){_0x5f3a39=_0x2bbece['indexOf'](_0x5f3a39);}for(let _0x180afc=0x0,_0x4b57c1=_0x444e51['length'];_0x180afc<_0x4b57c1;_0x180afc++){_0x2008a6+='%'+('00'+_0x444e51['charCodeAt'](_0x180afc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2008a6);};a0_0x15d9['ItHxOo']=_0x1e8dbb,a0_0x15d9['JvWwNC']={},a0_0x15d9['AgnHNI']=!![];}const _0x15858d=_0x53728a[0x0],_0x4bc6a9=_0x2b2d27+_0x15858d,_0x47b607=a0_0x15d9['JvWwNC'][_0x4bc6a9];return!_0x47b607?(_0x15d9ee=a0_0x15d9['ItHxOo'](_0x15d9ee),a0_0x15d9['JvWwNC'][_0x4bc6a9]=_0x15d9ee):_0x15d9ee=_0x47b607,_0x15d9ee;}const createRequestLogger=(_0x5a9ae6={})=>{const _0x1d5f11=a0_0x3698b4;return logger[_0x1d5f11(0x1d0)](_0x5a9ae6);},logServerStart=_0x446f9d=>{const _0x4fa921=a0_0x3698b4,_0x1325b7={'cUmZk':'RESTFORGE\x20RUNTIME\x20SERVER','wNIZm':function(_0x6a95b0,_0x3cab2b){return _0x6a95b0-_0x3cab2b;},'KFzTM':'Node.js','CiQiK':_0x4fa921(0x234),'sIZdx':_0x4fa921(0x1b0),'ueMit':_0x4fa921(0x23d),'qbbzP':function(_0x2d68b5,_0x208f80,_0x3f7349){return _0x2d68b5(_0x208f80,_0x3f7349);},'ZcmZC':'info'},_0x4b4f1d=_0x1325b7[_0x4fa921(0x229)],_0x39265f=Math['max'](0x0,_0x1325b7[_0x4fa921(0x1b4)](0x37,_0x4b4f1d['length'])),_0x3cb438=Math[_0x4fa921(0x1a3)](_0x39265f/0x2),_0x341884=_0x39265f-_0x3cb438,_0x5e3cae='║'+'\x20'['repeat'](_0x3cb438)+_0x4b4f1d+'\x20'[_0x4fa921(0x1b9)](_0x341884)+'║',_0x43eebe=_0x4fa921(0x1fd)+_0x5e3cae+_0x4fa921(0x218)+(_0x446f9d['environment']||_0x1325b7['KFzTM'])['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x446f9d[_0x4fa921(0x208)]||_0x1325b7['CiQiK'])['padEnd'](0x26)+_0x4fa921(0x209)+String(_0x446f9d[_0x4fa921(0x20b)]||0xbb8)['padEnd'](0x26)+'\x20║\x0a║\x20\x20Config\x20\x20\x20\x20\x20\x20:\x20'+(_0x446f9d[_0x4fa921(0x1ae)]||_0x4fa921(0x227))[_0x4fa921(0x215)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0x446f9d[_0x4fa921(0x1a1)]?_0x4fa921(0x211):_0x1325b7[_0x4fa921(0x1fa)])['padEnd'](0x26)+_0x4fa921(0x207);console['log'](_0x43eebe);const _0x4427a8={'event':_0x1325b7['ueMit'],'project':_0x446f9d[_0x4fa921(0x208)],'port':_0x446f9d[_0x4fa921(0x20b)],'config':_0x446f9d[_0x4fa921(0x1ae)],'apiKeyEnabled':!!_0x446f9d['apiKey']};logger['info'](_0x4427a8),_0x1325b7['qbbzP'](writeToFileLog,{..._0x4427a8,'level':'info','msg':_0x4fa921(0x1e8)+_0x446f9d[_0x4fa921(0x208)]+_0x4fa921(0x196)+_0x446f9d[_0x4fa921(0x20b)],'time':new Date()[_0x4fa921(0x210)]()},_0x1325b7[_0x4fa921(0x1b5)]);},logServerReady=_0xe526fb=>{const _0x30e30e=a0_0x3698b4,_0x425fe5={'kyaSn':'server_ready','PsUre':function(_0x10e3f9,_0x1b5de2,_0x372282){return _0x10e3f9(_0x1b5de2,_0x372282);},'WJwwb':'info'},_0x3ff1b1={'event':_0x425fe5[_0x30e30e(0x1c4)],'port':_0xe526fb['port'],'module':_0xe526fb['module'],'healthCheck':_0xe526fb[_0x30e30e(0x1f8)],'serviceInfo':_0xe526fb['serviceInfo'],'baseUrl':_0xe526fb['baseUrl']},_0x5d1b9e='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0xe526fb['port'];logger[_0x30e30e(0x1bb)](_0x3ff1b1,_0x5d1b9e),_0x425fe5['PsUre'](writeToFileLog,{..._0x3ff1b1,'level':_0x425fe5['WJwwb'],'msg':_0x5d1b9e,'time':new Date()['toISOString']()},_0x425fe5['WJwwb']),_0xe526fb['healthCheck']&&logger['info'](_0x30e30e(0x1c9)+_0xe526fb['healthCheck']),_0xe526fb[_0x30e30e(0x1d7)]&&logger[_0x30e30e(0x1bb)]('\x20\x20Info:\x20\x20\x20'+_0xe526fb[_0x30e30e(0x1d7)]),_0xe526fb[_0x30e30e(0x1f6)]&&logger['info'](_0x30e30e(0x1f2)+_0xe526fb['baseUrl']);},logProjectLoaded=(_0x4fadb3,_0x103bd8)=>{const _0x1d16c0=a0_0x3698b4,_0x164b4f={'TZpDt':'project_loaded','GmCbR':function(_0xa3b115,_0x2984cc,_0x14f6c2){return _0xa3b115(_0x2984cc,_0x14f6c2);},'fXpbj':_0x1d16c0(0x1bb)},_0x2c28dd={'event':_0x164b4f['TZpDt'],'project':_0x4fadb3,'path':_0x103bd8},_0x5c9086='[OK]\x20Project\x20loaded:\x20'+_0x4fadb3;logger[_0x1d16c0(0x1bb)](_0x2c28dd,_0x5c9086),_0x164b4f[_0x1d16c0(0x1bd)](writeToFileLog,{..._0x2c28dd,'level':_0x1d16c0(0x1bb),'msg':_0x5c9086,'time':new Date()[_0x1d16c0(0x210)]()},_0x164b4f[_0x1d16c0(0x191)]);},logEndpointRegistered=(_0x428a37,_0x5157c7)=>{const _0x4752b9=a0_0x3698b4,_0x121c01={'MsTrA':'endpoint_registered','qSJPT':function(_0xa941c6,_0x6adf0,_0x3d10d4){return _0xa941c6(_0x6adf0,_0x3d10d4);},'JoqFl':'debug'},_0x223ab4={'event':_0x121c01['MsTrA'],'endpoint':_0x428a37,'route':_0x5157c7},_0x2c08d4='\x20\x20→\x20'+_0x428a37+':\x20'+_0x5157c7;logger['debug'](_0x223ab4,_0x2c08d4),_0x121c01['qSJPT'](writeToFileLog,{..._0x223ab4,'level':_0x4752b9(0x202),'msg':_0x2c08d4,'time':new Date()['toISOString']()},_0x121c01['JoqFl']);},logDatabaseConfig=_0x47b0be=>{const _0x547feb=a0_0x3698b4,_0x5fe52b={'lwMaj':function(_0xef33ba,_0xb6dc69,_0x556bd5){return _0xef33ba(_0xb6dc69,_0x556bd5);},'pzLPy':_0x547feb(0x202)},_0x1f7033={'event':'database_config','host':_0x47b0be[_0x547feb(0x247)],'port':_0x47b0be[_0x547feb(0x20b)],'database':_0x47b0be[_0x547feb(0x217)],'type':_0x47b0be['type'],'user':_0x47b0be['user']},_0x3e123c='Database:\x20'+_0x47b0be[_0x547feb(0x193)]+_0x547feb(0x20a)+_0x47b0be[_0x547feb(0x247)]+':'+_0x47b0be[_0x547feb(0x20b)]+'/'+_0x47b0be['database'];logger['debug'](_0x1f7033,_0x3e123c),_0x5fe52b[_0x547feb(0x1d3)](writeToFileLog,{..._0x1f7033,'level':_0x5fe52b[_0x547feb(0x1ed)],'msg':_0x3e123c,'time':new Date()[_0x547feb(0x210)]()},'debug');},logRequest=(_0x57a21a,_0x12635e,_0x506805)=>{const _0x4b1f4d=a0_0x3698b4,_0x3904f8={'ldKbD':_0x4b1f4d(0x21e),'biEWG':_0x4b1f4d(0x1bb),'ZLkbx':'error','FGcpn':function(_0x39a23a,_0x471a77){return _0x39a23a>=_0x471a77;},'izyvZ':_0x4b1f4d(0x1bc)},_0x15c524={'event':_0x3904f8[_0x4b1f4d(0x1da)],'method':_0x57a21a['method'],'path':_0x57a21a['path'],'statusCode':_0x12635e[_0x4b1f4d(0x1e2)],'durationMs':_0x506805,'ip':_0x57a21a['ip']},_0x7eeca4=_0x57a21a[_0x4b1f4d(0x1be)]+'\x20'+_0x57a21a[_0x4b1f4d(0x203)]+_0x4b1f4d(0x1d4)+_0x12635e['statusCode']+'\x20('+_0x506805+_0x4b1f4d(0x220);let _0x3fb4d1=_0x3904f8['biEWG'];if(_0x12635e[_0x4b1f4d(0x1e2)]>=0x1f4)_0x3fb4d1=_0x3904f8[_0x4b1f4d(0x19c)],logger['error'](_0x15c524,_0x7eeca4);else _0x3904f8[_0x4b1f4d(0x239)](_0x12635e['statusCode'],0x190)?(_0x3fb4d1=_0x3904f8['izyvZ'],logger['warn'](_0x15c524,_0x7eeca4)):logger[_0x4b1f4d(0x1bb)](_0x15c524,_0x7eeca4);writeToFileLog({..._0x15c524,'level':_0x3fb4d1,'msg':_0x7eeca4,'time':new Date()['toISOString']()},_0x3fb4d1);},SENSITIVE_PARAM_PATTERNS=['password','passwd',a0_0x3698b4(0x21b),'token',a0_0x3698b4(0x249),'refresh_token',a0_0x3698b4(0x1c0),'api_secret','apikey','api_key',a0_0x3698b4(0x235),'credentials',a0_0x3698b4(0x231),'otp',a0_0x3698b4(0x1ff),a0_0x3698b4(0x206)],redactSensitiveParams=(_0x5e5d04,_0x17e4ab)=>{const _0x8db986=a0_0x3698b4,_0x2d53b5={'GrQBT':_0x8db986(0x246),'yXWWm':function(_0x4c205e,_0x367c2a){return _0x4c205e===_0x367c2a;},'brgpU':'string','GexFz':function(_0x18b1a9,_0x2c1c15){return _0x18b1a9===_0x2c1c15;}};if(!_0x5e5d04||_0x2d53b5['GexFz'](_0x5e5d04[_0x8db986(0x240)],0x0))return _0x5e5d04;const _0x42f9ee=_0x17e4ab[_0x8db986(0x22e)](),_0x2495c3=_0x42f9ee[_0x8db986(0x20f)](/\(([^)]+)\)\s*values/i);let _0x51cc76=[];_0x2495c3&&(_0x51cc76=_0x2495c3[0x1][_0x8db986(0x24e)](',')['map'](_0x23e144=>_0x23e144[_0x8db986(0x221)]()['toLowerCase']()));const _0x2f21c1=_0x42f9ee[_0x8db986(0x20f)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x2f21c1){const _0x3f5653=_0x2f21c1[0x1],_0x17c88d=_0x3f5653['match'](/(\w+)\s*=/g);_0x17c88d&&(_0x51cc76=_0x17c88d[_0x8db986(0x244)](_0x5557a3=>_0x5557a3['replace'](/\s*=/,'')[_0x8db986(0x221)]()['toLowerCase']()));}return _0x5e5d04['map']((_0x100c14,_0x3927c9)=>{const _0x153413=_0x8db986;if(_0x51cc76[_0x3927c9]){const _0xeab313=_0x51cc76[_0x3927c9],_0x4ab943=SENSITIVE_PARAM_PATTERNS['some'](_0x451911=>_0xeab313[_0x153413(0x1a0)](_0x451911));if(_0x4ab943)return _0x2d53b5['GrQBT'];}if(_0x2d53b5['yXWWm'](typeof _0x100c14,_0x2d53b5['brgpU'])&&_0x100c14[_0x153413(0x240)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x100c14)&&_0x100c14[_0x153413(0x1a0)]('.'))return _0x153413(0x23c);if(/^[a-fA-F0-9]{32,}$/['test'](_0x100c14))return _0x153413(0x1c8);}return _0x100c14;});},parseQueryMetadata=_0x2ec1a3=>{const _0x84cb5b=a0_0x3698b4,_0x36289e={'QeWcq':_0x84cb5b(0x1cc),'zJKMO':_0x84cb5b(0x21a),'zjaPI':_0x84cb5b(0x1f9),'bNfHC':'START\x20TRANSACTION','NSmaA':_0x84cb5b(0x199),'sqMXA':_0x84cb5b(0x1f7),'WGtIS':_0x84cb5b(0x225),'eRKbP':'CREATE','PqSNP':'DROP','iSQus':_0x84cb5b(0x1de)},_0x5a5808=_0x2ec1a3['trim'](),_0x2b959=_0x5a5808[_0x84cb5b(0x219)]();let _0x31ac65='UNKNOWN',_0x5a2f9d=null;if(_0x2b959[_0x84cb5b(0x1e6)](_0x84cb5b(0x1ba))){_0x31ac65=_0x84cb5b(0x1ba);const _0x5e9292=_0x5a5808[_0x84cb5b(0x20f)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5a2f9d=_0x5e9292?_0x5e9292[0x1]:null;}else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x36289e['QeWcq'])){_0x31ac65=_0x84cb5b(0x1cc);const _0x32ac89=_0x5a5808['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5a2f9d=_0x32ac89?_0x32ac89[0x1]:null;}else{if(_0x2b959['startsWith']('UPDATE')){_0x31ac65='UPDATE';const _0x210ec3=_0x5a5808['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5a2f9d=_0x210ec3?_0x210ec3[0x1]:null;}else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x36289e[_0x84cb5b(0x1db)])){_0x31ac65='DELETE';const _0x7cb9f5=_0x5a5808['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x5a2f9d=_0x7cb9f5?_0x7cb9f5[0x1]:null;}else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x36289e['zjaPI'])||_0x2b959['startsWith'](_0x36289e[_0x84cb5b(0x1e9)]))_0x31ac65=_0x84cb5b(0x1ab);else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x36289e[_0x84cb5b(0x233)]))_0x31ac65=_0x36289e['sqMXA'];else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x84cb5b(0x224)))_0x31ac65=_0x36289e['WGtIS'];else{if(_0x2b959[_0x84cb5b(0x1e6)](_0x36289e['eRKbP']))_0x31ac65='DDL_CREATE';else{if(_0x2b959['startsWith']('ALTER'))_0x31ac65='DDL_ALTER';else _0x2b959[_0x84cb5b(0x1e6)](_0x36289e[_0x84cb5b(0x1aa)])&&(_0x31ac65=_0x36289e['iSQus']);}}}}}}}}return{'type':_0x31ac65,'table':_0x5a2f9d};},startQueryTimer=()=>{const _0x18eaf5=a0_0x3698b4,_0x5bf11e=process[_0x18eaf5(0x21c)]();return()=>{const _0x2cf24b=_0x18eaf5,[_0x137c0f,_0x5ad187]=process[_0x2cf24b(0x21c)](_0x5bf11e);return parseFloat((_0x137c0f*0x3e8+_0x5ad187/0xf4240)[_0x2cf24b(0x216)](0x2));};},logQuery=(_0x38487d,_0x4ccc34=[],_0x5a49f6={})=>{const _0x419923=a0_0x3698b4,_0x14e9a3={'uudjp':_0x419923(0x1a2),'DWxqx':function(_0x422808,_0x5a5387){return _0x422808(_0x5a5387);},'gDqMC':'sql_query','unxDb':function(_0xb09380,_0x250a4f){return _0xb09380>_0x250a4f;},'WNcZQ':function(_0x44bdad,_0x2ad27a){return _0x44bdad!==_0x2ad27a;},'FRMsB':function(_0x1e2e3d,_0x2747f1){return _0x1e2e3d!==_0x2747f1;},'SooFZ':'unknown','RjTNC':function(_0x1686c7,_0xa369f8){return _0x1686c7>_0xa369f8;},'KqBku':'debug','zJXIp':'\x20[SLOW]','KGEyY':function(_0x4fae46,_0x52431b){return _0x4fae46===_0x52431b;},'wJBbx':'info'};if(!sqlLogEnabled){logger[_0x419923(0x202)]({'event':_0x14e9a3['uudjp'],'query':_0x38487d['substring'](0x0,0xc8),'paramCount':_0x4ccc34[_0x419923(0x240)]},'DB\x20Query');return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType='postgresql'}=_0x5a49f6,{type:_0x1bd013,table:_0x404427}=_0x14e9a3[_0x419923(0x222)](parseQueryMetadata,_0x38487d),_0x12c378={'event':_0x14e9a3['gDqMC'],'queryType':_0x1bd013,'table':_0x404427,'query':_0x38487d,'paramCount':_0x4ccc34[_0x419923(0x240)],'dbType':dbType};sqlLogParams&&_0x14e9a3[_0x419923(0x1fe)](_0x4ccc34[_0x419923(0x240)],0x0)&&(_0x12c378['params']=redactSensitiveParams(_0x4ccc34,_0x38487d));_0x14e9a3[_0x419923(0x1c5)](duration,null)&&(_0x12c378['durationMs']=duration,_0x12c378[_0x419923(0x243)]=duration>sqlLogSlowThreshold);_0x14e9a3['FRMsB'](rowsAffected,null)&&(_0x12c378[_0x419923(0x205)]=rowsAffected);const _0x5b79e9=_0x404427||_0x14e9a3[_0x419923(0x1ca)];let _0x52210d='['+_0x1bd013+']\x20'+_0x5b79e9;_0x14e9a3[_0x419923(0x1c5)](duration,null)&&(_0x52210d+='\x20('+duration+_0x419923(0x220));const _0x17498b=duration!==null&&_0x14e9a3[_0x419923(0x1c7)](duration,sqlLogSlowThreshold);let _0x2e2db2=_0x14e9a3[_0x419923(0x1cf)];if(_0x17498b)_0x52210d+=_0x14e9a3['zJXIp'],_0x2e2db2=_0x419923(0x1bc),logger[_0x419923(0x1bc)](_0x12c378,_0x52210d);else _0x14e9a3['KGEyY'](sqlLogLevel,_0x14e9a3['wJBbx'])?(_0x2e2db2=_0x14e9a3['wJBbx'],logger['info'](_0x12c378,_0x52210d)):logger['debug'](_0x12c378,_0x52210d);writeToFileLog({..._0x12c378,'level':_0x2e2db2,'msg':_0x52210d,'time':new Date()[_0x419923(0x210)]()},_0x2e2db2);},logTransaction=(_0xa33796,_0xeae2b5)=>{const _0x243f4f=a0_0x3698b4,_0x15abda={'Agiyq':_0x243f4f(0x1eb)},_0x511896={'event':_0x15abda[_0x243f4f(0x1e4)],'status':_0xa33796,'queryCount':_0xeae2b5},_0x15342b='Transaction\x20'+_0xa33796;logger['debug'](_0x511896,_0x15342b),writeToFileLog({..._0x511896,'level':_0x243f4f(0x202),'msg':_0x15342b,'time':new Date()['toISOString']()},'debug');},redactObject=_0x20b437=>{const _0x1b522b=a0_0x3698b4,_0x32bf27={'qkqZo':'object','odeld':'secret','gfrbu':'apikey','JUfdn':_0x1b522b(0x24a),'pCVtl':_0x1b522b(0x1a4),'yCrQL':'pin','Jtton':_0x1b522b(0x1ff),'JBSBp':_0x1b522b(0x249),'TLIhw':'[REDACTED]'};if(!_0x20b437||typeof _0x20b437!==_0x32bf27[_0x1b522b(0x230)])return _0x20b437;const _0x1151bc=['password','passwd',_0x1b522b(0x21b),_0x1b522b(0x22c),_0x32bf27[_0x1b522b(0x1b8)],_0x32bf27['gfrbu'],_0x1b522b(0x1fb),'authorization',_0x1b522b(0x194),_0x1b522b(0x19d),_0x32bf27['JUfdn'],_0x32bf27['pCVtl'],_0x32bf27['yCrQL'],_0x32bf27['Jtton'],_0x1b522b(0x206),'refresh_token',_0x32bf27['JBSBp']],_0x1d6834=Array['isArray'](_0x20b437)?[..._0x20b437]:{..._0x20b437};for(const _0x5897f7 of Object['keys'](_0x1d6834)){const _0x71fa07=_0x5897f7[_0x1b522b(0x22e)]();if(_0x1151bc['some'](_0x802ace=>_0x71fa07[_0x1b522b(0x1a0)](_0x802ace)))_0x1d6834[_0x5897f7]=_0x32bf27[_0x1b522b(0x1ad)];else typeof _0x1d6834[_0x5897f7]===_0x1b522b(0x22f)&&_0x1d6834[_0x5897f7]!==null&&(_0x1d6834[_0x5897f7]=redactObject(_0x1d6834[_0x5897f7]));}return _0x1d6834;},logError=(_0x29a9cd,_0x3358aa={},_0x14b637=null)=>{const _0x3a53bb=a0_0x3698b4,_0x21af41={'MUNqQ':'error','uALMn':'Error'},_0x35a0be={'event':_0x21af41[_0x3a53bb(0x1a7)],'errorName':_0x29a9cd['name']||_0x21af41['uALMn'],'errorMessage':_0x29a9cd['message'],'errorCode':_0x29a9cd['code']||null,'stack':_0x29a9cd['stack'],..._0x3358aa},_0xc4dece=_0x14b637||'Error:\x20'+_0x29a9cd[_0x3a53bb(0x22d)];logger[_0x3a53bb(0x1c6)](_0x35a0be,_0xc4dece),writeToFileLog({..._0x35a0be,'level':'error','msg':_0xc4dece,'time':new Date()['toISOString']()},_0x21af41['MUNqQ']);},logFatalError=(_0x39f434,_0x146540={},_0x176d4e=null)=>{const _0x57c9a9=a0_0x3698b4,_0x472c5f={'FQGla':_0x57c9a9(0x200),'VKdXQ':_0x57c9a9(0x238),'xghVo':function(_0xeacc73,_0x51ff6e,_0x517645){return _0xeacc73(_0x51ff6e,_0x517645);},'UAUDF':'fatal'},_0x5f471c={'event':_0x472c5f['FQGla'],'errorName':_0x39f434[_0x57c9a9(0x1a6)]||_0x472c5f[_0x57c9a9(0x192)],'errorMessage':_0x39f434['message'],'errorCode':_0x39f434['code']||null,'stack':_0x39f434[_0x57c9a9(0x18f)],'severity':_0x57c9a9(0x1e7),..._0x146540},_0x34fbe1=_0x176d4e||'FATAL:\x20'+_0x39f434[_0x57c9a9(0x22d)];logger[_0x57c9a9(0x1cd)](_0x5f471c,_0x34fbe1),_0x472c5f[_0x57c9a9(0x204)](writeToFileLog,{..._0x5f471c,'level':_0x472c5f['UAUDF'],'msg':_0x34fbe1,'time':new Date()[_0x57c9a9(0x210)]()},'error');},logHttpError=(_0x2506ee,_0x534f07,_0x5894f1={})=>{const _0x1ac68f=a0_0x3698b4,_0xd0f894={'oPOeA':'http_error','ibsva':_0x1ac68f(0x238),'BMkHp':function(_0x537c29,_0x4978df){return _0x537c29(_0x4978df);},'keUbY':function(_0x2d3e45,_0x5282e5,_0x150e3a){return _0x2d3e45(_0x5282e5,_0x150e3a);},'gKORs':function(_0x3437a5,_0x1c8bcc){return _0x3437a5>=_0x1c8bcc;},'BXpUr':_0x1ac68f(0x1c6),'OzqFs':_0x1ac68f(0x1bc)},_0x544569={'event':_0xd0f894[_0x1ac68f(0x1dc)],'errorName':_0x2506ee['name']||_0xd0f894[_0x1ac68f(0x1b6)],'errorMessage':_0x2506ee['message'],'errorCode':_0x2506ee['code']||_0x2506ee[_0x1ac68f(0x1e2)]||0x1f4,'stack':_0x2506ee[_0x1ac68f(0x18f)],'method':_0x534f07?.['method'],'url':_0x534f07?.['url']||_0x534f07?.[_0x1ac68f(0x1f0)],'path':_0x534f07?.[_0x1ac68f(0x203)],'ip':_0x534f07?.['ip']||_0x534f07?.['connection']?.['remoteAddress'],'userAgent':_0x534f07?.['get']?.('user-agent'),'requestId':_0x534f07?.['id']||_0x534f07?.['headers']?.['x-request-id'],'body':_0x534f07?.['body']?_0xd0f894['BMkHp'](redactObject,_0x534f07['body']):undefined,'query':_0x534f07?.[_0x1ac68f(0x1f4)],..._0x5894f1},_0x2ea300=_0x2506ee[_0x1ac68f(0x1e2)]||_0x2506ee['status']||0x1f4,_0x2a867b='HTTP\x20'+_0x2ea300+':\x20'+_0x2506ee['message'];_0x2ea300>=0x1f4?logger['error'](_0x544569,_0x2a867b):logger['warn'](_0x544569,_0x2a867b),_0xd0f894[_0x1ac68f(0x1e5)](writeToFileLog,{..._0x544569,'level':_0xd0f894['gKORs'](_0x2ea300,0x1f4)?_0xd0f894[_0x1ac68f(0x212)]:'warn','msg':_0x2a867b,'time':new Date()['toISOString']()},_0x2ea300>=0x1f4?_0xd0f894['BXpUr']:_0xd0f894['OzqFs']);},logUncaughtError=(_0x4d3858,_0x48c6f3)=>{const _0x281982=a0_0x3698b4,_0x2a1d06={'tySiU':function(_0x329114,_0x485e19){return _0x329114(_0x485e19);}},_0x16dc6d={'event':_0x4d3858,'errorName':_0x48c6f3?.[_0x281982(0x1a6)]||'Error','errorMessage':_0x48c6f3?.[_0x281982(0x22d)]||_0x2a1d06[_0x281982(0x1fc)](String,_0x48c6f3),'errorCode':_0x48c6f3?.['code']||null,'stack':_0x48c6f3?.[_0x281982(0x18f)],'severity':_0x281982(0x1e7),'processId':process['pid'],'memoryUsage':process[_0x281982(0x1d9)](),'uptime':process[_0x281982(0x22a)]()},_0x9d5217='['+_0x4d3858['toUpperCase']()+']\x20'+(_0x48c6f3?.['message']||_0x48c6f3);logger[_0x281982(0x1cd)](_0x16dc6d,_0x9d5217),writeToFileLog({..._0x16dc6d,'level':_0x281982(0x1cd),'msg':_0x9d5217,'time':new Date()[_0x281982(0x210)]()},_0x281982(0x1c6));},setupGlobalErrorHandlers=()=>{const _0x14cc21=a0_0x3698b4,_0xb4b417={'dmSbn':function(_0x55b46a,_0x18b514,_0x49beb7){return _0x55b46a(_0x18b514,_0x49beb7);},'KOvvg':function(_0x1fe76d,_0x728d7d,_0x5a556b){return _0x1fe76d(_0x728d7d,_0x5a556b);},'RPMvv':function(_0x111cd7,_0x821dd2){return _0x111cd7 instanceof _0x821dd2;},'vDxwq':function(_0x5b2bab,_0x48803e){return _0x5b2bab(_0x48803e);},'XiKSt':_0x14cc21(0x198),'QlEPw':'process_warning','yFoCo':'global_error_handlers_setup','ZcAuo':'Global\x20error\x20handlers\x20initialized'};process['on'](_0x14cc21(0x19f),_0x18ff38=>{const _0x357b51=_0x14cc21;_0xb4b417[_0x357b51(0x1b1)](logUncaughtError,_0x357b51(0x19f),_0x18ff38),_0xb4b417[_0x357b51(0x1d2)](setTimeout,()=>{process['exit'](0x1);},0x3e8);}),process['on']('unhandledRejection',(_0x111576,_0x254b57)=>{const _0x3e00e7=_0x14cc21,_0x649b01=_0xb4b417['RPMvv'](_0x111576,Error)?_0x111576:new Error(_0xb4b417[_0x3e00e7(0x23f)](String,_0x111576));logUncaughtError(_0xb4b417['XiKSt'],_0x649b01);}),process['on'](_0x14cc21(0x20c),_0x4cc6ee=>{const _0x3a1beb=_0x14cc21;logger['warn']({'event':_0xb4b417['QlEPw'],'name':_0x4cc6ee[_0x3a1beb(0x1a6)],'message':_0x4cc6ee[_0x3a1beb(0x22d)],'stack':_0x4cc6ee[_0x3a1beb(0x18f)]},'Process\x20Warning:\x20'+_0x4cc6ee[_0x3a1beb(0x22d)]);});const _0xa01e3c={'event':_0xb4b417['yFoCo']},_0x4b0cbc=_0xb4b417['ZcAuo'];logger['info'](_0xa01e3c,_0x4b0cbc),writeToFileLog({..._0xa01e3c,'level':'info','msg':_0x4b0cbc,'time':new Date()[_0x14cc21(0x210)]()},'info');},createErrorHandlerMiddleware=()=>{const _0x2ee778={'hDNbh':function(_0x3a6090,_0x293ccd){return _0x3a6090>=_0x293ccd;}};return(_0x1c19da,_0x49d82f,_0x2ce2c9,_0x403cef)=>{const _0xcb8491=a0_0x15d9;logHttpError(_0x1c19da,_0x49d82f);const _0xfff743=_0x1c19da[_0xcb8491(0x1e2)]||_0x1c19da[_0xcb8491(0x1d8)]||0x1f4;_0x2ce2c9[_0xcb8491(0x1d8)](_0xfff743)[_0xcb8491(0x1ef)]({'success':![],'error':_0x2ee778['hDNbh'](_0xfff743,0x1f4)?_0xcb8491(0x1a5):_0x1c19da['message'],'requestId':_0x49d82f['id']||_0x49d82f['headers']?.[_0xcb8491(0x248)]||null});};};module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
|
|
1
|
+
const a0_0x3a0fef=a0_0x10b9;(function(_0x172ac4,_0x27ef14){const _0x118e94=a0_0x10b9,_0x31d9a5=_0x172ac4();while(!![]){try{const _0x1bf160=parseInt(_0x118e94(0x1ee))/0x1*(-parseInt(_0x118e94(0x1ad))/0x2)+-parseInt(_0x118e94(0x161))/0x3+parseInt(_0x118e94(0x1b6))/0x4+parseInt(_0x118e94(0x1c6))/0x5+parseInt(_0x118e94(0x20e))/0x6+parseInt(_0x118e94(0x1ae))/0x7*(-parseInt(_0x118e94(0x158))/0x8)+parseInt(_0x118e94(0x1bc))/0x9;if(_0x1bf160===_0x27ef14)break;else _0x31d9a5['push'](_0x31d9a5['shift']());}catch(_0x508c53){_0x31d9a5['push'](_0x31d9a5['shift']());}}}(a0_0x2356,0xb2a04));const pino=require('pino'),fs=require('fs'),path=require(a0_0x3a0fef(0x1d5));function a0_0x10b9(_0x25111b,_0x1d0469){_0x25111b=_0x25111b-0x150;const _0x235617=a0_0x2356();let _0x10b9eb=_0x235617[_0x25111b];if(a0_0x10b9['YpSAUC']===undefined){var _0x5f3a08=function(_0x34480b){const _0x75552f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x89c117='',_0x20b3af='';for(let _0x4ae069=0x0,_0x1cf575,_0x58ea75,_0x3133b1=0x0;_0x58ea75=_0x34480b['charAt'](_0x3133b1++);~_0x58ea75&&(_0x1cf575=_0x4ae069%0x4?_0x1cf575*0x40+_0x58ea75:_0x58ea75,_0x4ae069++%0x4)?_0x89c117+=String['fromCharCode'](0xff&_0x1cf575>>(-0x2*_0x4ae069&0x6)):0x0){_0x58ea75=_0x75552f['indexOf'](_0x58ea75);}for(let _0x8d3836=0x0,_0x28a0dc=_0x89c117['length'];_0x8d3836<_0x28a0dc;_0x8d3836++){_0x20b3af+='%'+('00'+_0x89c117['charCodeAt'](_0x8d3836)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x20b3af);};a0_0x10b9['sZgghd']=_0x5f3a08,a0_0x10b9['AwocPX']={},a0_0x10b9['YpSAUC']=!![];}const _0x8d7fee=_0x235617[0x0],_0x5e4d14=_0x25111b+_0x8d7fee,_0x323b85=a0_0x10b9['AwocPX'][_0x5e4d14];return!_0x323b85?(_0x10b9eb=a0_0x10b9['sZgghd'](_0x10b9eb),a0_0x10b9['AwocPX'][_0x5e4d14]=_0x10b9eb):_0x10b9eb=_0x323b85,_0x10b9eb;}function a0_0x2356(){const _0x11594b=['qLDVs1u','AvbLAei','BMfTzq','ms4WlJu','CMvZDgzVCMDL','Dg9mB3DLCKnHC2u','qwTdwxO','te9hx0rjuG','vvbeqvrf','uhjeBKi','C3rHDhvZq29Kzq','CMvWzwf0','zMfSC2u','BxmP','DxnLCG','yxbPs2v5','y29UBMvJDgLVBG','C3rYAw5N','CgfZC3DK','z25ku3G','Bwv0Ag9K','zMXVB3i','Dg9Rzw4','y2HPBgq','zgv2zwXVCg1LBNq','s1Lfr2C','C29Tzq','CgfYyw1Z','DxjS','Dg9vChbLCKnHC2u','DhHYrfu','u1fmx0Xpr19mrvzfta','zhvYyxrPB25nCW','reiGuxvLCNK','sLz6uum','zxHWB3j0CW','CgfKrw5K','zw52','rMrNDeq','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','su5trvju','AxnVvgLTzq','AvHHtuy','AgvHBhrOq2HLy2S','Bg5JDK8','zKn0vw0','uMj2uNy','C3fSx3f1zxj5','zgvIDwC','B3rW','Dfzpz3y','zxjYB3iUBg9N','yM9KEq','y3jLyxrLv3jPDgvtDhjLyw0','zgjFCxvLCNK','C3bSAxq','BgvUz3rO','w1jfrefdveveoNrVA2vUxq','tMDgtxy','rejFueftu1DpuKq','u1fmx0Xpr19qqvjbtvm','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','yxbPA2v5','C3rHDhvZ','CgLUBY1WCMv0DhK','zMXbz0O','zgf0ywjHC2u','BwfW','mJG0mta3ofn1EgvMyG','mtaYnZK5owruz2foBW','CxvLCNK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ChjVy2vZC193yxjUAw5N','Ec1Yzxf1zxn0lwLK','CMvTB3rLqwrKCMvZCW','zMf0ywW','vhjHBNnHy3rPB24G','mJeWmtaWogn2r0ritG','zgvMyxvSDa','w1jfrefdvevexq','w09lxsbqCM9Qzwn0igXVywrLzdOG','iokvKqRILzRILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILzdILz0','vfjbtLnbq1rjt05FqKvhsu4','mJCZmZC4mdzrrNDjC3q','AgvHzgvYCW','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','CMvZB2X2zq','DLnVEwC','BMvlvxy','Ahr0Cf9Yzxf1zxn0','Aw5MBW','u1fmx0Xpr19ftKfcteve','y29Kzq','mteYnZaWmgn4zxfjBW','AvzhAvO','yxbPx2TLEq','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','ANnVBG','y29UzMLNrMLSzq','wfPtzKy','qKvhsu4','z2v0sgvHzgvYCW','ChjVAMvJDa','tgzHsNC','q29VquC','revmrvrf','rermx0nsrufurq','y3jLzgL0x2nHCMq','Cgf0Aa','z2v0','rermx0rst1a','AM9PBG','B2jQzwn0','rermx0fmvevs','yxv0Ag9YAxPHDgLVBG','DhjPBq','C3nU','DgvZDa','ChDK','y3jLzgL0y2fYza','reLHAxC','rKfuquW6ia','zw5KCg9PBNrFCMvNAxn0zxjLza','zgf0ywjHC2vFy29UzMLN','Ag9ZDa','ChjVAMvJDf9SB2fKzwq','yxbPx3nLy3jLDa','ENPXs2K','yxbWlMXVzW','shr3v2G','zxjYB3i','zM5gEKG','Dw5JyxvNAhrfEgnLChrPB24','mwDwzMzHEG','ChjVzhvJDgLVBG','iokvKqRILzeGifbYB2PLy3qGicaGidOG','vfjbtLnbq1rjt05Fq09ntuLu','yMfZzvvYBa','uvziBMS','icbjBMzVoIaGia','CMvWBgfJzq','uhjVy2vZCYbxyxjUAw5NoIa','CgfZC3DVCMq','rhbmBKO','Dg9gAxHLza','B211wwu','te9hx0XfvKvm','txngr2K','C2vYDMLJzuLUzM8','DxnLCI1Hz2vUDa','C3rHCNrZv2L0Aa','Dw5RBM93BG','C2vJCMv0','rgvMyxvSDa','tuzpyKO','uwLht3C','D2fYBG','vufpwuK','q1jfqvrf','Bwf0y2G','rwvJuxm','vfjbtLnbq1rjt05FuK9mtejbq0S','ywnJzxnZx3rVA2vU','Dw5Oyw5KBgvKuMvQzwn0Aw9U','BwvZC2fNzq','mtq5oti4mezTwMLyvq','u0vsvKLdrv9oqu1f','Dhj1zq','C3rHy2S','rgf0ywjHC2u6ia','rfjpua','icbizwfSDgG6ia','Ahj0Aw1L','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','ntzRzNzkAxq','BwTKAxjtEw5J','D1PyDue','C3rKu2vYAwfSAxPLCNm','sMnyCNm','s1vdtee','Dg9ju09tDhjPBMC','quXurvi','uvvyB1y','mJu3mZyYoeD1we5ktW','zNzwyue','Cg9YDa','CgLU','iokvKqRILzeGienVBMzPzYaGicaGidOG','Aw5JBhvKzxm','vwLPy04','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK'];a0_0x2356=function(){return _0x11594b;};return a0_0x2356();}let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env']['NODE_ENV']!==a0_0x3a0fef(0x1ef),logLevel=process[a0_0x3a0fef(0x18e)][a0_0x3a0fef(0x1fb)]||'info';let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0x3a0fef(0x1a9),'options':prettyPrintOptions}:undefined,'base':{'service':a0_0x3a0fef(0x16d),'version':process['env']['APP_VERSION']||a0_0x3a0fef(0x16c),'env':process[a0_0x3a0fef(0x18e)]['NODE_ENV']||a0_0x3a0fef(0x181)},'timestamp':pino['stdTimeFunctions'][a0_0x3a0fef(0x192)],'redact':{'paths':['req.headers.authorization',a0_0x3a0fef(0x190),a0_0x3a0fef(0x1f7),a0_0x3a0fef(0x17f),a0_0x3a0fef(0x178),a0_0x3a0fef(0x1a4),'JWT_SECRET'],'censor':'[REDACTED]'},'serializers':{'req':_0x50d7b6=>({'id':_0x50d7b6['id'],'method':_0x50d7b6['method'],'url':_0x50d7b6[a0_0x3a0fef(0x185)],'path':_0x50d7b6['path'],'remoteAddress':_0x50d7b6['ip']||_0x50d7b6[a0_0x3a0fef(0x179)]?.['remoteAddress']}),'res':_0x17d9f3=>({'statusCode':_0x17d9f3['statusCode'],'headers':_0x17d9f3[a0_0x3a0fef(0x1ce)]?.()}),'err':pino[a0_0x3a0fef(0x15b)]['err']}});function initFileLogging(){const _0x97beb2=a0_0x3a0fef,_0x3deae2={'RsaqA':_0x97beb2(0x151),'HSrAB':function(_0xc663f6,_0x5c15b3){return _0xc663f6===_0x5c15b3;},'rQJkQ':function(_0x125b47,_0x39f64b){return _0x125b47!==_0x39f64b;},'QeDGZ':_0x97beb2(0x175),'OhpPD':_0x97beb2(0x1e9),'rJDBd':_0x97beb2(0x19c),'PuuEF':function(_0x2b90af,_0x849e3d,_0x1249a1){return _0x2b90af(_0x849e3d,_0x1249a1);},'JVzQC':'info'};if(fileLoggingInitialized)return;logToFile=process['env']['LOG_TO_FILE']===_0x3deae2['RsaqA'];const _0x2c66cc=process[_0x97beb2(0x18e)][_0x97beb2(0x1b0)]||_0x97beb2(0x1b7);logDir=process['env'][_0x97beb2(0x170)]||'./logs/'+_0x2c66cc,serviceName=process[_0x97beb2(0x18e)][_0x97beb2(0x150)]||'restforge',sqlLogEnabled=_0x3deae2['HSrAB'](process['env'][_0x97beb2(0x1c4)],_0x3deae2['RsaqA']),sqlLogLevel=process[_0x97beb2(0x18e)][_0x97beb2(0x188)]||_0x97beb2(0x199),sqlLogParams=_0x3deae2['rQJkQ'](process[_0x97beb2(0x18e)][_0x97beb2(0x1a5)],_0x3deae2['QeDGZ']),sqlLogSlowThreshold=parseInt(process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x262ed7=path[_0x97beb2(0x1bf)](process['cwd'](),logDir);try{!fs['existsSync'](_0x262ed7)&&fs[_0x97beb2(0x159)](_0x262ed7,{'recursive':!![]});}catch(_0x32c6a0){console['error']('Failed\x20to\x20create\x20log\x20directory\x20'+_0x262ed7+':',_0x32c6a0['message']),fileLoggingInitialized=!![];return;}const _0x3ebaa5=path[_0x97beb2(0x1d8)](_0x262ed7,_0x3deae2['OhpPD']),_0x3b81da=path[_0x97beb2(0x1d8)](_0x262ed7,_0x3deae2['rJDBd']);try{appLogStream=fs[_0x97beb2(0x19e)](_0x3ebaa5,{'flags':'a'}),errorLogStream=fs['createWriteStream'](_0x3b81da,{'flags':'a'}),fileLoggingInitialized=!![];const _0x23c66f={'event':'file_logging_enabled','logDir':_0x262ed7,'files':['app.log','error.log']},_0x40222e='File\x20logging\x20enabled:\x20'+_0x262ed7;logger[_0x97beb2(0x1c3)](_0x23c66f,_0x40222e),_0x3deae2['PuuEF'](writeToFileLog,{..._0x23c66f,'level':_0x3deae2[_0x97beb2(0x18b)],'msg':_0x40222e,'time':new Date()[_0x97beb2(0x15e)]()},'info');}catch(_0x1aebb1){console['error']('Failed\x20to\x20create\x20log\x20streams:',_0x1aebb1[_0x97beb2(0x20d)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x331285,_0x80db45){const _0x334b68=a0_0x3a0fef,_0x4f208e={'XZSfF':function(_0x23aae2,_0x41a27e){return _0x23aae2||_0x41a27e;}};if(_0x4f208e[_0x334b68(0x1cc)](!logToFile,!appLogStream))return;const _0x9f8a14={'service':serviceName,..._0x331285},_0x116360=JSON['stringify'](_0x9f8a14)+'\x0a';appLogStream['write'](_0x116360),(_0x80db45===_0x334b68(0x1eb)||_0x80db45===_0x334b68(0x1b4))&&(errorLogStream&&errorLogStream['write'](_0x116360));}const createRequestLogger=(_0x32b3a5={})=>{const _0x3e9be6=a0_0x3a0fef;return logger[_0x3e9be6(0x180)](_0x32b3a5);},logServerStart=_0xf79349=>{const _0x2a901d=a0_0x3a0fef,_0x4e79f8={'Mqval':function(_0x58df61,_0x46ef72){return _0x58df61-_0x46ef72;},'cUDHS':function(_0x39c42a,_0x1ac39f){return _0x39c42a/_0x1ac39f;},'oXELS':'Node.js','wZXuA':_0x2a901d(0x202),'lVxhh':'ACTIVE','sPeGr':'NOT\x20ACTIVE','LjMHj':'server_starting','lWnwM':function(_0x445a8f,_0x332239,_0x277b04){return _0x445a8f(_0x332239,_0x277b04);},'FcQFP':'info'},_0x46129d=_0x2a901d(0x1be),_0x1add54=Math['max'](0x0,_0x4e79f8['Mqval'](0x37,_0x46129d[_0x2a901d(0x1a1)])),_0xc6cf6a=Math[_0x2a901d(0x17e)](_0x4e79f8['cUDHS'](_0x1add54,0x2)),_0x3ea1d9=_0x1add54-_0xc6cf6a,_0x5b5f7f='║'+'\x20'['repeat'](_0xc6cf6a)+_0x46129d+'\x20'[_0x2a901d(0x174)](_0x3ea1d9)+'║',_0x231dc6=_0x2a901d(0x1c9)+_0x5b5f7f+_0x2a901d(0x1a6)+(_0xf79349['environment']||_0x4e79f8['oXELS'])[_0x2a901d(0x18d)](0x26)+_0x2a901d(0x1f0)+(_0xf79349['project']||'N/A')[_0x2a901d(0x18d)](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+String(_0xf79349[_0x2a901d(0x163)]||0xbb8)[_0x2a901d(0x18d)](0x26)+_0x2a901d(0x165)+(_0xf79349[_0x2a901d(0x1cb)]||_0x4e79f8[_0x2a901d(0x15a)])[_0x2a901d(0x18d)](0x26)+'\x20║\x0a║\x20\x20API\x20Key\x20\x20\x20\x20\x20:\x20'+(_0xf79349[_0x2a901d(0x178)]?_0x4e79f8['lVxhh']:_0x4e79f8['sPeGr'])[_0x2a901d(0x18d)](0x26)+_0x2a901d(0x1ba);console['log'](_0x231dc6);const _0xc73145={'event':_0x4e79f8['LjMHj'],'project':_0xf79349[_0x2a901d(0x1cf)],'port':_0xf79349['port'],'config':_0xf79349['configFile'],'apiKeyEnabled':!!_0xf79349['apiKey']};logger['info'](_0xc73145),_0x4e79f8['lWnwM'](writeToFileLog,{..._0xc73145,'level':_0x4e79f8['FcQFP'],'msg':'Server\x20starting:\x20'+_0xf79349['project']+'\x20on\x20port\x20'+_0xf79349[_0x2a901d(0x163)],'time':new Date()[_0x2a901d(0x15e)]()},_0x2a901d(0x1c3));},logServerReady=_0x3546e0=>{const _0x13f976=a0_0x3a0fef,_0x23ccbe={'GPkbL':'server_ready','vSoyg':'info'},_0x558477={'event':_0x23ccbe['GPkbL'],'port':_0x3546e0[_0x13f976(0x163)],'module':_0x3546e0['module'],'healthCheck':_0x3546e0['healthCheck'],'serviceInfo':_0x3546e0[_0x13f976(0x1fd)],'baseUrl':_0x3546e0[_0x13f976(0x1f2)]},_0xfbc438='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x3546e0[_0x13f976(0x163)];logger[_0x13f976(0x1c3)](_0x558477,_0xfbc438),writeToFileLog({..._0x558477,'level':_0x23ccbe[_0x13f976(0x1c0)],'msg':_0xfbc438,'time':new Date()[_0x13f976(0x15e)]()},_0x23ccbe['vSoyg']),_0x3546e0[_0x13f976(0x194)]&&logger['info'](_0x13f976(0x155)+_0x3546e0[_0x13f976(0x194)]),_0x3546e0[_0x13f976(0x1fd)]&&logger['info'](_0x13f976(0x1f4)+_0x3546e0[_0x13f976(0x1fd)]),_0x3546e0[_0x13f976(0x1f2)]&&logger[_0x13f976(0x1c3)]('\x20\x20URL:\x20\x20\x20\x20'+_0x3546e0['baseUrl']);},logProjectLoaded=(_0x216b6a,_0x547d6a)=>{const _0x220f7a=a0_0x3a0fef,_0xd4caaa={'event':_0x220f7a(0x1e6),'project':_0x216b6a,'path':_0x547d6a},_0x562415=_0x220f7a(0x1b9)+_0x216b6a;logger[_0x220f7a(0x1c3)](_0xd4caaa,_0x562415),writeToFileLog({..._0xd4caaa,'level':_0x220f7a(0x1c3),'msg':_0x562415,'time':new Date()['toISOString']()},'info');},logEndpointRegistered=(_0x5ef44b,_0x4514d5)=>{const _0x10a007=a0_0x3a0fef,_0x3ce4ae={'UiicN':function(_0x31bac5,_0x58ad9b,_0x1e522b){return _0x31bac5(_0x58ad9b,_0x1e522b);},'tVOgv':_0x10a007(0x199)},_0x553326={'event':_0x10a007(0x1e3),'endpoint':_0x5ef44b,'route':_0x4514d5},_0x5d4b9a='\x20\x20→\x20'+_0x5ef44b+':\x20'+_0x4514d5;logger[_0x10a007(0x199)](_0x553326,_0x5d4b9a),_0x3ce4ae[_0x10a007(0x167)](writeToFileLog,{..._0x553326,'level':_0x10a007(0x199),'msg':_0x5d4b9a,'time':new Date()[_0x10a007(0x15e)]()},_0x3ce4ae[_0x10a007(0x19b)]);},logDatabaseConfig=_0x370299=>{const _0x4c609c=a0_0x3a0fef,_0x201d80={'CooAG':_0x4c609c(0x199)},_0x307aa5={'event':_0x4c609c(0x1e4),'host':_0x370299[_0x4c609c(0x1e5)],'port':_0x370299['port'],'database':_0x370299['database'],'type':_0x370299['type'],'user':_0x370299[_0x4c609c(0x177)]},_0x46a235=_0x4c609c(0x153)+_0x370299['type']+'://'+_0x370299[_0x4c609c(0x1e5)]+':'+_0x370299[_0x4c609c(0x163)]+'/'+_0x370299[_0x4c609c(0x1ab)];logger['debug'](_0x307aa5,_0x46a235),writeToFileLog({..._0x307aa5,'level':_0x201d80['CooAG'],'msg':_0x46a235,'time':new Date()['toISOString']()},_0x201d80[_0x4c609c(0x1d1)]);},logRequest=(_0x4ca6fd,_0x475933,_0x1da2f1)=>{const _0xd68eef=a0_0x3a0fef,_0x1fae99={'QVHnk':_0xd68eef(0x1c2),'lncvO':_0xd68eef(0x1c3),'MsFGi':function(_0xaa0613,_0x2bceb7){return _0xaa0613>=_0x2bceb7;},'EecQs':'error','DpLnJ':function(_0x173457,_0x18c3f6){return _0x173457>=_0x18c3f6;},'QybbD':'warn'},_0x5a13d0={'event':_0x1fae99[_0xd68eef(0x1f3)],'method':_0x4ca6fd[_0xd68eef(0x17d)],'path':_0x4ca6fd['path'],'statusCode':_0x475933['statusCode'],'durationMs':_0x1da2f1,'ip':_0x4ca6fd['ip']},_0x29c3d0=_0x4ca6fd['method']+'\x20'+_0x4ca6fd[_0xd68eef(0x1d5)]+'\x20-\x20'+_0x475933[_0xd68eef(0x173)]+'\x20('+_0x1da2f1+'ms)';let _0x1a1e1a=_0x1fae99[_0xd68eef(0x195)];if(_0x1fae99[_0xd68eef(0x1fc)](_0x475933[_0xd68eef(0x173)],0x1f4))_0x1a1e1a=_0x1fae99[_0xd68eef(0x209)],logger['error'](_0x5a13d0,_0x29c3d0);else _0x1fae99[_0xd68eef(0x1f8)](_0x475933['statusCode'],0x190)?(_0x1a1e1a=_0x1fae99['QybbD'],logger[_0xd68eef(0x205)](_0x5a13d0,_0x29c3d0)):logger['info'](_0x5a13d0,_0x29c3d0);writeToFileLog({..._0x5a13d0,'level':_0x1a1e1a,'msg':_0x29c3d0,'time':new Date()['toISOString']()},_0x1a1e1a);},SENSITIVE_PARAM_PATTERNS=['password','passwd',a0_0x3a0fef(0x1df),'token',a0_0x3a0fef(0x20b),'refresh_token',a0_0x3a0fef(0x201),a0_0x3a0fef(0x1e7),a0_0x3a0fef(0x1a7),a0_0x3a0fef(0x1c8),'credential','credentials','pin',a0_0x3a0fef(0x19a),'private_key','privatekey'],redactSensitiveParams=(_0x996b3a,_0x13ffee)=>{const _0x5779b4=a0_0x3a0fef,_0x5f1046={'YQONS':'[REDACTED]','iPehB':_0x5779b4(0x17a),'fmoXN':_0x5779b4(0x1a2),'afuXA':'[REDACTED:hash]','VoitX':function(_0x2143b5,_0x935a18){return _0x2143b5===_0x935a18;}};if(!_0x996b3a||_0x5f1046['VoitX'](_0x996b3a['length'],0x0))return _0x996b3a;const _0xe138db=_0x13ffee[_0x5779b4(0x16e)](),_0xce3bd6=_0xe138db[_0x5779b4(0x208)](/\(([^)]+)\)\s*values/i);let _0xbbd62c=[];_0xce3bd6&&(_0xbbd62c=_0xce3bd6[0x1][_0x5779b4(0x1a0)](',')[_0x5779b4(0x1ac)](_0x176440=>_0x176440[_0x5779b4(0x1dc)]()['toLowerCase']()));const _0x50ac23=_0xe138db[_0x5779b4(0x208)](/set\s+(.+?)(?:\s+where|$)/i);if(_0x50ac23){const _0x530587=_0x50ac23[0x1],_0x612543=_0x530587[_0x5779b4(0x208)](/(\w+)\s*=/g);_0x612543&&(_0xbbd62c=_0x612543['map'](_0xfceae4=>_0xfceae4[_0x5779b4(0x1f5)](/\s*=/,'')['trim']()[_0x5779b4(0x16e)]()));}return _0x996b3a[_0x5779b4(0x1ac)]((_0x169045,_0xfe4d7a)=>{const _0x2df46a=_0x5779b4;if(_0xbbd62c[_0xfe4d7a]){const _0xe26b34=_0xbbd62c[_0xfe4d7a],_0x409d02=SENSITIVE_PARAM_PATTERNS[_0x2df46a(0x183)](_0x54452e=>_0xe26b34['includes'](_0x54452e));if(_0x409d02)return _0x5f1046['YQONS'];}if(typeof _0x169045===_0x5f1046[_0x2df46a(0x16a)]&&_0x169045[_0x2df46a(0x1a1)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/[_0x2df46a(0x1de)](_0x169045)&&_0x169045[_0x2df46a(0x166)]('.'))return _0x5f1046['fmoXN'];if(/^[a-fA-F0-9]{32,}$/[_0x2df46a(0x1de)](_0x169045))return _0x5f1046['afuXA'];}return _0x169045;});},parseQueryMetadata=_0x267f97=>{const _0xa36976=a0_0x3a0fef,_0x5b4ba5={'QUXoV':'SELECT','gQDTT':'INSERT','MFObJ':_0xa36976(0x171),'jjFFH':'DELETE','KYEGg':_0xa36976(0x1cd),'SSrBe':'START\x20TRANSACTION','KUCLA':_0xa36976(0x1bb),'ADqTZ':_0xa36976(0x1f1),'sgSOb':_0xa36976(0x207),'flAgJ':_0xa36976(0x15f),'gjRTY':_0xa36976(0x1da),'dfFFH':_0xa36976(0x154)},_0x3303a2=_0x267f97['trim'](),_0xcdc83c=_0x3303a2[_0xa36976(0x186)]();let _0x4008f9='UNKNOWN',_0x1f41ee=null;if(_0xcdc83c[_0xa36976(0x1ff)](_0x5b4ba5[_0xa36976(0x160)])){_0x4008f9=_0x5b4ba5[_0xa36976(0x160)];const _0x5b1028=_0x3303a2[_0xa36976(0x208)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f41ee=_0x5b1028?_0x5b1028[0x1]:null;}else{if(_0xcdc83c['startsWith'](_0x5b4ba5['gQDTT'])){_0x4008f9=_0xa36976(0x191);const _0x1b2866=_0x3303a2['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f41ee=_0x1b2866?_0x1b2866[0x1]:null;}else{if(_0xcdc83c[_0xa36976(0x1ff)](_0x5b4ba5['MFObJ'])){_0x4008f9=_0x5b4ba5[_0xa36976(0x203)];const _0x54aacd=_0x3303a2['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f41ee=_0x54aacd?_0x54aacd[0x1]:null;}else{if(_0xcdc83c['startsWith'](_0xa36976(0x1d2))){_0x4008f9=_0x5b4ba5['jjFFH'];const _0x59496=_0x3303a2[_0xa36976(0x208)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x1f41ee=_0x59496?_0x59496[0x1]:null;}else{if(_0xcdc83c['startsWith'](_0x5b4ba5[_0xa36976(0x182)])||_0xcdc83c[_0xa36976(0x1ff)](_0x5b4ba5['SSrBe']))_0x4008f9=_0x5b4ba5[_0xa36976(0x15d)];else{if(_0xcdc83c[_0xa36976(0x1ff)]('COMMIT'))_0x4008f9=_0x5b4ba5['ADqTZ'];else{if(_0xcdc83c[_0xa36976(0x1ff)]('ROLLBACK'))_0x4008f9=_0xa36976(0x20a);else{if(_0xcdc83c['startsWith'](_0x5b4ba5['sgSOb']))_0x4008f9=_0xa36976(0x1d3);else{if(_0xcdc83c[_0xa36976(0x1ff)](_0x5b4ba5[_0xa36976(0x1aa)]))_0x4008f9=_0x5b4ba5['gjRTY'];else _0xcdc83c['startsWith'](_0x5b4ba5['dfFFH'])&&(_0x4008f9=_0xa36976(0x1d7));}}}}}}}}return{'type':_0x4008f9,'table':_0x1f41ee};},startQueryTimer=()=>{const _0x5b0c23={'URMCb':function(_0x1ae3fb,_0x168813){return _0x1ae3fb(_0x168813);},'txrDU':function(_0x483f27,_0x94f7bd){return _0x483f27+_0x94f7bd;},'uMfWQ':function(_0x171be3,_0x2d9127){return _0x171be3*_0x2d9127;}},_0x202550=process['hrtime']();return()=>{const _0x5ce7cc=a0_0x10b9,[_0x3fa842,_0x5966f5]=process[_0x5ce7cc(0x156)](_0x202550);return _0x5b0c23['URMCb'](parseFloat,_0x5b0c23[_0x5ce7cc(0x187)](_0x5b0c23['uMfWQ'](_0x3fa842,0x3e8),_0x5966f5/0xf4240)[_0x5ce7cc(0x1f9)](0x2));};},logQuery=(_0x38e722,_0x28f708=[],_0x16874d={})=>{const _0x4cc86d=a0_0x3a0fef,_0x4625d0={'SxuVu':function(_0xb56930,_0x9394a6){return _0xb56930>_0x9394a6;},'UAOYI':function(_0x35a6d2,_0x3471db,_0x58e4d2){return _0x35a6d2(_0x3471db,_0x58e4d2);},'HwXVB':function(_0x400976,_0x45b629){return _0x400976>_0x45b629;},'Mzhwr':_0x4cc86d(0x200),'NgFMv':function(_0xf440ff,_0x22b2be){return _0xf440ff!==_0x22b2be;},'xiUlP':_0x4cc86d(0x199),'BWoKU':'\x20[SLOW]','DjizH':'warn','neKUv':'info','FdgtD':function(_0x153d6a,_0x54df6c,_0x2175f1){return _0x153d6a(_0x54df6c,_0x2175f1);}};if(!sqlLogEnabled){logger['debug']({'event':_0x4cc86d(0x19f),'query':_0x38e722['substring'](0x0,0xc8),'paramCount':_0x28f708['length']},_0x4cc86d(0x18a));return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType='postgresql'}=_0x16874d,{type:_0xc60707,table:_0x947d5}=parseQueryMetadata(_0x38e722),_0xd55b17={'event':_0x4cc86d(0x198),'queryType':_0xc60707,'table':_0x947d5,'query':_0x38e722,'paramCount':_0x28f708[_0x4cc86d(0x1a1)],'dbType':dbType};sqlLogParams&&_0x4625d0['SxuVu'](_0x28f708[_0x4cc86d(0x1a1)],0x0)&&(_0xd55b17[_0x4cc86d(0x184)]=_0x4625d0[_0x4cc86d(0x206)](redactSensitiveParams,_0x28f708,_0x38e722));duration!==null&&(_0xd55b17[_0x4cc86d(0x189)]=duration,_0xd55b17['isSlow']=_0x4625d0['HwXVB'](duration,sqlLogSlowThreshold));rowsAffected!==null&&(_0xd55b17['rowsAffected']=rowsAffected);const _0x52e328=_0x947d5||_0x4625d0['Mzhwr'];let _0x1de643='['+_0xc60707+']\x20'+_0x52e328;_0x4625d0[_0x4cc86d(0x1a3)](duration,null)&&(_0x1de643+='\x20('+duration+_0x4cc86d(0x176));const _0x5782da=duration!==null&&duration>sqlLogSlowThreshold;let _0x19af1a=_0x4625d0['xiUlP'];if(_0x5782da)_0x1de643+=_0x4625d0[_0x4cc86d(0x169)],_0x19af1a=_0x4625d0['DjizH'],logger['warn'](_0xd55b17,_0x1de643);else sqlLogLevel==='info'?(_0x19af1a=_0x4625d0[_0x4cc86d(0x1c1)],logger['info'](_0xd55b17,_0x1de643)):logger['debug'](_0xd55b17,_0x1de643);_0x4625d0[_0x4cc86d(0x18f)](writeToFileLog,{..._0xd55b17,'level':_0x19af1a,'msg':_0x1de643,'time':new Date()['toISOString']()},_0x19af1a);},logTransaction=(_0x205b58,_0x2a4d26)=>{const _0xb449c6=a0_0x3a0fef,_0x232cb0={'LuCIk':_0xb449c6(0x199)},_0x4adbc9={'event':'db_transaction','status':_0x205b58,'queryCount':_0x2a4d26},_0x4e3c32=_0xb449c6(0x1b5)+_0x205b58;logger['debug'](_0x4adbc9,_0x4e3c32),writeToFileLog({..._0x4adbc9,'level':'debug','msg':_0x4e3c32,'time':new Date()[_0xb449c6(0x15e)]()},_0x232cb0['LuCIk']);},redactObject=_0x388801=>{const _0x177007=a0_0x3a0fef,_0x21d38f={'LfaJw':_0x177007(0x1d9),'fnFzH':'pwd','HtwWh':_0x177007(0x201),'RbvRv':_0x177007(0x1c8),'gmWZl':_0x177007(0x1db),'uDyfW':_0x177007(0x1d4),'hApvL':_0x177007(0x1dd),'PrDnB':'privatekey','AkCYz':_0x177007(0x20b),'XKIZL':_0x177007(0x1b8),'iXaMF':function(_0xb137c1,_0x577ff6){return _0xb137c1===_0x577ff6;},'TLzVI':function(_0x350083,_0x3d197a){return _0x350083(_0x3d197a);}};if(!_0x388801||typeof _0x388801!==_0x21d38f[_0x177007(0x1d0)])return _0x388801;const _0x30653a=['password',_0x177007(0x17b),_0x21d38f[_0x177007(0x1ec)],'token',_0x21d38f[_0x177007(0x1ea)],'apikey',_0x21d38f[_0x177007(0x197)],_0x21d38f['gmWZl'],_0x177007(0x1e0),_0x21d38f['uDyfW'],'cvv',_0x21d38f['hApvL'],_0x177007(0x164),'private_key',_0x21d38f[_0x177007(0x172)],'refresh_token',_0x21d38f[_0x177007(0x16f)]],_0x4951f2=Array['isArray'](_0x388801)?[..._0x388801]:{..._0x388801};for(const _0x33c8e4 of Object['keys'](_0x4951f2)){const _0x93dce3=_0x33c8e4[_0x177007(0x16e)]();if(_0x30653a[_0x177007(0x183)](_0x256462=>_0x93dce3[_0x177007(0x166)](_0x256462)))_0x4951f2[_0x33c8e4]=_0x21d38f['XKIZL'];else _0x21d38f[_0x177007(0x193)](typeof _0x4951f2[_0x33c8e4],_0x21d38f['LfaJw'])&&_0x4951f2[_0x33c8e4]!==null&&(_0x4951f2[_0x33c8e4]=_0x21d38f['TLzVI'](redactObject,_0x4951f2[_0x33c8e4]));}return _0x4951f2;},logError=(_0x4675d3,_0x3f7858={},_0xab639=null)=>{const _0x3ae75e=a0_0x3a0fef,_0x5199c5={'fCtUm':_0x3ae75e(0x1eb),'fvVaA':function(_0x1df53c,_0x2448ec,_0x115545){return _0x1df53c(_0x2448ec,_0x115545);}},_0x366a00={'event':_0x5199c5[_0x3ae75e(0x196)],'errorName':_0x4675d3[_0x3ae75e(0x16b)]||'Error','errorMessage':_0x4675d3['message'],'errorCode':_0x4675d3['code']||null,'stack':_0x4675d3['stack'],..._0x3f7858},_0x22e266=_0xab639||'Error:\x20'+_0x4675d3['message'];logger[_0x3ae75e(0x1eb)](_0x366a00,_0x22e266),_0x5199c5[_0x3ae75e(0x162)](writeToFileLog,{..._0x366a00,'level':_0x5199c5[_0x3ae75e(0x196)],'msg':_0x22e266,'time':new Date()[_0x3ae75e(0x15e)]()},_0x5199c5[_0x3ae75e(0x196)]);},logFatalError=(_0x433cfb,_0x408443={},_0x28b8a3=null)=>{const _0x3850a2=a0_0x3a0fef,_0x438fea={'xcukj':'fatal_error','FCeIf':'Error','gnJSx':'CRITICAL','QiGOw':function(_0x4f6f4d,_0x6f72fb,_0x3ee5f7){return _0x4f6f4d(_0x6f72fb,_0x3ee5f7);},'nWkIw':'error'},_0x1651c1={'event':_0x438fea['xcukj'],'errorName':_0x433cfb['name']||_0x438fea['FCeIf'],'errorMessage':_0x433cfb['message'],'errorCode':_0x433cfb[_0x3850a2(0x1c5)]||null,'stack':_0x433cfb['stack'],'severity':_0x438fea[_0x3850a2(0x17c)],..._0x408443},_0x1adc42=_0x28b8a3||_0x3850a2(0x1e2)+_0x433cfb['message'];logger[_0x3850a2(0x1b4)](_0x1651c1,_0x1adc42),_0x438fea[_0x3850a2(0x204)](writeToFileLog,{..._0x1651c1,'level':_0x3850a2(0x1b4),'msg':_0x1adc42,'time':new Date()[_0x3850a2(0x15e)]()},_0x438fea['nWkIw']);},logHttpError=(_0x1a208c,_0x12f956,_0x117aff={})=>{const _0xa6cde7=a0_0x3a0fef,_0x42b1f9={'zzqKi':'Error','sAHVg':_0xa6cde7(0x1b2),'QXYMw':function(_0x2dfbed,_0x17896c){return _0x2dfbed>=_0x17896c;},'PFlaQ':function(_0x158a43,_0x5a291a,_0xedad06){return _0x158a43(_0x5a291a,_0xedad06);}},_0x1d5d8a={'event':'http_error','errorName':_0x1a208c['name']||_0x42b1f9[_0xa6cde7(0x1e8)],'errorMessage':_0x1a208c[_0xa6cde7(0x20d)],'errorCode':_0x1a208c[_0xa6cde7(0x1c5)]||_0x1a208c[_0xa6cde7(0x173)]||0x1f4,'stack':_0x1a208c[_0xa6cde7(0x152)],'method':_0x12f956?.['method'],'url':_0x12f956?.[_0xa6cde7(0x185)]||_0x12f956?.['originalUrl'],'path':_0x12f956?.[_0xa6cde7(0x1d5)],'ip':_0x12f956?.['ip']||_0x12f956?.[_0xa6cde7(0x179)]?.[_0xa6cde7(0x1b3)],'userAgent':_0x12f956?.[_0xa6cde7(0x1d6)]?.(_0xa6cde7(0x1fe)),'requestId':_0x12f956?.['id']||_0x12f956?.[_0xa6cde7(0x1bd)]?.[_0x42b1f9['sAHVg']],'body':_0x12f956?.[_0xa6cde7(0x19d)]?redactObject(_0x12f956[_0xa6cde7(0x19d)]):undefined,'query':_0x12f956?.[_0xa6cde7(0x1af)],..._0x117aff},_0x23cdfc=_0x1a208c[_0xa6cde7(0x173)]||_0x1a208c[_0xa6cde7(0x1a8)]||0x1f4,_0x11db43='HTTP\x20'+_0x23cdfc+':\x20'+_0x1a208c['message'];_0x42b1f9['QXYMw'](_0x23cdfc,0x1f4)?logger[_0xa6cde7(0x1eb)](_0x1d5d8a,_0x11db43):logger['warn'](_0x1d5d8a,_0x11db43),_0x42b1f9['PFlaQ'](writeToFileLog,{..._0x1d5d8a,'level':_0x23cdfc>=0x1f4?_0xa6cde7(0x1eb):_0xa6cde7(0x205),'msg':_0x11db43,'time':new Date()['toISOString']()},_0x23cdfc>=0x1f4?_0xa6cde7(0x1eb):_0xa6cde7(0x205));},logUncaughtError=(_0x430c04,_0x13afd3)=>{const _0x4da763=a0_0x3a0fef,_0x3bae60={'KxnfS':'Error','cqhxE':function(_0x147115,_0x1d06d9,_0x444320){return _0x147115(_0x1d06d9,_0x444320);},'THjpv':_0x4da763(0x1b4),'NxTRt':_0x4da763(0x1eb)},_0x115e3c={'event':_0x430c04,'errorName':_0x13afd3?.[_0x4da763(0x16b)]||_0x3bae60['KxnfS'],'errorMessage':_0x13afd3?.['message']||String(_0x13afd3),'errorCode':_0x13afd3?.[_0x4da763(0x1c5)]||null,'stack':_0x13afd3?.['stack'],'severity':'CRITICAL','processId':process['pid'],'memoryUsage':process['memoryUsage'](),'uptime':process['uptime']()},_0x40d3cd='['+_0x430c04['toUpperCase']()+']\x20'+(_0x13afd3?.[_0x4da763(0x20d)]||_0x13afd3);logger[_0x4da763(0x1b4)](_0x115e3c,_0x40d3cd),_0x3bae60['cqhxE'](writeToFileLog,{..._0x115e3c,'level':_0x3bae60['THjpv'],'msg':_0x40d3cd,'time':new Date()[_0x4da763(0x15e)]()},_0x3bae60['NxTRt']);},setupGlobalErrorHandlers=()=>{const _0x21d9f6=a0_0x3a0fef,_0x4385e6={'iVGiZ':function(_0x596187,_0x490594,_0x25bc8c){return _0x596187(_0x490594,_0x25bc8c);},'JcXrs':function(_0x2b4e98,_0x176f78){return _0x2b4e98 instanceof _0x176f78;},'fzUjA':_0x21d9f6(0x1ed),'PECrR':'warning','FxnMq':_0x21d9f6(0x168),'omuYe':function(_0x22fd39,_0x484dc1,_0x41efcd){return _0x22fd39(_0x484dc1,_0x41efcd);},'DIaiw':_0x21d9f6(0x1c3)};process['on'](_0x4385e6['fzUjA'],_0x2dac1a=>{const _0x1a6992=_0x21d9f6;_0x4385e6[_0x1a6992(0x1c7)](logUncaughtError,'uncaughtException',_0x2dac1a),setTimeout(()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x21d9f6(0x20c),(_0x45ee09,_0x55010a)=>{const _0x3e37c4=_0x21d9f6,_0x5ea07e=_0x4385e6[_0x3e37c4(0x15c)](_0x45ee09,Error)?_0x45ee09:new Error(String(_0x45ee09));logUncaughtError('unhandledRejection',_0x5ea07e);}),process['on'](_0x4385e6['PECrR'],_0x3ceb63=>{const _0x21a271=_0x21d9f6;logger[_0x21a271(0x205)]({'event':_0x21a271(0x1b1),'name':_0x3ceb63['name'],'message':_0x3ceb63['message'],'stack':_0x3ceb63[_0x21a271(0x152)]},_0x21a271(0x1f6)+_0x3ceb63['message']);});const _0x1b4592={'event':_0x21d9f6(0x157)},_0x3bb842=_0x4385e6['FxnMq'];logger[_0x21d9f6(0x1c3)](_0x1b4592,_0x3bb842),_0x4385e6[_0x21d9f6(0x1fa)](writeToFileLog,{..._0x1b4592,'level':_0x4385e6[_0x21d9f6(0x1e1)],'msg':_0x3bb842,'time':new Date()['toISOString']()},_0x21d9f6(0x1c3));},createErrorHandlerMiddleware=()=>{return(_0x5f052a,_0x4529cb,_0x35b227,_0x15d653)=>{const _0x7c4d08=a0_0x10b9;logHttpError(_0x5f052a,_0x4529cb);const _0x9a88ef=_0x5f052a[_0x7c4d08(0x173)]||_0x5f052a[_0x7c4d08(0x1a8)]||0x1f4;_0x35b227['status'](_0x9a88ef)[_0x7c4d08(0x1ca)]({'success':![],'error':_0x9a88ef>=0x1f4?'Internal\x20server\x20error':_0x5f052a[_0x7c4d08(0x20d)],'requestId':_0x4529cb['id']||_0x4529cb['headers']?.[_0x7c4d08(0x1b2)]||null});};};module[a0_0x3a0fef(0x18c)]={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x4de8(){const _0x2e1253=['s1vcwge','A2v5CW','uM50B2q','BgvUz3rO','nM5QB1beAq','y2XLyxi','zw50CMLLCW','y2XLyxjdywnOzq','AgfZ','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','mte0oty0Bfnsrxfq','tg9VA3vWignHy2HLignSzwfYzwq','zw52','BxLZCwW','mteWuNjKzvrt','lI9KyI1TExnXBa','nJu1ndC3mevUuMDfCG','zNjVBq','rMjvque','lI9KyG','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','Bg9VA3vWq2fJAgu','ofnrBvzTza','CMvZB2X2zuXVB2T1CfzHBhvL','tMTbvLm','zxHLy3v0zvf1zxj5','Dg9mB3DLCKnHC2u','rejFvfLqrq','DMfSAwrHDgvmB29RDxbwywX1zxm','DhjPBq','Bg9VA3vWx3rHyMXLx2XVywrLza','ndmWodGXzKPpu1LS','mZa5mtK4vevStNPK','u0vmrunuia','iezst00G','m0zyqMviAG','lI9KyI1VCMfJBgu','Bg9HzeXVB2T1CfrHyMXL','mta5odG1ntH5AfLxAgK','BwfW','Dg9vChbLCKnHC2u','vvPJvwO','uLD6uha','vfz1Dfe','mty4ntK0muHHsxfurq','Bg9VA3vWx2nHy2HLx2nSzwfYzwq','iIbUB3qGzM91BMqGAw4G','lI9SB2DNzxi','BwvZC2fNzq','zM9YrwfJAa','z2v0rgLZDgLUy3rwywX1zxm','C2XPy2u','mtqWndC5nZrSwM9PtNO','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','Aw5MBW','C2v0','ChvZAa','z2v0','B3jHy2XL'];a0_0x4de8=function(){return _0x2e1253;};return a0_0x4de8();}const a0_0x103eee=a0_0x24c8;(function(_0x1019c0,_0x287f9d){const _0x3adc9f=a0_0x24c8,_0x528cd2=_0x1019c0();while(!![]){try{const _0x338bb8=parseInt(_0x3adc9f(0x1c8))/0x1+parseInt(_0x3adc9f(0x1f7))/0x2*(parseInt(_0x3adc9f(0x1fa))/0x3)+parseInt(_0x3adc9f(0x1e1))/0x4+-parseInt(_0x3adc9f(0x1e7))/0x5+parseInt(_0x3adc9f(0x1db))/0x6*(parseInt(_0x3adc9f(0x1fd))/0x7)+-parseInt(_0x3adc9f(0x1ed))/0x8*(parseInt(_0x3adc9f(0x1d0))/0x9)+parseInt(_0x3adc9f(0x1e5))/0xa*(parseInt(_0x3adc9f(0x1f6))/0xb);if(_0x338bb8===_0x287f9d)break;else _0x528cd2['push'](_0x528cd2['shift']());}catch(_0x17c977){_0x528cd2['push'](_0x528cd2['shift']());}}}(a0_0x4de8,0xf3ae4));const dbType=(process[a0_0x103eee(0x1e3)][a0_0x103eee(0x1f2)]||'postgresql')['toLowerCase']();function a0_0x24c8(_0x43aa23,_0x3eaba1){_0x43aa23=_0x43aa23-0x1c4;const _0x4de82f=a0_0x4de8();let _0x24c885=_0x4de82f[_0x43aa23];if(a0_0x24c8['SGIXQK']===undefined){var _0x30ba1b=function(_0x592313){const _0x5f3b0f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37c907='',_0x291b33='';for(let _0x426795=0x0,_0x4135f4,_0x1d55e7,_0x3ffcb2=0x0;_0x1d55e7=_0x592313['charAt'](_0x3ffcb2++);~_0x1d55e7&&(_0x4135f4=_0x426795%0x4?_0x4135f4*0x40+_0x1d55e7:_0x1d55e7,_0x426795++%0x4)?_0x37c907+=String['fromCharCode'](0xff&_0x4135f4>>(-0x2*_0x426795&0x6)):0x0){_0x1d55e7=_0x5f3b0f['indexOf'](_0x1d55e7);}for(let _0x5afd45=0x0,_0x22b764=_0x37c907['length'];_0x5afd45<_0x22b764;_0x5afd45++){_0x291b33+='%'+('00'+_0x37c907['charCodeAt'](_0x5afd45)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x291b33);};a0_0x24c8['AYiPnQ']=_0x30ba1b,a0_0x24c8['ZDtCJz']={},a0_0x24c8['SGIXQK']=!![];}const _0x31f5a0=_0x4de82f[0x0],_0x3e6fa1=_0x43aa23+_0x31f5a0,_0x1cb269=a0_0x24c8['ZDtCJz'][_0x3e6fa1];return!_0x1cb269?(_0x24c885=a0_0x24c8['AYiPnQ'](_0x24c885),a0_0x24c8['ZDtCJz'][_0x3e6fa1]=_0x24c885):_0x24c885=_0x1cb269,_0x24c885;}let executeQuery;if(dbType===a0_0x103eee(0x1d6)){const oracleDb=require(a0_0x103eee(0x1fb));executeQuery=(_0x4a215e,_0x93f6ec)=>oracleDb[a0_0x103eee(0x1f0)](_0x4a215e,_0x93f6ec);}else{if(dbType===a0_0x103eee(0x1e4)){const mysqlDb=require(a0_0x103eee(0x1e6));executeQuery=(_0xc4b3c3,_0x404af5)=>mysqlDb['executeQuery'](_0xc4b3c3,_0x404af5);}else executeQuery=require(a0_0x103eee(0x1ea))[a0_0x103eee(0x1f0)];}const {logger}=require(a0_0x103eee(0x1cb));class LookupResolver{constructor(){const _0x1d73f5=a0_0x103eee;this[_0x1d73f5(0x1ec)]=new Map();}[a0_0x103eee(0x1de)](){const _0x515531=a0_0x103eee,_0xddd193={'eUnAr':_0x515531(0x1c9),'udqNQ':_0x515531(0x1e2)};this['lookupCache'][_0x515531(0x1dc)](),logger['debug']({'event':_0xddd193['eUnAr']},_0xddd193['udqNQ']);}async['loadLookupTable'](_0x4fd51b,_0x41195d,_0x1ed39f){const _0x738927=a0_0x103eee,_0x102755={'ZVzmd':function(_0x293610,_0x44514b){return _0x293610!==_0x44514b;},'FbUAA':function(_0x3c17d0,_0x2cc716){return _0x3c17d0!==_0x2cc716;},'RWzPp':function(_0x44b851,_0x5330b2){return _0x44b851(_0x5330b2);},'euCfR':function(_0x250475,_0x2f1c32){return _0x250475(_0x2f1c32);}},_0xb6d678=_0x4fd51b+':'+_0x41195d+':'+_0x1ed39f;if(this[_0x738927(0x1ec)][_0x738927(0x1df)](_0xb6d678))return this['lookupCache']['get'](_0xb6d678);try{const _0x17c383=_0x738927(0x1f8)+_0x1ed39f+',\x20'+_0x41195d+_0x738927(0x1f9)+_0x4fd51b,_0x12f8eb=await executeQuery(_0x17c383),_0x1371f0=new Map();return _0x12f8eb['forEach'](_0x2cab45=>{const _0x12aac8=_0x738927,_0x461cc2=_0x102755['ZVzmd'](_0x2cab45[_0x41195d],undefined)?_0x2cab45[_0x41195d]:_0x2cab45[_0x41195d[_0x12aac8(0x1c4)]()],_0x56e17f=_0x102755['ZVzmd'](_0x2cab45[_0x1ed39f],undefined)?_0x2cab45[_0x1ed39f]:_0x2cab45[_0x1ed39f['toUpperCase']()];_0x102755[_0x12aac8(0x1e9)](_0x461cc2,null)&&_0x461cc2!==undefined&&(_0x1371f0['set'](_0x102755[_0x12aac8(0x1c6)](String,_0x461cc2)['toLowerCase']()['trim'](),_0x56e17f),_0x1371f0['set'](_0x102755['euCfR'](String,_0x461cc2)['trim'](),_0x56e17f));}),this['lookupCache'][_0x738927(0x1d3)](_0xb6d678,_0x1371f0),logger[_0x738927(0x1d2)]({'event':_0x738927(0x1f5),'table':_0x4fd51b,'column':_0x41195d,'count':_0x12f8eb['length']},'Lookup\x20table\x20loaded:\x20'+_0x4fd51b),_0x1371f0;}catch(_0x531e4b){logger['error']({'event':'lookup_table_load_error','table':_0x4fd51b,'error':_0x531e4b[_0x738927(0x1cc)]},_0x738927(0x1d1)+_0x4fd51b);throw _0x531e4b;}}['resolveLookupValue'](_0x2b7da4,_0x15e8fe){const _0x3ecef8=a0_0x103eee,_0xc46273={'KUBXa':function(_0x1c462c,_0x53e8b2){return _0x1c462c===_0x53e8b2;},'xHKet':function(_0x46a615,_0x31caa0){return _0x46a615===_0x31caa0;},'ZqOgb':function(_0x2627df,_0x409b67){return _0x2627df(_0x409b67);}};if(_0xc46273[_0x3ecef8(0x1d7)](_0x2b7da4,null)||_0x2b7da4===undefined||_0xc46273['xHKet'](_0x2b7da4,''))return null;const _0x21cd4e=_0xc46273['ZqOgb'](String,_0x2b7da4)['trim']();if(_0x15e8fe['has'](_0x21cd4e))return _0x15e8fe[_0x3ecef8(0x1d5)](_0x21cd4e);const _0x241dc5=_0x21cd4e[_0x3ecef8(0x1f1)]();if(_0x15e8fe['has'](_0x241dc5))return _0x15e8fe['get'](_0x241dc5);return null;}async['processLookupFields'](_0x1e9b6f,_0x342ba7){const _0x545a4a=a0_0x103eee,_0x39dc83={'TVutQ':function(_0x55bc38,_0x43ced7){return _0x55bc38===_0x43ced7;},'FChgG':_0x545a4a(0x1eb),'UZcUj':'Lookup\x20fields\x20processed'};if(!_0x342ba7||Object[_0x545a4a(0x1d8)](_0x342ba7)[_0x545a4a(0x1da)]===0x0)return{'processedRows':_0x1e9b6f,'errors':[]};const _0x4c9855=[],_0xa821fe=new Map();for(const [_0x34564d,_0x4cf319]of Object[_0x545a4a(0x1dd)](_0x342ba7)){const {lookupTable:_0xa1a993,lookupColumn:_0x4aadfd,lookupIdColumn:_0xd1b9ad}=_0x4cf319,_0x2a619b=_0xa1a993+':'+_0x4aadfd+':'+_0xd1b9ad;if(!_0xa821fe[_0x545a4a(0x1df)](_0x2a619b)){const _0x3b2d97=await this[_0x545a4a(0x1fc)](_0xa1a993,_0x4aadfd,_0xd1b9ad);_0xa821fe['set'](_0x2a619b,_0x3b2d97);}}const _0x4d28d2=_0x1e9b6f[_0x545a4a(0x1fe)]((_0xd8d05e,_0x5a9b41)=>{const _0x385d66=_0x545a4a,_0x598188={..._0xd8d05e};for(const [_0x846fea,_0x528556]of Object[_0x385d66(0x1dd)](_0x342ba7)){const {lookupTable:_0x426d03,lookupColumn:_0x1df208,lookupIdColumn:_0x3617fd,targetField:_0x4e1892,required:_0x1df85f}=_0x528556,_0x5d5134=_0x426d03+':'+_0x1df208+':'+_0x3617fd,_0x151fda=_0xa821fe['get'](_0x5d5134),_0x2956c7=_0xd8d05e[_0x846fea];if((_0x2956c7===null||_0x39dc83[_0x385d66(0x1c7)](_0x2956c7,undefined)||_0x2956c7==='')&&!_0x1df85f){_0x598188[_0x4e1892]=null;continue;}const _0x575c75=this[_0x385d66(0x1ee)](_0x2956c7,_0x151fda);_0x575c75!==null?_0x598188[_0x4e1892]=_0x575c75:(_0x1df85f&&_0x4c9855[_0x385d66(0x1d4)]({'rowIndex':_0x5a9b41,'field':_0x846fea,'value':_0x2956c7,'targetField':_0x4e1892,'lookupTable':_0x426d03,'message':'Value\x20\x22'+_0x2956c7+_0x385d66(0x1ca)+_0x426d03}),_0x598188[_0x4e1892]=null);}return _0x598188;});return logger['info']({'event':_0x39dc83['FChgG'],'totalRows':_0x1e9b6f['length'],'errorCount':_0x4c9855['length'],'lookupFieldCount':Object[_0x545a4a(0x1d8)](_0x342ba7)[_0x545a4a(0x1da)]},_0x39dc83[_0x545a4a(0x1c5)]),{'processedRows':_0x4d28d2,'errors':_0x4c9855};}[a0_0x103eee(0x1ce)](_0x16abf2,_0x1214c8){const _0x3fb365=a0_0x103eee,_0x3a2697={'Rntod':function(_0x39e695,_0xb0540e){return _0x39e695!==_0xb0540e;}},_0xd037e6=new Set();return _0x16abf2['forEach'](_0x5136e3=>{const _0x5e0faf=a0_0x24c8,_0x4c3069=_0x5136e3[_0x1214c8];_0x4c3069!==null&&_0x4c3069!==undefined&&_0x3a2697[_0x5e0faf(0x1d9)](_0x4c3069,'')&&_0xd037e6['add'](String(_0x4c3069)[_0x5e0faf(0x1f4)]());}),Array[_0x3fb365(0x1e8)](_0xd037e6);}async[a0_0x103eee(0x1f3)](_0x218ca7,_0x2548c4){const _0x12d673=a0_0x103eee,_0x417978={'yZbOY':function(_0x3db3ca,_0x296ae5){return _0x3db3ca!==_0x296ae5;},'NkAVS':function(_0x37253d,_0x4d2d83){return _0x37253d===_0x4d2d83;}};if(!_0x2548c4||Object[_0x12d673(0x1d8)](_0x2548c4)[_0x12d673(0x1da)]===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x495bb5=[],_0x24ddb1={};for(const [_0x332336,_0x11083f]of Object[_0x12d673(0x1dd)](_0x2548c4)){const {lookupTable:_0x559672,lookupColumn:_0xc480a1,lookupIdColumn:_0x15e5f5,required:_0x36aca7}=_0x11083f,_0x1ded6b=this['getDistinctValues'](_0x218ca7,_0x332336),_0x153ffd=await this[_0x12d673(0x1fc)](_0x559672,_0xc480a1,_0x15e5f5),_0x368917=[],_0x43b521=[];_0x1ded6b['forEach'](_0x18f357=>{const _0xe57175=_0x12d673,_0x551bf7=this[_0xe57175(0x1ee)](_0x18f357,_0x153ffd);_0x417978['yZbOY'](_0x551bf7,null)?_0x43b521[_0xe57175(0x1d4)](_0x18f357):_0x368917[_0xe57175(0x1d4)](_0x18f357);});if(_0x368917['length']>0x0&&_0x36aca7){_0x495bb5[_0x12d673(0x1d4)]({'field':_0x332336,'lookupTable':_0x559672,'invalidValues':_0x368917,'message':_0x368917[_0x12d673(0x1da)]+_0x12d673(0x1e0)+_0x559672});const _0xfb3ee1=[];_0x153ffd[_0x12d673(0x1cd)]((_0x56f3b7,_0x23cf06)=>{const _0x496432=_0x12d673;if(_0x23cf06===_0x23cf06[_0x496432(0x1f1)]())return;_0xfb3ee1[_0x496432(0x1d4)](_0x23cf06);}),_0x24ddb1[_0x332336]={'invalidValues':_0x368917,'availableValues':_0xfb3ee1[_0x12d673(0x1cf)](0x0,0x32)};}}return{'valid':_0x417978[_0x12d673(0x1ef)](_0x495bb5[_0x12d673(0x1da)],0x0),'errors':_0x495bb5,'suggestions':_0x24ddb1};}}module['exports']=new LookupResolver();
|
|
1
|
+
const a0_0x18d008=a0_0x515a;(function(_0x2ae52d,_0x1207ca){const _0x4b8381=a0_0x515a,_0x3a411a=_0x2ae52d();while(!![]){try{const _0x28173d=parseInt(_0x4b8381(0x101))/0x1*(-parseInt(_0x4b8381(0x117))/0x2)+parseInt(_0x4b8381(0x112))/0x3+-parseInt(_0x4b8381(0x102))/0x4*(-parseInt(_0x4b8381(0x111))/0x5)+parseInt(_0x4b8381(0x104))/0x6*(parseInt(_0x4b8381(0x120))/0x7)+-parseInt(_0x4b8381(0x11a))/0x8+-parseInt(_0x4b8381(0x10f))/0x9*(-parseInt(_0x4b8381(0x108))/0xa)+-parseInt(_0x4b8381(0x10d))/0xb;if(_0x28173d===_0x1207ca)break;else _0x3a411a['push'](_0x3a411a['shift']());}catch(_0x5c5f6e){_0x3a411a['push'](_0x3a411a['shift']());}}}(a0_0x3404,0x64eee));const dbType=(process['env']['DB_TYPE']||'postgresql')['toLowerCase']();function a0_0x515a(_0x34364b,_0x686443){_0x34364b=_0x34364b-0xfc;const _0x340432=a0_0x3404();let _0x515a72=_0x340432[_0x34364b];if(a0_0x515a['ouCZnv']===undefined){var _0x24c06e=function(_0x24341b){const _0x235650='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4c3baf='',_0x5bcaae='';for(let _0x384057=0x0,_0x470878,_0x22464d,_0x1fdb0f=0x0;_0x22464d=_0x24341b['charAt'](_0x1fdb0f++);~_0x22464d&&(_0x470878=_0x384057%0x4?_0x470878*0x40+_0x22464d:_0x22464d,_0x384057++%0x4)?_0x4c3baf+=String['fromCharCode'](0xff&_0x470878>>(-0x2*_0x384057&0x6)):0x0){_0x22464d=_0x235650['indexOf'](_0x22464d);}for(let _0x15d039=0x0,_0x488fdf=_0x4c3baf['length'];_0x15d039<_0x488fdf;_0x15d039++){_0x5bcaae+='%'+('00'+_0x4c3baf['charCodeAt'](_0x15d039)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5bcaae);};a0_0x515a['Fstlqp']=_0x24c06e,a0_0x515a['qbQgBq']={},a0_0x515a['ouCZnv']=!![];}const _0x330b57=_0x340432[0x0],_0x1d278d=_0x34364b+_0x330b57,_0x151d65=a0_0x515a['qbQgBq'][_0x1d278d];return!_0x151d65?(_0x515a72=a0_0x515a['Fstlqp'](_0x515a72),a0_0x515a['qbQgBq'][_0x1d278d]=_0x515a72):_0x515a72=_0x151d65,_0x515a72;}let executeQuery;if(dbType==='oracle'){const oracleDb=require('./db-oracle');executeQuery=(_0x32b820,_0x3f2bb4)=>oracleDb[a0_0x18d008(0xfd)](_0x32b820,_0x3f2bb4);}else{if(dbType==='mysql'){const mysqlDb=require('./db-mysql');executeQuery=(_0x45f25a,_0x218a62)=>mysqlDb[a0_0x18d008(0xfd)](_0x45f25a,_0x218a62);}else executeQuery=require('./db')[a0_0x18d008(0xfd)];}function a0_0x3404(){const _0x5bba96=['mZuZmdqZmNHdBhnLyq','Aw5MBW','iIbUB3qGzM91BMqGAw4G','rwX2tMO','iezst00G','y2XLyxjdywnOzq','nte2ndK0m0v6sxLwBa','Bg9VA3vWx3rHyMXLx2XVywrLza','ChvZAa','z2v0','rvzoD2S','CMvZB2X2zuXVB2T1CfzHBhvL','Dg9mB3DLCKnHC2u','BgvUz3rO','zxHLy3v0zvf1zxj5','u0vmrunuia','BwvZC2fNzq','BwfW','ndi0mgzurwjzta','mJeWodqZnNzouejkCW','DhjPBq','nLbRz2zpAG','Bg9VA3vWx2zPzwXKC19WCM9JzxnZzwq','q1DwBxe','C2v0','mtbfu3vvteO','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','z2v0rgLZDgLUy3rwywX1zxm','Bg9HzeXVB2T1CfrHyMXL','zxHWB3j0CW','mZa4mJa3ovLmzenjtq','AgfZ','mtGZndm2mKXdyLfuwa','Dg9vChbLCKnHC2u','nwDtvMn2Aa','mtGXmZC3wLnksxv5','Bg9VA3vWq2fJAgu','A2v5CW','vMfSDwuGiG','zxjYB3i','mtG2AxrvAKjx','zM9YrwfJAa','y2XLyxi'];a0_0x3404=function(){return _0x5bba96;};return a0_0x3404();}const {logger}=require('./logger');class LookupResolver{constructor(){const _0x4dc978=a0_0x18d008;this[_0x4dc978(0x113)]=new Map();}[a0_0x18d008(0x11f)](){const _0x181dc3=a0_0x18d008,_0x3d15f3={'vPBUq':'lookup_cache_cleared'};this[_0x181dc3(0x113)][_0x181dc3(0x119)](),logger['debug']({'event':_0x3d15f3['vPBUq']},'Lookup\x20cache\x20cleared');}async['loadLookupTable'](_0x22c25f,_0x4f4909,_0x28ab63){const _0x26b0bf=a0_0x18d008,_0x11b455={'CWVmq':function(_0x46c8aa,_0x18e5ba){return _0x46c8aa!==_0x18e5ba;},'EVNwk':function(_0x4ac4f9,_0x579879){return _0x4ac4f9(_0x579879);}},_0x148c07=_0x22c25f+':'+_0x4f4909+':'+_0x28ab63;if(this[_0x26b0bf(0x113)]['has'](_0x148c07))return this[_0x26b0bf(0x113)]['get'](_0x148c07);try{const _0xb98eb6=_0x26b0bf(0xfe)+_0x28ab63+',\x20'+_0x4f4909+_0x26b0bf(0x11e)+_0x22c25f,_0x1c5975=await executeQuery(_0xb98eb6),_0x31b01b=new Map();return _0x1c5975[_0x26b0bf(0x118)](_0x8f5f74=>{const _0x6303d3=_0x26b0bf,_0x30de80=_0x8f5f74[_0x4f4909]!==undefined?_0x8f5f74[_0x4f4909]:_0x8f5f74[_0x4f4909['toUpperCase']()],_0x12a00e=_0x11b455[_0x6303d3(0x106)](_0x8f5f74[_0x28ab63],undefined)?_0x8f5f74[_0x28ab63]:_0x8f5f74[_0x28ab63[_0x6303d3(0x110)]()];_0x30de80!==null&&_0x11b455[_0x6303d3(0x106)](_0x30de80,undefined)&&(_0x31b01b[_0x6303d3(0x107)](_0x11b455[_0x6303d3(0x124)](String,_0x30de80)[_0x6303d3(0x126)]()['trim'](),_0x12a00e),_0x31b01b[_0x6303d3(0x107)](String(_0x30de80)[_0x6303d3(0x103)](),_0x12a00e));}),this['lookupCache'][_0x26b0bf(0x107)](_0x148c07,_0x31b01b),logger[_0x26b0bf(0x11b)]({'event':_0x26b0bf(0x121),'table':_0x22c25f,'column':_0x4f4909,'count':_0x1c5975[_0x26b0bf(0xfc)]},'Lookup\x20table\x20loaded:\x20'+_0x22c25f),_0x31b01b;}catch(_0x11b37e){logger[_0x26b0bf(0x116)]({'event':'lookup_table_load_error','table':_0x22c25f,'error':_0x11b37e[_0x26b0bf(0xff)]},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x22c25f);throw _0x11b37e;}}['resolveLookupValue'](_0x3ac9a9,_0x565067){const _0xb05fd5=a0_0x18d008,_0x49369e={'sZSOY':function(_0x4fd7d6,_0x23337b){return _0x4fd7d6===_0x23337b;},'mmzix':function(_0x376809,_0x3e2767){return _0x376809===_0x3e2767;},'CTrqt':function(_0x2633a8,_0x34a103){return _0x2633a8(_0x34a103);}};if(_0x3ac9a9===null||_0x49369e['sZSOY'](_0x3ac9a9,undefined)||_0x49369e['mmzix'](_0x3ac9a9,''))return null;const _0x103cbd=_0x49369e['CTrqt'](String,_0x3ac9a9)[_0xb05fd5(0x103)]();if(_0x565067[_0xb05fd5(0x10e)](_0x103cbd))return _0x565067[_0xb05fd5(0x123)](_0x103cbd);const _0x39c446=_0x103cbd[_0xb05fd5(0x126)]();if(_0x565067['has'](_0x39c446))return _0x565067['get'](_0x39c446);return null;}async['processLookupFields'](_0x10615a,_0x48a901){const _0xe884e5=a0_0x18d008,_0x307d97={'UDFMn':function(_0x1dcb59,_0x12491c){return _0x1dcb59!==_0x12491c;},'FfDUK':function(_0x52340b,_0x4fc2f6){return _0x52340b===_0x4fc2f6;},'ElvNj':'Lookup\x20fields\x20processed'};if(!_0x48a901||_0x307d97['FfDUK'](Object['keys'](_0x48a901)[_0xe884e5(0xfc)],0x0))return{'processedRows':_0x10615a,'errors':[]};const _0x1438e6=[],_0x276865=new Map();for(const [_0x221b20,_0x305b36]of Object['entries'](_0x48a901)){const {lookupTable:_0x594570,lookupColumn:_0x123cf2,lookupIdColumn:_0x1a3eac}=_0x305b36,_0x42ed1a=_0x594570+':'+_0x123cf2+':'+_0x1a3eac;if(!_0x276865['has'](_0x42ed1a)){const _0x47e115=await this[_0xe884e5(0x10b)](_0x594570,_0x123cf2,_0x1a3eac);_0x276865[_0xe884e5(0x107)](_0x42ed1a,_0x47e115);}}const _0x94d3ea=_0x10615a[_0xe884e5(0x100)]((_0x591614,_0x4abe3a)=>{const _0x2c7bb4=_0xe884e5,_0x59c13d={..._0x591614};for(const [_0x459da1,_0x282822]of Object['entries'](_0x48a901)){const {lookupTable:_0x24438c,lookupColumn:_0x32f974,lookupIdColumn:_0x43f5f7,targetField:_0x4df695,required:_0xa951ca}=_0x282822,_0x5a46b7=_0x24438c+':'+_0x32f974+':'+_0x43f5f7,_0x44f2f3=_0x276865['get'](_0x5a46b7),_0x37007c=_0x591614[_0x459da1];if((_0x37007c===null||_0x37007c===undefined||_0x37007c==='')&&!_0xa951ca){_0x59c13d[_0x4df695]=null;continue;}const _0x181c94=this[_0x2c7bb4(0x125)](_0x37007c,_0x44f2f3);_0x307d97['UDFMn'](_0x181c94,null)?_0x59c13d[_0x4df695]=_0x181c94:(_0xa951ca&&_0x1438e6[_0x2c7bb4(0x122)]({'rowIndex':_0x4abe3a,'field':_0x459da1,'value':_0x37007c,'targetField':_0x4df695,'lookupTable':_0x24438c,'message':_0x2c7bb4(0x115)+_0x37007c+_0x2c7bb4(0x11c)+_0x24438c}),_0x59c13d[_0x4df695]=null);}return _0x59c13d;});return logger['info']({'event':_0xe884e5(0x105),'totalRows':_0x10615a['length'],'errorCount':_0x1438e6['length'],'lookupFieldCount':Object[_0xe884e5(0x114)](_0x48a901)[_0xe884e5(0xfc)]},_0x307d97[_0xe884e5(0x11d)]),{'processedRows':_0x94d3ea,'errors':_0x1438e6};}[a0_0x18d008(0x10a)](_0x4eb22d,_0x4176a0){const _0x1d1337=a0_0x18d008,_0x373445=new Set();return _0x4eb22d[_0x1d1337(0x118)](_0x596eea=>{const _0x37f9db=_0x1d1337,_0x3202f7=_0x596eea[_0x4176a0];_0x3202f7!==null&&_0x3202f7!==undefined&&_0x3202f7!==''&&_0x373445['add'](String(_0x3202f7)[_0x37f9db(0x103)]());}),Array['from'](_0x373445);}async['validateLookupValues'](_0x58f653,_0x4abc3c){const _0x32fff2=a0_0x18d008,_0x825dfe={'bAdxf':function(_0x3bf3f2,_0xaf6db0){return _0x3bf3f2===_0xaf6db0;}};if(!_0x4abc3c||Object['keys'](_0x4abc3c)[_0x32fff2(0xfc)]===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x13e8e0=[],_0x48403b={};for(const [_0x1a9a62,_0x24f2fa]of Object['entries'](_0x4abc3c)){const {lookupTable:_0x551366,lookupColumn:_0x26b509,lookupIdColumn:_0x34db1e,required:_0x414d67}=_0x24f2fa,_0x43ce31=this[_0x32fff2(0x10a)](_0x58f653,_0x1a9a62),_0x2f4b0a=await this[_0x32fff2(0x10b)](_0x551366,_0x26b509,_0x34db1e),_0x41db0b=[],_0x151f7e=[];_0x43ce31[_0x32fff2(0x118)](_0x3e1546=>{const _0x26f5e0=_0x32fff2,_0x5951c5=this['resolveLookupValue'](_0x3e1546,_0x2f4b0a);_0x5951c5!==null?_0x151f7e['push'](_0x3e1546):_0x41db0b[_0x26f5e0(0x122)](_0x3e1546);});if(_0x41db0b['length']>0x0&&_0x414d67){_0x13e8e0['push']({'field':_0x1a9a62,'lookupTable':_0x551366,'invalidValues':_0x41db0b,'message':_0x41db0b[_0x32fff2(0xfc)]+_0x32fff2(0x109)+_0x551366});const _0x533abd=[];_0x2f4b0a[_0x32fff2(0x118)]((_0x357978,_0x118be8)=>{const _0x3d3431=_0x32fff2;if(_0x825dfe['bAdxf'](_0x118be8,_0x118be8['toLowerCase']()))return;_0x533abd[_0x3d3431(0x122)](_0x118be8);}),_0x48403b[_0x1a9a62]={'invalidValues':_0x41db0b,'availableValues':_0x533abd['slice'](0x0,0x32)};}}return{'valid':_0x13e8e0['length']===0x0,'errors':_0x13e8e0,'suggestions':_0x48403b};}}module[a0_0x18d008(0x10c)]=new LookupResolver();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a0_0x59a4(){const _0x5a9bc1=['zgf0yxrHyMXLC1f1zxj5','lwv4Cg9YDa','odbUwfb2te0','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','DxrMoa','rfPOy0u','CMvHzezPBgu','y2XLyxjdywnOzq','CgfYC2u','EufQzKW','DgfIBgvoyw1L','mtCWmJC1n2HswgfhtG','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','mJi0odKYnLPouKPsBW','ndy4nJm4yK1NtuHw','mJC3mdmZnKnTCvLRDq','Aw5MBW','zgvIDwC','BwvZC2fNzq','ugf5Bg9HzcbUB3qGzM91BMq6ia','s3fnrKC','oufpze95BG','AgfZ','Cgf5Bg9HzerPCG','Cgf0Aa','mZiXnZmWqu5luu12','oteWndCYnefbBMn1BW','Cgf5Bg9Hzf9JywnOzv9JBgvHCMvK','Cgf5Bg9Hzf9SB2fKzwq','AM9PBG','zMLLBgroyw1L','y2fJAgu','C2v0','CMvWBgfJzq','mti0nZiWCgnsCfDg'];a0_0x59a4=function(){return _0x5a9bc1;};return a0_0x59a4();}const a0_0xd86b06=a0_0x43b6;function a0_0x43b6(_0x2c93fc,_0x4129f4){_0x2c93fc=_0x2c93fc-0x183;const _0x59a481=a0_0x59a4();let _0x43b69d=_0x59a481[_0x2c93fc];if(a0_0x43b6['FQDJCa']===undefined){var _0x467aec=function(_0x45c981){const _0x3cce53='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xe6b606='',_0x53e0a0='';for(let _0x51d08c=0x0,_0x546e7e,_0x5119dd,_0x1f0561=0x0;_0x5119dd=_0x45c981['charAt'](_0x1f0561++);~_0x5119dd&&(_0x546e7e=_0x51d08c%0x4?_0x546e7e*0x40+_0x5119dd:_0x5119dd,_0x51d08c++%0x4)?_0xe6b606+=String['fromCharCode'](0xff&_0x546e7e>>(-0x2*_0x51d08c&0x6)):0x0){_0x5119dd=_0x3cce53['indexOf'](_0x5119dd);}for(let _0xd2e6e7=0x0,_0x45b920=_0xe6b606['length'];_0xd2e6e7<_0x45b920;_0xd2e6e7++){_0x53e0a0+='%'+('00'+_0xe6b606['charCodeAt'](_0xd2e6e7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x53e0a0);};a0_0x43b6['ayKkrF']=_0x467aec,a0_0x43b6['jQYqvB']={},a0_0x43b6['FQDJCa']=!![];}const _0x1ffd4e=_0x59a481[0x0],_0x5e2468=_0x2c93fc+_0x1ffd4e,_0x371f94=a0_0x43b6['jQYqvB'][_0x5e2468];return!_0x371f94?(_0x43b69d=a0_0x43b6['ayKkrF'](_0x43b69d),a0_0x43b6['jQYqvB'][_0x5e2468]=_0x43b69d):_0x43b69d=_0x371f94,_0x43b69d;}(function(_0x23e668,_0x1aad53){const _0x5f36f2=a0_0x43b6,_0x4f62f0=_0x23e668();while(!![]){try{const _0x2c931f=-parseInt(_0x5f36f2(0x190))/0x1+-parseInt(_0x5f36f2(0x19b))/0x2*(parseInt(_0x5f36f2(0x197))/0x3)+parseInt(_0x5f36f2(0x184))/0x4*(parseInt(_0x5f36f2(0x1a4))/0x5)+parseInt(_0x5f36f2(0x18f))/0x6+-parseInt(_0x5f36f2(0x18d))/0x7+-parseInt(_0x5f36f2(0x191))/0x8+parseInt(_0x5f36f2(0x19c))/0x9;if(_0x2c931f===_0x1aad53)break;else _0x4f62f0['push'](_0x4f62f0['shift']());}catch(_0x3bc36e){_0x4f62f0['push'](_0x4f62f0['shift']());}}}(a0_0x59a4,0x541f1));const fs=require('fs')['promises'],path=require(a0_0xd86b06(0x19a)),{logger}=require('./logger');class PayloadLoader{constructor(){const _0x649864=a0_0xd86b06,_0x51a4b6={'GvCgz':'../../payload'};this[_0x649864(0x199)]=path['join'](__dirname,_0x51a4b6['GvCgz']),this['cache']=new Map();}async['loadPayload'](_0x477378,_0x3dd1f9){const _0x153275=a0_0xd86b06,_0x37967e=_0x477378+':'+_0x3dd1f9;if(this[_0x153275(0x1a1)][_0x153275(0x198)](_0x37967e))return this[_0x153275(0x1a1)]['get'](_0x37967e);const _0x3ffb34=path[_0x153275(0x19f)](this['payloadDir'],_0x477378+'_'+_0x3dd1f9+'.json');try{const _0xc723b6=await fs['readFile'](_0x3ffb34,'utf8'),_0x10c84f=JSON[_0x153275(0x18a)](_0xc723b6);return this[_0x153275(0x1a1)][_0x153275(0x1a2)](_0x37967e,_0x10c84f),logger['debug']({'event':_0x153275(0x19e),'project':_0x477378,'resource':_0x3dd1f9},'Payload\x20loaded\x20successfully'),_0x10c84f;}catch(_0x3a1d16){logger['error']({'event':_0x153275(0x18e),'project':_0x477378,'resource':_0x3dd1f9,'error':_0x3a1d16[_0x153275(0x194)]},_0x153275(0x185));throw new Error(_0x153275(0x195)+_0x477378+'_'+_0x3dd1f9);}}async['loadPayloadByName'](_0x2b3475){const _0x3f5f6b=a0_0xd86b06,_0x276a4a={'DZhcE':_0x3f5f6b(0x19e),'yAjfL':'Payload\x20loaded\x20successfully\x20by\x20name'},_0x4293b3='payload:'+_0x2b3475;if(this['cache'][_0x3f5f6b(0x198)](_0x4293b3))return this['cache']['get'](_0x4293b3);const _0x3db120=path['join'](this[_0x3f5f6b(0x199)],_0x2b3475+'.json');try{const _0x524d6b=await fs[_0x3f5f6b(0x188)](_0x3db120,_0x3f5f6b(0x186)),_0x2a4d5d=JSON[_0x3f5f6b(0x18a)](_0x524d6b);return this['cache']['set'](_0x4293b3,_0x2a4d5d),logger[_0x3f5f6b(0x193)]({'event':_0x276a4a[_0x3f5f6b(0x187)],'payloadName':_0x2b3475},_0x276a4a[_0x3f5f6b(0x18b)]),_0x2a4d5d;}catch(_0x22abbc){logger['error']({'event':'payload_load_error','payloadName':_0x2b3475,'error':_0x22abbc[_0x3f5f6b(0x194)]},'Failed\x20to\x20load\x20payload\x20by\x20name');throw new Error(_0x3f5f6b(0x195)+_0x2b3475);}}['isActionEnabled'](_0x487842,_0x5c79a0){return _0x487842['action']&&_0x487842['action'][_0x5c79a0]===!![];}['getExportConfig'](_0xc120e4){const _0x2c9a57=a0_0xd86b06;return{'columns':_0xc120e4[_0x2c9a57(0x1a0)]||[],'filename':_0xc120e4[_0x2c9a57(0x18c)][_0x2c9a57(0x1a3)]('.','-')+_0x2c9a57(0x183),'datatablesQuery':_0xc120e4[_0x2c9a57(0x1a5)]||null,'columnFormats':_0xc120e4['columnFormats']||null,'fieldLabels':_0xc120e4['fieldLabels']||null};}[a0_0xd86b06(0x189)](){const _0x5c8b93=a0_0xd86b06,_0x56bfbb={'uXyxW':_0x5c8b93(0x19d),'KqMFG':'Payload\x20cache\x20cleared'};this[_0x5c8b93(0x1a1)]['clear'](),logger[_0x5c8b93(0x192)]({'event':_0x56bfbb['uXyxW']},_0x56bfbb[_0x5c8b93(0x196)]);}}module['exports']=new PayloadLoader();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';function a0_0x1578(){var _0x4f7b10=['nduWs2LuBfbi','zxHWB3j0CW','mJaXmKHnq3DRvG','mJyXody4ohfWtKH1vG','Dg9ju09tDhjPBMC','mtC2DND2q0Lm','ntmXmdKYmgT6DNzICG','nJGZmJG2ogrJt3vNDW','odC4wfLjEg5v','ntC4nJe5zMXeChDU','mtq3nZj3r2jPsK4','oti2nJu2wNjruvfs'];a0_0x1578=function(){return _0x4f7b10;};return a0_0x1578();}var a0_0x4ade46=a0_0x10e6;(function(_0x342978,_0x288072){var _0x560525=a0_0x10e6,_0x2c0768=_0x342978();while(!![]){try{var _0x2c5bda=parseInt(_0x560525(0x16a))/0x1*(-parseInt(_0x560525(0x164))/0x2)+-parseInt(_0x560525(0x165))/0x3+-parseInt(_0x560525(0x161))/0x4+-parseInt(_0x560525(0x162))/0x5*(parseInt(_0x560525(0x16c))/0x6)+parseInt(_0x560525(0x169))/0x7+parseInt(_0x560525(0x167))/0x8*(parseInt(_0x560525(0x16b))/0x9)+parseInt(_0x560525(0x168))/0xa;if(_0x2c5bda===_0x288072)break;else _0x2c0768['push'](_0x2c0768['shift']());}catch(_0x54cffe){_0x2c0768['push'](_0x2c0768['shift']());}}}(a0_0x1578,0xade12));function a0_0x10e6(_0xea0388,_0x2fed22){_0xea0388=_0xea0388-0x161;var _0x1578ff=a0_0x1578();var _0x10e66d=_0x1578ff[_0xea0388];if(a0_0x10e6['VvKFHZ']===undefined){var _0x5cae94=function(_0x357f74){var _0x4ae1f7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x4d4c4c='',_0x3c55dd='';for(var _0x4626cd=0x0,_0x3345f9,_0x3d0fca,_0x1484a9=0x0;_0x3d0fca=_0x357f74['charAt'](_0x1484a9++);~_0x3d0fca&&(_0x3345f9=_0x4626cd%0x4?_0x3345f9*0x40+_0x3d0fca:_0x3d0fca,_0x4626cd++%0x4)?_0x4d4c4c+=String['fromCharCode'](0xff&_0x3345f9>>(-0x2*_0x4626cd&0x6)):0x0){_0x3d0fca=_0x4ae1f7['indexOf'](_0x3d0fca);}for(var _0x1b812f=0x0,_0x367f0a=_0x4d4c4c['length'];_0x1b812f<_0x367f0a;_0x1b812f++){_0x3c55dd+='%'+('00'+_0x4d4c4c['charCodeAt'](_0x1b812f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3c55dd);};a0_0x10e6['YbgEzb']=_0x5cae94,a0_0x10e6['NPEKRt']={},a0_0x10e6['VvKFHZ']=!![];}var _0x12e890=_0x1578ff[0x0],_0x5b87ef=_0xea0388+_0x12e890,_0x265a7b=a0_0x10e6['NPEKRt'][_0x5b87ef];return!_0x265a7b?(_0x10e66d=a0_0x10e6['YbgEzb'](_0x10e66d),a0_0x10e6['NPEKRt'][_0x5b87ef]=_0x10e66d):_0x10e66d=_0x265a7b,_0x10e66d;}function createResponse(_0x388690,_0xda3547,_0x40afc3=null){return{'success':!![],'statusCode':_0x388690,'message':_0xda3547,'data':_0x40afc3,'timestamp':new Date()['toISOString']()};}function createError(_0x294002,_0x5e9c77,_0x14e739=null){var _0xf0e0a=a0_0x10e6;return{'success':![],'statusCode':_0x294002,'message':_0x5e9c77,'data':_0x14e739,'timestamp':new Date()[_0xf0e0a(0x166)]()};}function createValidationError(_0xa7cea6,_0x5c88e0){return{'success':![],'statusCode':0x190,'message':_0xa7cea6,'data':{'errors':_0x5c88e0},'timestamp':new Date()['toISOString']()};}module[a0_0x4ade46(0x163)]={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
|
package/src/utils/rabbitmq.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x176102=a0_0x2f5a;function a0_0x2f5a(_0x48d43f,_0x274009){_0x48d43f=_0x48d43f-0x85;const _0x23bb08=a0_0x23bb();let _0x2f5a48=_0x23bb08[_0x48d43f];if(a0_0x2f5a['NcPCBu']===undefined){var _0x172574=function(_0x3e1c3b){const _0x45b6de='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1ada8f='',_0x2fa78f='';for(let _0x208b90=0x0,_0x373ac9,_0x511251,_0x2fa7be=0x0;_0x511251=_0x3e1c3b['charAt'](_0x2fa7be++);~_0x511251&&(_0x373ac9=_0x208b90%0x4?_0x373ac9*0x40+_0x511251:_0x511251,_0x208b90++%0x4)?_0x1ada8f+=String['fromCharCode'](0xff&_0x373ac9>>(-0x2*_0x208b90&0x6)):0x0){_0x511251=_0x45b6de['indexOf'](_0x511251);}for(let _0x1a9b86=0x0,_0x963480=_0x1ada8f['length'];_0x1a9b86<_0x963480;_0x1a9b86++){_0x2fa78f+='%'+('00'+_0x1ada8f['charCodeAt'](_0x1a9b86)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2fa78f);};a0_0x2f5a['faIBbl']=_0x172574,a0_0x2f5a['jgwQio']={},a0_0x2f5a['NcPCBu']=!![];}const _0x26f6fb=_0x23bb08[0x0],_0x188434=_0x48d43f+_0x26f6fb,_0x4ed541=a0_0x2f5a['jgwQio'][_0x188434];return!_0x4ed541?(_0x2f5a48=a0_0x2f5a['faIBbl'](_0x2f5a48),a0_0x2f5a['jgwQio'][_0x188434]=_0x2f5a48):_0x2f5a48=_0x4ed541,_0x2f5a48;}(function(_0x16091c,_0x1d790f){const _0xfc2eed=a0_0x2f5a,_0x39fa77=_0x16091c();while(!![]){try{const _0xcc9082=-parseInt(_0xfc2eed(0xb6))/0x1+parseInt(_0xfc2eed(0xaa))/0x2+parseInt(_0xfc2eed(0xa5))/0x3*(parseInt(_0xfc2eed(0xae))/0x4)+parseInt(_0xfc2eed(0x99))/0x5*(parseInt(_0xfc2eed(0x90))/0x6)+parseInt(_0xfc2eed(0xac))/0x7+-parseInt(_0xfc2eed(0xb8))/0x8*(parseInt(_0xfc2eed(0x96))/0x9)+-parseInt(_0xfc2eed(0xb7))/0xa*(parseInt(_0xfc2eed(0xad))/0xb);if(_0xcc9082===_0x1d790f)break;else _0x39fa77['push'](_0x39fa77['shift']());}catch(_0x412b37){_0x39fa77['push'](_0x39fa77['shift']());}}}(a0_0x23bb,0xe2bd6),require(a0_0x176102(0x97))['config']());const amqp=require('amqplib'),{formatDate}=require(a0_0x176102(0x98)),RABBITMQ_URL=process[a0_0x176102(0x8c)]['RABBITMQ_URL'],EXCHANGE=process['env'][a0_0x176102(0x93)],ROUTING_KEY=process[a0_0x176102(0x8c)][a0_0x176102(0xab)],QUEUE=process[a0_0x176102(0x8c)]['RABBITMQ_QUEUE'];async function createConnection(){const _0x12fb86=a0_0x176102,_0x5ce19a={'WbBGT':function(_0x56a9ca,_0x48f396){return _0x56a9ca(_0x48f396);}};try{const _0x5f51f2=await amqp['connect'](RABBITMQ_URL);return console[_0x12fb86(0xa8)]('['+formatDate(new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x5f51f2;}catch(_0x4f3315){console['error']('['+_0x5ce19a['WbBGT'](formatDate,new Date())+']\x20Failed\x20to\x20connect\x20to\x20RabbitMQ:\x20'+_0x4f3315['message']);throw _0x4f3315;}}function a0_0x23bb(){const _0x4ed1d4=['zxjYB3i','zw52','Aw5LCxvPDMfSzw50igfYzW','y2XVC2u','zwDWB0q','mJu5mZG2DhLNBNHU','rvLNveO','ksbJCMvHDgvK','uKfcqKLutvfFrvHdsefor0u','tLDVB2W','yMLUzff1zxvL','otqXng5crxjcsW','zg90zw52','lI9KyxrLsgvSCgvY','nJvXDxPqzvO','xsbfCNjVCIbZzxr0Aw5NihvWig1HAw4GCxvLDwu6','xsbsywjIAxrnusbJAgfUBMvSignYzwf0zwqGC3vJy2vZC2z1BgX5','xsbfCNjVCIbJCMvHDgLUzYbXDwv1zsa','igLZigfSCMvHzhKGAw4GDxnLihDPDgGGysbKAwzMzxjLBNqGCM91DgLUzYbRzxKU','ihDHCYbJCMvHDgvKihDPDgGGysbKAwzMzxjLBNqGEc1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEs4','Aw5JBhvKzxm','y3jLyxrLzc9YzwfKEq','yxnZzxj0rxHJAgfUz2u','zxHPDa','Dwr4s1e','zM91BMq','m1rbDgDntq','ignYzwf0zwq','xsbfEgnOyw5Nzsa','Bg9N','xsbszxrYEsbIAw5KAw5NigzVCIa','mtG4mty0mLb3s0rcuq','uKfcqKLutvfFuK9vveLor19lrvK','mte5mZaZodDuEeLhz20','ndrdrfzuwxC','mJi2ndK0nfn0r2zjvW','uxvLDwuG','ignYzwf0zwqVCMvHzhK','qMLzDgK','xsbfuLjpuJOGuxvLDwuG','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbLEgnOyw5NztO','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG','BwvZC2fNzq','odG0otG1r2vzv3ns','mJyWntG3mef3CwPzDG','nZaXnMHjq09Pyq','yvfPAuC','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbXDwv1ztO','CMv0CNKTzxHJAgfUz2u','Cw96A3a','zxHWB3j0CW','zgLYzwn0'];a0_0x23bb=function(){return _0x4ed1d4;};return a0_0x23bb();}async function createChannel(_0x3e25b7){const _0x40e620=a0_0x176102,_0x30499f={'udxKQ':function(_0x2fc64f,_0x1e75ca){return _0x2fc64f(_0x1e75ca);}};try{const _0x102711=await _0x3e25b7['createChannel']();return console[_0x40e620(0xa8)]('['+formatDate(new Date())+_0x40e620(0x9b)),_0x102711;}catch(_0xc1ce8c){console['error']('['+_0x30499f[_0x40e620(0xa3)](formatDate,new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0xc1ce8c['message']);throw _0xc1ce8c;}}async function setupInfrastructure(_0x2b6ee2){const _0x3ae512=a0_0x176102,_0x30a3af={'egpoD':_0x3ae512(0x87),'qozkp':function(_0x5c3bf9,_0x479054){return _0x5c3bf9(_0x479054);},'NWool':function(_0x47c2e3,_0xeea273){return _0x47c2e3(_0xeea273);},'BiYti':function(_0x1412ee,_0x359b84){return _0x1412ee(_0x359b84);},'wdkAH':function(_0x1f4d69,_0x1f0a4d){return _0x1f4d69===_0x1f0a4d;},'BjqYe':_0x3ae512(0xa0),'EYgTJ':'inequivalent\x20arg'};try{await _0x2b6ee2[_0x3ae512(0xa1)](_0x30a3af[_0x3ae512(0x8f)],_0x3ae512(0x8a),{'durable':!![],'autoDelete':![]}),console[_0x3ae512(0xa8)]('['+_0x30a3af[_0x3ae512(0x88)](formatDate,new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x361b95){console[_0x3ae512(0x8b)]('['+_0x30a3af[_0x3ae512(0x88)](formatDate,new Date())+_0x3ae512(0xb3),_0x361b95['message']);throw _0x361b95;}try{await _0x2b6ee2['assertExchange'](EXCHANGE,'direct',{'durable':!![],'autoDelete':![]}),console[_0x3ae512(0xa8)]('['+_0x30a3af[_0x3ae512(0x88)](formatDate,new Date())+_0x3ae512(0xa7)+EXCHANGE+_0x3ae512(0xb0));}catch(_0x3eb3e7){console[_0x3ae512(0x8b)]('['+_0x30a3af[_0x3ae512(0x94)](formatDate,new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x3eb3e7[_0x3ae512(0xb5)]);throw _0x3eb3e7;}const _0x499e5f=ROUTING_KEY+'_retry';try{const _0x13938e={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x2b6ee2['assertQueue'](_0x499e5f,_0x13938e),console[_0x3ae512(0xa8)]('['+formatDate(new Date())+']\x20Retry\x20queue\x20'+_0x499e5f+'\x20created/ready'),await _0x2b6ee2[_0x3ae512(0x95)](_0x499e5f,_0x30a3af['egpoD'],ROUTING_KEY),console[_0x3ae512(0xa8)]('['+formatDate(new Date())+_0x3ae512(0xa9)+ROUTING_KEY+_0x3ae512(0xa6));}catch(_0x2a1029){console[_0x3ae512(0x8b)]('['+_0x30a3af[_0x3ae512(0x94)](formatDate,new Date())+_0x3ae512(0x86),_0x2a1029[_0x3ae512(0xb5)]);throw _0x2a1029;}try{const _0x16db30={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x30a3af[_0x3ae512(0x8f)],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x3ea7a5=await _0x2b6ee2['assertQueue'](QUEUE,_0x16db30);console[_0x3ae512(0xa8)]('['+_0x30a3af[_0x3ae512(0xb1)](formatDate,new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x30a3af['wdkAH'](_0x3ea7a5['queue'],QUEUE)?_0x30a3af['BjqYe']:_0x3ae512(0xa4))+'\x20with\x20DLX'),await _0x2b6ee2['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console[_0x3ae512(0xa8)]('['+formatDate(new Date())+']\x20Binding\x20'+EXCHANGE+'\x20->\x20'+QUEUE+'\x20('+ROUTING_KEY+_0x3ae512(0x92));}catch(_0x5366b9){if(_0x5366b9['message'][_0x3ae512(0x9f)](_0x3ae512(0x8d))&&_0x5366b9[_0x3ae512(0xb5)][_0x3ae512(0x9f)]('x-dead-letter-routing-key'))console['error']('\x0a['+formatDate(new Date())+_0x3ae512(0xb2)+QUEUE+_0x3ae512(0x9d)),console[_0x3ae512(0x8b)](_0x3ae512(0xaf)+QUEUE+_0x3ae512(0x9e)),console[_0x3ae512(0x8b)](_0x3ae512(0xb4)),process['exit'](0x1);else{console['error']('['+formatDate(new Date())+_0x3ae512(0x9c)+QUEUE+':',_0x5366b9[_0x3ae512(0xb5)]);throw _0x5366b9;}}}catch(_0x2db2fa){if(!_0x2db2fa[_0x3ae512(0xb5)][_0x3ae512(0x9f)](_0x30a3af[_0x3ae512(0x91)])){console[_0x3ae512(0x8b)]('['+formatDate(new Date())+_0x3ae512(0x9a),_0x2db2fa['message']);throw _0x2db2fa;}process[_0x3ae512(0xa2)](0x1);}}async function closeConnection(_0x1a0794){const _0x597790=a0_0x176102,_0x24bc21={'aQiiG':function(_0x57643c,_0x3e97b0){return _0x57643c(_0x3e97b0);}};if(_0x1a0794)try{await _0x1a0794[_0x597790(0x8e)](),console['log']('['+_0x24bc21[_0x597790(0x85)](formatDate,new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x327bd8){console['error']('['+_0x24bc21['aQiiG'](formatDate,new Date())+']\x20Failed\x20to\x20close\x20RabbitMQ\x20connection:\x20'+_0x327bd8['message']);}}module[a0_0x176102(0x89)]={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a0_0x5af08f=a0_0x1430;(function(_0xda6784,_0x104dab){const _0x176518=a0_0x1430,_0x3b6f6b=_0xda6784();while(!![]){try{const _0x514ec8=parseInt(_0x176518(0x151))/0x1*(-parseInt(_0x176518(0x14c))/0x2)+-parseInt(_0x176518(0x13e))/0x3*(-parseInt(_0x176518(0x159))/0x4)+parseInt(_0x176518(0x145))/0x5*(-parseInt(_0x176518(0x138))/0x6)+parseInt(_0x176518(0x13a))/0x7+-parseInt(_0x176518(0x15a))/0x8*(parseInt(_0x176518(0x143))/0x9)+parseInt(_0x176518(0x139))/0xa*(parseInt(_0x176518(0x13d))/0xb)+parseInt(_0x176518(0x13f))/0xc;if(_0x514ec8===_0x104dab)break;else _0x3b6f6b['push'](_0x3b6f6b['shift']());}catch(_0x3e3873){_0x3b6f6b['push'](_0x3b6f6b['shift']());}}}(a0_0x3181,0x687cd));const Redis=require(a0_0x5af08f(0x14e)),{logger}=require(a0_0x5af08f(0x149));class RedisClient{constructor(){this['client']=null,this['isConnected']=![];}[a0_0x5af08f(0x154)](){const _0x1fff53=a0_0x5af08f,_0x365fe5={'KoAHv':'redis_connected','pSAZC':'Redis\x20connected\x20successfully','slIwA':function(_0x5c2c15,_0x418a9a,_0x349703){return _0x5c2c15(_0x418a9a,_0x349703);},'CUeTu':'connect','ftWdk':'close','YXqHe':'redis_init_error'};if(this['client'])return this['client'];try{return this['client']=new Redis({'host':process['env'][_0x1fff53(0x14a)]||'localhost','port':parseInt(process[_0x1fff53(0x156)]['REDIS_PORT'],0xa)||0x18ec,'password':process['env']['REDIS_PASSWORD']||undefined,'db':_0x365fe5[_0x1fff53(0x144)](parseInt,process[_0x1fff53(0x156)][_0x1fff53(0x14f)],0xa)||0x0,'retryStrategy'(_0x4180af){const _0x5fbcff=_0x1fff53,_0xadffdf=Math[_0x5fbcff(0x146)](_0x4180af*0x32,0x7d0);return _0xadffdf;}}),this['client']['on'](_0x365fe5['CUeTu'],()=>{const _0x5cd1c0=_0x1fff53;this[_0x5cd1c0(0x150)]=!![],logger[_0x5cd1c0(0x155)]({'event':_0x365fe5['KoAHv']},_0x365fe5['pSAZC']);}),this['client']['on']('error',_0x4ea4f0=>{const _0x2267fb=_0x1fff53;this['isConnected']=![],logger[_0x2267fb(0x141)]({'event':'redis_error','error':_0x4ea4f0[_0x2267fb(0x152)]},_0x2267fb(0x13c)+_0x4ea4f0[_0x2267fb(0x152)]);}),this['client']['on'](_0x365fe5['ftWdk'],()=>{const _0x44e705=_0x1fff53;this[_0x44e705(0x150)]=![],logger[_0x44e705(0x157)]({'event':'redis_disconnected'},'Redis\x20connection\x20closed');}),this['client'];}catch(_0x4cbcb3){logger['error']({'event':_0x365fe5['YXqHe'],'error':_0x4cbcb3['message']},_0x1fff53(0x140));throw _0x4cbcb3;}}['getClient'](){const _0x1ac4c7=a0_0x5af08f;return!this[_0x1ac4c7(0x147)]&&this[_0x1ac4c7(0x154)](),this[_0x1ac4c7(0x147)];}async['ping'](_0x145382=0x1388){const _0x4285e3=a0_0x5af08f,_0xa8ae2f={'jVvVy':_0x4285e3(0x148)};try{const _0x532452=this[_0x4285e3(0x14b)](),_0x32e75c=await Promise['race']([_0x532452[_0x4285e3(0x14d)](),new Promise((_0x3d0714,_0x110411)=>setTimeout(()=>_0x110411(new Error(_0x4285e3(0x142))),_0x145382))]);return _0x32e75c===_0xa8ae2f[_0x4285e3(0x158)];}catch(_0x348f48){return![];}}async[a0_0x5af08f(0x13b)](){const _0x1c2be6=a0_0x5af08f;this[_0x1c2be6(0x147)]&&(await this['client']['quit'](),this[_0x1c2be6(0x147)]=null,this[_0x1c2be6(0x150)]=![]);}[a0_0x5af08f(0x153)](){const _0x461816=a0_0x5af08f;this[_0x461816(0x147)]&&(this[_0x461816(0x147)]['disconnect'](),this['client']=null,this[_0x461816(0x150)]=![]);}}module['exports']=new RedisClient();function a0_0x1430(_0x316b4a,_0x4f6064){_0x316b4a=_0x316b4a-0x138;const _0x318133=a0_0x3181();let _0x14308c=_0x318133[_0x316b4a];if(a0_0x1430['UuRlVR']===undefined){var _0x1216aa=function(_0x42f67a){const _0x738dc7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3e6bab='',_0x4daba4='';for(let _0x792716=0x0,_0x1ff5c5,_0x41273d,_0x1cfb9d=0x0;_0x41273d=_0x42f67a['charAt'](_0x1cfb9d++);~_0x41273d&&(_0x1ff5c5=_0x792716%0x4?_0x1ff5c5*0x40+_0x41273d:_0x41273d,_0x792716++%0x4)?_0x3e6bab+=String['fromCharCode'](0xff&_0x1ff5c5>>(-0x2*_0x792716&0x6)):0x0){_0x41273d=_0x738dc7['indexOf'](_0x41273d);}for(let _0x53efe6=0x0,_0x19a4dc=_0x3e6bab['length'];_0x53efe6<_0x19a4dc;_0x53efe6++){_0x4daba4+='%'+('00'+_0x3e6bab['charCodeAt'](_0x53efe6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4daba4);};a0_0x1430['ZJyMIf']=_0x1216aa,a0_0x1430['JZYzTq']={},a0_0x1430['UuRlVR']=!![];}const _0x121633=_0x318133[0x0],_0x17f480=_0x316b4a+_0x121633,_0x43eaff=a0_0x1430['JZYzTq'][_0x17f480];return!_0x43eaff?(_0x14308c=a0_0x1430['ZJyMIf'](_0x14308c),a0_0x1430['JZYzTq'][_0x17f480]=_0x14308c):_0x14308c=_0x43eaff,_0x14308c;}function a0_0x3181(){const _0x3dda58=['uKvesvnFse9tva','z2v0q2XPzw50','mti3mtK4sLHTrujr','CgLUzW','Aw9YzwrPCW','uKvesvnFrei','AxndB25Uzwn0zwq','mtbgELP2AKG','BwvZC2fNzq','zM9Yy2veAxnJB25Uzwn0','y29UBMvJDa','Aw5MBW','zw52','D2fYBG','ALz2vNK','mteXntK2C0Pgt1vH','odiWntuYCeToA3z0','mti4mdKYofr2CuHxCa','mtb5wvHkzMe','ntGYndy0neLHuuTfEG','zgLZy29UBMvJDa','uMvKAxmGy29UBMvJDgLVBIbLCNjVCJOG','mJm4mta2meDjvunssG','mZnnt0Lpu24','nJu0otm4ngHvDKffuW','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','zxjYB3i','uMvKAxmGueLorYb0Aw1LB3v0','mZzUCejlB08','C2XjD0e','mtb2BvfLr0S','BwLU','y2XPzw50','ue9orW','lI9SB2DNzxi'];a0_0x3181=function(){return _0x3dda58;};return a0_0x3181();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a0_0x4c33(){const _0x28bbc3=['zxHWB3j0CW','DxbKyxrLsM9I','zgvMyxvSDa','A2v5CW','CMvKAxnFC2v0x2vYCM9Y','BwvZC2fNzq','x3bYzwzPEa','mJi0mZyWohvXthnuBq','CMvZDgzVCMDLoG','CMvKAxnFz2v0ywXSx2vYCM9Y','ChjLzML4','nJmXmZGZoun4yMftAq','C3rYAw5NAwz5','rMfPBgvKihrVigDLDcbQB2iGzNjVBsbszwrPCW','rvHqt1jux0zjtevFrvHqsvjz','C2v0sM9I','C2v0zxG','zw52','sLPcAhK','m1nWwvr6Ea','ndu0mZqZt0rQzhf1','mJbmrNDpqxK','CMvKAxnFz2v0x2vYCM9Y','mtiWnZC1CvnJu3f1','oMv4Cg9YDdO','nJa2mJuYmg5myNH4vW','mty1ndaXneXnEfrPCa','z2v0q2XPzw50','otu5nJyYoeDzt3fjzq','DMnbBuu'];a0_0x4c33=function(){return _0x28bbc3;};return a0_0x4c33();}const a0_0x30d7dc=a0_0x561c;(function(_0x1badd0,_0xda161d){const _0x4be095=a0_0x561c,_0x29057a=_0x1badd0();while(!![]){try{const _0x3b759e=parseInt(_0x4be095(0x6e))/0x1+-parseInt(_0x4be095(0x74))/0x2*(parseInt(_0x4be095(0x8b))/0x3)+-parseInt(_0x4be095(0x6f))/0x4*(parseInt(_0x4be095(0x71))/0x5)+parseInt(_0x4be095(0x73))/0x6+parseInt(_0x4be095(0x83))/0x7+parseInt(_0x4be095(0x7f))/0x8+-parseInt(_0x4be095(0x76))/0x9;if(_0x3b759e===_0xda161d)break;else _0x29057a['push'](_0x29057a['shift']());}catch(_0x3cdde1){_0x29057a['push'](_0x29057a['shift']());}}}(a0_0x4c33,0x9a91d));function a0_0x561c(_0x204032,_0x4b1fe5){_0x204032=_0x204032-0x6e;const _0x4c33c5=a0_0x4c33();let _0x561cb9=_0x4c33c5[_0x204032];if(a0_0x561c['UdqjuY']===undefined){var _0x406ba9=function(_0x542818){const _0x4f8858='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5ecd1a='',_0x5aa44f='';for(let _0x4dca6a=0x0,_0x1d2c06,_0x1fe669,_0x268ac0=0x0;_0x1fe669=_0x542818['charAt'](_0x268ac0++);~_0x1fe669&&(_0x1d2c06=_0x4dca6a%0x4?_0x1d2c06*0x40+_0x1fe669:_0x1fe669,_0x4dca6a++%0x4)?_0x5ecd1a+=String['fromCharCode'](0xff&_0x1d2c06>>(-0x2*_0x4dca6a&0x6)):0x0){_0x1fe669=_0x4f8858['indexOf'](_0x1fe669);}for(let _0x3e62a1=0x0,_0x53adf2=_0x5ecd1a['length'];_0x3e62a1<_0x53adf2;_0x3e62a1++){_0x5aa44f+='%'+('00'+_0x5ecd1a['charCodeAt'](_0x3e62a1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5aa44f);};a0_0x561c['yHbnvP']=_0x406ba9,a0_0x561c['ySxKLb']={},a0_0x561c['UdqjuY']=!![];}const _0x139e34=_0x4c33c5[0x0],_0x1e174a=_0x204032+_0x139e34,_0x19150e=a0_0x561c['ySxKLb'][_0x1e174a];return!_0x19150e?(_0x561cb9=a0_0x561c['yHbnvP'](_0x561cb9),a0_0x561c['ySxKLb'][_0x1e174a]=_0x561cb9):_0x561cb9=_0x19150e,_0x561cb9;}const redisClient=require('./redis-client'),{logger}=require('./logger');class RedisHelper{constructor(){const _0x1809db=a0_0x561c;this[_0x1809db(0x7e)]=null,this['ttl']=parseInt(process[_0x1809db(0x89)][_0x1809db(0x86)],0xa)||0xe10;}get['prefix'](){const _0x5b9871=a0_0x561c;if(!this['_prefix']){const _0x2ba0d7=process['env']['RESTFORGE_PROJECT_NAME']||_0x5b9871(0x7a);this[_0x5b9871(0x7e)]=_0x5b9871(0x80)+_0x2ba0d7+_0x5b9871(0x72);}return this[_0x5b9871(0x7e)];}async['setJob'](_0x59ac50,_0x42a0ba){const _0x5ae16f=a0_0x561c,_0x346a5d={'ZvbmD':_0x5ae16f(0x7c),'XdBYY':'Failed\x20to\x20set\x20job\x20in\x20Redis'};try{const _0x36bc6a=redisClient[_0x5ae16f(0x75)](),_0x321f84=''+this[_0x5ae16f(0x82)]+_0x59ac50;return await _0x36bc6a[_0x5ae16f(0x88)](_0x321f84,this['ttl'],JSON[_0x5ae16f(0x84)](_0x42a0ba)),!![];}catch(_0x395d5b){return logger['error']({'event':_0x346a5d['ZvbmD'],'jobId':_0x59ac50,'error':_0x395d5b['message']},_0x346a5d['XdBYY']),![];}}async['getJob'](_0xc0ed34){const _0x24c65e=a0_0x561c,_0x52f3a7={'JZBhy':_0x24c65e(0x70)};try{const _0x586929=redisClient['getClient'](),_0x540c9d=''+this[_0x24c65e(0x82)]+_0xc0ed34,_0x4ea020=await _0x586929['get'](_0x540c9d);return _0x4ea020?JSON['parse'](_0x4ea020):null;}catch(_0x4a23f9){return logger['error']({'event':_0x52f3a7[_0x24c65e(0x8a)],'jobId':_0xc0ed34,'error':_0x4a23f9['message']},_0x24c65e(0x85)),null;}}async[a0_0x30d7dc(0x79)](_0x4194e0,_0x289f81){const _0x4c8305=a0_0x30d7dc,_0x3202f8=await this['getJob'](_0x4194e0);if(!_0x3202f8)return![];const _0x428943={..._0x3202f8,..._0x289f81};return await this[_0x4c8305(0x87)](_0x4194e0,_0x428943);}async['deleteJob'](_0x2a2f97){const _0x53a98c=a0_0x30d7dc,_0x11c010={'XoMXH':'redis_delete_error','vcAmE':'Failed\x20to\x20delete\x20job\x20from\x20Redis'};try{const _0x2d1613=redisClient['getClient'](),_0x1ba236=''+this[_0x53a98c(0x82)]+_0x2a2f97;return await _0x2d1613['del'](_0x1ba236),!![];}catch(_0x39dcc6){return logger['error']({'event':_0x11c010['XoMXH'],'jobId':_0x2a2f97,'error':_0x39dcc6[_0x53a98c(0x7d)]},_0x11c010[_0x53a98c(0x77)]),![];}}async['getAllJobs'](){const _0xd4e310=a0_0x30d7dc,_0x37841d={'hhubs':_0xd4e310(0x81)};try{const _0x2ee57d=redisClient[_0xd4e310(0x75)](),_0x6e15a9=await _0x2ee57d[_0xd4e310(0x7b)](this[_0xd4e310(0x82)]+'*'),_0x280b2f=[];for(const _0x429f05 of _0x6e15a9){const _0x5be326=await _0x2ee57d['get'](_0x429f05);_0x5be326&&_0x280b2f['push'](JSON['parse'](_0x5be326));}return _0x280b2f;}catch(_0x5b83d5){return logger['error']({'event':_0x37841d['hhubs'],'error':_0x5b83d5['message']},'Failed\x20to\x20get\x20all\x20jobs'),[];}}}module[a0_0x30d7dc(0x78)]=new RedisHelper();
|