@mxf-dev/core 1.0.1 → 2.0.1

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/README.md +18 -0
  2. package/dist/adapters/FrameworkAdapter.js +1 -1
  3. package/dist/adapters/FrameworkAdapter.js.map +1 -1
  4. package/dist/config/ConfigManager.d.ts +9 -8
  5. package/dist/config/ConfigManager.d.ts.map +1 -1
  6. package/dist/config/ConfigManager.js +47 -17
  7. package/dist/config/ConfigManager.js.map +1 -1
  8. package/dist/config/memory-strata.config.d.ts +25 -0
  9. package/dist/config/memory-strata.config.d.ts.map +1 -0
  10. package/dist/config/memory-strata.config.js +107 -0
  11. package/dist/config/memory-strata.config.js.map +1 -0
  12. package/dist/constants/ToolNames.d.ts +1 -29
  13. package/dist/constants/ToolNames.d.ts.map +1 -1
  14. package/dist/constants/ToolNames.js +4 -17
  15. package/dist/constants/ToolNames.js.map +1 -1
  16. package/dist/database/DatabaseAdapterFactory.d.ts +14 -2
  17. package/dist/database/DatabaseAdapterFactory.d.ts.map +1 -1
  18. package/dist/database/DatabaseAdapterFactory.js +21 -6
  19. package/dist/database/DatabaseAdapterFactory.js.map +1 -1
  20. package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts +7 -1
  21. package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts.map +1 -1
  22. package/dist/database/adapters/mongodb/MongoBaseRepository.js +12 -2
  23. package/dist/database/adapters/mongodb/MongoBaseRepository.js.map +1 -1
  24. package/dist/events/ClientEventBus.d.ts +16 -77
  25. package/dist/events/ClientEventBus.d.ts.map +1 -1
  26. package/dist/events/ClientEventBus.js +38 -311
  27. package/dist/events/ClientEventBus.js.map +1 -1
  28. package/dist/events/EventBus.d.ts +1 -1
  29. package/dist/events/EventBus.d.ts.map +1 -1
  30. package/dist/events/EventBus.js +5 -4
  31. package/dist/events/EventBus.js.map +1 -1
  32. package/dist/events/EventBusBase.d.ts +139 -34
  33. package/dist/events/EventBusBase.d.ts.map +1 -1
  34. package/dist/events/EventBusBase.js +366 -88
  35. package/dist/events/EventBusBase.js.map +1 -1
  36. package/dist/events/EventNames.d.ts +10 -1
  37. package/dist/events/EventNames.d.ts.map +1 -1
  38. package/dist/events/EventNames.js +3 -0
  39. package/dist/events/EventNames.js.map +1 -1
  40. package/dist/events/PublicEvents.d.ts +6 -2
  41. package/dist/events/PublicEvents.d.ts.map +1 -1
  42. package/dist/events/PublicEvents.js +7 -4
  43. package/dist/events/PublicEvents.js.map +1 -1
  44. package/dist/events/ServerEventBus.d.ts +23 -112
  45. package/dist/events/ServerEventBus.d.ts.map +1 -1
  46. package/dist/events/ServerEventBus.js +58 -323
  47. package/dist/events/ServerEventBus.js.map +1 -1
  48. package/dist/events/event-definitions/LlmBudgetEvents.d.ts +68 -0
  49. package/dist/events/event-definitions/LlmBudgetEvents.d.ts.map +1 -0
  50. package/dist/events/event-definitions/LlmBudgetEvents.js +35 -0
  51. package/dist/events/event-definitions/LlmBudgetEvents.js.map +1 -0
  52. package/dist/interfaces/IMemoryPersistence.d.ts +41 -0
  53. package/dist/interfaces/IMemoryPersistence.d.ts.map +1 -0
  54. package/dist/interfaces/IMemoryPersistence.js +15 -0
  55. package/dist/interfaces/IMemoryPersistence.js.map +1 -0
  56. package/dist/middleware/MxpMiddleware.d.ts +8 -1
  57. package/dist/middleware/MxpMiddleware.d.ts.map +1 -1
  58. package/dist/middleware/MxpMiddleware.js +42 -20
  59. package/dist/middleware/MxpMiddleware.js.map +1 -1
  60. package/dist/models/channelKey.d.ts +1 -0
  61. package/dist/models/channelKey.d.ts.map +1 -1
  62. package/dist/models/channelKey.js +5 -0
  63. package/dist/models/channelKey.js.map +1 -1
  64. package/dist/models/memoryUtility.d.ts +39 -0
  65. package/dist/models/memoryUtility.d.ts.map +1 -0
  66. package/dist/models/memoryUtility.js +39 -0
  67. package/dist/models/memoryUtility.js.map +1 -0
  68. package/dist/models/user.d.ts.map +1 -1
  69. package/dist/models/user.js +23 -1
  70. package/dist/models/user.js.map +1 -1
  71. package/dist/mxp/BinaryProtocolLayer.d.ts +24 -8
  72. package/dist/mxp/BinaryProtocolLayer.d.ts.map +1 -1
  73. package/dist/mxp/BinaryProtocolLayer.js +90 -103
  74. package/dist/mxp/BinaryProtocolLayer.js.map +1 -1
  75. package/dist/mxp/ContextCompressionEngine.d.ts +57 -10
  76. package/dist/mxp/ContextCompressionEngine.d.ts.map +1 -1
  77. package/dist/mxp/ContextCompressionEngine.js +170 -128
  78. package/dist/mxp/ContextCompressionEngine.js.map +1 -1
  79. package/dist/mxp/MxpTokenOptimizer.d.ts +7 -3
  80. package/dist/mxp/MxpTokenOptimizer.d.ts.map +1 -1
  81. package/dist/mxp/MxpTokenOptimizer.js +8 -5
  82. package/dist/mxp/MxpTokenOptimizer.js.map +1 -1
  83. package/dist/prompts/MxfAgentSystemPrompt.d.ts +1 -1
  84. package/dist/prompts/MxfAgentSystemPrompt.d.ts.map +1 -1
  85. package/dist/prompts/MxfAgentSystemPrompt.js +47 -57
  86. package/dist/prompts/MxfAgentSystemPrompt.js.map +1 -1
  87. package/dist/protocols/mcp/ToolError.d.ts +123 -0
  88. package/dist/protocols/mcp/ToolError.d.ts.map +1 -0
  89. package/dist/protocols/mcp/ToolError.js +108 -0
  90. package/dist/protocols/mcp/ToolError.js.map +1 -0
  91. package/dist/protocols/mcp/defineTool.d.ts +133 -0
  92. package/dist/protocols/mcp/defineTool.d.ts.map +1 -0
  93. package/dist/protocols/mcp/defineTool.js +236 -0
  94. package/dist/protocols/mcp/defineTool.js.map +1 -0
  95. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts +38 -0
  96. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts.map +1 -0
  97. package/dist/protocols/mcp/security/HttpTargetGuard.js +227 -0
  98. package/dist/protocols/mcp/security/HttpTargetGuard.js.map +1 -0
  99. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts +9 -1
  100. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -1
  101. package/dist/protocols/mcp/security/McpSecurityGuard.js +10 -2
  102. package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -1
  103. package/dist/protocols/mcp/security/McpToolPolicy.d.ts +81 -0
  104. package/dist/protocols/mcp/security/McpToolPolicy.d.ts.map +1 -0
  105. package/dist/protocols/mcp/security/McpToolPolicy.js +202 -0
  106. package/dist/protocols/mcp/security/McpToolPolicy.js.map +1 -0
  107. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +51 -18
  108. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -1
  109. package/dist/protocols/mcp/services/ExternalMcpServerManager.js +256 -283
  110. package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -1
  111. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +39 -6
  112. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -1
  113. package/dist/protocols/mcp/services/ExternalServerConfigs.js +76 -18
  114. package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -1
  115. package/dist/protocols/mcp/tools/AnalyticsTools.js +1 -1
  116. package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -1
  117. package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -1
  118. package/dist/protocols/mcp/tools/CodeAnalysisTools.js +15 -0
  119. package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -1
  120. package/dist/protocols/mcp/tools/EffectivenessTools.js +3 -3
  121. package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -1
  122. package/dist/protocols/mcp/tools/GitTools.d.ts +9 -369
  123. package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -1
  124. package/dist/protocols/mcp/tools/GitTools.js +222 -517
  125. package/dist/protocols/mcp/tools/GitTools.js.map +1 -1
  126. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +56 -24
  127. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -1
  128. package/dist/protocols/mcp/tools/InfrastructureTools.js +117 -26
  129. package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -1
  130. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +0 -3
  131. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -1
  132. package/dist/protocols/mcp/tools/MemorySearchTools.js +58 -1
  133. package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -1
  134. package/dist/protocols/mcp/tools/OrparTools.d.ts +8 -0
  135. package/dist/protocols/mcp/tools/OrparTools.d.ts.map +1 -1
  136. package/dist/protocols/mcp/tools/OrparTools.js +66 -0
  137. package/dist/protocols/mcp/tools/OrparTools.js.map +1 -1
  138. package/dist/protocols/mcp/tools/SafetyTools.d.ts +7 -525
  139. package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -1
  140. package/dist/protocols/mcp/tools/SafetyTools.js +349 -514
  141. package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -1
  142. package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -1
  143. package/dist/protocols/mcp/tools/TaskPlanningTools.js +56 -26
  144. package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -1
  145. package/dist/protocols/mcp/tools/TestTools.d.ts +15 -376
  146. package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -1
  147. package/dist/protocols/mcp/tools/TestTools.js +241 -363
  148. package/dist/protocols/mcp/tools/TestTools.js.map +1 -1
  149. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts +6 -276
  150. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -1
  151. package/dist/protocols/mcp/tools/TypeScriptTools.js +223 -337
  152. package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -1
  153. package/dist/protocols/mcp/tools/WebTools.d.ts +15 -728
  154. package/dist/protocols/mcp/tools/WebTools.d.ts.map +1 -1
  155. package/dist/protocols/mcp/tools/WebTools.js +151 -257
  156. package/dist/protocols/mcp/tools/WebTools.js.map +1 -1
  157. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts +5 -3
  158. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -1
  159. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +31 -6
  160. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -1
  161. package/dist/schemas/EventPayloadSchema.d.ts +21 -0
  162. package/dist/schemas/EventPayloadSchema.d.ts.map +1 -1
  163. package/dist/schemas/EventPayloadSchema.js +14 -0
  164. package/dist/schemas/EventPayloadSchema.js.map +1 -1
  165. package/dist/services/BackgroundTaskManager.d.ts.map +1 -1
  166. package/dist/services/BackgroundTaskManager.js +12 -4
  167. package/dist/services/BackgroundTaskManager.js.map +1 -1
  168. package/dist/services/BrowserManager.d.ts +1 -1
  169. package/dist/services/BrowserManager.d.ts.map +1 -1
  170. package/dist/services/BrowserManager.js +26 -3
  171. package/dist/services/BrowserManager.js.map +1 -1
  172. package/dist/services/MemoryCompressor.d.ts +11 -2
  173. package/dist/services/MemoryCompressor.d.ts.map +1 -1
  174. package/dist/services/MemoryCompressor.js +8 -26
  175. package/dist/services/MemoryCompressor.js.map +1 -1
  176. package/dist/services/MemoryService.d.ts +16 -3
  177. package/dist/services/MemoryService.d.ts.map +1 -1
  178. package/dist/services/MemoryService.js +79 -55
  179. package/dist/services/MemoryService.js.map +1 -1
  180. package/dist/services/MxfMLService.d.ts +5 -0
  181. package/dist/services/MxfMLService.d.ts.map +1 -1
  182. package/dist/services/MxfMLService.js +32 -6
  183. package/dist/services/MxfMLService.js.map +1 -1
  184. package/dist/services/PredictiveAnalyticsService.d.ts +45 -9
  185. package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -1
  186. package/dist/services/PredictiveAnalyticsService.js +82 -44
  187. package/dist/services/PredictiveAnalyticsService.js.map +1 -1
  188. package/dist/services/QValueManager.d.ts +7 -0
  189. package/dist/services/QValueManager.d.ts.map +1 -1
  190. package/dist/services/QValueManager.js +9 -0
  191. package/dist/services/QValueManager.js.map +1 -1
  192. package/dist/services/RewardSignalProcessor.d.ts +38 -1
  193. package/dist/services/RewardSignalProcessor.d.ts.map +1 -1
  194. package/dist/services/RewardSignalProcessor.js +109 -7
  195. package/dist/services/RewardSignalProcessor.js.map +1 -1
  196. package/dist/services/SharedStateService.d.ts +16 -2
  197. package/dist/services/SharedStateService.d.ts.map +1 -1
  198. package/dist/services/SharedStateService.js +44 -3
  199. package/dist/services/SharedStateService.js.map +1 -1
  200. package/dist/services/TaskEffectivenessService.d.ts +34 -18
  201. package/dist/services/TaskEffectivenessService.d.ts.map +1 -1
  202. package/dist/services/TaskEffectivenessService.js +91 -155
  203. package/dist/services/TaskEffectivenessService.js.map +1 -1
  204. package/dist/services/WebSearchService.d.ts.map +1 -1
  205. package/dist/services/WebSearchService.js.map +1 -1
  206. package/dist/services/dag/TaskDagService.d.ts.map +1 -1
  207. package/dist/services/dag/TaskDagService.js +2 -0
  208. package/dist/services/dag/TaskDagService.js.map +1 -1
  209. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +7 -0
  210. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -1
  211. package/dist/services/orpar-memory/OrparMemoryCoordinator.js +71 -10
  212. package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -1
  213. package/dist/types/MemoryUtilityTypes.d.ts +2 -0
  214. package/dist/types/MemoryUtilityTypes.d.ts.map +1 -1
  215. package/dist/types/MemoryUtilityTypes.js.map +1 -1
  216. package/dist/utils/Logger.d.ts +43 -3
  217. package/dist/utils/Logger.d.ts.map +1 -1
  218. package/dist/utils/Logger.js +78 -36
  219. package/dist/utils/Logger.js.map +1 -1
  220. package/dist/utils/MxpEncryption.d.ts +19 -6
  221. package/dist/utils/MxpEncryption.d.ts.map +1 -1
  222. package/dist/utils/MxpEncryption.js +48 -16
  223. package/dist/utils/MxpEncryption.js.map +1 -1
  224. package/package.json +19 -4
  225. package/src/adapters/FrameworkAdapter.ts +1 -1
  226. package/src/config/ConfigManager.ts +52 -19
  227. package/src/config/memory-strata.config.ts +136 -0
  228. package/src/constants/ToolNames.ts +4 -18
  229. package/src/database/DatabaseAdapterFactory.ts +23 -6
  230. package/src/database/adapters/mongodb/MongoBaseRepository.ts +16 -2
  231. package/src/events/ClientEventBus.ts +68 -403
  232. package/src/events/EventBus.ts +7 -8
  233. package/src/events/EventBusBase.ts +479 -116
  234. package/src/events/EventNames.ts +6 -0
  235. package/src/events/PublicEvents.ts +7 -4
  236. package/src/events/ServerEventBus.ts +78 -473
  237. package/src/events/event-definitions/LlmBudgetEvents.ts +74 -0
  238. package/src/interfaces/IMemoryPersistence.ts +51 -0
  239. package/src/middleware/MxpMiddleware.ts +51 -24
  240. package/src/models/channelKey.ts +18 -4
  241. package/src/models/memoryUtility.ts +64 -0
  242. package/src/models/user.ts +36 -4
  243. package/src/mxp/BinaryProtocolLayer.ts +108 -124
  244. package/src/mxp/ContextCompressionEngine.ts +219 -161
  245. package/src/mxp/MxpTokenOptimizer.ts +10 -10
  246. package/src/prompts/MxfAgentSystemPrompt.ts +45 -55
  247. package/src/protocols/mcp/ToolError.ts +201 -0
  248. package/src/protocols/mcp/defineTool.ts +379 -0
  249. package/src/protocols/mcp/security/HttpTargetGuard.ts +267 -0
  250. package/src/protocols/mcp/security/McpSecurityGuard.ts +10 -3
  251. package/src/protocols/mcp/security/McpToolPolicy.ts +221 -0
  252. package/src/protocols/mcp/services/ExternalMcpServerManager.ts +340 -322
  253. package/src/protocols/mcp/services/ExternalServerConfigs.ts +82 -19
  254. package/src/protocols/mcp/tools/AnalyticsTools.ts +1 -1
  255. package/src/protocols/mcp/tools/CodeAnalysisTools.ts +15 -0
  256. package/src/protocols/mcp/tools/EffectivenessTools.ts +3 -3
  257. package/src/protocols/mcp/tools/GitTools.ts +290 -569
  258. package/src/protocols/mcp/tools/InfrastructureTools.ts +189 -43
  259. package/src/protocols/mcp/tools/MemorySearchTools.ts +77 -1
  260. package/src/protocols/mcp/tools/OrparTools.ts +87 -0
  261. package/src/protocols/mcp/tools/SafetyTools.ts +501 -579
  262. package/src/protocols/mcp/tools/TaskPlanningTools.ts +81 -39
  263. package/src/protocols/mcp/tools/TestTools.ts +339 -419
  264. package/src/protocols/mcp/tools/TypeScriptTools.ts +316 -376
  265. package/src/protocols/mcp/tools/WebTools.ts +209 -307
  266. package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +53 -14
  267. package/src/schemas/EventPayloadSchema.ts +37 -0
  268. package/src/services/BackgroundTaskManager.ts +12 -4
  269. package/src/services/BrowserManager.ts +41 -1
  270. package/src/services/MemoryCompressor.ts +20 -32
  271. package/src/services/MemoryService.ts +96 -58
  272. package/src/services/MxfMLService.ts +41 -7
  273. package/src/services/PredictiveAnalyticsService.ts +101 -51
  274. package/src/services/QValueManager.ts +10 -0
  275. package/src/services/RewardSignalProcessor.ts +138 -9
  276. package/src/services/SharedStateService.ts +56 -8
  277. package/src/services/TaskEffectivenessService.ts +114 -187
  278. package/src/services/WebSearchService.ts +2 -1
  279. package/src/services/dag/TaskDagService.ts +2 -0
  280. package/src/services/orpar-memory/OrparMemoryCoordinator.ts +86 -10
  281. package/src/types/MemoryUtilityTypes.ts +2 -0
  282. package/src/utils/Logger.ts +116 -40
  283. package/src/utils/MxpEncryption.ts +69 -34
  284. package/dist/mxp/MxpEventForwardingEnhancer.d.ts +0 -134
  285. package/dist/mxp/MxpEventForwardingEnhancer.d.ts.map +0 -1
  286. package/dist/mxp/MxpEventForwardingEnhancer.js +0 -361
  287. package/dist/mxp/MxpEventForwardingEnhancer.js.map +0 -1
  288. package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts +0 -56
  289. package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts.map +0 -1
  290. package/dist/protocols/mcp/services/ToolSchemaEnhancements.js +0 -57
  291. package/dist/protocols/mcp/services/ToolSchemaEnhancements.js.map +0 -1
  292. package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts +0 -270
  293. package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts.map +0 -1
  294. package/dist/protocols/mcp/tools/ControlLoopLifecycle.js +0 -256
  295. package/dist/protocols/mcp/tools/ControlLoopLifecycle.js.map +0 -1
  296. package/dist/protocols/mcp/tools/LspTools.d.ts +0 -495
  297. package/dist/protocols/mcp/tools/LspTools.d.ts.map +0 -1
  298. package/dist/protocols/mcp/tools/LspTools.js +0 -469
  299. package/dist/protocols/mcp/tools/LspTools.js.map +0 -1
  300. package/src/mxp/MxpEventForwardingEnhancer.ts +0 -471
  301. package/src/protocols/mcp/services/ToolSchemaEnhancements.ts +0 -92
  302. package/src/protocols/mcp/tools/ControlLoopLifecycle.ts +0 -302
  303. package/src/protocols/mcp/tools/LspTools.ts +0 -476
@@ -17,17 +17,9 @@
17
17
  * @repository https://github.com/BradA1878/model-exchange-framework
18
18
  * @documentation https://mxf-dev.github.io/mxf/
19
19
  */
20
- /**
21
- * ClientEventBus
22
- *
23
- * Provides client-side event bus implementation for the MXF.
24
- * Handles client-specific event operations, socket connections, and event forwarding.
25
- */
26
- import { filter, map } from 'rxjs';
27
- import { Events } from './EventNames.js';
28
20
  import { ControlLoopEvents } from './event-definitions/ControlLoopEvents.js';
29
21
  import { OrparEvents } from './event-definitions/OrparEvents.js';
30
- import { BaseEventBusImplementation, validateEventName, invokeHandlerSafely } from './EventBusBase.js';
22
+ import { BaseEventBusImplementation, validateEventName } from './EventBusBase.js';
31
23
  import { createStrictValidator } from '../utils/validation.js';
32
24
  import { Logger } from '../utils/Logger.js';
33
25
  // Create a logger instance for ClientEventBus (warn level to reduce noise, client target for SDK usage)
@@ -35,19 +27,16 @@ const logger = new Logger('warn', 'ClientEventBus', 'client');
35
27
  // Create a strict validator for client-side operations
36
28
  const validator = createStrictValidator('ClientEventBus');
37
29
  /**
38
- * Client-side event bus implementation
30
+ * Client-side event bus implementation.
31
+ *
32
+ * Subscription handling (on/once/off/onAll/categories/debug) lives in
33
+ * BaseEventBusImplementation. This class owns only the socket transport.
39
34
  */
40
35
  export class ClientEventBus extends BaseEventBusImplementation {
41
36
  // Primary socket (set by setClientSocket, used by admin/SDK emit())
42
37
  socket = null;
43
38
  // Listeners tracked for the primary socket's onAny handler
44
39
  socketListeners = new Map();
45
- subscriptions = [];
46
- categorySubscriptions = new Map();
47
- // Track subscriptions by event and handler
48
- handlerSubscriptions = new Map();
49
- debugMode = false;
50
- debugSubscription = null;
51
40
  // Socket registry: maps socketId (typically agentId) → socket instance
52
41
  // Agent sockets register here so they don't overwrite the primary admin socket
53
42
  socketRegistry = new Map();
@@ -58,8 +47,7 @@ export class ClientEventBus extends BaseEventBusImplementation {
58
47
  * @param eventSubject Subject to use for events
59
48
  */
60
49
  constructor(eventSubject) {
61
- super(eventSubject);
62
- //// ;
50
+ super(eventSubject, logger);
63
51
  }
64
52
  /**
65
53
  * Set the socket to use for event forwarding
@@ -84,50 +72,19 @@ export class ClientEventBus extends BaseEventBusImplementation {
84
72
  return this;
85
73
  }
86
74
  /**
87
- * Emit an event
88
- * This is the core method that handles all event emission
89
- * @param event Event name
90
- * @param payload Event payload
75
+ * Forward an emitted event to the primary socket.
76
+ *
77
+ * Called by BaseEventBusImplementation.emit() after validation and local
78
+ * delivery. A disconnected socket is a warning, not an error: local
79
+ * subscribers still received the event.
91
80
  */
92
- emit(event, payload) {
93
- try {
94
- // ;
95
- // Validate event name and payload
96
- validateEventName(event);
97
- this.validateEventPayload(String(event), payload);
98
- // Emit to local event bus
99
- this.eventSubject.next({
100
- type: event,
101
- payload,
102
- });
103
- // Forward to socket.io if connected
104
- if (this.socket && this.socket.connected) {
105
- // Direct log for critical events to ensure visibility
106
- if (typeof event === 'string' && (event.includes('register') || event.includes('connect'))) {
107
- }
108
- // Add detailed logging for message events
109
- if (typeof event === 'string' && event.includes('message')) {
110
- }
111
- // Emit to socket
112
- this.socket.emit(event, payload);
113
- }
114
- else {
115
- logger.warn(`[ClientEventBus] WARNING: Socket not connected, could not forward event: ${event}. Socket exists: ${!!this.socket}, Socket connected: ${this.socket?.connected}`);
116
- }
117
- //// ;
118
- }
119
- catch (error) {
120
- logger.error(`[ClientEventBus] Error emitting event '${event}':`, error instanceof Error ? error.message : String(error));
121
- // Emit error event
122
- this.eventSubject.next({
123
- type: Events.Agent.ERROR,
124
- payload: {
125
- error: error instanceof Error ? error.message : String(error),
126
- event,
127
- timestamp: Date.now()
128
- }
129
- });
81
+ forwardToTransport(event, payload) {
82
+ if (this.socket && this.socket.connected) {
83
+ this.socket.emit(String(event), payload);
84
+ return;
130
85
  }
86
+ logger.warn(`[ClientEventBus] Socket not connected, could not forward event: ${String(event)}. ` +
87
+ `Socket exists: ${!!this.socket}, Socket connected: ${this.socket?.connected}`);
131
88
  }
132
89
  /**
133
90
  * Set up socket event forwarding from socket to event bus
@@ -278,45 +235,29 @@ export class ClientEventBus extends BaseEventBusImplementation {
278
235
  * @param payload Event payload
279
236
  */
280
237
  emitOn(socketId, event, payload) {
281
- try {
282
- // Validate event name and payload (same checks as emit())
283
- validateEventName(event);
284
- this.validateEventPayload(String(event), payload);
285
- // Push to local event bus so on()/once() subscribers receive it
286
- this.eventSubject.next({ type: event, payload });
287
- // Look up the registered socket
288
- const registeredSocket = this.socketRegistry.get(socketId);
289
- if (registeredSocket && registeredSocket.connected) {
290
- registeredSocket.emit(event, payload);
291
- return;
292
- }
293
- // Fallback: try the primary socket with a warning
294
- if (registeredSocket && !registeredSocket.connected) {
295
- logger.warn(`[ClientEventBus] Registered socket '${socketId}' not connected, falling back to primary for event: ${event}`);
296
- }
297
- else {
298
- // Debug level: this is expected during early agent startup before the socket is registered
299
- logger.debug(`[ClientEventBus] Socket '${socketId}' not found in registry, falling back to primary for event: ${event}`);
300
- }
301
- if (this.socket && this.socket.connected) {
302
- this.socket.emit(event, payload);
303
- }
304
- else {
305
- logger.warn(`[ClientEventBus] No socket available to emit event: ${event}`);
306
- }
238
+ // Same validation contract as emit(): a bad event name or payload throws.
239
+ validateEventName(event);
240
+ if (payload === undefined || payload === null) {
241
+ throw new Error(`Event '${String(event)}' was emitted with a ${payload === null ? 'null' : 'undefined'} payload. ` +
242
+ `Build the payload with a helper from EventPayloadSchema.`);
307
243
  }
308
- catch (error) {
309
- logger.error(`[ClientEventBus] Error in emitOn('${socketId}', '${event}'):`, error instanceof Error ? error.message : String(error));
310
- // Emit error event
311
- this.eventSubject.next({
312
- type: Events.Agent.ERROR,
313
- payload: {
314
- error: error instanceof Error ? error.message : String(error),
315
- event,
316
- timestamp: Date.now()
317
- }
318
- });
244
+ this.validateEventPayload(String(event), payload);
245
+ // Push to local event bus so on()/once() subscribers receive it
246
+ this.eventSubject.next({ type: event, payload });
247
+ // Look up the registered socket
248
+ const registeredSocket = this.socketRegistry.get(socketId);
249
+ if (registeredSocket && registeredSocket.connected) {
250
+ registeredSocket.emit(String(event), payload);
251
+ return;
252
+ }
253
+ if (registeredSocket && !registeredSocket.connected) {
254
+ logger.warn(`[ClientEventBus] Registered socket '${socketId}' not connected, using primary socket for event: ${String(event)}`);
255
+ }
256
+ else {
257
+ // Debug level: this is expected during early agent startup before the socket is registered
258
+ logger.debug(`[ClientEventBus] Socket '${socketId}' not found in registry, using primary socket for event: ${String(event)}`);
319
259
  }
260
+ this.forwardToTransport(event, payload);
320
261
  }
321
262
  /**
322
263
  * Disconnect the primary socket and unregister all sockets in the registry
@@ -344,56 +285,6 @@ export class ClientEventBus extends BaseEventBusImplementation {
344
285
  }
345
286
  return this;
346
287
  }
347
- /**
348
- * Unsubscribe from an event
349
- * @param event Event name
350
- * @param handler Event handler function (optional)
351
- */
352
- off(event, handler) {
353
- validateEventName(event);
354
- const eventHandlers = this.handlerSubscriptions.get(event);
355
- if (!eventHandlers) {
356
- // No handlers for this event found
357
- // ;
358
- return;
359
- }
360
- if (handler) {
361
- // If specific handler provided, just unsubscribe that one
362
- const subscription = eventHandlers.get(handler);
363
- if (subscription) {
364
- // Unsubscribe from the RxJS subscription
365
- subscription.unsubscribe();
366
- // Remove from our handler registry
367
- eventHandlers.delete(handler);
368
- // Remove from the array if present
369
- const index = this.subscriptions.indexOf(subscription);
370
- if (index !== -1) {
371
- this.subscriptions.splice(index, 1);
372
- }
373
- // ;
374
- }
375
- else {
376
- // ;
377
- }
378
- }
379
- else {
380
- // If no specific handler, unsubscribe all handlers for this event
381
- let unsubscribedCount = 0;
382
- eventHandlers.forEach((subscription) => {
383
- // Unsubscribe from the RxJS subscription
384
- subscription.unsubscribe();
385
- // Remove from the array if present
386
- const index = this.subscriptions.indexOf(subscription);
387
- if (index !== -1) {
388
- this.subscriptions.splice(index, 1);
389
- }
390
- unsubscribedCount++;
391
- });
392
- // Clear all handlers for this event
393
- eventHandlers.clear();
394
- // ;
395
- }
396
- }
397
288
  /**
398
289
  * Remove all socket listeners (primary socket and all registered sockets)
399
290
  * @returns this (for chaining)
@@ -462,169 +353,5 @@ export class ClientEventBus extends BaseEventBusImplementation {
462
353
  isSocketConnected() {
463
354
  return !!this.socket && !!this.socket.connected;
464
355
  }
465
- /**
466
- * Subscribe to an event in the client event bus
467
- *
468
- * @param event Event name to subscribe to
469
- * @param listener Listener function to call when the event is emitted
470
- * @returns Subscription that can be unsubscribed to stop listening
471
- */
472
- on(event, listener) {
473
- // Create a filtered observable for this specific event
474
- const observable = this.eventSubject.pipe(filter((e) => e.type === event), map((e) => e.payload));
475
- // Log subscription to important events
476
- if (event && typeof event === 'string' &&
477
- (event.includes('register') || event.includes('connect'))) {
478
- }
479
- // Subscribe with throw/rejection isolation so one bad listener cannot
480
- // kill the subscription or fail silently.
481
- const subscription = observable.subscribe((payload) => invokeHandlerSafely(logger, event, listener, payload));
482
- // Store the subscription for cleanup
483
- this.subscriptions.push(subscription);
484
- // Also store in our handler-based registry for off() support
485
- if (!this.handlerSubscriptions.has(event)) {
486
- this.handlerSubscriptions.set(event, new Map());
487
- }
488
- const eventHandlers = this.handlerSubscriptions.get(event);
489
- if (eventHandlers) {
490
- eventHandlers.set(listener, subscription);
491
- }
492
- return subscription;
493
- }
494
- /**
495
- * Subscribe to an event once in the client event bus
496
- * Once the event is fired, the subscription is automatically removed
497
- *
498
- * @param event Event name to subscribe to
499
- * @param listener Listener function to call when the event is emitted
500
- * @returns Subscription that can be unsubscribed to stop listening
501
- */
502
- once(event, listener) {
503
- // Create a filtered observable for this specific event
504
- const observable = this.eventSubject.pipe(filter((e) => e.type === event), map((e) => e.payload));
505
- // Log subscription to important events
506
- if (event && typeof event === 'string' &&
507
- (event.includes('register') || event.includes('connect'))) {
508
- }
509
- // Create a wrapper listener that will unsubscribe after first execution
510
- const onceListener = (payload) => {
511
- try {
512
- invokeHandlerSafely(logger, event, listener, payload);
513
- }
514
- finally {
515
- // Always unsubscribe — once means once, even when the listener throws.
516
- this.off(event, onceListener);
517
- }
518
- };
519
- // Subscribe to the observable with the one-time listener
520
- const subscription = observable.subscribe(onceListener);
521
- // Store the subscription for cleanup
522
- this.subscriptions.push(subscription);
523
- // Also store in our handler-based registry for off() support
524
- if (!this.handlerSubscriptions.has(event)) {
525
- this.handlerSubscriptions.set(event, new Map());
526
- }
527
- const eventHandlers = this.handlerSubscriptions.get(event);
528
- if (eventHandlers) {
529
- eventHandlers.set(listener, subscription);
530
- }
531
- return subscription;
532
- }
533
- /**
534
- * Subscribe to all events in the client event bus
535
- *
536
- * @param listener Listener function that receives both event type and payload
537
- * @returns Subscription that can be unsubscribed to stop listening
538
- */
539
- onAll(listener) {
540
- // Create an observable that passes both event type and payload
541
- const observable = this.eventSubject.pipe(map((e) => ({ type: e.type, payload: e.payload })));
542
- // Subscribe to the observable with the listener
543
- const subscription = observable.subscribe(event => {
544
- listener(event.type, event.payload);
545
- });
546
- // Store the subscription for cleanup
547
- this.subscriptions.push(subscription);
548
- return subscription;
549
- }
550
- /**
551
- * Subscribe to an event in the client event bus with category
552
- * for grouped subscription management
553
- *
554
- * @param category Category name for grouping subscriptions
555
- * @param event Event name to subscribe to
556
- * @param listener Listener function to call when the event is emitted
557
- * @returns Subscription that can be unsubscribed to stop listening
558
- */
559
- onWithCategory(category, event, listener) {
560
- // Get the subscription using the standard on method
561
- const subscription = this.on(event, listener);
562
- // Store in the category map
563
- if (!this.categorySubscriptions.has(category)) {
564
- this.categorySubscriptions.set(category, []);
565
- }
566
- const categorySubs = this.categorySubscriptions.get(category);
567
- if (categorySubs) {
568
- categorySubs.push(subscription);
569
- }
570
- return subscription;
571
- }
572
- /**
573
- * Unsubscribe from all events in a specific category
574
- *
575
- * @param category Category name to unsubscribe from
576
- * @returns this (for chaining)
577
- */
578
- unsubscribeCategory(category) {
579
- const subscriptions = this.categorySubscriptions.get(category) || [];
580
- // Unsubscribe from each subscription in the category
581
- subscriptions.forEach(subscription => {
582
- subscription.unsubscribe();
583
- // Also remove from the main subscriptions array
584
- const index = this.subscriptions.indexOf(subscription);
585
- if (index !== -1) {
586
- this.subscriptions.splice(index, 1);
587
- }
588
- });
589
- // Clear the category
590
- this.categorySubscriptions.delete(category);
591
- return this;
592
- }
593
- /**
594
- * Enable or disable debug mode to log all events
595
- *
596
- * @param enabled Whether debug mode should be enabled
597
- * @returns this (for chaining)
598
- */
599
- enableDebugMode(enabled = true) {
600
- // If already in the requested mode, do nothing
601
- if (this.debugMode === enabled) {
602
- return this;
603
- }
604
- this.debugMode = enabled;
605
- // If enabling debug mode
606
- if (enabled) {
607
- // Create a subscription to all events
608
- this.debugSubscription = this.onAll((eventType, payload) => {
609
- // ;
610
- });
611
- // Make sure it's tracked for cleanup
612
- if (this.debugSubscription) {
613
- this.subscriptions.push(this.debugSubscription);
614
- }
615
- }
616
- // If disabling debug mode
617
- else if (this.debugSubscription) {
618
- // Unsubscribe from the debug subscription
619
- this.debugSubscription.unsubscribe();
620
- // Remove from subscriptions array
621
- const index = this.subscriptions.indexOf(this.debugSubscription);
622
- if (index !== -1) {
623
- this.subscriptions.splice(index, 1);
624
- }
625
- this.debugSubscription = null;
626
- }
627
- return this;
628
- }
629
356
  }
630
357
  //# sourceMappingURL=ClientEventBus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClientEventBus.js","sourceRoot":"","sources":["../../src/events/ClientEventBus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ClientEventBus.js","sourceRoot":"","sources":["../../src/events/ClientEventBus.ts"],"names":[],"mappings":"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"}
@@ -50,7 +50,7 @@ export declare class EventBusImplementation {
50
50
  */
51
51
  reset(): void;
52
52
  /**
53
- * Debug method to log all events being processed by the EventBus
53
+ * Log every event passing through the bus.
54
54
  * @returns A subscription that can be unsubscribed to stop debugging
55
55
  */
56
56
  debug(): import("rxjs").Subscription;
@@ -1 +1 @@
1
- {"version":3,"file":"EventBus.d.ts","sourceRoot":"","sources":["../../src/events/EventBus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAgBH,OAAO,EAAkB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAkB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAMtE;;;;GAIG;AACH,qBAAa,sBAAsB;IAC/B,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,cAAc,CAAgC;IACtD,OAAO,CAAC,cAAc,CAAgC;IAEtD;;OAEG;;IAMH;;;;OAIG;IACH,IAAW,MAAM,IAAI,eAAe,CAKnC;IAED;;;;OAIG;IACH,IAAW,MAAM,IAAI,eAAe,CAKnC;IAED;;;OAGG;IACI,KAAK,IAAI,IAAI;IAWpB;;;OAGG;IACI,KAAK;CAKf;AAGD,eAAO,MAAM,QAAQ,wBAA+B,CAAC"}
1
+ {"version":3,"file":"EventBus.d.ts","sourceRoot":"","sources":["../../src/events/EventBus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAgBH,OAAO,EAAkB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAkB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAMtE;;;;GAIG;AACH,qBAAa,sBAAsB;IAC/B,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,cAAc,CAAgC;IACtD,OAAO,CAAC,cAAc,CAAgC;IAEtD;;OAEG;;IAKH;;;;OAIG;IACH,IAAW,MAAM,IAAI,eAAe,CAKnC;IAED;;;;OAIG;IACH,IAAW,MAAM,IAAI,eAAe,CAKnC;IAED;;;OAGG;IACI,KAAK,IAAI,IAAI;IAWpB;;;OAGG;IACI,KAAK;CAKf;AAGD,eAAO,MAAM,QAAQ,wBAA+B,CAAC"}
@@ -48,7 +48,6 @@ export class EventBusImplementation {
48
48
  */
49
49
  constructor() {
50
50
  this.eventSubject = new Subject();
51
- //;
52
51
  }
53
52
  /**
54
53
  * Get or create the client EventBus instance
@@ -77,19 +76,21 @@ export class EventBusImplementation {
77
76
  * This is primarily used for testing.
78
77
  */
79
78
  reset() {
80
- // Reset the event subject
79
+ // Completing the Subject disposes every subscription both buses hold,
80
+ // and their completion callbacks clear their registries.
81
81
  this.eventSubject.complete();
82
82
  this.eventSubject = new Subject();
83
- // Reset client and server instances
83
+ // Reset client and server instances so they bind to the new Subject
84
84
  this.clientEventBus = null;
85
85
  this.serverEventBus = null;
86
86
  }
87
87
  /**
88
- * Debug method to log all events being processed by the EventBus
88
+ * Log every event passing through the bus.
89
89
  * @returns A subscription that can be unsubscribed to stop debugging
90
90
  */
91
91
  debug() {
92
92
  return this.eventSubject.subscribe(event => {
93
+ logger.debug(`event '${event.type}': ${JSON.stringify(event.payload)}`);
93
94
  });
94
95
  }
95
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EventBus.js","sourceRoot":"","sources":["../../src/events/EventBus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAmB,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAmB,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,wCAAwC;AACxC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AAExD;;;;GAIG;AACH,MAAM,OAAO,sBAAsB;IACvB,YAAY,CAAwB;IACpC,cAAc,GAA2B,IAAI,CAAC;IAC9C,cAAc,GAA2B,IAAI,CAAC;IAEtD;;OAEG;IACH;QACI,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,EAAgB,CAAC;QAChD,GAAG;IACP,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM;QACb,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM;QACb,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACI,KAAK;QACR,0BAA0B;QAC1B,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,EAAgB,CAAC;QAEhD,oCAAoC;QACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAE/B,CAAC;IAED;;;OAGG;IACI,KAAK;QAER,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;QAC3C,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAED,gCAAgC;AAChC,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"EventBus.js","sourceRoot":"","sources":["../../src/events/EventBus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAmB,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAmB,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,wCAAwC;AACxC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;AAExD;;;;GAIG;AACH,MAAM,OAAO,sBAAsB;IACvB,YAAY,CAAwB;IACpC,cAAc,GAA2B,IAAI,CAAC;IAC9C,cAAc,GAA2B,IAAI,CAAC;IAEtD;;OAEG;IACH;QACI,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,EAAgB,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM;QACb,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACH,IAAW,MAAM;QACb,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACI,KAAK;QACR,sEAAsE;QACtE,yDAAyD;QACzD,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,EAAgB,CAAC;QAEhD,oEAAoE;QACpE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACI,KAAK;QACR,OAAO,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;YACvC,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,IAAI,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAED,gCAAgC;AAChC,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,sBAAsB,EAAE,CAAC"}