@restforgejs/platform 5.1.21 → 5.2.4

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 (214) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +2 -2
  3. package/cli/consumer.js +2 -2
  4. package/generators/cli/catalog/dashboard.js +1 -1
  5. package/generators/cli/catalog/dbschema.js +3 -3
  6. package/generators/cli/catalog/field-validation.js +1 -1
  7. package/generators/cli/catalog/query-declarative.js +1 -1
  8. package/generators/cli/config/clear-default.js +1 -1
  9. package/generators/cli/config/get-default.js +1 -1
  10. package/generators/cli/config/list.js +1 -1
  11. package/generators/cli/config/schema.js +1 -1
  12. package/generators/cli/config/set-default.js +2 -2
  13. package/generators/cli/config/template.js +1 -1
  14. package/generators/cli/dashboard/create.js +7 -7
  15. package/generators/cli/data/pull.js +12 -12
  16. package/generators/cli/data/push.js +9 -9
  17. package/generators/cli/endpoint/create.js +11 -11
  18. package/generators/cli/endpoint/list.js +3 -3
  19. package/generators/cli/fast-track.js +65 -12
  20. package/generators/cli/init.js +2 -2
  21. package/generators/cli/kafka/consumer-create.js +5 -5
  22. package/generators/cli/key/generate.js +3 -3
  23. package/generators/cli/key/list.js +2 -2
  24. package/generators/cli/key/revoke.js +3 -3
  25. package/generators/cli/payload/diff.js +3 -3
  26. package/generators/cli/payload/generate.js +5 -5
  27. package/generators/cli/payload/sync.js +5 -5
  28. package/generators/cli/payload/validate.js +3 -3
  29. package/generators/cli/processor/create.js +7 -7
  30. package/generators/cli/processor/list.js +3 -3
  31. package/generators/cli/project/delete.js +2 -2
  32. package/generators/cli/project/list.js +1 -1
  33. package/generators/cli/query/validate.js +3 -3
  34. package/generators/cli/schema/apply.js +13 -13
  35. package/generators/cli/schema/describe.js +6 -6
  36. package/generators/cli/schema/diff.js +10 -10
  37. package/generators/cli/schema/generate-ddl.js +11 -11
  38. package/generators/cli/schema/init.js +95 -95
  39. package/generators/cli/schema/introspect.js +8 -8
  40. package/generators/cli/schema/list.js +6 -6
  41. package/generators/cli/schema/migrate.js +91 -13
  42. package/generators/cli/schema/models.js +6 -6
  43. package/generators/cli/schema/template.js +223 -222
  44. package/generators/cli/schema/validate.js +6 -6
  45. package/generators/cli/test/generate.js +6 -6
  46. package/generators/lib/dbschema-kit/introspect-mapper.js +20 -0
  47. package/generators/lib/migrate/migrate-runner.js +12 -2
  48. package/generators/lib/migrate/sql-parser.js +5 -3
  49. package/generators/lib/payload/payload-runner.js +31 -5
  50. package/generators/lib/templates/dashboard-catalog.js +1 -1
  51. package/generators/lib/templates/db-connection-env.js +1 -1
  52. package/generators/lib/templates/dbschema-catalog.js +1 -1
  53. package/generators/lib/templates/field-validation-catalog.js +1 -1
  54. package/generators/lib/templates/mysql-template.js +1 -1
  55. package/generators/lib/templates/oracle-template.js +1 -1
  56. package/generators/lib/templates/postgres-template.js +1 -1
  57. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  58. package/generators/lib/templates/sqlite-template.js +1 -1
  59. package/integrity-manifest.json +18 -18
  60. package/package.json +1 -1
  61. package/scripts/verify-integrity.js +1 -1
  62. package/server.js +2 -2
  63. package/src/components/handlers/adjust_handler.js +1 -1
  64. package/src/components/handlers/audit_handler.js +1 -1
  65. package/src/components/handlers/delete_handler.js +1 -1
  66. package/src/components/handlers/export_handler.js +1 -1
  67. package/src/components/handlers/import_handler.js +1 -1
  68. package/src/components/handlers/insert_handler.js +1 -1
  69. package/src/components/handlers/update_handler.js +1 -1
  70. package/src/components/handlers/upload_handler.js +1 -1
  71. package/src/components/handlers/workflow_handler.js +1 -1
  72. package/src/components/integrations/webhook.js +1 -1
  73. package/src/consumers/baseConsumer.js +1 -1
  74. package/src/consumers/declarativeMapper.js +1 -1
  75. package/src/consumers/handlers/apiHandler.js +1 -1
  76. package/src/consumers/handlers/consoleHandler.js +1 -1
  77. package/src/consumers/handlers/databaseHandler.js +1 -1
  78. package/src/consumers/handlers/index.js +1 -1
  79. package/src/consumers/handlers/kafkaHandler.js +1 -1
  80. package/src/consumers/index.js +1 -1
  81. package/src/consumers/messageTransformer.js +1 -1
  82. package/src/consumers/validator.js +1 -1
  83. package/src/core/db/dialect/base-dialect.js +1 -1
  84. package/src/core/db/dialect/index.js +1 -1
  85. package/src/core/db/dialect/mysql-dialect.js +1 -1
  86. package/src/core/db/dialect/oracle-dialect.js +1 -1
  87. package/src/core/db/dialect/postgres-dialect.js +1 -1
  88. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  89. package/src/core/db/flatten-helper.js +1 -1
  90. package/src/core/db/query-builder-error.js +1 -1
  91. package/src/core/db/query-builder.js +1 -1
  92. package/src/core/db/relation-helper.js +1 -1
  93. package/src/core/handlers/delete_handler.js +1 -1
  94. package/src/core/handlers/insert_handler.js +1 -1
  95. package/src/core/handlers/update_handler.js +1 -1
  96. package/src/core/models/base-model.js +1 -1
  97. package/src/core/utils/cache-manager.js +1 -1
  98. package/src/core/utils/component-engine.js +1 -1
  99. package/src/core/utils/context-builder.js +1 -1
  100. package/src/core/utils/datetime-formatter.js +1 -1
  101. package/src/core/utils/datetime-parser.js +1 -1
  102. package/src/core/utils/db.js +1 -1
  103. package/src/core/utils/logger.js +1 -1
  104. package/src/core/utils/payload-loader.js +1 -1
  105. package/src/core/utils/security-checks.js +1 -1
  106. package/src/middleware/body-options.js +1 -1
  107. package/src/middleware/cors.js +1 -1
  108. package/src/middleware/idempotency.js +1 -1
  109. package/src/middleware/rate-limiter.js +1 -1
  110. package/src/middleware/request-logger.js +1 -1
  111. package/src/middleware/security-headers.js +1 -1
  112. package/src/models/base-model-mysql.js +1 -1
  113. package/src/models/base-model-oracle.js +1 -1
  114. package/src/models/base-model-sqlite.js +1 -1
  115. package/src/models/base-model.js +1 -1
  116. package/src/pro/caching/redis-client.js +1 -1
  117. package/src/pro/caching/redis-helper.js +1 -1
  118. package/src/pro/consumers/baseConsumer.js +1 -1
  119. package/src/pro/consumers/declarativeMapper.js +1 -1
  120. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  121. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  122. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  123. package/src/pro/consumers/handlers/index.js +1 -1
  124. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  125. package/src/pro/consumers/index.js +1 -1
  126. package/src/pro/consumers/messageTransformer.js +1 -1
  127. package/src/pro/consumers/validator.js +1 -1
  128. package/src/pro/database/base-model-mysql.js +1 -1
  129. package/src/pro/database/base-model-oracle.js +1 -1
  130. package/src/pro/database/base-model-sqlite.js +1 -1
  131. package/src/pro/database/db-mysql.js +1 -1
  132. package/src/pro/database/db-oracle.js +1 -1
  133. package/src/pro/database/db-sqlite.js +1 -1
  134. package/src/pro/excel/excel-generator.js +1 -1
  135. package/src/pro/excel/excel-parser.js +1 -1
  136. package/src/pro/excel/export-service.js +1 -1
  137. package/src/pro/excel/export_handler.js +1 -1
  138. package/src/pro/excel/import-service.js +1 -1
  139. package/src/pro/excel/import-validator.js +1 -1
  140. package/src/pro/excel/import_handler.js +1 -1
  141. package/src/pro/excel/upsert-builder.js +1 -1
  142. package/src/pro/idgen/idgen-routes.js +1 -1
  143. package/src/pro/integrations/lookup-resolver.js +1 -1
  144. package/src/pro/integrations/upload-handler-v2.js +1 -1
  145. package/src/pro/integrations/upload-handler.js +1 -1
  146. package/src/pro/integrations/webhook.js +1 -1
  147. package/src/pro/locking/lock-routes.js +1 -1
  148. package/src/pro/locking/resource-lock-manager.js +1 -1
  149. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  150. package/src/pro/messaging/kafkaService.js +1 -1
  151. package/src/pro/messaging/messagehubService.js +1 -1
  152. package/src/pro/messaging/rabbitmqService.js +1 -1
  153. package/src/pro/scheduler/job-manager.js +1 -1
  154. package/src/pro/scheduler/job-routes.js +1 -1
  155. package/src/pro/scheduler/job-validator.js +1 -1
  156. package/src/pro/storage/base-storage-provider.js +1 -1
  157. package/src/pro/storage/file-metadata-helper.js +1 -1
  158. package/src/pro/storage/index.js +1 -1
  159. package/src/pro/storage/local-storage-provider.js +1 -1
  160. package/src/pro/storage/s3-storage-provider.js +1 -1
  161. package/src/pro/storage/upload-cleanup-job.js +1 -1
  162. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  163. package/src/pro/storage/upload-pending-tracker.js +1 -1
  164. package/src/pro/websocket/broadcast-helper.js +1 -1
  165. package/src/pro/websocket/index.js +1 -1
  166. package/src/pro/websocket/livesync-server.js +1 -1
  167. package/src/pro/websocket/ws-broadcaster.js +1 -1
  168. package/src/services/export-service.js +1 -1
  169. package/src/services/import-service.js +1 -1
  170. package/src/services/kafkaConsumerService.js +1 -1
  171. package/src/services/kafkaService.js +1 -1
  172. package/src/services/messagehubService.js +1 -1
  173. package/src/services/rabbitmqService.js +1 -1
  174. package/src/utils/cache-invalidation-registry.js +1 -1
  175. package/src/utils/cache-manager.js +1 -1
  176. package/src/utils/component-engine.js +1 -1
  177. package/src/utils/config-extractor.js +1 -1
  178. package/src/utils/consumerLogger.js +1 -1
  179. package/src/utils/context-builder.js +1 -1
  180. package/src/utils/dashboard-helpers.js +1 -1
  181. package/src/utils/dateHelper.js +1 -1
  182. package/src/utils/datetime-formatter.js +1 -1
  183. package/src/utils/datetime-parser.js +1 -1
  184. package/src/utils/db-bootstrap.js +1 -1
  185. package/src/utils/db-mysql.js +1 -1
  186. package/src/utils/db-oracle.js +1 -1
  187. package/src/utils/db-sqlite.js +1 -1
  188. package/src/utils/db.js +1 -1
  189. package/src/utils/demo-generator.js +1 -1
  190. package/src/utils/excel-generator.js +1 -1
  191. package/src/utils/excel-parser.js +1 -1
  192. package/src/utils/file-watcher.js +1 -1
  193. package/src/utils/id-generator.js +1 -1
  194. package/src/utils/idempotency-manager.js +1 -1
  195. package/src/utils/import-validator.js +1 -1
  196. package/src/utils/license-client.js +1 -1
  197. package/src/utils/lock-manager.js +1 -1
  198. package/src/utils/logger.js +1 -1
  199. package/src/utils/lookup-resolver.js +1 -1
  200. package/src/utils/payload-loader.js +1 -1
  201. package/src/utils/processor-response.js +1 -1
  202. package/src/utils/rabbitmq.js +1 -1
  203. package/src/utils/redis-client.js +1 -1
  204. package/src/utils/redis-helper.js +1 -1
  205. package/src/utils/request-scope.js +1 -1
  206. package/src/utils/security-checks.js +1 -1
  207. package/src/utils/service-resolver.js +1 -1
  208. package/src/utils/shutdown-coordinator.js +1 -1
  209. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  210. package/src/utils/sql-table-extractor.js +1 -1
  211. package/src/utils/trusted-keys.js +1 -1
  212. package/src/utils/upload-handler.js +1 -1
  213. package/src/utils/upsert-builder.js +1 -1
  214. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x4da400=a0_0x5645;(function(_0x4ab3d0,_0x508fca){const _0x44ee0d=a0_0x5645,_0x15fe62=_0x4ab3d0();while(!![]){try{const _0x2aa2cc=-parseInt(_0x44ee0d(0xf8))/0x1+-parseInt(_0x44ee0d(0x115))/0x2*(parseInt(_0x44ee0d(0x109))/0x3)+-parseInt(_0x44ee0d(0x105))/0x4+parseInt(_0x44ee0d(0x111))/0x5+-parseInt(_0x44ee0d(0x108))/0x6*(-parseInt(_0x44ee0d(0xe3))/0x7)+-parseInt(_0x44ee0d(0x104))/0x8+parseInt(_0x44ee0d(0x116))/0x9*(parseInt(_0x44ee0d(0xf0))/0xa);if(_0x2aa2cc===_0x508fca)break;else _0x15fe62['push'](_0x15fe62['shift']());}catch(_0x2e6916){_0x15fe62['push'](_0x15fe62['shift']());}}}(a0_0xeba5,0x98836));const multer=require(a0_0x4da400(0xeb)),path=require('path'),crypto=require('crypto'),fs=require('fs')[a0_0x4da400(0xf6)],fsSync=require('fs'),{logger}=require('./logger');function a0_0x5645(_0x54155b,_0x40bd62){_0x54155b=_0x54155b-0xdf;const _0xeba587=a0_0xeba5();let _0x56459a=_0xeba587[_0x54155b];if(a0_0x5645['kuXEFj']===undefined){var _0xd67ab9=function(_0x700e0f){const _0x30280a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x36bff8='',_0x147de9='';for(let _0x564789=0x0,_0x43d697,_0x2f4434,_0x45eed5=0x0;_0x2f4434=_0x700e0f['charAt'](_0x45eed5++);~_0x2f4434&&(_0x43d697=_0x564789%0x4?_0x43d697*0x40+_0x2f4434:_0x2f4434,_0x564789++%0x4)?_0x36bff8+=String['fromCharCode'](0xff&_0x43d697>>(-0x2*_0x564789&0x6)):0x0){_0x2f4434=_0x30280a['indexOf'](_0x2f4434);}for(let _0x57a0cc=0x0,_0x5d900d=_0x36bff8['length'];_0x57a0cc<_0x5d900d;_0x57a0cc++){_0x147de9+='%'+('00'+_0x36bff8['charCodeAt'](_0x57a0cc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x147de9);};a0_0x5645['KDmjRQ']=_0xd67ab9,a0_0x5645['xotixj']={},a0_0x5645['kuXEFj']=!![];}const _0xb68a3=_0xeba587[0x0],_0x3cfda9=_0x54155b+_0xb68a3,_0xefc460=a0_0x5645['xotixj'][_0x3cfda9];return!_0xefc460?(_0x56459a=a0_0x5645['KDmjRQ'](_0x56459a),a0_0x5645['xotixj'][_0x3cfda9]=_0x56459a):_0x56459a=_0xefc460,_0x56459a;}class UploadHandlerV2{constructor(){const _0xbcd25=a0_0x4da400;this[_0xbcd25(0xf3)]=null;}get['tempDir'](){const _0x5ab9a7=a0_0x4da400,_0x58a9c4={'Znqgj':'default','TtopZ':'temp','MsUBK':'uploads'};if(!this['_tempDir']){const _0x330439=process[_0x5ab9a7(0xff)][_0x5ab9a7(0xe5)]||_0x58a9c4['Znqgj'];this['_tempDir']=process['env'][_0x5ab9a7(0xfa)]||path['join'](process['cwd'](),_0x58a9c4['TtopZ'],_0x58a9c4['MsUBK'],_0x330439),!fsSync['existsSync'](this[_0x5ab9a7(0xf3)])&&fsSync[_0x5ab9a7(0xdf)](this['_tempDir'],{'recursive':!![]});}return this['_tempDir'];}['createUploadMiddleware'](_0x2f281b={}){const _0x57080a=a0_0x4da400,_0x218c08={'WAtGe':'hex','Dsqgu':function(_0x5d11ff,_0x3f458c,_0x5141ec){return _0x5d11ff(_0x3f458c,_0x5141ec);},'PLxkz':function(_0x1d872d,_0x44e22c,_0x5369a5){return _0x1d872d(_0x44e22c,_0x5369a5);},'ugfWI':function(_0x3f295c,_0x1c5192){return _0x3f295c(_0x1c5192);},'Rwrwd':'10MB'},_0x2bf63a=_0x2f281b['maxFiles']||0x5,_0x336a8a=this['_parseFileSize'](_0x2f281b[_0x57080a(0xee)]||_0x218c08['Rwrwd']),_0x52f4cf=_0x2f281b['allowedTypes']||[],_0x582d98=multer[_0x57080a(0xef)]({'destination':(_0x243734,_0x201ef6,_0x17c0ff)=>{const _0x3771c1=_0x57080a;!fsSync[_0x3771c1(0xe2)](this[_0x3771c1(0x10a)])&&fsSync[_0x3771c1(0xdf)](this['tempDir'],{'recursive':!![]}),_0x17c0ff(null,this['tempDir']);},'filename':(_0x3b5091,_0x401b12,_0x3bf03b)=>{const _0x510b6b=_0x57080a,_0x282d41=crypto[_0x510b6b(0x10e)](0x8)[_0x510b6b(0x103)](_0x218c08[_0x510b6b(0x10f)]),_0x10c67e=Date[_0x510b6b(0xfb)](),_0x5ec0aa=path[_0x510b6b(0xed)](_0x401b12['originalname']);_0x3bf03b(null,'upload-'+_0x10c67e+'-'+_0x282d41+_0x5ec0aa);}}),_0x46e1b9=(_0x32c23d,_0x18d38a,_0x2ec13b)=>{const _0x51112e=_0x57080a;if(_0x52f4cf[_0x51112e(0xfc)]===0x0)return _0x218c08['Dsqgu'](_0x2ec13b,null,!![]);const _0x5c711d=path['extname'](_0x18d38a[_0x51112e(0xfd)])['toLowerCase']()['replace']('.','');_0x52f4cf['includes'](_0x5c711d)?_0x218c08[_0x51112e(0x112)](_0x2ec13b,null,!![]):_0x218c08[_0x51112e(0xfe)](_0x2ec13b,new Error(_0x51112e(0xf5)+_0x5c711d+_0x51112e(0xf7)+_0x52f4cf[_0x51112e(0x110)](',\x20')));};return multer({'storage':_0x582d98,'limits':{'fileSize':_0x336a8a,'files':_0x2bf63a},'fileFilter':_0x46e1b9})['array'](_0x57080a(0xe1),_0x2bf63a);}async['processUploadedFiles'](_0x58cb1b,_0x2acc4d,_0x460fc9={}){const _0x33573e=a0_0x4da400,_0x16bc8f={'RWEtO':_0x33573e(0x107)},{createFileMetadata:_0x579f74}=require('../storage/file-metadata-helper'),_0x37d12d=[];for(const _0x3f1a26 of _0x58cb1b){try{const _0x54e61d=_0x2acc4d['generateKey'](_0x3f1a26['originalname'],{'prefix':_0x460fc9[_0x33573e(0x10d)]||'','project':_0x460fc9[_0x33573e(0xec)]||'','module':_0x460fc9[_0x33573e(0xe7)]||'','endpoint':_0x460fc9[_0x33573e(0xe4)]||''}),_0x40c366=fsSync[_0x33573e(0xea)](_0x3f1a26['path']),_0x61ecc5=await _0x2acc4d[_0x33573e(0x114)](_0x40c366,_0x54e61d,{'contentType':_0x3f1a26['mimetype'],'fileSize':_0x3f1a26['size']}),_0x371edc=_0x579f74({'key':_0x61ecc5[_0x33573e(0xe6)],'originalName':_0x3f1a26[_0x33573e(0xfd)],'fileName':path[_0x33573e(0x10c)](_0x54e61d),'contentType':_0x3f1a26['mimetype'],'size':_0x3f1a26['size'],'url':_0x61ecc5[_0x33573e(0x101)],'provider':_0x2acc4d[_0x33573e(0xf4)],'bucket':_0x2acc4d['bucket']||null,'uploadedBy':_0x460fc9['uploadedBy']||null});_0x37d12d[_0x33573e(0x113)](_0x371edc);}catch(_0xb2fb17){logger[_0x33573e(0x100)]({'event':_0x16bc8f['RWEtO'],'file':_0x3f1a26[_0x33573e(0xfd)],'error':_0xb2fb17[_0x33573e(0x102)]},'Failed\x20to\x20process\x20uploaded\x20file:\x20'+_0x3f1a26['originalname']);throw _0xb2fb17;}finally{await this['_deleteTempFile'](_0x3f1a26['path']);}}return _0x37d12d;}async['_deleteTempFile'](_0x2ae1d4){const _0x2bafc4=a0_0x4da400;try{await fs[_0x2bafc4(0xf9)](_0x2ae1d4);}catch(_0x21b8ee){logger[_0x2bafc4(0xe8)]({'event':'upload_v2_temp_delete_warn','filePath':_0x2ae1d4,'error':_0x21b8ee['message']},'Failed\x20to\x20delete\x20temp\x20file');}}[a0_0x4da400(0x10b)](_0x32515d){const _0x296868=a0_0x4da400,_0x47dd1e={'rueUi':'number','VQtaT':function(_0x1553eb,_0x48cc08){return _0x1553eb*_0x48cc08;},'lYUkG':function(_0x31db78,_0x487401){return _0x31db78(_0x487401);},'MNBcL':function(_0x14d6e2,_0x300ac8){return _0x14d6e2*_0x300ac8;}};if(typeof _0x32515d===_0x47dd1e['rueUi'])return _0x32515d;const _0x49c9e3=String(_0x32515d)['trim']()[_0x296868(0x106)](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x49c9e3)return _0x47dd1e[_0x296868(0xe9)](0xa*0x400,0x400);const _0x1bf3e4=_0x47dd1e[_0x296868(0xf1)](parseFloat,_0x49c9e3[0x1]),_0x2e20fb=_0x49c9e3[0x2][_0x296868(0xf2)](),_0x264b0a={'B':0x1,'KB':0x400,'MB':_0x47dd1e['VQtaT'](0x400,0x400),'GB':_0x47dd1e['MNBcL'](0x400*0x400,0x400)};return Math['floor'](_0x1bf3e4*(_0x264b0a[_0x2e20fb]||0x1));}}module[a0_0x4da400(0xe0)]=new UploadHandlerV2();function a0_0xeba5(){const _0x1ea642=['nNjkCuPzuW','mJqXndG0mZfHqKnvtNO','BwTKAxjtEw5J','zxHWB3j0CW','zMLSzxm','zxHPC3rZu3LUyW','mtu3otG3ourSuLjLyG','zw5KCg9PBNq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','A2v5','Bw9KDwXL','D2fYBG','vLf0yvq','y3jLyxrLuMvHzfn0CMvHBq','BxvSDgvY','ChjVAMvJDa','zxH0BMfTzq','Bwf4rMLSzvnPEMu','zgLZA1n0B3jHz2u','mtb6sKnrzhi','BfLvA0C','Dg9vChbLCKnHC2u','x3rLBxbeAxi','ChjVDMLKzxjoyw1L','rMLSzsb0ExbLiciU','ChjVBwLZzxm','iIbPCYbUB3qGywXSB3DLzc4GqwXSB3DLzcb0ExbLCZOG','mJmZotK5vKjUDhLm','Dw5SAw5R','vvbmt0fex1rftvbFreLs','BM93','BgvUz3rO','B3jPz2LUywXUyw1L','DwDMv0K','zw52','zxjYB3i','DxjS','BwvZC2fNzq','Dg9tDhjPBMC','ntu5mtaYngP3vwfVuG','mtm0nJCWogzUvu91sq','Bwf0y2G','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','nNzJug1puG','mta4nJCXmunLDejVvq','DgvTCerPCG','x3bHCNnLrMLSzvnPEMu','yMfZzw5HBwu','ChjLzML4','CMfUzg9TqNL0zxm','v0f0r2u','AM9PBG','mZyWnte1DKrIt0nw','ueX4A3O','ChvZAa','DxbSB2fK'];a0_0xeba5=function(){return _0x1ea642;};return a0_0xeba5();}
1
+ 'use strict';const a0_0x7bc7e=a0_0xfa0e;(function(_0x49f00c,_0x12ac7e){const _0x8eaef1=a0_0xfa0e,_0x25a2f2=_0x49f00c();while(!![]){try{const _0x4ed597=parseInt(_0x8eaef1(0xd4))/0x1+parseInt(_0x8eaef1(0xf4))/0x2*(-parseInt(_0x8eaef1(0xed))/0x3)+-parseInt(_0x8eaef1(0xfd))/0x4*(parseInt(_0x8eaef1(0x103))/0x5)+-parseInt(_0x8eaef1(0xf7))/0x6*(parseInt(_0x8eaef1(0xee))/0x7)+parseInt(_0x8eaef1(0xd0))/0x8+parseInt(_0x8eaef1(0xde))/0x9*(parseInt(_0x8eaef1(0xf6))/0xa)+parseInt(_0x8eaef1(0xd3))/0xb;if(_0x4ed597===_0x12ac7e)break;else _0x25a2f2['push'](_0x25a2f2['shift']());}catch(_0x25aa0f){_0x25a2f2['push'](_0x25a2f2['shift']());}}}(a0_0x5397,0x37b05));function a0_0xfa0e(_0x1fd0ae,_0x12bb72){_0x1fd0ae=_0x1fd0ae-0xcb;const _0x539774=a0_0x5397();let _0xfa0ed9=_0x539774[_0x1fd0ae];if(a0_0xfa0e['ELKCJn']===undefined){var _0x47225f=function(_0x5d153e){const _0x2d33d7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1915fb='',_0x467f11='';for(let _0x373567=0x0,_0x2becfc,_0x204dbd,_0x1544ed=0x0;_0x204dbd=_0x5d153e['charAt'](_0x1544ed++);~_0x204dbd&&(_0x2becfc=_0x373567%0x4?_0x2becfc*0x40+_0x204dbd:_0x204dbd,_0x373567++%0x4)?_0x1915fb+=String['fromCharCode'](0xff&_0x2becfc>>(-0x2*_0x373567&0x6)):0x0){_0x204dbd=_0x2d33d7['indexOf'](_0x204dbd);}for(let _0x28dd7f=0x0,_0xef7288=_0x1915fb['length'];_0x28dd7f<_0xef7288;_0x28dd7f++){_0x467f11+='%'+('00'+_0x1915fb['charCodeAt'](_0x28dd7f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x467f11);};a0_0xfa0e['wndaUR']=_0x47225f,a0_0xfa0e['vQxjtU']={},a0_0xfa0e['ELKCJn']=!![];}const _0x1de856=_0x539774[0x0],_0x1f3401=_0x1fd0ae+_0x1de856,_0x364225=a0_0xfa0e['vQxjtU'][_0x1f3401];return!_0x364225?(_0xfa0ed9=a0_0xfa0e['wndaUR'](_0xfa0ed9),a0_0xfa0e['vQxjtU'][_0x1f3401]=_0xfa0ed9):_0xfa0ed9=_0x364225,_0xfa0ed9;}const multer=require(a0_0x7bc7e(0xcb)),path=require('path'),crypto=require(a0_0x7bc7e(0xfb)),fs=require('fs')[a0_0x7bc7e(0xd9)],fsSync=require('fs'),{logger}=require('./logger');class UploadHandlerV2{constructor(){this['_tempDir']=null;}get['tempDir'](){const _0x4e0f15=a0_0x7bc7e;if(!this[_0x4e0f15(0xfc)]){const _0x51b5c9=process['env'][_0x4e0f15(0xf0)]||_0x4e0f15(0xd2);this['_tempDir']=process[_0x4e0f15(0xe8)][_0x4e0f15(0xe6)]||path[_0x4e0f15(0xf5)](process[_0x4e0f15(0xf2)](),'temp',_0x4e0f15(0xd5),_0x51b5c9),!fsSync[_0x4e0f15(0x104)](this[_0x4e0f15(0xfc)])&&fsSync['mkdirSync'](this[_0x4e0f15(0xfc)],{'recursive':!![]});}return this['_tempDir'];}['createUploadMiddleware'](_0x3a9597={}){const _0x24461f=a0_0x7bc7e,_0xc40c4f={'EktOY':_0x24461f(0x101),'qdViQ':function(_0x47a4d2,_0x5d1cc8,_0x5a9e34){return _0x47a4d2(_0x5d1cc8,_0x5a9e34);},'NNJBE':function(_0x20fb4c,_0x249f8e){return _0x20fb4c(_0x249f8e);},'aVKHS':_0x24461f(0xff),'Guuiz':function(_0x5d2c45,_0x255350){return _0x5d2c45(_0x255350);},'HJOQJ':_0x24461f(0xeb)},_0x142c12=_0x3a9597[_0x24461f(0xec)]||0x5,_0x4b9ccc=this[_0x24461f(0xda)](_0x3a9597['maxFileSize']||_0xc40c4f[_0x24461f(0xe5)]),_0x15ea28=_0x3a9597[_0x24461f(0xf3)]||[],_0x54412a=multer['diskStorage']({'destination':(_0x160e20,_0x3160cd,_0x17b7d4)=>{const _0x34f408=_0x24461f;!fsSync['existsSync'](this['tempDir'])&&fsSync['mkdirSync'](this[_0x34f408(0xcc)],{'recursive':!![]}),_0x17b7d4(null,this['tempDir']);},'filename':(_0x2568ff,_0x4b1b3b,_0x5dca06)=>{const _0x35d216=_0x24461f,_0x509e88=crypto['randomBytes'](0x8)[_0x35d216(0xfa)](_0xc40c4f['EktOY']),_0x3f84fe=Date[_0x35d216(0xf9)](),_0x518cf7=path[_0x35d216(0xdb)](_0x4b1b3b[_0x35d216(0xf8)]);_0x5dca06(null,_0x35d216(0xcf)+_0x3f84fe+'-'+_0x509e88+_0x518cf7);}}),_0x58a40e=(_0x40ac13,_0x5d1e87,_0xd8b002)=>{const _0x3fd7bd=_0x24461f;if(_0x15ea28['length']===0x0)return _0xd8b002(null,!![]);const _0x3a89ea=path['extname'](_0x5d1e87['originalname'])[_0x3fd7bd(0xdd)]()['replace']('.','');_0x15ea28[_0x3fd7bd(0xe4)](_0x3a89ea)?_0xc40c4f['qdViQ'](_0xd8b002,null,!![]):_0xc40c4f['NNJBE'](_0xd8b002,new Error('File\x20type\x20\x22.'+_0x3a89ea+'\x22\x20is\x20not\x20allowed.\x20Allowed\x20types:\x20'+_0x15ea28[_0x3fd7bd(0xf5)](',\x20')));};return _0xc40c4f['Guuiz'](multer,{'storage':_0x54412a,'limits':{'fileSize':_0x4b9ccc,'files':_0x142c12},'fileFilter':_0x58a40e})['array'](_0xc40c4f['HJOQJ'],_0x142c12);}async['processUploadedFiles'](_0x2ac849,_0x45a841,_0x23fabc={}){const _0x112910=a0_0x7bc7e,_0x4bbf6e={'zFZfD':function(_0x636eeb,_0x36e417){return _0x636eeb(_0x36e417);},'hmOdz':_0x112910(0xd6),'fymug':_0x112910(0xef)},{createFileMetadata:_0x3d727f}=_0x4bbf6e['zFZfD'](require,_0x4bbf6e['hmOdz']),_0x278bd1=[];for(const _0x18c866 of _0x2ac849){try{const _0x16b04d=_0x45a841[_0x112910(0xd8)](_0x18c866[_0x112910(0xf8)],{'prefix':_0x23fabc[_0x112910(0xe3)]||'','project':_0x23fabc[_0x112910(0x105)]||'','module':_0x23fabc['module']||'','endpoint':_0x23fabc[_0x112910(0x102)]||''}),_0x5df3e2=fsSync['createReadStream'](_0x18c866[_0x112910(0xea)]),_0x34eec4=await _0x45a841['upload'](_0x5df3e2,_0x16b04d,{'contentType':_0x18c866['mimetype'],'fileSize':_0x18c866[_0x112910(0xe1)]}),_0x1ac566=_0x3d727f({'key':_0x34eec4['key'],'originalName':_0x18c866['originalname'],'fileName':path['basename'](_0x16b04d),'contentType':_0x18c866[_0x112910(0xcd)],'size':_0x18c866[_0x112910(0xe1)],'url':_0x34eec4['url'],'provider':_0x45a841['providerName'],'bucket':_0x45a841['bucket']||null,'uploadedBy':_0x23fabc[_0x112910(0xdc)]||null});_0x278bd1['push'](_0x1ac566);}catch(_0x34f951){logger[_0x112910(0xe2)]({'event':_0x4bbf6e['fymug'],'file':_0x18c866[_0x112910(0xf8)],'error':_0x34f951[_0x112910(0xce)]},_0x112910(0xd7)+_0x18c866['originalname']);throw _0x34f951;}finally{await this['_deleteTempFile'](_0x18c866['path']);}}return _0x278bd1;}async['_deleteTempFile'](_0x1a6164){const _0x42da19=a0_0x7bc7e,_0x279060={'MAYcq':'upload_v2_temp_delete_warn'};try{await fs[_0x42da19(0xd1)](_0x1a6164);}catch(_0x455ddd){logger['warn']({'event':_0x279060['MAYcq'],'filePath':_0x1a6164,'error':_0x455ddd['message']},'Failed\x20to\x20delete\x20temp\x20file');}}['_parseFileSize'](_0x4c8880){const _0x27a974=a0_0x7bc7e,_0x4da324={'WtQRT':_0x27a974(0xdf),'ksNjO':function(_0x1c438c,_0x5025d8){return _0x1c438c*_0x5025d8;},'rUzbL':function(_0x27efa9,_0x2806dc){return _0x27efa9*_0x2806dc;}};if(typeof _0x4c8880===_0x4da324[_0x27a974(0x100)])return _0x4c8880;const _0x44ccff=String(_0x4c8880)[_0x27a974(0xe9)]()[_0x27a974(0xf1)](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x44ccff)return _0x4da324['ksNjO'](0xa*0x400,0x400);const _0x210ca4=parseFloat(_0x44ccff[0x1]),_0x1bd4f9=_0x44ccff[0x2][_0x27a974(0xfe)](),_0x576047={'B':0x1,'KB':0x400,'MB':_0x4da324[_0x27a974(0xe0)](0x400,0x400),'GB':_0x4da324['ksNjO'](_0x4da324[_0x27a974(0xe7)](0x400,0x400),0x400)};return Math['floor'](_0x4da324[_0x27a974(0xe0)](_0x210ca4,_0x576047[_0x1bd4f9]||0x1));}}function a0_0x5397(){const _0x6a14c1=['Bwf0y2G','y3DK','ywXSB3DLzfr5CgvZ','mM1KuK9xzq','AM9PBG','mtbtzwHvshi','nte3nZm0vNDAExHe','B3jPz2LUywXUyw1L','BM93','Dg9tDhjPBMC','y3j5ChrV','x3rLBxbeAxi','mJa4B1jLEujl','Dg9vChbLCKnHC2u','mtbnqG','v3rruLq','Agv4','zw5KCg9PBNq','mtKXmhP4DunnyW','zxHPC3rZu3LUyW','ChjVAMvJDa','BxvSDgvY','DgvTCerPCG','BwLTzxr5Cgu','BwvZC2fNzq','DxbSB2fKlq','mtu2nJK5mMPSs3jfzq','Dw5SAw5R','zgvMyxvSDa','odm5mZiYCenuu2Hf','nti2mJrVtwPpz1e','DxbSB2fKCW','lI4VC3rVCMfNzs9MAwXLlw1LDgfKyxrHlwHLBhbLCG','rMfPBgvKihrVihbYB2nLC3mGDxbSB2fKzwqGzMLSztOG','z2vUzxjHDgvlzxK','ChjVBwLZzxm','x3bHCNnLrMLSzvnPEMu','zxH0BMfTzq','DxbSB2fKzwrcEq','Dg9mB3DLCKnHC2u','mJCZmJq4mu5TEfrsDW','BNvTyMvY','A3noAK8','C2L6zq','zxjYB3i','ChjLzML4','Aw5JBhvKzxm','yvzlsfm','vvbmt0fex1rftvbFreLs','CLv6yKW','zw52','DhjPBq','Cgf0Aa','zMLSzxm','Bwf4rMLSzxm','odGYndy1EKjeDhbN','n0DcD1vgva','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq'];a0_0x5397=function(){return _0x6a14c1;};return a0_0x5397();}module['exports']=new UploadHandlerV2();
@@ -1 +1 @@
1
- const a0_0x3e6a48=a0_0x21ec;function a0_0x2b00(){const _0x50daf0=['Dg9tDhjPBMC','zw52','mZeWmZu5qLz0BxHH','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','vvbmt0fex0rjuG','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','Aw5MBW','BwTKAxjtEw5J','nKnVEKHyBq','BwLTzxr5Cgu','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','z2v0u3rVCMfNzq','BM93','ANzVtMq','AM9PBG','mtqXotq4mezhsxD6rW','odC1ota0s1DxC2r1','DxbSB2fKrgLY','DxbSB2fKlq','Aw5JBhvKzxm','otaYmte1svroquXw','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','x3vWBg9HzerPCG','lNHSC3G','zff1ufe','zgvSzxrLrMLSzq','t1PXv3K','lI9SB2DNzxi','Agv4','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','zxHPC3rZu3LUyW','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','mte0mJe5n0DsuffIEG','Bwf4rMLSzvnPEMu','DxfsAve','lNHSCW','mJCXnJa2y01uv0jk','BwvZC2fNzq','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','mJi2ntaWvwPjq0Hx','Dw5SAw5R','B3jPz2LUywXUyw1L','y3DfEMW','z2v0vxbSB2fKtwLKzgXLD2fYzq','zKPbExy','DxbSB2fKx2HHBMrSzxjFAw5PDa','zxH0BMfTzq'];a0_0x2b00=function(){return _0x50daf0;};return a0_0x2b00();}(function(_0x402bc1,_0x2fc223){const _0x3b041e=a0_0x21ec,_0x239ae5=_0x402bc1();while(!![]){try{const _0x54b198=-parseInt(_0x3b041e(0x127))/0x1+-parseInt(_0x3b041e(0x154))/0x2+parseInt(_0x3b041e(0x131))/0x3+parseInt(_0x3b041e(0x140))/0x4+-parseInt(_0x3b041e(0x144))/0x5+parseInt(_0x3b041e(0x138))/0x6*(parseInt(_0x3b041e(0x150))/0x7)+parseInt(_0x3b041e(0x13f))/0x8;if(_0x54b198===_0x2fc223)break;else _0x239ae5['push'](_0x239ae5['shift']());}catch(_0x5d0e7b){_0x239ae5['push'](_0x239ae5['shift']());}}}(a0_0x2b00,0x1d5f5));function a0_0x21ec(_0x56d3ad,_0x56165f){_0x56d3ad=_0x56d3ad-0x125;const _0x2b008d=a0_0x2b00();let _0x21ec9d=_0x2b008d[_0x56d3ad];if(a0_0x21ec['UnwSmC']===undefined){var _0x11d8eb=function(_0x4f8001){const _0x40f965='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1a2e3a='',_0x2609c5='';for(let _0x2f602c=0x0,_0x38e095,_0x3f06b3,_0x3199b6=0x0;_0x3f06b3=_0x4f8001['charAt'](_0x3199b6++);~_0x3f06b3&&(_0x38e095=_0x2f602c%0x4?_0x38e095*0x40+_0x3f06b3:_0x3f06b3,_0x2f602c++%0x4)?_0x1a2e3a+=String['fromCharCode'](0xff&_0x38e095>>(-0x2*_0x2f602c&0x6)):0x0){_0x3f06b3=_0x40f965['indexOf'](_0x3f06b3);}for(let _0xc28f1d=0x0,_0x5302bd=_0x1a2e3a['length'];_0xc28f1d<_0x5302bd;_0xc28f1d++){_0x2609c5+='%'+('00'+_0x1a2e3a['charCodeAt'](_0xc28f1d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2609c5);};a0_0x21ec['vKrSqk']=_0x11d8eb,a0_0x21ec['VaEIFj']={},a0_0x21ec['UnwSmC']=!![];}const _0x45cf3e=_0x2b008d[0x0],_0x30fd98=_0x56d3ad+_0x45cf3e,_0x21c4d4=a0_0x21ec['VaEIFj'][_0x30fd98];return!_0x21c4d4?(_0x21ec9d=a0_0x21ec['vKrSqk'](_0x21ec9d),a0_0x21ec['VaEIFj'][_0x30fd98]=_0x21ec9d):_0x21ec9d=_0x21c4d4,_0x21ec9d;}const multer=require('multer'),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x3e6a48(0x14b));class UploadHandler{constructor(){const _0xfce21b=a0_0x3e6a48,_0x1e620f={'fJAyv':function(_0x27a9df,_0x37b358){return _0x27a9df*_0x37b358;}};this[_0xfce21b(0x146)]=null,this[_0xfce21b(0x151)]=_0x1e620f[_0xfce21b(0x12c)](0xa*0x400,0x400);}get[a0_0x3e6a48(0x141)](){const _0x3de420=a0_0x3e6a48,_0xea2326={'GquMW':_0x3de420(0x133)};if(!this['_uploadDir']){const _0x40050c=process[_0x3de420(0x130)][_0x3de420(0x145)]||'default';this[_0x3de420(0x146)]=process[_0x3de420(0x130)][_0x3de420(0x134)]||path[_0x3de420(0x13e)](__dirname,'../../temp/uploads/'+_0x40050c);try{!fsSync[_0x3de420(0x14e)](this[_0x3de420(0x146)])&&fsSync['mkdirSync'](this['_uploadDir'],{'recursive':!![]}),logger[_0x3de420(0x136)]({'event':_0x3de420(0x12d),'dir':this[_0x3de420(0x146)]},_0xea2326['GquMW']);}catch(_0x45fe01){logger['error']({'event':'upload_handler_init_error','error':_0x45fe01[_0x3de420(0x125)]},_0x3de420(0x13a));}}return this[_0x3de420(0x146)];}['getStorage'](){const _0x193bc1={'cwEzl':function(_0x223b55,_0x4b3f6f,_0xc8a779){return _0x223b55(_0x4b3f6f,_0xc8a779);}};return multer['diskStorage']({'destination':(_0x4432e4,_0x4e36cd,_0x308d91)=>{const _0x4295a0=a0_0x21ec;!fsSync[_0x4295a0(0x14e)](this[_0x4295a0(0x141)])&&fsSync[_0x4295a0(0x137)](this[_0x4295a0(0x141)],{'recursive':!![]}),_0x193bc1[_0x4295a0(0x12a)](_0x308d91,null,this['uploadDir']);},'filename':(_0x19c940,_0x14308f,_0x33e5be)=>{const _0x59a830=a0_0x21ec,_0x47660=crypto['randomBytes'](0x8)[_0x59a830(0x12f)](_0x59a830(0x14c)),_0x5062e3=Date[_0x59a830(0x13c)](),_0x15817c=path['extname'](_0x14308f[_0x59a830(0x129)]);_0x193bc1['cwEzl'](_0x33e5be,null,_0x59a830(0x142)+_0x5062e3+'-'+_0x47660+_0x15817c);}});}[a0_0x3e6a48(0x12b)](){const _0x5c1040=a0_0x3e6a48,_0x52e62b={'OwwbM':_0x5c1040(0x126),'uqRiQ':_0x5c1040(0x14d),'dQuPQ':function(_0xce5a58,_0x2e9731){return _0xce5a58(_0x2e9731);},'OZqWy':function(_0x116fb3,_0x4080ad){return _0x116fb3(_0x4080ad);},'jvoNd':'file'};return _0x52e62b[_0x5c1040(0x14a)](multer,{'storage':this[_0x5c1040(0x13b)](),'limits':{'fileSize':this['maxFileSize'],'files':0x1},'fileFilter':(_0x370a91,_0x1445f6,_0x5cb5c1)=>{const _0x580c05=_0x5c1040,_0x52e324=[_0x52e62b['OwwbM'],_0x52e62b[_0x580c05(0x152)]],_0x130354=[_0x580c05(0x147),_0x580c05(0x153)],_0x455e4d=path[_0x580c05(0x12e)](_0x1445f6['originalname'])['toLowerCase']();_0x52e324['includes'](_0x1445f6[_0x580c05(0x139)])&&_0x130354[_0x580c05(0x143)](_0x455e4d)?_0x5cb5c1(null,!![]):_0x52e62b[_0x580c05(0x148)](_0x5cb5c1,new Error(_0x580c05(0x135)));}})['single'](_0x52e62b[_0x5c1040(0x13d)]);}async[a0_0x3e6a48(0x149)](_0x1a0801){const _0x1b52de=a0_0x3e6a48,_0x494e68={'pSmfw':'upload_file_deleted','bVWWb':_0x1b52de(0x132)};try{await fs[_0x1b52de(0x128)](_0x1a0801),logger[_0x1b52de(0x136)]({'event':_0x494e68['pSmfw'],'filePath':_0x1a0801},_0x1b52de(0x14f));}catch(_0x20a422){logger['error']({'event':'upload_file_delete_error','filePath':_0x1a0801,'error':_0x20a422[_0x1b52de(0x125)]},_0x494e68['bVWWb']);}}}module['exports']=new UploadHandler();
1
+ const a0_0x35b3a7=a0_0x5c4e;(function(_0xb8bfb4,_0x3e62ee){const _0x3690fb=a0_0x5c4e,_0x22a83c=_0xb8bfb4();while(!![]){try{const _0x1c106a=-parseInt(_0x3690fb(0x152))/0x1+-parseInt(_0x3690fb(0x15c))/0x2+parseInt(_0x3690fb(0x157))/0x3*(-parseInt(_0x3690fb(0x151))/0x4)+parseInt(_0x3690fb(0x150))/0x5+parseInt(_0x3690fb(0x16e))/0x6+parseInt(_0x3690fb(0x16c))/0x7*(parseInt(_0x3690fb(0x153))/0x8)+parseInt(_0x3690fb(0x176))/0x9*(parseInt(_0x3690fb(0x16b))/0xa);if(_0x1c106a===_0x3e62ee)break;else _0x22a83c['push'](_0x22a83c['shift']());}catch(_0x3af5fc){_0x22a83c['push'](_0x22a83c['shift']());}}}(a0_0x1a5d,0xe5f7c));function a0_0x5c4e(_0x2d734c,_0x335861){_0x2d734c=_0x2d734c-0x150;const _0x1a5d3e=a0_0x1a5d();let _0x5c4e8d=_0x1a5d3e[_0x2d734c];if(a0_0x5c4e['oQVlvr']===undefined){var _0x8ef6e0=function(_0x437518){const _0x5acb19='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xe2fdea='',_0x213531='';for(let _0x5b8d9f=0x0,_0x3fa079,_0x28c857,_0x202c84=0x0;_0x28c857=_0x437518['charAt'](_0x202c84++);~_0x28c857&&(_0x3fa079=_0x5b8d9f%0x4?_0x3fa079*0x40+_0x28c857:_0x28c857,_0x5b8d9f++%0x4)?_0xe2fdea+=String['fromCharCode'](0xff&_0x3fa079>>(-0x2*_0x5b8d9f&0x6)):0x0){_0x28c857=_0x5acb19['indexOf'](_0x28c857);}for(let _0x5440c4=0x0,_0x2497fb=_0xe2fdea['length'];_0x5440c4<_0x2497fb;_0x5440c4++){_0x213531+='%'+('00'+_0xe2fdea['charCodeAt'](_0x5440c4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x213531);};a0_0x5c4e['aGXwUs']=_0x8ef6e0,a0_0x5c4e['kOZMuz']={},a0_0x5c4e['oQVlvr']=!![];}const _0x586b25=_0x1a5d3e[0x0],_0x297170=_0x2d734c+_0x586b25,_0x56f476=a0_0x5c4e['kOZMuz'][_0x297170];return!_0x56f476?(_0x5c4e8d=a0_0x5c4e['aGXwUs'](_0x5c4e8d),a0_0x5c4e['kOZMuz'][_0x297170]=_0x5c4e8d):_0x5c4e8d=_0x56f476,_0x5c4e8d;}const multer=require(a0_0x35b3a7(0x156)),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x35b3a7(0x170));function a0_0x1a5d(){const _0x1e9e77=['B3jPz2LUywXUyw1L','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','DxbSB2fKx2HHBMrSzxjFAw5PDa','vvbmt0fex0rjuG','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','mtm3mdDxuMP2Efe','Agv4','DxbSB2fKx2zPBgvFzgvSzxrLx2vYCM9Y','rfHOtNe','x3vWBg9HzerPCG','mJyYndeZmfjsDgreuW','nhrxu3rOza','mte5ndCYmezxsLz1Eq','ohHxtLDKua','zxjYB3i','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','BxvSDgvY','nde4nJaXmxHsyLzwwa','lNHSC3G','Dg9mB3DLCKnHC2u','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','Bwf4rMLSzvnPEMu','otK1mZGYEvfkthL6','vxbSB2fKzwqGzMLSzsbKzwXLDgvK','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','zgvSzxrLrMLSzq','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','BwvZC2fNzq','zw52','Aw5JBhvKzxm','CMfUzg9TqNL0zxm','Dw5SAw5R','BwLTzxr5Cgu','z2v0u3rVCMfNzq','ChLXAKS','BLbPrNC','DxbSB2fKlq','mZq2mgnJsKD3tW','ote4nJe4nhPvvMznCW','Dg9tDhjPBMC','otK5mZyWmenIC2XiDa','Aw5MBW','lI9SB2DNzxi'];a0_0x1a5d=function(){return _0x1e9e77;};return a0_0x1a5d();}class UploadHandler{constructor(){const _0x22807f=a0_0x35b3a7,_0x4dd109={'nPiFw':function(_0x5d20cd,_0x342e7b){return _0x5d20cd*_0x342e7b;}};this[_0x22807f(0x17a)]=null,this['maxFileSize']=_0x4dd109[_0x22807f(0x169)](0xa*0x400,0x400);}get['uploadDir'](){const _0x5a7fed=a0_0x35b3a7,_0x17eeed={'jdHKU':'default','hFyPI':_0x5a7fed(0x175),'rCvUo':_0x5a7fed(0x155)};if(!this['_uploadDir']){const _0x45d06f=process[_0x5a7fed(0x162)][_0x5a7fed(0x172)]||_0x17eeed['jdHKU'];this['_uploadDir']=process[_0x5a7fed(0x162)][_0x5a7fed(0x174)]||path['join'](__dirname,'../../temp/uploads/'+_0x45d06f);try{!fsSync['existsSync'](this['_uploadDir'])&&fsSync['mkdirSync'](this[_0x5a7fed(0x17a)],{'recursive':!![]}),logger[_0x5a7fed(0x16f)]({'event':_0x5a7fed(0x173),'dir':this['_uploadDir']},_0x17eeed['hFyPI']);}catch(_0x170450){logger['error']({'event':_0x17eeed['rCvUo'],'error':_0x170450[_0x5a7fed(0x161)]},_0x5a7fed(0x15a));}}return this[_0x5a7fed(0x17a)];}[a0_0x35b3a7(0x167)](){const _0x50777f=a0_0x35b3a7,_0x4ce522={'AZetJ':_0x50777f(0x177),'pyqjK':function(_0x5379a1,_0x4ae0bd,_0x4ac205){return _0x5379a1(_0x4ae0bd,_0x4ac205);}};return multer['diskStorage']({'destination':(_0x1ccda9,_0x37dfe6,_0x24e432)=>{!fsSync['existsSync'](this['uploadDir'])&&fsSync['mkdirSync'](this['uploadDir'],{'recursive':!![]}),_0x24e432(null,this['uploadDir']);},'filename':(_0x5b272e,_0x39ff09,_0x3add70)=>{const _0xa4488e=_0x50777f,_0x2a960e=crypto[_0xa4488e(0x164)](0x8)[_0xa4488e(0x16d)](_0x4ce522['AZetJ']),_0xb191c5=Date['now'](),_0x105a05=path['extname'](_0x39ff09[_0xa4488e(0x171)]);_0x4ce522[_0xa4488e(0x168)](_0x3add70,null,_0xa4488e(0x16a)+_0xb191c5+'-'+_0x2a960e+_0x105a05);}});}['getUploadMiddleware'](){const _0x2ca421=a0_0x35b3a7,_0x252784={'apnyB':'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet','DXhNq':function(_0x16b887,_0x2d80d6,_0x4bd913){return _0x16b887(_0x2d80d6,_0x4bd913);},'Gygwy':function(_0x173d4d,_0x426bb9){return _0x173d4d(_0x426bb9);}};return _0x252784['Gygwy'](multer,{'storage':this[_0x2ca421(0x167)](),'limits':{'fileSize':this[_0x2ca421(0x15b)],'files':0x1},'fileFilter':(_0x1d9dd8,_0x1bfd6c,_0x3fa913)=>{const _0x63abc3=_0x2ca421,_0x27814b=[_0x252784['apnyB'],_0x63abc3(0x160)],_0x137054=[_0x63abc3(0x158),'.xls'],_0x1004f5=path['extname'](_0x1bfd6c[_0x63abc3(0x171)])[_0x63abc3(0x159)]();_0x27814b[_0x63abc3(0x163)](_0x1bfd6c[_0x63abc3(0x166)])&&_0x137054[_0x63abc3(0x163)](_0x1004f5)?_0x252784[_0x63abc3(0x179)](_0x3fa913,null,!![]):_0x3fa913(new Error(_0x63abc3(0x15e)));}})['single']('file');}async[a0_0x35b3a7(0x15f)](_0x40a722){const _0x376c60=a0_0x35b3a7,_0x535349={'mCjLl':'Failed\x20to\x20delete\x20uploaded\x20file'};try{await fs[_0x376c60(0x165)](_0x40a722),logger[_0x376c60(0x16f)]({'event':'upload_file_deleted','filePath':_0x40a722},_0x376c60(0x15d));}catch(_0x323cec){logger[_0x376c60(0x154)]({'event':_0x376c60(0x178),'filePath':_0x40a722,'error':_0x323cec['message']},_0x535349['mCjLl']);}}}module['exports']=new UploadHandler();
@@ -1 +1 @@
1
- function a0_0x5310(){const _0x4d3851=['mLrSBLP2yW','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','mJuZnJGXmZbhtfPWyuS','Aw5Zzxj0','C3rHDhvZ','tLLoBuG','Dg9ju09tDhjPBMC','uMvyqxy','BwvZC2fNzq','zxjYB3i','u0LABfC','Cg9ZDa','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','tfnLwuq','uMvZDezVCMDLlvDLyMHVB2SVms4W','nduWodm5ovjgquLpwq','DKjdCgu','mJuXmZi5ufvIqxzP','oufcz1LRAW','mtq1mZK3nZz6tLLOB2O','mJu5otKZofbyEMHTDa','mZu2odHzrvfUDxq','ndC1otiYnu9OCKjhrG','Bg9N','lcbtDgf0Dxm6ia','mZzdsgPvv1K'];a0_0x5310=function(){return _0x4d3851;};return a0_0x5310();}(function(_0x1cefab,_0x16ded8){const _0x366ed0=a0_0x1627,_0x3b4e41=_0x1cefab();while(!![]){try{const _0x1f1910=-parseInt(_0x366ed0(0xf5))/0x1*(parseInt(_0x366ed0(0xfe))/0x2)+parseInt(_0x366ed0(0xfd))/0x3*(-parseInt(_0x366ed0(0xf9))/0x4)+parseInt(_0x366ed0(0xfa))/0x5+parseInt(_0x366ed0(0xf8))/0x6+parseInt(_0x366ed0(0x10d))/0x7+parseInt(_0x366ed0(0xf7))/0x8+parseInt(_0x366ed0(0xf6))/0x9*(-parseInt(_0x366ed0(0x100))/0xa);if(_0x1f1910===_0x16ded8)break;else _0x3b4e41['push'](_0x3b4e41['shift']());}catch(_0x3812da){_0x3b4e41['push'](_0x3b4e41['shift']());}}}(a0_0x5310,0xe84c3));const axios=require('axios');function a0_0x1627(_0x132de7,_0x12978e){_0x132de7=_0x132de7-0xf4;const _0x531013=a0_0x5310();let _0x1627aa=_0x531013[_0x132de7];if(a0_0x1627['IIhMmo']===undefined){var _0x439162=function(_0x800dd0){const _0x553bb8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xb43e55='',_0x44592f='';for(let _0x35cc0a=0x0,_0x28a19a,_0x2ff99d,_0x113518=0x0;_0x2ff99d=_0x800dd0['charAt'](_0x113518++);~_0x2ff99d&&(_0x28a19a=_0x35cc0a%0x4?_0x28a19a*0x40+_0x2ff99d:_0x2ff99d,_0x35cc0a++%0x4)?_0xb43e55+=String['fromCharCode'](0xff&_0x28a19a>>(-0x2*_0x35cc0a&0x6)):0x0){_0x2ff99d=_0x553bb8['indexOf'](_0x2ff99d);}for(let _0x27d69a=0x0,_0x346630=_0xb43e55['length'];_0x27d69a<_0x346630;_0x27d69a++){_0x44592f+='%'+('00'+_0xb43e55['charCodeAt'](_0x27d69a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x44592f);};a0_0x1627['dXPuTP']=_0x439162,a0_0x1627['tfAdJu']={},a0_0x1627['IIhMmo']=!![];}const _0x270c46=_0x531013[0x0],_0x5dbeeb=_0x132de7+_0x270c46,_0x385d96=a0_0x1627['tfAdJu'][_0x5dbeeb];return!_0x385d96?(_0x1627aa=a0_0x1627['dXPuTP'](_0x1627aa),a0_0x1627['tfAdJu'][_0x5dbeeb]=_0x1627aa):_0x1627aa=_0x385d96,_0x1627aa;}async function sendInsertWebhook(_0x4fec51,_0x563a66,_0x83799d={}){const _0x5cfd0a=a0_0x1627,_0x289706={'vBCpe':_0x5cfd0a(0x101),'SIZlW':'application/json','NYNmH':_0x5cfd0a(0x10c),'RTzRB':'Insert\x20webhook\x20sent\x20successfully'};try{const _0x2f1808={'event':_0x289706[_0x5cfd0a(0xf4)],'timestamp':new Date()['toISOString'](),'data':_0x563a66},_0x5563d5=await axios[_0x5cfd0a(0x109)](_0x4fec51,_0x2f1808,{'headers':{'Content-Type':_0x289706[_0x5cfd0a(0x108)],'User-Agent':_0x289706[_0x5cfd0a(0x103)],..._0x83799d},'timeout':0x2710});return console[_0x5cfd0a(0xfb)]('Insert\x20webhook\x20sent\x20to\x20'+_0x4fec51+',\x20Status:\x20'+_0x5563d5[_0x5cfd0a(0x102)]),{'success':!![],'message':_0x289706['RTzRB'],'status':_0x5563d5[_0x5cfd0a(0x102)],'url':_0x4fec51};}catch(_0x3fc031){return console[_0x5cfd0a(0x107)]('Error\x20sending\x20insert\x20webhook:',_0x3fc031['message']),{'success':![],'message':'Failed\x20to\x20send\x20insert\x20webhook','error':_0x3fc031['message'],'url':_0x4fec51};}}async function sendDeleteWebhook(_0x40f9dc,_0x31134e,_0x387999={}){const _0x42b487=a0_0x1627,_0x54bd64={'TfDin':_0x42b487(0x10c),'ReXAv':'Error\x20sending\x20delete\x20webhook:','LSeYD':'Failed\x20to\x20send\x20delete\x20webhook'};try{const _0x16078a={'event':'delete','timestamp':new Date()[_0x42b487(0x104)](),'deleted_data':_0x31134e},_0x496e18=await axios['post'](_0x40f9dc,_0x16078a,{'headers':{'Content-Type':'application/json','User-Agent':_0x54bd64['TfDin'],..._0x387999},'timeout':0x2710});return console['log'](_0x42b487(0x10a)+_0x40f9dc+_0x42b487(0xfc)+_0x496e18[_0x42b487(0x102)]),{'success':!![],'message':_0x42b487(0xff),'status':_0x496e18[_0x42b487(0x102)],'url':_0x40f9dc};}catch(_0x4b52ab){return console['error'](_0x54bd64[_0x42b487(0x105)],_0x4b52ab[_0x42b487(0x106)]),{'success':![],'message':_0x54bd64[_0x42b487(0x10b)],'error':_0x4b52ab[_0x42b487(0x106)],'url':_0x40f9dc};}}module['exports']={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
1
+ function a0_0x53de(){const _0x39c830=['Dg9ju09tDhjPBMC','mtqWndG5mtLrCw1kBfG','uMvZDezVCMDLlvDLyMHVB2SVms4W','yvrnCMK','Bg9N','mtq2EunyzhrO','sLrhu2C','BwvZC2fNzq','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','mJK4otK2r3jlB2DJ','mtGWmtu4mvHqA1rxta','zfLJuwe','Cg9ZDa','quzuCui','thHTqwi','rMfPBgvKihrVihnLBMqGAw5Zzxj0ihDLyMHVB2S','zxjYB3i','yxbWBgLJyxrPB24VANnVBG','zxHWB3j0CW','mJuZnZe5nMDXthbnrW','ndmXnJm1Bw9zBgDI','rMfPBgvKihrVihnLBMqGzgvSzxrLihDLyMHVB2S','teTPExm','ntK5murJuufUEq','C3rHDhvZ','zgvSzxrL','oezhB09wCW','CgHqrgS','B0fbqMi','mJm3mtiXnvLsELPUrG','rxjYB3iGC2vUzgLUzYbKzwXLDguGD2vIAg9VAZO'];a0_0x53de=function(){return _0x39c830;};return a0_0x53de();}const a0_0x416d09=a0_0x4e8c;(function(_0x9bce26,_0xeb5f8a){const _0x2c01b9=a0_0x4e8c,_0x4bc622=_0x9bce26();while(!![]){try{const _0x405e32=parseInt(_0x2c01b9(0x16e))/0x1*(parseInt(_0x2c01b9(0x15c))/0x2)+-parseInt(_0x2c01b9(0x161))/0x3+-parseInt(_0x2c01b9(0x160))/0x4+-parseInt(_0x2c01b9(0x16b))/0x5+-parseInt(_0x2c01b9(0x16a))/0x6+-parseInt(_0x2c01b9(0x174))/0x7+parseInt(_0x2c01b9(0x171))/0x8*(parseInt(_0x2c01b9(0x158))/0x9);if(_0x405e32===_0xeb5f8a)break;else _0x4bc622['push'](_0x4bc622['shift']());}catch(_0x58fb12){_0x4bc622['push'](_0x4bc622['shift']());}}}(a0_0x53de,0x73ff0));const axios=require('axios');function a0_0x4e8c(_0x3db637,_0x27f783){_0x3db637=_0x3db637-0x158;const _0x53dec7=a0_0x53de();let _0x4e8c51=_0x53dec7[_0x3db637];if(a0_0x4e8c['kGLkrf']===undefined){var _0x19b72a=function(_0x5f1043){const _0x590a16='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3b6fe2='',_0x439306='';for(let _0x44dbff=0x0,_0x4878a7,_0x35e130,_0x3a9bef=0x0;_0x35e130=_0x5f1043['charAt'](_0x3a9bef++);~_0x35e130&&(_0x4878a7=_0x44dbff%0x4?_0x4878a7*0x40+_0x35e130:_0x35e130,_0x44dbff++%0x4)?_0x3b6fe2+=String['fromCharCode'](0xff&_0x4878a7>>(-0x2*_0x44dbff&0x6)):0x0){_0x35e130=_0x590a16['indexOf'](_0x35e130);}for(let _0x163c89=0x0,_0x16cabc=_0x3b6fe2['length'];_0x163c89<_0x16cabc;_0x163c89++){_0x439306+='%'+('00'+_0x3b6fe2['charCodeAt'](_0x163c89)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x439306);};a0_0x4e8c['ELjYLd']=_0x19b72a,a0_0x4e8c['OsEgwO']={},a0_0x4e8c['kGLkrf']=!![];}const _0x49ebc0=_0x53dec7[0x0],_0x141b22=_0x3db637+_0x49ebc0,_0x48947b=a0_0x4e8c['OsEgwO'][_0x141b22];return!_0x48947b?(_0x4e8c51=a0_0x4e8c['ELjYLd'](_0x4e8c51),a0_0x4e8c['OsEgwO'][_0x141b22]=_0x4e8c51):_0x4e8c51=_0x48947b,_0x4e8c51;}async function sendInsertWebhook(_0xd9aec6,_0x2cc3dc,_0x5c803e={}){const _0x1c3a02=a0_0x4e8c,_0x5962f8={'aTMri':'insert','AFTqB':'Insert\x20webhook\x20sent\x20successfully','phPDk':_0x1c3a02(0x166)};try{const _0x1806e0={'event':_0x5962f8[_0x1c3a02(0x15a)],'timestamp':new Date()[_0x1c3a02(0x176)](),'data':_0x2cc3dc},_0x109c6a=await axios[_0x1c3a02(0x163)](_0xd9aec6,_0x1806e0,{'headers':{'Content-Type':_0x1c3a02(0x168),'User-Agent':'RestForge-Webhook/1.0',..._0x5c803e},'timeout':0x2710});return console[_0x1c3a02(0x15b)]('Insert\x20webhook\x20sent\x20to\x20'+_0xd9aec6+',\x20Status:\x20'+_0x109c6a[_0x1c3a02(0x16f)]),{'success':!![],'message':_0x5962f8[_0x1c3a02(0x164)],'status':_0x109c6a['status'],'url':_0xd9aec6};}catch(_0x34d5a6){return console[_0x1c3a02(0x167)]('Error\x20sending\x20insert\x20webhook:',_0x34d5a6['message']),{'success':![],'message':_0x5962f8[_0x1c3a02(0x172)],'error':_0x34d5a6['message'],'url':_0xd9aec6};}}async function sendDeleteWebhook(_0x140885,_0x5cc836,_0x2a0495={}){const _0x5e0d0e=a0_0x4e8c,_0x238ba={'dYcQa':_0x5e0d0e(0x170),'LFbcT':_0x5e0d0e(0x168),'LKiys':_0x5e0d0e(0x159),'LxmAb':_0x5e0d0e(0x15f),'oAABb':_0x5e0d0e(0x175),'JTGSg':_0x5e0d0e(0x16c)};try{const _0x4d935e={'event':_0x238ba[_0x5e0d0e(0x162)],'timestamp':new Date()[_0x5e0d0e(0x176)](),'deleted_data':_0x5cc836},_0x577074=await axios['post'](_0x140885,_0x4d935e,{'headers':{'Content-Type':_0x238ba['LFbcT'],'User-Agent':_0x238ba[_0x5e0d0e(0x16d)],..._0x2a0495},'timeout':0x2710});return console[_0x5e0d0e(0x15b)]('Delete\x20webhook\x20sent\x20to\x20'+_0x140885+',\x20Status:\x20'+_0x577074['status']),{'success':!![],'message':_0x238ba[_0x5e0d0e(0x165)],'status':_0x577074[_0x5e0d0e(0x16f)],'url':_0x140885};}catch(_0x442978){return console[_0x5e0d0e(0x167)](_0x238ba[_0x5e0d0e(0x173)],_0x442978[_0x5e0d0e(0x15e)]),{'success':![],'message':_0x238ba[_0x5e0d0e(0x15d)],'error':_0x442978['message'],'url':_0x140885};}}module[a0_0x416d09(0x169)]={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
@@ -1 +1 @@
1
- const a0_0x1fde5f=a0_0xed83;function a0_0xed83(_0x3e161a,_0x3c7cc6){_0x3e161a=_0x3e161a-0x1f1;const _0x44fe43=a0_0x44fe();let _0xed838e=_0x44fe43[_0x3e161a];if(a0_0xed83['NbOQNZ']===undefined){var _0x1dde5e=function(_0x3850c3){const _0x726cb5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3a8ac8='',_0x5022b0='';for(let _0x166ab4=0x0,_0x476f2c,_0x37b11d,_0x1bd377=0x0;_0x37b11d=_0x3850c3['charAt'](_0x1bd377++);~_0x37b11d&&(_0x476f2c=_0x166ab4%0x4?_0x476f2c*0x40+_0x37b11d:_0x37b11d,_0x166ab4++%0x4)?_0x3a8ac8+=String['fromCharCode'](0xff&_0x476f2c>>(-0x2*_0x166ab4&0x6)):0x0){_0x37b11d=_0x726cb5['indexOf'](_0x37b11d);}for(let _0x4bb322=0x0,_0x2a14ce=_0x3a8ac8['length'];_0x4bb322<_0x2a14ce;_0x4bb322++){_0x5022b0+='%'+('00'+_0x3a8ac8['charCodeAt'](_0x4bb322)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5022b0);};a0_0xed83['TxLLBJ']=_0x1dde5e,a0_0xed83['uXvbSl']={},a0_0xed83['NbOQNZ']=!![];}const _0x596030=_0x44fe43[0x0],_0x128781=_0x3e161a+_0x596030,_0x3459f9=a0_0xed83['uXvbSl'][_0x128781];return!_0x3459f9?(_0xed838e=a0_0xed83['TxLLBJ'](_0xed838e),a0_0xed83['uXvbSl'][_0x128781]=_0xed838e):_0xed838e=_0x3459f9,_0xed838e;}(function(_0xc93038,_0x435f18){const _0x13da91=a0_0xed83,_0x307a14=_0xc93038();while(!![]){try{const _0x59dee2=-parseInt(_0x13da91(0x202))/0x1*(-parseInt(_0x13da91(0x205))/0x2)+-parseInt(_0x13da91(0x1f4))/0x3+parseInt(_0x13da91(0x1fa))/0x4*(-parseInt(_0x13da91(0x204))/0x5)+parseInt(_0x13da91(0x20f))/0x6+parseInt(_0x13da91(0x1f1))/0x7+-parseInt(_0x13da91(0x1fd))/0x8+parseInt(_0x13da91(0x20c))/0x9;if(_0x59dee2===_0x435f18)break;else _0x307a14['push'](_0x307a14['shift']());}catch(_0x1dec69){_0x307a14['push'](_0x307a14['shift']());}}}(a0_0x44fe,0xad384));function a0_0x44fe(){const _0x238b9f=['uM91DgvY','C3vJy2vZCW','nZq3mJmWnfHpswHQra','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExm','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihjLBgvHC2u','mty1nJy4n2HIDffcDG','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','rNzHsfK','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSihr0BcWGB3DUzxi','C3rHDhvZ','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSigXVy2TFDg9Rzw4','nJa2nJrRufnsyxm','CLzLt3q','zxHWB3j0CW','mteYnJyWnJrut1nTt0K','qwHSy3i','ELzks20','BwvZC2fNzq','Bg9JA19Hy3f1AxjLx3jVDxrLx2vYCM9Y','mtDrt2jeqw8','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRigfJCxvPC2L0Aw9U','nde1wMjztw1u','mta1mdiYA3jdChbH','Cg9ZDa','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','ANnVBG','CMvSzwfZzvjLC291CMnLtg9JA3m','zg1osuq','EMfMBue','mtaYntC2ntfXrLnqCwq','tfnqtxi','Bg9JA19YzwXLyxnLx3jVDxrLx2vYCM9Y','ndK3mZi1meDSwgrHBq','yM9KEq','tg9JAYbHy3f1AxjLihjVDxrLigvYCM9YoIa'];a0_0x44fe=function(){return _0x238b9f;};return a0_0x44fe();}const express=require('express'),{logger}=require('../../utils/logger');function createLockRoutes(){const _0xfa7870=a0_0xed83,_0x3266c9={'mnqQx':function(_0x252070,_0xbf7fba){return _0x252070(_0xbf7fba);},'Ahlcr':function(_0x1d428b,_0x5df883){return _0x1d428b||_0x5df883;},'RZgwy':function(_0x3a7fec){return _0x3a7fec();},'aJrQJ':'Resource\x20lock\x20conflict','dmNID':_0xfa7870(0x201),'rVeOt':_0xfa7870(0x203),'zafmA':_0xfa7870(0x1f9),'hAKUw':function(_0x56aa65){return _0x56aa65();},'LSPMr':_0xfa7870(0x20e),'zVJKm':_0xfa7870(0x1f3),'fYabA':'Internal\x20server\x20error\x20during\x20lock\x20status\x20check','FvaHY':'/acquire'},_0x4628bb=express[_0xfa7870(0x212)]();let _0x48f5ac=null;function _0x7d117b(){const _0x5225d0=_0xfa7870;return!_0x48f5ac&&(_0x48f5ac=_0x3266c9['mnqQx'](require,_0x5225d0(0x207))),_0x48f5ac;}return _0x4628bb['post'](_0x3266c9[_0xfa7870(0x1f6)],async(_0x5e39b8,_0x2a6096)=>{const _0x3ef8d1=_0xfa7870;try{const {resource:_0x160f26,lock_keys:_0x1514b6,ttl:_0x108c10,owner:_0x479214}=_0x5e39b8[_0x3ef8d1(0x210)];if(_0x3266c9[_0x3ef8d1(0x1fe)](!_0x160f26,!_0x1514b6)||!_0x108c10||!_0x479214)return _0x2a6096[_0x3ef8d1(0x1f8)](0x190)['json']({'success':![],'error':_0x3ef8d1(0x1f7)});const _0x186940=_0x3266c9['RZgwy'](_0x7d117b),_0x3f8138=await _0x186940['acquireResourceLocks']({'resource':_0x160f26,'lockKeys':_0x1514b6,'ttl':_0x108c10,'owner':_0x479214});if(_0x3f8138['success'])return _0x2a6096['json'](_0x3f8138);const _0x32e0d1=_0x3f8138['error']===_0x3266c9['aJrQJ']?0x199:0x190;return _0x2a6096[_0x3ef8d1(0x1f8)](_0x32e0d1)['json'](_0x3f8138);}catch(_0x3e3b05){logger['error']({'event':_0x3266c9[_0x3ef8d1(0x20a)],'error':_0x3e3b05['message']},_0x3ef8d1(0x211)+_0x3e3b05['message']),_0x2a6096[_0x3ef8d1(0x1f8)](0x1f4)[_0x3ef8d1(0x208)]({'success':![],'error':_0x3266c9[_0x3ef8d1(0x1fb)]});}}),_0x4628bb[_0xfa7870(0x206)]('/release',async(_0x581762,_0x623dce)=>{const _0x34491c=_0xfa7870;try{const {resource:_0x2638f1,lock_keys:_0x5ff126,lock_token:_0x341410}=_0x581762[_0x34491c(0x210)];if(!_0x2638f1||!_0x5ff126||!_0x341410)return _0x623dce[_0x34491c(0x1f8)](0x190)['json']({'success':![],'error':_0x3266c9[_0x34491c(0x20b)]});const _0x215202=_0x3266c9['hAKUw'](_0x7d117b),_0x35348b=await _0x215202[_0x34491c(0x209)]({'resource':_0x2638f1,'lockKeys':_0x5ff126,'lockToken':_0x341410});if(_0x35348b[_0x34491c(0x213)])return _0x623dce['json'](_0x35348b);return _0x623dce[_0x34491c(0x1f8)](0x190)['json'](_0x35348b);}catch(_0x8c2ca6){logger['error']({'event':_0x3266c9[_0x34491c(0x20d)],'error':_0x8c2ca6['message']},_0x34491c(0x1f5)+_0x8c2ca6['message']),_0x623dce[_0x34491c(0x1f8)](0x1f4)['json']({'success':![],'error':_0x3266c9[_0x34491c(0x1ff)]});}}),_0x4628bb[_0xfa7870(0x206)]('/status',async(_0x2ff566,_0x46a3ff)=>{const _0x192b35=_0xfa7870;try{const {resource:_0x27140f,lock_keys:_0x9c361a}=_0x2ff566[_0x192b35(0x210)];if(_0x3266c9['Ahlcr'](!_0x27140f,!_0x9c361a))return _0x46a3ff[_0x192b35(0x1f8)](0x190)['json']({'success':![],'error':_0x192b35(0x1f2)});const _0x238341=_0x3266c9['hAKUw'](_0x7d117b),_0x432754=await _0x238341['getResourceLockStatus']({'resource':_0x27140f,'lockKeys':_0x9c361a});if(_0x432754[_0x192b35(0x213)])return _0x46a3ff[_0x192b35(0x208)](_0x432754);return _0x46a3ff[_0x192b35(0x1f8)](0x190)[_0x192b35(0x208)](_0x432754);}catch(_0x231952){logger['error']({'event':'lock_status_route_error','error':_0x231952[_0x192b35(0x200)]},'Lock\x20status\x20route\x20error:\x20'+_0x231952[_0x192b35(0x200)]),_0x46a3ff['status'](0x1f4)['json']({'success':![],'error':_0x3266c9['fYabA']});}}),_0x4628bb;}module[a0_0x1fde5f(0x1fc)]=createLockRoutes;
1
+ function a0_0x46f2(_0x3bef82,_0x2f67d1){_0x3bef82=_0x3bef82-0x19f;const _0x4a7f00=a0_0x4a7f();let _0x46f2cf=_0x4a7f00[_0x3bef82];if(a0_0x46f2['noOUSv']===undefined){var _0x5de70a=function(_0x141315){const _0x3f40ff='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x314ff6='',_0x718a87='';for(let _0x330061=0x0,_0x3c41ac,_0x464e79,_0x3da7b9=0x0;_0x464e79=_0x141315['charAt'](_0x3da7b9++);~_0x464e79&&(_0x3c41ac=_0x330061%0x4?_0x3c41ac*0x40+_0x464e79:_0x464e79,_0x330061++%0x4)?_0x314ff6+=String['fromCharCode'](0xff&_0x3c41ac>>(-0x2*_0x330061&0x6)):0x0){_0x464e79=_0x3f40ff['indexOf'](_0x464e79);}for(let _0x14e23b=0x0,_0x3b95ae=_0x314ff6['length'];_0x14e23b<_0x3b95ae;_0x14e23b++){_0x718a87+='%'+('00'+_0x314ff6['charCodeAt'](_0x14e23b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x718a87);};a0_0x46f2['rJMNiy']=_0x5de70a,a0_0x46f2['tYKLOe']={},a0_0x46f2['noOUSv']=!![];}const _0x1b87d6=_0x4a7f00[0x0],_0x3ae36b=_0x3bef82+_0x1b87d6,_0x47515e=a0_0x46f2['tYKLOe'][_0x3ae36b];return!_0x47515e?(_0x46f2cf=a0_0x46f2['rJMNiy'](_0x46f2cf),a0_0x46f2['tYKLOe'][_0x3ae36b]=_0x46f2cf):_0x46f2cf=_0x47515e,_0x46f2cf;}(function(_0x4b6a61,_0x1d9ffd){const _0x39a039=a0_0x46f2,_0xba903e=_0x4b6a61();while(!![]){try{const _0x4e3428=parseInt(_0x39a039(0x1ae))/0x1+parseInt(_0x39a039(0x1b8))/0x2+parseInt(_0x39a039(0x1a0))/0x3+parseInt(_0x39a039(0x1b2))/0x4*(parseInt(_0x39a039(0x1aa))/0x5)+parseInt(_0x39a039(0x1b0))/0x6+parseInt(_0x39a039(0x1a5))/0x7+-parseInt(_0x39a039(0x1a6))/0x8*(parseInt(_0x39a039(0x1a1))/0x9);if(_0x4e3428===_0x1d9ffd)break;else _0xba903e['push'](_0xba903e['shift']());}catch(_0xca5f83){_0xba903e['push'](_0xba903e['shift']());}}}(a0_0x4a7f,0x8b954));function a0_0x4a7f(){const _0x12d254=['C3rHDhvZ','nwT6AgzisG','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','ANnVBG','uLLOyxC','otmZodK5AuH2uw9w','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRigfJCxvPC2L0Aw9U','mtC3nZCXmfDgu2LuAG','B2LksLa','nda2ndq5mMT2EhvNtW','vxzOExe','tg9JAYbZDgf0DxmGCM91DguGzxjYB3i6ia','l2fJCxvPCMu','zxjYB3i','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihn0yxr1CYbJAgvJAW','odaWntu0q1PyzgPs','zLPttKq','BwvZC2fNzq','mJqYnJaXv0zkBvDV','mtqWotG5ntLdwfvbuNi','l3jLBgvHC2u','yM9KEq','C3vJy2vZCW','nJG0mty4muPsvgftEa','mtzes3P6s2q','rMXszM0','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa'];a0_0x4a7f=function(){return _0x12d254;};return a0_0x4a7f();}const express=require('express'),{logger}=require('../../utils/logger');function createLockRoutes(){const _0x388bed=a0_0x46f2,_0x184b08={'PqvdP':function(_0x42c933,_0x4d413d){return _0x42c933(_0x4d413d);},'bWEYF':function(_0x5cf73c,_0x11c3df){return _0x5cf73c||_0x11c3df;},'fZSND':function(_0x6c4dfe){return _0x6c4dfe();},'tTXDF':function(_0x5b8433,_0x1a727e){return _0x5b8433===_0x1a727e;},'OjMnM':_0x388bed(0x1ab),'stabg':_0x388bed(0x1af),'FlRfm':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20lock_token','hDKrV':'lock_release_route_error','Uvhyq':'Internal\x20server\x20error\x20during\x20lock\x20release','RYhaw':'Missing\x20required\x20fields:\x20resource,\x20lock_keys','oiJJP':_0x388bed(0x1a2),'DCBww':'/status'},_0x525f37=express['Router']();let _0x4cf5b2=null;function _0x2a5933(){return!_0x4cf5b2&&(_0x4cf5b2=_0x184b08['PqvdP'](require,'./resource-lock-manager')),_0x4cf5b2;}return _0x525f37['post'](_0x388bed(0x1b5),async(_0x2cce20,_0x3d6d67)=>{const _0x581ad8=_0x388bed;try{const {resource:_0x3b6b70,lock_keys:_0x93ed99,ttl:_0x39e7d1,owner:_0x5133c3}=_0x2cce20[_0x581ad8(0x1a3)];if(_0x184b08['bWEYF'](!_0x3b6b70,!_0x93ed99)||!_0x39e7d1||!_0x5133c3)return _0x3d6d67[_0x581ad8(0x1a9)](0x190)['json']({'success':![],'error':'Missing\x20required\x20fields:\x20resource,\x20lock_keys,\x20ttl,\x20owner'});const _0x1bdc4f=_0x184b08[_0x581ad8(0x1b9)](_0x2a5933),_0xf9d96b=await _0x1bdc4f['acquireResourceLocks']({'resource':_0x3b6b70,'lockKeys':_0x93ed99,'ttl':_0x39e7d1,'owner':_0x5133c3});if(_0xf9d96b[_0x581ad8(0x1a4)])return _0x3d6d67['json'](_0xf9d96b);const _0x7e2061=_0x184b08['tTXDF'](_0xf9d96b[_0x581ad8(0x1b6)],_0x184b08['OjMnM'])?0x199:0x190;return _0x3d6d67['status'](_0x7e2061)['json'](_0xf9d96b);}catch(_0x233c18){logger[_0x581ad8(0x1b6)]({'event':'lock_acquire_route_error','error':_0x233c18[_0x581ad8(0x19f)]},'Lock\x20acquire\x20route\x20error:\x20'+_0x233c18[_0x581ad8(0x19f)]),_0x3d6d67[_0x581ad8(0x1a9)](0x1f4)['json']({'success':![],'error':_0x184b08['stabg']});}}),_0x525f37['post'](_0x184b08[_0x388bed(0x1b1)],async(_0x1fd848,_0x3ae021)=>{const _0x57b004=_0x388bed;try{const {resource:_0x161a3f,lock_keys:_0x4c952c,lock_token:_0x4c9808}=_0x1fd848[_0x57b004(0x1a3)];if(!_0x161a3f||!_0x4c952c||!_0x4c9808)return _0x3ae021[_0x57b004(0x1a9)](0x190)['json']({'success':![],'error':_0x184b08[_0x57b004(0x1a7)]});const _0x41c2d5=_0x184b08['fZSND'](_0x2a5933),_0x116d60=await _0x41c2d5['releaseResourceLocks']({'resource':_0x161a3f,'lockKeys':_0x4c952c,'lockToken':_0x4c9808});if(_0x116d60['success'])return _0x3ae021['json'](_0x116d60);return _0x3ae021[_0x57b004(0x1a9)](0x190)[_0x57b004(0x1ac)](_0x116d60);}catch(_0x298647){logger['error']({'event':_0x184b08['hDKrV'],'error':_0x298647[_0x57b004(0x19f)]},_0x57b004(0x1a8)+_0x298647['message']),_0x3ae021[_0x57b004(0x1a9)](0x1f4)[_0x57b004(0x1ac)]({'success':![],'error':_0x184b08[_0x57b004(0x1b3)]});}}),_0x525f37['post'](_0x184b08['DCBww'],async(_0x1c20b3,_0x5f48e7)=>{const _0x521572=_0x388bed;try{const {resource:_0x39c5f0,lock_keys:_0x558507}=_0x1c20b3[_0x521572(0x1a3)];if(_0x184b08['bWEYF'](!_0x39c5f0,!_0x558507))return _0x5f48e7[_0x521572(0x1a9)](0x190)['json']({'success':![],'error':_0x184b08[_0x521572(0x1ad)]});const _0x599d5e=_0x2a5933(),_0x10552c=await _0x599d5e['getResourceLockStatus']({'resource':_0x39c5f0,'lockKeys':_0x558507});if(_0x10552c['success'])return _0x5f48e7[_0x521572(0x1ac)](_0x10552c);return _0x5f48e7['status'](0x190)[_0x521572(0x1ac)](_0x10552c);}catch(_0x1fa29d){logger[_0x521572(0x1b6)]({'event':'lock_status_route_error','error':_0x1fa29d['message']},_0x521572(0x1b4)+_0x1fa29d['message']),_0x5f48e7['status'](0x1f4)['json']({'success':![],'error':_0x521572(0x1b7)});}}),_0x525f37;}module['exports']=createLockRoutes;
@@ -1 +1 @@
1
- const a0_0x28107a=a0_0xb3a1;(function(_0x100d72,_0x245729){const _0x48a052=a0_0xb3a1,_0x1bc11d=_0x100d72();while(!![]){try{const _0x29b02a=parseInt(_0x48a052(0x99))/0x1+parseInt(_0x48a052(0xae))/0x2*(-parseInt(_0x48a052(0xca))/0x3)+parseInt(_0x48a052(0xbf))/0x4*(-parseInt(_0x48a052(0x95))/0x5)+parseInt(_0x48a052(0xa8))/0x6*(-parseInt(_0x48a052(0x97))/0x7)+parseInt(_0x48a052(0xc5))/0x8+-parseInt(_0x48a052(0xb1))/0x9+parseInt(_0x48a052(0xa6))/0xa;if(_0x29b02a===_0x245729)break;else _0x1bc11d['push'](_0x1bc11d['shift']());}catch(_0x4ecfa4){_0x1bc11d['push'](_0x1bc11d['shift']());}}}(a0_0x533e,0xd7aa9));const redisClient=require('../../utils/redis-client'),{logger}=require('../../utils/logger'),{v4:uuidv4}=require('uuid');function a0_0x533e(){const _0x41c9d7=['zw52','DMfSAwq','m1vlquP3zq','BNvTyMvY','C3vIC3rYAw5N','Bg9JA19RzxLZwW','DhrSuMvTywLUAw5N','zgHSsM8','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','BwLU','t1Dpyuq','ywnXDwLYzvjLC291CMnLtg9JA3m','BgvUz3rO','BwvZC2fNzq','t3rrCgy','EeTorhe','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','nuLjwxzHDq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mta4odqWovviDev0Da','ywXS','mti5nJm4owfXqwPSAq','Bunwu3y','AxnbCNjHEq','Bg5tD1G','z2v0twf4vfrmu2vJB25KCW','A2v5','x2DLDenVBMzSAwn0sw5MBW','z2v0','x3jVBgXIywnRs2v5CW','B3DUzxi','BM93','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','D3rgs2W','mtaZotyYmZbWsgPry00','ChvZAa','ndj6zuPkv3a','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','ENz5zLO','zxHWB3j0CW','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','mtCWmdC5ogT0qKDXAG','tg9JAYbYzwXLyxnLigzHAwXLzdOG','D2fYBG','ntKWmZi4owvbrunYwq','ywfrzNu','zxH0CMfJDe93BMvY','oNjSB2nRoG','u1PNzxi','BwfW','C3rYAw5N','igTLExmSifrutdOG','yNvPBgrlzxK','CMvSzwfZzvjLC291CMnLtg9JA3m','t3Pvu3K','z2v0q2XPzw50','Cgjtvhy','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','mtaZndm0ofnUB2L6rG','z2vUzxjHDgvuB2TLBG','te9ds19srvnpvvjdrv9nqvHFvfrm','zxjYB3i','DMfSDwu','x3zHBgLKyxrLqwnXDwLYzuLUChv0','mteYmduZodr1wunXz1C','s0XLsxa','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y'];a0_0x533e=function(){return _0x41c9d7;};return a0_0x533e();}function getPrefix(){const _0x47e15c=a0_0xb3a1,_0x26b3a5=process[_0x47e15c(0xc8)][_0x47e15c(0x96)]||'default';return'rf:'+_0x26b3a5+_0x47e15c(0xb4);}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT='\x0a\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20else\x0a\x20\x20\x20\x20return\x200\x0a\x20\x20end\x0a';class ResourceLockManager{[a0_0x28107a(0xb9)](_0x2a0cfc,_0x4b3c92,_0x13c9c0){const _0x55d13b={'lDVae':function(_0x167a43){return _0x167a43();}};return''+_0x55d13b['lDVae'](getPrefix)+_0x2a0cfc+':'+_0x4b3c92+':'+_0x13c9c0;}[a0_0x28107a(0xc0)](_0x11652c){const _0x590222=a0_0x28107a;return _0x11652c+':'+uuidv4()+':'+Date[_0x590222(0xa3)]();}['extractOwner'](_0x5e177a){const _0x52a521=a0_0x28107a;if(!_0x5e177a)return'unknown';const _0x482e92=_0x5e177a['indexOf'](':');return _0x482e92>0x0?_0x5e177a[_0x52a521(0xcc)](0x0,_0x482e92):_0x5e177a;}['getMaxTTLSeconds'](){const _0x2e9690=a0_0x28107a;return parseInt(process[_0x2e9690(0xc8)][_0x2e9690(0xc1)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x28107a(0x8f)]({resource:_0x35a405,lockKeys:_0x44f7b2,ttl:_0x1f585e,owner:_0x551449}){const _0x35d45c=a0_0x28107a,_0x59d2ef={'aaQfu':function(_0x4bed0b,_0x35f993){return _0x4bed0b<_0x35f993;},'KLeIp':function(_0x2f4f7d,_0x5bee1c){return _0x2f4f7d===_0x5bee1c;},'xKNDq':'resource_lock_conflict','mCVSv':'Resource\x20lock\x20conflict','qXATn':'resource_lock_acquired','dEMPp':'resource_lock_rollback_error','QQafv':'resource_lock_acquire_error'},_0x239cef=this[_0x35d45c(0xc4)]({'resource':_0x35a405,'lockKeys':_0x44f7b2,'ttl':_0x1f585e,'owner':_0x551449});if(!_0x239cef[_0x35d45c(0xc9)])return{'success':![],'error':_0x239cef['error']};const _0x231871=this[_0x35d45c(0x9d)](),_0x25b246=Math[_0x35d45c(0x8d)](_0x1f585e,_0x231871),_0x5082dd=this[_0x35d45c(0xc0)](_0x551449),_0x1790d2=[];try{const _0x22abdb=redisClient[_0x35d45c(0xbc)]();for(let _0x9a27d7=0x0;_0x59d2ef[_0x35d45c(0xb2)](_0x9a27d7,_0x44f7b2[_0x35d45c(0x90)]);_0x9a27d7++){const {key:_0x1d5f75,value:_0x184b04}=_0x44f7b2[_0x9a27d7],_0x22e045=this['buildKey'](_0x35a405,_0x1d5f75,_0x184b04),_0x3f4cb1=await _0x22abdb['set'](_0x22e045,_0x5082dd,'EX',_0x25b246,'NX');if(_0x59d2ef[_0x35d45c(0xc6)](_0x3f4cb1,'OK'))_0x1790d2[_0x35d45c(0xa7)](_0x22e045);else{await this[_0x35d45c(0xa1)](_0x22abdb,_0x1790d2,_0x5082dd);const _0x46b44d=await this['_getConflictInfo'](_0x22abdb,_0x22e045);return logger[_0x35d45c(0xb0)]({'event':_0x59d2ef[_0x35d45c(0x93)],'resource':_0x35a405,'conflicting_key':{'key':_0x1d5f75,'value':_0x184b04},'locked_by':_0x46b44d['owner'],'ttl_remaining':_0x46b44d[_0x35d45c(0x89)],'attempted_by':_0x551449},'Resource\x20lock\x20conflict\x20on\x20'+_0x35a405+':'+_0x1d5f75+':'+_0x184b04),{'success':![],'error':_0x59d2ef[_0x35d45c(0x9a)],'data':{'conflicting_key':{'key':_0x1d5f75,'value':_0x184b04},'locked_by':_0x46b44d[_0x35d45c(0xa2)],'ttl_remaining':_0x46b44d[_0x35d45c(0x89)]}};}}const _0x579eac=_0x44f7b2[_0x35d45c(0xb6)](({key:_0x25dd86,value:_0x2f00af})=>({'key':_0x25dd86,'value':_0x2f00af,'lock_key':this[_0x35d45c(0xb9)](_0x35a405,_0x25dd86,_0x2f00af)}));return logger['info']({'event':_0x59d2ef['qXATn'],'resource':_0x35a405,'keys_count':_0x44f7b2[_0x35d45c(0x90)],'ttl':_0x25b246,'owner':_0x551449},'Resource\x20lock\x20acquired:\x20'+_0x35a405+'\x20('+_0x44f7b2[_0x35d45c(0x90)]+_0x35d45c(0xb8)+_0x25b246+'s)'),{'success':!![],'data':{'lock_token':_0x5082dd,'resource':_0x35a405,'locked_keys':_0x579eac,'ttl':_0x25b246,'owner':_0x551449,'acquired_at':new Date()['toISOString']()}};}catch(_0x42ebd6){try{const _0x5a3e6e=redisClient[_0x35d45c(0xbc)]();await this[_0x35d45c(0xa1)](_0x5a3e6e,_0x1790d2,_0x5082dd);}catch(_0x73c22c){logger['error']({'event':_0x59d2ef['dEMPp'],'error':_0x73c22c['message']},_0x35d45c(0xa4));}return logger['error']({'event':_0x59d2ef['QQafv'],'resource':_0x35a405,'owner':_0x551449,'error':_0x42ebd6['message']},'Resource\x20lock\x20acquire\x20error:\x20'+_0x42ebd6['message']),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x42ebd6['message']};}}async[a0_0x28107a(0xba)]({resource:_0x31f68e,lockKeys:_0x4eff3c,lockToken:_0x42f1da}){const _0x38dcb4=a0_0x28107a,_0x51e94e={'skErc':'resource_lock_released'},_0x40a210=this['_validateReleaseInput']({'resource':_0x31f68e,'lockKeys':_0x4eff3c,'lockToken':_0x42f1da});if(!_0x40a210[_0x38dcb4(0xc9)])return{'success':![],'error':_0x40a210['error']};try{const _0x25c955=redisClient[_0x38dcb4(0xbc)]();let _0x4cfcc7=0x0;for(const {key:_0x1973ab,value:_0x2f1fda}of _0x4eff3c){const _0x5d5498=this[_0x38dcb4(0xb9)](_0x31f68e,_0x1973ab,_0x2f1fda),_0xb66793=await _0x25c955['eval'](RELEASE_LUA_SCRIPT,0x1,_0x5d5498,_0x42f1da);_0xb66793===0x1&&_0x4cfcc7++;}return logger['info']({'event':_0x51e94e['skErc'],'resource':_0x31f68e,'released_keys':_0x4cfcc7,'total_keys':_0x4eff3c['length'],'owner':this[_0x38dcb4(0xb3)](_0x42f1da)},_0x38dcb4(0xa9)+_0x31f68e+'\x20('+_0x4cfcc7+'/'+_0x4eff3c['length']+'\x20keys)'),{'success':!![],'data':{'resource':_0x31f68e,'released_keys':_0x4cfcc7,'total_keys':_0x4eff3c[_0x38dcb4(0x90)]}};}catch(_0x166fbc){return logger[_0x38dcb4(0xc2)]({'event':_0x38dcb4(0xc7),'resource':_0x31f68e,'error':_0x166fbc[_0x38dcb4(0x91)]},_0x38dcb4(0xac)+_0x166fbc['message']),{'success':![],'error':_0x38dcb4(0xaf)+_0x166fbc[_0x38dcb4(0x91)]};}}async['getResourceLockStatus']({resource:_0x2e096e,lockKeys:_0x5ea36a}){const _0x2b7c4c=a0_0x28107a,_0x4f574b={'OWOaD':'resource\x20and\x20lock_keys\x20are\x20required','HsHCM':function(_0x13a2f8,_0x4f14c6){return _0x13a2f8!==_0x4f14c6;},'QKpMT':function(_0x371bff,_0x110e62){return _0x371bff>_0x110e62;},'RQXke':'resource_lock_status_error'};if(!_0x2e096e||!Array['isArray'](_0x5ea36a)||_0x5ea36a[_0x2b7c4c(0x90)]===0x0)return{'success':![],'error':_0x4f574b[_0x2b7c4c(0x8e)]};try{const _0x12dd0d=redisClient['getClient'](),_0x4e4056=[];for(const {key:_0x5bbcb6,value:_0x128fd6}of _0x5ea36a){const _0x3ae2fb=this[_0x2b7c4c(0xb9)](_0x2e096e,_0x5bbcb6,_0x128fd6),[_0x39af6c,_0x49e7d6]=await Promise['all']([_0x12dd0d[_0x2b7c4c(0xa0)](_0x3ae2fb),_0x12dd0d['ttl'](_0x3ae2fb)]),_0x48ed27=_0x4f574b['HsHCM'](_0x39af6c,null);_0x4e4056[_0x2b7c4c(0xa7)]({'key':_0x5bbcb6,'value':_0x128fd6,'locked':_0x48ed27,'owner':_0x48ed27?this[_0x2b7c4c(0xb3)](_0x39af6c):null,'ttl_remaining':_0x48ed27&&_0x4f574b['QKpMT'](_0x49e7d6,0x0)?_0x49e7d6:null});}return{'success':!![],'data':{'resource':_0x2e096e,'keys':_0x4e4056}};}catch(_0x3fa23b){return logger[_0x2b7c4c(0xc2)]({'event':_0x4f574b['RQXke'],'resource':_0x2e096e,'error':_0x3fa23b['message']},_0x2b7c4c(0x94)+_0x3fa23b[_0x2b7c4c(0x91)]),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0x3fa23b[_0x2b7c4c(0x91)]};}}async['_rollbackKeys'](_0x3edc78,_0x1f408d,_0x4dce44){const _0x513560=a0_0x28107a;for(const _0x333dda of _0x1f408d){try{await _0x3edc78['eval'](RELEASE_LUA_SCRIPT,0x1,_0x333dda,_0x4dce44);}catch(_0x6f8ac8){logger[_0x513560(0xc2)]({'event':'resource_lock_rollback_key_error','key':_0x333dda,'error':_0x6f8ac8[_0x513560(0x91)]},_0x513560(0xbe)+_0x333dda);}}}async[a0_0x28107a(0x9f)](_0x372a98,_0x592a90){const _0x2a2545=a0_0x28107a,_0x41c039={'SZger':'unknown'};try{const [_0x2b9985,_0x5a7dbe]=await Promise[_0x2a2545(0x98)]([_0x372a98['get'](_0x592a90),_0x372a98['ttl'](_0x592a90)]);return{'owner':_0x2b9985?this[_0x2a2545(0xb3)](_0x2b9985):_0x41c039[_0x2a2545(0xb5)],'ttlRemaining':_0x5a7dbe>0x0?_0x5a7dbe:null};}catch{return{'owner':_0x41c039['SZger'],'ttlRemaining':null};}}[a0_0x28107a(0xc4)]({resource:_0x3d94c4,lockKeys:_0x479004,ttl:_0x171d73,owner:_0x3697e4}){const _0x8440dc=a0_0x28107a,_0x542b7f={'OzUSy':_0x8440dc(0x8c),'wtFKl':function(_0x3feabf,_0x2950ea){return _0x3feabf>_0x2950ea;},'sgRgV':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items','BTqBx':function(_0x1b0157,_0x5c5a03){return _0x1b0157<_0x5c5a03;},'zvyfZ':_0x8440dc(0xcb),'OtQpf':function(_0x5def36,_0x21bdb3){return _0x5def36<_0x21bdb3;},'dhlJo':function(_0x5ef30b,_0x223910){return _0x5ef30b!==_0x223910;},'sknuj':_0x8440dc(0xb7),'KGeVV':_0x8440dc(0x8b)};if(!_0x3d94c4||typeof _0x3d94c4!=='string')return{'valid':![],'error':_0x542b7f[_0x8440dc(0xbb)]};if(!Array[_0x8440dc(0x9b)](_0x479004)||_0x479004[_0x8440dc(0x90)]===0x0)return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};if(_0x542b7f[_0x8440dc(0xa5)](_0x479004['length'],0x64))return{'valid':![],'error':_0x542b7f['sgRgV']};for(let _0x18ed9a=0x0;_0x542b7f['BTqBx'](_0x18ed9a,_0x479004['length']);_0x18ed9a++){const _0x7ac4e0=_0x479004[_0x18ed9a];if(!_0x7ac4e0||!_0x7ac4e0[_0x8440dc(0x9e)]||!_0x7ac4e0[_0x8440dc(0xc3)])return{'valid':![],'error':'lock_keys['+_0x18ed9a+_0x8440dc(0xad)};}if(!_0x171d73||typeof _0x171d73!==_0x542b7f[_0x8440dc(0xaa)]||_0x542b7f[_0x8440dc(0x92)](_0x171d73,0x1))return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x40e459=this[_0x8440dc(0x9d)]();if(_0x171d73>_0x40e459)return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x40e459+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x3697e4||_0x542b7f[_0x8440dc(0x8a)](typeof _0x3697e4,_0x542b7f['sknuj']))return{'valid':![],'error':_0x542b7f['KGeVV']};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x14cd4d,lockKeys:_0x3e7c62,lockToken:_0x1615c9}){const _0x2cbe7a=a0_0x28107a,_0x417562={'IAYAp':function(_0x3f9202,_0x23f00f){return _0x3f9202!==_0x23f00f;},'lnSwX':_0x2cbe7a(0xb7),'pbSTv':function(_0x47dd34,_0x99ac0a){return _0x47dd34===_0x99ac0a;},'lwDVt':function(_0x186a63,_0x219acb){return _0x186a63<_0x219acb;}};if(!_0x14cd4d||_0x417562['IAYAp'](typeof _0x14cd4d,_0x417562['lnSwX']))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array[_0x2cbe7a(0x9b)](_0x3e7c62)||_0x417562[_0x2cbe7a(0xbd)](_0x3e7c62['length'],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x34fa34=0x0;_0x417562['lwDVt'](_0x34fa34,_0x3e7c62['length']);_0x34fa34++){const _0x618a17=_0x3e7c62[_0x34fa34];if(!_0x618a17||!_0x618a17['key']||!_0x618a17[_0x2cbe7a(0xc3)])return{'valid':![],'error':_0x2cbe7a(0xcd)+_0x34fa34+_0x2cbe7a(0xad)};}if(!_0x1615c9||_0x417562['IAYAp'](typeof _0x1615c9,_0x417562[_0x2cbe7a(0x9c)]))return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}function a0_0xb3a1(_0x1f392f,_0x2ea5bd){_0x1f392f=_0x1f392f-0x89;const _0x533eeb=a0_0x533e();let _0xb3a123=_0x533eeb[_0x1f392f];if(a0_0xb3a1['kAasdX']===undefined){var _0x44192a=function(_0x1d0092){const _0x4bb980='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xecd9fa='',_0x6ebfac='';for(let _0x201113=0x0,_0x5709f7,_0x5a1cf3,_0x1a39b2=0x0;_0x5a1cf3=_0x1d0092['charAt'](_0x1a39b2++);~_0x5a1cf3&&(_0x5709f7=_0x201113%0x4?_0x5709f7*0x40+_0x5a1cf3:_0x5a1cf3,_0x201113++%0x4)?_0xecd9fa+=String['fromCharCode'](0xff&_0x5709f7>>(-0x2*_0x201113&0x6)):0x0){_0x5a1cf3=_0x4bb980['indexOf'](_0x5a1cf3);}for(let _0x2f0d94=0x0,_0x539fb2=_0xecd9fa['length'];_0x2f0d94<_0x539fb2;_0x2f0d94++){_0x6ebfac+='%'+('00'+_0xecd9fa['charCodeAt'](_0x2f0d94)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x6ebfac);};a0_0xb3a1['BreQAp']=_0x44192a,a0_0xb3a1['nTOnVn']={},a0_0xb3a1['kAasdX']=!![];}const _0x146e14=_0x533eeb[0x0],_0x42fc8a=_0x1f392f+_0x146e14,_0x8338f3=a0_0xb3a1['nTOnVn'][_0x42fc8a];return!_0x8338f3?(_0xb3a123=a0_0xb3a1['BreQAp'](_0xb3a123),a0_0xb3a1['nTOnVn'][_0x42fc8a]=_0xb3a123):_0xb3a123=_0x8338f3,_0xb3a123;}module[a0_0x28107a(0xab)]=new ResourceLockManager();
1
+ const a0_0x3b09df=a0_0x3f64;(function(_0x15b284,_0x1fef71){const _0x14e699=a0_0x3f64,_0x526dc1=_0x15b284();while(!![]){try{const _0x605600=parseInt(_0x14e699(0x1fa))/0x1*(parseInt(_0x14e699(0x1e1))/0x2)+parseInt(_0x14e699(0x1b7))/0x3*(-parseInt(_0x14e699(0x1a8))/0x4)+-parseInt(_0x14e699(0x1db))/0x5*(parseInt(_0x14e699(0x1d2))/0x6)+parseInt(_0x14e699(0x1de))/0x7*(-parseInt(_0x14e699(0x1af))/0x8)+-parseInt(_0x14e699(0x1e7))/0x9+parseInt(_0x14e699(0x1e8))/0xa*(parseInt(_0x14e699(0x1c1))/0xb)+parseInt(_0x14e699(0x1cd))/0xc;if(_0x605600===_0x1fef71)break;else _0x526dc1['push'](_0x526dc1['shift']());}catch(_0x42c7da){_0x526dc1['push'](_0x526dc1['shift']());}}}(a0_0x2cc7,0xcfc53));function a0_0x2cc7(){const _0x1efaf2=['BwvZC2fNzq','nZqZodC3mfrOCKP2uq','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','B2XswNy','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','Aw5MBW','Bg9JA190B2TLBIbPCYbYzxf1AxjLzcbHBMqGBxvZDcbIzsbHihn0CMLUzW','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','CMvZB3vYy2vFBg9JA19ZDgf0DxnFzxjYB3i','nuT2thbLvq','B3DUzxi','ChvZAa','mJa4mdrvqKHZwM0','rMHiyKu','ywnXDwLYzvjLC291CMnLtg9JA3m','mte2mK5qAxzWEq','A0DzvgK','igTLExmSifrutdOG','C3rYAw5N','AerLEuG','z2v0twf4vfrmu2vJB25KCW','ntm4mZG5ovnsBwrhEq','mZbLA3zNq0K','BwfW','tg9JAYbYzwXLyxnLigzHAwXLzdOG','ywvvvMC','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','A2v5','uvvOzfG','Bvvvt0K','z2vUzxjHDgvuB2TLBG','vMfPC0W','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU','zxjYB3i','Aw5KzxHpzG','CMvZB3vYy2vFBg9JA19Hy3f1AxjLx2vYCM9Y','te9ds19srvnpvvjdrv9nqvHFvfrm','CMvSzwfZzvjLC291CMnLtg9JA3m','ndu0thPJD2f4','CMy6','uMvZB3vYy2uGBg9JAYbJB25MBgLJDcbVBIa','uhP5wuK','nenZAg1lsG','DxvPza','D2fYBG','tvDzsfe','tKXmqwq','DhrSigv4y2vLzhmGBwf4Aw11BsbVzIa','Bg9JA19RzxLZwW','nda3mLrny1HpAG','x2DLDenVBMzSAwn0sw5MBW','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','AxnbCNjHEq','shD0DeO','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','z2v0','mZK3nZC3oeLcDLvOCG','zxH0CMfJDe93BMvY','BgvUz3rO','oNjSB2nRoG','CMvZB3vYy2vFBg9JA19Hy3f1AxjLza','BNvTyMvY','Der4vNG','vwfQteq','lI4VlI4VDxrPBhmVCMvKAxmTy2XPzw50','DMfSDwu','ntm3ntCYmKf3zML4tG','DhrS','zxzHBa','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','yNvPBgrlzxK','BwLU','DMfSAwq','zgvMyxvSDa','Dw5RBM93BG','sKXNwKi','DhrSuMvTywLUAw5N','ndu1nZm5mJrku01uD2C','qNnYwNu','z2v0q2XPzw50','refYENO'];a0_0x2cc7=function(){return _0x1efaf2;};return a0_0x2cc7();}const redisClient=require(a0_0x3b09df(0x1bf)),{logger}=require('../../utils/logger'),{v4:uuidv4}=require(a0_0x3b09df(0x1a9));function getPrefix(){const _0x3adb1f=a0_0x3b09df,_0x1acc97={'BsrZu':_0x3adb1f(0x1c9)},_0x3305c5=process['env']['RESTFORGE_PROJECT_NAME']||_0x1acc97[_0x3adb1f(0x1ce)];return _0x3adb1f(0x1fb)+_0x3305c5+_0x3adb1f(0x1ba);}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT='\x0a\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20else\x0a\x20\x20\x20\x20return\x200\x0a\x20\x20end\x0a';class ResourceLockManager{['buildKey'](_0x505b0d,_0x51f916,_0x4aaead){return''+getPrefix()+_0x505b0d+':'+_0x51f916+':'+_0x4aaead;}['generateToken'](_0x788d7c){const _0x1d3127={'BuNgq':function(_0x5362db){return _0x5362db();}};return _0x788d7c+':'+_0x1d3127['BuNgq'](uuidv4)+':'+Date['now']();}['extractOwner'](_0x1aed56){const _0x11cea0=a0_0x3b09df;if(!_0x1aed56)return'unknown';const _0x293acb=_0x1aed56[_0x11cea0(0x1f6)](':');return _0x293acb>0x0?_0x1aed56['substring'](0x0,_0x293acb):_0x1aed56;}[a0_0x3b09df(0x1e6)](){const _0x2d625a=a0_0x3b09df,_0x40363f={'aeUVg':function(_0x2b3ab5,_0x3555c2,_0x47948b){return _0x2b3ab5(_0x3555c2,_0x47948b);}};return _0x40363f[_0x2d625a(0x1eb)](parseInt,process['env'][_0x2d625a(0x1f8)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x3b09df(0x1e0)]({resource:_0x130087,lockKeys:_0x58aec5,ttl:_0x14de1d,owner:_0xf48589}){const _0x299cfe=a0_0x3b09df,_0x2fbb8a={'NLLAd':function(_0x50565d,_0x416f03){return _0x50565d===_0x416f03;},'olRZv':'Resource\x20lock\x20conflict','mUUOI':'resource_lock_rollback_error','zNEQs':'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error'},_0x31798a=this['_validateAcquireInput']({'resource':_0x130087,'lockKeys':_0x58aec5,'ttl':_0x14de1d,'owner':_0xf48589});if(!_0x31798a[_0x299cfe(0x1c8)])return{'success':![],'error':_0x31798a['error']};const _0x5f55f5=this[_0x299cfe(0x1e6)](),_0x1f7eb7=Math[_0x299cfe(0x1c7)](_0x14de1d,_0x5f55f5),_0x3b9fe2=this[_0x299cfe(0x1f2)](_0xf48589),_0x281f26=[];try{const _0x5693e5=redisClient['getClient']();for(let _0x9ea75b=0x0;_0x9ea75b<_0x58aec5['length'];_0x9ea75b++){const {key:_0x272e9e,value:_0x22ba3b}=_0x58aec5[_0x9ea75b],_0x2e983c=this['buildKey'](_0x130087,_0x272e9e,_0x22ba3b),_0x1ec4cf=await _0x5693e5['set'](_0x2e983c,_0x3b9fe2,'EX',_0x1f7eb7,'NX');if(_0x2fbb8a[_0x299cfe(0x1ac)](_0x1ec4cf,'OK'))_0x281f26[_0x299cfe(0x1dd)](_0x2e983c);else{await this['_rollbackKeys'](_0x5693e5,_0x281f26,_0x3b9fe2);const _0x152d5d=await this[_0x299cfe(0x1b0)](_0x5693e5,_0x2e983c);return logger[_0x299cfe(0x1aa)]({'event':'resource_lock_conflict','resource':_0x130087,'conflicting_key':{'key':_0x272e9e,'value':_0x22ba3b},'locked_by':_0x152d5d[_0x299cfe(0x1dc)],'ttl_remaining':_0x152d5d[_0x299cfe(0x1cc)],'attempted_by':_0xf48589},_0x299cfe(0x1fc)+_0x130087+':'+_0x272e9e+':'+_0x22ba3b),{'success':![],'error':_0x2fbb8a[_0x299cfe(0x1d4)],'data':{'conflicting_key':{'key':_0x272e9e,'value':_0x22ba3b},'locked_by':_0x152d5d['owner'],'ttl_remaining':_0x152d5d[_0x299cfe(0x1cc)]}};}}const _0x53de5d=_0x58aec5[_0x299cfe(0x1e9)](({key:_0x3b43f0,value:_0x149dfd})=>({'key':_0x3b43f0,'value':_0x149dfd,'lock_key':this[_0x299cfe(0x1c6)](_0x130087,_0x3b43f0,_0x149dfd)}));return logger[_0x299cfe(0x1d6)]({'event':_0x299cfe(0x1bb),'resource':_0x130087,'keys_count':_0x58aec5[_0x299cfe(0x1b9)],'ttl':_0x1f7eb7,'owner':_0xf48589},_0x299cfe(0x1c5)+_0x130087+'\x20('+_0x58aec5[_0x299cfe(0x1b9)]+_0x299cfe(0x1e3)+_0x1f7eb7+'s)'),{'success':!![],'data':{'lock_token':_0x3b9fe2,'resource':_0x130087,'locked_keys':_0x53de5d,'ttl':_0x1f7eb7,'owner':_0xf48589,'acquired_at':new Date()['toISOString']()}};}catch(_0x6a733f){try{const _0x17aae7=redisClient['getClient']();await this['_rollbackKeys'](_0x17aae7,_0x281f26,_0x3b9fe2);}catch(_0x219fdf){logger[_0x299cfe(0x1f5)]({'event':_0x2fbb8a[_0x299cfe(0x1f1)],'error':_0x219fdf['message']},_0x2fbb8a['zNEQs']);}return logger['error']({'event':_0x299cfe(0x1f7),'resource':_0x130087,'owner':_0xf48589,'error':_0x6a733f['message']},'Resource\x20lock\x20acquire\x20error:\x20'+_0x6a733f['message']),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x6a733f['message']};}}async[a0_0x3b09df(0x1f9)]({resource:_0x560ffd,lockKeys:_0x3f781d,lockToken:_0x37f50f}){const _0x51ef0e=a0_0x3b09df,_0x1a1965={'VTtpw':'resource_lock_release_error'},_0x127316=this['_validateReleaseInput']({'resource':_0x560ffd,'lockKeys':_0x3f781d,'lockToken':_0x37f50f});if(!_0x127316['valid'])return{'success':![],'error':_0x127316[_0x51ef0e(0x1f5)]};try{const _0x4e2970=redisClient['getClient']();let _0x1a78d0=0x0;for(const {key:_0xc9a6cf,value:_0x257cf1}of _0x3f781d){const _0x1a5c36=this[_0x51ef0e(0x1c6)](_0x560ffd,_0xc9a6cf,_0x257cf1),_0x35ac37=await _0x4e2970[_0x51ef0e(0x1c3)](RELEASE_LUA_SCRIPT,0x1,_0x1a5c36,_0x37f50f);_0x35ac37===0x1&&_0x1a78d0++;}return logger[_0x51ef0e(0x1d6)]({'event':_0x51ef0e(0x1d3),'resource':_0x560ffd,'released_keys':_0x1a78d0,'total_keys':_0x3f781d[_0x51ef0e(0x1b9)],'owner':this['extractOwner'](_0x37f50f)},'Resource\x20lock\x20released:\x20'+_0x560ffd+'\x20('+_0x1a78d0+'/'+_0x3f781d['length']+'\x20keys)'),{'success':!![],'data':{'resource':_0x560ffd,'released_keys':_0x1a78d0,'total_keys':_0x3f781d['length']}};}catch(_0xc99cfe){return logger['error']({'event':_0x1a1965['VTtpw'],'resource':_0x560ffd,'error':_0xc99cfe['message']},'Resource\x20lock\x20release\x20error:\x20'+_0xc99cfe['message']),{'success':![],'error':_0x51ef0e(0x1ea)+_0xc99cfe['message']};}}async[a0_0x3b09df(0x1d8)]({resource:_0x27d262,lockKeys:_0x184fee}){const _0x49694f=a0_0x3b09df,_0xc2ba3f={'FhHbE':function(_0x395ee4,_0x4b428c){return _0x395ee4===_0x4b428c;},'YNEkK':_0x49694f(0x1d5)};if(!_0x27d262||!Array[_0x49694f(0x1b3)](_0x184fee)||_0xc2ba3f[_0x49694f(0x1df)](_0x184fee['length'],0x0))return{'success':![],'error':_0xc2ba3f['YNEkK']};try{const _0x26afa6=redisClient[_0x49694f(0x1cf)](),_0x21ada9=[];for(const {key:_0x4d6ef1,value:_0x5cc5b9}of _0x184fee){const _0x47c360=this[_0x49694f(0x1c6)](_0x27d262,_0x4d6ef1,_0x5cc5b9),[_0x1bdb74,_0x45d668]=await Promise['all']([_0x26afa6[_0x49694f(0x1b6)](_0x47c360),_0x26afa6[_0x49694f(0x1c2)](_0x47c360)]),_0x46df1e=_0x1bdb74!==null;_0x21ada9['push']({'key':_0x4d6ef1,'value':_0x5cc5b9,'locked':_0x46df1e,'owner':_0x46df1e?this['extractOwner'](_0x1bdb74):null,'ttl_remaining':_0x46df1e&&_0x45d668>0x0?_0x45d668:null});}return{'success':!![],'data':{'resource':_0x27d262,'keys':_0x21ada9}};}catch(_0x325c3a){return logger['error']({'event':_0x49694f(0x1da),'resource':_0x27d262,'error':_0x325c3a['message']},_0x49694f(0x1c4)+_0x325c3a['message']),{'success':![],'error':_0x49694f(0x1ee)+_0x325c3a[_0x49694f(0x1d1)]};}}async['_rollbackKeys'](_0xf5b8e1,_0x20b26c,_0x5a686b){const _0xab74ae=a0_0x3b09df;for(const _0x44ce0e of _0x20b26c){try{await _0xf5b8e1['eval'](RELEASE_LUA_SCRIPT,0x1,_0x44ce0e,_0x5a686b);}catch(_0x392ab1){logger['error']({'event':_0xab74ae(0x1b1),'key':_0x44ce0e,'error':_0x392ab1[_0xab74ae(0x1d1)]},_0xab74ae(0x1b5)+_0x44ce0e);}}}async['_getConflictInfo'](_0x3f9a65,_0x110c58){const _0x5408b3=a0_0x3b09df,_0x53aae6={'DArzz':function(_0x4cd694,_0x9cc540){return _0x4cd694>_0x9cc540;},'Emieu':_0x5408b3(0x1ca)};try{const [_0x8c96a7,_0x171f5c]=await Promise['all']([_0x3f9a65['get'](_0x110c58),_0x3f9a65['ttl'](_0x110c58)]);return{'owner':_0x8c96a7?this[_0x5408b3(0x1b8)](_0x8c96a7):_0x5408b3(0x1ca),'ttlRemaining':_0x53aae6[_0x5408b3(0x1d0)](_0x171f5c,0x0)?_0x171f5c:null};}catch{return{'owner':_0x53aae6['Emieu'],'ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x4dff63,lockKeys:_0x27326c,ttl:_0x5377d1,owner:_0x58c276}){const _0x4d95bf=a0_0x3b09df,_0x11c89b={'QUhdX':function(_0x173d04,_0x593c84){return _0x173d04!==_0x593c84;},'tDxVx':'string','lbbDA':_0x4d95bf(0x1ec),'UajLD':function(_0x6ec02,_0x41bdd9){return _0x6ec02>_0x41bdd9;},'kGYTi':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items','JLgZB':function(_0x293fb9,_0x2e9b62){return _0x293fb9<_0x2e9b62;},'hDeyH':function(_0x52b0b9,_0x2c3297){return _0x52b0b9<_0x2c3297;},'PzyYI':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)','VaisL':function(_0x89c265,_0x2a06ff){return _0x89c265!==_0x2a06ff;}};if(!_0x4dff63||_0x11c89b[_0x4d95bf(0x1f0)](typeof _0x4dff63,_0x11c89b[_0x4d95bf(0x1bd)]))return{'valid':![],'error':_0x4d95bf(0x1d9)};if(!Array[_0x4d95bf(0x1b3)](_0x27326c)||_0x27326c[_0x4d95bf(0x1b9)]===0x0)return{'valid':![],'error':_0x11c89b['lbbDA']};if(_0x11c89b[_0x4d95bf(0x1be)](_0x27326c[_0x4d95bf(0x1b9)],0x64))return{'valid':![],'error':_0x11c89b[_0x4d95bf(0x1e2)]};for(let _0x42298b=0x0;_0x11c89b[_0x4d95bf(0x1cb)](_0x42298b,_0x27326c[_0x4d95bf(0x1b9)]);_0x42298b++){const _0x450abe=_0x27326c[_0x42298b];if(!_0x450abe||!_0x450abe[_0x4d95bf(0x1ef)]||!_0x450abe[_0x4d95bf(0x1c0)])return{'valid':![],'error':_0x4d95bf(0x1ae)+_0x42298b+_0x4d95bf(0x1ed)};}if(!_0x5377d1||_0x11c89b['QUhdX'](typeof _0x5377d1,_0x4d95bf(0x1bc))||_0x11c89b[_0x4d95bf(0x1e5)](_0x5377d1,0x1))return{'valid':![],'error':_0x11c89b[_0x4d95bf(0x1a7)]};const _0x56416b=this[_0x4d95bf(0x1e6)]();if(_0x5377d1>_0x56416b)return{'valid':![],'error':_0x4d95bf(0x1ad)+_0x56416b+_0x4d95bf(0x1f4)};if(!_0x58c276||_0x11c89b[_0x4d95bf(0x1f3)](typeof _0x58c276,_0x11c89b[_0x4d95bf(0x1bd)]))return{'valid':![],'error':_0x4d95bf(0x1b2)};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x388266,lockKeys:_0x36af03,lockToken:_0x5ebe19}){const _0x2a5843=a0_0x3b09df,_0x1df58c={'QzuCT':function(_0x40ed0b,_0x411d96){return _0x40ed0b!==_0x411d96;},'HwttJ':function(_0x2fc883,_0x6a4dc9){return _0x2fc883===_0x6a4dc9;},'YISrf':_0x2a5843(0x1ec),'MWYHQ':function(_0x1750d2,_0x32d2f4){return _0x1750d2<_0x32d2f4;},'ZAyzI':_0x2a5843(0x1e4)};if(!_0x388266||_0x1df58c['QzuCT'](typeof _0x388266,'string'))return{'valid':![],'error':_0x2a5843(0x1d9)};if(!Array['isArray'](_0x36af03)||_0x1df58c[_0x2a5843(0x1b4)](_0x36af03['length'],0x0))return{'valid':![],'error':_0x1df58c['YISrf']};for(let _0x5ccdc5=0x0;_0x1df58c[_0x2a5843(0x1ab)](_0x5ccdc5,_0x36af03['length']);_0x5ccdc5++){const _0x20aa5c=_0x36af03[_0x5ccdc5];if(!_0x20aa5c||!_0x20aa5c['key']||!_0x20aa5c['value'])return{'valid':![],'error':'lock_keys['+_0x5ccdc5+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x5ebe19||typeof _0x5ebe19!==_0x1df58c['ZAyzI'])return{'valid':![],'error':_0x2a5843(0x1d7)};return{'valid':!![]};}}function a0_0x3f64(_0x38c252,_0x536b9d){_0x38c252=_0x38c252-0x1a7;const _0x2cc7ed=a0_0x2cc7();let _0x3f6430=_0x2cc7ed[_0x38c252];if(a0_0x3f64['aNpXJh']===undefined){var _0x2a8ba1=function(_0x3779f7){const _0x265e55='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x18a960='',_0x59a49f='';for(let _0x4b778f=0x0,_0xaa1ddf,_0x331093,_0x1784a5=0x0;_0x331093=_0x3779f7['charAt'](_0x1784a5++);~_0x331093&&(_0xaa1ddf=_0x4b778f%0x4?_0xaa1ddf*0x40+_0x331093:_0x331093,_0x4b778f++%0x4)?_0x18a960+=String['fromCharCode'](0xff&_0xaa1ddf>>(-0x2*_0x4b778f&0x6)):0x0){_0x331093=_0x265e55['indexOf'](_0x331093);}for(let _0x5f2f38=0x0,_0x35056a=_0x18a960['length'];_0x5f2f38<_0x35056a;_0x5f2f38++){_0x59a49f+='%'+('00'+_0x18a960['charCodeAt'](_0x5f2f38)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x59a49f);};a0_0x3f64['ctMMth']=_0x2a8ba1,a0_0x3f64['CediyK']={},a0_0x3f64['aNpXJh']=!![];}const _0x18e8db=_0x2cc7ed[0x0],_0x248e55=_0x38c252+_0x18e8db,_0x408e36=a0_0x3f64['CediyK'][_0x248e55];return!_0x408e36?(_0x3f6430=a0_0x3f64['ctMMth'](_0x3f6430),a0_0x3f64['CediyK'][_0x248e55]=_0x3f6430):_0x3f6430=_0x408e36,_0x3f6430;}module['exports']=new ResourceLockManager();
@@ -1 +1 @@
1
- const a0_0x4106cb=a0_0x4b8f;(function(_0x2112a6,_0x28c576){const _0xfa038e=a0_0x4b8f,_0xf78a50=_0x2112a6();while(!![]){try{const _0x5df741=-parseInt(_0xfa038e(0x155))/0x1*(-parseInt(_0xfa038e(0x135))/0x2)+-parseInt(_0xfa038e(0x13e))/0x3*(parseInt(_0xfa038e(0x16b))/0x4)+parseInt(_0xfa038e(0x10d))/0x5+parseInt(_0xfa038e(0x154))/0x6+-parseInt(_0xfa038e(0x144))/0x7*(parseInt(_0xfa038e(0x121))/0x8)+-parseInt(_0xfa038e(0x11a))/0x9*(-parseInt(_0xfa038e(0x15d))/0xa)+parseInt(_0xfa038e(0x110))/0xb*(-parseInt(_0xfa038e(0x14c))/0xc);if(_0x5df741===_0x28c576)break;else _0xf78a50['push'](_0xf78a50['shift']());}catch(_0x4a080c){_0xf78a50['push'](_0xf78a50['shift']());}}}(a0_0x38fe,0xa7116));const {Kafka,logLevel}=require(a0_0x4106cb(0x150)),{v7:uuidv7}=require(a0_0x4106cb(0x169));class KafkaConsumerService{constructor(){const _0x180707=a0_0x4106cb;this['kafka']=null,this[_0x180707(0x10e)]=null,this['isConnected']=![],this[_0x180707(0x167)]=![],this['isRunning']=![],this['isPaused']=![],this['connectionPromise']=null,this[_0x180707(0x15e)]=[],this[_0x180707(0x161)]=null,this['messageHandler']=null,this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x4106cb(0x14d)](){const _0x157704=a0_0x4106cb,_0x87d603={'RTEgI':_0x157704(0x11f),'lCpwB':function(_0x1ae5fe,_0x20b5a4){return _0x1ae5fe(_0x20b5a4);},'PYPNM':'3000','reXFf':function(_0x288faf,_0x57ee0f){return _0x288faf(_0x57ee0f);},'yljyF':'25000','vquda':function(_0x40315b,_0x455d6f){return _0x40315b(_0x455d6f);},'vwwmk':_0x157704(0x123),'jRAZK':'1048576','FwciY':function(_0x1acfb3,_0x1c247d){return _0x1acfb3===_0x1c247d;},'OkdsU':_0x157704(0x15c),'RDGBW':_0x157704(0x142),'jiLrF':'1000','HzDQc':function(_0x52b881,_0x39a0ce){return _0x52b881(_0x39a0ce);},'FrUuk':'warn'};return{'enabled':process['env']['KAFKA_ENABLED']===_0x157704(0x15c),'brokers':(process[_0x157704(0x156)][_0x157704(0x171)]||'localhost:9092')[_0x157704(0x127)](','),'clientId':process['env']['KAFKA_CLIENT_ID']||_0x157704(0x16a)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x87d603[_0x157704(0x114)])+'-consumer','connectionTimeout':_0x87d603[_0x157704(0x10f)](parseInt,process[_0x157704(0x156)]['KAFKA_CONNECTION_TIMEOUT']||_0x87d603[_0x157704(0x151)]),'requestTimeout':_0x87d603[_0x157704(0x120)](parseInt,process['env'][_0x157704(0x148)]||_0x87d603[_0x157704(0x134)]),'sessionTimeout':_0x87d603[_0x157704(0x172)](parseInt,process['env'][_0x157704(0x17b)]||_0x87d603['vwwmk']),'heartbeatInterval':_0x87d603['vquda'](parseInt,process[_0x157704(0x156)][_0x157704(0x13a)]||_0x157704(0x115)),'maxBytesPerPartition':_0x87d603[_0x157704(0x10f)](parseInt,process['env']['KAFKA_MAX_BYTES_PER_PARTITION']||_0x87d603[_0x157704(0x157)]),'autoCommit':_0x87d603['FwciY'](process[_0x157704(0x156)][_0x157704(0x112)],_0x87d603[_0x157704(0x140)]),'autoCommitInterval':parseInt(process['env'][_0x157704(0x116)]||_0x87d603[_0x157704(0x131)]),'retryAttempts':_0x87d603['reXFf'](parseInt,process['env'][_0x157704(0x149)]||'3'),'retryDelay':parseInt(process['env'][_0x157704(0x11e)]||_0x87d603['jiLrF']),'retryMaxDelay':_0x87d603['HzDQc'](parseInt,process[_0x157704(0x156)]['KAFKA_RETRY_MAX_DELAY']||_0x87d603[_0x157704(0x162)]),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x87d603['FrUuk']};}['getLogLevel'](_0x3022b1){const _0x527610=a0_0x4106cb,_0x110cc7={'nothing':logLevel['NOTHING'],'error':logLevel[_0x527610(0x176)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel[_0x527610(0x15b)]};return _0x110cc7[_0x3022b1[_0x527610(0x17f)]()]||logLevel[_0x527610(0x179)];}async['initialize'](_0x2fe71e={}){const _0x1735d8=a0_0x4106cb,_0x5a7f3d={'yPyRY':'default','lvNmc':function(_0x3a87f4,_0x5a0467){return _0x3a87f4(_0x5a0467);}},_0x308772=this['getConfig']();if(!_0x308772[_0x1735d8(0x12b)])return console[_0x1735d8(0x146)](_0x1735d8(0x14a)),![];if(this[_0x1735d8(0x163)])return!![];if(this[_0x1735d8(0x167)]&&this[_0x1735d8(0x178)])return this['connectionPromise'];return this[_0x1735d8(0x167)]=!![],this['connectionPromise']=new Promise(async _0x112409=>{const _0x4acd46=_0x1735d8;try{let _0x1f6aba=undefined;process[_0x4acd46(0x156)]['KAFKA_SSL']===_0x4acd46(0x15c)&&(_0x1f6aba=!![]);let _0x2845d2=undefined;process[_0x4acd46(0x156)][_0x4acd46(0x133)]&&(_0x2845d2={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process[_0x4acd46(0x156)][_0x4acd46(0x13f)]||'','password':process[_0x4acd46(0x156)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x2fe71e['clientId']||_0x308772[_0x4acd46(0x15a)],'brokers':_0x308772[_0x4acd46(0x175)],'connectionTimeout':_0x308772['connectionTimeout'],'requestTimeout':_0x308772[_0x4acd46(0x125)],'logLevel':this['getLogLevel'](_0x308772[_0x4acd46(0x117)]),'ssl':_0x1f6aba,'sasl':_0x2845d2,'retry':{'initialRetryTime':_0x308772['retryDelay'],'retries':_0x308772['retryAttempts'],'maxRetryTime':_0x308772['retryMaxDelay']}}),this['groupId']=_0x2fe71e['groupId']||_0x4acd46(0x16a)+(process[_0x4acd46(0x156)][_0x4acd46(0x166)]||_0x5a7f3d[_0x4acd46(0x158)])+_0x4acd46(0x153),this[_0x4acd46(0x10e)]=this['kafka']['consumer']({'groupId':this[_0x4acd46(0x161)],'sessionTimeout':_0x308772['sessionTimeout'],'heartbeatInterval':_0x308772[_0x4acd46(0x118)],'maxBytesPerPartition':_0x308772[_0x4acd46(0x12a)],'allowAutoTopicCreation':![]}),await this[_0x4acd46(0x10e)]['connect'](),this['isConnected']=!![],console[_0x4acd46(0x146)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x308772['brokers']['join'](',\x20')+'\x20(groupId:\x20'+this[_0x4acd46(0x161)]+')'),this['setupEventHandlers'](),_0x5a7f3d['lvNmc'](_0x112409,!![]);}catch(_0xb7b235){console['error'](_0x4acd46(0x12c)+_0xb7b235[_0x4acd46(0x160)]),this[_0x4acd46(0x163)]=![],_0x112409(![]);}finally{this['isInitializing']=![];}}),this[_0x1735d8(0x178)];}[a0_0x4106cb(0x122)](){const _0x30efb8=a0_0x4106cb,_0x4a348c={'uBkuZ':'[KafkaConsumer]\x20Consumer\x20disconnected','sxSGh':'[KafkaConsumer]\x20Consumer\x20rebalancing...','dzEwK':_0x30efb8(0x14e)};if(!this[_0x30efb8(0x10e)])return;this[_0x30efb8(0x10e)]['on']('consumer.disconnect',()=>{const _0x3cf985=_0x30efb8;console[_0x3cf985(0x146)](_0x4a348c['uBkuZ']),this[_0x3cf985(0x163)]=![],this[_0x3cf985(0x113)]=![];}),this['consumer']['on'](_0x30efb8(0x173),()=>{const _0x3b4228=_0x30efb8;console[_0x3b4228(0x146)]('[KafkaConsumer]\x20Consumer\x20stopped'),this['isRunning']=![];}),this['consumer']['on']('consumer.crash',_0x5a4f17=>{const _0x40abe0=_0x30efb8;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x5a4f17[_0x40abe0(0x15f)][_0x40abe0(0x12f)]['message']),this['isRunning']=![];}),this[_0x30efb8(0x10e)]['on'](_0x4a348c['dzEwK'],()=>{const _0x32757b=_0x30efb8;console[_0x32757b(0x146)](_0x4a348c['sxSGh']);});}async['subscribe'](_0x285c23,_0x3e0016=![]){const _0x131b57=a0_0x4106cb,_0x461dba={'xUsyk':_0x131b57(0x174)};if(!this['isConnected'])return console[_0x131b57(0x12f)](_0x461dba['xUsyk']),![];try{const _0x4941cf=Array['isArray'](_0x285c23)?_0x285c23:[_0x285c23];for(const _0x2cdac7 of _0x4941cf){await this[_0x131b57(0x10e)]['subscribe']({'topic':_0x2cdac7,'fromBeginning':_0x3e0016}),console['log']('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x2cdac7+_0x131b57(0x159)+_0x3e0016+')');}return this['subscribedTopics']=[...new Set([...this[_0x131b57(0x15e)],..._0x4941cf])],!![];}catch(_0xc9525c){return console[_0x131b57(0x12f)](_0x131b57(0x168)+_0xc9525c['message']),![];}}async['startConsuming'](_0x375041,_0x48f4a7={}){const _0xba2a89=a0_0x4106cb,_0x373f37={'MEHGM':function(_0x548a0a,_0x348d18){return _0x548a0a+_0x348d18;},'wWfaa':function(_0x5077ec,_0x46245b){return _0x5077ec(_0x46245b);},'EHnEB':function(_0x42636f,_0x3ffd62){return _0x42636f-_0x3ffd62;},'EmfVi':function(_0x43c841,_0x4327a1){return _0x43c841>_0x4327a1;},'ZLSnV':'[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected','RKNCT':'[KafkaConsumer]\x20Consumer\x20already\x20running'};if(!this[_0xba2a89(0x163)])return console[_0xba2a89(0x12f)](_0x373f37['ZLSnV']),![];if(this[_0xba2a89(0x113)])return console['log'](_0x373f37['RKNCT']),!![];const _0x66941d=this['getConfig']();this[_0xba2a89(0x16f)]=_0x375041;try{return this[_0xba2a89(0x16d)][_0xba2a89(0x17c)]=new Date(),await this['consumer']['run']({'autoCommit':_0x48f4a7[_0xba2a89(0x13b)]!==undefined?_0x48f4a7[_0xba2a89(0x13b)]:_0x66941d[_0xba2a89(0x13b)],'autoCommitInterval':_0x66941d[_0xba2a89(0x17a)],'eachMessage':async({topic:_0x5c50ef,partition:_0x31f70f,message:_0x57f001,heartbeat:_0x35300c})=>{const _0x4b8004=_0xba2a89,_0x19bca8=Date[_0x4b8004(0x139)]();this[_0x4b8004(0x16d)][_0x4b8004(0x11b)]++,this[_0x4b8004(0x16d)]['lastMessageTime']=new Date();try{const _0x2bfaea=_0x57f001['value']?_0x57f001[_0x4b8004(0x17e)][_0x4b8004(0x145)]():null;let _0x11acb3=null;try{_0x11acb3=_0x2bfaea?JSON[_0x4b8004(0x12e)](_0x2bfaea):null;}catch(_0x2b6e53){_0x11acb3=_0x2bfaea;}const _0x9080f9={'topic':_0x5c50ef,'partition':_0x31f70f,'offset':_0x57f001[_0x4b8004(0x177)],'key':_0x57f001[_0x4b8004(0x181)]?_0x57f001['key']['toString']():null,'headers':this[_0x4b8004(0x14b)](_0x57f001[_0x4b8004(0x138)]),'timestamp':_0x57f001['timestamp'],'value':_0x11acb3,'raw':_0x2bfaea};this['messageHandler']&&await this[_0x4b8004(0x16f)](_0x9080f9);!_0x66941d[_0x4b8004(0x13b)]&&await this['consumer']['commitOffsets']([{'topic':_0x5c50ef,'partition':_0x31f70f,'offset':_0x373f37['MEHGM'](_0x373f37['wWfaa'](parseInt,_0x57f001[_0x4b8004(0x177)]),0x1)['toString']()}]);this['metrics']['messagesProcessed']++;const _0x1ba9c6=_0x373f37['EHnEB'](Date[_0x4b8004(0x139)](),_0x19bca8);this[_0x4b8004(0x16d)]['processingTimes'][_0x4b8004(0x136)](_0x1ba9c6),_0x373f37[_0x4b8004(0x180)](this[_0x4b8004(0x16d)]['processingTimes']['length'],0x64)&&this[_0x4b8004(0x16d)][_0x4b8004(0x126)]['shift'](),await _0x35300c();}catch(_0x4d86b2){this['metrics'][_0x4b8004(0x119)]++,console['error']('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x4d86b2[_0x4b8004(0x160)]);throw _0x4d86b2;}}}),this[_0xba2a89(0x113)]=!![],console[_0xba2a89(0x146)](_0xba2a89(0x16c)+this['subscribedTopics']['join'](',\x20')),!![];}catch(_0x2fdd60){return console['error'](_0xba2a89(0x129)+_0x2fdd60['message']),![];}}['parseHeaders'](_0x13efa6){const _0x1321a0=a0_0x4106cb;if(!_0x13efa6)return{};const _0x2d4e76={};for(const [_0x4b3eb5,_0x52b4c7]of Object[_0x1321a0(0x147)](_0x13efa6)){_0x2d4e76[_0x4b3eb5]=_0x52b4c7?_0x52b4c7[_0x1321a0(0x145)]():null;}return _0x2d4e76;}async['pause'](){const _0x48e235=a0_0x4106cb,_0x31b830={'GjdIA':'[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running','oFkYS':_0x48e235(0x111)};if(!this['isConnected']||!this[_0x48e235(0x113)])return console['log'](_0x31b830['GjdIA']),![];if(this['isPaused'])return console['log'](_0x31b830[_0x48e235(0x128)]),!![];try{const _0x11a844=this[_0x48e235(0x15e)][_0x48e235(0x124)](_0x45165b=>({'topic':_0x45165b}));return this['consumer']['pause'](_0x11a844),this[_0x48e235(0x164)]=!![],console['log'](_0x48e235(0x137)),!![];}catch(_0x1f327c){return console['error']('[KafkaConsumer]\x20Pause\x20error:\x20'+_0x1f327c[_0x48e235(0x160)]),![];}}async['resume'](){const _0x3a95e2=a0_0x4106cb,_0x145071={'ygVaE':'[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running','btoIo':_0x3a95e2(0x16e)};if(!this['isConnected']||!this['isRunning'])return console['log'](_0x145071[_0x3a95e2(0x152)]),![];if(!this[_0x3a95e2(0x164)])return console['log'](_0x145071['btoIo']),!![];try{const _0x13623a=this['subscribedTopics'][_0x3a95e2(0x124)](_0x2308a4=>({'topic':_0x2308a4}));return this['consumer']['resume'](_0x13623a),this['isPaused']=![],console[_0x3a95e2(0x146)](_0x3a95e2(0x170)),!![];}catch(_0x6d17ff){return console['error']('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x6d17ff[_0x3a95e2(0x160)]),![];}}async['stop'](){const _0x18aedf=a0_0x4106cb,_0x5aa233={'YQWOv':_0x18aedf(0x10c),'wzQAW':_0x18aedf(0x11c)};if(!this[_0x18aedf(0x163)])return console[_0x18aedf(0x146)]('[KafkaConsumer]\x20Consumer\x20not\x20connected'),!![];try{const _0x30be09=_0x5aa233[_0x18aedf(0x13c)][_0x18aedf(0x127)]('|');let _0x5651f6=0x0;while(!![]){switch(_0x30be09[_0x5651f6++]){case'0':console['log'](_0x5aa233[_0x18aedf(0x17d)]);continue;case'1':this[_0x18aedf(0x163)]=![];continue;case'2':this['isPaused']=![];continue;case'3':this[_0x18aedf(0x113)]=![];continue;case'4':this['consumer']&&(await this['consumer'][_0x18aedf(0x143)](),await this[_0x18aedf(0x10e)]['disconnect']());continue;case'5':return!![];}break;}}catch(_0x4e2528){return console['error']('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x4e2528['message']),![];}}async['seekToOffset'](_0x1a4d47,_0x51d3fe,_0x5c4c5f){const _0x37df1e=a0_0x4106cb;if(!this['isConnected'])return console[_0x37df1e(0x12f)]('[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'),![];try{return this['consumer']['seek']({'topic':_0x1a4d47,'partition':_0x51d3fe,'offset':_0x5c4c5f[_0x37df1e(0x145)]()}),console['log']('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x5c4c5f+'\x20on\x20'+_0x1a4d47+':'+_0x51d3fe),!![];}catch(_0x550320){return console[_0x37df1e(0x12f)]('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x550320['message']),![];}}['getStatus'](){const _0x5d7243=a0_0x4106cb,_0x39fbea=this[_0x5d7243(0x14d)]();return{'enabled':_0x39fbea[_0x5d7243(0x12b)],'connected':this[_0x5d7243(0x163)],'running':this[_0x5d7243(0x113)],'paused':this['isPaused'],'brokers':_0x39fbea['brokers'],'clientId':_0x39fbea[_0x5d7243(0x15a)],'groupId':this['groupId'],'subscribedTopics':this['subscribedTopics']};}[a0_0x4106cb(0x13d)](){const _0x12d739=a0_0x4106cb,_0x543be3={'SJwUW':function(_0x237e28,_0x40ced5){return _0x237e28/_0x40ced5;},'uLiQs':function(_0x2b3038,_0x20eb49){return _0x2b3038>_0x20eb49;},'FNlou':function(_0x444bef,_0x3ab50f){return _0x444bef+_0x3ab50f;},'oIuzg':function(_0x2c4ffd,_0x24911b){return _0x2c4ffd*_0x24911b;},'kKxNi':function(_0x2a6eba,_0x534b4f){return _0x2a6eba/_0x534b4f;},'eAPpS':function(_0xa9c5d7,_0x3afce3){return _0xa9c5d7+_0x3afce3;},'coGhx':function(_0x4b0750,_0x19f052){return _0x4b0750/_0x19f052;},'GIhGZ':function(_0x11f416,_0x2d4495){return _0x11f416-_0x2d4495;}},_0x16e33b=this[_0x12d739(0x16d)][_0x12d739(0x126)]['length']>0x0?_0x543be3['SJwUW'](this['metrics']['processingTimes']['reduce']((_0x28575b,_0x1bbb83)=>_0x28575b+_0x1bbb83,0x0),this[_0x12d739(0x16d)][_0x12d739(0x126)]['length']):0x0,_0x475074=_0x543be3[_0x12d739(0x14f)](this['metrics'][_0x12d739(0x126)]['length'],0x0)?Math[_0x12d739(0x132)](...this[_0x12d739(0x16d)][_0x12d739(0x126)]):0x0,_0xb98d2=this[_0x12d739(0x16d)][_0x12d739(0x126)]['length']>0x0?Math['max'](...this['metrics'][_0x12d739(0x126)]):0x0;return{'messagesReceived':this['metrics']['messagesReceived'],'messagesProcessed':this[_0x12d739(0x16d)]['messagesProcessed'],'messagesFailed':this['metrics'][_0x12d739(0x119)],'successRate':this[_0x12d739(0x16d)][_0x12d739(0x11b)]>0x0?_0x543be3['FNlou'](_0x543be3['oIuzg'](_0x543be3['kKxNi'](this['metrics'][_0x12d739(0x165)],this['metrics']['messagesReceived']),0x64)[_0x12d739(0x12d)](0x2),'%'):'0%','lastMessageTime':this[_0x12d739(0x16d)]['lastMessageTime'],'startTime':this['metrics'][_0x12d739(0x17c)],'uptime':this['metrics']['startTime']?_0x543be3[_0x12d739(0x11d)](Math['floor'](_0x543be3[_0x12d739(0x141)](_0x543be3['GIhGZ'](Date[_0x12d739(0x139)](),this[_0x12d739(0x16d)]['startTime'][_0x12d739(0x130)]()),0x3e8)),'s'):'0s','processingTime':{'avg':Math['round'](_0x16e33b)+'ms','min':_0x543be3[_0x12d739(0x11d)](_0x475074,'ms'),'max':_0xb98d2+'ms'}};}['resetMetrics'](){const _0x536ad0=a0_0x4106cb;this[_0x536ad0(0x16d)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console[_0x536ad0(0x146)]('[KafkaConsumer]\x20Metrics\x20reset');}async['close'](){const _0x172fb1=a0_0x4106cb;await this[_0x172fb1(0x143)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function a0_0x38fe(){const _0x3b577c=['BwvZC2fNzuHHBMrSzxi','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','s0fgs0fFqLjps0vsuW','DNf1zge','y29UC3vTzxiUC3rVCa','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','yNjVA2vYCW','rvjst1i','B2zMC2v0','y29UBMvJDgLVBLbYB21PC2u','v0fstG','yxv0B0nVBw1PDeLUDgvYDMfS','s0fgs0fFu0vtu0LptL9usu1ft1vu','C3rHCNruAw1L','D3PrqvC','DMfSDwu','Dg9mB3DLCKnHC2u','rw1MvMK','A2v5','y2XVC2u','nhWXFdn8mNWWFdu','mJa1ndm5mfnkELDWBG','y29UC3vTzxi','BenWD0i','nJzfuNfvv2q','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','s0fgs0fFqvvut19dt01nsvq','AxnsDw5UAw5N','uLrfz0K','mZaWma','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','Bg9Ntgv2zwW','AgvHCNrIzwf0sw50zxj2ywW','BwvZC2fNzxngywLSzwq','mtGYnZCYvfDTywjQ','BwvZC2fNzxnszwnLAxzLza','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwqGyw5KigrPC2nVBM5Ly3rLza','zufqCfm','s0fgs0fFuKvuuLLFrevmqvK','zgvMyxvSDa','CMvyrMy','mtKXmNDrzuXdAG','C2v0DxbfDMvUDeHHBMrSzxjZ','mZaWmda','BwfW','CMvXDwvZDfrPBwvVDxq','ChjVy2vZC2LUz1rPBwvZ','C3bSAxq','B0zRwvm','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','Bwf4qNL0zxnqzxjqyxj0AxrPB24','zw5HyMXLza','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','Dg9gAxHLza','CgfYC2u','zxjYB3i','z2v0vgLTzq','uKrhqLC','BwLU','s0fgs0fFu0fttf9nruniqu5ju00','EwXQEuy','mta2odC0rMzeBeLS','ChvZAa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','AgvHzgvYCW','BM93','s0fgs0fFsevbuLrcrufux0LovevsvKfm','yxv0B0nVBw1PDa','wvfxt3y','z2v0twv0CMLJCW','nZK1ntC5sg1VyKTb','s0fgs0fFu0fttf9vu0vstKfnrq','t2TKC1u','y29hAhG','ntaWma','C3rVCa','odaWmvjTuuDJCa','Dg9tDhjPBMC','Bg9N','zw50CMLLCW','s0fgs0fFuKvrvuvtvf9usu1ft1vu','s0fgs0fFuKvuuLLFqvruru1qvfm','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','CgfYC2vizwfKzxjZ','mty2mZy5mKLeseXXua','z2v0q29UzMLN','y29UC3vTzxiUCMvIywXHBMnPBMC','DuXPuxm','A2fMA2fQCW','ufLqtK0','EwDwyuu','lwnVBNn1BwvYlwDYB3vW','mJq0mJy2mfjsyNjTtW','mJj3DfbJsNC','zw52','ALjbwKS','Evb5uLK','icHMCM9TqMvNAw5UAw5NoIa','y2XPzw50swq','revcvuC','Dhj1zq','mZbTy29huhy','C3vIC2nYAwjLzfrVCgLJCW','Cgf5Bg9Hza','BwvZC2fNzq','z3jVDxbjza','DND3BwS','AxndB25Uzwn0zwq','AxnqyxvZzwq','BwvZC2fNzxnqCM9JzxnZzwq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','AxnjBML0AwfSAxPPBMC','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','DxvPza','CMvZDgzVCMDLlq','nfnTtwTABG','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','Bwv0CMLJCW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq'];a0_0x38fe=function(){return _0x3b577c;};return a0_0x38fe();}function resetInstance(){const _0xbab0c5=a0_0x4106cb;instance&&(instance[_0xbab0c5(0x10b)](),instance=null);}function a0_0x4b8f(_0x22884c,_0x3d4351){_0x22884c=_0x22884c-0x10b;const _0x38fe22=a0_0x38fe();let _0x4b8f58=_0x38fe22[_0x22884c];if(a0_0x4b8f['zsLMyb']===undefined){var _0x2e6e0f=function(_0x21e6b1){const _0x3675cc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c7cf5='',_0x29a25c='';for(let _0x4c4559=0x0,_0x3c3608,_0x8fdd07,_0x1fcf27=0x0;_0x8fdd07=_0x21e6b1['charAt'](_0x1fcf27++);~_0x8fdd07&&(_0x3c3608=_0x4c4559%0x4?_0x3c3608*0x40+_0x8fdd07:_0x8fdd07,_0x4c4559++%0x4)?_0x3c7cf5+=String['fromCharCode'](0xff&_0x3c3608>>(-0x2*_0x4c4559&0x6)):0x0){_0x8fdd07=_0x3675cc['indexOf'](_0x8fdd07);}for(let _0x1c6b9d=0x0,_0x1b5845=_0x3c7cf5['length'];_0x1c6b9d<_0x1b5845;_0x1c6b9d++){_0x29a25c+='%'+('00'+_0x3c7cf5['charCodeAt'](_0x1c6b9d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29a25c);};a0_0x4b8f['oCVOsr']=_0x2e6e0f,a0_0x4b8f['yiiPxu']={},a0_0x4b8f['zsLMyb']=!![];}const _0x2d891b=_0x38fe22[0x0],_0x2abeb1=_0x22884c+_0x2d891b,_0xa1df6d=a0_0x4b8f['yiiPxu'][_0x2abeb1];return!_0xa1df6d?(_0x4b8f58=a0_0x4b8f['oCVOsr'](_0x4b8f58),a0_0x4b8f['yiiPxu'][_0x2abeb1]=_0x4b8f58):_0x4b8f58=_0xa1df6d,_0x4b8f58;}function createInstance(){return new KafkaConsumerService();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
1
+ const a0_0x3edea5=a0_0x39fa;function a0_0xc5e1(){const _0x415f61=['z3jVDxbjza','Aw1WvLi','DxvPza','nhLdwM1iyq','zgvMyxvSDa','zw5HyMXLza','A2v5','CM91BMq','ntaWma','z2v0q29UzMLN','Cgf5Bg9Hza','AxnsDw5UAw5N','DhfmEMK','zw52','Bwv0CMLJCW','AxnqyxvZzwq','mJq0zgnhDuvK','zxHWB3j0CW','BwvZC2fNzxnszwnLAxzLza','su5gtW','C2vLAW','B2zMC2v0','DhrYuMO','nZa0nvLqC09ntW','CMv0CNLezwXHEq','ufLmAu4','r2vLsvm','w0THzMTHq29UC3vTzxjDienHBM5VDcbYzxn1BwuGlsbJB25ZDw1LCIbUB3qGCNvUBMLUzW','Bwf4','D2zTr3a','s0fgs0fFu0vtu0LptL9usu1ft1vu','tK9useLorW','yxv0B0nVBw1PDa','AxnbCNjHEq','C3rVCa','CMvZDgzVCMDLlq','y2XPzw50swq','ChjVy2vZC2LUz1rPBwvZ','mZaWmda','zxjYB3i','Cgf1C2u','s0fgs0fFuKvuuLLFtufyx0rftefz','rvjst1i','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','Dhj1zq','sgfZyLu','z2v0twv0CMLJCW','C3vIC2nYAwjL','Dg9gAxHLza','y29UBMvJDgLVBLbYB21PC2u','AxndB25Uzwn0zwq','AgvHCNrIzwf0sw50zxj2ywW','s0fgs0fFru5bqKXfra','mtG3nJuWsfLxuunT','y29UC3vTzxi','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzwqGDg8GDg9WAwm6ia','C2HPzNq','C3rHCNruAw1L','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','w0THzMTHq29UC3vTzxjDifjLC3vTzsbLCNjVCJOG','mtu4mtyWmgviufjprW','zw50CMLLCW','y29UC3vTzxiUzgLZy29UBMvJDa','y29UC3vTzxiUy3jHC2G','s0fgs0fFuKvuuLLFqvruru1qvfm','s0fgs0fFte9hx0XfvKvm','CMvKDwnL','BwvZC2fNzq','Dg9tDhjPBMC','CMvZDw1L','Bg9N','AM9PBG','y29UBMvJDa','s0fgs0fFu0fttf9vu0vstKfnrq','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','u3Pqve4','s0fgs0fFqvvut19dt01nsvq','revcvuC','AgvHzgvYCW','mJeWmdu0nZHfDLPyvwC','icHMCM9TqMvNAw5UAw5NoIa','C3bSAxq','AxnjBML0AwfSAxPPBMC','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','rvzMD08','DfrID2e','z2v0tg9Ntgv2zwW','BwfW','v0fstG','y29UC3vTzxiUC3rVCa','tNbtA0i','CMvXDwvZDfrPBwvVDxq','mZaWma','BM93','y29UBMvJDgLVBLrPBwvVDxq','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','s0fgs0fFq0Xjru5ux0Le','u1Deq2C','BgfZDe1LC3nHz2vuAw1L','A2fMA2e','y29TBwL0t2zMC2v0CW','CgfYC2vizwfKzxjZ','yNjVA2vYCW','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','nZi0ndy5nfHOCfjrAG','mtm1mZG5nND4sgjPzq','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','qNzdthq','nZm0odiZnNfbyu1qCG','s0fgs0fFuKvrvuvtvf9usu1ft1vu','BwvZC2fNzuHHBMrSzxi','q2fHCNy','ANbOugi','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','BgvUz3rO','C3vIC2nYAwjLzfrVCgLJCW'];a0_0xc5e1=function(){return _0x415f61;};return a0_0xc5e1();}(function(_0x4e6a3b,_0xe86a93){const _0x433645=a0_0x39fa,_0x479523=_0x4e6a3b();while(!![]){try{const _0x44c005=-parseInt(_0x433645(0x1b2))/0x1+parseInt(_0x433645(0x179))/0x2*(-parseInt(_0x433645(0x1ab))/0x3)+parseInt(_0x433645(0x186))/0x4*(-parseInt(_0x433645(0x18d))/0x5)+parseInt(_0x433645(0x16a))/0x6+-parseInt(_0x433645(0x16e))/0x7+parseInt(_0x433645(0x16b))/0x8+parseInt(_0x433645(0x14e))/0x9;if(_0x44c005===_0xe86a93)break;else _0x479523['push'](_0x479523['shift']());}catch(_0x3a08c0){_0x479523['push'](_0x479523['shift']());}}}(a0_0xc5e1,0xd3f87));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require(a0_0x3edea5(0x178));function a0_0x39fa(_0x40b604,_0x1bf5ff){_0x40b604=_0x40b604-0x14a;const _0xc5e1c2=a0_0xc5e1();let _0x39fa80=_0xc5e1c2[_0x40b604];if(a0_0x39fa['ugYTZI']===undefined){var _0x5d1472=function(_0x584d1e){const _0x33fba9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ed3bf='',_0x2eee42='';for(let _0x495924=0x0,_0x36809c,_0x5ad479,_0x309dc3=0x0;_0x5ad479=_0x584d1e['charAt'](_0x309dc3++);~_0x5ad479&&(_0x36809c=_0x495924%0x4?_0x36809c*0x40+_0x5ad479:_0x5ad479,_0x495924++%0x4)?_0x4ed3bf+=String['fromCharCode'](0xff&_0x36809c>>(-0x2*_0x495924&0x6)):0x0){_0x5ad479=_0x33fba9['indexOf'](_0x5ad479);}for(let _0x5ef325=0x0,_0x34080d=_0x4ed3bf['length'];_0x5ef325<_0x34080d;_0x5ef325++){_0x2eee42+='%'+('00'+_0x4ed3bf['charCodeAt'](_0x5ef325)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2eee42);};a0_0x39fa['bWAZPq']=_0x5d1472,a0_0x39fa['rQCwjr']={},a0_0x39fa['ugYTZI']=!![];}const _0x16b250=_0xc5e1c2[0x0],_0x4b48fe=_0x40b604+_0x16b250,_0x3382cb=a0_0x39fa['rQCwjr'][_0x4b48fe];return!_0x3382cb?(_0x39fa80=a0_0x39fa['bWAZPq'](_0x39fa80),a0_0x39fa['rQCwjr'][_0x4b48fe]=_0x39fa80):_0x39fa80=_0x3382cb,_0x39fa80;}class KafkaConsumerService{constructor(){const _0x3b33a6=a0_0x3edea5;this[_0x3b33a6(0x165)]=null,this['consumer']=null,this[_0x3b33a6(0x1a8)]=![],this['isInitializing']=![],this[_0x3b33a6(0x181)]=![],this['isPaused']=![],this['connectionPromise']=null,this[_0x3b33a6(0x175)]=[],this['groupId']=null,this['messageHandler']=null,this[_0x3b33a6(0x184)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x3edea5(0x17f)](){const _0x2a4115=a0_0x3edea5,_0x197587={'HasbU':function(_0x24dc2f,_0x5e8884){return _0x24dc2f(_0x5e8884);},'ZIblU':'25000','ttrRj':'30000','NpSkB':'1048576','EqDRD':_0x2a4115(0x1a2),'gTbIH':_0x2a4115(0x17e),'mzIYG':'1000'};return{'enabled':process[_0x2a4115(0x183)][_0x2a4115(0x1aa)]==='true','brokers':(process[_0x2a4115(0x183)]['KAFKA_BROKERS']||'localhost:9092')['split'](','),'clientId':process[_0x2a4115(0x183)][_0x2a4115(0x162)]||_0x2a4115(0x199)+(process['env'][_0x2a4115(0x1c1)]||'default')+'-consumer','connectionTimeout':_0x197587[_0x2a4115(0x1a3)](parseInt,process['env']['KAFKA_CONNECTION_TIMEOUT']||_0x2a4115(0x15d)),'requestTimeout':parseInt(process[_0x2a4115(0x183)][_0x2a4115(0x16f)]||_0x197587['ZIblU']),'sessionTimeout':parseInt(process['env'][_0x2a4115(0x194)]||_0x197587[_0x2a4115(0x18c)]),'heartbeatInterval':parseInt(process[_0x2a4115(0x183)]['KAFKA_HEARTBEAT_INTERVAL']||_0x2a4115(0x15d)),'maxBytesPerPartition':_0x197587['HasbU'](parseInt,process[_0x2a4115(0x183)]['KAFKA_MAX_BYTES_PER_PARTITION']||_0x197587[_0x2a4115(0x15b)]),'autoCommit':process['env'][_0x2a4115(0x14b)]===_0x197587['EqDRD'],'autoCommitInterval':parseInt(process[_0x2a4115(0x183)][_0x2a4115(0x16c)]||_0x197587['gTbIH']),'retryAttempts':parseInt(process['env'][_0x2a4115(0x1b6)]||'3'),'retryDelay':parseInt(process[_0x2a4115(0x183)]['KAFKA_RETRY_DELAY']||_0x197587['mzIYG']),'retryMaxDelay':parseInt(process[_0x2a4115(0x183)][_0x2a4115(0x19f)]||_0x2a4115(0x19c)),'logLevel':process[_0x2a4115(0x183)][_0x2a4115(0x1b7)]||'warn'};}['getLogLevel'](_0x333c85){const _0x4a5f70=a0_0x3edea5,_0x32426c={'nothing':logLevel[_0x4a5f70(0x195)],'error':logLevel[_0x4a5f70(0x1a0)],'warn':logLevel[_0x4a5f70(0x159)],'info':logLevel[_0x4a5f70(0x189)],'debug':logLevel[_0x4a5f70(0x14c)]};return _0x32426c[_0x333c85['toLowerCase']()]||logLevel['WARN'];}async['initialize'](_0x5480f6={}){const _0x3dd1f7=a0_0x3edea5,_0x1a4279={'impVR':_0x3dd1f7(0x1a2),'jqDmg':_0x3dd1f7(0x17a)},_0x58f099=this[_0x3dd1f7(0x17f)]();if(!_0x58f099[_0x3dd1f7(0x17b)])return console['log']('[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'),![];if(this[_0x3dd1f7(0x1a8)])return!![];if(this[_0x3dd1f7(0x151)]&&this[_0x3dd1f7(0x1a7)])return this[_0x3dd1f7(0x1a7)];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x4226da=>{const _0x55bef3=_0x3dd1f7;try{let _0x331f99=undefined;process['env']['KAFKA_SSL']===_0x1a4279[_0x55bef3(0x177)]&&(_0x331f99=!![]);let _0x5f1e6e=undefined;process[_0x55bef3(0x183)]['KAFKA_SASL_MECHANISM']&&(_0x5f1e6e={'mechanism':process[_0x55bef3(0x183)]['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x55bef3(0x1bf)]||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this[_0x55bef3(0x165)]=new Kafka({'clientId':_0x5480f6[_0x55bef3(0x19a)]||_0x58f099[_0x55bef3(0x19a)],'brokers':_0x58f099['brokers'],'connectionTimeout':_0x58f099[_0x55bef3(0x15f)],'requestTimeout':_0x58f099[_0x55bef3(0x15c)],'logLevel':this[_0x55bef3(0x157)](_0x58f099['logLevel']),'ssl':_0x331f99,'sasl':_0x5f1e6e,'retry':{'initialRetryTime':_0x58f099[_0x55bef3(0x18e)],'retries':_0x58f099['retryAttempts'],'maxRetryTime':_0x58f099['retryMaxDelay']}}),this['groupId']=_0x5480f6['groupId']||'restforge-'+(process[_0x55bef3(0x183)][_0x55bef3(0x1c1)]||_0x1a4279['jqDmg'])+'-consumer-group',this['consumer']=this[_0x55bef3(0x165)][_0x55bef3(0x1ac)]({'groupId':this['groupId'],'sessionTimeout':_0x58f099['sessionTimeout'],'heartbeatInterval':_0x58f099[_0x55bef3(0x1a9)],'maxBytesPerPartition':_0x58f099['maxBytesPerPartition'],'allowAutoTopicCreation':![]}),await this[_0x55bef3(0x1ac)][_0x55bef3(0x1be)](),this['isConnected']=!![],console[_0x55bef3(0x1bc)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x58f099['brokers'][_0x55bef3(0x1bd)](',\x20')+'\x20(groupId:\x20'+this['groupId']+')'),this['setupEventHandlers'](),_0x4226da(!![]);}catch(_0x1f7af2){console[_0x55bef3(0x19d)](_0x55bef3(0x161)+_0x1f7af2['message']),this[_0x55bef3(0x1a8)]=![],_0x4226da(![]);}finally{this[_0x55bef3(0x151)]=![];}}),this[_0x3dd1f7(0x1a7)];}['setupEventHandlers'](){const _0x46857a=a0_0x3edea5,_0x2d6f81={'jphPb':'[KafkaConsumer]\x20Consumer\x20rebalancing...','wfmGp':_0x46857a(0x1b5)};if(!this['consumer'])return;this['consumer']['on'](_0x46857a(0x1b4),()=>{const _0x6ffca7=_0x46857a;console[_0x6ffca7(0x1bc)]('[KafkaConsumer]\x20Consumer\x20disconnected'),this[_0x6ffca7(0x1a8)]=![],this[_0x6ffca7(0x181)]=![];}),this[_0x46857a(0x1ac)]['on'](_0x46857a(0x15a),()=>{const _0x1e73d2=_0x46857a;console[_0x1e73d2(0x1bc)]('[KafkaConsumer]\x20Consumer\x20stopped'),this['isRunning']=![];}),this[_0x46857a(0x1ac)]['on'](_0x2d6f81[_0x46857a(0x193)],_0x5b7c00=>{const _0x16bcee=_0x46857a;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x5b7c00[_0x16bcee(0x180)][_0x16bcee(0x19d)][_0x16bcee(0x1b9)]),this['isRunning']=![];}),this['consumer']['on']('consumer.rebalancing',()=>{const _0x3a329c=_0x46857a;console['log'](_0x2d6f81[_0x3a329c(0x172)]);});}async[a0_0x3edea5(0x1a5)](_0x1a6814,_0x45bb46=![]){const _0x411871=a0_0x3edea5,_0x389c88={'ePhOG':_0x411871(0x152)};if(!this['isConnected'])return console['error'](_0x389c88['ePhOG']),![];try{const _0xab6f15=Array[_0x411871(0x197)](_0x1a6814)?_0x1a6814:[_0x1a6814];for(const _0x1288ab of _0xab6f15){await this[_0x411871(0x1ac)][_0x411871(0x1a5)]({'topic':_0x1288ab,'fromBeginning':_0x45bb46}),console['log'](_0x411871(0x1ad)+_0x1288ab+_0x411871(0x14f)+_0x45bb46+')');}return this[_0x411871(0x175)]=[...new Set([...this[_0x411871(0x175)],..._0xab6f15])],!![];}catch(_0x2de2dd){return console['error']('[KafkaConsumer]\x20Subscribe\x20error:\x20'+_0x2de2dd[_0x411871(0x1b9)]),![];}}async['startConsuming'](_0x416507,_0xf7e6e8={}){const _0x4bd283=a0_0x3edea5,_0x1c1d84={'fqqWz':function(_0x280d4c,_0x2aec54){return _0x280d4c+_0x2aec54;},'ZVEis':function(_0x576dc5,_0x3e786b){return _0x576dc5(_0x3e786b);},'PYLiN':function(_0x3e8828){return _0x3e8828();},'xfHqY':'[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected','tqLzi':function(_0x4d7c90,_0x509a2e){return _0x4d7c90!==_0x509a2e;}};if(!this['isConnected'])return console[_0x4bd283(0x19d)](_0x1c1d84['xfHqY']),![];if(this[_0x4bd283(0x181)])return console[_0x4bd283(0x1bc)](_0x4bd283(0x1b0)),!![];const _0x30e922=this['getConfig']();this[_0x4bd283(0x170)]=_0x416507;try{return this[_0x4bd283(0x184)][_0x4bd283(0x1af)]=new Date(),await this[_0x4bd283(0x1ac)]['run']({'autoCommit':_0x1c1d84[_0x4bd283(0x182)](_0xf7e6e8[_0x4bd283(0x196)],undefined)?_0xf7e6e8['autoCommit']:_0x30e922[_0x4bd283(0x196)],'autoCommitInterval':_0x30e922['autoCommitInterval'],'eachMessage':async({topic:_0x4f1688,partition:_0x474407,message:_0x54a73a,heartbeat:_0x1133c7})=>{const _0x4355b0=_0x4bd283,_0x3c364c=Date['now']();this[_0x4355b0(0x184)][_0x4355b0(0x188)]++,this['metrics'][_0x4355b0(0x164)]=new Date();try{const _0x51ea3=_0x54a73a['value']?_0x54a73a['value'][_0x4355b0(0x1ba)]():null;let _0x328272=null;try{_0x328272=_0x51ea3?JSON['parse'](_0x51ea3):null;}catch(_0x9b276){_0x328272=_0x51ea3;}const _0x74ab4f={'topic':_0x4f1688,'partition':_0x474407,'offset':_0x54a73a['offset'],'key':_0x54a73a[_0x4355b0(0x17c)]?_0x54a73a[_0x4355b0(0x17c)][_0x4355b0(0x1ba)]():null,'headers':this[_0x4355b0(0x167)](_0x54a73a[_0x4355b0(0x14d)]),'timestamp':_0x54a73a['timestamp'],'value':_0x328272,'raw':_0x51ea3};this['messageHandler']&&await this[_0x4355b0(0x170)](_0x74ab4f);!_0x30e922['autoCommit']&&await this['consumer'][_0x4355b0(0x166)]([{'topic':_0x4f1688,'partition':_0x474407,'offset':_0x1c1d84['fqqWz'](_0x1c1d84['ZVEis'](parseInt,_0x54a73a[_0x4355b0(0x18b)]),0x1)[_0x4355b0(0x1ba)]()}]);this['metrics']['messagesProcessed']++;const _0x15dab1=Date[_0x4355b0(0x15e)]()-_0x3c364c;this['metrics'][_0x4355b0(0x19b)]['push'](_0x15dab1),this['metrics']['processingTimes']['length']>0x64&&this['metrics'][_0x4355b0(0x19b)][_0x4355b0(0x1ae)](),await _0x1c1d84[_0x4355b0(0x18f)](_0x1133c7);}catch(_0x442572){this['metrics']['messagesFailed']++,console['error']('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x442572['message']);throw _0x442572;}}}),this[_0x4bd283(0x181)]=!![],console[_0x4bd283(0x1bc)](_0x4bd283(0x160)+this[_0x4bd283(0x175)]['join'](',\x20')),!![];}catch(_0x46934a){return console['error'](_0x4bd283(0x173)+_0x46934a['message']),![];}}['parseHeaders'](_0x5c38af){const _0x51d060=a0_0x3edea5;if(!_0x5c38af)return{};const _0x37a7c1={};for(const [_0x7ddabf,_0x52dd36]of Object[_0x51d060(0x1b3)](_0x5c38af)){_0x37a7c1[_0x7ddabf]=_0x52dd36?_0x52dd36[_0x51d060(0x1ba)]():null;}return _0x37a7c1;}async[a0_0x3edea5(0x19e)](){const _0x118bf8=a0_0x3edea5;if(!this[_0x118bf8(0x1a8)]||!this[_0x118bf8(0x181)])return console[_0x118bf8(0x1bc)](_0x118bf8(0x1c0)),![];if(this[_0x118bf8(0x185)])return console['log'](_0x118bf8(0x153)),!![];try{const _0x227dfd=this[_0x118bf8(0x175)]['map'](_0x4adf8c=>({'topic':_0x4adf8c}));return this['consumer']['pause'](_0x227dfd),this['isPaused']=!![],console[_0x118bf8(0x1bc)]('[KafkaConsumer]\x20Consumer\x20paused'),!![];}catch(_0x4fc5f7){return console[_0x118bf8(0x19d)](_0x118bf8(0x154)+_0x4fc5f7['message']),![];}}async['resume'](){const _0x515d25=a0_0x3edea5,_0xd861e1={'SWDCg':_0x515d25(0x191)};if(!this[_0x515d25(0x1a8)]||!this[_0x515d25(0x181)])return console['log'](_0xd861e1[_0x515d25(0x163)]),![];if(!this[_0x515d25(0x185)])return console['log']('[KafkaConsumer]\x20Consumer\x20not\x20paused'),!![];try{const _0x319fb3=this['subscribedTopics'][_0x515d25(0x158)](_0xbeaf2f=>({'topic':_0xbeaf2f}));return this['consumer'][_0x515d25(0x1bb)](_0x319fb3),this[_0x515d25(0x185)]=![],console['log']('[KafkaConsumer]\x20Consumer\x20resumed'),!![];}catch(_0x46e71a){return console['error'](_0x515d25(0x1b1)+_0x46e71a[_0x515d25(0x1b9)]),![];}}async[a0_0x3edea5(0x198)](){const _0x283d0c=a0_0x3edea5,_0x195626={'GeeIS':'0|2|4|5|1|3','SzPTN':'[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'};if(!this['isConnected'])return console[_0x283d0c(0x1bc)]('[KafkaConsumer]\x20Consumer\x20not\x20connected'),!![];try{const _0x42731d=_0x195626[_0x283d0c(0x190)][_0x283d0c(0x150)]('|');let _0x25fd7e=0x0;while(!![]){switch(_0x42731d[_0x25fd7e++]){case'0':this['consumer']&&(await this['consumer']['stop'](),await this['consumer']['disconnect']());continue;case'1':console['log'](_0x195626[_0x283d0c(0x14a)]);continue;case'2':this[_0x283d0c(0x1a8)]=![];continue;case'3':return!![];case'4':this['isRunning']=![];continue;case'5':this[_0x283d0c(0x185)]=![];continue;}break;}}catch(_0x1a764c){return console['error']('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x1a764c[_0x283d0c(0x1b9)]),![];}}async['seekToOffset'](_0x4ee4cc,_0x4efb58,_0x124b17){const _0x5e72e6=a0_0x3edea5,_0x3b3469={'EVfwO':_0x5e72e6(0x169)};if(!this['isConnected'])return console[_0x5e72e6(0x19d)](_0x3b3469[_0x5e72e6(0x155)]),![];try{return this['consumer'][_0x5e72e6(0x18a)]({'topic':_0x4ee4cc,'partition':_0x4efb58,'offset':_0x124b17[_0x5e72e6(0x1ba)]()}),console[_0x5e72e6(0x1bc)](_0x5e72e6(0x1a1)+_0x124b17+'\x20on\x20'+_0x4ee4cc+':'+_0x4efb58),!![];}catch(_0xa4d8d9){return console[_0x5e72e6(0x19d)]('[KafkaConsumer]\x20Seek\x20error:\x20'+_0xa4d8d9['message']),![];}}['getStatus'](){const _0x60e9ec=a0_0x3edea5,_0x18fee4=this[_0x60e9ec(0x17f)]();return{'enabled':_0x18fee4['enabled'],'connected':this[_0x60e9ec(0x1a8)],'running':this['isRunning'],'paused':this['isPaused'],'brokers':_0x18fee4[_0x60e9ec(0x168)],'clientId':_0x18fee4['clientId'],'groupId':this[_0x60e9ec(0x176)],'subscribedTopics':this['subscribedTopics']};}[a0_0x3edea5(0x1a4)](){const _0x34d8c8=a0_0x3edea5,_0x219c76={'BvCLt':function(_0x4dee87,_0x2df04e){return _0x4dee87>_0x2df04e;},'mQzcB':function(_0xe7009c,_0x33498a){return _0xe7009c*_0x33498a;},'tTbwa':function(_0x43824f,_0x3dc79b){return _0x43824f+_0x3dc79b;},'rEmer':function(_0x250947,_0x5bb51f){return _0x250947/_0x5bb51f;},'Caarv':function(_0x4655d5,_0x1facdb){return _0x4655d5-_0x1facdb;}},_0x5c02ef=_0x219c76[_0x34d8c8(0x16d)](this[_0x34d8c8(0x184)][_0x34d8c8(0x19b)][_0x34d8c8(0x174)],0x0)?this[_0x34d8c8(0x184)][_0x34d8c8(0x19b)][_0x34d8c8(0x1b8)]((_0x605aab,_0x2ae180)=>_0x605aab+_0x2ae180,0x0)/this['metrics']['processingTimes']['length']:0x0,_0x4eb655=this[_0x34d8c8(0x184)][_0x34d8c8(0x19b)][_0x34d8c8(0x174)]>0x0?Math['min'](...this['metrics'][_0x34d8c8(0x19b)]):0x0,_0x150dd3=_0x219c76['BvCLt'](this[_0x34d8c8(0x184)][_0x34d8c8(0x19b)][_0x34d8c8(0x174)],0x0)?Math[_0x34d8c8(0x192)](...this['metrics'][_0x34d8c8(0x19b)]):0x0;return{'messagesReceived':this[_0x34d8c8(0x184)]['messagesReceived'],'messagesProcessed':this[_0x34d8c8(0x184)]['messagesProcessed'],'messagesFailed':this[_0x34d8c8(0x184)]['messagesFailed'],'successRate':this[_0x34d8c8(0x184)][_0x34d8c8(0x188)]>0x0?_0x219c76['mQzcB'](this[_0x34d8c8(0x184)]['messagesProcessed']/this['metrics']['messagesReceived'],0x64)[_0x34d8c8(0x1a6)](0x2)+'%':'0%','lastMessageTime':this[_0x34d8c8(0x184)][_0x34d8c8(0x164)],'startTime':this['metrics'][_0x34d8c8(0x1af)],'uptime':this[_0x34d8c8(0x184)][_0x34d8c8(0x1af)]?_0x219c76['tTbwa'](Math['floor'](_0x219c76['rEmer'](_0x219c76[_0x34d8c8(0x171)](Date['now'](),this['metrics']['startTime']['getTime']()),0x3e8)),'s'):'0s','processingTime':{'avg':Math[_0x34d8c8(0x17d)](_0x5c02ef)+'ms','min':_0x219c76[_0x34d8c8(0x156)](_0x4eb655,'ms'),'max':_0x150dd3+'ms'}};}['resetMetrics'](){const _0x297951=a0_0x3edea5;this[_0x297951(0x184)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this[_0x297951(0x181)]?new Date():null,'processingTimes':[]},console['log']('[KafkaConsumer]\x20Metrics\x20reset');}async['close'](){const _0x13641a=a0_0x3edea5;await this[_0x13641a(0x198)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}function createInstance(){return new KafkaConsumerService();}module[a0_0x3edea5(0x187)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
@@ -1 +1 @@
1
- function a0_0x30c3(){const _0x47c1f5=['AxnjBML0AwfSAxPPBMC','C3bSAxq','A0DPAxa','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','z2v0rNvSBfLLyxi','s0fgs0fFu0fttf9vu0vstKfnrq','DgvUyw50swq','y3jLyxrLza','ChjVzhvJzxi','tgvNywn5ugfYDgL0Aw9Uzxi','yNjVA2vYCW','s0fgs0fFu1nm','CMvWBgfJzq','ndmZnJC5mgTlAvHJzG','CgfKu3rHCNq','v0fstG','Dhj1zq','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','zw52','mtaWma','s2vczfO','ndaYmZzOu3vcsfq','s0fgs0fFuKvuuLLFqvruru1qvfm','s0fgs0fFqLjps0vsuW','s0fgs0fFq0Xjru5ux0Le','ChvIBgLZAeLUC2vYDa','Bg9N','wwXlEuK','s0fgs0fFuKvrvuvtvf9usu1ft1vu','mta0odHewLH2z0i','ntvWsffREwW','AxndB25Uzwn0zwq','mtm1mhHWqNbIza','y29UBMvJDgLVBLbYB21PC2u','mZuZmuvfseDiwa','mZu2BxnesxLg','su5gtW','z2v0u3rHDhvZ','zw5HyMXLza','re10CKK','mtiWndKZmhzxCuP2rG','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','Bg9Ntgv2zwW','DgfIBgvoyw1L','Dg9WAwnqyxr0zxjU','DxbKyxrLza','ru5usvrzx0nsrufuruq','yNvPBgrfDMvUDe1LC3nHz2u','ChvIBgLZAev2zw50','AM9PBG','A2fMA2e','yMfZzu9MzNnLDa','A2fMA2fQCW','A2v5rMLLBgq','ms4W','zgvMyxvSDa','ndq2mtGYAKHuu21u','nKfXyvjKCW','mJu5otaXnvngsfvLqG','BxjZzxm','AxDYsMq','y29YCMvSyxrPB25jza','w0THzMTHxsblywzRysbWCM9KDwnLCIbPCYbKAxnHyMXLzcbPBIbJB25MAwD1CMf0Aw9U','zM9YBwf0rgf0zvrPBwu','B1vKwK4','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','Dg9WAwm','rLfOAgi','E2fJDgLVBN0','E2vUzhbVAw50Fq','revcvuC','ru5usvrzx1vqrefuruq','t0LkDMm','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','Aw5PDgLHBgL6zq','z2v0q29UzMLN','y29UBMvJDgLVBLrPBwvVDxq','DxvPza','z2v0rgf0zq','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','zxjYB3i','CMvZDgzVCMDLlq','z2v0tw9UDgG','u2njt0C','zxHWB3j0CW','C3rYAw5NAwz5','BwvZC2fNzq','s0fgs0fFuKvuuLLFrevmqvK','y2XVC2u','zw5KCg9PBNq','y3jLyxrLzej5'];a0_0x30c3=function(){return _0x47c1f5;};return a0_0x30c3();}const a0_0x3bdb1f=a0_0x1e2a;(function(_0x2b85e9,_0x42e076){const _0x464407=a0_0x1e2a,_0x4e29fe=_0x2b85e9();while(!![]){try{const _0x3282af=-parseInt(_0x464407(0xc5))/0x1+-parseInt(_0x464407(0xb5))/0x2+parseInt(_0x464407(0xaf))/0x3*(-parseInt(_0x464407(0xb0))/0x4)+parseInt(_0x464407(0xc7))/0x5*(-parseInt(_0x464407(0xc6))/0x6)+parseInt(_0x464407(0xa2))/0x7+parseInt(_0x464407(0xaa))/0x8*(-parseInt(_0x464407(0xad))/0x9)+parseInt(_0x464407(0x99))/0xa*(parseInt(_0x464407(0xab))/0xb);if(_0x3282af===_0x42e076)break;else _0x4e29fe['push'](_0x4e29fe['shift']());}catch(_0x5c9e12){_0x4e29fe['push'](_0x4e29fe['shift']());}}}(a0_0x30c3,0x4a4a2));function a0_0x1e2a(_0x1da1c1,_0x2fade5){_0x1da1c1=_0x1da1c1-0x7e;const _0x30c374=a0_0x30c3();let _0x1e2adb=_0x30c374[_0x1da1c1];if(a0_0x1e2a['uwJjFd']===undefined){var _0x36131d=function(_0x21e37a){const _0x2a3d91='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5b8998='',_0xdde579='';for(let _0xf4a9fe=0x0,_0x5c7acb,_0x16d14e,_0x331b32=0x0;_0x16d14e=_0x21e37a['charAt'](_0x331b32++);~_0x16d14e&&(_0x5c7acb=_0xf4a9fe%0x4?_0x5c7acb*0x40+_0x16d14e:_0x16d14e,_0xf4a9fe++%0x4)?_0x5b8998+=String['fromCharCode'](0xff&_0x5c7acb>>(-0x2*_0xf4a9fe&0x6)):0x0){_0x16d14e=_0x2a3d91['indexOf'](_0x16d14e);}for(let _0xf9cb05=0x0,_0x44a18a=_0x5b8998['length'];_0xf9cb05<_0x44a18a;_0xf9cb05++){_0xdde579+='%'+('00'+_0x5b8998['charCodeAt'](_0xf9cb05)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xdde579);};a0_0x1e2a['VMxNKZ']=_0x36131d,a0_0x1e2a['KayebN']={},a0_0x1e2a['uwJjFd']=!![];}const _0x428cc1=_0x30c374[0x0],_0x40645c=_0x1da1c1+_0x428cc1,_0x54b806=a0_0x1e2a['KayebN'][_0x40645c];return!_0x54b806?(_0x1e2adb=a0_0x1e2a['VMxNKZ'](_0x1e2adb),a0_0x1e2a['KayebN'][_0x40645c]=_0x1e2adb):_0x1e2adb=_0x54b806,_0x1e2adb;}const {Kafka,logLevel,Partitioners}=require(a0_0x3bdb1f(0xc1)),{v7:uuidv7}=require(a0_0x3bdb1f(0x7e));class KafkaService{constructor(){const _0xd68d5c=a0_0x3bdb1f;this['kafka']=null,this['producer']=null,this['isConnected']=![],this['isInitializing']=![],this[_0xd68d5c(0xae)]=null;}['getConfig'](){const _0x134042=a0_0x3bdb1f,_0x489364={'AeXpn':function(_0x448d5c,_0x2d6495){return _0x448d5c===_0x2d6495;},'kGiip':'localhost:9092','iWEMv':'3000','iwrJd':'default','DMtrI':function(_0x21551a,_0x30e521){return _0x21551a(_0x30e521);},'dvnJG':'warn'};return{'enabled':_0x489364['AeXpn'](process[_0x134042(0x9f)]['KAFKA_ENABLED'],_0x134042(0x9c)),'brokers':(process[_0x134042(0x9f)][_0x134042(0xa4)]||_0x489364[_0x134042(0x8e)])[_0x134042(0x8d)](','),'clientId':process['env'][_0x134042(0xa5)]||_0x134042(0x82)+(process['env'][_0x134042(0x8f)]||_0x134042(0xc4))+'-producer','connectionTimeout':parseInt(process[_0x134042(0x9f)]['KAFKA_CONNECTION_TIMEOUT']||_0x489364['iWEMv']),'requestTimeout':parseInt(process['env'][_0x134042(0xa9)]||'25000'),'topicPattern':process['env']['KAFKA_TOPIC_PATTERN']||'{module}.{endpoint}.events','tenantId':process['env']['KAFKA_TENANT_ID']||_0x489364[_0x134042(0xc9)],'retryAttempts':_0x489364[_0x134042(0xb4)](parseInt,process[_0x134042(0x9f)][_0x134042(0xa3)]||'3'),'retryDelay':parseInt(process['env'][_0x134042(0x88)]||_0x134042(0xa0)),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x489364['dvnJG']};}['getLogLevel'](_0x342c19){const _0x25cde8=a0_0x3bdb1f,_0x4427eb={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel[_0x25cde8(0x9b)],'info':logLevel[_0x25cde8(0xb1)],'debug':logLevel[_0x25cde8(0xd3)]};return _0x4427eb[_0x342c19['toLowerCase']()]||logLevel['WARN'];}async[a0_0x3bdb1f(0xd7)](){const _0x1f81d8=a0_0x3bdb1f,_0x59565b={'iZsmY':'[Kafka]\x20Producer\x20disconnected','upWVf':_0x1f81d8(0x9c),'HYKpj':'producer.disconnect'},_0x5229f8=this[_0x1f81d8(0xd8)]();if(!_0x5229f8['enabled'])return console[_0x1f81d8(0xa7)](_0x1f81d8(0xcb)),![];if(this['isConnected'])return!![];if(this[_0x1f81d8(0x8c)]&&this[_0x1f81d8(0xae)])return this['connectionPromise'];return this[_0x1f81d8(0x8c)]=!![],this['connectionPromise']=new Promise(async _0x4143a0=>{const _0x339e82=_0x1f81d8;try{let _0x4c4ae4=undefined;process[_0x339e82(0x9f)][_0x339e82(0x97)]===_0x59565b['upWVf']&&(_0x4c4ae4=!![]);let _0x5c771c=undefined;process['env']['KAFKA_SASL_MECHANISM']&&(_0x5c771c={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x339e82(0x91)]||'','password':process[_0x339e82(0x9f)]['KAFKA_SASL_PASSWORD']||''}),this[_0x339e82(0xbf)]=new Kafka({'clientId':_0x5229f8['clientId'],'brokers':_0x5229f8['brokers'],'connectionTimeout':_0x5229f8[_0x339e82(0xd9)],'requestTimeout':_0x5229f8['requestTimeout'],'logLevel':this['getLogLevel'](_0x5229f8[_0x339e82(0xb7)]),'ssl':_0x4c4ae4,'sasl':_0x5c771c,'retry':{'initialRetryTime':_0x5229f8['retryDelay'],'retries':_0x5229f8['retryAttempts']}}),this['producer']=this[_0x339e82(0xbf)][_0x339e82(0x94)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x339e82(0x95)]}),await this[_0x339e82(0x94)]['connect'](),this['isConnected']=!![],console['log'](_0x339e82(0x9e)+_0x5229f8['brokers'][_0x339e82(0xbe)](',\x20')),this[_0x339e82(0x94)]['on'](_0x59565b['HYKpj'],()=>{const _0x466b94=_0x339e82;console['log'](_0x59565b['iZsmY']),this[_0x466b94(0xac)]=![];}),_0x4143a0(!![]);}catch(_0x407294){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x407294['message']),this['isConnected']=![],_0x4143a0(![]);}finally{this[_0x339e82(0x8c)]=![];}}),this[_0x1f81d8(0xae)];}['formatDateTime'](_0x254d5d){const _0x17d2f1=a0_0x3bdb1f,_0x3b9ace={'ScIOG':function(_0x4c586a,_0x120f33){return _0x4c586a(_0x120f33);},'FQhhb':function(_0x7610a4,_0x5cf719){return _0x7610a4(_0x5cf719);},'CSwGb':function(_0x1c09cd,_0x25e03f){return _0x1c09cd(_0x25e03f);}},_0x23bf03=_0x254d5d||new Date(),_0x41e451=_0x23bf03[_0x17d2f1(0x90)](),_0x4ceddb=_0x3b9ace[_0x17d2f1(0x84)](String,_0x23bf03[_0x17d2f1(0x83)]()+0x1)['padStart'](0x2,'0'),_0x114f2a=_0x3b9ace['ScIOG'](String,_0x23bf03[_0x17d2f1(0x7f)]())[_0x17d2f1(0x9a)](0x2,'0'),_0x1474dc=_0x3b9ace[_0x17d2f1(0xd0)](String,_0x23bf03['getHours']())['padStart'](0x2,'0'),_0x103639=String(_0x23bf03['getMinutes']())[_0x17d2f1(0x9a)](0x2,'0'),_0x380d21=_0x3b9ace['CSwGb'](String,_0x23bf03['getSeconds']())['padStart'](0x2,'0');return _0x41e451+'-'+_0x4ceddb+'-'+_0x114f2a+'\x20'+_0x1474dc+':'+_0x103639+':'+_0x380d21;}['buildTopicName'](_0x75c014,_0x3f3d40,_0x5bf526,_0x1900c8=null){const _0x2e2407=a0_0x3bdb1f,_0x35ee09={'mrses':_0x2e2407(0xd2),'qGDWE':_0x2e2407(0xd1)};if(_0x1900c8)return _0x1900c8;const _0x35d671=this[_0x2e2407(0xd8)]()[_0x2e2407(0xb9)];return _0x35d671[_0x2e2407(0x98)]('{module}',_0x75c014)['replace'](_0x35ee09[_0x2e2407(0xc8)],_0x3f3d40)['replace'](_0x35ee09['qGDWE'],_0x5bf526);}['buildEventMessage'](_0x13a2a9,_0x367958,_0x3a8417,_0x7d416={}){const _0x4c8566=a0_0x3bdb1f,_0x32548e={'KdbHH':function(_0x4aea48){return _0x4aea48();},'OIJvc':_0x4c8566(0xc3)},_0x371a7d=new Date(),_0xc0d965=this[_0x4c8566(0xcc)](_0x371a7d),_0xf07911=_0x7d416['correlationId']||'corr-'+_0x32548e['KdbHH'](uuidv7);return{'eventId':'evt-'+_0x32548e['KdbHH'](uuidv7),'eventType':_0x13a2a9,'eventTime':_0xc0d965,'eventVersion':_0x32548e[_0x4c8566(0xd5)],'source':_0x4c8566(0x82)+(_0x7d416['module']||'unknown'),'correlationId':_0xf07911,'newData':_0x3a8417,'oldData':_0x367958,'metadata':{'createdBy':_0x7d416[_0x4c8566(0x8b)]||'SYSTEM','createdAt':_0xc0d965,'systemId':'RESTFORGE-'+(_0x7d416['module']||'unknown')['toUpperCase'](),'tenantId':this['getConfig']()[_0x4c8566(0x92)],'endpoint':_0x7d416[_0x4c8566(0x8a)]||null,'tableName':_0x7d416['tableName']||null}};}async[a0_0x3bdb1f(0xbd)](_0x210403,_0x45d6b2,_0x43293,_0x15cab5,_0x56e120={}){const _0x4661d2=a0_0x3bdb1f,_0x255235={'KeBdZ':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','oUdZN':function(_0x42b44f){return _0x42b44f();},'rEEbM':function(_0x5a8c1b,_0xf76d3f){return _0x5a8c1b(_0xf76d3f);}},_0x5485f5=this[_0x4661d2(0xd8)]();if(!_0x5485f5[_0x4661d2(0xb3)])return{'success':![],'reason':_0x4661d2(0xb6),'published':![]};if(!this['isConnected']){const _0x14e8ae=await this['initialize']();if(!_0x14e8ae)return{'success':![],'reason':_0x255235[_0x4661d2(0xa1)],'published':![]};}try{const _0x551808=this[_0x4661d2(0xbc)](_0x45d6b2,_0x43293,_0x15cab5,_0x56e120),_0x45b7b4=_0x56e120['keyField']||'id',_0x2292aa=_0x15cab5?.[_0x45b7b4]||_0x43293?.[_0x45b7b4]||_0x255235[_0x4661d2(0xcd)](uuidv7),_0x58d6e6=await this['producer']['send']({'topic':_0x210403,'messages':[{'key':_0x255235['rEEbM'](String,_0x2292aa),'value':JSON[_0x4661d2(0x86)](_0x551808),'headers':{'event-type':_0x45d6b2,'correlation-id':_0x551808[_0x4661d2(0xca)],'source':_0x551808['source']}}]});return console['log'](_0x4661d2(0xce)+_0x210403+':\x20'+_0x45d6b2+'\x20(key:\x20'+_0x2292aa+')'),{'success':!![],'correlationId':_0x551808['correlationId'],'topic':_0x210403,'partition':_0x58d6e6[0x0]?.['partition'],'offset':_0x58d6e6[0x0]?.[_0x4661d2(0xc0)],'published':!![]};}catch(_0x4b9b0e){return console['error'](_0x4661d2(0x80)+_0x210403+':\x20'+_0x4b9b0e[_0x4661d2(0x87)]),{'success':![],'error':_0x4b9b0e['message'],'published':![]};}}async[a0_0x3bdb1f(0xa6)](_0x197071,_0x14d0dc,_0x44f175,_0xb24a27={}){const _0x14c462=a0_0x3bdb1f,_0xa2998f={'RISHu':_0x14c462(0x93),'XVoQO':_0x14c462(0xbb)},_0x59215b=this['buildTopicName'](_0x197071,_0x14d0dc,_0xa2998f['RISHu'],_0xb24a27['topic']);return this[_0x14c462(0xbd)](_0x59215b,_0xa2998f['XVoQO'],null,_0x44f175,{'module':_0x197071,'endpoint':_0x14d0dc,'keyField':_0xb24a27[_0x14c462(0xc2)],'tableName':_0xb24a27['tableName'],'correlationId':_0xb24a27[_0x14c462(0xca)]});}async['publishUpdate'](_0x29ca38,_0xb5d158,_0x6640fc,_0x5b815c,_0x23261f={}){const _0x1c0d6e=a0_0x3bdb1f,_0x5e94ec={'OLWHd':_0x1c0d6e(0xba),'YlKyI':_0x1c0d6e(0xd4)},_0x5201aa=this['buildTopicName'](_0x29ca38,_0xb5d158,_0x5e94ec['OLWHd'],_0x23261f[_0x1c0d6e(0xcf)]);return this['publishEvent'](_0x5201aa,_0x5e94ec[_0x1c0d6e(0xa8)],_0x6640fc,_0x5b815c,{'module':_0x29ca38,'endpoint':_0xb5d158,'keyField':_0x23261f['keyField'],'tableName':_0x23261f['tableName'],'correlationId':_0x23261f['correlationId']});}async['publishDelete'](_0x16edf4,_0x502618,_0x4bb715,_0x1e9238={}){const _0x4d9c21=a0_0x3bdb1f,_0x38d664={'uJXlT':'ENTITY_DELETED'},_0x32e95=this['buildTopicName'](_0x16edf4,_0x502618,'deleted',_0x1e9238['topic']);return this[_0x4d9c21(0xbd)](_0x32e95,_0x38d664['uJXlT'],_0x4bb715,null,{'module':_0x16edf4,'endpoint':_0x502618,'keyField':_0x1e9238['keyField'],'tableName':_0x1e9238[_0x4d9c21(0xb8)],'correlationId':_0x1e9238[_0x4d9c21(0xca)]});}[a0_0x3bdb1f(0xb2)](){const _0x534538=a0_0x3bdb1f,_0x120402=this['getConfig']();return{'enabled':_0x120402['enabled'],'connected':this['isConnected'],'brokers':_0x120402[_0x534538(0x96)],'clientId':_0x120402['clientId'],'topicPattern':_0x120402[_0x534538(0xb9)]};}async['close'](){const _0xfd34a=a0_0x3bdb1f,_0x2be40c={'XnOKC':_0xfd34a(0xd6)};if(this[_0xfd34a(0x94)]&&this[_0xfd34a(0xac)])try{await this['producer']['disconnect'](),this['isConnected']=![],console['log'](_0x2be40c['XnOKC']);}catch(_0x3d60d5){console[_0xfd34a(0x81)](_0xfd34a(0x9d)+_0x3d60d5['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){const _0x270e0d=a0_0x3bdb1f;instance&&(instance[_0x270e0d(0x89)](),instance=null);}module[a0_0x3bdb1f(0x85)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
1
+ const a0_0x2f715a=a0_0x3f98;(function(_0x7930c1,_0x5aec74){const _0x588c3d=a0_0x3f98,_0x2531ad=_0x7930c1();while(!![]){try{const _0x49ce60=-parseInt(_0x588c3d(0x113))/0x1*(-parseInt(_0x588c3d(0x10b))/0x2)+-parseInt(_0x588c3d(0xdf))/0x3+parseInt(_0x588c3d(0xf3))/0x4*(-parseInt(_0x588c3d(0x114))/0x5)+-parseInt(_0x588c3d(0xf1))/0x6+-parseInt(_0x588c3d(0x120))/0x7+-parseInt(_0x588c3d(0x103))/0x8+-parseInt(_0x588c3d(0xe7))/0x9*(-parseInt(_0x588c3d(0x112))/0xa);if(_0x49ce60===_0x5aec74)break;else _0x2531ad['push'](_0x2531ad['shift']());}catch(_0x1ec19b){_0x2531ad['push'](_0x2531ad['shift']());}}}(a0_0x7558,0xc2a15));function a0_0x7558(){const _0x4f38c3=['mJy3mZG0mfjmsNvAuW','yNjVA2vYCW','zw52','y29UBMvJDgLVBLbYB21PC2u','Dhj1zq','yNvPBgruB3bPy05HBwu','Bw9KDwXL','A2v5rMLLBgq','ovjkBe53tW','yMfZzu9MzNnLDa','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','z2v0q29UzMLN','z2v0tg9Ntgv2zwW','C2vUza','v2nPr0e','DgfIBgvoyw1L','zLfmDMC','C3bSAxq','mZyZnJKWmgDVv2fLvW','ChjVzhvJzxi','mJaWogPzDwz2Aq','Dg9WAwm','u1Ltvevn','rMfPBgvKihrVignVBM5Ly3qGDg8Gs2fMA2eGyNjVA2vY','AxndB25Uzwn0zwq','Bg9JywXOB3n0oJKWoti','BwvZC2fNzq','CMvZDgzVCMDLlq','ChjVzhvJzxiUzgLZy29UBMvJDa','z2v0tw9UDgG','whzoy0O','E2fJDgLVBN0','zxz0lq','tLLuEeW','s0fgs0fFte9hx0XfvKvm','rvjst1i','mtqWmZCYognArKrVCa','s0fgs0fFuKvuuLLFqvruru1qvfm','s0fgs0fFu0fttf9nruniqu5ju00','y3jLyxrLzej5','Dg9WAwnqyxr0zxjU','zM9YBwf0rgf0zvrPBwu','zw5KCg9PBNq','su5gtW','mtq4mdrSsKTSweq','vMvrsgO','rMPPq3e','y29YCMvSyxrPB25jza','mtaWma','zxHWB3j0CW','Bg9N','ndCYmZCYntbysgXfsgS','oxrVtLj0yG','mtu2mdvuCfL6wgG','s05Luw8','z2v0u2vJB25KCW','v0fstG','zgvSzxrLza','Bg9Ntgv2zwW','y29YCI0','Dw5RBM93BG','y3jLyxrLza','s0fgs0fFve9qsunFuefuvevstG','Aw5PDgLHBgL6zq','yNvPBgrfDMvUDe1LC3nHz2u','nti3nduWmhD5rLnqtG','zxjYB3i','ChvIBgLZAev2zw50','C3rYAw5NAwz5','tLLXq08','y2XVC2u','y2XPzw50swq','CezLugy','uxHPu0e','z2v0rNvSBfLLyxi','CMv0CNLezwXHEq','AxnjBML0AwfSAxPPBMC','zw5HyMXLza','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','BvbKEMe','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','CgfKu3rHCNq','y29UBMvJDa','mJuWmda','zgvMyxvSDa','y29UBMvJDgLVBLrPBwvVDxq','A2fMA2fQCW','E21VzhvSzx0','s0fgs0fFru5bqKXfra','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','ANnoDem','ru5usvrzx0nsrufuruq','DgvUyw50swq','Dg9vChbLCKnHC2u','twTctKe','s0fgs0fFqLjps0vsuW'];a0_0x7558=function(){return _0x4f38c3;};return a0_0x7558();}const {Kafka,logLevel,Partitioners}=require(a0_0x2f715a(0x135)),{v7:uuidv7}=require('uuid');function a0_0x3f98(_0x39a84e,_0x4115a7){_0x39a84e=_0x39a84e-0xd6;const _0x755867=a0_0x7558();let _0x3f98cb=_0x755867[_0x39a84e];if(a0_0x3f98['JVPGOC']===undefined){var _0x19d32d=function(_0x28bfba){const _0x39c0d4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x327691='',_0xbc76f4='';for(let _0x4a91da=0x0,_0x481897,_0x36c5fc,_0x2b5350=0x0;_0x36c5fc=_0x28bfba['charAt'](_0x2b5350++);~_0x36c5fc&&(_0x481897=_0x4a91da%0x4?_0x481897*0x40+_0x36c5fc:_0x36c5fc,_0x4a91da++%0x4)?_0x327691+=String['fromCharCode'](0xff&_0x481897>>(-0x2*_0x4a91da&0x6)):0x0){_0x36c5fc=_0x39c0d4['indexOf'](_0x36c5fc);}for(let _0x2b4172=0x0,_0x1bea73=_0x327691['length'];_0x2b4172<_0x1bea73;_0x2b4172++){_0xbc76f4+='%'+('00'+_0x327691['charCodeAt'](_0x2b4172)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xbc76f4);};a0_0x3f98['LLUmFB']=_0x19d32d,a0_0x3f98['zchAwW']={},a0_0x3f98['JVPGOC']=!![];}const _0x2e0998=_0x755867[0x0],_0x5f534d=_0x39a84e+_0x2e0998,_0x2a0610=a0_0x3f98['zchAwW'][_0x5f534d];return!_0x2a0610?(_0x3f98cb=a0_0x3f98['LLUmFB'](_0x3f98cb),a0_0x3f98['zchAwW'][_0x5f534d]=_0x3f98cb):_0x3f98cb=_0x2a0610,_0x3f98cb;}class KafkaService{constructor(){const _0xb41cb9=a0_0x2f715a;this['kafka']=null,this['producer']=null,this['isConnected']=![],this[_0xb41cb9(0x12b)]=![],this[_0xb41cb9(0xe2)]=null;}['getConfig'](){const _0x24773a=a0_0x2f715a,_0x5064f2={'mPdza':function(_0x41f5cf,_0x414250){return _0x41f5cf===_0x414250;},'scbXy':'true','VeQHj':_0x24773a(0xf8),'XvNcJ':_0x24773a(0x133),'WciGA':function(_0x52287a,_0x441d0b){return _0x52287a(_0x441d0b);},'XDypv':_0x24773a(0x132),'FjiCq':_0x24773a(0x10f)};return{'enabled':_0x5064f2[_0x24773a(0x12e)](process['env'][_0x24773a(0xd7)],_0x5064f2['scbXy']),'brokers':(process[_0x24773a(0xe1)][_0x24773a(0xde)]||_0x5064f2[_0x24773a(0x10c)])[_0x24773a(0xf0)](','),'clientId':process[_0x24773a(0xe1)]['KAFKA_CLIENT_ID']||_0x24773a(0xfa)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x5064f2['XvNcJ'])+'-producer','connectionTimeout':parseInt(process[_0x24773a(0xe1)]['KAFKA_CONNECTION_TIMEOUT']||'3000'),'requestTimeout':_0x5064f2[_0x24773a(0xed)](parseInt,process[_0x24773a(0xe1)]['KAFKA_REQUEST_TIMEOUT']||_0x5064f2['XDypv']),'topicPattern':process['env'][_0x24773a(0x11d)]||'{module}.{endpoint}.events','tenantId':process[_0x24773a(0xe1)]['KAFKA_TENANT_ID']||_0x5064f2[_0x24773a(0xfd)],'retryAttempts':parseInt(process['env'][_0x24773a(0x104)]||'3'),'retryDelay':parseInt(process[_0x24773a(0xe1)]['KAFKA_RETRY_DELAY']||_0x5064f2[_0x24773a(0x10d)]),'logLevel':process[_0x24773a(0xe1)][_0x24773a(0x101)]||'warn'};}[a0_0x2f715a(0xeb)](_0x2ecd69){const _0x3fcd8c=a0_0x2f715a,_0x393ae2={'nothing':logLevel['NOTHING'],'error':logLevel[_0x3fcd8c(0x102)],'warn':logLevel[_0x3fcd8c(0x117)],'info':logLevel[_0x3fcd8c(0x10a)],'debug':logLevel['DEBUG']};return _0x393ae2[_0x2ecd69['toLowerCase']()]||logLevel[_0x3fcd8c(0x117)];}async[a0_0x2f715a(0x11e)](){const _0x14f923=a0_0x2f715a,_0x55e505={'ynWxn':function(_0x22b5ff,_0x2c84a9){return _0x22b5ff===_0x2c84a9;},'NYTxL':'[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'},_0x3983fb=this[_0x14f923(0xea)]();if(!_0x3983fb['enabled'])return console['log'](_0x55e505[_0x14f923(0x100)]),![];if(this[_0x14f923(0xf7)])return!![];if(this[_0x14f923(0x12b)]&&this['connectionPromise'])return this[_0x14f923(0xe2)];return this[_0x14f923(0x12b)]=!![],this[_0x14f923(0xe2)]=new Promise(async _0x3d89fe=>{const _0x47d9bc=_0x14f923;try{let _0x496bb4=undefined;_0x55e505['ynWxn'](process['env']['KAFKA_SSL'],_0x47d9bc(0xe3))&&(_0x496bb4=!![]);let _0xf9dc3=undefined;process[_0x47d9bc(0xe1)][_0x47d9bc(0x105)]&&(_0xf9dc3={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process[_0x47d9bc(0xe1)]['KAFKA_SASL_USERNAME']||'','password':process[_0x47d9bc(0xe1)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x3983fb['clientId'],'brokers':_0x3983fb['brokers'],'connectionTimeout':_0x3983fb[_0x47d9bc(0x134)],'requestTimeout':_0x3983fb['requestTimeout'],'logLevel':this[_0x47d9bc(0xeb)](_0x3983fb[_0x47d9bc(0x119)]),'ssl':_0x496bb4,'sasl':_0xf9dc3,'retry':{'initialRetryTime':_0x3983fb[_0x47d9bc(0x12a)],'retries':_0x3983fb['retryAttempts']}}),this[_0x47d9bc(0xf2)]=this['kafka'][_0x47d9bc(0xf2)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners['LegacyPartitioner']}),await this['producer'][_0x47d9bc(0x131)](),this['isConnected']=!![],console['log'](_0x47d9bc(0xd8)+_0x3983fb[_0x47d9bc(0xe0)]['join'](',\x20')),this['producer']['on'](_0x47d9bc(0xfb),()=>{const _0x3dc9e6=_0x47d9bc;console[_0x3dc9e6(0x111)](_0x3dc9e6(0xe9)),this[_0x3dc9e6(0xf7)]=![];}),_0x3d89fe(!![]);}catch(_0x44be4b){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x44be4b[_0x47d9bc(0xf9)]),this[_0x47d9bc(0xf7)]=![],_0x3d89fe(![]);}finally{this['isInitializing']=![];}}),this['connectionPromise'];}['formatDateTime'](_0x41f6aa){const _0x4384f3=a0_0x2f715a,_0x5204e8={'CIHtt':function(_0x4a4ac9,_0x34f79d){return _0x4a4ac9(_0x34f79d);},'MkBNA':function(_0x2473cc,_0x21e83f){return _0x2473cc(_0x21e83f);},'QxiSA':function(_0x28362c,_0x45619f){return _0x28362c(_0x45619f);}},_0x39cad1=_0x41f6aa||new Date(),_0x47cf06=_0x39cad1[_0x4384f3(0x129)](),_0x4023ce=String(_0x39cad1[_0x4384f3(0xfc)]()+0x1)[_0x4384f3(0x130)](0x2,'0'),_0x147cd5=String(_0x39cad1['getDate']())['padStart'](0x2,'0'),_0x1de909=_0x5204e8['CIHtt'](String,_0x39cad1['getHours']())[_0x4384f3(0x130)](0x2,'0'),_0x4205be=_0x5204e8[_0x4384f3(0xdd)](String,_0x39cad1['getMinutes']())[_0x4384f3(0x130)](0x2,'0'),_0x3d2026=_0x5204e8[_0x4384f3(0x128)](String,_0x39cad1[_0x4384f3(0x116)]())['padStart'](0x2,'0');return _0x47cf06+'-'+_0x4023ce+'-'+_0x147cd5+'\x20'+_0x1de909+':'+_0x4205be+':'+_0x3d2026;}[a0_0x2f715a(0xe4)](_0x543454,_0x3f0641,_0x261cad,_0x395a5c=null){const _0x5f4cd1=a0_0x2f715a,_0x3f58e2={'jsNtC':_0x5f4cd1(0xd6),'xQjsj':_0x5f4cd1(0xfe)};if(_0x395a5c)return _0x395a5c;const _0x5208bb=this['getConfig']()['topicPattern'];return _0x5208bb['replace'](_0x3f58e2[_0x5f4cd1(0xd9)],_0x543454)['replace']('{endpoint}',_0x3f0641)['replace'](_0x3f58e2['xQjsj'],_0x261cad);}['buildEventMessage'](_0x5f1b30,_0x5f0d41,_0x50442f,_0x2295e4={}){const _0x56f0d=a0_0x2f715a,_0x27a20e={'KNeQo':_0x56f0d(0x11b)},_0x16c802=new Date(),_0x58b1ec=this[_0x56f0d(0x108)](_0x16c802),_0x404aa7=_0x2295e4[_0x56f0d(0x10e)]||_0x56f0d(0x11a)+uuidv7();return{'eventId':_0x56f0d(0xff)+uuidv7(),'eventType':_0x5f1b30,'eventTime':_0x58b1ec,'eventVersion':'1.0','source':'restforge-'+(_0x2295e4['module']||_0x56f0d(0x11b)),'correlationId':_0x404aa7,'newData':_0x50442f,'oldData':_0x5f0d41,'metadata':{'createdBy':_0x2295e4[_0x56f0d(0x106)]||_0x56f0d(0xf5),'createdAt':_0x58b1ec,'systemId':'RESTFORGE-'+(_0x2295e4[_0x56f0d(0xe5)]||_0x27a20e[_0x56f0d(0x115)])[_0x56f0d(0xdc)](),'tenantId':this[_0x56f0d(0xea)]()[_0x56f0d(0xdb)],'endpoint':_0x2295e4[_0x56f0d(0x109)]||null,'tableName':_0x2295e4[_0x56f0d(0xee)]||null}};}async[a0_0x2f715a(0x122)](_0x385693,_0x3b0015,_0x26628c,_0x3d3ede,_0x39f355={}){const _0x2c0c12=a0_0x2f715a,_0x40903c={'yzEoN':_0x2c0c12(0xf6),'fQLvg':function(_0x1acf3d){return _0x1acf3d();}},_0x152553=this[_0x2c0c12(0xea)]();if(!_0x152553['enabled'])return{'success':![],'reason':'Kafka\x20producer\x20is\x20disabled','published':![]};if(!this['isConnected']){const _0x1338a7=await this[_0x2c0c12(0x11e)]();if(!_0x1338a7)return{'success':![],'reason':_0x40903c['yzEoN'],'published':![]};}try{const _0x425bcd=this[_0x2c0c12(0x11f)](_0x3b0015,_0x26628c,_0x3d3ede,_0x39f355),_0x590cc2=_0x39f355[_0x2c0c12(0xe6)]||'id',_0x4e6fb1=_0x3d3ede?.[_0x590cc2]||_0x26628c?.[_0x590cc2]||_0x40903c[_0x2c0c12(0xef)](uuidv7),_0xd4d45e=await this['producer'][_0x2c0c12(0xec)]({'topic':_0x385693,'messages':[{'key':String(_0x4e6fb1),'value':JSON[_0x2c0c12(0x123)](_0x425bcd),'headers':{'event-type':_0x3b0015,'correlation-id':_0x425bcd['correlationId'],'source':_0x425bcd['source']}}]});return console['log']('[Kafka]\x20Event\x20published\x20to\x20'+_0x385693+':\x20'+_0x3b0015+'\x20(key:\x20'+_0x4e6fb1+')'),{'success':!![],'correlationId':_0x425bcd['correlationId'],'topic':_0x385693,'partition':_0xd4d45e[0x0]?.['partition'],'offset':_0xd4d45e[0x0]?.[_0x2c0c12(0xe8)],'published':!![]};}catch(_0x28ec1f){return console['error']('[Kafka]\x20Publish\x20error\x20to\x20'+_0x385693+':\x20'+_0x28ec1f[_0x2c0c12(0xf9)]),{'success':![],'error':_0x28ec1f['message'],'published':![]};}}async['publishInsert'](_0x5d091f,_0x5a5972,_0x47ed4b,_0x1cd276={}){const _0xccee92=a0_0x2f715a,_0x3a8aab={'pFePf':_0xccee92(0xda)},_0xe41e5c=this[_0xccee92(0xe4)](_0x5d091f,_0x5a5972,_0xccee92(0x11c),_0x1cd276['topic']);return this[_0xccee92(0x122)](_0xe41e5c,_0x3a8aab[_0xccee92(0x127)],null,_0x47ed4b,{'module':_0x5d091f,'endpoint':_0x5a5972,'keyField':_0x1cd276['keyField'],'tableName':_0x1cd276[_0xccee92(0xee)],'correlationId':_0x1cd276['correlationId']});}async['publishUpdate'](_0x6cfe3e,_0x119228,_0x2f513f,_0x46a0f7,_0x54c6f1={}){const _0x3dd2dc=a0_0x2f715a,_0x196899=this['buildTopicName'](_0x6cfe3e,_0x119228,'updated',_0x54c6f1[_0x3dd2dc(0xf4)]);return this[_0x3dd2dc(0x122)](_0x196899,'ENTITY_UPDATED',_0x2f513f,_0x46a0f7,{'module':_0x6cfe3e,'endpoint':_0x119228,'keyField':_0x54c6f1['keyField'],'tableName':_0x54c6f1[_0x3dd2dc(0xee)],'correlationId':_0x54c6f1['correlationId']});}async['publishDelete'](_0x1d3ca7,_0x2b4d60,_0x5b3998,_0x1411d4={}){const _0x2e6c9a=a0_0x2f715a,_0x2ceeca={'NYqCO':'ENTITY_DELETED'},_0x7a8395=this['buildTopicName'](_0x1d3ca7,_0x2b4d60,_0x2e6c9a(0x118),_0x1411d4['topic']);return this['publishEvent'](_0x7a8395,_0x2ceeca[_0x2e6c9a(0x124)],_0x5b3998,null,{'module':_0x1d3ca7,'endpoint':_0x2b4d60,'keyField':_0x1411d4[_0x2e6c9a(0xe6)],'tableName':_0x1411d4[_0x2e6c9a(0xee)],'correlationId':_0x1411d4['correlationId']});}['getStatus'](){const _0x249dac=a0_0x2f715a,_0x3ce2b7=this['getConfig']();return{'enabled':_0x3ce2b7[_0x249dac(0x12c)],'connected':this[_0x249dac(0xf7)],'brokers':_0x3ce2b7['brokers'],'clientId':_0x3ce2b7[_0x249dac(0x126)],'topicPattern':_0x3ce2b7[_0x249dac(0x107)]};}async[a0_0x2f715a(0x125)](){const _0x5a352b=a0_0x2f715a;if(this[_0x5a352b(0xf2)]&&this['isConnected'])try{await this['producer']['disconnect'](),this[_0x5a352b(0xf7)]=![],console['log'](_0x5a352b(0x12f));}catch(_0x1e642e){console[_0x5a352b(0x121)](_0x5a352b(0x12d)+_0x1e642e['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}module[a0_0x2f715a(0x110)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
@@ -1 +1 @@
1
- const a0_0x3fe7c5=a0_0xcf51;(function(_0xd084d6,_0x28942d){const _0x18fed6=a0_0xcf51,_0xcb1522=_0xd084d6();while(!![]){try{const _0x4e4f77=-parseInt(_0x18fed6(0x1d1))/0x1*(parseInt(_0x18fed6(0x1e8))/0x2)+-parseInt(_0x18fed6(0x1fa))/0x3*(-parseInt(_0x18fed6(0x207))/0x4)+-parseInt(_0x18fed6(0x1eb))/0x5*(parseInt(_0x18fed6(0x1cb))/0x6)+-parseInt(_0x18fed6(0x1d4))/0x7+-parseInt(_0x18fed6(0x1e0))/0x8+parseInt(_0x18fed6(0x1c2))/0x9*(-parseInt(_0x18fed6(0x21b))/0xa)+-parseInt(_0x18fed6(0x1e7))/0xb*(-parseInt(_0x18fed6(0x1fe))/0xc);if(_0x4e4f77===_0x28942d)break;else _0xcb1522['push'](_0xcb1522['shift']());}catch(_0x583eb4){_0xcb1522['push'](_0xcb1522['shift']());}}}(a0_0x38fc,0x252a8));const dotenv=require(a0_0x3fe7c5(0x1f8)),path=require('path'),fs=require('fs'),{v7:uuidv7}=require(a0_0x3fe7c5(0x1cc));dotenv['config']();function a0_0xcf51(_0x41046c,_0x535505){_0x41046c=_0x41046c-0x1bf;const _0x38fc67=a0_0x38fc();let _0xcf519=_0x38fc67[_0x41046c];if(a0_0xcf51['gyxVZp']===undefined){var _0x3d2042=function(_0x32d111){const _0x21e2ad='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37d97b='',_0x57b330='';for(let _0x31ac71=0x0,_0x67d6a8,_0x59aad9,_0x42f40c=0x0;_0x59aad9=_0x32d111['charAt'](_0x42f40c++);~_0x59aad9&&(_0x67d6a8=_0x31ac71%0x4?_0x67d6a8*0x40+_0x59aad9:_0x59aad9,_0x31ac71++%0x4)?_0x37d97b+=String['fromCharCode'](0xff&_0x67d6a8>>(-0x2*_0x31ac71&0x6)):0x0){_0x59aad9=_0x21e2ad['indexOf'](_0x59aad9);}for(let _0x1297d6=0x0,_0x54f368=_0x37d97b['length'];_0x1297d6<_0x54f368;_0x1297d6++){_0x57b330+='%'+('00'+_0x37d97b['charCodeAt'](_0x1297d6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x57b330);};a0_0xcf51['FcPoLq']=_0x3d2042,a0_0xcf51['rGejXq']={},a0_0xcf51['gyxVZp']=!![];}const _0x28f47b=_0x38fc67[0x0],_0x580f60=_0x41046c+_0x28f47b,_0x36f1ea=a0_0xcf51['rGejXq'][_0x580f60];return!_0x36f1ea?(_0xcf519=a0_0xcf51['FcPoLq'](_0xcf519),a0_0xcf51['rGejXq'][_0x580f60]=_0xcf519):_0xcf519=_0x36f1ea,_0xcf519;}let MessageHub;try{const messagehubPath=path[a0_0x3fe7c5(0x20d)](__dirname,'../../js/messagehub.js');if(fs[a0_0x3fe7c5(0x1d0)](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x3fe7c5(0x1cd)]('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error(a0_0x3fe7c5(0x1ca)+messagehubPath);}catch(a0_0x3c19c8){console['error']('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x3c19c8[a0_0x3fe7c5(0x219)]);throw a0_0x3c19c8;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x1ea472){const _0x3f7e69=a0_0x3fe7c5,_0x44d803=new Date()[_0x3f7e69(0x1da)]();console[_0x3f7e69(0x1cd)]('['+_0x44d803+']\x20'+_0x1ea472);}async function initMessageHub(){const _0x5cf785=a0_0x3fe7c5,_0x5b50e5={'vUqxb':'connected','eMRCX':function(_0x1a8fa8,_0x421dde){return _0x1a8fa8(_0x421dde);},'zGhjh':_0x5cf785(0x1c3),'iLhQE':function(_0x423c3f,_0x10a0e1){return _0x423c3f(_0x10a0e1);},'fBTBo':'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======','NZnIj':function(_0x480018,_0x29430f){return _0x480018(_0x29430f);},'umBPY':'Mode:\x20Koneksi\x20Nyata','axnaz':function(_0x291cd8,_0x5c991c){return _0x291cd8===_0x5c991c;},'AWhjh':'true','zpzaP':'websocket','lnTbo':function(_0x2f3236,_0x55dcb0){return _0x2f3236(_0x55dcb0);},'SwHjC':_0x5cf785(0x208),'eMZZp':function(_0x465aea,_0x1317c4){return _0x465aea(_0x1317c4);},'cJlUC':'========================================','rMivO':function(_0x157b26,_0x3c9786){return _0x157b26&&_0x3c9786;},'KrRZK':_0x5cf785(0x1dc),'ncNXU':function(_0x18716d,_0x4cbe21){return _0x18716d(_0x4cbe21);}};if(_0x5b50e5[_0x5cf785(0x1c6)](messagehub,isConnected))return _0x5b50e5[_0x5cf785(0x1c0)](log,_0x5b50e5[_0x5cf785(0x1d8)]),!![];if(connectionPromise)return _0x5b50e5[_0x5cf785(0x1df)](log,_0x5cf785(0x21f)),connectionPromise;return connectionPromise=new Promise(async(_0x26ad28,_0x15029b)=>{const _0x1d5228=_0x5cf785,_0x5e46c8={'YyzkS':function(_0xbb1d43,_0x405b4e){return _0xbb1d43(_0x405b4e);},'ILzzz':function(_0x1b18e0,_0x427094){return _0x1b18e0===_0x427094;},'xqNGP':_0x5b50e5['vUqxb'],'yyCiB':function(_0x2fed1a,_0x143b64){return _0x5b50e5['eMRCX'](_0x2fed1a,_0x143b64);},'NaFzM':function(_0x235dbc,_0x236f77){return _0x5b50e5['eMRCX'](_0x235dbc,_0x236f77);},'hUJZS':function(_0x181801,_0x52eee2){return _0x181801===_0x52eee2;},'qrmpT':_0x1d5228(0x1de),'yJcOd':'Tidak\x20diketahui','jvVaO':function(_0x12197f,_0x41d371){return _0x12197f(_0x41d371);},'UPGLt':function(_0x5e2a34,_0x2b928a){return _0x5e2a34===_0x2b928a;},'oPXJm':_0x1d5228(0x212),'nRNht':function(_0x24859c,_0x5c0a87){return _0x24859c&&_0x5c0a87;},'EhhBT':_0x5b50e5[_0x1d5228(0x1bf)],'CnTZR':_0x1d5228(0x202)};try{_0x5b50e5[_0x1d5228(0x1e4)](log,_0x5b50e5[_0x1d5228(0x1d5)]),_0x5b50e5[_0x1d5228(0x206)](log,_0x1d5228(0x20c)+new Date()['toLocaleString']()),_0x5b50e5[_0x1d5228(0x1e4)](log,_0x5b50e5['umBPY']);const _0xe83efd={'publishKey':process['env'][_0x1d5228(0x21a)],'subscribeKey':process['env']['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x1d5228(0x1f9)][_0x1d5228(0x20e)]||_0x1d5228(0x1f7)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x1d5228(0x1c9))+'-'+process[_0x1d5228(0x1c4)],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x1d5228(0x1ec),'autoAcknowledge':_0x5b50e5['axnaz'](process['env'][_0x1d5228(0x1f2)],'true'),'acknowledgeMessages':process[_0x1d5228(0x1f9)]['MSHUB_ACKNOWLEDGE_MESSAGES']===_0x5b50e5[_0x1d5228(0x200)],'platform':{'type':process[_0x1d5228(0x1f9)]['MSHUB_COMMUNICATION_TYPE']||_0x5b50e5['zpzaP'],'host':process[_0x1d5228(0x1f9)]['MSHUB_HOST']||'localhost','api_port':_0x5b50e5[_0x1d5228(0x1c0)](parseInt,process['env']['MSHUB_API_PORT']||0xdf8),'service_port':parseInt(process[_0x1d5228(0x1f9)][_0x1d5228(0x210)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0xe83efd),log(_0x5b50e5['SwHjC']),log(_0x1d5228(0x204)+messagehub[_0x1d5228(0x1fc)]),_0x5b50e5['eMZZp'](log,_0x1d5228(0x20b)+messagehub[_0x1d5228(0x20a)]),_0x5b50e5[_0x1d5228(0x1d6)](log,_0x1d5228(0x1e1)+messagehub['subscribeKey']),_0x5b50e5['eMZZp'](log,_0x1d5228(0x20f)+messagehub['communicationType']),log(_0x1d5228(0x1f1)+JSON['stringify'](messagehub['platformConfig'])),log(_0x5b50e5['cJlUC']),messagehub['addListener']({'status':function(_0xf9bdbd){const _0x50e9c2=_0x1d5228;_0x5e46c8['YyzkS'](log,'Status\x20Listener:\x20'+_0xf9bdbd[_0x50e9c2(0x1d7)]);if(_0x5e46c8['ILzzz'](_0xf9bdbd['category'],_0x5e46c8[_0x50e9c2(0x1e5)]))_0x5e46c8['YyzkS'](log,_0x50e9c2(0x1d2)),isConnected=!![],timeoutHandler&&(_0x5e46c8['yyCiB'](clearTimeout,timeoutHandler),timeoutHandler=null),_0x5e46c8[_0x50e9c2(0x1e3)](_0x26ad28,!![]);else{if(_0x5e46c8['hUJZS'](_0xf9bdbd['category'],_0x5e46c8[_0x50e9c2(0x1dd)])){const _0x58b8c8=_0xf9bdbd[_0x50e9c2(0x209)]===!![];!_0x58b8c8&&(log('Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0xf9bdbd[_0x50e9c2(0x203)]||_0x5e46c8[_0x50e9c2(0x1ee)])),isConnected=![],connectionPromise&&(_0x15029b(new Error('Koneksi\x20terputus:\x20'+(_0xf9bdbd['reason']||_0x5e46c8['yJcOd']))),connectionPromise=null));}else{if(_0x5e46c8['hUJZS'](_0xf9bdbd['category'],_0x50e9c2(0x1f4))){let _0x3b463d=_0xf9bdbd[_0x50e9c2(0x218)]||_0xf9bdbd['error']||_0x50e9c2(0x1c1);log('⚠️\x20Error:\x20'+_0x3b463d),isConnected=![],connectionPromise&&(_0x5e46c8['jvVaO'](_0x15029b,new Error(_0x3b463d)),connectionPromise=null);}else{if(_0x5e46c8['UPGLt'](_0xf9bdbd[_0x50e9c2(0x1d7)],'message-sent'))log(_0x50e9c2(0x215)+_0xf9bdbd[_0x50e9c2(0x1f6)]);else{if(_0x5e46c8[_0x50e9c2(0x1ef)](_0xf9bdbd['category'],_0x50e9c2(0x1c5))){const _0x360f09=_0xf9bdbd[_0x50e9c2(0x1db)]?.['name']||_0x5e46c8[_0x50e9c2(0x1e9)],_0x50fa4b=_0xf9bdbd['receiverInfo']?.['id']||_0xf9bdbd['receiverId'],_0x5dbebe=new Date(_0xf9bdbd[_0x50e9c2(0x1db)]?.[_0x50e9c2(0x1d9)]||_0xf9bdbd['receivedAt']||new Date())['toLocaleTimeString']();log(_0x50e9c2(0x1fb)+_0xf9bdbd['requestId']+_0x50e9c2(0x21c)+_0x360f09+'\x20('+_0x50fa4b+_0x50e9c2(0x1ce)+_0x5dbebe+'.\x20Total\x20konfirmasi:\x20'+(_0xf9bdbd['confirmationCount']||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x2dbaac=_0x1d5228;_0x5e46c8['nRNht'](!isConnected,connectionPromise)&&(log(_0x5e46c8[_0x2dbaac(0x1ed)]),_0x5e46c8[_0x2dbaac(0x1e3)](_0x15029b,new Error(_0x5e46c8['CnTZR'])),connectionPromise=null);},0x2710);}catch(_0x567d3e){log(_0x1d5228(0x21e)+_0x567d3e[_0x1d5228(0x219)]),console[_0x1d5228(0x1f4)]('Error\x20inisialisasi\x20MessageHub:',_0x567d3e),connectionPromise=null,_0x5b50e5['eMRCX'](_0x15029b,_0x567d3e);}}),connectionPromise;}async function publishMessage(_0x5d5816,_0x40c586,_0x3db920,_0x1821fb={}){const _0x4f4bb3=a0_0x3fe7c5,_0x473b63={'RGzWA':function(_0x3cd3c9){return _0x3cd3c9();},'bfTaI':function(_0x20dbb6,_0x12c44a){return _0x20dbb6(_0x12c44a);},'LfxEL':_0x4f4bb3(0x216),'RPYHw':function(_0x4524ee,_0x5a8f87){return _0x4524ee!==_0x5a8f87;},'omEaw':_0x4f4bb3(0x213),'bRBSR':function(_0x51e859,_0x4cc96d){return _0x51e859(_0x4cc96d);},'uGQaE':'Message\x20sent\x20successfully'};try{!isConnected&&await _0x473b63[_0x4f4bb3(0x1e6)](initMessageHub);const _0x1d4bd0=messagehub[_0x4f4bb3(0x21d)](_0x5d5816);_0x473b63['bfTaI'](log,'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======'),log(_0x4f4bb3(0x214)+_0x1d4bd0[_0x4f4bb3(0x1d3)]),_0x473b63[_0x4f4bb3(0x1f5)](log,'Message\x20Type:\x20'+_0x40c586),_0x473b63['bfTaI'](log,_0x473b63['LfxEL']);const _0x1b7d31={'requireAck':_0x473b63['RPYHw'](_0x1821fb['requireAck'],undefined)?_0x1821fb[_0x4f4bb3(0x201)]:![],'clearCache':_0x1821fb[_0x4f4bb3(0x1ea)]!==undefined?_0x1821fb[_0x4f4bb3(0x1ea)]:!![],'senderId':messagehub[_0x4f4bb3(0x1ff)]?messagehub[_0x4f4bb3(0x1ff)]['id']:_0x473b63['omEaw']};log('Mengirim\x20pesan\x20ke\x20server...');const _0x37f15e={'type':_0x40c586,'content':_0x3db920},_0x1c0f6f=await _0x1d4bd0[_0x4f4bb3(0x1f3)](_0x37f15e,_0x1b7d31);return _0x473b63['bRBSR'](log,_0x4f4bb3(0x205)+_0x5d5816),{'success':!![],'requestId':_0x1c0f6f['requestId'],'topic':_0x5d5816,'message':_0x473b63['uGQaE']};}catch(_0x49d9bc){return log(_0x4f4bb3(0x211)+_0x49d9bc['message']),{'success':![],'error':_0x49d9bc['message'],'topic':_0x5d5816,'message':'Failed\x20to\x20send\x20message'};}}async function closeConnection(){const _0xdffbb3=a0_0x3fe7c5,_0x29d31b={'BzwGi':function(_0x4e79d7,_0x28ad02){return _0x4e79d7(_0x28ad02);},'WNXNL':_0xdffbb3(0x1c7),'FogVt':function(_0x10ab1e,_0x4fee1f){return _0x10ab1e===_0x4fee1f;},'Rhuew':function(_0x17ecb4,_0x1d5d85){return _0x17ecb4(_0x1d5d85);},'XisTT':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()','oMiuU':_0xdffbb3(0x1fd),'TAUwf':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub'};timeoutHandler&&(_0x29d31b['BzwGi'](clearTimeout,timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(typeof messagehub['disconnect']===_0x29d31b[_0xdffbb3(0x1c8)])await messagehub['disconnect'](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()');else{if(_0x29d31b['FogVt'](typeof messagehub[_0xdffbb3(0x217)],_0xdffbb3(0x1c7)))await messagehub[_0xdffbb3(0x217)](),_0x29d31b[_0xdffbb3(0x1e2)](log,_0x29d31b['XisTT']);else messagehub[_0xdffbb3(0x1ff)]&&_0x29d31b['FogVt'](typeof messagehub[_0xdffbb3(0x1ff)]['disconnect'],_0xdffbb3(0x1c7))?(messagehub[_0xdffbb3(0x1ff)]['disconnect'](),log(_0x29d31b['oMiuU'])):log(_0x29d31b['TAUwf']);}isConnected=![],connectionPromise=null;}catch(_0x34a47a){log(_0xdffbb3(0x1f0)+_0x34a47a['message']);}}module[a0_0x3fe7c5(0x1cf)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};function a0_0x38fc(){const _0x10e68a=['pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','AxnfCNjVCLjLBgf0zwq','ChvIBgLZAeTLEq','uhvIBgLZAcblzxK6ia','v2fRDhuGsw5PC2LHBgLZyxnPoIa','CMvZB2X2zq','tvnivujFvvnfuL9jra','vgLWzsblB211BMLRyxnPoIa','tvnivujFu0vsvKLdrv9qt1ju','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','vw5RBM93BG','CMvZDgzVCMDL','q2HHBM5LBcbuyxjNzxq6ia','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','y2XVC2u','zxjYB3jezxrHAwW','BwvZC2fNzq','tvnivujFufvcteLtsf9lrvK','mtbTv2PQwM4','igrPDgvYAw1Hig9SzwGG','y2HHBM5LBa','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','EKDOAMG','Bg5uyM8','vw5RBM93BIbLCNjVCG','otC3nZe1AeLdtfvH','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','CgLK','BwvZC2fNzs1YzwnLAxzLza','CK1PDK8','zNvUy3rPB24','v05ytKW','zgvMyxvSDa','twvZC2fNzuH1yIbtreSGBM90igzVDw5Kigf0ia','mtaYCKT4qvHu','DxvPza','Bg9N','ksbWywrHia','zxHWB3j0CW','zxHPC3rZu3LUyW','mwjnzLvKwa','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','Dg9WAwm','mtiZmteZmKrnELzita','zKjuqM8','zu1sq1G','y2f0zwDVCNK','s3jswKS','CMvJzwL2zwrbDa','Dg9ju09tDhjPBMC','CMvJzwL2zxjjBMzV','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','CxjTCfq','zgLZy29UBMvJDgvK','BMnowfu','mtuYmdaZmMjJrhHPua','u3vIC2nYAwjLieTLEtOG','uMH1zxC','tMfgEK0','AuXOuuu','Ehfor1a','uKD6v0e','mtmZmJf3sgjWAee','mJuWmteWtur4AeTs','B1bysM0','y2XLyxjdywnOzq','nJi5otbzqKfWww4','yNjVywrJyxn0','rwHOqLq','EuPJt2q','suX6ENO','rxjYB3iGC2fHDcbTzw51DhvWigTVBMvRC2K6ia','s29UzMLNDxjHC2KGugXHDgzVCM06ia','tvnivujFqvvut19bq0Tot1Dmrurhrq','ChvIBgLZAa','zxjYB3i','yMzuyuK','CMvXDwvZDeLK','CMvZDgzVCMDLlq','zg90zw52','zw52','otLgvgvnBvy','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','DxnLCKLK','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','oti3nMPbqLLstW','C29JA2v0','qvDOAMG','CMvXDwLYzufJAW','q29UBMvJDgLVBIb0Aw1LB3v0','CMvHC29U','q2XPzw50ieLel1vZzxjjrdOG','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','tLPUswO','mZyYmhvUrLfQuG'];a0_0x38fc=function(){return _0x10e68a;};return a0_0x38fc();}
1
+ const a0_0x57e0a2=a0_0x1f90;(function(_0x11b8d8,_0x87aa0c){const _0x486cc8=a0_0x1f90,_0x1eb505=_0x11b8d8();while(!![]){try{const _0x2db612=parseInt(_0x486cc8(0x119))/0x1+parseInt(_0x486cc8(0x10b))/0x2*(-parseInt(_0x486cc8(0x104))/0x3)+parseInt(_0x486cc8(0x11c))/0x4+-parseInt(_0x486cc8(0xf9))/0x5*(-parseInt(_0x486cc8(0x12b))/0x6)+parseInt(_0x486cc8(0xff))/0x7*(-parseInt(_0x486cc8(0x138))/0x8)+-parseInt(_0x486cc8(0x10d))/0x9+parseInt(_0x486cc8(0x14d))/0xa*(-parseInt(_0x486cc8(0x118))/0xb);if(_0x2db612===_0x87aa0c)break;else _0x1eb505['push'](_0x1eb505['shift']());}catch(_0x4e2c26){_0x1eb505['push'](_0x1eb505['shift']());}}}(a0_0x1628,0x3e5e7));const dotenv=require(a0_0x57e0a2(0x113)),path=require('path'),fs=require('fs'),{v7:uuidv7}=require(a0_0x57e0a2(0x12f));function a0_0x1628(){const _0x4e467c=['AxnfCNjVCLjLBgf0zwq','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','Bg9N','vw5RBM93BG','CMvHC29U','C29XwKq','twvZC2fNzsbuExbLoIa','tvnivujFqvbjx1bpuLq','CMvJzwL2zxjjBMzV','uKTNuhq','CMvJzwL2zxjjza','tw9KztOGs29UzwTZAsboEwf0yq','zxH2ALG','y2f0zwDVCNK','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','Bw9MzxC','tvnivujFvvnfuL9jra','twvUz2LYAw0GCgvZyw4GA2uGC2vYDMvYlI4U','mJCWodbHCLftwgK','CLnXqNm','zxHWB3j0CW','zgvMyxvSDa','vgLcCxy','q29UBMvJDgLVBIb0Aw1LB3v0','rgvJCuK','DxnLCKLK','v3fgyMO','tunut0m','D2vIC29JA2v0','rMfPBgvKihrVihnLBMqGBwvZC2fNzq','s29UzwTZAsb0zxjWDxr1CZOG','wNDfwgm','y2XVC2u','mJy1vu1rDKzs','v3DzsLy','BMfTzq','Dg9ju09tDhjPBMC','DLrrALO','C29JA2v0','mtq3Cw11z255','tvnivujFu0vsvKLdrv9qt1ju','tvnivujFq09ntvvosunbveLptL9uwvbf','BwvZC2fNzs1Zzw50','Dg9mB2nHBgvtDhjPBMC','mti5m0jmyuTAAG','lIbuB3rHBcbRB25MAxjTyxnPoIa','ugLVvuK','u3vIC2nYAwjLieTLEtOG','r2vMzge','Eu9dEha','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','mtCWnMf6DuTmsq','tvnivujFufvcteLtsf9lrvK','ndGXnZm0z1ferKLR','CMvZDgzVCMDLlq','Cxnwq24','ChvIBgLZAa','zgLZy29UBMvJDa','CMvXDwvZDeLK','zg90zw52','y2XLyxjdywnOzq','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','yMvosxa','rKjdz2e','nZGXuxHzt0DM','ndiXnZa1ugrOrvrP','y2HHBM5LBa','y29UBMvJDgvK','otGZmJG4Duj1A3Lx','qxvVA08','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUigrPC2nVBM5Ly3qOkq','BwLezeC','ug5ivKW','zw52','tvnivujFse9tva','CMvXDwLYzufJAW','CgXHDgzVCM1dB25MAwC','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','q2XPzw50ieLel1vZzxjjrdOG','rxjYB3iGBg9HzgLUzYbnzxnZywDLshvIifnesZOG','BwvZC2fNzq','BfjsCKG','C0PVy1a','mZuYmdj4rM1ItwW','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','vgLKywSGzgfWyxqGBwvUzw11A2fUig1LDg9Kzsb1BNr1AYbTzw51DhvWigTVBMvRC2KGtwvZC2fNzuH1yG','DxvPza','y29UzMLYBwf0Aw9Uq291BNq','uKXwsLi','zxjYB3i','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','u3rHDhvZieXPC3rLBMvYoIa','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','pt09pt09ie1vtefjieLosvnjquXju0ftssbnrvntquDfsfvcid09pt09pq','EwTlvg4','nde3ndrJyNjREuC','zNvUy3rPB24','v21rsvG'];a0_0x1628=function(){return _0x4e467c;};return a0_0x1628();}dotenv['config']();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,'../../js/messagehub.js');if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x57e0a2(0x13d)]('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x4146ad){console['error'](a0_0x57e0a2(0x127)+a0_0x4146ad[a0_0x57e0a2(0x128)]);throw a0_0x4146ad;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x2fbd7d){const _0x412256=a0_0x57e0a2,_0x555ab0=new Date()[_0x412256(0xfc)]();console['log']('['+_0x555ab0+']\x20'+_0x2fbd7d);}async function initMessageHub(){const _0x1a01ff=a0_0x57e0a2,_0x3b4cf1={'miDdG':function(_0x32eedd,_0x2e054c){return _0x32eedd(_0x2e054c);},'RKgPt':function(_0x5bd857,_0x1abc0f){return _0x5bd857===_0x1abc0f;},'MCTOC':function(_0x587358,_0x33ed0b){return _0x587358===_0x33ed0b;},'xvofX':function(_0x5acd8a,_0x30d94e){return _0x5acd8a===_0x30d94e;},'DecqI':_0x1a01ff(0x102),'BMpRF':function(_0x3f22d7,_0x24af91){return _0x3f22d7===_0x24af91;},'PnHVL':'message-received','Cabsl':_0x1a01ff(0x13e),'sJocP':_0x1a01ff(0x12d),'mofew':function(_0x6e83da,_0x354165){return _0x6e83da(_0x354165);},'gGSZL':_0x1a01ff(0x152),'beNIp':function(_0x10247f,_0x4a4ca9){return _0x10247f(_0x4a4ca9);},'WwYJV':function(_0x4b63a3,_0x570c21){return _0x4b63a3(_0x570c21);},'UdILH':_0x1a01ff(0x146),'Gefda':'true','qsVCn':_0x1a01ff(0x157),'ZwEXc':'localhost','soqZD':function(_0x25f8d8,_0x100789){return _0x25f8d8(_0x100789);},'WqFbj':function(_0x5ef6e9,_0x21f91a){return _0x5ef6e9(_0x21f91a);},'jzjSz':function(_0x5ce3d8,_0x5f3724){return _0x5ce3d8(_0x5f3724);},'WmQIX':function(_0x5b8dda,_0x5bc3a5,_0x3f5868){return _0x5b8dda(_0x5bc3a5,_0x3f5868);},'QLiRG':'Error\x20inisialisasi\x20MessageHub:','lRRrH':_0x1a01ff(0x149),'GgRzK':_0x1a01ff(0x135)};if(messagehub&&isConnected)return _0x3b4cf1['mofew'](log,_0x3b4cf1[_0x1a01ff(0x129)]),!![];if(connectionPromise)return _0x3b4cf1[_0x1a01ff(0xfa)](log,_0x3b4cf1['GgRzK']),connectionPromise;return connectionPromise=new Promise(async(_0x3c3fcf,_0x1cda4d)=>{const _0x11993c=_0x1a01ff;try{_0x3b4cf1[_0x11993c(0x116)](log,_0x11993c(0x136)),_0x3b4cf1[_0x11993c(0xfa)](log,'Waktu\x20Inisialisasi:\x20'+new Date()[_0x11993c(0x103)]()),_0x3b4cf1[_0x11993c(0x11f)](log,_0x3b4cf1['UdILH']);const _0x46b069={'publishKey':process['env'][_0x11993c(0x10c)],'subscribeKey':process['env']['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x11993c(0x121)][_0x11993c(0x14b)]||_0x11993c(0x10e)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x11993c(0x150))+'-'+process['pid'],'communicationType':process['env'][_0x11993c(0x101)]||'broadcast','autoAcknowledge':process['env']['MSHUB_AUTO_ACKNOWLEDGE']===_0x3b4cf1[_0x11993c(0x108)],'acknowledgeMessages':process['env']['MSHUB_ACKNOWLEDGE_MESSAGES']===_0x3b4cf1['Gefda'],'platform':{'type':process[_0x11993c(0x121)]['MSHUB_COMMUNICATION_TYPE']||_0x3b4cf1[_0x11993c(0x10f)],'host':process['env'][_0x11993c(0x122)]||_0x3b4cf1[_0x11993c(0xf7)],'api_port':_0x3b4cf1['soqZD'](parseInt,process[_0x11993c(0x121)][_0x11993c(0x142)]||0xdf8),'service_port':_0x3b4cf1[_0x11993c(0x155)](parseInt,process[_0x11993c(0x121)][_0x11993c(0x100)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x46b069),log('======\x20INFORMASI\x20CLIENT\x20MESSAGEHUB\x20======'),log(_0x11993c(0x126)+messagehub[_0x11993c(0x154)]),log('Publish\x20Key:\x20'+messagehub['publishKey']),log(_0x11993c(0x107)+messagehub['subscribeKey']),_0x3b4cf1[_0x11993c(0x140)](log,'Tipe\x20Komunikasi:\x20'+messagehub['communicationType']),_0x3b4cf1['jzjSz'](log,'Konfigurasi\x20Platform:\x20'+JSON['stringify'](messagehub[_0x11993c(0x124)])),_0x3b4cf1['beNIp'](log,_0x11993c(0x133)),messagehub['addListener']({'status':function(_0x5c90f8){const _0x4febcb=_0x11993c;_0x3b4cf1[_0x4febcb(0x11f)](log,_0x4febcb(0x134)+_0x5c90f8['category']);if(_0x3b4cf1[_0x4febcb(0x144)](_0x5c90f8[_0x4febcb(0x148)],_0x4febcb(0x11b)))log('Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0x3c3fcf(!![]);else{if(_0x3b4cf1[_0x4febcb(0x156)](_0x5c90f8['category'],'disconnected')){const _0x238620=_0x5c90f8[_0x4febcb(0x13b)]===!![];!_0x238620&&(log(_0x4febcb(0x115)+(_0x5c90f8[_0x4febcb(0x13f)]||'Tidak\x20diketahui')),isConnected=![],connectionPromise&&(_0x3b4cf1['miDdG'](_0x1cda4d,new Error(_0x4febcb(0xf6)+(_0x5c90f8[_0x4febcb(0x13f)]||'Tidak\x20diketahui'))),connectionPromise=null));}else{if(_0x5c90f8[_0x4febcb(0x148)]===_0x4febcb(0x132)){let _0x174887=_0x5c90f8['errorDetail']||_0x5c90f8['error']||'Unknown\x20error';log('⚠️\x20Error:\x20'+_0x174887),isConnected=![],connectionPromise&&(_0x1cda4d(new Error(_0x174887)),connectionPromise=null);}else{if(_0x3b4cf1['xvofX'](_0x5c90f8['category'],_0x3b4cf1[_0x4febcb(0x153)]))log('📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0x5c90f8[_0x4febcb(0x112)]);else{if(_0x3b4cf1['BMpRF'](_0x5c90f8[_0x4febcb(0x148)],_0x3b4cf1[_0x4febcb(0x120)])){const _0x115dfb=_0x5c90f8[_0x4febcb(0x143)]?.[_0x4febcb(0xfb)]||_0x3b4cf1['Cabsl'],_0x30dabf=_0x5c90f8['receiverInfo']?.['id']||_0x5c90f8[_0x4febcb(0x145)],_0x17a7c9=new Date(_0x5c90f8['receiverInfo']?.['receivedAt']||_0x5c90f8['receivedAt']||new Date())['toLocaleTimeString']();log(_0x4febcb(0x13c)+_0x5c90f8['requestId']+'\x20diterima\x20oleh\x20'+_0x115dfb+'\x20('+_0x30dabf+')\x20pada\x20'+_0x17a7c9+_0x4febcb(0x105)+(_0x5c90f8[_0x4febcb(0x130)]||0x1));}}}}}}}),timeoutHandler=_0x3b4cf1[_0x11993c(0x13a)](setTimeout,()=>{const _0x551b77=_0x11993c;!isConnected&&connectionPromise&&(log(_0x3b4cf1[_0x551b77(0x12a)]),_0x3b4cf1['mofew'](_0x1cda4d,new Error(_0x3b4cf1['gGSZL'])),connectionPromise=null);},0x2710);}catch(_0x2d27e9){_0x3b4cf1[_0x11993c(0x116)](log,_0x11993c(0x125)+_0x2d27e9[_0x11993c(0x128)]),console[_0x11993c(0x132)](_0x3b4cf1['QLiRG'],_0x2d27e9),connectionPromise=null,_0x3b4cf1[_0x11993c(0x14a)](_0x1cda4d,_0x2d27e9);}}),connectionPromise;}async function publishMessage(_0x4b7373,_0x2a47f6,_0x79c7cb,_0x39bfe9={}){const _0x336855=a0_0x57e0a2,_0x13fd9d={'exvjX':function(_0x37d458){return _0x37d458();},'PioUI':'================================','AuokO':function(_0x11eacc,_0x393a8c){return _0x11eacc!==_0x393a8c;},'vTQjZ':'restforge','RLVJR':_0x336855(0x14c),'ojoWU':'Message\x20sent\x20successfully','YmsZY':function(_0x53375e,_0x32b878){return _0x53375e(_0x32b878);}};try{!isConnected&&await _0x13fd9d[_0x336855(0x147)](initMessageHub);const _0x2e705c=messagehub[_0x336855(0x11a)](_0x4b7373);log('======\x20DATA\x20PUBLISH\x20MESSAGE\x20======'),log('Channel\x20Target:\x20'+_0x2e705c['topic']),log(_0x336855(0x141)+_0x2a47f6),log(_0x13fd9d[_0x336855(0x106)]);const _0x3b454f={'requireAck':_0x39bfe9[_0x336855(0x123)]!==undefined?_0x39bfe9['requireAck']:![],'clearCache':_0x13fd9d[_0x336855(0x11d)](_0x39bfe9['clearCache'],undefined)?_0x39bfe9[_0x336855(0x114)]:!![],'senderId':messagehub[_0x336855(0xfe)]?messagehub['socket']['id']:_0x13fd9d[_0x336855(0xfd)]};log(_0x13fd9d[_0x336855(0x131)]);const _0x290e12={'type':_0x2a47f6,'content':_0x79c7cb},_0x34c05c=await _0x2e705c[_0x336855(0x110)](_0x290e12,_0x3b454f);return log('Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x4b7373),{'success':!![],'requestId':_0x34c05c['requestId'],'topic':_0x4b7373,'message':_0x13fd9d['ojoWU']};}catch(_0x23bcca){return _0x13fd9d['YmsZY'](log,_0x336855(0x12c)+_0x23bcca[_0x336855(0x128)]),{'success':![],'error':_0x23bcca['message'],'topic':_0x4b7373,'message':_0x336855(0x158)};}}async function closeConnection(){const _0x3804d7=a0_0x57e0a2,_0x36781c={'yOCxp':function(_0x5708e9,_0x11bae6){return _0x5708e9(_0x11bae6);},'XPLGf':function(_0x4319cc,_0x20ccb7){return _0x4319cc&&_0x20ccb7;},'TiBqv':_0x3804d7(0x11e),'gySua':function(_0x1ed537,_0x512ff7){return _0x1ed537===_0x512ff7;},'FBCga':_0x3804d7(0x139),'FnKFp':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()','ykKTn':function(_0xc0f9ed,_0x4a601e){return _0xc0f9ed===_0x4a601e;},'Ftznk':function(_0x4fe8fa,_0x1fb732){return _0x4fe8fa(_0x1fb732);},'rSqBs':_0x3804d7(0x12e)};timeoutHandler&&(_0x36781c['yOCxp'](clearTimeout,timeoutHandler),timeoutHandler=null);if(_0x36781c['XPLGf'](isConnected,messagehub))try{if(typeof messagehub[_0x3804d7(0x111)]==='function')await messagehub['disconnect'](),_0x36781c[_0x3804d7(0x109)](log,_0x36781c[_0x3804d7(0x151)]);else{if(_0x36781c['gySua'](typeof messagehub[_0x3804d7(0xf8)],_0x36781c['FBCga']))await messagehub['close'](),log(_0x36781c['FnKFp']);else messagehub['socket']&&_0x36781c[_0x3804d7(0x137)](typeof messagehub['socket'][_0x3804d7(0x111)],_0x36781c[_0x3804d7(0x117)])?(messagehub['socket'][_0x3804d7(0x111)](),_0x36781c[_0x3804d7(0x109)](log,_0x3804d7(0x10a))):_0x36781c['Ftznk'](log,_0x36781c[_0x3804d7(0x14e)]);}isConnected=![],connectionPromise=null;}catch(_0x3d47a3){log('Error\x20saat\x20menutup\x20koneksi:\x20'+_0x3d47a3[_0x3804d7(0x128)]);}}function a0_0x1f90(_0x24b164,_0x2afe9b){_0x24b164=_0x24b164-0xf6;const _0x1628e9=a0_0x1628();let _0x1f900e=_0x1628e9[_0x24b164];if(a0_0x1f90['pgPCJX']===undefined){var _0x2d30bd=function(_0x206412){const _0x81d863='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5b34f3='',_0x5f51db='';for(let _0x3ed72f=0x0,_0x385c21,_0x1dc260,_0x44b575=0x0;_0x1dc260=_0x206412['charAt'](_0x44b575++);~_0x1dc260&&(_0x385c21=_0x3ed72f%0x4?_0x385c21*0x40+_0x1dc260:_0x1dc260,_0x3ed72f++%0x4)?_0x5b34f3+=String['fromCharCode'](0xff&_0x385c21>>(-0x2*_0x3ed72f&0x6)):0x0){_0x1dc260=_0x81d863['indexOf'](_0x1dc260);}for(let _0x5c5194=0x0,_0x4dae86=_0x5b34f3['length'];_0x5c5194<_0x4dae86;_0x5c5194++){_0x5f51db+='%'+('00'+_0x5b34f3['charCodeAt'](_0x5c5194)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5f51db);};a0_0x1f90['szaifk']=_0x2d30bd,a0_0x1f90['TTNVGA']={},a0_0x1f90['pgPCJX']=!![];}const _0x558d9d=_0x1628e9[0x0],_0x48810b=_0x24b164+_0x558d9d,_0x1c8c39=a0_0x1f90['TTNVGA'][_0x48810b];return!_0x1c8c39?(_0x1f900e=a0_0x1f90['szaifk'](_0x1f900e),a0_0x1f90['TTNVGA'][_0x48810b]=_0x1f900e):_0x1f900e=_0x1c8c39,_0x1f900e;}module[a0_0x57e0a2(0x14f)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};