@restforgejs/platform 5.2.16 → 5.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/bin/restforge-designer-linux +0 -0
  2. package/bin/restforge-designer.exe +0 -0
  3. package/build-info.json +2 -2
  4. package/cli/consumer-deploy.js +1 -1
  5. package/cli/consumer.js +1 -1
  6. package/cli/designer.js +3 -0
  7. package/generators/cli/endpoint/create.js +69 -6
  8. package/generators/cli/fast-track.js +7 -7
  9. package/generators/cli/payload/sync.js +16 -6
  10. package/generators/cli/project/auth.js +2 -2
  11. package/generators/cli/project/sdk.js +112 -0
  12. package/generators/lib/arg-parser.js +6 -0
  13. package/generators/lib/auth/processor-generator.js +5 -3
  14. package/generators/lib/auth/templates/processor/google.js.tmpl +178 -0
  15. package/generators/lib/auth/templates/processor/login.js.tmpl +8 -8
  16. package/generators/lib/auth/templates/processor/logout.js.tmpl +2 -2
  17. package/generators/lib/auth/templates/processor/me.js.tmpl +2 -2
  18. package/generators/lib/auth/templates/processor/refresh.js.tmpl +6 -6
  19. package/generators/lib/auth/templates/processor/register.js.tmpl +4 -4
  20. package/generators/lib/auth/templates/processor/reset-password.js.tmpl +7 -7
  21. package/generators/lib/auth/templates/rfx_auth.js.tmpl +3 -0
  22. package/generators/lib/generators/model-generator.js +46 -59
  23. package/generators/lib/help-generator.js +41 -3
  24. package/generators/lib/payload/endpoint-schema-validator.js +8 -3
  25. package/generators/lib/payload/field-projections.js +116 -0
  26. package/generators/lib/payload/payload-runner.js +164 -48
  27. package/generators/lib/payload/schema-diff.js +108 -0
  28. package/generators/lib/sdk/generator.js +719 -0
  29. package/generators/lib/sdk/naming.js +48 -0
  30. package/generators/lib/sdk/runtime/README.md.tmpl +207 -0
  31. package/generators/lib/sdk/runtime/auth-client.js +186 -0
  32. package/generators/lib/sdk/runtime/deploy.mjs.tmpl +85 -0
  33. package/generators/lib/sdk/runtime/http-client.js +81 -0
  34. package/generators/lib/sdk/runtime/resource-client.js +59 -0
  35. package/generators/lib/sdk/runtime/storage.js +31 -0
  36. package/generators/lib/templates/dashboard-catalog.js +1 -1
  37. package/generators/lib/templates/db-connection-env.js +1 -1
  38. package/generators/lib/templates/dbschema-catalog.js +1 -1
  39. package/generators/lib/templates/field-validation-catalog.js +1 -1
  40. package/generators/lib/templates/mysql-template.js +1 -1
  41. package/generators/lib/templates/oracle-template.js +1 -1
  42. package/generators/lib/templates/postgres-template.js +1 -1
  43. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  44. package/generators/lib/templates/sqlite-template.js +1 -1
  45. package/generators/lib/utils/cli-output.js +40 -0
  46. package/generators/lib/utils/config-resolver.js +61 -0
  47. package/generators/lib/utils/database-introspector.js +28 -5
  48. package/integrity-manifest.json +18 -18
  49. package/package.json +3 -2
  50. package/scripts/verify-integrity.js +1 -1
  51. package/server.js +1 -1
  52. package/src/components/handlers/adjust_handler.js +1 -1
  53. package/src/components/handlers/audit_handler.js +1 -1
  54. package/src/components/handlers/delete_handler.js +1 -1
  55. package/src/components/handlers/export_handler.js +1 -1
  56. package/src/components/handlers/import_handler.js +1 -1
  57. package/src/components/handlers/insert_handler.js +1 -1
  58. package/src/components/handlers/update_handler.js +1 -1
  59. package/src/components/handlers/upload_handler.js +1 -1
  60. package/src/components/handlers/workflow_handler.js +1 -1
  61. package/src/components/integrations/webhook.js +1 -1
  62. package/src/consumers/baseConsumer.js +1 -1
  63. package/src/consumers/declarativeMapper.js +1 -1
  64. package/src/consumers/handlers/apiHandler.js +1 -1
  65. package/src/consumers/handlers/consoleHandler.js +1 -1
  66. package/src/consumers/handlers/databaseHandler.js +1 -1
  67. package/src/consumers/handlers/index.js +1 -1
  68. package/src/consumers/handlers/kafkaHandler.js +1 -1
  69. package/src/consumers/index.js +1 -1
  70. package/src/consumers/messageTransformer.js +1 -1
  71. package/src/consumers/validator.js +1 -1
  72. package/src/core/db/dialect/base-dialect.js +1 -1
  73. package/src/core/db/dialect/index.js +1 -1
  74. package/src/core/db/dialect/mysql-dialect.js +1 -1
  75. package/src/core/db/dialect/oracle-dialect.js +1 -1
  76. package/src/core/db/dialect/postgres-dialect.js +1 -1
  77. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  78. package/src/core/db/flatten-helper.js +1 -1
  79. package/src/core/db/query-builder-error.js +1 -1
  80. package/src/core/db/query-builder.js +1 -1
  81. package/src/core/db/relation-helper.js +1 -1
  82. package/src/core/handlers/delete_handler.js +1 -1
  83. package/src/core/handlers/insert_handler.js +1 -1
  84. package/src/core/handlers/update_handler.js +1 -1
  85. package/src/core/models/base-model.js +1 -1
  86. package/src/core/utils/cache-manager.js +1 -1
  87. package/src/core/utils/component-engine.js +1 -1
  88. package/src/core/utils/context-builder.js +1 -1
  89. package/src/core/utils/datetime-formatter.js +1 -1
  90. package/src/core/utils/datetime-parser.js +1 -1
  91. package/src/core/utils/db.js +1 -1
  92. package/src/core/utils/logger.js +1 -1
  93. package/src/core/utils/payload-loader.js +1 -1
  94. package/src/core/utils/security-checks.js +1 -1
  95. package/src/middleware/body-options.js +1 -1
  96. package/src/middleware/cors.js +1 -1
  97. package/src/middleware/idempotency.js +1 -1
  98. package/src/middleware/rate-limiter.js +1 -1
  99. package/src/middleware/request-logger.js +1 -1
  100. package/src/middleware/security-headers.js +1 -1
  101. package/src/models/base-model-mysql.js +1 -1
  102. package/src/models/base-model-oracle.js +1 -1
  103. package/src/models/base-model-sqlite.js +1 -1
  104. package/src/models/base-model.js +1 -1
  105. package/src/pro/caching/redis-client.js +1 -1
  106. package/src/pro/caching/redis-helper.js +1 -1
  107. package/src/pro/consumers/baseConsumer.js +1 -1
  108. package/src/pro/consumers/declarativeMapper.js +1 -1
  109. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  110. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  111. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  112. package/src/pro/consumers/handlers/index.js +1 -1
  113. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  114. package/src/pro/consumers/index.js +1 -1
  115. package/src/pro/consumers/messageTransformer.js +1 -1
  116. package/src/pro/consumers/validator.js +1 -1
  117. package/src/pro/database/base-model-mysql.js +1 -1
  118. package/src/pro/database/base-model-oracle.js +1 -1
  119. package/src/pro/database/base-model-sqlite.js +1 -1
  120. package/src/pro/database/db-mysql.js +1 -1
  121. package/src/pro/database/db-oracle.js +1 -1
  122. package/src/pro/database/db-sqlite.js +1 -1
  123. package/src/pro/excel/excel-generator.js +1 -1
  124. package/src/pro/excel/excel-parser.js +1 -1
  125. package/src/pro/excel/export-service.js +1 -1
  126. package/src/pro/excel/export_handler.js +1 -1
  127. package/src/pro/excel/import-service.js +1 -1
  128. package/src/pro/excel/import-validator.js +1 -1
  129. package/src/pro/excel/import_handler.js +1 -1
  130. package/src/pro/excel/upsert-builder.js +1 -1
  131. package/src/pro/idgen/idgen-routes.js +1 -1
  132. package/src/pro/integrations/lookup-resolver.js +1 -1
  133. package/src/pro/integrations/upload-handler-v2.js +1 -1
  134. package/src/pro/integrations/upload-handler.js +1 -1
  135. package/src/pro/integrations/webhook.js +1 -1
  136. package/src/pro/locking/lock-routes.js +1 -1
  137. package/src/pro/locking/resource-lock-manager.js +1 -1
  138. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  139. package/src/pro/messaging/kafkaService.js +1 -1
  140. package/src/pro/messaging/messagehubService.js +1 -1
  141. package/src/pro/messaging/rabbitmqService.js +1 -1
  142. package/src/pro/scheduler/job-manager.js +1 -1
  143. package/src/pro/scheduler/job-routes.js +1 -1
  144. package/src/pro/scheduler/job-validator.js +1 -1
  145. package/src/pro/storage/base-storage-provider.js +1 -1
  146. package/src/pro/storage/file-metadata-helper.js +1 -1
  147. package/src/pro/storage/index.js +1 -1
  148. package/src/pro/storage/local-storage-provider.js +1 -1
  149. package/src/pro/storage/s3-storage-provider.js +1 -1
  150. package/src/pro/storage/upload-cleanup-job.js +1 -1
  151. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  152. package/src/pro/storage/upload-pending-tracker.js +1 -1
  153. package/src/pro/websocket/broadcast-helper.js +1 -1
  154. package/src/pro/websocket/index.js +1 -1
  155. package/src/pro/websocket/livesync-server.js +1 -1
  156. package/src/pro/websocket/ws-broadcaster.js +1 -1
  157. package/src/services/export-service.js +1 -1
  158. package/src/services/import-service.js +1 -1
  159. package/src/services/kafkaConsumerService.js +1 -1
  160. package/src/services/kafkaService.js +1 -1
  161. package/src/services/messagehubService.js +1 -1
  162. package/src/services/rabbitmqService.js +1 -1
  163. package/src/utils/cache-invalidation-registry.js +1 -1
  164. package/src/utils/cache-manager.js +1 -1
  165. package/src/utils/component-engine.js +1 -1
  166. package/src/utils/config-extractor.js +1 -1
  167. package/src/utils/consumerLogger.js +1 -1
  168. package/src/utils/context-builder.js +1 -1
  169. package/src/utils/dashboard-helpers.js +1 -1
  170. package/src/utils/dateHelper.js +1 -1
  171. package/src/utils/datetime-formatter.js +1 -1
  172. package/src/utils/datetime-parser.js +1 -1
  173. package/src/utils/db-bootstrap.js +1 -1
  174. package/src/utils/db-mysql.js +1 -1
  175. package/src/utils/db-oracle.js +1 -1
  176. package/src/utils/db-sqlite.js +1 -1
  177. package/src/utils/db.js +1 -1
  178. package/src/utils/demo-generator.js +1 -1
  179. package/src/utils/excel-generator.js +1 -1
  180. package/src/utils/excel-parser.js +1 -1
  181. package/src/utils/file-watcher.js +1 -1
  182. package/src/utils/id-generator.js +1 -1
  183. package/src/utils/idempotency-manager.js +1 -1
  184. package/src/utils/import-validator.js +1 -1
  185. package/src/utils/license-client.js +1 -1
  186. package/src/utils/lock-manager.js +1 -1
  187. package/src/utils/logger.js +1 -1
  188. package/src/utils/lookup-resolver.js +1 -1
  189. package/src/utils/payload-loader.js +1 -1
  190. package/src/utils/processor-response.js +1 -1
  191. package/src/utils/rabbitmq.js +1 -1
  192. package/src/utils/redis-client.js +1 -1
  193. package/src/utils/redis-helper.js +1 -1
  194. package/src/utils/request-scope.js +1 -1
  195. package/src/utils/security-checks.js +1 -1
  196. package/src/utils/service-resolver.js +1 -1
  197. package/src/utils/shutdown-coordinator.js +1 -1
  198. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  199. package/src/utils/sql-table-extractor.js +1 -1
  200. package/src/utils/trusted-keys.js +1 -1
  201. package/src/utils/upload-handler.js +1 -1
  202. package/src/utils/upsert-builder.js +1 -1
  203. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x1f5958=a0_0x27a9;function a0_0x27a9(_0x4c390d,_0x4556fc){_0x4c390d=_0x4c390d-0x169;const _0x170643=a0_0x1706();let _0x27a918=_0x170643[_0x4c390d];if(a0_0x27a9['nWYGhn']===undefined){var _0x588ecf=function(_0x5d70f8){const _0x404c9b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x57583a='',_0x31817a='';for(let _0x535da4=0x0,_0x20a3e8,_0x1d2c37,_0x23d8dd=0x0;_0x1d2c37=_0x5d70f8['charAt'](_0x23d8dd++);~_0x1d2c37&&(_0x20a3e8=_0x535da4%0x4?_0x20a3e8*0x40+_0x1d2c37:_0x1d2c37,_0x535da4++%0x4)?_0x57583a+=String['fromCharCode'](0xff&_0x20a3e8>>(-0x2*_0x535da4&0x6)):0x0){_0x1d2c37=_0x404c9b['indexOf'](_0x1d2c37);}for(let _0x51b8c2=0x0,_0x1e481a=_0x57583a['length'];_0x51b8c2<_0x1e481a;_0x51b8c2++){_0x31817a+='%'+('00'+_0x57583a['charCodeAt'](_0x51b8c2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x31817a);};a0_0x27a9['qIbATD']=_0x588ecf,a0_0x27a9['jizpzp']={},a0_0x27a9['nWYGhn']=!![];}const _0x37bed4=_0x170643[0x0],_0x37df0c=_0x4c390d+_0x37bed4,_0x55fcd8=a0_0x27a9['jizpzp'][_0x37df0c];return!_0x55fcd8?(_0x27a918=a0_0x27a9['qIbATD'](_0x27a918),a0_0x27a9['jizpzp'][_0x37df0c]=_0x27a918):_0x27a918=_0x55fcd8,_0x27a918;}(function(_0x22fc43,_0xd8a9cc){const _0x336ee3=a0_0x27a9,_0x3c2eab=_0x22fc43();while(!![]){try{const _0x22870b=-parseInt(_0x336ee3(0x17d))/0x1+parseInt(_0x336ee3(0x178))/0x2+parseInt(_0x336ee3(0x192))/0x3+-parseInt(_0x336ee3(0x181))/0x4+-parseInt(_0x336ee3(0x179))/0x5*(-parseInt(_0x336ee3(0x196))/0x6)+parseInt(_0x336ee3(0x184))/0x7*(parseInt(_0x336ee3(0x17a))/0x8)+parseInt(_0x336ee3(0x182))/0x9;if(_0x22870b===_0xd8a9cc)break;else _0x3c2eab['push'](_0x3c2eab['shift']());}catch(_0x124053){_0x3c2eab['push'](_0x3c2eab['shift']());}}}(a0_0x1706,0x429f4));function a0_0x1706(){const _0x3ed2d4=['BM93','mtu2qKXqy2vX','yNvJA2v0','y3DK','DgvTCa','DxbSB2fKx3yYx3rLBxbFzgvSzxrLx3DHCM4','yMfZzw5HBwu','yKzZBeG','ChjVBwLZzxm','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG','x3bHCNnLrMLSzvnPEMu','Cgf0Aa','uwnhuMy','DgvTCerPCG','x3rLBxbeAxi','rMLSzsb0ExbLiciU','mtbnqG','lI4VC3rVCMfNzs9MAwXLlw1LDgfKyxrHlwHLBhbLCG','mtK3oty2tuDbtLLm','mZC3nZvIyxrSBfu','mtC1mdq0ofHSzeX1qW','ywXSB3DLzfr5CgvZ','Dw5SAw5R','mJq4mtKWy1LNsKL2','zxjYB3i','D2fYBG','zxH0BMfTzq','mtCWoduXmLrhD2HJrW','mZu2mdiYmffXu0rcqq','B3jPz2LUywXUyw1L','n09uDwPkBq','Bwf4rMLSzxm','ChvZAa','ChjVy2vZC1vWBg9HzgvKrMLSzxm','BwvZC2fNzq','Bwf0y2G','C2L6zq','Agv4','DxjS','zgvMyxvSDa','BgvUz3rO','BwLTzxr5Cgu','zw5KCg9PBNq','BwTKAxjtEw5J','mte1mJa5rhnRy1bn','x2rLBgv0zvrLBxbgAwXL','y3j5ChrV'];a0_0x1706=function(){return _0x3ed2d4;};return a0_0x1706();}const multer=require('multer'),path=require('path'),crypto=require(a0_0x1f5958(0x194)),fs=require('fs')[a0_0x1f5958(0x16e)],fsSync=require('fs'),{logger}=require('./logger');class UploadHandlerV2{constructor(){const _0x11ad9a=a0_0x1f5958;this[_0x11ad9a(0x174)]=null;}get['tempDir'](){const _0x590c20=a0_0x1f5958;if(!this[_0x590c20(0x174)]){const _0x3181e2=process['env']['RESTFORGE_PROJECT_NAME']||_0x590c20(0x18d);this['_tempDir']=process['env']['UPLOAD_TEMP_DIR']||path['join'](process[_0x590c20(0x169)](),_0x590c20(0x16a),'uploads',_0x3181e2),!fsSync['existsSync'](this[_0x590c20(0x174)])&&fsSync['mkdirSync'](this['_tempDir'],{'recursive':!![]});}return this['_tempDir'];}['createUploadMiddleware'](_0x49c119={}){const _0x34e4ec=a0_0x1f5958,_0x1f71e9={'ftpKr':function(_0x129e95,_0x2fe923,_0x8a2db2){return _0x129e95(_0x2fe923,_0x8a2db2);},'wwwpH':_0x34e4ec(0x176),'bFslH':function(_0x163de1,_0x12ac8d){return _0x163de1(_0x12ac8d);}},_0x432ccf=_0x49c119[_0x34e4ec(0x185)]||0x5,_0x30a374=this[_0x34e4ec(0x170)](_0x49c119['maxFileSize']||_0x1f71e9['wwwpH']),_0x2e93ad=_0x49c119[_0x34e4ec(0x17b)]||[],_0x2ba623=multer['diskStorage']({'destination':(_0x4e39ef,_0x2d6260,_0x412c8a)=>{const _0x1790bf=_0x34e4ec;!fsSync['existsSync'](this[_0x1790bf(0x173)])&&fsSync[_0x1790bf(0x191)](this[_0x1790bf(0x173)],{'recursive':!![]}),_0x412c8a(null,this['tempDir']);},'filename':(_0x84df6f,_0x30f196,_0x32b752)=>{const _0x3d2620=_0x34e4ec,_0x2f40b7=crypto['randomBytes'](0x8)['toString'](_0x3d2620(0x18b)),_0x4926b1=Date[_0x3d2620(0x195)](),_0x28dab1=path['extname'](_0x30f196[_0x3d2620(0x183)]);_0x32b752(null,'upload-'+_0x4926b1+'-'+_0x2f40b7+_0x28dab1);}}),_0x15e178=(_0x5d7aea,_0x2651ca,_0x351361)=>{const _0x46bb6d=_0x34e4ec;if(_0x2e93ad[_0x46bb6d(0x18e)]===0x0)return _0x351361(null,!![]);const _0x26e601=path[_0x46bb6d(0x180)](_0x2651ca['originalname'])['toLowerCase']()['replace']('.','');_0x2e93ad['includes'](_0x26e601)?_0x1f71e9['ftpKr'](_0x351361,null,!![]):_0x351361(new Error(_0x46bb6d(0x175)+_0x26e601+_0x46bb6d(0x16f)+_0x2e93ad['join'](',\x20')));};return _0x1f71e9[_0x34e4ec(0x16d)](multer,{'storage':_0x2ba623,'limits':{'fileSize':_0x30a374,'files':_0x432ccf},'fileFilter':_0x15e178})['array']('files',_0x432ccf);}async[a0_0x1f5958(0x187)](_0x379d60,_0x2db047,_0x452da7={}){const _0x4bad2b=a0_0x1f5958,{createFileMetadata:_0x2b2375}=require(_0x4bad2b(0x177)),_0x5471a9=[];for(const _0x30cf5a of _0x379d60){try{const _0x57ac96=_0x2db047['generateKey'](_0x30cf5a['originalname'],{'prefix':_0x452da7['prefix']||'','project':_0x452da7['project']||'','module':_0x452da7['module']||'','endpoint':_0x452da7[_0x4bad2b(0x190)]||''}),_0x5bcff2=fsSync['createReadStream'](_0x30cf5a[_0x4bad2b(0x171)]),_0x3f6581=await _0x2db047['upload'](_0x5bcff2,_0x57ac96,{'contentType':_0x30cf5a['mimetype'],'fileSize':_0x30cf5a['size']}),_0x1eee2b=_0x2b2375({'key':_0x3f6581['key'],'originalName':_0x30cf5a['originalname'],'fileName':path[_0x4bad2b(0x16c)](_0x57ac96),'contentType':_0x30cf5a[_0x4bad2b(0x18f)],'size':_0x30cf5a[_0x4bad2b(0x18a)],'url':_0x3f6581[_0x4bad2b(0x18c)],'provider':_0x2db047['providerName'],'bucket':_0x2db047[_0x4bad2b(0x197)]||null,'uploadedBy':_0x452da7['uploadedBy']||null});_0x5471a9[_0x4bad2b(0x186)](_0x1eee2b);}catch(_0x2fc56a){logger[_0x4bad2b(0x17e)]({'event':'upload_v2_process_error','file':_0x30cf5a[_0x4bad2b(0x183)],'error':_0x2fc56a['message']},'Failed\x20to\x20process\x20uploaded\x20file:\x20'+_0x30cf5a['originalname']);throw _0x2fc56a;}finally{await this['_deleteTempFile'](_0x30cf5a[_0x4bad2b(0x171)]);}}return _0x5471a9;}async[a0_0x1f5958(0x193)](_0x217f5f){const _0x49f2b8=a0_0x1f5958;try{await fs[_0x49f2b8(0x17c)](_0x217f5f);}catch(_0x203049){logger[_0x49f2b8(0x17f)]({'event':_0x49f2b8(0x16b),'filePath':_0x217f5f,'error':_0x203049[_0x49f2b8(0x188)]},'Failed\x20to\x20delete\x20temp\x20file');}}['_parseFileSize'](_0x4f27bd){const _0x4b8fee=a0_0x1f5958,_0x106a2b={'rLric':function(_0xcf024c,_0x5a31f1){return _0xcf024c===_0x5a31f1;},'QcGRf':'number','ZuUUo':function(_0x716dc1,_0x4b1bf5){return _0x716dc1*_0x4b1bf5;},'ccasj':function(_0x554b7d,_0x581f9c){return _0x554b7d*_0x581f9c;},'YHevN':function(_0x1d7d76,_0x563059){return _0x1d7d76*_0x563059;}};if(_0x106a2b['rLric'](typeof _0x4f27bd,_0x106a2b[_0x4b8fee(0x172)]))return _0x4f27bd;const _0x26b6ab=String(_0x4f27bd)['trim']()[_0x4b8fee(0x189)](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x26b6ab)return _0x106a2b['ZuUUo'](_0x106a2b['ccasj'](0xa,0x400),0x400);const _0x4fb0e0=parseFloat(_0x26b6ab[0x1]),_0x5e9f04=_0x26b6ab[0x2]['toUpperCase'](),_0x4c940c={'B':0x1,'KB':0x400,'MB':0x400*0x400,'GB':_0x106a2b['YHevN'](0x400,0x400)*0x400};return Math['floor'](_0x4fb0e0*(_0x4c940c[_0x5e9f04]||0x1));}}module['exports']=new UploadHandlerV2();
1
+ 'use strict';const a0_0x44f508=a0_0x4e37;function a0_0x3d1e(){const _0x1d51a8=['rwPNrxi','yuH3suS','CMfUzg9TqNL0zxm','ChjLzML4','y3jLyxrLuMvHzfn0CMvHBq','AM9PBG','DgvTCerPCG','mtbbz2DwrLa','DuLOCgK','Bwf4rMLSzvnPEMu','zxH0BMfTzq','mtbnqG','x3bHCNnLrMLSzvnPEMu','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fKzwqGzMLSztOG','y3jLyxrLvxbSB2fKtwLKzgXLD2fYzq','ChjVAMvJDa','sxbrtwi','CMvWBgfJzq','DxjS','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG','nuTps3zoDG','zw5KCg9PBNq','mJi1nZCYDezgvhbO','Bw9KDwXL','DxbSB2fKx3yYx3rLBxbFzgvSzxrLx3DHCM4','yMfZzw5HBwu','nZC0otyXmLzzwMDyBW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ChjVy2vZC1vWBg9HzgvKrMLSzxm','BwLTzxr5Cgu','zw52','Aw5JBhvKzxm','nte2ota0mgPsANj3qq','lI4VC3rVCMfNzs9MAwXLlw1LDgfKyxrHlwHLBhbLCG','B2vssfi','mJe4nZjyA0DUDum','x3rLBxbeAxi','ndm4mdK3Dwzlt3vo','Ce1uz20','BxvSDgvY','zMLSzxm','mZq4u1HeqKnV','odG1uKvqzeHe','rMLSzsb0ExbLiciU','BwvZC2fNzq','A3nms3y','zMXVB3i','z2vUzxjHDgvlzxK','A2v5','y3j5ChrV','mtrOrLDusfu','yxjYyxK','ndK2ntG5nfnUt1HrBG','C2L6zq','mJG1ntmYmMDsCuXszq'];a0_0x3d1e=function(){return _0x1d51a8;};return a0_0x3d1e();}(function(_0x2779b4,_0x484315){const _0x2f5668=a0_0x4e37,_0x2efb4f=_0x2779b4();while(!![]){try{const _0xfb8b2c=parseInt(_0x2f5668(0x1b6))/0x1*(-parseInt(_0x2f5668(0x1b8))/0x2)+-parseInt(_0x2f5668(0x1a0))/0x3+parseInt(_0x2f5668(0x1c5))/0x4*(-parseInt(_0x2f5668(0x1cc))/0x5)+parseInt(_0x2f5668(0x1bc))/0x6+parseInt(_0x2f5668(0x19c))/0x7*(parseInt(_0x2f5668(0x1c2))/0x8)+-parseInt(_0x2f5668(0x19e))/0x9*(parseInt(_0x2f5668(0x1a8))/0xa)+-parseInt(_0x2f5668(0x1c7))/0xb*(-parseInt(_0x2f5668(0x1cb))/0xc);if(_0xfb8b2c===_0x484315)break;else _0x2efb4f['push'](_0x2efb4f['shift']());}catch(_0x3952a3){_0x2efb4f['push'](_0x2efb4f['shift']());}}}(a0_0x3d1e,0xaba3f));function a0_0x4e37(_0xd2410c,_0x5d30b2){_0xd2410c=_0xd2410c-0x195;const _0x3d1e92=a0_0x3d1e();let _0x4e378f=_0x3d1e92[_0xd2410c];if(a0_0x4e37['ZKiPul']===undefined){var _0x479015=function(_0x38a26e){const _0xaa35ad='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3df9c4='',_0xdd4c29='';for(let _0x300279=0x0,_0x27ccff,_0x4abf22,_0x5e196d=0x0;_0x4abf22=_0x38a26e['charAt'](_0x5e196d++);~_0x4abf22&&(_0x27ccff=_0x300279%0x4?_0x27ccff*0x40+_0x4abf22:_0x4abf22,_0x300279++%0x4)?_0x3df9c4+=String['fromCharCode'](0xff&_0x27ccff>>(-0x2*_0x300279&0x6)):0x0){_0x4abf22=_0xaa35ad['indexOf'](_0x4abf22);}for(let _0xc290a=0x0,_0x1bbe09=_0x3df9c4['length'];_0xc290a<_0x1bbe09;_0xc290a++){_0xdd4c29+='%'+('00'+_0x3df9c4['charCodeAt'](_0xc290a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xdd4c29);};a0_0x4e37['SjCouX']=_0x479015,a0_0x4e37['DUNFvT']={},a0_0x4e37['ZKiPul']=!![];}const _0x541bfc=_0x3d1e92[0x0],_0x405952=_0xd2410c+_0x541bfc,_0x3db855=a0_0x4e37['DUNFvT'][_0x405952];return!_0x3db855?(_0x4e378f=a0_0x4e37['SjCouX'](_0x4e378f),a0_0x4e37['DUNFvT'][_0x405952]=_0x4e378f):_0x4e378f=_0x3db855,_0x4e378f;}const multer=require(a0_0x44f508(0x1c9)),path=require('path'),crypto=require(a0_0x44f508(0x19b)),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require('./logger');class UploadHandlerV2{constructor(){const _0x3cd246=a0_0x44f508;this[_0x3cd246(0x1c6)]=null;}get[a0_0x44f508(0x1a7)](){const _0xaff377=a0_0x44f508,_0x27fdf1={'MYngZ':'default'};if(!this['_tempDir']){const _0x395d39=process['env'][_0xaff377(0x1bd)]||_0x27fdf1['MYngZ'];this['_tempDir']=process[_0xaff377(0x1c0)]['UPLOAD_TEMP_DIR']||path[_0xaff377(0x1a6)](process['cwd'](),'temp','uploads',_0x395d39),!fsSync['existsSync'](this[_0xaff377(0x1c6)])&&fsSync['mkdirSync'](this['_tempDir'],{'recursive':!![]});}return this['_tempDir'];}[a0_0x44f508(0x1b0)](_0x1660cb={}){const _0x5b0327=a0_0x44f508,_0x13c320={'ALjeQ':function(_0x17389b,_0x100e3c,_0x2b0f8c){return _0x17389b(_0x100e3c,_0x2b0f8c);},'HcddQ':function(_0x50c296,_0x137871){return _0x50c296===_0x137871;},'oeRHR':_0x5b0327(0x1ac),'XbirB':_0x5b0327(0x1ca)},_0x4fbbac=_0x1660cb['maxFiles']||0x5,_0x531c2d=this['_parseFileSize'](_0x1660cb[_0x5b0327(0x1aa)]||_0x13c320[_0x5b0327(0x1c4)]),_0x317674=_0x1660cb['allowedTypes']||[],_0x45236a=multer['diskStorage']({'destination':(_0x4039a3,_0x1fe0d7,_0xd467e)=>{const _0x5c194b=_0x5b0327;!fsSync['existsSync'](this['tempDir'])&&fsSync['mkdirSync'](this['tempDir'],{'recursive':!![]}),_0xd467e(null,this[_0x5c194b(0x1a7)]);},'filename':(_0x18cc72,_0x2edee7,_0x403293)=>{const _0x32e416=_0x5b0327,_0x37611d=crypto[_0x32e416(0x1a3)](0x8)['toString']('hex'),_0x318bbf=Date['now'](),_0x4fbe1a=path[_0x32e416(0x1ab)](_0x2edee7['originalname']);_0x13c320['ALjeQ'](_0x403293,null,'upload-'+_0x318bbf+'-'+_0x37611d+_0x4fbe1a);}}),_0x5e38f5=(_0x32741c,_0x3aac6b,_0x425db0)=>{const _0x2b816d=_0x5b0327;if(_0x13c320['HcddQ'](_0x317674['length'],0x0))return _0x425db0(null,!![]);const _0x9a0a61=path[_0x2b816d(0x1ab)](_0x3aac6b['originalname'])['toLowerCase']()[_0x2b816d(0x1b3)]('.','');_0x317674[_0x2b816d(0x1c1)](_0x9a0a61)?_0x425db0(null,!![]):_0x425db0(new Error(_0x2b816d(0x195)+_0x9a0a61+_0x2b816d(0x1b5)+_0x317674[_0x2b816d(0x1a6)](',\x20')));};return multer({'storage':_0x45236a,'limits':{'fileSize':_0x531c2d,'files':_0x4fbbac},'fileFilter':_0x5e38f5})[_0x5b0327(0x19d)](_0x13c320['XbirB'],_0x4fbbac);}async[a0_0x44f508(0x1be)](_0x29e661,_0x248778,_0x2f493b={}){const _0x44e110=a0_0x44f508,_0x3e88c0={'pMTgm':function(_0x384845,_0x1d7d3d){return _0x384845(_0x1d7d3d);},'ksLKv':_0x44e110(0x1ae)},{createFileMetadata:_0xb9359d}=_0x3e88c0[_0x44e110(0x1c8)](require,_0x44e110(0x1c3)),_0x103c5c=[];for(const _0x314680 of _0x29e661){try{const _0x5f515c=_0x248778[_0x44e110(0x199)](_0x314680['originalname'],{'prefix':_0x2f493b[_0x44e110(0x1a4)]||'','project':_0x2f493b[_0x44e110(0x1b1)]||'','module':_0x2f493b[_0x44e110(0x1b9)]||'','endpoint':_0x2f493b[_0x44e110(0x1b7)]||''}),_0x285c5a=fsSync[_0x44e110(0x1a5)](_0x314680['path']),_0x3bdbc4=await _0x248778['upload'](_0x285c5a,_0x5f515c,{'contentType':_0x314680[_0x44e110(0x1bf)],'fileSize':_0x314680['size']}),_0x447f9c=_0xb9359d({'key':_0x3bdbc4[_0x44e110(0x19a)],'originalName':_0x314680['originalname'],'fileName':path[_0x44e110(0x1bb)](_0x5f515c),'contentType':_0x314680['mimetype'],'size':_0x314680[_0x44e110(0x19f)],'url':_0x3bdbc4[_0x44e110(0x1b4)],'provider':_0x248778['providerName'],'bucket':_0x248778['bucket']||null,'uploadedBy':_0x2f493b['uploadedBy']||null});_0x103c5c['push'](_0x447f9c);}catch(_0x24e849){logger['error']({'event':_0x3e88c0[_0x44e110(0x197)],'file':_0x314680['originalname'],'error':_0x24e849[_0x44e110(0x196)]},_0x44e110(0x1af)+_0x314680['originalname']);throw _0x24e849;}finally{await this['_deleteTempFile'](_0x314680['path']);}}return _0x103c5c;}async['_deleteTempFile'](_0x46763c){const _0x5326f3=a0_0x44f508,_0x16cbaf={'uIhpi':'Failed\x20to\x20delete\x20temp\x20file'};try{await fs['unlink'](_0x46763c);}catch(_0x5c0f1c){logger['warn']({'event':_0x5326f3(0x1ba),'filePath':_0x46763c,'error':_0x5c0f1c['message']},_0x16cbaf[_0x5326f3(0x1a9)]);}}[a0_0x44f508(0x1ad)](_0x26323f){const _0x37eeec=a0_0x44f508,_0x2fd4ad={'aHwIK':'number','IpQMb':function(_0x208513,_0x2ba686){return _0x208513*_0x2ba686;},'FqkPg':function(_0x2f9e71,_0x1c852e){return _0x2f9e71*_0x1c852e;},'sgTEt':function(_0x20b308,_0x2519b8){return _0x20b308*_0x2519b8;},'EjgEr':function(_0x555c56,_0x30e299){return _0x555c56*_0x30e299;}};if(typeof _0x26323f===_0x2fd4ad[_0x37eeec(0x1a2)])return _0x26323f;const _0x17f7af=String(_0x26323f)['trim']()['match'](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x17f7af)return _0x2fd4ad[_0x37eeec(0x1b2)](0xa*0x400,0x400);const _0x3dd416=parseFloat(_0x17f7af[0x1]),_0x2ebf24=_0x17f7af[0x2]['toUpperCase'](),_0x4ffa08={'B':0x1,'KB':0x400,'MB':_0x2fd4ad['FqkPg'](0x400,0x400),'GB':_0x2fd4ad['sgTEt'](_0x2fd4ad[_0x37eeec(0x1a1)](0x400,0x400),0x400)};return Math[_0x37eeec(0x198)](_0x3dd416*(_0x4ffa08[_0x2ebf24]||0x1));}}module['exports']=new UploadHandlerV2();
@@ -1 +1 @@
1
- const a0_0x4313a6=a0_0x210b;(function(_0x450ce6,_0x293354){const _0x599b24=a0_0x210b,_0x535770=_0x450ce6();while(!![]){try{const _0x44cdd0=parseInt(_0x599b24(0xcf))/0x1+-parseInt(_0x599b24(0xad))/0x2*(-parseInt(_0x599b24(0xc7))/0x3)+-parseInt(_0x599b24(0xb9))/0x4*(parseInt(_0x599b24(0xc4))/0x5)+parseInt(_0x599b24(0xa7))/0x6*(-parseInt(_0x599b24(0xc1))/0x7)+parseInt(_0x599b24(0xcb))/0x8*(-parseInt(_0x599b24(0xd2))/0x9)+parseInt(_0x599b24(0xd1))/0xa+parseInt(_0x599b24(0xb4))/0xb;if(_0x44cdd0===_0x293354)break;else _0x535770['push'](_0x535770['shift']());}catch(_0x2d872a){_0x535770['push'](_0x535770['shift']());}}}(a0_0x2daf,0xe235f));const multer=require(a0_0x4313a6(0xc0)),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x4313a6(0xca));class UploadHandler{constructor(){const _0x483ec9=a0_0x4313a6,_0x2ba272={'YjDxF':function(_0x5db5bf,_0x3180e6){return _0x5db5bf*_0x3180e6;}};this[_0x483ec9(0xa5)]=null,this['maxFileSize']=_0x2ba272['YjDxF'](0xa,0x400)*0x400;}get[a0_0x4313a6(0xc9)](){const _0x5ea7a2=a0_0x4313a6,_0x5aebc7={'SZjil':'default','mfyEP':_0x5ea7a2(0xba),'UHfcg':'Failed\x20to\x20initialize\x20upload\x20handler'};if(!this[_0x5ea7a2(0xa5)]){const _0x4da756=process['env'][_0x5ea7a2(0xc8)]||_0x5aebc7[_0x5ea7a2(0xc5)];this[_0x5ea7a2(0xa5)]=process[_0x5ea7a2(0xb5)]['UPLOAD_DIR']||path[_0x5ea7a2(0xac)](__dirname,'../../temp/uploads/'+_0x4da756);try{!fsSync[_0x5ea7a2(0xb6)](this[_0x5ea7a2(0xa5)])&&fsSync[_0x5ea7a2(0xcc)](this[_0x5ea7a2(0xa5)],{'recursive':!![]}),logger[_0x5ea7a2(0xd5)]({'event':_0x5ea7a2(0xd0),'dir':this[_0x5ea7a2(0xa5)]},_0x5aebc7['mfyEP']);}catch(_0x27809d){logger['error']({'event':_0x5ea7a2(0xbc),'error':_0x27809d['message']},_0x5aebc7[_0x5ea7a2(0xbe)]);}}return this[_0x5ea7a2(0xa5)];}[a0_0x4313a6(0xb3)](){const _0x13436a=a0_0x4313a6;return multer[_0x13436a(0xd4)]({'destination':(_0x33e947,_0x5077c4,_0x11cc28)=>{const _0x5832d7=_0x13436a;!fsSync['existsSync'](this[_0x5832d7(0xc9)])&&fsSync[_0x5832d7(0xcc)](this[_0x5832d7(0xc9)],{'recursive':!![]}),_0x11cc28(null,this[_0x5832d7(0xc9)]);},'filename':(_0x541f9,_0x236686,_0x56ea2a)=>{const _0x5d57c2=_0x13436a,_0x2f3f55=crypto[_0x5d57c2(0xd3)](0x8)['toString']('hex'),_0xe45081=Date['now'](),_0x503074=path[_0x5d57c2(0xa8)](_0x236686['originalname']);_0x56ea2a(null,_0x5d57c2(0xae)+_0xe45081+'-'+_0x2f3f55+_0x503074);}});}['getUploadMiddleware'](){const _0xb5b9c2=a0_0x4313a6,_0x37dd11={'cNlTb':_0xb5b9c2(0xce),'bxHQY':function(_0x45fb5d,_0x144ed9){return _0x45fb5d(_0x144ed9);}};return _0x37dd11['bxHQY'](multer,{'storage':this[_0xb5b9c2(0xb3)](),'limits':{'fileSize':this[_0xb5b9c2(0xc3)],'files':0x1},'fileFilter':(_0x3ab50b,_0x5eef4e,_0x4d006e)=>{const _0x1deacb=_0xb5b9c2,_0x510f0f=[_0x1deacb(0xab),_0x1deacb(0xb8)],_0x8ce8ab=[_0x37dd11[_0x1deacb(0xa6)],_0x1deacb(0xc2)],_0x3c214f=path[_0x1deacb(0xa8)](_0x5eef4e['originalname'])[_0x1deacb(0xaf)]();_0x510f0f[_0x1deacb(0xbf)](_0x5eef4e[_0x1deacb(0xbd)])&&_0x8ce8ab['includes'](_0x3c214f)?_0x4d006e(null,!![]):_0x37dd11[_0x1deacb(0xcd)](_0x4d006e,new Error('Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed'));}})['single'](_0xb5b9c2(0xbb));}async[a0_0x4313a6(0xb2)](_0x3a01e9){const _0x2cfb05=a0_0x4313a6,_0x592278={'maxcb':'Uploaded\x20file\x20deleted','Gpzhv':'upload_file_delete_error'};try{await fs[_0x2cfb05(0xc6)](_0x3a01e9),logger[_0x2cfb05(0xd5)]({'event':_0x2cfb05(0xa9),'filePath':_0x3a01e9},_0x592278['maxcb']);}catch(_0x2ebfdc){logger['error']({'event':_0x592278[_0x2cfb05(0xb0)],'filePath':_0x3a01e9,'error':_0x2ebfdc[_0x2cfb05(0xaa)]},_0x2cfb05(0xb1));}}}function a0_0x2daf(){const _0x449c2a=['oefNwvnltq','BwTKAxjtEw5J','yNHiuvK','lNHSC3G','mtqYmJGWnMvAt2vnsW','DxbSB2fKx2HHBMrSzxjFAw5PDa','mta2nJmZmZbTEKPdC2C','mti3mZyYodD1vMTpvw0','CMfUzg9TqNL0zxm','zgLZA1n0B3jHz2u','Aw5MBW','x3vWBg9HzerPCG','y05Svgi','nZu4mJiWCu9jqxPi','zxH0BMfTzq','DxbSB2fKx2zPBgvFzgvSzxrLza','BwvZC2fNzq','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','AM9PBG','mJCYmKf4uMfIqq','DxbSB2fKlq','Dg9mB3DLCKnHC2u','r3b6Ahy','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','zgvSzxrLrMLSzq','z2v0u3rVCMfNzq','mJm5nduXm1LYEKXREG','zw52','zxHPC3rZu3LUyW','zxHWB3j0CW','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','mtyWnenTsMDvra','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','zMLSzq','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','BwLTzxr5Cgu','vuHMy2C','Aw5JBhvKzxm','BxvSDgvY','otHnBK5Nrgu','lNHSCW','Bwf4rMLSzvnPEMu','mZq4nuLNt1jmtG','u1PQAwW','Dw5SAw5R','mZCXmw95BMzZtW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','DxbSB2fKrgLY','lI9SB2DNzxi'];a0_0x2daf=function(){return _0x449c2a;};return a0_0x2daf();}function a0_0x210b(_0x1a7891,_0x369424){_0x1a7891=_0x1a7891-0xa5;const _0x2daf3d=a0_0x2daf();let _0x210b2e=_0x2daf3d[_0x1a7891];if(a0_0x210b['dExBZN']===undefined){var _0x26d0e0=function(_0x200ecf){const _0x23ba99='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x17b726='',_0x1f2d1d='';for(let _0x4bd042=0x0,_0x5a231f,_0x242f51,_0x5d2e30=0x0;_0x242f51=_0x200ecf['charAt'](_0x5d2e30++);~_0x242f51&&(_0x5a231f=_0x4bd042%0x4?_0x5a231f*0x40+_0x242f51:_0x242f51,_0x4bd042++%0x4)?_0x17b726+=String['fromCharCode'](0xff&_0x5a231f>>(-0x2*_0x4bd042&0x6)):0x0){_0x242f51=_0x23ba99['indexOf'](_0x242f51);}for(let _0x405bcb=0x0,_0x45499a=_0x17b726['length'];_0x405bcb<_0x45499a;_0x405bcb++){_0x1f2d1d+='%'+('00'+_0x17b726['charCodeAt'](_0x405bcb)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f2d1d);};a0_0x210b['WFeUmR']=_0x26d0e0,a0_0x210b['RXFmCq']={},a0_0x210b['dExBZN']=!![];}const _0x4c2dbf=_0x2daf3d[0x0],_0x30b665=_0x1a7891+_0x4c2dbf,_0x14ea3d=a0_0x210b['RXFmCq'][_0x30b665];return!_0x14ea3d?(_0x210b2e=a0_0x210b['WFeUmR'](_0x210b2e),a0_0x210b['RXFmCq'][_0x30b665]=_0x210b2e):_0x210b2e=_0x14ea3d,_0x210b2e;}module[a0_0x4313a6(0xb7)]=new UploadHandler();
1
+ const a0_0x16a878=a0_0x49b6;function a0_0x49b6(_0x51d198,_0x4f2188){_0x51d198=_0x51d198-0x127;const _0x35e300=a0_0x35e3();let _0x49b68b=_0x35e300[_0x51d198];if(a0_0x49b6['LNTZBg']===undefined){var _0x4bfff4=function(_0x5434e7){const _0xca515b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x404e25='',_0x305f76='';for(let _0x197c3f=0x0,_0x2b6e0d,_0x56a565,_0xee8130=0x0;_0x56a565=_0x5434e7['charAt'](_0xee8130++);~_0x56a565&&(_0x2b6e0d=_0x197c3f%0x4?_0x2b6e0d*0x40+_0x56a565:_0x56a565,_0x197c3f++%0x4)?_0x404e25+=String['fromCharCode'](0xff&_0x2b6e0d>>(-0x2*_0x197c3f&0x6)):0x0){_0x56a565=_0xca515b['indexOf'](_0x56a565);}for(let _0x13660d=0x0,_0x1d68f5=_0x404e25['length'];_0x13660d<_0x1d68f5;_0x13660d++){_0x305f76+='%'+('00'+_0x404e25['charCodeAt'](_0x13660d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x305f76);};a0_0x49b6['SYvooa']=_0x4bfff4,a0_0x49b6['CGDScL']={},a0_0x49b6['LNTZBg']=!![];}const _0x5e35b7=_0x35e300[0x0],_0x45657c=_0x51d198+_0x5e35b7,_0x5eff1e=a0_0x49b6['CGDScL'][_0x45657c];return!_0x5eff1e?(_0x49b68b=a0_0x49b6['SYvooa'](_0x49b68b),a0_0x49b6['CGDScL'][_0x45657c]=_0x49b68b):_0x49b68b=_0x5eff1e,_0x49b68b;}(function(_0x14a5d2,_0x2c48e4){const _0x13ce3e=a0_0x49b6,_0x27d7fa=_0x14a5d2();while(!![]){try{const _0x516464=-parseInt(_0x13ce3e(0x128))/0x1+parseInt(_0x13ce3e(0x141))/0x2+parseInt(_0x13ce3e(0x136))/0x3*(-parseInt(_0x13ce3e(0x14e))/0x4)+-parseInt(_0x13ce3e(0x127))/0x5*(parseInt(_0x13ce3e(0x13f))/0x6)+parseInt(_0x13ce3e(0x14a))/0x7*(parseInt(_0x13ce3e(0x138))/0x8)+parseInt(_0x13ce3e(0x151))/0x9+parseInt(_0x13ce3e(0x12c))/0xa;if(_0x516464===_0x2c48e4)break;else _0x27d7fa['push'](_0x27d7fa['shift']());}catch(_0x25dc3b){_0x27d7fa['push'](_0x27d7fa['shift']());}}}(a0_0x35e3,0x437a0));function a0_0x35e3(){const _0x374c0e=['mZyZmJCWzffhC0jh','mJu2nta4uxjgtvzp','BwLTzxr5Cgu','tvnHqwG','Ehrxzu0','nZaYodG5meHRt094Ca','tK5qvfq','z2v0u3rVCMfNzq','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','zgvSzxrLrMLSzq','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','zxjYB3i','Agv4','DxbSB2fKx2HHBMrSzxjFAw5PDa','Dg9tDhjPBMC','mtuXohHgt01KDq','zxH0BMfTzq','mZu4otm2EejMAxDO','BwTKAxjtEw5J','zxHWB3j0CW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ChjVBwLZzxm','vvbmt0fex0rjuG','BwvZC2fNzq','mtHVuMzkCK0','z2v0vxbSB2fKtwLKzgXLD2fYzq','ote2mZHgzvDOu3i','CMfUzg9TqNL0zxm','zxvACe0','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','y3j5ChrV','zw52','AwTurgy','wLzorei','x3vWBg9HzerPCG','ndL4ywDPtfi','zgvMyxvSDa','Aw5JBhvKzxm','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','mJCWmezPCfvuuW','C2LUz2XL','DxbSB2fKrgLY','mJy2nJqZrwLtyLLK','zKHxDKG','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','zxHPC3rZu3LUyW','z3Hruva','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG'];a0_0x35e3=function(){return _0x374c0e;};return a0_0x35e3();}const multer=require('multer'),path=require('path'),crypto=require(a0_0x16a878(0x145)),fs=require('fs')[a0_0x16a878(0x13c)],fsSync=require('fs'),{logger}=require('./logger');class UploadHandler{constructor(){const _0x4669b8=a0_0x16a878,_0x335e5b={'ikTDf':function(_0x3d232a,_0x39d0f7){return _0x3d232a*_0x39d0f7;},'NNPTT':function(_0x59b7ec,_0xad329e){return _0x59b7ec*_0xad329e;}};this[_0x4669b8(0x149)]=null,this['maxFileSize']=_0x335e5b[_0x4669b8(0x147)](_0x335e5b[_0x4669b8(0x12d)](0xa,0x400),0x400);}get[a0_0x16a878(0x150)](){const _0xe61182=a0_0x16a878,_0x50a816={'kBMfP':_0xe61182(0x14b),'ZVNDB':'Upload\x20handler\x20initialized'};if(!this['_uploadDir']){const _0x17bda=process['env'][_0xe61182(0x13b)]||_0x50a816['kBMfP'];this['_uploadDir']=process[_0xe61182(0x146)][_0xe61182(0x13d)]||path['join'](__dirname,'../../temp/uploads/'+_0x17bda);try{!fsSync[_0xe61182(0x154)](this['_uploadDir'])&&fsSync[_0xe61182(0x139)](this[_0xe61182(0x149)],{'recursive':!![]}),logger['info']({'event':_0xe61182(0x134),'dir':this[_0xe61182(0x149)]},_0x50a816[_0xe61182(0x148)]);}catch(_0x5eda27){logger[_0xe61182(0x132)]({'event':_0xe61182(0x156),'error':_0x5eda27['message']},_0xe61182(0x153));}}return this[_0xe61182(0x149)];}[a0_0x16a878(0x12e)](){const _0x53e2fd=a0_0x16a878,_0x28031f={'xtWeM':function(_0x384204,_0x2169b8,_0x4da323){return _0x384204(_0x2169b8,_0x4da323);},'OLScW':_0x53e2fd(0x133)};return multer['diskStorage']({'destination':(_0x4dbba5,_0x1e8b06,_0x19f139)=>{const _0x90ca9a=_0x53e2fd;!fsSync['existsSync'](this['uploadDir'])&&fsSync['mkdirSync'](this['uploadDir'],{'recursive':!![]}),_0x28031f[_0x90ca9a(0x12b)](_0x19f139,null,this[_0x90ca9a(0x150)]);},'filename':(_0x595ab2,_0x35c3b1,_0x115206)=>{const _0xeb0136=_0x53e2fd,_0x256b44=crypto[_0xeb0136(0x142)](0x8)[_0xeb0136(0x135)](_0x28031f['OLScW']),_0x56d978=Date['now'](),_0x24fea8=path[_0xeb0136(0x137)](_0x35c3b1['originalname']);_0x28031f['xtWeM'](_0x115206,null,'upload-'+_0x56d978+'-'+_0x256b44+_0x24fea8);}});}[a0_0x16a878(0x140)](){const _0x4ea784=a0_0x16a878,_0x4b82cc={'wbUfm':'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet','gxQQP':'.xls','euZpM':function(_0x22f959,_0x43baf1,_0xa38f62){return _0x22f959(_0x43baf1,_0xa38f62);},'MSaAh':'file'};return multer({'storage':this[_0x4ea784(0x12e)](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x2dcf35,_0xdb29,_0x449bec)=>{const _0x1e4151=_0x4ea784,_0x44d203=[_0x4b82cc['wbUfm'],'application/vnd.ms-excel'],_0x56916c=['.xlsx',_0x4b82cc[_0x1e4151(0x155)]],_0x9d7bd8=path['extname'](_0xdb29['originalname'])['toLowerCase']();_0x44d203[_0x1e4151(0x14c)](_0xdb29[_0x1e4151(0x129)])&&_0x56916c[_0x1e4151(0x14c)](_0x9d7bd8)?_0x4b82cc[_0x1e4151(0x143)](_0x449bec,null,!![]):_0x449bec(new Error(_0x1e4151(0x12f)));}})[_0x4ea784(0x14f)](_0x4b82cc[_0x4ea784(0x12a)]);}async[a0_0x16a878(0x130)](_0x37a253){const _0xb53073=a0_0x16a878,_0x229513={'fHWvH':'upload_file_deleted','Wmgrx':_0xb53073(0x14d)};try{await fs['unlink'](_0x37a253),logger['info']({'event':_0x229513[_0xb53073(0x152)],'filePath':_0x37a253},_0x229513['Wmgrx']);}catch(_0x3c590d){logger['error']({'event':_0xb53073(0x131),'filePath':_0x37a253,'error':_0x3c590d[_0xb53073(0x13e)]},_0xb53073(0x144));}}}module[a0_0x16a878(0x13a)]=new UploadHandler();
@@ -1 +1 @@
1
- function a0_0x590e(_0x8ead5d,_0x20c322){_0x8ead5d=_0x8ead5d-0x137;const _0x510620=a0_0x5106();let _0x590e06=_0x510620[_0x8ead5d];if(a0_0x590e['HlZxSQ']===undefined){var _0x74bfd5=function(_0x1bd44b){const _0x56cccc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x32ee9e='',_0x188f7c='';for(let _0x4886d1=0x0,_0x4f9ef3,_0x14cfb6,_0x2c9c75=0x0;_0x14cfb6=_0x1bd44b['charAt'](_0x2c9c75++);~_0x14cfb6&&(_0x4f9ef3=_0x4886d1%0x4?_0x4f9ef3*0x40+_0x14cfb6:_0x14cfb6,_0x4886d1++%0x4)?_0x32ee9e+=String['fromCharCode'](0xff&_0x4f9ef3>>(-0x2*_0x4886d1&0x6)):0x0){_0x14cfb6=_0x56cccc['indexOf'](_0x14cfb6);}for(let _0x45f467=0x0,_0x2d8af4=_0x32ee9e['length'];_0x45f467<_0x2d8af4;_0x45f467++){_0x188f7c+='%'+('00'+_0x32ee9e['charCodeAt'](_0x45f467)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x188f7c);};a0_0x590e['WDErTH']=_0x74bfd5,a0_0x590e['AEwRAu']={},a0_0x590e['HlZxSQ']=!![];}const _0x4f80fe=_0x510620[0x0],_0x3fb467=_0x8ead5d+_0x4f80fe,_0x2279cd=a0_0x590e['AEwRAu'][_0x3fb467];return!_0x2279cd?(_0x590e06=a0_0x590e['WDErTH'](_0x590e06),a0_0x590e['AEwRAu'][_0x3fb467]=_0x590e06):_0x590e06=_0x2279cd,_0x590e06;}(function(_0x2f12c1,_0x3967ca){const _0x5b29f8=a0_0x590e,_0x1ea059=_0x2f12c1();while(!![]){try{const _0x96544e=-parseInt(_0x5b29f8(0x13e))/0x1+-parseInt(_0x5b29f8(0x13f))/0x2*(parseInt(_0x5b29f8(0x139))/0x3)+-parseInt(_0x5b29f8(0x144))/0x4+-parseInt(_0x5b29f8(0x140))/0x5*(parseInt(_0x5b29f8(0x14b))/0x6)+parseInt(_0x5b29f8(0x13a))/0x7+parseInt(_0x5b29f8(0x138))/0x8+parseInt(_0x5b29f8(0x148))/0x9*(parseInt(_0x5b29f8(0x141))/0xa);if(_0x96544e===_0x3967ca)break;else _0x1ea059['push'](_0x1ea059['shift']());}catch(_0x345cf8){_0x1ea059['push'](_0x1ea059['shift']());}}}(a0_0x5106,0x35079));const axios=require('axios');async function sendInsertWebhook(_0x2b9926,_0x31ae25,_0x161061={}){const _0x3dfa9f=a0_0x590e,_0x3631a4={'UpJOi':'RestForge-Webhook/1.0','tEnhG':'Insert\x20webhook\x20sent\x20successfully'};try{const _0x57f098={'event':'insert','timestamp':new Date()['toISOString'](),'data':_0x31ae25},_0x4dd6a3=await axios['post'](_0x2b9926,_0x57f098,{'headers':{'Content-Type':_0x3dfa9f(0x143),'User-Agent':_0x3631a4['UpJOi'],..._0x161061},'timeout':0x2710});return console['log']('Insert\x20webhook\x20sent\x20to\x20'+_0x2b9926+_0x3dfa9f(0x146)+_0x4dd6a3[_0x3dfa9f(0x137)]),{'success':!![],'message':_0x3631a4['tEnhG'],'status':_0x4dd6a3[_0x3dfa9f(0x137)],'url':_0x2b9926};}catch(_0x407405){return console['error']('Error\x20sending\x20insert\x20webhook:',_0x407405['message']),{'success':![],'message':_0x3dfa9f(0x13d),'error':_0x407405[_0x3dfa9f(0x149)],'url':_0x2b9926};}}async function sendDeleteWebhook(_0x534ee4,_0x46ac05,_0x4b22f5={}){const _0x36cf6b=a0_0x590e,_0x58ce0a={'YOzMG':_0x36cf6b(0x13c),'cbrnS':'Failed\x20to\x20send\x20delete\x20webhook'};try{const _0x5b7d53={'event':_0x36cf6b(0x142),'timestamp':new Date()['toISOString'](),'deleted_data':_0x46ac05},_0x315e65=await axios[_0x36cf6b(0x145)](_0x534ee4,_0x5b7d53,{'headers':{'Content-Type':_0x36cf6b(0x143),'User-Agent':'RestForge-Webhook/1.0',..._0x4b22f5},'timeout':0x2710});return console['log'](_0x36cf6b(0x14a)+_0x534ee4+',\x20Status:\x20'+_0x315e65[_0x36cf6b(0x137)]),{'success':!![],'message':'Delete\x20webhook\x20sent\x20successfully','status':_0x315e65['status'],'url':_0x534ee4};}catch(_0xe2c8d2){return console['error'](_0x58ce0a[_0x36cf6b(0x13b)],_0xe2c8d2[_0x36cf6b(0x149)]),{'success':![],'message':_0x58ce0a[_0x36cf6b(0x147)],'error':_0xe2c8d2['message'],'url':_0x534ee4};}}function a0_0x5106(){const _0x2256c5=['mtvivwvQsMO','mJiWuMDusg9j','zgvSzxrL','yxbWBgLJyxrPB24VANnVBG','nJG4mtaWrxLHsu9o','Cg9ZDa','lcbtDgf0Dxm6ia','y2jYBLm','mtK4ntG1DeH4qLHq','BwvZC2fNzq','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','ndGYmdK0t3b0A1bm','C3rHDhvZ','mtyZndu0neLmEfHzrq','mZn0z2nSuNi','mJC5mda4mxHfDgjWDq','wu96tuC','rxjYB3iGC2vUzgLUzYbKzwXLDguGD2vIAg9VAZO','rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','mJiWntq5t3PitLvk','ndmXodj1q1reDxu'];a0_0x5106=function(){return _0x2256c5;};return a0_0x5106();}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
1
+ (function(_0x3ec016,_0x580683){const _0x53a7e0=a0_0x5edb,_0x1c7169=_0x3ec016();while(!![]){try{const _0x1bb37e=-parseInt(_0x53a7e0(0xde))/0x1+-parseInt(_0x53a7e0(0xd9))/0x2*(-parseInt(_0x53a7e0(0xe1))/0x3)+-parseInt(_0x53a7e0(0xd4))/0x4+parseInt(_0x53a7e0(0xe0))/0x5*(-parseInt(_0x53a7e0(0xd0))/0x6)+parseInt(_0x53a7e0(0xd6))/0x7+-parseInt(_0x53a7e0(0xe3))/0x8*(-parseInt(_0x53a7e0(0xdc))/0x9)+parseInt(_0x53a7e0(0xcf))/0xa;if(_0x1bb37e===_0x580683)break;else _0x1c7169['push'](_0x1c7169['shift']());}catch(_0x20f8c1){_0x1c7169['push'](_0x1c7169['shift']());}}}(a0_0x1124,0x67fcf));function a0_0x5edb(_0x4a0a6f,_0x4a3cee){_0x4a0a6f=_0x4a0a6f-0xca;const _0x11244a=a0_0x1124();let _0x5edb8c=_0x11244a[_0x4a0a6f];if(a0_0x5edb['PQkZGq']===undefined){var _0xe8af47=function(_0x49d785){const _0x55531e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5835e1='',_0x204f06='';for(let _0x13c50f=0x0,_0xff8795,_0x499504,_0x1066e7=0x0;_0x499504=_0x49d785['charAt'](_0x1066e7++);~_0x499504&&(_0xff8795=_0x13c50f%0x4?_0xff8795*0x40+_0x499504:_0x499504,_0x13c50f++%0x4)?_0x5835e1+=String['fromCharCode'](0xff&_0xff8795>>(-0x2*_0x13c50f&0x6)):0x0){_0x499504=_0x55531e['indexOf'](_0x499504);}for(let _0x2463a8=0x0,_0x3f9966=_0x5835e1['length'];_0x2463a8<_0x3f9966;_0x2463a8++){_0x204f06+='%'+('00'+_0x5835e1['charCodeAt'](_0x2463a8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x204f06);};a0_0x5edb['GLXjfh']=_0xe8af47,a0_0x5edb['jHNXxj']={},a0_0x5edb['PQkZGq']=!![];}const _0x32870e=_0x11244a[0x0],_0x1eab59=_0x4a0a6f+_0x32870e,_0x558ac=a0_0x5edb['jHNXxj'][_0x1eab59];return!_0x558ac?(_0x5edb8c=a0_0x5edb['GLXjfh'](_0x5edb8c),a0_0x5edb['jHNXxj'][_0x1eab59]=_0x5edb8c):_0x5edb8c=_0x558ac,_0x5edb8c;}const axios=require('axios');function a0_0x1124(){const _0x1a1624=['rxjYB3iGC2vUzgLUzYbPBNnLCNqGD2vIAg9VAZO','Cg9ZDa','sw5Zzxj0ihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','nZe0mteYs2Hct2vt','EMXNAgS','mJiYnte0nM1oA2XYyG','rMfPBgvKihrVihnLBMqGzgvSzxrLihDLyMHVB2S','C3rHDhvZ','otGWvM1Yuhbn','sw5Zzxj0ihDLyMHVB2SGC2vUDcb0BYa','rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','mti2uevvtxHk','z3Pxsfm','mZGXody2qM52s0T5','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','ntvdwwnVvuq','mZy4nhjuEMzuBa','uMvZDezVCMDLlvDLyMHVB2SVms4W','nda5ntKYBLbItxHd','lcbtDgf0Dxm6ia','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','zxjYB3i','BwvZC2fNzq','uhvltvq','BhHkvgK','mJG1ndyWBuTwzwPv','mZCWmtq2AKncBw9r'];a0_0x1124=function(){return _0x1a1624;};return a0_0x1124();}async function sendInsertWebhook(_0xfb6975,_0x4d6619,_0x355cd8={}){const _0x1bde9d=a0_0x5edb,_0x23dc8d={'kCKIX':'application/json','eBrYh':'RestForge-Webhook/1.0','lxJTi':_0x1bde9d(0xd3)};try{const _0x104127={'event':'insert','timestamp':new Date()['toISOString'](),'data':_0x4d6619},_0x94e090=await axios['post'](_0xfb6975,_0x104127,{'headers':{'Content-Type':_0x23dc8d['kCKIX'],'User-Agent':_0x23dc8d['eBrYh'],..._0x355cd8},'timeout':0x2710});return console['log'](_0x1bde9d(0xda)+_0xfb6975+',\x20Status:\x20'+_0x94e090['status']),{'success':!![],'message':_0x23dc8d[_0x1bde9d(0xce)],'status':_0x94e090['status'],'url':_0xfb6975};}catch(_0x33313b){return console[_0x1bde9d(0xcb)](_0x1bde9d(0xd1),_0x33313b['message']),{'success':![],'message':_0x1bde9d(0xdb),'error':_0x33313b[_0x1bde9d(0xcc)],'url':_0xfb6975};}}async function sendDeleteWebhook(_0x1339bb,_0x1450d7,_0x1264af={}){const _0x49d1b4=a0_0x5edb,_0x530190={'zlghk':'delete','PuKMT':'Error\x20sending\x20delete\x20webhook:','gzWHS':_0x49d1b4(0xd7)};try{const _0x2a0a32={'event':_0x530190[_0x49d1b4(0xd5)],'timestamp':new Date()['toISOString'](),'deleted_data':_0x1450d7},_0x58eebd=await axios[_0x49d1b4(0xd2)](_0x1339bb,_0x2a0a32,{'headers':{'Content-Type':'application/json','User-Agent':_0x49d1b4(0xe2),..._0x1264af},'timeout':0x2710});return console['log'](_0x49d1b4(0xca)+_0x1339bb+_0x49d1b4(0xe4)+_0x58eebd[_0x49d1b4(0xd8)]),{'success':!![],'message':_0x49d1b4(0xdf),'status':_0x58eebd['status'],'url':_0x1339bb};}catch(_0x519a17){return console[_0x49d1b4(0xcb)](_0x530190[_0x49d1b4(0xcd)],_0x519a17[_0x49d1b4(0xcc)]),{'success':![],'message':_0x530190[_0x49d1b4(0xdd)],'error':_0x519a17['message'],'url':_0x1339bb};}}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
@@ -1 +1 @@
1
- const a0_0x3d0aac=a0_0x5979;function a0_0x4cde(){const _0x1b79d6=['sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRigfJCxvPC2L0Aw9U','BwvZC2fNzq','otG0D0vKruf3','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihn0yxr1CYbJAgvJAW','Bg9JA19YzwXLyxnLx3jVDxrLx2vYCM9Y','mtyWndyXmfjMuNHdqG','u2roA08','Bg9JA19Hy3f1AxjLx3jVDxrLx2vYCM9Y','mZCZmtaWB0v1zKrZ','uenktgW','mtu4nty1ugT0s0jU','tK1AEwu','tg9JAYbZDgf0DxmGCM91DguGzxjYB3i6ia','C3rHDhvZ','C3vJy2vZCW','nKzpyKDjAq','otHlq1vWq2y','nta0n0jkzLvOzG','yM9KEq','vM5pufy','zxHWB3j0CW','ANnVBG','l3n0yxr1CW','BeTUrMm','mJy5ntvttvPvDK8','mZGYntCWEKDTr0Dw','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','ndaYnZCZmgLTEwvKyq','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','zxjYB3i','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSihr0BcWGB3DUzxi','l2fJCxvPCMu'];a0_0x4cde=function(){return _0x1b79d6;};return a0_0x4cde();}(function(_0x42376d,_0x224aed){const _0x2bf747=a0_0x5979,_0x3da583=_0x42376d();while(!![]){try{const _0x28f3bf=parseInt(_0x2bf747(0xd1))/0x1+parseInt(_0x2bf747(0xb7))/0x2*(-parseInt(_0x2bf747(0xbf))/0x3)+parseInt(_0x2bf747(0xcf))/0x4+-parseInt(_0x2bf747(0xc0))/0x5*(parseInt(_0x2bf747(0xb6))/0x6)+-parseInt(_0x2bf747(0xb8))/0x7*(parseInt(_0x2bf747(0xc9))/0x8)+parseInt(_0x2bf747(0xcc))/0x9+parseInt(_0x2bf747(0xc2))/0xa;if(_0x28f3bf===_0x224aed)break;else _0x3da583['push'](_0x3da583['shift']());}catch(_0x47bfe9){_0x3da583['push'](_0x3da583['shift']());}}}(a0_0x4cde,0x37871));function a0_0x5979(_0x2350aa,_0x22f919){_0x2350aa=_0x2350aa-0xb2;const _0x4cdefe=a0_0x4cde();let _0x5979a4=_0x4cdefe[_0x2350aa];if(a0_0x5979['BxQKhe']===undefined){var _0x36eda4=function(_0x38506b){const _0x4c3126='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2fd23d='',_0x4e7422='';for(let _0x12acd0=0x0,_0x1d1800,_0x261993,_0x2d1b44=0x0;_0x261993=_0x38506b['charAt'](_0x2d1b44++);~_0x261993&&(_0x1d1800=_0x12acd0%0x4?_0x1d1800*0x40+_0x261993:_0x261993,_0x12acd0++%0x4)?_0x2fd23d+=String['fromCharCode'](0xff&_0x1d1800>>(-0x2*_0x12acd0&0x6)):0x0){_0x261993=_0x4c3126['indexOf'](_0x261993);}for(let _0x2b4267=0x0,_0x3771f6=_0x2fd23d['length'];_0x2b4267<_0x3771f6;_0x2b4267++){_0x4e7422+='%'+('00'+_0x2fd23d['charCodeAt'](_0x2b4267)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4e7422);};a0_0x5979['WBaEKn']=_0x36eda4,a0_0x5979['yqreFG']={},a0_0x5979['BxQKhe']=!![];}const _0x4aeede=_0x4cdefe[0x0],_0x35ebf2=_0x2350aa+_0x4aeede,_0x1c140b=a0_0x5979['yqreFG'][_0x35ebf2];return!_0x1c140b?(_0x5979a4=a0_0x5979['WBaEKn'](_0x5979a4),a0_0x5979['yqreFG'][_0x35ebf2]=_0x5979a4):_0x5979a4=_0x1c140b,_0x5979a4;}const express=require('express'),{logger}=require('../../utils/logger');function createLockRoutes(){const _0x1cce4f=a0_0x5979,_0x5b2a0c={'vkwGU':_0x1cce4f(0xc3),'lKnFc':_0x1cce4f(0xc5),'PCJLl':function(_0xdafb78){return _0xdafb78();},'SdNkO':'Resource\x20lock\x20conflict','jEDoA':_0x1cce4f(0xce),'KflvW':_0x1cce4f(0xc7),'InCwa':'Missing\x20required\x20fields:\x20resource,\x20lock_keys','rRedT':function(_0x217c05){return _0x217c05();},'sgsUc':'lock_status_route_error','NMZye':_0x1cce4f(0xca),'VnOPV':'/release'},_0x37de77=express['Router']();let _0x457888=null;function _0x238ca1(){return!_0x457888&&(_0x457888=require(_0x5b2a0c['vkwGU'])),_0x457888;}return _0x37de77['post'](_0x1cce4f(0xc6),async(_0x2d7799,_0x2d0b1c)=>{const _0x822f9b=_0x1cce4f;try{const {resource:_0x408272,lock_keys:_0x1a549b,ttl:_0x5d0eb8,owner:_0x3e17ac}=_0x2d7799[_0x822f9b(0xb9)];if(!_0x408272||!_0x1a549b||!_0x5d0eb8||!_0x3e17ac)return _0x2d0b1c[_0x822f9b(0xb4)](0x190)[_0x822f9b(0xbc)]({'success':![],'error':_0x5b2a0c[_0x822f9b(0xbe)]});const _0x409873=_0x5b2a0c[_0x822f9b(0xd0)](_0x238ca1),_0x518985=await _0x409873['acquireResourceLocks']({'resource':_0x408272,'lockKeys':_0x1a549b,'ttl':_0x5d0eb8,'owner':_0x3e17ac});if(_0x518985[_0x822f9b(0xb5)])return _0x2d0b1c['json'](_0x518985);const _0x135fc6=_0x518985['error']===_0x5b2a0c[_0x822f9b(0xcd)]?0x199:0x190;return _0x2d0b1c['status'](_0x135fc6)['json'](_0x518985);}catch(_0x5ad875){logger[_0x822f9b(0xc4)]({'event':_0x5b2a0c['jEDoA'],'error':_0x5ad875[_0x822f9b(0xc8)]},'Lock\x20acquire\x20route\x20error:\x20'+_0x5ad875[_0x822f9b(0xc8)]),_0x2d0b1c['status'](0x1f4)['json']({'success':![],'error':_0x5b2a0c['KflvW']});}}),_0x37de77['post'](_0x5b2a0c[_0x1cce4f(0xba)],async(_0x2f4720,_0x1c684c)=>{const _0x1940ff=_0x1cce4f;try{const {resource:_0x13fd8f,lock_keys:_0x2dec48,lock_token:_0x13060f}=_0x2f4720['body'];if(!_0x13fd8f||!_0x2dec48||!_0x13060f)return _0x1c684c[_0x1940ff(0xb4)](0x190)['json']({'success':![],'error':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20lock_token'});const _0xe0c067=_0x238ca1(),_0x149db3=await _0xe0c067['releaseResourceLocks']({'resource':_0x13fd8f,'lockKeys':_0x2dec48,'lockToken':_0x13060f});if(_0x149db3[_0x1940ff(0xb5)])return _0x1c684c['json'](_0x149db3);return _0x1c684c[_0x1940ff(0xb4)](0x190)['json'](_0x149db3);}catch(_0x3fc1e4){logger[_0x1940ff(0xc4)]({'event':_0x1940ff(0xcb),'error':_0x3fc1e4[_0x1940ff(0xc8)]},'Lock\x20release\x20route\x20error:\x20'+_0x3fc1e4[_0x1940ff(0xc8)]),_0x1c684c[_0x1940ff(0xb4)](0x1f4)['json']({'success':![],'error':'Internal\x20server\x20error\x20during\x20lock\x20release'});}}),_0x37de77['post'](_0x1cce4f(0xbd),async(_0x525473,_0x57a74f)=>{const _0x1ebb2a=_0x1cce4f;try{const {resource:_0x302674,lock_keys:_0x1e1063}=_0x525473['body'];if(!_0x302674||!_0x1e1063)return _0x57a74f['status'](0x190)['json']({'success':![],'error':_0x5b2a0c['InCwa']});const _0x311de0=_0x5b2a0c['rRedT'](_0x238ca1),_0x352101=await _0x311de0[_0x1ebb2a(0xc1)]({'resource':_0x302674,'lockKeys':_0x1e1063});if(_0x352101[_0x1ebb2a(0xb5)])return _0x57a74f['json'](_0x352101);return _0x57a74f[_0x1ebb2a(0xb4)](0x190)['json'](_0x352101);}catch(_0x4b64ec){logger['error']({'event':_0x5b2a0c['sgsUc'],'error':_0x4b64ec[_0x1ebb2a(0xc8)]},_0x1ebb2a(0xb3)+_0x4b64ec['message']),_0x57a74f['status'](0x1f4)['json']({'success':![],'error':_0x5b2a0c[_0x1ebb2a(0xb2)]});}}),_0x37de77;}module[a0_0x3d0aac(0xbb)]=createLockRoutes;
1
+ const a0_0x98b432=a0_0x46aa;(function(_0x4b9ba8,_0x43ddfa){const _0x29f8b8=a0_0x46aa,_0x1bc796=_0x4b9ba8();while(!![]){try{const _0x3e27a4=parseInt(_0x29f8b8(0x164))/0x1*(parseInt(_0x29f8b8(0x171))/0x2)+parseInt(_0x29f8b8(0x180))/0x3*(parseInt(_0x29f8b8(0x184))/0x4)+-parseInt(_0x29f8b8(0x172))/0x5*(parseInt(_0x29f8b8(0x170))/0x6)+-parseInt(_0x29f8b8(0x17b))/0x7*(parseInt(_0x29f8b8(0x17f))/0x8)+-parseInt(_0x29f8b8(0x17e))/0x9*(-parseInt(_0x29f8b8(0x166))/0xa)+-parseInt(_0x29f8b8(0x176))/0xb+parseInt(_0x29f8b8(0x169))/0xc;if(_0x3e27a4===_0x43ddfa)break;else _0x1bc796['push'](_0x1bc796['shift']());}catch(_0x533fc9){_0x1bc796['push'](_0x1bc796['shift']());}}}(a0_0xb9bd,0x3ee04));function a0_0x46aa(_0x192506,_0x169818){_0x192506=_0x192506-0x164;const _0xb9bd09=a0_0xb9bd();let _0x46aac4=_0xb9bd09[_0x192506];if(a0_0x46aa['KuNpAC']===undefined){var _0x2e2cea=function(_0x55ec91){const _0x577303='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x389564='',_0x3fed31='';for(let _0x287cc8=0x0,_0x2d91e8,_0x400fd5,_0x4fb084=0x0;_0x400fd5=_0x55ec91['charAt'](_0x4fb084++);~_0x400fd5&&(_0x2d91e8=_0x287cc8%0x4?_0x2d91e8*0x40+_0x400fd5:_0x400fd5,_0x287cc8++%0x4)?_0x389564+=String['fromCharCode'](0xff&_0x2d91e8>>(-0x2*_0x287cc8&0x6)):0x0){_0x400fd5=_0x577303['indexOf'](_0x400fd5);}for(let _0x8ebc7c=0x0,_0x390f26=_0x389564['length'];_0x8ebc7c<_0x390f26;_0x8ebc7c++){_0x3fed31+='%'+('00'+_0x389564['charCodeAt'](_0x8ebc7c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3fed31);};a0_0x46aa['SHgVDb']=_0x2e2cea,a0_0x46aa['hkfwJH']={},a0_0x46aa['KuNpAC']=!![];}const _0x2c42cf=_0xb9bd09[0x0],_0x3dc7ae=_0x192506+_0x2c42cf,_0x224127=a0_0x46aa['hkfwJH'][_0x3dc7ae];return!_0x224127?(_0x46aac4=a0_0x46aa['SHgVDb'](_0x46aac4),a0_0x46aa['hkfwJH'][_0x3dc7ae]=_0x46aac4):_0x46aac4=_0x224127,_0x46aac4;}const express=require(a0_0x98b432(0x16b)),{logger}=require('../../utils/logger');function createLockRoutes(){const _0x187218=a0_0x98b432,_0x4394c8={'xjQYu':'./resource-lock-manager','XWwnN':function(_0x1c78c8){return _0x1c78c8();},'QJyjd':'Resource\x20lock\x20conflict','bXBmm':'Internal\x20server\x20error\x20during\x20lock\x20acquisition','WrBLJ':function(_0x4ebed2,_0x3d9eeb){return _0x4ebed2||_0x3d9eeb;},'zzkbI':'Internal\x20server\x20error\x20during\x20lock\x20release','GBZws':function(_0x3a8aba,_0x270982){return _0x3a8aba||_0x270982;},'oxVvg':'/release','dHeCB':_0x187218(0x186)},_0x40aca0=express[_0x187218(0x178)]();let _0x1970e6=null;function _0xc2eee5(){const _0x121404=_0x187218;return!_0x1970e6&&(_0x1970e6=require(_0x4394c8[_0x121404(0x181)])),_0x1970e6;}return _0x40aca0[_0x187218(0x17a)]('/acquire',async(_0x3bb2be,_0x507375)=>{const _0x5d2e6f=_0x187218;try{const {resource:_0x45adf5,lock_keys:_0x2e6882,ttl:_0x15e06f,owner:_0x169f64}=_0x3bb2be['body'];if(!_0x45adf5||!_0x2e6882||!_0x15e06f||!_0x169f64)return _0x507375['status'](0x190)[_0x5d2e6f(0x185)]({'success':![],'error':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20ttl,\x20owner'});const _0x330707=_0x4394c8[_0x5d2e6f(0x17c)](_0xc2eee5),_0x4131c3=await _0x330707[_0x5d2e6f(0x16d)]({'resource':_0x45adf5,'lockKeys':_0x2e6882,'ttl':_0x15e06f,'owner':_0x169f64});if(_0x4131c3['success'])return _0x507375['json'](_0x4131c3);const _0x4ca809=_0x4131c3[_0x5d2e6f(0x165)]===_0x4394c8[_0x5d2e6f(0x167)]?0x199:0x190;return _0x507375['status'](_0x4ca809)['json'](_0x4131c3);}catch(_0x930a8){logger[_0x5d2e6f(0x165)]({'event':'lock_acquire_route_error','error':_0x930a8[_0x5d2e6f(0x168)]},_0x5d2e6f(0x175)+_0x930a8[_0x5d2e6f(0x168)]),_0x507375['status'](0x1f4)[_0x5d2e6f(0x185)]({'success':![],'error':_0x4394c8['bXBmm']});}}),_0x40aca0[_0x187218(0x17a)](_0x4394c8['oxVvg'],async(_0x4f5f31,_0x35de2b)=>{const _0x50aad1=_0x187218;try{const {resource:_0x56dc8d,lock_keys:_0x5c8d1e,lock_token:_0x28aa1f}=_0x4f5f31['body'];if(_0x4394c8[_0x50aad1(0x16f)](!_0x56dc8d,!_0x5c8d1e)||!_0x28aa1f)return _0x35de2b[_0x50aad1(0x16a)](0x190)[_0x50aad1(0x185)]({'success':![],'error':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20lock_token'});const _0x510134=_0x4394c8[_0x50aad1(0x17c)](_0xc2eee5),_0x4132ba=await _0x510134[_0x50aad1(0x183)]({'resource':_0x56dc8d,'lockKeys':_0x5c8d1e,'lockToken':_0x28aa1f});if(_0x4132ba['success'])return _0x35de2b['json'](_0x4132ba);return _0x35de2b['status'](0x190)['json'](_0x4132ba);}catch(_0x5dbbeb){logger[_0x50aad1(0x165)]({'event':'lock_release_route_error','error':_0x5dbbeb['message']},_0x50aad1(0x17d)+_0x5dbbeb['message']),_0x35de2b[_0x50aad1(0x16a)](0x1f4)[_0x50aad1(0x185)]({'success':![],'error':_0x4394c8[_0x50aad1(0x16c)]});}}),_0x40aca0[_0x187218(0x17a)](_0x4394c8['dHeCB'],async(_0x2b5a3e,_0x56e58e)=>{const _0x117579=_0x187218;try{const {resource:_0x2bfc82,lock_keys:_0x32faa7}=_0x2b5a3e['body'];if(_0x4394c8[_0x117579(0x174)](!_0x2bfc82,!_0x32faa7))return _0x56e58e[_0x117579(0x16a)](0x190)['json']({'success':![],'error':_0x117579(0x182)});const _0x572839=_0xc2eee5(),_0x2e56f1=await _0x572839[_0x117579(0x179)]({'resource':_0x2bfc82,'lockKeys':_0x32faa7});if(_0x2e56f1['success'])return _0x56e58e[_0x117579(0x185)](_0x2e56f1);return _0x56e58e['status'](0x190)['json'](_0x2e56f1);}catch(_0x50a4e4){logger[_0x117579(0x165)]({'event':_0x117579(0x16e),'error':_0x50a4e4['message']},'Lock\x20status\x20route\x20error:\x20'+_0x50a4e4[_0x117579(0x168)]),_0x56e58e['status'](0x1f4)['json']({'success':![],'error':_0x117579(0x173)});}}),_0x40aca0;}module[a0_0x98b432(0x177)]=createLockRoutes;function a0_0xb9bd(){const _0x29339c=['zxjYB3i','ndGWsuPAwNzX','uuP5AMq','BwvZC2fNzq','mtm2mdaYmgXQrwj3qW','C3rHDhvZ','zxHWCMvZCW','ENPRyKK','ywnXDwLYzvjLC291CMnLtg9JA3m','Bg9JA19ZDgf0DxnFCM91DgvFzxjYB3i','v3jcteO','nLrxtvr0tq','mKzXExHlBG','oty1odmWtK5HuM96','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihn0yxr1CYbJAgvJAW','r0jAD3m','tg9JAYbHy3f1AxjLihjVDxrLigvYCM9YoIa','mZe0mdiYnw91yK11wq','zxHWB3j0CW','uM91DgvY','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','Cg9ZDa','mJHwthHuEKq','wfD3BK4','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','mJyWndzICwfkEvi','nde0mty4zu14Dfzx','mJGYm2zUC09mtW','EgPrwxu','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','CMvSzwfZzvjLC291CMnLtg9JA3m','mtqXmK5VBwvRvG','ANnVBG','l3n0yxr1CW','mZu4odq1EKfjEezw'];a0_0xb9bd=function(){return _0x29339c;};return a0_0xb9bd();}
@@ -1 +1 @@
1
- const a0_0x5c0887=a0_0x18fb;function a0_0x18fb(_0x388a6d,_0x2173b4){_0x388a6d=_0x388a6d-0xa8;const _0x2e884f=a0_0x2e88();let _0x18fbd3=_0x2e884f[_0x388a6d];if(a0_0x18fb['agtsjQ']===undefined){var _0x522c6d=function(_0x24b079){const _0x117392='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x11c6cd='',_0x192d0e='';for(let _0x5be067=0x0,_0x3b3001,_0x5e0908,_0xb7e44=0x0;_0x5e0908=_0x24b079['charAt'](_0xb7e44++);~_0x5e0908&&(_0x3b3001=_0x5be067%0x4?_0x3b3001*0x40+_0x5e0908:_0x5e0908,_0x5be067++%0x4)?_0x11c6cd+=String['fromCharCode'](0xff&_0x3b3001>>(-0x2*_0x5be067&0x6)):0x0){_0x5e0908=_0x117392['indexOf'](_0x5e0908);}for(let _0x575315=0x0,_0x13f2f7=_0x11c6cd['length'];_0x575315<_0x13f2f7;_0x575315++){_0x192d0e+='%'+('00'+_0x11c6cd['charCodeAt'](_0x575315)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x192d0e);};a0_0x18fb['wKlknk']=_0x522c6d,a0_0x18fb['DXvgpe']={},a0_0x18fb['agtsjQ']=!![];}const _0x21aa78=_0x2e884f[0x0],_0xfc1b42=_0x388a6d+_0x21aa78,_0x452b34=a0_0x18fb['DXvgpe'][_0xfc1b42];return!_0x452b34?(_0x18fbd3=a0_0x18fb['wKlknk'](_0x18fbd3),a0_0x18fb['DXvgpe'][_0xfc1b42]=_0x18fbd3):_0x18fbd3=_0x452b34,_0x18fbd3;}(function(_0x27c051,_0x27b183){const _0x504ded=a0_0x18fb,_0x48ba2c=_0x27c051();while(!![]){try{const _0x14cb17=-parseInt(_0x504ded(0xb3))/0x1*(parseInt(_0x504ded(0xc8))/0x2)+parseInt(_0x504ded(0xb8))/0x3+parseInt(_0x504ded(0xc9))/0x4+-parseInt(_0x504ded(0xd9))/0x5*(-parseInt(_0x504ded(0xb7))/0x6)+-parseInt(_0x504ded(0xc6))/0x7*(-parseInt(_0x504ded(0xbf))/0x8)+-parseInt(_0x504ded(0xbd))/0x9+parseInt(_0x504ded(0xc2))/0xa;if(_0x14cb17===_0x27b183)break;else _0x48ba2c['push'](_0x48ba2c['shift']());}catch(_0x1cbd8f){_0x48ba2c['push'](_0x48ba2c['shift']());}}}(a0_0x2e88,0xb09b1));const redisClient=require('../../utils/redis-client'),{logger}=require(a0_0x5c0887(0xab)),{v4:uuidv4}=require('uuid');function getPrefix(){const _0x1b61ac=a0_0x5c0887,_0x22a940={'cNxpx':_0x1b61ac(0xb9)},_0x11226c=process[_0x1b61ac(0xb5)]['RESTFORGE_PROJECT_NAME']||_0x22a940['cNxpx'];return _0x1b61ac(0xe4)+_0x11226c+':rlock:';}function a0_0x2e88(){const _0x28e94f=['uMvZB3vYy2uGBg9JAYbJB25MBgLJDcbVBIa','x3jVBgXIywnRs2v5CW','ndi4mdG3r3nurLHL','BwvZC2fNzq','zw52','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','nLHky3HLwq','odG2nZDHsKTLDNC','zgvMyxvSDa','BwLU','yNvPBgrlzxK','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','mti2ndG0mZHKz3fQzhu','zxzHBa','ogf1qvHHBG','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','mtu1odaZntbqwLnAtNm','BM93','BwfW','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','nJy1mdqYzxnVwhzR','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','nePTqwDmyq','ntG5ote2ChzMsKjV','A2zPAxG','qLnUDgm','D2fYBG','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','Aw5KzxHpzG','vw5wsxK','igTLExmSifrutdOG','ywnXDwLYzvjLC291CMnLtg9JA3m','tg9JAYbHy3f1AxjLigzHAwXLzdOG','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','z2v0q2XPzw50','wwHiA3u','DMfSAwq','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','zxHWB3j0CW','ntC3ndi3mfLZBerQCW','rKrcC1q','ywXS','ALHPC2G','C3rYAw5N','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','Dw5RBM93BG','CMvZB3vYy2vFBg9JA19Hy3f1AxjLza','C3vIC3rYAw5N','BgvUz3rO','CMy6','zxjYB3i','BNvTyMvY','DhrSuMvTywLUAw5N','Aw5MBW','tg9JAYbYzwXLyxnLigzHAwXLzdOG','ChvZAa','x2DLDenVBMzSAwn0sw5MBW','x3zHBgLKyxrLqwnXDwLYzuLUChv0','DhrS','A2v5','CMj6Ewi','ExHQD0O','z2v0twf4vfrmu2vJB25KCW','z2vUzxjHDgvuB2TLBG','lI4VlI4VDxrPBhmVBg9Nz2vY','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','CMvSzwfZzvjLC291CMnLtg9JA3m','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','zxH0CMfJDe93BMvY'];a0_0x2e88=function(){return _0x28e94f;};return a0_0x2e88();}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x5c0887(0xaf);class ResourceLockManager{[a0_0x5c0887(0xbb)](_0x55e04e,_0x170885,_0x17a517){return''+getPrefix()+_0x55e04e+':'+_0x170885+':'+_0x17a517;}[a0_0x5c0887(0xaa)](_0x19adad){const _0x52e368=a0_0x5c0887,_0x6a87b9={'rbzyb':function(_0x45e4af){return _0x45e4af();}};return _0x19adad+':'+_0x6a87b9[_0x52e368(0xef)](uuidv4)+':'+Date[_0x52e368(0xc3)]();}['extractOwner'](_0x5edd50){const _0x341bf8=a0_0x5c0887;if(!_0x5edd50)return _0x341bf8(0xe0);const _0x5a9d38=_0x5edd50[_0x341bf8(0xce)](':');return _0x5a9d38>0x0?_0x5edd50[_0x341bf8(0xe2)](0x0,_0x5a9d38):_0x5edd50;}['getMaxTTLSeconds'](){const _0x30eb63=a0_0x5c0887,_0x4012af={'jXish':function(_0x4007dc,_0x2e021e,_0x53dc6){return _0x4007dc(_0x2e021e,_0x53dc6);}};return _0x4012af[_0x30eb63(0xdc)](parseInt,process[_0x30eb63(0xb5)]['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x5c0887(0xd1)]({resource:_0x1be140,lockKeys:_0x4a2484,ttl:_0x1f151d,owner:_0x5dea73}){const _0x27b4f9=a0_0x5c0887,_0xbeb840={'pttDg':function(_0x1d5ecf,_0x286f73){return _0x1d5ecf<_0x286f73;},'FDBsT':'resource_lock_conflict','kfiix':_0x27b4f9(0xe1)},_0x213309=this[_0x27b4f9(0xec)]({'resource':_0x1be140,'lockKeys':_0x4a2484,'ttl':_0x1f151d,'owner':_0x5dea73});if(!_0x213309[_0x27b4f9(0xd6)])return{'success':![],'error':_0x213309[_0x27b4f9(0xe5)]};const _0x8e9b16=this[_0x27b4f9(0xa9)](),_0x504c68=Math[_0x27b4f9(0xba)](_0x1f151d,_0x8e9b16),_0x5b5b9d=this[_0x27b4f9(0xaa)](_0x5dea73),_0x21d4ad=[];try{const _0x243674=redisClient[_0x27b4f9(0xd4)]();for(let _0x3abac3=0x0;_0xbeb840['pttDg'](_0x3abac3,_0x4a2484['length']);_0x3abac3++){const {key:_0x466f26,value:_0x18ab8a}=_0x4a2484[_0x3abac3],_0x562a52=this[_0x27b4f9(0xbb)](_0x1be140,_0x466f26,_0x18ab8a),_0x29a0b2=await _0x243674['set'](_0x562a52,_0x5b5b9d,'EX',_0x504c68,'NX');if(_0x29a0b2==='OK')_0x21d4ad[_0x27b4f9(0xea)](_0x562a52);else{await this[_0x27b4f9(0xb2)](_0x243674,_0x21d4ad,_0x5b5b9d);const _0x17ae7c=await this[_0x27b4f9(0xeb)](_0x243674,_0x562a52);return logger[_0x27b4f9(0xcc)]({'event':_0xbeb840[_0x27b4f9(0xda)],'resource':_0x1be140,'conflicting_key':{'key':_0x466f26,'value':_0x18ab8a},'locked_by':_0x17ae7c['owner'],'ttl_remaining':_0x17ae7c[_0x27b4f9(0xe7)],'attempted_by':_0x5dea73},_0x27b4f9(0xb1)+_0x1be140+':'+_0x466f26+':'+_0x18ab8a),{'success':![],'error':_0x27b4f9(0xd7),'data':{'conflicting_key':{'key':_0x466f26,'value':_0x18ab8a},'locked_by':_0x17ae7c['owner'],'ttl_remaining':_0x17ae7c[_0x27b4f9(0xe7)]}};}}const _0x2337ff=_0x4a2484[_0x27b4f9(0xc4)](({key:_0x21c4c4,value:_0x172c6b})=>({'key':_0x21c4c4,'value':_0x172c6b,'lock_key':this['buildKey'](_0x1be140,_0x21c4c4,_0x172c6b)}));return logger['info']({'event':_0xbeb840[_0x27b4f9(0xca)],'resource':_0x1be140,'keys_count':_0x4a2484[_0x27b4f9(0xe3)],'ttl':_0x504c68,'owner':_0x5dea73},_0x27b4f9(0xac)+_0x1be140+'\x20('+_0x4a2484['length']+_0x27b4f9(0xd0)+_0x504c68+'s)'),{'success':!![],'data':{'lock_token':_0x5b5b9d,'resource':_0x1be140,'locked_keys':_0x2337ff,'ttl':_0x504c68,'owner':_0x5dea73,'acquired_at':new Date()['toISOString']()}};}catch(_0x26c494){try{const _0x50a7b0=redisClient[_0x27b4f9(0xd4)]();await this['_rollbackKeys'](_0x50a7b0,_0x21d4ad,_0x5b5b9d);}catch(_0x5a0bee){logger[_0x27b4f9(0xe5)]({'event':'resource_lock_rollback_error','error':_0x5a0bee['message']},_0x27b4f9(0xdf));}return logger['error']({'event':'resource_lock_acquire_error','resource':_0x1be140,'owner':_0x5dea73,'error':_0x26c494[_0x27b4f9(0xb4)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x26c494[_0x27b4f9(0xb4)]),{'success':![],'error':_0x27b4f9(0xd2)+_0x26c494['message']};}}async[a0_0x5c0887(0xae)]({resource:_0x1527f2,lockKeys:_0x2e8bf2,lockToken:_0x3dee43}){const _0x1bbcbc=a0_0x5c0887,_0x4a9bee=this['_validateReleaseInput']({'resource':_0x1527f2,'lockKeys':_0x2e8bf2,'lockToken':_0x3dee43});if(!_0x4a9bee['valid'])return{'success':![],'error':_0x4a9bee[_0x1bbcbc(0xe5)]};try{const _0x59399b=redisClient[_0x1bbcbc(0xd4)]();let _0x589247=0x0;for(const {key:_0x31ba58,value:_0x4b53e6}of _0x2e8bf2){const _0x2d6659=this['buildKey'](_0x1527f2,_0x31ba58,_0x4b53e6),_0x55aa0e=await _0x59399b['eval'](RELEASE_LUA_SCRIPT,0x1,_0x2d6659,_0x3dee43);_0x55aa0e===0x1&&_0x589247++;}return logger[_0x1bbcbc(0xe8)]({'event':'resource_lock_released','resource':_0x1527f2,'released_keys':_0x589247,'total_keys':_0x2e8bf2['length'],'owner':this[_0x1bbcbc(0xb0)](_0x3dee43)},_0x1bbcbc(0xd3)+_0x1527f2+'\x20('+_0x589247+'/'+_0x2e8bf2['length']+'\x20keys)'),{'success':!![],'data':{'resource':_0x1527f2,'released_keys':_0x589247,'total_keys':_0x2e8bf2['length']}};}catch(_0x171ff7){return logger[_0x1bbcbc(0xe5)]({'event':'resource_lock_release_error','resource':_0x1527f2,'error':_0x171ff7[_0x1bbcbc(0xb4)]},_0x1bbcbc(0xbc)+_0x171ff7[_0x1bbcbc(0xb4)]),{'success':![],'error':_0x1bbcbc(0xe9)+_0x171ff7[_0x1bbcbc(0xb4)]};}}async['getResourceLockStatus']({resource:_0x4fffd4,lockKeys:_0xb12089}){const _0x13047f=a0_0x5c0887,_0x5d2ee8={'BSntc':function(_0x2a4750,_0x2e2148){return _0x2a4750===_0x2e2148;},'SNRKn':function(_0xc9ceaa,_0x4dfd76){return _0xc9ceaa!==_0x4dfd76;},'aEVvj':function(_0x31eeeb,_0x1d538d){return _0x31eeeb>_0x1d538d;},'kCdfz':_0x13047f(0xc0)};if(!_0x4fffd4||!Array['isArray'](_0xb12089)||_0x5d2ee8[_0x13047f(0xcb)](_0xb12089['length'],0x0))return{'success':![],'error':_0x13047f(0xb6)};try{const _0x46be04=redisClient[_0x13047f(0xd4)](),_0xc9a94d=[];for(const {key:_0x1df634,value:_0x211b3b}of _0xb12089){const _0x13dee0=this['buildKey'](_0x4fffd4,_0x1df634,_0x211b3b),[_0x319eb6,_0x5abdd8]=await Promise['all']([_0x46be04['get'](_0x13dee0),_0x46be04[_0x13047f(0xed)](_0x13dee0)]),_0x5a6741=_0x5d2ee8['SNRKn'](_0x319eb6,null);_0xc9a94d['push']({'key':_0x1df634,'value':_0x211b3b,'locked':_0x5a6741,'owner':_0x5a6741?this[_0x13047f(0xb0)](_0x319eb6):null,'ttl_remaining':_0x5a6741&&_0x5d2ee8['aEVvj'](_0x5abdd8,0x0)?_0x5abdd8:null});}return{'success':!![],'data':{'resource':_0x4fffd4,'keys':_0xc9a94d}};}catch(_0x4131b8){return logger[_0x13047f(0xe5)]({'event':_0x5d2ee8['kCdfz'],'resource':_0x4fffd4,'error':_0x4131b8['message']},'Resource\x20lock\x20status\x20error:\x20'+_0x4131b8['message']),{'success':![],'error':_0x13047f(0xc5)+_0x4131b8[_0x13047f(0xb4)]};}}async[a0_0x5c0887(0xb2)](_0x314d01,_0x17dddb,_0x23a739){const _0x358cc0=a0_0x5c0887;for(const _0x25059a of _0x17dddb){try{await _0x314d01[_0x358cc0(0xbe)](RELEASE_LUA_SCRIPT,0x1,_0x25059a,_0x23a739);}catch(_0x24088c){logger[_0x358cc0(0xe5)]({'event':'resource_lock_rollback_key_error','key':_0x25059a,'error':_0x24088c[_0x358cc0(0xb4)]},_0x358cc0(0xc7)+_0x25059a);}}}async[a0_0x5c0887(0xeb)](_0x2fc635,_0x9b7718){const _0x27ba3b=a0_0x5c0887,_0x2aeb27={'aXRpe':_0x27ba3b(0xe0),'dWNrj':function(_0x25645d,_0x33db6e){return _0x25645d>_0x33db6e;}};try{const [_0x43d8aa,_0x19731c]=await Promise[_0x27ba3b(0xdb)]([_0x2fc635['get'](_0x9b7718),_0x2fc635['ttl'](_0x9b7718)]);return{'owner':_0x43d8aa?this['extractOwner'](_0x43d8aa):_0x2aeb27['aXRpe'],'ttlRemaining':_0x2aeb27['dWNrj'](_0x19731c,0x0)?_0x19731c:null};}catch{return{'owner':'unknown','ttlRemaining':null};}}[a0_0x5c0887(0xec)]({resource:_0x17095e,lockKeys:_0x44184d,ttl:_0x1457f5,owner:_0x58717b}){const _0x2b1c59=a0_0x5c0887,_0x170bb0={'UnVIy':function(_0x16eac2,_0x3990ca){return _0x16eac2!==_0x3990ca;},'ePYyl':function(_0x5b6040,_0x3e69bf){return _0x5b6040===_0x3e69bf;}};if(!_0x17095e||_0x170bb0[_0x2b1c59(0xcf)](typeof _0x17095e,_0x2b1c59(0xdd)))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array['isArray'](_0x44184d)||_0x170bb0['ePYyl'](_0x44184d[_0x2b1c59(0xe3)],0x0))return{'valid':![],'error':_0x2b1c59(0xde)};if(_0x44184d['length']>0x64)return{'valid':![],'error':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items'};for(let _0x215111=0x0;_0x215111<_0x44184d[_0x2b1c59(0xe3)];_0x215111++){const _0x237bde=_0x44184d[_0x215111];if(!_0x237bde||!_0x237bde[_0x2b1c59(0xee)]||!_0x237bde['value'])return{'valid':![],'error':'lock_keys['+_0x215111+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x1457f5||typeof _0x1457f5!==_0x2b1c59(0xe6)||_0x1457f5<0x1)return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x2ceaef=this[_0x2b1c59(0xa9)]();if(_0x1457f5>_0x2ceaef)return{'valid':![],'error':_0x2b1c59(0xad)+_0x2ceaef+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x58717b||_0x170bb0['UnVIy'](typeof _0x58717b,_0x2b1c59(0xdd)))return{'valid':![],'error':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x5ecb9e,lockKeys:_0x2a1b59,lockToken:_0x12cfca}){const _0x402513=a0_0x5c0887,_0x2d7e0e={'NBunL':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string','YhHku':function(_0x27ac8f,_0xee0422){return _0x27ac8f<_0xee0422;},'VfumU':function(_0x3a7af5,_0x180c2b){return _0x3a7af5!==_0x180c2b;},'yxjwJ':'string','EIHDA':_0x402513(0xc1)};if(!_0x5ecb9e||typeof _0x5ecb9e!=='string')return{'valid':![],'error':_0x2d7e0e['NBunL']};if(!Array['isArray'](_0x2a1b59)||_0x2a1b59[_0x402513(0xe3)]===0x0)return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x124fa6=0x0;_0x2d7e0e[_0x402513(0xd5)](_0x124fa6,_0x2a1b59[_0x402513(0xe3)]);_0x124fa6++){const _0x2992ba=_0x2a1b59[_0x124fa6];if(!_0x2992ba||!_0x2992ba[_0x402513(0xee)]||!_0x2992ba['value'])return{'valid':![],'error':'lock_keys['+_0x124fa6+_0x402513(0xcd)};}if(!_0x12cfca||_0x2d7e0e['VfumU'](typeof _0x12cfca,_0x2d7e0e[_0x402513(0xa8)]))return{'valid':![],'error':_0x2d7e0e['EIHDA']};return{'valid':!![]};}}module[a0_0x5c0887(0xd8)]=new ResourceLockManager();
1
+ const a0_0x247248=a0_0x5f14;function a0_0x5f14(_0x401fef,_0x186027){_0x401fef=_0x401fef-0x78;const _0x2f6e58=a0_0x2f6e();let _0x5f147e=_0x2f6e58[_0x401fef];if(a0_0x5f14['MrLNuZ']===undefined){var _0x2cd16a=function(_0x4a46cd){const _0x439100='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5f0745='',_0x3a425b='';for(let _0x28b876=0x0,_0x3b2b17,_0x3d0fa4,_0xfae32d=0x0;_0x3d0fa4=_0x4a46cd['charAt'](_0xfae32d++);~_0x3d0fa4&&(_0x3b2b17=_0x28b876%0x4?_0x3b2b17*0x40+_0x3d0fa4:_0x3d0fa4,_0x28b876++%0x4)?_0x5f0745+=String['fromCharCode'](0xff&_0x3b2b17>>(-0x2*_0x28b876&0x6)):0x0){_0x3d0fa4=_0x439100['indexOf'](_0x3d0fa4);}for(let _0x1d0f08=0x0,_0x4c328d=_0x5f0745['length'];_0x1d0f08<_0x4c328d;_0x1d0f08++){_0x3a425b+='%'+('00'+_0x5f0745['charCodeAt'](_0x1d0f08)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3a425b);};a0_0x5f14['dVlBNe']=_0x2cd16a,a0_0x5f14['ZwCVGr']={},a0_0x5f14['MrLNuZ']=!![];}const _0x34a574=_0x2f6e58[0x0],_0x3add88=_0x401fef+_0x34a574,_0x2744ef=a0_0x5f14['ZwCVGr'][_0x3add88];return!_0x2744ef?(_0x5f147e=a0_0x5f14['dVlBNe'](_0x5f147e),a0_0x5f14['ZwCVGr'][_0x3add88]=_0x5f147e):_0x5f147e=_0x2744ef,_0x5f147e;}(function(_0x52824e,_0x52cb70){const _0x364017=a0_0x5f14,_0x29af26=_0x52824e();while(!![]){try{const _0x33077e=-parseInt(_0x364017(0xb6))/0x1+-parseInt(_0x364017(0x81))/0x2*(-parseInt(_0x364017(0x95))/0x3)+parseInt(_0x364017(0x8a))/0x4+parseInt(_0x364017(0xab))/0x5*(-parseInt(_0x364017(0x78))/0x6)+parseInt(_0x364017(0x9f))/0x7*(parseInt(_0x364017(0x84))/0x8)+parseInt(_0x364017(0x80))/0x9*(-parseInt(_0x364017(0x79))/0xa)+parseInt(_0x364017(0xad))/0xb*(parseInt(_0x364017(0x88))/0xc);if(_0x33077e===_0x52cb70)break;else _0x29af26['push'](_0x29af26['shift']());}catch(_0x206e0b){_0x29af26['push'](_0x29af26['shift']());}}}(a0_0x2f6e,0x95ea8));const redisClient=require('../../utils/redis-client'),{logger}=require(a0_0x247248(0xc0)),{v4:uuidv4}=require(a0_0x247248(0x94));function getPrefix(){const _0x363e87=a0_0x247248,_0x47d2e6={'aPoqr':'default'},_0x4f0f11=process['env'][_0x363e87(0x7a)]||_0x47d2e6['aPoqr'];return _0x363e87(0x91)+_0x4f0f11+':rlock:';}function a0_0x2f6e(){const _0x70e6d9=['x3jVBgXIywnRs2v5CW','CMy6','ywnXDwLYzvjLC291CMnLtg9JA3m','vwnUvNm','DxvPza','mteYmtq2v0DiqMzV','CMvSzwfZzvjLC291CMnLtg9JA3m','CMvZB3vYy2vFBg9JA19Hy3f1AxjLx2vYCM9Y','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','DMfSDwu','Dg9ju09tDhjPBMC','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','quTsCNm','qLPoBKm','Dw5RBM93BG','n0zVBfjXsq','zLzpqxi','C3rYAw5N','x3zHBgLKyxrLuMvSzwfZzuLUChv0','z2v0q2XPzw50','B3DUzxi','Bg9JA19RzxLZwW','DMfSAwq','yMDOsMG','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','r3vvv1C','nJeZoteWrgLHyMrn','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','mZntD3rtB0K','Aw5MBW','DhrSuMvTywLUAw5N','BM93','uMvZB3vYy2uGBg9JAYbHy3f1AxjLigvYCM9YoIa','tM1Nteq','zvDADwO','vg12z1O','Bg9JA19RzxLZigv4y2vLzhmGBwf4Aw11BsbVzIaXmdaGAxrLBxm','odC2mZqZAxn2B3vp','BgvUz3rO','tg9JAYbHy3f1AxjLigzHAwXLzdOG','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','C2v0','ywXS','ChvZAa','z2vUzxjHDgvuB2TLBG','DhrSigLZihjLCxvPCMvKigfUzcbTDxn0igjLigf0igXLyxn0ideGkgLUihnLy29UzhmP','yMDgzLe','lI4VlI4VDxrPBhmVBg9Nz2vY','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','z2v0','zxjYB3i','zxzHBa','mtHqsKTTv3G','mJi2ode3mejXEuv3ra','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','x2DLDenVBMzSAwn0sw5MBW','v0fmEu4','uMvZB3vYy2uGBg9JAYbJB25MBgLJDcbVBIa','A2v5','sM5jsxe','ndvxsLjkre0','mNDHs2DVyW','igTLExmP','DhrS','nJu1odGWofzLEMTfEa','BNvTyMvY','te9ds19srvnpvvjdrv9nqvHFvfrm','yNvPBgrlzxK','nZyWmtC3mKXfuNHPva','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','otqWnJe2q3b4z1z6','qxPxteG','r2vVr2W','BwvZC2fNzq','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','AxnbCNjHEq'];a0_0x2f6e=function(){return _0x70e6d9;};return a0_0x2f6e();}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x247248(0xb9);class ResourceLockManager{['buildKey'](_0x2dcdca,_0x2f0059,_0x205c37){return''+getPrefix()+_0x2dcdca+':'+_0x2f0059+':'+_0x205c37;}[a0_0x247248(0xbd)](_0x24d790){const _0x2fe420=a0_0x247248;return _0x24d790+':'+uuidv4()+':'+Date[_0x2fe420(0xb0)]();}['extractOwner'](_0x21214d){const _0x58625c=a0_0x247248,_0xa5ea11={'UcnVs':_0x58625c(0x9e)};if(!_0x21214d)return _0xa5ea11[_0x58625c(0x93)];const _0x3f9aa7=_0x21214d['indexOf'](':');return _0x3f9aa7>0x0?_0x21214d['substring'](0x0,_0x3f9aa7):_0x21214d;}['getMaxTTLSeconds'](){const _0x1b07a1=a0_0x247248;return parseInt(process['env'][_0x1b07a1(0x86)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x247248(0x92)]({resource:_0x40e55f,lockKeys:_0x45c559,ttl:_0x2c72e6,owner:_0x3248f5}){const _0x24191b=a0_0x247248,_0x583794={'acYXJ':function(_0x5c87ca,_0x41cc52){return _0x5c87ca===_0x41cc52;},'JnIIq':_0x24191b(0x9b),'GuUWW':'resource_lock_acquired','gFasG':'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error'},_0x3f8901=this['_validateAcquireInput']({'resource':_0x40e55f,'lockKeys':_0x45c559,'ttl':_0x2c72e6,'owner':_0x3248f5});if(!_0x3f8901['valid'])return{'success':![],'error':_0x3f8901['error']};const _0x2cbd5b=this['getMaxTTLSeconds'](),_0x56d229=Math['min'](_0x2c72e6,_0x2cbd5b),_0x2cdacb=this[_0x24191b(0xbd)](_0x3248f5),_0x5393e7=[];try{const _0x1d2229=redisClient[_0x24191b(0xa3)]();for(let _0x2b6450=0x0;_0x2b6450<_0x45c559[_0x24191b(0xb7)];_0x2b6450++){const {key:_0x36f55f,value:_0x5e4aa9}=_0x45c559[_0x2b6450],_0x220c62=this['buildKey'](_0x40e55f,_0x36f55f,_0x5e4aa9),_0x1440f4=await _0x1d2229[_0x24191b(0xba)](_0x220c62,_0x2cdacb,'EX',_0x56d229,'NX');if(_0x583794['acYXJ'](_0x1440f4,'OK'))_0x5393e7[_0x24191b(0xbc)](_0x220c62);else{await this['_rollbackKeys'](_0x1d2229,_0x5393e7,_0x2cdacb);const _0xd8584=await this[_0x24191b(0x7b)](_0x1d2229,_0x220c62);return logger['warn']({'event':'resource_lock_conflict','resource':_0x40e55f,'conflicting_key':{'key':_0x36f55f,'value':_0x5e4aa9},'locked_by':_0xd8584[_0x24191b(0xa4)],'ttl_remaining':_0xd8584['ttlRemaining'],'attempted_by':_0x3248f5},_0x24191b(0x7d)+_0x40e55f+':'+_0x36f55f+':'+_0x5e4aa9),{'success':![],'error':_0x583794[_0x24191b(0x7f)],'data':{'conflicting_key':{'key':_0x36f55f,'value':_0x5e4aa9},'locked_by':_0xd8584[_0x24191b(0xa4)],'ttl_remaining':_0xd8584[_0x24191b(0xaf)]}};}}const _0x1dc6f7=_0x45c559['map'](({key:_0xd48c15,value:_0x1603d1})=>({'key':_0xd48c15,'value':_0x1603d1,'lock_key':this['buildKey'](_0x40e55f,_0xd48c15,_0x1603d1)}));return logger['info']({'event':_0x583794[_0x24191b(0xaa)],'resource':_0x40e55f,'keys_count':_0x45c559['length'],'ttl':_0x56d229,'owner':_0x3248f5},'Resource\x20lock\x20acquired:\x20'+_0x40e55f+'\x20('+_0x45c559[_0x24191b(0xb7)]+'\x20keys,\x20TTL:\x20'+_0x56d229+'s)'),{'success':!![],'data':{'lock_token':_0x2cdacb,'resource':_0x40e55f,'locked_keys':_0x1dc6f7,'ttl':_0x56d229,'owner':_0x3248f5,'acquired_at':new Date()[_0x24191b(0x9a)]()}};}catch(_0x5d3efa){try{const _0x17731a=redisClient[_0x24191b(0xa3)]();await this[_0x24191b(0x90)](_0x17731a,_0x5393e7,_0x2cdacb);}catch(_0xa33f6a){logger[_0x24191b(0xc3)]({'event':'resource_lock_rollback_error','error':_0xa33f6a['message']},_0x583794['gFasG']);}return logger[_0x24191b(0xc3)]({'event':_0x24191b(0x97),'resource':_0x40e55f,'owner':_0x3248f5,'error':_0x5d3efa['message']},_0x24191b(0xb1)+_0x5d3efa['message']),{'success':![],'error':_0x24191b(0xb8)+_0x5d3efa['message']};}}async[a0_0x247248(0x96)]({resource:_0x229316,lockKeys:_0x37ed96,lockToken:_0x204d35}){const _0x4e83b5=a0_0x247248,_0x367747={'GeoGl':_0x4e83b5(0x98)},_0x3ebb24=this[_0x4e83b5(0xa2)]({'resource':_0x229316,'lockKeys':_0x37ed96,'lockToken':_0x204d35});if(!_0x3ebb24[_0x4e83b5(0xa6)])return{'success':![],'error':_0x3ebb24[_0x4e83b5(0xc3)]};try{const _0x3ce6a5=redisClient['getClient']();let _0xb5ddc2=0x0;for(const {key:_0x52e8fe,value:_0x2f5b4e}of _0x37ed96){const _0x16ebd9=this[_0x4e83b5(0x87)](_0x229316,_0x52e8fe,_0x2f5b4e),_0x1e2041=await _0x3ce6a5[_0x4e83b5(0xc4)](RELEASE_LUA_SCRIPT,0x1,_0x16ebd9,_0x204d35);_0x1e2041===0x1&&_0xb5ddc2++;}return logger[_0x4e83b5(0xae)]({'event':_0x367747[_0x4e83b5(0x8c)],'resource':_0x229316,'released_keys':_0xb5ddc2,'total_keys':_0x37ed96[_0x4e83b5(0xb7)],'owner':this['extractOwner'](_0x204d35)},'Resource\x20lock\x20released:\x20'+_0x229316+'\x20('+_0xb5ddc2+'/'+_0x37ed96['length']+_0x4e83b5(0x82)),{'success':!![],'data':{'resource':_0x229316,'released_keys':_0xb5ddc2,'total_keys':_0x37ed96[_0x4e83b5(0xb7)]}};}catch(_0xa5ab8f){return logger[_0x4e83b5(0xc3)]({'event':'resource_lock_release_error','resource':_0x229316,'error':_0xa5ab8f[_0x4e83b5(0x8d)]},'Resource\x20lock\x20release\x20error:\x20'+_0xa5ab8f[_0x4e83b5(0x8d)]),{'success':![],'error':'Lock\x20release\x20failed:\x20'+_0xa5ab8f['message']};}}async['getResourceLockStatus']({resource:_0x450f1f,lockKeys:_0x6769c9}){const _0x25c1eb=a0_0x247248,_0x2317e6={'WALyN':_0x25c1eb(0x8e),'trobF':function(_0x111542,_0x4276c8){return _0x111542>_0x4276c8;}};if(!_0x450f1f||!Array['isArray'](_0x6769c9)||_0x6769c9[_0x25c1eb(0xb7)]===0x0)return{'success':![],'error':_0x2317e6[_0x25c1eb(0x7c)]};try{const _0xf8abb3=redisClient['getClient'](),_0x1343a0=[];for(const {key:_0x10d743,value:_0x2315f7}of _0x6769c9){const _0x11a18b=this['buildKey'](_0x450f1f,_0x10d743,_0x2315f7),[_0x438d2c,_0x4b0d9c]=await Promise[_0x25c1eb(0xbb)]([_0xf8abb3['get'](_0x11a18b),_0xf8abb3[_0x25c1eb(0x83)](_0x11a18b)]),_0x595d07=_0x438d2c!==null;_0x1343a0['push']({'key':_0x10d743,'value':_0x2315f7,'locked':_0x595d07,'owner':_0x595d07?this['extractOwner'](_0x438d2c):null,'ttl_remaining':_0x595d07&&_0x2317e6['trobF'](_0x4b0d9c,0x0)?_0x4b0d9c:null});}return{'success':!![],'data':{'resource':_0x450f1f,'keys':_0x1343a0}};}catch(_0x14bb1c){return logger[_0x25c1eb(0xc3)]({'event':'resource_lock_status_error','resource':_0x450f1f,'error':_0x14bb1c[_0x25c1eb(0x8d)]},'Resource\x20lock\x20status\x20error:\x20'+_0x14bb1c[_0x25c1eb(0x8d)]),{'success':![],'error':_0x25c1eb(0xac)+_0x14bb1c['message']};}}async[a0_0x247248(0x90)](_0x650704,_0x2aa123,_0x4ff689){const _0x47ed06=a0_0x247248;for(const _0x35bdba of _0x2aa123){try{await _0x650704['eval'](RELEASE_LUA_SCRIPT,0x1,_0x35bdba,_0x4ff689);}catch(_0x50524a){logger[_0x47ed06(0xc3)]({'event':'resource_lock_rollback_key_error','key':_0x35bdba,'error':_0x50524a['message']},'Failed\x20to\x20rollback\x20key:\x20'+_0x35bdba);}}}async[a0_0x247248(0x7b)](_0x2ac7b8,_0x35af6d){const _0x293461=a0_0x247248,_0xe981c7={'bghJh':_0x293461(0x9e)};try{const [_0x38aa71,_0x10afa4]=await Promise['all']([_0x2ac7b8[_0x293461(0xc2)](_0x35af6d),_0x2ac7b8[_0x293461(0x83)](_0x35af6d)]);return{'owner':_0x38aa71?this['extractOwner'](_0x38aa71):_0x293461(0x9e),'ttlRemaining':_0x10afa4>0x0?_0x10afa4:null};}catch{return{'owner':_0xe981c7[_0x293461(0xa7)],'ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x1e9f44,lockKeys:_0x108527,ttl:_0xdaf9ad,owner:_0xa854b2}){const _0x3fb6d9=a0_0x247248,_0x5c3362={'AKRrs':function(_0xf86dc1,_0x3bc867){return _0xf86dc1!==_0x3bc867;},'bgFfQ':_0x3fb6d9(0x89),'gYtUy':function(_0x1545fd,_0x5af9e9){return _0x1545fd===_0x5af9e9;},'eWZuj':function(_0x26b2e4,_0x4ff118){return _0x26b2e4>_0x4ff118;},'GxGYM':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!_0x1e9f44||_0x5c3362['AKRrs'](typeof _0x1e9f44,'string'))return{'valid':![],'error':_0x5c3362[_0x3fb6d9(0xbf)]};if(!Array['isArray'](_0x108527)||_0x5c3362['gYtUy'](_0x108527['length'],0x0))return{'valid':![],'error':_0x3fb6d9(0xa8)};if(_0x108527['length']>0x64)return{'valid':![],'error':_0x3fb6d9(0xb5)};for(let _0x4fe5d2=0x0;_0x4fe5d2<_0x108527[_0x3fb6d9(0xb7)];_0x4fe5d2++){const _0x242919=_0x108527[_0x4fe5d2];if(!_0x242919||!_0x242919[_0x3fb6d9(0x7e)]||!_0x242919[_0x3fb6d9(0x99)])return{'valid':![],'error':_0x3fb6d9(0xa5)+_0x4fe5d2+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0xdaf9ad||_0x5c3362[_0x3fb6d9(0x9c)](typeof _0xdaf9ad,_0x3fb6d9(0x85))||_0xdaf9ad<0x1)return{'valid':![],'error':_0x3fb6d9(0xbe)};const _0x1764f7=this['getMaxTTLSeconds']();if(_0x5c3362[_0x3fb6d9(0xb3)](_0xdaf9ad,_0x1764f7))return{'valid':![],'error':_0x3fb6d9(0xa9)+_0x1764f7+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0xa854b2||_0x5c3362[_0x3fb6d9(0x9c)](typeof _0xa854b2,_0x3fb6d9(0xa1)))return{'valid':![],'error':_0x5c3362['GxGYM']};return{'valid':!![]};}[a0_0x247248(0xa2)]({resource:_0x290a26,lockKeys:_0x38fe91,lockToken:_0x27fc5c}){const _0x18acab=a0_0x247248,_0x4fd5dd={'TmvgZ':function(_0x7a8b90,_0x39f0a5){return _0x7a8b90!==_0x39f0a5;},'AzWLH':'string','fVOAr':_0x18acab(0x89),'NmgLD':function(_0x55be80,_0x569077){return _0x55be80===_0x569077;},'UtwPG':function(_0x2c124f,_0x22c2e4){return _0x2c124f<_0x22c2e4;},'RXngM':function(_0x4f6c6e,_0x2c3ea2){return _0x4f6c6e!==_0x2c3ea2;},'BZNnC':_0x18acab(0xc1)};if(!_0x290a26||_0x4fd5dd[_0x18acab(0xb4)](typeof _0x290a26,_0x4fd5dd[_0x18acab(0x8b)]))return{'valid':![],'error':_0x4fd5dd[_0x18acab(0xa0)]};if(!Array[_0x18acab(0x8f)](_0x38fe91)||_0x4fd5dd[_0x18acab(0xb2)](_0x38fe91[_0x18acab(0xb7)],0x0))return{'valid':![],'error':_0x18acab(0xa8)};for(let _0x325af2=0x0;_0x4fd5dd['UtwPG'](_0x325af2,_0x38fe91['length']);_0x325af2++){const _0x159724=_0x38fe91[_0x325af2];if(!_0x159724||!_0x159724['key']||!_0x159724[_0x18acab(0x99)])return{'valid':![],'error':_0x18acab(0xa5)+_0x325af2+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x27fc5c||_0x4fd5dd['RXngM'](typeof _0x27fc5c,_0x18acab(0xa1)))return{'valid':![],'error':_0x4fd5dd[_0x18acab(0x9d)]};return{'valid':!![]};}}module['exports']=new ResourceLockManager();
@@ -1 +1 @@
1
- const a0_0xd59b98=a0_0x5d44;(function(_0x4044b3,_0x311f62){const _0x4b9e2c=a0_0x5d44,_0x1327ec=_0x4044b3();while(!![]){try{const _0x146ce0=parseInt(_0x4b9e2c(0x15b))/0x1*(parseInt(_0x4b9e2c(0x152))/0x2)+-parseInt(_0x4b9e2c(0x194))/0x3+-parseInt(_0x4b9e2c(0x184))/0x4*(parseInt(_0x4b9e2c(0x165))/0x5)+-parseInt(_0x4b9e2c(0x174))/0x6+parseInt(_0x4b9e2c(0x136))/0x7*(-parseInt(_0x4b9e2c(0x167))/0x8)+-parseInt(_0x4b9e2c(0x132))/0x9*(parseInt(_0x4b9e2c(0x160))/0xa)+-parseInt(_0x4b9e2c(0x17b))/0xb*(-parseInt(_0x4b9e2c(0x190))/0xc);if(_0x146ce0===_0x311f62)break;else _0x1327ec['push'](_0x1327ec['shift']());}catch(_0x598172){_0x1327ec['push'](_0x1327ec['shift']());}}}(a0_0x39d6,0x8a894));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require(a0_0xd59b98(0x14b));class KafkaConsumerService{constructor(){const _0x57f764=a0_0xd59b98,_0x230543={'UYanI':'5|7|10|9|4|1|3|6|8|0|2'},_0x244583=_0x230543[_0x57f764(0x199)]['split']('|');let _0x5bc912=0x0;while(!![]){switch(_0x244583[_0x5bc912++]){case'0':this[_0x57f764(0x19b)]=null;continue;case'1':this['isPaused']=![];continue;case'2':this[_0x57f764(0x15f)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};continue;case'3':this['connectionPromise']=null;continue;case'4':this[_0x57f764(0x13c)]=![];continue;case'5':this[_0x57f764(0x137)]=null;continue;case'6':this[_0x57f764(0x16d)]=[];continue;case'7':this['consumer']=null;continue;case'8':this['groupId']=null;continue;case'9':this['isInitializing']=![];continue;case'10':this['isConnected']=![];continue;}break;}}[a0_0xd59b98(0x145)](){const _0x1c11f2=a0_0xd59b98,_0x3e1c34={'msIne':function(_0x17a87a,_0x21c9ca){return _0x17a87a===_0x21c9ca;},'eegMk':'true','LHcOP':function(_0x1d40e1,_0x4c13d1){return _0x1d40e1(_0x4c13d1);},'KydjY':'30000','PXUmE':function(_0x398519,_0x323f72){return _0x398519(_0x323f72);},'NQGDn':_0x1c11f2(0x13d),'OYbzH':function(_0x4c6014,_0xafc51b){return _0x4c6014(_0xafc51b);},'XPCnu':function(_0x441680,_0x56d96f){return _0x441680(_0x56d96f);},'jEHQc':'warn'};return{'enabled':_0x3e1c34['msIne'](process[_0x1c11f2(0x16e)]['KAFKA_ENABLED'],_0x3e1c34['eegMk']),'brokers':(process['env'][_0x1c11f2(0x197)]||_0x1c11f2(0x13e))['split'](','),'clientId':process[_0x1c11f2(0x16e)]['KAFKA_CLIENT_ID']||_0x1c11f2(0x14a)+(process[_0x1c11f2(0x16e)]['RESTFORGE_PROJECT_NAME']||'default')+'-consumer','connectionTimeout':parseInt(process['env']['KAFKA_CONNECTION_TIMEOUT']||_0x1c11f2(0x134)),'requestTimeout':parseInt(process[_0x1c11f2(0x16e)]['KAFKA_REQUEST_TIMEOUT']||'25000'),'sessionTimeout':_0x3e1c34['LHcOP'](parseInt,process['env'][_0x1c11f2(0x163)]||_0x3e1c34[_0x1c11f2(0x1a4)]),'heartbeatInterval':parseInt(process[_0x1c11f2(0x16e)]['KAFKA_HEARTBEAT_INTERVAL']||'3000'),'maxBytesPerPartition':_0x3e1c34[_0x1c11f2(0x198)](parseInt,process[_0x1c11f2(0x16e)]['KAFKA_MAX_BYTES_PER_PARTITION']||_0x3e1c34[_0x1c11f2(0x19d)]),'autoCommit':process['env']['KAFKA_AUTO_COMMIT']===_0x1c11f2(0x131),'autoCommitInterval':parseInt(process['env'][_0x1c11f2(0x178)]||'5000'),'retryAttempts':_0x3e1c34['OYbzH'](parseInt,process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0x3e1c34['XPCnu'](parseInt,process['env'][_0x1c11f2(0x189)]||'1000'),'retryMaxDelay':_0x3e1c34[_0x1c11f2(0x171)](parseInt,process['env'][_0x1c11f2(0x148)]||_0x3e1c34['KydjY']),'logLevel':process[_0x1c11f2(0x16e)][_0x1c11f2(0x175)]||_0x3e1c34['jEHQc']};}[a0_0xd59b98(0x17e)](_0x1529af){const _0x56550c=a0_0xd59b98,_0x364f80={'nothing':logLevel['NOTHING'],'error':logLevel[_0x56550c(0x183)],'warn':logLevel[_0x56550c(0x18d)],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x364f80[_0x1529af['toLowerCase']()]||logLevel['WARN'];}async[a0_0xd59b98(0x16b)](_0x9c13f7={}){const _0xadd3f7=a0_0xd59b98,_0x174fc7={'TScoM':function(_0x4cc4ce,_0x2db959){return _0x4cc4ce===_0x2db959;},'GGtjo':'true','QGuBx':'default','BVLLd':function(_0x1a81a8,_0x103f13){return _0x1a81a8(_0x103f13);}},_0x3b9165=this[_0xadd3f7(0x145)]();if(!_0x3b9165[_0xadd3f7(0x162)])return console[_0xadd3f7(0x143)]('[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'),![];if(this[_0xadd3f7(0x15a)])return!![];if(this['isInitializing']&&this['connectionPromise'])return this['connectionPromise'];return this[_0xadd3f7(0x14f)]=!![],this[_0xadd3f7(0x154)]=new Promise(async _0xb57f52=>{const _0x5b04e0=_0xadd3f7;try{let _0x2c2105=undefined;_0x174fc7['TScoM'](process[_0x5b04e0(0x16e)][_0x5b04e0(0x153)],_0x174fc7['GGtjo'])&&(_0x2c2105=!![]);let _0x3f6192=undefined;process['env']['KAFKA_SASL_MECHANISM']&&(_0x3f6192={'mechanism':process['env'][_0x5b04e0(0x16f)],'username':process[_0x5b04e0(0x16e)][_0x5b04e0(0x14c)]||'','password':process[_0x5b04e0(0x16e)]['KAFKA_SASL_PASSWORD']||''}),this[_0x5b04e0(0x137)]=new Kafka({'clientId':_0x9c13f7['clientId']||_0x3b9165['clientId'],'brokers':_0x3b9165['brokers'],'connectionTimeout':_0x3b9165[_0x5b04e0(0x16c)],'requestTimeout':_0x3b9165[_0x5b04e0(0x177)],'logLevel':this['getLogLevel'](_0x3b9165[_0x5b04e0(0x14d)]),'ssl':_0x2c2105,'sasl':_0x3f6192,'retry':{'initialRetryTime':_0x3b9165[_0x5b04e0(0x19f)],'retries':_0x3b9165['retryAttempts'],'maxRetryTime':_0x3b9165['retryMaxDelay']}}),this[_0x5b04e0(0x149)]=_0x9c13f7[_0x5b04e0(0x149)]||_0x5b04e0(0x14a)+(process[_0x5b04e0(0x16e)][_0x5b04e0(0x142)]||_0x174fc7[_0x5b04e0(0x195)])+'-consumer-group',this['consumer']=this[_0x5b04e0(0x137)][_0x5b04e0(0x159)]({'groupId':this[_0x5b04e0(0x149)],'sessionTimeout':_0x3b9165[_0x5b04e0(0x15d)],'heartbeatInterval':_0x3b9165[_0x5b04e0(0x188)],'maxBytesPerPartition':_0x3b9165[_0x5b04e0(0x192)],'allowAutoTopicCreation':![]}),await this[_0x5b04e0(0x159)][_0x5b04e0(0x17d)](),this['isConnected']=!![],console['log']('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x3b9165[_0x5b04e0(0x130)][_0x5b04e0(0x17f)](',\x20')+_0x5b04e0(0x18e)+this['groupId']+')'),this[_0x5b04e0(0x169)](),_0xb57f52(!![]);}catch(_0x28df90){console['error']('[KafkaConsumer]\x20Connection\x20failed:\x20'+_0x28df90[_0x5b04e0(0x18c)]),this[_0x5b04e0(0x15a)]=![],_0x174fc7[_0x5b04e0(0x16a)](_0xb57f52,![]);}finally{this[_0x5b04e0(0x14f)]=![];}}),this[_0xadd3f7(0x154)];}[a0_0xd59b98(0x169)](){const _0x40414e=a0_0xd59b98,_0xab81f6={'cUIBa':_0x40414e(0x170),'BRXgJ':_0x40414e(0x161),'dCrVo':_0x40414e(0x166),'MmAyc':'consumer.crash','uWvZd':'consumer.rebalancing'};if(!this[_0x40414e(0x159)])return;this[_0x40414e(0x159)]['on'](_0xab81f6['dCrVo'],()=>{const _0x1c98f4=_0x40414e;console[_0x1c98f4(0x143)](_0xab81f6[_0x1c98f4(0x180)]),this[_0x1c98f4(0x15a)]=![],this[_0x1c98f4(0x13c)]=![];}),this[_0x40414e(0x159)]['on']('consumer.stop',()=>{const _0x5cf312=_0x40414e;console['log']('[KafkaConsumer]\x20Consumer\x20stopped'),this[_0x5cf312(0x13c)]=![];}),this['consumer']['on'](_0xab81f6[_0x40414e(0x18a)],_0xa7a948=>{const _0x30a077=_0x40414e;console[_0x30a077(0x17a)](_0x30a077(0x17c)+_0xa7a948['payload']['error']['message']),this[_0x30a077(0x13c)]=![];}),this['consumer']['on'](_0xab81f6['uWvZd'],()=>{console['log'](_0xab81f6['BRXgJ']);});}async['subscribe'](_0x7f8f42,_0x1f4970=![]){const _0x26a087=a0_0xd59b98;if(!this['isConnected'])return console['error']('[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'),![];try{const _0x5e13ef=Array['isArray'](_0x7f8f42)?_0x7f8f42:[_0x7f8f42];for(const _0x5cb915 of _0x5e13ef){await this[_0x26a087(0x159)][_0x26a087(0x13b)]({'topic':_0x5cb915,'fromBeginning':_0x1f4970}),console['log']('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x5cb915+'\x20(fromBeginning:\x20'+_0x1f4970+')');}return this['subscribedTopics']=[...new Set([...this[_0x26a087(0x16d)],..._0x5e13ef])],!![];}catch(_0x5edbba){return console['error'](_0x26a087(0x19c)+_0x5edbba[_0x26a087(0x18c)]),![];}}async['startConsuming'](_0x23ffbe,_0x4e7957={}){const _0x2424e7=a0_0xd59b98,_0x1da665={'RIQLK':function(_0x2e57f2,_0x164c6e){return _0x2e57f2(_0x164c6e);},'zZcEW':_0x2424e7(0x185),'hLLeu':'[KafkaConsumer]\x20Consumer\x20already\x20running'};if(!this[_0x2424e7(0x15a)])return console[_0x2424e7(0x17a)](_0x1da665['zZcEW']),![];if(this[_0x2424e7(0x13c)])return console[_0x2424e7(0x143)](_0x1da665['hLLeu']),!![];const _0x297a51=this['getConfig']();this[_0x2424e7(0x19b)]=_0x23ffbe;try{return this[_0x2424e7(0x15f)][_0x2424e7(0x140)]=new Date(),await this[_0x2424e7(0x159)][_0x2424e7(0x168)]({'autoCommit':_0x4e7957[_0x2424e7(0x146)]!==undefined?_0x4e7957['autoCommit']:_0x297a51[_0x2424e7(0x146)],'autoCommitInterval':_0x297a51['autoCommitInterval'],'eachMessage':async({topic:_0x48618e,partition:_0x581344,message:_0x5f18b1,heartbeat:_0x12a1a0})=>{const _0x2bbac9=_0x2424e7,_0x13e393=Date['now']();this['metrics'][_0x2bbac9(0x1a9)]++,this['metrics']['lastMessageTime']=new Date();try{const _0x516c54=_0x5f18b1['value']?_0x5f18b1[_0x2bbac9(0x156)][_0x2bbac9(0x15e)]():null;let _0xa0e6a=null;try{_0xa0e6a=_0x516c54?JSON[_0x2bbac9(0x151)](_0x516c54):null;}catch(_0xc7a148){_0xa0e6a=_0x516c54;}const _0x14a243={'topic':_0x48618e,'partition':_0x581344,'offset':_0x5f18b1[_0x2bbac9(0x150)],'key':_0x5f18b1[_0x2bbac9(0x1aa)]?_0x5f18b1[_0x2bbac9(0x1aa)]['toString']():null,'headers':this['parseHeaders'](_0x5f18b1[_0x2bbac9(0x172)]),'timestamp':_0x5f18b1[_0x2bbac9(0x15c)],'value':_0xa0e6a,'raw':_0x516c54};this[_0x2bbac9(0x19b)]&&await this[_0x2bbac9(0x19b)](_0x14a243);!_0x297a51['autoCommit']&&await this[_0x2bbac9(0x159)]['commitOffsets']([{'topic':_0x48618e,'partition':_0x581344,'offset':(_0x1da665[_0x2bbac9(0x173)](parseInt,_0x5f18b1['offset'])+0x1)[_0x2bbac9(0x15e)]()}]);this['metrics'][_0x2bbac9(0x133)]++;const _0x42ad42=Date[_0x2bbac9(0x182)]()-_0x13e393;this['metrics'][_0x2bbac9(0x1a8)][_0x2bbac9(0x179)](_0x42ad42),this[_0x2bbac9(0x15f)][_0x2bbac9(0x1a8)][_0x2bbac9(0x18b)]>0x64&&this[_0x2bbac9(0x15f)]['processingTimes'][_0x2bbac9(0x13a)](),await _0x12a1a0();}catch(_0x4d95ff){this[_0x2bbac9(0x15f)][_0x2bbac9(0x191)]++,console['error'](_0x2bbac9(0x141)+_0x4d95ff['message']);throw _0x4d95ff;}}}),this[_0x2424e7(0x13c)]=!![],console['log']('[KafkaConsumer]\x20Started\x20consuming\x20from\x20topics:\x20'+this[_0x2424e7(0x16d)][_0x2424e7(0x17f)](',\x20')),!![];}catch(_0x1d567a){return console['error'](_0x2424e7(0x1a0)+_0x1d567a['message']),![];}}[a0_0xd59b98(0x164)](_0x5a68f7){const _0xb26885=a0_0xd59b98;if(!_0x5a68f7)return{};const _0x15c9be={};for(const [_0x26b4ec,_0x2a7a30]of Object[_0xb26885(0x14e)](_0x5a68f7)){_0x15c9be[_0x26b4ec]=_0x2a7a30?_0x2a7a30['toString']():null;}return _0x15c9be;}async['pause'](){const _0x1c04b3=a0_0xd59b98,_0x36528c={'mtJdQ':'[KafkaConsumer]\x20Consumer\x20already\x20paused'};if(!this['isConnected']||!this['isRunning'])return console[_0x1c04b3(0x143)](_0x1c04b3(0x1a7)),![];if(this['isPaused'])return console['log'](_0x36528c['mtJdQ']),!![];try{const _0x588bf1=this[_0x1c04b3(0x16d)]['map'](_0xc28afb=>({'topic':_0xc28afb}));return this['consumer'][_0x1c04b3(0x19a)](_0x588bf1),this['isPaused']=!![],console[_0x1c04b3(0x143)]('[KafkaConsumer]\x20Consumer\x20paused'),!![];}catch(_0x75253c){return console[_0x1c04b3(0x17a)](_0x1c04b3(0x193)+_0x75253c['message']),![];}}async['resume'](){const _0x32a037=a0_0xd59b98,_0x50283a={'DJNsA':'[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running','XjoXr':'[KafkaConsumer]\x20Consumer\x20not\x20paused'};if(!this['isConnected']||!this['isRunning'])return console[_0x32a037(0x143)](_0x50283a['DJNsA']),![];if(!this[_0x32a037(0x19e)])return console[_0x32a037(0x143)](_0x50283a['XjoXr']),!![];try{const _0xa06fc2=this[_0x32a037(0x16d)]['map'](_0x5aa21f=>({'topic':_0x5aa21f}));return this['consumer']['resume'](_0xa06fc2),this[_0x32a037(0x19e)]=![],console[_0x32a037(0x143)]('[KafkaConsumer]\x20Consumer\x20resumed'),!![];}catch(_0x444637){return console[_0x32a037(0x17a)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x444637['message']),![];}}async[a0_0xd59b98(0x176)](){const _0x6ce9c1=a0_0xd59b98;if(!this['isConnected'])return console['log']('[KafkaConsumer]\x20Consumer\x20not\x20connected'),!![];try{const _0x3a583d=_0x6ce9c1(0x186)[_0x6ce9c1(0x147)]('|');let _0x38867d=0x0;while(!![]){switch(_0x3a583d[_0x38867d++]){case'0':this['isPaused']=![];continue;case'1':this['isConnected']=![];continue;case'2':return!![];case'3':this[_0x6ce9c1(0x13c)]=![];continue;case'4':console['log']('[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected');continue;case'5':this[_0x6ce9c1(0x159)]&&(await this[_0x6ce9c1(0x159)]['stop'](),await this['consumer']['disconnect']());continue;}break;}}catch(_0x483b5c){return console[_0x6ce9c1(0x17a)]('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x483b5c[_0x6ce9c1(0x18c)]),![];}}async['seekToOffset'](_0x4b2ada,_0x5ca055,_0x892eb5){const _0x29a938=a0_0xd59b98;if(!this['isConnected'])return console['error'](_0x29a938(0x158)),![];try{return this['consumer']['seek']({'topic':_0x4b2ada,'partition':_0x5ca055,'offset':_0x892eb5['toString']()}),console[_0x29a938(0x143)](_0x29a938(0x181)+_0x892eb5+_0x29a938(0x135)+_0x4b2ada+':'+_0x5ca055),!![];}catch(_0x27770c){return console[_0x29a938(0x17a)](_0x29a938(0x1a1)+_0x27770c['message']),![];}}['getStatus'](){const _0x4ae0a4=a0_0xd59b98,_0x267398=this[_0x4ae0a4(0x145)]();return{'enabled':_0x267398['enabled'],'connected':this['isConnected'],'running':this[_0x4ae0a4(0x13c)],'paused':this[_0x4ae0a4(0x19e)],'brokers':_0x267398['brokers'],'clientId':_0x267398['clientId'],'groupId':this[_0x4ae0a4(0x149)],'subscribedTopics':this['subscribedTopics']};}[a0_0xd59b98(0x18f)](){const _0x521a39=a0_0xd59b98,_0x3d4e29={'qKajN':function(_0x3c4aaf,_0x59ac42){return _0x3c4aaf>_0x59ac42;},'Gysdf':function(_0x2ec747,_0x4a98eb){return _0x2ec747/_0x4a98eb;},'WUCiu':function(_0x542363,_0xf35c3e){return _0x542363+_0xf35c3e;},'lWhZI':function(_0x2e9c26,_0x2fa341){return _0x2e9c26/_0x2fa341;},'zlowK':function(_0x359d43,_0x3c4f4b){return _0x359d43+_0x3c4f4b;}},_0x1e9d50=_0x3d4e29['qKajN'](this['metrics'][_0x521a39(0x1a8)][_0x521a39(0x18b)],0x0)?_0x3d4e29[_0x521a39(0x144)](this[_0x521a39(0x15f)]['processingTimes'][_0x521a39(0x196)]((_0x1fb70a,_0x1a6750)=>_0x1fb70a+_0x1a6750,0x0),this['metrics']['processingTimes'][_0x521a39(0x18b)]):0x0,_0x55b329=this[_0x521a39(0x15f)]['processingTimes']['length']>0x0?Math[_0x521a39(0x138)](...this[_0x521a39(0x15f)][_0x521a39(0x1a8)]):0x0,_0x4ad014=this['metrics'][_0x521a39(0x1a8)]['length']>0x0?Math[_0x521a39(0x13f)](...this[_0x521a39(0x15f)]['processingTimes']):0x0;return{'messagesReceived':this['metrics'][_0x521a39(0x1a9)],'messagesProcessed':this[_0x521a39(0x15f)][_0x521a39(0x133)],'messagesFailed':this[_0x521a39(0x15f)]['messagesFailed'],'successRate':this[_0x521a39(0x15f)]['messagesReceived']>0x0?_0x3d4e29[_0x521a39(0x139)]((_0x3d4e29[_0x521a39(0x1a2)](this[_0x521a39(0x15f)][_0x521a39(0x133)],this['metrics'][_0x521a39(0x1a9)])*0x64)[_0x521a39(0x157)](0x2),'%'):'0%','lastMessageTime':this['metrics'][_0x521a39(0x1a3)],'startTime':this['metrics']['startTime'],'uptime':this['metrics'][_0x521a39(0x140)]?_0x3d4e29[_0x521a39(0x139)](Math['floor']((Date['now']()-this['metrics']['startTime'][_0x521a39(0x155)]())/0x3e8),'s'):'0s','processingTime':{'avg':Math['round'](_0x1e9d50)+'ms','min':_0x3d4e29['zlowK'](_0x55b329,'ms'),'max':_0x4ad014+'ms'}};}['resetMetrics'](){const _0x508840=a0_0xd59b98,_0x3ec3f5={'BAljM':_0x508840(0x187)};this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this[_0x508840(0x13c)]?new Date():null,'processingTimes':[]},console[_0x508840(0x143)](_0x3ec3f5['BAljM']);}async[a0_0xd59b98(0x1a6)](){await this['stop']();}}function a0_0x39d6(){const _0x5c3be0=['rvjst1i','mJHrshrVs0W','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','nxWXFdn8mhW0Fdi','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','AgvHCNrIzwf0sw50zxj2ywW','s0fgs0fFuKvuuLLFrevmqvK','tw1bEwm','BgvUz3rO','BwvZC2fNzq','v0fstG','icHNCM91CeLKoIa','z2v0twv0CMLJCW','ndqXntqWodrAAxPywvG','BwvZC2fNzxngywLSzwq','Bwf4qNL0zxnqzxjqyxj0AxrPB24','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','mta5mdKXn2HJA0nkuW','uuD1qNG','CMvKDwnL','s0fgs0fFqLjps0vsuW','ufHvBuu','vvLHBKK','Cgf1C2u','BwvZC2fNzuHHBMrSzxi','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','tLfhrg4','AxnqyxvZzwq','CMv0CNLezwXHEq','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','w0THzMTHq29UC3vTzxjDifnLzwSGzxjYB3i6ia','BfDOwKK','BgfZDe1LC3nHz2vuAw1L','s3LKALK','zxHWB3j0CW','y2XVC2u','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','ChjVy2vZC2LUz1rPBwvZ','BwvZC2fNzxnszwnLAxzLza','A2v5','yNjVA2vYCW','Dhj1zq','nZC4mdmWmK55uun1wa','BwvZC2fNzxnqCM9JzxnZzwq','mZaWma','ig9Uia','mZG5mdC0Aw1oB0n1','A2fMA2e','BwLU','v1vdAxu','C2HPzNq','C3vIC2nYAwjL','AxnsDw5UAw5N','mta0odu3nG','Bg9JywXOB3n0oJKWoti','Bwf4','C3rHCNruAw1L','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','Bg9N','r3LZzgy','z2v0q29UzMLN','yxv0B0nVBw1PDa','C3bSAxq','s0fgs0fFuKvuuLLFtufyx0rftefz','z3jVDxbjza','CMvZDgzVCMDLlq','DxvPza','s0fgs0fFu0fttf9vu0vstKfnrq','Bg9Ntgv2zwW','zw50CMLLCW','AxnjBML0AwfSAxPPBMC','B2zMC2v0','CgfYC2u','mZuYotzqvwvhrLC','s0fgs0fFu1nm','y29UBMvJDgLVBLbYB21PC2u','z2v0vgLTzq','DMfSDwu','Dg9gAxHLza','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','y29UC3vTzxi','AxndB25Uzwn0zwq','mtHfqM9nDKu','DgLTzxn0yw1W','C2vZC2LVBLrPBwvVDxq','Dg9tDhjPBMC','Bwv0CMLJCW','mtbUqvDsBNe','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLyMfSyw5JAw5NlI4U','zw5HyMXLza','s0fgs0fFu0vtu0LptL9usu1ft1vu','CgfYC2vizwfKzxjZ','oda3odK1yxvxA3jv','y29UC3vTzxiUzgLZy29UBMvJDa','mteYs1r4EfrR','CNvU','C2v0DxbfDMvUDeHHBMrSzxjZ','qLzmtgq','Aw5PDgLHBgL6zq','y29UBMvJDgLVBLrPBwvVDxq','C3vIC2nYAwjLzfrVCgLJCW','zw52','s0fgs0fFu0fttf9nruniqu5ju00','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','t1LIEKG','AgvHzgvYCW','uKLrteS','mtC1ndq1ngnIBxv0Aq','s0fgs0fFte9hx0XfvKvm','C3rVCa','CMvXDwvZDfrPBwvVDxq','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','ChvZAa','zxjYB3i','mtfMz2rzDwS','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignYyxnOzwq6ia','y29UBMvJDa','z2v0tg9Ntgv2zwW','AM9PBG','y1vjqMe','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','BM93'];a0_0x39d6=function(){return _0x5c3be0;};return a0_0x39d6();}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}function createInstance(){return new KafkaConsumerService();}function a0_0x5d44(_0x53c1dd,_0x17c30e){_0x53c1dd=_0x53c1dd-0x130;const _0x39d60c=a0_0x39d6();let _0x5d4448=_0x39d60c[_0x53c1dd];if(a0_0x5d44['aVKelO']===undefined){var _0x187823=function(_0x199d7c){const _0x4b1d9f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x23aeaf='',_0x16650c='';for(let _0x256d47=0x0,_0x5ee3bf,_0xfe572d,_0x130ca2=0x0;_0xfe572d=_0x199d7c['charAt'](_0x130ca2++);~_0xfe572d&&(_0x5ee3bf=_0x256d47%0x4?_0x5ee3bf*0x40+_0xfe572d:_0xfe572d,_0x256d47++%0x4)?_0x23aeaf+=String['fromCharCode'](0xff&_0x5ee3bf>>(-0x2*_0x256d47&0x6)):0x0){_0xfe572d=_0x4b1d9f['indexOf'](_0xfe572d);}for(let _0x50c2f2=0x0,_0x5c5e25=_0x23aeaf['length'];_0x50c2f2<_0x5c5e25;_0x50c2f2++){_0x16650c+='%'+('00'+_0x23aeaf['charCodeAt'](_0x50c2f2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x16650c);};a0_0x5d44['cOtmNG']=_0x187823,a0_0x5d44['WPNckR']={},a0_0x5d44['aVKelO']=!![];}const _0x4c837c=_0x39d60c[0x0],_0x202b1f=_0x53c1dd+_0x4c837c,_0x237ea6=a0_0x5d44['WPNckR'][_0x202b1f];return!_0x237ea6?(_0x5d4448=a0_0x5d44['cOtmNG'](_0x5d4448),a0_0x5d44['WPNckR'][_0x202b1f]=_0x5d4448):_0x5d4448=_0x237ea6,_0x5d4448;}module[a0_0xd59b98(0x1a5)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
1
+ const a0_0x3d2938=a0_0x4289;function a0_0x5b0e(){const _0x1293d3=['Bg9Ntgv2zwW','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','A2v5','yxv0B0nVBw1PDeLUDgvYDMfS','D3busve','AxnsDw5UAw5N','mJe2Dw9rsLLH','tK9useLorW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','zMXVB3i','mZaWma','tNzVufq','u3HRufy','BwThs3C','BwvZC2fNzxnszwnLAxzLza','zw50CMLLCW','zgvMyxvSDa','BgvUz3rO','mZaWmda','CMvZzxrnzxrYAwnZ','s0fgs0fFq0Xjru5ux0Le','zw52','s0fgs0fFu0fttf9qqvntv09sra','z2v0tg9Ntgv2zwW','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','s0fgs0fFu0vtu0LptL9usu1ft1vu','mta5ntHHCgHdrgW','qvfLugO','s0fgs0fFu0fttf9nruniqu5ju00','Dg9mB3DLCKnHC2u','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','Cgf1C2u','Bg9N','svjdzfC','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignVBM5Ly3rLzcb0BYbICM9RzxjZoIa','CgfYC2u','BwvZC2fNzq','Bwv0CMLJCW','m3W0Fdj8mxWWFdu','DufnsLC','s0fgs0fFuKvrvuvtvf9usu1ft1vu','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','zgLZy29UBMvJDa','CMvZDw1L','DxvPza','z3jVDxbjza','AxndB25Uzwn0zwq','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','C3rHCNruAw1L','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','ndGYnZe3nNrgthDoAW','DgLTzxn0yw1W','yxv0B0nVBw1PDa','mte4mK1sDu5gzW','mtq0ndvMvxrSsM0','CNvU','s0fgs0fFru5bqKXfra','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','y29UC3vTzxiUy3jHC2G','C3rHCNrdB25ZDw1PBMC','z2v0twv0CMLJCW','z2v0u3rHDhvZ','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','ChvZAa','BwLU','ntG4otfsr2rPvNK','icHMCM9TqMvNAw5UAw5NoIa','y29UC3vTzxiUC3rVCa','icHNCM91CeLKoIa','nteZn1bVquvuua','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','C3rVCa','mta0odu3nG','v0fstG','v1fqDeS','Dg9gAxHLza','s0fgs0fFqLjps0vsuW','ntqZze1by1HY','y2XPzw50swq','y29UBMvJDa','C2v0DxbfDMvUDeHHBMrSzxjZ','Ew9VEwK','C2vLAW','r0XgtvK','zw5HyMXLza','te9OwKG','CMvZDgzVCMDLlq','s0fgs0fFuKvuuLLFtufyx0rftefz','CMv0CNLbDhrLBxb0CW','ig9Uia','u0HIBvm','mte1nZbTtw5Ty2i','s0fgs0fFu1nm','Bg9JywXOB3n0oJKWoti','DMfSDwu','CgnfwvC','ChjVy2vZC2LUz1rPBwvZ','AfbJtLy','y29TBwL0t2zMC2v0CW','AxnqyxvZzwq','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','z2v0vgLTzq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','y29UBMvJDgLVBLbYB21PC2u','B2zMC2v0','CMv0CNLnyxHezwXHEq','mJuWmda','AxnbCNjHEq','AxnjBML0AwfSAxPPBMC','C3bSAxq','Cez2s0S','sfjvrMW','BwvZC2fNzxnqCM9JzxnZzwq','AgvHzgvYCW','C3vIC2nYAwjL','C2vLA1rVt2zMC2v0','Dhj1zq','Aw5PDgLHBgL6zq','CgfYC2vizwfKzxjZ','uKzuCfK','BgfZDe1LC3nHz2vuAw1L','BwfW','Dg9tDhjPBMC','yNjVA2vYCW','u0TVueC','y29UC3vTzxi','mtm5nZyXBff6EhPJ','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','BwvZC2fNzxngywLSzwq','C2HPzNq','BwvZC2fNzuHHBMrSzxi','ntmYndmYyxPkvMft','zxjYB3i','uvvOqMi','z2v0q29UzMLN','vw94z3C'];a0_0x5b0e=function(){return _0x1293d3;};return a0_0x5b0e();}(function(_0x5369ca,_0x3b4787){const _0x354a88=a0_0x4289,_0x4a158d=_0x5369ca();while(!![]){try{const _0x304f77=-parseInt(_0x354a88(0x192))/0x1+-parseInt(_0x354a88(0x128))/0x2*(-parseInt(_0x354a88(0x15c))/0x3)+-parseInt(_0x354a88(0x141))/0x4+parseInt(_0x354a88(0x145))/0x5*(parseInt(_0x354a88(0x144))/0x6)+parseInt(_0x354a88(0x150))/0x7*(parseInt(_0x354a88(0x19d))/0x8)+parseInt(_0x354a88(0x18d))/0x9+-parseInt(_0x354a88(0x16a))/0xa*(-parseInt(_0x354a88(0x154))/0xb);if(_0x304f77===_0x3b4787)break;else _0x4a158d['push'](_0x4a158d['shift']());}catch(_0x4c2e73){_0x4a158d['push'](_0x4a158d['shift']());}}}(a0_0x5b0e,0x939bd));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require(a0_0x3d2938(0x13a));class KafkaConsumerService{constructor(){const _0x528255=a0_0x3d2938,_0x492c77='4|8|10|0|3|9|6|7|1|5|2'['split']('|');let _0x3c3c06=0x0;while(!![]){switch(_0x492c77[_0x3c3c06++]){case'0':this[_0x528255(0x17b)]=![];continue;case'1':this['groupId']=null;continue;case'2':this[_0x528255(0x133)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};continue;case'3':this[_0x528255(0x19c)]=![];continue;case'4':this['kafka']=null;continue;case'5':this[_0x528255(0x191)]=null;continue;case'6':this['connectionPromise']=null;continue;case'7':this['subscribedTopics']=[];continue;case'8':this['consumer']=null;continue;case'9':this[_0x528255(0x172)]=![];continue;case'10':this['isConnected']=![];continue;}break;}}[a0_0x3d2938(0x195)](){const _0x85cfc=a0_0x3d2938,_0x446487={'NvoPT':_0x85cfc(0x183),'uAMJW':function(_0xf3a7f0,_0x18d58f){return _0xf3a7f0(_0x18d58f);},'LOhZH':_0x85cfc(0x120),'Uoxgw':function(_0x3628a6,_0x1977b6){return _0x3628a6(_0x1977b6);},'AQePj':_0x85cfc(0x157),'pFvKK':function(_0x4f3912,_0x329d3a){return _0x4f3912===_0x329d3a;},'DVQXx':'5000','hPcNV':'1000'};return{'enabled':process[_0x85cfc(0x123)][_0x85cfc(0x147)]===_0x446487[_0x85cfc(0x119)],'brokers':(process[_0x85cfc(0x123)][_0x85cfc(0x15b)]||_0x85cfc(0x16c))['split'](','),'clientId':process[_0x85cfc(0x123)][_0x85cfc(0x122)]||_0x85cfc(0x165)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x85cfc(0x11e))+'-consumer','connectionTimeout':_0x446487['uAMJW'](parseInt,process['env']['KAFKA_CONNECTION_TIMEOUT']||_0x85cfc(0x1a1)),'requestTimeout':_0x446487['uAMJW'](parseInt,process['env'][_0x85cfc(0x136)]||_0x85cfc(0x179)),'sessionTimeout':_0x446487[_0x85cfc(0x135)](parseInt,process['env'][_0x85cfc(0x127)]||_0x446487[_0x85cfc(0x164)]),'heartbeatInterval':_0x446487[_0x85cfc(0x196)](parseInt,process['env']['KAFKA_HEARTBEAT_INTERVAL']||'3000'),'maxBytesPerPartition':parseInt(process[_0x85cfc(0x123)]['KAFKA_MAX_BYTES_PER_PARTITION']||_0x446487[_0x85cfc(0x129)]),'autoCommit':_0x446487[_0x85cfc(0x17d)](process['env']['KAFKA_AUTO_COMMIT'],_0x446487['NvoPT']),'autoCommitInterval':parseInt(process['env']['KAFKA_AUTO_COMMIT_INTERVAL']||_0x446487['DVQXx']),'retryAttempts':parseInt(process[_0x85cfc(0x123)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process['env']['KAFKA_RETRY_DELAY']||_0x446487[_0x85cfc(0x170)]),'retryMaxDelay':_0x446487[_0x85cfc(0x135)](parseInt,process['env'][_0x85cfc(0x166)]||_0x85cfc(0x120)),'logLevel':process['env']['KAFKA_LOG_LEVEL']||'warn'};}[a0_0x3d2938(0x125)](_0x5e552a){const _0x5192e2=a0_0x3d2938,_0x32bc14={'nothing':logLevel[_0x5192e2(0x19e)],'error':logLevel['ERROR'],'warn':logLevel[_0x5192e2(0x158)],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x32bc14[_0x5e552a[_0x5192e2(0x12b)]()]||logLevel['WARN'];}async[a0_0x3d2938(0x184)](_0x5c5165={}){const _0x423fda=a0_0x3d2938,_0x27977b={'igUds':function(_0x48aa7f,_0x27af2b){return _0x48aa7f===_0x27af2b;},'RFTpY':_0x423fda(0x183),'qvBRd':'default','SxkPV':function(_0x160e1e,_0x2d1349){return _0x160e1e(_0x2d1349);},'QUhBb':_0x423fda(0x12c)},_0x408d57=this[_0x423fda(0x195)]();if(!_0x408d57['enabled'])return console[_0x423fda(0x12e)](_0x27977b[_0x423fda(0x194)]),![];if(this['isConnected'])return!![];if(this['isInitializing']&&this['connectionPromise'])return this['connectionPromise'];return this[_0x423fda(0x17b)]=!![],this[_0x423fda(0x176)]=new Promise(async _0x22c477=>{const _0x43fe7c=_0x423fda;try{let _0x23a95d=undefined;_0x27977b['igUds'](process['env'][_0x43fe7c(0x16b)],_0x27977b[_0x43fe7c(0x186)])&&(_0x23a95d=!![]);let _0x9caedf=undefined;process[_0x43fe7c(0x123)][_0x43fe7c(0x12a)]&&(_0x9caedf={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process['env'][_0x43fe7c(0x124)]||''}),this['kafka']=new Kafka({'clientId':_0x5c5165['clientId']||_0x408d57[_0x43fe7c(0x15d)],'brokers':_0x408d57[_0x43fe7c(0x18a)],'connectionTimeout':_0x408d57['connectionTimeout'],'requestTimeout':_0x408d57['requestTimeout'],'logLevel':this[_0x43fe7c(0x125)](_0x408d57[_0x43fe7c(0x197)]),'ssl':_0x23a95d,'sasl':_0x9caedf,'retry':{'initialRetryTime':_0x408d57['retryDelay'],'retries':_0x408d57[_0x43fe7c(0x167)],'maxRetryTime':_0x408d57[_0x43fe7c(0x178)]}}),this['groupId']=_0x5c5165['groupId']||_0x43fe7c(0x165)+(process['env'][_0x43fe7c(0x175)]||_0x27977b['qvBRd'])+'-consumer-group',this['consumer']=this['kafka']['consumer']({'groupId':this[_0x43fe7c(0x13b)],'sessionTimeout':_0x408d57['sessionTimeout'],'heartbeatInterval':_0x408d57['heartbeatInterval'],'maxBytesPerPartition':_0x408d57['maxBytesPerPartition'],'allowAutoTopicCreation':![]}),await this[_0x43fe7c(0x18c)][_0x43fe7c(0x15e)](),this[_0x43fe7c(0x13c)]=!![],console['log'](_0x43fe7c(0x130)+_0x408d57[_0x43fe7c(0x18a)]['join'](',\x20')+_0x43fe7c(0x153)+this[_0x43fe7c(0x13b)]+')'),this['setupEventHandlers'](),_0x22c477(!![]);}catch(_0x2a4a3f){console[_0x43fe7c(0x193)](_0x43fe7c(0x173)+_0x2a4a3f[_0x43fe7c(0x132)]),this['isConnected']=![],_0x27977b[_0x43fe7c(0x11a)](_0x22c477,![]);}finally{this['isInitializing']=![];}}),this['connectionPromise'];}[a0_0x3d2938(0x15f)](){const _0x2d4d20=a0_0x3d2938,_0x36a0f5={'HRUFl':'consumer.disconnect','GfUTx':_0x2d4d20(0x152),'KkhVj':'consumer.rebalancing'};if(!this[_0x2d4d20(0x18c)])return;this[_0x2d4d20(0x18c)]['on'](_0x36a0f5[_0x2d4d20(0x17e)],()=>{const _0x1a77a9=_0x2d4d20;console['log']('[KafkaConsumer]\x20Consumer\x20disconnected'),this[_0x1a77a9(0x13c)]=![],this[_0x1a77a9(0x19c)]=![];}),this['consumer']['on'](_0x36a0f5['GfUTx'],()=>{const _0x4b1149=_0x2d4d20;console['log']('[KafkaConsumer]\x20Consumer\x20stopped'),this[_0x4b1149(0x19c)]=![];}),this[_0x2d4d20(0x18c)]['on'](_0x2d4d20(0x149),_0x2dacb7=>{const _0x47f72a=_0x2d4d20;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x2dacb7['payload'][_0x47f72a(0x193)][_0x47f72a(0x132)]),this[_0x47f72a(0x19c)]=![];}),this[_0x2d4d20(0x18c)]['on'](_0x36a0f5['KkhVj'],()=>{console['log']('[KafkaConsumer]\x20Consumer\x20rebalancing...');});}async[a0_0x3d2938(0x181)](_0x591474,_0x14a250=![]){const _0x3b6872=a0_0x3d2938;if(!this['isConnected'])return console[_0x3b6872(0x193)](_0x3b6872(0x13d)),![];try{const _0x582c23=Array[_0x3b6872(0x17a)](_0x591474)?_0x591474:[_0x591474];for(const _0x5626d8 of _0x582c23){await this[_0x3b6872(0x18c)][_0x3b6872(0x181)]({'topic':_0x5626d8,'fromBeginning':_0x14a250}),console[_0x3b6872(0x12e)]('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x5626d8+_0x3b6872(0x151)+_0x14a250+')');}return this['subscribedTopics']=[...new Set([...this['subscribedTopics'],..._0x582c23])],!![];}catch(_0x7ba098){return console[_0x3b6872(0x193)]('[KafkaConsumer]\x20Subscribe\x20error:\x20'+_0x7ba098['message']),![];}}async[a0_0x3d2938(0x14a)](_0x432623,_0x49980f={}){const _0x573cfd=a0_0x3d2938,_0x8567b8={'fQvqT':function(_0x4a8a16,_0x927cd4){return _0x4a8a16+_0x927cd4;},'STTvy':function(_0x31bbfa,_0x105b7e){return _0x31bbfa-_0x105b7e;},'GxTgP':_0x573cfd(0x13f),'AjFMv':_0x573cfd(0x19f),'upuye':function(_0x585779,_0x1de37e){return _0x585779!==_0x1de37e;}};if(!this[_0x573cfd(0x13c)])return console['error'](_0x8567b8['GxTgP']),![];if(this[_0x573cfd(0x19c)])return console[_0x573cfd(0x12e)](_0x8567b8['AjFMv']),!![];const _0x5a5346=this[_0x573cfd(0x195)]();this['messageHandler']=_0x432623;try{return this[_0x573cfd(0x133)][_0x573cfd(0x13e)]=new Date(),await this[_0x573cfd(0x18c)][_0x573cfd(0x146)]({'autoCommit':_0x8567b8['upuye'](_0x49980f['autoCommit'],undefined)?_0x49980f[_0x573cfd(0x143)]:_0x5a5346['autoCommit'],'autoCommitInterval':_0x5a5346[_0x573cfd(0x19a)],'eachMessage':async({topic:_0xbe3832,partition:_0x305bda,message:_0x2e8162,heartbeat:_0x554977})=>{const _0x1f1342=_0x573cfd,_0x4c1535=Date['now']();this['metrics']['messagesReceived']++,this[_0x1f1342(0x133)][_0x1f1342(0x187)]=new Date();try{const _0xcb8ba2=_0x2e8162['value']?_0x2e8162[_0x1f1342(0x16d)][_0x1f1342(0x189)]():null;let _0x2e67bf=null;try{_0x2e67bf=_0xcb8ba2?JSON[_0x1f1342(0x131)](_0xcb8ba2):null;}catch(_0x4eca96){_0x2e67bf=_0xcb8ba2;}const _0x157f40={'topic':_0xbe3832,'partition':_0x305bda,'offset':_0x2e8162[_0x1f1342(0x177)],'key':_0x2e8162[_0x1f1342(0x199)]?_0x2e8162[_0x1f1342(0x199)]['toString']():null,'headers':this['parseHeaders'](_0x2e8162[_0x1f1342(0x180)]),'timestamp':_0x2e8162[_0x1f1342(0x142)],'value':_0x2e67bf,'raw':_0xcb8ba2};this[_0x1f1342(0x191)]&&await this['messageHandler'](_0x157f40);!_0x5a5346['autoCommit']&&await this[_0x1f1342(0x18c)][_0x1f1342(0x171)]([{'topic':_0xbe3832,'partition':_0x305bda,'offset':_0x8567b8['fQvqT'](parseInt(_0x2e8162['offset']),0x1)['toString']()}]);this['metrics'][_0x1f1342(0x17f)]++;const _0x1a03fe=_0x8567b8['STTvy'](Date['now'](),_0x4c1535);this[_0x1f1342(0x133)]['processingTimes'][_0x1f1342(0x14e)](_0x1a03fe),this['metrics'][_0x1f1342(0x16f)][_0x1f1342(0x11f)]>0x64&&this['metrics']['processingTimes'][_0x1f1342(0x190)](),await _0x554977();}catch(_0x4ed275){this[_0x1f1342(0x133)][_0x1f1342(0x18f)]++,console[_0x1f1342(0x193)](_0x1f1342(0x137)+_0x4ed275[_0x1f1342(0x132)]);throw _0x4ed275;}}}),this[_0x573cfd(0x19c)]=!![],console[_0x573cfd(0x12e)](_0x573cfd(0x126)+this['subscribedTopics']['join'](',\x20')),!![];}catch(_0x1fa15a){return console[_0x573cfd(0x193)](_0x573cfd(0x14d)+_0x1fa15a[_0x573cfd(0x132)]),![];}}[a0_0x3d2938(0x185)](_0x3b0239){const _0xe276a5=a0_0x3d2938;if(!_0x3b0239)return{};const _0x4e8e88={};for(const [_0x18e54d,_0xd0ae69]of Object[_0xe276a5(0x11d)](_0x3b0239)){_0x4e8e88[_0x18e54d]=_0xd0ae69?_0xd0ae69['toString']():null;}return _0x4e8e88;}async['pause'](){const _0x2ec04e=a0_0x3d2938,_0x1e5851={'wpTIQ':_0x2ec04e(0x140),'SKoPG':_0x2ec04e(0x155)};if(!this['isConnected']||!this['isRunning'])return console[_0x2ec04e(0x12e)](_0x1e5851[_0x2ec04e(0x19b)]),![];if(this[_0x2ec04e(0x172)])return console['log']('[KafkaConsumer]\x20Consumer\x20already\x20paused'),!![];try{const _0x1eaf2b=this['subscribedTopics'][_0x2ec04e(0x188)](_0x49e158=>({'topic':_0x49e158}));return this[_0x2ec04e(0x18c)][_0x2ec04e(0x12d)](_0x1eaf2b),this[_0x2ec04e(0x172)]=!![],console[_0x2ec04e(0x12e)](_0x1e5851[_0x2ec04e(0x18b)]),!![];}catch(_0x144e64){return console[_0x2ec04e(0x193)](_0x2ec04e(0x198)+_0x144e64[_0x2ec04e(0x132)]),![];}}async[a0_0x3d2938(0x139)](){const _0x174455=a0_0x3d2938,_0x23cebf={'JLKcu':'[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running','GLFMY':'[KafkaConsumer]\x20Consumer\x20resumed'};if(!this['isConnected']||!this['isRunning'])return console['log'](_0x23cebf['JLKcu']),![];if(!this['isPaused'])return console['log']('[KafkaConsumer]\x20Consumer\x20not\x20paused'),!![];try{const _0x1be4fc=this['subscribedTopics']['map'](_0x1c3f72=>({'topic':_0x1c3f72}));return this['consumer']['resume'](_0x1be4fc),this[_0x174455(0x172)]=![],console['log'](_0x23cebf[_0x174455(0x162)]),!![];}catch(_0x5e2b0b){return console[_0x174455(0x193)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x5e2b0b['message']),![];}}async[a0_0x3d2938(0x156)](){const _0x44d98a=a0_0x3d2938,_0x4f95f2={'vDjHf':_0x44d98a(0x134),'WQPtK':'[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'};if(!this[_0x44d98a(0x13c)])return console[_0x44d98a(0x12e)](_0x44d98a(0x148)),!![];try{const _0x29aea1=_0x4f95f2['vDjHf'][_0x44d98a(0x17c)]('|');let _0x1bde93=0x0;while(!![]){switch(_0x29aea1[_0x1bde93++]){case'0':console['log'](_0x4f95f2[_0x44d98a(0x159)]);continue;case'1':this['isPaused']=![];continue;case'2':this['isRunning']=![];continue;case'3':this['consumer']&&(await this[_0x44d98a(0x18c)]['stop'](),await this['consumer'][_0x44d98a(0x138)]());continue;case'4':this[_0x44d98a(0x13c)]=![];continue;case'5':return!![];}break;}}catch(_0x2e9845){return console[_0x44d98a(0x193)]('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x2e9845['message']),![];}}async[a0_0x3d2938(0x182)](_0x483585,_0x5b0eab,_0x5b710c){const _0x23645b=a0_0x3d2938;if(!this[_0x23645b(0x13c)])return console['error'](_0x23645b(0x18e)),![];try{return this['consumer'][_0x23645b(0x161)]({'topic':_0x483585,'partition':_0x5b0eab,'offset':_0x5b710c[_0x23645b(0x189)]()}),console[_0x23645b(0x12e)]('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x5b710c+_0x23645b(0x168)+_0x483585+':'+_0x5b0eab),!![];}catch(_0x15daab){return console['error']('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x15daab[_0x23645b(0x132)]),![];}}[a0_0x3d2938(0x14c)](){const _0x3e00a3=a0_0x3d2938,_0x257f40=this[_0x3e00a3(0x195)]();return{'enabled':_0x257f40[_0x3e00a3(0x163)],'connected':this[_0x3e00a3(0x13c)],'running':this['isRunning'],'paused':this[_0x3e00a3(0x172)],'brokers':_0x257f40['brokers'],'clientId':_0x257f40['clientId'],'groupId':this[_0x3e00a3(0x13b)],'subscribedTopics':this['subscribedTopics']};}[a0_0x3d2938(0x14b)](){const _0x106c21=a0_0x3d2938,_0x10b3e6={'SHbmS':function(_0x126f3e,_0x2f3d76){return _0x126f3e/_0x2f3d76;},'UWEQT':function(_0x49b821,_0x285aaf){return _0x49b821>_0x285aaf;},'VaCzV':function(_0x52cd75,_0x4052f6){return _0x52cd75>_0x4052f6;},'pcEYW':function(_0x4f47d8,_0x35a9f6){return _0x4f47d8+_0x35a9f6;},'mkGKw':function(_0x19a270,_0x14908c){return _0x19a270*_0x14908c;},'IRCdW':function(_0x4a6f45,_0x3bfdc3){return _0x4a6f45/_0x3bfdc3;},'yooyi':function(_0x11161c,_0x45f18d){return _0x11161c-_0x45f18d;}},_0x1d22fe=this[_0x106c21(0x133)]['processingTimes'][_0x106c21(0x11f)]>0x0?_0x10b3e6[_0x106c21(0x169)](this[_0x106c21(0x133)][_0x106c21(0x16f)]['reduce']((_0x48f41e,_0x556839)=>_0x48f41e+_0x556839,0x0),this[_0x106c21(0x133)]['processingTimes']['length']):0x0,_0x5eb3c3=this['metrics'][_0x106c21(0x16f)][_0x106c21(0x11f)]>0x0?Math[_0x106c21(0x14f)](...this['metrics'][_0x106c21(0x16f)]):0x0,_0x178fc6=_0x10b3e6['UWEQT'](this[_0x106c21(0x133)][_0x106c21(0x16f)]['length'],0x0)?Math['max'](...this[_0x106c21(0x133)]['processingTimes']):0x0;return{'messagesReceived':this['metrics'][_0x106c21(0x11c)],'messagesProcessed':this['metrics'][_0x106c21(0x17f)],'messagesFailed':this[_0x106c21(0x133)]['messagesFailed'],'successRate':_0x10b3e6['VaCzV'](this[_0x106c21(0x133)]['messagesReceived'],0x0)?_0x10b3e6[_0x106c21(0x16e)](_0x10b3e6[_0x106c21(0x11b)](this['metrics']['messagesProcessed']/this[_0x106c21(0x133)][_0x106c21(0x11c)],0x64)[_0x106c21(0x15a)](0x2),'%'):'0%','lastMessageTime':this[_0x106c21(0x133)][_0x106c21(0x187)],'startTime':this['metrics']['startTime'],'uptime':this['metrics'][_0x106c21(0x13e)]?_0x10b3e6[_0x106c21(0x16e)](Math[_0x106c21(0x1a0)](_0x10b3e6[_0x106c21(0x12f)](_0x10b3e6[_0x106c21(0x160)](Date['now'](),this['metrics']['startTime'][_0x106c21(0x174)]()),0x3e8)),'s'):'0s','processingTime':{'avg':Math['round'](_0x1d22fe)+'ms','min':_0x5eb3c3+'ms','max':_0x10b3e6['pcEYW'](_0x178fc6,'ms')}};}[a0_0x3d2938(0x121)](){const _0x3cfb1f=a0_0x3d2938,_0x14162f={'GEUgt':'[KafkaConsumer]\x20Metrics\x20reset'};this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console[_0x3cfb1f(0x12e)](_0x14162f['GEUgt']);}async['close'](){await this['stop']();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function a0_0x4289(_0x41f7b7,_0x4a9f40){_0x41f7b7=_0x41f7b7-0x119;const _0x5b0e3b=a0_0x5b0e();let _0x42892e=_0x5b0e3b[_0x41f7b7];if(a0_0x4289['FHiIlj']===undefined){var _0x31079d=function(_0x128c59){const _0x586710='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1a5e46='',_0x14bf74='';for(let _0x32a3d6=0x0,_0x12baf5,_0x544806,_0x5d4e7a=0x0;_0x544806=_0x128c59['charAt'](_0x5d4e7a++);~_0x544806&&(_0x12baf5=_0x32a3d6%0x4?_0x12baf5*0x40+_0x544806:_0x544806,_0x32a3d6++%0x4)?_0x1a5e46+=String['fromCharCode'](0xff&_0x12baf5>>(-0x2*_0x32a3d6&0x6)):0x0){_0x544806=_0x586710['indexOf'](_0x544806);}for(let _0x5d1d5e=0x0,_0xd4db27=_0x1a5e46['length'];_0x5d1d5e<_0xd4db27;_0x5d1d5e++){_0x14bf74+='%'+('00'+_0x1a5e46['charCodeAt'](_0x5d1d5e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x14bf74);};a0_0x4289['PuEAot']=_0x31079d,a0_0x4289['cLrNOB']={},a0_0x4289['FHiIlj']=!![];}const _0x38a58d=_0x5b0e3b[0x0],_0x40a1ad=_0x41f7b7+_0x38a58d,_0x107e5b=a0_0x4289['cLrNOB'][_0x40a1ad];return!_0x107e5b?(_0x42892e=a0_0x4289['PuEAot'](_0x42892e),a0_0x4289['cLrNOB'][_0x40a1ad]=_0x42892e):_0x42892e=_0x107e5b,_0x42892e;}function resetInstance(){instance&&(instance['close'](),instance=null);}function createInstance(){return new KafkaConsumerService();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
@@ -1 +1 @@
1
- const a0_0x4749ce=a0_0x414b;(function(_0x124a52,_0x38c37e){const _0x2f1bdf=a0_0x414b,_0x22ba29=_0x124a52();while(!![]){try{const _0x5149cd=-parseInt(_0x2f1bdf(0x1e2))/0x1*(parseInt(_0x2f1bdf(0x1cf))/0x2)+-parseInt(_0x2f1bdf(0x1a0))/0x3+parseInt(_0x2f1bdf(0x1d4))/0x4*(parseInt(_0x2f1bdf(0x1ae))/0x5)+-parseInt(_0x2f1bdf(0x1cc))/0x6+-parseInt(_0x2f1bdf(0x1b0))/0x7*(-parseInt(_0x2f1bdf(0x1ba))/0x8)+-parseInt(_0x2f1bdf(0x191))/0x9*(parseInt(_0x2f1bdf(0x1c1))/0xa)+-parseInt(_0x2f1bdf(0x196))/0xb*(-parseInt(_0x2f1bdf(0x1af))/0xc);if(_0x5149cd===_0x38c37e)break;else _0x22ba29['push'](_0x22ba29['shift']());}catch(_0x3528a9){_0x22ba29['push'](_0x22ba29['shift']());}}}(a0_0x1d7d,0x8fb4b));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require(a0_0x4749ce(0x1ab));function a0_0x414b(_0x3708ea,_0x2d39a7){_0x3708ea=_0x3708ea-0x18b;const _0x1d7d22=a0_0x1d7d();let _0x414b51=_0x1d7d22[_0x3708ea];if(a0_0x414b['aOkdsA']===undefined){var _0x3149af=function(_0x14ce4d){const _0x3f9541='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4f94c8='',_0x45bdd3='';for(let _0x4f53e9=0x0,_0x25ceb3,_0x1ef352,_0x5a7994=0x0;_0x1ef352=_0x14ce4d['charAt'](_0x5a7994++);~_0x1ef352&&(_0x25ceb3=_0x4f53e9%0x4?_0x25ceb3*0x40+_0x1ef352:_0x1ef352,_0x4f53e9++%0x4)?_0x4f94c8+=String['fromCharCode'](0xff&_0x25ceb3>>(-0x2*_0x4f53e9&0x6)):0x0){_0x1ef352=_0x3f9541['indexOf'](_0x1ef352);}for(let _0x17de0f=0x0,_0x56a72=_0x4f94c8['length'];_0x17de0f<_0x56a72;_0x17de0f++){_0x45bdd3+='%'+('00'+_0x4f94c8['charCodeAt'](_0x17de0f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x45bdd3);};a0_0x414b['NsGviF']=_0x3149af,a0_0x414b['gYCHjR']={},a0_0x414b['aOkdsA']=!![];}const _0x184421=_0x1d7d22[0x0],_0x129728=_0x3708ea+_0x184421,_0x4b12b4=a0_0x414b['gYCHjR'][_0x129728];return!_0x4b12b4?(_0x414b51=a0_0x414b['NsGviF'](_0x414b51),a0_0x414b['gYCHjR'][_0x129728]=_0x414b51):_0x414b51=_0x4b12b4,_0x414b51;}class KafkaService{constructor(){const _0x5d63c0=a0_0x4749ce;this['kafka']=null,this['producer']=null,this[_0x5d63c0(0x1a9)]=![],this['isInitializing']=![],this['connectionPromise']=null;}['getConfig'](){const _0x374831=a0_0x4749ce,_0x53676b={'nMtXp':function(_0x43d8d7,_0x27ee9e){return _0x43d8d7===_0x27ee9e;},'hykjO':'true','RIlNj':'3000','utNUO':_0x374831(0x1d0),'rkzxP':'default','YbDTn':_0x374831(0x1c0)};return{'enabled':_0x53676b[_0x374831(0x18c)](process['env']['KAFKA_ENABLED'],_0x53676b['hykjO']),'brokers':(process['env']['KAFKA_BROKERS']||_0x374831(0x1c2))[_0x374831(0x19c)](','),'clientId':process[_0x374831(0x1e1)]['KAFKA_CLIENT_ID']||'restforge-'+(process['env'][_0x374831(0x1d7)]||'default')+_0x374831(0x1dd),'connectionTimeout':parseInt(process[_0x374831(0x1e1)]['KAFKA_CONNECTION_TIMEOUT']||_0x53676b['RIlNj']),'requestTimeout':parseInt(process['env'][_0x374831(0x1e4)]||_0x374831(0x1b9)),'topicPattern':process[_0x374831(0x1e1)][_0x374831(0x18d)]||_0x53676b[_0x374831(0x1ad)],'tenantId':process[_0x374831(0x1e1)][_0x374831(0x198)]||_0x53676b['rkzxP'],'retryAttempts':parseInt(process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process['env']['KAFKA_RETRY_DELAY']||_0x53676b[_0x374831(0x1a5)]),'logLevel':process['env'][_0x374831(0x1da)]||_0x374831(0x1c4)};}[a0_0x4749ce(0x1a4)](_0x479110){const _0x3cecae=a0_0x4749ce,_0x4875e4={'nothing':logLevel[_0x3cecae(0x195)],'error':logLevel[_0x3cecae(0x1b1)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel[_0x3cecae(0x1b3)]};return _0x4875e4[_0x479110['toLowerCase']()]||logLevel['WARN'];}async['initialize'](){const _0x5f1b04=a0_0x4749ce,_0x30eb71={'FfgIQ':function(_0x303cb3,_0x38425f){return _0x303cb3===_0x38425f;},'IhdAN':'producer.disconnect','WTfQr':function(_0x1687a7,_0x542786){return _0x1687a7(_0x542786);},'SxzYy':_0x5f1b04(0x1c6)},_0x27e105=this[_0x5f1b04(0x1a1)]();if(!_0x27e105[_0x5f1b04(0x1bf)])return console['log'](_0x30eb71['SxzYy']),![];if(this['isConnected'])return!![];if(this['isInitializing']&&this[_0x5f1b04(0x1b4)])return this[_0x5f1b04(0x1b4)];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x52ccdb=>{const _0x48814d=_0x5f1b04;try{let _0x30b8b8=undefined;_0x30eb71[_0x48814d(0x1c5)](process[_0x48814d(0x1e1)]['KAFKA_SSL'],_0x48814d(0x1e0))&&(_0x30b8b8=!![]);let _0x128a83=undefined;process[_0x48814d(0x1e1)]['KAFKA_SASL_MECHANISM']&&(_0x128a83={'mechanism':process[_0x48814d(0x1e1)]['KAFKA_SASL_MECHANISM'],'username':process[_0x48814d(0x1e1)]['KAFKA_SASL_USERNAME']||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x27e105[_0x48814d(0x199)],'brokers':_0x27e105[_0x48814d(0x190)],'connectionTimeout':_0x27e105['connectionTimeout'],'requestTimeout':_0x27e105['requestTimeout'],'logLevel':this['getLogLevel'](_0x27e105[_0x48814d(0x1de)]),'ssl':_0x30b8b8,'sasl':_0x128a83,'retry':{'initialRetryTime':_0x27e105['retryDelay'],'retries':_0x27e105['retryAttempts']}}),this['producer']=this[_0x48814d(0x1b7)]['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x48814d(0x1cd)]}),await this['producer']['connect'](),this[_0x48814d(0x1a9)]=!![],console[_0x48814d(0x19a)](_0x48814d(0x1b8)+_0x27e105[_0x48814d(0x190)]['join'](',\x20')),this['producer']['on'](_0x30eb71['IhdAN'],()=>{const _0x43a932=_0x48814d;console[_0x43a932(0x19a)]('[Kafka]\x20Producer\x20disconnected'),this[_0x43a932(0x1a9)]=![];}),_0x30eb71[_0x48814d(0x1bc)](_0x52ccdb,!![]);}catch(_0x5ae548){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x5ae548[_0x48814d(0x19b)]),this['isConnected']=![],_0x52ccdb(![]);}finally{this['isInitializing']=![];}}),this['connectionPromise'];}[a0_0x4749ce(0x1c7)](_0x4c05c0){const _0x346625=a0_0x4749ce,_0x53bd08={'unpgF':function(_0x37c982,_0x28a4ae){return _0x37c982(_0x28a4ae);},'NeeOo':function(_0x48a20e,_0x5bd863){return _0x48a20e(_0x5bd863);},'syFiE':function(_0x5285c6,_0x57f1be){return _0x5285c6(_0x57f1be);}},_0x50ff6f=_0x4c05c0||new Date(),_0x18ade0=_0x50ff6f[_0x346625(0x1b5)](),_0x2c3219=_0x53bd08[_0x346625(0x194)](String,_0x50ff6f['getMonth']()+0x1)[_0x346625(0x1ce)](0x2,'0'),_0x164f8b=String(_0x50ff6f['getDate']())[_0x346625(0x1ce)](0x2,'0'),_0x43e1dd=_0x53bd08['NeeOo'](String,_0x50ff6f['getHours']())[_0x346625(0x1ce)](0x2,'0'),_0x232563=_0x53bd08[_0x346625(0x1ac)](String,_0x50ff6f['getMinutes']())[_0x346625(0x1ce)](0x2,'0'),_0x59e462=String(_0x50ff6f['getSeconds']())[_0x346625(0x1ce)](0x2,'0');return _0x18ade0+'-'+_0x2c3219+'-'+_0x164f8b+'\x20'+_0x43e1dd+':'+_0x232563+':'+_0x59e462;}[a0_0x4749ce(0x197)](_0x17d8c3,_0x326c27,_0x107d1a,_0x166aab=null){const _0x5455e3=a0_0x4749ce;if(_0x166aab)return _0x166aab;const _0xd518af=this[_0x5455e3(0x1a1)]()['topicPattern'];return _0xd518af[_0x5455e3(0x192)]('{module}',_0x17d8c3)[_0x5455e3(0x192)]('{endpoint}',_0x326c27)['replace']('{action}',_0x107d1a);}[a0_0x4749ce(0x1db)](_0x3f6bc7,_0x1523dd,_0x1b4072,_0x532f48={}){const _0x75140a=a0_0x4749ce,_0x5e958e={'SAGDU':function(_0x3d2575){return _0x3d2575();},'gCEcb':function(_0x5c6fa1){return _0x5c6fa1();},'oHEpT':_0x75140a(0x1bb)},_0x618e1c=new Date(),_0x35ac27=this['formatDateTime'](_0x618e1c),_0x555c30=_0x532f48['correlationId']||_0x75140a(0x1d2)+_0x5e958e[_0x75140a(0x18f)](uuidv7);return{'eventId':_0x75140a(0x18e)+_0x5e958e['gCEcb'](uuidv7),'eventType':_0x3f6bc7,'eventTime':_0x35ac27,'eventVersion':_0x75140a(0x19f),'source':'restforge-'+(_0x532f48[_0x75140a(0x1d1)]||'unknown'),'correlationId':_0x555c30,'newData':_0x1b4072,'oldData':_0x1523dd,'metadata':{'createdBy':_0x532f48['createdBy']||'SYSTEM','createdAt':_0x35ac27,'systemId':'RESTFORGE-'+(_0x532f48['module']||_0x5e958e[_0x75140a(0x1bd)])[_0x75140a(0x1d9)](),'tenantId':this[_0x75140a(0x1a1)]()[_0x75140a(0x19d)],'endpoint':_0x532f48[_0x75140a(0x1a3)]||null,'tableName':_0x532f48[_0x75140a(0x18b)]||null}};}async[a0_0x4749ce(0x1c9)](_0x73c12f,_0x461d3c,_0x103b23,_0x482a37,_0x39d41b={}){const _0x449346=a0_0x4749ce,_0x2ecbb4={'pEqjY':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','ghwRw':function(_0x1e3425,_0x51e6f2){return _0x1e3425(_0x51e6f2);}},_0x288a7e=this[_0x449346(0x1a1)]();if(!_0x288a7e[_0x449346(0x1bf)])return{'success':![],'reason':'Kafka\x20producer\x20is\x20disabled','published':![]};if(!this[_0x449346(0x1a9)]){const _0x3906c7=await this['initialize']();if(!_0x3906c7)return{'success':![],'reason':_0x2ecbb4['pEqjY'],'published':![]};}try{const _0x32e822=this['buildEventMessage'](_0x461d3c,_0x103b23,_0x482a37,_0x39d41b),_0x4c04c7=_0x39d41b['keyField']||'id',_0x52fd7c=_0x482a37?.[_0x4c04c7]||_0x103b23?.[_0x4c04c7]||uuidv7(),_0x950327=await this[_0x449346(0x1d3)][_0x449346(0x1c3)]({'topic':_0x73c12f,'messages':[{'key':_0x2ecbb4['ghwRw'](String,_0x52fd7c),'value':JSON[_0x449346(0x1a7)](_0x32e822),'headers':{'event-type':_0x461d3c,'correlation-id':_0x32e822[_0x449346(0x1dc)],'source':_0x32e822[_0x449346(0x1d5)]}}]});return console['log'](_0x449346(0x1b2)+_0x73c12f+':\x20'+_0x461d3c+_0x449346(0x1b6)+_0x52fd7c+')'),{'success':!![],'correlationId':_0x32e822['correlationId'],'topic':_0x73c12f,'partition':_0x950327[0x0]?.[_0x449346(0x193)],'offset':_0x950327[0x0]?.[_0x449346(0x19e)],'published':!![]};}catch(_0x43e6b6){return console[_0x449346(0x1a2)]('[Kafka]\x20Publish\x20error\x20to\x20'+_0x73c12f+':\x20'+_0x43e6b6['message']),{'success':![],'error':_0x43e6b6[_0x449346(0x19b)],'published':![]};}}async[a0_0x4749ce(0x1d8)](_0xfe66f1,_0x2de646,_0x2fffc6,_0x498b0a={}){const _0x979495=a0_0x4749ce,_0x4b73bc=this[_0x979495(0x197)](_0xfe66f1,_0x2de646,_0x979495(0x1be),_0x498b0a['topic']);return this['publishEvent'](_0x4b73bc,_0x979495(0x1a6),null,_0x2fffc6,{'module':_0xfe66f1,'endpoint':_0x2de646,'keyField':_0x498b0a[_0x979495(0x1cb)],'tableName':_0x498b0a[_0x979495(0x18b)],'correlationId':_0x498b0a['correlationId']});}async['publishUpdate'](_0x433806,_0x29dd9f,_0x2b5a7f,_0x2c2991,_0x2373d1={}){const _0x38dfd3=a0_0x4749ce,_0x235214={'GOHrw':'ENTITY_UPDATED'},_0x201d5a=this[_0x38dfd3(0x197)](_0x433806,_0x29dd9f,_0x38dfd3(0x1d6),_0x2373d1[_0x38dfd3(0x1e3)]);return this[_0x38dfd3(0x1c9)](_0x201d5a,_0x235214['GOHrw'],_0x2b5a7f,_0x2c2991,{'module':_0x433806,'endpoint':_0x29dd9f,'keyField':_0x2373d1[_0x38dfd3(0x1cb)],'tableName':_0x2373d1[_0x38dfd3(0x18b)],'correlationId':_0x2373d1[_0x38dfd3(0x1dc)]});}async['publishDelete'](_0x51dd3d,_0x3b791e,_0x8704d,_0x372674={}){const _0x18f9c8=a0_0x4749ce,_0x5ccccb={'tkcTV':'deleted','wmppP':'ENTITY_DELETED'},_0x19a2a2=this[_0x18f9c8(0x197)](_0x51dd3d,_0x3b791e,_0x5ccccb[_0x18f9c8(0x1ca)],_0x372674['topic']);return this[_0x18f9c8(0x1c9)](_0x19a2a2,_0x5ccccb['wmppP'],_0x8704d,null,{'module':_0x51dd3d,'endpoint':_0x3b791e,'keyField':_0x372674[_0x18f9c8(0x1cb)],'tableName':_0x372674['tableName'],'correlationId':_0x372674[_0x18f9c8(0x1dc)]});}[a0_0x4749ce(0x1df)](){const _0x3671d4=a0_0x4749ce,_0x16a07e=this[_0x3671d4(0x1a1)]();return{'enabled':_0x16a07e[_0x3671d4(0x1bf)],'connected':this[_0x3671d4(0x1a9)],'brokers':_0x16a07e[_0x3671d4(0x190)],'clientId':_0x16a07e[_0x3671d4(0x199)],'topicPattern':_0x16a07e[_0x3671d4(0x1aa)]};}async[a0_0x4749ce(0x1a8)](){const _0x7ea809=a0_0x4749ce,_0x864755={'JnikP':_0x7ea809(0x1c8)};if(this[_0x7ea809(0x1d3)]&&this[_0x7ea809(0x1a9)])try{await this['producer']['disconnect'](),this[_0x7ea809(0x1a9)]=![],console['log'](_0x864755['JnikP']);}catch(_0x35c91b){console[_0x7ea809(0x1a2)]('[Kafka]\x20Error\x20disconnecting:\x20'+_0x35c91b['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){const _0x1a6dd2=a0_0x4749ce;instance&&(instance[_0x1a6dd2(0x1a8)](),instance=null);}function a0_0x1d7d(){const _0x545c29=['yNvPBgrfDMvUDe1LC3nHz2u','y29YCMvSyxrPB25jza','lxbYB2r1y2vY','Bg9Ntgv2zwW','z2v0u3rHDhvZ','Dhj1zq','zw52','m1HzB2PpCW','Dg9WAwm','s0fgs0fFuKvrvuvtvf9usu1ft1vu','DgfIBgvoyw1L','BK10wha','s0fgs0fFve9qsunFuefuvevstG','zxz0lq','u0fhrfu','yNjVA2vYCW','nZCZndK0mK5mrxD6qW','CMvWBgfJzq','CgfYDgL0Aw9U','Dw5Wz0y','tK9useLorW','nJCWodeZENftrxDg','yNvPBgruB3bPy05HBwu','s0fgs0fFvevoqu5ux0Le','y2XPzw50swq','Bg9N','BwvZC2fNzq','C3bSAxq','DgvUyw50swq','yMfZzu9MzNnLDa','ms4W','mJq5mtu2zejczMLy','z2v0q29UzMLN','zxjYB3i','zw5KCg9PBNq','z2v0tg9Ntgv2zwW','wwjevg4','ru5usvrzx0nsrufuruq','C3rYAw5NAwz5','y2XVC2u','AxndB25Uzwn0zwq','Dg9WAwnqyxr0zxjU','DxvPza','C3LgAuu','Dxrovu8','mJy3mJi5mfHTy29ACW','mJa0AMTVCNDw','ndmYmtfzzwTUBhq','rvjst1i','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','revcvuC','y29UBMvJDgLVBLbYB21PC2u','z2v0rNvSBfLLyxi','icHRzxK6ia','A2fMA2e','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','mJuWmda','mtq0ogHcB2LUqG','Dw5RBM93BG','v1rMuxi','B0HfCfq','y3jLyxrLza','zw5HyMXLza','mtaWma','mtbvtNPYAeG','Bg9JywXOB3n0oJKWoti','C2vUza','D2fYBG','rMzNsve','w0THzMTHxsblywzRysbWCM9KDwnLCIbPCYbKAxnHyMXLzcbPBIbJB25MAwD1CMf0Aw9U','zM9YBwf0rgf0zvrPBwu','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','ChvIBgLZAev2zw50','DgTJvfy','A2v5rMLLBgq','mJq2ntC4nhLgvvrXvq','tgvNywn5ugfYDgL0Aw9Uzxi','CgfKu3rHCNq','ndK3nJa2sM5mug1g','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','Bw9KDwXL','y29YCI0','ChjVzhvJzxi','nfDoqwDbvq','C291CMnL','DxbKyxrLza','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ChvIBgLZAeLUC2vYDa','Dg9vChbLCKnHC2u','s0fgs0fFte9hx0XfvKvm'];a0_0x1d7d=function(){return _0x545c29;};return a0_0x1d7d();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
1
+ const a0_0x4982e7=a0_0x4936;(function(_0x3bf623,_0x13a8f8){const _0x49fa11=a0_0x4936,_0x4be598=_0x3bf623();while(!![]){try{const _0x7f1878=parseInt(_0x49fa11(0xa9))/0x1*(-parseInt(_0x49fa11(0xb5))/0x2)+parseInt(_0x49fa11(0xa7))/0x3+parseInt(_0x49fa11(0xbb))/0x4*(-parseInt(_0x49fa11(0x8e))/0x5)+-parseInt(_0x49fa11(0xd5))/0x6*(parseInt(_0x49fa11(0xbd))/0x7)+-parseInt(_0x49fa11(0xac))/0x8*(-parseInt(_0x49fa11(0xad))/0x9)+-parseInt(_0x49fa11(0xe0))/0xa*(-parseInt(_0x49fa11(0x9d))/0xb)+parseInt(_0x49fa11(0xae))/0xc;if(_0x7f1878===_0x13a8f8)break;else _0x4be598['push'](_0x4be598['shift']());}catch(_0x23ea4a){_0x4be598['push'](_0x4be598['shift']());}}}(a0_0x3d2a,0x45517));function a0_0x3d2a(){const _0x5675c4=['n3zqsePKuG','ms4W','s0fgs0fFru5bqKXfra','A2fMA2e','DgfIBgvoyw1L','z2v0twLUDxrLCW','mJuWmda','lxbYB2r1y2vY','zw52','E2vUzhbVAw50Fq','ChvIBgLZAev2zw50','AxnjBML0AwfSAxPPBMC','BwvZC2fNzq','Dg9WAwnqyxr0zxjU','zxjYB3i','s0fgs0fFu1nm','y29UBMvJDgLVBLbYB21PC2u','revcvuC','BK9urvm','CgfKu3rHCNq','AxndB25Uzwn0zwq','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','y3jLyxrLza','r1ngwxe','nZmZmdm4y1z5t3Dk','zgvSzxrLza','zM9YBwf0rgf0zvrPBwu','z2v0u3rHDhvZ','rePUDwy','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','Dg9mB3DLCKnHC2u','zw5KCg9PBNq','Aerwy2C','EvnrAwC','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','ndqWmtyWwevpyu5f','s0fgs0fFu0fttf9nruniqu5ju00','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','C2vUza','s0fgs0fFq0Xjru5ux0Le','shbRz1C','s0fgs0fFuKvuuLLFrevmqvK','Bg9JywXOB3n0oJKWoti','DxvPza','CMvZDgzVCMDLlq','zgLZy29UBMvJDa','Bg9Ntgv2zwW','Dg9vChbLCKnHC2u','s0fgs0fFuKvrvuvtvf9usu1ft1vu','C3bSAxq','Evzxqvu','z2v0tw9UDgG','mNWZFdf8mhW0','C3rYAw5NAwz5','yNvPBgruB3bPy05HBwu','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','ChvIBgLZAerLBgv0zq','CMvWBgfJzq','mZy1q2D6s2Ty','y2XVC2u','r0r3sNu','vMvky24','Dhj1zq','y2XPzw50swq','EMf0uwO','w0THzMTHxsbdB25Uzwn0Aw9UigzHAwXLzdOG','rerdwvy','yNjVA2vYCW','tgvNywn5ugfYDgL0Aw9Uzxi','zw5HyMXLza','s0fgs0fFte9hx0XfvKvm','A2v5rMLLBgq','CgfYDgL0Aw9U','nZDfBuPtBNK','A2fMA2fQCW','ChvIBgLZAfvWzgf0zq','zxHWB3j0CW','ChjVzhvJzxi','z2v0q29UzMLN','mtaWma','s0fgs0fFve9qsunFuefuvevstG','AhHiy2q','icHRzxK6ia','ode3otKYENLXBfje','uvngsMq','ntiXnZKXr0r1EhnX','mZaWma','Aw5PDgLHBgL6zq','mtzqEfnrs3i','mZy2ndyYuKH3tMv2','nZmXndK4nezPBxrMwa','y29YCI0','C291CMnL','v2HysvK','v0fstG','y29YCMvSyxrPB25jza','Dw5RBM93BG','mLb1BMrhAG','Dg9WAwm','ru5usvrzx0nsrufuruq','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','z2v0sg91CNm','Bw9KDwXL','mtG4ndrqCwzQDxy','Bg9N'];a0_0x3d2a=function(){return _0x5675c4;};return a0_0x3d2a();}const {Kafka,logLevel,Partitioners}=require(a0_0x4982e7(0x9e)),{v7:uuidv7}=require(a0_0x4982e7(0xe8));function a0_0x4936(_0x6e2220,_0x2ea18e){_0x6e2220=_0x6e2220-0x8c;const _0x3d2a27=a0_0x3d2a();let _0x4936ee=_0x3d2a27[_0x6e2220];if(a0_0x4936['OtoOCv']===undefined){var _0x334d16=function(_0x28b47f){const _0x3b402a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2851dc='',_0x53ac7d='';for(let _0x2775ba=0x0,_0x740ae1,_0x2065f1,_0x2f200b=0x0;_0x2065f1=_0x28b47f['charAt'](_0x2f200b++);~_0x2065f1&&(_0x740ae1=_0x2775ba%0x4?_0x740ae1*0x40+_0x2065f1:_0x2065f1,_0x2775ba++%0x4)?_0x2851dc+=String['fromCharCode'](0xff&_0x740ae1>>(-0x2*_0x2775ba&0x6)):0x0){_0x2065f1=_0x3b402a['indexOf'](_0x2065f1);}for(let _0x4d7b7c=0x0,_0x5c7643=_0x2851dc['length'];_0x4d7b7c<_0x5c7643;_0x4d7b7c++){_0x53ac7d+='%'+('00'+_0x2851dc['charCodeAt'](_0x4d7b7c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x53ac7d);};a0_0x4936['fppNCO']=_0x334d16,a0_0x4936['AUwucy']={},a0_0x4936['OtoOCv']=!![];}const _0x2652a3=_0x3d2a27[0x0],_0x3a6221=_0x6e2220+_0x2652a3,_0x5a8c7c=a0_0x4936['AUwucy'][_0x3a6221];return!_0x5a8c7c?(_0x4936ee=a0_0x4936['fppNCO'](_0x4936ee),a0_0x4936['AUwucy'][_0x3a6221]=_0x4936ee):_0x4936ee=_0x5a8c7c,_0x4936ee;}class KafkaService{constructor(){const _0xa4abda=a0_0x4982e7,_0x4f913b={'yVWAU':_0xa4abda(0xf1)},_0x294002=_0x4f913b[_0xa4abda(0xef)][_0xa4abda(0xee)]('|');let _0x187630=0x0;while(!![]){switch(_0x294002[_0x187630++]){case'0':this[_0xa4abda(0xc8)]=![];continue;case'1':this['isConnected']=![];continue;case'2':this['kafka']=null;continue;case'3':this[_0xa4abda(0xa1)]=null;continue;case'4':this['connectionPromise']=null;continue;}break;}}[a0_0x4982e7(0xa2)](){const _0x3218d9=a0_0x4982e7,_0x2f4136={'miYld':_0x3218d9(0x92),'GDwJu':'default','VeJcn':function(_0x192246,_0x3fed44){return _0x192246(_0x3fed44);},'QSFJd':_0x3218d9(0xc3),'GSFYq':function(_0x470ff1,_0x1373c5){return _0x470ff1(_0x1373c5);},'VqRIo':_0x3218d9(0xa3),'xkrGD':'warn'};return{'enabled':process[_0x3218d9(0xc5)][_0x3218d9(0xbf)]===_0x2f4136['miYld'],'brokers':(process[_0x3218d9(0xc5)]['KAFKA_BROKERS']||_0x3218d9(0xe7))['split'](','),'clientId':process['env'][_0x3218d9(0xe4)]||_0x3218d9(0xe9)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x2f4136[_0x3218d9(0x90)])+_0x3218d9(0xc4),'connectionTimeout':parseInt(process[_0x3218d9(0xc5)]['KAFKA_CONNECTION_TIMEOUT']||_0x3218d9(0xaa)),'requestTimeout':_0x2f4136[_0x3218d9(0x91)](parseInt,process['env'][_0x3218d9(0xed)]||_0x2f4136[_0x3218d9(0xa8)]),'topicPattern':process[_0x3218d9(0xc5)][_0x3218d9(0xa4)]||_0x3218d9(0xb8),'tenantId':process[_0x3218d9(0xc5)]['KAFKA_TENANT_ID']||'default','retryAttempts':_0x2f4136[_0x3218d9(0xd4)](parseInt,process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0x2f4136[_0x3218d9(0xd4)](parseInt,process[_0x3218d9(0xc5)][_0x3218d9(0xe6)]||_0x2f4136['VqRIo']),'logLevel':process['env'][_0x3218d9(0x9a)]||_0x2f4136['xkrGD']};}['getLogLevel'](_0x537d2d){const _0x38d7c4=a0_0x4982e7,_0xdf119={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel[_0x38d7c4(0xb2)],'info':logLevel['INFO'],'debug':logLevel[_0x38d7c4(0xce)]};return _0xdf119[_0x537d2d[_0x38d7c4(0xdb)]()]||logLevel['WARN'];}async[a0_0x4982e7(0xab)](){const _0x296057=a0_0x4982e7,_0x58a296={'vElTv':'[Kafka]\x20Producer\x20disconnected','hDVcg':'producer.disconnect','vKpQt':function(_0x4ff748,_0x56d31e){return _0x4ff748(_0x56d31e);}},_0x2c1a08=this['getConfig']();if(!_0x2c1a08[_0x296057(0x99)])return console[_0x296057(0xbc)]('[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'),![];if(this['isConnected'])return!![];if(this[_0x296057(0xc8)]&&this['connectionPromise'])return this['connectionPromise'];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x6a641=>{const _0x5aacf5=_0x296057;try{let _0x34b808=undefined;process['env'][_0x5aacf5(0xcc)]==='true'&&(_0x34b808=!![]);let _0x137ee3=undefined;process['env'][_0x5aacf5(0xe1)]&&(_0x137ee3={'mechanism':process['env'][_0x5aacf5(0xe1)],'username':process[_0x5aacf5(0xc5)]['KAFKA_SASL_USERNAME']||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x2c1a08[_0x5aacf5(0x93)],'brokers':_0x2c1a08['brokers'],'connectionTimeout':_0x2c1a08['connectionTimeout'],'requestTimeout':_0x2c1a08['requestTimeout'],'logLevel':this['getLogLevel'](_0x2c1a08[_0x5aacf5(0xeb)]),'ssl':_0x34b808,'sasl':_0x137ee3,'retry':{'initialRetryTime':_0x2c1a08['retryDelay'],'retries':_0x2c1a08['retryAttempts']}}),this['producer']=this[_0x5aacf5(0xc0)]['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x5aacf5(0x98)]}),await this[_0x5aacf5(0xa1)]['connect'](),this[_0x5aacf5(0xd1)]=!![],console['log']('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x2c1a08[_0x5aacf5(0x97)]['join'](',\x20')),this['producer']['on'](_0x58a296[_0x5aacf5(0xdd)],()=>{console['log'](_0x58a296['vElTv']),this['isConnected']=![];}),_0x58a296['vKpQt'](_0x6a641,!![]);}catch(_0x1254a4){console['error'](_0x5aacf5(0x95)+_0x1254a4[_0x5aacf5(0xc9)]),this['isConnected']=![],_0x6a641(![]);}finally{this[_0x5aacf5(0xc8)]=![];}}),this[_0x296057(0xcd)];}[a0_0x4982e7(0xd7)](_0x84d7e6){const _0x3856fc=a0_0x4982e7,_0x292b05={'WhXIY':function(_0x488a60,_0x14b877){return _0x488a60+_0x14b877;},'DJnuf':function(_0x122a2e,_0x3efcb0){return _0x122a2e(_0x3efcb0);}},_0x3f36ed=_0x84d7e6||new Date(),_0x124539=_0x3f36ed['getFullYear'](),_0x4ea666=String(_0x292b05[_0x3856fc(0xb1)](_0x3f36ed[_0x3856fc(0xf0)](),0x1))['padStart'](0x2,'0'),_0x4814ad=String(_0x3f36ed['getDate']())['padStart'](0x2,'0'),_0x331e83=_0x292b05['DJnuf'](String,_0x3f36ed[_0x3856fc(0xb9)]())[_0x3856fc(0xd0)](0x2,'0'),_0x4d5a86=_0x292b05[_0x3856fc(0xd9)](String,_0x3f36ed[_0x3856fc(0xc2)]())['padStart'](0x2,'0'),_0x230d52=_0x292b05[_0x3856fc(0xd9)](String,_0x3f36ed['getSeconds']())['padStart'](0x2,'0');return _0x124539+'-'+_0x4ea666+'-'+_0x4814ad+'\x20'+_0x331e83+':'+_0x4d5a86+':'+_0x230d52;}[a0_0x4982e7(0xf3)](_0x495458,_0x2af7e8,_0x45ccf5,_0x3bab25=null){const _0x2de7c0=a0_0x4982e7,_0x1c6735={'AImLz':'{action}'};if(_0x3bab25)return _0x3bab25;const _0x30f66d=this['getConfig']()[_0x2de7c0(0xca)];return _0x30f66d[_0x2de7c0(0x8d)]('{module}',_0x495458)['replace'](_0x2de7c0(0xc6),_0x2af7e8)[_0x2de7c0(0x8d)](_0x1c6735['AImLz'],_0x45ccf5);}['buildEventMessage'](_0x22b194,_0x2edb99,_0x207804,_0x561d49={}){const _0xd4ae42=a0_0x4982e7,_0x331fd5={'ySQig':function(_0x2186fd){return _0x2186fd();},'zatQj':_0xd4ae42(0xb4)},_0x118771=new Date(),_0x34fb26=this['formatDateTime'](_0x118771),_0x56108d=_0x561d49['correlationId']||_0xd4ae42(0xaf)+uuidv7();return{'eventId':'evt-'+_0x331fd5[_0xd4ae42(0xde)](uuidv7),'eventType':_0x22b194,'eventTime':_0x34fb26,'eventVersion':_0xd4ae42(0xbe),'source':_0xd4ae42(0xe9)+(_0x561d49['module']||_0x331fd5[_0xd4ae42(0x94)]),'correlationId':_0x56108d,'newData':_0x207804,'oldData':_0x2edb99,'metadata':{'createdBy':_0x561d49['createdBy']||'SYSTEM','createdAt':_0x34fb26,'systemId':'RESTFORGE-'+(_0x561d49[_0xd4ae42(0xba)]||_0xd4ae42(0xb4))[_0xd4ae42(0xec)](),'tenantId':this[_0xd4ae42(0xa2)]()['tenantId'],'endpoint':_0x561d49[_0xd4ae42(0xdc)]||null,'tableName':_0x561d49['tableName']||null}};}async[a0_0x4982e7(0xc7)](_0x307504,_0xbc010d,_0x391f6b,_0x3e1352,_0x51767e={}){const _0x1cf1e5=a0_0x4982e7,_0x7d05af={'hxHcd':_0x1cf1e5(0xe2),'rTipL':function(_0x56eb1c){return _0x56eb1c();},'DDCYV':function(_0x19e36d,_0x3fdd15){return _0x19e36d(_0x3fdd15);}},_0x3cd70b=this['getConfig']();if(!_0x3cd70b[_0x1cf1e5(0x99)])return{'success':![],'reason':_0x7d05af[_0x1cf1e5(0xa5)],'published':![]};if(!this[_0x1cf1e5(0xd1)]){const _0x52b1ec=await this[_0x1cf1e5(0xab)]();if(!_0x52b1ec)return{'success':![],'reason':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','published':![]};}try{const _0x26093d=this['buildEventMessage'](_0xbc010d,_0x391f6b,_0x3e1352,_0x51767e),_0x5c7f85=_0x51767e[_0x1cf1e5(0x9b)]||'id',_0x41d8a6=_0x3e1352?.[_0x5c7f85]||_0x391f6b?.[_0x5c7f85]||_0x7d05af['rTipL'](uuidv7),_0x51bbd9=await this[_0x1cf1e5(0xa1)][_0x1cf1e5(0xe3)]({'topic':_0x307504,'messages':[{'key':_0x7d05af[_0x1cf1e5(0x96)](String,_0x41d8a6),'value':JSON[_0x1cf1e5(0xf2)](_0x26093d),'headers':{'event-type':_0xbc010d,'correlation-id':_0x26093d['correlationId'],'source':_0x26093d[_0x1cf1e5(0xb0)]}}]});return console[_0x1cf1e5(0xbc)](_0x1cf1e5(0xf4)+_0x307504+':\x20'+_0xbc010d+_0x1cf1e5(0xa6)+_0x41d8a6+')'),{'success':!![],'correlationId':_0x26093d['correlationId'],'topic':_0x307504,'partition':_0x51bbd9[0x0]?.[_0x1cf1e5(0x9c)],'offset':_0x51bbd9[0x0]?.['baseOffset'],'published':!![]};}catch(_0x559ea2){return console[_0x1cf1e5(0xcb)](_0x1cf1e5(0xda)+_0x307504+':\x20'+_0x559ea2['message']),{'success':![],'error':_0x559ea2['message'],'published':![]};}}async['publishInsert'](_0x28da13,_0x56f203,_0xf9df87,_0x1f317d={}){const _0x289ab7=a0_0x4982e7,_0x28de4=this['buildTopicName'](_0x28da13,_0x56f203,_0x289ab7(0xd3),_0x1f317d['topic']);return this[_0x289ab7(0xc7)](_0x28de4,_0x289ab7(0xb7),null,_0xf9df87,{'module':_0x28da13,'endpoint':_0x56f203,'keyField':_0x1f317d['keyField'],'tableName':_0x1f317d[_0x289ab7(0xc1)],'correlationId':_0x1f317d['correlationId']});}async[a0_0x4982e7(0x9f)](_0x1628fe,_0x253850,_0x5f3d87,_0x31844d,_0x4245a6={}){const _0x1d049b=a0_0x4982e7,_0x57de70={'HpkgW':'updated'},_0x1fc494=this[_0x1d049b(0xf3)](_0x1628fe,_0x253850,_0x57de70[_0x1d049b(0xe5)],_0x4245a6[_0x1d049b(0xb6)]);return this['publishEvent'](_0x1fc494,'ENTITY_UPDATED',_0x5f3d87,_0x31844d,{'module':_0x1628fe,'endpoint':_0x253850,'keyField':_0x4245a6['keyField'],'tableName':_0x4245a6['tableName'],'correlationId':_0x4245a6['correlationId']});}async[a0_0x4982e7(0x8c)](_0x15276b,_0x30f622,_0xf5fd5d,_0x3bcd17={}){const _0x377034=a0_0x4982e7,_0x4f6ba5={'nOTES':_0x377034(0xd6)},_0x9f1817=this[_0x377034(0xf3)](_0x15276b,_0x30f622,_0x4f6ba5[_0x377034(0xcf)],_0x3bcd17[_0x377034(0xb6)]);return this['publishEvent'](_0x9f1817,'ENTITY_DELETED',_0xf5fd5d,null,{'module':_0x15276b,'endpoint':_0x30f622,'keyField':_0x3bcd17['keyField'],'tableName':_0x3bcd17['tableName'],'correlationId':_0x3bcd17[_0x377034(0xb3)]});}[a0_0x4982e7(0xd8)](){const _0x4c5e7f=a0_0x4982e7,_0x36cb67=this['getConfig']();return{'enabled':_0x36cb67[_0x4c5e7f(0x99)],'connected':this[_0x4c5e7f(0xd1)],'brokers':_0x36cb67['brokers'],'clientId':_0x36cb67['clientId'],'topicPattern':_0x36cb67[_0x4c5e7f(0xca)]};}async[a0_0x4982e7(0x8f)](){const _0x51d48a=a0_0x4982e7,_0x705f24={'XiAzE':_0x51d48a(0xdf)};if(this['producer']&&this['isConnected'])try{await this['producer'][_0x51d48a(0xea)](),this[_0x51d48a(0xd1)]=![],console['log'](_0x705f24['XiAzE']);}catch(_0xeb999d){console[_0x51d48a(0xcb)](_0x51d48a(0xd2)+_0xeb999d[_0x51d48a(0xc9)]);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}module[a0_0x4982e7(0xa0)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
@@ -1 +1 @@
1
- const a0_0x3685c3=a0_0xf753;function a0_0xf753(_0x7238a3,_0x5f3e18){_0x7238a3=_0x7238a3-0x1a2;const _0x13d828=a0_0x13d8();let _0xf753aa=_0x13d828[_0x7238a3];if(a0_0xf753['nOPCob']===undefined){var _0x27263f=function(_0x5090c7){const _0x12a62c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5dc452='',_0x19398e='';for(let _0x2900d8=0x0,_0x15c20b,_0x99b64b,_0x2543b8=0x0;_0x99b64b=_0x5090c7['charAt'](_0x2543b8++);~_0x99b64b&&(_0x15c20b=_0x2900d8%0x4?_0x15c20b*0x40+_0x99b64b:_0x99b64b,_0x2900d8++%0x4)?_0x5dc452+=String['fromCharCode'](0xff&_0x15c20b>>(-0x2*_0x2900d8&0x6)):0x0){_0x99b64b=_0x12a62c['indexOf'](_0x99b64b);}for(let _0x58f800=0x0,_0x5740c6=_0x5dc452['length'];_0x58f800<_0x5740c6;_0x58f800++){_0x19398e+='%'+('00'+_0x5dc452['charCodeAt'](_0x58f800)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x19398e);};a0_0xf753['NAqulD']=_0x27263f,a0_0xf753['Iywqya']={},a0_0xf753['nOPCob']=!![];}const _0xe5640=_0x13d828[0x0],_0x4afe03=_0x7238a3+_0xe5640,_0x5bb84f=a0_0xf753['Iywqya'][_0x4afe03];return!_0x5bb84f?(_0xf753aa=a0_0xf753['NAqulD'](_0xf753aa),a0_0xf753['Iywqya'][_0x4afe03]=_0xf753aa):_0xf753aa=_0x5bb84f,_0xf753aa;}(function(_0x1a2b2a,_0x33356e){const _0x2a6a4e=a0_0xf753,_0x407ef0=_0x1a2b2a();while(!![]){try{const _0x1d538c=parseInt(_0x2a6a4e(0x1ee))/0x1*(parseInt(_0x2a6a4e(0x1ca))/0x2)+-parseInt(_0x2a6a4e(0x1b6))/0x3*(parseInt(_0x2a6a4e(0x1c9))/0x4)+-parseInt(_0x2a6a4e(0x1d9))/0x5*(-parseInt(_0x2a6a4e(0x1ef))/0x6)+-parseInt(_0x2a6a4e(0x1e2))/0x7+-parseInt(_0x2a6a4e(0x1e0))/0x8+-parseInt(_0x2a6a4e(0x1be))/0x9+-parseInt(_0x2a6a4e(0x1ab))/0xa*(-parseInt(_0x2a6a4e(0x1de))/0xb);if(_0x1d538c===_0x33356e)break;else _0x407ef0['push'](_0x407ef0['shift']());}catch(_0x856cdc){_0x407ef0['push'](_0x407ef0['shift']());}}}(a0_0x13d8,0xe8db4));const dotenv=require(a0_0x3685c3(0x1d3)),path=require(a0_0x3685c3(0x1d8)),fs=require('fs'),{v7:uuidv7}=require('uuid');dotenv['config']();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,a0_0x3685c3(0x1bd));if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x3685c3(0x1ed)](a0_0x3685c3(0x1f6)+messagehubPath);else throw new Error(a0_0x3685c3(0x1ac)+messagehubPath);}catch(a0_0x2e60e2){console['error']('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x2e60e2['message']);throw a0_0x2e60e2;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function a0_0x13d8(){const _0x2521a1=['twfrwhe','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','qNnSDKq','BwvZC2fNzq','u3vIC2nYAwjLieTLEtOG','Dg9mB2nHBgvtDhjPBMC','ksbWywrHia','s29UzMLNDxjHC2KGugXHDgzVCM06ia','Ehv4B0u','Bg9N','murKDKzfCa','nduYmJj3t0zttw0','igrPDgvYAw1Hig9SzwGG','u3rHDhvZieXPC3rLBMvYoIa','CxvfDfG','zK5ozKu','EKHPzvO','CMnUsLa','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','t0v5Exq','twvUz2LYAw0GCgvZyw4GA2uGC2vYDMvYlI4U','C0znsum','CMvHC29U','zNvUy3rPB24','sKDUEg4','zgLZy29UBMvJDa','DMfNsve','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','CMvJzwL2zxjjza','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','CMvXDwLYzufJAW','mZi1ntyWmgjkwKXMrq','twvZC2fNzuH1yIbtreSGBM90igzVDw5Kigf0ia','q2XPzw50ieLel1vZzxjjrdOG','AxnfCNjVCLjLBgf0zwq','vw5RBM93BIbLCNjVCG','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','CgLK','CMvZDgzVCMDL','EeLNv0i','ChvIBgLZAa','AxLJr3m','mJiXmdDKwK1TBKu','C3rYAw5NAwz5','y29UzMLYBwf0Aw9Uq291BNq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','Dg9ju09tDhjPBMC','zxbxAe4','yNjVywrJyxn0','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','ntGYmdKYmvbPv0jAEG','Aw5fD0q','tND5DwO','Cg1pyK0','yuPmrNG','BMfTzq','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','C3vIC2nYAwjLs2v5','uMTyuxG','u3vNDeK','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','nZG4rgHfq1zH','mZu5mtCWogPlCwHLvG','tvnivujFvvnfuL9jra','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','twvZC2fNzsbuExbLoIa','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUigrPC2nVBM5Ly3qOkq','Bg9JywXOB3n0','q2HHBM5LBcbuyxjNzxq6ia','B2nRDKi','q29UBMvJDgLVBIb0Aw1LB3v0','zg90zw52','BwvZC2fNzs1YzwnLAxzLza','zw52','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','tvnivujFq09ntvvosunbveLptL9uwvbf','Cgf0Aa','oty1u1veCwvP','y2HHBM5LBa','Dhj1zq','CgXHDgzVCM1dB25MAwC','y2f0zwDVCNK','ntvoyxrOy20','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','mti1mZK5mKfqB2jOvW','CMvJzwL2zxjjBMzV','mte2oduXmJHJBNr2wMe','C29JA2v0'];a0_0x13d8=function(){return _0x2521a1;};return a0_0x13d8();}function log(_0x51418c){const _0x352d37=a0_0x3685c3,_0x4486c3=new Date()[_0x352d37(0x1ba)]();console['log']('['+_0x4486c3+']\x20'+_0x51418c);}async function initMessageHub(){const _0x4161bf=a0_0x3685c3,_0xf3d90a={'rcnJP':function(_0x2b2461,_0x19266e){return _0x2b2461(_0x19266e);},'zHieZ':function(_0x41a166,_0x35b308){return _0x41a166===_0x35b308;},'xIgWB':'Tidak\x20diketahui','ockvB':function(_0xab3da7,_0x4da880){return _0xab3da7(_0x4da880);},'JGnxn':function(_0x286f9f,_0x5b3f69){return _0x286f9f(_0x5b3f69);},'inEwD':'message-sent','RkXQx':function(_0x36055d,_0xdb6112){return _0x36055d(_0xdb6112);},'qvTVL':'⚠️\x20Timeout:\x20Tidak\x20dapat\x20terhubung\x20ke\x20MessageHub\x20server\x20dalam\x20waktu\x20yang\x20ditentukan','QOJcW':_0x4161bf(0x1d2),'aJLFx':function(_0x4deb79,_0x370f95){return _0x4deb79(_0x370f95);},'MaQXq':'Mode:\x20Koneksi\x20Nyata','vagIQ':function(_0x4e589f,_0x344426){return _0x4e589f===_0x344426;},'sFMIC':_0x4161bf(0x1db),'KWhOv':_0x4161bf(0x1b0),'BslvD':function(_0xae4713,_0x21cb6a,_0x2f9ed2){return _0xae4713(_0x21cb6a,_0x2f9ed2);},'epWhN':'Error\x20inisialisasi\x20MessageHub:','OEyyt':function(_0x378ed3,_0x4d838f){return _0x378ed3&&_0x4d838f;}};if(_0xf3d90a[_0x4161bf(0x1f7)](messagehub,isConnected))return log('MessageHub\x20sudah\x20terhubung,\x20menggunakan\x20koneksi\x20yang\x20ada'),!![];if(connectionPromise)return _0xf3d90a[_0x4161bf(0x1f5)](log,_0x4161bf(0x1d6)),connectionPromise;return connectionPromise=new Promise(async(_0xd5d66f,_0x515c09)=>{const _0x4e98b4=_0x4161bf;try{_0xf3d90a[_0x4e98b4(0x1d1)](log,'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======'),_0xf3d90a[_0x4e98b4(0x1c2)](log,'Waktu\x20Inisialisasi:\x20'+new Date()[_0x4e98b4(0x1e9)]()),_0xf3d90a[_0x4e98b4(0x1c6)](log,_0xf3d90a[_0x4e98b4(0x1e4)]);const _0x1f5aab={'publishKey':process['env']['MSHUB_PUBLISH_KEY'],'subscribeKey':process['env']['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x4e98b4(0x1d5)][_0x4e98b4(0x1cb)]||'restforge-'+(process['env'][_0x4e98b4(0x1b9)]||'default')+'-'+process[_0x4e98b4(0x1b1)],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x4e98b4(0x1bc),'autoAcknowledge':_0xf3d90a[_0x4e98b4(0x1a6)](process[_0x4e98b4(0x1d5)]['MSHUB_AUTO_ACKNOWLEDGE'],_0xf3d90a['sFMIC']),'acknowledgeMessages':process[_0x4e98b4(0x1d5)]['MSHUB_ACKNOWLEDGE_MESSAGES']===_0xf3d90a[_0x4e98b4(0x1f9)],'platform':{'type':process['env'][_0x4e98b4(0x1d7)]||'websocket','host':process[_0x4e98b4(0x1d5)]['MSHUB_HOST']||_0x4e98b4(0x1cf),'api_port':_0xf3d90a[_0x4e98b4(0x1d1)](parseInt,process['env']['MSHUB_API_PORT']||0xdf8),'service_port':_0xf3d90a['JGnxn'](parseInt,process[_0x4e98b4(0x1d5)]['MSHUB_SERVICE_PORT']||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x1f5aab),_0xf3d90a['rcnJP'](log,'======\x20INFORMASI\x20CLIENT\x20MESSAGEHUB\x20======'),log(_0x4e98b4(0x1ad)+messagehub['userId']),_0xf3d90a['RkXQx'](log,'Publish\x20Key:\x20'+messagehub['publishKey']),log(_0x4e98b4(0x1e8)+messagehub[_0x4e98b4(0x1c5)]),log('Tipe\x20Komunikasi:\x20'+messagehub['communicationType']),_0xf3d90a[_0x4e98b4(0x1d1)](log,_0x4e98b4(0x1eb)+JSON[_0x4e98b4(0x1b7)](messagehub[_0x4e98b4(0x1dc)])),log(_0xf3d90a['KWhOv']),messagehub['addListener']({'status':function(_0x1cc48c){const _0xed0cf6=_0x4e98b4;_0xf3d90a[_0xed0cf6(0x1f5)](log,_0xed0cf6(0x1f1)+_0x1cc48c['category']);if(_0x1cc48c['category']==='connected')_0xf3d90a['rcnJP'](log,'Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0xd5d66f(!![]);else{if(_0xf3d90a['zHieZ'](_0x1cc48c[_0xed0cf6(0x1dd)],'disconnected')){const _0x1154c7=_0xf3d90a['zHieZ'](_0x1cc48c[_0xed0cf6(0x1ae)],!![]);!_0x1154c7&&(_0xf3d90a[_0xed0cf6(0x1f5)](log,_0xed0cf6(0x1a9)+(_0x1cc48c[_0xed0cf6(0x1a2)]||_0xf3d90a[_0xed0cf6(0x1b3)])),isConnected=![],connectionPromise&&(_0xf3d90a[_0xed0cf6(0x1d1)](_0x515c09,new Error('Koneksi\x20terputus:\x20'+(_0x1cc48c['reason']||_0xf3d90a[_0xed0cf6(0x1b3)]))),connectionPromise=null));}else{if(_0xf3d90a[_0xed0cf6(0x1f4)](_0x1cc48c[_0xed0cf6(0x1dd)],'error')){let _0x5ac38e=_0x1cc48c['errorDetail']||_0x1cc48c['error']||_0xed0cf6(0x1af);_0xf3d90a[_0xed0cf6(0x1a4)](log,'⚠️\x20Error:\x20'+_0x5ac38e),isConnected=![],connectionPromise&&(_0xf3d90a['rcnJP'](_0x515c09,new Error(_0x5ac38e)),connectionPromise=null);}else{if(_0xf3d90a[_0xed0cf6(0x1f4)](_0x1cc48c['category'],_0xf3d90a[_0xed0cf6(0x1bf)]))log(_0xed0cf6(0x1e5)+_0x1cc48c['requestId']);else{if(_0x1cc48c['category']===_0xed0cf6(0x1d4)){const _0xcc1f71=_0x1cc48c['receiverInfo']?.[_0xed0cf6(0x1c3)]||'Unknown',_0x41d01e=_0x1cc48c[_0xed0cf6(0x1e1)]?.['id']||_0x1cc48c[_0xed0cf6(0x1a8)],_0x37905c=new Date(_0x1cc48c['receiverInfo']?.['receivedAt']||_0x1cc48c['receivedAt']||new Date())['toLocaleTimeString']();log(_0xed0cf6(0x1c4)+_0x1cc48c['requestId']+_0xed0cf6(0x1f0)+_0xcc1f71+'\x20('+_0x41d01e+_0xed0cf6(0x1ea)+_0x37905c+'.\x20Total\x20konfirmasi:\x20'+(_0x1cc48c[_0xed0cf6(0x1b8)]||0x1));}}}}}}}),timeoutHandler=_0xf3d90a[_0x4e98b4(0x1e6)](setTimeout,()=>{const _0x31ff9b=_0x4e98b4;!isConnected&&connectionPromise&&(_0xf3d90a[_0x31ff9b(0x1c6)](log,_0xf3d90a['qvTVL']),_0x515c09(new Error(_0xf3d90a['QOJcW'])),connectionPromise=null);},0x2710);}catch(_0x40aeb2){log('⚠️\x20Error\x20inisialisasi\x20MessageHub:\x20'+_0x40aeb2[_0x4e98b4(0x1e7)]),console['error'](_0xf3d90a[_0x4e98b4(0x1bb)],_0x40aeb2),connectionPromise=null,_0x515c09(_0x40aeb2);}}),connectionPromise;}async function publishMessage(_0x3bdb74,_0x5053de,_0x5667e0,_0x33f924={}){const _0xb1fc8e=a0_0x3685c3,_0x74e7c2={'pmObM':function(_0x35edd4,_0x5e161f){return _0x35edd4(_0x5e161f);},'DOofO':'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======','llHEX':function(_0x4e25a6,_0x3cc4bb){return _0x4e25a6(_0x3cc4bb);},'fNNfE':function(_0x1f028a,_0x59c8a0){return _0x1f028a!==_0x59c8a0;},'KgkBs':_0xb1fc8e(0x1b2),'iycGs':_0xb1fc8e(0x1f8),'quEtX':_0xb1fc8e(0x1cc)};try{!isConnected&&await initMessageHub();const _0x39a610=messagehub[_0xb1fc8e(0x1da)](_0x3bdb74);_0x74e7c2[_0xb1fc8e(0x1c1)](log,_0x74e7c2['DOofO']),_0x74e7c2['llHEX'](log,_0xb1fc8e(0x1d0)+_0x39a610['topic']),log(_0xb1fc8e(0x1cd)+_0x5053de),log(_0xb1fc8e(0x1a7));const _0x590f61={'requireAck':_0x33f924[_0xb1fc8e(0x1aa)]!==undefined?_0x33f924['requireAck']:![],'clearCache':_0x74e7c2[_0xb1fc8e(0x1f3)](_0x33f924['clearCache'],undefined)?_0x33f924['clearCache']:!![],'senderId':messagehub['socket']?messagehub['socket']['id']:_0x74e7c2['KgkBs']};log(_0x74e7c2[_0xb1fc8e(0x1b5)]);const _0x45f57f={'type':_0x5053de,'content':_0x5667e0},_0x50cc8b=await _0x39a610[_0xb1fc8e(0x1b4)](_0x45f57f,_0x590f61);return log('Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x3bdb74),{'success':!![],'requestId':_0x50cc8b['requestId'],'topic':_0x3bdb74,'message':'Message\x20sent\x20successfully'};}catch(_0x3b5de5){return _0x74e7c2[_0xb1fc8e(0x1c1)](log,_0xb1fc8e(0x1c8)+_0x3b5de5[_0xb1fc8e(0x1e7)]),{'success':![],'error':_0x3b5de5[_0xb1fc8e(0x1e7)],'topic':_0x3bdb74,'message':_0x74e7c2[_0xb1fc8e(0x1f2)]};}}async function closeConnection(){const _0x2eaade=a0_0x3685c3,_0xdc8aad={'rygLN':'function','huBTj':_0x2eaade(0x1ce),'xuxoE':function(_0x12e722,_0x1cf185){return _0x12e722(_0x1cf185);},'SugtI':function(_0x1d4557,_0x52c765){return _0x1d4557===_0x52c765;},'Nwyuj':_0x2eaade(0x1df),'JsLiv':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub'};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(typeof messagehub[_0x2eaade(0x1a5)]===_0xdc8aad['rygLN'])await messagehub[_0x2eaade(0x1a5)](),log(_0xdc8aad['huBTj']);else{if(typeof messagehub['close']===_0xdc8aad['rygLN'])await messagehub['close'](),_0xdc8aad[_0x2eaade(0x1ec)](log,'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()');else messagehub[_0x2eaade(0x1e3)]&&_0xdc8aad[_0x2eaade(0x1c7)](typeof messagehub[_0x2eaade(0x1e3)]['disconnect'],_0x2eaade(0x1a3))?(messagehub['socket']['disconnect'](),log(_0xdc8aad[_0x2eaade(0x1c0)])):log(_0xdc8aad['JsLiv']);}isConnected=![],connectionPromise=null;}catch(_0x4afd8d){_0xdc8aad[_0x2eaade(0x1ec)](log,'Error\x20saat\x20menutup\x20koneksi:\x20'+_0x4afd8d[_0x2eaade(0x1e7)]);}}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
1
+ function a0_0x755e(_0x56b5cf,_0x3e420d){_0x56b5cf=_0x56b5cf-0x187;const _0x5bb14a=a0_0x5bb1();let _0x755ed4=_0x5bb14a[_0x56b5cf];if(a0_0x755e['NZMvht']===undefined){var _0x43101e=function(_0x15c2f8){const _0x26f452='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a4be6='',_0x1b82e6='';for(let _0x250b88=0x0,_0x511de9,_0x5ec6ef,_0x4b770f=0x0;_0x5ec6ef=_0x15c2f8['charAt'](_0x4b770f++);~_0x5ec6ef&&(_0x511de9=_0x250b88%0x4?_0x511de9*0x40+_0x5ec6ef:_0x5ec6ef,_0x250b88++%0x4)?_0x3a4be6+=String['fromCharCode'](0xff&_0x511de9>>(-0x2*_0x250b88&0x6)):0x0){_0x5ec6ef=_0x26f452['indexOf'](_0x5ec6ef);}for(let _0x3f6549=0x0,_0x54c9cd=_0x3a4be6['length'];_0x3f6549<_0x54c9cd;_0x3f6549++){_0x1b82e6+='%'+('00'+_0x3a4be6['charCodeAt'](_0x3f6549)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b82e6);};a0_0x755e['NPgECy']=_0x43101e,a0_0x755e['UlNhyX']={},a0_0x755e['NZMvht']=!![];}const _0x3f186f=_0x5bb14a[0x0],_0x3ec421=_0x56b5cf+_0x3f186f,_0x57d30d=a0_0x755e['UlNhyX'][_0x3ec421];return!_0x57d30d?(_0x755ed4=a0_0x755e['NPgECy'](_0x755ed4),a0_0x755e['UlNhyX'][_0x3ec421]=_0x755ed4):_0x755ed4=_0x57d30d,_0x755ed4;}const a0_0x28ec7c=a0_0x755e;(function(_0x4c0719,_0x5564cb){const _0x29908d=a0_0x755e,_0x31b6a1=_0x4c0719();while(!![]){try{const _0x5d5576=parseInt(_0x29908d(0x1e0))/0x1*(parseInt(_0x29908d(0x1dd))/0x2)+-parseInt(_0x29908d(0x194))/0x3+-parseInt(_0x29908d(0x1c0))/0x4*(parseInt(_0x29908d(0x1a6))/0x5)+-parseInt(_0x29908d(0x18c))/0x6*(parseInt(_0x29908d(0x197))/0x7)+parseInt(_0x29908d(0x1ab))/0x8+-parseInt(_0x29908d(0x1c9))/0x9*(-parseInt(_0x29908d(0x1c5))/0xa)+-parseInt(_0x29908d(0x19c))/0xb*(-parseInt(_0x29908d(0x1b3))/0xc);if(_0x5d5576===_0x5564cb)break;else _0x31b6a1['push'](_0x31b6a1['shift']());}catch(_0x121c09){_0x31b6a1['push'](_0x31b6a1['shift']());}}}(a0_0x5bb1,0x31715));const dotenv=require(a0_0x28ec7c(0x1bd)),path=require('path'),fs=require('fs'),{v7:uuidv7}=require(a0_0x28ec7c(0x19a));dotenv['config']();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,a0_0x28ec7c(0x1d1));if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console['log']('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error(a0_0x28ec7c(0x1b4)+messagehubPath);}catch(a0_0x18b927){console['error'](a0_0x28ec7c(0x1bb)+a0_0x18b927['message']);throw a0_0x18b927;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x1ac8e0){const _0x44b32b=new Date()['toISOString']();console['log']('['+_0x44b32b+']\x20'+_0x1ac8e0);}async function initMessageHub(){const _0xc70043=a0_0x28ec7c,_0x502fed={'ogOls':function(_0x5d2c22,_0x28bf62){return _0x5d2c22(_0x28bf62);},'DbzeK':function(_0x5dccbb,_0x51b226){return _0x5dccbb===_0x51b226;},'JYlft':'connected','ZcnHD':function(_0x2145bf,_0x660258){return _0x2145bf(_0x660258);},'cFkbS':function(_0x135672,_0x29d991){return _0x135672(_0x29d991);},'INMjB':function(_0x303175,_0x293521){return _0x303175(_0x293521);},'MKdNC':'disconnected','nxpVJ':function(_0x70fe2d,_0x305e02){return _0x70fe2d===_0x305e02;},'rRpNW':_0xc70043(0x1be),'sEfqw':_0xc70043(0x1a5),'gmJZS':function(_0x1b9af0,_0x484771){return _0x1b9af0(_0x484771);},'xMADr':function(_0x25f895,_0x24b742){return _0x25f895(_0x24b742);},'eKeBw':_0xc70043(0x18a),'OsIcs':_0xc70043(0x1d7),'rWAsA':function(_0x137a1f,_0x2931e1){return _0x137a1f===_0x2931e1;},'YxZTb':_0xc70043(0x189),'DAFao':_0xc70043(0x1a0),'dsWFZ':function(_0x48e4ef,_0x414ab6){return _0x48e4ef(_0x414ab6);},'XfGGN':_0xc70043(0x1c4),'Wwium':function(_0xd56acf,_0x7e689a){return _0xd56acf(_0x7e689a);},'pkXcC':function(_0x4fd83a,_0x4f7a5f){return _0x4fd83a(_0x4f7a5f);},'GPWOr':function(_0x3df015,_0x2d2404){return _0x3df015(_0x2d2404);},'pWEDC':function(_0x2e1955,_0x13cd0d){return _0x2e1955(_0x13cd0d);},'IIdGw':function(_0x28e75b,_0x301bb3){return _0x28e75b(_0x301bb3);},'vyuBp':'Error\x20inisialisasi\x20MessageHub:','qBRsK':function(_0x2427b2,_0x52e4ca){return _0x2427b2(_0x52e4ca);},'FaIbT':function(_0x20b8ea,_0x3a6201){return _0x20b8ea&&_0x3a6201;},'WQtlT':function(_0x4d6710,_0x47d265){return _0x4d6710(_0x47d265);},'HXNFJ':_0xc70043(0x1bc),'tfqmN':function(_0xec201f,_0x13d2c8){return _0xec201f(_0x13d2c8);},'VvEaF':'Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'};if(_0x502fed[_0xc70043(0x1a2)](messagehub,isConnected))return _0x502fed['WQtlT'](log,_0x502fed['HXNFJ']),!![];if(connectionPromise)return _0x502fed['tfqmN'](log,_0x502fed['VvEaF']),connectionPromise;return connectionPromise=new Promise(async(_0x45bde0,_0x11c06c)=>{const _0x5cd4d4=_0xc70043,_0x5e0752={'zKsMe':function(_0x1b6dbf,_0x47e04e){return _0x1b6dbf&&_0x47e04e;},'UODrD':function(_0x2aab70,_0x52843c){return _0x2aab70(_0x52843c);}};try{log(_0x5cd4d4(0x190)),log('Waktu\x20Inisialisasi:\x20'+new Date()['toLocaleString']()),_0x502fed[_0x5cd4d4(0x1d6)](log,_0x502fed['eKeBw']);const _0x85deed={'publishKey':process[_0x5cd4d4(0x1b7)]['MSHUB_PUBLISH_KEY'],'subscribeKey':process[_0x5cd4d4(0x1b7)][_0x5cd4d4(0x195)],'userId':process['env']['MSHUB_USER_ID']||_0x5cd4d4(0x1c2)+(process[_0x5cd4d4(0x1b7)]['RESTFORGE_PROJECT_NAME']||_0x502fed['OsIcs'])+'-'+process['pid'],'communicationType':process[_0x5cd4d4(0x1b7)]['MSHUB_COMMUNICATION_TYPE']||'broadcast','autoAcknowledge':_0x502fed['rWAsA'](process[_0x5cd4d4(0x1b7)]['MSHUB_AUTO_ACKNOWLEDGE'],_0x502fed[_0x5cd4d4(0x1de)]),'acknowledgeMessages':_0x502fed['DbzeK'](process['env']['MSHUB_ACKNOWLEDGE_MESSAGES'],_0x502fed['YxZTb']),'platform':{'type':process[_0x5cd4d4(0x1b7)]['MSHUB_COMMUNICATION_TYPE']||'websocket','host':process[_0x5cd4d4(0x1b7)][_0x5cd4d4(0x1df)]||_0x502fed['DAFao'],'api_port':_0x502fed[_0x5cd4d4(0x18f)](parseInt,process['env']['MSHUB_API_PORT']||0xdf8),'service_port':_0x502fed[_0x5cd4d4(0x1d6)](parseInt,process[_0x5cd4d4(0x1b7)][_0x5cd4d4(0x1b8)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x85deed),_0x502fed['dsWFZ'](log,_0x502fed[_0x5cd4d4(0x1db)]),_0x502fed['Wwium'](log,_0x5cd4d4(0x1aa)+messagehub['userId']),_0x502fed[_0x5cd4d4(0x1d2)](log,'Publish\x20Key:\x20'+messagehub['publishKey']),_0x502fed['pkXcC'](log,'Subscribe\x20Key:\x20'+messagehub[_0x5cd4d4(0x1cd)]),_0x502fed[_0x5cd4d4(0x1a3)](log,'Tipe\x20Komunikasi:\x20'+messagehub['communicationType']),log('Konfigurasi\x20Platform:\x20'+JSON[_0x5cd4d4(0x1b1)](messagehub[_0x5cd4d4(0x1b0)])),_0x502fed[_0x5cd4d4(0x1ac)](log,'========================================'),messagehub[_0x5cd4d4(0x18e)]({'status':function(_0x950f79){const _0x17363f=_0x5cd4d4;_0x502fed['ogOls'](log,_0x17363f(0x1ca)+_0x950f79['category']);if(_0x502fed['DbzeK'](_0x950f79['category'],_0x502fed['JYlft']))_0x502fed[_0x17363f(0x1ae)](log,'Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(_0x502fed['cFkbS'](clearTimeout,timeoutHandler),timeoutHandler=null),_0x502fed['INMjB'](_0x45bde0,!![]);else{if(_0x950f79['category']===_0x502fed[_0x17363f(0x1c8)]){const _0x30942a=_0x502fed[_0x17363f(0x1a9)](_0x950f79['isErrorRelated'],!![]);!_0x30942a&&(log(_0x17363f(0x1d3)+(_0x950f79[_0x17363f(0x1ba)]||_0x502fed[_0x17363f(0x1b2)])),isConnected=![],connectionPromise&&(_0x11c06c(new Error(_0x17363f(0x19e)+(_0x950f79['reason']||'Tidak\x20diketahui'))),connectionPromise=null));}else{if(_0x502fed['DbzeK'](_0x950f79['category'],'error')){let _0xf395f0=_0x950f79[_0x17363f(0x199)]||_0x950f79['error']||'Unknown\x20error';log(_0x17363f(0x1dc)+_0xf395f0),isConnected=![],connectionPromise&&(_0x502fed['cFkbS'](_0x11c06c,new Error(_0xf395f0)),connectionPromise=null);}else{if(_0x502fed[_0x17363f(0x1d0)](_0x950f79['category'],_0x502fed[_0x17363f(0x1ce)]))log(_0x17363f(0x19f)+_0x950f79[_0x17363f(0x1a7)]);else{if(_0x502fed['DbzeK'](_0x950f79['category'],_0x17363f(0x1e1))){const _0x490699=_0x950f79[_0x17363f(0x1a4)]?.[_0x17363f(0x19d)]||'Unknown',_0x1b1e18=_0x950f79['receiverInfo']?.['id']||_0x950f79['receiverId'],_0xc290ee=new Date(_0x950f79['receiverInfo']?.[_0x17363f(0x1cc)]||_0x950f79[_0x17363f(0x1cc)]||new Date())['toLocaleTimeString']();_0x502fed[_0x17363f(0x1d2)](log,'📩\x20Konfirmasi:\x20Pesan\x20'+_0x950f79['requestId']+'\x20diterima\x20oleh\x20'+_0x490699+'\x20('+_0x1b1e18+_0x17363f(0x1b9)+_0xc290ee+_0x17363f(0x1af)+(_0x950f79['confirmationCount']||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x94296f=_0x5cd4d4;_0x5e0752['zKsMe'](!isConnected,connectionPromise)&&(log('⚠️\x20Timeout:\x20Tidak\x20dapat\x20terhubung\x20ke\x20MessageHub\x20server\x20dalam\x20waktu\x20yang\x20ditentukan'),_0x5e0752[_0x94296f(0x196)](_0x11c06c,new Error(_0x94296f(0x188))),connectionPromise=null);},0x2710);}catch(_0x4a2930){_0x502fed[_0x5cd4d4(0x19b)](log,_0x5cd4d4(0x192)+_0x4a2930[_0x5cd4d4(0x1cf)]),console['error'](_0x502fed['vyuBp'],_0x4a2930),connectionPromise=null,_0x502fed[_0x5cd4d4(0x1c1)](_0x11c06c,_0x4a2930);}}),connectionPromise;}async function publishMessage(_0x59b3e9,_0x1eb401,_0x28fcb1,_0x45c2ba={}){const _0x3456b1=a0_0x28ec7c,_0x9f815c={'JLrLD':function(_0x1282e3){return _0x1282e3();},'yZOza':_0x3456b1(0x1b6),'xtonJ':_0x3456b1(0x191),'sDAUS':function(_0x68bc44,_0x435938){return _0x68bc44!==_0x435938;},'WeJHj':function(_0x6934df,_0x14ef22){return _0x6934df(_0x14ef22);},'BvdOZ':'Mengirim\x20pesan\x20ke\x20server...','ucBHH':function(_0x4440fc,_0x288c34){return _0x4440fc(_0x288c34);},'mnyal':_0x3456b1(0x1d4)};try{!isConnected&&await _0x9f815c[_0x3456b1(0x1cb)](initMessageHub);const _0x296479=messagehub[_0x3456b1(0x187)](_0x59b3e9);log(_0x9f815c['yZOza']),log(_0x3456b1(0x1bf)+_0x296479['topic']),log(_0x3456b1(0x1a8)+_0x1eb401),log(_0x9f815c['xtonJ']);const _0x26124a={'requireAck':_0x9f815c[_0x3456b1(0x1da)](_0x45c2ba[_0x3456b1(0x1ad)],undefined)?_0x45c2ba[_0x3456b1(0x1ad)]:![],'clearCache':_0x9f815c['sDAUS'](_0x45c2ba['clearCache'],undefined)?_0x45c2ba['clearCache']:!![],'senderId':messagehub[_0x3456b1(0x18b)]?messagehub['socket']['id']:'restforge'};_0x9f815c['WeJHj'](log,_0x9f815c['BvdOZ']);const _0x557194={'type':_0x1eb401,'content':_0x28fcb1},_0x415492=await _0x296479['publish'](_0x557194,_0x26124a);return log(_0x3456b1(0x1c7)+_0x59b3e9),{'success':!![],'requestId':_0x415492[_0x3456b1(0x1a7)],'topic':_0x59b3e9,'message':_0x3456b1(0x1d8)};}catch(_0x4eee46){return _0x9f815c[_0x3456b1(0x1b5)](log,'⚠️\x20Error\x20publishing\x20message:\x20'+_0x4eee46[_0x3456b1(0x1cf)]),{'success':![],'error':_0x4eee46[_0x3456b1(0x1cf)],'topic':_0x59b3e9,'message':_0x9f815c[_0x3456b1(0x198)]};}}function a0_0x5bb1(){const _0x33f7c1=['qMrjuw8','ywrKtgLZDgvUzxi','B2DpBhm','pt09pt09ie1vtefjieLosvnjquXju0ftssbnrvntquDfsfvcid09pt09pq','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','C2n5EuS','mtaXodiYnfn1wuL3tG','tvnivujFu1vcu0nssujfx0Tfwq','vu9eCKq','mtm5m2Lzq1jIqG','Bw55ywW','zxjYB3jezxrHAwW','DxvPza','suLKr3C','nde2mJeXneLdBfDLAq','BMfTzq','s29UzwTZAsb0zxjWDxr1CZOG','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','Bg9JywXOB3n0','zgLZy29UBMvJDa','rMfjyLq','r1bxt3i','CMvJzwL2zxjjBMzV','BwvZC2fNzs1Zzw50','mZvRqxHnvxe','CMvXDwvZDeLK','twvZC2fNzsbuExbLoIa','BNHWvKO','q2XPzw50ieLel1vZzxjjrdOG','mta1nZa5nMXPrxnWwa','CfDfrem','CMvXDwLYzufJAW','wMnUseq','lIbuB3rHBcbRB25MAxjTyxnPoIa','CgXHDgzVCM1dB25MAwC','C3rYAw5NAwz5','CLjWtLC','mtjTuhPNy20','twvZC2fNzuH1yIbtreSGBM90igzVDw5Kigf0ia','DwncseG','pt09pt09ierbveeGufvcteLtscbnrvntquDfid09pt09pq','zw52','tvnivujFu0vsvKLdrv9qt1ju','ksbWywrHia','CMvHC29U','rxjYB3iGBg9HzgLUzYbnzxnZywDLshvIifnesZOG','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','zg90zw52','vgLKywSGzgLRzxrHAhvP','q2HHBM5LBcbuyxjNzxq6ia','mtK3odrPELngq0G','CujsC0S','CMvZDgzVCMDLlq','zNvUy3rPB24','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','mZmWntbkvNHQrgm','uen3tvy','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','tuTKtKm','mZy5vwLoquTp','u3rHDhvZieXPC3rLBMvYoIa','sKXYteq','CMvJzwL2zwrbDa','C3vIC2nYAwjLs2v5','C0vMCxC','BwvZC2fNzq','rgj6zuS','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','z21kwLm','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','zxHWB3j0CW','Ee1brhi','zgvMyxvSDa','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','C0rbvvm','wgzhr04','4PQG77IpievYCM9YoIa','mLfxs3fbBq','wxHAvgi','tvnivujFse9tva','mti3mtHYr2P2rMi','BwvZC2fNzs1YzwnLAxzLza','y2HHBM5LBa','q29UBMvJDgLVBIb0Aw1LB3v0','Dhj1zq','tw9KztOGs29UzwTZAsboEwf0yq','C29JA2v0','mJq3ohrMruPMAW'];a0_0x5bb1=function(){return _0x33f7c1;};return a0_0x5bb1();}async function closeConnection(){const _0x35caaf=a0_0x28ec7c,_0x393d9e={'yebet':function(_0x30d72e,_0x4eb47f){return _0x30d72e===_0x4eb47f;},'scyyK':_0x35caaf(0x1c3),'PCwMV':function(_0x5e98a7,_0x5f51ae){return _0x5e98a7(_0x5f51ae);},'BdIQo':function(_0x5bbac5,_0x59b171){return _0x5bbac5===_0x59b171;},'DlqnU':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()','jLUVI':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub'};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(_0x393d9e['yebet'](typeof messagehub['disconnect'],_0x393d9e[_0x35caaf(0x193)]))await messagehub[_0x35caaf(0x1a1)](),_0x393d9e['PCwMV'](log,'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()');else{if(_0x393d9e[_0x35caaf(0x18d)](typeof messagehub['close'],'function'))await messagehub['close'](),_0x393d9e[_0x35caaf(0x1c6)](log,_0x393d9e['DlqnU']);else messagehub['socket']&&typeof messagehub[_0x35caaf(0x18b)][_0x35caaf(0x1a1)]==='function'?(messagehub[_0x35caaf(0x18b)][_0x35caaf(0x1a1)](),log(_0x35caaf(0x1d9))):log(_0x393d9e['jLUVI']);}isConnected=![],connectionPromise=null;}catch(_0x20515b){log('Error\x20saat\x20menutup\x20koneksi:\x20'+_0x20515b[_0x35caaf(0x1cf)]);}}module[a0_0x28ec7c(0x1d5)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};