@restforgejs/platform 4.3.4 → 4.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/generators/lib/payload/endpoint-schema-validator.js +181 -181
- package/generators/lib/payload/payload-runner.js +1218 -1218
- package/generators/lib/payload/schema-diff.js +460 -460
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/node_modules/readdir-glob/node_modules/brace-expansion/index.js +1 -1
- package/node_modules/readdir-glob/node_modules/brace-expansion/package.json +1 -1
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const
|
|
1
|
+
'use strict';const a0_0xd0cd3d=a0_0x120f;(function(_0x155308,_0x46d3cc){const _0x2a4b1f=a0_0x120f,_0x3c33b9=_0x155308();while(!![]){try{const _0x33401f=-parseInt(_0x2a4b1f(0x14e))/0x1*(-parseInt(_0x2a4b1f(0x124))/0x2)+-parseInt(_0x2a4b1f(0x126))/0x3*(parseInt(_0x2a4b1f(0x12d))/0x4)+parseInt(_0x2a4b1f(0x143))/0x5*(-parseInt(_0x2a4b1f(0x141))/0x6)+parseInt(_0x2a4b1f(0x14a))/0x7+-parseInt(_0x2a4b1f(0x12b))/0x8*(-parseInt(_0x2a4b1f(0x136))/0x9)+parseInt(_0x2a4b1f(0x149))/0xa*(parseInt(_0x2a4b1f(0x125))/0xb)+-parseInt(_0x2a4b1f(0x152))/0xc*(parseInt(_0x2a4b1f(0x14f))/0xd);if(_0x33401f===_0x46d3cc)break;else _0x3c33b9['push'](_0x3c33b9['shift']());}catch(_0x2a51bd){_0x3c33b9['push'](_0x3c33b9['shift']());}}}(a0_0x5ec4,0x1ed8e));function a0_0x120f(_0x21b6a7,_0x183785){_0x21b6a7=_0x21b6a7-0x124;const _0x5ec454=a0_0x5ec4();let _0x120fd3=_0x5ec454[_0x21b6a7];if(a0_0x120f['avLlJl']===undefined){var _0xe2e0c=function(_0xa2dc5){const _0x19ec9e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4f98d2='',_0x4f4539='';for(let _0x224efa=0x0,_0x402902,_0x3a8cd8,_0x215ac0=0x0;_0x3a8cd8=_0xa2dc5['charAt'](_0x215ac0++);~_0x3a8cd8&&(_0x402902=_0x224efa%0x4?_0x402902*0x40+_0x3a8cd8:_0x3a8cd8,_0x224efa++%0x4)?_0x4f98d2+=String['fromCharCode'](0xff&_0x402902>>(-0x2*_0x224efa&0x6)):0x0){_0x3a8cd8=_0x19ec9e['indexOf'](_0x3a8cd8);}for(let _0x453113=0x0,_0x59297f=_0x4f98d2['length'];_0x453113<_0x59297f;_0x453113++){_0x4f4539+='%'+('00'+_0x4f98d2['charCodeAt'](_0x453113)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4f4539);};a0_0x120f['vjtQjf']=_0xe2e0c,a0_0x120f['RwNfSe']={},a0_0x120f['avLlJl']=!![];}const _0x20e0d5=_0x5ec454[0x0],_0x694ea7=_0x21b6a7+_0x20e0d5,_0x2638b3=a0_0x120f['RwNfSe'][_0x694ea7];return!_0x2638b3?(_0x120fd3=a0_0x120f['vjtQjf'](_0x120fd3),a0_0x120f['RwNfSe'][_0x694ea7]=_0x120fd3):_0x120fd3=_0x2638b3,_0x120fd3;}const multer=require(a0_0xd0cd3d(0x14b)),path=require(a0_0xd0cd3d(0x12e)),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require('./logger');class UploadHandlerV2{constructor(){const _0x19d44a=a0_0xd0cd3d;this[_0x19d44a(0x15e)]=null;}get[a0_0xd0cd3d(0x145)](){const _0x12ad66=a0_0xd0cd3d,_0x2f7d36={'qviqS':_0x12ad66(0x155),'uogFI':_0x12ad66(0x15f)};if(!this[_0x12ad66(0x15e)]){const _0x4bb210=process['env']['RESTFORGE_PROJECT_NAME']||_0x12ad66(0x12c);this[_0x12ad66(0x15e)]=process['env']['UPLOAD_TEMP_DIR']||path[_0x12ad66(0x15b)](process[_0x12ad66(0x13f)](),_0x2f7d36[_0x12ad66(0x147)],_0x2f7d36['uogFI'],_0x4bb210),!fsSync[_0x12ad66(0x148)](this[_0x12ad66(0x15e)])&&fsSync['mkdirSync'](this[_0x12ad66(0x15e)],{'recursive':!![]});}return this['_tempDir'];}[a0_0xd0cd3d(0x13e)](_0x1d0c7c={}){const _0xe86f73=a0_0xd0cd3d,_0x7db3e7={'pBumE':_0xe86f73(0x151)},_0x4a3edb=_0x1d0c7c[_0xe86f73(0x13a)]||0x5,_0x17d7c8=this[_0xe86f73(0x154)](_0x1d0c7c[_0xe86f73(0x157)]||_0xe86f73(0x127)),_0xa6bc13=_0x1d0c7c[_0xe86f73(0x13b)]||[],_0x4e735c=multer[_0xe86f73(0x129)]({'destination':(_0x1e5777,_0xb9762d,_0x3790b3)=>{const _0x5a5347=_0xe86f73;!fsSync[_0x5a5347(0x148)](this[_0x5a5347(0x145)])&&fsSync[_0x5a5347(0x131)](this['tempDir'],{'recursive':!![]}),_0x3790b3(null,this[_0x5a5347(0x145)]);},'filename':(_0x2900cc,_0x4e6878,_0x427d51)=>{const _0xd1acf3=_0xe86f73,_0x1afdeb=crypto['randomBytes'](0x8)['toString']('hex'),_0x30e7d2=Date['now'](),_0x49d8a1=path['extname'](_0x4e6878[_0xd1acf3(0x15a)]);_0x427d51(null,_0xd1acf3(0x133)+_0x30e7d2+'-'+_0x1afdeb+_0x49d8a1);}}),_0x2dcfa3=(_0x1ae3ea,_0x1578a7,_0xca2cd)=>{const _0x1f60c0=_0xe86f73;if(_0xa6bc13['length']===0x0)return _0xca2cd(null,!![]);const _0x27280b=path[_0x1f60c0(0x128)](_0x1578a7['originalname'])[_0x1f60c0(0x156)]()[_0x1f60c0(0x137)]('.','');_0xa6bc13[_0x1f60c0(0x134)](_0x27280b)?_0xca2cd(null,!![]):_0xca2cd(new Error('File\x20type\x20\x22.'+_0x27280b+'\x22\x20is\x20not\x20allowed.\x20Allowed\x20types:\x20'+_0xa6bc13['join'](',\x20')));};return multer({'storage':_0x4e735c,'limits':{'fileSize':_0x17d7c8,'files':_0x4a3edb},'fileFilter':_0x2dcfa3})[_0xe86f73(0x159)](_0x7db3e7[_0xe86f73(0x130)],_0x4a3edb);}async['processUploadedFiles'](_0x50d9a5,_0x54c92d,_0x2ed00e={}){const _0x2716ca=a0_0xd0cd3d,_0x51125f={'fJyhb':'upload_v2_process_error'},{createFileMetadata:_0x140a28}=require('../storage/file-metadata-helper'),_0x3347df=[];for(const _0x520ce1 of _0x50d9a5){try{const _0x49e8dd=_0x54c92d['generateKey'](_0x520ce1[_0x2716ca(0x15a)],{'prefix':_0x2ed00e[_0x2716ca(0x140)]||'','project':_0x2ed00e[_0x2716ca(0x12a)]||'','module':_0x2ed00e[_0x2716ca(0x138)]||'','endpoint':_0x2ed00e['endpoint']||''}),_0x59b66e=fsSync[_0x2716ca(0x142)](_0x520ce1['path']),_0x18f8e7=await _0x54c92d['upload'](_0x59b66e,_0x49e8dd,{'contentType':_0x520ce1['mimetype'],'fileSize':_0x520ce1['size']}),_0x53387d=_0x140a28({'key':_0x18f8e7[_0x2716ca(0x15d)],'originalName':_0x520ce1['originalname'],'fileName':path[_0x2716ca(0x15c)](_0x49e8dd),'contentType':_0x520ce1[_0x2716ca(0x144)],'size':_0x520ce1['size'],'url':_0x18f8e7['url'],'provider':_0x54c92d[_0x2716ca(0x158)],'bucket':_0x54c92d['bucket']||null,'uploadedBy':_0x2ed00e['uploadedBy']||null});_0x3347df[_0x2716ca(0x13c)](_0x53387d);}catch(_0x3dfbbf){logger[_0x2716ca(0x13d)]({'event':_0x51125f[_0x2716ca(0x14d)],'file':_0x520ce1[_0x2716ca(0x15a)],'error':_0x3dfbbf['message']},_0x2716ca(0x135)+_0x520ce1[_0x2716ca(0x15a)]);throw _0x3dfbbf;}finally{await this[_0x2716ca(0x14c)](_0x520ce1[_0x2716ca(0x12e)]);}}return _0x3347df;}async[a0_0xd0cd3d(0x14c)](_0x2afbd8){const _0x22cef1=a0_0xd0cd3d,_0x16d36b={'nqBzs':'upload_v2_temp_delete_warn','KuOYW':'Failed\x20to\x20delete\x20temp\x20file'};try{await fs[_0x22cef1(0x146)](_0x2afbd8);}catch(_0x2b8824){logger['warn']({'event':_0x16d36b['nqBzs'],'filePath':_0x2afbd8,'error':_0x2b8824[_0x22cef1(0x12f)]},_0x16d36b['KuOYW']);}}['_parseFileSize'](_0x260da9){const _0x5d7cdb=a0_0xd0cd3d,_0x25d29b={'TgSqw':function(_0x502371,_0x145ff5){return _0x502371(_0x145ff5);},'gSYhF':function(_0x5a0a8e,_0x4a57ca){return _0x5a0a8e*_0x4a57ca;},'erhtI':function(_0x33361c,_0x1dc77b){return _0x33361c(_0x1dc77b);},'SFvmN':function(_0x207936,_0x2861da){return _0x207936*_0x2861da;}};if(typeof _0x260da9==='number')return _0x260da9;const _0x366825=_0x25d29b[_0x5d7cdb(0x139)](String,_0x260da9)['trim']()[_0x5d7cdb(0x132)](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x366825)return _0x25d29b['gSYhF'](0xa*0x400,0x400);const _0x3fefdd=_0x25d29b[_0x5d7cdb(0x150)](parseFloat,_0x366825[0x1]),_0xc73593=_0x366825[0x2]['toUpperCase'](),_0xf6ffce={'B':0x1,'KB':0x400,'MB':0x400*0x400,'GB':_0x25d29b[_0x5d7cdb(0x153)](0x400,0x400)*0x400};return Math['floor'](_0x25d29b['SFvmN'](_0x3fefdd,_0xf6ffce[_0xc73593]||0x1));}}function a0_0x5ec4(){const _0x1464ed=['m0Dlu0jXtW','mteWmtu1nwHxDfj5wG','zxjODeK','zMLSzxm','mtj6whbwzxq','z1nzAey','x3bHCNnLrMLSzvnPEMu','DgvTCa','Dg9mB3DLCKnHC2u','Bwf4rMLSzvnPEMu','ChjVDMLKzxjoyw1L','yxjYyxK','B3jPz2LUywXUyw1L','AM9PBG','yMfZzw5HBwu','A2v5','x3rLBxbeAxi','DxbSB2fKCW','mtm1mdu4tuvws1vX','ndu1neDUEw9SBG','m0DKv2PQsa','mtbnqG','zxH0BMfTzq','zgLZA1n0B3jHz2u','ChjVAMvJDa','mZiWnJaWr0fOBe9O','zgvMyxvSDa','nZC0odq4q25ZtMTI','Cgf0Aa','BwvZC2fNzq','Cej1Buu','BwTKAxjtEw5J','Bwf0y2G','DxbSB2fKlq','Aw5JBhvKzxm','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fKzwqGzMLSztOG','ovbxuKXqBW','CMvWBgfJzq','Bw9KDwXL','vgDtCxC','Bwf4rMLSzxm','ywXSB3DLzfr5CgvZ','ChvZAa','zxjYB3i','y3jLyxrLvxbSB2fKtwLKzgXLD2fYzq','y3DK','ChjLzML4','mtaYEejbCNLY','y3jLyxrLuMvHzfn0CMvHBq','ndy0ndvoCfHkBvq','BwLTzxr5Cgu','DgvTCerPCG','Dw5SAw5R','CxzPCvm','zxHPC3rZu3LUyW','mJy1mhHwv253ua','mtq3mJm2nNHuweXlrW','BxvSDgvY','x2rLBgv0zvrLBxbgAwXL','zKP5Agi'];a0_0x5ec4=function(){return _0x1464ed;};return a0_0x5ec4();}module['exports']=new UploadHandlerV2();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x2566c4=a0_0x4f3c;(function(_0x31f8be,_0x26ef75){const _0x16420c=a0_0x4f3c,_0x34d51e=_0x31f8be();while(!![]){try{const _0x4b3080=-parseInt(_0x16420c(0x1c7))/0x1*(-parseInt(_0x16420c(0x1ce))/0x2)+parseInt(_0x16420c(0x1e6))/0x3*(-parseInt(_0x16420c(0x1da))/0x4)+parseInt(_0x16420c(0x1d2))/0x5+parseInt(_0x16420c(0x1d8))/0x6+parseInt(_0x16420c(0x1cd))/0x7*(parseInt(_0x16420c(0x1cc))/0x8)+-parseInt(_0x16420c(0x1c0))/0x9*(parseInt(_0x16420c(0x1d4))/0xa)+parseInt(_0x16420c(0x1c2))/0xb;if(_0x4b3080===_0x26ef75)break;else _0x34d51e['push'](_0x34d51e['shift']());}catch(_0x5cde6b){_0x34d51e['push'](_0x34d51e['shift']());}}}(a0_0x2941,0x56b15));const multer=require('multer'),path=require(a0_0x2566c4(0x1e2)),crypto=require('crypto'),fs=require('fs')[a0_0x2566c4(0x1d6)],fsSync=require('fs'),{logger}=require(a0_0x2566c4(0x1d5));function a0_0x2941(){const _0x29b4eb=['Dg9tDhjPBMC','zgvSzxrLrMLSzq','ndK2suX6z2fV','mJqYnJLmELHgzK4','nZi3nfz2AMDMCa','BwvZC2fNzq','CMfUzg9TqNL0zxm','DxbSB2fKrgLY','mtq3nZmWv1PPyKLV','Bwf4rMLSzvnPEMu','otbdt0Pyt0m','lI9SB2DNzxi','ChjVBwLZzxm','zxH0BMfTzq','mJGZmdyYENHxtMHx','z3rLyu4','mtC2ALvRChzK','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','x3vWBg9HzerPCG','v2rYu3y','DxbSB2fKx2zPBgvFzgvSzxrLza','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','z2v0vxbSB2fKtwLKzgXLD2fYzq','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','Cgf0Aa','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','DxbSB2fKx2HHBMrSzxjFAw5PDa','mtq1nJv6y3nJsNa','B3jPz2LUywXUyw1L','zxjYB3i','ndmWmdaYEerMrNvA','Aw5JBhvKzxm','mJi1nJq1mM9uqw5TyW','zgPSqw8','Aw5MBW','v0Xhv3G','BwTKAxjtEw5J','mtm4yLfgAxbk','zxHPC3rZu3LUyW','ugTnuhK'];a0_0x2941=function(){return _0x29b4eb;};return a0_0x2941();}function a0_0x4f3c(_0x5aa16c,_0x2465ee){_0x5aa16c=_0x5aa16c-0x1bf;const _0x294147=a0_0x2941();let _0x4f3c89=_0x294147[_0x5aa16c];if(a0_0x4f3c['PMzzxK']===undefined){var _0x3297ee=function(_0x1429f1){const _0x73003f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x644813='',_0x392827='';for(let _0x18492b=0x0,_0x421e54,_0x333c76,_0x3394d4=0x0;_0x333c76=_0x1429f1['charAt'](_0x3394d4++);~_0x333c76&&(_0x421e54=_0x18492b%0x4?_0x421e54*0x40+_0x333c76:_0x333c76,_0x18492b++%0x4)?_0x644813+=String['fromCharCode'](0xff&_0x421e54>>(-0x2*_0x18492b&0x6)):0x0){_0x333c76=_0x73003f['indexOf'](_0x333c76);}for(let _0x2bd45c=0x0,_0x246234=_0x644813['length'];_0x2bd45c<_0x246234;_0x2bd45c++){_0x392827+='%'+('00'+_0x644813['charCodeAt'](_0x2bd45c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x392827);};a0_0x4f3c['rIFXAb']=_0x3297ee,a0_0x4f3c['IoSvWQ']={},a0_0x4f3c['PMzzxK']=!![];}const _0x33fb86=_0x294147[0x0],_0x3ba6a3=_0x5aa16c+_0x33fb86,_0x309407=a0_0x4f3c['IoSvWQ'][_0x3ba6a3];return!_0x309407?(_0x4f3c89=a0_0x4f3c['rIFXAb'](_0x4f3c89),a0_0x4f3c['IoSvWQ'][_0x3ba6a3]=_0x4f3c89):_0x4f3c89=_0x309407,_0x4f3c89;}class UploadHandler{constructor(){const _0x3e0410=a0_0x2566c4,_0x4c5ee7={'WLGWx':function(_0x3c39db,_0xe85cdc){return _0x3c39db*_0xe85cdc;}};this['_uploadDir']=null,this['maxFileSize']=_0x4c5ee7[_0x3e0410(0x1c5)](0xa*0x400,0x400);}get['uploadDir'](){const _0x1cb5cb=a0_0x2566c4,_0x2013e1={'WdrSv':_0x1cb5cb(0x1e3),'gteaN':'upload_handler_init_error'};if(!this['_uploadDir']){const _0x48bff3=process['env']['RESTFORGE_PROJECT_NAME']||'default';this['_uploadDir']=process['env']['UPLOAD_DIR']||path['join'](__dirname,'../../temp/uploads/'+_0x48bff3);try{!fsSync[_0x1cb5cb(0x1c8)](this['_uploadDir'])&&fsSync['mkdirSync'](this[_0x1cb5cb(0x1dc)],{'recursive':!![]}),logger['info']({'event':_0x1cb5cb(0x1e5),'dir':this[_0x1cb5cb(0x1dc)]},_0x2013e1[_0x1cb5cb(0x1dd)]);}catch(_0xc9fb24){logger[_0x1cb5cb(0x1bf)]({'event':_0x2013e1[_0x1cb5cb(0x1d9)],'error':_0xc9fb24[_0x1cb5cb(0x1cf)]},_0x1cb5cb(0x1e1));}}return this[_0x1cb5cb(0x1dc)];}['getStorage'](){const _0xb74b43={'isqdZ':function(_0x16f20a,_0x53a650,_0x17e773){return _0x16f20a(_0x53a650,_0x17e773);},'NPTpg':'hex'};return multer['diskStorage']({'destination':(_0x224172,_0x1aa003,_0x31d568)=>{const _0x1ed7b8=a0_0x4f3c;!fsSync[_0x1ed7b8(0x1c8)](this['uploadDir'])&&fsSync[_0x1ed7b8(0x1c6)](this[_0x1ed7b8(0x1d1)],{'recursive':!![]}),_0xb74b43['isqdZ'](_0x31d568,null,this[_0x1ed7b8(0x1d1)]);},'filename':(_0x178ad3,_0x467ff7,_0x4bcfbe)=>{const _0x165c8d=a0_0x4f3c,_0x3691da=crypto[_0x165c8d(0x1d0)](0x8)[_0x165c8d(0x1ca)](_0xb74b43['NPTpg']),_0x49aa42=Date['now'](),_0x32093b=path['extname'](_0x467ff7[_0x165c8d(0x1e7)]);_0xb74b43['isqdZ'](_0x4bcfbe,null,'upload-'+_0x49aa42+'-'+_0x3691da+_0x32093b);}});}[a0_0x2566c4(0x1e0)](){const _0xe96432=a0_0x2566c4,_0x322654={'PkMPy':_0xe96432(0x1df),'qRrxw':'.xls','BTyWe':function(_0x568d84,_0x2a3f0c,_0x97e675){return _0x568d84(_0x2a3f0c,_0x97e675);},'deorx':function(_0x35fe0d,_0x38c756){return _0x35fe0d(_0x38c756);}};return _0x322654['deorx'](multer,{'storage':this['getStorage'](),'limits':{'fileSize':this[_0xe96432(0x1d3)],'files':0x1},'fileFilter':(_0x151377,_0x1a02c8,_0x51f858)=>{const _0x25dc4d=_0xe96432,_0x4a02f4=[_0x322654[_0x25dc4d(0x1c9)],_0x25dc4d(0x1db)],_0x780623=['.xlsx',_0x322654['qRrxw']],_0x263aa1=path[_0x25dc4d(0x1d7)](_0x1a02c8['originalname'])['toLowerCase']();_0x4a02f4['includes'](_0x1a02c8['mimetype'])&&_0x780623[_0x25dc4d(0x1c1)](_0x263aa1)?_0x322654['BTyWe'](_0x51f858,null,!![]):_0x51f858(new Error(_0x25dc4d(0x1e4)));}})['single']('file');}async[a0_0x2566c4(0x1cb)](_0x54019e){const _0x155e96=a0_0x2566c4,_0x347e8={'zHUzh':'Uploaded\x20file\x20deleted','djlAo':'Failed\x20to\x20delete\x20uploaded\x20file'};try{await fs['unlink'](_0x54019e),logger[_0x155e96(0x1c4)]({'event':_0x155e96(0x1de),'filePath':_0x54019e},_0x347e8['zHUzh']);}catch(_0x310a2a){logger['error']({'event':'upload_file_delete_error','filePath':_0x54019e,'error':_0x310a2a[_0x155e96(0x1cf)]},_0x347e8[_0x155e96(0x1c3)]);}}}module['exports']=new UploadHandler();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const a0_0x38019e=a0_0xd00c;function a0_0x3ac9(){const _0x48874f=['m3DTDwXJBa','mJGZmti4ohn6re5eAa','C3rHDhvZ','sw5Zzxj0ihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','odmXnJi4ofDZyKf6zW','rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','ndiWrK9ntwLo','mZmWmdzKv1r1vuq','mtu1odq5ng9Qq3nyza','AuPzA2u','yxbWBgLJyxrPB24VANnVBG','zgvSzxrL','ywjbvei','BwvZC2fNzq','yxHPB3m','Cg9ZDa','nLfRwNLdAW','A2TTrNu','Dg9ju09tDhjPBMC','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','mJaZnZLkyNPPt20','ndKYntmWnu5dBxPYuW','sw5Zzxj0ihDLyMHVB2SGC2vUDcb0BYa','lcbtDgf0Dxm6ia','mty5mtC4mJblrwPKtNK','uMvZDezVCMDLlvDLyMHVB2SVms4W','rxjYB3iGC2vUzgLUzYbKzwXLDguGD2vIAg9VAZO','zxjYB3i'];a0_0x3ac9=function(){return _0x48874f;};return a0_0x3ac9();}(function(_0x3e309a,_0x193041){const _0x1a73ec=a0_0xd00c,_0x4fc0e7=_0x3e309a();while(!![]){try{const _0x47db3f=-parseInt(_0x1a73ec(0x1ac))/0x1*(parseInt(_0x1a73ec(0x1a8))/0x2)+parseInt(_0x1a73ec(0x1b4))/0x3*(parseInt(_0x1a73ec(0x1b5))/0x4)+-parseInt(_0x1a73ec(0x1ad))/0x5+parseInt(_0x1a73ec(0x1bb))/0x6*(parseInt(_0x1a73ec(0x1ba))/0x7)+-parseInt(_0x1a73ec(0x1b8))/0x8+parseInt(_0x1a73ec(0x1bc))/0x9+parseInt(_0x1a73ec(0x1b0))/0xa;if(_0x47db3f===_0x193041)break;else _0x4fc0e7['push'](_0x4fc0e7['shift']());}catch(_0x2fe498){_0x4fc0e7['push'](_0x4fc0e7['shift']());}}}(a0_0x3ac9,0xc77c8));function a0_0xd00c(_0x1042e6,_0x16e93d){_0x1042e6=_0x1042e6-0x1a6;const _0x3ac930=a0_0x3ac9();let _0xd00c93=_0x3ac930[_0x1042e6];if(a0_0xd00c['LBdROk']===undefined){var _0x1e0022=function(_0x166f4b){const _0x3cf271='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x534df8='',_0x6c371='';for(let _0x4b5cd2=0x0,_0x194792,_0x6e4ff7,_0x5b19c6=0x0;_0x6e4ff7=_0x166f4b['charAt'](_0x5b19c6++);~_0x6e4ff7&&(_0x194792=_0x4b5cd2%0x4?_0x194792*0x40+_0x6e4ff7:_0x6e4ff7,_0x4b5cd2++%0x4)?_0x534df8+=String['fromCharCode'](0xff&_0x194792>>(-0x2*_0x4b5cd2&0x6)):0x0){_0x6e4ff7=_0x3cf271['indexOf'](_0x6e4ff7);}for(let _0x46c935=0x0,_0x48973e=_0x534df8['length'];_0x46c935<_0x48973e;_0x46c935++){_0x6c371+='%'+('00'+_0x534df8['charCodeAt'](_0x46c935)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x6c371);};a0_0xd00c['xpLhtL']=_0x1e0022,a0_0xd00c['MoiVRe']={},a0_0xd00c['LBdROk']=!![];}const _0x4f0325=_0x3ac930[0x0],_0x40495e=_0x1042e6+_0x4f0325,_0x34c783=a0_0xd00c['MoiVRe'][_0x40495e];return!_0x34c783?(_0xd00c93=a0_0xd00c['xpLhtL'](_0xd00c93),a0_0xd00c['MoiVRe'][_0x40495e]=_0xd00c93):_0xd00c93=_0x34c783,_0xd00c93;}const axios=require(a0_0x38019e(0x1a6));async function sendInsertWebhook(_0xecf519,_0x5e086e,_0xb94154={}){const _0x3f1ad4=a0_0x38019e,_0x41c30e={'abATB':_0x3f1ad4(0x1b7)};try{const _0x5bdf9a={'event':'insert','timestamp':new Date()['toISOString'](),'data':_0x5e086e},_0x308759=await axios['post'](_0xecf519,_0x5bdf9a,{'headers':{'Content-Type':_0x3f1ad4(0x1be),'User-Agent':_0x3f1ad4(0x1b1),..._0xb94154},'timeout':0x2710});return console['log'](_0x3f1ad4(0x1ae)+_0xecf519+_0x3f1ad4(0x1af)+_0x308759[_0x3f1ad4(0x1b6)]),{'success':!![],'message':_0x41c30e[_0x3f1ad4(0x1c0)],'status':_0x308759[_0x3f1ad4(0x1b6)],'url':_0xecf519};}catch(_0xc58bc5){return console['error']('Error\x20sending\x20insert\x20webhook:',_0xc58bc5[_0x3f1ad4(0x1c1)]),{'success':![],'message':_0x3f1ad4(0x1b9),'error':_0xc58bc5[_0x3f1ad4(0x1c1)],'url':_0xecf519};}}async function sendDeleteWebhook(_0x4e88d5,_0x477771,_0x394d6e={}){const _0x23f237=a0_0x38019e,_0x343f6f={'iJYke':_0x23f237(0x1ab),'kkmFu':'Failed\x20to\x20send\x20delete\x20webhook'};try{const _0x1bdd66={'event':_0x23f237(0x1bf),'timestamp':new Date()[_0x23f237(0x1aa)](),'deleted_data':_0x477771},_0x1c2873=await axios[_0x23f237(0x1a7)](_0x4e88d5,_0x1bdd66,{'headers':{'Content-Type':_0x23f237(0x1be),'User-Agent':'RestForge-Webhook/1.0',..._0x394d6e},'timeout':0x2710});return console['log']('Delete\x20webhook\x20sent\x20to\x20'+_0x4e88d5+_0x23f237(0x1af)+_0x1c2873['status']),{'success':!![],'message':_0x343f6f[_0x23f237(0x1bd)],'status':_0x1c2873['status'],'url':_0x4e88d5};}catch(_0x29650a){return console[_0x23f237(0x1b3)](_0x23f237(0x1b2),_0x29650a[_0x23f237(0x1c1)]),{'success':![],'message':_0x343f6f[_0x23f237(0x1a9)],'error':_0x29650a['message'],'url':_0x4e88d5};}}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a0_0x2cc0(_0x2a2471,_0xf38092){_0x2a2471=_0x2a2471-0xf8;const _0x42b57e=a0_0x42b5();let _0x2cc070=_0x42b57e[_0x2a2471];if(a0_0x2cc0['IqYUmW']===undefined){var _0x5154b4=function(_0x2a5b4b){const _0x228635='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4701ce='',_0x5b681a='';for(let _0x4d679a=0x0,_0x205b4b,_0x468d39,_0x5b3bb3=0x0;_0x468d39=_0x2a5b4b['charAt'](_0x5b3bb3++);~_0x468d39&&(_0x205b4b=_0x4d679a%0x4?_0x205b4b*0x40+_0x468d39:_0x468d39,_0x4d679a++%0x4)?_0x4701ce+=String['fromCharCode'](0xff&_0x205b4b>>(-0x2*_0x4d679a&0x6)):0x0){_0x468d39=_0x228635['indexOf'](_0x468d39);}for(let _0x182ea0=0x0,_0x58b1bd=_0x4701ce['length'];_0x182ea0<_0x58b1bd;_0x182ea0++){_0x5b681a+='%'+('00'+_0x4701ce['charCodeAt'](_0x182ea0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5b681a);};a0_0x2cc0['kLUprO']=_0x5154b4,a0_0x2cc0['wIBOLm']={},a0_0x2cc0['IqYUmW']=!![];}const _0x479981=_0x42b57e[0x0],_0x1700f0=_0x2a2471+_0x479981,_0x2d6851=a0_0x2cc0['wIBOLm'][_0x1700f0];return!_0x2d6851?(_0x2cc070=a0_0x2cc0['kLUprO'](_0x2cc070),a0_0x2cc0['wIBOLm'][_0x1700f0]=_0x2cc070):_0x2cc070=_0x2d6851,_0x2cc070;}(function(_0x384fbb,_0x3aa8ca){const _0x484ef6=a0_0x2cc0,_0x571b33=_0x384fbb();while(!![]){try{const _0x484e67=-parseInt(_0x484ef6(0x10f))/0x1*(-parseInt(_0x484ef6(0x10e))/0x2)+-parseInt(_0x484ef6(0x100))/0x3*(parseInt(_0x484ef6(0x114))/0x4)+-parseInt(_0x484ef6(0x105))/0x5*(-parseInt(_0x484ef6(0x113))/0x6)+parseInt(_0x484ef6(0xfb))/0x7+parseInt(_0x484ef6(0xfa))/0x8*(parseInt(_0x484ef6(0xff))/0x9)+-parseInt(_0x484ef6(0x109))/0xa*(parseInt(_0x484ef6(0x104))/0xb)+parseInt(_0x484ef6(0x107))/0xc;if(_0x484e67===_0x3aa8ca)break;else _0x571b33['push'](_0x571b33['shift']());}catch(_0x5d2c44){_0x571b33['push'](_0x571b33['shift']());}}}(a0_0x42b5,0x7a591));const express=require('express'),{logger}=require('../../utils/logger');function createLockRoutes(){const _0x29c564=a0_0x2cc0,_0x281d6d={'OVptU':function(_0x310ed3,_0x472aec){return _0x310ed3||_0x472aec;},'rCHVd':_0x29c564(0x102),'hJkWc':function(_0x4d6222){return _0x4d6222();},'eKjbw':'lock_acquire_route_error','xEmWe':function(_0xca3216){return _0xca3216();},'XhHeI':'lock_release_route_error','feSqL':_0x29c564(0x103),'ivbJM':function(_0x1c008d,_0x4cb396){return _0x1c008d||_0x4cb396;},'NqGPK':'/release','LPCQI':'/status'},_0x2d5c3d=express['Router']();let _0xb570bf=null;function _0x314700(){const _0x475d8f=_0x29c564;return!_0xb570bf&&(_0xb570bf=require(_0x475d8f(0x10c))),_0xb570bf;}return _0x2d5c3d['post'](_0x29c564(0x118),async(_0x257b1e,_0x1e8c6b)=>{const _0x35b7b9=_0x29c564;try{const {resource:_0x21fff5,lock_keys:_0xe0c898,ttl:_0x1d8fda,owner:_0x52fec2}=_0x257b1e['body'];if(_0x281d6d['OVptU'](!_0x21fff5,!_0xe0c898)||!_0x1d8fda||!_0x52fec2)return _0x1e8c6b[_0x35b7b9(0x117)](0x190)['json']({'success':![],'error':_0x281d6d['rCHVd']});const _0x12ab03=_0x281d6d[_0x35b7b9(0x115)](_0x314700),_0x220e10=await _0x12ab03[_0x35b7b9(0x110)]({'resource':_0x21fff5,'lockKeys':_0xe0c898,'ttl':_0x1d8fda,'owner':_0x52fec2});if(_0x220e10['success'])return _0x1e8c6b['json'](_0x220e10);const _0x5f457b=_0x220e10['error']==='Resource\x20lock\x20conflict'?0x199:0x190;return _0x1e8c6b[_0x35b7b9(0x117)](_0x5f457b)[_0x35b7b9(0xf9)](_0x220e10);}catch(_0x4d008c){logger['error']({'event':_0x281d6d['eKjbw'],'error':_0x4d008c['message']},_0x35b7b9(0x119)+_0x4d008c['message']),_0x1e8c6b['status'](0x1f4)[_0x35b7b9(0xf9)]({'success':![],'error':'Internal\x20server\x20error\x20during\x20lock\x20acquisition'});}}),_0x2d5c3d[_0x29c564(0x111)](_0x281d6d[_0x29c564(0xfc)],async(_0x53c7d1,_0x4c62a2)=>{const _0x5ba9c4=_0x29c564;try{const {resource:_0x4dc2b4,lock_keys:_0x1d4546,lock_token:_0x2559bd}=_0x53c7d1['body'];if(!_0x4dc2b4||!_0x1d4546||!_0x2559bd)return _0x4c62a2['status'](0x190)['json']({'success':![],'error':_0x5ba9c4(0x108)});const _0x259f83=_0x281d6d[_0x5ba9c4(0x10a)](_0x314700),_0xf2e791=await _0x259f83[_0x5ba9c4(0x101)]({'resource':_0x4dc2b4,'lockKeys':_0x1d4546,'lockToken':_0x2559bd});if(_0xf2e791[_0x5ba9c4(0x116)])return _0x4c62a2[_0x5ba9c4(0xf9)](_0xf2e791);return _0x4c62a2['status'](0x190)[_0x5ba9c4(0xf9)](_0xf2e791);}catch(_0x534e51){logger['error']({'event':_0x281d6d['XhHeI'],'error':_0x534e51['message']},_0x5ba9c4(0x10b)+_0x534e51['message']),_0x4c62a2['status'](0x1f4)['json']({'success':![],'error':_0x281d6d[_0x5ba9c4(0xf8)]});}}),_0x2d5c3d[_0x29c564(0x111)](_0x281d6d['LPCQI'],async(_0x3e358c,_0x177c6c)=>{const _0x3396e1=_0x29c564;try{const {resource:_0x1750d0,lock_keys:_0x4ffcd7}=_0x3e358c['body'];if(_0x281d6d['ivbJM'](!_0x1750d0,!_0x4ffcd7))return _0x177c6c[_0x3396e1(0x117)](0x190)['json']({'success':![],'error':_0x3396e1(0xfe)});const _0x581209=_0x314700(),_0x57a390=await _0x581209['getResourceLockStatus']({'resource':_0x1750d0,'lockKeys':_0x4ffcd7});if(_0x57a390[_0x3396e1(0x116)])return _0x177c6c['json'](_0x57a390);return _0x177c6c[_0x3396e1(0x117)](0x190)['json'](_0x57a390);}catch(_0x48a7d5){logger['error']({'event':_0x3396e1(0x10d),'error':_0x48a7d5['message']},_0x3396e1(0x106)+_0x48a7d5[_0x3396e1(0xfd)]),_0x177c6c['status'](0x1f4)['json']({'success':![],'error':_0x3396e1(0x112)});}}),_0x2d5c3d;}function a0_0x42b5(){const _0x1278c9=['sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihjLBgvHC2u','ndCWndDHs2TRB3y','ndaZmtKXnxPuC1j4za','tg9JAYbZDgf0DxmGCM91DguGzxjYB3i6ia','ndq2odm0ngvsD1vHDW','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSigXVy2TFDg9Rzw4','mJiXmfnMz3bTuW','EevTv2u','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','Bg9JA19ZDgf0DxnFCM91DgvFzxjYB3i','mNf6A2rUEa','mtaZotK3A01rvvve','ywnXDwLYzvjLC291CMnLtg9JA3m','Cg9ZDa','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihn0yxr1CYbJAgvJAW','nNzfD3z0ua','otmYodiWChzOyvLQ','AePRv2m','C3vJy2vZCW','C3rHDhvZ','l2fJCxvPCMu','tg9JAYbHy3f1AxjLihjVDxrLigvYCM9YoIa','zMvtCuW','ANnVBG','mtzqDM1YDge','nty2ndy1ouDJt0vcuG','tNfhueS','BwvZC2fNzq','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','mJqYotu1shHzsvfi','ow9zze5cyG','CMvSzwfZzvjLC291CMnLtg9JA3m','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSihr0BcWGB3DUzxi'];a0_0x42b5=function(){return _0x1278c9;};return a0_0x42b5();}module['exports']=createLockRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4ed314=a0_0x18cd;(function(_0x2d1b55,_0x2a3dc9){const _0x51fb3c=a0_0x18cd,_0x15aecc=_0x2d1b55();while(!![]){try{const _0x151330=parseInt(_0x51fb3c(0x176))/0x1+-parseInt(_0x51fb3c(0x13c))/0x2+parseInt(_0x51fb3c(0x166))/0x3*(-parseInt(_0x51fb3c(0x158))/0x4)+-parseInt(_0x51fb3c(0x160))/0x5+-parseInt(_0x51fb3c(0x159))/0x6+parseInt(_0x51fb3c(0x148))/0x7+parseInt(_0x51fb3c(0x162))/0x8*(parseInt(_0x51fb3c(0x16b))/0x9);if(_0x151330===_0x2a3dc9)break;else _0x15aecc['push'](_0x15aecc['shift']());}catch(_0x32d4f7){_0x15aecc['push'](_0x15aecc['shift']());}}}(a0_0x5007,0xce7f4));const redisClient=require('../../utils/redis-client'),{logger}=require('../../utils/logger'),{v4:uuidv4}=require('uuid');function getPrefix(){const _0x32192c=a0_0x18cd,_0x7d3aee={'Fscqt':_0x32192c(0x13e)},_0x46d05b=process[_0x32192c(0x15c)][_0x32192c(0x14c)]||_0x7d3aee[_0x32192c(0x173)];return _0x32192c(0x133)+_0x46d05b+_0x32192c(0x175);}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_0x18cd(_0x3d869d,_0x266172){_0x3d869d=_0x3d869d-0x132;const _0x5007d9=a0_0x5007();let _0x18cdd7=_0x5007d9[_0x3d869d];if(a0_0x18cd['lAFUcZ']===undefined){var _0x547685=function(_0x34c370){const _0x2d466b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x496b2c='',_0x4682c1='';for(let _0x37441f=0x0,_0x272e6b,_0x32ea15,_0x143350=0x0;_0x32ea15=_0x34c370['charAt'](_0x143350++);~_0x32ea15&&(_0x272e6b=_0x37441f%0x4?_0x272e6b*0x40+_0x32ea15:_0x32ea15,_0x37441f++%0x4)?_0x496b2c+=String['fromCharCode'](0xff&_0x272e6b>>(-0x2*_0x37441f&0x6)):0x0){_0x32ea15=_0x2d466b['indexOf'](_0x32ea15);}for(let _0xb59eb4=0x0,_0x4519a5=_0x496b2c['length'];_0xb59eb4<_0x4519a5;_0xb59eb4++){_0x4682c1+='%'+('00'+_0x496b2c['charCodeAt'](_0xb59eb4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4682c1);};a0_0x18cd['sBzjHZ']=_0x547685,a0_0x18cd['TgPmjp']={},a0_0x18cd['lAFUcZ']=!![];}const _0x58e751=_0x5007d9[0x0],_0x1d2ca0=_0x3d869d+_0x58e751,_0x1674df=a0_0x18cd['TgPmjp'][_0x1d2ca0];return!_0x1674df?(_0x18cdd7=a0_0x18cd['sBzjHZ'](_0x18cdd7),a0_0x18cd['TgPmjp'][_0x1d2ca0]=_0x18cdd7):_0x18cdd7=_0x1674df,_0x18cdd7;}class ResourceLockManager{['buildKey'](_0x55761c,_0x445ad0,_0x3829e6){const _0x49d872={'GRIfn':function(_0x31b00d){return _0x31b00d();}};return''+_0x49d872['GRIfn'](getPrefix)+_0x55761c+':'+_0x445ad0+':'+_0x3829e6;}['generateToken'](_0x28b15a){return _0x28b15a+':'+uuidv4()+':'+Date['now']();}[a0_0x4ed314(0x14f)](_0x2880b3){const _0x2e74f6=a0_0x4ed314,_0x455fa6={'cCLrp':function(_0x18f441,_0x2523fa){return _0x18f441>_0x2523fa;}};if(!_0x2880b3)return _0x2e74f6(0x15d);const _0x124068=_0x2880b3['indexOf'](':');return _0x455fa6['cCLrp'](_0x124068,0x0)?_0x2880b3['substring'](0x0,_0x124068):_0x2880b3;}[a0_0x4ed314(0x143)](){const _0x3868ca=a0_0x4ed314,_0x572a22={'cUuzJ':function(_0x5b05b0,_0xe05ca5,_0x508e1d){return _0x5b05b0(_0xe05ca5,_0x508e1d);}};return _0x572a22['cUuzJ'](parseInt,process[_0x3868ca(0x15c)][_0x3868ca(0x17d)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x4ed314(0x147)]({resource:_0x773c9,lockKeys:_0x38fa72,ttl:_0x2415d5,owner:_0x5f48c6}){const _0x294610=a0_0x4ed314,_0x307da9={'IIIvZ':function(_0x5e141f,_0x8d79f9){return _0x5e141f<_0x8d79f9;},'LsLfA':function(_0x1eff18,_0x3ca31e){return _0x1eff18===_0x3ca31e;},'PIwZo':_0x294610(0x180),'ulkKK':_0x294610(0x16c),'juhDN':_0x294610(0x170),'lodrt':'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error','hNoXJ':_0x294610(0x145)},_0x2500ea=this[_0x294610(0x144)]({'resource':_0x773c9,'lockKeys':_0x38fa72,'ttl':_0x2415d5,'owner':_0x5f48c6});if(!_0x2500ea['valid'])return{'success':![],'error':_0x2500ea[_0x294610(0x13a)]};const _0x4eff6e=this['getMaxTTLSeconds'](),_0x2f066f=Math['min'](_0x2415d5,_0x4eff6e),_0x3ae01c=this[_0x294610(0x15f)](_0x5f48c6),_0x2c0e9e=[];try{const _0x1187d3=redisClient['getClient']();for(let _0x54be4e=0x0;_0x307da9[_0x294610(0x181)](_0x54be4e,_0x38fa72['length']);_0x54be4e++){const {key:_0xf3ee68,value:_0x44ea20}=_0x38fa72[_0x54be4e],_0x5e7e09=this['buildKey'](_0x773c9,_0xf3ee68,_0x44ea20),_0x30b65d=await _0x1187d3[_0x294610(0x174)](_0x5e7e09,_0x3ae01c,'EX',_0x2f066f,'NX');if(_0x307da9['LsLfA'](_0x30b65d,'OK'))_0x2c0e9e['push'](_0x5e7e09);else{await this[_0x294610(0x135)](_0x1187d3,_0x2c0e9e,_0x3ae01c);const _0x191fdb=await this['_getConflictInfo'](_0x1187d3,_0x5e7e09);return logger[_0x294610(0x157)]({'event':_0x307da9[_0x294610(0x142)],'resource':_0x773c9,'conflicting_key':{'key':_0xf3ee68,'value':_0x44ea20},'locked_by':_0x191fdb['owner'],'ttl_remaining':_0x191fdb[_0x294610(0x16f)],'attempted_by':_0x5f48c6},'Resource\x20lock\x20conflict\x20on\x20'+_0x773c9+':'+_0xf3ee68+':'+_0x44ea20),{'success':![],'error':_0x307da9['ulkKK'],'data':{'conflicting_key':{'key':_0xf3ee68,'value':_0x44ea20},'locked_by':_0x191fdb[_0x294610(0x179)],'ttl_remaining':_0x191fdb['ttlRemaining']}};}}const _0x410bc3=_0x38fa72[_0x294610(0x17a)](({key:_0x1b43a1,value:_0x4babd5})=>({'key':_0x1b43a1,'value':_0x4babd5,'lock_key':this[_0x294610(0x154)](_0x773c9,_0x1b43a1,_0x4babd5)}));return logger[_0x294610(0x168)]({'event':_0x307da9[_0x294610(0x136)],'resource':_0x773c9,'keys_count':_0x38fa72['length'],'ttl':_0x2f066f,'owner':_0x5f48c6},'Resource\x20lock\x20acquired:\x20'+_0x773c9+'\x20('+_0x38fa72['length']+_0x294610(0x155)+_0x2f066f+'s)'),{'success':!![],'data':{'lock_token':_0x3ae01c,'resource':_0x773c9,'locked_keys':_0x410bc3,'ttl':_0x2f066f,'owner':_0x5f48c6,'acquired_at':new Date()[_0x294610(0x16d)]()}};}catch(_0x3aaf85){try{const _0x206312=redisClient[_0x294610(0x15b)]();await this[_0x294610(0x135)](_0x206312,_0x2c0e9e,_0x3ae01c);}catch(_0x2a052d){logger['error']({'event':_0x294610(0x146),'error':_0x2a052d['message']},_0x307da9['lodrt']);}return logger['error']({'event':_0x307da9['hNoXJ'],'resource':_0x773c9,'owner':_0x5f48c6,'error':_0x3aaf85[_0x294610(0x140)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x3aaf85[_0x294610(0x140)]),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x3aaf85['message']};}}async['releaseResourceLocks']({resource:_0x3dadf3,lockKeys:_0x5f4161,lockToken:_0x4beb9d}){const _0x426223=a0_0x4ed314,_0x198143={'suOoA':function(_0x4bcca3,_0x1e7a8b){return _0x4bcca3===_0x1e7a8b;},'qzSzd':_0x426223(0x137),'yXdzx':'resource_lock_release_error'},_0x139800=this['_validateReleaseInput']({'resource':_0x3dadf3,'lockKeys':_0x5f4161,'lockToken':_0x4beb9d});if(!_0x139800[_0x426223(0x139)])return{'success':![],'error':_0x139800[_0x426223(0x13a)]};try{const _0x345830=redisClient[_0x426223(0x15b)]();let _0x5b1d21=0x0;for(const {key:_0x2299db,value:_0x2605a7}of _0x5f4161){const _0x1b9224=this['buildKey'](_0x3dadf3,_0x2299db,_0x2605a7),_0x457377=await _0x345830[_0x426223(0x13f)](RELEASE_LUA_SCRIPT,0x1,_0x1b9224,_0x4beb9d);_0x198143['suOoA'](_0x457377,0x1)&&_0x5b1d21++;}return logger['info']({'event':_0x198143[_0x426223(0x16a)],'resource':_0x3dadf3,'released_keys':_0x5b1d21,'total_keys':_0x5f4161[_0x426223(0x17f)],'owner':this[_0x426223(0x14f)](_0x4beb9d)},'Resource\x20lock\x20released:\x20'+_0x3dadf3+'\x20('+_0x5b1d21+'/'+_0x5f4161[_0x426223(0x17f)]+_0x426223(0x138)),{'success':!![],'data':{'resource':_0x3dadf3,'released_keys':_0x5b1d21,'total_keys':_0x5f4161['length']}};}catch(_0x1c5bec){return logger[_0x426223(0x13a)]({'event':_0x198143['yXdzx'],'resource':_0x3dadf3,'error':_0x1c5bec['message']},'Resource\x20lock\x20release\x20error:\x20'+_0x1c5bec[_0x426223(0x140)]),{'success':![],'error':_0x426223(0x169)+_0x1c5bec['message']};}}async['getResourceLockStatus']({resource:_0x14509e,lockKeys:_0x3427ae}){const _0x2c592c=a0_0x4ed314,_0x4f0466={'VaIIn':function(_0x3ddc1d,_0x627d4b){return _0x3ddc1d===_0x627d4b;},'pbaPf':_0x2c592c(0x16e),'bWqDb':function(_0x524b7b,_0x4ee1a2){return _0x524b7b>_0x4ee1a2;},'XtEEy':'resource_lock_status_error'};if(!_0x14509e||!Array[_0x2c592c(0x164)](_0x3427ae)||_0x4f0466[_0x2c592c(0x15e)](_0x3427ae[_0x2c592c(0x17f)],0x0))return{'success':![],'error':_0x4f0466['pbaPf']};try{const _0x19624e=redisClient['getClient'](),_0x3ea77d=[];for(const {key:_0x5c20ce,value:_0x55ec83}of _0x3427ae){const _0x4f818=this[_0x2c592c(0x154)](_0x14509e,_0x5c20ce,_0x55ec83),[_0x10ad96,_0x52e89f]=await Promise['all']([_0x19624e[_0x2c592c(0x17e)](_0x4f818),_0x19624e[_0x2c592c(0x172)](_0x4f818)]),_0x115ec9=_0x10ad96!==null;_0x3ea77d['push']({'key':_0x5c20ce,'value':_0x55ec83,'locked':_0x115ec9,'owner':_0x115ec9?this['extractOwner'](_0x10ad96):null,'ttl_remaining':_0x115ec9&&_0x4f0466[_0x2c592c(0x132)](_0x52e89f,0x0)?_0x52e89f:null});}return{'success':!![],'data':{'resource':_0x14509e,'keys':_0x3ea77d}};}catch(_0xd44532){return logger['error']({'event':_0x4f0466[_0x2c592c(0x17b)],'resource':_0x14509e,'error':_0xd44532[_0x2c592c(0x140)]},_0x2c592c(0x165)+_0xd44532['message']),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0xd44532['message']};}}async[a0_0x4ed314(0x135)](_0x4dafb6,_0x39b151,_0x1868a0){const _0xaf34fb=a0_0x4ed314,_0x163874={'ZYTKt':_0xaf34fb(0x14d)};for(const _0x1f4a0a of _0x39b151){try{await _0x4dafb6['eval'](RELEASE_LUA_SCRIPT,0x1,_0x1f4a0a,_0x1868a0);}catch(_0x1c05d7){logger['error']({'event':_0x163874[_0xaf34fb(0x151)],'key':_0x1f4a0a,'error':_0x1c05d7['message']},'Failed\x20to\x20rollback\x20key:\x20'+_0x1f4a0a);}}}async[a0_0x4ed314(0x13d)](_0x4db1e0,_0x63e4){const _0x551b90=a0_0x4ed314,_0x123655={'Ubhjd':_0x551b90(0x15d)};try{const [_0xab41b4,_0xcbd6db]=await Promise['all']([_0x4db1e0[_0x551b90(0x17e)](_0x63e4),_0x4db1e0[_0x551b90(0x172)](_0x63e4)]);return{'owner':_0xab41b4?this[_0x551b90(0x14f)](_0xab41b4):_0x123655[_0x551b90(0x167)],'ttlRemaining':_0xcbd6db>0x0?_0xcbd6db:null};}catch{return{'owner':_0x123655['Ubhjd'],'ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x4a6ee3,lockKeys:_0x24c063,ttl:_0x1f292d,owner:_0x57f256}){const _0x27f838=a0_0x4ed314,_0x3f7bfe={'svQzV':function(_0x2b972a,_0x278ec8){return _0x2b972a!==_0x278ec8;},'lVVWG':_0x27f838(0x14e),'eKvQW':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items','YdLea':_0x27f838(0x14a)};if(!_0x4a6ee3||_0x3f7bfe[_0x27f838(0x156)](typeof _0x4a6ee3,_0x3f7bfe[_0x27f838(0x15a)]))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array['isArray'](_0x24c063)||_0x24c063[_0x27f838(0x17f)]===0x0)return{'valid':![],'error':_0x27f838(0x177)};if(_0x24c063[_0x27f838(0x17f)]>0x64)return{'valid':![],'error':_0x3f7bfe['eKvQW']};for(let _0x5d4b0a=0x0;_0x5d4b0a<_0x24c063[_0x27f838(0x17f)];_0x5d4b0a++){const _0x4a3cb0=_0x24c063[_0x5d4b0a];if(!_0x4a3cb0||!_0x4a3cb0['key']||!_0x4a3cb0[_0x27f838(0x152)])return{'valid':![],'error':'lock_keys['+_0x5d4b0a+_0x27f838(0x153)};}if(!_0x1f292d||typeof _0x1f292d!==_0x3f7bfe[_0x27f838(0x150)]||_0x1f292d<0x1)return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x2c5e5f=this[_0x27f838(0x143)]();if(_0x1f292d>_0x2c5e5f)return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x2c5e5f+_0x27f838(0x161)};if(!_0x57f256||typeof _0x57f256!==_0x3f7bfe['lVVWG'])return{'valid':![],'error':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}[a0_0x4ed314(0x134)]({resource:_0xc5fa44,lockKeys:_0x65265b,lockToken:_0x18d206}){const _0x21590f=a0_0x4ed314,_0x21d13a={'RrKre':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string','YWlLH':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array','LLkNL':function(_0x2aab9b,_0x533681){return _0x2aab9b<_0x533681;},'JgMQu':function(_0x356c28,_0x1fe6c6){return _0x356c28!==_0x1fe6c6;},'zcogi':_0x21590f(0x14e)};if(!_0xc5fa44||typeof _0xc5fa44!==_0x21590f(0x14e))return{'valid':![],'error':_0x21d13a[_0x21590f(0x141)]};if(!Array['isArray'](_0x65265b)||_0x65265b['length']===0x0)return{'valid':![],'error':_0x21d13a[_0x21590f(0x163)]};for(let _0x4f4393=0x0;_0x21d13a[_0x21590f(0x14b)](_0x4f4393,_0x65265b[_0x21590f(0x17f)]);_0x4f4393++){const _0x29796a=_0x65265b[_0x4f4393];if(!_0x29796a||!_0x29796a[_0x21590f(0x171)]||!_0x29796a['value'])return{'valid':![],'error':'lock_keys['+_0x4f4393+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x18d206||_0x21d13a[_0x21590f(0x149)](typeof _0x18d206,_0x21d13a[_0x21590f(0x13b)]))return{'valid':![],'error':_0x21590f(0x178)};return{'valid':!![]};}}function a0_0x5007(){const _0x59b4b5=['mteZnZeXnxHQwxbAsW','sMDnuxu','BNvTyMvY','teXRtKW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','C3rYAw5N','zxH0CMfJDe93BMvY','wwrmzwe','wLLus3q','DMfSDwu','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','yNvPBgrlzxK','igTLExmSifrutdOG','C3zrELy','D2fYBG','mtm0ndH1BgPou0i','nZCWndiWngLfsLD3rG','Bfzwv0C','z2v0q2XPzw50','zw52','Dw5RBM93BG','vMfjsw4','z2vUzxjHDgvuB2TLBG','nJC4otq5nxrMsvvnCG','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','mtq4otuXnJb5t2XvBwK','wvDSteG','AxnbCNjHEq','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','mte1ohDTEgr2qG','vwjOAMq','Aw5MBW','tg9JAYbYzwXLyxnLigzHAwXLzdOG','CxPtEMq','mtHMs2XRDxi','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','Dg9ju09tDhjPBMC','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','DhrSuMvTywLUAw5N','CMvZB3vYy2vFBg9JA19Hy3f1AxjLza','A2v5','DhrS','rNnJCxq','C2v0','oNjSB2nRoG','mtu4ndi1oxHgBu5UsG','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','B3DUzxi','BwfW','whrfrxK','zxHWB3j0CW','te9ds19srvnpvvjdrv9nqvHFvfrm','z2v0','BgvUz3rO','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','suLjDLO','yLDXrgi','CMy6','x3zHBgLKyxrLuMvSzwfZzuLUChv0','x3jVBgXIywnRs2v5CW','ANvOre4','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','igTLExmP','DMfSAwq','zxjYB3i','EMnVz2K','mtm3mdaZnhnMyMrYCa','x2DLDenVBMzSAwn0sw5MBW','zgvMyxvSDa','zxzHBa','BwvZC2fNzq','uNjlCMu','ueL3wM8','z2v0twf4vfrmu2vJB25KCW','x3zHBgLKyxrLqwnXDwLYzuLUChv0','CMvZB3vYy2vFBg9JA19Hy3f1AxjLx2vYCM9Y','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19LCNjVCG','ywnXDwLYzvjLC291CMnLtg9JA3m'];a0_0x5007=function(){return _0x59b4b5;};return a0_0x5007();}module[a0_0x4ed314(0x17c)]=new ResourceLockManager();
|
|
1
|
+
const a0_0x47433e=a0_0x5766;(function(_0x14e73b,_0x29cfe4){const _0x5e206c=a0_0x5766,_0x172165=_0x14e73b();while(!![]){try{const _0x2ce473=-parseInt(_0x5e206c(0x1d3))/0x1+-parseInt(_0x5e206c(0x1e5))/0x2+-parseInt(_0x5e206c(0x1f5))/0x3+parseInt(_0x5e206c(0x1fb))/0x4+parseInt(_0x5e206c(0x1f8))/0x5*(parseInt(_0x5e206c(0x1fa))/0x6)+-parseInt(_0x5e206c(0x20c))/0x7+-parseInt(_0x5e206c(0x1cb))/0x8;if(_0x2ce473===_0x29cfe4)break;else _0x172165['push'](_0x172165['shift']());}catch(_0x1af581){_0x172165['push'](_0x172165['shift']());}}}(a0_0x1a49,0x4a6be));function a0_0x5766(_0xc9575b,_0x1e51f6){_0xc9575b=_0xc9575b-0x1c8;const _0x1a49dc=a0_0x1a49();let _0x576601=_0x1a49dc[_0xc9575b];if(a0_0x5766['TRWITr']===undefined){var _0x3f7c5c=function(_0x4c445b){const _0x2c5067='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3e2b14='',_0x3055c7='';for(let _0x7b2057=0x0,_0x17bb71,_0x320b2f,_0x36db29=0x0;_0x320b2f=_0x4c445b['charAt'](_0x36db29++);~_0x320b2f&&(_0x17bb71=_0x7b2057%0x4?_0x17bb71*0x40+_0x320b2f:_0x320b2f,_0x7b2057++%0x4)?_0x3e2b14+=String['fromCharCode'](0xff&_0x17bb71>>(-0x2*_0x7b2057&0x6)):0x0){_0x320b2f=_0x2c5067['indexOf'](_0x320b2f);}for(let _0x30420c=0x0,_0x383a4f=_0x3e2b14['length'];_0x30420c<_0x383a4f;_0x30420c++){_0x3055c7+='%'+('00'+_0x3e2b14['charCodeAt'](_0x30420c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3055c7);};a0_0x5766['orjCPm']=_0x3f7c5c,a0_0x5766['uBDRMu']={},a0_0x5766['TRWITr']=!![];}const _0x458e09=_0x1a49dc[0x0],_0x3ffda7=_0xc9575b+_0x458e09,_0x643719=a0_0x5766['uBDRMu'][_0x3ffda7];return!_0x643719?(_0x576601=a0_0x5766['orjCPm'](_0x576601),a0_0x5766['uBDRMu'][_0x3ffda7]=_0x576601):_0x576601=_0x643719,_0x576601;}const redisClient=require('../../utils/redis-client'),{logger}=require('../../utils/logger'),{v4:uuidv4}=require(a0_0x47433e(0x1f3));function getPrefix(){const _0x20149d=a0_0x47433e,_0x29c9c1=process[_0x20149d(0x1f6)][_0x20149d(0x1e7)]||_0x20149d(0x1e0);return'rf:'+_0x29c9c1+':rlock:';}function a0_0x1a49(){const _0xa46114=['Bg9JA19RzxLZigv4y2vLzhmGBwf4Aw11BsbVzIaXmdaGAxrLBxm','zxjYB3i','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','qvnbEvq','z2v0q2XPzw50','Dg9ju09tDhjPBMC','BgvUz3rO','zgvMyxvSDa','zxzHBa','B3DUzxi','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','DMfSAwq','mJG0ndq0vwHlvwHR','DgjzCxi','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','z2v0','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','CMvZB3vYy2vFBg9JA19Hy3f1AxjLza','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','CMvSzwfZzvjLC291CMnLtg9JA3m','te9ds19srvnpvvjdrv9nqvHFvfrm','x3zHBgLKyxrLqwnXDwLYzuLUChv0','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','BwvZC2fNzq','twTdwMO','DxvPza','z2v0twf4vfrmu2vJB25KCW','nZmYmtCXwgrIuNfr','zw52','CwvIDMi','mtvUzMPOwe8','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','mte2mtyXohHIu3DMvW','mJiXotyYofbywuzmra','CNHryKG','ufvmrNq','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','x3jVBgXIywnRs2v5CW','DhrS','BM93','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','DhrSigLZihjLCxvPCMvKigfUzcbTDxn0igjLigf0igXLyxn0ideGkgLUihnLy29UzhmP','yNvPBgrlzxK','x3zHBgLKyxrLuMvSzwfZzuLUChv0','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','BwfW','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','BNvTyMvY','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','mJiXmde4mgLTsgH5uW','igTLExmP','z2vUzxjHDgvuB2TLBG','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','Dw5RBM93BG','ALrYEMK','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','mZiYody0qwHwwKzf','AvLtvKq','C2v0','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19LCNjVCG','zxHWB3j0CW','zKnICxq','AxnbCNjHEq','CfDyq3e','odG1mdL3s05jsxe','q1bbzMG','zxH0CMfJDe93BMvY','C3rYAw5N','igTLExmSifrutdOG','B2njvKe'];a0_0x1a49=function(){return _0xa46114;};return a0_0x1a49();}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x47433e(0x208);class ResourceLockManager{['buildKey'](_0x24f804,_0x1a7008,_0x442c40){const _0x2a2cdd={'ZnEYC':function(_0x23308b){return _0x23308b();}};return''+_0x2a2cdd['ZnEYC'](getPrefix)+_0x24f804+':'+_0x1a7008+':'+_0x442c40;}[a0_0x47433e(0x20e)](_0x59a640){const _0x4400ff=a0_0x47433e;return _0x59a640+':'+uuidv4()+':'+Date[_0x4400ff(0x201)]();}[a0_0x47433e(0x1d5)](_0x24ac81){const _0x4a0519=a0_0x47433e,_0xc69992={'tbYqr':function(_0xe1a88c,_0x11453b){return _0xe1a88c>_0x11453b;}};if(!_0x24ac81)return'unknown';const _0x2dd4ba=_0x24ac81['indexOf'](':');return _0xc69992[_0x4a0519(0x1e6)](_0x2dd4ba,0x0)?_0x24ac81['substring'](0x0,_0x2dd4ba):_0x24ac81;}['getMaxTTLSeconds'](){const _0x5e1d25=a0_0x47433e;return parseInt(process[_0x5e1d25(0x1f6)][_0x5e1d25(0x1ee)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x5564d0,lockKeys:_0x235df7,ttl:_0x184c26,owner:_0x153ab2}){const _0x408413=a0_0x47433e,_0x140823={'rxQbH':_0x408413(0x209),'NfWQv':_0x408413(0x1ce)},_0x54b95c=this['_validateAcquireInput']({'resource':_0x5564d0,'lockKeys':_0x235df7,'ttl':_0x184c26,'owner':_0x153ab2});if(!_0x54b95c[_0x408413(0x1e4)])return{'success':![],'error':_0x54b95c['error']};const _0x65688a=this[_0x408413(0x1f4)](),_0xfd7d07=Math['min'](_0x184c26,_0x65688a),_0x40483d=this['generateToken'](_0x153ab2),_0x109ba0=[];try{const _0x10c988=redisClient['getClient']();for(let _0x252dd3=0x0;_0x252dd3<_0x235df7['length'];_0x252dd3++){const {key:_0x147666,value:_0x44e544}=_0x235df7[_0x252dd3],_0x4aacce=this[_0x408413(0x204)](_0x5564d0,_0x147666,_0x44e544),_0x24e7cd=await _0x10c988[_0x408413(0x1cd)](_0x4aacce,_0x40483d,'EX',_0xfd7d07,'NX');if(_0x24e7cd==='OK')_0x109ba0['push'](_0x4aacce);else{await this['_rollbackKeys'](_0x10c988,_0x109ba0,_0x40483d);const _0x217c06=await this['_getConflictInfo'](_0x10c988,_0x4aacce);return logger['warn']({'event':_0x140823[_0x408413(0x1fc)],'resource':_0x5564d0,'conflicting_key':{'key':_0x147666,'value':_0x44e544},'locked_by':_0x217c06[_0x408413(0x1e2)],'ttl_remaining':_0x217c06['ttlRemaining'],'attempted_by':_0x153ab2},'Resource\x20lock\x20conflict\x20on\x20'+_0x5564d0+':'+_0x147666+':'+_0x44e544),{'success':![],'error':_0x408413(0x1ca),'data':{'conflicting_key':{'key':_0x147666,'value':_0x44e544},'locked_by':_0x217c06[_0x408413(0x1e2)],'ttl_remaining':_0x217c06['ttlRemaining']}};}}const _0x4b13e3=_0x235df7[_0x408413(0x207)](({key:_0x37ac1c,value:_0x39bd7b})=>({'key':_0x37ac1c,'value':_0x39bd7b,'lock_key':this[_0x408413(0x204)](_0x5564d0,_0x37ac1c,_0x39bd7b)}));return logger['info']({'event':_0x408413(0x1eb),'resource':_0x5564d0,'keys_count':_0x235df7[_0x408413(0x1df)],'ttl':_0xfd7d07,'owner':_0x153ab2},_0x408413(0x20f)+_0x5564d0+'\x20('+_0x235df7[_0x408413(0x1df)]+_0x408413(0x1d7)+_0xfd7d07+'s)'),{'success':!![],'data':{'lock_token':_0x40483d,'resource':_0x5564d0,'locked_keys':_0x4b13e3,'ttl':_0xfd7d07,'owner':_0x153ab2,'acquired_at':new Date()[_0x408413(0x1de)]()}};}catch(_0x184a53){try{const _0x21f752=redisClient[_0x408413(0x1dd)]();await this['_rollbackKeys'](_0x21f752,_0x109ba0,_0x40483d);}catch(_0x2a851d){logger[_0x408413(0x1da)]({'event':_0x140823['NfWQv'],'error':_0x2a851d['message']},'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error');}return logger[_0x408413(0x1da)]({'event':'resource_lock_acquire_error','resource':_0x5564d0,'owner':_0x153ab2,'error':_0x184a53[_0x408413(0x1f1)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x184a53[_0x408413(0x1f1)]),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x184a53['message']};}}async[a0_0x47433e(0x1ed)]({resource:_0x5ec8f8,lockKeys:_0x48cb12,lockToken:_0x566615}){const _0x51224a=a0_0x47433e,_0x449757={'DzgYI':function(_0x5da199,_0x1b4ce5){return _0x5da199===_0x1b4ce5;},'bIyBm':_0x51224a(0x1fe)},_0x44db0f=this['_validateReleaseInput']({'resource':_0x5ec8f8,'lockKeys':_0x48cb12,'lockToken':_0x566615});if(!_0x44db0f[_0x51224a(0x1e4)])return{'success':![],'error':_0x44db0f[_0x51224a(0x1da)]};try{const _0x124bc5=redisClient[_0x51224a(0x1dd)]();let _0x54ffaa=0x0;for(const {key:_0x2ecae2,value:_0x552082}of _0x48cb12){const _0x26e634=this[_0x51224a(0x204)](_0x5ec8f8,_0x2ecae2,_0x552082),_0x1fc5ce=await _0x124bc5[_0x51224a(0x1e1)](RELEASE_LUA_SCRIPT,0x1,_0x26e634,_0x566615);_0x449757['DzgYI'](_0x1fc5ce,0x1)&&_0x54ffaa++;}return logger['info']({'event':_0x449757['bIyBm'],'resource':_0x5ec8f8,'released_keys':_0x54ffaa,'total_keys':_0x48cb12[_0x51224a(0x1df)],'owner':this['extractOwner'](_0x566615)},_0x51224a(0x1f0)+_0x5ec8f8+'\x20('+_0x54ffaa+'/'+_0x48cb12['length']+_0x51224a(0x20d)),{'success':!![],'data':{'resource':_0x5ec8f8,'released_keys':_0x54ffaa,'total_keys':_0x48cb12[_0x51224a(0x1df)]}};}catch(_0x47bd56){return logger[_0x51224a(0x1da)]({'event':'resource_lock_release_error','resource':_0x5ec8f8,'error':_0x47bd56['message']},_0x51224a(0x1ec)+_0x47bd56['message']),{'success':![],'error':'Lock\x20release\x20failed:\x20'+_0x47bd56[_0x51224a(0x1f1)]};}}async['getResourceLockStatus']({resource:_0x16bf31,lockKeys:_0x46d503}){const _0x5c315f=a0_0x47433e,_0x5b5739={'pWXCq':_0x5c315f(0x206),'iYSVD':function(_0x30d17d,_0x80edd5){return _0x30d17d!==_0x80edd5;},'lpOlb':function(_0x2c300c,_0xb723f3){return _0x2c300c>_0xb723f3;},'PBFrK':_0x5c315f(0x1e3)};if(!_0x16bf31||!Array[_0x5c315f(0x1d1)](_0x46d503)||_0x46d503['length']===0x0)return{'success':![],'error':_0x5b5739[_0x5c315f(0x1d2)]};try{const _0x1f0ce7=redisClient[_0x5c315f(0x1dd)](),_0x51fc17=[];for(const {key:_0x187b61,value:_0x5bc725}of _0x46d503){const _0x57fae0=this['buildKey'](_0x16bf31,_0x187b61,_0x5bc725),[_0x45d5ec,_0x19e26f]=await Promise['all']([_0x1f0ce7['get'](_0x57fae0),_0x1f0ce7[_0x5c315f(0x200)](_0x57fae0)]),_0x5ee21f=_0x5b5739[_0x5c315f(0x1cc)](_0x45d5ec,null);_0x51fc17['push']({'key':_0x187b61,'value':_0x5bc725,'locked':_0x5ee21f,'owner':_0x5ee21f?this[_0x5c315f(0x1d5)](_0x45d5ec):null,'ttl_remaining':_0x5ee21f&&_0x5b5739['lpOlb'](_0x19e26f,0x0)?_0x19e26f:null});}return{'success':!![],'data':{'resource':_0x16bf31,'keys':_0x51fc17}};}catch(_0x50eda8){return logger['error']({'event':_0x5b5739['PBFrK'],'resource':_0x16bf31,'error':_0x50eda8[_0x5c315f(0x1f1)]},'Resource\x20lock\x20status\x20error:\x20'+_0x50eda8[_0x5c315f(0x1f1)]),{'success':![],'error':_0x5c315f(0x1ea)+_0x50eda8['message']};}}async[a0_0x47433e(0x1ff)](_0x4548c5,_0x3ccfab,_0x1e739b){const _0x15286c=a0_0x47433e;for(const _0x4dd2f3 of _0x3ccfab){try{await _0x4548c5[_0x15286c(0x1e1)](RELEASE_LUA_SCRIPT,0x1,_0x4dd2f3,_0x1e739b);}catch(_0x328535){logger['error']({'event':'resource_lock_rollback_key_error','key':_0x4dd2f3,'error':_0x328535[_0x15286c(0x1f1)]},_0x15286c(0x20b)+_0x4dd2f3);}}}async['_getConflictInfo'](_0x4ade56,_0x6d4bf3){const _0x323172=a0_0x47433e,_0x3d91c4={'ASAyT':'unknown'};try{const [_0x6806bb,_0x3d6c8b]=await Promise['all']([_0x4ade56[_0x323172(0x1e8)](_0x6d4bf3),_0x4ade56['ttl'](_0x6d4bf3)]);return{'owner':_0x6806bb?this['extractOwner'](_0x6806bb):_0x3d91c4[_0x323172(0x1dc)],'ttlRemaining':_0x3d6c8b>0x0?_0x3d6c8b:null};}catch{return{'owner':_0x323172(0x1c8),'ttlRemaining':null};}}[a0_0x47433e(0x1ef)]({resource:_0x55d9c3,lockKeys:_0x46dad4,ttl:_0x4282c6,owner:_0x214cb9}){const _0x17e8d0=a0_0x47433e,_0x39fe51={'fCbqt':_0x17e8d0(0x1d6),'PULFt':function(_0x2ef126,_0x120427){return _0x2ef126<_0x120427;},'jeFqS':function(_0x5d61c3,_0x13832a){return _0x5d61c3!==_0x13832a;},'hkKWO':_0x17e8d0(0x20a),'Cuijr':function(_0x571ddf,_0x3ca0f0){return _0x571ddf>_0x3ca0f0;},'CPAfh':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!_0x55d9c3||typeof _0x55d9c3!==_0x39fe51['fCbqt'])return{'valid':![],'error':_0x17e8d0(0x1e9)};if(!Array['isArray'](_0x46dad4)||_0x46dad4['length']===0x0)return{'valid':![],'error':_0x17e8d0(0x202)};if(_0x46dad4['length']>0x64)return{'valid':![],'error':_0x17e8d0(0x1d9)};for(let _0x377359=0x0;_0x39fe51['PULFt'](_0x377359,_0x46dad4['length']);_0x377359++){const _0x161ad2=_0x46dad4[_0x377359];if(!_0x161ad2||!_0x161ad2['key']||!_0x161ad2['value'])return{'valid':![],'error':'lock_keys['+_0x377359+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x4282c6||_0x39fe51['jeFqS'](typeof _0x4282c6,_0x39fe51['hkKWO'])||_0x39fe51[_0x17e8d0(0x1fd)](_0x4282c6,0x1))return{'valid':![],'error':_0x17e8d0(0x203)};const _0x188500=this[_0x17e8d0(0x1f4)]();if(_0x39fe51['Cuijr'](_0x4282c6,_0x188500))return{'valid':![],'error':_0x17e8d0(0x1db)+_0x188500+_0x17e8d0(0x1f9)};if(!_0x214cb9||_0x39fe51['jeFqS'](typeof _0x214cb9,_0x39fe51[_0x17e8d0(0x1d0)]))return{'valid':![],'error':_0x39fe51[_0x17e8d0(0x1d4)]};return{'valid':!![]};}[a0_0x47433e(0x205)]({resource:_0x203442,lockKeys:_0x132e07,lockToken:_0x4db0be}){const _0x520cf7=a0_0x47433e,_0x29713c={'ZZgtV':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string','MkCZj':function(_0x2c9f5c,_0x404b9c){return _0x2c9f5c===_0x404b9c;},'qebvb':_0x520cf7(0x202),'ocIVA':function(_0x251db0,_0x56e834){return _0x251db0<_0x56e834;},'jTrzi':function(_0x2228f8,_0x142059){return _0x2228f8!==_0x142059;},'SGUGy':'string','NxDox':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!_0x203442||typeof _0x203442!==_0x520cf7(0x1d6))return{'valid':![],'error':_0x29713c['ZZgtV']};if(!Array[_0x520cf7(0x1d1)](_0x132e07)||_0x29713c[_0x520cf7(0x1f2)](_0x132e07[_0x520cf7(0x1df)],0x0))return{'valid':![],'error':_0x29713c[_0x520cf7(0x1f7)]};for(let _0x2a4b27=0x0;_0x29713c[_0x520cf7(0x1d8)](_0x2a4b27,_0x132e07['length']);_0x2a4b27++){const _0x1c7002=_0x132e07[_0x2a4b27];if(!_0x1c7002||!_0x1c7002['key']||!_0x1c7002['value'])return{'valid':![],'error':'lock_keys['+_0x2a4b27+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x4db0be||_0x29713c[_0x520cf7(0x1c9)](typeof _0x4db0be,_0x29713c['SGUGy']))return{'valid':![],'error':_0x29713c['NxDox']};return{'valid':!![]};}}module[a0_0x47433e(0x1cf)]=new ResourceLockManager();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x1f85a7=a0_0x22ba;(function(_0x2684d4,_0x4c46a8){const _0x376979=a0_0x22ba,_0x1662b9=_0x2684d4();while(!![]){try{const _0x494ce8=-parseInt(_0x376979(0xf8))/0x1+-parseInt(_0x376979(0xd4))/0x2+-parseInt(_0x376979(0xba))/0x3+-parseInt(_0x376979(0xeb))/0x4+parseInt(_0x376979(0x10a))/0x5+parseInt(_0x376979(0xc6))/0x6*(parseInt(_0x376979(0x10c))/0x7)+parseInt(_0x376979(0x10f))/0x8;if(_0x494ce8===_0x4c46a8)break;else _0x1662b9['push'](_0x1662b9['shift']());}catch(_0x5157d4){_0x1662b9['push'](_0x1662b9['shift']());}}}(a0_0x2607,0x8d787));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require('uuid');function a0_0x2607(){const _0x1dd367=['mZaWma','yxv0B0nVBw1PDeLUDgvYDMfS','B2nzyvK','y29UC3vTzxiUzgLZy29UBMvJDa','A3Pouge','DMnQDKy','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','s0fgs0fFru5bqKXfra','Bg9Ntgv2zwW','nZu1nJH3zhD4vwq','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','rvjst1i','Dhj1zq','AgvHzgvYCW','s0fgs0fFu0fttf9nruniqu5ju00','BwvZC2fNzuHHBMrSzxi','BwvZC2fNzxngywLSzwq','y2XPzw50swq','BwvZC2fNzxnqCM9JzxnZzwq','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','y29UC3vTzxiUCMvIywXHBMnPBMC','q1P6tKi','zNbPyLe','z2v0q29UzMLN','CMv0CNLnyxHezwXHEq','AgvHCNrIzwf0sw50zxj2ywW','s0fgs0fFsevbuLrcrufux0LovevsvKfm','BwvZC2fNzxnszwnLAxzLza','thLUq2y','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','z3DNsM4','BM93','mZi2ntq3nK5Nv1bzEa','w0THzMTHq29UC3vTzxjDifnLzwSGzxjYB3i6ia','Dg9tDhjPBMC','zxjYB3i','mtaWma','Bwv0CMLJCW','DwHmC2G','y29UC3vTzxiUy3jHC2G','zgvMyxvSDa','CxzKww4','w0THzMTHq29UC3vTzxjDienHBM5VDcbYzxn1BwuGlsbJB25ZDw1LCIbUB3qGCNvUBMLUzW','BgvUz3rO','ntaWma','ntCXmtq4tMD5ALLn','s0fgs0fFuKvuuLLFqvruru1qvfm','ChjVy2vZC2LUz1rPBwvZ','s0fgs0fFtufyx0jzvevtx1bfuL9qqvjusvrjt04','CMv0CNLezwXHEq','y2XVC2u','lwnVBNn1BwvY','Bg9JywXOB3n0oJKWoti','y29UC3vTzxi','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq','BwLU','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignYyxnOzwq6ia','vejzrMC','vxnSEu0','s0fgs0fFu1nm','AxnqyxvZzwq','B2zMC2v0','s0fgs0fFu0fttf9qqvntv09sra','mJyYndCYmgv0venqqq','zw52','ndq1ovr4t0f1uq','BgfZDe1LC3nHz2vuAw1L','A2fMA2e','mta2nZG0mJr5yLDswMG','s0fgs0fFuKvrvuvtvf9usu1ft1vu','C3vIC2nYAwjLzfrVCgLJCW','A2v5','mta0odu3nG','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','AxndB25Uzwn0zwq','CMvZDgzVCMDLlq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','zgLZy29UBMvJDa','CuPWy1G','zw5HyMXLza','C3bSAxq','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','BwvZC2fNzq','BwfW','C2HPzNq','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','Aw5PDgLHBgL6zq','AxnjBML0AwfSAxPPBMC','CMvZzxrnzxrYAwnZ','s0fgs0fFuKvuuLLFrevmqvK','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','CgfYC2u','Bwf4qNL0zxnqzxjqyxj0AxrPB24','y29UBMvJDgLVBLbYB21PC2u','z3jVDxbjza','yxv0B0nVBw1PDa','C3rHCNrdB25ZDw1PBMC','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','y29UBMvJDgLVBLrPBwvVDxq','C2v0DxbfDMvUDeHHBMrSzxjZ','CMvZDw1L','s0fgs0fFqvvut19dt01nsvq','icHMCM9TqMvNAw5UAw5NoIa','icHNCM91CeLKoIa','Bg9N','ig9Uia','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','DMfSDwu','mtm2mZiWmejkEM9tCa','t1DZCu4','CM91BMq','Dg9mB3DLCKnHC2u','Dg9gAxHLza','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','C3rHCNruAw1L','A1fzyw0','C3rVCa','zw50CMLLCW','CgfYC2vizwfKzxjZ','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','nty0nMHeuwXmCG','AxnsDw5UAw5N','w0THzMTHq29UC3vTzxjDifjLC3vTzsbLCNjVCJOG','AxnbCNjHEq','y29TBwL0t2zMC2v0CW'];a0_0x2607=function(){return _0x1dd367;};return a0_0x2607();}class KafkaConsumerService{constructor(){const _0x2eb033=a0_0x22ba;this[_0x2eb033(0x10e)]=null,this['consumer']=null,this[_0x2eb033(0x116)]=![],this['isInitializing']=![],this[_0x2eb033(0xc7)]=![],this[_0x2eb033(0x107)]=![],this[_0x2eb033(0x129)]=null,this['subscribedTopics']=[],this['groupId']=null,this['messageHandler']=null,this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x1f85a7(0xe2)](){const _0x3dad42=a0_0x1f85a7,_0xd7b332={'pcCST':_0x3dad42(0xff),'HLrSk':function(_0x5cc91b,_0x34a0f0){return _0x5cc91b(_0x34a0f0);},'gwgJn':'3000','JZSLx':function(_0x408261,_0x3d0695){return _0x408261(_0x3d0695);},'LZAyc':_0x3dad42(0x113),'RapIp':'true','YbpKg':function(_0x587be0,_0x3330aa){return _0x587be0(_0x3330aa);},'kzNPa':'30000'};return{'enabled':process[_0x3dad42(0x10b)][_0x3dad42(0xd2)]==='true','brokers':(process[_0x3dad42(0x10b)]['KAFKA_BROKERS']||_0xd7b332['pcCST'])[_0x3dad42(0x11c)](','),'clientId':process[_0x3dad42(0x10b)]['KAFKA_CLIENT_ID']||_0x3dad42(0x117)+(process[_0x3dad42(0x10b)][_0x3dad42(0xbf)]||'default')+_0x3dad42(0xfe),'connectionTimeout':parseInt(process[_0x3dad42(0x10b)]['KAFKA_CONNECTION_TIMEOUT']||_0x3dad42(0xcb)),'requestTimeout':_0xd7b332['HLrSk'](parseInt,process['env'][_0x3dad42(0x110)]||'25000'),'sessionTimeout':parseInt(process['env']['KAFKA_SESSION_TIMEOUT']||'30000'),'heartbeatInterval':parseInt(process[_0x3dad42(0x10b)][_0x3dad42(0xe5)]||_0xd7b332[_0x3dad42(0xe9)]),'maxBytesPerPartition':_0xd7b332['JZSLx'](parseInt,process[_0x3dad42(0x10b)][_0x3dad42(0xfb)]||_0xd7b332['LZAyc']),'autoCommit':process['env'][_0x3dad42(0x131)]===_0xd7b332['RapIp'],'autoCommitInterval':_0xd7b332['YbpKg'](parseInt,process[_0x3dad42(0x10b)][_0x3dad42(0xd5)]||_0x3dad42(0xf7)),'retryAttempts':parseInt(process[_0x3dad42(0x10b)][_0x3dad42(0xf9)]||'3'),'retryDelay':_0xd7b332['JZSLx'](parseInt,process['env'][_0x3dad42(0x125)]||_0x3dad42(0xef)),'retryMaxDelay':parseInt(process[_0x3dad42(0x10b)]['KAFKA_RETRY_MAX_DELAY']||_0xd7b332[_0x3dad42(0xcf)]),'logLevel':process[_0x3dad42(0x10b)]['KAFKA_LOG_LEVEL']||'warn'};}['getLogLevel'](_0x219ac3){const _0x445fc=a0_0x1f85a7,_0x683bc6={'nothing':logLevel['NOTHING'],'error':logLevel[_0x445fc(0xd6)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x683bc6[_0x219ac3[_0x445fc(0xbd)]()]||logLevel['WARN'];}async[a0_0x1f85a7(0x122)](_0x1a1a36={}){const _0x333b17=a0_0x1f85a7,_0x4856ac={'OYGeM':function(_0x63b620,_0x48c0a7){return _0x63b620===_0x48c0a7;},'TBYFg':_0x333b17(0xd7),'MKZMA':function(_0x4678dd,_0x80049a){return _0x4678dd(_0x80049a);}},_0x378802=this[_0x333b17(0xe2)]();if(!_0x378802['enabled'])return console['log']('[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'),![];if(this['isConnected'])return!![];if(this[_0x333b17(0x123)]&&this[_0x333b17(0x129)])return this['connectionPromise'];return this[_0x333b17(0x123)]=!![],this[_0x333b17(0x129)]=new Promise(async _0x474679=>{const _0x1ac7a9=_0x333b17;try{let _0x3ad5b2=undefined;_0x4856ac['OYGeM'](process['env'][_0x1ac7a9(0x106)],_0x4856ac[_0x1ac7a9(0x104)])&&(_0x3ad5b2=!![]);let _0x489e40=undefined;process['env'][_0x1ac7a9(0xd9)]&&(_0x489e40={'mechanism':process[_0x1ac7a9(0x10b)][_0x1ac7a9(0xd9)],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process['env'][_0x1ac7a9(0x109)]||''}),this[_0x1ac7a9(0x10e)]=new Kafka({'clientId':_0x1a1a36[_0x1ac7a9(0xdc)]||_0x378802[_0x1ac7a9(0xdc)],'brokers':_0x378802['brokers'],'connectionTimeout':_0x378802[_0x1ac7a9(0x12e)],'requestTimeout':_0x378802['requestTimeout'],'logLevel':this['getLogLevel'](_0x378802[_0x1ac7a9(0xd3)]),'ssl':_0x3ad5b2,'sasl':_0x489e40,'retry':{'initialRetryTime':_0x378802[_0x1ac7a9(0xfc)],'retries':_0x378802['retryAttempts'],'maxRetryTime':_0x378802[_0x1ac7a9(0xe3)]}}),this[_0x1ac7a9(0x12a)]=_0x1a1a36['groupId']||'restforge-'+(process['env']['RESTFORGE_PROJECT_NAME']||_0x1ac7a9(0xf3))+'-consumer-group',this['consumer']=this[_0x1ac7a9(0x10e)]['consumer']({'groupId':this['groupId'],'sessionTimeout':_0x378802['sessionTimeout'],'heartbeatInterval':_0x378802[_0x1ac7a9(0xe4)],'maxBytesPerPartition':_0x378802[_0x1ac7a9(0x128)],'allowAutoTopicCreation':![]}),await this['consumer']['connect'](),this[_0x1ac7a9(0x116)]=!![],console[_0x1ac7a9(0x134)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x378802['brokers']['join'](',\x20')+_0x1ac7a9(0x133)+this['groupId']+')'),this['setupEventHandlers'](),_0x474679(!![]);}catch(_0xfb3491){console['error']('[KafkaConsumer]\x20Connection\x20failed:\x20'+_0xfb3491[_0x1ac7a9(0x11e)]),this['isConnected']=![],_0x4856ac['MKZMA'](_0x474679,![]);}finally{this[_0x1ac7a9(0x123)]=![];}}),this[_0x333b17(0x129)];}[a0_0x1f85a7(0x12f)](){const _0x2b0daa=a0_0x1f85a7,_0x341a6f={'fsTLu':_0x2b0daa(0x12d),'vcjvF':'[KafkaConsumer]\x20Consumer\x20rebalancing...','TtNuD':_0x2b0daa(0xce)};if(!this[_0x2b0daa(0x100)])return;this['consumer']['on'](_0x341a6f['TtNuD'],()=>{const _0x3dfbab=_0x2b0daa;console[_0x3dfbab(0x134)](_0x3dfbab(0x118)),this[_0x3dfbab(0x116)]=![],this[_0x3dfbab(0xc7)]=![];}),this[_0x2b0daa(0x100)]['on']('consumer.stop',()=>{console['log'](_0x341a6f['fsTLu']),this['isRunning']=![];}),this[_0x2b0daa(0x100)]['on'](_0x2b0daa(0xf2),_0x3ea76b=>{const _0x158504=_0x2b0daa;console['error'](_0x158504(0x103)+_0x3ea76b['payload']['error']['message']),this['isRunning']=![];}),this[_0x2b0daa(0x100)]['on'](_0x2b0daa(0xdf),()=>{const _0x36e4fd=_0x2b0daa;console[_0x36e4fd(0x134)](_0x341a6f[_0x36e4fd(0xd0)]);});}async['subscribe'](_0x5d2d23,_0x4ce6b4=![]){const _0x4f0d38=a0_0x1f85a7,_0x3b3b24={'OWsqN':'[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'};if(!this['isConnected'])return console[_0x4f0d38(0xee)](_0x3b3b24[_0x4f0d38(0xbb)]),![];try{const _0x1d4412=Array[_0x4f0d38(0xc9)](_0x5d2d23)?_0x5d2d23:[_0x5d2d23];for(const _0x53658c of _0x1d4412){await this['consumer']['subscribe']({'topic':_0x53658c,'fromBeginning':_0x4ce6b4}),console[_0x4f0d38(0x134)]('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x53658c+_0x4f0d38(0x132)+_0x4ce6b4+')');}return this['subscribedTopics']=[...new Set([...this['subscribedTopics'],..._0x1d4412])],!![];}catch(_0x43e6f6){return console[_0x4f0d38(0xee)]('[KafkaConsumer]\x20Subscribe\x20error:\x20'+_0x43e6f6['message']),![];}}async[a0_0x1f85a7(0x12c)](_0x58748b,_0x3e3d44={}){const _0xd31ff4=a0_0x1f85a7,_0x23c8ca={'kdtsl':function(_0x5e4d82,_0x59b9fc){return _0x5e4d82+_0x59b9fc;},'umIHd':function(_0x95ea68,_0x4a6c01){return _0x95ea68-_0x4a6c01;},'UslyM':function(_0x9106f6,_0x49ec81){return _0x9106f6>_0x49ec81;},'izqpf':function(_0xd8025e){return _0xd8025e();}};if(!this[_0xd31ff4(0x116)])return console[_0xd31ff4(0xee)](_0xd31ff4(0xd1)),![];if(this['isRunning'])return console['log']('[KafkaConsumer]\x20Consumer\x20already\x20running'),!![];const _0x26df70=this[_0xd31ff4(0xe2)]();this['messageHandler']=_0x58748b;try{return this['metrics']['startTime']=new Date(),await this[_0xd31ff4(0x100)]['run']({'autoCommit':_0x3e3d44['autoCommit']!==undefined?_0x3e3d44[_0xd31ff4(0x12b)]:_0x26df70['autoCommit'],'autoCommitInterval':_0x26df70[_0xd31ff4(0xcc)],'eachMessage':async({topic:_0xb403f4,partition:_0x2e250e,message:_0x351602,heartbeat:_0x37c619})=>{const _0x479108=_0xd31ff4,_0x5d0ba3=Date[_0x479108(0xea)]();this[_0x479108(0xf0)]['messagesReceived']++,this[_0x479108(0xf0)][_0x479108(0x10d)]=new Date();try{const _0x35131a=_0x351602[_0x479108(0xb9)]?_0x351602[_0x479108(0xb9)]['toString']():null;let _0x35d897=null;try{_0x35d897=_0x35131a?JSON[_0x479108(0x127)](_0x35131a):null;}catch(_0x371286){_0x35d897=_0x35131a;}const _0x4a3597={'topic':_0xb403f4,'partition':_0x2e250e,'offset':_0x351602[_0x479108(0x108)],'key':_0x351602[_0x479108(0x112)]?_0x351602['key'][_0x479108(0xed)]():null,'headers':this[_0x479108(0xc4)](_0x351602[_0x479108(0xd8)]),'timestamp':_0x351602['timestamp'],'value':_0x35d897,'raw':_0x35131a};this[_0x479108(0xda)]&&await this[_0x479108(0xda)](_0x4a3597);!_0x26df70[_0x479108(0x12b)]&&await this[_0x479108(0x100)][_0x479108(0xca)]([{'topic':_0xb403f4,'partition':_0x2e250e,'offset':_0x23c8ca['kdtsl'](parseInt(_0x351602[_0x479108(0x108)]),0x1)[_0x479108(0xed)]()}]);this[_0x479108(0xf0)]['messagesProcessed']++;const _0x60dc37=_0x23c8ca['umIHd'](Date[_0x479108(0xea)](),_0x5d0ba3);this['metrics']['processingTimes']['push'](_0x60dc37),_0x23c8ca[_0x479108(0x105)](this[_0x479108(0xf0)][_0x479108(0xfa)]['length'],0x64)&&this['metrics']['processingTimes'][_0x479108(0x120)](),await _0x23c8ca['izqpf'](_0x37c619);}catch(_0x56ce55){this['metrics'][_0x479108(0xdb)]++,console['error'](_0x479108(0xe8)+_0x56ce55[_0x479108(0x11e)]);throw _0x56ce55;}}}),this['isRunning']=!![],console['log'](_0xd31ff4(0xc5)+this[_0xd31ff4(0x111)]['join'](',\x20')),!![];}catch(_0x3bfb45){return console[_0xd31ff4(0xee)](_0xd31ff4(0x11d)+_0x3bfb45[_0xd31ff4(0x11e)]),![];}}[a0_0x1f85a7(0xc4)](_0x24ed45){const _0x11aebc=a0_0x1f85a7;if(!_0x24ed45)return{};const _0x2295e6={};for(const [_0x1f31d3,_0x25bdb4]of Object[_0x11aebc(0xc3)](_0x24ed45)){_0x2295e6[_0x1f31d3]=_0x25bdb4?_0x25bdb4[_0x11aebc(0xed)]():null;}return _0x2295e6;}async['pause'](){const _0x171563=a0_0x1f85a7,_0x53b9d8={'fpibQ':_0x171563(0x126)};if(!this[_0x171563(0x116)]||!this['isRunning'])return console[_0x171563(0x134)](_0x171563(0xde)),![];if(this[_0x171563(0x107)])return console['log'](_0x53b9d8[_0x171563(0xe1)]),!![];try{const _0x4f9d5b=this[_0x171563(0x111)]['map'](_0x43675a=>({'topic':_0x43675a}));return this[_0x171563(0x100)]['pause'](_0x4f9d5b),this[_0x171563(0x107)]=!![],console[_0x171563(0x134)](_0x171563(0x115)),!![];}catch(_0x3665d6){return console['error'](_0x171563(0x114)+_0x3665d6['message']),![];}}async[a0_0x1f85a7(0x130)](){const _0x3e47cc=a0_0x1f85a7,_0x422f4b={'uhLsh':'[KafkaConsumer]\x20Consumer\x20resumed'};if(!this['isConnected']||!this['isRunning'])return console['log'](_0x3e47cc(0xf5)),![];if(!this['isPaused'])return console[_0x3e47cc(0x134)](_0x3e47cc(0x101)),!![];try{const _0x3ce1b2=this[_0x3e47cc(0x111)][_0x3e47cc(0x11f)](_0x511e25=>({'topic':_0x511e25}));return this[_0x3e47cc(0x100)][_0x3e47cc(0x130)](_0x3ce1b2),this['isPaused']=![],console['log'](_0x422f4b[_0x3e47cc(0xf1)]),!![];}catch(_0x3f1c29){return console[_0x3e47cc(0xee)](_0x3e47cc(0xc8)+_0x3f1c29['message']),![];}}async['stop'](){const _0x2c157f=a0_0x1f85a7,_0x21fe83={'kQYam':'[KafkaConsumer]\x20Consumer\x20not\x20connected','LynCf':'[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'};if(!this[_0x2c157f(0x116)])return console[_0x2c157f(0x134)](_0x21fe83[_0x2c157f(0xc1)]),!![];try{return this[_0x2c157f(0x100)]&&(await this['consumer']['stop'](),await this[_0x2c157f(0x100)][_0x2c157f(0x119)]()),this['isConnected']=![],this['isRunning']=![],this['isPaused']=![],console['log'](_0x21fe83[_0x2c157f(0xe7)]),!![];}catch(_0x50b972){return console[_0x2c157f(0xee)](_0x2c157f(0x136)+_0x50b972['message']),![];}}async['seekToOffset'](_0x1ebd90,_0x4a3b9d,_0x4046b5){const _0x30235c=a0_0x1f85a7;if(!this[_0x30235c(0x116)])return console['error']('[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'),![];try{return this[_0x30235c(0x100)]['seek']({'topic':_0x1ebd90,'partition':_0x4a3b9d,'offset':_0x4046b5[_0x30235c(0xed)]()}),console['log']('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x4046b5+_0x30235c(0x135)+_0x1ebd90+':'+_0x4a3b9d),!![];}catch(_0x535b93){return console[_0x30235c(0xee)](_0x30235c(0xec)+_0x535b93[_0x30235c(0x11e)]),![];}}['getStatus'](){const _0x32e176=a0_0x1f85a7,_0x33118d=this[_0x32e176(0xe2)]();return{'enabled':_0x33118d[_0x32e176(0x11b)],'connected':this[_0x32e176(0x116)],'running':this['isRunning'],'paused':this[_0x32e176(0x107)],'brokers':_0x33118d['brokers'],'clientId':_0x33118d['clientId'],'groupId':this[_0x32e176(0x12a)],'subscribedTopics':this['subscribedTopics']};}['getMetrics'](){const _0x27e0a4=a0_0x1f85a7,_0x1b58dc={'ocYaY':function(_0x575cda,_0x4e8fb2){return _0x575cda>_0x4e8fb2;},'qvdYn':function(_0x26b604,_0x3b9516){return _0x26b604>_0x3b9516;},'QjILr':function(_0x19d721,_0x1bc52c){return _0x19d721+_0x1bc52c;},'dqRQM':function(_0x43a635,_0x1f7611){return _0x43a635-_0x1f7611;},'CZzNB':function(_0x42ce79,_0x32449f){return _0x42ce79+_0x32449f;},'kpVjY':function(_0xfcdbc9,_0x6396c5){return _0xfcdbc9+_0x6396c5;},'qJpcX':function(_0x31d804,_0x59bb68){return _0x31d804+_0x59bb68;}},_0x2d1f69=_0x1b58dc[_0x27e0a4(0xcd)](this['metrics']['processingTimes'][_0x27e0a4(0xf6)],0x0)?this['metrics']['processingTimes']['reduce']((_0x409686,_0x23cf16)=>_0x409686+_0x23cf16,0x0)/this['metrics']['processingTimes'][_0x27e0a4(0xf6)]:0x0,_0x58df8f=_0x1b58dc[_0x27e0a4(0xf4)](this[_0x27e0a4(0xf0)][_0x27e0a4(0xfa)]['length'],0x0)?Math[_0x27e0a4(0x102)](...this['metrics'][_0x27e0a4(0xfa)]):0x0,_0x59a556=_0x1b58dc['ocYaY'](this['metrics']['processingTimes'][_0x27e0a4(0xf6)],0x0)?Math['max'](...this['metrics'][_0x27e0a4(0xfa)]):0x0;return{'messagesReceived':this['metrics'][_0x27e0a4(0xe6)],'messagesProcessed':this[_0x27e0a4(0xf0)][_0x27e0a4(0xdd)],'messagesFailed':this['metrics'][_0x27e0a4(0xdb)],'successRate':this['metrics']['messagesReceived']>0x0?(this[_0x27e0a4(0xf0)]['messagesProcessed']/this[_0x27e0a4(0xf0)][_0x27e0a4(0xe6)]*0x64)[_0x27e0a4(0xbe)](0x2)+'%':'0%','lastMessageTime':this['metrics'][_0x27e0a4(0x10d)],'startTime':this[_0x27e0a4(0xf0)][_0x27e0a4(0xc0)],'uptime':this[_0x27e0a4(0xf0)][_0x27e0a4(0xc0)]?_0x1b58dc['QjILr'](Math['floor'](_0x1b58dc['dqRQM'](Date[_0x27e0a4(0xea)](),this[_0x27e0a4(0xf0)]['startTime']['getTime']())/0x3e8),'s'):'0s','processingTime':{'avg':_0x1b58dc[_0x27e0a4(0xe0)](Math[_0x27e0a4(0xbc)](_0x2d1f69),'ms'),'min':_0x1b58dc['kpVjY'](_0x58df8f,'ms'),'max':_0x1b58dc[_0x27e0a4(0x11a)](_0x59a556,'ms')}};}[a0_0x1f85a7(0x124)](){const _0x481268=a0_0x1f85a7;this[_0x481268(0xf0)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console['log'](_0x481268(0x121));}async[a0_0x1f85a7(0xfd)](){const _0x5d11a0=a0_0x1f85a7;await this[_0x5d11a0(0xc2)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){const _0x4a6080=a0_0x1f85a7;instance&&(instance[_0x4a6080(0xfd)](),instance=null);}function createInstance(){return new KafkaConsumerService();}function a0_0x22ba(_0x4e5276,_0x1f49f8){_0x4e5276=_0x4e5276-0xb9;const _0x260792=a0_0x2607();let _0x22bab8=_0x260792[_0x4e5276];if(a0_0x22ba['NonZbz']===undefined){var _0x402e6c=function(_0x1bda15){const _0x452bee='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x50dd99='',_0x4ef2f8='';for(let _0x2c4c64=0x0,_0x88fbad,_0x1d6a58,_0x43675f=0x0;_0x1d6a58=_0x1bda15['charAt'](_0x43675f++);~_0x1d6a58&&(_0x88fbad=_0x2c4c64%0x4?_0x88fbad*0x40+_0x1d6a58:_0x1d6a58,_0x2c4c64++%0x4)?_0x50dd99+=String['fromCharCode'](0xff&_0x88fbad>>(-0x2*_0x2c4c64&0x6)):0x0){_0x1d6a58=_0x452bee['indexOf'](_0x1d6a58);}for(let _0x26b7b9=0x0,_0xfc0ad6=_0x50dd99['length'];_0x26b7b9<_0xfc0ad6;_0x26b7b9++){_0x4ef2f8+='%'+('00'+_0x50dd99['charCodeAt'](_0x26b7b9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ef2f8);};a0_0x22ba['ENHySd']=_0x402e6c,a0_0x22ba['uVPxfN']={},a0_0x22ba['NonZbz']=!![];}const _0x277e3a=_0x260792[0x0],_0x5ac56f=_0x4e5276+_0x277e3a,_0x10c2cf=a0_0x22ba['uVPxfN'][_0x5ac56f];return!_0x10c2cf?(_0x22bab8=a0_0x22ba['ENHySd'](_0x22bab8),a0_0x22ba['uVPxfN'][_0x5ac56f]=_0x22bab8):_0x22bab8=_0x10c2cf,_0x22bab8;}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
1
|
+
const a0_0x5ea097=a0_0x539f;(function(_0x4b947f,_0x38c631){const _0x29916e=a0_0x539f,_0x454c52=_0x4b947f();while(!![]){try{const _0x2ffa6b=-parseInt(_0x29916e(0x1b9))/0x1*(-parseInt(_0x29916e(0x214))/0x2)+parseInt(_0x29916e(0x1c6))/0x3+parseInt(_0x29916e(0x203))/0x4*(parseInt(_0x29916e(0x1c0))/0x5)+-parseInt(_0x29916e(0x1fa))/0x6+parseInt(_0x29916e(0x1b5))/0x7*(parseInt(_0x29916e(0x1df))/0x8)+parseInt(_0x29916e(0x1d4))/0x9*(parseInt(_0x29916e(0x223))/0xa)+-parseInt(_0x29916e(0x20d))/0xb;if(_0x2ffa6b===_0x38c631)break;else _0x454c52['push'](_0x454c52['shift']());}catch(_0x419bd2){_0x454c52['push'](_0x454c52['shift']());}}}(a0_0x5582,0x30307));const {Kafka,logLevel}=require(a0_0x5ea097(0x1bc)),{v7:uuidv7}=require(a0_0x5ea097(0x1e3));class KafkaConsumerService{constructor(){const _0x4320d1=a0_0x5ea097;this['kafka']=null,this[_0x4320d1(0x1ed)]=null,this['isConnected']=![],this['isInitializing']=![],this[_0x4320d1(0x224)]=![],this[_0x4320d1(0x1d7)]=![],this['connectionPromise']=null,this[_0x4320d1(0x1da)]=[],this[_0x4320d1(0x207)]=null,this[_0x4320d1(0x1c3)]=null,this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}['getConfig'](){const _0x44c6a1=a0_0x5ea097,_0x2e85d0={'DnQaD':function(_0x5bdbad,_0x54c014){return _0x5bdbad===_0x54c014;},'GrTFn':'true','PqSey':_0x44c6a1(0x1f3),'fHyqI':'3000','nrjty':function(_0x1e4a4c,_0x30a5d6){return _0x1e4a4c(_0x30a5d6);},'BquoL':_0x44c6a1(0x212),'WKElQ':_0x44c6a1(0x1e7),'Ioohf':'warn'};return{'enabled':_0x2e85d0[_0x44c6a1(0x213)](process['env'][_0x44c6a1(0x1b4)],_0x2e85d0['GrTFn']),'brokers':(process['env'][_0x44c6a1(0x1d0)]||_0x2e85d0['PqSey'])['split'](','),'clientId':process['env'][_0x44c6a1(0x210)]||'restforge-'+(process['env'][_0x44c6a1(0x211)]||'default')+'-consumer','connectionTimeout':parseInt(process['env']['KAFKA_CONNECTION_TIMEOUT']||_0x2e85d0[_0x44c6a1(0x1f4)]),'requestTimeout':_0x2e85d0['nrjty'](parseInt,process[_0x44c6a1(0x1d2)][_0x44c6a1(0x1f2)]||_0x2e85d0[_0x44c6a1(0x226)]),'sessionTimeout':parseInt(process[_0x44c6a1(0x1d2)]['KAFKA_SESSION_TIMEOUT']||'30000'),'heartbeatInterval':parseInt(process['env'][_0x44c6a1(0x1fb)]||_0x2e85d0[_0x44c6a1(0x1f4)]),'maxBytesPerPartition':parseInt(process[_0x44c6a1(0x1d2)]['KAFKA_MAX_BYTES_PER_PARTITION']||'1048576'),'autoCommit':process[_0x44c6a1(0x1d2)][_0x44c6a1(0x1b7)]===_0x2e85d0[_0x44c6a1(0x1b3)],'autoCommitInterval':_0x2e85d0['nrjty'](parseInt,process['env'][_0x44c6a1(0x1fd)]||_0x2e85d0[_0x44c6a1(0x1f9)]),'retryAttempts':_0x2e85d0[_0x44c6a1(0x1bb)](parseInt,process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process[_0x44c6a1(0x1d2)][_0x44c6a1(0x1b8)]||_0x44c6a1(0x227)),'retryMaxDelay':parseInt(process['env'][_0x44c6a1(0x1db)]||_0x44c6a1(0x1eb)),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x2e85d0['Ioohf']};}['getLogLevel'](_0x539fde){const _0x2736fa=a0_0x5ea097,_0x239e9b={'nothing':logLevel[_0x2736fa(0x21b)],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel[_0x2736fa(0x201)]};return _0x239e9b[_0x539fde[_0x2736fa(0x1ea)]()]||logLevel['WARN'];}async[a0_0x5ea097(0x215)](_0x69d0e9={}){const _0x5b8d76=a0_0x5ea097,_0x57917c={'jyCEp':function(_0xf13bbe,_0x5d6853){return _0xf13bbe===_0x5d6853;},'kGOnX':function(_0x1a3d44,_0x3c1dc3){return _0x1a3d44(_0x3c1dc3);},'XJjOu':'[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'},_0x481bc8=this[_0x5b8d76(0x1ba)]();if(!_0x481bc8[_0x5b8d76(0x1f6)])return console[_0x5b8d76(0x21d)](_0x57917c[_0x5b8d76(0x20b)]),![];if(this[_0x5b8d76(0x1bf)])return!![];if(this[_0x5b8d76(0x206)]&&this['connectionPromise'])return this[_0x5b8d76(0x1cd)];return this[_0x5b8d76(0x206)]=!![],this['connectionPromise']=new Promise(async _0x54f120=>{const _0x50b40e=_0x5b8d76;try{let _0x17422c=undefined;_0x57917c[_0x50b40e(0x1f0)](process[_0x50b40e(0x1d2)][_0x50b40e(0x1fe)],_0x50b40e(0x20c))&&(_0x17422c=!![]);let _0x5d84f4=undefined;process[_0x50b40e(0x1d2)]['KAFKA_SASL_MECHANISM']&&(_0x5d84f4={'mechanism':process[_0x50b40e(0x1d2)]['KAFKA_SASL_MECHANISM'],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process[_0x50b40e(0x1d2)][_0x50b40e(0x220)]||''}),this[_0x50b40e(0x1ee)]=new Kafka({'clientId':_0x69d0e9[_0x50b40e(0x1ec)]||_0x481bc8[_0x50b40e(0x1ec)],'brokers':_0x481bc8['brokers'],'connectionTimeout':_0x481bc8[_0x50b40e(0x200)],'requestTimeout':_0x481bc8[_0x50b40e(0x1f5)],'logLevel':this['getLogLevel'](_0x481bc8[_0x50b40e(0x1ef)]),'ssl':_0x17422c,'sasl':_0x5d84f4,'retry':{'initialRetryTime':_0x481bc8['retryDelay'],'retries':_0x481bc8[_0x50b40e(0x1cb)],'maxRetryTime':_0x481bc8['retryMaxDelay']}}),this['groupId']=_0x69d0e9['groupId']||'restforge-'+(process['env']['RESTFORGE_PROJECT_NAME']||_0x50b40e(0x21c))+'-consumer-group',this[_0x50b40e(0x1ed)]=this['kafka']['consumer']({'groupId':this[_0x50b40e(0x207)],'sessionTimeout':_0x481bc8[_0x50b40e(0x1b1)],'heartbeatInterval':_0x481bc8['heartbeatInterval'],'maxBytesPerPartition':_0x481bc8['maxBytesPerPartition'],'allowAutoTopicCreation':![]}),await this[_0x50b40e(0x1ed)][_0x50b40e(0x1d5)](),this[_0x50b40e(0x1bf)]=!![],console[_0x50b40e(0x21d)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x481bc8[_0x50b40e(0x216)][_0x50b40e(0x20e)](',\x20')+_0x50b40e(0x1d6)+this[_0x50b40e(0x207)]+')'),this['setupEventHandlers'](),_0x57917c['kGOnX'](_0x54f120,!![]);}catch(_0x172f47){console['error'](_0x50b40e(0x1f8)+_0x172f47[_0x50b40e(0x1e9)]),this[_0x50b40e(0x1bf)]=![],_0x54f120(![]);}finally{this['isInitializing']=![];}}),this['connectionPromise'];}['setupEventHandlers'](){const _0x252d9a=a0_0x5ea097,_0x105597={'vzGCn':'[KafkaConsumer]\x20Consumer\x20disconnected','bYyUA':'consumer.disconnect','NVuhV':'consumer.stop','cQClE':_0x252d9a(0x208)};if(!this['consumer'])return;this[_0x252d9a(0x1ed)]['on'](_0x105597['bYyUA'],()=>{const _0x4be89c=_0x252d9a;console[_0x4be89c(0x21d)](_0x105597[_0x4be89c(0x204)]),this['isConnected']=![],this[_0x4be89c(0x224)]=![];}),this[_0x252d9a(0x1ed)]['on'](_0x105597['NVuhV'],()=>{const _0xc15050=_0x252d9a;console['log'](_0xc15050(0x1ca)),this['isRunning']=![];}),this['consumer']['on']('consumer.crash',_0x461e56=>{const _0x2abcd2=_0x252d9a;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x461e56['payload'][_0x2abcd2(0x1c7)][_0x2abcd2(0x1e9)]),this[_0x2abcd2(0x224)]=![];}),this['consumer']['on'](_0x105597['cQClE'],()=>{const _0x3cc7f8=_0x252d9a;console[_0x3cc7f8(0x21d)](_0x3cc7f8(0x1c5));});}async[a0_0x5ea097(0x1e2)](_0x1d05db,_0x2b2d3f=![]){const _0x52a193=a0_0x5ea097;if(!this[_0x52a193(0x1bf)])return console[_0x52a193(0x1c7)]('[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'),![];try{const _0x19d8d5=Array['isArray'](_0x1d05db)?_0x1d05db:[_0x1d05db];for(const _0x20ebb9 of _0x19d8d5){await this[_0x52a193(0x1ed)][_0x52a193(0x1e2)]({'topic':_0x20ebb9,'fromBeginning':_0x2b2d3f}),console[_0x52a193(0x21d)]('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x20ebb9+'\x20(fromBeginning:\x20'+_0x2b2d3f+')');}return this[_0x52a193(0x1da)]=[...new Set([...this['subscribedTopics'],..._0x19d8d5])],!![];}catch(_0xe1c444){return console['error'](_0x52a193(0x21a)+_0xe1c444['message']),![];}}async[a0_0x5ea097(0x1c4)](_0x7c672a,_0x308132={}){const _0x53dbd7=a0_0x5ea097,_0x11a837={'ealkM':function(_0x1ea847,_0x312291){return _0x1ea847+_0x312291;},'dfriV':function(_0x48c684,_0x370fa0){return _0x48c684-_0x370fa0;},'GxIxg':function(_0x41bb99){return _0x41bb99();},'HSRYF':'[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected','qDYhk':'[KafkaConsumer]\x20Consumer\x20already\x20running'};if(!this[_0x53dbd7(0x1bf)])return console[_0x53dbd7(0x1c7)](_0x11a837[_0x53dbd7(0x1d9)]),![];if(this['isRunning'])return console[_0x53dbd7(0x21d)](_0x11a837['qDYhk']),!![];const _0x2dd56b=this[_0x53dbd7(0x1ba)]();this[_0x53dbd7(0x1c3)]=_0x7c672a;try{return this[_0x53dbd7(0x221)]['startTime']=new Date(),await this['consumer']['run']({'autoCommit':_0x308132['autoCommit']!==undefined?_0x308132['autoCommit']:_0x2dd56b['autoCommit'],'autoCommitInterval':_0x2dd56b['autoCommitInterval'],'eachMessage':async({topic:_0x5c81bf,partition:_0x1d987c,message:_0x493917,heartbeat:_0x12bdfb})=>{const _0x3cf331=_0x53dbd7,_0x1b67da=Date['now']();this['metrics']['messagesReceived']++,this['metrics']['lastMessageTime']=new Date();try{const _0x13de72=_0x493917[_0x3cf331(0x1e5)]?_0x493917['value'][_0x3cf331(0x1cc)]():null;let _0x269efb=null;try{_0x269efb=_0x13de72?JSON[_0x3cf331(0x202)](_0x13de72):null;}catch(_0x37dd96){_0x269efb=_0x13de72;}const _0x50e0f6={'topic':_0x5c81bf,'partition':_0x1d987c,'offset':_0x493917['offset'],'key':_0x493917['key']?_0x493917['key']['toString']():null,'headers':this[_0x3cf331(0x20f)](_0x493917['headers']),'timestamp':_0x493917['timestamp'],'value':_0x269efb,'raw':_0x13de72};this[_0x3cf331(0x1c3)]&&await this[_0x3cf331(0x1c3)](_0x50e0f6);!_0x2dd56b['autoCommit']&&await this['consumer'][_0x3cf331(0x1be)]([{'topic':_0x5c81bf,'partition':_0x1d987c,'offset':_0x11a837[_0x3cf331(0x225)](parseInt(_0x493917[_0x3cf331(0x205)]),0x1)[_0x3cf331(0x1cc)]()}]);this[_0x3cf331(0x221)][_0x3cf331(0x1b0)]++;const _0x46e1a9=_0x11a837[_0x3cf331(0x1c2)](Date['now'](),_0x1b67da);this[_0x3cf331(0x221)]['processingTimes'][_0x3cf331(0x1c9)](_0x46e1a9),this['metrics'][_0x3cf331(0x1f7)][_0x3cf331(0x21f)]>0x64&&this['metrics']['processingTimes']['shift'](),await _0x11a837['GxIxg'](_0x12bdfb);}catch(_0x59b662){this['metrics']['messagesFailed']++,console[_0x3cf331(0x1c7)](_0x3cf331(0x1e4)+_0x59b662[_0x3cf331(0x1e9)]);throw _0x59b662;}}}),this['isRunning']=!![],console['log'](_0x53dbd7(0x1e6)+this['subscribedTopics']['join'](',\x20')),!![];}catch(_0x30664a){return console['error'](_0x53dbd7(0x219)+_0x30664a[_0x53dbd7(0x1e9)]),![];}}[a0_0x5ea097(0x20f)](_0x337db2){const _0x3d29f1=a0_0x5ea097;if(!_0x337db2)return{};const _0x467abe={};for(const [_0x49dede,_0x5f635]of Object[_0x3d29f1(0x1ce)](_0x337db2)){_0x467abe[_0x49dede]=_0x5f635?_0x5f635[_0x3d29f1(0x1cc)]():null;}return _0x467abe;}async['pause'](){const _0x520b59=a0_0x5ea097,_0x32db1a={'EWxcw':_0x520b59(0x1fc),'ebkqB':_0x520b59(0x21e)};if(!this[_0x520b59(0x1bf)]||!this[_0x520b59(0x224)])return console['log']('[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running'),![];if(this['isPaused'])return console['log'](_0x32db1a[_0x520b59(0x1b6)]),!![];try{const _0x1b1823=this['subscribedTopics'][_0x520b59(0x218)](_0x2f368b=>({'topic':_0x2f368b}));return this['consumer']['pause'](_0x1b1823),this[_0x520b59(0x1d7)]=!![],console['log'](_0x32db1a['ebkqB']),!![];}catch(_0x5141f5){return console[_0x520b59(0x1c7)](_0x520b59(0x1de)+_0x5141f5['message']),![];}}async['resume'](){const _0xe8043f=a0_0x5ea097;if(!this['isConnected']||!this[_0xe8043f(0x224)])return console[_0xe8043f(0x21d)](_0xe8043f(0x1b2)),![];if(!this[_0xe8043f(0x1d7)])return console[_0xe8043f(0x21d)](_0xe8043f(0x20a)),!![];try{const _0x16d629=this['subscribedTopics']['map'](_0x1a9046=>({'topic':_0x1a9046}));return this[_0xe8043f(0x1ed)]['resume'](_0x16d629),this['isPaused']=![],console['log']('[KafkaConsumer]\x20Consumer\x20resumed'),!![];}catch(_0x34e39a){return console['error']('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x34e39a[_0xe8043f(0x1e9)]),![];}}async[a0_0x5ea097(0x1c1)](){const _0x5b7d3e=a0_0x5ea097,_0x47cb9f={'lYdQZ':'[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'};if(!this[_0x5b7d3e(0x1bf)])return console[_0x5b7d3e(0x21d)](_0x5b7d3e(0x1dd)),!![];try{return this['consumer']&&(await this[_0x5b7d3e(0x1ed)]['stop'](),await this['consumer']['disconnect']()),this[_0x5b7d3e(0x1bf)]=![],this[_0x5b7d3e(0x224)]=![],this['isPaused']=![],console[_0x5b7d3e(0x21d)](_0x47cb9f[_0x5b7d3e(0x1c8)]),!![];}catch(_0x19f01c){return console[_0x5b7d3e(0x1c7)](_0x5b7d3e(0x1f1)+_0x19f01c['message']),![];}}async['seekToOffset'](_0xa327b,_0x4362f7,_0xbcb401){const _0x4e015b=a0_0x5ea097;if(!this[_0x4e015b(0x1bf)])return console['error'](_0x4e015b(0x222)),![];try{return this[_0x4e015b(0x1ed)][_0x4e015b(0x217)]({'topic':_0xa327b,'partition':_0x4362f7,'offset':_0xbcb401['toString']()}),console['log'](_0x4e015b(0x1af)+_0xbcb401+_0x4e015b(0x1ff)+_0xa327b+':'+_0x4362f7),!![];}catch(_0x3bb690){return console[_0x4e015b(0x1c7)]('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x3bb690[_0x4e015b(0x1e9)]),![];}}['getStatus'](){const _0x5a854f=a0_0x5ea097,_0x3fe9c4=this['getConfig']();return{'enabled':_0x3fe9c4['enabled'],'connected':this['isConnected'],'running':this[_0x5a854f(0x224)],'paused':this[_0x5a854f(0x1d7)],'brokers':_0x3fe9c4['brokers'],'clientId':_0x3fe9c4[_0x5a854f(0x1ec)],'groupId':this['groupId'],'subscribedTopics':this[_0x5a854f(0x1da)]};}['getMetrics'](){const _0x40da0a=a0_0x5ea097,_0x4c0ab7={'qsnGD':function(_0x5a2761,_0x131fee){return _0x5a2761/_0x131fee;},'IVTFk':function(_0x13f172,_0x363fd3){return _0x13f172>_0x363fd3;},'pinTP':function(_0x1eed50,_0xaf049c){return _0x1eed50+_0xaf049c;},'jYlwg':function(_0x2fe4eb,_0xce9088){return _0x2fe4eb/_0xce9088;},'LFVfx':function(_0x3dee6d,_0x5abdab){return _0x3dee6d-_0x5abdab;},'oAocK':function(_0xd31dce,_0x46ecb0){return _0xd31dce+_0x46ecb0;}},_0x95c567=this[_0x40da0a(0x221)][_0x40da0a(0x1f7)][_0x40da0a(0x21f)]>0x0?_0x4c0ab7['qsnGD'](this[_0x40da0a(0x221)]['processingTimes']['reduce']((_0x14bb89,_0x19eb27)=>_0x14bb89+_0x19eb27,0x0),this[_0x40da0a(0x221)]['processingTimes'][_0x40da0a(0x21f)]):0x0,_0x283d57=_0x4c0ab7['IVTFk'](this['metrics'][_0x40da0a(0x1f7)]['length'],0x0)?Math['min'](...this[_0x40da0a(0x221)]['processingTimes']):0x0,_0x2ad12a=_0x4c0ab7['IVTFk'](this[_0x40da0a(0x221)][_0x40da0a(0x1f7)][_0x40da0a(0x21f)],0x0)?Math[_0x40da0a(0x1d1)](...this['metrics']['processingTimes']):0x0;return{'messagesReceived':this[_0x40da0a(0x221)]['messagesReceived'],'messagesProcessed':this['metrics']['messagesProcessed'],'messagesFailed':this['metrics'][_0x40da0a(0x1e1)],'successRate':_0x4c0ab7['IVTFk'](this[_0x40da0a(0x221)][_0x40da0a(0x1bd)],0x0)?_0x4c0ab7[_0x40da0a(0x209)]((_0x4c0ab7['qsnGD'](this[_0x40da0a(0x221)][_0x40da0a(0x1b0)],this['metrics'][_0x40da0a(0x1bd)])*0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this['metrics']['lastMessageTime'],'startTime':this['metrics']['startTime'],'uptime':this['metrics']['startTime']?_0x4c0ab7['pinTP'](Math[_0x40da0a(0x1dc)](_0x4c0ab7['jYlwg'](_0x4c0ab7[_0x40da0a(0x1d8)](Date[_0x40da0a(0x1e0)](),this[_0x40da0a(0x221)][_0x40da0a(0x1d3)]['getTime']()),0x3e8)),'s'):'0s','processingTime':{'avg':_0x4c0ab7[_0x40da0a(0x1e8)](Math['round'](_0x95c567),'ms'),'min':_0x283d57+'ms','max':_0x2ad12a+'ms'}};}['resetMetrics'](){const _0x407369=a0_0x5ea097,_0x4e3110={'tVzKy':'[KafkaConsumer]\x20Metrics\x20reset'};this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this[_0x407369(0x224)]?new Date():null,'processingTimes':[]},console['log'](_0x4e3110['tVzKy']);}async[a0_0x5ea097(0x1cf)](){await this['stop']();}}let instance=null;function a0_0x539f(_0x52a239,_0x50f594){_0x52a239=_0x52a239-0x1af;const _0x55820a=a0_0x5582();let _0x539fe9=_0x55820a[_0x52a239];if(a0_0x539f['NRRneM']===undefined){var _0x4d5194=function(_0x4bc1fa){const _0x1cff77='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x446859='',_0x146f31='';for(let _0x8b14f3=0x0,_0x4c8e9f,_0x39ad92,_0x2495e5=0x0;_0x39ad92=_0x4bc1fa['charAt'](_0x2495e5++);~_0x39ad92&&(_0x4c8e9f=_0x8b14f3%0x4?_0x4c8e9f*0x40+_0x39ad92:_0x39ad92,_0x8b14f3++%0x4)?_0x446859+=String['fromCharCode'](0xff&_0x4c8e9f>>(-0x2*_0x8b14f3&0x6)):0x0){_0x39ad92=_0x1cff77['indexOf'](_0x39ad92);}for(let _0x34e5a1=0x0,_0x4c92f0=_0x446859['length'];_0x34e5a1<_0x4c92f0;_0x34e5a1++){_0x146f31+='%'+('00'+_0x446859['charCodeAt'](_0x34e5a1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x146f31);};a0_0x539f['LJTGpi']=_0x4d5194,a0_0x539f['MajSMy']={},a0_0x539f['NRRneM']=!![];}const _0xbf99ca=_0x55820a[0x0],_0xb6552e=_0x52a239+_0xbf99ca,_0x48e915=a0_0x539f['MajSMy'][_0xb6552e];return!_0x48e915?(_0x539fe9=a0_0x539f['LJTGpi'](_0x539fe9),a0_0x539f['MajSMy'][_0xb6552e]=_0x539fe9):_0x539fe9=_0x48e915,_0x539fe9;}function a0_0x5582(){const _0x220e26=['w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','s0fgs0fFuKvrvuvtvf9usu1ft1vu','Bg9JywXOB3n0oJKWoti','zKH5CuK','CMvXDwvZDfrPBwvVDxq','zw5HyMXLza','ChjVy2vZC2LUz1rPBwvZ','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','v0TfBfe','mJiZode1nLzXwureDG','s0fgs0fFsevbuLrcrufux0LovevsvKfm','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','s0fgs0fFu1nm','ig9Uia','y29UBMvJDgLVBLrPBwvVDxq','revcvuC','CgfYC2u','mJrruNHnqwi','DNPhq24','B2zMC2v0','AxnjBML0AwfSAxPPBMC','z3jVDxbjza','y29UC3vTzxiUCMvIywXHBMnPBMC','CgLUvfa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq','wePQt3u','Dhj1zq','mti3mtCXmfzhDeLXsa','AM9PBG','CgfYC2vizwfKzxjZ','s0fgs0fFq0Xjru5ux0Le','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mJuWmda','rg5ryuq','mtCZota4t3bODKHT','Aw5PDgLHBgL6zq','yNjVA2vYCW','C2vLAW','BwfW','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','tK9useLorW','zgvMyxvSDa','Bg9N','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','BgvUz3rO','s0fgs0fFu0fttf9qqvntv09sra','Bwv0CMLJCW','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','mZKWEg1utvLt','AxnsDw5UAw5N','zwfSA00','qNf1B0W','mtaWma','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','BwvZC2fNzxnqCM9JzxnZzwq','C2vZC2LVBLrPBwvVDxq','w0THzMTHq29UC3vTzxjDienHBM5VDcbYzxn1BwuGlsbJB25ZDw1LCIbUB3qGCNvUBMLUzW','r3jurM4','s0fgs0fFru5bqKXfra','mZvOsxz3v1e','rvD4y3C','s0fgs0fFqvvut19dt01nsvq','s0fgs0fFuKvuuLLFrevmqvK','mwr0shbZyW','z2v0q29UzMLN','BNjQDhK','A2fMA2fQCW','BwvZC2fNzxnszwnLAxzLza','y29TBwL0t2zMC2v0CW','AxndB25Uzwn0zwq','ote3mdv0C1bxzMC','C3rVCa','zgzYAvy','BwvZC2fNzuHHBMrSzxi','C3rHCNrdB25ZDw1PBMC','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLyMfSyw5JAw5NlI4U','nJC3odHJq2DhuLu','zxjYB3i','BfLKuvO','ChvZAa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','CMv0CNLbDhrLBxb0CW','Dg9tDhjPBMC','y29UBMvJDgLVBLbYB21PC2u','zw50CMLLCW','y2XVC2u','s0fgs0fFqLjps0vsuW','Bwf4','zw52','C3rHCNruAw1L','mZyYndnkwhjtr2S','y29UBMvJDa','icHNCM91CeLKoIa','AxnqyxvZzwq','tezwzNG','sfnswuy','C3vIC2nYAwjLzfrVCgLJCW','s0fgs0fFuKvuuLLFtufyx0rftefz','zMXVB3i','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','ndK0otKYAw1IzKrK','BM93','BwvZC2fNzxngywLSzwq','C3vIC2nYAwjL','DxvPza','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','DMfSDwu','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','ntaWma','B0fVy0S','BwvZC2fNzq','Dg9mB3DLCKnHC2u','mZaWmda','y2XPzw50swq','y29UC3vTzxi','A2fMA2e','Bg9Ntgv2zwW','ANLdrxa'];a0_0x5582=function(){return _0x220e26;};return a0_0x5582();}function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}function createInstance(){return new KafkaConsumerService();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x2410(_0x542218,_0x5be8c0){_0x542218=_0x542218-0xf1;const _0x2687dd=a0_0x2687();let _0x2410b6=_0x2687dd[_0x542218];if(a0_0x2410['kMFHwh']===undefined){var _0x4ef605=function(_0x50f11d){const _0x7e20ae='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x7c389b='',_0xa91bb8='';for(let _0x102e8e=0x0,_0x45aab5,_0x3546cb,_0x317be8=0x0;_0x3546cb=_0x50f11d['charAt'](_0x317be8++);~_0x3546cb&&(_0x45aab5=_0x102e8e%0x4?_0x45aab5*0x40+_0x3546cb:_0x3546cb,_0x102e8e++%0x4)?_0x7c389b+=String['fromCharCode'](0xff&_0x45aab5>>(-0x2*_0x102e8e&0x6)):0x0){_0x3546cb=_0x7e20ae['indexOf'](_0x3546cb);}for(let _0x1f5a7e=0x0,_0x65dc00=_0x7c389b['length'];_0x1f5a7e<_0x65dc00;_0x1f5a7e++){_0xa91bb8+='%'+('00'+_0x7c389b['charCodeAt'](_0x1f5a7e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa91bb8);};a0_0x2410['hUMybE']=_0x4ef605,a0_0x2410['NTDsCZ']={},a0_0x2410['kMFHwh']=!![];}const _0x1d07d0=_0x2687dd[0x0],_0xf35fa7=_0x542218+_0x1d07d0,_0xdb0d77=a0_0x2410['NTDsCZ'][_0xf35fa7];return!_0xdb0d77?(_0x2410b6=a0_0x2410['hUMybE'](_0x2410b6),a0_0x2410['NTDsCZ'][_0xf35fa7]=_0x2410b6):_0x2410b6=_0xdb0d77,_0x2410b6;}const a0_0x882254=a0_0x2410;function a0_0x2687(){const _0x12eed5=['rMfPBgvKihrVignVBM5Ly3qGDg8Gs2fMA2eGyNjVA2vY','AxnjBML0AwfSAxPPBMC','Dg9WAwnqyxr0zxjU','uejSqvm','icHRzxK6ia','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','Bg9JywXOB3n0oJKWoti','otm1mJeYnvHkv1v5rW','oda2mZLJu1HNqNm','otmXmZG0Ce1Yrxvq','mZeXodaWvvHmu0fx','Dg9vChbLCKnHC2u','y29YCMvSyxrPB25jza','s0fgs0fFq09otKvdveLptL9usu1ft1vu','C2vUza','ru5usvrzx0nsrufuruq','BerrEK4','CgfKu3rHCNq','z2v0u3rHDhvZ','zxjYB3i','zgvMyxvSDa','C291CMnL','y2XVC2u','tvnbCu0','DgfIBgvoyw1L','mZbfy0L3DMm','Dhj1zq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','C3bSAxq','CMvXDwvZDfrPBwvVDxq','A2fMA2e','mtrQBhrIyKe','Dg9mB3DLCKnHC2u','ntKZndG0DNDIwezb','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','ms4W','zfzVvfK','nfzotND1qq','mJm5nde2nujhuvz6zG','yNjVA2vYCW','s0fgs0fFu0fttf9nruniqu5ju00','zw52','ChvIBgLZAev2zw50','yNvPBgruB3bPy05HBwu','sM1hEMS','BwvZC2fNzq','Defmq1K','BhjzvKK','zw5KCg9PBNq','mtaWma','E21VzhvSzx0','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','tK9useLorW','Bg9N','ChvIBgLZAeLUC2vYDa','s0fgs0fFvevoqu5ux0Le','DxvPza','s0fgs0fFve9qsunFuefuvevstG','AxndB25Uzwn0zwq','D2fYBG','s0fgs0fFru5bqKXfra','Dg9WAwm','DezywLu','w0THzMTHxsbdB25Uzwn0Aw9UigzHAwXLzdOG','ChvIBgLZAerLBgv0zq','y29UBMvJDgLVBLbYB21PC2u','uKvtvezpuKDflq','CMvWBgfJzq','z2v0q29UzMLN','ChjVzhvJzxi','Dw5RBM93BG','Aw5PDgLHBgL6zq','Bg9Ntgv2zwW','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','r2zytuq','s0fgs0fFuKvrvuvtvf9usu1ft1vu','zw5HyMXLza','zgLZy29UBMvJDa','ote0ntuWALj5DMzt','z2v0tg9Ntgv2zwW','CMvZDgzVCMDLlq','s0fgs0fFq0Xjru5ux0Le','E2fJDgLVBN0','A2v5rMLLBgq','s0fgs0fFu0fttf9qqvntv09sra'];a0_0x2687=function(){return _0x12eed5;};return a0_0x2687();}(function(_0x41517b,_0x46bf8b){const _0x1e5547=a0_0x2410,_0x48797e=_0x41517b();while(!![]){try{const _0x8ce160=parseInt(_0x1e5547(0x12e))/0x1*(-parseInt(_0x1e5547(0xf6))/0x2)+parseInt(_0x1e5547(0xf7))/0x3+parseInt(_0x1e5547(0x12f))/0x4*(parseInt(_0x1e5547(0x13f))/0x5)+parseInt(_0x1e5547(0xf2))/0x6*(-parseInt(_0x1e5547(0x145))/0x7)+parseInt(_0x1e5547(0x130))/0x8+-parseInt(_0x1e5547(0x12d))/0x9+-parseInt(_0x1e5547(0x11f))/0xa;if(_0x8ce160===_0x46bf8b)break;else _0x48797e['push'](_0x48797e['shift']());}catch(_0x50c650){_0x48797e['push'](_0x48797e['shift']());}}}(a0_0x2687,0xb5be4));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require(a0_0x882254(0x109));class KafkaService{constructor(){const _0x191793=a0_0x882254,_0x127403={'dVoTY':'4|1|2|0|3'},_0x2bde5f=_0x127403[_0x191793(0xf5)][_0x191793(0x142)]('|');let _0x275cda=0x0;while(!![]){switch(_0x2bde5f[_0x275cda++]){case'0':this[_0x191793(0x127)]=![];continue;case'1':this[_0x191793(0x116)]=null;continue;case'2':this[_0x191793(0x10b)]=![];continue;case'3':this[_0x191793(0x112)]=null;continue;case'4':this[_0x191793(0x144)]=null;continue;}break;}}['getConfig'](){const _0x10ae54=a0_0x882254,_0x39ce8f={'rJVlc':'3000','lrYVI':function(_0x17f427,_0x288a8a){return _0x17f427(_0x288a8a);},'tALCY':_0x10ae54(0x11a)};return{'enabled':process[_0x10ae54(0xfa)][_0x10ae54(0x10d)]===_0x10ae54(0x140),'brokers':(process['env']['KAFKA_BROKERS']||_0x10ae54(0x12c))[_0x10ae54(0x142)](','),'clientId':process['env'][_0x10ae54(0x122)]||'restforge-'+(process['env'][_0x10ae54(0x141)]||'default')+'-producer','connectionTimeout':parseInt(process[_0x10ae54(0xfa)][_0x10ae54(0x133)]||_0x39ce8f['rJVlc']),'requestTimeout':_0x39ce8f[_0x10ae54(0x100)](parseInt,process[_0x10ae54(0xfa)][_0x10ae54(0x11c)]||'25000'),'topicPattern':process['env'][_0x10ae54(0x10a)]||_0x39ce8f[_0x10ae54(0xff)],'tenantId':process[_0x10ae54(0xfa)][_0x10ae54(0x108)]||_0x10ae54(0x13a),'retryAttempts':parseInt(process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0x39ce8f[_0x10ae54(0x100)](parseInt,process[_0x10ae54(0xfa)]['KAFKA_RETRY_DELAY']||_0x10ae54(0x102)),'logLevel':process[_0x10ae54(0xfa)]['KAFKA_LOG_LEVEL']||_0x10ae54(0x10c)};}['getLogLevel'](_0xae20d3){const _0x3ccb0c=a0_0x882254,_0x46b381={'nothing':logLevel[_0x3ccb0c(0x105)],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x46b381[_0xae20d3[_0x3ccb0c(0xf1)]()]||logLevel['WARN'];}async[a0_0x882254(0x118)](){const _0x2055c7=a0_0x882254,_0x121346={'MSAqM':'[Kafka]\x20Producer\x20disconnected','GfXMD':_0x2055c7(0x140)},_0x4fc3e9=this['getConfig']();if(!_0x4fc3e9[_0x2055c7(0x11d)])return console['log']('[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'),![];if(this[_0x2055c7(0x10b)])return!![];if(this['isInitializing']&&this['connectionPromise'])return this[_0x2055c7(0x112)];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x4fc100=>{const _0x4b64b5=_0x2055c7;try{let _0xa53de4=undefined;process[_0x4b64b5(0xfa)]['KAFKA_SSL']===_0x121346[_0x4b64b5(0x11b)]&&(_0xa53de4=!![]);let _0x4964c2=undefined;process['env'][_0x4b64b5(0xf9)]&&(_0x4964c2={'mechanism':process[_0x4b64b5(0xfa)][_0x4b64b5(0xf9)],'username':process[_0x4b64b5(0xfa)]['KAFKA_SASL_USERNAME']||'','password':process[_0x4b64b5(0xfa)][_0x4b64b5(0x125)]||''}),this['kafka']=new Kafka({'clientId':_0x4fc3e9['clientId'],'brokers':_0x4fc3e9[_0x4b64b5(0xf8)],'connectionTimeout':_0x4fc3e9['connectionTimeout'],'requestTimeout':_0x4fc3e9[_0x4b64b5(0x143)],'logLevel':this[_0x4b64b5(0x120)](_0x4fc3e9[_0x4b64b5(0x119)]),'ssl':_0xa53de4,'sasl':_0x4964c2,'retry':{'initialRetryTime':_0x4fc3e9['retryDelay'],'retries':_0x4fc3e9['retryAttempts']}}),this['producer']=this[_0x4b64b5(0x144)]['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners['LegacyPartitioner']}),await this[_0x4b64b5(0x116)]['connect'](),this['isConnected']=!![],console[_0x4b64b5(0x106)](_0x4b64b5(0x12b)+_0x4fc3e9[_0x4b64b5(0xf8)]['join'](',\x20')),this[_0x4b64b5(0x116)]['on']('producer.disconnect',()=>{const _0x49f8cb=_0x4b64b5;console['log'](_0x121346[_0x49f8cb(0x13d)]),this[_0x49f8cb(0x10b)]=![];}),_0x4fc100(!![]);}catch(_0x1d152c){console['error'](_0x4b64b5(0x110)+_0x1d152c[_0x4b64b5(0xfe)]),this[_0x4b64b5(0x10b)]=![],_0x4fc100(![]);}finally{this[_0x4b64b5(0x127)]=![];}}),this[_0x2055c7(0x112)];}['formatDateTime'](_0x225297){const _0x35ec33=a0_0x882254,_0xd5315d={'WRUFs':function(_0x31889f,_0x181d0f){return _0x31889f(_0x181d0f);}},_0x10fcd2=_0x225297||new Date(),_0x58271a=_0x10fcd2['getFullYear'](),_0x3cd521=_0xd5315d['WRUFs'](String,_0x10fcd2['getMonth']()+0x1)[_0x35ec33(0x137)](0x2,'0'),_0x190f23=String(_0x10fcd2['getDate']())[_0x35ec33(0x137)](0x2,'0'),_0x1f4b2c=_0xd5315d['WRUFs'](String,_0x10fcd2['getHours']())[_0x35ec33(0x137)](0x2,'0'),_0x47862a=String(_0x10fcd2['getMinutes']())['padStart'](0x2,'0'),_0x12ee20=String(_0x10fcd2['getSeconds']())['padStart'](0x2,'0');return _0x58271a+'-'+_0x3cd521+'-'+_0x190f23+'\x20'+_0x1f4b2c+':'+_0x47862a+':'+_0x12ee20;}['buildTopicName'](_0x9a649a,_0x5f1ca2,_0x2ef44d,_0xb24719=null){const _0x34e122=a0_0x882254,_0x3869d0={'rVTdb':_0x34e122(0x103),'PBlAS':'{endpoint}'};if(_0xb24719)return _0xb24719;const _0x1de3c0=this[_0x34e122(0x115)]()['topicPattern'];return _0x1de3c0[_0x34e122(0x114)](_0x3869d0['rVTdb'],_0x9a649a)[_0x34e122(0x114)](_0x3869d0[_0x34e122(0x129)],_0x5f1ca2)['replace'](_0x34e122(0x123),_0x2ef44d);}['buildEventMessage'](_0x373e66,_0x4f8eb8,_0x3a58c4,_0x93f22f={}){const _0x3f079f=a0_0x882254,_0x5666ab={'JmGzk':function(_0x308deb){return _0x308deb();},'lDQzN':function(_0xe62689){return _0xe62689();},'tFXZU':_0x3f079f(0x117),'hwCcu':'SYSTEM'},_0xbc8c71=new Date(),_0x3940db=this['formatDateTime'](_0xbc8c71),_0x3b066c=_0x93f22f[_0x3f079f(0x132)]||'corr-'+_0x5666ab[_0x3f079f(0xfd)](uuidv7);return{'eventId':'evt-'+_0x5666ab[_0x3f079f(0x136)](uuidv7),'eventType':_0x373e66,'eventTime':_0x3940db,'eventVersion':_0x3f079f(0xf4),'source':_0x3f079f(0x121)+(_0x93f22f['module']||_0x5666ab[_0x3f079f(0x10f)]),'correlationId':_0x3b066c,'newData':_0x3a58c4,'oldData':_0x4f8eb8,'metadata':{'createdBy':_0x93f22f['createdBy']||_0x5666ab['hwCcu'],'createdAt':_0x3940db,'systemId':_0x3f079f(0x113)+(_0x93f22f['module']||'unknown')[_0x3f079f(0x131)](),'tenantId':this['getConfig']()['tenantId'],'endpoint':_0x93f22f[_0x3f079f(0x101)]||null,'tableName':_0x93f22f[_0x3f079f(0x13e)]||null}};}async[a0_0x882254(0xfb)](_0x416494,_0x5f49b8,_0xbf41b5,_0x399dec,_0x5070cf={}){const _0x451979=a0_0x882254,_0x1823cb={'yCNjo':function(_0x11c6ff){return _0x11c6ff();},'bkYwX':function(_0xb011b2,_0x14a271){return _0xb011b2(_0x14a271);}},_0x24bfe4=this[_0x451979(0x115)]();if(!_0x24bfe4['enabled'])return{'success':![],'reason':'Kafka\x20producer\x20is\x20disabled','published':![]};if(!this[_0x451979(0x10b)]){const _0x1ce4db=await this['initialize']();if(!_0x1ce4db)return{'success':![],'reason':_0x451979(0x126),'published':![]};}try{const _0x100d3c=this['buildEventMessage'](_0x5f49b8,_0xbf41b5,_0x399dec,_0x5070cf),_0x33781d=_0x5070cf[_0x451979(0x124)]||'id',_0x20b255=_0x399dec?.[_0x33781d]||_0xbf41b5?.[_0x33781d]||_0x1823cb['yCNjo'](uuidv7),_0x581591=await this['producer'][_0x451979(0x134)]({'topic':_0x416494,'messages':[{'key':_0x1823cb['bkYwX'](String,_0x20b255),'value':JSON['stringify'](_0x100d3c),'headers':{'event-type':_0x5f49b8,'correlation-id':_0x100d3c['correlationId'],'source':_0x100d3c[_0x451979(0x13b)]}}]});return console['log']('[Kafka]\x20Event\x20published\x20to\x20'+_0x416494+':\x20'+_0x5f49b8+_0x451979(0x12a)+_0x20b255+')'),{'success':!![],'correlationId':_0x100d3c[_0x451979(0x132)],'topic':_0x416494,'partition':_0x581591[0x0]?.['partition'],'offset':_0x581591[0x0]?.['baseOffset'],'published':!![]};}catch(_0x318875){return console['error']('[Kafka]\x20Publish\x20error\x20to\x20'+_0x416494+':\x20'+_0x318875['message']),{'success':![],'error':_0x318875[_0x451979(0xfe)],'published':![]};}}async[a0_0x882254(0x107)](_0x269b3e,_0x489abb,_0x503630,_0x4791ed={}){const _0x5cf57d=a0_0x882254,_0x4508ea={'wxlMG':_0x5cf57d(0x135)},_0x3e1487=this['buildTopicName'](_0x269b3e,_0x489abb,'created',_0x4791ed[_0x5cf57d(0x10e)]);return this[_0x5cf57d(0xfb)](_0x3e1487,_0x4508ea['wxlMG'],null,_0x503630,{'module':_0x269b3e,'endpoint':_0x489abb,'keyField':_0x4791ed[_0x5cf57d(0x124)],'tableName':_0x4791ed[_0x5cf57d(0x13e)],'correlationId':_0x4791ed['correlationId']});}async['publishUpdate'](_0x5b56ba,_0x28bcd7,_0x49e700,_0x5ee669,_0x4f8fdc={}){const _0x4e1185=a0_0x882254,_0x25faa4={'cWuer':'updated'},_0x276db0=this['buildTopicName'](_0x5b56ba,_0x28bcd7,_0x25faa4['cWuer'],_0x4f8fdc['topic']);return this[_0x4e1185(0xfb)](_0x276db0,'ENTITY_UPDATED',_0x49e700,_0x5ee669,{'module':_0x5b56ba,'endpoint':_0x28bcd7,'keyField':_0x4f8fdc[_0x4e1185(0x124)],'tableName':_0x4f8fdc[_0x4e1185(0x13e)],'correlationId':_0x4f8fdc['correlationId']});}async[a0_0x882254(0x111)](_0x2991d5,_0xb71953,_0x303117,_0x19d5ac={}){const _0x40561b=a0_0x882254,_0x345810={'gxONY':'deleted'},_0x1b9ddb=this[_0x40561b(0xfc)](_0x2991d5,_0xb71953,_0x345810['gxONY'],_0x19d5ac['topic']);return this[_0x40561b(0xfb)](_0x1b9ddb,'ENTITY_DELETED',_0x303117,null,{'module':_0x2991d5,'endpoint':_0xb71953,'keyField':_0x19d5ac[_0x40561b(0x124)],'tableName':_0x19d5ac['tableName'],'correlationId':_0x19d5ac[_0x40561b(0x132)]});}[a0_0x882254(0x138)](){const _0x3dca73=a0_0x882254,_0x2851ea=this['getConfig']();return{'enabled':_0x2851ea[_0x3dca73(0x11d)],'connected':this['isConnected'],'brokers':_0x2851ea['brokers'],'clientId':_0x2851ea['clientId'],'topicPattern':_0x2851ea[_0x3dca73(0x128)]};}async[a0_0x882254(0x13c)](){const _0x20b234=a0_0x882254,_0x5f158c={'PQstv':_0x20b234(0x104)};if(this[_0x20b234(0x116)]&&this['isConnected'])try{await this['producer'][_0x20b234(0x11e)](),this[_0x20b234(0x10b)]=![],console['log'](_0x5f158c['PQstv']);}catch(_0x2218cc){console[_0x20b234(0x139)](_0x20b234(0xf3)+_0x2218cc['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
1
|
+
function a0_0x5684(_0x35eaf2,_0x4dfaac){_0x35eaf2=_0x35eaf2-0x1df;const _0x4cb49d=a0_0x4cb4();let _0x568472=_0x4cb49d[_0x35eaf2];if(a0_0x5684['FasttF']===undefined){var _0x3aef30=function(_0x5d0b93){const _0x16e2dd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xf93bb9='',_0x211e67='';for(let _0x41cb07=0x0,_0x476051,_0x26f6c3,_0x55ebb0=0x0;_0x26f6c3=_0x5d0b93['charAt'](_0x55ebb0++);~_0x26f6c3&&(_0x476051=_0x41cb07%0x4?_0x476051*0x40+_0x26f6c3:_0x26f6c3,_0x41cb07++%0x4)?_0xf93bb9+=String['fromCharCode'](0xff&_0x476051>>(-0x2*_0x41cb07&0x6)):0x0){_0x26f6c3=_0x16e2dd['indexOf'](_0x26f6c3);}for(let _0xc764f8=0x0,_0xa4119a=_0xf93bb9['length'];_0xc764f8<_0xa4119a;_0xc764f8++){_0x211e67+='%'+('00'+_0xf93bb9['charCodeAt'](_0xc764f8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x211e67);};a0_0x5684['uQWixl']=_0x3aef30,a0_0x5684['HWqcpS']={},a0_0x5684['FasttF']=!![];}const _0x10091b=_0x4cb49d[0x0],_0x4a71af=_0x35eaf2+_0x10091b,_0x540b21=a0_0x5684['HWqcpS'][_0x4a71af];return!_0x540b21?(_0x568472=a0_0x5684['uQWixl'](_0x568472),a0_0x5684['HWqcpS'][_0x4a71af]=_0x568472):_0x568472=_0x540b21,_0x568472;}function a0_0x4cb4(){const _0x354212=['y29UBMvJDgLVBLbYB21PC2u','DgfIBgvoyw1L','mtm1ndq0ntrfyKXODhC','mZy3oda0EfbNqMvA','z2v0tw9UDgG','CMvZDgzVCMDLlq','q3zHCKW','DxvPza','mJC5nZa5ngf4EKfXDW','CMvWBgfJzq','AxndB25Uzwn0zwq','DxbKyxrLza','mZCWuwfyBurg','z2v0u2vJB25KCW','Du5mqwG','s0fgs0fFq09otKvdveLptL9usu1ft1vu','zM9YBwf0rgf0zvrPBwu','A2fMA2e','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','s0fgs0fFru5bqKXfra','y29YCI0','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','ndKYmgP5swzztq','yNjVA2vYCW','rvjst1i','Bg9N','Dg9WAwm','ChjVzhvJzxi','BwvZC2fNzq','nZi1mJmYohnmA2zIwq','Dhj1zq','y2XPzw50swq','uKvtvezpuKDflq','s0fgs0fFuKvrvuvtvf9usu1ft1vu','AM9PBG','Dw5RBM93BG','s0fgs0fFte9hx0XfvKvm','Bw9KDwXL','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','vgXPyu4','z2v0sg91CNm','uwD2yvm','s0fgs0fFq0Xjru5ux0Le','u3fisKG','rMfPBgvKihrVignVBM5Ly3qGDg8Gs2fMA2eGyNjVA2vY','y3jLyxrLza','m21ouLv6EG','BgXAwKS','u1Ltvevn','y3jLyxrLzej5','Dg9vChbLCKnHC2u','zw52','odrKte9JEfa','CgfYDgL0Aw9U','mZaWma','z2v0q29UzMLN','z2v0twLUDxrLCW','y29YCMvSyxrPB25jza','AxnjBML0AwfSAxPPBMC','zw5HyMXLza','Bg9Ntgv2zwW','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','Dg9WAwnqyxr0zxjU','CuHMtKm','nde1otu2vuTyywvZ','mtm5nJi2ugfkuevQ','ru5usvrzx0nsrufuruq','z2v0rgf0zq','s0fgs0fFvevoqu5ux0Le','CMv0CNLezwXHEq','mtaWma','E2vUzhbVAw50Fq','ChvIBgLZAfvWzgf0zq','Aw5PDgLHBgL6zq','CMvXDwvZDfrPBwvVDxq','zgvSzxrLza','A2v5rMLLBgq','yNvPBgruB3bPy05HBwu','C3bSAxq','ChvIBgLZAev2zw50','tg9etva','zw5KCg9PBNq','s0fgs0fFu0fttf9vu0vstKfnrq','wMzcuNK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','w0THzMTHxsblywzRysbWCM9KDwnLCIbPCYbKAxnHyMXLzcbPBIbJB25MAwD1CMf0Aw9U','CgfKu3rHCNq','mZq0nvLrzw9StG','C3rYAw5NAwz5','yNvPBgrfDMvUDe1LC3nHz2u'];a0_0x4cb4=function(){return _0x354212;};return a0_0x4cb4();}const a0_0x5f3924=a0_0x5684;(function(_0x2f07db,_0x50d4e7){const _0x5d4886=a0_0x5684,_0x22475d=_0x2f07db();while(!![]){try{const _0x2d45b8=-parseInt(_0x5d4886(0x1f1))/0x1+parseInt(_0x5d4886(0x1f6))/0x2*(-parseInt(_0x5d4886(0x21c))/0x3)+parseInt(_0x5d4886(0x204))/0x4*(parseInt(_0x5d4886(0x1eb))/0x5)+-parseInt(_0x5d4886(0x22e))/0x6*(-parseInt(_0x5d4886(0x222))/0x7)+-parseInt(_0x5d4886(0x20b))/0x8+-parseInt(_0x5d4886(0x22f))/0x9*(-parseInt(_0x5d4886(0x1fa))/0xa)+parseInt(_0x5d4886(0x1f0))/0xb;if(_0x2d45b8===_0x50d4e7)break;else _0x22475d['push'](_0x22475d['shift']());}catch(_0x11db43){_0x22475d['push'](_0x22475d['shift']());}}}(a0_0x4cb4,0xc632e));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require(a0_0x5f3924(0x1f5));class KafkaService{constructor(){const _0x2c8b35=a0_0x5f3924,_0x246547={'SqHJH':'1|4|3|2|0'},_0xb63d91=_0x246547[_0x2c8b35(0x219)][_0x2c8b35(0x1e2)]('|');let _0x336075=0x0;while(!![]){switch(_0xb63d91[_0x336075++]){case'0':this[_0x2c8b35(0x1ee)]=null;continue;case'1':this[_0x2c8b35(0x1ff)]=null;continue;case'2':this['isInitializing']=![];continue;case'3':this['isConnected']=![];continue;case'4':this[_0x2c8b35(0x209)]=null;continue;}break;}}[a0_0x5f3924(0x225)](){const _0x4a6cf4=a0_0x5f3924,_0x138d74={'cZQSx':function(_0x440f2c,_0x454e9d){return _0x440f2c===_0x454e9d;},'dqrpA':'true','qHfNC':'localhost:9092','ZfBRy':'default','TliaN':_0x4a6cf4(0x224),'VkfjS':function(_0x105d28,_0x435d7c){return _0x105d28(_0x435d7c);},'watZZ':'25000','uNLAh':'{module}.{endpoint}.events'};return{'enabled':_0x138d74['cZQSx'](process['env'][_0x4a6cf4(0x201)],_0x138d74['dqrpA']),'brokers':(process['env']['KAFKA_BROKERS']||_0x138d74[_0x4a6cf4(0x22d)])['split'](','),'clientId':process[_0x4a6cf4(0x221)][_0x4a6cf4(0x218)]||_0x4a6cf4(0x1f3)+(process[_0x4a6cf4(0x221)][_0x4a6cf4(0x1e8)]||_0x138d74[_0x4a6cf4(0x1e7)])+'-producer','connectionTimeout':parseInt(process['env'][_0x4a6cf4(0x1fd)]||_0x138d74[_0x4a6cf4(0x215)]),'requestTimeout':_0x138d74['VkfjS'](parseInt,process['env'][_0x4a6cf4(0x20f)]||_0x138d74['watZZ']),'topicPattern':process['env']['KAFKA_TOPIC_PATTERN']||_0x138d74[_0x4a6cf4(0x1fc)],'tenantId':process['env'][_0x4a6cf4(0x232)]||'default','retryAttempts':_0x138d74['VkfjS'](parseInt,process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process[_0x4a6cf4(0x221)]['KAFKA_RETRY_DELAY']||_0x4a6cf4(0x234)),'logLevel':process['env'][_0x4a6cf4(0x212)]||'warn'};}['getLogLevel'](_0x29fc90){const _0x2a2842=a0_0x5f3924,_0x2f4cf1={'nothing':logLevel['NOTHING'],'error':logLevel[_0x2a2842(0x206)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x2f4cf1[_0x29fc90['toLowerCase']()]||logLevel['WARN'];}async[a0_0x5f3924(0x237)](){const _0x26f56f=a0_0x5f3924,_0x325d52={'ShDZc':function(_0x120d0f,_0x285268){return _0x120d0f(_0x285268);},'llZZK':function(_0x4884fb,_0x4c2f85){return _0x4884fb(_0x4c2f85);}},_0x126b64=this['getConfig']();if(!_0x126b64[_0x26f56f(0x229)])return console[_0x26f56f(0x207)](_0x26f56f(0x1e9)),![];if(this['isConnected'])return!![];if(this[_0x26f56f(0x228)]&&this[_0x26f56f(0x1ee)])return this['connectionPromise'];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x26c554=>{const _0x193874=_0x26f56f;try{let _0x5b84cb=undefined;process[_0x193874(0x221)]['KAFKA_SSL']===_0x193874(0x20c)&&(_0x5b84cb=!![]);let _0x191555=undefined;process['env']['KAFKA_SASL_MECHANISM']&&(_0x191555={'mechanism':process[_0x193874(0x221)]['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x193874(0x1e6)]||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this[_0x193874(0x1ff)]=new Kafka({'clientId':_0x126b64[_0x193874(0x20d)],'brokers':_0x126b64['brokers'],'connectionTimeout':_0x126b64['connectionTimeout'],'requestTimeout':_0x126b64[_0x193874(0x238)],'logLevel':this['getLogLevel'](_0x126b64[_0x193874(0x22a)]),'ssl':_0x5b84cb,'sasl':_0x191555,'retry':{'initialRetryTime':_0x126b64[_0x193874(0x233)],'retries':_0x126b64['retryAttempts']}}),this['producer']=this['kafka']['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners['LegacyPartitioner']}),await this['producer']['connect'](),this[_0x193874(0x1f8)]=!![],console['log']('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x126b64['brokers'][_0x193874(0x210)](',\x20')),this['producer']['on']('producer.disconnect',()=>{const _0x2db1c7=_0x193874;console[_0x2db1c7(0x207)](_0x2db1c7(0x200)),this['isConnected']=![];}),_0x325d52['ShDZc'](_0x26c554,!![]);}catch(_0x251df2){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x251df2['message']),this['isConnected']=![],_0x325d52[_0x193874(0x21d)](_0x26c554,![]);}finally{this['isInitializing']=![];}}),this['connectionPromise'];}[a0_0x5f3924(0x1fe)](_0x9804a7){const _0x2a8c2a=a0_0x5f3924,_0x5a8bca={'CvarL':function(_0x1743dd,_0x1afc1e){return _0x1743dd(_0x1afc1e);},'mLzKD':function(_0x1b34a0,_0x2da3ed){return _0x1b34a0+_0x2da3ed;},'GRwJe':function(_0x359ba3,_0x1d9036){return _0x359ba3(_0x1d9036);}},_0x44216e=_0x9804a7||new Date(),_0x4cf536=_0x44216e['getFullYear'](),_0x11cb70=_0x5a8bca[_0x2a8c2a(0x1f4)](String,_0x5a8bca['mLzKD'](_0x44216e[_0x2a8c2a(0x1f2)](),0x1))['padStart'](0x2,'0'),_0x3e8d65=_0x5a8bca['GRwJe'](String,_0x44216e[_0x2a8c2a(0x231)]())['padStart'](0x2,'0'),_0x39dbd6=String(_0x44216e[_0x2a8c2a(0x216)]())['padStart'](0x2,'0'),_0x8129b3=String(_0x44216e[_0x2a8c2a(0x226)]())['padStart'](0x2,'0'),_0x6bf910=String(_0x44216e[_0x2a8c2a(0x1fb)]())[_0x2a8c2a(0x1ea)](0x2,'0');return _0x4cf536+'-'+_0x11cb70+'-'+_0x3e8d65+'\x20'+_0x39dbd6+':'+_0x8129b3+':'+_0x6bf910;}[a0_0x5f3924(0x1e1)](_0x56c2b5,_0x25dcc3,_0x24bd4d,_0x334b98=null){const _0x3b74d0=a0_0x5f3924;if(_0x334b98)return _0x334b98;const _0x4121e9=this['getConfig']()['topicPattern'];return _0x4121e9['replace']('{module}',_0x56c2b5)['replace'](_0x3b74d0(0x235),_0x25dcc3)[_0x3b74d0(0x1f7)]('{action}',_0x24bd4d);}['buildEventMessage'](_0xe6e36d,_0x25a586,_0x59d6d7,_0x4ccabf={}){const _0x4cb6ae=a0_0x5f3924,_0x54ca0c={'jWsQj':function(_0x16739a){return _0x16739a();},'UNDuz':'1.0','FgIVl':_0x4cb6ae(0x211)},_0x4b681d=new Date(),_0x5d607b=this[_0x4cb6ae(0x1fe)](_0x4b681d),_0xbf3ce4=_0x4ccabf[_0x4cb6ae(0x227)]||_0x4cb6ae(0x202)+_0x54ca0c['jWsQj'](uuidv7);return{'eventId':'evt-'+uuidv7(),'eventType':_0xe6e36d,'eventTime':_0x5d607b,'eventVersion':_0x54ca0c['UNDuz'],'source':'restforge-'+(_0x4ccabf[_0x4cb6ae(0x213)]||_0x4cb6ae(0x211)),'correlationId':_0xbf3ce4,'newData':_0x59d6d7,'oldData':_0x25a586,'metadata':{'createdBy':_0x4ccabf[_0x4cb6ae(0x21f)]||_0x4cb6ae(0x21e),'createdAt':_0x5d607b,'systemId':_0x4cb6ae(0x20e)+(_0x4ccabf[_0x4cb6ae(0x213)]||_0x54ca0c['FgIVl'])[_0x4cb6ae(0x220)](),'tenantId':this['getConfig']()['tenantId'],'endpoint':_0x4ccabf[_0x4cb6ae(0x1e5)]||null,'tableName':_0x4ccabf[_0x4cb6ae(0x1ef)]||null}};}async['publishEvent'](_0x23ccc2,_0x40d9cb,_0x233a68,_0x284273,_0x9eb39={}){const _0x31d610=a0_0x5f3924,_0xc5a62f={'LoDMP':_0x31d610(0x22b)},_0x5f000b=this['getConfig']();if(!_0x5f000b['enabled'])return{'success':![],'reason':_0xc5a62f[_0x31d610(0x1e4)],'published':![]};if(!this['isConnected']){const _0x3be3cf=await this['initialize']();if(!_0x3be3cf)return{'success':![],'reason':_0x31d610(0x21a),'published':![]};}try{const _0x826e74=this[_0x31d610(0x1ed)](_0x40d9cb,_0x233a68,_0x284273,_0x9eb39),_0x17a3a3=_0x9eb39['keyField']||'id',_0x22dbea=_0x284273?.[_0x17a3a3]||_0x233a68?.[_0x17a3a3]||uuidv7(),_0x3ee28f=await this['producer']['send']({'topic':_0x23ccc2,'messages':[{'key':String(_0x22dbea),'value':JSON[_0x31d610(0x1ec)](_0x826e74),'headers':{'event-type':_0x40d9cb,'correlation-id':_0x826e74[_0x31d610(0x227)],'source':_0x826e74['source']}}]});return console[_0x31d610(0x207)]('[Kafka]\x20Event\x20published\x20to\x20'+_0x23ccc2+':\x20'+_0x40d9cb+'\x20(key:\x20'+_0x22dbea+')'),{'success':!![],'correlationId':_0x826e74['correlationId'],'topic':_0x23ccc2,'partition':_0x3ee28f[0x0]?.[_0x31d610(0x223)],'offset':_0x3ee28f[0x0]?.['baseOffset'],'published':!![]};}catch(_0x499da3){return console['error']('[Kafka]\x20Publish\x20error\x20to\x20'+_0x23ccc2+':\x20'+_0x499da3[_0x31d610(0x20a)]),{'success':![],'error':_0x499da3['message'],'published':![]};}}async['publishInsert'](_0x594297,_0xf6c0ec,_0x2f2290,_0x2d111f={}){const _0x18c42a=a0_0x5f3924,_0x3e0fe2=this['buildTopicName'](_0x594297,_0xf6c0ec,_0x18c42a(0x21b),_0x2d111f['topic']);return this[_0x18c42a(0x1e3)](_0x3e0fe2,_0x18c42a(0x230),null,_0x2f2290,{'module':_0x594297,'endpoint':_0xf6c0ec,'keyField':_0x2d111f[_0x18c42a(0x1e0)],'tableName':_0x2d111f['tableName'],'correlationId':_0x2d111f[_0x18c42a(0x227)]});}async[a0_0x5f3924(0x236)](_0x19e292,_0x3e03f5,_0x2d0572,_0x557a88,_0x312d59={}){const _0x4f238=a0_0x5f3924,_0xa13064={'QgvaS':'ENTITY_UPDATED'},_0x2c10bf=this['buildTopicName'](_0x19e292,_0x3e03f5,_0x4f238(0x1f9),_0x312d59['topic']);return this['publishEvent'](_0x2c10bf,_0xa13064[_0x4f238(0x217)],_0x2d0572,_0x557a88,{'module':_0x19e292,'endpoint':_0x3e03f5,'keyField':_0x312d59[_0x4f238(0x1e0)],'tableName':_0x312d59[_0x4f238(0x1ef)],'correlationId':_0x312d59[_0x4f238(0x227)]});}async['publishDelete'](_0x41a575,_0x2c30de,_0xb1d6dd,_0x5e9937={}){const _0x63547d=a0_0x5f3924,_0x39af1c=this[_0x63547d(0x1e1)](_0x41a575,_0x2c30de,_0x63547d(0x1df),_0x5e9937[_0x63547d(0x208)]);return this[_0x63547d(0x1e3)](_0x39af1c,'ENTITY_DELETED',_0xb1d6dd,null,{'module':_0x41a575,'endpoint':_0x2c30de,'keyField':_0x5e9937[_0x63547d(0x1e0)],'tableName':_0x5e9937['tableName'],'correlationId':_0x5e9937[_0x63547d(0x227)]});}['getStatus'](){const _0x32b90e=a0_0x5f3924,_0x3e32c4=this['getConfig']();return{'enabled':_0x3e32c4['enabled'],'connected':this[_0x32b90e(0x1f8)],'brokers':_0x3e32c4[_0x32b90e(0x205)],'clientId':_0x3e32c4[_0x32b90e(0x20d)],'topicPattern':_0x3e32c4[_0x32b90e(0x22c)]};}async['close'](){const _0x38af06=a0_0x5f3924;if(this[_0x38af06(0x209)]&&this[_0x38af06(0x1f8)])try{await this['producer']['disconnect'](),this['isConnected']=![],console['log'](_0x38af06(0x203));}catch(_0x482bdb){console['error'](_0x38af06(0x214)+_0x482bdb[_0x38af06(0x20a)]);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x3420d9=a0_0x2381;(function(_0x5200c0,_0x288c15){const _0x1a6e01=a0_0x2381,_0x12d9e9=_0x5200c0();while(!![]){try{const _0x5c3d51=-parseInt(_0x1a6e01(0xb5))/0x1*(parseInt(_0x1a6e01(0xef))/0x2)+parseInt(_0x1a6e01(0x102))/0x3*(parseInt(_0x1a6e01(0xc0))/0x4)+parseInt(_0x1a6e01(0xee))/0x5*(-parseInt(_0x1a6e01(0xc6))/0x6)+parseInt(_0x1a6e01(0xfc))/0x7*(parseInt(_0x1a6e01(0x107))/0x8)+parseInt(_0x1a6e01(0xd7))/0x9+-parseInt(_0x1a6e01(0xce))/0xa+parseInt(_0x1a6e01(0x103))/0xb;if(_0x5c3d51===_0x288c15)break;else _0x12d9e9['push'](_0x12d9e9['shift']());}catch(_0x3a98c9){_0x12d9e9['push'](_0x12d9e9['shift']());}}}(a0_0x27eb,0x85182));function a0_0x2381(_0x5bc267,_0x23a37e){_0x5bc267=_0x5bc267-0xa8;const _0x27eba2=a0_0x27eb();let _0x238119=_0x27eba2[_0x5bc267];if(a0_0x2381['mHpYKj']===undefined){var _0x3af705=function(_0x40caf3){const _0x10eb8e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a1f2d='',_0x3f74ef='';for(let _0xa1b2c6=0x0,_0x6c857b,_0x68f6df,_0x4b94f5=0x0;_0x68f6df=_0x40caf3['charAt'](_0x4b94f5++);~_0x68f6df&&(_0x6c857b=_0xa1b2c6%0x4?_0x6c857b*0x40+_0x68f6df:_0x68f6df,_0xa1b2c6++%0x4)?_0x3a1f2d+=String['fromCharCode'](0xff&_0x6c857b>>(-0x2*_0xa1b2c6&0x6)):0x0){_0x68f6df=_0x10eb8e['indexOf'](_0x68f6df);}for(let _0x3ec28f=0x0,_0x3804a3=_0x3a1f2d['length'];_0x3ec28f<_0x3804a3;_0x3ec28f++){_0x3f74ef+='%'+('00'+_0x3a1f2d['charCodeAt'](_0x3ec28f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3f74ef);};a0_0x2381['RAmfPP']=_0x3af705,a0_0x2381['OChtvF']={},a0_0x2381['mHpYKj']=!![];}const _0x2de351=_0x27eba2[0x0],_0x1a6ea6=_0x5bc267+_0x2de351,_0x40467e=a0_0x2381['OChtvF'][_0x1a6ea6];return!_0x40467e?(_0x238119=a0_0x2381['RAmfPP'](_0x238119),a0_0x2381['OChtvF'][_0x1a6ea6]=_0x238119):_0x238119=_0x40467e,_0x238119;}function a0_0x27eb(){const _0x194292=['zw52','v0Hlsfy','zxjYB3i','y2XLyxjdywnOzq','AeTTtge','s0z1rNq','uKLTDLi','zxHPC3rZu3LUyW','CgXHDgzVCM1dB25MAwC','yM50uxy','otu0mtG1zhn5DNbt','mKTlt2HtrG','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','zNvUy3rPB24','q29UBMvJDgLVBIb0Aw1LB3v0','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','tLjgDeu','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','C05fwxO','u3vIC2nYAwjLieTLEtOG','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUigrPC2nVBM5Ly3qOkq','AxnfCNjVCLjLBgf0zwq','tvnivujFq09ntvvosunbveLptL9uwvbf','rxjYB3iGBg9HzgLUzYbnzxnZywDLshvIifnesZOG','otfiuLzdEgq','q2HHBM5LBcbuyxjNzxq6ia','u09OCLm','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','Bg9N','ruPxtey','ovDgrgzzrW','nZqXmJyZnMLkDxP4EG','v2fRDhuGsw5PC2LHBgLZyxnPoIa','yNjVywrJyxn0','4PQG77IpievYCM9YoIa','ota5nJHAC0vhB0G','vgLKywSGzgLRzxrHAhvP','CMvZDgzVCMDL','CMvZB2X2zq','BLrIrKW','venTsuS','BKLgB1C','D2vIC29JA2v0','A2HAChm','y2XVC2u','sKvJC0O','v0rVvNa','BwvZC2fNzq','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','nZCXntaXy0TfDxnr','igrPDgvYAw1Hig9SzwGG','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','BwvZC2fNzs1Zzw50','ChvIBgLZAeTLEq','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','tw9KztOGs29UzwTZAsboEwf0yq','tvnivujFufvcteLtsf9lrvK','ksbWywrHia','vw5RBM93BIbLCNjVCG','rgTgquu','mtmYmtiWofj3qMvAzG','Dg9WAwm','Dhj1zq','y29TBxvUAwnHDgLVBLr5Cgu','y2HHBM5LBa','vw5RBM93BG','mtjnBNzmvKm','zgLZy29UBMvJDgvK','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','y29UzMLN','D1HOq2W','BhPVBxi','uhvIBgLZAcblzxK6ia','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','mJy2mJuYmfrxAvPYyG','y2f0zwDVCNK','CMvHC29U','zgLZy29UBMvJDa','vgLKywSGzgfWyxqGBwvUzw11A2fUig1LDg9Kzsb1BNr1AYbTzw51DhvWigTVBMvRC2KGtwvZC2fNzuH1yG','sxzPtKy','y29UBMvJDgvK','vM54Egm','Dg9mB2nHBgvuAw1Lu3rYAw5N','mtm2nZC4ngrOCNnfEG','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','q05tDNC','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','CMvJzwL2zxjjBMzV','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','qMThB0m','C29JA2v0','Dg9ju09tDhjPBMC','uM9MugS','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','CMvXDwvZDeLK'];a0_0x27eb=function(){return _0x194292;};return a0_0x27eb();}const dotenv=require('dotenv'),path=require('path'),fs=require('fs'),{v7:uuidv7}=require('uuid');dotenv[a0_0x3420d9(0xc9)]();let MessageHub;try{const messagehubPath=path[a0_0x3420d9(0xa9)](__dirname,a0_0x3420d9(0xc8));if(fs[a0_0x3420d9(0xeb)](messagehubPath))MessageHub=require(messagehubPath),console['log']('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x42cd5e){console[a0_0x3420d9(0xe6)](a0_0x3420d9(0xfb)+a0_0x42cd5e['message']);throw a0_0x42cd5e;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x1af556){const _0x2a8ba0=a0_0x3420d9,_0xa8620a=new Date()[_0x2a8ba0(0xdf)]();console[_0x2a8ba0(0x100)]('['+_0xa8620a+']\x20'+_0x1af556);}async function initMessageHub(){const _0x14f09c=a0_0x3420d9,_0x57cfda={'tILKn':_0x14f09c(0xd4),'hKmLa':_0x14f09c(0xc7),'JEcsJ':function(_0x16d694,_0x749da9){return _0x16d694===_0x749da9;},'wNhsQ':_0x14f09c(0xe6),'IviNF':_0x14f09c(0xbe),'SOhrS':'message-received','DkFAE':function(_0x2d59b7,_0x384099){return _0x2d59b7(_0x384099);},'BkGoC':'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======','vACen':_0x14f09c(0xbb),'WHKHV':'default','sNEYz':_0x14f09c(0x105),'TVYbQ':function(_0x2f7434,_0x2f40f9){return _0x2f7434===_0x2f40f9;},'XGuji':_0x14f09c(0xad),'naZvS':'localhost','dZspI':'======\x20INFORMASI\x20CLIENT\x20MESSAGEHUB\x20======','NuIlS':function(_0x123a1b,_0x151389){return _0x123a1b(_0x151389);},'TCmIK':function(_0x4dc41f,_0x484cd7){return _0x4dc41f(_0x484cd7);},'WUoqp':'Error\x20inisialisasi\x20MessageHub:','WDoVp':_0x14f09c(0xda)};if(messagehub&&isConnected)return log(_0x57cfda[_0x14f09c(0xb1)]),!![];if(connectionPromise)return _0x57cfda[_0x14f09c(0xab)](log,_0x14f09c(0xd8)),connectionPromise;return connectionPromise=new Promise(async(_0x165ffd,_0x3c524d)=>{const _0x1caae5=_0x14f09c,_0x7243a1={'RImvR':_0x57cfda['tILKn'],'RofPk':function(_0x501838,_0x1d3a8b){return _0x501838(_0x1d3a8b);},'wquME':_0x57cfda[_0x1caae5(0xe8)],'nIFoW':_0x1caae5(0x108),'OzbVj':function(_0x417a6c,_0x3cf99e){return _0x417a6c(_0x3cf99e);},'IibXm':function(_0x2c6aeb,_0x2aa6ec){const _0x178884=_0x1caae5;return _0x57cfda[_0x178884(0xb0)](_0x2c6aeb,_0x2aa6ec);},'khZps':_0x57cfda['wNhsQ'],'PlZGu':_0x57cfda[_0x1caae5(0xd3)],'KFuFt':function(_0x559762,_0x481e29){return _0x559762(_0x481e29);},'GlCuq':_0x57cfda[_0x1caae5(0xfe)]};try{_0x57cfda['DkFAE'](log,_0x57cfda[_0x1caae5(0xdd)]),_0x57cfda['DkFAE'](log,_0x1caae5(0x104)+new Date()['toLocaleString']()),_0x57cfda[_0x1caae5(0xbf)](log,_0x57cfda['vACen']);const _0x316a9b={'publishKey':process['env'][_0x1caae5(0xbc)],'subscribeKey':process[_0x1caae5(0xe4)]['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x1caae5(0xe4)]['MSHUB_USER_ID']||'restforge-'+(process['env']['RESTFORGE_PROJECT_NAME']||_0x57cfda[_0x1caae5(0xe5)])+'-'+process['pid'],'communicationType':process['env'][_0x1caae5(0xfa)]||_0x57cfda[_0x1caae5(0xf6)],'autoAcknowledge':process[_0x1caae5(0xe4)]['MSHUB_AUTO_ACKNOWLEDGE']===_0x1caae5(0xc2),'acknowledgeMessages':_0x57cfda['TVYbQ'](process[_0x1caae5(0xe4)][_0x1caae5(0xb7)],_0x1caae5(0xc2)),'platform':{'type':process['env'][_0x1caae5(0xfa)]||_0x57cfda['XGuji'],'host':process[_0x1caae5(0xe4)]['MSHUB_HOST']||_0x57cfda['naZvS'],'api_port':_0x57cfda['DkFAE'](parseInt,process[_0x1caae5(0xe4)]['MSHUB_API_PORT']||0xdf8),'service_port':_0x57cfda[_0x1caae5(0xbf)](parseInt,process['env']['MSHUB_SERVICE_PORT']||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x316a9b),log(_0x57cfda['dZspI']),_0x57cfda['NuIlS'](log,'Client\x20ID/UserID:\x20'+messagehub['userId']),_0x57cfda['TCmIK'](log,_0x1caae5(0xcc)+messagehub[_0x1caae5(0xb9)]),log(_0x1caae5(0xf7)+messagehub['subscribeKey']),_0x57cfda['DkFAE'](log,'Tipe\x20Komunikasi:\x20'+messagehub[_0x1caae5(0xc3)]),log('Konfigurasi\x20Platform:\x20'+JSON['stringify'](messagehub[_0x1caae5(0xec)])),log(_0x1caae5(0xb3)),messagehub['addListener']({'status':function(_0xc45cf1){const _0x1a4766=_0x1caae5;log('Status\x20Listener:\x20'+_0xc45cf1[_0x1a4766(0xcf)]);if(_0xc45cf1['category']===_0x7243a1[_0x1a4766(0xea)])_0x7243a1[_0x1a4766(0xe0)](log,'Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(_0x7243a1[_0x1a4766(0xe0)](clearTimeout,timeoutHandler),timeoutHandler=null),_0x165ffd(!![]);else{if(_0xc45cf1['category']===_0x7243a1['wquME']){const _0x477b19=_0xc45cf1[_0x1a4766(0xf9)]===!![];!_0x477b19&&(log(_0x1a4766(0xf5)+(_0xc45cf1[_0x1a4766(0xd0)]||_0x7243a1[_0x1a4766(0xac)])),isConnected=![],connectionPromise&&(_0x7243a1['OzbVj'](_0x3c524d,new Error('Koneksi\x20terputus:\x20'+(_0xc45cf1[_0x1a4766(0xd0)]||_0x7243a1[_0x1a4766(0xac)]))),connectionPromise=null));}else{if(_0x7243a1['IibXm'](_0xc45cf1['category'],_0x7243a1[_0x1a4766(0xae)])){let _0x161e01=_0xc45cf1['errorDetail']||_0xc45cf1[_0x1a4766(0xe6)]||_0x7243a1['PlZGu'];log(_0x1a4766(0x106)+_0x161e01),isConnected=![],connectionPromise&&(_0x7243a1['RofPk'](_0x3c524d,new Error(_0x161e01)),connectionPromise=null);}else{if(_0xc45cf1['category']===_0x1a4766(0xb8))_0x7243a1[_0x1a4766(0xe9)](log,'📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0xc45cf1['requestId']);else{if(_0xc45cf1[_0x1a4766(0xcf)]===_0x7243a1['GlCuq']){const _0x479e0a=_0xc45cf1['receiverInfo']?.['name']||_0x1a4766(0xc5),_0x2c6f0a=_0xc45cf1['receiverInfo']?.['id']||_0xc45cf1['receiverId'],_0x360b4b=new Date(_0xc45cf1[_0x1a4766(0xdb)]?.['receivedAt']||_0xc45cf1['receivedAt']||new Date())[_0x1a4766(0xd6)]();log('📩\x20Konfirmasi:\x20Pesan\x20'+_0xc45cf1[_0x1a4766(0xe3)]+_0x1a4766(0xb6)+_0x479e0a+'\x20('+_0x2c6f0a+_0x1a4766(0xbd)+_0x360b4b+'.\x20Total\x20konfirmasi:\x20'+(_0xc45cf1['confirmationCount']||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x4bdb36=_0x1caae5;!isConnected&&connectionPromise&&(_0x7243a1['RofPk'](log,_0x4bdb36(0xf0)),_0x7243a1['OzbVj'](_0x3c524d,new Error(_0x4bdb36(0xf2))),connectionPromise=null);},0x2710);}catch(_0x1e02f8){log(_0x1caae5(0xdc)+_0x1e02f8['message']),console['error'](_0x57cfda['WUoqp'],_0x1e02f8),connectionPromise=null,_0x3c524d(_0x1e02f8);}}),connectionPromise;}async function publishMessage(_0x28c6a7,_0x3d1302,_0x334bb3,_0x439421={}){const _0x302d14=a0_0x3420d9,_0x50bbce={'bntQv':'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======','Vnxxc':function(_0x3e1fe1,_0x3ec235){return _0x3e1fe1(_0x3ec235);},'BZxZk':function(_0x37bca3,_0x42f1b3){return _0x37bca3(_0x42f1b3);},'CNSvw':function(_0x46d7e0,_0x1cf266){return _0x46d7e0(_0x1cf266);},'uLKxz':_0x302d14(0xcd),'kNnyR':'Mengirim\x20pesan\x20ke\x20server...','NRFtE':_0x302d14(0xff),'sTXpk':_0x302d14(0xe1)};try{!isConnected&&await initMessageHub();const _0x4880be=messagehub[_0x302d14(0xc4)](_0x28c6a7);log(_0x50bbce[_0x302d14(0xed)]),_0x50bbce['Vnxxc'](log,_0x302d14(0xfd)+_0x4880be[_0x302d14(0xc1)]),_0x50bbce['BZxZk'](log,'Message\x20Type:\x20'+_0x3d1302),_0x50bbce[_0x302d14(0xd9)](log,_0x50bbce['uLKxz']);const _0x2c4321={'requireAck':_0x439421['requireAck']!==undefined?_0x439421['requireAck']:![],'clearCache':_0x439421[_0x302d14(0xe7)]!==undefined?_0x439421['clearCache']:!![],'senderId':messagehub[_0x302d14(0xde)]?messagehub[_0x302d14(0xde)]['id']:_0x302d14(0xa8)};log(_0x50bbce['kNnyR']);const _0x2118c7={'type':_0x3d1302,'content':_0x334bb3},_0x2f7caa=await _0x4880be['publish'](_0x2118c7,_0x2c4321);return _0x50bbce[_0x302d14(0xd5)](log,_0x302d14(0xb4)+_0x28c6a7),{'success':!![],'requestId':_0x2f7caa['requestId'],'topic':_0x28c6a7,'message':_0x50bbce[_0x302d14(0xf4)]};}catch(_0x3b7bf5){return log(_0x302d14(0xf3)+_0x3b7bf5[_0x302d14(0xb2)]),{'success':![],'error':_0x3b7bf5['message'],'topic':_0x28c6a7,'message':_0x50bbce['sTXpk']};}}async function closeConnection(){const _0x50ad3c=a0_0x3420d9,_0x270c1d={'wXhCl':function(_0x8f71be,_0x214ac4){return _0x8f71be===_0x214ac4;},'lzomr':_0x50ad3c(0xf1),'EJWLF':_0x50ad3c(0xe2),'uwfrH':_0x50ad3c(0xba),'nTbFL':function(_0x3dc1c9,_0x5cf158){return _0x3dc1c9(_0x5cf158);}};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(_0x270c1d[_0x50ad3c(0xca)](typeof messagehub['disconnect'],'function'))await messagehub['disconnect'](),log(_0x50ad3c(0xf8));else{if(typeof messagehub['close']===_0x270c1d[_0x50ad3c(0xcb)])await messagehub[_0x50ad3c(0xaf)](),log(_0x270c1d[_0x50ad3c(0x101)]);else messagehub[_0x50ad3c(0xde)]&&typeof messagehub['socket'][_0x50ad3c(0xd1)]===_0x50ad3c(0xf1)?(messagehub['socket'][_0x50ad3c(0xd1)](),log(_0x270c1d['uwfrH'])):log(_0x50ad3c(0xd2));}isConnected=![],connectionPromise=null;}catch(_0x101b67){_0x270c1d[_0x50ad3c(0xaa)](log,'Error\x20saat\x20menutup\x20koneksi:\x20'+_0x101b67[_0x50ad3c(0xb2)]);}}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|
|
1
|
+
const a0_0xc25d4c=a0_0x4a4e;(function(_0x52c4be,_0x2eb93e){const _0x22a5b2=a0_0x4a4e,_0x111aee=_0x52c4be();while(!![]){try{const _0x335727=parseInt(_0x22a5b2(0x1cf))/0x1*(-parseInt(_0x22a5b2(0x1b0))/0x2)+-parseInt(_0x22a5b2(0x1e5))/0x3+-parseInt(_0x22a5b2(0x1e3))/0x4+-parseInt(_0x22a5b2(0x1d9))/0x5*(parseInt(_0x22a5b2(0x1db))/0x6)+-parseInt(_0x22a5b2(0x1c4))/0x7*(parseInt(_0x22a5b2(0x1cb))/0x8)+-parseInt(_0x22a5b2(0x20a))/0x9*(-parseInt(_0x22a5b2(0x200))/0xa)+parseInt(_0x22a5b2(0x1c7))/0xb;if(_0x335727===_0x2eb93e)break;else _0x111aee['push'](_0x111aee['shift']());}catch(_0x4a0b00){_0x111aee['push'](_0x111aee['shift']());}}}(a0_0x570c,0x8ba85));const dotenv=require(a0_0xc25d4c(0x1f3)),path=require('path'),fs=require('fs'),{v7:uuidv7}=require(a0_0xc25d4c(0x1ca));dotenv['config']();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,'../../js/messagehub.js');if(fs[a0_0xc25d4c(0x1dd)](messagehubPath))MessageHub=require(messagehubPath),console[a0_0xc25d4c(0x1de)]('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error(a0_0xc25d4c(0x204)+messagehubPath);}catch(a0_0x17b764){console['error']('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x17b764[a0_0xc25d4c(0x1ed)]);throw a0_0x17b764;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function a0_0x4a4e(_0x77b349,_0x2de313){_0x77b349=_0x77b349-0x1ad;const _0x570c78=a0_0x570c();let _0x4a4e31=_0x570c78[_0x77b349];if(a0_0x4a4e['xjoPqL']===undefined){var _0x32fb5b=function(_0xf0186f){const _0x4b62fd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f6ad0='',_0x4eb1c4='';for(let _0x2da2ee=0x0,_0x4ae152,_0x4065e4,_0x5b0272=0x0;_0x4065e4=_0xf0186f['charAt'](_0x5b0272++);~_0x4065e4&&(_0x4ae152=_0x2da2ee%0x4?_0x4ae152*0x40+_0x4065e4:_0x4065e4,_0x2da2ee++%0x4)?_0x2f6ad0+=String['fromCharCode'](0xff&_0x4ae152>>(-0x2*_0x2da2ee&0x6)):0x0){_0x4065e4=_0x4b62fd['indexOf'](_0x4065e4);}for(let _0x4614be=0x0,_0x860ce8=_0x2f6ad0['length'];_0x4614be<_0x860ce8;_0x4614be++){_0x4eb1c4+='%'+('00'+_0x2f6ad0['charCodeAt'](_0x4614be)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4eb1c4);};a0_0x4a4e['wxKbfG']=_0x32fb5b,a0_0x4a4e['qZVoUA']={},a0_0x4a4e['xjoPqL']=!![];}const _0x6a7e66=_0x570c78[0x0],_0xcd919a=_0x77b349+_0x6a7e66,_0x74b377=a0_0x4a4e['qZVoUA'][_0xcd919a];return!_0x74b377?(_0x4a4e31=a0_0x4a4e['wxKbfG'](_0x4a4e31),a0_0x4a4e['qZVoUA'][_0xcd919a]=_0x4a4e31):_0x4a4e31=_0x74b377,_0x4a4e31;}function log(_0x5c5edc){const _0x52b0eb=new Date()['toISOString']();console['log']('['+_0x52b0eb+']\x20'+_0x5c5edc);}function a0_0x570c(){const _0x405955=['4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','BwvZC2fNzs1YzwnLAxzLza','EMvetvG','4PQG77IpievYCM9YoIa','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','n2DruurzEa','tw9KztOGs29UzwTZAsboEwf0yq','igrPDgvYAw1Hig9SzwGG','mty3ntGWodjcuMDPvxq','lIbuB3rHBcbRB25MAxjTyxnPoIa','pt09pt09ierbveeGufvcteLtscbnrvntquDfid09pt09pq','DxvPza','ndiZmZeXmKvLwNbZta','Dg9mB2nHBgvuAw1Lu3rYAw5N','CMvXDwvZDeLK','zNvUy3rPB24','mJrwBgXTu1m','vw5RBM93BG','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','y2f0zwDVCNK','swTJD0m','C0PhwKS','rwXpB3q','ALnTBu4','CMvJzwL2zxjjBMzV','mta4mZm5nuTAC3DJCq','tvnivujFqvvut19bq0Tot1Dmrurhrq','nKLWC2zdsG','CMvJzwL2zwrbDa','zxHPC3rZu3LUyW','Bg9N','zw52','zgLZy29UBMvJDa','CMvXDwLYzufJAW','zhvHzNi','mJaYnteXnKrzufLxzG','qMTwBfG','nti5mZu5DKz0CfvN','u3rHDhvZieXPC3rLBMvYoIa','zxjYB3i','wgrZsKW','qxbMvxe','D1DkCxu','ksbWywrHia','zxjYB3jezxrHAwW','BwvZC2fNzq','y2nTEuK','yNHjEvy','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','Bxv5rNO','rxjYB3iGAw5PC2LHBgLZyxnPie1LC3nHz2viDwi6','zg90zw52','CMvJzwL2zxjjza','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','qMv2thi','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','uhvIBgLZAcblzxK6ia','Dg9mB2nHBgvtDhjPBMC','q2XPzw50ieLel1vZzxjjrdOG','D21Luwm','CMvHC29U','C3vyrha','C29JA2v0','C3rYAw5NAwz5','nty2mJG1meLWC2jkDq','vgLKywSGzgLRzxrHAhvP','EffOENu','vhPzwhy','twvZC2fNzuH1yIbtreSGBM90igzVDw5Kigf0ia','ChvIBgLZAa','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','C2XvChq','y2XLyxjdywnOzq','uhPVwMu','ovPztwzxDW','DxnLCKLK','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','CKHJCeS','nZqZmgrtDePzvG','tvnivujFu0vsvKLdrv9qt1ju','v2fRDhuGsw5PC2LHBgLZyxnPoIa','ruvrBKe','vw5RBM93BIbLCNjVCG','txjTChe','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','u3vIC2nYAwjLieTLEtOG','Afzvy3K','s29UzMLNDxjHC2KGugXHDgzVCM06ia','v1LgEMK','q2HHBM5LBcbuyxjNzxq6ia','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUigrPC2nVBM5Ly3qOkq','CgLK','tvnivujFvvnfuL9jra'];a0_0x570c=function(){return _0x405955;};return a0_0x570c();}async function initMessageHub(){const _0x1e7313=a0_0xc25d4c,_0xfa9c18={'IkcwC':function(_0x4af59f,_0x56d63c){return _0x4af59f(_0x56d63c);},'lQlvd':'message-sent','gsENm':function(_0x5f4e19,_0x29269e){return _0x5f4e19&&_0x29269e;},'mWOVP':_0x1e7313(0x1f7),'ccmyI':function(_0x418e90,_0x4079c0){return _0x418e90(_0x4079c0);},'NbNXL':'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======','BevLr':_0x1e7313(0x1c5),'dIXXe':'default','BkVlX':'broadcast','zeDMX':function(_0x298461,_0x4d5aca){return _0x298461===_0x4d5aca;},'xQhzu':'websocket','vrZZL':'localhost','LZOmz':function(_0x5d0aeb,_0x1daf47){return _0x5d0aeb(_0x1daf47);},'QpcBG':_0x1e7313(0x1d1),'XMwqC':function(_0x16c55a,_0x14e146){return _0x16c55a(_0x14e146);},'hVUcy':function(_0x95f103,_0x3f0a84){return _0x95f103(_0x3f0a84);},'Mrmpq':_0x1e7313(0x1ae),'ApfUq':function(_0x45f8da,_0x33feb3,_0x133c3e){return _0x45f8da(_0x33feb3,_0x133c3e);},'tIWxd':_0x1e7313(0x1f2)};if(_0xfa9c18['gsENm'](messagehub,isConnected))return log('MessageHub\x20sudah\x20terhubung,\x20menggunakan\x20koneksi\x20yang\x20ada'),!![];if(connectionPromise)return _0xfa9c18[_0x1e7313(0x1ee)](log,'Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'),connectionPromise;return connectionPromise=new Promise(async(_0x40d600,_0x23e324)=>{const _0x216abb=_0x1e7313,_0x56ca7a={'nBjVF':function(_0x19420b,_0x247a75){return _0x19420b===_0x247a75;},'duafr':function(_0x200216,_0x1446e7){const _0x59c9bf=a0_0x4a4e;return _0xfa9c18[_0x59c9bf(0x1d4)](_0x200216,_0x1446e7);},'ElOot':function(_0x3dcdfd,_0x5b830e){return _0x3dcdfd(_0x5b830e);},'rHcpK':'disconnected','EEQnA':'Tidak\x20diketahui','XdsJL':function(_0x15c643,_0x44ca0d){return _0x15c643===_0x44ca0d;},'slUpt':_0xfa9c18['lQlvd'],'Lvumb':function(_0x3ea467,_0x2a57b1){return _0x3ea467(_0x2a57b1);},'cwSxZ':function(_0x1c3e35,_0x2dabbb){return _0xfa9c18['gsENm'](_0x1c3e35,_0x2dabbb);},'FxxiX':_0xfa9c18['mWOVP'],'WYFzi':function(_0x4c46b9,_0x428860){return _0xfa9c18['ccmyI'](_0x4c46b9,_0x428860);}};try{_0xfa9c18['IkcwC'](log,_0xfa9c18['NbNXL']),log(_0x216abb(0x1b2)+new Date()[_0x216abb(0x1f9)]()),log(_0xfa9c18[_0x216abb(0x1f6)]);const _0x5954da={'publishKey':process[_0x216abb(0x1df)]['MSHUB_PUBLISH_KEY'],'subscribeKey':process[_0x216abb(0x1df)]['MSHUB_SUBSCRIBE_KEY'],'userId':process['env'][_0x216abb(0x1be)]||'restforge-'+(process['env'][_0x216abb(0x1d2)]||_0xfa9c18['dIXXe'])+'-'+process[_0x216abb(0x1bd)],'communicationType':process[_0x216abb(0x1df)]['MSHUB_COMMUNICATION_TYPE']||_0xfa9c18[_0x216abb(0x1e4)],'autoAcknowledge':_0xfa9c18[_0x216abb(0x1c1)](process['env'][_0x216abb(0x1da)],'true'),'acknowledgeMessages':_0xfa9c18['zeDMX'](process[_0x216abb(0x1df)][_0x216abb(0x206)],'true'),'platform':{'type':process['env']['MSHUB_COMMUNICATION_TYPE']||_0xfa9c18[_0x216abb(0x202)],'host':process[_0x216abb(0x1df)]['MSHUB_HOST']||_0xfa9c18['vrZZL'],'api_port':parseInt(process['env']['MSHUB_API_PORT']||0xdf8),'service_port':_0xfa9c18['LZOmz'](parseInt,process[_0x216abb(0x1df)][_0x216abb(0x1b1)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x5954da),log(_0xfa9c18['QpcBG']),_0xfa9c18['ccmyI'](log,_0x216abb(0x1fa)+messagehub[_0x216abb(0x1ad)]),_0xfa9c18[_0x216abb(0x1d4)](log,_0x216abb(0x1f8)+messagehub['publishKey']),_0xfa9c18['XMwqC'](log,_0x216abb(0x1b7)+messagehub['subscribeKey']),log('Tipe\x20Komunikasi:\x20'+messagehub['communicationType']),_0xfa9c18[_0x216abb(0x1b8)](log,_0x216abb(0x1b9)+JSON[_0x216abb(0x1ff)](messagehub['platformConfig'])),log(_0xfa9c18[_0x216abb(0x1b5)]),messagehub['addListener']({'status':function(_0x3fb54a){const _0x270be9=_0x216abb;log(_0x270be9(0x1e6)+_0x3fb54a[_0x270be9(0x1d3)]);if(_0x56ca7a['nBjVF'](_0x3fb54a[_0x270be9(0x1d3)],'connected'))_0x56ca7a['duafr'](log,_0x270be9(0x1f0)),isConnected=!![],timeoutHandler&&(_0x56ca7a['ElOot'](clearTimeout,timeoutHandler),timeoutHandler=null),_0x56ca7a['duafr'](_0x40d600,!![]);else{if(_0x3fb54a['category']===_0x56ca7a[_0x270be9(0x1af)]){const _0xf9e715=_0x3fb54a['isErrorRelated']===!![];!_0xf9e715&&(_0x56ca7a['duafr'](log,'Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0x3fb54a[_0x270be9(0x1fc)]||_0x56ca7a[_0x270be9(0x1b3)])),isConnected=![],connectionPromise&&(_0x56ca7a[_0x270be9(0x1d6)](_0x23e324,new Error('Koneksi\x20terputus:\x20'+(_0x3fb54a['reason']||_0x270be9(0x201)))),connectionPromise=null));}else{if(_0x3fb54a[_0x270be9(0x1d3)]==='error'){let _0x1bf76d=_0x3fb54a[_0x270be9(0x1ec)]||_0x3fb54a[_0x270be9(0x1e7)]||_0x270be9(0x1b4);log(_0x270be9(0x1c2)+_0x1bf76d),isConnected=![],connectionPromise&&(_0x56ca7a[_0x270be9(0x1e2)](_0x23e324,new Error(_0x1bf76d)),connectionPromise=null);}else{if(_0x56ca7a['XdsJL'](_0x3fb54a['category'],_0x56ca7a[_0x270be9(0x207)]))_0x56ca7a['Lvumb'](log,_0x270be9(0x1f5)+_0x3fb54a[_0x270be9(0x1cd)]);else{if(_0x56ca7a[_0x270be9(0x1e8)](_0x3fb54a['category'],_0x270be9(0x1c0))){const _0x390343=_0x3fb54a[_0x270be9(0x1d8)]?.['name']||_0x270be9(0x1d0),_0xb57ba9=_0x3fb54a[_0x270be9(0x1d8)]?.['id']||_0x3fb54a[_0x270be9(0x1f4)],_0x39433c=new Date(_0x3fb54a['receiverInfo']?.[_0x270be9(0x1dc)]||_0x3fb54a['receivedAt']||new Date())[_0x270be9(0x1cc)]();_0x56ca7a['duafr'](log,'📩\x20Konfirmasi:\x20Pesan\x20'+_0x3fb54a['requestId']+_0x270be9(0x1c6)+_0x390343+'\x20('+_0xb57ba9+_0x270be9(0x1eb)+_0x39433c+_0x270be9(0x1c8)+(_0x3fb54a['confirmationCount']||0x1));}}}}}}}),timeoutHandler=_0xfa9c18[_0x216abb(0x1e9)](setTimeout,()=>{const _0x41bcb7=_0x216abb;_0x56ca7a['cwSxZ'](!isConnected,connectionPromise)&&(log(_0x56ca7a['FxxiX']),_0x56ca7a[_0x41bcb7(0x1ba)](_0x23e324,new Error('Connection\x20timeout')),connectionPromise=null);},0x2710);}catch(_0x1400f8){log('⚠️\x20Error\x20inisialisasi\x20MessageHub:\x20'+_0x1400f8[_0x216abb(0x1ed)]),console[_0x216abb(0x1e7)](_0xfa9c18['tIWxd'],_0x1400f8),connectionPromise=null,_0x23e324(_0x1400f8);}}),connectionPromise;}async function publishMessage(_0x2d8683,_0x13dd65,_0x419892,_0x2a8d53={}){const _0x2880d0=a0_0xc25d4c,_0xb6e604={'uHzEX':function(_0x6a8c8,_0x4ff7d6){return _0x6a8c8(_0x4ff7d6);},'qjbTP':_0x2880d0(0x1c9),'bxIyV':function(_0x5e4ea1,_0xf77d18){return _0x5e4ea1(_0xf77d18);},'TzYXv':'================================','suXDp':'Mengirim\x20pesan\x20ke\x20server...','jSmmN':'Failed\x20to\x20send\x20message'};try{!isConnected&&await initMessageHub();const _0x21101b=messagehub['channel'](_0x2d8683);_0xb6e604['uHzEX'](log,_0xb6e604['qjbTP']),_0xb6e604['bxIyV'](log,_0x2880d0(0x1bb)+_0x21101b['topic']),_0xb6e604[_0x2880d0(0x1ef)](log,'Message\x20Type:\x20'+_0x13dd65),log(_0xb6e604[_0x2880d0(0x203)]);const _0x4539be={'requireAck':_0x2a8d53[_0x2880d0(0x1e1)]!==undefined?_0x2a8d53[_0x2880d0(0x1e1)]:![],'clearCache':_0x2a8d53['clearCache']!==undefined?_0x2a8d53[_0x2880d0(0x208)]:!![],'senderId':messagehub[_0x2880d0(0x1fe)]?messagehub['socket']['id']:'restforge'};log(_0xb6e604[_0x2880d0(0x1fd)]);const _0x1e0c5d={'type':_0x13dd65,'content':_0x419892},_0x2a4787=await _0x21101b[_0x2880d0(0x205)](_0x1e0c5d,_0x4539be);return log(_0x2880d0(0x1c3)+_0x2d8683),{'success':!![],'requestId':_0x2a4787['requestId'],'topic':_0x2d8683,'message':'Message\x20sent\x20successfully'};}catch(_0x1539c9){return log(_0x2880d0(0x1bf)+_0x1539c9['message']),{'success':![],'error':_0x1539c9['message'],'topic':_0x2d8683,'message':_0xb6e604[_0x2880d0(0x1d7)]};}}async function closeConnection(){const _0x2e10f4=a0_0xc25d4c,_0x5330a1={'PzoZe':function(_0x359189,_0x552099){return _0x359189(_0x552099);},'FqJeN':function(_0x58a82e,_0x460d45){return _0x58a82e&&_0x460d45;},'sJGZK':function(_0x24e9ba,_0x5a9361){return _0x24e9ba===_0x5a9361;},'MKvEW':function(_0x495738,_0x2092e0){return _0x495738(_0x2092e0);},'wmeQc':_0x2e10f4(0x1bc),'wWJqu':'function','muyFz':function(_0x532386,_0x4243f0){return _0x532386(_0x4243f0);}};timeoutHandler&&(_0x5330a1[_0x2e10f4(0x209)](clearTimeout,timeoutHandler),timeoutHandler=null);if(_0x5330a1['FqJeN'](isConnected,messagehub))try{if(_0x5330a1[_0x2e10f4(0x1d5)](typeof messagehub[_0x2e10f4(0x1e0)],_0x2e10f4(0x1ce)))await messagehub['disconnect'](),_0x5330a1['MKvEW'](log,_0x5330a1[_0x2e10f4(0x1fb)]);else{if(typeof messagehub['close']===_0x5330a1[_0x2e10f4(0x1ea)])await messagehub['close'](),_0x5330a1['MKvEW'](log,_0x2e10f4(0x1b6));else messagehub['socket']&&typeof messagehub[_0x2e10f4(0x1fe)]['disconnect']===_0x5330a1[_0x2e10f4(0x1ea)]?(messagehub[_0x2e10f4(0x1fe)]['disconnect'](),_0x5330a1['PzoZe'](log,'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()')):_0x5330a1[_0x2e10f4(0x1f1)](log,'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub');}isConnected=![],connectionPromise=null;}catch(_0x9a998){_0x5330a1[_0x2e10f4(0x1f1)](log,'Error\x20saat\x20menutup\x20koneksi:\x20'+_0x9a998[_0x2e10f4(0x1ed)]);}}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|