@restforgejs/platform 4.1.1 → 4.2.8

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.
Files changed (178) hide show
  1. package/bin/sdf-tools.exe +0 -0
  2. package/build-info.json +2 -2
  3. package/cli/consumer-deploy.js +1 -1
  4. package/cli/consumer.js +1 -1
  5. package/generators/cli/endpoint/create.js +42 -3
  6. package/generators/cli/schema/apply.js +525 -0
  7. package/generators/cli/schema/diff.js +321 -0
  8. package/generators/cli/schema/generate-ddl.js +7 -10
  9. package/generators/cli/schema/init.js +95 -172
  10. package/generators/cli/schema/migrate.js +10 -16
  11. package/generators/cli/schema/models.js +8 -12
  12. package/generators/cli/schema/template.js +222 -0
  13. package/generators/cli/schema/validate.js +8 -12
  14. package/generators/cli-entry.js +17 -2
  15. package/generators/lib/dbschema-kit/apply-engine.js +582 -0
  16. package/generators/lib/dbschema-kit/diff-engine.js +703 -0
  17. package/generators/lib/dbschema-kit/diff-reporter.js +272 -0
  18. package/generators/lib/dbschema-kit/emitters/alter-table.js +275 -0
  19. package/generators/lib/payload/endpoint-schema-validator.js +171 -0
  20. package/generators/lib/payload/payload-runner.js +137 -220
  21. package/generators/lib/payload/schema-diff.js +277 -0
  22. package/generators/lib/utils/audit-columns.js +181 -0
  23. package/generators/lib/utils/cli-output.js +17 -0
  24. package/generators/lib/utils/database-introspector.js +16 -13
  25. package/integrity-manifest.json +8 -8
  26. package/package.json +1 -1
  27. package/scripts/verify-integrity.js +1 -1
  28. package/server.js +1 -1
  29. package/src/components/handlers/adjust_handler.js +1 -1
  30. package/src/components/handlers/audit_handler.js +1 -1
  31. package/src/components/handlers/delete_handler.js +1 -1
  32. package/src/components/handlers/export_handler.js +1 -1
  33. package/src/components/handlers/import_handler.js +1 -1
  34. package/src/components/handlers/insert_handler.js +1 -1
  35. package/src/components/handlers/update_handler.js +1 -1
  36. package/src/components/handlers/upload_handler.js +1 -1
  37. package/src/components/handlers/workflow_handler.js +1 -1
  38. package/src/components/integrations/webhook.js +1 -1
  39. package/src/consumers/baseConsumer.js +1 -1
  40. package/src/consumers/declarativeMapper.js +1 -1
  41. package/src/consumers/handlers/apiHandler.js +1 -1
  42. package/src/consumers/handlers/consoleHandler.js +1 -1
  43. package/src/consumers/handlers/databaseHandler.js +1 -1
  44. package/src/consumers/handlers/index.js +1 -1
  45. package/src/consumers/handlers/kafkaHandler.js +1 -1
  46. package/src/consumers/index.js +1 -1
  47. package/src/consumers/messageTransformer.js +1 -1
  48. package/src/consumers/validator.js +1 -1
  49. package/src/core/db/dialect/base-dialect.js +1 -1
  50. package/src/core/db/dialect/index.js +1 -1
  51. package/src/core/db/dialect/mysql-dialect.js +1 -1
  52. package/src/core/db/dialect/oracle-dialect.js +1 -1
  53. package/src/core/db/dialect/postgres-dialect.js +1 -1
  54. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  55. package/src/core/db/flatten-helper.js +1 -1
  56. package/src/core/db/query-builder-error.js +1 -1
  57. package/src/core/db/query-builder.js +1 -1
  58. package/src/core/db/relation-helper.js +1 -1
  59. package/src/core/handlers/delete_handler.js +1 -1
  60. package/src/core/handlers/insert_handler.js +1 -1
  61. package/src/core/handlers/update_handler.js +1 -1
  62. package/src/core/models/base-model.js +1 -1
  63. package/src/core/utils/cache-manager.js +1 -1
  64. package/src/core/utils/component-engine.js +1 -1
  65. package/src/core/utils/context-builder.js +1 -1
  66. package/src/core/utils/datetime-formatter.js +1 -1
  67. package/src/core/utils/datetime-parser.js +1 -1
  68. package/src/core/utils/db.js +1 -1
  69. package/src/core/utils/logger.js +1 -1
  70. package/src/core/utils/payload-loader.js +1 -1
  71. package/src/core/utils/security-checks.js +1 -1
  72. package/src/middleware/body-options.js +1 -1
  73. package/src/middleware/cors.js +1 -1
  74. package/src/middleware/idempotency.js +1 -1
  75. package/src/middleware/rate-limiter.js +1 -1
  76. package/src/middleware/request-logger.js +1 -1
  77. package/src/middleware/security-headers.js +1 -1
  78. package/src/models/base-model-mysql.js +1 -1
  79. package/src/models/base-model-oracle.js +1 -1
  80. package/src/models/base-model-sqlite.js +1 -1
  81. package/src/models/base-model.js +1 -1
  82. package/src/pro/caching/redis-client.js +1 -1
  83. package/src/pro/caching/redis-helper.js +1 -1
  84. package/src/pro/consumers/baseConsumer.js +1 -1
  85. package/src/pro/consumers/declarativeMapper.js +1 -1
  86. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  87. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  88. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  89. package/src/pro/consumers/handlers/index.js +1 -1
  90. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  91. package/src/pro/consumers/index.js +1 -1
  92. package/src/pro/consumers/messageTransformer.js +1 -1
  93. package/src/pro/consumers/validator.js +1 -1
  94. package/src/pro/database/base-model-mysql.js +1 -1
  95. package/src/pro/database/base-model-oracle.js +1 -1
  96. package/src/pro/database/base-model-sqlite.js +1 -1
  97. package/src/pro/database/db-mysql.js +1 -1
  98. package/src/pro/database/db-oracle.js +1 -1
  99. package/src/pro/database/db-sqlite.js +1 -1
  100. package/src/pro/excel/excel-generator.js +1 -1
  101. package/src/pro/excel/excel-parser.js +1 -1
  102. package/src/pro/excel/export-service.js +1 -1
  103. package/src/pro/excel/export_handler.js +1 -1
  104. package/src/pro/excel/import-service.js +1 -1
  105. package/src/pro/excel/import-validator.js +1 -1
  106. package/src/pro/excel/import_handler.js +1 -1
  107. package/src/pro/excel/upsert-builder.js +1 -1
  108. package/src/pro/idgen/idgen-routes.js +1 -1
  109. package/src/pro/integrations/lookup-resolver.js +1 -1
  110. package/src/pro/integrations/upload-handler-v2.js +1 -1
  111. package/src/pro/integrations/upload-handler.js +1 -1
  112. package/src/pro/integrations/webhook.js +1 -1
  113. package/src/pro/locking/lock-routes.js +1 -1
  114. package/src/pro/locking/resource-lock-manager.js +1 -1
  115. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  116. package/src/pro/messaging/kafkaService.js +1 -1
  117. package/src/pro/messaging/messagehubService.js +1 -1
  118. package/src/pro/messaging/rabbitmqService.js +1 -1
  119. package/src/pro/scheduler/job-manager.js +1 -1
  120. package/src/pro/scheduler/job-routes.js +1 -1
  121. package/src/pro/scheduler/job-validator.js +1 -1
  122. package/src/pro/storage/base-storage-provider.js +1 -1
  123. package/src/pro/storage/file-metadata-helper.js +1 -1
  124. package/src/pro/storage/index.js +1 -1
  125. package/src/pro/storage/local-storage-provider.js +1 -1
  126. package/src/pro/storage/s3-storage-provider.js +1 -1
  127. package/src/pro/storage/upload-cleanup-job.js +1 -1
  128. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  129. package/src/pro/storage/upload-pending-tracker.js +1 -1
  130. package/src/pro/websocket/broadcast-helper.js +1 -1
  131. package/src/pro/websocket/index.js +1 -1
  132. package/src/pro/websocket/livesync-server.js +1 -1
  133. package/src/pro/websocket/ws-broadcaster.js +1 -1
  134. package/src/services/export-service.js +1 -1
  135. package/src/services/import-service.js +1 -1
  136. package/src/services/kafkaConsumerService.js +1 -1
  137. package/src/services/kafkaService.js +1 -1
  138. package/src/services/messagehubService.js +1 -1
  139. package/src/services/rabbitmqService.js +1 -1
  140. package/src/utils/cache-invalidation-registry.js +1 -1
  141. package/src/utils/cache-manager.js +1 -1
  142. package/src/utils/component-engine.js +1 -1
  143. package/src/utils/config-extractor.js +1 -1
  144. package/src/utils/consumerLogger.js +1 -1
  145. package/src/utils/context-builder.js +1 -1
  146. package/src/utils/dashboard-helpers.js +1 -1
  147. package/src/utils/dateHelper.js +1 -1
  148. package/src/utils/datetime-formatter.js +1 -1
  149. package/src/utils/datetime-parser.js +1 -1
  150. package/src/utils/db-bootstrap.js +1 -1
  151. package/src/utils/db-mysql.js +1 -1
  152. package/src/utils/db-oracle.js +1 -1
  153. package/src/utils/db-sqlite.js +1 -1
  154. package/src/utils/db.js +1 -1
  155. package/src/utils/demo-generator.js +1 -1
  156. package/src/utils/excel-generator.js +1 -1
  157. package/src/utils/excel-parser.js +1 -1
  158. package/src/utils/file-watcher.js +1 -1
  159. package/src/utils/id-generator.js +1 -1
  160. package/src/utils/idempotency-manager.js +1 -1
  161. package/src/utils/import-validator.js +1 -1
  162. package/src/utils/license-client.js +1 -1
  163. package/src/utils/lock-manager.js +1 -1
  164. package/src/utils/logger.js +1 -1
  165. package/src/utils/lookup-resolver.js +1 -1
  166. package/src/utils/payload-loader.js +1 -1
  167. package/src/utils/processor-response.js +1 -1
  168. package/src/utils/rabbitmq.js +1 -1
  169. package/src/utils/redis-client.js +1 -1
  170. package/src/utils/redis-helper.js +1 -1
  171. package/src/utils/request-scope.js +1 -1
  172. package/src/utils/security-checks.js +1 -1
  173. package/src/utils/service-resolver.js +1 -1
  174. package/src/utils/shutdown-coordinator.js +1 -1
  175. package/src/utils/trusted-keys.js +1 -1
  176. package/src/utils/upload-handler.js +1 -1
  177. package/src/utils/upsert-builder.js +1 -1
  178. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x270ca6=a0_0x2857;(function(_0x50b7b,_0x4c92c3){const _0x471008=a0_0x2857,_0x348a35=_0x50b7b();while(!![]){try{const _0x1f439e=-parseInt(_0x471008(0x13c))/0x1+parseInt(_0x471008(0x149))/0x2+parseInt(_0x471008(0x154))/0x3*(parseInt(_0x471008(0x161))/0x4)+-parseInt(_0x471008(0x159))/0x5*(-parseInt(_0x471008(0x153))/0x6)+-parseInt(_0x471008(0x13d))/0x7*(parseInt(_0x471008(0x162))/0x8)+parseInt(_0x471008(0x14d))/0x9*(-parseInt(_0x471008(0x15a))/0xa)+parseInt(_0x471008(0x157))/0xb;if(_0x1f439e===_0x4c92c3)break;else _0x348a35['push'](_0x348a35['shift']());}catch(_0x11f020){_0x348a35['push'](_0x348a35['shift']());}}}(a0_0x2171,0x52f7a));function a0_0x2171(){const _0x39c213=['y3j5ChrV','z2vUzxjHDgvlzxK','CMvWBgfJzq','zgvMyxvSDa','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','DgvTCerPCG','ody2mJiWB2rxDLr3','x3rLBxbeAxi','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fKzwqGzMLSztOG','BNvTyMvY','mteYmJu3A2X2s3Dc','AM9PBG','zMXVB3i','zxjYB3i','zxHPC3rZu3LUyW','DhjPBq','mJK3mtuXohvQBgLUEG','nJaWndvKCu5Tz1K','Agv4','zxH0BMfTzq','odG4oteWDMfeEfbp','zgLZA1n0B3jHz2u','nw1RvhrPqG','mJeWA3bqC29y','BwvZC2fNzq','Dw5SAw5R','lI4VC3rVCMfNzs9MAwXLlw1LDgfKyxrHlwHLBhbLCG','rMLSzsb0ExbLiciU','BwTKAxjtEw5J','DMztte0','nJHfBgXfBLi','mJr6DxfTrg8','Aurru3y','rMfPBgvKihrVigrLBgv0zsb0zw1WigzPBgu','CMfUzg9TqNL0zxm','C2L6zq','rLPfA08','DxbSB2fKx3yYx3rLBxbFzgvSzxrLx3DHCM4','y3DK','x3bHCNnLrMLSzvnPEMu','ChjLzML4','zw52','x2rLBgv0zvrLBxbgAwXL','Bwf4rMLSzxm','zxHWB3j0CW','Cgf0Aa','Dg9vChbLCKnHC2u','ChjVBwLZzxm','ntCYotmYzunbsxDP','nda3nZaXyKTlruHU','B3jPz2LUywXUyw1L','DxjS','ChjVy2vZC1vWBg9HzgvKrMLSzxm','Dg9mB3DLCKnHC2u','BgvUz3rO'];a0_0x2171=function(){return _0x39c213;};return a0_0x2171();}const multer=require('multer'),path=require(a0_0x270ca6(0x139)),crypto=require(a0_0x270ca6(0x143)),fs=require('fs')[a0_0x270ca6(0x13b)],fsSync=require('fs'),{logger}=require('./logger');function a0_0x2857(_0x916365,_0x38ccb7){_0x916365=_0x916365-0x133;const _0x21719c=a0_0x2171();let _0x285763=_0x21719c[_0x916365];if(a0_0x2857['CznFAX']===undefined){var _0x267dac=function(_0x3a6ce5){const _0x5261c1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x372b01='',_0x14ded7='';for(let _0x52caf6=0x0,_0x513dfd,_0x54efb0,_0x208eaa=0x0;_0x54efb0=_0x3a6ce5['charAt'](_0x208eaa++);~_0x54efb0&&(_0x513dfd=_0x52caf6%0x4?_0x513dfd*0x40+_0x54efb0:_0x54efb0,_0x52caf6++%0x4)?_0x372b01+=String['fromCharCode'](0xff&_0x513dfd>>(-0x2*_0x52caf6&0x6)):0x0){_0x54efb0=_0x5261c1['indexOf'](_0x54efb0);}for(let _0x4a8f72=0x0,_0x390c90=_0x372b01['length'];_0x4a8f72<_0x390c90;_0x4a8f72++){_0x14ded7+='%'+('00'+_0x372b01['charCodeAt'](_0x4a8f72)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x14ded7);};a0_0x2857['fokBiJ']=_0x267dac,a0_0x2857['GHDqtq']={},a0_0x2857['CznFAX']=!![];}const _0xf319ca=_0x21719c[0x0],_0x288dfe=_0x916365+_0xf319ca,_0x35d5e0=a0_0x2857['GHDqtq'][_0x288dfe];return!_0x35d5e0?(_0x285763=a0_0x2857['fokBiJ'](_0x285763),a0_0x2857['GHDqtq'][_0x288dfe]=_0x285763):_0x285763=_0x35d5e0,_0x285763;}class UploadHandlerV2{constructor(){this['_tempDir']=null;}get['tempDir'](){const _0x511ebb=a0_0x270ca6,_0x52b9c2={'qZIgO':_0x511ebb(0x146),'gmZSy':'uploads'};if(!this[_0x511ebb(0x14a)]){const _0x2db2c1=process['env']['RESTFORGE_PROJECT_NAME']||_0x52b9c2['qZIgO'];this['_tempDir']=process[_0x511ebb(0x135)]['UPLOAD_TEMP_DIR']||path[_0x511ebb(0x14e)](process[_0x511ebb(0x169)](),'temp',_0x52b9c2['gmZSy'],_0x2db2c1),!fsSync[_0x511ebb(0x151)](this['_tempDir'])&&fsSync[_0x511ebb(0x15f)](this['_tempDir'],{'recursive':!![]});}return this['_tempDir'];}['createUploadMiddleware'](_0xd3e991={}){const _0x55c04f=a0_0x270ca6,_0x5bcb13={'Swjne':function(_0x4d3f3f,_0x4bf924,_0x412f35){return _0x4d3f3f(_0x4bf924,_0x412f35);},'pRiYt':function(_0x5e9904,_0x3b93ba){return _0x5e9904===_0x3b93ba;},'FZEkO':'files'},_0xf85b2a=_0xd3e991[_0x55c04f(0x137)]||0x5,_0x42e2ea=this[_0x55c04f(0x133)](_0xd3e991['maxFileSize']||'10MB'),_0x2ebb88=_0xd3e991['allowedTypes']||[],_0x3d9a21=multer[_0x55c04f(0x158)]({'destination':(_0x167498,_0x208762,_0x1f25c9)=>{const _0x196573=_0x55c04f;!fsSync['existsSync'](this['tempDir'])&&fsSync['mkdirSync'](this[_0x196573(0x148)],{'recursive':!![]}),_0x5bcb13['Swjne'](_0x1f25c9,null,this[_0x196573(0x148)]);},'filename':(_0xd3e941,_0x18de11,_0x98c63d)=>{const _0x21647c=_0x55c04f,_0x3f0f98=crypto[_0x21647c(0x165)](0x8)['toString'](_0x21647c(0x155)),_0x11c2ca=Date['now'](),_0x2699bc=path['extname'](_0x18de11[_0x21647c(0x13e)]);_0x98c63d(null,'upload-'+_0x11c2ca+'-'+_0x3f0f98+_0x2699bc);}}),_0x354841=(_0x751ec1,_0x670832,_0x3e6e13)=>{const _0x2d2a75=_0x55c04f;if(_0x5bcb13['pRiYt'](_0x2ebb88[_0x2d2a75(0x142)],0x0))return _0x3e6e13(null,!![]);const _0x1495a3=path[_0x2d2a75(0x156)](_0x670832[_0x2d2a75(0x13e)])[_0x2d2a75(0x141)]()[_0x2d2a75(0x145)]('.','');_0x2ebb88['includes'](_0x1495a3)?_0x3e6e13(null,!![]):_0x3e6e13(new Error(_0x2d2a75(0x15e)+_0x1495a3+'\x22\x20is\x20not\x20allowed.\x20Allowed\x20types:\x20'+_0x2ebb88[_0x2d2a75(0x14e)](',\x20')));};return multer({'storage':_0x3d9a21,'limits':{'fileSize':_0x42e2ea,'files':_0xf85b2a},'fileFilter':_0x354841})['array'](_0x5bcb13[_0x55c04f(0x167)],_0xf85b2a);}async[a0_0x270ca6(0x140)](_0x126c87,_0x5e30da,_0x48b3bb={}){const _0x37715b=a0_0x270ca6,_0x1888b4={'ECRhn':_0x37715b(0x15d),'poJdV':function(_0x5388e7,_0x39ecd8){return _0x5388e7(_0x39ecd8);}},{createFileMetadata:_0x108b9d}=require(_0x1888b4['ECRhn']),_0x238854=[];for(const _0x783bfe of _0x126c87){try{const _0x50c2ad=_0x5e30da[_0x37715b(0x144)](_0x783bfe[_0x37715b(0x13e)],{'prefix':_0x48b3bb[_0x37715b(0x134)]||'','project':_0x48b3bb['project']||'','module':_0x48b3bb['module']||'','endpoint':_0x48b3bb['endpoint']||''}),_0x4bcc6e=fsSync['createReadStream'](_0x783bfe[_0x37715b(0x139)]),_0x4ebe92=await _0x5e30da['upload'](_0x4bcc6e,_0x50c2ad,{'contentType':_0x783bfe['mimetype'],'fileSize':_0x783bfe['size']}),_0x58bbc9=_0x1888b4['poJdV'](_0x108b9d,{'key':_0x4ebe92['key'],'originalName':_0x783bfe['originalname'],'fileName':path['basename'](_0x50c2ad),'contentType':_0x783bfe['mimetype'],'size':_0x783bfe[_0x37715b(0x166)],'url':_0x4ebe92[_0x37715b(0x13f)],'provider':_0x5e30da['providerName'],'bucket':_0x5e30da['bucket']||null,'uploadedBy':_0x48b3bb['uploadedBy']||null});_0x238854['push'](_0x58bbc9);}catch(_0x516e1b){logger[_0x37715b(0x150)]({'event':_0x37715b(0x147),'file':_0x783bfe['originalname'],'error':_0x516e1b[_0x37715b(0x15b)]},_0x37715b(0x14b)+_0x783bfe[_0x37715b(0x13e)]);throw _0x516e1b;}finally{await this['_deleteTempFile'](_0x783bfe[_0x37715b(0x139)]);}}return _0x238854;}async[a0_0x270ca6(0x136)](_0x110aba){const _0x3711e1=a0_0x270ca6,_0x4793ca={'BNUBv':_0x3711e1(0x168)};try{await fs[_0x3711e1(0x15c)](_0x110aba);}catch(_0x4f452e){logger['warn']({'event':_0x4793ca['BNUBv'],'filePath':_0x110aba,'error':_0x4f452e[_0x3711e1(0x15b)]},_0x3711e1(0x164));}}[a0_0x270ca6(0x133)](_0x43e272){const _0x168709=a0_0x270ca6,_0xdac416={'iDQSv':function(_0x4d436a,_0x5b504b){return _0x4d436a===_0x5b504b;},'NRRyG':_0x168709(0x14c),'vfSLM':function(_0x52b5e8,_0x44399c){return _0x52b5e8*_0x44399c;}};if(_0xdac416[_0x168709(0x163)](typeof _0x43e272,_0xdac416['NRRyG']))return _0x43e272;const _0x3426c3=String(_0x43e272)[_0x168709(0x152)]()['match'](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x3426c3)return _0xdac416[_0x168709(0x160)](0xa,0x400)*0x400;const _0x18cd59=parseFloat(_0x3426c3[0x1]),_0x8a4965=_0x3426c3[0x2][_0x168709(0x13a)](),_0x2eb020={'B':0x1,'KB':0x400,'MB':0x400*0x400,'GB':0x400*0x400*0x400};return Math[_0x168709(0x14f)](_0xdac416[_0x168709(0x160)](_0x18cd59,_0x2eb020[_0x8a4965]||0x1));}}module[a0_0x270ca6(0x138)]=new UploadHandlerV2();
1
+ 'use strict';const a0_0x504a7e=a0_0x3675;(function(_0x49da14,_0x169659){const _0x2a7a1a=a0_0x3675,_0x301843=_0x49da14();while(!![]){try{const _0x4e1113=parseInt(_0x2a7a1a(0x1ce))/0x1+parseInt(_0x2a7a1a(0x1c1))/0x2+-parseInt(_0x2a7a1a(0x1c2))/0x3*(parseInt(_0x2a7a1a(0x1c6))/0x4)+parseInt(_0x2a7a1a(0x1cd))/0x5*(parseInt(_0x2a7a1a(0x1fa))/0x6)+parseInt(_0x2a7a1a(0x1e9))/0x7*(parseInt(_0x2a7a1a(0x1fe))/0x8)+-parseInt(_0x2a7a1a(0x1c3))/0x9*(parseInt(_0x2a7a1a(0x1d1))/0xa)+-parseInt(_0x2a7a1a(0x1ea))/0xb;if(_0x4e1113===_0x169659)break;else _0x301843['push'](_0x301843['shift']());}catch(_0x18ba72){_0x301843['push'](_0x301843['shift']());}}}(a0_0x1784,0xec16e));function a0_0x3675(_0x18b79f,_0xec2fbc){_0x18b79f=_0x18b79f-0x1c1;const _0x178477=a0_0x1784();let _0x367525=_0x178477[_0x18b79f];if(a0_0x3675['MfdtCh']===undefined){var _0x4cdca6=function(_0x4e46a7){const _0x53389c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x43c0ae='',_0x18a3e0='';for(let _0x4a991f=0x0,_0x102bb3,_0x13a9a5,_0x3c71a8=0x0;_0x13a9a5=_0x4e46a7['charAt'](_0x3c71a8++);~_0x13a9a5&&(_0x102bb3=_0x4a991f%0x4?_0x102bb3*0x40+_0x13a9a5:_0x13a9a5,_0x4a991f++%0x4)?_0x43c0ae+=String['fromCharCode'](0xff&_0x102bb3>>(-0x2*_0x4a991f&0x6)):0x0){_0x13a9a5=_0x53389c['indexOf'](_0x13a9a5);}for(let _0x1259e8=0x0,_0x3f6b3d=_0x43c0ae['length'];_0x1259e8<_0x3f6b3d;_0x1259e8++){_0x18a3e0+='%'+('00'+_0x43c0ae['charCodeAt'](_0x1259e8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x18a3e0);};a0_0x3675['ZkZmuK']=_0x4cdca6,a0_0x3675['AwkySI']={},a0_0x3675['MfdtCh']=!![];}const _0x3353b4=_0x178477[0x0],_0x318271=_0x18b79f+_0x3353b4,_0x4c3e53=a0_0x3675['AwkySI'][_0x318271];return!_0x4c3e53?(_0x367525=a0_0x3675['ZkZmuK'](_0x367525),a0_0x3675['AwkySI'][_0x318271]=_0x367525):_0x367525=_0x4c3e53,_0x367525;}const multer=require('multer'),path=require(a0_0x504a7e(0x1fc)),crypto=require('crypto'),fs=require('fs')[a0_0x504a7e(0x1cb)],fsSync=require('fs'),{logger}=require('./logger');class UploadHandlerV2{constructor(){this['_tempDir']=null;}get['tempDir'](){const _0xb5caf8=a0_0x504a7e,_0x3eec23={'fOkCM':'default','RHGEi':_0xb5caf8(0x1dd)};if(!this[_0xb5caf8(0x1c8)]){const _0xdb0516=process['env']['RESTFORGE_PROJECT_NAME']||_0x3eec23[_0xb5caf8(0x1d7)];this['_tempDir']=process['env']['UPLOAD_TEMP_DIR']||path[_0xb5caf8(0x1f2)](process[_0xb5caf8(0x1d0)](),_0x3eec23[_0xb5caf8(0x1f0)],'uploads',_0xdb0516),!fsSync[_0xb5caf8(0x1f3)](this[_0xb5caf8(0x1c8)])&&fsSync[_0xb5caf8(0x1cc)](this['_tempDir'],{'recursive':!![]});}return this['_tempDir'];}[a0_0x504a7e(0x1e2)](_0x36b742={}){const _0x363306=a0_0x504a7e,_0x182bfe={'dtfUR':function(_0x5ea033,_0x39f9c1,_0x1cb230){return _0x5ea033(_0x39f9c1,_0x1cb230);},'bWRET':function(_0x41625a,_0x18b798,_0x324061){return _0x41625a(_0x18b798,_0x324061);},'CKVun':function(_0x453496,_0x128dd4,_0x57a238){return _0x453496(_0x128dd4,_0x57a238);},'GhDrM':function(_0x3ff95e,_0x445c1b){return _0x3ff95e(_0x445c1b);},'ugARN':function(_0x1da995,_0x246c08){return _0x1da995(_0x246c08);}},_0x3f8f92=_0x36b742[_0x363306(0x1ef)]||0x5,_0x30d0a5=this[_0x363306(0x1e0)](_0x36b742[_0x363306(0x1dc)]||_0x363306(0x1e4)),_0x169bdc=_0x36b742[_0x363306(0x1f9)]||[],_0x5e78a1=multer['diskStorage']({'destination':(_0x436744,_0x80bc61,_0x3c4ecd)=>{const _0x34b4c1=_0x363306;!fsSync[_0x34b4c1(0x1f3)](this[_0x34b4c1(0x1ed)])&&fsSync['mkdirSync'](this['tempDir'],{'recursive':!![]}),_0x182bfe['dtfUR'](_0x3c4ecd,null,this[_0x34b4c1(0x1ed)]);},'filename':(_0x5b14a6,_0x583df3,_0x22d90e)=>{const _0x232fd8=_0x363306,_0x5a4ee0=crypto['randomBytes'](0x8)[_0x232fd8(0x1c7)](_0x232fd8(0x1f5)),_0x4b2b3b=Date['now'](),_0x305c17=path[_0x232fd8(0x1df)](_0x583df3[_0x232fd8(0x1d3)]);_0x182bfe[_0x232fd8(0x1d2)](_0x22d90e,null,'upload-'+_0x4b2b3b+'-'+_0x5a4ee0+_0x305c17);}}),_0x5b4667=(_0x54f38d,_0x47561d,_0x590cb4)=>{const _0x32b6ee=_0x363306;if(_0x169bdc[_0x32b6ee(0x1d4)]===0x0)return _0x590cb4(null,!![]);const _0x353b28=path['extname'](_0x47561d[_0x32b6ee(0x1d3)])['toLowerCase']()['replace']('.','');_0x169bdc[_0x32b6ee(0x1db)](_0x353b28)?_0x182bfe[_0x32b6ee(0x1f6)](_0x590cb4,null,!![]):_0x182bfe[_0x32b6ee(0x1e7)](_0x590cb4,new Error(_0x32b6ee(0x1e8)+_0x353b28+_0x32b6ee(0x1f4)+_0x169bdc['join'](',\x20')));};return _0x182bfe[_0x363306(0x1de)](multer,{'storage':_0x5e78a1,'limits':{'fileSize':_0x30d0a5,'files':_0x3f8f92},'fileFilter':_0x5b4667})['array']('files',_0x3f8f92);}async[a0_0x504a7e(0x1e1)](_0x5333a3,_0x137d3d,_0x1f7d40={}){const _0x2afe78=a0_0x504a7e,_0x46c8ce={'TSEgd':function(_0x41d04e,_0xbff448){return _0x41d04e(_0xbff448);},'tazxP':'../storage/file-metadata-helper'},{createFileMetadata:_0xd0393b}=_0x46c8ce['TSEgd'](require,_0x46c8ce['tazxP']),_0x18236c=[];for(const _0x3e468e of _0x5333a3){try{const _0x3561a6=_0x137d3d[_0x2afe78(0x1d8)](_0x3e468e['originalname'],{'prefix':_0x1f7d40[_0x2afe78(0x1f1)]||'','project':_0x1f7d40[_0x2afe78(0x1cf)]||'','module':_0x1f7d40[_0x2afe78(0x1f7)]||'','endpoint':_0x1f7d40['endpoint']||''}),_0x121a77=fsSync[_0x2afe78(0x1da)](_0x3e468e[_0x2afe78(0x1fc)]),_0x4a7773=await _0x137d3d['upload'](_0x121a77,_0x3561a6,{'contentType':_0x3e468e['mimetype'],'fileSize':_0x3e468e[_0x2afe78(0x1eb)]}),_0x3ac20c=_0xd0393b({'key':_0x4a7773['key'],'originalName':_0x3e468e[_0x2afe78(0x1d3)],'fileName':path[_0x2afe78(0x1fd)](_0x3561a6),'contentType':_0x3e468e['mimetype'],'size':_0x3e468e[_0x2afe78(0x1eb)],'url':_0x4a7773[_0x2afe78(0x1d5)],'provider':_0x137d3d[_0x2afe78(0x1ee)],'bucket':_0x137d3d['bucket']||null,'uploadedBy':_0x1f7d40['uploadedBy']||null});_0x18236c['push'](_0x3ac20c);}catch(_0xa4fcf1){logger['error']({'event':_0x2afe78(0x1ca),'file':_0x3e468e['originalname'],'error':_0xa4fcf1[_0x2afe78(0x1c9)]},_0x2afe78(0x1c4)+_0x3e468e[_0x2afe78(0x1d3)]);throw _0xa4fcf1;}finally{await this['_deleteTempFile'](_0x3e468e['path']);}}return _0x18236c;}async[a0_0x504a7e(0x1e3)](_0x25a3d1){const _0x5c3c10=a0_0x504a7e,_0xa3a79c={'foAaw':'upload_v2_temp_delete_warn','kJYBp':'Failed\x20to\x20delete\x20temp\x20file'};try{await fs['unlink'](_0x25a3d1);}catch(_0x38f453){logger['warn']({'event':_0xa3a79c[_0x5c3c10(0x1d9)],'filePath':_0x25a3d1,'error':_0x38f453['message']},_0xa3a79c[_0x5c3c10(0x1e5)]);}}[a0_0x504a7e(0x1e0)](_0x4ddb5a){const _0x1164c7=a0_0x504a7e,_0x27996f={'sWneI':'number','PgywH':function(_0x66476b,_0x509f3b){return _0x66476b*_0x509f3b;},'yzPWf':function(_0x3350c2,_0x450450){return _0x3350c2*_0x450450;}};if(typeof _0x4ddb5a===_0x27996f[_0x1164c7(0x1c5)])return _0x4ddb5a;const _0x261b28=String(_0x4ddb5a)[_0x1164c7(0x1d6)]()[_0x1164c7(0x1f8)](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x261b28)return _0x27996f['PgywH'](_0x27996f[_0x1164c7(0x1e6)](0xa,0x400),0x400);const _0x58a660=parseFloat(_0x261b28[0x1]),_0x4fad4d=_0x261b28[0x2][_0x1164c7(0x1fb)](),_0x56466d={'B':0x1,'KB':0x400,'MB':0x400*0x400,'GB':_0x27996f[_0x1164c7(0x1e6)](_0x27996f['yzPWf'](0x400,0x400),0x400)};return Math[_0x1164c7(0x1ec)](_0x58a660*(_0x56466d[_0x4fad4d]||0x1));}}function a0_0x1784(){const _0x762d57=['Bw9KDwXL','Bwf0y2G','ywXSB3DLzfr5CgvZ','ndu2yK95vMrM','Dg9vChbLCKnHC2u','Cgf0Aa','yMfZzw5HBwu','nJG0nJe1mNH3EK1HCW','mJe0nty1mMrKwLDZsq','mtG5zwTLzgTL','ntu4mda5vefkuhj6','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fKzwqGzMLSztOG','C1DUzuK','odK5nJrNEwj6B1K','Dg9tDhjPBMC','x3rLBxbeAxi','BwvZC2fNzq','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','ChjVBwLZzxm','BwTKAxjtEw5J','nZGXmJveweLYCMu','mte5mZy1oxnHEfHHqq','ChjVAMvJDa','y3DK','mJyWsuDoCvPv','yLDsrvq','B3jPz2LUywXUyw1L','BgvUz3rO','DxjS','DhjPBq','zK9Rq00','z2vUzxjHDgvlzxK','zM9byxC','y3jLyxrLuMvHzfn0CMvHBq','Aw5JBhvKzxm','Bwf4rMLSzvnPEMu','DgvTCa','DwDbuK4','zxH0BMfTzq','x3bHCNnLrMLSzvnPEMu','ChjVy2vZC1vWBg9HzgvKrMLSzxm','y3jLyxrLvxbSB2fKtwLKzgXLD2fYzq','x2rLBgv0zvrLBxbgAwXL','mtbnqG','A0PzqNa','ugD5D0G','r2HeCK0','rMLSzsb0ExbLiciU','mtrIEfrLt2W','mti4nJq5nJjdu3fmr3e','C2L6zq','zMXVB3i','DgvTCerPCG','ChjVDMLKzxjoyw1L','Bwf4rMLSzxm','uKHhrwK','ChjLzML4','AM9PBG','zxHPC3rZu3LUyW','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG','Agv4','q0TwDw4'];a0_0x1784=function(){return _0x762d57;};return a0_0x1784();}module['exports']=new UploadHandlerV2();
@@ -1 +1 @@
1
- function a0_0x3a3a(){const _0x3657fd=['zxH0BMfTzq','z2v0u3rVCMfNzq','mtqXodqYnMDLt2zXua','q01srMi','zw5Qte4','Aw5MBW','lI9SB2DNzxi','ou92r3ftra','zw52','B3jPz2LUywXUyw1L','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','EhjxA0S','x3vWBg9HzerPCG','DxbSB2fKx2HHBMrSzxjFAw5PDa','BwLTzxr5Cgu','mte4ntG3mdrnzxHxAKm','vvbmt0fex0rjuG','Aw5JBhvKzxm','Agv4','BMDfwfu','ndu1nZGWu3jhwKvl','DxbSB2fKx2zPBgvFzgvSzxrLza','zxjYB3i','Dg9tDhjPBMC','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','nZe0mty4n0jhtxjLsq','mtu0oduYCMr6AuH4','DxbSB2fKrgLY','mZbwBMjRqw4','mZbVsvflvMy','nJK5mte0nhLdCKzxrq','mteZndaZmtbmue9rBKW','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','zxHWB3j0CW','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','qu5lvue','CMfUzg9TqNL0zxm','BxvSDgvY','AM9PBG','z2v0vxbSB2fKtwLKzgXLD2fYzq'];a0_0x3a3a=function(){return _0x3657fd;};return a0_0x3a3a();}function a0_0x3b64(_0xeb5c3d,_0x1d0b6b){_0xeb5c3d=_0xeb5c3d-0x1cc;const _0x3a3ae2=a0_0x3a3a();let _0x3b6406=_0x3a3ae2[_0xeb5c3d];if(a0_0x3b64['soTXih']===undefined){var _0x5759fe=function(_0x1d4faa){const _0x1a0ecb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x378b41='',_0x4942b5='';for(let _0x3c2f4a=0x0,_0x4036f4,_0x260e49,_0x2d04bd=0x0;_0x260e49=_0x1d4faa['charAt'](_0x2d04bd++);~_0x260e49&&(_0x4036f4=_0x3c2f4a%0x4?_0x4036f4*0x40+_0x260e49:_0x260e49,_0x3c2f4a++%0x4)?_0x378b41+=String['fromCharCode'](0xff&_0x4036f4>>(-0x2*_0x3c2f4a&0x6)):0x0){_0x260e49=_0x1a0ecb['indexOf'](_0x260e49);}for(let _0x10b51b=0x0,_0x1a4673=_0x378b41['length'];_0x10b51b<_0x1a4673;_0x10b51b++){_0x4942b5+='%'+('00'+_0x378b41['charCodeAt'](_0x10b51b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4942b5);};a0_0x3b64['wrVHVU']=_0x5759fe,a0_0x3b64['QYvHyy']={},a0_0x3b64['soTXih']=!![];}const _0x5b09ec=_0x3a3ae2[0x0],_0x52a12e=_0xeb5c3d+_0x5b09ec,_0x2cd6fc=a0_0x3b64['QYvHyy'][_0x52a12e];return!_0x2cd6fc?(_0x3b6406=a0_0x3b64['wrVHVU'](_0x3b6406),a0_0x3b64['QYvHyy'][_0x52a12e]=_0x3b6406):_0x3b6406=_0x2cd6fc,_0x3b6406;}const a0_0x5bd6c1=a0_0x3b64;(function(_0x2401c9,_0x7f7e16){const _0x129295=a0_0x3b64,_0x36e790=_0x2401c9();while(!![]){try{const _0x52a85c=-parseInt(_0x129295(0x1e7))/0x1+-parseInt(_0x129295(0x1d7))/0x2*(-parseInt(_0x129295(0x1d9))/0x3)+parseInt(_0x129295(0x1db))/0x4+parseInt(_0x129295(0x1d1))/0x5*(parseInt(_0x129295(0x1da))/0x6)+-parseInt(_0x129295(0x1d6))/0x7+parseInt(_0x129295(0x1cc))/0x8+parseInt(_0x129295(0x1ec))/0x9*(-parseInt(_0x129295(0x1dc))/0xa);if(_0x52a85c===_0x7f7e16)break;else _0x36e790['push'](_0x36e790['shift']());}catch(_0x9d00fe){_0x36e790['push'](_0x36e790['shift']());}}}(a0_0x3a3a,0xd8aaa));const multer=require(a0_0x5bd6c1(0x1e2)),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x5bd6c1(0x1eb));class UploadHandler{constructor(){const _0x5e68e4=a0_0x5bd6c1,_0x5d273a={'FBexU':function(_0x92d4f9,_0x2fe8c0){return _0x92d4f9*_0x2fe8c0;},'pHEYJ':function(_0x29cbc9,_0x2c40a4){return _0x29cbc9*_0x2c40a4;}};this[_0x5e68e4(0x1f1)]=null,this['maxFileSize']=_0x5d273a['FBexU'](_0x5d273a['pHEYJ'](0xa,0x400),0x400);}get[a0_0x5bd6c1(0x1d8)](){const _0x41d345=a0_0x5bd6c1,_0x2ed7d5={'CMRFb':'default','enjLN':_0x41d345(0x1df),'ngEXU':'Failed\x20to\x20initialize\x20upload\x20handler'};if(!this[_0x41d345(0x1f1)]){const _0x52f46b=process['env']['RESTFORGE_PROJECT_NAME']||_0x2ed7d5[_0x41d345(0x1e8)];this[_0x41d345(0x1f1)]=process[_0x41d345(0x1ed)][_0x41d345(0x1cd)]||path[_0x41d345(0x1e3)](__dirname,'../../temp/uploads/'+_0x52f46b);try{!fsSync['existsSync'](this[_0x41d345(0x1f1)])&&fsSync['mkdirSync'](this[_0x41d345(0x1f1)],{'recursive':!![]}),logger['info']({'event':_0x41d345(0x1f2),'dir':this[_0x41d345(0x1f1)]},_0x41d345(0x1d5));}catch(_0x5e3395){logger['error']({'event':_0x2ed7d5[_0x41d345(0x1e9)],'error':_0x5e3395['message']},_0x2ed7d5[_0x41d345(0x1d0)]);}}return this['_uploadDir'];}[a0_0x5bd6c1(0x1e6)](){const _0x31f865=a0_0x5bd6c1,_0xc7c0df={'xrWkK':_0x31f865(0x1cf),'ANKUA':function(_0x4ae1fc,_0x25cf12,_0x2fdf47){return _0x4ae1fc(_0x25cf12,_0x2fdf47);}};return multer['diskStorage']({'destination':(_0x50ddd9,_0x2f60fd,_0x469f1e)=>{const _0x20ee28=_0x31f865;!fsSync['existsSync'](this['uploadDir'])&&fsSync['mkdirSync'](this[_0x20ee28(0x1d8)],{'recursive':!![]}),_0x469f1e(null,this[_0x20ee28(0x1d8)]);},'filename':(_0x4aa8da,_0x203a31,_0x3469cc)=>{const _0x3cd89a=_0x31f865,_0x52de48=crypto[_0x3cd89a(0x1e1)](0x8)[_0x3cd89a(0x1d4)](_0xc7c0df[_0x3cd89a(0x1f0)]),_0x5c9780=Date['now'](),_0x13ade4=path['extname'](_0x203a31[_0x3cd89a(0x1ee)]);_0xc7c0df[_0x3cd89a(0x1e0)](_0x3469cc,null,'upload-'+_0x5c9780+'-'+_0x52de48+_0x13ade4);}});}[a0_0x5bd6c1(0x1e4)](){const _0x5aba44=a0_0x5bd6c1,_0x9ed628={'IwHhZ':function(_0x26dcae,_0x3bc672,_0x5c83c1){return _0x26dcae(_0x3bc672,_0x5c83c1);}};return multer({'storage':this[_0x5aba44(0x1e6)](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x2ba046,_0x56fab7,_0xbff8be)=>{const _0x212e4f=_0x5aba44,_0x7cb606=['application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',_0x212e4f(0x1ef)],_0x4ee656=['.xlsx','.xls'],_0x4673ce=path[_0x212e4f(0x1e5)](_0x56fab7['originalname'])['toLowerCase']();_0x7cb606[_0x212e4f(0x1ce)](_0x56fab7[_0x212e4f(0x1f3)])&&_0x4ee656['includes'](_0x4673ce)?_0x9ed628['IwHhZ'](_0xbff8be,null,!![]):_0xbff8be(new Error(_0x212e4f(0x1dd)));}})['single']('file');}async['deleteFile'](_0x4bfb99){const _0x4b13a2=a0_0x5bd6c1;try{await fs['unlink'](_0x4bfb99),logger[_0x4b13a2(0x1ea)]({'event':_0x4b13a2(0x1d2),'filePath':_0x4bfb99},'Uploaded\x20file\x20deleted');}catch(_0x594561){logger[_0x4b13a2(0x1d3)]({'event':'upload_file_delete_error','filePath':_0x4bfb99,'error':_0x594561['message']},'Failed\x20to\x20delete\x20uploaded\x20file');}}}module[a0_0x5bd6c1(0x1de)]=new UploadHandler();
1
+ function a0_0x68eb(_0x226bb7,_0x5237fe){_0x226bb7=_0x226bb7-0x175;const _0x2db056=a0_0x2db0();let _0x68eb8e=_0x2db056[_0x226bb7];if(a0_0x68eb['nlcgxT']===undefined){var _0x5220ab=function(_0x250bbd){const _0x431f26='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3f3d59='',_0x523415='';for(let _0x4c8991=0x0,_0x315d4c,_0x514843,_0x3a9348=0x0;_0x514843=_0x250bbd['charAt'](_0x3a9348++);~_0x514843&&(_0x315d4c=_0x4c8991%0x4?_0x315d4c*0x40+_0x514843:_0x514843,_0x4c8991++%0x4)?_0x3f3d59+=String['fromCharCode'](0xff&_0x315d4c>>(-0x2*_0x4c8991&0x6)):0x0){_0x514843=_0x431f26['indexOf'](_0x514843);}for(let _0x545140=0x0,_0x232436=_0x3f3d59['length'];_0x545140<_0x232436;_0x545140++){_0x523415+='%'+('00'+_0x3f3d59['charCodeAt'](_0x545140)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x523415);};a0_0x68eb['pDXjKh']=_0x5220ab,a0_0x68eb['nlnzhN']={},a0_0x68eb['nlcgxT']=!![];}const _0x5c0a48=_0x2db056[0x0],_0x36a73b=_0x226bb7+_0x5c0a48,_0x379bb7=a0_0x68eb['nlnzhN'][_0x36a73b];return!_0x379bb7?(_0x68eb8e=a0_0x68eb['pDXjKh'](_0x68eb8e),a0_0x68eb['nlnzhN'][_0x36a73b]=_0x68eb8e):_0x68eb8e=_0x379bb7,_0x68eb8e;}function a0_0x2db0(){const _0x7eea0e=['mtiWBMfPuKP3','BxvSDgvY','zw52','mJvjqNLtuee','z2v0u3rVCMfNzq','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','mtiYmtaXr2fqrgXd','Bwf4rMLSzvnPEMu','lNHSC3G','CMfUzg9TqNL0zxm','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','mJi4mgD5ufDAsa','otuXmte1AMPvrNjg','Aw5JBhvKzxm','Agv4','vLHfCe4','BwvZC2fNzq','zgLZA1n0B3jHz2u','mZyXmZyYngzjEe1sua','zgvMyxvSDa','x3vWBg9HzerPCG','DxbSB2fKrgLY','zMLSzq','zgvSzxrLrMLSzq','mtmZmJjxzwjrqwS','Aw5MBW','mte3mZKXmZbIELjtuMq','mtq0nKLkswzkyW','mZK5mZuYnxjYs09grq','BwTKAxjtEw5J','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','B3jPz2LUywXUyw1L','rhPJwg8','Dw5SAw5R','lI4VlI4VDgvTCc91CgXVywrZlW','BM93','zxH0BMfTzq','DxbSB2fKlq'];a0_0x2db0=function(){return _0x7eea0e;};return a0_0x2db0();}const a0_0x14fd61=a0_0x68eb;(function(_0x516706,_0x58712b){const _0x2ba74d=a0_0x68eb,_0x2040d5=_0x516706();while(!![]){try{const _0x338427=parseInt(_0x2ba74d(0x17a))/0x1*(-parseInt(_0x2ba74d(0x190))/0x2)+parseInt(_0x2ba74d(0x193))/0x3*(parseInt(_0x2ba74d(0x183))/0x4)+parseInt(_0x2ba74d(0x184))/0x5+-parseInt(_0x2ba74d(0x177))/0x6*(parseInt(_0x2ba74d(0x17e))/0x7)+-parseInt(_0x2ba74d(0x18a))/0x8+-parseInt(_0x2ba74d(0x194))/0x9+parseInt(_0x2ba74d(0x192))/0xa;if(_0x338427===_0x58712b)break;else _0x2040d5['push'](_0x2040d5['shift']());}catch(_0x47b90e){_0x2040d5['push'](_0x2040d5['shift']());}}}(a0_0x2db0,0x37adf));const multer=require(a0_0x14fd61(0x178)),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require('./logger');class UploadHandler{constructor(){const _0x157b5d=a0_0x14fd61;this[_0x157b5d(0x18c)]=null,this[_0x157b5d(0x17f)]=0xa*0x400*0x400;}get['uploadDir'](){const _0x1a9b4e=a0_0x14fd61,_0x5a77cb={'GQywc':'upload_handler_init','DzcXo':'upload_handler_init_error','OVEGu':'Failed\x20to\x20initialize\x20upload\x20handler'};if(!this[_0x1a9b4e(0x18c)]){const _0xb4e268=process['env']['RESTFORGE_PROJECT_NAME']||_0x1a9b4e(0x18b);this[_0x1a9b4e(0x18c)]=process[_0x1a9b4e(0x179)]['UPLOAD_DIR']||path['join'](__dirname,_0x1a9b4e(0x19a)+_0xb4e268);try{!fsSync['existsSync'](this[_0x1a9b4e(0x18c)])&&fsSync['mkdirSync'](this[_0x1a9b4e(0x18c)],{'recursive':!![]}),logger[_0x1a9b4e(0x191)]({'event':_0x5a77cb['GQywc'],'dir':this[_0x1a9b4e(0x18c)]},_0x1a9b4e(0x182));}catch(_0x276c22){logger['error']({'event':_0x5a77cb[_0x1a9b4e(0x198)],'error':_0x276c22[_0x1a9b4e(0x188)]},_0x5a77cb['OVEGu']);}}return this[_0x1a9b4e(0x18c)];}['getStorage'](){const _0x15d152=a0_0x14fd61,_0x351928={'VXEpN':function(_0x164809,_0x48d2a8,_0x204955){return _0x164809(_0x48d2a8,_0x204955);}};return multer[_0x15d152(0x189)]({'destination':(_0x42d3c1,_0x150528,_0x47a159)=>{const _0x1744a7=_0x15d152;!fsSync['existsSync'](this['uploadDir'])&&fsSync[_0x1744a7(0x195)](this[_0x1744a7(0x18d)],{'recursive':!![]}),_0x47a159(null,this[_0x1744a7(0x18d)]);},'filename':(_0x5ca7ca,_0x3c0d7d,_0x2eaee2)=>{const _0x48acd5=_0x15d152,_0x5145a3=crypto[_0x48acd5(0x181)](0x8)['toString'](_0x48acd5(0x186)),_0x24f6ac=Date[_0x48acd5(0x19b)](),_0x9ad34d=path[_0x48acd5(0x175)](_0x3c0d7d[_0x48acd5(0x197)]);_0x351928[_0x48acd5(0x187)](_0x2eaee2,null,_0x48acd5(0x176)+_0x24f6ac+'-'+_0x5145a3+_0x9ad34d);}});}['getUploadMiddleware'](){const _0x1e5f15=a0_0x14fd61,_0x3cbaf6={'rJyZo':'.xls','GOAqp':function(_0x2446d1,_0x54e409,_0x5e14c1){return _0x2446d1(_0x54e409,_0x5e14c1);},'oaVXu':'Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed'};return multer({'storage':this[_0x1e5f15(0x17b)](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x577336,_0x107273,_0x1058cc)=>{const _0xcca46c=_0x1e5f15,_0x50494d=[_0xcca46c(0x17c),'application/vnd.ms-excel'],_0x478481=[_0xcca46c(0x180),_0x3cbaf6['rJyZo']],_0x47e5bd=path[_0xcca46c(0x175)](_0x107273[_0xcca46c(0x197)])['toLowerCase']();_0x50494d[_0xcca46c(0x185)](_0x107273['mimetype'])&&_0x478481['includes'](_0x47e5bd)?_0x3cbaf6['GOAqp'](_0x1058cc,null,!![]):_0x1058cc(new Error(_0x3cbaf6['oaVXu']));}})['single'](_0x1e5f15(0x18e));}async[a0_0x14fd61(0x18f)](_0x559f30){const _0x32cc62=a0_0x14fd61,_0x1d94d9={'eCbnz':'upload_file_deleted'};try{await fs[_0x32cc62(0x199)](_0x559f30),logger[_0x32cc62(0x191)]({'event':_0x1d94d9['eCbnz'],'filePath':_0x559f30},_0x32cc62(0x17d));}catch(_0x2b25a0){logger['error']({'event':_0x32cc62(0x196),'filePath':_0x559f30,'error':_0x2b25a0[_0x32cc62(0x188)]},'Failed\x20to\x20delete\x20uploaded\x20file');}}}module['exports']=new UploadHandler();
@@ -1 +1 @@
1
- const a0_0x3453d9=a0_0x4d06;function a0_0x4d06(_0x3ea86c,_0x34b6c9){_0x3ea86c=_0x3ea86c-0x1c5;const _0x57ab89=a0_0x57ab();let _0x4d06fd=_0x57ab89[_0x3ea86c];if(a0_0x4d06['CQrZrd']===undefined){var _0x3d4483=function(_0x224d60){const _0x50c8a2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ecbb1='',_0x263fdb='';for(let _0x3601ac=0x0,_0x3782c3,_0x5017f6,_0x35bec5=0x0;_0x5017f6=_0x224d60['charAt'](_0x35bec5++);~_0x5017f6&&(_0x3782c3=_0x3601ac%0x4?_0x3782c3*0x40+_0x5017f6:_0x5017f6,_0x3601ac++%0x4)?_0x4ecbb1+=String['fromCharCode'](0xff&_0x3782c3>>(-0x2*_0x3601ac&0x6)):0x0){_0x5017f6=_0x50c8a2['indexOf'](_0x5017f6);}for(let _0x19a5a4=0x0,_0x39ae08=_0x4ecbb1['length'];_0x19a5a4<_0x39ae08;_0x19a5a4++){_0x263fdb+='%'+('00'+_0x4ecbb1['charCodeAt'](_0x19a5a4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x263fdb);};a0_0x4d06['jVWqhr']=_0x3d4483,a0_0x4d06['ENzhoS']={},a0_0x4d06['CQrZrd']=!![];}const _0x1d7741=_0x57ab89[0x0],_0x238431=_0x3ea86c+_0x1d7741,_0xa66ed7=a0_0x4d06['ENzhoS'][_0x238431];return!_0xa66ed7?(_0x4d06fd=a0_0x4d06['jVWqhr'](_0x4d06fd),a0_0x4d06['ENzhoS'][_0x238431]=_0x4d06fd):_0x4d06fd=_0xa66ed7,_0x4d06fd;}(function(_0x68055,_0xfbe14){const _0x257db6=a0_0x4d06,_0xe21812=_0x68055();while(!![]){try{const _0x1c37f6=parseInt(_0x257db6(0x1c5))/0x1+-parseInt(_0x257db6(0x1cd))/0x2+parseInt(_0x257db6(0x1c8))/0x3+-parseInt(_0x257db6(0x1db))/0x4*(parseInt(_0x257db6(0x1e0))/0x5)+parseInt(_0x257db6(0x1c6))/0x6*(parseInt(_0x257db6(0x1ce))/0x7)+parseInt(_0x257db6(0x1d1))/0x8*(parseInt(_0x257db6(0x1e2))/0x9)+parseInt(_0x257db6(0x1da))/0xa;if(_0x1c37f6===_0xfbe14)break;else _0xe21812['push'](_0xe21812['shift']());}catch(_0x2a2935){_0xe21812['push'](_0xe21812['shift']());}}}(a0_0x57ab,0x455f7));const axios=require('axios');async function sendInsertWebhook(_0x343ecd,_0x364fd0,_0x45aee9={}){const _0x1b0a26=a0_0x4d06,_0x2b21b6={'SRtEh':_0x1b0a26(0x1dc),'knuha':'application/json','oVEwh':'RestForge-Webhook/1.0','Zsloq':_0x1b0a26(0x1d9),'IROSo':'Error\x20sending\x20insert\x20webhook:'};try{const _0xfd0d15={'event':_0x2b21b6[_0x1b0a26(0x1d0)],'timestamp':new Date()[_0x1b0a26(0x1d2)](),'data':_0x364fd0},_0x327087=await axios[_0x1b0a26(0x1d7)](_0x343ecd,_0xfd0d15,{'headers':{'Content-Type':_0x2b21b6[_0x1b0a26(0x1c9)],'User-Agent':_0x2b21b6[_0x1b0a26(0x1cc)],..._0x45aee9},'timeout':0x2710});return console[_0x1b0a26(0x1cb)]('Insert\x20webhook\x20sent\x20to\x20'+_0x343ecd+',\x20Status:\x20'+_0x327087[_0x1b0a26(0x1dd)]),{'success':!![],'message':_0x2b21b6['Zsloq'],'status':_0x327087[_0x1b0a26(0x1dd)],'url':_0x343ecd};}catch(_0x2c75e0){return console[_0x1b0a26(0x1df)](_0x2b21b6[_0x1b0a26(0x1d4)],_0x2c75e0['message']),{'success':![],'message':_0x1b0a26(0x1d8),'error':_0x2c75e0[_0x1b0a26(0x1d6)],'url':_0x343ecd};}}async function sendDeleteWebhook(_0x303e1e,_0x22df2b,_0x490ed0={}){const _0x138bad=a0_0x4d06,_0x23b2a3={'tkQpo':_0x138bad(0x1e3),'ykXTz':_0x138bad(0x1ca)};try{const _0x162caa={'event':_0x138bad(0x1d5),'timestamp':new Date()[_0x138bad(0x1d2)](),'deleted_data':_0x22df2b},_0x116502=await axios['post'](_0x303e1e,_0x162caa,{'headers':{'Content-Type':_0x138bad(0x1e1),'User-Agent':_0x23b2a3['tkQpo'],..._0x490ed0},'timeout':0x2710});return console['log']('Delete\x20webhook\x20sent\x20to\x20'+_0x303e1e+_0x138bad(0x1c7)+_0x116502[_0x138bad(0x1dd)]),{'success':!![],'message':_0x138bad(0x1de),'status':_0x116502['status'],'url':_0x303e1e};}catch(_0x37b7df){return console[_0x138bad(0x1df)]('Error\x20sending\x20delete\x20webhook:',_0x37b7df[_0x138bad(0x1d6)]),{'success':![],'message':_0x23b2a3[_0x138bad(0x1d3)],'error':_0x37b7df['message'],'url':_0x303e1e};}}module[a0_0x3453d9(0x1cf)]={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};function a0_0x57ab(){const _0x3eca7d=['Aw5Zzxj0','C3rHDhvZ','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','zxjYB3i','mtq1nZy1yuDrzKfc','yxbWBgLJyxrPB24VANnVBG','nte0odyZve9fyw90','uMvZDezVCMDLlvDLyMHVB2SVms4W','ndm3nJK2EwfXCwzg','mJqXnJG2u3LSquPm','lcbtDgf0Dxm6ia','mJK0nZK1ywfVvefu','A251Age','rMfPBgvKihrVihnLBMqGzgvSzxrLihDLyMHVB2S','Bg9N','B1zfD2G','nZCXodm2vLHKquXQ','n0LmqNjrwq','zxHWB3j0CW','u1j0rwG','ofv3q2D4sW','Dg9ju09tDhjPBMC','EwTyvhO','svjpu28','zgvSzxrL','BwvZC2fNzq','Cg9ZDa','rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','sw5Zzxj0ihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','nde1nJa5mfLLv2zqEq','ntj2AMHbreW'];a0_0x57ab=function(){return _0x3eca7d;};return a0_0x57ab();}
1
+ const a0_0xa55d74=a0_0x5124;function a0_0x3796(){const _0x1cdf5b=['rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','Au11rgC','yxHPB3m','nJq3mZu5m1HcDwrnsa','sw5Zzxj0ihDLyMHVB2SGC2vUDcb0BYa','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','yxbWBgLJyxrPB24VANnVBG','zxjYB3i','mte5mduZmLfvqxbPAq','C3rHDhvZ','ndC2nJa4nxnbEvDYAa','nePdBLrItG','veLQugW','Bg9N','mJi2ndqWoeLlC0fmBW','CgDdELa','Dg9ju09tDhjPBMC','BwvZC2fNzq','mZG1mtC1mNf4uuDNyG','zgvSzxrL','rxjYB3iGC2vUzgLUzYbPBNnLCNqGD2vIAg9VAZO','lcbtDgf0Dxm6ia','mZeWnZeXCfDdEefg','Cg9ZDa','ndK5nJaXmfjozMDJyq'];a0_0x3796=function(){return _0x1cdf5b;};return a0_0x3796();}(function(_0x111077,_0x453b6a){const _0x225dcb=a0_0x5124,_0x3e6073=_0x111077();while(!![]){try{const _0x303bdb=parseInt(_0x225dcb(0x190))/0x1+parseInt(_0x225dcb(0x1a1))/0x2+parseInt(_0x225dcb(0x19d))/0x3+parseInt(_0x225dcb(0x19e))/0x4*(-parseInt(_0x225dcb(0x192))/0x5)+parseInt(_0x225dcb(0x19b))/0x6+-parseInt(_0x225dcb(0x196))/0x7+-parseInt(_0x225dcb(0x1a5))/0x8;if(_0x303bdb===_0x453b6a)break;else _0x3e6073['push'](_0x3e6073['shift']());}catch(_0x49a50e){_0x3e6073['push'](_0x3e6073['shift']());}}}(a0_0x3796,0xc94f2));const axios=require(a0_0xa55d74(0x195));async function sendInsertWebhook(_0x5464a9,_0x48a1ab,_0x1fbdd1={}){const _0xef68cc=a0_0xa55d74,_0x780c20={'ykmdZ':'insert','TIjPl':'RestForge-Webhook/1.0','pgCzP':_0xef68cc(0x18e)};try{const _0x5df1b4={'event':_0x780c20['ykmdZ'],'timestamp':new Date()[_0xef68cc(0x1a3)](),'data':_0x48a1ab},_0x276b9a=await axios['post'](_0x5464a9,_0x5df1b4,{'headers':{'Content-Type':_0xef68cc(0x199),'User-Agent':_0x780c20[_0xef68cc(0x19f)],..._0x1fbdd1},'timeout':0x2710});return console[_0xef68cc(0x1a0)](_0xef68cc(0x197)+_0x5464a9+',\x20Status:\x20'+_0x276b9a['status']),{'success':!![],'message':'Insert\x20webhook\x20sent\x20successfully','status':_0x276b9a[_0xef68cc(0x19c)],'url':_0x5464a9};}catch(_0x536d21){return console[_0xef68cc(0x19a)](_0x780c20[_0xef68cc(0x1a2)],_0x536d21[_0xef68cc(0x1a4)]),{'success':![],'message':_0xef68cc(0x193),'error':_0x536d21['message'],'url':_0x5464a9};}}function a0_0x5124(_0x32ba97,_0x5ad43f){_0x32ba97=_0x32ba97-0x18e;const _0x379680=a0_0x3796();let _0x512485=_0x379680[_0x32ba97];if(a0_0x5124['DkMpsX']===undefined){var _0x4d40ae=function(_0x2ee6e8){const _0x111c76='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x561d95='',_0x34877e='';for(let _0x2c0bc1=0x0,_0x401166,_0xf1c24e,_0x5144bc=0x0;_0xf1c24e=_0x2ee6e8['charAt'](_0x5144bc++);~_0xf1c24e&&(_0x401166=_0x2c0bc1%0x4?_0x401166*0x40+_0xf1c24e:_0xf1c24e,_0x2c0bc1++%0x4)?_0x561d95+=String['fromCharCode'](0xff&_0x401166>>(-0x2*_0x2c0bc1&0x6)):0x0){_0xf1c24e=_0x111c76['indexOf'](_0xf1c24e);}for(let _0x52ff8d=0x0,_0x335d76=_0x561d95['length'];_0x52ff8d<_0x335d76;_0x52ff8d++){_0x34877e+='%'+('00'+_0x561d95['charCodeAt'](_0x52ff8d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x34877e);};a0_0x5124['uTJaZg']=_0x4d40ae,a0_0x5124['ifBNZQ']={},a0_0x5124['DkMpsX']=!![];}const _0x157b4e=_0x379680[0x0],_0x263539=_0x32ba97+_0x157b4e,_0x8974a9=a0_0x5124['ifBNZQ'][_0x263539];return!_0x8974a9?(_0x512485=a0_0x5124['uTJaZg'](_0x512485),a0_0x5124['ifBNZQ'][_0x263539]=_0x512485):_0x512485=_0x8974a9,_0x512485;}async function sendDeleteWebhook(_0x3c68d2,_0x4801b6,_0x28101f={}){const _0x28291b=a0_0xa55d74,_0x29ea9e={'iggnl':'RestForge-Webhook/1.0','iMuDg':'Delete\x20webhook\x20sent\x20successfully'};try{const _0x54e338={'event':_0x28291b(0x1a6),'timestamp':new Date()['toISOString'](),'deleted_data':_0x4801b6},_0x40b41a=await axios[_0x28291b(0x191)](_0x3c68d2,_0x54e338,{'headers':{'Content-Type':_0x28291b(0x199),'User-Agent':_0x29ea9e['iggnl'],..._0x28101f},'timeout':0x2710});return console[_0x28291b(0x1a0)](_0x28291b(0x198)+_0x3c68d2+_0x28291b(0x18f)+_0x40b41a['status']),{'success':!![],'message':_0x29ea9e[_0x28291b(0x194)],'status':_0x40b41a[_0x28291b(0x19c)],'url':_0x3c68d2};}catch(_0x3a4254){return console[_0x28291b(0x19a)]('Error\x20sending\x20delete\x20webhook:',_0x3a4254[_0x28291b(0x1a4)]),{'success':![],'message':'Failed\x20to\x20send\x20delete\x20webhook','error':_0x3a4254['message'],'url':_0x3c68d2};}}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
@@ -1 +1 @@
1
- const a0_0x2b537b=a0_0x4f27;(function(_0x2e4161,_0x32aa38){const _0x5c83d9=a0_0x4f27,_0x3f9f8a=_0x2e4161();while(!![]){try{const _0xbc1252=-parseInt(_0x5c83d9(0x173))/0x1*(-parseInt(_0x5c83d9(0x16b))/0x2)+-parseInt(_0x5c83d9(0x15d))/0x3*(-parseInt(_0x5c83d9(0x157))/0x4)+-parseInt(_0x5c83d9(0x15f))/0x5*(parseInt(_0x5c83d9(0x15a))/0x6)+parseInt(_0x5c83d9(0x16f))/0x7+parseInt(_0x5c83d9(0x16c))/0x8+parseInt(_0x5c83d9(0x154))/0x9*(-parseInt(_0x5c83d9(0x159))/0xa)+-parseInt(_0x5c83d9(0x168))/0xb*(parseInt(_0x5c83d9(0x161))/0xc);if(_0xbc1252===_0x32aa38)break;else _0x3f9f8a['push'](_0x3f9f8a['shift']());}catch(_0x4fbdfd){_0x3f9f8a['push'](_0x3f9f8a['shift']());}}}(a0_0x5a6c,0xcb35e));const express=require(a0_0x2b537b(0x151)),{logger}=require('../../utils/logger');function a0_0x4f27(_0x3fcbde,_0x21bd17){_0x3fcbde=_0x3fcbde-0x14f;const _0x5a6c1c=a0_0x5a6c();let _0x4f27e3=_0x5a6c1c[_0x3fcbde];if(a0_0x4f27['FprLJe']===undefined){var _0x3f1f4c=function(_0x402a64){const _0x20fd92='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4a2063='',_0x23d8af='';for(let _0x363a67=0x0,_0x2de839,_0x37bbe8,_0x298424=0x0;_0x37bbe8=_0x402a64['charAt'](_0x298424++);~_0x37bbe8&&(_0x2de839=_0x363a67%0x4?_0x2de839*0x40+_0x37bbe8:_0x37bbe8,_0x363a67++%0x4)?_0x4a2063+=String['fromCharCode'](0xff&_0x2de839>>(-0x2*_0x363a67&0x6)):0x0){_0x37bbe8=_0x20fd92['indexOf'](_0x37bbe8);}for(let _0x4b9f9b=0x0,_0x189bc6=_0x4a2063['length'];_0x4b9f9b<_0x189bc6;_0x4b9f9b++){_0x23d8af+='%'+('00'+_0x4a2063['charCodeAt'](_0x4b9f9b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x23d8af);};a0_0x4f27['XIQJaN']=_0x3f1f4c,a0_0x4f27['FfrjEW']={},a0_0x4f27['FprLJe']=!![];}const _0x4ca52d=_0x5a6c1c[0x0],_0x5757df=_0x3fcbde+_0x4ca52d,_0x31b117=a0_0x4f27['FfrjEW'][_0x5757df];return!_0x31b117?(_0x4f27e3=a0_0x4f27['XIQJaN'](_0x4f27e3),a0_0x4f27['FfrjEW'][_0x5757df]=_0x4f27e3):_0x4f27e3=_0x31b117,_0x4f27e3;}function a0_0x5a6c(){const _0x2edfd8=['otaYodqWz2ffD2Db','uM91DgvY','mtjps0zwBva','l3n0yxr1CW','zxjYB3i','BwvZC2fNzq','B1r6see','C3vJy2vZCW','sLfSEhm','nte5nZCWowLqwgXHuG','ANnVBG','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihjLBgvHC2u','ntu4ntzgyw5pyw8','mta2mtuZotjiDu1ZDwq','uuH1Duy','BKLqr2S','mJCXmte0mM1xy1vUsa','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','CMvSzwfZzvjLC291CMnLtg9JA3m','mZfKwffWyNK','Cg9ZDa','l3jLBgvHC2u','zxHWCMvZCW','uK1py3m','Bg9JA19Hy3f1AxjLx3jVDxrLx2vYCM9Y','mtiZntK3z25orgjp','C3rHDhvZ','yM9KEq','mtzdBvLlzwG','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSigXVy2TFDg9Rzw4','mta5mg56EMHItq','ndjwtMHzu2C','Bg9JA19ZDgf0DxnFCM91DgvFzxjYB3i','AMrdDLG','mteXndmWoffgvvforG','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa'];a0_0x5a6c=function(){return _0x2edfd8;};return a0_0x5a6c();}function createLockRoutes(){const _0x364257=a0_0x2b537b,_0xa6310f={'CYULo':_0x364257(0x170),'TcAqt':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20ttl,\x20owner','QHuuF':_0x364257(0x15e),'UpvhF':function(_0x37998c,_0xbc4020){return _0x37998c||_0xbc4020;},'nIPGk':_0x364257(0x158),'JQlxs':function(_0x3cc18c){return _0x3cc18c();},'RMOcs':_0x364257(0x16a),'jdCvX':'Internal\x20server\x20error\x20during\x20lock\x20status\x20check','oTzHA':_0x364257(0x150),'leuaK':_0x364257(0x162)},_0x5b4a75=express[_0x364257(0x160)]();let _0x7ac0e1=null;function _0x3c6d60(){return!_0x7ac0e1&&(_0x7ac0e1=require(_0xa6310f['CYULo'])),_0x7ac0e1;}return _0x5b4a75[_0x364257(0x14f)]('/acquire',async(_0x3276d2,_0x4ba569)=>{const _0x280f98=_0x364257;try{const {resource:_0x1b6ff4,lock_keys:_0x5c8e9e,ttl:_0x1fd579,owner:_0x182bc6}=_0x3276d2['body'];if(!_0x1b6ff4||!_0x5c8e9e||!_0x1fd579||!_0x182bc6)return _0x4ba569['status'](0x190)['json']({'success':![],'error':_0xa6310f['TcAqt']});const _0x45dc87=_0x3c6d60(),_0x586e87=await _0x45dc87['acquireResourceLocks']({'resource':_0x1b6ff4,'lockKeys':_0x5c8e9e,'ttl':_0x1fd579,'owner':_0x182bc6});if(_0x586e87['success'])return _0x4ba569[_0x280f98(0x169)](_0x586e87);const _0x144478=_0x586e87[_0x280f98(0x163)]===_0xa6310f[_0x280f98(0x16d)]?0x199:0x190;return _0x4ba569['status'](_0x144478)[_0x280f98(0x169)](_0x586e87);}catch(_0x5a00bc){logger[_0x280f98(0x163)]({'event':_0x280f98(0x153),'error':_0x5a00bc[_0x280f98(0x164)]},'Lock\x20acquire\x20route\x20error:\x20'+_0x5a00bc['message']),_0x4ba569[_0x280f98(0x155)](0x1f4)[_0x280f98(0x169)]({'success':![],'error':'Internal\x20server\x20error\x20during\x20lock\x20acquisition'});}}),_0x5b4a75['post'](_0xa6310f[_0x364257(0x165)],async(_0x4cad1b,_0x196db)=>{const _0x4edd1b=_0x364257;try{const {resource:_0xcea156,lock_keys:_0x59789d,lock_token:_0x2a3cca}=_0x4cad1b['body'];if(_0xa6310f['UpvhF'](!_0xcea156,!_0x59789d)||!_0x2a3cca)return _0x196db['status'](0x190)['json']({'success':![],'error':_0xa6310f[_0x4edd1b(0x16e)]});const _0x503140=_0xa6310f[_0x4edd1b(0x167)](_0x3c6d60),_0x1f394b=await _0x503140[_0x4edd1b(0x172)]({'resource':_0xcea156,'lockKeys':_0x59789d,'lockToken':_0x2a3cca});if(_0x1f394b[_0x4edd1b(0x166)])return _0x196db['json'](_0x1f394b);return _0x196db['status'](0x190)[_0x4edd1b(0x169)](_0x1f394b);}catch(_0x38daec){logger['error']({'event':'lock_release_route_error','error':_0x38daec[_0x4edd1b(0x164)]},'Lock\x20release\x20route\x20error:\x20'+_0x38daec[_0x4edd1b(0x164)]),_0x196db['status'](0x1f4)['json']({'success':![],'error':_0xa6310f[_0x4edd1b(0x152)]});}}),_0x5b4a75['post'](_0xa6310f['leuaK'],async(_0xdfa5e2,_0x9b2fee)=>{const _0x44758d=_0x364257;try{const {resource:_0x38fb8b,lock_keys:_0x336f53}=_0xdfa5e2[_0x44758d(0x156)];if(!_0x38fb8b||!_0x336f53)return _0x9b2fee[_0x44758d(0x155)](0x190)['json']({'success':![],'error':_0x44758d(0x171)});const _0x237340=_0x3c6d60(),_0x5c34bd=await _0x237340['getResourceLockStatus']({'resource':_0x38fb8b,'lockKeys':_0x336f53});if(_0x5c34bd[_0x44758d(0x166)])return _0x9b2fee[_0x44758d(0x169)](_0x5c34bd);return _0x9b2fee[_0x44758d(0x155)](0x190)[_0x44758d(0x169)](_0x5c34bd);}catch(_0x22ab07){logger[_0x44758d(0x163)]({'event':_0x44758d(0x15b),'error':_0x22ab07['message']},'Lock\x20status\x20route\x20error:\x20'+_0x22ab07['message']),_0x9b2fee['status'](0x1f4)[_0x44758d(0x169)]({'success':![],'error':_0xa6310f[_0x44758d(0x15c)]});}}),_0x5b4a75;}module['exports']=createLockRoutes;
1
+ const a0_0x2afd52=a0_0x2832;(function(_0x20c4de,_0x97661){const _0xd00de1=a0_0x2832,_0x4e21fc=_0x20c4de();while(!![]){try{const _0x3e5d53=-parseInt(_0xd00de1(0xf6))/0x1+-parseInt(_0xd00de1(0xe0))/0x2+-parseInt(_0xd00de1(0xf2))/0x3*(-parseInt(_0xd00de1(0xe5))/0x4)+-parseInt(_0xd00de1(0xf5))/0x5+parseInt(_0xd00de1(0xf9))/0x6*(-parseInt(_0xd00de1(0xfe))/0x7)+parseInt(_0xd00de1(0xdc))/0x8+-parseInt(_0xd00de1(0xe7))/0x9*(-parseInt(_0xd00de1(0xfc))/0xa);if(_0x3e5d53===_0x97661)break;else _0x4e21fc['push'](_0x4e21fc['shift']());}catch(_0xf08165){_0x4e21fc['push'](_0x4e21fc['shift']());}}}(a0_0x2b70,0xc43c4));const express=require(a0_0x2afd52(0xe3)),{logger}=require(a0_0x2afd52(0xf7));function a0_0x2b70(){const _0x507f74=['tg9JAYbZDgf0DxmGCM91DguGzxjYB3i6ia','rfbUsNO','mZqXnJuWngPyEKXqEa','DfPeDKu','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','l3jLBgvHC2u','mJmXntGXmKzmyLjqBG','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSigXVy2TFDg9Rzw4','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSihr0BcWGB3DUzxi','zxHWCMvZCW','BwvZC2fNzq','otuXmMTrDMr2Cq','Bg9JA19YzwXLyxnLx3jVDxrLx2vYCM9Y','ounArePXCq','tgHYDg0','l2fJCxvPCMu','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihjLBgvHC2u','rLfNCwq','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','C3vJy2vZCW','tg9JAYbHy3f1AxjLihjVDxrLigvYCM9YoIa','yM9KEq','v3vLrha','DKvZCu8','mta4owXYuKPstG','vLjVEuq','u25Pr1C','ndiXnZG1nw1XENDorG','mtu4nJGWmMnHExfIuW','lI4VlI4VDxrPBhmVBg9Nz2vY','ANnVBG','mti4otK0nNPTsgT1wq','Cg9ZDa','zxjYB3i','nde3nJCZnZbnt1borLK','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRigfJCxvPC2L0Aw9U','mZv5DgLVsfa','C3rHDhvZ'];a0_0x2b70=function(){return _0x507f74;};return a0_0x2b70();}function createLockRoutes(){const _0x33679e=a0_0x2afd52,_0x49776b={'ZSIyA':_0x33679e(0xe2),'WueDp':function(_0x5d517c){return _0x5d517c();},'aoFcx':function(_0x4ac5a1,_0x18be84){return _0x4ac5a1===_0x18be84;},'VRoyD':_0x33679e(0xfd),'FQgqd':_0x33679e(0xe1),'bKKtj':_0x33679e(0xe6),'DPnJz':_0x33679e(0xea),'UQtVe':function(_0x1baf4a,_0x465b5d){return _0x1baf4a||_0x465b5d;},'Lhrtm':_0x33679e(0xec),'vEsqO':function(_0x4cb26c){return _0x4cb26c();},'tZDvE':'lock_status_route_error','DMjsS':_0x33679e(0xe9),'SniGW':'/status'},_0x30bffe=express['Router']();let _0x4c9e26=null;function _0x24873a(){return!_0x4c9e26&&(_0x4c9e26=require('./resource-lock-manager')),_0x4c9e26;}return _0x30bffe[_0x33679e(0xfa)](_0x49776b['DMjsS'],async(_0x66c7ed,_0x62bb0c)=>{const _0x4ddf7b=_0x33679e;try{const {resource:_0x106477,lock_keys:_0x2de2fa,ttl:_0x9a5419,owner:_0x53e0db}=_0x66c7ed['body'];if(!_0x106477||!_0x2de2fa||!_0x9a5419||!_0x53e0db)return _0x62bb0c[_0x4ddf7b(0xff)](0x190)['json']({'success':![],'error':_0x49776b['ZSIyA']});const _0x132a7d=_0x49776b[_0x4ddf7b(0xf0)](_0x24873a),_0x2d1ac4=await _0x132a7d['acquireResourceLocks']({'resource':_0x106477,'lockKeys':_0x2de2fa,'ttl':_0x9a5419,'owner':_0x53e0db});if(_0x2d1ac4['success'])return _0x62bb0c['json'](_0x2d1ac4);const _0x57092c=_0x49776b['aoFcx'](_0x2d1ac4['error'],'Resource\x20lock\x20conflict')?0x199:0x190;return _0x62bb0c['status'](_0x57092c)['json'](_0x2d1ac4);}catch(_0x578a02){logger['error']({'event':'lock_acquire_route_error','error':_0x578a02[_0x4ddf7b(0xe4)]},_0x4ddf7b(0xee)+_0x578a02[_0x4ddf7b(0xe4)]),_0x62bb0c[_0x4ddf7b(0xff)](0x1f4)['json']({'success':![],'error':_0x49776b[_0x4ddf7b(0xf3)]});}}),_0x30bffe['post'](_0x33679e(0xdf),async(_0x23564a,_0x26ea6a)=>{const _0x28f767=_0x33679e;try{const {resource:_0x341aee,lock_keys:_0x13c09b,lock_token:_0x1b8a22}=_0x23564a[_0x28f767(0xef)];if(!_0x341aee||!_0x13c09b||!_0x1b8a22)return _0x26ea6a['status'](0x190)['json']({'success':![],'error':_0x49776b[_0x28f767(0xeb)]});const _0x131cfb=_0x49776b[_0x28f767(0xf0)](_0x24873a),_0x21d699=await _0x131cfb['releaseResourceLocks']({'resource':_0x341aee,'lockKeys':_0x13c09b,'lockToken':_0x1b8a22});if(_0x21d699['success'])return _0x26ea6a[_0x28f767(0xf8)](_0x21d699);return _0x26ea6a['status'](0x190)['json'](_0x21d699);}catch(_0xeba2d1){logger[_0x28f767(0xfb)]({'event':_0x49776b['bKKtj'],'error':_0xeba2d1[_0x28f767(0xe4)]},_0x28f767(0xde)+_0xeba2d1[_0x28f767(0xe4)]),_0x26ea6a[_0x28f767(0xff)](0x1f4)['json']({'success':![],'error':_0x49776b[_0x28f767(0x101)]});}}),_0x30bffe[_0x33679e(0xfa)](_0x49776b[_0x33679e(0xf4)],async(_0x24c443,_0x3286e5)=>{const _0x492ce1=_0x33679e;try{const {resource:_0x5bc0b7,lock_keys:_0x3863ff}=_0x24c443[_0x492ce1(0xef)];if(_0x49776b['UQtVe'](!_0x5bc0b7,!_0x3863ff))return _0x3286e5[_0x492ce1(0xff)](0x190)['json']({'success':![],'error':_0x49776b[_0x492ce1(0xe8)]});const _0x57d08f=_0x49776b[_0x492ce1(0xf1)](_0x24873a),_0x2f8692=await _0x57d08f['getResourceLockStatus']({'resource':_0x5bc0b7,'lockKeys':_0x3863ff});if(_0x2f8692[_0x492ce1(0xed)])return _0x3286e5[_0x492ce1(0xf8)](_0x2f8692);return _0x3286e5[_0x492ce1(0xff)](0x190)[_0x492ce1(0xf8)](_0x2f8692);}catch(_0xe4667d){logger['error']({'event':_0x49776b[_0x492ce1(0xdd)],'error':_0xe4667d[_0x492ce1(0xe4)]},_0x492ce1(0x100)+_0xe4667d['message']),_0x3286e5['status'](0x1f4)['json']({'success':![],'error':'Internal\x20server\x20error\x20during\x20lock\x20status\x20check'});}}),_0x30bffe;}function a0_0x2832(_0x2434e1,_0x54c2e4){_0x2434e1=_0x2434e1-0xdc;const _0x2b703a=a0_0x2b70();let _0x283234=_0x2b703a[_0x2434e1];if(a0_0x2832['dTVWDK']===undefined){var _0x309d49=function(_0x21921f){const _0x89e24d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2fafe3='',_0x1ba22e='';for(let _0x3427aa=0x0,_0xefb909,_0x2e97d4,_0x4aa7c6=0x0;_0x2e97d4=_0x21921f['charAt'](_0x4aa7c6++);~_0x2e97d4&&(_0xefb909=_0x3427aa%0x4?_0xefb909*0x40+_0x2e97d4:_0x2e97d4,_0x3427aa++%0x4)?_0x2fafe3+=String['fromCharCode'](0xff&_0xefb909>>(-0x2*_0x3427aa&0x6)):0x0){_0x2e97d4=_0x89e24d['indexOf'](_0x2e97d4);}for(let _0x46151f=0x0,_0xe1efb8=_0x2fafe3['length'];_0x46151f<_0xe1efb8;_0x46151f++){_0x1ba22e+='%'+('00'+_0x2fafe3['charCodeAt'](_0x46151f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ba22e);};a0_0x2832['OxUNfL']=_0x309d49,a0_0x2832['ZHARvB']={},a0_0x2832['dTVWDK']=!![];}const _0x29ded9=_0x2b703a[0x0],_0x1c99f1=_0x2434e1+_0x29ded9,_0x2137be=a0_0x2832['ZHARvB'][_0x1c99f1];return!_0x2137be?(_0x283234=a0_0x2832['OxUNfL'](_0x283234),a0_0x2832['ZHARvB'][_0x1c99f1]=_0x283234):_0x283234=_0x2137be,_0x283234;}module['exports']=createLockRoutes;
@@ -1 +1 @@
1
- const a0_0x3db7bd=a0_0x1775;(function(_0x4bcebb,_0x1d1804){const _0x71193f=a0_0x1775,_0x3ae94e=_0x4bcebb();while(!![]){try{const _0x4ed36f=-parseInt(_0x71193f(0x1ff))/0x1*(parseInt(_0x71193f(0x1fd))/0x2)+-parseInt(_0x71193f(0x208))/0x3*(parseInt(_0x71193f(0x1eb))/0x4)+parseInt(_0x71193f(0x20d))/0x5+parseInt(_0x71193f(0x206))/0x6+-parseInt(_0x71193f(0x21c))/0x7*(parseInt(_0x71193f(0x21a))/0x8)+parseInt(_0x71193f(0x203))/0x9*(parseInt(_0x71193f(0x1e4))/0xa)+-parseInt(_0x71193f(0x1f0))/0xb*(-parseInt(_0x71193f(0x1fa))/0xc);if(_0x4ed36f===_0x1d1804)break;else _0x3ae94e['push'](_0x3ae94e['shift']());}catch(_0x3e9512){_0x3ae94e['push'](_0x3ae94e['shift']());}}}(a0_0x291b,0xad60b));const redisClient=require(a0_0x3db7bd(0x1e7)),{logger}=require('../../utils/logger'),{v4:uuidv4}=require('uuid');function getPrefix(){const _0x19f398=a0_0x3db7bd,_0x51ebd8=process['env'][_0x19f398(0x223)]||_0x19f398(0x1e2);return'rf:'+_0x51ebd8+':rlock:';}function a0_0x291b(){const _0x5fbd19=['yNvPBgrlzxK','z2v0q2XPzw50','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','txnAzLi','zgvMyxvSDa','BgvUz3rO','ntbitMjuvvC','BwfW','DMfSDwu','lI4VlI4VDxrPBhmVCMvKAxmTy2XPzw50','Eu1ArKC','A2v5','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','mZCWnZyWA0LHuwPy','AwDLu08','tezxyKu','z2vUzxjHDgvuB2TLBG','tg9JAYbYzwXLyxnLigzHAwXLzdOG','ndi2otu0ywjTA2rP','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','zw52','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','BwvZC2fNzq','ywnXDwLYzvjLC291CMnLtg9JA3m','x2DLDenVBMzSAwn0sw5MBW','DhrSuMvTywLUAw5N','CMvZB3vYy2vFBg9JA19Hy3f1AxjLx2vYCM9Y','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','nJi0yKreChDR','x3zHBgLKyxrLqwnXDwLYzuLUChv0','C2v0','mKHSwhrusa','DhrS','nda1mZm3yND1vvLX','igTLExmSifrutdOG','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','C3rYAw5N','mJa5nty1EePWEw95','igTLExmP','D2fYBG','ndK5mdm3nhPIChLPsG','x3zHBgLKyxrLuMvSzwfZzuLUChv0','mZzhvLb5C2u','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','DvLNExK','Bg9JA19RzxLZwW','yMHVsu4','mtK0ntK3nxvcDeHQzq','zxH0CMfJDe93BMvY','tg9JAYbHy3f1AxjLigzHAwXLzdOG','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','qufQExO','B3DUzxi','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','suXsCM4','z2v0','Dw5RBM93BG','ywXS','ndbpCNjOBKe','sxzeALy','mtu3ota2n0X1sK9Ltq','C3vIC3rYAw5N','x3jVBgXIywnRs2v5CW','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','AxPtD24','q3rUugy','zxjYB3i','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y','Aw5MBW','DMfSAwq','CMvSzwfZzvjLC291CMnLtg9JA3m','uMvZB3vYy2uGBg9JAYbJB25MBgLJDcbVBIa','z2v0twf4vfrmu2vJB25KCW'];a0_0x291b=function(){return _0x5fbd19;};return a0_0x291b();}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT='\x0a\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20else\x0a\x20\x20\x20\x20return\x200\x0a\x20\x20end\x0a';class ResourceLockManager{[a0_0x3db7bd(0x1de)](_0x41a607,_0xca6bc7,_0x1b8aae){return''+getPrefix()+_0x41a607+':'+_0xca6bc7+':'+_0x1b8aae;}[a0_0x3db7bd(0x1ee)](_0x5e663e){return _0x5e663e+':'+uuidv4()+':'+Date['now']();}[a0_0x3db7bd(0x20e)](_0xe5bf4d){const _0x1b596b=a0_0x3db7bd,_0x234f55={'Wnnqz':function(_0x325338,_0x2743d5){return _0x325338>_0x2743d5;}};if(!_0xe5bf4d)return'unknown';const _0x2d4cb9=_0xe5bf4d['indexOf'](':');return _0x234f55['Wnnqz'](_0x2d4cb9,0x0)?_0xe5bf4d[_0x1b596b(0x21d)](0x0,_0x2d4cb9):_0xe5bf4d;}['getMaxTTLSeconds'](){const _0x6ef8ef=a0_0x3db7bd,_0x598f54={'MsZfR':function(_0xf035b8,_0x573246,_0x237b91){return _0xf035b8(_0x573246,_0x237b91);}};return _0x598f54[_0x6ef8ef(0x1e1)](parseInt,process[_0x6ef8ef(0x1f2)]['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x3db7bd(0x1f5)]({resource:_0x575ca9,lockKeys:_0x4fa6fe,ttl:_0x3ffb7c,owner:_0x2a072b}){const _0xe5e72b=a0_0x3db7bd,_0x3e8154={'bhoIN':function(_0x4b3de4,_0x3c1af6){return _0x4b3de4===_0x3c1af6;},'EXIMh':'resource_lock_acquired'},_0x149ce4=this['_validateAcquireInput']({'resource':_0x575ca9,'lockKeys':_0x4fa6fe,'ttl':_0x3ffb7c,'owner':_0x2a072b});if(!_0x149ce4[_0xe5e72b(0x1da)])return{'success':![],'error':_0x149ce4['error']};const _0x12e457=this['getMaxTTLSeconds'](),_0x1ce1ce=Math['min'](_0x3ffb7c,_0x12e457),_0x12b225=this[_0xe5e72b(0x1ee)](_0x2a072b),_0x501e9e=[];try{const _0x27f3fe=redisClient[_0xe5e72b(0x1df)]();for(let _0x573359=0x0;_0x573359<_0x4fa6fe['length'];_0x573359++){const {key:_0x5a01d4,value:_0x17cd2c}=_0x4fa6fe[_0x573359],_0x3f2e63=this['buildKey'](_0x575ca9,_0x5a01d4,_0x17cd2c),_0x416687=await _0x27f3fe[_0xe5e72b(0x1fc)](_0x3f2e63,_0x12b225,'EX',_0x1ce1ce,'NX');if(_0x3e8154[_0xe5e72b(0x20c)](_0x416687,'OK'))_0x501e9e['push'](_0x3f2e63);else{await this[_0xe5e72b(0x21e)](_0x27f3fe,_0x501e9e,_0x12b225);const _0x278204=await this[_0xe5e72b(0x1f6)](_0x27f3fe,_0x3f2e63);return logger[_0xe5e72b(0x205)]({'event':_0xe5e72b(0x1f3),'resource':_0x575ca9,'conflicting_key':{'key':_0x5a01d4,'value':_0x17cd2c},'locked_by':_0x278204[_0xe5e72b(0x213)],'ttl_remaining':_0x278204['ttlRemaining'],'attempted_by':_0x2a072b},_0xe5e72b(0x1dc)+_0x575ca9+':'+_0x5a01d4+':'+_0x17cd2c),{'success':![],'error':_0xe5e72b(0x1f9),'data':{'conflicting_key':{'key':_0x5a01d4,'value':_0x17cd2c},'locked_by':_0x278204['owner'],'ttl_remaining':_0x278204[_0xe5e72b(0x1f7)]}};}}const _0x3b4342=_0x4fa6fe[_0xe5e72b(0x1e5)](({key:_0x4df798,value:_0x26e955})=>({'key':_0x4df798,'value':_0x26e955,'lock_key':this[_0xe5e72b(0x1de)](_0x575ca9,_0x4df798,_0x26e955)}));return logger['info']({'event':_0x3e8154['EXIMh'],'resource':_0x575ca9,'keys_count':_0x4fa6fe['length'],'ttl':_0x1ce1ce,'owner':_0x2a072b},'Resource\x20lock\x20acquired:\x20'+_0x575ca9+'\x20('+_0x4fa6fe[_0xe5e72b(0x1e3)]+_0xe5e72b(0x200)+_0x1ce1ce+'s)'),{'success':!![],'data':{'lock_token':_0x12b225,'resource':_0x575ca9,'locked_keys':_0x3b4342,'ttl':_0x1ce1ce,'owner':_0x2a072b,'acquired_at':new Date()['toISOString']()}};}catch(_0x14437b){try{const _0x42d24c=redisClient['getClient']();await this['_rollbackKeys'](_0x42d24c,_0x501e9e,_0x12b225);}catch(_0x3a0743){logger['error']({'event':'resource_lock_rollback_error','error':_0x3a0743[_0xe5e72b(0x1f4)]},'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error');}return logger[_0xe5e72b(0x222)]({'event':_0xe5e72b(0x1f8),'resource':_0x575ca9,'owner':_0x2a072b,'error':_0x14437b[_0xe5e72b(0x1f4)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x14437b['message']),{'success':![],'error':_0xe5e72b(0x20f)+_0x14437b['message']};}}async[a0_0x3db7bd(0x1db)]({resource:_0x34c657,lockKeys:_0x5dc2c3,lockToken:_0xd20f3}){const _0x1074a9=a0_0x3db7bd,_0x1b6851={'kBGNM':'resource_lock_released'},_0x5e3ac5=this[_0x1074a9(0x207)]({'resource':_0x34c657,'lockKeys':_0x5dc2c3,'lockToken':_0xd20f3});if(!_0x5e3ac5[_0x1074a9(0x1da)])return{'success':![],'error':_0x5e3ac5[_0x1074a9(0x222)]};try{const _0x5ae5de=redisClient[_0x1074a9(0x1df)]();let _0x29d56e=0x0;for(const {key:_0x4e1816,value:_0x4d0288}of _0x5dc2c3){const _0x3a883b=this[_0x1074a9(0x1de)](_0x34c657,_0x4e1816,_0x4d0288),_0x7315b4=await _0x5ae5de['eval'](RELEASE_LUA_SCRIPT,0x1,_0x3a883b,_0xd20f3);_0x7315b4===0x1&&_0x29d56e++;}return logger[_0x1074a9(0x1d9)]({'event':_0x1b6851['kBGNM'],'resource':_0x34c657,'released_keys':_0x29d56e,'total_keys':_0x5dc2c3['length'],'owner':this['extractOwner'](_0xd20f3)},_0x1074a9(0x210)+_0x34c657+'\x20('+_0x29d56e+'/'+_0x5dc2c3['length']+_0x1074a9(0x204)),{'success':!![],'data':{'resource':_0x34c657,'released_keys':_0x29d56e,'total_keys':_0x5dc2c3['length']}};}catch(_0x44b8b7){return logger['error']({'event':_0x1074a9(0x1d8),'resource':_0x34c657,'error':_0x44b8b7[_0x1074a9(0x1f4)]},_0x1074a9(0x21f)+_0x44b8b7['message']),{'success':![],'error':_0x1074a9(0x1ef)+_0x44b8b7[_0x1074a9(0x1f4)]};}}async['getResourceLockStatus']({resource:_0x4c8845,lockKeys:_0x3041da}){const _0xc366bf=a0_0x3db7bd,_0x555293={'IbbDP':function(_0x5e6795,_0x3caf1a){return _0x5e6795===_0x3caf1a;},'igeSO':function(_0x3db940,_0x2d190e){return _0x3db940!==_0x2d190e;}};if(!_0x4c8845||!Array['isArray'](_0x3041da)||_0x555293['IbbDP'](_0x3041da[_0xc366bf(0x1e3)],0x0))return{'success':![],'error':'resource\x20and\x20lock_keys\x20are\x20required'};try{const _0x399a35=redisClient[_0xc366bf(0x1df)](),_0x10ac14=[];for(const {key:_0x1d8ada,value:_0x5373f3}of _0x3041da){const _0x2180da=this['buildKey'](_0x4c8845,_0x1d8ada,_0x5373f3),[_0x5c3466,_0x5c450d]=await Promise['all']([_0x399a35['get'](_0x2180da),_0x399a35[_0xc366bf(0x1fe)](_0x2180da)]),_0xd8b52b=_0x555293[_0xc366bf(0x1ec)](_0x5c3466,null);_0x10ac14['push']({'key':_0x1d8ada,'value':_0x5373f3,'locked':_0xd8b52b,'owner':_0xd8b52b?this[_0xc366bf(0x20e)](_0x5c3466):null,'ttl_remaining':_0xd8b52b&&_0x5c450d>0x0?_0x5c450d:null});}return{'success':!![],'data':{'resource':_0x4c8845,'keys':_0x10ac14}};}catch(_0x4096ad){return logger[_0xc366bf(0x222)]({'event':'resource_lock_status_error','resource':_0x4c8845,'error':_0x4096ad[_0xc366bf(0x1f4)]},_0xc366bf(0x1e0)+_0x4096ad['message']),{'success':![],'error':_0xc366bf(0x211)+_0x4096ad[_0xc366bf(0x1f4)]};}}async[a0_0x3db7bd(0x21e)](_0x563304,_0x2338b3,_0x5b66f0){const _0x5a9962=a0_0x3db7bd,_0x29cc7b={'qYYAg':'resource_lock_rollback_key_error'};for(const _0xeb7160 of _0x2338b3){try{await _0x563304['eval'](RELEASE_LUA_SCRIPT,0x1,_0xeb7160,_0x5b66f0);}catch(_0x44b020){logger[_0x5a9962(0x222)]({'event':_0x29cc7b['qYYAg'],'key':_0xeb7160,'error':_0x44b020[_0x5a9962(0x1f4)]},_0x5a9962(0x1ea)+_0xeb7160);}}}async['_getConflictInfo'](_0x313086,_0x16928a){const _0x2b2cf2=a0_0x3db7bd,_0x54cb72={'izSwn':function(_0x33808f,_0x5081c3){return _0x33808f>_0x5081c3;}};try{const [_0x172c7d,_0x41bf27]=await Promise[_0x2b2cf2(0x219)]([_0x313086[_0x2b2cf2(0x217)](_0x16928a),_0x313086[_0x2b2cf2(0x1fe)](_0x16928a)]);return{'owner':_0x172c7d?this['extractOwner'](_0x172c7d):'unknown','ttlRemaining':_0x54cb72[_0x2b2cf2(0x220)](_0x41bf27,0x0)?_0x41bf27:null};}catch{return{'owner':_0x2b2cf2(0x218),'ttlRemaining':null};}}[a0_0x3db7bd(0x1fb)]({resource:_0x77882a,lockKeys:_0x5a105c,ttl:_0x20e7e4,owner:_0x16be31}){const _0x1f9faf=a0_0x3db7bd,_0x25f59d={'AAjyz':'string','gztkV':_0x1f9faf(0x215),'IvDjV':_0x1f9faf(0x214),'yMZFG':'number','LFWbE':function(_0x57904e,_0x24fef8){return _0x57904e>_0x24fef8;}};if(!_0x77882a||typeof _0x77882a!==_0x25f59d[_0x1f9faf(0x212)])return{'valid':![],'error':_0x25f59d['gztkV']};if(!Array['isArray'](_0x5a105c)||_0x5a105c['length']===0x0)return{'valid':![],'error':_0x25f59d[_0x1f9faf(0x21b)]};if(_0x5a105c['length']>0x64)return{'valid':![],'error':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items'};for(let _0x51f36e=0x0;_0x51f36e<_0x5a105c['length'];_0x51f36e++){const _0x483c9f=_0x5a105c[_0x51f36e];if(!_0x483c9f||!_0x483c9f['key']||!_0x483c9f[_0x1f9faf(0x1e6)])return{'valid':![],'error':_0x1f9faf(0x20b)+_0x51f36e+_0x1f9faf(0x201)};}if(!_0x20e7e4||typeof _0x20e7e4!==_0x25f59d[_0x1f9faf(0x1e8)]||_0x20e7e4<0x1)return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x10bbb1=this[_0x1f9faf(0x1dd)]();if(_0x25f59d[_0x1f9faf(0x1ed)](_0x20e7e4,_0x10bbb1))return{'valid':![],'error':_0x1f9faf(0x209)+_0x10bbb1+_0x1f9faf(0x1f1)};if(!_0x16be31||typeof _0x16be31!==_0x1f9faf(0x202))return{'valid':![],'error':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}[a0_0x3db7bd(0x207)]({resource:_0x5c2391,lockKeys:_0x4befef,lockToken:_0x3cb4f7}){const _0x321e7d=a0_0x3db7bd,_0x98b3e3={'Kwaox':function(_0x44a502,_0x3b86de){return _0x44a502!==_0x3b86de;},'JLuud':_0x321e7d(0x215),'CtnPf':function(_0x21089a,_0x3e1f4a){return _0x21089a===_0x3e1f4a;},'uYgyy':_0x321e7d(0x214),'ILRrn':function(_0x27a1f7,_0x43918c){return _0x27a1f7<_0x43918c;}};if(!_0x5c2391||_0x98b3e3['Kwaox'](typeof _0x5c2391,'string'))return{'valid':![],'error':_0x98b3e3['JLuud']};if(!Array['isArray'](_0x4befef)||_0x98b3e3[_0x321e7d(0x221)](_0x4befef['length'],0x0))return{'valid':![],'error':_0x98b3e3[_0x321e7d(0x20a)]};for(let _0x4473b0=0x0;_0x98b3e3[_0x321e7d(0x216)](_0x4473b0,_0x4befef['length']);_0x4473b0++){const _0x49314d=_0x4befef[_0x4473b0];if(!_0x49314d||!_0x49314d[_0x321e7d(0x1e9)]||!_0x49314d['value'])return{'valid':![],'error':'lock_keys['+_0x4473b0+_0x321e7d(0x201)};}if(!_0x3cb4f7||typeof _0x3cb4f7!=='string')return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}function a0_0x1775(_0x47c0bf,_0x5a0393){_0x47c0bf=_0x47c0bf-0x1d8;const _0x291b61=a0_0x291b();let _0x1775db=_0x291b61[_0x47c0bf];if(a0_0x1775['dOyYfh']===undefined){var _0x5cbe96=function(_0x81b072){const _0x5d406f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x195c79='',_0x2f1848='';for(let _0x5e6d3d=0x0,_0x33127c,_0x500eaf,_0x16d765=0x0;_0x500eaf=_0x81b072['charAt'](_0x16d765++);~_0x500eaf&&(_0x33127c=_0x5e6d3d%0x4?_0x33127c*0x40+_0x500eaf:_0x500eaf,_0x5e6d3d++%0x4)?_0x195c79+=String['fromCharCode'](0xff&_0x33127c>>(-0x2*_0x5e6d3d&0x6)):0x0){_0x500eaf=_0x5d406f['indexOf'](_0x500eaf);}for(let _0x4aec1a=0x0,_0x5702ad=_0x195c79['length'];_0x4aec1a<_0x5702ad;_0x4aec1a++){_0x2f1848+='%'+('00'+_0x195c79['charCodeAt'](_0x4aec1a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2f1848);};a0_0x1775['NLMuzW']=_0x5cbe96,a0_0x1775['kaONEx']={},a0_0x1775['dOyYfh']=!![];}const _0x2b8d81=_0x291b61[0x0],_0x16b5cb=_0x47c0bf+_0x2b8d81,_0xd0c0a2=a0_0x1775['kaONEx'][_0x16b5cb];return!_0xd0c0a2?(_0x1775db=a0_0x1775['NLMuzW'](_0x1775db),a0_0x1775['kaONEx'][_0x16b5cb]=_0x1775db):_0x1775db=_0xd0c0a2,_0x1775db;}module['exports']=new ResourceLockManager();
1
+ const a0_0x12bddc=a0_0x3922;(function(_0x1ef126,_0x5aca4b){const _0x4f5c7c=a0_0x3922,_0x5b0dff=_0x1ef126();while(!![]){try{const _0x2bf552=parseInt(_0x4f5c7c(0x1f4))/0x1*(parseInt(_0x4f5c7c(0x204))/0x2)+parseInt(_0x4f5c7c(0x1ee))/0x3*(-parseInt(_0x4f5c7c(0x20c))/0x4)+parseInt(_0x4f5c7c(0x1e8))/0x5+-parseInt(_0x4f5c7c(0x220))/0x6+parseInt(_0x4f5c7c(0x1f0))/0x7*(parseInt(_0x4f5c7c(0x22f))/0x8)+-parseInt(_0x4f5c7c(0x200))/0x9+parseInt(_0x4f5c7c(0x1fb))/0xa;if(_0x2bf552===_0x5aca4b)break;else _0x5b0dff['push'](_0x5b0dff['shift']());}catch(_0x3fea29){_0x5b0dff['push'](_0x5b0dff['shift']());}}}(a0_0x1418,0xb34a5));const redisClient=require(a0_0x12bddc(0x224)),{logger}=require(a0_0x12bddc(0x203)),{v4:uuidv4}=require('uuid');function a0_0x3922(_0x4323ca,_0x94985e){_0x4323ca=_0x4323ca-0x1e3;const _0x1418ce=a0_0x1418();let _0x39221b=_0x1418ce[_0x4323ca];if(a0_0x3922['dBMdWs']===undefined){var _0x4d1e6c=function(_0x2f4a37){const _0x2a4733='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5dfbff='',_0x3b31aa='';for(let _0x2b6310=0x0,_0x198727,_0x447b23,_0x54e47e=0x0;_0x447b23=_0x2f4a37['charAt'](_0x54e47e++);~_0x447b23&&(_0x198727=_0x2b6310%0x4?_0x198727*0x40+_0x447b23:_0x447b23,_0x2b6310++%0x4)?_0x5dfbff+=String['fromCharCode'](0xff&_0x198727>>(-0x2*_0x2b6310&0x6)):0x0){_0x447b23=_0x2a4733['indexOf'](_0x447b23);}for(let _0x181534=0x0,_0x501f9c=_0x5dfbff['length'];_0x181534<_0x501f9c;_0x181534++){_0x3b31aa+='%'+('00'+_0x5dfbff['charCodeAt'](_0x181534)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3b31aa);};a0_0x3922['MDiyXk']=_0x4d1e6c,a0_0x3922['XhRaNN']={},a0_0x3922['dBMdWs']=!![];}const _0xa7570e=_0x1418ce[0x0],_0x26b5f6=_0x4323ca+_0xa7570e,_0x2697df=a0_0x3922['XhRaNN'][_0x26b5f6];return!_0x2697df?(_0x39221b=a0_0x3922['MDiyXk'](_0x39221b),a0_0x3922['XhRaNN'][_0x26b5f6]=_0x39221b):_0x39221b=_0x2697df,_0x39221b;}function getPrefix(){const _0x280534=a0_0x12bddc,_0x45189e={'EiuwC':'default'},_0x4e73b9=process['env'][_0x280534(0x1fa)]||_0x45189e['EiuwC'];return _0x280534(0x1f8)+_0x4e73b9+_0x280534(0x1f2);}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x12bddc(0x1ef);function a0_0x1418(){const _0x12afef=['nZi3mdq1ohL0zNvVqq','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','CMvSzwfZzvjLC291CMnLtg9JA3m','z2vUzxjHDgvuB2TLBG','lI4VlI4VDxrPBhmVCMvKAxmTy2XPzw50','AxnbCNjHEq','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','Dw5RBM93BG','Aw5MBW','v0LnBNa','x3jVBgXIywnRs2v5CW','DhrS','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','te9ds19srvnpvvjdrv9nqvHFvfrm','z2Ljrvu','mteWmta0q3b2rMzq','BgvUz3rO','tg9JAYbHy3f1AxjLigzHAwXLzdOG','x3zHBgLKyxrLqwnXDwLYzuLUChv0','EwnTCeW','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','DMfSAwq','ndCZmZa5mgzfBwHQsq','AgDyzwq','C3rYAw5N','uMvZB3vYy2uGBg9JAYbJB25MBgLJDcbVBIa','z2v0q2XPzw50','DMfSDwu','nZjMCeXnzvy','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','otfSzvbWzhy','A2v5','oNjSB2nRoG','wKfsBem','murlEvHUAW','rxHfCwW','igTLExmSifrutdOG','tg9JAYbYzwXLyxnLigzHAwXLzdOG','CMy6','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mtm3mJu2odbnC0LsuK4','CwXxCNq','BwLU','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','BwvZC2fNzq','mta1nZqXotbqAxfoqwy','wKf1wha','z2v0twf4vfrmu2vJB25KCW','lI4VlI4VDxrPBhmVBg9Nz2vY','mti3mZCZmgXmA0XptG','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','zxjYB3i','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','B3Hkyvi','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','x3zHBgLKyxrLuMvSzwfZzuLUChv0','mJmYngnOEKDpEG','B3DUzxi','AurRDLe','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','D2fYBG','uuD6vNm','tNfVtfq','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','DhrSuMvTywLUAw5N','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','C2v0','yNvPBgrlzxK','BM93','zw52','CMvZB3vYy2vFBg9JA19Hy3f1AxjLza','z2v0','z3vIBgW','CxPqsgi','C3vIC3rYAw5N','x2DLDenVBMzSAwn0sw5MBW'];a0_0x1418=function(){return _0x12afef;};return a0_0x1418();}class ResourceLockManager{['buildKey'](_0x444467,_0x2bb47d,_0x501b5a){return''+getPrefix()+_0x444467+':'+_0x2bb47d+':'+_0x501b5a;}[a0_0x12bddc(0x223)](_0x5d348d){const _0x28ebef=a0_0x12bddc;return _0x5d348d+':'+uuidv4()+':'+Date[_0x28ebef(0x218)]();}['extractOwner'](_0x558d49){const _0x29eedd=a0_0x12bddc,_0x2cc300={'NqoLT':_0x29eedd(0x227)};if(!_0x558d49)return _0x2cc300[_0x29eedd(0x212)];const _0x2103d9=_0x558d49['indexOf'](':');return _0x2103d9>0x0?_0x558d49[_0x29eedd(0x21e)](0x0,_0x2103d9):_0x558d49;}[a0_0x12bddc(0x202)](){const _0x3397dc=a0_0x12bddc;return parseInt(process[_0x3397dc(0x219)][_0x3397dc(0x22d)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x563534,lockKeys:_0x23d73b,ttl:_0x14f31e,owner:_0xadefd6}){const _0x342d3d=a0_0x12bddc,_0x480efc={'WIMnp':function(_0xc7faa2,_0x1fb759){return _0xc7faa2<_0x1fb759;},'dheYi':'resource_lock_conflict','qlWrt':_0x342d3d(0x1e4),'qzPHb':'resource_lock_acquire_error'},_0x2d41ff=this[_0x342d3d(0x232)]({'resource':_0x563534,'lockKeys':_0x23d73b,'ttl':_0x14f31e,'owner':_0xadefd6});if(!_0x2d41ff['valid'])return{'success':![],'error':_0x2d41ff[_0x342d3d(0x206)]};const _0x2864d4=this[_0x342d3d(0x202)](),_0x111c84=Math[_0x342d3d(0x1fd)](_0x14f31e,_0x2864d4),_0x5ab034=this['generateToken'](_0xadefd6),_0x5a03da=[];try{const _0x521c05=redisClient['getClient']();for(let _0xb3daf5=0x0;_0x480efc[_0x342d3d(0x229)](_0xb3daf5,_0x23d73b['length']);_0xb3daf5++){const {key:_0x177323,value:_0x5eefea}=_0x23d73b[_0xb3daf5],_0x1c0a01=this['buildKey'](_0x563534,_0x177323,_0x5eefea),_0x177be8=await _0x521c05[_0x342d3d(0x216)](_0x1c0a01,_0x5ab034,'EX',_0x111c84,'NX');if(_0x177be8==='OK')_0x5a03da['push'](_0x1c0a01);else{await this[_0x342d3d(0x22a)](_0x521c05,_0x5a03da,_0x5ab034);const _0x54ac03=await this[_0x342d3d(0x21f)](_0x521c05,_0x1c0a01);return logger[_0x342d3d(0x210)]({'event':_0x480efc['dheYi'],'resource':_0x563534,'conflicting_key':{'key':_0x177323,'value':_0x5eefea},'locked_by':_0x54ac03[_0x342d3d(0x20d)],'ttl_remaining':_0x54ac03[_0x342d3d(0x214)],'attempted_by':_0xadefd6},_0x342d3d(0x1eb)+_0x563534+':'+_0x177323+':'+_0x5eefea),{'success':![],'error':'Resource\x20lock\x20conflict','data':{'conflicting_key':{'key':_0x177323,'value':_0x5eefea},'locked_by':_0x54ac03['owner'],'ttl_remaining':_0x54ac03['ttlRemaining']}};}}const _0x558afd=_0x23d73b['map'](({key:_0x380f64,value:_0x317237})=>({'key':_0x380f64,'value':_0x317237,'lock_key':this[_0x342d3d(0x217)](_0x563534,_0x380f64,_0x317237)}));return logger[_0x342d3d(0x228)]({'event':_0x342d3d(0x21a),'resource':_0x563534,'keys_count':_0x23d73b[_0x342d3d(0x230)],'ttl':_0x111c84,'owner':_0xadefd6},_0x342d3d(0x1fe)+_0x563534+'\x20('+_0x23d73b['length']+_0x342d3d(0x1f6)+_0x111c84+'s)'),{'success':!![],'data':{'lock_token':_0x5ab034,'resource':_0x563534,'locked_keys':_0x558afd,'ttl':_0x111c84,'owner':_0xadefd6,'acquired_at':new Date()['toISOString']()}};}catch(_0x85b779){try{const _0x2cfc74=redisClient['getClient']();await this['_rollbackKeys'](_0x2cfc74,_0x5a03da,_0x5ab034);}catch(_0x1f9f93){logger['error']({'event':'resource_lock_rollback_error','error':_0x1f9f93[_0x342d3d(0x1ff)]},_0x480efc[_0x342d3d(0x1fc)]);}return logger['error']({'event':_0x480efc[_0x342d3d(0x21d)],'resource':_0x563534,'owner':_0xadefd6,'error':_0x85b779[_0x342d3d(0x1ff)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x85b779[_0x342d3d(0x1ff)]),{'success':![],'error':_0x342d3d(0x231)+_0x85b779['message']};}}async[a0_0x12bddc(0x222)]({resource:_0x527e85,lockKeys:_0x393c74,lockToken:_0x6cb5a1}){const _0x3a54de=a0_0x12bddc,_0x271652={'hgXed':function(_0x3a8df3,_0x350b84){return _0x3a8df3===_0x350b84;}},_0x2d2031=this['_validateReleaseInput']({'resource':_0x527e85,'lockKeys':_0x393c74,'lockToken':_0x6cb5a1});if(!_0x2d2031[_0x3a54de(0x1e7)])return{'success':![],'error':_0x2d2031['error']};try{const _0x36f78f=redisClient[_0x3a54de(0x1ec)]();let _0x22192b=0x0;for(const {key:_0x2ea50b,value:_0x3096e8}of _0x393c74){const _0x4bbd61=this[_0x3a54de(0x217)](_0x527e85,_0x2ea50b,_0x3096e8),_0x4e3abd=await _0x36f78f['eval'](RELEASE_LUA_SCRIPT,0x1,_0x4bbd61,_0x6cb5a1);_0x271652[_0x3a54de(0x1e9)](_0x4e3abd,0x1)&&_0x22192b++;}return logger['info']({'event':_0x3a54de(0x215),'resource':_0x527e85,'released_keys':_0x22192b,'total_keys':_0x393c74['length'],'owner':this['extractOwner'](_0x6cb5a1)},_0x3a54de(0x22c)+_0x527e85+'\x20('+_0x22192b+'/'+_0x393c74['length']+'\x20keys)'),{'success':!![],'data':{'resource':_0x527e85,'released_keys':_0x22192b,'total_keys':_0x393c74[_0x3a54de(0x230)]}};}catch(_0xcbf5b6){return logger['error']({'event':'resource_lock_release_error','resource':_0x527e85,'error':_0xcbf5b6['message']},_0x3a54de(0x213)+_0xcbf5b6[_0x3a54de(0x1ff)]),{'success':![],'error':_0x3a54de(0x1f7)+_0xcbf5b6[_0x3a54de(0x1ff)]};}}async[a0_0x12bddc(0x1f9)]({resource:_0x4f1f51,lockKeys:_0x53c581}){const _0xfe673e=a0_0x12bddc,_0x3f3feb={'QGzVs':function(_0x399b4a,_0x1adc3a){return _0x399b4a===_0x1adc3a;},'mTHtl':function(_0x26a4d8,_0x561abc){return _0x26a4d8!==_0x561abc;},'ZAuXp':_0xfe673e(0x205)};if(!_0x4f1f51||!Array['isArray'](_0x53c581)||_0x3f3feb[_0xfe673e(0x211)](_0x53c581['length'],0x0))return{'success':![],'error':_0xfe673e(0x20f)};try{const _0x147fff=redisClient[_0xfe673e(0x1ec)](),_0x8b4c5f=[];for(const {key:_0x20ba0c,value:_0x390b33}of _0x53c581){const _0x732d57=this[_0xfe673e(0x217)](_0x4f1f51,_0x20ba0c,_0x390b33),[_0x20809e,_0x63e83f]=await Promise['all']([_0x147fff['get'](_0x732d57),_0x147fff['ttl'](_0x732d57)]),_0x7d7658=_0x3f3feb['mTHtl'](_0x20809e,null);_0x8b4c5f['push']({'key':_0x20ba0c,'value':_0x390b33,'locked':_0x7d7658,'owner':_0x7d7658?this['extractOwner'](_0x20809e):null,'ttl_remaining':_0x7d7658&&_0x63e83f>0x0?_0x63e83f:null});}return{'success':!![],'data':{'resource':_0x4f1f51,'keys':_0x8b4c5f}};}catch(_0x667486){return logger['error']({'event':_0x3f3feb[_0xfe673e(0x201)],'resource':_0x4f1f51,'error':_0x667486['message']},'Resource\x20lock\x20status\x20error:\x20'+_0x667486['message']),{'success':![],'error':_0xfe673e(0x1e6)+_0x667486['message']};}}async[a0_0x12bddc(0x22a)](_0xd981cc,_0x49472c,_0x49422d){const _0x211cb8=a0_0x12bddc,_0x4c7afe={'giIEU':'resource_lock_rollback_key_error'};for(const _0x5b833a of _0x49472c){try{await _0xd981cc['eval'](RELEASE_LUA_SCRIPT,0x1,_0x5b833a,_0x49422d);}catch(_0x3f6830){logger['error']({'event':_0x4c7afe[_0x211cb8(0x22e)],'key':_0x5b833a,'error':_0x3f6830[_0x211cb8(0x1ff)]},_0x211cb8(0x221)+_0x5b833a);}}}async['_getConflictInfo'](_0x2c8fcf,_0x2e80c8){const _0x3899b9=a0_0x12bddc,_0x2140d4={'HVkeB':'unknown'};try{const [_0x6c75d0,_0x395b6f]=await Promise['all']([_0x2c8fcf[_0x3899b9(0x21b)](_0x2e80c8),_0x2c8fcf[_0x3899b9(0x22b)](_0x2e80c8)]);return{'owner':_0x6c75d0?this['extractOwner'](_0x6c75d0):_0x2140d4['HVkeB'],'ttlRemaining':_0x395b6f>0x0?_0x395b6f:null};}catch{return{'owner':_0x2140d4['HVkeB'],'ttlRemaining':null};}}[a0_0x12bddc(0x232)]({resource:_0x559e9f,lockKeys:_0xf0dd99,ttl:_0x249b3a,owner:_0x302aab}){const _0x24690c=a0_0x12bddc,_0x5708fb={'ycmpL':function(_0xe48d6,_0x3c3435){return _0xe48d6!==_0x3c3435;},'HYDzr':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string','WGutt':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array','gubll':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items','ExEql':function(_0x573ed1,_0x1ac3da){return _0x573ed1<_0x1ac3da;},'GgUFf':function(_0x4dcd4d,_0x103638){return _0x4dcd4d>_0x103638;},'iDkvQ':_0x24690c(0x1ea)};if(!_0x559e9f||_0x5708fb[_0x24690c(0x1e3)](typeof _0x559e9f,_0x24690c(0x1ea)))return{'valid':![],'error':_0x5708fb['HYDzr']};if(!Array[_0x24690c(0x225)](_0xf0dd99)||_0xf0dd99[_0x24690c(0x230)]===0x0)return{'valid':![],'error':_0x5708fb['WGutt']};if(_0xf0dd99['length']>0x64)return{'valid':![],'error':_0x5708fb[_0x24690c(0x21c)]};for(let _0x480437=0x0;_0x480437<_0xf0dd99['length'];_0x480437++){const _0x1a41cd=_0xf0dd99[_0x480437];if(!_0x1a41cd||!_0x1a41cd[_0x24690c(0x1f1)]||!_0x1a41cd['value'])return{'valid':![],'error':'lock_keys['+_0x480437+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x249b3a||typeof _0x249b3a!=='number'||_0x5708fb[_0x24690c(0x1f5)](_0x249b3a,0x1))return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x208c8c=this[_0x24690c(0x202)]();if(_0x5708fb['GgUFf'](_0x249b3a,_0x208c8c))return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x208c8c+_0x24690c(0x20a)};if(!_0x302aab||_0x5708fb['ycmpL'](typeof _0x302aab,_0x5708fb[_0x24690c(0x20e)]))return{'valid':![],'error':_0x24690c(0x208)};return{'valid':!![]};}[a0_0x12bddc(0x20b)]({resource:_0x5653a3,lockKeys:_0x466d83,lockToken:_0xcf3a82}){const _0x56c43a=a0_0x12bddc,_0x11f258={'oxJaR':function(_0x48f6b7,_0x2c8e3a){return _0x48f6b7!==_0x2c8e3a;},'ougJr':_0x56c43a(0x1ea),'ZARlC':function(_0x431af3,_0x3e3b3f){return _0x431af3!==_0x3e3b3f;}};if(!_0x5653a3||_0x11f258[_0x56c43a(0x209)](typeof _0x5653a3,_0x11f258['ougJr']))return{'valid':![],'error':_0x56c43a(0x207)};if(!Array[_0x56c43a(0x225)](_0x466d83)||_0x466d83['length']===0x0)return{'valid':![],'error':_0x56c43a(0x226)};for(let _0x441b4d=0x0;_0x441b4d<_0x466d83[_0x56c43a(0x230)];_0x441b4d++){const _0x442568=_0x466d83[_0x441b4d];if(!_0x442568||!_0x442568['key']||!_0x442568[_0x56c43a(0x1ed)])return{'valid':![],'error':'lock_keys['+_0x441b4d+_0x56c43a(0x1e5)};}if(!_0xcf3a82||_0x11f258[_0x56c43a(0x1f3)](typeof _0xcf3a82,_0x56c43a(0x1ea)))return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}module['exports']=new ResourceLockManager();
@@ -1 +1 @@
1
- const a0_0x51564c=a0_0x3575;(function(_0x58e7de,_0x31139d){const _0xae8fe7=a0_0x3575,_0x5e6259=_0x58e7de();while(!![]){try{const _0x4d7f2a=-parseInt(_0xae8fe7(0x159))/0x1*(parseInt(_0xae8fe7(0x1b8))/0x2)+-parseInt(_0xae8fe7(0x1a2))/0x3+parseInt(_0xae8fe7(0x1b9))/0x4+parseInt(_0xae8fe7(0x1ad))/0x5*(-parseInt(_0xae8fe7(0x19f))/0x6)+-parseInt(_0xae8fe7(0x195))/0x7+-parseInt(_0xae8fe7(0x198))/0x8+parseInt(_0xae8fe7(0x15c))/0x9*(parseInt(_0xae8fe7(0x165))/0xa);if(_0x4d7f2a===_0x31139d)break;else _0x5e6259['push'](_0x5e6259['shift']());}catch(_0x2714cf){_0x5e6259['push'](_0x5e6259['shift']());}}}(a0_0x28c3,0x9a6a3));const {Kafka,logLevel}=require(a0_0x51564c(0x1cd)),{v7:uuidv7}=require(a0_0x51564c(0x1ab));function a0_0x28c3(){const _0x450dc2=['y29UC3vTzxiUy3jHC2G','AxndB25Uzwn0zwq','z2v0q29UzMLN','CMvZDw1L','rwT5DNG','A3LuDeS','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','s0fgs0fFuKvuuLLFrevmqvK','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','wgr5BNO','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','yxv0B0nVBw1PDa','zxjYB3i','C2vLAW','Dg9mB3DLCKnHC2u','BwvZC2fNzq','s0fgs0fFu1nm','mZaWma','s0fgs0fFru5bqKXfra','w0THzMTHq29UC3vTzxjDienHBM5VDcbYzxn1BwuGlsbJB25ZDw1LCIbUB3qGCNvUBMLUzW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','CMvZDgzVCMDLlq','ndm1ndbLzxPnCLG','CMvXDwvZDfrPBwvVDxq','y29UBMvJDgLVBLbYB21PC2u','nte0nJm2mhnwr2jnza','zw52','DMfSDwu','BwvZC2fNzxnszwnLAxzLza','z2v0vgLTzq','BgvUz3rO','ig9Uia','ntu4nKT6BMXgra','y29UC3vTzxiUCMvIywXHBMnPBMC','z3jVDxbjza','ntyYmteZtM9PrxP5','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq','s0fgs0fFu0fttf9vu0vstKfnrq','BgfZDe1LC3nHz2vuAw1L','y2XPzw50swq','zxHWB3j0CW','y2XVC2u','s0fgs0fFuKvrvuvtvf9usu1ft1vu','BwLU','DxvPza','C3rVCa','ntG0mgP1tfr5vG','s0fgs0fFu0fttf9nruniqu5ju00','zvj1CwW','B2zMC2v0','C3vIC2nYAwjLzfrVCgLJCW','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','DgLTzxn0yw1W','y29UC3vTzxi','Bg9N','C3rHCNrdB25ZDw1PBMC','Cgf5Bg9Hza','nZC0mdu4suLNELPy','mZiXntuYmfjNEuvHuq','s0fgs0fFqvvut19dt01nsvq','zgvMyxvSDa','Bwf4','y29TBwL0t2zMC2v0CW','z2v0twv0CMLJCW','t1HwuMm','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','AxnqyxvZzwq','su5gtW','mtaWma','v1H4EwG','BwvZC2fNzuHHBMrSzxi','C2v0DxbfDMvUDeHHBMrSzxjZ','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','C2vZC2LVBLrPBwvVDxq','uezvCgW','CM91BMq','s0fgs0fFu0fttf9qqvntv09sra','mZaWmda','A2fMA2fQCW','yNjVA2vYCW','BwvZC2fNzxngywLSzwq','seDjqKW','muzLtK9LtG','Dhj1zq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','nty2nduXreLlzxDZ','CMv0CNLnyxHezwXHEq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwqGyw5KigrPC2nVBM5Ly3rLza','Dg9tDhjPBMC','C2vLA1rVt2zMC2v0','yxv0B0nVBw1PDeLUDgvYDMfS','EfDVBxK','C3vIC2nYAwjL','mJuWmda','mZqWtLvuqwrO','s0fgs0fFq0Xjru5ux0Le','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','t0HVv3e','z2v0tg9Ntgv2zwW','tK9useLorW','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','AxnsDw5UAw5N','Bwv0CMLJCW','Cgf1C2u','C1nztxy','ChjVy2vZC2LUz1rPBwvZ','thLAwxO','BwvZC2fNzxnqCM9JzxnZzwq','A2fMA2e','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','lwnVBNn1BwvYlwDYB3vW','D2fYBG','DwDRthi','s0fgs0fFq09otKvdveLptL9usu1ft1vu','AxnjBML0AwfSAxPPBMC','zK1gtNi','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','icHNCM91CeLKoIa'];a0_0x28c3=function(){return _0x450dc2;};return a0_0x28c3();}class KafkaConsumerService{constructor(){const _0x37cc74=a0_0x51564c,_0x13f7c4={'lyMJH':'0|7|1|8|5|9|2|10|4|6|3'},_0x290902=_0x13f7c4['lyMJH']['split']('|');let _0x105784=0x0;while(!![]){switch(_0x290902[_0x105784++]){case'0':this[_0x37cc74(0x173)]=null;continue;case'1':this['isConnected']=![];continue;case'2':this['connectionPromise']=null;continue;case'3':this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};continue;case'4':this[_0x37cc74(0x1a1)]=null;continue;case'5':this[_0x37cc74(0x16c)]=![];continue;case'6':this['messageHandler']=null;continue;case'7':this[_0x37cc74(0x1b4)]=null;continue;case'8':this[_0x37cc74(0x179)]=![];continue;case'9':this[_0x37cc74(0x1c1)]=![];continue;case'10':this[_0x37cc74(0x1b1)]=[];continue;}break;}}[a0_0x51564c(0x17f)](){const _0x55941f=a0_0x51564c,_0xe6cf95={'sSYMv':'localhost:9092','sqxLJ':'default','fdqvB':_0x55941f(0x190),'LyZYz':function(_0x45968c,_0x53a839){return _0x45968c(_0x53a839);},'kyTtK':_0x55941f(0x164),'eRuql':function(_0x15767d,_0x1f0b3d){return _0x15767d(_0x1f0b3d);},'ugkLr':_0x55941f(0x1cc)};return{'enabled':process[_0x55941f(0x199)][_0x55941f(0x191)]==='true','brokers':(process[_0x55941f(0x199)]['KAFKA_BROKERS']||_0xe6cf95[_0x55941f(0x16f)])['split'](','),'clientId':process['env'][_0x55941f(0x166)]||_0x55941f(0x194)+(process['env']['RESTFORGE_PROJECT_NAME']||_0xe6cf95['sqxLJ'])+'-consumer','connectionTimeout':parseInt(process['env'][_0x55941f(0x178)]||_0xe6cf95['fdqvB']),'requestTimeout':_0xe6cf95[_0x55941f(0x171)](parseInt,process['env'][_0x55941f(0x1a9)]||_0xe6cf95[_0x55941f(0x182)]),'sessionTimeout':_0xe6cf95[_0x55941f(0x1af)](parseInt,process['env']['KAFKA_SESSION_TIMEOUT']||_0x55941f(0x1cc)),'heartbeatInterval':_0xe6cf95['LyZYz'](parseInt,process[_0x55941f(0x199)]['KAFKA_HEARTBEAT_INTERVAL']||_0x55941f(0x190)),'maxBytesPerPartition':parseInt(process['env']['KAFKA_MAX_BYTES_PER_PARTITION']||'1048576'),'autoCommit':process['env'][_0x55941f(0x1ba)]===_0x55941f(0x15a),'autoCommitInterval':_0xe6cf95['eRuql'](parseInt,process[_0x55941f(0x199)][_0x55941f(0x174)]||'5000'),'retryAttempts':_0xe6cf95['eRuql'](parseInt,process[_0x55941f(0x199)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process['env'][_0x55941f(0x184)]||_0x55941f(0x1c3)),'retryMaxDelay':parseInt(process['env']['KAFKA_RETRY_MAX_DELAY']||_0xe6cf95[_0x55941f(0x177)]),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x55941f(0x176)};}[a0_0x51564c(0x169)](_0x41e61d){const _0x460cec=a0_0x51564c,_0x4b13aa={'nothing':logLevel[_0x460cec(0x16a)],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel[_0x460cec(0x1c2)],'debug':logLevel['DEBUG']};return _0x4b13aa[_0x41e61d[_0x460cec(0x18d)]()]||logLevel['WARN'];}async['initialize'](_0x48d196={}){const _0x572f1d=a0_0x51564c,_0xcf4b42={'PRoUW':function(_0x37117e,_0x439655){return _0x37117e===_0x439655;},'gxYWl':_0x572f1d(0x1bb),'OHoWq':function(_0x1b4e02,_0x4dfebf){return _0x1b4e02(_0x4dfebf);}},_0x237cb4=this[_0x572f1d(0x17f)]();if(!_0x237cb4['enabled'])return console[_0x572f1d(0x1b5)](_0x572f1d(0x186)),![];if(this[_0x572f1d(0x17e)])return!![];if(this['isInitializing']&&this[_0x572f1d(0x197)])return this['connectionPromise'];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x117358=>{const _0x701691=_0x572f1d;try{let _0x2cd85e=undefined;_0xcf4b42['PRoUW'](process[_0x701691(0x199)][_0x701691(0x18f)],_0x701691(0x15a))&&(_0x2cd85e=!![]);let _0x355f7e=undefined;process['env'][_0x701691(0x1ae)]&&(_0x355f7e={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x701691(0x1a4)]||'','password':process['env'][_0x701691(0x1cb)]||''}),this['kafka']=new Kafka({'clientId':_0x48d196[_0x701691(0x1a6)]||_0x237cb4['clientId'],'brokers':_0x237cb4[_0x701691(0x1ce)],'connectionTimeout':_0x237cb4['connectionTimeout'],'requestTimeout':_0x237cb4[_0x701691(0x196)],'logLevel':this['getLogLevel'](_0x237cb4['logLevel']),'ssl':_0x2cd85e,'sasl':_0x355f7e,'retry':{'initialRetryTime':_0x237cb4['retryDelay'],'retries':_0x237cb4['retryAttempts'],'maxRetryTime':_0x237cb4[_0x701691(0x15d)]}}),this[_0x701691(0x1a1)]=_0x48d196['groupId']||'restforge-'+(process['env']['RESTFORGE_PROJECT_NAME']||_0xcf4b42['gxYWl'])+_0x701691(0x175),this[_0x701691(0x1b4)]=this[_0x701691(0x173)][_0x701691(0x1b4)]({'groupId':this[_0x701691(0x1a1)],'sessionTimeout':_0x237cb4[_0x701691(0x1c8)],'heartbeatInterval':_0x237cb4['heartbeatInterval'],'maxBytesPerPartition':_0x237cb4['maxBytesPerPartition'],'allowAutoTopicCreation':![]}),await this['consumer']['connect'](),this[_0x701691(0x17e)]=!![],console[_0x701691(0x1b5)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x237cb4[_0x701691(0x1ce)]['join'](',\x20')+_0x701691(0x17c)+this['groupId']+')'),this[_0x701691(0x1c6)](),_0xcf4b42[_0x701691(0x168)](_0x117358,!![]);}catch(_0x223235){console[_0x701691(0x18b)](_0x701691(0x1b2)+_0x223235['message']),this[_0x701691(0x17e)]=![],_0x117358(![]);}finally{this['isInitializing']=![];}}),this[_0x572f1d(0x197)];}[a0_0x51564c(0x1c6)](){const _0x5aeed8=a0_0x51564c,_0x456af6={'PbGAM':'[KafkaConsumer]\x20Consumer\x20disconnected','ZDWbM':_0x5aeed8(0x15b)};if(!this['consumer'])return;this['consumer']['on']('consumer.disconnect',()=>{const _0x118b8b=_0x5aeed8;console['log'](_0x456af6['PbGAM']),this[_0x118b8b(0x17e)]=![],this[_0x118b8b(0x16c)]=![];}),this[_0x5aeed8(0x1b4)]['on']('consumer.stop',()=>{console['log'](_0x456af6['ZDWbM']),this['isRunning']=![];}),this[_0x5aeed8(0x1b4)]['on'](_0x5aeed8(0x17d),_0xc2285d=>{const _0x159d7c=_0x5aeed8;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0xc2285d[_0x159d7c(0x1b7)]['error']['message']),this[_0x159d7c(0x16c)]=![];}),this[_0x5aeed8(0x1b4)]['on'](_0x5aeed8(0x1a0),()=>{console['log']('[KafkaConsumer]\x20Consumer\x20rebalancing...');});}async[a0_0x51564c(0x163)](_0x225193,_0x24513f=![]){const _0x408653=a0_0x51564c,_0x458c35={'pofHE':'[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'};if(!this['isConnected'])return console['error'](_0x458c35['pofHE']),![];try{const _0x2e82fb=Array['isArray'](_0x225193)?_0x225193:[_0x225193];for(const _0x3bc4d6 of _0x2e82fb){await this[_0x408653(0x1b4)][_0x408653(0x163)]({'topic':_0x3bc4d6,'fromBeginning':_0x24513f}),console['log']('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x3bc4d6+'\x20(fromBeginning:\x20'+_0x24513f+')');}return this['subscribedTopics']=[...new Set([...this[_0x408653(0x1b1)],..._0x2e82fb])],!![];}catch(_0xb67ddb){return console[_0x408653(0x18b)](_0x408653(0x1c7)+_0xb67ddb[_0x408653(0x18e)]),![];}}async[a0_0x51564c(0x1b6)](_0x5d1ba3,_0x4e003a={}){const _0x32a037=a0_0x51564c,_0x3c8022={'YFDjw':function(_0x3e504e,_0x4b1464){return _0x3e504e+_0x4b1464;},'HGIBL':function(_0x1a8ab7,_0x3ef3cd){return _0x1a8ab7-_0x3ef3cd;},'Xdynz':function(_0x5d4a9e,_0x4c9242){return _0x5d4a9e>_0x4c9242;},'kQXkX':function(_0x5a4776){return _0x5a4776();}};if(!this['isConnected'])return console[_0x32a037(0x18b)]('[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected'),![];if(this['isRunning'])return console[_0x32a037(0x1b5)]('[KafkaConsumer]\x20Consumer\x20already\x20running'),!![];const _0x4de279=this['getConfig']();this[_0x32a037(0x1c5)]=_0x5d1ba3;try{return this['metrics']['startTime']=new Date(),await this['consumer']['run']({'autoCommit':_0x4e003a[_0x32a037(0x18a)]!==undefined?_0x4e003a[_0x32a037(0x18a)]:_0x4de279['autoCommit'],'autoCommitInterval':_0x4de279[_0x32a037(0x161)],'eachMessage':async({topic:_0xe136e5,partition:_0x5d8b9b,message:_0x4f12af,heartbeat:_0x2c022a})=>{const _0x32c34a=_0x32a037,_0x2ce8d2=Date['now']();this['metrics'][_0x32c34a(0x19b)]++,this['metrics'][_0x32c34a(0x1a5)]=new Date();try{const _0x204a05=_0x4f12af[_0x32c34a(0x19a)]?_0x4f12af[_0x32c34a(0x19a)][_0x32c34a(0x15f)]():null;let _0x36762b=null;try{_0x36762b=_0x204a05?JSON['parse'](_0x204a05):null;}catch(_0x253f31){_0x36762b=_0x204a05;}const _0x367fd4={'topic':_0xe136e5,'partition':_0x5d8b9b,'offset':_0x4f12af['offset'],'key':_0x4f12af['key']?_0x4f12af['key']['toString']():null,'headers':this['parseHeaders'](_0x4f12af['headers']),'timestamp':_0x4f12af[_0x32c34a(0x1b3)],'value':_0x36762b,'raw':_0x204a05};this[_0x32c34a(0x1c5)]&&await this['messageHandler'](_0x367fd4);!_0x4de279[_0x32c34a(0x18a)]&&await this[_0x32c34a(0x1b4)][_0x32c34a(0x1bd)]([{'topic':_0xe136e5,'partition':_0x5d8b9b,'offset':_0x3c8022['YFDjw'](parseInt(_0x4f12af[_0x32c34a(0x1b0)]),0x1)[_0x32c34a(0x15f)]()}]);this[_0x32c34a(0x16d)]['messagesProcessed']++;const _0x6b63f8=_0x3c8022[_0x32c34a(0x1d0)](Date['now'](),_0x2ce8d2);this['metrics']['processingTimes']['push'](_0x6b63f8),_0x3c8022[_0x32c34a(0x188)](this['metrics']['processingTimes']['length'],0x64)&&this[_0x32c34a(0x16d)][_0x32c34a(0x170)]['shift'](),await _0x3c8022['kQXkX'](_0x2c022a);}catch(_0x147ba6){this['metrics']['messagesFailed']++,console[_0x32c34a(0x18b)]('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x147ba6[_0x32c34a(0x18e)]);throw _0x147ba6;}}}),this['isRunning']=!![],console['log']('[KafkaConsumer]\x20Started\x20consuming\x20from\x20topics:\x20'+this['subscribedTopics']['join'](',\x20')),!![];}catch(_0x2f5ce0){return console[_0x32a037(0x18b)](_0x32a037(0x167)+_0x2f5ce0['message']),![];}}['parseHeaders'](_0xec33d5){const _0x3c75c7=a0_0x51564c;if(!_0xec33d5)return{};const _0x33334c={};for(const [_0x7c9d0,_0x161203]of Object['entries'](_0xec33d5)){_0x33334c[_0x7c9d0]=_0x161203?_0x161203[_0x3c75c7(0x15f)]():null;}return _0x33334c;}async[a0_0x51564c(0x16e)](){const _0x4f691e=a0_0x51564c;if(!this[_0x4f691e(0x17e)]||!this['isRunning'])return console[_0x4f691e(0x1b5)](_0x4f691e(0x187)),![];if(this['isPaused'])return console[_0x4f691e(0x1b5)](_0x4f691e(0x189)),!![];try{const _0x22583d=this['subscribedTopics']['map'](_0x48828d=>({'topic':_0x48828d}));return this['consumer'][_0x4f691e(0x16e)](_0x22583d),this[_0x4f691e(0x1c1)]=!![],console['log']('[KafkaConsumer]\x20Consumer\x20paused'),!![];}catch(_0x1a587b){return console[_0x4f691e(0x18b)](_0x4f691e(0x185)+_0x1a587b[_0x4f691e(0x18e)]),![];}}async[a0_0x51564c(0x180)](){const _0x3e7441=a0_0x51564c,_0x26f89f={'fMFNr':_0x3e7441(0x192),'PFUpl':'[KafkaConsumer]\x20Consumer\x20resumed'};if(!this[_0x3e7441(0x17e)]||!this['isRunning'])return console[_0x3e7441(0x1b5)](_0x26f89f[_0x3e7441(0x17a)]),![];if(!this[_0x3e7441(0x1c1)])return console['log'](_0x3e7441(0x1a3)),!![];try{const _0x2520f9=this['subscribedTopics']['map'](_0x359fbc=>({'topic':_0x359fbc}));return this['consumer'][_0x3e7441(0x180)](_0x2520f9),this[_0x3e7441(0x1c1)]=![],console[_0x3e7441(0x1b5)](_0x26f89f[_0x3e7441(0x1c9)]),!![];}catch(_0x4c1b19){return console['error']('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x4c1b19['message']),![];}}async[a0_0x51564c(0x1ac)](){const _0x482111=a0_0x51564c;if(!this[_0x482111(0x17e)])return console['log'](_0x482111(0x193)),!![];try{return this[_0x482111(0x1b4)]&&(await this['consumer'][_0x482111(0x1ac)](),await this['consumer']['disconnect']()),this[_0x482111(0x17e)]=![],this[_0x482111(0x16c)]=![],this['isPaused']=![],console['log'](_0x482111(0x15e)),!![];}catch(_0x29e719){return console['error'](_0x482111(0x183)+_0x29e719[_0x482111(0x18e)]),![];}}async[a0_0x51564c(0x160)](_0x72785e,_0x2a2899,_0x48cc61){const _0x552a35=a0_0x51564c;if(!this['isConnected'])return console[_0x552a35(0x18b)](_0x552a35(0x1c0)),![];try{return this[_0x552a35(0x1b4)][_0x552a35(0x18c)]({'topic':_0x72785e,'partition':_0x2a2899,'offset':_0x48cc61['toString']()}),console[_0x552a35(0x1b5)](_0x552a35(0x16b)+_0x48cc61+_0x552a35(0x19e)+_0x72785e+':'+_0x2a2899),!![];}catch(_0x1fe5ed){return console['error']('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x1fe5ed[_0x552a35(0x18e)]),![];}}['getStatus'](){const _0x82f2a7=a0_0x51564c,_0x3544ea=this[_0x82f2a7(0x17f)]();return{'enabled':_0x3544ea['enabled'],'connected':this[_0x82f2a7(0x17e)],'running':this['isRunning'],'paused':this[_0x82f2a7(0x1c1)],'brokers':_0x3544ea['brokers'],'clientId':_0x3544ea['clientId'],'groupId':this[_0x82f2a7(0x1a1)],'subscribedTopics':this[_0x82f2a7(0x1b1)]};}[a0_0x51564c(0x1be)](){const _0x2c4c07=a0_0x51564c,_0x16fe1f={'OXVRc':function(_0x178d63,_0x3d1db4){return _0x178d63>_0x3d1db4;},'xWomy':function(_0x28c387,_0x5267ef){return _0x28c387/_0x5267ef;},'QFOYs':function(_0x3aeee7,_0x2b10f8){return _0x3aeee7>_0x2b10f8;},'Ekyvx':function(_0xb6a3cd,_0x300279){return _0xb6a3cd>_0x300279;},'WXxyh':function(_0x34c028,_0x50d611){return _0x34c028-_0x50d611;},'ASlxZ':function(_0x330418,_0xf8a254){return _0x330418+_0xf8a254;}},_0x338ff0=_0x16fe1f[_0x2c4c07(0x1bf)](this[_0x2c4c07(0x16d)][_0x2c4c07(0x170)][_0x2c4c07(0x19d)],0x0)?_0x16fe1f[_0x2c4c07(0x162)](this['metrics'][_0x2c4c07(0x170)]['reduce']((_0x2a51e3,_0x3bff1c)=>_0x2a51e3+_0x3bff1c,0x0),this[_0x2c4c07(0x16d)]['processingTimes'][_0x2c4c07(0x19d)]):0x0,_0x2a7bca=_0x16fe1f['QFOYs'](this[_0x2c4c07(0x16d)][_0x2c4c07(0x170)][_0x2c4c07(0x19d)],0x0)?Math[_0x2c4c07(0x1aa)](...this[_0x2c4c07(0x16d)][_0x2c4c07(0x170)]):0x0,_0x456677=_0x16fe1f[_0x2c4c07(0x181)](this['metrics'][_0x2c4c07(0x170)]['length'],0x0)?Math[_0x2c4c07(0x1bc)](...this['metrics'][_0x2c4c07(0x170)]):0x0;return{'messagesReceived':this[_0x2c4c07(0x16d)][_0x2c4c07(0x19b)],'messagesProcessed':this['metrics'][_0x2c4c07(0x172)],'messagesFailed':this['metrics'][_0x2c4c07(0x1cf)],'successRate':this['metrics']['messagesReceived']>0x0?(this[_0x2c4c07(0x16d)]['messagesProcessed']/this[_0x2c4c07(0x16d)]['messagesReceived']*0x64)['toFixed'](0x2)+'%':'0%','lastMessageTime':this['metrics']['lastMessageTime'],'startTime':this[_0x2c4c07(0x16d)]['startTime'],'uptime':this['metrics']['startTime']?Math['floor'](_0x16fe1f['xWomy'](_0x16fe1f[_0x2c4c07(0x1c4)](Date['now'](),this[_0x2c4c07(0x16d)]['startTime'][_0x2c4c07(0x19c)]()),0x3e8))+'s':'0s','processingTime':{'avg':_0x16fe1f['ASlxZ'](Math[_0x2c4c07(0x1ca)](_0x338ff0),'ms'),'min':_0x16fe1f['ASlxZ'](_0x2a7bca,'ms'),'max':_0x456677+'ms'}};}['resetMetrics'](){const _0x2d43de=a0_0x51564c;this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console[_0x2d43de(0x1b5)](_0x2d43de(0x17b));}async['close'](){const _0x59dc9a=a0_0x51564c;await this[_0x59dc9a(0x1ac)]();}}function a0_0x3575(_0x85b030,_0x52f067){_0x85b030=_0x85b030-0x159;const _0x28c367=a0_0x28c3();let _0x357542=_0x28c367[_0x85b030];if(a0_0x3575['nLbchY']===undefined){var _0x514ec4=function(_0x3ce480){const _0x2042fe='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x9ec662='',_0x4038e2='';for(let _0x34cc4a=0x0,_0x29fb04,_0x11c1db,_0x45f203=0x0;_0x11c1db=_0x3ce480['charAt'](_0x45f203++);~_0x11c1db&&(_0x29fb04=_0x34cc4a%0x4?_0x29fb04*0x40+_0x11c1db:_0x11c1db,_0x34cc4a++%0x4)?_0x9ec662+=String['fromCharCode'](0xff&_0x29fb04>>(-0x2*_0x34cc4a&0x6)):0x0){_0x11c1db=_0x2042fe['indexOf'](_0x11c1db);}for(let _0x41779b=0x0,_0x495f6e=_0x9ec662['length'];_0x41779b<_0x495f6e;_0x41779b++){_0x4038e2+='%'+('00'+_0x9ec662['charCodeAt'](_0x41779b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4038e2);};a0_0x3575['vujVDn']=_0x514ec4,a0_0x3575['eiLqpx']={},a0_0x3575['nLbchY']=!![];}const _0x1d0873=_0x28c367[0x0],_0x3439b5=_0x85b030+_0x1d0873,_0x6e180=a0_0x3575['eiLqpx'][_0x3439b5];return!_0x6e180?(_0x357542=a0_0x3575['vujVDn'](_0x357542),a0_0x3575['eiLqpx'][_0x3439b5]=_0x357542):_0x357542=_0x6e180,_0x357542;}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){const _0x47bf46=a0_0x51564c;instance&&(instance[_0x47bf46(0x1a8)](),instance=null);}function createInstance(){return new KafkaConsumerService();}module[a0_0x51564c(0x1a7)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
1
+ const a0_0x53e109=a0_0x25a3;function a0_0x1651(){const _0x21963c=['mZaWmda','rK1vB2m','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','y2XVC2u','zgLZy29UBMvJDa','BgvUz3rO','zw52','v3n3Exa','CMvXDwvZDfrPBwvVDxq','y29UC3vTzxiUy3jHC2G','BwvZC2fNzq','Bwv0CMLJCW','icHNCM91CeLKoIa','zgvMyxvSDa','DwrwEfe','z2v0twv0CMLJCW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','icHMCM9TqMvNAw5UAw5NoIa','BwLU','Bg9JywXOB3n0oJKWoti','CMv0CNLbDhrLBxb0CW','C3rVCa','Bwf4qNL0zxnqzxjqyxj0AxrPB24','rvjst1i','C3Diqxy','y29UBMvJDgLVBLbYB21PC2u','s0fgs0fFsevbuLrcrufux0LovevsvKfm','revcvuC','s0fgs0fFq09otKvdveLptL9usu1ft1vu','BwfW','y2XPzw50swq','mtmYmJq0n1jsuM5nCa','nMnHtxrrvq','CgfYC2u','s0fgs0fFuKvuuLLFtufyx0rftefz','odG2mdfLELrfz08','A2v5','B0jSELu','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','ufj4CK4','DgLTzxn0yw1W','Ae1nzLm','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','DhzYwMW','sKHZz0K','CMvZDgzVCMDLlq','DhbuyK8','w0THzMTHq29UC3vTzxjDienHBM5VDcbYzxn1BwuGlsbJB25ZDw1LCIbUB3qGCNvUBMLUzW','mhWXFdn8nhW1Fdi','z2v0tg9Ntgv2zwW','CMvZzxrnzxrYAwnZ','C2vZC2LVBLrPBwvVDxq','r25wz3C','AxnsDw5UAw5N','s0fgs0fFqLjps0vsuW','nta2mdb3t0vJreG','EKLWBfO','CMvZDw1L','zgXpBfe','EMLYyNK','mtbzqKvvDw8','mJG2mJa0r2nTyvLR','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','C3bSAxq','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','z2v0q29UzMLN','vxfZrgK','r2vUyLK','Dg9mB3DLCKnHC2u','s0fgs0fFu0fttf9vu0vstKfnrq','s2rmyxi','AxnjBML0AwfSAxPPBMC','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','tK9useLorW','s0fgs0fFq0Xjru5ux0Le','BwvZC2fNzxngywLSzwq','Aw5PDgLHBgL6zq','zhfLz2e','CKjiEu0','DMDNqwS','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','mZK1oda2mfDLD2Dgwq','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','ChvZAa','D2fYBG','z3jVDxbjza','Dhj1zq','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','B2zMC2v0','C3vIC2nYAwjLzfrVCgLJCW','AxndB25Uzwn0zwq','y29UBMvJDgLVBLrPBwvVDxq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq','lwnVBNn1BwvY','v0fstG','s0fgs0fFtufyx0jzvevtx1bfuL9qqvjusvrjt04','BM93','ntaWma','Dw5bu3i','yxv0B0nVBw1PDa','s0fgs0fFte9hx0XfvKvm','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','Bg9N','CKnvz0y','zxjYB3i','zw5HyMXLza','wKjpwLC','uNfIwKS','y29TBwL0t2zMC2v0CW','y29UC3vTzxiUCMvIywXHBMnPBMC','Bg9Ntgv2zwW','tw1KB0y','oujpsgTyEa','y29UC3vTzxi','BgfZDe1LC3nHz2vuAw1L','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','AxnqyxvZzwq','mZHLqxPPy1y','C2v0DxbfDMvUDeHHBMrSzxjZ','C3vIC2nYAwjL','nte5ntfcrfPsyvO','su5gtW','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','A2fMA2e','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','BwvZC2fNzuHHBMrSzxi','ChjVy2vZC2LUz1rPBwvZ','mZaXodu4nhfOzwTYtq','Dg9tDhjPBMC','DxvPza','C3rHCNruAw1L','yNjVA2vYCW'];a0_0x1651=function(){return _0x21963c;};return a0_0x1651();}(function(_0x19025b,_0x4e026c){const _0x700573=a0_0x25a3,_0x45983e=_0x19025b();while(!![]){try{const _0x329a37=parseInt(_0x700573(0x21f))/0x1+-parseInt(_0x700573(0x1ec))/0x2*(parseInt(_0x700573(0x1ef))/0x3)+parseInt(_0x700573(0x1b3))/0x4*(-parseInt(_0x700573(0x1b2))/0x5)+-parseInt(_0x700573(0x21c))/0x6*(parseInt(_0x700573(0x21b))/0x7)+parseInt(_0x700573(0x1f7))/0x8+parseInt(_0x700573(0x1e7))/0x9*(parseInt(_0x700573(0x1c7))/0xa)+parseInt(_0x700573(0x1ad))/0xb;if(_0x329a37===_0x4e026c)break;else _0x45983e['push'](_0x45983e['shift']());}catch(_0xf2af67){_0x45983e['push'](_0x45983e['shift']());}}}(a0_0x1651,0x321e4));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require(a0_0x53e109(0x1f9));class KafkaConsumerService{constructor(){const _0x33a108=a0_0x53e109;this[_0x33a108(0x1f3)]=null,this['consumer']=null,this['isConnected']=![],this[_0x33a108(0x1bd)]=![],this[_0x33a108(0x1ab)]=![],this['isPaused']=![],this[_0x33a108(0x215)]=null,this[_0x33a108(0x1cf)]=[],this['groupId']=null,this['messageHandler']=null,this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x53e109(0x1b7)](){const _0x1b7fc3=a0_0x53e109,_0xf501d0={'rBHyM':function(_0x390fd0,_0x2d720f){return _0x390fd0===_0x2d720f;},'CpDpp':_0x1b7fc3(0x1cc),'tvrZl':_0x1b7fc3(0x20f),'zirby':_0x1b7fc3(0x209),'KdLar':function(_0x337832,_0x53abac){return _0x337832(_0x53abac);},'zIplZ':'3000','Wswyp':'1048576','ijwiD':function(_0x58c687,_0x45a1a8){return _0x58c687(_0x45a1a8);},'FMUoc':_0x1b7fc3(0x1fc),'hMMfS':_0x1b7fc3(0x1ca)};return{'enabled':_0xf501d0[_0x1b7fc3(0x1c4)](process['env']['KAFKA_ENABLED'],_0xf501d0['CpDpp']),'brokers':(process[_0x1b7fc3(0x202)][_0x1b7fc3(0x1ac)]||_0xf501d0[_0x1b7fc3(0x227)])[_0x1b7fc3(0x1b5)](','),'clientId':process[_0x1b7fc3(0x202)][_0x1b7fc3(0x1c0)]||'restforge-'+(process[_0x1b7fc3(0x202)][_0x1b7fc3(0x20c)]||_0xf501d0[_0x1b7fc3(0x1b1)])+_0x1b7fc3(0x1d3),'connectionTimeout':_0xf501d0[_0x1b7fc3(0x1bc)](parseInt,process['env'][_0x1b7fc3(0x218)]||_0xf501d0[_0x1b7fc3(0x1ae)]),'requestTimeout':_0xf501d0[_0x1b7fc3(0x1bc)](parseInt,process[_0x1b7fc3(0x202)]['KAFKA_REQUEST_TIMEOUT']||'25000'),'sessionTimeout':_0xf501d0[_0x1b7fc3(0x1bc)](parseInt,process['env']['KAFKA_SESSION_TIMEOUT']||'30000'),'heartbeatInterval':_0xf501d0[_0x1b7fc3(0x1bc)](parseInt,process['env'][_0x1b7fc3(0x216)]||'3000'),'maxBytesPerPartition':_0xf501d0[_0x1b7fc3(0x1bc)](parseInt,process['env'][_0x1b7fc3(0x1d5)]||_0xf501d0[_0x1b7fc3(0x203)]),'autoCommit':process['env']['KAFKA_AUTO_COMMIT']===_0xf501d0['CpDpp'],'autoCommitInterval':_0xf501d0[_0x1b7fc3(0x1bc)](parseInt,process[_0x1b7fc3(0x202)][_0x1b7fc3(0x1c6)]||_0x1b7fc3(0x1d7)),'retryAttempts':_0xf501d0['ijwiD'](parseInt,process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0xf501d0['ijwiD'](parseInt,process['env']['KAFKA_RETRY_DELAY']||'1000'),'retryMaxDelay':parseInt(process[_0x1b7fc3(0x202)][_0x1b7fc3(0x21e)]||_0xf501d0[_0x1b7fc3(0x1fd)]),'logLevel':process['env'][_0x1b7fc3(0x1da)]||_0xf501d0[_0x1b7fc3(0x225)]};}['getLogLevel'](_0x5af983){const _0x1db367=a0_0x53e109,_0x33607d={'nothing':logLevel[_0x1db367(0x1bf)],'error':logLevel[_0x1db367(0x213)],'warn':logLevel[_0x1db367(0x1d4)],'info':logLevel[_0x1db367(0x1f0)],'debug':logLevel[_0x1db367(0x217)]};return _0x33607d[_0x5af983[_0x1db367(0x1ba)]()]||logLevel[_0x1db367(0x1d4)];}async[a0_0x53e109(0x1c2)](_0x442745={}){const _0x45b36b=a0_0x53e109,_0x73df78={'hpOPs':function(_0x2e6cbe,_0x500c76){return _0x2e6cbe===_0x500c76;},'GnVgw':_0x45b36b(0x1cc),'jnwLf':function(_0x58c81a,_0x31bbc4){return _0x58c81a(_0x31bbc4);},'unASr':'[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'},_0x3671f7=this['getConfig']();if(!_0x3671f7[_0x45b36b(0x1e0)])return console[_0x45b36b(0x1dd)](_0x73df78[_0x45b36b(0x1d8)]),![];if(this['isConnected'])return!![];if(this['isInitializing']&&this[_0x45b36b(0x215)])return this['connectionPromise'];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x3364fd=>{const _0x226074=_0x45b36b;try{let _0x1290f6=undefined;_0x73df78['hpOPs'](process[_0x226074(0x202)]['KAFKA_SSL'],_0x73df78[_0x226074(0x1aa)])&&(_0x1290f6=!![]);let _0x35b770=undefined;process['env']['KAFKA_SASL_MECHANISM']&&(_0x35b770={'mechanism':process[_0x226074(0x202)]['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x226074(0x1bb)]||'','password':process[_0x226074(0x202)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x442745[_0x226074(0x21a)]||_0x3671f7[_0x226074(0x21a)],'brokers':_0x3671f7[_0x226074(0x1fb)],'connectionTimeout':_0x3671f7[_0x226074(0x1d1)],'requestTimeout':_0x3671f7[_0x226074(0x204)],'logLevel':this[_0x226074(0x1a7)](_0x3671f7[_0x226074(0x1e5)]),'ssl':_0x1290f6,'sasl':_0x35b770,'retry':{'initialRetryTime':_0x3671f7['retryDelay'],'retries':_0x3671f7[_0x226074(0x210)],'maxRetryTime':_0x3671f7['retryMaxDelay']}}),this[_0x226074(0x1cb)]=_0x442745['groupId']||_0x226074(0x229)+(process[_0x226074(0x202)][_0x226074(0x20c)]||'default')+'-consumer-group',this[_0x226074(0x1e8)]=this[_0x226074(0x1f3)]['consumer']({'groupId':this['groupId'],'sessionTimeout':_0x3671f7[_0x226074(0x1a9)],'heartbeatInterval':_0x3671f7['heartbeatInterval'],'maxBytesPerPartition':_0x3671f7[_0x226074(0x212)],'allowAutoTopicCreation':![]}),await this[_0x226074(0x1e8)]['connect'](),this[_0x226074(0x1d0)]=!![],console[_0x226074(0x1dd)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x3671f7[_0x226074(0x1fb)]['join'](',\x20')+_0x226074(0x208)+this[_0x226074(0x1cb)]+')'),this[_0x226074(0x1ed)](),_0x73df78['jnwLf'](_0x3364fd,!![]);}catch(_0x4a8af8){console['error'](_0x226074(0x1b6)+_0x4a8af8['message']),this['isConnected']=![],_0x3364fd(![]);}finally{this[_0x226074(0x1bd)]=![];}}),this[_0x45b36b(0x215)];}[a0_0x53e109(0x1ed)](){const _0x3bd73e=a0_0x53e109,_0xf5b9b8={'ZBOZW':_0x3bd73e(0x226),'iDnby':'consumer.disconnect','rCUgF':'consumer.stop','ntdIh':_0x3bd73e(0x205),'tpTbO':_0x3bd73e(0x1e4)};if(!this[_0x3bd73e(0x1e8)])return;this[_0x3bd73e(0x1e8)]['on'](_0xf5b9b8['iDnby'],()=>{const _0x4c02cf=_0x3bd73e;console[_0x4c02cf(0x1dd)](_0x4c02cf(0x1be)),this[_0x4c02cf(0x1d0)]=![],this[_0x4c02cf(0x1ab)]=![];}),this[_0x3bd73e(0x1e8)]['on'](_0xf5b9b8[_0x3bd73e(0x1de)],()=>{const _0xdb6017=_0x3bd73e;console['log'](_0xf5b9b8[_0xdb6017(0x1e1)]),this['isRunning']=![];}),this['consumer']['on'](_0xf5b9b8['ntdIh'],_0x9bf295=>{const _0x1fab74=_0x3bd73e;console[_0x1fab74(0x1df)]('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x9bf295['payload']['error'][_0x1fab74(0x206)]),this['isRunning']=![];}),this['consumer']['on'](_0xf5b9b8[_0x3bd73e(0x22a)],()=>{const _0x156f92=_0x3bd73e;console[_0x156f92(0x1dd)]('[KafkaConsumer]\x20Consumer\x20rebalancing...');});}async[a0_0x53e109(0x1ee)](_0x24b245,_0x1626c6=![]){const _0x550803=a0_0x53e109,_0x5f074a={'vggAk':'[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'};if(!this['isConnected'])return console['error'](_0x5f074a[_0x550803(0x1c5)]),![];try{const _0x2587b7=Array['isArray'](_0x24b245)?_0x24b245:[_0x24b245];for(const _0x85c595 of _0x2587b7){await this[_0x550803(0x1e8)][_0x550803(0x1ee)]({'topic':_0x85c595,'fromBeginning':_0x1626c6}),console[_0x550803(0x1dd)]('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x85c595+_0x550803(0x20d)+_0x1626c6+')');}return this[_0x550803(0x1cf)]=[...new Set([...this['subscribedTopics'],..._0x2587b7])],!![];}catch(_0x38402a){return console[_0x550803(0x1df)]('[KafkaConsumer]\x20Subscribe\x20error:\x20'+_0x38402a['message']),![];}}async['startConsuming'](_0x1fa060,_0x170bd7={}){const _0x6411cf=a0_0x53e109,_0x11ebea={'UqsDi':function(_0x2cda97,_0x442235){return _0x2cda97+_0x442235;},'MmdoF':function(_0x352a9e,_0x25959c){return _0x352a9e(_0x25959c);},'dqega':function(_0x3ca137,_0x5d4d70){return _0x3ca137>_0x5d4d70;},'bdxZA':_0x6411cf(0x1b4),'swHAv':_0x6411cf(0x1dc)};if(!this[_0x6411cf(0x1d0)])return console[_0x6411cf(0x1df)](_0x11ebea['bdxZA']),![];if(this[_0x6411cf(0x1ab)])return console['log'](_0x11ebea[_0x6411cf(0x214)]),!![];const _0x63c60b=this[_0x6411cf(0x1b7)]();this[_0x6411cf(0x1f5)]=_0x1fa060;try{return this[_0x6411cf(0x207)][_0x6411cf(0x1fa)]=new Date(),await this['consumer']['run']({'autoCommit':_0x170bd7[_0x6411cf(0x1d9)]!==undefined?_0x170bd7[_0x6411cf(0x1d9)]:_0x63c60b[_0x6411cf(0x1d9)],'autoCommitInterval':_0x63c60b['autoCommitInterval'],'eachMessage':async({topic:_0x1d52b1,partition:_0x465916,message:_0x19760f,heartbeat:_0x463a21})=>{const _0x4542a6=_0x6411cf,_0x5195f4=Date['now']();this[_0x4542a6(0x207)]['messagesReceived']++,this[_0x4542a6(0x207)][_0x4542a6(0x1e9)]=new Date();try{const _0x20a6cd=_0x19760f['value']?_0x19760f['value']['toString']():null;let _0x1a202a=null;try{_0x1a202a=_0x20a6cd?JSON[_0x4542a6(0x21d)](_0x20a6cd):null;}catch(_0xa2c59b){_0x1a202a=_0x20a6cd;}const _0x48a7a0={'topic':_0x1d52b1,'partition':_0x465916,'offset':_0x19760f[_0x4542a6(0x1ce)],'key':_0x19760f['key']?_0x19760f[_0x4542a6(0x220)]['toString']():null,'headers':this['parseHeaders'](_0x19760f['headers']),'timestamp':_0x19760f[_0x4542a6(0x224)],'value':_0x1a202a,'raw':_0x20a6cd};this[_0x4542a6(0x1f5)]&&await this['messageHandler'](_0x48a7a0);!_0x63c60b['autoCommit']&&await this[_0x4542a6(0x1e8)][_0x4542a6(0x1e3)]([{'topic':_0x1d52b1,'partition':_0x465916,'offset':_0x11ebea[_0x4542a6(0x1b8)](_0x11ebea[_0x4542a6(0x1e6)](parseInt,_0x19760f['offset']),0x1)['toString']()}]);this['metrics']['messagesProcessed']++;const _0x48ad87=Date['now']()-_0x5195f4;this[_0x4542a6(0x207)][_0x4542a6(0x1f6)][_0x4542a6(0x1c9)](_0x48ad87),_0x11ebea[_0x4542a6(0x1c3)](this['metrics'][_0x4542a6(0x1f6)][_0x4542a6(0x201)],0x64)&&this[_0x4542a6(0x207)]['processingTimes']['shift'](),await _0x463a21();}catch(_0x1b1d05){this['metrics'][_0x4542a6(0x1c1)]++,console[_0x4542a6(0x1df)](_0x4542a6(0x1cd)+_0x1b1d05[_0x4542a6(0x206)]);throw _0x1b1d05;}}}),this['isRunning']=!![],console['log']('[KafkaConsumer]\x20Started\x20consuming\x20from\x20topics:\x20'+this[_0x6411cf(0x1cf)]['join'](',\x20')),!![];}catch(_0x3198e3){return console[_0x6411cf(0x1df)](_0x6411cf(0x1ea)+_0x3198e3[_0x6411cf(0x206)]),![];}}['parseHeaders'](_0x24a912){const _0x30686c=a0_0x53e109;if(!_0x24a912)return{};const _0x33a39a={};for(const [_0x4fdc82,_0x535145]of Object['entries'](_0x24a912)){_0x33a39a[_0x4fdc82]=_0x535145?_0x535145[_0x30686c(0x1f8)]():null;}return _0x33a39a;}async['pause'](){const _0x3e49e4=a0_0x53e109,_0x2ff9eb={'JHsgI':'[KafkaConsumer]\x20Consumer\x20paused'};if(!this[_0x3e49e4(0x1d0)]||!this['isRunning'])return console['log'](_0x3e49e4(0x1c8)),![];if(this[_0x3e49e4(0x1eb)])return console['log']('[KafkaConsumer]\x20Consumer\x20already\x20paused'),!![];try{const _0x3fed2f=this[_0x3e49e4(0x1cf)][_0x3e49e4(0x219)](_0xbecfd9=>({'topic':_0xbecfd9}));return this[_0x3e49e4(0x1e8)]['pause'](_0x3fed2f),this['isPaused']=!![],console['log'](_0x2ff9eb[_0x3e49e4(0x228)]),!![];}catch(_0x2f01ad){return console[_0x3e49e4(0x1df)](_0x3e49e4(0x1f4)+_0x2f01ad[_0x3e49e4(0x206)]),![];}}async[a0_0x53e109(0x1af)](){const _0x8b0db0=a0_0x53e109,_0x5c8315={'RqbZK':_0x8b0db0(0x22b),'EdyoL':_0x8b0db0(0x1d2),'HNyGI':_0x8b0db0(0x222)};if(!this[_0x8b0db0(0x1d0)]||!this['isRunning'])return console['log'](_0x5c8315[_0x8b0db0(0x1e2)]),![];if(!this[_0x8b0db0(0x1eb)])return console['log'](_0x5c8315['EdyoL']),!![];try{const _0x31f5d3=this['subscribedTopics']['map'](_0x54dd99=>({'topic':_0x54dd99}));return this[_0x8b0db0(0x1e8)]['resume'](_0x31f5d3),this[_0x8b0db0(0x1eb)]=![],console['log'](_0x5c8315['HNyGI']),!![];}catch(_0x2d3468){return console[_0x8b0db0(0x1df)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x2d3468[_0x8b0db0(0x206)]),![];}}async[a0_0x53e109(0x211)](){const _0x93952e=a0_0x53e109;if(!this[_0x93952e(0x1d0)])return console[_0x93952e(0x1dd)](_0x93952e(0x1fe)),!![];try{const _0x38b618=_0x93952e(0x1a6)['split']('|');let _0x54ff6d=0x0;while(!![]){switch(_0x38b618[_0x54ff6d++]){case'0':this['consumer']&&(await this['consumer'][_0x93952e(0x211)](),await this[_0x93952e(0x1e8)][_0x93952e(0x200)]());continue;case'1':this[_0x93952e(0x1d0)]=![];continue;case'2':return!![];case'3':this['isRunning']=![];continue;case'4':this[_0x93952e(0x1eb)]=![];continue;case'5':console['log']('[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected');continue;}break;}}catch(_0x2685b9){return console['error'](_0x93952e(0x1f1)+_0x2685b9['message']),![];}}async['seekToOffset'](_0x458989,_0x147fd2,_0x172151){const _0x3da619=a0_0x53e109,_0x457ba6={'HNHcV':'[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'};if(!this['isConnected'])return console['error'](_0x457ba6['HNHcV']),![];try{return this['consumer']['seek']({'topic':_0x458989,'partition':_0x147fd2,'offset':_0x172151[_0x3da619(0x1f8)]()}),console[_0x3da619(0x1dd)](_0x3da619(0x1f2)+_0x172151+'\x20on\x20'+_0x458989+':'+_0x147fd2),!![];}catch(_0x4d3395){return console['error']('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x4d3395[_0x3da619(0x206)]),![];}}['getStatus'](){const _0x468458=a0_0x53e109,_0x1f9e44=this['getConfig']();return{'enabled':_0x1f9e44['enabled'],'connected':this['isConnected'],'running':this[_0x468458(0x1ab)],'paused':this['isPaused'],'brokers':_0x1f9e44['brokers'],'clientId':_0x1f9e44['clientId'],'groupId':this[_0x468458(0x1cb)],'subscribedTopics':this['subscribedTopics']};}[a0_0x53e109(0x20b)](){const _0x5968e0=a0_0x53e109,_0xb1937a={'ZTDmG':function(_0x59687b,_0xe78eb9){return _0x59687b>_0xe78eb9;},'SBDeH':function(_0x165617,_0x498ef6){return _0x165617/_0x498ef6;},'dlOlQ':function(_0x1712c5,_0x31fd25){return _0x1712c5+_0x31fd25;},'oBlzU':function(_0x706192,_0x99be45){return _0x706192+_0x99be45;},'udVxQ':function(_0x4115ad,_0x6dcaa6){return _0x4115ad/_0x6dcaa6;},'GenbY':function(_0x1b509a,_0x4fb986){return _0x1b509a-_0x4fb986;},'PRxrN':function(_0x55b810,_0x42ece4){return _0x55b810+_0x42ece4;}},_0x16b294=_0xb1937a['ZTDmG'](this['metrics'][_0x5968e0(0x1f6)][_0x5968e0(0x201)],0x0)?_0xb1937a['SBDeH'](this['metrics'][_0x5968e0(0x1f6)]['reduce']((_0x4c7e98,_0x28faae)=>_0x4c7e98+_0x28faae,0x0),this[_0x5968e0(0x207)]['processingTimes']['length']):0x0,_0x1b1db6=_0xb1937a['ZTDmG'](this['metrics'][_0x5968e0(0x1f6)][_0x5968e0(0x201)],0x0)?Math[_0x5968e0(0x20e)](...this[_0x5968e0(0x207)]['processingTimes']):0x0,_0x3cad41=this['metrics'][_0x5968e0(0x1f6)][_0x5968e0(0x201)]>0x0?Math['max'](...this['metrics']['processingTimes']):0x0;return{'messagesReceived':this['metrics']['messagesReceived'],'messagesProcessed':this[_0x5968e0(0x207)]['messagesProcessed'],'messagesFailed':this[_0x5968e0(0x207)]['messagesFailed'],'successRate':this['metrics']['messagesReceived']>0x0?_0xb1937a[_0x5968e0(0x1b0)]((_0xb1937a['SBDeH'](this['metrics']['messagesProcessed'],this[_0x5968e0(0x207)]['messagesReceived'])*0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this[_0x5968e0(0x207)]['lastMessageTime'],'startTime':this[_0x5968e0(0x207)]['startTime'],'uptime':this[_0x5968e0(0x207)][_0x5968e0(0x1fa)]?_0xb1937a[_0x5968e0(0x221)](Math['floor'](_0xb1937a[_0x5968e0(0x20a)](_0xb1937a[_0x5968e0(0x1b9)](Date[_0x5968e0(0x1d6)](),this[_0x5968e0(0x207)][_0x5968e0(0x1fa)]['getTime']()),0x3e8)),'s'):'0s','processingTime':{'avg':_0xb1937a['dlOlQ'](Math['round'](_0x16b294),'ms'),'min':_0x1b1db6+'ms','max':_0xb1937a[_0x5968e0(0x223)](_0x3cad41,'ms')}};}[a0_0x53e109(0x1a8)](){const _0x1b4368=a0_0x53e109;this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console['log'](_0x1b4368(0x1db));}async['close'](){await this['stop']();}}function a0_0x25a3(_0x5e1a81,_0x181a9e){_0x5e1a81=_0x5e1a81-0x1a6;const _0x165162=a0_0x1651();let _0x25a3c2=_0x165162[_0x5e1a81];if(a0_0x25a3['gCVdXO']===undefined){var _0xc158db=function(_0x39b68c){const _0x53de5f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x552578='',_0x5b429b='';for(let _0x1d38df=0x0,_0xcf6e58,_0x19300a,_0x8596b2=0x0;_0x19300a=_0x39b68c['charAt'](_0x8596b2++);~_0x19300a&&(_0xcf6e58=_0x1d38df%0x4?_0xcf6e58*0x40+_0x19300a:_0x19300a,_0x1d38df++%0x4)?_0x552578+=String['fromCharCode'](0xff&_0xcf6e58>>(-0x2*_0x1d38df&0x6)):0x0){_0x19300a=_0x53de5f['indexOf'](_0x19300a);}for(let _0x3c461c=0x0,_0x4e2b09=_0x552578['length'];_0x3c461c<_0x4e2b09;_0x3c461c++){_0x5b429b+='%'+('00'+_0x552578['charCodeAt'](_0x3c461c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5b429b);};a0_0x25a3['ZjKKFl']=_0xc158db,a0_0x25a3['jfhhTB']={},a0_0x25a3['gCVdXO']=!![];}const _0x47a74=_0x165162[0x0],_0x56906a=_0x5e1a81+_0x47a74,_0x23f379=a0_0x25a3['jfhhTB'][_0x56906a];return!_0x23f379?(_0x25a3c2=a0_0x25a3['ZjKKFl'](_0x25a3c2),a0_0x25a3['jfhhTB'][_0x56906a]=_0x25a3c2):_0x25a3c2=_0x23f379,_0x25a3c2;}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){const _0x91380f=a0_0x53e109;instance&&(instance[_0x91380f(0x1ff)](),instance=null);}function createInstance(){return new KafkaConsumerService();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
@@ -1 +1 @@
1
- const a0_0x35a424=a0_0x48b8;(function(_0x253898,_0x2ad06c){const _0x17667f=a0_0x48b8,_0x330323=_0x253898();while(!![]){try{const _0x39ea4c=parseInt(_0x17667f(0xa7))/0x1+parseInt(_0x17667f(0xdb))/0x2+parseInt(_0x17667f(0xdf))/0x3*(parseInt(_0x17667f(0x96))/0x4)+-parseInt(_0x17667f(0x95))/0x5+-parseInt(_0x17667f(0x87))/0x6*(parseInt(_0x17667f(0xa9))/0x7)+-parseInt(_0x17667f(0x9b))/0x8+parseInt(_0x17667f(0xa6))/0x9;if(_0x39ea4c===_0x2ad06c)break;else _0x330323['push'](_0x330323['shift']());}catch(_0x130fc8){_0x330323['push'](_0x330323['shift']());}}}(a0_0x15fc,0xd76da));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require('uuid');function a0_0x48b8(_0x2e73aa,_0x52fdbc){_0x2e73aa=_0x2e73aa-0x85;const _0x15fcb1=a0_0x15fc();let _0x48b83d=_0x15fcb1[_0x2e73aa];if(a0_0x48b8['ertqKF']===undefined){var _0x3eed4b=function(_0x40a054){const _0xa9cc02='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1f6d8d='',_0x586fa5='';for(let _0x1c7c10=0x0,_0x214155,_0x45b3c1,_0x583e3c=0x0;_0x45b3c1=_0x40a054['charAt'](_0x583e3c++);~_0x45b3c1&&(_0x214155=_0x1c7c10%0x4?_0x214155*0x40+_0x45b3c1:_0x45b3c1,_0x1c7c10++%0x4)?_0x1f6d8d+=String['fromCharCode'](0xff&_0x214155>>(-0x2*_0x1c7c10&0x6)):0x0){_0x45b3c1=_0xa9cc02['indexOf'](_0x45b3c1);}for(let _0x3c4a3b=0x0,_0x119198=_0x1f6d8d['length'];_0x3c4a3b<_0x119198;_0x3c4a3b++){_0x586fa5+='%'+('00'+_0x1f6d8d['charCodeAt'](_0x3c4a3b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x586fa5);};a0_0x48b8['YtcMhh']=_0x3eed4b,a0_0x48b8['qJNKYE']={},a0_0x48b8['ertqKF']=!![];}const _0x46ca94=_0x15fcb1[0x0],_0x4eea16=_0x2e73aa+_0x46ca94,_0x134d63=a0_0x48b8['qJNKYE'][_0x4eea16];return!_0x134d63?(_0x48b83d=a0_0x48b8['YtcMhh'](_0x48b83d),a0_0x48b8['qJNKYE'][_0x4eea16]=_0x48b83d):_0x48b83d=_0x134d63,_0x48b83d;}class KafkaService{constructor(){const _0x4582ec=a0_0x48b8,_0x4f10f6='4|3|1|2|0'[_0x4582ec(0x98)]('|');let _0x4c06a7=0x0;while(!![]){switch(_0x4f10f6[_0x4c06a7++]){case'0':this['connectionPromise']=null;continue;case'1':this['isConnected']=![];continue;case'2':this['isInitializing']=![];continue;case'3':this[_0x4582ec(0xc4)]=null;continue;case'4':this['kafka']=null;continue;}break;}}[a0_0x35a424(0x90)](){const _0x2ff794=a0_0x35a424,_0x32dd44={'DAZla':function(_0x24547e,_0x387673){return _0x24547e===_0x387673;},'IqIHU':_0x2ff794(0xd2),'ouDkt':_0x2ff794(0xad),'eyXEQ':'25000','YJdlg':'{module}.{endpoint}.events','lyyAm':'default','wBVrY':function(_0x29be29,_0x582cef){return _0x29be29(_0x582cef);},'bTdpe':'warn'};return{'enabled':_0x32dd44['DAZla'](process[_0x2ff794(0xd1)]['KAFKA_ENABLED'],'true'),'brokers':(process['env']['KAFKA_BROKERS']||_0x32dd44['IqIHU'])['split'](','),'clientId':process[_0x2ff794(0xd1)][_0x2ff794(0xa1)]||'restforge-'+(process['env']['RESTFORGE_PROJECT_NAME']||_0x2ff794(0xbf))+'-producer','connectionTimeout':parseInt(process[_0x2ff794(0xd1)]['KAFKA_CONNECTION_TIMEOUT']||_0x32dd44['ouDkt']),'requestTimeout':parseInt(process[_0x2ff794(0xd1)][_0x2ff794(0x97)]||_0x32dd44['eyXEQ']),'topicPattern':process[_0x2ff794(0xd1)][_0x2ff794(0xa5)]||_0x32dd44['YJdlg'],'tenantId':process[_0x2ff794(0xd1)]['KAFKA_TENANT_ID']||_0x32dd44[_0x2ff794(0xc2)],'retryAttempts':parseInt(process[_0x2ff794(0xd1)][_0x2ff794(0x8e)]||'3'),'retryDelay':_0x32dd44['wBVrY'](parseInt,process[_0x2ff794(0xd1)]['KAFKA_RETRY_DELAY']||'1000'),'logLevel':process[_0x2ff794(0xd1)]['KAFKA_LOG_LEVEL']||_0x32dd44[_0x2ff794(0x94)]};}['getLogLevel'](_0x2ebe91){const _0x1fe6f4=a0_0x35a424,_0x4d1392={'nothing':logLevel['NOTHING'],'error':logLevel[_0x1fe6f4(0xcd)],'warn':logLevel[_0x1fe6f4(0xce)],'info':logLevel[_0x1fe6f4(0xc9)],'debug':logLevel[_0x1fe6f4(0xa2)]};return _0x4d1392[_0x2ebe91[_0x1fe6f4(0x9e)]()]||logLevel[_0x1fe6f4(0xce)];}async[a0_0x35a424(0xb9)](){const _0x2be2cf=a0_0x35a424,_0x1886bc={'eJXNJ':_0x2be2cf(0xc8),'DxWMa':function(_0x5b8028,_0x1b3eac){return _0x5b8028===_0x1b3eac;},'vMrpf':_0x2be2cf(0xa0),'gOukB':function(_0x484077,_0x1cdd65){return _0x484077(_0x1cdd65);},'DONAP':'[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'},_0x289078=this[_0x2be2cf(0x90)]();if(!_0x289078['enabled'])return console[_0x2be2cf(0xe1)](_0x1886bc[_0x2be2cf(0xb4)]),![];if(this[_0x2be2cf(0xe0)])return!![];if(this['isInitializing']&&this[_0x2be2cf(0x8a)])return this['connectionPromise'];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x51b63c=>{const _0x2943cf=_0x2be2cf;try{let _0x18a204=undefined;_0x1886bc[_0x2943cf(0xc3)](process['env'][_0x2943cf(0xc6)],_0x1886bc['vMrpf'])&&(_0x18a204=!![]);let _0x5dabf4=undefined;process[_0x2943cf(0xd1)]['KAFKA_SASL_MECHANISM']&&(_0x5dabf4={'mechanism':process['env'][_0x2943cf(0x9c)],'username':process[_0x2943cf(0xd1)]['KAFKA_SASL_USERNAME']||'','password':process[_0x2943cf(0xd1)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x289078[_0x2943cf(0xbc)],'brokers':_0x289078[_0x2943cf(0x89)],'connectionTimeout':_0x289078[_0x2943cf(0xaa)],'requestTimeout':_0x289078['requestTimeout'],'logLevel':this[_0x2943cf(0xc7)](_0x289078['logLevel']),'ssl':_0x18a204,'sasl':_0x5dabf4,'retry':{'initialRetryTime':_0x289078['retryDelay'],'retries':_0x289078['retryAttempts']}}),this[_0x2943cf(0xc4)]=this[_0x2943cf(0xb2)][_0x2943cf(0xc4)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners['LegacyPartitioner']}),await this[_0x2943cf(0xc4)][_0x2943cf(0x8f)](),this[_0x2943cf(0xe0)]=!![],console[_0x2943cf(0xe1)]('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x289078[_0x2943cf(0x89)][_0x2943cf(0xda)](',\x20')),this[_0x2943cf(0xc4)]['on'](_0x2943cf(0xcc),()=>{const _0x51e9ab=_0x2943cf;console['log'](_0x1886bc['eJXNJ']),this[_0x51e9ab(0xe0)]=![];}),_0x1886bc['gOukB'](_0x51b63c,!![]);}catch(_0x488366){console['error'](_0x2943cf(0xac)+_0x488366[_0x2943cf(0xd9)]),this[_0x2943cf(0xe0)]=![],_0x51b63c(![]);}finally{this['isInitializing']=![];}}),this['connectionPromise'];}[a0_0x35a424(0xbe)](_0x2eb5aa){const _0x3f095a=a0_0x35a424,_0x5dc12b={'YWGNI':function(_0x21c88c,_0x57158e){return _0x21c88c(_0x57158e);}},_0x5906b2=_0x2eb5aa||new Date(),_0x395acc=_0x5906b2[_0x3f095a(0xcb)](),_0x4996d5=String(_0x5906b2[_0x3f095a(0x8d)]()+0x1)[_0x3f095a(0x93)](0x2,'0'),_0x4e5513=_0x5dc12b[_0x3f095a(0x88)](String,_0x5906b2[_0x3f095a(0xb6)]())['padStart'](0x2,'0'),_0x4e758b=String(_0x5906b2[_0x3f095a(0xca)]())[_0x3f095a(0x93)](0x2,'0'),_0x43e8d9=_0x5dc12b[_0x3f095a(0x88)](String,_0x5906b2[_0x3f095a(0x8c)]())[_0x3f095a(0x93)](0x2,'0'),_0x427264=String(_0x5906b2['getSeconds']())[_0x3f095a(0x93)](0x2,'0');return _0x395acc+'-'+_0x4996d5+'-'+_0x4e5513+'\x20'+_0x4e758b+':'+_0x43e8d9+':'+_0x427264;}[a0_0x35a424(0xd6)](_0xd8b127,_0x400553,_0x759c5d,_0x4316b1=null){const _0x4549f4=a0_0x35a424,_0x50da18={'MMnVc':_0x4549f4(0xd5),'gzhXU':_0x4549f4(0xd8),'YsUot':'{action}'};if(_0x4316b1)return _0x4316b1;const _0x3d1f46=this[_0x4549f4(0x90)]()['topicPattern'];return _0x3d1f46[_0x4549f4(0xd7)](_0x50da18[_0x4549f4(0x92)],_0xd8b127)['replace'](_0x50da18['gzhXU'],_0x400553)['replace'](_0x50da18['YsUot'],_0x759c5d);}['buildEventMessage'](_0x3caa0d,_0x3ecf49,_0x518769,_0x4a2ac2={}){const _0x344012=a0_0x35a424,_0x43e452={'aEKQV':function(_0x54380b){return _0x54380b();},'qFBhK':'1.0','nSHwV':_0x344012(0xcf),'DkKCN':'unknown'},_0x4b4ad7=new Date(),_0x6c3192=this[_0x344012(0xbe)](_0x4b4ad7),_0x16f731=_0x4a2ac2['correlationId']||'corr-'+_0x43e452[_0x344012(0xc5)](uuidv7);return{'eventId':_0x344012(0xdc)+uuidv7(),'eventType':_0x3caa0d,'eventTime':_0x6c3192,'eventVersion':_0x43e452['qFBhK'],'source':_0x344012(0xa3)+(_0x4a2ac2['module']||_0x344012(0xd3)),'correlationId':_0x16f731,'newData':_0x518769,'oldData':_0x3ecf49,'metadata':{'createdBy':_0x4a2ac2[_0x344012(0xb5)]||_0x43e452[_0x344012(0xb0)],'createdAt':_0x6c3192,'systemId':_0x344012(0xbd)+(_0x4a2ac2['module']||_0x43e452[_0x344012(0x91)])[_0x344012(0xb3)](),'tenantId':this[_0x344012(0x90)]()[_0x344012(0x9f)],'endpoint':_0x4a2ac2[_0x344012(0x9d)]||null,'tableName':_0x4a2ac2['tableName']||null}};}async[a0_0x35a424(0xc0)](_0xebc7fb,_0x2f4c27,_0x12c3f5,_0x227bd7,_0x25cdca={}){const _0x26b09b=a0_0x35a424,_0x54cbb7={'Qtted':function(_0x365340){return _0x365340();}},_0x5e2cd8=this[_0x26b09b(0x90)]();if(!_0x5e2cd8['enabled'])return{'success':![],'reason':_0x26b09b(0xd0),'published':![]};if(!this[_0x26b09b(0xe0)]){const _0x11be78=await this['initialize']();if(!_0x11be78)return{'success':![],'reason':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','published':![]};}try{const _0x2d0fb3=this['buildEventMessage'](_0x2f4c27,_0x12c3f5,_0x227bd7,_0x25cdca),_0x9d7bce=_0x25cdca[_0x26b09b(0xab)]||'id',_0x508f07=_0x227bd7?.[_0x9d7bce]||_0x12c3f5?.[_0x9d7bce]||_0x54cbb7['Qtted'](uuidv7),_0x17bcf8=await this[_0x26b09b(0xc4)][_0x26b09b(0xdd)]({'topic':_0xebc7fb,'messages':[{'key':String(_0x508f07),'value':JSON['stringify'](_0x2d0fb3),'headers':{'event-type':_0x2f4c27,'correlation-id':_0x2d0fb3['correlationId'],'source':_0x2d0fb3[_0x26b09b(0xa8)]}}]});return console[_0x26b09b(0xe1)]('[Kafka]\x20Event\x20published\x20to\x20'+_0xebc7fb+':\x20'+_0x2f4c27+'\x20(key:\x20'+_0x508f07+')'),{'success':!![],'correlationId':_0x2d0fb3['correlationId'],'topic':_0xebc7fb,'partition':_0x17bcf8[0x0]?.[_0x26b09b(0xa4)],'offset':_0x17bcf8[0x0]?.['baseOffset'],'published':!![]};}catch(_0x1569b4){return console[_0x26b09b(0xbb)](_0x26b09b(0xd4)+_0xebc7fb+':\x20'+_0x1569b4[_0x26b09b(0xd9)]),{'success':![],'error':_0x1569b4['message'],'published':![]};}}async[a0_0x35a424(0xb8)](_0x3ead54,_0x18d0ef,_0x2db4fd,_0x28032={}){const _0x2f4b7c=a0_0x35a424,_0x4b6702={'RCVro':'ENTITY_CREATED'},_0x1c0fa2=this[_0x2f4b7c(0xd6)](_0x3ead54,_0x18d0ef,_0x2f4b7c(0xba),_0x28032['topic']);return this['publishEvent'](_0x1c0fa2,_0x4b6702['RCVro'],null,_0x2db4fd,{'module':_0x3ead54,'endpoint':_0x18d0ef,'keyField':_0x28032['keyField'],'tableName':_0x28032[_0x2f4b7c(0xaf)],'correlationId':_0x28032['correlationId']});}async[a0_0x35a424(0xb1)](_0x2b3609,_0x3cfcc4,_0x263d67,_0x30d86c,_0x7cd3c1={}){const _0x31be3a=a0_0x35a424,_0x14b516={'QKAaG':'updated'},_0x4723a=this['buildTopicName'](_0x2b3609,_0x3cfcc4,_0x14b516['QKAaG'],_0x7cd3c1[_0x31be3a(0x8b)]);return this['publishEvent'](_0x4723a,'ENTITY_UPDATED',_0x263d67,_0x30d86c,{'module':_0x2b3609,'endpoint':_0x3cfcc4,'keyField':_0x7cd3c1[_0x31be3a(0xab)],'tableName':_0x7cd3c1['tableName'],'correlationId':_0x7cd3c1[_0x31be3a(0xe2)]});}async['publishDelete'](_0xa5e04c,_0x53807f,_0x338ad7,_0x1e4bd6={}){const _0x21a78d=a0_0x35a424,_0x5c1403={'irCQo':'ENTITY_DELETED'},_0x1875bc=this['buildTopicName'](_0xa5e04c,_0x53807f,_0x21a78d(0x86),_0x1e4bd6[_0x21a78d(0x8b)]);return this['publishEvent'](_0x1875bc,_0x5c1403[_0x21a78d(0xc1)],_0x338ad7,null,{'module':_0xa5e04c,'endpoint':_0x53807f,'keyField':_0x1e4bd6['keyField'],'tableName':_0x1e4bd6[_0x21a78d(0xaf)],'correlationId':_0x1e4bd6[_0x21a78d(0xe2)]});}['getStatus'](){const _0x55a38e=a0_0x35a424,_0x428801=this['getConfig']();return{'enabled':_0x428801[_0x55a38e(0x9a)],'connected':this['isConnected'],'brokers':_0x428801['brokers'],'clientId':_0x428801[_0x55a38e(0xbc)],'topicPattern':_0x428801[_0x55a38e(0xb7)]};}async[a0_0x35a424(0xae)](){const _0x49022c=a0_0x35a424;if(this['producer']&&this[_0x49022c(0xe0)])try{await this[_0x49022c(0xc4)][_0x49022c(0xde)](),this[_0x49022c(0xe0)]=![],console['log'](_0x49022c(0x99));}catch(_0x4bfdf1){console['error']('[Kafka]\x20Error\x20disconnecting:\x20'+_0x4bfdf1['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function a0_0x15fc(){const _0x329859=['CMvZDgzVCMDLlq','CgfYDgL0Aw9U','s0fgs0fFve9qsunFuefuvevstG','mtKZmZy2ohvmEfzmAa','mta3nZe2nNnwD2PNBa','C291CMnL','ndLnr2HHwKS','y29UBMvJDgLVBLrPBwvVDxq','A2v5rMLLBgq','w0THzMTHxsbdB25Uzwn0Aw9UigzHAwXLzdOG','mZaWma','y2XVC2u','DgfIBgvoyw1L','BLniD1y','ChvIBgLZAfvWzgf0zq','A2fMA2e','Dg9vChbLCKnHC2u','re9oqva','y3jLyxrLzej5','z2v0rgf0zq','Dg9WAwnqyxr0zxjU','ChvIBgLZAeLUC2vYDa','Aw5PDgLHBgL6zq','y3jLyxrLza','zxjYB3i','y2XPzw50swq','uKvtvezpuKDflq','zM9YBwf0rgf0zvrPBwu','zgvMyxvSDa','ChvIBgLZAev2zw50','Axjduw8','BhL5qw0','rhHxtwe','ChjVzhvJzxi','yuvluvy','s0fgs0fFu1nm','z2v0tg9Ntgv2zwW','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','su5gtW','z2v0sg91CNm','z2v0rNvSBfLLyxi','ChjVzhvJzxiUzgLZy29UBMvJDa','rvjst1i','v0fstG','u1Ltvevn','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','zw52','Bg9JywXOB3n0oJKWoti','Dw5RBM93BG','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','E21VzhvSzx0','yNvPBgruB3bPy05HBwu','CMvWBgfJzq','E2vUzhbVAw50Fq','BwvZC2fNzq','AM9PBG','mta5nZmXnK1kA1zLBq','zxz0lq','C2vUza','zgLZy29UBMvJDa','nKrZuNvLzW','AxndB25Uzwn0zwq','Bg9N','y29YCMvSyxrPB25jza','zxHWB3j0CW','zgvSzxrLza','nZC1nJuWA0Hqzw5d','wvDhtKK','yNjVA2vYCW','y29UBMvJDgLVBLbYB21PC2u','Dg9WAwm','z2v0twLUDxrLCW','z2v0tw9UDgG','s0fgs0fFuKvuuLLFqvruru1qvfm','y29UBMvJDa','z2v0q29UzMLN','rgTlq04','tu1UvMm','CgfKu3rHCNq','yLrKCgu','ntyYotK0mhD2qwHHtq','mZm3nJm3mLLoruLhrG','s0fgs0fFuKvrvuvtvf9usu1ft1vu','C3bSAxq','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','zw5HyMXLza','ndKYndq0mevbr3jzyW','s0fgs0fFu0fttf9nruniqu5ju00','zw5KCg9PBNq','Dg9mB3DLCKnHC2u','DgvUyw50swq','Dhj1zq','s0fgs0fFq0Xjru5ux0Le','revcvuC'];a0_0x15fc=function(){return _0x329859;};return a0_0x15fc();}function resetInstance(){instance&&(instance['close'](),instance=null);}module[a0_0x35a424(0x85)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
1
+ const a0_0x2d9966=a0_0x405b;function a0_0x405b(_0x13292e,_0x4937a4){_0x13292e=_0x13292e-0x9a;const _0x15f86c=a0_0x15f8();let _0x405b22=_0x15f86c[_0x13292e];if(a0_0x405b['hXosqJ']===undefined){var _0x23aec8=function(_0x4f3945){const _0x53fd99='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55890b='',_0x44e2ce='';for(let _0x511a60=0x0,_0x565b40,_0x4426a4,_0x1f4fb2=0x0;_0x4426a4=_0x4f3945['charAt'](_0x1f4fb2++);~_0x4426a4&&(_0x565b40=_0x511a60%0x4?_0x565b40*0x40+_0x4426a4:_0x4426a4,_0x511a60++%0x4)?_0x55890b+=String['fromCharCode'](0xff&_0x565b40>>(-0x2*_0x511a60&0x6)):0x0){_0x4426a4=_0x53fd99['indexOf'](_0x4426a4);}for(let _0x133b9b=0x0,_0xb48fbe=_0x55890b['length'];_0x133b9b<_0xb48fbe;_0x133b9b++){_0x44e2ce+='%'+('00'+_0x55890b['charCodeAt'](_0x133b9b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x44e2ce);};a0_0x405b['zeFmDI']=_0x23aec8,a0_0x405b['IECXQO']={},a0_0x405b['hXosqJ']=!![];}const _0x40cb15=_0x15f86c[0x0],_0xe168b8=_0x13292e+_0x40cb15,_0x768cff=a0_0x405b['IECXQO'][_0xe168b8];return!_0x768cff?(_0x405b22=a0_0x405b['zeFmDI'](_0x405b22),a0_0x405b['IECXQO'][_0xe168b8]=_0x405b22):_0x405b22=_0x768cff,_0x405b22;}(function(_0x43961b,_0x29b4db){const _0x1020fa=a0_0x405b,_0x1abfdf=_0x43961b();while(!![]){try{const _0xbb5426=-parseInt(_0x1020fa(0xca))/0x1+parseInt(_0x1020fa(0xa0))/0x2+-parseInt(_0x1020fa(0xa4))/0x3*(parseInt(_0x1020fa(0xe9))/0x4)+-parseInt(_0x1020fa(0xbf))/0x5+parseInt(_0x1020fa(0xed))/0x6+parseInt(_0x1020fa(0xd9))/0x7+parseInt(_0x1020fa(0xa8))/0x8*(parseInt(_0x1020fa(0xb4))/0x9);if(_0xbb5426===_0x29b4db)break;else _0x1abfdf['push'](_0x1abfdf['shift']());}catch(_0x19b06a){_0x1abfdf['push'](_0x1abfdf['shift']());}}}(a0_0x15f8,0xb6792));function a0_0x15f8(){const _0xf1e93e=['CMv0CNLbDhrLBxb0CW','y29UBMvJDa','s0fgs0fFu0fttf9vu0vstKfnrq','Bg9JywXOB3n0oJKWoti','mtq2nJK1mfHgshb0sa','ChvIBgLZAev2zw50','Bg9N','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','ndiWmtC4nxnUCM1wsG','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','zgLZy29UBMvJDa','ChjVzhvJzxi','mtzzEwzQu2K','CvrVCe8','Dg9vChbLCKnHC2u','AxnjBML0AwfSAxPPBMC','Dhj1zq','z2v0u3rHDhvZ','E21VzhvSzx0','uKvtvezpuKDflq','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','z2v0tg9Ntgv2zwW','y2XPzw50swq','ChvIBgLZAeLUC2vYDa','mta0odeXmZL2r250AMu','zgvSzxrLza','tK9useLorW','yNvPBgruB3bPy05HBwu','Au90tMS','C2vUza','u2Lhv1u','z2v0twLUDxrLCW','lxbYB2r1y2vY','y2XVC2u','E2vUzhbVAw50Fq','nJe4nJa4mfHXEhLeAW','rvjst1i','z2v0rNvSBfLLyxi','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','AM9PBG','s0fgs0fFru5bqKXfra','wuHrrw4','CMvWBgfJzq','zw5HyMXLza','zxz0lq','AxndB25Uzwn0zwq','mJG2mtiYy2zyrhHl','zw52','zgvMyxvSDa','y29YCMvSyxrPB25jza','tgvNywn5ugfYDgL0Aw9Uzxi','ru5usvrzx1vqrefuruq','vujyuNe','B0jJDvi','ru5usvrzx0rftevuruq','z2v0rgf0zq','CgfKu3rHCNq','C3bSAxq','s0fgs0fFve9qsunFuefuvevstG','Bw9KDwXL','Dg9WAwnqyxr0zxjU','nJGXntm0v3vwv2TY','CMvXDwvZDfrPBwvVDxq','sff1zxG','zxjYB3i','y29YCI0','DgfIBgvoyw1L','mJuWmda','zM9YBwf0rgf0zvrPBwu','C291CMnL','Dg9WAwm','revcvuC','y29UBMvJDgLVBLbYB21PC2u','ww95r2y','A2v5rMLLBgq','mtaWma','BwvZC2fNzq','nenUBKjuza','yNjVA2vYCW','mZaWma','Bg9Ntgv2zwW','mZa2ode4nevYvKD1rq','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','CgfYDgL0Aw9U','DgvUyw50swq','Afnbuwi','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','y3jLyxrLza','zw5KCg9PBNq','s0fgs0fFuKvuuLLFrevmqvK','D2fYBG','yMfZzu9MzNnLDa','ru5usvrzx0nsrufuruq','u1PUqwG'];a0_0x15f8=function(){return _0xf1e93e;};return a0_0x15f8();}const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require('uuid');class KafkaService{constructor(){const _0xee94e8=a0_0x405b;this['kafka']=null,this['producer']=null,this[_0xee94e8(0xc9)]=![],this[_0xee94e8(0xab)]=![],this[_0xee94e8(0xe4)]=null;}['getConfig'](){const _0x463691=a0_0x405b,_0x52f444={'daUyH':_0x463691(0xac),'SZnAh':_0x463691(0x9f),'YHQEn':function(_0x53da97,_0x3130a9){return _0x53da97(_0x3130a9);},'oPbxa':function(_0xd9ddd3,_0x22278e){return _0xd9ddd3(_0x22278e);},'qTopO':_0x463691(0xdf),'HQuex':_0x463691(0xc2),'UBXRq':_0x463691(0xcc),'oBcuR':_0x463691(0xf6)};return{'enabled':process['env'][_0x463691(0xc4)]===_0x52f444['daUyH'],'brokers':(process['env']['KAFKA_BROKERS']||_0x52f444[_0x463691(0x9b)])[_0x463691(0xd5)](','),'clientId':process['env']['KAFKA_CLIENT_ID']||'restforge-'+(process[_0x463691(0xcb)]['RESTFORGE_PROJECT_NAME']||_0x463691(0xcc))+_0x463691(0xbc),'connectionTimeout':_0x52f444[_0x463691(0xc5)](parseInt,process['env']['KAFKA_CONNECTION_TIMEOUT']||_0x463691(0xeb)),'requestTimeout':_0x52f444['oPbxa'](parseInt,process[_0x463691(0xcb)]['KAFKA_REQUEST_TIMEOUT']||_0x52f444[_0x463691(0xa9)]),'topicPattern':process[_0x463691(0xcb)][_0x463691(0xd6)]||_0x52f444[_0x463691(0xdb)],'tenantId':process[_0x463691(0xcb)]['KAFKA_TENANT_ID']||_0x52f444[_0x463691(0xd0)],'retryAttempts':parseInt(process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process[_0x463691(0xcb)][_0x463691(0xf5)]||_0x463691(0xe7)),'logLevel':process[_0x463691(0xcb)]['KAFKA_LOG_LEVEL']||_0x52f444[_0x463691(0xd1)]};}['getLogLevel'](_0x6fc2c7){const _0x213bf6=a0_0x405b,_0x545db0={'nothing':logLevel[_0x213bf6(0xb6)],'error':logLevel[_0x213bf6(0xc0)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel[_0x213bf6(0xe3)]};return _0x545db0[_0x6fc2c7['toLowerCase']()]||logLevel['WARN'];}async['initialize'](){const _0xb5c0ac=a0_0x405b,_0x21a018={'oyOgZ':_0xb5c0ac(0xa5),'WPzZb':'producer.disconnect','hSAQb':function(_0x139ff9,_0x5528ad){return _0x139ff9(_0x5528ad);},'exDSf':function(_0xc2f2c8,_0x45c37c){return _0xc2f2c8(_0x45c37c);}},_0x4c9424=this['getConfig']();if(!_0x4c9424['enabled'])return console[_0xb5c0ac(0xa2)]('[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'),![];if(this[_0xb5c0ac(0xc9)])return!![];if(this[_0xb5c0ac(0xab)]&&this[_0xb5c0ac(0xe4)])return this[_0xb5c0ac(0xe4)];return this[_0xb5c0ac(0xab)]=!![],this[_0xb5c0ac(0xe4)]=new Promise(async _0x48b370=>{const _0x5302fb=_0xb5c0ac,_0x2b6026={'YoyGf':_0x21a018['oyOgZ']};try{let _0x1ca0bb=undefined;process[_0x5302fb(0xcb)]['KAFKA_SSL']==='true'&&(_0x1ca0bb=!![]);let _0x31a91d=undefined;process[_0x5302fb(0xcb)]['KAFKA_SASL_MECHANISM']&&(_0x31a91d={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process[_0x5302fb(0xcb)][_0x5302fb(0x9e)]||'','password':process[_0x5302fb(0xcb)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x4c9424[_0x5302fb(0xb2)],'brokers':_0x4c9424[_0x5302fb(0xea)],'connectionTimeout':_0x4c9424['connectionTimeout'],'requestTimeout':_0x4c9424[_0x5302fb(0xda)],'logLevel':this[_0x5302fb(0xb1)](_0x4c9424[_0x5302fb(0xec)]),'ssl':_0x1ca0bb,'sasl':_0x31a91d,'retry':{'initialRetryTime':_0x4c9424['retryDelay'],'retries':_0x4c9424[_0x5302fb(0x9c)]}}),this['producer']=this['kafka']['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x5302fb(0xce)]}),await this['producer'][_0x5302fb(0x9d)](),this['isConnected']=!![],console[_0x5302fb(0xa2)]('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x4c9424[_0x5302fb(0xea)][_0x5302fb(0xc3)](',\x20')),this[_0x5302fb(0xa7)]['on'](_0x21a018['WPzZb'],()=>{const _0x3c5c8b=_0x5302fb;console['log'](_0x2b6026[_0x3c5c8b(0xe5)]),this['isConnected']=![];}),_0x21a018[_0x5302fb(0xf1)](_0x48b370,!![]);}catch(_0x2c1bf3){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x2c1bf3['message']),this['isConnected']=![],_0x21a018['exDSf'](_0x48b370,![]);}finally{this['isInitializing']=![];}}),this[_0xb5c0ac(0xe4)];}['formatDateTime'](_0xd40320){const _0x1a004b=a0_0x405b,_0x4f0900=_0xd40320||new Date(),_0x5cb480=_0x4f0900[_0x1a004b(0xc1)](),_0x692e6b=String(_0x4f0900['getMonth']()+0x1)[_0x1a004b(0xd4)](0x2,'0'),_0x3df99a=String(_0x4f0900[_0x1a004b(0xd3)]())['padStart'](0x2,'0'),_0x589294=String(_0x4f0900['getHours']())['padStart'](0x2,'0'),_0x319a32=String(_0x4f0900[_0x1a004b(0xbb)]())['padStart'](0x2,'0'),_0xe1e787=String(_0x4f0900['getSeconds']())['padStart'](0x2,'0');return _0x5cb480+'-'+_0x692e6b+'-'+_0x3df99a+'\x20'+_0x589294+':'+_0x319a32+':'+_0xe1e787;}[a0_0x2d9966(0xb7)](_0x626c5c,_0x45496e,_0x24bcb0,_0x2b1abc=null){const _0x448ce6=a0_0x2d9966,_0x49fd6e={'PBMQx':_0x448ce6(0xae),'iOtNk':_0x448ce6(0xbe),'SiGWU':'{action}'};if(_0x2b1abc)return _0x2b1abc;const _0x44d589=this['getConfig']()[_0x448ce6(0xd8)];return _0x44d589[_0x448ce6(0xc6)](_0x49fd6e['PBMQx'],_0x626c5c)['replace'](_0x49fd6e[_0x448ce6(0xb8)],_0x45496e)[_0x448ce6(0xc6)](_0x49fd6e[_0x448ce6(0xba)],_0x24bcb0);}['buildEventMessage'](_0x413083,_0x31f5d7,_0x54c10e,_0x1de163={}){const _0x15a140=a0_0x2d9966,_0x10b504={'IcqhA':function(_0x3097bf){return _0x3097bf();}},_0x41b910=new Date(),_0x36ccf0=this[_0x15a140(0xe0)](_0x41b910),_0x2a43bc=_0x1de163[_0x15a140(0xcd)]||_0x15a140(0xdd)+uuidv7();return{'eventId':_0x15a140(0xc8)+_0x10b504['IcqhA'](uuidv7),'eventType':_0x413083,'eventTime':_0x36ccf0,'eventVersion':'1.0','source':'restforge-'+(_0x1de163['module']||'unknown'),'correlationId':_0x2a43bc,'newData':_0x54c10e,'oldData':_0x31f5d7,'metadata':{'createdBy':_0x1de163['createdBy']||'SYSTEM','createdAt':_0x36ccf0,'systemId':_0x15a140(0xaf)+(_0x1de163[_0x15a140(0xd7)]||'unknown')[_0x15a140(0xaa)](),'tenantId':this['getConfig']()[_0x15a140(0xf0)],'endpoint':_0x1de163[_0x15a140(0xf4)]||null,'tableName':_0x1de163['tableName']||null}};}async[a0_0x2d9966(0xa1)](_0x551253,_0x3e9915,_0x46d5c2,_0x4fdb5b,_0x5ab8d3={}){const _0x185465=a0_0x2d9966,_0xa5a13c={'zyhSw':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker'},_0xddecb=this['getConfig']();if(!_0xddecb[_0x185465(0xc7)])return{'success':![],'reason':_0x185465(0xee),'published':![]};if(!this[_0x185465(0xc9)]){const _0x472fdc=await this['initialize']();if(!_0x472fdc)return{'success':![],'reason':_0xa5a13c['zyhSw'],'published':![]};}try{const _0x35b868=this['buildEventMessage'](_0x3e9915,_0x46d5c2,_0x4fdb5b,_0x5ab8d3),_0x47d785=_0x5ab8d3[_0x185465(0xe6)]||'id',_0x2fa424=_0x4fdb5b?.[_0x47d785]||_0x46d5c2?.[_0x47d785]||uuidv7(),_0x7b1ccd=await this[_0x185465(0xa7)][_0x185465(0xb9)]({'topic':_0x551253,'messages':[{'key':String(_0x2fa424),'value':JSON['stringify'](_0x35b868),'headers':{'event-type':_0x3e9915,'correlation-id':_0x35b868['correlationId'],'source':_0x35b868[_0x185465(0xe1)]}}]});return console[_0x185465(0xa2)](_0x185465(0xb0)+_0x551253+':\x20'+_0x3e9915+'\x20(key:\x20'+_0x2fa424+')'),{'success':!![],'correlationId':_0x35b868['correlationId'],'topic':_0x551253,'partition':_0x7b1ccd[0x0]?.[_0x185465(0xef)],'offset':_0x7b1ccd[0x0]?.[_0x185465(0xf7)],'published':!![]};}catch(_0x3aa551){return console[_0x185465(0xdc)](_0x185465(0xa3)+_0x551253+':\x20'+_0x3aa551[_0x185465(0xe8)]),{'success':![],'error':_0x3aa551[_0x185465(0xe8)],'published':![]};}}async[a0_0x2d9966(0xb3)](_0x1560cf,_0x3af4d7,_0x5e424c,_0x4aa8a7={}){const _0x1ab6bc=a0_0x2d9966,_0x4f9ccc=this['buildTopicName'](_0x1560cf,_0x3af4d7,_0x1ab6bc(0xf3),_0x4aa8a7[_0x1ab6bc(0xe2)]);return this['publishEvent'](_0x4f9ccc,_0x1ab6bc(0x9a),null,_0x5e424c,{'module':_0x1560cf,'endpoint':_0x3af4d7,'keyField':_0x4aa8a7[_0x1ab6bc(0xe6)],'tableName':_0x4aa8a7[_0x1ab6bc(0xde)],'correlationId':_0x4aa8a7[_0x1ab6bc(0xcd)]});}async['publishUpdate'](_0x3f3a5f,_0xb47efe,_0x3c425f,_0x5dfbf8,_0x5bc6d9={}){const _0x455f3d=a0_0x2d9966,_0x1aa0a9={'IvmFz':'updated'},_0x10fee6=this['buildTopicName'](_0x3f3a5f,_0xb47efe,_0x1aa0a9['IvmFz'],_0x5bc6d9['topic']);return this[_0x455f3d(0xa1)](_0x10fee6,_0x455f3d(0xcf),_0x3c425f,_0x5dfbf8,{'module':_0x3f3a5f,'endpoint':_0xb47efe,'keyField':_0x5bc6d9['keyField'],'tableName':_0x5bc6d9['tableName'],'correlationId':_0x5bc6d9['correlationId']});}async['publishDelete'](_0x20611d,_0x1c90db,_0x1d0cea,_0x4cbfd9={}){const _0x32eec4=a0_0x2d9966,_0x4f52a6=this[_0x32eec4(0xb7)](_0x20611d,_0x1c90db,_0x32eec4(0xb5),_0x4cbfd9[_0x32eec4(0xe2)]);return this[_0x32eec4(0xa1)](_0x4f52a6,_0x32eec4(0xd2),_0x1d0cea,null,{'module':_0x20611d,'endpoint':_0x1c90db,'keyField':_0x4cbfd9[_0x32eec4(0xe6)],'tableName':_0x4cbfd9[_0x32eec4(0xde)],'correlationId':_0x4cbfd9['correlationId']});}[a0_0x2d9966(0xad)](){const _0x4ce7d5=a0_0x2d9966,_0x1e0c06=this['getConfig']();return{'enabled':_0x1e0c06[_0x4ce7d5(0xc7)],'connected':this['isConnected'],'brokers':_0x1e0c06[_0x4ce7d5(0xea)],'clientId':_0x1e0c06['clientId'],'topicPattern':_0x1e0c06[_0x4ce7d5(0xd8)]};}async['close'](){const _0xbbad64=a0_0x2d9966;if(this[_0xbbad64(0xa7)]&&this['isConnected'])try{await this[_0xbbad64(0xa7)][_0xbbad64(0xa6)](),this[_0xbbad64(0xc9)]=![],console['log'](_0xbbad64(0xf2));}catch(_0x258e76){console[_0xbbad64(0xdc)]('[Kafka]\x20Error\x20disconnecting:\x20'+_0x258e76['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){const _0x1e33be=a0_0x2d9966;instance&&(instance[_0x1e33be(0xbd)](),instance=null);}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
@@ -1 +1 @@
1
- const a0_0x49eb54=a0_0x4a9a;function a0_0x1a70(){const _0x1d8bd7=['tw9KztOGs29UzwTZAsboEwf0yq','u3rHDhvZieXPC3rLBMvYoIa','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','pt09pt09ie1vtefjieLosvnjquXju0ftssbnrvntquDfsfvcid09pt09pq','uenMD0e','y1PvEui','ndvsy29gBxy','DxbRrKS','CMvZDgzVCMDLlq','mJq1otq4off1zvzZwG','tvnivujFqvvut19bq0Tot1Dmrurhrq','vfDOB00','nZK4odC1merLAfHYwq','zxntwNG','s29UzMLNDxjHC2KGugXHDgzVCM06ia','rLDrAKG','EM9ruwm','CMvXDwLYzufJAW','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','q29UBMvJDgLVBIb0Aw1LB3v0','BwvZC2fNzq','zw52','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','rxjYB3iGAw5PC2LHBgLZyxnPie1LC3nHz2viDwi6','CMvZB2X2zq','rxjYB3iGBg9HzgLUzYbnzxnZywDLshvIifnesZOG','uxb2qKq','yu5VB2q','igrPDgvYAw1Hig9SzwGG','tvnivujFufvcteLtsf9lrvK','twvZC2fNzsbuExbLoIa','y29TBxvUAwnHDgLVBLr5Cgu','r1DVsw0','mtq5mty5mZbwDNbJtMG','zgLZy29UBMvJDgvK','vw5RBM93BIbLCNjVCG','nJnxAgHuwLG','CMvJzwL2zwrbDa','C29JA2v0','Bg9N','mZu2ntK2mKTgEwDSuq','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','sKrACuS','y29UzMLYBwf0Aw9Uq291BNq','zgLZy29UBMvJDa','zxjYB3i','Dg9mB2nHBgvtDhjPBMC','seTiEvO','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','pt09pt09ierbveeGufvcteLtscbnrvntquDfid09pt09pq','CMvZDgzVCMDL','vgLKywSGzgfWyxqGBwvUzw11A2fUig1LDg9Kzsb1BNr1AYbTzw51DhvWigTVBMvRC2KGtwvZC2fNzuH1yG','u1bluMq','ywrKtgLZDgvUzxi','CwnHrhO','y2f0zwDVCNK','qLbrDxG','zNvUy3rPB24','ywH0zfO','yNjVywrJyxn0','t1nMq1a','DxvPza','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','mtm5mZrltvnHvuW','Dg9WAwm','wffAB1K','ndu1zxfwww1K','DeHpthK','Dg9ju09tDhjPBMC','ChvIBgLZAeTLEq','qNbbEeS','ru94B2y','BwvZC2fNzs1YzwnLAxzLza','tvnivujFqvbjx1bpuLq','lIbuB3rHBcbRB25MAxjTyxnPoIa','odi2mJHNzhDTC28','vgLKywSGzgLRzxrHAhvP','C2nHuNq','zxHWB3j0CW','zxjYB3jezxrHAwW','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','q2HHBM5LBcbuyxjNzxq6ia','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','y2HHBM5LBa','mtriB1HZANa','y2XLyxjdywnOzq','DwvAteW','wfjTy08','CMvJzwL2zxjjBMzV','tvnivujFu0vsvKLdrv9qt1ju','ndy5mdq0m0rxyLPTqq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq'];a0_0x1a70=function(){return _0x1d8bd7;};return a0_0x1a70();}(function(_0x20ef61,_0x26c996){const _0x4041b4=a0_0x4a9a,_0x435793=_0x20ef61();while(!![]){try{const _0x5ee811=-parseInt(_0x4041b4(0x204))/0x1*(parseInt(_0x4041b4(0x220))/0x2)+-parseInt(_0x4041b4(0x23b))/0x3+parseInt(_0x4041b4(0x22c))/0x4*(parseInt(_0x4041b4(0x223))/0x5)+parseInt(_0x4041b4(0x208))/0x6*(-parseInt(_0x4041b4(0x235))/0x7)+parseInt(_0x4041b4(0x246))/0x8*(parseInt(_0x4041b4(0x243))/0x9)+parseInt(_0x4041b4(0x201))/0xa+-parseInt(_0x4041b4(0x1ec))/0xb;if(_0x5ee811===_0x26c996)break;else _0x435793['push'](_0x435793['shift']());}catch(_0x3b90b6){_0x435793['push'](_0x435793['shift']());}}}(a0_0x1a70,0xf207a));function a0_0x4a9a(_0x465fbc,_0x58134e){_0x465fbc=_0x465fbc-0x1ea;const _0x1a7058=a0_0x1a70();let _0x4a9a6e=_0x1a7058[_0x465fbc];if(a0_0x4a9a['nDtmLK']===undefined){var _0x4d57dd=function(_0x80227b){const _0x3de20d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x189d0f='',_0x14d34d='';for(let _0x2571ab=0x0,_0x2b7adb,_0x100952,_0x105b55=0x0;_0x100952=_0x80227b['charAt'](_0x105b55++);~_0x100952&&(_0x2b7adb=_0x2571ab%0x4?_0x2b7adb*0x40+_0x100952:_0x100952,_0x2571ab++%0x4)?_0x189d0f+=String['fromCharCode'](0xff&_0x2b7adb>>(-0x2*_0x2571ab&0x6)):0x0){_0x100952=_0x3de20d['indexOf'](_0x100952);}for(let _0x4978b8=0x0,_0x23047d=_0x189d0f['length'];_0x4978b8<_0x23047d;_0x4978b8++){_0x14d34d+='%'+('00'+_0x189d0f['charCodeAt'](_0x4978b8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x14d34d);};a0_0x4a9a['AzUmnK']=_0x4d57dd,a0_0x4a9a['VuZsEs']={},a0_0x4a9a['nDtmLK']=!![];}const _0x3d0b62=_0x1a7058[0x0],_0x40fdd7=_0x465fbc+_0x3d0b62,_0x551ba3=a0_0x4a9a['VuZsEs'][_0x40fdd7];return!_0x551ba3?(_0x4a9a6e=a0_0x4a9a['AzUmnK'](_0x4a9a6e),a0_0x4a9a['VuZsEs'][_0x40fdd7]=_0x4a9a6e):_0x4a9a6e=_0x551ba3,_0x4a9a6e;}const dotenv=require('dotenv'),path=require('path'),fs=require('fs'),{v7:uuidv7}=require(a0_0x49eb54(0x21e));dotenv['config']();let MessageHub;try{const messagehubPath=path[a0_0x49eb54(0x1f8)](__dirname,a0_0x49eb54(0x211));if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x49eb54(0x207)]('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x17dafc){console['error'](a0_0x49eb54(0x1f9)+a0_0x17dafc['message']);throw a0_0x17dafc;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x4c49c8){const _0x29fe42=a0_0x49eb54,_0x583688=new Date()[_0x29fe42(0x225)]();console[_0x29fe42(0x207)]('['+_0x583688+']\x20'+_0x4c49c8);}async function initMessageHub(){const _0x4c37c8=a0_0x49eb54,_0x50a529={'tHOLy':function(_0x4bfb49,_0x22b4c3){return _0x4bfb49&&_0x22b4c3;},'FWQjH':function(_0x71070b,_0x17f039){return _0x71070b(_0x17f039);},'lVfgw':function(_0x39507b,_0x331eb9){return _0x39507b===_0x331eb9;},'Fqbbh':'message-sent','SPKRd':function(_0x52a698,_0x4d4971){return _0x52a698(_0x4d4971);},'QpvBD':_0x4c37c8(0x229),'oOoYk':_0x4c37c8(0x240),'KtHlR':function(_0x595fce,_0x28556d){return _0x595fce(_0x28556d);},'qcaDz':'true','TWhoM':function(_0x566ee2,_0x8b634e){return _0x566ee2(_0x8b634e);},'cZUyB':function(_0x25ebc6,_0x105587){return _0x25ebc6(_0x105587);},'HKHyZ':_0x4c37c8(0x1f7),'xVVlq':'MessageHub\x20sudah\x20terhubung,\x20menggunakan\x20koneksi\x20yang\x20ada','PCfwA':_0x4c37c8(0x231)};if(_0x50a529[_0x4c37c8(0x224)](messagehub,isConnected))return log(_0x50a529['xVVlq']),!![];if(connectionPromise)return _0x50a529[_0x4c37c8(0x1ef)](log,_0x50a529[_0x4c37c8(0x241)]),connectionPromise;return connectionPromise=new Promise(async(_0x3f1958,_0x2a6051)=>{const _0x12bee2=_0x4c37c8,_0x49fcaf={'wIuSV':function(_0x43af45,_0xcb7414){return _0x43af45===_0xcb7414;},'aNood':function(_0xcb294c,_0x3fc87b){const _0x253d05=a0_0x4a9a;return _0x50a529[_0x253d05(0x1ef)](_0xcb294c,_0x3fc87b);},'DlFzG':function(_0x4aeceb,_0x1c5fb9){return _0x50a529['lVfgw'](_0x4aeceb,_0x1c5fb9);},'XRmcO':'error','esSZx':_0x50a529['Fqbbh'],'gFXWL':function(_0x4cf84b,_0x5fcb54){const _0x3f86a5=a0_0x4a9a;return _0x50a529[_0x3f86a5(0x215)](_0x4cf84b,_0x5fcb54);},'zoQQc':function(_0x3d6e61,_0x5a7447){return _0x3d6e61===_0x5a7447;},'BPQux':_0x50a529[_0x12bee2(0x1fa)],'ueZLL':'Unknown'};try{_0x50a529['SPKRd'](log,_0x50a529['oOoYk']),_0x50a529['KtHlR'](log,'Waktu\x20Inisialisasi:\x20'+new Date()[_0x12bee2(0x20e)]()),log(_0x12bee2(0x23d));const _0x1aad38={'publishKey':process['env'][_0x12bee2(0x1fd)],'subscribeKey':process[_0x12bee2(0x1f5)]['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x12bee2(0x1f5)]['MSHUB_USER_ID']||_0x12bee2(0x245)+(process[_0x12bee2(0x1f5)][_0x12bee2(0x23c)]||'default')+'-'+process['pid'],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x12bee2(0x21c),'autoAcknowledge':process['env'][_0x12bee2(0x1ea)]===_0x50a529[_0x12bee2(0x217)],'acknowledgeMessages':process['env'][_0x12bee2(0x21f)]==='true','platform':{'type':process[_0x12bee2(0x1f5)]['MSHUB_COMMUNICATION_TYPE']||'websocket','host':process[_0x12bee2(0x1f5)]['MSHUB_HOST']||'localhost','api_port':parseInt(process['env'][_0x12bee2(0x22a)]||0xdf8),'service_port':_0x50a529[_0x12bee2(0x1ef)](parseInt,process['env'][_0x12bee2(0x23a)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x1aad38),_0x50a529['FWQjH'](log,_0x12bee2(0x1f2)),_0x50a529['SPKRd'](log,'Client\x20ID/UserID:\x20'+messagehub['userId']),_0x50a529[_0x12bee2(0x1eb)](log,'Publish\x20Key:\x20'+messagehub[_0x12bee2(0x226)]),log('Subscribe\x20Key:\x20'+messagehub['subscribeKey']),_0x50a529[_0x12bee2(0x215)](log,'Tipe\x20Komunikasi:\x20'+messagehub[_0x12bee2(0x1ff)]),log(_0x12bee2(0x1ee)+JSON['stringify'](messagehub['platformConfig'])),log(_0x12bee2(0x1f6)),messagehub[_0x12bee2(0x216)]({'status':function(_0x19720b){const _0x2f8f84=_0x12bee2;log(_0x2f8f84(0x23e)+_0x19720b[_0x2f8f84(0x218)]);if(_0x49fcaf['wIuSV'](_0x19720b[_0x2f8f84(0x218)],'connected'))_0x49fcaf[_0x2f8f84(0x1fb)](log,_0x2f8f84(0x210)),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0x3f1958(!![]);else{if(_0x19720b[_0x2f8f84(0x218)]===_0x2f8f84(0x202)){const _0x1bf747=_0x49fcaf['DlFzG'](_0x19720b['isErrorRelated'],!![]);!_0x1bf747&&(log('Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0x19720b['reason']||_0x2f8f84(0x22d))),isConnected=![],connectionPromise&&(_0x2a6051(new Error('Koneksi\x20terputus:\x20'+(_0x19720b['reason']||_0x2f8f84(0x22d)))),connectionPromise=null));}else{if(_0x19720b['category']===_0x49fcaf[_0x2f8f84(0x238)]){let _0x41bd9f=_0x19720b[_0x2f8f84(0x230)]||_0x19720b['error']||_0x2f8f84(0x203);_0x49fcaf[_0x2f8f84(0x1fb)](log,'⚠️\x20Error:\x20'+_0x41bd9f),isConnected=![],connectionPromise&&(_0x49fcaf['aNood'](_0x2a6051,new Error(_0x41bd9f)),connectionPromise=null);}else{if(_0x49fcaf['wIuSV'](_0x19720b[_0x2f8f84(0x218)],_0x49fcaf[_0x2f8f84(0x1ed)]))_0x49fcaf['gFXWL'](log,'📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0x19720b['requestId']);else{if(_0x49fcaf[_0x2f8f84(0x1f0)](_0x19720b['category'],_0x49fcaf[_0x2f8f84(0x219)])){const _0x5e8ed0=_0x19720b[_0x2f8f84(0x239)]?.['name']||_0x49fcaf[_0x2f8f84(0x237)],_0x587000=_0x19720b[_0x2f8f84(0x239)]?.['id']||_0x19720b['receiverId'],_0x32bc01=new Date(_0x19720b['receiverInfo']?.[_0x2f8f84(0x205)]||_0x19720b[_0x2f8f84(0x205)]||new Date())['toLocaleTimeString']();log('📩\x20Konfirmasi:\x20Pesan\x20'+_0x19720b['requestId']+_0x2f8f84(0x1fc)+_0x5e8ed0+'\x20('+_0x587000+')\x20pada\x20'+_0x32bc01+_0x2f8f84(0x22b)+(_0x19720b[_0x2f8f84(0x20b)]||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x48ec2b=_0x12bee2;_0x50a529[_0x48ec2b(0x224)](!isConnected,connectionPromise)&&(log(_0x48ec2b(0x233)),_0x2a6051(new Error(_0x48ec2b(0x1f3))),connectionPromise=null);},0x2710);}catch(_0xa5fe58){_0x50a529[_0x12bee2(0x242)](log,_0x12bee2(0x209)+_0xa5fe58['message']),console[_0x12bee2(0x20d)](_0x50a529[_0x12bee2(0x20f)],_0xa5fe58),connectionPromise=null,_0x2a6051(_0xa5fe58);}}),connectionPromise;}async function publishMessage(_0x378c31,_0x517228,_0x3cff9d,_0x3a98ea={}){const _0x39626a=a0_0x49eb54,_0x14ab30={'JDZqK':function(_0x4cbe4b){return _0x4cbe4b();},'EOxof':function(_0x138f1b,_0x4ec17b){return _0x138f1b(_0x4ec17b);},'scaRt':function(_0x3b8169,_0x48f231){return _0x3b8169!==_0x48f231;},'ahtdZ':_0x39626a(0x213),'tsuhZ':function(_0x3de31e,_0x2c1f2f){return _0x3de31e(_0x2c1f2f);},'XQZoY':'Mengirim\x20pesan\x20ke\x20server...','upkFK':function(_0x2c4b39,_0x2c779a){return _0x2c4b39(_0x2c779a);},'bhsFU':_0x39626a(0x23f)};try{!isConnected&&await _0x14ab30[_0x39626a(0x20a)](initMessageHub);const _0x480643=messagehub[_0x39626a(0x234)](_0x378c31);log(_0x39626a(0x212)),log(_0x39626a(0x232)+_0x480643[_0x39626a(0x221)]),_0x14ab30[_0x39626a(0x228)](log,_0x39626a(0x1fe)+_0x517228),log('================================');const _0x29d76b={'requireAck':_0x14ab30[_0x39626a(0x22e)](_0x3a98ea['requireAck'],undefined)?_0x3a98ea[_0x39626a(0x1f1)]:![],'clearCache':_0x3a98ea[_0x39626a(0x236)]!==undefined?_0x3a98ea['clearCache']:!![],'senderId':messagehub[_0x39626a(0x206)]?messagehub['socket']['id']:_0x14ab30[_0x39626a(0x21b)]};_0x14ab30['tsuhZ'](log,_0x14ab30[_0x39626a(0x222)]);const _0x355160={'type':_0x517228,'content':_0x3cff9d},_0x24a03f=await _0x480643['publish'](_0x355160,_0x29d76b);return _0x14ab30[_0x39626a(0x244)](log,'Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x378c31),{'success':!![],'requestId':_0x24a03f['requestId'],'topic':_0x378c31,'message':_0x14ab30['bhsFU']};}catch(_0x404736){return _0x14ab30[_0x39626a(0x244)](log,'⚠️\x20Error\x20publishing\x20message:\x20'+_0x404736[_0x39626a(0x1f4)]),{'success':![],'error':_0x404736[_0x39626a(0x1f4)],'topic':_0x378c31,'message':'Failed\x20to\x20send\x20message'};}}async function closeConnection(){const _0x268488=a0_0x49eb54,_0xa90531={'IAFrR':function(_0x1de64e,_0x499e9b){return _0x1de64e===_0x499e9b;},'BpAxK':_0x268488(0x21a),'OSfCP':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()','AMOHE':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()','GWoIm':function(_0x5dec75,_0x546b2f){return _0x5dec75(_0x546b2f);},'WIAFK':_0x268488(0x214),'tvQxN':function(_0x40dce7,_0x322c2c){return _0x40dce7(_0x322c2c);}};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(_0xa90531['IAFrR'](typeof messagehub[_0x268488(0x20c)],_0xa90531[_0x268488(0x227)]))await messagehub['disconnect'](),log(_0xa90531[_0x268488(0x21d)]);else{if(_0xa90531['IAFrR'](typeof messagehub['close'],_0xa90531['BpAxK']))await messagehub['close'](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()');else messagehub[_0x268488(0x206)]&&typeof messagehub[_0x268488(0x206)][_0x268488(0x20c)]===_0xa90531[_0x268488(0x227)]?(messagehub['socket']['disconnect'](),log(_0xa90531['AMOHE'])):_0xa90531[_0x268488(0x200)](log,_0xa90531['WIAFK']);}isConnected=![],connectionPromise=null;}catch(_0x18561b){_0xa90531['tvQxN'](log,'Error\x20saat\x20menutup\x20koneksi:\x20'+_0x18561b[_0x268488(0x1f4)]);}}module[a0_0x49eb54(0x22f)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
1
+ const a0_0x1c2b8c=a0_0x4e9f;function a0_0x2371(){const _0xc989b4=['4PQG77IpievYCM9YoIa','CM1usfe','CgXHDgzVCM1dB25MAwC','y2XLyxjdywnOzq','BwvZC2fNzq','pt09pt09ie1vtefjieLosvnjquXju0ftssbnrvntquDfsfvcid09pt09pq','BNvor2S','tw9KztOGs29UzwTZAsboEwf0yq','AeHMwvq','tvnivujFqvbjx1bpuLq','nJq3otD0D2PXBfy','ndmXnZqXneX5BKH1wq','sNLMCeG','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','zLzNEuu','uLrpAw0','ody2mtG0tMLyquvT','CMvZDgzVCMDLlq','CMvXDwLYzufJAW','D2vIC29JA2v0','rhLdyMW','CgLK','ENzrrKS','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','z29puLq','ALP0yKe','Cgf0Aa','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ofbABKDnDG','CMvJzwL2zxjjBMzV','mZuWnJG0nNLlvevWwG','C29JA2v0','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','s29UzwTZAsb0zxjWDxr1CZOG','CvL5ufC','tvnivujFvvnfuL9jra','AxnfCNjVCLjLBgf0zwq','BMnMuKi','ntm1oduZn0vXr1zUuW','zgLZy29UBMvJDa','vgLWzsblB211BMLRyxnPoIa','pt09pt09ierbveeGufvcteLtscbnrvntquDfid09pt09pq','teTnuM8','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','zw52','zfHMvuK','vLrquxu','nuzrvxPeyq','yNb1BfO','wwzKrMS','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','zxjYB3i','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','ndzqDM5vuLy','t3rYs3y','qLfNBhe','sLr1que','tvnivujFu1vcu0nssujfx0Tfwq','qw5tyLe','mtiYoduXmtLlueXowwm','y2f0zwDVCNK','t3LSveW','y29UzMLYBwf0Aw9Uq291BNq','ywzrCKW','u3vIC2nYAwjLieTLEtOG','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','Bg9N','u3rHDhvZieXPC3rLBMvYoIa','CezNDvu','CMvXDwvZDeLK','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','rgHXDMm','mtbyqxbwCui','AxbtqwC','ALjmyxy','ywrKtgLZDgvUzxi','Dg9mB2nHBgvtDhjPBMC','zxHWB3j0CW','BMfTzq','CMvJzwL2zwrbDa','wM90rLq','tvnivujFufvcteLtsf9lrvK','Dhj1zq','yuDZrfK','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','Bezosei','q2XPzw50ieLel1vZzxjjrdOG','y2HHBM5LBa','mZu5mdm2twjzDgzz','tuLqvw8'];a0_0x2371=function(){return _0xc989b4;};return a0_0x2371();}(function(_0x358b8d,_0x441521){const _0x37b36f=a0_0x4e9f,_0x4d6fa1=_0x358b8d();while(!![]){try{const _0x22a731=parseInt(_0x37b36f(0x128))/0x1+-parseInt(_0x37b36f(0x104))/0x2*(-parseInt(_0x37b36f(0x134))/0x3)+parseInt(_0x37b36f(0x13a))/0x4*(parseInt(_0x37b36f(0xfe))/0x5)+-parseInt(_0x37b36f(0x135))/0x6+parseInt(_0x37b36f(0x149))/0x7*(-parseInt(_0x37b36f(0x147))/0x8)+parseInt(_0x37b36f(0x151))/0x9*(-parseInt(_0x37b36f(0x118))/0xa)+parseInt(_0x37b36f(0x10a))/0xb;if(_0x22a731===_0x441521)break;else _0x4d6fa1['push'](_0x4d6fa1['shift']());}catch(_0x2ad296){_0x4d6fa1['push'](_0x4d6fa1['shift']());}}}(a0_0x2371,0x5b200));const dotenv=require('dotenv'),path=require(a0_0x1c2b8c(0x145)),fs=require('fs'),{v7:uuidv7}=require('uuid');dotenv['config']();let MessageHub;function a0_0x4e9f(_0x5b0630,_0x15091d){_0x5b0630=_0x5b0630-0xf9;const _0x2371e7=a0_0x2371();let _0x4e9fec=_0x2371e7[_0x5b0630];if(a0_0x4e9f['kJnhyd']===undefined){var _0x3ebcef=function(_0x577375){const _0x53a46d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x24ca51='',_0x20e25f='';for(let _0x3ff894=0x0,_0x535682,_0x176cff,_0x301694=0x0;_0x176cff=_0x577375['charAt'](_0x301694++);~_0x176cff&&(_0x535682=_0x3ff894%0x4?_0x535682*0x40+_0x176cff:_0x176cff,_0x3ff894++%0x4)?_0x24ca51+=String['fromCharCode'](0xff&_0x535682>>(-0x2*_0x3ff894&0x6)):0x0){_0x176cff=_0x53a46d['indexOf'](_0x176cff);}for(let _0x3639ee=0x0,_0xaf542=_0x24ca51['length'];_0x3639ee<_0xaf542;_0x3639ee++){_0x20e25f+='%'+('00'+_0x24ca51['charCodeAt'](_0x3639ee)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x20e25f);};a0_0x4e9f['GkfTUH']=_0x3ebcef,a0_0x4e9f['BAtGZY']={},a0_0x4e9f['kJnhyd']=!![];}const _0x1f0598=_0x2371e7[0x0],_0x48c655=_0x5b0630+_0x1f0598,_0x5773a5=a0_0x4e9f['BAtGZY'][_0x48c655];return!_0x5773a5?(_0x4e9fec=a0_0x4e9f['GkfTUH'](_0x4e9fec),a0_0x4e9f['BAtGZY'][_0x48c655]=_0x4e9fec):_0x4e9fec=_0x5773a5,_0x4e9fec;}try{const messagehubPath=path['resolve'](__dirname,a0_0x1c2b8c(0xfa));if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x1c2b8c(0x111)]('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x2bb955){console[a0_0x1c2b8c(0x102)]('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x2bb955['message']);throw a0_0x2bb955;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x1981e6){const _0x3e9652=new Date()['toISOString']();console['log']('['+_0x3e9652+']\x20'+_0x1981e6);}async function initMessageHub(){const _0x58fac8=a0_0x1c2b8c,_0x4bc02a={'AnSbQ':function(_0x1fd7fc,_0x20c36d){return _0x1fd7fc(_0x20c36d);},'EKhhb':function(_0x489925,_0xf99534){return _0x489925===_0xf99534;},'dhoxI':'Unknown\x20error','bpulZ':function(_0x143c29,_0x4b4eb3){return _0x143c29===_0x4b4eb3;},'fVgyE':'message-received','ZotFT':_0x58fac8(0x12f),'Dhqvc':_0x58fac8(0x131),'FXKcI':'default','aBYjE':'broadcast','gDlnF':'true','JTuAA':_0x58fac8(0x13d),'dXfUI':'localhost','OylTL':function(_0x489b2d,_0x38aee8){return _0x489b2d(_0x38aee8);},'pFguU':function(_0xede6ba,_0x34f8e3){return _0xede6ba(_0x34f8e3);},'afQrL':function(_0x2f68c9,_0x45db0c){return _0x2f68c9(_0x45db0c);},'lFNHB':_0x58fac8(0x137),'jZtbA':function(_0x4a6766,_0x45690e,_0x272007){return _0x4a6766(_0x45690e,_0x272007);},'jEVwo':'Error\x20inisialisasi\x20MessageHub:','JyfpH':function(_0x5cfcd3,_0x3fa611){return _0x5cfcd3(_0x3fa611);},'ipSAg':function(_0x1d0699,_0x3742ac){return _0x1d0699&&_0x3742ac;}};if(_0x4bc02a[_0x58fac8(0x119)](messagehub,isConnected))return log('MessageHub\x20sudah\x20terhubung,\x20menggunakan\x20koneksi\x20yang\x20ada'),!![];if(connectionPromise)return _0x4bc02a['AnSbQ'](log,_0x58fac8(0x101)),connectionPromise;return connectionPromise=new Promise(async(_0x1e67a1,_0x473d98)=>{const _0x3e1310=_0x58fac8,_0x11de9b={'nuNGk':function(_0x192113,_0xdd4b21){return _0x192113(_0xdd4b21);},'qYyPW':function(_0x409fbf,_0x166b67){return _0x409fbf===_0x166b67;},'OxmSG':function(_0x3e8118,_0x200906){const _0x5b1de9=a0_0x4e9f;return _0x4bc02a[_0x5b1de9(0x109)](_0x3e8118,_0x200906);},'HzAQJ':'disconnected','VTPQu':'Tidak\x20diketahui','hHfYT':function(_0x400dc0,_0x5da18f){return _0x4bc02a['EKhhb'](_0x400dc0,_0x5da18f);},'zvQFK':_0x4bc02a['dhoxI'],'RTOim':function(_0x3a7d00,_0x5fa8fa){return _0x3a7d00(_0x5fa8fa);},'LvNPM':function(_0x3f96ea,_0x35a4ba){const _0x527fec=a0_0x4e9f;return _0x4bc02a[_0x527fec(0xff)](_0x3f96ea,_0x35a4ba);},'jRLav':'message-sent','NrQJC':_0x4bc02a[_0x3e1310(0x138)],'sqLth':function(_0x4645b3,_0x56b831){const _0x3c27af=_0x3e1310;return _0x4bc02a[_0x3c27af(0x109)](_0x4645b3,_0x56b831);},'BQglq':'⚠️\x20Timeout:\x20Tidak\x20dapat\x20terhubung\x20ke\x20MessageHub\x20server\x20dalam\x20waktu\x20yang\x20ditentukan'};try{log(_0x4bc02a[_0x3e1310(0x120)]),log('Waktu\x20Inisialisasi:\x20'+new Date()[_0x3e1310(0x11c)]()),_0x4bc02a[_0x3e1310(0x109)](log,_0x4bc02a[_0x3e1310(0x117)]);const _0x102d09={'publishKey':process[_0x3e1310(0xfb)][_0x3e1310(0x121)],'subscribeKey':process[_0x3e1310(0xfb)][_0x3e1310(0x108)],'userId':process['env'][_0x3e1310(0x14e)]||_0x3e1310(0x13b)+(process[_0x3e1310(0xfb)][_0x3e1310(0x146)]||_0x4bc02a['FXKcI'])+'-'+process[_0x3e1310(0x13f)],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x4bc02a['aBYjE'],'autoAcknowledge':_0x4bc02a['EKhhb'](process[_0x3e1310(0xfb)]['MSHUB_AUTO_ACKNOWLEDGE'],_0x3e1310(0x122)),'acknowledgeMessages':process[_0x3e1310(0xfb)][_0x3e1310(0x110)]===_0x4bc02a['gDlnF'],'platform':{'type':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x4bc02a[_0x3e1310(0x107)],'host':process[_0x3e1310(0xfb)]['MSHUB_HOST']||_0x4bc02a[_0x3e1310(0xfc)],'api_port':_0x4bc02a[_0x3e1310(0x10c)](parseInt,process[_0x3e1310(0xfb)][_0x3e1310(0x133)]||0xdf8),'service_port':_0x4bc02a['OylTL'](parseInt,process[_0x3e1310(0xfb)]['MSHUB_SERVICE_PORT']||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x102d09),_0x4bc02a[_0x3e1310(0x113)](log,'======\x20INFORMASI\x20CLIENT\x20MESSAGEHUB\x20======'),log(_0x3e1310(0x126)+messagehub['userId']),_0x4bc02a[_0x3e1310(0x10e)](log,'Publish\x20Key:\x20'+messagehub['publishKey']),_0x4bc02a['afQrL'](log,_0x3e1310(0x10f)+messagehub['subscribeKey']),log(_0x3e1310(0x153)+messagehub['communicationType']),_0x4bc02a[_0x3e1310(0x109)](log,'Konfigurasi\x20Platform:\x20'+JSON['stringify'](messagehub[_0x3e1310(0x12c)])),log(_0x4bc02a[_0x3e1310(0x125)]),messagehub[_0x3e1310(0x11b)]({'status':function(_0x278af8){const _0x123884=_0x3e1310;_0x11de9b['nuNGk'](log,_0x123884(0x112)+_0x278af8[_0x123884(0x10b)]);if(_0x11de9b[_0x123884(0x14d)](_0x278af8['category'],'connected'))_0x11de9b[_0x123884(0x130)](log,'Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(_0x11de9b['nuNGk'](clearTimeout,timeoutHandler),timeoutHandler=null),_0x11de9b['OxmSG'](_0x1e67a1,!![]);else{if(_0x278af8[_0x123884(0x10b)]===_0x11de9b['HzAQJ']){const _0xd73143=_0x278af8[_0x123884(0x14f)]===!![];!_0xd73143&&(log(_0x123884(0x116)+(_0x278af8['reason']||_0x11de9b[_0x123884(0xfd)])),isConnected=![],connectionPromise&&(_0x473d98(new Error(_0x123884(0x14c)+(_0x278af8['reason']||_0x11de9b[_0x123884(0xfd)]))),connectionPromise=null));}else{if(_0x11de9b[_0x123884(0x132)](_0x278af8['category'],'error')){let _0x1c9b14=_0x278af8['errorDetail']||_0x278af8['error']||_0x11de9b[_0x123884(0x140)];_0x11de9b[_0x123884(0x139)](log,_0x123884(0x12a)+_0x1c9b14),isConnected=![],connectionPromise&&(_0x473d98(new Error(_0x1c9b14)),connectionPromise=null);}else{if(_0x11de9b['LvNPM'](_0x278af8[_0x123884(0x10b)],_0x11de9b[_0x123884(0x11a)]))log('📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0x278af8[_0x123884(0x114)]);else{if(_0x278af8[_0x123884(0x10b)]===_0x11de9b['NrQJC']){const _0x3c761f=_0x278af8[_0x123884(0x148)]?.[_0x123884(0x11e)]||'Unknown',_0x423ccc=_0x278af8[_0x123884(0x148)]?.['id']||_0x278af8['receiverId'],_0xc275ed=new Date(_0x278af8['receiverInfo']?.['receivedAt']||_0x278af8[_0x123884(0x11f)]||new Date())['toLocaleTimeString']();_0x11de9b['sqLth'](log,_0x123884(0x115)+_0x278af8['requestId']+'\x20diterima\x20oleh\x20'+_0x3c761f+'\x20('+_0x423ccc+')\x20pada\x20'+_0xc275ed+'.\x20Total\x20konfirmasi:\x20'+(_0x278af8[_0x123884(0x10d)]||0x1));}}}}}}}),timeoutHandler=_0x4bc02a[_0x3e1310(0x144)](setTimeout,()=>{const _0x575b9a=_0x3e1310;!isConnected&&connectionPromise&&(log(_0x11de9b[_0x575b9a(0x106)]),_0x473d98(new Error('Connection\x20timeout')),connectionPromise=null);},0x2710);}catch(_0x25df46){log(_0x3e1310(0x103)+_0x25df46[_0x3e1310(0x12e)]),console['error'](_0x4bc02a['jEVwo'],_0x25df46),connectionPromise=null,_0x4bc02a[_0x3e1310(0x136)](_0x473d98,_0x25df46);}}),connectionPromise;}async function publishMessage(_0x5211c7,_0x53facf,_0x12ec68,_0x3e2a61={}){const _0x29631f=a0_0x1c2b8c,_0x424ece={'goORT':function(_0x4c8974){return _0x4c8974();},'DyCbl':function(_0x37b7d4,_0x502a30){return _0x37b7d4(_0x502a30);},'BYfhV':'================================','GvTPh':function(_0x43dda4,_0x4ed12c){return _0x43dda4!==_0x4ed12c;},'tWalp':function(_0xa11945,_0x12148e){return _0xa11945!==_0x12148e;},'rnXXU':function(_0x1ef169,_0x489d5f){return _0x1ef169(_0x489d5f);},'EuThI':'Failed\x20to\x20send\x20message'};try{!isConnected&&await _0x424ece[_0x29631f(0x143)](initMessageHub);const _0x1a8014=messagehub[_0x29631f(0x127)](_0x5211c7);_0x424ece[_0x29631f(0x13e)](log,_0x29631f(0x154)),log('Channel\x20Target:\x20'+_0x1a8014['topic']),_0x424ece['DyCbl'](log,'Message\x20Type:\x20'+_0x53facf),log(_0x424ece['BYfhV']);const _0x54c945={'requireAck':_0x424ece['GvTPh'](_0x3e2a61[_0x29631f(0x13c)],undefined)?_0x3e2a61['requireAck']:![],'clearCache':_0x424ece['tWalp'](_0x3e2a61[_0x29631f(0x12d)],undefined)?_0x3e2a61[_0x29631f(0x12d)]:!![],'senderId':messagehub['socket']?messagehub['socket']['id']:'restforge'};log('Mengirim\x20pesan\x20ke\x20server...');const _0x1c45b4={'type':_0x53facf,'content':_0x12ec68},_0x273603=await _0x1a8014['publish'](_0x1c45b4,_0x54c945);return _0x424ece[_0x29631f(0x13e)](log,_0x29631f(0x124)+_0x5211c7),{'success':!![],'requestId':_0x273603['requestId'],'topic':_0x5211c7,'message':'Message\x20sent\x20successfully'};}catch(_0x4c8b03){return _0x424ece['rnXXU'](log,_0x29631f(0x142)+_0x4c8b03[_0x29631f(0x12e)]),{'success':![],'error':_0x4c8b03['message'],'topic':_0x5211c7,'message':_0x424ece['EuThI']};}}async function closeConnection(){const _0x15c597=a0_0x1c2b8c,_0x760c1={'OtrKv':function(_0x141829,_0x1ee298){return _0x141829&&_0x1ee298;},'aGsDY':function(_0x19f4a5,_0x4c46e5){return _0x19f4a5(_0x4c46e5);},'rmTHQ':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()','ncfRB':'function','TqJgL':_0x15c597(0x14b),'LKMRo':function(_0x192c11,_0x2b1c4d){return _0x192c11===_0x2b1c4d;},'MIPUo':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub','YfdFk':function(_0x58558f,_0x1e3ae2){return _0x58558f(_0x1e3ae2);}};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(_0x760c1[_0x15c597(0x105)](isConnected,messagehub))try{if(typeof messagehub[_0x15c597(0x152)]==='function')await messagehub[_0x15c597(0x152)](),_0x760c1[_0x15c597(0x123)](log,_0x760c1[_0x15c597(0x12b)]);else{if(typeof messagehub['close']===_0x760c1['ncfRB'])await messagehub['close'](),_0x760c1[_0x15c597(0x123)](log,_0x760c1['TqJgL']);else messagehub[_0x15c597(0x14a)]&&_0x760c1[_0x15c597(0xf9)](typeof messagehub[_0x15c597(0x14a)][_0x15c597(0x152)],_0x760c1[_0x15c597(0x150)])?(messagehub['socket']['disconnect'](),_0x760c1[_0x15c597(0x123)](log,_0x15c597(0x141))):log(_0x760c1[_0x15c597(0x129)]);}isConnected=![],connectionPromise=null;}catch(_0x11b777){_0x760c1[_0x15c597(0x100)](log,'Error\x20saat\x20menutup\x20koneksi:\x20'+_0x11b777[_0x15c597(0x12e)]);}}module[a0_0x1c2b8c(0x11d)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};