@assistant-ui/react 0.10.50 → 0.11.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 (526) hide show
  1. package/dist/api/AttachmentRuntime.d.ts.map +1 -1
  2. package/dist/api/AttachmentRuntime.js +1 -0
  3. package/dist/api/AttachmentRuntime.js.map +1 -1
  4. package/dist/api/ComposerRuntime.d.ts +5 -2
  5. package/dist/api/ComposerRuntime.d.ts.map +1 -1
  6. package/dist/api/ComposerRuntime.js +4 -6
  7. package/dist/api/ComposerRuntime.js.map +1 -1
  8. package/dist/api/MessagePartRuntime.d.ts.map +1 -1
  9. package/dist/api/MessagePartRuntime.js +1 -0
  10. package/dist/api/MessagePartRuntime.js.map +1 -1
  11. package/dist/api/MessageRuntime.d.ts.map +1 -1
  12. package/dist/api/MessageRuntime.js +1 -0
  13. package/dist/api/MessageRuntime.js.map +1 -1
  14. package/dist/api/ThreadListItemRuntime.d.ts.map +1 -1
  15. package/dist/api/ThreadListItemRuntime.js +5 -0
  16. package/dist/api/ThreadListItemRuntime.js.map +1 -1
  17. package/dist/api/ThreadListRuntime.d.ts +2 -3
  18. package/dist/api/ThreadListRuntime.d.ts.map +1 -1
  19. package/dist/api/ThreadListRuntime.js +6 -7
  20. package/dist/api/ThreadListRuntime.js.map +1 -1
  21. package/dist/api/ThreadRuntime.d.ts +6 -6
  22. package/dist/api/ThreadRuntime.d.ts.map +1 -1
  23. package/dist/api/ThreadRuntime.js +5 -4
  24. package/dist/api/ThreadRuntime.js.map +1 -1
  25. package/dist/client/AssistantRuntimeClient.d.ts +86 -0
  26. package/dist/client/AssistantRuntimeClient.d.ts.map +1 -0
  27. package/dist/client/AssistantRuntimeClient.js +138 -0
  28. package/dist/client/AssistantRuntimeClient.js.map +1 -0
  29. package/dist/client/AttachmentClient.d.ts +6 -0
  30. package/dist/client/AttachmentClient.d.ts.map +1 -0
  31. package/dist/client/AttachmentClient.js +1 -0
  32. package/dist/client/AttachmentClient.js.map +1 -0
  33. package/dist/client/ComposerClient.d.ts +42 -0
  34. package/dist/client/ComposerClient.d.ts.map +1 -0
  35. package/dist/client/ComposerClient.js +76 -0
  36. package/dist/client/ComposerClient.js.map +1 -0
  37. package/dist/client/EventManagerClient.d.ts +9 -0
  38. package/dist/client/EventManagerClient.d.ts.map +1 -0
  39. package/dist/client/EventManagerClient.js +40 -0
  40. package/dist/client/EventManagerClient.js.map +1 -0
  41. package/dist/client/MessageClient.d.ts +67 -0
  42. package/dist/client/MessageClient.d.ts.map +1 -0
  43. package/dist/client/MessageClient.js +108 -0
  44. package/dist/client/MessageClient.js.map +1 -0
  45. package/dist/client/MessagePartClient.d.ts +21 -0
  46. package/dist/client/MessagePartClient.d.ts.map +1 -0
  47. package/dist/client/MessagePartClient.js +25 -0
  48. package/dist/client/MessagePartClient.js.map +1 -0
  49. package/dist/client/ThreadClient.d.ts +111 -0
  50. package/dist/client/ThreadClient.d.ts.map +1 -0
  51. package/dist/client/ThreadClient.js +126 -0
  52. package/dist/client/ThreadClient.js.map +1 -0
  53. package/dist/client/ThreadListClient.d.ts +33 -0
  54. package/dist/client/ThreadListClient.d.ts.map +1 -0
  55. package/dist/client/ThreadListClient.js +87 -0
  56. package/dist/client/ThreadListClient.js.map +1 -0
  57. package/dist/client/ThreadListItemClient.d.ts +32 -0
  58. package/dist/client/ThreadListItemClient.d.ts.map +1 -0
  59. package/dist/client/ThreadListItemClient.js +53 -0
  60. package/dist/client/ThreadListItemClient.js.map +1 -0
  61. package/dist/client/util-hooks/tapLookupResources.d.ts +16 -0
  62. package/dist/client/util-hooks/tapLookupResources.d.ts.map +1 -0
  63. package/dist/client/util-hooks/tapLookupResources.js +21 -0
  64. package/dist/client/util-hooks/tapLookupResources.js.map +1 -0
  65. package/dist/client/util-hooks/tapSubscribable.d.ts +3 -0
  66. package/dist/client/util-hooks/tapSubscribable.d.ts.map +1 -0
  67. package/dist/client/util-hooks/tapSubscribable.js +16 -0
  68. package/dist/client/util-hooks/tapSubscribable.js.map +1 -0
  69. package/dist/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -1
  70. package/dist/cloud/AssistantCloudThreadHistoryAdapter.js +21 -12
  71. package/dist/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
  72. package/dist/context/providers/AssistantRuntimeProvider.d.ts +3 -3
  73. package/dist/context/providers/AssistantRuntimeProvider.d.ts.map +1 -1
  74. package/dist/context/providers/AssistantRuntimeProvider.js +14 -42
  75. package/dist/context/providers/AssistantRuntimeProvider.js.map +1 -1
  76. package/dist/context/providers/AttachmentProvider.d.ts +8 -0
  77. package/dist/context/providers/AttachmentProvider.d.ts.map +1 -0
  78. package/dist/context/providers/AttachmentProvider.js +41 -0
  79. package/dist/context/providers/AttachmentProvider.js.map +1 -0
  80. package/dist/context/providers/MessageProvider.d.ts +5 -0
  81. package/dist/context/providers/MessageProvider.d.ts.map +1 -0
  82. package/dist/context/providers/MessageProvider.js +47 -0
  83. package/dist/context/providers/MessageProvider.js.map +1 -0
  84. package/dist/context/providers/PartProvider.d.ts +5 -0
  85. package/dist/context/providers/PartProvider.d.ts.map +1 -0
  86. package/dist/context/providers/PartProvider.js +27 -0
  87. package/dist/context/providers/PartProvider.js.map +1 -0
  88. package/dist/context/providers/TextMessagePartProvider.d.ts +5 -8
  89. package/dist/context/providers/TextMessagePartProvider.d.ts.map +1 -1
  90. package/dist/context/providers/TextMessagePartProvider.js +42 -53
  91. package/dist/context/providers/TextMessagePartProvider.js.map +1 -1
  92. package/dist/context/providers/ThreadListItemProvider.d.ts +9 -0
  93. package/dist/context/providers/ThreadListItemProvider.d.ts.map +1 -0
  94. package/dist/context/providers/ThreadListItemProvider.js +65 -0
  95. package/dist/context/providers/ThreadListItemProvider.js.map +1 -0
  96. package/dist/context/providers/index.d.ts +4 -1
  97. package/dist/context/providers/index.d.ts.map +1 -1
  98. package/dist/context/providers/index.js +17 -3
  99. package/dist/context/providers/index.js.map +1 -1
  100. package/dist/context/react/AssistantApiContext.d.ts +112 -0
  101. package/dist/context/react/AssistantApiContext.d.ts.map +1 -0
  102. package/dist/context/react/AssistantApiContext.js +197 -0
  103. package/dist/context/react/AssistantApiContext.js.map +1 -0
  104. package/dist/context/react/index.d.ts +9 -12
  105. package/dist/context/react/index.d.ts.map +1 -1
  106. package/dist/context/react/index.js +38 -33
  107. package/dist/context/react/index.js.map +1 -1
  108. package/dist/context/react/legacy/AssistantContext.d.ts +58 -0
  109. package/dist/context/react/legacy/AssistantContext.d.ts.map +1 -0
  110. package/dist/context/react/legacy/AssistantContext.js +20 -0
  111. package/dist/context/react/legacy/AssistantContext.js.map +1 -0
  112. package/dist/context/react/{AttachmentContext.d.ts → legacy/AttachmentContext.d.ts} +133 -139
  113. package/dist/context/react/legacy/AttachmentContext.d.ts.map +1 -0
  114. package/dist/context/react/{AttachmentContext.js → legacy/AttachmentContext.js} +9 -15
  115. package/dist/context/react/legacy/AttachmentContext.js.map +1 -0
  116. package/dist/context/react/{ComposerContext.d.ts → legacy/ComposerContext.d.ts} +12 -12
  117. package/dist/context/react/legacy/ComposerContext.d.ts.map +1 -0
  118. package/dist/context/react/legacy/ComposerContext.js +19 -0
  119. package/dist/context/react/legacy/ComposerContext.js.map +1 -0
  120. package/dist/context/react/{MessageContext.d.ts → legacy/MessageContext.d.ts} +23 -47
  121. package/dist/context/react/legacy/MessageContext.d.ts.map +1 -0
  122. package/dist/context/react/legacy/MessageContext.js +24 -0
  123. package/dist/context/react/legacy/MessageContext.js.map +1 -0
  124. package/dist/context/react/legacy/MessagePartContext.d.ts +35 -0
  125. package/dist/context/react/legacy/MessagePartContext.d.ts.map +1 -0
  126. package/dist/context/react/legacy/MessagePartContext.js +19 -0
  127. package/dist/context/react/legacy/MessagePartContext.js.map +1 -0
  128. package/dist/context/react/{ThreadContext.d.ts → legacy/ThreadContext.d.ts} +24 -30
  129. package/dist/context/react/legacy/ThreadContext.d.ts.map +1 -0
  130. package/dist/context/react/legacy/ThreadContext.js +33 -0
  131. package/dist/context/react/legacy/ThreadContext.js.map +1 -0
  132. package/dist/context/react/legacy/ThreadListItemContext.d.ts +35 -0
  133. package/dist/context/react/legacy/ThreadListItemContext.d.ts.map +1 -0
  134. package/dist/context/react/legacy/ThreadListItemContext.js +21 -0
  135. package/dist/context/react/legacy/ThreadListItemContext.js.map +1 -0
  136. package/dist/context/stores/index.d.ts +0 -2
  137. package/dist/context/stores/index.d.ts.map +1 -1
  138. package/dist/hooks/useAssistantEvent.d.ts +3 -0
  139. package/dist/hooks/useAssistantEvent.d.ts.map +1 -0
  140. package/dist/hooks/useAssistantEvent.js +22 -0
  141. package/dist/hooks/useAssistantEvent.js.map +1 -0
  142. package/dist/model-context/makeAssistantVisible.js +4 -4
  143. package/dist/model-context/makeAssistantVisible.js.map +1 -1
  144. package/dist/model-context/useAssistantInstructions.js +4 -4
  145. package/dist/model-context/useAssistantInstructions.js.map +1 -1
  146. package/dist/model-context/useAssistantTool.d.ts.map +1 -1
  147. package/dist/model-context/useAssistantTool.js +7 -10
  148. package/dist/model-context/useAssistantTool.js.map +1 -1
  149. package/dist/model-context/useAssistantToolUI.js +5 -5
  150. package/dist/model-context/useAssistantToolUI.js.map +1 -1
  151. package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
  152. package/dist/primitives/actionBar/ActionBarCopy.js +12 -17
  153. package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
  154. package/dist/primitives/actionBar/ActionBarEdit.js +5 -5
  155. package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
  156. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
  157. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +6 -7
  158. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
  159. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +6 -6
  160. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
  161. package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
  162. package/dist/primitives/actionBar/ActionBarReload.js +6 -10
  163. package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
  164. package/dist/primitives/actionBar/ActionBarSpeak.js +6 -6
  165. package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
  166. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
  167. package/dist/primitives/actionBar/ActionBarStopSpeaking.js +5 -8
  168. package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
  169. package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts.map +1 -1
  170. package/dist/primitives/actionBar/useActionBarFloatStatus.js +10 -21
  171. package/dist/primitives/actionBar/useActionBarFloatStatus.js.map +1 -1
  172. package/dist/primitives/assistantModal/AssistantModalRoot.js +4 -4
  173. package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
  174. package/dist/primitives/attachment/AttachmentName.js +2 -2
  175. package/dist/primitives/attachment/AttachmentName.js.map +1 -1
  176. package/dist/primitives/attachment/AttachmentRemove.js +4 -4
  177. package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
  178. package/dist/primitives/attachment/AttachmentThumb.d.ts.map +1 -1
  179. package/dist/primitives/attachment/AttachmentThumb.js +5 -2
  180. package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
  181. package/dist/primitives/branchPicker/BranchPickerCount.js +2 -2
  182. package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
  183. package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
  184. package/dist/primitives/branchPicker/BranchPickerNext.js +7 -8
  185. package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
  186. package/dist/primitives/branchPicker/BranchPickerNumber.js +2 -2
  187. package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
  188. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
  189. package/dist/primitives/branchPicker/BranchPickerPrevious.js +7 -8
  190. package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
  191. package/dist/primitives/composer/ComposerAddAttachment.js +6 -6
  192. package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
  193. package/dist/primitives/composer/ComposerAttachmentDropzone.js +4 -4
  194. package/dist/primitives/composer/ComposerAttachmentDropzone.js.map +1 -1
  195. package/dist/primitives/composer/ComposerAttachments.d.ts.map +1 -1
  196. package/dist/primitives/composer/ComposerAttachments.js +11 -13
  197. package/dist/primitives/composer/ComposerAttachments.js.map +1 -1
  198. package/dist/primitives/composer/ComposerCancel.js +5 -5
  199. package/dist/primitives/composer/ComposerCancel.js.map +1 -1
  200. package/dist/primitives/composer/ComposerIf.js +2 -2
  201. package/dist/primitives/composer/ComposerIf.js.map +1 -1
  202. package/dist/primitives/composer/ComposerInput.d.ts.map +1 -1
  203. package/dist/primitives/composer/ComposerInput.js +22 -32
  204. package/dist/primitives/composer/ComposerInput.js.map +1 -1
  205. package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
  206. package/dist/primitives/composer/ComposerSend.js +6 -10
  207. package/dist/primitives/composer/ComposerSend.js.map +1 -1
  208. package/dist/primitives/error/ErrorMessage.d.ts.map +1 -1
  209. package/dist/primitives/error/ErrorMessage.js +3 -3
  210. package/dist/primitives/error/ErrorMessage.js.map +1 -1
  211. package/dist/primitives/message/MessageAttachments.d.ts.map +1 -1
  212. package/dist/primitives/message/MessageAttachments.js +9 -11
  213. package/dist/primitives/message/MessageAttachments.js.map +1 -1
  214. package/dist/primitives/message/MessageError.d.ts.map +1 -1
  215. package/dist/primitives/message/MessageError.js +3 -3
  216. package/dist/primitives/message/MessageError.js.map +1 -1
  217. package/dist/primitives/message/MessageIf.d.ts.map +1 -1
  218. package/dist/primitives/message/MessageIf.js +28 -34
  219. package/dist/primitives/message/MessageIf.js.map +1 -1
  220. package/dist/primitives/message/MessageParts.d.ts.map +1 -1
  221. package/dist/primitives/message/MessageParts.js +25 -27
  222. package/dist/primitives/message/MessageParts.js.map +1 -1
  223. package/dist/primitives/message/MessagePartsGrouped.d.ts.map +1 -1
  224. package/dist/primitives/message/MessagePartsGrouped.js +24 -26
  225. package/dist/primitives/message/MessagePartsGrouped.js.map +1 -1
  226. package/dist/primitives/message/MessageRoot.d.ts.map +1 -1
  227. package/dist/primitives/message/MessageRoot.js +8 -7
  228. package/dist/primitives/message/MessageRoot.js.map +1 -1
  229. package/dist/primitives/messagePart/MessagePartInProgress.d.ts.map +1 -1
  230. package/dist/primitives/messagePart/MessagePartInProgress.js +4 -2
  231. package/dist/primitives/messagePart/MessagePartInProgress.js.map +1 -1
  232. package/dist/primitives/messagePart/useMessagePartFile.js +4 -4
  233. package/dist/primitives/messagePart/useMessagePartFile.js.map +1 -1
  234. package/dist/primitives/messagePart/useMessagePartImage.js +4 -4
  235. package/dist/primitives/messagePart/useMessagePartImage.js.map +1 -1
  236. package/dist/primitives/messagePart/useMessagePartReasoning.js +4 -4
  237. package/dist/primitives/messagePart/useMessagePartReasoning.js.map +1 -1
  238. package/dist/primitives/messagePart/useMessagePartSource.js +4 -4
  239. package/dist/primitives/messagePart/useMessagePartSource.js.map +1 -1
  240. package/dist/primitives/messagePart/useMessagePartText.js +4 -4
  241. package/dist/primitives/messagePart/useMessagePartText.js.map +1 -1
  242. package/dist/primitives/thread/ThreadEmpty.js +2 -2
  243. package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
  244. package/dist/primitives/thread/ThreadIf.js +2 -2
  245. package/dist/primitives/thread/ThreadIf.js.map +1 -1
  246. package/dist/primitives/thread/ThreadMessages.d.ts.map +1 -1
  247. package/dist/primitives/thread/ThreadMessages.js +9 -12
  248. package/dist/primitives/thread/ThreadMessages.js.map +1 -1
  249. package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
  250. package/dist/primitives/thread/ThreadSuggestion.js +8 -8
  251. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  252. package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts.map +1 -1
  253. package/dist/primitives/thread/useThreadViewportAutoScroll.js +3 -6
  254. package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -1
  255. package/dist/primitives/threadList/ThreadListItems.d.ts.map +1 -1
  256. package/dist/primitives/threadList/ThreadListItems.js +7 -10
  257. package/dist/primitives/threadList/ThreadListItems.js.map +1 -1
  258. package/dist/primitives/threadList/ThreadListNew.d.ts +1 -3
  259. package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -1
  260. package/dist/primitives/threadList/ThreadListNew.js +7 -11
  261. package/dist/primitives/threadList/ThreadListNew.js.map +1 -1
  262. package/dist/primitives/threadListItem/ThreadListItemArchive.js +4 -4
  263. package/dist/primitives/threadListItem/ThreadListItemArchive.js.map +1 -1
  264. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -1
  265. package/dist/primitives/threadListItem/ThreadListItemDelete.js +6 -5
  266. package/dist/primitives/threadListItem/ThreadListItemDelete.js.map +1 -1
  267. package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -1
  268. package/dist/primitives/threadListItem/ThreadListItemRoot.js +4 -2
  269. package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -1
  270. package/dist/primitives/threadListItem/ThreadListItemTitle.js +2 -2
  271. package/dist/primitives/threadListItem/ThreadListItemTitle.js.map +1 -1
  272. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -1
  273. package/dist/primitives/threadListItem/ThreadListItemTrigger.js +6 -5
  274. package/dist/primitives/threadListItem/ThreadListItemTrigger.js.map +1 -1
  275. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -1
  276. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js +6 -5
  277. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js.map +1 -1
  278. package/dist/runtimes/adapters/attachment/index.js.map +1 -1
  279. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts +1 -1
  280. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts.map +1 -1
  281. package/dist/runtimes/composer/BaseComposerRuntimeCore.js +3 -3
  282. package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
  283. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +1 -1
  284. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -1
  285. package/dist/runtimes/core/BaseThreadRuntimeCore.js +5 -1
  286. package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
  287. package/dist/runtimes/core/ComposerRuntimeCore.d.ts +2 -2
  288. package/dist/runtimes/core/ComposerRuntimeCore.d.ts.map +1 -1
  289. package/dist/runtimes/core/ThreadListRuntimeCore.d.ts +5 -5
  290. package/dist/runtimes/core/ThreadListRuntimeCore.d.ts.map +1 -1
  291. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts +5 -2
  292. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts.map +1 -1
  293. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts +6 -4
  294. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts.map +1 -1
  295. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js +42 -7
  296. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js.map +1 -1
  297. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -1
  298. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +3 -0
  299. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
  300. package/dist/runtimes/external-store/createMessageConverter.d.ts +2 -2
  301. package/dist/runtimes/external-store/createMessageConverter.d.ts.map +1 -1
  302. package/dist/runtimes/external-store/createMessageConverter.js +9 -6
  303. package/dist/runtimes/external-store/createMessageConverter.js.map +1 -1
  304. package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts +10 -1
  305. package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts.map +1 -1
  306. package/dist/runtimes/local/LocalThreadListRuntimeCore.js +15 -2
  307. package/dist/runtimes/local/LocalThreadListRuntimeCore.js.map +1 -1
  308. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.d.ts.map +1 -1
  309. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js +3 -5
  310. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js.map +1 -1
  311. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts.map +1 -1
  312. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js +13 -19
  313. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js.map +1 -1
  314. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts +11 -7
  315. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -1
  316. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js +41 -35
  317. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
  318. package/dist/tests/setup.js +8 -8
  319. package/dist/tests/setup.js.map +1 -1
  320. package/dist/types/EventTypes.d.ts +49 -0
  321. package/dist/types/EventTypes.d.ts.map +1 -0
  322. package/dist/types/EventTypes.js +22 -0
  323. package/dist/types/EventTypes.js.map +1 -0
  324. package/dist/types/index.d.ts +1 -0
  325. package/dist/types/index.d.ts.map +1 -1
  326. package/dist/utils/smooth/SmoothContext.js +3 -3
  327. package/dist/utils/smooth/SmoothContext.js.map +1 -1
  328. package/dist/utils/smooth/useSmooth.d.ts.map +1 -1
  329. package/dist/utils/smooth/useSmooth.js +2 -5
  330. package/dist/utils/smooth/useSmooth.js.map +1 -1
  331. package/dist/utils/tap-store/index.d.ts +3 -0
  332. package/dist/utils/tap-store/index.d.ts.map +1 -0
  333. package/dist/utils/tap-store/index.js +8 -0
  334. package/dist/utils/tap-store/index.js.map +1 -0
  335. package/dist/utils/tap-store/store.d.ts +21 -0
  336. package/dist/utils/tap-store/store.d.ts.map +1 -0
  337. package/dist/utils/tap-store/store.js +29 -0
  338. package/dist/utils/tap-store/store.js.map +1 -0
  339. package/dist/utils/tap-store/tap-store-api.d.ts +8 -0
  340. package/dist/utils/tap-store/tap-store-api.d.ts.map +1 -0
  341. package/dist/utils/tap-store/tap-store-api.js +57 -0
  342. package/dist/utils/tap-store/tap-store-api.js.map +1 -0
  343. package/dist/utils/useToolArgsFieldStatus.js +6 -6
  344. package/dist/utils/useToolArgsFieldStatus.js.map +1 -1
  345. package/package.json +2 -1
  346. package/src/api/AttachmentRuntime.ts +3 -1
  347. package/src/api/ComposerRuntime.ts +16 -9
  348. package/src/api/MessagePartRuntime.ts +3 -1
  349. package/src/api/MessageRuntime.ts +2 -0
  350. package/src/api/ThreadListItemRuntime.ts +11 -1
  351. package/src/api/ThreadListRuntime.ts +9 -9
  352. package/src/api/ThreadRuntime.ts +9 -7
  353. package/src/client/AssistantRuntimeClient.ts +197 -0
  354. package/src/client/AttachmentClient.ts +11 -0
  355. package/src/client/ComposerClient.ts +133 -0
  356. package/src/client/EventManagerClient.ts +63 -0
  357. package/src/client/MessageClient.ts +196 -0
  358. package/src/client/MessagePartClient.ts +53 -0
  359. package/src/client/ThreadClient.ts +280 -0
  360. package/src/client/ThreadListClient.ts +135 -0
  361. package/src/client/ThreadListItemClient.ts +88 -0
  362. package/src/client/util-hooks/tapLookupResources.ts +31 -0
  363. package/src/client/util-hooks/tapSubscribable.ts +16 -0
  364. package/src/cloud/AssistantCloudThreadHistoryAdapter.tsx +24 -13
  365. package/src/context/providers/AssistantRuntimeProvider.tsx +27 -51
  366. package/src/context/providers/AttachmentProvider.tsx +48 -0
  367. package/src/context/providers/MessageProvider.tsx +57 -0
  368. package/src/context/providers/PartProvider.tsx +28 -0
  369. package/src/context/providers/TextMessagePartProvider.tsx +53 -78
  370. package/src/context/providers/ThreadListItemProvider.tsx +84 -0
  371. package/src/context/providers/index.ts +10 -3
  372. package/src/context/react/AssistantApiContext.tsx +392 -0
  373. package/src/context/react/index.ts +30 -37
  374. package/src/context/react/{AssistantContext.ts → legacy/AssistantContext.ts} +12 -31
  375. package/src/context/react/{AttachmentContext.ts → legacy/AttachmentContext.ts} +11 -22
  376. package/src/context/react/{ComposerContext.ts → legacy/ComposerContext.ts} +11 -9
  377. package/src/context/react/{MessageContext.ts → legacy/MessageContext.ts} +12 -29
  378. package/src/context/react/legacy/MessagePartContext.ts +24 -0
  379. package/src/context/react/{ThreadContext.ts → legacy/ThreadContext.ts} +15 -25
  380. package/src/context/react/legacy/ThreadListItemContext.ts +28 -0
  381. package/src/context/stores/index.ts +0 -2
  382. package/src/hooks/useAssistantEvent.ts +24 -0
  383. package/src/model-context/makeAssistantVisible.tsx +4 -4
  384. package/src/model-context/useAssistantInstructions.tsx +4 -4
  385. package/src/model-context/useAssistantTool.tsx +7 -12
  386. package/src/model-context/useAssistantToolUI.tsx +5 -5
  387. package/src/primitives/actionBar/ActionBarCopy.tsx +14 -20
  388. package/src/primitives/actionBar/ActionBarEdit.tsx +5 -5
  389. package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +6 -7
  390. package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +6 -6
  391. package/src/primitives/actionBar/ActionBarReload.tsx +9 -10
  392. package/src/primitives/actionBar/ActionBarSpeak.tsx +7 -7
  393. package/src/primitives/actionBar/ActionBarStopSpeaking.tsx +5 -8
  394. package/src/primitives/actionBar/useActionBarFloatStatus.tsx +22 -34
  395. package/src/primitives/assistantModal/AssistantModalRoot.tsx +4 -4
  396. package/src/primitives/attachment/AttachmentName.tsx +2 -2
  397. package/src/primitives/attachment/AttachmentRemove.tsx +4 -4
  398. package/src/primitives/attachment/AttachmentThumb.tsx +5 -2
  399. package/src/primitives/branchPicker/BranchPickerCount.tsx +2 -2
  400. package/src/primitives/branchPicker/BranchPickerNext.tsx +7 -8
  401. package/src/primitives/branchPicker/BranchPickerNumber.tsx +2 -2
  402. package/src/primitives/branchPicker/BranchPickerPrevious.tsx +7 -8
  403. package/src/primitives/composer/ComposerAddAttachment.tsx +6 -6
  404. package/src/primitives/composer/ComposerAttachmentDropzone.tsx +4 -4
  405. package/src/primitives/composer/ComposerAttachments.tsx +12 -15
  406. package/src/primitives/composer/ComposerCancel.tsx +5 -5
  407. package/src/primitives/composer/ComposerIf.tsx +2 -2
  408. package/src/primitives/composer/ComposerInput.tsx +32 -32
  409. package/src/primitives/composer/ComposerSend.tsx +6 -10
  410. package/src/primitives/error/ErrorMessage.tsx +5 -4
  411. package/src/primitives/message/MessageAttachments.tsx +10 -13
  412. package/src/primitives/message/MessageError.tsx +5 -3
  413. package/src/primitives/message/MessageIf.tsx +43 -52
  414. package/src/primitives/message/MessageParts.tsx +26 -31
  415. package/src/primitives/message/MessagePartsGrouped.tsx +25 -30
  416. package/src/primitives/message/MessageRoot.tsx +10 -8
  417. package/src/primitives/messagePart/MessagePartInProgress.tsx +4 -2
  418. package/src/primitives/messagePart/useMessagePartFile.tsx +4 -4
  419. package/src/primitives/messagePart/useMessagePartImage.tsx +4 -4
  420. package/src/primitives/messagePart/useMessagePartReasoning.tsx +4 -4
  421. package/src/primitives/messagePart/useMessagePartSource.tsx +4 -4
  422. package/src/primitives/messagePart/useMessagePartText.tsx +4 -4
  423. package/src/primitives/thread/ThreadEmpty.tsx +2 -2
  424. package/src/primitives/thread/ThreadIf.tsx +2 -2
  425. package/src/primitives/thread/ThreadMessages.tsx +10 -14
  426. package/src/primitives/thread/ThreadSuggestion.tsx +8 -8
  427. package/src/primitives/thread/useThreadViewportAutoScroll.tsx +3 -6
  428. package/src/primitives/threadList/ThreadListItems.tsx +8 -15
  429. package/src/primitives/threadList/ThreadListNew.tsx +9 -13
  430. package/src/primitives/threadListItem/ThreadListItemArchive.ts +4 -4
  431. package/src/primitives/threadListItem/ThreadListItemDelete.ts +6 -5
  432. package/src/primitives/threadListItem/ThreadListItemRoot.tsx +4 -2
  433. package/src/primitives/threadListItem/ThreadListItemTitle.tsx +2 -2
  434. package/src/primitives/threadListItem/ThreadListItemTrigger.ts +6 -5
  435. package/src/primitives/threadListItem/ThreadListItemUnarchive.ts +6 -5
  436. package/src/runtimes/adapters/attachment/index.ts +1 -1
  437. package/src/runtimes/composer/BaseComposerRuntimeCore.tsx +3 -3
  438. package/src/runtimes/core/BaseThreadRuntimeCore.tsx +5 -1
  439. package/src/runtimes/core/ComposerRuntimeCore.tsx +2 -2
  440. package/src/runtimes/core/ThreadListRuntimeCore.tsx +6 -4
  441. package/src/runtimes/external-store/ExternalStoreAdapter.tsx +5 -2
  442. package/src/runtimes/external-store/ExternalStoreThreadListRuntimeCore.tsx +53 -12
  443. package/src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx +4 -0
  444. package/src/runtimes/external-store/createMessageConverter.tsx +10 -6
  445. package/src/runtimes/local/LocalThreadListRuntimeCore.tsx +16 -2
  446. package/src/runtimes/remote-thread-list/EMPTY_THREAD_CORE.tsx +3 -6
  447. package/src/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.tsx +14 -19
  448. package/src/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.tsx +50 -43
  449. package/src/types/EventTypes.ts +92 -0
  450. package/src/types/index.ts +6 -0
  451. package/src/utils/smooth/SmoothContext.tsx +3 -3
  452. package/src/utils/smooth/useSmooth.tsx +2 -5
  453. package/src/utils/tap-store/index.ts +2 -0
  454. package/src/utils/tap-store/store.ts +51 -0
  455. package/src/utils/tap-store/tap-store-api.ts +75 -0
  456. package/src/utils/useToolArgsFieldStatus.tsx +6 -6
  457. package/dist/context/providers/AttachmentRuntimeProvider.d.ts +0 -9
  458. package/dist/context/providers/AttachmentRuntimeProvider.d.ts.map +0 -1
  459. package/dist/context/providers/AttachmentRuntimeProvider.js +0 -33
  460. package/dist/context/providers/AttachmentRuntimeProvider.js.map +0 -1
  461. package/dist/context/providers/MessagePartRuntimeProvider.d.ts +0 -9
  462. package/dist/context/providers/MessagePartRuntimeProvider.d.ts.map +0 -1
  463. package/dist/context/providers/MessagePartRuntimeProvider.js +0 -28
  464. package/dist/context/providers/MessagePartRuntimeProvider.js.map +0 -1
  465. package/dist/context/providers/MessageRuntimeProvider.d.ts +0 -9
  466. package/dist/context/providers/MessageRuntimeProvider.d.ts.map +0 -1
  467. package/dist/context/providers/MessageRuntimeProvider.js +0 -37
  468. package/dist/context/providers/MessageRuntimeProvider.js.map +0 -1
  469. package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts +0 -9
  470. package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts.map +0 -1
  471. package/dist/context/providers/ThreadListItemRuntimeProvider.js +0 -30
  472. package/dist/context/providers/ThreadListItemRuntimeProvider.js.map +0 -1
  473. package/dist/context/providers/ThreadRuntimeProvider.d.ts +0 -10
  474. package/dist/context/providers/ThreadRuntimeProvider.d.ts.map +0 -1
  475. package/dist/context/providers/ThreadRuntimeProvider.js +0 -33
  476. package/dist/context/providers/ThreadRuntimeProvider.js.map +0 -1
  477. package/dist/context/react/AssistantContext.d.ts +0 -85
  478. package/dist/context/react/AssistantContext.d.ts.map +0 -1
  479. package/dist/context/react/AssistantContext.js +0 -34
  480. package/dist/context/react/AssistantContext.js.map +0 -1
  481. package/dist/context/react/AttachmentContext.d.ts.map +0 -1
  482. package/dist/context/react/AttachmentContext.js.map +0 -1
  483. package/dist/context/react/ComposerContext.d.ts.map +0 -1
  484. package/dist/context/react/ComposerContext.js +0 -17
  485. package/dist/context/react/ComposerContext.js.map +0 -1
  486. package/dist/context/react/MessageContext.d.ts.map +0 -1
  487. package/dist/context/react/MessageContext.js +0 -35
  488. package/dist/context/react/MessageContext.js.map +0 -1
  489. package/dist/context/react/MessagePartContext.d.ts +0 -41
  490. package/dist/context/react/MessagePartContext.d.ts.map +0 -1
  491. package/dist/context/react/MessagePartContext.js +0 -25
  492. package/dist/context/react/MessagePartContext.js.map +0 -1
  493. package/dist/context/react/ThreadContext.d.ts.map +0 -1
  494. package/dist/context/react/ThreadContext.js +0 -38
  495. package/dist/context/react/ThreadContext.js.map +0 -1
  496. package/dist/context/react/ThreadListItemContext.d.ts +0 -41
  497. package/dist/context/react/ThreadListItemContext.d.ts.map +0 -1
  498. package/dist/context/react/ThreadListItemContext.js +0 -25
  499. package/dist/context/react/ThreadListItemContext.js.map +0 -1
  500. package/dist/context/stores/AssistantToolUIs.d.ts +0 -14
  501. package/dist/context/stores/AssistantToolUIs.d.ts.map +0 -1
  502. package/dist/context/stores/AssistantToolUIs.js +0 -35
  503. package/dist/context/stores/AssistantToolUIs.js.map +0 -1
  504. package/dist/context/stores/MessageUtils.d.ts +0 -8
  505. package/dist/context/stores/MessageUtils.d.ts.map +0 -1
  506. package/dist/context/stores/MessageUtils.js +0 -18
  507. package/dist/context/stores/MessageUtils.js.map +0 -1
  508. package/dist/utils/combined/createCombinedStore.d.ts +0 -8
  509. package/dist/utils/combined/createCombinedStore.d.ts.map +0 -1
  510. package/dist/utils/combined/createCombinedStore.js +0 -22
  511. package/dist/utils/combined/createCombinedStore.js.map +0 -1
  512. package/dist/utils/combined/useCombinedStore.d.ts +0 -3
  513. package/dist/utils/combined/useCombinedStore.d.ts.map +0 -1
  514. package/dist/utils/combined/useCombinedStore.js +0 -15
  515. package/dist/utils/combined/useCombinedStore.js.map +0 -1
  516. package/src/context/providers/AttachmentRuntimeProvider.tsx +0 -44
  517. package/src/context/providers/MessagePartRuntimeProvider.tsx +0 -42
  518. package/src/context/providers/MessageRuntimeProvider.tsx +0 -50
  519. package/src/context/providers/ThreadListItemRuntimeProvider.tsx +0 -43
  520. package/src/context/providers/ThreadRuntimeProvider.tsx +0 -53
  521. package/src/context/react/MessagePartContext.ts +0 -37
  522. package/src/context/react/ThreadListItemContext.ts +0 -38
  523. package/src/context/stores/AssistantToolUIs.ts +0 -51
  524. package/src/context/stores/MessageUtils.ts +0 -23
  525. package/src/utils/combined/createCombinedStore.ts +0 -31
  526. package/src/utils/combined/useCombinedStore.ts +0 -17
@@ -0,0 +1,197 @@
1
+ "use client";
2
+
3
+ // src/context/react/AssistantApiContext.tsx
4
+ import {
5
+ createContext,
6
+ useContext,
7
+ useDebugValue,
8
+ useMemo,
9
+ useSyncExternalStore
10
+ } from "react";
11
+ import {
12
+ normalizeEventSelector
13
+ } from "../../types/EventTypes.js";
14
+ import { jsx } from "react/jsx-runtime";
15
+ var createAssistantApiField = (config) => {
16
+ const fn = config.get;
17
+ fn.source = config.source;
18
+ fn.query = config.query;
19
+ return fn;
20
+ };
21
+ var NO_OP_FN = () => () => {
22
+ };
23
+ var AssistantApiContext = createContext({
24
+ threads: createAssistantApiField({
25
+ source: null,
26
+ query: {},
27
+ get: () => {
28
+ throw new Error("Threads is only available inside <AssistantProvider />");
29
+ }
30
+ }),
31
+ toolUIs: createAssistantApiField({
32
+ source: null,
33
+ query: {},
34
+ get: () => {
35
+ throw new Error("ToolUIs is only available inside <AssistantProvider />");
36
+ }
37
+ }),
38
+ threadListItem: createAssistantApiField({
39
+ source: null,
40
+ query: {},
41
+ get: () => {
42
+ throw new Error(
43
+ "ThreadListItem is only available inside <AssistantProvider />"
44
+ );
45
+ }
46
+ }),
47
+ thread: createAssistantApiField({
48
+ source: null,
49
+ query: {},
50
+ get: () => {
51
+ throw new Error("Thread is only available inside <AssistantProvider />");
52
+ }
53
+ }),
54
+ composer: createAssistantApiField({
55
+ source: null,
56
+ query: {},
57
+ get: () => {
58
+ throw new Error(
59
+ "Composer is only available inside <AssistantProvider />"
60
+ );
61
+ }
62
+ }),
63
+ message: createAssistantApiField({
64
+ source: null,
65
+ query: {},
66
+ get: () => {
67
+ throw new Error(
68
+ "Message is only available inside <ThreadPrimitive.Messages />"
69
+ );
70
+ }
71
+ }),
72
+ part: createAssistantApiField({
73
+ source: null,
74
+ query: {},
75
+ get: () => {
76
+ throw new Error(
77
+ "Part is only available inside <MessagePrimitive.Parts />"
78
+ );
79
+ }
80
+ }),
81
+ attachment: createAssistantApiField({
82
+ source: null,
83
+ query: {},
84
+ get: () => {
85
+ throw new Error(
86
+ "Attachment is only available inside <MessagePrimitive.Attachments /> or <ComposerPrimitive.Attachments />"
87
+ );
88
+ }
89
+ }),
90
+ subscribe: NO_OP_FN,
91
+ flushSync: NO_OP_FN,
92
+ on: (selector) => {
93
+ const { scope } = normalizeEventSelector(selector);
94
+ throw new Error(`Event scope is not available in this component: ${scope}`);
95
+ },
96
+ registerModelContextProvider: () => {
97
+ throw new Error(
98
+ "Registering model context providers is only available inside <AssistantProvider />"
99
+ );
100
+ },
101
+ __internal_getRuntime: () => {
102
+ return null;
103
+ }
104
+ });
105
+ var useAssistantApi = () => {
106
+ return useContext(AssistantApiContext);
107
+ };
108
+ var useAssistantState = (selector) => {
109
+ const api = useAssistantApi();
110
+ const proxiedState = useMemo(() => new ProxiedAssistantState(api), [api]);
111
+ const slice = useSyncExternalStore(
112
+ api.subscribe,
113
+ () => selector(proxiedState),
114
+ () => selector(proxiedState)
115
+ );
116
+ useDebugValue(slice);
117
+ if (slice instanceof ProxiedAssistantState)
118
+ throw new Error(
119
+ "You tried to return the entire AssistantState. This is not supported due to technical limitations."
120
+ );
121
+ return slice;
122
+ };
123
+ var ProxiedAssistantState = class {
124
+ #api;
125
+ constructor(api) {
126
+ this.#api = api;
127
+ }
128
+ get threads() {
129
+ return this.#api.threads().getState();
130
+ }
131
+ get toolUIs() {
132
+ return this.#api.toolUIs().getState();
133
+ }
134
+ get threadListItem() {
135
+ return this.#api.threadListItem().getState();
136
+ }
137
+ get thread() {
138
+ return this.#api.thread().getState();
139
+ }
140
+ get composer() {
141
+ return this.#api.composer().getState();
142
+ }
143
+ get message() {
144
+ return this.#api.message().getState();
145
+ }
146
+ get part() {
147
+ return this.#api.part().getState();
148
+ }
149
+ get attachment() {
150
+ return this.#api.attachment().getState();
151
+ }
152
+ };
153
+ var mergeFns = (fn1, fn2) => {
154
+ if (fn1 === NO_OP_FN) return fn2;
155
+ if (fn2 === NO_OP_FN) return fn1;
156
+ return (...args) => {
157
+ fn1(...args);
158
+ fn2(...args);
159
+ };
160
+ };
161
+ var mergeFnsWithUnsubscribe = (fn1, fn2) => {
162
+ if (fn1 === NO_OP_FN) return fn2;
163
+ if (fn2 === NO_OP_FN) return fn1;
164
+ return (...args) => {
165
+ const unsubscribe1 = fn1(...args);
166
+ const unsubscribe2 = fn2(...args);
167
+ return () => {
168
+ unsubscribe1();
169
+ unsubscribe2();
170
+ };
171
+ };
172
+ };
173
+ var extendApi = (api, api2) => {
174
+ const api2Subscribe = api2.subscribe;
175
+ const api2FlushSync = api2.flushSync;
176
+ return {
177
+ ...api,
178
+ ...api2,
179
+ subscribe: mergeFnsWithUnsubscribe(
180
+ api.subscribe,
181
+ api2Subscribe ?? NO_OP_FN
182
+ ),
183
+ flushSync: mergeFns(api.flushSync, api2FlushSync ?? NO_OP_FN)
184
+ };
185
+ };
186
+ var AssistantApiProvider = ({ api: api2, children }) => {
187
+ const api = useAssistantApi();
188
+ const extendedApi = useMemo(() => extendApi(api, api2), [api, api2]);
189
+ return /* @__PURE__ */ jsx(AssistantApiContext, { value: extendedApi, children });
190
+ };
191
+ export {
192
+ AssistantApiProvider,
193
+ createAssistantApiField,
194
+ useAssistantApi,
195
+ useAssistantState
196
+ };
197
+ //# sourceMappingURL=AssistantApiContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/context/react/AssistantApiContext.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n createContext,\n FC,\n PropsWithChildren,\n useContext,\n useDebugValue,\n useMemo,\n useSyncExternalStore,\n} from \"react\";\n\nimport {\n AssistantToolUIActions,\n AssistantToolUIState,\n} from \"../../client/AssistantRuntimeClient\";\nimport {\n MessageClientActions,\n MessageClientState,\n} from \"../../client/MessageClient\";\nimport {\n ThreadListItemClientActions,\n ThreadListItemClientState,\n} from \"../../client/ThreadListItemClient\";\nimport {\n MessagePartClientActions,\n MessagePartClientState,\n} from \"../../client/MessagePartClient\";\nimport {\n ThreadClientActions,\n ThreadClientState,\n} from \"../../client/ThreadClient\";\nimport {\n ComposerClientActions,\n ComposerClientState,\n} from \"../../client/ComposerClient\";\nimport {\n AttachmentClientActions,\n AttachmentClientState,\n} from \"../../client/AttachmentClient\";\nimport { StoreApi } from \"../../utils/tap-store/tap-store-api\";\nimport { Unsubscribe } from \"@assistant-ui/tap\";\nimport { ModelContextProvider } from \"../../model-context\";\nimport { AssistantRuntime } from \"../../api\";\nimport {\n AssistantEventSelector,\n AssistantEvents,\n normalizeEventSelector,\n} from \"../../types/EventTypes\";\nimport {\n ThreadListClientActions,\n ThreadListClientState,\n} from \"../../client/ThreadListClient\";\n\nexport type AssistantState = {\n readonly threads: ThreadListClientState;\n readonly toolUIs: AssistantToolUIState;\n\n readonly threadListItem: ThreadListItemClientState;\n readonly thread: ThreadClientState;\n readonly composer: ComposerClientState;\n readonly message: MessageClientState;\n readonly part: MessagePartClientState;\n readonly attachment: AttachmentClientState;\n};\n\ntype AssistantApiField<\n TState,\n TActions,\n TMeta extends { source: string | null; query: any },\n> = (() => StoreApi<TState, TActions>) &\n (TMeta | { source: null; query: Record<string, never> });\n\n// Meta types for each API method\ntype ThreadsMeta = {\n source: \"root\";\n query: Record<string, never>;\n};\n\ntype ToolUIMeta = {\n source: \"root\";\n query: Record<string, never>;\n};\n\ntype ThreadListItemMeta = {\n source: \"threads\";\n query:\n | { type: \"index\"; index: number; archived: boolean }\n | { type: \"main\" }\n | { type: \"id\"; id: string };\n};\n\ntype ThreadMeta = {\n source: \"threads\";\n query: { type: \"main\" };\n};\n\ntype ComposerMeta = {\n source: \"message\" | \"thread\";\n query: Record<string, never>;\n};\n\ntype MessageMeta = {\n source: \"thread\";\n query: { type: \"index\"; index: number };\n};\n\ntype PartMeta = {\n source: \"message\" | \"root\";\n query: { type: \"index\"; index: number } | Record<string, never>;\n};\n\ntype AttachmentMeta = {\n source: \"message\" | \"composer\";\n query: { type: \"index\"; index: number };\n};\n\nexport type AssistantApi = {\n threads: AssistantApiField<\n ThreadListClientState,\n ThreadListClientActions,\n ThreadsMeta\n >;\n toolUIs: AssistantApiField<\n AssistantToolUIState,\n AssistantToolUIActions,\n ToolUIMeta\n >;\n threadListItem: AssistantApiField<\n ThreadListItemClientState,\n ThreadListItemClientActions,\n ThreadListItemMeta\n >;\n thread: AssistantApiField<ThreadClientState, ThreadClientActions, ThreadMeta>;\n composer: AssistantApiField<\n ComposerClientState,\n ComposerClientActions,\n ComposerMeta\n >;\n message: AssistantApiField<\n MessageClientState,\n MessageClientActions,\n MessageMeta\n >;\n part: AssistantApiField<\n MessagePartClientState,\n MessagePartClientActions,\n PartMeta\n >;\n attachment: AssistantApiField<\n AttachmentClientState,\n AttachmentClientActions,\n AttachmentMeta\n >;\n\n subscribe(listener: () => void): Unsubscribe;\n flushSync(): void;\n\n on<TEvent extends keyof AssistantEvents>(\n event: AssistantEventSelector<TEvent>,\n callback: (e: AssistantEvents[TEvent]) => void,\n ): Unsubscribe;\n\n // temp\n registerModelContextProvider(provider: ModelContextProvider): void;\n /** @internal */\n __internal_getRuntime(): AssistantRuntime | null;\n};\n\nexport const createAssistantApiField = <\n TState,\n TActions,\n TMeta extends { source: any; query: any },\n>(\n config: {\n get: () => StoreApi<TState, TActions>;\n } & (TMeta | { source: null; query: Record<string, never> }),\n): AssistantApiField<TState, TActions, TMeta> => {\n const fn = config.get as AssistantApiField<TState, TActions, TMeta>;\n fn.source = config.source;\n fn.query = config.query;\n return fn;\n};\n\nconst NO_OP_FN = () => () => {};\n\nconst AssistantApiContext = createContext<AssistantApi>({\n threads: createAssistantApiField({\n source: null,\n query: {},\n get: () => {\n throw new Error(\"Threads is only available inside <AssistantProvider />\");\n },\n }),\n toolUIs: createAssistantApiField({\n source: null,\n query: {},\n get: (): never => {\n throw new Error(\"ToolUIs is only available inside <AssistantProvider />\");\n },\n }),\n threadListItem: createAssistantApiField({\n source: null,\n query: {},\n get: (): never => {\n throw new Error(\n \"ThreadListItem is only available inside <AssistantProvider />\",\n );\n },\n }),\n thread: createAssistantApiField({\n source: null,\n query: {},\n get: (): never => {\n throw new Error(\"Thread is only available inside <AssistantProvider />\");\n },\n }),\n composer: createAssistantApiField({\n source: null,\n query: {},\n get: (): never => {\n throw new Error(\n \"Composer is only available inside <AssistantProvider />\",\n );\n },\n }),\n message: createAssistantApiField({\n source: null,\n query: {},\n get: (): never => {\n throw new Error(\n \"Message is only available inside <ThreadPrimitive.Messages />\",\n );\n },\n }),\n part: createAssistantApiField({\n source: null,\n query: {},\n get: (): never => {\n throw new Error(\n \"Part is only available inside <MessagePrimitive.Parts />\",\n );\n },\n }),\n attachment: createAssistantApiField({\n source: null,\n query: {},\n get: (): never => {\n throw new Error(\n \"Attachment is only available inside <MessagePrimitive.Attachments /> or <ComposerPrimitive.Attachments />\",\n );\n },\n }),\n\n subscribe: NO_OP_FN,\n flushSync: NO_OP_FN,\n on: (selector) => {\n const { scope } = normalizeEventSelector(selector);\n throw new Error(`Event scope is not available in this component: ${scope}`);\n },\n\n registerModelContextProvider: () => {\n throw new Error(\n \"Registering model context providers is only available inside <AssistantProvider />\",\n );\n },\n __internal_getRuntime: () => {\n return null;\n },\n});\n\nexport const useAssistantApi = (): AssistantApi => {\n return useContext(AssistantApiContext);\n};\n\nexport const useAssistantState = <T,>(\n selector: (state: AssistantState) => T,\n): T => {\n const api = useAssistantApi();\n const proxiedState = useMemo(() => new ProxiedAssistantState(api), [api]);\n const slice = useSyncExternalStore(\n api.subscribe,\n () => selector(proxiedState),\n () => selector(proxiedState),\n );\n useDebugValue(slice);\n\n if (slice instanceof ProxiedAssistantState)\n throw new Error(\n \"You tried to return the entire AssistantState. This is not supported due to technical limitations.\",\n );\n\n return slice;\n};\n\nclass ProxiedAssistantState implements AssistantState {\n #api: AssistantApi;\n constructor(api: AssistantApi) {\n this.#api = api;\n }\n\n get threads() {\n return this.#api.threads().getState();\n }\n\n get toolUIs() {\n return this.#api.toolUIs().getState();\n }\n\n get threadListItem() {\n return this.#api.threadListItem().getState();\n }\n\n get thread() {\n return this.#api.thread().getState();\n }\n\n get composer() {\n return this.#api.composer().getState();\n }\n\n get message() {\n return this.#api.message().getState();\n }\n\n get part() {\n return this.#api.part().getState();\n }\n\n get attachment() {\n return this.#api.attachment().getState();\n }\n}\n\nconst mergeFns = <TArgs extends Array<unknown>>(\n fn1: (...args: TArgs) => void,\n fn2: (...args: TArgs) => void,\n) => {\n if (fn1 === NO_OP_FN) return fn2;\n if (fn2 === NO_OP_FN) return fn1;\n\n return (...args: TArgs) => {\n fn1(...args);\n fn2(...args);\n };\n};\n\nconst mergeFnsWithUnsubscribe = <TArgs extends Array<unknown>>(\n fn1: (...args: TArgs) => Unsubscribe,\n fn2: (...args: TArgs) => Unsubscribe,\n) => {\n if (fn1 === NO_OP_FN) return fn2;\n if (fn2 === NO_OP_FN) return fn1;\n\n return (...args: TArgs) => {\n const unsubscribe1 = fn1(...args);\n const unsubscribe2 = fn2(...args);\n\n return () => {\n unsubscribe1();\n unsubscribe2();\n };\n };\n};\n\nconst extendApi = (\n api: AssistantApi,\n api2: Partial<AssistantApi>,\n): AssistantApi => {\n const api2Subscribe = api2.subscribe;\n const api2FlushSync = api2.flushSync;\n return {\n ...api,\n ...api2,\n subscribe: mergeFnsWithUnsubscribe(\n api.subscribe,\n api2Subscribe ?? NO_OP_FN,\n ),\n flushSync: mergeFns(api.flushSync, api2FlushSync ?? NO_OP_FN),\n };\n};\n\nexport const AssistantApiProvider: FC<\n PropsWithChildren<{ api: Partial<AssistantApi> }>\n> = ({ api: api2, children }) => {\n const api = useAssistantApi();\n const extendedApi = useMemo(() => extendApi(api, api2), [api, api2]);\n\n return (\n <AssistantApiContext value={extendedApi}>{children}</AssistantApiContext>\n );\n};\n"],"mappings":";;;AAEA;AAAA,EACE;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAkCP;AAAA,EAGE;AAAA,OACK;AAqVH;AA5NG,IAAM,0BAA0B,CAKrC,WAG+C;AAC/C,QAAM,KAAK,OAAO;AAClB,KAAG,SAAS,OAAO;AACnB,KAAG,QAAQ,OAAO;AAClB,SAAO;AACT;AAEA,IAAM,WAAW,MAAM,MAAM;AAAC;AAE9B,IAAM,sBAAsB,cAA4B;AAAA,EACtD,SAAS,wBAAwB;AAAA,IAC/B,QAAQ;AAAA,IACR,OAAO,CAAC;AAAA,IACR,KAAK,MAAM;AACT,YAAM,IAAI,MAAM,wDAAwD;AAAA,IAC1E;AAAA,EACF,CAAC;AAAA,EACD,SAAS,wBAAwB;AAAA,IAC/B,QAAQ;AAAA,IACR,OAAO,CAAC;AAAA,IACR,KAAK,MAAa;AAChB,YAAM,IAAI,MAAM,wDAAwD;AAAA,IAC1E;AAAA,EACF,CAAC;AAAA,EACD,gBAAgB,wBAAwB;AAAA,IACtC,QAAQ;AAAA,IACR,OAAO,CAAC;AAAA,IACR,KAAK,MAAa;AAChB,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AAAA,EACD,QAAQ,wBAAwB;AAAA,IAC9B,QAAQ;AAAA,IACR,OAAO,CAAC;AAAA,IACR,KAAK,MAAa;AAChB,YAAM,IAAI,MAAM,uDAAuD;AAAA,IACzE;AAAA,EACF,CAAC;AAAA,EACD,UAAU,wBAAwB;AAAA,IAChC,QAAQ;AAAA,IACR,OAAO,CAAC;AAAA,IACR,KAAK,MAAa;AAChB,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AAAA,EACD,SAAS,wBAAwB;AAAA,IAC/B,QAAQ;AAAA,IACR,OAAO,CAAC;AAAA,IACR,KAAK,MAAa;AAChB,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AAAA,EACD,MAAM,wBAAwB;AAAA,IAC5B,QAAQ;AAAA,IACR,OAAO,CAAC;AAAA,IACR,KAAK,MAAa;AAChB,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AAAA,EACD,YAAY,wBAAwB;AAAA,IAClC,QAAQ;AAAA,IACR,OAAO,CAAC;AAAA,IACR,KAAK,MAAa;AAChB,YAAM,IAAI;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AAAA,EAED,WAAW;AAAA,EACX,WAAW;AAAA,EACX,IAAI,CAAC,aAAa;AAChB,UAAM,EAAE,MAAM,IAAI,uBAAuB,QAAQ;AACjD,UAAM,IAAI,MAAM,mDAAmD,KAAK,EAAE;AAAA,EAC5E;AAAA,EAEA,8BAA8B,MAAM;AAClC,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAAA,EACA,uBAAuB,MAAM;AAC3B,WAAO;AAAA,EACT;AACF,CAAC;AAEM,IAAM,kBAAkB,MAAoB;AACjD,SAAO,WAAW,mBAAmB;AACvC;AAEO,IAAM,oBAAoB,CAC/B,aACM;AACN,QAAM,MAAM,gBAAgB;AAC5B,QAAM,eAAe,QAAQ,MAAM,IAAI,sBAAsB,GAAG,GAAG,CAAC,GAAG,CAAC;AACxE,QAAM,QAAQ;AAAA,IACZ,IAAI;AAAA,IACJ,MAAM,SAAS,YAAY;AAAA,IAC3B,MAAM,SAAS,YAAY;AAAA,EAC7B;AACA,gBAAc,KAAK;AAEnB,MAAI,iBAAiB;AACnB,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAEF,SAAO;AACT;AAEA,IAAM,wBAAN,MAAsD;AAAA,EACpD;AAAA,EACA,YAAY,KAAmB;AAC7B,SAAK,OAAO;AAAA,EACd;AAAA,EAEA,IAAI,UAAU;AACZ,WAAO,KAAK,KAAK,QAAQ,EAAE,SAAS;AAAA,EACtC;AAAA,EAEA,IAAI,UAAU;AACZ,WAAO,KAAK,KAAK,QAAQ,EAAE,SAAS;AAAA,EACtC;AAAA,EAEA,IAAI,iBAAiB;AACnB,WAAO,KAAK,KAAK,eAAe,EAAE,SAAS;AAAA,EAC7C;AAAA,EAEA,IAAI,SAAS;AACX,WAAO,KAAK,KAAK,OAAO,EAAE,SAAS;AAAA,EACrC;AAAA,EAEA,IAAI,WAAW;AACb,WAAO,KAAK,KAAK,SAAS,EAAE,SAAS;AAAA,EACvC;AAAA,EAEA,IAAI,UAAU;AACZ,WAAO,KAAK,KAAK,QAAQ,EAAE,SAAS;AAAA,EACtC;AAAA,EAEA,IAAI,OAAO;AACT,WAAO,KAAK,KAAK,KAAK,EAAE,SAAS;AAAA,EACnC;AAAA,EAEA,IAAI,aAAa;AACf,WAAO,KAAK,KAAK,WAAW,EAAE,SAAS;AAAA,EACzC;AACF;AAEA,IAAM,WAAW,CACf,KACA,QACG;AACH,MAAI,QAAQ,SAAU,QAAO;AAC7B,MAAI,QAAQ,SAAU,QAAO;AAE7B,SAAO,IAAI,SAAgB;AACzB,QAAI,GAAG,IAAI;AACX,QAAI,GAAG,IAAI;AAAA,EACb;AACF;AAEA,IAAM,0BAA0B,CAC9B,KACA,QACG;AACH,MAAI,QAAQ,SAAU,QAAO;AAC7B,MAAI,QAAQ,SAAU,QAAO;AAE7B,SAAO,IAAI,SAAgB;AACzB,UAAM,eAAe,IAAI,GAAG,IAAI;AAChC,UAAM,eAAe,IAAI,GAAG,IAAI;AAEhC,WAAO,MAAM;AACX,mBAAa;AACb,mBAAa;AAAA,IACf;AAAA,EACF;AACF;AAEA,IAAM,YAAY,CAChB,KACA,SACiB;AACjB,QAAM,gBAAgB,KAAK;AAC3B,QAAM,gBAAgB,KAAK;AAC3B,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH,WAAW;AAAA,MACT,IAAI;AAAA,MACJ,iBAAiB;AAAA,IACnB;AAAA,IACA,WAAW,SAAS,IAAI,WAAW,iBAAiB,QAAQ;AAAA,EAC9D;AACF;AAEO,IAAM,uBAET,CAAC,EAAE,KAAK,MAAM,SAAS,MAAM;AAC/B,QAAM,MAAM,gBAAgB;AAC5B,QAAM,cAAc,QAAQ,MAAM,UAAU,KAAK,IAAI,GAAG,CAAC,KAAK,IAAI,CAAC;AAEnE,SACE,oBAAC,uBAAoB,OAAO,aAAc,UAAS;AAEvD;","names":[]}
@@ -1,14 +1,11 @@
1
- export { useAssistantRuntime, useThreadList, useToolUIs, useToolUIsStore, } from "./AssistantContext";
2
- export { useThreadRuntime, useThread, useThreadComposer, useThreadModelContext,
3
- /**
4
- * @deprecated This method was renamed to `useThreadModelContext`.
5
- */
6
- useThreadModelContext as useThreadModelConfig, } from "./ThreadContext";
1
+ export { useAssistantState, useAssistantApi } from "./AssistantApiContext";
2
+ export { useAssistantEvent } from "../../hooks/useAssistantEvent";
7
3
  export { useThreadViewport, useThreadViewportStore, } from "./ThreadViewportContext";
8
- export { useThreadListItemRuntime, useThreadListItem, } from "./ThreadListItemContext";
9
- export { useMessageRuntime, useMessage, useEditComposer, useMessageUtils, useMessageUtilsStore, } from "./MessageContext";
10
- export { useMessagePartRuntime, useMessagePart } from "./MessagePartContext";
11
- export { useComposerRuntime, useComposer } from "./ComposerContext";
12
- export { useAttachment, useAttachmentRuntime, } from "./AttachmentContext";
13
- export { useRuntimeState } from "./utils/useRuntimeState";
4
+ export { useAssistantRuntime, useThreadList } from "./legacy/AssistantContext";
5
+ export { useAttachmentRuntime, useAttachment, useThreadComposerAttachmentRuntime, useThreadComposerAttachment, useEditComposerAttachmentRuntime, useEditComposerAttachment, useMessageAttachment, useMessageAttachmentRuntime, } from "./legacy/AttachmentContext";
6
+ export { useComposerRuntime, useComposer } from "./legacy/ComposerContext";
7
+ export { useMessageRuntime, useEditComposer, useMessage, } from "./legacy/MessageContext";
8
+ export { useMessagePartRuntime, useMessagePart, } from "./legacy/MessagePartContext";
9
+ export { useThreadRuntime, useThread, useThreadComposer, useThreadModelContext, } from "./legacy/ThreadContext";
10
+ export { useThreadListItemRuntime, useThreadListItem, } from "./legacy/ThreadListItemContext";
14
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/context/react/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,qBAAqB;AACrB;;GAEG;AACH,qBAAqB,IAAI,oBAAoB,GAC9C,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,eAAe,EACf,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EACL,aAAa,EACb,oBAAoB,GASrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/context/react/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EACL,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/E,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,kCAAkC,EAClC,2BAA2B,EAC3B,gCAAgC,EAChC,yBAAyB,EACzB,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE3E,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,UAAU,GACX,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,qBAAqB,EACrB,cAAc,GACf,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,gCAAgC,CAAC"}
@@ -1,66 +1,71 @@
1
1
  "use client";
2
2
 
3
3
  // src/context/react/index.ts
4
- import {
5
- useAssistantRuntime,
6
- useThreadList,
7
- useToolUIs,
8
- useToolUIsStore
9
- } from "./AssistantContext.js";
10
- import {
11
- useThreadRuntime,
12
- useThread,
13
- useThreadComposer,
14
- useThreadModelContext,
15
- useThreadModelContext as useThreadModelContext2
16
- } from "./ThreadContext.js";
4
+ import { useAssistantState, useAssistantApi } from "./AssistantApiContext.js";
5
+ import { useAssistantEvent } from "../../hooks/useAssistantEvent.js";
17
6
  import {
18
7
  useThreadViewport,
19
8
  useThreadViewportStore
20
9
  } from "./ThreadViewportContext.js";
10
+ import { useAssistantRuntime, useThreadList } from "./legacy/AssistantContext.js";
21
11
  import {
22
- useThreadListItemRuntime,
23
- useThreadListItem
24
- } from "./ThreadListItemContext.js";
12
+ useAttachmentRuntime,
13
+ useAttachment,
14
+ useThreadComposerAttachmentRuntime,
15
+ useThreadComposerAttachment,
16
+ useEditComposerAttachmentRuntime,
17
+ useEditComposerAttachment,
18
+ useMessageAttachment,
19
+ useMessageAttachmentRuntime
20
+ } from "./legacy/AttachmentContext.js";
21
+ import { useComposerRuntime, useComposer } from "./legacy/ComposerContext.js";
25
22
  import {
26
23
  useMessageRuntime,
27
- useMessage,
28
24
  useEditComposer,
29
- useMessageUtils,
30
- useMessageUtilsStore
31
- } from "./MessageContext.js";
32
- import { useMessagePartRuntime, useMessagePart } from "./MessagePartContext.js";
33
- import { useComposerRuntime, useComposer } from "./ComposerContext.js";
25
+ useMessage
26
+ } from "./legacy/MessageContext.js";
34
27
  import {
35
- useAttachment,
36
- useAttachmentRuntime
37
- } from "./AttachmentContext.js";
38
- import { useRuntimeState } from "./utils/useRuntimeState.js";
28
+ useMessagePartRuntime,
29
+ useMessagePart
30
+ } from "./legacy/MessagePartContext.js";
31
+ import {
32
+ useThreadRuntime,
33
+ useThread,
34
+ useThreadComposer,
35
+ useThreadModelContext
36
+ } from "./legacy/ThreadContext.js";
37
+ import {
38
+ useThreadListItemRuntime,
39
+ useThreadListItem
40
+ } from "./legacy/ThreadListItemContext.js";
39
41
  export {
42
+ useAssistantApi,
43
+ useAssistantEvent,
40
44
  useAssistantRuntime,
45
+ useAssistantState,
41
46
  useAttachment,
42
47
  useAttachmentRuntime,
43
48
  useComposer,
44
49
  useComposerRuntime,
45
50
  useEditComposer,
51
+ useEditComposerAttachment,
52
+ useEditComposerAttachmentRuntime,
46
53
  useMessage,
54
+ useMessageAttachment,
55
+ useMessageAttachmentRuntime,
47
56
  useMessagePart,
48
57
  useMessagePartRuntime,
49
58
  useMessageRuntime,
50
- useMessageUtils,
51
- useMessageUtilsStore,
52
- useRuntimeState,
53
59
  useThread,
54
60
  useThreadComposer,
61
+ useThreadComposerAttachment,
62
+ useThreadComposerAttachmentRuntime,
55
63
  useThreadList,
56
64
  useThreadListItem,
57
65
  useThreadListItemRuntime,
58
- useThreadModelContext2 as useThreadModelConfig,
59
66
  useThreadModelContext,
60
67
  useThreadRuntime,
61
68
  useThreadViewport,
62
- useThreadViewportStore,
63
- useToolUIs,
64
- useToolUIsStore
69
+ useThreadViewportStore
65
70
  };
66
71
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/context/react/index.ts"],"sourcesContent":["\"use client\";\n// TODO createContextStoreHook does not work well with server-side nextjs bundler\n// use client necessary here for now\n\nexport {\n useAssistantRuntime,\n useThreadList,\n useToolUIs,\n useToolUIsStore,\n} from \"./AssistantContext\";\n\nexport {\n useThreadRuntime,\n useThread,\n useThreadComposer,\n useThreadModelContext,\n /**\n * @deprecated This method was renamed to `useThreadModelContext`.\n */\n useThreadModelContext as useThreadModelConfig,\n} from \"./ThreadContext\";\n\nexport {\n useThreadViewport,\n useThreadViewportStore,\n} from \"./ThreadViewportContext\";\n\nexport {\n useThreadListItemRuntime,\n useThreadListItem,\n} from \"./ThreadListItemContext\";\n\nexport {\n useMessageRuntime,\n useMessage,\n useEditComposer,\n useMessageUtils,\n useMessageUtilsStore,\n} from \"./MessageContext\";\nexport { useMessagePartRuntime, useMessagePart } from \"./MessagePartContext\";\nexport { useComposerRuntime, useComposer } from \"./ComposerContext\";\n\nexport {\n useAttachment,\n useAttachmentRuntime,\n\n // TODO decide if we want to export/drop these?\n // useEditComposerAttachment,\n // useEditComposerAttachmentRuntime,\n // useMessageAttachment,\n // useMessageAttachmentRuntime,\n // useThreadComposerAttachment,\n // useThreadComposerAttachmentRuntime,\n} from \"./AttachmentContext\";\n\nexport { useRuntimeState } from \"./utils/useRuntimeState\";\n"],"mappings":";;;AAIA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAIyB,yBAAzBA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,uBAAuB,sBAAsB;AACtD,SAAS,oBAAoB,mBAAmB;AAEhD;AAAA,EACE;AAAA,EACA;AAAA,OASK;AAEP,SAAS,uBAAuB;","names":["useThreadModelContext"]}
1
+ {"version":3,"sources":["../../../src/context/react/index.ts"],"sourcesContent":["\"use client\";\n// TODO createContextStoreHook does not work well with server-side nextjs bundler\n// use client necessary here for now\n\nexport { useAssistantState, useAssistantApi } from \"./AssistantApiContext\";\nexport { useAssistantEvent } from \"../../hooks/useAssistantEvent\";\n\nexport {\n useThreadViewport,\n useThreadViewportStore,\n} from \"./ThreadViewportContext\";\n\nexport { useAssistantRuntime, useThreadList } from \"./legacy/AssistantContext\";\n\nexport {\n useAttachmentRuntime,\n useAttachment,\n useThreadComposerAttachmentRuntime,\n useThreadComposerAttachment,\n useEditComposerAttachmentRuntime,\n useEditComposerAttachment,\n useMessageAttachment,\n useMessageAttachmentRuntime,\n} from \"./legacy/AttachmentContext\";\n\nexport { useComposerRuntime, useComposer } from \"./legacy/ComposerContext\";\n\nexport {\n useMessageRuntime,\n useEditComposer,\n useMessage,\n} from \"./legacy/MessageContext\";\n\nexport {\n useMessagePartRuntime,\n useMessagePart,\n} from \"./legacy/MessagePartContext\";\n\nexport {\n useThreadRuntime,\n useThread,\n useThreadComposer,\n useThreadModelContext,\n} from \"./legacy/ThreadContext\";\n\nexport {\n useThreadListItemRuntime,\n useThreadListItem,\n} from \"./legacy/ThreadListItemContext\";\n"],"mappings":";;;AAIA,SAAS,mBAAmB,uBAAuB;AACnD,SAAS,yBAAyB;AAElC;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAEP,SAAS,qBAAqB,qBAAqB;AAEnD;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,oBAAoB,mBAAmB;AAEhD;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,OACK;","names":[]}
@@ -0,0 +1,58 @@
1
+ import { AssistantRuntime } from "../../../api/AssistantRuntime";
2
+ /**
3
+ * Hook to access the AssistantRuntime from the current context.
4
+ *
5
+ * The AssistantRuntime provides access to the top-level assistant state and actions,
6
+ * including thread management, tool registration, and configuration.
7
+ *
8
+ * @param options Configuration options
9
+ * @param options.optional Whether the hook should return null if no context is found
10
+ * @returns The AssistantRuntime instance, or null if optional is true and no context exists
11
+ *
12
+ * @example
13
+ * ```tsx
14
+ * function MyComponent() {
15
+ * const runtime = useAssistantRuntime();
16
+ *
17
+ * const handleNewThread = () => {
18
+ * runtime.switchToNewThread();
19
+ * };
20
+ *
21
+ * return <button onClick={handleNewThread}>New Thread</button>;
22
+ * }
23
+ * ```
24
+ */
25
+ export declare function useAssistantRuntime(options?: {
26
+ optional?: false | undefined;
27
+ }): AssistantRuntime;
28
+ export declare function useAssistantRuntime(options?: {
29
+ optional?: boolean | undefined;
30
+ }): AssistantRuntime | null;
31
+ export declare const useThreadList: {
32
+ (): import("../../..").ThreadListState;
33
+ <TSelected>(selector: (state: import("../../..").ThreadListState) => TSelected): TSelected;
34
+ <TSelected>(selector: ((state: import("../../..").ThreadListState) => TSelected) | undefined): import("../../..").ThreadListState | TSelected;
35
+ (options: {
36
+ optional?: false | undefined;
37
+ }): import("../../..").ThreadListState;
38
+ (options: {
39
+ optional?: boolean | undefined;
40
+ }): import("../../..").ThreadListState | null;
41
+ <TSelected>(options: {
42
+ optional?: false | undefined;
43
+ selector: (state: import("../../..").ThreadListState) => TSelected;
44
+ }): TSelected;
45
+ <TSelected>(options: {
46
+ optional?: false | undefined;
47
+ selector: ((state: import("../../..").ThreadListState) => TSelected) | undefined;
48
+ }): import("../../..").ThreadListState | TSelected;
49
+ <TSelected>(options: {
50
+ optional?: boolean | undefined;
51
+ selector: (state: import("../../..").ThreadListState) => TSelected;
52
+ }): TSelected | null;
53
+ <TSelected>(options: {
54
+ optional?: boolean | undefined;
55
+ selector: ((state: import("../../..").ThreadListState) => TSelected) | undefined;
56
+ }): import("../../..").ThreadListState | TSelected | null;
57
+ };
58
+ //# sourceMappingURL=AssistantContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssistantContext.d.ts","sourceRoot":"","sources":["../../../../src/context/react/legacy/AssistantContext.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAIjE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE;IAC5C,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CAC9B,GAAG,gBAAgB,CAAC;AACrB,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE;IAC5C,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC,GAAG,gBAAgB,GAAG,IAAI,CAAC;AAiB5B,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;CAAkD,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use client";
2
+
3
+ // src/context/react/legacy/AssistantContext.ts
4
+ import { useAssistantApi } from "../AssistantApiContext.js";
5
+ import { createStateHookForRuntime } from "../utils/createStateHookForRuntime.js";
6
+ function useAssistantRuntime(options) {
7
+ const api = useAssistantApi();
8
+ const runtime = api.__internal_getRuntime();
9
+ if (!runtime && !options?.optional) {
10
+ throw new Error("AssistantRuntime is not available");
11
+ }
12
+ return runtime;
13
+ }
14
+ var useThreadListRuntime = (opt) => useAssistantRuntime(opt)?.threads ?? null;
15
+ var useThreadList = createStateHookForRuntime(useThreadListRuntime);
16
+ export {
17
+ useAssistantRuntime,
18
+ useThreadList
19
+ };
20
+ //# sourceMappingURL=AssistantContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/context/react/legacy/AssistantContext.ts"],"sourcesContent":["\"use client\";\n\nimport { useAssistantApi } from \"../AssistantApiContext\";\nimport { AssistantRuntime } from \"../../../api/AssistantRuntime\";\nimport { ThreadListRuntime } from \"../../../api/ThreadListRuntime\";\nimport { createStateHookForRuntime } from \"../utils/createStateHookForRuntime\";\n\n/**\n * Hook to access the AssistantRuntime from the current context.\n *\n * The AssistantRuntime provides access to the top-level assistant state and actions,\n * including thread management, tool registration, and configuration.\n *\n * @param options Configuration options\n * @param options.optional Whether the hook should return null if no context is found\n * @returns The AssistantRuntime instance, or null if optional is true and no context exists\n *\n * @example\n * ```tsx\n * function MyComponent() {\n * const runtime = useAssistantRuntime();\n *\n * const handleNewThread = () => {\n * runtime.switchToNewThread();\n * };\n *\n * return <button onClick={handleNewThread}>New Thread</button>;\n * }\n * ```\n */\nexport function useAssistantRuntime(options?: {\n optional?: false | undefined;\n}): AssistantRuntime;\nexport function useAssistantRuntime(options?: {\n optional?: boolean | undefined;\n}): AssistantRuntime | null;\nexport function useAssistantRuntime(options?: {\n optional?: boolean | undefined;\n}) {\n const api = useAssistantApi();\n const runtime = api.__internal_getRuntime();\n\n if (!runtime && !options?.optional) {\n throw new Error(\"AssistantRuntime is not available\");\n }\n\n return runtime;\n}\n\nconst useThreadListRuntime = (opt: {\n optional: boolean | undefined;\n}): ThreadListRuntime | null => useAssistantRuntime(opt)?.threads ?? null;\nexport const useThreadList = createStateHookForRuntime(useThreadListRuntime);\n"],"mappings":";;;AAEA,SAAS,uBAAuB;AAGhC,SAAS,iCAAiC;AA+BnC,SAAS,oBAAoB,SAEjC;AACD,QAAM,MAAM,gBAAgB;AAC5B,QAAM,UAAU,IAAI,sBAAsB;AAE1C,MAAI,CAAC,WAAW,CAAC,SAAS,UAAU;AAClC,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACrD;AAEA,SAAO;AACT;AAEA,IAAM,uBAAuB,CAAC,QAEE,oBAAoB,GAAG,GAAG,WAAW;AAC9D,IAAM,gBAAgB,0BAA0B,oBAAoB;","names":[]}