@restforgejs/platform 5.1.16 → 5.1.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/generators/cli/catalog/dbschema.js +2 -1
- package/generators/cli/endpoint/list.js +264 -0
- package/generators/cli/fast-track.js +395 -37
- package/generators/cli/processor/create.js +7 -7
- package/generators/cli/processor/list.js +229 -0
- package/generators/lib/dbschema-kit/apply-executor.js +20 -0
- package/generators/lib/generators/dashboard-generator.js +5 -5
- package/generators/lib/generators/processor-validation-generator.js +4 -1
- package/generators/lib/migrate/field-type-resolver.js +23 -0
- package/generators/lib/payload/payload-runner.js +80 -3
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/package.json +1 -1
- package/scripts/check-install.js +8 -8
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/soft-delete-dashboard-guard.js +1 -1
- package/src/utils/sql-table-extractor.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const
|
|
1
|
+
'use strict';const a0_0x4da400=a0_0x5645;(function(_0x4ab3d0,_0x508fca){const _0x44ee0d=a0_0x5645,_0x15fe62=_0x4ab3d0();while(!![]){try{const _0x2aa2cc=-parseInt(_0x44ee0d(0xf8))/0x1+-parseInt(_0x44ee0d(0x115))/0x2*(parseInt(_0x44ee0d(0x109))/0x3)+-parseInt(_0x44ee0d(0x105))/0x4+parseInt(_0x44ee0d(0x111))/0x5+-parseInt(_0x44ee0d(0x108))/0x6*(-parseInt(_0x44ee0d(0xe3))/0x7)+-parseInt(_0x44ee0d(0x104))/0x8+parseInt(_0x44ee0d(0x116))/0x9*(parseInt(_0x44ee0d(0xf0))/0xa);if(_0x2aa2cc===_0x508fca)break;else _0x15fe62['push'](_0x15fe62['shift']());}catch(_0x2e6916){_0x15fe62['push'](_0x15fe62['shift']());}}}(a0_0xeba5,0x98836));const multer=require(a0_0x4da400(0xeb)),path=require('path'),crypto=require('crypto'),fs=require('fs')[a0_0x4da400(0xf6)],fsSync=require('fs'),{logger}=require('./logger');function a0_0x5645(_0x54155b,_0x40bd62){_0x54155b=_0x54155b-0xdf;const _0xeba587=a0_0xeba5();let _0x56459a=_0xeba587[_0x54155b];if(a0_0x5645['kuXEFj']===undefined){var _0xd67ab9=function(_0x700e0f){const _0x30280a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x36bff8='',_0x147de9='';for(let _0x564789=0x0,_0x43d697,_0x2f4434,_0x45eed5=0x0;_0x2f4434=_0x700e0f['charAt'](_0x45eed5++);~_0x2f4434&&(_0x43d697=_0x564789%0x4?_0x43d697*0x40+_0x2f4434:_0x2f4434,_0x564789++%0x4)?_0x36bff8+=String['fromCharCode'](0xff&_0x43d697>>(-0x2*_0x564789&0x6)):0x0){_0x2f4434=_0x30280a['indexOf'](_0x2f4434);}for(let _0x57a0cc=0x0,_0x5d900d=_0x36bff8['length'];_0x57a0cc<_0x5d900d;_0x57a0cc++){_0x147de9+='%'+('00'+_0x36bff8['charCodeAt'](_0x57a0cc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x147de9);};a0_0x5645['KDmjRQ']=_0xd67ab9,a0_0x5645['xotixj']={},a0_0x5645['kuXEFj']=!![];}const _0xb68a3=_0xeba587[0x0],_0x3cfda9=_0x54155b+_0xb68a3,_0xefc460=a0_0x5645['xotixj'][_0x3cfda9];return!_0xefc460?(_0x56459a=a0_0x5645['KDmjRQ'](_0x56459a),a0_0x5645['xotixj'][_0x3cfda9]=_0x56459a):_0x56459a=_0xefc460,_0x56459a;}class UploadHandlerV2{constructor(){const _0xbcd25=a0_0x4da400;this[_0xbcd25(0xf3)]=null;}get['tempDir'](){const _0x5ab9a7=a0_0x4da400,_0x58a9c4={'Znqgj':'default','TtopZ':'temp','MsUBK':'uploads'};if(!this['_tempDir']){const _0x330439=process[_0x5ab9a7(0xff)][_0x5ab9a7(0xe5)]||_0x58a9c4['Znqgj'];this['_tempDir']=process['env'][_0x5ab9a7(0xfa)]||path['join'](process['cwd'](),_0x58a9c4['TtopZ'],_0x58a9c4['MsUBK'],_0x330439),!fsSync['existsSync'](this[_0x5ab9a7(0xf3)])&&fsSync[_0x5ab9a7(0xdf)](this['_tempDir'],{'recursive':!![]});}return this['_tempDir'];}['createUploadMiddleware'](_0x2f281b={}){const _0x57080a=a0_0x4da400,_0x218c08={'WAtGe':'hex','Dsqgu':function(_0x5d11ff,_0x3f458c,_0x5141ec){return _0x5d11ff(_0x3f458c,_0x5141ec);},'PLxkz':function(_0x1d872d,_0x44e22c,_0x5369a5){return _0x1d872d(_0x44e22c,_0x5369a5);},'ugfWI':function(_0x3f295c,_0x1c5192){return _0x3f295c(_0x1c5192);},'Rwrwd':'10MB'},_0x2bf63a=_0x2f281b['maxFiles']||0x5,_0x336a8a=this['_parseFileSize'](_0x2f281b[_0x57080a(0xee)]||_0x218c08['Rwrwd']),_0x52f4cf=_0x2f281b['allowedTypes']||[],_0x582d98=multer[_0x57080a(0xef)]({'destination':(_0x243734,_0x201ef6,_0x17c0ff)=>{const _0x3771c1=_0x57080a;!fsSync[_0x3771c1(0xe2)](this[_0x3771c1(0x10a)])&&fsSync[_0x3771c1(0xdf)](this['tempDir'],{'recursive':!![]}),_0x17c0ff(null,this['tempDir']);},'filename':(_0x3b5091,_0x401b12,_0x3bf03b)=>{const _0x510b6b=_0x57080a,_0x282d41=crypto[_0x510b6b(0x10e)](0x8)[_0x510b6b(0x103)](_0x218c08[_0x510b6b(0x10f)]),_0x10c67e=Date[_0x510b6b(0xfb)](),_0x5ec0aa=path[_0x510b6b(0xed)](_0x401b12['originalname']);_0x3bf03b(null,'upload-'+_0x10c67e+'-'+_0x282d41+_0x5ec0aa);}}),_0x46e1b9=(_0x32c23d,_0x18d38a,_0x2ec13b)=>{const _0x51112e=_0x57080a;if(_0x52f4cf[_0x51112e(0xfc)]===0x0)return _0x218c08['Dsqgu'](_0x2ec13b,null,!![]);const _0x5c711d=path['extname'](_0x18d38a[_0x51112e(0xfd)])['toLowerCase']()['replace']('.','');_0x52f4cf['includes'](_0x5c711d)?_0x218c08[_0x51112e(0x112)](_0x2ec13b,null,!![]):_0x218c08[_0x51112e(0xfe)](_0x2ec13b,new Error(_0x51112e(0xf5)+_0x5c711d+_0x51112e(0xf7)+_0x52f4cf[_0x51112e(0x110)](',\x20')));};return multer({'storage':_0x582d98,'limits':{'fileSize':_0x336a8a,'files':_0x2bf63a},'fileFilter':_0x46e1b9})['array'](_0x57080a(0xe1),_0x2bf63a);}async['processUploadedFiles'](_0x58cb1b,_0x2acc4d,_0x460fc9={}){const _0x33573e=a0_0x4da400,_0x16bc8f={'RWEtO':_0x33573e(0x107)},{createFileMetadata:_0x579f74}=require('../storage/file-metadata-helper'),_0x37d12d=[];for(const _0x3f1a26 of _0x58cb1b){try{const _0x54e61d=_0x2acc4d['generateKey'](_0x3f1a26['originalname'],{'prefix':_0x460fc9[_0x33573e(0x10d)]||'','project':_0x460fc9[_0x33573e(0xec)]||'','module':_0x460fc9[_0x33573e(0xe7)]||'','endpoint':_0x460fc9[_0x33573e(0xe4)]||''}),_0x40c366=fsSync[_0x33573e(0xea)](_0x3f1a26['path']),_0x61ecc5=await _0x2acc4d[_0x33573e(0x114)](_0x40c366,_0x54e61d,{'contentType':_0x3f1a26['mimetype'],'fileSize':_0x3f1a26['size']}),_0x371edc=_0x579f74({'key':_0x61ecc5[_0x33573e(0xe6)],'originalName':_0x3f1a26[_0x33573e(0xfd)],'fileName':path[_0x33573e(0x10c)](_0x54e61d),'contentType':_0x3f1a26['mimetype'],'size':_0x3f1a26['size'],'url':_0x61ecc5[_0x33573e(0x101)],'provider':_0x2acc4d[_0x33573e(0xf4)],'bucket':_0x2acc4d['bucket']||null,'uploadedBy':_0x460fc9['uploadedBy']||null});_0x37d12d[_0x33573e(0x113)](_0x371edc);}catch(_0xb2fb17){logger[_0x33573e(0x100)]({'event':_0x16bc8f['RWEtO'],'file':_0x3f1a26[_0x33573e(0xfd)],'error':_0xb2fb17[_0x33573e(0x102)]},'Failed\x20to\x20process\x20uploaded\x20file:\x20'+_0x3f1a26['originalname']);throw _0xb2fb17;}finally{await this['_deleteTempFile'](_0x3f1a26['path']);}}return _0x37d12d;}async['_deleteTempFile'](_0x2ae1d4){const _0x2bafc4=a0_0x4da400;try{await fs[_0x2bafc4(0xf9)](_0x2ae1d4);}catch(_0x21b8ee){logger[_0x2bafc4(0xe8)]({'event':'upload_v2_temp_delete_warn','filePath':_0x2ae1d4,'error':_0x21b8ee['message']},'Failed\x20to\x20delete\x20temp\x20file');}}[a0_0x4da400(0x10b)](_0x32515d){const _0x296868=a0_0x4da400,_0x47dd1e={'rueUi':'number','VQtaT':function(_0x1553eb,_0x48cc08){return _0x1553eb*_0x48cc08;},'lYUkG':function(_0x31db78,_0x487401){return _0x31db78(_0x487401);},'MNBcL':function(_0x14d6e2,_0x300ac8){return _0x14d6e2*_0x300ac8;}};if(typeof _0x32515d===_0x47dd1e['rueUi'])return _0x32515d;const _0x49c9e3=String(_0x32515d)['trim']()[_0x296868(0x106)](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x49c9e3)return _0x47dd1e[_0x296868(0xe9)](0xa*0x400,0x400);const _0x1bf3e4=_0x47dd1e[_0x296868(0xf1)](parseFloat,_0x49c9e3[0x1]),_0x2e20fb=_0x49c9e3[0x2][_0x296868(0xf2)](),_0x264b0a={'B':0x1,'KB':0x400,'MB':_0x47dd1e['VQtaT'](0x400,0x400),'GB':_0x47dd1e['MNBcL'](0x400*0x400,0x400)};return Math['floor'](_0x1bf3e4*(_0x264b0a[_0x2e20fb]||0x1));}}module[a0_0x4da400(0xe0)]=new UploadHandlerV2();function a0_0xeba5(){const _0x1ea642=['nNjkCuPzuW','mJqXndG0mZfHqKnvtNO','BwTKAxjtEw5J','zxHWB3j0CW','zMLSzxm','zxHPC3rZu3LUyW','mtu3otG3ourSuLjLyG','zw5KCg9PBNq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','A2v5','Bw9KDwXL','D2fYBG','vLf0yvq','y3jLyxrLuMvHzfn0CMvHBq','BxvSDgvY','ChjVAMvJDa','zxH0BMfTzq','Bwf4rMLSzvnPEMu','zgLZA1n0B3jHz2u','mtb6sKnrzhi','BfLvA0C','Dg9vChbLCKnHC2u','x3rLBxbeAxi','ChjVDMLKzxjoyw1L','rMLSzsb0ExbLiciU','ChjVBwLZzxm','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG','mJmZotK5vKjUDhLm','Dw5SAw5R','vvbmt0fex1rftvbFreLs','BM93','BgvUz3rO','B3jPz2LUywXUyw1L','DwDMv0K','zw52','zxjYB3i','DxjS','BwvZC2fNzq','Dg9tDhjPBMC','ntu5mtaYngP3vwfVuG','mtm0nJCWogzUvu91sq','Bwf0y2G','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','nNzJug1puG','mta4nJCXmunLDejVvq','DgvTCerPCG','x3bHCNnLrMLSzvnPEMu','yMfZzw5HBwu','ChjLzML4','CMfUzg9TqNL0zxm','v0f0r2u','AM9PBG','mZyWnte1DKrIt0nw','ueX4A3O','ChvZAa','DxbSB2fK'];a0_0xeba5=function(){return _0x1ea642;};return a0_0xeba5();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x3e6a48=a0_0x21ec;function a0_0x2b00(){const _0x50daf0=['Dg9tDhjPBMC','zw52','mZeWmZu5qLz0BxHH','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','vvbmt0fex0rjuG','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','Aw5MBW','BwTKAxjtEw5J','nKnVEKHyBq','BwLTzxr5Cgu','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','z2v0u3rVCMfNzq','BM93','ANzVtMq','AM9PBG','mtqXotq4mezhsxD6rW','odC1ota0s1DxC2r1','DxbSB2fKrgLY','DxbSB2fKlq','Aw5JBhvKzxm','otaYmte1svroquXw','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','x3vWBg9HzerPCG','lNHSC3G','zff1ufe','zgvSzxrLrMLSzq','t1PXv3K','lI9SB2DNzxi','Agv4','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','zxHPC3rZu3LUyW','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','mte0mJe5n0DsuffIEG','Bwf4rMLSzvnPEMu','DxfsAve','lNHSCW','mJCXnJa2y01uv0jk','BwvZC2fNzq','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','mJi2ntaWvwPjq0Hx','Dw5SAw5R','B3jPz2LUywXUyw1L','y3DfEMW','z2v0vxbSB2fKtwLKzgXLD2fYzq','zKPbExy','DxbSB2fKx2HHBMrSzxjFAw5PDa','zxH0BMfTzq'];a0_0x2b00=function(){return _0x50daf0;};return a0_0x2b00();}(function(_0x402bc1,_0x2fc223){const _0x3b041e=a0_0x21ec,_0x239ae5=_0x402bc1();while(!![]){try{const _0x54b198=-parseInt(_0x3b041e(0x127))/0x1+-parseInt(_0x3b041e(0x154))/0x2+parseInt(_0x3b041e(0x131))/0x3+parseInt(_0x3b041e(0x140))/0x4+-parseInt(_0x3b041e(0x144))/0x5+parseInt(_0x3b041e(0x138))/0x6*(parseInt(_0x3b041e(0x150))/0x7)+parseInt(_0x3b041e(0x13f))/0x8;if(_0x54b198===_0x2fc223)break;else _0x239ae5['push'](_0x239ae5['shift']());}catch(_0x5d0e7b){_0x239ae5['push'](_0x239ae5['shift']());}}}(a0_0x2b00,0x1d5f5));function a0_0x21ec(_0x56d3ad,_0x56165f){_0x56d3ad=_0x56d3ad-0x125;const _0x2b008d=a0_0x2b00();let _0x21ec9d=_0x2b008d[_0x56d3ad];if(a0_0x21ec['UnwSmC']===undefined){var _0x11d8eb=function(_0x4f8001){const _0x40f965='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1a2e3a='',_0x2609c5='';for(let _0x2f602c=0x0,_0x38e095,_0x3f06b3,_0x3199b6=0x0;_0x3f06b3=_0x4f8001['charAt'](_0x3199b6++);~_0x3f06b3&&(_0x38e095=_0x2f602c%0x4?_0x38e095*0x40+_0x3f06b3:_0x3f06b3,_0x2f602c++%0x4)?_0x1a2e3a+=String['fromCharCode'](0xff&_0x38e095>>(-0x2*_0x2f602c&0x6)):0x0){_0x3f06b3=_0x40f965['indexOf'](_0x3f06b3);}for(let _0xc28f1d=0x0,_0x5302bd=_0x1a2e3a['length'];_0xc28f1d<_0x5302bd;_0xc28f1d++){_0x2609c5+='%'+('00'+_0x1a2e3a['charCodeAt'](_0xc28f1d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2609c5);};a0_0x21ec['vKrSqk']=_0x11d8eb,a0_0x21ec['VaEIFj']={},a0_0x21ec['UnwSmC']=!![];}const _0x45cf3e=_0x2b008d[0x0],_0x30fd98=_0x56d3ad+_0x45cf3e,_0x21c4d4=a0_0x21ec['VaEIFj'][_0x30fd98];return!_0x21c4d4?(_0x21ec9d=a0_0x21ec['vKrSqk'](_0x21ec9d),a0_0x21ec['VaEIFj'][_0x30fd98]=_0x21ec9d):_0x21ec9d=_0x21c4d4,_0x21ec9d;}const multer=require('multer'),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x3e6a48(0x14b));class UploadHandler{constructor(){const _0xfce21b=a0_0x3e6a48,_0x1e620f={'fJAyv':function(_0x27a9df,_0x37b358){return _0x27a9df*_0x37b358;}};this[_0xfce21b(0x146)]=null,this[_0xfce21b(0x151)]=_0x1e620f[_0xfce21b(0x12c)](0xa*0x400,0x400);}get[a0_0x3e6a48(0x141)](){const _0x3de420=a0_0x3e6a48,_0xea2326={'GquMW':_0x3de420(0x133)};if(!this['_uploadDir']){const _0x40050c=process[_0x3de420(0x130)][_0x3de420(0x145)]||'default';this[_0x3de420(0x146)]=process[_0x3de420(0x130)][_0x3de420(0x134)]||path[_0x3de420(0x13e)](__dirname,'../../temp/uploads/'+_0x40050c);try{!fsSync[_0x3de420(0x14e)](this[_0x3de420(0x146)])&&fsSync['mkdirSync'](this['_uploadDir'],{'recursive':!![]}),logger[_0x3de420(0x136)]({'event':_0x3de420(0x12d),'dir':this[_0x3de420(0x146)]},_0xea2326['GquMW']);}catch(_0x45fe01){logger['error']({'event':'upload_handler_init_error','error':_0x45fe01[_0x3de420(0x125)]},_0x3de420(0x13a));}}return this[_0x3de420(0x146)];}['getStorage'](){const _0x193bc1={'cwEzl':function(_0x223b55,_0x4b3f6f,_0xc8a779){return _0x223b55(_0x4b3f6f,_0xc8a779);}};return multer['diskStorage']({'destination':(_0x4432e4,_0x4e36cd,_0x308d91)=>{const _0x4295a0=a0_0x21ec;!fsSync[_0x4295a0(0x14e)](this[_0x4295a0(0x141)])&&fsSync[_0x4295a0(0x137)](this[_0x4295a0(0x141)],{'recursive':!![]}),_0x193bc1[_0x4295a0(0x12a)](_0x308d91,null,this['uploadDir']);},'filename':(_0x19c940,_0x14308f,_0x33e5be)=>{const _0x59a830=a0_0x21ec,_0x47660=crypto['randomBytes'](0x8)[_0x59a830(0x12f)](_0x59a830(0x14c)),_0x5062e3=Date[_0x59a830(0x13c)](),_0x15817c=path['extname'](_0x14308f[_0x59a830(0x129)]);_0x193bc1['cwEzl'](_0x33e5be,null,_0x59a830(0x142)+_0x5062e3+'-'+_0x47660+_0x15817c);}});}[a0_0x3e6a48(0x12b)](){const _0x5c1040=a0_0x3e6a48,_0x52e62b={'OwwbM':_0x5c1040(0x126),'uqRiQ':_0x5c1040(0x14d),'dQuPQ':function(_0xce5a58,_0x2e9731){return _0xce5a58(_0x2e9731);},'OZqWy':function(_0x116fb3,_0x4080ad){return _0x116fb3(_0x4080ad);},'jvoNd':'file'};return _0x52e62b[_0x5c1040(0x14a)](multer,{'storage':this[_0x5c1040(0x13b)](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x370a91,_0x1445f6,_0x5cb5c1)=>{const _0x580c05=_0x5c1040,_0x52e324=[_0x52e62b['OwwbM'],_0x52e62b[_0x580c05(0x152)]],_0x130354=[_0x580c05(0x147),_0x580c05(0x153)],_0x455e4d=path[_0x580c05(0x12e)](_0x1445f6['originalname'])['toLowerCase']();_0x52e324['includes'](_0x1445f6[_0x580c05(0x139)])&&_0x130354[_0x580c05(0x143)](_0x455e4d)?_0x5cb5c1(null,!![]):_0x52e62b[_0x580c05(0x148)](_0x5cb5c1,new Error(_0x580c05(0x135)));}})['single'](_0x52e62b[_0x5c1040(0x13d)]);}async[a0_0x3e6a48(0x149)](_0x1a0801){const _0x1b52de=a0_0x3e6a48,_0x494e68={'pSmfw':'upload_file_deleted','bVWWb':_0x1b52de(0x132)};try{await fs[_0x1b52de(0x128)](_0x1a0801),logger[_0x1b52de(0x136)]({'event':_0x494e68['pSmfw'],'filePath':_0x1a0801},_0x1b52de(0x14f));}catch(_0x20a422){logger['error']({'event':'upload_file_delete_error','filePath':_0x1a0801,'error':_0x20a422[_0x1b52de(0x125)]},_0x494e68['bVWWb']);}}}module['exports']=new UploadHandler();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a0_0x5310(){const _0x4d3851=['mLrSBLP2yW','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','mJuZnJGXmZbhtfPWyuS','Aw5Zzxj0','C3rHDhvZ','tLLoBuG','Dg9ju09tDhjPBMC','uMvyqxy','BwvZC2fNzq','zxjYB3i','u0LABfC','Cg9ZDa','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','tfnLwuq','uMvZDezVCMDLlvDLyMHVB2SVms4W','nduWodm5ovjgquLpwq','DKjdCgu','mJuXmZi5ufvIqxzP','oufcz1LRAW','mtq1mZK3nZz6tLLOB2O','mJu5otKZofbyEMHTDa','mZu2odHzrvfUDxq','ndC1otiYnu9OCKjhrG','Bg9N','lcbtDgf0Dxm6ia','mZzdsgPvv1K'];a0_0x5310=function(){return _0x4d3851;};return a0_0x5310();}(function(_0x1cefab,_0x16ded8){const _0x366ed0=a0_0x1627,_0x3b4e41=_0x1cefab();while(!![]){try{const _0x1f1910=-parseInt(_0x366ed0(0xf5))/0x1*(parseInt(_0x366ed0(0xfe))/0x2)+parseInt(_0x366ed0(0xfd))/0x3*(-parseInt(_0x366ed0(0xf9))/0x4)+parseInt(_0x366ed0(0xfa))/0x5+parseInt(_0x366ed0(0xf8))/0x6+parseInt(_0x366ed0(0x10d))/0x7+parseInt(_0x366ed0(0xf7))/0x8+parseInt(_0x366ed0(0xf6))/0x9*(-parseInt(_0x366ed0(0x100))/0xa);if(_0x1f1910===_0x16ded8)break;else _0x3b4e41['push'](_0x3b4e41['shift']());}catch(_0x3812da){_0x3b4e41['push'](_0x3b4e41['shift']());}}}(a0_0x5310,0xe84c3));const axios=require('axios');function a0_0x1627(_0x132de7,_0x12978e){_0x132de7=_0x132de7-0xf4;const _0x531013=a0_0x5310();let _0x1627aa=_0x531013[_0x132de7];if(a0_0x1627['IIhMmo']===undefined){var _0x439162=function(_0x800dd0){const _0x553bb8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xb43e55='',_0x44592f='';for(let _0x35cc0a=0x0,_0x28a19a,_0x2ff99d,_0x113518=0x0;_0x2ff99d=_0x800dd0['charAt'](_0x113518++);~_0x2ff99d&&(_0x28a19a=_0x35cc0a%0x4?_0x28a19a*0x40+_0x2ff99d:_0x2ff99d,_0x35cc0a++%0x4)?_0xb43e55+=String['fromCharCode'](0xff&_0x28a19a>>(-0x2*_0x35cc0a&0x6)):0x0){_0x2ff99d=_0x553bb8['indexOf'](_0x2ff99d);}for(let _0x27d69a=0x0,_0x346630=_0xb43e55['length'];_0x27d69a<_0x346630;_0x27d69a++){_0x44592f+='%'+('00'+_0xb43e55['charCodeAt'](_0x27d69a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x44592f);};a0_0x1627['dXPuTP']=_0x439162,a0_0x1627['tfAdJu']={},a0_0x1627['IIhMmo']=!![];}const _0x270c46=_0x531013[0x0],_0x5dbeeb=_0x132de7+_0x270c46,_0x385d96=a0_0x1627['tfAdJu'][_0x5dbeeb];return!_0x385d96?(_0x1627aa=a0_0x1627['dXPuTP'](_0x1627aa),a0_0x1627['tfAdJu'][_0x5dbeeb]=_0x1627aa):_0x1627aa=_0x385d96,_0x1627aa;}async function sendInsertWebhook(_0x4fec51,_0x563a66,_0x83799d={}){const _0x5cfd0a=a0_0x1627,_0x289706={'vBCpe':_0x5cfd0a(0x101),'SIZlW':'application/json','NYNmH':_0x5cfd0a(0x10c),'RTzRB':'Insert\x20webhook\x20sent\x20successfully'};try{const _0x2f1808={'event':_0x289706[_0x5cfd0a(0xf4)],'timestamp':new Date()['toISOString'](),'data':_0x563a66},_0x5563d5=await axios[_0x5cfd0a(0x109)](_0x4fec51,_0x2f1808,{'headers':{'Content-Type':_0x289706[_0x5cfd0a(0x108)],'User-Agent':_0x289706[_0x5cfd0a(0x103)],..._0x83799d},'timeout':0x2710});return console[_0x5cfd0a(0xfb)]('Insert\x20webhook\x20sent\x20to\x20'+_0x4fec51+',\x20Status:\x20'+_0x5563d5[_0x5cfd0a(0x102)]),{'success':!![],'message':_0x289706['RTzRB'],'status':_0x5563d5[_0x5cfd0a(0x102)],'url':_0x4fec51};}catch(_0x3fc031){return console[_0x5cfd0a(0x107)]('Error\x20sending\x20insert\x20webhook:',_0x3fc031['message']),{'success':![],'message':'Failed\x20to\x20send\x20insert\x20webhook','error':_0x3fc031['message'],'url':_0x4fec51};}}async function sendDeleteWebhook(_0x40f9dc,_0x31134e,_0x387999={}){const _0x42b487=a0_0x1627,_0x54bd64={'TfDin':_0x42b487(0x10c),'ReXAv':'Error\x20sending\x20delete\x20webhook:','LSeYD':'Failed\x20to\x20send\x20delete\x20webhook'};try{const _0x16078a={'event':'delete','timestamp':new Date()[_0x42b487(0x104)](),'deleted_data':_0x31134e},_0x496e18=await axios['post'](_0x40f9dc,_0x16078a,{'headers':{'Content-Type':'application/json','User-Agent':_0x54bd64['TfDin'],..._0x387999},'timeout':0x2710});return console['log'](_0x42b487(0x10a)+_0x40f9dc+_0x42b487(0xfc)+_0x496e18[_0x42b487(0x102)]),{'success':!![],'message':_0x42b487(0xff),'status':_0x496e18[_0x42b487(0x102)],'url':_0x40f9dc};}catch(_0x4b52ab){return console['error'](_0x54bd64[_0x42b487(0x105)],_0x4b52ab[_0x42b487(0x106)]),{'success':![],'message':_0x54bd64[_0x42b487(0x10b)],'error':_0x4b52ab[_0x42b487(0x106)],'url':_0x40f9dc};}}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const a0_0x1fde5f=a0_0xed83;function a0_0xed83(_0x3e161a,_0x3c7cc6){_0x3e161a=_0x3e161a-0x1f1;const _0x44fe43=a0_0x44fe();let _0xed838e=_0x44fe43[_0x3e161a];if(a0_0xed83['NbOQNZ']===undefined){var _0x1dde5e=function(_0x3850c3){const _0x726cb5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a8ac8='',_0x5022b0='';for(let _0x166ab4=0x0,_0x476f2c,_0x37b11d,_0x1bd377=0x0;_0x37b11d=_0x3850c3['charAt'](_0x1bd377++);~_0x37b11d&&(_0x476f2c=_0x166ab4%0x4?_0x476f2c*0x40+_0x37b11d:_0x37b11d,_0x166ab4++%0x4)?_0x3a8ac8+=String['fromCharCode'](0xff&_0x476f2c>>(-0x2*_0x166ab4&0x6)):0x0){_0x37b11d=_0x726cb5['indexOf'](_0x37b11d);}for(let _0x4bb322=0x0,_0x2a14ce=_0x3a8ac8['length'];_0x4bb322<_0x2a14ce;_0x4bb322++){_0x5022b0+='%'+('00'+_0x3a8ac8['charCodeAt'](_0x4bb322)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5022b0);};a0_0xed83['TxLLBJ']=_0x1dde5e,a0_0xed83['uXvbSl']={},a0_0xed83['NbOQNZ']=!![];}const _0x596030=_0x44fe43[0x0],_0x128781=_0x3e161a+_0x596030,_0x3459f9=a0_0xed83['uXvbSl'][_0x128781];return!_0x3459f9?(_0xed838e=a0_0xed83['TxLLBJ'](_0xed838e),a0_0xed83['uXvbSl'][_0x128781]=_0xed838e):_0xed838e=_0x3459f9,_0xed838e;}(function(_0xc93038,_0x435f18){const _0x13da91=a0_0xed83,_0x307a14=_0xc93038();while(!![]){try{const _0x59dee2=-parseInt(_0x13da91(0x202))/0x1*(-parseInt(_0x13da91(0x205))/0x2)+-parseInt(_0x13da91(0x1f4))/0x3+parseInt(_0x13da91(0x1fa))/0x4*(-parseInt(_0x13da91(0x204))/0x5)+parseInt(_0x13da91(0x20f))/0x6+parseInt(_0x13da91(0x1f1))/0x7+-parseInt(_0x13da91(0x1fd))/0x8+parseInt(_0x13da91(0x20c))/0x9;if(_0x59dee2===_0x435f18)break;else _0x307a14['push'](_0x307a14['shift']());}catch(_0x1dec69){_0x307a14['push'](_0x307a14['shift']());}}}(a0_0x44fe,0xad384));function a0_0x44fe(){const _0x238b9f=['uM91DgvY','C3vJy2vZCW','nZq3mJmWnfHpswHQra','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihjLBgvHC2u','mty1nJy4n2HIDffcDG','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','rNzHsfK','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSihr0BcWGB3DUzxi','C3rHDhvZ','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSigXVy2TFDg9Rzw4','nJa2nJrRufnsyxm','CLzLt3q','zxHWB3j0CW','mteYnJyWnJrut1nTt0K','qwHSy3i','ELzks20','BwvZC2fNzq','Bg9JA19Hy3f1AxjLx3jVDxrLx2vYCM9Y','mtDrt2jeqw8','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRigfJCxvPC2L0Aw9U','nde1wMjztw1u','mta1mdiYA3jdChbH','Cg9ZDa','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','ANnVBG','CMvSzwfZzvjLC291CMnLtg9JA3m','zg1osuq','EMfMBue','mtaYntC2ntfXrLnqCwq','tfnqtxi','Bg9JA19YzwXLyxnLx3jVDxrLx2vYCM9Y','ndK3mZi1meDSwgrHBq','yM9KEq','tg9JAYbHy3f1AxjLihjVDxrLigvYCM9YoIa'];a0_0x44fe=function(){return _0x238b9f;};return a0_0x44fe();}const express=require('express'),{logger}=require('../../utils/logger');function createLockRoutes(){const _0xfa7870=a0_0xed83,_0x3266c9={'mnqQx':function(_0x252070,_0xbf7fba){return _0x252070(_0xbf7fba);},'Ahlcr':function(_0x1d428b,_0x5df883){return _0x1d428b||_0x5df883;},'RZgwy':function(_0x3a7fec){return _0x3a7fec();},'aJrQJ':'Resource\x20lock\x20conflict','dmNID':_0xfa7870(0x201),'rVeOt':_0xfa7870(0x203),'zafmA':_0xfa7870(0x1f9),'hAKUw':function(_0x56aa65){return _0x56aa65();},'LSPMr':_0xfa7870(0x20e),'zVJKm':_0xfa7870(0x1f3),'fYabA':'Internal\x20server\x20error\x20during\x20lock\x20status\x20check','FvaHY':'/acquire'},_0x4628bb=express[_0xfa7870(0x212)]();let _0x48f5ac=null;function _0x7d117b(){const _0x5225d0=_0xfa7870;return!_0x48f5ac&&(_0x48f5ac=_0x3266c9['mnqQx'](require,_0x5225d0(0x207))),_0x48f5ac;}return _0x4628bb['post'](_0x3266c9[_0xfa7870(0x1f6)],async(_0x5e39b8,_0x2a6096)=>{const _0x3ef8d1=_0xfa7870;try{const {resource:_0x160f26,lock_keys:_0x1514b6,ttl:_0x108c10,owner:_0x479214}=_0x5e39b8[_0x3ef8d1(0x210)];if(_0x3266c9[_0x3ef8d1(0x1fe)](!_0x160f26,!_0x1514b6)||!_0x108c10||!_0x479214)return _0x2a6096[_0x3ef8d1(0x1f8)](0x190)['json']({'success':![],'error':_0x3ef8d1(0x1f7)});const _0x186940=_0x3266c9['RZgwy'](_0x7d117b),_0x3f8138=await _0x186940['acquireResourceLocks']({'resource':_0x160f26,'lockKeys':_0x1514b6,'ttl':_0x108c10,'owner':_0x479214});if(_0x3f8138['success'])return _0x2a6096['json'](_0x3f8138);const _0x32e0d1=_0x3f8138['error']===_0x3266c9['aJrQJ']?0x199:0x190;return _0x2a6096[_0x3ef8d1(0x1f8)](_0x32e0d1)['json'](_0x3f8138);}catch(_0x3e3b05){logger['error']({'event':_0x3266c9[_0x3ef8d1(0x20a)],'error':_0x3e3b05['message']},_0x3ef8d1(0x211)+_0x3e3b05['message']),_0x2a6096[_0x3ef8d1(0x1f8)](0x1f4)[_0x3ef8d1(0x208)]({'success':![],'error':_0x3266c9[_0x3ef8d1(0x1fb)]});}}),_0x4628bb[_0xfa7870(0x206)]('/release',async(_0x581762,_0x623dce)=>{const _0x34491c=_0xfa7870;try{const {resource:_0x2638f1,lock_keys:_0x5ff126,lock_token:_0x341410}=_0x581762[_0x34491c(0x210)];if(!_0x2638f1||!_0x5ff126||!_0x341410)return _0x623dce[_0x34491c(0x1f8)](0x190)['json']({'success':![],'error':_0x3266c9[_0x34491c(0x20b)]});const _0x215202=_0x3266c9['hAKUw'](_0x7d117b),_0x35348b=await _0x215202[_0x34491c(0x209)]({'resource':_0x2638f1,'lockKeys':_0x5ff126,'lockToken':_0x341410});if(_0x35348b[_0x34491c(0x213)])return _0x623dce['json'](_0x35348b);return _0x623dce[_0x34491c(0x1f8)](0x190)['json'](_0x35348b);}catch(_0x8c2ca6){logger['error']({'event':_0x3266c9[_0x34491c(0x20d)],'error':_0x8c2ca6['message']},_0x34491c(0x1f5)+_0x8c2ca6['message']),_0x623dce[_0x34491c(0x1f8)](0x1f4)['json']({'success':![],'error':_0x3266c9[_0x34491c(0x1ff)]});}}),_0x4628bb[_0xfa7870(0x206)]('/status',async(_0x2ff566,_0x46a3ff)=>{const _0x192b35=_0xfa7870;try{const {resource:_0x27140f,lock_keys:_0x9c361a}=_0x2ff566[_0x192b35(0x210)];if(_0x3266c9['Ahlcr'](!_0x27140f,!_0x9c361a))return _0x46a3ff[_0x192b35(0x1f8)](0x190)['json']({'success':![],'error':_0x192b35(0x1f2)});const _0x238341=_0x3266c9['hAKUw'](_0x7d117b),_0x432754=await _0x238341['getResourceLockStatus']({'resource':_0x27140f,'lockKeys':_0x9c361a});if(_0x432754[_0x192b35(0x213)])return _0x46a3ff[_0x192b35(0x208)](_0x432754);return _0x46a3ff[_0x192b35(0x1f8)](0x190)[_0x192b35(0x208)](_0x432754);}catch(_0x231952){logger['error']({'event':'lock_status_route_error','error':_0x231952[_0x192b35(0x200)]},'Lock\x20status\x20route\x20error:\x20'+_0x231952[_0x192b35(0x200)]),_0x46a3ff['status'](0x1f4)['json']({'success':![],'error':_0x3266c9['fYabA']});}}),_0x4628bb;}module[a0_0x1fde5f(0x1fc)]=createLockRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4e6c06=a0_0x2f9d;function a0_0x2f9d(_0x161b4d,_0x136256){_0x161b4d=_0x161b4d-0x163;const _0x20d3aa=a0_0x20d3();let _0x2f9d20=_0x20d3aa[_0x161b4d];if(a0_0x2f9d['MKuafy']===undefined){var _0x8f7838=function(_0x5881e9){const _0x5db8ef='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3915ac='',_0x40a1f4='';for(let _0x2fefd5=0x0,_0x49df88,_0x482407,_0x16e744=0x0;_0x482407=_0x5881e9['charAt'](_0x16e744++);~_0x482407&&(_0x49df88=_0x2fefd5%0x4?_0x49df88*0x40+_0x482407:_0x482407,_0x2fefd5++%0x4)?_0x3915ac+=String['fromCharCode'](0xff&_0x49df88>>(-0x2*_0x2fefd5&0x6)):0x0){_0x482407=_0x5db8ef['indexOf'](_0x482407);}for(let _0x29f9d6=0x0,_0x368bc3=_0x3915ac['length'];_0x29f9d6<_0x368bc3;_0x29f9d6++){_0x40a1f4+='%'+('00'+_0x3915ac['charCodeAt'](_0x29f9d6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x40a1f4);};a0_0x2f9d['KnYNhN']=_0x8f7838,a0_0x2f9d['NfxHVn']={},a0_0x2f9d['MKuafy']=!![];}const _0x3fd4b7=_0x20d3aa[0x0],_0x40f347=_0x161b4d+_0x3fd4b7,_0x475237=a0_0x2f9d['NfxHVn'][_0x40f347];return!_0x475237?(_0x2f9d20=a0_0x2f9d['KnYNhN'](_0x2f9d20),a0_0x2f9d['NfxHVn'][_0x40f347]=_0x2f9d20):_0x2f9d20=_0x475237,_0x2f9d20;}(function(_0x4cd6f4,_0x44a199){const _0x185092=a0_0x2f9d,_0x53f3ff=_0x4cd6f4();while(!![]){try{const _0x27c877=parseInt(_0x185092(0x191))/0x1*(-parseInt(_0x185092(0x192))/0x2)+-parseInt(_0x185092(0x175))/0x3+-parseInt(_0x185092(0x171))/0x4+parseInt(_0x185092(0x17a))/0x5+parseInt(_0x185092(0x1a0))/0x6*(parseInt(_0x185092(0x188))/0x7)+parseInt(_0x185092(0x16a))/0x8+-parseInt(_0x185092(0x198))/0x9;if(_0x27c877===_0x44a199)break;else _0x53f3ff['push'](_0x53f3ff['shift']());}catch(_0x19170d){_0x53f3ff['push'](_0x53f3ff['shift']());}}}(a0_0x20d3,0x29379));function a0_0x20d3(){const _0x55c752=['xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','yNvPBgrlzxK','mZeZotaWufbtDenR','z2PfteC','DMfSDwu','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','nZe2ndLRue9KA0C','BgvUz3rO','C3rYAw5N','DhrSigLZihjLCxvPCMvKigfUzcbTDxn0igjLigf0igXLyxn0ideGkgLUihnLy29UzhmP','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','mtmZnJi1mgzxEeLXzG','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','Aw5MBW','x2DLDenVBMzSAwn0sw5MBW','igTLExmP','z2v0q2XPzw50','zxzHBa','BM93','rwnkA3G','Dgverwq','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','BxvAt0C','x3zHBgLKyxrLuMvSzwfZzuLUChv0','oNjSB2nRoG','mta3muzKr21crG','zw52','zxjYB3i','AxnbCNjHEq','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19LCNjVCG','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','B3DUzxi','DxvPza','ywnXDwLYzvjLC291CMnLtg9JA3m','mtvUq1fIveq','ndmXnJjdy1bHAfe','BwvZC2fNzq','x3jVBgXIywnRs2v5CW','lI4VlI4VDxrPBhmVCMvKAxmTy2XPzw50','Bg9JA19RzxLZigv4y2vLzhmGBwf4Aw11BsbVzIaXmdaGAxrLBxm','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','mJeZnZaWnuTYEhn1Ea','zxH0CMfJDe93BMvY','DMfSAwq','wM14CMW','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','lI4VlI4VDxrPBhmVBg9Nz2vY','Effmsxi','Dw5RBM93BG','mteWmtbQsMr4t0K','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','Bg9JA19RzxLZwW','ChvZAa','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','EMz5AwK','tg9JAYbHy3f1AxjLigzHAwXLzdOG','A2v5','DhrS','CMvSzwfZzvjLC291CMnLtg9JA3m','te9ds19srvnpvvjdrv9nqvHFvfrm','Cfnzsxi','zwPcyum','DhrSuMvTywLUAw5N','mJi3ndCWngfXBfHrCW','CMy6','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','A0j1AeG','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y'];a0_0x20d3=function(){return _0x55c752;};return a0_0x20d3();}const redisClient=require(a0_0x4e6c06(0x195)),{logger}=require(a0_0x4e6c06(0x19d)),{v4:uuidv4}=require(a0_0x4e6c06(0x18f));function getPrefix(){const _0x108e71=a0_0x4e6c06,_0x26bcbe=process[_0x108e71(0x189)]['RESTFORGE_PROJECT_NAME']||'default';return _0x108e71(0x16b)+_0x26bcbe+_0x108e71(0x187);}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x4e6c06(0x174);class ResourceLockManager{[a0_0x4e6c06(0x170)](_0x5e8e0a,_0x4da0bc,_0x4b6422){const _0x111b8e=a0_0x4e6c06,_0x16fe04={'teDEd':function(_0x28217d){return _0x28217d();}};return''+_0x16fe04[_0x111b8e(0x183)](getPrefix)+_0x5e8e0a+':'+_0x4da0bc+':'+_0x4b6422;}['generateToken'](_0x120426){const _0x91d8e0=a0_0x4e6c06,_0x5bbbc9={'kBuhH':function(_0x4851da){return _0x4851da();}};return _0x120426+':'+_0x5bbbc9[_0x91d8e0(0x16d)](uuidv4)+':'+Date[_0x91d8e0(0x181)]();}[a0_0x4e6c06(0x199)](_0x57de43){const _0x34e8ef={'znbBa':function(_0x2828dd,_0x3eed0a){return _0x2828dd>_0x3eed0a;}};if(!_0x57de43)return'unknown';const _0x2a0999=_0x57de43['indexOf'](':');return _0x34e8ef['znbBa'](_0x2a0999,0x0)?_0x57de43['substring'](0x0,_0x2a0999):_0x57de43;}['getMaxTTLSeconds'](){const _0x14f881=a0_0x4e6c06,_0x519c7c={'nRzxJ':function(_0x9bd038,_0x46358a,_0x4a11b7){return _0x9bd038(_0x46358a,_0x4a11b7);}};return _0x519c7c['nRzxJ'](parseInt,process[_0x14f881(0x189)][_0x14f881(0x166)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x4e6c06(0x190)]({resource:_0x424bb2,lockKeys:_0x49164b,ttl:_0xd5a8af,owner:_0x2122ac}){const _0x5374ee=a0_0x4e6c06,_0x29cce0={'XDvbS':function(_0x47986d,_0x263e34){return _0x47986d<_0x263e34;},'tlytq':_0x5374ee(0x17b),'zfyii':'resource_lock_acquired','QCqJy':_0x5374ee(0x18c),'Zmxrl':_0x5374ee(0x16e)},_0x4d3f18=this['_validateAcquireInput']({'resource':_0x424bb2,'lockKeys':_0x49164b,'ttl':_0xd5a8af,'owner':_0x2122ac});if(!_0x4d3f18[_0x5374ee(0x19a)])return{'success':![],'error':_0x4d3f18['error']};const _0x2bd968=this['getMaxTTLSeconds'](),_0x3482a8=Math['min'](_0xd5a8af,_0x2bd968),_0x351c2d=this['generateToken'](_0x2122ac),_0x2d2b5a=[];try{const _0x39e3aa=redisClient['getClient']();for(let _0x22d762=0x0;_0x29cce0['XDvbS'](_0x22d762,_0x49164b['length']);_0x22d762++){const {key:_0x46c473,value:_0x160221}=_0x49164b[_0x22d762],_0x505ece=this['buildKey'](_0x424bb2,_0x46c473,_0x160221),_0xeb73c9=await _0x39e3aa['set'](_0x505ece,_0x351c2d,'EX',_0x3482a8,'NX');if(_0xeb73c9==='OK')_0x2d2b5a[_0x5374ee(0x1a3)](_0x505ece);else{await this['_rollbackKeys'](_0x39e3aa,_0x2d2b5a,_0x351c2d);const _0xb6969b=await this['_getConflictInfo'](_0x39e3aa,_0x505ece);return logger['warn']({'event':_0x5374ee(0x1a1),'resource':_0x424bb2,'conflicting_key':{'key':_0x46c473,'value':_0x160221},'locked_by':_0xb6969b[_0x5374ee(0x18e)],'ttl_remaining':_0xb6969b['ttlRemaining'],'attempted_by':_0x2122ac},'Resource\x20lock\x20conflict\x20on\x20'+_0x424bb2+':'+_0x46c473+':'+_0x160221),{'success':![],'error':_0x29cce0['tlytq'],'data':{'conflicting_key':{'key':_0x46c473,'value':_0x160221},'locked_by':_0xb6969b['owner'],'ttl_remaining':_0xb6969b[_0x5374ee(0x169)]}};}}const _0x574f60=_0x49164b['map'](({key:_0xe924d5,value:_0x3d7d98})=>({'key':_0xe924d5,'value':_0x3d7d98,'lock_key':this[_0x5374ee(0x170)](_0x424bb2,_0xe924d5,_0x3d7d98)}));return logger[_0x5374ee(0x17c)]({'event':_0x29cce0[_0x5374ee(0x1a5)],'resource':_0x424bb2,'keys_count':_0x49164b['length'],'ttl':_0x3482a8,'owner':_0x2122ac},'Resource\x20lock\x20acquired:\x20'+_0x424bb2+'\x20('+_0x49164b[_0x5374ee(0x176)]+'\x20keys,\x20TTL:\x20'+_0x3482a8+'s)'),{'success':!![],'data':{'lock_token':_0x351c2d,'resource':_0x424bb2,'locked_keys':_0x574f60,'ttl':_0x3482a8,'owner':_0x2122ac,'acquired_at':new Date()['toISOString']()}};}catch(_0x192603){try{const _0x7e12b3=redisClient[_0x5374ee(0x17f)]();await this[_0x5374ee(0x194)](_0x7e12b3,_0x2d2b5a,_0x351c2d);}catch(_0x397816){logger[_0x5374ee(0x18a)]({'event':_0x29cce0['QCqJy'],'error':_0x397816[_0x5374ee(0x193)]},_0x29cce0[_0x5374ee(0x19b)]);}return logger[_0x5374ee(0x18a)]({'event':'resource_lock_acquire_error','resource':_0x424bb2,'owner':_0x2122ac,'error':_0x192603['message']},'Resource\x20lock\x20acquire\x20error:\x20'+_0x192603[_0x5374ee(0x193)]),{'success':![],'error':_0x5374ee(0x1a6)+_0x192603['message']};}}async[a0_0x4e6c06(0x165)]({resource:_0x46043b,lockKeys:_0x2f1c64,lockToken:_0x5027e7}){const _0x3b5746=a0_0x4e6c06,_0x249262={'dDFat':function(_0x1256d4,_0x340c2a){return _0x1256d4===_0x340c2a;}},_0x743f0d=this[_0x3b5746(0x186)]({'resource':_0x46043b,'lockKeys':_0x2f1c64,'lockToken':_0x5027e7});if(!_0x743f0d[_0x3b5746(0x19a)])return{'success':![],'error':_0x743f0d['error']};try{const _0x170676=redisClient[_0x3b5746(0x17f)]();let _0x470d2a=0x0;for(const {key:_0x249f52,value:_0xc45cc2}of _0x2f1c64){const _0x20772c=this['buildKey'](_0x46043b,_0x249f52,_0xc45cc2),_0x5a0774=await _0x170676['eval'](RELEASE_LUA_SCRIPT,0x1,_0x20772c,_0x5027e7);_0x249262['dDFat'](_0x5a0774,0x1)&&_0x470d2a++;}return logger['info']({'event':'resource_lock_released','resource':_0x46043b,'released_keys':_0x470d2a,'total_keys':_0x2f1c64['length'],'owner':this['extractOwner'](_0x5027e7)},_0x3b5746(0x16c)+_0x46043b+'\x20('+_0x470d2a+'/'+_0x2f1c64['length']+_0x3b5746(0x17e)),{'success':!![],'data':{'resource':_0x46043b,'released_keys':_0x470d2a,'total_keys':_0x2f1c64[_0x3b5746(0x176)]}};}catch(_0x177d3d){return logger[_0x3b5746(0x18a)]({'event':'resource_lock_release_error','resource':_0x46043b,'error':_0x177d3d[_0x3b5746(0x193)]},'Resource\x20lock\x20release\x20error:\x20'+_0x177d3d[_0x3b5746(0x193)]),{'success':![],'error':'Lock\x20release\x20failed:\x20'+_0x177d3d[_0x3b5746(0x193)]};}}async[a0_0x4e6c06(0x1a4)]({resource:_0x1e4d31,lockKeys:_0x2d3bb9}){const _0x3d0d0b=a0_0x4e6c06,_0x370302={'muZOG':function(_0x4f86a0,_0x71b57b){return _0x4f86a0===_0x71b57b;},'gjELG':function(_0x40523a,_0x15c597){return _0x40523a!==_0x15c597;},'pSYIr':function(_0x31daec,_0x29fd61){return _0x31daec>_0x29fd61;}};if(!_0x1e4d31||!Array[_0x3d0d0b(0x18b)](_0x2d3bb9)||_0x370302[_0x3d0d0b(0x185)](_0x2d3bb9['length'],0x0))return{'success':![],'error':_0x3d0d0b(0x197)};try{const _0x420621=redisClient['getClient'](),_0x11c765=[];for(const {key:_0x2e3f27,value:_0x4ccc40}of _0x2d3bb9){const _0x445daf=this['buildKey'](_0x1e4d31,_0x2e3f27,_0x4ccc40),[_0x4034a4,_0x7a85e2]=await Promise['all']([_0x420621['get'](_0x445daf),_0x420621[_0x3d0d0b(0x164)](_0x445daf)]),_0x1a8702=_0x370302[_0x3d0d0b(0x172)](_0x4034a4,null);_0x11c765['push']({'key':_0x2e3f27,'value':_0x4ccc40,'locked':_0x1a8702,'owner':_0x1a8702?this['extractOwner'](_0x4034a4):null,'ttl_remaining':_0x1a8702&&_0x370302[_0x3d0d0b(0x167)](_0x7a85e2,0x0)?_0x7a85e2:null});}return{'success':!![],'data':{'resource':_0x1e4d31,'keys':_0x11c765}};}catch(_0x5e9f27){return logger[_0x3d0d0b(0x18a)]({'event':'resource_lock_status_error','resource':_0x1e4d31,'error':_0x5e9f27[_0x3d0d0b(0x193)]},'Resource\x20lock\x20status\x20error:\x20'+_0x5e9f27['message']),{'success':![],'error':_0x3d0d0b(0x184)+_0x5e9f27[_0x3d0d0b(0x193)]};}}async['_rollbackKeys'](_0xa1a60f,_0x1bf40d,_0xda9aec){const _0x118b31=a0_0x4e6c06;for(const _0x17031b of _0x1bf40d){try{await _0xa1a60f[_0x118b31(0x180)](RELEASE_LUA_SCRIPT,0x1,_0x17031b,_0xda9aec);}catch(_0x3a0423){logger[_0x118b31(0x18a)]({'event':'resource_lock_rollback_key_error','key':_0x17031b,'error':_0x3a0423['message']},_0x118b31(0x179)+_0x17031b);}}}async[a0_0x4e6c06(0x17d)](_0x51417c,_0x5921bc){const _0x1dc8cb=a0_0x4e6c06;try{const [_0x4a9439,_0x39c85f]=await Promise['all']([_0x51417c['get'](_0x5921bc),_0x51417c[_0x1dc8cb(0x164)](_0x5921bc)]);return{'owner':_0x4a9439?this[_0x1dc8cb(0x199)](_0x4a9439):_0x1dc8cb(0x19f),'ttlRemaining':_0x39c85f>0x0?_0x39c85f:null};}catch{return{'owner':'unknown','ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x2ed77b,lockKeys:_0x3739e3,ttl:_0x3d05da,owner:_0xacb347}){const _0x5c2cb5=a0_0x4e6c06,_0x2a5cd2={'dnVDw':function(_0x336c88,_0x20a33b){return _0x336c88===_0x20a33b;},'ejBaC':function(_0x37d21b,_0xf7d416){return _0x37d21b!==_0xf7d416;},'vaAbp':'number','xQLIr':_0x5c2cb5(0x177),'JUMKn':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!_0x2ed77b||typeof _0x2ed77b!==_0x5c2cb5(0x177))return{'valid':![],'error':_0x5c2cb5(0x18d)};if(!Array[_0x5c2cb5(0x18b)](_0x3739e3)||_0x2a5cd2['dnVDw'](_0x3739e3['length'],0x0))return{'valid':![],'error':_0x5c2cb5(0x19c)};if(_0x3739e3[_0x5c2cb5(0x176)]>0x64)return{'valid':![],'error':_0x5c2cb5(0x196)};for(let _0x40a9ad=0x0;_0x40a9ad<_0x3739e3[_0x5c2cb5(0x176)];_0x40a9ad++){const _0x5cacdc=_0x3739e3[_0x40a9ad];if(!_0x5cacdc||!_0x5cacdc['key']||!_0x5cacdc[_0x5c2cb5(0x173)])return{'valid':![],'error':_0x5c2cb5(0x1a2)+_0x40a9ad+_0x5c2cb5(0x16f)};}if(!_0x3d05da||_0x2a5cd2[_0x5c2cb5(0x168)](typeof _0x3d05da,_0x2a5cd2['vaAbp'])||_0x3d05da<0x1)return{'valid':![],'error':_0x5c2cb5(0x178)};const _0x1049b9=this['getMaxTTLSeconds']();if(_0x3d05da>_0x1049b9)return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x1049b9+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0xacb347||typeof _0xacb347!==_0x2a5cd2[_0x5c2cb5(0x19e)])return{'valid':![],'error':_0x2a5cd2['JUMKn']};return{'valid':!![]};}[a0_0x4e6c06(0x186)]({resource:_0x5cc915,lockKeys:_0x239199,lockToken:_0x90c0c0}){const _0x5c12f5=a0_0x4e6c06,_0x289962={'yKWeT':function(_0x5528d2,_0x35303f){return _0x5528d2!==_0x35303f;},'EcJkx':'string','XiUtp':function(_0x52714d,_0x5793c4){return _0x52714d<_0x5793c4;},'nMGbW':function(_0x24ec66,_0x4fc7fb){return _0x24ec66!==_0x4fc7fb;}};if(!_0x5cc915||_0x289962['yKWeT'](typeof _0x5cc915,_0x289962[_0x5c12f5(0x182)]))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array['isArray'](_0x239199)||_0x239199[_0x5c12f5(0x176)]===0x0)return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x29adde=0x0;_0x289962['XiUtp'](_0x29adde,_0x239199['length']);_0x29adde++){const _0x4fb560=_0x239199[_0x29adde];if(!_0x4fb560||!_0x4fb560[_0x5c12f5(0x163)]||!_0x4fb560['value'])return{'valid':![],'error':'lock_keys['+_0x29adde+_0x5c12f5(0x16f)};}if(!_0x90c0c0||_0x289962['nMGbW'](typeof _0x90c0c0,_0x289962[_0x5c12f5(0x182)]))return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}module['exports']=new ResourceLockManager();
|
|
1
|
+
const a0_0x28107a=a0_0xb3a1;(function(_0x100d72,_0x245729){const _0x48a052=a0_0xb3a1,_0x1bc11d=_0x100d72();while(!![]){try{const _0x29b02a=parseInt(_0x48a052(0x99))/0x1+parseInt(_0x48a052(0xae))/0x2*(-parseInt(_0x48a052(0xca))/0x3)+parseInt(_0x48a052(0xbf))/0x4*(-parseInt(_0x48a052(0x95))/0x5)+parseInt(_0x48a052(0xa8))/0x6*(-parseInt(_0x48a052(0x97))/0x7)+parseInt(_0x48a052(0xc5))/0x8+-parseInt(_0x48a052(0xb1))/0x9+parseInt(_0x48a052(0xa6))/0xa;if(_0x29b02a===_0x245729)break;else _0x1bc11d['push'](_0x1bc11d['shift']());}catch(_0x4ecfa4){_0x1bc11d['push'](_0x1bc11d['shift']());}}}(a0_0x533e,0xd7aa9));const redisClient=require('../../utils/redis-client'),{logger}=require('../../utils/logger'),{v4:uuidv4}=require('uuid');function a0_0x533e(){const _0x41c9d7=['zw52','DMfSAwq','m1vlquP3zq','BNvTyMvY','C3vIC3rYAw5N','Bg9JA19RzxLZwW','DhrSuMvTywLUAw5N','zgHSsM8','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','BwLU','t1Dpyuq','ywnXDwLYzvjLC291CMnLtg9JA3m','BgvUz3rO','BwvZC2fNzq','t3rrCgy','EeTorhe','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','nuLjwxzHDq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mta4odqWovviDev0Da','ywXS','mti5nJm4owfXqwPSAq','Bunwu3y','AxnbCNjHEq','Bg5tD1G','z2v0twf4vfrmu2vJB25KCW','A2v5','x2DLDenVBMzSAwn0sw5MBW','z2v0','x3jVBgXIywnRs2v5CW','B3DUzxi','BM93','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','D3rgs2W','mtaZotyYmZbWsgPry00','ChvZAa','ndj6zuPkv3a','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','ENz5zLO','zxHWB3j0CW','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','mtCWmdC5ogT0qKDXAG','tg9JAYbYzwXLyxnLigzHAwXLzdOG','D2fYBG','ntKWmZi4owvbrunYwq','ywfrzNu','zxH0CMfJDe93BMvY','oNjSB2nRoG','u1PNzxi','BwfW','C3rYAw5N','igTLExmSifrutdOG','yNvPBgrlzxK','CMvSzwfZzvjLC291CMnLtg9JA3m','t3Pvu3K','z2v0q2XPzw50','Cgjtvhy','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','mtaZndm0ofnUB2L6rG','z2vUzxjHDgvuB2TLBG','te9ds19srvnpvvjdrv9nqvHFvfrm','zxjYB3i','DMfSDwu','x3zHBgLKyxrLqwnXDwLYzuLUChv0','mteYmduZodr1wunXz1C','s0XLsxa','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y'];a0_0x533e=function(){return _0x41c9d7;};return a0_0x533e();}function getPrefix(){const _0x47e15c=a0_0xb3a1,_0x26b3a5=process[_0x47e15c(0xc8)][_0x47e15c(0x96)]||'default';return'rf:'+_0x26b3a5+_0x47e15c(0xb4);}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT='\x0a\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20else\x0a\x20\x20\x20\x20return\x200\x0a\x20\x20end\x0a';class ResourceLockManager{[a0_0x28107a(0xb9)](_0x2a0cfc,_0x4b3c92,_0x13c9c0){const _0x55d13b={'lDVae':function(_0x167a43){return _0x167a43();}};return''+_0x55d13b['lDVae'](getPrefix)+_0x2a0cfc+':'+_0x4b3c92+':'+_0x13c9c0;}[a0_0x28107a(0xc0)](_0x11652c){const _0x590222=a0_0x28107a;return _0x11652c+':'+uuidv4()+':'+Date[_0x590222(0xa3)]();}['extractOwner'](_0x5e177a){const _0x52a521=a0_0x28107a;if(!_0x5e177a)return'unknown';const _0x482e92=_0x5e177a['indexOf'](':');return _0x482e92>0x0?_0x5e177a[_0x52a521(0xcc)](0x0,_0x482e92):_0x5e177a;}['getMaxTTLSeconds'](){const _0x2e9690=a0_0x28107a;return parseInt(process[_0x2e9690(0xc8)][_0x2e9690(0xc1)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x28107a(0x8f)]({resource:_0x35a405,lockKeys:_0x44f7b2,ttl:_0x1f585e,owner:_0x551449}){const _0x35d45c=a0_0x28107a,_0x59d2ef={'aaQfu':function(_0x4bed0b,_0x35f993){return _0x4bed0b<_0x35f993;},'KLeIp':function(_0x2f4f7d,_0x5bee1c){return _0x2f4f7d===_0x5bee1c;},'xKNDq':'resource_lock_conflict','mCVSv':'Resource\x20lock\x20conflict','qXATn':'resource_lock_acquired','dEMPp':'resource_lock_rollback_error','QQafv':'resource_lock_acquire_error'},_0x239cef=this[_0x35d45c(0xc4)]({'resource':_0x35a405,'lockKeys':_0x44f7b2,'ttl':_0x1f585e,'owner':_0x551449});if(!_0x239cef[_0x35d45c(0xc9)])return{'success':![],'error':_0x239cef['error']};const _0x231871=this[_0x35d45c(0x9d)](),_0x25b246=Math[_0x35d45c(0x8d)](_0x1f585e,_0x231871),_0x5082dd=this[_0x35d45c(0xc0)](_0x551449),_0x1790d2=[];try{const _0x22abdb=redisClient[_0x35d45c(0xbc)]();for(let _0x9a27d7=0x0;_0x59d2ef[_0x35d45c(0xb2)](_0x9a27d7,_0x44f7b2[_0x35d45c(0x90)]);_0x9a27d7++){const {key:_0x1d5f75,value:_0x184b04}=_0x44f7b2[_0x9a27d7],_0x22e045=this['buildKey'](_0x35a405,_0x1d5f75,_0x184b04),_0x3f4cb1=await _0x22abdb['set'](_0x22e045,_0x5082dd,'EX',_0x25b246,'NX');if(_0x59d2ef[_0x35d45c(0xc6)](_0x3f4cb1,'OK'))_0x1790d2[_0x35d45c(0xa7)](_0x22e045);else{await this[_0x35d45c(0xa1)](_0x22abdb,_0x1790d2,_0x5082dd);const _0x46b44d=await this['_getConflictInfo'](_0x22abdb,_0x22e045);return logger[_0x35d45c(0xb0)]({'event':_0x59d2ef[_0x35d45c(0x93)],'resource':_0x35a405,'conflicting_key':{'key':_0x1d5f75,'value':_0x184b04},'locked_by':_0x46b44d['owner'],'ttl_remaining':_0x46b44d[_0x35d45c(0x89)],'attempted_by':_0x551449},'Resource\x20lock\x20conflict\x20on\x20'+_0x35a405+':'+_0x1d5f75+':'+_0x184b04),{'success':![],'error':_0x59d2ef[_0x35d45c(0x9a)],'data':{'conflicting_key':{'key':_0x1d5f75,'value':_0x184b04},'locked_by':_0x46b44d[_0x35d45c(0xa2)],'ttl_remaining':_0x46b44d[_0x35d45c(0x89)]}};}}const _0x579eac=_0x44f7b2[_0x35d45c(0xb6)](({key:_0x25dd86,value:_0x2f00af})=>({'key':_0x25dd86,'value':_0x2f00af,'lock_key':this[_0x35d45c(0xb9)](_0x35a405,_0x25dd86,_0x2f00af)}));return logger['info']({'event':_0x59d2ef['qXATn'],'resource':_0x35a405,'keys_count':_0x44f7b2[_0x35d45c(0x90)],'ttl':_0x25b246,'owner':_0x551449},'Resource\x20lock\x20acquired:\x20'+_0x35a405+'\x20('+_0x44f7b2[_0x35d45c(0x90)]+_0x35d45c(0xb8)+_0x25b246+'s)'),{'success':!![],'data':{'lock_token':_0x5082dd,'resource':_0x35a405,'locked_keys':_0x579eac,'ttl':_0x25b246,'owner':_0x551449,'acquired_at':new Date()['toISOString']()}};}catch(_0x42ebd6){try{const _0x5a3e6e=redisClient[_0x35d45c(0xbc)]();await this[_0x35d45c(0xa1)](_0x5a3e6e,_0x1790d2,_0x5082dd);}catch(_0x73c22c){logger['error']({'event':_0x59d2ef['dEMPp'],'error':_0x73c22c['message']},_0x35d45c(0xa4));}return logger['error']({'event':_0x59d2ef['QQafv'],'resource':_0x35a405,'owner':_0x551449,'error':_0x42ebd6['message']},'Resource\x20lock\x20acquire\x20error:\x20'+_0x42ebd6['message']),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x42ebd6['message']};}}async[a0_0x28107a(0xba)]({resource:_0x31f68e,lockKeys:_0x4eff3c,lockToken:_0x42f1da}){const _0x38dcb4=a0_0x28107a,_0x51e94e={'skErc':'resource_lock_released'},_0x40a210=this['_validateReleaseInput']({'resource':_0x31f68e,'lockKeys':_0x4eff3c,'lockToken':_0x42f1da});if(!_0x40a210[_0x38dcb4(0xc9)])return{'success':![],'error':_0x40a210['error']};try{const _0x25c955=redisClient[_0x38dcb4(0xbc)]();let _0x4cfcc7=0x0;for(const {key:_0x1973ab,value:_0x2f1fda}of _0x4eff3c){const _0x5d5498=this[_0x38dcb4(0xb9)](_0x31f68e,_0x1973ab,_0x2f1fda),_0xb66793=await _0x25c955['eval'](RELEASE_LUA_SCRIPT,0x1,_0x5d5498,_0x42f1da);_0xb66793===0x1&&_0x4cfcc7++;}return logger['info']({'event':_0x51e94e['skErc'],'resource':_0x31f68e,'released_keys':_0x4cfcc7,'total_keys':_0x4eff3c['length'],'owner':this[_0x38dcb4(0xb3)](_0x42f1da)},_0x38dcb4(0xa9)+_0x31f68e+'\x20('+_0x4cfcc7+'/'+_0x4eff3c['length']+'\x20keys)'),{'success':!![],'data':{'resource':_0x31f68e,'released_keys':_0x4cfcc7,'total_keys':_0x4eff3c[_0x38dcb4(0x90)]}};}catch(_0x166fbc){return logger[_0x38dcb4(0xc2)]({'event':_0x38dcb4(0xc7),'resource':_0x31f68e,'error':_0x166fbc[_0x38dcb4(0x91)]},_0x38dcb4(0xac)+_0x166fbc['message']),{'success':![],'error':_0x38dcb4(0xaf)+_0x166fbc[_0x38dcb4(0x91)]};}}async['getResourceLockStatus']({resource:_0x2e096e,lockKeys:_0x5ea36a}){const _0x2b7c4c=a0_0x28107a,_0x4f574b={'OWOaD':'resource\x20and\x20lock_keys\x20are\x20required','HsHCM':function(_0x13a2f8,_0x4f14c6){return _0x13a2f8!==_0x4f14c6;},'QKpMT':function(_0x371bff,_0x110e62){return _0x371bff>_0x110e62;},'RQXke':'resource_lock_status_error'};if(!_0x2e096e||!Array['isArray'](_0x5ea36a)||_0x5ea36a[_0x2b7c4c(0x90)]===0x0)return{'success':![],'error':_0x4f574b[_0x2b7c4c(0x8e)]};try{const _0x12dd0d=redisClient['getClient'](),_0x4e4056=[];for(const {key:_0x5bbcb6,value:_0x128fd6}of _0x5ea36a){const _0x3ae2fb=this[_0x2b7c4c(0xb9)](_0x2e096e,_0x5bbcb6,_0x128fd6),[_0x39af6c,_0x49e7d6]=await Promise['all']([_0x12dd0d[_0x2b7c4c(0xa0)](_0x3ae2fb),_0x12dd0d['ttl'](_0x3ae2fb)]),_0x48ed27=_0x4f574b['HsHCM'](_0x39af6c,null);_0x4e4056[_0x2b7c4c(0xa7)]({'key':_0x5bbcb6,'value':_0x128fd6,'locked':_0x48ed27,'owner':_0x48ed27?this[_0x2b7c4c(0xb3)](_0x39af6c):null,'ttl_remaining':_0x48ed27&&_0x4f574b['QKpMT'](_0x49e7d6,0x0)?_0x49e7d6:null});}return{'success':!![],'data':{'resource':_0x2e096e,'keys':_0x4e4056}};}catch(_0x3fa23b){return logger[_0x2b7c4c(0xc2)]({'event':_0x4f574b['RQXke'],'resource':_0x2e096e,'error':_0x3fa23b['message']},_0x2b7c4c(0x94)+_0x3fa23b[_0x2b7c4c(0x91)]),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0x3fa23b[_0x2b7c4c(0x91)]};}}async['_rollbackKeys'](_0x3edc78,_0x1f408d,_0x4dce44){const _0x513560=a0_0x28107a;for(const _0x333dda of _0x1f408d){try{await _0x3edc78['eval'](RELEASE_LUA_SCRIPT,0x1,_0x333dda,_0x4dce44);}catch(_0x6f8ac8){logger[_0x513560(0xc2)]({'event':'resource_lock_rollback_key_error','key':_0x333dda,'error':_0x6f8ac8[_0x513560(0x91)]},_0x513560(0xbe)+_0x333dda);}}}async[a0_0x28107a(0x9f)](_0x372a98,_0x592a90){const _0x2a2545=a0_0x28107a,_0x41c039={'SZger':'unknown'};try{const [_0x2b9985,_0x5a7dbe]=await Promise[_0x2a2545(0x98)]([_0x372a98['get'](_0x592a90),_0x372a98['ttl'](_0x592a90)]);return{'owner':_0x2b9985?this[_0x2a2545(0xb3)](_0x2b9985):_0x41c039[_0x2a2545(0xb5)],'ttlRemaining':_0x5a7dbe>0x0?_0x5a7dbe:null};}catch{return{'owner':_0x41c039['SZger'],'ttlRemaining':null};}}[a0_0x28107a(0xc4)]({resource:_0x3d94c4,lockKeys:_0x479004,ttl:_0x171d73,owner:_0x3697e4}){const _0x8440dc=a0_0x28107a,_0x542b7f={'OzUSy':_0x8440dc(0x8c),'wtFKl':function(_0x3feabf,_0x2950ea){return _0x3feabf>_0x2950ea;},'sgRgV':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items','BTqBx':function(_0x1b0157,_0x5c5a03){return _0x1b0157<_0x5c5a03;},'zvyfZ':_0x8440dc(0xcb),'OtQpf':function(_0x5def36,_0x21bdb3){return _0x5def36<_0x21bdb3;},'dhlJo':function(_0x5ef30b,_0x223910){return _0x5ef30b!==_0x223910;},'sknuj':_0x8440dc(0xb7),'KGeVV':_0x8440dc(0x8b)};if(!_0x3d94c4||typeof _0x3d94c4!=='string')return{'valid':![],'error':_0x542b7f[_0x8440dc(0xbb)]};if(!Array[_0x8440dc(0x9b)](_0x479004)||_0x479004[_0x8440dc(0x90)]===0x0)return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};if(_0x542b7f[_0x8440dc(0xa5)](_0x479004['length'],0x64))return{'valid':![],'error':_0x542b7f['sgRgV']};for(let _0x18ed9a=0x0;_0x542b7f['BTqBx'](_0x18ed9a,_0x479004['length']);_0x18ed9a++){const _0x7ac4e0=_0x479004[_0x18ed9a];if(!_0x7ac4e0||!_0x7ac4e0[_0x8440dc(0x9e)]||!_0x7ac4e0[_0x8440dc(0xc3)])return{'valid':![],'error':'lock_keys['+_0x18ed9a+_0x8440dc(0xad)};}if(!_0x171d73||typeof _0x171d73!==_0x542b7f[_0x8440dc(0xaa)]||_0x542b7f[_0x8440dc(0x92)](_0x171d73,0x1))return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x40e459=this[_0x8440dc(0x9d)]();if(_0x171d73>_0x40e459)return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x40e459+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x3697e4||_0x542b7f[_0x8440dc(0x8a)](typeof _0x3697e4,_0x542b7f['sknuj']))return{'valid':![],'error':_0x542b7f['KGeVV']};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x14cd4d,lockKeys:_0x3e7c62,lockToken:_0x1615c9}){const _0x2cbe7a=a0_0x28107a,_0x417562={'IAYAp':function(_0x3f9202,_0x23f00f){return _0x3f9202!==_0x23f00f;},'lnSwX':_0x2cbe7a(0xb7),'pbSTv':function(_0x47dd34,_0x99ac0a){return _0x47dd34===_0x99ac0a;},'lwDVt':function(_0x186a63,_0x219acb){return _0x186a63<_0x219acb;}};if(!_0x14cd4d||_0x417562['IAYAp'](typeof _0x14cd4d,_0x417562['lnSwX']))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array[_0x2cbe7a(0x9b)](_0x3e7c62)||_0x417562[_0x2cbe7a(0xbd)](_0x3e7c62['length'],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x34fa34=0x0;_0x417562['lwDVt'](_0x34fa34,_0x3e7c62['length']);_0x34fa34++){const _0x618a17=_0x3e7c62[_0x34fa34];if(!_0x618a17||!_0x618a17['key']||!_0x618a17[_0x2cbe7a(0xc3)])return{'valid':![],'error':_0x2cbe7a(0xcd)+_0x34fa34+_0x2cbe7a(0xad)};}if(!_0x1615c9||_0x417562['IAYAp'](typeof _0x1615c9,_0x417562[_0x2cbe7a(0x9c)]))return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}function a0_0xb3a1(_0x1f392f,_0x2ea5bd){_0x1f392f=_0x1f392f-0x89;const _0x533eeb=a0_0x533e();let _0xb3a123=_0x533eeb[_0x1f392f];if(a0_0xb3a1['kAasdX']===undefined){var _0x44192a=function(_0x1d0092){const _0x4bb980='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xecd9fa='',_0x6ebfac='';for(let _0x201113=0x0,_0x5709f7,_0x5a1cf3,_0x1a39b2=0x0;_0x5a1cf3=_0x1d0092['charAt'](_0x1a39b2++);~_0x5a1cf3&&(_0x5709f7=_0x201113%0x4?_0x5709f7*0x40+_0x5a1cf3:_0x5a1cf3,_0x201113++%0x4)?_0xecd9fa+=String['fromCharCode'](0xff&_0x5709f7>>(-0x2*_0x201113&0x6)):0x0){_0x5a1cf3=_0x4bb980['indexOf'](_0x5a1cf3);}for(let _0x2f0d94=0x0,_0x539fb2=_0xecd9fa['length'];_0x2f0d94<_0x539fb2;_0x2f0d94++){_0x6ebfac+='%'+('00'+_0xecd9fa['charCodeAt'](_0x2f0d94)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x6ebfac);};a0_0xb3a1['BreQAp']=_0x44192a,a0_0xb3a1['nTOnVn']={},a0_0xb3a1['kAasdX']=!![];}const _0x146e14=_0x533eeb[0x0],_0x42fc8a=_0x1f392f+_0x146e14,_0x8338f3=a0_0xb3a1['nTOnVn'][_0x42fc8a];return!_0x8338f3?(_0xb3a123=a0_0xb3a1['BreQAp'](_0xb3a123),a0_0xb3a1['nTOnVn'][_0x42fc8a]=_0xb3a123):_0xb3a123=_0x8338f3,_0xb3a123;}module[a0_0x28107a(0xab)]=new ResourceLockManager();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x2d6b18=a0_0x30a7;(function(_0x4ff80d,_0x329235){const _0x29514e=a0_0x30a7,_0x1cad6e=_0x4ff80d();while(!![]){try{const _0x365c36=-parseInt(_0x29514e(0x99))/0x1+-parseInt(_0x29514e(0xb4))/0x2+-parseInt(_0x29514e(0xa1))/0x3+-parseInt(_0x29514e(0xde))/0x4+-parseInt(_0x29514e(0xd6))/0x5+-parseInt(_0x29514e(0xba))/0x6+parseInt(_0x29514e(0xc6))/0x7;if(_0x365c36===_0x329235)break;else _0x1cad6e['push'](_0x1cad6e['shift']());}catch(_0x3fcf2b){_0x1cad6e['push'](_0x1cad6e['shift']());}}}(a0_0xc253,0x710a0));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require(a0_0x2d6b18(0xc5));class KafkaConsumerService{constructor(){const _0x4e8832=a0_0x2d6b18;this[_0x4e8832(0x96)]=null,this['consumer']=null,this[_0x4e8832(0x9f)]=![],this['isInitializing']=![],this['isRunning']=![],this[_0x4e8832(0x83)]=![],this[_0x4e8832(0xa0)]=null,this['subscribedTopics']=[],this['groupId']=null,this['messageHandler']=null,this[_0x4e8832(0xb5)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}['getConfig'](){const _0x319c80=a0_0x2d6b18,_0xdc603={'NEufQ':'true','ltnho':'default','PLqGV':function(_0x5162da,_0x52a958){return _0x5162da(_0x52a958);},'PUyrl':_0x319c80(0xe3),'GVyGg':function(_0x471911,_0x54d0fe){return _0x471911(_0x54d0fe);},'VuFfJ':function(_0x5501cd,_0x385565){return _0x5501cd(_0x385565);},'vLUTF':'5000','xcqdL':_0x319c80(0x80),'qwwRp':function(_0x4a5007,_0x244b6c){return _0x4a5007(_0x244b6c);},'MXxkX':'30000'};return{'enabled':process[_0x319c80(0x9a)]['KAFKA_ENABLED']===_0xdc603[_0x319c80(0xbc)],'brokers':(process['env'][_0x319c80(0x8a)]||'localhost:9092')['split'](','),'clientId':process['env'][_0x319c80(0x75)]||_0x319c80(0x8d)+(process[_0x319c80(0x9a)]['RESTFORGE_PROJECT_NAME']||_0xdc603['ltnho'])+'-consumer','connectionTimeout':_0xdc603['PLqGV'](parseInt,process['env']['KAFKA_CONNECTION_TIMEOUT']||_0x319c80(0xe3)),'requestTimeout':parseInt(process['env']['KAFKA_REQUEST_TIMEOUT']||_0x319c80(0xd0)),'sessionTimeout':_0xdc603['PLqGV'](parseInt,process[_0x319c80(0x9a)]['KAFKA_SESSION_TIMEOUT']||_0x319c80(0x87)),'heartbeatInterval':_0xdc603['PLqGV'](parseInt,process['env']['KAFKA_HEARTBEAT_INTERVAL']||_0xdc603['PUyrl']),'maxBytesPerPartition':_0xdc603['GVyGg'](parseInt,process[_0x319c80(0x9a)][_0x319c80(0x9b)]||'1048576'),'autoCommit':process['env']['KAFKA_AUTO_COMMIT']==='true','autoCommitInterval':_0xdc603['VuFfJ'](parseInt,process['env']['KAFKA_AUTO_COMMIT_INTERVAL']||_0xdc603[_0x319c80(0xc7)]),'retryAttempts':parseInt(process[_0x319c80(0x9a)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process[_0x319c80(0x9a)][_0x319c80(0xa5)]||_0xdc603['xcqdL']),'retryMaxDelay':_0xdc603[_0x319c80(0x89)](parseInt,process['env'][_0x319c80(0xb9)]||_0xdc603[_0x319c80(0xaf)]),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x319c80(0x6e)};}['getLogLevel'](_0x4258f4){const _0x497c82=a0_0x2d6b18,_0x3dfb12={'nothing':logLevel[_0x497c82(0x73)],'error':logLevel[_0x497c82(0xdd)],'warn':logLevel[_0x497c82(0xca)],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x3dfb12[_0x4258f4['toLowerCase']()]||logLevel[_0x497c82(0xca)];}async['initialize'](_0x3a8e13={}){const _0xaadbcc=a0_0x2d6b18,_0x23308d={'nXVsX':_0xaadbcc(0xc0),'mXMzK':function(_0x543307,_0x434777){return _0x543307(_0x434777);}},_0x37c539=this['getConfig']();if(!_0x37c539[_0xaadbcc(0x85)])return console['log']('[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'),![];if(this[_0xaadbcc(0x9f)])return!![];if(this['isInitializing']&&this['connectionPromise'])return this['connectionPromise'];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x53506e=>{const _0x52dbc1=_0xaadbcc;try{let _0x15fe08=undefined;process[_0x52dbc1(0x9a)][_0x52dbc1(0x97)]===_0x52dbc1(0xc2)&&(_0x15fe08=!![]);let _0x1cc33c=undefined;process[_0x52dbc1(0x9a)]['KAFKA_SASL_MECHANISM']&&(_0x1cc33c={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process[_0x52dbc1(0x9a)][_0x52dbc1(0x8b)]||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x3a8e13[_0x52dbc1(0xdb)]||_0x37c539['clientId'],'brokers':_0x37c539['brokers'],'connectionTimeout':_0x37c539['connectionTimeout'],'requestTimeout':_0x37c539[_0x52dbc1(0x7e)],'logLevel':this['getLogLevel'](_0x37c539[_0x52dbc1(0x88)]),'ssl':_0x15fe08,'sasl':_0x1cc33c,'retry':{'initialRetryTime':_0x37c539['retryDelay'],'retries':_0x37c539[_0x52dbc1(0x68)],'maxRetryTime':_0x37c539[_0x52dbc1(0xb3)]}}),this['groupId']=_0x3a8e13[_0x52dbc1(0x79)]||'restforge-'+(process['env']['RESTFORGE_PROJECT_NAME']||_0x23308d[_0x52dbc1(0xbf)])+_0x52dbc1(0xab),this['consumer']=this[_0x52dbc1(0x96)][_0x52dbc1(0xe4)]({'groupId':this['groupId'],'sessionTimeout':_0x37c539['sessionTimeout'],'heartbeatInterval':_0x37c539[_0x52dbc1(0x6b)],'maxBytesPerPartition':_0x37c539[_0x52dbc1(0xdf)],'allowAutoTopicCreation':![]}),await this['consumer']['connect'](),this[_0x52dbc1(0x9f)]=!![],console[_0x52dbc1(0x69)](_0x52dbc1(0x7f)+_0x37c539[_0x52dbc1(0x8f)][_0x52dbc1(0x9e)](',\x20')+'\x20(groupId:\x20'+this[_0x52dbc1(0x79)]+')'),this['setupEventHandlers'](),_0x53506e(!![]);}catch(_0x48cfa8){console[_0x52dbc1(0x6a)](_0x52dbc1(0xd7)+_0x48cfa8['message']),this[_0x52dbc1(0x9f)]=![],_0x23308d[_0x52dbc1(0xb0)](_0x53506e,![]);}finally{this['isInitializing']=![];}}),this[_0xaadbcc(0xa0)];}[a0_0x2d6b18(0xa2)](){const _0x220be2=a0_0x2d6b18,_0x8f90f1={'XUVLI':'[KafkaConsumer]\x20Consumer\x20disconnected','mkiGX':_0x220be2(0xc9),'AFTpW':'[KafkaConsumer]\x20Consumer\x20rebalancing...','MGYwY':'consumer.disconnect','wfDzf':_0x220be2(0xe2),'fCDLU':_0x220be2(0x70)};if(!this['consumer'])return;this['consumer']['on'](_0x8f90f1['MGYwY'],()=>{const _0x1e9815=_0x220be2;console[_0x1e9815(0x69)](_0x8f90f1[_0x1e9815(0xd9)]),this['isConnected']=![],this['isRunning']=![];}),this['consumer']['on'](_0x220be2(0xcf),()=>{const _0x19a47a=_0x220be2;console[_0x19a47a(0x69)](_0x8f90f1['mkiGX']),this[_0x19a47a(0xb7)]=![];}),this['consumer']['on'](_0x8f90f1['wfDzf'],_0x1a1a7b=>{const _0x2e00c6=_0x220be2;console[_0x2e00c6(0x6a)](_0x2e00c6(0xe0)+_0x1a1a7b[_0x2e00c6(0xbe)][_0x2e00c6(0x6a)][_0x2e00c6(0x98)]),this[_0x2e00c6(0xb7)]=![];}),this[_0x220be2(0xe4)]['on'](_0x8f90f1[_0x220be2(0xa9)],()=>{const _0x5bd4bc=_0x220be2;console[_0x5bd4bc(0x69)](_0x8f90f1[_0x5bd4bc(0xc3)]);});}async[a0_0x2d6b18(0xc8)](_0x52ea03,_0x4af2be=![]){const _0x548b4f=a0_0x2d6b18,_0x556a1d={'cMQGL':_0x548b4f(0x74)};if(!this['isConnected'])return console[_0x548b4f(0x6a)](_0x556a1d['cMQGL']),![];try{const _0x1fa03b=Array['isArray'](_0x52ea03)?_0x52ea03:[_0x52ea03];for(const _0x574d57 of _0x1fa03b){await this[_0x548b4f(0xe4)][_0x548b4f(0xc8)]({'topic':_0x574d57,'fromBeginning':_0x4af2be}),console[_0x548b4f(0x69)]('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x574d57+'\x20(fromBeginning:\x20'+_0x4af2be+')');}return this['subscribedTopics']=[...new Set([...this[_0x548b4f(0x93)],..._0x1fa03b])],!![];}catch(_0x555620){return console['error'](_0x548b4f(0x7a)+_0x555620[_0x548b4f(0x98)]),![];}}async['startConsuming'](_0x29a74d,_0x48cb34={}){const _0x56851c=a0_0x2d6b18,_0x24fdd7={'mmLNu':_0x56851c(0x7d)};if(!this[_0x56851c(0x9f)])return console[_0x56851c(0x6a)](_0x24fdd7[_0x56851c(0x7b)]),![];if(this['isRunning'])return console['log'](_0x56851c(0xd5)),!![];const _0x5d325c=this['getConfig']();this['messageHandler']=_0x29a74d;try{return this['metrics'][_0x56851c(0x76)]=new Date(),await this['consumer'][_0x56851c(0xcd)]({'autoCommit':_0x48cb34['autoCommit']!==undefined?_0x48cb34[_0x56851c(0xda)]:_0x5d325c['autoCommit'],'autoCommitInterval':_0x5d325c[_0x56851c(0xb6)],'eachMessage':async({topic:_0x2c28e8,partition:_0x1f7e59,message:_0x2857a6,heartbeat:_0x202ed0})=>{const _0x22e4f8=_0x56851c,_0x2cf764=Date[_0x22e4f8(0xaa)]();this['metrics']['messagesReceived']++,this['metrics']['lastMessageTime']=new Date();try{const _0x5b783f=_0x2857a6['value']?_0x2857a6[_0x22e4f8(0xc1)][_0x22e4f8(0x71)]():null;let _0x44e3ad=null;try{_0x44e3ad=_0x5b783f?JSON[_0x22e4f8(0x91)](_0x5b783f):null;}catch(_0xe5913b){_0x44e3ad=_0x5b783f;}const _0x58297d={'topic':_0x2c28e8,'partition':_0x1f7e59,'offset':_0x2857a6[_0x22e4f8(0xac)],'key':_0x2857a6['key']?_0x2857a6['key'][_0x22e4f8(0x71)]():null,'headers':this[_0x22e4f8(0x8c)](_0x2857a6[_0x22e4f8(0x72)]),'timestamp':_0x2857a6[_0x22e4f8(0xad)],'value':_0x44e3ad,'raw':_0x5b783f};this[_0x22e4f8(0x6f)]&&await this['messageHandler'](_0x58297d);!_0x5d325c['autoCommit']&&await this['consumer']['commitOffsets']([{'topic':_0x2c28e8,'partition':_0x1f7e59,'offset':(parseInt(_0x2857a6[_0x22e4f8(0xac)])+0x1)['toString']()}]);this[_0x22e4f8(0xb5)][_0x22e4f8(0x90)]++;const _0x50faf6=Date['now']()-_0x2cf764;this['metrics'][_0x22e4f8(0x78)][_0x22e4f8(0x82)](_0x50faf6),this[_0x22e4f8(0xb5)]['processingTimes']['length']>0x64&&this['metrics']['processingTimes']['shift'](),await _0x202ed0();}catch(_0x1c4e29){this['metrics'][_0x22e4f8(0xae)]++,console['error'](_0x22e4f8(0x77)+_0x1c4e29[_0x22e4f8(0x98)]);throw _0x1c4e29;}}}),this[_0x56851c(0xb7)]=!![],console['log']('[KafkaConsumer]\x20Started\x20consuming\x20from\x20topics:\x20'+this['subscribedTopics'][_0x56851c(0x9e)](',\x20')),!![];}catch(_0x4f49dd){return console[_0x56851c(0x6a)]('[KafkaConsumer]\x20Start\x20consuming\x20error:\x20'+_0x4f49dd[_0x56851c(0x98)]),![];}}[a0_0x2d6b18(0x8c)](_0xf1381f){if(!_0xf1381f)return{};const _0x1045e5={};for(const [_0x20597c,_0x1d2270]of Object['entries'](_0xf1381f)){_0x1045e5[_0x20597c]=_0x1d2270?_0x1d2270['toString']():null;}return _0x1045e5;}async[a0_0x2d6b18(0x84)](){const _0x333804=a0_0x2d6b18,_0x14aaa7={'eGQRg':_0x333804(0xa8),'JUztI':'[KafkaConsumer]\x20Consumer\x20paused'};if(!this[_0x333804(0x9f)]||!this['isRunning'])return console['log'](_0x333804(0xdc)),![];if(this[_0x333804(0x83)])return console[_0x333804(0x69)](_0x14aaa7['eGQRg']),!![];try{const _0x585015=this['subscribedTopics'][_0x333804(0x9d)](_0x33c8a7=>({'topic':_0x33c8a7}));return this['consumer'][_0x333804(0x84)](_0x585015),this[_0x333804(0x83)]=!![],console[_0x333804(0x69)](_0x14aaa7[_0x333804(0xb2)]),!![];}catch(_0x1b0b58){return console[_0x333804(0x6a)]('[KafkaConsumer]\x20Pause\x20error:\x20'+_0x1b0b58['message']),![];}}async[a0_0x2d6b18(0xa7)](){const _0x5da323=a0_0x2d6b18,_0x32d39c={'GxmSM':_0x5da323(0x7c)};if(!this[_0x5da323(0x9f)]||!this['isRunning'])return console['log'](_0x5da323(0xe1)),![];if(!this[_0x5da323(0x83)])return console[_0x5da323(0x69)](_0x32d39c[_0x5da323(0xbb)]),!![];try{const _0x64c71f=this['subscribedTopics']['map'](_0x313fac=>({'topic':_0x313fac}));return this[_0x5da323(0xe4)]['resume'](_0x64c71f),this['isPaused']=![],console[_0x5da323(0x69)](_0x5da323(0x9c)),!![];}catch(_0x426f61){return console['error']('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x426f61[_0x5da323(0x98)]),![];}}async[a0_0x2d6b18(0xcb)](){const _0x2e964a=a0_0x2d6b18,_0x33ccb8={'rwaPs':_0x2e964a(0xb8)};if(!this[_0x2e964a(0x9f)])return console[_0x2e964a(0x69)](_0x33ccb8[_0x2e964a(0xbd)]),!![];try{return this[_0x2e964a(0xe4)]&&(await this[_0x2e964a(0xe4)][_0x2e964a(0xcb)](),await this['consumer'][_0x2e964a(0xd8)]()),this[_0x2e964a(0x9f)]=![],this['isRunning']=![],this[_0x2e964a(0x83)]=![],console['log'](_0x2e964a(0xcc)),!![];}catch(_0x1aea5a){return console[_0x2e964a(0x6a)](_0x2e964a(0x6c)+_0x1aea5a[_0x2e964a(0x98)]),![];}}async[a0_0x2d6b18(0xc4)](_0x3dc2d6,_0x10150d,_0x438476){const _0x3b8465=a0_0x2d6b18,_0x3bb2be={'KXXgO':'[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'};if(!this[_0x3b8465(0x9f)])return console['error'](_0x3bb2be[_0x3b8465(0x86)]),![];try{return this[_0x3b8465(0xe4)][_0x3b8465(0x6d)]({'topic':_0x3dc2d6,'partition':_0x10150d,'offset':_0x438476[_0x3b8465(0x71)]()}),console['log']('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x438476+_0x3b8465(0xb1)+_0x3dc2d6+':'+_0x10150d),!![];}catch(_0x3cb613){return console[_0x3b8465(0x6a)]('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x3cb613[_0x3b8465(0x98)]),![];}}[a0_0x2d6b18(0x8e)](){const _0x34be1a=a0_0x2d6b18,_0x567eea=this['getConfig']();return{'enabled':_0x567eea['enabled'],'connected':this[_0x34be1a(0x9f)],'running':this['isRunning'],'paused':this['isPaused'],'brokers':_0x567eea['brokers'],'clientId':_0x567eea[_0x34be1a(0xdb)],'groupId':this[_0x34be1a(0x79)],'subscribedTopics':this['subscribedTopics']};}['getMetrics'](){const _0x4a059a=a0_0x2d6b18,_0x40620d={'ufssR':function(_0xb77c8c,_0x34151f){return _0xb77c8c>_0x34151f;},'xhdBo':function(_0x1caca2,_0xb0a8b7){return _0x1caca2+_0xb0a8b7;},'uJdoR':function(_0x352bbb,_0x15f372){return _0x352bbb/_0x15f372;},'IULAP':function(_0x20e127,_0x40b6c4){return _0x20e127/_0x40b6c4;},'qNdqi':function(_0x3cae0c,_0x3d32e6){return _0x3cae0c-_0x3d32e6;},'SbFsk':function(_0x519766,_0x412044){return _0x519766+_0x412044;}},_0x504685=this['metrics']['processingTimes'][_0x4a059a(0xa6)]>0x0?this[_0x4a059a(0xb5)][_0x4a059a(0x78)][_0x4a059a(0xd2)]((_0x18dc54,_0x48a2f9)=>_0x18dc54+_0x48a2f9,0x0)/this['metrics']['processingTimes'][_0x4a059a(0xa6)]:0x0,_0x221b00=this[_0x4a059a(0xb5)]['processingTimes'][_0x4a059a(0xa6)]>0x0?Math['min'](...this['metrics'][_0x4a059a(0x78)]):0x0,_0x9489c=_0x40620d['ufssR'](this[_0x4a059a(0xb5)][_0x4a059a(0x78)][_0x4a059a(0xa6)],0x0)?Math[_0x4a059a(0x94)](...this['metrics']['processingTimes']):0x0;return{'messagesReceived':this[_0x4a059a(0xb5)][_0x4a059a(0xd3)],'messagesProcessed':this['metrics']['messagesProcessed'],'messagesFailed':this[_0x4a059a(0xb5)]['messagesFailed'],'successRate':_0x40620d['ufssR'](this['metrics'][_0x4a059a(0xd3)],0x0)?_0x40620d['xhdBo']((_0x40620d['uJdoR'](this[_0x4a059a(0xb5)][_0x4a059a(0x90)],this[_0x4a059a(0xb5)]['messagesReceived'])*0x64)[_0x4a059a(0xa3)](0x2),'%'):'0%','lastMessageTime':this[_0x4a059a(0xb5)][_0x4a059a(0x92)],'startTime':this['metrics']['startTime'],'uptime':this['metrics']['startTime']?_0x40620d[_0x4a059a(0xce)](Math[_0x4a059a(0xd4)](_0x40620d[_0x4a059a(0xd1)](_0x40620d[_0x4a059a(0x81)](Date['now'](),this['metrics']['startTime'][_0x4a059a(0x95)]()),0x3e8)),'s'):'0s','processingTime':{'avg':_0x40620d['SbFsk'](Math['round'](_0x504685),'ms'),'min':_0x221b00+'ms','max':_0x40620d[_0x4a059a(0xce)](_0x9489c,'ms')}};}['resetMetrics'](){this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console['log']('[KafkaConsumer]\x20Metrics\x20reset');}async[a0_0x2d6b18(0xa4)](){const _0x2f6139=a0_0x2d6b18;await this[_0x2f6139(0xcb)]();}}function a0_0xc253(){const _0x153013=['DgLTzxn0yw1W','BwvZC2fNzxngywLSzwq','tvH4A1G','BvHnEKS','ig9Uia','sLv6DeK','CMv0CNLnyxHezwXHEq','odq2nZK2C0XIB0jL','Bwv0CMLJCW','yxv0B0nVBw1PDeLUDgvYDMfS','AxnsDw5UAw5N','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','s0fgs0fFuKvuuLLFtufyx0rftefz','mJC1ndC1mgrMqwrcwa','r3HTu00','tKv1zLe','CNDHuhm','Cgf5Bg9Hza','BLHwC1G','zgvMyxvSDa','DMfSDwu','Dhj1zq','quzuCfC','C2vLA1rVt2zMC2v0','DxvPza','mJm2nZK0nZriqxjsvfy','DKXvvey','C3vIC2nYAwjL','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','v0fstG','C3rVCa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwqGyw5KigrPC2nVBM5Ly3rLza','CNvU','EgHKqM8','y29UC3vTzxiUC3rVCa','mJuWmda','svvmqva','CMvKDwnL','BwvZC2fNzxnszwnLAxzLza','zMXVB3i','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','mJaZnJeWnufJvwLvCG','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','zgLZy29UBMvJDa','wfvwteK','yxv0B0nVBw1PDa','y2XPzw50swq','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','rvjst1i','mJaYmtCXmLDkAMjXEa','Bwf4qNL0zxnqzxjqyxj0AxrPB24','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignYyxnOzwq6ia','w0THzMTHq29UC3vTzxjDienHBM5VDcbYzxn1BwuGlsbJB25ZDw1LCIbUB3qGCNvUBMLUzW','y29UC3vTzxiUy3jHC2G','mZaWma','y29UC3vTzxi','CMv0CNLbDhrLBxb0CW','Bg9N','zxjYB3i','AgvHCNrIzwf0sw50zxj2ywW','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','C2vLAW','D2fYBG','BwvZC2fNzuHHBMrSzxi','y29UC3vTzxiUCMvIywXHBMnPBMC','Dg9tDhjPBMC','AgvHzgvYCW','tK9useLorW','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','s0fgs0fFq0Xjru5ux0Le','C3rHCNruAw1L','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','ChjVy2vZC2LUz1rPBwvZ','z3jVDxbjza','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','Bw1mtNu','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','CMvXDwvZDfrPBwvVDxq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignVBM5Ly3rLzcb0BYbICM9RzxjZoIa','mtaWma','Cu5KCwK','ChvZAa','AxnqyxvZzwq','Cgf1C2u','zw5HyMXLza','s1Hyz08','mZaWmda','Bg9Ntgv2zwW','CxD3uNa','s0fgs0fFqLjps0vsuW','s0fgs0fFu0fttf9vu0vstKfnrq','CgfYC2vizwfKzxjZ','CMvZDgzVCMDLlq','z2v0u3rHDhvZ','yNjVA2vYCW','BwvZC2fNzxnqCM9JzxnZzwq','CgfYC2u','BgfZDe1LC3nHz2vuAw1L','C3vIC2nYAwjLzfrVCgLJCW','Bwf4','z2v0vgLTzq','A2fMA2e','s0fgs0fFu1nm','BwvZC2fNzq','nJq0ndGYDeXyBu9q','zw52','s0fgs0fFtufyx0jzvevtx1bfuL9qqvjusvrjt04','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','BwfW','AM9PBG','AxndB25Uzwn0zwq','y29UBMvJDgLVBLbYB21PC2u','mtq0mdm2mePjDNfqEa','C2v0DxbfDMvUDeHHBMrSzxjZ','Dg9gAxHLza','y2XVC2u','s0fgs0fFuKvuuLLFrevmqvK','BgvUz3rO','CMvZDw1L','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','zKnetfu','BM93','lwnVBNn1BwvYlwDYB3vW','B2zMC2v0'];a0_0xc253=function(){return _0x153013;};return a0_0xc253();}let instance=null;function a0_0x30a7(_0x49511f,_0x5b54cf){_0x49511f=_0x49511f-0x68;const _0xc2530b=a0_0xc253();let _0x30a768=_0xc2530b[_0x49511f];if(a0_0x30a7['CWGaWe']===undefined){var _0x1c2214=function(_0x54e35c){const _0x14d2fe='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x47276b='',_0x6e7fbf='';for(let _0x4d9d67=0x0,_0x5239ce,_0x30b562,_0x534f5b=0x0;_0x30b562=_0x54e35c['charAt'](_0x534f5b++);~_0x30b562&&(_0x5239ce=_0x4d9d67%0x4?_0x5239ce*0x40+_0x30b562:_0x30b562,_0x4d9d67++%0x4)?_0x47276b+=String['fromCharCode'](0xff&_0x5239ce>>(-0x2*_0x4d9d67&0x6)):0x0){_0x30b562=_0x14d2fe['indexOf'](_0x30b562);}for(let _0x45e186=0x0,_0x507abe=_0x47276b['length'];_0x45e186<_0x507abe;_0x45e186++){_0x6e7fbf+='%'+('00'+_0x47276b['charCodeAt'](_0x45e186)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x6e7fbf);};a0_0x30a7['bcDIjV']=_0x1c2214,a0_0x30a7['ZQofuf']={},a0_0x30a7['CWGaWe']=!![];}const _0x353c59=_0xc2530b[0x0],_0x18451b=_0x49511f+_0x353c59,_0x2acf40=a0_0x30a7['ZQofuf'][_0x18451b];return!_0x2acf40?(_0x30a768=a0_0x30a7['bcDIjV'](_0x30a768),a0_0x30a7['ZQofuf'][_0x18451b]=_0x30a768):_0x30a768=_0x2acf40,_0x30a768;}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
|
+
const a0_0x4106cb=a0_0x4b8f;(function(_0x2112a6,_0x28c576){const _0xfa038e=a0_0x4b8f,_0xf78a50=_0x2112a6();while(!![]){try{const _0x5df741=-parseInt(_0xfa038e(0x155))/0x1*(-parseInt(_0xfa038e(0x135))/0x2)+-parseInt(_0xfa038e(0x13e))/0x3*(parseInt(_0xfa038e(0x16b))/0x4)+parseInt(_0xfa038e(0x10d))/0x5+parseInt(_0xfa038e(0x154))/0x6+-parseInt(_0xfa038e(0x144))/0x7*(parseInt(_0xfa038e(0x121))/0x8)+-parseInt(_0xfa038e(0x11a))/0x9*(-parseInt(_0xfa038e(0x15d))/0xa)+parseInt(_0xfa038e(0x110))/0xb*(-parseInt(_0xfa038e(0x14c))/0xc);if(_0x5df741===_0x28c576)break;else _0xf78a50['push'](_0xf78a50['shift']());}catch(_0x4a080c){_0xf78a50['push'](_0xf78a50['shift']());}}}(a0_0x38fe,0xa7116));const {Kafka,logLevel}=require(a0_0x4106cb(0x150)),{v7:uuidv7}=require(a0_0x4106cb(0x169));class KafkaConsumerService{constructor(){const _0x180707=a0_0x4106cb;this['kafka']=null,this[_0x180707(0x10e)]=null,this['isConnected']=![],this[_0x180707(0x167)]=![],this['isRunning']=![],this['isPaused']=![],this['connectionPromise']=null,this[_0x180707(0x15e)]=[],this[_0x180707(0x161)]=null,this['messageHandler']=null,this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x4106cb(0x14d)](){const _0x157704=a0_0x4106cb,_0x87d603={'RTEgI':_0x157704(0x11f),'lCpwB':function(_0x1ae5fe,_0x20b5a4){return _0x1ae5fe(_0x20b5a4);},'PYPNM':'3000','reXFf':function(_0x288faf,_0x57ee0f){return _0x288faf(_0x57ee0f);},'yljyF':'25000','vquda':function(_0x40315b,_0x455d6f){return _0x40315b(_0x455d6f);},'vwwmk':_0x157704(0x123),'jRAZK':'1048576','FwciY':function(_0x1acfb3,_0x1c247d){return _0x1acfb3===_0x1c247d;},'OkdsU':_0x157704(0x15c),'RDGBW':_0x157704(0x142),'jiLrF':'1000','HzDQc':function(_0x52b881,_0x39a0ce){return _0x52b881(_0x39a0ce);},'FrUuk':'warn'};return{'enabled':process['env']['KAFKA_ENABLED']===_0x157704(0x15c),'brokers':(process[_0x157704(0x156)][_0x157704(0x171)]||'localhost:9092')[_0x157704(0x127)](','),'clientId':process['env']['KAFKA_CLIENT_ID']||_0x157704(0x16a)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x87d603[_0x157704(0x114)])+'-consumer','connectionTimeout':_0x87d603[_0x157704(0x10f)](parseInt,process[_0x157704(0x156)]['KAFKA_CONNECTION_TIMEOUT']||_0x87d603[_0x157704(0x151)]),'requestTimeout':_0x87d603[_0x157704(0x120)](parseInt,process['env'][_0x157704(0x148)]||_0x87d603[_0x157704(0x134)]),'sessionTimeout':_0x87d603[_0x157704(0x172)](parseInt,process['env'][_0x157704(0x17b)]||_0x87d603['vwwmk']),'heartbeatInterval':_0x87d603['vquda'](parseInt,process[_0x157704(0x156)][_0x157704(0x13a)]||_0x157704(0x115)),'maxBytesPerPartition':_0x87d603[_0x157704(0x10f)](parseInt,process['env']['KAFKA_MAX_BYTES_PER_PARTITION']||_0x87d603[_0x157704(0x157)]),'autoCommit':_0x87d603['FwciY'](process[_0x157704(0x156)][_0x157704(0x112)],_0x87d603[_0x157704(0x140)]),'autoCommitInterval':parseInt(process['env'][_0x157704(0x116)]||_0x87d603[_0x157704(0x131)]),'retryAttempts':_0x87d603['reXFf'](parseInt,process['env'][_0x157704(0x149)]||'3'),'retryDelay':parseInt(process['env'][_0x157704(0x11e)]||_0x87d603['jiLrF']),'retryMaxDelay':_0x87d603['HzDQc'](parseInt,process[_0x157704(0x156)]['KAFKA_RETRY_MAX_DELAY']||_0x87d603[_0x157704(0x162)]),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x87d603['FrUuk']};}['getLogLevel'](_0x3022b1){const _0x527610=a0_0x4106cb,_0x110cc7={'nothing':logLevel['NOTHING'],'error':logLevel[_0x527610(0x176)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel[_0x527610(0x15b)]};return _0x110cc7[_0x3022b1[_0x527610(0x17f)]()]||logLevel[_0x527610(0x179)];}async['initialize'](_0x2fe71e={}){const _0x1735d8=a0_0x4106cb,_0x5a7f3d={'yPyRY':'default','lvNmc':function(_0x3a87f4,_0x5a0467){return _0x3a87f4(_0x5a0467);}},_0x308772=this['getConfig']();if(!_0x308772[_0x1735d8(0x12b)])return console[_0x1735d8(0x146)](_0x1735d8(0x14a)),![];if(this[_0x1735d8(0x163)])return!![];if(this[_0x1735d8(0x167)]&&this[_0x1735d8(0x178)])return this['connectionPromise'];return this[_0x1735d8(0x167)]=!![],this['connectionPromise']=new Promise(async _0x112409=>{const _0x4acd46=_0x1735d8;try{let _0x1f6aba=undefined;process[_0x4acd46(0x156)]['KAFKA_SSL']===_0x4acd46(0x15c)&&(_0x1f6aba=!![]);let _0x2845d2=undefined;process[_0x4acd46(0x156)][_0x4acd46(0x133)]&&(_0x2845d2={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process[_0x4acd46(0x156)][_0x4acd46(0x13f)]||'','password':process[_0x4acd46(0x156)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x2fe71e['clientId']||_0x308772[_0x4acd46(0x15a)],'brokers':_0x308772[_0x4acd46(0x175)],'connectionTimeout':_0x308772['connectionTimeout'],'requestTimeout':_0x308772[_0x4acd46(0x125)],'logLevel':this['getLogLevel'](_0x308772[_0x4acd46(0x117)]),'ssl':_0x1f6aba,'sasl':_0x2845d2,'retry':{'initialRetryTime':_0x308772['retryDelay'],'retries':_0x308772['retryAttempts'],'maxRetryTime':_0x308772['retryMaxDelay']}}),this['groupId']=_0x2fe71e['groupId']||_0x4acd46(0x16a)+(process[_0x4acd46(0x156)][_0x4acd46(0x166)]||_0x5a7f3d[_0x4acd46(0x158)])+_0x4acd46(0x153),this[_0x4acd46(0x10e)]=this['kafka']['consumer']({'groupId':this[_0x4acd46(0x161)],'sessionTimeout':_0x308772['sessionTimeout'],'heartbeatInterval':_0x308772[_0x4acd46(0x118)],'maxBytesPerPartition':_0x308772[_0x4acd46(0x12a)],'allowAutoTopicCreation':![]}),await this[_0x4acd46(0x10e)]['connect'](),this['isConnected']=!![],console[_0x4acd46(0x146)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x308772['brokers']['join'](',\x20')+'\x20(groupId:\x20'+this[_0x4acd46(0x161)]+')'),this['setupEventHandlers'](),_0x5a7f3d['lvNmc'](_0x112409,!![]);}catch(_0xb7b235){console['error'](_0x4acd46(0x12c)+_0xb7b235[_0x4acd46(0x160)]),this[_0x4acd46(0x163)]=![],_0x112409(![]);}finally{this['isInitializing']=![];}}),this[_0x1735d8(0x178)];}[a0_0x4106cb(0x122)](){const _0x30efb8=a0_0x4106cb,_0x4a348c={'uBkuZ':'[KafkaConsumer]\x20Consumer\x20disconnected','sxSGh':'[KafkaConsumer]\x20Consumer\x20rebalancing...','dzEwK':_0x30efb8(0x14e)};if(!this[_0x30efb8(0x10e)])return;this[_0x30efb8(0x10e)]['on']('consumer.disconnect',()=>{const _0x3cf985=_0x30efb8;console[_0x3cf985(0x146)](_0x4a348c['uBkuZ']),this[_0x3cf985(0x163)]=![],this[_0x3cf985(0x113)]=![];}),this['consumer']['on'](_0x30efb8(0x173),()=>{const _0x3b4228=_0x30efb8;console[_0x3b4228(0x146)]('[KafkaConsumer]\x20Consumer\x20stopped'),this['isRunning']=![];}),this['consumer']['on']('consumer.crash',_0x5a4f17=>{const _0x40abe0=_0x30efb8;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x5a4f17[_0x40abe0(0x15f)][_0x40abe0(0x12f)]['message']),this['isRunning']=![];}),this[_0x30efb8(0x10e)]['on'](_0x4a348c['dzEwK'],()=>{const _0x32757b=_0x30efb8;console[_0x32757b(0x146)](_0x4a348c['sxSGh']);});}async['subscribe'](_0x285c23,_0x3e0016=![]){const _0x131b57=a0_0x4106cb,_0x461dba={'xUsyk':_0x131b57(0x174)};if(!this['isConnected'])return console[_0x131b57(0x12f)](_0x461dba['xUsyk']),![];try{const _0x4941cf=Array['isArray'](_0x285c23)?_0x285c23:[_0x285c23];for(const _0x2cdac7 of _0x4941cf){await this[_0x131b57(0x10e)]['subscribe']({'topic':_0x2cdac7,'fromBeginning':_0x3e0016}),console['log']('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x2cdac7+_0x131b57(0x159)+_0x3e0016+')');}return this['subscribedTopics']=[...new Set([...this[_0x131b57(0x15e)],..._0x4941cf])],!![];}catch(_0xc9525c){return console[_0x131b57(0x12f)](_0x131b57(0x168)+_0xc9525c['message']),![];}}async['startConsuming'](_0x375041,_0x48f4a7={}){const _0xba2a89=a0_0x4106cb,_0x373f37={'MEHGM':function(_0x548a0a,_0x348d18){return _0x548a0a+_0x348d18;},'wWfaa':function(_0x5077ec,_0x46245b){return _0x5077ec(_0x46245b);},'EHnEB':function(_0x42636f,_0x3ffd62){return _0x42636f-_0x3ffd62;},'EmfVi':function(_0x43c841,_0x4327a1){return _0x43c841>_0x4327a1;},'ZLSnV':'[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected','RKNCT':'[KafkaConsumer]\x20Consumer\x20already\x20running'};if(!this[_0xba2a89(0x163)])return console[_0xba2a89(0x12f)](_0x373f37['ZLSnV']),![];if(this[_0xba2a89(0x113)])return console['log'](_0x373f37['RKNCT']),!![];const _0x66941d=this['getConfig']();this[_0xba2a89(0x16f)]=_0x375041;try{return this[_0xba2a89(0x16d)][_0xba2a89(0x17c)]=new Date(),await this['consumer']['run']({'autoCommit':_0x48f4a7[_0xba2a89(0x13b)]!==undefined?_0x48f4a7[_0xba2a89(0x13b)]:_0x66941d[_0xba2a89(0x13b)],'autoCommitInterval':_0x66941d[_0xba2a89(0x17a)],'eachMessage':async({topic:_0x5c50ef,partition:_0x31f70f,message:_0x57f001,heartbeat:_0x35300c})=>{const _0x4b8004=_0xba2a89,_0x19bca8=Date[_0x4b8004(0x139)]();this[_0x4b8004(0x16d)][_0x4b8004(0x11b)]++,this[_0x4b8004(0x16d)]['lastMessageTime']=new Date();try{const _0x2bfaea=_0x57f001['value']?_0x57f001[_0x4b8004(0x17e)][_0x4b8004(0x145)]():null;let _0x11acb3=null;try{_0x11acb3=_0x2bfaea?JSON[_0x4b8004(0x12e)](_0x2bfaea):null;}catch(_0x2b6e53){_0x11acb3=_0x2bfaea;}const _0x9080f9={'topic':_0x5c50ef,'partition':_0x31f70f,'offset':_0x57f001[_0x4b8004(0x177)],'key':_0x57f001[_0x4b8004(0x181)]?_0x57f001['key']['toString']():null,'headers':this[_0x4b8004(0x14b)](_0x57f001[_0x4b8004(0x138)]),'timestamp':_0x57f001['timestamp'],'value':_0x11acb3,'raw':_0x2bfaea};this['messageHandler']&&await this[_0x4b8004(0x16f)](_0x9080f9);!_0x66941d[_0x4b8004(0x13b)]&&await this['consumer']['commitOffsets']([{'topic':_0x5c50ef,'partition':_0x31f70f,'offset':_0x373f37['MEHGM'](_0x373f37['wWfaa'](parseInt,_0x57f001[_0x4b8004(0x177)]),0x1)['toString']()}]);this['metrics']['messagesProcessed']++;const _0x1ba9c6=_0x373f37['EHnEB'](Date[_0x4b8004(0x139)](),_0x19bca8);this[_0x4b8004(0x16d)]['processingTimes'][_0x4b8004(0x136)](_0x1ba9c6),_0x373f37[_0x4b8004(0x180)](this[_0x4b8004(0x16d)]['processingTimes']['length'],0x64)&&this[_0x4b8004(0x16d)][_0x4b8004(0x126)]['shift'](),await _0x35300c();}catch(_0x4d86b2){this['metrics'][_0x4b8004(0x119)]++,console['error']('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x4d86b2[_0x4b8004(0x160)]);throw _0x4d86b2;}}}),this[_0xba2a89(0x113)]=!![],console[_0xba2a89(0x146)](_0xba2a89(0x16c)+this['subscribedTopics']['join'](',\x20')),!![];}catch(_0x2fdd60){return console['error'](_0xba2a89(0x129)+_0x2fdd60['message']),![];}}['parseHeaders'](_0x13efa6){const _0x1321a0=a0_0x4106cb;if(!_0x13efa6)return{};const _0x2d4e76={};for(const [_0x4b3eb5,_0x52b4c7]of Object[_0x1321a0(0x147)](_0x13efa6)){_0x2d4e76[_0x4b3eb5]=_0x52b4c7?_0x52b4c7[_0x1321a0(0x145)]():null;}return _0x2d4e76;}async['pause'](){const _0x48e235=a0_0x4106cb,_0x31b830={'GjdIA':'[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running','oFkYS':_0x48e235(0x111)};if(!this['isConnected']||!this[_0x48e235(0x113)])return console['log'](_0x31b830['GjdIA']),![];if(this['isPaused'])return console['log'](_0x31b830[_0x48e235(0x128)]),!![];try{const _0x11a844=this[_0x48e235(0x15e)][_0x48e235(0x124)](_0x45165b=>({'topic':_0x45165b}));return this['consumer']['pause'](_0x11a844),this[_0x48e235(0x164)]=!![],console['log'](_0x48e235(0x137)),!![];}catch(_0x1f327c){return console['error']('[KafkaConsumer]\x20Pause\x20error:\x20'+_0x1f327c[_0x48e235(0x160)]),![];}}async['resume'](){const _0x3a95e2=a0_0x4106cb,_0x145071={'ygVaE':'[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running','btoIo':_0x3a95e2(0x16e)};if(!this['isConnected']||!this['isRunning'])return console['log'](_0x145071[_0x3a95e2(0x152)]),![];if(!this[_0x3a95e2(0x164)])return console['log'](_0x145071['btoIo']),!![];try{const _0x13623a=this['subscribedTopics'][_0x3a95e2(0x124)](_0x2308a4=>({'topic':_0x2308a4}));return this['consumer']['resume'](_0x13623a),this['isPaused']=![],console[_0x3a95e2(0x146)](_0x3a95e2(0x170)),!![];}catch(_0x6d17ff){return console['error']('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x6d17ff[_0x3a95e2(0x160)]),![];}}async['stop'](){const _0x18aedf=a0_0x4106cb,_0x5aa233={'YQWOv':_0x18aedf(0x10c),'wzQAW':_0x18aedf(0x11c)};if(!this[_0x18aedf(0x163)])return console[_0x18aedf(0x146)]('[KafkaConsumer]\x20Consumer\x20not\x20connected'),!![];try{const _0x30be09=_0x5aa233[_0x18aedf(0x13c)][_0x18aedf(0x127)]('|');let _0x5651f6=0x0;while(!![]){switch(_0x30be09[_0x5651f6++]){case'0':console['log'](_0x5aa233[_0x18aedf(0x17d)]);continue;case'1':this[_0x18aedf(0x163)]=![];continue;case'2':this['isPaused']=![];continue;case'3':this[_0x18aedf(0x113)]=![];continue;case'4':this['consumer']&&(await this['consumer'][_0x18aedf(0x143)](),await this[_0x18aedf(0x10e)]['disconnect']());continue;case'5':return!![];}break;}}catch(_0x4e2528){return console['error']('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x4e2528['message']),![];}}async['seekToOffset'](_0x1a4d47,_0x51d3fe,_0x5c4c5f){const _0x37df1e=a0_0x4106cb;if(!this['isConnected'])return console[_0x37df1e(0x12f)]('[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'),![];try{return this['consumer']['seek']({'topic':_0x1a4d47,'partition':_0x51d3fe,'offset':_0x5c4c5f[_0x37df1e(0x145)]()}),console['log']('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x5c4c5f+'\x20on\x20'+_0x1a4d47+':'+_0x51d3fe),!![];}catch(_0x550320){return console[_0x37df1e(0x12f)]('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x550320['message']),![];}}['getStatus'](){const _0x5d7243=a0_0x4106cb,_0x39fbea=this[_0x5d7243(0x14d)]();return{'enabled':_0x39fbea[_0x5d7243(0x12b)],'connected':this[_0x5d7243(0x163)],'running':this[_0x5d7243(0x113)],'paused':this['isPaused'],'brokers':_0x39fbea['brokers'],'clientId':_0x39fbea[_0x5d7243(0x15a)],'groupId':this['groupId'],'subscribedTopics':this['subscribedTopics']};}[a0_0x4106cb(0x13d)](){const _0x12d739=a0_0x4106cb,_0x543be3={'SJwUW':function(_0x237e28,_0x40ced5){return _0x237e28/_0x40ced5;},'uLiQs':function(_0x2b3038,_0x20eb49){return _0x2b3038>_0x20eb49;},'FNlou':function(_0x444bef,_0x3ab50f){return _0x444bef+_0x3ab50f;},'oIuzg':function(_0x2c4ffd,_0x24911b){return _0x2c4ffd*_0x24911b;},'kKxNi':function(_0x2a6eba,_0x534b4f){return _0x2a6eba/_0x534b4f;},'eAPpS':function(_0xa9c5d7,_0x3afce3){return _0xa9c5d7+_0x3afce3;},'coGhx':function(_0x4b0750,_0x19f052){return _0x4b0750/_0x19f052;},'GIhGZ':function(_0x11f416,_0x2d4495){return _0x11f416-_0x2d4495;}},_0x16e33b=this[_0x12d739(0x16d)][_0x12d739(0x126)]['length']>0x0?_0x543be3['SJwUW'](this['metrics']['processingTimes']['reduce']((_0x28575b,_0x1bbb83)=>_0x28575b+_0x1bbb83,0x0),this[_0x12d739(0x16d)][_0x12d739(0x126)]['length']):0x0,_0x475074=_0x543be3[_0x12d739(0x14f)](this['metrics'][_0x12d739(0x126)]['length'],0x0)?Math[_0x12d739(0x132)](...this[_0x12d739(0x16d)][_0x12d739(0x126)]):0x0,_0xb98d2=this[_0x12d739(0x16d)][_0x12d739(0x126)]['length']>0x0?Math['max'](...this['metrics'][_0x12d739(0x126)]):0x0;return{'messagesReceived':this['metrics']['messagesReceived'],'messagesProcessed':this[_0x12d739(0x16d)]['messagesProcessed'],'messagesFailed':this['metrics'][_0x12d739(0x119)],'successRate':this[_0x12d739(0x16d)][_0x12d739(0x11b)]>0x0?_0x543be3['FNlou'](_0x543be3['oIuzg'](_0x543be3['kKxNi'](this['metrics'][_0x12d739(0x165)],this['metrics']['messagesReceived']),0x64)[_0x12d739(0x12d)](0x2),'%'):'0%','lastMessageTime':this[_0x12d739(0x16d)]['lastMessageTime'],'startTime':this['metrics'][_0x12d739(0x17c)],'uptime':this['metrics']['startTime']?_0x543be3[_0x12d739(0x11d)](Math['floor'](_0x543be3[_0x12d739(0x141)](_0x543be3['GIhGZ'](Date[_0x12d739(0x139)](),this[_0x12d739(0x16d)]['startTime'][_0x12d739(0x130)]()),0x3e8)),'s'):'0s','processingTime':{'avg':Math['round'](_0x16e33b)+'ms','min':_0x543be3[_0x12d739(0x11d)](_0x475074,'ms'),'max':_0xb98d2+'ms'}};}['resetMetrics'](){const _0x536ad0=a0_0x4106cb;this[_0x536ad0(0x16d)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console[_0x536ad0(0x146)]('[KafkaConsumer]\x20Metrics\x20reset');}async['close'](){const _0x172fb1=a0_0x4106cb;await this[_0x172fb1(0x143)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function a0_0x38fe(){const _0x3b577c=['BwvZC2fNzuHHBMrSzxi','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','s0fgs0fFqLjps0vsuW','DNf1zge','y29UC3vTzxiUC3rVCa','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','yNjVA2vYCW','rvjst1i','B2zMC2v0','y29UBMvJDgLVBLbYB21PC2u','v0fstG','yxv0B0nVBw1PDeLUDgvYDMfS','s0fgs0fFu0vtu0LptL9usu1ft1vu','C3rHCNruAw1L','D3PrqvC','DMfSDwu','Dg9mB3DLCKnHC2u','rw1MvMK','A2v5','y2XVC2u','nhWXFdn8mNWWFdu','mJa1ndm5mfnkELDWBG','y29UC3vTzxi','BenWD0i','nJzfuNfvv2q','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','s0fgs0fFqvvut19dt01nsvq','AxnsDw5UAw5N','uLrfz0K','mZaWma','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','Bg9Ntgv2zwW','AgvHCNrIzwf0sw50zxj2ywW','BwvZC2fNzxngywLSzwq','mtGYnZCYvfDTywjQ','BwvZC2fNzxnszwnLAxzLza','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwqGyw5KigrPC2nVBM5Ly3rLza','zufqCfm','s0fgs0fFuKvuuLLFrevmqvK','zgvMyxvSDa','CMvyrMy','mtKXmNDrzuXdAG','C2v0DxbfDMvUDeHHBMrSzxjZ','mZaWmda','BwfW','CMvXDwvZDfrPBwvVDxq','ChjVy2vZC2LUz1rPBwvZ','C3bSAxq','B0zRwvm','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','Bwf4qNL0zxnqzxjqyxj0AxrPB24','zw5HyMXLza','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','Dg9gAxHLza','CgfYC2u','zxjYB3i','z2v0vgLTzq','uKrhqLC','BwLU','s0fgs0fFu0fttf9nruniqu5ju00','EwXQEuy','mta2odC0rMzeBeLS','ChvZAa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','AgvHzgvYCW','BM93','s0fgs0fFsevbuLrcrufux0LovevsvKfm','yxv0B0nVBw1PDa','wvfxt3y','z2v0twv0CMLJCW','nZK1ntC5sg1VyKTb','s0fgs0fFu0fttf9vu0vstKfnrq','t2TKC1u','y29hAhG','ntaWma','C3rVCa','odaWmvjTuuDJCa','Dg9tDhjPBMC','Bg9N','zw50CMLLCW','s0fgs0fFuKvrvuvtvf9usu1ft1vu','s0fgs0fFuKvuuLLFqvruru1qvfm','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','CgfYC2vizwfKzxjZ','mty2mZy5mKLeseXXua','z2v0q29UzMLN','y29UC3vTzxiUCMvIywXHBMnPBMC','DuXPuxm','A2fMA2fQCW','ufLqtK0','EwDwyuu','lwnVBNn1BwvYlwDYB3vW','mJq0mJy2mfjsyNjTtW','mJj3DfbJsNC','zw52','ALjbwKS','Evb5uLK','icHMCM9TqMvNAw5UAw5NoIa','y2XPzw50swq','revcvuC','Dhj1zq','mZbTy29huhy','C3vIC2nYAwjLzfrVCgLJCW','Cgf5Bg9Hza','BwvZC2fNzq','z3jVDxbjza','DND3BwS','AxndB25Uzwn0zwq','AxnqyxvZzwq','BwvZC2fNzxnqCM9JzxnZzwq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','AxnjBML0AwfSAxPPBMC','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','DxvPza','CMvZDgzVCMDLlq','nfnTtwTABG','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','Bwv0CMLJCW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq'];a0_0x38fe=function(){return _0x3b577c;};return a0_0x38fe();}function resetInstance(){const _0xbab0c5=a0_0x4106cb;instance&&(instance[_0xbab0c5(0x10b)](),instance=null);}function a0_0x4b8f(_0x22884c,_0x3d4351){_0x22884c=_0x22884c-0x10b;const _0x38fe22=a0_0x38fe();let _0x4b8f58=_0x38fe22[_0x22884c];if(a0_0x4b8f['zsLMyb']===undefined){var _0x2e6e0f=function(_0x21e6b1){const _0x3675cc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c7cf5='',_0x29a25c='';for(let _0x4c4559=0x0,_0x3c3608,_0x8fdd07,_0x1fcf27=0x0;_0x8fdd07=_0x21e6b1['charAt'](_0x1fcf27++);~_0x8fdd07&&(_0x3c3608=_0x4c4559%0x4?_0x3c3608*0x40+_0x8fdd07:_0x8fdd07,_0x4c4559++%0x4)?_0x3c7cf5+=String['fromCharCode'](0xff&_0x3c3608>>(-0x2*_0x4c4559&0x6)):0x0){_0x8fdd07=_0x3675cc['indexOf'](_0x8fdd07);}for(let _0x1c6b9d=0x0,_0x1b5845=_0x3c7cf5['length'];_0x1c6b9d<_0x1b5845;_0x1c6b9d++){_0x29a25c+='%'+('00'+_0x3c7cf5['charCodeAt'](_0x1c6b9d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29a25c);};a0_0x4b8f['oCVOsr']=_0x2e6e0f,a0_0x4b8f['yiiPxu']={},a0_0x4b8f['zsLMyb']=!![];}const _0x2d891b=_0x38fe22[0x0],_0x2abeb1=_0x22884c+_0x2d891b,_0xa1df6d=a0_0x4b8f['yiiPxu'][_0x2abeb1];return!_0xa1df6d?(_0x4b8f58=a0_0x4b8f['oCVOsr'](_0x4b8f58),a0_0x4b8f['yiiPxu'][_0x2abeb1]=_0x4b8f58):_0x4b8f58=_0xa1df6d,_0x4b8f58;}function createInstance(){return new KafkaConsumerService();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x303be9=a0_0x84de;(function(_0x490691,_0xd29ea2){const _0x5e5071=a0_0x84de,_0x11d1c7=_0x490691();while(!![]){try{const _0xde7284=parseInt(_0x5e5071(0x21b))/0x1+parseInt(_0x5e5071(0x221))/0x2+-parseInt(_0x5e5071(0x225))/0x3+-parseInt(_0x5e5071(0x1f3))/0x4*(parseInt(_0x5e5071(0x218))/0x5)+-parseInt(_0x5e5071(0x1fd))/0x6+-parseInt(_0x5e5071(0x202))/0x7*(-parseInt(_0x5e5071(0x21f))/0x8)+-parseInt(_0x5e5071(0x1fe))/0x9*(parseInt(_0x5e5071(0x1d4))/0xa);if(_0xde7284===_0xd29ea2)break;else _0x11d1c7['push'](_0x11d1c7['shift']());}catch(_0x553202){_0x11d1c7['push'](_0x11d1c7['shift']());}}}(a0_0x4806,0x5f798));function a0_0x4806(){const _0x2a7ed8=['C291CMnL','nZC0ntq2AKvHruXT','ndvQsKTYAvq','y29UBMvJDa','Dg9mB3DLCKnHC2u','A2v5rMLLBgq','nJe2ENn1C25f','y29UBMvJDgLVBLbYB21PC2u','Dg9WAwm','z2v0sg91CNm','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','AM9PBG','yNvPBgrfDMvUDe1LC3nHz2u','Aw5PDgLHBgL6zq','BwvZC2fNzq','zM9YBwf0rgf0zvrPBwu','y29YCMvSyxrPB25jza','su5gtW','Dw5RBM93BG','zw52','s0fgs0fFve9qsunFuefuvevstG','s0fgs0fFu0fttf9vu0vstKfnrq','v2Pkr1q','ChvIBgLZAfvWzgf0zq','CMvWBgfJzq','CMv0CNLbDhrLBxb0CW','Bg9Ntgv2zwW','s0fgs0fFu1nm','nunYrNrSuq','C3rYAw5NAwz5','Bg9N','nZy4mdi5Au5YzKHi','zw5HyMXLza','CMvXDwvZDfrPBwvVDxq','zw5KCg9PBNq','ntCYmJrpq2DKs0e','z2v0twLUDxrLCW','nJe2mJG4A3nqtMnS','ChvIBgLZAeLUC2vYDa','Dg9WAwnqyxr0zxjU','ChvIBgLZAerLBgv0zq','otG4otGZCKreDfzJ','s0fgs0fFqLjps0vsuW','AxnjBML0AwfSAxPPBMC','ChjVzhvJzxi','E2fJDgLVBN0','ChjVzhvJzxiUzgLZy29UBMvJDa','y3jLyxrLza','z2v0q29UzMLN','s0fgs0fFvevoqu5ux0Le','ntuYmduWCxPlExPz','lxbYB2r1y2vY','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','zgvMyxvSDa','s0fgs0fFuKvuuLLFrevmqvK','zgvSzxrLza','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','A2fMA2e','y29YCI0','CgfYDgL0Aw9U','DxvPza','C3bSAxq','s0fgs0fFq09otKvdveLptL9usu1ft1vu','AxndB25Uzwn0zwq','zgLZy29UBMvJDa','AhD3tfa','z2v0tg9Ntgv2zwW','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','DgfIBgvoyw1L','yNvPBgruB3bPy05HBwu','s0fgs0fFru5bqKXfra','Dg9vChbLCKnHC2u','tgvNywn5ugfYDgL0Aw9Uzxi','z2v0rgf0zq','Bg9JywXOB3n0oJKWoti','wuPnseK','z2v0rNvSBfLLyxi','tMn4uuK','zxjYB3i','yNjVA2vYCW','u1Ltvevn','mJmXote4nhvmDfbABq','y2XVC2u','z2v0tw9UDgG','CgfKu3rHCNq','mJuWmda','ChvIBgLZAev2zw50','sNrgq2y','Dhj1zq','yLfOzLG'];a0_0x4806=function(){return _0x2a7ed8;};return a0_0x4806();}const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require(a0_0x303be9(0x1de));class KafkaService{constructor(){const _0x41ad72=a0_0x303be9;this[_0x41ad72(0x1db)]=null,this['producer']=null,this[_0x41ad72(0x1e1)]=![],this[_0x41ad72(0x227)]=![],this['connectionPromise']=null;}['getConfig'](){const _0x34f54c=a0_0x303be9,_0x2ed3dc={'TKDEY':_0x34f54c(0x1fa),'hwwLP':'3000','NcxQI':function(_0x36a6aa,_0x9aac67){return _0x36a6aa(_0x9aac67);},'cIsdP':_0x34f54c(0x1f7),'NkkRK':'warn'};return{'enabled':process['env'][_0x34f54c(0x1e8)]===_0x2ed3dc['TKDEY'],'brokers':(process['env'][_0x34f54c(0x226)]||_0x34f54c(0x1ec))[_0x34f54c(0x1df)](','),'clientId':process[_0x34f54c(0x20f)]['KAFKA_CLIENT_ID']||'restforge-'+(process[_0x34f54c(0x20f)]['RESTFORGE_PROJECT_NAME']||_0x34f54c(0x1d7))+_0x34f54c(0x1d5),'connectionTimeout':parseInt(process[_0x34f54c(0x20f)][_0x34f54c(0x1e0)]||_0x2ed3dc[_0x34f54c(0x1e3)]),'requestTimeout':_0x2ed3dc['NcxQI'](parseInt,process[_0x34f54c(0x20f)]['KAFKA_REQUEST_TIMEOUT']||_0x2ed3dc['cIsdP']),'topicPattern':process[_0x34f54c(0x20f)][_0x34f54c(0x210)]||'{module}.{endpoint}.events','tenantId':process[_0x34f54c(0x20f)][_0x34f54c(0x1d3)]||_0x34f54c(0x1d7),'retryAttempts':parseInt(process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0x2ed3dc[_0x34f54c(0x1ef)](parseInt,process['env'][_0x34f54c(0x1d8)]||'1000'),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x2ed3dc['NkkRK']};}[a0_0x303be9(0x1e4)](_0x38fc0e){const _0x21e019=a0_0x303be9,_0x347bc3={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel[_0x21e019(0x20d)],'debug':logLevel['DEBUG']};return _0x347bc3[_0x38fc0e[_0x21e019(0x200)]()]||logLevel['WARN'];}async[a0_0x303be9(0x209)](){const _0x3503cd=a0_0x303be9,_0x4a4271=this[_0x3503cd(0x1d2)]();if(!_0x4a4271['enabled'])return console['log']('[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'),![];if(this[_0x3503cd(0x1e1)])return!![];if(this['isInitializing']&&this[_0x3503cd(0x203)])return this[_0x3503cd(0x203)];return this['isInitializing']=!![],this[_0x3503cd(0x203)]=new Promise(async _0x3fd7a4=>{const _0x19dbfc=_0x3503cd;try{let _0x58de13=undefined;process['env'][_0x19dbfc(0x217)]==='true'&&(_0x58de13=!![]);let _0x596cc9=undefined;process[_0x19dbfc(0x20f)]['KAFKA_SASL_MECHANISM']&&(_0x596cc9={'mechanism':process[_0x19dbfc(0x20f)]['KAFKA_SASL_MECHANISM'],'username':process[_0x19dbfc(0x20f)][_0x19dbfc(0x211)]||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x4a4271['clientId'],'brokers':_0x4a4271['brokers'],'connectionTimeout':_0x4a4271['connectionTimeout'],'requestTimeout':_0x4a4271[_0x19dbfc(0x21d)],'logLevel':this[_0x19dbfc(0x1e4)](_0x4a4271[_0x19dbfc(0x216)]),'ssl':_0x58de13,'sasl':_0x596cc9,'retry':{'initialRetryTime':_0x4a4271['retryDelay'],'retries':_0x4a4271[_0x19dbfc(0x215)]}}),this['producer']=this['kafka'][_0x19dbfc(0x228)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x19dbfc(0x1ea)]}),await this['producer'][_0x19dbfc(0x1ff)](),this['isConnected']=!![],console['log'](_0x19dbfc(0x1e5)+_0x4a4271[_0x19dbfc(0x1f1)][_0x19dbfc(0x207)](',\x20')),this[_0x19dbfc(0x228)]['on'](_0x19dbfc(0x22a),()=>{const _0x253dd6=_0x19dbfc;console[_0x253dd6(0x21a)]('[Kafka]\x20Producer\x20disconnected'),this['isConnected']=![];}),_0x3fd7a4(!![]);}catch(_0x4586e9){console[_0x19dbfc(0x1f0)]('[Kafka]\x20Connection\x20failed:\x20'+_0x4586e9[_0x19dbfc(0x20a)]),this['isConnected']=![],_0x3fd7a4(![]);}finally{this[_0x19dbfc(0x227)]=![];}}),this[_0x3503cd(0x203)];}[a0_0x303be9(0x20b)](_0xa4f14a){const _0x5dcaa9=a0_0x303be9,_0x569ccc={'YJMHI':function(_0x1a5860,_0x379117){return _0x1a5860(_0x379117);},'bQhfX':function(_0x333c2c,_0x5057b9){return _0x333c2c(_0x5057b9);}},_0x495dca=_0xa4f14a||new Date(),_0x4413e3=_0x495dca[_0x5dcaa9(0x1ee)](),_0x390670=_0x569ccc[_0x5dcaa9(0x1ed)](String,_0x495dca[_0x5dcaa9(0x1f5)]()+0x1)[_0x5dcaa9(0x1f6)](0x2,'0'),_0x59159e=String(_0x495dca[_0x5dcaa9(0x1eb)]())[_0x5dcaa9(0x1f6)](0x2,'0'),_0x361f11=_0x569ccc[_0x5dcaa9(0x1ed)](String,_0x495dca[_0x5dcaa9(0x205)]())['padStart'](0x2,'0'),_0x20a184=_0x569ccc[_0x5dcaa9(0x1fb)](String,_0x495dca[_0x5dcaa9(0x220)]())[_0x5dcaa9(0x1f6)](0x2,'0'),_0x591e23=_0x569ccc[_0x5dcaa9(0x1fb)](String,_0x495dca['getSeconds']())['padStart'](0x2,'0');return _0x4413e3+'-'+_0x390670+'-'+_0x59159e+'\x20'+_0x361f11+':'+_0x20a184+':'+_0x591e23;}['buildTopicName'](_0x141523,_0x54bba0,_0x196bd9,_0x146a16=null){const _0x459087=a0_0x303be9,_0x5baa2c={'abpqZ':_0x459087(0x229)};if(_0x146a16)return _0x146a16;const _0x4aab96=this[_0x459087(0x1d2)]()['topicPattern'];return _0x4aab96[_0x459087(0x214)]('{module}',_0x141523)['replace']('{endpoint}',_0x54bba0)[_0x459087(0x214)](_0x5baa2c['abpqZ'],_0x196bd9);}['buildEventMessage'](_0x75337c,_0x4960b0,_0x4d2f2b,_0x2fa4ed={}){const _0x323b71=a0_0x303be9,_0x126111={'qjTDI':'unknown','OzHGh':_0x323b71(0x1f2)},_0x464d7e=new Date(),_0xb9f8da=this['formatDateTime'](_0x464d7e),_0x4fb8b7=_0x2fa4ed[_0x323b71(0x20c)]||_0x323b71(0x1dc)+uuidv7();return{'eventId':'evt-'+uuidv7(),'eventType':_0x75337c,'eventTime':_0xb9f8da,'eventVersion':'1.0','source':'restforge-'+(_0x2fa4ed['module']||_0x126111['qjTDI']),'correlationId':_0x4fb8b7,'newData':_0x4d2f2b,'oldData':_0x4960b0,'metadata':{'createdBy':_0x2fa4ed['createdBy']||_0x126111['OzHGh'],'createdAt':_0xb9f8da,'systemId':'RESTFORGE-'+(_0x2fa4ed['module']||_0x323b71(0x20e))[_0x323b71(0x1e9)](),'tenantId':this[_0x323b71(0x1d2)]()['tenantId'],'endpoint':_0x2fa4ed[_0x323b71(0x21e)]||null,'tableName':_0x2fa4ed['tableName']||null}};}async[a0_0x303be9(0x1f8)](_0xe678,_0x5e841c,_0x16c4e6,_0x27e5fb,_0x49bd71={}){const _0x52b5cf=a0_0x303be9,_0x366177={'WXEXP':'Kafka\x20producer\x20is\x20disabled','sDBLw':function(_0x41884d,_0x1c2250){return _0x41884d(_0x1c2250);}},_0x46db8f=this[_0x52b5cf(0x1d2)]();if(!_0x46db8f['enabled'])return{'success':![],'reason':_0x366177['WXEXP'],'published':![]};if(!this[_0x52b5cf(0x1e1)]){const _0x5487ad=await this['initialize']();if(!_0x5487ad)return{'success':![],'reason':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','published':![]};}try{const _0x4c22b3=this[_0x52b5cf(0x208)](_0x5e841c,_0x16c4e6,_0x27e5fb,_0x49bd71),_0x51f0f1=_0x49bd71[_0x52b5cf(0x201)]||'id',_0x3297c2=_0x27e5fb?.[_0x51f0f1]||_0x16c4e6?.[_0x51f0f1]||uuidv7(),_0xc869a2=await this[_0x52b5cf(0x228)]['send']({'topic':_0xe678,'messages':[{'key':_0x366177['sDBLw'](String,_0x3297c2),'value':JSON[_0x52b5cf(0x219)](_0x4c22b3),'headers':{'event-type':_0x5e841c,'correlation-id':_0x4c22b3['correlationId'],'source':_0x4c22b3[_0x52b5cf(0x1fc)]}}]});return console['log']('[Kafka]\x20Event\x20published\x20to\x20'+_0xe678+':\x20'+_0x5e841c+'\x20(key:\x20'+_0x3297c2+')'),{'success':!![],'correlationId':_0x4c22b3[_0x52b5cf(0x20c)],'topic':_0xe678,'partition':_0xc869a2[0x0]?.[_0x52b5cf(0x1dd)],'offset':_0xc869a2[0x0]?.['baseOffset'],'published':!![]};}catch(_0x31ff8d){return console[_0x52b5cf(0x1f0)](_0x52b5cf(0x1d6)+_0xe678+':\x20'+_0x31ff8d['message']),{'success':![],'error':_0x31ff8d[_0x52b5cf(0x20a)],'published':![]};}}async[a0_0x303be9(0x222)](_0x2c3532,_0x131b05,_0x5b0c48,_0x4ee360={}){const _0x24a39a=a0_0x303be9,_0xf39714=this['buildTopicName'](_0x2c3532,_0x131b05,_0x24a39a(0x22b),_0x4ee360['topic']);return this[_0x24a39a(0x1f8)](_0xf39714,'ENTITY_CREATED',null,_0x5b0c48,{'module':_0x2c3532,'endpoint':_0x131b05,'keyField':_0x4ee360[_0x24a39a(0x201)],'tableName':_0x4ee360['tableName'],'correlationId':_0x4ee360['correlationId']});}async[a0_0x303be9(0x213)](_0x2888a6,_0x1b9824,_0x3dde29,_0x3d8a12,_0x26bac7={}){const _0x4b8b35=a0_0x303be9,_0x40d70c=this[_0x4b8b35(0x1e7)](_0x2888a6,_0x1b9824,'updated',_0x26bac7[_0x4b8b35(0x204)]);return this['publishEvent'](_0x40d70c,'ENTITY_UPDATED',_0x3dde29,_0x3d8a12,{'module':_0x2888a6,'endpoint':_0x1b9824,'keyField':_0x26bac7['keyField'],'tableName':_0x26bac7[_0x4b8b35(0x1e6)],'correlationId':_0x26bac7['correlationId']});}async[a0_0x303be9(0x224)](_0x560a7b,_0x582b2c,_0x2aef34,_0x33b4f5={}){const _0x120592=a0_0x303be9,_0x3d4740={'WjJGT':_0x120592(0x1d9),'JtFCf':'ENTITY_DELETED'},_0x10e604=this[_0x120592(0x1e7)](_0x560a7b,_0x582b2c,_0x3d4740[_0x120592(0x212)],_0x33b4f5[_0x120592(0x204)]);return this[_0x120592(0x1f8)](_0x10e604,_0x3d4740[_0x120592(0x1f9)],_0x2aef34,null,{'module':_0x560a7b,'endpoint':_0x582b2c,'keyField':_0x33b4f5['keyField'],'tableName':_0x33b4f5[_0x120592(0x1e6)],'correlationId':_0x33b4f5['correlationId']});}['getStatus'](){const _0x268f86=a0_0x303be9,_0x2c5027=this[_0x268f86(0x1d2)]();return{'enabled':_0x2c5027[_0x268f86(0x21c)],'connected':this[_0x268f86(0x1e1)],'brokers':_0x2c5027['brokers'],'clientId':_0x2c5027['clientId'],'topicPattern':_0x2c5027[_0x268f86(0x223)]};}async[a0_0x303be9(0x1f4)](){const _0x29afa3=a0_0x303be9;if(this[_0x29afa3(0x228)]&&this['isConnected'])try{await this[_0x29afa3(0x228)][_0x29afa3(0x1e2)](),this[_0x29afa3(0x1e1)]=![],console[_0x29afa3(0x21a)](_0x29afa3(0x206));}catch(_0x2b44ad){console['error'](_0x29afa3(0x1da)+_0x2b44ad[_0x29afa3(0x20a)]);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function a0_0x84de(_0x44f91c,_0x34e84c){_0x44f91c=_0x44f91c-0x1d2;const _0x48061b=a0_0x4806();let _0x84de78=_0x48061b[_0x44f91c];if(a0_0x84de['DVjQRN']===undefined){var _0x27ae5d=function(_0x16ce9e){const _0x5edae7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3130f1='',_0x95f560='';for(let _0x3386b5=0x0,_0x52e840,_0x4fe185,_0x39c5f4=0x0;_0x4fe185=_0x16ce9e['charAt'](_0x39c5f4++);~_0x4fe185&&(_0x52e840=_0x3386b5%0x4?_0x52e840*0x40+_0x4fe185:_0x4fe185,_0x3386b5++%0x4)?_0x3130f1+=String['fromCharCode'](0xff&_0x52e840>>(-0x2*_0x3386b5&0x6)):0x0){_0x4fe185=_0x5edae7['indexOf'](_0x4fe185);}for(let _0x4d0c28=0x0,_0x430909=_0x3130f1['length'];_0x4d0c28<_0x430909;_0x4d0c28++){_0x95f560+='%'+('00'+_0x3130f1['charCodeAt'](_0x4d0c28)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x95f560);};a0_0x84de['JiICHe']=_0x27ae5d,a0_0x84de['jSTJkI']={},a0_0x84de['DVjQRN']=!![];}const _0x13a036=_0x48061b[0x0],_0x4db25c=_0x44f91c+_0x13a036,_0x4a26ea=a0_0x84de['jSTJkI'][_0x4db25c];return!_0x4a26ea?(_0x84de78=a0_0x84de['JiICHe'](_0x84de78),a0_0x84de['jSTJkI'][_0x4db25c]=_0x84de78):_0x84de78=_0x4a26ea,_0x84de78;}function resetInstance(){const _0x5dbca3=a0_0x303be9;instance&&(instance[_0x5dbca3(0x1f4)](),instance=null);}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
1
|
+
function a0_0x30c3(){const _0x47c1f5=['AxnjBML0AwfSAxPPBMC','C3bSAxq','A0DPAxa','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','z2v0rNvSBfLLyxi','s0fgs0fFu0fttf9vu0vstKfnrq','DgvUyw50swq','y3jLyxrLza','ChjVzhvJzxi','tgvNywn5ugfYDgL0Aw9Uzxi','yNjVA2vYCW','s0fgs0fFu1nm','CMvWBgfJzq','ndmZnJC5mgTlAvHJzG','CgfKu3rHCNq','v0fstG','Dhj1zq','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','zw52','mtaWma','s2vczfO','ndaYmZzOu3vcsfq','s0fgs0fFuKvuuLLFqvruru1qvfm','s0fgs0fFqLjps0vsuW','s0fgs0fFq0Xjru5ux0Le','ChvIBgLZAeLUC2vYDa','Bg9N','wwXlEuK','s0fgs0fFuKvrvuvtvf9usu1ft1vu','mta0odHewLH2z0i','ntvWsffREwW','AxndB25Uzwn0zwq','mtm1mhHWqNbIza','y29UBMvJDgLVBLbYB21PC2u','mZuZmuvfseDiwa','mZu2BxnesxLg','su5gtW','z2v0u3rHDhvZ','zw5HyMXLza','re10CKK','mtiWndKZmhzxCuP2rG','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','Bg9Ntgv2zwW','DgfIBgvoyw1L','Dg9WAwnqyxr0zxjU','DxbKyxrLza','ru5usvrzx0nsrufuruq','yNvPBgrfDMvUDe1LC3nHz2u','ChvIBgLZAev2zw50','AM9PBG','A2fMA2e','yMfZzu9MzNnLDa','A2fMA2fQCW','A2v5rMLLBgq','ms4W','zgvMyxvSDa','ndq2mtGYAKHuu21u','nKfXyvjKCW','mJu5otaXnvngsfvLqG','BxjZzxm','AxDYsMq','y29YCMvSyxrPB25jza','w0THzMTHxsblywzRysbWCM9KDwnLCIbPCYbKAxnHyMXLzcbPBIbJB25MAwD1CMf0Aw9U','zM9YBwf0rgf0zvrPBwu','B1vKwK4','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','Dg9WAwm','rLfOAgi','E2fJDgLVBN0','E2vUzhbVAw50Fq','revcvuC','ru5usvrzx1vqrefuruq','t0LkDMm','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','Aw5PDgLHBgL6zq','z2v0q29UzMLN','y29UBMvJDgLVBLrPBwvVDxq','DxvPza','z2v0rgf0zq','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','zxjYB3i','CMvZDgzVCMDLlq','z2v0tw9UDgG','u2njt0C','zxHWB3j0CW','C3rYAw5NAwz5','BwvZC2fNzq','s0fgs0fFuKvuuLLFrevmqvK','y2XVC2u','zw5KCg9PBNq','y3jLyxrLzej5'];a0_0x30c3=function(){return _0x47c1f5;};return a0_0x30c3();}const a0_0x3bdb1f=a0_0x1e2a;(function(_0x2b85e9,_0x42e076){const _0x464407=a0_0x1e2a,_0x4e29fe=_0x2b85e9();while(!![]){try{const _0x3282af=-parseInt(_0x464407(0xc5))/0x1+-parseInt(_0x464407(0xb5))/0x2+parseInt(_0x464407(0xaf))/0x3*(-parseInt(_0x464407(0xb0))/0x4)+parseInt(_0x464407(0xc7))/0x5*(-parseInt(_0x464407(0xc6))/0x6)+parseInt(_0x464407(0xa2))/0x7+parseInt(_0x464407(0xaa))/0x8*(-parseInt(_0x464407(0xad))/0x9)+parseInt(_0x464407(0x99))/0xa*(parseInt(_0x464407(0xab))/0xb);if(_0x3282af===_0x42e076)break;else _0x4e29fe['push'](_0x4e29fe['shift']());}catch(_0x5c9e12){_0x4e29fe['push'](_0x4e29fe['shift']());}}}(a0_0x30c3,0x4a4a2));function a0_0x1e2a(_0x1da1c1,_0x2fade5){_0x1da1c1=_0x1da1c1-0x7e;const _0x30c374=a0_0x30c3();let _0x1e2adb=_0x30c374[_0x1da1c1];if(a0_0x1e2a['uwJjFd']===undefined){var _0x36131d=function(_0x21e37a){const _0x2a3d91='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5b8998='',_0xdde579='';for(let _0xf4a9fe=0x0,_0x5c7acb,_0x16d14e,_0x331b32=0x0;_0x16d14e=_0x21e37a['charAt'](_0x331b32++);~_0x16d14e&&(_0x5c7acb=_0xf4a9fe%0x4?_0x5c7acb*0x40+_0x16d14e:_0x16d14e,_0xf4a9fe++%0x4)?_0x5b8998+=String['fromCharCode'](0xff&_0x5c7acb>>(-0x2*_0xf4a9fe&0x6)):0x0){_0x16d14e=_0x2a3d91['indexOf'](_0x16d14e);}for(let _0xf9cb05=0x0,_0x44a18a=_0x5b8998['length'];_0xf9cb05<_0x44a18a;_0xf9cb05++){_0xdde579+='%'+('00'+_0x5b8998['charCodeAt'](_0xf9cb05)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xdde579);};a0_0x1e2a['VMxNKZ']=_0x36131d,a0_0x1e2a['KayebN']={},a0_0x1e2a['uwJjFd']=!![];}const _0x428cc1=_0x30c374[0x0],_0x40645c=_0x1da1c1+_0x428cc1,_0x54b806=a0_0x1e2a['KayebN'][_0x40645c];return!_0x54b806?(_0x1e2adb=a0_0x1e2a['VMxNKZ'](_0x1e2adb),a0_0x1e2a['KayebN'][_0x40645c]=_0x1e2adb):_0x1e2adb=_0x54b806,_0x1e2adb;}const {Kafka,logLevel,Partitioners}=require(a0_0x3bdb1f(0xc1)),{v7:uuidv7}=require(a0_0x3bdb1f(0x7e));class KafkaService{constructor(){const _0xd68d5c=a0_0x3bdb1f;this['kafka']=null,this['producer']=null,this['isConnected']=![],this['isInitializing']=![],this[_0xd68d5c(0xae)]=null;}['getConfig'](){const _0x134042=a0_0x3bdb1f,_0x489364={'AeXpn':function(_0x448d5c,_0x2d6495){return _0x448d5c===_0x2d6495;},'kGiip':'localhost:9092','iWEMv':'3000','iwrJd':'default','DMtrI':function(_0x21551a,_0x30e521){return _0x21551a(_0x30e521);},'dvnJG':'warn'};return{'enabled':_0x489364['AeXpn'](process[_0x134042(0x9f)]['KAFKA_ENABLED'],_0x134042(0x9c)),'brokers':(process[_0x134042(0x9f)][_0x134042(0xa4)]||_0x489364[_0x134042(0x8e)])[_0x134042(0x8d)](','),'clientId':process['env'][_0x134042(0xa5)]||_0x134042(0x82)+(process['env'][_0x134042(0x8f)]||_0x134042(0xc4))+'-producer','connectionTimeout':parseInt(process[_0x134042(0x9f)]['KAFKA_CONNECTION_TIMEOUT']||_0x489364['iWEMv']),'requestTimeout':parseInt(process['env'][_0x134042(0xa9)]||'25000'),'topicPattern':process['env']['KAFKA_TOPIC_PATTERN']||'{module}.{endpoint}.events','tenantId':process['env']['KAFKA_TENANT_ID']||_0x489364[_0x134042(0xc9)],'retryAttempts':_0x489364[_0x134042(0xb4)](parseInt,process[_0x134042(0x9f)][_0x134042(0xa3)]||'3'),'retryDelay':parseInt(process['env'][_0x134042(0x88)]||_0x134042(0xa0)),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x489364['dvnJG']};}['getLogLevel'](_0x342c19){const _0x25cde8=a0_0x3bdb1f,_0x4427eb={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel[_0x25cde8(0x9b)],'info':logLevel[_0x25cde8(0xb1)],'debug':logLevel[_0x25cde8(0xd3)]};return _0x4427eb[_0x342c19['toLowerCase']()]||logLevel['WARN'];}async[a0_0x3bdb1f(0xd7)](){const _0x1f81d8=a0_0x3bdb1f,_0x59565b={'iZsmY':'[Kafka]\x20Producer\x20disconnected','upWVf':_0x1f81d8(0x9c),'HYKpj':'producer.disconnect'},_0x5229f8=this[_0x1f81d8(0xd8)]();if(!_0x5229f8['enabled'])return console[_0x1f81d8(0xa7)](_0x1f81d8(0xcb)),![];if(this['isConnected'])return!![];if(this[_0x1f81d8(0x8c)]&&this[_0x1f81d8(0xae)])return this['connectionPromise'];return this[_0x1f81d8(0x8c)]=!![],this['connectionPromise']=new Promise(async _0x4143a0=>{const _0x339e82=_0x1f81d8;try{let _0x4c4ae4=undefined;process[_0x339e82(0x9f)][_0x339e82(0x97)]===_0x59565b['upWVf']&&(_0x4c4ae4=!![]);let _0x5c771c=undefined;process['env']['KAFKA_SASL_MECHANISM']&&(_0x5c771c={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x339e82(0x91)]||'','password':process[_0x339e82(0x9f)]['KAFKA_SASL_PASSWORD']||''}),this[_0x339e82(0xbf)]=new Kafka({'clientId':_0x5229f8['clientId'],'brokers':_0x5229f8['brokers'],'connectionTimeout':_0x5229f8[_0x339e82(0xd9)],'requestTimeout':_0x5229f8['requestTimeout'],'logLevel':this['getLogLevel'](_0x5229f8[_0x339e82(0xb7)]),'ssl':_0x4c4ae4,'sasl':_0x5c771c,'retry':{'initialRetryTime':_0x5229f8['retryDelay'],'retries':_0x5229f8['retryAttempts']}}),this['producer']=this[_0x339e82(0xbf)][_0x339e82(0x94)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x339e82(0x95)]}),await this[_0x339e82(0x94)]['connect'](),this['isConnected']=!![],console['log'](_0x339e82(0x9e)+_0x5229f8['brokers'][_0x339e82(0xbe)](',\x20')),this[_0x339e82(0x94)]['on'](_0x59565b['HYKpj'],()=>{const _0x466b94=_0x339e82;console['log'](_0x59565b['iZsmY']),this[_0x466b94(0xac)]=![];}),_0x4143a0(!![]);}catch(_0x407294){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x407294['message']),this['isConnected']=![],_0x4143a0(![]);}finally{this[_0x339e82(0x8c)]=![];}}),this[_0x1f81d8(0xae)];}['formatDateTime'](_0x254d5d){const _0x17d2f1=a0_0x3bdb1f,_0x3b9ace={'ScIOG':function(_0x4c586a,_0x120f33){return _0x4c586a(_0x120f33);},'FQhhb':function(_0x7610a4,_0x5cf719){return _0x7610a4(_0x5cf719);},'CSwGb':function(_0x1c09cd,_0x25e03f){return _0x1c09cd(_0x25e03f);}},_0x23bf03=_0x254d5d||new Date(),_0x41e451=_0x23bf03[_0x17d2f1(0x90)](),_0x4ceddb=_0x3b9ace[_0x17d2f1(0x84)](String,_0x23bf03[_0x17d2f1(0x83)]()+0x1)['padStart'](0x2,'0'),_0x114f2a=_0x3b9ace['ScIOG'](String,_0x23bf03[_0x17d2f1(0x7f)]())[_0x17d2f1(0x9a)](0x2,'0'),_0x1474dc=_0x3b9ace[_0x17d2f1(0xd0)](String,_0x23bf03['getHours']())['padStart'](0x2,'0'),_0x103639=String(_0x23bf03['getMinutes']())[_0x17d2f1(0x9a)](0x2,'0'),_0x380d21=_0x3b9ace['CSwGb'](String,_0x23bf03['getSeconds']())['padStart'](0x2,'0');return _0x41e451+'-'+_0x4ceddb+'-'+_0x114f2a+'\x20'+_0x1474dc+':'+_0x103639+':'+_0x380d21;}['buildTopicName'](_0x75c014,_0x3f3d40,_0x5bf526,_0x1900c8=null){const _0x2e2407=a0_0x3bdb1f,_0x35ee09={'mrses':_0x2e2407(0xd2),'qGDWE':_0x2e2407(0xd1)};if(_0x1900c8)return _0x1900c8;const _0x35d671=this[_0x2e2407(0xd8)]()[_0x2e2407(0xb9)];return _0x35d671[_0x2e2407(0x98)]('{module}',_0x75c014)['replace'](_0x35ee09[_0x2e2407(0xc8)],_0x3f3d40)['replace'](_0x35ee09['qGDWE'],_0x5bf526);}['buildEventMessage'](_0x13a2a9,_0x367958,_0x3a8417,_0x7d416={}){const _0x4c8566=a0_0x3bdb1f,_0x32548e={'KdbHH':function(_0x4aea48){return _0x4aea48();},'OIJvc':_0x4c8566(0xc3)},_0x371a7d=new Date(),_0xc0d965=this[_0x4c8566(0xcc)](_0x371a7d),_0xf07911=_0x7d416['correlationId']||'corr-'+_0x32548e['KdbHH'](uuidv7);return{'eventId':'evt-'+_0x32548e['KdbHH'](uuidv7),'eventType':_0x13a2a9,'eventTime':_0xc0d965,'eventVersion':_0x32548e[_0x4c8566(0xd5)],'source':_0x4c8566(0x82)+(_0x7d416['module']||'unknown'),'correlationId':_0xf07911,'newData':_0x3a8417,'oldData':_0x367958,'metadata':{'createdBy':_0x7d416[_0x4c8566(0x8b)]||'SYSTEM','createdAt':_0xc0d965,'systemId':'RESTFORGE-'+(_0x7d416['module']||'unknown')['toUpperCase'](),'tenantId':this['getConfig']()[_0x4c8566(0x92)],'endpoint':_0x7d416[_0x4c8566(0x8a)]||null,'tableName':_0x7d416['tableName']||null}};}async[a0_0x3bdb1f(0xbd)](_0x210403,_0x45d6b2,_0x43293,_0x15cab5,_0x56e120={}){const _0x4661d2=a0_0x3bdb1f,_0x255235={'KeBdZ':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','oUdZN':function(_0x42b44f){return _0x42b44f();},'rEEbM':function(_0x5a8c1b,_0xf76d3f){return _0x5a8c1b(_0xf76d3f);}},_0x5485f5=this[_0x4661d2(0xd8)]();if(!_0x5485f5[_0x4661d2(0xb3)])return{'success':![],'reason':_0x4661d2(0xb6),'published':![]};if(!this['isConnected']){const _0x14e8ae=await this['initialize']();if(!_0x14e8ae)return{'success':![],'reason':_0x255235[_0x4661d2(0xa1)],'published':![]};}try{const _0x551808=this[_0x4661d2(0xbc)](_0x45d6b2,_0x43293,_0x15cab5,_0x56e120),_0x45b7b4=_0x56e120['keyField']||'id',_0x2292aa=_0x15cab5?.[_0x45b7b4]||_0x43293?.[_0x45b7b4]||_0x255235[_0x4661d2(0xcd)](uuidv7),_0x58d6e6=await this['producer']['send']({'topic':_0x210403,'messages':[{'key':_0x255235['rEEbM'](String,_0x2292aa),'value':JSON[_0x4661d2(0x86)](_0x551808),'headers':{'event-type':_0x45d6b2,'correlation-id':_0x551808[_0x4661d2(0xca)],'source':_0x551808['source']}}]});return console['log'](_0x4661d2(0xce)+_0x210403+':\x20'+_0x45d6b2+'\x20(key:\x20'+_0x2292aa+')'),{'success':!![],'correlationId':_0x551808['correlationId'],'topic':_0x210403,'partition':_0x58d6e6[0x0]?.['partition'],'offset':_0x58d6e6[0x0]?.[_0x4661d2(0xc0)],'published':!![]};}catch(_0x4b9b0e){return console['error'](_0x4661d2(0x80)+_0x210403+':\x20'+_0x4b9b0e[_0x4661d2(0x87)]),{'success':![],'error':_0x4b9b0e['message'],'published':![]};}}async[a0_0x3bdb1f(0xa6)](_0x197071,_0x14d0dc,_0x44f175,_0xb24a27={}){const _0x14c462=a0_0x3bdb1f,_0xa2998f={'RISHu':_0x14c462(0x93),'XVoQO':_0x14c462(0xbb)},_0x59215b=this['buildTopicName'](_0x197071,_0x14d0dc,_0xa2998f['RISHu'],_0xb24a27['topic']);return this[_0x14c462(0xbd)](_0x59215b,_0xa2998f['XVoQO'],null,_0x44f175,{'module':_0x197071,'endpoint':_0x14d0dc,'keyField':_0xb24a27[_0x14c462(0xc2)],'tableName':_0xb24a27['tableName'],'correlationId':_0xb24a27[_0x14c462(0xca)]});}async['publishUpdate'](_0x29ca38,_0xb5d158,_0x6640fc,_0x5b815c,_0x23261f={}){const _0x1c0d6e=a0_0x3bdb1f,_0x5e94ec={'OLWHd':_0x1c0d6e(0xba),'YlKyI':_0x1c0d6e(0xd4)},_0x5201aa=this['buildTopicName'](_0x29ca38,_0xb5d158,_0x5e94ec['OLWHd'],_0x23261f[_0x1c0d6e(0xcf)]);return this['publishEvent'](_0x5201aa,_0x5e94ec[_0x1c0d6e(0xa8)],_0x6640fc,_0x5b815c,{'module':_0x29ca38,'endpoint':_0xb5d158,'keyField':_0x23261f['keyField'],'tableName':_0x23261f['tableName'],'correlationId':_0x23261f['correlationId']});}async['publishDelete'](_0x16edf4,_0x502618,_0x4bb715,_0x1e9238={}){const _0x4d9c21=a0_0x3bdb1f,_0x38d664={'uJXlT':'ENTITY_DELETED'},_0x32e95=this['buildTopicName'](_0x16edf4,_0x502618,'deleted',_0x1e9238['topic']);return this[_0x4d9c21(0xbd)](_0x32e95,_0x38d664['uJXlT'],_0x4bb715,null,{'module':_0x16edf4,'endpoint':_0x502618,'keyField':_0x1e9238['keyField'],'tableName':_0x1e9238[_0x4d9c21(0xb8)],'correlationId':_0x1e9238[_0x4d9c21(0xca)]});}[a0_0x3bdb1f(0xb2)](){const _0x534538=a0_0x3bdb1f,_0x120402=this['getConfig']();return{'enabled':_0x120402['enabled'],'connected':this['isConnected'],'brokers':_0x120402[_0x534538(0x96)],'clientId':_0x120402['clientId'],'topicPattern':_0x120402[_0x534538(0xb9)]};}async['close'](){const _0xfd34a=a0_0x3bdb1f,_0x2be40c={'XnOKC':_0xfd34a(0xd6)};if(this[_0xfd34a(0x94)]&&this[_0xfd34a(0xac)])try{await this['producer']['disconnect'](),this['isConnected']=![],console['log'](_0x2be40c['XnOKC']);}catch(_0x3d60d5){console[_0xfd34a(0x81)](_0xfd34a(0x9d)+_0x3d60d5['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){const _0x270e0d=a0_0x3bdb1f;instance&&(instance[_0x270e0d(0x89)](),instance=null);}module[a0_0x3bdb1f(0x85)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x5b67(_0x1c43e4,_0x58f7c5){_0x1c43e4=_0x1c43e4-0x146;const _0x233494=a0_0x2334();let _0x5b677d=_0x233494[_0x1c43e4];if(a0_0x5b67['yqEQaG']===undefined){var _0x3f0a23=function(_0x3abb15){const _0x2f3d72='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x38ea01='',_0x3b81d4='';for(let _0x109a02=0x0,_0x4c93cf,_0x8d32a3,_0x3e8869=0x0;_0x8d32a3=_0x3abb15['charAt'](_0x3e8869++);~_0x8d32a3&&(_0x4c93cf=_0x109a02%0x4?_0x4c93cf*0x40+_0x8d32a3:_0x8d32a3,_0x109a02++%0x4)?_0x38ea01+=String['fromCharCode'](0xff&_0x4c93cf>>(-0x2*_0x109a02&0x6)):0x0){_0x8d32a3=_0x2f3d72['indexOf'](_0x8d32a3);}for(let _0x5a2ac8=0x0,_0x2a6cdd=_0x38ea01['length'];_0x5a2ac8<_0x2a6cdd;_0x5a2ac8++){_0x3b81d4+='%'+('00'+_0x38ea01['charCodeAt'](_0x5a2ac8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3b81d4);};a0_0x5b67['kXZddf']=_0x3f0a23,a0_0x5b67['RbfWrF']={},a0_0x5b67['yqEQaG']=!![];}const _0x85bf70=_0x233494[0x0],_0x1cb7e5=_0x1c43e4+_0x85bf70,_0x6717f0=a0_0x5b67['RbfWrF'][_0x1cb7e5];return!_0x6717f0?(_0x5b677d=a0_0x5b67['kXZddf'](_0x5b677d),a0_0x5b67['RbfWrF'][_0x1cb7e5]=_0x5b677d):_0x5b677d=_0x6717f0,_0x5b677d;}const a0_0x538a83=a0_0x5b67;function a0_0x2334(){const _0x8c33a4=['tw9KztOGs29UzwTZAsboEwf0yq','nJmWmdm5mhDXuwLSEa','DxnLCKLK','CMvXDwvZDeLK','Dg9ju09tDhjPBMC','CMvJzwL2zxjjza','y2f0zwDVCNK','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','y29UBMvJDgvK','s29UzMLNDxjHC2KGugXHDgzVCM06ia','zxHPC3rZu3LUyW','y29UzMLN','zgLZy29UBMvJDa','A3zHq0K','Dg9WAwm','vw5RBM93BIbLCNjVCG','tvnivujFu0vsvKLdrv9qt1ju','CMvZB2X2zq','vMnLt0C','mtKYnZu4nwLjrwPkrW','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','CuzuAe8','tK54D0O','CMvXDwLYzufJAW','C3vIC2nYAwjLs2v5','DfvbqM8','CMvHC29U','mtaYmJKZodjTvevAqMK','rePSthC','vw5RBM93BG','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','AujIwNm','zfLorhG','ChvIBgLZAa','q2HHBM5LBcbuyxjNzxq6ia','zNvUy3rPB24','CMvJzwL2zwrbDa','tKnpq3i','mtiWodDKD09SBxm','ntu2otbVB21OyLG','twvZC2fNzsbuExbLoIa','AKXyv0S','tvnivujFqvbjx1bpuLq','D2vIC29JA2v0','mJHUA2zPtLm','y1HpAhu','suvsDxi','mta1odqXotbdzffcwxK','ofbODxfbuG','uNfHswK','y2XLyxjdywnOzq','C29JA2v0','DM9iswq','pt09pt09ie1vtefjieLosvnjquXju0ftssbnrvntquDfsfvcid09pt09pq','y2vyDLe','Bg9N','zw52','u3vIC2nYAwjLieTLEtOG','y2HHBM5LBa','DuX5Ahi','mte2z2vYDgr3','q2n4Ce8','CMvJzwL2zxjjBMzV','BwvZC2fNzq','r01Ou0G','twj2AuS','BwvZC2fNzs1YzwnLAxzLza','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','C3rYAw5NAwz5','BMfTzq','v3Leruq','y2XVC2u','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','q29UBMvJDgLVBIb0Aw1LB3v0','y29UzMLYBwf0Aw9Uq291BNq','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','tvnivujFufvcteLtsf9lrvK','Cgf0Aa','EurVz2K','CgXHDgzVCM1dB25MAwC','t2rLBxq','C0TKveu','igrPDgvYAw1Hig9SzwGG','Be9RAeW','rxjYB3iGAw5PC2LHBgLZyxnPie1LC3nHz2viDwi6','vgLKywSGzgLRzxrHAhvP','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','uxjkqNu','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','mteWntyYne5sCNb0Bq'];a0_0x2334=function(){return _0x8c33a4;};return a0_0x2334();}(function(_0x2e3c22,_0x16b1f5){const _0xd99fc8=a0_0x5b67,_0x9f81bd=_0x2e3c22();while(!![]){try{const _0x242347=-parseInt(_0xd99fc8(0x179))/0x1*(parseInt(_0xd99fc8(0x170))/0x2)+parseInt(_0xd99fc8(0x16f))/0x3*(-parseInt(_0xd99fc8(0x185))/0x4)+parseInt(_0xd99fc8(0x15b))/0x5+parseInt(_0xd99fc8(0x149))/0x6+-parseInt(_0xd99fc8(0x175))/0x7*(parseInt(_0xd99fc8(0x147))/0x8)+parseInt(_0xd99fc8(0x164))/0x9+-parseInt(_0xd99fc8(0x178))/0xa;if(_0x242347===_0x16b1f5)break;else _0x9f81bd['push'](_0x9f81bd['shift']());}catch(_0x3a0693){_0x9f81bd['push'](_0x9f81bd['shift']());}}}(a0_0x2334,0x97b24));const dotenv=require('dotenv'),path=require(a0_0x538a83(0x197)),fs=require('fs'),{v7:uuidv7}=require('uuid');dotenv[a0_0x538a83(0x153)]();let MessageHub;try{const messagehubPath=path[a0_0x538a83(0x159)](__dirname,'../../js/messagehub.js');if(fs[a0_0x538a83(0x152)](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x538a83(0x180)](a0_0x538a83(0x1a0)+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x321ef6){console['error']('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x321ef6['message']);throw a0_0x321ef6;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x382e03){const _0x4eace4=a0_0x538a83,_0x56b104=new Date()[_0x4eace4(0x14c)]();console['log']('['+_0x56b104+']\x20'+_0x382e03);}async function initMessageHub(){const _0x10f794=a0_0x538a83,_0x151070={'Odemt':function(_0xbe15a4,_0x34e6f4){return _0xbe15a4&&_0x34e6f4;},'Wmqhw':'⚠️\x20Timeout:\x20Tidak\x20dapat\x20terhubung\x20ke\x20MessageHub\x20server\x20dalam\x20waktu\x20yang\x20ditentukan','voHId':function(_0x243694,_0x4e805f){return _0x243694(_0x4e805f);},'tUABo':function(_0x4e921b,_0x5aba32){return _0x4e921b===_0x5aba32;},'yDogi':_0x10f794(0x19f),'qFThO':_0x10f794(0x157),'CBzIu':_0x10f794(0x18b),'WyDED':function(_0x414cab,_0x19abe2){return _0x414cab(_0x19abe2);},'VceOG':'broadcast','Oqhfw':function(_0x3b6d13,_0x8dba0a){return _0x3b6d13===_0x8dba0a;},'AaWcY':'true','BCKAe':'localhost','esXRS':_0x10f794(0x15c),'cXOhu':function(_0x570eb5,_0x2127f3){return _0x570eb5(_0x2127f3);},'wfRLv':function(_0x4aeb7c,_0x1a1f4c){return _0x4aeb7c(_0x1a1f4c);},'uLyhr':function(_0x511e23,_0x41467c){return _0x511e23(_0x41467c);},'IERur':'========================================','GMhSH':function(_0x59f8f6,_0xf7859a,_0x22248a){return _0x59f8f6(_0xf7859a,_0x22248a);},'OTwzD':function(_0x2a9954,_0x548e07){return _0x2a9954(_0x548e07);},'wTZzj':_0x10f794(0x146),'gEDJt':_0x10f794(0x167)};if(messagehub&&isConnected)return log(_0x151070['wTZzj']),!![];if(connectionPromise)return log(_0x151070['gEDJt']),connectionPromise;return connectionPromise=new Promise(async(_0x2bcf40,_0x509600)=>{const _0x5ded2b=_0x10f794,_0x551d3b={'NNxwJ':function(_0x46141a,_0x1f948c){return _0x46141a(_0x1f948c);},'AxuaZ':function(_0x330e19,_0x133186){const _0x2f5a68=a0_0x5b67;return _0x151070[_0x2f5a68(0x17d)](_0x330e19,_0x133186);},'NCOCr':function(_0x443a14,_0x31ba97){const _0x3f3b89=a0_0x5b67;return _0x151070[_0x3f3b89(0x162)](_0x443a14,_0x31ba97);},'ceXvQ':_0x151070[_0x5ded2b(0x198)],'upgZf':_0x151070[_0x5ded2b(0x15e)],'QrJBu':function(_0x2159c3,_0x269695){return _0x2159c3(_0x269695);},'MbviK':function(_0x533f22,_0x3e2abe){return _0x533f22(_0x3e2abe);},'CcxpO':_0x151070['CBzIu'],'oBYck':function(_0x100f10,_0x5f20d1){const _0x447f2b=_0x5ded2b;return _0x151070[_0x447f2b(0x18f)](_0x100f10,_0x5f20d1);}};try{_0x151070['WyDED'](log,_0x5ded2b(0x17e)),log('Waktu\x20Inisialisasi:\x20'+new Date()['toLocaleString']()),_0x151070['WyDED'](log,_0x5ded2b(0x148));const _0x20e8e9={'publishKey':process[_0x5ded2b(0x181)][_0x5ded2b(0x196)],'subscribeKey':process['env']['MSHUB_SUBSCRIBE_KEY'],'userId':process['env']['MSHUB_USER_ID']||'restforge-'+(process['env']['RESTFORGE_PROJECT_NAME']||'default')+'-'+process['pid'],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x151070[_0x5ded2b(0x15a)],'autoAcknowledge':process[_0x5ded2b(0x181)]['MSHUB_AUTO_ACKNOWLEDGE']==='true','acknowledgeMessages':_0x151070['Oqhfw'](process[_0x5ded2b(0x181)]['MSHUB_ACKNOWLEDGE_MESSAGES'],_0x151070['AaWcY']),'platform':{'type':process[_0x5ded2b(0x181)]['MSHUB_COMMUNICATION_TYPE']||_0x5ded2b(0x174),'host':process['env']['MSHUB_HOST']||_0x151070['BCKAe'],'api_port':_0x151070['WyDED'](parseInt,process[_0x5ded2b(0x181)][_0x5ded2b(0x173)]||0xdf8),'service_port':parseInt(process[_0x5ded2b(0x181)][_0x5ded2b(0x158)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x20e8e9),log(_0x151070['esXRS']),_0x151070['cXOhu'](log,'Client\x20ID/UserID:\x20'+messagehub[_0x5ded2b(0x14a)]),_0x151070['wfRLv'](log,'Publish\x20Key:\x20'+messagehub['publishKey']),_0x151070['wfRLv'](log,_0x5ded2b(0x182)+messagehub[_0x5ded2b(0x161)]),_0x151070[_0x5ded2b(0x17d)](log,'Tipe\x20Komunikasi:\x20'+messagehub['communicationType']),_0x151070[_0x5ded2b(0x176)](log,_0x5ded2b(0x151)+JSON[_0x5ded2b(0x18d)](messagehub[_0x5ded2b(0x199)])),_0x151070[_0x5ded2b(0x184)](log,_0x151070[_0x5ded2b(0x177)]),messagehub['addListener']({'status':function(_0x330994){const _0x7c61ce=_0x5ded2b;log('Status\x20Listener:\x20'+_0x330994[_0x7c61ce(0x14e)]);if(_0x330994['category']===_0x7c61ce(0x150))log('Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(_0x551d3b[_0x7c61ce(0x15f)](clearTimeout,timeoutHandler),timeoutHandler=null),_0x551d3b['AxuaZ'](_0x2bcf40,!![]);else{if(_0x551d3b[_0x7c61ce(0x16e)](_0x330994['category'],'disconnected')){const _0x275aec=_0x330994['isErrorRelated']===!![];!_0x275aec&&(_0x551d3b['NNxwJ'](log,'Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0x330994[_0x7c61ce(0x163)]||_0x551d3b[_0x7c61ce(0x17f)])),isConnected=![],connectionPromise&&(_0x509600(new Error('Koneksi\x20terputus:\x20'+(_0x330994['reason']||'Tidak\x20diketahui'))),connectionPromise=null));}else{if(_0x330994['category']==='error'){let _0x25db3f=_0x330994['errorDetail']||_0x330994['error']||_0x551d3b['upgZf'];log('⚠️\x20Error:\x20'+_0x25db3f),isConnected=![],connectionPromise&&(_0x551d3b[_0x7c61ce(0x1a1)](_0x509600,new Error(_0x25db3f)),connectionPromise=null);}else{if(_0x551d3b[_0x7c61ce(0x16e)](_0x330994['category'],'message-sent'))_0x551d3b[_0x7c61ce(0x18a)](log,_0x7c61ce(0x18c)+_0x330994['requestId']);else{if(_0x330994['category']===_0x551d3b[_0x7c61ce(0x186)]){const _0x4a2aaa=_0x330994[_0x7c61ce(0x187)]?.[_0x7c61ce(0x18e)]||_0x7c61ce(0x166),_0x4bfdde=_0x330994['receiverInfo']?.['id']||_0x330994[_0x7c61ce(0x14d)],_0x1de4d3=new Date(_0x330994['receiverInfo']?.[_0x7c61ce(0x16d)]||_0x330994[_0x7c61ce(0x16d)]||new Date())['toLocaleTimeString']();_0x551d3b['oBYck'](log,'📩\x20Konfirmasi:\x20Pesan\x20'+_0x330994[_0x7c61ce(0x14b)]+_0x7c61ce(0x19c)+_0x4a2aaa+'\x20('+_0x4bfdde+')\x20pada\x20'+_0x1de4d3+'.\x20Total\x20konfirmasi:\x20'+(_0x330994[_0x7c61ce(0x194)]||0x1));}}}}}}}),timeoutHandler=_0x151070[_0x5ded2b(0x189)](setTimeout,()=>{const _0x665275=_0x5ded2b;_0x151070[_0x665275(0x19a)](!isConnected,connectionPromise)&&(log(_0x151070['Wmqhw']),_0x509600(new Error(_0x665275(0x193))),connectionPromise=null);},0x2710);}catch(_0x1670e9){_0x151070['OTwzD'](log,_0x5ded2b(0x14f)+_0x1670e9[_0x5ded2b(0x188)]),console['error'](_0x5ded2b(0x19e),_0x1670e9),connectionPromise=null,_0x509600(_0x1670e9);}}),connectionPromise;}async function publishMessage(_0x1a0466,_0x5d5325,_0x344ee2,_0x127922={}){const _0x3601c1=a0_0x538a83,_0x441344={'jLXWK':function(_0x5b7604){return _0x5b7604();},'lOkhL':function(_0xa1e19d,_0x447e75){return _0xa1e19d(_0x447e75);},'IniSb':'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======','dcCtE':_0x3601c1(0x15d),'kvaCI':function(_0x5c0404,_0xae95e5){return _0x5c0404!==_0xae95e5;},'iBbZs':function(_0x2cebcb,_0x1c64af){return _0x2cebcb!==_0x1c64af;},'dCjlC':'restforge','YrMfK':'Mengirim\x20pesan\x20ke\x20server...','klDpR':function(_0xcf0a54,_0x59dc2e){return _0xcf0a54(_0x59dc2e);},'dYNDx':_0x3601c1(0x192)};try{!isConnected&&await _0x441344[_0x3601c1(0x172)](initMessageHub);const _0x24b145=messagehub[_0x3601c1(0x183)](_0x1a0466);_0x441344[_0x3601c1(0x19d)](log,_0x441344['IniSb']),_0x441344[_0x3601c1(0x19d)](log,_0x3601c1(0x16b)+_0x24b145[_0x3601c1(0x156)]),log(_0x3601c1(0x171)+_0x5d5325),log(_0x441344['dcCtE']);const _0x42ac13={'requireAck':_0x441344[_0x3601c1(0x155)](_0x127922['requireAck'],undefined)?_0x127922[_0x3601c1(0x160)]:![],'clearCache':_0x441344[_0x3601c1(0x168)](_0x127922[_0x3601c1(0x17b)],undefined)?_0x127922[_0x3601c1(0x17b)]:!![],'senderId':messagehub['socket']?messagehub[_0x3601c1(0x17c)]['id']:_0x441344['dCjlC']};log(_0x441344['YrMfK']);const _0x28bfa9={'type':_0x5d5325,'content':_0x344ee2},_0x391d79=await _0x24b145[_0x3601c1(0x16a)](_0x28bfa9,_0x42ac13);return _0x441344[_0x3601c1(0x19d)](log,'Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x1a0466),{'success':!![],'requestId':_0x391d79[_0x3601c1(0x14b)],'topic':_0x1a0466,'message':'Message\x20sent\x20successfully'};}catch(_0x203068){return _0x441344['klDpR'](log,_0x3601c1(0x191)+_0x203068[_0x3601c1(0x188)]),{'success':![],'error':_0x203068['message'],'topic':_0x1a0466,'message':_0x441344[_0x3601c1(0x169)]};}}async function closeConnection(){const _0x11b96c=a0_0x538a83,_0x4ecca6={'Frhnf':_0x11b96c(0x16c),'DJlLw':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()','ZbmBM':function(_0x3bf2bc,_0x2ba33f){return _0x3bf2bc===_0x2ba33f;},'RqaIi':function(_0x110265,_0x460370){return _0x110265(_0x460370);},'sKdTE':function(_0x1306a1,_0x157514){return _0x1306a1(_0x157514);}};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(typeof messagehub['disconnect']==='function')await messagehub[_0x11b96c(0x154)](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()');else{if(typeof messagehub[_0x11b96c(0x190)]===_0x4ecca6['Frhnf'])await messagehub[_0x11b96c(0x190)](),log(_0x4ecca6[_0x11b96c(0x165)]);else messagehub['socket']&&_0x4ecca6['ZbmBM'](typeof messagehub['socket']['disconnect'],_0x11b96c(0x16c))?(messagehub['socket']['disconnect'](),log(_0x11b96c(0x195))):_0x4ecca6[_0x11b96c(0x17a)](log,'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub');}isConnected=![],connectionPromise=null;}catch(_0x2f539a){_0x4ecca6[_0x11b96c(0x19b)](log,'Error\x20saat\x20menutup\x20koneksi:\x20'+_0x2f539a['message']);}}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|
|
1
|
+
const a0_0x3fe7c5=a0_0xcf51;(function(_0xd084d6,_0x28942d){const _0x18fed6=a0_0xcf51,_0xcb1522=_0xd084d6();while(!![]){try{const _0x4e4f77=-parseInt(_0x18fed6(0x1d1))/0x1*(parseInt(_0x18fed6(0x1e8))/0x2)+-parseInt(_0x18fed6(0x1fa))/0x3*(-parseInt(_0x18fed6(0x207))/0x4)+-parseInt(_0x18fed6(0x1eb))/0x5*(parseInt(_0x18fed6(0x1cb))/0x6)+-parseInt(_0x18fed6(0x1d4))/0x7+-parseInt(_0x18fed6(0x1e0))/0x8+parseInt(_0x18fed6(0x1c2))/0x9*(-parseInt(_0x18fed6(0x21b))/0xa)+-parseInt(_0x18fed6(0x1e7))/0xb*(-parseInt(_0x18fed6(0x1fe))/0xc);if(_0x4e4f77===_0x28942d)break;else _0xcb1522['push'](_0xcb1522['shift']());}catch(_0x583eb4){_0xcb1522['push'](_0xcb1522['shift']());}}}(a0_0x38fc,0x252a8));const dotenv=require(a0_0x3fe7c5(0x1f8)),path=require('path'),fs=require('fs'),{v7:uuidv7}=require(a0_0x3fe7c5(0x1cc));dotenv['config']();function a0_0xcf51(_0x41046c,_0x535505){_0x41046c=_0x41046c-0x1bf;const _0x38fc67=a0_0x38fc();let _0xcf519=_0x38fc67[_0x41046c];if(a0_0xcf51['gyxVZp']===undefined){var _0x3d2042=function(_0x32d111){const _0x21e2ad='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37d97b='',_0x57b330='';for(let _0x31ac71=0x0,_0x67d6a8,_0x59aad9,_0x42f40c=0x0;_0x59aad9=_0x32d111['charAt'](_0x42f40c++);~_0x59aad9&&(_0x67d6a8=_0x31ac71%0x4?_0x67d6a8*0x40+_0x59aad9:_0x59aad9,_0x31ac71++%0x4)?_0x37d97b+=String['fromCharCode'](0xff&_0x67d6a8>>(-0x2*_0x31ac71&0x6)):0x0){_0x59aad9=_0x21e2ad['indexOf'](_0x59aad9);}for(let _0x1297d6=0x0,_0x54f368=_0x37d97b['length'];_0x1297d6<_0x54f368;_0x1297d6++){_0x57b330+='%'+('00'+_0x37d97b['charCodeAt'](_0x1297d6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x57b330);};a0_0xcf51['FcPoLq']=_0x3d2042,a0_0xcf51['rGejXq']={},a0_0xcf51['gyxVZp']=!![];}const _0x28f47b=_0x38fc67[0x0],_0x580f60=_0x41046c+_0x28f47b,_0x36f1ea=a0_0xcf51['rGejXq'][_0x580f60];return!_0x36f1ea?(_0xcf519=a0_0xcf51['FcPoLq'](_0xcf519),a0_0xcf51['rGejXq'][_0x580f60]=_0xcf519):_0xcf519=_0x36f1ea,_0xcf519;}let MessageHub;try{const messagehubPath=path[a0_0x3fe7c5(0x20d)](__dirname,'../../js/messagehub.js');if(fs[a0_0x3fe7c5(0x1d0)](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x3fe7c5(0x1cd)]('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error(a0_0x3fe7c5(0x1ca)+messagehubPath);}catch(a0_0x3c19c8){console['error']('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x3c19c8[a0_0x3fe7c5(0x219)]);throw a0_0x3c19c8;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x1ea472){const _0x3f7e69=a0_0x3fe7c5,_0x44d803=new Date()[_0x3f7e69(0x1da)]();console[_0x3f7e69(0x1cd)]('['+_0x44d803+']\x20'+_0x1ea472);}async function initMessageHub(){const _0x5cf785=a0_0x3fe7c5,_0x5b50e5={'vUqxb':'connected','eMRCX':function(_0x1a8fa8,_0x421dde){return _0x1a8fa8(_0x421dde);},'zGhjh':_0x5cf785(0x1c3),'iLhQE':function(_0x423c3f,_0x10a0e1){return _0x423c3f(_0x10a0e1);},'fBTBo':'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======','NZnIj':function(_0x480018,_0x29430f){return _0x480018(_0x29430f);},'umBPY':'Mode:\x20Koneksi\x20Nyata','axnaz':function(_0x291cd8,_0x5c991c){return _0x291cd8===_0x5c991c;},'AWhjh':'true','zpzaP':'websocket','lnTbo':function(_0x2f3236,_0x55dcb0){return _0x2f3236(_0x55dcb0);},'SwHjC':_0x5cf785(0x208),'eMZZp':function(_0x465aea,_0x1317c4){return _0x465aea(_0x1317c4);},'cJlUC':'========================================','rMivO':function(_0x157b26,_0x3c9786){return _0x157b26&&_0x3c9786;},'KrRZK':_0x5cf785(0x1dc),'ncNXU':function(_0x18716d,_0x4cbe21){return _0x18716d(_0x4cbe21);}};if(_0x5b50e5[_0x5cf785(0x1c6)](messagehub,isConnected))return _0x5b50e5[_0x5cf785(0x1c0)](log,_0x5b50e5[_0x5cf785(0x1d8)]),!![];if(connectionPromise)return _0x5b50e5[_0x5cf785(0x1df)](log,_0x5cf785(0x21f)),connectionPromise;return connectionPromise=new Promise(async(_0x26ad28,_0x15029b)=>{const _0x1d5228=_0x5cf785,_0x5e46c8={'YyzkS':function(_0xbb1d43,_0x405b4e){return _0xbb1d43(_0x405b4e);},'ILzzz':function(_0x1b18e0,_0x427094){return _0x1b18e0===_0x427094;},'xqNGP':_0x5b50e5['vUqxb'],'yyCiB':function(_0x2fed1a,_0x143b64){return _0x5b50e5['eMRCX'](_0x2fed1a,_0x143b64);},'NaFzM':function(_0x235dbc,_0x236f77){return _0x5b50e5['eMRCX'](_0x235dbc,_0x236f77);},'hUJZS':function(_0x181801,_0x52eee2){return _0x181801===_0x52eee2;},'qrmpT':_0x1d5228(0x1de),'yJcOd':'Tidak\x20diketahui','jvVaO':function(_0x12197f,_0x41d371){return _0x12197f(_0x41d371);},'UPGLt':function(_0x5e2a34,_0x2b928a){return _0x5e2a34===_0x2b928a;},'oPXJm':_0x1d5228(0x212),'nRNht':function(_0x24859c,_0x5c0a87){return _0x24859c&&_0x5c0a87;},'EhhBT':_0x5b50e5[_0x1d5228(0x1bf)],'CnTZR':_0x1d5228(0x202)};try{_0x5b50e5[_0x1d5228(0x1e4)](log,_0x5b50e5[_0x1d5228(0x1d5)]),_0x5b50e5[_0x1d5228(0x206)](log,_0x1d5228(0x20c)+new Date()['toLocaleString']()),_0x5b50e5[_0x1d5228(0x1e4)](log,_0x5b50e5['umBPY']);const _0xe83efd={'publishKey':process['env'][_0x1d5228(0x21a)],'subscribeKey':process['env']['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x1d5228(0x1f9)][_0x1d5228(0x20e)]||_0x1d5228(0x1f7)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x1d5228(0x1c9))+'-'+process[_0x1d5228(0x1c4)],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x1d5228(0x1ec),'autoAcknowledge':_0x5b50e5['axnaz'](process['env'][_0x1d5228(0x1f2)],'true'),'acknowledgeMessages':process[_0x1d5228(0x1f9)]['MSHUB_ACKNOWLEDGE_MESSAGES']===_0x5b50e5[_0x1d5228(0x200)],'platform':{'type':process[_0x1d5228(0x1f9)]['MSHUB_COMMUNICATION_TYPE']||_0x5b50e5['zpzaP'],'host':process[_0x1d5228(0x1f9)]['MSHUB_HOST']||'localhost','api_port':_0x5b50e5[_0x1d5228(0x1c0)](parseInt,process['env']['MSHUB_API_PORT']||0xdf8),'service_port':parseInt(process[_0x1d5228(0x1f9)][_0x1d5228(0x210)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0xe83efd),log(_0x5b50e5['SwHjC']),log(_0x1d5228(0x204)+messagehub[_0x1d5228(0x1fc)]),_0x5b50e5['eMZZp'](log,_0x1d5228(0x20b)+messagehub[_0x1d5228(0x20a)]),_0x5b50e5[_0x1d5228(0x1d6)](log,_0x1d5228(0x1e1)+messagehub['subscribeKey']),_0x5b50e5['eMZZp'](log,_0x1d5228(0x20f)+messagehub['communicationType']),log(_0x1d5228(0x1f1)+JSON['stringify'](messagehub['platformConfig'])),log(_0x5b50e5['cJlUC']),messagehub['addListener']({'status':function(_0xf9bdbd){const _0x50e9c2=_0x1d5228;_0x5e46c8['YyzkS'](log,'Status\x20Listener:\x20'+_0xf9bdbd[_0x50e9c2(0x1d7)]);if(_0x5e46c8['ILzzz'](_0xf9bdbd['category'],_0x5e46c8[_0x50e9c2(0x1e5)]))_0x5e46c8['YyzkS'](log,_0x50e9c2(0x1d2)),isConnected=!![],timeoutHandler&&(_0x5e46c8['yyCiB'](clearTimeout,timeoutHandler),timeoutHandler=null),_0x5e46c8[_0x50e9c2(0x1e3)](_0x26ad28,!![]);else{if(_0x5e46c8['hUJZS'](_0xf9bdbd['category'],_0x5e46c8[_0x50e9c2(0x1dd)])){const _0x58b8c8=_0xf9bdbd[_0x50e9c2(0x209)]===!![];!_0x58b8c8&&(log('Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0xf9bdbd[_0x50e9c2(0x203)]||_0x5e46c8[_0x50e9c2(0x1ee)])),isConnected=![],connectionPromise&&(_0x15029b(new Error('Koneksi\x20terputus:\x20'+(_0xf9bdbd['reason']||_0x5e46c8['yJcOd']))),connectionPromise=null));}else{if(_0x5e46c8['hUJZS'](_0xf9bdbd['category'],_0x50e9c2(0x1f4))){let _0x3b463d=_0xf9bdbd[_0x50e9c2(0x218)]||_0xf9bdbd['error']||_0x50e9c2(0x1c1);log('⚠️\x20Error:\x20'+_0x3b463d),isConnected=![],connectionPromise&&(_0x5e46c8['jvVaO'](_0x15029b,new Error(_0x3b463d)),connectionPromise=null);}else{if(_0x5e46c8['UPGLt'](_0xf9bdbd[_0x50e9c2(0x1d7)],'message-sent'))log(_0x50e9c2(0x215)+_0xf9bdbd[_0x50e9c2(0x1f6)]);else{if(_0x5e46c8[_0x50e9c2(0x1ef)](_0xf9bdbd['category'],_0x50e9c2(0x1c5))){const _0x360f09=_0xf9bdbd[_0x50e9c2(0x1db)]?.['name']||_0x5e46c8[_0x50e9c2(0x1e9)],_0x50fa4b=_0xf9bdbd['receiverInfo']?.['id']||_0xf9bdbd['receiverId'],_0x5dbebe=new Date(_0xf9bdbd[_0x50e9c2(0x1db)]?.[_0x50e9c2(0x1d9)]||_0xf9bdbd['receivedAt']||new Date())['toLocaleTimeString']();log(_0x50e9c2(0x1fb)+_0xf9bdbd['requestId']+_0x50e9c2(0x21c)+_0x360f09+'\x20('+_0x50fa4b+_0x50e9c2(0x1ce)+_0x5dbebe+'.\x20Total\x20konfirmasi:\x20'+(_0xf9bdbd['confirmationCount']||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x2dbaac=_0x1d5228;_0x5e46c8['nRNht'](!isConnected,connectionPromise)&&(log(_0x5e46c8[_0x2dbaac(0x1ed)]),_0x5e46c8[_0x2dbaac(0x1e3)](_0x15029b,new Error(_0x5e46c8['CnTZR'])),connectionPromise=null);},0x2710);}catch(_0x567d3e){log(_0x1d5228(0x21e)+_0x567d3e[_0x1d5228(0x219)]),console[_0x1d5228(0x1f4)]('Error\x20inisialisasi\x20MessageHub:',_0x567d3e),connectionPromise=null,_0x5b50e5['eMRCX'](_0x15029b,_0x567d3e);}}),connectionPromise;}async function publishMessage(_0x5d5816,_0x40c586,_0x3db920,_0x1821fb={}){const _0x4f4bb3=a0_0x3fe7c5,_0x473b63={'RGzWA':function(_0x3cd3c9){return _0x3cd3c9();},'bfTaI':function(_0x20dbb6,_0x12c44a){return _0x20dbb6(_0x12c44a);},'LfxEL':_0x4f4bb3(0x216),'RPYHw':function(_0x4524ee,_0x5a8f87){return _0x4524ee!==_0x5a8f87;},'omEaw':_0x4f4bb3(0x213),'bRBSR':function(_0x51e859,_0x4cc96d){return _0x51e859(_0x4cc96d);},'uGQaE':'Message\x20sent\x20successfully'};try{!isConnected&&await _0x473b63[_0x4f4bb3(0x1e6)](initMessageHub);const _0x1d4bd0=messagehub[_0x4f4bb3(0x21d)](_0x5d5816);_0x473b63['bfTaI'](log,'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======'),log(_0x4f4bb3(0x214)+_0x1d4bd0[_0x4f4bb3(0x1d3)]),_0x473b63[_0x4f4bb3(0x1f5)](log,'Message\x20Type:\x20'+_0x40c586),_0x473b63['bfTaI'](log,_0x473b63['LfxEL']);const _0x1b7d31={'requireAck':_0x473b63['RPYHw'](_0x1821fb['requireAck'],undefined)?_0x1821fb[_0x4f4bb3(0x201)]:![],'clearCache':_0x1821fb[_0x4f4bb3(0x1ea)]!==undefined?_0x1821fb[_0x4f4bb3(0x1ea)]:!![],'senderId':messagehub[_0x4f4bb3(0x1ff)]?messagehub[_0x4f4bb3(0x1ff)]['id']:_0x473b63['omEaw']};log('Mengirim\x20pesan\x20ke\x20server...');const _0x37f15e={'type':_0x40c586,'content':_0x3db920},_0x1c0f6f=await _0x1d4bd0[_0x4f4bb3(0x1f3)](_0x37f15e,_0x1b7d31);return _0x473b63['bRBSR'](log,_0x4f4bb3(0x205)+_0x5d5816),{'success':!![],'requestId':_0x1c0f6f['requestId'],'topic':_0x5d5816,'message':_0x473b63['uGQaE']};}catch(_0x49d9bc){return log(_0x4f4bb3(0x211)+_0x49d9bc['message']),{'success':![],'error':_0x49d9bc['message'],'topic':_0x5d5816,'message':'Failed\x20to\x20send\x20message'};}}async function closeConnection(){const _0xdffbb3=a0_0x3fe7c5,_0x29d31b={'BzwGi':function(_0x4e79d7,_0x28ad02){return _0x4e79d7(_0x28ad02);},'WNXNL':_0xdffbb3(0x1c7),'FogVt':function(_0x10ab1e,_0x4fee1f){return _0x10ab1e===_0x4fee1f;},'Rhuew':function(_0x17ecb4,_0x1d5d85){return _0x17ecb4(_0x1d5d85);},'XisTT':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()','oMiuU':_0xdffbb3(0x1fd),'TAUwf':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub'};timeoutHandler&&(_0x29d31b['BzwGi'](clearTimeout,timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(typeof messagehub['disconnect']===_0x29d31b[_0xdffbb3(0x1c8)])await messagehub['disconnect'](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()');else{if(_0x29d31b['FogVt'](typeof messagehub[_0xdffbb3(0x217)],_0xdffbb3(0x1c7)))await messagehub[_0xdffbb3(0x217)](),_0x29d31b[_0xdffbb3(0x1e2)](log,_0x29d31b['XisTT']);else messagehub[_0xdffbb3(0x1ff)]&&_0x29d31b['FogVt'](typeof messagehub[_0xdffbb3(0x1ff)]['disconnect'],_0xdffbb3(0x1c7))?(messagehub[_0xdffbb3(0x1ff)]['disconnect'](),log(_0x29d31b['oMiuU'])):log(_0x29d31b['TAUwf']);}isConnected=![],connectionPromise=null;}catch(_0x34a47a){log(_0xdffbb3(0x1f0)+_0x34a47a['message']);}}module[a0_0x3fe7c5(0x1cf)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};function a0_0x38fc(){const _0x10e68a=['pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','AxnfCNjVCLjLBgf0zwq','ChvIBgLZAeTLEq','uhvIBgLZAcblzxK6ia','v2fRDhuGsw5PC2LHBgLZyxnPoIa','CMvZB2X2zq','tvnivujFvvnfuL9jra','vgLWzsblB211BMLRyxnPoIa','tvnivujFu0vsvKLdrv9qt1ju','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','vw5RBM93BG','CMvZDgzVCMDL','q2HHBM5LBcbuyxjNzxq6ia','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','y2XVC2u','zxjYB3jezxrHAwW','BwvZC2fNzq','tvnivujFufvcteLtsf9lrvK','mtbTv2PQwM4','igrPDgvYAw1Hig9SzwGG','y2HHBM5LBa','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','EKDOAMG','Bg5uyM8','vw5RBM93BIbLCNjVCG','otC3nZe1AeLdtfvH','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','CgLK','BwvZC2fNzs1YzwnLAxzLza','CK1PDK8','zNvUy3rPB24','v05ytKW','zgvMyxvSDa','twvZC2fNzuH1yIbtreSGBM90igzVDw5Kigf0ia','mtaYCKT4qvHu','DxvPza','Bg9N','ksbWywrHia','zxHWB3j0CW','zxHPC3rZu3LUyW','mwjnzLvKwa','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','Dg9WAwm','mtiZmteZmKrnELzita','zKjuqM8','zu1sq1G','y2f0zwDVCNK','s3jswKS','CMvJzwL2zwrbDa','Dg9ju09tDhjPBMC','CMvJzwL2zxjjBMzV','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','CxjTCfq','zgLZy29UBMvJDgvK','BMnowfu','mtuYmdaZmMjJrhHPua','u3vIC2nYAwjLieTLEtOG','uMH1zxC','tMfgEK0','AuXOuuu','Ehfor1a','uKD6v0e','mtmZmJf3sgjWAee','mJuWmteWtur4AeTs','B1bysM0','y2XLyxjdywnOzq','nJi5otbzqKfWww4','yNjVywrJyxn0','rwHOqLq','EuPJt2q','suX6ENO','rxjYB3iGC2fHDcbTzw51DhvWigTVBMvRC2K6ia','s29UzMLNDxjHC2KGugXHDgzVCM06ia','tvnivujFqvvut19bq0Tot1Dmrurhrq','ChvIBgLZAa','zxjYB3i','yMzuyuK','CMvXDwvZDeLK','CMvZDgzVCMDLlq','zg90zw52','zw52','otLgvgvnBvy','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','DxnLCKLK','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','oti3nMPbqLLstW','C29JA2v0','qvDOAMG','CMvXDwLYzufJAW','q29UBMvJDgLVBIb0Aw1LB3v0','CMvHC29U','q2XPzw50ieLel1vZzxjjrdOG','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','tLPUswO','mZyYmhvUrLfQuG'];a0_0x38fc=function(){return _0x10e68a;};return a0_0x38fc();}
|