@restforgejs/platform 5.0.0 → 5.0.1
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 +393 -187
- package/generators/lib/migrate/naming.js +9 -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';
|
|
1
|
+
'use strict';const a0_0x5c72a7=a0_0x3bc6;function a0_0x3bc6(_0x27b59a,_0x436bce){_0x27b59a=_0x27b59a-0xbc;const _0x5c761c=a0_0x5c76();let _0x3bc6bc=_0x5c761c[_0x27b59a];if(a0_0x3bc6['iHvFFN']===undefined){var _0x3d2c24=function(_0x45b004){const _0x332539='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1ef831='',_0x192017='';for(let _0x26cf4c=0x0,_0xeb1a8a,_0x237a11,_0x5ef0ee=0x0;_0x237a11=_0x45b004['charAt'](_0x5ef0ee++);~_0x237a11&&(_0xeb1a8a=_0x26cf4c%0x4?_0xeb1a8a*0x40+_0x237a11:_0x237a11,_0x26cf4c++%0x4)?_0x1ef831+=String['fromCharCode'](0xff&_0xeb1a8a>>(-0x2*_0x26cf4c&0x6)):0x0){_0x237a11=_0x332539['indexOf'](_0x237a11);}for(let _0x1ee7bc=0x0,_0x410594=_0x1ef831['length'];_0x1ee7bc<_0x410594;_0x1ee7bc++){_0x192017+='%'+('00'+_0x1ef831['charCodeAt'](_0x1ee7bc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x192017);};a0_0x3bc6['khkHpM']=_0x3d2c24,a0_0x3bc6['NHWgtj']={},a0_0x3bc6['iHvFFN']=!![];}const _0x3fca36=_0x5c761c[0x0],_0x3131bc=_0x27b59a+_0x3fca36,_0x131492=a0_0x3bc6['NHWgtj'][_0x3131bc];return!_0x131492?(_0x3bc6bc=a0_0x3bc6['khkHpM'](_0x3bc6bc),a0_0x3bc6['NHWgtj'][_0x3131bc]=_0x3bc6bc):_0x3bc6bc=_0x131492,_0x3bc6bc;}(function(_0x31f7b2,_0x546462){const _0x80e0bf=a0_0x3bc6,_0x385fb5=_0x31f7b2();while(!![]){try{const _0xe3e4b4=-parseInt(_0x80e0bf(0xc4))/0x1+parseInt(_0x80e0bf(0xf4))/0x2*(parseInt(_0x80e0bf(0xce))/0x3)+-parseInt(_0x80e0bf(0xf3))/0x4*(-parseInt(_0x80e0bf(0xdd))/0x5)+parseInt(_0x80e0bf(0xd2))/0x6*(parseInt(_0x80e0bf(0xe1))/0x7)+-parseInt(_0x80e0bf(0xc3))/0x8+parseInt(_0x80e0bf(0xf5))/0x9+parseInt(_0x80e0bf(0xe3))/0xa*(-parseInt(_0x80e0bf(0xc1))/0xb);if(_0xe3e4b4===_0x546462)break;else _0x385fb5['push'](_0x385fb5['shift']());}catch(_0x1816f1){_0x385fb5['push'](_0x385fb5['shift']());}}}(a0_0x5c76,0x3c8bb));const multer=require('multer'),path=require('path'),crypto=require(a0_0x5c72a7(0xd0)),fs=require('fs')[a0_0x5c72a7(0xcb)],fsSync=require('fs'),{logger}=require('./logger');class UploadHandlerV2{constructor(){const _0x4e7995=a0_0x5c72a7;this[_0x4e7995(0xc0)]=null;}get[a0_0x5c72a7(0xd7)](){const _0x5cf42c=a0_0x5c72a7,_0x19609e={'WJqdD':_0x5cf42c(0xcd),'QypVi':'uploads'};if(!this[_0x5cf42c(0xc0)]){const _0x424659=process['env']['RESTFORGE_PROJECT_NAME']||'default';this['_tempDir']=process[_0x5cf42c(0xe6)][_0x5cf42c(0xbd)]||path[_0x5cf42c(0xd3)](process['cwd'](),_0x19609e[_0x5cf42c(0xe0)],_0x19609e['QypVi'],_0x424659),!fsSync['existsSync'](this[_0x5cf42c(0xc0)])&&fsSync['mkdirSync'](this['_tempDir'],{'recursive':!![]});}return this[_0x5cf42c(0xc0)];}['createUploadMiddleware'](_0x15fed3={}){const _0x5d5508=a0_0x5c72a7,_0x586858={'fgZdl':function(_0x1d9254,_0x1d0e3a,_0x45a0d7){return _0x1d9254(_0x1d0e3a,_0x45a0d7);},'iqOvv':function(_0x1e17bf,_0x7e31c6){return _0x1e17bf===_0x7e31c6;},'AgbXG':function(_0x464aad,_0x451a63,_0x9a50ce){return _0x464aad(_0x451a63,_0x9a50ce);},'TKRSJ':function(_0x1faee0,_0x1cfc9e){return _0x1faee0(_0x1cfc9e);},'Gestt':'files'},_0x25beff=_0x15fed3[_0x5d5508(0xef)]||0x5,_0x982aee=this['_parseFileSize'](_0x15fed3['maxFileSize']||_0x5d5508(0xde)),_0x216191=_0x15fed3['allowedTypes']||[],_0x269c76=multer['diskStorage']({'destination':(_0x4c3b9c,_0x2fbb64,_0x398582)=>{const _0x432cec=_0x5d5508;!fsSync[_0x432cec(0xf2)](this['tempDir'])&&fsSync[_0x432cec(0xe2)](this[_0x432cec(0xd7)],{'recursive':!![]}),_0x586858[_0x432cec(0xd6)](_0x398582,null,this[_0x432cec(0xd7)]);},'filename':(_0x50fc21,_0x182064,_0x5e38b9)=>{const _0x4ea603=_0x5d5508,_0xb5a101=crypto[_0x4ea603(0xdf)](0x8)['toString'](_0x4ea603(0xca)),_0x411ccc=Date['now'](),_0x379bb1=path['extname'](_0x182064['originalname']);_0x5e38b9(null,'upload-'+_0x411ccc+'-'+_0xb5a101+_0x379bb1);}}),_0xf582d4=(_0x320880,_0x6279ca,_0x459185)=>{const _0x1968c9=_0x5d5508;if(_0x586858[_0x1968c9(0xe7)](_0x216191[_0x1968c9(0xc7)],0x0))return _0x586858['AgbXG'](_0x459185,null,!![]);const _0x43affb=path['extname'](_0x6279ca['originalname'])['toLowerCase']()[_0x1968c9(0xdc)]('.','');_0x216191['includes'](_0x43affb)?_0x586858['fgZdl'](_0x459185,null,!![]):_0x586858['TKRSJ'](_0x459185,new Error(_0x1968c9(0xd1)+_0x43affb+_0x1968c9(0xc8)+_0x216191[_0x1968c9(0xd3)](',\x20')));};return _0x586858['TKRSJ'](multer,{'storage':_0x269c76,'limits':{'fileSize':_0x982aee,'files':_0x25beff},'fileFilter':_0xf582d4})[_0x5d5508(0xbe)](_0x586858[_0x5d5508(0xdb)],_0x25beff);}async[a0_0x5c72a7(0xf1)](_0x2caae4,_0x168d2b,_0x5b31e2={}){const _0x14c389=a0_0x5c72a7,_0x3bc43b={'ENAkz':function(_0x516415,_0x2ec84f){return _0x516415(_0x2ec84f);}},{createFileMetadata:_0x39f7dc}=_0x3bc43b[_0x14c389(0xed)](require,'../storage/file-metadata-helper'),_0x45fbfb=[];for(const _0x53c11c of _0x2caae4){try{const _0x5c6af3=_0x168d2b[_0x14c389(0xcf)](_0x53c11c['originalname'],{'prefix':_0x5b31e2['prefix']||'','project':_0x5b31e2['project']||'','module':_0x5b31e2[_0x14c389(0xec)]||'','endpoint':_0x5b31e2[_0x14c389(0xbf)]||''}),_0x44249c=fsSync['createReadStream'](_0x53c11c['path']),_0x30bf03=await _0x168d2b[_0x14c389(0xc2)](_0x44249c,_0x5c6af3,{'contentType':_0x53c11c[_0x14c389(0xbc)],'fileSize':_0x53c11c['size']}),_0x1be397=_0x39f7dc({'key':_0x30bf03['key'],'originalName':_0x53c11c['originalname'],'fileName':path['basename'](_0x5c6af3),'contentType':_0x53c11c[_0x14c389(0xbc)],'size':_0x53c11c['size'],'url':_0x30bf03['url'],'provider':_0x168d2b['providerName'],'bucket':_0x168d2b['bucket']||null,'uploadedBy':_0x5b31e2['uploadedBy']||null});_0x45fbfb[_0x14c389(0xee)](_0x1be397);}catch(_0x3c2ab5){logger[_0x14c389(0xe5)]({'event':'upload_v2_process_error','file':_0x53c11c['originalname'],'error':_0x3c2ab5['message']},'Failed\x20to\x20process\x20uploaded\x20file:\x20'+_0x53c11c[_0x14c389(0xd8)]);throw _0x3c2ab5;}finally{await this['_deleteTempFile'](_0x53c11c[_0x14c389(0xd9)]);}}return _0x45fbfb;}async['_deleteTempFile'](_0x5ca1b9){const _0x4c51aa=a0_0x5c72a7,_0x1f7b28={'znhjj':_0x4c51aa(0xc6)};try{await fs[_0x4c51aa(0xd4)](_0x5ca1b9);}catch(_0x102e5b){logger['warn']({'event':_0x1f7b28[_0x4c51aa(0xea)],'filePath':_0x5ca1b9,'error':_0x102e5b[_0x4c51aa(0xf0)]},_0x4c51aa(0xda));}}['_parseFileSize'](_0x185722){const _0x6c6e8a=a0_0x5c72a7,_0x40e4c2={'PETNV':function(_0x11c4ec,_0x554058){return _0x11c4ec===_0x554058;},'OSKbE':function(_0x46b8a6,_0x4f54ab){return _0x46b8a6(_0x4f54ab);},'dZoCe':function(_0x32893f,_0x413797){return _0x32893f*_0x413797;}};if(_0x40e4c2[_0x6c6e8a(0xc5)](typeof _0x185722,_0x6c6e8a(0xe8)))return _0x185722;const _0x482d25=_0x40e4c2[_0x6c6e8a(0xe4)](String,_0x185722)[_0x6c6e8a(0xeb)]()['match'](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x482d25)return 0xa*0x400*0x400;const _0x58999c=_0x40e4c2[_0x6c6e8a(0xe4)](parseFloat,_0x482d25[0x1]),_0x4a42d8=_0x482d25[0x2][_0x6c6e8a(0xcc)](),_0x57ccbf={'B':0x1,'KB':0x400,'MB':0x400*0x400,'GB':_0x40e4c2[_0x6c6e8a(0xe9)](0x400,0x400)*0x400};return Math[_0x6c6e8a(0xc9)](_0x58999c*(_0x57ccbf[_0x4a42d8]||0x1));}}function a0_0x5c76(){const _0x594f6a=['BNvTyMvY','zfPVq2u','EM5OAMO','DhjPBq','Bw9KDwXL','ru5bA3O','ChvZAa','Bwf4rMLSzxm','BwvZC2fNzq','ChjVy2vZC1vWBg9HzgvKrMLSzxm','zxHPC3rZu3LUyW','nZjJAuXrCK4','ntbXrMHtqu8','mZiZntG0mM1ys3j1vW','BwLTzxr5Cgu','vvbmt0fex1rftvbFreLs','yxjYyxK','zw5KCg9PBNq','x3rLBxbeAxi','otG3ndm3uMDRrxjY','DxbSB2fK','ndeYmtzbrNv0CgO','nZyWndbSq1zrBu4','uevutLy','DxbSB2fKx3yYx3rLBxbFzgvSzxrLx3DHCM4','BgvUz3rO','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG','zMXVB3i','Agv4','ChjVBwLZzxm','Dg9vChbLCKnHC2u','DgvTCa','ndyXnJDcwePOy3C','z2vUzxjHDgvlzxK','y3j5ChrV','rMLSzsb0ExbLiciU','mZuZneXNy0Hmta','AM9PBG','Dw5SAw5R','zxHWB3j0CW','zMDAzgW','DgvTCerPCG','B3jPz2LUywXUyw1L','Cgf0Aa','rMfPBgvKihrVigrLBgv0zsb0zw1WigzPBgu','r2vZDhq','CMvWBgfJzq','oda0mJvjqu9pu3G','mtbnqG','CMfUzg9TqNL0zxm','v0PXzeq','ntq5nwzHtNzPsa','BwTKAxjtEw5J','mtmWCxnvD0XR','t1nlyKu','zxjYB3i','zw52','AxfpDNy'];a0_0x5c76=function(){return _0x594f6a;};return a0_0x5c76();}module[a0_0x5c72a7(0xd5)]=new UploadHandlerV2();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0xef5cdc=a0_0x5643;function a0_0x5643(_0x379988,_0x126a08){_0x379988=_0x379988-0x1f0;const _0x729782=a0_0x7297();let _0x5643eb=_0x729782[_0x379988];if(a0_0x5643['sPCyWY']===undefined){var _0x4b31ab=function(_0x47f589){const _0xb35dee='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3228a6='',_0x296065='';for(let _0x6b0862=0x0,_0x18f398,_0x5701fc,_0x28f66b=0x0;_0x5701fc=_0x47f589['charAt'](_0x28f66b++);~_0x5701fc&&(_0x18f398=_0x6b0862%0x4?_0x18f398*0x40+_0x5701fc:_0x5701fc,_0x6b0862++%0x4)?_0x3228a6+=String['fromCharCode'](0xff&_0x18f398>>(-0x2*_0x6b0862&0x6)):0x0){_0x5701fc=_0xb35dee['indexOf'](_0x5701fc);}for(let _0x5860d9=0x0,_0x4d2822=_0x3228a6['length'];_0x5860d9<_0x4d2822;_0x5860d9++){_0x296065+='%'+('00'+_0x3228a6['charCodeAt'](_0x5860d9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x296065);};a0_0x5643['hSqHmK']=_0x4b31ab,a0_0x5643['WuLeYD']={},a0_0x5643['sPCyWY']=!![];}const _0x45d56d=_0x729782[0x0],_0x501bae=_0x379988+_0x45d56d,_0x48db19=a0_0x5643['WuLeYD'][_0x501bae];return!_0x48db19?(_0x5643eb=a0_0x5643['hSqHmK'](_0x5643eb),a0_0x5643['WuLeYD'][_0x501bae]=_0x5643eb):_0x5643eb=_0x48db19,_0x5643eb;}(function(_0x1731e6,_0x493cb1){const _0x4ffd39=a0_0x5643,_0x3b72fc=_0x1731e6();while(!![]){try{const _0x38a077=-parseInt(_0x4ffd39(0x1f2))/0x1*(parseInt(_0x4ffd39(0x20e))/0x2)+parseInt(_0x4ffd39(0x218))/0x3*(parseInt(_0x4ffd39(0x21e))/0x4)+-parseInt(_0x4ffd39(0x1f0))/0x5+parseInt(_0x4ffd39(0x1ff))/0x6+-parseInt(_0x4ffd39(0x1f4))/0x7+-parseInt(_0x4ffd39(0x220))/0x8*(parseInt(_0x4ffd39(0x205))/0x9)+-parseInt(_0x4ffd39(0x20a))/0xa*(-parseInt(_0x4ffd39(0x209))/0xb);if(_0x38a077===_0x493cb1)break;else _0x3b72fc['push'](_0x3b72fc['shift']());}catch(_0xc969a0){_0x3b72fc['push'](_0x3b72fc['shift']());}}}(a0_0x7297,0x90afc));const multer=require('multer'),path=require('path'),crypto=require(a0_0xef5cdc(0x217)),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0xef5cdc(0x1f8));class UploadHandler{constructor(){const _0x1f576a=a0_0xef5cdc,_0x4be6ec={'bJfPQ':function(_0x9b84b5,_0x29c740){return _0x9b84b5*_0x29c740;}};this[_0x1f576a(0x21d)]=null,this['maxFileSize']=_0x4be6ec['bJfPQ'](0xa,0x400)*0x400;}get[a0_0xef5cdc(0x21a)](){const _0x3d5047=a0_0xef5cdc,_0x52dc0d={'XnCmU':_0x3d5047(0x210),'nUtZJ':_0x3d5047(0x1fd)};if(!this[_0x3d5047(0x21d)]){const _0x1688be=process[_0x3d5047(0x216)]['RESTFORGE_PROJECT_NAME']||_0x3d5047(0x20d);this[_0x3d5047(0x21d)]=process['env'][_0x3d5047(0x208)]||path['join'](__dirname,_0x3d5047(0x219)+_0x1688be);try{!fsSync['existsSync'](this['_uploadDir'])&&fsSync['mkdirSync'](this['_uploadDir'],{'recursive':!![]}),logger[_0x3d5047(0x222)]({'event':'upload_handler_init','dir':this[_0x3d5047(0x21d)]},_0x3d5047(0x213));}catch(_0x52773a){logger[_0x3d5047(0x1fb)]({'event':_0x52dc0d['XnCmU'],'error':_0x52773a[_0x3d5047(0x1fa)]},_0x52dc0d['nUtZJ']);}}return this['_uploadDir'];}['getStorage'](){const _0x251bc1=a0_0xef5cdc,_0x594c3c={'idiNh':'hex','Gahcp':function(_0x200e35,_0x53fc77,_0x1075ae){return _0x200e35(_0x53fc77,_0x1075ae);}};return multer[_0x251bc1(0x20c)]({'destination':(_0x60e581,_0x3963fa,_0x5b0cda)=>{const _0x1b7f52=_0x251bc1;!fsSync['existsSync'](this['uploadDir'])&&fsSync[_0x1b7f52(0x211)](this[_0x1b7f52(0x21a)],{'recursive':!![]}),_0x5b0cda(null,this['uploadDir']);},'filename':(_0x314a35,_0x45da0e,_0x3b9931)=>{const _0x39f91f=_0x251bc1,_0x574718=crypto[_0x39f91f(0x200)](0x8)['toString'](_0x594c3c[_0x39f91f(0x203)]),_0x476cd0=Date[_0x39f91f(0x1f3)](),_0x484f7d=path[_0x39f91f(0x1fc)](_0x45da0e['originalname']);_0x594c3c[_0x39f91f(0x1f6)](_0x3b9931,null,_0x39f91f(0x1fe)+_0x476cd0+'-'+_0x574718+_0x484f7d);}});}[a0_0xef5cdc(0x21c)](){const _0x11a75f=a0_0xef5cdc,_0x45f9f4={'FcvXJ':'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet','DwIGw':_0x11a75f(0x1f7),'hbNhR':_0x11a75f(0x21f),'VnzfS':'.xls','KmWal':function(_0x14eade,_0x5c0917,_0x55b4d4){return _0x14eade(_0x5c0917,_0x55b4d4);},'drgpp':_0x11a75f(0x215),'LZEWl':function(_0x10d334,_0x853f32){return _0x10d334(_0x853f32);}};return _0x45f9f4[_0x11a75f(0x221)](multer,{'storage':this[_0x11a75f(0x207)](),'limits':{'fileSize':this[_0x11a75f(0x202)],'files':0x1},'fileFilter':(_0x3bea60,_0x1327e0,_0x320f43)=>{const _0x88a2c3=_0x11a75f,_0x135e7f=[_0x45f9f4[_0x88a2c3(0x1f9)],_0x45f9f4['DwIGw']],_0x109174=[_0x45f9f4[_0x88a2c3(0x1f5)],_0x45f9f4[_0x88a2c3(0x214)]],_0x36778f=path[_0x88a2c3(0x1fc)](_0x1327e0[_0x88a2c3(0x1f1)])['toLowerCase']();_0x135e7f['includes'](_0x1327e0['mimetype'])&&_0x109174[_0x88a2c3(0x212)](_0x36778f)?_0x45f9f4['KmWal'](_0x320f43,null,!![]):_0x320f43(new Error(_0x45f9f4[_0x88a2c3(0x21b)]));}})[_0x11a75f(0x204)]('file');}async['deleteFile'](_0x19a301){const _0x13f5da=a0_0xef5cdc,_0x25461e={'VpCum':_0x13f5da(0x20b),'vakKN':_0x13f5da(0x206),'ZncTr':'upload_file_delete_error'};try{await fs['unlink'](_0x19a301),logger['info']({'event':_0x25461e[_0x13f5da(0x201)],'filePath':_0x19a301},_0x25461e['vakKN']);}catch(_0x1694b6){logger['error']({'event':_0x25461e['ZncTr'],'filePath':_0x19a301,'error':_0x1694b6[_0x13f5da(0x1fa)]},'Failed\x20to\x20delete\x20uploaded\x20file');}}}module[a0_0xef5cdc(0x20f)]=new UploadHandler();function a0_0x7297(){const _0x10f005=['tfPfv2W','Aw5MBW','mty3otuZnwXsve1Nta','B3jPz2LUywXUyw1L','nvn3EfD0vq','BM93','ntC5mJK2owHtzffNyq','AgjoAfi','r2fOy3a','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','lI9SB2DNzxi','rMn2weO','BwvZC2fNzq','zxjYB3i','zxH0BMfTzq','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','DxbSB2fKlq','mJi0ntK1nLPtuNDtBa','CMfUzg9TqNL0zxm','vNbdDw0','Bwf4rMLSzvnPEMu','AwrPtMG','C2LUz2XL','mtHpvMzWs2G','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','z2v0u3rVCMfNzq','vvbmt0fex0rjuG','mtfOrg5JwNO','mty2mtyWotbpwe5jqwy','DxbSB2fKx2zPBgvFzgvSzxrLza','zgLZA1n0B3jHz2u','zgvMyxvSDa','nde2nJyYD1rOAvLy','zxHWB3j0CW','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','BwTKAxjtEw5J','Aw5JBhvKzxm','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','vM56zLm','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','zw52','y3j5ChrV','otq2mJzVzvviwu0','lI4VlI4VDgvTCc91CgXVywrZlW','DxbSB2fKrgLY','zhjNCha','z2v0vxbSB2fKtwLKzgXLD2fYzq','x3vWBg9HzerPCG','mteYB0ndwhP2','lNHSC3G','ndG1mZG0wK9Wwfj4'];a0_0x7297=function(){return _0x10f005;};return a0_0x7297();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x81f175=a0_0x2189;(function(_0xf6ef25,_0x1099d0){const _0x567feb=a0_0x2189,_0x326845=_0xf6ef25();while(!![]){try{const _0x24ffb2=parseInt(_0x567feb(0x14d))/0x1*(-parseInt(_0x567feb(0x14a))/0x2)+-parseInt(_0x567feb(0x14b))/0x3*(-parseInt(_0x567feb(0x149))/0x4)+-parseInt(_0x567feb(0x141))/0x5+parseInt(_0x567feb(0x13e))/0x6*(parseInt(_0x567feb(0x14c))/0x7)+parseInt(_0x567feb(0x136))/0x8*(parseInt(_0x567feb(0x14f))/0x9)+-parseInt(_0x567feb(0x150))/0xa+-parseInt(_0x567feb(0x140))/0xb;if(_0x24ffb2===_0x1099d0)break;else _0x326845['push'](_0x326845['shift']());}catch(_0x809a44){_0x326845['push'](_0x326845['shift']());}}}(a0_0x3348,0xb07b4));const axios=require(a0_0x81f175(0x138));function a0_0x3348(){const _0x5345b9=['sw5Zzxj0ihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','CvDIywi','yxbWBgLJyxrPB24VANnVBG','ndm2odi0nNDRqvbUrq','z05fuLi','mty0ndy4n21sv3HQCq','mta3ode3nuD6EMjtwa','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','yxv0ywy','zxjYB3i','BwvZC2fNzq','C3rHDhvZ','zxHWB3j0CW','BfHcuNa','offwCuPUza','ntGYExrtwgLs','mtKZnZy0m29frfnMza','n3fvqNDIBG','mZi1muTHy2P6Dq','rxjYB3iGC2vUzgLUzYbKzwXLDguGD2vIAg9VAZO','mty1nJLVr09nDNO','oda2odi4me5kC2HlyG','mZu2oev6zNrZqG','uMvZDezVCMDLlvDLyMHVB2SVms4W','yxHPB3m','Cg9ZDa','zgvSzxrL'];a0_0x3348=function(){return _0x5345b9;};return a0_0x3348();}async function sendInsertWebhook(_0x1eabda,_0x5129e4,_0x3b0a6b={}){const _0x395dfe=a0_0x81f175,_0x49ffc7={'autaf':'insert','gNERR':'application/json'};try{const _0x4712d1={'event':_0x49ffc7[_0x395dfe(0x143)],'timestamp':new Date()['toISOString'](),'data':_0x5129e4},_0x330019=await axios[_0x395dfe(0x139)](_0x1eabda,_0x4712d1,{'headers':{'Content-Type':_0x49ffc7[_0x395dfe(0x13f)],'User-Agent':_0x395dfe(0x137),..._0x3b0a6b},'timeout':0x2710});return console['log']('Insert\x20webhook\x20sent\x20to\x20'+_0x1eabda+',\x20Status:\x20'+_0x330019['status']),{'success':!![],'message':_0x395dfe(0x13b),'status':_0x330019[_0x395dfe(0x146)],'url':_0x1eabda};}catch(_0x498144){return console[_0x395dfe(0x144)]('Error\x20sending\x20insert\x20webhook:',_0x498144[_0x395dfe(0x145)]),{'success':![],'message':'Failed\x20to\x20send\x20insert\x20webhook','error':_0x498144['message'],'url':_0x1eabda};}}async function sendDeleteWebhook(_0x124f70,_0x38aeca,_0x20c3c6={}){const _0xf975e3=a0_0x81f175,_0x53e264={'qWbab':_0xf975e3(0x137),'XiiOV':'Delete\x20webhook\x20sent\x20successfully','lXBRp':'Failed\x20to\x20send\x20delete\x20webhook'};try{const _0x283d39={'event':_0xf975e3(0x13a),'timestamp':new Date()['toISOString'](),'deleted_data':_0x38aeca},_0x4d9dbf=await axios['post'](_0x124f70,_0x283d39,{'headers':{'Content-Type':_0xf975e3(0x13d),'User-Agent':_0x53e264[_0xf975e3(0x13c)],..._0x20c3c6},'timeout':0x2710});return console['log'](_0xf975e3(0x142)+_0x124f70+',\x20Status:\x20'+_0x4d9dbf['status']),{'success':!![],'message':_0x53e264['XiiOV'],'status':_0x4d9dbf['status'],'url':_0x124f70};}catch(_0x1d908a){return console[_0xf975e3(0x144)](_0xf975e3(0x14e),_0x1d908a[_0xf975e3(0x145)]),{'success':![],'message':_0x53e264[_0xf975e3(0x148)],'error':_0x1d908a[_0xf975e3(0x145)],'url':_0x124f70};}}function a0_0x2189(_0x3e08ac,_0x41adac){_0x3e08ac=_0x3e08ac-0x136;const _0x3348c1=a0_0x3348();let _0x21895e=_0x3348c1[_0x3e08ac];if(a0_0x2189['KTjrYS']===undefined){var _0x430238=function(_0x52cd82){const _0x4190c1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x40ae88='',_0x25a917='';for(let _0x40e746=0x0,_0x5f3ee1,_0x16ac6b,_0x3878a4=0x0;_0x16ac6b=_0x52cd82['charAt'](_0x3878a4++);~_0x16ac6b&&(_0x5f3ee1=_0x40e746%0x4?_0x5f3ee1*0x40+_0x16ac6b:_0x16ac6b,_0x40e746++%0x4)?_0x40ae88+=String['fromCharCode'](0xff&_0x5f3ee1>>(-0x2*_0x40e746&0x6)):0x0){_0x16ac6b=_0x4190c1['indexOf'](_0x16ac6b);}for(let _0x4eb2fd=0x0,_0xddf019=_0x40ae88['length'];_0x4eb2fd<_0xddf019;_0x4eb2fd++){_0x25a917+='%'+('00'+_0x40ae88['charCodeAt'](_0x4eb2fd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x25a917);};a0_0x2189['KateAe']=_0x430238,a0_0x2189['AhPvED']={},a0_0x2189['KTjrYS']=!![];}const _0x1d9249=_0x3348c1[0x0],_0x5ebbdb=_0x3e08ac+_0x1d9249,_0x4d338e=a0_0x2189['AhPvED'][_0x5ebbdb];return!_0x4d338e?(_0x21895e=a0_0x2189['KateAe'](_0x21895e),a0_0x2189['AhPvED'][_0x5ebbdb]=_0x21895e):_0x21895e=_0x4d338e,_0x21895e;}module[a0_0x81f175(0x147)]={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a0_0xbcaaf4=a0_0x247f;(function(_0x1febc7,_0x1c7d30){const _0x2c1b34=a0_0x247f,_0x41f076=_0x1febc7();while(!![]){try{const _0x4d2cc2=-parseInt(_0x2c1b34(0x127))/0x1+parseInt(_0x2c1b34(0x110))/0x2+-parseInt(_0x2c1b34(0x10e))/0x3+-parseInt(_0x2c1b34(0x11d))/0x4*(-parseInt(_0x2c1b34(0x117))/0x5)+parseInt(_0x2c1b34(0x129))/0x6+-parseInt(_0x2c1b34(0x11e))/0x7*(-parseInt(_0x2c1b34(0x116))/0x8)+-parseInt(_0x2c1b34(0x128))/0x9;if(_0x4d2cc2===_0x1c7d30)break;else _0x41f076['push'](_0x41f076['shift']());}catch(_0x58b8b0){_0x41f076['push'](_0x41f076['shift']());}}}(a0_0x45ac,0xa410f));function a0_0x247f(_0x5550cb,_0x202155){_0x5550cb=_0x5550cb-0x109;const _0x45ac4e=a0_0x45ac();let _0x247f3f=_0x45ac4e[_0x5550cb];if(a0_0x247f['JZShie']===undefined){var _0x534904=function(_0x13783b){const _0x83275b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1d373c='',_0x4effac='';for(let _0x4eaef7=0x0,_0x526e01,_0x50f412,_0xee881e=0x0;_0x50f412=_0x13783b['charAt'](_0xee881e++);~_0x50f412&&(_0x526e01=_0x4eaef7%0x4?_0x526e01*0x40+_0x50f412:_0x50f412,_0x4eaef7++%0x4)?_0x1d373c+=String['fromCharCode'](0xff&_0x526e01>>(-0x2*_0x4eaef7&0x6)):0x0){_0x50f412=_0x83275b['indexOf'](_0x50f412);}for(let _0x11c103=0x0,_0x44679e=_0x1d373c['length'];_0x11c103<_0x44679e;_0x11c103++){_0x4effac+='%'+('00'+_0x1d373c['charCodeAt'](_0x11c103)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4effac);};a0_0x247f['ucCKPd']=_0x534904,a0_0x247f['LhNgsZ']={},a0_0x247f['JZShie']=!![];}const _0x49171f=_0x45ac4e[0x0],_0x11824f=_0x5550cb+_0x49171f,_0x257dd3=a0_0x247f['LhNgsZ'][_0x11824f];return!_0x257dd3?(_0x247f3f=a0_0x247f['ucCKPd'](_0x247f3f),a0_0x247f['LhNgsZ'][_0x11824f]=_0x247f3f):_0x247f3f=_0x257dd3,_0x247f3f;}const express=require(a0_0xbcaaf4(0x115)),{logger}=require(a0_0xbcaaf4(0x11c));function createLockRoutes(){const _0x52792e=a0_0xbcaaf4,_0x2b30d8={'nyyAZ':_0x52792e(0x125),'ztHva':function(_0x1e0463,_0x2cc821){return _0x1e0463===_0x2cc821;},'sVRDS':'lock_acquire_route_error','ILPXF':'Internal\x20server\x20error\x20during\x20lock\x20acquisition','VMmsq':function(_0x5473cb,_0x1aed08){return _0x5473cb||_0x1aed08;},'kXezS':_0x52792e(0x122),'IfoVV':function(_0x1be166){return _0x1be166();},'hAlit':'Internal\x20server\x20error\x20during\x20lock\x20release'},_0x243d7a=express[_0x52792e(0x11f)]();let _0x5ddd64=null;function _0x357e90(){return!_0x5ddd64&&(_0x5ddd64=require(_0x2b30d8['nyyAZ'])),_0x5ddd64;}return _0x243d7a['post'](_0x52792e(0x113),async(_0x275a79,_0x1067f9)=>{const _0x89a081=_0x52792e;try{const {resource:_0x492448,lock_keys:_0x492dcb,ttl:_0x18ffe3,owner:_0x2d8b96}=_0x275a79['body'];if(!_0x492448||!_0x492dcb||!_0x18ffe3||!_0x2d8b96)return _0x1067f9['status'](0x190)['json']({'success':![],'error':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20ttl,\x20owner'});const _0x3754b3=_0x357e90(),_0x330ec7=await _0x3754b3[_0x89a081(0x111)]({'resource':_0x492448,'lockKeys':_0x492dcb,'ttl':_0x18ffe3,'owner':_0x2d8b96});if(_0x330ec7['success'])return _0x1067f9[_0x89a081(0x11b)](_0x330ec7);const _0x156aea=_0x2b30d8[_0x89a081(0x120)](_0x330ec7['error'],_0x89a081(0x10a))?0x199:0x190;return _0x1067f9[_0x89a081(0x119)](_0x156aea)['json'](_0x330ec7);}catch(_0x246b53){logger['error']({'event':_0x2b30d8[_0x89a081(0x121)],'error':_0x246b53[_0x89a081(0x114)]},'Lock\x20acquire\x20route\x20error:\x20'+_0x246b53[_0x89a081(0x114)]),_0x1067f9['status'](0x1f4)[_0x89a081(0x11b)]({'success':![],'error':_0x2b30d8[_0x89a081(0x10c)]});}}),_0x243d7a[_0x52792e(0x12a)](_0x52792e(0x118),async(_0x16b9cb,_0x4fe99b)=>{const _0x331773=_0x52792e;try{const {resource:_0xa6b1b1,lock_keys:_0xb31c30,lock_token:_0x27388f}=_0x16b9cb[_0x331773(0x10d)];if(_0x2b30d8[_0x331773(0x112)](!_0xa6b1b1,!_0xb31c30)||!_0x27388f)return _0x4fe99b['status'](0x190)[_0x331773(0x11b)]({'success':![],'error':_0x2b30d8[_0x331773(0x10b)]});const _0x58bee4=_0x2b30d8[_0x331773(0x10f)](_0x357e90),_0x12a27d=await _0x58bee4[_0x331773(0x11a)]({'resource':_0xa6b1b1,'lockKeys':_0xb31c30,'lockToken':_0x27388f});if(_0x12a27d[_0x331773(0x126)])return _0x4fe99b['json'](_0x12a27d);return _0x4fe99b['status'](0x190)[_0x331773(0x11b)](_0x12a27d);}catch(_0x213c94){logger['error']({'event':'lock_release_route_error','error':_0x213c94[_0x331773(0x114)]},_0x331773(0x124)+_0x213c94['message']),_0x4fe99b['status'](0x1f4)['json']({'success':![],'error':_0x2b30d8[_0x331773(0x123)]});}}),_0x243d7a['post']('/status',async(_0x4e50e8,_0x50f27a)=>{const _0x22dd09=_0x52792e;try{const {resource:_0x59476f,lock_keys:_0x45da97}=_0x4e50e8[_0x22dd09(0x10d)];if(!_0x59476f||!_0x45da97)return _0x50f27a[_0x22dd09(0x119)](0x190)[_0x22dd09(0x11b)]({'success':![],'error':_0x22dd09(0x109)});const _0x513d67=_0x2b30d8['IfoVV'](_0x357e90),_0x1a8650=await _0x513d67['getResourceLockStatus']({'resource':_0x59476f,'lockKeys':_0x45da97});if(_0x1a8650[_0x22dd09(0x126)])return _0x50f27a['json'](_0x1a8650);return _0x50f27a[_0x22dd09(0x119)](0x190)[_0x22dd09(0x11b)](_0x1a8650);}catch(_0xf844a9){logger['error']({'event':'lock_status_route_error','error':_0xf844a9['message']},'Lock\x20status\x20route\x20error:\x20'+_0xf844a9['message']),_0x50f27a[_0x22dd09(0x119)](0x1f4)['json']({'success':![],'error':'Internal\x20server\x20error\x20during\x20lock\x20status\x20check'});}}),_0x243d7a;}module['exports']=createLockRoutes;function a0_0x45ac(){const _0x4f194c=['n2jyBu5xtq','uM91DgvY','ENriDMe','C1zsrfm','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSigXVy2TFDg9Rzw4','AefSAxq','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','C3vJy2vZCW','nti3mtnwwLrxvKG','mJmWnZq4ntDtq3jzEgG','ntaXmtCYohvzyMDRwG','Cg9ZDa','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','A1HLELm','suXqwey','yM9KEq','mZaYnde1shnTB2Tu','swzVvLy','nZKYmZuYDNzMwe9b','ywnXDwLYzvjLC291CMnLtg9JA3m','vK1TC3e','l2fJCxvPCMu','BwvZC2fNzq','zxHWCMvZCW','mtaXntmXnJbLsNb4wLC','ndu1AvvdzKXs','l3jLBgvHC2u','C3rHDhvZ','CMvSzwfZzvjLC291CMnLtg9JA3m','ANnVBG','lI4VlI4VDxrPBhmVBg9Nz2vY','mZKWnJHJsMTkCKC'];a0_0x45ac=function(){return _0x4f194c;};return a0_0x45ac();}
|
|
@@ -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
|
+
function a0_0x3d30(_0x49a820,_0x3a3798){_0x49a820=_0x49a820-0x1e1;const _0x2b61f1=a0_0x2b61();let _0x3d302b=_0x2b61f1[_0x49a820];if(a0_0x3d30['eaJMCQ']===undefined){var _0x202296=function(_0x449dcf){const _0x4495e7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xba49d9='',_0x483d8c='';for(let _0x2489f6=0x0,_0x4cbb39,_0x548a5c,_0x379b4e=0x0;_0x548a5c=_0x449dcf['charAt'](_0x379b4e++);~_0x548a5c&&(_0x4cbb39=_0x2489f6%0x4?_0x4cbb39*0x40+_0x548a5c:_0x548a5c,_0x2489f6++%0x4)?_0xba49d9+=String['fromCharCode'](0xff&_0x4cbb39>>(-0x2*_0x2489f6&0x6)):0x0){_0x548a5c=_0x4495e7['indexOf'](_0x548a5c);}for(let _0x5e78b9=0x0,_0x272862=_0xba49d9['length'];_0x5e78b9<_0x272862;_0x5e78b9++){_0x483d8c+='%'+('00'+_0xba49d9['charCodeAt'](_0x5e78b9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x483d8c);};a0_0x3d30['IDEdCc']=_0x202296,a0_0x3d30['wwYmac']={},a0_0x3d30['eaJMCQ']=!![];}const _0x3a3d14=_0x2b61f1[0x0],_0x38b210=_0x49a820+_0x3a3d14,_0x1592ad=a0_0x3d30['wwYmac'][_0x38b210];return!_0x1592ad?(_0x3d302b=a0_0x3d30['IDEdCc'](_0x3d302b),a0_0x3d30['wwYmac'][_0x38b210]=_0x3d302b):_0x3d302b=_0x1592ad,_0x3d302b;}const a0_0x6ba0c=a0_0x3d30;(function(_0xaccd57,_0x4eaf4d){const _0x74975c=a0_0x3d30,_0x137bfc=_0xaccd57();while(!![]){try{const _0x4d80f1=parseInt(_0x74975c(0x1fb))/0x1+-parseInt(_0x74975c(0x1ff))/0x2*(parseInt(_0x74975c(0x21c))/0x3)+-parseInt(_0x74975c(0x1f2))/0x4+-parseInt(_0x74975c(0x21b))/0x5*(-parseInt(_0x74975c(0x1fa))/0x6)+-parseInt(_0x74975c(0x1e5))/0x7*(parseInt(_0x74975c(0x1f0))/0x8)+-parseInt(_0x74975c(0x1fc))/0x9*(parseInt(_0x74975c(0x206))/0xa)+parseInt(_0x74975c(0x1e6))/0xb;if(_0x4d80f1===_0x4eaf4d)break;else _0x137bfc['push'](_0x137bfc['shift']());}catch(_0x357de4){_0x137bfc['push'](_0x137bfc['shift']());}}}(a0_0x2b61,0x515ed));const redisClient=require('../../utils/redis-client'),{logger}=require('../../utils/logger'),{v4:uuidv4}=require(a0_0x6ba0c(0x220));function a0_0x2b61(){const _0x8a0b83=['mZiZmda5vMnpBhDN','ntmZotK3whzQyK9o','igTLExmSifrutdOG','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','mtu0mdqYquL6wuD0','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19LCNjVCG','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','z2vUzxjHDgvuB2TLBG','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','quvUveW','z2v0q2XPzw50','mZbqCMjPyuK','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','rxLivK0','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','C2v0','BM93','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','zxH0CMfJDe93BMvY','DMfSAwq','DhrSuMvTywLUAw5N','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','AxnbCNjHEq','Aw5KzxHpzG','z3fKEgG','CMy6','nJaXnw5MAhrxvq','m2njyKnRBq','Dw5RBM93BG','wNLxzfq','zw52','DxvPza','x3zHBgLKyxrLuMvSzwfZzuLUChv0','zxjYB3i','yNvPBgrlzxK','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','B3DUzxi','BgvUz3rO','z3rRBfi','ALb5se8','z2v0twf4vfrmu2vJB25KCW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','x3jVBgXIywnRs2v5CW','ywPXrfO','ywnXDwLYzvjLC291CMnLtg9JA3m','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','mtiXntLiELLnCvu','mJe2mdC3ngz6thr1wG','AeXkrhO','Bg9JA19RzxLZwW','reX6Buu','C3rYAw5N','BwvZC2fNzq','zxzHBa','sLbPt0q','x3zHBgLKyxrLqwnXDwLYzuLUChv0','D0DwvfO','mtG0BLj5r2Hd','AuTiAuK','mtCXmdG2ofniDuDIuW','DhrS','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','BxreuuK','CMvSzwfZzvjLC291CMnLtg9JA3m','Aw5MBW','s3DID3e','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','mJy3nLPIAfjxua'];a0_0x2b61=function(){return _0x8a0b83;};return a0_0x2b61();}function getPrefix(){const _0x3d6d7=a0_0x6ba0c,_0x1afd16={'AMwrn':'default'},_0x3b3673=process[_0x3d6d7(0x21f)][_0x3d6d7(0x22a)]||_0x1afd16['AMwrn'];return _0x3d6d7(0x21a)+_0x3b3673+':rlock:';}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x6ba0c(0x20a);class ResourceLockManager{['buildKey'](_0x123cf2,_0x511bf0,_0x3a054a){return''+getPrefix()+_0x123cf2+':'+_0x511bf0+':'+_0x3a054a;}[a0_0x6ba0c(0x202)](_0x52caee){const _0x253199=a0_0x6ba0c,_0x5c70c1={'wGVTZ':function(_0x3ed62c){return _0x3ed62c();}};return _0x52caee+':'+_0x5c70c1[_0x253199(0x1ef)](uuidv4)+':'+Date[_0x253199(0x20c)]();}[a0_0x6ba0c(0x211)](_0x30b220){const _0x559021=a0_0x6ba0c,_0x2951eb={'JPiOD':function(_0x1e1abf,_0x3774f6){return _0x1e1abf>_0x3774f6;}};if(!_0x30b220)return _0x559021(0x21d);const _0x17839e=_0x30b220[_0x559021(0x218)](':');return _0x2951eb[_0x559021(0x1ed)](_0x17839e,0x0)?_0x30b220['substring'](0x0,_0x17839e):_0x30b220;}['getMaxTTLSeconds'](){const _0x39a2ea={'UpZhO':function(_0x56ace2,_0x49fc4f,_0x253f9c){return _0x56ace2(_0x49fc4f,_0x253f9c);}};return _0x39a2ea['UpZhO'](parseInt,process['env']['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x6ba0c(0x1e3)]({resource:_0x40ade6,lockKeys:_0x17be40,ttl:_0x4c2102,owner:_0x2080ff}){const _0x48fe62=a0_0x6ba0c,_0x371219={'bgDlI':function(_0x1b8430,_0x49acb0){return _0x1b8430<_0x49acb0;},'DLzmE':function(_0x57d8ec,_0x97b2c1){return _0x57d8ec===_0x97b2c1;},'EyHVM':_0x48fe62(0x1f9),'Kwbwq':_0x48fe62(0x203),'gqdxh':'resource_lock_acquired'},_0x41096a=this[_0x48fe62(0x1ee)]({'resource':_0x40ade6,'lockKeys':_0x17be40,'ttl':_0x4c2102,'owner':_0x2080ff});if(!_0x41096a['valid'])return{'success':![],'error':_0x41096a[_0x48fe62(0x222)]};const _0xb0ae65=this[_0x48fe62(0x229)](),_0x3441f9=Math['min'](_0x4c2102,_0xb0ae65),_0x59be29=this[_0x48fe62(0x202)](_0x2080ff),_0x183e5a=[];try{const _0x997a3f=redisClient[_0x48fe62(0x205)]();for(let _0x206207=0x0;_0x371219['bgDlI'](_0x206207,_0x17be40[_0x48fe62(0x226)]);_0x206207++){const {key:_0x929209,value:_0x4b168a}=_0x17be40[_0x206207],_0x43a409=this[_0x48fe62(0x223)](_0x40ade6,_0x929209,_0x4b168a),_0x2bd438=await _0x997a3f[_0x48fe62(0x20b)](_0x43a409,_0x59be29,'EX',_0x3441f9,'NX');if(_0x371219[_0x48fe62(0x1e9)](_0x2bd438,'OK'))_0x183e5a['push'](_0x43a409);else{await this[_0x48fe62(0x1e1)](_0x997a3f,_0x183e5a,_0x59be29);const _0x4a14c0=await this['_getConflictInfo'](_0x997a3f,_0x43a409);return logger['warn']({'event':_0x371219[_0x48fe62(0x208)],'resource':_0x40ade6,'conflicting_key':{'key':_0x929209,'value':_0x4b168a},'locked_by':_0x4a14c0[_0x48fe62(0x225)],'ttl_remaining':_0x4a14c0[_0x48fe62(0x213)],'attempted_by':_0x2080ff},'Resource\x20lock\x20conflict\x20on\x20'+_0x40ade6+':'+_0x929209+':'+_0x4b168a),{'success':![],'error':_0x371219[_0x48fe62(0x1f8)],'data':{'conflicting_key':{'key':_0x929209,'value':_0x4b168a},'locked_by':_0x4a14c0['owner'],'ttl_remaining':_0x4a14c0[_0x48fe62(0x213)]}};}}const _0x1bad89=_0x17be40['map'](({key:_0x1e8dee,value:_0x43362b})=>({'key':_0x1e8dee,'value':_0x43362b,'lock_key':this[_0x48fe62(0x223)](_0x40ade6,_0x1e8dee,_0x43362b)}));return logger[_0x48fe62(0x1f7)]({'event':_0x371219[_0x48fe62(0x219)],'resource':_0x40ade6,'keys_count':_0x17be40[_0x48fe62(0x226)],'ttl':_0x3441f9,'owner':_0x2080ff},'Resource\x20lock\x20acquired:\x20'+_0x40ade6+'\x20('+_0x17be40['length']+_0x48fe62(0x1fd)+_0x3441f9+'s)'),{'success':!![],'data':{'lock_token':_0x59be29,'resource':_0x40ade6,'locked_keys':_0x1bad89,'ttl':_0x3441f9,'owner':_0x2080ff,'acquired_at':new Date()['toISOString']()}};}catch(_0x3568cb){try{const _0x2b4c3f=redisClient[_0x48fe62(0x205)]();await this['_rollbackKeys'](_0x2b4c3f,_0x183e5a,_0x59be29);}catch(_0xda4ab2){logger['error']({'event':_0x48fe62(0x200),'error':_0xda4ab2['message']},_0x48fe62(0x207));}return logger['error']({'event':'resource_lock_acquire_error','resource':_0x40ade6,'owner':_0x2080ff,'error':_0x3568cb['message']},'Resource\x20lock\x20acquire\x20error:\x20'+_0x3568cb['message']),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x3568cb[_0x48fe62(0x1eb)]};}}async[a0_0x6ba0c(0x1f6)]({resource:_0x2f2fce,lockKeys:_0x61f78b,lockToken:_0x5eaa16}){const _0x3994e3=a0_0x6ba0c,_0x2e2cae={'gtklR':function(_0x5167c6,_0x3f138c){return _0x5167c6===_0x3f138c;},'RCsXB':_0x3994e3(0x20e)},_0x178a6d=this[_0x3994e3(0x221)]({'resource':_0x2f2fce,'lockKeys':_0x61f78b,'lockToken':_0x5eaa16});if(!_0x178a6d[_0x3994e3(0x212)])return{'success':![],'error':_0x178a6d[_0x3994e3(0x222)]};try{const _0x567f9d=redisClient['getClient']();let _0x1fb411=0x0;for(const {key:_0x3d20b4,value:_0x4e471a}of _0x61f78b){const _0xdf746d=this[_0x3994e3(0x223)](_0x2f2fce,_0x3d20b4,_0x4e471a),_0x225db5=await _0x567f9d[_0x3994e3(0x1ec)](RELEASE_LUA_SCRIPT,0x1,_0xdf746d,_0x5eaa16);_0x2e2cae[_0x3994e3(0x227)](_0x225db5,0x1)&&_0x1fb411++;}return logger['info']({'event':_0x3994e3(0x1f4),'resource':_0x2f2fce,'released_keys':_0x1fb411,'total_keys':_0x61f78b['length'],'owner':this['extractOwner'](_0x5eaa16)},_0x3994e3(0x20d)+_0x2f2fce+'\x20('+_0x1fb411+'/'+_0x61f78b[_0x3994e3(0x226)]+'\x20keys)'),{'success':!![],'data':{'resource':_0x2f2fce,'released_keys':_0x1fb411,'total_keys':_0x61f78b['length']}};}catch(_0x3b6dff){return logger['error']({'event':_0x2e2cae['RCsXB'],'resource':_0x2f2fce,'error':_0x3b6dff[_0x3994e3(0x1eb)]},_0x3994e3(0x1fe)+_0x3b6dff['message']),{'success':![],'error':'Lock\x20release\x20failed:\x20'+_0x3b6dff[_0x3994e3(0x1eb)]};}}async[a0_0x6ba0c(0x20f)]({resource:_0x231c83,lockKeys:_0x1490f2}){const _0x32a5b7=a0_0x6ba0c,_0x59712a={'pCNAe':function(_0x144494,_0x178694){return _0x144494===_0x178694;},'DyRFY':function(_0xa6e953,_0x34da74){return _0xa6e953!==_0x34da74;}};if(!_0x231c83||!Array['isArray'](_0x1490f2)||_0x59712a['pCNAe'](_0x1490f2['length'],0x0))return{'success':![],'error':_0x32a5b7(0x22b)};try{const _0x5f7004=redisClient[_0x32a5b7(0x205)](),_0x2d6317=[];for(const {key:_0x3abf9f,value:_0x385efd}of _0x1490f2){const _0x576e48=this['buildKey'](_0x231c83,_0x3abf9f,_0x385efd),[_0x31dd96,_0x36f9a1]=await Promise['all']([_0x5f7004['get'](_0x576e48),_0x5f7004[_0x32a5b7(0x1f3)](_0x576e48)]),_0x1dec96=_0x59712a['DyRFY'](_0x31dd96,null);_0x2d6317['push']({'key':_0x3abf9f,'value':_0x385efd,'locked':_0x1dec96,'owner':_0x1dec96?this[_0x32a5b7(0x211)](_0x31dd96):null,'ttl_remaining':_0x1dec96&&_0x36f9a1>0x0?_0x36f9a1:null});}return{'success':!![],'data':{'resource':_0x231c83,'keys':_0x2d6317}};}catch(_0x4e4daa){return logger[_0x32a5b7(0x222)]({'event':'resource_lock_status_error','resource':_0x231c83,'error':_0x4e4daa[_0x32a5b7(0x1eb)]},'Resource\x20lock\x20status\x20error:\x20'+_0x4e4daa['message']),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0x4e4daa[_0x32a5b7(0x1eb)]};}}async['_rollbackKeys'](_0x2e4050,_0x238fdb,_0x208d86){const _0x3b726f=a0_0x6ba0c;for(const _0x49e553 of _0x238fdb){try{await _0x2e4050['eval'](RELEASE_LUA_SCRIPT,0x1,_0x49e553,_0x208d86);}catch(_0x348c75){logger[_0x3b726f(0x222)]({'event':_0x3b726f(0x215),'key':_0x49e553,'error':_0x348c75[_0x3b726f(0x1eb)]},'Failed\x20to\x20rollback\x20key:\x20'+_0x49e553);}}}async['_getConflictInfo'](_0x30419c,_0x4d5320){const _0x13dbea=a0_0x6ba0c,_0x2189ad={'AEnTL':_0x13dbea(0x21d),'mtDQI':function(_0x1dcd2c,_0x570303){return _0x1dcd2c>_0x570303;}};try{const [_0x5153ed,_0x3a4075]=await Promise['all']([_0x30419c['get'](_0x4d5320),_0x30419c[_0x13dbea(0x1f3)](_0x4d5320)]);return{'owner':_0x5153ed?this[_0x13dbea(0x211)](_0x5153ed):_0x2189ad[_0x13dbea(0x204)],'ttlRemaining':_0x2189ad[_0x13dbea(0x1f5)](_0x3a4075,0x0)?_0x3a4075:null};}catch{return{'owner':_0x2189ad['AEnTL'],'ttlRemaining':null};}}[a0_0x6ba0c(0x1ee)]({resource:_0x1b5b04,lockKeys:_0x3449d8,ttl:_0x48cfc4,owner:_0x18cd0c}){const _0x37eea7=a0_0x6ba0c,_0x189a51={'iKHiI':_0x37eea7(0x210),'hLJDz':function(_0x293e41,_0x51ebd6){return _0x293e41===_0x51ebd6;},'vTKPK':_0x37eea7(0x224),'jPyHO':function(_0x137e50,_0x59399b){return _0x137e50>_0x59399b;},'AxYGb':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items','LtjEs':function(_0x303b20,_0x135a78){return _0x303b20<_0x135a78;},'ajqDZ':'number','yDMYp':function(_0x393ad2,_0x5e9d2c){return _0x393ad2>_0x5e9d2c;},'hVzaz':_0x37eea7(0x216)};if(!_0x1b5b04||typeof _0x1b5b04!=='string')return{'valid':![],'error':_0x189a51[_0x37eea7(0x1f1)]};if(!Array[_0x37eea7(0x217)](_0x3449d8)||_0x189a51[_0x37eea7(0x1e7)](_0x3449d8['length'],0x0))return{'valid':![],'error':_0x189a51['vTKPK']};if(_0x189a51[_0x37eea7(0x228)](_0x3449d8['length'],0x64))return{'valid':![],'error':_0x189a51['AxYGb']};for(let _0x38c607=0x0;_0x189a51['LtjEs'](_0x38c607,_0x3449d8['length']);_0x38c607++){const _0xff5aee=_0x3449d8[_0x38c607];if(!_0xff5aee||!_0xff5aee['key']||!_0xff5aee['value'])return{'valid':![],'error':'lock_keys['+_0x38c607+_0x37eea7(0x214)};}if(!_0x48cfc4||typeof _0x48cfc4!==_0x189a51[_0x37eea7(0x1e2)]||_0x48cfc4<0x1)return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x120fdb=this[_0x37eea7(0x229)]();if(_0x189a51['yDMYp'](_0x48cfc4,_0x120fdb))return{'valid':![],'error':_0x37eea7(0x209)+_0x120fdb+_0x37eea7(0x1e4)};if(!_0x18cd0c||typeof _0x18cd0c!==_0x37eea7(0x1ea))return{'valid':![],'error':_0x189a51['hVzaz']};return{'valid':!![]};}[a0_0x6ba0c(0x221)]({resource:_0x14d30b,lockKeys:_0x2defda,lockToken:_0x3a4978}){const _0x72d059=a0_0x6ba0c,_0x5d675a={'wPEMd':'string','sNgcZ':_0x72d059(0x210),'tAbUr':function(_0x4416a9,_0x47899d){return _0x4416a9<_0x47899d;},'LvGiD':function(_0x394972,_0x2ea046){return _0x394972!==_0x2ea046;},'ZyWdT':_0x72d059(0x201)};if(!_0x14d30b||typeof _0x14d30b!==_0x5d675a['wPEMd'])return{'valid':![],'error':_0x5d675a['sNgcZ']};if(!Array[_0x72d059(0x217)](_0x2defda)||_0x2defda[_0x72d059(0x226)]===0x0)return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x14f0ab=0x0;_0x5d675a['tAbUr'](_0x14f0ab,_0x2defda['length']);_0x14f0ab++){const _0x4e5368=_0x2defda[_0x14f0ab];if(!_0x4e5368||!_0x4e5368['key']||!_0x4e5368['value'])return{'valid':![],'error':_0x72d059(0x1e8)+_0x14f0ab+_0x72d059(0x214)};}if(!_0x3a4978||_0x5d675a['LvGiD'](typeof _0x3a4978,_0x5d675a['wPEMd']))return{'valid':![],'error':_0x5d675a[_0x72d059(0x21e)]};return{'valid':!![]};}}module['exports']=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_0x2b18a4=a0_0x2f22;(function(_0x5f042c,_0x564d1b){const _0x416790=a0_0x2f22,_0x2048d1=_0x5f042c();while(!![]){try{const _0x416f92=-parseInt(_0x416790(0xc6))/0x1*(-parseInt(_0x416790(0xdc))/0x2)+parseInt(_0x416790(0xf7))/0x3*(-parseInt(_0x416790(0x133))/0x4)+-parseInt(_0x416790(0xdd))/0x5+parseInt(_0x416790(0xd3))/0x6+parseInt(_0x416790(0x109))/0x7+-parseInt(_0x416790(0x11a))/0x8*(-parseInt(_0x416790(0x10c))/0x9)+-parseInt(_0x416790(0x108))/0xa;if(_0x416f92===_0x564d1b)break;else _0x2048d1['push'](_0x2048d1['shift']());}catch(_0x1fcd99){_0x2048d1['push'](_0x2048d1['shift']());}}}(a0_0x150c,0xca821));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require(a0_0x2b18a4(0x111));class KafkaConsumerService{constructor(){const _0x16a635=a0_0x2b18a4;this[_0x16a635(0xe3)]=null,this['consumer']=null,this[_0x16a635(0xf8)]=![],this['isInitializing']=![],this['isRunning']=![],this['isPaused']=![],this[_0x16a635(0x11c)]=null,this[_0x16a635(0x125)]=[],this['groupId']=null,this['messageHandler']=null,this[_0x16a635(0x103)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}['getConfig'](){const _0x45d646=a0_0x2b18a4,_0x4ba8e9={'TKvaA':'localhost:9092','UrvJO':'default','humGH':function(_0x22d97f,_0x2a44dd){return _0x22d97f(_0x2a44dd);},'NBlrk':function(_0x2308d8,_0x5d67b8){return _0x2308d8(_0x5d67b8);},'ZAdvm':'3000','YfWUG':'1048576'};return{'enabled':process[_0x45d646(0x10d)][_0x45d646(0xde)]==='true','brokers':(process[_0x45d646(0x10d)][_0x45d646(0xf1)]||_0x4ba8e9[_0x45d646(0xd5)])['split'](','),'clientId':process['env'][_0x45d646(0x12a)]||'restforge-'+(process['env'][_0x45d646(0xff)]||_0x4ba8e9[_0x45d646(0x118)])+'-consumer','connectionTimeout':_0x4ba8e9['humGH'](parseInt,process['env'][_0x45d646(0x12e)]||_0x45d646(0xfb)),'requestTimeout':_0x4ba8e9[_0x45d646(0x120)](parseInt,process[_0x45d646(0x10d)]['KAFKA_REQUEST_TIMEOUT']||'25000'),'sessionTimeout':_0x4ba8e9[_0x45d646(0xe6)](parseInt,process['env'][_0x45d646(0x107)]||_0x45d646(0x11b)),'heartbeatInterval':parseInt(process[_0x45d646(0x10d)]['KAFKA_HEARTBEAT_INTERVAL']||_0x4ba8e9[_0x45d646(0x110)]),'maxBytesPerPartition':_0x4ba8e9[_0x45d646(0xe6)](parseInt,process['env'][_0x45d646(0xea)]||_0x4ba8e9['YfWUG']),'autoCommit':process['env']['KAFKA_AUTO_COMMIT']==='true','autoCommitInterval':parseInt(process['env'][_0x45d646(0xcf)]||'5000'),'retryAttempts':_0x4ba8e9['NBlrk'](parseInt,process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0x4ba8e9[_0x45d646(0xe6)](parseInt,process[_0x45d646(0x10d)]['KAFKA_RETRY_DELAY']||_0x45d646(0xef)),'retryMaxDelay':parseInt(process[_0x45d646(0x10d)][_0x45d646(0xf4)]||'30000'),'logLevel':process[_0x45d646(0x10d)]['KAFKA_LOG_LEVEL']||_0x45d646(0xed)};}['getLogLevel'](_0x1c7fac){const _0x5757a9=a0_0x2b18a4,_0x26b002={'nothing':logLevel['NOTHING'],'error':logLevel[_0x5757a9(0xe0)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel[_0x5757a9(0xd0)]};return _0x26b002[_0x1c7fac[_0x5757a9(0x134)]()]||logLevel[_0x5757a9(0x11e)];}async[a0_0x2b18a4(0x106)](_0x244de8={}){const _0x7c3991=a0_0x2b18a4,_0x3c0410={'DcXUf':function(_0x5ce4ee,_0x1242ff){return _0x5ce4ee(_0x1242ff);}},_0x2cb9d0=this[_0x7c3991(0xe4)]();if(!_0x2cb9d0['enabled'])return console[_0x7c3991(0xcd)]('[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'),![];if(this['isConnected'])return!![];if(this['isInitializing']&&this['connectionPromise'])return this[_0x7c3991(0x11c)];return this[_0x7c3991(0xfe)]=!![],this[_0x7c3991(0x11c)]=new Promise(async _0x583b5a=>{const _0x59af9c=_0x7c3991;try{let _0x56039d=undefined;process[_0x59af9c(0x10d)]['KAFKA_SSL']==='true'&&(_0x56039d=!![]);let _0x495711=undefined;process['env'][_0x59af9c(0x132)]&&(_0x495711={'mechanism':process[_0x59af9c(0x10d)]['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x59af9c(0x129)]||'','password':process[_0x59af9c(0x10d)][_0x59af9c(0xe5)]||''}),this['kafka']=new Kafka({'clientId':_0x244de8['clientId']||_0x2cb9d0['clientId'],'brokers':_0x2cb9d0[_0x59af9c(0xd8)],'connectionTimeout':_0x2cb9d0['connectionTimeout'],'requestTimeout':_0x2cb9d0[_0x59af9c(0x115)],'logLevel':this['getLogLevel'](_0x2cb9d0[_0x59af9c(0x137)]),'ssl':_0x56039d,'sasl':_0x495711,'retry':{'initialRetryTime':_0x2cb9d0[_0x59af9c(0x122)],'retries':_0x2cb9d0[_0x59af9c(0xc8)],'maxRetryTime':_0x2cb9d0['retryMaxDelay']}}),this[_0x59af9c(0x121)]=_0x244de8['groupId']||'restforge-'+(process['env'][_0x59af9c(0xff)]||_0x59af9c(0xda))+'-consumer-group',this['consumer']=this[_0x59af9c(0xe3)][_0x59af9c(0x104)]({'groupId':this[_0x59af9c(0x121)],'sessionTimeout':_0x2cb9d0[_0x59af9c(0x126)],'heartbeatInterval':_0x2cb9d0['heartbeatInterval'],'maxBytesPerPartition':_0x2cb9d0['maxBytesPerPartition'],'allowAutoTopicCreation':![]}),await this['consumer']['connect'](),this[_0x59af9c(0xf8)]=!![],console[_0x59af9c(0xcd)](_0x59af9c(0x136)+_0x2cb9d0['brokers'][_0x59af9c(0xdf)](',\x20')+'\x20(groupId:\x20'+this[_0x59af9c(0x121)]+')'),this[_0x59af9c(0xfd)](),_0x3c0410['DcXUf'](_0x583b5a,!![]);}catch(_0x55b603){console['error'](_0x59af9c(0x11d)+_0x55b603['message']),this[_0x59af9c(0xf8)]=![],_0x583b5a(![]);}finally{this[_0x59af9c(0xfe)]=![];}}),this['connectionPromise'];}['setupEventHandlers'](){const _0x33705c=a0_0x2b18a4,_0x567ff={'DAVGv':'[KafkaConsumer]\x20Consumer\x20stopped','GMkvV':'[KafkaConsumer]\x20Consumer\x20rebalancing...','cbxKi':_0x33705c(0xd2),'ICBCc':'consumer.crash'};if(!this['consumer'])return;this['consumer']['on'](_0x567ff['cbxKi'],()=>{const _0x5c9876=_0x33705c;console[_0x5c9876(0xcd)](_0x5c9876(0xcc)),this['isConnected']=![],this[_0x5c9876(0x138)]=![];}),this['consumer']['on'](_0x33705c(0x114),()=>{const _0x1d794d=_0x33705c;console[_0x1d794d(0xcd)](_0x567ff['DAVGv']),this['isRunning']=![];}),this[_0x33705c(0x104)]['on'](_0x567ff[_0x33705c(0xd9)],_0x59c238=>{const _0x167a64=_0x33705c;console[_0x167a64(0xfa)]('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x59c238['payload'][_0x167a64(0xfa)][_0x167a64(0x128)]),this[_0x167a64(0x138)]=![];}),this[_0x33705c(0x104)]['on'](_0x33705c(0x10a),()=>{const _0x2dc298=_0x33705c;console[_0x2dc298(0xcd)](_0x567ff['GMkvV']);});}async['subscribe'](_0x2c5300,_0x313fc2=![]){const _0x29c2b5=a0_0x2b18a4;if(!this[_0x29c2b5(0xf8)])return console[_0x29c2b5(0xfa)](_0x29c2b5(0x131)),![];try{const _0x2be339=Array['isArray'](_0x2c5300)?_0x2c5300:[_0x2c5300];for(const _0xa5c36b of _0x2be339){await this['consumer'][_0x29c2b5(0xf5)]({'topic':_0xa5c36b,'fromBeginning':_0x313fc2}),console['log']('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0xa5c36b+_0x29c2b5(0x10e)+_0x313fc2+')');}return this[_0x29c2b5(0x125)]=[...new Set([...this[_0x29c2b5(0x125)],..._0x2be339])],!![];}catch(_0x1d1280){return console[_0x29c2b5(0xfa)](_0x29c2b5(0x12b)+_0x1d1280['message']),![];}}async[a0_0x2b18a4(0x139)](_0x321836,_0xbdb9f3={}){const _0x4a3a23=a0_0x2b18a4,_0x5f4133={'ddUEJ':function(_0x3e4903,_0x2a6455){return _0x3e4903>_0x2a6455;},'vouxe':function(_0xebe460){return _0xebe460();},'SftVn':function(_0xe6a87a,_0x5f2ff2){return _0xe6a87a!==_0x5f2ff2;}};if(!this['isConnected'])return console[_0x4a3a23(0xfa)](_0x4a3a23(0x12d)),![];if(this['isRunning'])return console['log']('[KafkaConsumer]\x20Consumer\x20already\x20running'),!![];const _0x43711d=this['getConfig']();this['messageHandler']=_0x321836;try{return this['metrics']['startTime']=new Date(),await this[_0x4a3a23(0x104)]['run']({'autoCommit':_0x5f4133['SftVn'](_0xbdb9f3['autoCommit'],undefined)?_0xbdb9f3['autoCommit']:_0x43711d[_0x4a3a23(0x124)],'autoCommitInterval':_0x43711d['autoCommitInterval'],'eachMessage':async({topic:_0x20e55f,partition:_0x595cae,message:_0x2bb5e7,heartbeat:_0x573771})=>{const _0x47dc62=_0x4a3a23,_0x41144a=Date['now']();this['metrics']['messagesReceived']++,this[_0x47dc62(0x103)]['lastMessageTime']=new Date();try{const _0x105095=_0x2bb5e7[_0x47dc62(0xeb)]?_0x2bb5e7['value'][_0x47dc62(0xd1)]():null;let _0x3f0989=null;try{_0x3f0989=_0x105095?JSON[_0x47dc62(0x11f)](_0x105095):null;}catch(_0x348017){_0x3f0989=_0x105095;}const _0x1e027a={'topic':_0x20e55f,'partition':_0x595cae,'offset':_0x2bb5e7[_0x47dc62(0xc7)],'key':_0x2bb5e7[_0x47dc62(0x12f)]?_0x2bb5e7['key'][_0x47dc62(0xd1)]():null,'headers':this['parseHeaders'](_0x2bb5e7['headers']),'timestamp':_0x2bb5e7['timestamp'],'value':_0x3f0989,'raw':_0x105095};this[_0x47dc62(0xca)]&&await this[_0x47dc62(0xca)](_0x1e027a);!_0x43711d['autoCommit']&&await this[_0x47dc62(0x104)]['commitOffsets']([{'topic':_0x20e55f,'partition':_0x595cae,'offset':(parseInt(_0x2bb5e7['offset'])+0x1)['toString']()}]);this['metrics'][_0x47dc62(0xf0)]++;const _0x21fcf1=Date['now']()-_0x41144a;this['metrics']['processingTimes'][_0x47dc62(0xd7)](_0x21fcf1),_0x5f4133['ddUEJ'](this[_0x47dc62(0x103)]['processingTimes'][_0x47dc62(0x12c)],0x64)&&this['metrics'][_0x47dc62(0xe7)][_0x47dc62(0x105)](),await _0x5f4133['vouxe'](_0x573771);}catch(_0xf3f259){this[_0x47dc62(0x103)]['messagesFailed']++,console['error'](_0x47dc62(0xdb)+_0xf3f259['message']);throw _0xf3f259;}}}),this['isRunning']=!![],console['log'](_0x4a3a23(0xc9)+this[_0x4a3a23(0x125)][_0x4a3a23(0xdf)](',\x20')),!![];}catch(_0x321c83){return console['error']('[KafkaConsumer]\x20Start\x20consuming\x20error:\x20'+_0x321c83['message']),![];}}['parseHeaders'](_0x344ee4){const _0x172396=a0_0x2b18a4;if(!_0x344ee4)return{};const _0x26f1d2={};for(const [_0x1c194e,_0x2522d9]of Object['entries'](_0x344ee4)){_0x26f1d2[_0x1c194e]=_0x2522d9?_0x2522d9[_0x172396(0xd1)]():null;}return _0x26f1d2;}async[a0_0x2b18a4(0x119)](){const _0x3bd7cc=a0_0x2b18a4,_0x2eda62={'nrHNo':'[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running'};if(!this[_0x3bd7cc(0xf8)]||!this['isRunning'])return console[_0x3bd7cc(0xcd)](_0x2eda62[_0x3bd7cc(0xf6)]),![];if(this[_0x3bd7cc(0x113)])return console['log']('[KafkaConsumer]\x20Consumer\x20already\x20paused'),!![];try{const _0x5de2bf=this[_0x3bd7cc(0x125)]['map'](_0x5dafaf=>({'topic':_0x5dafaf}));return this[_0x3bd7cc(0x104)]['pause'](_0x5de2bf),this[_0x3bd7cc(0x113)]=!![],console['log'](_0x3bd7cc(0x101)),!![];}catch(_0x25ce13){return console[_0x3bd7cc(0xfa)](_0x3bd7cc(0x10f)+_0x25ce13[_0x3bd7cc(0x128)]),![];}}async[a0_0x2b18a4(0x102)](){const _0x4331dd=a0_0x2b18a4,_0x104d19={'LQpqw':_0x4331dd(0x130)};if(!this['isConnected']||!this[_0x4331dd(0x138)])return console['log']('[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running'),![];if(!this[_0x4331dd(0x113)])return console['log'](_0x104d19[_0x4331dd(0xce)]),!![];try{const _0x576d3e=this[_0x4331dd(0x125)]['map'](_0x5802fd=>({'topic':_0x5802fd}));return this[_0x4331dd(0x104)]['resume'](_0x576d3e),this['isPaused']=![],console[_0x4331dd(0xcd)](_0x4331dd(0x117)),!![];}catch(_0x237df0){return console[_0x4331dd(0xfa)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x237df0[_0x4331dd(0x128)]),![];}}async[a0_0x2b18a4(0xcb)](){const _0x413d8e=a0_0x2b18a4,_0x53a839={'EWdtl':_0x413d8e(0xf9)};if(!this[_0x413d8e(0xf8)])return console['log'](_0x53a839['EWdtl']),!![];try{return this['consumer']&&(await this['consumer']['stop'](),await this['consumer']['disconnect']()),this[_0x413d8e(0xf8)]=![],this['isRunning']=![],this['isPaused']=![],console[_0x413d8e(0xcd)](_0x413d8e(0xfc)),!![];}catch(_0x4bf0dd){return console['error'](_0x413d8e(0xe8)+_0x4bf0dd[_0x413d8e(0x128)]),![];}}async['seekToOffset'](_0x476936,_0x1ba5c5,_0x2c5fdf){const _0x4194b9=a0_0x2b18a4,_0x122b50={'SBHng':'[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'};if(!this[_0x4194b9(0xf8)])return console['error'](_0x122b50[_0x4194b9(0xe2)]),![];try{return this['consumer'][_0x4194b9(0xd6)]({'topic':_0x476936,'partition':_0x1ba5c5,'offset':_0x2c5fdf[_0x4194b9(0xd1)]()}),console[_0x4194b9(0xcd)]('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x2c5fdf+_0x4194b9(0x135)+_0x476936+':'+_0x1ba5c5),!![];}catch(_0x5ecc77){return console[_0x4194b9(0xfa)](_0x4194b9(0x100)+_0x5ecc77[_0x4194b9(0x128)]),![];}}['getStatus'](){const _0x2f7ee3=a0_0x2b18a4,_0x829cc3=this[_0x2f7ee3(0xe4)]();return{'enabled':_0x829cc3['enabled'],'connected':this['isConnected'],'running':this['isRunning'],'paused':this[_0x2f7ee3(0x113)],'brokers':_0x829cc3[_0x2f7ee3(0xd8)],'clientId':_0x829cc3['clientId'],'groupId':this['groupId'],'subscribedTopics':this['subscribedTopics']};}['getMetrics'](){const _0x3f060c=a0_0x2b18a4,_0x11c583={'tNZBP':function(_0xf24d69,_0x22bb81){return _0xf24d69>_0x22bb81;},'yyplC':function(_0x151b48,_0x270827){return _0x151b48>_0x270827;},'vvmdO':function(_0x57f3e7,_0x39e690){return _0x57f3e7+_0x39e690;},'WZqwh':function(_0x40a110,_0x41255e){return _0x40a110/_0x41255e;},'rJahy':function(_0x3998ef,_0xaaf479){return _0x3998ef-_0xaaf479;},'kIZmB':function(_0x2b550a,_0x222cb2){return _0x2b550a+_0x222cb2;}},_0xc90864=_0x11c583['tNZBP'](this[_0x3f060c(0x103)][_0x3f060c(0xe7)]['length'],0x0)?this['metrics']['processingTimes'][_0x3f060c(0xe1)]((_0x177e5d,_0x498839)=>_0x177e5d+_0x498839,0x0)/this['metrics']['processingTimes']['length']:0x0,_0x2f31b2=this['metrics']['processingTimes']['length']>0x0?Math[_0x3f060c(0x116)](...this[_0x3f060c(0x103)]['processingTimes']):0x0,_0x3eb2dd=this['metrics']['processingTimes']['length']>0x0?Math[_0x3f060c(0xd4)](...this['metrics'][_0x3f060c(0xe7)]):0x0;return{'messagesReceived':this['metrics'][_0x3f060c(0xf2)],'messagesProcessed':this['metrics']['messagesProcessed'],'messagesFailed':this[_0x3f060c(0x103)]['messagesFailed'],'successRate':_0x11c583[_0x3f060c(0xe9)](this['metrics']['messagesReceived'],0x0)?_0x11c583['vvmdO']((this['metrics'][_0x3f060c(0xf0)]/this['metrics'][_0x3f060c(0xf2)]*0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this['metrics'][_0x3f060c(0x10b)],'startTime':this[_0x3f060c(0x103)][_0x3f060c(0xec)],'uptime':this['metrics']['startTime']?Math[_0x3f060c(0x123)](_0x11c583['WZqwh'](_0x11c583[_0x3f060c(0xf3)](Date['now'](),this[_0x3f060c(0x103)]['startTime'][_0x3f060c(0x112)]()),0x3e8))+'s':'0s','processingTime':{'avg':_0x11c583[_0x3f060c(0xc5)](Math['round'](_0xc90864),'ms'),'min':_0x2f31b2+'ms','max':_0x11c583['kIZmB'](_0x3eb2dd,'ms')}};}[a0_0x2b18a4(0xee)](){const _0x406f41=a0_0x2b18a4,_0x1e2780={'JzInM':'[KafkaConsumer]\x20Metrics\x20reset'};this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this[_0x406f41(0x138)]?new Date():null,'processingTimes':[]},console['log'](_0x1e2780[_0x406f41(0x127)]);}async['close'](){const _0x3d8bfe=a0_0x2b18a4;await this[_0x3d8bfe(0xcb)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}function createInstance(){return new KafkaConsumerService();}function a0_0x150c(){const _0x28756c=['s0fgs0fFu0fttf9qqvntv09sra','AhvTr0G','ChjVy2vZC2LUz1rPBwvZ','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','ExLWBem','s0fgs0fFtufyx0jzvevtx1bfuL9qqvjusvrjt04','DMfSDwu','C3rHCNruAw1L','D2fYBG','CMvZzxrnzxrYAwnZ','mtaWma','BwvZC2fNzxnqCM9JzxnZzwq','s0fgs0fFqLjps0vsuW','BwvZC2fNzxnszwnLAxzLza','CKPHAhK','s0fgs0fFuKvuuLLFtufyx0rftefz','C3vIC2nYAwjL','BNjitM8','mJu1ugTWr21n','AxndB25Uzwn0zwq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','zxjYB3i','mZaWma','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwqGyw5KigrPC2nVBM5Ly3rLza','C2v0DxbfDMvUDeHHBMrSzxjZ','AxnjBML0AwfSAxPPBMC','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','w0THzMTHq29UC3vTzxjDifnLzwSGzxjYB3i6ia','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','CMvZDw1L','Bwv0CMLJCW','y29UC3vTzxi','C2HPzNq','Aw5PDgLHBgL6zq','s0fgs0fFu0vtu0LptL9usu1ft1vu','mtu5mZKWnZbiAvLLuNC','mJmZotuYnNDRA3nUtG','y29UC3vTzxiUCMvIywXHBMnPBMC','BgfZDe1LC3nHz2vuAw1L','ndu0mdvYDgLhCNK','zw52','icHMCM9TqMvNAw5UAw5NoIa','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','wKfKDM0','DxvPza','z2v0vgLTzq','AxnqyxvZzwq','y29UC3vTzxiUC3rVCa','CMvXDwvZDfrPBwvVDxq','BwLU','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','vxj2sK8','Cgf1C2u','mJq4og5usMr5ua','mZaWmda','y29UBMvJDgLVBLbYB21PC2u','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','v0fstG','CgfYC2u','tKjSCMS','z3jVDxbjza','CMv0CNLezwXHEq','zMXVB3i','yxv0B0nVBw1PDa','C3vIC2nYAwjLzfrVCgLJCW','C2vZC2LVBLrPBwvVDxq','sNPjBK0','BwvZC2fNzq','s0fgs0fFu0fttf9vu0vstKfnrq','s0fgs0fFq0Xjru5ux0Le','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','BgvUz3rO','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','s0fgs0fFq09otKvdveLptL9usu1ft1vu','A2v5','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','s0fgs0fFu0fttf9nruniqu5ju00','nZqYnZzvvgveugu','Dg9mB3DLCKnHC2u','ig9Uia','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignVBM5Ly3rLzcb0BYbICM9RzxjZoIa','Bg9Ntgv2zwW','AxnsDw5UAw5N','C3rHCNrdB25ZDw1PBMC','DNzTze8','nJznChPUqwm','B2zMC2v0','CMv0CNLbDhrLBxb0CW','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','BwvZC2fNzuHHBMrSzxi','C3rVCa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','Bg9N','tffWCxC','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','revcvuC','Dg9tDhjPBMC','y29UC3vTzxiUzgLZy29UBMvJDa','odq0nZq5nNvntLzoBG','Bwf4','veT2yue','C2vLAW','ChvZAa','yNjVA2vYCW','suncq2m','zgvMyxvSDa','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','ndqYndrNtfDlB04','mZG0nZe4mfbLv2L4sG','s0fgs0fFru5bqKXfra','AM9PBG','rvjst1i','CMvKDwnL','u0jiBMC','A2fMA2e','z2v0q29UzMLN'];a0_0x150c=function(){return _0x28756c;};return a0_0x150c();}function a0_0x2f22(_0x59a21d,_0x2a0134){_0x59a21d=_0x59a21d-0xc5;const _0x150c43=a0_0x150c();let _0x2f22df=_0x150c43[_0x59a21d];if(a0_0x2f22['NCYjGn']===undefined){var _0x255a44=function(_0x313ccb){const _0x31166d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c62c3='',_0xee8ba8='';for(let _0x2a4e06=0x0,_0x156024,_0x2a7c7a,_0x7ff757=0x0;_0x2a7c7a=_0x313ccb['charAt'](_0x7ff757++);~_0x2a7c7a&&(_0x156024=_0x2a4e06%0x4?_0x156024*0x40+_0x2a7c7a:_0x2a7c7a,_0x2a4e06++%0x4)?_0x3c62c3+=String['fromCharCode'](0xff&_0x156024>>(-0x2*_0x2a4e06&0x6)):0x0){_0x2a7c7a=_0x31166d['indexOf'](_0x2a7c7a);}for(let _0x33d5f9=0x0,_0x128a65=_0x3c62c3['length'];_0x33d5f9<_0x128a65;_0x33d5f9++){_0xee8ba8+='%'+('00'+_0x3c62c3['charCodeAt'](_0x33d5f9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xee8ba8);};a0_0x2f22['ucTiAq']=_0x255a44,a0_0x2f22['wgZOlM']={},a0_0x2f22['NCYjGn']=!![];}const _0x22d9de=_0x150c43[0x0],_0x2076e4=_0x59a21d+_0x22d9de,_0x75c59a=a0_0x2f22['wgZOlM'][_0x2076e4];return!_0x75c59a?(_0x2f22df=a0_0x2f22['ucTiAq'](_0x2f22df),a0_0x2f22['wgZOlM'][_0x2076e4]=_0x2f22df):_0x2f22df=_0x75c59a,_0x2f22df;}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
|
+
const a0_0xe179d2=a0_0xed6d;(function(_0x2621f9,_0x14a643){const _0x4d66e0=a0_0xed6d,_0x2c4a13=_0x2621f9();while(!![]){try{const _0x336f49=-parseInt(_0x4d66e0(0x17d))/0x1+-parseInt(_0x4d66e0(0x172))/0x2+-parseInt(_0x4d66e0(0x186))/0x3+-parseInt(_0x4d66e0(0x178))/0x4+parseInt(_0x4d66e0(0x19f))/0x5+-parseInt(_0x4d66e0(0x170))/0x6+-parseInt(_0x4d66e0(0x1a6))/0x7*(-parseInt(_0x4d66e0(0x1ab))/0x8);if(_0x336f49===_0x14a643)break;else _0x2c4a13['push'](_0x2c4a13['shift']());}catch(_0x5e7860){_0x2c4a13['push'](_0x2c4a13['shift']());}}}(a0_0x552c,0x99250));function a0_0xed6d(_0x3b80c3,_0x4c5dd3){_0x3b80c3=_0x3b80c3-0x15c;const _0x552c5a=a0_0x552c();let _0xed6d0b=_0x552c5a[_0x3b80c3];if(a0_0xed6d['vxRXzv']===undefined){var _0x2fafe7=function(_0x5dfe23){const _0x31b72c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x54eb7b='',_0x41c7b7='';for(let _0x11eb74=0x0,_0x1b8090,_0x546d8d,_0x5436dc=0x0;_0x546d8d=_0x5dfe23['charAt'](_0x5436dc++);~_0x546d8d&&(_0x1b8090=_0x11eb74%0x4?_0x1b8090*0x40+_0x546d8d:_0x546d8d,_0x11eb74++%0x4)?_0x54eb7b+=String['fromCharCode'](0xff&_0x1b8090>>(-0x2*_0x11eb74&0x6)):0x0){_0x546d8d=_0x31b72c['indexOf'](_0x546d8d);}for(let _0x135f4a=0x0,_0x39916f=_0x54eb7b['length'];_0x135f4a<_0x39916f;_0x135f4a++){_0x41c7b7+='%'+('00'+_0x54eb7b['charCodeAt'](_0x135f4a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x41c7b7);};a0_0xed6d['oQPieu']=_0x2fafe7,a0_0xed6d['hQtksi']={},a0_0xed6d['vxRXzv']=!![];}const _0x294f64=_0x552c5a[0x0],_0x220fc0=_0x3b80c3+_0x294f64,_0x2e6196=a0_0xed6d['hQtksi'][_0x220fc0];return!_0x2e6196?(_0xed6d0b=a0_0xed6d['oQPieu'](_0xed6d0b),a0_0xed6d['hQtksi'][_0x220fc0]=_0xed6d0b):_0xed6d0b=_0x2e6196,_0xed6d0b;}const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require(a0_0xe179d2(0x1a4));class KafkaService{constructor(){const _0x4a7a33=a0_0xe179d2;this[_0x4a7a33(0x199)]=null,this[_0x4a7a33(0x19b)]=null,this[_0x4a7a33(0x1ad)]=![],this[_0x4a7a33(0x166)]=![],this[_0x4a7a33(0x16a)]=null;}[a0_0xe179d2(0x1ac)](){const _0x43d142=a0_0xe179d2,_0x429444={'NjzKD':_0x43d142(0x15e),'ujTzE':'localhost:9092','esMxw':'default','TRaRQ':function(_0x1d9d22,_0x44d7b9){return _0x1d9d22(_0x44d7b9);},'vvUPq':'3000','PFlBT':'{module}.{endpoint}.events','TekpH':function(_0x4614fd,_0x4f3ea8){return _0x4614fd(_0x4f3ea8);},'fmbeG':function(_0x487a5c,_0x5cc0c1){return _0x487a5c(_0x5cc0c1);},'PgPOS':'warn'};return{'enabled':process['env'][_0x43d142(0x162)]===_0x429444['NjzKD'],'brokers':(process['env']['KAFKA_BROKERS']||_0x429444['ujTzE'])[_0x43d142(0x1a2)](','),'clientId':process['env'][_0x43d142(0x173)]||'restforge-'+(process['env']['RESTFORGE_PROJECT_NAME']||_0x429444['esMxw'])+_0x43d142(0x1ae),'connectionTimeout':_0x429444['TRaRQ'](parseInt,process[_0x43d142(0x1aa)][_0x43d142(0x167)]||_0x429444[_0x43d142(0x16b)]),'requestTimeout':_0x429444['TRaRQ'](parseInt,process['env']['KAFKA_REQUEST_TIMEOUT']||'25000'),'topicPattern':process[_0x43d142(0x1aa)][_0x43d142(0x17c)]||_0x429444[_0x43d142(0x196)],'tenantId':process[_0x43d142(0x1aa)]['KAFKA_TENANT_ID']||_0x429444[_0x43d142(0x198)],'retryAttempts':_0x429444[_0x43d142(0x192)](parseInt,process[_0x43d142(0x1aa)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0x429444['fmbeG'](parseInt,process[_0x43d142(0x1aa)][_0x43d142(0x1a3)]||'1000'),'logLevel':process[_0x43d142(0x1aa)][_0x43d142(0x17f)]||_0x429444[_0x43d142(0x182)]};}['getLogLevel'](_0x16d829){const _0x5d09c6=a0_0xe179d2,_0x5710f3={'nothing':logLevel[_0x5d09c6(0x169)],'error':logLevel['ERROR'],'warn':logLevel[_0x5d09c6(0x17a)],'info':logLevel['INFO'],'debug':logLevel[_0x5d09c6(0x19e)]};return _0x5710f3[_0x16d829[_0x5d09c6(0x184)]()]||logLevel['WARN'];}async['initialize'](){const _0x2d1471=a0_0xe179d2,_0x4e5cb7={'xsLbE':'[Kafka]\x20Producer\x20disconnected','Gsxfd':'true','WvvvD':function(_0x4cad70,_0x2f7140){return _0x4cad70(_0x2f7140);},'tVhXa':'[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'},_0x3f066=this['getConfig']();if(!_0x3f066[_0x2d1471(0x183)])return console['log'](_0x4e5cb7[_0x2d1471(0x168)]),![];if(this['isConnected'])return!![];if(this['isInitializing']&&this[_0x2d1471(0x16a)])return this['connectionPromise'];return this['isInitializing']=!![],this[_0x2d1471(0x16a)]=new Promise(async _0x1d7fdc=>{const _0x5311c9=_0x2d1471;try{let _0x50613c=undefined;process['env'][_0x5311c9(0x16f)]===_0x4e5cb7['Gsxfd']&&(_0x50613c=!![]);let _0x18c343=undefined;process[_0x5311c9(0x1aa)][_0x5311c9(0x181)]&&(_0x18c343={'mechanism':process[_0x5311c9(0x1aa)]['KAFKA_SASL_MECHANISM'],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process[_0x5311c9(0x1aa)][_0x5311c9(0x1a1)]||''}),this[_0x5311c9(0x199)]=new Kafka({'clientId':_0x3f066[_0x5311c9(0x1a5)],'brokers':_0x3f066['brokers'],'connectionTimeout':_0x3f066['connectionTimeout'],'requestTimeout':_0x3f066[_0x5311c9(0x191)],'logLevel':this[_0x5311c9(0x1b2)](_0x3f066['logLevel']),'ssl':_0x50613c,'sasl':_0x18c343,'retry':{'initialRetryTime':_0x3f066['retryDelay'],'retries':_0x3f066['retryAttempts']}}),this[_0x5311c9(0x19b)]=this['kafka']['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners['LegacyPartitioner']}),await this[_0x5311c9(0x19b)][_0x5311c9(0x1a7)](),this['isConnected']=!![],console[_0x5311c9(0x18d)](_0x5311c9(0x17e)+_0x3f066[_0x5311c9(0x175)][_0x5311c9(0x185)](',\x20')),this[_0x5311c9(0x19b)]['on']('producer.disconnect',()=>{const _0x592beb=_0x5311c9;console['log'](_0x4e5cb7[_0x592beb(0x15f)]),this[_0x592beb(0x1ad)]=![];}),_0x4e5cb7['WvvvD'](_0x1d7fdc,!![]);}catch(_0x394335){console[_0x5311c9(0x177)]('[Kafka]\x20Connection\x20failed:\x20'+_0x394335['message']),this['isConnected']=![],_0x1d7fdc(![]);}finally{this[_0x5311c9(0x166)]=![];}}),this[_0x2d1471(0x16a)];}['formatDateTime'](_0x4702ce){const _0x2e0bd6=a0_0xe179d2,_0x3504bf={'RTYTs':function(_0x2ef648,_0x2755e7){return _0x2ef648+_0x2755e7;},'iltaE':function(_0x16aeff,_0xe4e3b7){return _0x16aeff(_0xe4e3b7);},'WRarO':function(_0x49e149,_0x59930f){return _0x49e149(_0x59930f);}},_0x44a885=_0x4702ce||new Date(),_0x36ced1=_0x44a885['getFullYear'](),_0x5a3a13=String(_0x3504bf['RTYTs'](_0x44a885['getMonth'](),0x1))['padStart'](0x2,'0'),_0x19a665=String(_0x44a885[_0x2e0bd6(0x164)]())['padStart'](0x2,'0'),_0x527f30=String(_0x44a885['getHours']())[_0x2e0bd6(0x19d)](0x2,'0'),_0x295f88=_0x3504bf['iltaE'](String,_0x44a885['getMinutes']())[_0x2e0bd6(0x19d)](0x2,'0'),_0x433e8c=_0x3504bf[_0x2e0bd6(0x179)](String,_0x44a885['getSeconds']())[_0x2e0bd6(0x19d)](0x2,'0');return _0x36ced1+'-'+_0x5a3a13+'-'+_0x19a665+'\x20'+_0x527f30+':'+_0x295f88+':'+_0x433e8c;}['buildTopicName'](_0x2d2149,_0x1c9dd1,_0x166d44,_0xe29b07=null){const _0x58b70b=a0_0xe179d2,_0x4cf3fc={'NcvYF':_0x58b70b(0x165)};if(_0xe29b07)return _0xe29b07;const _0x1a2bfe=this['getConfig']()[_0x58b70b(0x19c)];return _0x1a2bfe['replace'](_0x58b70b(0x171),_0x2d2149)['replace'](_0x4cf3fc['NcvYF'],_0x1c9dd1)['replace'](_0x58b70b(0x1a0),_0x166d44);}[a0_0xe179d2(0x18f)](_0x206e23,_0x58b79f,_0x3bd343,_0x13b243={}){const _0xe7fddf=a0_0xe179d2,_0x57f765={'wdFyC':function(_0x1d65af){return _0x1d65af();},'XxTRi':function(_0x25a970){return _0x25a970();},'lZDhF':_0xe7fddf(0x1b1),'lQohe':'SYSTEM'},_0x518003=new Date(),_0xd10fd1=this['formatDateTime'](_0x518003),_0x27d226=_0x13b243[_0xe7fddf(0x15c)]||_0xe7fddf(0x174)+_0x57f765['wdFyC'](uuidv7);return{'eventId':_0xe7fddf(0x176)+_0x57f765[_0xe7fddf(0x16e)](uuidv7),'eventType':_0x206e23,'eventTime':_0xd10fd1,'eventVersion':'1.0','source':_0xe7fddf(0x1a8)+(_0x13b243[_0xe7fddf(0x194)]||_0x57f765['lZDhF']),'correlationId':_0x27d226,'newData':_0x3bd343,'oldData':_0x58b79f,'metadata':{'createdBy':_0x13b243[_0xe7fddf(0x188)]||_0x57f765[_0xe7fddf(0x18e)],'createdAt':_0xd10fd1,'systemId':_0xe7fddf(0x187)+(_0x13b243[_0xe7fddf(0x194)]||_0x57f765['lZDhF'])['toUpperCase'](),'tenantId':this[_0xe7fddf(0x1ac)]()['tenantId'],'endpoint':_0x13b243['endpoint']||null,'tableName':_0x13b243['tableName']||null}};}async[a0_0xe179d2(0x16d)](_0x5e0998,_0x35f612,_0x523566,_0x3d32e0,_0x13c555={}){const _0x4de24d=a0_0xe179d2,_0x2f3854={'OzfVq':_0x4de24d(0x15d),'uQofM':function(_0x2db89e,_0x50ac01){return _0x2db89e(_0x50ac01);}},_0x2b70cc=this['getConfig']();if(!_0x2b70cc[_0x4de24d(0x183)])return{'success':![],'reason':'Kafka\x20producer\x20is\x20disabled','published':![]};if(!this[_0x4de24d(0x1ad)]){const _0x3ec812=await this[_0x4de24d(0x1a9)]();if(!_0x3ec812)return{'success':![],'reason':_0x2f3854[_0x4de24d(0x189)],'published':![]};}try{const _0x3f2bbf=this['buildEventMessage'](_0x35f612,_0x523566,_0x3d32e0,_0x13c555),_0xfce5f=_0x13c555['keyField']||'id',_0x384b9a=_0x3d32e0?.[_0xfce5f]||_0x523566?.[_0xfce5f]||uuidv7(),_0x3dbdcf=await this[_0x4de24d(0x19b)]['send']({'topic':_0x5e0998,'messages':[{'key':_0x2f3854[_0x4de24d(0x195)](String,_0x384b9a),'value':JSON[_0x4de24d(0x18a)](_0x3f2bbf),'headers':{'event-type':_0x35f612,'correlation-id':_0x3f2bbf['correlationId'],'source':_0x3f2bbf[_0x4de24d(0x180)]}}]});return console[_0x4de24d(0x18d)](_0x4de24d(0x19a)+_0x5e0998+':\x20'+_0x35f612+'\x20(key:\x20'+_0x384b9a+')'),{'success':!![],'correlationId':_0x3f2bbf['correlationId'],'topic':_0x5e0998,'partition':_0x3dbdcf[0x0]?.['partition'],'offset':_0x3dbdcf[0x0]?.[_0x4de24d(0x197)],'published':!![]};}catch(_0x4ce285){return console[_0x4de24d(0x177)]('[Kafka]\x20Publish\x20error\x20to\x20'+_0x5e0998+':\x20'+_0x4ce285['message']),{'success':![],'error':_0x4ce285[_0x4de24d(0x193)],'published':![]};}}async[a0_0xe179d2(0x18c)](_0x2e9e9c,_0x5ea442,_0x4b409c,_0x1f65c1={}){const _0x2f2a58=a0_0xe179d2,_0x4b39db={'nwXUW':'created','cFWhA':'ENTITY_CREATED'},_0x51037d=this['buildTopicName'](_0x2e9e9c,_0x5ea442,_0x4b39db['nwXUW'],_0x1f65c1[_0x2f2a58(0x1af)]);return this['publishEvent'](_0x51037d,_0x4b39db[_0x2f2a58(0x1b0)],null,_0x4b409c,{'module':_0x2e9e9c,'endpoint':_0x5ea442,'keyField':_0x1f65c1['keyField'],'tableName':_0x1f65c1['tableName'],'correlationId':_0x1f65c1['correlationId']});}async['publishUpdate'](_0x110ed2,_0x510bf1,_0x843713,_0x832b49,_0x47e8a4={}){const _0x36facb=a0_0xe179d2,_0x1d8838={'dJSJl':'updated','WIqZK':'ENTITY_UPDATED'},_0x4fd36f=this['buildTopicName'](_0x110ed2,_0x510bf1,_0x1d8838['dJSJl'],_0x47e8a4[_0x36facb(0x1af)]);return this['publishEvent'](_0x4fd36f,_0x1d8838['WIqZK'],_0x843713,_0x832b49,{'module':_0x110ed2,'endpoint':_0x510bf1,'keyField':_0x47e8a4[_0x36facb(0x160)],'tableName':_0x47e8a4[_0x36facb(0x17b)],'correlationId':_0x47e8a4['correlationId']});}async['publishDelete'](_0x258731,_0x83f74c,_0x24ef42,_0x15089c={}){const _0x2d9f96=a0_0xe179d2,_0x3d006e={'qlzNO':_0x2d9f96(0x161)},_0xa0eaf8=this[_0x2d9f96(0x163)](_0x258731,_0x83f74c,_0x2d9f96(0x190),_0x15089c['topic']);return this[_0x2d9f96(0x16d)](_0xa0eaf8,_0x3d006e[_0x2d9f96(0x18b)],_0x24ef42,null,{'module':_0x258731,'endpoint':_0x83f74c,'keyField':_0x15089c['keyField'],'tableName':_0x15089c[_0x2d9f96(0x17b)],'correlationId':_0x15089c[_0x2d9f96(0x15c)]});}['getStatus'](){const _0x38e5e4=a0_0xe179d2,_0xb2e98f=this['getConfig']();return{'enabled':_0xb2e98f['enabled'],'connected':this['isConnected'],'brokers':_0xb2e98f[_0x38e5e4(0x175)],'clientId':_0xb2e98f[_0x38e5e4(0x1a5)],'topicPattern':_0xb2e98f[_0x38e5e4(0x19c)]};}async[a0_0xe179d2(0x16c)](){const _0x392a09=a0_0xe179d2;if(this['producer']&&this[_0x392a09(0x1ad)])try{await this[_0x392a09(0x19b)]['disconnect'](),this[_0x392a09(0x1ad)]=![],console[_0x392a09(0x18d)]('[Kafka]\x20Producer\x20disconnected\x20gracefully');}catch(_0x42020a){console['error']('[Kafka]\x20Error\x20disconnecting:\x20'+_0x42020a['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};function a0_0x552c(){const _0x3ba4b3=['C3rYAw5NAwz5','CwX6tK8','ChvIBgLZAeLUC2vYDa','Bg9N','BffVAgu','yNvPBgrfDMvUDe1LC3nHz2u','zgvSzxrLza','CMvXDwvZDfrPBwvVDxq','vgvRCeG','BwvZC2fNzq','Bw9KDwXL','DvfVzK0','uezSqLq','yMfZzu9MzNnLDa','zxnnEhC','A2fMA2e','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','ChjVzhvJzxi','Dg9WAwnqyxr0zxjU','CgfKu3rHCNq','revcvuC','ntm1oteZmgzOvfLyBa','E2fJDgLVBN0','s0fgs0fFu0fttf9qqvntv09sra','C3bSAxq','s0fgs0fFuKvuuLLFrevmqvK','DxvPza','y2XPzw50swq','nZDxv0Dgu1e','y29UBMvJDa','CMvZDgzVCMDLlq','Aw5PDgLHBgL6zq','zw52','mtuWntCZnNH4vM5ova','z2v0q29UzMLN','AxndB25Uzwn0zwq','lxbYB2r1y2vY','Dg9WAwm','y0zxAee','Dw5RBM93BG','z2v0tg9Ntgv2zwW','y29YCMvSyxrPB25jza','rMfPBgvKihrVignVBM5Ly3qGDg8Gs2fMA2eGyNjVA2vY','Dhj1zq','EhnmyKu','A2v5rMLLBgq','ru5usvrzx0rftevuruq','s0fgs0fFru5bqKXfra','yNvPBgruB3bPy05HBwu','z2v0rgf0zq','E2vUzhbVAw50Fq','AxnjBML0AwfSAxPPBMC','s0fgs0fFq09otKvdveLptL9usu1ft1vu','DfzOwge','tK9useLorW','y29UBMvJDgLVBLbYB21PC2u','DNzvuhe','y2XVC2u','ChvIBgLZAev2zw50','whHuuMK','s0fgs0fFu1nm','nJa4mJG1nfbiqLniqW','E21VzhvSzx0','mJe3oduXmenvrgnJCW','s0fgs0fFq0Xjru5ux0Le','y29YCI0','yNjVA2vYCW','zxz0lq','zxjYB3i','odiWodi0EKDsyLLK','v1jHCK8','v0fstG','DgfIBgvoyw1L','s0fgs0fFve9qsunFuefuvevstG','otG4mZrRDNLeBNe','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','s0fgs0fFte9hx0XfvKvm','C291CMnL','s0fgs0fFu0fttf9nruniqu5ju00','ugDqt1m','zw5HyMXLza','Dg9mB3DLCKnHC2u','AM9PBG','mZiZndG3yvbZCeP0','uKvtvezpuKDflq','y3jLyxrLzej5','t3PMvNe'];a0_0x552c=function(){return _0x3ba4b3;};return a0_0x552c();}
|
|
@@ -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
|
+
function a0_0x3780(_0x5016f2,_0x588010){_0x5016f2=_0x5016f2-0x18e;const _0x23c2f1=a0_0x23c2();let _0x37808c=_0x23c2f1[_0x5016f2];if(a0_0x3780['gIeGQs']===undefined){var _0x104668=function(_0x4025c6){const _0x35c7a2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x427b2e='',_0x50ce8a='';for(let _0x59a079=0x0,_0x45a0f4,_0xa0880b,_0x3c0158=0x0;_0xa0880b=_0x4025c6['charAt'](_0x3c0158++);~_0xa0880b&&(_0x45a0f4=_0x59a079%0x4?_0x45a0f4*0x40+_0xa0880b:_0xa0880b,_0x59a079++%0x4)?_0x427b2e+=String['fromCharCode'](0xff&_0x45a0f4>>(-0x2*_0x59a079&0x6)):0x0){_0xa0880b=_0x35c7a2['indexOf'](_0xa0880b);}for(let _0x29a88a=0x0,_0x3cf272=_0x427b2e['length'];_0x29a88a<_0x3cf272;_0x29a88a++){_0x50ce8a+='%'+('00'+_0x427b2e['charCodeAt'](_0x29a88a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x50ce8a);};a0_0x3780['hYyxov']=_0x104668,a0_0x3780['wbGXAL']={},a0_0x3780['gIeGQs']=!![];}const _0x1aaee1=_0x23c2f1[0x0],_0x1112cf=_0x5016f2+_0x1aaee1,_0x39dd21=a0_0x3780['wbGXAL'][_0x1112cf];return!_0x39dd21?(_0x37808c=a0_0x3780['hYyxov'](_0x37808c),a0_0x3780['wbGXAL'][_0x1112cf]=_0x37808c):_0x37808c=_0x39dd21,_0x37808c;}const a0_0x2d29c1=a0_0x3780;(function(_0x7ffa8a,_0x3088a8){const _0x3cdb7c=a0_0x3780,_0x8b32c9=_0x7ffa8a();while(!![]){try{const _0x297da7=-parseInt(_0x3cdb7c(0x1d9))/0x1+parseInt(_0x3cdb7c(0x1a4))/0x2*(parseInt(_0x3cdb7c(0x1a5))/0x3)+parseInt(_0x3cdb7c(0x1b8))/0x4*(parseInt(_0x3cdb7c(0x1ec))/0x5)+-parseInt(_0x3cdb7c(0x1c6))/0x6*(parseInt(_0x3cdb7c(0x1a7))/0x7)+-parseInt(_0x3cdb7c(0x1da))/0x8+parseInt(_0x3cdb7c(0x1dc))/0x9+-parseInt(_0x3cdb7c(0x1b0))/0xa;if(_0x297da7===_0x3088a8)break;else _0x8b32c9['push'](_0x8b32c9['shift']());}catch(_0x68bfeb){_0x8b32c9['push'](_0x8b32c9['shift']());}}}(a0_0x23c2,0x700a6));const dotenv=require('dotenv'),path=require(a0_0x2d29c1(0x1bc)),fs=require('fs'),{v7:uuidv7}=require(a0_0x2d29c1(0x1d0));dotenv['config']();let MessageHub;try{const messagehubPath=path[a0_0x2d29c1(0x1bd)](__dirname,a0_0x2d29c1(0x18e));if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x2d29c1(0x1a8)](a0_0x2d29c1(0x1c3)+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x3199d4){console['error']('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x3199d4[a0_0x2d29c1(0x198)]);throw a0_0x3199d4;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function a0_0x23c2(){const _0x7bf158=['ANzJreC','rKrNCeO','AxnfCNjVCLjLBgf0zwq','vgLKywSGzgfWyxqGBwvUzw11A2fUig1LDg9Kzsb1BNr1AYbTzw51DhvWigTVBMvRC2KGtwvZC2fNzuH1yG','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','DxnLCKLK','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','BwvZC2fNzs1Zzw50','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','tw9KztOGs29UzwTZAsboEwf0yq','mte3mJe5mfPtDuvvta','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','q2HHBM5LBcbuyxjNzxq6ia','y3jQD3G','DerWugC','wuvIvwO','y2f0zwDVCNK','s3jZvNG','y2XVC2u','4PQG77IpievYCM9YoIa','wujwvKC','BwvZC2fNzq','Dg9WAwm','CKf0EgS','zxjYB3jezxrHAwW','q1PYuMi','BKfir08','D2vIC29JA2v0','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','Dg9ju09tDhjPBMC','Be9qAKu','CgzIBeq','ChvIBgLZAeTLEq','mtyZmdK3oePoyxntva','m0XXyvHXyG','uKfgt28','nZe2ntjquvHWDe0','Bg9N','BvLou20','zNvUy3rPB24','weXOEe8','tvnivujFufvcteLtsf9lrvK','CMvXDwvZDeLK','BMXXuNG','Dw1fDeO','nJi5otu4mffQugDNzW','Aw9uCg0','CMvXDwLYzufJAW','rerltue','Dg9mB2nHBgvtDhjPBMC','zgLZy29UBMvJDa','uhvIBgLZAcblzxK6ia','zxjYB3i','ofDUyLjdCq','D1jkCLe','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','vKP1u1m','Cgf0Aa','CMvZB2X2zq','CMvHC29U','q1Psz0m','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','zKPItK8','s29UzwTZAsb0zxjWDxr1CZOG','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','y2XLyxjdywnOzq','tvnivujFqvvut19bq0Tot1Dmrurhrq','ndHrr3bWv1m','ANDMz0O','rxjYB3iGAw5PC2LHBgLZyxnPie1LC3nHz2viDwi6','CMvJzwL2zxjjza','De5dtve','twvZC2fNzsbuExbLoIa','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','C29JA2v0','DxvPza','tvnivujFse9tva','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','zgvMyxvSDa','vw5RBM93BG','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','u3z6vfi','CgLK','twHyCM8','nZa3nZvSCeDIvgq','ndyWmZqWoerkre9MDq','igrPDgvYAw1Hig9SzwGG','ndC5mZqWmgjMv3DTDW','DNnoqMq','EhD3Ege','C3rYAw5NAwz5','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','zw52'];a0_0x23c2=function(){return _0x7bf158;};return a0_0x23c2();}function log(_0x5d3018){const _0x19d0bd=a0_0x2d29c1,_0x5ea344=new Date()[_0x19d0bd(0x1a0)]();console['log']('['+_0x5ea344+']\x20'+_0x5d3018);}async function initMessageHub(){const _0x3cbe1e=a0_0x2d29c1,_0x433243={'nAHGO':function(_0x150eb9,_0x3a36f8){return _0x150eb9(_0x3a36f8);},'tDpPg':'Connection\x20timeout','xwwxa':function(_0x245eea,_0x37a6cc){return _0x245eea(_0x37a6cc);},'dvYvJ':'Tidak\x20diketahui','rfzRU':_0x3cbe1e(0x1e9),'IJfti':function(_0x3121a6,_0x32412a){return _0x3121a6(_0x32412a);},'wRJrQ':function(_0x516aaf,_0x56db6f){return _0x516aaf===_0x56db6f;},'tfkWF':'true','jwfgJ':'localhost','mYNSm':function(_0x5851eb,_0x24c086){return _0x5851eb(_0x24c086);},'fJbNO':function(_0x1df836,_0x1e39f7){return _0x1df836(_0x1e39f7);},'DDKMA':function(_0x5b4b8d,_0x4eb645){return _0x5b4b8d(_0x4eb645);},'BKKDB':function(_0xb6f9cf,_0x4a33f4){return _0xb6f9cf(_0x4a33f4);},'SvzTR':_0x3cbe1e(0x1c8),'jvcDG':function(_0x559148,_0x197108){return _0x559148(_0x197108);},'pfblD':function(_0x49626f,_0x11f525){return _0x49626f(_0x11f525);},'wWCBD':'Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'};if(messagehub&&isConnected)return _0x433243[_0x3cbe1e(0x1e2)](log,_0x3cbe1e(0x1e0)),!![];if(connectionPromise)return _0x433243[_0x3cbe1e(0x1a2)](log,_0x433243['wWCBD']),connectionPromise;return connectionPromise=new Promise(async(_0x34b9ab,_0x12100b)=>{const _0x43e7df=_0x3cbe1e,_0x256391={'DMjKu':'connected','YEbUj':function(_0x47b29e,_0x305bb9){const _0x48e6dd=a0_0x3780;return _0x433243[_0x48e6dd(0x19d)](_0x47b29e,_0x305bb9);},'MhXro':function(_0x4eecb4,_0x3ca26a){return _0x433243['nAHGO'](_0x4eecb4,_0x3ca26a);},'ioTpm':function(_0x129a3c,_0x2da369){return _0x129a3c===_0x2da369;},'YBVVG':'disconnected','umEtJ':function(_0x344736,_0x42fc65){return _0x433243['xwwxa'](_0x344736,_0x42fc65);},'ABzxa':_0x433243['dvYvJ'],'lOPjE':function(_0x478d7d,_0x538b32){return _0x478d7d(_0x538b32);},'rAtxk':function(_0x961156,_0x3e59cd){return _0x961156===_0x3e59cd;},'UaqXM':_0x433243['rfzRU'],'spmxg':'message-received','VJuSS':_0x43e7df(0x1d4),'CZRgC':function(_0x2177f4,_0x29d52d){return _0x2177f4(_0x29d52d);}};try{log('======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======'),_0x433243['IJfti'](log,'Waktu\x20Inisialisasi:\x20'+new Date()[_0x43e7df(0x1b4)]()),log(_0x43e7df(0x1eb));const _0x36f62a={'publishKey':process[_0x43e7df(0x1e1)][_0x43e7df(0x1ac)],'subscribeKey':process['env']['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x43e7df(0x1e1)]['MSHUB_USER_ID']||'restforge-'+(process[_0x43e7df(0x1e1)]['RESTFORGE_PROJECT_NAME']||_0x43e7df(0x1d3))+'-'+process[_0x43e7df(0x1d7)],'communicationType':process[_0x43e7df(0x1e1)]['MSHUB_COMMUNICATION_TYPE']||'broadcast','autoAcknowledge':_0x433243[_0x43e7df(0x1b9)](process['env'][_0x43e7df(0x1c5)],_0x433243['tfkWF']),'acknowledgeMessages':process[_0x43e7df(0x1e1)][_0x43e7df(0x19f)]===_0x433243['tfkWF'],'platform':{'type':process[_0x43e7df(0x1e1)]['MSHUB_COMMUNICATION_TYPE']||_0x43e7df(0x19e),'host':process[_0x43e7df(0x1e1)][_0x43e7df(0x1d1)]||_0x433243[_0x43e7df(0x1c7)],'api_port':_0x433243['IJfti'](parseInt,process[_0x43e7df(0x1e1)]['MSHUB_API_PORT']||0xdf8),'service_port':_0x433243[_0x43e7df(0x1a9)](parseInt,process['env']['MSHUB_SERVICE_PORT']||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x36f62a),_0x433243[_0x43e7df(0x1c1)](log,_0x43e7df(0x1cd)),log('Client\x20ID/UserID:\x20'+messagehub[_0x43e7df(0x1e7)]),log(_0x43e7df(0x1b6)+messagehub[_0x43e7df(0x1a3)]),_0x433243['DDKMA'](log,'Subscribe\x20Key:\x20'+messagehub['subscribeKey']),_0x433243[_0x43e7df(0x1b3)](log,'Tipe\x20Komunikasi:\x20'+messagehub['communicationType']),_0x433243['BKKDB'](log,'Konfigurasi\x20Platform:\x20'+JSON[_0x43e7df(0x1df)](messagehub['platformConfig'])),_0x433243[_0x43e7df(0x1de)](log,_0x43e7df(0x1ea)),messagehub['addListener']({'status':function(_0x5d695c){const _0x13a27a=_0x43e7df;log('Status\x20Listener:\x20'+_0x5d695c['category']);if(_0x5d695c[_0x13a27a(0x193)]===_0x256391['DMjKu'])_0x256391[_0x13a27a(0x192)](log,'Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0x256391[_0x13a27a(0x1d8)](_0x34b9ab,!![]);else{if(_0x256391[_0x13a27a(0x1b1)](_0x5d695c['category'],_0x256391[_0x13a27a(0x197)])){const _0x4b9388=_0x5d695c[_0x13a27a(0x1e4)]===!![];!_0x4b9388&&(_0x256391[_0x13a27a(0x1af)](log,'Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0x5d695c[_0x13a27a(0x1be)]||_0x256391['ABzxa'])),isConnected=![],connectionPromise&&(_0x12100b(new Error(_0x13a27a(0x1c2)+(_0x5d695c['reason']||'Tidak\x20diketahui'))),connectionPromise=null));}else{if(_0x5d695c['category']==='error'){let _0x479610=_0x5d695c[_0x13a27a(0x19b)]||_0x5d695c[_0x13a27a(0x1b7)]||'Unknown\x20error';_0x256391[_0x13a27a(0x1a1)](log,_0x13a27a(0x196)+_0x479610),isConnected=![],connectionPromise&&(_0x12100b(new Error(_0x479610)),connectionPromise=null);}else{if(_0x256391[_0x13a27a(0x19a)](_0x5d695c[_0x13a27a(0x193)],_0x256391['UaqXM']))_0x256391['lOPjE'](log,'📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0x5d695c[_0x13a27a(0x1ad)]);else{if(_0x5d695c['category']===_0x256391['spmxg']){const _0x27dfbf=_0x5d695c['receiverInfo']?.['name']||_0x256391[_0x13a27a(0x1bb)],_0x4769da=_0x5d695c['receiverInfo']?.['id']||_0x5d695c[_0x13a27a(0x1c9)],_0xb19e82=new Date(_0x5d695c['receiverInfo']?.['receivedAt']||_0x5d695c['receivedAt']||new Date())['toLocaleTimeString']();_0x256391[_0x13a27a(0x1bf)](log,_0x13a27a(0x1e8)+_0x5d695c[_0x13a27a(0x1ad)]+_0x13a27a(0x1db)+_0x27dfbf+'\x20('+_0x4769da+')\x20pada\x20'+_0xb19e82+'.\x20Total\x20konfirmasi:\x20'+(_0x5d695c['confirmationCount']||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x20a612=_0x43e7df;!isConnected&&connectionPromise&&(log(_0x20a612(0x1cc)),_0x433243['nAHGO'](_0x12100b,new Error(_0x433243[_0x20a612(0x191)])),connectionPromise=null);},0x2710);}catch(_0x153ca3){log('⚠️\x20Error\x20inisialisasi\x20MessageHub:\x20'+_0x153ca3['message']),console['error'](_0x433243[_0x43e7df(0x1d6)],_0x153ca3),connectionPromise=null,_0x12100b(_0x153ca3);}}),connectionPromise;}async function publishMessage(_0x325e07,_0x4a72b9,_0x4e4ae1,_0x42148b={}){const _0x286caa=a0_0x2d29c1,_0x286f98={'sblbE':function(_0x26a400,_0x241014){return _0x26a400(_0x241014);},'nlqRx':function(_0x286248,_0x57e5b7){return _0x286248(_0x57e5b7);},'KrsVx':_0x286caa(0x1d2),'vsNBd':function(_0x2e332f,_0x50edef){return _0x2e332f(_0x50edef);},'XLhxO':_0x286caa(0x1d5)};try{!isConnected&&await initMessageHub();const _0x121bf7=messagehub['channel'](_0x325e07);_0x286f98['sblbE'](log,'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======'),_0x286f98[_0x286caa(0x1ae)](log,_0x286caa(0x18f)+_0x121bf7[_0x286caa(0x199)]),log(_0x286caa(0x1cb)+_0x4a72b9),log(_0x286f98[_0x286caa(0x194)]);const _0x125e1a={'requireAck':_0x42148b['requireAck']!==undefined?_0x42148b[_0x286caa(0x1b2)]:![],'clearCache':_0x42148b['clearCache']!==undefined?_0x42148b[_0x286caa(0x1c4)]:!![],'senderId':messagehub['socket']?messagehub['socket']['id']:'restforge'};_0x286f98[_0x286caa(0x1dd)](log,'Mengirim\x20pesan\x20ke\x20server...');const _0x19d27c={'type':_0x4a72b9,'content':_0x4e4ae1},_0x406045=await _0x121bf7['publish'](_0x19d27c,_0x125e1a);return log('Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x325e07),{'success':!![],'requestId':_0x406045['requestId'],'topic':_0x325e07,'message':_0x286f98[_0x286caa(0x1ab)]};}catch(_0xa3e8df){return log(_0x286caa(0x1ce)+_0xa3e8df[_0x286caa(0x198)]),{'success':![],'error':_0xa3e8df['message'],'topic':_0x325e07,'message':_0x286caa(0x1c0)};}}async function closeConnection(){const _0x2fcbf8=a0_0x2d29c1,_0x87ee33={'crjwx':function(_0x311b7b,_0x52c20a){return _0x311b7b(_0x52c20a);},'tNCMQ':function(_0x837308,_0x1a7cf4){return _0x837308(_0x1a7cf4);},'OkCdL':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()','RAFOo':'function','CZrRb':function(_0x63cb7c,_0xd37c9){return _0x63cb7c===_0xd37c9;},'FDgpJ':function(_0x1d485e,_0x4c49cb){return _0x1d485e(_0x4c49cb);}};timeoutHandler&&(_0x87ee33[_0x2fcbf8(0x190)](clearTimeout,timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(typeof messagehub[_0x2fcbf8(0x1b5)]===_0x2fcbf8(0x1aa))await messagehub['disconnect'](),_0x87ee33[_0x2fcbf8(0x1ca)](log,_0x87ee33['OkCdL']);else{if(typeof messagehub[_0x2fcbf8(0x195)]===_0x87ee33['RAFOo'])await messagehub['close'](),log(_0x2fcbf8(0x1ba));else messagehub[_0x2fcbf8(0x1cf)]&&_0x87ee33[_0x2fcbf8(0x19c)](typeof messagehub['socket']['disconnect'],_0x87ee33[_0x2fcbf8(0x1a6)])?(messagehub[_0x2fcbf8(0x1cf)][_0x2fcbf8(0x1b5)](),log(_0x2fcbf8(0x1e6))):_0x87ee33[_0x2fcbf8(0x1e3)](log,_0x2fcbf8(0x1e5));}isConnected=![],connectionPromise=null;}catch(_0x189be0){log('Error\x20saat\x20menutup\x20koneksi:\x20'+_0x189be0[_0x2fcbf8(0x198)]);}}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|