@tambo-ai/react 0.74.1 → 1.0.0-rc.3

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 (693) hide show
  1. package/README.md +46 -449
  2. package/dist/hoc/with-tambo-interactable.d.ts +8 -0
  3. package/dist/hoc/with-tambo-interactable.d.ts.map +1 -1
  4. package/dist/hoc/with-tambo-interactable.js +16 -13
  5. package/dist/hoc/with-tambo-interactable.js.map +1 -1
  6. package/dist/hoc/with-tambo-interactable.test.js +15 -3
  7. package/dist/hoc/with-tambo-interactable.test.js.map +1 -1
  8. package/dist/hooks/use-tambo-voice.test.js +3 -0
  9. package/dist/hooks/use-tambo-voice.test.js.map +1 -1
  10. package/dist/index.d.ts +7 -25
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +7 -59
  13. package/dist/index.js.map +1 -1
  14. package/dist/mcp/mcp-hooks.js +5 -5
  15. package/dist/mcp/mcp-hooks.js.map +1 -1
  16. package/dist/mcp/mcp-hooks.test.js +69 -0
  17. package/dist/mcp/mcp-hooks.test.js.map +1 -1
  18. package/dist/mcp/tambo-mcp-provider.test.js +24 -0
  19. package/dist/mcp/tambo-mcp-provider.test.js.map +1 -1
  20. package/dist/mcp/use-mcp-servers.test.js +9 -0
  21. package/dist/mcp/use-mcp-servers.test.js.map +1 -1
  22. package/dist/model/component-metadata.d.ts +4 -4
  23. package/dist/model/component-metadata.js.map +1 -1
  24. package/dist/providers/tambo-client-provider.d.ts +12 -0
  25. package/dist/providers/tambo-client-provider.d.ts.map +1 -1
  26. package/dist/providers/tambo-client-provider.js +8 -3
  27. package/dist/providers/tambo-client-provider.js.map +1 -1
  28. package/dist/providers/tambo-interactable-provider.d.ts +1 -1
  29. package/dist/providers/tambo-interactable-provider.d.ts.map +1 -1
  30. package/dist/providers/tambo-interactable-provider.js +8 -0
  31. package/dist/providers/tambo-interactable-provider.js.map +1 -1
  32. package/dist/providers/tambo-interactable-provider.test.js +47 -0
  33. package/dist/providers/tambo-interactable-provider.test.js.map +1 -1
  34. package/dist/providers/tambo-interactables-additional-context-edge-cases.test.js +2 -10
  35. package/dist/providers/tambo-interactables-additional-context-edge-cases.test.js.map +1 -1
  36. package/dist/providers/tambo-interactables-additional-context.test.js +3 -19
  37. package/dist/providers/tambo-interactables-additional-context.test.js.map +1 -1
  38. package/dist/providers/tambo-mcp-token-provider.d.ts +8 -17
  39. package/dist/providers/tambo-mcp-token-provider.d.ts.map +1 -1
  40. package/dist/providers/tambo-mcp-token-provider.js +20 -97
  41. package/dist/providers/tambo-mcp-token-provider.js.map +1 -1
  42. package/dist/testing/tools.d.ts +3 -3
  43. package/dist/testing/tools.d.ts.map +1 -1
  44. package/dist/testing/tools.js.map +1 -1
  45. package/dist/util/registry-validators.js +1 -1
  46. package/dist/util/registry-validators.js.map +1 -1
  47. package/dist/util/resource-content-resolver.test.js +1 -1
  48. package/dist/util/resource-content-resolver.test.js.map +1 -1
  49. package/dist/v1/__tests__/v1-interactables.test.js +1 -1
  50. package/dist/v1/__tests__/v1-interactables.test.js.map +1 -1
  51. package/dist/v1/components/v1-component-renderer.d.ts +9 -9
  52. package/dist/v1/components/v1-component-renderer.d.ts.map +1 -1
  53. package/dist/v1/components/v1-component-renderer.js +13 -13
  54. package/dist/v1/components/v1-component-renderer.js.map +1 -1
  55. package/dist/v1/components/v1-component-renderer.test.js +15 -15
  56. package/dist/v1/components/v1-component-renderer.test.js.map +1 -1
  57. package/{esm/hooks/use-current-message.d.ts → dist/v1/hooks/use-tambo-current-message.d.ts} +30 -9
  58. package/dist/v1/hooks/use-tambo-current-message.d.ts.map +1 -0
  59. package/dist/{hooks/use-current-message.js → v1/hooks/use-tambo-current-message.js} +13 -8
  60. package/dist/v1/hooks/use-tambo-current-message.js.map +1 -0
  61. package/dist/v1/hooks/use-tambo-v1-auth-state.d.ts +11 -0
  62. package/dist/v1/hooks/use-tambo-v1-auth-state.d.ts.map +1 -0
  63. package/dist/v1/hooks/use-tambo-v1-auth-state.js +48 -0
  64. package/dist/v1/hooks/use-tambo-v1-auth-state.js.map +1 -0
  65. package/dist/v1/hooks/use-tambo-v1-auth-state.test.d.ts +2 -0
  66. package/dist/v1/hooks/use-tambo-v1-auth-state.test.d.ts.map +1 -0
  67. package/dist/v1/hooks/use-tambo-v1-auth-state.test.js +105 -0
  68. package/dist/v1/hooks/use-tambo-v1-auth-state.test.js.map +1 -0
  69. package/dist/v1/hooks/use-tambo-v1-component-state.d.ts +7 -6
  70. package/dist/v1/hooks/use-tambo-v1-component-state.d.ts.map +1 -1
  71. package/dist/v1/hooks/use-tambo-v1-component-state.js +101 -28
  72. package/dist/v1/hooks/use-tambo-v1-component-state.js.map +1 -1
  73. package/dist/v1/hooks/use-tambo-v1-component-state.test.js +150 -25
  74. package/dist/v1/hooks/use-tambo-v1-component-state.test.js.map +1 -1
  75. package/dist/v1/hooks/use-tambo-v1-messages.d.ts +9 -9
  76. package/dist/v1/hooks/use-tambo-v1-messages.d.ts.map +1 -1
  77. package/dist/v1/hooks/use-tambo-v1-messages.js +4 -4
  78. package/dist/v1/hooks/use-tambo-v1-messages.js.map +1 -1
  79. package/dist/v1/hooks/use-tambo-v1-messages.test.js +14 -6
  80. package/dist/v1/hooks/use-tambo-v1-messages.test.js.map +1 -1
  81. package/dist/v1/hooks/use-tambo-v1-send-message.d.ts +21 -3
  82. package/dist/v1/hooks/use-tambo-v1-send-message.d.ts.map +1 -1
  83. package/dist/v1/hooks/use-tambo-v1-send-message.js +92 -17
  84. package/dist/v1/hooks/use-tambo-v1-send-message.js.map +1 -1
  85. package/dist/v1/hooks/use-tambo-v1-send-message.test.js +315 -42
  86. package/dist/v1/hooks/use-tambo-v1-send-message.test.js.map +1 -1
  87. package/dist/v1/hooks/use-tambo-v1-stream-status.d.ts +7 -7
  88. package/dist/v1/hooks/use-tambo-v1-stream-status.d.ts.map +1 -1
  89. package/dist/v1/hooks/use-tambo-v1-stream-status.js +14 -16
  90. package/dist/v1/hooks/use-tambo-v1-stream-status.js.map +1 -1
  91. package/dist/v1/hooks/use-tambo-v1-stream-status.test.js +30 -30
  92. package/dist/v1/hooks/use-tambo-v1-stream-status.test.js.map +1 -1
  93. package/dist/v1/hooks/use-tambo-v1-suggestions.d.ts +7 -7
  94. package/dist/v1/hooks/use-tambo-v1-suggestions.d.ts.map +1 -1
  95. package/dist/v1/hooks/use-tambo-v1-suggestions.js +9 -9
  96. package/dist/v1/hooks/use-tambo-v1-suggestions.js.map +1 -1
  97. package/dist/v1/hooks/use-tambo-v1-suggestions.test.js +44 -44
  98. package/dist/v1/hooks/use-tambo-v1-suggestions.test.js.map +1 -1
  99. package/dist/v1/hooks/use-tambo-v1-thread-input.d.ts +3 -3
  100. package/dist/v1/hooks/use-tambo-v1-thread-input.d.ts.map +1 -1
  101. package/dist/v1/hooks/use-tambo-v1-thread-input.js +4 -4
  102. package/dist/v1/hooks/use-tambo-v1-thread-input.js.map +1 -1
  103. package/dist/v1/hooks/use-tambo-v1-thread-input.test.js +40 -27
  104. package/dist/v1/hooks/use-tambo-v1-thread-input.test.js.map +1 -1
  105. package/dist/v1/hooks/use-tambo-v1-thread-list.d.ts +4 -4
  106. package/dist/v1/hooks/use-tambo-v1-thread-list.d.ts.map +1 -1
  107. package/dist/v1/hooks/use-tambo-v1-thread-list.js +8 -4
  108. package/dist/v1/hooks/use-tambo-v1-thread-list.js.map +1 -1
  109. package/dist/v1/hooks/use-tambo-v1-thread-list.test.js +18 -16
  110. package/dist/v1/hooks/use-tambo-v1-thread-list.test.js.map +1 -1
  111. package/dist/v1/hooks/use-tambo-v1-thread.d.ts +3 -3
  112. package/dist/v1/hooks/use-tambo-v1-thread.d.ts.map +1 -1
  113. package/dist/v1/hooks/use-tambo-v1-thread.js +7 -3
  114. package/dist/v1/hooks/use-tambo-v1-thread.js.map +1 -1
  115. package/dist/v1/hooks/use-tambo-v1-thread.test.js +10 -4
  116. package/dist/v1/hooks/use-tambo-v1-thread.test.js.map +1 -1
  117. package/dist/v1/hooks/use-tambo-v1.d.ts +16 -5
  118. package/dist/v1/hooks/use-tambo-v1.d.ts.map +1 -1
  119. package/dist/v1/hooks/use-tambo-v1.js +14 -6
  120. package/dist/v1/hooks/use-tambo-v1.js.map +1 -1
  121. package/dist/v1/hooks/use-tambo-v1.test.js +65 -43
  122. package/dist/v1/hooks/use-tambo-v1.test.js.map +1 -1
  123. package/dist/v1/index.d.ts +34 -27
  124. package/dist/v1/index.d.ts.map +1 -1
  125. package/dist/v1/index.js +48 -35
  126. package/dist/v1/index.js.map +1 -1
  127. package/dist/v1/providers/tambo-v1-provider.d.ts +35 -20
  128. package/dist/v1/providers/tambo-v1-provider.d.ts.map +1 -1
  129. package/dist/v1/providers/tambo-v1-provider.js +63 -26
  130. package/dist/v1/providers/tambo-v1-provider.js.map +1 -1
  131. package/dist/v1/providers/tambo-v1-provider.test.js +40 -23
  132. package/dist/v1/providers/tambo-v1-provider.test.js.map +1 -1
  133. package/dist/v1/providers/tambo-v1-stream-context.d.ts +21 -15
  134. package/dist/v1/providers/tambo-v1-stream-context.d.ts.map +1 -1
  135. package/dist/v1/providers/tambo-v1-stream-context.js +66 -27
  136. package/dist/v1/providers/tambo-v1-stream-context.js.map +1 -1
  137. package/dist/v1/providers/tambo-v1-stream-context.test.js +14 -5
  138. package/dist/v1/providers/tambo-v1-stream-context.test.js.map +1 -1
  139. package/dist/v1/providers/tambo-v1-stub-provider.d.ts +9 -9
  140. package/dist/v1/providers/tambo-v1-stub-provider.d.ts.map +1 -1
  141. package/dist/v1/providers/tambo-v1-stub-provider.js +11 -7
  142. package/dist/v1/providers/tambo-v1-stub-provider.js.map +1 -1
  143. package/dist/v1/providers/tambo-v1-stub-provider.test.js +25 -25
  144. package/dist/v1/providers/tambo-v1-stub-provider.test.js.map +1 -1
  145. package/dist/v1/providers/tambo-v1-thread-input-provider.d.ts +20 -9
  146. package/dist/v1/providers/tambo-v1-thread-input-provider.d.ts.map +1 -1
  147. package/dist/v1/providers/tambo-v1-thread-input-provider.js +25 -16
  148. package/dist/v1/providers/tambo-v1-thread-input-provider.js.map +1 -1
  149. package/dist/v1/types/auth.d.ts +24 -0
  150. package/dist/v1/types/auth.d.ts.map +1 -0
  151. package/dist/{model/tambo-thread.js → v1/types/auth.js} +1 -1
  152. package/dist/v1/types/auth.js.map +1 -0
  153. package/dist/v1/types/component.d.ts +3 -3
  154. package/dist/v1/types/component.d.ts.map +1 -1
  155. package/dist/v1/types/component.js +2 -2
  156. package/dist/v1/types/component.js.map +1 -1
  157. package/dist/v1/types/event.d.ts +1 -1
  158. package/dist/v1/types/event.js +1 -1
  159. package/dist/v1/types/event.js.map +1 -1
  160. package/dist/v1/types/message.d.ts +19 -12
  161. package/dist/v1/types/message.d.ts.map +1 -1
  162. package/dist/v1/types/message.js +1 -1
  163. package/dist/v1/types/message.js.map +1 -1
  164. package/dist/v1/types/thread.d.ts +8 -6
  165. package/dist/v1/types/thread.d.ts.map +1 -1
  166. package/dist/v1/types/thread.js +1 -1
  167. package/dist/v1/types/thread.js.map +1 -1
  168. package/dist/v1/types/tool-choice.d.ts +8 -0
  169. package/dist/v1/types/tool-choice.d.ts.map +1 -0
  170. package/dist/v1/types/tool-choice.js +3 -0
  171. package/dist/v1/types/tool-choice.js.map +1 -0
  172. package/dist/v1/utils/component-renderer.d.ts +11 -5
  173. package/dist/v1/utils/component-renderer.d.ts.map +1 -1
  174. package/dist/v1/utils/component-renderer.js +16 -7
  175. package/dist/v1/utils/component-renderer.js.map +1 -1
  176. package/dist/v1/utils/component-renderer.test.js +7 -7
  177. package/dist/v1/utils/component-renderer.test.js.map +1 -1
  178. package/dist/v1/utils/event-accumulator.d.ts +34 -8
  179. package/dist/v1/utils/event-accumulator.d.ts.map +1 -1
  180. package/dist/v1/utils/event-accumulator.js +90 -27
  181. package/dist/v1/utils/event-accumulator.js.map +1 -1
  182. package/dist/v1/utils/event-accumulator.test.js +149 -8
  183. package/dist/v1/utils/event-accumulator.test.js.map +1 -1
  184. package/dist/v1/utils/keyed-throttle.d.ts +42 -0
  185. package/dist/v1/utils/keyed-throttle.d.ts.map +1 -0
  186. package/dist/v1/utils/keyed-throttle.js +86 -0
  187. package/dist/v1/utils/keyed-throttle.js.map +1 -0
  188. package/dist/v1/utils/keyed-throttle.test.d.ts +2 -0
  189. package/dist/v1/utils/keyed-throttle.test.d.ts.map +1 -0
  190. package/dist/v1/utils/keyed-throttle.test.js +147 -0
  191. package/dist/v1/utils/keyed-throttle.test.js.map +1 -0
  192. package/dist/v1/utils/registry-conversion.d.ts +18 -18
  193. package/dist/v1/utils/registry-conversion.d.ts.map +1 -1
  194. package/dist/v1/utils/registry-conversion.js +25 -23
  195. package/dist/v1/utils/registry-conversion.js.map +1 -1
  196. package/dist/v1/utils/registry-conversion.test.js +23 -0
  197. package/dist/v1/utils/registry-conversion.test.js.map +1 -1
  198. package/dist/v1/utils/stream-handler.d.ts +1 -1
  199. package/dist/v1/utils/stream-handler.js +1 -1
  200. package/dist/v1/utils/stream-handler.js.map +1 -1
  201. package/dist/v1/utils/thread-utils.d.ts +2 -2
  202. package/dist/v1/utils/thread-utils.d.ts.map +1 -1
  203. package/dist/v1/utils/thread-utils.js.map +1 -1
  204. package/dist/v1/utils/tool-call-tracker.d.ts +11 -1
  205. package/dist/v1/utils/tool-call-tracker.d.ts.map +1 -1
  206. package/dist/v1/utils/tool-call-tracker.js +14 -1
  207. package/dist/v1/utils/tool-call-tracker.js.map +1 -1
  208. package/dist/v1/utils/tool-call-tracker.test.d.ts +2 -0
  209. package/dist/v1/utils/tool-call-tracker.test.d.ts.map +1 -0
  210. package/dist/v1/utils/tool-call-tracker.test.js +67 -0
  211. package/dist/v1/utils/tool-call-tracker.test.js.map +1 -0
  212. package/dist/v1/utils/tool-executor.d.ts +35 -1
  213. package/dist/v1/utils/tool-executor.d.ts.map +1 -1
  214. package/dist/v1/utils/tool-executor.js +57 -2
  215. package/dist/v1/utils/tool-executor.js.map +1 -1
  216. package/dist/v1/utils/tool-executor.test.js +211 -0
  217. package/dist/v1/utils/tool-executor.test.js.map +1 -1
  218. package/esm/hoc/with-tambo-interactable.d.ts +8 -0
  219. package/esm/hoc/with-tambo-interactable.d.ts.map +1 -1
  220. package/esm/hoc/with-tambo-interactable.js +15 -12
  221. package/esm/hoc/with-tambo-interactable.js.map +1 -1
  222. package/esm/hoc/with-tambo-interactable.test.js +13 -1
  223. package/esm/hoc/with-tambo-interactable.test.js.map +1 -1
  224. package/esm/hooks/use-tambo-voice.test.js +3 -0
  225. package/esm/hooks/use-tambo-voice.test.js.map +1 -1
  226. package/esm/index.d.ts +7 -25
  227. package/esm/index.d.ts.map +1 -1
  228. package/esm/index.js +7 -21
  229. package/esm/index.js.map +1 -1
  230. package/esm/mcp/mcp-hooks.js +1 -1
  231. package/esm/mcp/mcp-hooks.js.map +1 -1
  232. package/esm/mcp/mcp-hooks.test.js +69 -0
  233. package/esm/mcp/mcp-hooks.test.js.map +1 -1
  234. package/esm/mcp/tambo-mcp-provider.test.js +24 -0
  235. package/esm/mcp/tambo-mcp-provider.test.js.map +1 -1
  236. package/esm/mcp/use-mcp-servers.test.js +9 -0
  237. package/esm/mcp/use-mcp-servers.test.js.map +1 -1
  238. package/esm/model/component-metadata.d.ts +4 -4
  239. package/esm/model/component-metadata.js.map +1 -1
  240. package/esm/providers/tambo-client-provider.d.ts +12 -0
  241. package/esm/providers/tambo-client-provider.d.ts.map +1 -1
  242. package/esm/providers/tambo-client-provider.js +8 -3
  243. package/esm/providers/tambo-client-provider.js.map +1 -1
  244. package/esm/providers/tambo-interactable-provider.d.ts +1 -1
  245. package/esm/providers/tambo-interactable-provider.d.ts.map +1 -1
  246. package/esm/providers/tambo-interactable-provider.js +8 -0
  247. package/esm/providers/tambo-interactable-provider.js.map +1 -1
  248. package/esm/providers/tambo-interactable-provider.test.js +47 -0
  249. package/esm/providers/tambo-interactable-provider.test.js.map +1 -1
  250. package/esm/providers/tambo-interactables-additional-context-edge-cases.test.js +2 -10
  251. package/esm/providers/tambo-interactables-additional-context-edge-cases.test.js.map +1 -1
  252. package/esm/providers/tambo-interactables-additional-context.test.js +3 -19
  253. package/esm/providers/tambo-interactables-additional-context.test.js.map +1 -1
  254. package/esm/providers/tambo-mcp-token-provider.d.ts +8 -17
  255. package/esm/providers/tambo-mcp-token-provider.d.ts.map +1 -1
  256. package/esm/providers/tambo-mcp-token-provider.js +20 -97
  257. package/esm/providers/tambo-mcp-token-provider.js.map +1 -1
  258. package/esm/testing/tools.d.ts +3 -3
  259. package/esm/testing/tools.d.ts.map +1 -1
  260. package/esm/testing/tools.js.map +1 -1
  261. package/esm/util/registry-validators.js +1 -1
  262. package/esm/util/registry-validators.js.map +1 -1
  263. package/esm/util/resource-content-resolver.test.js +1 -1
  264. package/esm/util/resource-content-resolver.test.js.map +1 -1
  265. package/esm/v1/__tests__/v1-interactables.test.js +1 -1
  266. package/esm/v1/__tests__/v1-interactables.test.js.map +1 -1
  267. package/esm/v1/components/v1-component-renderer.d.ts +9 -9
  268. package/esm/v1/components/v1-component-renderer.d.ts.map +1 -1
  269. package/esm/v1/components/v1-component-renderer.js +12 -12
  270. package/esm/v1/components/v1-component-renderer.js.map +1 -1
  271. package/esm/v1/components/v1-component-renderer.test.js +16 -16
  272. package/esm/v1/components/v1-component-renderer.test.js.map +1 -1
  273. package/{dist/hooks/use-current-message.d.ts → esm/v1/hooks/use-tambo-current-message.d.ts} +30 -9
  274. package/esm/v1/hooks/use-tambo-current-message.d.ts.map +1 -0
  275. package/esm/{hooks/use-current-message.js → v1/hooks/use-tambo-current-message.js} +13 -8
  276. package/esm/v1/hooks/use-tambo-current-message.js.map +1 -0
  277. package/esm/v1/hooks/use-tambo-v1-auth-state.d.ts +11 -0
  278. package/esm/v1/hooks/use-tambo-v1-auth-state.d.ts.map +1 -0
  279. package/esm/v1/hooks/use-tambo-v1-auth-state.js +45 -0
  280. package/esm/v1/hooks/use-tambo-v1-auth-state.js.map +1 -0
  281. package/esm/v1/hooks/use-tambo-v1-auth-state.test.d.ts +2 -0
  282. package/esm/v1/hooks/use-tambo-v1-auth-state.test.d.ts.map +1 -0
  283. package/esm/v1/hooks/use-tambo-v1-auth-state.test.js +100 -0
  284. package/esm/v1/hooks/use-tambo-v1-auth-state.test.js.map +1 -0
  285. package/esm/v1/hooks/use-tambo-v1-component-state.d.ts +7 -6
  286. package/esm/v1/hooks/use-tambo-v1-component-state.d.ts.map +1 -1
  287. package/esm/v1/hooks/use-tambo-v1-component-state.js +101 -28
  288. package/esm/v1/hooks/use-tambo-v1-component-state.js.map +1 -1
  289. package/esm/v1/hooks/use-tambo-v1-component-state.test.js +152 -27
  290. package/esm/v1/hooks/use-tambo-v1-component-state.test.js.map +1 -1
  291. package/esm/v1/hooks/use-tambo-v1-messages.d.ts +9 -9
  292. package/esm/v1/hooks/use-tambo-v1-messages.d.ts.map +1 -1
  293. package/esm/v1/hooks/use-tambo-v1-messages.js +3 -3
  294. package/esm/v1/hooks/use-tambo-v1-messages.js.map +1 -1
  295. package/esm/v1/hooks/use-tambo-v1-messages.test.js +16 -8
  296. package/esm/v1/hooks/use-tambo-v1-messages.test.js.map +1 -1
  297. package/esm/v1/hooks/use-tambo-v1-send-message.d.ts +21 -3
  298. package/esm/v1/hooks/use-tambo-v1-send-message.d.ts.map +1 -1
  299. package/esm/v1/hooks/use-tambo-v1-send-message.js +93 -18
  300. package/esm/v1/hooks/use-tambo-v1-send-message.js.map +1 -1
  301. package/esm/v1/hooks/use-tambo-v1-send-message.test.js +318 -45
  302. package/esm/v1/hooks/use-tambo-v1-send-message.test.js.map +1 -1
  303. package/esm/v1/hooks/use-tambo-v1-stream-status.d.ts +7 -7
  304. package/esm/v1/hooks/use-tambo-v1-stream-status.d.ts.map +1 -1
  305. package/esm/v1/hooks/use-tambo-v1-stream-status.js +14 -16
  306. package/esm/v1/hooks/use-tambo-v1-stream-status.js.map +1 -1
  307. package/esm/v1/hooks/use-tambo-v1-stream-status.test.js +32 -32
  308. package/esm/v1/hooks/use-tambo-v1-stream-status.test.js.map +1 -1
  309. package/esm/v1/hooks/use-tambo-v1-suggestions.d.ts +7 -7
  310. package/esm/v1/hooks/use-tambo-v1-suggestions.d.ts.map +1 -1
  311. package/esm/v1/hooks/use-tambo-v1-suggestions.js +11 -11
  312. package/esm/v1/hooks/use-tambo-v1-suggestions.js.map +1 -1
  313. package/esm/v1/hooks/use-tambo-v1-suggestions.test.js +48 -48
  314. package/esm/v1/hooks/use-tambo-v1-suggestions.test.js.map +1 -1
  315. package/esm/v1/hooks/use-tambo-v1-thread-input.d.ts +3 -3
  316. package/esm/v1/hooks/use-tambo-v1-thread-input.d.ts.map +1 -1
  317. package/esm/v1/hooks/use-tambo-v1-thread-input.js +3 -3
  318. package/esm/v1/hooks/use-tambo-v1-thread-input.js.map +1 -1
  319. package/esm/v1/hooks/use-tambo-v1-thread-input.test.js +43 -30
  320. package/esm/v1/hooks/use-tambo-v1-thread-input.test.js.map +1 -1
  321. package/esm/v1/hooks/use-tambo-v1-thread-list.d.ts +4 -4
  322. package/esm/v1/hooks/use-tambo-v1-thread-list.d.ts.map +1 -1
  323. package/esm/v1/hooks/use-tambo-v1-thread-list.js +8 -4
  324. package/esm/v1/hooks/use-tambo-v1-thread-list.js.map +1 -1
  325. package/esm/v1/hooks/use-tambo-v1-thread-list.test.js +20 -18
  326. package/esm/v1/hooks/use-tambo-v1-thread-list.test.js.map +1 -1
  327. package/esm/v1/hooks/use-tambo-v1-thread.d.ts +3 -3
  328. package/esm/v1/hooks/use-tambo-v1-thread.d.ts.map +1 -1
  329. package/esm/v1/hooks/use-tambo-v1-thread.js +6 -2
  330. package/esm/v1/hooks/use-tambo-v1-thread.js.map +1 -1
  331. package/esm/v1/hooks/use-tambo-v1-thread.test.js +11 -5
  332. package/esm/v1/hooks/use-tambo-v1-thread.test.js.map +1 -1
  333. package/esm/v1/hooks/use-tambo-v1.d.ts +16 -5
  334. package/esm/v1/hooks/use-tambo-v1.d.ts.map +1 -1
  335. package/esm/v1/hooks/use-tambo-v1.js +14 -6
  336. package/esm/v1/hooks/use-tambo-v1.js.map +1 -1
  337. package/esm/v1/hooks/use-tambo-v1.test.js +67 -45
  338. package/esm/v1/hooks/use-tambo-v1.test.js.map +1 -1
  339. package/esm/v1/index.d.ts +34 -27
  340. package/esm/v1/index.d.ts.map +1 -1
  341. package/esm/v1/index.js +40 -33
  342. package/esm/v1/index.js.map +1 -1
  343. package/esm/v1/providers/tambo-v1-provider.d.ts +35 -20
  344. package/esm/v1/providers/tambo-v1-provider.d.ts.map +1 -1
  345. package/esm/v1/providers/tambo-v1-provider.js +63 -26
  346. package/esm/v1/providers/tambo-v1-provider.js.map +1 -1
  347. package/esm/v1/providers/tambo-v1-provider.test.js +41 -24
  348. package/esm/v1/providers/tambo-v1-provider.test.js.map +1 -1
  349. package/esm/v1/providers/tambo-v1-stream-context.d.ts +21 -15
  350. package/esm/v1/providers/tambo-v1-stream-context.d.ts.map +1 -1
  351. package/esm/v1/providers/tambo-v1-stream-context.js +66 -27
  352. package/esm/v1/providers/tambo-v1-stream-context.js.map +1 -1
  353. package/esm/v1/providers/tambo-v1-stream-context.test.js +15 -6
  354. package/esm/v1/providers/tambo-v1-stream-context.test.js.map +1 -1
  355. package/esm/v1/providers/tambo-v1-stub-provider.d.ts +9 -9
  356. package/esm/v1/providers/tambo-v1-stub-provider.d.ts.map +1 -1
  357. package/esm/v1/providers/tambo-v1-stub-provider.js +13 -9
  358. package/esm/v1/providers/tambo-v1-stub-provider.js.map +1 -1
  359. package/esm/v1/providers/tambo-v1-stub-provider.test.js +28 -28
  360. package/esm/v1/providers/tambo-v1-stub-provider.test.js.map +1 -1
  361. package/esm/v1/providers/tambo-v1-thread-input-provider.d.ts +20 -9
  362. package/esm/v1/providers/tambo-v1-thread-input-provider.d.ts.map +1 -1
  363. package/esm/v1/providers/tambo-v1-thread-input-provider.js +23 -14
  364. package/esm/v1/providers/tambo-v1-thread-input-provider.js.map +1 -1
  365. package/esm/v1/types/auth.d.ts +24 -0
  366. package/esm/v1/types/auth.d.ts.map +1 -0
  367. package/esm/v1/types/auth.js +2 -0
  368. package/esm/v1/types/auth.js.map +1 -0
  369. package/esm/v1/types/component.d.ts +3 -3
  370. package/esm/v1/types/component.d.ts.map +1 -1
  371. package/esm/v1/types/component.js +2 -2
  372. package/esm/v1/types/component.js.map +1 -1
  373. package/esm/v1/types/event.d.ts +1 -1
  374. package/esm/v1/types/event.js +1 -1
  375. package/esm/v1/types/event.js.map +1 -1
  376. package/esm/v1/types/message.d.ts +19 -12
  377. package/esm/v1/types/message.d.ts.map +1 -1
  378. package/esm/v1/types/message.js +1 -1
  379. package/esm/v1/types/message.js.map +1 -1
  380. package/esm/v1/types/thread.d.ts +8 -6
  381. package/esm/v1/types/thread.d.ts.map +1 -1
  382. package/esm/v1/types/thread.js +1 -1
  383. package/esm/v1/types/thread.js.map +1 -1
  384. package/esm/v1/types/tool-choice.d.ts +8 -0
  385. package/esm/v1/types/tool-choice.d.ts.map +1 -0
  386. package/esm/v1/types/tool-choice.js +2 -0
  387. package/esm/v1/types/tool-choice.js.map +1 -0
  388. package/esm/v1/utils/component-renderer.d.ts +11 -5
  389. package/esm/v1/utils/component-renderer.d.ts.map +1 -1
  390. package/esm/v1/utils/component-renderer.js +13 -5
  391. package/esm/v1/utils/component-renderer.js.map +1 -1
  392. package/esm/v1/utils/component-renderer.test.js +8 -8
  393. package/esm/v1/utils/component-renderer.test.js.map +1 -1
  394. package/esm/v1/utils/event-accumulator.d.ts +34 -8
  395. package/esm/v1/utils/event-accumulator.d.ts.map +1 -1
  396. package/esm/v1/utils/event-accumulator.js +89 -27
  397. package/esm/v1/utils/event-accumulator.js.map +1 -1
  398. package/esm/v1/utils/event-accumulator.test.js +149 -8
  399. package/esm/v1/utils/event-accumulator.test.js.map +1 -1
  400. package/esm/v1/utils/keyed-throttle.d.ts +42 -0
  401. package/esm/v1/utils/keyed-throttle.d.ts.map +1 -0
  402. package/esm/v1/utils/keyed-throttle.js +83 -0
  403. package/esm/v1/utils/keyed-throttle.js.map +1 -0
  404. package/esm/v1/utils/keyed-throttle.test.d.ts +2 -0
  405. package/esm/v1/utils/keyed-throttle.test.d.ts.map +1 -0
  406. package/esm/v1/utils/keyed-throttle.test.js +145 -0
  407. package/esm/v1/utils/keyed-throttle.test.js.map +1 -0
  408. package/esm/v1/utils/registry-conversion.d.ts +18 -18
  409. package/esm/v1/utils/registry-conversion.d.ts.map +1 -1
  410. package/esm/v1/utils/registry-conversion.js +25 -23
  411. package/esm/v1/utils/registry-conversion.js.map +1 -1
  412. package/esm/v1/utils/registry-conversion.test.js +23 -0
  413. package/esm/v1/utils/registry-conversion.test.js.map +1 -1
  414. package/esm/v1/utils/stream-handler.d.ts +1 -1
  415. package/esm/v1/utils/stream-handler.js +1 -1
  416. package/esm/v1/utils/stream-handler.js.map +1 -1
  417. package/esm/v1/utils/thread-utils.d.ts +2 -2
  418. package/esm/v1/utils/thread-utils.d.ts.map +1 -1
  419. package/esm/v1/utils/thread-utils.js.map +1 -1
  420. package/esm/v1/utils/tool-call-tracker.d.ts +11 -1
  421. package/esm/v1/utils/tool-call-tracker.d.ts.map +1 -1
  422. package/esm/v1/utils/tool-call-tracker.js +14 -1
  423. package/esm/v1/utils/tool-call-tracker.js.map +1 -1
  424. package/esm/v1/utils/tool-call-tracker.test.d.ts +2 -0
  425. package/esm/v1/utils/tool-call-tracker.test.d.ts.map +1 -0
  426. package/esm/v1/utils/tool-call-tracker.test.js +65 -0
  427. package/esm/v1/utils/tool-call-tracker.test.js.map +1 -0
  428. package/esm/v1/utils/tool-executor.d.ts +35 -1
  429. package/esm/v1/utils/tool-executor.d.ts.map +1 -1
  430. package/esm/v1/utils/tool-executor.js +55 -2
  431. package/esm/v1/utils/tool-executor.js.map +1 -1
  432. package/esm/v1/utils/tool-executor.test.js +212 -1
  433. package/esm/v1/utils/tool-executor.test.js.map +1 -1
  434. package/package.json +5 -10
  435. package/dist/hooks/index.d.ts +0 -9
  436. package/dist/hooks/index.d.ts.map +0 -1
  437. package/dist/hooks/index.js +0 -34
  438. package/dist/hooks/index.js.map +0 -1
  439. package/dist/hooks/use-component-state.d.ts +0 -30
  440. package/dist/hooks/use-component-state.d.ts.map +0 -1
  441. package/dist/hooks/use-component-state.js +0 -139
  442. package/dist/hooks/use-component-state.js.map +0 -1
  443. package/dist/hooks/use-component-state.test.d.ts +0 -2
  444. package/dist/hooks/use-component-state.test.d.ts.map +0 -1
  445. package/dist/hooks/use-component-state.test.js +0 -406
  446. package/dist/hooks/use-component-state.test.js.map +0 -1
  447. package/dist/hooks/use-current-message.d.ts.map +0 -1
  448. package/dist/hooks/use-current-message.js.map +0 -1
  449. package/dist/hooks/use-current-message.test.d.ts +0 -2
  450. package/dist/hooks/use-current-message.test.d.ts.map +0 -1
  451. package/dist/hooks/use-current-message.test.js +0 -269
  452. package/dist/hooks/use-current-message.test.js.map +0 -1
  453. package/dist/hooks/use-streaming-props.d.ts +0 -11
  454. package/dist/hooks/use-streaming-props.d.ts.map +0 -1
  455. package/dist/hooks/use-streaming-props.js +0 -37
  456. package/dist/hooks/use-streaming-props.js.map +0 -1
  457. package/dist/hooks/use-suggestions.d.ts +0 -46
  458. package/dist/hooks/use-suggestions.d.ts.map +0 -1
  459. package/dist/hooks/use-suggestions.js +0 -118
  460. package/dist/hooks/use-suggestions.js.map +0 -1
  461. package/dist/hooks/use-suggestions.test.d.ts +0 -2
  462. package/dist/hooks/use-suggestions.test.d.ts.map +0 -1
  463. package/dist/hooks/use-suggestions.test.js +0 -247
  464. package/dist/hooks/use-suggestions.test.js.map +0 -1
  465. package/dist/hooks/use-tambo-stream-status.d.ts +0 -90
  466. package/dist/hooks/use-tambo-stream-status.d.ts.map +0 -1
  467. package/dist/hooks/use-tambo-stream-status.js +0 -213
  468. package/dist/hooks/use-tambo-stream-status.js.map +0 -1
  469. package/dist/hooks/use-tambo-stream-status.test.d.ts +0 -2
  470. package/dist/hooks/use-tambo-stream-status.test.d.ts.map +0 -1
  471. package/dist/hooks/use-tambo-stream-status.test.js +0 -378
  472. package/dist/hooks/use-tambo-stream-status.test.js.map +0 -1
  473. package/dist/hooks/use-tambo-threads.d.ts +0 -158
  474. package/dist/hooks/use-tambo-threads.d.ts.map +0 -1
  475. package/dist/hooks/use-tambo-threads.js +0 -45
  476. package/dist/hooks/use-tambo-threads.js.map +0 -1
  477. package/dist/hooks/use-tambo-threads.test.d.ts +0 -2
  478. package/dist/hooks/use-tambo-threads.test.d.ts.map +0 -1
  479. package/dist/hooks/use-tambo-threads.test.js +0 -214
  480. package/dist/hooks/use-tambo-threads.test.js.map +0 -1
  481. package/dist/model/generate-component-response.d.ts +0 -37
  482. package/dist/model/generate-component-response.d.ts.map +0 -1
  483. package/dist/model/generate-component-response.js +0 -29
  484. package/dist/model/generate-component-response.js.map +0 -1
  485. package/dist/model/tambo-thread.d.ts +0 -15
  486. package/dist/model/tambo-thread.d.ts.map +0 -1
  487. package/dist/model/tambo-thread.js.map +0 -1
  488. package/dist/providers/__tests__/thread-input-resource-resolution.test.d.ts +0 -2
  489. package/dist/providers/__tests__/thread-input-resource-resolution.test.d.ts.map +0 -1
  490. package/dist/providers/__tests__/thread-input-resource-resolution.test.js +0 -592
  491. package/dist/providers/__tests__/thread-input-resource-resolution.test.js.map +0 -1
  492. package/dist/providers/index.d.ts +0 -13
  493. package/dist/providers/index.d.ts.map +0 -1
  494. package/dist/providers/index.js +0 -41
  495. package/dist/providers/index.js.map +0 -1
  496. package/dist/providers/tambo-component-provider.d.ts +0 -23
  497. package/dist/providers/tambo-component-provider.d.ts.map +0 -1
  498. package/dist/providers/tambo-component-provider.js +0 -88
  499. package/dist/providers/tambo-component-provider.js.map +0 -1
  500. package/dist/providers/tambo-prop-stream-provider/index.d.ts +0 -19
  501. package/dist/providers/tambo-prop-stream-provider/index.d.ts.map +0 -1
  502. package/dist/providers/tambo-prop-stream-provider/index.js +0 -43
  503. package/dist/providers/tambo-prop-stream-provider/index.js.map +0 -1
  504. package/dist/providers/tambo-prop-stream-provider/pending.d.ts +0 -12
  505. package/dist/providers/tambo-prop-stream-provider/pending.d.ts.map +0 -1
  506. package/dist/providers/tambo-prop-stream-provider/pending.js +0 -31
  507. package/dist/providers/tambo-prop-stream-provider/pending.js.map +0 -1
  508. package/dist/providers/tambo-prop-stream-provider/provider.d.ts +0 -17
  509. package/dist/providers/tambo-prop-stream-provider/provider.d.ts.map +0 -1
  510. package/dist/providers/tambo-prop-stream-provider/provider.js +0 -107
  511. package/dist/providers/tambo-prop-stream-provider/provider.js.map +0 -1
  512. package/dist/providers/tambo-prop-stream-provider/streaming.d.ts +0 -12
  513. package/dist/providers/tambo-prop-stream-provider/streaming.d.ts.map +0 -1
  514. package/dist/providers/tambo-prop-stream-provider/streaming.js +0 -28
  515. package/dist/providers/tambo-prop-stream-provider/streaming.js.map +0 -1
  516. package/dist/providers/tambo-prop-stream-provider/success.d.ts +0 -12
  517. package/dist/providers/tambo-prop-stream-provider/success.d.ts.map +0 -1
  518. package/dist/providers/tambo-prop-stream-provider/success.js +0 -28
  519. package/dist/providers/tambo-prop-stream-provider/success.js.map +0 -1
  520. package/dist/providers/tambo-prop-stream-provider/types.d.ts +0 -25
  521. package/dist/providers/tambo-prop-stream-provider/types.d.ts.map +0 -1
  522. package/dist/providers/tambo-prop-stream-provider/types.js +0 -6
  523. package/dist/providers/tambo-prop-stream-provider/types.js.map +0 -1
  524. package/dist/providers/tambo-prop-stream-provider.test.d.ts +0 -2
  525. package/dist/providers/tambo-prop-stream-provider.test.d.ts.map +0 -1
  526. package/dist/providers/tambo-prop-stream-provider.test.js +0 -275
  527. package/dist/providers/tambo-prop-stream-provider.test.js.map +0 -1
  528. package/dist/providers/tambo-provider.d.ts +0 -53
  529. package/dist/providers/tambo-provider.d.ts.map +0 -1
  530. package/dist/providers/tambo-provider.js +0 -130
  531. package/dist/providers/tambo-provider.js.map +0 -1
  532. package/dist/providers/tambo-stubs.d.ts +0 -89
  533. package/dist/providers/tambo-stubs.d.ts.map +0 -1
  534. package/dist/providers/tambo-stubs.js +0 -276
  535. package/dist/providers/tambo-stubs.js.map +0 -1
  536. package/dist/providers/tambo-stubs.test.d.ts +0 -2
  537. package/dist/providers/tambo-stubs.test.d.ts.map +0 -1
  538. package/dist/providers/tambo-stubs.test.js +0 -97
  539. package/dist/providers/tambo-stubs.test.js.map +0 -1
  540. package/dist/providers/tambo-thread-input-provider.d.ts +0 -65
  541. package/dist/providers/tambo-thread-input-provider.d.ts.map +0 -1
  542. package/dist/providers/tambo-thread-input-provider.js +0 -179
  543. package/dist/providers/tambo-thread-input-provider.js.map +0 -1
  544. package/dist/providers/tambo-thread-provider-initial-messages.test.d.ts +0 -2
  545. package/dist/providers/tambo-thread-provider-initial-messages.test.d.ts.map +0 -1
  546. package/dist/providers/tambo-thread-provider-initial-messages.test.js +0 -275
  547. package/dist/providers/tambo-thread-provider-initial-messages.test.js.map +0 -1
  548. package/dist/providers/tambo-thread-provider.d.ts +0 -126
  549. package/dist/providers/tambo-thread-provider.d.ts.map +0 -1
  550. package/dist/providers/tambo-thread-provider.js +0 -931
  551. package/dist/providers/tambo-thread-provider.js.map +0 -1
  552. package/dist/providers/tambo-thread-provider.test.d.ts +0 -2
  553. package/dist/providers/tambo-thread-provider.test.d.ts.map +0 -1
  554. package/dist/providers/tambo-thread-provider.test.js +0 -1588
  555. package/dist/providers/tambo-thread-provider.test.js.map +0 -1
  556. package/dist/util/generate-component.d.ts +0 -12
  557. package/dist/util/generate-component.d.ts.map +0 -1
  558. package/dist/util/generate-component.js +0 -58
  559. package/dist/util/generate-component.js.map +0 -1
  560. package/dist/util/generate-component.test.d.ts +0 -2
  561. package/dist/util/generate-component.test.d.ts.map +0 -1
  562. package/dist/util/generate-component.test.js +0 -340
  563. package/dist/util/generate-component.test.js.map +0 -1
  564. package/esm/hooks/index.d.ts +0 -9
  565. package/esm/hooks/index.d.ts.map +0 -1
  566. package/esm/hooks/index.js +0 -10
  567. package/esm/hooks/index.js.map +0 -1
  568. package/esm/hooks/use-component-state.d.ts +0 -30
  569. package/esm/hooks/use-component-state.d.ts.map +0 -1
  570. package/esm/hooks/use-component-state.js +0 -136
  571. package/esm/hooks/use-component-state.js.map +0 -1
  572. package/esm/hooks/use-component-state.test.d.ts +0 -2
  573. package/esm/hooks/use-component-state.test.d.ts.map +0 -1
  574. package/esm/hooks/use-component-state.test.js +0 -401
  575. package/esm/hooks/use-component-state.test.js.map +0 -1
  576. package/esm/hooks/use-current-message.d.ts.map +0 -1
  577. package/esm/hooks/use-current-message.js.map +0 -1
  578. package/esm/hooks/use-current-message.test.d.ts +0 -2
  579. package/esm/hooks/use-current-message.test.d.ts.map +0 -1
  580. package/esm/hooks/use-current-message.test.js +0 -264
  581. package/esm/hooks/use-current-message.test.js.map +0 -1
  582. package/esm/hooks/use-streaming-props.d.ts +0 -11
  583. package/esm/hooks/use-streaming-props.d.ts.map +0 -1
  584. package/esm/hooks/use-streaming-props.js +0 -34
  585. package/esm/hooks/use-streaming-props.js.map +0 -1
  586. package/esm/hooks/use-suggestions.d.ts +0 -46
  587. package/esm/hooks/use-suggestions.d.ts.map +0 -1
  588. package/esm/hooks/use-suggestions.js +0 -115
  589. package/esm/hooks/use-suggestions.js.map +0 -1
  590. package/esm/hooks/use-suggestions.test.d.ts +0 -2
  591. package/esm/hooks/use-suggestions.test.d.ts.map +0 -1
  592. package/esm/hooks/use-suggestions.test.js +0 -245
  593. package/esm/hooks/use-suggestions.test.js.map +0 -1
  594. package/esm/hooks/use-tambo-stream-status.d.ts +0 -90
  595. package/esm/hooks/use-tambo-stream-status.d.ts.map +0 -1
  596. package/esm/hooks/use-tambo-stream-status.js +0 -210
  597. package/esm/hooks/use-tambo-stream-status.js.map +0 -1
  598. package/esm/hooks/use-tambo-stream-status.test.d.ts +0 -2
  599. package/esm/hooks/use-tambo-stream-status.test.d.ts.map +0 -1
  600. package/esm/hooks/use-tambo-stream-status.test.js +0 -376
  601. package/esm/hooks/use-tambo-stream-status.test.js.map +0 -1
  602. package/esm/hooks/use-tambo-threads.d.ts +0 -158
  603. package/esm/hooks/use-tambo-threads.d.ts.map +0 -1
  604. package/esm/hooks/use-tambo-threads.js +0 -42
  605. package/esm/hooks/use-tambo-threads.js.map +0 -1
  606. package/esm/hooks/use-tambo-threads.test.d.ts +0 -2
  607. package/esm/hooks/use-tambo-threads.test.d.ts.map +0 -1
  608. package/esm/hooks/use-tambo-threads.test.js +0 -212
  609. package/esm/hooks/use-tambo-threads.test.js.map +0 -1
  610. package/esm/model/generate-component-response.d.ts +0 -37
  611. package/esm/model/generate-component-response.d.ts.map +0 -1
  612. package/esm/model/generate-component-response.js +0 -25
  613. package/esm/model/generate-component-response.js.map +0 -1
  614. package/esm/model/tambo-thread.d.ts +0 -15
  615. package/esm/model/tambo-thread.d.ts.map +0 -1
  616. package/esm/model/tambo-thread.js +0 -2
  617. package/esm/model/tambo-thread.js.map +0 -1
  618. package/esm/providers/__tests__/thread-input-resource-resolution.test.d.ts +0 -2
  619. package/esm/providers/__tests__/thread-input-resource-resolution.test.d.ts.map +0 -1
  620. package/esm/providers/__tests__/thread-input-resource-resolution.test.js +0 -587
  621. package/esm/providers/__tests__/thread-input-resource-resolution.test.js.map +0 -1
  622. package/esm/providers/index.d.ts +0 -13
  623. package/esm/providers/index.d.ts.map +0 -1
  624. package/esm/providers/index.js +0 -11
  625. package/esm/providers/index.js.map +0 -1
  626. package/esm/providers/tambo-component-provider.d.ts +0 -23
  627. package/esm/providers/tambo-component-provider.d.ts.map +0 -1
  628. package/esm/providers/tambo-component-provider.js +0 -50
  629. package/esm/providers/tambo-component-provider.js.map +0 -1
  630. package/esm/providers/tambo-prop-stream-provider/index.d.ts +0 -19
  631. package/esm/providers/tambo-prop-stream-provider/index.d.ts.map +0 -1
  632. package/esm/providers/tambo-prop-stream-provider/index.js +0 -22
  633. package/esm/providers/tambo-prop-stream-provider/index.js.map +0 -1
  634. package/esm/providers/tambo-prop-stream-provider/pending.d.ts +0 -12
  635. package/esm/providers/tambo-prop-stream-provider/pending.d.ts.map +0 -1
  636. package/esm/providers/tambo-prop-stream-provider/pending.js +0 -24
  637. package/esm/providers/tambo-prop-stream-provider/pending.js.map +0 -1
  638. package/esm/providers/tambo-prop-stream-provider/provider.d.ts +0 -17
  639. package/esm/providers/tambo-prop-stream-provider/provider.d.ts.map +0 -1
  640. package/esm/providers/tambo-prop-stream-provider/provider.js +0 -70
  641. package/esm/providers/tambo-prop-stream-provider/provider.js.map +0 -1
  642. package/esm/providers/tambo-prop-stream-provider/streaming.d.ts +0 -12
  643. package/esm/providers/tambo-prop-stream-provider/streaming.d.ts.map +0 -1
  644. package/esm/providers/tambo-prop-stream-provider/streaming.js +0 -21
  645. package/esm/providers/tambo-prop-stream-provider/streaming.js.map +0 -1
  646. package/esm/providers/tambo-prop-stream-provider/success.d.ts +0 -12
  647. package/esm/providers/tambo-prop-stream-provider/success.d.ts.map +0 -1
  648. package/esm/providers/tambo-prop-stream-provider/success.js +0 -21
  649. package/esm/providers/tambo-prop-stream-provider/success.js.map +0 -1
  650. package/esm/providers/tambo-prop-stream-provider/types.d.ts +0 -25
  651. package/esm/providers/tambo-prop-stream-provider/types.d.ts.map +0 -1
  652. package/esm/providers/tambo-prop-stream-provider/types.js +0 -3
  653. package/esm/providers/tambo-prop-stream-provider/types.js.map +0 -1
  654. package/esm/providers/tambo-prop-stream-provider.test.d.ts +0 -2
  655. package/esm/providers/tambo-prop-stream-provider.test.d.ts.map +0 -1
  656. package/esm/providers/tambo-prop-stream-provider.test.js +0 -270
  657. package/esm/providers/tambo-prop-stream-provider.test.js.map +0 -1
  658. package/esm/providers/tambo-provider.d.ts +0 -53
  659. package/esm/providers/tambo-provider.d.ts.map +0 -1
  660. package/esm/providers/tambo-provider.js +0 -91
  661. package/esm/providers/tambo-provider.js.map +0 -1
  662. package/esm/providers/tambo-stubs.d.ts +0 -89
  663. package/esm/providers/tambo-stubs.d.ts.map +0 -1
  664. package/esm/providers/tambo-stubs.js +0 -239
  665. package/esm/providers/tambo-stubs.js.map +0 -1
  666. package/esm/providers/tambo-stubs.test.d.ts +0 -2
  667. package/esm/providers/tambo-stubs.test.d.ts.map +0 -1
  668. package/esm/providers/tambo-stubs.test.js +0 -62
  669. package/esm/providers/tambo-stubs.test.js.map +0 -1
  670. package/esm/providers/tambo-thread-input-provider.d.ts +0 -65
  671. package/esm/providers/tambo-thread-input-provider.d.ts.map +0 -1
  672. package/esm/providers/tambo-thread-input-provider.js +0 -141
  673. package/esm/providers/tambo-thread-input-provider.js.map +0 -1
  674. package/esm/providers/tambo-thread-provider-initial-messages.test.d.ts +0 -2
  675. package/esm/providers/tambo-thread-provider-initial-messages.test.d.ts.map +0 -1
  676. package/esm/providers/tambo-thread-provider-initial-messages.test.js +0 -270
  677. package/esm/providers/tambo-thread-provider-initial-messages.test.js.map +0 -1
  678. package/esm/providers/tambo-thread-provider.d.ts +0 -126
  679. package/esm/providers/tambo-thread-provider.d.ts.map +0 -1
  680. package/esm/providers/tambo-thread-provider.js +0 -891
  681. package/esm/providers/tambo-thread-provider.js.map +0 -1
  682. package/esm/providers/tambo-thread-provider.test.d.ts +0 -2
  683. package/esm/providers/tambo-thread-provider.test.d.ts.map +0 -1
  684. package/esm/providers/tambo-thread-provider.test.js +0 -1550
  685. package/esm/providers/tambo-thread-provider.test.js.map +0 -1
  686. package/esm/util/generate-component.d.ts +0 -12
  687. package/esm/util/generate-component.d.ts.map +0 -1
  688. package/esm/util/generate-component.js +0 -52
  689. package/esm/util/generate-component.js.map +0 -1
  690. package/esm/util/generate-component.test.d.ts +0 -2
  691. package/esm/util/generate-component.test.d.ts.map +0 -1
  692. package/esm/util/generate-component.test.js +0 -302
  693. package/esm/util/generate-component.test.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-tambo-threads.js","sourceRoot":"","sources":["../../src/hooks/use-tambo-threads.ts"],"names":[],"mappings":";;AAyBA,gDAiCC;AAxDD,4CAA8C;AAC9C,8EAAoE;AACpE,2DAAoD;AAUpD;;;;;;;;;;GAUG;AACH,SAAgB,kBAAkB,CAChC,EAAE,SAAS,KAA+B,EAAE,EAC5C,UAEI,EAAE;IAEN,MAAM,MAAM,GAAG,IAAA,sCAAc,GAAE,CAAC;IAChC,MAAM,EAAE,UAAU,EAAE,GAAG,IAAA,0BAAc,GAAE,CAAC;IACxC,MAAM,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,cAAc,EAAE,GAAG,IAAA,iCAAa,EAAC;QAClE,GAAI,OAA8C;QAClD,QAAQ,EAAE,CAAC,WAAW,CAAC;QACvB,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,OAAO,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC;QACtD,CAAC;KACF,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,SAAS,IAAI,gBAAgB,CAAC;IAEvD,MAAM,WAAW,GAAG,IAAA,iCAAa,EAAC;QAChC,GAAG,OAAO;QACV,OAAO,EAAE,CAAC,CAAC,gBAAgB;QAC3B,QAAQ,EAAE,CAAC,SAAS,EAAE,gBAAgB,EAAE,UAAU,CAAC;QACnD,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBAClE,UAAU;aACX,CAAC,CAAC;YACH,OAAO,UAAU,CAAC;QACpB,CAAC;KACF,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,cAAc,EAAE,CAAC;AAC5E,CAAC","sourcesContent":["import type TamboAI from \"@tambo-ai/typescript-sdk\";\nimport { UseQueryOptions } from \"@tanstack/react-query\";\nimport { useTamboThread } from \"../providers\";\nimport { useTamboClient } from \"../providers/tambo-client-provider\";\nimport { useTamboQuery } from \"./react-query-hooks\";\n\ninterface UseTamboThreadListConfig {\n /**\n * The projectId to get the threads for. If not provided, the current project\n * will be used.\n */\n projectId?: string;\n}\n\n/**\n * Get all the threads for the specified project.\n *\n * If contextKey is empty, then all threads for the project will be returned.\n * If contextKey is not empty, then only the threads for the specified context\n * key will be returned. The contextKey is obtained from the TamboThreadProvider\n * via useTamboThread().\n * @param config - The config for the useTamboThreadList hook\n * @param config.projectId - The projectId to get the threads for\n * @returns The threads for the specified project and optional context key\n */\nexport function useTamboThreadList(\n { projectId }: UseTamboThreadListConfig = {},\n options: Partial<\n UseQueryOptions<TamboAI.Beta.Threads.ThreadsOffsetAndLimit | null>\n > = {},\n) {\n const client = useTamboClient();\n const { contextKey } = useTamboThread();\n const { data: queriedProjectId, ...projectIdState } = useTamboQuery({\n ...(options as unknown as UseQueryOptions<string>),\n queryKey: [\"projectId\"],\n queryFn: async () => {\n return (await client.beta.projects.getCurrent()).id;\n },\n });\n const currentProjectId = projectId ?? queriedProjectId;\n\n const threadState = useTamboQuery({\n ...options,\n enabled: !!currentProjectId,\n queryKey: [\"threads\", currentProjectId, contextKey],\n queryFn: async () => {\n if (!currentProjectId) {\n return null;\n }\n const threadIter = await client.beta.threads.list(currentProjectId, {\n contextKey,\n });\n return threadIter;\n },\n });\n\n return currentProjectId ? threadState : { data: null, ...projectIdState };\n}\n"]}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=use-tambo-threads.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-tambo-threads.test.d.ts","sourceRoot":"","sources":["../../src/hooks/use-tambo-threads.test.tsx"],"names":[],"mappings":""}
@@ -1,214 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const react_query_1 = require("@tanstack/react-query");
4
- const react_1 = require("@testing-library/react");
5
- const providers_1 = require("../providers");
6
- const tambo_client_provider_1 = require("../providers/tambo-client-provider");
7
- const use_tambo_threads_1 = require("./use-tambo-threads");
8
- jest.mock("../providers/tambo-client-provider", () => ({
9
- useTamboClient: jest.fn(),
10
- useTamboQueryClient: jest.fn(),
11
- }));
12
- jest.mock("../providers", () => ({
13
- useTamboThread: jest.fn(),
14
- }));
15
- describe("useTamboThreadList", () => {
16
- const mockThreads = [
17
- { id: "thread-1", title: "Thread 1" },
18
- { id: "thread-2", title: "Thread 2" },
19
- ];
20
- const mockProjects = {
21
- getCurrent: jest.fn(),
22
- retrieve: jest.fn(),
23
- delete: jest.fn(),
24
- };
25
- const mockThreadsApi = {
26
- list: jest.fn(),
27
- messages: {
28
- list: jest.fn(),
29
- create: jest.fn(),
30
- delete: jest.fn(),
31
- updateComponentState: jest.fn(),
32
- },
33
- suggestions: {
34
- list: jest.fn(),
35
- generate: jest.fn(),
36
- },
37
- create: jest.fn(),
38
- retrieve: jest.fn(),
39
- update: jest.fn(),
40
- delete: jest.fn(),
41
- advance: jest.fn(),
42
- advanceByID: jest.fn(),
43
- };
44
- const mockBeta = {
45
- projects: mockProjects,
46
- threads: mockThreadsApi,
47
- registry: {
48
- retrieve: jest.fn(),
49
- },
50
- };
51
- const mockTamboAI = {
52
- apiKey: "",
53
- beta: mockBeta,
54
- };
55
- beforeEach(() => {
56
- jest.mocked(tambo_client_provider_1.useTamboQueryClient).mockReturnValue(new react_query_1.QueryClient());
57
- jest
58
- .mocked(providers_1.useTamboThread)
59
- .mockReturnValue({ contextKey: undefined });
60
- });
61
- it("should fetch threads for current project when no projectId is provided", async () => {
62
- const mockClient = jest.mocked(tambo_client_provider_1.useTamboClient);
63
- mockClient.mockReturnValue({
64
- ...mockTamboAI,
65
- beta: {
66
- ...mockBeta,
67
- projects: {
68
- ...mockProjects,
69
- getCurrent: jest.fn().mockResolvedValue({ id: "current-project" }),
70
- },
71
- threads: {
72
- ...mockThreadsApi,
73
- list: jest.fn().mockResolvedValue(mockThreads),
74
- },
75
- },
76
- });
77
- const { result } = (0, react_1.renderHook)(() => (0, use_tambo_threads_1.useTamboThreadList)());
78
- await (0, react_1.waitFor)(() => {
79
- expect(result.current.data).toEqual(mockThreads);
80
- });
81
- });
82
- it("should fetch threads for specified projectId", async () => {
83
- const mockList = jest.fn().mockResolvedValue(mockThreads);
84
- const mockClient = jest.mocked(tambo_client_provider_1.useTamboClient);
85
- mockClient.mockReturnValue({
86
- ...mockTamboAI,
87
- beta: {
88
- ...mockBeta,
89
- threads: {
90
- ...mockThreadsApi,
91
- list: mockList,
92
- },
93
- },
94
- });
95
- const { result } = (0, react_1.renderHook)(() => (0, use_tambo_threads_1.useTamboThreadList)({ projectId: "custom-project" }));
96
- await (0, react_1.waitFor)(() => {
97
- expect(result.current.data).toEqual(mockThreads);
98
- });
99
- expect(mockList).toHaveBeenCalledWith("custom-project", {});
100
- });
101
- it("should fetch threads with contextKey when provided via TamboThreadProvider", async () => {
102
- jest
103
- .mocked(providers_1.useTamboThread)
104
- .mockReturnValue({ contextKey: "test-context" });
105
- const mockList = jest.fn().mockResolvedValue(mockThreads);
106
- const mockClient = jest.mocked(tambo_client_provider_1.useTamboClient);
107
- mockClient.mockReturnValue({
108
- ...mockTamboAI,
109
- beta: {
110
- ...mockBeta,
111
- projects: {
112
- ...mockProjects,
113
- getCurrent: jest.fn().mockResolvedValue({ id: "current-project" }),
114
- },
115
- threads: {
116
- ...mockThreadsApi,
117
- list: mockList,
118
- },
119
- },
120
- });
121
- const { result } = (0, react_1.renderHook)(() => (0, use_tambo_threads_1.useTamboThreadList)());
122
- await (0, react_1.waitFor)(() => {
123
- expect(result.current.data).toEqual(mockThreads);
124
- });
125
- expect(mockList).toHaveBeenCalledWith("current-project", {
126
- contextKey: "test-context",
127
- });
128
- });
129
- it("should handle loading state", async () => {
130
- let resolvePromise;
131
- const promise = new Promise((resolve) => {
132
- resolvePromise = resolve;
133
- });
134
- const mockClient = jest.mocked(tambo_client_provider_1.useTamboClient);
135
- mockClient.mockReturnValue({
136
- ...mockTamboAI,
137
- beta: {
138
- ...mockBeta,
139
- projects: {
140
- ...mockProjects,
141
- getCurrent: jest.fn().mockResolvedValue({ id: "current-project" }),
142
- },
143
- threads: {
144
- ...mockThreadsApi,
145
- list: jest.fn().mockReturnValue(promise),
146
- },
147
- },
148
- });
149
- const { result } = (0, react_1.renderHook)(() => (0, use_tambo_threads_1.useTamboThreadList)({}, { retry: false }));
150
- expect(result.current).toMatchInlineSnapshot(`
151
- {
152
- "data": null,
153
- "dataUpdatedAt": 0,
154
- "error": null,
155
- "errorUpdateCount": 0,
156
- "errorUpdatedAt": 0,
157
- "failureCount": 0,
158
- "failureReason": null,
159
- "fetchStatus": "fetching",
160
- "isEnabled": true,
161
- "isError": false,
162
- "isFetched": false,
163
- "isFetchedAfterMount": false,
164
- "isFetching": true,
165
- "isInitialLoading": true,
166
- "isLoading": true,
167
- "isLoadingError": false,
168
- "isPaused": false,
169
- "isPending": true,
170
- "isPlaceholderData": false,
171
- "isRefetchError": false,
172
- "isRefetching": false,
173
- "isStale": true,
174
- "isSuccess": false,
175
- "promise": Promise {},
176
- "refetch": [Function],
177
- "status": "pending",
178
- }
179
- `);
180
- resolvePromise(mockThreads);
181
- await (0, react_1.waitFor)(() => {
182
- expect(result.current.isLoading).toBe(false);
183
- });
184
- });
185
- it("should handle error state", async () => {
186
- const mockError = new Error("Failed to fetch threads");
187
- const mockClient = jest.mocked(tambo_client_provider_1.useTamboClient);
188
- mockClient.mockReturnValue({
189
- ...mockTamboAI,
190
- beta: {
191
- ...mockBeta,
192
- projects: {
193
- ...mockProjects,
194
- getCurrent: jest.fn().mockResolvedValue({ id: "current-project" }),
195
- },
196
- threads: {
197
- ...mockThreadsApi,
198
- list: jest.fn().mockImplementation(async () => {
199
- // console.log("Mocking error", mockCount++);
200
- throw mockError;
201
- }),
202
- },
203
- },
204
- });
205
- const { result } = (0, react_1.renderHook)(() => (0, use_tambo_threads_1.useTamboThreadList)({}, { retry: false }));
206
- await (0, react_1.waitFor)(() => {
207
- const { isLoading, error, isError } = result.current;
208
- expect(isLoading).toBe(false);
209
- expect(isError).toBe(true);
210
- expect(error).toBe(mockError);
211
- });
212
- });
213
- });
214
- //# sourceMappingURL=use-tambo-threads.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"use-tambo-threads.test.js","sourceRoot":"","sources":["../../src/hooks/use-tambo-threads.test.tsx"],"names":[],"mappings":"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","sourcesContent":["import TamboAI from \"@tambo-ai/typescript-sdk\";\nimport { QueryClient } from \"@tanstack/react-query\";\nimport { renderHook, waitFor } from \"@testing-library/react\";\nimport { useTamboThread } from \"../providers\";\nimport {\n useTamboClient,\n useTamboQueryClient,\n} from \"../providers/tambo-client-provider\";\nimport { PartialTamboAI } from \"../testing/types\";\nimport { useTamboThreadList } from \"./use-tambo-threads\";\n\njest.mock(\"../providers/tambo-client-provider\", () => ({\n useTamboClient: jest.fn(),\n useTamboQueryClient: jest.fn(),\n}));\n\njest.mock(\"../providers\", () => ({\n useTamboThread: jest.fn(),\n}));\n\ndescribe(\"useTamboThreadList\", () => {\n const mockThreads = [\n { id: \"thread-1\", title: \"Thread 1\" },\n { id: \"thread-2\", title: \"Thread 2\" },\n ];\n\n const mockProjects = {\n getCurrent: jest.fn(),\n retrieve: jest.fn(),\n delete: jest.fn(),\n } satisfies Partial<TamboAI[\"beta\"][\"projects\"]>;\n\n const mockThreadsApi = {\n list: jest.fn(),\n messages: {\n list: jest.fn(),\n create: jest.fn(),\n delete: jest.fn(),\n updateComponentState: jest.fn(),\n },\n suggestions: {\n list: jest.fn(),\n generate: jest.fn(),\n },\n create: jest.fn(),\n retrieve: jest.fn(),\n update: jest.fn(),\n delete: jest.fn(),\n advance: jest.fn(),\n advanceByID: jest.fn(),\n } satisfies NonNullable<PartialTamboAI[\"beta\"]>[\"threads\"];\n\n const mockBeta = {\n projects: mockProjects,\n threads: mockThreadsApi,\n registry: {\n retrieve: jest.fn(),\n },\n } satisfies PartialTamboAI[\"beta\"];\n\n const mockTamboAI = {\n apiKey: \"\",\n beta: mockBeta,\n } satisfies PartialTamboAI as unknown as TamboAI;\n\n beforeEach(() => {\n jest.mocked(useTamboQueryClient).mockReturnValue(new QueryClient());\n jest\n .mocked(useTamboThread)\n .mockReturnValue({ contextKey: undefined } as any);\n });\n\n it(\"should fetch threads for current project when no projectId is provided\", async () => {\n const mockClient = jest.mocked(useTamboClient);\n mockClient.mockReturnValue({\n ...mockTamboAI,\n beta: {\n ...mockBeta,\n projects: {\n ...mockProjects,\n getCurrent: jest.fn().mockResolvedValue({ id: \"current-project\" }),\n },\n threads: {\n ...mockThreadsApi,\n list: jest.fn().mockResolvedValue(mockThreads),\n },\n },\n } satisfies PartialTamboAI as any);\n\n const { result } = renderHook(() => useTamboThreadList());\n\n await waitFor(() => {\n expect(result.current.data).toEqual(mockThreads);\n });\n });\n\n it(\"should fetch threads for specified projectId\", async () => {\n const mockList = jest.fn().mockResolvedValue(mockThreads);\n const mockClient = jest.mocked(useTamboClient);\n mockClient.mockReturnValue({\n ...mockTamboAI,\n beta: {\n ...mockBeta,\n threads: {\n ...mockThreadsApi,\n list: mockList,\n },\n },\n } satisfies PartialTamboAI as any);\n\n const { result } = renderHook(() =>\n useTamboThreadList({ projectId: \"custom-project\" }),\n );\n\n await waitFor(() => {\n expect(result.current.data).toEqual(mockThreads);\n });\n\n expect(mockList).toHaveBeenCalledWith(\"custom-project\", {});\n });\n\n it(\"should fetch threads with contextKey when provided via TamboThreadProvider\", async () => {\n jest\n .mocked(useTamboThread)\n .mockReturnValue({ contextKey: \"test-context\" } as any);\n const mockList = jest.fn().mockResolvedValue(mockThreads);\n const mockClient = jest.mocked(useTamboClient);\n mockClient.mockReturnValue({\n ...mockTamboAI,\n beta: {\n ...mockBeta,\n projects: {\n ...mockProjects,\n getCurrent: jest.fn().mockResolvedValue({ id: \"current-project\" }),\n },\n threads: {\n ...mockThreadsApi,\n list: mockList,\n },\n },\n } satisfies PartialTamboAI as any);\n\n const { result } = renderHook(() => useTamboThreadList());\n\n await waitFor(() => {\n expect(result.current.data).toEqual(mockThreads);\n });\n\n expect(mockList).toHaveBeenCalledWith(\"current-project\", {\n contextKey: \"test-context\",\n });\n });\n\n it(\"should handle loading state\", async () => {\n let resolvePromise: (value: any) => void;\n const promise = new Promise((resolve) => {\n resolvePromise = resolve;\n });\n\n const mockClient = jest.mocked(useTamboClient);\n mockClient.mockReturnValue({\n ...mockTamboAI,\n beta: {\n ...mockBeta,\n projects: {\n ...mockProjects,\n getCurrent: jest.fn().mockResolvedValue({ id: \"current-project\" }),\n },\n threads: {\n ...mockThreadsApi,\n list: jest.fn().mockReturnValue(promise),\n },\n },\n } satisfies PartialTamboAI as any);\n\n const { result } = renderHook(() =>\n useTamboThreadList({}, { retry: false }),\n );\n\n expect(result.current).toMatchInlineSnapshot(`\n {\n \"data\": null,\n \"dataUpdatedAt\": 0,\n \"error\": null,\n \"errorUpdateCount\": 0,\n \"errorUpdatedAt\": 0,\n \"failureCount\": 0,\n \"failureReason\": null,\n \"fetchStatus\": \"fetching\",\n \"isEnabled\": true,\n \"isError\": false,\n \"isFetched\": false,\n \"isFetchedAfterMount\": false,\n \"isFetching\": true,\n \"isInitialLoading\": true,\n \"isLoading\": true,\n \"isLoadingError\": false,\n \"isPaused\": false,\n \"isPending\": true,\n \"isPlaceholderData\": false,\n \"isRefetchError\": false,\n \"isRefetching\": false,\n \"isStale\": true,\n \"isSuccess\": false,\n \"promise\": Promise {},\n \"refetch\": [Function],\n \"status\": \"pending\",\n }\n `);\n\n resolvePromise!(mockThreads);\n await waitFor(() => {\n expect(result.current.isLoading).toBe(false);\n });\n });\n\n it(\"should handle error state\", async () => {\n const mockError = new Error(\"Failed to fetch threads\");\n const mockClient = jest.mocked(useTamboClient);\n mockClient.mockReturnValue({\n ...mockTamboAI,\n beta: {\n ...mockBeta,\n projects: {\n ...mockProjects,\n getCurrent: jest.fn().mockResolvedValue({ id: \"current-project\" }),\n },\n threads: {\n ...mockThreadsApi,\n list: jest.fn().mockImplementation(async () => {\n // console.log(\"Mocking error\", mockCount++);\n throw mockError;\n }),\n },\n },\n } satisfies PartialTamboAI as any);\n\n const { result } = renderHook(() =>\n useTamboThreadList({}, { retry: false }),\n );\n\n await waitFor(() => {\n const { isLoading, error, isError } = result.current;\n expect(isLoading).toBe(false);\n expect(isError).toBe(true);\n expect(error).toBe(mockError);\n });\n });\n});\n"]}
@@ -1,37 +0,0 @@
1
- import TamboAI from "@tambo-ai/typescript-sdk";
2
- import { ReactElement } from "react";
3
- import type { InteractableConfig } from "../hoc/with-tambo-interactable";
4
- /**
5
- * Metadata for interactable components.
6
- * Used when a component is wrapped with withInteractable.
7
- */
8
- export interface InteractableMetadata extends InteractableConfig {
9
- /** Unique identifier for this interactable instance */
10
- id: string;
11
- }
12
- /**
13
- * An extension of the TamboAI.Beta.Threads.ThreadMessage type that includes a
14
- * renderedComponent and optional interactable metadata
15
- */
16
- export interface TamboThreadMessage extends TamboAI.Beta.Threads.ThreadMessage {
17
- renderedComponent?: ReactElement | null;
18
- /** Optional metadata for interactable components */
19
- interactableMetadata?: InteractableMetadata;
20
- }
21
- export declare enum GenerationStage {
22
- IDLE = "IDLE",
23
- CHOOSING_COMPONENT = "CHOOSING_COMPONENT",
24
- FETCHING_CONTEXT = "FETCHING_CONTEXT",
25
- HYDRATING_COMPONENT = "HYDRATING_COMPONENT",
26
- STREAMING_RESPONSE = "STREAMING_RESPONSE",
27
- COMPLETE = "COMPLETE",
28
- ERROR = "ERROR",
29
- CANCELLED = "CANCELLED"
30
- }
31
- /**
32
- * Checks if the generation stage is in a state where it can accept user input.
33
- * @param generationStage - The generation stage to check
34
- * @returns True if the generation stage is idle, false otherwise
35
- */
36
- export declare function isIdleStage(generationStage: GenerationStage): boolean;
37
- //# sourceMappingURL=generate-component-response.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-component-response.d.ts","sourceRoot":"","sources":["../../src/model/generate-component-response.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB;IAC9D,uDAAuD;IACvD,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAmB,SAAQ,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa;IAC5E,iBAAiB,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IACxC,oDAAoD;IACpD,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;CAC7C;AAED,oBAAY,eAAe;IACzB,IAAI,SAAS;IACb,kBAAkB,uBAAuB;IACzC,gBAAgB,qBAAqB;IACrC,mBAAmB,wBAAwB;IAC3C,kBAAkB,uBAAuB;IACzC,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,SAAS,cAAc;CACxB;AACD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,eAAe,EAAE,eAAe,WAO3D"}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GenerationStage = void 0;
4
- exports.isIdleStage = isIdleStage;
5
- var GenerationStage;
6
- (function (GenerationStage) {
7
- GenerationStage["IDLE"] = "IDLE";
8
- GenerationStage["CHOOSING_COMPONENT"] = "CHOOSING_COMPONENT";
9
- GenerationStage["FETCHING_CONTEXT"] = "FETCHING_CONTEXT";
10
- GenerationStage["HYDRATING_COMPONENT"] = "HYDRATING_COMPONENT";
11
- GenerationStage["STREAMING_RESPONSE"] = "STREAMING_RESPONSE";
12
- GenerationStage["COMPLETE"] = "COMPLETE";
13
- GenerationStage["ERROR"] = "ERROR";
14
- GenerationStage["CANCELLED"] = "CANCELLED";
15
- })(GenerationStage || (exports.GenerationStage = GenerationStage = {}));
16
- /**
17
- * Checks if the generation stage is in a state where it can accept user input.
18
- * @param generationStage - The generation stage to check
19
- * @returns True if the generation stage is idle, false otherwise
20
- */
21
- function isIdleStage(generationStage) {
22
- return [
23
- GenerationStage.IDLE,
24
- GenerationStage.COMPLETE,
25
- GenerationStage.ERROR,
26
- GenerationStage.CANCELLED,
27
- ].includes(generationStage);
28
- }
29
- //# sourceMappingURL=generate-component-response.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-component-response.js","sourceRoot":"","sources":["../../src/model/generate-component-response.ts"],"names":[],"mappings":";;;AAsCA,kCAOC;AAtBD,IAAY,eASX;AATD,WAAY,eAAe;IACzB,gCAAa,CAAA;IACb,4DAAyC,CAAA;IACzC,wDAAqC,CAAA;IACrC,8DAA2C,CAAA;IAC3C,4DAAyC,CAAA;IACzC,wCAAqB,CAAA;IACrB,kCAAe,CAAA;IACf,0CAAuB,CAAA;AACzB,CAAC,EATW,eAAe,+BAAf,eAAe,QAS1B;AACD;;;;GAIG;AACH,SAAgB,WAAW,CAAC,eAAgC;IAC1D,OAAO;QACL,eAAe,CAAC,IAAI;QACpB,eAAe,CAAC,QAAQ;QACxB,eAAe,CAAC,KAAK;QACrB,eAAe,CAAC,SAAS;KAC1B,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AAC9B,CAAC","sourcesContent":["import TamboAI from \"@tambo-ai/typescript-sdk\";\nimport { ReactElement } from \"react\";\nimport type { InteractableConfig } from \"../hoc/with-tambo-interactable\";\n\n/**\n * Metadata for interactable components.\n * Used when a component is wrapped with withInteractable.\n */\nexport interface InteractableMetadata extends InteractableConfig {\n /** Unique identifier for this interactable instance */\n id: string;\n}\n\n/**\n * An extension of the TamboAI.Beta.Threads.ThreadMessage type that includes a\n * renderedComponent and optional interactable metadata\n */\nexport interface TamboThreadMessage extends TamboAI.Beta.Threads.ThreadMessage {\n renderedComponent?: ReactElement | null;\n /** Optional metadata for interactable components */\n interactableMetadata?: InteractableMetadata;\n}\n\nexport enum GenerationStage {\n IDLE = \"IDLE\",\n CHOOSING_COMPONENT = \"CHOOSING_COMPONENT\",\n FETCHING_CONTEXT = \"FETCHING_CONTEXT\",\n HYDRATING_COMPONENT = \"HYDRATING_COMPONENT\",\n STREAMING_RESPONSE = \"STREAMING_RESPONSE\",\n COMPLETE = \"COMPLETE\",\n ERROR = \"ERROR\",\n CANCELLED = \"CANCELLED\",\n}\n/**\n * Checks if the generation stage is in a state where it can accept user input.\n * @param generationStage - The generation stage to check\n * @returns True if the generation stage is idle, false otherwise\n */\nexport function isIdleStage(generationStage: GenerationStage) {\n return [\n GenerationStage.IDLE,\n GenerationStage.COMPLETE,\n GenerationStage.ERROR,\n GenerationStage.CANCELLED,\n ].includes(generationStage);\n}\n"]}
@@ -1,15 +0,0 @@
1
- import TamboAI from "@tambo-ai/typescript-sdk";
2
- import { TamboThreadMessage } from "./generate-component-response";
3
- /**
4
- * An extension of the TamboAI.Beta.Thread type that includes
5
- * messages with renderedComponent and MCP token information
6
- */
7
- export interface TamboThread extends TamboAI.Beta.Thread {
8
- messages: TamboThreadMessage[];
9
- /**
10
- * MCP access token for the internal Tambo MCP server.
11
- * This token is specific to this thread.
12
- */
13
- mcpAccessToken?: string;
14
- }
15
- //# sourceMappingURL=tambo-thread.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tambo-thread.d.ts","sourceRoot":"","sources":["../../src/model/tambo-thread.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,OAAO,CAAC,IAAI,CAAC,MAAM;IACtD,QAAQ,EAAE,kBAAkB,EAAE,CAAC;IAC/B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tambo-thread.js","sourceRoot":"","sources":["../../src/model/tambo-thread.ts"],"names":[],"mappings":"","sourcesContent":["import TamboAI from \"@tambo-ai/typescript-sdk\";\nimport { TamboThreadMessage } from \"./generate-component-response\";\n\n/**\n * An extension of the TamboAI.Beta.Thread type that includes\n * messages with renderedComponent and MCP token information\n */\nexport interface TamboThread extends TamboAI.Beta.Thread {\n messages: TamboThreadMessage[];\n /**\n * MCP access token for the internal Tambo MCP server.\n * This token is specific to this thread.\n */\n mcpAccessToken?: string;\n}\n"]}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=thread-input-resource-resolution.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"thread-input-resource-resolution.test.d.ts","sourceRoot":"","sources":["../../../src/providers/__tests__/thread-input-resource-resolution.test.tsx"],"names":[],"mappings":""}