@restforgejs/platform 5.1.4 → 5.1.6
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/data/pull.js +16 -7
- package/generators/cli/data/push.js +17 -7
- package/generators/cli/init.js +347 -97
- package/generators/lib/data/data-scope.js +138 -0
- package/generators/lib/data/envelope.js +25 -9
- package/generators/lib/data/pull-runner.js +44 -37
- package/generators/lib/data/push-runner.js +64 -46
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const
|
|
1
|
+
'use strict';const a0_0xb3a81a=a0_0x5e6f;(function(_0x4a9384,_0x31b5c7){const _0x3f86fd=a0_0x5e6f,_0x2b8179=_0x4a9384();while(!![]){try{const _0x4e1378=parseInt(_0x3f86fd(0xf8))/0x1+parseInt(_0x3f86fd(0x105))/0x2+parseInt(_0x3f86fd(0x103))/0x3+-parseInt(_0x3f86fd(0xf9))/0x4*(-parseInt(_0x3f86fd(0x117))/0x5)+parseInt(_0x3f86fd(0x119))/0x6*(-parseInt(_0x3f86fd(0x116))/0x7)+parseInt(_0x3f86fd(0x127))/0x8+-parseInt(_0x3f86fd(0x10e))/0x9;if(_0x4e1378===_0x31b5c7)break;else _0x2b8179['push'](_0x2b8179['shift']());}catch(_0x525d04){_0x2b8179['push'](_0x2b8179['shift']());}}}(a0_0x2b40,0xd238e));function a0_0x5e6f(_0x453f1b,_0x1bbae6){_0x453f1b=_0x453f1b-0xf7;const _0x2b4050=a0_0x2b40();let _0x5e6fdf=_0x2b4050[_0x453f1b];if(a0_0x5e6f['jGQoNN']===undefined){var _0x1873d0=function(_0x3febd9){const _0x4e1e43='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1daecd='',_0x377960='';for(let _0xfbcd01=0x0,_0x329cc1,_0x573578,_0x12fa05=0x0;_0x573578=_0x3febd9['charAt'](_0x12fa05++);~_0x573578&&(_0x329cc1=_0xfbcd01%0x4?_0x329cc1*0x40+_0x573578:_0x573578,_0xfbcd01++%0x4)?_0x1daecd+=String['fromCharCode'](0xff&_0x329cc1>>(-0x2*_0xfbcd01&0x6)):0x0){_0x573578=_0x4e1e43['indexOf'](_0x573578);}for(let _0x3a0c86=0x0,_0x14a281=_0x1daecd['length'];_0x3a0c86<_0x14a281;_0x3a0c86++){_0x377960+='%'+('00'+_0x1daecd['charCodeAt'](_0x3a0c86)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x377960);};a0_0x5e6f['apbcBh']=_0x1873d0,a0_0x5e6f['qYsxnn']={},a0_0x5e6f['jGQoNN']=!![];}const _0x1e18e9=_0x2b4050[0x0],_0x2eb679=_0x453f1b+_0x1e18e9,_0x19d134=a0_0x5e6f['qYsxnn'][_0x2eb679];return!_0x19d134?(_0x5e6fdf=a0_0x5e6f['apbcBh'](_0x5e6fdf),a0_0x5e6f['qYsxnn'][_0x2eb679]=_0x5e6fdf):_0x5e6fdf=_0x19d134,_0x5e6fdf;}const multer=require(a0_0xb3a81a(0x10b)),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require('./logger');class UploadHandlerV2{constructor(){this['_tempDir']=null;}get['tempDir'](){const _0x1ea57e=a0_0xb3a81a,_0x186364={'OAevC':_0x1ea57e(0x10d),'KqSVv':'temp'};if(!this['_tempDir']){const _0x1c9804=process['env']['RESTFORGE_PROJECT_NAME']||_0x186364['OAevC'];this['_tempDir']=process[_0x1ea57e(0x102)]['UPLOAD_TEMP_DIR']||path['join'](process[_0x1ea57e(0x112)](),_0x186364[_0x1ea57e(0x115)],_0x1ea57e(0x123),_0x1c9804),!fsSync['existsSync'](this['_tempDir'])&&fsSync[_0x1ea57e(0x11d)](this['_tempDir'],{'recursive':!![]});}return this[_0x1ea57e(0xfb)];}[a0_0xb3a81a(0x11e)](_0x467991={}){const _0x3dd8c3=a0_0xb3a81a,_0x4d6fb9={'iGZsS':'hex','ObsAh':function(_0x466f5a,_0x48d1df){return _0x466f5a===_0x48d1df;},'DQnsF':function(_0x1685ad,_0x4bad42,_0x255fcd){return _0x1685ad(_0x4bad42,_0x255fcd);},'cROjw':'files'},_0x2a2351=_0x467991[_0x3dd8c3(0x11a)]||0x5,_0x30e197=this[_0x3dd8c3(0x120)](_0x467991[_0x3dd8c3(0x104)]||_0x3dd8c3(0x110)),_0x41f5af=_0x467991['allowedTypes']||[],_0x248037=multer['diskStorage']({'destination':(_0x2c7c18,_0x2c642c,_0x754ef0)=>{const _0x17c7cf=_0x3dd8c3;!fsSync[_0x17c7cf(0x114)](this[_0x17c7cf(0x10f)])&&fsSync['mkdirSync'](this[_0x17c7cf(0x10f)],{'recursive':!![]}),_0x754ef0(null,this['tempDir']);},'filename':(_0x2bfe2b,_0x550a6c,_0x271108)=>{const _0x472476=_0x3dd8c3,_0x1439ba=crypto['randomBytes'](0x8)[_0x472476(0x106)](_0x4d6fb9[_0x472476(0x113)]),_0x5de566=Date['now'](),_0x709ecd=path['extname'](_0x550a6c['originalname']);_0x271108(null,'upload-'+_0x5de566+'-'+_0x1439ba+_0x709ecd);}}),_0x4febbc=(_0x377d03,_0x2ea112,_0x27c499)=>{const _0x2ba734=_0x3dd8c3;if(_0x4d6fb9[_0x2ba734(0x10a)](_0x41f5af['length'],0x0))return _0x4d6fb9['DQnsF'](_0x27c499,null,!![]);const _0x14cac7=path[_0x2ba734(0x121)](_0x2ea112[_0x2ba734(0x125)])['toLowerCase']()['replace']('.','');_0x41f5af[_0x2ba734(0x122)](_0x14cac7)?_0x27c499(null,!![]):_0x27c499(new Error(_0x2ba734(0x101)+_0x14cac7+_0x2ba734(0x11b)+_0x41f5af['join'](',\x20')));};return multer({'storage':_0x248037,'limits':{'fileSize':_0x30e197,'files':_0x2a2351},'fileFilter':_0x4febbc})['array'](_0x4d6fb9[_0x3dd8c3(0xfc)],_0x2a2351);}async[a0_0xb3a81a(0x11c)](_0x6dd031,_0x54f2ea,_0x318180={}){const _0x2feb3b=a0_0xb3a81a,_0x4f9f33={'ZsMWL':'../storage/file-metadata-helper'},{createFileMetadata:_0x4648fd}=require(_0x4f9f33[_0x2feb3b(0xff)]),_0x1eca13=[];for(const _0x49d25b of _0x6dd031){try{const _0xf91b1e=_0x54f2ea[_0x2feb3b(0xfe)](_0x49d25b['originalname'],{'prefix':_0x318180['prefix']||'','project':_0x318180['project']||'','module':_0x318180[_0x2feb3b(0x129)]||'','endpoint':_0x318180['endpoint']||''}),_0x2f6fd1=fsSync[_0x2feb3b(0xf7)](_0x49d25b[_0x2feb3b(0xfa)]),_0x48304f=await _0x54f2ea['upload'](_0x2f6fd1,_0xf91b1e,{'contentType':_0x49d25b['mimetype'],'fileSize':_0x49d25b['size']}),_0x2dd1c2=_0x4648fd({'key':_0x48304f['key'],'originalName':_0x49d25b['originalname'],'fileName':path[_0x2feb3b(0x128)](_0xf91b1e),'contentType':_0x49d25b[_0x2feb3b(0x11f)],'size':_0x49d25b[_0x2feb3b(0x107)],'url':_0x48304f[_0x2feb3b(0x111)],'provider':_0x54f2ea['providerName'],'bucket':_0x54f2ea[_0x2feb3b(0x108)]||null,'uploadedBy':_0x318180[_0x2feb3b(0x126)]||null});_0x1eca13['push'](_0x2dd1c2);}catch(_0x1d7df4){logger['error']({'event':'upload_v2_process_error','file':_0x49d25b[_0x2feb3b(0x125)],'error':_0x1d7df4[_0x2feb3b(0x12a)]},_0x2feb3b(0x109)+_0x49d25b[_0x2feb3b(0x125)]);throw _0x1d7df4;}finally{await this[_0x2feb3b(0x10c)](_0x49d25b['path']);}}return _0x1eca13;}async['_deleteTempFile'](_0xed169e){const _0x3b1d22=a0_0xb3a81a,_0x39a8d0={'pFoYE':'upload_v2_temp_delete_warn'};try{await fs['unlink'](_0xed169e);}catch(_0x53b307){logger[_0x3b1d22(0x124)]({'event':_0x39a8d0['pFoYE'],'filePath':_0xed169e,'error':_0x53b307['message']},'Failed\x20to\x20delete\x20temp\x20file');}}[a0_0xb3a81a(0x120)](_0x2f010d){const _0x4eae73=a0_0xb3a81a,_0xc29f8f={'ilBaf':function(_0x4dbb85,_0x309a15){return _0x4dbb85(_0x309a15);},'erXLB':function(_0x48943c,_0x309d5d){return _0x48943c*_0x309d5d;}};if(typeof _0x2f010d===_0x4eae73(0xfd))return _0x2f010d;const _0x301fff=_0xc29f8f['ilBaf'](String,_0x2f010d)['trim']()['match'](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x301fff)return 0xa*0x400*0x400;const _0x771edd=parseFloat(_0x301fff[0x1]),_0xe4d495=_0x301fff[0x2]['toUpperCase'](),_0x4ebf0f={'B':0x1,'KB':0x400,'MB':0x400*0x400,'GB':0x400*0x400*0x400};return Math['floor'](_0xc29f8f[_0x4eae73(0x100)](_0x771edd,_0x4ebf0f[_0xe4d495]||0x1));}}module[a0_0xb3a81a(0x118)]=new UploadHandlerV2();function a0_0x2b40(){const _0x459819=['rMLSzsb0ExbLiciU','zw52','mtC0mtK0ngnqzKzKsW','Bwf4rMLSzvnPEMu','mZi5nJmWD2vzEhLs','Dg9tDhjPBMC','C2L6zq','yNvJA2v0','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fKzwqGzMLSztOG','t2jZqwG','BxvSDgvY','x2rLBgv0zvrLBxbgAwXL','zgvMyxvSDa','ota1nZuXouvPy29zza','DgvTCerPCG','mtbnqG','DxjS','y3DK','AuDAC1m','zxHPC3rZu3LUyW','s3ftvNy','mZvvu1nSAKi','mZuXmZy5nufLtg1ssa','zxHWB3j0CW','nZiZmdqYAujmsfLt','Bwf4rMLSzxm','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG','ChjVy2vZC1vWBg9HzgvKrMLSzxm','BwTKAxjtEw5J','y3jLyxrLvxbSB2fKtwLKzgXLD2fYzq','BwLTzxr5Cgu','x3bHCNnLrMLSzvnPEMu','zxH0BMfTzq','Aw5JBhvKzxm','DxbSB2fKCW','D2fYBG','B3jPz2LUywXUyw1L','DxbSB2fKzwrcEq','mJe5ntCYmfrWzM5zrG','yMfZzw5HBwu','Bw9KDwXL','BwvZC2fNzq','y3jLyxrLuMvHzfn0CMvHBq','nZq3mZi5ufHcDNft','ngTMDfzgtq','Cgf0Aa','x3rLBxbeAxi','y1jpANC','BNvTyMvY','z2vUzxjHDgvlzxK','wNnnv0W','zxjytei'];a0_0x2b40=function(){return _0x459819;};return a0_0x2b40();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x5cd840=a0_0x2911;(function(_0x4da776,_0x3ef054){const _0x208913=a0_0x2911,_0x39a086=_0x4da776();while(!![]){try{const _0x5848ee=parseInt(_0x208913(0x158))/0x1+-parseInt(_0x208913(0x143))/0x2+parseInt(_0x208913(0x167))/0x3+parseInt(_0x208913(0x160))/0x4+parseInt(_0x208913(0x156))/0x5*(-parseInt(_0x208913(0x168))/0x6)+parseInt(_0x208913(0x14a))/0x7+-parseInt(_0x208913(0x15f))/0x8*(parseInt(_0x208913(0x14b))/0x9);if(_0x5848ee===_0x3ef054)break;else _0x39a086['push'](_0x39a086['shift']());}catch(_0x25b010){_0x39a086['push'](_0x39a086['shift']());}}}(a0_0x1ca7,0xbd015));const multer=require(a0_0x5cd840(0x145)),path=require(a0_0x5cd840(0x150)),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require('./logger');class UploadHandler{constructor(){const _0x3b7237=a0_0x5cd840,_0x435049={'ncdqP':function(_0x3e096b,_0x392447){return _0x3e096b*_0x392447;}};this['_uploadDir']=null,this['maxFileSize']=_0x435049[_0x3b7237(0x162)](0xa*0x400,0x400);}get['uploadDir'](){const _0x2d5227=a0_0x5cd840,_0x9f4eaa={'goGuS':_0x2d5227(0x15b),'rfOrH':_0x2d5227(0x16b),'tnzva':_0x2d5227(0x14f)};if(!this[_0x2d5227(0x164)]){const _0x584a6a=process[_0x2d5227(0x157)][_0x2d5227(0x148)]||_0x9f4eaa['goGuS'];this['_uploadDir']=process['env']['UPLOAD_DIR']||path[_0x2d5227(0x151)](__dirname,_0x2d5227(0x142)+_0x584a6a);try{!fsSync['existsSync'](this[_0x2d5227(0x164)])&&fsSync['mkdirSync'](this['_uploadDir'],{'recursive':!![]}),logger[_0x2d5227(0x140)]({'event':'upload_handler_init','dir':this['_uploadDir']},_0x9f4eaa['rfOrH']);}catch(_0x38bcfc){logger[_0x2d5227(0x149)]({'event':_0x9f4eaa['tnzva'],'error':_0x38bcfc[_0x2d5227(0x155)]},_0x2d5227(0x141));}}return this['_uploadDir'];}[a0_0x5cd840(0x15c)](){const _0x1197d8={'eMYWZ':function(_0x36526d,_0x3e924c,_0x3fa0bd){return _0x36526d(_0x3e924c,_0x3fa0bd);}};return multer['diskStorage']({'destination':(_0x24bdae,_0x585f3f,_0x1ddea2)=>{const _0xb3a721=a0_0x2911;!fsSync[_0xb3a721(0x15a)](this[_0xb3a721(0x144)])&&fsSync[_0xb3a721(0x14d)](this['uploadDir'],{'recursive':!![]}),_0x1197d8['eMYWZ'](_0x1ddea2,null,this['uploadDir']);},'filename':(_0x45eac4,_0x204e51,_0x1c2a0d)=>{const _0x1409f4=a0_0x2911,_0x386da9=crypto['randomBytes'](0x8)[_0x1409f4(0x161)]('hex'),_0x4316b6=Date[_0x1409f4(0x153)](),_0x21f3f7=path['extname'](_0x204e51['originalname']);_0x1197d8[_0x1409f4(0x165)](_0x1c2a0d,null,_0x1409f4(0x166)+_0x4316b6+'-'+_0x386da9+_0x21f3f7);}});}[a0_0x5cd840(0x169)](){const _0xeac332=a0_0x5cd840,_0x237f68={'mzfIa':'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet','hpXhE':_0xeac332(0x15e),'jyhqb':'.xls','IguQQ':function(_0x18c39a,_0x4738f9){return _0x18c39a(_0x4738f9);},'VGNar':'file'};return _0x237f68['IguQQ'](multer,{'storage':this['getStorage'](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x126364,_0x1e7f76,_0x48a3e4)=>{const _0xe92b45=_0xeac332,_0x20a22d=[_0x237f68[_0xe92b45(0x154)],_0xe92b45(0x15d)],_0x13d3f9=[_0x237f68['hpXhE'],_0x237f68['jyhqb']],_0x2f71ff=path['extname'](_0x1e7f76['originalname'])['toLowerCase']();_0x20a22d['includes'](_0x1e7f76['mimetype'])&&_0x13d3f9['includes'](_0x2f71ff)?_0x48a3e4(null,!![]):_0x48a3e4(new Error('Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed'));}})[_0xeac332(0x14c)](_0x237f68[_0xeac332(0x159)]);}async[a0_0x5cd840(0x163)](_0x9a35e){const _0x5951fd=a0_0x5cd840,_0xbc203c={'lmmOw':_0x5951fd(0x146),'WGFAW':_0x5951fd(0x147)};try{await fs['unlink'](_0x9a35e),logger[_0x5951fd(0x140)]({'event':_0xbc203c[_0x5951fd(0x152)],'filePath':_0x9a35e},_0x5951fd(0x16a));}catch(_0x2c1e72){logger['error']({'event':_0xbc203c[_0x5951fd(0x14e)],'filePath':_0x9a35e,'error':_0x2c1e72[_0x5951fd(0x155)]},'Failed\x20to\x20delete\x20uploaded\x20file');}}}module['exports']=new UploadHandler();function a0_0x2911(_0x127960,_0x18c239){_0x127960=_0x127960-0x140;const _0x1ca732=a0_0x1ca7();let _0x2911a1=_0x1ca732[_0x127960];if(a0_0x2911['rjGGeE']===undefined){var _0x578161=function(_0x144530){const _0x599176='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1f8dc2='',_0x4fa25e='';for(let _0x2cf160=0x0,_0xddb3c1,_0x782400,_0x1aabcc=0x0;_0x782400=_0x144530['charAt'](_0x1aabcc++);~_0x782400&&(_0xddb3c1=_0x2cf160%0x4?_0xddb3c1*0x40+_0x782400:_0x782400,_0x2cf160++%0x4)?_0x1f8dc2+=String['fromCharCode'](0xff&_0xddb3c1>>(-0x2*_0x2cf160&0x6)):0x0){_0x782400=_0x599176['indexOf'](_0x782400);}for(let _0x2dada2=0x0,_0x183d80=_0x1f8dc2['length'];_0x2dada2<_0x183d80;_0x2dada2++){_0x4fa25e+='%'+('00'+_0x1f8dc2['charCodeAt'](_0x2dada2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4fa25e);};a0_0x2911['wyUcbp']=_0x578161,a0_0x2911['QrnkGR']={},a0_0x2911['rjGGeE']=!![];}const _0x96c59d=_0x1ca732[0x0],_0xd9bb39=_0x127960+_0x96c59d,_0x2646b4=a0_0x2911['QrnkGR'][_0xd9bb39];return!_0x2646b4?(_0x2911a1=a0_0x2911['wyUcbp'](_0x2911a1),a0_0x2911['QrnkGR'][_0xd9bb39]=_0x2911a1):_0x2911a1=_0x2646b4,_0x2911a1;}function a0_0x1ca7(){const _0x3072db=['mtCZodCXDNjMEvLL','vKDoyxi','zxHPC3rZu3LUyW','zgvMyxvSDa','z2v0u3rVCMfNzq','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','lNHSC3G','odm3nLH1zuTXEq','ndK2mdmWofPlBxbwCq','Dg9tDhjPBMC','BMnKCva','zgvSzxrLrMLSzq','x3vWBg9HzerPCG','zu1zv1O','DxbSB2fKlq','mJu0mJGXoePkAuniwq','odr2vLvNAeO','z2v0vxbSB2fKtwLKzgXLD2fYzq','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','Aw5MBW','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','lI4VlI4VDgvTCc91CgXVywrZlW','mJKZmdaXnM1UqMjSva','DxbSB2fKrgLY','BxvSDgvY','DxbSB2fKx2zPBgvFzgvSzxrLza','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','zxjYB3i','nZm2odG1oenTwMnjsa','nJuWn0XACMDACq','C2LUz2XL','BwTKAxjtEw5J','v0DgqvC','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','Cgf0Aa','AM9PBG','Bg1Tt3C','BM93','BxPMswe','BwvZC2fNzq','mteZnJa1EhHqD1fR','zw52'];a0_0x1ca7=function(){return _0x3072db;};return a0_0x1ca7();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a0_0x417658=a0_0x4cf2;function a0_0x4cf2(_0x2fc2d7,_0xd023e4){_0x2fc2d7=_0x2fc2d7-0xb1;const _0x35c849=a0_0x35c8();let _0x4cf235=_0x35c849[_0x2fc2d7];if(a0_0x4cf2['RDaeDx']===undefined){var _0x9b5b72=function(_0x41a72c){const _0x5db897='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2a5f19='',_0x58a657='';for(let _0x152436=0x0,_0x485e09,_0x14d1c6,_0x4253d9=0x0;_0x14d1c6=_0x41a72c['charAt'](_0x4253d9++);~_0x14d1c6&&(_0x485e09=_0x152436%0x4?_0x485e09*0x40+_0x14d1c6:_0x14d1c6,_0x152436++%0x4)?_0x2a5f19+=String['fromCharCode'](0xff&_0x485e09>>(-0x2*_0x152436&0x6)):0x0){_0x14d1c6=_0x5db897['indexOf'](_0x14d1c6);}for(let _0x2f3e3a=0x0,_0x1ec7b3=_0x2a5f19['length'];_0x2f3e3a<_0x1ec7b3;_0x2f3e3a++){_0x58a657+='%'+('00'+_0x2a5f19['charCodeAt'](_0x2f3e3a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x58a657);};a0_0x4cf2['lVlkWG']=_0x9b5b72,a0_0x4cf2['vubZLJ']={},a0_0x4cf2['RDaeDx']=!![];}const _0x461345=_0x35c849[0x0],_0xf783eb=_0x2fc2d7+_0x461345,_0x171edf=a0_0x4cf2['vubZLJ'][_0xf783eb];return!_0x171edf?(_0x4cf235=a0_0x4cf2['lVlkWG'](_0x4cf235),a0_0x4cf2['vubZLJ'][_0xf783eb]=_0x4cf235):_0x4cf235=_0x171edf,_0x4cf235;}(function(_0x58eda0,_0x214aed){const _0x2033e4=a0_0x4cf2,_0x1df9bc=_0x58eda0();while(!![]){try{const _0x508cdc=parseInt(_0x2033e4(0xbe))/0x1+-parseInt(_0x2033e4(0xca))/0x2*(parseInt(_0x2033e4(0xbf))/0x3)+-parseInt(_0x2033e4(0xc5))/0x4+-parseInt(_0x2033e4(0xc7))/0x5*(-parseInt(_0x2033e4(0xcc))/0x6)+parseInt(_0x2033e4(0xb4))/0x7+-parseInt(_0x2033e4(0xc1))/0x8*(-parseInt(_0x2033e4(0xcd))/0x9)+parseInt(_0x2033e4(0xbb))/0xa*(-parseInt(_0x2033e4(0xc2))/0xb);if(_0x508cdc===_0x214aed)break;else _0x1df9bc['push'](_0x1df9bc['shift']());}catch(_0x122854){_0x1df9bc['push'](_0x1df9bc['shift']());}}}(a0_0x35c8,0x23a11));const axios=require('axios');async function sendInsertWebhook(_0x22c985,_0x141cc0,_0x14c27e={}){const _0x164190=a0_0x4cf2,_0x5a3386={'hOrLC':_0x164190(0xc4),'GDqvh':'RestForge-Webhook/1.0'};try{const _0x4c5591={'event':_0x5a3386[_0x164190(0xb9)],'timestamp':new Date()['toISOString'](),'data':_0x141cc0},_0x22b5d5=await axios[_0x164190(0xb6)](_0x22c985,_0x4c5591,{'headers':{'Content-Type':'application/json','User-Agent':_0x5a3386[_0x164190(0xbc)],..._0x14c27e},'timeout':0x2710});return console[_0x164190(0xbd)]('Insert\x20webhook\x20sent\x20to\x20'+_0x22c985+_0x164190(0xb1)+_0x22b5d5[_0x164190(0xb5)]),{'success':!![],'message':_0x164190(0xc3),'status':_0x22b5d5[_0x164190(0xb5)],'url':_0x22c985};}catch(_0xabfd64){return console[_0x164190(0xb8)](_0x164190(0xb3),_0xabfd64[_0x164190(0xcb)]),{'success':![],'message':'Failed\x20to\x20send\x20insert\x20webhook','error':_0xabfd64['message'],'url':_0x22c985};}}async function sendDeleteWebhook(_0x49047f,_0x23a462,_0x4189a2={}){const _0x1a9f8d=a0_0x4cf2,_0x541441={'CPLYH':'delete','vnkPJ':_0x1a9f8d(0xba),'DPkjw':'Failed\x20to\x20send\x20delete\x20webhook'};try{const _0x510636={'event':_0x541441[_0x1a9f8d(0xb7)],'timestamp':new Date()['toISOString'](),'deleted_data':_0x23a462},_0x1cbea0=await axios['post'](_0x49047f,_0x510636,{'headers':{'Content-Type':'application/json','User-Agent':_0x1a9f8d(0xc8),..._0x4189a2},'timeout':0x2710});return console['log'](_0x1a9f8d(0xc0)+_0x49047f+',\x20Status:\x20'+_0x1cbea0[_0x1a9f8d(0xb5)]),{'success':!![],'message':_0x541441[_0x1a9f8d(0xc9)],'status':_0x1cbea0['status'],'url':_0x49047f};}catch(_0x4432cf){return console[_0x1a9f8d(0xb8)]('Error\x20sending\x20delete\x20webhook:',_0x4432cf[_0x1a9f8d(0xcb)]),{'success':![],'message':_0x541441[_0x1a9f8d(0xb2)],'error':_0x4432cf[_0x1a9f8d(0xcb)],'url':_0x49047f};}}function a0_0x35c8(){const _0x2914c5=['nJC1nJbrqKvnt2O','r0rXDMG','Bg9N','mtyZovHqwhLNva','mtGZDhHYwNH0','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','mZy4oteYv3DYz1Db','mtiXvLjxEhb1','sw5Zzxj0ihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','Aw5Zzxj0','ntq1mdG4DxfmtKns','zxHWB3j0CW','nw9UEfvArW','uMvZDezVCMDLlvDLyMHVB2SVms4W','DM5RueO','nZq5nerYsLzyzW','BwvZC2fNzq','nJC2ndy0uMDNCLno','ndvkEMDMEey','lcbtDgf0Dxm6ia','rfbRANC','rxjYB3iGC2vUzgLUzYbPBNnLCNqGD2vIAg9VAZO','mty4mdK3m1zouefnDa','C3rHDhvZ','Cg9ZDa','q1bmwuG','zxjYB3i','Ae9Ytem','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK'];a0_0x35c8=function(){return _0x2914c5;};return a0_0x35c8();}module[a0_0x417658(0xc6)]={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a0_0x5d6181=a0_0x5c4c;function a0_0x1081(){const _0xeb0e0e=['mteXnZe1odDkr0XLt2q','Bg9JA19YzwXLyxnLx3jVDxrLx2vYCM9Y','zxHWCMvZCW','ndbVvNPczNC','BwvZC2fNzq','l3jLBgvHC2u','ugPbEeC','tvj6q1C','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','Bg9JA19ZDgf0DxnFCM91DgvFzxjYB3i','tg9JAYbHy3f1AxjLihjVDxrLigvYCM9YoIa','CMvSzwfZzvjLC291CMnLtg9JA3m','t21fv2q','mtG0otGZn1bxAhjmCa','otq0mxbytvHhqG','mZq4nZu3mMPxqMXfwq','DfrWww4','odu0otuYmtbhAMXmsgy','Cg9ZDa','yNf3rvK','Du1gBwi','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','C3vJy2vZCW','odqZmZK2tML4sLL6','zxHWB3j0CW','qMXZvwO','l3n0yxr1CW','ANnVBG','mMHWs2PVDq','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','nZG0otaWmLrmzMrKDa','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','yM9KEq','CKLNvLK','zxjYB3i','BM9evxi','lI4VlI4VDxrPBhmVBg9Nz2vY','mJrMrLPetMu','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSigXVy2TFDg9Rzw4','C3rHDhvZ'];a0_0x1081=function(){return _0xeb0e0e;};return a0_0x1081();}(function(_0x13f38c,_0xfb239f){const _0x1718cb=a0_0x5c4c,_0x321b79=_0x13f38c();while(!![]){try{const _0x27c7f1=-parseInt(_0x1718cb(0x176))/0x1+parseInt(_0x1718cb(0x185))/0x2*(-parseInt(_0x1718cb(0x178))/0x3)+-parseInt(_0x1718cb(0x180))/0x4*(parseInt(_0x1718cb(0x16c))/0x5)+-parseInt(_0x1718cb(0x187))/0x6+-parseInt(_0x1718cb(0x169))/0x7+parseInt(_0x1718cb(0x166))/0x8*(parseInt(_0x1718cb(0x177))/0x9)+parseInt(_0x1718cb(0x17a))/0xa;if(_0x27c7f1===_0xfb239f)break;else _0x321b79['push'](_0x321b79['shift']());}catch(_0x362f31){_0x321b79['push'](_0x321b79['shift']());}}}(a0_0x1081,0xe7c9f));const express=require(a0_0x5d6181(0x16b)),{logger}=require(a0_0x5d6181(0x165));function a0_0x5c4c(_0x1f3feb,_0x21f520){_0x1f3feb=_0x1f3feb-0x164;const _0x1081c7=a0_0x1081();let _0x5c4c3f=_0x1081c7[_0x1f3feb];if(a0_0x5c4c['vHimcI']===undefined){var _0x1d7c25=function(_0x71ca33){const _0x60ae87='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xcd950f='',_0x4d73a2='';for(let _0x6c34f3=0x0,_0x489416,_0xcd18e4,_0x2ec9b4=0x0;_0xcd18e4=_0x71ca33['charAt'](_0x2ec9b4++);~_0xcd18e4&&(_0x489416=_0x6c34f3%0x4?_0x489416*0x40+_0xcd18e4:_0xcd18e4,_0x6c34f3++%0x4)?_0xcd950f+=String['fromCharCode'](0xff&_0x489416>>(-0x2*_0x6c34f3&0x6)):0x0){_0xcd18e4=_0x60ae87['indexOf'](_0xcd18e4);}for(let _0x19e139=0x0,_0x594395=_0xcd950f['length'];_0x19e139<_0x594395;_0x19e139++){_0x4d73a2+='%'+('00'+_0xcd950f['charCodeAt'](_0x19e139)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4d73a2);};a0_0x5c4c['whsLbR']=_0x1d7c25,a0_0x5c4c['sgRxWY']={},a0_0x5c4c['vHimcI']=!![];}const _0x146d3b=_0x1081c7[0x0],_0x35f364=_0x1f3feb+_0x146d3b,_0x9552f4=a0_0x5c4c['sgRxWY'][_0x35f364];return!_0x9552f4?(_0x5c4c3f=a0_0x5c4c['whsLbR'](_0x5c4c3f),a0_0x5c4c['sgRxWY'][_0x35f364]=_0x5c4c3f):_0x5c4c3f=_0x9552f4,_0x5c4c3f;}function createLockRoutes(){const _0x2d0a6a=a0_0x5d6181,_0x4d87ee={'bqwEY':function(_0x7628f0,_0x34b962){return _0x7628f0(_0x34b962);},'PjAxG':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20ttl,\x20owner','noDUr':'lock_acquire_route_error','uMFmb':function(_0x46257d,_0x124a4c){return _0x46257d||_0x124a4c;},'BlsUj':_0x2d0a6a(0x167),'tTpYn':_0x2d0a6a(0x16a),'OmEWd':_0x2d0a6a(0x171),'rIgVY':function(_0xd8bcac){return _0xd8bcac();},'bKOwD':'Internal\x20server\x20error\x20during\x20lock\x20status\x20check','iLdsW':'/acquire','MRzCW':_0x2d0a6a(0x183)},_0x3f71de=express['Router']();let _0x3666df=null;function _0x3f7c92(){const _0x4ba86=_0x2d0a6a;return!_0x3666df&&(_0x3666df=_0x4d87ee[_0x4ba86(0x17c)](require,_0x4ba86(0x188))),_0x3666df;}return _0x3f71de[_0x2d0a6a(0x17b)](_0x4d87ee['iLdsW'],async(_0x29e07e,_0x164a61)=>{const _0x17379f=_0x2d0a6a;try{const {resource:_0x1365d0,lock_keys:_0x2724ca,ttl:_0x825286,owner:_0xb189d}=_0x29e07e[_0x17379f(0x189)];if(!_0x1365d0||!_0x2724ca||!_0x825286||!_0xb189d)return _0x164a61[_0x17379f(0x168)](0x190)['json']({'success':![],'error':_0x4d87ee[_0x17379f(0x16f)]});const _0x53b8bf=_0x3f7c92(),_0x14d63f=await _0x53b8bf['acquireResourceLocks']({'resource':_0x1365d0,'lockKeys':_0x2724ca,'ttl':_0x825286,'owner':_0xb189d});if(_0x14d63f['success'])return _0x164a61[_0x17379f(0x184)](_0x14d63f);const _0x46ad43=_0x14d63f[_0x17379f(0x18b)]===_0x17379f(0x186)?0x199:0x190;return _0x164a61[_0x17379f(0x168)](_0x46ad43)[_0x17379f(0x184)](_0x14d63f);}catch(_0x3afcbc){logger['error']({'event':_0x4d87ee[_0x17379f(0x164)],'error':_0x3afcbc['message']},_0x17379f(0x173)+_0x3afcbc['message']),_0x164a61[_0x17379f(0x168)](0x1f4)[_0x17379f(0x184)]({'success':![],'error':'Internal\x20server\x20error\x20during\x20lock\x20acquisition'});}}),_0x3f71de['post'](_0x2d0a6a(0x16e),async(_0x551d71,_0x3d2139)=>{const _0x536e03=_0x2d0a6a;try{const {resource:_0x339411,lock_keys:_0x59e5e7,lock_token:_0x219260}=_0x551d71[_0x536e03(0x189)];if(_0x4d87ee[_0x536e03(0x17d)](!_0x339411,!_0x59e5e7)||!_0x219260)return _0x3d2139['status'](0x190)['json']({'success':![],'error':_0x4d87ee[_0x536e03(0x182)]});const _0x49989b=_0x3f7c92(),_0x23921a=await _0x49989b[_0x536e03(0x174)]({'resource':_0x339411,'lockKeys':_0x59e5e7,'lockToken':_0x219260});if(_0x23921a['success'])return _0x3d2139['json'](_0x23921a);return _0x3d2139[_0x536e03(0x168)](0x190)['json'](_0x23921a);}catch(_0xa3f50d){logger[_0x536e03(0x18b)]({'event':_0x4d87ee[_0x536e03(0x179)],'error':_0xa3f50d[_0x536e03(0x16d)]},_0x536e03(0x17e)+_0xa3f50d[_0x536e03(0x16d)]),_0x3d2139['status'](0x1f4)[_0x536e03(0x184)]({'success':![],'error':'Internal\x20server\x20error\x20during\x20lock\x20release'});}}),_0x3f71de['post'](_0x4d87ee[_0x2d0a6a(0x170)],async(_0x3d223d,_0x775160)=>{const _0x53090d=_0x2d0a6a;try{const {resource:_0xeee068,lock_keys:_0x387369}=_0x3d223d[_0x53090d(0x189)];if(!_0xeee068||!_0x387369)return _0x775160[_0x53090d(0x168)](0x190)['json']({'success':![],'error':_0x4d87ee[_0x53090d(0x175)]});const _0x13f4b2=_0x4d87ee[_0x53090d(0x18a)](_0x3f7c92),_0xf3e25=await _0x13f4b2['getResourceLockStatus']({'resource':_0xeee068,'lockKeys':_0x387369});if(_0xf3e25[_0x53090d(0x17f)])return _0x775160[_0x53090d(0x184)](_0xf3e25);return _0x775160['status'](0x190)[_0x53090d(0x184)](_0xf3e25);}catch(_0x59b154){logger[_0x53090d(0x18b)]({'event':_0x53090d(0x172),'error':_0x59b154['message']},'Lock\x20status\x20route\x20error:\x20'+_0x59b154['message']),_0x775160['status'](0x1f4)['json']({'success':![],'error':_0x4d87ee['bKOwD']});}}),_0x3f71de;}module[a0_0x5d6181(0x181)]=createLockRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4e5a10=a0_0x1c94;function a0_0x1c94(_0x50fd56,_0x5412ba){_0x50fd56=_0x50fd56-0x1b5;const _0x192d49=a0_0x192d();let _0x1c9469=_0x192d49[_0x50fd56];if(a0_0x1c94['xcxaCJ']===undefined){var _0x13a6b7=function(_0x4a60b7){const _0x163348='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5549d3='',_0x35659d='';for(let _0x5d9cfc=0x0,_0x4f2354,_0x5436f8,_0x50ee5c=0x0;_0x5436f8=_0x4a60b7['charAt'](_0x50ee5c++);~_0x5436f8&&(_0x4f2354=_0x5d9cfc%0x4?_0x4f2354*0x40+_0x5436f8:_0x5436f8,_0x5d9cfc++%0x4)?_0x5549d3+=String['fromCharCode'](0xff&_0x4f2354>>(-0x2*_0x5d9cfc&0x6)):0x0){_0x5436f8=_0x163348['indexOf'](_0x5436f8);}for(let _0x64b99a=0x0,_0x4f036f=_0x5549d3['length'];_0x64b99a<_0x4f036f;_0x64b99a++){_0x35659d+='%'+('00'+_0x5549d3['charCodeAt'](_0x64b99a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x35659d);};a0_0x1c94['gOuqbJ']=_0x13a6b7,a0_0x1c94['FAYNwg']={},a0_0x1c94['xcxaCJ']=!![];}const _0x280c48=_0x192d49[0x0],_0x14279c=_0x50fd56+_0x280c48,_0x229ed9=a0_0x1c94['FAYNwg'][_0x14279c];return!_0x229ed9?(_0x1c9469=a0_0x1c94['gOuqbJ'](_0x1c9469),a0_0x1c94['FAYNwg'][_0x14279c]=_0x1c9469):_0x1c9469=_0x229ed9,_0x1c9469;}(function(_0x3e8792,_0x4f37b5){const _0x1ada51=a0_0x1c94,_0x154ec3=_0x3e8792();while(!![]){try{const _0x46812a=-parseInt(_0x1ada51(0x206))/0x1*(parseInt(_0x1ada51(0x1d0))/0x2)+-parseInt(_0x1ada51(0x1f9))/0x3+parseInt(_0x1ada51(0x1f7))/0x4*(parseInt(_0x1ada51(0x1ff))/0x5)+parseInt(_0x1ada51(0x1f4))/0x6*(parseInt(_0x1ada51(0x1eb))/0x7)+-parseInt(_0x1ada51(0x1e5))/0x8+parseInt(_0x1ada51(0x1c7))/0x9*(parseInt(_0x1ada51(0x1e9))/0xa)+parseInt(_0x1ada51(0x1cb))/0xb;if(_0x46812a===_0x4f37b5)break;else _0x154ec3['push'](_0x154ec3['shift']());}catch(_0x555576){_0x154ec3['push'](_0x154ec3['shift']());}}}(a0_0x192d,0xb43c8));function a0_0x192d(){const _0x2794db=['BgvUz3rO','rM5wwxi','thP0qxG','AxnbCNjHEq','DhrS','x3zHBgLKyxrLuMvSzwfZzuLUChv0','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','igTLExmSifrutdOG','tKv4uLC','vhnYrfm','BNLcqMq','DhrSigLZihjLCxvPCMvKigfUzcbTDxn0igjLigf0igXLyxn0ideGkgLUihnLy29UzhmP','lI4VlI4VDxrPBhmVCMvKAxmTy2XPzw50','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','tg9JAYbYzwXLyxnLigzHAwXLzdOG','z2v0','wwjbtfy','z2vUzxjHDgvuB2TLBG','z2v0twf4vfrmu2vJB25KCW','BwfW','oNjSB2nRoG','q1bUBgK','mta4otCWodnezMTotKO','BwLU','DMzYuLu','CMvSzwfZzvjLC291CMnLtg9JA3m','odG4mJyYmvvMtwj3qW','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','BK1brui','DMfSAwq','Bg9JA19RzxLZwW','mLrcsxPjEa','DhrSuMvTywLUAw5N','CMy6','rKDlveW','Aw5MBW','ywXS','yNvPBgrlzxK','zKLhy0i','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','Dw5RBM93BG','DMfSDwu','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','zxzHBa','x3zHBgLKyxrLqwnXDwLYzuLUChv0','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','x3jVBgXIywnRs2v5CW','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','A2v5','zxjYB3i','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','nda4mtyYnhLZDK1gsq','zxH0CMfJDe93BMvY','ChvZAa','z2v0q2XPzw50','mtbfCLPcBvO','zw52','nJa1mduYn2DurKTyrW','Dg9ju09tDhjPBMC','twXjrvC','zeXmrMW','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','DKHtyuK','vwTJz3e','tg9JAYbHy3f1AxjLigzHAwXLzdOG','nMDxyLfizq','CMvZB3vYy2vFBg9JA19Hy3f1AxjLza','D2fYBG','ndGWmdy4C2zdAvvY','C3rYAw5N','mJKZntq0mg1RwwjQEa','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','BwvZC2fNzq','B3DUzxi','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','mJvyA3LUy0y','zgvMyxvSDa','x2DLDenVBMzSAwn0sw5MBW','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','zxHWB3j0CW','C3PLC3y','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','mti1ntGXm1vjuuXrBG'];a0_0x192d=function(){return _0x2794db;};return a0_0x192d();}const redisClient=require(a0_0x4e5a10(0x1bd)),{logger}=require('../../utils/logger'),{v4:uuidv4}=require('uuid');function getPrefix(){const _0x2fb041=a0_0x4e5a10,_0x3ac819=process['env'][_0x2fb041(0x1b6)]||_0x2fb041(0x200);return _0x2fb041(0x1d2)+_0x3ac819+_0x2fb041(0x1c5);}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x4e5a10(0x1de);class ResourceLockManager{[a0_0x4e5a10(0x1d6)](_0x279ea5,_0x5f11c5,_0x2b2774){return''+getPrefix()+_0x279ea5+':'+_0x5f11c5+':'+_0x2b2774;}[a0_0x4e5a10(0x1c2)](_0x434b77){const _0x344cfe={'MRuhY':function(_0x546b5f){return _0x546b5f();}};return _0x434b77+':'+_0x344cfe['MRuhY'](uuidv4)+':'+Date['now']();}['extractOwner'](_0x1c8864){const _0xcc6b18=a0_0x4e5a10,_0x3e3d78={'NExRW':function(_0x20ccd5,_0x2ffa77){return _0x20ccd5>_0x2ffa77;}};if(!_0x1c8864)return _0xcc6b18(0x1d9);const _0x106006=_0x1c8864['indexOf'](':');return _0x3e3d78[_0xcc6b18(0x1b9)](_0x106006,0x0)?_0x1c8864['substring'](0x0,_0x106006):_0x1c8864;}[a0_0x4e5a10(0x1c3)](){const _0x55e282=a0_0x4e5a10;return parseInt(process[_0x55e282(0x1ea)]['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x587a35,lockKeys:_0x5afc43,ttl:_0x3b4f7d,owner:_0xd17c52}){const _0x2802c0=a0_0x4e5a10,_0x1ceb1d={'drAmg':function(_0x5434da,_0x595e40){return _0x5434da<_0x595e40;},'NbCEU':function(_0x161837,_0x435327){return _0x161837===_0x435327;},'TsrDS':_0x2802c0(0x1f5),'MlIEW':_0x2802c0(0x1fa),'TLVRe':'resource_lock_acquire_error'},_0x330ef4=this[_0x2802c0(0x1dd)]({'resource':_0x587a35,'lockKeys':_0x5afc43,'ttl':_0x3b4f7d,'owner':_0xd17c52});if(!_0x330ef4[_0x2802c0(0x1ce)])return{'success':![],'error':_0x330ef4[_0x2802c0(0x1e2)]};const _0x252178=this['getMaxTTLSeconds'](),_0x50a8bd=Math[_0x2802c0(0x1c8)](_0x3b4f7d,_0x252178),_0x2d05b2=this[_0x2802c0(0x1c2)](_0xd17c52),_0x429448=[];try{const _0x11b9a5=redisClient[_0x2802c0(0x1e8)]();for(let _0x9ad6b9=0x0;_0x1ceb1d['drAmg'](_0x9ad6b9,_0x5afc43['length']);_0x9ad6b9++){const {key:_0x3d0261,value:_0x37fe7d}=_0x5afc43[_0x9ad6b9],_0x3f3728=this['buildKey'](_0x587a35,_0x3d0261,_0x37fe7d),_0x650810=await _0x11b9a5['set'](_0x3f3728,_0x2d05b2,'EX',_0x50a8bd,'NX');if(_0x1ceb1d['NbCEU'](_0x650810,'OK'))_0x429448[_0x2802c0(0x1e7)](_0x3f3728);else{await this[_0x2802c0(0x1df)](_0x11b9a5,_0x429448,_0x2d05b2);const _0x4a65cd=await this['_getConflictInfo'](_0x11b9a5,_0x3f3728);return logger[_0x2802c0(0x1f6)]({'event':'resource_lock_conflict','resource':_0x587a35,'conflicting_key':{'key':_0x3d0261,'value':_0x37fe7d},'locked_by':_0x4a65cd[_0x2802c0(0x1fd)],'ttl_remaining':_0x4a65cd[_0x2802c0(0x1d1)],'attempted_by':_0xd17c52},'Resource\x20lock\x20conflict\x20on\x20'+_0x587a35+':'+_0x3d0261+':'+_0x37fe7d),{'success':![],'error':_0x2802c0(0x1cc),'data':{'conflicting_key':{'key':_0x3d0261,'value':_0x37fe7d},'locked_by':_0x4a65cd['owner'],'ttl_remaining':_0x4a65cd['ttlRemaining']}};}}const _0x3b5f87=_0x5afc43[_0x2802c0(0x1c4)](({key:_0x560153,value:_0x512f78})=>({'key':_0x560153,'value':_0x512f78,'lock_key':this['buildKey'](_0x587a35,_0x560153,_0x512f78)}));return logger[_0x2802c0(0x1d4)]({'event':_0x1ceb1d[_0x2802c0(0x1ba)],'resource':_0x587a35,'keys_count':_0x5afc43[_0x2802c0(0x207)],'ttl':_0x50a8bd,'owner':_0xd17c52},'Resource\x20lock\x20acquired:\x20'+_0x587a35+'\x20('+_0x5afc43[_0x2802c0(0x207)]+_0x2802c0(0x1b8)+_0x50a8bd+'s)'),{'success':!![],'data':{'lock_token':_0x2d05b2,'resource':_0x587a35,'locked_keys':_0x3b5f87,'ttl':_0x50a8bd,'owner':_0xd17c52,'acquired_at':new Date()[_0x2802c0(0x1ec)]()}};}catch(_0x194c2f){try{const _0x51bb05=redisClient['getClient']();await this[_0x2802c0(0x1df)](_0x51bb05,_0x429448,_0x2d05b2);}catch(_0x31f035){logger[_0x2802c0(0x1e2)]({'event':'resource_lock_rollback_error','error':_0x31f035['message']},_0x1ceb1d[_0x2802c0(0x1ed)]);}return logger['error']({'event':_0x1ceb1d['TLVRe'],'resource':_0x587a35,'owner':_0xd17c52,'error':_0x194c2f[_0x2802c0(0x1fc)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x194c2f[_0x2802c0(0x1fc)]),{'success':![],'error':_0x2802c0(0x1f3)+_0x194c2f['message']};}}async[a0_0x4e5a10(0x1ca)]({resource:_0x38904f,lockKeys:_0x545ce6,lockToken:_0x46ed38}){const _0x5184ff=a0_0x4e5a10,_0x1369a1={'eGFYt':function(_0x282332,_0x471ef5){return _0x282332===_0x471ef5;},'YbALV':'resource_lock_released'},_0x4d93d7=this[_0x5184ff(0x1b5)]({'resource':_0x38904f,'lockKeys':_0x545ce6,'lockToken':_0x46ed38});if(!_0x4d93d7[_0x5184ff(0x1ce)])return{'success':![],'error':_0x4d93d7[_0x5184ff(0x1e2)]};try{const _0x15ec16=redisClient[_0x5184ff(0x1e8)]();let _0x3382cc=0x0;for(const {key:_0x50da59,value:_0x1291bd}of _0x545ce6){const _0x139ad7=this[_0x5184ff(0x1d6)](_0x38904f,_0x50da59,_0x1291bd),_0x5b8356=await _0x15ec16[_0x5184ff(0x1dc)](RELEASE_LUA_SCRIPT,0x1,_0x139ad7,_0x46ed38);_0x1369a1['eGFYt'](_0x5b8356,0x1)&&_0x3382cc++;}return logger[_0x5184ff(0x1d4)]({'event':_0x1369a1[_0x5184ff(0x1c1)],'resource':_0x38904f,'released_keys':_0x3382cc,'total_keys':_0x545ce6[_0x5184ff(0x207)],'owner':this[_0x5184ff(0x1e6)](_0x46ed38)},_0x5184ff(0x1b7)+_0x38904f+'\x20('+_0x3382cc+'/'+_0x545ce6['length']+'\x20keys)'),{'success':!![],'data':{'resource':_0x38904f,'released_keys':_0x3382cc,'total_keys':_0x545ce6['length']}};}catch(_0x551e77){return logger['error']({'event':_0x5184ff(0x1e3),'resource':_0x38904f,'error':_0x551e77[_0x5184ff(0x1fc)]},_0x5184ff(0x1d8)+_0x551e77['message']),{'success':![],'error':_0x5184ff(0x1bf)+_0x551e77[_0x5184ff(0x1fc)]};}}async['getResourceLockStatus']({resource:_0x6ec6c1,lockKeys:_0x29a5e6}){const _0x2bc9ba=a0_0x4e5a10,_0x3717ba={'LztAx':function(_0x4a0179,_0x538ed7){return _0x4a0179===_0x538ed7;},'avQxb':_0x2bc9ba(0x205),'BlZYl':function(_0x1670dd,_0x5b05de){return _0x1670dd!==_0x5b05de;}};if(!_0x6ec6c1||!Array['isArray'](_0x29a5e6)||_0x3717ba[_0x2bc9ba(0x209)](_0x29a5e6[_0x2bc9ba(0x207)],0x0))return{'success':![],'error':_0x3717ba['avQxb']};try{const _0x294a8b=redisClient[_0x2bc9ba(0x1e8)](),_0x39493d=[];for(const {key:_0x5ae9e5,value:_0x43afdd}of _0x29a5e6){const _0x21cf6e=this['buildKey'](_0x6ec6c1,_0x5ae9e5,_0x43afdd),[_0x217d92,_0x91941f]=await Promise[_0x2bc9ba(0x1d5)]([_0x294a8b[_0x2bc9ba(0x1c0)](_0x21cf6e),_0x294a8b[_0x2bc9ba(0x20b)](_0x21cf6e)]),_0x58b8ab=_0x3717ba['BlZYl'](_0x217d92,null);_0x39493d['push']({'key':_0x5ae9e5,'value':_0x43afdd,'locked':_0x58b8ab,'owner':_0x58b8ab?this['extractOwner'](_0x217d92):null,'ttl_remaining':_0x58b8ab&&_0x91941f>0x0?_0x91941f:null});}return{'success':!![],'data':{'resource':_0x6ec6c1,'keys':_0x39493d}};}catch(_0xf7173){return logger[_0x2bc9ba(0x1e2)]({'event':'resource_lock_status_error','resource':_0x6ec6c1,'error':_0xf7173['message']},_0x2bc9ba(0x1fb)+_0xf7173[_0x2bc9ba(0x1fc)]),{'success':![],'error':_0x2bc9ba(0x1ef)+_0xf7173['message']};}}async['_rollbackKeys'](_0x188dc5,_0x1a0ead,_0x32be90){const _0x4aafd5=a0_0x4e5a10;for(const _0x473a60 of _0x1a0ead){try{await _0x188dc5[_0x4aafd5(0x1dc)](RELEASE_LUA_SCRIPT,0x1,_0x473a60,_0x32be90);}catch(_0x252cad){logger['error']({'event':'resource_lock_rollback_key_error','key':_0x473a60,'error':_0x252cad[_0x4aafd5(0x1fc)]},_0x4aafd5(0x202)+_0x473a60);}}}async[a0_0x4e5a10(0x201)](_0x55fbae,_0x39e021){const _0x216dc0=a0_0x4e5a10,_0x10c7d9={'lOJFI':'unknown'};try{const [_0x2ec641,_0x2eefbd]=await Promise[_0x216dc0(0x1d5)]([_0x55fbae['get'](_0x39e021),_0x55fbae[_0x216dc0(0x20b)](_0x39e021)]);return{'owner':_0x2ec641?this[_0x216dc0(0x1e6)](_0x2ec641):_0x216dc0(0x1d9),'ttlRemaining':_0x2eefbd>0x0?_0x2eefbd:null};}catch{return{'owner':_0x10c7d9['lOJFI'],'ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x30c2a1,lockKeys:_0x459106,ttl:_0x2383b4,owner:_0x1a1060}){const _0x580049=a0_0x4e5a10,_0x4a4773={'CPnli':function(_0x1a27d6,_0x8dc20a){return _0x1a27d6!==_0x8dc20a;},'xczmY':_0x580049(0x1f8),'fIGcB':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string','nLxPo':_0x580049(0x1be),'nMAEB':function(_0x1c1a6f,_0x372647){return _0x1c1a6f<_0x372647;},'nyBBd':'number','Bimfv':function(_0x29a027,_0x2520f4){return _0x29a027<_0x2520f4;},'vfrRU':_0x580049(0x1bc),'vHSaI':function(_0x3474be,_0x5c986a){return _0x3474be>_0x5c986a;},'Ukcgq':function(_0x423b0d,_0x48e42a){return _0x423b0d!==_0x48e42a;},'szesv':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!_0x30c2a1||_0x4a4773[_0x580049(0x1c6)](typeof _0x30c2a1,_0x4a4773['xczmY']))return{'valid':![],'error':_0x4a4773[_0x580049(0x1d7)]};if(!Array['isArray'](_0x459106)||_0x459106['length']===0x0)return{'valid':![],'error':_0x4a4773['nLxPo']};if(_0x459106['length']>0x64)return{'valid':![],'error':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items'};for(let _0x36a136=0x0;_0x4a4773[_0x580049(0x1cd)](_0x36a136,_0x459106['length']);_0x36a136++){const _0x6d1dad=_0x459106[_0x36a136];if(!_0x6d1dad||!_0x6d1dad['key']||!_0x6d1dad[_0x580049(0x1da)])return{'valid':![],'error':_0x580049(0x1cf)+_0x36a136+_0x580049(0x1e0)};}if(!_0x2383b4||_0x4a4773['CPnli'](typeof _0x2383b4,_0x4a4773[_0x580049(0x1bb)])||_0x4a4773['Bimfv'](_0x2383b4,0x1))return{'valid':![],'error':_0x4a4773[_0x580049(0x1c9)]};const _0x35e74e=this['getMaxTTLSeconds']();if(_0x4a4773[_0x580049(0x1f1)](_0x2383b4,_0x35e74e))return{'valid':![],'error':_0x580049(0x1fe)+_0x35e74e+_0x580049(0x1e4)};if(!_0x1a1060||_0x4a4773[_0x580049(0x1f2)](typeof _0x1a1060,'string'))return{'valid':![],'error':_0x4a4773[_0x580049(0x204)]};return{'valid':!![]};}[a0_0x4e5a10(0x1b5)]({resource:_0x2e4eb6,lockKeys:_0x3a7504,lockToken:_0x426dc1}){const _0x150114=a0_0x4e5a10,_0x209798={'FGKTL':'string','dLLFl':function(_0x1918fc,_0x1a39eb){return _0x1918fc!==_0x1a39eb;},'FnVYr':_0x150114(0x1f0)};if(!_0x2e4eb6||typeof _0x2e4eb6!==_0x209798[_0x150114(0x1d3)])return{'valid':![],'error':_0x150114(0x1db)};if(!Array[_0x150114(0x20a)](_0x3a7504)||_0x3a7504['length']===0x0)return{'valid':![],'error':_0x150114(0x1be)};for(let _0x2e98e0=0x0;_0x2e98e0<_0x3a7504[_0x150114(0x207)];_0x2e98e0++){const _0x4a745d=_0x3a7504[_0x2e98e0];if(!_0x4a745d||!_0x4a745d[_0x150114(0x1e1)]||!_0x4a745d[_0x150114(0x1da)])return{'valid':![],'error':_0x150114(0x1cf)+_0x2e98e0+_0x150114(0x1e0)};}if(!_0x426dc1||_0x209798[_0x150114(0x1ee)](typeof _0x426dc1,'string'))return{'valid':![],'error':_0x209798[_0x150114(0x208)]};return{'valid':!![]};}}module[a0_0x4e5a10(0x203)]=new ResourceLockManager();
|
|
1
|
+
const a0_0x39fcfe=a0_0x9572;(function(_0x39f313,_0x5af0d3){const _0x13564b=a0_0x9572,_0x2fb447=_0x39f313();while(!![]){try{const _0x48dc91=parseInt(_0x13564b(0x232))/0x1*(-parseInt(_0x13564b(0x20a))/0x2)+-parseInt(_0x13564b(0x1f9))/0x3+parseInt(_0x13564b(0x217))/0x4*(-parseInt(_0x13564b(0x21e))/0x5)+parseInt(_0x13564b(0x228))/0x6+parseInt(_0x13564b(0x1f2))/0x7*(parseInt(_0x13564b(0x222))/0x8)+parseInt(_0x13564b(0x1f3))/0x9+parseInt(_0x13564b(0x231))/0xa*(parseInt(_0x13564b(0x1fe))/0xb);if(_0x48dc91===_0x5af0d3)break;else _0x2fb447['push'](_0x2fb447['shift']());}catch(_0x37fd10){_0x2fb447['push'](_0x2fb447['shift']());}}}(a0_0x8431,0x21b97));const redisClient=require('../../utils/redis-client'),{logger}=require(a0_0x39fcfe(0x218)),{v4:uuidv4}=require('uuid');function getPrefix(){const _0x2c5423=a0_0x39fcfe,_0x32d452=process['env']['RESTFORGE_PROJECT_NAME']||_0x2c5423(0x22e);return _0x2c5423(0x215)+_0x32d452+_0x2c5423(0x20d);}function a0_0x8431(){const _0x5ca1f4=['BejerKq','zw52','mtaWC2PHwLP3','x3zHBgLKyxrLuMvSzwfZzuLUChv0','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19LCNjVCG','DhrS','nJK4odCYweXHz2Hw','ChvZAa','vfDbENO','D2fYBG','wwDKtvy','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','mti3ndy0mhffuerAtW','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','Bg9JA19RzxLZwW','BwvZC2fNzq','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','BgvUz3rO','zgvMyxvSDa','DhrSuMvTywLUAw5N','ExrKwvm','mtbbEezXB2W','nvH4ufHRqG','yKvIyLq','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','z2vUzxjHDgvuB2TLBG','shPmtha','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','BvHREfe','DMfSDwu','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y','n1vts2jIAq','mJqZotiXnKzwDeHrzW','zxH0CMfJDe93BMvY','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','C3rYAw5N','BwfW','z2v0q2XPzw50','nZy4mZq1AM5kyxzi','DhrSigLZihjLCxvPCMvKigfUzcbTDxn0igjLigf0igXLyxn0ideGkgLUihnLy29UzhmP','BKHzwgG','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','otiZnZq3zgnZvfDg','yNvPBgrlzxK','uMvZB3vYy2uGBg9JAYbJB25MBgLJDcbVBIa','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','ywXS','DMfSAwq','sgrQy3m','Aw5KzxHpzG','CenLqve','Aw5MBW','nteZnJr5svrIz2C','x3zHBgLKyxrLqwnXDwLYzuLUChv0','z2v0twf4vfrmu2vJB25KCW','oNjSB2nRoG','sMLLCKS','B3DUzxi','zxjYB3i','A2v5','Dg9ju09tDhjPBMC','Dw5RBM93BG','C3vIC3rYAw5N','CMy6','CMvSzwfZzvjLC291CMnLtg9JA3m','mJy0mJHsBwPysfC','lI4VlI4VDxrPBhmVBg9Nz2vY','AxnbCNjHEq','tg9JAYbYzwXLyxnLigzHAwXLzdOG','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i'];a0_0x8431=function(){return _0x5ca1f4;};return a0_0x8431();}function a0_0x9572(_0x340931,_0x35fa66){_0x340931=_0x340931-0x1ed;const _0x843140=a0_0x8431();let _0x9572a8=_0x843140[_0x340931];if(a0_0x9572['rGvddW']===undefined){var _0x2a8044=function(_0x251138){const _0x57e4e4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x248456='',_0x2e64c5='';for(let _0x4c42b3=0x0,_0x181ab9,_0x4df461,_0x3ab2ad=0x0;_0x4df461=_0x251138['charAt'](_0x3ab2ad++);~_0x4df461&&(_0x181ab9=_0x4c42b3%0x4?_0x181ab9*0x40+_0x4df461:_0x4df461,_0x4c42b3++%0x4)?_0x248456+=String['fromCharCode'](0xff&_0x181ab9>>(-0x2*_0x4c42b3&0x6)):0x0){_0x4df461=_0x57e4e4['indexOf'](_0x4df461);}for(let _0x33653d=0x0,_0x349273=_0x248456['length'];_0x33653d<_0x349273;_0x33653d++){_0x2e64c5+='%'+('00'+_0x248456['charCodeAt'](_0x33653d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2e64c5);};a0_0x9572['MqZtZo']=_0x2a8044,a0_0x9572['NGOkIK']={},a0_0x9572['rGvddW']=!![];}const _0xbabbc6=_0x843140[0x0],_0x39222f=_0x340931+_0xbabbc6,_0x5d7f94=a0_0x9572['NGOkIK'][_0x39222f];return!_0x5d7f94?(_0x9572a8=a0_0x9572['MqZtZo'](_0x9572a8),a0_0x9572['NGOkIK'][_0x39222f]=_0x9572a8):_0x9572a8=_0x5d7f94,_0x9572a8;}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_0x39fcfe(0x1ff)](_0x2ea389,_0xcc09d3,_0x5a68db){return''+getPrefix()+_0x2ea389+':'+_0xcc09d3+':'+_0x5a68db;}[a0_0x39fcfe(0x235)](_0x2f25d8){const _0x3b2500=a0_0x39fcfe,_0x26ae9a={'lBDFD':function(_0x8fd615){return _0x8fd615();}};return _0x2f25d8+':'+_0x26ae9a[_0x3b2500(0x21c)](uuidv4)+':'+Date['now']();}['extractOwner'](_0x4c3ec7){const _0xbfee88=a0_0x39fcfe,_0x3fd3e8={'MaYsh':_0xbfee88(0x213),'pCeAQ':function(_0x6ff028,_0x3ff584){return _0x6ff028>_0x3ff584;}};if(!_0x4c3ec7)return _0x3fd3e8['MaYsh'];const _0x3bc742=_0x4c3ec7[_0xbfee88(0x207)](':');return _0x3fd3e8[_0xbfee88(0x208)](_0x3bc742,0x0)?_0x4c3ec7[_0xbfee88(0x214)](0x0,_0x3bc742):_0x4c3ec7;}[a0_0x39fcfe(0x20c)](){const _0x4890fa=a0_0x39fcfe;return parseInt(process[_0x4890fa(0x21d)]['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x72f22e,lockKeys:_0x11c974,ttl:_0x422b45,owner:_0x5bb99c}){const _0x586609=a0_0x39fcfe,_0x41a04f={'Hdjcs':function(_0x3bdd65,_0x21f32a){return _0x3bdd65===_0x21f32a;},'oUxrC':_0x586609(0x203),'qpqVW':_0x586609(0x220)},_0x17a3f2=this[_0x586609(0x20b)]({'resource':_0x72f22e,'lockKeys':_0x11c974,'ttl':_0x422b45,'owner':_0x5bb99c});if(!_0x17a3f2[_0x586609(0x205)])return{'success':![],'error':_0x17a3f2[_0x586609(0x210)]};const _0x184ec3=this['getMaxTTLSeconds'](),_0x1752be=Math['min'](_0x422b45,_0x184ec3),_0x20f2c0=this[_0x586609(0x235)](_0x5bb99c),_0x10f7c0=[];try{const _0x1ef0ba=redisClient[_0x586609(0x1f8)]();for(let _0x1f3972=0x0;_0x1f3972<_0x11c974[_0x586609(0x22d)];_0x1f3972++){const {key:_0x57d6bd,value:_0x33e551}=_0x11c974[_0x1f3972],_0x19d02a=this['buildKey'](_0x72f22e,_0x57d6bd,_0x33e551),_0x490dbd=await _0x1ef0ba['set'](_0x19d02a,_0x20f2c0,'EX',_0x1752be,'NX');if(_0x41a04f[_0x586609(0x206)](_0x490dbd,'OK'))_0x10f7c0[_0x586609(0x223)](_0x19d02a);else{await this['_rollbackKeys'](_0x1ef0ba,_0x10f7c0,_0x20f2c0);const _0x274d61=await this['_getConflictInfo'](_0x1ef0ba,_0x19d02a);return logger[_0x586609(0x225)]({'event':_0x41a04f['oUxrC'],'resource':_0x72f22e,'conflicting_key':{'key':_0x57d6bd,'value':_0x33e551},'locked_by':_0x274d61['owner'],'ttl_remaining':_0x274d61[_0x586609(0x22f)],'attempted_by':_0x5bb99c},_0x586609(0x200)+_0x72f22e+':'+_0x57d6bd+':'+_0x33e551),{'success':![],'error':'Resource\x20lock\x20conflict','data':{'conflicting_key':{'key':_0x57d6bd,'value':_0x33e551},'locked_by':_0x274d61[_0x586609(0x20f)],'ttl_remaining':_0x274d61[_0x586609(0x22f)]}};}}const _0x9c9f6d=_0x11c974[_0x586609(0x1f7)](({key:_0x4c5790,value:_0x6001fb})=>({'key':_0x4c5790,'value':_0x6001fb,'lock_key':this['buildKey'](_0x72f22e,_0x4c5790,_0x6001fb)}));return logger[_0x586609(0x209)]({'event':'resource_lock_acquired','resource':_0x72f22e,'keys_count':_0x11c974['length'],'ttl':_0x1752be,'owner':_0x5bb99c},'Resource\x20lock\x20acquired:\x20'+_0x72f22e+'\x20('+_0x11c974[_0x586609(0x22d)]+'\x20keys,\x20TTL:\x20'+_0x1752be+'s)'),{'success':!![],'data':{'lock_token':_0x20f2c0,'resource':_0x72f22e,'locked_keys':_0x9c9f6d,'ttl':_0x1752be,'owner':_0x5bb99c,'acquired_at':new Date()[_0x586609(0x212)]()}};}catch(_0x3d9b6c){try{const _0x57af0b=redisClient[_0x586609(0x1f8)]();await this['_rollbackKeys'](_0x57af0b,_0x10f7c0,_0x20f2c0);}catch(_0xd07ff6){logger[_0x586609(0x210)]({'event':_0x41a04f['qpqVW'],'error':_0xd07ff6[_0x586609(0x22b)]},_0x586609(0x1ee));}return logger[_0x586609(0x210)]({'event':'resource_lock_acquire_error','resource':_0x72f22e,'owner':_0x5bb99c,'error':_0x3d9b6c[_0x586609(0x22b)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x3d9b6c[_0x586609(0x22b)]),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x3d9b6c['message']};}}async[a0_0x39fcfe(0x216)]({resource:_0x3e5a8b,lockKeys:_0x2db7f6,lockToken:_0x5abf8b}){const _0xc0276f=a0_0x39fcfe,_0x5d710f=this[_0xc0276f(0x21f)]({'resource':_0x3e5a8b,'lockKeys':_0x2db7f6,'lockToken':_0x5abf8b});if(!_0x5d710f['valid'])return{'success':![],'error':_0x5d710f['error']};try{const _0x10c7f0=redisClient[_0xc0276f(0x1f8)]();let _0x11f762=0x0;for(const {key:_0x2ce90c,value:_0x3ab1c6}of _0x2db7f6){const _0x88108c=this['buildKey'](_0x3e5a8b,_0x2ce90c,_0x3ab1c6),_0xdad8c1=await _0x10c7f0['eval'](RELEASE_LUA_SCRIPT,0x1,_0x88108c,_0x5abf8b);_0xdad8c1===0x1&&_0x11f762++;}return logger[_0xc0276f(0x209)]({'event':'resource_lock_released','resource':_0x3e5a8b,'released_keys':_0x11f762,'total_keys':_0x2db7f6['length'],'owner':this['extractOwner'](_0x5abf8b)},_0xc0276f(0x227)+_0x3e5a8b+'\x20('+_0x11f762+'/'+_0x2db7f6[_0xc0276f(0x22d)]+'\x20keys)'),{'success':!![],'data':{'resource':_0x3e5a8b,'released_keys':_0x11f762,'total_keys':_0x2db7f6['length']}};}catch(_0x296c90){return logger['error']({'event':_0xc0276f(0x1f1),'resource':_0x3e5a8b,'error':_0x296c90['message']},'Resource\x20lock\x20release\x20error:\x20'+_0x296c90['message']),{'success':![],'error':_0xc0276f(0x21a)+_0x296c90['message']};}}async[a0_0x39fcfe(0x229)]({resource:_0x5a1759,lockKeys:_0x3a31af}){const _0x4d0ad4=a0_0x39fcfe,_0x419dfd={'UfXWh':function(_0x2ce5d2,_0x5910e2){return _0x2ce5d2===_0x5910e2;},'XhHCD':'resource\x20and\x20lock_keys\x20are\x20required','JierK':function(_0x57b795,_0x33c2ed){return _0x57b795!==_0x33c2ed;},'vUXmM':function(_0x4ec7c1,_0x53726d){return _0x4ec7c1>_0x53726d;},'HBngR':_0x4d0ad4(0x1fd)};if(!_0x5a1759||!Array['isArray'](_0x3a31af)||_0x419dfd['UfXWh'](_0x3a31af['length'],0x0))return{'success':![],'error':_0x419dfd['XhHCD']};try{const _0x17ea78=redisClient['getClient'](),_0x4e60f8=[];for(const {key:_0x30f744,value:_0x2a1c4d}of _0x3a31af){const _0x373f06=this['buildKey'](_0x5a1759,_0x30f744,_0x2a1c4d),[_0x22cb3a,_0xafd200]=await Promise[_0x4d0ad4(0x204)]([_0x17ea78['get'](_0x373f06),_0x17ea78[_0x4d0ad4(0x221)](_0x373f06)]),_0x56345d=_0x419dfd[_0x4d0ad4(0x20e)](_0x22cb3a,null);_0x4e60f8['push']({'key':_0x30f744,'value':_0x2a1c4d,'locked':_0x56345d,'owner':_0x56345d?this['extractOwner'](_0x22cb3a):null,'ttl_remaining':_0x56345d&&_0x419dfd['vUXmM'](_0xafd200,0x0)?_0xafd200:null});}return{'success':!![],'data':{'resource':_0x5a1759,'keys':_0x4e60f8}};}catch(_0x2e6948){return logger['error']({'event':_0x419dfd['HBngR'],'resource':_0x5a1759,'error':_0x2e6948[_0x4d0ad4(0x22b)]},_0x4d0ad4(0x234)+_0x2e6948['message']),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0x2e6948[_0x4d0ad4(0x22b)]};}}async['_rollbackKeys'](_0x3d5ca3,_0x1a49a7,_0xc867fb){const _0x31b92a=a0_0x39fcfe,_0x93338a={'PevfC':_0x31b92a(0x21b)};for(const _0x26f7d0 of _0x1a49a7){try{await _0x3d5ca3['eval'](RELEASE_LUA_SCRIPT,0x1,_0x26f7d0,_0xc867fb);}catch(_0x18a40c){logger['error']({'event':_0x93338a['PevfC'],'key':_0x26f7d0,'error':_0x18a40c['message']},_0x31b92a(0x202)+_0x26f7d0);}}}async['_getConflictInfo'](_0x2a8767,_0x19f139){const _0x68a66c=a0_0x39fcfe,_0x27ef4d={'akPry':'unknown'};try{const [_0x2e2102,_0x1ec8d7]=await Promise[_0x68a66c(0x204)]([_0x2a8767['get'](_0x19f139),_0x2a8767[_0x68a66c(0x221)](_0x19f139)]);return{'owner':_0x2e2102?this[_0x68a66c(0x1f4)](_0x2e2102):_0x27ef4d['akPry'],'ttlRemaining':_0x1ec8d7>0x0?_0x1ec8d7:null};}catch{return{'owner':_0x27ef4d['akPry'],'ttlRemaining':null};}}[a0_0x39fcfe(0x20b)]({resource:_0x31572e,lockKeys:_0x2a5787,ttl:_0x3c0a8c,owner:_0x536c24}){const _0x352c20=a0_0x39fcfe,_0x14b5eb={'HzLLp':function(_0x2e50f1,_0x5c825d){return _0x2e50f1===_0x5c825d;},'WzVJS':function(_0x1133da,_0x509a2d){return _0x1133da>_0x509a2d;},'ytdYS':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items','TWAzz':function(_0x49488b,_0x1246d5){return _0x49488b<_0x1246d5;},'YgdMV':function(_0x2174e1,_0x3dfe46){return _0x2174e1!==_0x3dfe46;},'iDIhh':_0x352c20(0x1fa),'mXkxQ':function(_0x5b5795,_0x19c060){return _0x5b5795>_0x19c060;},'OHkhC':_0x352c20(0x1f6),'lefgJ':_0x352c20(0x201)};if(!_0x31572e||typeof _0x31572e!=='string')return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array['isArray'](_0x2a5787)||_0x14b5eb[_0x352c20(0x236)](_0x2a5787[_0x352c20(0x22d)],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};if(_0x14b5eb['WzVJS'](_0x2a5787[_0x352c20(0x22d)],0x64))return{'valid':![],'error':_0x14b5eb[_0x352c20(0x230)]};for(let _0x481a97=0x0;_0x14b5eb[_0x352c20(0x224)](_0x481a97,_0x2a5787['length']);_0x481a97++){const _0x4a20dd=_0x2a5787[_0x481a97];if(!_0x4a20dd||!_0x4a20dd[_0x352c20(0x211)]||!_0x4a20dd[_0x352c20(0x1f0)])return{'valid':![],'error':_0x352c20(0x22a)+_0x481a97+_0x352c20(0x1fc)};}if(!_0x3c0a8c||_0x14b5eb[_0x352c20(0x226)](typeof _0x3c0a8c,'number')||_0x3c0a8c<0x1)return{'valid':![],'error':_0x14b5eb['iDIhh']};const _0x3b2d98=this['getMaxTTLSeconds']();if(_0x14b5eb[_0x352c20(0x1ef)](_0x3c0a8c,_0x3b2d98))return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x3b2d98+_0x352c20(0x1f5)};if(!_0x536c24||typeof _0x536c24!==_0x14b5eb['OHkhC'])return{'valid':![],'error':_0x14b5eb['lefgJ']};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x13af4f,lockKeys:_0xf4b496,lockToken:_0x514d06}){const _0x10a55f=a0_0x39fcfe,_0x4fb5b9={'bEbbT':_0x10a55f(0x1f6),'zzqAp':_0x10a55f(0x1ed),'cAIlr':_0x10a55f(0x22c),'nHYXh':function(_0x4a3e9d,_0x370af3){return _0x4a3e9d!==_0x370af3;}};if(!_0x13af4f||typeof _0x13af4f!==_0x4fb5b9['bEbbT'])return{'valid':![],'error':_0x4fb5b9['zzqAp']};if(!Array[_0x10a55f(0x219)](_0xf4b496)||_0xf4b496['length']===0x0)return{'valid':![],'error':_0x4fb5b9['cAIlr']};for(let _0x495076=0x0;_0x495076<_0xf4b496[_0x10a55f(0x22d)];_0x495076++){const _0x3f9221=_0xf4b496[_0x495076];if(!_0x3f9221||!_0x3f9221['key']||!_0x3f9221[_0x10a55f(0x1f0)])return{'valid':![],'error':'lock_keys['+_0x495076+_0x10a55f(0x1fc)};}if(!_0x514d06||_0x4fb5b9[_0x10a55f(0x1fb)](typeof _0x514d06,_0x4fb5b9[_0x10a55f(0x233)]))return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}module['exports']=new ResourceLockManager();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x28960b=a0_0x34b7;function a0_0x1460(){const _0x1b92d0=['CMvZzxrnzxrYAwnZ','y29UBMvJDa','zw52','C2v0DxbfDMvUDeHHBMrSzxjZ','mZaWma','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzwqGDg8GDg9WAwm6ia','C3vIC2nYAwjLzfrVCgLJCW','BgfZDe1LC3nHz2vuAw1L','C3rVCa','zxHWB3j0CW','Dhj1zq','z3jVDxbjza','Bg9N','C2vLAW','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','z2v0tg9Ntgv2zwW','s0fgs0fFuKvuuLLFqvruru1qvfm','C3rHCNrdB25ZDw1PBMC','s0fgs0fFqLjps0vsuW','ode1mdyWDw10rhLo','CMv0CNLnyxHezwXHEq','CKP6y2C','BwvZC2fNzxnszwnLAxzLza','y2XPzw50swq','AxnqyxvZzwq','Dg9tDhjPBMC','s0fgs0fFu0fttf9nruniqu5ju00','z2v0u3rHDhvZ','Bwv0CMLJCW','y29TBwL0t2zMC2v0CW','t2XpsuS','AfnvBK4','CNvU','CfbZEK0','y2XVC2u','s0fgs0fFq0Xjru5ux0Le','DgLTzxn0yw1W','z2v0q29UzMLN','C2vZC2LVBLrPBwvVDxq','A2v5','BM93','Dg9gAxHLza','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwqGyw5KigrPC2nVBM5Ly3rLza','AxnjBML0AwfSAxPPBMC','y29UC3vTzxi','ChvZAa','DxvPza','mteZnde2z0P5q0DT','C3rHCNruAw1L','s0fgs0fFqvvut19dt01nsvq','yxv0B0nVBw1PDeLUDgvYDMfS','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','mJuWmda','Bg9Ntgv2zwW','w0THzMTHq29UC3vTzxjDifjLC3vTzsbLCNjVCJOG','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','q1ngENm','AxndB25Uzwn0zwq','CgfYC2vizwfKzxjZ','Cgf1C2u','Bg9JywXOB3n0oJKWoti','t3bcELy','vKLLqK0','C2vLA1rVt2zMC2v0','AxnsDw5UAw5N','BwvZC2fNzq','s0fgs0fFru5bqKXfra','yvbsq3q','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','zwHeEfu','BwvZC2fNzuHHBMrSzxi','y29UC3vTzxiUCMvIywXHBMnPBMC','mZa4otrHDKrbD1i','w0THzMTHq29UC3vTzxjDifnLzwSGzxjYB3i6ia','Bwf4','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','Bwf4qNL0zxnqzxjqyxj0AxrPB24','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','s0fgs0fFu1nm','mJe2ENrSyMPH','DMfSDwu','zxjYB3i','y29UBMvJDgLVBLbYB21PC2u','A2fMA2e','sez6EuG','y29UBMvJDgLVBLrPBwvVDxq','lwnVBNn1BwvYlwDYB3vW','zgvMyxvSDa','AM9PBG','mZaWmda','CMvZDw1L','w0THzMTHq29UC3vTzxjDienHBM5VDcbYzxn1BwuGlsbJB25ZDw1LCIbUB3qGCNvUBMLUzW','s0fgs0fFtufyx0jzvevtx1bfuL9qqvjusvrjt04','C3vIC2nYAwjL','mZi2nJC0sNn5tKTr','BwvZC2fNzxnqCM9JzxnZzwq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignYyxnOzwq6ia','mtqYode4ndbVtgfTBKm','ChjVy2vZC2LUz1rPBwvZ','v0fstG','mNHPD0zzBW','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','yNjVA2vYCW','tK9useLorW','s3PctwS','mtaYmtaWohvhvgLksW','ndyWoda1uw92A2vM','yxv0B0nVBw1PDa','CMv0CNLbDhrLBxb0CW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','otHRuuPJwvq','BgvUz3rO','z2v0twv0CMLJCW','sgLICee','lwnVBNn1BwvY','zMXVB3i'];a0_0x1460=function(){return _0x1b92d0;};return a0_0x1460();}function a0_0x34b7(_0x41d015,_0x499d0d){_0x41d015=_0x41d015-0x132;const _0x146011=a0_0x1460();let _0x34b760=_0x146011[_0x41d015];if(a0_0x34b7['pbKBtr']===undefined){var _0x437b1b=function(_0x35609c){const _0x40c8a5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x31b657='',_0x437729='';for(let _0x43498d=0x0,_0x555ec3,_0x4d4057,_0x30a5be=0x0;_0x4d4057=_0x35609c['charAt'](_0x30a5be++);~_0x4d4057&&(_0x555ec3=_0x43498d%0x4?_0x555ec3*0x40+_0x4d4057:_0x4d4057,_0x43498d++%0x4)?_0x31b657+=String['fromCharCode'](0xff&_0x555ec3>>(-0x2*_0x43498d&0x6)):0x0){_0x4d4057=_0x40c8a5['indexOf'](_0x4d4057);}for(let _0x1c5271=0x0,_0x2879a7=_0x31b657['length'];_0x1c5271<_0x2879a7;_0x1c5271++){_0x437729+='%'+('00'+_0x31b657['charCodeAt'](_0x1c5271)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x437729);};a0_0x34b7['OucSJy']=_0x437b1b,a0_0x34b7['kjUVTZ']={},a0_0x34b7['pbKBtr']=!![];}const _0x41609c=_0x146011[0x0],_0x285df2=_0x41d015+_0x41609c,_0x688f52=a0_0x34b7['kjUVTZ'][_0x285df2];return!_0x688f52?(_0x34b760=a0_0x34b7['OucSJy'](_0x34b760),a0_0x34b7['kjUVTZ'][_0x285df2]=_0x34b760):_0x34b760=_0x688f52,_0x34b760;}(function(_0x829138,_0x27cbfd){const _0x2535f5=a0_0x34b7,_0x48f2cb=_0x829138();while(!![]){try{const _0x21f9f5=-parseInt(_0x2535f5(0x1a4))/0x1*(parseInt(_0x2535f5(0x19e))/0x2)+-parseInt(_0x2535f5(0x135))/0x3+-parseInt(_0x2535f5(0x153))/0x4+-parseInt(_0x2535f5(0x136))/0x5+-parseInt(_0x2535f5(0x188))/0x6*(-parseInt(_0x2535f5(0x13a))/0x7)+parseInt(_0x2535f5(0x16f))/0x8*(-parseInt(_0x2535f5(0x18f))/0x9)+parseInt(_0x2535f5(0x1a1))/0xa;if(_0x21f9f5===_0x27cbfd)break;else _0x48f2cb['push'](_0x48f2cb['shift']());}catch(_0x1ac7a3){_0x48f2cb['push'](_0x48f2cb['shift']());}}}(a0_0x1460,0x301de));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require(a0_0x28960b(0x16e));class KafkaConsumerService{constructor(){const _0x516c0f=a0_0x28960b;this['kafka']=null,this['consumer']=null,this[_0x516c0f(0x179)]=![],this['isInitializing']=![],this['isRunning']=![],this[_0x516c0f(0x158)]=![],this[_0x516c0f(0x192)]=null,this['subscribedTopics']=[],this[_0x516c0f(0x14b)]=null,this[_0x516c0f(0x186)]=null,this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x28960b(0x165)](){const _0xf4cb6b=a0_0x28960b,_0x73da5a={'rmSfb':function(_0x37c796,_0x2126bd){return _0x37c796===_0x2126bd;},'NPEEv':_0xf4cb6b(0x17c),'OpBzV':function(_0x321716,_0x13909b){return _0x321716(_0x13909b);},'HONpj':'3000','aPRCt':function(_0x3b2089,_0xc0995c){return _0x3b2089(_0xc0995c);},'xkQSP':_0xf4cb6b(0x174),'MzQPH':function(_0x55bf9a,_0x185848){return _0x55bf9a(_0x185848);},'CSFzs':function(_0x4f6bd4,_0x4120b8){return _0x4f6bd4===_0x4120b8;},'HibpA':_0xf4cb6b(0x14a),'vFSYK':'30000','uKfOP':'warn'};return{'enabled':_0x73da5a['rmSfb'](process['env'][_0xf4cb6b(0x182)],'true'),'brokers':(process['env'][_0xf4cb6b(0x152)]||_0x73da5a['NPEEv'])['split'](','),'clientId':process['env'][_0xf4cb6b(0x163)]||'restforge-'+(process[_0xf4cb6b(0x142)]['RESTFORGE_PROJECT_NAME']||'default')+_0xf4cb6b(0x13e),'connectionTimeout':_0x73da5a['OpBzV'](parseInt,process[_0xf4cb6b(0x142)]['KAFKA_CONNECTION_TIMEOUT']||_0x73da5a['HONpj']),'requestTimeout':_0x73da5a['aPRCt'](parseInt,process['env']['KAFKA_REQUEST_TIMEOUT']||_0x73da5a['xkQSP']),'sessionTimeout':_0x73da5a[_0xf4cb6b(0x183)](parseInt,process['env']['KAFKA_SESSION_TIMEOUT']||_0xf4cb6b(0x199)),'heartbeatInterval':_0x73da5a['MzQPH'](parseInt,process['env']['KAFKA_HEARTBEAT_INTERVAL']||_0xf4cb6b(0x144)),'maxBytesPerPartition':parseInt(process['env'][_0xf4cb6b(0x19c)]||'1048576'),'autoCommit':_0x73da5a[_0xf4cb6b(0x178)](process['env'][_0xf4cb6b(0x171)],_0x73da5a[_0xf4cb6b(0x13d)]),'autoCommitInterval':parseInt(process[_0xf4cb6b(0x142)]['KAFKA_AUTO_COMMIT_INTERVAL']||'5000'),'retryAttempts':parseInt(process[_0xf4cb6b(0x142)][_0xf4cb6b(0x150)]||'3'),'retryDelay':parseInt(process[_0xf4cb6b(0x142)]['KAFKA_RETRY_DELAY']||'1000'),'retryMaxDelay':_0x73da5a[_0xf4cb6b(0x17d)](parseInt,process['env']['KAFKA_RETRY_MAX_DELAY']||_0x73da5a['vFSYK']),'logLevel':process[_0xf4cb6b(0x142)]['KAFKA_LOG_LEVEL']||_0x73da5a['uKfOP']};}['getLogLevel'](_0x3ef217){const _0x3d6bc1=a0_0x28960b,_0x26b1f1={'nothing':logLevel[_0x3d6bc1(0x133)],'error':logLevel['ERROR'],'warn':logLevel[_0x3d6bc1(0x1a3)],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x26b1f1[_0x3ef217['toLowerCase']()]||logLevel['WARN'];}async['initialize'](_0x489358={}){const _0x499523=a0_0x28960b,_0x282993={'rJzcg':'true','UVpGT':_0x499523(0x197),'KzBMk':function(_0x3058d7,_0x32ad40){return _0x3058d7(_0x32ad40);},'JgUPT':'[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'},_0x2a6f41=this['getConfig']();if(!_0x2a6f41['enabled'])return console[_0x499523(0x14c)](_0x282993['JgUPT']),![];if(this['isConnected'])return!![];if(this[_0x499523(0x16b)]&&this[_0x499523(0x192)])return this[_0x499523(0x192)];return this[_0x499523(0x16b)]=!![],this[_0x499523(0x192)]=new Promise(async _0x1e23ba=>{const _0x31842e=_0x499523;try{let _0x5b34be=undefined;process[_0x31842e(0x142)][_0x31842e(0x18e)]===_0x282993[_0x31842e(0x155)]&&(_0x5b34be=!![]);let _0x29665b=undefined;process['env'][_0x31842e(0x15a)]&&(_0x29665b={'mechanism':process[_0x31842e(0x142)]['KAFKA_SASL_MECHANISM'],'username':process[_0x31842e(0x142)]['KAFKA_SASL_USERNAME']||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this[_0x31842e(0x193)]=new Kafka({'clientId':_0x489358['clientId']||_0x2a6f41['clientId'],'brokers':_0x2a6f41['brokers'],'connectionTimeout':_0x2a6f41[_0x31842e(0x195)],'requestTimeout':_0x2a6f41['requestTimeout'],'logLevel':this[_0x31842e(0x14f)](_0x2a6f41[_0x31842e(0x175)]),'ssl':_0x5b34be,'sasl':_0x29665b,'retry':{'initialRetryTime':_0x2a6f41['retryDelay'],'retries':_0x2a6f41[_0x31842e(0x138)],'maxRetryTime':_0x2a6f41[_0x31842e(0x154)]}}),this['groupId']=_0x489358[_0x31842e(0x14b)]||'restforge-'+(process['env']['RESTFORGE_PROJECT_NAME']||_0x282993['UVpGT'])+_0x31842e(0x196),this['consumer']=this[_0x31842e(0x193)][_0x31842e(0x16c)]({'groupId':this['groupId'],'sessionTimeout':_0x2a6f41[_0x31842e(0x166)],'heartbeatInterval':_0x2a6f41['heartbeatInterval'],'maxBytesPerPartition':_0x2a6f41[_0x31842e(0x18c)],'allowAutoTopicCreation':![]}),await this['consumer'][_0x31842e(0x141)](),this['isConnected']=!![],console['log']('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x2a6f41['brokers'][_0x31842e(0x198)](',\x20')+'\x20(groupId:\x20'+this[_0x31842e(0x14b)]+')'),this['setupEventHandlers'](),_0x282993[_0x31842e(0x134)](_0x1e23ba,!![]);}catch(_0x501bed){console['error'](_0x31842e(0x177)+_0x501bed['message']),this[_0x31842e(0x179)]=![],_0x1e23ba(![]);}finally{this['isInitializing']=![];}}),this['connectionPromise'];}[a0_0x28960b(0x143)](){const _0x2868c6=a0_0x28960b,_0x10f3da={'LiyxB':'[KafkaConsumer]\x20Consumer\x20disconnected','RVWer':'[KafkaConsumer]\x20Consumer\x20rebalancing...','QTcYu':_0x2868c6(0x187)};if(!this['consumer'])return;this[_0x2868c6(0x16c)]['on']('consumer.disconnect',()=>{const _0x2ae64b=_0x2868c6;console[_0x2ae64b(0x14c)](_0x10f3da['LiyxB']),this[_0x2ae64b(0x179)]=![],this['isRunning']=![];}),this['consumer']['on']('consumer.stop',()=>{const _0x12c20e=_0x2868c6;console[_0x12c20e(0x14c)]('[KafkaConsumer]\x20Consumer\x20stopped'),this[_0x12c20e(0x180)]=![];}),this[_0x2868c6(0x16c)]['on']('consumer.crash',_0x714bb3=>{const _0x1a077e=_0x2868c6;console[_0x1a077e(0x191)](_0x1a077e(0x1a0)+_0x714bb3['payload'][_0x1a077e(0x191)]['message']),this[_0x1a077e(0x180)]=![];}),this['consumer']['on'](_0x10f3da['QTcYu'],()=>{const _0x5746bb=_0x2868c6;console[_0x5746bb(0x14c)](_0x10f3da['RVWer']);});}async[a0_0x28960b(0x19d)](_0x4eea99,_0x4b43b4=![]){const _0x9fa6be=a0_0x28960b;if(!this['isConnected'])return console[_0x9fa6be(0x191)]('[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'),![];try{const _0x5e99d0=Array['isArray'](_0x4eea99)?_0x4eea99:[_0x4eea99];for(const _0x53accc of _0x5e99d0){await this[_0x9fa6be(0x16c)]['subscribe']({'topic':_0x53accc,'fromBeginning':_0x4b43b4}),console['log'](_0x9fa6be(0x145)+_0x53accc+'\x20(fromBeginning:\x20'+_0x4b43b4+')');}return this['subscribedTopics']=[...new Set([...this['subscribedTopics'],..._0x5e99d0])],!![];}catch(_0x4c2d5a){return console['error']('[KafkaConsumer]\x20Subscribe\x20error:\x20'+_0x4c2d5a['message']),![];}}async[a0_0x28960b(0x151)](_0x237291,_0x3d3240={}){const _0x432c0a=a0_0x28960b,_0x537fe3={'MGVVW':function(_0x37fdf5,_0x8431a7){return _0x37fdf5+_0x8431a7;},'MfBqY':function(_0x31638f,_0x37dd04){return _0x31638f(_0x37dd04);},'OlOIK':function(_0x24d7e7){return _0x24d7e7();},'hSUnN':_0x432c0a(0x173)};if(!this[_0x432c0a(0x179)])return console['error']('[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected'),![];if(this[_0x432c0a(0x180)])return console[_0x432c0a(0x14c)](_0x537fe3[_0x432c0a(0x15f)]),!![];const _0x3403c9=this['getConfig']();this[_0x432c0a(0x186)]=_0x237291;try{return this[_0x432c0a(0x15c)][_0x432c0a(0x170)]=new Date(),await this['consumer'][_0x432c0a(0x160)]({'autoCommit':_0x3d3240['autoCommit']!==undefined?_0x3d3240[_0x432c0a(0x137)]:_0x3403c9[_0x432c0a(0x137)],'autoCommitInterval':_0x3403c9[_0x432c0a(0x172)],'eachMessage':async({topic:_0xb56830,partition:_0x1f77a4,message:_0x4d267d,heartbeat:_0x42428e})=>{const _0x18eaec=_0x432c0a,_0xb817fc=Date[_0x18eaec(0x168)]();this['metrics'][_0x18eaec(0x156)]++,this[_0x18eaec(0x15c)][_0x18eaec(0x147)]=new Date();try{const _0x25c4d2=_0x4d267d['value']?_0x4d267d[_0x18eaec(0x190)][_0x18eaec(0x159)]():null;let _0xf462e6=null;try{_0xf462e6=_0x25c4d2?JSON['parse'](_0x25c4d2):null;}catch(_0x2b6858){_0xf462e6=_0x25c4d2;}const _0x58971c={'topic':_0xb56830,'partition':_0x1f77a4,'offset':_0x4d267d['offset'],'key':_0x4d267d[_0x18eaec(0x167)]?_0x4d267d['key'][_0x18eaec(0x159)]():null,'headers':this[_0x18eaec(0x17a)](_0x4d267d['headers']),'timestamp':_0x4d267d[_0x18eaec(0x164)],'value':_0xf462e6,'raw':_0x25c4d2};this['messageHandler']&&await this[_0x18eaec(0x186)](_0x58971c);!_0x3403c9['autoCommit']&&await this['consumer'][_0x18eaec(0x15d)]([{'topic':_0xb56830,'partition':_0x1f77a4,'offset':_0x537fe3['MGVVW'](_0x537fe3['MfBqY'](parseInt,_0x4d267d['offset']),0x1)['toString']()}]);this[_0x18eaec(0x15c)]['messagesProcessed']++;const _0xeb133e=Date[_0x18eaec(0x168)]()-_0xb817fc;this['metrics']['processingTimes'][_0x18eaec(0x16d)](_0xeb133e),this[_0x18eaec(0x15c)]['processingTimes'][_0x18eaec(0x13b)]>0x64&&this[_0x18eaec(0x15c)]['processingTimes']['shift'](),await _0x537fe3[_0x18eaec(0x15e)](_0x42428e);}catch(_0x112ae9){this['metrics']['messagesFailed']++,console[_0x18eaec(0x191)]('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x112ae9[_0x18eaec(0x181)]);throw _0x112ae9;}}}),this['isRunning']=!![],console[_0x432c0a(0x14c)]('[KafkaConsumer]\x20Started\x20consuming\x20from\x20topics:\x20'+this[_0x432c0a(0x146)][_0x432c0a(0x198)](',\x20')),!![];}catch(_0x4741bc){return console['error']('[KafkaConsumer]\x20Start\x20consuming\x20error:\x20'+_0x4741bc[_0x432c0a(0x181)]),![];}}[a0_0x28960b(0x17a)](_0x108f65){if(!_0x108f65)return{};const _0x17fe0a={};for(const [_0x25aec6,_0xa373c]of Object['entries'](_0x108f65)){_0x17fe0a[_0x25aec6]=_0xa373c?_0xa373c['toString']():null;}return _0x17fe0a;}async[a0_0x28960b(0x17b)](){const _0x570e43=a0_0x28960b,_0x3ce29b={'Npkfy':_0x570e43(0x139)};if(!this['isConnected']||!this[_0x570e43(0x180)])return console['log']('[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running'),![];if(this[_0x570e43(0x158)])return console['log']('[KafkaConsumer]\x20Consumer\x20already\x20paused'),!![];try{const _0x43f77b=this['subscribedTopics']['map'](_0x1ae240=>({'topic':_0x1ae240}));return this[_0x570e43(0x16c)][_0x570e43(0x17b)](_0x43f77b),this['isPaused']=!![],console[_0x570e43(0x14c)](_0x3ce29b['Npkfy']),!![];}catch(_0x15a153){return console[_0x570e43(0x191)]('[KafkaConsumer]\x20Pause\x20error:\x20'+_0x15a153['message']),![];}}async['resume'](){const _0x1fc9d9=a0_0x28960b,_0x591266={'pPszM':_0x1fc9d9(0x19b)};if(!this['isConnected']||!this[_0x1fc9d9(0x180)])return console[_0x1fc9d9(0x14c)](_0x591266[_0x1fc9d9(0x161)]),![];if(!this[_0x1fc9d9(0x158)])return console['log']('[KafkaConsumer]\x20Consumer\x20not\x20paused'),!![];try{const _0x57c4c2=this['subscribedTopics']['map'](_0x16edda=>({'topic':_0x16edda}));return this['consumer'][_0x1fc9d9(0x19a)](_0x57c4c2),this[_0x1fc9d9(0x158)]=![],console['log'](_0x1fc9d9(0x18b)),!![];}catch(_0x105a44){return console[_0x1fc9d9(0x191)](_0x1fc9d9(0x176)+_0x105a44[_0x1fc9d9(0x181)]),![];}}async['stop'](){const _0x285dc9=a0_0x28960b;if(!this[_0x285dc9(0x179)])return console['log'](_0x285dc9(0x18d)),!![];try{return this[_0x285dc9(0x16c)]&&(await this['consumer']['stop'](),await this['consumer']['disconnect']()),this[_0x285dc9(0x179)]=![],this[_0x285dc9(0x180)]=![],this['isPaused']=![],console['log'](_0x285dc9(0x16a)),!![];}catch(_0xb95107){return console['error'](_0x285dc9(0x14e)+_0xb95107[_0x285dc9(0x181)]),![];}}async[a0_0x28960b(0x17f)](_0x1da9f8,_0x5e635f,_0x28f7f0){const _0x14c23=a0_0x28960b,_0x5dedee={'ehDxU':'[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'};if(!this['isConnected'])return console['error'](_0x5dedee[_0x14c23(0x185)]),![];try{return this['consumer'][_0x14c23(0x14d)]({'topic':_0x1da9f8,'partition':_0x5e635f,'offset':_0x28f7f0['toString']()}),console[_0x14c23(0x14c)](_0x14c23(0x184)+_0x28f7f0+'\x20on\x20'+_0x1da9f8+':'+_0x5e635f),!![];}catch(_0x52f884){return console[_0x14c23(0x191)](_0x14c23(0x189)+_0x52f884['message']),![];}}[a0_0x28960b(0x15b)](){const _0xbb2473=a0_0x28960b,_0x44d2b0=this[_0xbb2473(0x165)]();return{'enabled':_0x44d2b0['enabled'],'connected':this[_0xbb2473(0x179)],'running':this['isRunning'],'paused':this['isPaused'],'brokers':_0x44d2b0[_0xbb2473(0x132)],'clientId':_0x44d2b0[_0xbb2473(0x157)],'groupId':this['groupId'],'subscribedTopics':this['subscribedTopics']};}[a0_0x28960b(0x13c)](){const _0x2ce02a=a0_0x28960b,_0x584c10={'VIeBM':function(_0x28cacd,_0x1e159a){return _0x28cacd>_0x1e159a;},'QXqLE':function(_0x163d3b,_0x41db74){return _0x163d3b/_0x41db74;},'HFzyH':function(_0x37cf7a,_0x8a709e){return _0x37cf7a+_0x8a709e;},'pyRXx':function(_0x37f8df,_0x5841dd){return _0x37f8df-_0x5841dd;},'JIjHB':function(_0x40da88,_0x14fefa){return _0x40da88+_0x14fefa;}},_0x44ce7c=_0x584c10['VIeBM'](this[_0x2ce02a(0x15c)][_0x2ce02a(0x1a2)][_0x2ce02a(0x13b)],0x0)?_0x584c10['QXqLE'](this['metrics'][_0x2ce02a(0x1a2)]['reduce']((_0x952e8d,_0x1547b0)=>_0x952e8d+_0x1547b0,0x0),this['metrics']['processingTimes'][_0x2ce02a(0x13b)]):0x0,_0x4251d9=_0x584c10[_0x2ce02a(0x17e)](this[_0x2ce02a(0x15c)][_0x2ce02a(0x1a2)][_0x2ce02a(0x13b)],0x0)?Math['min'](...this['metrics']['processingTimes']):0x0,_0x378ad7=_0x584c10['VIeBM'](this['metrics']['processingTimes'][_0x2ce02a(0x13b)],0x0)?Math[_0x2ce02a(0x18a)](...this[_0x2ce02a(0x15c)]['processingTimes']):0x0;return{'messagesReceived':this['metrics']['messagesReceived'],'messagesProcessed':this[_0x2ce02a(0x15c)][_0x2ce02a(0x19f)],'messagesFailed':this[_0x2ce02a(0x15c)]['messagesFailed'],'successRate':_0x584c10[_0x2ce02a(0x17e)](this['metrics']['messagesReceived'],0x0)?(_0x584c10['QXqLE'](this['metrics'][_0x2ce02a(0x19f)],this[_0x2ce02a(0x15c)]['messagesReceived'])*0x64)[_0x2ce02a(0x169)](0x2)+'%':'0%','lastMessageTime':this['metrics'][_0x2ce02a(0x147)],'startTime':this[_0x2ce02a(0x15c)][_0x2ce02a(0x170)],'uptime':this['metrics']['startTime']?_0x584c10[_0x2ce02a(0x194)](Math[_0x2ce02a(0x13f)](_0x584c10['QXqLE'](_0x584c10['pyRXx'](Date[_0x2ce02a(0x168)](),this['metrics'][_0x2ce02a(0x170)]['getTime']()),0x3e8)),'s'):'0s','processingTime':{'avg':_0x584c10['JIjHB'](Math['round'](_0x44ce7c),'ms'),'min':_0x4251d9+'ms','max':_0x584c10['HFzyH'](_0x378ad7,'ms')}};}[a0_0x28960b(0x140)](){const _0x5e2ed3=a0_0x28960b,_0x26e145={'pUZJb':_0x5e2ed3(0x1a5)};this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console[_0x5e2ed3(0x14c)](_0x26e145['pUZJb']);}async['close'](){const _0x324492=a0_0x28960b;await this[_0x324492(0x148)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){const _0xd786e1=a0_0x28960b;instance&&(instance[_0xd786e1(0x162)](),instance=null);}function createInstance(){return new KafkaConsumerService();}module[a0_0x28960b(0x149)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
1
|
+
function a0_0x2773(){const _0x4d4ed2=['w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','C2vLA1rVt2zMC2v0','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','s0fgs0fFsevbuLrcrufux0LovevsvKfm','mxWWFdn8nhW1Fdi','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','AxndB25Uzwn0zwq','AxnjBML0AwfSAxPPBMC','CMvZzxrnzxrYAwnZ','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','C3vIC2nYAwjL','BwvZC2fNzuHHBMrSzxi','icHMCM9TqMvNAw5UAw5NoIa','A2v5','BgfZDe1LC3nHz2vuAw1L','y29UC3vTzxiUy3jHC2G','z3jVDxbjza','A2fMA2fQCW','nZC5oteYA0DozNPs','uvDVA3O','A2fMA2e','s0fgs0fFu0fttf9vu0vstKfnrq','yNjVA2vYCW','CMv0CNLbDhrLBxb0CW','BgvUz3rO','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','wNjfDLu','EuPRzvy','sfjqv3u','DMfSDwu','BwvZC2fNzq','BfrnEMC','zurRChq','mta0odu3nG','zgvMyxvSDa','mtK2ntG2nePTvxjQEG','t3rwteC','Bwf4qNL0zxnqzxjqyxj0AxrPB24','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','zw5HyMXLza','mty5mfzLtMPIDq','mZaWmda','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzwqGDg8GDg9WAwm6ia','z2v0vgLTzq','ntu0C3bpuwf6','mtq5otG1nKDzvKPdzG','CMvZDw1L','ndjLs1bxB24','rvjst1i','Cevxv2m','C3bSAxq','svPjDKO','y29UBMvJDa','C3rVCa','twHqreC','sLzOBKK','y29UC3vTzxiUCMvIywXHBMnPBMC','s0fgs0fFuKvrvuvtvf9usu1ft1vu','Bwv0CMLJCW','zxHWB3j0CW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignYyxnOzwq6ia','Aw5PDgLHBgL6zq','BwfW','y2XPzw50swq','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','y29UBMvJDgLVBLbYB21PC2u','zxjYB3i','su5gtW','ChjVy2vZC2LUz1rPBwvZ','s0fgs0fFqLjps0vsuW','DxvPza','BwLU','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','ChvZAa','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','s0fgs0fFu0fttf9nruniqu5ju00','AxnbCNjHEq','yxreC0S','q3npu2u','nZuWmdy3mLjWyLrhAW','B2zMC2v0','s0fgs0fFu0vtu0LptL9usu1ft1vu','zw52','CK1Pwum','z1HnzLy','r0npC1q','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','C3vIC2nYAwjLzfrVCgLJCW','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','C2v0DxbfDMvUDeHHBMrSzxjZ','Dg9tDhjPBMC','revcvuC','sfvovue','ndiZmtm2n1zXCKzquG','zw50CMLLCW','yxv0B0nVBw1PDa','icHNCM91CeLKoIa','C3rHCNruAw1L','AxnsDw5UAw5N','Cgf1C2u','s0fgs0fFu1nm','s0fgs0fFru5bqKXfra','mJyWodC1Evnhz3vJ','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','z2v0q29UzMLN','BwvZC2fNzxnqCM9JzxnZzwq','lwnVBNn1BwvY','y3nwqwi','s0fgs0fFuKvuuLLFrevmqvK','BM93','s0fgs0fFq09otKvdveLptL9usu1ft1vu','y29UC3vTzxiUzgLZy29UBMvJDa','s0fgs0fFq0Xjru5ux0Le','AgvHCNrIzwf0sw50zxj2ywW','AxnqyxvZzwq','y29UC3vTzxi','BwvZC2fNzxnszwnLAxzLza','Bg9N','CgfYC2vizwfKzxjZ'];a0_0x2773=function(){return _0x4d4ed2;};return a0_0x2773();}function a0_0x1ba8(_0x3d876a,_0x3143cb){_0x3d876a=_0x3d876a-0x1c3;const _0x27736e=a0_0x2773();let _0x1ba81d=_0x27736e[_0x3d876a];if(a0_0x1ba8['PPJiud']===undefined){var _0x42ff3e=function(_0x4ee758){const _0x3835ec='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4bcc98='',_0x18245c='';for(let _0x4886ff=0x0,_0x27c7af,_0x1f0b8a,_0x3150d7=0x0;_0x1f0b8a=_0x4ee758['charAt'](_0x3150d7++);~_0x1f0b8a&&(_0x27c7af=_0x4886ff%0x4?_0x27c7af*0x40+_0x1f0b8a:_0x1f0b8a,_0x4886ff++%0x4)?_0x4bcc98+=String['fromCharCode'](0xff&_0x27c7af>>(-0x2*_0x4886ff&0x6)):0x0){_0x1f0b8a=_0x3835ec['indexOf'](_0x1f0b8a);}for(let _0xa4fd97=0x0,_0x3d051e=_0x4bcc98['length'];_0xa4fd97<_0x3d051e;_0xa4fd97++){_0x18245c+='%'+('00'+_0x4bcc98['charCodeAt'](_0xa4fd97)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x18245c);};a0_0x1ba8['gOvmuM']=_0x42ff3e,a0_0x1ba8['GQHfKV']={},a0_0x1ba8['PPJiud']=!![];}const _0x325fb8=_0x27736e[0x0],_0x5c8d26=_0x3d876a+_0x325fb8,_0xcd26=a0_0x1ba8['GQHfKV'][_0x5c8d26];return!_0xcd26?(_0x1ba81d=a0_0x1ba8['gOvmuM'](_0x1ba81d),a0_0x1ba8['GQHfKV'][_0x5c8d26]=_0x1ba81d):_0x1ba81d=_0xcd26,_0x1ba81d;}const a0_0x15eb5e=a0_0x1ba8;(function(_0x1cd9a2,_0x1ffd51){const _0x3f562f=a0_0x1ba8,_0x332635=_0x1cd9a2();while(!![]){try{const _0x31a078=-parseInt(_0x3f562f(0x1d4))/0x1*(-parseInt(_0x3f562f(0x1d0))/0x2)+-parseInt(_0x3f562f(0x1cb))/0x3+parseInt(_0x3f562f(0x234))/0x4+parseInt(_0x3f562f(0x20f))/0x5*(parseInt(_0x3f562f(0x1d7))/0x6)+parseInt(_0x3f562f(0x206))/0x7+parseInt(_0x3f562f(0x1d5))/0x8+-parseInt(_0x3f562f(0x1f8))/0x9;if(_0x31a078===_0x1ffd51)break;else _0x332635['push'](_0x332635['shift']());}catch(_0x585696){_0x332635['push'](_0x332635['shift']());}}}(a0_0x2773,0x50f50));const {Kafka,logLevel}=require(a0_0x15eb5e(0x233)),{v7:uuidv7}=require(a0_0x15eb5e(0x1ef));class KafkaConsumerService{constructor(){const _0x468b30=a0_0x15eb5e;this['kafka']=null,this[_0x468b30(0x21d)]=null,this['isConnected']=![],this['isInitializing']=![],this['isRunning']=![],this[_0x468b30(0x21c)]=![],this[_0x468b30(0x1ea)]=null,this['subscribedTopics']=[],this['groupId']=null,this[_0x468b30(0x22d)]=null,this[_0x468b30(0x1e2)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x15eb5e(0x212)](){const _0xa0413c=a0_0x15eb5e,_0x905bbf={'sPiTG':function(_0x28a3b3,_0x1c8c1a){return _0x28a3b3===_0x1c8c1a;},'LUiCa':'true','lTMzg':function(_0x10884b,_0x3a8fd8){return _0x10884b(_0x3a8fd8);},'MhPDG':'3000','JVhnI':function(_0x2be7d0,_0x40fd19){return _0x2be7d0(_0x40fd19);},'pEWWc':'25000','OtVLG':function(_0x10e474,_0x289cf4){return _0x10e474(_0x289cf4);},'eDkpt':_0xa0413c(0x1c9),'HUNUA':function(_0x55a184,_0x1e428e){return _0x55a184===_0x1e428e;},'QWokz':'5000','mFJdX':'1000','RwNTo':'30000'};return{'enabled':_0x905bbf['sPiTG'](process['env'][_0xa0413c(0x20e)],_0x905bbf['LUiCa']),'brokers':(process[_0xa0413c(0x1fb)][_0xa0413c(0x1ee)]||'localhost:9092')['split'](','),'clientId':process['env'][_0xa0413c(0x21a)]||'restforge-'+(process[_0xa0413c(0x1fb)][_0xa0413c(0x227)]||_0xa0413c(0x1ca))+_0xa0413c(0x214),'connectionTimeout':_0x905bbf[_0xa0413c(0x1c7)](parseInt,process[_0xa0413c(0x1fb)][_0xa0413c(0x218)]||_0x905bbf['MhPDG']),'requestTimeout':_0x905bbf[_0xa0413c(0x1df)](parseInt,process[_0xa0413c(0x1fb)][_0xa0413c(0x1e1)]||_0x905bbf[_0xa0413c(0x1d9)]),'sessionTimeout':parseInt(process['env'][_0xa0413c(0x1fa)]||_0xa0413c(0x1d1)),'heartbeatInterval':_0x905bbf[_0xa0413c(0x1cc)](parseInt,process['env'][_0xa0413c(0x225)]||_0x905bbf[_0xa0413c(0x1de)]),'maxBytesPerPartition':parseInt(process[_0xa0413c(0x1fb)]['KAFKA_MAX_BYTES_PER_PARTITION']||_0x905bbf[_0xa0413c(0x1c8)]),'autoCommit':_0x905bbf[_0xa0413c(0x205)](process['env']['KAFKA_AUTO_COMMIT'],_0x905bbf['LUiCa']),'autoCommitInterval':parseInt(process['env'][_0xa0413c(0x222)]||_0x905bbf[_0xa0413c(0x235)]),'retryAttempts':_0x905bbf[_0xa0413c(0x1df)](parseInt,process[_0xa0413c(0x1fb)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process[_0xa0413c(0x1fb)][_0xa0413c(0x216)]||_0x905bbf['mFJdX']),'retryMaxDelay':parseInt(process[_0xa0413c(0x1fb)]['KAFKA_RETRY_MAX_DELAY']||_0x905bbf['RwNTo']),'logLevel':process['env']['KAFKA_LOG_LEVEL']||'warn'};}['getLogLevel'](_0x2b270a){const _0x5f3783=a0_0x15eb5e,_0x27e3ff={'nothing':logLevel['NOTHING'],'error':logLevel[_0x5f3783(0x1d8)],'warn':logLevel['WARN'],'info':logLevel[_0x5f3783(0x1ec)],'debug':logLevel[_0x5f3783(0x204)]};return _0x27e3ff[_0x2b270a['toLowerCase']()]||logLevel['WARN'];}async[a0_0x15eb5e(0x1e5)](_0x2c943e={}){const _0x3754c0=a0_0x15eb5e,_0x115170={'csVAb':'default','ZrEvU':function(_0x29f27a,_0x1ba8e4){return _0x29f27a(_0x1ba8e4);}},_0x2959ea=this['getConfig']();if(!_0x2959ea[_0x3754c0(0x1cf)])return console[_0x3754c0(0x21f)]('[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'),![];if(this[_0x3754c0(0x228)])return!![];if(this[_0x3754c0(0x229)]&&this[_0x3754c0(0x1ea)])return this[_0x3754c0(0x1ea)];return this['isInitializing']=!![],this[_0x3754c0(0x1ea)]=new Promise(async _0x3b9895=>{const _0x105204=_0x3754c0;try{let _0x1f6fb4=undefined;process[_0x105204(0x1fb)][_0x105204(0x20d)]==='true'&&(_0x1f6fb4=!![]);let _0x15c398=undefined;process['env'][_0x105204(0x1f4)]&&(_0x15c398={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process[_0x105204(0x1fb)][_0x105204(0x237)]||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this[_0x105204(0x236)]=new Kafka({'clientId':_0x2c943e[_0x105204(0x1e7)]||_0x2959ea[_0x105204(0x1e7)],'brokers':_0x2959ea[_0x105204(0x238)],'connectionTimeout':_0x2959ea['connectionTimeout'],'requestTimeout':_0x2959ea['requestTimeout'],'logLevel':this['getLogLevel'](_0x2959ea['logLevel']),'ssl':_0x1f6fb4,'sasl':_0x15c398,'retry':{'initialRetryTime':_0x2959ea['retryDelay'],'retries':_0x2959ea[_0x105204(0x239)],'maxRetryTime':_0x2959ea['retryMaxDelay']}}),this[_0x105204(0x232)]=_0x2c943e['groupId']||'restforge-'+(process[_0x105204(0x1fb)][_0x105204(0x227)]||_0x115170[_0x105204(0x215)])+'-consumer-group',this[_0x105204(0x21d)]=this['kafka'][_0x105204(0x21d)]({'groupId':this['groupId'],'sessionTimeout':_0x2959ea['sessionTimeout'],'heartbeatInterval':_0x2959ea[_0x105204(0x21b)],'maxBytesPerPartition':_0x2959ea[_0x105204(0x1cd)],'allowAutoTopicCreation':![]}),await this[_0x105204(0x21d)][_0x105204(0x1dc)](),this[_0x105204(0x228)]=!![],console[_0x105204(0x21f)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x2959ea[_0x105204(0x238)]['join'](',\x20')+_0x105204(0x209)+this[_0x105204(0x232)]+')'),this[_0x105204(0x202)](),_0x3b9895(!![]);}catch(_0x3cd461){console[_0x105204(0x1eb)](_0x105204(0x224)+_0x3cd461['message']),this[_0x105204(0x228)]=![],_0x115170[_0x105204(0x23c)](_0x3b9895,![]);}finally{this[_0x105204(0x229)]=![];}}),this['connectionPromise'];}[a0_0x15eb5e(0x202)](){const _0x2db46e=a0_0x15eb5e,_0xc515df={'Tnkdp':_0x2db46e(0x1f1),'hfQqW':'[KafkaConsumer]\x20Consumer\x20stopped','CbqOp':'[KafkaConsumer]\x20Consumer\x20rebalancing...','RDcNo':_0x2db46e(0x219),'HRPWu':'consumer.stop','vykQv':_0x2db46e(0x1e0)};if(!this['consumer'])return;this[_0x2db46e(0x21d)]['on'](_0xc515df['RDcNo'],()=>{const _0x2f7e7b=_0x2db46e;console['log'](_0xc515df['Tnkdp']),this[_0x2f7e7b(0x228)]=![],this['isRunning']=![];}),this['consumer']['on'](_0xc515df[_0x2db46e(0x1c4)],()=>{const _0x59a316=_0x2db46e;console[_0x59a316(0x21f)](_0xc515df['hfQqW']),this['isRunning']=![];}),this[_0x2db46e(0x21d)]['on'](_0x2db46e(0x231),_0x80aed5=>{const _0x4c1060=_0x2db46e;console[_0x4c1060(0x1eb)](_0x4c1060(0x1e4)+_0x80aed5['payload']['error'][_0x4c1060(0x1c6)]),this['isRunning']=![];}),this['consumer']['on'](_0xc515df['vykQv'],()=>{console['log'](_0xc515df['CbqOp']);});}async['subscribe'](_0x558b11,_0x184452=![]){const _0x1ba50c=a0_0x15eb5e,_0xcc10={'fJmOQ':'[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'};if(!this[_0x1ba50c(0x228)])return console[_0x1ba50c(0x1eb)](_0xcc10['fJmOQ']),![];try{const _0x5b12f1=Array[_0x1ba50c(0x1f5)](_0x558b11)?_0x558b11:[_0x558b11];for(const _0x31cb6e of _0x5b12f1){await this[_0x1ba50c(0x21d)][_0x1ba50c(0x22c)]({'topic':_0x31cb6e,'fromBeginning':_0x184452}),console['log'](_0x1ba50c(0x1d2)+_0x31cb6e+_0x1ba50c(0x22e)+_0x184452+')');}return this['subscribedTopics']=[...new Set([...this[_0x1ba50c(0x200)],..._0x5b12f1])],!![];}catch(_0xe13062){return console[_0x1ba50c(0x1eb)]('[KafkaConsumer]\x20Subscribe\x20error:\x20'+_0xe13062['message']),![];}}async['startConsuming'](_0x24bcf9,_0x2843bd={}){const _0x4d20a4=a0_0x15eb5e,_0x1d1534={'tGsWY':function(_0x1f53c5,_0xcc114a){return _0x1f53c5-_0xcc114a;},'atDsK':function(_0x377b44){return _0x377b44();},'GmZWC':'[KafkaConsumer]\x20Consumer\x20already\x20running'};if(!this[_0x4d20a4(0x228)])return console['error'](_0x4d20a4(0x1ff)),![];if(this[_0x4d20a4(0x20b)])return console[_0x4d20a4(0x21f)](_0x1d1534['GmZWC']),!![];const _0x20700e=this['getConfig']();this['messageHandler']=_0x24bcf9;try{return this['metrics']['startTime']=new Date(),await this[_0x4d20a4(0x21d)]['run']({'autoCommit':_0x2843bd[_0x4d20a4(0x208)]!==undefined?_0x2843bd['autoCommit']:_0x20700e['autoCommit'],'autoCommitInterval':_0x20700e['autoCommitInterval'],'eachMessage':async({topic:_0x4b7ea4,partition:_0x197681,message:_0x34dab6,heartbeat:_0x30521c})=>{const _0x5effa3=_0x4d20a4,_0x3b4447=Date[_0x5effa3(0x217)]();this['metrics']['messagesReceived']++,this['metrics'][_0x5effa3(0x230)]=new Date();try{const _0x3f2431=_0x34dab6[_0x5effa3(0x1c5)]?_0x34dab6['value']['toString']():null;let _0x8990f9=null;try{_0x8990f9=_0x3f2431?JSON['parse'](_0x3f2431):null;}catch(_0x2bae88){_0x8990f9=_0x3f2431;}const _0x226346={'topic':_0x4b7ea4,'partition':_0x197681,'offset':_0x34dab6[_0x5effa3(0x1f9)],'key':_0x34dab6[_0x5effa3(0x22f)]?_0x34dab6['key']['toString']():null,'headers':this['parseHeaders'](_0x34dab6['headers']),'timestamp':_0x34dab6['timestamp'],'value':_0x8990f9,'raw':_0x3f2431};this[_0x5effa3(0x22d)]&&await this['messageHandler'](_0x226346);!_0x20700e['autoCommit']&&await this['consumer']['commitOffsets']([{'topic':_0x4b7ea4,'partition':_0x197681,'offset':(parseInt(_0x34dab6['offset'])+0x1)[_0x5effa3(0x203)]()}]);this[_0x5effa3(0x1e2)]['messagesProcessed']++;const _0x17aa1c=_0x1d1534['tGsWY'](Date['now'](),_0x3b4447);this[_0x5effa3(0x1e2)]['processingTimes'][_0x5effa3(0x1f2)](_0x17aa1c),this[_0x5effa3(0x1e2)][_0x5effa3(0x1ed)][_0x5effa3(0x23a)]>0x64&&this[_0x5effa3(0x1e2)][_0x5effa3(0x1ed)]['shift'](),await _0x1d1534[_0x5effa3(0x1f6)](_0x30521c);}catch(_0x3b90a6){this['metrics']['messagesFailed']++,console['error'](_0x5effa3(0x1f3)+_0x3b90a6[_0x5effa3(0x1c6)]);throw _0x3b90a6;}}}),this[_0x4d20a4(0x20b)]=!![],console[_0x4d20a4(0x21f)](_0x4d20a4(0x211)+this['subscribedTopics']['join'](',\x20')),!![];}catch(_0x19d547){return console['error']('[KafkaConsumer]\x20Start\x20consuming\x20error:\x20'+_0x19d547['message']),![];}}[a0_0x15eb5e(0x220)](_0x3737be){const _0x2dc75f=a0_0x15eb5e;if(!_0x3737be)return{};const _0x5dd657={};for(const [_0xe827c0,_0xc73da5]of Object[_0x2dc75f(0x207)](_0x3737be)){_0x5dd657[_0xe827c0]=_0xc73da5?_0xc73da5[_0x2dc75f(0x203)]():null;}return _0x5dd657;}async[a0_0x15eb5e(0x20c)](){const _0x37b21c=a0_0x15eb5e,_0x15fa5f={'vFFgd':_0x37b21c(0x210),'IZIvJ':'[KafkaConsumer]\x20Consumer\x20already\x20paused','CsOSe':_0x37b21c(0x23b)};if(!this[_0x37b21c(0x228)]||!this['isRunning'])return console[_0x37b21c(0x21f)](_0x15fa5f['vFFgd']),![];if(this[_0x37b21c(0x21c)])return console[_0x37b21c(0x21f)](_0x15fa5f[_0x37b21c(0x1db)]),!![];try{const _0xed21ab=this['subscribedTopics']['map'](_0x53a2bf=>({'topic':_0x53a2bf}));return this[_0x37b21c(0x21d)][_0x37b21c(0x20c)](_0xed21ab),this[_0x37b21c(0x21c)]=!![],console[_0x37b21c(0x21f)](_0x15fa5f[_0x37b21c(0x1f7)]),!![];}catch(_0x1a54f5){return console['error'](_0x37b21c(0x1e9)+_0x1a54f5['message']),![];}}async[a0_0x15eb5e(0x1d6)](){const _0x3549db=a0_0x15eb5e,_0x50f3d9={'yJkeV':'[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running','gXMfV':'[KafkaConsumer]\x20Consumer\x20resumed'};if(!this[_0x3549db(0x228)]||!this['isRunning'])return console['log'](_0x50f3d9[_0x3549db(0x1c3)]),![];if(!this[_0x3549db(0x21c)])return console['log']('[KafkaConsumer]\x20Consumer\x20not\x20paused'),!![];try{const _0x5fa2b0=this[_0x3549db(0x200)][_0x3549db(0x1e6)](_0x50f2cc=>({'topic':_0x50f2cc}));return this['consumer']['resume'](_0x5fa2b0),this['isPaused']=![],console['log'](_0x50f3d9[_0x3549db(0x1fd)]),!![];}catch(_0x4019a9){return console['error']('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x4019a9['message']),![];}}async['stop'](){const _0x510713=a0_0x15eb5e,_0x1675bb={'MDiiK':_0x510713(0x22b),'GCOsT':_0x510713(0x226)};if(!this[_0x510713(0x228)])return console['log'](_0x1675bb['MDiiK']),!![];try{const _0x42d80e=_0x1675bb[_0x510713(0x1fe)][_0x510713(0x1da)]('|');let _0x5612ab=0x0;while(!![]){switch(_0x42d80e[_0x5612ab++]){case'0':this['isConnected']=![];continue;case'1':this[_0x510713(0x21d)]&&(await this[_0x510713(0x21d)][_0x510713(0x1dd)](),await this[_0x510713(0x21d)]['disconnect']());continue;case'2':return!![];case'3':this['isRunning']=![];continue;case'4':this[_0x510713(0x21c)]=![];continue;case'5':console['log']('[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected');continue;}break;}}catch(_0x1fd0c8){return console['error'](_0x510713(0x221)+_0x1fd0c8['message']),![];}}async[a0_0x15eb5e(0x223)](_0x60d03,_0x7c8a31,_0x4a514b){const _0x14246a=a0_0x15eb5e,_0x203e8c={'uGwyI':_0x14246a(0x1e8)};if(!this[_0x14246a(0x228)])return console['error'](_0x203e8c['uGwyI']),![];try{return this['consumer']['seek']({'topic':_0x60d03,'partition':_0x7c8a31,'offset':_0x4a514b[_0x14246a(0x203)]()}),console['log'](_0x14246a(0x201)+_0x4a514b+'\x20on\x20'+_0x60d03+':'+_0x7c8a31),!![];}catch(_0x31be0a){return console['error']('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x31be0a[_0x14246a(0x1c6)]),![];}}['getStatus'](){const _0x559cba=a0_0x15eb5e,_0x505ae1=this['getConfig']();return{'enabled':_0x505ae1['enabled'],'connected':this[_0x559cba(0x228)],'running':this['isRunning'],'paused':this['isPaused'],'brokers':_0x505ae1['brokers'],'clientId':_0x505ae1[_0x559cba(0x1e7)],'groupId':this[_0x559cba(0x232)],'subscribedTopics':this['subscribedTopics']};}['getMetrics'](){const _0x531850=a0_0x15eb5e,_0x5ac850={'tElel':function(_0x1f6377,_0x3fca78){return _0x1f6377>_0x3fca78;},'nALpk':function(_0x54bb4d,_0x5716c6){return _0x54bb4d/_0x5716c6;},'rMiYC':function(_0x2b0976,_0x182270){return _0x2b0976+_0x182270;},'yfHoN':function(_0x1e1de9,_0x45c5ae){return _0x1e1de9-_0x45c5ae;},'vVzwZ':function(_0x509a79,_0xd45b1d){return _0x509a79+_0xd45b1d;}},_0x7f5412=this['metrics']['processingTimes'][_0x531850(0x23a)]>0x0?this[_0x531850(0x1e2)]['processingTimes']['reduce']((_0xa49c4,_0x49d289)=>_0xa49c4+_0x49d289,0x0)/this[_0x531850(0x1e2)][_0x531850(0x1ed)][_0x531850(0x23a)]:0x0,_0x4346f3=_0x5ac850['tElel'](this['metrics']['processingTimes'][_0x531850(0x23a)],0x0)?Math[_0x531850(0x1f0)](...this['metrics']['processingTimes']):0x0,_0x526757=_0x5ac850['tElel'](this['metrics']['processingTimes'][_0x531850(0x23a)],0x0)?Math['max'](...this[_0x531850(0x1e2)][_0x531850(0x1ed)]):0x0;return{'messagesReceived':this[_0x531850(0x1e2)]['messagesReceived'],'messagesProcessed':this[_0x531850(0x1e2)][_0x531850(0x213)],'messagesFailed':this[_0x531850(0x1e2)]['messagesFailed'],'successRate':this['metrics'][_0x531850(0x21e)]>0x0?(_0x5ac850['nALpk'](this[_0x531850(0x1e2)][_0x531850(0x213)],this['metrics'][_0x531850(0x21e)])*0x64)['toFixed'](0x2)+'%':'0%','lastMessageTime':this[_0x531850(0x1e2)][_0x531850(0x230)],'startTime':this['metrics']['startTime'],'uptime':this[_0x531850(0x1e2)][_0x531850(0x20a)]?_0x5ac850[_0x531850(0x1fc)](Math['floor'](_0x5ac850['yfHoN'](Date['now'](),this[_0x531850(0x1e2)][_0x531850(0x20a)][_0x531850(0x1d3)]())/0x3e8),'s'):'0s','processingTime':{'avg':Math['round'](_0x7f5412)+'ms','min':_0x5ac850[_0x531850(0x1fc)](_0x4346f3,'ms'),'max':_0x5ac850['vVzwZ'](_0x526757,'ms')}};}[a0_0x15eb5e(0x22a)](){const _0x4ec51a=a0_0x15eb5e;this[_0x4ec51a(0x1e2)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this[_0x4ec51a(0x20b)]?new Date():null,'processingTimes':[]},console['log'](_0x4ec51a(0x1ce));}async['close'](){const _0x52ee6a=a0_0x15eb5e;await this[_0x52ee6a(0x1dd)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}function createInstance(){return new KafkaConsumerService();}module[a0_0x15eb5e(0x1e3)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x4ac7(){const _0x106050=['AhvPDNG','BwvZC2fNzq','s0fgs0fFte9hx0XfvKvm','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','s0fgs0fFu0fttf9nruniqu5ju00','s0fgs0fFu0fttf9vu0vstKfnrq','E21VzhvSzx0','ouHLs3bhtG','CMvXDwvZDfrPBwvVDxq','ms4W','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','A2fMA2e','C2vUza','s0fgs0fFuKvuuLLFrevmqvK','BK1ZDva','s0fgs0fFu1nm','Dg9mB3DLCKnHC2u','C291CMnL','uhnZtxu','rvHOtfi','Aw5PDgLHBgL6zq','y29YCI0','ChvIBgLZAerLBgv0zq','yNjVA2vYCW','tgvNywn5ugfYDgL0Aw9Uzxi','CMvWBgfJzq','icHRzxK6ia','DgfIBgvoyw1L','AxnjBML0AwfSAxPPBMC','mJHnquf0sfG','ru5usvrzx1vqrefuruq','zw52','zeLPu0C','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','s0fgs0fFq0Xjru5ux0Le','z2v0q29UzMLN','y29UBMvJDgLVBLbYB21PC2u','z2v0twLUDxrLCW','oty0otCXoxbfChfOwq','zw5KCg9PBNq','mZaWma','zxjYB3i','zxHWB3j0CW','vhfuC3y','revcvuC','Dw5RBM93BG','s0fgs0fFvevoqu5ux0Le','ntm0mJG4m0jQqMzeAW','y29UBMvJDa','z2v0u3rHDhvZ','ChjVzhvJzxi','zM9YBwf0rgf0zvrPBwu','odmYmJeWng1ir0HytG','AfLOvee','mJboAxnYvhu','Bg9JywXOB3n0oJKWoti','zw5HyMXLza','nZuWnZeYoezOv3PtDW','CMvZDgzVCMDLlq','y29YCMvSyxrPB25jza','Dg9WAwm','yNvPBgruB3bPy05HBwu','EhzxB1q','rMfPBgvKihrVignVBM5Ly3qGDg8Gs2fMA2eGyNjVA2vY','nZi1ndq0u3Phtxv4','DxbKyxrLza','z2v0rgf0zq','ChvIBgLZAeLUC2vYDa','s0fgs0fFq09otKvdveLptL9usu1ft1vu','wg9xtxm','z2v0tg9Ntgv2zwW','ru5usvrzx0rftevuruq','s0fgs0fFqLjps0vsuW','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','ChvIBgLZAfvWzgf0zq','C3rYAw5NAwz5','yNvPBgrfDMvUDe1LC3nHz2u','ChvIBgLZAev2zw50','y29UBMvJDgLVBLrPBwvVDxq','Bw9KDwXL','nJu0mZGWnw5WtM9cra','Bg9N','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','v0fstG','y2XPzw50swq','nJKYnJnPzNDxEg0','ugzIDMC','D2TRqxu','ru5usvrzx0nsrufuruq','CgfKu3rHCNq','AxndB25Uzwn0zwq'];a0_0x4ac7=function(){return _0x106050;};return a0_0x4ac7();}function a0_0x5631(_0x5ed9ab,_0x158144){_0x5ed9ab=_0x5ed9ab-0xa8;const _0x4ac775=a0_0x4ac7();let _0x563144=_0x4ac775[_0x5ed9ab];if(a0_0x5631['VSmmsc']===undefined){var _0x2653db=function(_0x1635f3){const _0x4f2081='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c78c3='',_0x2b623b='';for(let _0x1d8c07=0x0,_0x4e8b2e,_0x57860f,_0x157d28=0x0;_0x57860f=_0x1635f3['charAt'](_0x157d28++);~_0x57860f&&(_0x4e8b2e=_0x1d8c07%0x4?_0x4e8b2e*0x40+_0x57860f:_0x57860f,_0x1d8c07++%0x4)?_0x5c78c3+=String['fromCharCode'](0xff&_0x4e8b2e>>(-0x2*_0x1d8c07&0x6)):0x0){_0x57860f=_0x4f2081['indexOf'](_0x57860f);}for(let _0x14486a=0x0,_0x2b63a5=_0x5c78c3['length'];_0x14486a<_0x2b63a5;_0x14486a++){_0x2b623b+='%'+('00'+_0x5c78c3['charCodeAt'](_0x14486a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2b623b);};a0_0x5631['pJlqXT']=_0x2653db,a0_0x5631['TltDAk']={},a0_0x5631['VSmmsc']=!![];}const _0x31d6d8=_0x4ac775[0x0],_0x192ed5=_0x5ed9ab+_0x31d6d8,_0x2574d5=a0_0x5631['TltDAk'][_0x192ed5];return!_0x2574d5?(_0x563144=a0_0x5631['pJlqXT'](_0x563144),a0_0x5631['TltDAk'][_0x192ed5]=_0x563144):_0x563144=_0x2574d5,_0x563144;}const a0_0x226c01=a0_0x5631;(function(_0x5552f3,_0x39cb05){const _0x5dfc1a=a0_0x5631,_0x20b797=_0x5552f3();while(!![]){try{const _0x4fdf92=parseInt(_0x5dfc1a(0x102))/0x1*(-parseInt(_0x5dfc1a(0xca))/0x2)+-parseInt(_0x5dfc1a(0xb4))/0x3*(-parseInt(_0x5dfc1a(0xed))/0x4)+-parseInt(_0x5dfc1a(0xfd))/0x5+-parseInt(_0x5dfc1a(0xe6))/0x6+parseInt(_0x5dfc1a(0xdc))/0x7+parseInt(_0x5dfc1a(0xe1))/0x8+-parseInt(_0x5dfc1a(0xd3))/0x9*(-parseInt(_0x5dfc1a(0xe3))/0xa);if(_0x4fdf92===_0x39cb05)break;else _0x20b797['push'](_0x20b797['shift']());}catch(_0x21c1c0){_0x20b797['push'](_0x20b797['shift']());}}}(a0_0x4ac7,0xeaf3e));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require('uuid');class KafkaService{constructor(){const _0x43cc6d=a0_0x5631;this['kafka']=null,this[_0x43cc6d(0xdf)]=null,this['isConnected']=![],this['isInitializing']=![],this[_0x43cc6d(0xd1)]=null;}[a0_0x226c01(0xd0)](){const _0x5075d5=a0_0x226c01,_0xaecccd={'nMsuP':'true','EXhLR':_0x5075d5(0xe4),'TqTsv':'default'};return{'enabled':process[_0x5075d5(0xcc)]['KAFKA_ENABLED']===_0xaecccd[_0x5075d5(0xbb)],'brokers':(process['env'][_0x5075d5(0xf5)]||_0xaecccd[_0x5075d5(0xc0)])['split'](','),'clientId':process[_0x5075d5(0xcc)][_0x5075d5(0xcf)]||_0x5075d5(0xe7)+(process[_0x5075d5(0xcc)]['RESTFORGE_PROJECT_NAME']||'default')+'-producer','connectionTimeout':parseInt(process[_0x5075d5(0xcc)][_0x5075d5(0xf1)]||_0x5075d5(0xd5)),'requestTimeout':parseInt(process['env']['KAFKA_REQUEST_TIMEOUT']||'25000'),'topicPattern':process['env']['KAFKA_TOPIC_PATTERN']||'{module}.{endpoint}.events','tenantId':process['env'][_0x5075d5(0xdb)]||_0xaecccd[_0x5075d5(0xd8)],'retryAttempts':parseInt(process[_0x5075d5(0xcc)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process[_0x5075d5(0xcc)][_0x5075d5(0xba)]||'1000'),'logLevel':process['env'][_0x5075d5(0xaf)]||'warn'};}['getLogLevel'](_0x3964ab){const _0x5e6ca5=a0_0x226c01,_0x4298d2={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel[_0x5e6ca5(0x100)],'info':logLevel['INFO'],'debug':logLevel[_0x5e6ca5(0xd9)]};return _0x4298d2[_0x3964ab[_0x5e6ca5(0xbd)]()]||logLevel[_0x5e6ca5(0x100)];}async['initialize'](){const _0x4142b0=a0_0x226c01,_0x21536e={'PssMu':_0x4142b0(0xce),'TOFAJ':'producer.disconnect'},_0x15d58e=this[_0x4142b0(0xd0)]();if(!_0x15d58e[_0x4142b0(0xe5)])return console[_0x4142b0(0xfe)]('[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'),![];if(this[_0x4142b0(0xac)])return!![];if(this['isInitializing']&&this['connectionPromise'])return this['connectionPromise'];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x3a9c88=>{const _0x20a8de=_0x4142b0;try{let _0x15eb2d=undefined;process[_0x20a8de(0xcc)][_0x20a8de(0xbc)]==='true'&&(_0x15eb2d=!![]);let _0x367a56=undefined;process[_0x20a8de(0xcc)][_0x20a8de(0xb1)]&&(_0x367a56={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x20a8de(0xb2)]||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x15d58e[_0x20a8de(0x101)],'brokers':_0x15d58e[_0x20a8de(0xc4)],'connectionTimeout':_0x15d58e[_0x20a8de(0xfb)],'requestTimeout':_0x15d58e[_0x20a8de(0xb5)],'logLevel':this[_0x20a8de(0xf3)](_0x15d58e['logLevel']),'ssl':_0x15eb2d,'sasl':_0x367a56,'retry':{'initialRetryTime':_0x15d58e['retryDelay'],'retries':_0x15d58e['retryAttempts']}}),this['producer']=this[_0x20a8de(0xb8)][_0x20a8de(0xdf)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x20a8de(0xc5)]}),await this['producer'][_0x20a8de(0xdd)](),this[_0x20a8de(0xac)]=!![],console[_0x20a8de(0xfe)](_0x20a8de(0xff)+_0x15d58e['brokers']['join'](',\x20')),this[_0x20a8de(0xdf)]['on'](_0x21536e['TOFAJ'],()=>{const _0x4d4c54=_0x20a8de;console[_0x4d4c54(0xfe)](_0x21536e[_0x4d4c54(0xbf)]),this[_0x4d4c54(0xac)]=![];}),_0x3a9c88(!![]);}catch(_0xde74c9){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0xde74c9[_0x20a8de(0xae)]),this['isConnected']=![],_0x3a9c88(![]);}finally{this[_0x20a8de(0xc9)]=![];}}),this[_0x4142b0(0xd1)];}[a0_0x226c01(0xe0)](_0x5621c5){const _0x161e10=a0_0x226c01,_0x4ee4b3={'dIiSG':function(_0x3c06f4,_0x4ff361){return _0x3c06f4(_0x4ff361);},'hYhTA':function(_0x4db120,_0xcce62){return _0x4db120(_0xcce62);},'UxxVF':function(_0x157f73,_0x1770fc){return _0x157f73(_0x1770fc);}},_0x269aad=_0x5621c5||new Date(),_0x226706=_0x269aad['getFullYear'](),_0xa3e99=_0x4ee4b3[_0x161e10(0xcd)](String,_0x269aad['getMonth']()+0x1)[_0x161e10(0xab)](0x2,'0'),_0x56d9ff=_0x4ee4b3[_0x161e10(0xcd)](String,_0x269aad[_0x161e10(0xef)]())['padStart'](0x2,'0'),_0x281b54=_0x4ee4b3[_0x161e10(0xe2)](String,_0x269aad['getHours']())['padStart'](0x2,'0'),_0x3646ba=_0x4ee4b3['UxxVF'](String,_0x269aad[_0x161e10(0xd2)]())['padStart'](0x2,'0'),_0x34be0c=String(_0x269aad['getSeconds']())[_0x161e10(0xab)](0x2,'0');return _0x226706+'-'+_0xa3e99+'-'+_0x56d9ff+'\x20'+_0x281b54+':'+_0x3646ba+':'+_0x34be0c;}['buildTopicName'](_0x3225f5,_0x5495b5,_0x280e78,_0x4b13b1=null){const _0x5a947e=a0_0x226c01;if(_0x4b13b1)return _0x4b13b1;const _0x4c39a9=this['getConfig']()['topicPattern'];return _0x4c39a9['replace'](_0x5a947e(0xb3),_0x3225f5)[_0x5a947e(0xc6)]('{endpoint}',_0x5495b5)[_0x5a947e(0xc6)]('{action}',_0x280e78);}[a0_0x226c01(0xf9)](_0x98a7ea,_0x58cf89,_0x5579a6,_0x289e97={}){const _0x7d33a2=a0_0x226c01,_0x2d0ea9={'huivx':function(_0x537376){return _0x537376();},'khcHl':_0x7d33a2(0xb6),'KwFiZ':'unknown'},_0x1ee5e7=new Date(),_0x31dd47=this[_0x7d33a2(0xe0)](_0x1ee5e7),_0x2b137b=_0x289e97['correlationId']||_0x7d33a2(0xc2)+_0x2d0ea9[_0x7d33a2(0xad)](uuidv7);return{'eventId':'evt-'+uuidv7(),'eventType':_0x98a7ea,'eventTime':_0x31dd47,'eventVersion':_0x2d0ea9['khcHl'],'source':_0x7d33a2(0xe7)+(_0x289e97[_0x7d33a2(0xfc)]||_0x7d33a2(0xda)),'correlationId':_0x2b137b,'newData':_0x5579a6,'oldData':_0x58cf89,'metadata':{'createdBy':_0x289e97['createdBy']||'SYSTEM','createdAt':_0x31dd47,'systemId':'RESTFORGE-'+(_0x289e97[_0x7d33a2(0xfc)]||_0x2d0ea9['KwFiZ'])['toUpperCase'](),'tenantId':this['getConfig']()['tenantId'],'endpoint':_0x289e97[_0x7d33a2(0xd4)]||null,'tableName':_0x289e97['tableName']||null}};}async[a0_0x226c01(0xfa)](_0x4189df,_0x58455b,_0x50d913,_0x345bf7,_0x3974cf={}){const _0x24a7bb=a0_0x226c01,_0x327f53={'XoWMs':_0x24a7bb(0xb0),'Pfbvg':function(_0x594ffc){return _0x594ffc();},'cfUoR':function(_0x67840a,_0x487fc0){return _0x67840a(_0x487fc0);}},_0x15816e=this['getConfig']();if(!_0x15816e['enabled'])return{'success':![],'reason':_0x327f53[_0x24a7bb(0xf2)],'published':![]};if(!this['isConnected']){const _0x404341=await this[_0x24a7bb(0xc1)]();if(!_0x404341)return{'success':![],'reason':_0x24a7bb(0xec),'published':![]};}try{const _0xb67a97=this[_0x24a7bb(0xf9)](_0x58455b,_0x50d913,_0x345bf7,_0x3974cf),_0x15eb86=_0x3974cf['keyField']||'id',_0x3ff6b2=_0x345bf7?.[_0x15eb86]||_0x50d913?.[_0x15eb86]||_0x327f53[_0x24a7bb(0xa8)](uuidv7),_0x38e8c2=await this[_0x24a7bb(0xdf)][_0x24a7bb(0xb9)]({'topic':_0x4189df,'messages':[{'key':_0x327f53['cfUoR'](String,_0x3ff6b2),'value':JSON[_0x24a7bb(0xf8)](_0xb67a97),'headers':{'event-type':_0x58455b,'correlation-id':_0xb67a97['correlationId'],'source':_0xb67a97[_0x24a7bb(0xbe)]}}]});return console[_0x24a7bb(0xfe)]('[Kafka]\x20Event\x20published\x20to\x20'+_0x4189df+':\x20'+_0x58455b+_0x24a7bb(0xc7)+_0x3ff6b2+')'),{'success':!![],'correlationId':_0xb67a97[_0x24a7bb(0xe8)],'topic':_0x4189df,'partition':_0x38e8c2[0x0]?.['partition'],'offset':_0x38e8c2[0x0]?.['baseOffset'],'published':!![]};}catch(_0x1ccd03){return console[_0x24a7bb(0xd6)]('[Kafka]\x20Publish\x20error\x20to\x20'+_0x4189df+':\x20'+_0x1ccd03['message']),{'success':![],'error':_0x1ccd03[_0x24a7bb(0xae)],'published':![]};}}async[a0_0x226c01(0xf0)](_0x5aa035,_0x9d81fd,_0x2c6d7d,_0x20b395={}){const _0x2f3743=a0_0x226c01,_0x7bfdf7={'wkkAu':_0x2f3743(0xaa)},_0x5460e1=this['buildTopicName'](_0x5aa035,_0x9d81fd,'created',_0x20b395['topic']);return this[_0x2f3743(0xfa)](_0x5460e1,_0x7bfdf7[_0x2f3743(0xa9)],null,_0x2c6d7d,{'module':_0x5aa035,'endpoint':_0x9d81fd,'keyField':_0x20b395['keyField'],'tableName':_0x20b395['tableName'],'correlationId':_0x20b395[_0x2f3743(0xe8)]});}async[a0_0x226c01(0xf7)](_0x409c9e,_0x57c539,_0x1e4fd0,_0xa4cc51,_0x57773b={}){const _0x5a1f04=a0_0x226c01,_0x50d339={'xvWoT':_0x5a1f04(0xee)},_0x24f28a=this['buildTopicName'](_0x409c9e,_0x57c539,_0x50d339[_0x5a1f04(0xeb)],_0x57773b[_0x5a1f04(0xe9)]);return this['publishEvent'](_0x24f28a,_0x5a1f04(0xcb),_0x1e4fd0,_0xa4cc51,{'module':_0x409c9e,'endpoint':_0x57c539,'keyField':_0x57773b['keyField'],'tableName':_0x57773b[_0x5a1f04(0xc8)],'correlationId':_0x57773b[_0x5a1f04(0xe8)]});}async[a0_0x226c01(0xc3)](_0x56b51e,_0x5f0b45,_0x25fd26,_0x30bcb8={}){const _0x143f8=a0_0x226c01,_0x22024e=this[_0x143f8(0xea)](_0x56b51e,_0x5f0b45,'deleted',_0x30bcb8[_0x143f8(0xe9)]);return this['publishEvent'](_0x22024e,_0x143f8(0xf4),_0x25fd26,null,{'module':_0x56b51e,'endpoint':_0x5f0b45,'keyField':_0x30bcb8['keyField'],'tableName':_0x30bcb8['tableName'],'correlationId':_0x30bcb8[_0x143f8(0xe8)]});}[a0_0x226c01(0xde)](){const _0x1169b0=a0_0x226c01,_0x16881f=this[_0x1169b0(0xd0)]();return{'enabled':_0x16881f['enabled'],'connected':this['isConnected'],'brokers':_0x16881f[_0x1169b0(0xc4)],'clientId':_0x16881f[_0x1169b0(0x101)],'topicPattern':_0x16881f['topicPattern']};}async['close'](){const _0x4c2f59=a0_0x226c01;if(this[_0x4c2f59(0xdf)]&&this['isConnected'])try{await this[_0x4c2f59(0xdf)]['disconnect'](),this['isConnected']=![],console[_0x4c2f59(0xfe)](_0x4c2f59(0xb7));}catch(_0x102f49){console[_0x4c2f59(0xd6)](_0x4c2f59(0xf6)+_0x102f49['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}module[a0_0x226c01(0xd7)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
1
|
+
function a0_0xfc28(){const _0x310f06=['tgvNywn5ugfYDgL0Aw9Uzxi','zxjYB3i','y2XPzw50swq','C3rYAw5NAwz5','zgvMyxvSDa','BwvZC2fNzq','mZaWma','y29UBMvJDgLVBLrPBwvVDxq','ru9qEgS','nJu1mZq0yuP6ufrM','y29YCMvSyxrPB25jza','tMDIq3C','C2vUza','nLfnAgXurq','DxvPza','A2fMA2fQCW','Dg9WAwnqyxr0zxjU','mJe3nJK1nKP0thLVzq','u1Ltvevn','rML3yMq','s0fgs0fFuKvuuLLFqvruru1qvfm','Bg9N','ote4m0XUD3rVvq','ChvIBgLZAev2zw50','ChvIBgLZAerLBgv0zq','z2v0twLUDxrLCW','sNjoEui','v0fstG','Dg9WAwm','DxbKyxrLza','z2v0q29UzMLN','z2v0tg9Ntgv2zwW','mtCYv01xs1zw','lxbYB2r1y2vY','AM9PBG','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','AxndB25Uzwn0zwq','CgPmD3K','s0fgs0fFqLjps0vsuW','Dw5RBM93BG','yNjVA2vYCW','ru5usvrzx0rftevuruq','zw5KCg9PBNq','AxnjBML0AwfSAxPPBMC','A2fMA2e','mtCXnZmYmhDjvfnWua','mJq1oteWn3PJwujkCG','zgvSzxrLza','CMvZDgzVCMDLlq','rujxufK','ru5usvrzx0nsrufuruq','Exv0D0S','s0fgs0fFu0fttf9qqvntv09sra','yNvPBgrfDMvUDe1LC3nHz2u','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','AurHveC','zw52','s0fgs0fFu0fttf9nruniqu5ju00','su5gtW','yMfZzu9MzNnLDa','mtC2nZa2mhfhv1bfzq','C291CMnL','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','zxz0lq','CgfKu3rHCNq','D2fYBG','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','CMvWBgfJzq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','zw5HyMXLza','zMj6CKK','yNvPBgruB3bPy05HBwu','s0fgs0fFuKvuuLLFrevmqvK','tKrusxe','Bw9KDwXL','s0fgs0fFq09otKvdveLptL9usu1ft1vu','Aw5PDgLHBgL6zq','s0fgs0fFte9hx0XfvKvm','zxHWB3j0CW','mZq1sg5LvxrN','s0fgs0fFvevoqu5ux0Le','E21VzhvSzx0','ody4oenJBu5xAa','s0fgs0fFu0fttf9vu0vstKfnrq','CMvXDwvZDfrPBwvVDxq','rvv2rMq','CMv0CNLezwXHEq','zM9YBwf0rgf0zvrPBwu','ChjVzhvJzxi','y29UBMvJDgLVBLbYB21PC2u','DgfIBgvoyw1L','s0fgs0fFuKvrvuvtvf9usu1ft1vu','t0r5qwW','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm'];a0_0xfc28=function(){return _0x310f06;};return a0_0xfc28();}const a0_0x339be2=a0_0x2d5e;(function(_0x444676,_0x12f551){const _0x157a38=a0_0x2d5e,_0x2cd0a1=_0x444676();while(!![]){try{const _0x1572c6=-parseInt(_0x157a38(0x189))/0x1*(-parseInt(_0x157a38(0x18c))/0x2)+-parseInt(_0x157a38(0x1ae))/0x3*(-parseInt(_0x157a38(0x15a))/0x4)+-parseInt(_0x157a38(0x176))/0x5+-parseInt(_0x157a38(0x1a5))/0x6*(parseInt(_0x157a38(0x168))/0x7)+-parseInt(_0x157a38(0x1a1))/0x8+parseInt(_0x157a38(0x1a9))/0x9+-parseInt(_0x157a38(0x167))/0xa;if(_0x1572c6===_0x12f551)break;else _0x2cd0a1['push'](_0x2cd0a1['shift']());}catch(_0x31b839){_0x2cd0a1['push'](_0x2cd0a1['shift']());}}}(a0_0xfc28,0xdf1a0));const {Kafka,logLevel,Partitioners}=require(a0_0x339be2(0x1a7)),{v7:uuidv7}=require(a0_0x339be2(0x1a6));class KafkaService{constructor(){const _0x2156e5=a0_0x339be2;this[_0x2156e5(0x166)]=null,this[_0x2156e5(0x192)]=null,this[_0x2156e5(0x15e)]=![],this[_0x2156e5(0x165)]=![],this['connectionPromise']=null;}['getConfig'](){const _0x19b49c=a0_0x339be2,_0x60a54b={'EOPxk':'25000','EBWPY':_0x19b49c(0x197),'pKHdp':function(_0x20819b,_0x45fb23){return _0x20819b(_0x45fb23);},'NDTIq':'1000'};return{'enabled':process[_0x19b49c(0x172)]['KAFKA_ENABLED']==='true','brokers':(process['env'][_0x19b49c(0x160)]||'localhost:9092')['split'](','),'clientId':process['env']['KAFKA_CLIENT_ID']||'restforge-'+(process[_0x19b49c(0x172)][_0x19b49c(0x17e)]||_0x19b49c(0x19c))+_0x19b49c(0x15b),'connectionTimeout':parseInt(process[_0x19b49c(0x172)][_0x19b49c(0x185)]||_0x19b49c(0x19e)),'requestTimeout':parseInt(process['env'][_0x19b49c(0x195)]||_0x60a54b[_0x19b49c(0x1a0)]),'topicPattern':process['env']['KAFKA_TOPIC_PATTERN']||_0x60a54b[_0x19b49c(0x16b)],'tenantId':process[_0x19b49c(0x172)][_0x19b49c(0x18a)]||_0x19b49c(0x19c),'retryAttempts':parseInt(process[_0x19b49c(0x172)][_0x19b49c(0x1ac)]||'3'),'retryDelay':_0x60a54b['pKHdp'](parseInt,process['env'][_0x19b49c(0x182)]||_0x60a54b[_0x19b49c(0x183)]),'logLevel':process['env'][_0x19b49c(0x187)]||_0x19b49c(0x17b)};}['getLogLevel'](_0x4cbc98){const _0x12d518=a0_0x339be2,_0x56ce31={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel[_0x12d518(0x174)],'debug':logLevel['DEBUG']};return _0x56ce31[_0x4cbc98['toLowerCase']()]||logLevel[_0x12d518(0x155)];}async[a0_0x339be2(0x186)](){const _0x2a8ac3=a0_0x339be2,_0x5b08fe={'ujjjx':function(_0x49f592,_0x182b1f){return _0x49f592===_0x182b1f;},'CCaiL':'producer.disconnect'},_0x31d0c4=this['getConfig']();if(!_0x31d0c4[_0x2a8ac3(0x17f)])return console[_0x2a8ac3(0x1ad)]('[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'),![];if(this[_0x2a8ac3(0x15e)])return!![];if(this['isInitializing']&&this['connectionPromise'])return this['connectionPromise'];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x58f099=>{const _0x1e2741=_0x2a8ac3;try{let _0x401508=undefined;_0x5b08fe['ujjjx'](process['env']['KAFKA_SSL'],'true')&&(_0x401508=!![]);let _0x208d60=undefined;process[_0x1e2741(0x172)][_0x1e2741(0x173)]&&(_0x208d60={'mechanism':process['env'][_0x1e2741(0x173)],'username':process['env'][_0x1e2741(0x18d)]||'','password':process['env'][_0x1e2741(0x16e)]||''}),this[_0x1e2741(0x166)]=new Kafka({'clientId':_0x31d0c4[_0x1e2741(0x19a)],'brokers':_0x31d0c4[_0x1e2741(0x162)],'connectionTimeout':_0x31d0c4[_0x1e2741(0x19f)],'requestTimeout':_0x31d0c4[_0x1e2741(0x18e)],'logLevel':this[_0x1e2741(0x159)](_0x31d0c4['logLevel']),'ssl':_0x401508,'sasl':_0x208d60,'retry':{'initialRetryTime':_0x31d0c4[_0x1e2741(0x190)],'retries':_0x31d0c4['retryAttempts']}}),this['producer']=this['kafka'][_0x1e2741(0x192)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x1e2741(0x198)]}),await this['producer']['connect'](),this['isConnected']=!![],console['log'](_0x1e2741(0x17c)+_0x31d0c4[_0x1e2741(0x162)][_0x1e2741(0x15c)](',\x20')),this['producer']['on'](_0x5b08fe['CCaiL'],()=>{const _0x33c61d=_0x1e2741;console['log'](_0x33c61d(0x15d)),this[_0x33c61d(0x15e)]=![];}),_0x58f099(!![]);}catch(_0x227df6){console[_0x1e2741(0x199)]('[Kafka]\x20Connection\x20failed:\x20'+_0x227df6[_0x1e2741(0x19d)]),this['isConnected']=![],_0x58f099(![]);}finally{this[_0x1e2741(0x165)]=![];}}),this[_0x2a8ac3(0x193)];}[a0_0x339be2(0x191)](_0x4b9ad0){const _0x4d8d71=a0_0x339be2,_0x5dde02={'NgbCw':function(_0x1655ce,_0xd815cc){return _0x1655ce+_0xd815cc;},'gaHTQ':function(_0x1b4215,_0x108ad4){return _0x1b4215(_0x108ad4);}},_0x2ba6cc=_0x4b9ad0||new Date(),_0x2703fc=_0x2ba6cc['getFullYear'](),_0x1bca03=String(_0x5dde02[_0x4d8d71(0x1a3)](_0x2ba6cc['getMonth'](),0x1))[_0x4d8d71(0x17a)](0x2,'0'),_0x100d9f=_0x5dde02['gaHTQ'](String,_0x2ba6cc['getDate']())[_0x4d8d71(0x17a)](0x2,'0'),_0x5cff20=String(_0x2ba6cc['getHours']())['padStart'](0x2,'0'),_0x3c5eb6=String(_0x2ba6cc[_0x4d8d71(0x153)]())[_0x4d8d71(0x17a)](0x2,'0'),_0x1e8532=String(_0x2ba6cc['getSeconds']())[_0x4d8d71(0x17a)](0x2,'0');return _0x2703fc+'-'+_0x1bca03+'-'+_0x100d9f+'\x20'+_0x5cff20+':'+_0x3c5eb6+':'+_0x1e8532;}[a0_0x339be2(0x181)](_0x28a3fe,_0x12fae9,_0x2a0eed,_0x4db104=null){const _0xdf3613=a0_0x339be2,_0x41730a={'JrNyB':'{endpoint}','pjLwy':'{action}'};if(_0x4db104)return _0x4db104;const _0x2ddeb0=this[_0xdf3613(0x158)]()['topicPattern'];return _0x2ddeb0['replace'](_0xdf3613(0x18b),_0x28a3fe)['replace'](_0x41730a[_0xdf3613(0x154)],_0x12fae9)[_0xdf3613(0x17d)](_0x41730a[_0xdf3613(0x15f)],_0x2a0eed);}[a0_0x339be2(0x16f)](_0x2a147e,_0x4d3bc4,_0x42fae4,_0x5aec3e={}){const _0x34add5=a0_0x339be2,_0x189e14={'AZsiH':function(_0x415831){return _0x415831();},'EUvFd':'1.0','Fiwbd':_0x34add5(0x161),'yutwK':_0x34add5(0x1aa)},_0x4a9b55=new Date(),_0x397534=this[_0x34add5(0x191)](_0x4a9b55),_0x3f68d7=_0x5aec3e['correlationId']||'corr-'+_0x189e14['AZsiH'](uuidv7);return{'eventId':_0x34add5(0x179)+_0x189e14['AZsiH'](uuidv7),'eventType':_0x2a147e,'eventTime':_0x397534,'eventVersion':_0x189e14[_0x34add5(0x18f)],'source':_0x34add5(0x16a)+(_0x5aec3e['module']||_0x189e14['Fiwbd']),'correlationId':_0x3f68d7,'newData':_0x42fae4,'oldData':_0x4d3bc4,'metadata':{'createdBy':_0x5aec3e['createdBy']||_0x189e14[_0x34add5(0x16d)],'createdAt':_0x397534,'systemId':'RESTFORGE-'+(_0x5aec3e[_0x34add5(0x184)]||_0x189e14[_0x34add5(0x1ab)])['toUpperCase'](),'tenantId':this[_0x34add5(0x158)]()['tenantId'],'endpoint':_0x5aec3e[_0x34add5(0x164)]||null,'tableName':_0x5aec3e['tableName']||null}};}async[a0_0x339be2(0x1af)](_0x5d6096,_0x387063,_0x53e7f0,_0x3cea7e,_0x2e919e={}){const _0x4c1809=a0_0x339be2,_0x3270c3={'fbzrI':'Kafka\x20producer\x20is\x20disabled'},_0x170bb3=this[_0x4c1809(0x158)]();if(!_0x170bb3[_0x4c1809(0x17f)])return{'success':![],'reason':_0x3270c3[_0x4c1809(0x180)],'published':![]};if(!this[_0x4c1809(0x15e)]){const _0x1f437a=await this['initialize']();if(!_0x1f437a)return{'success':![],'reason':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','published':![]};}try{const _0x1356fb=this['buildEventMessage'](_0x387063,_0x53e7f0,_0x3cea7e,_0x2e919e),_0x130e13=_0x2e919e['keyField']||'id',_0x508633=_0x3cea7e?.[_0x130e13]||_0x53e7f0?.[_0x130e13]||uuidv7(),_0x249cb2=await this[_0x4c1809(0x192)][_0x4c1809(0x1a4)]({'topic':_0x5d6096,'messages':[{'key':String(_0x508633),'value':JSON[_0x4c1809(0x19b)](_0x1356fb),'headers':{'event-type':_0x387063,'correlation-id':_0x1356fb[_0x4c1809(0x1a2)],'source':_0x1356fb[_0x4c1809(0x177)]}}]});return console[_0x4c1809(0x1ad)]('[Kafka]\x20Event\x20published\x20to\x20'+_0x5d6096+':\x20'+_0x387063+'\x20(key:\x20'+_0x508633+')'),{'success':!![],'correlationId':_0x1356fb['correlationId'],'topic':_0x5d6096,'partition':_0x249cb2[0x0]?.['partition'],'offset':_0x249cb2[0x0]?.[_0x4c1809(0x175)],'published':!![]};}catch(_0x167795){return console[_0x4c1809(0x199)](_0x4c1809(0x178)+_0x5d6096+':\x20'+_0x167795[_0x4c1809(0x19d)]),{'success':![],'error':_0x167795['message'],'published':![]};}}async['publishInsert'](_0x19026b,_0x5b8ba9,_0x130602,_0x169b4e={}){const _0x14b480=a0_0x339be2,_0x31463a={'DXWvY':'created'},_0x1ed193=this['buildTopicName'](_0x19026b,_0x5b8ba9,_0x31463a['DXWvY'],_0x169b4e[_0x14b480(0x156)]);return this[_0x14b480(0x1af)](_0x1ed193,_0x14b480(0x16c),null,_0x130602,{'module':_0x19026b,'endpoint':_0x5b8ba9,'keyField':_0x169b4e['keyField'],'tableName':_0x169b4e[_0x14b480(0x194)],'correlationId':_0x169b4e['correlationId']});}async['publishUpdate'](_0x4c7d0f,_0x176fd8,_0x124f85,_0x2d959a,_0xba970e={}){const _0x5dfe97=a0_0x339be2,_0x432ae2={'iDaTG':_0x5dfe97(0x157),'ODyAl':'ENTITY_UPDATED'},_0x274199=this['buildTopicName'](_0x4c7d0f,_0x176fd8,_0x432ae2[_0x5dfe97(0x171)],_0xba970e['topic']);return this[_0x5dfe97(0x1af)](_0x274199,_0x432ae2[_0x5dfe97(0x196)],_0x124f85,_0x2d959a,{'module':_0x4c7d0f,'endpoint':_0x176fd8,'keyField':_0xba970e['keyField'],'tableName':_0xba970e['tableName'],'correlationId':_0xba970e['correlationId']});}async[a0_0x339be2(0x152)](_0x322c9c,_0x19b12f,_0x4076d8,_0x51dba4={}){const _0x43b48f=a0_0x339be2,_0x490008=this[_0x43b48f(0x181)](_0x322c9c,_0x19b12f,_0x43b48f(0x169),_0x51dba4[_0x43b48f(0x156)]);return this['publishEvent'](_0x490008,_0x43b48f(0x163),_0x4076d8,null,{'module':_0x322c9c,'endpoint':_0x19b12f,'keyField':_0x51dba4['keyField'],'tableName':_0x51dba4['tableName'],'correlationId':_0x51dba4[_0x43b48f(0x1a2)]});}['getStatus'](){const _0x3b5dab=a0_0x339be2,_0x2917ec=this['getConfig']();return{'enabled':_0x2917ec[_0x3b5dab(0x17f)],'connected':this[_0x3b5dab(0x15e)],'brokers':_0x2917ec['brokers'],'clientId':_0x2917ec[_0x3b5dab(0x19a)],'topicPattern':_0x2917ec[_0x3b5dab(0x1a8)]};}async['close'](){const _0x42b465=a0_0x339be2;if(this[_0x42b465(0x192)]&&this['isConnected'])try{await this['producer']['disconnect'](),this['isConnected']=![],console[_0x42b465(0x1ad)](_0x42b465(0x170));}catch(_0x72e671){console['error']('[Kafka]\x20Error\x20disconnecting:\x20'+_0x72e671['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function a0_0x2d5e(_0x15a707,_0x2e3974){_0x15a707=_0x15a707-0x152;const _0xfc28e6=a0_0xfc28();let _0x2d5e50=_0xfc28e6[_0x15a707];if(a0_0x2d5e['PcwZWl']===undefined){var _0x30ad27=function(_0x2bceaa){const _0x19777e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x34bf9f='',_0x283cc9='';for(let _0x2a3bca=0x0,_0xc9cba1,_0x44cc1c,_0x2c928c=0x0;_0x44cc1c=_0x2bceaa['charAt'](_0x2c928c++);~_0x44cc1c&&(_0xc9cba1=_0x2a3bca%0x4?_0xc9cba1*0x40+_0x44cc1c:_0x44cc1c,_0x2a3bca++%0x4)?_0x34bf9f+=String['fromCharCode'](0xff&_0xc9cba1>>(-0x2*_0x2a3bca&0x6)):0x0){_0x44cc1c=_0x19777e['indexOf'](_0x44cc1c);}for(let _0x235eaf=0x0,_0x3dc068=_0x34bf9f['length'];_0x235eaf<_0x3dc068;_0x235eaf++){_0x283cc9+='%'+('00'+_0x34bf9f['charCodeAt'](_0x235eaf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x283cc9);};a0_0x2d5e['rVVHjo']=_0x30ad27,a0_0x2d5e['qWTdJj']={},a0_0x2d5e['PcwZWl']=!![];}const _0x3529eb=_0xfc28e6[0x0],_0x20276f=_0x15a707+_0x3529eb,_0x473a7d=a0_0x2d5e['qWTdJj'][_0x20276f];return!_0x473a7d?(_0x2d5e50=a0_0x2d5e['rVVHjo'](_0x2d5e50),a0_0x2d5e['qWTdJj'][_0x20276f]=_0x2d5e50):_0x2d5e50=_0x473a7d,_0x2d5e50;}function resetInstance(){instance&&(instance['close'](),instance=null);}module[a0_0x339be2(0x188)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x2098(){const _0x2f9943=['y29UzMLN','Dhj1zq','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUigrPC2nVBM5Ly3qOkq','zw52','BwvZC2fNzs1YzwnLAxzLza','DxvPza','CgXHDgzVCM1dB25MAwC','AxnfCNjVCLjLBgf0zwq','v1HStwy','ksbWywrHia','rKTgrvm','y2HHBM5LBa','yNfkDee','mJqXotu4nhLMse9Owa','sLPdtgS','mtyZodGXmfvAyNrJqW','zxjYB3i','Cgf0Aa','D2vIC29JA2v0','zxjYB3jezxrHAwW','rwL5Ewq','mtzOzKD3Dhu','tw9KztOGs29UzwTZAsboEwf0yq','sfjPy0y','tKfmueu','CMvXDwvZDeLK','tgvxsvm','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','CMvJzwL2zxjjBMzV','y29TBxvUAwnHDgLVBLr5Cgu','ChvIBgLZAeTLEq','mta4mtiWthvktKzh','sxHQwg8','vw5RBM93BG','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','vgLKywSGzgLRzxrHAhvP','Bg9N','wvHqs1a','zKTiBfm','tvnivujFq09ntvvosunbveLptL9uwvbf','mtKWmhLlq0HJta','mte3mZK1nuTqBgv0yq','tgfvuNu','y2XLyxjdywnOzq','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','y29UBMvJDgvK','vw5RBM93BIbLCNjVCG','v2fRDhuGsw5PC2LHBgLZyxnPoIa','CevTCLK','z0Hvwgi','zgLZy29UBMvJDa','Bg9JywXOB3n0','4PQG77IpievYCM9YoIa','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','y2f0zwDVCNK','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','BwvZC2fNzs1Zzw50','tvnivujFse9tva','mLboEezbBG','EwLcC1i','rxjYB3iGC2fHDcbTzw51DhvWigTVBMvRC2K6ia','mtHKDLnMu0C','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','mti0ndK1u0Xzrxz3','CgLK','C29JA2v0','CMvZDgzVCMDLlq','BwvZC2fNzq','q1Ltqw0','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','q2HHBM5LBcbuyxjNzxq6ia','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','q29UBMvJDgLVBIb0Aw1LB3v0','y2XVC2u','Eg1lD0C','A0DNr0y','y29UzMLYBwf0Aw9Uq291BNq','r1beywm','zg90zw52','CMvHC29U','mtCYotmXt2fNCfHf','CMvXDwLYzufJAW','tvnivujFu1vcu0nssujfx0Tfwq','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','tvnivujFufvcteLtsf9lrvK','CMvZDgzVCMDL','BMfTzq','s29UzwTZAsb0zxjWDxr1CZOG','mJq4mJCZnhHwtezkCW','igrPDgvYAw1Hig9SzwGG','wejHyuW','zNvUy3rPB24','q2Xcy3a'];a0_0x2098=function(){return _0x2f9943;};return a0_0x2098();}const a0_0x3ca28a=a0_0x1382;(function(_0x2b9f29,_0x82194e){const _0xfee9be=a0_0x1382,_0x1a374d=_0x2b9f29();while(!![]){try{const _0x433f07=parseInt(_0xfee9be(0xc1))/0x1*(-parseInt(_0xfee9be(0xa6))/0x2)+-parseInt(_0xfee9be(0xdf))/0x3+-parseInt(_0xfee9be(0xf1))/0x4+parseInt(_0xfee9be(0xb0))/0x5*(-parseInt(_0xfee9be(0xc4))/0x6)+parseInt(_0xfee9be(0xc6))/0x7*(-parseInt(_0xfee9be(0xf9))/0x8)+-parseInt(_0xfee9be(0xf3))/0x9+parseInt(_0xfee9be(0xaf))/0xa*(parseInt(_0xfee9be(0xd7))/0xb);if(_0x433f07===_0x82194e)break;else _0x1a374d['push'](_0x1a374d['shift']());}catch(_0x5857ff){_0x1a374d['push'](_0x1a374d['shift']());}}}(a0_0x2098,0x8004b));const dotenv=require(a0_0x3ca28a(0xd5)),path=require(a0_0x3ca28a(0xf5)),fs=require('fs'),{v7:uuidv7}=require(a0_0x3ca28a(0xe9));dotenv[a0_0x3ca28a(0xe4)]();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,a0_0x3ca28a(0xa9));if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x3ca28a(0xab)](a0_0x3ca28a(0xb3)+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0xb64d8d){console[a0_0x3ca28a(0xf4)]('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0xb64d8d['message']);throw a0_0xb64d8d;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function a0_0x1382(_0x1e5fb4,_0x4f2b49){_0x1e5fb4=_0x1e5fb4-0xa1;const _0x209844=a0_0x2098();let _0x138221=_0x209844[_0x1e5fb4];if(a0_0x1382['cfaBOQ']===undefined){var _0x100450=function(_0x2ae7ae){const _0xfa5733='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5ac028='',_0x1c5da7='';for(let _0x5653e5=0x0,_0x15f6f4,_0x55a733,_0x760a16=0x0;_0x55a733=_0x2ae7ae['charAt'](_0x760a16++);~_0x55a733&&(_0x15f6f4=_0x5653e5%0x4?_0x15f6f4*0x40+_0x55a733:_0x55a733,_0x5653e5++%0x4)?_0x5ac028+=String['fromCharCode'](0xff&_0x15f6f4>>(-0x2*_0x5653e5&0x6)):0x0){_0x55a733=_0xfa5733['indexOf'](_0x55a733);}for(let _0xbda485=0x0,_0x43a8ea=_0x5ac028['length'];_0xbda485<_0x43a8ea;_0xbda485++){_0x1c5da7+='%'+('00'+_0x5ac028['charCodeAt'](_0xbda485)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1c5da7);};a0_0x1382['XCViRX']=_0x100450,a0_0x1382['HodByG']={},a0_0x1382['cfaBOQ']=!![];}const _0x16f196=_0x209844[0x0],_0x44c0ca=_0x1e5fb4+_0x16f196,_0x5f2b79=a0_0x1382['HodByG'][_0x44c0ca];return!_0x5f2b79?(_0x138221=a0_0x1382['XCViRX'](_0x138221),a0_0x1382['HodByG'][_0x44c0ca]=_0x138221):_0x138221=_0x5f2b79,_0x138221;}function log(_0x1e5655){const _0x38ae2a=new Date()['toISOString']();console['log']('['+_0x38ae2a+']\x20'+_0x1e5655);}async function initMessageHub(){const _0x3c2c4f=a0_0x3ca28a,_0x9f7821={'bqJtA':function(_0x464ba4,_0x3d6d88){return _0x464ba4(_0x3d6d88);},'cuvPL':_0x3c2c4f(0xb4),'FgBwn':function(_0x56c602,_0x5b48ee){return _0x56c602(_0x5b48ee);},'FKFES':function(_0x448eac,_0x59e8a6){return _0x448eac(_0x59e8a6);},'KowDa':function(_0x30d5e4,_0x1a5f31){return _0x30d5e4===_0x1a5f31;},'IxjXo':function(_0x4c4d78,_0x3ed763){return _0x4c4d78===_0x3ed763;},'LaURu':function(_0x4b70a8,_0x68634c){return _0x4b70a8(_0x68634c);},'HRicF':function(_0x73241e,_0x396542){return _0x73241e===_0x396542;},'yiBsR':function(_0xde1d,_0x13bea8){return _0xde1d===_0x13bea8;},'lAMUm':_0x3c2c4f(0xe8),'baryq':'⚠️\x20Timeout:\x20Tidak\x20dapat\x20terhubung\x20ke\x20MessageHub\x20server\x20dalam\x20waktu\x20yang\x20ditentukan','sOxpD':'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======','xIyUF':_0x3c2c4f(0xfa),'LeWIS':function(_0x15f20d,_0x41615a){return _0x15f20d===_0x41615a;},'pEmrY':_0x3c2c4f(0xe5),'Lutct':_0x3c2c4f(0xf6),'GPDac':_0x3c2c4f(0xba),'xmKwG':function(_0x26c871,_0x22a106){return _0x26c871(_0x22a106);},'kREkm':function(_0x136c1f,_0xc27042){return _0x136c1f(_0xc27042);},'Uaixy':function(_0x4c8ce3,_0x474d9e){return _0x4c8ce3(_0x474d9e);},'IVuOB':_0x3c2c4f(0xcc),'lzkuB':function(_0x3f7aa0,_0x3a3ed2,_0x1909a1){return _0x3f7aa0(_0x3a3ed2,_0x1909a1);}};if(messagehub&&isConnected)return log('MessageHub\x20sudah\x20terhubung,\x20menggunakan\x20koneksi\x20yang\x20ada'),!![];if(connectionPromise)return log('Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'),connectionPromise;return connectionPromise=new Promise(async(_0x43b6b2,_0x3f7c70)=>{const _0x4b0393=_0x3c2c4f;try{_0x9f7821[_0x4b0393(0xee)](log,_0x9f7821['sOxpD']),log(_0x4b0393(0xb6)+new Date()['toLocaleString']()),log(_0x9f7821['xIyUF']);const _0x29a45={'publishKey':process['env'][_0x4b0393(0xdb)],'subscribeKey':process['env'][_0x4b0393(0xd9)],'userId':process[_0x4b0393(0xe7)]['MSHUB_USER_ID']||_0x4b0393(0xc9)+(process[_0x4b0393(0xe7)]['RESTFORGE_PROJECT_NAME']||'default')+'-'+process[_0x4b0393(0xc7)],'communicationType':process[_0x4b0393(0xe7)]['MSHUB_COMMUNICATION_TYPE']||'broadcast','autoAcknowledge':_0x9f7821[_0x4b0393(0xa1)](process['env']['MSHUB_AUTO_ACKNOWLEDGE'],_0x9f7821[_0x4b0393(0xb7)]),'acknowledgeMessages':process['env']['MSHUB_ACKNOWLEDGE_MESSAGES']===_0x9f7821['pEmrY'],'platform':{'type':process[_0x4b0393(0xe7)][_0x4b0393(0xae)]||_0x9f7821['Lutct'],'host':process['env'][_0x4b0393(0xc0)]||_0x9f7821[_0x4b0393(0xd4)],'api_port':_0x9f7821[_0x4b0393(0xb1)](parseInt,process[_0x4b0393(0xe7)]['MSHUB_API_PORT']||0xdf8),'service_port':parseInt(process[_0x4b0393(0xe7)]['MSHUB_SERVICE_PORT']||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x29a45),_0x9f7821[_0x4b0393(0xd1)](log,'======\x20INFORMASI\x20CLIENT\x20MESSAGEHUB\x20======'),log('Client\x20ID/UserID:\x20'+messagehub['userId']),log('Publish\x20Key:\x20'+messagehub[_0x4b0393(0xa5)]),_0x9f7821['kREkm'](log,'Subscribe\x20Key:\x20'+messagehub['subscribeKey']),log('Tipe\x20Komunikasi:\x20'+messagehub[_0x4b0393(0xa4)]),_0x9f7821['Uaixy'](log,'Konfigurasi\x20Platform:\x20'+JSON['stringify'](messagehub[_0x4b0393(0xea)])),log(_0x9f7821['IVuOB']),messagehub['addListener']({'status':function(_0x507408){const _0x272bee=_0x4b0393;_0x9f7821[_0x272bee(0xf0)](log,'Status\x20Listener:\x20'+_0x507408['category']);if(_0x507408['category']===_0x9f7821['cuvPL'])log(_0x272bee(0xbc)),isConnected=!![],timeoutHandler&&(_0x9f7821['FgBwn'](clearTimeout,timeoutHandler),timeoutHandler=null),_0x9f7821[_0x272bee(0xee)](_0x43b6b2,!![]);else{if(_0x9f7821['KowDa'](_0x507408[_0x272bee(0xbd)],'disconnected')){const _0x5d79d5=_0x507408[_0x272bee(0xeb)]===!![];!_0x5d79d5&&(log('Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0x507408['reason']||'Tidak\x20diketahui')),isConnected=![],connectionPromise&&(_0x3f7c70(new Error(_0x272bee(0xde)+(_0x507408[_0x272bee(0xd6)]||_0x272bee(0xaa)))),connectionPromise=null));}else{if(_0x9f7821[_0x272bee(0xa7)](_0x507408['category'],'error')){let _0x5c0060=_0x507408[_0x272bee(0xf7)]||_0x507408['error']||_0x272bee(0xb5);_0x9f7821[_0x272bee(0xb1)](log,_0x272bee(0xbb)+_0x5c0060),isConnected=![],connectionPromise&&(_0x3f7c70(new Error(_0x5c0060)),connectionPromise=null);}else{if(_0x9f7821[_0x272bee(0xfb)](_0x507408['category'],_0x272bee(0xbf)))log('📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0x507408[_0x272bee(0xfd)]);else{if(_0x9f7821[_0x272bee(0xc2)](_0x507408[_0x272bee(0xbd)],_0x9f7821['lAMUm'])){const _0x398724=_0x507408['receiverInfo']?.[_0x272bee(0xdd)]||_0x272bee(0xa8),_0x41593e=_0x507408[_0x272bee(0xa3)]?.['id']||_0x507408['receiverId'],_0x3014ca=new Date(_0x507408[_0x272bee(0xa3)]?.['receivedAt']||_0x507408['receivedAt']||new Date())['toLocaleTimeString']();log(_0x272bee(0xbe)+_0x507408['requestId']+_0x272bee(0xe0)+_0x398724+'\x20('+_0x41593e+_0x272bee(0xed)+_0x3014ca+'.\x20Total\x20konfirmasi:\x20'+(_0x507408[_0x272bee(0xd3)]||0x1));}}}}}}}),timeoutHandler=_0x9f7821['lzkuB'](setTimeout,()=>{const _0x2d131b=_0x4b0393;!isConnected&&connectionPromise&&(_0x9f7821['LaURu'](log,_0x9f7821['baryq']),_0x3f7c70(new Error(_0x2d131b(0xcf))),connectionPromise=null);},0x2710);}catch(_0x55a6d9){log('⚠️\x20Error\x20inisialisasi\x20MessageHub:\x20'+_0x55a6d9[_0x4b0393(0xca)]),console['error']('Error\x20inisialisasi\x20MessageHub:',_0x55a6d9),connectionPromise=null,_0x3f7c70(_0x55a6d9);}}),connectionPromise;}async function publishMessage(_0x19be35,_0x59ffde,_0x2f4a88,_0x27fbbc={}){const _0x4723db=a0_0x3ca28a,_0x4af196={'kGgGF':'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======','fKHlS':function(_0x3f89c9,_0x498016){return _0x3f89c9(_0x498016);},'WXlMf':function(_0x2386b6,_0x263f5c){return _0x2386b6(_0x263f5c);},'ClBcp':'================================','Eiyyd':function(_0x4bbf08,_0x1642ac){return _0x4bbf08!==_0x1642ac;},'YXPKP':function(_0xf51c1d,_0x17b269){return _0xf51c1d!==_0x17b269;},'JZCLk':'Mengirim\x20pesan\x20ke\x20server...'};try{!isConnected&&await initMessageHub();const _0x410010=messagehub[_0x4723db(0xef)](_0x19be35);log(_0x4af196[_0x4723db(0xd2)]),log(_0x4723db(0xcd)+_0x410010['topic']),_0x4af196[_0x4723db(0xad)](log,'Message\x20Type:\x20'+_0x59ffde),_0x4af196['WXlMf'](log,_0x4af196[_0x4723db(0xe3)]);const _0x488312={'requireAck':_0x4af196[_0x4723db(0xf8)](_0x27fbbc[_0x4723db(0xd8)],undefined)?_0x27fbbc[_0x4723db(0xd8)]:![],'clearCache':_0x4af196[_0x4723db(0xac)](_0x27fbbc['clearCache'],undefined)?_0x27fbbc[_0x4723db(0xb2)]:!![],'senderId':messagehub['socket']?messagehub[_0x4723db(0xc8)]['id']:_0x4723db(0xdc)};_0x4af196[_0x4723db(0xec)](log,_0x4af196[_0x4723db(0xf2)]);const _0x521250={'type':_0x59ffde,'content':_0x2f4a88},_0x336b76=await _0x410010['publish'](_0x521250,_0x488312);return log(_0x4723db(0xc5)+_0x19be35),{'success':!![],'requestId':_0x336b76['requestId'],'topic':_0x19be35,'message':'Message\x20sent\x20successfully'};}catch(_0x4cec45){return log(_0x4723db(0xda)+_0x4cec45[_0x4723db(0xca)]),{'success':![],'error':_0x4cec45[_0x4723db(0xca)],'topic':_0x19be35,'message':'Failed\x20to\x20send\x20message'};}}async function closeConnection(){const _0x50c26b=a0_0x3ca28a,_0x527dc9={'gHUXb':function(_0x32ec63,_0x141b62){return _0x32ec63&&_0x141b62;},'LaQRg':function(_0x535b17,_0x25bd0b){return _0x535b17===_0x25bd0b;},'XBaaL':function(_0x918892,_0xcbee5f){return _0x918892(_0xcbee5f);},'jTMNJ':_0x50c26b(0xe6),'lCwze':function(_0x300183,_0x53c78a){return _0x300183===_0x53c78a;},'NALPE':_0x50c26b(0xce),'CYSAm':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub'};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(_0x527dc9[_0x50c26b(0xb8)](isConnected,messagehub))try{if(_0x527dc9['LaQRg'](typeof messagehub['disconnect'],_0x50c26b(0xe2)))await messagehub['disconnect'](),_0x527dc9[_0x50c26b(0xe1)](log,_0x527dc9['jTMNJ']);else{if(_0x527dc9['lCwze'](typeof messagehub[_0x50c26b(0xd0)],'function'))await messagehub['close'](),_0x527dc9[_0x50c26b(0xe1)](log,_0x50c26b(0xa2));else messagehub['socket']&&typeof messagehub[_0x50c26b(0xc8)][_0x50c26b(0xb9)]===_0x50c26b(0xe2)?(messagehub[_0x50c26b(0xc8)]['disconnect'](),log(_0x527dc9[_0x50c26b(0xfc)])):log(_0x527dc9[_0x50c26b(0xcb)]);}isConnected=![],connectionPromise=null;}catch(_0x57ccef){_0x527dc9['XBaaL'](log,_0x50c26b(0xc3)+_0x57ccef['message']);}}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|
|
1
|
+
const a0_0x667554=a0_0xcfed;(function(_0x3a9c3d,_0x44e43e){const _0x3aed9e=a0_0xcfed,_0x1d62bd=_0x3a9c3d();while(!![]){try{const _0x20a482=parseInt(_0x3aed9e(0x159))/0x1+parseInt(_0x3aed9e(0x107))/0x2+-parseInt(_0x3aed9e(0x146))/0x3*(-parseInt(_0x3aed9e(0x13a))/0x4)+-parseInt(_0x3aed9e(0x149))/0x5*(parseInt(_0x3aed9e(0x11e))/0x6)+-parseInt(_0x3aed9e(0x10c))/0x7+parseInt(_0x3aed9e(0x13c))/0x8*(-parseInt(_0x3aed9e(0x164))/0x9)+parseInt(_0x3aed9e(0x129))/0xa;if(_0x20a482===_0x44e43e)break;else _0x1d62bd['push'](_0x1d62bd['shift']());}catch(_0x4e1256){_0x1d62bd['push'](_0x1d62bd['shift']());}}}(a0_0x31bb,0x1d3ef));const dotenv=require(a0_0x667554(0x14f)),path=require('path'),fs=require('fs'),{v7:uuidv7}=require('uuid');dotenv[a0_0x667554(0x10e)]();let MessageHub;try{const messagehubPath=path[a0_0x667554(0x134)](__dirname,'../../js/messagehub.js');if(fs[a0_0x667554(0x167)](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x667554(0x12c)](a0_0x667554(0x132)+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x5b1bbf){console['error']('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x5b1bbf[a0_0x667554(0x130)]);throw a0_0x5b1bbf;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x3bf4d7){const _0x4e4a15=new Date()['toISOString']();console['log']('['+_0x4e4a15+']\x20'+_0x3bf4d7);}async function initMessageHub(){const _0x316417=a0_0x667554,_0x1d41c2={'vJQtU':function(_0x203fc8,_0x53a737){return _0x203fc8(_0x53a737);},'xPNwd':function(_0x4a31b3,_0x576f67){return _0x4a31b3(_0x576f67);},'RMsil':function(_0x2e7c7e,_0x5bf4f7){return _0x2e7c7e===_0x5bf4f7;},'uDPAY':function(_0x3f9359,_0x47918d){return _0x3f9359(_0x47918d);},'ZvVdx':_0x316417(0x145),'dacDI':function(_0x2e5730,_0x308525){return _0x2e5730(_0x308525);},'EFEZj':function(_0x295635,_0x155be1){return _0x295635(_0x155be1);},'Fljom':function(_0x3e298f,_0x436d08){return _0x3e298f===_0x436d08;},'mzgTy':function(_0x35a9a2,_0x3050d1){return _0x35a9a2(_0x3050d1);},'eglse':function(_0x1ca1cd,_0x7f092f){return _0x1ca1cd&&_0x7f092f;},'DqFAY':_0x316417(0x11f),'UVOro':function(_0x3aea9e,_0x1e6f8d){return _0x3aea9e(_0x1e6f8d);},'yJkgE':'Mode:\x20Koneksi\x20Nyata','YhaVD':_0x316417(0x15a),'jToYI':_0x316417(0x12d),'bkpuA':function(_0x1797bd,_0x304bc4){return _0x1797bd===_0x304bc4;},'WPNGE':'websocket','rrOGv':function(_0x5c5982,_0x9caef3){return _0x5c5982(_0x9caef3);},'rOOOA':function(_0x373f3a,_0x45f0c0){return _0x373f3a(_0x45f0c0);},'IrmDT':function(_0x1c0ec3,_0x2427ed){return _0x1c0ec3(_0x2427ed);},'mLywe':_0x316417(0x141),'Otflu':function(_0x1d7735,_0x52fb22){return _0x1d7735(_0x52fb22);},'etjLN':_0x316417(0x10b)};if(_0x1d41c2[_0x316417(0x14b)](messagehub,isConnected))return _0x1d41c2['Otflu'](log,'MessageHub\x20sudah\x20terhubung,\x20menggunakan\x20koneksi\x20yang\x20ada'),!![];if(connectionPromise)return log(_0x1d41c2['etjLN']),connectionPromise;return connectionPromise=new Promise(async(_0x4d1bf6,_0x4d85b7)=>{const _0x593707=_0x316417;try{_0x1d41c2['UVOro'](log,_0x593707(0x140)),_0x1d41c2[_0x593707(0x165)](log,'Waktu\x20Inisialisasi:\x20'+new Date()[_0x593707(0x156)]()),log(_0x1d41c2[_0x593707(0x157)]);const _0x3a999d={'publishKey':process['env']['MSHUB_PUBLISH_KEY'],'subscribeKey':process['env']['MSHUB_SUBSCRIBE_KEY'],'userId':process['env'][_0x593707(0x135)]||_0x593707(0x14d)+(process['env'][_0x593707(0x13f)]||_0x1d41c2['YhaVD'])+'-'+process[_0x593707(0x143)],'communicationType':process['env'][_0x593707(0x11b)]||_0x1d41c2[_0x593707(0x13b)],'autoAcknowledge':_0x1d41c2[_0x593707(0x154)](process[_0x593707(0x15e)]['MSHUB_AUTO_ACKNOWLEDGE'],'true'),'acknowledgeMessages':_0x1d41c2[_0x593707(0x154)](process[_0x593707(0x15e)][_0x593707(0x112)],_0x593707(0x10a)),'platform':{'type':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x1d41c2[_0x593707(0x12a)],'host':process['env'][_0x593707(0x103)]||'localhost','api_port':_0x1d41c2['rrOGv'](parseInt,process[_0x593707(0x15e)][_0x593707(0x139)]||0xdf8),'service_port':_0x1d41c2['xPNwd'](parseInt,process['env'][_0x593707(0x153)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x3a999d),_0x1d41c2[_0x593707(0x15f)](log,_0x593707(0x152)),log(_0x593707(0x121)+messagehub['userId']),log(_0x593707(0x127)+messagehub[_0x593707(0x147)]),_0x1d41c2['xPNwd'](log,_0x593707(0x113)+messagehub[_0x593707(0x123)]),_0x1d41c2['rOOOA'](log,'Tipe\x20Komunikasi:\x20'+messagehub[_0x593707(0x136)]),log(_0x593707(0x126)+JSON[_0x593707(0x150)](messagehub['platformConfig'])),log(_0x593707(0x11d)),messagehub['addListener']({'status':function(_0x389a28){const _0x273795=_0x593707;log(_0x273795(0x131)+_0x389a28['category']);if(_0x389a28[_0x273795(0x148)]==='connected')log('Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(_0x1d41c2[_0x273795(0x15f)](clearTimeout,timeoutHandler),timeoutHandler=null),_0x1d41c2['xPNwd'](_0x4d1bf6,!![]);else{if(_0x1d41c2[_0x273795(0x162)](_0x389a28[_0x273795(0x148)],_0x273795(0x13e))){const _0x46fd29=_0x389a28['isErrorRelated']===!![];!_0x46fd29&&(_0x1d41c2[_0x273795(0x115)](log,_0x273795(0x155)+(_0x389a28[_0x273795(0x12f)]||_0x1d41c2[_0x273795(0x108)])),isConnected=![],connectionPromise&&(_0x1d41c2['dacDI'](_0x4d85b7,new Error('Koneksi\x20terputus:\x20'+(_0x389a28['reason']||'Tidak\x20diketahui'))),connectionPromise=null));}else{if(_0x389a28[_0x273795(0x148)]==='error'){let _0x1460a9=_0x389a28[_0x273795(0x125)]||_0x389a28[_0x273795(0x117)]||_0x273795(0x105);_0x1d41c2[_0x273795(0x137)](log,_0x273795(0x120)+_0x1460a9),isConnected=![],connectionPromise&&(_0x4d85b7(new Error(_0x1460a9)),connectionPromise=null);}else{if(_0x1d41c2['Fljom'](_0x389a28['category'],'message-sent'))log(_0x273795(0x11a)+_0x389a28['requestId']);else{if(_0x389a28['category']===_0x273795(0x124)){const _0x1cb59f=_0x389a28['receiverInfo']?.['name']||'Unknown',_0x2cddfa=_0x389a28[_0x273795(0x15c)]?.['id']||_0x389a28[_0x273795(0x119)],_0x3449cb=new Date(_0x389a28[_0x273795(0x15c)]?.['receivedAt']||_0x389a28[_0x273795(0x104)]||new Date())['toLocaleTimeString']();_0x1d41c2['mzgTy'](log,_0x273795(0x144)+_0x389a28['requestId']+'\x20diterima\x20oleh\x20'+_0x1cb59f+'\x20('+_0x2cddfa+_0x273795(0x15d)+_0x3449cb+_0x273795(0x12e)+(_0x389a28[_0x273795(0x10f)]||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x4b5698=_0x593707;_0x1d41c2['eglse'](!isConnected,connectionPromise)&&(_0x1d41c2['mzgTy'](log,'⚠️\x20Timeout:\x20Tidak\x20dapat\x20terhubung\x20ke\x20MessageHub\x20server\x20dalam\x20waktu\x20yang\x20ditentukan'),_0x4d85b7(new Error(_0x1d41c2[_0x4b5698(0x151)])),connectionPromise=null);},0x2710);}catch(_0x24a363){_0x1d41c2[_0x593707(0x114)](log,_0x593707(0x14c)+_0x24a363['message']),console[_0x593707(0x117)](_0x1d41c2[_0x593707(0x10d)],_0x24a363),connectionPromise=null,_0x4d85b7(_0x24a363);}}),connectionPromise;}function a0_0xcfed(_0x1ccf95,_0x1aa392){_0x1ccf95=_0x1ccf95-0x103;const _0x31bbb3=a0_0x31bb();let _0xcfed8c=_0x31bbb3[_0x1ccf95];if(a0_0xcfed['FkSGQV']===undefined){var _0x3fbefa=function(_0x3f6f09){const _0x3b61b6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x555f4e='',_0x57bc28='';for(let _0x24241a=0x0,_0x1f11b0,_0x3160c4,_0x4478bd=0x0;_0x3160c4=_0x3f6f09['charAt'](_0x4478bd++);~_0x3160c4&&(_0x1f11b0=_0x24241a%0x4?_0x1f11b0*0x40+_0x3160c4:_0x3160c4,_0x24241a++%0x4)?_0x555f4e+=String['fromCharCode'](0xff&_0x1f11b0>>(-0x2*_0x24241a&0x6)):0x0){_0x3160c4=_0x3b61b6['indexOf'](_0x3160c4);}for(let _0x23ecd6=0x0,_0x2d1460=_0x555f4e['length'];_0x23ecd6<_0x2d1460;_0x23ecd6++){_0x57bc28+='%'+('00'+_0x555f4e['charCodeAt'](_0x23ecd6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x57bc28);};a0_0xcfed['FbXbSE']=_0x3fbefa,a0_0xcfed['khCDCh']={},a0_0xcfed['FkSGQV']=!![];}const _0x53b755=_0x31bbb3[0x0],_0x5836c9=_0x1ccf95+_0x53b755,_0x4aeb35=a0_0xcfed['khCDCh'][_0x5836c9];return!_0x4aeb35?(_0xcfed8c=a0_0xcfed['FbXbSE'](_0xcfed8c),a0_0xcfed['khCDCh'][_0x5836c9]=_0xcfed8c):_0xcfed8c=_0x4aeb35,_0xcfed8c;}function a0_0x31bb(){const _0x27113b=['yMTWDue','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','Dg9mB2nHBgvtDhjPBMC','EuPRz0u','q2HHBM5LBcbuyxjNzxq6ia','mtu2mtq4vMz4s29I','zgvMyxvSDa','ywXerxi','CMvJzwL2zxjjBMzV','ksbWywrHia','zw52','DKPrDfu','y2XLyxjdywnOzq','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','uK1ZAwW','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','nJy5ntGYtfP1qvvu','EfboD2q','C29JA2v0','zxHPC3rZu3LUyW','tvnivujFse9tva','CMvJzwL2zwrbDa','vw5RBM93BIbLCNjVCG','zfPiCvi','mtm3ode2renXv2rm','wNzwzhG','t25SrMy','Dhj1zq','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','ota1mZe3uhbkz1H5','BuX5D2u','y29UzMLN','y29UzMLYBwf0Aw9Uq291BNq','CMvXDwLYzufJAW','u2DZvwe','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','u3vIC2nYAwjLieTLEtOG','sxjTrfq','DurqqvK','t21ny24','zxjYB3i','yKDtswK','CMvJzwL2zxjjza','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','tvnivujFq09ntvvosunbveLptL9uwvbf','zgLZy29UBMvJDa','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','mZeYDwnzAvzW','q29UBMvJDgLVBIb0Aw1LB3v0','4PQG77IpievYCM9YoIa','q2XPzw50ieLel1vZzxjjrdOG','Dg9WAwm','C3vIC2nYAwjLs2v5','BwvZC2fNzs1YzwnLAxzLza','zxjYB3jezxrHAwW','s29UzMLNDxjHC2KGugXHDgzVCM06ia','uhvIBgLZAcblzxK6ia','vgLKywSGzgfWyxqGBwvUzw11A2fUig1LDg9Kzsb1BNr1AYbTzw51DhvWigTVBMvRC2KGtwvZC2fNzuH1yG','otKZmJiWy1bLzuj2','v1bor0u','pt09pt09ierbveeGufvcteLtscbnrvntquDfid09pt09pq','Bg9N','yNjVywrJyxn0','lIbuB3rHBcbRB25MAxjTyxnPoIa','CMvHC29U','BwvZC2fNzq','u3rHDhvZieXPC3rLBMvYoIa','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','CMvZB2X2zq','tvnivujFvvnfuL9jra','y29TBxvUAwnHDgLVBLr5Cgu','ruzfwMO','AfPet0K','tvnivujFqvbjx1bpuLq','ohH4qur0uW','ALrVwuK','mJrOAxHzr3e','txfIqKm','zgLZy29UBMvJDgvK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','pt09pt09ie1vtefjieLosvnjquXju0ftssbnrvntquDfsfvcid09pt09pq','rxjYB3iGAw5PC2LHBgLZyxnPie1LC3nHz2viDwi6','uwruBLK','CgLK','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','vgLKywSGzgLRzxrHAhvP','mJqWntq5A0XlA0PV','ChvIBgLZAeTLEq','y2f0zwDVCNK','mte5nu92quTOEa','uwvrAei','zwDSC2u','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','CMvZDgzVCMDLlq','twvZC2fNzsbuExbLoIa','zg90zw52','C3rYAw5NAwz5','rhfgqvK','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','tvnivujFu0vsvKLdrv9qt1ju'];a0_0x31bb=function(){return _0x27113b;};return a0_0x31bb();}async function publishMessage(_0x155f6b,_0x2a9c6a,_0x5e74c5,_0x2a6320={}){const _0x5b8855=a0_0x667554,_0x3b5e8b={'MqbBC':function(_0x64828e){return _0x64828e();},'QdTnY':function(_0x2ad008,_0x4e105a){return _0x2ad008(_0x4e105a);},'QeQhB':function(_0x22e7a8,_0x510605){return _0x22e7a8(_0x510605);},'alDEr':function(_0x5b85d8,_0x254189){return _0x5b85d8!==_0x254189;},'NLXQl':'Mengirim\x20pesan\x20ke\x20server...','OnlFf':function(_0x59977c,_0x200aa1){return _0x59977c(_0x200aa1);},'SgsUa':_0x5b8855(0x163)};try{!isConnected&&await _0x3b5e8b[_0x5b8855(0x13d)](initMessageHub);const _0x52ec79=messagehub['channel'](_0x155f6b);log(_0x5b8855(0x12b)),_0x3b5e8b[_0x5b8855(0x142)](log,_0x5b8855(0x158)+_0x52ec79[_0x5b8855(0x122)]),_0x3b5e8b[_0x5b8855(0x14a)](log,_0x5b8855(0x14e)+_0x2a9c6a),log('================================');const _0x1fd2b7={'requireAck':_0x3b5e8b['alDEr'](_0x2a6320[_0x5b8855(0x110)],undefined)?_0x2a6320['requireAck']:![],'clearCache':_0x3b5e8b[_0x5b8855(0x15b)](_0x2a6320[_0x5b8855(0x160)],undefined)?_0x2a6320['clearCache']:!![],'senderId':messagehub['socket']?messagehub[_0x5b8855(0x166)]['id']:'restforge'};log(_0x3b5e8b['NLXQl']);const _0x3b64d3={'type':_0x2a9c6a,'content':_0x5e74c5},_0x12694d=await _0x52ec79['publish'](_0x3b64d3,_0x1fd2b7);return _0x3b5e8b[_0x5b8855(0x109)](log,'Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x155f6b),{'success':!![],'requestId':_0x12694d['requestId'],'topic':_0x155f6b,'message':_0x3b5e8b[_0x5b8855(0x111)]};}catch(_0x451ea0){return _0x3b5e8b['QeQhB'](log,'⚠️\x20Error\x20publishing\x20message:\x20'+_0x451ea0[_0x5b8855(0x130)]),{'success':![],'error':_0x451ea0['message'],'topic':_0x155f6b,'message':_0x5b8855(0x133)};}}async function closeConnection(){const _0x497afe=a0_0x667554,_0x4a9171={'dZHqR':function(_0xed9467,_0x2e5072){return _0xed9467&&_0x2e5072;},'VpQwn':'function','OmMcn':function(_0x45794e,_0x4bdb45){return _0x45794e(_0x4bdb45);},'hZDOI':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()','pqIXF':function(_0x42f9b2,_0x286011){return _0x42f9b2===_0x286011;},'bGSIi':function(_0x2715d1,_0x474489){return _0x2715d1(_0x474489);}};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(_0x4a9171[_0x497afe(0x106)](isConnected,messagehub))try{if(typeof messagehub[_0x497afe(0x11c)]===_0x4a9171['VpQwn'])await messagehub['disconnect'](),_0x4a9171[_0x497afe(0x116)](log,_0x4a9171[_0x497afe(0x138)]);else{if(_0x4a9171['pqIXF'](typeof messagehub['close'],_0x4a9171['VpQwn']))await messagehub['close'](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()');else messagehub['socket']&&_0x4a9171['pqIXF'](typeof messagehub['socket'][_0x497afe(0x11c)],'function')?(messagehub[_0x497afe(0x166)][_0x497afe(0x11c)](),_0x4a9171[_0x497afe(0x118)](log,_0x497afe(0x161))):log(_0x497afe(0x128));}isConnected=![],connectionPromise=null;}catch(_0x4cd855){log('Error\x20saat\x20menutup\x20koneksi:\x20'+_0x4cd855['message']);}}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|