@restforgejs/platform 5.2.10 → 5.2.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/drift-check-linux +0 -0
- package/bin/sdf-tools-linux +0 -0
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/generators/cli/schema/init.js +20 -6
- package/generators/cli/schema/template.js +24 -9
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/soft-delete-dashboard-guard.js +1 -1
- package/src/utils/sql-table-extractor.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';
|
|
1
|
+
'use strict';const a0_0x1a7b0c=a0_0x3de6;(function(_0x462d2d,_0x2a5738){const _0x540f70=a0_0x3de6,_0x33b523=_0x462d2d();while(!![]){try{const _0x1c2103=-parseInt(_0x540f70(0x15c))/0x1*(-parseInt(_0x540f70(0x18a))/0x2)+parseInt(_0x540f70(0x16d))/0x3*(-parseInt(_0x540f70(0x175))/0x4)+-parseInt(_0x540f70(0x162))/0x5*(-parseInt(_0x540f70(0x15d))/0x6)+-parseInt(_0x540f70(0x16a))/0x7*(-parseInt(_0x540f70(0x17f))/0x8)+-parseInt(_0x540f70(0x189))/0x9+-parseInt(_0x540f70(0x158))/0xa+-parseInt(_0x540f70(0x172))/0xb*(parseInt(_0x540f70(0x183))/0xc);if(_0x1c2103===_0x2a5738)break;else _0x33b523['push'](_0x33b523['shift']());}catch(_0x309646){_0x33b523['push'](_0x33b523['shift']());}}}(a0_0x47e0,0xd342b));const multer=require('multer'),path=require('path'),crypto=require(a0_0x1a7b0c(0x15e)),fs=require('fs')[a0_0x1a7b0c(0x17a)],fsSync=require('fs'),{logger}=require('./logger');function a0_0x3de6(_0x1c6c27,_0x5c2802){_0x1c6c27=_0x1c6c27-0x158;const _0x47e062=a0_0x47e0();let _0x3de600=_0x47e062[_0x1c6c27];if(a0_0x3de6['NQlCtM']===undefined){var _0xccd031=function(_0x337b9b){const _0x62df07='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3d9e6f='',_0x572e24='';for(let _0x40defe=0x0,_0x3f848b,_0x344a50,_0x370b4e=0x0;_0x344a50=_0x337b9b['charAt'](_0x370b4e++);~_0x344a50&&(_0x3f848b=_0x40defe%0x4?_0x3f848b*0x40+_0x344a50:_0x344a50,_0x40defe++%0x4)?_0x3d9e6f+=String['fromCharCode'](0xff&_0x3f848b>>(-0x2*_0x40defe&0x6)):0x0){_0x344a50=_0x62df07['indexOf'](_0x344a50);}for(let _0x3b4cd2=0x0,_0x12e0bb=_0x3d9e6f['length'];_0x3b4cd2<_0x12e0bb;_0x3b4cd2++){_0x572e24+='%'+('00'+_0x3d9e6f['charCodeAt'](_0x3b4cd2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x572e24);};a0_0x3de6['bXGMlR']=_0xccd031,a0_0x3de6['HFzIwz']={},a0_0x3de6['NQlCtM']=!![];}const _0x1b1720=_0x47e062[0x0],_0x110590=_0x1c6c27+_0x1b1720,_0x1e743b=a0_0x3de6['HFzIwz'][_0x110590];return!_0x1e743b?(_0x3de600=a0_0x3de6['bXGMlR'](_0x3de600),a0_0x3de6['HFzIwz'][_0x110590]=_0x3de600):_0x3de600=_0x1e743b,_0x3de600;}class UploadHandlerV2{constructor(){const _0x4cf928=a0_0x1a7b0c;this[_0x4cf928(0x164)]=null;}get['tempDir'](){const _0x411cb1=a0_0x1a7b0c,_0x5a2a4e={'BVLPx':'default','xKkVy':_0x411cb1(0x15a),'jxDOE':'uploads'};if(!this[_0x411cb1(0x164)]){const _0x205f60=process['env']['RESTFORGE_PROJECT_NAME']||_0x5a2a4e[_0x411cb1(0x171)];this['_tempDir']=process[_0x411cb1(0x195)]['UPLOAD_TEMP_DIR']||path[_0x411cb1(0x178)](process[_0x411cb1(0x180)](),_0x5a2a4e[_0x411cb1(0x191)],_0x5a2a4e[_0x411cb1(0x17b)],_0x205f60),!fsSync[_0x411cb1(0x187)](this[_0x411cb1(0x164)])&&fsSync['mkdirSync'](this[_0x411cb1(0x164)],{'recursive':!![]});}return this['_tempDir'];}[a0_0x1a7b0c(0x170)](_0x186490={}){const _0x286b8b=a0_0x1a7b0c,_0xfc0605={'asAqr':function(_0x2e65ab,_0x3b6e7a,_0x9aace3){return _0x2e65ab(_0x3b6e7a,_0x9aace3);},'IMkRL':'files'},_0x58dc0c=_0x186490['maxFiles']||0x5,_0x17df23=this[_0x286b8b(0x16f)](_0x186490[_0x286b8b(0x167)]||_0x286b8b(0x193)),_0x35347a=_0x186490['allowedTypes']||[],_0x204761=multer[_0x286b8b(0x18b)]({'destination':(_0x690859,_0x4c6ebe,_0x1e4b64)=>{const _0x29ec0c=_0x286b8b;!fsSync[_0x29ec0c(0x187)](this['tempDir'])&&fsSync['mkdirSync'](this[_0x29ec0c(0x179)],{'recursive':!![]}),_0x1e4b64(null,this[_0x29ec0c(0x179)]);},'filename':(_0x3ec4d5,_0x15f924,_0x4bbe11)=>{const _0x3cfd78=_0x286b8b,_0x4d6857=crypto['randomBytes'](0x8)[_0x3cfd78(0x15b)]('hex'),_0x3e1ec5=Date['now'](),_0x6ffae7=path['extname'](_0x15f924[_0x3cfd78(0x16c)]);_0xfc0605[_0x3cfd78(0x169)](_0x4bbe11,null,_0x3cfd78(0x177)+_0x3e1ec5+'-'+_0x4d6857+_0x6ffae7);}}),_0xea5155=(_0x115a79,_0xddd3c3,_0x5852e2)=>{const _0x4667cd=_0x286b8b;if(_0x35347a[_0x4667cd(0x190)]===0x0)return _0xfc0605[_0x4667cd(0x169)](_0x5852e2,null,!![]);const _0x1b46f6=path['extname'](_0xddd3c3['originalname'])[_0x4667cd(0x17e)]()['replace']('.','');_0x35347a[_0x4667cd(0x18c)](_0x1b46f6)?_0x5852e2(null,!![]):_0x5852e2(new Error(_0x4667cd(0x18f)+_0x1b46f6+_0x4667cd(0x163)+_0x35347a[_0x4667cd(0x178)](',\x20')));};return multer({'storage':_0x204761,'limits':{'fileSize':_0x17df23,'files':_0x58dc0c},'fileFilter':_0xea5155})['array'](_0xfc0605['IMkRL'],_0x58dc0c);}async[a0_0x1a7b0c(0x192)](_0x317531,_0x15d745,_0x20a564={}){const _0x1df07f=a0_0x1a7b0c,_0x38604c={'MSSpO':function(_0x385eb3,_0x3147d6){return _0x385eb3(_0x3147d6);},'rFXhg':'../storage/file-metadata-helper','TahTk':_0x1df07f(0x194)},{createFileMetadata:_0x5c3f8e}=_0x38604c[_0x1df07f(0x174)](require,_0x38604c['rFXhg']),_0x49ac51=[];for(const _0x3d2e28 of _0x317531){try{const _0x393e9c=_0x15d745[_0x1df07f(0x18e)](_0x3d2e28[_0x1df07f(0x16c)],{'prefix':_0x20a564[_0x1df07f(0x182)]||'','project':_0x20a564[_0x1df07f(0x165)]||'','module':_0x20a564[_0x1df07f(0x173)]||'','endpoint':_0x20a564[_0x1df07f(0x159)]||''}),_0xbc1a74=fsSync['createReadStream'](_0x3d2e28['path']),_0x1bd599=await _0x15d745['upload'](_0xbc1a74,_0x393e9c,{'contentType':_0x3d2e28[_0x1df07f(0x166)],'fileSize':_0x3d2e28['size']}),_0x49cc7=_0x38604c[_0x1df07f(0x174)](_0x5c3f8e,{'key':_0x1bd599[_0x1df07f(0x185)],'originalName':_0x3d2e28[_0x1df07f(0x16c)],'fileName':path['basename'](_0x393e9c),'contentType':_0x3d2e28['mimetype'],'size':_0x3d2e28['size'],'url':_0x1bd599[_0x1df07f(0x17d)],'provider':_0x15d745['providerName'],'bucket':_0x15d745['bucket']||null,'uploadedBy':_0x20a564['uploadedBy']||null});_0x49ac51[_0x1df07f(0x186)](_0x49cc7);}catch(_0x57b23b){logger['error']({'event':_0x38604c[_0x1df07f(0x16b)],'file':_0x3d2e28[_0x1df07f(0x16c)],'error':_0x57b23b['message']},_0x1df07f(0x184)+_0x3d2e28[_0x1df07f(0x16c)]);throw _0x57b23b;}finally{await this[_0x1df07f(0x188)](_0x3d2e28[_0x1df07f(0x161)]);}}return _0x49ac51;}async['_deleteTempFile'](_0x584f41){const _0x31a24c=a0_0x1a7b0c,_0x3894a9={'qxCLb':'Failed\x20to\x20delete\x20temp\x20file'};try{await fs[_0x31a24c(0x15f)](_0x584f41);}catch(_0x3cc369){logger['warn']({'event':_0x31a24c(0x16e),'filePath':_0x584f41,'error':_0x3cc369['message']},_0x3894a9['qxCLb']);}}[a0_0x1a7b0c(0x16f)](_0x208360){const _0x31f635=a0_0x1a7b0c,_0x25cadc={'FeeZL':function(_0x13db0f,_0x34a670){return _0x13db0f===_0x34a670;},'XpfUW':_0x31f635(0x17c),'THzSB':function(_0x222da6,_0x3e9e83){return _0x222da6(_0x3e9e83);},'NavJU':function(_0x345bcb,_0x2f5a92){return _0x345bcb*_0x2f5a92;},'yzjmw':function(_0x4a7fb9,_0x1c63a9){return _0x4a7fb9(_0x1c63a9);}};if(_0x25cadc['FeeZL'](typeof _0x208360,_0x25cadc[_0x31f635(0x176)]))return _0x208360;const _0x5ad7a1=_0x25cadc['THzSB'](String,_0x208360)['trim']()[_0x31f635(0x181)](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x5ad7a1)return _0x25cadc['NavJU'](0xa,0x400)*0x400;const _0x35f79b=_0x25cadc['yzjmw'](parseFloat,_0x5ad7a1[0x1]),_0x112486=_0x5ad7a1[0x2]['toUpperCase'](),_0x2a51d7={'B':0x1,'KB':0x400,'MB':_0x25cadc['NavJU'](0x400,0x400),'GB':_0x25cadc[_0x31f635(0x18d)](0x400,0x400)*0x400};return Math[_0x31f635(0x160)](_0x35f79b*(_0x2a51d7[_0x112486]||0x1));}}module[a0_0x1a7b0c(0x168)]=new UploadHandlerV2();function a0_0x47e0(){const _0x1fd6f0=['Aw5JBhvKzxm','tMf2sLu','z2vUzxjHDgvlzxK','rMLSzsb0ExbLiciU','BgvUz3rO','EeTRvNK','ChjVy2vZC1vWBg9HzgvKrMLSzxm','mtbnqG','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','zw52','mJa0mdq2mefqCNzpvq','zw5KCg9PBNq','DgvTCa','Dg9tDhjPBMC','ntq4ndK4CfHUww5w','nJe2mZHUsNjOuKe','y3j5ChrV','Dw5SAw5R','zMXVB3i','Cgf0Aa','mti1CLrStKPO','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG','x3rLBxbeAxi','ChjVAMvJDa','BwLTzxr5Cgu','Bwf4rMLSzvnPEMu','zxHWB3j0CW','yxnbCxi','ntG4otCZq3bvCvPT','vgfOvgS','B3jPz2LUywXUyw1L','mtuZowfbCxLdwa','DxbSB2fKx3yYx3rLBxbFzgvSzxrLx3DHCM4','x3bHCNnLrMLSzvnPEMu','y3jLyxrLvxbSB2fKtwLKzgXLD2fYzq','qLzmuhG','mJe2n3D1wvbMqW','Bw9KDwXL','tvntCe8','ntyWnhv3sMXpza','whbMvvC','DxbSB2fKlq','AM9PBG','DgvTCerPCG','ChjVBwLZzxm','ANHet0u','BNvTyMvY','DxjS','Dg9mB3DLCKnHC2u','nJrszhHTww4','y3DK','Bwf0y2G','ChjLzML4','mtG0ndr3DhHAAu4','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fKzwqGzMLSztOG','A2v5','ChvZAa','zxHPC3rZu3LUyW','x2rLBgv0zvrLBxbgAwXL','ndm2mta0meX4uMPSEG','nKHXyvDOwq','zgLZA1n0B3jHz2u'];a0_0x47e0=function(){return _0x1fd6f0;};return a0_0x47e0();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a0_0x47ab(){const _0x401ce8=['mJy4merjBKXkuW','zgvSzxrLrMLSzq','y3j5ChrV','C2LUz2XL','yw9xCMi','BwTKAxjtEw5J','ndu4m0jQtKvhsq','Aw5JBhvKzxm','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','quPfs2q','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mZa0mty0mgDTz1z4ua','mZaWotzQwgzAywK','mte5mJm5ogPiueHyyG','lI4VlI4VDgvTCc91CgXVywrZlW','mJuWotm5nvv5Aw1Rwa','DxbSB2fKlq','zxHWB3j0CW','Agv4','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','zw52','z2v0vxbSB2fKtwLKzgXLD2fYzq','BxvSDgvY','B3jPz2LUywXUyw1L','Dw5SAw5R','lI9SB2DNzxi','ndKXndK0nuL4BK9hvq','mJvQrvLlqva','zxHPC3rZu3LUyW','Dg9tDhjPBMC','odbMDwDtCha','Dg9mB3DLCKnHC2u','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','DxbSB2fKx2HHBMrSzxjFAw5PDa','ENbUDgS','DxbSB2fKrgLY','mta4mZy2s3vZsw5T','z2v0u3rVCMfNzq','mtq4C1vgEKLK','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','x3vWBg9HzerPCG','zxjYB3i','zgvMyxvSDa'];a0_0x47ab=function(){return _0x401ce8;};return a0_0x47ab();}const a0_0x54d2b4=a0_0x3b37;function a0_0x3b37(_0x54209d,_0x26203d){_0x54209d=_0x54209d-0x8e;const _0x47ab49=a0_0x47ab();let _0x3b3751=_0x47ab49[_0x54209d];if(a0_0x3b37['suOoVv']===undefined){var _0x36830d=function(_0x163f5f){const _0x4ea081='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x63e67d='',_0x4a8a23='';for(let _0x17e563=0x0,_0x1d3232,_0x3e16ae,_0x44d7a2=0x0;_0x3e16ae=_0x163f5f['charAt'](_0x44d7a2++);~_0x3e16ae&&(_0x1d3232=_0x17e563%0x4?_0x1d3232*0x40+_0x3e16ae:_0x3e16ae,_0x17e563++%0x4)?_0x63e67d+=String['fromCharCode'](0xff&_0x1d3232>>(-0x2*_0x17e563&0x6)):0x0){_0x3e16ae=_0x4ea081['indexOf'](_0x3e16ae);}for(let _0x30b8b5=0x0,_0x2d5f0d=_0x63e67d['length'];_0x30b8b5<_0x2d5f0d;_0x30b8b5++){_0x4a8a23+='%'+('00'+_0x63e67d['charCodeAt'](_0x30b8b5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4a8a23);};a0_0x3b37['BcOqMs']=_0x36830d,a0_0x3b37['dvpPlQ']={},a0_0x3b37['suOoVv']=!![];}const _0x4759c6=_0x47ab49[0x0],_0x2ec03b=_0x54209d+_0x4759c6,_0x41e42b=a0_0x3b37['dvpPlQ'][_0x2ec03b];return!_0x41e42b?(_0x3b3751=a0_0x3b37['BcOqMs'](_0x3b3751),a0_0x3b37['dvpPlQ'][_0x2ec03b]=_0x3b3751):_0x3b3751=_0x41e42b,_0x3b3751;}(function(_0x3d3e35,_0x2f5abc){const _0x23fc68=a0_0x3b37,_0x5575a2=_0x3d3e35();while(!![]){try{const _0x32b20e=-parseInt(_0x23fc68(0xa0))/0x1*(parseInt(_0x23fc68(0x95))/0x2)+parseInt(_0x23fc68(0x93))/0x3*(parseInt(_0x23fc68(0xb9))/0x4)+-parseInt(_0x23fc68(0xb6))/0x5*(parseInt(_0x23fc68(0xa7))/0x6)+-parseInt(_0x23fc68(0xa9))/0x7+parseInt(_0x23fc68(0xa5))/0x8+parseInt(_0x23fc68(0xb5))/0x9+parseInt(_0x23fc68(0x9a))/0xa*(parseInt(_0x23fc68(0xa6))/0xb);if(_0x32b20e===_0x2f5abc)break;else _0x5575a2['push'](_0x5575a2['shift']());}catch(_0x5a4730){_0x5575a2['push'](_0x5575a2['shift']());}}}(a0_0x47ab,0xa8a12));const multer=require(a0_0x54d2b4(0xb1)),path=require('path'),crypto=require(a0_0x54d2b4(0x9c)),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x54d2b4(0xb4));class UploadHandler{constructor(){const _0xed2789=a0_0x54d2b4;this[_0xed2789(0x97)]=null,this['maxFileSize']=0xa*0x400*0x400;}get[a0_0x54d2b4(0x92)](){const _0xf90485=a0_0x54d2b4,_0x478c48={'AJEKd':_0xf90485(0x99),'vNYdQ':_0xf90485(0xad)};if(!this['_uploadDir']){const _0x3f7e78=process[_0xf90485(0xaf)][_0xf90485(0xa4)]||_0x478c48[_0xf90485(0xa3)];this[_0xf90485(0x97)]=process[_0xf90485(0xaf)]['UPLOAD_DIR']||path['join'](__dirname,_0xf90485(0xa8)+_0x3f7e78);try{!fsSync[_0xf90485(0xb7)](this['_uploadDir'])&&fsSync[_0xf90485(0x9f)](this[_0xf90485(0x97)],{'recursive':!![]}),logger['info']({'event':_0xf90485(0x90),'dir':this[_0xf90485(0x97)]},_0xf90485(0xa2));}catch(_0x2e954e){logger[_0xf90485(0x98)]({'event':'upload_handler_init_error','error':_0x2e954e['message']},_0x478c48['vNYdQ']);}}return this[_0xf90485(0x97)];}[a0_0x54d2b4(0x94)](){const _0x10fb24=a0_0x54d2b4,_0x3b9c41={'aoWrb':_0x10fb24(0xac)};return multer['diskStorage']({'destination':(_0x1df386,_0x18e1f3,_0x5621e8)=>{const _0x175d44=_0x10fb24;!fsSync['existsSync'](this['uploadDir'])&&fsSync['mkdirSync'](this[_0x175d44(0x92)],{'recursive':!![]}),_0x5621e8(null,this[_0x175d44(0x92)]);},'filename':(_0x2ceaa0,_0x379041,_0x1fc9ec)=>{const _0x20f138=_0x10fb24,_0x2154c1=crypto['randomBytes'](0x8)[_0x20f138(0xb8)](_0x3b9c41[_0x20f138(0x9e)]),_0x22971d=Date['now'](),_0x597e9a=path['extname'](_0x379041[_0x20f138(0xb2)]);_0x1fc9ec(null,_0x20f138(0xaa)+_0x22971d+'-'+_0x2154c1+_0x597e9a);}});}[a0_0x54d2b4(0xb0)](){const _0x274c78=a0_0x54d2b4,_0x5116ce={'WzjiN':'application/vnd.ms-excel','zpntk':'.xls'};return multer({'storage':this['getStorage'](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x1900ad,_0x39baf8,_0x4541bd)=>{const _0x31e156=a0_0x3b37,_0x2c4169=[_0x31e156(0xae),_0x5116ce['WzjiN']],_0x4ee659=['.xlsx',_0x5116ce[_0x31e156(0x91)]],_0x599694=path['extname'](_0x39baf8[_0x31e156(0xb2)])[_0x31e156(0x8e)]();_0x2c4169[_0x31e156(0xa1)](_0x39baf8['mimetype'])&&_0x4ee659[_0x31e156(0xa1)](_0x599694)?_0x4541bd(null,!![]):_0x4541bd(new Error('Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed'));}})[_0x274c78(0x9d)]('file');}async[a0_0x54d2b4(0x9b)](_0x1ff57e){const _0x168227=a0_0x54d2b4,_0x5d456e={'Jcxub':'Uploaded\x20file\x20deleted','YqQrJ':_0x168227(0x96),'HeOtP':_0x168227(0x8f)};try{await fs[_0x168227(0xb3)](_0x1ff57e),logger['info']({'event':'upload_file_deleted','filePath':_0x1ff57e},_0x5d456e['Jcxub']);}catch(_0x4da907){logger['error']({'event':_0x5d456e['YqQrJ'],'filePath':_0x1ff57e,'error':_0x4da907['message']},_0x5d456e['HeOtP']);}}}module[a0_0x54d2b4(0xab)]=new UploadHandler();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5e6605,_0x2fbcd4){const _0x1c9877=a0_0xbc8d,_0x20b46b=_0x5e6605();while(!![]){try{const _0x43dbaf=-parseInt(_0x1c9877(0x1ef))/0x1+-parseInt(_0x1c9877(0x1e4))/0x2*(parseInt(_0x1c9877(0x1f7))/0x3)+-parseInt(_0x1c9877(0x1fc))/0x4*(parseInt(_0x1c9877(0x1ea))/0x5)+-parseInt(_0x1c9877(0x1fb))/0x6*(-parseInt(_0x1c9877(0x1fa))/0x7)+-parseInt(_0x1c9877(0x1f8))/0x8+parseInt(_0x1c9877(0x1ee))/0x9*(-parseInt(_0x1c9877(0x1e0))/0xa)+parseInt(_0x1c9877(0x1f9))/0xb;if(_0x43dbaf===_0x2fbcd4)break;else _0x20b46b['push'](_0x20b46b['shift']());}catch(_0xd49b7c){_0x20b46b['push'](_0x20b46b['shift']());}}}(a0_0x49c9,0x90f18));const axios=require('axios');async function sendInsertWebhook(_0x4d8ef8,_0x30cf38,_0x50166f={}){const _0x40146c=a0_0xbc8d,_0x59cbe5={'HUcQd':_0x40146c(0x1e9),'fJrix':_0x40146c(0x1f6),'SIksx':_0x40146c(0x1ec),'cPnMX':_0x40146c(0x1f4)};try{const _0x57c14b={'event':'insert','timestamp':new Date()[_0x40146c(0x1f2)](),'data':_0x30cf38},_0x3cb0f1=await axios[_0x40146c(0x1ed)](_0x4d8ef8,_0x57c14b,{'headers':{'Content-Type':_0x40146c(0x1e8),'User-Agent':_0x59cbe5['HUcQd'],..._0x50166f},'timeout':0x2710});return console[_0x40146c(0x1e2)]('Insert\x20webhook\x20sent\x20to\x20'+_0x4d8ef8+_0x40146c(0x1eb)+_0x3cb0f1[_0x40146c(0x1e1)]),{'success':!![],'message':_0x59cbe5['fJrix'],'status':_0x3cb0f1['status'],'url':_0x4d8ef8};}catch(_0x37506b){return console[_0x40146c(0x1e3)](_0x59cbe5[_0x40146c(0x1f0)],_0x37506b[_0x40146c(0x1e6)]),{'success':![],'message':_0x59cbe5[_0x40146c(0x1e7)],'error':_0x37506b['message'],'url':_0x4d8ef8};}}function a0_0xbc8d(_0x42a69e,_0x42832f){_0x42a69e=_0x42a69e-0x1e0;const _0x49c907=a0_0x49c9();let _0xbc8d7e=_0x49c907[_0x42a69e];if(a0_0xbc8d['AmAhUJ']===undefined){var _0x585c12=function(_0x548cce){const _0x5e479d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37dd53='',_0x249cff='';for(let _0x5399be=0x0,_0x4e0280,_0x42b6a4,_0x7d56f6=0x0;_0x42b6a4=_0x548cce['charAt'](_0x7d56f6++);~_0x42b6a4&&(_0x4e0280=_0x5399be%0x4?_0x4e0280*0x40+_0x42b6a4:_0x42b6a4,_0x5399be++%0x4)?_0x37dd53+=String['fromCharCode'](0xff&_0x4e0280>>(-0x2*_0x5399be&0x6)):0x0){_0x42b6a4=_0x5e479d['indexOf'](_0x42b6a4);}for(let _0x1bd9cc=0x0,_0x936b72=_0x37dd53['length'];_0x1bd9cc<_0x936b72;_0x1bd9cc++){_0x249cff+='%'+('00'+_0x37dd53['charCodeAt'](_0x1bd9cc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x249cff);};a0_0xbc8d['BfMSAP']=_0x585c12,a0_0xbc8d['FsgjUS']={},a0_0xbc8d['AmAhUJ']=!![];}const _0x2df673=_0x49c907[0x0],_0x41a8ca=_0x42a69e+_0x2df673,_0x47f73b=a0_0xbc8d['FsgjUS'][_0x41a8ca];return!_0x47f73b?(_0xbc8d7e=a0_0xbc8d['BfMSAP'](_0xbc8d7e),a0_0xbc8d['FsgjUS'][_0x41a8ca]=_0xbc8d7e):_0xbc8d7e=_0x47f73b,_0xbc8d7e;}async function sendDeleteWebhook(_0xf0cbc5,_0x512e89,_0x57fc89={}){const _0x596cb0=a0_0xbc8d,_0x56b457={'GlIfz':_0x596cb0(0x1e8),'kjbzo':'RestForge-Webhook/1.0','TQAbe':'Error\x20sending\x20delete\x20webhook:'};try{const _0x4cec67={'event':'delete','timestamp':new Date()['toISOString'](),'deleted_data':_0x512e89},_0x103fd6=await axios['post'](_0xf0cbc5,_0x4cec67,{'headers':{'Content-Type':_0x56b457[_0x596cb0(0x1e5)],'User-Agent':_0x56b457['kjbzo'],..._0x57fc89},'timeout':0x2710});return console['log'](_0x596cb0(0x1f3)+_0xf0cbc5+_0x596cb0(0x1eb)+_0x103fd6[_0x596cb0(0x1e1)]),{'success':!![],'message':_0x596cb0(0x1f5),'status':_0x103fd6[_0x596cb0(0x1e1)],'url':_0xf0cbc5};}catch(_0x29ab69){return console[_0x596cb0(0x1e3)](_0x56b457[_0x596cb0(0x1f1)],_0x29ab69['message']),{'success':![],'message':'Failed\x20to\x20send\x20delete\x20webhook','error':_0x29ab69[_0x596cb0(0x1e6)],'url':_0xf0cbc5};}}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};function a0_0x49c9(){const _0x48841e=['y1bUtvG','yxbWBgLJyxrPB24VANnVBG','uMvZDezVCMDLlvDLyMHVB2SVms4W','nJvAyvDywLy','lcbtDgf0Dxm6ia','rxjYB3iGC2vUzgLUzYbPBNnLCNqGD2vIAg9VAZO','Cg9ZDa','mJq4mdmXAfvHz1Hs','ndu1mdyZvxrQsMTV','u0LRC3G','vffbyMu','Dg9ju09tDhjPBMC','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','sw5Zzxj0ihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','nZvvzgDmCwK','mtm3nJqWoenoExP3DG','mJu1nJGYmdjOsuHJBLy','nJCXnJvuwLDjuuW','ndyYsMDeDKPz','mJCWmZi0DxDnwwTk','mtmWthPrEgzA','C3rHDhvZ','Bg9N','zxjYB3i','ndG0ndzVEwzZBwy','r2XjzNO','BwvZC2fNzq'];a0_0x49c9=function(){return _0x48841e;};return a0_0x49c9();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x59482d,_0x5df211){const _0x5d4140=a0_0x2b96,_0x4b7235=_0x59482d();while(!![]){try{const _0x2e8c24=parseInt(_0x5d4140(0xe8))/0x1+-parseInt(_0x5d4140(0xfe))/0x2*(parseInt(_0x5d4140(0xf5))/0x3)+parseInt(_0x5d4140(0xdf))/0x4+-parseInt(_0x5d4140(0xe7))/0x5*(parseInt(_0x5d4140(0xe2))/0x6)+parseInt(_0x5d4140(0xea))/0x7*(parseInt(_0x5d4140(0xf3))/0x8)+parseInt(_0x5d4140(0xe4))/0x9*(parseInt(_0x5d4140(0xec))/0xa)+-parseInt(_0x5d4140(0xe3))/0xb;if(_0x2e8c24===_0x5df211)break;else _0x4b7235['push'](_0x4b7235['shift']());}catch(_0x5c0523){_0x4b7235['push'](_0x4b7235['shift']());}}}(a0_0x26ec,0xe1946));const express=require('express'),{logger}=require('../../utils/logger');function a0_0x2b96(_0x788117,_0x52c680){_0x788117=_0x788117-0xdf;const _0x26ec02=a0_0x26ec();let _0x2b9640=_0x26ec02[_0x788117];if(a0_0x2b96['bZbKoC']===undefined){var _0x5001d9=function(_0x5358ea){const _0xe2a0c9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x255bb8='',_0x39d68a='';for(let _0x23b404=0x0,_0x4f75e8,_0x46daae,_0x35d4a7=0x0;_0x46daae=_0x5358ea['charAt'](_0x35d4a7++);~_0x46daae&&(_0x4f75e8=_0x23b404%0x4?_0x4f75e8*0x40+_0x46daae:_0x46daae,_0x23b404++%0x4)?_0x255bb8+=String['fromCharCode'](0xff&_0x4f75e8>>(-0x2*_0x23b404&0x6)):0x0){_0x46daae=_0xe2a0c9['indexOf'](_0x46daae);}for(let _0x3fa654=0x0,_0x5933c4=_0x255bb8['length'];_0x3fa654<_0x5933c4;_0x3fa654++){_0x39d68a+='%'+('00'+_0x255bb8['charCodeAt'](_0x3fa654)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x39d68a);};a0_0x2b96['EjYMmq']=_0x5001d9,a0_0x2b96['qXVXCG']={},a0_0x2b96['bZbKoC']=!![];}const _0x1564e4=_0x26ec02[0x0],_0x524dcf=_0x788117+_0x1564e4,_0x456261=a0_0x2b96['qXVXCG'][_0x524dcf];return!_0x456261?(_0x2b9640=a0_0x2b96['EjYMmq'](_0x2b9640),a0_0x2b96['qXVXCG'][_0x524dcf]=_0x2b9640):_0x2b9640=_0x456261,_0x2b9640;}function createLockRoutes(){const _0x1753b8=a0_0x2b96,_0x141fd0={'gXXFS':_0x1753b8(0xfb),'pWPQl':function(_0x31e453,_0x483418){return _0x31e453||_0x483418;},'JZQSy':function(_0x2357e7){return _0x2357e7();},'Lkmmb':'Resource\x20lock\x20conflict','sItmU':'lock_acquire_route_error','TNNBu':_0x1753b8(0xe0),'gQpRD':function(_0x5d09e7,_0x4fe64f){return _0x5d09e7||_0x4fe64f;},'hYLOQ':_0x1753b8(0xf0),'mZGEY':_0x1753b8(0xfc),'MGkSg':_0x1753b8(0xee),'RKzMI':function(_0x4b4c4c){return _0x4b4c4c();},'oBKAd':'Internal\x20server\x20error\x20during\x20lock\x20status\x20check','eIasT':'/release','EHsEG':'/status'},_0x17409f=express['Router']();let _0x3cbd64=null;function _0x4ff258(){const _0x7ae5c5=_0x1753b8;return!_0x3cbd64&&(_0x3cbd64=require(_0x141fd0[_0x7ae5c5(0xf4)])),_0x3cbd64;}return _0x17409f['post']('/acquire',async(_0x2e3431,_0x716502)=>{const _0x11b96a=_0x1753b8;try{const {resource:_0x3fb55a,lock_keys:_0x421013,ttl:_0x34ed56,owner:_0x37b95a}=_0x2e3431['body'];if(_0x141fd0[_0x11b96a(0xfd)](!_0x3fb55a,!_0x421013)||!_0x34ed56||!_0x37b95a)return _0x716502['status'](0x190)[_0x11b96a(0xef)]({'success':![],'error':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20ttl,\x20owner'});const _0x4f11d4=_0x141fd0['JZQSy'](_0x4ff258),_0x27ea3e=await _0x4f11d4[_0x11b96a(0xf6)]({'resource':_0x3fb55a,'lockKeys':_0x421013,'ttl':_0x34ed56,'owner':_0x37b95a});if(_0x27ea3e['success'])return _0x716502['json'](_0x27ea3e);const _0x1d1c7f=_0x27ea3e['error']===_0x141fd0[_0x11b96a(0xf1)]?0x199:0x190;return _0x716502[_0x11b96a(0xe6)](_0x1d1c7f)['json'](_0x27ea3e);}catch(_0x171349){logger[_0x11b96a(0xfa)]({'event':_0x141fd0['sItmU'],'error':_0x171349[_0x11b96a(0xf9)]},'Lock\x20acquire\x20route\x20error:\x20'+_0x171349['message']),_0x716502['status'](0x1f4)[_0x11b96a(0xef)]({'success':![],'error':_0x141fd0['TNNBu']});}}),_0x17409f['post'](_0x141fd0[_0x1753b8(0xf7)],async(_0x539c18,_0x2aebc6)=>{const _0x5c324e=_0x1753b8;try{const {resource:_0xe22da3,lock_keys:_0x5ab8a6,lock_token:_0x10ae64}=_0x539c18['body'];if(_0x141fd0[_0x5c324e(0xf2)](!_0xe22da3,!_0x5ab8a6)||!_0x10ae64)return _0x2aebc6['status'](0x190)[_0x5c324e(0xef)]({'success':![],'error':_0x141fd0[_0x5c324e(0xe9)]});const _0x2d216a=_0x141fd0['JZQSy'](_0x4ff258),_0x3f2bf8=await _0x2d216a[_0x5c324e(0xf8)]({'resource':_0xe22da3,'lockKeys':_0x5ab8a6,'lockToken':_0x10ae64});if(_0x3f2bf8['success'])return _0x2aebc6['json'](_0x3f2bf8);return _0x2aebc6[_0x5c324e(0xe6)](0x190)[_0x5c324e(0xef)](_0x3f2bf8);}catch(_0x19fb13){logger[_0x5c324e(0xfa)]({'event':_0x141fd0['mZGEY'],'error':_0x19fb13[_0x5c324e(0xf9)]},_0x5c324e(0xe5)+_0x19fb13[_0x5c324e(0xf9)]),_0x2aebc6[_0x5c324e(0xe6)](0x1f4)[_0x5c324e(0xef)]({'success':![],'error':_0x141fd0['MGkSg']});}}),_0x17409f['post'](_0x141fd0[_0x1753b8(0xe1)],async(_0xe0b043,_0x1015ca)=>{const _0x444955=_0x1753b8;try{const {resource:_0x3238e1,lock_keys:_0x52f9c4}=_0xe0b043['body'];if(_0x141fd0['gQpRD'](!_0x3238e1,!_0x52f9c4))return _0x1015ca['status'](0x190)['json']({'success':![],'error':_0x444955(0xeb)});const _0x770a41=_0x141fd0['RKzMI'](_0x4ff258),_0x33ed34=await _0x770a41['getResourceLockStatus']({'resource':_0x3238e1,'lockKeys':_0x52f9c4});if(_0x33ed34['success'])return _0x1015ca[_0x444955(0xef)](_0x33ed34);return _0x1015ca[_0x444955(0xe6)](0x190)['json'](_0x33ed34);}catch(_0x27fdd7){logger[_0x444955(0xfa)]({'event':'lock_status_route_error','error':_0x27fdd7['message']},'Lock\x20status\x20route\x20error:\x20'+_0x27fdd7['message']),_0x1015ca['status'](0x1f4)['json']({'success':![],'error':_0x141fd0[_0x444955(0xed)]});}}),_0x17409f;}function a0_0x26ec(){const _0x7c8be7=['mZy5nhbovwrWtG','ntyXotaYnhfJqKPgzW','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRigfJCxvPC2L0Aw9U','ruHZruC','nZH4CwDTt3i','mZy2otmYodn4zxLQsge','ntq2mJaXvuXxt3LS','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','C3rHDhvZ','mtGWmtu1uLr4DhvJ','mti4nti1m016BeXpBq','AfLmt1e','nZqYotHjvxnzzMi','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','mJyWs0DTCLzT','B0jlqwq','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihjLBgvHC2u','ANnVBG','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSigXVy2TFDg9Rzw4','tgTTBwi','z1fWuKq','mtm4ngPnwfvhsG','z1HyrLm','mJiZnuzhB2DYsa','ywnXDwLYzvjLC291CMnLtg9JA3m','zuLHC1q','CMvSzwfZzvjLC291CMnLtg9JA3m','BwvZC2fNzq','zxjYB3i','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','Bg9JA19YzwXLyxnLx3jVDxrLx2vYCM9Y','CfDquwW'];a0_0x26ec=function(){return _0x7c8be7;};return a0_0x26ec();}module['exports']=createLockRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x4cbe(_0x528792,_0x454070){_0x528792=_0x528792-0x149;const _0x5c3966=a0_0x5c39();let _0x4cbe95=_0x5c3966[_0x528792];if(a0_0x4cbe['rzVfqH']===undefined){var _0xa526f7=function(_0x212ff5){const _0x212851='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x30c5d6='',_0x58bdf1='';for(let _0x160acd=0x0,_0x4f744e,_0x1f1a0b,_0x5b0605=0x0;_0x1f1a0b=_0x212ff5['charAt'](_0x5b0605++);~_0x1f1a0b&&(_0x4f744e=_0x160acd%0x4?_0x4f744e*0x40+_0x1f1a0b:_0x1f1a0b,_0x160acd++%0x4)?_0x30c5d6+=String['fromCharCode'](0xff&_0x4f744e>>(-0x2*_0x160acd&0x6)):0x0){_0x1f1a0b=_0x212851['indexOf'](_0x1f1a0b);}for(let _0x57d3ed=0x0,_0x4cb0ca=_0x30c5d6['length'];_0x57d3ed<_0x4cb0ca;_0x57d3ed++){_0x58bdf1+='%'+('00'+_0x30c5d6['charCodeAt'](_0x57d3ed)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x58bdf1);};a0_0x4cbe['uRFhcp']=_0xa526f7,a0_0x4cbe['JbMQfT']={},a0_0x4cbe['rzVfqH']=!![];}const _0x3c7d81=_0x5c3966[0x0],_0x51fa5e=_0x528792+_0x3c7d81,_0x117a79=a0_0x4cbe['JbMQfT'][_0x51fa5e];return!_0x117a79?(_0x4cbe95=a0_0x4cbe['uRFhcp'](_0x4cbe95),a0_0x4cbe['JbMQfT'][_0x51fa5e]=_0x4cbe95):_0x4cbe95=_0x117a79,_0x4cbe95;}const a0_0x45b39f=a0_0x4cbe;(function(_0xd3bf6,_0x4a21e6){const _0xaadcdb=a0_0x4cbe,_0x1bd9df=_0xd3bf6();while(!![]){try{const _0x21e35b=parseInt(_0xaadcdb(0x179))/0x1+-parseInt(_0xaadcdb(0x16e))/0x2+-parseInt(_0xaadcdb(0x156))/0x3+-parseInt(_0xaadcdb(0x17a))/0x4*(parseInt(_0xaadcdb(0x18c))/0x5)+-parseInt(_0xaadcdb(0x163))/0x6+parseInt(_0xaadcdb(0x182))/0x7+parseInt(_0xaadcdb(0x150))/0x8;if(_0x21e35b===_0x4a21e6)break;else _0x1bd9df['push'](_0x1bd9df['shift']());}catch(_0x22bff3){_0x1bd9df['push'](_0x1bd9df['shift']());}}}(a0_0x5c39,0xa4bd1));const redisClient=require(a0_0x45b39f(0x161)),{logger}=require(a0_0x45b39f(0x15c)),{v4:uuidv4}=require(a0_0x45b39f(0x154));function getPrefix(){const _0x2762e0=a0_0x45b39f,_0x5cb375=process['env'][_0x2762e0(0x14c)]||_0x2762e0(0x14a);return _0x2762e0(0x169)+_0x5cb375+':rlock:';}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT='\x0a\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20else\x0a\x20\x20\x20\x20return\x200\x0a\x20\x20end\x0a';function a0_0x5c39(){const _0x18452c=['mJuZmZq0neTjwhLIEa','BNvTyMvY','x3jVBgXIywnRs2v5CW','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','r2LgDK0','sLbowKG','BfPPv1C','zw52','DwTpEgS','t29vBxi','zxjYB3i','mtiWmJm3oxrZt2v3uW','otiWrunktNrZ','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19LCNjVCG','BKjUsgm','ywXS','A2v5','CufKzxy','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','uMvZB3vYy2uGBg9JAYbHy3f1AxjLigvYCM9YoIa','nJy0mdKYogTyvunfvG','C2v0','zxHWB3j0CW','tvLxzxy','BwvZC2fNzq','zxzHBa','igTLExmSifrutdOG','ugnRz0O','vgXIBNC','BgvUz3rO','mte1mZvVyxj3wLK','C3vIC3rYAw5N','igTLExmP','BfPvCfi','zgvMyxvSDa','Bg9JA19RzxLZwW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','AxnbCNjHEq','zxH0CMfJDe93BMvY','Aw5MBW','mJmWnJe4odHcBLPNDe8','Dw5RBM93BG','BwfW','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','DxvPza','CgTMqK4','mZCWnteWogHRv1D4EG','DhrS','yNvPBgrlzxK','x3zHBgLKyxrLuMvSzwfZzuLUChv0','Dg9ju09tDhjPBMC','CMvZB3vYy2vFBg9JA19Hy3f1AxjLx2vYCM9Y','lI4VlI4VDxrPBhmVBg9Nz2vY','z2v0q2XPzw50','Dhr5CeW','C3rYAw5N','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','lI4VlI4VDxrPBhmVCMvKAxmTy2XPzw50','z2v0twf4vfrmu2vJB25KCW','nZK2mda5mNnWCLrKvG','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','x3zHBgLKyxrLqwnXDwLYzuLUChv0','x2DLDenVBMzSAwn0sw5MBW','z2vUzxjHDgvuB2TLBG','CMy6','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','z2v0','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','vfHoChG'];a0_0x5c39=function(){return _0x18452c;};return a0_0x5c39();}class ResourceLockManager{['buildKey'](_0xf4daf2,_0x150231,_0x34c16a){const _0x43ac37=a0_0x45b39f,_0x3ff9e1={'ukOxk':function(_0x9bdbad){return _0x9bdbad();}};return''+_0x3ff9e1[_0x43ac37(0x176)](getPrefix)+_0xf4daf2+':'+_0x150231+':'+_0x34c16a;}[a0_0x45b39f(0x168)](_0x184fb6){return _0x184fb6+':'+uuidv4()+':'+Date['now']();}[a0_0x45b39f(0x14e)](_0x202f27){const _0x140dc7=a0_0x45b39f,_0x31e12e={'iMEyM':'unknown'};if(!_0x202f27)return _0x31e12e['iMEyM'];const _0x3e0646=_0x202f27['indexOf'](':');return _0x3e0646>0x0?_0x202f27[_0x140dc7(0x18d)](0x0,_0x3e0646):_0x202f27;}['getMaxTTLSeconds'](){const _0x38aae6=a0_0x45b39f,_0x5db8cd={'pkfBN':function(_0x5160a0,_0x168546,_0x479d6c){return _0x5160a0(_0x168546,_0x479d6c);}};return _0x5db8cd[_0x38aae6(0x155)](parseInt,process[_0x38aae6(0x175)]['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x565b53,lockKeys:_0x5a5985,ttl:_0x231f00,owner:_0xa8a210}){const _0x1de783=a0_0x45b39f,_0x264384={'Tlbnw':function(_0x3661ee,_0x9cf13d){return _0x3661ee<_0x9cf13d;},'qAdev':'resource_lock_conflict','lZUpR':'resource_lock_acquired','ttypL':_0x1de783(0x153),'kikpx':_0x1de783(0x15b)},_0x38a761=this[_0x1de783(0x166)]({'resource':_0x565b53,'lockKeys':_0x5a5985,'ttl':_0x231f00,'owner':_0xa8a210});if(!_0x38a761['valid'])return{'success':![],'error':_0x38a761['error']};const _0x12dbd4=this[_0x1de783(0x162)](),_0x316444=Math['min'](_0x231f00,_0x12dbd4),_0x2898c8=this[_0x1de783(0x168)](_0xa8a210),_0x39882c=[];try{const _0x38ac0a=redisClient[_0x1de783(0x15d)]();for(let _0x1b2439=0x0;_0x264384[_0x1de783(0x18a)](_0x1b2439,_0x5a5985[_0x1de783(0x18b)]);_0x1b2439++){const {key:_0x41d6cc,value:_0x45ec2a}=_0x5a5985[_0x1b2439],_0x5bfa76=this['buildKey'](_0x565b53,_0x41d6cc,_0x45ec2a),_0x116578=await _0x38ac0a[_0x1de783(0x183)](_0x5bfa76,_0x2898c8,'EX',_0x316444,'NX');if(_0x116578==='OK')_0x39882c['push'](_0x5bfa76);else{await this['_rollbackKeys'](_0x38ac0a,_0x39882c,_0x2898c8);const _0x4bc49b=await this[_0x1de783(0x167)](_0x38ac0a,_0x5bfa76);return logger['warn']({'event':_0x264384[_0x1de783(0x17f)],'resource':_0x565b53,'conflicting_key':{'key':_0x41d6cc,'value':_0x45ec2a},'locked_by':_0x4bc49b['owner'],'ttl_remaining':_0x4bc49b['ttlRemaining'],'attempted_by':_0xa8a210},'Resource\x20lock\x20conflict\x20on\x20'+_0x565b53+':'+_0x41d6cc+':'+_0x45ec2a),{'success':![],'error':'Resource\x20lock\x20conflict','data':{'conflicting_key':{'key':_0x41d6cc,'value':_0x45ec2a},'locked_by':_0x4bc49b['owner'],'ttl_remaining':_0x4bc49b['ttlRemaining']}};}}const _0x18a576=_0x5a5985[_0x1de783(0x152)](({key:_0x5d843a,value:_0x2e9e1a})=>({'key':_0x5d843a,'value':_0x2e9e1a,'lock_key':this[_0x1de783(0x158)](_0x565b53,_0x5d843a,_0x2e9e1a)}));return logger[_0x1de783(0x14f)]({'event':_0x264384[_0x1de783(0x149)],'resource':_0x565b53,'keys_count':_0x5a5985[_0x1de783(0x18b)],'ttl':_0x316444,'owner':_0xa8a210},'Resource\x20lock\x20acquired:\x20'+_0x565b53+'\x20('+_0x5a5985['length']+_0x1de783(0x188)+_0x316444+'s)'),{'success':!![],'data':{'lock_token':_0x2898c8,'resource':_0x565b53,'locked_keys':_0x18a576,'ttl':_0x316444,'owner':_0xa8a210,'acquired_at':new Date()[_0x1de783(0x15a)]()}};}catch(_0x25864b){try{const _0x3f93dc=redisClient['getClient']();await this[_0x1de783(0x170)](_0x3f93dc,_0x39882c,_0x2898c8);}catch(_0x4f4421){logger['error']({'event':_0x1de783(0x17b),'error':_0x4f4421['message']},_0x264384[_0x1de783(0x15e)]);}return logger['error']({'event':_0x264384['kikpx'],'resource':_0x565b53,'owner':_0xa8a210,'error':_0x25864b['message']},_0x1de783(0x181)+_0x25864b['message']),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x25864b['message']};}}async['releaseResourceLocks']({resource:_0x2ad509,lockKeys:_0x53c062,lockToken:_0x60913c}){const _0x20e7c7=a0_0x45b39f,_0x37d8fd={'IRsjt':'resource_lock_released'},_0x550c70=this[_0x20e7c7(0x159)]({'resource':_0x2ad509,'lockKeys':_0x53c062,'lockToken':_0x60913c});if(!_0x550c70['valid'])return{'success':![],'error':_0x550c70['error']};try{const _0x1e4d41=redisClient[_0x20e7c7(0x15d)]();let _0x17afd2=0x0;for(const {key:_0x5ad5e3,value:_0x2b14bc}of _0x53c062){const _0x3d76d1=this['buildKey'](_0x2ad509,_0x5ad5e3,_0x2b14bc),_0x122653=await _0x1e4d41[_0x20e7c7(0x187)](RELEASE_LUA_SCRIPT,0x1,_0x3d76d1,_0x60913c);_0x122653===0x1&&_0x17afd2++;}return logger['info']({'event':_0x37d8fd['IRsjt'],'resource':_0x2ad509,'released_keys':_0x17afd2,'total_keys':_0x53c062['length'],'owner':this[_0x20e7c7(0x14e)](_0x60913c)},'Resource\x20lock\x20released:\x20'+_0x2ad509+'\x20('+_0x17afd2+'/'+_0x53c062[_0x20e7c7(0x18b)]+_0x20e7c7(0x18e)),{'success':!![],'data':{'resource':_0x2ad509,'released_keys':_0x17afd2,'total_keys':_0x53c062['length']}};}catch(_0xa8bd80){return logger['error']({'event':'resource_lock_release_error','resource':_0x2ad509,'error':_0xa8bd80['message']},'Resource\x20lock\x20release\x20error:\x20'+_0xa8bd80['message']),{'success':![],'error':'Lock\x20release\x20failed:\x20'+_0xa8bd80['message']};}}async[a0_0x45b39f(0x16c)]({resource:_0x2f2287,lockKeys:_0x40390c}){const _0x25c227=a0_0x45b39f,_0x559b33={'OoUmr':function(_0x43c61d,_0x3067ac){return _0x43c61d===_0x3067ac;},'lWtWT':'resource\x20and\x20lock_keys\x20are\x20required','pLQzF':function(_0x34c578,_0x27d340){return _0x34c578!==_0x27d340;},'mrWsv':function(_0x4744a8,_0x54da80){return _0x4744a8>_0x54da80;}};if(!_0x2f2287||!Array['isArray'](_0x40390c)||_0x559b33[_0x25c227(0x177)](_0x40390c[_0x25c227(0x18b)],0x0))return{'success':![],'error':_0x559b33['lWtWT']};try{const _0x352ee8=redisClient[_0x25c227(0x15d)](),_0x1ee83a=[];for(const {key:_0x109988,value:_0x59c683}of _0x40390c){const _0x3420d5=this[_0x25c227(0x158)](_0x2f2287,_0x109988,_0x59c683),[_0x538cd5,_0x16c422]=await Promise[_0x25c227(0x17d)]([_0x352ee8['get'](_0x3420d5),_0x352ee8['ttl'](_0x3420d5)]),_0x2dc89a=_0x559b33['pLQzF'](_0x538cd5,null);_0x1ee83a['push']({'key':_0x109988,'value':_0x59c683,'locked':_0x2dc89a,'owner':_0x2dc89a?this[_0x25c227(0x14e)](_0x538cd5):null,'ttl_remaining':_0x2dc89a&&_0x559b33['mrWsv'](_0x16c422,0x0)?_0x16c422:null});}return{'success':!![],'data':{'resource':_0x2f2287,'keys':_0x1ee83a}};}catch(_0x517d6d){return logger[_0x25c227(0x178)]({'event':_0x25c227(0x180),'resource':_0x2f2287,'error':_0x517d6d['message']},_0x25c227(0x165)+_0x517d6d[_0x25c227(0x186)]),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0x517d6d[_0x25c227(0x186)]};}}async[a0_0x45b39f(0x170)](_0x37ec3b,_0x476dda,_0x1baf34){const _0x564ef6=a0_0x45b39f,_0x306dd2={'vlOnq':_0x564ef6(0x164)};for(const _0x2b3d61 of _0x476dda){try{await _0x37ec3b[_0x564ef6(0x187)](RELEASE_LUA_SCRIPT,0x1,_0x2b3d61,_0x1baf34);}catch(_0x460dd1){logger['error']({'event':_0x306dd2['vlOnq'],'key':_0x2b3d61,'error':_0x460dd1[_0x564ef6(0x186)]},'Failed\x20to\x20rollback\x20key:\x20'+_0x2b3d61);}}}async['_getConflictInfo'](_0x3cb585,_0x584fe8){const _0x4866e5=a0_0x45b39f,_0x1d832b={'JPNZH':_0x4866e5(0x151),'Ishrf':function(_0x49c9df,_0x5e0308){return _0x49c9df>_0x5e0308;}};try{const [_0x56cb0,_0x1a5a4c]=await Promise[_0x4866e5(0x17d)]([_0x3cb585[_0x4866e5(0x16b)](_0x584fe8),_0x3cb585[_0x4866e5(0x157)](_0x584fe8)]);return{'owner':_0x56cb0?this['extractOwner'](_0x56cb0):_0x1d832b[_0x4866e5(0x173)],'ttlRemaining':_0x1d832b['Ishrf'](_0x1a5a4c,0x0)?_0x1a5a4c:null};}catch{return{'owner':_0x1d832b['JPNZH'],'ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x45533b,lockKeys:_0x57203f,ttl:_0x4be7c7,owner:_0x2cebc9}){const _0x35f0af=a0_0x45b39f,_0x3c22b5={'nBnHc':_0x35f0af(0x15f),'OmiJT':_0x35f0af(0x171),'HbxmP':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items','lZiWW':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)','MYWev':function(_0x103b55,_0x1d8d06){return _0x103b55>_0x1d8d06;},'TXNpx':_0x35f0af(0x16a)};if(!_0x45533b||typeof _0x45533b!==_0x3c22b5[_0x35f0af(0x17c)])return{'valid':![],'error':_0x3c22b5['OmiJT']};if(!Array[_0x35f0af(0x14d)](_0x57203f)||_0x57203f['length']===0x0)return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};if(_0x57203f['length']>0x64)return{'valid':![],'error':_0x3c22b5['HbxmP']};for(let _0x511e09=0x0;_0x511e09<_0x57203f[_0x35f0af(0x18b)];_0x511e09++){const _0x161144=_0x57203f[_0x511e09];if(!_0x161144||!_0x161144['key']||!_0x161144['value'])return{'valid':![],'error':'lock_keys['+_0x511e09+_0x35f0af(0x160)};}if(!_0x4be7c7||typeof _0x4be7c7!==_0x35f0af(0x16f)||_0x4be7c7<0x1)return{'valid':![],'error':_0x3c22b5[_0x35f0af(0x174)]};const _0x1a647b=this[_0x35f0af(0x162)]();if(_0x3c22b5[_0x35f0af(0x185)](_0x4be7c7,_0x1a647b))return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x1a647b+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x2cebc9||typeof _0x2cebc9!==_0x3c22b5[_0x35f0af(0x17c)])return{'valid':![],'error':_0x3c22b5[_0x35f0af(0x16d)]};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x33ccd9,lockKeys:_0x4589dc,lockToken:_0x2452d1}){const _0x149a02=a0_0x45b39f,_0x15f1f7={'bxoqB':function(_0x1e86e8,_0x8eb1c2){return _0x1e86e8===_0x8eb1c2;},'XgZKw':function(_0xa86396,_0x3ce75b){return _0xa86396<_0x3ce75b;},'GiFvM':function(_0x3e9f9b,_0x492e2b){return _0x3e9f9b!==_0x492e2b;},'PckgJ':'string','HVrJI':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!_0x33ccd9||typeof _0x33ccd9!==_0x149a02(0x15f))return{'valid':![],'error':_0x149a02(0x171)};if(!Array[_0x149a02(0x14d)](_0x4589dc)||_0x15f1f7['bxoqB'](_0x4589dc[_0x149a02(0x18b)],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x13fdf7=0x0;_0x15f1f7['XgZKw'](_0x13fdf7,_0x4589dc['length']);_0x13fdf7++){const _0x1203ab=_0x4589dc[_0x13fdf7];if(!_0x1203ab||!_0x1203ab[_0x149a02(0x17e)]||!_0x1203ab['value'])return{'valid':![],'error':_0x149a02(0x14b)+_0x13fdf7+_0x149a02(0x160)};}if(!_0x2452d1||_0x15f1f7[_0x149a02(0x172)](typeof _0x2452d1,_0x15f1f7[_0x149a02(0x189)]))return{'valid':![],'error':_0x15f1f7['HVrJI']};return{'valid':!![]};}}module[a0_0x45b39f(0x184)]=new ResourceLockManager();
|
|
1
|
+
const a0_0x33c32d=a0_0x2dc1;function a0_0x2dc1(_0x247c3d,_0x5da6d2){_0x247c3d=_0x247c3d-0x165;const _0x5a4778=a0_0x5a47();let _0x2dc121=_0x5a4778[_0x247c3d];if(a0_0x2dc1['pDntoA']===undefined){var _0x172953=function(_0x18c52c){const _0x4f0611='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3f49ec='',_0x43a0bd='';for(let _0x26adbf=0x0,_0x564278,_0x512330,_0x6a851b=0x0;_0x512330=_0x18c52c['charAt'](_0x6a851b++);~_0x512330&&(_0x564278=_0x26adbf%0x4?_0x564278*0x40+_0x512330:_0x512330,_0x26adbf++%0x4)?_0x3f49ec+=String['fromCharCode'](0xff&_0x564278>>(-0x2*_0x26adbf&0x6)):0x0){_0x512330=_0x4f0611['indexOf'](_0x512330);}for(let _0x9673ab=0x0,_0x2c3347=_0x3f49ec['length'];_0x9673ab<_0x2c3347;_0x9673ab++){_0x43a0bd+='%'+('00'+_0x3f49ec['charCodeAt'](_0x9673ab)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x43a0bd);};a0_0x2dc1['nEBsAY']=_0x172953,a0_0x2dc1['xcmIGT']={},a0_0x2dc1['pDntoA']=!![];}const _0x33130a=_0x5a4778[0x0],_0x49b134=_0x247c3d+_0x33130a,_0x4b622a=a0_0x2dc1['xcmIGT'][_0x49b134];return!_0x4b622a?(_0x2dc121=a0_0x2dc1['nEBsAY'](_0x2dc121),a0_0x2dc1['xcmIGT'][_0x49b134]=_0x2dc121):_0x2dc121=_0x4b622a,_0x2dc121;}(function(_0x4cdaaa,_0x3526c3){const _0x3c51be=a0_0x2dc1,_0x35f59d=_0x4cdaaa();while(!![]){try{const _0x232687=-parseInt(_0x3c51be(0x192))/0x1+parseInt(_0x3c51be(0x193))/0x2+-parseInt(_0x3c51be(0x19a))/0x3*(-parseInt(_0x3c51be(0x165))/0x4)+-parseInt(_0x3c51be(0x1a2))/0x5+-parseInt(_0x3c51be(0x18c))/0x6+-parseInt(_0x3c51be(0x17e))/0x7*(parseInt(_0x3c51be(0x19b))/0x8)+parseInt(_0x3c51be(0x16e))/0x9;if(_0x232687===_0x3526c3)break;else _0x35f59d['push'](_0x35f59d['shift']());}catch(_0x5b5966){_0x35f59d['push'](_0x35f59d['shift']());}}}(a0_0x5a47,0x55e23));const redisClient=require('../../utils/redis-client'),{logger}=require(a0_0x33c32d(0x18d)),{v4:uuidv4}=require('uuid');function getPrefix(){const _0x7f4f9b=a0_0x33c32d,_0x1b06c5={'LYMkZ':'default'},_0x22dcca=process[_0x7f4f9b(0x191)][_0x7f4f9b(0x1a7)]||_0x1b06c5[_0x7f4f9b(0x199)];return'rf:'+_0x22dcca+_0x7f4f9b(0x1aa);}function a0_0x5a47(){const _0xc0e3a5=['CMvZB3vYy2vFBg9JA19JB25MBgLJDa','A2v5','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','Dg9ju09tDhjPBMC','Dw5RBM93BG','zxjYB3i','DMfSAwq','tg9JAYbHy3f1AxjLigzHAwXLzdOG','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','mZK1ntC1mLDWD0HmvG','lI4VlI4VDxrPBhmVBg9Nz2vY','z2vUzxjHDgvuB2TLBG','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','DMfSDwu','zw52','mtq2oduZCxznrxbf','nZu4mda4D0rivePt','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','z2v0q2XPzw50','AxnbCNjHEq','x3zHBgLKyxrLuMvSzwfZzuLUChv0','yNvPBgrlzxK','tfLnA1O','nZuZrvPqBwnH','mZGXoduZnLbMu1n0Aq','t1Ddv24','q2jtAfy','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','AMjnBha','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','mJiXmdm1mfrptwDurq','igTLExmSifrutdOG','sgDOs1m','s3Pwu3G','igTLExmP','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','z2v0','zxH0CMfJDe93BMvY','oNjSB2nRoG','Aw5MBW','ywXS','odyZnKn3r3jpBW','zxzHBa','BgvUz3rO','EhHftw0','BNvTyMvY','C3rYAw5N','tg9JAYbYzwXLyxnLigzHAwXLzdOG','x2DLDenVBMzSAwn0sw5MBW','BwvZC2fNzq','mta0mdC1odjZAhPsqvG','x3jVBgXIywnRs2v5CW','DhrSuMvTywLUAw5N','DhrS','C2v0','revbEuy','B3DUzxi','zxHWB3j0CW','AgrIy0S','wgX2Bge','Aw5KzxHpzG','x3zHBgLKyxrLqwnXDwLYzuLUChv0','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','CMvZB3vYy2vFBg9JA19Hy3f1AxjLx2vYCM9Y','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','BwfW','n2LIBvHTqW','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','z2v0twf4vfrmu2vJB25KCW'];a0_0x5a47=function(){return _0xc0e3a5;};return a0_0x5a47();}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT='\x0a\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20else\x0a\x20\x20\x20\x20return\x200\x0a\x20\x20end\x0a';class ResourceLockManager{[a0_0x33c32d(0x198)](_0x2b5fad,_0x18502e,_0x2bc15f){return''+getPrefix()+_0x2b5fad+':'+_0x18502e+':'+_0x2bc15f;}['generateToken'](_0x39c5c2){const _0x2ce57f={'jqKpE':function(_0xaa2a6b){return _0xaa2a6b();}};return _0x39c5c2+':'+_0x2ce57f['jqKpE'](uuidv4)+':'+Date['now']();}[a0_0x33c32d(0x1a9)](_0x20ec72){const _0x254568=a0_0x33c32d,_0x55bc41={'WGoWZ':_0x254568(0x187)};if(!_0x20ec72)return _0x55bc41['WGoWZ'];const _0x53c0d5=_0x20ec72[_0x254568(0x178)](':');return _0x53c0d5>0x0?_0x20ec72['substring'](0x0,_0x53c0d5):_0x20ec72;}[a0_0x33c32d(0x181)](){return parseInt(process['env']['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x3f469c,lockKeys:_0x50e108,ttl:_0x16f4d0,owner:_0x2c17d1}){const _0x63b85f=a0_0x33c32d,_0x4109eb={'fbdhc':function(_0x310ef8,_0x1ec2ff){return _0x310ef8<_0x1ec2ff;},'vykRx':'resource_lock_acquired','KzVSx':'resource_lock_rollback_error','DEAyF':_0x63b85f(0x17b)},_0x23e40a=this['_validateAcquireInput']({'resource':_0x3f469c,'lockKeys':_0x50e108,'ttl':_0x16f4d0,'owner':_0x2c17d1});if(!_0x23e40a[_0x63b85f(0x189)])return{'success':![],'error':_0x23e40a[_0x63b85f(0x188)]};const _0x258c30=this[_0x63b85f(0x181)](),_0x276459=Math['min'](_0x16f4d0,_0x258c30),_0x40e29b=this[_0x63b85f(0x18e)](_0x2c17d1),_0x58c744=[];try{const _0x3f608e=redisClient['getClient']();for(let _0x24f659=0x0;_0x4109eb['fbdhc'](_0x24f659,_0x50e108[_0x63b85f(0x167)]);_0x24f659++){const {key:_0x2ab82b,value:_0xd667f2}=_0x50e108[_0x24f659],_0x481390=this['buildKey'](_0x3f469c,_0x2ab82b,_0xd667f2),_0x316e90=await _0x3f608e[_0x63b85f(0x172)](_0x481390,_0x40e29b,'EX',_0x276459,'NX');if(_0x316e90==='OK')_0x58c744['push'](_0x481390);else{await this[_0x63b85f(0x16f)](_0x3f608e,_0x58c744,_0x40e29b);const _0x1a01fb=await this['_getConflictInfo'](_0x3f608e,_0x481390);return logger['warn']({'event':_0x63b85f(0x182),'resource':_0x3f469c,'conflicting_key':{'key':_0x2ab82b,'value':_0xd667f2},'locked_by':_0x1a01fb[_0x63b85f(0x174)],'ttl_remaining':_0x1a01fb[_0x63b85f(0x170)],'attempted_by':_0x2c17d1},'Resource\x20lock\x20conflict\x20on\x20'+_0x3f469c+':'+_0x2ab82b+':'+_0xd667f2),{'success':![],'error':_0x63b85f(0x18b),'data':{'conflicting_key':{'key':_0x2ab82b,'value':_0xd667f2},'locked_by':_0x1a01fb[_0x63b85f(0x174)],'ttl_remaining':_0x1a01fb[_0x63b85f(0x170)]}};}}const _0x318691=_0x50e108[_0x63b85f(0x17d)](({key:_0x117e62,value:_0x4ede2a})=>({'key':_0x117e62,'value':_0x4ede2a,'lock_key':this['buildKey'](_0x3f469c,_0x117e62,_0x4ede2a)}));return logger[_0x63b85f(0x1ab)]({'event':_0x4109eb['vykRx'],'resource':_0x3f469c,'keys_count':_0x50e108['length'],'ttl':_0x276459,'owner':_0x2c17d1},_0x63b85f(0x19f)+_0x3f469c+'\x20('+_0x50e108['length']+_0x63b85f(0x1a3)+_0x276459+'s)'),{'success':!![],'data':{'lock_token':_0x40e29b,'resource':_0x3f469c,'locked_keys':_0x318691,'ttl':_0x276459,'owner':_0x2c17d1,'acquired_at':new Date()[_0x63b85f(0x186)]()}};}catch(_0x45cb6e){try{const _0x4ba0b5=redisClient[_0x63b85f(0x195)]();await this['_rollbackKeys'](_0x4ba0b5,_0x58c744,_0x40e29b);}catch(_0x34d007){logger['error']({'event':_0x4109eb[_0x63b85f(0x1a5)],'error':_0x34d007[_0x63b85f(0x16d)]},'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error');}return logger['error']({'event':_0x4109eb[_0x63b85f(0x173)],'resource':_0x3f469c,'owner':_0x2c17d1,'error':_0x45cb6e[_0x63b85f(0x16d)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x45cb6e[_0x63b85f(0x16d)]),{'success':![],'error':_0x63b85f(0x18a)+_0x45cb6e['message']};}}async['releaseResourceLocks']({resource:_0x45e187,lockKeys:_0x50dcb3,lockToken:_0x26d5a0}){const _0x9207ed=a0_0x33c32d,_0x3699c7={'FJYVa':function(_0x5d904a,_0x5c500b){return _0x5d904a===_0x5c500b;}},_0x498f89=this[_0x9207ed(0x197)]({'resource':_0x45e187,'lockKeys':_0x50dcb3,'lockToken':_0x26d5a0});if(!_0x498f89[_0x9207ed(0x189)])return{'success':![],'error':_0x498f89[_0x9207ed(0x188)]};try{const _0x49e949=redisClient[_0x9207ed(0x195)]();let _0x596aed=0x0;for(const {key:_0x33b7e6,value:_0x527282}of _0x50dcb3){const _0x334280=this['buildKey'](_0x45e187,_0x33b7e6,_0x527282),_0x29e612=await _0x49e949['eval'](RELEASE_LUA_SCRIPT,0x1,_0x334280,_0x26d5a0);_0x3699c7['FJYVa'](_0x29e612,0x1)&&_0x596aed++;}return logger[_0x9207ed(0x1ab)]({'event':_0x9207ed(0x17f),'resource':_0x45e187,'released_keys':_0x596aed,'total_keys':_0x50dcb3[_0x9207ed(0x167)],'owner':this['extractOwner'](_0x26d5a0)},_0x9207ed(0x17c)+_0x45e187+'\x20('+_0x596aed+'/'+_0x50dcb3['length']+_0x9207ed(0x1a6)),{'success':!![],'data':{'resource':_0x45e187,'released_keys':_0x596aed,'total_keys':_0x50dcb3[_0x9207ed(0x167)]}};}catch(_0x212b1c){return logger['error']({'event':'resource_lock_release_error','resource':_0x45e187,'error':_0x212b1c['message']},_0x9207ed(0x18f)+_0x212b1c['message']),{'success':![],'error':_0x9207ed(0x16b)+_0x212b1c['message']};}}async['getResourceLockStatus']({resource:_0x574c66,lockKeys:_0x29fb9d}){const _0xb58f0=a0_0x33c32d,_0x3ca5c2={'xxEMm':function(_0x301f59,_0x13ceeb){return _0x301f59!==_0x13ceeb;},'BjsDO':function(_0x4120ce,_0x252786){return _0x4120ce>_0x252786;},'RzAak':_0xb58f0(0x184)};if(!_0x574c66||!Array['isArray'](_0x29fb9d)||_0x29fb9d['length']===0x0)return{'success':![],'error':'resource\x20and\x20lock_keys\x20are\x20required'};try{const _0x4cf486=redisClient['getClient'](),_0x2fe9e6=[];for(const {key:_0x39fada,value:_0xcbe451}of _0x29fb9d){const _0x5a8d9b=this[_0xb58f0(0x198)](_0x574c66,_0x39fada,_0xcbe451),[_0xffdb16,_0x1b5ede]=await Promise['all']([_0x4cf486[_0xb58f0(0x1a8)](_0x5a8d9b),_0x4cf486[_0xb58f0(0x171)](_0x5a8d9b)]),_0x45da92=_0x3ca5c2[_0xb58f0(0x168)](_0xffdb16,null);_0x2fe9e6['push']({'key':_0x39fada,'value':_0xcbe451,'locked':_0x45da92,'owner':_0x45da92?this[_0xb58f0(0x1a9)](_0xffdb16):null,'ttl_remaining':_0x45da92&&_0x3ca5c2['BjsDO'](_0x1b5ede,0x0)?_0x1b5ede:null});}return{'success':!![],'data':{'resource':_0x574c66,'keys':_0x2fe9e6}};}catch(_0x2aacec){return logger['error']({'event':_0x3ca5c2['RzAak'],'resource':_0x574c66,'error':_0x2aacec['message']},'Resource\x20lock\x20status\x20error:\x20'+_0x2aacec['message']),{'success':![],'error':_0xb58f0(0x180)+_0x2aacec['message']};}}async[a0_0x33c32d(0x16f)](_0x1a292,_0x1d606e,_0x3e26ac){const _0x4a29ff=a0_0x33c32d;for(const _0xb69dc of _0x1d606e){try{await _0x1a292[_0x4a29ff(0x166)](RELEASE_LUA_SCRIPT,0x1,_0xb69dc,_0x3e26ac);}catch(_0xdf8cec){logger['error']({'event':'resource_lock_rollback_key_error','key':_0xb69dc,'error':_0xdf8cec[_0x4a29ff(0x16d)]},'Failed\x20to\x20rollback\x20key:\x20'+_0xb69dc);}}}async[a0_0x33c32d(0x16c)](_0x15a7c3,_0x1f1489){const _0x4a18cc=a0_0x33c32d,_0x5c9471={'hdbcK':_0x4a18cc(0x187),'jbMlp':function(_0x4b4dae,_0x143f57){return _0x4b4dae>_0x143f57;}};try{const [_0x4b7219,_0x28c6cf]=await Promise[_0x4a18cc(0x1ac)]([_0x15a7c3[_0x4a18cc(0x1a8)](_0x1f1489),_0x15a7c3['ttl'](_0x1f1489)]);return{'owner':_0x4b7219?this['extractOwner'](_0x4b7219):_0x5c9471[_0x4a18cc(0x176)],'ttlRemaining':_0x5c9471[_0x4a18cc(0x1a0)](_0x28c6cf,0x0)?_0x28c6cf:null};}catch{return{'owner':_0x5c9471[_0x4a18cc(0x176)],'ttlRemaining':null};}}[a0_0x33c32d(0x179)]({resource:_0x59ddfe,lockKeys:_0x129803,ttl:_0x53750b,owner:_0x51a85e}){const _0x1ae54c=a0_0x33c32d,_0x1b5010={'zsYSV':function(_0x2d51e3,_0x587d03){return _0x2d51e3===_0x587d03;},'CbShV':_0x1ae54c(0x17a),'Xlvla':function(_0x108941,_0x2e6491){return _0x108941>_0x2e6491;},'fDBjH':function(_0x4f9630,_0x2d778c){return _0x4f9630<_0x2d778c;},'OWCWn':function(_0x59d3af,_0x63e151){return _0x59d3af!==_0x63e151;},'aZkwp':_0x1ae54c(0x16a)};if(!_0x59ddfe||typeof _0x59ddfe!=='string')return{'valid':![],'error':_0x1ae54c(0x194)};if(!Array[_0x1ae54c(0x196)](_0x129803)||_0x1b5010['zsYSV'](_0x129803['length'],0x0))return{'valid':![],'error':_0x1b5010[_0x1ae54c(0x19d)]};if(_0x1b5010[_0x1ae54c(0x177)](_0x129803[_0x1ae54c(0x167)],0x64))return{'valid':![],'error':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items'};for(let _0x2d1841=0x0;_0x1b5010['fDBjH'](_0x2d1841,_0x129803[_0x1ae54c(0x167)]);_0x2d1841++){const _0x880d79=_0x129803[_0x2d1841];if(!_0x880d79||!_0x880d79['key']||!_0x880d79[_0x1ae54c(0x190)])return{'valid':![],'error':'lock_keys['+_0x2d1841+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x53750b||typeof _0x53750b!==_0x1ae54c(0x169)||_0x53750b<0x1)return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x3bec6a=this['getMaxTTLSeconds']();if(_0x1b5010['Xlvla'](_0x53750b,_0x3bec6a))return{'valid':![],'error':_0x1ae54c(0x19e)+_0x3bec6a+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x51a85e||_0x1b5010[_0x1ae54c(0x19c)](typeof _0x51a85e,_0x1b5010['aZkwp']))return{'valid':![],'error':_0x1ae54c(0x185)};return{'valid':!![]};}[a0_0x33c32d(0x197)]({resource:_0x333536,lockKeys:_0x349b70,lockToken:_0x10c24b}){const _0x17b3c5=a0_0x33c32d,_0x4af1c9={'HghKS':function(_0x3b5ba0,_0xfcac2d){return _0x3b5ba0!==_0xfcac2d;},'LMaqr':function(_0x12aacc,_0x3dc7e5){return _0x12aacc===_0x3dc7e5;},'vRCqL':_0x17b3c5(0x1a1)};if(!_0x333536||_0x4af1c9[_0x17b3c5(0x1a4)](typeof _0x333536,_0x17b3c5(0x16a)))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array['isArray'](_0x349b70)||_0x4af1c9['LMaqr'](_0x349b70['length'],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x12d518=0x0;_0x12d518<_0x349b70[_0x17b3c5(0x167)];_0x12d518++){const _0x59e898=_0x349b70[_0x12d518];if(!_0x59e898||!_0x59e898[_0x17b3c5(0x183)]||!_0x59e898[_0x17b3c5(0x190)])return{'valid':![],'error':'lock_keys['+_0x12d518+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x10c24b||typeof _0x10c24b!=='string')return{'valid':![],'error':_0x4af1c9['vRCqL']};return{'valid':!![]};}}module[a0_0x33c32d(0x175)]=new ResourceLockManager();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x40cd(){const _0x34580b=['s0fgs0fFq09otKvdveLptL9usu1ft1vu','DMfSDwu','v0fstG','zw52','z2v0u3rHDhvZ','BgvUz3rO','rfPRu1C','C2vZC2LVBLrPBwvVDxq','mtuWmJyWz2jqrNzL','yxv0B0nVBw1PDeLUDgvYDMfS','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','C3rVCa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','CMvKDwnL','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','mtqZmtu3m1jtwKjerq','ChjVy2vZC2LUz1rPBwvZ','ntaWma','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzwqGDg8GDg9WAwm6ia','Bwv0CMLJCW','AxnsDw5UAw5N','s0fgs0fFq0Xjru5ux0Le','rMXZy0K','Cgf1C2u','zw5HyMXLza','C3vIC2nYAwjLzfrVCgLJCW','y29UC3vTzxi','BwfW','y29UBMvJDa','mJq4nMnOq1jfvG','AxnqyxvZzwq','yNjVA2vYCW','BwvZC2fNzxnqCM9JzxnZzwq','ngzgEfflsG','sxv2uLO','CMv0CNLbDhrLBxb0CW','A2v5','yxv0B0nVBw1PDa','CMvZDw1L','CMv0CNLnyxHezwXHEq','Bwf4','BgfZDe1LC3nHz2vuAw1L','CMvXDwvZDfrPBwvVDxq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignVBM5Ly3rLzcb0BYbICM9RzxjZoIa','y2XVC2u','AxnjBML0AwfSAxPPBMC','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','A2fMA2e','BwvZC2fNzxnszwnLAxzLza','s0fgs0fFu0fttf9vu0vstKfnrq','C2HPzNq','z3jVDxbjza','zxjYB3i','BwvZC2fNzq','mZblvM9ryMC','C3rHCNruAw1L','Ewjwy1u','nZa1mJG5mMD3yNDtwG','C3vIC2nYAwjL','vNvnzxa','CMvZDgzVCMDLlq','BwvZC2fNzuHHBMrSzxi','uxLyvgq','ntmXzMnXDxPv','z2v0q29UzMLN','mNWZFdb8mxW1Fdq','BuzfDhK','y29UC3vTzxiUzgLZy29UBMvJDa','CM91BMq','BwvZC2fNzxngywLSzwq','y29UC3vTzxiUy3jHC2G','s0fgs0fFuKvuuLLFrevmqvK','zgvMyxvSDa','ChvZAa','Bg9JywXOB3n0oJKWoti','AKn5DxC','AxnbCNjHEq','y29UBMvJDgLVBLbYB21PC2u','Dhj1zq','z2v0twv0CMLJCW','Bg9N','y29UBMvJDgLVBLrPBwvVDxq','C2r1zNO','mtKXDxbWEM9b','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignYyxnOzwq6ia','vvfPDe8','nJmXmtjwAhLjBvO','mZaWma','w0THzMTHq29UC3vTzxjDifnLzwSGzxjYB3i6ia','y29UC3vTzxiUCMvIywXHBMnPBMC','rg5bzNK','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','qxzREvy','tK9useLorW','C2vLAW','C2v0DxbfDMvUDeHHBMrSzxjZ','s0fgs0fFte9hx0XfvKvm','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','CwTAsgC','AxndB25Uzwn0zwq','uMD3DfO','s0fgs0fFu1nm','s0fgs0fFuKvuuLLFtufyx0rftefz','icHNCM91CeLKoIa','C3bSAxq','DxvPza','Dg9tDhjPBMC','BxDcqwW','Dg9mB3DLCKnHC2u','AM9PBG','y29UC3vTzxiUC3rVCa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','De1lEeu','ntKYmdK0mhPqEgvrCW','z2v0tg9Ntgv2zwW','s0fgs0fFu0vtu0LptL9usu1ft1vu','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','Bg9Ntgv2zwW','CgfYC2vizwfKzxjZ','s0fgs0fFu0fttf9nruniqu5ju00','BwLU','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','s0fgs0fFuKvuuLLFqvruru1qvfm','y2XPzw50swq','oda1mdK4zffWyvLn','z2v0vgLTzq','B2zMC2v0','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW'];a0_0x40cd=function(){return _0x34580b;};return a0_0x40cd();}const a0_0x220f1e=a0_0x3a5f;(function(_0x30f957,_0x265610){const _0xde306c=a0_0x3a5f,_0x6b671c=_0x30f957();while(!![]){try{const _0x12d0ca=parseInt(_0xde306c(0x202))/0x1*(parseInt(_0xde306c(0x24c))/0x2)+parseInt(_0xde306c(0x23e))/0x3*(-parseInt(_0xde306c(0x250))/0x4)+parseInt(_0xde306c(0x237))/0x5*(parseInt(_0xde306c(0x1e5))/0x6)+-parseInt(_0xde306c(0x22b))/0x7+parseInt(_0xde306c(0x205))/0x8*(parseInt(_0xde306c(0x1ee))/0x9)+-parseInt(_0xde306c(0x220))/0xa+parseInt(_0xde306c(0x1e8))/0xb;if(_0x12d0ca===_0x265610)break;else _0x6b671c['push'](_0x6b671c['shift']());}catch(_0x395329){_0x6b671c['push'](_0x6b671c['shift']());}}}(a0_0x40cd,0x4baed));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require(a0_0x220f1e(0x218));class KafkaConsumerService{constructor(){const _0x27e44b=a0_0x220f1e;this[_0x27e44b(0x1de)]=null,this[_0x27e44b(0x249)]=null,this['isConnected']=![],this['isInitializing']=![],this[_0x27e44b(0x243)]=![],this['isPaused']=![],this[_0x27e44b(0x1fc)]=null,this['subscribedTopics']=[],this['groupId']=null,this[_0x27e44b(0x1ec)]=null,this[_0x27e44b(0x242)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x220f1e(0x1ef)](){const _0x4c349=a0_0x220f1e,_0x435d53={'KqCcN':function(_0x262bd7,_0x1f6f9e){return _0x262bd7===_0x1f6f9e;},'AvkyV':_0x4c349(0x1fd),'VuMep':_0x4c349(0x1f7),'pBDLP':function(_0x2f2fd5,_0x467240){return _0x2f2fd5(_0x467240);},'QyXTd':function(_0x4c707a,_0x5d1d29){return _0x4c707a(_0x5d1d29);},'sFVYu':function(_0x12626d,_0x38192c){return _0x12626d(_0x38192c);},'cMwmh':function(_0x53c5f0,_0x430b8d){return _0x53c5f0(_0x430b8d);},'sdufz':'warn'};return{'enabled':_0x435d53['KqCcN'](process['env']['KAFKA_ENABLED'],_0x435d53[_0x4c349(0x20b)]),'brokers':(process[_0x4c349(0x232)]['KAFKA_BROKERS']||_0x4c349(0x1f9))[_0x4c349(0x217)](','),'clientId':process['env'][_0x4c349(0x244)]||_0x4c349(0x1eb)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x435d53[_0x4c349(0x1ea)])+'-consumer','connectionTimeout':_0x435d53['pBDLP'](parseInt,process['env'][_0x4c349(0x22f)]||_0x4c349(0x206)),'requestTimeout':_0x435d53[_0x4c349(0x1ed)](parseInt,process[_0x4c349(0x232)]['KAFKA_REQUEST_TIMEOUT']||'25000'),'sessionTimeout':parseInt(process[_0x4c349(0x232)][_0x4c349(0x222)]||'30000'),'heartbeatInterval':_0x435d53['sFVYu'](parseInt,process['env']['KAFKA_HEARTBEAT_INTERVAL']||_0x4c349(0x206)),'maxBytesPerPartition':parseInt(process[_0x4c349(0x232)]['KAFKA_MAX_BYTES_PER_PARTITION']||'1048576'),'autoCommit':process[_0x4c349(0x232)]['KAFKA_AUTO_COMMIT']===_0x4c349(0x1fd),'autoCommitInterval':_0x435d53['cMwmh'](parseInt,process['env'][_0x4c349(0x22e)]||_0x4c349(0x240)),'retryAttempts':parseInt(process[_0x4c349(0x232)][_0x4c349(0x229)]||'3'),'retryDelay':parseInt(process['env'][_0x4c349(0x1f6)]||'1000'),'retryMaxDelay':parseInt(process[_0x4c349(0x232)][_0x4c349(0x215)]||'30000'),'logLevel':process[_0x4c349(0x232)][_0x4c349(0x20f)]||_0x435d53[_0x4c349(0x201)]};}[a0_0x220f1e(0x221)](_0x30a6c7){const _0x42aa92=a0_0x220f1e,_0x5b391d={'nothing':logLevel[_0x42aa92(0x20c)],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x5b391d[_0x30a6c7[_0x42aa92(0x21b)]()]||logLevel[_0x42aa92(0x231)];}async['initialize'](_0x324bb6={}){const _0x3c4098=a0_0x220f1e,_0x187d2e={'UQitO':'true','DDwuv':'default','DZkSW':function(_0x469a3a,_0x2057ff){return _0x469a3a(_0x2057ff);}},_0x588265=this['getConfig']();if(!_0x588265['enabled'])return console[_0x3c4098(0x1ff)](_0x3c4098(0x20a)),![];if(this[_0x3c4098(0x212)])return!![];if(this[_0x3c4098(0x1db)]&&this['connectionPromise'])return this[_0x3c4098(0x1fc)];return this[_0x3c4098(0x1db)]=!![],this[_0x3c4098(0x1fc)]=new Promise(async _0x244ec2=>{const _0x566612=_0x3c4098;try{let _0x30842f=undefined;process['env'][_0x566612(0x214)]===_0x187d2e[_0x566612(0x204)]&&(_0x30842f=!![]);let _0x509c16=undefined;process[_0x566612(0x232)]['KAFKA_SASL_MECHANISM']&&(_0x509c16={'mechanism':process['env'][_0x566612(0x226)],'username':process[_0x566612(0x232)][_0x566612(0x1e0)]||'','password':process[_0x566612(0x232)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x324bb6['clientId']||_0x588265['clientId'],'brokers':_0x588265['brokers'],'connectionTimeout':_0x588265[_0x566612(0x200)],'requestTimeout':_0x588265[_0x566612(0x1d8)],'logLevel':this[_0x566612(0x221)](_0x588265[_0x566612(0x224)]),'ssl':_0x30842f,'sasl':_0x509c16,'retry':{'initialRetryTime':_0x588265['retryDelay'],'retries':_0x588265[_0x566612(0x252)],'maxRetryTime':_0x588265[_0x566612(0x1d5)]}}),this['groupId']=_0x324bb6[_0x566612(0x1e2)]||_0x566612(0x1eb)+(process['env'][_0x566612(0x239)]||_0x187d2e['DDwuv'])+'-consumer-group',this[_0x566612(0x249)]=this['kafka']['consumer']({'groupId':this[_0x566612(0x1e2)],'sessionTimeout':_0x588265[_0x566612(0x236)],'heartbeatInterval':_0x588265['heartbeatInterval'],'maxBytesPerPartition':_0x588265['maxBytesPerPartition'],'allowAutoTopicCreation':![]}),await this[_0x566612(0x249)][_0x566612(0x24b)](),this['isConnected']=!![],console[_0x566612(0x1ff)](_0x566612(0x1d9)+_0x588265[_0x566612(0x24e)][_0x566612(0x21c)](',\x20')+_0x566612(0x216)+this[_0x566612(0x1e2)]+')'),this['setupEventHandlers'](),_0x187d2e[_0x566612(0x235)](_0x244ec2,!![]);}catch(_0x554ea6){console[_0x566612(0x1e3)]('[KafkaConsumer]\x20Connection\x20failed:\x20'+_0x554ea6['message']),this[_0x566612(0x212)]=![],_0x187d2e[_0x566612(0x235)](_0x244ec2,![]);}finally{this[_0x566612(0x1db)]=![];}}),this['connectionPromise'];}[a0_0x220f1e(0x20e)](){const _0x3d0ab3=a0_0x220f1e,_0xe8d0c7={'gLziW':_0x3d0ab3(0x23b),'ybVcU':'[KafkaConsumer]\x20Consumer\x20rebalancing...','FlscI':_0x3d0ab3(0x1f2),'Wpveo':_0x3d0ab3(0x21d),'DnAfy':_0x3d0ab3(0x1f5),'wFEND':_0x3d0ab3(0x208)};if(!this[_0x3d0ab3(0x249)])return;this['consumer']['on'](_0xe8d0c7[_0x3d0ab3(0x245)],()=>{const _0x293e7e=_0x3d0ab3;console[_0x293e7e(0x1ff)](_0x293e7e(0x21e)),this[_0x293e7e(0x212)]=![],this[_0x293e7e(0x243)]=![];}),this[_0x3d0ab3(0x249)]['on'](_0xe8d0c7['Wpveo'],()=>{console['log'](_0xe8d0c7['gLziW']),this['isRunning']=![];}),this[_0x3d0ab3(0x249)]['on'](_0xe8d0c7[_0x3d0ab3(0x209)],_0x71b286=>{const _0x5bea35=_0x3d0ab3;console['error'](_0x5bea35(0x203)+_0x71b286['payload'][_0x5bea35(0x1e3)]['message']),this[_0x5bea35(0x243)]=![];}),this[_0x3d0ab3(0x249)]['on'](_0xe8d0c7['wFEND'],()=>{const _0x5de541=_0x3d0ab3;console[_0x5de541(0x1ff)](_0xe8d0c7[_0x5de541(0x1e7)]);});}async[a0_0x220f1e(0x1e9)](_0x234e2f,_0x25170d=![]){const _0x3b7fb3=a0_0x220f1e;if(!this['isConnected'])return console['error'](_0x3b7fb3(0x223)),![];try{const _0x20953d=Array[_0x3b7fb3(0x1fb)](_0x234e2f)?_0x234e2f:[_0x234e2f];for(const _0xfec42d of _0x20953d){await this[_0x3b7fb3(0x249)][_0x3b7fb3(0x1e9)]({'topic':_0xfec42d,'fromBeginning':_0x25170d}),console[_0x3b7fb3(0x1ff)](_0x3b7fb3(0x241)+_0xfec42d+'\x20(fromBeginning:\x20'+_0x25170d+')');}return this['subscribedTopics']=[...new Set([...this['subscribedTopics'],..._0x20953d])],!![];}catch(_0x58e9de){return console['error'](_0x3b7fb3(0x210)+_0x58e9de['message']),![];}}async['startConsuming'](_0xfdb687,_0x3b3ec7={}){const _0x424491=a0_0x220f1e,_0x161f07={'IuvRZ':function(_0x183fac,_0x201de2){return _0x183fac+_0x201de2;},'RgwtZ':function(_0x2d5df9,_0x1f5640){return _0x2d5df9!==_0x1f5640;}};if(!this[_0x424491(0x212)])return console[_0x424491(0x1e3)]('[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected'),![];if(this[_0x424491(0x243)])return console[_0x424491(0x1ff)]('[KafkaConsumer]\x20Consumer\x20already\x20running'),!![];const _0x1808b0=this[_0x424491(0x1ef)]();this[_0x424491(0x1ec)]=_0xfdb687;try{return this[_0x424491(0x242)][_0x424491(0x1e6)]=new Date(),await this['consumer']['run']({'autoCommit':_0x161f07[_0x424491(0x213)](_0x3b3ec7[_0x424491(0x1d3)],undefined)?_0x3b3ec7[_0x424491(0x1d3)]:_0x1808b0[_0x424491(0x1d3)],'autoCommitInterval':_0x1808b0[_0x424491(0x238)],'eachMessage':async({topic:_0x1e614f,partition:_0x2ab478,message:_0x5efadd,heartbeat:_0x5e13fc})=>{const _0x4a270e=_0x424491,_0x515a6c=Date['now']();this['metrics']['messagesReceived']++,this['metrics'][_0x4a270e(0x1d7)]=new Date();try{const _0x8107eb=_0x5efadd[_0x4a270e(0x230)]?_0x5efadd[_0x4a270e(0x230)]['toString']():null;let _0x10fbc0=null;try{_0x10fbc0=_0x8107eb?JSON['parse'](_0x8107eb):null;}catch(_0x54bd66){_0x10fbc0=_0x8107eb;}const _0x113a4e={'topic':_0x1e614f,'partition':_0x2ab478,'offset':_0x5efadd['offset'],'key':_0x5efadd[_0x4a270e(0x253)]?_0x5efadd['key'][_0x4a270e(0x219)]():null,'headers':this[_0x4a270e(0x225)](_0x5efadd['headers']),'timestamp':_0x5efadd['timestamp'],'value':_0x10fbc0,'raw':_0x8107eb};this[_0x4a270e(0x1ec)]&&await this['messageHandler'](_0x113a4e);!_0x1808b0[_0x4a270e(0x1d3)]&&await this['consumer']['commitOffsets']([{'topic':_0x1e614f,'partition':_0x2ab478,'offset':_0x161f07[_0x4a270e(0x251)](parseInt(_0x5efadd[_0x4a270e(0x22d)]),0x1)[_0x4a270e(0x219)]()}]);this['metrics'][_0x4a270e(0x24f)]++;const _0x17a656=Date['now']()-_0x515a6c;this[_0x4a270e(0x242)][_0x4a270e(0x23f)][_0x4a270e(0x1f8)](_0x17a656),this[_0x4a270e(0x242)]['processingTimes']['length']>0x64&&this[_0x4a270e(0x242)]['processingTimes'][_0x4a270e(0x1e1)](),await _0x5e13fc();}catch(_0x28c944){this[_0x4a270e(0x242)][_0x4a270e(0x1f4)]++,console['error']('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x28c944['message']);throw _0x28c944;}}}),this[_0x424491(0x243)]=!![],console[_0x424491(0x1ff)](_0x424491(0x1dd)+this['subscribedTopics'][_0x424491(0x21c)](',\x20')),!![];}catch(_0x39f806){return console[_0x424491(0x1e3)]('[KafkaConsumer]\x20Start\x20consuming\x20error:\x20'+_0x39f806[_0x424491(0x1e4)]),![];}}[a0_0x220f1e(0x225)](_0x10fb9e){const _0xe77f2=a0_0x220f1e;if(!_0x10fb9e)return{};const _0x1b4b98={};for(const [_0x1fc405,_0x5df446]of Object['entries'](_0x10fb9e)){_0x1b4b98[_0x1fc405]=_0x5df446?_0x5df446[_0xe77f2(0x219)]():null;}return _0x1b4b98;}async[a0_0x220f1e(0x246)](){const _0x521fa3=a0_0x220f1e,_0x3cc6c0={'xqtur':'[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running','KnQTt':'[KafkaConsumer]\x20Consumer\x20paused'};if(!this[_0x521fa3(0x212)]||!this['isRunning'])return console[_0x521fa3(0x1ff)](_0x3cc6c0['xqtur']),![];if(this['isPaused'])return console[_0x521fa3(0x1ff)]('[KafkaConsumer]\x20Consumer\x20already\x20paused'),!![];try{const _0x5ecbbb=this['subscribedTopics'][_0x521fa3(0x24a)](_0x197b7c=>({'topic':_0x197b7c}));return this[_0x521fa3(0x249)][_0x521fa3(0x246)](_0x5ecbbb),this[_0x521fa3(0x24d)]=!![],console['log'](_0x3cc6c0['KnQTt']),!![];}catch(_0x3b60f6){return console['error']('[KafkaConsumer]\x20Pause\x20error:\x20'+_0x3b60f6[_0x521fa3(0x1e4)]),![];}}async['resume'](){const _0x15a3b=a0_0x220f1e,_0x24f20={'QckkJ':'[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running','BOrxN':_0x15a3b(0x1dc)};if(!this['isConnected']||!this[_0x15a3b(0x243)])return console[_0x15a3b(0x1ff)](_0x24f20['QckkJ']),![];if(!this['isPaused'])return console[_0x15a3b(0x1ff)](_0x24f20['BOrxN']),!![];try{const _0x57b0f6=this['subscribedTopics']['map'](_0x4e13ec=>({'topic':_0x4e13ec}));return this[_0x15a3b(0x249)][_0x15a3b(0x1d4)](_0x57b0f6),this[_0x15a3b(0x24d)]=![],console['log'](_0x15a3b(0x23d)),!![];}catch(_0x4226ed){return console[_0x15a3b(0x1e3)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x4226ed['message']),![];}}async[a0_0x220f1e(0x23a)](){const _0x5b0520=a0_0x220f1e,_0x2072e5={'tMKxE':_0x5b0520(0x1f0),'mwBAl':'[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'};if(!this['isConnected'])return console[_0x5b0520(0x1ff)]('[KafkaConsumer]\x20Consumer\x20not\x20connected'),!![];try{const _0x1e1f49=_0x2072e5[_0x5b0520(0x21f)][_0x5b0520(0x217)]('|');let _0x3d58e1=0x0;while(!![]){switch(_0x1e1f49[_0x3d58e1++]){case'0':this['isRunning']=![];continue;case'1':this['isPaused']=![];continue;case'2':this[_0x5b0520(0x249)]&&(await this[_0x5b0520(0x249)][_0x5b0520(0x23a)](),await this['consumer']['disconnect']());continue;case'3':this['isConnected']=![];continue;case'4':return!![];case'5':console['log'](_0x2072e5[_0x5b0520(0x21a)]);continue;}break;}}catch(_0x138e15){return console[_0x5b0520(0x1e3)]('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x138e15[_0x5b0520(0x1e4)]),![];}}async['seekToOffset'](_0x9219c,_0xbd0765,_0x572542){const _0x3f3649=a0_0x220f1e,_0x2fb4ba={'jCyuw':_0x3f3649(0x228)};if(!this[_0x3f3649(0x212)])return console['error'](_0x2fb4ba[_0x3f3649(0x1fa)]),![];try{return this[_0x3f3649(0x249)][_0x3f3649(0x20d)]({'topic':_0x9219c,'partition':_0xbd0765,'offset':_0x572542[_0x3f3649(0x219)]()}),console['log']('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x572542+'\x20on\x20'+_0x9219c+':'+_0xbd0765),!![];}catch(_0x2ec2df){return console[_0x3f3649(0x1e3)](_0x3f3649(0x207)+_0x2ec2df['message']),![];}}[a0_0x220f1e(0x233)](){const _0x537050=a0_0x220f1e,_0x463f0c=this['getConfig']();return{'enabled':_0x463f0c[_0x537050(0x247)],'connected':this[_0x537050(0x212)],'running':this['isRunning'],'paused':this['isPaused'],'brokers':_0x463f0c[_0x537050(0x24e)],'clientId':_0x463f0c[_0x537050(0x22a)],'groupId':this[_0x537050(0x1e2)],'subscribedTopics':this[_0x537050(0x248)]};}[a0_0x220f1e(0x1fe)](){const _0x480c2d=a0_0x220f1e,_0x4dec23={'mFEty':function(_0x1f90f0,_0x266ff5){return _0x1f90f0>_0x266ff5;},'QssHJ':function(_0x13d48e,_0xbe37d5){return _0x13d48e+_0xbe37d5;},'qkZHg':function(_0x55a1c2,_0x5408f0){return _0x55a1c2*_0x5408f0;},'iKYKM':function(_0x206ec6,_0x529e4f){return _0x206ec6/_0x529e4f;},'Iglis':function(_0xa5591,_0x289d5e){return _0xa5591-_0x289d5e;},'eyqLH':function(_0xfc6fe1,_0x3a27c8){return _0xfc6fe1+_0x3a27c8;},'kqOAs':function(_0x4bfbea,_0x4359ef){return _0x4bfbea+_0x4359ef;}},_0x353228=_0x4dec23[_0x480c2d(0x1f1)](this['metrics']['processingTimes'][_0x480c2d(0x234)],0x0)?this['metrics'][_0x480c2d(0x23f)][_0x480c2d(0x23c)]((_0x304d30,_0x10aeaa)=>_0x304d30+_0x10aeaa,0x0)/this[_0x480c2d(0x242)]['processingTimes']['length']:0x0,_0x5544a9=_0x4dec23[_0x480c2d(0x1f1)](this[_0x480c2d(0x242)]['processingTimes'][_0x480c2d(0x234)],0x0)?Math[_0x480c2d(0x227)](...this['metrics']['processingTimes']):0x0,_0x40ec3d=this['metrics']['processingTimes']['length']>0x0?Math[_0x480c2d(0x1d6)](...this[_0x480c2d(0x242)][_0x480c2d(0x23f)]):0x0;return{'messagesReceived':this[_0x480c2d(0x242)][_0x480c2d(0x1df)],'messagesProcessed':this[_0x480c2d(0x242)]['messagesProcessed'],'messagesFailed':this[_0x480c2d(0x242)][_0x480c2d(0x1f4)],'successRate':_0x4dec23[_0x480c2d(0x1f1)](this['metrics'][_0x480c2d(0x1df)],0x0)?_0x4dec23['QssHJ'](_0x4dec23[_0x480c2d(0x211)](_0x4dec23['iKYKM'](this['metrics']['messagesProcessed'],this[_0x480c2d(0x242)][_0x480c2d(0x1df)]),0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this['metrics']['lastMessageTime'],'startTime':this[_0x480c2d(0x242)]['startTime'],'uptime':this['metrics'][_0x480c2d(0x1e6)]?Math['floor'](_0x4dec23['Iglis'](Date['now'](),this[_0x480c2d(0x242)][_0x480c2d(0x1e6)][_0x480c2d(0x22c)]())/0x3e8)+'s':'0s','processingTime':{'avg':_0x4dec23['eyqLH'](Math[_0x480c2d(0x1f3)](_0x353228),'ms'),'min':_0x4dec23['kqOAs'](_0x5544a9,'ms'),'max':_0x4dec23['eyqLH'](_0x40ec3d,'ms')}};}['resetMetrics'](){const _0x36ccb2=a0_0x220f1e;this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this[_0x36ccb2(0x243)]?new Date():null,'processingTimes':[]},console[_0x36ccb2(0x1ff)]('[KafkaConsumer]\x20Metrics\x20reset');}async[a0_0x220f1e(0x1da)](){await this['stop']();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){const _0x73e1d4=a0_0x220f1e;instance&&(instance[_0x73e1d4(0x1da)](),instance=null);}function createInstance(){return new KafkaConsumerService();}function a0_0x3a5f(_0x53b306,_0x51e0de){_0x53b306=_0x53b306-0x1d3;const _0x40cd2b=a0_0x40cd();let _0x3a5fad=_0x40cd2b[_0x53b306];if(a0_0x3a5f['ZDjJsF']===undefined){var _0x1e1893=function(_0x33a58e){const _0xbd39db='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c49df='',_0x32449a='';for(let _0x3d5119=0x0,_0x211636,_0x5cfc3b,_0x41e4f9=0x0;_0x5cfc3b=_0x33a58e['charAt'](_0x41e4f9++);~_0x5cfc3b&&(_0x211636=_0x3d5119%0x4?_0x211636*0x40+_0x5cfc3b:_0x5cfc3b,_0x3d5119++%0x4)?_0x5c49df+=String['fromCharCode'](0xff&_0x211636>>(-0x2*_0x3d5119&0x6)):0x0){_0x5cfc3b=_0xbd39db['indexOf'](_0x5cfc3b);}for(let _0x226892=0x0,_0x457133=_0x5c49df['length'];_0x226892<_0x457133;_0x226892++){_0x32449a+='%'+('00'+_0x5c49df['charCodeAt'](_0x226892)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x32449a);};a0_0x3a5f['ktyNlc']=_0x1e1893,a0_0x3a5f['RjeMTG']={},a0_0x3a5f['ZDjJsF']=!![];}const _0xeab67=_0x40cd2b[0x0],_0x2c0b1b=_0x53b306+_0xeab67,_0x4cf2a4=a0_0x3a5f['RjeMTG'][_0x2c0b1b];return!_0x4cf2a4?(_0x3a5fad=a0_0x3a5f['ktyNlc'](_0x3a5fad),a0_0x3a5f['RjeMTG'][_0x2c0b1b]=_0x3a5fad):_0x3a5fad=_0x4cf2a4,_0x3a5fad;}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
1
|
+
const a0_0x25c734=a0_0x43d6;function a0_0x43d6(_0x2fd679,_0x301a49){_0x2fd679=_0x2fd679-0xa8;const _0x3ec696=a0_0x3ec6();let _0x43d646=_0x3ec696[_0x2fd679];if(a0_0x43d6['oXxJwr']===undefined){var _0x5c5265=function(_0x3138e2){const _0x20aa08='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x198900='',_0x18bca4='';for(let _0xca97dd=0x0,_0x25db79,_0x15eb59,_0x522f32=0x0;_0x15eb59=_0x3138e2['charAt'](_0x522f32++);~_0x15eb59&&(_0x25db79=_0xca97dd%0x4?_0x25db79*0x40+_0x15eb59:_0x15eb59,_0xca97dd++%0x4)?_0x198900+=String['fromCharCode'](0xff&_0x25db79>>(-0x2*_0xca97dd&0x6)):0x0){_0x15eb59=_0x20aa08['indexOf'](_0x15eb59);}for(let _0x3b01bf=0x0,_0x465242=_0x198900['length'];_0x3b01bf<_0x465242;_0x3b01bf++){_0x18bca4+='%'+('00'+_0x198900['charCodeAt'](_0x3b01bf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x18bca4);};a0_0x43d6['dwoIZl']=_0x5c5265,a0_0x43d6['uPRKem']={},a0_0x43d6['oXxJwr']=!![];}const _0x4c43f7=_0x3ec696[0x0],_0xcee709=_0x2fd679+_0x4c43f7,_0x45b57e=a0_0x43d6['uPRKem'][_0xcee709];return!_0x45b57e?(_0x43d646=a0_0x43d6['dwoIZl'](_0x43d646),a0_0x43d6['uPRKem'][_0xcee709]=_0x43d646):_0x43d646=_0x45b57e,_0x43d646;}(function(_0x515fe7,_0x3fa072){const _0x5beb99=a0_0x43d6,_0x33937e=_0x515fe7();while(!![]){try{const _0x58516c=-parseInt(_0x5beb99(0xd4))/0x1*(-parseInt(_0x5beb99(0xeb))/0x2)+parseInt(_0x5beb99(0x111))/0x3*(parseInt(_0x5beb99(0xb9))/0x4)+parseInt(_0x5beb99(0xfc))/0x5+-parseInt(_0x5beb99(0xfd))/0x6*(-parseInt(_0x5beb99(0x120))/0x7)+-parseInt(_0x5beb99(0x108))/0x8+parseInt(_0x5beb99(0xa9))/0x9*(parseInt(_0x5beb99(0xf0))/0xa)+-parseInt(_0x5beb99(0xde))/0xb*(parseInt(_0x5beb99(0xb3))/0xc);if(_0x58516c===_0x3fa072)break;else _0x33937e['push'](_0x33937e['shift']());}catch(_0x1556ef){_0x33937e['push'](_0x33937e['shift']());}}}(a0_0x3ec6,0xacbf0));const {Kafka,logLevel}=require(a0_0x25c734(0xbb)),{v7:uuidv7}=require('uuid');class KafkaConsumerService{constructor(){const _0x130606=a0_0x25c734,_0x195dc2='1|9|10|8|0|4|6|3|5|7|2'[_0x130606(0xe0)]('|');let _0xa2b608=0x0;while(!![]){switch(_0x195dc2[_0xa2b608++]){case'0':this['isRunning']=![];continue;case'1':this['kafka']=null;continue;case'2':this[_0x130606(0xc0)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};continue;case'3':this[_0x130606(0xf4)]=[];continue;case'4':this[_0x130606(0xc8)]=![];continue;case'5':this[_0x130606(0xfa)]=null;continue;case'6':this['connectionPromise']=null;continue;case'7':this[_0x130606(0xcc)]=null;continue;case'8':this[_0x130606(0xf2)]=![];continue;case'9':this[_0x130606(0xc7)]=null;continue;case'10':this[_0x130606(0xae)]=![];continue;}break;}}[a0_0x25c734(0xf5)](){const _0x388972=a0_0x25c734,_0xc20a3f={'WsKFw':function(_0x16bed8,_0x53de3c){return _0x16bed8(_0x53de3c);},'nLoYW':'3000','CrsBM':function(_0x215478,_0x1e68dd){return _0x215478(_0x1e68dd);},'vhgxJ':'25000','oLJMR':function(_0x41f97f,_0x4c4d00){return _0x41f97f(_0x4c4d00);},'pGEEU':'1000','RGGyV':_0x388972(0x118),'eBGCy':'warn'};return{'enabled':process[_0x388972(0xe7)]['KAFKA_ENABLED']==='true','brokers':(process['env'][_0x388972(0x114)]||_0x388972(0xb1))[_0x388972(0xe0)](','),'clientId':process[_0x388972(0xe7)]['KAFKA_CLIENT_ID']||'restforge-'+(process[_0x388972(0xe7)]['RESTFORGE_PROJECT_NAME']||'default')+_0x388972(0x10d),'connectionTimeout':_0xc20a3f['WsKFw'](parseInt,process['env'][_0x388972(0xd0)]||_0xc20a3f['nLoYW']),'requestTimeout':_0xc20a3f['CrsBM'](parseInt,process[_0x388972(0xe7)]['KAFKA_REQUEST_TIMEOUT']||_0xc20a3f[_0x388972(0xb8)]),'sessionTimeout':parseInt(process['env']['KAFKA_SESSION_TIMEOUT']||_0x388972(0x118)),'heartbeatInterval':_0xc20a3f[_0x388972(0xb6)](parseInt,process[_0x388972(0xe7)]['KAFKA_HEARTBEAT_INTERVAL']||_0xc20a3f['nLoYW']),'maxBytesPerPartition':parseInt(process['env'][_0x388972(0x10a)]||_0x388972(0xec)),'autoCommit':process['env']['KAFKA_AUTO_COMMIT']==='true','autoCommitInterval':_0xc20a3f[_0x388972(0xb2)](parseInt,process['env']['KAFKA_AUTO_COMMIT_INTERVAL']||'5000'),'retryAttempts':parseInt(process[_0x388972(0xe7)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process['env'][_0x388972(0xf1)]||_0xc20a3f['pGEEU']),'retryMaxDelay':_0xc20a3f[_0x388972(0xc4)](parseInt,process[_0x388972(0xe7)]['KAFKA_RETRY_MAX_DELAY']||_0xc20a3f[_0x388972(0xdb)]),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0xc20a3f[_0x388972(0xfb)]};}['getLogLevel'](_0x2b8862){const _0x194a5b=a0_0x25c734,_0x1827b0={'nothing':logLevel[_0x194a5b(0x10e)],'error':logLevel['ERROR'],'warn':logLevel[_0x194a5b(0xdd)],'info':logLevel[_0x194a5b(0xe9)],'debug':logLevel['DEBUG']};return _0x1827b0[_0x2b8862[_0x194a5b(0xac)]()]||logLevel[_0x194a5b(0xdd)];}async['initialize'](_0x13c654={}){const _0x10ac74=a0_0x25c734,_0x196052={'MkBIY':function(_0x1b96de,_0x38eb3e){return _0x1b96de===_0x38eb3e;},'lPoYx':'default','rZVWC':function(_0x7d823a,_0x24ea95){return _0x7d823a(_0x24ea95);},'SraPH':_0x10ac74(0xbf)},_0x884a1=this[_0x10ac74(0xf5)]();if(!_0x884a1[_0x10ac74(0xdc)])return console[_0x10ac74(0xe4)](_0x196052[_0x10ac74(0xd9)]),![];if(this['isConnected'])return!![];if(this[_0x10ac74(0xf2)]&&this[_0x10ac74(0xba)])return this['connectionPromise'];return this[_0x10ac74(0xf2)]=!![],this[_0x10ac74(0xba)]=new Promise(async _0x48f020=>{const _0x569c6a=_0x10ac74;try{let _0x6032d6=undefined;_0x196052[_0x569c6a(0xf8)](process[_0x569c6a(0xe7)]['KAFKA_SSL'],_0x569c6a(0x11e))&&(_0x6032d6=!![]);let _0x9eef8d=undefined;process['env'][_0x569c6a(0xda)]&&(_0x9eef8d={'mechanism':process[_0x569c6a(0xe7)]['KAFKA_SASL_MECHANISM'],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process['env'][_0x569c6a(0x107)]||''}),this['kafka']=new Kafka({'clientId':_0x13c654[_0x569c6a(0xc2)]||_0x884a1[_0x569c6a(0xc2)],'brokers':_0x884a1['brokers'],'connectionTimeout':_0x884a1['connectionTimeout'],'requestTimeout':_0x884a1['requestTimeout'],'logLevel':this['getLogLevel'](_0x884a1['logLevel']),'ssl':_0x6032d6,'sasl':_0x9eef8d,'retry':{'initialRetryTime':_0x884a1[_0x569c6a(0xbc)],'retries':_0x884a1['retryAttempts'],'maxRetryTime':_0x884a1['retryMaxDelay']}}),this['groupId']=_0x13c654[_0x569c6a(0xfa)]||'restforge-'+(process[_0x569c6a(0xe7)]['RESTFORGE_PROJECT_NAME']||_0x196052['lPoYx'])+_0x569c6a(0x103),this[_0x569c6a(0xc7)]=this['kafka'][_0x569c6a(0xc7)]({'groupId':this['groupId'],'sessionTimeout':_0x884a1['sessionTimeout'],'heartbeatInterval':_0x884a1[_0x569c6a(0xd1)],'maxBytesPerPartition':_0x884a1[_0x569c6a(0xcd)],'allowAutoTopicCreation':![]}),await this[_0x569c6a(0xc7)][_0x569c6a(0xc1)](),this['isConnected']=!![],console['log']('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x884a1['brokers'][_0x569c6a(0xc6)](',\x20')+'\x20(groupId:\x20'+this['groupId']+')'),this['setupEventHandlers'](),_0x196052['rZVWC'](_0x48f020,!![]);}catch(_0x574616){console['error']('[KafkaConsumer]\x20Connection\x20failed:\x20'+_0x574616['message']),this['isConnected']=![],_0x196052['rZVWC'](_0x48f020,![]);}finally{this[_0x569c6a(0xf2)]=![];}}),this[_0x10ac74(0xba)];}['setupEventHandlers'](){const _0xa5fbc2=a0_0x25c734,_0x2ee068={'BBOqW':_0xa5fbc2(0xd2),'yUIPC':_0xa5fbc2(0xaf)};if(!this['consumer'])return;this['consumer']['on'](_0xa5fbc2(0x11c),()=>{const _0x3e9456=_0xa5fbc2;console['log'](_0x3e9456(0x11d)),this[_0x3e9456(0xae)]=![],this[_0x3e9456(0xbe)]=![];}),this['consumer']['on'](_0x2ee068[_0xa5fbc2(0x102)],()=>{const _0x2e06a5=_0xa5fbc2;console[_0x2e06a5(0xe4)](_0x2ee068[_0x2e06a5(0xab)]),this[_0x2e06a5(0xbe)]=![];}),this[_0xa5fbc2(0xc7)]['on']('consumer.crash',_0x5ca806=>{const _0xa4276b=_0xa5fbc2;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x5ca806[_0xa4276b(0xe6)][_0xa4276b(0x123)][_0xa4276b(0xb7)]),this[_0xa4276b(0xbe)]=![];}),this['consumer']['on'](_0xa5fbc2(0x11a),()=>{console['log']('[KafkaConsumer]\x20Consumer\x20rebalancing...');});}async[a0_0x25c734(0xc3)](_0x1ea084,_0x4219e9=![]){const _0x45ffdf=a0_0x25c734;if(!this[_0x45ffdf(0xae)])return console['error'](_0x45ffdf(0x122)),![];try{const _0x2cdecb=Array[_0x45ffdf(0x10f)](_0x1ea084)?_0x1ea084:[_0x1ea084];for(const _0x283e7c of _0x2cdecb){await this['consumer']['subscribe']({'topic':_0x283e7c,'fromBeginning':_0x4219e9}),console[_0x45ffdf(0xe4)]('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x283e7c+_0x45ffdf(0xea)+_0x4219e9+')');}return this['subscribedTopics']=[...new Set([...this['subscribedTopics'],..._0x2cdecb])],!![];}catch(_0x543666){return console[_0x45ffdf(0x123)](_0x45ffdf(0x116)+_0x543666['message']),![];}}async[a0_0x25c734(0x105)](_0x36320e,_0x244620={}){const _0x14e131=a0_0x25c734,_0x4fe8db={'PacIm':function(_0x32fa48){return _0x32fa48();},'JjgMF':function(_0x5e1534,_0x47fb49){return _0x5e1534!==_0x47fb49;}};if(!this[_0x14e131(0xae)])return console['error'](_0x14e131(0x10b)),![];if(this[_0x14e131(0xbe)])return console['log'](_0x14e131(0xe3)),!![];const _0x2648ba=this[_0x14e131(0xf5)]();this['messageHandler']=_0x36320e;try{return this[_0x14e131(0xc0)]['startTime']=new Date(),await this['consumer'][_0x14e131(0xd8)]({'autoCommit':_0x4fe8db['JjgMF'](_0x244620[_0x14e131(0xe8)],undefined)?_0x244620[_0x14e131(0xe8)]:_0x2648ba['autoCommit'],'autoCommitInterval':_0x2648ba['autoCommitInterval'],'eachMessage':async({topic:_0x665894,partition:_0x449829,message:_0x1e197e,heartbeat:_0x37f4ca})=>{const _0x2f0b4a=_0x14e131,_0x510f8b=Date[_0x2f0b4a(0xc5)]();this[_0x2f0b4a(0xc0)][_0x2f0b4a(0xe1)]++,this[_0x2f0b4a(0xc0)][_0x2f0b4a(0xb5)]=new Date();try{const _0x397d83=_0x1e197e['value']?_0x1e197e['value'][_0x2f0b4a(0x115)]():null;let _0x357064=null;try{_0x357064=_0x397d83?JSON[_0x2f0b4a(0xcf)](_0x397d83):null;}catch(_0x45e7bd){_0x357064=_0x397d83;}const _0x4e3a11={'topic':_0x665894,'partition':_0x449829,'offset':_0x1e197e['offset'],'key':_0x1e197e[_0x2f0b4a(0xb4)]?_0x1e197e[_0x2f0b4a(0xb4)]['toString']():null,'headers':this[_0x2f0b4a(0xe5)](_0x1e197e[_0x2f0b4a(0x109)]),'timestamp':_0x1e197e[_0x2f0b4a(0xc9)],'value':_0x357064,'raw':_0x397d83};this[_0x2f0b4a(0xcc)]&&await this['messageHandler'](_0x4e3a11);!_0x2648ba[_0x2f0b4a(0xe8)]&&await this['consumer'][_0x2f0b4a(0x100)]([{'topic':_0x665894,'partition':_0x449829,'offset':(parseInt(_0x1e197e['offset'])+0x1)[_0x2f0b4a(0x115)]()}]);this[_0x2f0b4a(0xc0)][_0x2f0b4a(0x113)]++;const _0x549683=Date['now']()-_0x510f8b;this[_0x2f0b4a(0xc0)]['processingTimes'][_0x2f0b4a(0xd5)](_0x549683),this['metrics']['processingTimes'][_0x2f0b4a(0x104)]>0x64&&this[_0x2f0b4a(0xc0)][_0x2f0b4a(0xf9)]['shift'](),await _0x4fe8db[_0x2f0b4a(0xa8)](_0x37f4ca);}catch(_0x1e297e){this['metrics'][_0x2f0b4a(0xff)]++,console[_0x2f0b4a(0x123)]('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x1e297e[_0x2f0b4a(0xb7)]);throw _0x1e297e;}}}),this['isRunning']=!![],console['log']('[KafkaConsumer]\x20Started\x20consuming\x20from\x20topics:\x20'+this['subscribedTopics'][_0x14e131(0xc6)](',\x20')),!![];}catch(_0x13c21b){return console['error'](_0x14e131(0xed)+_0x13c21b['message']),![];}}[a0_0x25c734(0xe5)](_0x297919){if(!_0x297919)return{};const _0x58866c={};for(const [_0x12a552,_0x18ed85]of Object['entries'](_0x297919)){_0x58866c[_0x12a552]=_0x18ed85?_0x18ed85['toString']():null;}return _0x58866c;}async[a0_0x25c734(0xbd)](){const _0x249082=a0_0x25c734,_0x20be17={'ArDYa':_0x249082(0x119),'rmAfI':_0x249082(0xb0)};if(!this[_0x249082(0xae)]||!this[_0x249082(0xbe)])return console[_0x249082(0xe4)](_0x20be17['ArDYa']),![];if(this['isPaused'])return console['log'](_0x20be17['rmAfI']),!![];try{const _0x2d6c1e=this[_0x249082(0xf4)]['map'](_0x24c7e7=>({'topic':_0x24c7e7}));return this['consumer']['pause'](_0x2d6c1e),this[_0x249082(0xc8)]=!![],console['log'](_0x249082(0xef)),!![];}catch(_0x1f32f2){return console['error'](_0x249082(0x11f)+_0x1f32f2['message']),![];}}async['resume'](){const _0x484753=a0_0x25c734,_0x43a230={'nSeBM':_0x484753(0xf6)};if(!this['isConnected']||!this[_0x484753(0xbe)])return console['log']('[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running'),![];if(!this[_0x484753(0xc8)])return console['log'](_0x43a230[_0x484753(0xe2)]),!![];try{const _0x291ba2=this['subscribedTopics'][_0x484753(0xf3)](_0x2f0510=>({'topic':_0x2f0510}));return this[_0x484753(0xc7)]['resume'](_0x291ba2),this['isPaused']=![],console[_0x484753(0xe4)]('[KafkaConsumer]\x20Consumer\x20resumed'),!![];}catch(_0xe09127){return console[_0x484753(0x123)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0xe09127['message']),![];}}async[a0_0x25c734(0x117)](){const _0x3b2b12=a0_0x25c734,_0x1e30eb={'FVFej':'[KafkaConsumer]\x20Consumer\x20not\x20connected'};if(!this['isConnected'])return console[_0x3b2b12(0xe4)](_0x1e30eb[_0x3b2b12(0xad)]),!![];try{return this[_0x3b2b12(0xc7)]&&(await this[_0x3b2b12(0xc7)][_0x3b2b12(0x117)](),await this['consumer'][_0x3b2b12(0x10c)]()),this['isConnected']=![],this['isRunning']=![],this['isPaused']=![],console['log']('[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'),!![];}catch(_0x41fc52){return console[_0x3b2b12(0x123)]('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x41fc52[_0x3b2b12(0xb7)]),![];}}async['seekToOffset'](_0x312e9c,_0x220487,_0x210be5){const _0x3b862f=a0_0x25c734,_0x5b2f1f={'LVrpT':'[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'};if(!this['isConnected'])return console[_0x3b862f(0x123)](_0x5b2f1f[_0x3b862f(0x106)]),![];try{return this['consumer']['seek']({'topic':_0x312e9c,'partition':_0x220487,'offset':_0x210be5['toString']()}),console[_0x3b862f(0xe4)](_0x3b862f(0x121)+_0x210be5+'\x20on\x20'+_0x312e9c+':'+_0x220487),!![];}catch(_0x3c04a6){return console['error'](_0x3b862f(0x101)+_0x3c04a6[_0x3b862f(0xb7)]),![];}}[a0_0x25c734(0xd3)](){const _0x251c2e=a0_0x25c734,_0x1ccb22=this[_0x251c2e(0xf5)]();return{'enabled':_0x1ccb22['enabled'],'connected':this['isConnected'],'running':this[_0x251c2e(0xbe)],'paused':this[_0x251c2e(0xc8)],'brokers':_0x1ccb22[_0x251c2e(0x110)],'clientId':_0x1ccb22['clientId'],'groupId':this[_0x251c2e(0xfa)],'subscribedTopics':this['subscribedTopics']};}[a0_0x25c734(0xcb)](){const _0x56d340=a0_0x25c734,_0x1ddd77={'VIBhO':function(_0x106827,_0x1ea218){return _0x106827/_0x1ea218;},'rxivA':function(_0x1e49b9,_0x5b5cfd){return _0x1e49b9>_0x5b5cfd;},'TDXdG':function(_0x1c7b04,_0x167b2e){return _0x1c7b04+_0x167b2e;},'OcgnY':function(_0x459c89,_0x42c664){return _0x459c89/_0x42c664;},'vGbqA':function(_0xb906cf,_0x5306f8){return _0xb906cf-_0x5306f8;},'oVMwd':function(_0x52de0c,_0x5d8e61){return _0x52de0c+_0x5d8e61;}},_0x763d5=this['metrics'][_0x56d340(0xf9)][_0x56d340(0x104)]>0x0?_0x1ddd77[_0x56d340(0xf7)](this['metrics'][_0x56d340(0xf9)]['reduce']((_0x4fef83,_0x50f766)=>_0x4fef83+_0x50f766,0x0),this[_0x56d340(0xc0)]['processingTimes']['length']):0x0,_0x3cdb0b=_0x1ddd77[_0x56d340(0xce)](this['metrics'][_0x56d340(0xf9)]['length'],0x0)?Math['min'](...this['metrics'][_0x56d340(0xf9)]):0x0,_0x1ab47f=_0x1ddd77[_0x56d340(0xce)](this['metrics']['processingTimes'][_0x56d340(0x104)],0x0)?Math[_0x56d340(0xee)](...this[_0x56d340(0xc0)]['processingTimes']):0x0;return{'messagesReceived':this[_0x56d340(0xc0)][_0x56d340(0xe1)],'messagesProcessed':this['metrics'][_0x56d340(0x113)],'messagesFailed':this['metrics']['messagesFailed'],'successRate':this[_0x56d340(0xc0)][_0x56d340(0xe1)]>0x0?_0x1ddd77['TDXdG']((this['metrics']['messagesProcessed']/this['metrics'][_0x56d340(0xe1)]*0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this['metrics'][_0x56d340(0xb5)],'startTime':this['metrics'][_0x56d340(0xfe)],'uptime':this['metrics'][_0x56d340(0xfe)]?Math[_0x56d340(0xdf)](_0x1ddd77['OcgnY'](_0x1ddd77['vGbqA'](Date[_0x56d340(0xc5)](),this[_0x56d340(0xc0)][_0x56d340(0xfe)]['getTime']()),0x3e8))+'s':'0s','processingTime':{'avg':Math[_0x56d340(0xd7)](_0x763d5)+'ms','min':_0x1ddd77[_0x56d340(0x11b)](_0x3cdb0b,'ms'),'max':_0x1ab47f+'ms'}};}[a0_0x25c734(0xaa)](){const _0x24c3af=a0_0x25c734;this[_0x24c3af(0xc0)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this[_0x24c3af(0xbe)]?new Date():null,'processingTimes':[]},console[_0x24c3af(0xe4)](_0x24c3af(0xca));}async[a0_0x25c734(0xd6)](){await this['stop']();}}function a0_0x3ec6(){const _0x11ce60=['A2fMA2fQCW','CMv0CNLezwXHEq','Cgf1C2u','AxnsDw5UAw5N','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','Bwv0CMLJCW','y29UBMvJDa','y2XPzw50swq','C3vIC2nYAwjL','q3jZqK0','BM93','AM9PBG','y29UC3vTzxi','AxnqyxvZzwq','DgLTzxn0yw1W','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','z2v0twv0CMLJCW','BwvZC2fNzuHHBMrSzxi','Bwf4qNL0zxnqzxjqyxj0AxrPB24','CNHPDKe','CgfYC2u','s0fgs0fFq09otKvdveLptL9usu1ft1vu','AgvHCNrIzwf0sw50zxj2ywW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','z2v0u3rHDhvZ','mxr6vvzprG','ChvZAa','y2XVC2u','CM91BMq','CNvU','u3jHueG','s0fgs0fFu0fttf9nruniqu5ju00','uKDhEvy','zw5HyMXLza','v0fstG','ntC3nJC5m1DQB2Pjva','zMXVB3i','C3bSAxq','BwvZC2fNzxnszwnLAxzLza','BLnLqK0','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','Bg9N','CgfYC2vizwfKzxjZ','Cgf5Bg9Hza','zw52','yxv0B0nVBw1PDa','su5gtW','icHMCM9TqMvNAw5UAw5NoIa','mtqYodKXnLz5rvPLBq','mta0odu3nG','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','Bwf4','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','mtbpt3zcB1K','s0fgs0fFuKvuuLLFrevmqvK','AxnjBML0AwfSAxPPBMC','BwfW','C3vIC2nYAwjLzfrVCgLJCW','z2v0q29UzMLN','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq','vKLcAe8','twTcsvK','ChjVy2vZC2LUz1rPBwvZ','z3jVDxbjza','zujhq3K','nJy1nZK5meLuDKvTyG','mJu0ndKZnLDYAMHSsa','C3rHCNruAw1L','BwvZC2fNzxngywLSzwq','y29TBwL0t2zMC2v0CW','w0THzMTHq29UC3vTzxjDifnLzwSGzxjYB3i6ia','Evvjuem','lwnVBNn1BwvYlwDYB3vW','BgvUz3rO','C3rHCNrdB25ZDw1PBMC','tfzYCfq','s0fgs0fFu0fttf9qqvntv09sra','mJaWndqWmgf0v0fluq','AgvHzgvYCW','s0fgs0fFtufyx0jzvevtx1bfuL9qqvjusvrjt04','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','zgLZy29UBMvJDa','lwnVBNn1BwvY','tK9useLorW','AxnbCNjHEq','yNjVA2vYCW','nZa2odu0ruXPBNvL','zxHWB3j0CW','BwvZC2fNzxnqCM9JzxnZzwq','s0fgs0fFqLjps0vsuW','Dg9tDhjPBMC','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','C3rVCa','mZaWmda','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','y29UC3vTzxiUCMvIywXHBMnPBMC','B1znD2q','y29UC3vTzxiUzgLZy29UBMvJDa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','Dhj1zq','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','mJfYwvn2yvu','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','zxjYB3i','ugfJsw0','mta2ote3mZLeBxz1uw0','CMvZzxrnzxrYAwnZ','qKjpCvC','Dg9mB3DLCKnHC2u','rLzgzwO','AxndB25Uzwn0zwq','y29UC3vTzxiUC3rVCa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','Bg9JywXOB3n0oJKWoti','B0Xktvi','mta4s3nZwvDW','A2v5','BgfZDe1LC3nHz2vuAw1L','v3nlrNC','BwvZC2fNzq','DMHNEeO','mJb3u3nmEKS','y29UBMvJDgLVBLbYB21PC2u'];a0_0x3ec6=function(){return _0x11ce60;};return a0_0x3ec6();}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){const _0x30a5d5=a0_0x25c734;instance&&(instance[_0x30a5d5(0xd6)](),instance=null);}function createInstance(){return new KafkaConsumerService();}module[a0_0x25c734(0x112)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x2bbd95=a0_0x4983;(function(_0x2e58ae,_0x36dffd){const _0x1ba749=a0_0x4983,_0x3d8066=_0x2e58ae();while(!![]){try{const _0x1689c5=parseInt(_0x1ba749(0x1f5))/0x1*(parseInt(_0x1ba749(0x1a5))/0x2)+-parseInt(_0x1ba749(0x1ad))/0x3+parseInt(_0x1ba749(0x1b2))/0x4+parseInt(_0x1ba749(0x1b5))/0x5+parseInt(_0x1ba749(0x1bd))/0x6*(parseInt(_0x1ba749(0x1f4))/0x7)+-parseInt(_0x1ba749(0x1eb))/0x8+parseInt(_0x1ba749(0x1a4))/0x9;if(_0x1689c5===_0x36dffd)break;else _0x3d8066['push'](_0x3d8066['shift']());}catch(_0x291138){_0x3d8066['push'](_0x3d8066['shift']());}}}(a0_0x213d,0xaa0cf));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require('uuid');function a0_0x4983(_0x50a911,_0x1bf383){_0x50a911=_0x50a911-0x1a1;const _0x213d5b=a0_0x213d();let _0x498342=_0x213d5b[_0x50a911];if(a0_0x4983['QGfyqc']===undefined){var _0x17d2b0=function(_0x5e1106){const _0x618dbc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4dd50b='',_0x3f9a4d='';for(let _0x862d8c=0x0,_0x3369f8,_0xdcee0e,_0xd61732=0x0;_0xdcee0e=_0x5e1106['charAt'](_0xd61732++);~_0xdcee0e&&(_0x3369f8=_0x862d8c%0x4?_0x3369f8*0x40+_0xdcee0e:_0xdcee0e,_0x862d8c++%0x4)?_0x4dd50b+=String['fromCharCode'](0xff&_0x3369f8>>(-0x2*_0x862d8c&0x6)):0x0){_0xdcee0e=_0x618dbc['indexOf'](_0xdcee0e);}for(let _0x530dfe=0x0,_0xcf294=_0x4dd50b['length'];_0x530dfe<_0xcf294;_0x530dfe++){_0x3f9a4d+='%'+('00'+_0x4dd50b['charCodeAt'](_0x530dfe)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3f9a4d);};a0_0x4983['VZToNF']=_0x17d2b0,a0_0x4983['PoMPHm']={},a0_0x4983['QGfyqc']=!![];}const _0xa50075=_0x213d5b[0x0],_0x37ef9b=_0x50a911+_0xa50075,_0x46ae33=a0_0x4983['PoMPHm'][_0x37ef9b];return!_0x46ae33?(_0x498342=a0_0x4983['VZToNF'](_0x498342),a0_0x4983['PoMPHm'][_0x37ef9b]=_0x498342):_0x498342=_0x46ae33,_0x498342;}function a0_0x213d(){const _0x1d2998=['y29YCI0','mtaWma','y2XPzw50swq','icHRzxK6ia','zxHWB3j0CW','z2v0rgf0zq','DgfIBgvoyw1L','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','zw52','u3LRvNa','ChvIBgLZAfvWzgf0zq','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','BgzUufq','y2XVC2u','CMv0CNLezwXHEq','AxndB25Uzwn0zwq','z2v0q29UzMLN','E2vUzhbVAw50Fq','AxnjBML0AwfSAxPPBMC','v0fstG','CMvXDwvZDfrPBwvVDxq','y3jLyxrLzej5','lxbYB2r1y2vY','s0fgs0fFuKvuuLLFqvruru1qvfm','DgvUyw50swq','tKP0tw8','CgfYDgL0Aw9U','AxPIBMW','Bw9KDwXL','ChvIBgLZAev2zw50','odK2otyXnKfrwLfqvq','ru5usvrzx0nsrufuruq','z2v0tw9UDgG','u1Ltvevn','s0fgs0fFte9hx0XfvKvm','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','shjbC3i','A2fMA2e','mJC0mdG3mwnnyMrNDW','mtmYndLRBerZuwm','sLjzqMq','Bg9N','CgfKu3rHCNq','y29UBMvJDgLVBLbYB21PC2u','CMvZDgzVCMDLlq','nZy5mZaYmgT6z3LxEG','mti0BNjXuxru','AM9PBG','s0fgs0fFru5bqKXfra','Dw5RBM93BG','y3jHv3C','z2v0twLUDxrLCW','sgLmuMu','yNjVA2vYCW','mJmWmteWnxjhsejcrW','yNvPBgruB3bPy05HBwu','s0fgs0fFqLjps0vsuW','Dg9vChbLCKnHC2u','zgvMyxvSDa','mJaWoti3mNrqq0zlqW','s0fgs0fFu0fttf9nruniqu5ju00','ru5usvrzx0rftevuruq','nZmZnZv0uKLttNm','qxbnCfG','Dg9WAwm','y3jLyxrLza','ms4W','DxbKyxrLza','rvjst1i','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','nNPmDhP0sq','revcvuC','s0fgs0fFve9qsunFuefuvevstG','ChvIBgLZAerLBgv0zq','CMv0CNLbDhrLBxb0CW','ExvYD0y','su5gtW','s0fgs0fFu1nm','ChjVzhvJzxiUzgLZy29UBMvJDa','ChjVzhvJzxi','z2v0sg91CNm','Dhj1zq','yNvPBgrfDMvUDe1LC3nHz2u','A2v5rMLLBgq','Aw5PDgLHBgL6zq','s0fgs0fFvevoqu5ux0Le'];a0_0x213d=function(){return _0x1d2998;};return a0_0x213d();}class KafkaService{constructor(){const _0x315da4=a0_0x4983;this[_0x315da4(0x1f3)]=null,this[_0x315da4(0x1c6)]=null,this[_0x315da4(0x1dc)]=![],this['isInitializing']=![],this[_0x315da4(0x1a2)]=null;}[a0_0x2bbd95(0x1dd)](){const _0x52c0dc=a0_0x2bbd95,_0xf00527={'yurwF':'localhost:9092','lfnPT':function(_0x3421d4,_0x1c1c49){return _0x3421d4(_0x1c1c49);},'craWw':_0x52c0dc(0x1bc),'cMzMk':function(_0x433463,_0x2db7f8){return _0x433463(_0x2db7f8);}};return{'enabled':process[_0x52c0dc(0x1d5)][_0x52c0dc(0x1a7)]===_0x52c0dc(0x1c8),'brokers':(process['env'][_0x52c0dc(0x1af)]||_0xf00527[_0x52c0dc(0x1c2)])['split'](','),'clientId':process['env']['KAFKA_CLIENT_ID']||_0x52c0dc(0x1a3)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x52c0dc(0x1b1))+_0x52c0dc(0x1e3),'connectionTimeout':_0xf00527[_0x52c0dc(0x1d9)](parseInt,process[_0x52c0dc(0x1d5)]['KAFKA_CONNECTION_TIMEOUT']||'3000'),'requestTimeout':_0xf00527['lfnPT'](parseInt,process['env']['KAFKA_REQUEST_TIMEOUT']||'25000'),'topicPattern':process['env'][_0x52c0dc(0x1bf)]||_0xf00527[_0x52c0dc(0x1a9)],'tenantId':process[_0x52c0dc(0x1d5)][_0x52c0dc(0x1cc)]||_0x52c0dc(0x1b1),'retryAttempts':parseInt(process['env'][_0x52c0dc(0x1e4)]||'3'),'retryDelay':_0xf00527['cMzMk'](parseInt,process['env']['KAFKA_RETRY_DELAY']||_0x52c0dc(0x1ce)),'logLevel':process['env'][_0x52c0dc(0x1ef)]||'warn'};}['getLogLevel'](_0x58c4d1){const _0x16889a=a0_0x2bbd95,_0x456da9={'nothing':logLevel['NOTHING'],'error':logLevel[_0x16889a(0x1bb)],'warn':logLevel['WARN'],'info':logLevel[_0x16889a(0x1c3)],'debug':logLevel[_0x16889a(0x1be)]};return _0x456da9[_0x58c4d1['toLowerCase']()]||logLevel[_0x16889a(0x1e0)];}async[a0_0x2bbd95(0x1cb)](){const _0x1e627c=a0_0x2bbd95,_0x43cdd3={'SykVp':_0x1e627c(0x1d8),'UFEJT':_0x1e627c(0x1c5),'oeeHd':function(_0x1c27fe,_0x5a5589){return _0x1c27fe(_0x5a5589);},'HrAsr':'[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'},_0x40c17e=this['getConfig']();if(!_0x40c17e['enabled'])return console[_0x1e627c(0x1f7)](_0x43cdd3[_0x1e627c(0x1f2)]),![];if(this['isConnected'])return!![];if(this[_0x1e627c(0x1df)]&&this['connectionPromise'])return this[_0x1e627c(0x1a2)];return this[_0x1e627c(0x1df)]=!![],this['connectionPromise']=new Promise(async _0x203c9f=>{const _0x3318dd=_0x1e627c;try{let _0x436896=undefined;process['env'][_0x3318dd(0x1c4)]==='true'&&(_0x436896=!![]);let _0x648921=undefined;process['env']['KAFKA_SASL_MECHANISM']&&(_0x648921={'mechanism':process['env'][_0x3318dd(0x1b3)],'username':process[_0x3318dd(0x1d5)]['KAFKA_SASL_USERNAME']||'','password':process[_0x3318dd(0x1d5)]['KAFKA_SASL_PASSWORD']||''}),this[_0x3318dd(0x1f3)]=new Kafka({'clientId':_0x40c17e[_0x3318dd(0x1cf)],'brokers':_0x40c17e['brokers'],'connectionTimeout':_0x40c17e['connectionTimeout'],'requestTimeout':_0x40c17e[_0x3318dd(0x1e1)],'logLevel':this['getLogLevel'](_0x40c17e['logLevel']),'ssl':_0x436896,'sasl':_0x648921,'retry':{'initialRetryTime':_0x40c17e[_0x3318dd(0x1db)],'retries':_0x40c17e[_0x3318dd(0x1c1)]}}),this['producer']=this['kafka']['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners['LegacyPartitioner']}),await this['producer']['connect'](),this[_0x3318dd(0x1dc)]=!![],console[_0x3318dd(0x1f7)](_0x3318dd(0x1d4)+_0x40c17e[_0x3318dd(0x1ac)][_0x3318dd(0x1a6)](',\x20')),this[_0x3318dd(0x1c6)]['on'](_0x43cdd3['UFEJT'],()=>{const _0x198022=_0x3318dd;console['log'](_0x43cdd3[_0x198022(0x1d6)]),this['isConnected']=![];}),_0x43cdd3['oeeHd'](_0x203c9f,!![]);}catch(_0x7caf04){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x7caf04['message']),this['isConnected']=![],_0x203c9f(![]);}finally{this['isInitializing']=![];}}),this[_0x1e627c(0x1a2)];}['formatDateTime'](_0xf4f098){const _0x53b176=a0_0x2bbd95,_0x16a4da={'NJtMo':function(_0x25f58b,_0x26f668){return _0x25f58b(_0x26f668);},'dubYy':function(_0x5196d1,_0x1e5844){return _0x5196d1(_0x1e5844);}},_0x440465=_0xf4f098||new Date(),_0x2e69fa=_0x440465['getFullYear'](),_0x28d579=String(_0x440465[_0x53b176(0x1ed)]()+0x1)[_0x53b176(0x1a1)](0x2,'0'),_0x2713ae=_0x16a4da[_0x53b176(0x1e6)](String,_0x440465[_0x53b176(0x1d2)]())['padStart'](0x2,'0'),_0x1ccc56=String(_0x440465[_0x53b176(0x1c7)]())[_0x53b176(0x1a1)](0x2,'0'),_0x2afc38=_0x16a4da['dubYy'](String,_0x440465[_0x53b176(0x1aa)]())[_0x53b176(0x1a1)](0x2,'0'),_0x53579f=String(_0x440465['getSeconds']())[_0x53b176(0x1a1)](0x2,'0');return _0x2e69fa+'-'+_0x28d579+'-'+_0x2713ae+'\x20'+_0x1ccc56+':'+_0x2afc38+':'+_0x53579f;}['buildTopicName'](_0x45e8f1,_0x4e3ada,_0x316321,_0x1b5f66=null){const _0x306439=a0_0x2bbd95,_0x567efb={'DQQhq':_0x306439(0x1de)};if(_0x1b5f66)return _0x1b5f66;const _0x48e1b7=this[_0x306439(0x1dd)]()['topicPattern'];return _0x48e1b7['replace']('{module}',_0x45e8f1)['replace'](_0x567efb['DQQhq'],_0x4e3ada)['replace']('{action}',_0x316321);}[a0_0x2bbd95(0x1c9)](_0x194498,_0x13d03f,_0x1fe981,_0x53d047={}){const _0x3f15f1=a0_0x2bbd95,_0x2a70de={'sETcG':function(_0x595c2d){return _0x595c2d();},'UGUEc':_0x3f15f1(0x1b9),'izbnl':_0x3f15f1(0x1a8),'QBxRg':_0x3f15f1(0x1ee)},_0x1a51a0=new Date(),_0xe7ce9d=this['formatDateTime'](_0x1a51a0),_0x4abd0b=_0x53d047['correlationId']||_0x3f15f1(0x1cd)+uuidv7();return{'eventId':'evt-'+_0x2a70de['sETcG'](uuidv7),'eventType':_0x194498,'eventTime':_0xe7ce9d,'eventVersion':_0x2a70de['UGUEc'],'source':'restforge-'+(_0x53d047['module']||_0x2a70de[_0x3f15f1(0x1e8)]),'correlationId':_0x4abd0b,'newData':_0x1fe981,'oldData':_0x13d03f,'metadata':{'createdBy':_0x53d047[_0x3f15f1(0x1e2)]||_0x2a70de['QBxRg'],'createdAt':_0xe7ce9d,'systemId':'RESTFORGE-'+(_0x53d047[_0x3f15f1(0x1e9)]||_0x2a70de['izbnl'])[_0x3f15f1(0x1b0)](),'tenantId':this[_0x3f15f1(0x1dd)]()[_0x3f15f1(0x1e5)],'endpoint':_0x53d047['endpoint']||null,'tableName':_0x53d047['tableName']||null}};}async[a0_0x2bbd95(0x1ea)](_0x1592ea,_0x3b3439,_0xa2dbe7,_0x3d49d7,_0x59ff98={}){const _0x121aa8=a0_0x2bbd95,_0x11aaa3={'ApMpX':_0x121aa8(0x1f0)},_0x4ea27a=this['getConfig']();if(!_0x4ea27a['enabled'])return{'success':![],'reason':_0x11aaa3[_0x121aa8(0x1b6)],'published':![]};if(!this[_0x121aa8(0x1dc)]){const _0x207623=await this['initialize']();if(!_0x207623)return{'success':![],'reason':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','published':![]};}try{const _0xc66216=this['buildEventMessage'](_0x3b3439,_0xa2dbe7,_0x3d49d7,_0x59ff98),_0x4ae3f5=_0x59ff98[_0x121aa8(0x1ca)]||'id',_0x461fc8=_0x3d49d7?.[_0x4ae3f5]||_0xa2dbe7?.[_0x4ae3f5]||uuidv7(),_0x4b1ec9=await this[_0x121aa8(0x1c6)]['send']({'topic':_0x1592ea,'messages':[{'key':String(_0x461fc8),'value':JSON['stringify'](_0xc66216),'headers':{'event-type':_0x3b3439,'correlation-id':_0xc66216['correlationId'],'source':_0xc66216['source']}}]});return console['log']('[Kafka]\x20Event\x20published\x20to\x20'+_0x1592ea+':\x20'+_0x3b3439+_0x121aa8(0x1d0)+_0x461fc8+')'),{'success':!![],'correlationId':_0xc66216['correlationId'],'topic':_0x1592ea,'partition':_0x4b1ec9[0x0]?.[_0x121aa8(0x1e7)],'offset':_0x4b1ec9[0x0]?.['baseOffset'],'published':!![]};}catch(_0x1d944f){return console['error'](_0x121aa8(0x1f1)+_0x1592ea+':\x20'+_0x1d944f['message']),{'success':![],'error':_0x1d944f['message'],'published':![]};}}async['publishInsert'](_0x2c431a,_0x590b46,_0x57b51d,_0x5893ea={}){const _0x56ba93=a0_0x2bbd95,_0x1a035c=this[_0x56ba93(0x1ae)](_0x2c431a,_0x590b46,_0x56ba93(0x1b8),_0x5893ea[_0x56ba93(0x1b7)]);return this[_0x56ba93(0x1ea)](_0x1a035c,_0x56ba93(0x1ec),null,_0x57b51d,{'module':_0x2c431a,'endpoint':_0x590b46,'keyField':_0x5893ea[_0x56ba93(0x1ca)],'tableName':_0x5893ea[_0x56ba93(0x1d3)],'correlationId':_0x5893ea['correlationId']});}async[a0_0x2bbd95(0x1d7)](_0x4d3ebb,_0x382192,_0x29053c,_0x3af20b,_0x368e78={}){const _0x59f03a=a0_0x2bbd95,_0x93e2c7={'CQUWP':_0x59f03a(0x1ba)},_0x4cd797=this[_0x59f03a(0x1ae)](_0x4d3ebb,_0x382192,_0x93e2c7['CQUWP'],_0x368e78['topic']);return this['publishEvent'](_0x4cd797,'ENTITY_UPDATED',_0x29053c,_0x3af20b,{'module':_0x4d3ebb,'endpoint':_0x382192,'keyField':_0x368e78['keyField'],'tableName':_0x368e78[_0x59f03a(0x1d3)],'correlationId':_0x368e78['correlationId']});}async[a0_0x2bbd95(0x1c0)](_0xf4b1b1,_0x465795,_0xa0a463,_0x4c5458={}){const _0x2f1750=a0_0x2bbd95,_0x3ed52a={'HiLRe':'deleted'},_0x40fd20=this[_0x2f1750(0x1ae)](_0xf4b1b1,_0x465795,_0x3ed52a[_0x2f1750(0x1ab)],_0x4c5458[_0x2f1750(0x1b7)]);return this['publishEvent'](_0x40fd20,_0x2f1750(0x1b4),_0xa0a463,null,{'module':_0xf4b1b1,'endpoint':_0x465795,'keyField':_0x4c5458['keyField'],'tableName':_0x4c5458[_0x2f1750(0x1d3)],'correlationId':_0x4c5458['correlationId']});}['getStatus'](){const _0x3eb00c=a0_0x2bbd95,_0xe08eae=this['getConfig']();return{'enabled':_0xe08eae['enabled'],'connected':this['isConnected'],'brokers':_0xe08eae[_0x3eb00c(0x1ac)],'clientId':_0xe08eae['clientId'],'topicPattern':_0xe08eae['topicPattern']};}async['close'](){const _0x5d64e3=a0_0x2bbd95,_0x1aa8ad={'JRYBd':'[Kafka]\x20Producer\x20disconnected\x20gracefully'};if(this['producer']&&this['isConnected'])try{await this[_0x5d64e3(0x1c6)]['disconnect'](),this['isConnected']=![],console[_0x5d64e3(0x1f7)](_0x1aa8ad[_0x5d64e3(0x1f6)]);}catch(_0x31233c){console['error']('[Kafka]\x20Error\x20disconnecting:\x20'+_0x31233c['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){const _0x5e6812=a0_0x2bbd95;instance&&(instance[_0x5e6812(0x1da)](),instance=null);}module[a0_0x2bbd95(0x1d1)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
1
|
+
const a0_0x2e22a0=a0_0x2bec;(function(_0x1f9eeb,_0xec7195){const _0x5cb839=a0_0x2bec,_0x22414f=_0x1f9eeb();while(!![]){try{const _0x3cf353=parseInt(_0x5cb839(0x14d))/0x1+-parseInt(_0x5cb839(0x176))/0x2*(parseInt(_0x5cb839(0x14f))/0x3)+parseInt(_0x5cb839(0x151))/0x4+parseInt(_0x5cb839(0x17c))/0x5*(-parseInt(_0x5cb839(0x18a))/0x6)+-parseInt(_0x5cb839(0x166))/0x7+-parseInt(_0x5cb839(0x17d))/0x8*(-parseInt(_0x5cb839(0x169))/0x9)+-parseInt(_0x5cb839(0x15a))/0xa*(parseInt(_0x5cb839(0x16f))/0xb);if(_0x3cf353===_0xec7195)break;else _0x22414f['push'](_0x22414f['shift']());}catch(_0x3d6b17){_0x22414f['push'](_0x22414f['shift']());}}}(a0_0x3e3d,0x4985d));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require('uuid');class KafkaService{constructor(){const _0x2f6975=a0_0x2bec;this['kafka']=null,this[_0x2f6975(0x18e)]=null,this[_0x2f6975(0x187)]=![],this['isInitializing']=![],this[_0x2f6975(0x14a)]=null;}['getConfig'](){const _0x5113a2=a0_0x2bec,_0x2ba2a7={'Edtaj':function(_0x338ab1,_0xddda6c){return _0x338ab1===_0xddda6c;},'bWMcA':_0x5113a2(0x184),'rTyYe':'3000','ifgAP':function(_0x18fb03,_0x58e7fb){return _0x18fb03(_0x58e7fb);},'MRFMm':'25000','Urhbw':'1000'};return{'enabled':_0x2ba2a7['Edtaj'](process[_0x5113a2(0x145)][_0x5113a2(0x188)],'true'),'brokers':(process[_0x5113a2(0x145)][_0x5113a2(0x186)]||_0x2ba2a7[_0x5113a2(0x163)])['split'](','),'clientId':process['env']['KAFKA_CLIENT_ID']||_0x5113a2(0x156)+(process['env'][_0x5113a2(0x16c)]||'default')+'-producer','connectionTimeout':parseInt(process['env']['KAFKA_CONNECTION_TIMEOUT']||_0x2ba2a7['rTyYe']),'requestTimeout':_0x2ba2a7[_0x5113a2(0x173)](parseInt,process['env']['KAFKA_REQUEST_TIMEOUT']||_0x2ba2a7[_0x5113a2(0x161)]),'topicPattern':process[_0x5113a2(0x145)]['KAFKA_TOPIC_PATTERN']||_0x5113a2(0x183),'tenantId':process[_0x5113a2(0x145)]['KAFKA_TENANT_ID']||_0x5113a2(0x18f),'retryAttempts':_0x2ba2a7[_0x5113a2(0x173)](parseInt,process['env'][_0x5113a2(0x152)]||'3'),'retryDelay':_0x2ba2a7['ifgAP'](parseInt,process['env'][_0x5113a2(0x190)]||_0x2ba2a7['Urhbw']),'logLevel':process[_0x5113a2(0x145)]['KAFKA_LOG_LEVEL']||'warn'};}['getLogLevel'](_0xe91350){const _0x53e25e=a0_0x2bec,_0x2e4892={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x2e4892[_0xe91350['toLowerCase']()]||logLevel[_0x53e25e(0x178)];}async['initialize'](){const _0x29e246=a0_0x2bec,_0x23c843={'ngmrx':function(_0x1081f8,_0x41bcf4){return _0x1081f8===_0x41bcf4;},'dfePs':function(_0x5af21a,_0x1afafb){return _0x5af21a(_0x1afafb);}},_0x49cc4f=this['getConfig']();if(!_0x49cc4f['enabled'])return console[_0x29e246(0x162)]('[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'),![];if(this['isConnected'])return!![];if(this['isInitializing']&&this[_0x29e246(0x14a)])return this['connectionPromise'];return this[_0x29e246(0x167)]=!![],this['connectionPromise']=new Promise(async _0x21fbb7=>{const _0x338524=_0x29e246;try{let _0x333454=undefined;_0x23c843['ngmrx'](process['env']['KAFKA_SSL'],'true')&&(_0x333454=!![]);let _0x53b771=undefined;process[_0x338524(0x145)]['KAFKA_SASL_MECHANISM']&&(_0x53b771={'mechanism':process['env'][_0x338524(0x15c)],'username':process[_0x338524(0x145)][_0x338524(0x164)]||'','password':process['env'][_0x338524(0x159)]||''}),this['kafka']=new Kafka({'clientId':_0x49cc4f[_0x338524(0x147)],'brokers':_0x49cc4f[_0x338524(0x177)],'connectionTimeout':_0x49cc4f['connectionTimeout'],'requestTimeout':_0x49cc4f[_0x338524(0x191)],'logLevel':this['getLogLevel'](_0x49cc4f[_0x338524(0x17a)]),'ssl':_0x333454,'sasl':_0x53b771,'retry':{'initialRetryTime':_0x49cc4f['retryDelay'],'retries':_0x49cc4f['retryAttempts']}}),this[_0x338524(0x18e)]=this[_0x338524(0x146)]['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x338524(0x18d)]}),await this['producer']['connect'](),this[_0x338524(0x187)]=!![],console['log']('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x49cc4f['brokers']['join'](',\x20')),this[_0x338524(0x18e)]['on']('producer.disconnect',()=>{const _0x253083=_0x338524;console['log'](_0x253083(0x14e)),this['isConnected']=![];}),_0x23c843['dfePs'](_0x21fbb7,!![]);}catch(_0x1b89ca){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x1b89ca[_0x338524(0x150)]),this['isConnected']=![],_0x23c843['dfePs'](_0x21fbb7,![]);}finally{this['isInitializing']=![];}}),this['connectionPromise'];}[a0_0x2e22a0(0x14b)](_0x3f39ea){const _0x3f9f3f=a0_0x2e22a0,_0x3e03fb={'ITZbJ':function(_0x9a1e7,_0x16d0c7){return _0x9a1e7(_0x16d0c7);},'yLZMS':function(_0x81e337,_0x4091b9){return _0x81e337(_0x4091b9);}},_0x2f4d4c=_0x3f39ea||new Date(),_0x340641=_0x2f4d4c[_0x3f9f3f(0x165)](),_0x5b7a02=String(_0x2f4d4c['getMonth']()+0x1)[_0x3f9f3f(0x149)](0x2,'0'),_0x3f5013=String(_0x2f4d4c['getDate']())['padStart'](0x2,'0'),_0x1bee55=_0x3e03fb[_0x3f9f3f(0x153)](String,_0x2f4d4c['getHours']())['padStart'](0x2,'0'),_0x455e56=_0x3e03fb['yLZMS'](String,_0x2f4d4c[_0x3f9f3f(0x16b)]())['padStart'](0x2,'0'),_0xaff3df=_0x3e03fb[_0x3f9f3f(0x175)](String,_0x2f4d4c[_0x3f9f3f(0x15e)]())[_0x3f9f3f(0x149)](0x2,'0');return _0x340641+'-'+_0x5b7a02+'-'+_0x3f5013+'\x20'+_0x1bee55+':'+_0x455e56+':'+_0xaff3df;}['buildTopicName'](_0x5849c5,_0x1e65a8,_0x34b8f2,_0x5e7d19=null){const _0x57af2c=a0_0x2e22a0,_0x56e388={'rEreV':_0x57af2c(0x154)};if(_0x5e7d19)return _0x5e7d19;const _0xa4e3e1=this['getConfig']()[_0x57af2c(0x18c)];return _0xa4e3e1[_0x57af2c(0x172)]('{module}',_0x5849c5)[_0x57af2c(0x172)](_0x57af2c(0x189),_0x1e65a8)[_0x57af2c(0x172)](_0x56e388['rEreV'],_0x34b8f2);}['buildEventMessage'](_0x17bb10,_0x4352b2,_0x2c942e,_0x5cc522={}){const _0x3c4029=a0_0x2e22a0,_0xfb818d={'pluUt':_0x3c4029(0x18b),'HqrLY':'SYSTEM','rpUYJ':'unknown'},_0x594104=new Date(),_0x450863=this['formatDateTime'](_0x594104),_0xc1a60e=_0x5cc522['correlationId']||'corr-'+uuidv7();return{'eventId':_0x3c4029(0x14c)+uuidv7(),'eventType':_0x17bb10,'eventTime':_0x450863,'eventVersion':_0xfb818d[_0x3c4029(0x185)],'source':_0x3c4029(0x156)+(_0x5cc522[_0x3c4029(0x157)]||_0x3c4029(0x179)),'correlationId':_0xc1a60e,'newData':_0x2c942e,'oldData':_0x4352b2,'metadata':{'createdBy':_0x5cc522['createdBy']||_0xfb818d['HqrLY'],'createdAt':_0x450863,'systemId':'RESTFORGE-'+(_0x5cc522['module']||_0xfb818d['rpUYJ'])[_0x3c4029(0x181)](),'tenantId':this['getConfig']()['tenantId'],'endpoint':_0x5cc522['endpoint']||null,'tableName':_0x5cc522['tableName']||null}};}async['publishEvent'](_0x4058e5,_0x509927,_0x50e729,_0x48e477,_0x2e6866={}){const _0x99a20d=a0_0x2e22a0,_0x5203cc={'OjBrn':'Kafka\x20producer\x20is\x20disabled','ugaor':_0x99a20d(0x180)},_0x563ee4=this[_0x99a20d(0x16a)]();if(!_0x563ee4['enabled'])return{'success':![],'reason':_0x5203cc['OjBrn'],'published':![]};if(!this['isConnected']){const _0x588ae6=await this['initialize']();if(!_0x588ae6)return{'success':![],'reason':_0x5203cc['ugaor'],'published':![]};}try{const _0x3fdefa=this[_0x99a20d(0x143)](_0x509927,_0x50e729,_0x48e477,_0x2e6866),_0x599458=_0x2e6866['keyField']||'id',_0x472f45=_0x48e477?.[_0x599458]||_0x50e729?.[_0x599458]||uuidv7(),_0x1254ad=await this['producer']['send']({'topic':_0x4058e5,'messages':[{'key':String(_0x472f45),'value':JSON['stringify'](_0x3fdefa),'headers':{'event-type':_0x509927,'correlation-id':_0x3fdefa[_0x99a20d(0x15b)],'source':_0x3fdefa[_0x99a20d(0x15f)]}}]});return console[_0x99a20d(0x162)](_0x99a20d(0x16d)+_0x4058e5+':\x20'+_0x509927+_0x99a20d(0x182)+_0x472f45+')'),{'success':!![],'correlationId':_0x3fdefa['correlationId'],'topic':_0x4058e5,'partition':_0x1254ad[0x0]?.[_0x99a20d(0x17b)],'offset':_0x1254ad[0x0]?.['baseOffset'],'published':!![]};}catch(_0x3cecd1){return console[_0x99a20d(0x168)]('[Kafka]\x20Publish\x20error\x20to\x20'+_0x4058e5+':\x20'+_0x3cecd1[_0x99a20d(0x150)]),{'success':![],'error':_0x3cecd1['message'],'published':![]};}}async[a0_0x2e22a0(0x16e)](_0x2dfe0f,_0x528292,_0x3116af,_0x22c98d={}){const _0x45b908=a0_0x2e22a0,_0x3e7a08={'Evyat':_0x45b908(0x17f),'rAnOE':'ENTITY_CREATED'},_0x438e62=this[_0x45b908(0x155)](_0x2dfe0f,_0x528292,_0x3e7a08[_0x45b908(0x15d)],_0x22c98d['topic']);return this['publishEvent'](_0x438e62,_0x3e7a08[_0x45b908(0x17e)],null,_0x3116af,{'module':_0x2dfe0f,'endpoint':_0x528292,'keyField':_0x22c98d[_0x45b908(0x144)],'tableName':_0x22c98d[_0x45b908(0x170)],'correlationId':_0x22c98d['correlationId']});}async['publishUpdate'](_0x4af1f1,_0x16dd5f,_0x4855e5,_0x274eb0,_0x442449={}){const _0x34edff=a0_0x2e22a0,_0xdfe6ec=this['buildTopicName'](_0x4af1f1,_0x16dd5f,'updated',_0x442449[_0x34edff(0x171)]);return this['publishEvent'](_0xdfe6ec,'ENTITY_UPDATED',_0x4855e5,_0x274eb0,{'module':_0x4af1f1,'endpoint':_0x16dd5f,'keyField':_0x442449['keyField'],'tableName':_0x442449[_0x34edff(0x170)],'correlationId':_0x442449[_0x34edff(0x15b)]});}async['publishDelete'](_0x593746,_0x15a73a,_0xbc8f56,_0x1be883={}){const _0x33ab7=a0_0x2e22a0,_0x45986={'TNWtZ':'deleted'},_0x5519e2=this['buildTopicName'](_0x593746,_0x15a73a,_0x45986['TNWtZ'],_0x1be883['topic']);return this['publishEvent'](_0x5519e2,'ENTITY_DELETED',_0xbc8f56,null,{'module':_0x593746,'endpoint':_0x15a73a,'keyField':_0x1be883[_0x33ab7(0x144)],'tableName':_0x1be883['tableName'],'correlationId':_0x1be883['correlationId']});}[a0_0x2e22a0(0x174)](){const _0x13529f=a0_0x2e22a0,_0x240329=this[_0x13529f(0x16a)]();return{'enabled':_0x240329[_0x13529f(0x160)],'connected':this['isConnected'],'brokers':_0x240329[_0x13529f(0x177)],'clientId':_0x240329[_0x13529f(0x147)],'topicPattern':_0x240329['topicPattern']};}async[a0_0x2e22a0(0x158)](){const _0x2bb7ef=a0_0x2e22a0,_0x16da2a={'vpoNx':'[Kafka]\x20Producer\x20disconnected\x20gracefully'};if(this['producer']&&this[_0x2bb7ef(0x187)])try{await this[_0x2bb7ef(0x18e)]['disconnect'](),this['isConnected']=![],console[_0x2bb7ef(0x162)](_0x16da2a['vpoNx']);}catch(_0x5c5bf6){console['error'](_0x2bb7ef(0x148)+_0x5c5bf6['message']);}}}let instance=null;function a0_0x3e3d(){const _0x35cb68=['uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','ChvIBgLZAeLUC2vYDa','mtfMDeLKwgO','DgfIBgvoyw1L','Dg9WAwm','CMvWBgfJzq','AwzNqva','z2v0u3rHDhvZ','EuXAtvm','mJH6BhroEwy','yNjVA2vYCW','v0fstG','Dw5RBM93BG','Bg9Ntgv2zwW','CgfYDgL0Aw9U','mtbJzg1YCKC','mZu0ngXXDgXfta','CKfUt0u','y3jLyxrLza','rMfPBgvKihrVignVBM5Ly3qGDg8Gs2fMA2eGyNjVA2vY','Dg9vChbLCKnHC2u','icHRzxK6ia','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','Bg9JywXOB3n0oJKWoti','CgX1vxq','s0fgs0fFqLjps0vsuW','AxndB25Uzwn0zwq','s0fgs0fFru5bqKXfra','E2vUzhbVAw50Fq','mZCWmJm2uvDpyuP6','ms4W','Dg9WAwnqyxr0zxjU','tgvNywn5ugfYDgL0Aw9Uzxi','ChjVzhvJzxi','zgvMyxvSDa','s0fgs0fFuKvuuLLFrevmqvK','CMvXDwvZDfrPBwvVDxq','yNvPBgrfDMvUDe1LC3nHz2u','A2v5rMLLBgq','zw52','A2fMA2e','y2XPzw50swq','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','CgfKu3rHCNq','y29UBMvJDgLVBLbYB21PC2u','zM9YBwf0rgf0zvrPBwu','zxz0lq','ntaWndmZAuPoEgjd','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','nJiWmdD4vNj4Cwi','BwvZC2fNzq','nda5mZG0u0zLC1LM','s0fgs0fFuKvuuLLFqvruru1qvfm','svrAyKO','E2fJDgLVBN0','yNvPBgruB3bPy05HBwu','CMvZDgzVCMDLlq','Bw9KDwXL','y2XVC2u','s0fgs0fFu0fttf9qqvntv09sra','mte5mde0mfjRzevHuq','y29YCMvSyxrPB25jza','s0fgs0fFu0fttf9nruniqu5ju00','rxz5yxq','z2v0u2vJB25KCW','C291CMnL','zw5HyMXLza','tvjgtw0','Bg9N','yLDny0e','s0fgs0fFu0fttf9vu0vstKfnrq','z2v0rNvSBfLLyxi','mJiYnZKWngHgCxPjEG','AxnjBML0AwfSAxPPBMC','zxjYB3i','mteXndjdz3L1Dw0','z2v0q29UzMLN','z2v0twLUDxrLCW'];a0_0x3e3d=function(){return _0x35cb68;};return a0_0x3e3d();}function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function a0_0x2bec(_0x1441d0,_0xa8bd84){_0x1441d0=_0x1441d0-0x143;const _0x3e3ddc=a0_0x3e3d();let _0x2bec92=_0x3e3ddc[_0x1441d0];if(a0_0x2bec['RRUDbW']===undefined){var _0x3986cb=function(_0x3efc54){const _0x44b021='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4fe709='',_0x1f112f='';for(let _0x5a26a8=0x0,_0x50889e,_0x5bb9b1,_0x4eb7af=0x0;_0x5bb9b1=_0x3efc54['charAt'](_0x4eb7af++);~_0x5bb9b1&&(_0x50889e=_0x5a26a8%0x4?_0x50889e*0x40+_0x5bb9b1:_0x5bb9b1,_0x5a26a8++%0x4)?_0x4fe709+=String['fromCharCode'](0xff&_0x50889e>>(-0x2*_0x5a26a8&0x6)):0x0){_0x5bb9b1=_0x44b021['indexOf'](_0x5bb9b1);}for(let _0x30b13e=0x0,_0x48129d=_0x4fe709['length'];_0x30b13e<_0x48129d;_0x30b13e++){_0x1f112f+='%'+('00'+_0x4fe709['charCodeAt'](_0x30b13e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f112f);};a0_0x2bec['EMBpJM']=_0x3986cb,a0_0x2bec['aIcUTI']={},a0_0x2bec['RRUDbW']=!![];}const _0x1e5875=_0x3e3ddc[0x0],_0x583523=_0x1441d0+_0x1e5875,_0x21c1e7=a0_0x2bec['aIcUTI'][_0x583523];return!_0x21c1e7?(_0x2bec92=a0_0x2bec['EMBpJM'](_0x2bec92),a0_0x2bec['aIcUTI'][_0x583523]=_0x2bec92):_0x2bec92=_0x21c1e7,_0x2bec92;}function resetInstance(){const _0x3fb4c5=a0_0x2e22a0;instance&&(instance[_0x3fb4c5(0x158)](),instance=null);}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x154b23=a0_0x3d30;(function(_0xdbd794,_0x4a7f28){const _0x2860c8=a0_0x3d30,_0x106f81=_0xdbd794();while(!![]){try{const _0x48f5f5=parseInt(_0x2860c8(0x96))/0x1+-parseInt(_0x2860c8(0xb7))/0x2+-parseInt(_0x2860c8(0xe1))/0x3*(-parseInt(_0x2860c8(0x97))/0x4)+parseInt(_0x2860c8(0x8d))/0x5*(-parseInt(_0x2860c8(0xc9))/0x6)+parseInt(_0x2860c8(0xe4))/0x7+parseInt(_0x2860c8(0xd3))/0x8*(-parseInt(_0x2860c8(0x99))/0x9)+-parseInt(_0x2860c8(0xde))/0xa*(-parseInt(_0x2860c8(0xe2))/0xb);if(_0x48f5f5===_0x4a7f28)break;else _0x106f81['push'](_0x106f81['shift']());}catch(_0x273324){_0x106f81['push'](_0x106f81['shift']());}}}(a0_0x3a79,0x4e5d7));const dotenv=require('dotenv'),path=require(a0_0x154b23(0xa1)),fs=require('fs'),{v7:uuidv7}=require(a0_0x154b23(0xa7));dotenv[a0_0x154b23(0x8c)]();let MessageHub;function a0_0x3a79(){const _0x3a074a=['mJm2mtyWofrZruzvAG','yxzivKq','tevzvgC','zg1Kzfa','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','C29JA2v0','s29UzMLNDxjHC2KGugXHDgzVCM06ia','twvZC2fNzsbuExbLoIa','zxHWB3j0CW','y2HHBM5LBa','y29UzMLYBwf0Aw9Uq291BNq','mZGWtLjKC0DI','rxjYB3iGBg9HzgLUzYbnzxnZywDLshvIifnesZOG','A3fuvMS','mtmXodG5CgHWv2Tu','mtG5nZK0vw5lA0jk','uezuBg4','mZC0mdyWngv4ueziwa','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','u3rHDhvZieXPC3rLBMvYoIa','y29UBMvJDgvK','BwTKB1y','y29UzMLN','mtuYntCXnuvXAeLhtW','BwvZC2fNzs1Zzw50','CMvJzwL2zxjjBMzV','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','Affcq3G','vw5RBM93BG','CgLK','q2XPzw50ieLel1vZzxjjrdOG','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','ndiWmtu2z0HcBM5W','ohbYswDSDG','tw9KztOGs29UzwTZAsboEwf0yq','mtHtD3LiD2i','zgLZy29UBMvJDgvK','EuHJBKm','zgvMyxvSDa','CvH1t0S','yxvtsK0','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','vw5RBM93BIbLCNjVCG','Cgf0Aa','twvUz2LYAw0GCgvZyw4GA2uGC2vYDMvYlI4U','C3rYAw5NAwz5','vwzys0m','tvnivujFqvbjx1bpuLq','zw5wDva','DxvPza','uLHYzNu','CMvJzwL2zwrbDa','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','wg91Eg8','C3nuy3q','zxjYB3jezxrHAwW','DMDlte0','y2f0zwDVCNK','yNjVywrJyxn0','y29TBxvUAwnHDgLVBLr5Cgu','tvnivujFse9tva','Bg9N','C3vIC2nYAwjLs2v5','r0jXzMi','zgLZy29UBMvJDa','otyZmtu2zNjyvhD3','BwvZC2fNzq','lIbuB3rHBcbRB25MAxjTyxnPoIa','CMvXDwLYzufJAW','Dhj1zq','tvnivujFqvvut19bq0Tot1Dmrurhrq','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','pt09pt09ierbveeGufvcteLtscbnrvntquDfid09pt09pq','DxnLCKLK','CMvHC29U','q29UBMvJDgLVBIb0Aw1LB3v0','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','y2XLyxjdywnOzq','zNvUy3rPB24','Dg9ju09tDhjPBMC','CMvJzwL2zxjjza','AvH0r00','vgLKywSGzgLRzxrHAhvP','nKrtsKTjDa','zffpzKm','zxjYB3i','qK5bAvO','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','s2rpAgK','zw52','q3P3wfG','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','Dg9mB2nHBgvtDhjPBMC'];a0_0x3a79=function(){return _0x3a074a;};return a0_0x3a79();}try{const messagehubPath=path['resolve'](__dirname,a0_0x154b23(0x90));if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x154b23(0xb3)]('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x4f6a4b){console[a0_0x154b23(0xcb)](a0_0x154b23(0xdf)+a0_0x4f6a4b[a0_0x154b23(0xb8)]);throw a0_0x4f6a4b;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x287858){const _0x5d338f=a0_0x154b23,_0x1c8cb2=new Date()[_0x5d338f(0xc5)]();console['log']('['+_0x1c8cb2+']\x20'+_0x287858);}function a0_0x3d30(_0x5b3c5f,_0x1c708d){_0x5b3c5f=_0x5b3c5f-0x88;const _0x3a79b7=a0_0x3a79();let _0x3d304d=_0x3a79b7[_0x5b3c5f];if(a0_0x3d30['lnxboz']===undefined){var _0x588d94=function(_0xecb66f){const _0x3d0cda='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1a74b4='',_0x42acd1='';for(let _0x3baf5a=0x0,_0x3e1e62,_0xf88ae3,_0x56f174=0x0;_0xf88ae3=_0xecb66f['charAt'](_0x56f174++);~_0xf88ae3&&(_0x3e1e62=_0x3baf5a%0x4?_0x3e1e62*0x40+_0xf88ae3:_0xf88ae3,_0x3baf5a++%0x4)?_0x1a74b4+=String['fromCharCode'](0xff&_0x3e1e62>>(-0x2*_0x3baf5a&0x6)):0x0){_0xf88ae3=_0x3d0cda['indexOf'](_0xf88ae3);}for(let _0x34be42=0x0,_0x43f0d8=_0x1a74b4['length'];_0x34be42<_0x43f0d8;_0x34be42++){_0x42acd1+='%'+('00'+_0x1a74b4['charCodeAt'](_0x34be42)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x42acd1);};a0_0x3d30['HZftDy']=_0x588d94,a0_0x3d30['yQhQlb']={},a0_0x3d30['lnxboz']=!![];}const _0x3d80e0=_0x3a79b7[0x0],_0x4e429d=_0x5b3c5f+_0x3d80e0,_0x2fd5e1=a0_0x3d30['yQhQlb'][_0x4e429d];return!_0x2fd5e1?(_0x3d304d=a0_0x3d30['HZftDy'](_0x3d304d),a0_0x3d30['yQhQlb'][_0x4e429d]=_0x3d304d):_0x3d304d=_0x2fd5e1,_0x3d304d;}async function initMessageHub(){const _0x2a6c6c=a0_0x154b23,_0x5ee232={'Tdfvg':function(_0x199b95,_0x2227bb){return _0x199b95===_0x2227bb;},'KdOhi':function(_0x74f9d6,_0x593305){return _0x74f9d6(_0x593305);},'CzwXX':function(_0x247aa6,_0x43c227){return _0x247aa6(_0x43c227);},'sYVCb':_0x2a6c6c(0xc8),'ssTct':function(_0x15836a,_0x5979e7){return _0x15836a(_0x5979e7);},'RvwHB':function(_0x1d7d7e,_0xd0d606){return _0x1d7d7e===_0xd0d606;},'dmddP':function(_0x5d9622,_0x51434f){return _0x5d9622(_0x51434f);},'GBqfb':'message-received','kqTVk':_0x2a6c6c(0x92),'kGoCk':function(_0x44fc3b,_0x45a2f0){return _0x44fc3b&&_0x45a2f0;},'WNRoU':'⚠️\x20Timeout:\x20Tidak\x20dapat\x20terhubung\x20ke\x20MessageHub\x20server\x20dalam\x20waktu\x20yang\x20ditentukan','EXiPc':function(_0x43bbfa,_0x2d3009){return _0x43bbfa(_0x2d3009);},'hQBCx':function(_0x1c3e88,_0x2fe17a){return _0x1c3e88(_0x2fe17a);},'qXuOK':'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======','eoLDC':_0x2a6c6c(0xb0),'avHVD':_0x2a6c6c(0xbb),'PFTln':'websocket','dQOfC':'======\x20INFORMASI\x20CLIENT\x20MESSAGEHUB\x20======','BNAiZ':function(_0x177c5b,_0x1f20ef){return _0x177c5b(_0x1f20ef);},'qRjjA':function(_0x537884,_0x2da05e){return _0x537884(_0x2da05e);},'bPjLK':_0x2a6c6c(0x88),'vgKLM':function(_0x8ddcad,_0x181a0e,_0x208930){return _0x8ddcad(_0x181a0e,_0x208930);},'LEYTg':'Error\x20inisialisasi\x20MessageHub:','USDjj':_0x2a6c6c(0xd1),'RXrfu':'Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'};if(messagehub&&isConnected)return log(_0x5ee232['USDjj']),!![];if(connectionPromise)return _0x5ee232['ssTct'](log,_0x5ee232[_0x2a6c6c(0xa8)]),connectionPromise;return connectionPromise=new Promise(async(_0x369cb3,_0x1ccbad)=>{const _0x30ae3d=_0x2a6c6c,_0x2afe8d={'mkdoV':function(_0x36ca89,_0x47bb7c){return _0x5ee232['kGoCk'](_0x36ca89,_0x47bb7c);},'NxanO':_0x5ee232['WNRoU'],'iXtGM':function(_0x44e3e3,_0x4de6bb){return _0x5ee232['EXiPc'](_0x44e3e3,_0x4de6bb);}};try{_0x5ee232[_0x30ae3d(0x91)](log,_0x5ee232[_0x30ae3d(0x9d)]),log('Waktu\x20Inisialisasi:\x20'+new Date()[_0x30ae3d(0xd2)]()),log(_0x30ae3d(0x98));const _0x2fecd3={'publishKey':process[_0x30ae3d(0xcf)]['MSHUB_PUBLISH_KEY'],'subscribeKey':process[_0x30ae3d(0xcf)]['MSHUB_SUBSCRIBE_KEY'],'userId':process['env']['MSHUB_USER_ID']||'restforge-'+(process['env'][_0x30ae3d(0xcd)]||_0x30ae3d(0x9c))+'-'+process[_0x30ae3d(0x93)],'communicationType':process[_0x30ae3d(0xcf)]['MSHUB_COMMUNICATION_TYPE']||_0x5ee232['eoLDC'],'autoAcknowledge':_0x5ee232['RvwHB'](process['env'][_0x30ae3d(0xbc)],'true'),'acknowledgeMessages':process['env'][_0x30ae3d(0xbd)]===_0x5ee232[_0x30ae3d(0xd4)],'platform':{'type':process[_0x30ae3d(0xcf)]['MSHUB_COMMUNICATION_TYPE']||_0x5ee232[_0x30ae3d(0xe3)],'host':process['env'][_0x30ae3d(0xb2)]||'localhost','api_port':parseInt(process[_0x30ae3d(0xcf)][_0x30ae3d(0xa5)]||0xdf8),'service_port':parseInt(process['env']['MSHUB_SERVICE_PORT']||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x2fecd3),log(_0x5ee232[_0x30ae3d(0xca)]),log(_0x30ae3d(0x94)+messagehub[_0x30ae3d(0xbf)]),_0x5ee232[_0x30ae3d(0xcc)](log,'Publish\x20Key:\x20'+messagehub['publishKey']),log('Subscribe\x20Key:\x20'+messagehub[_0x30ae3d(0xb4)]),_0x5ee232['qRjjA'](log,'Tipe\x20Komunikasi:\x20'+messagehub[_0x30ae3d(0xb1)]),_0x5ee232[_0x30ae3d(0xac)](log,_0x30ae3d(0xd9)+JSON[_0x30ae3d(0xa3)](messagehub['platformConfig'])),log(_0x5ee232['bPjLK']),messagehub['addListener']({'status':function(_0x4b9a32){const _0x27c5c7=_0x30ae3d;log(_0x27c5c7(0x89)+_0x4b9a32[_0x27c5c7(0xaf)]);if(_0x5ee232['Tdfvg'](_0x4b9a32[_0x27c5c7(0xaf)],_0x27c5c7(0x8a)))_0x5ee232[_0x27c5c7(0xce)](log,_0x27c5c7(0xd7)),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0x5ee232[_0x27c5c7(0xd0)](_0x369cb3,!![]);else{if(_0x4b9a32[_0x27c5c7(0xaf)]===_0x27c5c7(0x9a)){const _0x1b003e=_0x4b9a32['isErrorRelated']===!![];!_0x1b003e&&(log(_0x27c5c7(0xc2)+(_0x4b9a32[_0x27c5c7(0xc0)]||_0x5ee232['sYVCb'])),isConnected=![],connectionPromise&&(_0x1ccbad(new Error('Koneksi\x20terputus:\x20'+(_0x4b9a32['reason']||_0x27c5c7(0xc8)))),connectionPromise=null));}else{if(_0x4b9a32['category']===_0x27c5c7(0xcb)){let _0x1b6452=_0x4b9a32[_0x27c5c7(0xad)]||_0x4b9a32['error']||_0x27c5c7(0xa0);_0x5ee232[_0x27c5c7(0xce)](log,'⚠️\x20Error:\x20'+_0x1b6452),isConnected=![],connectionPromise&&(_0x5ee232['ssTct'](_0x1ccbad,new Error(_0x1b6452)),connectionPromise=null);}else{if(_0x5ee232['RvwHB'](_0x4b9a32['category'],_0x27c5c7(0x8e)))_0x5ee232[_0x27c5c7(0xd6)](log,_0x27c5c7(0xaa)+_0x4b9a32['requestId']);else{if(_0x4b9a32[_0x27c5c7(0xaf)]===_0x5ee232[_0x27c5c7(0xb5)]){const _0x2f8e85=_0x4b9a32['receiverInfo']?.['name']||_0x5ee232[_0x27c5c7(0xe0)],_0x331c96=_0x4b9a32[_0x27c5c7(0x8f)]?.['id']||_0x4b9a32[_0x27c5c7(0xc6)],_0x132417=new Date(_0x4b9a32['receiverInfo']?.['receivedAt']||_0x4b9a32[_0x27c5c7(0xa9)]||new Date())['toLocaleTimeString']();log(_0x27c5c7(0x95)+_0x4b9a32['requestId']+'\x20diterima\x20oleh\x20'+_0x2f8e85+'\x20('+_0x331c96+')\x20pada\x20'+_0x132417+_0x27c5c7(0xb9)+(_0x4b9a32[_0x27c5c7(0xdd)]||0x1));}}}}}}}),timeoutHandler=_0x5ee232[_0x30ae3d(0xae)](setTimeout,()=>{const _0x1fb4b4=_0x30ae3d;_0x2afe8d[_0x1fb4b4(0x8b)](!isConnected,connectionPromise)&&(log(_0x2afe8d['NxanO']),_0x2afe8d[_0x1fb4b4(0xc7)](_0x1ccbad,new Error(_0x1fb4b4(0xc1))),connectionPromise=null);},0x2710);}catch(_0xc44ff0){_0x5ee232['CzwXX'](log,'⚠️\x20Error\x20inisialisasi\x20MessageHub:\x20'+_0xc44ff0[_0x30ae3d(0xb8)]),console[_0x30ae3d(0xcb)](_0x5ee232[_0x30ae3d(0xd5)],_0xc44ff0),connectionPromise=null,_0x5ee232['ssTct'](_0x1ccbad,_0xc44ff0);}}),connectionPromise;}async function publishMessage(_0x2988ab,_0x514397,_0x4d0326,_0x2af10f={}){const _0x3c8c96=a0_0x154b23,_0x5ba6d9={'Xouxo':function(_0x22d19b){return _0x22d19b();},'xjrpj':function(_0x194809,_0x1112a0){return _0x194809(_0x1112a0);},'jCwiG':'================================','auSJM':'restforge','kuyjY':'Message\x20sent\x20successfully'};try{!isConnected&&await _0x5ba6d9[_0x3c8c96(0xab)](initMessageHub);const _0x395705=messagehub[_0x3c8c96(0xdc)](_0x2988ab);log(_0x3c8c96(0xbe)),log('Channel\x20Target:\x20'+_0x395705['topic']),log(_0x3c8c96(0xda)+_0x514397),_0x5ba6d9['xjrpj'](log,_0x5ba6d9['jCwiG']);const _0xdc591c={'requireAck':_0x2af10f[_0x3c8c96(0xba)]!==undefined?_0x2af10f['requireAck']:![],'clearCache':_0x2af10f[_0x3c8c96(0xc3)]!==undefined?_0x2af10f['clearCache']:!![],'senderId':messagehub[_0x3c8c96(0xd8)]?messagehub[_0x3c8c96(0xd8)]['id']:_0x5ba6d9[_0x3c8c96(0x9e)]};log(_0x3c8c96(0xa2));const _0x2d0a42={'type':_0x514397,'content':_0x4d0326},_0x5dab5a=await _0x395705['publish'](_0x2d0a42,_0xdc591c);return log(_0x3c8c96(0x9f)+_0x2988ab),{'success':!![],'requestId':_0x5dab5a['requestId'],'topic':_0x2988ab,'message':_0x5ba6d9['kuyjY']};}catch(_0x2eb8ab){return log('⚠️\x20Error\x20publishing\x20message:\x20'+_0x2eb8ab[_0x3c8c96(0xb8)]),{'success':![],'error':_0x2eb8ab[_0x3c8c96(0xb8)],'topic':_0x2988ab,'message':'Failed\x20to\x20send\x20message'};}}async function closeConnection(){const _0xe0854a=a0_0x154b23,_0x14d620={'BzdxF':function(_0x19aab6,_0x566c02){return _0x19aab6(_0x566c02);},'NiBqH':function(_0x4aeaa6,_0x3ed42f){return _0x4aeaa6===_0x3ed42f;},'UfXKC':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()','enVuP':function(_0x450909,_0x337b31){return _0x450909===_0x337b31;},'yHcnC':function(_0x218c68,_0x53276a){return _0x218c68(_0x53276a);},'ZYOIl':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub'};timeoutHandler&&(_0x14d620['BzdxF'](clearTimeout,timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(_0x14d620['NiBqH'](typeof messagehub['disconnect'],'function'))await messagehub['disconnect'](),log(_0x14d620[_0xe0854a(0xa4)]);else{if(typeof messagehub['close']==='function')await messagehub['close'](),_0x14d620['BzdxF'](log,'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()');else messagehub[_0xe0854a(0xd8)]&&_0x14d620[_0xe0854a(0xa6)](typeof messagehub[_0xe0854a(0xd8)]['disconnect'],_0xe0854a(0xc4))?(messagehub[_0xe0854a(0xd8)][_0xe0854a(0xb6)](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()')):_0x14d620[_0xe0854a(0x9b)](log,_0x14d620['ZYOIl']);}isConnected=![],connectionPromise=null;}catch(_0x1c7801){log('Error\x20saat\x20menutup\x20koneksi:\x20'+_0x1c7801[_0xe0854a(0xb8)]);}}module[a0_0x154b23(0xdb)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|
|
1
|
+
const a0_0x13ce71=a0_0x8233;function a0_0x8233(_0x4dbadd,_0x346840){_0x4dbadd=_0x4dbadd-0xe1;const _0x211f6c=a0_0x211f();let _0x823340=_0x211f6c[_0x4dbadd];if(a0_0x8233['VrmPRR']===undefined){var _0x712920=function(_0x1da133){const _0x52dd04='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x26b6fe='',_0xc5f0fe='';for(let _0xd39fc4=0x0,_0x1d08b6,_0x20b78d,_0x41f17e=0x0;_0x20b78d=_0x1da133['charAt'](_0x41f17e++);~_0x20b78d&&(_0x1d08b6=_0xd39fc4%0x4?_0x1d08b6*0x40+_0x20b78d:_0x20b78d,_0xd39fc4++%0x4)?_0x26b6fe+=String['fromCharCode'](0xff&_0x1d08b6>>(-0x2*_0xd39fc4&0x6)):0x0){_0x20b78d=_0x52dd04['indexOf'](_0x20b78d);}for(let _0x1744aa=0x0,_0x3e1520=_0x26b6fe['length'];_0x1744aa<_0x3e1520;_0x1744aa++){_0xc5f0fe+='%'+('00'+_0x26b6fe['charCodeAt'](_0x1744aa)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc5f0fe);};a0_0x8233['fGGEIY']=_0x712920,a0_0x8233['ppZbUh']={},a0_0x8233['VrmPRR']=!![];}const _0x21f6d8=_0x211f6c[0x0],_0x39f737=_0x4dbadd+_0x21f6d8,_0x29f289=a0_0x8233['ppZbUh'][_0x39f737];return!_0x29f289?(_0x823340=a0_0x8233['fGGEIY'](_0x823340),a0_0x8233['ppZbUh'][_0x39f737]=_0x823340):_0x823340=_0x29f289,_0x823340;}function a0_0x211f(){const _0x3741c2=['vgLKywSGzgLRzxrHAhvP','y29TBxvUAwnHDgLVBLr5Cgu','tvnivujFqvbjx1bpuLq','rxjYB3iGC2fHDcbTzw51DhvWigTVBMvRC2K6ia','yLHKz1O','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','zgLZy29UBMvJDa','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','mJiZodyWmJzQtLHwBKO','BwvZC2fNzq','Dg9WAwm','AxnfCNjVCLjLBgf0zwq','CevjBNa','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','nZjIz3Hkz1G','v2fRDhuGsw5PC2LHBgLZyxnPoIa','CMvXDwvZDeLK','zxjYB3i','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','odu2oteWC2XuAxL6','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','mZzlr0HdANK','zxjcA0G','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','CMvXDwLYzufJAW','tvnivujFufvcteLtsf9lrvK','tvnivujFu0vsvKLdrv9qt1ju','AwTZtLe','qwDgB24','y29UzMLYBwf0Aw9Uq291BNq','C29JA2v0','ChvIBgLZAeTLEq','Dhj1zq','mZDIvunStKK','wgvruxm','ChvIBgLZAa','CMvZDgzVCMDL','uK5vvxm','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','r2jTrhq','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','tvLLCM4','y2XLyxjdywnOzq','CLv2qNe','Dg9ju09tDhjPBMC','u0nOzgG','q29UBMvJDgLVBIb0Aw1LB3v0','y2XVC2u','DxvPza','Bu1mAM0','C3rYAw5NAwz5','vw5RBM93BIbLCNjVCG','D0ziCg8','mtb4vxPfEwi','s29UzwTZAsb0zxjWDxr1CZOG','r0PWEge','CMvJzwL2zxjjBMzV','mtiXohL2wMnJvG','nZDcquv6ug0','Cgf0Aa','EhnWANC','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','AxLbBLu','mJKYndCZC3fgwfnu','s2TcC3C','ody2mdK3B0Lcv2j3','tvnivujFse9tva','t1nHCvO','CMvZDgzVCMDLlq','vw5RBM93BG','nJiXmZHLs2DuEMS','rxjYB3iGBg9HzgLUzYbnzxnZywDLshvIifnesZOG','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','qK1ZAxO','u3rHDhvZieXPC3rLBMvYoIa','D2vIC29JA2v0','ksbWywrHia','y2f0zwDVCNK','zxHWB3j0CW','DM5SCfy','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','tvnivujFq09ntvvosunbveLptL9uwvbf','DxnLCKLK','tvrjvNy','zw52','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','EeftueG','lIbuB3rHBcbRB25MAxjTyxnPoIa','ExvwshG','ntiWmtDtA0DYrem','Dg9mB2nHBgvtDhjPBMC','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','Bg9N','mZeWndCXnLfUvhv5ta','wufQwwm','D1PNuhu','CMvHC29U','zxHPC3rZu3LUyW'];a0_0x211f=function(){return _0x3741c2;};return a0_0x211f();}(function(_0x462877,_0x4bebba){const _0x516590=a0_0x8233,_0x442401=_0x462877();while(!![]){try{const _0x1a1570=-parseInt(_0x516590(0x10f))/0x1*(parseInt(_0x516590(0x135))/0x2)+-parseInt(_0x516590(0x130))/0x3+parseInt(_0x516590(0xe9))/0x4*(-parseInt(_0x516590(0x124))/0x5)+parseInt(_0x516590(0x128))/0x6*(-parseInt(_0x516590(0xe5))/0x7)+-parseInt(_0x516590(0xfc))/0x8*(parseInt(_0x516590(0x12e))/0x9)+parseInt(_0x516590(0x101))/0xa*(parseInt(_0x516590(0x129))/0xb)+parseInt(_0x516590(0x103))/0xc*(parseInt(_0x516590(0xf6))/0xd);if(_0x1a1570===_0x4bebba)break;else _0x442401['push'](_0x442401['shift']());}catch(_0x5dff9f){_0x442401['push'](_0x442401['shift']());}}}(a0_0x211f,0xeddbb));const dotenv=require('dotenv'),path=require(a0_0x13ce71(0x12a)),fs=require('fs'),{v7:uuidv7}=require(a0_0x13ce71(0x11f));dotenv['config']();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,'../../js/messagehub.js');if(fs[a0_0x13ce71(0xed)](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x13ce71(0xe8)](a0_0x13ce71(0x102)+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x421537){console['error'](a0_0x13ce71(0x136)+a0_0x421537[a0_0x13ce71(0xf7)]);throw a0_0x421537;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x2d0fd2){const _0x1da666=a0_0x13ce71,_0xd9ff24=new Date()[_0x1da666(0x11b)]();console['log']('['+_0xd9ff24+']\x20'+_0x2d0fd2);}async function initMessageHub(){const _0x8f4107=a0_0x13ce71,_0x2f814e={'iyAnU':function(_0x38c96a,_0x596f8f){return _0x38c96a(_0x596f8f);},'XeQQs':function(_0x1506bb,_0x16b69c){return _0x1506bb(_0x16b69c);},'MYern':function(_0x5f2d98,_0x4fd819){return _0x5f2d98(_0x4fd819);},'Lgbig':'disconnected','GcPMh':_0x8f4107(0xee),'iksNQ':_0x8f4107(0x134),'QaOnr':'default','EWTlJ':'broadcast','pEInp':'true','bXdgZ':function(_0x345c64,_0x266e37){return _0x345c64===_0x266e37;},'FlTPH':_0x8f4107(0x13a),'IwFkS':function(_0x5048e2,_0x5c924b){return _0x5048e2(_0x5c924b);},'rUvBq':'========================================','KkBsw':function(_0x3dc2c1,_0x5eeab2,_0x1758ac){return _0x3dc2c1(_0x5eeab2,_0x1758ac);},'wFHpo':'MessageHub\x20sudah\x20terhubung,\x20menggunakan\x20koneksi\x20yang\x20ada'};if(messagehub&&isConnected)return log(_0x2f814e[_0x8f4107(0x123)]),!![];if(connectionPromise)return log(_0x8f4107(0x116)),connectionPromise;return connectionPromise=new Promise(async(_0x467a42,_0x1aeeba)=>{const _0x4f4907=_0x8f4107,_0x2415ed={'SChdh':function(_0x8e4169,_0x1a9fce){return _0x2f814e['XeQQs'](_0x8e4169,_0x1a9fce);},'dgjuO':function(_0x5d5608,_0x576413){return _0x2f814e['MYern'](_0x5d5608,_0x576413);},'BMsiz':function(_0x11a4ec,_0x39cc2f){return _0x11a4ec===_0x39cc2f;},'RxNfZ':_0x2f814e['Lgbig'],'xASPH':function(_0x290592,_0x44e11e){return _0x290592===_0x44e11e;},'GJpxa':function(_0x35e001,_0x17aa6d){return _0x35e001(_0x17aa6d);},'GbmDt':_0x2f814e['GcPMh'],'OSaqZ':_0x4f4907(0xff),'wZgPu':_0x2f814e[_0x4f4907(0x109)],'RNUUs':function(_0x57f457,_0x5a728b){const _0x4bf15f=_0x4f4907;return _0x2f814e[_0x4bf15f(0x110)](_0x57f457,_0x5a728b);}};try{log('======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======'),log(_0x4f4907(0xfd)+new Date()[_0x4f4907(0xe6)]()),log('Mode:\x20Koneksi\x20Nyata');const _0x256556={'publishKey':process['env'][_0x4f4907(0x107)],'subscribeKey':process[_0x4f4907(0x143)]['MSHUB_SUBSCRIBE_KEY'],'userId':process['env']['MSHUB_USER_ID']||_0x4f4907(0x133)+(process[_0x4f4907(0x143)][_0x4f4907(0x117)]||_0x2f814e['QaOnr'])+'-'+process['pid'],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x2f814e['EWTlJ'],'autoAcknowledge':process['env']['MSHUB_AUTO_ACKNOWLEDGE']===_0x2f814e[_0x4f4907(0xfa)],'acknowledgeMessages':_0x2f814e[_0x4f4907(0xf2)](process[_0x4f4907(0x143)][_0x4f4907(0x137)],_0x4f4907(0x10e)),'platform':{'type':process[_0x4f4907(0x143)][_0x4f4907(0x140)]||_0x2f814e['FlTPH'],'host':process['env'][_0x4f4907(0x131)]||'localhost','api_port':parseInt(process[_0x4f4907(0x143)][_0x4f4907(0xf0)]||0xdf8),'service_port':parseInt(process['env'][_0x4f4907(0x108)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x256556),_0x2f814e['IwFkS'](log,'======\x20INFORMASI\x20CLIENT\x20MESSAGEHUB\x20======'),_0x2f814e['MYern'](log,'Client\x20ID/UserID:\x20'+messagehub[_0x4f4907(0x141)]),_0x2f814e['MYern'](log,'Publish\x20Key:\x20'+messagehub[_0x4f4907(0x10d)]),log('Subscribe\x20Key:\x20'+messagehub['subscribeKey']),_0x2f814e[_0x4f4907(0x118)](log,'Tipe\x20Komunikasi:\x20'+messagehub[_0x4f4907(0xef)]),log('Konfigurasi\x20Platform:\x20'+JSON[_0x4f4907(0x121)](messagehub['platformConfig'])),log(_0x2f814e[_0x4f4907(0x11a)]),messagehub['addListener']({'status':function(_0x27419b){const _0x118dd0=_0x4f4907;_0x2415ed[_0x118dd0(0x11c)](log,_0x118dd0(0x139)+_0x27419b[_0x118dd0(0x13c)]);if(_0x27419b['category']==='connected')log('Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(_0x2415ed['dgjuO'](clearTimeout,timeoutHandler),timeoutHandler=null),_0x467a42(!![]);else{if(_0x2415ed[_0x118dd0(0x138)](_0x27419b[_0x118dd0(0x13c)],_0x2415ed['RxNfZ'])){const _0x34fcf0=_0x2415ed[_0x118dd0(0xe2)](_0x27419b[_0x118dd0(0xf9)],!![]);!_0x34fcf0&&(_0x2415ed[_0x118dd0(0x126)](log,_0x118dd0(0xe7)+(_0x27419b[_0x118dd0(0xec)]||_0x2415ed[_0x118dd0(0x115)])),isConnected=![],connectionPromise&&(_0x1aeeba(new Error(_0x118dd0(0x125)+(_0x27419b[_0x118dd0(0xec)]||_0x2415ed['GbmDt']))),connectionPromise=null));}else{if(_0x27419b[_0x118dd0(0x13c)]===_0x2415ed[_0x118dd0(0x132)]){let _0x5bd8a7=_0x27419b['errorDetail']||_0x27419b[_0x118dd0(0xff)]||_0x118dd0(0x122);log('⚠️\x20Error:\x20'+_0x5bd8a7),isConnected=![],connectionPromise&&(_0x1aeeba(new Error(_0x5bd8a7)),connectionPromise=null);}else{if(_0x27419b['category']==='message-sent')_0x2415ed['GJpxa'](log,_0x118dd0(0x114)+_0x27419b['requestId']);else{if(_0x27419b[_0x118dd0(0x13c)]==='message-received'){const _0x17b5c7=_0x27419b[_0x118dd0(0x127)]?.['name']||_0x2415ed[_0x118dd0(0xeb)],_0x519432=_0x27419b['receiverInfo']?.['id']||_0x27419b['receiverId'],_0x3aee4e=new Date(_0x27419b['receiverInfo']?.['receivedAt']||_0x27419b['receivedAt']||new Date())['toLocaleTimeString']();_0x2415ed[_0x118dd0(0x113)](log,_0x118dd0(0xfb)+_0x27419b[_0x118dd0(0xfe)]+'\x20diterima\x20oleh\x20'+_0x17b5c7+'\x20('+_0x519432+_0x118dd0(0x13b)+_0x3aee4e+_0x118dd0(0xe3)+(_0x27419b[_0x118dd0(0x10b)]||0x1));}}}}}}}),timeoutHandler=_0x2f814e[_0x4f4907(0x12f)](setTimeout,()=>{const _0x2eec0b=_0x4f4907;!isConnected&&connectionPromise&&(log(_0x2eec0b(0xf5)),_0x2f814e[_0x2eec0b(0x12d)](_0x1aeeba,new Error(_0x2eec0b(0x11d))),connectionPromise=null);},0x2710);}catch(_0x4c1a0d){log(_0x4f4907(0x100)+_0x4c1a0d[_0x4f4907(0xf7)]),console[_0x4f4907(0xff)]('Error\x20inisialisasi\x20MessageHub:',_0x4c1a0d),connectionPromise=null,_0x1aeeba(_0x4c1a0d);}}),connectionPromise;}async function publishMessage(_0x15526c,_0x34453e,_0x5d1904,_0xa269b9={}){const _0x31de55=a0_0x13ce71,_0x536ead={'yuVHx':function(_0x5610f3){return _0x5610f3();},'mMLjm':function(_0x2f8dc9,_0x5daa6a){return _0x2f8dc9(_0x5daa6a);},'AgFon':_0x31de55(0x13f),'erBkH':function(_0x53504f,_0x470d02){return _0x53504f!==_0x470d02;},'xspjw':function(_0x12f587,_0xb4a4af){return _0x12f587(_0xb4a4af);},'geXAW':_0x31de55(0x105)};try{!isConnected&&await _0x536ead[_0x31de55(0xe4)](initMessageHub);const _0x3a53dc=messagehub['channel'](_0x15526c);_0x536ead['mMLjm'](log,'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======'),_0x536ead[_0x31de55(0x120)](log,'Channel\x20Target:\x20'+_0x3a53dc[_0x31de55(0xf8)]),log('Message\x20Type:\x20'+_0x34453e),log(_0x536ead[_0x31de55(0x10a)]);const _0x4bf827={'requireAck':_0x536ead['erBkH'](_0xa269b9['requireAck'],undefined)?_0xa269b9[_0x31de55(0x106)]:![],'clearCache':_0x536ead[_0x31de55(0x104)](_0xa269b9[_0x31de55(0x119)],undefined)?_0xa269b9['clearCache']:!![],'senderId':messagehub[_0x31de55(0x10c)]?messagehub[_0x31de55(0x10c)]['id']:_0x31de55(0x112)};_0x536ead[_0x31de55(0x12b)](log,'Mengirim\x20pesan\x20ke\x20server...');const _0x348ce9={'type':_0x34453e,'content':_0x5d1904},_0xe3a0fb=await _0x3a53dc[_0x31de55(0x111)](_0x348ce9,_0x4bf827);return _0x536ead[_0x31de55(0x12b)](log,_0x31de55(0xf3)+_0x15526c),{'success':!![],'requestId':_0xe3a0fb['requestId'],'topic':_0x15526c,'message':_0x536ead['geXAW']};}catch(_0x5440da){return log('⚠️\x20Error\x20publishing\x20message:\x20'+_0x5440da['message']),{'success':![],'error':_0x5440da[_0x31de55(0xf7)],'topic':_0x15526c,'message':_0x31de55(0xe1)};}}async function closeConnection(){const _0x3cd25f=a0_0x13ce71,_0x1c9245={'MTIVv':function(_0x3b0685,_0x2973a0){return _0x3b0685(_0x2973a0);},'grscU':function(_0x438097,_0x40d373){return _0x438097&&_0x40d373;},'oaQIe':function(_0x3525f6,_0x1bf1b2){return _0x3525f6===_0x1bf1b2;},'YAjYc':'function','bptIM':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()','vnlpV':_0x3cd25f(0x12c)};timeoutHandler&&(_0x1c9245[_0x3cd25f(0x142)](clearTimeout,timeoutHandler),timeoutHandler=null);if(_0x1c9245['grscU'](isConnected,messagehub))try{if(_0x1c9245['oaQIe'](typeof messagehub['disconnect'],_0x1c9245[_0x3cd25f(0xea)]))await messagehub['disconnect'](),_0x1c9245['MTIVv'](log,_0x1c9245['bptIM']);else{if(typeof messagehub['close']==='function')await messagehub[_0x3cd25f(0x11e)](),log(_0x1c9245[_0x3cd25f(0x13e)]);else messagehub['socket']&&_0x1c9245['oaQIe'](typeof messagehub[_0x3cd25f(0x10c)][_0x3cd25f(0xf4)],'function')?(messagehub['socket'][_0x3cd25f(0xf4)](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()')):_0x1c9245[_0x3cd25f(0x142)](log,'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub');}isConnected=![],connectionPromise=null;}catch(_0xb8a187){log(_0x3cd25f(0xf1)+_0xb8a187[_0x3cd25f(0xf7)]);}}module[a0_0x13ce71(0x13d)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|