@messenger-box/platform-server 10.0.3-alpha.2 → 10.0.3-alpha.201

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 (303) hide show
  1. package/lib/channels/ack-reactions.d.ts +46 -0
  2. package/lib/channels/ack-reactions.js +48 -0
  3. package/lib/channels/ack-reactions.js.map +1 -0
  4. package/lib/channels/allowlist-match.d.ts +38 -0
  5. package/lib/channels/allowlist-match.js +67 -0
  6. package/lib/channels/allowlist-match.js.map +1 -0
  7. package/lib/channels/channel-config.d.ts +46 -0
  8. package/lib/channels/channel-config.js +63 -0
  9. package/lib/channels/channel-config.js.map +1 -0
  10. package/lib/channels/command-gating.d.ts +47 -0
  11. package/lib/channels/command-gating.js +52 -0
  12. package/lib/channels/command-gating.js.map +1 -0
  13. package/lib/channels/conversation-label.d.ts +23 -0
  14. package/lib/channels/conversation-label.js +43 -0
  15. package/lib/channels/conversation-label.js.map +1 -0
  16. package/lib/channels/index.d.ts +18 -0
  17. package/lib/channels/mention-gating.d.ts +50 -0
  18. package/lib/channels/mention-gating.js +72 -0
  19. package/lib/channels/mention-gating.js.map +1 -0
  20. package/lib/channels/registry.d.ts +23 -0
  21. package/lib/channels/registry.js +282 -0
  22. package/lib/channels/registry.js.map +1 -0
  23. package/lib/channels/sender-identity.d.ts +11 -0
  24. package/lib/channels/sender-identity.js +48 -0
  25. package/lib/channels/sender-identity.js.map +1 -0
  26. package/lib/channels/session.d.ts +63 -0
  27. package/lib/channels/session.js +29 -0
  28. package/lib/channels/session.js.map +1 -0
  29. package/lib/channels/types.d.ts +147 -0
  30. package/lib/channels/types.js +28 -0
  31. package/lib/channels/types.js.map +1 -0
  32. package/lib/channels/typing.d.ts +62 -0
  33. package/lib/channels/typing.js +37 -0
  34. package/lib/channels/typing.js.map +1 -0
  35. package/lib/channels/typing.test.d.ts +1 -0
  36. package/lib/config/env-config.d.ts +7 -0
  37. package/lib/config/env-config.js +21 -1
  38. package/lib/config/env-config.js.map +1 -1
  39. package/lib/constants/default-channel-props.d.ts +11 -0
  40. package/lib/constants/default-channel-props.js +32 -0
  41. package/lib/constants/default-channel-props.js.map +1 -0
  42. package/lib/constants/default-notify-props.js.map +1 -1
  43. package/lib/constants/index.d.ts +1 -0
  44. package/lib/constants/query.constants.js.map +1 -1
  45. package/lib/containers/containers.js +13 -7
  46. package/lib/containers/containers.js.map +1 -1
  47. package/lib/containers/context-services-from-container.d.ts +2 -2
  48. package/lib/containers/context-services-from-container.js +7 -7
  49. package/lib/containers/context-services-from-container.js.map +1 -1
  50. package/lib/gateway/channel-registry.d.ts +10 -0
  51. package/lib/gateway/gateway-service.d.ts +23 -0
  52. package/lib/gateway/index.d.ts +4 -0
  53. package/lib/gateway/message-router.d.ts +20 -0
  54. package/lib/gateway/types.d.ts +270 -0
  55. package/lib/graphql/resolvers/channel-capabilities.d.ts +13 -0
  56. package/lib/graphql/resolvers/channel-capabilities.js +179 -0
  57. package/lib/graphql/resolvers/channel-capabilities.js.map +1 -0
  58. package/lib/graphql/resolvers/channel-member.d.ts +3 -3
  59. package/lib/graphql/resolvers/channel-member.js +30 -5
  60. package/lib/graphql/resolvers/channel-member.js.map +1 -1
  61. package/lib/graphql/resolvers/channel.d.ts +3 -3
  62. package/lib/graphql/resolvers/channel.js +348 -55
  63. package/lib/graphql/resolvers/channel.js.map +1 -1
  64. package/lib/graphql/resolvers/chat-configuration.d.ts +59 -0
  65. package/lib/graphql/resolvers/chat-configuration.js +89 -0
  66. package/lib/graphql/resolvers/chat-configuration.js.map +1 -0
  67. package/lib/graphql/resolvers/extended-token-account.d.ts +3 -32
  68. package/lib/graphql/resolvers/extended-token-account.js +90 -23
  69. package/lib/graphql/resolvers/extended-token-account.js.map +1 -1
  70. package/lib/graphql/resolvers/gateway.d.ts +18 -0
  71. package/lib/graphql/resolvers/index.d.ts +47 -26
  72. package/lib/graphql/resolvers/index.js +1 -1
  73. package/lib/graphql/resolvers/index.js.map +1 -1
  74. package/lib/graphql/resolvers/post-thread.d.ts +2 -3
  75. package/lib/graphql/resolvers/post-thread.js +294 -132
  76. package/lib/graphql/resolvers/post-thread.js.map +1 -1
  77. package/lib/graphql/resolvers/post.d.ts +2 -3
  78. package/lib/graphql/resolvers/post.js +764 -237
  79. package/lib/graphql/resolvers/post.js.map +1 -1
  80. package/lib/graphql/resolvers/reaction.d.ts +3 -3
  81. package/lib/graphql/resolvers/reaction.js +96 -14
  82. package/lib/graphql/resolvers/reaction.js.map +1 -1
  83. package/lib/graphql/resolvers/streaming.d.ts +20 -0
  84. package/lib/graphql/resolvers/streaming.js +147 -0
  85. package/lib/graphql/resolvers/streaming.js.map +1 -0
  86. package/lib/graphql/schema/channel-capabilities.graphql +492 -0
  87. package/lib/graphql/schema/channel-capabilities.graphql.js +1 -0
  88. package/lib/graphql/schema/channel-capabilities.graphql.js.map +1 -0
  89. package/lib/graphql/schema/channel-member.graphql +110 -21
  90. package/lib/graphql/schema/channel-member.graphql.js +1 -1
  91. package/lib/graphql/schema/channel.graphql +465 -24
  92. package/lib/graphql/schema/channel.graphql.js +1 -1
  93. package/lib/graphql/schema/chat-configuration.graphql +77 -0
  94. package/lib/graphql/schema/chat-configuration.graphql.js +1 -0
  95. package/lib/graphql/schema/chat-configuration.graphql.js.map +1 -0
  96. package/lib/graphql/schema/gateway.graphql +363 -0
  97. package/lib/graphql/schema/index.js +2 -2
  98. package/lib/graphql/schema/index.js.map +1 -1
  99. package/lib/graphql/schema/post-thread.graphql +167 -21
  100. package/lib/graphql/schema/post-thread.graphql.js +1 -1
  101. package/lib/graphql/schema/post.graphql +433 -36
  102. package/lib/graphql/schema/post.graphql.js +1 -1
  103. package/lib/graphql/schema/preferences.graphql +190 -3
  104. package/lib/graphql/schema/preferences.graphql.js +1 -1
  105. package/lib/graphql/schema/reaction.graphql +71 -13
  106. package/lib/graphql/schema/reaction.graphql.js +1 -1
  107. package/lib/graphql/schema/services.graphql +18 -0
  108. package/lib/graphql/schema/streaming.graphql +224 -0
  109. package/lib/graphql/schema/streaming.graphql.js +1 -0
  110. package/lib/graphql/schema/streaming.graphql.js.map +1 -0
  111. package/lib/graphql/schema/users.graphql +76 -13
  112. package/lib/graphql/schema/users.graphql.js +1 -1
  113. package/lib/graphql/schema/workflow-service.graphql +82 -0
  114. package/lib/index.d.ts +3 -1
  115. package/lib/index.js +1 -1
  116. package/lib/index.js.map +1 -1
  117. package/lib/interfaces/index.d.ts +0 -2
  118. package/lib/interfaces/services.d.ts +1 -3
  119. package/lib/migrations/dbMigrations/AddChannelConfigurationsMigration.d.ts +42 -0
  120. package/lib/migrations/dbMigrations/AddChannelConfigurationsMigration.js +60 -0
  121. package/lib/migrations/dbMigrations/AddChannelConfigurationsMigration.js.map +1 -0
  122. package/lib/migrations/dbMigrations/AddChatConfigurationsMigration.d.ts +21 -0
  123. package/lib/migrations/dbMigrations/AddChatConfigurationsMigration.js +30 -0
  124. package/lib/migrations/dbMigrations/AddChatConfigurationsMigration.js.map +1 -0
  125. package/lib/migrations/dbMigrations/AddPostsConfigurationsMigration.d.ts +17 -0
  126. package/lib/migrations/dbMigrations/AddPostsConfigurationsMigration.js +44 -0
  127. package/lib/migrations/dbMigrations/AddPostsConfigurationsMigration.js.map +1 -0
  128. package/lib/migrations/dbMigrations/index.d.ts +3 -0
  129. package/lib/migrations/index.d.ts +1 -0
  130. package/lib/migrations/mail-template-migration.d.ts +3 -6
  131. package/lib/migrations/mail-template-migration.js +8 -21
  132. package/lib/migrations/mail-template-migration.js.map +1 -1
  133. package/lib/migrations/message-notification-template-migration.d.ts +4 -7
  134. package/lib/migrations/message-notification-template-migration.js +8 -25
  135. package/lib/migrations/message-notification-template-migration.js.map +1 -1
  136. package/lib/module.d.ts +1 -1
  137. package/lib/module.js +3 -10
  138. package/lib/module.js.map +1 -1
  139. package/lib/plugins/ChannelMoleculerService.d.ts +39 -0
  140. package/lib/plugins/ChannelMoleculerService.js +58 -0
  141. package/lib/plugins/ChannelMoleculerService.js.map +1 -0
  142. package/lib/plugins/ExtendedTokenAccountMoleculerService.d.ts +65 -0
  143. package/lib/plugins/ExtendedTokenAccountMoleculerService.js +88 -0
  144. package/lib/plugins/ExtendedTokenAccountMoleculerService.js.map +1 -0
  145. package/lib/plugins/MessengerNotificationMoleculerService.d.ts +52 -0
  146. package/lib/plugins/MessengerNotificationMoleculerService.js +84 -0
  147. package/lib/plugins/MessengerNotificationMoleculerService.js.map +1 -0
  148. package/lib/plugins/PostMoleculerService.d.ts +65 -0
  149. package/lib/plugins/PostMoleculerService.js +87 -0
  150. package/lib/plugins/PostMoleculerService.js.map +1 -0
  151. package/lib/plugins/PostThreadMoleculerService.d.ts +40 -0
  152. package/lib/plugins/PostThreadMoleculerService.js +59 -0
  153. package/lib/plugins/PostThreadMoleculerService.js.map +1 -0
  154. package/lib/plugins/ReactionMoleculerService.d.ts +37 -0
  155. package/lib/plugins/ReactionMoleculerService.js +56 -0
  156. package/lib/plugins/ReactionMoleculerService.js.map +1 -0
  157. package/lib/plugins/index.d.ts +18 -6
  158. package/lib/preferences/permissions/inbox-permission-contribution.js +58 -97
  159. package/lib/preferences/permissions/inbox-permission-contribution.js.map +1 -1
  160. package/lib/preferences/permissions/inbox-roles-permission-overwrite.js +144 -144
  161. package/lib/preferences/permissions/inbox-roles-permission-overwrite.js.map +1 -1
  162. package/lib/preferences/settings/channel-settings.d.ts +39 -0
  163. package/lib/preferences/settings/channel-settings.js +180 -0
  164. package/lib/preferences/settings/channel-settings.js.map +1 -0
  165. package/lib/preferences/settings/chat-settings.d.ts +248 -0
  166. package/lib/preferences/settings/chat-settings.js +1152 -0
  167. package/lib/preferences/settings/chat-settings.js.map +1 -0
  168. package/lib/preferences/settings/index.d.ts +3 -0
  169. package/lib/preferences/settings/messenger-channels-contribution.d.ts +39 -0
  170. package/lib/preferences/settings/messenger-channels-contribution.js +355 -0
  171. package/lib/preferences/settings/messenger-channels-contribution.js.map +1 -0
  172. package/lib/preferences/settings/post-settings.d.ts +16 -0
  173. package/lib/preferences/settings/post-settings.js +75 -3
  174. package/lib/preferences/settings/post-settings.js.map +1 -1
  175. package/lib/services/channel-service.d.ts +215 -34
  176. package/lib/services/channel-service.js +1058 -273
  177. package/lib/services/channel-service.js.map +1 -1
  178. package/lib/services/extended-token-account-service.d.ts +175 -20
  179. package/lib/services/extended-token-account-service.js +636 -56
  180. package/lib/services/extended-token-account-service.js.map +1 -1
  181. package/lib/services/messenger-notification-service.d.ts +177 -17
  182. package/lib/services/messenger-notification-service.js +975 -421
  183. package/lib/services/messenger-notification-service.js.map +1 -1
  184. package/lib/services/post-service.d.ts +245 -18
  185. package/lib/services/post-service.js +1027 -113
  186. package/lib/services/post-service.js.map +1 -1
  187. package/lib/services/post-thread-service.d.ts +153 -6
  188. package/lib/services/post-thread-service.js +475 -9
  189. package/lib/services/post-thread-service.js.map +1 -1
  190. package/lib/services/proxy-services/ChannelProxyService.d.ts +27 -0
  191. package/lib/services/proxy-services/ChannelProxyService.js +31 -0
  192. package/lib/services/proxy-services/ChannelProxyService.js.map +1 -0
  193. package/lib/services/proxy-services/ExtendedTokenAccountProxyService.d.ts +42 -0
  194. package/lib/services/proxy-services/ExtendedTokenAccountProxyService.js +46 -0
  195. package/lib/services/proxy-services/ExtendedTokenAccountProxyService.js.map +1 -0
  196. package/lib/services/proxy-services/MessengerNotificationProxyService.d.ts +44 -0
  197. package/lib/services/proxy-services/MessengerNotificationProxyService.js +54 -0
  198. package/lib/services/proxy-services/MessengerNotificationProxyService.js.map +1 -0
  199. package/lib/services/proxy-services/PostProxyService.d.ts +42 -0
  200. package/lib/services/proxy-services/PostProxyService.js +46 -0
  201. package/lib/services/proxy-services/PostProxyService.js.map +1 -0
  202. package/lib/services/proxy-services/PostThreadProxyService.d.ts +32 -0
  203. package/lib/services/proxy-services/PostThreadProxyService.js +36 -0
  204. package/lib/services/proxy-services/PostThreadProxyService.js.map +1 -0
  205. package/lib/services/proxy-services/ReactionProxyService.d.ts +41 -0
  206. package/lib/services/proxy-services/ReactionProxyService.js +45 -0
  207. package/lib/services/proxy-services/ReactionProxyService.js.map +1 -0
  208. package/lib/services/proxy-services/index.d.ts +17 -5
  209. package/lib/services/reaction-service.d.ts +124 -4
  210. package/lib/services/reaction-service.js +413 -3
  211. package/lib/services/reaction-service.js.map +1 -1
  212. package/lib/store/models/account-token-store.d.ts +1 -1
  213. package/lib/store/models/account-token-store.js.map +1 -1
  214. package/lib/store/models/channel.d.ts +2 -3
  215. package/lib/store/models/channel.js +216 -70
  216. package/lib/store/models/channel.js.map +1 -1
  217. package/lib/store/models/post-thread.d.ts +3 -3
  218. package/lib/store/models/post-thread.js +96 -14
  219. package/lib/store/models/post-thread.js.map +1 -1
  220. package/lib/store/models/post.d.ts +2 -3
  221. package/lib/store/models/post.js +143 -23
  222. package/lib/store/models/post.js.map +1 -1
  223. package/lib/store/models/reaction.d.ts +2 -3
  224. package/lib/store/models/reaction.js +67 -8
  225. package/lib/store/models/reaction.js.map +1 -1
  226. package/lib/store/repositories/__tests__/__fixtures__/team-repository.d.ts +3 -3
  227. package/lib/store/repositories/channel-repository.d.ts +6 -6
  228. package/lib/store/repositories/channel-repository.js +5 -2
  229. package/lib/store/repositories/channel-repository.js.map +1 -1
  230. package/lib/store/repositories/post-repository.d.ts +6 -6
  231. package/lib/store/repositories/post-repository.js +5 -2
  232. package/lib/store/repositories/post-repository.js.map +1 -1
  233. package/lib/store/repositories/post-thread-repository.d.ts +6 -6
  234. package/lib/store/repositories/post-thread-repository.js +5 -2
  235. package/lib/store/repositories/post-thread-repository.js.map +1 -1
  236. package/lib/store/repositories/reaction-repository.d.ts +6 -6
  237. package/lib/store/repositories/reaction-repository.js +5 -2
  238. package/lib/store/repositories/reaction-repository.js.map +1 -1
  239. package/lib/streaming/block-chunker.d.ts +40 -0
  240. package/lib/streaming/block-chunker.js +103 -0
  241. package/lib/streaming/block-chunker.js.map +1 -0
  242. package/lib/streaming/block-chunker.test.d.ts +1 -0
  243. package/lib/streaming/index.d.ts +4 -0
  244. package/lib/streaming/stream-service.d.ts +71 -0
  245. package/lib/streaming/stream-service.js +325 -0
  246. package/lib/streaming/stream-service.js.map +1 -0
  247. package/lib/streaming/stream-service.test.d.ts +16 -0
  248. package/lib/streaming/streaming-post.integration.test.d.ts +10 -0
  249. package/lib/streaming/types.d.ts +33 -0
  250. package/lib/streaming/types.js +37 -0
  251. package/lib/streaming/types.js.map +1 -0
  252. package/lib/templates/constants/CONTRIBUTION_POINTS.ts.template +78 -0
  253. package/lib/templates/constants/SERVER_TYPES.ts.template +1 -4
  254. package/lib/templates/constants/WorkflowNamespace.ts.template +10 -0
  255. package/lib/templates/repositories/ChannelRepository.ts.template +3 -3
  256. package/lib/templates/repositories/PostRepository.ts.template +3 -3
  257. package/lib/templates/repositories/PostThreadRepository.ts.template +3 -3
  258. package/lib/templates/repositories/ReactionRepository.ts.template +3 -4
  259. package/lib/templates/services/ChannelService.ts.template +290 -39
  260. package/lib/templates/services/ExtendedTokenAccountService.ts.template +107 -3
  261. package/lib/templates/services/MessengerNotificationService.ts.template +94 -19
  262. package/lib/templates/services/MessengerStreamService.ts.template +131 -0
  263. package/lib/templates/services/PostService.ts.template +228 -20
  264. package/lib/templates/services/PostThreadService.ts.template +151 -6
  265. package/lib/templates/services/ReactionService.ts.template +129 -3
  266. package/lib/templates/services/RedisCacheManager.ts.template +22 -0
  267. package/package.json +10 -6
  268. package/lib/interfaces/context.d.ts +0 -14
  269. package/lib/plugins/channel-moleculer-service.d.ts +0 -8
  270. package/lib/plugins/channel-moleculer-service.js +0 -129
  271. package/lib/plugins/channel-moleculer-service.js.map +0 -1
  272. package/lib/plugins/extended-token-account-moleculer-service.d.ts +0 -8
  273. package/lib/plugins/extended-token-account-moleculer-service.js +0 -47
  274. package/lib/plugins/extended-token-account-moleculer-service.js.map +0 -1
  275. package/lib/plugins/messenger-notification-moleculer-service.d.ts +0 -9
  276. package/lib/plugins/messenger-notification-moleculer-service.js +0 -116
  277. package/lib/plugins/messenger-notification-moleculer-service.js.map +0 -1
  278. package/lib/plugins/post-moleculer-service.d.ts +0 -35
  279. package/lib/plugins/post-moleculer-service.js +0 -393
  280. package/lib/plugins/post-moleculer-service.js.map +0 -1
  281. package/lib/plugins/post-thread-moleculer-service.d.ts +0 -8
  282. package/lib/plugins/post-thread-moleculer-service.js +0 -33
  283. package/lib/plugins/post-thread-moleculer-service.js.map +0 -1
  284. package/lib/plugins/reaction-moleculer-service.d.ts +0 -8
  285. package/lib/plugins/reaction-moleculer-service.js +0 -20
  286. package/lib/plugins/reaction-moleculer-service.js.map +0 -1
  287. package/lib/services/proxy-services/channel-microservice.d.ts +0 -44
  288. package/lib/services/proxy-services/channel-microservice.js +0 -199
  289. package/lib/services/proxy-services/channel-microservice.js.map +0 -1
  290. package/lib/services/proxy-services/messenger-notification-microservice.d.ts +0 -16
  291. package/lib/services/proxy-services/messenger-notification-microservice.js +0 -54
  292. package/lib/services/proxy-services/messenger-notification-microservice.js.map +0 -1
  293. package/lib/services/proxy-services/post-microservice.d.ts +0 -22
  294. package/lib/services/proxy-services/post-microservice.js +0 -64
  295. package/lib/services/proxy-services/post-microservice.js.map +0 -1
  296. package/lib/services/proxy-services/post-thread-microservice.d.ts +0 -10
  297. package/lib/services/proxy-services/post-thread-microservice.js +0 -15
  298. package/lib/services/proxy-services/post-thread-microservice.js.map +0 -1
  299. package/lib/services/proxy-services/reaction-microservice.d.ts +0 -9
  300. package/lib/services/proxy-services/reaction-microservice.js +0 -10
  301. package/lib/services/proxy-services/reaction-microservice.js.map +0 -1
  302. package/lib/store/models/common-options.js +0 -20
  303. package/lib/store/models/common-options.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"messenger-notification-service.js","sources":["../../src/services/messenger-notification-service.ts"],"sourcesContent":[null],"names":["IMessengerPostTypeEnum"],"mappings":"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"}
1
+ {"version":3,"file":"messenger-notification-service.js","sources":["../../src/services/messenger-notification-service.ts"],"sourcesContent":[null],"names":["IMessengerPostTypeEnum"],"mappings":"2dAkDA;;;;;;;;;;;;;;;;;;;;;AAqBG;AAEI,IAAM,4BAA4B,GAAlC,MAAM,4BAA4B,CAAA;AAUhB,EAAA,iBAAA;AAEA,EAAA,cAAA;AAEA,EAAA,oBAAA;AAEA,EAAA,cAAA;AAEA,EAAA,cAAA;AAEA,EAAA,aAAA;AAEA,EAAA,UAAA;AArBF,EAAA,SAAA,GAAS,IAAG,oBAAI,EAAoB;OAE/C,GAAK,EAAiC;iBACtC,GAAe,EAAuC;AACtD,EAAA,uBAAA,SAAiD,EAAM,wBAAE,IAAwB;AACjF,EAAA,MAAA;AAER,EAAA,WAAA,CAAA,iBAEqB,EAAqC,cAErC,EAA+B,sBAEY,cAE3C,EAA+B,cAE/B,EAA+B,aAE/B,EAA6B,UAE7B,EAAuB,MAExC,EAAyB;QAdR,CAAA,iBAAA,GAAA;QAEA,CAAA,cAAA,GAAA;QAEA,CAAA,oBAAA,GAAA;QAEA,CAAA,cAAA,GAAA;QAEA,CAAA,cAAA,GAAA;QAEA,CAAA,aAAA,GAAA;QAEA,CAAA,UAAA,GAAA;AAIjB,IAAA,IAAA,CAAA,MAAK,GAAA,MAAS,EAAA,KAAQ,CAAA;MACzB,SAAA,EAAA;AAED,KAAA,CAAA;;AAEG;;AAEC;SACH,GAAA;AAED,IAAA,IAAA,CAAA,SAAA,CAAA,OAAA,EAAA;;;;;;;AAOG;;;AAGC;+BACkB,CAAA,MAAA,EAAA;AACV,IAAA,IAAA;iBACH,EAAA;AAED,QAAA,OAAA,IAAK,KAAA,CAAA,2CAAoC,CAAA;AAEzC,MAAA;AACI,MAAA,IAAA,CAAA,uBAAkB,GAAC;AACnB,QAAA,GAAA,IAAA,CAAA,uBAAuB;AACvB,QAAA,GAAA;AACH,OAAA;UACJ,CAAA,MAAA,CAAA,KAAA,CAAA,uCAAA,EAAA;QAAC,QAAO,EAAA,CAAA,CAAK,MAAG,CAAA,KAAA;uBACF,CAAC,CAAA,MAAM,CAAA,UAAA;oBACX,EAAA,CAAA,CAAK;AACR,OAAA,CAAA;AACA,IAAA,CAAA,CAAA,OAAA,KAAE,EAAA;UACT,CAAA,MAAA,CAAA,KAAA,CAAA,0CAAA,EAAA,KAAA,CAAA;MACJ,OAAA,KAAA,YAAA,KAAA,GAAA,KAAA,GAAA,IAAA,KAAA,CAAA,6DAAA,CAAA;AAED,IAAA;;;;;;;;;AASG;;AAEH;AAII;AACI,EAAA,MAAA,gCAAyB,CAAA,IAAK,EAAA,KAAQ,EAAI;AACtC,IAAA,IAAA;eACH,IAAA,OAAA,KAAA,KAAA,QAAA,IAAA,KAAA,IAAA,CAAA,EAAA;AAED,QAAA,OAAA,IAAK,KAAO,CAAA,iDAAM,CAAA;;iBAIb,qDAAoC,EAAA;AACrC,QAAA,IAAA;AACA,QAAA;;YAGJ,QAAM,GAAA,MAAA,IAAA,CAAA,yCAAyD,CAAA;mBAEzD,IAAA,QAAA,CAAA,MAAoB,KAAG,CAAA,EAAA;AAI7B,QAAA,IAAA,CAAA,YAAa,CAAC,wCAA0B,CAAA;AAExC,QAAA,OAAA,IAAK;;+CAEsB,GAAA,IAAA,CAAA,aAAA,CAAA,QAAqC,CAAA;AAC/D,MAAA,MAAA,oBAAE,GAAA,MAAA,CAAA,OAAA,CAAA,mCAAA,CAAA,CAAA,GAAA,CAAA,KAAA,IAAA,IAAA,CAAA,sBAAA,CAAA,KAAA,CAAA,CAAA;AAEH,MAAA,MAAA,OAAO,IAAI,CAAC,oBAAA,CAAA;UACf,CAAA,MAAA,CAAA,KAAA,CAAA,gDAAA,EAAA;QAAC,YAAY,EAAE,QAAC,CAAA,MAAA;iBACR,QAAO,CAAA,IAAM,CAAA,mCAAA,CAAA,CAAA;;AAEd,MAAA,OAAA,IAAC;AACD,IAAA,CAAA,CAAA,OAAA,KAAE,EAAA;UACT,CAAA,MAAA,CAAA,KAAA,CAAA,gDAAA,EAAA,KAAA,CAAA;MACJ,OAAA,KAAA,YAAA,KAAA,GAAA,KAAA,GAAA,IAAA,KAAA,CAAA,mEAAA,CAAA;AAED,IAAA;;;;;;;AAOG;;AAEC;iCACgB,CAAA,IAAA,EAAA;AACR,IAAA,IAAA;eACH,EAAA;eAED,IAAM,KAAe,CAAA,+BAAyC,CAAA;AAC1D,MAAA;eACH,CAAA,EAAA,IAAA,KAAA,CAAA,OAAA,CAAA,IAAA,CAAA,EAAA,CAAA,IAAA,IAAA,CAAA,EAAA,CAAA,MAAA,KAAA,CAAA,EAAA;AAED,QAAA,OAAA,IAAK,KAAO,CAAA,sCAAsC,CAAE;;AAEhD,MAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAQ,gCAAc,EAAA;AACtB,QAAA,UAAA,EAAA,KAAS,CAAC,OAAM,CAAA,IAAI,CAAA,EAAA,CAAA,GAAA,IAAA,CAAA,EAAA,CAAA,MAAA,GAAA,CAAA;AACvB,QAAA,QAAE,EAAA,CAAA,CAAA,IAAA,CAAA,KAAA;AAEH,QAAA,OAAA,EAAA,CAAM;AACF,OAAA,CAAA;AACA,MAAA,MAAA,QAAA,GAAO,MAAE,KAAA,CAAA,uCAAA,EAAA;AACL,QAAA,MAAA,EAAA,MAAA;AACA,QAAA,OAAA,EAAA;AACA,UAAA,MAAA,EAAA,kBAAgB;AACnB,UAAA,iBAAA,EAAA,eAAA;AACD,UAAA,cAAM,EAAI;AACb,SAAA;AAED,QAAA,IAAA,EAAA,IAAK,CAAA,SAAW,KAAG;AACf,OAAA,CAAA;mBACH,CAAA,EAAA,EAAA;AAED,QAAA,OAAA,SAAY,CAAA,CAAA,mCAA4C,EAAA,QAAA,CAAA,MAAA,CAAA,EAAA,EAAA,QAAA,CAAA,UAAA,CAAA,CAAA,CAAA;AAExD,MAAA;kBACI,GAAA,MAAQ,QAAO,CAAA,IAAM,EAAA;iBACrB,CAAE,KAAE,CAAA,0CAAS,EAAA;AAChB,QAAA,MAAC,EAAC,MAAA,CAAA,MAAA;AAEH,QAAA,EAAA,EAAA,MAAA,CAAO;QACX;aAAE,MAAO;aACL;AACA,MAAA,IAAA,CAAA,MAAA,CAAA,KAAO,CAAK,0CAAsC,EAAA,KAAA,CAAA;aACrD,KAAA,YAAA,KAAA,GAAA,KAAA,GAAA,IAAA,KAAA,CAAA,wDAAA,CAAA;IACL;AAEA,EAAA;;;;;;;;AAQG;;AAEH;AAII,EAAA,MAAA,0BAAK,CAAA,IAAA,EAAA,gBAAA,EAAA;;AAEG,MAAA,IAAA,CAAA,IAAA,EAAA;eACH,IAAA,KAAA,CAAA,uBAAA,CAAA;AAED,MAAA;iBACI,CAAA,KAAM,CAAE,8BAAO,EAAA;gBACf,IAAA,CAAA,EAAA;iBACA,EAAA,IAAA,CAAA,OAAA;AACH,QAAA,mBAAE,EAAA,CAAA,CAAA;AAEH,OAAA,CAAA;AACA,MAAA,MAAA;;AAII,OAAA;AACA,MAAA,MAAA,kBAAa,GAAA,gBAAA,IAAA,gBAAA,EAAA,GAAA,GAAA,gBAAA,GAAA,WAAA,EAAA,KAAA,EAAA,kBAAA;6BAChB,EAAA;YAED,CAAA,MAAA,CAAA,KAAA,CAAA,yDAAuD,CAAA;AACvD,QAAA,OAAA;AACI,MAAA;;YAGJ,UAAA,GAAA,kBAAsB,EAAA,MAAA,EAAA,EAAA,GAAA,MAAA,IAAA,CAAA,yBAAA,CAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,GAAA,IAAA;AACtB;YAEA,OAAK,GAAA,MAAU,IAAA,CAAA,qBAAA,CAAA,WAAA,EAAA,OAAA,EAAA,QAAA,EAAA,CAAA;AACX,MAAA,IAAA,CAAA,OAAA,EAAA;eACH,IAAA,KAAA,CAAA,yCAAA,CAAA;;AAGD;YACA,MAAM,GAAA,kBAAkB,EAAA,QAAQ,EAAO,QAAC,EAAA,IAAA,WAAA,EAAA,QAAA,EAAA,QAAA,EAAA;YAExC,IAAI,GAAC,MAAO,IAAA,CAAA,OAAA,CAAA,MAAA,CAAA;AACR,MAAA,IAAA,CAAA,IAAA,EAAA;eACH,IAAA,KAAA,CAAA,sCAAA,CAAA;;AAGD,MAAA,MAAA;AAEA,QAAA,SAAA;AACA,QAAA,UAAM;AACN,QAAA;AAEI,OAAA,GAAA,IAAA;AACJ,MAAA,MAAA,WAAW,SAAG,GAAA,CAAA,EAAA,SAAA,CAAA,CAAA,EAAA,UAAkC,CAAA,CAAA,WAAc,IAAA,SAAA;YAE9D,2BAAA,GAA8B,kBAAA,EAAA,KAAA,IAAA,EAAA;YAC9B,KAAI,GAAA,kBAAsB,EAAA,KAAA,IAAA,QAAA;YAE1B,IAAI,GAAA,kBAAa,EAAA,IAAA,KAAA,WAAA,EAAA,OAAA,KAAA,EAAA,GAAA,aAAA,GAAA,WAAA,EAAA,OAAA,IAAA,aAAA,CAAA;AACb,MAAA,MAAA,KAAA,GAAA,2BAAc,EAAA,KAAA,IACV,SAAW;;mBAGX,EAAA;AACJ,MAAA,IAAA,UAAA,EAAM;cAIT,GAAA,IAAA,CAAA,yBAAA,CAAA,UAAA,CAAA,YAAA,EAAA,MAAA,CAAA,CAAA,IAAA,CAAA,EAAA,IAAA,EAAA,EAAA,KAAA,MAAA,CAAA,IAAA,EAAA,EAAA,cAAA,CAAA;AAED,MAAA,CAAA,MAAA;AACI,QAAA,MAAA,GAAA,IAAK,CAAA,yBAAa,CAAA,OAAA,CAAA,OAAA,EAAA,MAAA,CAAA,MAAA,IAA+C,MAAA,EAAA,IAAA,EAAA,EAAA,KAAA,MAAA,CAAA,IAAA,EAAA,EAAA,SAAA,CAAA;AACjE,MAAA;gBACH,CAAA,MAAA,KAAA,CAAA,EAAA;YAED,CAAA,MAAA,CAAA,KAAA,CAAA,6CAAwB,CAAA;AACxB,QAAA,OAAA;AACI,MAAA;AACA;8BACK,GAAA,MAAA,IAAA,CAAA,yBAAA,CAAA;kBACL;gCACK;AACD,QAAA,KAAA;AAER,QAAA,IAAA;AACI,QAAA;;AAGJ,MAAA,IAAA,kBAAY;iCACO;;AAElB,MAAA,IAAA,CAAA,MAAE,CAAA,KAAA,CAAA,qCAAA,EAAA;AAEH,QAAA,MAAA,EAAA,OAAW;QACf,cAAC,EAAA,MAAA,CAAA;QAAC;aACE,IAAK;AACL,IAAA,CAAA,CAAA,OAAA,KAAA,EAAO;UACV,CAAA,MAAA,CAAA,KAAA,CAAA,qCAAA,EAAA,KAAA,CAAA;MACJ,OAAA,KAAA,YAAA,KAAA,GAAA,KAAA,GAAA,IAAA,KAAA,CAAA,wDAAA,CAAA;AAED,IAAA;;;;;;;AAOG;;;AAGC;8BACgB,CAAA,IAAA,EAAA;AACR,IAAA,IAAA;eACH,EAAA;AAED,QAAA,OAAA,IAAK,KAAO,CAAA,uBAAM,CAAA;AAElB,MAAA;iBACA,CAAM,KAAA,CAAA,8BAA+B,EAAA;cAErC,EAAA,IAAA,CAAA;;AAEA,MAAA,MAAA,WAAM,GAAA;;AAEN,OAAA;YAEA,QAAA,GAAA,WAAA,EAAA,KAA6B,EAAA,QAAA,IAAA,IAAA;AAC7B;YACA,eAAa,GAAA,QAAW,EAAA,KAAQ,EAAA,EAAA,IAAS,IAAA;YAEzC,sBAAY,GAAA,IAAA,CAAA,wBAAA,CAAA,QAAA,EAAA,KAAA,EAAA,SAAA,CAAA;AACR,MAAA,MAAA,cAAO,GAAI,QAAM,EAAA,IAAA,EAAA,EAAA,IAAA,IAAsB;YAC3C,qBAAC,GAAA,IAAA,CAAA,wBAAA,CAAA,QAAA,EAAA,IAAA,EAAA,SAAA,CAAA;;AAGD,MAAA,MAAA,UAAQ,sBAAwB,EAAA,MAAA,EAAA,cAAuB,WAAE,EAAY,QAAE,EAAA,QAAe,EAAA;YAEtF,IAAA,GAAA,MAAA,IAAA,CAAA,OAAA,CAAA,OAAA,CAAA;AACA,MAAA,IAAA,CAAA,IAAA,EAAA;eACA,IAAK,KAAO,CAAA,sBAAG,CAAA;AACX,MAAA;YACJ,eAAC,GAAA,MAAA,IAAA,CAAA,6BAAA,CAAA,IAAA,CAAA,EAAA,CAAA;YAED;aACA;AACA,QAAA,GAAA;;yBAGQ,EAAA,MAAY,EAAE,YAAa,iBAAW,IAAU,EAAA;;YASxD,OAAM,GAAA,MAAA,IAAA,CAAA,qBAA0B,CAAA,WAAA,EAAA,OAAA,EAAA,QAAA,EAAA,CAAA;kBAE5B,EAAA;mBACA,KAAA,CAAA,mBAAgB,CAAA;;wBAahB,GAAA,IAAA,CAAA,gBAAyB,CAAA,OAAA,CAAA;kBACzB,GAAI,qBAAQ,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,YAAA;oBACR,MAAA,GAAA,MAAA,IAAA,CAAoB,OAChB,CAAA,MAAK,CAAA,GAAA,IAAA;;YAWjB;;AAGI,QAAA,WAAA;iBACA;AACI,QAAA;yCACH,CAAA,WAAA,EAAA,IAAA,EAAA,KAAA,EAAA,sBAAA,EAAA,qBAAA,CAAA;;AAGL,MAAA,MAAA,oBAAkB,GAAA,EAAA;AAElB,MAAA,IAAA,KAAA,EAAK;;AAED,QAAA,oBAAA,CAAA,IAAiB,KAAI,CAAA,mBAAqB,EAAA,WAAA,EAAA,OAAA,EAAA,YAAA,EAAA,SAAA,EAAA,eAAA,EAAA,sBAAA,CAAA,CAAA;AAC7C;AAED,QAAA,IAAA,KAAA,EAAO;UACV,oBAAA,CAAA,IAAA,CAAA,IAAA,CAAA,cAAA,CAAA,KAAA,EAAA,WAAA,EAAA,OAAA,EAAA,WAAA,EAAA,QAAA,EAAA,cAAA,EAAA,qBAAA,CAAA,CAAA;QAAC;;AAEE,MAAA,IAAA,GAAA,EAAA;QACJ,oBAAC,CAAA,IAAA,CAAA,IAAA,CAAA,aAAA,CAAA,IAAA,EAAA,WAAA,EAAA,SAAA,CAAA,CAAA;QACJ,IAAA,KAAA,EAAA;AAED,UAAA,oBAAA,CAAA,IAAA,CAAA,IAAA,CAAA,aAAA,CAAA,KAAA,EAAA,WAAA,EAAA,QAAA,CAAA,CAAA;;;;;;;;AAQG,UAAA,GAAA;UACH;AACA;AACI,OAAA,CAAA;AACI,MAAA,OAAA,IAAK;AACD,IAAA,CAAA,CAAA,OAAA,KAAA,EAAA;iBACH,CAAA,KAAA,CAAA,qCAAA,EAAA,KAAA,CAAA;AAED,MAAA,OAAA,KAAK,YAAa,KAAA,GAAA,KAAA,GAAA,IAAA,KAAA,CAAA,wDAA2D,CAAA;;;AAKzE;AACA;;AAGJ;;;AAIA;AACA;AACI;;AAGJ,EAAA,MAAA;;mBAEI,OAAU,KAAA,KAAS,QAAM,IAAA,KAAA,IAAA,CAAA,EAAA;AAC5B,QAAA,OAAE,IAAA,KAAA,CAAA,iDAAA,CAAA;AAEH,MAAA;UACH,CAAA,MAAA,CAAA,KAAA,CAAA,wCAAA,EAAA;QAAC,IAAA;;;AAGM,MAAA,MAAA,KAAC,GAAC,MAAK,IAAA,CAAA,qBAAA,CAAA,IAAA,EAAA,KAAA,CAAA;AACP,MAAA,IAAA,CAAA,KAAA,IAAE,KAAI,CAAA,MAAM,KAAA,CAAA,EAAA;QACpB,IAAC,CAAA,MAAA,CAAA,KAAA,CAAA,yBAAA,CAAA;QACJ,OAAA,IAAA;AAED,MAAA;;;;;;;;AAQG,MAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,uCAAA,EAAA;QACH,UAAA,EAAA,KAAA,CAAA,MAAA;AACA,QAAA,QAAM,EAAA,QAAA,CAAA;AAIF,OAAA,CAAA;AACI,MAAA,OAAA,IAAK;AACD,IAAA,CAAA,CAAA,OAAA,KAAA,EAAA;iBACH,CAAA,KAAA,CAAA,+CAAA,EAAA,KAAA,CAAA;AAED,MAAA,OAAA,KAAK,YAAa,KAAA,GAAA,KAAA,GAAA,IAAA,KAAA,CAAA,0DAA6D,CAAA;;;AAK3E;AACA;;;AAIJ;AAEA;AACI;AACA;;AAGJ;+CACkC,CAAA,IAAA,EAAA,KAAA,EAAA;AAElC,IAAA,IAAA;AACA,MAAA,IAAA,CAAA,IAAA,WAAa,KAAM,aAAO,IAAA,KAAA,IAAA,CAAA,EAAA;AACtB,QAAA,OAAA,IAAA,KAAK,CAAA;;AAGT,MAAA,IAAA,CAAA,MAAK,CAAA,KAAM,CAAC;;;;AAIX,MAAA,MAAA,OAAE,GAAA,MAAA,IAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,KAAA,CAAA;AAEH,MAAA,IAAA,CAAA,OAAA,WAAY,CAAA,MAAA,KAAA,CAAA,EAAA;QAChB,IAAC,CAAA,MAAA,CAAA,KAAA,CAAA,0BAAA,CAAA;QAAC,OAAO,IAAA;;YAEL,KAAA,GAAO,iBAAiB,CAAA,OAAK,CAAA,GAAA,CAAA,MAAA,IAAA,IAAA,CAAA,eAAA,CAAA,MAAA,CAAA,CAAA,CAAA;AACzB,MAAA,MAAA,UAAE,GAAK,KAAA,CAAA,MAAA,CAAA,IAAA,IAAA,IAAA,KAAA,IAAA,CAAA;AACP,MAAA,IAAA,UAAE,CAAA,MAAS,KAAC,CAAA,EAAA;QACpB,IAAC,CAAA,MAAA,CAAA,KAAA,CAAA,8BAAA,CAAA;QACJ,OAAA,IAAA;MAED;AAEQ,MAAA,MAAM,oBAAA,GAAA,WAEV,GAAA,CAAA,IAAa,IAAA,IAAA,CAAA,6BAAA,CAAA,IAAA,CAAA,CAAA;AAEb,MAAA,MAAI,OAAC,GAAA,MAAA,OAAA,CAAA,GAAA,CAAA,oBAAA,CAAA;AACD,MAAA,MAAA,QAAM,GAAK,OAAO,CAAA,MAAO,CAAA,MAAA,IAAA,MAAA,YAAA,KAAA,CAAA;AACzB,MAAA,IAAA,QAAM,CAAA,MAAO,GAAG,CAAA,EAAG;YAEnB,CAAA,MAAM,CAAA,IAAA,CAAA,CAAQ,EAAA,QAAU,CAAA,4CAA+C,EAAA,UAAA,CAAA,MAAA,CAAA,CAAA,CAAA;AACnE,MAAA;AACI,MAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,yCAAQ,EAAA;6BACJ,CAAA,MAAY;AACf,QAAA,UAAA,EAAA,UAAA,CAAA,MAAA;AACJ,QAAA,QAAA,EAAA,QAAA,CAAA;AACD,OAAA,CAAA;AACI,MAAA,OAAA,IAAA;AACI,IAAA,CAAA,CAAA,OAAA,KAAA,EAAA;AACA,MAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,iDAAgB,EAAA,KAAA,CAAA;AAChB,MAAA,OAAA,KAAA,YAAA,KAAS,GAAI,KAAA,GAAA,IAAA,KAAA,CAAA,4DAAA,CAAA;AACb,IAAA;AACI,EAAA;AACI;AACA,EAAA,MAAA,6BAAI,CAAA,IAAM,EAAA,KAAA,EAAA;AACV,IAAA,IAAA;AACI,MAAA,MAAA,KAAA,GAAA,IAAA,IAAA,EAAA;AACI,MAAA,MAAA,OAAA,GAAA,GAAA,CAAA,KAAA,EAAA;AACI,QAAA,CAAA,IAAA,GAAA;AACH,OAAA,CAAA;AACJ,MAAA,MAAA,QAAA,GAAA,MAAA,IAAA,CAAA,iBAAA,CAAA,KAAA,CAAA,SAAA,CAAA,CAAA;AACJ,QAAA,MAAA,EAAA;AACJ,UAAA,UAAA,EAAA;AACJ,YAAA,IAAA,EAAA,OAAA;AACJ,YAAA,IAAA,EAAA;AACJ;AACJ;;AAGG,QAAA,QAAA,EAAA;AACI,UAAA,GAAA,EAAA,IAAA;AACA,UAAA,UAAA,EAAA,IAAA;AACH,UAAA,OAAA,EAAA,IAAA;AACJ,UAAA,OAAE,EAAA;YAEH,OAAO,EAAA;AACH,cAAA,KAAG,EAAA,UAAO;gBACV,EAAA;AACH,cAAC,IAAE,EAAA;gBACP,IAAA,EAAA,CAAA;kBAAQ,IAAO,EAAC,CAAA,qBAAA,EAAA,aAAA;iBACR;AACL;;;AAIA;QACJ,CAAA;YACI,KAAA,GAAM,UAAU,CAAA;gBAChB,EAAM;iBACN,EAAO;AAEC,YAAA,GAAA,EAAA,QAAM,CAAA,GAAA,CAAA,CAAA;;AAEF,aAAA,KAAA,GAAC;;mBAGN,EACL;YACH,GAAI,EAAA,QAAA,CAAA,GAAA,CAAA,CAAA;cACV;AAEO,aAAA,KAAA,UAAA;;;AAOA,OAAA,CAAA;AACJ,MAAA,OAAK,QAAA,CAAA,GAAA,CAAA,OAAA,KAAA;AACD,QAAA,GAAA,OAAK;YAEL,EAAA,KAAM,CAAA,IAAA,CAAA,IAAW,IAAG,IAAK,QAAM,CAAA,QAAM,EAAA,KAAA,OAAA,CAAA,GAAA,CAAA,QAAA,EAAA;;AAEjC,IAAA,CAAA,CAAA,OAAA,KAAA,EAAA;iBACH,CAAA,KAAA,CAAA,+CAAA,EAAA,KAAA,CAAA;aAED,EAAA;AAEA,IAAA;AAEQ,EAAA;gBACA,QAAI,EAAA;mBACJ,CAAA,MAAU,CAAA,CAAE,GAAA,EAAA,IAAA,KAAc;mBAC1B,GAAM,IAAA,CAAA,4BAA8B,CAAA,IAAA,CAAA;AACpC,MAAA,MAAA,qBAAS,GAAA,IAAA,CAAA,IAAA,EAAA,CAAA,SAA+B,CAAA,CAAA;AACxC,MAAA,OAAA,OAAA,CAAA,MAAW,CAAA,CAAA,SAAA,EAAA,UAAA,MAAA;AACP,QAAA,GAAA,GAAA;oBACA,IAAI,CAAA,QAAA,EAAA,GAAA,KAAA,CAAA,OAAA,CAAA,SAAA,CAAA,UAAA,CAAA,IAAA,CAAA,QAAA,EAAA,CAAA,CAAA,GAAA,CAAA,GAAA,SAAA,CAAA,UAAA,CAAA,IAAA,CAAA,QAAA,EAAA,CAAA,EAAA,qBAAA,CAAA,GAAA,CAAA,qBAAA;AACJ,OAAA,CAAA,EAAA,GAAA,CAAA;AACH,IAAA,CAAA,EAAA,EAAA,CAAA;;8BAIZ,CAAA,cAAA,EAAA;WAAC,cAAe,CAAA,OAAA,CAAA,MAAA,CAAA,CAAA;;AAEb,KAAA,KAAA,UAAO,CAAA,cAAK,CAAY,UAAQ,EAAA,YAAY,CAAK,EAAC,EAAA,CAAA;;QAEzD,QAAA,CAAA,IAAA,EAAA,QAAA,EAAA;AAEO,IAAA,IAAA;AACJ,MAAA,IAAA,CAAA,MAAK,CAAA,KAAA,CAAA,4BAAA,EAAA;AACD,QAAA,MAAA,EAAI,IAAC;oBAEC,EAAA;;AAEF,MAAA,MAAA,cAAU,IAAA,CAAK;sBAClB,EAAA;AAED,QAAA,MAAA,IAAM,KAAE,CAAA,CAAA,gCAAqC,EAAC,IAAA,CAAA,CAAA,CAAA;AAC9C,MAAA;YAEA;AACI,QAAA,iBAAK;;;AAIT,OAAA,GAAA,WAAM;AACF,MAAA,MAAA,IAAA,CAAA,aAAiB,CAAA,IAAA,CAAA;AACjB,QAAA,KAAA,EAAA;AACH,QAAA,EAAA,EAAA,iBAAE,IAAA,KAAA;QACP,UAAC,EAAA,cAAA,CAAA,4BAAA;QAAC,IAAA,EAAA,MAAY,wBAAG;eACb,EAAK,6BAAa,EAAA,QAAA,CAAA,MAAA,CAAA,MAAsC,CAAA;AACxD,QAAA,SAAA,EAAO;UACV,IAAA,EAAA,CAAA,IAAA,EAAA,QAAA,CAAA,+BAAA,EAAA,QAAA,CAAA,MAAA,CAAA,MAAA,CAAA;UACJ,IAAA;AAEO,UAAM,OAAA,EAAA;AACV;SACA,EAAA,CAAA;IACJ,CAAC,CAAA,OAAA,KAAA,EAAA;MAEO,IAAM,CAAA,MAAA,CAAA,KAAA,CAAA,sCAA4C,EAAA,KAAA,CAAA;AACtD,MAAA,OAAK,KAAA,YAAA,KAAA,GAAA,KAAA,GAAA,IAAA,KAAA,CAAA,4CAAA,CAAA;;;AAGG,EAAA,MAAA,QAAA,CAAA,IAAA,EAAM,QAAE,EAAA;AACJ,IAAA,IAAA;AACI,MAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,0BAAiB,EAAA;AACb,QAAA,MAAA,EAAA,IAAA;AACA,QAAA,YAAA,EAAA,QAAA,CAAA;AACA,OAAA,CAAA;AACH,MAAA,MAAA,WAAA,GAAA,IAAA,CAAA,KAAA,CAAA,IAAA,CAAA;AACJ,MAAA,IAAA,CAAA,WAAA,EAAA;AACJ,QAAA,MAAA,IAAA,KAAA,CAAA,CAAA,gCAAA,EAAA,IAAA,CAAA,CAAA,CAAA;;YAER;QAAC,QAAO;;qBAEE;AACH,MAAA,MAAA,CAAA,MAAA,CAAA,GAAM,WAAE,IAAA,EAAA;AACJ,MAAA,IAAA,CAAA,MAAA,EAAA;AACI,QAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,4CAAiB,EAAA;AACb,UAAA,MAAA,EAAA;AACA,SAAA,CAAA;AACA,QAAA;AACH,MAAA;AACJ,MAAA,MAAA,IAAA,CAAA,UAAA,CAAA,IAAA,CAAA;AACJ,QAAA,EAAA,EAAA,MAAA;cACH,CAAA,IAAA,EAAA,QAAA,CAAA,+BAAA,EAAA,QAAA,CAAA,MAAA,CAAA,MAAA;QACN;IACJ,CAAC,CAAA,OAAA,KAAA,EAAA;MAEO,IAAM,CAAA,MAAO,CAAC,KAAU,CAAA,oCAAA,EAAA,KAAA,CAAA;AAC5B,MAAA,OAAK,KAAA,YAAA,KAAA,GAAA,KAAA,GAAA,IAAA,KAAA,CAAA,0CAAA,CAAA;;AAEG,EAAA;6BACH,CAAA,IAAA,EAAA,QAAA,EAAA;eAED,CAAA,KAAM,CAAI,sCAA6B,EAAA;AACvC,MAAA,MAAA,EAAA,IAAI;AACA,MAAA,YAAA,EAAA,QAAY,CAAA;;AAEhB;;QACF,6BAAe,CAAA,MAAA,EAAA;;AAEb;aACH;QACJ,MAAA,EAAA;UAEa,YAAA,EAAA;AACV,YAAI,eAAC,EAAA;cACD,GAAA,EAAM,IAAA;AAEN,cAAA,KAAM,EAAA,IAAO;qBAEL,EAAM;;AAEF;AACA;;aAEP,KACH,EAAA;UACL,CAAA,MAAA,CAAA,KAAA,CAAA,yCAAA,EAAA,KAAA,CAAA;aAAC;cACE,EAAI;UACP,YAAA,EAAA;YACJ,eAAA,EAAA;AAEO,cAAM,GAAA,EAAA,KAAA;AACV,cAAK,KAAA,EAAA,KAAA;AACD,cAAA,OAAM,EAAK;;AAGX;;AAIA,OAAA;;;eAIA,CAAA,EAAM,EAAA;;AAGF,MAAA,IAAA,CAAA,EAAA,EAAA;eACH,IAAA;;AAEG,MAAA,MAAA,IAAA,GAAA,MAAA,IAAA,CAAA,cAA0B,CAAA,eAAkB,CAAA,EAAE,CAAA;cACjD,YAAA,KAAA,EAAA;eACD,IAAI;AACA,MAAA;aACH,IAAA;AAED,IAAA,CAAA,CAAA,OAAA,KAAM;UACT,CAAA,MAAA,CAAA,KAAA,CAAA,wBAAA,EAAA,KAAA,CAAA;aAAC,IAAO;;AAEL,EAAA;QACJ,oBAAC,CAAA,KAAA,EAAA;IACL,IAAC;MAEO,MAAM,YAAA,GAAA,KAAA,CAAA,MAAoC,CAAA,IAAA,IAAA,CAAA,MAAA,CAAA,IAAA,CAAA,IAAA,CAAA,KAAA,CAAA,CAAA,QAAA,CAAA,IAAA,CAAA,CAAA;AAC9C,MAAA,MAAI,OAAC,CAAA,GAAA,CAAA,YAAA,CAAA,GAAA,CAAA,MAAA,IAAA,IAAA;cACD,cAAoB,MAAO,IAAK,CAAA,OAAA,CAAA,IAAA,CAAA;YAEhC,WAAW,EAAE;AACT,UAAA,IAAA,CAAA,KAAA,CAAA,QAAY,WAAA;cACf,CAAA,eAAA,CAAA,IAAA,CAAA,GAAA,MAAA,IAAA,CAAA,6BAAA,CAAA,IAAA,CAAA;;AAIO,MAAA,CAAA,CAAA,CAAA;AACA,IAAA,CAAA,CAAA,OAAA,KAAA,EAAI;iBAEV,CAAA,KAAA,CAAA,0BAAA,EAAA,KAAA,CAAA;AAEF,IAAA;;QACF,sBAAe,CAAA,CAAA,IAAA,EAAA,QAAA,CAAA,EAAA;;AAEb,MAAA,MAAA,IAAA,CAAA,oBAAY,CAAA,CAAA,IAAA,EAAA,GAAA,QAAA,CAAA,GAAA,CAAA,CAAA;QAChB;OACH,KAAA,IAAA,CAAA,QAAA,CAAA,QAAA,EAAA,CAAA,CAAA,CAAA;MAEO,MAAM,SAAA,GAAA,IAAA,CAAA,eAAgC,CAAA,IAAA,CAAA;AAC1C,MAAA,MAAI;aACA;;AAGI,QAAA;mBACH,EAAA,MAAA,EAAA,YAAA,EAAA,eAAA,IAAA,EAAA;YAED,gBAAgB,GAAA,QAAM,CAAA,MAClB,CAAC,CAAA;AACG,QAAA;AACA,OAAA,KAAA,IAAA,KAAI,IAAE,CAAA,QAAW,CAAA,QAAS,EAAE,CAAA;0BAElC,CAAA,MAAA,KAAA,CAAA,EAAA;AAEF,QAAA;;YACF,oBAAe,GAAA,EAAA;eACb,EAAK;AACL,QAAA,oBAAY,CAAA,IAAA,CAAA,IAAA,CAAA,QAAA,CAAA,IAAA,EAAA,gBAAA,CAAA,CAAA;;MAEnB,IAAA,GAAA,EAAA;QAEO,oBAAA,CAAyB,IAAC,CAAA,IAAe,CAAA,QAAE,CAAA,IAAkB,EAAA,gBAAA,CAAA,CAAA;AACjE,MAAA;AACI,MAAA,IAAA,OAAA,EAAO;4BAEa,CAAA,IACR,CAAA,IAAA,CAAM,qBAAc,CAAA,IAAA,EAAA,gBAAA,CAAA,CAAA;AAChB,MAAA;AACA,MAAA,MAAA,OAAE,CAAA,GAAK,CAAA,oBAA0B;AAE5C,IAAA,CAAA,CAAA,OAAA,KAAA,EAAA;AACA,MAAA,IAAA,CAAA,MAAA,CAAA,KAAM,CAAC,wCAAsB,EAAA,KAAA,CAAA;AAC7B,MAAA,OAAA,KAAA,YAAkB,KAAE,GAAU,QAAc,IAAG,KAAM,yDAA0B,CAAA;;;iCAElE,CAAA,EAAA,EAAA;AAClB,IAAA,IAAA;YACH,MAAA,GAAA,MAAA,IAAA,CAAA,oBAAA,CAAA,KAAA,CAAA,OAAA,CAAA;QACJ,GAAA,EAAA;AAEO,OAAA,CAAA,CAAA,IAAA,EAAA;AACJ,MAAA,IAAA,CAAA,MAAK,EAAA;eACD,IAAO;AACH,MAAA;wBACO,GAAA,MAAA,OAAA,CAAA,GAAA,CAAA,CAAA,MAAA,CAAA,YAAA,IAAA,EAAA,EAAA,GAAA,CAAA,MAAA,CAAA,KAAA;QACf,GAAC,CAAA;QAAC,IAAA,EAAA,MAAY,IAAG,CAAA,OAAA,CAAA,CAAA,EAAA,IAAA,EAAA,QAAA,EAAA;;AAEb,MAAA,OAAA;QACJ,GAAC,MAAA;QACJ;AAEO,OAAA;AACJ,IAAA,CAAA,CAAA,OAAK,KAAA,EAAA;AACD,MAAA,IAAA,CAAA,MAAA,CAAA,KACI,CAAA,4CAAkD,EAAA,KAAU,CAAA;AAC5D,MAAA,OAAA,IAAA;;;6BAGa,CAAC,EAAA,EAAA;AAClB,IAAA,IAAA;YACH,OAAA,GAAA,MAAA,IAAA,CAAA,iBAAA,CAAA,KAAA,CAAA,OAAA,CAAA;QACJ,GAAA,EAAA;OAEO,CAAA,CAAA,IAAA,EAAA;AAOJ,MAAA,IAAA,CAAA,OAAK,EAAA;eACD,IAAA;;YAEA,OAAM,GAAA,MAAA,OAAgB,CAAA,GAAG,CAAA,CAAA,OAAA,CAAA,OAAA,IAAuB,EAAE,EAAA,GAC9C,CAAC,MAAa,CAAE;YAGpB;AACI,QAAA,IAAA,EAAA,MAAE,IAAM,CAAA,OAAO,CAAA,CAAA,EAAA,IAAA,EAAW,QAAA,EAAA;;AAG9B,MAAA,OAAA;AACI,QAAA,GAAA,OAAE;;AAKN,OAAA;aAGA,KAAM,EAAA;iBAEG,CAAC,KAAG,CAAA,wCAAqC,EAAA,KAAA,CAAA;AAC1C,MAAA,OAAA,IAAC;;AAGL,EAAA;AACA,EAAA,yBAAW,CAAA,QAAE,EAAA,UAAe,EAAA;;qBAE5B,CAAA,GAAQ,CAAE,MAAA,IAAA,MAAe,EAAA,IAAA,EAAQ,MAAI,EAAA,MAAM,CAAA,CAAA,IAAS,CAAA,EAAK,IAAI,KAAE,yBAAS,CAAA,EAAA,GAAA,CAAA,EAAA,IAAA,EAAA,EAAA,KAAA,CAAA,IAAA,EAAA,CAAA,CAAA,IAAA,EAAA,CAAA,MAAA,CAAA,KAAA,IAAA,KAAA,CAAA,CAAA,MAAA,CAAA,CAAA,KAAA,EAAA,KAAA,EAAA,KAAA,KAAA,KAAA,CAAA,OAAA,CAAA,KAAA,CAAA,KAAA,KAAA,CAAA;aAC3E,KAAC,EAAA;UACL,CAAA,MAAA,CAAA,KAAA,CAAA,CAAA,0CAAA,EAAA,UAAA,CAAA,IAAA,CAAA,EAAA,KAAA,CAAA;aAAC,EAAO;;;AAGD,EAAA,wBAAA,CAAA,SAAc,EAAA;AACd,IAAA,IAAA;AACA,MAAA,OAAA,SAAA,WAAW,SAAA,KAAA,QAAwB,IAAA,SAAA,CAAA,WAAA,KAAA,MAAA,GAAA;AACnC,QAAA,GAAA;cACF;aACL,KAAA,EAAA;MACJ,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,yCAAA,EAAA,KAAA,CAAA;MAEO;AAUJ,IAAA;AACI,EAAA;kBACI,CAAA,OAAQ,EAAI;;oBAEZ,EAAA,OAAa,EAAE,MAAA,CAAA,CAAA,IAAU,CAAA,EAAA,KAAA,KAAA,OAAA,CAAA,EAAA,GAAA,CAAA,CAAA,IAAA,CAAA,EAAA,IAAA,EAAA,QAAA,EAAA,CAAA,GAAA,CAAA,CAAA,IAAA,IAAA;AAC5B,IAAA,CAAA,CAAA,OAAA,KAAE,EAAA;AAEH,MAAA,IAAA,CAAA,MAAA,CAAM,KAAE,CAAA,iCAAkC,EAAA,KAAA,CAAA;AAE1C,MAAA,OAAA,IAAA;AAEQ,IAAA;AACA,EAAA;AACA,EAAA,0BAAY,CAAA,IAAA,EAAA,IAAU,EAAA,KAAI,EAAA,cAAe,EAAA,aAAA,EAAA;;;mCAGlC,GAAA,IAAA,EAAA,KAAA,EAAA,UAAA,GAAA,MAAA,CAAA,IAAA,CAAA,IAAA,EAAA,KAAA,EAAA,UAAA,CAAA,GAAA,IAAA;sDACiB,EAAA,IAAA,CAAA,GAAA,IAAA,GAAA,EAAA,WAAA,EAAA,KAAA,IAAA,EAAA,KAAA,EAAA,GAAA,EAAA,WAAA,EAAA,CAAA;sBACpB,gBAAI,GAAA,IAAA,EAAA,KAAA,EAAA,UAAA,CAAA,gBAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,GAAA,eAAA;sBACJ,IAAI,EAAA,KAAA,EAAA,GAAA,GAAA,CAAA,EAAA,IAAA,CAAA,KAAA,CAAA,GAAA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA,WAAA,EAAA,GAAA,IAAA,CAAA,KAAA,CAAA,GAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,OAAA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA,WAAA,EAAA,GAAA,OAAA,CAAA,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,GAAA,qCAAA;oBACJ,GAAA,IAAI,CAAA,SAAA,IAAA,IAAA,CAAA,UAAA,GAAA,CAAA,EAAA,IAAA,CAAA,SAAA,CAAA,CAAA,EAAA,IAAA,CAAA,UAAA,CAAA,CAAA,GAAA,IAAA,CAAA,QAAA,IAAA,MAAA;qBACJ,GAAA,KAAO,EAAA,SAAA,IAAA,KAAA,EAAA,UAAA,GAAA,CAAA,EAAA,KAAA,CAAA,SAAA,CAAA,CAAA,EAAA,KAAA,CAAA,UAAA,CAAA,CAAA,GAAA,KAAA,EAAA,QAAA,IAAA,OAAA;AACV,MAAA,OAAA;oBAGP,EAAA,cAAA,EAAA,OAAA,IAAA,OAAA;QACN,WAAC,EAAA,aAAA,EAAA,OAAA,IAAA,OAAA;QAAC,SAAO,EAAA,cAAQ,EAAA,QAAA,IAAA,CAAA,GAAA,EAAA,QAAA,CAAA,EAAA,EAAA,IAAA,EAAA,OAAA,CAAA,CAAA;gBACT,eAAc,EAAA,QAAA,IAAA,CAAA,GAAA,EAAA,SAAA,CAAA,EAAiC,EAAE,IAAA,EAAM,OAAC,CAAA;AAC5D,OAAA;aACH,KAAA,EAAA;MACJ,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,0CAAA,EAAA,KAAA,CAAA;AAEO,MAAA,OAAM;AACV,QAAA,YAAK,EAAA,cAAA;AACD,QAAA,WAAK,EAAA;iBACD,EAAA,wBAAe;gBACf,EAAA;AACH,OAAA;AAED,IAAA;AACA,EAAA;sBAEK,CAAM,IAAG,EAAA,IAAA,EAAA,OAAA,EAAA,OAAA,EAAA,IAAA,EAAA,UAAA,GAAA,IAAA,EAAA,SAAA,GAAA,IAAA,EAAA,aAAA,GAAA,IAAA,EAAA;AACV,IAAA,IAAA;iBACA,CAAA,KAAO,CAAA,oCAAA,EAAA;cACV,EAAA,IAAA,CAAA,EAAA;cAED,EAAA,IAAQ;mBACF,EAAA,CAAA,CAAA;;AAGF,MAAA,MAAA;yBACH;AAED,QAAA;AACA,OAAA,GAAA,IAAA;AAEA,MAAA,MAAA,IAAA,CAAA,aAAW,CAAA;AACP,QAAA,KAAA,EAAA,OAAI;AACJ,QAAA,EAAA,EAAA,aAAM,IAAI,iBAAA,IAAA,KAAA;AACb,QAAA,UAAE,EAAA,UAAA,IAAA,cAAA,CAAA,4BAAA;QACP,SAAC,EAAA,MAAA,CAAA,SAAA;QAAC,IAAA,EAAA,MAAY,wBAAG;eACb;AACA,QAAA,SAAA,EAAO,SAAK,IAAA;UACf,IAAA;UACJ,IAAA;AAEO,UAAM,IAAA;AACV,UAAA;AACI;AACA,OAAA,EAAA,EAAA,CAAA;aAEA,KAAM,EAAA;AACF,MAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,iCAAA,EAAA,KAAA,CAAA;AACI,MAAA,OAAA,KAAA,YAAQ,KAAA,GAAA,KAAA,GAAA,IAAA,KAAA,CAAA,2CAAA,CAAA;;;AAGP,EAAA,MAAA,aAAA,CAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA;AACJ,IAAA,IAAA;AACJ,MAAA,IAAA,CAAA,MAAE,CAAA,KAAA,CAAA,mCAAA,EAAA;cAEH,EAAA,IACI,CAAA,EAAA;AACI,QAAA,MAAA,EAAA,IAAI,CAAA;AACJ,OAAA,CAAA;AACH,MAAA,MAAA;QAET;UAAE,IAAA;YACE,CAAA,UAAW,WAAO,IAAA,EAAA;AAClB,MAAA,IAAA,CAAA,MAAA,EAAO;QACX,IAAC,CAAA,MAAA,CAAA,KAAA,CAAA,4CAAA,EAAA;UACJ,MAAA,EAAA,IAAA,CAAA;SAEY,CAAC;AACV,QAAA;AACI,MAAA;AACA,MAAA,MAAA;mBAEK;AACD,QAAA,WAAA,EAAA;gBACH;YAED,OAAM,GAAA,MAAS,IAAK,gBAAgB,GAAC,CAAA,WAAS,CAAA;kBACxC,EAAA;cAEN,IAAK,KAAM,CAAA,yCAA0C,CAAC;AAClD,MAAA;;;iBAIJ;YACA,qBAAiB,GAAM,UAAK,GAAQ,MAAA;YACpC,IAAA,CAAA,UAAa,CAAA,IAAM,CAAA;AAEnB,QAAA,EAAA,EAAA,qBAAkB;AACd,QAAA,IAAA,EAAA;;aAGJ,KAAM,EAAA;iBAEG,CAAC,KAAG,CAAA,gCAA+B,EAAA,KAAU,CAAE;AAChD,MAAA,OAAA,KAAE,YAAS,KAAQ,GAAA,QAAW,IAAA,KAAA,CAAA,0CAAA,CAAA;AAEtC,IAAA;;6BAIiB,CAAA,IAAA,EAAA,KAAA,EAAA;AAEjB,IAAA,IAAA;YAUH,KAAA,GAAA,IAAA,IAAA,EAAA;YAAC,OAAO,GAAO,GAAC,CAAA,KAAA,EAAA;aACb,GAAI;;AAEA,MAAA,MAAA,aAAO,GAAA,MAAA,IAAA,CAAA,cAAA,CAAA,KAAA,CAAA,SAAA,CAAA,CAAA;AACP,QAAA,MAAA,EAAA;UACP,IAAA,EAAAA,YAAA,CAAA,KAAA;UACJ,SAAA,EAAA;AAEO,YAAM,IAAA,EAAA,OAAA;AACV,YAAI,IAAC,EAAA;AACD;AACA;;AAGI,MAAA,OAAA,aAAA,EAAA,GAAA,CAAA,CAAA,KAAA;AACI,QAAA,GAAA,CAAA;6BACQ,EAAE,QAAS;AAClB,OAAA,CAAA,CAAA,IAAA,EAAA;AACJ,IAAA,CAAA,CAAA,OAAA,KAAA,EAAA;AACD,MAAA,IAAA,CAAA,MAAA,CAAA,KAAA,CAAA,yCAAA,EAAA,KAAA,CAAA;AACI,MAAA,OAAA,EAAA;AACI,IAAA;AACI,EAAA;AACH,EAAA,MAAA,6BAAA,CAAA,IAAA,EAAA;AACJ,IAAA,IAAA;AACJ,MAAA,MAAA,WAAA,GAAA;AACJ,QAAA,GAAA;AAED,OAAA;YAEA,OAAM,GAAA,MAAA,IAAc,CAAA,iCAAyC,EAAA,OAAW,EAAA,QAAA,EAAA,CAAA;kBACpE,EAAA;AACA,QAAA,OAAA,IAAA,KAAO,CAAE,4CAAmB,CAAA;AAC/B,MAAA;YAED,MAAA,GAAO,IAAA,CAAA,gBAAkB,CAAA,OAAA,CAAA;YAC5B,MAAA,GAAA,MAAA,IAAA,WAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,IAAA;UAAC,CAAA,MAAO,KAAO,IAAC,CAAA,uBAAA,EAAA,KAAA,EAAA;YACb,CAAA,YAAY,CAAA,uDAAkD,CAAA;AAC9D,QAAA;;MAEP,MAAA,UAAA,GAAA,WAAA,EAAA,QAAA,EAAA,QAAA,EAAA;MAEO,MAAM,QAAA,GAAA,MAAgB,IAAA,CAAA,OAAuB,CAAA,UAAA,CAAA;AACjD,MAAA,MAAI,IAAC,GAAA,MAAA,IAAA,CAAA,OAAA,CAAA,MAAA,CAAA;AACD,MAAA,IAAA,CAAA,YAAU,CAAA,IAAG,EAAA;AACR,QAAA,OAAA,IAAA,KAAO,CAAC,mDAAA,CAAA;;4BAEP,GAAA,QAAA,CAAA,SAAA,IAAA,QAAA,CAAA,UAAA,GAAA,CAAA,EAAA,QAAA,CAAA,SAAA,CAAA,CAAA,EAAA,QAAA,CAAA,UAAA,CAAA,CAAA,GAAA,QAAA,CAAA,QAAA,IAAA,MAAA;AACD,MAAA,MAAA,QAAA,GAAM,IAAA,CAAA,SAAA,IAAA,IAAA,CAAA,UAAA,GAAA,CAAA,EAAA,IAAA,CAAA,SAAA,CAAA,CAAA,EAAA,IAAA,CAAA,UAAA,CAAA,CAAA,GAAA,IAAA,CAAA,QAAA,IAAA,MAAA;mBACN,GAAK,kDAAmB;YAE7B,QAAO,GAAI,CAAA,4DAAS,EAAA,gBAAA,CAAA,MAAA,EAAA,WAAA,EAAA,OAAA,CAAA,CAAA,CAAA;YACvB,IAAA,CAAA,cAAA,CAAA,IAAA,EAAA,WAAA,EAAA,OAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,CAAA,uBAAA,EAAA,UAAA,IAAA,IAAA,EAAA,IAAA,CAAA,uBAAA,EAAA,SAAA,IAAA,IAAA,EAAA,IAAA,CAAA,uBAAA,EAAA,KAAA,CAAA;aAAC,KAAO,EAAK;iBACL,MAAM,CAAC,wCAAuC,EAAE,KAAM,CAAC;AAC5D,MAAA,OAAA,KAAA,YAAY,KAAA,GAAA,KAAA,GAAA,IAAA,KAAA,CAAA,2DAAA,CAAA;;;AAIpB,EAAA,MAAA,iBAAA,CAAA,IAAA,EAAA,KAAA,EAAA;;;AAGG,MAAA,MAAA,OAAA,GAAA,GAAA,CAAA,KAAA,EAAA;AAEG,SAAD,IAAC,GAAA;AAeF,OAAA,CAAA;AACI,MAAA,MAAA,QAAK,GAAM,MAAM,wCAAwC;AACrD,QAAA,MAAA,EAAA;AACA,UAAA,IAAA,EAAA,QAAA,CAAS;AACT;AACH,OAAA,EAAA;AAED,QAAA,QAAI,EAAC;AACD,UAAA,GAAA,EAAA;qBACA,EAAO;;;;AAMX,MAAA,MAAA,UAAI,GAAA,QAAA,EAAkB,GAAA,CAAA,CAAA,IAAA,CAAA,EAAY,GAAA,EAAK,QAAG,EAAA,CAAA,EAAA,MAAA,CAAA,EAAA,IAAA,EAAA,CAAA,IAAA,EAAA;gCAC1B,IAAM,CAAA,oBAAA,CAAA,KAAA,CAAA,IAAA,CAAA;AAClB,QAAA,WAAA,EAAA;cACH,EAAA,OAAA;cAED,EAAA;AACA,SAAA;AACI,QAAA,OAAA,EAAA;AAEA,UAAA,GAAA,EAAA;;;aAGH,WAAA,IAAA,EAAA;AAED,IAAA,CAAA,CAAA,OAAA,KAAK,EAAA;AACD,MAAA,IAAA,CAAA,MAAA,CAAA,KAAM,CAAE,mCAAa,EAAA,KAAA,CAAA;AACrB,MAAA,OAAA,EAAA;AACA,IAAA;AACH,EAAA;uBAED,CAAA,UAAA,EAAA;AACA,IAAA,IAAA;AACI,MAAA,MAAA,IAAA,GAAA,MAAQ,IAAK,CAAC,cAAO,CAAA,KAAA,CAAA,OAAA,CAAA;AACrB,QAAA,GAAA,EAAA,CAAA;kBACA,EAAA,UAAW,EAAI,IAAI,EAAE,QAAA;AACxB,SAAA,EAAA;UACJ,GAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA;SAAC;aACE,EAAA,CAAI;iBAEJ,EAAA,CAAA;AACA,OAAA,CAAA;AACI,MAAA,OAAA,IAAA,IAAA,IAAQ;AACR,IAAA,CAAA,CAAA,OAAA,KAAA,EAAA;iBACA,CAAA,KAAO,CAAA,iCAAa,EAAA,KAAA,CAAA;iBACpB;AACH,IAAA;AAED,EAAA;;;AAIR;;;AAGG,IAAA,IAAA;AAEG,UAAA,CAAA,MAAA,CAAA,KAAA,CAAA,uCAaD,EAAA;AAED,QAAA,MAAK,EAAA,KAAA,EAAA,IAAA,EAAA,EAAA;AACD,QAAA,SAAK,EAAA,KAAO,EAAA,IAAM;AACd,QAAA,mBAAQ,EAAK,CAAA,CAAE,OAAM;;AAExB,MAAA,IAAA,CAAA,KAAE,EAAA,IAAA,EAAA;AAEH,QAAA,IAAA,CAAA,MAAK,CAAA,IAAO,CAAA,0CAAO,CAAA;AACf,QAAA;;;YAIJ,kBAAe,GAAM,MAAK,IAAA,CAAA,sBAA4B,CAAC,KAAK,CAAC,IAAA,CAAA;AAE7D,MAAA,IAAA,kBAAU,YAAiB,KAAG,EAAA;mBAC1B,CAAI,4CAAc,EAAA,kBAAiD,CAAA;AACnE,QAAA,MAAA,kBAAa;;AAGjB;AACI,MAAA,IAAA,KAAA,CAAA,gBAAc,EAAI;wBACV,GAAE,MAAM,IAAA,CAAA,0BAAQ,CAAA,KAAA,CAAA,IAAA,EAAA,KAAA,CAAA,gBAAA,CAAA;AAC3B,QAAA,IAAA,UAAE,YAAA,KAAA,EAAA;cAEH,CAAA,MAAA,CAAA,KAAA,CAAA,sCAAgC,EAAA,UAAA,CAAA;AAChC,QAAA;AACI,MAAA;iBACA,CAAA,KAAA,CAAQ,0CAAgB,EAAA;gBACxB,KAAA,CAAA,IAAS,CAAE,EAAA;AACd,QAAA,gBAAE,EAAA,kBAAA;QACP,oBAAC,EAAA,CAAA,CAAA,KAAA,CAAA;QAAC;;AAGE,MAAA,MAAA,GAAA,CAAA,IAAM,CAAG;AACL,QAAA,MAAA,EAAA,KAAA,CAAM,IAAE,CAAA,EAAK;iBACb,EAAA,KAAQ,CAAA,IAAE,CAAA,OAAO;iBACjB,EAAA,IAAO,IAAA;;AAEV,IAAA,CAAA,CAAA,OAAA,KAAE,EAAA;AAEH,MAAA,IAAA,CAAA,MAAA,CAAM,KAAK,CAAC,wCAAA,EAAA,KAAA,CAAA;;MAEnB,MAAA,GAAA,CAAA,IAAA,CAAA,0BAAA,EAAA;AAED,QAAA,MAAA,EAAA,KAAA,EAAA,IAAA,EAAA,EAAA;;;AAGG,QAAA,SAAA,EAAA,IAAA,IAAA;AAEG;AAaF,MAAA,MAAI,KAAC;AACD,IAAA;AAEA,EAAA;AACI;;;;AAMJ,EAAA,MAAA,qBAAiB,CAAC,GAAA,EAAA,KAAA,EAAA;;AAGlB,MAAA,IAAA,CAAA,MAAA,CAAM,KAAI,CAAA,uCAAuC,EAAA;AAC7C,QAAA,MAAA,EAAA,KAAA,EAAA,IAAW;AACX,QAAA,QAAA,EAAA,KAAA,EAAA;;AAEH,MAAA,IAAA,CAAA,KAAE,EAAA,IAAA,EAAA;QACP,IAAC,CAAA,MAAA,CAAA,IAAA,CAAA,kCAAA,CAAA;QAAC;;AAGE,MAAA,MAAA,MAAM,GAAG,MAAM,iCAAiC,CAAA,IAAA,CAAA;gBAC5C,YAAY,KAAC,EAAA;mBACb,CAAA,KAAS,CAAA,uCAAY,EAAA,MAAA,CAAA;AACxB,QAAA,MAAC,MAAC;AAEH,MAAA;UACH,CAAA,MAAA,CAAA,KAAA,CAAA,sCAAA,EAAA;QACJ,MAAA,EAAA,KAAA,CAAA,IAAA,CAAA,EAAA;AAED,QAAA,QAAA,EAAA,KAAA,CAAA;;;AAGG,MAAA,MAAA,GAAA,CAAA,IAAA,CAAA,yBAAA,EAAA;AAEG,cAAA,EAAA,KAAA,CAAA,IAAA,CAAA,EAAA;AAuBF,QAAA,QAAK,EAAA,KAAA,CAAA,QAAA;AACD,QAAA,SAAK,EAAA,IAAM,IAAC;AACR,OAAA,CAAA;kBACA,EAAA;AACH,MAAA,IAAA,CAAA,MAAE,CAAA,KAAA,CAAA,yCAAA,EAAA,KAAA,CAAA;AAEH,MAAA,MAAA,GAAA,CAAI,IAAC,CAAA,2BAA8B,EAAA;AAC/B,QAAA,MAAA,EAAA,KAAK,EAAA,IAAM;gBACX,EAAA,KAAO,EAAA,QAAA;aACV,EAAA,KAAA,CAAA,OAAA;AAED,QAAA,SAAA,UAAa;AAEL,OAAA,CAAA;AACI,MAAA,MAAA,KAAA;AACA,IAAA;;AAEA;;AAEA;;qCAEH,CAAA,GAAA,EAAA,KAAA,EAAA;;AAIT,MAAA,IAAA,CAAA,MAAA,CAAM,KAAA,CAAA,0CACgB,CAAC;AAGvB,MAAA,IAAA,CAAA,KAAI,EAAC,MAAO,EAAA;AACR,QAAA,IAAA,CAAA,MAAA,CAAA,IAAA,CAAA,+CAA8C,CAAA;AAC9C,QAAA;;AAEH,MAAA,MAAA,IAAE,CAAA,uBAAA,CAAA,KAAA,CAAA,MAAA,CAAA;iBAEH,CAAA,KAAA,CAAA,6CAAwB,CAAA;AACxB;AACI,MAAA,MAAA,GAAA,CAAA,IAAA,CAAA,gCAA0B,EAAa;AACvC,QAAA,QAAA,EAAA,CAAA,CAAA,KAAA,CAAA,OAAiB,KAAA;qBACjB,EAAA,CAAQ,CAAA,KAAE,CAAK,MAAC,CAAA,UAAQ;iBACxB,EAAA,IAAA,IAAW;AACd,OAAA,CAAA;aACJ,KAAA,EAAA;UAAC,CAAA,MAAO,CAAA,KAAQ,CAAA,2CAAA,EAAA,KAAA,CAAA;YACb,GAAA,CAAI,oCAAc,EAAA;AAClB,QAAA,KAAA,EAAA,aAAY;QAChB,SAAC,EAAA,IAAA,IAAA;OACJ,CAAA;MACJ,MAAA,KAAA;AAjQS,IAAA;AADL,EAAA;;;;AAsEA;AAOK,EAAA,MAAA,sBAAA,CAAA,GAAA,EAAA,KAAA,EAAA;AADL,IAAA,IAAA;;+CAEe,EAAA,MAAA;;AAuDf,OAAA,CAAA;AAOK,MAAA,IAAA,CAAA,KAAA,EAAA,aAAA,IAAA,KAAA,CAAA,aAAA,CAAA,MAAA,KAAA,CAAA,EAAA;AADL,QAAA,IAAA,CAAS,MAAC,CAAA,IAAA,CAAA,yCAA8C,CAAA;;;;AA0CxD,QAAA,QAAA,YAAA,CAAA,IAAA;AAOK,UAAA,KAAA,MAAA;AADL,UAAA,KAAU,OAAA;;;;AAsEV,UAAA;AAxzCQ,YAAA,MAAA,IAAA,KAAA,CAA4B,CAAA,2BAAA,EAAA,YAAA,CAAA,IAAA,CAAA,CAAA,CAAA;AADxC;AAUQ,MAAA,CAAA,CAAA,CAAA;AAEA,MAAA,MAAA,YAAO,GAAA,OAAY,CAAC,MAAA,CAAA,MAAA,IAAe,MAAA,CAAA,MAAA,KAAA,WAAA,IAAA,MAAA,CAAA,KAAA,KAAA,KAAA,IAAA,MAAA,CAAA,KAAA,KAAA,IAAA,CAAA,CAAA,MAAA;AAEnC,MAAA,IAAA,CAAA,YAAO,CAAA,6BAAa,EAAoB;AAExC,QAAA,kBAAO,EAAA,KAAA,CAAY,aAAC,CAAA,MAAe;AAEnC,QAAA,eAAO,EAAA,YAAa;AAEpB,QAAA,eAAO,CAAA;AAEP,OAAA,CAAA;AAEA;;AAvBI,QAAA,kBAAA,EAAA,KAyzCZ,CAAA,aAAA,CAAA,MAAA;;;;;;;;;;;;;;;"}
@@ -1,31 +1,258 @@
1
1
  import { CdmLogger } from '@cdm-logger/core';
2
- import { IFileInfo, IMessageIdentifier, IPost, IPostThread, IUploadedFileInput, IMessengerNotificationService, IPostService, IPostServiceInput } from 'common';
3
- import { IFileInfoService } from '@container-stack/file-info-core';
4
- import { BaseService } from '@common-stack/store-mongo';
2
+ import { IFileInfo, IMessageIdentifier, IPost, IPostModel, IPostThread, IUploadedFileInput, IMessengerNotificationService, IPostService, IPostServiceInput, CreatePostThreadOptions, IFileInfoService, AsDomainType, CreateType, IRedisCacheManager } from 'common/server';
3
+ import { BaseService2 } from '@common-stack/store-mongo';
5
4
  import { PubSubEngine } from 'graphql-subscriptions';
6
- import { ServiceBroker } from 'moleculer';
7
- import { CreatePostThreadOptions } from '@messenger-box/core/lib/server';
5
+ import { ServiceBroker, Context } from 'moleculer';
6
+ import { Disposable, DisposableCollection } from '@adminide-stack/core';
7
+ import type { IUserContext } from 'common/server';
8
8
  import { ChannelRepository, PostRepository } from '../store';
9
- export declare class PostService extends BaseService<IPost, IPostServiceInput, Partial<IPost>> implements IPostService {
9
+ interface IMeta {
10
+ userContext?: IUserContext;
11
+ }
12
+ /**
13
+ * Post Service Implementation
14
+ *
15
+ * This service handles comprehensive post management within the messenger platform,
16
+ * providing operations for creating, updating, managing posts and their associated
17
+ * content including file attachments, notifications, threading, and real-time
18
+ * message delivery across channels and organizations.
19
+ *
20
+ * Key capabilities:
21
+ * - Post lifecycle management (creation, updates, deletion)
22
+ * - File attachment handling and upload management
23
+ * - Real-time message delivery and notifications
24
+ * - Post threading and conversation management
25
+ * - Message status tracking (read, delivered)
26
+ * - Channel integration and message counting
27
+ * - Expo push notification integration
28
+ * - File upload link generation and management
29
+ */
30
+ export declare class PostService extends BaseService2<IPostModel, IPostServiceInput, Partial<IPostModel>> implements IPostService, Disposable {
10
31
  private readonly channelRepo;
11
32
  private readonly fileInfoService;
12
33
  private readonly messengerNotificationService;
13
34
  private readonly broker;
14
35
  protected pubsub: PubSubEngine;
36
+ private readonly redisCacheManager?;
37
+ protected readonly toDispose: DisposableCollection;
15
38
  private logger;
16
- constructor(repository: PostRepository, channelRepo: ChannelRepository, fileInfoService: IFileInfoService, messengerNotificationService: IMessengerNotificationService, broker: ServiceBroker, pubsub: PubSubEngine, logger: CdmLogger.ILogger);
17
- createFileUploadLink(postId: string, filename: string, userId: string): Promise<string>;
18
- attachUploadedFile(postId: string, file: IUploadedFileInput, createdBy: string): Promise<IFileInfo>;
19
- createFilesUploadLink(postId: string, filenames: string[], userId: string): Promise<string[]>;
20
- attachUploadedFiles(postId: string, files: IUploadedFileInput[], createdBy: string): Promise<IFileInfo[]>;
21
- create(data: IPostServiceInput): Promise<IPost>;
22
- createWithoutSubscription(data: IPostServiceInput): Promise<IPost>;
23
- deleteFile(url: string): Promise<boolean>;
24
- readMessage(messageId: IMessageIdentifier, user: string): Promise<boolean>;
25
- deliverMessage(messageId: IMessageIdentifier, user: string): Promise<boolean>;
26
- private sendExpoNotification;
39
+ private static readonly CACHE_TTL;
40
+ constructor(repository: PostRepository, channelRepo: ChannelRepository, fileInfoService: IFileInfoService, messengerNotificationService: IMessengerNotificationService, broker: ServiceBroker, pubsub: PubSubEngine, redisCacheManager?: IRedisCacheManager, logger?: CdmLogger.ILogger);
41
+ /**
42
+ * Disposes of resources used by the service
43
+ */
44
+ dispose(): void;
45
+ create<T extends CreateType<IPostModel>>(data: T): Promise<AsDomainType<IPostModel>>;
46
+ update(id: string, data: Partial<IPostModel>): Promise<AsDomainType<IPostModel>>;
47
+ delete(criteria: string | {
48
+ id: string;
49
+ }): Promise<boolean>;
50
+ /**
51
+ * Creates a file upload link for a post
52
+ *
53
+ * @description Generates a secure upload URL for attaching files to posts
54
+ *
55
+ * @param {string} postId - The post identifier
56
+ * @param {string} filename - The name of the file to upload
57
+ * @param {string} userId - The user performing the upload
58
+ * @returns {Promise<string | Error>} - Upload URL or error
59
+ */
60
+ createFileUploadLink(postId: string, filename: string, userId: string): Promise<string | Error>;
61
+ /**
62
+ * Attaches an uploaded file to a post
63
+ *
64
+ * @description Processes and attaches a completed file upload to a post
65
+ *
66
+ * @param {string} postId - The post identifier
67
+ * @param {IUploadedFileInput} file - The uploaded file information
68
+ * @param {string} createdBy - The user who uploaded the file
69
+ * @returns {Promise<IFileInfo | Error>} - File information or error
70
+ */
71
+ attachUploadedFile(postId: string, file: IUploadedFileInput, createdBy: string): Promise<IFileInfo | Error>;
72
+ /**
73
+ * Creates upload links for multiple files
74
+ *
75
+ * @description Generates secure upload URLs for multiple files to be attached to a post
76
+ *
77
+ * @param {string} postId - The post identifier
78
+ * @param {string[]} filenames - Array of file names
79
+ * @param {string} userId - The user performing the uploads
80
+ * @returns {Promise<string[] | Error>} - Array of upload URLs or error
81
+ */
82
+ createFilesUploadLink(postId: string, filenames: string[], userId: string): Promise<string[] | Error>;
83
+ /**
84
+ * Attaches multiple uploaded files to a post
85
+ *
86
+ * @description Processes and attaches multiple completed file uploads to a post
87
+ *
88
+ * @param {string} postId - The post identifier
89
+ * @param {IUploadedFileInput[]} files - Array of uploaded file information
90
+ * @param {string} createdBy - The user who uploaded the files
91
+ * @returns {Promise<IFileInfo[] | Error>} - Array of file information or error
92
+ */
93
+ attachUploadedFiles(postId: string, files: IUploadedFileInput[], createdBy: string): Promise<IFileInfo[] | Error>;
94
+ /**
95
+ * Creates a new post with full integration
96
+ *
97
+ * @description Creates a post with channel updates, notifications, and real-time publishing
98
+ *
99
+ * @param {IPostServiceInput} data - Post creation data
100
+ * @returns {Promise<AsDomainType<IPostModel> | Error>} - Created post or error
101
+ */
102
+ createWithoutSubscription(data: IPostServiceInput): Promise<AsDomainType<IPostModel> | Error>;
103
+ /**
104
+ * Finalize a streamed post — creates or updates a Post with the accumulated
105
+ * text from a completed stream. This is the bridge between the ephemeral
106
+ * streaming pipeline and persistent post storage.
107
+ *
108
+ * Designed to be registered as an onStreamComplete handler on MessengerStreamService:
109
+ * streamService.onStreamComplete((event) => postService.finalizeStreamedPost(event))
110
+ *
111
+ * Behavior:
112
+ * - If event.postId is set: updates the existing post's content with the streamed text.
113
+ * - If event.postId is absent: creates a new post in the channel with the streamed text.
114
+ *
115
+ * @param event - The stream completion event containing final text and routing info
116
+ * @param authorId - The author (user/agent) who generated the streamed content
117
+ * @returns The created or updated post, or undefined on error
118
+ */
119
+ finalizeStreamedPost(event: {
120
+ runId: string;
121
+ channelId: string;
122
+ threadId?: string;
123
+ postId?: string;
124
+ text: string;
125
+ }, authorId?: string): Promise<AsDomainType<IPostModel> | undefined>;
126
+ /**
127
+ * Deletes a file by URL
128
+ *
129
+ * @description Removes a file from storage using its URL
130
+ *
131
+ * @param {string} url - The file URL to delete
132
+ * @returns {Promise<boolean | Error>} - Success status or error
133
+ */
134
+ deleteFile(url: string): Promise<boolean | Error>;
135
+ /**
136
+ * Marks a message as read by a user
137
+ *
138
+ * @description Updates message status to indicate it has been read by a specific user
139
+ *
140
+ * @param {IMessageIdentifier} messageId - Message identifier
141
+ * @param {string} user - User ID who read the message
142
+ * @returns {Promise<boolean | Error>} - Success status or error
143
+ */
144
+ readMessage(messageId: IMessageIdentifier, user: string): Promise<boolean | Error>;
145
+ /**
146
+ * Marks a message as delivered to a user
147
+ *
148
+ * @description Updates message status to indicate it has been delivered to a specific user
149
+ *
150
+ * @param {IMessageIdentifier} messageId - Message identifier
151
+ * @param {string} user - User ID who received the message
152
+ * @returns {Promise<boolean | Error>} - Success status or error
153
+ */
154
+ deliverMessage(messageId: IMessageIdentifier, user: string): Promise<boolean | Error>;
155
+ /**
156
+ * Creates a post with associated post thread
157
+ *
158
+ * @description Creates both a post and its associated thread for threaded conversations
159
+ *
160
+ * @param {CreatePostThreadOptions} data - Post and thread creation options
161
+ * @returns {Promise<{post: AsDomainType<IPostModel>; postThread: IPostThread} | Error>} - Created post and thread or error
162
+ */
27
163
  createPostWithPostThread(data: CreatePostThreadOptions): Promise<{
164
+ post: AsDomainType<IPostModel>;
165
+ postThread: IPostThread;
166
+ } | Error>;
167
+ /**
168
+ * Retrieves the last message in a channel
169
+ *
170
+ * @description Gets the most recent post/message from a specific channel
171
+ *
172
+ * @param {string} channelId - The channel identifier
173
+ * @returns {Promise<AsDomainType<IPostModel> | Error>} - Last message or error
174
+ */
175
+ getLastMessage(channelId: string): Promise<AsDomainType<IPostModel> | Error>;
176
+ /**
177
+ * Gets posts by channel with pagination
178
+ *
179
+ * @description Retrieves posts from a channel with pagination support
180
+ *
181
+ * @param {string} channelId - The channel identifier
182
+ * @param {number} limit - Maximum number of posts to return
183
+ * @param {number} offset - Number of posts to skip
184
+ * @returns {Promise<Array<AsDomainType<IPostModel>> | Error>} - Array of posts or error
185
+ */
186
+ getPostsByChannel(channelId: string, limit?: number, offset?: number): Promise<Array<AsDomainType<IPostModel>> | Error>;
187
+ /**
188
+ * Updates a post
189
+ *
190
+ * @description Updates post content and metadata
191
+ *
192
+ * @param {string} postId - The post identifier
193
+ * @param {Partial<IPostServiceInput>} updates - Update data
194
+ * @returns {Promise<AsDomainType<IPostModel> | Error>} - Updated post or error
195
+ */
196
+ updatePost(postId: string, updates: Partial<IPostServiceInput>): Promise<AsDomainType<IPostModel> | Error>;
197
+ /**
198
+ * Deletes a post
199
+ *
200
+ * @description Soft deletes a post and its associated data
201
+ *
202
+ * @param {string} postId - The post identifier
203
+ * @returns {Promise<boolean | Error>} - Success status or error
204
+ */
205
+ deletePost(postId: string): Promise<boolean | Error>;
206
+ /**
207
+ * Sends Expo push notification for a post
208
+ *
209
+ * @description Handles push notification logic for new posts
210
+ *
211
+ * @param {any} post - The post data
212
+ * @private
213
+ */
214
+ private sendExpoNotification;
215
+ /**
216
+ * Invalidates cache entries related to a channel's posts
217
+ * @param channelId - Channel ID
218
+ */
219
+ private invalidatePostCachesByChannel;
220
+ getPreviousMessagesByProjectId(projectId: string, limit?: number): Promise<Array<IPostModel> | Error>;
221
+ /**
222
+ * Event handler: post-thread.created
223
+ * Publishes real-time updates when a post thread is created
224
+ */
225
+ onCreatePostThread(ctx: Context<{
28
226
  post: IPost;
29
227
  postThread: IPostThread;
30
- }>;
228
+ }, IMeta>): Promise<void>;
229
+ /**
230
+ * Event handler: post-thread.updated
231
+ * Updates thread participants and publishes real-time updates
232
+ */
233
+ onUpdatePostThread(ctx: Context<{
234
+ post: IPost;
235
+ postThread: IPostThread;
236
+ accountId: any;
237
+ role: any;
238
+ orgId: any;
239
+ }, IMeta>): Promise<void>;
240
+ /**
241
+ * Event handler: post.created
242
+ * Triggers channel updates when a post is created
243
+ */
244
+ onPostCreated(ctx: Context<{
245
+ post: IPost;
246
+ userContext?: IUserContext;
247
+ }, IMeta>): Promise<void>;
248
+ /**
249
+ * Event handler: post.bulk.process
250
+ * Processes multiple posts in batch operations
251
+ */
252
+ onBulkPostProcess(ctx: Context<{
253
+ posts: IPost[];
254
+ operation: string;
255
+ userContext?: IUserContext;
256
+ }, IMeta>): Promise<void>;
31
257
  }
258
+ export {};