@teneo-protocol/sdk 1.0.1 → 2.2.0

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 (352) hide show
  1. package/.eslintrc.json +11 -2
  2. package/.github/CODEOWNERS +2 -0
  3. package/.github/ISSUE_TEMPLATE/01-bug.yml +85 -0
  4. package/.github/ISSUE_TEMPLATE/config.yml +8 -0
  5. package/.github/ISSUE_TEMPLATE/feature_request.md +22 -0
  6. package/.github/workflows/claude-code-review.yml +8 -3
  7. package/.github/workflows/claude-reviewer.yml +6 -4
  8. package/.github/workflows/publish-npm.yml +9 -6
  9. package/.github/workflows/push-to-main.yml +1 -1
  10. package/.github/workflows/top-issue.yml +102 -0
  11. package/CHANGELOG.md +334 -0
  12. package/CONCEPTS.md +747 -0
  13. package/README.md +577 -54
  14. package/dist/constants.js +8 -8
  15. package/dist/constants.js.map +1 -1
  16. package/dist/core/websocket-client.d.ts +25 -1
  17. package/dist/core/websocket-client.d.ts.map +1 -1
  18. package/dist/core/websocket-client.js +74 -15
  19. package/dist/core/websocket-client.js.map +1 -1
  20. package/dist/formatters/response-formatter.js +4 -0
  21. package/dist/formatters/response-formatter.js.map +1 -1
  22. package/dist/handlers/message-handler-registry.js +2 -1
  23. package/dist/handlers/message-handler-registry.js.map +1 -1
  24. package/dist/handlers/message-handlers/agent-details-response-handler.d.ts +1666 -0
  25. package/dist/handlers/message-handlers/agent-details-response-handler.d.ts.map +1 -0
  26. package/dist/handlers/message-handlers/agent-details-response-handler.js +38 -0
  27. package/dist/handlers/message-handlers/agent-details-response-handler.js.map +1 -0
  28. package/dist/handlers/message-handlers/agent-room-operation-response-handler.d.ts +76 -0
  29. package/dist/handlers/message-handlers/agent-room-operation-response-handler.d.ts.map +1 -0
  30. package/dist/handlers/message-handlers/agent-room-operation-response-handler.js +67 -0
  31. package/dist/handlers/message-handlers/agent-room-operation-response-handler.js.map +1 -0
  32. package/dist/handlers/message-handlers/agent-selected-handler.d.ts +92 -38
  33. package/dist/handlers/message-handlers/agent-selected-handler.d.ts.map +1 -1
  34. package/dist/handlers/message-handlers/agent-selected-handler.js +2 -5
  35. package/dist/handlers/message-handlers/agent-selected-handler.js.map +1 -1
  36. package/dist/handlers/message-handlers/agent-status-update-handler.d.ts +1687 -0
  37. package/dist/handlers/message-handlers/agent-status-update-handler.d.ts.map +1 -0
  38. package/dist/handlers/message-handlers/agent-status-update-handler.js +48 -0
  39. package/dist/handlers/message-handlers/agent-status-update-handler.js.map +1 -0
  40. package/dist/handlers/message-handlers/agents-list-handler.js +2 -5
  41. package/dist/handlers/message-handlers/agents-list-handler.js.map +1 -1
  42. package/dist/handlers/message-handlers/all-agents-response-handler.d.ts +439 -0
  43. package/dist/handlers/message-handlers/all-agents-response-handler.d.ts.map +1 -0
  44. package/dist/handlers/message-handlers/all-agents-response-handler.js +36 -0
  45. package/dist/handlers/message-handlers/all-agents-response-handler.js.map +1 -0
  46. package/dist/handlers/message-handlers/auth-error-handler.d.ts +45 -31
  47. package/dist/handlers/message-handlers/auth-error-handler.d.ts.map +1 -1
  48. package/dist/handlers/message-handlers/auth-error-handler.js +2 -5
  49. package/dist/handlers/message-handlers/auth-error-handler.js.map +1 -1
  50. package/dist/handlers/message-handlers/auth-message-handler.d.ts +6 -0
  51. package/dist/handlers/message-handlers/auth-message-handler.d.ts.map +1 -1
  52. package/dist/handlers/message-handlers/auth-message-handler.js +71 -10
  53. package/dist/handlers/message-handlers/auth-message-handler.js.map +1 -1
  54. package/dist/handlers/message-handlers/auth-required-handler.d.ts +49 -31
  55. package/dist/handlers/message-handlers/auth-required-handler.d.ts.map +1 -1
  56. package/dist/handlers/message-handlers/auth-required-handler.js +2 -5
  57. package/dist/handlers/message-handlers/auth-required-handler.js.map +1 -1
  58. package/dist/handlers/message-handlers/auth-success-handler.d.ts +6 -0
  59. package/dist/handlers/message-handlers/auth-success-handler.d.ts.map +1 -1
  60. package/dist/handlers/message-handlers/auth-success-handler.js +52 -9
  61. package/dist/handlers/message-handlers/auth-success-handler.js.map +1 -1
  62. package/dist/handlers/message-handlers/base-handler.d.ts +4 -4
  63. package/dist/handlers/message-handlers/base-handler.d.ts.map +1 -1
  64. package/dist/handlers/message-handlers/base-handler.js +3 -1
  65. package/dist/handlers/message-handlers/base-handler.js.map +1 -1
  66. package/dist/handlers/message-handlers/challenge-handler.d.ts +45 -31
  67. package/dist/handlers/message-handlers/challenge-handler.d.ts.map +1 -1
  68. package/dist/handlers/message-handlers/challenge-handler.js +3 -2
  69. package/dist/handlers/message-handlers/challenge-handler.js.map +1 -1
  70. package/dist/handlers/message-handlers/error-message-handler.d.ts +49 -31
  71. package/dist/handlers/message-handlers/error-message-handler.d.ts.map +1 -1
  72. package/dist/handlers/message-handlers/error-message-handler.js +2 -5
  73. package/dist/handlers/message-handlers/error-message-handler.js.map +1 -1
  74. package/dist/handlers/message-handlers/index.d.ts +11 -0
  75. package/dist/handlers/message-handlers/index.d.ts.map +1 -1
  76. package/dist/handlers/message-handlers/index.js +55 -1
  77. package/dist/handlers/message-handlers/index.js.map +1 -1
  78. package/dist/handlers/message-handlers/list-available-agents-handler.d.ts +1660 -0
  79. package/dist/handlers/message-handlers/list-available-agents-handler.d.ts.map +1 -0
  80. package/dist/handlers/message-handlers/list-available-agents-handler.js +35 -0
  81. package/dist/handlers/message-handlers/list-available-agents-handler.js.map +1 -0
  82. package/dist/handlers/message-handlers/list-room-agents-handler.d.ts +1669 -0
  83. package/dist/handlers/message-handlers/list-room-agents-handler.d.ts.map +1 -0
  84. package/dist/handlers/message-handlers/list-room-agents-handler.js +48 -0
  85. package/dist/handlers/message-handlers/list-room-agents-handler.js.map +1 -0
  86. package/dist/handlers/message-handlers/list-rooms-response-handler.d.ts +2 -110
  87. package/dist/handlers/message-handlers/list-rooms-response-handler.d.ts.map +1 -1
  88. package/dist/handlers/message-handlers/list-rooms-response-handler.js +4 -6
  89. package/dist/handlers/message-handlers/list-rooms-response-handler.js.map +1 -1
  90. package/dist/handlers/message-handlers/ping-pong-handler.d.ts +62 -58
  91. package/dist/handlers/message-handlers/ping-pong-handler.d.ts.map +1 -1
  92. package/dist/handlers/message-handlers/ping-pong-handler.js +4 -10
  93. package/dist/handlers/message-handlers/ping-pong-handler.js.map +1 -1
  94. package/dist/handlers/message-handlers/rate-limit-notification-handler.d.ts +94 -0
  95. package/dist/handlers/message-handlers/rate-limit-notification-handler.d.ts.map +1 -0
  96. package/dist/handlers/message-handlers/rate-limit-notification-handler.js +35 -0
  97. package/dist/handlers/message-handlers/rate-limit-notification-handler.js.map +1 -0
  98. package/dist/handlers/message-handlers/regular-message-handler.d.ts +31 -29
  99. package/dist/handlers/message-handlers/regular-message-handler.d.ts.map +1 -1
  100. package/dist/handlers/message-handlers/regular-message-handler.js +4 -6
  101. package/dist/handlers/message-handlers/regular-message-handler.js.map +1 -1
  102. package/dist/handlers/message-handlers/room-operation-response-handler.d.ts +328 -0
  103. package/dist/handlers/message-handlers/room-operation-response-handler.d.ts.map +1 -0
  104. package/dist/handlers/message-handlers/room-operation-response-handler.js +89 -0
  105. package/dist/handlers/message-handlers/room-operation-response-handler.js.map +1 -0
  106. package/dist/handlers/message-handlers/subscribe-response-handler.d.ts +53 -31
  107. package/dist/handlers/message-handlers/subscribe-response-handler.d.ts.map +1 -1
  108. package/dist/handlers/message-handlers/subscribe-response-handler.js +4 -6
  109. package/dist/handlers/message-handlers/subscribe-response-handler.js.map +1 -1
  110. package/dist/handlers/message-handlers/task-quote-handler.d.ts +14 -0
  111. package/dist/handlers/message-handlers/task-quote-handler.d.ts.map +1 -0
  112. package/dist/handlers/message-handlers/task-quote-handler.js +29 -0
  113. package/dist/handlers/message-handlers/task-quote-handler.js.map +1 -0
  114. package/dist/handlers/message-handlers/task-response-handler.js +2 -5
  115. package/dist/handlers/message-handlers/task-response-handler.js.map +1 -1
  116. package/dist/handlers/message-handlers/types.d.ts +21 -7
  117. package/dist/handlers/message-handlers/types.d.ts.map +1 -1
  118. package/dist/handlers/message-handlers/unsubscribe-response-handler.d.ts +53 -31
  119. package/dist/handlers/message-handlers/unsubscribe-response-handler.d.ts.map +1 -1
  120. package/dist/handlers/message-handlers/unsubscribe-response-handler.js +4 -6
  121. package/dist/handlers/message-handlers/unsubscribe-response-handler.js.map +1 -1
  122. package/dist/handlers/message-handlers/user-authenticated-handler.d.ts +40 -0
  123. package/dist/handlers/message-handlers/user-authenticated-handler.d.ts.map +1 -0
  124. package/dist/handlers/message-handlers/user-authenticated-handler.js +28 -0
  125. package/dist/handlers/message-handlers/user-authenticated-handler.js.map +1 -0
  126. package/dist/handlers/message-handlers/user-count-handler.d.ts +49 -0
  127. package/dist/handlers/message-handlers/user-count-handler.d.ts.map +1 -0
  128. package/dist/handlers/message-handlers/user-count-handler.js +31 -0
  129. package/dist/handlers/message-handlers/user-count-handler.js.map +1 -0
  130. package/dist/handlers/webhook-handler.d.ts +1 -1
  131. package/dist/handlers/webhook-handler.d.ts.map +1 -1
  132. package/dist/handlers/webhook-handler.js +14 -5
  133. package/dist/handlers/webhook-handler.js.map +1 -1
  134. package/dist/index.d.ts +6 -1
  135. package/dist/index.d.ts.map +1 -1
  136. package/dist/index.js +19 -2
  137. package/dist/index.js.map +1 -1
  138. package/dist/managers/admin-manager.d.ts +116 -0
  139. package/dist/managers/admin-manager.d.ts.map +1 -0
  140. package/dist/managers/admin-manager.js +169 -0
  141. package/dist/managers/admin-manager.js.map +1 -0
  142. package/dist/managers/agent-registry.d.ts +52 -1
  143. package/dist/managers/agent-registry.d.ts.map +1 -1
  144. package/dist/managers/agent-registry.js +145 -6
  145. package/dist/managers/agent-registry.js.map +1 -1
  146. package/dist/managers/agent-room-manager.d.ts +216 -0
  147. package/dist/managers/agent-room-manager.d.ts.map +1 -0
  148. package/dist/managers/agent-room-manager.js +555 -0
  149. package/dist/managers/agent-room-manager.js.map +1 -0
  150. package/dist/managers/connection-manager.js +2 -0
  151. package/dist/managers/connection-manager.js.map +1 -1
  152. package/dist/managers/index.d.ts +4 -1
  153. package/dist/managers/index.d.ts.map +1 -1
  154. package/dist/managers/index.js +7 -1
  155. package/dist/managers/index.js.map +1 -1
  156. package/dist/managers/message-router.d.ts +56 -5
  157. package/dist/managers/message-router.d.ts.map +1 -1
  158. package/dist/managers/message-router.js +155 -8
  159. package/dist/managers/message-router.js.map +1 -1
  160. package/dist/managers/room-management-manager.d.ts +213 -0
  161. package/dist/managers/room-management-manager.d.ts.map +1 -0
  162. package/dist/managers/room-management-manager.js +442 -0
  163. package/dist/managers/room-management-manager.js.map +1 -0
  164. package/dist/managers/room-manager.d.ts +11 -9
  165. package/dist/managers/room-manager.d.ts.map +1 -1
  166. package/dist/managers/room-manager.js +14 -10
  167. package/dist/managers/room-manager.js.map +1 -1
  168. package/dist/payments/index.d.ts +5 -0
  169. package/dist/payments/index.d.ts.map +1 -0
  170. package/dist/payments/index.js +21 -0
  171. package/dist/payments/index.js.map +1 -0
  172. package/dist/payments/payment-client.d.ts +74 -0
  173. package/dist/payments/payment-client.d.ts.map +1 -0
  174. package/dist/payments/payment-client.js +207 -0
  175. package/dist/payments/payment-client.js.map +1 -0
  176. package/dist/teneo-sdk.d.ts +467 -33
  177. package/dist/teneo-sdk.d.ts.map +1 -1
  178. package/dist/teneo-sdk.js +735 -26
  179. package/dist/teneo-sdk.js.map +1 -1
  180. package/dist/types/categories.d.ts +22 -0
  181. package/dist/types/categories.d.ts.map +1 -0
  182. package/dist/types/categories.js +40 -0
  183. package/dist/types/categories.js.map +1 -0
  184. package/dist/types/config.d.ts +134 -54
  185. package/dist/types/config.d.ts.map +1 -1
  186. package/dist/types/config.js +70 -9
  187. package/dist/types/config.js.map +1 -1
  188. package/dist/types/error-codes.d.ts +10 -0
  189. package/dist/types/error-codes.d.ts.map +1 -1
  190. package/dist/types/error-codes.js +12 -0
  191. package/dist/types/error-codes.js.map +1 -1
  192. package/dist/types/events.d.ts +176 -68
  193. package/dist/types/events.d.ts.map +1 -1
  194. package/dist/types/events.js +19 -1
  195. package/dist/types/events.js.map +1 -1
  196. package/dist/types/index.d.ts +3 -2
  197. package/dist/types/index.d.ts.map +1 -1
  198. package/dist/types/index.js +57 -2
  199. package/dist/types/index.js.map +1 -1
  200. package/dist/types/messages.d.ts +22225 -2592
  201. package/dist/types/messages.d.ts.map +1 -1
  202. package/dist/types/messages.js +537 -28
  203. package/dist/types/messages.js.map +1 -1
  204. package/dist/utils/bounded-queue.d.ts.map +1 -1
  205. package/dist/utils/bounded-queue.js +5 -2
  206. package/dist/utils/bounded-queue.js.map +1 -1
  207. package/dist/utils/circuit-breaker.js +11 -4
  208. package/dist/utils/circuit-breaker.js.map +1 -1
  209. package/dist/utils/deduplication-cache.js +3 -1
  210. package/dist/utils/deduplication-cache.js.map +1 -1
  211. package/dist/utils/event-waiter.d.ts +3 -3
  212. package/dist/utils/event-waiter.d.ts.map +1 -1
  213. package/dist/utils/index.d.ts +1 -0
  214. package/dist/utils/index.d.ts.map +1 -1
  215. package/dist/utils/index.js +4 -1
  216. package/dist/utils/index.js.map +1 -1
  217. package/dist/utils/logger.js.map +1 -1
  218. package/dist/utils/pricing-resolver.d.ts +26 -0
  219. package/dist/utils/pricing-resolver.d.ts.map +1 -0
  220. package/dist/utils/pricing-resolver.js +85 -0
  221. package/dist/utils/pricing-resolver.js.map +1 -0
  222. package/dist/utils/rate-limiter.d.ts.map +1 -1
  223. package/dist/utils/rate-limiter.js +6 -0
  224. package/dist/utils/rate-limiter.js.map +1 -1
  225. package/dist/utils/retry-policy.js +1 -0
  226. package/dist/utils/retry-policy.js.map +1 -1
  227. package/dist/utils/secure-private-key.js +3 -1
  228. package/dist/utils/secure-private-key.js.map +1 -1
  229. package/dist/utils/signature-verifier.d.ts.map +1 -1
  230. package/dist/utils/signature-verifier.js +3 -1
  231. package/dist/utils/signature-verifier.js.map +1 -1
  232. package/examples/.env.example +2 -2
  233. package/examples/agent-room-management-example.ts +335 -0
  234. package/examples/basic-usage.ts +3 -4
  235. package/examples/claude-agent-x-follower/.env.example +3 -3
  236. package/examples/claude-agent-x-follower/QUICKSTART.md +3 -3
  237. package/examples/claude-agent-x-follower/README.md +3 -3
  238. package/examples/claude-agent-x-follower/index.ts +120 -96
  239. package/examples/n8n-teneo/.env.example +3 -3
  240. package/examples/n8n-teneo/README.md +2 -2
  241. package/examples/n8n-teneo/index.ts +54 -44
  242. package/examples/nestjs-dashboard/.env.example +11 -0
  243. package/examples/nestjs-dashboard/README.md +297 -0
  244. package/examples/nestjs-dashboard/nest-cli.json +10 -0
  245. package/examples/nestjs-dashboard/package.json +44 -0
  246. package/examples/nestjs-dashboard/pnpm-lock.yaml +3079 -0
  247. package/examples/nestjs-dashboard/src/app.controller.ts +24 -0
  248. package/examples/nestjs-dashboard/src/app.module.ts +15 -0
  249. package/examples/nestjs-dashboard/src/main.ts +32 -0
  250. package/examples/nestjs-dashboard/src/public/dashboard.html +1144 -0
  251. package/examples/nestjs-dashboard/src/teneo/agents.controller.ts +54 -0
  252. package/examples/nestjs-dashboard/src/teneo/events.controller.ts +65 -0
  253. package/examples/nestjs-dashboard/src/teneo/messages.controller.ts +47 -0
  254. package/examples/nestjs-dashboard/src/teneo/rooms.controller.ts +258 -0
  255. package/examples/nestjs-dashboard/src/teneo/teneo.module.ts +13 -0
  256. package/examples/nestjs-dashboard/src/teneo/teneo.service.ts +484 -0
  257. package/examples/nestjs-dashboard/tsconfig.json +22 -0
  258. package/examples/openai-teneo/.env.example +3 -3
  259. package/examples/openai-teneo/README.md +3 -3
  260. package/examples/openai-teneo/index.ts +82 -71
  261. package/examples/production-dashboard/.env.example +3 -3
  262. package/examples/production-dashboard/README.md +90 -13
  263. package/examples/production-dashboard/public/dashboard.html +1173 -601
  264. package/examples/production-dashboard/server.ts +349 -7
  265. package/examples/room-management-example.ts +282 -0
  266. package/examples/usage/.env.example +2 -2
  267. package/examples/usage/01-connect.ts +3 -4
  268. package/examples/usage/02-list-agents.ts +2 -3
  269. package/examples/usage/03-pick-agent.ts +2 -3
  270. package/examples/usage/04-find-by-capability.ts +2 -3
  271. package/examples/usage/05-webhook-example.ts +2 -3
  272. package/examples/usage/06-simple-api-server.ts +2 -3
  273. package/examples/usage/07-event-listener.ts +2 -3
  274. package/examples/usage/README.md +1 -1
  275. package/examples/webhook-integration.ts +1 -1
  276. package/examples/x-influencer-battle-server.ts +2 -2
  277. package/package.json +12 -1
  278. package/src/core/websocket-client.test.ts +8 -3
  279. package/src/core/websocket-client.ts +58 -4
  280. package/src/formatters/response-formatter.test.ts +2 -0
  281. package/src/formatters/response-formatter.ts +3 -3
  282. package/src/handlers/message-handlers/agent-details-response-handler.ts +42 -0
  283. package/src/handlers/message-handlers/agent-room-operation-response-handler.ts +77 -0
  284. package/src/handlers/message-handlers/agent-status-update-handler.ts +52 -0
  285. package/src/handlers/message-handlers/all-agents-response-handler.ts +39 -0
  286. package/src/handlers/message-handlers/auth-message-handler.ts +78 -5
  287. package/src/handlers/message-handlers/auth-success-handler.ts +63 -6
  288. package/src/handlers/message-handlers/base-handler.ts +20 -7
  289. package/src/handlers/message-handlers/index.ts +53 -0
  290. package/src/handlers/message-handlers/list-available-agents-handler.ts +41 -0
  291. package/src/handlers/message-handlers/list-room-agents-handler.ts +58 -0
  292. package/src/handlers/message-handlers/list-rooms-response-handler.ts +4 -2
  293. package/src/handlers/message-handlers/rate-limit-notification-handler.ts +45 -0
  294. package/src/handlers/message-handlers/regular-message-handler.ts +3 -2
  295. package/src/handlers/message-handlers/room-operation-response-handler.ts +102 -0
  296. package/src/handlers/message-handlers/subscribe-response-handler.ts +12 -2
  297. package/src/handlers/message-handlers/task-quote-handler.ts +31 -0
  298. package/src/handlers/message-handlers/types.ts +41 -7
  299. package/src/handlers/message-handlers/unsubscribe-response-handler.ts +12 -2
  300. package/src/handlers/message-handlers/user-authenticated-handler.ts +31 -0
  301. package/src/handlers/message-handlers/user-count-handler.ts +34 -0
  302. package/src/handlers/webhook-handler.test.ts +3 -2
  303. package/src/handlers/webhook-handler.ts +13 -7
  304. package/src/index.ts +21 -0
  305. package/src/managers/admin-manager.ts +249 -0
  306. package/src/managers/agent-registry.test.ts +2 -1
  307. package/src/managers/agent-registry.ts +170 -2
  308. package/src/managers/agent-room-manager.ts +665 -0
  309. package/src/managers/index.ts +15 -1
  310. package/src/managers/message-router.ts +215 -17
  311. package/src/managers/room-management-manager.ts +520 -0
  312. package/src/managers/room-manager.ts +15 -20
  313. package/src/payments/index.ts +22 -0
  314. package/src/payments/payment-client.ts +240 -0
  315. package/src/teneo-sdk.ts +806 -30
  316. package/src/types/categories.ts +45 -0
  317. package/src/types/config.ts +80 -7
  318. package/src/types/error-codes.ts +14 -0
  319. package/src/types/events.test.ts +1 -0
  320. package/src/types/events.ts +67 -0
  321. package/src/types/index.ts +111 -0
  322. package/src/types/messages.test.ts +2 -1
  323. package/src/types/messages.ts +677 -42
  324. package/src/utils/bounded-queue.test.ts +1 -1
  325. package/src/utils/bounded-queue.ts +2 -1
  326. package/src/utils/circuit-breaker.test.ts +1 -1
  327. package/src/utils/deduplication-cache.test.ts +1 -1
  328. package/src/utils/event-waiter.test.ts +1 -1
  329. package/src/utils/event-waiter.ts +3 -3
  330. package/src/utils/index.ts +7 -0
  331. package/src/utils/logger.ts +8 -8
  332. package/src/utils/pricing-resolver.ts +128 -0
  333. package/src/utils/rate-limiter.test.ts +1 -1
  334. package/src/utils/rate-limiter.ts +1 -0
  335. package/src/utils/signature-verifier.test.ts +2 -2
  336. package/src/utils/signature-verifier.ts +3 -2
  337. package/tests/.env.example +7 -0
  338. package/tests/direct-agent-test.ts +151 -0
  339. package/tests/integration/real-server.test.ts +2 -0
  340. package/tests/integration/room-management.test.ts +516 -0
  341. package/tests/integration/websocket.test.ts +5 -2
  342. package/tests/payment-flow-test.ts +147 -0
  343. package/tests/unit/handlers/agent-room-operation-response-handler.test.ts +382 -0
  344. package/tests/unit/handlers/agent-status-update-handler.test.ts +403 -0
  345. package/tests/unit/handlers/auth-success-handler-rooms.test.ts +697 -0
  346. package/tests/unit/handlers/list-available-agents-handler.test.ts +248 -0
  347. package/tests/unit/handlers/list-room-agents-handler.test.ts +290 -0
  348. package/tests/unit/handlers/room-operation-response-handler.test.ts +500 -0
  349. package/tests/unit/managers/agent-room-manager.test.ts +527 -0
  350. package/tests/unit/managers/room-management-manager.test.ts +420 -0
  351. package/tsconfig.json +2 -2
  352. package/vitest.config.ts +1 -0
@@ -8,11 +8,8 @@ exports.RegularMessageHandler = void 0;
8
8
  const types_1 = require("../../types");
9
9
  const base_handler_1 = require("./base-handler");
10
10
  class RegularMessageHandler extends base_handler_1.BaseMessageHandler {
11
- constructor() {
12
- super(...arguments);
13
- this.type = "message";
14
- this.schema = types_1.UserMessageSchema;
15
- }
11
+ type = "message";
12
+ schema = types_1.UserMessageSchema;
16
13
  async handleValidated(message, context) {
17
14
  // Check if this message has a 'from' field and content
18
15
  if (!message.from || !message.content) {
@@ -48,7 +45,8 @@ class RegularMessageHandler extends base_handler_1.BaseMessageHandler {
48
45
  contentType: message.content_type || "text/plain",
49
46
  success: true,
50
47
  timestamp: new Date(),
51
- raw: message, // Include raw message for request correlation
48
+ // Cast to TaskResponseMessage for request correlation (message format is compatible)
49
+ raw: message,
52
50
  humanized: typeof message.content === "string" ? message.content : JSON.stringify(message.content)
53
51
  };
54
52
  // Emit agent:response event
@@ -1 +1 @@
1
- {"version":3,"file":"regular-message-handler.js","sourceRoot":"","sources":["../../../src/handlers/message-handlers/regular-message-handler.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,uCAA6D;AAE7D,iDAAoD;AAGpD,MAAa,qBAAsB,SAAQ,iCAA+B;IAA1E;;QACW,SAAI,GAAG,SAAkB,CAAC;QAC1B,WAAM,GAAG,yBAAiB,CAAC;IAqDtC,CAAC;IAnDW,KAAK,CAAC,eAAe,CAAC,OAAoB,EAAE,OAAuB;QAC3E,uDAAuD;QACvD,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,+DAA+D,EAAE;gBACnF,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAG,SAAS,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;QAE3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE;YACtD,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,SAAS;YACT,WAAW;SACZ,CAAC,CAAC;QAEH,sEAAsE;QACtE,gCAAgC;QAChC,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;YAC9B,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE;gBACxD,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,cAAc,EACZ,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY;gBACxF,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC,CAAC;YAEH,uBAAuB;YACvB,MAAM,QAAQ,GAAkB;gBAC9B,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,IAAI,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE;gBACpD,OAAO,EAAE,OAAO,CAAC,IAAI;gBACrB,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,IAAI,OAAO;gBAC9C,OAAO,EACL,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;gBACzF,WAAW,EAAE,OAAO,CAAC,YAAY,IAAI,YAAY;gBACjD,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,GAAG,EAAE,OAAc,EAAE,8CAA8C;gBACnE,SAAS,EACP,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;aAC1F,CAAC;YAEF,4BAA4B;YAC5B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;CACF;AAvDD,sDAuDC"}
1
+ {"version":3,"file":"regular-message-handler.js","sourceRoot":"","sources":["../../../src/handlers/message-handlers/regular-message-handler.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,uCAAkF;AAElF,iDAAoD;AAGpD,MAAa,qBAAsB,SAAQ,iCAA+B;IAC/D,IAAI,GAAG,SAAkB,CAAC;IAC1B,MAAM,GAAG,yBAAiB,CAAC;IAE1B,KAAK,CAAC,eAAe,CAAC,OAAoB,EAAE,OAAuB;QAC3E,uDAAuD;QACvD,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACtC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,+DAA+D,EAAE;gBACnF,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAG,SAAS,CAAC,aAAa,EAAE,WAAW,EAAE,CAAC;QAE3D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE;YACtD,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,SAAS;YACT,WAAW;SACZ,CAAC,CAAC;QAEH,sEAAsE;QACtE,gCAAgC;QAChC,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;YAC9B,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE;gBACxD,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,cAAc,EACZ,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY;gBACxF,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC,CAAC;YAEH,uBAAuB;YACvB,MAAM,QAAQ,GAAkB;gBAC9B,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,IAAI,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE;gBACpD,OAAO,EAAE,OAAO,CAAC,IAAI;gBACrB,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,IAAI,OAAO;gBAC9C,OAAO,EACL,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;gBACzF,WAAW,EAAE,OAAO,CAAC,YAAY,IAAI,YAAY;gBACjD,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI,IAAI,EAAE;gBACrB,qFAAqF;gBACrF,GAAG,EAAE,OAAyC;gBAC9C,SAAS,EACP,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;aAC1F,CAAC;YAEF,4BAA4B;YAC5B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;CACF;AAxDD,sDAwDC"}
@@ -0,0 +1,328 @@
1
+ /**
2
+ * Handler for room_operation_response messages (v2.0.0)
3
+ * Processes responses from room CRUD operations (create, update, delete)
4
+ */
5
+ import { RoomOperationResponse } from "../../types";
6
+ import { BaseMessageHandler } from "./base-handler";
7
+ import { HandlerContext } from "./types";
8
+ export declare class RoomOperationResponseHandler extends BaseMessageHandler<RoomOperationResponse> {
9
+ readonly type: "room_operation_response";
10
+ readonly schema: import("zod").ZodObject<{
11
+ type: import("zod").ZodLiteral<"room_operation_response">;
12
+ data: import("zod").ZodObject<{
13
+ success: import("zod").ZodOptional<import("zod").ZodBoolean>;
14
+ message: import("zod").ZodOptional<import("zod").ZodString>;
15
+ room_id: import("zod").ZodOptional<import("zod").ZodString>;
16
+ room: import("zod").ZodOptional<import("zod").ZodObject<{
17
+ id: import("zod").ZodString;
18
+ name: import("zod").ZodOptional<import("zod").ZodString>;
19
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
20
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
21
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
22
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
23
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
24
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
25
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
26
+ id: import("zod").ZodString;
27
+ name: import("zod").ZodOptional<import("zod").ZodString>;
28
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
29
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
30
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
31
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
32
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
33
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
34
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
35
+ id: import("zod").ZodString;
36
+ name: import("zod").ZodOptional<import("zod").ZodString>;
37
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
38
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
39
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
40
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
41
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
42
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
43
+ }, import("zod").ZodTypeAny, "passthrough">>>;
44
+ max_rooms: import("zod").ZodOptional<import("zod").ZodNumber>;
45
+ current_count: import("zod").ZodOptional<import("zod").ZodNumber>;
46
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
47
+ success: import("zod").ZodOptional<import("zod").ZodBoolean>;
48
+ message: import("zod").ZodOptional<import("zod").ZodString>;
49
+ room_id: import("zod").ZodOptional<import("zod").ZodString>;
50
+ room: import("zod").ZodOptional<import("zod").ZodObject<{
51
+ id: import("zod").ZodString;
52
+ name: import("zod").ZodOptional<import("zod").ZodString>;
53
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
54
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
55
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
56
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
57
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
58
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
59
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
60
+ id: import("zod").ZodString;
61
+ name: import("zod").ZodOptional<import("zod").ZodString>;
62
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
63
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
64
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
65
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
66
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
67
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
68
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
69
+ id: import("zod").ZodString;
70
+ name: import("zod").ZodOptional<import("zod").ZodString>;
71
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
72
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
73
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
74
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
75
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
76
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
77
+ }, import("zod").ZodTypeAny, "passthrough">>>;
78
+ max_rooms: import("zod").ZodOptional<import("zod").ZodNumber>;
79
+ current_count: import("zod").ZodOptional<import("zod").ZodNumber>;
80
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
81
+ success: import("zod").ZodOptional<import("zod").ZodBoolean>;
82
+ message: import("zod").ZodOptional<import("zod").ZodString>;
83
+ room_id: import("zod").ZodOptional<import("zod").ZodString>;
84
+ room: import("zod").ZodOptional<import("zod").ZodObject<{
85
+ id: import("zod").ZodString;
86
+ name: import("zod").ZodOptional<import("zod").ZodString>;
87
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
88
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
89
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
90
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
91
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
92
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
93
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
94
+ id: import("zod").ZodString;
95
+ name: import("zod").ZodOptional<import("zod").ZodString>;
96
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
97
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
98
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
99
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
100
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
101
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
102
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
103
+ id: import("zod").ZodString;
104
+ name: import("zod").ZodOptional<import("zod").ZodString>;
105
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
106
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
107
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
108
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
109
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
110
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
111
+ }, import("zod").ZodTypeAny, "passthrough">>>;
112
+ max_rooms: import("zod").ZodOptional<import("zod").ZodNumber>;
113
+ current_count: import("zod").ZodOptional<import("zod").ZodNumber>;
114
+ }, import("zod").ZodTypeAny, "passthrough">>;
115
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
116
+ type: import("zod").ZodLiteral<"room_operation_response">;
117
+ data: import("zod").ZodObject<{
118
+ success: import("zod").ZodOptional<import("zod").ZodBoolean>;
119
+ message: import("zod").ZodOptional<import("zod").ZodString>;
120
+ room_id: import("zod").ZodOptional<import("zod").ZodString>;
121
+ room: import("zod").ZodOptional<import("zod").ZodObject<{
122
+ id: import("zod").ZodString;
123
+ name: import("zod").ZodOptional<import("zod").ZodString>;
124
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
125
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
126
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
127
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
128
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
129
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
130
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
131
+ id: import("zod").ZodString;
132
+ name: import("zod").ZodOptional<import("zod").ZodString>;
133
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
134
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
135
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
136
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
137
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
138
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
139
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
140
+ id: import("zod").ZodString;
141
+ name: import("zod").ZodOptional<import("zod").ZodString>;
142
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
143
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
144
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
145
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
146
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
147
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
148
+ }, import("zod").ZodTypeAny, "passthrough">>>;
149
+ max_rooms: import("zod").ZodOptional<import("zod").ZodNumber>;
150
+ current_count: import("zod").ZodOptional<import("zod").ZodNumber>;
151
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
152
+ success: import("zod").ZodOptional<import("zod").ZodBoolean>;
153
+ message: import("zod").ZodOptional<import("zod").ZodString>;
154
+ room_id: import("zod").ZodOptional<import("zod").ZodString>;
155
+ room: import("zod").ZodOptional<import("zod").ZodObject<{
156
+ id: import("zod").ZodString;
157
+ name: import("zod").ZodOptional<import("zod").ZodString>;
158
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
159
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
160
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
161
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
162
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
163
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
164
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
165
+ id: import("zod").ZodString;
166
+ name: import("zod").ZodOptional<import("zod").ZodString>;
167
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
168
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
169
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
170
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
171
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
172
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
173
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
174
+ id: import("zod").ZodString;
175
+ name: import("zod").ZodOptional<import("zod").ZodString>;
176
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
177
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
178
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
179
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
180
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
181
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
182
+ }, import("zod").ZodTypeAny, "passthrough">>>;
183
+ max_rooms: import("zod").ZodOptional<import("zod").ZodNumber>;
184
+ current_count: import("zod").ZodOptional<import("zod").ZodNumber>;
185
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
186
+ success: import("zod").ZodOptional<import("zod").ZodBoolean>;
187
+ message: import("zod").ZodOptional<import("zod").ZodString>;
188
+ room_id: import("zod").ZodOptional<import("zod").ZodString>;
189
+ room: import("zod").ZodOptional<import("zod").ZodObject<{
190
+ id: import("zod").ZodString;
191
+ name: import("zod").ZodOptional<import("zod").ZodString>;
192
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
193
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
194
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
195
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
196
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
197
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
198
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
199
+ id: import("zod").ZodString;
200
+ name: import("zod").ZodOptional<import("zod").ZodString>;
201
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
202
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
203
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
204
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
205
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
206
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
207
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
208
+ id: import("zod").ZodString;
209
+ name: import("zod").ZodOptional<import("zod").ZodString>;
210
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
211
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
212
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
213
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
214
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
215
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
216
+ }, import("zod").ZodTypeAny, "passthrough">>>;
217
+ max_rooms: import("zod").ZodOptional<import("zod").ZodNumber>;
218
+ current_count: import("zod").ZodOptional<import("zod").ZodNumber>;
219
+ }, import("zod").ZodTypeAny, "passthrough">>;
220
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
221
+ type: import("zod").ZodLiteral<"room_operation_response">;
222
+ data: import("zod").ZodObject<{
223
+ success: import("zod").ZodOptional<import("zod").ZodBoolean>;
224
+ message: import("zod").ZodOptional<import("zod").ZodString>;
225
+ room_id: import("zod").ZodOptional<import("zod").ZodString>;
226
+ room: import("zod").ZodOptional<import("zod").ZodObject<{
227
+ id: import("zod").ZodString;
228
+ name: import("zod").ZodOptional<import("zod").ZodString>;
229
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
230
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
231
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
232
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
233
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
234
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
235
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
236
+ id: import("zod").ZodString;
237
+ name: import("zod").ZodOptional<import("zod").ZodString>;
238
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
239
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
240
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
241
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
242
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
243
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
244
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
245
+ id: import("zod").ZodString;
246
+ name: import("zod").ZodOptional<import("zod").ZodString>;
247
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
248
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
249
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
250
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
251
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
252
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
253
+ }, import("zod").ZodTypeAny, "passthrough">>>;
254
+ max_rooms: import("zod").ZodOptional<import("zod").ZodNumber>;
255
+ current_count: import("zod").ZodOptional<import("zod").ZodNumber>;
256
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
257
+ success: import("zod").ZodOptional<import("zod").ZodBoolean>;
258
+ message: import("zod").ZodOptional<import("zod").ZodString>;
259
+ room_id: import("zod").ZodOptional<import("zod").ZodString>;
260
+ room: import("zod").ZodOptional<import("zod").ZodObject<{
261
+ id: import("zod").ZodString;
262
+ name: import("zod").ZodOptional<import("zod").ZodString>;
263
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
264
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
265
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
266
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
267
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
268
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
269
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
270
+ id: import("zod").ZodString;
271
+ name: import("zod").ZodOptional<import("zod").ZodString>;
272
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
273
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
274
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
275
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
276
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
277
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
278
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
279
+ id: import("zod").ZodString;
280
+ name: import("zod").ZodOptional<import("zod").ZodString>;
281
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
282
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
283
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
284
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
285
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
286
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
287
+ }, import("zod").ZodTypeAny, "passthrough">>>;
288
+ max_rooms: import("zod").ZodOptional<import("zod").ZodNumber>;
289
+ current_count: import("zod").ZodOptional<import("zod").ZodNumber>;
290
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
291
+ success: import("zod").ZodOptional<import("zod").ZodBoolean>;
292
+ message: import("zod").ZodOptional<import("zod").ZodString>;
293
+ room_id: import("zod").ZodOptional<import("zod").ZodString>;
294
+ room: import("zod").ZodOptional<import("zod").ZodObject<{
295
+ id: import("zod").ZodString;
296
+ name: import("zod").ZodOptional<import("zod").ZodString>;
297
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
298
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
299
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
300
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
301
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
302
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
303
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
304
+ id: import("zod").ZodString;
305
+ name: import("zod").ZodOptional<import("zod").ZodString>;
306
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
307
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
308
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
309
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
310
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
311
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
312
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
313
+ id: import("zod").ZodString;
314
+ name: import("zod").ZodOptional<import("zod").ZodString>;
315
+ description: import("zod").ZodNullable<import("zod").ZodOptional<import("zod").ZodString>>;
316
+ is_public: import("zod").ZodOptional<import("zod").ZodBoolean>;
317
+ created_by: import("zod").ZodOptional<import("zod").ZodString>;
318
+ created_at: import("zod").ZodOptional<import("zod").ZodString>;
319
+ updated_at: import("zod").ZodOptional<import("zod").ZodString>;
320
+ is_owner: import("zod").ZodOptional<import("zod").ZodBoolean>;
321
+ }, import("zod").ZodTypeAny, "passthrough">>>;
322
+ max_rooms: import("zod").ZodOptional<import("zod").ZodNumber>;
323
+ current_count: import("zod").ZodOptional<import("zod").ZodNumber>;
324
+ }, import("zod").ZodTypeAny, "passthrough">>;
325
+ }, import("zod").ZodTypeAny, "passthrough">>;
326
+ protected handleValidated(message: RoomOperationResponse, context: HandlerContext): void;
327
+ }
328
+ //# sourceMappingURL=room-operation-response-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"room-operation-response-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/message-handlers/room-operation-response-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,qBAAqB,EAA+B,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAIzC,qBAAa,4BAA6B,SAAQ,kBAAkB,CAAC,qBAAqB,CAAC;IACzF,QAAQ,CAAC,IAAI,EAAG,yBAAyB,CAAU;IACnD,QAAQ,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iDAA+B;IAE9C,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI;CAsFzF"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ /**
3
+ * Handler for room_operation_response messages (v2.0.0)
4
+ * Processes responses from room CRUD operations (create, update, delete)
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.RoomOperationResponseHandler = void 0;
8
+ const types_1 = require("../../types");
9
+ const base_handler_1 = require("./base-handler");
10
+ const events_1 = require("../../types/events");
11
+ const error_codes_1 = require("../../types/error-codes");
12
+ class RoomOperationResponseHandler extends base_handler_1.BaseMessageHandler {
13
+ type = "room_operation_response";
14
+ schema = types_1.RoomOperationResponseSchema;
15
+ handleValidated(message, context) {
16
+ const { success, message: errorMessage, room_id, room } = message.data;
17
+ context.logger.debug("Handling room_operation_response", {
18
+ success,
19
+ roomId: room_id,
20
+ hasRoom: !!room
21
+ });
22
+ if (!success) {
23
+ // Operation failed - emit error event
24
+ const error = new events_1.SDKError(errorMessage || "Room operation failed", error_codes_1.ErrorCode.OPERATION_FAILED);
25
+ // Try to determine operation type from message
26
+ // Note: Server should ideally send operation type in response
27
+ // For now we emit generic errors and specific listeners will catch relevant ones
28
+ this.emit(context, "room:create_error", error);
29
+ this.emit(context, "room:update_error", error, room_id);
30
+ this.emit(context, "room:delete_error", error, room_id);
31
+ // Send webhook
32
+ this.sendWebhook(context, "room_operation_error", {
33
+ success: false,
34
+ message: errorMessage,
35
+ room_id
36
+ });
37
+ return;
38
+ }
39
+ // Operation succeeded
40
+ if (room) {
41
+ // Create or Update operation (includes room object)
42
+ context.logger.info("Room operation succeeded", {
43
+ roomId: room.id,
44
+ roomName: room.name
45
+ });
46
+ // Determine if this was create or update based on whether we have the room cached
47
+ // Note: Ideally server would send operation type in response
48
+ // For now, handlers will emit both and listeners filter by room_id
49
+ // Update cache via room management manager if available
50
+ const roomManager = context.roomManagementManager;
51
+ if (roomManager && typeof roomManager.upsertRoom === "function") {
52
+ roomManager.upsertRoom(room);
53
+ }
54
+ // Emit success events
55
+ // The promise handlers in RoomManagementManager will filter by room_id
56
+ this.emit(context, "room:created", room);
57
+ this.emit(context, "room:updated", room);
58
+ // Send webhook
59
+ this.sendWebhook(context, "room_operation", {
60
+ success: true,
61
+ room,
62
+ message: "Room operation completed successfully"
63
+ });
64
+ }
65
+ else if (room_id) {
66
+ // Delete operation (only has room_id, no room object)
67
+ context.logger.info("Room deleted", { roomId: room_id });
68
+ // Remove from cache
69
+ const roomManager = context.roomManagementManager;
70
+ if (roomManager && typeof roomManager.removeRoom === "function") {
71
+ roomManager.removeRoom(room_id);
72
+ }
73
+ // Emit delete success
74
+ this.emit(context, "room:deleted", room_id);
75
+ // Send webhook
76
+ this.sendWebhook(context, "room_deleted", {
77
+ success: true,
78
+ room_id,
79
+ message: "Room deleted successfully"
80
+ });
81
+ }
82
+ else {
83
+ // Unexpected: success but no room or room_id
84
+ context.logger.warn("Room operation succeeded but no room data provided");
85
+ }
86
+ }
87
+ }
88
+ exports.RoomOperationResponseHandler = RoomOperationResponseHandler;
89
+ //# sourceMappingURL=room-operation-response-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"room-operation-response-handler.js","sourceRoot":"","sources":["../../../src/handlers/message-handlers/room-operation-response-handler.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,uCAAiF;AACjF,iDAAoD;AAEpD,+CAA8C;AAC9C,yDAAoD;AAEpD,MAAa,4BAA6B,SAAQ,iCAAyC;IAChF,IAAI,GAAG,yBAAkC,CAAC;IAC1C,MAAM,GAAG,mCAA2B,CAAC;IAEpC,eAAe,CAAC,OAA8B,EAAE,OAAuB;QAC/E,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;QAEvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE;YACvD,OAAO;YACP,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,CAAC,CAAC,IAAI;SAChB,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,sCAAsC;YACtC,MAAM,KAAK,GAAG,IAAI,iBAAQ,CACxB,YAAY,IAAI,uBAAuB,EACvC,uBAAS,CAAC,gBAAgB,CAC3B,CAAC;YAEF,+CAA+C;YAC/C,8DAA8D;YAC9D,iFAAiF;YACjF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAmB,EAAE,KAAK,CAAC,CAAC;YAC/C,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAExD,eAAe;YACf,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,sBAAsB,EAAE;gBAChD,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,YAAY;gBACrB,OAAO;aACR,CAAC,CAAC;YAEH,OAAO;QACT,CAAC;QAED,sBAAsB;QACtB,IAAI,IAAI,EAAE,CAAC;YACT,oDAAoD;YACpD,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;gBAC9C,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;aACpB,CAAC,CAAC;YAEH,kFAAkF;YAClF,6DAA6D;YAC7D,mEAAmE;YAEnE,wDAAwD;YACxD,MAAM,WAAW,GAAG,OAAO,CAAC,qBAAqB,CAAC;YAClD,IAAI,WAAW,IAAI,OAAO,WAAW,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;gBAChE,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;YAED,sBAAsB;YACtB,uEAAuE;YACvE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;YAEzC,eAAe;YACf,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE;gBAC1C,OAAO,EAAE,IAAI;gBACb,IAAI;gBACJ,OAAO,EAAE,uCAAuC;aACjD,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,sDAAsD;YACtD,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YAEzD,oBAAoB;YACpB,MAAM,WAAW,GAAG,OAAO,CAAC,qBAAqB,CAAC;YAClD,IAAI,WAAW,IAAI,OAAO,WAAW,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;gBAChE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAClC,CAAC;YAED,sBAAsB;YACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;YAE5C,eAAe;YACf,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,cAAc,EAAE;gBACxC,OAAO,EAAE,IAAI;gBACb,OAAO;gBACP,OAAO,EAAE,2BAA2B;aACrC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,6CAA6C;YAC7C,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;CACF;AA1FD,oEA0FC"}
@@ -37,45 +37,67 @@ export declare class SubscribeResponseHandler extends BaseMessageHandler<Subscri
37
37
  success: boolean;
38
38
  subscriptions?: string[] | undefined;
39
39
  }>;
40
- }, "strip", import("zod").ZodTypeAny, {
41
- type: "subscribe";
42
- data: {
40
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
41
+ content: import("zod").ZodOptional<import("zod").ZodAny>;
42
+ content_type: import("zod").ZodOptional<import("zod").ZodEnum<["text/plain", "text/markdown", "text/html", "application/json", "image/*", "STRING", "JSON", "MD", "ARRAY"]>>;
43
+ from: import("zod").ZodOptional<import("zod").ZodString>;
44
+ to: import("zod").ZodOptional<import("zod").ZodString>;
45
+ room: import("zod").ZodOptional<import("zod").ZodString>;
46
+ timestamp: import("zod").ZodOptional<import("zod").ZodString>;
47
+ signature: import("zod").ZodOptional<import("zod").ZodString>;
48
+ publicKey: import("zod").ZodOptional<import("zod").ZodString>;
49
+ reasoning: import("zod").ZodOptional<import("zod").ZodString>;
50
+ task_id: import("zod").ZodOptional<import("zod").ZodString>;
51
+ id: import("zod").ZodOptional<import("zod").ZodString>;
52
+ } & {
53
+ type: import("zod").ZodLiteral<"subscribe">;
54
+ data: import("zod").ZodObject<{
55
+ room_id: import("zod").ZodString;
56
+ success: import("zod").ZodBoolean;
57
+ message: import("zod").ZodString;
58
+ subscriptions: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
59
+ }, "strip", import("zod").ZodTypeAny, {
60
+ message: string;
61
+ room_id: string;
62
+ success: boolean;
63
+ subscriptions?: string[] | undefined;
64
+ }, {
65
+ message: string;
66
+ room_id: string;
67
+ success: boolean;
68
+ subscriptions?: string[] | undefined;
69
+ }>;
70
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
71
+ content: import("zod").ZodOptional<import("zod").ZodAny>;
72
+ content_type: import("zod").ZodOptional<import("zod").ZodEnum<["text/plain", "text/markdown", "text/html", "application/json", "image/*", "STRING", "JSON", "MD", "ARRAY"]>>;
73
+ from: import("zod").ZodOptional<import("zod").ZodString>;
74
+ to: import("zod").ZodOptional<import("zod").ZodString>;
75
+ room: import("zod").ZodOptional<import("zod").ZodString>;
76
+ timestamp: import("zod").ZodOptional<import("zod").ZodString>;
77
+ signature: import("zod").ZodOptional<import("zod").ZodString>;
78
+ publicKey: import("zod").ZodOptional<import("zod").ZodString>;
79
+ reasoning: import("zod").ZodOptional<import("zod").ZodString>;
80
+ task_id: import("zod").ZodOptional<import("zod").ZodString>;
81
+ id: import("zod").ZodOptional<import("zod").ZodString>;
82
+ } & {
83
+ type: import("zod").ZodLiteral<"subscribe">;
84
+ data: import("zod").ZodObject<{
85
+ room_id: import("zod").ZodString;
86
+ success: import("zod").ZodBoolean;
87
+ message: import("zod").ZodString;
88
+ subscriptions: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
89
+ }, "strip", import("zod").ZodTypeAny, {
43
90
  message: string;
44
91
  room_id: string;
45
92
  success: boolean;
46
93
  subscriptions?: string[] | undefined;
47
- };
48
- id?: string | undefined;
49
- room?: string | undefined;
50
- content?: any;
51
- content_type?: "text/plain" | "text/markdown" | "text/html" | "application/json" | "image/*" | "STRING" | "JSON" | "MD" | "ARRAY" | undefined;
52
- from?: string | undefined;
53
- to?: string | undefined;
54
- timestamp?: string | undefined;
55
- signature?: string | undefined;
56
- publicKey?: string | undefined;
57
- reasoning?: string | undefined;
58
- task_id?: string | undefined;
59
- }, {
60
- type: "subscribe";
61
- data: {
94
+ }, {
62
95
  message: string;
63
96
  room_id: string;
64
97
  success: boolean;
65
98
  subscriptions?: string[] | undefined;
66
- };
67
- id?: string | undefined;
68
- room?: string | undefined;
69
- content?: any;
70
- content_type?: "text/plain" | "text/markdown" | "text/html" | "application/json" | "image/*" | "STRING" | "JSON" | "MD" | "ARRAY" | undefined;
71
- from?: string | undefined;
72
- to?: string | undefined;
73
- timestamp?: string | undefined;
74
- signature?: string | undefined;
75
- publicKey?: string | undefined;
76
- reasoning?: string | undefined;
77
- task_id?: string | undefined;
78
- }>;
99
+ }>;
100
+ }, import("zod").ZodTypeAny, "passthrough">>;
79
101
  protected handleValidated(message: SubscribeResponse, context: HandlerContext): void;
80
102
  }
81
103
  //# sourceMappingURL=subscribe-response-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"subscribe-response-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/message-handlers/subscribe-response-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAA2B,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,qBAAa,wBAAyB,SAAQ,kBAAkB,CAAC,iBAAiB,CAAC;IACjF,QAAQ,CAAC,IAAI,EAAG,WAAW,CAAU;IACrC,QAAQ,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAA2B;IAE1C,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI;CAiCrF"}
1
+ {"version":3,"file":"subscribe-response-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/message-handlers/subscribe-response-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,iBAAiB,EAAsC,MAAM,aAAa,CAAC;AAEpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,qBAAa,wBAAyB,SAAQ,kBAAkB,CAAC,iBAAiB,CAAC;IACjF,QAAQ,CAAC,IAAI,EAAG,WAAW,CAAU;IACrC,QAAQ,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iDAA2B;IAE1C,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI;CA0CrF"}
@@ -6,13 +6,11 @@
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.SubscribeResponseHandler = void 0;
8
8
  const types_1 = require("../../types");
9
+ const events_1 = require("../../types/events");
9
10
  const base_handler_1 = require("./base-handler");
10
11
  class SubscribeResponseHandler extends base_handler_1.BaseMessageHandler {
11
- constructor() {
12
- super(...arguments);
13
- this.type = "subscribe";
14
- this.schema = types_1.SubscribeResponseSchema;
15
- }
12
+ type = "subscribe";
13
+ schema = types_1.SubscribeResponseSchema;
16
14
  handleValidated(message, context) {
17
15
  context.logger.debug("Handling subscribe response", {
18
16
  roomId: message.data.room_id,
@@ -40,7 +38,7 @@ class SubscribeResponseHandler extends base_handler_1.BaseMessageHandler {
40
38
  message: message.data.message
41
39
  });
42
40
  // Emit error event
43
- this.emit(context, "error", new Error(`Subscription failed: ${message.data.message}`));
41
+ this.emit(context, "error", new events_1.SDKError(`Subscription failed: ${message.data.message}`, types_1.ErrorCode.OPERATION_FAILED, { roomId: message.data.room_id }, true));
44
42
  }
45
43
  }
46
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"subscribe-response-handler.js","sourceRoot":"","sources":["../../../src/handlers/message-handlers/subscribe-response-handler.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,uCAAyE;AACzE,iDAAoD;AAGpD,MAAa,wBAAyB,SAAQ,iCAAqC;IAAnF;;QACW,SAAI,GAAG,WAAoB,CAAC;QAC5B,WAAM,GAAG,+BAAuB,CAAC;IAmC5C,CAAC;IAjCW,eAAe,CAAC,OAA0B,EAAE,OAAuB;QAC3E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE;YAClD,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;YAC5B,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;SAC9B,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACzB,6DAA6D;YAC7D,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACtD,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACtE,CAAC;YAED,6BAA6B;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,EAAE;gBACpC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;gBAC5B,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE;aAChD,CAAC,CAAC;YAEH,iCAAiC;YACjC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,iBAAiB,EAAE;gBAC3C,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;gBAC5B,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa;aAC1C,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;gBAC9C,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;gBAC5B,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;aAC9B,CAAC,CAAC;YAEH,mBAAmB;YACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACzF,CAAC;IACH,CAAC;CACF;AArCD,4DAqCC"}
1
+ {"version":3,"file":"subscribe-response-handler.js","sourceRoot":"","sources":["../../../src/handlers/message-handlers/subscribe-response-handler.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,uCAAoF;AACpF,+CAA8C;AAC9C,iDAAoD;AAGpD,MAAa,wBAAyB,SAAQ,iCAAqC;IACxE,IAAI,GAAG,WAAoB,CAAC;IAC5B,MAAM,GAAG,+BAAuB,CAAC;IAEhC,eAAe,CAAC,OAA0B,EAAE,OAAuB;QAC3E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE;YAClD,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;YAC5B,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;SAC9B,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACzB,6DAA6D;YAC7D,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACtD,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACtE,CAAC;YAED,6BAA6B;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,iBAAiB,EAAE;gBACpC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;gBAC5B,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE;aAChD,CAAC,CAAC;YAEH,iCAAiC;YACjC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,iBAAiB,EAAE;gBAC3C,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;gBAC5B,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa;aAC1C,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;gBAC9C,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;gBAC5B,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO;aAC9B,CAAC,CAAC;YAEH,mBAAmB;YACnB,IAAI,CAAC,IAAI,CACP,OAAO,EACP,OAAO,EACP,IAAI,iBAAQ,CACV,wBAAwB,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,EAC9C,iBAAS,CAAC,gBAAgB,EAC1B,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,EAChC,IAAI,CACL,CACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AA9CD,4DA8CC"}