@restforgejs/platform 5.0.3 → 5.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/dashboard/create.js +1 -1
  5. package/generators/cli/endpoint/create.js +1 -1
  6. package/generators/cli/processor/create.js +1 -1
  7. package/generators/lib/dbschema-kit/apply-executor.js +15 -1
  8. package/generators/lib/dbschema-kit/dialect/mysql.js +2 -0
  9. package/generators/lib/dbschema-kit/dialect/oracle.js +2 -0
  10. package/generators/lib/dbschema-kit/dialect/postgres.js +3 -0
  11. package/generators/lib/dbschema-kit/dialect/sqlite.js +2 -0
  12. package/generators/lib/dbschema-kit/emitters/alter-table.js +7 -0
  13. package/generators/lib/dbschema-kit/emitters/create-table.js +31 -3
  14. package/generators/lib/dbschema-kit/statement-modifier.js +12 -2
  15. package/generators/lib/payload/payload-runner.js +44 -2
  16. package/generators/lib/payload/schema-diff.js +31 -1
  17. package/generators/lib/templates/dashboard-catalog.js +1 -1
  18. package/generators/lib/templates/db-connection-env.js +1 -1
  19. package/generators/lib/templates/dbschema-catalog.js +1 -1
  20. package/generators/lib/templates/field-validation-catalog.js +1 -1
  21. package/generators/lib/templates/mysql-template.js +1 -1
  22. package/generators/lib/templates/oracle-template.js +1 -1
  23. package/generators/lib/templates/postgres-template.js +1 -1
  24. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  25. package/generators/lib/templates/sqlite-template.js +1 -1
  26. package/generators/lib/utils/database-introspector.js +417 -6
  27. package/generators/lib/validators/argument-validator.js +2 -2
  28. package/integrity-manifest.json +18 -18
  29. package/package.json +4 -2
  30. package/scripts/verify-integrity.js +1 -1
  31. package/server.js +1 -1
  32. package/src/components/handlers/adjust_handler.js +1 -1
  33. package/src/components/handlers/audit_handler.js +1 -1
  34. package/src/components/handlers/delete_handler.js +1 -1
  35. package/src/components/handlers/export_handler.js +1 -1
  36. package/src/components/handlers/import_handler.js +1 -1
  37. package/src/components/handlers/insert_handler.js +1 -1
  38. package/src/components/handlers/update_handler.js +1 -1
  39. package/src/components/handlers/upload_handler.js +1 -1
  40. package/src/components/handlers/workflow_handler.js +1 -1
  41. package/src/components/integrations/webhook.js +1 -1
  42. package/src/consumers/baseConsumer.js +1 -1
  43. package/src/consumers/declarativeMapper.js +1 -1
  44. package/src/consumers/handlers/apiHandler.js +1 -1
  45. package/src/consumers/handlers/consoleHandler.js +1 -1
  46. package/src/consumers/handlers/databaseHandler.js +1 -1
  47. package/src/consumers/handlers/index.js +1 -1
  48. package/src/consumers/handlers/kafkaHandler.js +1 -1
  49. package/src/consumers/index.js +1 -1
  50. package/src/consumers/messageTransformer.js +1 -1
  51. package/src/consumers/validator.js +1 -1
  52. package/src/core/db/dialect/base-dialect.js +1 -1
  53. package/src/core/db/dialect/index.js +1 -1
  54. package/src/core/db/dialect/mysql-dialect.js +1 -1
  55. package/src/core/db/dialect/oracle-dialect.js +1 -1
  56. package/src/core/db/dialect/postgres-dialect.js +1 -1
  57. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  58. package/src/core/db/flatten-helper.js +1 -1
  59. package/src/core/db/query-builder-error.js +1 -1
  60. package/src/core/db/query-builder.js +1 -1
  61. package/src/core/db/relation-helper.js +1 -1
  62. package/src/core/handlers/delete_handler.js +1 -1
  63. package/src/core/handlers/insert_handler.js +1 -1
  64. package/src/core/handlers/update_handler.js +1 -1
  65. package/src/core/models/base-model.js +1 -1
  66. package/src/core/utils/cache-manager.js +1 -1
  67. package/src/core/utils/component-engine.js +1 -1
  68. package/src/core/utils/context-builder.js +1 -1
  69. package/src/core/utils/datetime-formatter.js +1 -1
  70. package/src/core/utils/datetime-parser.js +1 -1
  71. package/src/core/utils/db.js +1 -1
  72. package/src/core/utils/logger.js +1 -1
  73. package/src/core/utils/payload-loader.js +1 -1
  74. package/src/core/utils/security-checks.js +1 -1
  75. package/src/middleware/body-options.js +1 -1
  76. package/src/middleware/cors.js +1 -1
  77. package/src/middleware/idempotency.js +1 -1
  78. package/src/middleware/rate-limiter.js +1 -1
  79. package/src/middleware/request-logger.js +1 -1
  80. package/src/middleware/security-headers.js +1 -1
  81. package/src/models/base-model-mysql.js +1 -1
  82. package/src/models/base-model-oracle.js +1 -1
  83. package/src/models/base-model-sqlite.js +1 -1
  84. package/src/models/base-model.js +1 -1
  85. package/src/pro/caching/redis-client.js +1 -1
  86. package/src/pro/caching/redis-helper.js +1 -1
  87. package/src/pro/consumers/baseConsumer.js +1 -1
  88. package/src/pro/consumers/declarativeMapper.js +1 -1
  89. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  90. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  91. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  92. package/src/pro/consumers/handlers/index.js +1 -1
  93. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  94. package/src/pro/consumers/index.js +1 -1
  95. package/src/pro/consumers/messageTransformer.js +1 -1
  96. package/src/pro/consumers/validator.js +1 -1
  97. package/src/pro/database/base-model-mysql.js +1 -1
  98. package/src/pro/database/base-model-oracle.js +1 -1
  99. package/src/pro/database/base-model-sqlite.js +1 -1
  100. package/src/pro/database/db-mysql.js +1 -1
  101. package/src/pro/database/db-oracle.js +1 -1
  102. package/src/pro/database/db-sqlite.js +1 -1
  103. package/src/pro/excel/excel-generator.js +1 -1
  104. package/src/pro/excel/excel-parser.js +1 -1
  105. package/src/pro/excel/export-service.js +1 -1
  106. package/src/pro/excel/export_handler.js +1 -1
  107. package/src/pro/excel/import-service.js +1 -1
  108. package/src/pro/excel/import-validator.js +1 -1
  109. package/src/pro/excel/import_handler.js +1 -1
  110. package/src/pro/excel/upsert-builder.js +1 -1
  111. package/src/pro/idgen/idgen-routes.js +1 -1
  112. package/src/pro/integrations/lookup-resolver.js +1 -1
  113. package/src/pro/integrations/upload-handler-v2.js +1 -1
  114. package/src/pro/integrations/upload-handler.js +1 -1
  115. package/src/pro/integrations/webhook.js +1 -1
  116. package/src/pro/locking/lock-routes.js +1 -1
  117. package/src/pro/locking/resource-lock-manager.js +1 -1
  118. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  119. package/src/pro/messaging/kafkaService.js +1 -1
  120. package/src/pro/messaging/messagehubService.js +1 -1
  121. package/src/pro/messaging/rabbitmqService.js +1 -1
  122. package/src/pro/scheduler/job-manager.js +1 -1
  123. package/src/pro/scheduler/job-routes.js +1 -1
  124. package/src/pro/scheduler/job-validator.js +1 -1
  125. package/src/pro/storage/base-storage-provider.js +1 -1
  126. package/src/pro/storage/file-metadata-helper.js +1 -1
  127. package/src/pro/storage/index.js +1 -1
  128. package/src/pro/storage/local-storage-provider.js +1 -1
  129. package/src/pro/storage/s3-storage-provider.js +1 -1
  130. package/src/pro/storage/upload-cleanup-job.js +1 -1
  131. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  132. package/src/pro/storage/upload-pending-tracker.js +1 -1
  133. package/src/pro/websocket/broadcast-helper.js +1 -1
  134. package/src/pro/websocket/index.js +1 -1
  135. package/src/pro/websocket/livesync-server.js +1 -1
  136. package/src/pro/websocket/ws-broadcaster.js +1 -1
  137. package/src/services/export-service.js +1 -1
  138. package/src/services/import-service.js +1 -1
  139. package/src/services/kafkaConsumerService.js +1 -1
  140. package/src/services/kafkaService.js +1 -1
  141. package/src/services/messagehubService.js +1 -1
  142. package/src/services/rabbitmqService.js +1 -1
  143. package/src/utils/cache-invalidation-registry.js +1 -1
  144. package/src/utils/cache-manager.js +1 -1
  145. package/src/utils/component-engine.js +1 -1
  146. package/src/utils/config-extractor.js +1 -1
  147. package/src/utils/consumerLogger.js +1 -1
  148. package/src/utils/context-builder.js +1 -1
  149. package/src/utils/dashboard-helpers.js +1 -1
  150. package/src/utils/dateHelper.js +1 -1
  151. package/src/utils/datetime-formatter.js +1 -1
  152. package/src/utils/datetime-parser.js +1 -1
  153. package/src/utils/db-bootstrap.js +1 -1
  154. package/src/utils/db-mysql.js +1 -1
  155. package/src/utils/db-oracle.js +1 -1
  156. package/src/utils/db-sqlite.js +1 -1
  157. package/src/utils/db.js +1 -1
  158. package/src/utils/demo-generator.js +1 -1
  159. package/src/utils/excel-generator.js +1 -1
  160. package/src/utils/excel-parser.js +1 -1
  161. package/src/utils/file-watcher.js +1 -1
  162. package/src/utils/id-generator.js +1 -1
  163. package/src/utils/idempotency-manager.js +1 -1
  164. package/src/utils/import-validator.js +1 -1
  165. package/src/utils/license-client.js +1 -1
  166. package/src/utils/lock-manager.js +1 -1
  167. package/src/utils/logger.js +1 -1
  168. package/src/utils/lookup-resolver.js +1 -1
  169. package/src/utils/payload-loader.js +1 -1
  170. package/src/utils/processor-response.js +1 -1
  171. package/src/utils/rabbitmq.js +1 -1
  172. package/src/utils/redis-client.js +1 -1
  173. package/src/utils/redis-helper.js +1 -1
  174. package/src/utils/request-scope.js +1 -1
  175. package/src/utils/security-checks.js +1 -1
  176. package/src/utils/service-resolver.js +1 -1
  177. package/src/utils/shutdown-coordinator.js +1 -1
  178. package/src/utils/trusted-keys.js +1 -1
  179. package/src/utils/upload-handler.js +1 -1
  180. package/src/utils/upsert-builder.js +1 -1
  181. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';function a0_0x32b6(_0xa5b4e,_0x393c94){_0xa5b4e=_0xa5b4e-0x77;const _0x2d8d11=a0_0x2d8d();let _0x32b67d=_0x2d8d11[_0xa5b4e];if(a0_0x32b6['OqoRVi']===undefined){var _0xff2af9=function(_0x47a9ef){const _0x5a4964='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2bae25='',_0x674016='';for(let _0x3cc31b=0x0,_0x76a71,_0x2b5727,_0x23394d=0x0;_0x2b5727=_0x47a9ef['charAt'](_0x23394d++);~_0x2b5727&&(_0x76a71=_0x3cc31b%0x4?_0x76a71*0x40+_0x2b5727:_0x2b5727,_0x3cc31b++%0x4)?_0x2bae25+=String['fromCharCode'](0xff&_0x76a71>>(-0x2*_0x3cc31b&0x6)):0x0){_0x2b5727=_0x5a4964['indexOf'](_0x2b5727);}for(let _0x38d3fc=0x0,_0x5ac070=_0x2bae25['length'];_0x38d3fc<_0x5ac070;_0x38d3fc++){_0x674016+='%'+('00'+_0x2bae25['charCodeAt'](_0x38d3fc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x674016);};a0_0x32b6['aGDAcm']=_0xff2af9,a0_0x32b6['SBuEQh']={},a0_0x32b6['OqoRVi']=!![];}const _0x3838a7=_0x2d8d11[0x0],_0x11fe14=_0xa5b4e+_0x3838a7,_0xd15897=a0_0x32b6['SBuEQh'][_0x11fe14];return!_0xd15897?(_0x32b67d=a0_0x32b6['aGDAcm'](_0x32b67d),a0_0x32b6['SBuEQh'][_0x11fe14]=_0x32b67d):_0x32b67d=_0xd15897,_0x32b67d;}const a0_0x137144=a0_0x32b6;(function(_0x3ee5b0,_0x47369b){const _0x51341e=a0_0x32b6,_0x2f30f1=_0x3ee5b0();while(!![]){try{const _0x52490c=-parseInt(_0x51341e(0x95))/0x1+-parseInt(_0x51341e(0x8b))/0x2+parseInt(_0x51341e(0x96))/0x3*(parseInt(_0x51341e(0x84))/0x4)+parseInt(_0x51341e(0xa9))/0x5+parseInt(_0x51341e(0x78))/0x6*(parseInt(_0x51341e(0x90))/0x7)+-parseInt(_0x51341e(0xa7))/0x8*(parseInt(_0x51341e(0x9c))/0x9)+parseInt(_0x51341e(0x85))/0xa;if(_0x52490c===_0x47369b)break;else _0x2f30f1['push'](_0x2f30f1['shift']());}catch(_0x5449a6){_0x2f30f1['push'](_0x2f30f1['shift']());}}}(a0_0x2d8d,0xcd8ed));const multer=require(a0_0x137144(0x9d)),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require('./logger');class UploadHandlerV2{constructor(){const _0x22755c=a0_0x137144;this[_0x22755c(0x87)]=null;}get['tempDir'](){const _0x24872c=a0_0x137144,_0x3bde6c={'ApbxN':'temp'};if(!this['_tempDir']){const _0x1c1cc4=process[_0x24872c(0x80)][_0x24872c(0xa4)]||'default';this['_tempDir']=process[_0x24872c(0x80)]['UPLOAD_TEMP_DIR']||path['join'](process[_0x24872c(0x8a)](),_0x3bde6c['ApbxN'],'uploads',_0x1c1cc4),!fsSync[_0x24872c(0x7b)](this[_0x24872c(0x87)])&&fsSync[_0x24872c(0x77)](this[_0x24872c(0x87)],{'recursive':!![]});}return this['_tempDir'];}['createUploadMiddleware'](_0x2353c3={}){const _0x3c464f=a0_0x137144,_0x1c5d6a={'wocmV':function(_0x1e7577,_0x1681ff,_0xec7014){return _0x1e7577(_0x1681ff,_0xec7014);},'SpPJn':function(_0x486c0c,_0x9cb6ec){return _0x486c0c===_0x9cb6ec;},'BJTuf':function(_0x387a12,_0x368de4){return _0x387a12(_0x368de4);},'GEruS':function(_0x136bf0,_0x40635d){return _0x136bf0(_0x40635d);}},_0x12cd10=_0x2353c3['maxFiles']||0x5,_0x120994=this[_0x3c464f(0x8d)](_0x2353c3['maxFileSize']||_0x3c464f(0x7d)),_0x4c086d=_0x2353c3['allowedTypes']||[],_0x1aa23a=multer[_0x3c464f(0xa6)]({'destination':(_0x58c7ac,_0x3f8279,_0x428c21)=>{const _0x1c291a=_0x3c464f;!fsSync[_0x1c291a(0x7b)](this['tempDir'])&&fsSync[_0x1c291a(0x77)](this['tempDir'],{'recursive':!![]}),_0x1c5d6a['wocmV'](_0x428c21,null,this[_0x1c291a(0xa0)]);},'filename':(_0x11e522,_0x2cac14,_0x15ab0e)=>{const _0x3ec62f=_0x3c464f,_0x47de16=crypto[_0x3ec62f(0x8c)](0x8)['toString']('hex'),_0x48fede=Date[_0x3ec62f(0xa1)](),_0x249a0a=path['extname'](_0x2cac14['originalname']);_0x15ab0e(null,'upload-'+_0x48fede+'-'+_0x47de16+_0x249a0a);}}),_0x463ba2=(_0x42fefd,_0x4ab2de,_0x531f25)=>{const _0x53a372=_0x3c464f;if(_0x1c5d6a['SpPJn'](_0x4c086d['length'],0x0))return _0x531f25(null,!![]);const _0xc0db13=path['extname'](_0x4ab2de['originalname'])['toLowerCase']()[_0x53a372(0x8e)]('.','');_0x4c086d['includes'](_0xc0db13)?_0x531f25(null,!![]):_0x1c5d6a[_0x53a372(0x93)](_0x531f25,new Error('File\x20type\x20\x22.'+_0xc0db13+_0x53a372(0x83)+_0x4c086d[_0x53a372(0x7f)](',\x20')));};return _0x1c5d6a[_0x3c464f(0x79)](multer,{'storage':_0x1aa23a,'limits':{'fileSize':_0x120994,'files':_0x12cd10},'fileFilter':_0x463ba2})['array']('files',_0x12cd10);}async[a0_0x137144(0x7a)](_0x550d3e,_0x191210,_0x37627e={}){const _0xb14842=a0_0x137144,_0x1a0af7={'xFEqH':function(_0x17483f,_0x276b9e){return _0x17483f(_0x276b9e);},'EHGzL':_0xb14842(0xa5)},{createFileMetadata:_0xc48136}=_0x1a0af7['xFEqH'](require,_0xb14842(0x7e)),_0x1aa4f3=[];for(const _0x2fa1f7 of _0x550d3e){try{const _0x39f58b=_0x191210['generateKey'](_0x2fa1f7['originalname'],{'prefix':_0x37627e['prefix']||'','project':_0x37627e['project']||'','module':_0x37627e['module']||'','endpoint':_0x37627e['endpoint']||''}),_0x676b99=fsSync['createReadStream'](_0x2fa1f7['path']),_0x37b7a3=await _0x191210[_0xb14842(0x88)](_0x676b99,_0x39f58b,{'contentType':_0x2fa1f7[_0xb14842(0x94)],'fileSize':_0x2fa1f7[_0xb14842(0x86)]}),_0x37d8d3=_0xc48136({'key':_0x37b7a3['key'],'originalName':_0x2fa1f7[_0xb14842(0x91)],'fileName':path[_0xb14842(0x97)](_0x39f58b),'contentType':_0x2fa1f7[_0xb14842(0x94)],'size':_0x2fa1f7['size'],'url':_0x37b7a3[_0xb14842(0xa3)],'provider':_0x191210[_0xb14842(0x98)],'bucket':_0x191210[_0xb14842(0x92)]||null,'uploadedBy':_0x37627e['uploadedBy']||null});_0x1aa4f3[_0xb14842(0x81)](_0x37d8d3);}catch(_0x473481){logger[_0xb14842(0x7c)]({'event':_0x1a0af7[_0xb14842(0x89)],'file':_0x2fa1f7[_0xb14842(0x91)],'error':_0x473481['message']},_0xb14842(0x99)+_0x2fa1f7['originalname']);throw _0x473481;}finally{await this['_deleteTempFile'](_0x2fa1f7[_0xb14842(0x9a)]);}}return _0x1aa4f3;}async['_deleteTempFile'](_0x5be0d3){const _0x16c6ad=a0_0x137144,_0x5604a1={'lpxUe':_0x16c6ad(0x9b)};try{await fs[_0x16c6ad(0x9e)](_0x5be0d3);}catch(_0x534399){logger['warn']({'event':_0x5604a1['lpxUe'],'filePath':_0x5be0d3,'error':_0x534399[_0x16c6ad(0xa8)]},_0x16c6ad(0x8f));}}['_parseFileSize'](_0x2974c1){const _0x393b87=a0_0x137144,_0x68c878={'xffuM':function(_0x1dc12f,_0x9a9e4c){return _0x1dc12f===_0x9a9e4c;},'GxovW':function(_0x52ddc2,_0xf64e9d){return _0x52ddc2(_0xf64e9d);},'rokHL':function(_0x177eb1,_0xfa25d){return _0x177eb1*_0xfa25d;},'csKIa':function(_0x152af4,_0x1c5c14){return _0x152af4(_0x1c5c14);},'wTURs':function(_0x5f15f4,_0x318036){return _0x5f15f4*_0x318036;}};if(_0x68c878[_0x393b87(0xa2)](typeof _0x2974c1,'number'))return _0x2974c1;const _0x2214e4=_0x68c878[_0x393b87(0x82)](String,_0x2974c1)['trim']()['match'](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x2214e4)return _0x68c878['rokHL'](0xa,0x400)*0x400;const _0x250613=_0x68c878['csKIa'](parseFloat,_0x2214e4[0x1]),_0x579610=_0x2214e4[0x2]['toUpperCase'](),_0x1b652a={'B':0x1,'KB':0x400,'MB':0x400*0x400,'GB':0x400*0x400*0x400};return Math['floor'](_0x68c878['wTURs'](_0x250613,_0x1b652a[_0x579610]||0x1));}}function a0_0x2d8d(){const _0x3f7b05=['r3HVDLC','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG','mZC2qwPcD1zf','nZi0mJG2mgnxDNfLzW','C2L6zq','x3rLBxbeAxi','DxbSB2fK','ruHhEKW','y3DK','mJe3mZm4y29lvezt','CMfUzg9TqNL0zxm','x3bHCNnLrMLSzvnPEMu','CMvWBgfJzq','rMfPBgvKihrVigrLBgv0zsb0zw1WigzPBgu','otaWmtiZCujlzeHu','B3jPz2LUywXUyw1L','yNvJA2v0','qKPuDwy','BwLTzxr5Cgu','mJa3nty5yLrvsMfL','nZe5n0fHqNP0DW','yMfZzw5HBwu','ChjVDMLKzxjoyw1L','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fKzwqGzMLSztOG','Cgf0Aa','DxbSB2fKx3yYx3rLBxbFzgvSzxrLx3DHCM4','ouzJsfDiAG','BxvSDgvY','Dw5SAw5R','zxHWB3j0CW','DgvTCerPCG','BM93','EgzMDu0','DxjS','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','zgLZA1n0B3jHz2u','nJu1otC1mLLVEwH3Eq','BwvZC2fNzq','mZG1nJaXmgfgAvnHCW','BwTKAxjtEw5J','mtjOA1vyyKW','r0vYDvm','ChjVy2vZC1vWBg9HzgvKrMLSzxm','zxHPC3rZu3LUyW','zxjYB3i','mtbnqG','lI4VC3rVCMfNzs9MAwXLlw1LDgfKyxrHlwHLBhbLCG','AM9PBG','zw52','ChvZAa'];a0_0x2d8d=function(){return _0x3f7b05;};return a0_0x2d8d();}module[a0_0x137144(0x9f)]=new UploadHandlerV2();
1
+ 'use strict';const a0_0x5c9fc5=a0_0x1664;(function(_0x30e2c2,_0x4b0a6b){const _0x13cb67=a0_0x1664,_0x30e7ac=_0x30e2c2();while(!![]){try{const _0x116fae=parseInt(_0x13cb67(0x16b))/0x1*(-parseInt(_0x13cb67(0x174))/0x2)+-parseInt(_0x13cb67(0x172))/0x3*(-parseInt(_0x13cb67(0x16e))/0x4)+-parseInt(_0x13cb67(0x1a5))/0x5*(parseInt(_0x13cb67(0x199))/0x6)+parseInt(_0x13cb67(0x187))/0x7*(-parseInt(_0x13cb67(0x16c))/0x8)+-parseInt(_0x13cb67(0x19e))/0x9+-parseInt(_0x13cb67(0x197))/0xa*(parseInt(_0x13cb67(0x175))/0xb)+parseInt(_0x13cb67(0x185))/0xc;if(_0x116fae===_0x4b0a6b)break;else _0x30e7ac['push'](_0x30e7ac['shift']());}catch(_0x33f1ff){_0x30e7ac['push'](_0x30e7ac['shift']());}}}(a0_0x3e3e,0xc5dce));const multer=require(a0_0x5c9fc5(0x189)),path=require(a0_0x5c9fc5(0x1a7)),crypto=require(a0_0x5c9fc5(0x1a1)),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x5c9fc5(0x18c));function a0_0x3e3e(){const _0x482076=['BxvSDgvY','x2rLBgv0zvrLBxbgAwXL','Dg9tDhjPBMC','lI9SB2DNzxi','BwvZC2fNzq','BwLTzxr5Cgu','zxHWB3j0CW','B3jPz2LUywXUyw1L','CMvWBgfJzq','DxbSB2fKx3yYx3rLBxbFzgvSzxrLx3DHCM4','DxbSB2fK','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','y3jLyxrLuMvHzfn0CMvHBq','zxH0BMfTzq','mtbMEfnttu4','mtbnqG','nde2mJu2u2HkuLP4','C3vluuG','Aw5JBhvKzxm','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fKzwqGzMLSztOG','BM93','ntiXnZi5mu1MsvPntW','C2L6zq','yMfZzw5HBwu','y3j5ChrV','DxbSB2fKCW','x3bHCNnLrMLSzvnPEMu','lI4VC3rVCMfNzs9MAwXLlw1LDgfKyxrHlwHLBhbLCG','mtaWDhjlzwP2','x3rLBxbeAxi','Cgf0Aa','BgvUz3rO','vvbmt0fex1rftvbFreLs','Bwf4rMLSzvnPEMu','mJe3wKvbzLn3','ohPlqw1Wra','A2v5','mtaWtMj6BuLQ','zgLZA1n0B3jHz2u','DgvTCerPCG','sxvis3C','mtyYmZiXBujKyKTq','D2fYBG','mtiYywn3C2vA','nZq1mde5zfjvwwrp','zxHPC3rZu3LUyW','Dg9mB3DLCKnHC2u','yxjYyxK','AgP6t2u','ChjVAMvJDa','ChvZAa','DNPpq2S','rfjnt0u','zgvMyxvSDa','Dg5bsxq','rMfPBgvKihrVigrLBgv0zsb0zw1WigzPBgu','DxbSB2fKzwrcEq','Agv4','Bwf4rMLSzxm','AM9PBG','mJa4ode2nJHlu1jXEMq','ChjVy2vZC1vWBg9HzgvKrMLSzxm','mtyZoti4mvr4vxjxsG','yNvJA2v0'];a0_0x3e3e=function(){return _0x482076;};return a0_0x3e3e();}function a0_0x1664(_0x41cf4a,_0x5aa96d){_0x41cf4a=_0x41cf4a-0x16b;const _0x3e3e87=a0_0x3e3e();let _0x1664bb=_0x3e3e87[_0x41cf4a];if(a0_0x1664['IYCQSD']===undefined){var _0x504d06=function(_0x4b94ab){const _0x3e7151='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5156fe='',_0x1f0138='';for(let _0x2fbcc5=0x0,_0x16220b,_0x3f2491,_0x2bc6fd=0x0;_0x3f2491=_0x4b94ab['charAt'](_0x2bc6fd++);~_0x3f2491&&(_0x16220b=_0x2fbcc5%0x4?_0x16220b*0x40+_0x3f2491:_0x3f2491,_0x2fbcc5++%0x4)?_0x5156fe+=String['fromCharCode'](0xff&_0x16220b>>(-0x2*_0x2fbcc5&0x6)):0x0){_0x3f2491=_0x3e7151['indexOf'](_0x3f2491);}for(let _0x48f82e=0x0,_0x3cf141=_0x5156fe['length'];_0x48f82e<_0x3cf141;_0x48f82e++){_0x1f0138+='%'+('00'+_0x5156fe['charCodeAt'](_0x48f82e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f0138);};a0_0x1664['kgmMLe']=_0x504d06,a0_0x1664['OnIQOc']={},a0_0x1664['IYCQSD']=!![];}const _0x3934b4=_0x3e3e87[0x0],_0x5e509b=_0x41cf4a+_0x3934b4,_0x578bc2=a0_0x1664['OnIQOc'][_0x5e509b];return!_0x578bc2?(_0x1664bb=a0_0x1664['kgmMLe'](_0x1664bb),a0_0x1664['OnIQOc'][_0x5e509b]=_0x1664bb):_0x1664bb=_0x578bc2,_0x1664bb;}class UploadHandlerV2{constructor(){this['_tempDir']=null;}get[a0_0x5c9fc5(0x170)](){const _0x2dfdc7=a0_0x5c9fc5,_0x463385={'XQKYQ':_0x2dfdc7(0x17e)};if(!this[_0x2dfdc7(0x1a6)]){const _0x58d03b=process['env']['RESTFORGE_PROJECT_NAME']||_0x463385['XQKYQ'];this['_tempDir']=process['env'][_0x2dfdc7(0x1a9)]||path['join'](process['cwd'](),'temp',_0x2dfdc7(0x1a2),_0x58d03b),!fsSync[_0x2dfdc7(0x176)](this[_0x2dfdc7(0x1a6)])&&fsSync['mkdirSync'](this[_0x2dfdc7(0x1a6)],{'recursive':!![]});}return this[_0x2dfdc7(0x1a6)];}['createUploadMiddleware'](_0x59591d={}){const _0x1ea766=a0_0x5c9fc5,_0x3b97a7={'DRMOE':function(_0x109138,_0x2616db,_0x2e7c99){return _0x109138(_0x2616db,_0x2e7c99);},'yzWSO':function(_0x19df71,_0x3df08a){return _0x19df71===_0x3df08a;},'JDZmE':function(_0x4d5b8e,_0x48a80d){return _0x4d5b8e(_0x48a80d);},'IuHKw':function(_0x16915a,_0x53d510){return _0x16915a(_0x53d510);}},_0x11353a=_0x59591d[_0x1ea766(0x183)]||0x5,_0x2216f2=this['_parseFileSize'](_0x59591d[_0x1ea766(0x1aa)]||_0x1ea766(0x198)),_0x138d15=_0x59591d['allowedTypes']||[],_0x115057=multer[_0x1ea766(0x16f)]({'destination':(_0x321f87,_0x162c94,_0x370dcb)=>{const _0x2e98af=_0x1ea766;!fsSync[_0x2e98af(0x176)](this['tempDir'])&&fsSync['mkdirSync'](this['tempDir'],{'recursive':!![]}),_0x3b97a7['DRMOE'](_0x370dcb,null,this[_0x2e98af(0x170)]);},'filename':(_0x41627d,_0x1784c7,_0x3bab7a)=>{const _0x4dbf69=_0x1ea766,_0x4dbd20=crypto['randomBytes'](0x8)[_0x4dbf69(0x18b)](_0x4dbf69(0x182)),_0x377a4b=Date[_0x4dbf69(0x19d)](),_0x2708b3=path['extname'](_0x1784c7[_0x4dbf69(0x190)]);_0x3b97a7[_0x4dbf69(0x17d)](_0x3bab7a,null,'upload-'+_0x377a4b+'-'+_0x4dbd20+_0x2708b3);}}),_0x1c5c52=(_0x1ecf16,_0x21ce8c,_0x17e2e1)=>{const _0x50d1ee=_0x1ea766;if(_0x3b97a7['yzWSO'](_0x138d15[_0x50d1ee(0x1a8)],0x0))return _0x3b97a7['DRMOE'](_0x17e2e1,null,!![]);const _0x240dcb=path[_0x50d1ee(0x196)](_0x21ce8c[_0x50d1ee(0x190)])[_0x50d1ee(0x177)]()[_0x50d1ee(0x191)]('.','');_0x138d15[_0x50d1ee(0x19b)](_0x240dcb)?_0x3b97a7['DRMOE'](_0x17e2e1,null,!![]):_0x3b97a7['JDZmE'](_0x17e2e1,new Error('File\x20type\x20\x22.'+_0x240dcb+'\x22\x20is\x20not\x20allowed.\x20Allowed\x20types:\x20'+_0x138d15[_0x50d1ee(0x184)](',\x20')));};return _0x3b97a7[_0x1ea766(0x171)](multer,{'storage':_0x115057,'limits':{'fileSize':_0x2216f2,'files':_0x11353a},'fileFilter':_0x1c5c52})[_0x1ea766(0x178)]('files',_0x11353a);}async[a0_0x5c9fc5(0x186)](_0x23a359,_0x4e4f64,_0x521cfc={}){const _0x59b30e=a0_0x5c9fc5,_0x1fdcc9={'WSRuJ':_0x59b30e(0x1a4),'hjzOe':function(_0x180dd4,_0x3a3c9c){return _0x180dd4(_0x3a3c9c);}},{createFileMetadata:_0x453f1a}=require(_0x1fdcc9['WSRuJ']),_0x1b610d=[];for(const _0x591703 of _0x23a359){try{const _0x2b0f01=_0x4e4f64['generateKey'](_0x591703['originalname'],{'prefix':_0x521cfc['prefix']||'','project':_0x521cfc[_0x59b30e(0x17a)]||'','module':_0x521cfc['module']||'','endpoint':_0x521cfc['endpoint']||''}),_0x1219db=fsSync[_0x59b30e(0x195)](_0x591703[_0x59b30e(0x1a7)]),_0x5e6d71=await _0x4e4f64[_0x59b30e(0x193)](_0x1219db,_0x2b0f01,{'contentType':_0x591703['mimetype'],'fileSize':_0x591703[_0x59b30e(0x19f)]}),_0x1566d8=_0x1fdcc9[_0x59b30e(0x179)](_0x453f1a,{'key':_0x5e6d71[_0x59b30e(0x16d)],'originalName':_0x591703['originalname'],'fileName':path[_0x59b30e(0x1a0)](_0x2b0f01),'contentType':_0x591703[_0x59b30e(0x18e)],'size':_0x591703[_0x59b30e(0x19f)],'url':_0x5e6d71['url'],'provider':_0x4e4f64['providerName'],'bucket':_0x4e4f64[_0x59b30e(0x188)]||null,'uploadedBy':_0x521cfc[_0x59b30e(0x181)]||null});_0x1b610d[_0x59b30e(0x17b)](_0x1566d8);}catch(_0x2a5de2){logger['error']({'event':_0x59b30e(0x194),'file':_0x591703['originalname'],'error':_0x2a5de2[_0x59b30e(0x18d)]},_0x59b30e(0x19c)+_0x591703[_0x59b30e(0x190)]);throw _0x2a5de2;}finally{await this[_0x59b30e(0x18a)](_0x591703['path']);}}return _0x1b610d;}async['_deleteTempFile'](_0x8dc1fb){const _0x575752=a0_0x5c9fc5;try{await fs['unlink'](_0x8dc1fb);}catch(_0x4bfb98){logger[_0x575752(0x173)]({'event':_0x575752(0x192),'filePath':_0x8dc1fb,'error':_0x4bfb98[_0x575752(0x18d)]},_0x575752(0x180));}}[a0_0x5c9fc5(0x1a3)](_0x54dd48){const _0x15ef9b=a0_0x5c9fc5,_0x2bb48b={'AISVj':function(_0x11d404,_0xd433af){return _0x11d404===_0xd433af;},'suKQH':function(_0x21ecb0,_0x4b32a4){return _0x21ecb0(_0x4b32a4);},'vzOCk':function(_0x29ec8f,_0x33f755){return _0x29ec8f*_0x33f755;},'tnAIt':function(_0x2e7869,_0x39857c){return _0x2e7869*_0x39857c;},'bEUjC':function(_0xdf5f6d,_0x352366){return _0xdf5f6d*_0x352366;},'VVChX':function(_0x3c36d8,_0x18527b){return _0x3c36d8*_0x18527b;}};if(_0x2bb48b['AISVj'](typeof _0x54dd48,'number'))return _0x54dd48;const _0x1f91f5=_0x2bb48b[_0x15ef9b(0x19a)](String,_0x54dd48)['trim']()['match'](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x1f91f5)return _0x2bb48b[_0x15ef9b(0x17c)](0xa,0x400)*0x400;const _0x58fbff=parseFloat(_0x1f91f5[0x1]),_0x2f3a51=_0x1f91f5[0x2]['toUpperCase'](),_0x5b90ad={'B':0x1,'KB':0x400,'MB':_0x2bb48b[_0x15ef9b(0x17f)](0x400,0x400),'GB':_0x2bb48b['bEUjC'](0x400*0x400,0x400)};return Math['floor'](_0x2bb48b['VVChX'](_0x58fbff,_0x5b90ad[_0x2f3a51]||0x1));}}module[a0_0x5c9fc5(0x18f)]=new UploadHandlerV2();
@@ -1 +1 @@
1
- const a0_0x5ec5c7=a0_0x10d9;function a0_0x151f(){const _0x21cb0d=['DxbSB2fKrgLY','Dw5SAw5R','tLL5qxC','mtq2mZe0odbrwxzKt3a','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','mtCWmwrmAvLRDG','zxjYB3i','Aw5JBhvKzxm','mJGYnJzwz3jwB1y','z2v0vxbSB2fKtwLKzgXLD2fYzq','BwLTzxr5Cgu','CNPHqKq','vvPeAfa','Dg9tDhjPBMC','zw52','zKDPuhu','otqXnJqWBK5MDLLW','zgLZA1n0B3jHz2u','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','BuL1EM4','mJbUDfzXtNm','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','zMLSzq','mJiYnLP5tfDzAG','y3j5ChrV','mtiWnte5AvrrALjR','x3vWBg9HzerPCG','mZC2mZb2v2nsELK','mty0mZmXuNLesM5U','BuHgBgS','BxvSDgvY','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','Agv4','vvbmt0fex0rjuG','B3jPz2LUywXUyw1L','r0ngB3m','zxH0BMfTzq','mtqZBMnMzwjg','Cgf0Aa','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','BwTKAxjtEw5J','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','BwvZC2fNzq','lI9SB2DNzxi','mJGWtLbIyKvv','mZf5wu5qs24','zgvSzxrLrMLSzq'];a0_0x151f=function(){return _0x21cb0d;};return a0_0x151f();}(function(_0x14c4ce,_0x334535){const _0x2b42a1=a0_0x10d9,_0x3af5c9=_0x14c4ce();while(!![]){try{const _0x55dd11=parseInt(_0x2b42a1(0xc3))/0x1*(-parseInt(_0x2b42a1(0x9e))/0x2)+-parseInt(_0x2b42a1(0xb2))/0x3*(-parseInt(_0x2b42a1(0xaa))/0x4)+-parseInt(_0x2b42a1(0xa6))/0x5+-parseInt(_0x2b42a1(0xad))/0x6*(parseInt(_0x2b42a1(0x9b))/0x7)+parseInt(_0x2b42a1(0xc2))/0x8*(-parseInt(_0x2b42a1(0xaf))/0x9)+parseInt(_0x2b42a1(0xb1))/0xa*(-parseInt(_0x2b42a1(0xbb))/0xb)+parseInt(_0x2b42a1(0x99))/0xc;if(_0x55dd11===_0x334535)break;else _0x3af5c9['push'](_0x3af5c9['shift']());}catch(_0x38478e){_0x3af5c9['push'](_0x3af5c9['shift']());}}}(a0_0x151f,0x3f397));function a0_0x10d9(_0x4e4bb8,_0xaf83a3){_0x4e4bb8=_0x4e4bb8-0x96;const _0x151f65=a0_0x151f();let _0x10d907=_0x151f65[_0x4e4bb8];if(a0_0x10d9['oixdzb']===undefined){var _0x4c1cb5=function(_0x4ad142){const _0x49cc9e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x236e69='',_0x128e54='';for(let _0x45516d=0x0,_0x5da797,_0x142d23,_0x269def=0x0;_0x142d23=_0x4ad142['charAt'](_0x269def++);~_0x142d23&&(_0x5da797=_0x45516d%0x4?_0x5da797*0x40+_0x142d23:_0x142d23,_0x45516d++%0x4)?_0x236e69+=String['fromCharCode'](0xff&_0x5da797>>(-0x2*_0x45516d&0x6)):0x0){_0x142d23=_0x49cc9e['indexOf'](_0x142d23);}for(let _0x3fbd64=0x0,_0x4561f4=_0x236e69['length'];_0x3fbd64<_0x4561f4;_0x3fbd64++){_0x128e54+='%'+('00'+_0x236e69['charCodeAt'](_0x3fbd64)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x128e54);};a0_0x10d9['DCWyZW']=_0x4c1cb5,a0_0x10d9['CtbYNN']={},a0_0x10d9['oixdzb']=!![];}const _0x462846=_0x151f65[0x0],_0x210b7d=_0x4e4bb8+_0x462846,_0x2778cf=a0_0x10d9['CtbYNN'][_0x210b7d];return!_0x2778cf?(_0x10d907=a0_0x10d9['DCWyZW'](_0x10d907),a0_0x10d9['CtbYNN'][_0x210b7d]=_0x10d907):_0x10d907=_0x2778cf,_0x10d907;}const multer=require(a0_0x5ec5c7(0xb4)),path=require(a0_0x5ec5c7(0xbc)),crypto=require(a0_0x5ec5c7(0xae)),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x5ec5c7(0xc1));class UploadHandler{constructor(){const _0x587a9d=a0_0x5ec5c7;this[_0x587a9d(0xb0)]=null,this['maxFileSize']=0xa*0x400*0x400;}get['uploadDir'](){const _0x11cfde=a0_0x5ec5c7,_0x5a9c16={'fUUPt':_0x11cfde(0xbf)};if(!this[_0x11cfde(0xb0)]){const _0x4f0c52=process[_0x11cfde(0xa4)]['RESTFORGE_PROJECT_NAME']||'default';this['_uploadDir']=process['env'][_0x11cfde(0xb7)]||path['join'](__dirname,'../../temp/uploads/'+_0x4f0c52);try{!fsSync['existsSync'](this[_0x11cfde(0xb0)])&&fsSync[_0x11cfde(0xbe)](this['_uploadDir'],{'recursive':!![]}),logger['info']({'event':'upload_handler_init','dir':this[_0x11cfde(0xb0)]},_0x11cfde(0xbd));}catch(_0x33e990){logger[_0x11cfde(0x9c)]({'event':_0x11cfde(0xa8),'error':_0x33e990[_0x11cfde(0xc0)]},_0x5a9c16['fUUPt']);}}return this['_uploadDir'];}['getStorage'](){const _0x52ae54=a0_0x5ec5c7,_0x1a6ee8={'NYyAw':function(_0x42fba9,_0x371345,_0x597bb0){return _0x42fba9(_0x371345,_0x597bb0);},'UZDhP':_0x52ae54(0xb6),'GCFos':function(_0x2a272d,_0x97c745,_0x250106){return _0x2a272d(_0x97c745,_0x250106);}};return multer[_0x52ae54(0xa7)]({'destination':(_0x190599,_0x217989,_0x13d74e)=>{const _0x4ead11=_0x52ae54;!fsSync['existsSync'](this[_0x4ead11(0x96)])&&fsSync[_0x4ead11(0xbe)](this['uploadDir'],{'recursive':!![]}),_0x1a6ee8[_0x4ead11(0x98)](_0x13d74e,null,this[_0x4ead11(0x96)]);},'filename':(_0x5d7211,_0x196be8,_0x4e841f)=>{const _0xd56145=_0x52ae54,_0x4b0e50=crypto['randomBytes'](0x8)[_0xd56145(0xa3)](_0x1a6ee8[_0xd56145(0xa2)]),_0x1b3125=Date['now'](),_0xfa0b8f=path['extname'](_0x196be8[_0xd56145(0xb8)]);_0x1a6ee8[_0xd56145(0xb9)](_0x4e841f,null,'upload-'+_0x1b3125+'-'+_0x4b0e50+_0xfa0b8f);}});}[a0_0x5ec5c7(0x9f)](){const _0x53b949=a0_0x5ec5c7,_0x20d864={'wFHnj':'application/vnd.ms-excel','ntQXk':'.xlsx','mHFlk':function(_0x294d25,_0x3b52e5,_0x39457e){return _0x294d25(_0x3b52e5,_0x39457e);},'PtVyL':function(_0x501163,_0xc919f3){return _0x501163(_0xc919f3);},'iXazq':'Invalid\x20file\x20type.\x20Only\x20.xlsx\x20files\x20are\x20allowed','lDoJx':_0x53b949(0xac)};return _0x20d864['PtVyL'](multer,{'storage':this['getStorage'](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x2ec9c7,_0x1a231f,_0x211ca9)=>{const _0x469c4e=_0x53b949,_0x514eeb=['application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',_0x20d864['wFHnj']],_0x5debd1=[_0x20d864['ntQXk'],'.xls'],_0x23d5e5=path[_0x469c4e(0xba)](_0x1a231f['originalname'])['toLowerCase']();_0x514eeb[_0x469c4e(0x9d)](_0x1a231f[_0x469c4e(0xa0)])&&_0x5debd1[_0x469c4e(0x9d)](_0x23d5e5)?_0x20d864[_0x469c4e(0xb3)](_0x211ca9,null,!![]):_0x20d864['PtVyL'](_0x211ca9,new Error(_0x20d864['iXazq']));}})['single'](_0x20d864['lDoJx']);}async[a0_0x5ec5c7(0xc4)](_0x25f270){const _0x168355=a0_0x5ec5c7,_0x5b010d={'mIuzn':'upload_file_deleted','rzaBD':_0x168355(0xab),'fGiPu':_0x168355(0xb5)};try{await fs[_0x168355(0x97)](_0x25f270),logger['info']({'event':_0x5b010d[_0x168355(0xa9)],'filePath':_0x25f270},_0x5b010d[_0x168355(0xa1)]);}catch(_0x51a199){logger['error']({'event':_0x5b010d[_0x168355(0xa5)],'filePath':_0x25f270,'error':_0x51a199['message']},_0x168355(0x9a));}}}module['exports']=new UploadHandler();
1
+ const a0_0x1d54f7=a0_0x52c9;function a0_0x52c9(_0x43c825,_0xbafd7c){_0x43c825=_0x43c825-0x140;const _0x3ad46d=a0_0x3ad4();let _0x52c9f6=_0x3ad46d[_0x43c825];if(a0_0x52c9['XITldO']===undefined){var _0x316a6b=function(_0x52d47c){const _0x4ca52f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2d9c26='',_0x52e738='';for(let _0x2006d0=0x0,_0x2e1bc5,_0x32bab5,_0x488cd0=0x0;_0x32bab5=_0x52d47c['charAt'](_0x488cd0++);~_0x32bab5&&(_0x2e1bc5=_0x2006d0%0x4?_0x2e1bc5*0x40+_0x32bab5:_0x32bab5,_0x2006d0++%0x4)?_0x2d9c26+=String['fromCharCode'](0xff&_0x2e1bc5>>(-0x2*_0x2006d0&0x6)):0x0){_0x32bab5=_0x4ca52f['indexOf'](_0x32bab5);}for(let _0x44550b=0x0,_0x35608d=_0x2d9c26['length'];_0x44550b<_0x35608d;_0x44550b++){_0x52e738+='%'+('00'+_0x2d9c26['charCodeAt'](_0x44550b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x52e738);};a0_0x52c9['ytxVqx']=_0x316a6b,a0_0x52c9['sKfvaV']={},a0_0x52c9['XITldO']=!![];}const _0x11941e=_0x3ad46d[0x0],_0x1d4211=_0x43c825+_0x11941e,_0x3d71e6=a0_0x52c9['sKfvaV'][_0x1d4211];return!_0x3d71e6?(_0x52c9f6=a0_0x52c9['ytxVqx'](_0x52c9f6),a0_0x52c9['sKfvaV'][_0x1d4211]=_0x52c9f6):_0x52c9f6=_0x3d71e6,_0x52c9f6;}function a0_0x3ad4(){const _0x3989de=['yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','vvbmt0fex0rjuG','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','BwLTzxr5Cgu','y3j5ChrV','zxjYB3i','AM9PBG','zw52','B213y3G','Aw5JBhvKzxm','mtKXmdK1mNv0yKjura','zePqu0i','lNHSC3G','nxLlDhP0Ca','zgvMyxvSDa','ChjVBwLZzxm','zhrZz2K','lNHSCW','x3vWBg9HzerPCG','BxvSDgvY','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','mtKYnJy3mLLjywXVva','Aw5MBW','mtyZndb2B21sExi','zxH0BMfTzq','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','AuzvA3y','Dg9mB3DLCKnHC2u','tKfSrg0','mxrLANP0Eq','mJiXotK0meDrwuLXsG','Dg9tDhjPBMC','mtvtCwvSq0S','BwTKAxjtEw5J','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','zxHPC3rZu3LUyW','n1r6u0HSyq','zgvSzxrLrMLSzq','DxbSB2fKx2HHBMrSzxjFAw5PDa','Bwf4rMLSzvnPEMu','ntmXsNDUB0fk','mZq4ntK2uvHJtenr','DxbSB2fKrgLY','lI9SB2DNzxi','mti4otu5ogzss0nvrq','zgLZA1n0B3jHz2u','mte5mtGXmZziu1fhr3a','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','vwjwCMK','z2v0vxbSB2fKtwLKzgXLD2fYzq','EufzC0u','BwvZC2fNzq','CMfUzg9TqNL0zxm','Agv4','zxHWB3j0CW'];a0_0x3ad4=function(){return _0x3989de;};return a0_0x3ad4();}(function(_0xde499a,_0x5a9a13){const _0x20b872=a0_0x52c9,_0x11da1c=_0xde499a();while(!![]){try{const _0x69b4aa=-parseInt(_0x20b872(0x158))/0x1*(parseInt(_0x20b872(0x167))/0x2)+-parseInt(_0x20b872(0x15b))/0x3*(-parseInt(_0x20b872(0x164))/0x4)+-parseInt(_0x20b872(0x148))/0x5*(parseInt(_0x20b872(0x159))/0x6)+-parseInt(_0x20b872(0x15f))/0x7*(-parseInt(_0x20b872(0x145))/0x8)+parseInt(_0x20b872(0x163))/0x9*(-parseInt(_0x20b872(0x152))/0xa)+-parseInt(_0x20b872(0x150))/0xb+parseInt(_0x20b872(0x169))/0xc;if(_0x69b4aa===_0x5a9a13)break;else _0x11da1c['push'](_0x11da1c['shift']());}catch(_0x45c8e9){_0x11da1c['push'](_0x11da1c['shift']());}}}(a0_0x3ad4,0x5d205));const multer=require(a0_0x1d54f7(0x14e)),path=require('path'),crypto=require(a0_0x1d54f7(0x176)),fs=require('fs')[a0_0x1d54f7(0x14a)],fsSync=require('fs'),{logger}=require(a0_0x1d54f7(0x166));class UploadHandler{constructor(){const _0x4ae9e1=a0_0x1d54f7;this['_uploadDir']=null,this[_0x4ae9e1(0x162)]=0xa*0x400*0x400;}get['uploadDir'](){const _0x188c17=a0_0x1d54f7,_0x4fc9be={'GaOWR':_0x188c17(0x149),'dtsgi':_0x188c17(0x161),'qvtiX':'upload_handler_init_error'};if(!this['_uploadDir']){const _0x36a8a8=process['env']['RESTFORGE_PROJECT_NAME']||_0x4fc9be['GaOWR'];this['_uploadDir']=process[_0x188c17(0x142)][_0x188c17(0x173)]||path[_0x188c17(0x141)](__dirname,'../../temp/uploads/'+_0x36a8a8);try{!fsSync[_0x188c17(0x15e)](this['_uploadDir'])&&fsSync[_0x188c17(0x15c)](this['_uploadDir'],{'recursive':!![]}),logger[_0x188c17(0x151)]({'event':_0x4fc9be[_0x188c17(0x14b)],'dir':this[_0x188c17(0x14d)]},_0x188c17(0x16a));}catch(_0x418a39){logger['error']({'event':_0x4fc9be['qvtiX'],'error':_0x418a39['message']},'Failed\x20to\x20initialize\x20upload\x20handler');}}return this['_uploadDir'];}['getStorage'](){const _0x1b5679=a0_0x1d54f7,_0x3e4f7e={'omwcx':function(_0x445111,_0x1237b2,_0x988af6){return _0x445111(_0x1237b2,_0x988af6);},'iFUkv':_0x1b5679(0x170)};return multer[_0x1b5679(0x168)]({'destination':(_0x20b759,_0x29b120,_0x5ce854)=>{const _0x1298f1=_0x1b5679;!fsSync[_0x1298f1(0x15e)](this['uploadDir'])&&fsSync[_0x1298f1(0x15c)](this[_0x1298f1(0x165)],{'recursive':!![]}),_0x3e4f7e[_0x1298f1(0x143)](_0x5ce854,null,this['uploadDir']);},'filename':(_0x3ca7a2,_0x32bc2a,_0x5b4b92)=>{const _0x24f651=_0x1b5679,_0x550be6=crypto[_0x24f651(0x16f)](0x8)[_0x24f651(0x15a)](_0x3e4f7e[_0x24f651(0x155)]),_0x56f39f=Date['now'](),_0x1581c3=path['extname'](_0x32bc2a['originalname']);_0x5b4b92(null,'upload-'+_0x56f39f+'-'+_0x550be6+_0x1581c3);}});}[a0_0x1d54f7(0x16c)](){const _0x590ddf=a0_0x1d54f7,_0x288ea8={'zmyEb':_0x590ddf(0x172),'OuACv':_0x590ddf(0x154),'NAlDm':_0x590ddf(0x14c),'AfTHg':function(_0x48636c,_0x1eb767,_0x37101a){return _0x48636c(_0x1eb767,_0x37101a);},'UbVri':function(_0x54fcb9,_0x15fb6d){return _0x54fcb9(_0x15fb6d);},'yAYsE':function(_0x46c683,_0x3e079b){return _0x46c683(_0x3e079b);}};return _0x288ea8[_0x590ddf(0x16d)](multer,{'storage':this['getStorage'](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x1c5067,_0x27b871,_0x4943c3)=>{const _0x309005=_0x590ddf,_0x20673e=[_0x288ea8['zmyEb'],_0x288ea8['OuACv']],_0x80becf=[_0x309005(0x147),_0x288ea8[_0x309005(0x157)]],_0x21316f=path[_0x309005(0x153)](_0x27b871['originalname'])[_0x309005(0x156)]();_0x20673e[_0x309005(0x144)](_0x27b871[_0x309005(0x175)])&&_0x80becf[_0x309005(0x144)](_0x21316f)?_0x288ea8['AfTHg'](_0x4943c3,null,!![]):_0x288ea8[_0x309005(0x16b)](_0x4943c3,new Error(_0x309005(0x14f)));}})['single']('file');}async[a0_0x1d54f7(0x160)](_0x1a1014){const _0x5b837a=a0_0x1d54f7,_0x49f54a={'FzMuo':'upload_file_deleted','dJPSB':'Failed\x20to\x20delete\x20uploaded\x20file'};try{await fs['unlink'](_0x1a1014),logger['info']({'event':_0x49f54a['FzMuo'],'filePath':_0x1a1014},_0x5b837a(0x15d));}catch(_0x5ee66e){logger[_0x5b837a(0x140)]({'event':_0x5b837a(0x174),'filePath':_0x1a1014,'error':_0x5ee66e[_0x5b837a(0x16e)]},_0x49f54a[_0x5b837a(0x146)]);}}}module[a0_0x1d54f7(0x171)]=new UploadHandler();
@@ -1 +1 @@
1
- const a0_0x3b4869=a0_0x4be4;function a0_0x3fb6(){const _0x192cf2=['yxbWBgLJyxrPB24VANnVBG','mtK5odi1sLziug5u','mteWnZuYmtfzALjOre0','Dg9ju09tDhjPBMC','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','Aw5Zzxj0','zgvSzxrL','lcbtDgf0Dxm6ia','rMfPBgvKihrVihnLBMqGzgvSzxrLihDLyMHVB2S','yxHPB3m','m2HHuxDNCG','ntmZntKZmNzKsgrZEG','zxjYB3i','nZHpvw5hwfi','rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','A1jIAMW','nZm2mduXmKXOC3bNsa','CuLYvMi','mtK5nty4EevxBNn4','BwvZC2fNzq','Bg9N','nZKZnZG4oeT6C0nABG','mZa1ndnxuLz1AhG','C3rHDhvZ','sw5Zzxj0ihDLyMHVB2SGC2vUDcb0BYa'];a0_0x3fb6=function(){return _0x192cf2;};return a0_0x3fb6();}(function(_0x1ac209,_0x46a855){const _0x1af731=a0_0x4be4,_0x533737=_0x1ac209();while(!![]){try{const _0x2fa24e=-parseInt(_0x1af731(0x120))/0x1*(parseInt(_0x1af731(0x117))/0x2)+parseInt(_0x1af731(0x114))/0x3*(parseInt(_0x1af731(0x11c))/0x4)+parseInt(_0x1af731(0x10b))/0x5+parseInt(_0x1af731(0x115))/0x6+parseInt(_0x1af731(0x11f))/0x7+parseInt(_0x1af731(0x11a))/0x8+-parseInt(_0x1af731(0x10c))/0x9;if(_0x2fa24e===_0x46a855)break;else _0x533737['push'](_0x533737['shift']());}catch(_0x3a68fd){_0x533737['push'](_0x533737['shift']());}}}(a0_0x3fb6,0x9548f));const axios=require(a0_0x3b4869(0x113));function a0_0x4be4(_0x9a590e,_0x2884af){_0x9a590e=_0x9a590e-0x10b;const _0x3fb6fb=a0_0x3fb6();let _0x4be40d=_0x3fb6fb[_0x9a590e];if(a0_0x4be4['DqHUhR']===undefined){var _0x3b9e54=function(_0x5a36c0){const _0x4f50cb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ee7b8='',_0x78a6a8='';for(let _0x814c3b=0x0,_0x180149,_0x4b7ee5,_0xdc6982=0x0;_0x4b7ee5=_0x5a36c0['charAt'](_0xdc6982++);~_0x4b7ee5&&(_0x180149=_0x814c3b%0x4?_0x180149*0x40+_0x4b7ee5:_0x4b7ee5,_0x814c3b++%0x4)?_0x4ee7b8+=String['fromCharCode'](0xff&_0x180149>>(-0x2*_0x814c3b&0x6)):0x0){_0x4b7ee5=_0x4f50cb['indexOf'](_0x4b7ee5);}for(let _0x4e3611=0x0,_0xba655c=_0x4ee7b8['length'];_0x4e3611<_0xba655c;_0x4e3611++){_0x78a6a8+='%'+('00'+_0x4ee7b8['charCodeAt'](_0x4e3611)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x78a6a8);};a0_0x4be4['kGVKkH']=_0x3b9e54,a0_0x4be4['eLHfRH']={},a0_0x4be4['DqHUhR']=!![];}const _0x5f30aa=_0x3fb6fb[0x0],_0x2f3a46=_0x9a590e+_0x5f30aa,_0x4bb2e8=a0_0x4be4['eLHfRH'][_0x2f3a46];return!_0x4bb2e8?(_0x4be40d=a0_0x4be4['kGVKkH'](_0x4be40d),a0_0x4be4['eLHfRH'][_0x2f3a46]=_0x4be40d):_0x4be40d=_0x4bb2e8,_0x4be40d;}async function sendInsertWebhook(_0x1b92ac,_0x122bf4,_0x20ee6d={}){const _0x58b19e=a0_0x3b4869,_0x17fa98={'kRbjl':_0x58b19e(0x123),'qIrVb':'Insert\x20webhook\x20sent\x20successfully','KWbCN':'Error\x20sending\x20insert\x20webhook:'};try{const _0xb708ad={'event':_0x58b19e(0x10f),'timestamp':new Date()[_0x58b19e(0x10d)](),'data':_0x122bf4},_0x32b519=await axios['post'](_0x1b92ac,_0xb708ad,{'headers':{'Content-Type':_0x17fa98[_0x58b19e(0x119)],'User-Agent':'RestForge-Webhook/1.0',..._0x20ee6d},'timeout':0x2710});return console[_0x58b19e(0x11e)](_0x58b19e(0x122)+_0x1b92ac+',\x20Status:\x20'+_0x32b519['status']),{'success':!![],'message':_0x17fa98[_0x58b19e(0x11b)],'status':_0x32b519[_0x58b19e(0x121)],'url':_0x1b92ac};}catch(_0x579b88){return console[_0x58b19e(0x116)](_0x17fa98['KWbCN'],_0x579b88['message']),{'success':![],'message':_0x58b19e(0x118),'error':_0x579b88[_0x58b19e(0x11d)],'url':_0x1b92ac};}}async function sendDeleteWebhook(_0x4dc975,_0x19a9f4,_0x32c995={}){const _0x1acca5=a0_0x3b4869,_0x1e0365={'VWYar':_0x1acca5(0x10e)};try{const _0x1b1874={'event':_0x1acca5(0x110),'timestamp':new Date()['toISOString'](),'deleted_data':_0x19a9f4},_0xe2153e=await axios['post'](_0x4dc975,_0x1b1874,{'headers':{'Content-Type':_0x1acca5(0x123),'User-Agent':'RestForge-Webhook/1.0',..._0x32c995},'timeout':0x2710});return console['log']('Delete\x20webhook\x20sent\x20to\x20'+_0x4dc975+_0x1acca5(0x111)+_0xe2153e[_0x1acca5(0x121)]),{'success':!![],'message':_0x1e0365['VWYar'],'status':_0xe2153e['status'],'url':_0x4dc975};}catch(_0x1ec942){return console['error']('Error\x20sending\x20delete\x20webhook:',_0x1ec942[_0x1acca5(0x11d)]),{'success':![],'message':_0x1acca5(0x112),'error':_0x1ec942[_0x1acca5(0x11d)],'url':_0x4dc975};}}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
1
+ const a0_0x4edf9c=a0_0x2072;(function(_0x58ac9c,_0x67a80d){const _0x410a1c=a0_0x2072,_0xad6e48=_0x58ac9c();while(!![]){try{const _0x1ff6e6=parseInt(_0x410a1c(0x8c))/0x1*(parseInt(_0x410a1c(0x8d))/0x2)+-parseInt(_0x410a1c(0x88))/0x3+-parseInt(_0x410a1c(0x79))/0x4+parseInt(_0x410a1c(0x8f))/0x5+-parseInt(_0x410a1c(0x8a))/0x6+parseInt(_0x410a1c(0x84))/0x7+parseInt(_0x410a1c(0x80))/0x8;if(_0x1ff6e6===_0x67a80d)break;else _0xad6e48['push'](_0xad6e48['shift']());}catch(_0x4d78cb){_0xad6e48['push'](_0xad6e48['shift']());}}}(a0_0x2d23,0xac22b));function a0_0x2d23(){const _0x13202b=['CgrYwve','mtq1ntiYmKTmA2fOrq','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','nJy1mZq2yvLOBhPv','Aw5Zzxj0','odC4mKjdyMLmwa','mtu0yLH3s0f1','rMfPBgvKihrVihnLBMqGzgvSzxrLihDLyMHVB2S','mZq2nJa2mhHQzvHVuG','Cg9ZDa','nta0nJCXnLnQsxPitW','lcbtDgf0Dxm6ia','rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','Bg9N','yxHPB3m','Dg9ju09tDhjPBMC','mta0mta5nLftDK1kvW','rxjYB3iGC2vUzgLUzYbPBNnLCNqGD2vIAg9VAZO','C3rHDhvZ','yxbWBgLJyxrPB24VANnVBG','nZq0mJaZnLnvCwfVDW','zgvSzxrL','BwvZC2fNzq'];a0_0x2d23=function(){return _0x13202b;};return a0_0x2d23();}const axios=require(a0_0x4edf9c(0x7e));async function sendInsertWebhook(_0x47ca64,_0x2bba78,_0x2782ba={}){const _0x18f63f=a0_0x4edf9c,_0x35c3b9={'RpkUB':_0x18f63f(0x8b),'pdrYQ':_0x18f63f(0x83),'HGiWQ':'RestForge-Webhook/1.0','XvJjD':_0x18f63f(0x81)};try{const _0x193d1c={'event':_0x35c3b9['RpkUB'],'timestamp':new Date()['toISOString'](),'data':_0x2bba78},_0x18ccbd=await axios[_0x18f63f(0x78)](_0x47ca64,_0x193d1c,{'headers':{'Content-Type':_0x35c3b9[_0x18f63f(0x87)],'User-Agent':_0x35c3b9['HGiWQ'],..._0x2782ba},'timeout':0x2710});return console[_0x18f63f(0x7d)]('Insert\x20webhook\x20sent\x20to\x20'+_0x47ca64+_0x18f63f(0x7a)+_0x18ccbd['status']),{'success':!![],'message':'Insert\x20webhook\x20sent\x20successfully','status':_0x18ccbd[_0x18f63f(0x82)],'url':_0x47ca64};}catch(_0x4e6f3c){return console['error'](_0x35c3b9['XvJjD'],_0x4e6f3c[_0x18f63f(0x86)]),{'success':![],'message':_0x18f63f(0x7b),'error':_0x4e6f3c['message'],'url':_0x47ca64};}}function a0_0x2072(_0x28352d,_0x3b8912){_0x28352d=_0x28352d-0x78;const _0x2d23c5=a0_0x2d23();let _0x207228=_0x2d23c5[_0x28352d];if(a0_0x2072['jvgmNN']===undefined){var _0x587c4d=function(_0x132171){const _0x45f411='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x31b96e='',_0x27a5d9='';for(let _0x4daab3=0x0,_0x3ef9c5,_0x5a187e,_0x48f48c=0x0;_0x5a187e=_0x132171['charAt'](_0x48f48c++);~_0x5a187e&&(_0x3ef9c5=_0x4daab3%0x4?_0x3ef9c5*0x40+_0x5a187e:_0x5a187e,_0x4daab3++%0x4)?_0x31b96e+=String['fromCharCode'](0xff&_0x3ef9c5>>(-0x2*_0x4daab3&0x6)):0x0){_0x5a187e=_0x45f411['indexOf'](_0x5a187e);}for(let _0x1f26dc=0x0,_0x122cec=_0x31b96e['length'];_0x1f26dc<_0x122cec;_0x1f26dc++){_0x27a5d9+='%'+('00'+_0x31b96e['charCodeAt'](_0x1f26dc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x27a5d9);};a0_0x2072['xbqddN']=_0x587c4d,a0_0x2072['wewxoc']={},a0_0x2072['jvgmNN']=!![];}const _0x12bfe6=_0x2d23c5[0x0],_0x221616=_0x28352d+_0x12bfe6,_0x1756c8=a0_0x2072['wewxoc'][_0x221616];return!_0x1756c8?(_0x207228=a0_0x2072['xbqddN'](_0x207228),a0_0x2072['wewxoc'][_0x221616]=_0x207228):_0x207228=_0x1756c8,_0x207228;}async function sendDeleteWebhook(_0x19211d,_0x39a18d,_0x1c19d5={}){const _0x2d0ec5=a0_0x4edf9c,_0xbe177f={'vUaFV':_0x2d0ec5(0x89),'XnYPP':_0x2d0ec5(0x8e)};try{const _0x42b010={'event':_0x2d0ec5(0x85),'timestamp':new Date()[_0x2d0ec5(0x7f)](),'deleted_data':_0x39a18d},_0x3763eb=await axios['post'](_0x19211d,_0x42b010,{'headers':{'Content-Type':_0x2d0ec5(0x83),'User-Agent':'RestForge-Webhook/1.0',..._0x1c19d5},'timeout':0x2710});return console[_0x2d0ec5(0x7d)](_0x2d0ec5(0x7c)+_0x19211d+_0x2d0ec5(0x7a)+_0x3763eb['status']),{'success':!![],'message':_0xbe177f['vUaFV'],'status':_0x3763eb['status'],'url':_0x19211d};}catch(_0x3c916a){return console['error']('Error\x20sending\x20delete\x20webhook:',_0x3c916a['message']),{'success':![],'message':_0xbe177f['XnYPP'],'error':_0x3c916a[_0x2d0ec5(0x86)],'url':_0x19211d};}}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
@@ -1 +1 @@
1
- const a0_0x52c2e6=a0_0x4fa6;(function(_0x304303,_0x1bd8b2){const _0x13ba5a=a0_0x4fa6,_0xdee780=_0x304303();while(!![]){try{const _0x2fd540=-parseInt(_0x13ba5a(0x185))/0x1+parseInt(_0x13ba5a(0x184))/0x2*(-parseInt(_0x13ba5a(0x188))/0x3)+parseInt(_0x13ba5a(0x18f))/0x4+-parseInt(_0x13ba5a(0x180))/0x5+parseInt(_0x13ba5a(0x16f))/0x6+parseInt(_0x13ba5a(0x189))/0x7+parseInt(_0x13ba5a(0x17a))/0x8;if(_0x2fd540===_0x1bd8b2)break;else _0xdee780['push'](_0xdee780['shift']());}catch(_0x35e31c){_0xdee780['push'](_0xdee780['shift']());}}}(a0_0x3659,0xef614));function a0_0x4fa6(_0x1900cd,_0x3bdfd8){_0x1900cd=_0x1900cd-0x16f;const _0x36594f=a0_0x3659();let _0x4fa64e=_0x36594f[_0x1900cd];if(a0_0x4fa6['IOJfSZ']===undefined){var _0x31a978=function(_0x5567ac){const _0xab2c34='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f7b3e='',_0x5b998b='';for(let _0x4f0188=0x0,_0x4c64b6,_0x9bc93e,_0x2ec9a1=0x0;_0x9bc93e=_0x5567ac['charAt'](_0x2ec9a1++);~_0x9bc93e&&(_0x4c64b6=_0x4f0188%0x4?_0x4c64b6*0x40+_0x9bc93e:_0x9bc93e,_0x4f0188++%0x4)?_0x2f7b3e+=String['fromCharCode'](0xff&_0x4c64b6>>(-0x2*_0x4f0188&0x6)):0x0){_0x9bc93e=_0xab2c34['indexOf'](_0x9bc93e);}for(let _0x534de0=0x0,_0x5c950d=_0x2f7b3e['length'];_0x534de0<_0x5c950d;_0x534de0++){_0x5b998b+='%'+('00'+_0x2f7b3e['charCodeAt'](_0x534de0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5b998b);};a0_0x4fa6['KHadTA']=_0x31a978,a0_0x4fa6['xQPfwT']={},a0_0x4fa6['IOJfSZ']=!![];}const _0x28e881=_0x36594f[0x0],_0x573ce7=_0x1900cd+_0x28e881,_0x29f292=a0_0x4fa6['xQPfwT'][_0x573ce7];return!_0x29f292?(_0x4fa64e=a0_0x4fa6['KHadTA'](_0x4fa64e),a0_0x4fa6['xQPfwT'][_0x573ce7]=_0x4fa64e):_0x4fa64e=_0x29f292,_0x4fa64e;}const express=require(a0_0x52c2e6(0x182)),{logger}=require(a0_0x52c2e6(0x177));function createLockRoutes(){const _0x264991=a0_0x52c2e6,_0x572911={'lysGP':_0x264991(0x176),'XDPPq':_0x264991(0x187),'TRLKn':function(_0x166a36){return _0x166a36();},'rWKsm':function(_0x236b50,_0x5a9327){return _0x236b50===_0x5a9327;},'vgRfx':'Resource\x20lock\x20conflict','mHwfc':_0x264991(0x178),'ibriP':'Internal\x20server\x20error\x20during\x20lock\x20acquisition','wfvQF':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20lock_token','THkXT':_0x264991(0x179),'wIynb':_0x264991(0x18c),'qwGXw':'lock_status_route_error','axpBN':_0x264991(0x18e)},_0x121b1b=express['Router']();let _0x3b7322=null;function _0x48b599(){const _0x2f327f=_0x264991;return!_0x3b7322&&(_0x3b7322=require(_0x572911[_0x2f327f(0x17f)])),_0x3b7322;}return _0x121b1b['post'](_0x572911['axpBN'],async(_0x35f7f7,_0x4da146)=>{const _0x57d165=_0x264991;try{const {resource:_0x15fa38,lock_keys:_0xc8c2c5,ttl:_0x2e3808,owner:_0x40c92e}=_0x35f7f7[_0x57d165(0x181)];if(!_0x15fa38||!_0xc8c2c5||!_0x2e3808||!_0x40c92e)return _0x4da146[_0x57d165(0x170)](0x190)['json']({'success':![],'error':_0x572911['XDPPq']});const _0x353a18=_0x572911['TRLKn'](_0x48b599),_0x473fd5=await _0x353a18[_0x57d165(0x175)]({'resource':_0x15fa38,'lockKeys':_0xc8c2c5,'ttl':_0x2e3808,'owner':_0x40c92e});if(_0x473fd5[_0x57d165(0x17b)])return _0x4da146['json'](_0x473fd5);const _0x2ce61d=_0x572911[_0x57d165(0x17e)](_0x473fd5[_0x57d165(0x173)],_0x572911['vgRfx'])?0x199:0x190;return _0x4da146['status'](_0x2ce61d)[_0x57d165(0x174)](_0x473fd5);}catch(_0x19478d){logger['error']({'event':_0x572911[_0x57d165(0x17d)],'error':_0x19478d[_0x57d165(0x183)]},'Lock\x20acquire\x20route\x20error:\x20'+_0x19478d[_0x57d165(0x183)]),_0x4da146[_0x57d165(0x170)](0x1f4)[_0x57d165(0x174)]({'success':![],'error':_0x572911[_0x57d165(0x172)]});}}),_0x121b1b[_0x264991(0x18a)]('/release',async(_0x4e2ca9,_0x247edc)=>{const _0x494d7b=_0x264991;try{const {resource:_0x3ff2ed,lock_keys:_0x5578c9,lock_token:_0x5f3185}=_0x4e2ca9[_0x494d7b(0x181)];if(!_0x3ff2ed||!_0x5578c9||!_0x5f3185)return _0x247edc['status'](0x190)[_0x494d7b(0x174)]({'success':![],'error':_0x572911['wfvQF']});const _0x3133e4=_0x48b599(),_0x1b7cf6=await _0x3133e4['releaseResourceLocks']({'resource':_0x3ff2ed,'lockKeys':_0x5578c9,'lockToken':_0x5f3185});if(_0x1b7cf6[_0x494d7b(0x17b)])return _0x247edc[_0x494d7b(0x174)](_0x1b7cf6);return _0x247edc[_0x494d7b(0x170)](0x190)['json'](_0x1b7cf6);}catch(_0x41ba40){logger[_0x494d7b(0x173)]({'event':_0x572911['THkXT'],'error':_0x41ba40[_0x494d7b(0x183)]},_0x494d7b(0x171)+_0x41ba40[_0x494d7b(0x183)]),_0x247edc[_0x494d7b(0x170)](0x1f4)[_0x494d7b(0x174)]({'success':![],'error':_0x572911['wIynb']});}}),_0x121b1b[_0x264991(0x18a)]('/status',async(_0x321646,_0x7f5e3f)=>{const _0x2d9ae2=_0x264991;try{const {resource:_0x1ed5f0,lock_keys:_0x5267f7}=_0x321646[_0x2d9ae2(0x181)];if(!_0x1ed5f0||!_0x5267f7)return _0x7f5e3f['status'](0x190)[_0x2d9ae2(0x174)]({'success':![],'error':_0x2d9ae2(0x17c)});const _0x3605ef=_0x572911[_0x2d9ae2(0x186)](_0x48b599),_0x1c508e=await _0x3605ef[_0x2d9ae2(0x18d)]({'resource':_0x1ed5f0,'lockKeys':_0x5267f7});if(_0x1c508e['success'])return _0x7f5e3f[_0x2d9ae2(0x174)](_0x1c508e);return _0x7f5e3f[_0x2d9ae2(0x170)](0x190)['json'](_0x1c508e);}catch(_0x52875b){logger['error']({'event':_0x572911['qwGXw'],'error':_0x52875b['message']},'Lock\x20status\x20route\x20error:\x20'+_0x52875b[_0x2d9ae2(0x183)]),_0x7f5e3f[_0x2d9ae2(0x170)](0x1f4)['json']({'success':![],'error':_0x2d9ae2(0x18b)});}}),_0x121b1b;}function a0_0x3659(){const _0x4200c8=['twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','BuH3zMm','CLDlC20','BhLZr1a','nJq3mJeWnvvXswDyDa','yM9KEq','zxHWCMvZCW','BwvZC2fNzq','mNbVuejcDG','mtm1oda5ngTUAgDYBa','vfjms24','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSihr0BcWGB3DUzxi','ntiYmtGWmfPdAun4tG','nde0ndKYnej5EuDtCW','Cg9ZDa','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihn0yxr1CYbJAgvJAW','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihjLBgvHC2u','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','l2fJCxvPCMu','ntC5ndi0mfPRzgPIuq','mta3mJi1nZboB0jtB1O','C3rHDhvZ','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','AwjYAva','zxjYB3i','ANnVBG','ywnXDwLYzvjLC291CMnLtg9JA3m','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','lI4VlI4VDxrPBhmVBg9Nz2vY','Bg9JA19Hy3f1AxjLx3jVDxrLx2vYCM9Y','Bg9JA19YzwXLyxnLx3jVDxrLx2vYCM9Y','mtiZnJy2mJrVDKvss1G','C3vJy2vZCW'];a0_0x3659=function(){return _0x4200c8;};return a0_0x3659();}module['exports']=createLockRoutes;
1
+ const a0_0x247bc2=a0_0x502d;function a0_0x502d(_0x14cffa,_0x5d0c79){_0x14cffa=_0x14cffa-0x179;const _0x4d427e=a0_0x4d42();let _0x502ddd=_0x4d427e[_0x14cffa];if(a0_0x502d['LyTFms']===undefined){var _0x5f66d3=function(_0x26ee80){const _0x35c7c6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37c64c='',_0x2c8918='';for(let _0x450a6a=0x0,_0x5587fe,_0x5ec57a,_0x5c92da=0x0;_0x5ec57a=_0x26ee80['charAt'](_0x5c92da++);~_0x5ec57a&&(_0x5587fe=_0x450a6a%0x4?_0x5587fe*0x40+_0x5ec57a:_0x5ec57a,_0x450a6a++%0x4)?_0x37c64c+=String['fromCharCode'](0xff&_0x5587fe>>(-0x2*_0x450a6a&0x6)):0x0){_0x5ec57a=_0x35c7c6['indexOf'](_0x5ec57a);}for(let _0x257dc2=0x0,_0x3c46f1=_0x37c64c['length'];_0x257dc2<_0x3c46f1;_0x257dc2++){_0x2c8918+='%'+('00'+_0x37c64c['charCodeAt'](_0x257dc2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2c8918);};a0_0x502d['aDnDPx']=_0x5f66d3,a0_0x502d['NeaWoP']={},a0_0x502d['LyTFms']=!![];}const _0x3802f9=_0x4d427e[0x0],_0x13c183=_0x14cffa+_0x3802f9,_0x43fe9c=a0_0x502d['NeaWoP'][_0x13c183];return!_0x43fe9c?(_0x502ddd=a0_0x502d['aDnDPx'](_0x502ddd),a0_0x502d['NeaWoP'][_0x13c183]=_0x502ddd):_0x502ddd=_0x43fe9c,_0x502ddd;}(function(_0x2dec29,_0x3d852a){const _0x51a917=a0_0x502d,_0x2d7584=_0x2dec29();while(!![]){try{const _0x47e829=parseInt(_0x51a917(0x17e))/0x1+-parseInt(_0x51a917(0x193))/0x2+-parseInt(_0x51a917(0x182))/0x3+parseInt(_0x51a917(0x18f))/0x4*(parseInt(_0x51a917(0x192))/0x5)+parseInt(_0x51a917(0x196))/0x6+-parseInt(_0x51a917(0x18d))/0x7+-parseInt(_0x51a917(0x17a))/0x8*(parseInt(_0x51a917(0x17c))/0x9);if(_0x47e829===_0x3d852a)break;else _0x2d7584['push'](_0x2d7584['shift']());}catch(_0x1ae5fc){_0x2d7584['push'](_0x2d7584['shift']());}}}(a0_0x4d42,0x7fb90));const express=require('express'),{logger}=require('../../utils/logger');function createLockRoutes(){const _0x490720=a0_0x502d,_0x4f18f1={'IzKig':function(_0x1ba535,_0x34cd38){return _0x1ba535||_0x34cd38;},'IvZCr':function(_0x4d4b3d){return _0x4d4b3d();},'tCLrg':function(_0x3dbc9d,_0x4231b6){return _0x3dbc9d===_0x4231b6;},'uiYQD':_0x490720(0x179),'aBrsI':function(_0x27a967){return _0x27a967();},'iMjGr':_0x490720(0x191),'MYAkb':'Missing\x20required\x20fields:\x20resource,\x20lock_keys','uGiUe':function(_0x302c54){return _0x302c54();},'dJprE':'Internal\x20server\x20error\x20during\x20lock\x20status\x20check','clkRb':'/acquire','dGkat':_0x490720(0x184),'WeCYt':_0x490720(0x194)},_0x5d9b6c=express['Router']();let _0x3d8708=null;function _0x3c8b42(){return!_0x3d8708&&(_0x3d8708=require('./resource-lock-manager')),_0x3d8708;}return _0x5d9b6c[_0x490720(0x181)](_0x4f18f1[_0x490720(0x17b)],async(_0x1f60f2,_0x46d28f)=>{const _0x1ee278=_0x490720;try{const {resource:_0x300607,lock_keys:_0x52cb88,ttl:_0x16944c,owner:_0x5c0675}=_0x1f60f2['body'];if(_0x4f18f1['IzKig'](!_0x300607,!_0x52cb88)||!_0x16944c||!_0x5c0675)return _0x46d28f[_0x1ee278(0x18a)](0x190)['json']({'success':![],'error':_0x1ee278(0x180)});const _0x1a1b78=_0x4f18f1['IvZCr'](_0x3c8b42),_0x40d478=await _0x1a1b78[_0x1ee278(0x183)]({'resource':_0x300607,'lockKeys':_0x52cb88,'ttl':_0x16944c,'owner':_0x5c0675});if(_0x40d478[_0x1ee278(0x187)])return _0x46d28f[_0x1ee278(0x185)](_0x40d478);const _0x1bf236=_0x4f18f1[_0x1ee278(0x18b)](_0x40d478['error'],'Resource\x20lock\x20conflict')?0x199:0x190;return _0x46d28f[_0x1ee278(0x18a)](_0x1bf236)['json'](_0x40d478);}catch(_0x2907f6){logger['error']({'event':'lock_acquire_route_error','error':_0x2907f6[_0x1ee278(0x188)]},_0x1ee278(0x195)+_0x2907f6[_0x1ee278(0x188)]),_0x46d28f[_0x1ee278(0x18a)](0x1f4)['json']({'success':![],'error':_0x4f18f1['uiYQD']});}}),_0x5d9b6c['post'](_0x4f18f1['dGkat'],async(_0x4c4b49,_0x521529)=>{const _0x43f7b4=_0x490720;try{const {resource:_0x229035,lock_keys:_0xdc5437,lock_token:_0xa1a439}=_0x4c4b49[_0x43f7b4(0x189)];if(!_0x229035||!_0xdc5437||!_0xa1a439)return _0x521529[_0x43f7b4(0x18a)](0x190)[_0x43f7b4(0x185)]({'success':![],'error':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20lock_token'});const _0x293e70=_0x4f18f1[_0x43f7b4(0x18c)](_0x3c8b42),_0x414013=await _0x293e70['releaseResourceLocks']({'resource':_0x229035,'lockKeys':_0xdc5437,'lockToken':_0xa1a439});if(_0x414013['success'])return _0x521529['json'](_0x414013);return _0x521529[_0x43f7b4(0x18a)](0x190)[_0x43f7b4(0x185)](_0x414013);}catch(_0x2c03ba){logger['error']({'event':'lock_release_route_error','error':_0x2c03ba['message']},'Lock\x20release\x20route\x20error:\x20'+_0x2c03ba[_0x43f7b4(0x188)]),_0x521529[_0x43f7b4(0x18a)](0x1f4)[_0x43f7b4(0x185)]({'success':![],'error':_0x4f18f1[_0x43f7b4(0x17f)]});}}),_0x5d9b6c[_0x490720(0x181)](_0x4f18f1['WeCYt'],async(_0x825fa4,_0x5a8d33)=>{const _0x18d9a4=_0x490720;try{const {resource:_0x59aabb,lock_keys:_0x3f8de9}=_0x825fa4['body'];if(!_0x59aabb||!_0x3f8de9)return _0x5a8d33['status'](0x190)[_0x18d9a4(0x185)]({'success':![],'error':_0x4f18f1['MYAkb']});const _0x52429e=_0x4f18f1[_0x18d9a4(0x190)](_0x3c8b42),_0x581730=await _0x52429e['getResourceLockStatus']({'resource':_0x59aabb,'lockKeys':_0x3f8de9});if(_0x581730['success'])return _0x5a8d33[_0x18d9a4(0x185)](_0x581730);return _0x5a8d33['status'](0x190)[_0x18d9a4(0x185)](_0x581730);}catch(_0x40a340){logger['error']({'event':_0x18d9a4(0x186),'error':_0x40a340[_0x18d9a4(0x188)]},'Lock\x20status\x20route\x20error:\x20'+_0x40a340['message']),_0x5a8d33[_0x18d9a4(0x18a)](0x1f4)[_0x18d9a4(0x185)]({'success':![],'error':_0x4f18f1[_0x18d9a4(0x17d)]});}}),_0x5d9b6c;}module[a0_0x247bc2(0x18e)]=createLockRoutes;function a0_0x4d42(){const _0x5e6f5a=['Cg9ZDa','mtu4nZe4BLzTAeDQ','ywnXDwLYzvjLC291CMnLtg9JA3m','l3jLBgvHC2u','ANnVBG','Bg9JA19ZDgf0DxnFCM91DgvFzxjYB3i','C3vJy2vZCW','BwvZC2fNzq','yM9KEq','C3rHDhvZ','DenmCMC','yujYC0K','nJa2nJK0mLbkruXKwa','zxHWB3j0CW','ndK4ohz2uvL1sG','DuDPvwu','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihjLBgvHC2u','nde0nvvLAMTkAW','otq0mte4AK5YyK9y','l3n0yxr1CW','tg9JAYbHy3f1AxjLihjVDxrLigvYCM9YoIa','nJe2mZyWmKj5DKPVyq','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRigfJCxvPC2L0Aw9U','mtzYEfjvqLu','y2XRuMi','mJq5oteZognfv2fUtW','zePWCKu','nda5mtu3q3LzAvvO','Au1Qr3i','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSihr0BcWGB3DUzxi'];a0_0x4d42=function(){return _0x5e6f5a;};return a0_0x4d42();}
@@ -1 +1 @@
1
- const a0_0x31f0bf=a0_0x218f;(function(_0x20c355,_0x15b825){const _0x49f454=a0_0x218f,_0x1a8186=_0x20c355();while(!![]){try{const _0x217c5f=parseInt(_0x49f454(0x1aa))/0x1*(parseInt(_0x49f454(0x1b1))/0x2)+-parseInt(_0x49f454(0x1a0))/0x3*(parseInt(_0x49f454(0x1a7))/0x4)+-parseInt(_0x49f454(0x18f))/0x5+-parseInt(_0x49f454(0x17f))/0x6+parseInt(_0x49f454(0x179))/0x7+parseInt(_0x49f454(0x184))/0x8+-parseInt(_0x49f454(0x1a3))/0x9*(-parseInt(_0x49f454(0x192))/0xa);if(_0x217c5f===_0x15b825)break;else _0x1a8186['push'](_0x1a8186['shift']());}catch(_0x437ff5){_0x1a8186['push'](_0x1a8186['shift']());}}}(a0_0x4199,0x8a2cf));const redisClient=require('../../utils/redis-client'),{logger}=require(a0_0x31f0bf(0x18b)),{v4:uuidv4}=require(a0_0x31f0bf(0x188));function getPrefix(){const _0x3e1448=a0_0x31f0bf,_0x2f159d={'cquQy':'default'},_0x297ff7=process['env'][_0x3e1448(0x18d)]||_0x2f159d[_0x3e1448(0x1a1)];return'rf:'+_0x297ff7+_0x3e1448(0x190);}function a0_0x218f(_0x158ef4,_0xea8d85){_0x158ef4=_0x158ef4-0x171;const _0x419975=a0_0x4199();let _0x218f8d=_0x419975[_0x158ef4];if(a0_0x218f['GgsBcu']===undefined){var _0x7e1f28=function(_0x1fceac){const _0x4fb45e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x427829='',_0x27fa23='';for(let _0x33a08a=0x0,_0x4479f3,_0x3bdd13,_0x28545c=0x0;_0x3bdd13=_0x1fceac['charAt'](_0x28545c++);~_0x3bdd13&&(_0x4479f3=_0x33a08a%0x4?_0x4479f3*0x40+_0x3bdd13:_0x3bdd13,_0x33a08a++%0x4)?_0x427829+=String['fromCharCode'](0xff&_0x4479f3>>(-0x2*_0x33a08a&0x6)):0x0){_0x3bdd13=_0x4fb45e['indexOf'](_0x3bdd13);}for(let _0x309d07=0x0,_0x11689f=_0x427829['length'];_0x309d07<_0x11689f;_0x309d07++){_0x27fa23+='%'+('00'+_0x427829['charCodeAt'](_0x309d07)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x27fa23);};a0_0x218f['vzgjbV']=_0x7e1f28,a0_0x218f['cwPdDY']={},a0_0x218f['GgsBcu']=!![];}const _0x3383f4=_0x419975[0x0],_0x16c9f4=_0x158ef4+_0x3383f4,_0x46cdee=a0_0x218f['cwPdDY'][_0x16c9f4];return!_0x46cdee?(_0x218f8d=a0_0x218f['vzgjbV'](_0x218f8d),a0_0x218f['cwPdDY'][_0x16c9f4]=_0x218f8d):_0x218f8d=_0x46cdee,_0x218f8d;}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT='\x0a\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20else\x0a\x20\x20\x20\x20return\x200\x0a\x20\x20end\x0a';function a0_0x4199(){const _0x59aa89=['DfvIwfO','rM1eu3G','A2v5','DMfSAwq','Dw5RBM93BG','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','zw52','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','qwT5BNq','zxjYB3i','B3DUzxi','mtK3mdaXtKzsC2Lg','y3f1uxK','BM93','otGYmJG2muDdB3Llta','B0DlqNm','svvKAeG','Aw5KzxHpzG','mJbJtfDWyK4','AMP4CMS','te9ds19srvnpvvjdrv9nqvHFvfrm','muXPELHwDq','zxH0CMfJDe93BMvY','ChvZAa','s1vsvNe','BwLU','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','mJe1otKYnMzlr3L5uG','x3zHBgLKyxrLuMvSzwfZzuLUChv0','ywXS','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','zxHWB3j0CW','C3rYAw5N','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','wuzrEeC','DMfSDwu','r3D3yLi','u2zfzw4','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','CMvSzwfZzvjLC291CMnLtg9JA3m','x3jVBgXIywnRs2v5CW','Bg9JA19RzxLZwW','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19LCNjVCG','mZu0mJKZofbkrNnSyq','BgvUz3rO','zejtBgq','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','BNvTyMvY','CMvZB3vYy2vFBg9JA19Hy3f1AxjLza','ndCZmdG4nKP0y0fXzG','z2v0q2XPzw50','q0zdEgG','zxzHBa','D2fYBG','ote2ntG0yKf4BNDw','AxnbCNjHEq','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','DhrS','DxvPza','tg9JAYbHy3f1AxjLigzHAwXLzdOG','yMzMrK0','lI4VlI4VDxrPBhmVBg9Nz2vY','yNvPBgrlzxK','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','BwvZC2fNzq','ntu0nJu4meTequ9fua','oNjSB2nRoG','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','mtb5yvvnvLG','Bg9JA19RzxLZigv4y2vLzhmGBwf4Aw11BsbVzIaXmdaGAxrLBxm','Aw5MBW'];a0_0x4199=function(){return _0x59aa89;};return a0_0x4199();}class ResourceLockManager{['buildKey'](_0x6ecf70,_0xfe1f59,_0x359ccb){return''+getPrefix()+_0x6ecf70+':'+_0xfe1f59+':'+_0x359ccb;}['generateToken'](_0x1b1d92){const _0x58a1a8=a0_0x31f0bf;return _0x1b1d92+':'+uuidv4()+':'+Date[_0x58a1a8(0x1a2)]();}['extractOwner'](_0x515bf4){const _0x3476ec=a0_0x31f0bf,_0x2f0bd1={'SgOWj':'unknown','xWdNt':function(_0x2683ab,_0x2b516f){return _0x2683ab>_0x2b516f;}};if(!_0x515bf4)return _0x2f0bd1['SgOWj'];const _0x245803=_0x515bf4[_0x3476ec(0x1a6)](':');return _0x2f0bd1['xWdNt'](_0x245803,0x0)?_0x515bf4['substring'](0x0,_0x245803):_0x515bf4;}['getMaxTTLSeconds'](){const _0x4196b5=a0_0x31f0bf;return parseInt(process[_0x4196b5(0x19b)][_0x4196b5(0x1a9)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x2de7d8,lockKeys:_0x4a4d21,ttl:_0x4fbbb6,owner:_0x52ed8c}){const _0x27ced4=a0_0x31f0bf,_0xddc50f={'CFCxh':function(_0x40c543,_0x46680f){return _0x40c543<_0x46680f;},'iuHMs':function(_0x168b5f,_0x3126ff){return _0x168b5f===_0x3126ff;},'FmDSx':_0x27ced4(0x17c),'YHLIk':_0x27ced4(0x178),'YFQxG':'resource_lock_acquire_error'},_0x22229b=this['_validateAcquireInput']({'resource':_0x2de7d8,'lockKeys':_0x4a4d21,'ttl':_0x4fbbb6,'owner':_0x52ed8c});if(!_0x22229b['valid'])return{'success':![],'error':_0x22229b[_0x27ced4(0x19e)]};const _0x57cb69=this['getMaxTTLSeconds'](),_0x5adece=Math[_0x27ced4(0x1ae)](_0x4fbbb6,_0x57cb69),_0x25ce24=this['generateToken'](_0x52ed8c),_0x55e055=[];try{const _0x4d60af=redisClient['getClient']();for(let _0x521c6b=0x0;_0xddc50f[_0x27ced4(0x181)](_0x521c6b,_0x4a4d21[_0x27ced4(0x17a)]);_0x521c6b++){const {key:_0x8d251a,value:_0x26d691}=_0x4a4d21[_0x521c6b],_0x4f3b64=this['buildKey'](_0x2de7d8,_0x8d251a,_0x26d691),_0x410e31=await _0x4d60af['set'](_0x4f3b64,_0x25ce24,'EX',_0x5adece,'NX');if(_0xddc50f['iuHMs'](_0x410e31,'OK'))_0x55e055[_0x27ced4(0x1ac)](_0x4f3b64);else{await this[_0x27ced4(0x175)](_0x4d60af,_0x55e055,_0x25ce24);const _0x8f60f4=await this['_getConflictInfo'](_0x4d60af,_0x4f3b64);return logger[_0x27ced4(0x183)]({'event':_0xddc50f[_0x27ced4(0x196)],'resource':_0x2de7d8,'conflicting_key':{'key':_0x8d251a,'value':_0x26d691},'locked_by':_0x8f60f4[_0x27ced4(0x19f)],'ttl_remaining':_0x8f60f4['ttlRemaining'],'attempted_by':_0x52ed8c},'Resource\x20lock\x20conflict\x20on\x20'+_0x2de7d8+':'+_0x8d251a+':'+_0x26d691),{'success':![],'error':'Resource\x20lock\x20conflict','data':{'conflicting_key':{'key':_0x8d251a,'value':_0x26d691},'locked_by':_0x8f60f4['owner'],'ttl_remaining':_0x8f60f4['ttlRemaining']}};}}const _0x15582c=_0x4a4d21['map'](({key:_0x1ef8bd,value:_0x16364d})=>({'key':_0x1ef8bd,'value':_0x16364d,'lock_key':this['buildKey'](_0x2de7d8,_0x1ef8bd,_0x16364d)}));return logger[_0x27ced4(0x194)]({'event':_0x27ced4(0x17e),'resource':_0x2de7d8,'keys_count':_0x4a4d21['length'],'ttl':_0x5adece,'owner':_0x52ed8c},_0x27ced4(0x177)+_0x2de7d8+'\x20('+_0x4a4d21['length']+'\x20keys,\x20TTL:\x20'+_0x5adece+'s)'),{'success':!![],'data':{'lock_token':_0x25ce24,'resource':_0x2de7d8,'locked_keys':_0x15582c,'ttl':_0x5adece,'owner':_0x52ed8c,'acquired_at':new Date()['toISOString']()}};}catch(_0x33dcb5){try{const _0x5e79c9=redisClient['getClient']();await this[_0x27ced4(0x175)](_0x5e79c9,_0x55e055,_0x25ce24);}catch(_0x202208){logger['error']({'event':_0xddc50f['YHLIk'],'error':_0x202208['message']},'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error');}return logger[_0x27ced4(0x19e)]({'event':_0xddc50f[_0x27ced4(0x1b9)],'resource':_0x2de7d8,'owner':_0x52ed8c,'error':_0x33dcb5['message']},'Resource\x20lock\x20acquire\x20error:\x20'+_0x33dcb5[_0x27ced4(0x18e)]),{'success':![],'error':_0x27ced4(0x189)+_0x33dcb5['message']};}}async[a0_0x31f0bf(0x174)]({resource:_0x1389c7,lockKeys:_0x1a0c4,lockToken:_0x3dcd63}){const _0x2d99d8=a0_0x31f0bf,_0x14a8ea=this[_0x2d99d8(0x1b2)]({'resource':_0x1389c7,'lockKeys':_0x1a0c4,'lockToken':_0x3dcd63});if(!_0x14a8ea[_0x2d99d8(0x198)])return{'success':![],'error':_0x14a8ea[_0x2d99d8(0x19e)]};try{const _0x3d6a27=redisClient[_0x2d99d8(0x180)]();let _0x216e7e=0x0;for(const {key:_0x4c00d9,value:_0x434a1a}of _0x1a0c4){const _0x5cc3c6=this[_0x2d99d8(0x18c)](_0x1389c7,_0x4c00d9,_0x434a1a),_0x282f64=await _0x3d6a27[_0x2d99d8(0x182)](RELEASE_LUA_SCRIPT,0x1,_0x5cc3c6,_0x3dcd63);_0x282f64===0x1&&_0x216e7e++;}return logger['info']({'event':_0x2d99d8(0x173),'resource':_0x1389c7,'released_keys':_0x216e7e,'total_keys':_0x1a0c4['length'],'owner':this['extractOwner'](_0x3dcd63)},'Resource\x20lock\x20released:\x20'+_0x1389c7+'\x20('+_0x216e7e+'/'+_0x1a0c4['length']+'\x20keys)'),{'success':!![],'data':{'resource':_0x1389c7,'released_keys':_0x216e7e,'total_keys':_0x1a0c4['length']}};}catch(_0x122491){return logger['error']({'event':'resource_lock_release_error','resource':_0x1389c7,'error':_0x122491['message']},_0x2d99d8(0x191)+_0x122491[_0x2d99d8(0x18e)]),{'success':![],'error':'Lock\x20release\x20failed:\x20'+_0x122491['message']};}}async['getResourceLockStatus']({resource:_0x49c7d6,lockKeys:_0x4ec8e1}){const _0x65a550=a0_0x31f0bf,_0xa6ba9={'SfEen':_0x65a550(0x1b7)};if(!_0x49c7d6||!Array[_0x65a550(0x185)](_0x4ec8e1)||_0x4ec8e1['length']===0x0)return{'success':![],'error':_0x65a550(0x19a)};try{const _0x2a6199=redisClient[_0x65a550(0x180)](),_0x45ecb3=[];for(const {key:_0x52a153,value:_0x2a21b7}of _0x4ec8e1){const _0x1ac50a=this[_0x65a550(0x18c)](_0x49c7d6,_0x52a153,_0x2a21b7),[_0x1617bb,_0x196c0b]=await Promise[_0x65a550(0x1b3)]([_0x2a6199['get'](_0x1ac50a),_0x2a6199['ttl'](_0x1ac50a)]),_0x388f32=_0x1617bb!==null;_0x45ecb3['push']({'key':_0x52a153,'value':_0x2a21b7,'locked':_0x388f32,'owner':_0x388f32?this[_0x65a550(0x1ab)](_0x1617bb):null,'ttl_remaining':_0x388f32&&_0x196c0b>0x0?_0x196c0b:null});}return{'success':!![],'data':{'resource':_0x49c7d6,'keys':_0x45ecb3}};}catch(_0x308b81){return logger[_0x65a550(0x19e)]({'event':_0xa6ba9[_0x65a550(0x171)],'resource':_0x49c7d6,'error':_0x308b81[_0x65a550(0x18e)]},_0x65a550(0x1b4)+_0x308b81['message']),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0x308b81['message']};}}async[a0_0x31f0bf(0x175)](_0x4e6acd,_0x162466,_0x556e18){const _0x36eccb=a0_0x31f0bf,_0x5ec8ce={'GwwbR':_0x36eccb(0x1af)};for(const _0x3c87a0 of _0x162466){try{await _0x4e6acd[_0x36eccb(0x182)](RELEASE_LUA_SCRIPT,0x1,_0x3c87a0,_0x556e18);}catch(_0x1cf5bf){logger[_0x36eccb(0x19e)]({'event':_0x5ec8ce[_0x36eccb(0x1bb)],'key':_0x3c87a0,'error':_0x1cf5bf['message']},'Failed\x20to\x20rollback\x20key:\x20'+_0x3c87a0);}}}async['_getConflictInfo'](_0x395ef4,_0x22b8d1){const _0x3a166a=a0_0x31f0bf,_0x556368={'bffFM':_0x3a166a(0x199),'zvBeD':function(_0x4999bf,_0x5d3518){return _0x4999bf>_0x5d3518;}};try{const [_0x22d24b,_0x4f919f]=await Promise[_0x3a166a(0x1b3)]([_0x395ef4['get'](_0x22b8d1),_0x395ef4[_0x3a166a(0x187)](_0x22b8d1)]);return{'owner':_0x22d24b?this['extractOwner'](_0x22d24b):_0x556368[_0x3a166a(0x18a)],'ttlRemaining':_0x556368['zvBeD'](_0x4f919f,0x0)?_0x4f919f:null};}catch{return{'owner':'unknown','ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x3dfb6f,lockKeys:_0x6bd0d2,ttl:_0x490731,owner:_0x3c4559}){const _0x20860a=a0_0x31f0bf,_0x40ab27={'oGKBs':'string','KURVq':_0x20860a(0x172),'WJTyL':function(_0x4f25fe,_0x8d99c0){return _0x4f25fe>_0x8d99c0;},'IUdhH':_0x20860a(0x17d),'jjxrk':function(_0x3e2bfd,_0x1191a3){return _0x3e2bfd<_0x1191a3;},'NxBHw':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)','sqjtX':function(_0x2aa4b6,_0x4ffed2){return _0x2aa4b6!==_0x4ffed2;},'mbJql':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!_0x3dfb6f||typeof _0x3dfb6f!==_0x40ab27['oGKBs'])return{'valid':![],'error':_0x40ab27[_0x20860a(0x1ad)]};if(!Array[_0x20860a(0x185)](_0x6bd0d2)||_0x6bd0d2['length']===0x0)return{'valid':![],'error':_0x20860a(0x1b0)};if(_0x40ab27['WJTyL'](_0x6bd0d2['length'],0x64))return{'valid':![],'error':_0x20860a(0x193)};for(let _0x3e8f67=0x0;_0x3e8f67<_0x6bd0d2['length'];_0x3e8f67++){const _0x3a8fdd=_0x6bd0d2[_0x3e8f67];if(!_0x3a8fdd||!_0x3a8fdd[_0x20860a(0x197)]||!_0x3a8fdd[_0x20860a(0x1ba)])return{'valid':![],'error':'lock_keys['+_0x3e8f67+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x490731||typeof _0x490731!==_0x40ab27[_0x20860a(0x1a5)]||_0x40ab27[_0x20860a(0x1a8)](_0x490731,0x1))return{'valid':![],'error':_0x40ab27['NxBHw']};const _0x537192=this['getMaxTTLSeconds']();if(_0x40ab27['WJTyL'](_0x490731,_0x537192))return{'valid':![],'error':_0x20860a(0x186)+_0x537192+_0x20860a(0x19c)};if(!_0x3c4559||_0x40ab27['sqjtX'](typeof _0x3c4559,_0x40ab27[_0x20860a(0x1a4)]))return{'valid':![],'error':_0x40ab27['mbJql']};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x137e3b,lockKeys:_0x4e8337,lockToken:_0x4e79d8}){const _0x359f36=a0_0x31f0bf,_0x1b5899={'dBSld':function(_0x3f36f3,_0x128126){return _0x3f36f3!==_0x128126;},'UWIzc':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array','Akynt':function(_0x5ce7f6,_0x7cbf23){return _0x5ce7f6<_0x7cbf23;},'tUbXZ':_0x359f36(0x1b6),'iMjNi':_0x359f36(0x1b8)};if(!_0x137e3b||_0x1b5899['dBSld'](typeof _0x137e3b,_0x359f36(0x1b6)))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array['isArray'](_0x4e8337)||_0x4e8337['length']===0x0)return{'valid':![],'error':_0x1b5899['UWIzc']};for(let _0xca8b31=0x0;_0x1b5899[_0x359f36(0x19d)](_0xca8b31,_0x4e8337[_0x359f36(0x17a)]);_0xca8b31++){const _0x1ce242=_0x4e8337[_0xca8b31];if(!_0x1ce242||!_0x1ce242[_0x359f36(0x197)]||!_0x1ce242[_0x359f36(0x1ba)])return{'valid':![],'error':_0x359f36(0x176)+_0xca8b31+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x4e79d8||_0x1b5899[_0x359f36(0x17b)](typeof _0x4e79d8,_0x1b5899[_0x359f36(0x195)]))return{'valid':![],'error':_0x1b5899['iMjNi']};return{'valid':!![]};}}module[a0_0x31f0bf(0x1b5)]=new ResourceLockManager();
1
+ function a0_0x3df8(_0x4e3a79,_0x1afb8a){_0x4e3a79=_0x4e3a79-0x163;const _0x5e6c18=a0_0x5e6c();let _0x3df8a6=_0x5e6c18[_0x4e3a79];if(a0_0x3df8['gXylZP']===undefined){var _0x28cfec=function(_0x42e295){const _0x2b4f0a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x454d83='',_0x7742cb='';for(let _0x320ac3=0x0,_0x28126c,_0x305baf,_0x58d7ba=0x0;_0x305baf=_0x42e295['charAt'](_0x58d7ba++);~_0x305baf&&(_0x28126c=_0x320ac3%0x4?_0x28126c*0x40+_0x305baf:_0x305baf,_0x320ac3++%0x4)?_0x454d83+=String['fromCharCode'](0xff&_0x28126c>>(-0x2*_0x320ac3&0x6)):0x0){_0x305baf=_0x2b4f0a['indexOf'](_0x305baf);}for(let _0x4fb894=0x0,_0x3cd1a1=_0x454d83['length'];_0x4fb894<_0x3cd1a1;_0x4fb894++){_0x7742cb+='%'+('00'+_0x454d83['charCodeAt'](_0x4fb894)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x7742cb);};a0_0x3df8['ZqFMJp']=_0x28cfec,a0_0x3df8['XiqGWV']={},a0_0x3df8['gXylZP']=!![];}const _0x38b61e=_0x5e6c18[0x0],_0x56335e=_0x4e3a79+_0x38b61e,_0x473d46=a0_0x3df8['XiqGWV'][_0x56335e];return!_0x473d46?(_0x3df8a6=a0_0x3df8['ZqFMJp'](_0x3df8a6),a0_0x3df8['XiqGWV'][_0x56335e]=_0x3df8a6):_0x3df8a6=_0x473d46,_0x3df8a6;}const a0_0x1db123=a0_0x3df8;function a0_0x5e6c(){const _0xc1a3e1=['Duncvxm','A2v5','oNjSB2nRoG','BNvTyMvY','tvncu0e','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','zxHWB3j0CW','qwDhzLC','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','mJr3qLP5Cxe','z2v0','x3zHBgLKyxrLqwnXDwLYzuLUChv0','zxH0CMfJDe93BMvY','DhrSuMvTywLUAw5N','DhrS','BwvZC2fNzq','yNvPBgrlzxK','tg9JAYbYzwXLyxnLigzHAwXLzdOG','CMvZB3vYy2vFBg9JA19Hy3f1AxjLza','n1DNEMfeEG','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19LCNjVCG','tg9JAYbHy3f1AxjLigzHAwXLzdOG','nZK1mZi4vhHLv1z1','D2fYBG','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','x3zHBgLKyxrLuMvSzwfZzuLUChv0','Dg9ju09tDhjPBMC','AuH6ANy','ChvZAa','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','DxvPza','D0n6B04','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','otmZnZeYvLPZvevA','mZmWC2Xjzhzg','DMfSAwq','CMvZB3vYy2vFBg9JA19Hy3f1AxjLx2vYCM9Y','ywnXDwLYzvjLC291CMnLtg9JA3m','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','odKXodG4vwDNAgPf','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','BM93','lI4VlI4VDxrPBhmVBg9Nz2vY','t3jZrMy','igTLExmP','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','zxzHBa','z2vUzxjHDgvuB2TLBG','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','mZm1nteZEePyDNfj','uvDOv2i','zxjYB3i','svr2Cvi','mtu2mZqYovf6Cu1brW','mJqXntuXvwTXC0P0','Dw5RBM93BG','C3rYAw5N','Aw5MBW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','x2DLDenVBMzSAwn0sw5MBW','CMy6','z2v0twf4vfrmu2vJB25KCW','x3jVBgXIywnRs2v5CW','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y','B3DUzxi','ywXS','otq0ntbdvMzeD1C','BgvUz3rO','zw52','z2v0q2XPzw50'];a0_0x5e6c=function(){return _0xc1a3e1;};return a0_0x5e6c();}(function(_0x4214b1,_0x298e07){const _0x23c24d=a0_0x3df8,_0x5ba796=_0x4214b1();while(!![]){try{const _0x1baa0d=-parseInt(_0x23c24d(0x192))/0x1+-parseInt(_0x23c24d(0x175))/0x2+parseInt(_0x23c24d(0x196))/0x3+-parseInt(_0x23c24d(0x187))/0x4+parseInt(_0x23c24d(0x1a3))/0x5*(parseInt(_0x23c24d(0x168))/0x6)+parseInt(_0x23c24d(0x172))/0x7*(-parseInt(_0x23c24d(0x181))/0x8)+-parseInt(_0x23c24d(0x197))/0x9*(-parseInt(_0x23c24d(0x182))/0xa);if(_0x1baa0d===_0x298e07)break;else _0x5ba796['push'](_0x5ba796['shift']());}catch(_0x20e1a5){_0x5ba796['push'](_0x5ba796['shift']());}}}(a0_0x5e6c,0x63fb7));const redisClient=require('../../utils/redis-client'),{logger}=require(a0_0x1db123(0x18a)),{v4:uuidv4}=require(a0_0x1db123(0x17e));function getPrefix(){const _0xc2b463=a0_0x1db123,_0x48bf0e={'PmCun':'default'},_0x544cf8=process[_0xc2b463(0x1a5)][_0xc2b463(0x19b)]||_0x48bf0e['PmCun'];return _0xc2b463(0x19d)+_0x544cf8+_0xc2b463(0x1a9);}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x1db123(0x190);class ResourceLockManager{['buildKey'](_0x4378c6,_0x5b3dd6,_0x9e8f4c){const _0x9fce7=a0_0x1db123,_0x37df22={'MSBSA':function(_0x359ff0){return _0x359ff0();}};return''+_0x37df22[_0x9fce7(0x163)](getPrefix)+_0x4378c6+':'+_0x5b3dd6+':'+_0x9e8f4c;}[a0_0x1db123(0x18f)](_0xd9850f){const _0x330637=a0_0x1db123,_0x3b9a3a={'iHzjv':function(_0x1f6cc9){return _0x1f6cc9();}};return _0xd9850f+':'+_0x3b9a3a[_0x330637(0x17a)](uuidv4)+':'+Date[_0x330637(0x189)]();}[a0_0x1db123(0x16b)](_0x4ab206){const _0x13ac73=a0_0x1db123;if(!_0x4ab206)return _0x13ac73(0x198);const _0x36d6b9=_0x4ab206['indexOf'](':');return _0x36d6b9>0x0?_0x4ab206['substring'](0x0,_0x36d6b9):_0x4ab206;}[a0_0x1db123(0x19e)](){const _0x4a8b51=a0_0x1db123,_0x105e93={'uCBUs':function(_0x2d9da2,_0x545796,_0x4d49fc){return _0x2d9da2(_0x545796,_0x4d49fc);}};return _0x105e93[_0x4a8b51(0x1a7)](parseInt,process[_0x4a8b51(0x1a5)]['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x1db123(0x185)]({resource:_0x3bf3da,lockKeys:_0x4578d0,ttl:_0x4f795b,owner:_0x5a3cb0}){const _0x3349f3=a0_0x1db123,_0x4703d7={'kVyqj':function(_0x535c0e,_0x3e0dfc){return _0x535c0e===_0x3e0dfc;},'ABPiz':_0x3349f3(0x173),'loIFq':'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error','DgFmR':_0x3349f3(0x184)},_0x40de1b=this[_0x3349f3(0x16a)]({'resource':_0x3bf3da,'lockKeys':_0x4578d0,'ttl':_0x4f795b,'owner':_0x5a3cb0});if(!_0x40de1b[_0x3349f3(0x183)])return{'success':![],'error':_0x40de1b['error']};const _0x2a7166=this[_0x3349f3(0x19e)](),_0x26fdcf=Math['min'](_0x4f795b,_0x2a7166),_0x25d474=this[_0x3349f3(0x18f)](_0x5a3cb0),_0x3dab03=[];try{const _0x5c365e=redisClient[_0x3349f3(0x1a6)]();for(let _0x22bf40=0x0;_0x22bf40<_0x4578d0[_0x3349f3(0x1a4)];_0x22bf40++){const {key:_0x20cd94,value:_0xac9e5}=_0x4578d0[_0x22bf40],_0x628a06=this[_0x3349f3(0x16f)](_0x3bf3da,_0x20cd94,_0xac9e5),_0x4515ae=await _0x5c365e['set'](_0x628a06,_0x25d474,'EX',_0x26fdcf,'NX');if(_0x4703d7['kVyqj'](_0x4515ae,'OK'))_0x3dab03['push'](_0x628a06);else{await this[_0x3349f3(0x19f)](_0x5c365e,_0x3dab03,_0x25d474);const _0x58f1e5=await this['_getConflictInfo'](_0x5c365e,_0x628a06);return logger[_0x3349f3(0x176)]({'event':'resource_lock_conflict','resource':_0x3bf3da,'conflicting_key':{'key':_0x20cd94,'value':_0xac9e5},'locked_by':_0x58f1e5['owner'],'ttl_remaining':_0x58f1e5['ttlRemaining'],'attempted_by':_0x5a3cb0},'Resource\x20lock\x20conflict\x20on\x20'+_0x3bf3da+':'+_0x20cd94+':'+_0xac9e5),{'success':![],'error':'Resource\x20lock\x20conflict','data':{'conflicting_key':{'key':_0x20cd94,'value':_0xac9e5},'locked_by':_0x58f1e5[_0x3349f3(0x1a1)],'ttl_remaining':_0x58f1e5[_0x3349f3(0x16c)]}};}}const _0x5c8801=_0x4578d0['map'](({key:_0x2c4653,value:_0x37e937})=>({'key':_0x2c4653,'value':_0x37e937,'lock_key':this['buildKey'](_0x3bf3da,_0x2c4653,_0x37e937)}));return logger[_0x3349f3(0x19a)]({'event':_0x3349f3(0x171),'resource':_0x3bf3da,'keys_count':_0x4578d0['length'],'ttl':_0x26fdcf,'owner':_0x5a3cb0},_0x3349f3(0x17d)+_0x3bf3da+'\x20('+_0x4578d0['length']+'\x20keys,\x20TTL:\x20'+_0x26fdcf+'s)'),{'success':!![],'data':{'lock_token':_0x25d474,'resource':_0x3bf3da,'locked_keys':_0x5c8801,'ttl':_0x26fdcf,'owner':_0x5a3cb0,'acquired_at':new Date()[_0x3349f3(0x179)]()}};}catch(_0xc5af54){try{const _0x67b7c4=redisClient[_0x3349f3(0x1a6)]();await this[_0x3349f3(0x19f)](_0x67b7c4,_0x3dab03,_0x25d474);}catch(_0x19438b){logger[_0x3349f3(0x194)]({'event':_0x4703d7['ABPiz'],'error':_0x19438b['message']},_0x4703d7['loIFq']);}return logger[_0x3349f3(0x194)]({'event':_0x4703d7['DgFmR'],'resource':_0x3bf3da,'owner':_0x5a3cb0,'error':_0xc5af54[_0x3349f3(0x16e)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0xc5af54[_0x3349f3(0x16e)]),{'success':![],'error':_0x3349f3(0x174)+_0xc5af54['message']};}}async['releaseResourceLocks']({resource:_0x1dc0e7,lockKeys:_0xbbb6ea,lockToken:_0x4a97bf}){const _0xed25cf=a0_0x1db123,_0x53292a={'ZSGPx':_0xed25cf(0x1a0)},_0x12b4c4=this[_0xed25cf(0x178)]({'resource':_0x1dc0e7,'lockKeys':_0xbbb6ea,'lockToken':_0x4a97bf});if(!_0x12b4c4['valid'])return{'success':![],'error':_0x12b4c4['error']};try{const _0x2c58fd=redisClient[_0xed25cf(0x1a6)]();let _0x292b99=0x0;for(const {key:_0x14ecd4,value:_0x121661}of _0xbbb6ea){const _0x38d10c=this[_0xed25cf(0x16f)](_0x1dc0e7,_0x14ecd4,_0x121661),_0x1e6664=await _0x2c58fd[_0xed25cf(0x18e)](RELEASE_LUA_SCRIPT,0x1,_0x38d10c,_0x4a97bf);_0x1e6664===0x1&&_0x292b99++;}return logger['info']({'event':_0xed25cf(0x167),'resource':_0x1dc0e7,'released_keys':_0x292b99,'total_keys':_0xbbb6ea[_0xed25cf(0x1a4)],'owner':this[_0xed25cf(0x16b)](_0x4a97bf)},_0xed25cf(0x177)+_0x1dc0e7+'\x20('+_0x292b99+'/'+_0xbbb6ea[_0xed25cf(0x1a4)]+_0xed25cf(0x18c)),{'success':!![],'data':{'resource':_0x1dc0e7,'released_keys':_0x292b99,'total_keys':_0xbbb6ea[_0xed25cf(0x1a4)]}};}catch(_0x38975e){return logger[_0xed25cf(0x194)]({'event':_0x53292a['ZSGPx'],'resource':_0x1dc0e7,'error':_0x38975e['message']},'Resource\x20lock\x20release\x20error:\x20'+_0x38975e[_0xed25cf(0x16e)]),{'success':![],'error':_0xed25cf(0x170)+_0x38975e['message']};}}async[a0_0x1db123(0x17c)]({resource:_0x4ea541,lockKeys:_0x15be61}){const _0x297fc0=a0_0x1db123,_0x2afae3={'YFoDD':function(_0x1f8833,_0x5c86f6){return _0x1f8833===_0x5c86f6;},'cokNV':function(_0x4a9ff6,_0xfd812c){return _0x4a9ff6!==_0xfd812c;}};if(!_0x4ea541||!Array['isArray'](_0x15be61)||_0x2afae3['YFoDD'](_0x15be61[_0x297fc0(0x1a4)],0x0))return{'success':![],'error':'resource\x20and\x20lock_keys\x20are\x20required'};try{const _0x26e693=redisClient[_0x297fc0(0x1a6)](),_0x5353c5=[];for(const {key:_0x819d0b,value:_0x2ce6f6}of _0x15be61){const _0x353159=this['buildKey'](_0x4ea541,_0x819d0b,_0x2ce6f6),[_0x35ae7c,_0x9fb223]=await Promise[_0x297fc0(0x1a2)]([_0x26e693[_0x297fc0(0x169)](_0x353159),_0x26e693['ttl'](_0x353159)]),_0x14a10e=_0x2afae3['cokNV'](_0x35ae7c,null);_0x5353c5[_0x297fc0(0x17b)]({'key':_0x819d0b,'value':_0x2ce6f6,'locked':_0x14a10e,'owner':_0x14a10e?this[_0x297fc0(0x16b)](_0x35ae7c):null,'ttl_remaining':_0x14a10e&&_0x9fb223>0x0?_0x9fb223:null});}return{'success':!![],'data':{'resource':_0x4ea541,'keys':_0x5353c5}};}catch(_0x23c619){return logger['error']({'event':_0x297fc0(0x18d),'resource':_0x4ea541,'error':_0x23c619['message']},'Resource\x20lock\x20status\x20error:\x20'+_0x23c619['message']),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0x23c619[_0x297fc0(0x16e)]};}}async[a0_0x1db123(0x19f)](_0xf1def,_0x1e3390,_0x1657b7){const _0x998318=a0_0x1db123,_0x2b015c={'wCzoN':'resource_lock_rollback_key_error'};for(const _0xfe1bf3 of _0x1e3390){try{await _0xf1def[_0x998318(0x18e)](RELEASE_LUA_SCRIPT,0x1,_0xfe1bf3,_0x1657b7);}catch(_0xd22814){logger['error']({'event':_0x2b015c[_0x998318(0x17f)],'key':_0xfe1bf3,'error':_0xd22814[_0x998318(0x16e)]},_0x998318(0x186)+_0xfe1bf3);}}}async[a0_0x1db123(0x19c)](_0x1a0288,_0x40db2f){const _0x173949=a0_0x1db123,_0x16ed7b={'TOoPe':function(_0x4f6e9f,_0x315209){return _0x4f6e9f>_0x315209;},'teRdx':_0x173949(0x198)};try{const [_0x596ac1,_0x13a2b9]=await Promise[_0x173949(0x1a2)]([_0x1a0288['get'](_0x40db2f),_0x1a0288[_0x173949(0x16d)](_0x40db2f)]);return{'owner':_0x596ac1?this[_0x173949(0x16b)](_0x596ac1):_0x173949(0x198),'ttlRemaining':_0x16ed7b['TOoPe'](_0x13a2b9,0x0)?_0x13a2b9:null};}catch{return{'owner':_0x16ed7b['teRdx'],'ttlRemaining':null};}}[a0_0x1db123(0x16a)]({resource:_0x42ce43,lockKeys:_0x5a9f2a,ttl:_0x361a03,owner:_0x1ba62c}){const _0x592317=a0_0x1db123,_0x4791f8={'OrsFf':'string','xCnTD':function(_0x4450a3,_0xa0dd8){return _0x4450a3===_0xa0dd8;},'AgGfW':function(_0x380218,_0x2e59b7){return _0x380218>_0x2e59b7;},'QWhWb':function(_0x4c83ae,_0x3ac546){return _0x4c83ae<_0x3ac546;},'tMobW':function(_0x842e6a,_0x1554b2){return _0x842e6a!==_0x1554b2;}};if(!_0x42ce43||typeof _0x42ce43!==_0x4791f8['OrsFf'])return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array['isArray'](_0x5a9f2a)||_0x4791f8['xCnTD'](_0x5a9f2a['length'],0x0))return{'valid':![],'error':_0x592317(0x188)};if(_0x4791f8[_0x592317(0x166)](_0x5a9f2a['length'],0x64))return{'valid':![],'error':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items'};for(let _0x254ce7=0x0;_0x254ce7<_0x5a9f2a[_0x592317(0x1a4)];_0x254ce7++){const _0x2d7ee2=_0x5a9f2a[_0x254ce7];if(!_0x2d7ee2||!_0x2d7ee2[_0x592317(0x1a8)]||!_0x2d7ee2['value'])return{'valid':![],'error':'lock_keys['+_0x254ce7+_0x592317(0x180)};}if(!_0x361a03||typeof _0x361a03!==_0x592317(0x1aa)||_0x4791f8[_0x592317(0x193)](_0x361a03,0x1))return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x1183bb=this['getMaxTTLSeconds']();if(_0x4791f8['AgGfW'](_0x361a03,_0x1183bb))return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x1183bb+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x1ba62c||_0x4791f8['tMobW'](typeof _0x1ba62c,_0x4791f8[_0x592317(0x18b)]))return{'valid':![],'error':_0x592317(0x191)};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x3e77ed,lockKeys:_0x948ddb,lockToken:_0x197b57}){const _0x502803=a0_0x1db123,_0x3d86b1={'JrqWP':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array','ITvqR':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!_0x3e77ed||typeof _0x3e77ed!=='string')return{'valid':![],'error':_0x502803(0x164)};if(!Array['isArray'](_0x948ddb)||_0x948ddb[_0x502803(0x1a4)]===0x0)return{'valid':![],'error':_0x3d86b1['JrqWP']};for(let _0x1c4789=0x0;_0x1c4789<_0x948ddb[_0x502803(0x1a4)];_0x1c4789++){const _0x2f99fe=_0x948ddb[_0x1c4789];if(!_0x2f99fe||!_0x2f99fe['key']||!_0x2f99fe['value'])return{'valid':![],'error':'lock_keys['+_0x1c4789+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x197b57||typeof _0x197b57!==_0x502803(0x199))return{'valid':![],'error':_0x3d86b1[_0x502803(0x195)]};return{'valid':!![]};}}module[a0_0x1db123(0x165)]=new ResourceLockManager();
@@ -1 +1 @@
1
- const a0_0x22f015=a0_0x2de7;function a0_0x5b10(){const _0x31ae55=['z2v0q29UzMLN','A2fMA2fQCW','z2v0u3rHDhvZ','A2fMA2e','AxnbCNjHEq','BwvZC2fNzxnszwnLAxzLza','nhWZFdv8mhWXFdi','DMfSDwu','s0fgs0fFu0vtu0LptL9usu1ft1vu','BwvZC2fNzq','C3rVCa','C3bSAxq','Bwf4','sK52BMW','mta0odu3nG','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignYyxnOzwq6ia','mZaWma','yKTxzge','ChjVy2vZC2LUz1rPBwvZ','s0fgs0fFte9hx0XfvKvm','rLz1tg4','zw52','Agzkzxu','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','CM91BMq','y29UC3vTzxiUC3rVCa','yNjVA2vYCW','CMvZDw1L','AxnqyxvZzwq','mJuWmda','wgrHuMK','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','rvjst1i','CgfYC2vizwfKzxjZ','mJG3nZm0ng5Tsgf0za','zxjYB3i','BhvzzLC','z2v0tg9Ntgv2zwW','s0fgs0fFqLjps0vsuW','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','BM93','revcvuC','mtCZodqWnhbYCNnguW','A2v5','C2vLA1rVt2zMC2v0','DxvPza','Aw1OzfG','C3vIC2nYAwjLzfrVCgLJCW','AxnjBML0AwfSAxPPBMC','mZaWmda','CMvKDwnL','ntaWma','y29UC3vTzxi','ChvZAa','z2v0vgLTzq','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzwqGDg8GDg9WAwm6ia','ig9Uia','s0fgs0fFu0fttf9vu0vstKfnrq','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','y29UC3vTzxiUCMvIywXHBMnPBMC','y2XVC2u','AxndB25Uzwn0zwq','yxv0B0nVBw1PDeLUDgvYDMfS','nZuWnJG0CxLhDM91','C3rHCNruAw1L','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','y29UBMvJDgLVBLrPBwvVDxq','s0fgs0fFu1nm','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','vg90C04','zgvMyxvSDa','mZmZotb2DKjsDNK','y2XPzw50swq','s0fgs0fFq09otKvdveLptL9usu1ft1vu','BwvZC2fNzxnqCM9JzxnZzwq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','y29UBMvJDa','s0fgs0fFqvvut19dt01nsvq','D2fYBG','nJnvAwrYCgy','z3jVDxbjza','yxv0B0nVBw1PDa','CMvXDwvZDfrPBwvVDxq','mtaWma','BwvZC2fNzxngywLSzwq','BgvUz3rO','suTODe8','tK9useLorW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','CNvU','C3vIC2nYAwjL','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','CMv0CNLbDhrLBxb0CW','y29UBMvJDgLVBLbYB21PC2u','Bg9N','zgLZy29UBMvJDa','DuDHwMi','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','rxfhyNe','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','mJi4mJqWouHirNjvBG','qxDtt2K','lwnVBNn1BwvYlwDYB3vW','icHNCM91CeLKoIa','z2v0twv0CMLJCW','Bwv0CMLJCW','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','Dg9tDhjPBMC','AM9PBG','BgfZDe1LC3nHz2vuAw1L','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','rhb0zhe','mtKXmJq3uwHsy3DW','nJzJBKHHtgm','tNDVzge','BwvZC2fNzuHHBMrSzxi','Bwf4qNL0zxnqzxjqyxj0AxrPB24','Bg9Ntgv2zwW','suvOt2S','mZKWmZG1zMLmy0nK','C2vLAW','CMv0CNLnyxHezwXHEq','v0fstG','CMv0CNLezwXHEq','AxnsDw5UAw5N','s0fgs0fFru5bqKXfra','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignVBM5Ly3rLzcb0BYbICM9RzxjZoIa','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','y29UC3vTzxiUzgLZy29UBMvJDa','vLPxuu8'];a0_0x5b10=function(){return _0x31ae55;};return a0_0x5b10();}(function(_0x28aa98,_0x1c11bf){const _0x58d481=a0_0x2de7,_0xfac85b=_0x28aa98();while(!![]){try{const _0x8bdbb=-parseInt(_0x58d481(0xd9))/0x1*(parseInt(_0x58d481(0xd1))/0x2)+parseInt(_0x58d481(0xc9))/0x3+parseInt(_0x58d481(0xb4))/0x4+-parseInt(_0x58d481(0x102))/0x5*(-parseInt(_0x58d481(0xfc))/0x6)+-parseInt(_0x58d481(0xfb))/0x7+parseInt(_0x58d481(0xac))/0x8+-parseInt(_0x58d481(0xef))/0x9;if(_0x8bdbb===_0x1c11bf)break;else _0xfac85b['push'](_0xfac85b['shift']());}catch(_0x4c5f8c){_0xfac85b['push'](_0xfac85b['shift']());}}}(a0_0x5b10,0x8b50d));const {Kafka,logLevel}=require(a0_0x22f015(0x10e)),{v7:uuidv7}=require(a0_0x22f015(0xb7));class KafkaConsumerService{constructor(){const _0xd79e02=a0_0x22f015;this[_0xd79e02(0x110)]=null,this[_0xd79e02(0xbe)]=null,this['isConnected']=![],this[_0xd79e02(0xba)]=![],this[_0xd79e02(0x107)]=![],this['isPaused']=![],this['connectionPromise']=null,this['subscribedTopics']=[],this[_0xd79e02(0xda)]=null,this['messageHandler']=null,this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x22f015(0x10d)](){const _0x66a748=a0_0x22f015,_0x151206={'DcAuN':'true','IEhOk':_0x66a748(0xd0),'uGaZb':function(_0x2e5b7f,_0xfd95a){return _0x2e5b7f(_0xfd95a);},'dRxHd':function(_0xa2d069,_0x120d27){return _0xa2d069(_0x120d27);},'Nwoda':'3000','kGvEJ':_0x66a748(0x11b),'TotsN':function(_0x5b8f95,_0x37a1cb){return _0x5b8f95===_0x37a1cb;},'ximPE':function(_0xc83849,_0x26c2c8){return _0xc83849(_0x26c2c8);},'BymtA':_0x66a748(0xdd),'imhdX':function(_0x2afff0,_0x990578){return _0x2afff0(_0x990578);},'HCwfe':_0x66a748(0xd8)};return{'enabled':process[_0x66a748(0x122)][_0x66a748(0x108)]===_0x151206['DcAuN'],'brokers':(process['env'][_0x66a748(0xb0)]||'localhost:9092')[_0x66a748(0x118)](','),'clientId':process['env']['KAFKA_CLIENT_ID']||'restforge-'+(process[_0x66a748(0x122)][_0x66a748(0x124)]||_0x151206[_0x66a748(0x101)])+'-consumer','connectionTimeout':parseInt(process[_0x66a748(0x122)][_0x66a748(0xd3)]||_0x66a748(0x11d)),'requestTimeout':_0x151206[_0x66a748(0xea)](parseInt,process[_0x66a748(0x122)]['KAFKA_REQUEST_TIMEOUT']||_0x66a748(0xa7)),'sessionTimeout':_0x151206['dRxHd'](parseInt,process[_0x66a748(0x122)][_0x66a748(0x115)]||_0x66a748(0xbb)),'heartbeatInterval':_0x151206['dRxHd'](parseInt,process[_0x66a748(0x122)]['KAFKA_HEARTBEAT_INTERVAL']||_0x151206[_0x66a748(0xfd)]),'maxBytesPerPartition':_0x151206[_0x66a748(0xea)](parseInt,process[_0x66a748(0x122)]['KAFKA_MAX_BYTES_PER_PARTITION']||_0x151206['kGvEJ']),'autoCommit':_0x151206[_0x66a748(0xcf)](process['env'][_0x66a748(0xd7)],'true'),'autoCommitInterval':_0x151206['uGaZb'](parseInt,process[_0x66a748(0x122)]['KAFKA_AUTO_COMMIT_INTERVAL']||_0x66a748(0xbd)),'retryAttempts':_0x151206['dRxHd'](parseInt,process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0x151206['ximPE'](parseInt,process['env']['KAFKA_RETRY_DELAY']||_0x151206['BymtA']),'retryMaxDelay':_0x151206[_0x66a748(0xb8)](parseInt,process['env']['KAFKA_RETRY_MAX_DELAY']||_0x66a748(0xbb)),'logLevel':process[_0x66a748(0x122)][_0x66a748(0x120)]||_0x151206['HCwfe']};}[a0_0x22f015(0xaf)](_0x13d758){const _0x382339=a0_0x22f015,_0x487747={'nothing':logLevel[_0x382339(0xe1)],'error':logLevel[_0x382339(0xaa)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel[_0x382339(0xb3)]};return _0x487747[_0x13d758['toLowerCase']()]||logLevel[_0x382339(0x105)];}async['initialize'](_0x30e4d1={}){const _0x171d90=a0_0x22f015,_0x17b1df={'HcjrQ':function(_0x188c53,_0x4d3a26){return _0x188c53===_0x4d3a26;},'gtIQs':_0x171d90(0xa9)},_0x1d484c=this[_0x171d90(0x10d)]();if(!_0x1d484c['enabled'])return console['log'](_0x17b1df['gtIQs']),![];if(this[_0x171d90(0xc7)])return!![];if(this[_0x171d90(0xba)]&&this['connectionPromise'])return this['connectionPromise'];return this['isInitializing']=!![],this[_0x171d90(0xe7)]=new Promise(async _0x119b62=>{const _0x2a2e01=_0x171d90;try{let _0x326dcd=undefined;_0x17b1df['HcjrQ'](process[_0x2a2e01(0x122)][_0x2a2e01(0xcd)],'true')&&(_0x326dcd=!![]);let _0x3d0060=undefined;process[_0x2a2e01(0x122)]['KAFKA_SASL_MECHANISM']&&(_0x3d0060={'mechanism':process[_0x2a2e01(0x122)]['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x2a2e01(0xc3)]||'','password':process[_0x2a2e01(0x122)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x30e4d1['clientId']||_0x1d484c['clientId'],'brokers':_0x1d484c[_0x2a2e01(0xa4)],'connectionTimeout':_0x1d484c[_0x2a2e01(0xcc)],'requestTimeout':_0x1d484c[_0x2a2e01(0xdc)],'logLevel':this['getLogLevel'](_0x1d484c[_0x2a2e01(0x100)]),'ssl':_0x326dcd,'sasl':_0x3d0060,'retry':{'initialRetryTime':_0x1d484c[_0x2a2e01(0x106)],'retries':_0x1d484c[_0x2a2e01(0xe6)],'maxRetryTime':_0x1d484c[_0x2a2e01(0x104)]}}),this['groupId']=_0x30e4d1['groupId']||'restforge-'+(process[_0x2a2e01(0x122)][_0x2a2e01(0x124)]||_0x2a2e01(0xd0))+_0x2a2e01(0xf1),this[_0x2a2e01(0xbe)]=this[_0x2a2e01(0x110)]['consumer']({'groupId':this['groupId'],'sessionTimeout':_0x1d484c['sessionTimeout'],'heartbeatInterval':_0x1d484c['heartbeatInterval'],'maxBytesPerPartition':_0x1d484c[_0x2a2e01(0xff)],'allowAutoTopicCreation':![]}),await this['consumer'][_0x2a2e01(0xd6)](),this[_0x2a2e01(0xc7)]=!![],console['log'](_0x2a2e01(0x109)+_0x1d484c['brokers']['join'](',\x20')+_0x2a2e01(0xf2)+this[_0x2a2e01(0xda)]+')'),this['setupEventHandlers'](),_0x119b62(!![]);}catch(_0x285354){console[_0x2a2e01(0xad)](_0x2a2e01(0xec)+_0x285354[_0x2a2e01(0x116)]),this['isConnected']=![],_0x119b62(![]);}finally{this[_0x2a2e01(0xba)]=![];}}),this['connectionPromise'];}['setupEventHandlers'](){const _0x3d6d22=a0_0x22f015,_0xf55217={'zsdYb':_0x3d6d22(0xa3),'ejAnI':'consumer.crash'};if(!this['consumer'])return;this['consumer']['on'](_0x3d6d22(0x10b),()=>{const _0x1aa13a=_0x3d6d22;console[_0x1aa13a(0xe8)](_0x1aa13a(0xe5)),this['isConnected']=![],this['isRunning']=![];}),this['consumer']['on'](_0xf55217['zsdYb'],()=>{const _0x560cc4=_0x3d6d22;console[_0x560cc4(0xe8)]('[KafkaConsumer]\x20Consumer\x20stopped'),this[_0x560cc4(0x107)]=![];}),this['consumer']['on'](_0xf55217['ejAnI'],_0x1240ef=>{const _0x4dc3ca=_0x3d6d22;console['error'](_0x4dc3ca(0x11c)+_0x1240ef['payload'][_0x4dc3ca(0xad)][_0x4dc3ca(0x116)]),this[_0x4dc3ca(0x107)]=![];}),this['consumer']['on'](_0x3d6d22(0xc5),()=>{console['log']('[KafkaConsumer]\x20Consumer\x20rebalancing...');});}async[a0_0x22f015(0xe4)](_0x2ad689,_0x518084=![]){const _0x5f5cf1=a0_0x22f015;if(!this['isConnected'])return console['error']('[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'),![];try{const _0x5688b3=Array[_0x5f5cf1(0x111)](_0x2ad689)?_0x2ad689:[_0x2ad689];for(const _0x197c30 of _0x5688b3){await this[_0x5f5cf1(0xbe)][_0x5f5cf1(0xe4)]({'topic':_0x197c30,'fromBeginning':_0x518084}),console[_0x5f5cf1(0xe8)](_0x5f5cf1(0xc1)+_0x197c30+'\x20(fromBeginning:\x20'+_0x518084+')');}return this[_0x5f5cf1(0xb9)]=[...new Set([...this['subscribedTopics'],..._0x5688b3])],!![];}catch(_0x474340){return console[_0x5f5cf1(0xad)](_0x5f5cf1(0xc4)+_0x474340['message']),![];}}async['startConsuming'](_0x11d9d5,_0x732c16={}){const _0xf5a956=a0_0x22f015,_0x3fc29e={'HkYQF':function(_0xa75a51,_0x2f846e){return _0xa75a51+_0x2f846e;},'bKWda':function(_0x3dd08c,_0x1bd622){return _0x3dd08c(_0x1bd622);},'hfJeu':function(_0x5c4c53,_0x1403e5){return _0x5c4c53-_0x1403e5;},'uGOBo':function(_0x2bf007){return _0x2bf007();}};if(!this['isConnected'])return console['error']('[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected'),![];if(this[_0xf5a956(0x107)])return console['log'](_0xf5a956(0xeb)),!![];const _0x556630=this['getConfig']();this['messageHandler']=_0x11d9d5;try{return this[_0xf5a956(0xf4)][_0xf5a956(0xca)]=new Date(),await this['consumer'][_0xf5a956(0xe3)]({'autoCommit':_0x732c16['autoCommit']!==undefined?_0x732c16[_0xf5a956(0xdb)]:_0x556630['autoCommit'],'autoCommitInterval':_0x556630[_0xf5a956(0xc8)],'eachMessage':async({topic:_0x244154,partition:_0x5d7a7a,message:_0x30bea1,heartbeat:_0xb8e7be})=>{const _0x5d15ed=_0xf5a956,_0x6c842a=Date['now']();this['metrics'][_0x5d15ed(0x112)]++,this[_0x5d15ed(0xf4)][_0x5d15ed(0xf8)]=new Date();try{const _0x261c8f=_0x30bea1[_0x5d15ed(0x114)]?_0x30bea1['value']['toString']():null;let _0xa50a71=null;try{_0xa50a71=_0x261c8f?JSON['parse'](_0x261c8f):null;}catch(_0x5b04da){_0xa50a71=_0x261c8f;}const _0x4d9fce={'topic':_0x244154,'partition':_0x5d7a7a,'offset':_0x30bea1['offset'],'key':_0x30bea1[_0x5d15ed(0xb5)]?_0x30bea1[_0x5d15ed(0xb5)][_0x5d15ed(0xf6)]():null,'headers':this['parseHeaders'](_0x30bea1['headers']),'timestamp':_0x30bea1['timestamp'],'value':_0xa50a71,'raw':_0x261c8f};this[_0x5d15ed(0xfe)]&&await this['messageHandler'](_0x4d9fce);!_0x556630[_0x5d15ed(0xdb)]&&await this[_0x5d15ed(0xbe)]['commitOffsets']([{'topic':_0x244154,'partition':_0x5d7a7a,'offset':_0x3fc29e['HkYQF'](_0x3fc29e[_0x5d15ed(0x11e)](parseInt,_0x30bea1['offset']),0x1)[_0x5d15ed(0xf6)]()}]);this['metrics'][_0x5d15ed(0xd4)]++;const _0x400369=_0x3fc29e[_0x5d15ed(0x123)](Date['now'](),_0x6c842a);this['metrics'][_0x5d15ed(0x11f)][_0x5d15ed(0xbf)](_0x400369),this['metrics']['processingTimes'][_0x5d15ed(0xdf)]>0x64&&this['metrics'][_0x5d15ed(0x11f)]['shift'](),await _0x3fc29e['uGOBo'](_0xb8e7be);}catch(_0x5cecca){this['metrics'][_0x5d15ed(0xde)]++,console[_0x5d15ed(0xad)]('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x5cecca[_0x5d15ed(0x116)]);throw _0x5cecca;}}}),this[_0xf5a956(0x107)]=!![],console['log'](_0xf5a956(0xee)+this[_0xf5a956(0xb9)][_0xf5a956(0xf7)](',\x20')),!![];}catch(_0x5da631){return console[_0xf5a956(0xad)](_0xf5a956(0x10a)+_0x5da631[_0xf5a956(0x116)]),![];}}[a0_0x22f015(0xab)](_0x74f9b9){if(!_0x74f9b9)return{};const _0x2dfd1d={};for(const [_0x1313d9,_0x4a8926]of Object['entries'](_0x74f9b9)){_0x2dfd1d[_0x1313d9]=_0x4a8926?_0x4a8926['toString']():null;}return _0x2dfd1d;}async['pause'](){const _0x37ef46=a0_0x22f015,_0x1d7222={'XdaRi':_0x37ef46(0xb1),'VZWQO':_0x37ef46(0xd5),'Dptdq':_0x37ef46(0xe2)};if(!this[_0x37ef46(0xc7)]||!this[_0x37ef46(0x107)])return console[_0x37ef46(0xe8)](_0x1d7222[_0x37ef46(0xa8)]),![];if(this['isPaused'])return console[_0x37ef46(0xe8)](_0x1d7222[_0x37ef46(0x10c)]),!![];try{const _0x4484df=this[_0x37ef46(0xb9)]['map'](_0x1c5c86=>({'topic':_0x1c5c86}));return this['consumer']['pause'](_0x4484df),this['isPaused']=!![],console['log'](_0x1d7222[_0x37ef46(0xfa)]),!![];}catch(_0x2a9089){return console['error'](_0x37ef46(0xf5)+_0x2a9089[_0x37ef46(0x116)]),![];}}async[a0_0x22f015(0xa5)](){const _0x178279=a0_0x22f015,_0x132cb1={'XsLXM':'[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running','KUdRJ':'[KafkaConsumer]\x20Consumer\x20not\x20paused','EqGbq':'[KafkaConsumer]\x20Consumer\x20resumed'};if(!this[_0x178279(0xc7)]||!this[_0x178279(0x107)])return console[_0x178279(0xe8)](_0x132cb1['XsLXM']),![];if(!this['isPaused'])return console[_0x178279(0xe8)](_0x132cb1['KUdRJ']),!![];try{const _0x274ecf=this[_0x178279(0xb9)]['map'](_0x4ec7f1=>({'topic':_0x4ec7f1}));return this[_0x178279(0xbe)]['resume'](_0x274ecf),this[_0x178279(0xa6)]=![],console['log'](_0x132cb1[_0x178279(0xed)]),!![];}catch(_0x56b332){return console[_0x178279(0xad)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x56b332[_0x178279(0x116)]),![];}}async[a0_0x22f015(0x117)](){const _0x31f2a8=a0_0x22f015,_0xa65d95={'MYaBZ':_0x31f2a8(0xce),'IKhtO':_0x31f2a8(0x113)};if(!this[_0x31f2a8(0xc7)])return console[_0x31f2a8(0xe8)](_0xa65d95['MYaBZ']),!![];try{const _0x402081=_0xa65d95[_0x31f2a8(0xe0)]['split']('|');let _0x269088=0x0;while(!![]){switch(_0x402081[_0x269088++]){case'0':this[_0x31f2a8(0xa6)]=![];continue;case'1':console[_0x31f2a8(0xe8)]('[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected');continue;case'2':return!![];case'3':this[_0x31f2a8(0xc7)]=![];continue;case'4':this[_0x31f2a8(0xbe)]&&(await this[_0x31f2a8(0xbe)][_0x31f2a8(0x117)](),await this[_0x31f2a8(0xbe)][_0x31f2a8(0xe9)]());continue;case'5':this[_0x31f2a8(0x107)]=![];continue;}break;}}catch(_0x2ecf39){return console[_0x31f2a8(0xad)](_0x31f2a8(0xf9)+_0x2ecf39[_0x31f2a8(0x116)]),![];}}async[a0_0x22f015(0xb6)](_0x4f2699,_0x41be14,_0x3a2eb0){const _0x53bb76=a0_0x22f015;if(!this['isConnected'])return console[_0x53bb76(0xad)](_0x53bb76(0xcb)),![];try{return this[_0x53bb76(0xbe)][_0x53bb76(0x103)]({'topic':_0x4f2699,'partition':_0x41be14,'offset':_0x3a2eb0[_0x53bb76(0xf6)]()}),console['log']('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x3a2eb0+_0x53bb76(0xc2)+_0x4f2699+':'+_0x41be14),!![];}catch(_0x17b6a2){return console['error']('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x17b6a2['message']),![];}}[a0_0x22f015(0x10f)](){const _0x19fb2a=a0_0x22f015,_0x7e76ed=this[_0x19fb2a(0x10d)]();return{'enabled':_0x7e76ed['enabled'],'connected':this[_0x19fb2a(0xc7)],'running':this['isRunning'],'paused':this['isPaused'],'brokers':_0x7e76ed[_0x19fb2a(0xa4)],'clientId':_0x7e76ed[_0x19fb2a(0xd2)],'groupId':this[_0x19fb2a(0xda)],'subscribedTopics':this['subscribedTopics']};}[a0_0x22f015(0xf3)](){const _0x2d992d=a0_0x22f015,_0x5da5ab={'bcwBB':function(_0x58d15f,_0x1d1bf4){return _0x58d15f/_0x1d1bf4;},'luYfW':function(_0x2ab9de,_0x102922){return _0x2ab9de>_0x102922;},'FVuLn':function(_0xc5cc9d,_0x212121){return _0xc5cc9d>_0x212121;},'AwSOi':function(_0x4ed0b3,_0x40526a){return _0x4ed0b3+_0x40526a;},'lDkql':function(_0x43816f,_0x478506){return _0x43816f*_0x478506;},'JNvnl':function(_0x9cd19c,_0x59f3b6){return _0x9cd19c/_0x59f3b6;},'oqdZQ':function(_0x9af77a,_0x1a78ba){return _0x9af77a-_0x1a78ba;},'pxCAs':function(_0x4785b6,_0x2289c0){return _0x4785b6+_0x2289c0;}},_0x360e6e=this[_0x2d992d(0xf4)]['processingTimes']['length']>0x0?_0x5da5ab['bcwBB'](this['metrics']['processingTimes'][_0x2d992d(0xbc)]((_0x44a614,_0x2387c5)=>_0x44a614+_0x2387c5,0x0),this[_0x2d992d(0xf4)]['processingTimes'][_0x2d992d(0xdf)]):0x0,_0x58d0c8=_0x5da5ab[_0x2d992d(0xae)](this['metrics'][_0x2d992d(0x11f)]['length'],0x0)?Math['min'](...this[_0x2d992d(0xf4)]['processingTimes']):0x0,_0x59df13=_0x5da5ab['FVuLn'](this['metrics']['processingTimes']['length'],0x0)?Math[_0x2d992d(0x119)](...this[_0x2d992d(0xf4)]['processingTimes']):0x0;return{'messagesReceived':this['metrics']['messagesReceived'],'messagesProcessed':this['metrics']['messagesProcessed'],'messagesFailed':this['metrics']['messagesFailed'],'successRate':_0x5da5ab[_0x2d992d(0x121)](this['metrics'][_0x2d992d(0x112)],0x0)?_0x5da5ab[_0x2d992d(0xf0)](_0x5da5ab['lDkql'](this['metrics']['messagesProcessed']/this[_0x2d992d(0xf4)][_0x2d992d(0x112)],0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this[_0x2d992d(0xf4)]['lastMessageTime'],'startTime':this[_0x2d992d(0xf4)][_0x2d992d(0xca)],'uptime':this['metrics']['startTime']?_0x5da5ab[_0x2d992d(0xf0)](Math['floor'](_0x5da5ab[_0x2d992d(0x11a)](_0x5da5ab['oqdZQ'](Date[_0x2d992d(0xb2)](),this[_0x2d992d(0xf4)][_0x2d992d(0xca)][_0x2d992d(0xc0)]()),0x3e8)),'s'):'0s','processingTime':{'avg':Math[_0x2d992d(0x125)](_0x360e6e)+'ms','min':_0x5da5ab['pxCAs'](_0x58d0c8,'ms'),'max':_0x5da5ab['AwSOi'](_0x59df13,'ms')}};}['resetMetrics'](){const _0x40fdd9=a0_0x22f015;this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console[_0x40fdd9(0xe8)]('[KafkaConsumer]\x20Metrics\x20reset');}async[a0_0x22f015(0xc6)](){await this['stop']();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function a0_0x2de7(_0x387567,_0x5f3c6a){_0x387567=_0x387567-0xa3;const _0x5b102c=a0_0x5b10();let _0x2de785=_0x5b102c[_0x387567];if(a0_0x2de7['PrbCtP']===undefined){var _0x2bcaa4=function(_0x27bf67){const _0x5843c1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ebf30='',_0x1b9479='';for(let _0xe52c8b=0x0,_0xc64743,_0x57c73d,_0x2250b8=0x0;_0x57c73d=_0x27bf67['charAt'](_0x2250b8++);~_0x57c73d&&(_0xc64743=_0xe52c8b%0x4?_0xc64743*0x40+_0x57c73d:_0x57c73d,_0xe52c8b++%0x4)?_0x4ebf30+=String['fromCharCode'](0xff&_0xc64743>>(-0x2*_0xe52c8b&0x6)):0x0){_0x57c73d=_0x5843c1['indexOf'](_0x57c73d);}for(let _0x280135=0x0,_0x19e939=_0x4ebf30['length'];_0x280135<_0x19e939;_0x280135++){_0x1b9479+='%'+('00'+_0x4ebf30['charCodeAt'](_0x280135)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b9479);};a0_0x2de7['RHNjIS']=_0x2bcaa4,a0_0x2de7['pqUYfo']={},a0_0x2de7['PrbCtP']=!![];}const _0xe09a5=_0x5b102c[0x0],_0x5c7890=_0x387567+_0xe09a5,_0x2c7bd1=a0_0x2de7['pqUYfo'][_0x5c7890];return!_0x2c7bd1?(_0x2de785=a0_0x2de7['RHNjIS'](_0x2de785),a0_0x2de7['pqUYfo'][_0x5c7890]=_0x2de785):_0x2de785=_0x2c7bd1,_0x2de785;}function resetInstance(){const _0x293b3e=a0_0x22f015;instance&&(instance[_0x293b3e(0xc6)](),instance=null);}function createInstance(){return new KafkaConsumerService();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
1
+ function a0_0x1551(_0x1ef5e4,_0x1c4157){_0x1ef5e4=_0x1ef5e4-0x169;const _0x1a2994=a0_0x1a29();let _0x155189=_0x1a2994[_0x1ef5e4];if(a0_0x1551['rktGRK']===undefined){var _0x400ce1=function(_0x7c9e8c){const _0x3a9e66='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2d39a5='',_0x57766e='';for(let _0x582036=0x0,_0x5cffbd,_0x14de8e,_0x563033=0x0;_0x14de8e=_0x7c9e8c['charAt'](_0x563033++);~_0x14de8e&&(_0x5cffbd=_0x582036%0x4?_0x5cffbd*0x40+_0x14de8e:_0x14de8e,_0x582036++%0x4)?_0x2d39a5+=String['fromCharCode'](0xff&_0x5cffbd>>(-0x2*_0x582036&0x6)):0x0){_0x14de8e=_0x3a9e66['indexOf'](_0x14de8e);}for(let _0x58f45b=0x0,_0xdab942=_0x2d39a5['length'];_0x58f45b<_0xdab942;_0x58f45b++){_0x57766e+='%'+('00'+_0x2d39a5['charCodeAt'](_0x58f45b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x57766e);};a0_0x1551['yzFrlF']=_0x400ce1,a0_0x1551['zzyHGX']={},a0_0x1551['rktGRK']=!![];}const _0x277284=_0x1a2994[0x0],_0x46d11c=_0x1ef5e4+_0x277284,_0x4707f9=a0_0x1551['zzyHGX'][_0x46d11c];return!_0x4707f9?(_0x155189=a0_0x1551['yzFrlF'](_0x155189),a0_0x1551['zzyHGX'][_0x46d11c]=_0x155189):_0x155189=_0x4707f9,_0x155189;}const a0_0x313458=a0_0x1551;function a0_0x1a29(){const _0x4c0187=['uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','AgvHzgvYCW','AK9AzK0','CgLODuK','y29UC3vTzxiUC3rVCa','Dg9tDhjPBMC','z2v0u3rHDhvZ','lwnVBNn1BwvY','s0fgs0fFuKvuuLLFrevmqvK','mJuWmda','qwfWtKi','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwq','Bwf4','A2XQr0m','mZjWu2HPtva','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','mJK4nJa4mwnHEgzOAq','AgvHCNrIzwf0sw50zxj2ywW','C3vIC2nYAwjLzfrVCgLJCW','zxjYB3i','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','zw5HyMXLza','z3jVDxbjza','s0fgs0fFu0fttf9qqvntv09sra','nJiWngvKD054qq','AxnjBML0AwfSAxPPBMC','C2v0DxbfDMvUDeHHBMrSzxjZ','ChjVy2vZC2LUz1rPBwvZ','yxv0B0nVBw1PDa','mtaZmdjsBMPpDK4','y29UC3vTzxiUy3jHC2G','EKXMAhu','C3rHCNruAw1L','CMvKDwnL','tK9useLorW','y29UC3vTzxi','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','AuLoqvu','y29TBwL0t2zMC2v0CW','zNrAtfy','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','DxvUAxK','DMfSDwu','B2zMC2v0','C2HPzNq','veDhswi','mZaWmda','lwnVBNn1BwvYlwDYB3vW','oteWv3ntCvH2','BeDAAgy','A2v5','Dg9mB3DLCKnHC2u','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','yNjVA2vYCW','mJbfsK1dA00','Bg9N','txDRr3G','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','s0fgs0fFq0Xjru5ux0Le','y29UBMvJDgLVBLrPBwvVDxq','nZyXoty0zufnrezg','BwLU','ntiXndiXmMvVsgD1Ba','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','s0fgs0fFte9hx0XfvKvm','CgfYC2u','ChvZAa','CMvZDw1L','D0L0BwC','s0fgs0fFqLjps0vsuW','CMv0CNLezwXHEq','DxvPza','BwvZC2fNzq','icHNCM91CeLKoIa','icHMCM9TqMvNAw5UAw5NoIa','yLH4u1a','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','CMvXDwvZDfrPBwvVDxq','BwvZC2fNzxngywLSzwq','C3vIC2nYAwjL','AxnqyxvZzwq','zgLZy29UBMvJDa','CMv0CNLbDhrLBxb0CW','ExjUzKG','su5gtW','Cgf5Bg9Hza','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','nJK3ntzbzK9PCw4','z2v0tg9Ntgv2zwW','C2vLAW','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzwqGDg8GDg9WAwm6ia','Bwv0CMLJCW','BgfZDe1LC3nHz2vuAw1L','yuL1DKu','zw50CMLLCW','BwvZC2fNzxnszwnLAxzLza','CMvZDgzVCMDLlq','z2v0vgLTzq','tuHvt2q','mta0odu3nG','C3rVCa','s0fgs0fFu0fttf9nruniqu5ju00','s0fgs0fFqvvut19dt01nsvq','mtq2rw9JEwnj','C2vZC2LVBLrPBwvVDxq','BwvZC2fNzxnqCM9JzxnZzwq','w0THzMTHq29UC3vTzxjDienHBM5VDcbYzxn1BwuGlsbJB25ZDw1LCIbUB3qGCNvUBMLUzW','zw52','CgfYC2vizwfKzxjZ','BwfW','D2fYBG','BgvUz3rO','y2XPzw50swq','vLPyzuq','AxndB25Uzwn0zwq','AxnsDw5UAw5N','y2XVC2u','mJCZnefqwenLzG','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','Dhj1zq','z2v0q29UzMLN','BM93','A2fMA2e','nJCYoda5ngvSrKXIqG','y29UBMvJDgLVBLbYB21PC2u'];a0_0x1a29=function(){return _0x4c0187;};return a0_0x1a29();}(function(_0x219623,_0x45228a){const _0x5eb956=a0_0x1551,_0x112836=_0x219623();while(!![]){try{const _0x4b9fe8=-parseInt(_0x5eb956(0x16e))/0x1*(-parseInt(_0x5eb956(0x1de))/0x2)+-parseInt(_0x5eb956(0x1b3))/0x3+parseInt(_0x5eb956(0x1b5))/0x4+parseInt(_0x5eb956(0x1a6))/0x5*(-parseInt(_0x5eb956(0x193))/0x6)+parseInt(_0x5eb956(0x186))/0x7*(parseInt(_0x5eb956(0x184))/0x8)+parseInt(_0x5eb956(0x174))/0x9*(parseInt(_0x5eb956(0x1ad))/0xa)+-parseInt(_0x5eb956(0x18e))/0xb*(parseInt(_0x5eb956(0x1ce))/0xc);if(_0x4b9fe8===_0x45228a)break;else _0x112836['push'](_0x112836['shift']());}catch(_0x2a682a){_0x112836['push'](_0x112836['shift']());}}}(a0_0x1a29,0xd1dc1));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require(a0_0x313458(0x1be));class KafkaConsumerService{constructor(){const _0x5a93eb=a0_0x313458,_0xd2d0f5={'bXxSP':'4|7|3|2|0|5|6|1|8|9|10'},_0x4f1107=_0xd2d0f5[_0x5a93eb(0x1c2)]['split']('|');let _0x562d26=0x0;while(!![]){switch(_0x4f1107[_0x562d26++]){case'0':this[_0x5a93eb(0x16c)]=![];continue;case'1':this[_0x5a93eb(0x188)]=[];continue;case'2':this['isInitializing']=![];continue;case'3':this[_0x5a93eb(0x16b)]=![];continue;case'4':this['kafka']=null;continue;case'5':this['isPaused']=![];continue;case'6':this[_0x5a93eb(0x175)]=null;continue;case'7':this['consumer']=null;continue;case'8':this[_0x5a93eb(0x18c)]=null;continue;case'9':this['messageHandler']=null;continue;case'10':this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};continue;}break;}}[a0_0x313458(0x171)](){const _0xad4273=a0_0x313458,_0x136c31={'TPCXq':function(_0xf21256,_0x243d4f){return _0xf21256===_0x243d4f;},'AapNB':_0xad4273(0x170),'ftZLV':'localhost:9092','cUvey':function(_0xb9ff4a,_0x57ac95){return _0xb9ff4a(_0x57ac95);},'BDOUL':_0xad4273(0x17f),'zLfhu':function(_0x2691f7,_0x4f0ce5){return _0x2691f7(_0x4f0ce5);},'qOTSn':_0xad4273(0x1a4),'wItmg':'3000','yLGoW':function(_0x3b7c3a,_0x57c2b9){return _0x3b7c3a(_0x57c2b9);},'uuniy':function(_0x1664b9,_0x3535be){return _0x1664b9(_0x3535be);}};return{'enabled':_0x136c31['TPCXq'](process['env']['KAFKA_ENABLED'],_0x136c31[_0xad4273(0x180)]),'brokers':(process[_0xad4273(0x1e2)][_0xad4273(0x1bc)]||_0x136c31[_0xad4273(0x19d)])['split'](','),'clientId':process['env'][_0xad4273(0x1b1)]||_0xad4273(0x1d7)+(process[_0xad4273(0x1e2)]['RESTFORGE_PROJECT_NAME']||'default')+_0xad4273(0x17d),'connectionTimeout':parseInt(process['env']['KAFKA_CONNECTION_TIMEOUT']||'3000'),'requestTimeout':_0x136c31['cUvey'](parseInt,process[_0xad4273(0x1e2)]['KAFKA_REQUEST_TIMEOUT']||_0x136c31['BDOUL']),'sessionTimeout':_0x136c31[_0xad4273(0x195)](parseInt,process['env']['KAFKA_SESSION_TIMEOUT']||_0x136c31['qOTSn']),'heartbeatInterval':parseInt(process[_0xad4273(0x1e2)]['KAFKA_HEARTBEAT_INTERVAL']||_0x136c31[_0xad4273(0x1bb)]),'maxBytesPerPartition':parseInt(process[_0xad4273(0x1e2)]['KAFKA_MAX_BYTES_PER_PARTITION']||_0xad4273(0x1da)),'autoCommit':process[_0xad4273(0x1e2)][_0xad4273(0x1dd)]==='true','autoCommitInterval':_0x136c31['yLGoW'](parseInt,process[_0xad4273(0x1e2)][_0xad4273(0x1aa)]||'5000'),'retryAttempts':_0x136c31[_0xad4273(0x19f)](parseInt,process[_0xad4273(0x1e2)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process[_0xad4273(0x1e2)][_0xad4273(0x17e)]||'1000'),'retryMaxDelay':parseInt(process[_0xad4273(0x1e2)]['KAFKA_RETRY_MAX_DELAY']||_0x136c31['qOTSn']),'logLevel':process[_0xad4273(0x1e2)][_0xad4273(0x1b7)]||_0xad4273(0x1e5)};}['getLogLevel'](_0x1d0e8c){const _0x4934db=a0_0x313458,_0x101305={'nothing':logLevel[_0x4934db(0x198)],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel[_0x4934db(0x1cb)],'debug':logLevel['DEBUG']};return _0x101305[_0x1d0e8c[_0x4934db(0x1a9)]()]||logLevel['WARN'];}async['initialize'](_0x4c88e9={}){const _0x15249d=a0_0x313458,_0x28ff0c={'ErGkJ':function(_0x16aa44,_0x5ad37b){return _0x16aa44===_0x5ad37b;},'jOZfM':_0x15249d(0x170),'BjfYL':'default','MwkGx':'[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'},_0x148b5f=this[_0x15249d(0x171)]();if(!_0x148b5f[_0x15249d(0x18b)])return console[_0x15249d(0x1ae)](_0x28ff0c[_0x15249d(0x1af)]),![];if(this[_0x15249d(0x16b)])return!![];if(this['isInitializing']&&this['connectionPromise'])return this[_0x15249d(0x175)];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x5be533=>{const _0x378057=_0x15249d;try{let _0x77c617=undefined;_0x28ff0c['ErGkJ'](process[_0x378057(0x1e2)]['KAFKA_SSL'],_0x28ff0c[_0x378057(0x178)])&&(_0x77c617=!![]);let _0x474ac1=undefined;process['env']['KAFKA_SASL_MECHANISM']&&(_0x474ac1={'mechanism':process[_0x378057(0x1e2)][_0x378057(0x1dc)],'username':process[_0x378057(0x1e2)]['KAFKA_SASL_USERNAME']||'','password':process[_0x378057(0x1e2)][_0x378057(0x18d)]||''}),this[_0x378057(0x173)]=new Kafka({'clientId':_0x4c88e9['clientId']||_0x148b5f['clientId'],'brokers':_0x148b5f[_0x378057(0x1ac)],'connectionTimeout':_0x148b5f[_0x378057(0x1b2)],'requestTimeout':_0x148b5f[_0x378057(0x1c4)],'logLevel':this[_0x378057(0x1cf)](_0x148b5f['logLevel']),'ssl':_0x77c617,'sasl':_0x474ac1,'retry':{'initialRetryTime':_0x148b5f[_0x378057(0x1bd)],'retries':_0x148b5f[_0x378057(0x1c9)],'maxRetryTime':_0x148b5f['retryMaxDelay']}}),this[_0x378057(0x18c)]=_0x4c88e9[_0x378057(0x18c)]||'restforge-'+(process['env'][_0x378057(0x176)]||_0x28ff0c['BjfYL'])+_0x378057(0x1a5),this[_0x378057(0x199)]=this[_0x378057(0x173)][_0x378057(0x199)]({'groupId':this[_0x378057(0x18c)],'sessionTimeout':_0x148b5f[_0x378057(0x1df)],'heartbeatInterval':_0x148b5f[_0x378057(0x187)],'maxBytesPerPartition':_0x148b5f['maxBytesPerPartition'],'allowAutoTopicCreation':![]}),await this['consumer']['connect'](),this['isConnected']=!![],console[_0x378057(0x1ae)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x148b5f[_0x378057(0x1ac)]['join'](',\x20')+_0x378057(0x1c0)+this['groupId']+')'),this[_0x378057(0x190)](),_0x5be533(!![]);}catch(_0x742472){console[_0x378057(0x189)](_0x378057(0x16f)+_0x742472[_0x378057(0x1bf)]),this['isConnected']=![],_0x5be533(![]);}finally{this[_0x378057(0x18f)]=![];}}),this['connectionPromise'];}['setupEventHandlers'](){const _0x4b697b=a0_0x313458,_0x1c94b8={'mzSoe':'[KafkaConsumer]\x20Consumer\x20rebalancing...','SivYJ':'consumer.rebalancing'};if(!this['consumer'])return;this['consumer']['on']('consumer.disconnect',()=>{const _0x9abede=a0_0x1551;console['log'](_0x9abede(0x19a)),this[_0x9abede(0x16b)]=![],this['isRunning']=![];}),this[_0x4b697b(0x199)]['on'](_0x4b697b(0x17a),()=>{const _0x46cc50=_0x4b697b;console[_0x46cc50(0x1ae)](_0x46cc50(0x181)),this['isRunning']=![];}),this[_0x4b697b(0x199)]['on'](_0x4b697b(0x194),_0x4148f6=>{const _0x2e41f5=_0x4b697b;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x4148f6[_0x2e41f5(0x1cc)][_0x2e41f5(0x189)][_0x2e41f5(0x1bf)]),this['isRunning']=![];}),this['consumer']['on'](_0x1c94b8['SivYJ'],()=>{console['log'](_0x1c94b8['mzSoe']);});}async[a0_0x313458(0x1c6)](_0x3f02d3,_0xbe02d=![]){const _0x51d17f=a0_0x313458,_0x169108={'VZXeD':'[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'};if(!this['isConnected'])return console['error'](_0x169108[_0x51d17f(0x16a)]),![];try{const _0xf224aa=Array['isArray'](_0x3f02d3)?_0x3f02d3:[_0x3f02d3];for(const _0x4327a8 of _0xf224aa){await this['consumer']['subscribe']({'topic':_0x4327a8,'fromBeginning':_0xbe02d}),console['log'](_0x51d17f(0x1d1)+_0x4327a8+_0x51d17f(0x1c1)+_0xbe02d+')');}return this['subscribedTopics']=[...new Set([...this[_0x51d17f(0x188)],..._0xf224aa])],!![];}catch(_0x35d53f){return console[_0x51d17f(0x189)]('[KafkaConsumer]\x20Subscribe\x20error:\x20'+_0x35d53f['message']),![];}}async['startConsuming'](_0x18b22c,_0x4ea789={}){const _0x3a6b71=a0_0x313458,_0x59453b={'TSfTX':function(_0x116c31,_0x1192d1){return _0x116c31+_0x1192d1;},'pihuI':function(_0x526589){return _0x526589();},'zXhLW':'[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected'};if(!this['isConnected'])return console[_0x3a6b71(0x189)](_0x59453b['zXhLW']),![];if(this['isRunning'])return console['log'](_0x3a6b71(0x1b6)),!![];const _0x3b8fb3=this[_0x3a6b71(0x171)]();this['messageHandler']=_0x18b22c;try{return this['metrics'][_0x3a6b71(0x196)]=new Date(),await this[_0x3a6b71(0x199)]['run']({'autoCommit':_0x4ea789['autoCommit']!==undefined?_0x4ea789[_0x3a6b71(0x192)]:_0x3b8fb3['autoCommit'],'autoCommitInterval':_0x3b8fb3['autoCommitInterval'],'eachMessage':async({topic:_0x1add32,partition:_0x47466e,message:_0x41d7b3,heartbeat:_0x26850f})=>{const _0x1fbaae=_0x3a6b71,_0x157bf5=Date[_0x1fbaae(0x172)]();this['metrics']['messagesReceived']++,this[_0x1fbaae(0x1d2)]['lastMessageTime']=new Date();try{const _0x3ef812=_0x41d7b3[_0x1fbaae(0x1a0)]?_0x41d7b3['value'][_0x1fbaae(0x17b)]():null;let _0x5cbae3=null;try{_0x5cbae3=_0x3ef812?JSON[_0x1fbaae(0x1b8)](_0x3ef812):null;}catch(_0x3eab53){_0x5cbae3=_0x3ef812;}const _0x5d12d0={'topic':_0x1add32,'partition':_0x47466e,'offset':_0x41d7b3[_0x1fbaae(0x1a1)],'key':_0x41d7b3[_0x1fbaae(0x1a8)]?_0x41d7b3['key']['toString']():null,'headers':this[_0x1fbaae(0x1e3)](_0x41d7b3[_0x1fbaae(0x177)]),'timestamp':_0x41d7b3['timestamp'],'value':_0x5cbae3,'raw':_0x3ef812};this['messageHandler']&&await this['messageHandler'](_0x5d12d0);!_0x3b8fb3[_0x1fbaae(0x192)]&&await this['consumer'][_0x1fbaae(0x19c)]([{'topic':_0x1add32,'partition':_0x47466e,'offset':_0x59453b['TSfTX'](parseInt(_0x41d7b3[_0x1fbaae(0x1a1)]),0x1)['toString']()}]);this['metrics'][_0x1fbaae(0x1e0)]++;const _0x2aa003=Date['now']()-_0x157bf5;this['metrics'][_0x1fbaae(0x191)][_0x1fbaae(0x1b9)](_0x2aa003),this[_0x1fbaae(0x1d2)][_0x1fbaae(0x191)][_0x1fbaae(0x1e6)]>0x64&&this['metrics']['processingTimes'][_0x1fbaae(0x1a2)](),await _0x59453b[_0x1fbaae(0x179)](_0x26850f);}catch(_0xa4be29){this[_0x1fbaae(0x1d2)][_0x1fbaae(0x1c5)]++,console[_0x1fbaae(0x189)](_0x1fbaae(0x185)+_0xa4be29[_0x1fbaae(0x1bf)]);throw _0xa4be29;}}}),this['isRunning']=!![],console['log'](_0x3a6b71(0x19e)+this['subscribedTopics']['join'](',\x20')),!![];}catch(_0x579fdc){return console['error'](_0x3a6b71(0x1ab)+_0x579fdc[_0x3a6b71(0x1bf)]),![];}}[a0_0x313458(0x1e3)](_0x47dfe9){const _0xfb7089=a0_0x313458;if(!_0x47dfe9)return{};const _0x5651cf={};for(const [_0x1e682e,_0x382cee]of Object[_0xfb7089(0x1d5)](_0x47dfe9)){_0x5651cf[_0x1e682e]=_0x382cee?_0x382cee[_0xfb7089(0x17b)]():null;}return _0x5651cf;}async['pause'](){const _0x32b8aa=a0_0x313458,_0x18e5bf={'TGGIb':'[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running','eEmPu':_0x32b8aa(0x1b0)};if(!this[_0x32b8aa(0x16b)]||!this['isRunning'])return console[_0x32b8aa(0x1ae)](_0x18e5bf[_0x32b8aa(0x1a3)]),![];if(this[_0x32b8aa(0x1c7)])return console[_0x32b8aa(0x1ae)]('[KafkaConsumer]\x20Consumer\x20already\x20paused'),!![];try{const _0x320016=this[_0x32b8aa(0x188)][_0x32b8aa(0x1e4)](_0x447541=>({'topic':_0x447541}));return this[_0x32b8aa(0x199)]['pause'](_0x320016),this[_0x32b8aa(0x1c7)]=!![],console[_0x32b8aa(0x1ae)](_0x18e5bf['eEmPu']),!![];}catch(_0x208451){return console['error'](_0x32b8aa(0x18a)+_0x208451['message']),![];}}async[a0_0x313458(0x1ba)](){const _0x160c3c=a0_0x313458;if(!this[_0x160c3c(0x16b)]||!this['isRunning'])return console[_0x160c3c(0x1ae)](_0x160c3c(0x1e1)),![];if(!this[_0x160c3c(0x1c7)])return console['log']('[KafkaConsumer]\x20Consumer\x20not\x20paused'),!![];try{const _0x3bbd7c=this['subscribedTopics'][_0x160c3c(0x1e4)](_0x5489e1=>({'topic':_0x5489e1}));return this[_0x160c3c(0x199)][_0x160c3c(0x1ba)](_0x3bbd7c),this[_0x160c3c(0x1c7)]=![],console['log'](_0x160c3c(0x1c3)),!![];}catch(_0x32204e){return console[_0x160c3c(0x189)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x32204e['message']),![];}}async['stop'](){const _0x239a91=a0_0x313458,_0x8a79f3={'lGZhf':'[KafkaConsumer]\x20Consumer\x20not\x20connected','DTtrO':'4|0|5|1|2|3','iINAU':'[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'};if(!this[_0x239a91(0x16b)])return console['log'](_0x8a79f3[_0x239a91(0x1a7)]),!![];try{const _0x21b684=_0x8a79f3['DTtrO']['split']('|');let _0x428f00=0x0;while(!![]){switch(_0x21b684[_0x428f00++]){case'0':this['isConnected']=![];continue;case'1':this[_0x239a91(0x1c7)]=![];continue;case'2':console['log'](_0x8a79f3[_0x239a91(0x19b)]);continue;case'3':return!![];case'4':this[_0x239a91(0x199)]&&(await this['consumer']['stop'](),await this['consumer'][_0x239a91(0x1c8)]());continue;case'5':this[_0x239a91(0x16c)]=![];continue;}break;}}catch(_0x45f3ba){return console['error']('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x45f3ba['message']),![];}}async['seekToOffset'](_0x3a616b,_0x57f160,_0x476d97){const _0x47cb38=a0_0x313458,_0x415428={'MRcWZ':'[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'};if(!this[_0x47cb38(0x16b)])return console[_0x47cb38(0x189)](_0x415428['MRcWZ']),![];try{return this['consumer'][_0x47cb38(0x1d0)]({'topic':_0x3a616b,'partition':_0x57f160,'offset':_0x476d97['toString']()}),console[_0x47cb38(0x1ae)](_0x47cb38(0x1cd)+_0x476d97+'\x20on\x20'+_0x3a616b+':'+_0x57f160),!![];}catch(_0x4a6208){return console['error']('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x4a6208['message']),![];}}[a0_0x313458(0x17c)](){const _0x2b3832=a0_0x313458,_0x1be50f=this[_0x2b3832(0x171)]();return{'enabled':_0x1be50f[_0x2b3832(0x18b)],'connected':this[_0x2b3832(0x16b)],'running':this['isRunning'],'paused':this['isPaused'],'brokers':_0x1be50f[_0x2b3832(0x1ac)],'clientId':_0x1be50f[_0x2b3832(0x169)],'groupId':this['groupId'],'subscribedTopics':this['subscribedTopics']};}['getMetrics'](){const _0x5d9b23=a0_0x313458,_0x285853={'MHUOd':function(_0x8befbf,_0xfd1224){return _0x8befbf>_0xfd1224;},'kljGC':function(_0x4fef39,_0x9a4fa0){return _0x4fef39/_0x9a4fa0;},'DDvmx':function(_0x56384c,_0x11e022){return _0x56384c*_0x11e022;},'yrnfH':function(_0x36deb9,_0x204701){return _0x36deb9+_0x204701;},'aIuvE':function(_0x54cd6b,_0x154587){return _0x54cd6b+_0x154587;}},_0x4695e9=_0x285853['MHUOd'](this[_0x5d9b23(0x1d2)]['processingTimes']['length'],0x0)?_0x285853['kljGC'](this['metrics'][_0x5d9b23(0x191)][_0x5d9b23(0x197)]((_0x345ee3,_0x57732a)=>_0x345ee3+_0x57732a,0x0),this[_0x5d9b23(0x1d2)][_0x5d9b23(0x191)][_0x5d9b23(0x1e6)]):0x0,_0x31d975=this[_0x5d9b23(0x1d2)]['processingTimes'][_0x5d9b23(0x1e6)]>0x0?Math[_0x5d9b23(0x1b4)](...this['metrics'][_0x5d9b23(0x191)]):0x0,_0x231bc2=_0x285853[_0x5d9b23(0x1d9)](this[_0x5d9b23(0x1d2)]['processingTimes'][_0x5d9b23(0x1e6)],0x0)?Math[_0x5d9b23(0x182)](...this['metrics'][_0x5d9b23(0x191)]):0x0;return{'messagesReceived':this[_0x5d9b23(0x1d2)]['messagesReceived'],'messagesProcessed':this[_0x5d9b23(0x1d2)][_0x5d9b23(0x1e0)],'messagesFailed':this['metrics'][_0x5d9b23(0x1c5)],'successRate':this['metrics']['messagesReceived']>0x0?_0x285853['DDvmx'](this['metrics'][_0x5d9b23(0x1e0)]/this[_0x5d9b23(0x1d2)][_0x5d9b23(0x1d6)],0x64)['toFixed'](0x2)+'%':'0%','lastMessageTime':this[_0x5d9b23(0x1d2)][_0x5d9b23(0x1d3)],'startTime':this[_0x5d9b23(0x1d2)][_0x5d9b23(0x196)],'uptime':this['metrics'][_0x5d9b23(0x196)]?_0x285853['yrnfH'](Math['floor'](_0x285853[_0x5d9b23(0x183)](Date[_0x5d9b23(0x172)]()-this[_0x5d9b23(0x1d2)]['startTime'][_0x5d9b23(0x1d8)](),0x3e8)),'s'):'0s','processingTime':{'avg':_0x285853[_0x5d9b23(0x1d4)](Math['round'](_0x4695e9),'ms'),'min':_0x285853[_0x5d9b23(0x1ca)](_0x31d975,'ms'),'max':_0x231bc2+'ms'}};}['resetMetrics'](){const _0x3f4f64=a0_0x313458;this[_0x3f4f64(0x1d2)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console['log']('[KafkaConsumer]\x20Metrics\x20reset');}async[a0_0x313458(0x16d)](){const _0x3e3f7a=a0_0x313458;await this[_0x3e3f7a(0x1db)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}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
- function a0_0x5be4(){const _0x37be9c=['Aw5PDgLHBgL6zq','zxjYB3i','ru5usvrzx1vqrefuruq','zgvMyxvSDa','CMv0CNLbDhrLBxb0CW','DgvUyw50swq','s0fgs0fFte9hx0XfvKvm','Bw9KDwXL','Dw5RBM93BG','nZm0mZmXnM5ACKTbvW','yNvPBgruB3bPy05HBwu','s0fgs0fFuKvrvuvtvf9usu1ft1vu','tgvNywn5ugfYDgL0Aw9Uzxi','qK5psey','ChvIBgLZAev2zw50','mtmYuhvvCfzZ','A2v5rMLLBgq','mte4mJCWDhD0wNne','ChjVzhvJzxi','s0fgs0fFru5bqKXfra','mJjfzfzQChm','ru5usvrzx0nsrufuruq','yMfZzu9MzNnLDa','w0THzMTHxsblywzRysbWCM9KDwnLCIbPCYbKAxnHyMXLzcbPBIbJB25MAwD1CMf0Aw9U','lxbYB2r1y2vY','zgvSzxrLza','tgXPsNC','CgfKu3rHCNq','BwvZC2fNzq','AxndB25Uzwn0zwq','EuL6rNK','CMvZDgzVCMDLlq','uKvtvezpuKDflq','yNjVA2vYCW','Dg9WAwnqyxr0zxjU','y29UBMvJDgLVBLrPBwvVDxq','s0fgs0fFu0fttf9nruniqu5ju00','nZK2mZztvxPRrfu','CMv0CNLezwXHEq','y2XVC2u','mZaWma','mtGWmdi2ngLbvhnczW','s0fgs0fFq0Xjru5ux0Le','A2fMA2e','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','Bg9N','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','y3jLyxrLza','mJuWmda','y29YCI0','DgfIBgvoyw1L','nda5nZC2nJbksLHrEKC','ChvIBgLZAfvWzgf0zq','zxHWB3j0CW','mtaWmtyZq3bosvzN','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','z2v0rNvSBfLLyxi','s0fgs0fFve9qsunFuefuvevstG','yNvPBgrfDMvUDe1LC3nHz2u','w0THzMTHxsbdB25Uzwn0Aw9UigzHAwXLzdOG','ms4W','s0fgs0fFu0fttf9qqvntv09sra','y29YCMvSyxrPB25jza','zw5HyMXLza','Dhj1zq','y3jLyxrLzej5','zKfuDNy','Dg9mB3DLCKnHC2u','s0fgs0fFuKvuuLLFqvruru1qvfm','z2v0rgf0zq','z2v0u3rHDhvZ','su5gtW','ohfHDhbrqG','C2vUza','AxnjBML0AwfSAxPPBMC','s0fgs0fFq09otKvdveLptL9usu1ft1vu','DxbKyxrLza','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','Dg9vChbLCKnHC2u','v0fstG','s0fgs0fFqLjps0vsuW','ChjVzhvJzxiUzgLZy29UBMvJDa','zw52','E21VzhvSzx0','y29UBMvJDgLVBLbYB21PC2u','tK9useLorW','z2v0q29UzMLN','z2v0twLUDxrLCW','mZi3mZq1m1DQCNz2BG','E2fJDgLVBN0'];a0_0x5be4=function(){return _0x37be9c;};return a0_0x5be4();}const a0_0x127050=a0_0x27ac;(function(_0x2e9619,_0x1e12e9){const _0x185f6e=a0_0x27ac,_0x21f30c=_0x2e9619();while(!![]){try{const _0x532d5b=parseInt(_0x185f6e(0x84))/0x1*(-parseInt(_0x185f6e(0xce))/0x2)+-parseInt(_0x185f6e(0xb8))/0x3+parseInt(_0x185f6e(0xc9))/0x4*(-parseInt(_0x185f6e(0xcb))/0x5)+parseInt(_0x185f6e(0x88))/0x6+-parseInt(_0x185f6e(0x95))/0x7*(-parseInt(_0x185f6e(0xa8))/0x8)+-parseInt(_0x185f6e(0xc3))/0x9+parseInt(_0x185f6e(0x92))/0xa;if(_0x532d5b===_0x1e12e9)break;else _0x21f30c['push'](_0x21f30c['shift']());}catch(_0x2028ee){_0x21f30c['push'](_0x21f30c['shift']());}}}(a0_0x5be4,0xcf252));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require('uuid');function a0_0x27ac(_0x2777ee,_0x3e27ad){_0x2777ee=_0x2777ee-0x7f;const _0x5be450=a0_0x5be4();let _0x27ac62=_0x5be450[_0x2777ee];if(a0_0x27ac['azigFq']===undefined){var _0x5e661b=function(_0x29ce4c){const _0x484637='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2d654e='',_0x5db6f5='';for(let _0x5e022a=0x0,_0x581d34,_0x6d4d5a,_0x2e58a7=0x0;_0x6d4d5a=_0x29ce4c['charAt'](_0x2e58a7++);~_0x6d4d5a&&(_0x581d34=_0x5e022a%0x4?_0x581d34*0x40+_0x6d4d5a:_0x6d4d5a,_0x5e022a++%0x4)?_0x2d654e+=String['fromCharCode'](0xff&_0x581d34>>(-0x2*_0x5e022a&0x6)):0x0){_0x6d4d5a=_0x484637['indexOf'](_0x6d4d5a);}for(let _0x59e8b3=0x0,_0x1dfe62=_0x2d654e['length'];_0x59e8b3<_0x1dfe62;_0x59e8b3++){_0x5db6f5+='%'+('00'+_0x2d654e['charCodeAt'](_0x59e8b3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5db6f5);};a0_0x27ac['pzYZQh']=_0x5e661b,a0_0x27ac['zEHzBg']={},a0_0x27ac['azigFq']=!![];}const _0x4c2e64=_0x5be450[0x0],_0x1f6004=_0x2777ee+_0x4c2e64,_0x301c0a=a0_0x27ac['zEHzBg'][_0x1f6004];return!_0x301c0a?(_0x27ac62=a0_0x27ac['pzYZQh'](_0x27ac62),a0_0x27ac['zEHzBg'][_0x1f6004]=_0x27ac62):_0x27ac62=_0x301c0a,_0x27ac62;}class KafkaService{constructor(){const _0xea0911=a0_0x27ac,_0x3da2d2='1|0|2|3|4'['split']('|');let _0x13d3bf=0x0;while(!![]){switch(_0x3da2d2[_0x13d3bf++]){case'0':this['producer']=null;continue;case'1':this['kafka']=null;continue;case'2':this['isConnected']=![];continue;case'3':this[_0xea0911(0xaa)]=![];continue;case'4':this['connectionPromise']=null;continue;}break;}}[a0_0x127050(0xb6)](){const _0x45c884=a0_0x127050,_0xa1c267={'PXMAi':function(_0x19d55f,_0x48e743){return _0x19d55f===_0x48e743;},'xvPus':_0x45c884(0xbd),'fATvv':function(_0x5903a9,_0xa2a989){return _0x5903a9(_0xa2a989);},'LliJw':'1000'};return{'enabled':_0xa1c267['PXMAi'](process['env'][_0x45c884(0xcd)],_0x45c884(0xa0)),'brokers':(process['env'][_0x45c884(0xb0)]||'localhost:9092')['split'](','),'clientId':process['env'][_0x45c884(0x89)]||'restforge-'+(process['env'][_0x45c884(0xad)]||_0xa1c267['xvPus'])+_0x45c884(0xd2),'connectionTimeout':parseInt(process[_0x45c884(0xb2)][_0x45c884(0xab)]||_0x45c884(0x87)),'requestTimeout':_0xa1c267['fATvv'](parseInt,process[_0x45c884(0xb2)][_0x45c884(0xc5)]||_0x45c884(0x8f)),'topicPattern':process[_0x45c884(0xb2)][_0x45c884(0x99)]||_0x45c884(0x8b),'tenantId':process['env']['KAFKA_TENANT_ID']||_0x45c884(0xbd),'retryAttempts':_0xa1c267[_0x45c884(0xa2)](parseInt,process[_0x45c884(0xb2)][_0x45c884(0xa4)]||'3'),'retryDelay':parseInt(process[_0x45c884(0xb2)]['KAFKA_RETRY_DELAY']||_0xa1c267[_0x45c884(0xd4)]),'logLevel':process['env'][_0x45c884(0xc0)]||'warn'};}['getLogLevel'](_0x4a4733){const _0x1d0294=a0_0x127050,_0x5d5bde={'nothing':logLevel[_0x1d0294(0xb5)],'error':logLevel['ERROR'],'warn':logLevel[_0x1d0294(0xaf)],'info':logLevel[_0x1d0294(0xa7)],'debug':logLevel['DEBUG']};return _0x5d5bde[_0x4a4733[_0x1d0294(0xa3)]()]||logLevel['WARN'];}async[a0_0x127050(0xba)](){const _0x22582b=a0_0x127050,_0x486b2a={'dZkGf':'true','AdlAm':_0x22582b(0xb1)},_0x32e2be=this['getConfig']();if(!_0x32e2be['enabled'])return console['log'](_0x22582b(0xd1)),![];if(this['isConnected'])return!![];if(this[_0x22582b(0xaa)]&&this[_0x22582b(0xb4)])return this[_0x22582b(0xb4)];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x4c4a79=>{const _0x2e941a=_0x22582b,_0xa73be0={'yIzFy':'[Kafka]\x20Producer\x20disconnected'};try{let _0x5d8f3e=undefined;process[_0x2e941a(0xb2)]['KAFKA_SSL']===_0x486b2a['dZkGf']&&(_0x5d8f3e=!![]);let _0x5bf6c1=undefined;process['env'][_0x2e941a(0x83)]&&(_0x5bf6c1={'mechanism':process[_0x2e941a(0xb2)][_0x2e941a(0x83)],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process['env'][_0x2e941a(0x9d)]||''}),this['kafka']=new Kafka({'clientId':_0x32e2be['clientId'],'brokers':_0x32e2be['brokers'],'connectionTimeout':_0x32e2be[_0x2e941a(0x82)],'requestTimeout':_0x32e2be['requestTimeout'],'logLevel':this['getLogLevel'](_0x32e2be['logLevel']),'ssl':_0x5d8f3e,'sasl':_0x5bf6c1,'retry':{'initialRetryTime':_0x32e2be[_0x2e941a(0x85)],'retries':_0x32e2be[_0x2e941a(0xbe)]}}),this[_0x2e941a(0xcc)]=this[_0x2e941a(0x8a)]['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x2e941a(0xc6)]}),await this[_0x2e941a(0xcc)]['connect'](),this['isConnected']=!![],console[_0x2e941a(0x8c)]('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x32e2be[_0x2e941a(0x80)]['join'](',\x20')),this[_0x2e941a(0xcc)]['on'](_0x486b2a['AdlAm'],()=>{const _0x11f460=_0x2e941a;console[_0x11f460(0x8c)](_0xa73be0[_0x11f460(0xd8)]),this['isConnected']=![];}),_0x4c4a79(!![]);}catch(_0x254d0c){console[_0x2e941a(0xbb)](_0x2e941a(0x9b)+_0x254d0c[_0x2e941a(0xd6)]),this['isConnected']=![],_0x4c4a79(![]);}finally{this['isInitializing']=![];}}),this[_0x22582b(0xb4)];}['formatDateTime'](_0x43cef6){const _0x503f9f=a0_0x127050,_0x2a1ada={'iIZjI':function(_0x291883,_0x3950cd){return _0x291883+_0x3950cd;},'WuPDz':function(_0x89bd75,_0xd38d22){return _0x89bd75(_0xd38d22);}},_0xae53aa=_0x43cef6||new Date(),_0xb7b536=_0xae53aa[_0x503f9f(0x98)](),_0x18bf01=String(_0x2a1ada['iIZjI'](_0xae53aa['getMonth'](),0x1))['padStart'](0x2,'0'),_0x186e74=_0x2a1ada['WuPDz'](String,_0xae53aa[_0x503f9f(0xa5)]())[_0x503f9f(0xd5)](0x2,'0'),_0x65e5c0=String(_0xae53aa['getHours']())['padStart'](0x2,'0'),_0x509d85=String(_0xae53aa[_0x503f9f(0xb7)]())['padStart'](0x2,'0'),_0x34d54f=String(_0xae53aa['getSeconds']())['padStart'](0x2,'0');return _0xb7b536+'-'+_0x18bf01+'-'+_0x186e74+'\x20'+_0x65e5c0+':'+_0x509d85+':'+_0x34d54f;}[a0_0x127050(0xc4)](_0x1fe4af,_0x4aac5f,_0x3bd146,_0x3876b7=null){const _0x22ad6c=a0_0x127050,_0x5b2497={'GpacL':'{endpoint}'};if(_0x3876b7)return _0x3876b7;const _0x38576f=this['getConfig']()['topicPattern'];return _0x38576f['replace'](_0x22ad6c(0xb3),_0x1fe4af)['replace'](_0x5b2497['GpacL'],_0x4aac5f)['replace'](_0x22ad6c(0xb9),_0x3bd146);}[a0_0x127050(0x9a)](_0x1f7c82,_0xa14804,_0x2bc3e7,_0x416b2b={}){const _0x347ced=a0_0x127050,_0xfa6f41={'BNOHF':function(_0x4f9fde){return _0x4f9fde();},'bhpgu':'unknown','Zwbpx':'SYSTEM'},_0x4fd721=new Date(),_0x1d9955=this['formatDateTime'](_0x4fd721),_0x4e8db1=_0x416b2b[_0x347ced(0x9e)]||_0x347ced(0x90)+_0xfa6f41[_0x347ced(0xc7)](uuidv7);return{'eventId':'evt-'+uuidv7(),'eventType':_0x1f7c82,'eventTime':_0x1d9955,'eventVersion':_0x347ced(0x9c),'source':_0x347ced(0xd9)+(_0x416b2b['module']||_0xfa6f41['bhpgu']),'correlationId':_0x4e8db1,'newData':_0x2bc3e7,'oldData':_0xa14804,'metadata':{'createdBy':_0x416b2b[_0x347ced(0xa1)]||_0xfa6f41['Zwbpx'],'createdAt':_0x1d9955,'systemId':_0x347ced(0x7f)+(_0x416b2b[_0x347ced(0xc1)]||_0x347ced(0xc2))[_0x347ced(0xae)](),'tenantId':this['getConfig']()[_0x347ced(0xbf)],'endpoint':_0x416b2b['endpoint']||null,'tableName':_0x416b2b['tableName']||null}};}async['publishEvent'](_0x43a834,_0x531390,_0x39a445,_0x19d5c5,_0x65d398={}){const _0x8a8f4d=a0_0x127050,_0x1376b9={'CqSMw':'Kafka\x20producer\x20is\x20disabled'},_0x332b5b=this['getConfig']();if(!_0x332b5b[_0x8a8f4d(0x9f)])return{'success':![],'reason':_0x1376b9['CqSMw'],'published':![]};if(!this[_0x8a8f4d(0xd7)]){const _0x5c569f=await this['initialize']();if(!_0x5c569f)return{'success':![],'reason':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','published':![]};}try{const _0x4adf49=this[_0x8a8f4d(0x9a)](_0x531390,_0x39a445,_0x19d5c5,_0x65d398),_0x1f1887=_0x65d398[_0x8a8f4d(0xca)]||'id',_0x16e7f7=_0x19d5c5?.[_0x1f1887]||_0x39a445?.[_0x1f1887]||uuidv7(),_0x40b243=await this['producer'][_0x8a8f4d(0xa9)]({'topic':_0x43a834,'messages':[{'key':String(_0x16e7f7),'value':JSON['stringify'](_0x4adf49),'headers':{'event-type':_0x531390,'correlation-id':_0x4adf49[_0x8a8f4d(0x9e)],'source':_0x4adf49['source']}}]});return console['log'](_0x8a8f4d(0x8d)+_0x43a834+':\x20'+_0x531390+'\x20(key:\x20'+_0x16e7f7+')'),{'success':!![],'correlationId':_0x4adf49[_0x8a8f4d(0x9e)],'topic':_0x43a834,'partition':_0x40b243[0x0]?.['partition'],'offset':_0x40b243[0x0]?.[_0x8a8f4d(0xd0)],'published':!![]};}catch(_0x1dcd2c){return console[_0x8a8f4d(0xbb)]('[Kafka]\x20Publish\x20error\x20to\x20'+_0x43a834+':\x20'+_0x1dcd2c[_0x8a8f4d(0xd6)]),{'success':![],'error':_0x1dcd2c['message'],'published':![]};}}async['publishInsert'](_0x22ae29,_0x3dbc28,_0x51f6dd,_0x575454={}){const _0x5da4d4=a0_0x127050,_0x45f1d6={'HgmkZ':_0x5da4d4(0xcf)},_0x52c63f=this[_0x5da4d4(0xc4)](_0x22ae29,_0x3dbc28,_0x5da4d4(0x8e),_0x575454['topic']);return this['publishEvent'](_0x52c63f,_0x45f1d6['HgmkZ'],null,_0x51f6dd,{'module':_0x22ae29,'endpoint':_0x3dbc28,'keyField':_0x575454['keyField'],'tableName':_0x575454[_0x5da4d4(0x91)],'correlationId':_0x575454[_0x5da4d4(0x9e)]});}async[a0_0x127050(0x93)](_0x28a96e,_0xe2a130,_0xa51e1d,_0x195b71,_0x663aa4={}){const _0x3f5e46=a0_0x127050,_0x1d7e87=this[_0x3f5e46(0xc4)](_0x28a96e,_0xe2a130,_0x3f5e46(0xac),_0x663aa4['topic']);return this[_0x3f5e46(0xc8)](_0x1d7e87,_0x3f5e46(0xbc),_0xa51e1d,_0x195b71,{'module':_0x28a96e,'endpoint':_0xe2a130,'keyField':_0x663aa4['keyField'],'tableName':_0x663aa4['tableName'],'correlationId':_0x663aa4['correlationId']});}async['publishDelete'](_0x5bcb68,_0x157105,_0x1b394b,_0x528189={}){const _0x53186b=a0_0x127050,_0x3691c4=this[_0x53186b(0xc4)](_0x5bcb68,_0x157105,_0x53186b(0xd3),_0x528189['topic']);return this[_0x53186b(0xc8)](_0x3691c4,'ENTITY_DELETED',_0x1b394b,null,{'module':_0x5bcb68,'endpoint':_0x157105,'keyField':_0x528189['keyField'],'tableName':_0x528189['tableName'],'correlationId':_0x528189['correlationId']});}[a0_0x127050(0xa6)](){const _0x481a7b=a0_0x127050,_0x10e09c=this['getConfig']();return{'enabled':_0x10e09c[_0x481a7b(0x9f)],'connected':this['isConnected'],'brokers':_0x10e09c['brokers'],'clientId':_0x10e09c['clientId'],'topicPattern':_0x10e09c[_0x481a7b(0x81)]};}async[a0_0x127050(0x86)](){const _0x5001b2=a0_0x127050,_0x3f4e87={'tPtfO':_0x5001b2(0x96)};if(this['producer']&&this['isConnected'])try{await this['producer']['disconnect'](),this[_0x5001b2(0xd7)]=![],console[_0x5001b2(0x8c)](_0x3f4e87['tPtfO']);}catch(_0x1435e0){console['error'](_0x5001b2(0x97)+_0x1435e0[_0x5001b2(0xd6)]);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){const _0x4ab26a=a0_0x127050;instance&&(instance[_0x4ab26a(0x86)](),instance=null);}module[a0_0x127050(0x94)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
1
+ const a0_0x7b1ac8=a0_0x442d;(function(_0x4e1f3e,_0x1f995a){const _0x4d47ca=a0_0x442d,_0xa214d3=_0x4e1f3e();while(!![]){try{const _0x5a54f0=parseInt(_0x4d47ca(0x102))/0x1+parseInt(_0x4d47ca(0xfe))/0x2*(-parseInt(_0x4d47ca(0xfa))/0x3)+parseInt(_0x4d47ca(0xf1))/0x4+-parseInt(_0x4d47ca(0xce))/0x5+parseInt(_0x4d47ca(0x11d))/0x6+-parseInt(_0x4d47ca(0x101))/0x7*(parseInt(_0x4d47ca(0xef))/0x8)+-parseInt(_0x4d47ca(0xdb))/0x9;if(_0x5a54f0===_0x1f995a)break;else _0xa214d3['push'](_0xa214d3['shift']());}catch(_0xeaf70d){_0xa214d3['push'](_0xa214d3['shift']());}}}(a0_0x34ca,0xc5653));function a0_0x442d(_0x655d24,_0x1fcc6c){_0x655d24=_0x655d24-0xc5;const _0x34ca37=a0_0x34ca();let _0x442d6c=_0x34ca37[_0x655d24];if(a0_0x442d['bIaBtj']===undefined){var _0x495ced=function(_0x1f3b71){const _0x4e8437='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa11f1b='',_0xc677d0='';for(let _0x580815=0x0,_0x4cbd30,_0x4da1d8,_0x57d3d9=0x0;_0x4da1d8=_0x1f3b71['charAt'](_0x57d3d9++);~_0x4da1d8&&(_0x4cbd30=_0x580815%0x4?_0x4cbd30*0x40+_0x4da1d8:_0x4da1d8,_0x580815++%0x4)?_0xa11f1b+=String['fromCharCode'](0xff&_0x4cbd30>>(-0x2*_0x580815&0x6)):0x0){_0x4da1d8=_0x4e8437['indexOf'](_0x4da1d8);}for(let _0x39ba26=0x0,_0x28a744=_0xa11f1b['length'];_0x39ba26<_0x28a744;_0x39ba26++){_0xc677d0+='%'+('00'+_0xa11f1b['charCodeAt'](_0x39ba26)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc677d0);};a0_0x442d['Pomhlo']=_0x495ced,a0_0x442d['BtsgGV']={},a0_0x442d['bIaBtj']=!![];}const _0x1e50b6=_0x34ca37[0x0],_0x2a838f=_0x655d24+_0x1e50b6,_0x1990a1=a0_0x442d['BtsgGV'][_0x2a838f];return!_0x1990a1?(_0x442d6c=a0_0x442d['Pomhlo'](_0x442d6c),a0_0x442d['BtsgGV'][_0x2a838f]=_0x442d6c):_0x442d6c=_0x1990a1,_0x442d6c;}const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require(a0_0x7b1ac8(0x11a));class KafkaService{constructor(){const _0x4955fa=a0_0x7b1ac8,_0x15b8f4={'qzeer':'4|1|2|0|3'},_0x550d9d=_0x15b8f4[_0x4955fa(0xf4)][_0x4955fa(0xc5)]('|');let _0x2a0692=0x0;while(!![]){switch(_0x550d9d[_0x2a0692++]){case'0':this[_0x4955fa(0xea)]=![];continue;case'1':this[_0x4955fa(0xf9)]=null;continue;case'2':this['isConnected']=![];continue;case'3':this[_0x4955fa(0xcf)]=null;continue;case'4':this['kafka']=null;continue;}break;}}['getConfig'](){const _0x1f97d4=a0_0x7b1ac8,_0xdae37={'TyTVN':_0x1f97d4(0x107),'REZIS':function(_0xebb7cb,_0x35eab2){return _0xebb7cb(_0x35eab2);},'BawIp':'3000','soTIa':_0x1f97d4(0xe3),'lfPjv':_0x1f97d4(0xd9),'byVQn':'1000','PlVbl':_0x1f97d4(0x106)};return{'enabled':process['env'][_0x1f97d4(0xd0)]==='true','brokers':(process['env'][_0x1f97d4(0x111)]||'localhost:9092')[_0x1f97d4(0xc5)](','),'clientId':process[_0x1f97d4(0x11c)][_0x1f97d4(0xca)]||'restforge-'+(process[_0x1f97d4(0x11c)][_0x1f97d4(0xf8)]||_0xdae37[_0x1f97d4(0x10a)])+'-producer','connectionTimeout':_0xdae37[_0x1f97d4(0xda)](parseInt,process[_0x1f97d4(0x11c)][_0x1f97d4(0xcb)]||_0xdae37['BawIp']),'requestTimeout':_0xdae37[_0x1f97d4(0xda)](parseInt,process['env'][_0x1f97d4(0xd3)]||_0xdae37[_0x1f97d4(0xec)]),'topicPattern':process[_0x1f97d4(0x11c)]['KAFKA_TOPIC_PATTERN']||_0xdae37['lfPjv'],'tenantId':process['env']['KAFKA_TENANT_ID']||_0xdae37[_0x1f97d4(0x10a)],'retryAttempts':_0xdae37[_0x1f97d4(0xda)](parseInt,process['env'][_0x1f97d4(0xff)]||'3'),'retryDelay':parseInt(process['env'][_0x1f97d4(0xde)]||_0xdae37['byVQn']),'logLevel':process['env'][_0x1f97d4(0x103)]||_0xdae37[_0x1f97d4(0x108)]};}[a0_0x7b1ac8(0x113)](_0x233d30){const _0x370a4f=a0_0x7b1ac8,_0x1fbead={'nothing':logLevel[_0x370a4f(0xd8)],'error':logLevel['ERROR'],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x1fbead[_0x233d30['toLowerCase']()]||logLevel[_0x370a4f(0xf6)];}async['initialize'](){const _0x4ecd99=a0_0x7b1ac8,_0xbe2ba7={'wqBLF':'true'},_0x56fcc9=this['getConfig']();if(!_0x56fcc9[_0x4ecd99(0x119)])return console[_0x4ecd99(0xf0)]('[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'),![];if(this['isConnected'])return!![];if(this[_0x4ecd99(0xea)]&&this['connectionPromise'])return this['connectionPromise'];return this['isInitializing']=!![],this[_0x4ecd99(0xcf)]=new Promise(async _0x1360c7=>{const _0x3359e5=_0x4ecd99;try{let _0x3d1522=undefined;process[_0x3359e5(0x11c)]['KAFKA_SSL']===_0xbe2ba7['wqBLF']&&(_0x3d1522=!![]);let _0x552c49=undefined;process[_0x3359e5(0x11c)][_0x3359e5(0xf3)]&&(_0x552c49={'mechanism':process[_0x3359e5(0x11c)][_0x3359e5(0xf3)],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process[_0x3359e5(0x11c)][_0x3359e5(0xeb)]||''}),this['kafka']=new Kafka({'clientId':_0x56fcc9[_0x3359e5(0x124)],'brokers':_0x56fcc9['brokers'],'connectionTimeout':_0x56fcc9['connectionTimeout'],'requestTimeout':_0x56fcc9[_0x3359e5(0x115)],'logLevel':this[_0x3359e5(0x113)](_0x56fcc9['logLevel']),'ssl':_0x3d1522,'sasl':_0x552c49,'retry':{'initialRetryTime':_0x56fcc9['retryDelay'],'retries':_0x56fcc9['retryAttempts']}}),this['producer']=this[_0x3359e5(0xfb)][_0x3359e5(0xf9)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners['LegacyPartitioner']}),await this['producer'][_0x3359e5(0x10c)](),this['isConnected']=!![],console['log'](_0x3359e5(0x10f)+_0x56fcc9['brokers'][_0x3359e5(0xc7)](',\x20')),this['producer']['on'](_0x3359e5(0x11e),()=>{console['log']('[Kafka]\x20Producer\x20disconnected'),this['isConnected']=![];}),_0x1360c7(!![]);}catch(_0x2c26d9){console[_0x3359e5(0x125)](_0x3359e5(0xd5)+_0x2c26d9[_0x3359e5(0xe9)]),this['isConnected']=![],_0x1360c7(![]);}finally{this[_0x3359e5(0xea)]=![];}}),this[_0x4ecd99(0xcf)];}[a0_0x7b1ac8(0xc8)](_0x13c4f3){const _0x5a2ffd=a0_0x7b1ac8,_0x35839a={'JcDir':function(_0x1951b0,_0x32a834){return _0x1951b0+_0x32a834;},'WnPhI':function(_0x3ebc6c,_0x3d040e){return _0x3ebc6c(_0x3d040e);}},_0x26cbb7=_0x13c4f3||new Date(),_0x442527=_0x26cbb7['getFullYear'](),_0x13765a=String(_0x35839a['JcDir'](_0x26cbb7[_0x5a2ffd(0xf5)](),0x1))['padStart'](0x2,'0'),_0x361516=_0x35839a[_0x5a2ffd(0x123)](String,_0x26cbb7[_0x5a2ffd(0xed)]())[_0x5a2ffd(0x11b)](0x2,'0'),_0x3984fa=String(_0x26cbb7[_0x5a2ffd(0xe1)]())[_0x5a2ffd(0x11b)](0x2,'0'),_0x5e6cf6=_0x35839a['WnPhI'](String,_0x26cbb7['getMinutes']())[_0x5a2ffd(0x11b)](0x2,'0'),_0x4661c1=String(_0x26cbb7['getSeconds']())[_0x5a2ffd(0x11b)](0x2,'0');return _0x442527+'-'+_0x13765a+'-'+_0x361516+'\x20'+_0x3984fa+':'+_0x5e6cf6+':'+_0x4661c1;}['buildTopicName'](_0x18e88e,_0x3b84dc,_0x1bf007,_0x308f76=null){const _0x4f8928=a0_0x7b1ac8,_0x1fa58f={'cHlOp':_0x4f8928(0xe0)};if(_0x308f76)return _0x308f76;const _0x545189=this[_0x4f8928(0x110)]()[_0x4f8928(0x117)];return _0x545189['replace'](_0x4f8928(0x114),_0x18e88e)[_0x4f8928(0x118)](_0x1fa58f[_0x4f8928(0xdf)],_0x3b84dc)[_0x4f8928(0x118)]('{action}',_0x1bf007);}[a0_0x7b1ac8(0xee)](_0x325dc8,_0x2afedc,_0x2826a7,_0x3cc709={}){const _0xce3026=a0_0x7b1ac8,_0x8eb5ac={'VQXEt':function(_0x992407){return _0x992407();},'LEnXs':function(_0x57a0a3){return _0x57a0a3();},'ICrzF':'1.0'},_0x543c46=new Date(),_0xf442c1=this[_0xce3026(0xc8)](_0x543c46),_0x5689e0=_0x3cc709[_0xce3026(0xcd)]||_0xce3026(0x116)+_0x8eb5ac['VQXEt'](uuidv7);return{'eventId':_0xce3026(0x122)+_0x8eb5ac[_0xce3026(0xd7)](uuidv7),'eventType':_0x325dc8,'eventTime':_0xf442c1,'eventVersion':_0x8eb5ac[_0xce3026(0x121)],'source':_0xce3026(0xcc)+(_0x3cc709['module']||'unknown'),'correlationId':_0x5689e0,'newData':_0x2826a7,'oldData':_0x2afedc,'metadata':{'createdBy':_0x3cc709['createdBy']||_0xce3026(0xe5),'createdAt':_0xf442c1,'systemId':'RESTFORGE-'+(_0x3cc709['module']||'unknown')[_0xce3026(0xf2)](),'tenantId':this[_0xce3026(0x110)]()['tenantId'],'endpoint':_0x3cc709['endpoint']||null,'tableName':_0x3cc709['tableName']||null}};}async[a0_0x7b1ac8(0x11f)](_0xd702ae,_0x1f0d84,_0x286048,_0x3f7076,_0x493fb9={}){const _0x2fedce=a0_0x7b1ac8,_0x5a8d8c={'hTnAw':_0x2fedce(0xc6),'HsHJL':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','hYepc':function(_0x33fda3){return _0x33fda3();},'dvnlk':function(_0x82c860,_0x2d1449){return _0x82c860(_0x2d1449);}},_0x42a195=this['getConfig']();if(!_0x42a195['enabled'])return{'success':![],'reason':_0x5a8d8c['hTnAw'],'published':![]};if(!this[_0x2fedce(0xd6)]){const _0x1c7b38=await this[_0x2fedce(0xd4)]();if(!_0x1c7b38)return{'success':![],'reason':_0x5a8d8c['HsHJL'],'published':![]};}try{const _0x13e7a5=this['buildEventMessage'](_0x1f0d84,_0x286048,_0x3f7076,_0x493fb9),_0x2ee70f=_0x493fb9['keyField']||'id',_0x15813e=_0x3f7076?.[_0x2ee70f]||_0x286048?.[_0x2ee70f]||_0x5a8d8c['hYepc'](uuidv7),_0x19b586=await this['producer']['send']({'topic':_0xd702ae,'messages':[{'key':_0x5a8d8c[_0x2fedce(0x109)](String,_0x15813e),'value':JSON[_0x2fedce(0xe8)](_0x13e7a5),'headers':{'event-type':_0x1f0d84,'correlation-id':_0x13e7a5[_0x2fedce(0xcd)],'source':_0x13e7a5[_0x2fedce(0x10e)]}}]});return console['log']('[Kafka]\x20Event\x20published\x20to\x20'+_0xd702ae+':\x20'+_0x1f0d84+_0x2fedce(0xf7)+_0x15813e+')'),{'success':!![],'correlationId':_0x13e7a5[_0x2fedce(0xcd)],'topic':_0xd702ae,'partition':_0x19b586[0x0]?.[_0x2fedce(0xfd)],'offset':_0x19b586[0x0]?.[_0x2fedce(0x105)],'published':!![]};}catch(_0x5e38d4){return console['error'](_0x2fedce(0xfc)+_0xd702ae+':\x20'+_0x5e38d4['message']),{'success':![],'error':_0x5e38d4[_0x2fedce(0xe9)],'published':![]};}}async[a0_0x7b1ac8(0x120)](_0x17e4a4,_0x23ad33,_0xf3a92,_0x265c86={}){const _0x3d2ed0=a0_0x7b1ac8,_0x3a79fa=this[_0x3d2ed0(0x10b)](_0x17e4a4,_0x23ad33,_0x3d2ed0(0xd1),_0x265c86['topic']);return this['publishEvent'](_0x3a79fa,'ENTITY_CREATED',null,_0xf3a92,{'module':_0x17e4a4,'endpoint':_0x23ad33,'keyField':_0x265c86[_0x3d2ed0(0xc9)],'tableName':_0x265c86['tableName'],'correlationId':_0x265c86['correlationId']});}async[a0_0x7b1ac8(0xdc)](_0xdeed5,_0x3ddf1a,_0x56ac76,_0x166bdf,_0x3a8261={}){const _0x1808f5=a0_0x7b1ac8,_0x48f894={'PeSxY':_0x1808f5(0xd2)},_0x57fb38=this['buildTopicName'](_0xdeed5,_0x3ddf1a,'updated',_0x3a8261['topic']);return this['publishEvent'](_0x57fb38,_0x48f894['PeSxY'],_0x56ac76,_0x166bdf,{'module':_0xdeed5,'endpoint':_0x3ddf1a,'keyField':_0x3a8261[_0x1808f5(0xc9)],'tableName':_0x3a8261['tableName'],'correlationId':_0x3a8261['correlationId']});}async['publishDelete'](_0x3ad34f,_0xcef7e1,_0xefc5de,_0x539631={}){const _0x3325b7=a0_0x7b1ac8,_0x14910=this[_0x3325b7(0x10b)](_0x3ad34f,_0xcef7e1,_0x3325b7(0x100),_0x539631[_0x3325b7(0xdd)]);return this[_0x3325b7(0x11f)](_0x14910,_0x3325b7(0xe2),_0xefc5de,null,{'module':_0x3ad34f,'endpoint':_0xcef7e1,'keyField':_0x539631[_0x3325b7(0xc9)],'tableName':_0x539631['tableName'],'correlationId':_0x539631[_0x3325b7(0xcd)]});}['getStatus'](){const _0x45a41b=a0_0x7b1ac8,_0x3871fa=this['getConfig']();return{'enabled':_0x3871fa['enabled'],'connected':this['isConnected'],'brokers':_0x3871fa['brokers'],'clientId':_0x3871fa[_0x45a41b(0x124)],'topicPattern':_0x3871fa['topicPattern']};}async[a0_0x7b1ac8(0xe6)](){const _0x19a5df=a0_0x7b1ac8,_0x3c8871={'UsNHL':_0x19a5df(0xe4)};if(this[_0x19a5df(0xf9)]&&this['isConnected'])try{await this[_0x19a5df(0xf9)][_0x19a5df(0x10d)](),this[_0x19a5df(0xd6)]=![],console['log'](_0x3c8871[_0x19a5df(0x104)]);}catch(_0x45000c){console['error'](_0x19a5df(0x112)+_0x45000c['message']);}}}function a0_0x34ca(){const _0x4a5e08=['C3bSAxq','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','AM9PBG','zM9YBwf0rgf0zvrPBwu','A2v5rMLLBgq','s0fgs0fFq0Xjru5ux0Le','s0fgs0fFq09otKvdveLptL9usu1ft1vu','CMvZDgzVCMDLlq','y29YCMvSyxrPB25jza','mJG0ody1nu5XwgfTAa','y29UBMvJDgLVBLbYB21PC2u','s0fgs0fFru5bqKXfra','y3jLyxrLza','ru5usvrzx1vqrefuruq','s0fgs0fFuKvrvuvtvf9usu1ft1vu','Aw5PDgLHBgL6zq','w0THzMTHxsbdB25Uzwn0Aw9UigzHAwXLzdOG','AxndB25Uzwn0zwq','tevUwhm','tK9useLorW','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','uKvAsvm','ndm4nJe1ze9NDMnm','ChvIBgLZAfvWzgf0zq','Dg9WAwm','s0fgs0fFuKvuuLLFrevmqvK','y0HSt3a','E2vUzhbVAw50Fq','z2v0sg91CNm','ru5usvrzx0rftevuruq','mJuWmda','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','u1Ltvevn','y2XVC2u','zxHWB3j0CW','C3rYAw5NAwz5','BwvZC2fNzq','AxnjBML0AwfSAxPPBMC','s0fgs0fFu0fttf9qqvntv09sra','C29uswe','z2v0rgf0zq','yNvPBgrfDMvUDe1LC3nHz2u','mJG5nZe4nhvQzgnkyq','Bg9N','mtmZotm2meXlExD3rG','Dg9vChbLCKnHC2u','s0fgs0fFu0fttf9nruniqu5ju00','CxPLzxi','z2v0tw9UDgG','v0fstG','icHRzxK6ia','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','ChjVzhvJzxi','mtjhtevhu0e','A2fMA2e','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','CgfYDgL0Aw9U','nJeZnZK0tLrUwKXJ','s0fgs0fFuKvuuLLFqvruru1qvfm','zgvSzxrLza','mtrOre5SywG','mtq4mJuXnw5jyvzpDW','s0fgs0fFte9hx0XfvKvm','vxnoseW','yMfZzu9MzNnLDa','D2fYBG','zgvMyxvSDa','ugXwyMW','zhzUBgS','vhLuvK4','yNvPBgruB3bPy05HBwu','y29UBMvJDa','zgLZy29UBMvJDa','C291CMnL','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','z2v0q29UzMLN','s0fgs0fFqLjps0vsuW','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','z2v0tg9Ntgv2zwW','E21VzhvSzx0','CMvXDwvZDfrPBwvVDxq','y29YCI0','Dg9WAwnqyxr0zxjU','CMvWBgfJzq','zw5HyMXLza','DxvPza','CgfKu3rHCNq','zw52','otm2ote1nM1lAwPZDq','ChjVzhvJzxiUzgLZy29UBMvJDa','ChvIBgLZAev2zw50','ChvIBgLZAeLUC2vYDa','sunYEKy','zxz0lq','v25qAeK','y2XPzw50swq','zxjYB3i'];a0_0x34ca=function(){return _0x4a5e08;};return a0_0x34ca();}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}module[a0_0x7b1ac8(0xe7)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
@@ -1 +1 @@
1
- const a0_0x3e97b9=a0_0x4186;(function(_0x1faa38,_0xcc590d){const _0x19f2eb=a0_0x4186,_0x34cff9=_0x1faa38();while(!![]){try{const _0x519e65=parseInt(_0x19f2eb(0x9d))/0x1*(parseInt(_0x19f2eb(0xa4))/0x2)+-parseInt(_0x19f2eb(0xec))/0x3*(parseInt(_0x19f2eb(0xe5))/0x4)+parseInt(_0x19f2eb(0xe7))/0x5+parseInt(_0x19f2eb(0xd2))/0x6*(-parseInt(_0x19f2eb(0xc9))/0x7)+-parseInt(_0x19f2eb(0xa1))/0x8+-parseInt(_0x19f2eb(0xe9))/0x9+parseInt(_0x19f2eb(0xdc))/0xa;if(_0x519e65===_0xcc590d)break;else _0x34cff9['push'](_0x34cff9['shift']());}catch(_0x1073b4){_0x34cff9['push'](_0x34cff9['shift']());}}}(a0_0x21f9,0xc8964));const dotenv=require('dotenv'),path=require(a0_0x3e97b9(0xed)),fs=require('fs'),{v7:uuidv7}=require(a0_0x3e97b9(0xb5));dotenv[a0_0x3e97b9(0xbe)]();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,a0_0x3e97b9(0xcf));if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x3e97b9(0xa0)](a0_0x3e97b9(0xa8)+messagehubPath);else throw new Error(a0_0x3e97b9(0xe0)+messagehubPath);}catch(a0_0x59f9af){console[a0_0x3e97b9(0xbc)](a0_0x3e97b9(0xe1)+a0_0x59f9af[a0_0x3e97b9(0xe2)]);throw a0_0x59f9af;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x4c08a4){const _0x37240e=a0_0x3e97b9,_0x466ff6=new Date()['toISOString']();console[_0x37240e(0xa0)]('['+_0x466ff6+']\x20'+_0x4c08a4);}async function initMessageHub(){const _0x43f1da=a0_0x3e97b9,_0x37aa88={'MUZVR':function(_0x414848,_0x53790a){return _0x414848&&_0x53790a;},'kEjpX':function(_0x3cb147,_0x35eac4){return _0x3cb147(_0x35eac4);},'cNhgC':_0x43f1da(0xc4),'ZNont':_0x43f1da(0xa9),'HeIVo':function(_0xa1102e,_0x1583d9){return _0xa1102e===_0x1583d9;},'eVefF':_0x43f1da(0x99),'KXgFC':'error','tUkDj':function(_0x2fc6f0,_0x366e27){return _0x2fc6f0(_0x366e27);},'GBQxJ':_0x43f1da(0xac),'YExqe':'Mode:\x20Koneksi\x20Nyata','hpelE':_0x43f1da(0xbb),'BqmDn':'true','kMEpD':function(_0x1cc4a0,_0x2413d6){return _0x1cc4a0(_0x2413d6);},'RglhN':function(_0x80bedf,_0x41bc28){return _0x80bedf(_0x41bc28);},'hGCuD':function(_0x583723,_0x33b822){return _0x583723(_0x33b822);},'xsjIb':_0x43f1da(0x9f),'HtSov':'Error\x20inisialisasi\x20MessageHub:','DHYix':'Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'};if(messagehub&&isConnected)return log(_0x43f1da(0xef)),!![];if(connectionPromise)return log(_0x37aa88[_0x43f1da(0xae)]),connectionPromise;return connectionPromise=new Promise(async(_0x207fae,_0x34e684)=>{const _0x2a1747=_0x43f1da,_0x5593b4={'fkiQO':_0x37aa88[_0x2a1747(0x9e)],'ZsKWc':function(_0x3abfc2,_0x12d80c){return _0x3abfc2(_0x12d80c);},'SyaYz':function(_0x5e410d,_0xd59458){const _0x1cbab6=_0x2a1747;return _0x37aa88[_0x1cbab6(0x98)](_0x5e410d,_0xd59458);},'EpDZa':_0x37aa88['eVefF'],'HPoEL':function(_0x28db58,_0x10afd2){return _0x28db58(_0x10afd2);},'gxBGJ':_0x2a1747(0x9a),'VrRyC':function(_0x1f83a4,_0xc2cfc4){return _0x1f83a4===_0xc2cfc4;},'mPuMI':_0x37aa88['KXgFC'],'jdTUS':_0x2a1747(0x96),'yIIjf':function(_0x4bf4c7,_0x39cfab){const _0x14a655=_0x2a1747;return _0x37aa88[_0x14a655(0xbf)](_0x4bf4c7,_0x39cfab);}};try{log(_0x37aa88['GBQxJ']),log('Waktu\x20Inisialisasi:\x20'+new Date()[_0x2a1747(0xb3)]()),_0x37aa88['kEjpX'](log,_0x37aa88['YExqe']);const _0x1f58e9={'publishKey':process['env'][_0x2a1747(0xce)],'subscribeKey':process[_0x2a1747(0xb8)][_0x2a1747(0xb4)],'userId':process[_0x2a1747(0xb8)][_0x2a1747(0xd4)]||_0x2a1747(0x9b)+(process[_0x2a1747(0xb8)][_0x2a1747(0xd3)]||_0x37aa88[_0x2a1747(0xa7)])+'-'+process['pid'],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x2a1747(0xcc),'autoAcknowledge':_0x37aa88['HeIVo'](process['env']['MSHUB_AUTO_ACKNOWLEDGE'],_0x37aa88['BqmDn']),'acknowledgeMessages':_0x37aa88[_0x2a1747(0x98)](process['env'][_0x2a1747(0xe4)],_0x2a1747(0xd0)),'platform':{'type':process[_0x2a1747(0xb8)][_0x2a1747(0xe3)]||'websocket','host':process['env'][_0x2a1747(0xaa)]||'localhost','api_port':_0x37aa88['kMEpD'](parseInt,process['env']['MSHUB_API_PORT']||0xdf8),'service_port':_0x37aa88[_0x2a1747(0x97)](parseInt,process['env'][_0x2a1747(0xb6)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x1f58e9),_0x37aa88['hGCuD'](log,_0x37aa88[_0x2a1747(0xf1)]),log(_0x2a1747(0xdf)+messagehub['userId']),log(_0x2a1747(0xab)+messagehub[_0x2a1747(0xa6)]),_0x37aa88['kEjpX'](log,'Subscribe\x20Key:\x20'+messagehub['subscribeKey']),log('Tipe\x20Komunikasi:\x20'+messagehub['communicationType']),log(_0x2a1747(0xd7)+JSON[_0x2a1747(0xd8)](messagehub['platformConfig'])),_0x37aa88['tUkDj'](log,_0x2a1747(0xa2)),messagehub[_0x2a1747(0xa5)]({'status':function(_0x1a907a){const _0x2234ab=_0x2a1747;log(_0x2234ab(0xc5)+_0x1a907a['category']);if(_0x1a907a['category']===_0x5593b4['fkiQO'])log('Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0x5593b4[_0x2234ab(0xd9)](_0x207fae,!![]);else{if(_0x5593b4[_0x2234ab(0xee)](_0x1a907a[_0x2234ab(0xc2)],_0x5593b4[_0x2234ab(0xc3)])){const _0x3bd94a=_0x1a907a[_0x2234ab(0xc8)]===!![];!_0x3bd94a&&(_0x5593b4['HPoEL'](log,_0x2234ab(0x94)+(_0x1a907a['reason']||_0x5593b4['gxBGJ'])),isConnected=![],connectionPromise&&(_0x5593b4[_0x2234ab(0xd9)](_0x34e684,new Error(_0x2234ab(0xdd)+(_0x1a907a['reason']||_0x2234ab(0x9a)))),connectionPromise=null));}else{if(_0x5593b4['VrRyC'](_0x1a907a['category'],_0x5593b4['mPuMI'])){let _0x55c1ae=_0x1a907a['errorDetail']||_0x1a907a[_0x2234ab(0xbc)]||'Unknown\x20error';log(_0x2234ab(0xe8)+_0x55c1ae),isConnected=![],connectionPromise&&(_0x5593b4[_0x2234ab(0xd9)](_0x34e684,new Error(_0x55c1ae)),connectionPromise=null);}else{if(_0x1a907a[_0x2234ab(0xc2)]===_0x5593b4[_0x2234ab(0x9c)])_0x5593b4['yIIjf'](log,'📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0x1a907a[_0x2234ab(0xbd)]);else{if(_0x1a907a['category']===_0x2234ab(0xea)){const _0x35ae2e=_0x1a907a['receiverInfo']?.[_0x2234ab(0xf2)]||'Unknown',_0x100fd9=_0x1a907a['receiverInfo']?.['id']||_0x1a907a['receiverId'],_0x31f270=new Date(_0x1a907a['receiverInfo']?.['receivedAt']||_0x1a907a['receivedAt']||new Date())['toLocaleTimeString']();log(_0x2234ab(0xf0)+_0x1a907a['requestId']+_0x2234ab(0xdb)+_0x35ae2e+'\x20('+_0x100fd9+_0x2234ab(0xb2)+_0x31f270+'.\x20Total\x20konfirmasi:\x20'+(_0x1a907a[_0x2234ab(0xb0)]||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x5474e0=_0x2a1747;_0x37aa88['MUZVR'](!isConnected,connectionPromise)&&(_0x37aa88[_0x5474e0(0xcd)](log,_0x37aa88[_0x5474e0(0xa3)]),_0x37aa88['kEjpX'](_0x34e684,new Error('Connection\x20timeout')),connectionPromise=null);},0x2710);}catch(_0x1e6f94){log(_0x2a1747(0xf3)+_0x1e6f94['message']),console['error'](_0x37aa88['HtSov'],_0x1e6f94),connectionPromise=null,_0x34e684(_0x1e6f94);}}),connectionPromise;}async function publishMessage(_0x4f8083,_0x361d66,_0x516764,_0x29b27a={}){const _0x2c2a29=a0_0x3e97b9,_0x297d17={'xxVlz':function(_0x33b569){return _0x33b569();},'RIEKx':function(_0x5c6776,_0xac8f86){return _0x5c6776(_0xac8f86);},'MeKTA':function(_0xbe153a,_0x3c2db4){return _0xbe153a!==_0x3c2db4;},'XyIHo':'Mengirim\x20pesan\x20ke\x20server...','MVZYP':_0x2c2a29(0xde),'MZjvE':_0x2c2a29(0xb1)};try{!isConnected&&await _0x297d17[_0x2c2a29(0xb9)](initMessageHub);const _0x133783=messagehub[_0x2c2a29(0xda)](_0x4f8083);_0x297d17[_0x2c2a29(0xc6)](log,_0x2c2a29(0xb7)),_0x297d17['RIEKx'](log,'Channel\x20Target:\x20'+_0x133783['topic']),log(_0x2c2a29(0x95)+_0x361d66),log(_0x2c2a29(0xc7));const _0x3b44f9={'requireAck':_0x297d17['MeKTA'](_0x29b27a[_0x2c2a29(0xeb)],undefined)?_0x29b27a['requireAck']:![],'clearCache':_0x29b27a[_0x2c2a29(0xd1)]!==undefined?_0x29b27a['clearCache']:!![],'senderId':messagehub[_0x2c2a29(0xe6)]?messagehub[_0x2c2a29(0xe6)]['id']:_0x2c2a29(0xad)};log(_0x297d17['XyIHo']);const _0x2f227e={'type':_0x361d66,'content':_0x516764},_0x366767=await _0x133783[_0x2c2a29(0xd6)](_0x2f227e,_0x3b44f9);return log('Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x4f8083),{'success':!![],'requestId':_0x366767[_0x2c2a29(0xbd)],'topic':_0x4f8083,'message':_0x297d17[_0x2c2a29(0xcb)]};}catch(_0x2f09ce){return log('⚠️\x20Error\x20publishing\x20message:\x20'+_0x2f09ce['message']),{'success':![],'error':_0x2f09ce['message'],'topic':_0x4f8083,'message':_0x297d17[_0x2c2a29(0xf4)]};}}async function closeConnection(){const _0x35f4b2=a0_0x3e97b9,_0x4c0ef3={'xzlAK':function(_0x574200,_0x58bdac){return _0x574200(_0x58bdac);},'Xuhpx':'function','LMWal':function(_0x5dd370,_0x18893a){return _0x5dd370===_0x18893a;},'UmILL':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()','fANta':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub'};timeoutHandler&&(_0x4c0ef3[_0x35f4b2(0xc1)](clearTimeout,timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(typeof messagehub['disconnect']===_0x4c0ef3['Xuhpx'])await messagehub[_0x35f4b2(0xca)](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()');else{if(typeof messagehub['close']===_0x35f4b2(0xc0))await messagehub[_0x35f4b2(0xd5)](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()');else messagehub['socket']&&_0x4c0ef3[_0x35f4b2(0xaf)](typeof messagehub['socket']['disconnect'],_0x35f4b2(0xc0))?(messagehub['socket'][_0x35f4b2(0xca)](),log(_0x4c0ef3[_0x35f4b2(0xba)])):log(_0x4c0ef3['fANta']);}isConnected=![],connectionPromise=null;}catch(_0x3c78c7){_0x4c0ef3[_0x35f4b2(0xc1)](log,'Error\x20saat\x20menutup\x20koneksi:\x20'+_0x3c78c7['message']);}}function a0_0x4186(_0x244669,_0x35c941){_0x244669=_0x244669-0x94;const _0x21f942=a0_0x21f9();let _0x418616=_0x21f942[_0x244669];if(a0_0x4186['YVHWKC']===undefined){var _0x8fad02=function(_0x4969ae){const _0x484df9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3423d6='',_0x152bba='';for(let _0x2c441f=0x0,_0xee45b3,_0x5a2c74,_0xc06a64=0x0;_0x5a2c74=_0x4969ae['charAt'](_0xc06a64++);~_0x5a2c74&&(_0xee45b3=_0x2c441f%0x4?_0xee45b3*0x40+_0x5a2c74:_0x5a2c74,_0x2c441f++%0x4)?_0x3423d6+=String['fromCharCode'](0xff&_0xee45b3>>(-0x2*_0x2c441f&0x6)):0x0){_0x5a2c74=_0x484df9['indexOf'](_0x5a2c74);}for(let _0x538d12=0x0,_0x54cb48=_0x3423d6['length'];_0x538d12<_0x54cb48;_0x538d12++){_0x152bba+='%'+('00'+_0x3423d6['charCodeAt'](_0x538d12)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x152bba);};a0_0x4186['EZEZdi']=_0x8fad02,a0_0x4186['EkjxXf']={},a0_0x4186['YVHWKC']=!![];}const _0x1ca0b3=_0x21f942[0x0],_0x26ce07=_0x244669+_0x1ca0b3,_0x3eb848=a0_0x4186['EkjxXf'][_0x26ce07];return!_0x3eb848?(_0x418616=a0_0x4186['EZEZdi'](_0x418616),a0_0x4186['EkjxXf'][_0x26ce07]=_0x418616):_0x418616=_0x3eb848,_0x418616;}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};function a0_0x21f9(){const _0x3038aa=['tvnivujFse9tva','uhvIBgLZAcblzxK6ia','pt09pt09ie1vtefjieLosvnjquXju0ftssbnrvntquDfsfvcid09pt09pq','CMvZDgzVCMDL','reHzAxG','te1xywW','y29UzMLYBwf0Aw9Uq291BNq','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','ksbWywrHia','Dg9mB2nHBgvtDhjPBMC','tvnivujFu1vcu0nssujfx0Tfwq','DxvPza','tvnivujFu0vsvKLdrv9qt1ju','pt09pt09ierbveeGufvcteLtscbnrvntquDfid09pt09pq','zw52','EhHwBhO','vw1jteW','zgvMyxvSDa','zxjYB3i','CMvXDwvZDeLK','y29UzMLN','DfvRrgO','zNvUy3rPB24','EhPSquS','y2f0zwDVCNK','rxbewMe','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','u3rHDhvZieXPC3rLBMvYoIa','uKLfs3G','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','AxnfCNjVCLjLBgf0zwq','odG4nJq3owXts254uq','zgLZy29UBMvJDa','tvzAwva','yNjVywrJyxn0','A0vQCfG','tvnivujFufvcteLtsf9lrvK','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','Dhj1zq','y2XLyxjdywnOzq','nLzlugfVAq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','tvnivujFvvnfuL9jra','y2XVC2u','ChvIBgLZAa','s29UzMLNDxjHC2KGugXHDgzVCM06ia','C3rYAw5NAwz5','wNnlv2m','y2HHBM5LBa','igrPDgvYAw1Hig9SzwGG','mZe4mJy3nZbVue5wAfq','s29UzwTZAsb0zxjWDxr1CZOG','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','q2XPzw50ieLel1vZzxjjrdOG','twvZC2fNzuH1yIbtreSGBM90igzVDw5Kigf0ia','rxjYB3iGBg9HzgLUzYbnzxnZywDLshvIifnesZOG','BwvZC2fNzq','tvnivujFq09ntvvosunbveLptL9uwvbf','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','mti3mJC2Burcuwn0','C29JA2v0','mJiZoteZmgHfsLLgqG','4PQG77IpievYCM9YoIa','mteXmZCZmJbsrwj2B1e','BwvZC2fNzs1YzwnLAxzLza','CMvXDwLYzufJAW','odfoy1zRtu8','Cgf0Aa','u3LHwxO','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','EhnQswi','BMfTzq','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','tvPQDKu','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','twvZC2fNzsbuExbLoIa','BwvZC2fNzs1Zzw50','uMDSAe4','sgvjvM8','zgLZy29UBMvJDgvK','vgLKywSGzgLRzxrHAhvP','CMvZDgzVCMDLlq','AMruvvm','nde5y0nirwvQ','wK5VBNq','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','Bg9N','nJe0odiWmhzPsLDYDW','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','y05Oz0m','nJmYoe9rre5ozW','ywrKtgLZDgvUzxi','ChvIBgLZAeTLEq','AhbLBeu','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','y29UBMvJDgvK'];a0_0x21f9=function(){return _0x3038aa;};return a0_0x21f9();}
1
+ const a0_0x3cbb99=a0_0x4644;(function(_0x3eedf8,_0x612728){const _0x24dcef=a0_0x4644,_0x502d4d=_0x3eedf8();while(!![]){try{const _0x56fb46=parseInt(_0x24dcef(0xa0))/0x1+-parseInt(_0x24dcef(0xad))/0x2+parseInt(_0x24dcef(0xe7))/0x3+-parseInt(_0x24dcef(0xd0))/0x4*(-parseInt(_0x24dcef(0xb8))/0x5)+parseInt(_0x24dcef(0xb3))/0x6*(-parseInt(_0x24dcef(0xea))/0x7)+-parseInt(_0x24dcef(0xc3))/0x8+parseInt(_0x24dcef(0xc7))/0x9;if(_0x56fb46===_0x612728)break;else _0x502d4d['push'](_0x502d4d['shift']());}catch(_0x208088){_0x502d4d['push'](_0x502d4d['shift']());}}}(a0_0x1057,0xc774d));const dotenv=require('dotenv'),path=require(a0_0x3cbb99(0xc9)),fs=require('fs'),{v7:uuidv7}=require(a0_0x3cbb99(0xe5));dotenv[a0_0x3cbb99(0xcf)]();let MessageHub;try{const messagehubPath=path[a0_0x3cbb99(0xd2)](__dirname,a0_0x3cbb99(0xe8));if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x3cbb99(0xc5)]('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x2c91fb){console['error'](a0_0x3cbb99(0xcd)+a0_0x2c91fb[a0_0x3cbb99(0xc0)]);throw a0_0x2c91fb;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function a0_0x4644(_0x33b441,_0x416814){_0x33b441=_0x33b441-0x9f;const _0x105721=a0_0x1057();let _0x4644db=_0x105721[_0x33b441];if(a0_0x4644['cjCzdH']===undefined){var _0xf9d2c3=function(_0xf1e358){const _0x206106='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3bc9b4='',_0x15ed50='';for(let _0x191691=0x0,_0xd56ddd,_0x41672c,_0xb46946=0x0;_0x41672c=_0xf1e358['charAt'](_0xb46946++);~_0x41672c&&(_0xd56ddd=_0x191691%0x4?_0xd56ddd*0x40+_0x41672c:_0x41672c,_0x191691++%0x4)?_0x3bc9b4+=String['fromCharCode'](0xff&_0xd56ddd>>(-0x2*_0x191691&0x6)):0x0){_0x41672c=_0x206106['indexOf'](_0x41672c);}for(let _0x5d0b42=0x0,_0x1a26fe=_0x3bc9b4['length'];_0x5d0b42<_0x1a26fe;_0x5d0b42++){_0x15ed50+='%'+('00'+_0x3bc9b4['charCodeAt'](_0x5d0b42)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x15ed50);};a0_0x4644['OWhFhf']=_0xf9d2c3,a0_0x4644['Izumkp']={},a0_0x4644['cjCzdH']=!![];}const _0x4d646a=_0x105721[0x0],_0x1879dd=_0x33b441+_0x4d646a,_0x2365db=a0_0x4644['Izumkp'][_0x1879dd];return!_0x2365db?(_0x4644db=a0_0x4644['OWhFhf'](_0x4644db),a0_0x4644['Izumkp'][_0x1879dd]=_0x4644db):_0x4644db=_0x2365db,_0x4644db;}function log(_0x2b3c6e){const _0x5e0923=a0_0x3cbb99,_0x2eedb0=new Date()[_0x5e0923(0xab)]();console['log']('['+_0x2eedb0+']\x20'+_0x2b3c6e);}async function initMessageHub(){const _0x579588=a0_0x3cbb99,_0x47532e={'FnDWz':function(_0x20c5ae,_0x57bdf1){return _0x20c5ae&&_0x57bdf1;},'OpwZQ':function(_0x6d83b2,_0x2844c7){return _0x6d83b2(_0x2844c7);},'ApqDq':_0x579588(0xbb),'foFXW':function(_0x3538d8,_0x16f9c0){return _0x3538d8(_0x16f9c0);},'XVTGQ':_0x579588(0xde),'WOsim':_0x579588(0xf3),'Vzhyt':function(_0x12039d,_0x4c529b){return _0x12039d(_0x4c529b);},'MXYwH':'disconnected','OoApL':function(_0x3d1b7f,_0x3133d5){return _0x3d1b7f(_0x3133d5);},'jVAKs':function(_0x13055c,_0x127c96){return _0x13055c===_0x127c96;},'wwpoA':function(_0x6977c6,_0x3183ad){return _0x6977c6(_0x3183ad);},'YmlGk':function(_0x3f22f4,_0x58a449){return _0x3f22f4(_0x58a449);},'cymzv':function(_0x14004c,_0x2c6be1){return _0x14004c(_0x2c6be1);},'mqqYC':'default','rAJjb':'true','MfmFx':'localhost','KZQBj':function(_0x3d1795,_0x20e894){return _0x3d1795(_0x20e894);},'OvWBV':function(_0x2a0f20,_0x414aa4){return _0x2a0f20(_0x414aa4);},'xmdfi':_0x579588(0xa9),'prdoo':_0x579588(0xbd)};if(messagehub&&isConnected)return log(_0x47532e['xmdfi']),!![];if(connectionPromise)return log(_0x47532e['prdoo']),connectionPromise;return connectionPromise=new Promise(async(_0x294e97,_0x52c069)=>{const _0x3b7c39=_0x579588,_0x945558={'AFufL':_0x47532e[_0x3b7c39(0xaf)],'mCKex':function(_0x54bd23,_0x3eb8ea){return _0x47532e['Vzhyt'](_0x54bd23,_0x3eb8ea);},'UlOLo':_0x47532e['MXYwH'],'heTRg':function(_0x4adb07,_0x47aaaa){return _0x4adb07===_0x47aaaa;},'galNl':'Unknown\x20error','GNUNr':function(_0x311297,_0x2875de){const _0x14f407=_0x3b7c39;return _0x47532e[_0x14f407(0xb0)](_0x311297,_0x2875de);},'iEixI':_0x3b7c39(0xc2),'zQdQu':function(_0x3b1c11,_0x5e8628){const _0x229d09=_0x3b7c39;return _0x47532e[_0x229d09(0xd6)](_0x3b1c11,_0x5e8628);},'icHwE':function(_0x552bb6,_0x51e92c){return _0x47532e['jVAKs'](_0x552bb6,_0x51e92c);},'uzVYJ':function(_0x536c96,_0x878b0f){return _0x47532e['wwpoA'](_0x536c96,_0x878b0f);}};try{_0x47532e['YmlGk'](log,'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======'),_0x47532e['cymzv'](log,'Waktu\x20Inisialisasi:\x20'+new Date()['toLocaleString']()),log(_0x3b7c39(0xd9));const _0x51912={'publishKey':process[_0x3b7c39(0xa2)]['MSHUB_PUBLISH_KEY'],'subscribeKey':process['env']['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x3b7c39(0xa2)]['MSHUB_USER_ID']||'restforge-'+(process[_0x3b7c39(0xa2)]['RESTFORGE_PROJECT_NAME']||_0x47532e['mqqYC'])+'-'+process['pid'],'communicationType':process['env'][_0x3b7c39(0xe3)]||_0x3b7c39(0xbe),'autoAcknowledge':process[_0x3b7c39(0xa2)]['MSHUB_AUTO_ACKNOWLEDGE']===_0x47532e['rAJjb'],'acknowledgeMessages':process[_0x3b7c39(0xa2)]['MSHUB_ACKNOWLEDGE_MESSAGES']===_0x47532e[_0x3b7c39(0xe0)],'platform':{'type':process['env']['MSHUB_COMMUNICATION_TYPE']||'websocket','host':process[_0x3b7c39(0xa2)]['MSHUB_HOST']||_0x47532e[_0x3b7c39(0xc6)],'api_port':parseInt(process[_0x3b7c39(0xa2)][_0x3b7c39(0xe9)]||0xdf8),'service_port':parseInt(process['env'][_0x3b7c39(0xd4)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x51912),log(_0x3b7c39(0xcb)),log(_0x3b7c39(0xdb)+messagehub[_0x3b7c39(0xed)]),_0x47532e[_0x3b7c39(0xd6)](log,_0x3b7c39(0xf0)+messagehub['publishKey']),_0x47532e['OpwZQ'](log,'Subscribe\x20Key:\x20'+messagehub['subscribeKey']),_0x47532e['OoApL'](log,'Tipe\x20Komunikasi:\x20'+messagehub[_0x3b7c39(0xaa)]),log('Konfigurasi\x20Platform:\x20'+JSON[_0x3b7c39(0xc8)](messagehub['platformConfig'])),_0x47532e['KZQBj'](log,_0x3b7c39(0x9f)),messagehub['addListener']({'status':function(_0x30c1d7){const _0x43f916=_0x3b7c39;log(_0x43f916(0xec)+_0x30c1d7[_0x43f916(0xd7)]);if(_0x30c1d7[_0x43f916(0xd7)]===_0x945558['AFufL'])log(_0x43f916(0xd3)),isConnected=!![],timeoutHandler&&(_0x945558[_0x43f916(0xba)](clearTimeout,timeoutHandler),timeoutHandler=null),_0x294e97(!![]);else{if(_0x30c1d7[_0x43f916(0xd7)]===_0x945558['UlOLo']){const _0x1b9cb0=_0x945558['heTRg'](_0x30c1d7[_0x43f916(0xdf)],!![]);!_0x1b9cb0&&(log('Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0x30c1d7[_0x43f916(0xa4)]||'Tidak\x20diketahui')),isConnected=![],connectionPromise&&(_0x52c069(new Error('Koneksi\x20terputus:\x20'+(_0x30c1d7[_0x43f916(0xa4)]||_0x43f916(0xf1)))),connectionPromise=null));}else{if(_0x30c1d7[_0x43f916(0xd7)]==='error'){let _0x4b8255=_0x30c1d7['errorDetail']||_0x30c1d7['error']||_0x945558['galNl'];log('⚠️\x20Error:\x20'+_0x4b8255),isConnected=![],connectionPromise&&(_0x945558[_0x43f916(0xac)](_0x52c069,new Error(_0x4b8255)),connectionPromise=null);}else{if(_0x945558['heTRg'](_0x30c1d7['category'],_0x945558[_0x43f916(0xe4)]))_0x945558['zQdQu'](log,'📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0x30c1d7[_0x43f916(0xb2)]);else{if(_0x945558[_0x43f916(0xe6)](_0x30c1d7['category'],_0x43f916(0xa6))){const _0x804dbc=_0x30c1d7[_0x43f916(0xb7)]?.[_0x43f916(0xb9)]||_0x43f916(0xa8),_0xc29289=_0x30c1d7[_0x43f916(0xb7)]?.['id']||_0x30c1d7[_0x43f916(0xdc)],_0x2f047d=new Date(_0x30c1d7['receiverInfo']?.[_0x43f916(0xc4)]||_0x30c1d7[_0x43f916(0xc4)]||new Date())['toLocaleTimeString']();_0x945558['uzVYJ'](log,_0x43f916(0xda)+_0x30c1d7['requestId']+_0x43f916(0xd1)+_0x804dbc+'\x20('+_0xc29289+')\x20pada\x20'+_0x2f047d+'.\x20Total\x20konfirmasi:\x20'+(_0x30c1d7['confirmationCount']||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x1852e8=_0x3b7c39;_0x47532e['FnDWz'](!isConnected,connectionPromise)&&(_0x47532e[_0x1852e8(0xbc)](log,_0x47532e[_0x1852e8(0xeb)]),_0x47532e[_0x1852e8(0xb0)](_0x52c069,new Error(_0x47532e[_0x1852e8(0xbf)])),connectionPromise=null);},0x2710);}catch(_0x59377e){_0x47532e[_0x3b7c39(0xb5)](log,'⚠️\x20Error\x20inisialisasi\x20MessageHub:\x20'+_0x59377e['message']),console['error']('Error\x20inisialisasi\x20MessageHub:',_0x59377e),connectionPromise=null,_0x47532e['OvWBV'](_0x52c069,_0x59377e);}}),connectionPromise;}async function publishMessage(_0x4f7a12,_0x3d1bf7,_0x4d2fc8,_0x229b2d={}){const _0x3d59b1=a0_0x3cbb99,_0x50bc93={'DdbnS':function(_0x51d75d){return _0x51d75d();},'lUtef':'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======','SPtuN':function(_0x2d58b1,_0x59c559){return _0x2d58b1(_0x59c559);},'yrWkH':function(_0x128575,_0x2f939d){return _0x128575(_0x2f939d);},'mcelV':function(_0x57e50,_0x57b6aa){return _0x57e50!==_0x57b6aa;},'CsKdP':'restforge','zpkWW':'Mengirim\x20pesan\x20ke\x20server...'};try{!isConnected&&await _0x50bc93['DdbnS'](initMessageHub);const _0x4ca9b6=messagehub['channel'](_0x4f7a12);log(_0x50bc93['lUtef']),log('Channel\x20Target:\x20'+_0x4ca9b6[_0x3d59b1(0xa3)]),_0x50bc93[_0x3d59b1(0xe2)](log,'Message\x20Type:\x20'+_0x3d1bf7),_0x50bc93[_0x3d59b1(0xc1)](log,'================================');const _0x15e7c6={'requireAck':_0x50bc93[_0x3d59b1(0xef)](_0x229b2d[_0x3d59b1(0xce)],undefined)?_0x229b2d['requireAck']:![],'clearCache':_0x229b2d[_0x3d59b1(0xca)]!==undefined?_0x229b2d['clearCache']:!![],'senderId':messagehub['socket']?messagehub[_0x3d59b1(0xa7)]['id']:_0x50bc93['CsKdP']};_0x50bc93['yrWkH'](log,_0x50bc93[_0x3d59b1(0xb1)]);const _0x2ff06d={'type':_0x3d1bf7,'content':_0x4d2fc8},_0x20860d=await _0x4ca9b6[_0x3d59b1(0xee)](_0x2ff06d,_0x15e7c6);return _0x50bc93['SPtuN'](log,_0x3d59b1(0xcc)+_0x4f7a12),{'success':!![],'requestId':_0x20860d[_0x3d59b1(0xb2)],'topic':_0x4f7a12,'message':'Message\x20sent\x20successfully'};}catch(_0x26b6b3){return log('⚠️\x20Error\x20publishing\x20message:\x20'+_0x26b6b3[_0x3d59b1(0xc0)]),{'success':![],'error':_0x26b6b3['message'],'topic':_0x4f7a12,'message':_0x3d59b1(0xa5)};}}function a0_0x1057(){const _0x28fd31=['CMvJzwL2zxjjBMzV','mtq4nZu1rKLvueXv','BMfTzq','BunlzxG','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','t3b3wLe','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','yNjVywrJyxn0','wfzur1e','BwvZC2fNzq','ExjxA0G','BwvZC2fNzs1Zzw50','oduYmZKXmKH2tgzqrG','CMvJzwL2zwrbDa','Bg9N','twzTrNG','mZqWmtqYngHYsvjfDq','C3rYAw5NAwz5','Cgf0Aa','y2XLyxjdywnOzq','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','rxjYB3iGBg9HzgLUzYbnzxnZywDLshvIifnesZOG','CMvXDwLYzufJAW','y29UzMLN','nJHgBxPQz3O','igrPDgvYAw1Hig9SzwGG','CMvZB2X2zq','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','tvnivujFu0vsvKLdrv9qt1ju','zNvUy3rPB24','t29bCeW','y2f0zwDVCNK','wezRvhm','tw9KztOGs29UzwTZAsboEwf0yq','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','q2XPzw50ieLel1vZzxjjrdOG','CMvJzwL2zxjjza','tu15Ewu','q29UBMvJDgLVBIb0Aw1LB3v0','AxnfCNjVCLjLBgf0zwq','CKfkAMi','zgLZy29UBMvJDa','u1b0Du4','tvnivujFq09ntvvosunbveLptL9uwvbf','AuvPEeK','DxvPza','AwniD0u','mZa5mJG5mLPuz3zqsG','lI4VlI4VANmVBwvZC2fNzwH1yI5QCW','tvnivujFqvbjx1bpuLq','mtq2mZa3v2DgyxbL','qxbXrhe','u3rHDhvZieXPC3rLBMvYoIa','DxnLCKLK','ChvIBgLZAa','BwnLBfy','uhvIBgLZAcblzxK6ia','vgLKywSGzgLRzxrHAhvP','tfLRtuy','y29UBMvJDgvK','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','nZK2mdq4qLf1Dvz5','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','zw52','Dg9WAwm','CMvHC29U','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','BwvZC2fNzs1YzwnLAxzLza','C29JA2v0','vw5RBM93BG','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','y29TBxvUAwnHDgLVBLr5Cgu','Dg9ju09tDhjPBMC','r05vtNi','mtyXndCWngjoDunhta','rxjYB3iGC2fHDcbTzw51DhvWigTVBMvRC2K6ia','v09ZAw0','zM9gwfC','ENbRv1C','CMvXDwvZDeLK','nNzREhbpsa','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUigrPC2nVBM5Ly3qOkq','t3zxqLy','t2zkrMW'];a0_0x1057=function(){return _0x28fd31;};return a0_0x1057();}async function closeConnection(){const _0x35bf19=a0_0x3cbb99,_0x21e91d={'MMyye':function(_0x221915,_0x2730b9){return _0x221915(_0x2730b9);},'OfJFl':function(_0x3a6e35,_0x45dabc){return _0x3a6e35===_0x45dabc;},'LKWBG':_0x35bf19(0xb4),'CqbGs':'function','LYkMF':function(_0x2777e8,_0x5a3472){return _0x2777e8(_0x5a3472);},'xkNme':function(_0x570778,_0x5d1503){return _0x570778===_0x5d1503;},'kYwFA':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()','XFkTs':function(_0x26ac92,_0x382eb9){return _0x26ac92(_0x382eb9);}};timeoutHandler&&(_0x21e91d[_0x35bf19(0xdd)](clearTimeout,timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(_0x21e91d[_0x35bf19(0xb6)](typeof messagehub[_0x35bf19(0xe1)],_0x35bf19(0xd5)))await messagehub['disconnect'](),log(_0x21e91d['LKWBG']);else{if(typeof messagehub['close']===_0x21e91d['CqbGs'])await messagehub['close'](),_0x21e91d[_0x35bf19(0xf2)](log,_0x35bf19(0xa1));else messagehub['socket']&&_0x21e91d['xkNme'](typeof messagehub[_0x35bf19(0xa7)][_0x35bf19(0xe1)],_0x35bf19(0xd5))?(messagehub[_0x35bf19(0xa7)][_0x35bf19(0xe1)](),log(_0x21e91d['kYwFA'])):log('Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub');}isConnected=![],connectionPromise=null;}catch(_0x266abc){_0x21e91d[_0x35bf19(0xd8)](log,_0x35bf19(0xae)+_0x266abc['message']);}}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};