@restforgejs/platform 5.2.11 → 5.2.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/generators/cli/fast-track.js +147 -27
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/soft-delete-dashboard-guard.js +1 -1
- package/src/utils/sql-table-extractor.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const
|
|
1
|
+
'use strict';const a0_0x3ff36a=a0_0x13ad;(function(_0xa3ada1,_0x24f31d){const _0x53483=a0_0x13ad,_0x543b8c=_0xa3ada1();while(!![]){try{const _0xdb2cef=-parseInt(_0x53483(0x1a8))/0x1+-parseInt(_0x53483(0x1bc))/0x2*(parseInt(_0x53483(0x1d4))/0x3)+-parseInt(_0x53483(0x1c4))/0x4+parseInt(_0x53483(0x1af))/0x5*(-parseInt(_0x53483(0x1d1))/0x6)+parseInt(_0x53483(0x1cc))/0x7*(-parseInt(_0x53483(0x1c6))/0x8)+parseInt(_0x53483(0x1c9))/0x9*(parseInt(_0x53483(0x1a4))/0xa)+parseInt(_0x53483(0x1bf))/0xb;if(_0xdb2cef===_0x24f31d)break;else _0x543b8c['push'](_0x543b8c['shift']());}catch(_0x309656){_0x543b8c['push'](_0x543b8c['shift']());}}}(a0_0x4dc6,0x3b18e));function a0_0x4dc6(){const _0x1e9ef0=['BwvZC2fNzq','DxbSB2fKlq','mtyWotCWogfTuKzdzW','zxHPC3rZu3LUyW','mtC3mJm3nKHdAgfLzG','DgvTCerPCG','zgvMyxvSDa','nZCZmwfUshnxBa','DxbSB2fKzwrcEq','mtbnqG','n1bOsgTisa','zw5KCg9PBNq','Dw5SAw5R','x2rLBgv0zvrLBxbgAwXL','Dg9vChbLCKnHC2u','mta1ndaYweDPC3He','zw52','u1LuBxu','ntC5rKnfwwn0','ChvZAa','vvbmt0fex1rftvbFreLs','twreDum','vvrPvxO','mtKWmfzStvLdta','ChjVBwLZzxm','zfnnrLu','ChjVAMvJDa','ndm2ntK3AgzvBxfW','Bwf4rMLSzvnPEMu','s3Dbrxi','zwL4uNq','BwLTzxr5Cgu','Cgf0Aa','yMfZzw5HBwu','nvL3uLvivq','Bw9KDwXL','C2L6zq','BwTKAxjtEw5J','x3rLBxbeAxi','zMLSzxm','ChjVy2vZC1vWBg9HzgvKrMLSzxm','zxjYB3i','B3jPz2LUywXUyw1L','BNvTyMvY','zxH0BMfTzq','y3jLyxrLuMvHzfn0CMvHBq','z2vUzxjHDgvlzxK','nJq4tK1ZBgHQ','ywXSB3DLzfr5CgvZ','yxbHu0G','mtm0mtq3ndjfC3PSAgS','suDArKu','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG'];a0_0x4dc6=function(){return _0x1e9ef0;};return a0_0x4dc6();}const multer=require('multer'),path=require(a0_0x3ff36a(0x1ad)),crypto=require('crypto'),fs=require('fs')[a0_0x3ff36a(0x1a5)],fsSync=require('fs'),{logger}=require('./logger');function a0_0x13ad(_0x4577d8,_0x5323ed){_0x4577d8=_0x4577d8-0x1a2;const _0x4dc6a4=a0_0x4dc6();let _0x13ad08=_0x4dc6a4[_0x4577d8];if(a0_0x13ad['yAcfRu']===undefined){var _0x4c56dc=function(_0x24d9e9){const _0x33089c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f370a='',_0x269b10='';for(let _0x1d3400=0x0,_0x10207e,_0xd5edd3,_0x391cc7=0x0;_0xd5edd3=_0x24d9e9['charAt'](_0x391cc7++);~_0xd5edd3&&(_0x10207e=_0x1d3400%0x4?_0x10207e*0x40+_0xd5edd3:_0xd5edd3,_0x1d3400++%0x4)?_0x2f370a+=String['fromCharCode'](0xff&_0x10207e>>(-0x2*_0x1d3400&0x6)):0x0){_0xd5edd3=_0x33089c['indexOf'](_0xd5edd3);}for(let _0x264de3=0x0,_0x9b12a=_0x2f370a['length'];_0x264de3<_0x9b12a;_0x264de3++){_0x269b10+='%'+('00'+_0x2f370a['charCodeAt'](_0x264de3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x269b10);};a0_0x13ad['zThdzM']=_0x4c56dc,a0_0x13ad['WOdJlH']={},a0_0x13ad['yAcfRu']=!![];}const _0x17d359=_0x4dc6a4[0x0],_0x4f72d6=_0x4577d8+_0x17d359,_0x2bbfb7=a0_0x13ad['WOdJlH'][_0x4f72d6];return!_0x2bbfb7?(_0x13ad08=a0_0x13ad['zThdzM'](_0x13ad08),a0_0x13ad['WOdJlH'][_0x4f72d6]=_0x13ad08):_0x13ad08=_0x2bbfb7,_0x13ad08;}class UploadHandlerV2{constructor(){const _0x5da55a=a0_0x3ff36a;this[_0x5da55a(0x1b3)]=null;}get[a0_0x3ff36a(0x1c7)](){const _0x3e0670=a0_0x3ff36a,_0x28c0d5={'eixRt':'uploads'};if(!this['_tempDir']){const _0x23fdf7=process[_0x3e0670(0x1d2)]['RESTFORGE_PROJECT_NAME']||_0x3e0670(0x1c8);this[_0x3e0670(0x1b3)]=process[_0x3e0670(0x1d2)][_0x3e0670(0x1d6)]||path['join'](process['cwd'](),'temp',_0x28c0d5[_0x3e0670(0x1ab)],_0x23fdf7),!fsSync['existsSync'](this['_tempDir'])&&fsSync[_0x3e0670(0x1b2)](this['_tempDir'],{'recursive':!![]});}return this['_tempDir'];}['createUploadMiddleware'](_0x506738={}){const _0x1e5333=a0_0x3ff36a,_0x296b41={'SYTmu':function(_0x102551,_0x3662e9,_0x3ec9fa){return _0x102551(_0x3662e9,_0x3ec9fa);},'MdDuC':'hex','UTiUz':function(_0x28cd4d,_0x3e69f3){return _0x28cd4d===_0x3e69f3;},'apaSH':function(_0x175d27,_0x44b643,_0x2fc4bf){return _0x175d27(_0x44b643,_0x2fc4bf);}},_0x2861e6=_0x506738['maxFiles']||0x5,_0x3028d0=this['_parseFileSize'](_0x506738[_0x1e5333(0x1a9)]||_0x1e5333(0x1cb)),_0xdc0d3a=_0x506738[_0x1e5333(0x1bd)]||[],_0x3db1ed=multer['diskStorage']({'destination':(_0x53513a,_0x3cc8cb,_0x2db81a)=>{const _0x465db9=_0x1e5333;!fsSync[_0x465db9(0x1c5)](this[_0x465db9(0x1c7)])&&fsSync['mkdirSync'](this[_0x465db9(0x1c7)],{'recursive':!![]}),_0x296b41[_0x465db9(0x1d3)](_0x2db81a,null,this[_0x465db9(0x1c7)]);},'filename':(_0x55f420,_0xccd45d,_0x34cc1b)=>{const _0x89c515=_0x1e5333,_0x24a6c2=crypto['randomBytes'](0x8)['toString'](_0x296b41[_0x89c515(0x1a2)]),_0x40ea2d=Date['now'](),_0x488407=path['extname'](_0xccd45d['originalname']);_0x34cc1b(null,_0x89c515(0x1c3)+_0x40ea2d+'-'+_0x24a6c2+_0x488407);}}),_0x35eb21=(_0x259699,_0x605119,_0x19beba)=>{const _0x2a15a5=_0x1e5333;if(_0x296b41[_0x2a15a5(0x1a3)](_0xdc0d3a['length'],0x0))return _0x296b41[_0x2a15a5(0x1be)](_0x19beba,null,!![]);const _0x2ba029=path[_0x2a15a5(0x1b9)](_0x605119[_0x2a15a5(0x1b7)])['toLowerCase']()['replace']('.','');_0xdc0d3a['includes'](_0x2ba029)?_0x296b41['SYTmu'](_0x19beba,null,!![]):_0x19beba(new Error('File\x20type\x20\x22.'+_0x2ba029+_0x2a15a5(0x1c1)+_0xdc0d3a['join'](',\x20')));};return multer({'storage':_0x3db1ed,'limits':{'fileSize':_0x3028d0,'files':_0x2861e6},'fileFilter':_0x35eb21})['array'](_0x1e5333(0x1b4),_0x2861e6);}async[a0_0x3ff36a(0x1b5)](_0xeb5f61,_0x2df3c5,_0x381617={}){const _0x48fc7f=a0_0x3ff36a,_0x303568={'IGZFE':function(_0x5d4110,_0x42fce5){return _0x5d4110(_0x42fce5);},'KwAEr':'upload_v2_process_error'},{createFileMetadata:_0x4263df}=require('../storage/file-metadata-helper'),_0x1e0c96=[];for(const _0x405c52 of _0xeb5f61){try{const _0x1b148b=_0x2df3c5[_0x48fc7f(0x1bb)](_0x405c52[_0x48fc7f(0x1b7)],{'prefix':_0x381617['prefix']||'','project':_0x381617[_0x48fc7f(0x1a7)]||'','module':_0x381617[_0x48fc7f(0x1b0)]||'','endpoint':_0x381617[_0x48fc7f(0x1cd)]||''}),_0x584fb8=fsSync[_0x48fc7f(0x1ba)](_0x405c52[_0x48fc7f(0x1ad)]),_0x4ac30f=await _0x2df3c5['upload'](_0x584fb8,_0x1b148b,{'contentType':_0x405c52[_0x48fc7f(0x1ac)],'fileSize':_0x405c52[_0x48fc7f(0x1b1)]}),_0x26aa9a=_0x303568[_0x48fc7f(0x1c0)](_0x4263df,{'key':_0x4ac30f['key'],'originalName':_0x405c52[_0x48fc7f(0x1b7)],'fileName':path[_0x48fc7f(0x1ae)](_0x1b148b),'contentType':_0x405c52['mimetype'],'size':_0x405c52[_0x48fc7f(0x1b1)],'url':_0x4ac30f['url'],'provider':_0x2df3c5['providerName'],'bucket':_0x2df3c5['bucket']||null,'uploadedBy':_0x381617[_0x48fc7f(0x1ca)]||null});_0x1e0c96[_0x48fc7f(0x1d5)](_0x26aa9a);}catch(_0x196f25){logger[_0x48fc7f(0x1b6)]({'event':_0x303568[_0x48fc7f(0x1aa)],'file':_0x405c52[_0x48fc7f(0x1b7)],'error':_0x196f25[_0x48fc7f(0x1c2)]},'Failed\x20to\x20process\x20uploaded\x20file:\x20'+_0x405c52['originalname']);throw _0x196f25;}finally{await this['_deleteTempFile'](_0x405c52['path']);}}return _0x1e0c96;}async[a0_0x3ff36a(0x1cf)](_0x380300){const _0xc0a9e2=a0_0x3ff36a,_0x44fcfa={'dSMFU':'upload_v2_temp_delete_warn'};try{await fs[_0xc0a9e2(0x1ce)](_0x380300);}catch(_0x1fbb11){logger['warn']({'event':_0x44fcfa[_0xc0a9e2(0x1a6)],'filePath':_0x380300,'error':_0x1fbb11['message']},'Failed\x20to\x20delete\x20temp\x20file');}}['_parseFileSize'](_0x480374){const _0x7a6686=a0_0x3ff36a,_0x252bc9={'bIBRQ':function(_0x2594c6,_0x3c6f26){return _0x2594c6*_0x3c6f26;},'rJown':function(_0x116a27,_0x290943){return _0x116a27(_0x290943);},'LhiGH':function(_0x48b7fd,_0x3ff21c){return _0x48b7fd*_0x3ff21c;}};if(typeof _0x480374===_0x7a6686(0x1b8))return _0x480374;const _0x340ea7=String(_0x480374)['trim']()['match'](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x340ea7)return _0x252bc9['bIBRQ'](0xa*0x400,0x400);const _0x3761ec=_0x252bc9['rJown'](parseFloat,_0x340ea7[0x1]),_0x2e67b4=_0x340ea7[0x2][_0x7a6686(0x1d0)](),_0x30dc66={'B':0x1,'KB':0x400,'MB':_0x252bc9['LhiGH'](0x400,0x400),'GB':0x400*0x400*0x400};return Math['floor'](_0x3761ec*(_0x30dc66[_0x2e67b4]||0x1));}}module['exports']=new UploadHandlerV2();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a0_0x37b9b0=a0_0x3f72;(function(_0x46a6d0,_0x429152){const _0x2ce348=a0_0x3f72,_0x288d56=_0x46a6d0();while(!![]){try{const _0x53d1cd=parseInt(_0x2ce348(0x141))/0x1+parseInt(_0x2ce348(0x155))/0x2+parseInt(_0x2ce348(0x15a))/0x3+-parseInt(_0x2ce348(0x13d))/0x4*(parseInt(_0x2ce348(0x13a))/0x5)+-parseInt(_0x2ce348(0x135))/0x6*(parseInt(_0x2ce348(0x143))/0x7)+parseInt(_0x2ce348(0x154))/0x8+-parseInt(_0x2ce348(0x133))/0x9;if(_0x53d1cd===_0x429152)break;else _0x288d56['push'](_0x288d56['shift']());}catch(_0x5b84b9){_0x288d56['push'](_0x288d56['shift']());}}}(a0_0x5e98,0xd78d7));const multer=require('multer'),path=require('path'),crypto=require(a0_0x37b9b0(0x13f)),fs=require('fs')[a0_0x37b9b0(0x12d)],fsSync=require('fs'),{logger}=require('./logger');class UploadHandler{constructor(){const _0x23b9c2=a0_0x37b9b0,_0x223e96={'JpLUB':function(_0x25fb45,_0x24c566){return _0x25fb45*_0x24c566;}};this['_uploadDir']=null,this[_0x23b9c2(0x139)]=_0x223e96[_0x23b9c2(0x12f)](0xa,0x400)*0x400;}get[a0_0x37b9b0(0x147)](){const _0x3a7e27=a0_0x37b9b0,_0x110600={'zGevD':'default','ztgvr':_0x3a7e27(0x134),'VklLu':'Failed\x20to\x20initialize\x20upload\x20handler'};if(!this['_uploadDir']){const _0x3612b8=process['env'][_0x3a7e27(0x132)]||_0x110600['zGevD'];this[_0x3a7e27(0x14b)]=process[_0x3a7e27(0x159)][_0x3a7e27(0x13e)]||path['join'](__dirname,'../../temp/uploads/'+_0x3612b8);try{!fsSync['existsSync'](this[_0x3a7e27(0x14b)])&&fsSync['mkdirSync'](this['_uploadDir'],{'recursive':!![]}),logger[_0x3a7e27(0x136)]({'event':_0x110600[_0x3a7e27(0x14f)],'dir':this[_0x3a7e27(0x14b)]},'Upload\x20handler\x20initialized');}catch(_0x5c75fb){logger[_0x3a7e27(0x14a)]({'event':'upload_handler_init_error','error':_0x5c75fb['message']},_0x110600[_0x3a7e27(0x142)]);}}return this['_uploadDir'];}[a0_0x37b9b0(0x156)](){const _0x58d0b5=a0_0x37b9b0,_0x27c664={'uhhIk':function(_0x27a957,_0x16a29c,_0x48afa2){return _0x27a957(_0x16a29c,_0x48afa2);},'Kvjrn':_0x58d0b5(0x149)};return multer['diskStorage']({'destination':(_0x526c62,_0x116b48,_0x57453f)=>{const _0x32a238=_0x58d0b5;!fsSync['existsSync'](this[_0x32a238(0x147)])&&fsSync[_0x32a238(0x140)](this['uploadDir'],{'recursive':!![]}),_0x27c664['uhhIk'](_0x57453f,null,this[_0x32a238(0x147)]);},'filename':(_0x58f7e0,_0x1e8f07,_0x178782)=>{const _0x433fe8=_0x58d0b5,_0x4ca86c=crypto[_0x433fe8(0x158)](0x8)[_0x433fe8(0x14c)](_0x27c664['Kvjrn']),_0x1b91c7=Date[_0x433fe8(0x153)](),_0x9b4331=path[_0x433fe8(0x148)](_0x1e8f07[_0x433fe8(0x130)]);_0x27c664[_0x433fe8(0x13c)](_0x178782,null,_0x433fe8(0x150)+_0x1b91c7+'-'+_0x4ca86c+_0x9b4331);}});}[a0_0x37b9b0(0x14d)](){const _0x243f2b=a0_0x37b9b0,_0x5b65f3={'MawHn':'application/vnd.ms-excel','IAWes':'.xlsx','MhOXz':function(_0x4caea4,_0x1027cd){return _0x4caea4(_0x1027cd);},'jtiGF':_0x243f2b(0x144)};return multer({'storage':this['getStorage'](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x3802c7,_0x1068ac,_0x5b80cb)=>{const _0x793f91=_0x243f2b,_0x16a3bb=['application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',_0x5b65f3['MawHn']],_0x54a363=[_0x5b65f3[_0x793f91(0x131)],_0x793f91(0x151)],_0x2ccb4e=path['extname'](_0x1068ac['originalname'])['toLowerCase']();_0x16a3bb[_0x793f91(0x157)](_0x1068ac['mimetype'])&&_0x54a363[_0x793f91(0x157)](_0x2ccb4e)?_0x5b80cb(null,!![]):_0x5b65f3[_0x793f91(0x137)](_0x5b80cb,new Error('Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed'));}})['single'](_0x5b65f3[_0x243f2b(0x145)]);}async['deleteFile'](_0x100412){const _0x46398a=a0_0x37b9b0;try{await fs[_0x46398a(0x138)](_0x100412),logger['info']({'event':_0x46398a(0x12e),'filePath':_0x100412},_0x46398a(0x152));}catch(_0x1506d9){logger['error']({'event':_0x46398a(0x14e),'filePath':_0x100412,'error':_0x1506d9[_0x46398a(0x146)]},_0x46398a(0x13b));}}}function a0_0x5e98(){const _0x1f4b4d=['mtK1ndKXmuP1CePZqW','zMLSzq','ANrPr0y','BwvZC2fNzq','DxbSB2fKrgLY','zxH0BMfTzq','Agv4','zxjYB3i','x3vWBg9HzerPCG','Dg9tDhjPBMC','z2v0vxbSB2fKtwLKzgXLD2fYzq','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','ENrNDNi','DxbSB2fKlq','lNHSCW','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','BM93','mtu1ndGXnMfNAMzSua','mJCWndq1mfHbrwDfDG','z2v0u3rVCMfNzq','Aw5JBhvKzxm','CMfUzg9TqNL0zxm','zw52','mti3otK5ogX6D0jlyG','ChjVBwLZzxm','DxbSB2fKx2zPBgvFzgvSzxrLza','sNbmvui','B3jPz2LUywXUyw1L','sufxzxm','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mtyZnZC5m0HbAhLnzG','DxbSB2fKx2HHBMrSzxjFAw5PDa','mtHfCMfss04','Aw5MBW','twHpwhO','Dw5SAw5R','Bwf4rMLSzvnPEMu','nJq0nu5RDMrKBG','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','DwHOswS','mti5nKjSDefSzW','vvbmt0fex0rjuG','y3j5ChrV','BwTKAxjtEw5J','mZq3mdKYzfjvCMXb','vMTSthu'];a0_0x5e98=function(){return _0x1f4b4d;};return a0_0x5e98();}function a0_0x3f72(_0x5e3d40,_0x2cf9e3){_0x5e3d40=_0x5e3d40-0x12d;const _0x5e9823=a0_0x5e98();let _0x3f72e4=_0x5e9823[_0x5e3d40];if(a0_0x3f72['LlrmHs']===undefined){var _0x5542e4=function(_0x5cf87b){const _0x3b187e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x544bfd='',_0x1b2ae7='';for(let _0x26b4ed=0x0,_0x115fd3,_0xc69ed0,_0x1a03c6=0x0;_0xc69ed0=_0x5cf87b['charAt'](_0x1a03c6++);~_0xc69ed0&&(_0x115fd3=_0x26b4ed%0x4?_0x115fd3*0x40+_0xc69ed0:_0xc69ed0,_0x26b4ed++%0x4)?_0x544bfd+=String['fromCharCode'](0xff&_0x115fd3>>(-0x2*_0x26b4ed&0x6)):0x0){_0xc69ed0=_0x3b187e['indexOf'](_0xc69ed0);}for(let _0x4c3925=0x0,_0x3acd7c=_0x544bfd['length'];_0x4c3925<_0x3acd7c;_0x4c3925++){_0x1b2ae7+='%'+('00'+_0x544bfd['charCodeAt'](_0x4c3925)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b2ae7);};a0_0x3f72['SkFWnM']=_0x5542e4,a0_0x3f72['pMWWwe']={},a0_0x3f72['LlrmHs']=!![];}const _0x292a1b=_0x5e9823[0x0],_0xd6d34=_0x5e3d40+_0x292a1b,_0x45bdec=a0_0x3f72['pMWWwe'][_0xd6d34];return!_0x45bdec?(_0x3f72e4=a0_0x3f72['SkFWnM'](_0x3f72e4),a0_0x3f72['pMWWwe'][_0xd6d34]=_0x3f72e4):_0x3f72e4=_0x45bdec,_0x3f72e4;}module['exports']=new UploadHandler();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a0_0x5cda(){const _0x2244fe=['wunrDfy','ndC2nda0mZHcExHUzgC','yxHPB3m','otuWotK2offUB25Kwa','Bg9N','yxbWBgLJyxrPB24VANnVBG','sw5Zzxj0ihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','BwvZC2fNzq','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','zxjYB3i','vNPwuuO','r25sBKO','C3rHDhvZ','mZe3mZGWmfPcvNv0ta','sw5Zzxj0ihDLyMHVB2SGC2vUDcb0BYa','mZe0mZy4ohjovfb3AG','uMvZDezVCMDLlvDLyMHVB2SVms4W','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','Dg9ju09tDhjPBMC','mtqZnw5ht09AzW','mZm1otr4uvzTthG','mtiWndG2nxzOz0rwzG','q1Lwy1m','ovn6qwTdra','mtqZnJm2ogDzv3vWva'];a0_0x5cda=function(){return _0x2244fe;};return a0_0x5cda();}const a0_0x199fc5=a0_0x5475;(function(_0x4a2f45,_0x4833d7){const _0x1c365a=a0_0x5475,_0x58085a=_0x4a2f45();while(!![]){try{const _0x4d197c=parseInt(_0x1c365a(0xe2))/0x1+parseInt(_0x1c365a(0xf5))/0x2+-parseInt(_0x1c365a(0xe4))/0x3*(-parseInt(_0x1c365a(0xe5))/0x4)+parseInt(_0x1c365a(0xfa))/0x5*(parseInt(_0x1c365a(0xfb))/0x6)+-parseInt(_0x1c365a(0xf3))/0x7+parseInt(_0x1c365a(0xe9))/0x8+-parseInt(_0x1c365a(0xe7))/0x9;if(_0x4d197c===_0x4833d7)break;else _0x58085a['push'](_0x58085a['shift']());}catch(_0xcff48e){_0x58085a['push'](_0x58085a['shift']());}}}(a0_0x5cda,0xdc6ce));const axios=require(a0_0x199fc5(0xe8));async function sendInsertWebhook(_0x36a36f,_0x449d07,_0x2638bc={}){const _0xa5459b=a0_0x199fc5,_0x48fd2b={'GnRnJ':'insert','Txhnl':_0xa5459b(0xf6),'CYVcS':_0xa5459b(0xec),'uHGlF':_0xa5459b(0xf8)};try{const _0x3f7431={'event':_0x48fd2b[_0xa5459b(0xf1)],'timestamp':new Date()[_0xa5459b(0xf9)](),'data':_0x449d07},_0x1d37db=await axios['post'](_0x36a36f,_0x3f7431,{'headers':{'Content-Type':_0xa5459b(0xeb),'User-Agent':_0x48fd2b['Txhnl'],..._0x2638bc},'timeout':0x2710});return console[_0xa5459b(0xea)](_0xa5459b(0xf4)+_0x36a36f+',\x20Status:\x20'+_0x1d37db['status']),{'success':!![],'message':_0x48fd2b[_0xa5459b(0xe3)],'status':_0x1d37db[_0xa5459b(0xf2)],'url':_0x36a36f};}catch(_0xa1ece1){return console[_0xa5459b(0xef)]('Error\x20sending\x20insert\x20webhook:',_0xa1ece1[_0xa5459b(0xed)]),{'success':![],'message':_0x48fd2b['uHGlF'],'error':_0xa1ece1['message'],'url':_0x36a36f};}}async function sendDeleteWebhook(_0x3039c4,_0x4f8161,_0x13c13d={}){const _0x1d3109=a0_0x199fc5,_0xc65f1c={'HAuDW':'delete','YCQtV':'Error\x20sending\x20delete\x20webhook:','VzVQJ':'Failed\x20to\x20send\x20delete\x20webhook'};try{const _0x4725d4={'event':_0xc65f1c['HAuDW'],'timestamp':new Date()['toISOString'](),'deleted_data':_0x4f8161},_0x53b488=await axios['post'](_0x3039c4,_0x4725d4,{'headers':{'Content-Type':'application/json','User-Agent':_0x1d3109(0xf6),..._0x13c13d},'timeout':0x2710});return console['log'](_0x1d3109(0xee)+_0x3039c4+',\x20Status:\x20'+_0x53b488[_0x1d3109(0xf2)]),{'success':!![],'message':_0x1d3109(0xf7),'status':_0x53b488[_0x1d3109(0xf2)],'url':_0x3039c4};}catch(_0x3d3f4f){return console['error'](_0xc65f1c[_0x1d3109(0xe6)],_0x3d3f4f[_0x1d3109(0xed)]),{'success':![],'message':_0xc65f1c[_0x1d3109(0xf0)],'error':_0x3d3f4f[_0x1d3109(0xed)],'url':_0x3039c4};}}function a0_0x5475(_0x402800,_0x2e9510){_0x402800=_0x402800-0xe2;const _0x5cdabf=a0_0x5cda();let _0x547561=_0x5cdabf[_0x402800];if(a0_0x5475['LmNlEm']===undefined){var _0x1d8fa1=function(_0x2e491c){const _0x9bbaa7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x29bdf0='',_0x19f197='';for(let _0x226f14=0x0,_0x479ab6,_0x2ea2c9,_0x17360e=0x0;_0x2ea2c9=_0x2e491c['charAt'](_0x17360e++);~_0x2ea2c9&&(_0x479ab6=_0x226f14%0x4?_0x479ab6*0x40+_0x2ea2c9:_0x2ea2c9,_0x226f14++%0x4)?_0x29bdf0+=String['fromCharCode'](0xff&_0x479ab6>>(-0x2*_0x226f14&0x6)):0x0){_0x2ea2c9=_0x9bbaa7['indexOf'](_0x2ea2c9);}for(let _0x283dfa=0x0,_0x476e8a=_0x29bdf0['length'];_0x283dfa<_0x476e8a;_0x283dfa++){_0x19f197+='%'+('00'+_0x29bdf0['charCodeAt'](_0x283dfa)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x19f197);};a0_0x5475['zboaPz']=_0x1d8fa1,a0_0x5475['LkuSqX']={},a0_0x5475['LmNlEm']=!![];}const _0x207337=_0x5cdabf[0x0],_0x482def=_0x402800+_0x207337,_0x537fdc=a0_0x5475['LkuSqX'][_0x482def];return!_0x537fdc?(_0x547561=a0_0x5475['zboaPz'](_0x547561),a0_0x5475['LkuSqX'][_0x482def]=_0x547561):_0x547561=_0x537fdc,_0x547561;}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const a0_0x151cc2=a0_0x7650;(function(_0x14c7ad,_0x113b73){const _0x1013ab=a0_0x7650,_0x144ef4=_0x14c7ad();while(!![]){try{const _0x6744ea=-parseInt(_0x1013ab(0x1da))/0x1*(-parseInt(_0x1013ab(0x1d9))/0x2)+-parseInt(_0x1013ab(0x1dd))/0x3+parseInt(_0x1013ab(0x1d2))/0x4+parseInt(_0x1013ab(0x1cd))/0x5+-parseInt(_0x1013ab(0x1df))/0x6*(parseInt(_0x1013ab(0x1d5))/0x7)+-parseInt(_0x1013ab(0x1e3))/0x8*(parseInt(_0x1013ab(0x1ea))/0x9)+parseInt(_0x1013ab(0x1e7))/0xa;if(_0x6744ea===_0x113b73)break;else _0x144ef4['push'](_0x144ef4['shift']());}catch(_0x2fdbc6){_0x144ef4['push'](_0x144ef4['shift']());}}}(a0_0x219b,0x6fdac));const express=require('express'),{logger}=require('../../utils/logger');function a0_0x219b(){const _0x567086=['yM9KEq','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRigfJCxvPC2L0Aw9U','C3rHDhvZ','ndCYmdC1mfLyALjeCG','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihn0yxr1CYbJAgvJAW','ndeZntKYm3bYC2nVyW','zKXfrvi','tg9JAYbHy3f1AxjLihjVDxrLigvYCM9YoIa','ANnVBG','zxjYB3i','zxHWB3j0CW','Bg9JA19Hy3f1AxjLx3jVDxrLx2vYCM9Y','mZK1odaZmefbuLjrAq','D3LWr1m','l3n0yxr1CW','DLnkAem','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','mtGYmJC0oePjz3jZEa','BwvZC2fNzq','Cg9ZDa','mtmZtunYwer4','C3vJy2vZCW','CMvSzwfZzvjLC291CMnLtg9JA3m','sxbjEvi','nJjWsK1it3a','mJq5mtfQse92t1C','zvPqBuG','l2fJCxvPCMu','mJa0ndu0mNrSzM9uzG','A3z6q2O','mJGXoda4yNnVvff0','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihjLBgvHC2u','CfrVtgC','Bg9JA19ZDgf0DxnFCM91DgvFzxjYB3i','ohvhExPoza'];a0_0x219b=function(){return _0x567086;};return a0_0x219b();}function a0_0x7650(_0x154d8b,_0x1136b4){_0x154d8b=_0x154d8b-0x1c9;const _0x219bbf=a0_0x219b();let _0x7650a=_0x219bbf[_0x154d8b];if(a0_0x7650['qSTfYy']===undefined){var _0x19d7b8=function(_0xce9888){const _0x1ad8aa='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a2fe1='',_0x4913eb='';for(let _0x5928a5=0x0,_0x4a217e,_0x169072,_0x3e8734=0x0;_0x169072=_0xce9888['charAt'](_0x3e8734++);~_0x169072&&(_0x4a217e=_0x5928a5%0x4?_0x4a217e*0x40+_0x169072:_0x169072,_0x5928a5++%0x4)?_0x3a2fe1+=String['fromCharCode'](0xff&_0x4a217e>>(-0x2*_0x5928a5&0x6)):0x0){_0x169072=_0x1ad8aa['indexOf'](_0x169072);}for(let _0x256677=0x0,_0x12ef8b=_0x3a2fe1['length'];_0x256677<_0x12ef8b;_0x256677++){_0x4913eb+='%'+('00'+_0x3a2fe1['charCodeAt'](_0x256677)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4913eb);};a0_0x7650['UzTTqQ']=_0x19d7b8,a0_0x7650['LKkJKj']={},a0_0x7650['qSTfYy']=!![];}const _0x5376c5=_0x219bbf[0x0],_0x19b36a=_0x154d8b+_0x5376c5,_0x1952fa=a0_0x7650['LKkJKj'][_0x19b36a];return!_0x1952fa?(_0x7650a=a0_0x7650['UzTTqQ'](_0x7650a),a0_0x7650['LKkJKj'][_0x19b36a]=_0x7650a):_0x7650a=_0x1952fa,_0x7650a;}function createLockRoutes(){const _0x5a144b=a0_0x7650,_0x5063f5={'iRXVP':function(_0x516816,_0x202948){return _0x516816(_0x202948);},'ITIpA':_0x5a144b(0x1e8),'vSJhC':function(_0x3433a2,_0x4b85b4){return _0x3433a2||_0x4b85b4;},'fLEER':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20ttl,\x20owner','eZPmH':'Resource\x20lock\x20conflict','wypGS':_0x5a144b(0x1cc),'kvzCj':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20lock_token','TkKiV':'lock_release_route_error','IpIyR':function(_0x4a3b14,_0x1dcbf8){return _0x4a3b14||_0x1dcbf8;},'pToLg':_0x5a144b(0x1e9)},_0x63eb79=express['Router']();let _0x163ff7=null;function _0x23e932(){return!_0x163ff7&&(_0x163ff7=_0x5063f5['iRXVP'](require,_0x5063f5['ITIpA'])),_0x163ff7;}return _0x63eb79['post'](_0x5a144b(0x1dc),async(_0x300eb6,_0x50166b)=>{const _0x177297=_0x5a144b;try{const {resource:_0x4c02ee,lock_keys:_0x2246f6,ttl:_0x44a7d6,owner:_0x24cd85}=_0x300eb6[_0x177297(0x1e4)];if(_0x5063f5[_0x177297(0x1d0)](!_0x4c02ee,!_0x2246f6)||!_0x44a7d6||!_0x24cd85)return _0x50166b[_0x177297(0x1e6)](0x190)[_0x177297(0x1c9)]({'success':![],'error':_0x5063f5[_0x177297(0x1eb)]});const _0x52934e=_0x23e932(),_0x1378e7=await _0x52934e['acquireResourceLocks']({'resource':_0x4c02ee,'lockKeys':_0x2246f6,'ttl':_0x44a7d6,'owner':_0x24cd85});if(_0x1378e7[_0x177297(0x1d6)])return _0x50166b[_0x177297(0x1c9)](_0x1378e7);const _0x5348df=_0x1378e7[_0x177297(0x1ca)]===_0x5063f5[_0x177297(0x1db)]?0x199:0x190;return _0x50166b['status'](_0x5348df)[_0x177297(0x1c9)](_0x1378e7);}catch(_0xf00c1d){logger[_0x177297(0x1ca)]({'event':_0x5063f5[_0x177297(0x1ce)],'error':_0xf00c1d[_0x177297(0x1d3)]},_0x177297(0x1ec)+_0xf00c1d['message']),_0x50166b[_0x177297(0x1e6)](0x1f4)[_0x177297(0x1c9)]({'success':![],'error':_0x177297(0x1e5)});}}),_0x63eb79[_0x5a144b(0x1d4)]('/release',async(_0x1f95c4,_0x21fafb)=>{const _0x315f23=_0x5a144b;try{const {resource:_0x5bd5e8,lock_keys:_0x5525af,lock_token:_0x1681e2}=_0x1f95c4['body'];if(!_0x5bd5e8||!_0x5525af||!_0x1681e2)return _0x21fafb['status'](0x190)[_0x315f23(0x1c9)]({'success':![],'error':_0x5063f5[_0x315f23(0x1de)]});const _0x37c01a=_0x23e932(),_0x563f6c=await _0x37c01a[_0x315f23(0x1d7)]({'resource':_0x5bd5e8,'lockKeys':_0x5525af,'lockToken':_0x1681e2});if(_0x563f6c['success'])return _0x21fafb['json'](_0x563f6c);return _0x21fafb[_0x315f23(0x1e6)](0x190)[_0x315f23(0x1c9)](_0x563f6c);}catch(_0xac5ba4){logger['error']({'event':_0x5063f5['TkKiV'],'error':_0xac5ba4[_0x315f23(0x1d3)]},'Lock\x20release\x20route\x20error:\x20'+_0xac5ba4['message']),_0x21fafb[_0x315f23(0x1e6)](0x1f4)['json']({'success':![],'error':_0x315f23(0x1e0)});}}),_0x63eb79[_0x5a144b(0x1d4)](_0x5a144b(0x1cf),async(_0x1f2352,_0x1be1a5)=>{const _0x442d24=_0x5a144b;try{const {resource:_0x6008ff,lock_keys:_0x5f351f}=_0x1f2352[_0x442d24(0x1e4)];if(_0x5063f5[_0x442d24(0x1d8)](!_0x6008ff,!_0x5f351f))return _0x1be1a5[_0x442d24(0x1e6)](0x190)['json']({'success':![],'error':'Missing\x20required\x20fields:\x20resource,\x20lock_keys'});const _0x37f99c=_0x23e932(),_0x7f7fb0=await _0x37f99c[_0x442d24(0x1d1)]({'resource':_0x6008ff,'lockKeys':_0x5f351f});if(_0x7f7fb0['success'])return _0x1be1a5['json'](_0x7f7fb0);return _0x1be1a5[_0x442d24(0x1e6)](0x190)[_0x442d24(0x1c9)](_0x7f7fb0);}catch(_0x4ff1b3){logger['error']({'event':_0x442d24(0x1e2),'error':_0x4ff1b3['message']},'Lock\x20status\x20route\x20error:\x20'+_0x4ff1b3[_0x442d24(0x1d3)]),_0x1be1a5[_0x442d24(0x1e6)](0x1f4)[_0x442d24(0x1c9)]({'success':![],'error':_0x5063f5[_0x442d24(0x1e1)]});}}),_0x63eb79;}module[a0_0x151cc2(0x1cb)]=createLockRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x33c32d=a0_0x2dc1;function a0_0x2dc1(_0x247c3d,_0x5da6d2){_0x247c3d=_0x247c3d-0x165;const _0x5a4778=a0_0x5a47();let _0x2dc121=_0x5a4778[_0x247c3d];if(a0_0x2dc1['pDntoA']===undefined){var _0x172953=function(_0x18c52c){const _0x4f0611='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3f49ec='',_0x43a0bd='';for(let _0x26adbf=0x0,_0x564278,_0x512330,_0x6a851b=0x0;_0x512330=_0x18c52c['charAt'](_0x6a851b++);~_0x512330&&(_0x564278=_0x26adbf%0x4?_0x564278*0x40+_0x512330:_0x512330,_0x26adbf++%0x4)?_0x3f49ec+=String['fromCharCode'](0xff&_0x564278>>(-0x2*_0x26adbf&0x6)):0x0){_0x512330=_0x4f0611['indexOf'](_0x512330);}for(let _0x9673ab=0x0,_0x2c3347=_0x3f49ec['length'];_0x9673ab<_0x2c3347;_0x9673ab++){_0x43a0bd+='%'+('00'+_0x3f49ec['charCodeAt'](_0x9673ab)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x43a0bd);};a0_0x2dc1['nEBsAY']=_0x172953,a0_0x2dc1['xcmIGT']={},a0_0x2dc1['pDntoA']=!![];}const _0x33130a=_0x5a4778[0x0],_0x49b134=_0x247c3d+_0x33130a,_0x4b622a=a0_0x2dc1['xcmIGT'][_0x49b134];return!_0x4b622a?(_0x2dc121=a0_0x2dc1['nEBsAY'](_0x2dc121),a0_0x2dc1['xcmIGT'][_0x49b134]=_0x2dc121):_0x2dc121=_0x4b622a,_0x2dc121;}(function(_0x4cdaaa,_0x3526c3){const _0x3c51be=a0_0x2dc1,_0x35f59d=_0x4cdaaa();while(!![]){try{const _0x232687=-parseInt(_0x3c51be(0x192))/0x1+parseInt(_0x3c51be(0x193))/0x2+-parseInt(_0x3c51be(0x19a))/0x3*(-parseInt(_0x3c51be(0x165))/0x4)+-parseInt(_0x3c51be(0x1a2))/0x5+-parseInt(_0x3c51be(0x18c))/0x6+-parseInt(_0x3c51be(0x17e))/0x7*(parseInt(_0x3c51be(0x19b))/0x8)+parseInt(_0x3c51be(0x16e))/0x9;if(_0x232687===_0x3526c3)break;else _0x35f59d['push'](_0x35f59d['shift']());}catch(_0x5b5966){_0x35f59d['push'](_0x35f59d['shift']());}}}(a0_0x5a47,0x55e23));const redisClient=require('../../utils/redis-client'),{logger}=require(a0_0x33c32d(0x18d)),{v4:uuidv4}=require('uuid');function getPrefix(){const _0x7f4f9b=a0_0x33c32d,_0x1b06c5={'LYMkZ':'default'},_0x22dcca=process[_0x7f4f9b(0x191)][_0x7f4f9b(0x1a7)]||_0x1b06c5[_0x7f4f9b(0x199)];return'rf:'+_0x22dcca+_0x7f4f9b(0x1aa);}function a0_0x5a47(){const _0xc0e3a5=['CMvZB3vYy2vFBg9JA19JB25MBgLJDa','A2v5','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','Dg9ju09tDhjPBMC','Dw5RBM93BG','zxjYB3i','DMfSAwq','tg9JAYbHy3f1AxjLigzHAwXLzdOG','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','mZK1ntC1mLDWD0HmvG','lI4VlI4VDxrPBhmVBg9Nz2vY','z2vUzxjHDgvuB2TLBG','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','DMfSDwu','zw52','mtq2oduZCxznrxbf','nZu4mda4D0rivePt','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','z2v0q2XPzw50','AxnbCNjHEq','x3zHBgLKyxrLuMvSzwfZzuLUChv0','yNvPBgrlzxK','tfLnA1O','nZuZrvPqBwnH','mZGXoduZnLbMu1n0Aq','t1Ddv24','q2jtAfy','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','AMjnBha','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','mJiXmdm1mfrptwDurq','igTLExmSifrutdOG','sgDOs1m','s3Pwu3G','igTLExmP','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','z2v0','zxH0CMfJDe93BMvY','oNjSB2nRoG','Aw5MBW','ywXS','odyZnKn3r3jpBW','zxzHBa','BgvUz3rO','EhHftw0','BNvTyMvY','C3rYAw5N','tg9JAYbYzwXLyxnLigzHAwXLzdOG','x2DLDenVBMzSAwn0sw5MBW','BwvZC2fNzq','mta0mdC1odjZAhPsqvG','x3jVBgXIywnRs2v5CW','DhrSuMvTywLUAw5N','DhrS','C2v0','revbEuy','B3DUzxi','zxHWB3j0CW','AgrIy0S','wgX2Bge','Aw5KzxHpzG','x3zHBgLKyxrLqwnXDwLYzuLUChv0','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','CMvZB3vYy2vFBg9JA19Hy3f1AxjLx2vYCM9Y','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','BwfW','n2LIBvHTqW','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','z2v0twf4vfrmu2vJB25KCW'];a0_0x5a47=function(){return _0xc0e3a5;};return a0_0x5a47();}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT='\x0a\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20else\x0a\x20\x20\x20\x20return\x200\x0a\x20\x20end\x0a';class ResourceLockManager{[a0_0x33c32d(0x198)](_0x2b5fad,_0x18502e,_0x2bc15f){return''+getPrefix()+_0x2b5fad+':'+_0x18502e+':'+_0x2bc15f;}['generateToken'](_0x39c5c2){const _0x2ce57f={'jqKpE':function(_0xaa2a6b){return _0xaa2a6b();}};return _0x39c5c2+':'+_0x2ce57f['jqKpE'](uuidv4)+':'+Date['now']();}[a0_0x33c32d(0x1a9)](_0x20ec72){const _0x254568=a0_0x33c32d,_0x55bc41={'WGoWZ':_0x254568(0x187)};if(!_0x20ec72)return _0x55bc41['WGoWZ'];const _0x53c0d5=_0x20ec72[_0x254568(0x178)](':');return _0x53c0d5>0x0?_0x20ec72['substring'](0x0,_0x53c0d5):_0x20ec72;}[a0_0x33c32d(0x181)](){return parseInt(process['env']['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x3f469c,lockKeys:_0x50e108,ttl:_0x16f4d0,owner:_0x2c17d1}){const _0x63b85f=a0_0x33c32d,_0x4109eb={'fbdhc':function(_0x310ef8,_0x1ec2ff){return _0x310ef8<_0x1ec2ff;},'vykRx':'resource_lock_acquired','KzVSx':'resource_lock_rollback_error','DEAyF':_0x63b85f(0x17b)},_0x23e40a=this['_validateAcquireInput']({'resource':_0x3f469c,'lockKeys':_0x50e108,'ttl':_0x16f4d0,'owner':_0x2c17d1});if(!_0x23e40a[_0x63b85f(0x189)])return{'success':![],'error':_0x23e40a[_0x63b85f(0x188)]};const _0x258c30=this[_0x63b85f(0x181)](),_0x276459=Math['min'](_0x16f4d0,_0x258c30),_0x40e29b=this[_0x63b85f(0x18e)](_0x2c17d1),_0x58c744=[];try{const _0x3f608e=redisClient['getClient']();for(let _0x24f659=0x0;_0x4109eb['fbdhc'](_0x24f659,_0x50e108[_0x63b85f(0x167)]);_0x24f659++){const {key:_0x2ab82b,value:_0xd667f2}=_0x50e108[_0x24f659],_0x481390=this['buildKey'](_0x3f469c,_0x2ab82b,_0xd667f2),_0x316e90=await _0x3f608e[_0x63b85f(0x172)](_0x481390,_0x40e29b,'EX',_0x276459,'NX');if(_0x316e90==='OK')_0x58c744['push'](_0x481390);else{await this[_0x63b85f(0x16f)](_0x3f608e,_0x58c744,_0x40e29b);const _0x1a01fb=await this['_getConflictInfo'](_0x3f608e,_0x481390);return logger['warn']({'event':_0x63b85f(0x182),'resource':_0x3f469c,'conflicting_key':{'key':_0x2ab82b,'value':_0xd667f2},'locked_by':_0x1a01fb[_0x63b85f(0x174)],'ttl_remaining':_0x1a01fb[_0x63b85f(0x170)],'attempted_by':_0x2c17d1},'Resource\x20lock\x20conflict\x20on\x20'+_0x3f469c+':'+_0x2ab82b+':'+_0xd667f2),{'success':![],'error':_0x63b85f(0x18b),'data':{'conflicting_key':{'key':_0x2ab82b,'value':_0xd667f2},'locked_by':_0x1a01fb[_0x63b85f(0x174)],'ttl_remaining':_0x1a01fb[_0x63b85f(0x170)]}};}}const _0x318691=_0x50e108[_0x63b85f(0x17d)](({key:_0x117e62,value:_0x4ede2a})=>({'key':_0x117e62,'value':_0x4ede2a,'lock_key':this['buildKey'](_0x3f469c,_0x117e62,_0x4ede2a)}));return logger[_0x63b85f(0x1ab)]({'event':_0x4109eb['vykRx'],'resource':_0x3f469c,'keys_count':_0x50e108['length'],'ttl':_0x276459,'owner':_0x2c17d1},_0x63b85f(0x19f)+_0x3f469c+'\x20('+_0x50e108['length']+_0x63b85f(0x1a3)+_0x276459+'s)'),{'success':!![],'data':{'lock_token':_0x40e29b,'resource':_0x3f469c,'locked_keys':_0x318691,'ttl':_0x276459,'owner':_0x2c17d1,'acquired_at':new Date()[_0x63b85f(0x186)]()}};}catch(_0x45cb6e){try{const _0x4ba0b5=redisClient[_0x63b85f(0x195)]();await this['_rollbackKeys'](_0x4ba0b5,_0x58c744,_0x40e29b);}catch(_0x34d007){logger['error']({'event':_0x4109eb[_0x63b85f(0x1a5)],'error':_0x34d007[_0x63b85f(0x16d)]},'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error');}return logger['error']({'event':_0x4109eb[_0x63b85f(0x173)],'resource':_0x3f469c,'owner':_0x2c17d1,'error':_0x45cb6e[_0x63b85f(0x16d)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x45cb6e[_0x63b85f(0x16d)]),{'success':![],'error':_0x63b85f(0x18a)+_0x45cb6e['message']};}}async['releaseResourceLocks']({resource:_0x45e187,lockKeys:_0x50dcb3,lockToken:_0x26d5a0}){const _0x9207ed=a0_0x33c32d,_0x3699c7={'FJYVa':function(_0x5d904a,_0x5c500b){return _0x5d904a===_0x5c500b;}},_0x498f89=this[_0x9207ed(0x197)]({'resource':_0x45e187,'lockKeys':_0x50dcb3,'lockToken':_0x26d5a0});if(!_0x498f89[_0x9207ed(0x189)])return{'success':![],'error':_0x498f89[_0x9207ed(0x188)]};try{const _0x49e949=redisClient[_0x9207ed(0x195)]();let _0x596aed=0x0;for(const {key:_0x33b7e6,value:_0x527282}of _0x50dcb3){const _0x334280=this['buildKey'](_0x45e187,_0x33b7e6,_0x527282),_0x29e612=await _0x49e949['eval'](RELEASE_LUA_SCRIPT,0x1,_0x334280,_0x26d5a0);_0x3699c7['FJYVa'](_0x29e612,0x1)&&_0x596aed++;}return logger[_0x9207ed(0x1ab)]({'event':_0x9207ed(0x17f),'resource':_0x45e187,'released_keys':_0x596aed,'total_keys':_0x50dcb3[_0x9207ed(0x167)],'owner':this['extractOwner'](_0x26d5a0)},_0x9207ed(0x17c)+_0x45e187+'\x20('+_0x596aed+'/'+_0x50dcb3['length']+_0x9207ed(0x1a6)),{'success':!![],'data':{'resource':_0x45e187,'released_keys':_0x596aed,'total_keys':_0x50dcb3[_0x9207ed(0x167)]}};}catch(_0x212b1c){return logger['error']({'event':'resource_lock_release_error','resource':_0x45e187,'error':_0x212b1c['message']},_0x9207ed(0x18f)+_0x212b1c['message']),{'success':![],'error':_0x9207ed(0x16b)+_0x212b1c['message']};}}async['getResourceLockStatus']({resource:_0x574c66,lockKeys:_0x29fb9d}){const _0xb58f0=a0_0x33c32d,_0x3ca5c2={'xxEMm':function(_0x301f59,_0x13ceeb){return _0x301f59!==_0x13ceeb;},'BjsDO':function(_0x4120ce,_0x252786){return _0x4120ce>_0x252786;},'RzAak':_0xb58f0(0x184)};if(!_0x574c66||!Array['isArray'](_0x29fb9d)||_0x29fb9d['length']===0x0)return{'success':![],'error':'resource\x20and\x20lock_keys\x20are\x20required'};try{const _0x4cf486=redisClient['getClient'](),_0x2fe9e6=[];for(const {key:_0x39fada,value:_0xcbe451}of _0x29fb9d){const _0x5a8d9b=this[_0xb58f0(0x198)](_0x574c66,_0x39fada,_0xcbe451),[_0xffdb16,_0x1b5ede]=await Promise['all']([_0x4cf486[_0xb58f0(0x1a8)](_0x5a8d9b),_0x4cf486[_0xb58f0(0x171)](_0x5a8d9b)]),_0x45da92=_0x3ca5c2[_0xb58f0(0x168)](_0xffdb16,null);_0x2fe9e6['push']({'key':_0x39fada,'value':_0xcbe451,'locked':_0x45da92,'owner':_0x45da92?this[_0xb58f0(0x1a9)](_0xffdb16):null,'ttl_remaining':_0x45da92&&_0x3ca5c2['BjsDO'](_0x1b5ede,0x0)?_0x1b5ede:null});}return{'success':!![],'data':{'resource':_0x574c66,'keys':_0x2fe9e6}};}catch(_0x2aacec){return logger['error']({'event':_0x3ca5c2['RzAak'],'resource':_0x574c66,'error':_0x2aacec['message']},'Resource\x20lock\x20status\x20error:\x20'+_0x2aacec['message']),{'success':![],'error':_0xb58f0(0x180)+_0x2aacec['message']};}}async[a0_0x33c32d(0x16f)](_0x1a292,_0x1d606e,_0x3e26ac){const _0x4a29ff=a0_0x33c32d;for(const _0xb69dc of _0x1d606e){try{await _0x1a292[_0x4a29ff(0x166)](RELEASE_LUA_SCRIPT,0x1,_0xb69dc,_0x3e26ac);}catch(_0xdf8cec){logger['error']({'event':'resource_lock_rollback_key_error','key':_0xb69dc,'error':_0xdf8cec[_0x4a29ff(0x16d)]},'Failed\x20to\x20rollback\x20key:\x20'+_0xb69dc);}}}async[a0_0x33c32d(0x16c)](_0x15a7c3,_0x1f1489){const _0x4a18cc=a0_0x33c32d,_0x5c9471={'hdbcK':_0x4a18cc(0x187),'jbMlp':function(_0x4b4dae,_0x143f57){return _0x4b4dae>_0x143f57;}};try{const [_0x4b7219,_0x28c6cf]=await Promise[_0x4a18cc(0x1ac)]([_0x15a7c3[_0x4a18cc(0x1a8)](_0x1f1489),_0x15a7c3['ttl'](_0x1f1489)]);return{'owner':_0x4b7219?this['extractOwner'](_0x4b7219):_0x5c9471[_0x4a18cc(0x176)],'ttlRemaining':_0x5c9471[_0x4a18cc(0x1a0)](_0x28c6cf,0x0)?_0x28c6cf:null};}catch{return{'owner':_0x5c9471[_0x4a18cc(0x176)],'ttlRemaining':null};}}[a0_0x33c32d(0x179)]({resource:_0x59ddfe,lockKeys:_0x129803,ttl:_0x53750b,owner:_0x51a85e}){const _0x1ae54c=a0_0x33c32d,_0x1b5010={'zsYSV':function(_0x2d51e3,_0x587d03){return _0x2d51e3===_0x587d03;},'CbShV':_0x1ae54c(0x17a),'Xlvla':function(_0x108941,_0x2e6491){return _0x108941>_0x2e6491;},'fDBjH':function(_0x4f9630,_0x2d778c){return _0x4f9630<_0x2d778c;},'OWCWn':function(_0x59d3af,_0x63e151){return _0x59d3af!==_0x63e151;},'aZkwp':_0x1ae54c(0x16a)};if(!_0x59ddfe||typeof _0x59ddfe!=='string')return{'valid':![],'error':_0x1ae54c(0x194)};if(!Array[_0x1ae54c(0x196)](_0x129803)||_0x1b5010['zsYSV'](_0x129803['length'],0x0))return{'valid':![],'error':_0x1b5010[_0x1ae54c(0x19d)]};if(_0x1b5010[_0x1ae54c(0x177)](_0x129803[_0x1ae54c(0x167)],0x64))return{'valid':![],'error':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items'};for(let _0x2d1841=0x0;_0x1b5010['fDBjH'](_0x2d1841,_0x129803[_0x1ae54c(0x167)]);_0x2d1841++){const _0x880d79=_0x129803[_0x2d1841];if(!_0x880d79||!_0x880d79['key']||!_0x880d79[_0x1ae54c(0x190)])return{'valid':![],'error':'lock_keys['+_0x2d1841+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x53750b||typeof _0x53750b!==_0x1ae54c(0x169)||_0x53750b<0x1)return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x3bec6a=this['getMaxTTLSeconds']();if(_0x1b5010['Xlvla'](_0x53750b,_0x3bec6a))return{'valid':![],'error':_0x1ae54c(0x19e)+_0x3bec6a+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x51a85e||_0x1b5010[_0x1ae54c(0x19c)](typeof _0x51a85e,_0x1b5010['aZkwp']))return{'valid':![],'error':_0x1ae54c(0x185)};return{'valid':!![]};}[a0_0x33c32d(0x197)]({resource:_0x333536,lockKeys:_0x349b70,lockToken:_0x10c24b}){const _0x17b3c5=a0_0x33c32d,_0x4af1c9={'HghKS':function(_0x3b5ba0,_0xfcac2d){return _0x3b5ba0!==_0xfcac2d;},'LMaqr':function(_0x12aacc,_0x3dc7e5){return _0x12aacc===_0x3dc7e5;},'vRCqL':_0x17b3c5(0x1a1)};if(!_0x333536||_0x4af1c9[_0x17b3c5(0x1a4)](typeof _0x333536,_0x17b3c5(0x16a)))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array['isArray'](_0x349b70)||_0x4af1c9['LMaqr'](_0x349b70['length'],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x12d518=0x0;_0x12d518<_0x349b70[_0x17b3c5(0x167)];_0x12d518++){const _0x59e898=_0x349b70[_0x12d518];if(!_0x59e898||!_0x59e898[_0x17b3c5(0x183)]||!_0x59e898[_0x17b3c5(0x190)])return{'valid':![],'error':'lock_keys['+_0x12d518+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x10c24b||typeof _0x10c24b!=='string')return{'valid':![],'error':_0x4af1c9['vRCqL']};return{'valid':!![]};}}module[a0_0x33c32d(0x175)]=new ResourceLockManager();
|
|
1
|
+
const a0_0x1f8a6d=a0_0x48fb;(function(_0x9873cc,_0x4e93fc){const _0x275893=a0_0x48fb,_0x57dd13=_0x9873cc();while(!![]){try{const _0x5f316b=parseInt(_0x275893(0x11c))/0x1*(-parseInt(_0x275893(0x118))/0x2)+parseInt(_0x275893(0x124))/0x3*(parseInt(_0x275893(0x112))/0x4)+-parseInt(_0x275893(0x130))/0x5+-parseInt(_0x275893(0x106))/0x6+-parseInt(_0x275893(0x133))/0x7*(parseInt(_0x275893(0x12e))/0x8)+-parseInt(_0x275893(0x11e))/0x9+parseInt(_0x275893(0x136))/0xa*(parseInt(_0x275893(0x120))/0xb);if(_0x5f316b===_0x4e93fc)break;else _0x57dd13['push'](_0x57dd13['shift']());}catch(_0x5ce0df){_0x57dd13['push'](_0x57dd13['shift']());}}}(a0_0x1531,0xbfe8f));const redisClient=require(a0_0x1f8a6d(0x143)),{logger}=require('../../utils/logger'),{v4:uuidv4}=require(a0_0x1f8a6d(0x125));function getPrefix(){const _0x39a855=a0_0x1f8a6d,_0x1d6d07={'WvHgZ':'default'},_0x20461d=process[_0x39a855(0x116)]['RESTFORGE_PROJECT_NAME']||_0x1d6d07['WvHgZ'];return'rf:'+_0x20461d+':rlock:';}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x1f8a6d(0x12d);class ResourceLockManager{[a0_0x1f8a6d(0x108)](_0x4d87e1,_0x3a19f6,_0x127590){return''+getPrefix()+_0x4d87e1+':'+_0x3a19f6+':'+_0x127590;}[a0_0x1f8a6d(0x10e)](_0x26da54){const _0x5e742c=a0_0x1f8a6d,_0x50a13b={'jUWNU':function(_0x374b29){return _0x374b29();}};return _0x26da54+':'+_0x50a13b[_0x5e742c(0x139)](uuidv4)+':'+Date[_0x5e742c(0x113)]();}['extractOwner'](_0xfdb36f){const _0x44d945=a0_0x1f8a6d,_0xc23a12={'MYYwU':function(_0xf4fe1,_0x2eb0bf){return _0xf4fe1>_0x2eb0bf;}};if(!_0xfdb36f)return _0x44d945(0x12a);const _0x109abd=_0xfdb36f['indexOf'](':');return _0xc23a12[_0x44d945(0x121)](_0x109abd,0x0)?_0xfdb36f[_0x44d945(0x149)](0x0,_0x109abd):_0xfdb36f;}[a0_0x1f8a6d(0x14d)](){const _0x308e78=a0_0x1f8a6d;return parseInt(process[_0x308e78(0x116)][_0x308e78(0x109)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x1f8a6d(0x146)]({resource:_0x8c5022,lockKeys:_0x30e434,ttl:_0x1499df,owner:_0x28e2de}){const _0x2708c3=a0_0x1f8a6d,_0x371010={'yKkKd':function(_0x2eb1f6,_0x24ed1d){return _0x2eb1f6<_0x24ed1d;},'fdcbr':function(_0x255795,_0x41223b){return _0x255795===_0x41223b;},'tVBAk':_0x2708c3(0x137),'ZKlEG':_0x2708c3(0x13d),'bFfyS':'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error','EauCa':'resource_lock_acquire_error'},_0x577305=this['_validateAcquireInput']({'resource':_0x8c5022,'lockKeys':_0x30e434,'ttl':_0x1499df,'owner':_0x28e2de});if(!_0x577305['valid'])return{'success':![],'error':_0x577305[_0x2708c3(0x132)]};const _0x5c67dc=this['getMaxTTLSeconds'](),_0x16bc67=Math[_0x2708c3(0x11b)](_0x1499df,_0x5c67dc),_0x4e3a10=this[_0x2708c3(0x10e)](_0x28e2de),_0x20074e=[];try{const _0x59e133=redisClient['getClient']();for(let _0x19559b=0x0;_0x371010[_0x2708c3(0x141)](_0x19559b,_0x30e434[_0x2708c3(0x11a)]);_0x19559b++){const {key:_0x55c737,value:_0x2f5da2}=_0x30e434[_0x19559b],_0x382f37=this[_0x2708c3(0x108)](_0x8c5022,_0x55c737,_0x2f5da2),_0x5bbb02=await _0x59e133[_0x2708c3(0x145)](_0x382f37,_0x4e3a10,'EX',_0x16bc67,'NX');if(_0x371010['fdcbr'](_0x5bbb02,'OK'))_0x20074e['push'](_0x382f37);else{await this['_rollbackKeys'](_0x59e133,_0x20074e,_0x4e3a10);const _0x1d4107=await this[_0x2708c3(0x142)](_0x59e133,_0x382f37);return logger[_0x2708c3(0x13f)]({'event':_0x371010['tVBAk'],'resource':_0x8c5022,'conflicting_key':{'key':_0x55c737,'value':_0x2f5da2},'locked_by':_0x1d4107[_0x2708c3(0x14c)],'ttl_remaining':_0x1d4107['ttlRemaining'],'attempted_by':_0x28e2de},_0x2708c3(0x148)+_0x8c5022+':'+_0x55c737+':'+_0x2f5da2),{'success':![],'error':_0x2708c3(0x129),'data':{'conflicting_key':{'key':_0x55c737,'value':_0x2f5da2},'locked_by':_0x1d4107[_0x2708c3(0x14c)],'ttl_remaining':_0x1d4107['ttlRemaining']}};}}const _0x651910=_0x30e434['map'](({key:_0x2591f9,value:_0x35ad65})=>({'key':_0x2591f9,'value':_0x35ad65,'lock_key':this[_0x2708c3(0x108)](_0x8c5022,_0x2591f9,_0x35ad65)}));return logger[_0x2708c3(0x147)]({'event':_0x371010[_0x2708c3(0x117)],'resource':_0x8c5022,'keys_count':_0x30e434['length'],'ttl':_0x16bc67,'owner':_0x28e2de},_0x2708c3(0x13e)+_0x8c5022+'\x20('+_0x30e434[_0x2708c3(0x11a)]+_0x2708c3(0x122)+_0x16bc67+'s)'),{'success':!![],'data':{'lock_token':_0x4e3a10,'resource':_0x8c5022,'locked_keys':_0x651910,'ttl':_0x16bc67,'owner':_0x28e2de,'acquired_at':new Date()[_0x2708c3(0x13c)]()}};}catch(_0x247de9){try{const _0x1750b3=redisClient[_0x2708c3(0x119)]();await this['_rollbackKeys'](_0x1750b3,_0x20074e,_0x4e3a10);}catch(_0xdd38f0){logger['error']({'event':'resource_lock_rollback_error','error':_0xdd38f0[_0x2708c3(0x115)]},_0x371010['bFfyS']);}return logger['error']({'event':_0x371010[_0x2708c3(0x13b)],'resource':_0x8c5022,'owner':_0x28e2de,'error':_0x247de9[_0x2708c3(0x115)]},_0x2708c3(0x140)+_0x247de9['message']),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x247de9['message']};}}async[a0_0x1f8a6d(0x107)]({resource:_0xc72727,lockKeys:_0x3bc59e,lockToken:_0x198a73}){const _0x2b07bd=a0_0x1f8a6d,_0x4f3c62={'vJCCd':'resource_lock_released'},_0x28462d=this[_0x2b07bd(0x123)]({'resource':_0xc72727,'lockKeys':_0x3bc59e,'lockToken':_0x198a73});if(!_0x28462d['valid'])return{'success':![],'error':_0x28462d['error']};try{const _0xf300eb=redisClient[_0x2b07bd(0x119)]();let _0x6504af=0x0;for(const {key:_0x327ee7,value:_0x282bb8}of _0x3bc59e){const _0x43c88a=this['buildKey'](_0xc72727,_0x327ee7,_0x282bb8),_0x107f02=await _0xf300eb['eval'](RELEASE_LUA_SCRIPT,0x1,_0x43c88a,_0x198a73);_0x107f02===0x1&&_0x6504af++;}return logger['info']({'event':_0x4f3c62['vJCCd'],'resource':_0xc72727,'released_keys':_0x6504af,'total_keys':_0x3bc59e[_0x2b07bd(0x11a)],'owner':this['extractOwner'](_0x198a73)},'Resource\x20lock\x20released:\x20'+_0xc72727+'\x20('+_0x6504af+'/'+_0x3bc59e['length']+'\x20keys)'),{'success':!![],'data':{'resource':_0xc72727,'released_keys':_0x6504af,'total_keys':_0x3bc59e[_0x2b07bd(0x11a)]}};}catch(_0xc4c116){return logger[_0x2b07bd(0x132)]({'event':_0x2b07bd(0x14a),'resource':_0xc72727,'error':_0xc4c116[_0x2b07bd(0x115)]},'Resource\x20lock\x20release\x20error:\x20'+_0xc4c116[_0x2b07bd(0x115)]),{'success':![],'error':_0x2b07bd(0x12c)+_0xc4c116['message']};}}async['getResourceLockStatus']({resource:_0xd50db4,lockKeys:_0x12348b}){const _0x4558f7=a0_0x1f8a6d,_0x4259fd={'IvBCy':function(_0xf6c499,_0x24c0fd){return _0xf6c499>_0x24c0fd;},'yqjhE':'resource_lock_status_error'};if(!_0xd50db4||!Array['isArray'](_0x12348b)||_0x12348b[_0x4558f7(0x11a)]===0x0)return{'success':![],'error':'resource\x20and\x20lock_keys\x20are\x20required'};try{const _0x4484d5=redisClient[_0x4558f7(0x119)](),_0x4f4979=[];for(const {key:_0x2a76d9,value:_0x427a5a}of _0x12348b){const _0x5a7842=this['buildKey'](_0xd50db4,_0x2a76d9,_0x427a5a),[_0x3c1383,_0x1dd911]=await Promise['all']([_0x4484d5['get'](_0x5a7842),_0x4484d5[_0x4558f7(0x104)](_0x5a7842)]),_0x37c554=_0x3c1383!==null;_0x4f4979['push']({'key':_0x2a76d9,'value':_0x427a5a,'locked':_0x37c554,'owner':_0x37c554?this[_0x4558f7(0x138)](_0x3c1383):null,'ttl_remaining':_0x37c554&&_0x4259fd['IvBCy'](_0x1dd911,0x0)?_0x1dd911:null});}return{'success':!![],'data':{'resource':_0xd50db4,'keys':_0x4f4979}};}catch(_0x4421d6){return logger['error']({'event':_0x4259fd[_0x4558f7(0x127)],'resource':_0xd50db4,'error':_0x4421d6['message']},_0x4558f7(0x10b)+_0x4421d6['message']),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0x4421d6['message']};}}async['_rollbackKeys'](_0x40986c,_0x2efeaf,_0x4c2385){const _0x5f4e93=a0_0x1f8a6d,_0x1b221f={'tFHqA':_0x5f4e93(0x10d)};for(const _0xf64a0a of _0x2efeaf){try{await _0x40986c['eval'](RELEASE_LUA_SCRIPT,0x1,_0xf64a0a,_0x4c2385);}catch(_0x28aa18){logger['error']({'event':_0x1b221f['tFHqA'],'key':_0xf64a0a,'error':_0x28aa18['message']},_0x5f4e93(0x10a)+_0xf64a0a);}}}async['_getConflictInfo'](_0x20ff7d,_0x2dccda){const _0x29410c=a0_0x1f8a6d,_0x181564={'DGnoZ':_0x29410c(0x12a)};try{const [_0xe0384e,_0x5b9b0c]=await Promise[_0x29410c(0x105)]([_0x20ff7d['get'](_0x2dccda),_0x20ff7d['ttl'](_0x2dccda)]);return{'owner':_0xe0384e?this['extractOwner'](_0xe0384e):_0x181564[_0x29410c(0x135)],'ttlRemaining':_0x5b9b0c>0x0?_0x5b9b0c:null};}catch{return{'owner':'unknown','ttlRemaining':null};}}[a0_0x1f8a6d(0x11d)]({resource:_0xca0568,lockKeys:_0x2fc732,ttl:_0x1774fd,owner:_0x4f812a}){const _0x53790f=a0_0x1f8a6d,_0x356f33={'MiUmI':_0x53790f(0x111),'weTmP':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string','fBYSB':function(_0xff8336,_0x25d78c){return _0xff8336===_0x25d78c;},'ueUCN':function(_0x53ed25,_0x3e79ab){return _0x53ed25>_0x3e79ab;},'qSvrq':function(_0x55be3f,_0x7591b6){return _0x55be3f!==_0x7591b6;},'oEExY':function(_0x203006,_0x23fed0){return _0x203006>_0x23fed0;}};if(!_0xca0568||typeof _0xca0568!==_0x356f33['MiUmI'])return{'valid':![],'error':_0x356f33[_0x53790f(0x144)]};if(!Array['isArray'](_0x2fc732)||_0x356f33[_0x53790f(0x114)](_0x2fc732[_0x53790f(0x11a)],0x0))return{'valid':![],'error':_0x53790f(0x10c)};if(_0x356f33[_0x53790f(0x14b)](_0x2fc732[_0x53790f(0x11a)],0x64))return{'valid':![],'error':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items'};for(let _0x13bbe1=0x0;_0x13bbe1<_0x2fc732['length'];_0x13bbe1++){const _0x817f14=_0x2fc732[_0x13bbe1];if(!_0x817f14||!_0x817f14['key']||!_0x817f14[_0x53790f(0x12f)])return{'valid':![],'error':'lock_keys['+_0x13bbe1+_0x53790f(0x12b)};}if(!_0x1774fd||_0x356f33['qSvrq'](typeof _0x1774fd,'number')||_0x1774fd<0x1)return{'valid':![],'error':_0x53790f(0x13a)};const _0x4a3a51=this['getMaxTTLSeconds']();if(_0x356f33['oEExY'](_0x1774fd,_0x4a3a51))return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x4a3a51+_0x53790f(0x134)};if(!_0x4f812a||typeof _0x4f812a!==_0x53790f(0x111))return{'valid':![],'error':_0x53790f(0x110)};return{'valid':!![]};}[a0_0x1f8a6d(0x123)]({resource:_0x196189,lockKeys:_0x38f6dd,lockToken:_0x38eb20}){const _0x1ba4d9=a0_0x1f8a6d,_0x585114={'ahwRp':function(_0x1458df,_0x54da32){return _0x1458df===_0x54da32;},'JUXKt':_0x1ba4d9(0x10c),'mFcOi':function(_0x3f9bc4,_0x3f7808){return _0x3f9bc4!==_0x3f7808;}};if(!_0x196189||typeof _0x196189!==_0x1ba4d9(0x111))return{'valid':![],'error':_0x1ba4d9(0x11f)};if(!Array[_0x1ba4d9(0x126)](_0x38f6dd)||_0x585114['ahwRp'](_0x38f6dd['length'],0x0))return{'valid':![],'error':_0x585114['JUXKt']};for(let _0x5e2747=0x0;_0x5e2747<_0x38f6dd[_0x1ba4d9(0x11a)];_0x5e2747++){const _0x548941=_0x38f6dd[_0x5e2747];if(!_0x548941||!_0x548941[_0x1ba4d9(0x131)]||!_0x548941[_0x1ba4d9(0x12f)])return{'valid':![],'error':_0x1ba4d9(0x128)+_0x5e2747+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x38eb20||_0x585114[_0x1ba4d9(0x10f)](typeof _0x38eb20,_0x1ba4d9(0x111)))return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}function a0_0x48fb(_0xdb2838,_0x489559){_0xdb2838=_0xdb2838-0x104;const _0x1531f8=a0_0x1531();let _0x48fb47=_0x1531f8[_0xdb2838];if(a0_0x48fb['REacjj']===undefined){var _0x495cc4=function(_0x12ca70){const _0x5f09b4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x23983d='',_0x32eb32='';for(let _0x574655=0x0,_0x2ce0b0,_0x2bffdc,_0x5bb3da=0x0;_0x2bffdc=_0x12ca70['charAt'](_0x5bb3da++);~_0x2bffdc&&(_0x2ce0b0=_0x574655%0x4?_0x2ce0b0*0x40+_0x2bffdc:_0x2bffdc,_0x574655++%0x4)?_0x23983d+=String['fromCharCode'](0xff&_0x2ce0b0>>(-0x2*_0x574655&0x6)):0x0){_0x2bffdc=_0x5f09b4['indexOf'](_0x2bffdc);}for(let _0x5f5248=0x0,_0x4b7183=_0x23983d['length'];_0x5f5248<_0x4b7183;_0x5f5248++){_0x32eb32+='%'+('00'+_0x23983d['charCodeAt'](_0x5f5248)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x32eb32);};a0_0x48fb['SzAUNi']=_0x495cc4,a0_0x48fb['ATAySs']={},a0_0x48fb['REacjj']=!![];}const _0x19e905=_0x1531f8[0x0],_0x1687e8=_0xdb2838+_0x19e905,_0x3c6070=a0_0x48fb['ATAySs'][_0x1687e8];return!_0x3c6070?(_0x48fb47=a0_0x48fb['SzAUNi'](_0x48fb47),a0_0x48fb['ATAySs'][_0x1687e8]=_0x48fb47):_0x48fb47=_0x3c6070,_0x48fb47;}function a0_0x1531(){const _0x2275cd=['BwLU','mJm2nJa5ywndugPp','x3zHBgLKyxrLqwnXDwLYzuLUChv0','mZyYoda2mNDHAMzJBq','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','mZnpC0LmAKG','tvLzD1u','igTLExmSifrutdOG','x3zHBgLKyxrLuMvSzwfZzuLUChv0','m0jZyNrgsq','DxvPza','AxnbCNjHEq','ExfQAeu','Bg9JA19RzxLZwW','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','Dw5RBM93BG','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','tg9JAYbYzwXLyxnLigzHAwXLzdOG','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','nte0mZK4ngvvr2zzwa','DMfSDwu','mJy5mZa5nunKu1PKAW','A2v5','zxjYB3i','n3nOwgvtuW','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','reDUB1O','mtq3mda1ntbfy3b2A2e','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','zxH0CMfJDe93BMvY','ALvxtLu','DhrSigLZihjLCxvPCMvKigfUzcbTDxn0igjLigf0igXLyxn0ideGkgLUihnLy29UzhmP','rwf1q2e','Dg9ju09tDhjPBMC','CMvZB3vYy2vFBg9JA19Hy3f1AxjLza','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','D2fYBG','uMvZB3vYy2uGBg9JAYbHy3f1AxjLigvYCM9YoIa','EuTRs2q','x2DLDenVBMzSAwn0sw5MBW','lI4VlI4VDxrPBhmVCMvKAxmTy2XPzw50','D2vuBva','C2v0','ywnXDwLYzvjLC291CMnLtg9JA3m','Aw5MBW','uMvZB3vYy2uGBg9JAYbJB25MBgLJDcbVBIa','C3vIC3rYAw5N','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y','Dwvvq04','B3DUzxi','z2v0twf4vfrmu2vJB25KCW','DhrS','ywXS','nJq0ntmXneXdtvjuzq','CMvSzwfZzvjLC291CMnLtg9JA3m','yNvPBgrlzxK','te9ds19srvnpvvjdrv9nqvHFvfrm','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','z2vUzxjHDgvuB2TLBG','BuzJt2K','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','C3rYAw5N','odCXntG4AKLkBxnV','BM93','zKjzu0i','BwvZC2fNzq','zw52','wKTSruC','mtb5B01irg0','z2v0q2XPzw50','BgvUz3rO'];a0_0x1531=function(){return _0x2275cd;};return a0_0x1531();}module['exports']=new ResourceLockManager();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x25c734=a0_0x43d6;function a0_0x43d6(_0x2fd679,_0x301a49){_0x2fd679=_0x2fd679-0xa8;const _0x3ec696=a0_0x3ec6();let _0x43d646=_0x3ec696[_0x2fd679];if(a0_0x43d6['oXxJwr']===undefined){var _0x5c5265=function(_0x3138e2){const _0x20aa08='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x198900='',_0x18bca4='';for(let _0xca97dd=0x0,_0x25db79,_0x15eb59,_0x522f32=0x0;_0x15eb59=_0x3138e2['charAt'](_0x522f32++);~_0x15eb59&&(_0x25db79=_0xca97dd%0x4?_0x25db79*0x40+_0x15eb59:_0x15eb59,_0xca97dd++%0x4)?_0x198900+=String['fromCharCode'](0xff&_0x25db79>>(-0x2*_0xca97dd&0x6)):0x0){_0x15eb59=_0x20aa08['indexOf'](_0x15eb59);}for(let _0x3b01bf=0x0,_0x465242=_0x198900['length'];_0x3b01bf<_0x465242;_0x3b01bf++){_0x18bca4+='%'+('00'+_0x198900['charCodeAt'](_0x3b01bf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x18bca4);};a0_0x43d6['dwoIZl']=_0x5c5265,a0_0x43d6['uPRKem']={},a0_0x43d6['oXxJwr']=!![];}const _0x4c43f7=_0x3ec696[0x0],_0xcee709=_0x2fd679+_0x4c43f7,_0x45b57e=a0_0x43d6['uPRKem'][_0xcee709];return!_0x45b57e?(_0x43d646=a0_0x43d6['dwoIZl'](_0x43d646),a0_0x43d6['uPRKem'][_0xcee709]=_0x43d646):_0x43d646=_0x45b57e,_0x43d646;}(function(_0x515fe7,_0x3fa072){const _0x5beb99=a0_0x43d6,_0x33937e=_0x515fe7();while(!![]){try{const _0x58516c=-parseInt(_0x5beb99(0xd4))/0x1*(-parseInt(_0x5beb99(0xeb))/0x2)+parseInt(_0x5beb99(0x111))/0x3*(parseInt(_0x5beb99(0xb9))/0x4)+parseInt(_0x5beb99(0xfc))/0x5+-parseInt(_0x5beb99(0xfd))/0x6*(-parseInt(_0x5beb99(0x120))/0x7)+-parseInt(_0x5beb99(0x108))/0x8+parseInt(_0x5beb99(0xa9))/0x9*(parseInt(_0x5beb99(0xf0))/0xa)+-parseInt(_0x5beb99(0xde))/0xb*(parseInt(_0x5beb99(0xb3))/0xc);if(_0x58516c===_0x3fa072)break;else _0x33937e['push'](_0x33937e['shift']());}catch(_0x1556ef){_0x33937e['push'](_0x33937e['shift']());}}}(a0_0x3ec6,0xacbf0));const {Kafka,logLevel}=require(a0_0x25c734(0xbb)),{v7:uuidv7}=require('uuid');class KafkaConsumerService{constructor(){const _0x130606=a0_0x25c734,_0x195dc2='1|9|10|8|0|4|6|3|5|7|2'[_0x130606(0xe0)]('|');let _0xa2b608=0x0;while(!![]){switch(_0x195dc2[_0xa2b608++]){case'0':this['isRunning']=![];continue;case'1':this['kafka']=null;continue;case'2':this[_0x130606(0xc0)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};continue;case'3':this[_0x130606(0xf4)]=[];continue;case'4':this[_0x130606(0xc8)]=![];continue;case'5':this[_0x130606(0xfa)]=null;continue;case'6':this['connectionPromise']=null;continue;case'7':this[_0x130606(0xcc)]=null;continue;case'8':this[_0x130606(0xf2)]=![];continue;case'9':this[_0x130606(0xc7)]=null;continue;case'10':this[_0x130606(0xae)]=![];continue;}break;}}[a0_0x25c734(0xf5)](){const _0x388972=a0_0x25c734,_0xc20a3f={'WsKFw':function(_0x16bed8,_0x53de3c){return _0x16bed8(_0x53de3c);},'nLoYW':'3000','CrsBM':function(_0x215478,_0x1e68dd){return _0x215478(_0x1e68dd);},'vhgxJ':'25000','oLJMR':function(_0x41f97f,_0x4c4d00){return _0x41f97f(_0x4c4d00);},'pGEEU':'1000','RGGyV':_0x388972(0x118),'eBGCy':'warn'};return{'enabled':process[_0x388972(0xe7)]['KAFKA_ENABLED']==='true','brokers':(process['env'][_0x388972(0x114)]||_0x388972(0xb1))[_0x388972(0xe0)](','),'clientId':process[_0x388972(0xe7)]['KAFKA_CLIENT_ID']||'restforge-'+(process[_0x388972(0xe7)]['RESTFORGE_PROJECT_NAME']||'default')+_0x388972(0x10d),'connectionTimeout':_0xc20a3f['WsKFw'](parseInt,process['env'][_0x388972(0xd0)]||_0xc20a3f['nLoYW']),'requestTimeout':_0xc20a3f['CrsBM'](parseInt,process[_0x388972(0xe7)]['KAFKA_REQUEST_TIMEOUT']||_0xc20a3f[_0x388972(0xb8)]),'sessionTimeout':parseInt(process['env']['KAFKA_SESSION_TIMEOUT']||_0x388972(0x118)),'heartbeatInterval':_0xc20a3f[_0x388972(0xb6)](parseInt,process[_0x388972(0xe7)]['KAFKA_HEARTBEAT_INTERVAL']||_0xc20a3f['nLoYW']),'maxBytesPerPartition':parseInt(process['env'][_0x388972(0x10a)]||_0x388972(0xec)),'autoCommit':process['env']['KAFKA_AUTO_COMMIT']==='true','autoCommitInterval':_0xc20a3f[_0x388972(0xb2)](parseInt,process['env']['KAFKA_AUTO_COMMIT_INTERVAL']||'5000'),'retryAttempts':parseInt(process[_0x388972(0xe7)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process['env'][_0x388972(0xf1)]||_0xc20a3f['pGEEU']),'retryMaxDelay':_0xc20a3f[_0x388972(0xc4)](parseInt,process[_0x388972(0xe7)]['KAFKA_RETRY_MAX_DELAY']||_0xc20a3f[_0x388972(0xdb)]),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0xc20a3f[_0x388972(0xfb)]};}['getLogLevel'](_0x2b8862){const _0x194a5b=a0_0x25c734,_0x1827b0={'nothing':logLevel[_0x194a5b(0x10e)],'error':logLevel['ERROR'],'warn':logLevel[_0x194a5b(0xdd)],'info':logLevel[_0x194a5b(0xe9)],'debug':logLevel['DEBUG']};return _0x1827b0[_0x2b8862[_0x194a5b(0xac)]()]||logLevel[_0x194a5b(0xdd)];}async['initialize'](_0x13c654={}){const _0x10ac74=a0_0x25c734,_0x196052={'MkBIY':function(_0x1b96de,_0x38eb3e){return _0x1b96de===_0x38eb3e;},'lPoYx':'default','rZVWC':function(_0x7d823a,_0x24ea95){return _0x7d823a(_0x24ea95);},'SraPH':_0x10ac74(0xbf)},_0x884a1=this[_0x10ac74(0xf5)]();if(!_0x884a1[_0x10ac74(0xdc)])return console[_0x10ac74(0xe4)](_0x196052[_0x10ac74(0xd9)]),![];if(this['isConnected'])return!![];if(this[_0x10ac74(0xf2)]&&this[_0x10ac74(0xba)])return this['connectionPromise'];return this[_0x10ac74(0xf2)]=!![],this[_0x10ac74(0xba)]=new Promise(async _0x48f020=>{const _0x569c6a=_0x10ac74;try{let _0x6032d6=undefined;_0x196052[_0x569c6a(0xf8)](process[_0x569c6a(0xe7)]['KAFKA_SSL'],_0x569c6a(0x11e))&&(_0x6032d6=!![]);let _0x9eef8d=undefined;process['env'][_0x569c6a(0xda)]&&(_0x9eef8d={'mechanism':process[_0x569c6a(0xe7)]['KAFKA_SASL_MECHANISM'],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process['env'][_0x569c6a(0x107)]||''}),this['kafka']=new Kafka({'clientId':_0x13c654[_0x569c6a(0xc2)]||_0x884a1[_0x569c6a(0xc2)],'brokers':_0x884a1['brokers'],'connectionTimeout':_0x884a1['connectionTimeout'],'requestTimeout':_0x884a1['requestTimeout'],'logLevel':this['getLogLevel'](_0x884a1['logLevel']),'ssl':_0x6032d6,'sasl':_0x9eef8d,'retry':{'initialRetryTime':_0x884a1[_0x569c6a(0xbc)],'retries':_0x884a1['retryAttempts'],'maxRetryTime':_0x884a1['retryMaxDelay']}}),this['groupId']=_0x13c654[_0x569c6a(0xfa)]||'restforge-'+(process[_0x569c6a(0xe7)]['RESTFORGE_PROJECT_NAME']||_0x196052['lPoYx'])+_0x569c6a(0x103),this[_0x569c6a(0xc7)]=this['kafka'][_0x569c6a(0xc7)]({'groupId':this['groupId'],'sessionTimeout':_0x884a1['sessionTimeout'],'heartbeatInterval':_0x884a1[_0x569c6a(0xd1)],'maxBytesPerPartition':_0x884a1[_0x569c6a(0xcd)],'allowAutoTopicCreation':![]}),await this[_0x569c6a(0xc7)][_0x569c6a(0xc1)](),this['isConnected']=!![],console['log']('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x884a1['brokers'][_0x569c6a(0xc6)](',\x20')+'\x20(groupId:\x20'+this['groupId']+')'),this['setupEventHandlers'](),_0x196052['rZVWC'](_0x48f020,!![]);}catch(_0x574616){console['error']('[KafkaConsumer]\x20Connection\x20failed:\x20'+_0x574616['message']),this['isConnected']=![],_0x196052['rZVWC'](_0x48f020,![]);}finally{this[_0x569c6a(0xf2)]=![];}}),this[_0x10ac74(0xba)];}['setupEventHandlers'](){const _0xa5fbc2=a0_0x25c734,_0x2ee068={'BBOqW':_0xa5fbc2(0xd2),'yUIPC':_0xa5fbc2(0xaf)};if(!this['consumer'])return;this['consumer']['on'](_0xa5fbc2(0x11c),()=>{const _0x3e9456=_0xa5fbc2;console['log'](_0x3e9456(0x11d)),this[_0x3e9456(0xae)]=![],this[_0x3e9456(0xbe)]=![];}),this['consumer']['on'](_0x2ee068[_0xa5fbc2(0x102)],()=>{const _0x2e06a5=_0xa5fbc2;console[_0x2e06a5(0xe4)](_0x2ee068[_0x2e06a5(0xab)]),this[_0x2e06a5(0xbe)]=![];}),this[_0xa5fbc2(0xc7)]['on']('consumer.crash',_0x5ca806=>{const _0xa4276b=_0xa5fbc2;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x5ca806[_0xa4276b(0xe6)][_0xa4276b(0x123)][_0xa4276b(0xb7)]),this[_0xa4276b(0xbe)]=![];}),this['consumer']['on'](_0xa5fbc2(0x11a),()=>{console['log']('[KafkaConsumer]\x20Consumer\x20rebalancing...');});}async[a0_0x25c734(0xc3)](_0x1ea084,_0x4219e9=![]){const _0x45ffdf=a0_0x25c734;if(!this[_0x45ffdf(0xae)])return console['error'](_0x45ffdf(0x122)),![];try{const _0x2cdecb=Array[_0x45ffdf(0x10f)](_0x1ea084)?_0x1ea084:[_0x1ea084];for(const _0x283e7c of _0x2cdecb){await this['consumer']['subscribe']({'topic':_0x283e7c,'fromBeginning':_0x4219e9}),console[_0x45ffdf(0xe4)]('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x283e7c+_0x45ffdf(0xea)+_0x4219e9+')');}return this['subscribedTopics']=[...new Set([...this['subscribedTopics'],..._0x2cdecb])],!![];}catch(_0x543666){return console[_0x45ffdf(0x123)](_0x45ffdf(0x116)+_0x543666['message']),![];}}async[a0_0x25c734(0x105)](_0x36320e,_0x244620={}){const _0x14e131=a0_0x25c734,_0x4fe8db={'PacIm':function(_0x32fa48){return _0x32fa48();},'JjgMF':function(_0x5e1534,_0x47fb49){return _0x5e1534!==_0x47fb49;}};if(!this[_0x14e131(0xae)])return console['error'](_0x14e131(0x10b)),![];if(this[_0x14e131(0xbe)])return console['log'](_0x14e131(0xe3)),!![];const _0x2648ba=this[_0x14e131(0xf5)]();this['messageHandler']=_0x36320e;try{return this[_0x14e131(0xc0)]['startTime']=new Date(),await this['consumer'][_0x14e131(0xd8)]({'autoCommit':_0x4fe8db['JjgMF'](_0x244620[_0x14e131(0xe8)],undefined)?_0x244620[_0x14e131(0xe8)]:_0x2648ba['autoCommit'],'autoCommitInterval':_0x2648ba['autoCommitInterval'],'eachMessage':async({topic:_0x665894,partition:_0x449829,message:_0x1e197e,heartbeat:_0x37f4ca})=>{const _0x2f0b4a=_0x14e131,_0x510f8b=Date[_0x2f0b4a(0xc5)]();this[_0x2f0b4a(0xc0)][_0x2f0b4a(0xe1)]++,this[_0x2f0b4a(0xc0)][_0x2f0b4a(0xb5)]=new Date();try{const _0x397d83=_0x1e197e['value']?_0x1e197e['value'][_0x2f0b4a(0x115)]():null;let _0x357064=null;try{_0x357064=_0x397d83?JSON[_0x2f0b4a(0xcf)](_0x397d83):null;}catch(_0x45e7bd){_0x357064=_0x397d83;}const _0x4e3a11={'topic':_0x665894,'partition':_0x449829,'offset':_0x1e197e['offset'],'key':_0x1e197e[_0x2f0b4a(0xb4)]?_0x1e197e[_0x2f0b4a(0xb4)]['toString']():null,'headers':this[_0x2f0b4a(0xe5)](_0x1e197e[_0x2f0b4a(0x109)]),'timestamp':_0x1e197e[_0x2f0b4a(0xc9)],'value':_0x357064,'raw':_0x397d83};this[_0x2f0b4a(0xcc)]&&await this['messageHandler'](_0x4e3a11);!_0x2648ba[_0x2f0b4a(0xe8)]&&await this['consumer'][_0x2f0b4a(0x100)]([{'topic':_0x665894,'partition':_0x449829,'offset':(parseInt(_0x1e197e['offset'])+0x1)[_0x2f0b4a(0x115)]()}]);this[_0x2f0b4a(0xc0)][_0x2f0b4a(0x113)]++;const _0x549683=Date['now']()-_0x510f8b;this[_0x2f0b4a(0xc0)]['processingTimes'][_0x2f0b4a(0xd5)](_0x549683),this['metrics']['processingTimes'][_0x2f0b4a(0x104)]>0x64&&this[_0x2f0b4a(0xc0)][_0x2f0b4a(0xf9)]['shift'](),await _0x4fe8db[_0x2f0b4a(0xa8)](_0x37f4ca);}catch(_0x1e297e){this['metrics'][_0x2f0b4a(0xff)]++,console[_0x2f0b4a(0x123)]('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x1e297e[_0x2f0b4a(0xb7)]);throw _0x1e297e;}}}),this['isRunning']=!![],console['log']('[KafkaConsumer]\x20Started\x20consuming\x20from\x20topics:\x20'+this['subscribedTopics'][_0x14e131(0xc6)](',\x20')),!![];}catch(_0x13c21b){return console['error'](_0x14e131(0xed)+_0x13c21b['message']),![];}}[a0_0x25c734(0xe5)](_0x297919){if(!_0x297919)return{};const _0x58866c={};for(const [_0x12a552,_0x18ed85]of Object['entries'](_0x297919)){_0x58866c[_0x12a552]=_0x18ed85?_0x18ed85['toString']():null;}return _0x58866c;}async[a0_0x25c734(0xbd)](){const _0x249082=a0_0x25c734,_0x20be17={'ArDYa':_0x249082(0x119),'rmAfI':_0x249082(0xb0)};if(!this[_0x249082(0xae)]||!this[_0x249082(0xbe)])return console[_0x249082(0xe4)](_0x20be17['ArDYa']),![];if(this['isPaused'])return console['log'](_0x20be17['rmAfI']),!![];try{const _0x2d6c1e=this[_0x249082(0xf4)]['map'](_0x24c7e7=>({'topic':_0x24c7e7}));return this['consumer']['pause'](_0x2d6c1e),this[_0x249082(0xc8)]=!![],console['log'](_0x249082(0xef)),!![];}catch(_0x1f32f2){return console['error'](_0x249082(0x11f)+_0x1f32f2['message']),![];}}async['resume'](){const _0x484753=a0_0x25c734,_0x43a230={'nSeBM':_0x484753(0xf6)};if(!this['isConnected']||!this[_0x484753(0xbe)])return console['log']('[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running'),![];if(!this[_0x484753(0xc8)])return console['log'](_0x43a230[_0x484753(0xe2)]),!![];try{const _0x291ba2=this['subscribedTopics'][_0x484753(0xf3)](_0x2f0510=>({'topic':_0x2f0510}));return this[_0x484753(0xc7)]['resume'](_0x291ba2),this['isPaused']=![],console[_0x484753(0xe4)]('[KafkaConsumer]\x20Consumer\x20resumed'),!![];}catch(_0xe09127){return console[_0x484753(0x123)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0xe09127['message']),![];}}async[a0_0x25c734(0x117)](){const _0x3b2b12=a0_0x25c734,_0x1e30eb={'FVFej':'[KafkaConsumer]\x20Consumer\x20not\x20connected'};if(!this['isConnected'])return console[_0x3b2b12(0xe4)](_0x1e30eb[_0x3b2b12(0xad)]),!![];try{return this[_0x3b2b12(0xc7)]&&(await this[_0x3b2b12(0xc7)][_0x3b2b12(0x117)](),await this['consumer'][_0x3b2b12(0x10c)]()),this['isConnected']=![],this['isRunning']=![],this['isPaused']=![],console['log']('[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'),!![];}catch(_0x41fc52){return console[_0x3b2b12(0x123)]('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x41fc52[_0x3b2b12(0xb7)]),![];}}async['seekToOffset'](_0x312e9c,_0x220487,_0x210be5){const _0x3b862f=a0_0x25c734,_0x5b2f1f={'LVrpT':'[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'};if(!this['isConnected'])return console[_0x3b862f(0x123)](_0x5b2f1f[_0x3b862f(0x106)]),![];try{return this['consumer']['seek']({'topic':_0x312e9c,'partition':_0x220487,'offset':_0x210be5['toString']()}),console[_0x3b862f(0xe4)](_0x3b862f(0x121)+_0x210be5+'\x20on\x20'+_0x312e9c+':'+_0x220487),!![];}catch(_0x3c04a6){return console['error'](_0x3b862f(0x101)+_0x3c04a6[_0x3b862f(0xb7)]),![];}}[a0_0x25c734(0xd3)](){const _0x251c2e=a0_0x25c734,_0x1ccb22=this[_0x251c2e(0xf5)]();return{'enabled':_0x1ccb22['enabled'],'connected':this['isConnected'],'running':this[_0x251c2e(0xbe)],'paused':this[_0x251c2e(0xc8)],'brokers':_0x1ccb22[_0x251c2e(0x110)],'clientId':_0x1ccb22['clientId'],'groupId':this[_0x251c2e(0xfa)],'subscribedTopics':this['subscribedTopics']};}[a0_0x25c734(0xcb)](){const _0x56d340=a0_0x25c734,_0x1ddd77={'VIBhO':function(_0x106827,_0x1ea218){return _0x106827/_0x1ea218;},'rxivA':function(_0x1e49b9,_0x5b5cfd){return _0x1e49b9>_0x5b5cfd;},'TDXdG':function(_0x1c7b04,_0x167b2e){return _0x1c7b04+_0x167b2e;},'OcgnY':function(_0x459c89,_0x42c664){return _0x459c89/_0x42c664;},'vGbqA':function(_0xb906cf,_0x5306f8){return _0xb906cf-_0x5306f8;},'oVMwd':function(_0x52de0c,_0x5d8e61){return _0x52de0c+_0x5d8e61;}},_0x763d5=this['metrics'][_0x56d340(0xf9)][_0x56d340(0x104)]>0x0?_0x1ddd77[_0x56d340(0xf7)](this['metrics'][_0x56d340(0xf9)]['reduce']((_0x4fef83,_0x50f766)=>_0x4fef83+_0x50f766,0x0),this[_0x56d340(0xc0)]['processingTimes']['length']):0x0,_0x3cdb0b=_0x1ddd77[_0x56d340(0xce)](this['metrics'][_0x56d340(0xf9)]['length'],0x0)?Math['min'](...this['metrics'][_0x56d340(0xf9)]):0x0,_0x1ab47f=_0x1ddd77[_0x56d340(0xce)](this['metrics']['processingTimes'][_0x56d340(0x104)],0x0)?Math[_0x56d340(0xee)](...this[_0x56d340(0xc0)]['processingTimes']):0x0;return{'messagesReceived':this[_0x56d340(0xc0)][_0x56d340(0xe1)],'messagesProcessed':this['metrics'][_0x56d340(0x113)],'messagesFailed':this['metrics']['messagesFailed'],'successRate':this[_0x56d340(0xc0)][_0x56d340(0xe1)]>0x0?_0x1ddd77['TDXdG']((this['metrics']['messagesProcessed']/this['metrics'][_0x56d340(0xe1)]*0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this['metrics'][_0x56d340(0xb5)],'startTime':this['metrics'][_0x56d340(0xfe)],'uptime':this['metrics'][_0x56d340(0xfe)]?Math[_0x56d340(0xdf)](_0x1ddd77['OcgnY'](_0x1ddd77['vGbqA'](Date[_0x56d340(0xc5)](),this[_0x56d340(0xc0)][_0x56d340(0xfe)]['getTime']()),0x3e8))+'s':'0s','processingTime':{'avg':Math[_0x56d340(0xd7)](_0x763d5)+'ms','min':_0x1ddd77[_0x56d340(0x11b)](_0x3cdb0b,'ms'),'max':_0x1ab47f+'ms'}};}[a0_0x25c734(0xaa)](){const _0x24c3af=a0_0x25c734;this[_0x24c3af(0xc0)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this[_0x24c3af(0xbe)]?new Date():null,'processingTimes':[]},console[_0x24c3af(0xe4)](_0x24c3af(0xca));}async[a0_0x25c734(0xd6)](){await this['stop']();}}function a0_0x3ec6(){const _0x11ce60=['A2fMA2fQCW','CMv0CNLezwXHEq','Cgf1C2u','AxnsDw5UAw5N','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','Bwv0CMLJCW','y29UBMvJDa','y2XPzw50swq','C3vIC2nYAwjL','q3jZqK0','BM93','AM9PBG','y29UC3vTzxi','AxnqyxvZzwq','DgLTzxn0yw1W','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','z2v0twv0CMLJCW','BwvZC2fNzuHHBMrSzxi','Bwf4qNL0zxnqzxjqyxj0AxrPB24','CNHPDKe','CgfYC2u','s0fgs0fFq09otKvdveLptL9usu1ft1vu','AgvHCNrIzwf0sw50zxj2ywW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','z2v0u3rHDhvZ','mxr6vvzprG','ChvZAa','y2XVC2u','CM91BMq','CNvU','u3jHueG','s0fgs0fFu0fttf9nruniqu5ju00','uKDhEvy','zw5HyMXLza','v0fstG','ntC3nJC5m1DQB2Pjva','zMXVB3i','C3bSAxq','BwvZC2fNzxnszwnLAxzLza','BLnLqK0','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','Bg9N','CgfYC2vizwfKzxjZ','Cgf5Bg9Hza','zw52','yxv0B0nVBw1PDa','su5gtW','icHMCM9TqMvNAw5UAw5NoIa','mtqYodKXnLz5rvPLBq','mta0odu3nG','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','Bwf4','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','mtbpt3zcB1K','s0fgs0fFuKvuuLLFrevmqvK','AxnjBML0AwfSAxPPBMC','BwfW','C3vIC2nYAwjLzfrVCgLJCW','z2v0q29UzMLN','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq','vKLcAe8','twTcsvK','ChjVy2vZC2LUz1rPBwvZ','z3jVDxbjza','zujhq3K','nJy1nZK5meLuDKvTyG','mJu0ndKZnLDYAMHSsa','C3rHCNruAw1L','BwvZC2fNzxngywLSzwq','y29TBwL0t2zMC2v0CW','w0THzMTHq29UC3vTzxjDifnLzwSGzxjYB3i6ia','Evvjuem','lwnVBNn1BwvYlwDYB3vW','BgvUz3rO','C3rHCNrdB25ZDw1PBMC','tfzYCfq','s0fgs0fFu0fttf9qqvntv09sra','mJaWndqWmgf0v0fluq','AgvHzgvYCW','s0fgs0fFtufyx0jzvevtx1bfuL9qqvjusvrjt04','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','zgLZy29UBMvJDa','lwnVBNn1BwvY','tK9useLorW','AxnbCNjHEq','yNjVA2vYCW','nZa2odu0ruXPBNvL','zxHWB3j0CW','BwvZC2fNzxnqCM9JzxnZzwq','s0fgs0fFqLjps0vsuW','Dg9tDhjPBMC','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','C3rVCa','mZaWmda','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','y29UC3vTzxiUCMvIywXHBMnPBMC','B1znD2q','y29UC3vTzxiUzgLZy29UBMvJDa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','Dhj1zq','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','mJfYwvn2yvu','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','zxjYB3i','ugfJsw0','mta2ote3mZLeBxz1uw0','CMvZzxrnzxrYAwnZ','qKjpCvC','Dg9mB3DLCKnHC2u','rLzgzwO','AxndB25Uzwn0zwq','y29UC3vTzxiUC3rVCa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','Bg9JywXOB3n0oJKWoti','B0Xktvi','mta4s3nZwvDW','A2v5','BgfZDe1LC3nHz2vuAw1L','v3nlrNC','BwvZC2fNzq','DMHNEeO','mJb3u3nmEKS','y29UBMvJDgLVBLbYB21PC2u'];a0_0x3ec6=function(){return _0x11ce60;};return a0_0x3ec6();}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){const _0x30a5d5=a0_0x25c734;instance&&(instance[_0x30a5d5(0xd6)](),instance=null);}function createInstance(){return new KafkaConsumerService();}module[a0_0x25c734(0x112)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
1
|
+
const a0_0x5cd0f9=a0_0x1f51;(function(_0x558d5e,_0x369cf5){const _0x4ba0db=a0_0x1f51,_0x59004d=_0x558d5e();while(!![]){try{const _0x29e467=parseInt(_0x4ba0db(0xaa))/0x1*(-parseInt(_0x4ba0db(0x9f))/0x2)+-parseInt(_0x4ba0db(0x7d))/0x3*(-parseInt(_0x4ba0db(0xaf))/0x4)+-parseInt(_0x4ba0db(0xcb))/0x5*(parseInt(_0x4ba0db(0x85))/0x6)+-parseInt(_0x4ba0db(0xcc))/0x7*(-parseInt(_0x4ba0db(0x75))/0x8)+parseInt(_0x4ba0db(0xa1))/0x9*(parseInt(_0x4ba0db(0xb8))/0xa)+parseInt(_0x4ba0db(0x7c))/0xb*(parseInt(_0x4ba0db(0xd0))/0xc)+-parseInt(_0x4ba0db(0x8f))/0xd*(parseInt(_0x4ba0db(0x77))/0xe);if(_0x29e467===_0x369cf5)break;else _0x59004d['push'](_0x59004d['shift']());}catch(_0x5ae1a4){_0x59004d['push'](_0x59004d['shift']());}}}(a0_0x422f,0x5229d));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require('uuid');class KafkaConsumerService{constructor(){const _0x82d148=a0_0x1f51,_0xd37daf={'YAUgI':'0|2|5|1|4|8|9|7|6|10|3'},_0x1f29b2=_0xd37daf['YAUgI'][_0x82d148(0xa7)]('|');let _0x321165=0x0;while(!![]){switch(_0x1f29b2[_0x321165++]){case'0':this['kafka']=null;continue;case'1':this[_0x82d148(0x98)]=![];continue;case'2':this['consumer']=null;continue;case'3':this[_0x82d148(0x99)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};continue;case'4':this[_0x82d148(0xdb)]=![];continue;case'5':this[_0x82d148(0x7b)]=![];continue;case'6':this['groupId']=null;continue;case'7':this[_0x82d148(0x9e)]=[];continue;case'8':this[_0x82d148(0x74)]=![];continue;case'9':this[_0x82d148(0xd8)]=null;continue;case'10':this[_0x82d148(0xc1)]=null;continue;}break;}}[a0_0x5cd0f9(0x82)](){const _0x1b1e4e=a0_0x5cd0f9,_0x356faa={'MIpJz':'true','evFfL':_0x1b1e4e(0xd7),'BYaOg':function(_0x15ceb8,_0x5889e5){return _0x15ceb8(_0x5889e5);},'LVoPb':_0x1b1e4e(0xbd),'QCFXH':'3000','JlgSS':'1048576','VAtnL':_0x1b1e4e(0xe0),'Vqgzn':'1000','lXBtP':function(_0x336be4,_0x5163b6){return _0x336be4(_0x5163b6);}};return{'enabled':process['env'][_0x1b1e4e(0xd1)]===_0x356faa[_0x1b1e4e(0xc9)],'brokers':(process[_0x1b1e4e(0xce)]['KAFKA_BROKERS']||_0x1b1e4e(0x8d))[_0x1b1e4e(0xa7)](','),'clientId':process['env']['KAFKA_CLIENT_ID']||_0x1b1e4e(0xdc)+(process[_0x1b1e4e(0xce)]['RESTFORGE_PROJECT_NAME']||_0x356faa['evFfL'])+'-consumer','connectionTimeout':_0x356faa['BYaOg'](parseInt,process[_0x1b1e4e(0xce)]['KAFKA_CONNECTION_TIMEOUT']||_0x1b1e4e(0x86)),'requestTimeout':parseInt(process[_0x1b1e4e(0xce)][_0x1b1e4e(0x88)]||_0x356faa[_0x1b1e4e(0xab)]),'sessionTimeout':parseInt(process[_0x1b1e4e(0xce)][_0x1b1e4e(0xd3)]||_0x1b1e4e(0xa4)),'heartbeatInterval':parseInt(process[_0x1b1e4e(0xce)]['KAFKA_HEARTBEAT_INTERVAL']||_0x356faa['QCFXH']),'maxBytesPerPartition':parseInt(process[_0x1b1e4e(0xce)][_0x1b1e4e(0xac)]||_0x356faa['JlgSS']),'autoCommit':process[_0x1b1e4e(0xce)]['KAFKA_AUTO_COMMIT']==='true','autoCommitInterval':parseInt(process[_0x1b1e4e(0xce)]['KAFKA_AUTO_COMMIT_INTERVAL']||_0x356faa['VAtnL']),'retryAttempts':parseInt(process[_0x1b1e4e(0xce)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process['env'][_0x1b1e4e(0xb4)]||_0x356faa['Vqgzn']),'retryMaxDelay':_0x356faa[_0x1b1e4e(0xb1)](parseInt,process['env']['KAFKA_RETRY_MAX_DELAY']||_0x1b1e4e(0xa4)),'logLevel':process[_0x1b1e4e(0xce)]['KAFKA_LOG_LEVEL']||_0x1b1e4e(0x76)};}[a0_0x5cd0f9(0xad)](_0x3ac3df){const _0x45ec98=a0_0x5cd0f9,_0x5b1904={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel[_0x45ec98(0xc0)],'info':logLevel[_0x45ec98(0xc5)],'debug':logLevel['DEBUG']};return _0x5b1904[_0x3ac3df[_0x45ec98(0xc6)]()]||logLevel['WARN'];}async[a0_0x5cd0f9(0xd6)](_0x472db0={}){const _0xedfa4c=a0_0x5cd0f9,_0x415feb={'zJDpk':_0xedfa4c(0x73),'vVplK':_0xedfa4c(0xd7),'oXrsB':_0xedfa4c(0x9d)},_0x141d73=this['getConfig']();if(!_0x141d73['enabled'])return console[_0xedfa4c(0x96)](_0x415feb['oXrsB']),![];if(this[_0xedfa4c(0x7b)])return!![];if(this[_0xedfa4c(0x98)]&&this['connectionPromise'])return this['connectionPromise'];return this[_0xedfa4c(0x98)]=!![],this['connectionPromise']=new Promise(async _0x3b70cc=>{const _0x31716f=_0xedfa4c;try{let _0x3db1ab=undefined;process['env'][_0x31716f(0xa0)]===_0x415feb['zJDpk']&&(_0x3db1ab=!![]);let _0x43a441=undefined;process['env'][_0x31716f(0x8e)]&&(_0x43a441={'mechanism':process[_0x31716f(0xce)]['KAFKA_SASL_MECHANISM'],'username':process[_0x31716f(0xce)]['KAFKA_SASL_USERNAME']||'','password':process[_0x31716f(0xce)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x472db0[_0x31716f(0x94)]||_0x141d73['clientId'],'brokers':_0x141d73[_0x31716f(0x84)],'connectionTimeout':_0x141d73[_0x31716f(0x9a)],'requestTimeout':_0x141d73[_0x31716f(0x97)],'logLevel':this['getLogLevel'](_0x141d73['logLevel']),'ssl':_0x3db1ab,'sasl':_0x43a441,'retry':{'initialRetryTime':_0x141d73[_0x31716f(0x92)],'retries':_0x141d73['retryAttempts'],'maxRetryTime':_0x141d73[_0x31716f(0x90)]}}),this[_0x31716f(0xc4)]=_0x472db0['groupId']||'restforge-'+(process[_0x31716f(0xce)]['RESTFORGE_PROJECT_NAME']||_0x415feb[_0x31716f(0xa9)])+'-consumer-group',this[_0x31716f(0xc3)]=this['kafka']['consumer']({'groupId':this['groupId'],'sessionTimeout':_0x141d73['sessionTimeout'],'heartbeatInterval':_0x141d73[_0x31716f(0xb6)],'maxBytesPerPartition':_0x141d73[_0x31716f(0xa2)],'allowAutoTopicCreation':![]}),await this[_0x31716f(0xc3)]['connect'](),this['isConnected']=!![],console[_0x31716f(0x96)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x141d73[_0x31716f(0x84)][_0x31716f(0xd4)](',\x20')+'\x20(groupId:\x20'+this['groupId']+')'),this['setupEventHandlers'](),_0x3b70cc(!![]);}catch(_0x511ef2){console[_0x31716f(0xdf)]('[KafkaConsumer]\x20Connection\x20failed:\x20'+_0x511ef2['message']),this[_0x31716f(0x7b)]=![],_0x3b70cc(![]);}finally{this[_0x31716f(0x98)]=![];}}),this['connectionPromise'];}[a0_0x5cd0f9(0xc7)](){const _0xfa884e=a0_0x5cd0f9,_0x49b236={'xsJmW':'[KafkaConsumer]\x20Consumer\x20disconnected','qVKGz':'consumer.crash'};if(!this['consumer'])return;this['consumer']['on'](_0xfa884e(0xb2),()=>{const _0x3bfa11=_0xfa884e;console['log'](_0x49b236['xsJmW']),this['isConnected']=![],this[_0x3bfa11(0xdb)]=![];}),this['consumer']['on']('consumer.stop',()=>{const _0x3f0d0b=_0xfa884e;console[_0x3f0d0b(0x96)](_0x3f0d0b(0x8b)),this[_0x3f0d0b(0xdb)]=![];}),this[_0xfa884e(0xc3)]['on'](_0x49b236['qVKGz'],_0x2964bb=>{const _0x3414aa=_0xfa884e;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x2964bb['payload']['error'][_0x3414aa(0x8a)]),this['isRunning']=![];}),this['consumer']['on'](_0xfa884e(0xb0),()=>{const _0x101140=_0xfa884e;console[_0x101140(0x96)]('[KafkaConsumer]\x20Consumer\x20rebalancing...');});}async['subscribe'](_0x1d4183,_0x554575=![]){const _0x1828f8=a0_0x5cd0f9,_0x122ea8={'wGjrX':_0x1828f8(0xcf)};if(!this['isConnected'])return console[_0x1828f8(0xdf)](_0x122ea8['wGjrX']),![];try{const _0x387eed=Array['isArray'](_0x1d4183)?_0x1d4183:[_0x1d4183];for(const _0x2368b2 of _0x387eed){await this[_0x1828f8(0xc3)]['subscribe']({'topic':_0x2368b2,'fromBeginning':_0x554575}),console['log'](_0x1828f8(0xe1)+_0x2368b2+'\x20(fromBeginning:\x20'+_0x554575+')');}return this[_0x1828f8(0x9e)]=[...new Set([...this['subscribedTopics'],..._0x387eed])],!![];}catch(_0x20fd3a){return console[_0x1828f8(0xdf)]('[KafkaConsumer]\x20Subscribe\x20error:\x20'+_0x20fd3a[_0x1828f8(0x8a)]),![];}}async['startConsuming'](_0xb31ca3,_0x360806={}){const _0x17e511=a0_0x5cd0f9,_0x63c826={'IAPjW':function(_0x2ec051,_0x23fdc1){return _0x2ec051+_0x23fdc1;},'apwbg':function(_0x278f9e,_0x3c8609){return _0x278f9e(_0x3c8609);},'BpSuk':function(_0x58963c,_0x26fb33){return _0x58963c-_0x26fb33;},'zMBAq':function(_0x4af395,_0x5b0ab1){return _0x4af395>_0x5b0ab1;},'keVxB':function(_0x4758f0){return _0x4758f0();},'Gtchr':'[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected','CVVUl':_0x17e511(0x9b),'fjVvt':function(_0x42b370,_0x5e458c){return _0x42b370!==_0x5e458c;}};if(!this['isConnected'])return console['error'](_0x63c826[_0x17e511(0x8c)]),![];if(this['isRunning'])return console['log'](_0x63c826['CVVUl']),!![];const _0x4b13fc=this[_0x17e511(0x82)]();this['messageHandler']=_0xb31ca3;try{return this[_0x17e511(0x99)][_0x17e511(0xcd)]=new Date(),await this[_0x17e511(0xc3)][_0x17e511(0x95)]({'autoCommit':_0x63c826[_0x17e511(0xb9)](_0x360806[_0x17e511(0xd9)],undefined)?_0x360806['autoCommit']:_0x4b13fc[_0x17e511(0xd9)],'autoCommitInterval':_0x4b13fc['autoCommitInterval'],'eachMessage':async({topic:_0x5bdf0e,partition:_0x15c0e9,message:_0x1d7e0e,heartbeat:_0x26476e})=>{const _0x58ef7a=_0x17e511,_0x142ed9=Date[_0x58ef7a(0xa3)]();this['metrics']['messagesReceived']++,this[_0x58ef7a(0x99)][_0x58ef7a(0xae)]=new Date();try{const _0x3a0f13=_0x1d7e0e['value']?_0x1d7e0e['value']['toString']():null;let _0x49963d=null;try{_0x49963d=_0x3a0f13?JSON['parse'](_0x3a0f13):null;}catch(_0x2b9962){_0x49963d=_0x3a0f13;}const _0x1d4e1b={'topic':_0x5bdf0e,'partition':_0x15c0e9,'offset':_0x1d7e0e['offset'],'key':_0x1d7e0e[_0x58ef7a(0x93)]?_0x1d7e0e[_0x58ef7a(0x93)][_0x58ef7a(0x81)]():null,'headers':this[_0x58ef7a(0xbe)](_0x1d7e0e[_0x58ef7a(0xe2)]),'timestamp':_0x1d7e0e['timestamp'],'value':_0x49963d,'raw':_0x3a0f13};this['messageHandler']&&await this['messageHandler'](_0x1d4e1b);!_0x4b13fc['autoCommit']&&await this['consumer']['commitOffsets']([{'topic':_0x5bdf0e,'partition':_0x15c0e9,'offset':_0x63c826[_0x58ef7a(0xdd)](_0x63c826['apwbg'](parseInt,_0x1d7e0e['offset']),0x1)[_0x58ef7a(0x81)]()}]);this[_0x58ef7a(0x99)]['messagesProcessed']++;const _0x155dab=_0x63c826[_0x58ef7a(0xc2)](Date[_0x58ef7a(0xa3)](),_0x142ed9);this['metrics']['processingTimes'][_0x58ef7a(0xd5)](_0x155dab),_0x63c826['zMBAq'](this[_0x58ef7a(0x99)]['processingTimes'][_0x58ef7a(0x87)],0x64)&&this[_0x58ef7a(0x99)][_0x58ef7a(0xa6)][_0x58ef7a(0x7e)](),await _0x63c826['keVxB'](_0x26476e);}catch(_0x48fece){this[_0x58ef7a(0x99)]['messagesFailed']++,console['error'](_0x58ef7a(0xa5)+_0x48fece[_0x58ef7a(0x8a)]);throw _0x48fece;}}}),this['isRunning']=!![],console['log']('[KafkaConsumer]\x20Started\x20consuming\x20from\x20topics:\x20'+this[_0x17e511(0x9e)]['join'](',\x20')),!![];}catch(_0x3489fb){return console[_0x17e511(0xdf)](_0x17e511(0x9c)+_0x3489fb[_0x17e511(0x8a)]),![];}}[a0_0x5cd0f9(0xbe)](_0x53610a){const _0x194e5a=a0_0x5cd0f9;if(!_0x53610a)return{};const _0x3cb890={};for(const [_0x5643e3,_0x24a496]of Object['entries'](_0x53610a)){_0x3cb890[_0x5643e3]=_0x24a496?_0x24a496[_0x194e5a(0x81)]():null;}return _0x3cb890;}async[a0_0x5cd0f9(0xb7)](){const _0xb1a490=a0_0x5cd0f9,_0x55cdc1={'BMpzk':'[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running','XSZuJ':_0xb1a490(0xc8)};if(!this['isConnected']||!this[_0xb1a490(0xdb)])return console[_0xb1a490(0x96)](_0x55cdc1[_0xb1a490(0x89)]),![];if(this['isPaused'])return console[_0xb1a490(0x96)](_0xb1a490(0xca)),!![];try{const _0x224835=this[_0xb1a490(0x9e)]['map'](_0x5e4384=>({'topic':_0x5e4384}));return this[_0xb1a490(0xc3)][_0xb1a490(0xb7)](_0x224835),this['isPaused']=!![],console[_0xb1a490(0x96)](_0x55cdc1['XSZuJ']),!![];}catch(_0x2969f0){return console[_0xb1a490(0xdf)](_0xb1a490(0xd2)+_0x2969f0[_0xb1a490(0x8a)]),![];}}async['resume'](){const _0x31f746=a0_0x5cd0f9,_0x4e0e71={'RZnuw':_0x31f746(0xbf)};if(!this['isConnected']||!this[_0x31f746(0xdb)])return console['log']('[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running'),![];if(!this[_0x31f746(0x74)])return console[_0x31f746(0x96)]('[KafkaConsumer]\x20Consumer\x20not\x20paused'),!![];try{const _0x13c0dc=this['subscribedTopics'][_0x31f746(0xbc)](_0x887d03=>({'topic':_0x887d03}));return this['consumer']['resume'](_0x13c0dc),this[_0x31f746(0x74)]=![],console['log'](_0x4e0e71['RZnuw']),!![];}catch(_0x32bdd9){return console[_0x31f746(0xdf)](_0x31f746(0xb5)+_0x32bdd9[_0x31f746(0x8a)]),![];}}async[a0_0x5cd0f9(0xde)](){const _0x5c366c=a0_0x5cd0f9;if(!this['isConnected'])return console[_0x5c366c(0x96)]('[KafkaConsumer]\x20Consumer\x20not\x20connected'),!![];try{const _0x3a1808='5|4|1|0|3|2'[_0x5c366c(0xa7)]('|');let _0x561f7b=0x0;while(!![]){switch(_0x3a1808[_0x561f7b++]){case'0':this[_0x5c366c(0x74)]=![];continue;case'1':this[_0x5c366c(0xdb)]=![];continue;case'2':return!![];case'3':console['log']('[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected');continue;case'4':this[_0x5c366c(0x7b)]=![];continue;case'5':this['consumer']&&(await this['consumer']['stop'](),await this[_0x5c366c(0xc3)]['disconnect']());continue;}break;}}catch(_0x1742df){return console[_0x5c366c(0xdf)]('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x1742df[_0x5c366c(0x8a)]),![];}}async['seekToOffset'](_0x4747be,_0x25f8b1,_0x54a8ca){const _0x178eb6=a0_0x5cd0f9;if(!this[_0x178eb6(0x7b)])return console['error'](_0x178eb6(0xa8)),![];try{return this['consumer']['seek']({'topic':_0x4747be,'partition':_0x25f8b1,'offset':_0x54a8ca['toString']()}),console['log']('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x54a8ca+'\x20on\x20'+_0x4747be+':'+_0x25f8b1),!![];}catch(_0xd64cf3){return console['error']('[KafkaConsumer]\x20Seek\x20error:\x20'+_0xd64cf3[_0x178eb6(0x8a)]),![];}}[a0_0x5cd0f9(0xb3)](){const _0xdce56b=a0_0x5cd0f9,_0x44908a=this[_0xdce56b(0x82)]();return{'enabled':_0x44908a['enabled'],'connected':this['isConnected'],'running':this['isRunning'],'paused':this[_0xdce56b(0x74)],'brokers':_0x44908a[_0xdce56b(0x84)],'clientId':_0x44908a['clientId'],'groupId':this['groupId'],'subscribedTopics':this['subscribedTopics']};}[a0_0x5cd0f9(0x7f)](){const _0x51a606=a0_0x5cd0f9,_0x987545={'cgRPY':function(_0x39d54f,_0x4bb96b){return _0x39d54f/_0x4bb96b;},'qPvgj':function(_0x5b90e6,_0x14b474){return _0x5b90e6>_0x14b474;},'VunzE':function(_0x5b6661,_0x4c9517){return _0x5b6661+_0x4c9517;},'YvwQM':function(_0x4586cd,_0x90609c){return _0x4586cd/_0x90609c;}},_0x492190=this[_0x51a606(0x99)]['processingTimes'][_0x51a606(0x87)]>0x0?_0x987545['cgRPY'](this['metrics']['processingTimes'][_0x51a606(0xba)]((_0x128352,_0x14f5ad)=>_0x128352+_0x14f5ad,0x0),this['metrics'][_0x51a606(0xa6)]['length']):0x0,_0x854eaa=_0x987545['qPvgj'](this['metrics']['processingTimes'][_0x51a606(0x87)],0x0)?Math[_0x51a606(0x91)](...this['metrics']['processingTimes']):0x0,_0x2efd33=_0x987545['qPvgj'](this['metrics'][_0x51a606(0xa6)]['length'],0x0)?Math['max'](...this['metrics'][_0x51a606(0xa6)]):0x0;return{'messagesReceived':this[_0x51a606(0x99)]['messagesReceived'],'messagesProcessed':this['metrics'][_0x51a606(0x78)],'messagesFailed':this['metrics']['messagesFailed'],'successRate':this['metrics'][_0x51a606(0x79)]>0x0?(this[_0x51a606(0x99)]['messagesProcessed']/this['metrics'][_0x51a606(0x79)]*0x64)['toFixed'](0x2)+'%':'0%','lastMessageTime':this[_0x51a606(0x99)][_0x51a606(0xae)],'startTime':this[_0x51a606(0x99)][_0x51a606(0xcd)],'uptime':this[_0x51a606(0x99)][_0x51a606(0xcd)]?_0x987545[_0x51a606(0x83)](Math['floor'](_0x987545[_0x51a606(0xda)](Date[_0x51a606(0xa3)]()-this[_0x51a606(0x99)]['startTime'][_0x51a606(0xbb)](),0x3e8)),'s'):'0s','processingTime':{'avg':_0x987545['VunzE'](Math['round'](_0x492190),'ms'),'min':_0x854eaa+'ms','max':_0x987545['VunzE'](_0x2efd33,'ms')}};}[a0_0x5cd0f9(0x80)](){const _0x1604f3=a0_0x5cd0f9;this[_0x1604f3(0x99)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console['log']('[KafkaConsumer]\x20Metrics\x20reset');}async['close'](){await this['stop']();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function a0_0x1f51(_0xc084f0,_0x5d6e12){_0xc084f0=_0xc084f0-0x73;const _0x422ffb=a0_0x422f();let _0x1f51d4=_0x422ffb[_0xc084f0];if(a0_0x1f51['XBrSYs']===undefined){var _0x41e0bb=function(_0xe7da39){const _0x3c3b44='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x10424f='',_0x50ccf2='';for(let _0x3f7232=0x0,_0x3e9268,_0x55997a,_0x4aad20=0x0;_0x55997a=_0xe7da39['charAt'](_0x4aad20++);~_0x55997a&&(_0x3e9268=_0x3f7232%0x4?_0x3e9268*0x40+_0x55997a:_0x55997a,_0x3f7232++%0x4)?_0x10424f+=String['fromCharCode'](0xff&_0x3e9268>>(-0x2*_0x3f7232&0x6)):0x0){_0x55997a=_0x3c3b44['indexOf'](_0x55997a);}for(let _0x205d0a=0x0,_0x5a07e0=_0x10424f['length'];_0x205d0a<_0x5a07e0;_0x205d0a++){_0x50ccf2+='%'+('00'+_0x10424f['charCodeAt'](_0x205d0a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x50ccf2);};a0_0x1f51['rALwCo']=_0x41e0bb,a0_0x1f51['ZguSBz']={},a0_0x1f51['XBrSYs']=!![];}const _0x16b866=_0x422ffb[0x0],_0x162720=_0xc084f0+_0x16b866,_0x187191=a0_0x1f51['ZguSBz'][_0x162720];return!_0x187191?(_0x1f51d4=a0_0x1f51['rALwCo'](_0x1f51d4),a0_0x1f51['ZguSBz'][_0x162720]=_0x1f51d4):_0x1f51d4=_0x187191,_0x1f51d4;}function a0_0x422f(){const _0x1c0eaf=['nti4mdGZDhLVsvz1','tfzVugi','s0fgs0fFtufyx0jzvevtx1bfuL9qqvjusvrjt04','z2v0tg9Ntgv2zwW','BgfZDe1LC3nHz2vuAw1L','ndG4uvjis3jK','y29UC3vTzxiUCMvIywXHBMnPBMC','BfHcDfa','y29UC3vTzxiUzgLZy29UBMvJDa','z2v0u3rHDhvZ','s0fgs0fFuKvuuLLFrevmqvK','w0THzMTHq29UC3vTzxjDifjLC3vTzsbLCNjVCJOG','AgvHCNrIzwf0sw50zxj2ywW','Cgf1C2u','oda3mhL1C256wG','zMPwDNq','CMvKDwnL','z2v0vgLTzq','BwfW','mJuWmda','CgfYC2vizwfKzxjZ','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','v0fstG','BwvZC2fNzuHHBMrSzxi','qNbtDwS','y29UC3vTzxi','z3jVDxbjza','su5gtW','Dg9mB3DLCKnHC2u','C2v0DxbfDMvUDeHHBMrSzxjZ','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','tuLWsNO','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','nJa4mJeWvuvZwvrK','mtmYmZDnsM1Ay2K','C3rHCNruAw1L','zw52','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','nteYmJq2ngPiBfPKEa','s0fgs0fFru5bqKXfra','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','s0fgs0fFu0vtu0LptL9usu1ft1vu','AM9PBG','ChvZAa','Aw5PDgLHBgL6zq','zgvMyxvSDa','y29UBMvJDgLVBLbYB21PC2u','yxv0B0nVBw1PDa','wxz3uu0','AxnsDw5UAw5N','CMvZDgzVCMDLlq','sufqALC','C3rVCa','zxjYB3i','ntaWma','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzwqGDg8GDg9WAwm6ia','AgvHzgvYCW','Dhj1zq','AxnqyxvZzwq','og5zDMfUDG','D2fYBG','ndjpz3flqxO','BwvZC2fNzxnqCM9JzxnZzwq','BwvZC2fNzxnszwnLAxzLza','zxHWB3j0CW','AxndB25Uzwn0zwq','mtfSr3rgyxC','mZy0mND0Egj6tq','C2HPzNq','z2v0twv0CMLJCW','CMvZzxrnzxrYAwnZ','Dg9tDhjPBMC','z2v0q29UzMLN','vNvUEKu','yNjVA2vYCW','nKTQqNLVrq','mZaWma','BgvUz3rO','s0fgs0fFuKvrvuvtvf9usu1ft1vu','qK1WEMS','BwvZC2fNzq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','r3rJAhi','Bg9JywXOB3n0oJKWoti','s0fgs0fFu0fttf9nruniqu5ju00','mJC4nJK0BfD6ufPJ','CMv0CNLnyxHezwXHEq','BwLU','CMv0CNLezwXHEq','A2v5','y2XPzw50swq','CNvU','Bg9N','CMvXDwvZDfrPBwvVDxq','AxnjBML0AwfSAxPPBMC','Bwv0CMLJCW','y29UBMvJDgLVBLrPBwvVDxq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','C3vIC2nYAwjLzfrVCgLJCW','mNjorezsrG','s0fgs0fFu1nm','nti4m3Hcs1nfvW','Bwf4qNL0zxnqzxjqyxj0AxrPB24','BM93','mZaWmda','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','ChjVy2vZC2LUz1rPBwvZ','C3bSAxq','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','DLzWBeS'];a0_0x422f=function(){return _0x1c0eaf;};return a0_0x422f();}function resetInstance(){instance&&(instance['close'](),instance=null);}function createInstance(){return new KafkaConsumerService();}module[a0_0x5cd0f9(0x7a)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x2e22a0=a0_0x2bec;(function(_0x1f9eeb,_0xec7195){const _0x5cb839=a0_0x2bec,_0x22414f=_0x1f9eeb();while(!![]){try{const _0x3cf353=parseInt(_0x5cb839(0x14d))/0x1+-parseInt(_0x5cb839(0x176))/0x2*(parseInt(_0x5cb839(0x14f))/0x3)+parseInt(_0x5cb839(0x151))/0x4+parseInt(_0x5cb839(0x17c))/0x5*(-parseInt(_0x5cb839(0x18a))/0x6)+-parseInt(_0x5cb839(0x166))/0x7+-parseInt(_0x5cb839(0x17d))/0x8*(-parseInt(_0x5cb839(0x169))/0x9)+-parseInt(_0x5cb839(0x15a))/0xa*(parseInt(_0x5cb839(0x16f))/0xb);if(_0x3cf353===_0xec7195)break;else _0x22414f['push'](_0x22414f['shift']());}catch(_0x3d6b17){_0x22414f['push'](_0x22414f['shift']());}}}(a0_0x3e3d,0x4985d));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require('uuid');class KafkaService{constructor(){const _0x2f6975=a0_0x2bec;this['kafka']=null,this[_0x2f6975(0x18e)]=null,this[_0x2f6975(0x187)]=![],this['isInitializing']=![],this[_0x2f6975(0x14a)]=null;}['getConfig'](){const _0x5113a2=a0_0x2bec,_0x2ba2a7={'Edtaj':function(_0x338ab1,_0xddda6c){return _0x338ab1===_0xddda6c;},'bWMcA':_0x5113a2(0x184),'rTyYe':'3000','ifgAP':function(_0x18fb03,_0x58e7fb){return _0x18fb03(_0x58e7fb);},'MRFMm':'25000','Urhbw':'1000'};return{'enabled':_0x2ba2a7['Edtaj'](process[_0x5113a2(0x145)][_0x5113a2(0x188)],'true'),'brokers':(process[_0x5113a2(0x145)][_0x5113a2(0x186)]||_0x2ba2a7[_0x5113a2(0x163)])['split'](','),'clientId':process['env']['KAFKA_CLIENT_ID']||_0x5113a2(0x156)+(process['env'][_0x5113a2(0x16c)]||'default')+'-producer','connectionTimeout':parseInt(process['env']['KAFKA_CONNECTION_TIMEOUT']||_0x2ba2a7['rTyYe']),'requestTimeout':_0x2ba2a7[_0x5113a2(0x173)](parseInt,process['env']['KAFKA_REQUEST_TIMEOUT']||_0x2ba2a7[_0x5113a2(0x161)]),'topicPattern':process[_0x5113a2(0x145)]['KAFKA_TOPIC_PATTERN']||_0x5113a2(0x183),'tenantId':process[_0x5113a2(0x145)]['KAFKA_TENANT_ID']||_0x5113a2(0x18f),'retryAttempts':_0x2ba2a7[_0x5113a2(0x173)](parseInt,process['env'][_0x5113a2(0x152)]||'3'),'retryDelay':_0x2ba2a7['ifgAP'](parseInt,process['env'][_0x5113a2(0x190)]||_0x2ba2a7['Urhbw']),'logLevel':process[_0x5113a2(0x145)]['KAFKA_LOG_LEVEL']||'warn'};}['getLogLevel'](_0xe91350){const _0x53e25e=a0_0x2bec,_0x2e4892={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x2e4892[_0xe91350['toLowerCase']()]||logLevel[_0x53e25e(0x178)];}async['initialize'](){const _0x29e246=a0_0x2bec,_0x23c843={'ngmrx':function(_0x1081f8,_0x41bcf4){return _0x1081f8===_0x41bcf4;},'dfePs':function(_0x5af21a,_0x1afafb){return _0x5af21a(_0x1afafb);}},_0x49cc4f=this['getConfig']();if(!_0x49cc4f['enabled'])return console[_0x29e246(0x162)]('[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'),![];if(this['isConnected'])return!![];if(this['isInitializing']&&this[_0x29e246(0x14a)])return this['connectionPromise'];return this[_0x29e246(0x167)]=!![],this['connectionPromise']=new Promise(async _0x21fbb7=>{const _0x338524=_0x29e246;try{let _0x333454=undefined;_0x23c843['ngmrx'](process['env']['KAFKA_SSL'],'true')&&(_0x333454=!![]);let _0x53b771=undefined;process[_0x338524(0x145)]['KAFKA_SASL_MECHANISM']&&(_0x53b771={'mechanism':process['env'][_0x338524(0x15c)],'username':process[_0x338524(0x145)][_0x338524(0x164)]||'','password':process['env'][_0x338524(0x159)]||''}),this['kafka']=new Kafka({'clientId':_0x49cc4f[_0x338524(0x147)],'brokers':_0x49cc4f[_0x338524(0x177)],'connectionTimeout':_0x49cc4f['connectionTimeout'],'requestTimeout':_0x49cc4f[_0x338524(0x191)],'logLevel':this['getLogLevel'](_0x49cc4f[_0x338524(0x17a)]),'ssl':_0x333454,'sasl':_0x53b771,'retry':{'initialRetryTime':_0x49cc4f['retryDelay'],'retries':_0x49cc4f['retryAttempts']}}),this[_0x338524(0x18e)]=this[_0x338524(0x146)]['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x338524(0x18d)]}),await this['producer']['connect'](),this[_0x338524(0x187)]=!![],console['log']('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x49cc4f['brokers']['join'](',\x20')),this[_0x338524(0x18e)]['on']('producer.disconnect',()=>{const _0x253083=_0x338524;console['log'](_0x253083(0x14e)),this['isConnected']=![];}),_0x23c843['dfePs'](_0x21fbb7,!![]);}catch(_0x1b89ca){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x1b89ca[_0x338524(0x150)]),this['isConnected']=![],_0x23c843['dfePs'](_0x21fbb7,![]);}finally{this['isInitializing']=![];}}),this['connectionPromise'];}[a0_0x2e22a0(0x14b)](_0x3f39ea){const _0x3f9f3f=a0_0x2e22a0,_0x3e03fb={'ITZbJ':function(_0x9a1e7,_0x16d0c7){return _0x9a1e7(_0x16d0c7);},'yLZMS':function(_0x81e337,_0x4091b9){return _0x81e337(_0x4091b9);}},_0x2f4d4c=_0x3f39ea||new Date(),_0x340641=_0x2f4d4c[_0x3f9f3f(0x165)](),_0x5b7a02=String(_0x2f4d4c['getMonth']()+0x1)[_0x3f9f3f(0x149)](0x2,'0'),_0x3f5013=String(_0x2f4d4c['getDate']())['padStart'](0x2,'0'),_0x1bee55=_0x3e03fb[_0x3f9f3f(0x153)](String,_0x2f4d4c['getHours']())['padStart'](0x2,'0'),_0x455e56=_0x3e03fb['yLZMS'](String,_0x2f4d4c[_0x3f9f3f(0x16b)]())['padStart'](0x2,'0'),_0xaff3df=_0x3e03fb[_0x3f9f3f(0x175)](String,_0x2f4d4c[_0x3f9f3f(0x15e)]())[_0x3f9f3f(0x149)](0x2,'0');return _0x340641+'-'+_0x5b7a02+'-'+_0x3f5013+'\x20'+_0x1bee55+':'+_0x455e56+':'+_0xaff3df;}['buildTopicName'](_0x5849c5,_0x1e65a8,_0x34b8f2,_0x5e7d19=null){const _0x57af2c=a0_0x2e22a0,_0x56e388={'rEreV':_0x57af2c(0x154)};if(_0x5e7d19)return _0x5e7d19;const _0xa4e3e1=this['getConfig']()[_0x57af2c(0x18c)];return _0xa4e3e1[_0x57af2c(0x172)]('{module}',_0x5849c5)[_0x57af2c(0x172)](_0x57af2c(0x189),_0x1e65a8)[_0x57af2c(0x172)](_0x56e388['rEreV'],_0x34b8f2);}['buildEventMessage'](_0x17bb10,_0x4352b2,_0x2c942e,_0x5cc522={}){const _0x3c4029=a0_0x2e22a0,_0xfb818d={'pluUt':_0x3c4029(0x18b),'HqrLY':'SYSTEM','rpUYJ':'unknown'},_0x594104=new Date(),_0x450863=this['formatDateTime'](_0x594104),_0xc1a60e=_0x5cc522['correlationId']||'corr-'+uuidv7();return{'eventId':_0x3c4029(0x14c)+uuidv7(),'eventType':_0x17bb10,'eventTime':_0x450863,'eventVersion':_0xfb818d[_0x3c4029(0x185)],'source':_0x3c4029(0x156)+(_0x5cc522[_0x3c4029(0x157)]||_0x3c4029(0x179)),'correlationId':_0xc1a60e,'newData':_0x2c942e,'oldData':_0x4352b2,'metadata':{'createdBy':_0x5cc522['createdBy']||_0xfb818d['HqrLY'],'createdAt':_0x450863,'systemId':'RESTFORGE-'+(_0x5cc522['module']||_0xfb818d['rpUYJ'])[_0x3c4029(0x181)](),'tenantId':this['getConfig']()['tenantId'],'endpoint':_0x5cc522['endpoint']||null,'tableName':_0x5cc522['tableName']||null}};}async['publishEvent'](_0x4058e5,_0x509927,_0x50e729,_0x48e477,_0x2e6866={}){const _0x99a20d=a0_0x2e22a0,_0x5203cc={'OjBrn':'Kafka\x20producer\x20is\x20disabled','ugaor':_0x99a20d(0x180)},_0x563ee4=this[_0x99a20d(0x16a)]();if(!_0x563ee4['enabled'])return{'success':![],'reason':_0x5203cc['OjBrn'],'published':![]};if(!this['isConnected']){const _0x588ae6=await this['initialize']();if(!_0x588ae6)return{'success':![],'reason':_0x5203cc['ugaor'],'published':![]};}try{const _0x3fdefa=this[_0x99a20d(0x143)](_0x509927,_0x50e729,_0x48e477,_0x2e6866),_0x599458=_0x2e6866['keyField']||'id',_0x472f45=_0x48e477?.[_0x599458]||_0x50e729?.[_0x599458]||uuidv7(),_0x1254ad=await this['producer']['send']({'topic':_0x4058e5,'messages':[{'key':String(_0x472f45),'value':JSON['stringify'](_0x3fdefa),'headers':{'event-type':_0x509927,'correlation-id':_0x3fdefa[_0x99a20d(0x15b)],'source':_0x3fdefa[_0x99a20d(0x15f)]}}]});return console[_0x99a20d(0x162)](_0x99a20d(0x16d)+_0x4058e5+':\x20'+_0x509927+_0x99a20d(0x182)+_0x472f45+')'),{'success':!![],'correlationId':_0x3fdefa['correlationId'],'topic':_0x4058e5,'partition':_0x1254ad[0x0]?.[_0x99a20d(0x17b)],'offset':_0x1254ad[0x0]?.['baseOffset'],'published':!![]};}catch(_0x3cecd1){return console[_0x99a20d(0x168)]('[Kafka]\x20Publish\x20error\x20to\x20'+_0x4058e5+':\x20'+_0x3cecd1[_0x99a20d(0x150)]),{'success':![],'error':_0x3cecd1['message'],'published':![]};}}async[a0_0x2e22a0(0x16e)](_0x2dfe0f,_0x528292,_0x3116af,_0x22c98d={}){const _0x45b908=a0_0x2e22a0,_0x3e7a08={'Evyat':_0x45b908(0x17f),'rAnOE':'ENTITY_CREATED'},_0x438e62=this[_0x45b908(0x155)](_0x2dfe0f,_0x528292,_0x3e7a08[_0x45b908(0x15d)],_0x22c98d['topic']);return this['publishEvent'](_0x438e62,_0x3e7a08[_0x45b908(0x17e)],null,_0x3116af,{'module':_0x2dfe0f,'endpoint':_0x528292,'keyField':_0x22c98d[_0x45b908(0x144)],'tableName':_0x22c98d[_0x45b908(0x170)],'correlationId':_0x22c98d['correlationId']});}async['publishUpdate'](_0x4af1f1,_0x16dd5f,_0x4855e5,_0x274eb0,_0x442449={}){const _0x34edff=a0_0x2e22a0,_0xdfe6ec=this['buildTopicName'](_0x4af1f1,_0x16dd5f,'updated',_0x442449[_0x34edff(0x171)]);return this['publishEvent'](_0xdfe6ec,'ENTITY_UPDATED',_0x4855e5,_0x274eb0,{'module':_0x4af1f1,'endpoint':_0x16dd5f,'keyField':_0x442449['keyField'],'tableName':_0x442449[_0x34edff(0x170)],'correlationId':_0x442449[_0x34edff(0x15b)]});}async['publishDelete'](_0x593746,_0x15a73a,_0xbc8f56,_0x1be883={}){const _0x33ab7=a0_0x2e22a0,_0x45986={'TNWtZ':'deleted'},_0x5519e2=this['buildTopicName'](_0x593746,_0x15a73a,_0x45986['TNWtZ'],_0x1be883['topic']);return this['publishEvent'](_0x5519e2,'ENTITY_DELETED',_0xbc8f56,null,{'module':_0x593746,'endpoint':_0x15a73a,'keyField':_0x1be883[_0x33ab7(0x144)],'tableName':_0x1be883['tableName'],'correlationId':_0x1be883['correlationId']});}[a0_0x2e22a0(0x174)](){const _0x13529f=a0_0x2e22a0,_0x240329=this[_0x13529f(0x16a)]();return{'enabled':_0x240329[_0x13529f(0x160)],'connected':this['isConnected'],'brokers':_0x240329[_0x13529f(0x177)],'clientId':_0x240329[_0x13529f(0x147)],'topicPattern':_0x240329['topicPattern']};}async[a0_0x2e22a0(0x158)](){const _0x2bb7ef=a0_0x2e22a0,_0x16da2a={'vpoNx':'[Kafka]\x20Producer\x20disconnected\x20gracefully'};if(this['producer']&&this[_0x2bb7ef(0x187)])try{await this[_0x2bb7ef(0x18e)]['disconnect'](),this['isConnected']=![],console[_0x2bb7ef(0x162)](_0x16da2a['vpoNx']);}catch(_0x5c5bf6){console['error'](_0x2bb7ef(0x148)+_0x5c5bf6['message']);}}}let instance=null;function a0_0x3e3d(){const _0x35cb68=['uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','ChvIBgLZAeLUC2vYDa','mtfMDeLKwgO','DgfIBgvoyw1L','Dg9WAwm','CMvWBgfJzq','AwzNqva','z2v0u3rHDhvZ','EuXAtvm','mJH6BhroEwy','yNjVA2vYCW','v0fstG','Dw5RBM93BG','Bg9Ntgv2zwW','CgfYDgL0Aw9U','mtbJzg1YCKC','mZu0ngXXDgXfta','CKfUt0u','y3jLyxrLza','rMfPBgvKihrVignVBM5Ly3qGDg8Gs2fMA2eGyNjVA2vY','Dg9vChbLCKnHC2u','icHRzxK6ia','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','Bg9JywXOB3n0oJKWoti','CgX1vxq','s0fgs0fFqLjps0vsuW','AxndB25Uzwn0zwq','s0fgs0fFru5bqKXfra','E2vUzhbVAw50Fq','mZCWmJm2uvDpyuP6','ms4W','Dg9WAwnqyxr0zxjU','tgvNywn5ugfYDgL0Aw9Uzxi','ChjVzhvJzxi','zgvMyxvSDa','s0fgs0fFuKvuuLLFrevmqvK','CMvXDwvZDfrPBwvVDxq','yNvPBgrfDMvUDe1LC3nHz2u','A2v5rMLLBgq','zw52','A2fMA2e','y2XPzw50swq','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','CgfKu3rHCNq','y29UBMvJDgLVBLbYB21PC2u','zM9YBwf0rgf0zvrPBwu','zxz0lq','ntaWndmZAuPoEgjd','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','nJiWmdD4vNj4Cwi','BwvZC2fNzq','nda5mZG0u0zLC1LM','s0fgs0fFuKvuuLLFqvruru1qvfm','svrAyKO','E2fJDgLVBN0','yNvPBgruB3bPy05HBwu','CMvZDgzVCMDLlq','Bw9KDwXL','y2XVC2u','s0fgs0fFu0fttf9qqvntv09sra','mte5mde0mfjRzevHuq','y29YCMvSyxrPB25jza','s0fgs0fFu0fttf9nruniqu5ju00','rxz5yxq','z2v0u2vJB25KCW','C291CMnL','zw5HyMXLza','tvjgtw0','Bg9N','yLDny0e','s0fgs0fFu0fttf9vu0vstKfnrq','z2v0rNvSBfLLyxi','mJiYnZKWngHgCxPjEG','AxnjBML0AwfSAxPPBMC','zxjYB3i','mteXndjdz3L1Dw0','z2v0q29UzMLN','z2v0twLUDxrLCW'];a0_0x3e3d=function(){return _0x35cb68;};return a0_0x3e3d();}function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function a0_0x2bec(_0x1441d0,_0xa8bd84){_0x1441d0=_0x1441d0-0x143;const _0x3e3ddc=a0_0x3e3d();let _0x2bec92=_0x3e3ddc[_0x1441d0];if(a0_0x2bec['RRUDbW']===undefined){var _0x3986cb=function(_0x3efc54){const _0x44b021='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4fe709='',_0x1f112f='';for(let _0x5a26a8=0x0,_0x50889e,_0x5bb9b1,_0x4eb7af=0x0;_0x5bb9b1=_0x3efc54['charAt'](_0x4eb7af++);~_0x5bb9b1&&(_0x50889e=_0x5a26a8%0x4?_0x50889e*0x40+_0x5bb9b1:_0x5bb9b1,_0x5a26a8++%0x4)?_0x4fe709+=String['fromCharCode'](0xff&_0x50889e>>(-0x2*_0x5a26a8&0x6)):0x0){_0x5bb9b1=_0x44b021['indexOf'](_0x5bb9b1);}for(let _0x30b13e=0x0,_0x48129d=_0x4fe709['length'];_0x30b13e<_0x48129d;_0x30b13e++){_0x1f112f+='%'+('00'+_0x4fe709['charCodeAt'](_0x30b13e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f112f);};a0_0x2bec['EMBpJM']=_0x3986cb,a0_0x2bec['aIcUTI']={},a0_0x2bec['RRUDbW']=!![];}const _0x1e5875=_0x3e3ddc[0x0],_0x583523=_0x1441d0+_0x1e5875,_0x21c1e7=a0_0x2bec['aIcUTI'][_0x583523];return!_0x21c1e7?(_0x2bec92=a0_0x2bec['EMBpJM'](_0x2bec92),a0_0x2bec['aIcUTI'][_0x583523]=_0x2bec92):_0x2bec92=_0x21c1e7,_0x2bec92;}function resetInstance(){const _0x3fb4c5=a0_0x2e22a0;instance&&(instance[_0x3fb4c5(0x158)](),instance=null);}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
1
|
+
const a0_0x32d0cf=a0_0x4173;(function(_0x307ec9,_0x1e3c5f){const _0x1f0e05=a0_0x4173,_0x151775=_0x307ec9();while(!![]){try{const _0x325fdf=-parseInt(_0x1f0e05(0x17d))/0x1*(parseInt(_0x1f0e05(0x193))/0x2)+-parseInt(_0x1f0e05(0x196))/0x3*(parseInt(_0x1f0e05(0x183))/0x4)+parseInt(_0x1f0e05(0x173))/0x5+-parseInt(_0x1f0e05(0x165))/0x6*(parseInt(_0x1f0e05(0x156))/0x7)+-parseInt(_0x1f0e05(0x154))/0x8+-parseInt(_0x1f0e05(0x160))/0x9+parseInt(_0x1f0e05(0x17f))/0xa;if(_0x325fdf===_0x1e3c5f)break;else _0x151775['push'](_0x151775['shift']());}catch(_0x2f03ad){_0x151775['push'](_0x151775['shift']());}}}(a0_0x3281,0x93792));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require(a0_0x32d0cf(0x197));class KafkaService{constructor(){const _0x5edfb4=a0_0x32d0cf,_0x4317ea={'fWdrk':_0x5edfb4(0x16c)},_0x139193=_0x4317ea['fWdrk']['split']('|');let _0x353166=0x0;while(!![]){switch(_0x139193[_0x353166++]){case'0':this['kafka']=null;continue;case'1':this[_0x5edfb4(0x152)]=null;continue;case'2':this[_0x5edfb4(0x14a)]=![];continue;case'3':this[_0x5edfb4(0x16f)]=![];continue;case'4':this[_0x5edfb4(0x171)]=null;continue;}break;}}['getConfig'](){const _0x58e9f0=a0_0x32d0cf,_0x12a381={'Zlmeu':'true','BugAG':'localhost:9092','iYIPd':'3000','wAyEk':'default'};return{'enabled':process['env'][_0x58e9f0(0x184)]===_0x12a381['Zlmeu'],'brokers':(process['env']['KAFKA_BROKERS']||_0x12a381[_0x58e9f0(0x1a1)])[_0x58e9f0(0x176)](','),'clientId':process[_0x58e9f0(0x175)]['KAFKA_CLIENT_ID']||'restforge-'+(process[_0x58e9f0(0x175)]['RESTFORGE_PROJECT_NAME']||_0x58e9f0(0x157))+_0x58e9f0(0x172),'connectionTimeout':parseInt(process['env'][_0x58e9f0(0x198)]||_0x12a381['iYIPd']),'requestTimeout':parseInt(process[_0x58e9f0(0x175)][_0x58e9f0(0x1aa)]||_0x58e9f0(0x153)),'topicPattern':process[_0x58e9f0(0x175)]['KAFKA_TOPIC_PATTERN']||'{module}.{endpoint}.events','tenantId':process[_0x58e9f0(0x175)]['KAFKA_TENANT_ID']||_0x12a381[_0x58e9f0(0x185)],'retryAttempts':parseInt(process[_0x58e9f0(0x175)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process[_0x58e9f0(0x175)][_0x58e9f0(0x15a)]||'1000'),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x58e9f0(0x192)};}[a0_0x32d0cf(0x16d)](_0x15624d){const _0x42ba4d=a0_0x32d0cf,_0x37258f={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel[_0x42ba4d(0x180)],'debug':logLevel[_0x42ba4d(0x182)]};return _0x37258f[_0x15624d[_0x42ba4d(0x16b)]()]||logLevel[_0x42ba4d(0x194)];}async['initialize'](){const _0x11745b=a0_0x32d0cf,_0x85ac88={'DUlqp':_0x11745b(0x190),'kHoGR':_0x11745b(0x18d),'NjdKy':function(_0xcaa34e,_0x56efb2){return _0xcaa34e(_0x56efb2);},'oiksM':_0x11745b(0x19c)},_0x178ac3=this[_0x11745b(0x15d)]();if(!_0x178ac3[_0x11745b(0x19d)])return console['log'](_0x85ac88[_0x11745b(0x161)]),![];if(this['isConnected'])return!![];if(this[_0x11745b(0x16f)]&&this[_0x11745b(0x152)])return this['connectionPromise'];return this[_0x11745b(0x16f)]=!![],this['connectionPromise']=new Promise(async _0x458323=>{const _0x48377d=_0x11745b;try{let _0x3f476e=undefined;process[_0x48377d(0x175)][_0x48377d(0x164)]===_0x85ac88[_0x48377d(0x188)]&&(_0x3f476e=!![]);let _0x564b7e=undefined;process['env'][_0x48377d(0x16a)]&&(_0x564b7e={'mechanism':process[_0x48377d(0x175)]['KAFKA_SASL_MECHANISM'],'username':process[_0x48377d(0x175)][_0x48377d(0x18e)]||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this[_0x48377d(0x17a)]=new Kafka({'clientId':_0x178ac3[_0x48377d(0x178)],'brokers':_0x178ac3[_0x48377d(0x1a9)],'connectionTimeout':_0x178ac3['connectionTimeout'],'requestTimeout':_0x178ac3['requestTimeout'],'logLevel':this[_0x48377d(0x16d)](_0x178ac3[_0x48377d(0x17c)]),'ssl':_0x3f476e,'sasl':_0x564b7e,'retry':{'initialRetryTime':_0x178ac3['retryDelay'],'retries':_0x178ac3[_0x48377d(0x17b)]}}),this['producer']=this[_0x48377d(0x17a)]['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x48377d(0x150)]}),await this['producer'][_0x48377d(0x1a8)](),this[_0x48377d(0x14a)]=!![],console[_0x48377d(0x199)]('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x178ac3['brokers']['join'](',\x20')),this['producer']['on'](_0x48377d(0x1a7),()=>{const _0x523797=_0x48377d;console[_0x523797(0x199)](_0x85ac88['DUlqp']),this['isConnected']=![];}),_0x458323(!![]);}catch(_0x468406){console['error'](_0x48377d(0x14e)+_0x468406[_0x48377d(0x168)]),this['isConnected']=![],_0x85ac88[_0x48377d(0x169)](_0x458323,![]);}finally{this['isInitializing']=![];}}),this[_0x11745b(0x152)];}['formatDateTime'](_0x1d72ce){const _0x363c8b=a0_0x32d0cf,_0x2673a3={'cxeyC':function(_0x151189,_0x52bceb){return _0x151189(_0x52bceb);},'dYRwC':function(_0x5913c4,_0x5049c1){return _0x5913c4+_0x5049c1;},'WjeUv':function(_0x3941a9,_0x1f60d7){return _0x3941a9(_0x1f60d7);}},_0x308105=_0x1d72ce||new Date(),_0x560ba3=_0x308105[_0x363c8b(0x14d)](),_0x43b5f7=_0x2673a3[_0x363c8b(0x167)](String,_0x2673a3['dYRwC'](_0x308105['getMonth'](),0x1))[_0x363c8b(0x181)](0x2,'0'),_0x4f5a33=_0x2673a3[_0x363c8b(0x167)](String,_0x308105[_0x363c8b(0x15c)]())[_0x363c8b(0x181)](0x2,'0'),_0x185d8c=String(_0x308105['getHours']())['padStart'](0x2,'0'),_0x11c88a=String(_0x308105[_0x363c8b(0x159)]())['padStart'](0x2,'0'),_0x5ef9da=_0x2673a3['WjeUv'](String,_0x308105[_0x363c8b(0x14f)]())['padStart'](0x2,'0');return _0x560ba3+'-'+_0x43b5f7+'-'+_0x4f5a33+'\x20'+_0x185d8c+':'+_0x11c88a+':'+_0x5ef9da;}['buildTopicName'](_0x4cfb2c,_0x2568aa,_0x783e35,_0x54b81e=null){const _0x47344e=a0_0x32d0cf,_0x56ce13={'tiEUg':'{endpoint}'};if(_0x54b81e)return _0x54b81e;const _0x495ef3=this['getConfig']()['topicPattern'];return _0x495ef3['replace'](_0x47344e(0x14b),_0x4cfb2c)[_0x47344e(0x18c)](_0x56ce13['tiEUg'],_0x2568aa)['replace'](_0x47344e(0x151),_0x783e35);}[a0_0x32d0cf(0x18a)](_0x1e812b,_0x220f53,_0x380cff,_0x4a8e85={}){const _0x582333=a0_0x32d0cf,_0x5a6f66={'LFLlt':function(_0x27fbb2){return _0x27fbb2();},'cRcZH':'unknown','SHjox':'SYSTEM'},_0x59d50b=new Date(),_0x2f76f3=this[_0x582333(0x1a4)](_0x59d50b),_0x345360=_0x4a8e85['correlationId']||'corr-'+uuidv7();return{'eventId':_0x582333(0x179)+_0x5a6f66['LFLlt'](uuidv7),'eventType':_0x1e812b,'eventTime':_0x2f76f3,'eventVersion':_0x582333(0x170),'source':_0x582333(0x1ab)+(_0x4a8e85['module']||_0x5a6f66[_0x582333(0x1a5)]),'correlationId':_0x345360,'newData':_0x380cff,'oldData':_0x220f53,'metadata':{'createdBy':_0x4a8e85[_0x582333(0x17e)]||_0x5a6f66[_0x582333(0x166)],'createdAt':_0x2f76f3,'systemId':_0x582333(0x155)+(_0x4a8e85['module']||_0x582333(0x162))['toUpperCase'](),'tenantId':this['getConfig']()[_0x582333(0x1a3)],'endpoint':_0x4a8e85[_0x582333(0x15f)]||null,'tableName':_0x4a8e85[_0x582333(0x163)]||null}};}async['publishEvent'](_0x2cf75d,_0x816cfa,_0x5d1c04,_0x44b9bd,_0x39679e={}){const _0x314486=a0_0x32d0cf,_0x2049b1={'nIruQ':function(_0x4a266a){return _0x4a266a();}},_0x45b827=this[_0x314486(0x15d)]();if(!_0x45b827[_0x314486(0x19d)])return{'success':![],'reason':'Kafka\x20producer\x20is\x20disabled','published':![]};if(!this['isConnected']){const _0x2177a9=await this['initialize']();if(!_0x2177a9)return{'success':![],'reason':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','published':![]};}try{const _0x339d8b=this['buildEventMessage'](_0x816cfa,_0x5d1c04,_0x44b9bd,_0x39679e),_0x925d98=_0x39679e[_0x314486(0x189)]||'id',_0x258657=_0x44b9bd?.[_0x925d98]||_0x5d1c04?.[_0x925d98]||_0x2049b1['nIruQ'](uuidv7),_0xc790d1=await this[_0x314486(0x171)][_0x314486(0x187)]({'topic':_0x2cf75d,'messages':[{'key':String(_0x258657),'value':JSON['stringify'](_0x339d8b),'headers':{'event-type':_0x816cfa,'correlation-id':_0x339d8b['correlationId'],'source':_0x339d8b['source']}}]});return console['log']('[Kafka]\x20Event\x20published\x20to\x20'+_0x2cf75d+':\x20'+_0x816cfa+'\x20(key:\x20'+_0x258657+')'),{'success':!![],'correlationId':_0x339d8b['correlationId'],'topic':_0x2cf75d,'partition':_0xc790d1[0x0]?.[_0x314486(0x177)],'offset':_0xc790d1[0x0]?.['baseOffset'],'published':!![]};}catch(_0x2221d5){return console[_0x314486(0x158)](_0x314486(0x195)+_0x2cf75d+':\x20'+_0x2221d5[_0x314486(0x168)]),{'success':![],'error':_0x2221d5[_0x314486(0x168)],'published':![]};}}async['publishInsert'](_0x170838,_0x2f336b,_0x6a9dc1,_0x190385={}){const _0x3e32d7=a0_0x32d0cf,_0x121c49=this['buildTopicName'](_0x170838,_0x2f336b,_0x3e32d7(0x18b),_0x190385['topic']);return this['publishEvent'](_0x121c49,'ENTITY_CREATED',null,_0x6a9dc1,{'module':_0x170838,'endpoint':_0x2f336b,'keyField':_0x190385['keyField'],'tableName':_0x190385['tableName'],'correlationId':_0x190385[_0x3e32d7(0x16e)]});}async[a0_0x32d0cf(0x14c)](_0x572259,_0x2f539b,_0x3245eb,_0x4aa124,_0x479f9d={}){const _0x4addd7=a0_0x32d0cf,_0x587b05={'jMYKI':_0x4addd7(0x18f),'HSFoO':_0x4addd7(0x19a)},_0x2711cd=this['buildTopicName'](_0x572259,_0x2f539b,_0x587b05[_0x4addd7(0x19f)],_0x479f9d[_0x4addd7(0x1a2)]);return this[_0x4addd7(0x19e)](_0x2711cd,_0x587b05['HSFoO'],_0x3245eb,_0x4aa124,{'module':_0x572259,'endpoint':_0x2f539b,'keyField':_0x479f9d['keyField'],'tableName':_0x479f9d['tableName'],'correlationId':_0x479f9d[_0x4addd7(0x16e)]});}async[a0_0x32d0cf(0x191)](_0x4c844c,_0x1e07b5,_0x51aedb,_0x45a01b={}){const _0x2eaefd=a0_0x32d0cf,_0x11d5fb={'nRnxf':_0x2eaefd(0x19b),'mbtwZ':_0x2eaefd(0x15b)},_0x44847a=this[_0x2eaefd(0x1a0)](_0x4c844c,_0x1e07b5,_0x11d5fb['nRnxf'],_0x45a01b[_0x2eaefd(0x1a2)]);return this[_0x2eaefd(0x19e)](_0x44847a,_0x11d5fb[_0x2eaefd(0x174)],_0x51aedb,null,{'module':_0x4c844c,'endpoint':_0x1e07b5,'keyField':_0x45a01b['keyField'],'tableName':_0x45a01b[_0x2eaefd(0x163)],'correlationId':_0x45a01b[_0x2eaefd(0x16e)]});}[a0_0x32d0cf(0x1a6)](){const _0x5d87d8=a0_0x32d0cf,_0x4755e6=this[_0x5d87d8(0x15d)]();return{'enabled':_0x4755e6[_0x5d87d8(0x19d)],'connected':this[_0x5d87d8(0x14a)],'brokers':_0x4755e6['brokers'],'clientId':_0x4755e6['clientId'],'topicPattern':_0x4755e6[_0x5d87d8(0x15e)]};}async[a0_0x32d0cf(0x186)](){const _0x50f840=a0_0x32d0cf;if(this['producer']&&this[_0x50f840(0x14a)])try{await this[_0x50f840(0x171)]['disconnect'](),this['isConnected']=![],console['log']('[Kafka]\x20Producer\x20disconnected\x20gracefully');}catch(_0x5f1c31){console[_0x50f840(0x158)]('[Kafka]\x20Error\x20disconnecting:\x20'+_0x5f1c31[_0x50f840(0x168)]);}}}let instance=null;function a0_0x4173(_0x4e8147,_0x4bb3af){_0x4e8147=_0x4e8147-0x14a;const _0x3281b4=a0_0x3281();let _0x417318=_0x3281b4[_0x4e8147];if(a0_0x4173['OfEZpQ']===undefined){var _0x57e564=function(_0x5930f2){const _0x55259c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1d6ed7='',_0x1b0bbc='';for(let _0x5a720f=0x0,_0x40fe24,_0x4af719,_0x3fb5c3=0x0;_0x4af719=_0x5930f2['charAt'](_0x3fb5c3++);~_0x4af719&&(_0x40fe24=_0x5a720f%0x4?_0x40fe24*0x40+_0x4af719:_0x4af719,_0x5a720f++%0x4)?_0x1d6ed7+=String['fromCharCode'](0xff&_0x40fe24>>(-0x2*_0x5a720f&0x6)):0x0){_0x4af719=_0x55259c['indexOf'](_0x4af719);}for(let _0x83df3d=0x0,_0x2642f7=_0x1d6ed7['length'];_0x83df3d<_0x2642f7;_0x83df3d++){_0x1b0bbc+='%'+('00'+_0x1d6ed7['charCodeAt'](_0x83df3d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b0bbc);};a0_0x4173['IbISqm']=_0x57e564,a0_0x4173['FvNgDv']={},a0_0x4173['OfEZpQ']=!![];}const _0xc27dfe=_0x3281b4[0x0],_0x41ba1f=_0x4e8147+_0xc27dfe,_0x568a99=a0_0x4173['FvNgDv'][_0x41ba1f];return!_0x568a99?(_0x417318=a0_0x4173['IbISqm'](_0x417318),a0_0x4173['FvNgDv'][_0x41ba1f]=_0x417318):_0x417318=_0x568a99,_0x417318;}function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){const _0x304991=a0_0x32d0cf;instance&&(instance[_0x304991(0x186)](),instance=null);}function a0_0x3281(){const _0x2a65ea=['CgfYDgL0Aw9U','y2XPzw50swq','zxz0lq','A2fMA2e','CMv0CNLbDhrLBxb0CW','Bg9Ntgv2zwW','muXRs3PesW','y3jLyxrLzej5','mZe1nJmYotbiwgXnufO','su5gtW','CgfKu3rHCNq','revcvuC','odu5otzUCuP0Buu','s0fgs0fFru5bqKXfra','D0f5rwS','y2XVC2u','C2vUza','A0HVr1i','A2v5rMLLBgq','yNvPBgrfDMvUDe1LC3nHz2u','y3jLyxrLza','CMvWBgfJzq','Dhj1zq','s0fgs0fFu0fttf9vu0vstKfnrq','DxbKyxrLza','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','ChvIBgLZAerLBgv0zq','D2fYBG','mJuXmdjXDhvdtuu','v0fstG','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','mteXyKrLEgX5','DxvPza','s0fgs0fFq09otKvdveLptL9usu1ft1vu','Bg9N','ru5usvrzx1vqrefuruq','zgvSzxrLza','w0THzMTHxsblywzRysbWCM9KDwnLCIbPCYbKAxnHyMXLzcbPBIbJB25MAwD1CMf0Aw9U','zw5HyMXLza','ChvIBgLZAev2zw50','AK1zs0K','yNvPBgruB3bPy05HBwu','qNvNquC','Dg9WAwm','DgvUyw50swq','zM9YBwf0rgf0zvrPBwu','y1jJwKG','z2v0u3rHDhvZ','ChjVzhvJzxiUzgLZy29UBMvJDa','y29UBMvJDa','yNjVA2vYCW','s0fgs0fFuKvrvuvtvf9usu1ft1vu','CMvZDgzVCMDLlq','AxndB25Uzwn0zwq','E21VzhvSzx0','ChvIBgLZAfvWzgf0zq','z2v0rNvSBfLLyxi','w0THzMTHxsbdB25Uzwn0Aw9UigzHAwXLzdOG','z2v0u2vJB25KCW','tgvNywn5ugfYDgL0Aw9Uzxi','E2fJDgLVBN0','y29UBMvJDgLVBLbYB21PC2u','mJuWmda','nJeWmJCYogzQqxjrBa','uKvtvezpuKDflq','n1LOwu5MDa','zgvMyxvSDa','zxjYB3i','z2v0twLUDxrLCW','s0fgs0fFuKvuuLLFrevmqvK','ru5usvrzx0rftevuruq','z2v0rgf0zq','z2v0q29UzMLN','Dg9WAwnqyxr0zxjU','zw5KCg9PBNq','nJGXmdC4nML4rMvuCa','B2LRC00','Dw5RBM93BG','DgfIBgvoyw1L','s0fgs0fFu1nm','mtC0ndqYmKX3tw9fAW','u0HQB3G','y3HLEum','BwvZC2fNzq','tMPKs3K','s0fgs0fFu0fttf9nruniqu5ju00','Dg9mB3DLCKnHC2u','mhW0Fdj8m3WX','z2v0tg9Ntgv2zwW','y29YCMvSyxrPB25jza','AxnjBML0AwfSAxPPBMC','ms4W','ChjVzhvJzxi','lxbYB2r1y2vY','mZmWmZm1r3vlqvrv','Bwj0D1O','zw52','C3bSAxq'];a0_0x3281=function(){return _0x2a65ea;};return a0_0x3281();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x13ce71=a0_0x8233;function a0_0x8233(_0x4dbadd,_0x346840){_0x4dbadd=_0x4dbadd-0xe1;const _0x211f6c=a0_0x211f();let _0x823340=_0x211f6c[_0x4dbadd];if(a0_0x8233['VrmPRR']===undefined){var _0x712920=function(_0x1da133){const _0x52dd04='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x26b6fe='',_0xc5f0fe='';for(let _0xd39fc4=0x0,_0x1d08b6,_0x20b78d,_0x41f17e=0x0;_0x20b78d=_0x1da133['charAt'](_0x41f17e++);~_0x20b78d&&(_0x1d08b6=_0xd39fc4%0x4?_0x1d08b6*0x40+_0x20b78d:_0x20b78d,_0xd39fc4++%0x4)?_0x26b6fe+=String['fromCharCode'](0xff&_0x1d08b6>>(-0x2*_0xd39fc4&0x6)):0x0){_0x20b78d=_0x52dd04['indexOf'](_0x20b78d);}for(let _0x1744aa=0x0,_0x3e1520=_0x26b6fe['length'];_0x1744aa<_0x3e1520;_0x1744aa++){_0xc5f0fe+='%'+('00'+_0x26b6fe['charCodeAt'](_0x1744aa)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc5f0fe);};a0_0x8233['fGGEIY']=_0x712920,a0_0x8233['ppZbUh']={},a0_0x8233['VrmPRR']=!![];}const _0x21f6d8=_0x211f6c[0x0],_0x39f737=_0x4dbadd+_0x21f6d8,_0x29f289=a0_0x8233['ppZbUh'][_0x39f737];return!_0x29f289?(_0x823340=a0_0x8233['fGGEIY'](_0x823340),a0_0x8233['ppZbUh'][_0x39f737]=_0x823340):_0x823340=_0x29f289,_0x823340;}function a0_0x211f(){const _0x3741c2=['vgLKywSGzgLRzxrHAhvP','y29TBxvUAwnHDgLVBLr5Cgu','tvnivujFqvbjx1bpuLq','rxjYB3iGC2fHDcbTzw51DhvWigTVBMvRC2K6ia','yLHKz1O','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','zgLZy29UBMvJDa','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','mJiZodyWmJzQtLHwBKO','BwvZC2fNzq','Dg9WAwm','AxnfCNjVCLjLBgf0zwq','CevjBNa','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','nZjIz3Hkz1G','v2fRDhuGsw5PC2LHBgLZyxnPoIa','CMvXDwvZDeLK','zxjYB3i','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','odu2oteWC2XuAxL6','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','mZzlr0HdANK','zxjcA0G','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','CMvXDwLYzufJAW','tvnivujFufvcteLtsf9lrvK','tvnivujFu0vsvKLdrv9qt1ju','AwTZtLe','qwDgB24','y29UzMLYBwf0Aw9Uq291BNq','C29JA2v0','ChvIBgLZAeTLEq','Dhj1zq','mZDIvunStKK','wgvruxm','ChvIBgLZAa','CMvZDgzVCMDL','uK5vvxm','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','r2jTrhq','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','tvLLCM4','y2XLyxjdywnOzq','CLv2qNe','Dg9ju09tDhjPBMC','u0nOzgG','q29UBMvJDgLVBIb0Aw1LB3v0','y2XVC2u','DxvPza','Bu1mAM0','C3rYAw5NAwz5','vw5RBM93BIbLCNjVCG','D0ziCg8','mtb4vxPfEwi','s29UzwTZAsb0zxjWDxr1CZOG','r0PWEge','CMvJzwL2zxjjBMzV','mtiXohL2wMnJvG','nZDcquv6ug0','Cgf0Aa','EhnWANC','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','AxLbBLu','mJKYndCZC3fgwfnu','s2TcC3C','ody2mdK3B0Lcv2j3','tvnivujFse9tva','t1nHCvO','CMvZDgzVCMDLlq','vw5RBM93BG','nJiXmZHLs2DuEMS','rxjYB3iGBg9HzgLUzYbnzxnZywDLshvIifnesZOG','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','qK1ZAxO','u3rHDhvZieXPC3rLBMvYoIa','D2vIC29JA2v0','ksbWywrHia','y2f0zwDVCNK','zxHWB3j0CW','DM5SCfy','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','tvnivujFq09ntvvosunbveLptL9uwvbf','DxnLCKLK','tvrjvNy','zw52','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','EeftueG','lIbuB3rHBcbRB25MAxjTyxnPoIa','ExvwshG','ntiWmtDtA0DYrem','Dg9mB2nHBgvtDhjPBMC','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','Bg9N','mZeWndCXnLfUvhv5ta','wufQwwm','D1PNuhu','CMvHC29U','zxHPC3rZu3LUyW'];a0_0x211f=function(){return _0x3741c2;};return a0_0x211f();}(function(_0x462877,_0x4bebba){const _0x516590=a0_0x8233,_0x442401=_0x462877();while(!![]){try{const _0x1a1570=-parseInt(_0x516590(0x10f))/0x1*(parseInt(_0x516590(0x135))/0x2)+-parseInt(_0x516590(0x130))/0x3+parseInt(_0x516590(0xe9))/0x4*(-parseInt(_0x516590(0x124))/0x5)+parseInt(_0x516590(0x128))/0x6*(-parseInt(_0x516590(0xe5))/0x7)+-parseInt(_0x516590(0xfc))/0x8*(parseInt(_0x516590(0x12e))/0x9)+parseInt(_0x516590(0x101))/0xa*(parseInt(_0x516590(0x129))/0xb)+parseInt(_0x516590(0x103))/0xc*(parseInt(_0x516590(0xf6))/0xd);if(_0x1a1570===_0x4bebba)break;else _0x442401['push'](_0x442401['shift']());}catch(_0x5dff9f){_0x442401['push'](_0x442401['shift']());}}}(a0_0x211f,0xeddbb));const dotenv=require('dotenv'),path=require(a0_0x13ce71(0x12a)),fs=require('fs'),{v7:uuidv7}=require(a0_0x13ce71(0x11f));dotenv['config']();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,'../../js/messagehub.js');if(fs[a0_0x13ce71(0xed)](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x13ce71(0xe8)](a0_0x13ce71(0x102)+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x421537){console['error'](a0_0x13ce71(0x136)+a0_0x421537[a0_0x13ce71(0xf7)]);throw a0_0x421537;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x2d0fd2){const _0x1da666=a0_0x13ce71,_0xd9ff24=new Date()[_0x1da666(0x11b)]();console['log']('['+_0xd9ff24+']\x20'+_0x2d0fd2);}async function initMessageHub(){const _0x8f4107=a0_0x13ce71,_0x2f814e={'iyAnU':function(_0x38c96a,_0x596f8f){return _0x38c96a(_0x596f8f);},'XeQQs':function(_0x1506bb,_0x16b69c){return _0x1506bb(_0x16b69c);},'MYern':function(_0x5f2d98,_0x4fd819){return _0x5f2d98(_0x4fd819);},'Lgbig':'disconnected','GcPMh':_0x8f4107(0xee),'iksNQ':_0x8f4107(0x134),'QaOnr':'default','EWTlJ':'broadcast','pEInp':'true','bXdgZ':function(_0x345c64,_0x266e37){return _0x345c64===_0x266e37;},'FlTPH':_0x8f4107(0x13a),'IwFkS':function(_0x5048e2,_0x5c924b){return _0x5048e2(_0x5c924b);},'rUvBq':'========================================','KkBsw':function(_0x3dc2c1,_0x5eeab2,_0x1758ac){return _0x3dc2c1(_0x5eeab2,_0x1758ac);},'wFHpo':'MessageHub\x20sudah\x20terhubung,\x20menggunakan\x20koneksi\x20yang\x20ada'};if(messagehub&&isConnected)return log(_0x2f814e[_0x8f4107(0x123)]),!![];if(connectionPromise)return log(_0x8f4107(0x116)),connectionPromise;return connectionPromise=new Promise(async(_0x467a42,_0x1aeeba)=>{const _0x4f4907=_0x8f4107,_0x2415ed={'SChdh':function(_0x8e4169,_0x1a9fce){return _0x2f814e['XeQQs'](_0x8e4169,_0x1a9fce);},'dgjuO':function(_0x5d5608,_0x576413){return _0x2f814e['MYern'](_0x5d5608,_0x576413);},'BMsiz':function(_0x11a4ec,_0x39cc2f){return _0x11a4ec===_0x39cc2f;},'RxNfZ':_0x2f814e['Lgbig'],'xASPH':function(_0x290592,_0x44e11e){return _0x290592===_0x44e11e;},'GJpxa':function(_0x35e001,_0x17aa6d){return _0x35e001(_0x17aa6d);},'GbmDt':_0x2f814e['GcPMh'],'OSaqZ':_0x4f4907(0xff),'wZgPu':_0x2f814e[_0x4f4907(0x109)],'RNUUs':function(_0x57f457,_0x5a728b){const _0x4bf15f=_0x4f4907;return _0x2f814e[_0x4bf15f(0x110)](_0x57f457,_0x5a728b);}};try{log('======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======'),log(_0x4f4907(0xfd)+new Date()[_0x4f4907(0xe6)]()),log('Mode:\x20Koneksi\x20Nyata');const _0x256556={'publishKey':process['env'][_0x4f4907(0x107)],'subscribeKey':process[_0x4f4907(0x143)]['MSHUB_SUBSCRIBE_KEY'],'userId':process['env']['MSHUB_USER_ID']||_0x4f4907(0x133)+(process[_0x4f4907(0x143)][_0x4f4907(0x117)]||_0x2f814e['QaOnr'])+'-'+process['pid'],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x2f814e['EWTlJ'],'autoAcknowledge':process['env']['MSHUB_AUTO_ACKNOWLEDGE']===_0x2f814e[_0x4f4907(0xfa)],'acknowledgeMessages':_0x2f814e[_0x4f4907(0xf2)](process[_0x4f4907(0x143)][_0x4f4907(0x137)],_0x4f4907(0x10e)),'platform':{'type':process[_0x4f4907(0x143)][_0x4f4907(0x140)]||_0x2f814e['FlTPH'],'host':process['env'][_0x4f4907(0x131)]||'localhost','api_port':parseInt(process[_0x4f4907(0x143)][_0x4f4907(0xf0)]||0xdf8),'service_port':parseInt(process['env'][_0x4f4907(0x108)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x256556),_0x2f814e['IwFkS'](log,'======\x20INFORMASI\x20CLIENT\x20MESSAGEHUB\x20======'),_0x2f814e['MYern'](log,'Client\x20ID/UserID:\x20'+messagehub[_0x4f4907(0x141)]),_0x2f814e['MYern'](log,'Publish\x20Key:\x20'+messagehub[_0x4f4907(0x10d)]),log('Subscribe\x20Key:\x20'+messagehub['subscribeKey']),_0x2f814e[_0x4f4907(0x118)](log,'Tipe\x20Komunikasi:\x20'+messagehub[_0x4f4907(0xef)]),log('Konfigurasi\x20Platform:\x20'+JSON[_0x4f4907(0x121)](messagehub['platformConfig'])),log(_0x2f814e[_0x4f4907(0x11a)]),messagehub['addListener']({'status':function(_0x27419b){const _0x118dd0=_0x4f4907;_0x2415ed[_0x118dd0(0x11c)](log,_0x118dd0(0x139)+_0x27419b[_0x118dd0(0x13c)]);if(_0x27419b['category']==='connected')log('Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(_0x2415ed['dgjuO'](clearTimeout,timeoutHandler),timeoutHandler=null),_0x467a42(!![]);else{if(_0x2415ed[_0x118dd0(0x138)](_0x27419b[_0x118dd0(0x13c)],_0x2415ed['RxNfZ'])){const _0x34fcf0=_0x2415ed[_0x118dd0(0xe2)](_0x27419b[_0x118dd0(0xf9)],!![]);!_0x34fcf0&&(_0x2415ed[_0x118dd0(0x126)](log,_0x118dd0(0xe7)+(_0x27419b[_0x118dd0(0xec)]||_0x2415ed[_0x118dd0(0x115)])),isConnected=![],connectionPromise&&(_0x1aeeba(new Error(_0x118dd0(0x125)+(_0x27419b[_0x118dd0(0xec)]||_0x2415ed['GbmDt']))),connectionPromise=null));}else{if(_0x27419b[_0x118dd0(0x13c)]===_0x2415ed[_0x118dd0(0x132)]){let _0x5bd8a7=_0x27419b['errorDetail']||_0x27419b[_0x118dd0(0xff)]||_0x118dd0(0x122);log('⚠️\x20Error:\x20'+_0x5bd8a7),isConnected=![],connectionPromise&&(_0x1aeeba(new Error(_0x5bd8a7)),connectionPromise=null);}else{if(_0x27419b['category']==='message-sent')_0x2415ed['GJpxa'](log,_0x118dd0(0x114)+_0x27419b['requestId']);else{if(_0x27419b[_0x118dd0(0x13c)]==='message-received'){const _0x17b5c7=_0x27419b[_0x118dd0(0x127)]?.['name']||_0x2415ed[_0x118dd0(0xeb)],_0x519432=_0x27419b['receiverInfo']?.['id']||_0x27419b['receiverId'],_0x3aee4e=new Date(_0x27419b['receiverInfo']?.['receivedAt']||_0x27419b['receivedAt']||new Date())['toLocaleTimeString']();_0x2415ed[_0x118dd0(0x113)](log,_0x118dd0(0xfb)+_0x27419b[_0x118dd0(0xfe)]+'\x20diterima\x20oleh\x20'+_0x17b5c7+'\x20('+_0x519432+_0x118dd0(0x13b)+_0x3aee4e+_0x118dd0(0xe3)+(_0x27419b[_0x118dd0(0x10b)]||0x1));}}}}}}}),timeoutHandler=_0x2f814e[_0x4f4907(0x12f)](setTimeout,()=>{const _0x2eec0b=_0x4f4907;!isConnected&&connectionPromise&&(log(_0x2eec0b(0xf5)),_0x2f814e[_0x2eec0b(0x12d)](_0x1aeeba,new Error(_0x2eec0b(0x11d))),connectionPromise=null);},0x2710);}catch(_0x4c1a0d){log(_0x4f4907(0x100)+_0x4c1a0d[_0x4f4907(0xf7)]),console[_0x4f4907(0xff)]('Error\x20inisialisasi\x20MessageHub:',_0x4c1a0d),connectionPromise=null,_0x1aeeba(_0x4c1a0d);}}),connectionPromise;}async function publishMessage(_0x15526c,_0x34453e,_0x5d1904,_0xa269b9={}){const _0x31de55=a0_0x13ce71,_0x536ead={'yuVHx':function(_0x5610f3){return _0x5610f3();},'mMLjm':function(_0x2f8dc9,_0x5daa6a){return _0x2f8dc9(_0x5daa6a);},'AgFon':_0x31de55(0x13f),'erBkH':function(_0x53504f,_0x470d02){return _0x53504f!==_0x470d02;},'xspjw':function(_0x12f587,_0xb4a4af){return _0x12f587(_0xb4a4af);},'geXAW':_0x31de55(0x105)};try{!isConnected&&await _0x536ead[_0x31de55(0xe4)](initMessageHub);const _0x3a53dc=messagehub['channel'](_0x15526c);_0x536ead['mMLjm'](log,'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======'),_0x536ead[_0x31de55(0x120)](log,'Channel\x20Target:\x20'+_0x3a53dc[_0x31de55(0xf8)]),log('Message\x20Type:\x20'+_0x34453e),log(_0x536ead[_0x31de55(0x10a)]);const _0x4bf827={'requireAck':_0x536ead['erBkH'](_0xa269b9['requireAck'],undefined)?_0xa269b9[_0x31de55(0x106)]:![],'clearCache':_0x536ead[_0x31de55(0x104)](_0xa269b9[_0x31de55(0x119)],undefined)?_0xa269b9['clearCache']:!![],'senderId':messagehub[_0x31de55(0x10c)]?messagehub[_0x31de55(0x10c)]['id']:_0x31de55(0x112)};_0x536ead[_0x31de55(0x12b)](log,'Mengirim\x20pesan\x20ke\x20server...');const _0x348ce9={'type':_0x34453e,'content':_0x5d1904},_0xe3a0fb=await _0x3a53dc[_0x31de55(0x111)](_0x348ce9,_0x4bf827);return _0x536ead[_0x31de55(0x12b)](log,_0x31de55(0xf3)+_0x15526c),{'success':!![],'requestId':_0xe3a0fb['requestId'],'topic':_0x15526c,'message':_0x536ead['geXAW']};}catch(_0x5440da){return log('⚠️\x20Error\x20publishing\x20message:\x20'+_0x5440da['message']),{'success':![],'error':_0x5440da[_0x31de55(0xf7)],'topic':_0x15526c,'message':_0x31de55(0xe1)};}}async function closeConnection(){const _0x3cd25f=a0_0x13ce71,_0x1c9245={'MTIVv':function(_0x3b0685,_0x2973a0){return _0x3b0685(_0x2973a0);},'grscU':function(_0x438097,_0x40d373){return _0x438097&&_0x40d373;},'oaQIe':function(_0x3525f6,_0x1bf1b2){return _0x3525f6===_0x1bf1b2;},'YAjYc':'function','bptIM':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()','vnlpV':_0x3cd25f(0x12c)};timeoutHandler&&(_0x1c9245[_0x3cd25f(0x142)](clearTimeout,timeoutHandler),timeoutHandler=null);if(_0x1c9245['grscU'](isConnected,messagehub))try{if(_0x1c9245['oaQIe'](typeof messagehub['disconnect'],_0x1c9245[_0x3cd25f(0xea)]))await messagehub['disconnect'](),_0x1c9245['MTIVv'](log,_0x1c9245['bptIM']);else{if(typeof messagehub['close']==='function')await messagehub[_0x3cd25f(0x11e)](),log(_0x1c9245[_0x3cd25f(0x13e)]);else messagehub['socket']&&_0x1c9245['oaQIe'](typeof messagehub[_0x3cd25f(0x10c)][_0x3cd25f(0xf4)],'function')?(messagehub['socket'][_0x3cd25f(0xf4)](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()')):_0x1c9245[_0x3cd25f(0x142)](log,'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub');}isConnected=![],connectionPromise=null;}catch(_0xb8a187){log(_0x3cd25f(0xf1)+_0xb8a187[_0x3cd25f(0xf7)]);}}module[a0_0x13ce71(0x13d)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|
|
1
|
+
const a0_0x20dc7e=a0_0x1da5;function a0_0x3c22(){const _0x3641c2=['CKvIDMi','CMvZDgzVCMDL','v0Hise4','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','zxHPC3rZu3LUyW','Cgf0Aa','Dg9ju09tDhjPBMC','DMnowhC','tvnivujFu1vcu0nssujfx0Tfwq','wgXWsMO','ntK2mZi0y0fLwMLI','mJa3mdi0qK9TsKjh','BMfTzq','y29UBMvJDgvK','twvUz2LYAw0GCgvZyw4GA2uGC2vYDMvYlI4U','q29UBMvJDgLVBIb0Aw1LB3v0','u3vIC2nYAwjLieTLEtOG','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','z0LMsKO','DxvPza','uhbAC1a','zw52','weXwD1u','uLrfsem','rvnJzMe','CMvXDwvZDeLK','y2XVC2u','Dg9mB2nHBgvuAw1Lu3rYAw5N','ywrKtgLZDgvUzxi','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','ufrYweG','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','CMLftLK','CMvJzwL2zxjjBMzV','mZztEwfjrw4','mta3ody1m0vnBvvOua','igrPDgvYAw1Hig9SzwGG','vw5RBM93BIbLCNjVCG','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUigrPC2nVBM5Ly3qOkq','rxjYB3iGC2fHDcbTzw51DhvWigTVBMvRC2K6ia','lIbuB3rHBcbRB25MAxjTyxnPoIa','yNfkA1a','C3vIC2nYAwjLs2v5','CvPdzuC','zgLZy29UBMvJDa','u3rHDhvZieXPC3rLBMvYoIa','Bg9JywXOB3n0','tvnivujFvvnfuL9jra','4PQG77IpievYCM9YoIa','twvZC2fNzsbuExbLoIa','nZGXotm1qvHkBK5j','zfbZy1a','tvnivujFufvcteLtsf9lrvK','D2vIC29JA2v0','zg90zw52','tvnivujFqvbjx1bpuLq','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','C29JA2v0','vw5RBM93BG','yNL5Evu','seDRDLq','qwTTA2O','EefyuNy','nKT5A3b0Dq','tvnivujFse9tva','y2f0zwDVCNK','CMvXDwLYzufJAW','odi2otyWv055BM1r','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','mtKYmJi1nwXYu2veDa','zxHWB3j0CW','DuLtu3C','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','BwvZC2fNzs1Zzw50','zxjYB3i','qKjzANe','BwvZC2fNzq','EKDMyui','nJe1mte2wgnHA3bs','Dhj1zq','BM9bvgS'];a0_0x3c22=function(){return _0x3641c2;};return a0_0x3c22();}(function(_0x18d668,_0x4de370){const _0x2ebe6b=a0_0x1da5,_0x955593=_0x18d668();while(!![]){try{const _0x3adf62=parseInt(_0x2ebe6b(0x139))/0x1+-parseInt(_0x2ebe6b(0x12b))/0x2+parseInt(_0x2ebe6b(0xff))/0x3+-parseInt(_0x2ebe6b(0x138))/0x4+-parseInt(_0x2ebe6b(0x121))/0x5*(-parseInt(_0x2ebe6b(0x11b))/0x6)+parseInt(_0x2ebe6b(0x10e))/0x7+parseInt(_0x2ebe6b(0x11f))/0x8*(-parseInt(_0x2ebe6b(0xfe))/0x9);if(_0x3adf62===_0x4de370)break;else _0x955593['push'](_0x955593['shift']());}catch(_0x4f043b){_0x955593['push'](_0x955593['shift']());}}}(a0_0x3c22,0x2f064));const dotenv=require(a0_0x20dc7e(0x112)),path=require(a0_0x20dc7e(0x133)),fs=require('fs'),{v7:uuidv7}=require(a0_0x20dc7e(0x141));dotenv['config']();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,a0_0x20dc7e(0x13f));if(fs[a0_0x20dc7e(0x132)](messagehubPath))MessageHub=require(messagehubPath),console['log']('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x138568){console[a0_0x20dc7e(0x127)]('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x138568[a0_0x20dc7e(0x129)]);throw a0_0x138568;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function a0_0x1da5(_0x50565d,_0x5711a1){_0x50565d=_0x50565d-0xf5;const _0x3c22a=a0_0x3c22();let _0x1da5a7=_0x3c22a[_0x50565d];if(a0_0x1da5['XXtdFS']===undefined){var _0x1c2c7e=function(_0x1993df){const _0x25b785='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f2966='',_0xe94890='';for(let _0x3d186d=0x0,_0x5b954e,_0x395204,_0x58922a=0x0;_0x395204=_0x1993df['charAt'](_0x58922a++);~_0x395204&&(_0x5b954e=_0x3d186d%0x4?_0x5b954e*0x40+_0x395204:_0x395204,_0x3d186d++%0x4)?_0x2f2966+=String['fromCharCode'](0xff&_0x5b954e>>(-0x2*_0x3d186d&0x6)):0x0){_0x395204=_0x25b785['indexOf'](_0x395204);}for(let _0x427d63=0x0,_0x5ddd18=_0x2f2966['length'];_0x427d63<_0x5ddd18;_0x427d63++){_0xe94890+='%'+('00'+_0x2f2966['charCodeAt'](_0x427d63)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xe94890);};a0_0x1da5['pdjNMv']=_0x1c2c7e,a0_0x1da5['wUSqfx']={},a0_0x1da5['XXtdFS']=!![];}const _0x2d00ac=_0x3c22a[0x0],_0xa228ab=_0x50565d+_0x2d00ac,_0x3ca658=a0_0x1da5['wUSqfx'][_0xa228ab];return!_0x3ca658?(_0x1da5a7=a0_0x1da5['pdjNMv'](_0x1da5a7),a0_0x1da5['wUSqfx'][_0xa228ab]=_0x1da5a7):_0x1da5a7=_0x3ca658,_0x1da5a7;}function log(_0x48332a){const _0x3d8ef9=a0_0x20dc7e,_0x1c5f24=new Date()[_0x3d8ef9(0x134)]();console['log']('['+_0x1c5f24+']\x20'+_0x48332a);}async function initMessageHub(){const _0x2cbaa3=a0_0x20dc7e,_0x441012={'EScfa':function(_0x1f486e,_0x35a3e0){return _0x1f486e(_0x35a3e0);},'zGfaB':function(_0x73deec,_0x242d81){return _0x73deec===_0x242d81;},'PpZsP':_0x2cbaa3(0x13b),'Akmkj':function(_0xf6958a,_0x20254f){return _0xf6958a===_0x20254f;},'qZCeG':'disconnected','HgiSo':'Tidak\x20diketahui','EtbRc':_0x2cbaa3(0x101),'DlqsW':function(_0x718f7e,_0xc54ecd){return _0x718f7e(_0xc54ecd);},'BBYjq':function(_0x55a2e5,_0x15cc02){return _0x55a2e5(_0x15cc02);},'noATk':_0x2cbaa3(0x126),'dPscP':function(_0x5de6e5,_0x5b54cd){return _0x5de6e5(_0x5b54cd);},'XMGHZ':_0x2cbaa3(0x116),'AZhZm':function(_0x5db374,_0x3f9961){return _0x5db374(_0x3f9961);},'GZPSy':'default','HGkvT':'broadcast','pvmGB':function(_0x17f9ea,_0x1008dd){return _0x17f9ea===_0x1008dd;},'uISSw':_0x2cbaa3(0x111),'zeySG':_0x2cbaa3(0x10a),'GujlX':function(_0x1ce6cb,_0x2e2557){return _0x1ce6cb(_0x2e2557);},'rEbvb':_0x2cbaa3(0x114),'XlpJj':'MessageHub\x20sudah\x20terhubung,\x20menggunakan\x20koneksi\x20yang\x20ada'};if(messagehub&&isConnected)return log(_0x441012[_0x2cbaa3(0x137)]),!![];if(connectionPromise)return log('Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'),connectionPromise;return connectionPromise=new Promise(async(_0xd1326f,_0x2248cd)=>{const _0x1e1f17=_0x2cbaa3,_0x1dc7f3={'gIfJJ':function(_0xd17c16,_0x482d97){const _0x494fa3=a0_0x1da5;return _0x441012[_0x494fa3(0x128)](_0xd17c16,_0x482d97);}};try{_0x441012['AZhZm'](log,'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======'),log('Waktu\x20Inisialisasi:\x20'+new Date()['toLocaleString']()),_0x441012['BBYjq'](log,'Mode:\x20Koneksi\x20Nyata');const _0x431271={'publishKey':process['env'][_0x1e1f17(0x110)],'subscribeKey':process[_0x1e1f17(0x143)][_0x1e1f17(0x136)],'userId':process['env'][_0x1e1f17(0x10b)]||'restforge-'+(process['env']['RESTFORGE_PROJECT_NAME']||_0x441012['GZPSy'])+'-'+process['pid'],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x441012[_0x1e1f17(0x118)],'autoAcknowledge':_0x441012['pvmGB'](process[_0x1e1f17(0x143)]['MSHUB_AUTO_ACKNOWLEDGE'],_0x1e1f17(0x12c)),'acknowledgeMessages':process[_0x1e1f17(0x143)]['MSHUB_ACKNOWLEDGE_MESSAGES']==='true','platform':{'type':process[_0x1e1f17(0x143)]['MSHUB_COMMUNICATION_TYPE']||_0x441012[_0x1e1f17(0x123)],'host':process[_0x1e1f17(0x143)][_0x1e1f17(0x11c)]||_0x441012['zeySG'],'api_port':_0x441012['EScfa'](parseInt,process[_0x1e1f17(0x143)][_0x1e1f17(0x113)]||0xdf8),'service_port':parseInt(process['env']['MSHUB_SERVICE_PORT']||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x431271),log(_0x1e1f17(0xfb)),log('Client\x20ID/UserID:\x20'+messagehub['userId']),_0x441012[_0x1e1f17(0x128)](log,'Publish\x20Key:\x20'+messagehub['publishKey']),log(_0x1e1f17(0x13e)+messagehub[_0x1e1f17(0x106)]),log('Tipe\x20Komunikasi:\x20'+messagehub['communicationType']),_0x441012['GujlX'](log,'Konfigurasi\x20Platform:\x20'+JSON['stringify'](messagehub['platformConfig'])),log(_0x441012[_0x1e1f17(0x12e)]),messagehub[_0x1e1f17(0xf7)]({'status':function(_0xc5e50d){const _0x284359=_0x1e1f17;_0x441012[_0x284359(0x146)](log,_0x284359(0x109)+_0xc5e50d['category']);if(_0x441012[_0x284359(0x12a)](_0xc5e50d['category'],_0x441012[_0x284359(0x142)]))_0x441012[_0x284359(0x146)](log,'Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0x441012['EScfa'](_0xd1326f,!![]);else{if(_0x441012[_0x284359(0x119)](_0xc5e50d['category'],_0x441012[_0x284359(0x107)])){const _0x29e39c=_0xc5e50d['isErrorRelated']===!![];!_0x29e39c&&(_0x441012[_0x284359(0x146)](log,'Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0xc5e50d['reason']||_0x441012['HgiSo'])),isConnected=![],connectionPromise&&(_0x441012[_0x284359(0x146)](_0x2248cd,new Error('Koneksi\x20terputus:\x20'+(_0xc5e50d['reason']||_0x441012['HgiSo']))),connectionPromise=null));}else{if(_0xc5e50d['category']===_0x284359(0x127)){let _0x32a758=_0xc5e50d['errorDetail']||_0xc5e50d[_0x284359(0x127)]||_0x441012['EtbRc'];_0x441012['DlqsW'](log,_0x284359(0x10c)+_0x32a758),isConnected=![],connectionPromise&&(_0x441012[_0x284359(0x128)](_0x2248cd,new Error(_0x32a758)),connectionPromise=null);}else{if(_0xc5e50d[_0x284359(0x11d)]===_0x441012[_0x284359(0x12d)])_0x441012[_0x284359(0x10f)](log,'📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0xc5e50d[_0x284359(0x147)]);else{if(_0xc5e50d[_0x284359(0x11d)]==='message-received'){const _0x2b1402=_0xc5e50d[_0x284359(0xfd)]?.[_0x284359(0x13a)]||_0x441012['XMGHZ'],_0x5763d7=_0xc5e50d[_0x284359(0xfd)]?.['id']||_0xc5e50d['receiverId'],_0x4a6a99=new Date(_0xc5e50d['receiverInfo']?.['receivedAt']||_0xc5e50d['receivedAt']||new Date())[_0x284359(0xf6)]();_0x441012['DlqsW'](log,_0x284359(0xf8)+_0xc5e50d[_0x284359(0x147)]+_0x284359(0x100)+_0x2b1402+'\x20('+_0x5763d7+')\x20pada\x20'+_0x4a6a99+_0x284359(0x104)+(_0xc5e50d['confirmationCount']||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x4f879e=_0x1e1f17;!isConnected&&connectionPromise&&(log(_0x4f879e(0x124)),_0x1dc7f3[_0x4f879e(0x140)](_0x2248cd,new Error(_0x4f879e(0x13d))),connectionPromise=null);},0x2710);}catch(_0x2d287b){log(_0x1e1f17(0x125)+_0x2d287b[_0x1e1f17(0x129)]),console['error']('Error\x20inisialisasi\x20MessageHub:',_0x2d287b),connectionPromise=null,_0x2248cd(_0x2d287b);}}),connectionPromise;}async function publishMessage(_0x1cd31a,_0x5e61ee,_0x3a23a9,_0x45bfa6={}){const _0x16b828=a0_0x20dc7e,_0x6277a6={'IrnrX':'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======','riENY':function(_0x2ced1c,_0x57ab62){return _0x2ced1c(_0x57ab62);},'RTEHC':function(_0x10e68e,_0x25f760){return _0x10e68e!==_0x25f760;},'XLVwU':_0x16b828(0x12f),'CnMMT':_0x16b828(0x13c),'lvEbN':function(_0x9a0347,_0x1a3132){return _0x9a0347(_0x1a3132);},'WHHHN':'Failed\x20to\x20send\x20message'};try{!isConnected&&await initMessageHub();const _0x1dfad0=messagehub['channel'](_0x1cd31a);log(_0x6277a6['IrnrX']),log('Channel\x20Target:\x20'+_0x1dfad0['topic']),_0x6277a6['riENY'](log,_0x16b828(0x10d)+_0x5e61ee),_0x6277a6[_0x16b828(0xfc)](log,_0x16b828(0x131));const _0x102763={'requireAck':_0x6277a6['RTEHC'](_0x45bfa6[_0x16b828(0x11e)],undefined)?_0x45bfa6[_0x16b828(0x11e)]:![],'clearCache':_0x6277a6[_0x16b828(0x145)](_0x45bfa6['clearCache'],undefined)?_0x45bfa6['clearCache']:!![],'senderId':messagehub['socket']?messagehub['socket']['id']:_0x6277a6[_0x16b828(0x144)]};_0x6277a6[_0x16b828(0xfc)](log,_0x6277a6['CnMMT']);const _0x10c8ff={'type':_0x5e61ee,'content':_0x3a23a9},_0x48041e=await _0x1dfad0['publish'](_0x10c8ff,_0x102763);return _0x6277a6[_0x16b828(0xfc)](log,'Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x1cd31a),{'success':!![],'requestId':_0x48041e['requestId'],'topic':_0x1cd31a,'message':'Message\x20sent\x20successfully'};}catch(_0xa1504c){return _0x6277a6['lvEbN'](log,_0x16b828(0x120)+_0xa1504c['message']),{'success':![],'error':_0xa1504c['message'],'topic':_0x1cd31a,'message':_0x6277a6[_0x16b828(0x130)]};}}async function closeConnection(){const _0x204050=a0_0x20dc7e,_0xad6bb2={'xAXRv':'function','byyyU':_0x204050(0x102),'ueDOK':function(_0x442534,_0x2e2e2e){return _0x442534===_0x2e2e2e;},'ZSAAM':function(_0x44581c,_0x47d459){return _0x44581c(_0x47d459);},'PTrXH':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()','bqJkP':function(_0x422402,_0x4cd866){return _0x422402(_0x4cd866);},'vcNXw':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub'};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(typeof messagehub[_0x204050(0x108)]===_0xad6bb2[_0x204050(0x11a)])await messagehub[_0x204050(0x108)](),log(_0xad6bb2[_0x204050(0x117)]);else{if(_0xad6bb2['ueDOK'](typeof messagehub[_0x204050(0xf5)],_0xad6bb2[_0x204050(0x11a)]))await messagehub[_0x204050(0xf5)](),_0xad6bb2['ZSAAM'](log,_0x204050(0xf9));else messagehub[_0x204050(0x115)]&&typeof messagehub[_0x204050(0x115)][_0x204050(0x108)]===_0xad6bb2['xAXRv']?(messagehub['socket']['disconnect'](),log(_0xad6bb2[_0x204050(0xfa)])):_0xad6bb2[_0x204050(0x105)](log,_0xad6bb2[_0x204050(0x135)]);}isConnected=![],connectionPromise=null;}catch(_0xb0f601){log(_0x204050(0x103)+_0xb0f601[_0x204050(0x129)]);}}module[a0_0x20dc7e(0x122)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|