@restforgejs/platform 5.0.0 → 5.0.3
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/init.js +4 -104
- package/generators/cli/payload/migrate.js +1 -1
- package/generators/cli/schema/list.js +82 -18
- package/generators/cli/schema/migrate.js +23 -3
- package/generators/lib/dbschema-kit/diff-engine.js +715 -715
- package/generators/lib/migrate/field-type-resolver.js +9 -3
- package/generators/lib/migrate/migrate-runner.js +244 -38
- package/generators/lib/migrate/naming.js +9 -0
- package/generators/lib/payload/payload-runner.js +20 -0
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';function
|
|
1
|
+
'use strict';function a0_0x32b6(_0xa5b4e,_0x393c94){_0xa5b4e=_0xa5b4e-0x77;const _0x2d8d11=a0_0x2d8d();let _0x32b67d=_0x2d8d11[_0xa5b4e];if(a0_0x32b6['OqoRVi']===undefined){var _0xff2af9=function(_0x47a9ef){const _0x5a4964='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2bae25='',_0x674016='';for(let _0x3cc31b=0x0,_0x76a71,_0x2b5727,_0x23394d=0x0;_0x2b5727=_0x47a9ef['charAt'](_0x23394d++);~_0x2b5727&&(_0x76a71=_0x3cc31b%0x4?_0x76a71*0x40+_0x2b5727:_0x2b5727,_0x3cc31b++%0x4)?_0x2bae25+=String['fromCharCode'](0xff&_0x76a71>>(-0x2*_0x3cc31b&0x6)):0x0){_0x2b5727=_0x5a4964['indexOf'](_0x2b5727);}for(let _0x38d3fc=0x0,_0x5ac070=_0x2bae25['length'];_0x38d3fc<_0x5ac070;_0x38d3fc++){_0x674016+='%'+('00'+_0x2bae25['charCodeAt'](_0x38d3fc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x674016);};a0_0x32b6['aGDAcm']=_0xff2af9,a0_0x32b6['SBuEQh']={},a0_0x32b6['OqoRVi']=!![];}const _0x3838a7=_0x2d8d11[0x0],_0x11fe14=_0xa5b4e+_0x3838a7,_0xd15897=a0_0x32b6['SBuEQh'][_0x11fe14];return!_0xd15897?(_0x32b67d=a0_0x32b6['aGDAcm'](_0x32b67d),a0_0x32b6['SBuEQh'][_0x11fe14]=_0x32b67d):_0x32b67d=_0xd15897,_0x32b67d;}const a0_0x137144=a0_0x32b6;(function(_0x3ee5b0,_0x47369b){const _0x51341e=a0_0x32b6,_0x2f30f1=_0x3ee5b0();while(!![]){try{const _0x52490c=-parseInt(_0x51341e(0x95))/0x1+-parseInt(_0x51341e(0x8b))/0x2+parseInt(_0x51341e(0x96))/0x3*(parseInt(_0x51341e(0x84))/0x4)+parseInt(_0x51341e(0xa9))/0x5+parseInt(_0x51341e(0x78))/0x6*(parseInt(_0x51341e(0x90))/0x7)+-parseInt(_0x51341e(0xa7))/0x8*(parseInt(_0x51341e(0x9c))/0x9)+parseInt(_0x51341e(0x85))/0xa;if(_0x52490c===_0x47369b)break;else _0x2f30f1['push'](_0x2f30f1['shift']());}catch(_0x5449a6){_0x2f30f1['push'](_0x2f30f1['shift']());}}}(a0_0x2d8d,0xcd8ed));const multer=require(a0_0x137144(0x9d)),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require('./logger');class UploadHandlerV2{constructor(){const _0x22755c=a0_0x137144;this[_0x22755c(0x87)]=null;}get['tempDir'](){const _0x24872c=a0_0x137144,_0x3bde6c={'ApbxN':'temp'};if(!this['_tempDir']){const _0x1c1cc4=process[_0x24872c(0x80)][_0x24872c(0xa4)]||'default';this['_tempDir']=process[_0x24872c(0x80)]['UPLOAD_TEMP_DIR']||path['join'](process[_0x24872c(0x8a)](),_0x3bde6c['ApbxN'],'uploads',_0x1c1cc4),!fsSync[_0x24872c(0x7b)](this[_0x24872c(0x87)])&&fsSync[_0x24872c(0x77)](this[_0x24872c(0x87)],{'recursive':!![]});}return this['_tempDir'];}['createUploadMiddleware'](_0x2353c3={}){const _0x3c464f=a0_0x137144,_0x1c5d6a={'wocmV':function(_0x1e7577,_0x1681ff,_0xec7014){return _0x1e7577(_0x1681ff,_0xec7014);},'SpPJn':function(_0x486c0c,_0x9cb6ec){return _0x486c0c===_0x9cb6ec;},'BJTuf':function(_0x387a12,_0x368de4){return _0x387a12(_0x368de4);},'GEruS':function(_0x136bf0,_0x40635d){return _0x136bf0(_0x40635d);}},_0x12cd10=_0x2353c3['maxFiles']||0x5,_0x120994=this[_0x3c464f(0x8d)](_0x2353c3['maxFileSize']||_0x3c464f(0x7d)),_0x4c086d=_0x2353c3['allowedTypes']||[],_0x1aa23a=multer[_0x3c464f(0xa6)]({'destination':(_0x58c7ac,_0x3f8279,_0x428c21)=>{const _0x1c291a=_0x3c464f;!fsSync[_0x1c291a(0x7b)](this['tempDir'])&&fsSync[_0x1c291a(0x77)](this['tempDir'],{'recursive':!![]}),_0x1c5d6a['wocmV'](_0x428c21,null,this[_0x1c291a(0xa0)]);},'filename':(_0x11e522,_0x2cac14,_0x15ab0e)=>{const _0x3ec62f=_0x3c464f,_0x47de16=crypto[_0x3ec62f(0x8c)](0x8)['toString']('hex'),_0x48fede=Date[_0x3ec62f(0xa1)](),_0x249a0a=path['extname'](_0x2cac14['originalname']);_0x15ab0e(null,'upload-'+_0x48fede+'-'+_0x47de16+_0x249a0a);}}),_0x463ba2=(_0x42fefd,_0x4ab2de,_0x531f25)=>{const _0x53a372=_0x3c464f;if(_0x1c5d6a['SpPJn'](_0x4c086d['length'],0x0))return _0x531f25(null,!![]);const _0xc0db13=path['extname'](_0x4ab2de['originalname'])['toLowerCase']()[_0x53a372(0x8e)]('.','');_0x4c086d['includes'](_0xc0db13)?_0x531f25(null,!![]):_0x1c5d6a[_0x53a372(0x93)](_0x531f25,new Error('File\x20type\x20\x22.'+_0xc0db13+_0x53a372(0x83)+_0x4c086d[_0x53a372(0x7f)](',\x20')));};return _0x1c5d6a[_0x3c464f(0x79)](multer,{'storage':_0x1aa23a,'limits':{'fileSize':_0x120994,'files':_0x12cd10},'fileFilter':_0x463ba2})['array']('files',_0x12cd10);}async[a0_0x137144(0x7a)](_0x550d3e,_0x191210,_0x37627e={}){const _0xb14842=a0_0x137144,_0x1a0af7={'xFEqH':function(_0x17483f,_0x276b9e){return _0x17483f(_0x276b9e);},'EHGzL':_0xb14842(0xa5)},{createFileMetadata:_0xc48136}=_0x1a0af7['xFEqH'](require,_0xb14842(0x7e)),_0x1aa4f3=[];for(const _0x2fa1f7 of _0x550d3e){try{const _0x39f58b=_0x191210['generateKey'](_0x2fa1f7['originalname'],{'prefix':_0x37627e['prefix']||'','project':_0x37627e['project']||'','module':_0x37627e['module']||'','endpoint':_0x37627e['endpoint']||''}),_0x676b99=fsSync['createReadStream'](_0x2fa1f7['path']),_0x37b7a3=await _0x191210[_0xb14842(0x88)](_0x676b99,_0x39f58b,{'contentType':_0x2fa1f7[_0xb14842(0x94)],'fileSize':_0x2fa1f7[_0xb14842(0x86)]}),_0x37d8d3=_0xc48136({'key':_0x37b7a3['key'],'originalName':_0x2fa1f7[_0xb14842(0x91)],'fileName':path[_0xb14842(0x97)](_0x39f58b),'contentType':_0x2fa1f7[_0xb14842(0x94)],'size':_0x2fa1f7['size'],'url':_0x37b7a3[_0xb14842(0xa3)],'provider':_0x191210[_0xb14842(0x98)],'bucket':_0x191210[_0xb14842(0x92)]||null,'uploadedBy':_0x37627e['uploadedBy']||null});_0x1aa4f3[_0xb14842(0x81)](_0x37d8d3);}catch(_0x473481){logger[_0xb14842(0x7c)]({'event':_0x1a0af7[_0xb14842(0x89)],'file':_0x2fa1f7[_0xb14842(0x91)],'error':_0x473481['message']},_0xb14842(0x99)+_0x2fa1f7['originalname']);throw _0x473481;}finally{await this['_deleteTempFile'](_0x2fa1f7[_0xb14842(0x9a)]);}}return _0x1aa4f3;}async['_deleteTempFile'](_0x5be0d3){const _0x16c6ad=a0_0x137144,_0x5604a1={'lpxUe':_0x16c6ad(0x9b)};try{await fs[_0x16c6ad(0x9e)](_0x5be0d3);}catch(_0x534399){logger['warn']({'event':_0x5604a1['lpxUe'],'filePath':_0x5be0d3,'error':_0x534399[_0x16c6ad(0xa8)]},_0x16c6ad(0x8f));}}['_parseFileSize'](_0x2974c1){const _0x393b87=a0_0x137144,_0x68c878={'xffuM':function(_0x1dc12f,_0x9a9e4c){return _0x1dc12f===_0x9a9e4c;},'GxovW':function(_0x52ddc2,_0xf64e9d){return _0x52ddc2(_0xf64e9d);},'rokHL':function(_0x177eb1,_0xfa25d){return _0x177eb1*_0xfa25d;},'csKIa':function(_0x152af4,_0x1c5c14){return _0x152af4(_0x1c5c14);},'wTURs':function(_0x5f15f4,_0x318036){return _0x5f15f4*_0x318036;}};if(_0x68c878[_0x393b87(0xa2)](typeof _0x2974c1,'number'))return _0x2974c1;const _0x2214e4=_0x68c878[_0x393b87(0x82)](String,_0x2974c1)['trim']()['match'](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x2214e4)return _0x68c878['rokHL'](0xa,0x400)*0x400;const _0x250613=_0x68c878['csKIa'](parseFloat,_0x2214e4[0x1]),_0x579610=_0x2214e4[0x2]['toUpperCase'](),_0x1b652a={'B':0x1,'KB':0x400,'MB':0x400*0x400,'GB':0x400*0x400*0x400};return Math['floor'](_0x68c878['wTURs'](_0x250613,_0x1b652a[_0x579610]||0x1));}}function a0_0x2d8d(){const _0x3f7b05=['r3HVDLC','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG','mZC2qwPcD1zf','nZi0mJG2mgnxDNfLzW','C2L6zq','x3rLBxbeAxi','DxbSB2fK','ruHhEKW','y3DK','mJe3mZm4y29lvezt','CMfUzg9TqNL0zxm','x3bHCNnLrMLSzvnPEMu','CMvWBgfJzq','rMfPBgvKihrVigrLBgv0zsb0zw1WigzPBgu','otaWmtiZCujlzeHu','B3jPz2LUywXUyw1L','yNvJA2v0','qKPuDwy','BwLTzxr5Cgu','mJa3nty5yLrvsMfL','nZe5n0fHqNP0DW','yMfZzw5HBwu','ChjVDMLKzxjoyw1L','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fKzwqGzMLSztOG','Cgf0Aa','DxbSB2fKx3yYx3rLBxbFzgvSzxrLx3DHCM4','ouzJsfDiAG','BxvSDgvY','Dw5SAw5R','zxHWB3j0CW','DgvTCerPCG','BM93','EgzMDu0','DxjS','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','zgLZA1n0B3jHz2u','nJu1otC1mLLVEwH3Eq','BwvZC2fNzq','mZG1nJaXmgfgAvnHCW','BwTKAxjtEw5J','mtjOA1vyyKW','r0vYDvm','ChjVy2vZC1vWBg9HzgvKrMLSzxm','zxHPC3rZu3LUyW','zxjYB3i','mtbnqG','lI4VC3rVCMfNzs9MAwXLlw1LDgfKyxrHlwHLBhbLCG','AM9PBG','zw52','ChvZAa'];a0_0x2d8d=function(){return _0x3f7b05;};return a0_0x2d8d();}module[a0_0x137144(0x9f)]=new UploadHandlerV2();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x5ec5c7=a0_0x10d9;function a0_0x151f(){const _0x21cb0d=['DxbSB2fKrgLY','Dw5SAw5R','tLL5qxC','mtq2mZe0odbrwxzKt3a','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','mtCWmwrmAvLRDG','zxjYB3i','Aw5JBhvKzxm','mJGYnJzwz3jwB1y','z2v0vxbSB2fKtwLKzgXLD2fYzq','BwLTzxr5Cgu','CNPHqKq','vvPeAfa','Dg9tDhjPBMC','zw52','zKDPuhu','otqXnJqWBK5MDLLW','zgLZA1n0B3jHz2u','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','BuL1EM4','mJbUDfzXtNm','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','zMLSzq','mJiYnLP5tfDzAG','y3j5ChrV','mtiWnte5AvrrALjR','x3vWBg9HzerPCG','mZC2mZb2v2nsELK','mty0mZmXuNLesM5U','BuHgBgS','BxvSDgvY','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','Agv4','vvbmt0fex0rjuG','B3jPz2LUywXUyw1L','r0ngB3m','zxH0BMfTzq','mtqZBMnMzwjg','Cgf0Aa','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','BwTKAxjtEw5J','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','BwvZC2fNzq','lI9SB2DNzxi','mJGWtLbIyKvv','mZf5wu5qs24','zgvSzxrLrMLSzq'];a0_0x151f=function(){return _0x21cb0d;};return a0_0x151f();}(function(_0x14c4ce,_0x334535){const _0x2b42a1=a0_0x10d9,_0x3af5c9=_0x14c4ce();while(!![]){try{const _0x55dd11=parseInt(_0x2b42a1(0xc3))/0x1*(-parseInt(_0x2b42a1(0x9e))/0x2)+-parseInt(_0x2b42a1(0xb2))/0x3*(-parseInt(_0x2b42a1(0xaa))/0x4)+-parseInt(_0x2b42a1(0xa6))/0x5+-parseInt(_0x2b42a1(0xad))/0x6*(parseInt(_0x2b42a1(0x9b))/0x7)+parseInt(_0x2b42a1(0xc2))/0x8*(-parseInt(_0x2b42a1(0xaf))/0x9)+parseInt(_0x2b42a1(0xb1))/0xa*(-parseInt(_0x2b42a1(0xbb))/0xb)+parseInt(_0x2b42a1(0x99))/0xc;if(_0x55dd11===_0x334535)break;else _0x3af5c9['push'](_0x3af5c9['shift']());}catch(_0x38478e){_0x3af5c9['push'](_0x3af5c9['shift']());}}}(a0_0x151f,0x3f397));function a0_0x10d9(_0x4e4bb8,_0xaf83a3){_0x4e4bb8=_0x4e4bb8-0x96;const _0x151f65=a0_0x151f();let _0x10d907=_0x151f65[_0x4e4bb8];if(a0_0x10d9['oixdzb']===undefined){var _0x4c1cb5=function(_0x4ad142){const _0x49cc9e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x236e69='',_0x128e54='';for(let _0x45516d=0x0,_0x5da797,_0x142d23,_0x269def=0x0;_0x142d23=_0x4ad142['charAt'](_0x269def++);~_0x142d23&&(_0x5da797=_0x45516d%0x4?_0x5da797*0x40+_0x142d23:_0x142d23,_0x45516d++%0x4)?_0x236e69+=String['fromCharCode'](0xff&_0x5da797>>(-0x2*_0x45516d&0x6)):0x0){_0x142d23=_0x49cc9e['indexOf'](_0x142d23);}for(let _0x3fbd64=0x0,_0x4561f4=_0x236e69['length'];_0x3fbd64<_0x4561f4;_0x3fbd64++){_0x128e54+='%'+('00'+_0x236e69['charCodeAt'](_0x3fbd64)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x128e54);};a0_0x10d9['DCWyZW']=_0x4c1cb5,a0_0x10d9['CtbYNN']={},a0_0x10d9['oixdzb']=!![];}const _0x462846=_0x151f65[0x0],_0x210b7d=_0x4e4bb8+_0x462846,_0x2778cf=a0_0x10d9['CtbYNN'][_0x210b7d];return!_0x2778cf?(_0x10d907=a0_0x10d9['DCWyZW'](_0x10d907),a0_0x10d9['CtbYNN'][_0x210b7d]=_0x10d907):_0x10d907=_0x2778cf,_0x10d907;}const multer=require(a0_0x5ec5c7(0xb4)),path=require(a0_0x5ec5c7(0xbc)),crypto=require(a0_0x5ec5c7(0xae)),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x5ec5c7(0xc1));class UploadHandler{constructor(){const _0x587a9d=a0_0x5ec5c7;this[_0x587a9d(0xb0)]=null,this['maxFileSize']=0xa*0x400*0x400;}get['uploadDir'](){const _0x11cfde=a0_0x5ec5c7,_0x5a9c16={'fUUPt':_0x11cfde(0xbf)};if(!this[_0x11cfde(0xb0)]){const _0x4f0c52=process[_0x11cfde(0xa4)]['RESTFORGE_PROJECT_NAME']||'default';this['_uploadDir']=process['env'][_0x11cfde(0xb7)]||path['join'](__dirname,'../../temp/uploads/'+_0x4f0c52);try{!fsSync['existsSync'](this[_0x11cfde(0xb0)])&&fsSync[_0x11cfde(0xbe)](this['_uploadDir'],{'recursive':!![]}),logger['info']({'event':'upload_handler_init','dir':this[_0x11cfde(0xb0)]},_0x11cfde(0xbd));}catch(_0x33e990){logger[_0x11cfde(0x9c)]({'event':_0x11cfde(0xa8),'error':_0x33e990[_0x11cfde(0xc0)]},_0x5a9c16['fUUPt']);}}return this['_uploadDir'];}['getStorage'](){const _0x52ae54=a0_0x5ec5c7,_0x1a6ee8={'NYyAw':function(_0x42fba9,_0x371345,_0x597bb0){return _0x42fba9(_0x371345,_0x597bb0);},'UZDhP':_0x52ae54(0xb6),'GCFos':function(_0x2a272d,_0x97c745,_0x250106){return _0x2a272d(_0x97c745,_0x250106);}};return multer[_0x52ae54(0xa7)]({'destination':(_0x190599,_0x217989,_0x13d74e)=>{const _0x4ead11=_0x52ae54;!fsSync['existsSync'](this[_0x4ead11(0x96)])&&fsSync[_0x4ead11(0xbe)](this['uploadDir'],{'recursive':!![]}),_0x1a6ee8[_0x4ead11(0x98)](_0x13d74e,null,this[_0x4ead11(0x96)]);},'filename':(_0x5d7211,_0x196be8,_0x4e841f)=>{const _0xd56145=_0x52ae54,_0x4b0e50=crypto['randomBytes'](0x8)[_0xd56145(0xa3)](_0x1a6ee8[_0xd56145(0xa2)]),_0x1b3125=Date['now'](),_0xfa0b8f=path['extname'](_0x196be8[_0xd56145(0xb8)]);_0x1a6ee8[_0xd56145(0xb9)](_0x4e841f,null,'upload-'+_0x1b3125+'-'+_0x4b0e50+_0xfa0b8f);}});}[a0_0x5ec5c7(0x9f)](){const _0x53b949=a0_0x5ec5c7,_0x20d864={'wFHnj':'application/vnd.ms-excel','ntQXk':'.xlsx','mHFlk':function(_0x294d25,_0x3b52e5,_0x39457e){return _0x294d25(_0x3b52e5,_0x39457e);},'PtVyL':function(_0x501163,_0xc919f3){return _0x501163(_0xc919f3);},'iXazq':'Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed','lDoJx':_0x53b949(0xac)};return _0x20d864['PtVyL'](multer,{'storage':this['getStorage'](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x2ec9c7,_0x1a231f,_0x211ca9)=>{const _0x469c4e=_0x53b949,_0x514eeb=['application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',_0x20d864['wFHnj']],_0x5debd1=[_0x20d864['ntQXk'],'.xls'],_0x23d5e5=path[_0x469c4e(0xba)](_0x1a231f['originalname'])['toLowerCase']();_0x514eeb[_0x469c4e(0x9d)](_0x1a231f[_0x469c4e(0xa0)])&&_0x5debd1[_0x469c4e(0x9d)](_0x23d5e5)?_0x20d864[_0x469c4e(0xb3)](_0x211ca9,null,!![]):_0x20d864['PtVyL'](_0x211ca9,new Error(_0x20d864['iXazq']));}})['single'](_0x20d864['lDoJx']);}async[a0_0x5ec5c7(0xc4)](_0x25f270){const _0x168355=a0_0x5ec5c7,_0x5b010d={'mIuzn':'upload_file_deleted','rzaBD':_0x168355(0xab),'fGiPu':_0x168355(0xb5)};try{await fs[_0x168355(0x97)](_0x25f270),logger['info']({'event':_0x5b010d[_0x168355(0xa9)],'filePath':_0x25f270},_0x5b010d[_0x168355(0xa1)]);}catch(_0x51a199){logger['error']({'event':_0x5b010d[_0x168355(0xa5)],'filePath':_0x25f270,'error':_0x51a199['message']},_0x168355(0x9a));}}}module['exports']=new UploadHandler();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x3b4869=a0_0x4be4;function a0_0x3fb6(){const _0x192cf2=['yxbWBgLJyxrPB24VANnVBG','mtK5odi1sLziug5u','mteWnZuYmtfzALjOre0','Dg9ju09tDhjPBMC','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','Aw5Zzxj0','zgvSzxrL','lcbtDgf0Dxm6ia','rMfPBgvKihrVihnLBMqGzgvSzxrLihDLyMHVB2S','yxHPB3m','m2HHuxDNCG','ntmZntKZmNzKsgrZEG','zxjYB3i','nZHpvw5hwfi','rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','A1jIAMW','nZm2mduXmKXOC3bNsa','CuLYvMi','mtK5nty4EevxBNn4','BwvZC2fNzq','Bg9N','nZKZnZG4oeT6C0nABG','mZa1ndnxuLz1AhG','C3rHDhvZ','sw5Zzxj0ihDLyMHVB2SGC2vUDcb0BYa'];a0_0x3fb6=function(){return _0x192cf2;};return a0_0x3fb6();}(function(_0x1ac209,_0x46a855){const _0x1af731=a0_0x4be4,_0x533737=_0x1ac209();while(!![]){try{const _0x2fa24e=-parseInt(_0x1af731(0x120))/0x1*(parseInt(_0x1af731(0x117))/0x2)+parseInt(_0x1af731(0x114))/0x3*(parseInt(_0x1af731(0x11c))/0x4)+parseInt(_0x1af731(0x10b))/0x5+parseInt(_0x1af731(0x115))/0x6+parseInt(_0x1af731(0x11f))/0x7+parseInt(_0x1af731(0x11a))/0x8+-parseInt(_0x1af731(0x10c))/0x9;if(_0x2fa24e===_0x46a855)break;else _0x533737['push'](_0x533737['shift']());}catch(_0x3a68fd){_0x533737['push'](_0x533737['shift']());}}}(a0_0x3fb6,0x9548f));const axios=require(a0_0x3b4869(0x113));function a0_0x4be4(_0x9a590e,_0x2884af){_0x9a590e=_0x9a590e-0x10b;const _0x3fb6fb=a0_0x3fb6();let _0x4be40d=_0x3fb6fb[_0x9a590e];if(a0_0x4be4['DqHUhR']===undefined){var _0x3b9e54=function(_0x5a36c0){const _0x4f50cb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ee7b8='',_0x78a6a8='';for(let _0x814c3b=0x0,_0x180149,_0x4b7ee5,_0xdc6982=0x0;_0x4b7ee5=_0x5a36c0['charAt'](_0xdc6982++);~_0x4b7ee5&&(_0x180149=_0x814c3b%0x4?_0x180149*0x40+_0x4b7ee5:_0x4b7ee5,_0x814c3b++%0x4)?_0x4ee7b8+=String['fromCharCode'](0xff&_0x180149>>(-0x2*_0x814c3b&0x6)):0x0){_0x4b7ee5=_0x4f50cb['indexOf'](_0x4b7ee5);}for(let _0x4e3611=0x0,_0xba655c=_0x4ee7b8['length'];_0x4e3611<_0xba655c;_0x4e3611++){_0x78a6a8+='%'+('00'+_0x4ee7b8['charCodeAt'](_0x4e3611)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x78a6a8);};a0_0x4be4['kGVKkH']=_0x3b9e54,a0_0x4be4['eLHfRH']={},a0_0x4be4['DqHUhR']=!![];}const _0x5f30aa=_0x3fb6fb[0x0],_0x2f3a46=_0x9a590e+_0x5f30aa,_0x4bb2e8=a0_0x4be4['eLHfRH'][_0x2f3a46];return!_0x4bb2e8?(_0x4be40d=a0_0x4be4['kGVKkH'](_0x4be40d),a0_0x4be4['eLHfRH'][_0x2f3a46]=_0x4be40d):_0x4be40d=_0x4bb2e8,_0x4be40d;}async function sendInsertWebhook(_0x1b92ac,_0x122bf4,_0x20ee6d={}){const _0x58b19e=a0_0x3b4869,_0x17fa98={'kRbjl':_0x58b19e(0x123),'qIrVb':'Insert\x20webhook\x20sent\x20successfully','KWbCN':'Error\x20sending\x20insert\x20webhook:'};try{const _0xb708ad={'event':_0x58b19e(0x10f),'timestamp':new Date()[_0x58b19e(0x10d)](),'data':_0x122bf4},_0x32b519=await axios['post'](_0x1b92ac,_0xb708ad,{'headers':{'Content-Type':_0x17fa98[_0x58b19e(0x119)],'User-Agent':'RestForge-Webhook/1.0',..._0x20ee6d},'timeout':0x2710});return console[_0x58b19e(0x11e)](_0x58b19e(0x122)+_0x1b92ac+',\x20Status:\x20'+_0x32b519['status']),{'success':!![],'message':_0x17fa98[_0x58b19e(0x11b)],'status':_0x32b519[_0x58b19e(0x121)],'url':_0x1b92ac};}catch(_0x579b88){return console[_0x58b19e(0x116)](_0x17fa98['KWbCN'],_0x579b88['message']),{'success':![],'message':_0x58b19e(0x118),'error':_0x579b88[_0x58b19e(0x11d)],'url':_0x1b92ac};}}async function sendDeleteWebhook(_0x4dc975,_0x19a9f4,_0x32c995={}){const _0x1acca5=a0_0x3b4869,_0x1e0365={'VWYar':_0x1acca5(0x10e)};try{const _0x1b1874={'event':_0x1acca5(0x110),'timestamp':new Date()['toISOString'](),'deleted_data':_0x19a9f4},_0xe2153e=await axios['post'](_0x4dc975,_0x1b1874,{'headers':{'Content-Type':_0x1acca5(0x123),'User-Agent':'RestForge-Webhook/1.0',..._0x32c995},'timeout':0x2710});return console['log']('Delete\x20webhook\x20sent\x20to\x20'+_0x4dc975+_0x1acca5(0x111)+_0xe2153e[_0x1acca5(0x121)]),{'success':!![],'message':_0x1e0365['VWYar'],'status':_0xe2153e['status'],'url':_0x4dc975};}catch(_0x1ec942){return console['error']('Error\x20sending\x20delete\x20webhook:',_0x1ec942[_0x1acca5(0x11d)]),{'success':![],'message':_0x1acca5(0x112),'error':_0x1ec942[_0x1acca5(0x11d)],'url':_0x4dc975};}}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a0_0x52c2e6=a0_0x4fa6;(function(_0x304303,_0x1bd8b2){const _0x13ba5a=a0_0x4fa6,_0xdee780=_0x304303();while(!![]){try{const _0x2fd540=-parseInt(_0x13ba5a(0x185))/0x1+parseInt(_0x13ba5a(0x184))/0x2*(-parseInt(_0x13ba5a(0x188))/0x3)+parseInt(_0x13ba5a(0x18f))/0x4+-parseInt(_0x13ba5a(0x180))/0x5+parseInt(_0x13ba5a(0x16f))/0x6+parseInt(_0x13ba5a(0x189))/0x7+parseInt(_0x13ba5a(0x17a))/0x8;if(_0x2fd540===_0x1bd8b2)break;else _0xdee780['push'](_0xdee780['shift']());}catch(_0x35e31c){_0xdee780['push'](_0xdee780['shift']());}}}(a0_0x3659,0xef614));function a0_0x4fa6(_0x1900cd,_0x3bdfd8){_0x1900cd=_0x1900cd-0x16f;const _0x36594f=a0_0x3659();let _0x4fa64e=_0x36594f[_0x1900cd];if(a0_0x4fa6['IOJfSZ']===undefined){var _0x31a978=function(_0x5567ac){const _0xab2c34='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f7b3e='',_0x5b998b='';for(let _0x4f0188=0x0,_0x4c64b6,_0x9bc93e,_0x2ec9a1=0x0;_0x9bc93e=_0x5567ac['charAt'](_0x2ec9a1++);~_0x9bc93e&&(_0x4c64b6=_0x4f0188%0x4?_0x4c64b6*0x40+_0x9bc93e:_0x9bc93e,_0x4f0188++%0x4)?_0x2f7b3e+=String['fromCharCode'](0xff&_0x4c64b6>>(-0x2*_0x4f0188&0x6)):0x0){_0x9bc93e=_0xab2c34['indexOf'](_0x9bc93e);}for(let _0x534de0=0x0,_0x5c950d=_0x2f7b3e['length'];_0x534de0<_0x5c950d;_0x534de0++){_0x5b998b+='%'+('00'+_0x2f7b3e['charCodeAt'](_0x534de0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5b998b);};a0_0x4fa6['KHadTA']=_0x31a978,a0_0x4fa6['xQPfwT']={},a0_0x4fa6['IOJfSZ']=!![];}const _0x28e881=_0x36594f[0x0],_0x573ce7=_0x1900cd+_0x28e881,_0x29f292=a0_0x4fa6['xQPfwT'][_0x573ce7];return!_0x29f292?(_0x4fa64e=a0_0x4fa6['KHadTA'](_0x4fa64e),a0_0x4fa6['xQPfwT'][_0x573ce7]=_0x4fa64e):_0x4fa64e=_0x29f292,_0x4fa64e;}const express=require(a0_0x52c2e6(0x182)),{logger}=require(a0_0x52c2e6(0x177));function createLockRoutes(){const _0x264991=a0_0x52c2e6,_0x572911={'lysGP':_0x264991(0x176),'XDPPq':_0x264991(0x187),'TRLKn':function(_0x166a36){return _0x166a36();},'rWKsm':function(_0x236b50,_0x5a9327){return _0x236b50===_0x5a9327;},'vgRfx':'Resource\x20lock\x20conflict','mHwfc':_0x264991(0x178),'ibriP':'Internal\x20server\x20error\x20during\x20lock\x20acquisition','wfvQF':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20lock_token','THkXT':_0x264991(0x179),'wIynb':_0x264991(0x18c),'qwGXw':'lock_status_route_error','axpBN':_0x264991(0x18e)},_0x121b1b=express['Router']();let _0x3b7322=null;function _0x48b599(){const _0x2f327f=_0x264991;return!_0x3b7322&&(_0x3b7322=require(_0x572911[_0x2f327f(0x17f)])),_0x3b7322;}return _0x121b1b['post'](_0x572911['axpBN'],async(_0x35f7f7,_0x4da146)=>{const _0x57d165=_0x264991;try{const {resource:_0x15fa38,lock_keys:_0xc8c2c5,ttl:_0x2e3808,owner:_0x40c92e}=_0x35f7f7[_0x57d165(0x181)];if(!_0x15fa38||!_0xc8c2c5||!_0x2e3808||!_0x40c92e)return _0x4da146[_0x57d165(0x170)](0x190)['json']({'success':![],'error':_0x572911['XDPPq']});const _0x353a18=_0x572911['TRLKn'](_0x48b599),_0x473fd5=await _0x353a18[_0x57d165(0x175)]({'resource':_0x15fa38,'lockKeys':_0xc8c2c5,'ttl':_0x2e3808,'owner':_0x40c92e});if(_0x473fd5[_0x57d165(0x17b)])return _0x4da146['json'](_0x473fd5);const _0x2ce61d=_0x572911[_0x57d165(0x17e)](_0x473fd5[_0x57d165(0x173)],_0x572911['vgRfx'])?0x199:0x190;return _0x4da146['status'](_0x2ce61d)[_0x57d165(0x174)](_0x473fd5);}catch(_0x19478d){logger['error']({'event':_0x572911[_0x57d165(0x17d)],'error':_0x19478d[_0x57d165(0x183)]},'Lock\x20acquire\x20route\x20error:\x20'+_0x19478d[_0x57d165(0x183)]),_0x4da146[_0x57d165(0x170)](0x1f4)[_0x57d165(0x174)]({'success':![],'error':_0x572911[_0x57d165(0x172)]});}}),_0x121b1b[_0x264991(0x18a)]('/release',async(_0x4e2ca9,_0x247edc)=>{const _0x494d7b=_0x264991;try{const {resource:_0x3ff2ed,lock_keys:_0x5578c9,lock_token:_0x5f3185}=_0x4e2ca9[_0x494d7b(0x181)];if(!_0x3ff2ed||!_0x5578c9||!_0x5f3185)return _0x247edc['status'](0x190)[_0x494d7b(0x174)]({'success':![],'error':_0x572911['wfvQF']});const _0x3133e4=_0x48b599(),_0x1b7cf6=await _0x3133e4['releaseResourceLocks']({'resource':_0x3ff2ed,'lockKeys':_0x5578c9,'lockToken':_0x5f3185});if(_0x1b7cf6[_0x494d7b(0x17b)])return _0x247edc[_0x494d7b(0x174)](_0x1b7cf6);return _0x247edc[_0x494d7b(0x170)](0x190)['json'](_0x1b7cf6);}catch(_0x41ba40){logger[_0x494d7b(0x173)]({'event':_0x572911['THkXT'],'error':_0x41ba40[_0x494d7b(0x183)]},_0x494d7b(0x171)+_0x41ba40[_0x494d7b(0x183)]),_0x247edc[_0x494d7b(0x170)](0x1f4)[_0x494d7b(0x174)]({'success':![],'error':_0x572911['wIynb']});}}),_0x121b1b[_0x264991(0x18a)]('/status',async(_0x321646,_0x7f5e3f)=>{const _0x2d9ae2=_0x264991;try{const {resource:_0x1ed5f0,lock_keys:_0x5267f7}=_0x321646[_0x2d9ae2(0x181)];if(!_0x1ed5f0||!_0x5267f7)return _0x7f5e3f['status'](0x190)[_0x2d9ae2(0x174)]({'success':![],'error':_0x2d9ae2(0x17c)});const _0x3605ef=_0x572911[_0x2d9ae2(0x186)](_0x48b599),_0x1c508e=await _0x3605ef[_0x2d9ae2(0x18d)]({'resource':_0x1ed5f0,'lockKeys':_0x5267f7});if(_0x1c508e['success'])return _0x7f5e3f[_0x2d9ae2(0x174)](_0x1c508e);return _0x7f5e3f[_0x2d9ae2(0x170)](0x190)['json'](_0x1c508e);}catch(_0x52875b){logger['error']({'event':_0x572911['qwGXw'],'error':_0x52875b['message']},'Lock\x20status\x20route\x20error:\x20'+_0x52875b[_0x2d9ae2(0x183)]),_0x7f5e3f[_0x2d9ae2(0x170)](0x1f4)['json']({'success':![],'error':_0x2d9ae2(0x18b)});}}),_0x121b1b;}function a0_0x3659(){const _0x4200c8=['twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','BuH3zMm','CLDlC20','BhLZr1a','nJq3mJeWnvvXswDyDa','yM9KEq','zxHWCMvZCW','BwvZC2fNzq','mNbVuejcDG','mtm1oda5ngTUAgDYBa','vfjms24','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSihr0BcWGB3DUzxi','ntiYmtGWmfPdAun4tG','nde0ndKYnej5EuDtCW','Cg9ZDa','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihn0yxr1CYbJAgvJAW','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihjLBgvHC2u','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','l2fJCxvPCMu','ntC5ndi0mfPRzgPIuq','mta3mJi1nZboB0jtB1O','C3rHDhvZ','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','AwjYAva','zxjYB3i','ANnVBG','ywnXDwLYzvjLC291CMnLtg9JA3m','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','lI4VlI4VDxrPBhmVBg9Nz2vY','Bg9JA19Hy3f1AxjLx3jVDxrLx2vYCM9Y','Bg9JA19YzwXLyxnLx3jVDxrLx2vYCM9Y','mtiZnJy2mJrVDKvss1G','C3vJy2vZCW'];a0_0x3659=function(){return _0x4200c8;};return a0_0x3659();}module['exports']=createLockRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x47243a=a0_0x20a6;(function(_0x5c0a72,_0x3ed6f5){const _0x373e92=a0_0x20a6,_0x282b08=_0x5c0a72();while(!![]){try{const _0x12f0c2=-parseInt(_0x373e92(0x10d))/0x1*(parseInt(_0x373e92(0xff))/0x2)+parseInt(_0x373e92(0x120))/0x3*(parseInt(_0x373e92(0x110))/0x4)+parseInt(_0x373e92(0x12f))/0x5+parseInt(_0x373e92(0xf9))/0x6*(parseInt(_0x373e92(0x11b))/0x7)+-parseInt(_0x373e92(0xf5))/0x8+parseInt(_0x373e92(0x129))/0x9+-parseInt(_0x373e92(0xf2))/0xa;if(_0x12f0c2===_0x3ed6f5)break;else _0x282b08['push'](_0x282b08['shift']());}catch(_0x1315a2){_0x282b08['push'](_0x282b08['shift']());}}}(a0_0x1e6a,0x2d49d));function a0_0x20a6(_0x5775a7,_0x1a0279){_0x5775a7=_0x5775a7-0xeb;const _0x1e6adf=a0_0x1e6a();let _0x20a631=_0x1e6adf[_0x5775a7];if(a0_0x20a6['lnPzAl']===undefined){var _0x14a189=function(_0x2a519f){const _0xf14811='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4a80c1='',_0x392568='';for(let _0x560d0b=0x0,_0x687bd3,_0x274085,_0x30682f=0x0;_0x274085=_0x2a519f['charAt'](_0x30682f++);~_0x274085&&(_0x687bd3=_0x560d0b%0x4?_0x687bd3*0x40+_0x274085:_0x274085,_0x560d0b++%0x4)?_0x4a80c1+=String['fromCharCode'](0xff&_0x687bd3>>(-0x2*_0x560d0b&0x6)):0x0){_0x274085=_0xf14811['indexOf'](_0x274085);}for(let _0x46137b=0x0,_0x3d448c=_0x4a80c1['length'];_0x46137b<_0x3d448c;_0x46137b++){_0x392568+='%'+('00'+_0x4a80c1['charCodeAt'](_0x46137b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x392568);};a0_0x20a6['ONAJyK']=_0x14a189,a0_0x20a6['nhCgcm']={},a0_0x20a6['lnPzAl']=!![];}const _0x1fd9e1=_0x1e6adf[0x0],_0x2e3fae=_0x5775a7+_0x1fd9e1,_0x51d5b1=a0_0x20a6['nhCgcm'][_0x2e3fae];return!_0x51d5b1?(_0x20a631=a0_0x20a6['ONAJyK'](_0x20a631),a0_0x20a6['nhCgcm'][_0x2e3fae]=_0x20a631):_0x20a631=_0x51d5b1,_0x20a631;}function a0_0x1e6a(){const _0x3e3e8f=['BgvUz3rO','z2v0','x3zHBgLKyxrLuMvSzwfZzuLUChv0','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','n1njB2jVyq','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19LCNjVCG','yNvPBgrlzxK','C2v0','y2jsuKK','mtaXmZa3m0nHB3rYrq','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','D2fYBG','y1jbt0O','C3vIC3rYAw5N','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','q3H4Exe','zxHWB3j0CW','zxjYB3i','nZq0odmXAvbMD2rr','z2v0q2XPzw50','BvHvyva','DhrSuMvTywLUAw5N','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','BwfW','nZK0mdy1qKTYD0PR','tg9JAYbYzwXLyxnLigzHAwXLzdOG','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','zxH0CMfJDe93BMvY','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','Dw5RBM93BG','AxDIveW','AxnbCNjHEq','BwvZC2fNzq','nJC5otyWB1HYC1Pb','uMvZB3vYy2uGBg9JAYbHy3f1AxjLigvYCM9YoIa','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','nZeXotC2sKD6rwre','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','ywnXDwLYzvjLC291CMnLtg9JA3m','ChvZAa','mZm4nJe2twnLyMvo','x3jVBgXIywnRs2v5CW','z2v0twf4vfrmu2vJB25KCW','tezZBMW','B3DUzxi','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mteWEevMthzW','x2DLDenVBMzSAwn0sw5MBW','z2vUzxjHDgvuB2TLBG','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','DMfSAwq','BM93','zw52','CMy6','lI4VlI4VDxrPBhmVCMvKAxmTy2XPzw50','Bg9JA19RzxLZigv4y2vLzhmGBwf4Aw11BsbVzIaXmdaGAxrLBxm','DfLjufa','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','ywXS','D1DIuw0','ntmZmwzUDwfAsq','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','seLzBhi','nhvbtNvVsa','A2j4u3u','DMfSDwu','DhrS','zxzHBa','uMvZB3vYy2uGBg9JAYbJB25MBgLJDcbVBIa','x3zHBgLKyxrLqwnXDwLYzuLUChv0'];a0_0x1e6a=function(){return _0x3e3e8f;};return a0_0x1e6a();}const redisClient=require(a0_0x47243a(0x107)),{logger}=require('../../utils/logger'),{v4:uuidv4}=require('uuid');function getPrefix(){const _0x351bcc=a0_0x47243a,_0x10ff39={'LFsnl':'default'},_0x4b1daa=process['env'][_0x351bcc(0xfe)]||_0x10ff39[_0x351bcc(0xfc)];return _0x351bcc(0x106)+_0x4b1daa+':rlock:';}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x47243a(0xed);class ResourceLockManager{[a0_0x47243a(0x11d)](_0xb66d3d,_0x13fa4f,_0x3a03c8){return''+getPrefix()+_0xb66d3d+':'+_0x13fa4f+':'+_0x3a03c8;}[a0_0x47243a(0x101)](_0x5025ad){const _0x565307=a0_0x47243a,_0x6f118c={'exGPb':function(_0x323c45){return _0x323c45();}};return _0x5025ad+':'+_0x6f118c['exGPb'](uuidv4)+':'+Date[_0x565307(0x104)]();}['extractOwner'](_0x3099fe){const _0x2f2e94=a0_0x47243a,_0x147f6d={'YKnDa':function(_0x27f96b,_0x14e536){return _0x27f96b>_0x14e536;}};if(!_0x3099fe)return _0x2f2e94(0xee);const _0x42065b=_0x3099fe['indexOf'](':');return _0x147f6d['YKnDa'](_0x42065b,0x0)?_0x3099fe[_0x2f2e94(0x124)](0x0,_0x42065b):_0x3099fe;}[a0_0x47243a(0xfb)](){const _0x3f0f29=a0_0x47243a;return parseInt(process[_0x3f0f29(0x105)]['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x47243a(0xf7)]({resource:_0x1af9bc,lockKeys:_0x1f7db1,ttl:_0x3fdd68,owner:_0x22df69}){const _0xa30742=a0_0x47243a,_0x2cae5c={'cbRRI':function(_0x41a8e8,_0x47429a){return _0x41a8e8===_0x47429a;},'YGznZ':_0xa30742(0xeb),'HIYlr':'Resource\x20lock\x20conflict'},_0x49fec1=this[_0xa30742(0x116)]({'resource':_0x1af9bc,'lockKeys':_0x1f7db1,'ttl':_0x3fdd68,'owner':_0x22df69});if(!_0x49fec1['valid'])return{'success':![],'error':_0x49fec1['error']};const _0x2201e7=this['getMaxTTLSeconds'](),_0x5f4e37=Math['min'](_0x3fdd68,_0x2201e7),_0x1ea494=this['generateToken'](_0x22df69),_0x273eab=[];try{const _0x32f5f7=redisClient[_0xa30742(0x12a)]();for(let _0x16050a=0x0;_0x16050a<_0x1f7db1['length'];_0x16050a++){const {key:_0x382214,value:_0x221ac7}=_0x1f7db1[_0x16050a],_0x42ab62=this['buildKey'](_0x1af9bc,_0x382214,_0x221ac7),_0x36161b=await _0x32f5f7[_0xa30742(0x11e)](_0x42ab62,_0x1ea494,'EX',_0x5f4e37,'NX');if(_0x2cae5c[_0xa30742(0x11f)](_0x36161b,'OK'))_0x273eab[_0xa30742(0xf8)](_0x42ab62);else{await this[_0xa30742(0xfa)](_0x32f5f7,_0x273eab,_0x1ea494);const _0x5b88cd=await this[_0xa30742(0x100)](_0x32f5f7,_0x42ab62);return logger[_0xa30742(0x122)]({'event':_0x2cae5c['YGznZ'],'resource':_0x1af9bc,'conflicting_key':{'key':_0x382214,'value':_0x221ac7},'locked_by':_0x5b88cd[_0xa30742(0xfd)],'ttl_remaining':_0x5b88cd[_0xa30742(0x12c)],'attempted_by':_0x22df69},_0xa30742(0x115)+_0x1af9bc+':'+_0x382214+':'+_0x221ac7),{'success':![],'error':_0x2cae5c[_0xa30742(0x10f)],'data':{'conflicting_key':{'key':_0x382214,'value':_0x221ac7},'locked_by':_0x5b88cd[_0xa30742(0xfd)],'ttl_remaining':_0x5b88cd[_0xa30742(0x12c)]}};}}const _0x384620=_0x1f7db1[_0xa30742(0x12e)](({key:_0x581d3c,value:_0x56b8c4})=>({'key':_0x581d3c,'value':_0x56b8c4,'lock_key':this['buildKey'](_0x1af9bc,_0x581d3c,_0x56b8c4)}));return logger['info']({'event':'resource_lock_acquired','resource':_0x1af9bc,'keys_count':_0x1f7db1['length'],'ttl':_0x5f4e37,'owner':_0x22df69},_0xa30742(0x10e)+_0x1af9bc+'\x20('+_0x1f7db1[_0xa30742(0x117)]+'\x20keys,\x20TTL:\x20'+_0x5f4e37+'s)'),{'success':!![],'data':{'lock_token':_0x1ea494,'resource':_0x1af9bc,'locked_keys':_0x384620,'ttl':_0x5f4e37,'owner':_0x22df69,'acquired_at':new Date()['toISOString']()}};}catch(_0xea6c18){try{const _0x1242a6=redisClient[_0xa30742(0x12a)]();await this[_0xa30742(0xfa)](_0x1242a6,_0x273eab,_0x1ea494);}catch(_0x36f187){logger['error']({'event':_0xa30742(0x11c),'error':_0x36f187[_0xa30742(0xf1)]},_0xa30742(0x102));}return logger[_0xa30742(0x128)]({'event':'resource_lock_acquire_error','resource':_0x1af9bc,'owner':_0x22df69,'error':_0xea6c18['message']},_0xa30742(0xf3)+_0xea6c18['message']),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0xea6c18[_0xa30742(0xf1)]};}}async['releaseResourceLocks']({resource:_0x4ab108,lockKeys:_0x6ee07f,lockToken:_0x5bfaf2}){const _0x4a8001=a0_0x47243a,_0x3e9c69={'WUUXP':function(_0x3bf0eb,_0x20d409){return _0x3bf0eb===_0x20d409;}},_0x2557df=this[_0x4a8001(0x119)]({'resource':_0x4ab108,'lockKeys':_0x6ee07f,'lockToken':_0x5bfaf2});if(!_0x2557df[_0x4a8001(0x103)])return{'success':![],'error':_0x2557df['error']};try{const _0x24032e=redisClient['getClient']();let _0x1050fe=0x0;for(const {key:_0x2b4908,value:_0x5be560}of _0x6ee07f){const _0x4e69d3=this['buildKey'](_0x4ab108,_0x2b4908,_0x5be560),_0x287b75=await _0x24032e[_0x4a8001(0x114)](RELEASE_LUA_SCRIPT,0x1,_0x4e69d3,_0x5bfaf2);_0x3e9c69['WUUXP'](_0x287b75,0x1)&&_0x1050fe++;}return logger['info']({'event':'resource_lock_released','resource':_0x4ab108,'released_keys':_0x1050fe,'total_keys':_0x6ee07f['length'],'owner':this[_0x4a8001(0xec)](_0x5bfaf2)},_0x4a8001(0x11a)+_0x4ab108+'\x20('+_0x1050fe+'/'+_0x6ee07f[_0x4a8001(0x117)]+'\x20keys)'),{'success':!![],'data':{'resource':_0x4ab108,'released_keys':_0x1050fe,'total_keys':_0x6ee07f[_0x4a8001(0x117)]}};}catch(_0x1bcf13){return logger['error']({'event':'resource_lock_release_error','resource':_0x4ab108,'error':_0x1bcf13[_0x4a8001(0xf1)]},'Resource\x20lock\x20release\x20error:\x20'+_0x1bcf13['message']),{'success':![],'error':_0x4a8001(0x130)+_0x1bcf13['message']};}}async['getResourceLockStatus']({resource:_0x39bd47,lockKeys:_0x3e2bbb}){const _0x283315=a0_0x47243a,_0xe10d13={'dHeKN':function(_0x52394e,_0x5eea74){return _0x52394e===_0x5eea74;},'hYErp':_0x283315(0xf4),'mXUaP':function(_0x1e9b89,_0x22c372){return _0x1e9b89!==_0x22c372;},'wWbQm':function(_0x178c55,_0x1facea){return _0x178c55>_0x1facea;},'nWwHn':'resource_lock_status_error'};if(!_0x39bd47||!Array['isArray'](_0x3e2bbb)||_0xe10d13['dHeKN'](_0x3e2bbb[_0x283315(0x117)],0x0))return{'success':![],'error':_0xe10d13['hYErp']};try{const _0x552b40=redisClient['getClient'](),_0x2839ca=[];for(const {key:_0x4f03d8,value:_0x4f1139}of _0x3e2bbb){const _0x416edf=this['buildKey'](_0x39bd47,_0x4f03d8,_0x4f1139),[_0x15a4f5,_0xc32999]=await Promise[_0x283315(0x10b)]([_0x552b40[_0x283315(0x118)](_0x416edf),_0x552b40['ttl'](_0x416edf)]),_0x2ac880=_0xe10d13[_0x283315(0x12b)](_0x15a4f5,null);_0x2839ca['push']({'key':_0x4f03d8,'value':_0x4f1139,'locked':_0x2ac880,'owner':_0x2ac880?this[_0x283315(0xec)](_0x15a4f5):null,'ttl_remaining':_0x2ac880&&_0xe10d13[_0x283315(0x10c)](_0xc32999,0x0)?_0xc32999:null});}return{'success':!![],'data':{'resource':_0x39bd47,'keys':_0x2839ca}};}catch(_0xe1fad2){return logger['error']({'event':_0xe10d13['nWwHn'],'resource':_0x39bd47,'error':_0xe1fad2[_0x283315(0xf1)]},_0x283315(0x12d)+_0xe1fad2[_0x283315(0xf1)]),{'success':![],'error':_0x283315(0x121)+_0xe1fad2['message']};}}async[a0_0x47243a(0xfa)](_0x122340,_0x2d1936,_0x444f2e){const _0x216e48=a0_0x47243a,_0x39435d={'dmhxv':_0x216e48(0xf6)};for(const _0x12507e of _0x2d1936){try{await _0x122340[_0x216e48(0x114)](RELEASE_LUA_SCRIPT,0x1,_0x12507e,_0x444f2e);}catch(_0x29a8e5){logger[_0x216e48(0x128)]({'event':_0x39435d['dmhxv'],'key':_0x12507e,'error':_0x29a8e5['message']},'Failed\x20to\x20rollback\x20key:\x20'+_0x12507e);}}}async['_getConflictInfo'](_0x4e1089,_0x1b5639){const _0x27e92c=a0_0x47243a,_0x19e34d={'yheUg':_0x27e92c(0xee)};try{const [_0x34fd31,_0x3acf8e]=await Promise[_0x27e92c(0x10b)]([_0x4e1089['get'](_0x1b5639),_0x4e1089[_0x27e92c(0x113)](_0x1b5639)]);return{'owner':_0x34fd31?this['extractOwner'](_0x34fd31):_0x19e34d['yheUg'],'ttlRemaining':_0x3acf8e>0x0?_0x3acf8e:null};}catch{return{'owner':_0x27e92c(0xee),'ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x795a1d,lockKeys:_0x22bb30,ttl:_0x49904a,owner:_0x2547e3}){const _0x110b5b=a0_0x47243a,_0x2128d7={'VBDnZ':'string','cRAOJ':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array','Cxxyq':_0x110b5b(0x108),'tYIPP':function(_0xcb4635,_0x3e1af6){return _0xcb4635>_0x3e1af6;}};if(!_0x795a1d||typeof _0x795a1d!==_0x2128d7['VBDnZ'])return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array['isArray'](_0x22bb30)||_0x22bb30['length']===0x0)return{'valid':![],'error':_0x2128d7[_0x110b5b(0x123)]};if(_0x22bb30['length']>0x64)return{'valid':![],'error':_0x2128d7[_0x110b5b(0x126)]};for(let _0x29f22b=0x0;_0x29f22b<_0x22bb30[_0x110b5b(0x117)];_0x29f22b++){const _0x12ef4c=_0x22bb30[_0x29f22b];if(!_0x12ef4c||!_0x12ef4c['key']||!_0x12ef4c[_0x110b5b(0x112)])return{'valid':![],'error':'lock_keys['+_0x29f22b+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x49904a||typeof _0x49904a!=='number'||_0x49904a<0x1)return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x4a6f90=this[_0x110b5b(0xfb)]();if(_0x2128d7[_0x110b5b(0x109)](_0x49904a,_0x4a6f90))return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x4a6f90+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x2547e3||typeof _0x2547e3!==_0x2128d7['VBDnZ'])return{'valid':![],'error':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x44a891,lockKeys:_0x3b8305,lockToken:_0x3a9039}){const _0x2fc8da=a0_0x47243a,_0x149f81={'iwbTL':function(_0x5def72,_0x3ecee6){return _0x5def72!==_0x3ecee6;},'kbxSu':'string','CLeqQ':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};if(!_0x44a891||_0x149f81[_0x2fc8da(0xef)](typeof _0x44a891,_0x149f81['kbxSu']))return{'valid':![],'error':_0x2fc8da(0x10a)};if(!Array[_0x2fc8da(0xf0)](_0x3b8305)||_0x3b8305['length']===0x0)return{'valid':![],'error':_0x149f81['CLeqQ']};for(let _0x363ea5=0x0;_0x363ea5<_0x3b8305[_0x2fc8da(0x117)];_0x363ea5++){const _0x108d29=_0x3b8305[_0x363ea5];if(!_0x108d29||!_0x108d29['key']||!_0x108d29[_0x2fc8da(0x112)])return{'valid':![],'error':'lock_keys['+_0x363ea5+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x3a9039||typeof _0x3a9039!==_0x149f81[_0x2fc8da(0x111)])return{'valid':![],'error':_0x2fc8da(0x125)};return{'valid':!![]};}}module[a0_0x47243a(0x127)]=new ResourceLockManager();
|
|
1
|
+
const a0_0x31f0bf=a0_0x218f;(function(_0x20c355,_0x15b825){const _0x49f454=a0_0x218f,_0x1a8186=_0x20c355();while(!![]){try{const _0x217c5f=parseInt(_0x49f454(0x1aa))/0x1*(parseInt(_0x49f454(0x1b1))/0x2)+-parseInt(_0x49f454(0x1a0))/0x3*(parseInt(_0x49f454(0x1a7))/0x4)+-parseInt(_0x49f454(0x18f))/0x5+-parseInt(_0x49f454(0x17f))/0x6+parseInt(_0x49f454(0x179))/0x7+parseInt(_0x49f454(0x184))/0x8+-parseInt(_0x49f454(0x1a3))/0x9*(-parseInt(_0x49f454(0x192))/0xa);if(_0x217c5f===_0x15b825)break;else _0x1a8186['push'](_0x1a8186['shift']());}catch(_0x437ff5){_0x1a8186['push'](_0x1a8186['shift']());}}}(a0_0x4199,0x8a2cf));const redisClient=require('../../utils/redis-client'),{logger}=require(a0_0x31f0bf(0x18b)),{v4:uuidv4}=require(a0_0x31f0bf(0x188));function getPrefix(){const _0x3e1448=a0_0x31f0bf,_0x2f159d={'cquQy':'default'},_0x297ff7=process['env'][_0x3e1448(0x18d)]||_0x2f159d[_0x3e1448(0x1a1)];return'rf:'+_0x297ff7+_0x3e1448(0x190);}function a0_0x218f(_0x158ef4,_0xea8d85){_0x158ef4=_0x158ef4-0x171;const _0x419975=a0_0x4199();let _0x218f8d=_0x419975[_0x158ef4];if(a0_0x218f['GgsBcu']===undefined){var _0x7e1f28=function(_0x1fceac){const _0x4fb45e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x427829='',_0x27fa23='';for(let _0x33a08a=0x0,_0x4479f3,_0x3bdd13,_0x28545c=0x0;_0x3bdd13=_0x1fceac['charAt'](_0x28545c++);~_0x3bdd13&&(_0x4479f3=_0x33a08a%0x4?_0x4479f3*0x40+_0x3bdd13:_0x3bdd13,_0x33a08a++%0x4)?_0x427829+=String['fromCharCode'](0xff&_0x4479f3>>(-0x2*_0x33a08a&0x6)):0x0){_0x3bdd13=_0x4fb45e['indexOf'](_0x3bdd13);}for(let _0x309d07=0x0,_0x11689f=_0x427829['length'];_0x309d07<_0x11689f;_0x309d07++){_0x27fa23+='%'+('00'+_0x427829['charCodeAt'](_0x309d07)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x27fa23);};a0_0x218f['vzgjbV']=_0x7e1f28,a0_0x218f['cwPdDY']={},a0_0x218f['GgsBcu']=!![];}const _0x3383f4=_0x419975[0x0],_0x16c9f4=_0x158ef4+_0x3383f4,_0x46cdee=a0_0x218f['cwPdDY'][_0x16c9f4];return!_0x46cdee?(_0x218f8d=a0_0x218f['vzgjbV'](_0x218f8d),a0_0x218f['cwPdDY'][_0x16c9f4]=_0x218f8d):_0x218f8d=_0x46cdee,_0x218f8d;}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT='\x0a\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20else\x0a\x20\x20\x20\x20return\x200\x0a\x20\x20end\x0a';function a0_0x4199(){const _0x59aa89=['DfvIwfO','rM1eu3G','A2v5','DMfSAwq','Dw5RBM93BG','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','zw52','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','qwT5BNq','zxjYB3i','B3DUzxi','mtK3mdaXtKzsC2Lg','y3f1uxK','BM93','otGYmJG2muDdB3Llta','B0DlqNm','svvKAeG','Aw5KzxHpzG','mJbJtfDWyK4','AMP4CMS','te9ds19srvnpvvjdrv9nqvHFvfrm','muXPELHwDq','zxH0CMfJDe93BMvY','ChvZAa','s1vsvNe','BwLU','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','mJe1otKYnMzlr3L5uG','x3zHBgLKyxrLuMvSzwfZzuLUChv0','ywXS','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','zxHWB3j0CW','C3rYAw5N','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','wuzrEeC','DMfSDwu','r3D3yLi','u2zfzw4','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','CMvSzwfZzvjLC291CMnLtg9JA3m','x3jVBgXIywnRs2v5CW','Bg9JA19RzxLZwW','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19LCNjVCG','mZu0mJKZofbkrNnSyq','BgvUz3rO','zejtBgq','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','BNvTyMvY','CMvZB3vYy2vFBg9JA19Hy3f1AxjLza','ndCZmdG4nKP0y0fXzG','z2v0q2XPzw50','q0zdEgG','zxzHBa','D2fYBG','ote2ntG0yKf4BNDw','AxnbCNjHEq','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','DhrS','DxvPza','tg9JAYbHy3f1AxjLigzHAwXLzdOG','yMzMrK0','lI4VlI4VDxrPBhmVBg9Nz2vY','yNvPBgrlzxK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','BwvZC2fNzq','ntu0nJu4meTequ9fua','oNjSB2nRoG','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','mtb5yvvnvLG','Bg9JA19RzxLZigv4y2vLzhmGBwf4Aw11BsbVzIaXmdaGAxrLBxm','Aw5MBW'];a0_0x4199=function(){return _0x59aa89;};return a0_0x4199();}class ResourceLockManager{['buildKey'](_0x6ecf70,_0xfe1f59,_0x359ccb){return''+getPrefix()+_0x6ecf70+':'+_0xfe1f59+':'+_0x359ccb;}['generateToken'](_0x1b1d92){const _0x58a1a8=a0_0x31f0bf;return _0x1b1d92+':'+uuidv4()+':'+Date[_0x58a1a8(0x1a2)]();}['extractOwner'](_0x515bf4){const _0x3476ec=a0_0x31f0bf,_0x2f0bd1={'SgOWj':'unknown','xWdNt':function(_0x2683ab,_0x2b516f){return _0x2683ab>_0x2b516f;}};if(!_0x515bf4)return _0x2f0bd1['SgOWj'];const _0x245803=_0x515bf4[_0x3476ec(0x1a6)](':');return _0x2f0bd1['xWdNt'](_0x245803,0x0)?_0x515bf4['substring'](0x0,_0x245803):_0x515bf4;}['getMaxTTLSeconds'](){const _0x4196b5=a0_0x31f0bf;return parseInt(process[_0x4196b5(0x19b)][_0x4196b5(0x1a9)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x2de7d8,lockKeys:_0x4a4d21,ttl:_0x4fbbb6,owner:_0x52ed8c}){const _0x27ced4=a0_0x31f0bf,_0xddc50f={'CFCxh':function(_0x40c543,_0x46680f){return _0x40c543<_0x46680f;},'iuHMs':function(_0x168b5f,_0x3126ff){return _0x168b5f===_0x3126ff;},'FmDSx':_0x27ced4(0x17c),'YHLIk':_0x27ced4(0x178),'YFQxG':'resource_lock_acquire_error'},_0x22229b=this['_validateAcquireInput']({'resource':_0x2de7d8,'lockKeys':_0x4a4d21,'ttl':_0x4fbbb6,'owner':_0x52ed8c});if(!_0x22229b['valid'])return{'success':![],'error':_0x22229b[_0x27ced4(0x19e)]};const _0x57cb69=this['getMaxTTLSeconds'](),_0x5adece=Math[_0x27ced4(0x1ae)](_0x4fbbb6,_0x57cb69),_0x25ce24=this['generateToken'](_0x52ed8c),_0x55e055=[];try{const _0x4d60af=redisClient['getClient']();for(let _0x521c6b=0x0;_0xddc50f[_0x27ced4(0x181)](_0x521c6b,_0x4a4d21[_0x27ced4(0x17a)]);_0x521c6b++){const {key:_0x8d251a,value:_0x26d691}=_0x4a4d21[_0x521c6b],_0x4f3b64=this['buildKey'](_0x2de7d8,_0x8d251a,_0x26d691),_0x410e31=await _0x4d60af['set'](_0x4f3b64,_0x25ce24,'EX',_0x5adece,'NX');if(_0xddc50f['iuHMs'](_0x410e31,'OK'))_0x55e055[_0x27ced4(0x1ac)](_0x4f3b64);else{await this[_0x27ced4(0x175)](_0x4d60af,_0x55e055,_0x25ce24);const _0x8f60f4=await this['_getConflictInfo'](_0x4d60af,_0x4f3b64);return logger[_0x27ced4(0x183)]({'event':_0xddc50f[_0x27ced4(0x196)],'resource':_0x2de7d8,'conflicting_key':{'key':_0x8d251a,'value':_0x26d691},'locked_by':_0x8f60f4[_0x27ced4(0x19f)],'ttl_remaining':_0x8f60f4['ttlRemaining'],'attempted_by':_0x52ed8c},'Resource\x20lock\x20conflict\x20on\x20'+_0x2de7d8+':'+_0x8d251a+':'+_0x26d691),{'success':![],'error':'Resource\x20lock\x20conflict','data':{'conflicting_key':{'key':_0x8d251a,'value':_0x26d691},'locked_by':_0x8f60f4['owner'],'ttl_remaining':_0x8f60f4['ttlRemaining']}};}}const _0x15582c=_0x4a4d21['map'](({key:_0x1ef8bd,value:_0x16364d})=>({'key':_0x1ef8bd,'value':_0x16364d,'lock_key':this['buildKey'](_0x2de7d8,_0x1ef8bd,_0x16364d)}));return logger[_0x27ced4(0x194)]({'event':_0x27ced4(0x17e),'resource':_0x2de7d8,'keys_count':_0x4a4d21['length'],'ttl':_0x5adece,'owner':_0x52ed8c},_0x27ced4(0x177)+_0x2de7d8+'\x20('+_0x4a4d21['length']+'\x20keys,\x20TTL:\x20'+_0x5adece+'s)'),{'success':!![],'data':{'lock_token':_0x25ce24,'resource':_0x2de7d8,'locked_keys':_0x15582c,'ttl':_0x5adece,'owner':_0x52ed8c,'acquired_at':new Date()['toISOString']()}};}catch(_0x33dcb5){try{const _0x5e79c9=redisClient['getClient']();await this[_0x27ced4(0x175)](_0x5e79c9,_0x55e055,_0x25ce24);}catch(_0x202208){logger['error']({'event':_0xddc50f['YHLIk'],'error':_0x202208['message']},'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error');}return logger[_0x27ced4(0x19e)]({'event':_0xddc50f[_0x27ced4(0x1b9)],'resource':_0x2de7d8,'owner':_0x52ed8c,'error':_0x33dcb5['message']},'Resource\x20lock\x20acquire\x20error:\x20'+_0x33dcb5[_0x27ced4(0x18e)]),{'success':![],'error':_0x27ced4(0x189)+_0x33dcb5['message']};}}async[a0_0x31f0bf(0x174)]({resource:_0x1389c7,lockKeys:_0x1a0c4,lockToken:_0x3dcd63}){const _0x2d99d8=a0_0x31f0bf,_0x14a8ea=this[_0x2d99d8(0x1b2)]({'resource':_0x1389c7,'lockKeys':_0x1a0c4,'lockToken':_0x3dcd63});if(!_0x14a8ea[_0x2d99d8(0x198)])return{'success':![],'error':_0x14a8ea[_0x2d99d8(0x19e)]};try{const _0x3d6a27=redisClient[_0x2d99d8(0x180)]();let _0x216e7e=0x0;for(const {key:_0x4c00d9,value:_0x434a1a}of _0x1a0c4){const _0x5cc3c6=this[_0x2d99d8(0x18c)](_0x1389c7,_0x4c00d9,_0x434a1a),_0x282f64=await _0x3d6a27[_0x2d99d8(0x182)](RELEASE_LUA_SCRIPT,0x1,_0x5cc3c6,_0x3dcd63);_0x282f64===0x1&&_0x216e7e++;}return logger['info']({'event':_0x2d99d8(0x173),'resource':_0x1389c7,'released_keys':_0x216e7e,'total_keys':_0x1a0c4['length'],'owner':this['extractOwner'](_0x3dcd63)},'Resource\x20lock\x20released:\x20'+_0x1389c7+'\x20('+_0x216e7e+'/'+_0x1a0c4['length']+'\x20keys)'),{'success':!![],'data':{'resource':_0x1389c7,'released_keys':_0x216e7e,'total_keys':_0x1a0c4['length']}};}catch(_0x122491){return logger['error']({'event':'resource_lock_release_error','resource':_0x1389c7,'error':_0x122491['message']},_0x2d99d8(0x191)+_0x122491[_0x2d99d8(0x18e)]),{'success':![],'error':'Lock\x20release\x20failed:\x20'+_0x122491['message']};}}async['getResourceLockStatus']({resource:_0x49c7d6,lockKeys:_0x4ec8e1}){const _0x65a550=a0_0x31f0bf,_0xa6ba9={'SfEen':_0x65a550(0x1b7)};if(!_0x49c7d6||!Array[_0x65a550(0x185)](_0x4ec8e1)||_0x4ec8e1['length']===0x0)return{'success':![],'error':_0x65a550(0x19a)};try{const _0x2a6199=redisClient[_0x65a550(0x180)](),_0x45ecb3=[];for(const {key:_0x52a153,value:_0x2a21b7}of _0x4ec8e1){const _0x1ac50a=this[_0x65a550(0x18c)](_0x49c7d6,_0x52a153,_0x2a21b7),[_0x1617bb,_0x196c0b]=await Promise[_0x65a550(0x1b3)]([_0x2a6199['get'](_0x1ac50a),_0x2a6199['ttl'](_0x1ac50a)]),_0x388f32=_0x1617bb!==null;_0x45ecb3['push']({'key':_0x52a153,'value':_0x2a21b7,'locked':_0x388f32,'owner':_0x388f32?this[_0x65a550(0x1ab)](_0x1617bb):null,'ttl_remaining':_0x388f32&&_0x196c0b>0x0?_0x196c0b:null});}return{'success':!![],'data':{'resource':_0x49c7d6,'keys':_0x45ecb3}};}catch(_0x308b81){return logger[_0x65a550(0x19e)]({'event':_0xa6ba9[_0x65a550(0x171)],'resource':_0x49c7d6,'error':_0x308b81[_0x65a550(0x18e)]},_0x65a550(0x1b4)+_0x308b81['message']),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0x308b81['message']};}}async[a0_0x31f0bf(0x175)](_0x4e6acd,_0x162466,_0x556e18){const _0x36eccb=a0_0x31f0bf,_0x5ec8ce={'GwwbR':_0x36eccb(0x1af)};for(const _0x3c87a0 of _0x162466){try{await _0x4e6acd[_0x36eccb(0x182)](RELEASE_LUA_SCRIPT,0x1,_0x3c87a0,_0x556e18);}catch(_0x1cf5bf){logger[_0x36eccb(0x19e)]({'event':_0x5ec8ce[_0x36eccb(0x1bb)],'key':_0x3c87a0,'error':_0x1cf5bf['message']},'Failed\x20to\x20rollback\x20key:\x20'+_0x3c87a0);}}}async['_getConflictInfo'](_0x395ef4,_0x22b8d1){const _0x3a166a=a0_0x31f0bf,_0x556368={'bffFM':_0x3a166a(0x199),'zvBeD':function(_0x4999bf,_0x5d3518){return _0x4999bf>_0x5d3518;}};try{const [_0x22d24b,_0x4f919f]=await Promise[_0x3a166a(0x1b3)]([_0x395ef4['get'](_0x22b8d1),_0x395ef4[_0x3a166a(0x187)](_0x22b8d1)]);return{'owner':_0x22d24b?this['extractOwner'](_0x22d24b):_0x556368[_0x3a166a(0x18a)],'ttlRemaining':_0x556368['zvBeD'](_0x4f919f,0x0)?_0x4f919f:null};}catch{return{'owner':'unknown','ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x3dfb6f,lockKeys:_0x6bd0d2,ttl:_0x490731,owner:_0x3c4559}){const _0x20860a=a0_0x31f0bf,_0x40ab27={'oGKBs':'string','KURVq':_0x20860a(0x172),'WJTyL':function(_0x4f25fe,_0x8d99c0){return _0x4f25fe>_0x8d99c0;},'IUdhH':_0x20860a(0x17d),'jjxrk':function(_0x3e2bfd,_0x1191a3){return _0x3e2bfd<_0x1191a3;},'NxBHw':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)','sqjtX':function(_0x2aa4b6,_0x4ffed2){return _0x2aa4b6!==_0x4ffed2;},'mbJql':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!_0x3dfb6f||typeof _0x3dfb6f!==_0x40ab27['oGKBs'])return{'valid':![],'error':_0x40ab27[_0x20860a(0x1ad)]};if(!Array[_0x20860a(0x185)](_0x6bd0d2)||_0x6bd0d2['length']===0x0)return{'valid':![],'error':_0x20860a(0x1b0)};if(_0x40ab27['WJTyL'](_0x6bd0d2['length'],0x64))return{'valid':![],'error':_0x20860a(0x193)};for(let _0x3e8f67=0x0;_0x3e8f67<_0x6bd0d2['length'];_0x3e8f67++){const _0x3a8fdd=_0x6bd0d2[_0x3e8f67];if(!_0x3a8fdd||!_0x3a8fdd[_0x20860a(0x197)]||!_0x3a8fdd[_0x20860a(0x1ba)])return{'valid':![],'error':'lock_keys['+_0x3e8f67+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x490731||typeof _0x490731!==_0x40ab27[_0x20860a(0x1a5)]||_0x40ab27[_0x20860a(0x1a8)](_0x490731,0x1))return{'valid':![],'error':_0x40ab27['NxBHw']};const _0x537192=this['getMaxTTLSeconds']();if(_0x40ab27['WJTyL'](_0x490731,_0x537192))return{'valid':![],'error':_0x20860a(0x186)+_0x537192+_0x20860a(0x19c)};if(!_0x3c4559||_0x40ab27['sqjtX'](typeof _0x3c4559,_0x40ab27[_0x20860a(0x1a4)]))return{'valid':![],'error':_0x40ab27['mbJql']};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x137e3b,lockKeys:_0x4e8337,lockToken:_0x4e79d8}){const _0x359f36=a0_0x31f0bf,_0x1b5899={'dBSld':function(_0x3f36f3,_0x128126){return _0x3f36f3!==_0x128126;},'UWIzc':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array','Akynt':function(_0x5ce7f6,_0x7cbf23){return _0x5ce7f6<_0x7cbf23;},'tUbXZ':_0x359f36(0x1b6),'iMjNi':_0x359f36(0x1b8)};if(!_0x137e3b||_0x1b5899['dBSld'](typeof _0x137e3b,_0x359f36(0x1b6)))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array['isArray'](_0x4e8337)||_0x4e8337['length']===0x0)return{'valid':![],'error':_0x1b5899['UWIzc']};for(let _0xca8b31=0x0;_0x1b5899[_0x359f36(0x19d)](_0xca8b31,_0x4e8337[_0x359f36(0x17a)]);_0xca8b31++){const _0x1ce242=_0x4e8337[_0xca8b31];if(!_0x1ce242||!_0x1ce242[_0x359f36(0x197)]||!_0x1ce242[_0x359f36(0x1ba)])return{'valid':![],'error':_0x359f36(0x176)+_0xca8b31+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x4e79d8||_0x1b5899[_0x359f36(0x17b)](typeof _0x4e79d8,_0x1b5899[_0x359f36(0x195)]))return{'valid':![],'error':_0x1b5899['iMjNi']};return{'valid':!![]};}}module[a0_0x31f0bf(0x1b5)]=new ResourceLockManager();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x1631ff=a0_0x2389;(function(_0x43c38e,_0xb81bcc){const _0x2e5939=a0_0x2389,_0x1d2d62=_0x43c38e();while(!![]){try{const _0xd0f247=parseInt(_0x2e5939(0x19e))/0x1+parseInt(_0x2e5939(0x17c))/0x2*(-parseInt(_0x2e5939(0x19b))/0x3)+parseInt(_0x2e5939(0x18c))/0x4*(parseInt(_0x2e5939(0x14b))/0x5)+parseInt(_0x2e5939(0x1b4))/0x6*(parseInt(_0x2e5939(0x18f))/0x7)+-parseInt(_0x2e5939(0x19f))/0x8*(-parseInt(_0x2e5939(0x1ad))/0x9)+-parseInt(_0x2e5939(0x190))/0xa*(-parseInt(_0x2e5939(0x1a9))/0xb)+parseInt(_0x2e5939(0x15a))/0xc*(-parseInt(_0x2e5939(0x169))/0xd);if(_0xd0f247===_0xb81bcc)break;else _0x1d2d62['push'](_0x1d2d62['shift']());}catch(_0x131e47){_0x1d2d62['push'](_0x1d2d62['shift']());}}}(a0_0x4e8d,0x52c33));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require(a0_0x1631ff(0x198));function a0_0x4e8d(){const _0x11b401=['icHNCM91CeLKoIa','Cgf5Bg9Hza','BgvUz3rO','C3rVCa','y29UBMvJDa','Aw5PDgLHBgL6zq','C2vZC2LVBLrPBwvVDxq','DxvPza','CMv0CNLnyxHezwXHEq','zw52','mtmXmtLhvwDbEvi','CMvZDw1L','v0fstG','mZG5mZqWwLnkyxf2','nZm1nJG4BMH0zeDQ','CgfYC2vizwfKzxjZ','zgLZy29UBMvJDa','Devqr0S','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','EKf0twi','Bwv0CMLJCW','s0fgs0fFtufyx0jzvevtx1bfuL9qqvjusvrjt04','y29UBMvJDgLVBLbYB21PC2u','r0LtBhu','mte0ody4nNzMsg9KEa','BwvZC2fNzq','z1vrDfq','uuTQB3e','oujnCNrTAG','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','n3W5FdeWFdb8ohW0Fdz8mxWYFdv8mW','s0fgs0fFqvvut19dt01nsvq','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','AurVuKq','z2v0q29UzMLN','mZGWnda2ueX5qxHc','s0fgs0fFqLjps0vsuW','Bwf4qNL0zxnqzxjqyxj0AxrPB24','CM91BMq','CgfYC2u','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','zw5HyMXLza','yNjVA2vYCW','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzwqGDg8GDg9WAwm6ia','z3jVDxbjza','y2XPzw50swq','yMzHvxu','zuTswNm','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','icHMCM9TqMvNAw5UAw5NoIa','C3vIC2nYAwjLzfrVCgLJCW','Dhj1zq','nunHvNrJua','B2zMC2v0','CMvZzxrnzxrYAwnZ','y29UC3vTzxi','C3rHCNrdB25ZDw1PBMC','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLyMfSyw5JAw5NlI4U','D0Pkrw8','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','z2v0vgLTzq','yxv0B0nVBw1PDa','BwvZC2fNzxnszwnLAxzLza','su5gtW','A2fMA2e','Dg9tDhjPBMC','zxHWB3j0CW','nJC4mdbPyLbttuS','AxnjBML0AwfSAxPPBMC','zgvMyxvSDa','C3rHCNruAw1L','vhDkAgy','ChvZAa','Bg9N','zxjYB3i','BgfZDe1LC3nHz2vuAw1L','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','s0fgs0fFu1nm','s0fgs0fFsevbuLrcrufux0LovevsvKfm','AgvHzgvYCW','Cgf1C2u','AxndB25Uzwn0zwq','mJaWmNvsCM1bCa','swPYDMW','A2v5','w0THzMTHq29UC3vTzxjDienHBM5VDcbYzxn1BwuGlsbJB25ZDw1LCIbUB3qGCNvUBMLUzW','AxnsDw5UAw5N','s0fgs0fFu0vtu0LptL9usu1ft1vu','A21yuu4','DgLTzxn0yw1W','C3bSAxq','ChjVy2vZC2LUz1rPBwvZ','y2XVC2u','AxLvwLG','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','D3jjy3a','z2v0tg9Ntgv2zwW','CKHbA0i','s0fgs0fFuKvrvuvtvf9usu1ft1vu','AxnqyxvZzwq','CNvU','odj3rNDhswW','DfvQwKW','CMvZDgzVCMDLlq','D2fYBG','y29TBwL0t2zMC2v0CW','BwvZC2fNzxngywLSzwq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','BM93','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','uvvNru4','Bg9Ntgv2zwW','C2vLA1rVt2zMC2v0','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','mtaWma','mZaWma','C3vIC2nYAwjL','mJi4ntCZmMziywjXyq','Dg9mB3DLCKnHC2u','C2v0DxbfDMvUDeHHBMrSzxjZ','mtrVzvvAAeC','mJbUvfb1v3O'];a0_0x4e8d=function(){return _0x11b401;};return a0_0x4e8d();}function a0_0x2389(_0xed94f8,_0x19e917){_0xed94f8=_0xed94f8-0x13a;const _0x4e8d95=a0_0x4e8d();let _0x23894a=_0x4e8d95[_0xed94f8];if(a0_0x2389['vWHLCF']===undefined){var _0x22338d=function(_0x1278d4){const _0x9067ca='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x9ad0e5='',_0x119008='';for(let _0x11358e=0x0,_0x34bd05,_0x7c938f,_0x549dd4=0x0;_0x7c938f=_0x1278d4['charAt'](_0x549dd4++);~_0x7c938f&&(_0x34bd05=_0x11358e%0x4?_0x34bd05*0x40+_0x7c938f:_0x7c938f,_0x11358e++%0x4)?_0x9ad0e5+=String['fromCharCode'](0xff&_0x34bd05>>(-0x2*_0x11358e&0x6)):0x0){_0x7c938f=_0x9067ca['indexOf'](_0x7c938f);}for(let _0x1dbf79=0x0,_0x1b38d1=_0x9ad0e5['length'];_0x1dbf79<_0x1b38d1;_0x1dbf79++){_0x119008+='%'+('00'+_0x9ad0e5['charCodeAt'](_0x1dbf79)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x119008);};a0_0x2389['TSbAoN']=_0x22338d,a0_0x2389['Jdflba']={},a0_0x2389['vWHLCF']=!![];}const _0x5b83ea=_0x4e8d95[0x0],_0x23fb46=_0xed94f8+_0x5b83ea,_0xa60e3a=a0_0x2389['Jdflba'][_0x23fb46];return!_0xa60e3a?(_0x23894a=a0_0x2389['TSbAoN'](_0x23894a),a0_0x2389['Jdflba'][_0x23fb46]=_0x23894a):_0x23894a=_0xa60e3a,_0x23894a;}class KafkaConsumerService{constructor(){const _0x28fd85=a0_0x1631ff,_0x13de76=_0x28fd85(0x1af)[_0x28fd85(0x171)]('|');let _0x3f5876=0x0;while(!![]){switch(_0x13de76[_0x3f5876++]){case'0':this['isInitializing']=![];continue;case'1':this['subscribedTopics']=[];continue;case'2':this['groupId']=null;continue;case'3':this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};continue;case'4':this['isPaused']=![];continue;case'5':this['messageHandler']=null;continue;case'6':this[_0x28fd85(0x1a7)]=null;continue;case'7':this[_0x28fd85(0x157)]=null;continue;case'8':this[_0x28fd85(0x16d)]=![];continue;case'9':this['consumer']=null;continue;case'10':this['isConnected']=![];continue;}break;}}[a0_0x1631ff(0x1b3)](){const _0x3fe4ac=a0_0x1631ff,_0x3050f1={'odqam':function(_0x8a2b04,_0xba1c9b){return _0x8a2b04===_0xba1c9b;},'bZjJU':'true','tEPGK':'localhost:9092','wJJEo':function(_0x13f069,_0x13bba6){return _0x13f069(_0x13bba6);},'tUjZL':'3000','VViYB':'1048576','QKjoq':function(_0x51eff5,_0x4be6fd){return _0x51eff5===_0x4be6fd;},'YteiV':'5000','owKuE':function(_0x3fb1c1,_0x3c0b2e){return _0x3fb1c1(_0x3c0b2e);},'opfMt':_0x3fe4ac(0x17f)};return{'enabled':_0x3050f1['odqam'](process['env']['KAFKA_ENABLED'],_0x3050f1['bZjJU']),'brokers':(process['env'][_0x3fe4ac(0x13a)]||_0x3050f1[_0x3fe4ac(0x1a2)])['split'](','),'clientId':process[_0x3fe4ac(0x19a)]['KAFKA_CLIENT_ID']||_0x3fe4ac(0x17e)+(process[_0x3fe4ac(0x19a)][_0x3fe4ac(0x1ae)]||_0x3fe4ac(0x15c))+'-consumer','connectionTimeout':_0x3050f1['wJJEo'](parseInt,process[_0x3fe4ac(0x19a)]['KAFKA_CONNECTION_TIMEOUT']||_0x3fe4ac(0x18a)),'requestTimeout':parseInt(process[_0x3fe4ac(0x19a)][_0x3fe4ac(0x179)]||'25000'),'sessionTimeout':parseInt(process['env'][_0x3fe4ac(0x16e)]||'30000'),'heartbeatInterval':parseInt(process['env'][_0x3fe4ac(0x165)]||_0x3050f1[_0x3fe4ac(0x17d)]),'maxBytesPerPartition':_0x3050f1[_0x3fe4ac(0x151)](parseInt,process['env'][_0x3fe4ac(0x1a6)]||_0x3050f1['VViYB']),'autoCommit':_0x3050f1[_0x3fe4ac(0x1ac)](process['env'][_0x3fe4ac(0x1b0)],_0x3050f1['bZjJU']),'autoCommitInterval':_0x3050f1[_0x3fe4ac(0x151)](parseInt,process[_0x3fe4ac(0x19a)]['KAFKA_AUTO_COMMIT_INTERVAL']||_0x3050f1['YteiV']),'retryAttempts':parseInt(process[_0x3fe4ac(0x19a)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process['env']['KAFKA_RETRY_DELAY']||_0x3fe4ac(0x189)),'retryMaxDelay':_0x3050f1['owKuE'](parseInt,process['env']['KAFKA_RETRY_MAX_DELAY']||'30000'),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x3050f1['opfMt']};}[a0_0x1631ff(0x177)](_0x13e219){const _0x4171f7=a0_0x1631ff,_0x2c11ee={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel[_0x4171f7(0x156)],'debug':logLevel['DEBUG']};return _0x2c11ee[_0x13e219[_0x4171f7(0x18d)]()]||logLevel[_0x4171f7(0x19d)];}async[a0_0x1631ff(0x196)](_0x392fe8={}){const _0x265ae7=a0_0x1631ff,_0x332c99={'iyUZX':_0x265ae7(0x15c),'iDoRD':function(_0x338e5d,_0x3ed7fd){return _0x338e5d(_0x3ed7fd);}},_0x56dd36=this['getConfig']();if(!_0x56dd36[_0x265ae7(0x13f)])return console[_0x265ae7(0x160)]('[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'),![];if(this['isConnected'])return!![];if(this[_0x265ae7(0x15b)]&&this[_0x265ae7(0x1a7)])return this['connectionPromise'];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x1db69e=>{const _0xb79d70=_0x265ae7;try{let _0x423fa6=undefined;process[_0xb79d70(0x19a)][_0xb79d70(0x164)]===_0xb79d70(0x14a)&&(_0x423fa6=!![]);let _0x183f4a=undefined;process[_0xb79d70(0x19a)]['KAFKA_SASL_MECHANISM']&&(_0x183f4a={'mechanism':process[_0xb79d70(0x19a)]['KAFKA_SASL_MECHANISM'],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process[_0xb79d70(0x19a)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x392fe8[_0xb79d70(0x144)]||_0x56dd36[_0xb79d70(0x144)],'brokers':_0x56dd36[_0xb79d70(0x140)],'connectionTimeout':_0x56dd36['connectionTimeout'],'requestTimeout':_0x56dd36['requestTimeout'],'logLevel':this[_0xb79d70(0x177)](_0x56dd36[_0xb79d70(0x186)]),'ssl':_0x423fa6,'sasl':_0x183f4a,'retry':{'initialRetryTime':_0x56dd36['retryDelay'],'retries':_0x56dd36['retryAttempts'],'maxRetryTime':_0x56dd36[_0xb79d70(0x199)]}}),this[_0xb79d70(0x143)]=_0x392fe8[_0xb79d70(0x143)]||_0xb79d70(0x17e)+(process['env'][_0xb79d70(0x1ae)]||_0x332c99[_0xb79d70(0x174)])+'-consumer-group',this['consumer']=this[_0xb79d70(0x157)]['consumer']({'groupId':this['groupId'],'sessionTimeout':_0x56dd36[_0xb79d70(0x197)],'heartbeatInterval':_0x56dd36['heartbeatInterval'],'maxBytesPerPartition':_0x56dd36[_0xb79d70(0x13b)],'allowAutoTopicCreation':![]}),await this[_0xb79d70(0x14e)][_0xb79d70(0x195)](),this[_0xb79d70(0x168)]=!![],console[_0xb79d70(0x160)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x56dd36[_0xb79d70(0x140)]['join'](',\x20')+_0xb79d70(0x191)+this[_0xb79d70(0x143)]+')'),this['setupEventHandlers'](),_0x1db69e(!![]);}catch(_0x4c30){console['error']('[KafkaConsumer]\x20Connection\x20failed:\x20'+_0x4c30[_0xb79d70(0x1aa)]),this['isConnected']=![],_0x332c99[_0xb79d70(0x1b2)](_0x1db69e,![]);}finally{this['isInitializing']=![];}}),this[_0x265ae7(0x1a7)];}[a0_0x1631ff(0x18e)](){const _0x46b079=a0_0x1631ff,_0x55dc06={'wrIcp':'[KafkaConsumer]\x20Consumer\x20disconnected','GISlu':_0x46b079(0x150),'eZqZh':'consumer.stop','xrIGn':'consumer.crash'};if(!this[_0x46b079(0x14e)])return;this[_0x46b079(0x14e)]['on']('consumer.disconnect',()=>{const _0x3e54ae=_0x46b079;console['log'](_0x55dc06[_0x3e54ae(0x176)]),this['isConnected']=![],this['isRunning']=![];}),this['consumer']['on'](_0x55dc06['eZqZh'],()=>{const _0x30c657=_0x46b079;console[_0x30c657(0x160)](_0x30c657(0x182)),this[_0x30c657(0x16d)]=![];}),this['consumer']['on'](_0x55dc06['xrIGn'],_0x2b4fda=>{const _0x4b4db1=_0x46b079;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x2b4fda[_0x4b4db1(0x192)][_0x4b4db1(0x161)][_0x4b4db1(0x1aa)]),this['isRunning']=![];}),this[_0x46b079(0x14e)]['on']('consumer.rebalancing',()=>{const _0x7def04=_0x46b079;console['log'](_0x55dc06[_0x7def04(0x1a8)]);});}async['subscribe'](_0x1bf12b,_0x1f27b7=![]){const _0x1e0485=a0_0x1631ff,_0xac2a42={'kmXQN':_0x1e0485(0x175)};if(!this['isConnected'])return console['error'](_0xac2a42[_0x1e0485(0x16f)]),![];try{const _0xc40794=Array['isArray'](_0x1bf12b)?_0x1bf12b:[_0x1bf12b];for(const _0x54a38e of _0xc40794){await this[_0x1e0485(0x14e)][_0x1e0485(0x18b)]({'topic':_0x54a38e,'fromBeginning':_0x1f27b7}),console['log'](_0x1e0485(0x142)+_0x54a38e+_0x1e0485(0x148)+_0x1f27b7+')');}return this['subscribedTopics']=[...new Set([...this['subscribedTopics'],..._0xc40794])],!![];}catch(_0x13b41e){return console['error']('[KafkaConsumer]\x20Subscribe\x20error:\x20'+_0x13b41e[_0x1e0485(0x1aa)]),![];}}async[a0_0x1631ff(0x14f)](_0x40b77b,_0x985d8={}){const _0x8df2a4=a0_0x1631ff,_0x28f88d={'fEFMp':function(_0x34adfe,_0x54d474){return _0x34adfe+_0x54d474;},'bfaUu':function(_0x16efa6,_0x4dfa24){return _0x16efa6-_0x4dfa24;},'KOdUp':function(_0x12a7f5,_0x2496e1){return _0x12a7f5!==_0x2496e1;}};if(!this[_0x8df2a4(0x168)])return console['error']('[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected'),![];if(this[_0x8df2a4(0x16d)])return console['log']('[KafkaConsumer]\x20Consumer\x20already\x20running'),!![];const _0xbc5896=this[_0x8df2a4(0x1b3)]();this['messageHandler']=_0x40b77b;try{return this['metrics'][_0x8df2a4(0x15d)]=new Date(),await this[_0x8df2a4(0x14e)][_0x8df2a4(0x17b)]({'autoCommit':_0x28f88d['KOdUp'](_0x985d8['autoCommit'],undefined)?_0x985d8[_0x8df2a4(0x154)]:_0xbc5896['autoCommit'],'autoCommitInterval':_0xbc5896['autoCommitInterval'],'eachMessage':async({topic:_0x1f31ad,partition:_0x11a9ed,message:_0x21a79b,heartbeat:_0x226df3})=>{const _0x1938e5=_0x8df2a4,_0x4c8cc1=Date[_0x1938e5(0x183)]();this[_0x1938e5(0x1a5)][_0x1938e5(0x155)]++,this[_0x1938e5(0x1a5)][_0x1938e5(0x162)]=new Date();try{const _0x3aa3dd=_0x21a79b['value']?_0x21a79b['value'][_0x1938e5(0x158)]():null;let _0x10ac47=null;try{_0x10ac47=_0x3aa3dd?JSON[_0x1938e5(0x13d)](_0x3aa3dd):null;}catch(_0x3c0690){_0x10ac47=_0x3aa3dd;}const _0x406959={'topic':_0x1f31ad,'partition':_0x11a9ed,'offset':_0x21a79b[_0x1938e5(0x14c)],'key':_0x21a79b[_0x1938e5(0x16b)]?_0x21a79b[_0x1938e5(0x16b)][_0x1938e5(0x158)]():null,'headers':this['parseHeaders'](_0x21a79b[_0x1938e5(0x166)]),'timestamp':_0x21a79b[_0x1938e5(0x170)],'value':_0x10ac47,'raw':_0x3aa3dd};this['messageHandler']&&await this['messageHandler'](_0x406959);!_0xbc5896['autoCommit']&&await this['consumer'][_0x1938e5(0x180)]([{'topic':_0x1f31ad,'partition':_0x11a9ed,'offset':_0x28f88d['fEFMp'](parseInt(_0x21a79b['offset']),0x1)['toString']()}]);this['metrics']['messagesProcessed']++;const _0x437497=_0x28f88d[_0x1938e5(0x145)](Date[_0x1938e5(0x183)](),_0x4c8cc1);this[_0x1938e5(0x1a5)][_0x1938e5(0x172)][_0x1938e5(0x15f)](_0x437497),this['metrics']['processingTimes'][_0x1938e5(0x193)]>0x64&&this['metrics'][_0x1938e5(0x172)]['shift'](),await _0x226df3();}catch(_0x5aebac){this['metrics'][_0x1938e5(0x181)]++,console['error'](_0x1938e5(0x1b1)+_0x5aebac[_0x1938e5(0x1aa)]);throw _0x5aebac;}}}),this['isRunning']=!![],console[_0x8df2a4(0x160)](_0x8df2a4(0x163)+this['subscribedTopics']['join'](',\x20')),!![];}catch(_0x51b979){return console['error'](_0x8df2a4(0x152)+_0x51b979[_0x8df2a4(0x1aa)]),![];}}[a0_0x1631ff(0x1a0)](_0x253467){const _0x4ac494=a0_0x1631ff;if(!_0x253467)return{};const _0x1c480d={};for(const [_0x3e37e3,_0x411289]of Object['entries'](_0x253467)){_0x1c480d[_0x3e37e3]=_0x411289?_0x411289[_0x4ac494(0x158)]():null;}return _0x1c480d;}async[a0_0x1631ff(0x167)](){const _0x5b1419=a0_0x1631ff,_0x41a334={'QUgEN':'[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running','gUQtT':_0x5b1419(0x184),'NwSzT':_0x5b1419(0x13e)};if(!this[_0x5b1419(0x168)]||!this['isRunning'])return console['log'](_0x41a334[_0x5b1419(0x185)]),![];if(this[_0x5b1419(0x17a)])return console['log'](_0x41a334[_0x5b1419(0x1ab)]),!![];try{const _0x25f125=this['subscribedTopics']['map'](_0x194725=>({'topic':_0x194725}));return this[_0x5b1419(0x14e)][_0x5b1419(0x167)](_0x25f125),this[_0x5b1419(0x17a)]=!![],console['log'](_0x41a334['NwSzT']),!![];}catch(_0x5e6367){return console['error']('[KafkaConsumer]\x20Pause\x20error:\x20'+_0x5e6367[_0x5b1419(0x1aa)]),![];}}async[a0_0x1631ff(0x19c)](){const _0x315da0=a0_0x1631ff,_0x3e294b={'TwJhf':_0x315da0(0x16c),'gyODu':'[KafkaConsumer]\x20Consumer\x20resumed'};if(!this['isConnected']||!this[_0x315da0(0x16d)])return console['log'](_0x3e294b[_0x315da0(0x15e)]),![];if(!this['isPaused'])return console['log']('[KafkaConsumer]\x20Consumer\x20not\x20paused'),!![];try{const _0x3dfbd8=this[_0x315da0(0x149)]['map'](_0x514ce6=>({'topic':_0x514ce6}));return this[_0x315da0(0x14e)]['resume'](_0x3dfbd8),this[_0x315da0(0x17a)]=![],console[_0x315da0(0x160)](_0x3e294b['gyODu']),!![];}catch(_0x1cafa1){return console['error']('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x1cafa1['message']),![];}}async[a0_0x1631ff(0x194)](){const _0x4de7f1=a0_0x1631ff,_0x1c7d34={'oTAMj':'[KafkaConsumer]\x20Consumer\x20not\x20connected','Ijrvl':'[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'};if(!this[_0x4de7f1(0x168)])return console[_0x4de7f1(0x160)](_0x1c7d34['oTAMj']),!![];try{return this['consumer']&&(await this['consumer']['stop'](),await this['consumer'][_0x4de7f1(0x1a1)]()),this['isConnected']=![],this[_0x4de7f1(0x16d)]=![],this[_0x4de7f1(0x17a)]=![],console['log'](_0x1c7d34[_0x4de7f1(0x16a)]),!![];}catch(_0x10e348){return console['error'](_0x4de7f1(0x147)+_0x10e348['message']),![];}}async[a0_0x1631ff(0x187)](_0x119f45,_0xc4950f,_0x2c5b11){const _0x21cbb0=a0_0x1631ff;if(!this[_0x21cbb0(0x168)])return console[_0x21cbb0(0x161)](_0x21cbb0(0x141)),![];try{return this[_0x21cbb0(0x14e)]['seek']({'topic':_0x119f45,'partition':_0xc4950f,'offset':_0x2c5b11[_0x21cbb0(0x158)]()}),console['log'](_0x21cbb0(0x188)+_0x2c5b11+'\x20on\x20'+_0x119f45+':'+_0xc4950f),!![];}catch(_0x168817){return console[_0x21cbb0(0x161)]('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x168817[_0x21cbb0(0x1aa)]),![];}}['getStatus'](){const _0x39cdd1=a0_0x1631ff,_0x3e5330=this[_0x39cdd1(0x1b3)]();return{'enabled':_0x3e5330['enabled'],'connected':this['isConnected'],'running':this[_0x39cdd1(0x16d)],'paused':this['isPaused'],'brokers':_0x3e5330[_0x39cdd1(0x140)],'clientId':_0x3e5330[_0x39cdd1(0x144)],'groupId':this[_0x39cdd1(0x143)],'subscribedTopics':this[_0x39cdd1(0x149)]};}['getMetrics'](){const _0x4793de=a0_0x1631ff,_0x4c2e8e={'WQWBa':function(_0x53c9f6,_0x5bce61){return _0x53c9f6>_0x5bce61;},'zAtMb':function(_0x5a4db7,_0x461e78){return _0x5a4db7>_0x461e78;},'eKRZs':function(_0x570664,_0x1dce6a){return _0x570664+_0x1dce6a;},'UhcFE':function(_0x14c3b6,_0x48cdc1){return _0x14c3b6/_0x48cdc1;},'rHAkB':function(_0x491703,_0x20d2e8){return _0x491703+_0x20d2e8;}},_0x1622aa=this[_0x4793de(0x1a5)][_0x4793de(0x172)][_0x4793de(0x193)]>0x0?this['metrics']['processingTimes']['reduce']((_0xc0575d,_0x2c9b94)=>_0xc0575d+_0x2c9b94,0x0)/this['metrics']['processingTimes']['length']:0x0,_0x3079e6=this['metrics'][_0x4793de(0x172)]['length']>0x0?Math['min'](...this['metrics'][_0x4793de(0x172)]):0x0,_0x5b8b42=_0x4c2e8e['WQWBa'](this['metrics']['processingTimes'][_0x4793de(0x193)],0x0)?Math['max'](...this['metrics'][_0x4793de(0x172)]):0x0;return{'messagesReceived':this[_0x4793de(0x1a5)][_0x4793de(0x155)],'messagesProcessed':this['metrics']['messagesProcessed'],'messagesFailed':this['metrics']['messagesFailed'],'successRate':_0x4c2e8e[_0x4793de(0x1a4)](this['metrics']['messagesReceived'],0x0)?_0x4c2e8e['eKRZs']((this[_0x4793de(0x1a5)]['messagesProcessed']/this[_0x4793de(0x1a5)][_0x4793de(0x155)]*0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this[_0x4793de(0x1a5)][_0x4793de(0x162)],'startTime':this[_0x4793de(0x1a5)][_0x4793de(0x15d)],'uptime':this['metrics'][_0x4793de(0x15d)]?_0x4c2e8e[_0x4793de(0x146)](Math['floor'](_0x4c2e8e['UhcFE'](Date[_0x4793de(0x183)]()-this[_0x4793de(0x1a5)]['startTime'][_0x4793de(0x153)](),0x3e8)),'s'):'0s','processingTime':{'avg':Math[_0x4793de(0x13c)](_0x1622aa)+'ms','min':_0x4c2e8e[_0x4793de(0x178)](_0x3079e6,'ms'),'max':_0x4c2e8e['rHAkB'](_0x5b8b42,'ms')}};}[a0_0x1631ff(0x14d)](){const _0x4f0539=a0_0x1631ff,_0x335f3c={'zGduM':_0x4f0539(0x1a3)};this[_0x4f0539(0x1a5)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console[_0x4f0539(0x160)](_0x335f3c['zGduM']);}async['close'](){await this['stop']();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){const _0x5deee4=a0_0x1631ff;instance&&(instance[_0x5deee4(0x173)](),instance=null);}function createInstance(){return new KafkaConsumerService();}module[a0_0x1631ff(0x159)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
1
|
+
const a0_0x22f015=a0_0x2de7;function a0_0x5b10(){const _0x31ae55=['z2v0q29UzMLN','A2fMA2fQCW','z2v0u3rHDhvZ','A2fMA2e','AxnbCNjHEq','BwvZC2fNzxnszwnLAxzLza','nhWZFdv8mhWXFdi','DMfSDwu','s0fgs0fFu0vtu0LptL9usu1ft1vu','BwvZC2fNzq','C3rVCa','C3bSAxq','Bwf4','sK52BMW','mta0odu3nG','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignYyxnOzwq6ia','mZaWma','yKTxzge','ChjVy2vZC2LUz1rPBwvZ','s0fgs0fFte9hx0XfvKvm','rLz1tg4','zw52','Agzkzxu','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','CM91BMq','y29UC3vTzxiUC3rVCa','yNjVA2vYCW','CMvZDw1L','AxnqyxvZzwq','mJuWmda','wgrHuMK','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','rvjst1i','CgfYC2vizwfKzxjZ','mJG3nZm0ng5Tsgf0za','zxjYB3i','BhvzzLC','z2v0tg9Ntgv2zwW','s0fgs0fFqLjps0vsuW','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','BM93','revcvuC','mtCZodqWnhbYCNnguW','A2v5','C2vLA1rVt2zMC2v0','DxvPza','Aw1OzfG','C3vIC2nYAwjLzfrVCgLJCW','AxnjBML0AwfSAxPPBMC','mZaWmda','CMvKDwnL','ntaWma','y29UC3vTzxi','ChvZAa','z2v0vgLTzq','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzwqGDg8GDg9WAwm6ia','ig9Uia','s0fgs0fFu0fttf9vu0vstKfnrq','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','y29UC3vTzxiUCMvIywXHBMnPBMC','y2XVC2u','AxndB25Uzwn0zwq','yxv0B0nVBw1PDeLUDgvYDMfS','nZuWnJG0CxLhDM91','C3rHCNruAw1L','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','y29UBMvJDgLVBLrPBwvVDxq','s0fgs0fFu1nm','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','vg90C04','zgvMyxvSDa','mZmZotb2DKjsDNK','y2XPzw50swq','s0fgs0fFq09otKvdveLptL9usu1ft1vu','BwvZC2fNzxnqCM9JzxnZzwq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','y29UBMvJDa','s0fgs0fFqvvut19dt01nsvq','D2fYBG','nJnvAwrYCgy','z3jVDxbjza','yxv0B0nVBw1PDa','CMvXDwvZDfrPBwvVDxq','mtaWma','BwvZC2fNzxngywLSzwq','BgvUz3rO','suTODe8','tK9useLorW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','CNvU','C3vIC2nYAwjL','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','CMv0CNLbDhrLBxb0CW','y29UBMvJDgLVBLbYB21PC2u','Bg9N','zgLZy29UBMvJDa','DuDHwMi','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','rxfhyNe','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','mJi4mJqWouHirNjvBG','qxDtt2K','lwnVBNn1BwvYlwDYB3vW','icHNCM91CeLKoIa','z2v0twv0CMLJCW','Bwv0CMLJCW','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','Dg9tDhjPBMC','AM9PBG','BgfZDe1LC3nHz2vuAw1L','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','rhb0zhe','mtKXmJq3uwHsy3DW','nJzJBKHHtgm','tNDVzge','BwvZC2fNzuHHBMrSzxi','Bwf4qNL0zxnqzxjqyxj0AxrPB24','Bg9Ntgv2zwW','suvOt2S','mZKWmZG1zMLmy0nK','C2vLAW','CMv0CNLnyxHezwXHEq','v0fstG','CMv0CNLezwXHEq','AxnsDw5UAw5N','s0fgs0fFru5bqKXfra','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignVBM5Ly3rLzcb0BYbICM9RzxjZoIa','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','y29UC3vTzxiUzgLZy29UBMvJDa','vLPxuu8'];a0_0x5b10=function(){return _0x31ae55;};return a0_0x5b10();}(function(_0x28aa98,_0x1c11bf){const _0x58d481=a0_0x2de7,_0xfac85b=_0x28aa98();while(!![]){try{const _0x8bdbb=-parseInt(_0x58d481(0xd9))/0x1*(parseInt(_0x58d481(0xd1))/0x2)+parseInt(_0x58d481(0xc9))/0x3+parseInt(_0x58d481(0xb4))/0x4+-parseInt(_0x58d481(0x102))/0x5*(-parseInt(_0x58d481(0xfc))/0x6)+-parseInt(_0x58d481(0xfb))/0x7+parseInt(_0x58d481(0xac))/0x8+-parseInt(_0x58d481(0xef))/0x9;if(_0x8bdbb===_0x1c11bf)break;else _0xfac85b['push'](_0xfac85b['shift']());}catch(_0x4c5f8c){_0xfac85b['push'](_0xfac85b['shift']());}}}(a0_0x5b10,0x8b50d));const {Kafka,logLevel}=require(a0_0x22f015(0x10e)),{v7:uuidv7}=require(a0_0x22f015(0xb7));class KafkaConsumerService{constructor(){const _0xd79e02=a0_0x22f015;this[_0xd79e02(0x110)]=null,this[_0xd79e02(0xbe)]=null,this['isConnected']=![],this[_0xd79e02(0xba)]=![],this[_0xd79e02(0x107)]=![],this['isPaused']=![],this['connectionPromise']=null,this['subscribedTopics']=[],this[_0xd79e02(0xda)]=null,this['messageHandler']=null,this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x22f015(0x10d)](){const _0x66a748=a0_0x22f015,_0x151206={'DcAuN':'true','IEhOk':_0x66a748(0xd0),'uGaZb':function(_0x2e5b7f,_0xfd95a){return _0x2e5b7f(_0xfd95a);},'dRxHd':function(_0xa2d069,_0x120d27){return _0xa2d069(_0x120d27);},'Nwoda':'3000','kGvEJ':_0x66a748(0x11b),'TotsN':function(_0x5b8f95,_0x37a1cb){return _0x5b8f95===_0x37a1cb;},'ximPE':function(_0xc83849,_0x26c2c8){return _0xc83849(_0x26c2c8);},'BymtA':_0x66a748(0xdd),'imhdX':function(_0x2afff0,_0x990578){return _0x2afff0(_0x990578);},'HCwfe':_0x66a748(0xd8)};return{'enabled':process[_0x66a748(0x122)][_0x66a748(0x108)]===_0x151206['DcAuN'],'brokers':(process['env'][_0x66a748(0xb0)]||'localhost:9092')[_0x66a748(0x118)](','),'clientId':process['env']['KAFKA_CLIENT_ID']||'restforge-'+(process[_0x66a748(0x122)][_0x66a748(0x124)]||_0x151206[_0x66a748(0x101)])+'-consumer','connectionTimeout':parseInt(process[_0x66a748(0x122)][_0x66a748(0xd3)]||_0x66a748(0x11d)),'requestTimeout':_0x151206[_0x66a748(0xea)](parseInt,process[_0x66a748(0x122)]['KAFKA_REQUEST_TIMEOUT']||_0x66a748(0xa7)),'sessionTimeout':_0x151206['dRxHd'](parseInt,process[_0x66a748(0x122)][_0x66a748(0x115)]||_0x66a748(0xbb)),'heartbeatInterval':_0x151206['dRxHd'](parseInt,process[_0x66a748(0x122)]['KAFKA_HEARTBEAT_INTERVAL']||_0x151206[_0x66a748(0xfd)]),'maxBytesPerPartition':_0x151206[_0x66a748(0xea)](parseInt,process[_0x66a748(0x122)]['KAFKA_MAX_BYTES_PER_PARTITION']||_0x151206['kGvEJ']),'autoCommit':_0x151206[_0x66a748(0xcf)](process['env'][_0x66a748(0xd7)],'true'),'autoCommitInterval':_0x151206['uGaZb'](parseInt,process[_0x66a748(0x122)]['KAFKA_AUTO_COMMIT_INTERVAL']||_0x66a748(0xbd)),'retryAttempts':_0x151206['dRxHd'](parseInt,process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0x151206['ximPE'](parseInt,process['env']['KAFKA_RETRY_DELAY']||_0x151206['BymtA']),'retryMaxDelay':_0x151206[_0x66a748(0xb8)](parseInt,process['env']['KAFKA_RETRY_MAX_DELAY']||_0x66a748(0xbb)),'logLevel':process[_0x66a748(0x122)][_0x66a748(0x120)]||_0x151206['HCwfe']};}[a0_0x22f015(0xaf)](_0x13d758){const _0x382339=a0_0x22f015,_0x487747={'nothing':logLevel[_0x382339(0xe1)],'error':logLevel[_0x382339(0xaa)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel[_0x382339(0xb3)]};return _0x487747[_0x13d758['toLowerCase']()]||logLevel[_0x382339(0x105)];}async['initialize'](_0x30e4d1={}){const _0x171d90=a0_0x22f015,_0x17b1df={'HcjrQ':function(_0x188c53,_0x4d3a26){return _0x188c53===_0x4d3a26;},'gtIQs':_0x171d90(0xa9)},_0x1d484c=this[_0x171d90(0x10d)]();if(!_0x1d484c['enabled'])return console['log'](_0x17b1df['gtIQs']),![];if(this[_0x171d90(0xc7)])return!![];if(this[_0x171d90(0xba)]&&this['connectionPromise'])return this['connectionPromise'];return this['isInitializing']=!![],this[_0x171d90(0xe7)]=new Promise(async _0x119b62=>{const _0x2a2e01=_0x171d90;try{let _0x326dcd=undefined;_0x17b1df['HcjrQ'](process[_0x2a2e01(0x122)][_0x2a2e01(0xcd)],'true')&&(_0x326dcd=!![]);let _0x3d0060=undefined;process[_0x2a2e01(0x122)]['KAFKA_SASL_MECHANISM']&&(_0x3d0060={'mechanism':process[_0x2a2e01(0x122)]['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x2a2e01(0xc3)]||'','password':process[_0x2a2e01(0x122)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x30e4d1['clientId']||_0x1d484c['clientId'],'brokers':_0x1d484c[_0x2a2e01(0xa4)],'connectionTimeout':_0x1d484c[_0x2a2e01(0xcc)],'requestTimeout':_0x1d484c[_0x2a2e01(0xdc)],'logLevel':this['getLogLevel'](_0x1d484c[_0x2a2e01(0x100)]),'ssl':_0x326dcd,'sasl':_0x3d0060,'retry':{'initialRetryTime':_0x1d484c[_0x2a2e01(0x106)],'retries':_0x1d484c[_0x2a2e01(0xe6)],'maxRetryTime':_0x1d484c[_0x2a2e01(0x104)]}}),this['groupId']=_0x30e4d1['groupId']||'restforge-'+(process[_0x2a2e01(0x122)][_0x2a2e01(0x124)]||_0x2a2e01(0xd0))+_0x2a2e01(0xf1),this[_0x2a2e01(0xbe)]=this[_0x2a2e01(0x110)]['consumer']({'groupId':this['groupId'],'sessionTimeout':_0x1d484c['sessionTimeout'],'heartbeatInterval':_0x1d484c['heartbeatInterval'],'maxBytesPerPartition':_0x1d484c[_0x2a2e01(0xff)],'allowAutoTopicCreation':![]}),await this['consumer'][_0x2a2e01(0xd6)](),this[_0x2a2e01(0xc7)]=!![],console['log'](_0x2a2e01(0x109)+_0x1d484c['brokers']['join'](',\x20')+_0x2a2e01(0xf2)+this[_0x2a2e01(0xda)]+')'),this['setupEventHandlers'](),_0x119b62(!![]);}catch(_0x285354){console[_0x2a2e01(0xad)](_0x2a2e01(0xec)+_0x285354[_0x2a2e01(0x116)]),this['isConnected']=![],_0x119b62(![]);}finally{this[_0x2a2e01(0xba)]=![];}}),this['connectionPromise'];}['setupEventHandlers'](){const _0x3d6d22=a0_0x22f015,_0xf55217={'zsdYb':_0x3d6d22(0xa3),'ejAnI':'consumer.crash'};if(!this['consumer'])return;this['consumer']['on'](_0x3d6d22(0x10b),()=>{const _0x1aa13a=_0x3d6d22;console[_0x1aa13a(0xe8)](_0x1aa13a(0xe5)),this['isConnected']=![],this['isRunning']=![];}),this['consumer']['on'](_0xf55217['zsdYb'],()=>{const _0x560cc4=_0x3d6d22;console[_0x560cc4(0xe8)]('[KafkaConsumer]\x20Consumer\x20stopped'),this[_0x560cc4(0x107)]=![];}),this['consumer']['on'](_0xf55217['ejAnI'],_0x1240ef=>{const _0x4dc3ca=_0x3d6d22;console['error'](_0x4dc3ca(0x11c)+_0x1240ef['payload'][_0x4dc3ca(0xad)][_0x4dc3ca(0x116)]),this[_0x4dc3ca(0x107)]=![];}),this['consumer']['on'](_0x3d6d22(0xc5),()=>{console['log']('[KafkaConsumer]\x20Consumer\x20rebalancing...');});}async[a0_0x22f015(0xe4)](_0x2ad689,_0x518084=![]){const _0x5f5cf1=a0_0x22f015;if(!this['isConnected'])return console['error']('[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'),![];try{const _0x5688b3=Array[_0x5f5cf1(0x111)](_0x2ad689)?_0x2ad689:[_0x2ad689];for(const _0x197c30 of _0x5688b3){await this[_0x5f5cf1(0xbe)][_0x5f5cf1(0xe4)]({'topic':_0x197c30,'fromBeginning':_0x518084}),console[_0x5f5cf1(0xe8)](_0x5f5cf1(0xc1)+_0x197c30+'\x20(fromBeginning:\x20'+_0x518084+')');}return this[_0x5f5cf1(0xb9)]=[...new Set([...this['subscribedTopics'],..._0x5688b3])],!![];}catch(_0x474340){return console[_0x5f5cf1(0xad)](_0x5f5cf1(0xc4)+_0x474340['message']),![];}}async['startConsuming'](_0x11d9d5,_0x732c16={}){const _0xf5a956=a0_0x22f015,_0x3fc29e={'HkYQF':function(_0xa75a51,_0x2f846e){return _0xa75a51+_0x2f846e;},'bKWda':function(_0x3dd08c,_0x1bd622){return _0x3dd08c(_0x1bd622);},'hfJeu':function(_0x5c4c53,_0x1403e5){return _0x5c4c53-_0x1403e5;},'uGOBo':function(_0x2bf007){return _0x2bf007();}};if(!this['isConnected'])return console['error']('[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected'),![];if(this[_0xf5a956(0x107)])return console['log'](_0xf5a956(0xeb)),!![];const _0x556630=this['getConfig']();this['messageHandler']=_0x11d9d5;try{return this[_0xf5a956(0xf4)][_0xf5a956(0xca)]=new Date(),await this['consumer'][_0xf5a956(0xe3)]({'autoCommit':_0x732c16['autoCommit']!==undefined?_0x732c16[_0xf5a956(0xdb)]:_0x556630['autoCommit'],'autoCommitInterval':_0x556630[_0xf5a956(0xc8)],'eachMessage':async({topic:_0x244154,partition:_0x5d7a7a,message:_0x30bea1,heartbeat:_0xb8e7be})=>{const _0x5d15ed=_0xf5a956,_0x6c842a=Date['now']();this['metrics'][_0x5d15ed(0x112)]++,this[_0x5d15ed(0xf4)][_0x5d15ed(0xf8)]=new Date();try{const _0x261c8f=_0x30bea1[_0x5d15ed(0x114)]?_0x30bea1['value']['toString']():null;let _0xa50a71=null;try{_0xa50a71=_0x261c8f?JSON['parse'](_0x261c8f):null;}catch(_0x5b04da){_0xa50a71=_0x261c8f;}const _0x4d9fce={'topic':_0x244154,'partition':_0x5d7a7a,'offset':_0x30bea1['offset'],'key':_0x30bea1[_0x5d15ed(0xb5)]?_0x30bea1[_0x5d15ed(0xb5)][_0x5d15ed(0xf6)]():null,'headers':this['parseHeaders'](_0x30bea1['headers']),'timestamp':_0x30bea1['timestamp'],'value':_0xa50a71,'raw':_0x261c8f};this[_0x5d15ed(0xfe)]&&await this['messageHandler'](_0x4d9fce);!_0x556630[_0x5d15ed(0xdb)]&&await this[_0x5d15ed(0xbe)]['commitOffsets']([{'topic':_0x244154,'partition':_0x5d7a7a,'offset':_0x3fc29e['HkYQF'](_0x3fc29e[_0x5d15ed(0x11e)](parseInt,_0x30bea1['offset']),0x1)[_0x5d15ed(0xf6)]()}]);this['metrics'][_0x5d15ed(0xd4)]++;const _0x400369=_0x3fc29e[_0x5d15ed(0x123)](Date['now'](),_0x6c842a);this['metrics'][_0x5d15ed(0x11f)][_0x5d15ed(0xbf)](_0x400369),this['metrics']['processingTimes'][_0x5d15ed(0xdf)]>0x64&&this['metrics'][_0x5d15ed(0x11f)]['shift'](),await _0x3fc29e['uGOBo'](_0xb8e7be);}catch(_0x5cecca){this['metrics'][_0x5d15ed(0xde)]++,console[_0x5d15ed(0xad)]('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x5cecca[_0x5d15ed(0x116)]);throw _0x5cecca;}}}),this[_0xf5a956(0x107)]=!![],console['log'](_0xf5a956(0xee)+this[_0xf5a956(0xb9)][_0xf5a956(0xf7)](',\x20')),!![];}catch(_0x5da631){return console[_0xf5a956(0xad)](_0xf5a956(0x10a)+_0x5da631[_0xf5a956(0x116)]),![];}}[a0_0x22f015(0xab)](_0x74f9b9){if(!_0x74f9b9)return{};const _0x2dfd1d={};for(const [_0x1313d9,_0x4a8926]of Object['entries'](_0x74f9b9)){_0x2dfd1d[_0x1313d9]=_0x4a8926?_0x4a8926['toString']():null;}return _0x2dfd1d;}async['pause'](){const _0x37ef46=a0_0x22f015,_0x1d7222={'XdaRi':_0x37ef46(0xb1),'VZWQO':_0x37ef46(0xd5),'Dptdq':_0x37ef46(0xe2)};if(!this[_0x37ef46(0xc7)]||!this[_0x37ef46(0x107)])return console[_0x37ef46(0xe8)](_0x1d7222[_0x37ef46(0xa8)]),![];if(this['isPaused'])return console[_0x37ef46(0xe8)](_0x1d7222[_0x37ef46(0x10c)]),!![];try{const _0x4484df=this[_0x37ef46(0xb9)]['map'](_0x1c5c86=>({'topic':_0x1c5c86}));return this['consumer']['pause'](_0x4484df),this['isPaused']=!![],console['log'](_0x1d7222[_0x37ef46(0xfa)]),!![];}catch(_0x2a9089){return console['error'](_0x37ef46(0xf5)+_0x2a9089[_0x37ef46(0x116)]),![];}}async[a0_0x22f015(0xa5)](){const _0x178279=a0_0x22f015,_0x132cb1={'XsLXM':'[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running','KUdRJ':'[KafkaConsumer]\x20Consumer\x20not\x20paused','EqGbq':'[KafkaConsumer]\x20Consumer\x20resumed'};if(!this[_0x178279(0xc7)]||!this[_0x178279(0x107)])return console[_0x178279(0xe8)](_0x132cb1['XsLXM']),![];if(!this['isPaused'])return console[_0x178279(0xe8)](_0x132cb1['KUdRJ']),!![];try{const _0x274ecf=this[_0x178279(0xb9)]['map'](_0x4ec7f1=>({'topic':_0x4ec7f1}));return this[_0x178279(0xbe)]['resume'](_0x274ecf),this[_0x178279(0xa6)]=![],console['log'](_0x132cb1[_0x178279(0xed)]),!![];}catch(_0x56b332){return console[_0x178279(0xad)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x56b332[_0x178279(0x116)]),![];}}async[a0_0x22f015(0x117)](){const _0x31f2a8=a0_0x22f015,_0xa65d95={'MYaBZ':_0x31f2a8(0xce),'IKhtO':_0x31f2a8(0x113)};if(!this[_0x31f2a8(0xc7)])return console[_0x31f2a8(0xe8)](_0xa65d95['MYaBZ']),!![];try{const _0x402081=_0xa65d95[_0x31f2a8(0xe0)]['split']('|');let _0x269088=0x0;while(!![]){switch(_0x402081[_0x269088++]){case'0':this[_0x31f2a8(0xa6)]=![];continue;case'1':console[_0x31f2a8(0xe8)]('[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected');continue;case'2':return!![];case'3':this[_0x31f2a8(0xc7)]=![];continue;case'4':this[_0x31f2a8(0xbe)]&&(await this[_0x31f2a8(0xbe)][_0x31f2a8(0x117)](),await this[_0x31f2a8(0xbe)][_0x31f2a8(0xe9)]());continue;case'5':this[_0x31f2a8(0x107)]=![];continue;}break;}}catch(_0x2ecf39){return console[_0x31f2a8(0xad)](_0x31f2a8(0xf9)+_0x2ecf39[_0x31f2a8(0x116)]),![];}}async[a0_0x22f015(0xb6)](_0x4f2699,_0x41be14,_0x3a2eb0){const _0x53bb76=a0_0x22f015;if(!this['isConnected'])return console[_0x53bb76(0xad)](_0x53bb76(0xcb)),![];try{return this[_0x53bb76(0xbe)][_0x53bb76(0x103)]({'topic':_0x4f2699,'partition':_0x41be14,'offset':_0x3a2eb0[_0x53bb76(0xf6)]()}),console['log']('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x3a2eb0+_0x53bb76(0xc2)+_0x4f2699+':'+_0x41be14),!![];}catch(_0x17b6a2){return console['error']('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x17b6a2['message']),![];}}[a0_0x22f015(0x10f)](){const _0x19fb2a=a0_0x22f015,_0x7e76ed=this[_0x19fb2a(0x10d)]();return{'enabled':_0x7e76ed['enabled'],'connected':this[_0x19fb2a(0xc7)],'running':this['isRunning'],'paused':this['isPaused'],'brokers':_0x7e76ed[_0x19fb2a(0xa4)],'clientId':_0x7e76ed[_0x19fb2a(0xd2)],'groupId':this[_0x19fb2a(0xda)],'subscribedTopics':this['subscribedTopics']};}[a0_0x22f015(0xf3)](){const _0x2d992d=a0_0x22f015,_0x5da5ab={'bcwBB':function(_0x58d15f,_0x1d1bf4){return _0x58d15f/_0x1d1bf4;},'luYfW':function(_0x2ab9de,_0x102922){return _0x2ab9de>_0x102922;},'FVuLn':function(_0xc5cc9d,_0x212121){return _0xc5cc9d>_0x212121;},'AwSOi':function(_0x4ed0b3,_0x40526a){return _0x4ed0b3+_0x40526a;},'lDkql':function(_0x43816f,_0x478506){return _0x43816f*_0x478506;},'JNvnl':function(_0x9cd19c,_0x59f3b6){return _0x9cd19c/_0x59f3b6;},'oqdZQ':function(_0x9af77a,_0x1a78ba){return _0x9af77a-_0x1a78ba;},'pxCAs':function(_0x4785b6,_0x2289c0){return _0x4785b6+_0x2289c0;}},_0x360e6e=this[_0x2d992d(0xf4)]['processingTimes']['length']>0x0?_0x5da5ab['bcwBB'](this['metrics']['processingTimes'][_0x2d992d(0xbc)]((_0x44a614,_0x2387c5)=>_0x44a614+_0x2387c5,0x0),this[_0x2d992d(0xf4)]['processingTimes'][_0x2d992d(0xdf)]):0x0,_0x58d0c8=_0x5da5ab[_0x2d992d(0xae)](this['metrics'][_0x2d992d(0x11f)]['length'],0x0)?Math['min'](...this[_0x2d992d(0xf4)]['processingTimes']):0x0,_0x59df13=_0x5da5ab['FVuLn'](this['metrics']['processingTimes']['length'],0x0)?Math[_0x2d992d(0x119)](...this[_0x2d992d(0xf4)]['processingTimes']):0x0;return{'messagesReceived':this['metrics']['messagesReceived'],'messagesProcessed':this['metrics']['messagesProcessed'],'messagesFailed':this['metrics']['messagesFailed'],'successRate':_0x5da5ab[_0x2d992d(0x121)](this['metrics'][_0x2d992d(0x112)],0x0)?_0x5da5ab[_0x2d992d(0xf0)](_0x5da5ab['lDkql'](this['metrics']['messagesProcessed']/this[_0x2d992d(0xf4)][_0x2d992d(0x112)],0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this[_0x2d992d(0xf4)]['lastMessageTime'],'startTime':this[_0x2d992d(0xf4)][_0x2d992d(0xca)],'uptime':this['metrics']['startTime']?_0x5da5ab[_0x2d992d(0xf0)](Math['floor'](_0x5da5ab[_0x2d992d(0x11a)](_0x5da5ab['oqdZQ'](Date[_0x2d992d(0xb2)](),this[_0x2d992d(0xf4)][_0x2d992d(0xca)][_0x2d992d(0xc0)]()),0x3e8)),'s'):'0s','processingTime':{'avg':Math[_0x2d992d(0x125)](_0x360e6e)+'ms','min':_0x5da5ab['pxCAs'](_0x58d0c8,'ms'),'max':_0x5da5ab['AwSOi'](_0x59df13,'ms')}};}['resetMetrics'](){const _0x40fdd9=a0_0x22f015;this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console[_0x40fdd9(0xe8)]('[KafkaConsumer]\x20Metrics\x20reset');}async[a0_0x22f015(0xc6)](){await this['stop']();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function a0_0x2de7(_0x387567,_0x5f3c6a){_0x387567=_0x387567-0xa3;const _0x5b102c=a0_0x5b10();let _0x2de785=_0x5b102c[_0x387567];if(a0_0x2de7['PrbCtP']===undefined){var _0x2bcaa4=function(_0x27bf67){const _0x5843c1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ebf30='',_0x1b9479='';for(let _0xe52c8b=0x0,_0xc64743,_0x57c73d,_0x2250b8=0x0;_0x57c73d=_0x27bf67['charAt'](_0x2250b8++);~_0x57c73d&&(_0xc64743=_0xe52c8b%0x4?_0xc64743*0x40+_0x57c73d:_0x57c73d,_0xe52c8b++%0x4)?_0x4ebf30+=String['fromCharCode'](0xff&_0xc64743>>(-0x2*_0xe52c8b&0x6)):0x0){_0x57c73d=_0x5843c1['indexOf'](_0x57c73d);}for(let _0x280135=0x0,_0x19e939=_0x4ebf30['length'];_0x280135<_0x19e939;_0x280135++){_0x1b9479+='%'+('00'+_0x4ebf30['charCodeAt'](_0x280135)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b9479);};a0_0x2de7['RHNjIS']=_0x2bcaa4,a0_0x2de7['pqUYfo']={},a0_0x2de7['PrbCtP']=!![];}const _0xe09a5=_0x5b102c[0x0],_0x5c7890=_0x387567+_0xe09a5,_0x2c7bd1=a0_0x2de7['pqUYfo'][_0x5c7890];return!_0x2c7bd1?(_0x2de785=a0_0x2de7['RHNjIS'](_0x2de785),a0_0x2de7['pqUYfo'][_0x5c7890]=_0x2de785):_0x2de785=_0x2c7bd1,_0x2de785;}function resetInstance(){const _0x293b3e=a0_0x22f015;instance&&(instance[_0x293b3e(0xc6)](),instance=null);}function createInstance(){return new KafkaConsumerService();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x1027(){const _0xe067a3=['mJuWmda','zxjYB3i','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','CMv0CNLezwXHEq','ChjVzhvJzxi','Dw5RBM93BG','AxndB25Uzwn0zwq','v0fstG','E2vUzhbVAw50Fq','s0fgs0fFq0Xjru5ux0Le','wMnnBvC','Dg9vChbLCKnHC2u','ChvIBgLZAev2zw50','Dg9WAwnqyxr0zxjU','CMvZDgzVCMDLlq','odq1A2zsDLPV','mtKYndmZm05NzxreuW','CgfKu3rHCNq','su5gtW','sMrQtKC','s0fgs0fFve9qsunFuefuvevstG','zxHWB3j0CW','zw5HyMXLza','mJbVBvjOuxe','DxvPza','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','BwvZC2fNzq','nJm2ote3nhL5yw13EG','z2v0twLUDxrLCW','yNjVA2vYCW','C291CMnL','y29UBMvJDgLVBLrPBwvVDxq','DgfIBgvoyw1L','A2fMA2e','Bg9N','s0fgs0fFte9hx0XfvKvm','Dg9mB3DLCKnHC2u','mhWYFdf8nhWZ','A2v5rMLLBgq','Dhj1zq','qLvTEM4','ms4W','ntm1mZq2mwTYAhDIzW','zgvSzxrLza','EgLvCwi','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','rMfPBgvKihrVignVBM5Ly3qGDg8Gs2fMA2eGyNjVA2vY','z2v0u2vJB25KCW','Dg9WAwm','uKvtvezpuKDflq','y3jLyxrLzej5','CgfYDgL0Aw9U','zgLZy29UBMvJDa','ndaWnuHMzgDbsW','mKPUEMv0BG','u1Ltvevn','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','s0fgs0fFqLjps0vsuW','yNvPBgruB3bPy05HBwu','E2fJDgLVBN0','DxbKyxrLza','mteYmJuZmerduevtBq','icHRzxK6ia','z2v0q29UzMLN','Aw5PDgLHBgL6zq','nZG0ntC1nhH1z1zyDG','ru5usvrzx1vqrefuruq','CMv0CNLbDhrLBxb0CW','y29YCI0','C3rYAw5NAwz5','Bw9KDwXL','z2v0tg9Ntgv2zwW','B0nwDe0','zM9YBwf0rgf0zvrPBwu','zgvMyxvSDa','s0fgs0fFu1nm','zw52','yNvPBgrfDMvUDe1LC3nHz2u','AhHWuem','z2v0rgf0zq','wK5bzKW','tK9useLorW','s0fgs0fFu0fttf9qqvntv09sra','EwnWBfK','AM9PBG','EuXntei','mtG5nJbdzKL3zfG','CMvWBgfJzq','y29UBMvJDgLVBLbYB21PC2u','ChvIBgLZAfvWzgf0zq','Bg9JywXOB3n0oJKWoti','Bg9Ntgv2zwW','DgvUyw50swq','mZuYtxLfwM9H'];a0_0x1027=function(){return _0xe067a3;};return a0_0x1027();}const a0_0x47ffee=a0_0x10bf;(function(_0x168ba4,_0x9d0036){const _0xe7898c=a0_0x10bf,_0x259e2e=_0x168ba4();while(!![]){try{const _0x4dc6a7=-parseInt(_0xe7898c(0x163))/0x1+-parseInt(_0xe7898c(0x12b))/0x2*(parseInt(_0xe7898c(0x11f))/0x3)+-parseInt(_0xe7898c(0x16a))/0x4*(-parseInt(_0xe7898c(0x162))/0x5)+-parseInt(_0xe7898c(0x16e))/0x6+parseInt(_0xe7898c(0x136))/0x7+parseInt(_0xe7898c(0x14b))/0x8*(parseInt(_0xe7898c(0x12a))/0x9)+-parseInt(_0xe7898c(0x132))/0xa*(-parseInt(_0xe7898c(0x152))/0xb);if(_0x4dc6a7===_0x9d0036)break;else _0x259e2e['push'](_0x259e2e['shift']());}catch(_0x210e23){_0x259e2e['push'](_0x259e2e['shift']());}}}(a0_0x1027,0xf3ab0));function a0_0x10bf(_0x31d4b8,_0x2c177f){_0x31d4b8=_0x31d4b8-0x11f;const _0x102726=a0_0x1027();let _0x10bfd5=_0x102726[_0x31d4b8];if(a0_0x10bf['YZiBVS']===undefined){var _0x583573=function(_0x50d30c){const _0x41a641='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1f8e4d='',_0x4bb83c='';for(let _0x5281a3=0x0,_0x356dd3,_0x5d6fab,_0x3c6e3c=0x0;_0x5d6fab=_0x50d30c['charAt'](_0x3c6e3c++);~_0x5d6fab&&(_0x356dd3=_0x5281a3%0x4?_0x356dd3*0x40+_0x5d6fab:_0x5d6fab,_0x5281a3++%0x4)?_0x1f8e4d+=String['fromCharCode'](0xff&_0x356dd3>>(-0x2*_0x5281a3&0x6)):0x0){_0x5d6fab=_0x41a641['indexOf'](_0x5d6fab);}for(let _0x4a16a5=0x0,_0x233b95=_0x1f8e4d['length'];_0x4a16a5<_0x233b95;_0x4a16a5++){_0x4bb83c+='%'+('00'+_0x1f8e4d['charCodeAt'](_0x4a16a5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4bb83c);};a0_0x10bf['ePrdUT']=_0x583573,a0_0x10bf['rjbEbP']={},a0_0x10bf['YZiBVS']=!![];}const _0x598d10=_0x102726[0x0],_0x35c53a=_0x31d4b8+_0x598d10,_0x358e54=a0_0x10bf['rjbEbP'][_0x35c53a];return!_0x358e54?(_0x10bfd5=a0_0x10bf['ePrdUT'](_0x10bfd5),a0_0x10bf['rjbEbP'][_0x35c53a]=_0x10bfd5):_0x10bfd5=_0x358e54,_0x10bfd5;}const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require(a0_0x47ffee(0x16b));class KafkaService{constructor(){const _0x4ad314=a0_0x47ffee,_0x5b89dd=_0x4ad314(0x178)['split']('|');let _0x540598=0x0;while(!![]){switch(_0x5b89dd[_0x540598++]){case'0':this['kafka']=null;continue;case'1':this['isConnected']=![];continue;case'2':this[_0x4ad314(0x157)]=null;continue;case'3':this['connectionPromise']=null;continue;case'4':this['isInitializing']=![];continue;}break;}}['getConfig'](){const _0x1a9fab=a0_0x47ffee,_0x214b1e={'JdjNG':_0x1a9fab(0x14f),'YFnck':function(_0x1515b9,_0x3d14ca){return _0x1515b9(_0x3d14ca);},'hxpPC':_0x1a9fab(0x16c),'ycplY':_0x1a9fab(0x13f),'ZbRba':'warn'};return{'enabled':process[_0x1a9fab(0x141)]['KAFKA_ENABLED']==='true','brokers':(process['env'][_0x1a9fab(0x12e)]||_0x214b1e[_0x1a9fab(0x166)])['split'](','),'clientId':process[_0x1a9fab(0x141)][_0x1a9fab(0x15c)]||_0x1a9fab(0x161)+(process[_0x1a9fab(0x141)][_0x1a9fab(0x155)]||'default')+'-producer','connectionTimeout':_0x214b1e['YFnck'](parseInt,process[_0x1a9fab(0x141)]['KAFKA_CONNECTION_TIMEOUT']||'3000'),'requestTimeout':_0x214b1e['YFnck'](parseInt,process['env']['KAFKA_REQUEST_TIMEOUT']||_0x1a9fab(0x153)),'topicPattern':process['env'][_0x1a9fab(0x167)]||_0x214b1e[_0x1a9fab(0x143)],'tenantId':process[_0x1a9fab(0x141)]['KAFKA_TENANT_ID']||_0x214b1e[_0x1a9fab(0x148)],'retryAttempts':parseInt(process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process[_0x1a9fab(0x141)]['KAFKA_RETRY_DELAY']||'1000'),'logLevel':process['env'][_0x1a9fab(0x176)]||_0x214b1e['ZbRba']};}[a0_0x47ffee(0x13c)](_0x2e16a8){const _0x21ca63=a0_0x47ffee,_0x583955={'nothing':logLevel[_0x21ca63(0x146)],'error':logLevel['ERROR'],'warn':logLevel[_0x21ca63(0x15a)],'info':logLevel[_0x21ca63(0x165)],'debug':logLevel['DEBUG']};return _0x583955[_0x2e16a8[_0x21ca63(0x177)]()]||logLevel[_0x21ca63(0x15a)];}async[a0_0x47ffee(0x135)](){const _0x5c19bb=a0_0x47ffee,_0x3be049={'RzUsB':'[Kafka]\x20Producer\x20disconnected'},_0x183635=this['getConfig']();if(!_0x183635[_0x5c19bb(0x169)])return console[_0x5c19bb(0x175)]('[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'),![];if(this[_0x5c19bb(0x159)])return!![];if(this['isInitializing']&&this['connectionPromise'])return this['connectionPromise'];return this['isInitializing']=!![],this[_0x5c19bb(0x14d)]=new Promise(async _0x3acd9e=>{const _0x15e7ee=_0x5c19bb;try{let _0x41ffea=undefined;process[_0x15e7ee(0x141)][_0x15e7ee(0x140)]===_0x15e7ee(0x17a)&&(_0x41ffea=!![]);let _0xc4d54b=undefined;process[_0x15e7ee(0x141)]['KAFKA_SASL_MECHANISM']&&(_0xc4d54b={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process[_0x15e7ee(0x141)]['KAFKA_SASL_USERNAME']||'','password':process['env'][_0x15e7ee(0x147)]||''}),this['kafka']=new Kafka({'clientId':_0x183635['clientId'],'brokers':_0x183635[_0x15e7ee(0x170)],'connectionTimeout':_0x183635[_0x15e7ee(0x172)],'requestTimeout':_0x183635['requestTimeout'],'logLevel':this[_0x15e7ee(0x13c)](_0x183635[_0x15e7ee(0x150)]),'ssl':_0x41ffea,'sasl':_0xc4d54b,'retry':{'initialRetryTime':_0x183635[_0x15e7ee(0x156)],'retries':_0x183635[_0x15e7ee(0x138)]}}),this['producer']=this[_0x15e7ee(0x174)]['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners['LegacyPartitioner']}),await this['producer']['connect'](),this[_0x15e7ee(0x159)]=!![],console['log']('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x183635[_0x15e7ee(0x170)][_0x15e7ee(0x149)](',\x20')),this[_0x15e7ee(0x157)]['on']('producer.disconnect',()=>{console['log'](_0x3be049['RzUsB']),this['isConnected']=![];}),_0x3acd9e(!![]);}catch(_0x18824c){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x18824c[_0x15e7ee(0x16d)]),this[_0x15e7ee(0x159)]=![],_0x3acd9e(![]);}finally{this['isInitializing']=![];}}),this[_0x5c19bb(0x14d)];}[a0_0x47ffee(0x13e)](_0x3671f9){const _0x1db216=a0_0x47ffee,_0x119c2f={'oXXsL':function(_0x41c3e0,_0x438e7b){return _0x41c3e0+_0x438e7b;},'ZNAfL':function(_0x153768,_0x38388f){return _0x153768(_0x38388f);},'oCVtM':function(_0x36ab70,_0x4a24f6){return _0x36ab70(_0x4a24f6);}},_0x3ddf7c=_0x3671f9||new Date(),_0x3a2ae9=_0x3ddf7c['getFullYear'](),_0x40a50a=String(_0x119c2f['oXXsL'](_0x3ddf7c['getMonth'](),0x1))['padStart'](0x2,'0'),_0x221dba=_0x119c2f[_0x1db216(0x145)](String,_0x3ddf7c[_0x1db216(0x144)]())[_0x1db216(0x164)](0x2,'0'),_0x24cfb6=String(_0x3ddf7c['getHours']())['padStart'](0x2,'0'),_0xfc9f8=_0x119c2f[_0x1db216(0x13d)](String,_0x3ddf7c[_0x1db216(0x16f)]())[_0x1db216(0x164)](0x2,'0'),_0x48696a=String(_0x3ddf7c[_0x1db216(0x124)]())[_0x1db216(0x164)](0x2,'0');return _0x3a2ae9+'-'+_0x40a50a+'-'+_0x221dba+'\x20'+_0x24cfb6+':'+_0xfc9f8+':'+_0x48696a;}[a0_0x47ffee(0x12f)](_0x18b0f6,_0x159214,_0x3fc2fa,_0x174fee=null){const _0x3ecc24=a0_0x47ffee,_0x47021d={'yLMLB':_0x3ecc24(0x130)};if(_0x174fee)return _0x174fee;const _0x35e81d=this['getConfig']()[_0x3ecc24(0x160)];return _0x35e81d[_0x3ecc24(0x14c)]('{module}',_0x18b0f6)['replace'](_0x3ecc24(0x15b),_0x159214)[_0x3ecc24(0x14c)](_0x47021d[_0x3ecc24(0x14a)],_0x3fc2fa);}['buildEventMessage'](_0x18ab86,_0x2c435b,_0x18d2f7,_0xa0c4ab={}){const _0x3fac1e=a0_0x47ffee,_0x4b1380={'hNtlZ':function(_0x50f245){return _0x50f245();},'BUmzn':_0x3fac1e(0x17c),'KVkSb':_0x3fac1e(0x12c),'eIYBp':_0x3fac1e(0x158)},_0xce9a1d=new Date(),_0xc6b25=this['formatDateTime'](_0xce9a1d),_0x10e087=_0xa0c4ab['correlationId']||_0x3fac1e(0x139)+_0x4b1380['hNtlZ'](uuidv7);return{'eventId':'evt-'+uuidv7(),'eventType':_0x18ab86,'eventTime':_0xc6b25,'eventVersion':_0x4b1380[_0x3fac1e(0x17b)],'source':'restforge-'+(_0xa0c4ab[_0x3fac1e(0x13b)]||'unknown'),'correlationId':_0x10e087,'newData':_0x18d2f7,'oldData':_0x2c435b,'metadata':{'createdBy':_0xa0c4ab[_0x3fac1e(0x127)]||_0x4b1380['KVkSb'],'createdAt':_0xc6b25,'systemId':_0x3fac1e(0x126)+(_0xa0c4ab['module']||_0x4b1380['eIYBp'])[_0x3fac1e(0x15e)](),'tenantId':this[_0x3fac1e(0x134)]()[_0x3fac1e(0x151)],'endpoint':_0xa0c4ab['endpoint']||null,'tableName':_0xa0c4ab['tableName']||null}};}async[a0_0x47ffee(0x15f)](_0x1c9e31,_0x2b8d4f,_0x254d02,_0x449e5e,_0x1962a3={}){const _0x2f6a6d=a0_0x47ffee,_0x209c33={'kTNVF':function(_0x2b38fe){return _0x2b38fe();}},_0x34a240=this['getConfig']();if(!_0x34a240[_0x2f6a6d(0x169)])return{'success':![],'reason':'Kafka\x20producer\x20is\x20disabled','published':![]};if(!this['isConnected']){const _0x50f688=await this['initialize']();if(!_0x50f688)return{'success':![],'reason':_0x2f6a6d(0x123),'published':![]};}try{const _0x111789=this[_0x2f6a6d(0x142)](_0x2b8d4f,_0x254d02,_0x449e5e,_0x1962a3),_0x17a119=_0x1962a3[_0x2f6a6d(0x179)]||'id',_0x1e6558=_0x449e5e?.[_0x17a119]||_0x254d02?.[_0x17a119]||_0x209c33['kTNVF'](uuidv7),_0x2e9a00=await this['producer']['send']({'topic':_0x1c9e31,'messages':[{'key':String(_0x1e6558),'value':JSON[_0x2f6a6d(0x13a)](_0x111789),'headers':{'event-type':_0x2b8d4f,'correlation-id':_0x111789['correlationId'],'source':_0x111789[_0x2f6a6d(0x171)]}}]});return console[_0x2f6a6d(0x175)](_0x2f6a6d(0x12d)+_0x1c9e31+':\x20'+_0x2b8d4f+_0x2f6a6d(0x133)+_0x1e6558+')'),{'success':!![],'correlationId':_0x111789['correlationId'],'topic':_0x1c9e31,'partition':_0x2e9a00[0x0]?.[_0x2f6a6d(0x128)],'offset':_0x2e9a00[0x0]?.['baseOffset'],'published':!![]};}catch(_0x2dae20){return console[_0x2f6a6d(0x154)](_0x2f6a6d(0x122)+_0x1c9e31+':\x20'+_0x2dae20['message']),{'success':![],'error':_0x2dae20[_0x2f6a6d(0x16d)],'published':![]};}}async['publishInsert'](_0x2be426,_0x175cef,_0x54db11,_0xad8153={}){const _0x1efd8c=a0_0x47ffee,_0x3c641d={'Otpvk':'created','ZcMmW':'ENTITY_CREATED'},_0x2c3cb9=this[_0x1efd8c(0x12f)](_0x2be426,_0x175cef,_0x3c641d['Otpvk'],_0xad8153['topic']);return this['publishEvent'](_0x2c3cb9,_0x3c641d[_0x1efd8c(0x15d)],null,_0x54db11,{'module':_0x2be426,'endpoint':_0x175cef,'keyField':_0xad8153[_0x1efd8c(0x179)],'tableName':_0xad8153[_0x1efd8c(0x173)],'correlationId':_0xad8153['correlationId']});}async[a0_0x47ffee(0x14e)](_0x11a823,_0x53e5f3,_0x1fb268,_0x21c827,_0x256437={}){const _0x4cf3cd=a0_0x47ffee,_0x2a9f27={'xiUqb':_0x4cf3cd(0x131),'MwMOI':_0x4cf3cd(0x137)},_0x2ca220=this[_0x4cf3cd(0x12f)](_0x11a823,_0x53e5f3,_0x2a9f27[_0x4cf3cd(0x121)],_0x256437[_0x4cf3cd(0x125)]);return this['publishEvent'](_0x2ca220,_0x2a9f27['MwMOI'],_0x1fb268,_0x21c827,{'module':_0x11a823,'endpoint':_0x53e5f3,'keyField':_0x256437['keyField'],'tableName':_0x256437[_0x4cf3cd(0x173)],'correlationId':_0x256437['correlationId']});}async['publishDelete'](_0x1cd4b3,_0x13b304,_0x49ad05,_0x204dc8={}){const _0xa589b7=a0_0x47ffee,_0x4fc12f={'TWDvA':_0xa589b7(0x120),'Qlrnh':'ENTITY_DELETED'},_0x19c96e=this['buildTopicName'](_0x1cd4b3,_0x13b304,_0x4fc12f['TWDvA'],_0x204dc8[_0xa589b7(0x125)]);return this['publishEvent'](_0x19c96e,_0x4fc12f['Qlrnh'],_0x49ad05,null,{'module':_0x1cd4b3,'endpoint':_0x13b304,'keyField':_0x204dc8['keyField'],'tableName':_0x204dc8[_0xa589b7(0x173)],'correlationId':_0x204dc8['correlationId']});}['getStatus'](){const _0x42d650=a0_0x47ffee,_0x16fca8=this['getConfig']();return{'enabled':_0x16fca8['enabled'],'connected':this[_0x42d650(0x159)],'brokers':_0x16fca8['brokers'],'clientId':_0x16fca8['clientId'],'topicPattern':_0x16fca8[_0x42d650(0x160)]};}async['close'](){const _0x29aaa1=a0_0x47ffee,_0x4d64f2={'odFlU':'[Kafka]\x20Producer\x20disconnected\x20gracefully'};if(this['producer']&&this['isConnected'])try{await this['producer'][_0x29aaa1(0x129)](),this['isConnected']=![],console['log'](_0x4d64f2['odFlU']);}catch(_0x326fc7){console[_0x29aaa1(0x154)]('[Kafka]\x20Error\x20disconnecting:\x20'+_0x326fc7[_0x29aaa1(0x16d)]);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}module[a0_0x47ffee(0x168)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
1
|
+
function a0_0x5be4(){const _0x37be9c=['Aw5PDgLHBgL6zq','zxjYB3i','ru5usvrzx1vqrefuruq','zgvMyxvSDa','CMv0CNLbDhrLBxb0CW','DgvUyw50swq','s0fgs0fFte9hx0XfvKvm','Bw9KDwXL','Dw5RBM93BG','nZm0mZmXnM5ACKTbvW','yNvPBgruB3bPy05HBwu','s0fgs0fFuKvrvuvtvf9usu1ft1vu','tgvNywn5ugfYDgL0Aw9Uzxi','qK5psey','ChvIBgLZAev2zw50','mtmYuhvvCfzZ','A2v5rMLLBgq','mte4mJCWDhD0wNne','ChjVzhvJzxi','s0fgs0fFru5bqKXfra','mJjfzfzQChm','ru5usvrzx0nsrufuruq','yMfZzu9MzNnLDa','w0THzMTHxsblywzRysbWCM9KDwnLCIbPCYbKAxnHyMXLzcbPBIbJB25MAwD1CMf0Aw9U','lxbYB2r1y2vY','zgvSzxrLza','tgXPsNC','CgfKu3rHCNq','BwvZC2fNzq','AxndB25Uzwn0zwq','EuL6rNK','CMvZDgzVCMDLlq','uKvtvezpuKDflq','yNjVA2vYCW','Dg9WAwnqyxr0zxjU','y29UBMvJDgLVBLrPBwvVDxq','s0fgs0fFu0fttf9nruniqu5ju00','nZK2mZztvxPRrfu','CMv0CNLezwXHEq','y2XVC2u','mZaWma','mtGWmdi2ngLbvhnczW','s0fgs0fFq0Xjru5ux0Le','A2fMA2e','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','Bg9N','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','y3jLyxrLza','mJuWmda','y29YCI0','DgfIBgvoyw1L','nda5nZC2nJbksLHrEKC','ChvIBgLZAfvWzgf0zq','zxHWB3j0CW','mtaWmtyZq3bosvzN','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','z2v0rNvSBfLLyxi','s0fgs0fFve9qsunFuefuvevstG','yNvPBgrfDMvUDe1LC3nHz2u','w0THzMTHxsbdB25Uzwn0Aw9UigzHAwXLzdOG','ms4W','s0fgs0fFu0fttf9qqvntv09sra','y29YCMvSyxrPB25jza','zw5HyMXLza','Dhj1zq','y3jLyxrLzej5','zKfuDNy','Dg9mB3DLCKnHC2u','s0fgs0fFuKvuuLLFqvruru1qvfm','z2v0rgf0zq','z2v0u3rHDhvZ','su5gtW','ohfHDhbrqG','C2vUza','AxnjBML0AwfSAxPPBMC','s0fgs0fFq09otKvdveLptL9usu1ft1vu','DxbKyxrLza','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','Dg9vChbLCKnHC2u','v0fstG','s0fgs0fFqLjps0vsuW','ChjVzhvJzxiUzgLZy29UBMvJDa','zw52','E21VzhvSzx0','y29UBMvJDgLVBLbYB21PC2u','tK9useLorW','z2v0q29UzMLN','z2v0twLUDxrLCW','mZi3mZq1m1DQCNz2BG','E2fJDgLVBN0'];a0_0x5be4=function(){return _0x37be9c;};return a0_0x5be4();}const a0_0x127050=a0_0x27ac;(function(_0x2e9619,_0x1e12e9){const _0x185f6e=a0_0x27ac,_0x21f30c=_0x2e9619();while(!![]){try{const _0x532d5b=parseInt(_0x185f6e(0x84))/0x1*(-parseInt(_0x185f6e(0xce))/0x2)+-parseInt(_0x185f6e(0xb8))/0x3+parseInt(_0x185f6e(0xc9))/0x4*(-parseInt(_0x185f6e(0xcb))/0x5)+parseInt(_0x185f6e(0x88))/0x6+-parseInt(_0x185f6e(0x95))/0x7*(-parseInt(_0x185f6e(0xa8))/0x8)+-parseInt(_0x185f6e(0xc3))/0x9+parseInt(_0x185f6e(0x92))/0xa;if(_0x532d5b===_0x1e12e9)break;else _0x21f30c['push'](_0x21f30c['shift']());}catch(_0x2028ee){_0x21f30c['push'](_0x21f30c['shift']());}}}(a0_0x5be4,0xcf252));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require('uuid');function a0_0x27ac(_0x2777ee,_0x3e27ad){_0x2777ee=_0x2777ee-0x7f;const _0x5be450=a0_0x5be4();let _0x27ac62=_0x5be450[_0x2777ee];if(a0_0x27ac['azigFq']===undefined){var _0x5e661b=function(_0x29ce4c){const _0x484637='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2d654e='',_0x5db6f5='';for(let _0x5e022a=0x0,_0x581d34,_0x6d4d5a,_0x2e58a7=0x0;_0x6d4d5a=_0x29ce4c['charAt'](_0x2e58a7++);~_0x6d4d5a&&(_0x581d34=_0x5e022a%0x4?_0x581d34*0x40+_0x6d4d5a:_0x6d4d5a,_0x5e022a++%0x4)?_0x2d654e+=String['fromCharCode'](0xff&_0x581d34>>(-0x2*_0x5e022a&0x6)):0x0){_0x6d4d5a=_0x484637['indexOf'](_0x6d4d5a);}for(let _0x59e8b3=0x0,_0x1dfe62=_0x2d654e['length'];_0x59e8b3<_0x1dfe62;_0x59e8b3++){_0x5db6f5+='%'+('00'+_0x2d654e['charCodeAt'](_0x59e8b3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5db6f5);};a0_0x27ac['pzYZQh']=_0x5e661b,a0_0x27ac['zEHzBg']={},a0_0x27ac['azigFq']=!![];}const _0x4c2e64=_0x5be450[0x0],_0x1f6004=_0x2777ee+_0x4c2e64,_0x301c0a=a0_0x27ac['zEHzBg'][_0x1f6004];return!_0x301c0a?(_0x27ac62=a0_0x27ac['pzYZQh'](_0x27ac62),a0_0x27ac['zEHzBg'][_0x1f6004]=_0x27ac62):_0x27ac62=_0x301c0a,_0x27ac62;}class KafkaService{constructor(){const _0xea0911=a0_0x27ac,_0x3da2d2='1|0|2|3|4'['split']('|');let _0x13d3bf=0x0;while(!![]){switch(_0x3da2d2[_0x13d3bf++]){case'0':this['producer']=null;continue;case'1':this['kafka']=null;continue;case'2':this['isConnected']=![];continue;case'3':this[_0xea0911(0xaa)]=![];continue;case'4':this['connectionPromise']=null;continue;}break;}}[a0_0x127050(0xb6)](){const _0x45c884=a0_0x127050,_0xa1c267={'PXMAi':function(_0x19d55f,_0x48e743){return _0x19d55f===_0x48e743;},'xvPus':_0x45c884(0xbd),'fATvv':function(_0x5903a9,_0xa2a989){return _0x5903a9(_0xa2a989);},'LliJw':'1000'};return{'enabled':_0xa1c267['PXMAi'](process['env'][_0x45c884(0xcd)],_0x45c884(0xa0)),'brokers':(process['env'][_0x45c884(0xb0)]||'localhost:9092')['split'](','),'clientId':process['env'][_0x45c884(0x89)]||'restforge-'+(process['env'][_0x45c884(0xad)]||_0xa1c267['xvPus'])+_0x45c884(0xd2),'connectionTimeout':parseInt(process[_0x45c884(0xb2)][_0x45c884(0xab)]||_0x45c884(0x87)),'requestTimeout':_0xa1c267['fATvv'](parseInt,process[_0x45c884(0xb2)][_0x45c884(0xc5)]||_0x45c884(0x8f)),'topicPattern':process[_0x45c884(0xb2)][_0x45c884(0x99)]||_0x45c884(0x8b),'tenantId':process['env']['KAFKA_TENANT_ID']||_0x45c884(0xbd),'retryAttempts':_0xa1c267[_0x45c884(0xa2)](parseInt,process[_0x45c884(0xb2)][_0x45c884(0xa4)]||'3'),'retryDelay':parseInt(process[_0x45c884(0xb2)]['KAFKA_RETRY_DELAY']||_0xa1c267[_0x45c884(0xd4)]),'logLevel':process['env'][_0x45c884(0xc0)]||'warn'};}['getLogLevel'](_0x4a4733){const _0x1d0294=a0_0x127050,_0x5d5bde={'nothing':logLevel[_0x1d0294(0xb5)],'error':logLevel['ERROR'],'warn':logLevel[_0x1d0294(0xaf)],'info':logLevel[_0x1d0294(0xa7)],'debug':logLevel['DEBUG']};return _0x5d5bde[_0x4a4733[_0x1d0294(0xa3)]()]||logLevel['WARN'];}async[a0_0x127050(0xba)](){const _0x22582b=a0_0x127050,_0x486b2a={'dZkGf':'true','AdlAm':_0x22582b(0xb1)},_0x32e2be=this['getConfig']();if(!_0x32e2be['enabled'])return console['log'](_0x22582b(0xd1)),![];if(this['isConnected'])return!![];if(this[_0x22582b(0xaa)]&&this[_0x22582b(0xb4)])return this[_0x22582b(0xb4)];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x4c4a79=>{const _0x2e941a=_0x22582b,_0xa73be0={'yIzFy':'[Kafka]\x20Producer\x20disconnected'};try{let _0x5d8f3e=undefined;process[_0x2e941a(0xb2)]['KAFKA_SSL']===_0x486b2a['dZkGf']&&(_0x5d8f3e=!![]);let _0x5bf6c1=undefined;process['env'][_0x2e941a(0x83)]&&(_0x5bf6c1={'mechanism':process[_0x2e941a(0xb2)][_0x2e941a(0x83)],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process['env'][_0x2e941a(0x9d)]||''}),this['kafka']=new Kafka({'clientId':_0x32e2be['clientId'],'brokers':_0x32e2be['brokers'],'connectionTimeout':_0x32e2be[_0x2e941a(0x82)],'requestTimeout':_0x32e2be['requestTimeout'],'logLevel':this['getLogLevel'](_0x32e2be['logLevel']),'ssl':_0x5d8f3e,'sasl':_0x5bf6c1,'retry':{'initialRetryTime':_0x32e2be[_0x2e941a(0x85)],'retries':_0x32e2be[_0x2e941a(0xbe)]}}),this[_0x2e941a(0xcc)]=this[_0x2e941a(0x8a)]['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x2e941a(0xc6)]}),await this[_0x2e941a(0xcc)]['connect'](),this['isConnected']=!![],console[_0x2e941a(0x8c)]('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x32e2be[_0x2e941a(0x80)]['join'](',\x20')),this[_0x2e941a(0xcc)]['on'](_0x486b2a['AdlAm'],()=>{const _0x11f460=_0x2e941a;console[_0x11f460(0x8c)](_0xa73be0[_0x11f460(0xd8)]),this['isConnected']=![];}),_0x4c4a79(!![]);}catch(_0x254d0c){console[_0x2e941a(0xbb)](_0x2e941a(0x9b)+_0x254d0c[_0x2e941a(0xd6)]),this['isConnected']=![],_0x4c4a79(![]);}finally{this['isInitializing']=![];}}),this[_0x22582b(0xb4)];}['formatDateTime'](_0x43cef6){const _0x503f9f=a0_0x127050,_0x2a1ada={'iIZjI':function(_0x291883,_0x3950cd){return _0x291883+_0x3950cd;},'WuPDz':function(_0x89bd75,_0xd38d22){return _0x89bd75(_0xd38d22);}},_0xae53aa=_0x43cef6||new Date(),_0xb7b536=_0xae53aa[_0x503f9f(0x98)](),_0x18bf01=String(_0x2a1ada['iIZjI'](_0xae53aa['getMonth'](),0x1))['padStart'](0x2,'0'),_0x186e74=_0x2a1ada['WuPDz'](String,_0xae53aa[_0x503f9f(0xa5)]())[_0x503f9f(0xd5)](0x2,'0'),_0x65e5c0=String(_0xae53aa['getHours']())['padStart'](0x2,'0'),_0x509d85=String(_0xae53aa[_0x503f9f(0xb7)]())['padStart'](0x2,'0'),_0x34d54f=String(_0xae53aa['getSeconds']())['padStart'](0x2,'0');return _0xb7b536+'-'+_0x18bf01+'-'+_0x186e74+'\x20'+_0x65e5c0+':'+_0x509d85+':'+_0x34d54f;}[a0_0x127050(0xc4)](_0x1fe4af,_0x4aac5f,_0x3bd146,_0x3876b7=null){const _0x22ad6c=a0_0x127050,_0x5b2497={'GpacL':'{endpoint}'};if(_0x3876b7)return _0x3876b7;const _0x38576f=this['getConfig']()['topicPattern'];return _0x38576f['replace'](_0x22ad6c(0xb3),_0x1fe4af)['replace'](_0x5b2497['GpacL'],_0x4aac5f)['replace'](_0x22ad6c(0xb9),_0x3bd146);}[a0_0x127050(0x9a)](_0x1f7c82,_0xa14804,_0x2bc3e7,_0x416b2b={}){const _0x347ced=a0_0x127050,_0xfa6f41={'BNOHF':function(_0x4f9fde){return _0x4f9fde();},'bhpgu':'unknown','Zwbpx':'SYSTEM'},_0x4fd721=new Date(),_0x1d9955=this['formatDateTime'](_0x4fd721),_0x4e8db1=_0x416b2b[_0x347ced(0x9e)]||_0x347ced(0x90)+_0xfa6f41[_0x347ced(0xc7)](uuidv7);return{'eventId':'evt-'+uuidv7(),'eventType':_0x1f7c82,'eventTime':_0x1d9955,'eventVersion':_0x347ced(0x9c),'source':_0x347ced(0xd9)+(_0x416b2b['module']||_0xfa6f41['bhpgu']),'correlationId':_0x4e8db1,'newData':_0x2bc3e7,'oldData':_0xa14804,'metadata':{'createdBy':_0x416b2b[_0x347ced(0xa1)]||_0xfa6f41['Zwbpx'],'createdAt':_0x1d9955,'systemId':_0x347ced(0x7f)+(_0x416b2b[_0x347ced(0xc1)]||_0x347ced(0xc2))[_0x347ced(0xae)](),'tenantId':this['getConfig']()[_0x347ced(0xbf)],'endpoint':_0x416b2b['endpoint']||null,'tableName':_0x416b2b['tableName']||null}};}async['publishEvent'](_0x43a834,_0x531390,_0x39a445,_0x19d5c5,_0x65d398={}){const _0x8a8f4d=a0_0x127050,_0x1376b9={'CqSMw':'Kafka\x20producer\x20is\x20disabled'},_0x332b5b=this['getConfig']();if(!_0x332b5b[_0x8a8f4d(0x9f)])return{'success':![],'reason':_0x1376b9['CqSMw'],'published':![]};if(!this[_0x8a8f4d(0xd7)]){const _0x5c569f=await this['initialize']();if(!_0x5c569f)return{'success':![],'reason':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','published':![]};}try{const _0x4adf49=this[_0x8a8f4d(0x9a)](_0x531390,_0x39a445,_0x19d5c5,_0x65d398),_0x1f1887=_0x65d398[_0x8a8f4d(0xca)]||'id',_0x16e7f7=_0x19d5c5?.[_0x1f1887]||_0x39a445?.[_0x1f1887]||uuidv7(),_0x40b243=await this['producer'][_0x8a8f4d(0xa9)]({'topic':_0x43a834,'messages':[{'key':String(_0x16e7f7),'value':JSON['stringify'](_0x4adf49),'headers':{'event-type':_0x531390,'correlation-id':_0x4adf49[_0x8a8f4d(0x9e)],'source':_0x4adf49['source']}}]});return console['log'](_0x8a8f4d(0x8d)+_0x43a834+':\x20'+_0x531390+'\x20(key:\x20'+_0x16e7f7+')'),{'success':!![],'correlationId':_0x4adf49[_0x8a8f4d(0x9e)],'topic':_0x43a834,'partition':_0x40b243[0x0]?.['partition'],'offset':_0x40b243[0x0]?.[_0x8a8f4d(0xd0)],'published':!![]};}catch(_0x1dcd2c){return console[_0x8a8f4d(0xbb)]('[Kafka]\x20Publish\x20error\x20to\x20'+_0x43a834+':\x20'+_0x1dcd2c[_0x8a8f4d(0xd6)]),{'success':![],'error':_0x1dcd2c['message'],'published':![]};}}async['publishInsert'](_0x22ae29,_0x3dbc28,_0x51f6dd,_0x575454={}){const _0x5da4d4=a0_0x127050,_0x45f1d6={'HgmkZ':_0x5da4d4(0xcf)},_0x52c63f=this[_0x5da4d4(0xc4)](_0x22ae29,_0x3dbc28,_0x5da4d4(0x8e),_0x575454['topic']);return this['publishEvent'](_0x52c63f,_0x45f1d6['HgmkZ'],null,_0x51f6dd,{'module':_0x22ae29,'endpoint':_0x3dbc28,'keyField':_0x575454['keyField'],'tableName':_0x575454[_0x5da4d4(0x91)],'correlationId':_0x575454[_0x5da4d4(0x9e)]});}async[a0_0x127050(0x93)](_0x28a96e,_0xe2a130,_0xa51e1d,_0x195b71,_0x663aa4={}){const _0x3f5e46=a0_0x127050,_0x1d7e87=this[_0x3f5e46(0xc4)](_0x28a96e,_0xe2a130,_0x3f5e46(0xac),_0x663aa4['topic']);return this[_0x3f5e46(0xc8)](_0x1d7e87,_0x3f5e46(0xbc),_0xa51e1d,_0x195b71,{'module':_0x28a96e,'endpoint':_0xe2a130,'keyField':_0x663aa4['keyField'],'tableName':_0x663aa4['tableName'],'correlationId':_0x663aa4['correlationId']});}async['publishDelete'](_0x5bcb68,_0x157105,_0x1b394b,_0x528189={}){const _0x53186b=a0_0x127050,_0x3691c4=this[_0x53186b(0xc4)](_0x5bcb68,_0x157105,_0x53186b(0xd3),_0x528189['topic']);return this[_0x53186b(0xc8)](_0x3691c4,'ENTITY_DELETED',_0x1b394b,null,{'module':_0x5bcb68,'endpoint':_0x157105,'keyField':_0x528189['keyField'],'tableName':_0x528189['tableName'],'correlationId':_0x528189['correlationId']});}[a0_0x127050(0xa6)](){const _0x481a7b=a0_0x127050,_0x10e09c=this['getConfig']();return{'enabled':_0x10e09c[_0x481a7b(0x9f)],'connected':this['isConnected'],'brokers':_0x10e09c['brokers'],'clientId':_0x10e09c['clientId'],'topicPattern':_0x10e09c[_0x481a7b(0x81)]};}async[a0_0x127050(0x86)](){const _0x5001b2=a0_0x127050,_0x3f4e87={'tPtfO':_0x5001b2(0x96)};if(this['producer']&&this['isConnected'])try{await this['producer']['disconnect'](),this[_0x5001b2(0xd7)]=![],console[_0x5001b2(0x8c)](_0x3f4e87['tPtfO']);}catch(_0x1435e0){console['error'](_0x5001b2(0x97)+_0x1435e0[_0x5001b2(0xd6)]);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){const _0x4ab26a=a0_0x127050;instance&&(instance[_0x4ab26a(0x86)](),instance=null);}module[a0_0x127050(0x94)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x3a1db2=a0_0x2a99;(function(_0x56bcd6,_0x3abe69){const _0x5d44fb=a0_0x2a99,_0x3b3dfd=_0x56bcd6();while(!![]){try{const _0x12e2fa=parseInt(_0x5d44fb(0x1a9))/0x1+-parseInt(_0x5d44fb(0x16c))/0x2+parseInt(_0x5d44fb(0x17c))/0x3+-parseInt(_0x5d44fb(0x173))/0x4+-parseInt(_0x5d44fb(0x1a3))/0x5+parseInt(_0x5d44fb(0x183))/0x6+-parseInt(_0x5d44fb(0x162))/0x7*(parseInt(_0x5d44fb(0x1a6))/0x8);if(_0x12e2fa===_0x3abe69)break;else _0x3b3dfd['push'](_0x3b3dfd['shift']());}catch(_0x2b6723){_0x3b3dfd['push'](_0x3b3dfd['shift']());}}}(a0_0x5ebf,0x4d84b));const dotenv=require(a0_0x3a1db2(0x169)),path=require('path'),fs=require('fs'),{v7:uuidv7}=require('uuid');dotenv[a0_0x3a1db2(0x180)]();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,'../../js/messagehub.js');if(fs[a0_0x3a1db2(0x192)](messagehubPath))MessageHub=require(messagehubPath),console['log'](a0_0x3a1db2(0x186)+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0xef0948){console['error']('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0xef0948['message']);throw a0_0xef0948;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x3e6363){const _0x27d253=a0_0x3a1db2,_0x51edb2=new Date()['toISOString']();console[_0x27d253(0x190)]('['+_0x51edb2+']\x20'+_0x3e6363);}async function initMessageHub(){const _0x2ed6e5=a0_0x3a1db2,_0x43b19f={'SBZwa':function(_0x3c5735,_0x4a8ba1){return _0x3c5735===_0x4a8ba1;},'bzHKq':function(_0x25b4a6,_0x363fd8){return _0x25b4a6(_0x363fd8);},'CzbWw':'disconnected','tdUrr':function(_0x471a65,_0x193d0b){return _0x471a65===_0x193d0b;},'vztou':_0x2ed6e5(0x168),'SYmod':_0x2ed6e5(0x1a7),'cNlgy':'message-sent','doEeG':'message-received','QCqbS':_0x2ed6e5(0x1a0),'sYQen':function(_0x5ec019,_0x1482ec){return _0x5ec019(_0x1482ec);},'uTHkh':function(_0x270758,_0x504460){return _0x270758&&_0x504460;},'vwjbs':function(_0xda200c,_0x389f3d){return _0xda200c(_0x389f3d);},'uobSi':_0x2ed6e5(0x198),'DFcaL':_0x2ed6e5(0x152),'qPPAW':function(_0x5c1447,_0x78810f){return _0x5c1447(_0x78810f);},'AOQLm':'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======','TYUBv':_0x2ed6e5(0x19d),'MDNdq':function(_0x353b53,_0x4dfe2b){return _0x353b53===_0x4dfe2b;},'lsfit':_0x2ed6e5(0x199),'dLMdQ':'websocket','VNLUA':'localhost','yYTsN':function(_0x1b1844,_0x3781a6){return _0x1b1844(_0x3781a6);},'UYtBS':function(_0x191e23,_0x35e49c){return _0x191e23(_0x35e49c);},'ZMbvK':function(_0x57a7c9,_0x4a639d){return _0x57a7c9(_0x4a639d);},'OIFqB':'Error\x20inisialisasi\x20MessageHub:','dpEaH':function(_0x366ea7,_0x5138da){return _0x366ea7&&_0x5138da;}};if(_0x43b19f[_0x2ed6e5(0x1ab)](messagehub,isConnected))return log(_0x2ed6e5(0x182)),!![];if(connectionPromise)return log('Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'),connectionPromise;return connectionPromise=new Promise(async(_0x444792,_0x536f15)=>{const _0x11fa45=_0x2ed6e5;try{_0x43b19f['qPPAW'](log,_0x43b19f['AOQLm']),log(_0x11fa45(0x1a8)+new Date()[_0x11fa45(0x19e)]()),log(_0x43b19f['TYUBv']);const _0x19756b={'publishKey':process[_0x11fa45(0x1a2)]['MSHUB_PUBLISH_KEY'],'subscribeKey':process[_0x11fa45(0x1a2)]['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x11fa45(0x1a2)][_0x11fa45(0x187)]||_0x11fa45(0x151)+(process['env'][_0x11fa45(0x176)]||_0x11fa45(0x19b))+'-'+process[_0x11fa45(0x175)],'communicationType':process[_0x11fa45(0x1a2)][_0x11fa45(0x17a)]||_0x11fa45(0x18c),'autoAcknowledge':_0x43b19f['SBZwa'](process[_0x11fa45(0x1a2)][_0x11fa45(0x18a)],_0x11fa45(0x199)),'acknowledgeMessages':_0x43b19f[_0x11fa45(0x16b)](process[_0x11fa45(0x1a2)][_0x11fa45(0x195)],_0x43b19f['lsfit']),'platform':{'type':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x43b19f[_0x11fa45(0x191)],'host':process['env'][_0x11fa45(0x178)]||_0x43b19f[_0x11fa45(0x18e)],'api_port':_0x43b19f[_0x11fa45(0x155)](parseInt,process['env'][_0x11fa45(0x197)]||0xdf8),'service_port':_0x43b19f['yYTsN'](parseInt,process['env']['MSHUB_SERVICE_PORT']||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x19756b),_0x43b19f[_0x11fa45(0x150)](log,_0x11fa45(0x174)),log(_0x11fa45(0x15e)+messagehub[_0x11fa45(0x188)]),log('Publish\x20Key:\x20'+messagehub[_0x11fa45(0x1aa)]),log('Subscribe\x20Key:\x20'+messagehub['subscribeKey']),_0x43b19f['UYtBS'](log,'Tipe\x20Komunikasi:\x20'+messagehub['communicationType']),_0x43b19f[_0x11fa45(0x15f)](log,'Konfigurasi\x20Platform:\x20'+JSON[_0x11fa45(0x18d)](messagehub[_0x11fa45(0x158)])),log(_0x11fa45(0x14f)),messagehub[_0x11fa45(0x16d)]({'status':function(_0x46b2ac){const _0x871498=_0x11fa45;log(_0x871498(0x15d)+_0x46b2ac[_0x871498(0x172)]);if(_0x43b19f[_0x871498(0x156)](_0x46b2ac[_0x871498(0x172)],_0x871498(0x17d)))_0x43b19f[_0x871498(0x155)](log,_0x871498(0x15a)),isConnected=!![],timeoutHandler&&(_0x43b19f[_0x871498(0x155)](clearTimeout,timeoutHandler),timeoutHandler=null),_0x43b19f['bzHKq'](_0x444792,!![]);else{if(_0x46b2ac['category']===_0x43b19f[_0x871498(0x166)]){const _0x1f539b=_0x43b19f[_0x871498(0x17b)](_0x46b2ac[_0x871498(0x17f)],!![]);!_0x1f539b&&(_0x43b19f['bzHKq'](log,'Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0x46b2ac['reason']||_0x871498(0x168))),isConnected=![],connectionPromise&&(_0x43b19f['bzHKq'](_0x536f15,new Error('Koneksi\x20terputus:\x20'+(_0x46b2ac['reason']||_0x43b19f[_0x871498(0x189)]))),connectionPromise=null));}else{if(_0x43b19f[_0x871498(0x17b)](_0x46b2ac[_0x871498(0x172)],'error')){let _0x4f3744=_0x46b2ac[_0x871498(0x179)]||_0x46b2ac['error']||_0x43b19f['SYmod'];log('⚠️\x20Error:\x20'+_0x4f3744),isConnected=![],connectionPromise&&(_0x536f15(new Error(_0x4f3744)),connectionPromise=null);}else{if(_0x46b2ac[_0x871498(0x172)]===_0x43b19f[_0x871498(0x15c)])log('📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0x46b2ac[_0x871498(0x1a4)]);else{if(_0x43b19f[_0x871498(0x156)](_0x46b2ac[_0x871498(0x172)],_0x43b19f[_0x871498(0x16f)])){const _0x2b4417=_0x46b2ac[_0x871498(0x193)]?.['name']||_0x43b19f[_0x871498(0x184)],_0x4e62f8=_0x46b2ac[_0x871498(0x193)]?.['id']||_0x46b2ac[_0x871498(0x16e)],_0x229766=new Date(_0x46b2ac[_0x871498(0x193)]?.[_0x871498(0x18f)]||_0x46b2ac['receivedAt']||new Date())['toLocaleTimeString']();_0x43b19f[_0x871498(0x150)](log,'📩\x20Konfirmasi:\x20Pesan\x20'+_0x46b2ac['requestId']+'\x20diterima\x20oleh\x20'+_0x2b4417+'\x20('+_0x4e62f8+_0x871498(0x1a5)+_0x229766+'.\x20Total\x20konfirmasi:\x20'+(_0x46b2ac['confirmationCount']||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x19932e=_0x11fa45;_0x43b19f[_0x19932e(0x18b)](!isConnected,connectionPromise)&&(_0x43b19f[_0x19932e(0x15f)](log,_0x43b19f['uobSi']),_0x536f15(new Error(_0x43b19f['DFcaL'])),connectionPromise=null);},0x2710);}catch(_0x829c0e){_0x43b19f['ZMbvK'](log,'⚠️\x20Error\x20inisialisasi\x20MessageHub:\x20'+_0x829c0e[_0x11fa45(0x1a1)]),console[_0x11fa45(0x164)](_0x43b19f[_0x11fa45(0x167)],_0x829c0e),connectionPromise=null,_0x43b19f['qPPAW'](_0x536f15,_0x829c0e);}}),connectionPromise;}function a0_0x2a99(_0x352026,_0x5865fd){_0x352026=_0x352026-0x14f;const _0x5ebfab=a0_0x5ebf();let _0x2a99d8=_0x5ebfab[_0x352026];if(a0_0x2a99['yRIQLH']===undefined){var _0x589f4d=function(_0x5e54ae){const _0x53068f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1bf598='',_0x404187='';for(let _0x196722=0x0,_0x14b785,_0x45b946,_0x30f2bf=0x0;_0x45b946=_0x5e54ae['charAt'](_0x30f2bf++);~_0x45b946&&(_0x14b785=_0x196722%0x4?_0x14b785*0x40+_0x45b946:_0x45b946,_0x196722++%0x4)?_0x1bf598+=String['fromCharCode'](0xff&_0x14b785>>(-0x2*_0x196722&0x6)):0x0){_0x45b946=_0x53068f['indexOf'](_0x45b946);}for(let _0x321488=0x0,_0xd914ba=_0x1bf598['length'];_0x321488<_0xd914ba;_0x321488++){_0x404187+='%'+('00'+_0x1bf598['charCodeAt'](_0x321488)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x404187);};a0_0x2a99['cTmQbV']=_0x589f4d,a0_0x2a99['CMnoEk']={},a0_0x2a99['yRIQLH']=!![];}const _0x51b4fb=_0x5ebfab[0x0],_0xbfca42=_0x352026+_0x51b4fb,_0x567b5e=a0_0x2a99['CMnoEk'][_0xbfca42];return!_0x567b5e?(_0x2a99d8=a0_0x2a99['cTmQbV'](_0x2a99d8),a0_0x2a99['CMnoEk'][_0xbfca42]=_0x2a99d8):_0x2a99d8=_0x567b5e,_0x2a99d8;}async function publishMessage(_0x591536,_0x3ab5aa,_0x50b71b,_0x4bebae={}){const _0x442f94=a0_0x3a1db2,_0x35b78a={'CqNXr':function(_0x63eecb){return _0x63eecb();},'nrdie':'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======','wBJCk':function(_0x3a23ac,_0x45c45a){return _0x3a23ac(_0x45c45a);},'NXtrB':_0x442f94(0x194),'ggrWi':function(_0x394f1f,_0x174362){return _0x394f1f!==_0x174362;},'GWZhr':_0x442f94(0x19f),'wgdWf':_0x442f94(0x160),'sCSmB':function(_0x2328e2,_0x4c88f8){return _0x2328e2(_0x4c88f8);}};try{!isConnected&&await _0x35b78a[_0x442f94(0x157)](initMessageHub);const _0x32fbea=messagehub[_0x442f94(0x177)](_0x591536);log(_0x35b78a['nrdie']),_0x35b78a[_0x442f94(0x185)](log,_0x442f94(0x17e)+_0x32fbea['topic']),log('Message\x20Type:\x20'+_0x3ab5aa),log(_0x35b78a['NXtrB']);const _0x5c336c={'requireAck':_0x4bebae['requireAck']!==undefined?_0x4bebae[_0x442f94(0x170)]:![],'clearCache':_0x35b78a[_0x442f94(0x163)](_0x4bebae[_0x442f94(0x196)],undefined)?_0x4bebae[_0x442f94(0x196)]:!![],'senderId':messagehub['socket']?messagehub[_0x442f94(0x15b)]['id']:_0x442f94(0x159)};log(_0x35b78a['GWZhr']);const _0x433727={'type':_0x3ab5aa,'content':_0x50b71b},_0x3c74d1=await _0x32fbea['publish'](_0x433727,_0x5c336c);return log('Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x591536),{'success':!![],'requestId':_0x3c74d1['requestId'],'topic':_0x591536,'message':_0x35b78a[_0x442f94(0x16a)]};}catch(_0x48bfed){return _0x35b78a['sCSmB'](log,'⚠️\x20Error\x20publishing\x20message:\x20'+_0x48bfed['message']),{'success':![],'error':_0x48bfed[_0x442f94(0x1a1)],'topic':_0x591536,'message':'Failed\x20to\x20send\x20message'};}}async function closeConnection(){const _0x597ee8=a0_0x3a1db2,_0x2aaad4={'ofMMb':function(_0x10e442,_0x22166d){return _0x10e442(_0x22166d);},'mwQea':function(_0x4dd095,_0x46cfe9){return _0x4dd095&&_0x46cfe9;},'kKSzn':function(_0x157fc0,_0x5869ea){return _0x157fc0===_0x5869ea;},'LhnWQ':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()','GLicj':function(_0x312518,_0x3c0d20){return _0x312518===_0x3c0d20;},'PfqZb':_0x597ee8(0x19c)};timeoutHandler&&(_0x2aaad4['ofMMb'](clearTimeout,timeoutHandler),timeoutHandler=null);if(_0x2aaad4['mwQea'](isConnected,messagehub))try{if(_0x2aaad4['kKSzn'](typeof messagehub['disconnect'],_0x597ee8(0x153)))await messagehub['disconnect'](),log(_0x2aaad4[_0x597ee8(0x165)]);else{if(_0x2aaad4['GLicj'](typeof messagehub[_0x597ee8(0x154)],_0x597ee8(0x153)))await messagehub['close'](),log(_0x597ee8(0x181));else messagehub[_0x597ee8(0x15b)]&&_0x2aaad4['kKSzn'](typeof messagehub[_0x597ee8(0x15b)]['disconnect'],_0x597ee8(0x153))?(messagehub[_0x597ee8(0x15b)][_0x597ee8(0x161)](),_0x2aaad4[_0x597ee8(0x171)](log,_0x2aaad4['PfqZb'])):log(_0x597ee8(0x19a));}isConnected=![],connectionPromise=null;}catch(_0x2bdfa5){log('Error\x20saat\x20menutup\x20koneksi:\x20'+_0x2bdfa5['message']);}}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};function a0_0x5ebf(){const _0x31e69c=['mZm4mJCYmKzKsK1PAW','uunXyLm','D0jkq2S','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','tvnivujFvvnfuL9jra','DxnLCKLK','DNP0B3u','tvnivujFqvvut19bq0Tot1Dmrurhrq','DvriA2G','yNjVywrJyxn0','C3rYAw5NAwz5','vK5mvue','CMvJzwL2zwrbDa','Bg9N','zeXnzfe','zxHPC3rZu3LUyW','CMvJzwL2zxjjBMzV','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','y2XLyxjdywnOzq','tvnivujFqvbjx1bpuLq','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','Dhj1zq','vgLKywSGzgfWyxqGBwvUzw11A2fUig1LDg9Kzsb1BNr1AYbTzw51DhvWigTVBMvRC2KGtwvZC2fNzuH1yG','zgvMyxvSDa','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','tw9KztOGs29UzwTZAsboEwf0yq','Dg9mB2nHBgvtDhjPBMC','twvUz2LYAw0GCgvZyw4GA2uGC2vYDMvYlI4U','vw5RBM93BG','BwvZC2fNzq','zw52','mJKYnJK3mePAr21RqW','CMvXDwvZDeLK','ksbWywrHia','mJqZotC2whnUrg5q','vw5RBM93BIbLCNjVCG','v2fRDhuGsw5PC2LHBgLZyxnPoIa','ntiXndi2wK5JqKn5','ChvIBgLZAeTLEq','zhbfyuG','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','C1Lrzw4','CMvZDgzVCMDLlq','q29UBMvJDgLVBIb0Aw1LB3v0','zNvUy3rPB24','y2XVC2u','yNPis3e','u0jAD2e','q3fowhi','CgXHDgzVCM1dB25MAwC','CMvZDgzVCMDL','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','C29JA2v0','y05Sz3K','u3rHDhvZieXPC3rLBMvYoIa','q2XPzw50ieLel1vZzxjjrdOG','DNDQyNm','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','zgLZy29UBMvJDa','ndjbCeH6v20','z2DYv2K','zxjYB3i','tgHUv1e','q3PIv3C','t0LgCui','vgLKywSGzgLRzxrHAhvP','zg90zw52','D2DKv2y','turozhe','mZKZotKYA1f4tMfl','ywrKtgLZDgvUzxi','CMvJzwL2zxjjza','zg9fzuC','CMvXDwLYzufJAW','B2zntwi','y2f0zwDVCNK','odyYndi0y2rsEhfH','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','CgLK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','y2HHBM5LBa','tvnivujFse9tva','zxjYB3jezxrHAwW','tvnivujFq09ntvvosunbveLptL9uwvbf','DgrvCNi','mtiZotG0mefUCejnqG','y29UBMvJDgvK','q2HHBM5LBcbuyxjNzxq6ia','AxnfCNjVCLjLBgf0zwq','y29UzMLN','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge'];a0_0x5ebf=function(){return _0x31e69c;};return a0_0x5ebf();}
|
|
1
|
+
const a0_0x3e97b9=a0_0x4186;(function(_0x1faa38,_0xcc590d){const _0x19f2eb=a0_0x4186,_0x34cff9=_0x1faa38();while(!![]){try{const _0x519e65=parseInt(_0x19f2eb(0x9d))/0x1*(parseInt(_0x19f2eb(0xa4))/0x2)+-parseInt(_0x19f2eb(0xec))/0x3*(parseInt(_0x19f2eb(0xe5))/0x4)+parseInt(_0x19f2eb(0xe7))/0x5+parseInt(_0x19f2eb(0xd2))/0x6*(-parseInt(_0x19f2eb(0xc9))/0x7)+-parseInt(_0x19f2eb(0xa1))/0x8+-parseInt(_0x19f2eb(0xe9))/0x9+parseInt(_0x19f2eb(0xdc))/0xa;if(_0x519e65===_0xcc590d)break;else _0x34cff9['push'](_0x34cff9['shift']());}catch(_0x1073b4){_0x34cff9['push'](_0x34cff9['shift']());}}}(a0_0x21f9,0xc8964));const dotenv=require('dotenv'),path=require(a0_0x3e97b9(0xed)),fs=require('fs'),{v7:uuidv7}=require(a0_0x3e97b9(0xb5));dotenv[a0_0x3e97b9(0xbe)]();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,a0_0x3e97b9(0xcf));if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x3e97b9(0xa0)](a0_0x3e97b9(0xa8)+messagehubPath);else throw new Error(a0_0x3e97b9(0xe0)+messagehubPath);}catch(a0_0x59f9af){console[a0_0x3e97b9(0xbc)](a0_0x3e97b9(0xe1)+a0_0x59f9af[a0_0x3e97b9(0xe2)]);throw a0_0x59f9af;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x4c08a4){const _0x37240e=a0_0x3e97b9,_0x466ff6=new Date()['toISOString']();console[_0x37240e(0xa0)]('['+_0x466ff6+']\x20'+_0x4c08a4);}async function initMessageHub(){const _0x43f1da=a0_0x3e97b9,_0x37aa88={'MUZVR':function(_0x414848,_0x53790a){return _0x414848&&_0x53790a;},'kEjpX':function(_0x3cb147,_0x35eac4){return _0x3cb147(_0x35eac4);},'cNhgC':_0x43f1da(0xc4),'ZNont':_0x43f1da(0xa9),'HeIVo':function(_0xa1102e,_0x1583d9){return _0xa1102e===_0x1583d9;},'eVefF':_0x43f1da(0x99),'KXgFC':'error','tUkDj':function(_0x2fc6f0,_0x366e27){return _0x2fc6f0(_0x366e27);},'GBQxJ':_0x43f1da(0xac),'YExqe':'Mode:\x20Koneksi\x20Nyata','hpelE':_0x43f1da(0xbb),'BqmDn':'true','kMEpD':function(_0x1cc4a0,_0x2413d6){return _0x1cc4a0(_0x2413d6);},'RglhN':function(_0x80bedf,_0x41bc28){return _0x80bedf(_0x41bc28);},'hGCuD':function(_0x583723,_0x33b822){return _0x583723(_0x33b822);},'xsjIb':_0x43f1da(0x9f),'HtSov':'Error\x20inisialisasi\x20MessageHub:','DHYix':'Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'};if(messagehub&&isConnected)return log(_0x43f1da(0xef)),!![];if(connectionPromise)return log(_0x37aa88[_0x43f1da(0xae)]),connectionPromise;return connectionPromise=new Promise(async(_0x207fae,_0x34e684)=>{const _0x2a1747=_0x43f1da,_0x5593b4={'fkiQO':_0x37aa88[_0x2a1747(0x9e)],'ZsKWc':function(_0x3abfc2,_0x12d80c){return _0x3abfc2(_0x12d80c);},'SyaYz':function(_0x5e410d,_0xd59458){const _0x1cbab6=_0x2a1747;return _0x37aa88[_0x1cbab6(0x98)](_0x5e410d,_0xd59458);},'EpDZa':_0x37aa88['eVefF'],'HPoEL':function(_0x28db58,_0x10afd2){return _0x28db58(_0x10afd2);},'gxBGJ':_0x2a1747(0x9a),'VrRyC':function(_0x1f83a4,_0xc2cfc4){return _0x1f83a4===_0xc2cfc4;},'mPuMI':_0x37aa88['KXgFC'],'jdTUS':_0x2a1747(0x96),'yIIjf':function(_0x4bf4c7,_0x39cfab){const _0x14a655=_0x2a1747;return _0x37aa88[_0x14a655(0xbf)](_0x4bf4c7,_0x39cfab);}};try{log(_0x37aa88['GBQxJ']),log('Waktu\x20Inisialisasi:\x20'+new Date()[_0x2a1747(0xb3)]()),_0x37aa88['kEjpX'](log,_0x37aa88['YExqe']);const _0x1f58e9={'publishKey':process['env'][_0x2a1747(0xce)],'subscribeKey':process[_0x2a1747(0xb8)][_0x2a1747(0xb4)],'userId':process[_0x2a1747(0xb8)][_0x2a1747(0xd4)]||_0x2a1747(0x9b)+(process[_0x2a1747(0xb8)][_0x2a1747(0xd3)]||_0x37aa88[_0x2a1747(0xa7)])+'-'+process['pid'],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x2a1747(0xcc),'autoAcknowledge':_0x37aa88['HeIVo'](process['env']['MSHUB_AUTO_ACKNOWLEDGE'],_0x37aa88['BqmDn']),'acknowledgeMessages':_0x37aa88[_0x2a1747(0x98)](process['env'][_0x2a1747(0xe4)],_0x2a1747(0xd0)),'platform':{'type':process[_0x2a1747(0xb8)][_0x2a1747(0xe3)]||'websocket','host':process['env'][_0x2a1747(0xaa)]||'localhost','api_port':_0x37aa88['kMEpD'](parseInt,process['env']['MSHUB_API_PORT']||0xdf8),'service_port':_0x37aa88[_0x2a1747(0x97)](parseInt,process['env'][_0x2a1747(0xb6)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x1f58e9),_0x37aa88['hGCuD'](log,_0x37aa88[_0x2a1747(0xf1)]),log(_0x2a1747(0xdf)+messagehub['userId']),log(_0x2a1747(0xab)+messagehub[_0x2a1747(0xa6)]),_0x37aa88['kEjpX'](log,'Subscribe\x20Key:\x20'+messagehub['subscribeKey']),log('Tipe\x20Komunikasi:\x20'+messagehub['communicationType']),log(_0x2a1747(0xd7)+JSON[_0x2a1747(0xd8)](messagehub['platformConfig'])),_0x37aa88['tUkDj'](log,_0x2a1747(0xa2)),messagehub[_0x2a1747(0xa5)]({'status':function(_0x1a907a){const _0x2234ab=_0x2a1747;log(_0x2234ab(0xc5)+_0x1a907a['category']);if(_0x1a907a['category']===_0x5593b4['fkiQO'])log('Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0x5593b4[_0x2234ab(0xd9)](_0x207fae,!![]);else{if(_0x5593b4[_0x2234ab(0xee)](_0x1a907a[_0x2234ab(0xc2)],_0x5593b4[_0x2234ab(0xc3)])){const _0x3bd94a=_0x1a907a[_0x2234ab(0xc8)]===!![];!_0x3bd94a&&(_0x5593b4['HPoEL'](log,_0x2234ab(0x94)+(_0x1a907a['reason']||_0x5593b4['gxBGJ'])),isConnected=![],connectionPromise&&(_0x5593b4[_0x2234ab(0xd9)](_0x34e684,new Error(_0x2234ab(0xdd)+(_0x1a907a['reason']||_0x2234ab(0x9a)))),connectionPromise=null));}else{if(_0x5593b4['VrRyC'](_0x1a907a['category'],_0x5593b4['mPuMI'])){let _0x55c1ae=_0x1a907a['errorDetail']||_0x1a907a[_0x2234ab(0xbc)]||'Unknown\x20error';log(_0x2234ab(0xe8)+_0x55c1ae),isConnected=![],connectionPromise&&(_0x5593b4[_0x2234ab(0xd9)](_0x34e684,new Error(_0x55c1ae)),connectionPromise=null);}else{if(_0x1a907a[_0x2234ab(0xc2)]===_0x5593b4[_0x2234ab(0x9c)])_0x5593b4['yIIjf'](log,'📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0x1a907a[_0x2234ab(0xbd)]);else{if(_0x1a907a['category']===_0x2234ab(0xea)){const _0x35ae2e=_0x1a907a['receiverInfo']?.[_0x2234ab(0xf2)]||'Unknown',_0x100fd9=_0x1a907a['receiverInfo']?.['id']||_0x1a907a['receiverId'],_0x31f270=new Date(_0x1a907a['receiverInfo']?.['receivedAt']||_0x1a907a['receivedAt']||new Date())['toLocaleTimeString']();log(_0x2234ab(0xf0)+_0x1a907a['requestId']+_0x2234ab(0xdb)+_0x35ae2e+'\x20('+_0x100fd9+_0x2234ab(0xb2)+_0x31f270+'.\x20Total\x20konfirmasi:\x20'+(_0x1a907a[_0x2234ab(0xb0)]||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x5474e0=_0x2a1747;_0x37aa88['MUZVR'](!isConnected,connectionPromise)&&(_0x37aa88[_0x5474e0(0xcd)](log,_0x37aa88[_0x5474e0(0xa3)]),_0x37aa88['kEjpX'](_0x34e684,new Error('Connection\x20timeout')),connectionPromise=null);},0x2710);}catch(_0x1e6f94){log(_0x2a1747(0xf3)+_0x1e6f94['message']),console['error'](_0x37aa88['HtSov'],_0x1e6f94),connectionPromise=null,_0x34e684(_0x1e6f94);}}),connectionPromise;}async function publishMessage(_0x4f8083,_0x361d66,_0x516764,_0x29b27a={}){const _0x2c2a29=a0_0x3e97b9,_0x297d17={'xxVlz':function(_0x33b569){return _0x33b569();},'RIEKx':function(_0x5c6776,_0xac8f86){return _0x5c6776(_0xac8f86);},'MeKTA':function(_0xbe153a,_0x3c2db4){return _0xbe153a!==_0x3c2db4;},'XyIHo':'Mengirim\x20pesan\x20ke\x20server...','MVZYP':_0x2c2a29(0xde),'MZjvE':_0x2c2a29(0xb1)};try{!isConnected&&await _0x297d17[_0x2c2a29(0xb9)](initMessageHub);const _0x133783=messagehub[_0x2c2a29(0xda)](_0x4f8083);_0x297d17[_0x2c2a29(0xc6)](log,_0x2c2a29(0xb7)),_0x297d17['RIEKx'](log,'Channel\x20Target:\x20'+_0x133783['topic']),log(_0x2c2a29(0x95)+_0x361d66),log(_0x2c2a29(0xc7));const _0x3b44f9={'requireAck':_0x297d17['MeKTA'](_0x29b27a[_0x2c2a29(0xeb)],undefined)?_0x29b27a['requireAck']:![],'clearCache':_0x29b27a[_0x2c2a29(0xd1)]!==undefined?_0x29b27a['clearCache']:!![],'senderId':messagehub[_0x2c2a29(0xe6)]?messagehub[_0x2c2a29(0xe6)]['id']:_0x2c2a29(0xad)};log(_0x297d17['XyIHo']);const _0x2f227e={'type':_0x361d66,'content':_0x516764},_0x366767=await _0x133783[_0x2c2a29(0xd6)](_0x2f227e,_0x3b44f9);return log('Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x4f8083),{'success':!![],'requestId':_0x366767[_0x2c2a29(0xbd)],'topic':_0x4f8083,'message':_0x297d17[_0x2c2a29(0xcb)]};}catch(_0x2f09ce){return log('⚠️\x20Error\x20publishing\x20message:\x20'+_0x2f09ce['message']),{'success':![],'error':_0x2f09ce['message'],'topic':_0x4f8083,'message':_0x297d17[_0x2c2a29(0xf4)]};}}async function closeConnection(){const _0x35f4b2=a0_0x3e97b9,_0x4c0ef3={'xzlAK':function(_0x574200,_0x58bdac){return _0x574200(_0x58bdac);},'Xuhpx':'function','LMWal':function(_0x5dd370,_0x18893a){return _0x5dd370===_0x18893a;},'UmILL':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()','fANta':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub'};timeoutHandler&&(_0x4c0ef3[_0x35f4b2(0xc1)](clearTimeout,timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(typeof messagehub['disconnect']===_0x4c0ef3['Xuhpx'])await messagehub[_0x35f4b2(0xca)](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()');else{if(typeof messagehub['close']===_0x35f4b2(0xc0))await messagehub[_0x35f4b2(0xd5)](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()');else messagehub['socket']&&_0x4c0ef3[_0x35f4b2(0xaf)](typeof messagehub['socket']['disconnect'],_0x35f4b2(0xc0))?(messagehub['socket'][_0x35f4b2(0xca)](),log(_0x4c0ef3[_0x35f4b2(0xba)])):log(_0x4c0ef3['fANta']);}isConnected=![],connectionPromise=null;}catch(_0x3c78c7){_0x4c0ef3[_0x35f4b2(0xc1)](log,'Error\x20saat\x20menutup\x20koneksi:\x20'+_0x3c78c7['message']);}}function a0_0x4186(_0x244669,_0x35c941){_0x244669=_0x244669-0x94;const _0x21f942=a0_0x21f9();let _0x418616=_0x21f942[_0x244669];if(a0_0x4186['YVHWKC']===undefined){var _0x8fad02=function(_0x4969ae){const _0x484df9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3423d6='',_0x152bba='';for(let _0x2c441f=0x0,_0xee45b3,_0x5a2c74,_0xc06a64=0x0;_0x5a2c74=_0x4969ae['charAt'](_0xc06a64++);~_0x5a2c74&&(_0xee45b3=_0x2c441f%0x4?_0xee45b3*0x40+_0x5a2c74:_0x5a2c74,_0x2c441f++%0x4)?_0x3423d6+=String['fromCharCode'](0xff&_0xee45b3>>(-0x2*_0x2c441f&0x6)):0x0){_0x5a2c74=_0x484df9['indexOf'](_0x5a2c74);}for(let _0x538d12=0x0,_0x54cb48=_0x3423d6['length'];_0x538d12<_0x54cb48;_0x538d12++){_0x152bba+='%'+('00'+_0x3423d6['charCodeAt'](_0x538d12)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x152bba);};a0_0x4186['EZEZdi']=_0x8fad02,a0_0x4186['EkjxXf']={},a0_0x4186['YVHWKC']=!![];}const _0x1ca0b3=_0x21f942[0x0],_0x26ce07=_0x244669+_0x1ca0b3,_0x3eb848=a0_0x4186['EkjxXf'][_0x26ce07];return!_0x3eb848?(_0x418616=a0_0x4186['EZEZdi'](_0x418616),a0_0x4186['EkjxXf'][_0x26ce07]=_0x418616):_0x418616=_0x3eb848,_0x418616;}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};function a0_0x21f9(){const _0x3038aa=['tvnivujFse9tva','uhvIBgLZAcblzxK6ia','pt09pt09ie1vtefjieLosvnjquXju0ftssbnrvntquDfsfvcid09pt09pq','CMvZDgzVCMDL','reHzAxG','te1xywW','y29UzMLYBwf0Aw9Uq291BNq','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','ksbWywrHia','Dg9mB2nHBgvtDhjPBMC','tvnivujFu1vcu0nssujfx0Tfwq','DxvPza','tvnivujFu0vsvKLdrv9qt1ju','pt09pt09ierbveeGufvcteLtscbnrvntquDfid09pt09pq','zw52','EhHwBhO','vw1jteW','zgvMyxvSDa','zxjYB3i','CMvXDwvZDeLK','y29UzMLN','DfvRrgO','zNvUy3rPB24','EhPSquS','y2f0zwDVCNK','rxbewMe','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','u3rHDhvZieXPC3rLBMvYoIa','uKLfs3G','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','AxnfCNjVCLjLBgf0zwq','odG4nJq3owXts254uq','zgLZy29UBMvJDa','tvzAwva','yNjVywrJyxn0','A0vQCfG','tvnivujFufvcteLtsf9lrvK','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','Dhj1zq','y2XLyxjdywnOzq','nLzlugfVAq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','tvnivujFvvnfuL9jra','y2XVC2u','ChvIBgLZAa','s29UzMLNDxjHC2KGugXHDgzVCM06ia','C3rYAw5NAwz5','wNnlv2m','y2HHBM5LBa','igrPDgvYAw1Hig9SzwGG','mZe4mJy3nZbVue5wAfq','s29UzwTZAsb0zxjWDxr1CZOG','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','q2XPzw50ieLel1vZzxjjrdOG','twvZC2fNzuH1yIbtreSGBM90igzVDw5Kigf0ia','rxjYB3iGBg9HzgLUzYbnzxnZywDLshvIifnesZOG','BwvZC2fNzq','tvnivujFq09ntvvosunbveLptL9uwvbf','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','mti3mJC2Burcuwn0','C29JA2v0','mJiZoteZmgHfsLLgqG','4PQG77IpievYCM9YoIa','mteXmZCZmJbsrwj2B1e','BwvZC2fNzs1YzwnLAxzLza','CMvXDwLYzufJAW','odfoy1zRtu8','Cgf0Aa','u3LHwxO','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','EhnQswi','BMfTzq','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','tvPQDKu','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','twvZC2fNzsbuExbLoIa','BwvZC2fNzs1Zzw50','uMDSAe4','sgvjvM8','zgLZy29UBMvJDgvK','vgLKywSGzgLRzxrHAhvP','CMvZDgzVCMDLlq','AMruvvm','nde5y0nirwvQ','wK5VBNq','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','Bg9N','nJe0odiWmhzPsLDYDW','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','y05Oz0m','nJmYoe9rre5ozW','ywrKtgLZDgvUzxi','ChvIBgLZAeTLEq','AhbLBeu','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','y29UBMvJDgvK'];a0_0x21f9=function(){return _0x3038aa;};return a0_0x21f9();}
|