@assistant-ui/react 0.12.16 → 0.12.19

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 (461) hide show
  1. package/dist/client/ExternalThread.d.ts.map +1 -1
  2. package/dist/client/ExternalThread.js +1 -0
  3. package/dist/client/ExternalThread.js.map +1 -1
  4. package/dist/context/index.d.ts +19 -3
  5. package/dist/context/index.d.ts.map +1 -1
  6. package/dist/context/index.js +18 -3
  7. package/dist/context/index.js.map +1 -1
  8. package/dist/context/react/ThreadViewportContext.d.ts +1 -1
  9. package/dist/context/react/ThreadViewportContext.d.ts.map +1 -1
  10. package/dist/hooks/useMessageQuote.d.ts.map +1 -1
  11. package/dist/hooks/useMessageQuote.js +2 -1
  12. package/dist/hooks/useMessageQuote.js.map +1 -1
  13. package/dist/index.d.ts +90 -8
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +96 -8
  16. package/dist/index.js.map +1 -1
  17. package/dist/internal.d.ts +2 -1
  18. package/dist/internal.d.ts.map +1 -1
  19. package/dist/internal.js +2 -1
  20. package/dist/internal.js.map +1 -1
  21. package/dist/legacy-runtime/AssistantRuntimeProvider.js +1 -1
  22. package/dist/legacy-runtime/AssistantRuntimeProvider.js.map +1 -1
  23. package/dist/legacy-runtime/cloud/useCloudThreadListRuntime.d.ts +1 -1
  24. package/dist/legacy-runtime/cloud/useCloudThreadListRuntime.d.ts.map +1 -1
  25. package/dist/legacy-runtime/hooks/ThreadContext.d.ts +1 -1
  26. package/dist/legacy-runtime/hooks/ThreadContext.d.ts.map +1 -1
  27. package/dist/legacy-runtime/runtime-cores/assistant-transport/types.d.ts +1 -1
  28. package/dist/legacy-runtime/runtime-cores/assistant-transport/types.d.ts.map +1 -1
  29. package/dist/legacy-runtime/runtime-cores/assistant-transport/types.js.map +1 -1
  30. package/dist/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.d.ts +2 -26
  31. package/dist/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.d.ts.map +1 -1
  32. package/dist/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.js +1 -13
  33. package/dist/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.js.map +1 -1
  34. package/dist/legacy-runtime/runtime-cores/local/useLocalRuntime.d.ts +1 -3
  35. package/dist/legacy-runtime/runtime-cores/local/useLocalRuntime.d.ts.map +1 -1
  36. package/dist/legacy-runtime/runtime-cores/local/useLocalRuntime.js +1 -51
  37. package/dist/legacy-runtime/runtime-cores/local/useLocalRuntime.js.map +1 -1
  38. package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
  39. package/dist/primitives/actionBar/ActionBarCopy.js +7 -20
  40. package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
  41. package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
  42. package/dist/primitives/actionBar/ActionBarEdit.js +3 -8
  43. package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
  44. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
  45. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +4 -7
  46. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
  47. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
  48. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +5 -7
  49. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
  50. package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
  51. package/dist/primitives/actionBar/ActionBarReload.js +3 -10
  52. package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
  53. package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -1
  54. package/dist/primitives/actionBar/ActionBarSpeak.js +4 -13
  55. package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
  56. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
  57. package/dist/primitives/actionBar/ActionBarStopSpeaking.js +4 -9
  58. package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
  59. package/dist/primitives/actionBar.d.ts +10 -0
  60. package/dist/primitives/actionBar.d.ts.map +1 -0
  61. package/dist/primitives/actionBar.js +10 -0
  62. package/dist/primitives/actionBar.js.map +1 -0
  63. package/dist/primitives/actionBarMore.d.ts +6 -0
  64. package/dist/primitives/actionBarMore.d.ts.map +1 -0
  65. package/dist/primitives/actionBarMore.js +6 -0
  66. package/dist/primitives/actionBarMore.js.map +1 -0
  67. package/dist/primitives/assistantModal.d.ts +5 -0
  68. package/dist/primitives/assistantModal.d.ts.map +1 -0
  69. package/dist/primitives/assistantModal.js +5 -0
  70. package/dist/primitives/assistantModal.js.map +1 -0
  71. package/dist/primitives/attachment/AttachmentThumb.js +1 -1
  72. package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
  73. package/dist/primitives/attachment.d.ts +5 -0
  74. package/dist/primitives/attachment.d.ts.map +1 -0
  75. package/dist/primitives/attachment.js +5 -0
  76. package/dist/primitives/attachment.js.map +1 -0
  77. package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
  78. package/dist/primitives/branchPicker/BranchPickerNext.js +3 -17
  79. package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
  80. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +0 -21
  81. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
  82. package/dist/primitives/branchPicker/BranchPickerPrevious.js +3 -38
  83. package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
  84. package/dist/primitives/branchPicker/BranchPickerRoot.js +1 -1
  85. package/dist/primitives/branchPicker/BranchPickerRoot.js.map +1 -1
  86. package/dist/primitives/branchPicker.d.ts +6 -0
  87. package/dist/primitives/branchPicker.d.ts.map +1 -0
  88. package/dist/primitives/branchPicker.js +6 -0
  89. package/dist/primitives/branchPicker.js.map +1 -0
  90. package/dist/primitives/chainOfThought.d.ts +4 -0
  91. package/dist/primitives/chainOfThought.d.ts.map +1 -0
  92. package/dist/primitives/chainOfThought.js +4 -0
  93. package/dist/primitives/chainOfThought.js.map +1 -0
  94. package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
  95. package/dist/primitives/composer/ComposerAddAttachment.js +5 -4
  96. package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
  97. package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
  98. package/dist/primitives/composer/ComposerCancel.js +3 -8
  99. package/dist/primitives/composer/ComposerCancel.js.map +1 -1
  100. package/dist/primitives/composer/ComposerDictate.d.ts.map +1 -1
  101. package/dist/primitives/composer/ComposerDictate.js +3 -10
  102. package/dist/primitives/composer/ComposerDictate.js.map +1 -1
  103. package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
  104. package/dist/primitives/composer/ComposerSend.js +3 -8
  105. package/dist/primitives/composer/ComposerSend.js.map +1 -1
  106. package/dist/primitives/composer.d.ts +16 -0
  107. package/dist/primitives/composer.d.ts.map +1 -0
  108. package/dist/primitives/composer.js +16 -0
  109. package/dist/primitives/composer.js.map +1 -0
  110. package/dist/primitives/error/ErrorMessage.d.ts.map +1 -1
  111. package/dist/primitives/error/ErrorMessage.js +2 -7
  112. package/dist/primitives/error/ErrorMessage.js.map +1 -1
  113. package/dist/primitives/error.d.ts +3 -0
  114. package/dist/primitives/error.d.ts.map +1 -0
  115. package/dist/primitives/error.js +3 -0
  116. package/dist/primitives/error.js.map +1 -0
  117. package/dist/primitives/message/MessageError.d.ts.map +1 -1
  118. package/dist/primitives/message/MessageError.js +3 -4
  119. package/dist/primitives/message/MessageError.js.map +1 -1
  120. package/dist/primitives/message/MessageParts.d.ts.map +1 -1
  121. package/dist/primitives/message/MessageParts.js +6 -1
  122. package/dist/primitives/message/MessageParts.js.map +1 -1
  123. package/dist/primitives/message/MessagePartsGrouped.d.ts +1 -1
  124. package/dist/primitives/message/MessagePartsGrouped.d.ts.map +1 -1
  125. package/dist/primitives/message/MessagePartsGrouped.js +2 -1
  126. package/dist/primitives/message/MessagePartsGrouped.js.map +1 -1
  127. package/dist/primitives/message.d.ts +11 -0
  128. package/dist/primitives/message.d.ts.map +1 -0
  129. package/dist/primitives/message.js +11 -0
  130. package/dist/primitives/message.js.map +1 -0
  131. package/dist/primitives/messagePart.d.ts +5 -0
  132. package/dist/primitives/messagePart.d.ts.map +1 -0
  133. package/dist/primitives/messagePart.js +5 -0
  134. package/dist/primitives/messagePart.js.map +1 -0
  135. package/dist/primitives/selectionToolbar.d.ts +3 -0
  136. package/dist/primitives/selectionToolbar.d.ts.map +1 -0
  137. package/dist/primitives/selectionToolbar.js +3 -0
  138. package/dist/primitives/selectionToolbar.js.map +1 -0
  139. package/dist/primitives/suggestion.d.ts +4 -0
  140. package/dist/primitives/suggestion.d.ts.map +1 -0
  141. package/dist/primitives/suggestion.js +4 -0
  142. package/dist/primitives/suggestion.js.map +1 -0
  143. package/dist/primitives/thread/ThreadRoot.d.ts +3 -1
  144. package/dist/primitives/thread/ThreadRoot.d.ts.map +1 -1
  145. package/dist/primitives/thread/ThreadRoot.js +3 -1
  146. package/dist/primitives/thread/ThreadRoot.js.map +1 -1
  147. package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
  148. package/dist/primitives/thread/ThreadSuggestion.js +8 -29
  149. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  150. package/dist/primitives/thread/ThreadViewport.d.ts +3 -1
  151. package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -1
  152. package/dist/primitives/thread/ThreadViewport.js +3 -1
  153. package/dist/primitives/thread/ThreadViewport.js.map +1 -1
  154. package/dist/primitives/thread/ThreadViewportFooter.d.ts +3 -1
  155. package/dist/primitives/thread/ThreadViewportFooter.d.ts.map +1 -1
  156. package/dist/primitives/thread/ThreadViewportFooter.js +3 -1
  157. package/dist/primitives/thread/ThreadViewportFooter.js.map +1 -1
  158. package/dist/primitives/thread.d.ts +13 -0
  159. package/dist/primitives/thread.d.ts.map +1 -0
  160. package/dist/primitives/thread.js +13 -0
  161. package/dist/primitives/thread.js.map +1 -0
  162. package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -1
  163. package/dist/primitives/threadList/ThreadListNew.js +4 -5
  164. package/dist/primitives/threadList/ThreadListNew.js.map +1 -1
  165. package/dist/primitives/threadList.d.ts +5 -0
  166. package/dist/primitives/threadList.d.ts.map +1 -0
  167. package/dist/primitives/threadList.js +5 -0
  168. package/dist/primitives/threadList.js.map +1 -0
  169. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts.map +1 -1
  170. package/dist/primitives/threadListItem/ThreadListItemArchive.js +3 -6
  171. package/dist/primitives/threadListItem/ThreadListItemArchive.js.map +1 -1
  172. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -1
  173. package/dist/primitives/threadListItem/ThreadListItemDelete.js +3 -6
  174. package/dist/primitives/threadListItem/ThreadListItemDelete.js.map +1 -1
  175. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -1
  176. package/dist/primitives/threadListItem/ThreadListItemTrigger.js +3 -6
  177. package/dist/primitives/threadListItem/ThreadListItemTrigger.js.map +1 -1
  178. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -1
  179. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js +3 -6
  180. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js.map +1 -1
  181. package/dist/primitives/threadListItem.d.ts +7 -0
  182. package/dist/primitives/threadListItem.d.ts.map +1 -0
  183. package/dist/primitives/threadListItem.js +7 -0
  184. package/dist/primitives/threadListItem.js.map +1 -0
  185. package/dist/primitives/threadListItemMore.d.ts +6 -0
  186. package/dist/primitives/threadListItemMore.d.ts.map +1 -0
  187. package/dist/primitives/threadListItemMore.js +6 -0
  188. package/dist/primitives/threadListItemMore.js.map +1 -0
  189. package/package.json +9 -9
  190. package/src/client/ExternalThread.ts +1 -0
  191. package/src/context/index.ts +67 -3
  192. package/src/context/react/ThreadViewportContext.ts +1 -1
  193. package/src/hooks/useMessageQuote.ts +3 -7
  194. package/src/index.ts +338 -8
  195. package/src/internal.ts +5 -1
  196. package/src/legacy-runtime/AssistantRuntimeProvider.tsx +1 -1
  197. package/src/legacy-runtime/cloud/useCloudThreadListRuntime.ts +1 -1
  198. package/src/legacy-runtime/hooks/MessageContext.ts +1 -1
  199. package/src/legacy-runtime/hooks/ThreadContext.ts +2 -2
  200. package/src/legacy-runtime/runtime-cores/assistant-transport/types.ts +4 -1
  201. package/src/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.ts +1 -1
  202. package/src/legacy-runtime/runtime-cores/local/LocalRuntimeOptions.ts +2 -35
  203. package/src/legacy-runtime/runtime-cores/local/useLocalRuntime.ts +1 -67
  204. package/src/model-context/frame/SPEC_AssistantFrame.md +2 -2
  205. package/src/primitives/actionBar/ActionBarCopy.tsx +7 -26
  206. package/src/primitives/actionBar/ActionBarEdit.ts +3 -10
  207. package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +4 -9
  208. package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +5 -9
  209. package/src/primitives/actionBar/ActionBarReload.ts +3 -16
  210. package/src/primitives/actionBar/ActionBarSpeak.ts +4 -17
  211. package/src/primitives/actionBar/ActionBarStopSpeaking.tsx +4 -12
  212. package/src/primitives/actionBar.ts +9 -0
  213. package/src/primitives/actionBarMore.ts +5 -0
  214. package/src/primitives/assistantModal.ts +4 -0
  215. package/src/primitives/attachment/AttachmentThumb.tsx +1 -1
  216. package/src/primitives/attachment.ts +4 -0
  217. package/src/primitives/branchPicker/BranchPickerNext.ts +3 -20
  218. package/src/primitives/branchPicker/BranchPickerPrevious.ts +3 -41
  219. package/src/primitives/branchPicker/BranchPickerRoot.tsx +1 -1
  220. package/src/primitives/branchPicker.ts +5 -0
  221. package/src/primitives/{chainOfThought/index.ts → chainOfThought.ts} +3 -3
  222. package/src/primitives/composer/ComposerAddAttachment.ts +5 -4
  223. package/src/primitives/composer/ComposerCancel.ts +3 -10
  224. package/src/primitives/composer/ComposerDictate.ts +3 -15
  225. package/src/primitives/composer/ComposerSend.ts +3 -13
  226. package/src/primitives/composer.ts +15 -0
  227. package/src/primitives/error/ErrorMessage.tsx +2 -7
  228. package/src/primitives/error.ts +2 -0
  229. package/src/primitives/message/MessageError.ts +3 -7
  230. package/src/primitives/message/MessageParts.tsx +11 -4
  231. package/src/primitives/message/MessagePartsGrouped.tsx +3 -5
  232. package/src/primitives/message.ts +13 -0
  233. package/src/primitives/messagePart.ts +4 -0
  234. package/src/primitives/{selectionToolbar/index.ts → selectionToolbar.ts} +2 -2
  235. package/src/primitives/suggestion.ts +3 -0
  236. package/src/primitives/thread/ThreadRoot.tsx +3 -1
  237. package/src/primitives/thread/ThreadSuggestion.ts +8 -30
  238. package/src/primitives/thread/ThreadViewport.tsx +3 -1
  239. package/src/primitives/thread/ThreadViewportFooter.tsx +3 -1
  240. package/src/primitives/thread.ts +15 -0
  241. package/src/primitives/threadList/ThreadListNew.tsx +4 -5
  242. package/src/primitives/threadList.ts +4 -0
  243. package/src/primitives/threadListItem/ThreadListItemArchive.ts +3 -6
  244. package/src/primitives/threadListItem/ThreadListItemDelete.ts +3 -6
  245. package/src/primitives/threadListItem/ThreadListItemTrigger.ts +3 -6
  246. package/src/primitives/threadListItem/ThreadListItemUnarchive.ts +3 -6
  247. package/src/primitives/threadListItem.ts +6 -0
  248. package/src/primitives/threadListItemMore.ts +5 -0
  249. package/dist/client/index.d.ts +0 -7
  250. package/dist/client/index.d.ts.map +0 -1
  251. package/dist/client/index.js +0 -10
  252. package/dist/client/index.js.map +0 -1
  253. package/dist/context/providers/index.d.ts +0 -10
  254. package/dist/context/providers/index.d.ts.map +0 -1
  255. package/dist/context/providers/index.js +0 -10
  256. package/dist/context/providers/index.js.map +0 -1
  257. package/dist/context/react/index.d.ts +0 -9
  258. package/dist/context/react/index.d.ts.map +0 -1
  259. package/dist/context/react/index.js +0 -10
  260. package/dist/context/react/index.js.map +0 -1
  261. package/dist/context/stores/index.d.ts +0 -2
  262. package/dist/context/stores/index.d.ts.map +0 -1
  263. package/dist/context/stores/index.js +0 -2
  264. package/dist/context/stores/index.js.map +0 -1
  265. package/dist/devtools/index.d.ts +0 -2
  266. package/dist/devtools/index.d.ts.map +0 -1
  267. package/dist/devtools/index.js +0 -2
  268. package/dist/devtools/index.js.map +0 -1
  269. package/dist/legacy-runtime/cloud/index.d.ts +0 -3
  270. package/dist/legacy-runtime/cloud/index.d.ts.map +0 -1
  271. package/dist/legacy-runtime/cloud/index.js +0 -3
  272. package/dist/legacy-runtime/cloud/index.js.map +0 -1
  273. package/dist/legacy-runtime/runtime/index.d.ts +0 -2
  274. package/dist/legacy-runtime/runtime/index.d.ts.map +0 -1
  275. package/dist/legacy-runtime/runtime/index.js +0 -2
  276. package/dist/legacy-runtime/runtime/index.js.map +0 -1
  277. package/dist/legacy-runtime/runtime-cores/adapters/attachment/index.d.ts +0 -4
  278. package/dist/legacy-runtime/runtime-cores/adapters/attachment/index.d.ts.map +0 -1
  279. package/dist/legacy-runtime/runtime-cores/adapters/attachment/index.js +0 -4
  280. package/dist/legacy-runtime/runtime-cores/adapters/attachment/index.js.map +0 -1
  281. package/dist/legacy-runtime/runtime-cores/adapters/feedback/index.d.ts +0 -2
  282. package/dist/legacy-runtime/runtime-cores/adapters/feedback/index.d.ts.map +0 -1
  283. package/dist/legacy-runtime/runtime-cores/adapters/feedback/index.js +0 -2
  284. package/dist/legacy-runtime/runtime-cores/adapters/feedback/index.js.map +0 -1
  285. package/dist/legacy-runtime/runtime-cores/adapters/index.d.ts +0 -7
  286. package/dist/legacy-runtime/runtime-cores/adapters/index.d.ts.map +0 -1
  287. package/dist/legacy-runtime/runtime-cores/adapters/index.js +0 -7
  288. package/dist/legacy-runtime/runtime-cores/adapters/index.js.map +0 -1
  289. package/dist/legacy-runtime/runtime-cores/adapters/speech/index.d.ts +0 -3
  290. package/dist/legacy-runtime/runtime-cores/adapters/speech/index.d.ts.map +0 -1
  291. package/dist/legacy-runtime/runtime-cores/adapters/speech/index.js +0 -2
  292. package/dist/legacy-runtime/runtime-cores/adapters/speech/index.js.map +0 -1
  293. package/dist/legacy-runtime/runtime-cores/adapters/suggestion/index.d.ts +0 -2
  294. package/dist/legacy-runtime/runtime-cores/adapters/suggestion/index.d.ts.map +0 -1
  295. package/dist/legacy-runtime/runtime-cores/adapters/suggestion/index.js +0 -2
  296. package/dist/legacy-runtime/runtime-cores/adapters/suggestion/index.js.map +0 -1
  297. package/dist/legacy-runtime/runtime-cores/adapters/thread-history/index.d.ts +0 -2
  298. package/dist/legacy-runtime/runtime-cores/adapters/thread-history/index.d.ts.map +0 -1
  299. package/dist/legacy-runtime/runtime-cores/adapters/thread-history/index.js +0 -2
  300. package/dist/legacy-runtime/runtime-cores/adapters/thread-history/index.js.map +0 -1
  301. package/dist/legacy-runtime/runtime-cores/assistant-transport/index.d.ts +0 -3
  302. package/dist/legacy-runtime/runtime-cores/assistant-transport/index.d.ts.map +0 -1
  303. package/dist/legacy-runtime/runtime-cores/assistant-transport/index.js +0 -2
  304. package/dist/legacy-runtime/runtime-cores/assistant-transport/index.js.map +0 -1
  305. package/dist/legacy-runtime/runtime-cores/core/index.d.ts +0 -2
  306. package/dist/legacy-runtime/runtime-cores/core/index.d.ts.map +0 -1
  307. package/dist/legacy-runtime/runtime-cores/core/index.js +0 -2
  308. package/dist/legacy-runtime/runtime-cores/core/index.js.map +0 -1
  309. package/dist/legacy-runtime/runtime-cores/external-store/index.d.ts +0 -7
  310. package/dist/legacy-runtime/runtime-cores/external-store/index.d.ts.map +0 -1
  311. package/dist/legacy-runtime/runtime-cores/external-store/index.js +0 -6
  312. package/dist/legacy-runtime/runtime-cores/external-store/index.js.map +0 -1
  313. package/dist/legacy-runtime/runtime-cores/index.d.ts +0 -9
  314. package/dist/legacy-runtime/runtime-cores/index.d.ts.map +0 -1
  315. package/dist/legacy-runtime/runtime-cores/index.js +0 -8
  316. package/dist/legacy-runtime/runtime-cores/index.js.map +0 -1
  317. package/dist/legacy-runtime/runtime-cores/local/index.d.ts +0 -8
  318. package/dist/legacy-runtime/runtime-cores/local/index.d.ts.map +0 -1
  319. package/dist/legacy-runtime/runtime-cores/local/index.js +0 -7
  320. package/dist/legacy-runtime/runtime-cores/local/index.js.map +0 -1
  321. package/dist/legacy-runtime/runtime-cores/remote-thread-list/index.d.ts +0 -5
  322. package/dist/legacy-runtime/runtime-cores/remote-thread-list/index.d.ts.map +0 -1
  323. package/dist/legacy-runtime/runtime-cores/remote-thread-list/index.js +0 -5
  324. package/dist/legacy-runtime/runtime-cores/remote-thread-list/index.js.map +0 -1
  325. package/dist/model-context/frame/index.d.ts +0 -6
  326. package/dist/model-context/frame/index.d.ts.map +0 -1
  327. package/dist/model-context/frame/index.js +0 -5
  328. package/dist/model-context/frame/index.js.map +0 -1
  329. package/dist/model-context/index.d.ts +0 -10
  330. package/dist/model-context/index.d.ts.map +0 -1
  331. package/dist/model-context/index.js +0 -11
  332. package/dist/model-context/index.js.map +0 -1
  333. package/dist/model-context/registry/index.d.ts +0 -3
  334. package/dist/model-context/registry/index.d.ts.map +0 -1
  335. package/dist/model-context/registry/index.js +0 -2
  336. package/dist/model-context/registry/index.js.map +0 -1
  337. package/dist/primitives/actionBar/index.d.ts +0 -10
  338. package/dist/primitives/actionBar/index.d.ts.map +0 -1
  339. package/dist/primitives/actionBar/index.js +0 -10
  340. package/dist/primitives/actionBar/index.js.map +0 -1
  341. package/dist/primitives/actionBarMore/index.d.ts +0 -6
  342. package/dist/primitives/actionBarMore/index.d.ts.map +0 -1
  343. package/dist/primitives/actionBarMore/index.js +0 -6
  344. package/dist/primitives/actionBarMore/index.js.map +0 -1
  345. package/dist/primitives/assistantModal/index.d.ts +0 -5
  346. package/dist/primitives/assistantModal/index.d.ts.map +0 -1
  347. package/dist/primitives/assistantModal/index.js +0 -5
  348. package/dist/primitives/assistantModal/index.js.map +0 -1
  349. package/dist/primitives/attachment/index.d.ts +0 -5
  350. package/dist/primitives/attachment/index.d.ts.map +0 -1
  351. package/dist/primitives/attachment/index.js +0 -5
  352. package/dist/primitives/attachment/index.js.map +0 -1
  353. package/dist/primitives/branchPicker/index.d.ts +0 -6
  354. package/dist/primitives/branchPicker/index.d.ts.map +0 -1
  355. package/dist/primitives/branchPicker/index.js +0 -6
  356. package/dist/primitives/branchPicker/index.js.map +0 -1
  357. package/dist/primitives/chainOfThought/index.d.ts +0 -4
  358. package/dist/primitives/chainOfThought/index.d.ts.map +0 -1
  359. package/dist/primitives/chainOfThought/index.js +0 -4
  360. package/dist/primitives/chainOfThought/index.js.map +0 -1
  361. package/dist/primitives/composer/index.d.ts +0 -16
  362. package/dist/primitives/composer/index.d.ts.map +0 -1
  363. package/dist/primitives/composer/index.js +0 -16
  364. package/dist/primitives/composer/index.js.map +0 -1
  365. package/dist/primitives/error/index.d.ts +0 -3
  366. package/dist/primitives/error/index.d.ts.map +0 -1
  367. package/dist/primitives/error/index.js +0 -3
  368. package/dist/primitives/error/index.js.map +0 -1
  369. package/dist/primitives/index.d.ts +0 -27
  370. package/dist/primitives/index.d.ts.map +0 -1
  371. package/dist/primitives/index.js +0 -27
  372. package/dist/primitives/index.js.map +0 -1
  373. package/dist/primitives/message/index.d.ts +0 -10
  374. package/dist/primitives/message/index.d.ts.map +0 -1
  375. package/dist/primitives/message/index.js +0 -10
  376. package/dist/primitives/message/index.js.map +0 -1
  377. package/dist/primitives/messagePart/index.d.ts +0 -4
  378. package/dist/primitives/messagePart/index.d.ts.map +0 -1
  379. package/dist/primitives/messagePart/index.js +0 -4
  380. package/dist/primitives/messagePart/index.js.map +0 -1
  381. package/dist/primitives/reasoning/index.d.ts +0 -2
  382. package/dist/primitives/reasoning/index.d.ts.map +0 -1
  383. package/dist/primitives/reasoning/index.js +0 -2
  384. package/dist/primitives/reasoning/index.js.map +0 -1
  385. package/dist/primitives/selectionToolbar/index.d.ts +0 -3
  386. package/dist/primitives/selectionToolbar/index.d.ts.map +0 -1
  387. package/dist/primitives/selectionToolbar/index.js +0 -3
  388. package/dist/primitives/selectionToolbar/index.js.map +0 -1
  389. package/dist/primitives/suggestion/index.d.ts +0 -4
  390. package/dist/primitives/suggestion/index.d.ts.map +0 -1
  391. package/dist/primitives/suggestion/index.js +0 -4
  392. package/dist/primitives/suggestion/index.js.map +0 -1
  393. package/dist/primitives/thread/index.d.ts +0 -13
  394. package/dist/primitives/thread/index.d.ts.map +0 -1
  395. package/dist/primitives/thread/index.js +0 -13
  396. package/dist/primitives/thread/index.js.map +0 -1
  397. package/dist/primitives/threadList/index.d.ts +0 -5
  398. package/dist/primitives/threadList/index.d.ts.map +0 -1
  399. package/dist/primitives/threadList/index.js +0 -5
  400. package/dist/primitives/threadList/index.js.map +0 -1
  401. package/dist/primitives/threadListItem/index.d.ts +0 -7
  402. package/dist/primitives/threadListItem/index.d.ts.map +0 -1
  403. package/dist/primitives/threadListItem/index.js +0 -7
  404. package/dist/primitives/threadListItem/index.js.map +0 -1
  405. package/dist/primitives/threadListItemMore/index.d.ts +0 -6
  406. package/dist/primitives/threadListItemMore/index.d.ts.map +0 -1
  407. package/dist/primitives/threadListItemMore/index.js +0 -6
  408. package/dist/primitives/threadListItemMore/index.js.map +0 -1
  409. package/dist/types/index.d.ts +0 -4
  410. package/dist/types/index.d.ts.map +0 -1
  411. package/dist/types/index.js +0 -2
  412. package/dist/types/index.js.map +0 -1
  413. package/dist/types/scopes/index.d.ts +0 -3
  414. package/dist/types/scopes/index.d.ts.map +0 -1
  415. package/dist/types/scopes/index.js +0 -2
  416. package/dist/types/scopes/index.js.map +0 -1
  417. package/dist/utils/smooth/index.d.ts +0 -3
  418. package/dist/utils/smooth/index.d.ts.map +0 -1
  419. package/dist/utils/smooth/index.js +0 -6
  420. package/dist/utils/smooth/index.js.map +0 -1
  421. package/src/client/index.ts +0 -18
  422. package/src/context/providers/index.ts +0 -15
  423. package/src/context/react/index.ts +0 -50
  424. package/src/context/stores/index.ts +0 -1
  425. package/src/devtools/index.ts +0 -1
  426. package/src/legacy-runtime/cloud/index.ts +0 -2
  427. package/src/legacy-runtime/runtime/index.ts +0 -25
  428. package/src/legacy-runtime/runtime-cores/adapters/attachment/index.ts +0 -10
  429. package/src/legacy-runtime/runtime-cores/adapters/feedback/index.ts +0 -2
  430. package/src/legacy-runtime/runtime-cores/adapters/index.ts +0 -6
  431. package/src/legacy-runtime/runtime-cores/adapters/speech/index.ts +0 -9
  432. package/src/legacy-runtime/runtime-cores/adapters/suggestion/index.ts +0 -2
  433. package/src/legacy-runtime/runtime-cores/adapters/thread-history/index.ts +0 -9
  434. package/src/legacy-runtime/runtime-cores/assistant-transport/index.ts +0 -11
  435. package/src/legacy-runtime/runtime-cores/core/index.ts +0 -7
  436. package/src/legacy-runtime/runtime-cores/external-store/index.ts +0 -21
  437. package/src/legacy-runtime/runtime-cores/index.ts +0 -10
  438. package/src/legacy-runtime/runtime-cores/local/index.ts +0 -18
  439. package/src/legacy-runtime/runtime-cores/remote-thread-list/index.ts +0 -7
  440. package/src/model-context/frame/index.ts +0 -10
  441. package/src/model-context/index.ts +0 -45
  442. package/src/model-context/registry/index.ts +0 -6
  443. package/src/primitives/actionBar/index.ts +0 -9
  444. package/src/primitives/actionBarMore/index.ts +0 -5
  445. package/src/primitives/assistantModal/index.ts +0 -4
  446. package/src/primitives/attachment/index.ts +0 -4
  447. package/src/primitives/branchPicker/index.ts +0 -5
  448. package/src/primitives/composer/index.ts +0 -15
  449. package/src/primitives/error/index.ts +0 -2
  450. package/src/primitives/index.ts +0 -27
  451. package/src/primitives/message/index.ts +0 -12
  452. package/src/primitives/messagePart/index.ts +0 -3
  453. package/src/primitives/reasoning/index.ts +0 -1
  454. package/src/primitives/suggestion/index.ts +0 -3
  455. package/src/primitives/thread/index.ts +0 -15
  456. package/src/primitives/threadList/index.ts +0 -4
  457. package/src/primitives/threadListItem/index.ts +0 -6
  458. package/src/primitives/threadListItemMore/index.ts +0 -5
  459. package/src/types/index.ts +0 -56
  460. package/src/types/scopes/index.ts +0 -59
  461. package/src/utils/smooth/index.ts +0 -6
@@ -4,8 +4,8 @@ import { forwardRef } from "react";
4
4
  import { ActionButtonProps } from "../../utils/createActionButton";
5
5
  import { composeEventHandlers } from "@radix-ui/primitive";
6
6
  import { Primitive } from "@radix-ui/react-primitive";
7
- import { useCallback } from "react";
8
- import { useAuiState, useAui } from "@assistant-ui/store";
7
+ import { useActionBarCopy } from "@assistant-ui/core/react";
8
+ import { useAuiState } from "@assistant-ui/store";
9
9
 
10
10
  /**
11
11
  * Hook that provides copy functionality for action bar buttons.
@@ -36,31 +36,12 @@ const useActionBarPrimitiveCopy = ({
36
36
  }: {
37
37
  copiedDuration?: number | undefined;
38
38
  } = {}) => {
39
- const aui = useAui();
40
- const hasCopyableContent = useAuiState((s) => {
41
- return (
42
- (s.message.role !== "assistant" ||
43
- s.message.status?.type !== "running") &&
44
- s.message.parts.some((c) => c.type === "text" && c.text.length > 0)
45
- );
39
+ const { copy, disabled } = useActionBarCopy({
40
+ copiedDuration,
41
+ copyToClipboard: (text) => navigator.clipboard.writeText(text),
46
42
  });
47
-
48
- const isEditing = useAuiState((s) => s.composer.isEditing);
49
- const composerValue = useAuiState((s) => s.composer.text);
50
-
51
- const callback = useCallback(() => {
52
- const valueToCopy = isEditing ? composerValue : aui.message().getCopyText();
53
-
54
- if (!valueToCopy) return;
55
-
56
- navigator.clipboard.writeText(valueToCopy).then(() => {
57
- aui.message().setIsCopied(true);
58
- setTimeout(() => aui.message().setIsCopied(false), copiedDuration);
59
- });
60
- }, [aui, isEditing, composerValue, copiedDuration]);
61
-
62
- if (!hasCopyableContent) return null;
63
- return callback;
43
+ if (disabled) return null;
44
+ return copy;
64
45
  };
65
46
 
66
47
  export namespace ActionBarPrimitiveCopy {
@@ -5,8 +5,7 @@ import {
5
5
  ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
- import { useCallback } from "react";
9
- import { useAuiState, useAui } from "@assistant-ui/store";
8
+ import { useActionBarEdit as useActionBarEditBehavior } from "@assistant-ui/core/react";
10
9
 
11
10
  /**
12
11
  * Hook that provides edit functionality for action bar buttons.
@@ -30,15 +29,9 @@ import { useAuiState, useAui } from "@assistant-ui/store";
30
29
  * ```
31
30
  */
32
31
  const useActionBarEdit = () => {
33
- const aui = useAui();
34
- const disabled = useAuiState((s) => s.composer.isEditing);
35
-
36
- const callback = useCallback(() => {
37
- aui.composer().beginEdit();
38
- }, [aui]);
39
-
32
+ const { disabled, edit } = useActionBarEditBehavior();
40
33
  if (disabled) return null;
41
- return callback;
34
+ return edit;
42
35
  };
43
36
 
44
37
  export namespace ActionBarPrimitiveEdit {
@@ -4,17 +4,12 @@ import { forwardRef } from "react";
4
4
  import { ActionButtonProps } from "../../utils/createActionButton";
5
5
  import { composeEventHandlers } from "@radix-ui/primitive";
6
6
  import { Primitive } from "@radix-ui/react-primitive";
7
- import { useCallback } from "react";
8
- import { useAuiState, useAui } from "@assistant-ui/store";
7
+ import { useAuiState } from "@assistant-ui/store";
8
+ import { useActionBarFeedbackNegative as useActionBarFeedbackNegativeBehavior } from "@assistant-ui/core/react";
9
9
 
10
10
  const useActionBarFeedbackNegative = () => {
11
- const aui = useAui();
12
-
13
- const callback = useCallback(() => {
14
- aui.message().submitFeedback({ type: "negative" });
15
- }, [aui]);
16
-
17
- return callback;
11
+ const { submit } = useActionBarFeedbackNegativeBehavior();
12
+ return submit;
18
13
  };
19
14
 
20
15
  export namespace ActionBarPrimitiveFeedbackNegative {
@@ -1,19 +1,15 @@
1
1
  "use client";
2
2
 
3
- import { forwardRef, useCallback } from "react";
3
+ import { forwardRef } from "react";
4
4
  import { ActionButtonProps } from "../../utils/createActionButton";
5
5
  import { composeEventHandlers } from "@radix-ui/primitive";
6
- import { useAuiState, useAui } from "@assistant-ui/store";
6
+ import { useAuiState } from "@assistant-ui/store";
7
7
  import { Primitive } from "@radix-ui/react-primitive";
8
+ import { useActionBarFeedbackPositive as useActionBarFeedbackPositiveBehavior } from "@assistant-ui/core/react";
8
9
 
9
10
  const useActionBarFeedbackPositive = () => {
10
- const aui = useAui();
11
-
12
- const callback = useCallback(() => {
13
- aui.message().submitFeedback({ type: "positive" });
14
- }, [aui]);
15
-
16
- return callback;
11
+ const { submit } = useActionBarFeedbackPositiveBehavior();
12
+ return submit;
17
13
  };
18
14
 
19
15
  export namespace ActionBarPrimitiveFeedbackPositive {
@@ -5,8 +5,7 @@ import {
5
5
  ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
- import { useCallback } from "react";
9
- import { useAuiState, useAui } from "@assistant-ui/store";
8
+ import { useActionBarReload as useActionBarReloadBehavior } from "@assistant-ui/core/react";
10
9
 
11
10
  /**
12
11
  * Hook that provides reload functionality for action bar buttons.
@@ -30,21 +29,9 @@ import { useAuiState, useAui } from "@assistant-ui/store";
30
29
  * ```
31
30
  */
32
31
  const useActionBarReload = () => {
33
- const aui = useAui();
34
-
35
- const disabled = useAuiState(
36
- (s) =>
37
- s.thread.isRunning ||
38
- s.thread.isDisabled ||
39
- s.message.role !== "assistant",
40
- );
41
-
42
- const callback = useCallback(() => {
43
- aui.message().reload();
44
- }, [aui]);
45
-
32
+ const { disabled, reload } = useActionBarReloadBehavior();
46
33
  if (disabled) return null;
47
- return callback;
34
+ return reload;
48
35
  };
49
36
 
50
37
  export namespace ActionBarPrimitiveReload {
@@ -1,29 +1,16 @@
1
1
  "use client";
2
2
 
3
- import { useCallback } from "react";
4
- import { useAuiState, useAui } from "@assistant-ui/store";
5
3
  import {
6
4
  ActionButtonElement,
7
5
  ActionButtonProps,
8
6
  createActionButton,
9
7
  } from "../../utils/createActionButton";
8
+ import { useActionBarSpeak as useActionBarSpeakBehavior } from "@assistant-ui/core/react";
10
9
 
11
10
  const useActionBarSpeak = () => {
12
- const aui = useAui();
13
- const callback = useCallback(async () => {
14
- aui.message().speak();
15
- }, [aui]);
16
-
17
- const hasSpeakableContent = useAuiState((s) => {
18
- return (
19
- (s.message.role !== "assistant" ||
20
- s.message.status?.type !== "running") &&
21
- s.message.parts.some((c) => c.type === "text" && c.text.length > 0)
22
- );
23
- });
24
-
25
- if (!hasSpeakableContent) return null;
26
- return callback;
11
+ const { disabled, speak } = useActionBarSpeakBehavior();
12
+ if (disabled) return null;
13
+ return speak;
27
14
  };
28
15
 
29
16
  export namespace ActionBarPrimitiveSpeak {
@@ -5,20 +5,12 @@ import { ActionButtonProps } from "../../utils/createActionButton";
5
5
  import { useEscapeKeydown } from "@radix-ui/react-use-escape-keydown";
6
6
  import { Primitive } from "@radix-ui/react-primitive";
7
7
  import { composeEventHandlers } from "@radix-ui/primitive";
8
- import { useCallback } from "react";
9
- import { useAuiState, useAui } from "@assistant-ui/store";
8
+ import { useActionBarStopSpeaking as useActionBarStopSpeakingBehavior } from "@assistant-ui/core/react";
10
9
 
11
10
  const useActionBarStopSpeaking = () => {
12
- const aui = useAui();
13
- const isSpeaking = useAuiState((s) => s.message.speech != null);
14
-
15
- const callback = useCallback(() => {
16
- aui.message().stopSpeaking();
17
- }, [aui]);
18
-
19
- if (!isSpeaking) return null;
20
-
21
- return callback;
11
+ const { disabled, stopSpeaking } = useActionBarStopSpeakingBehavior();
12
+ if (disabled) return null;
13
+ return stopSpeaking;
22
14
  };
23
15
 
24
16
  export namespace ActionBarPrimitiveStopSpeaking {
@@ -0,0 +1,9 @@
1
+ export { ActionBarPrimitiveRoot as Root } from "./actionBar/ActionBarRoot";
2
+ export { ActionBarPrimitiveCopy as Copy } from "./actionBar/ActionBarCopy";
3
+ export { ActionBarPrimitiveReload as Reload } from "./actionBar/ActionBarReload";
4
+ export { ActionBarPrimitiveEdit as Edit } from "./actionBar/ActionBarEdit";
5
+ export { ActionBarPrimitiveSpeak as Speak } from "./actionBar/ActionBarSpeak";
6
+ export { ActionBarPrimitiveStopSpeaking as StopSpeaking } from "./actionBar/ActionBarStopSpeaking";
7
+ export { ActionBarPrimitiveFeedbackPositive as FeedbackPositive } from "./actionBar/ActionBarFeedbackPositive";
8
+ export { ActionBarPrimitiveFeedbackNegative as FeedbackNegative } from "./actionBar/ActionBarFeedbackNegative";
9
+ export { ActionBarPrimitiveExportMarkdown as ExportMarkdown } from "./actionBar/ActionBarExportMarkdown";
@@ -0,0 +1,5 @@
1
+ export { ActionBarMorePrimitiveRoot as Root } from "./actionBarMore/ActionBarMoreRoot";
2
+ export { ActionBarMorePrimitiveTrigger as Trigger } from "./actionBarMore/ActionBarMoreTrigger";
3
+ export { ActionBarMorePrimitiveContent as Content } from "./actionBarMore/ActionBarMoreContent";
4
+ export { ActionBarMorePrimitiveItem as Item } from "./actionBarMore/ActionBarMoreItem";
5
+ export { ActionBarMorePrimitiveSeparator as Separator } from "./actionBarMore/ActionBarMoreSeparator";
@@ -0,0 +1,4 @@
1
+ export { AssistantModalPrimitiveRoot as Root } from "./assistantModal/AssistantModalRoot";
2
+ export { AssistantModalPrimitiveTrigger as Trigger } from "./assistantModal/AssistantModalTrigger";
3
+ export { AssistantModalPrimitiveContent as Content } from "./assistantModal/AssistantModalContent";
4
+ export { AssistantModalPrimitiveAnchor as Anchor } from "./assistantModal/AssistantModalAnchor";
@@ -26,4 +26,4 @@ export const AttachmentPrimitiveThumb = forwardRef<
26
26
  );
27
27
  });
28
28
 
29
- AttachmentPrimitiveThumb.displayName = "AttachmentPrimitive.Thumb";
29
+ AttachmentPrimitiveThumb.displayName = "AttachmentPrimitive.unstable_Thumb";
@@ -0,0 +1,4 @@
1
+ export { AttachmentPrimitiveRoot as Root } from "./attachment/AttachmentRoot";
2
+ export { AttachmentPrimitiveThumb as unstable_Thumb } from "./attachment/AttachmentThumb";
3
+ export { AttachmentPrimitiveName as Name } from "./attachment/AttachmentName";
4
+ export { AttachmentPrimitiveRemove as Remove } from "./attachment/AttachmentRemove";
@@ -5,29 +5,12 @@ import {
5
5
  ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
- import { useCallback } from "react";
9
- import { useAuiState, useAui } from "@assistant-ui/store";
8
+ import { useBranchPickerNext as useBranchPickerNextBehavior } from "@assistant-ui/core/react";
10
9
 
11
10
  const useBranchPickerNext = () => {
12
- const aui = useAui();
13
- const disabled = useAuiState((s) => {
14
- // Disabled if no next branch
15
- if (s.message.branchNumber >= s.message.branchCount) return true;
16
-
17
- // Disabled if running and capability not supported
18
- if (s.thread.isRunning && !s.thread.capabilities.switchBranchDuringRun) {
19
- return true;
20
- }
21
-
22
- return false;
23
- });
24
-
25
- const callback = useCallback(() => {
26
- aui.message().switchToBranch({ position: "next" });
27
- }, [aui]);
28
-
11
+ const { disabled, next } = useBranchPickerNextBehavior();
29
12
  if (disabled) return null;
30
- return callback;
13
+ return next;
31
14
  };
32
15
 
33
16
  export namespace BranchPickerPrimitiveNext {
@@ -5,50 +5,12 @@ import {
5
5
  ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
- import { useCallback } from "react";
9
- import { useAuiState, useAui } from "@assistant-ui/store";
8
+ import { useBranchPickerPrevious as useBranchPickerPreviousBehavior } from "@assistant-ui/core/react";
10
9
 
11
- /**
12
- * Hook that provides navigation to the previous branch functionality.
13
- *
14
- * This hook returns a callback function that switches to the previous branch
15
- * in the message branch tree, or null if there is no previous branch available.
16
- *
17
- * @returns A previous branch callback function, or null if navigation is disabled
18
- *
19
- * @example
20
- * ```tsx
21
- * function CustomPreviousButton() {
22
- * const previous = useBranchPickerPrevious();
23
- *
24
- * return (
25
- * <button onClick={previous} disabled={!previous}>
26
- * {previous ? "Previous Branch" : "No Previous Branch"}
27
- * </button>
28
- * );
29
- * }
30
- * ```
31
- */
32
10
  const useBranchPickerPrevious = () => {
33
- const aui = useAui();
34
- const disabled = useAuiState((s) => {
35
- // Disabled if no previous branch
36
- if (s.message.branchNumber <= 1) return true;
37
-
38
- // Disabled if running and capability not supported
39
- if (s.thread.isRunning && !s.thread.capabilities.switchBranchDuringRun) {
40
- return true;
41
- }
42
-
43
- return false;
44
- });
45
-
46
- const callback = useCallback(() => {
47
- aui.message().switchToBranch({ position: "previous" });
48
- }, [aui]);
49
-
11
+ const { disabled, previous } = useBranchPickerPreviousBehavior();
50
12
  if (disabled) return null;
51
- return callback;
13
+ return previous;
52
14
  };
53
15
 
54
16
  export namespace BranchPickerPrimitivePrevious {
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { Primitive } from "@radix-ui/react-primitive";
4
4
  import { type ComponentRef, forwardRef, ComponentPropsWithoutRef } from "react";
5
- import { If } from "../message";
5
+ import { MessagePrimitiveIf as If } from "../message/MessageIf";
6
6
 
7
7
  export namespace BranchPickerPrimitiveRoot {
8
8
  export type Element = ComponentRef<typeof Primitive.div>;
@@ -0,0 +1,5 @@
1
+ export { BranchPickerPrimitiveNext as Next } from "./branchPicker/BranchPickerNext";
2
+ export { BranchPickerPrimitivePrevious as Previous } from "./branchPicker/BranchPickerPrevious";
3
+ export { BranchPickerPrimitiveCount as Count } from "./branchPicker/BranchPickerCount";
4
+ export { BranchPickerPrimitiveNumber as Number } from "./branchPicker/BranchPickerNumber";
5
+ export { BranchPickerPrimitiveRoot as Root } from "./branchPicker/BranchPickerRoot";
@@ -1,14 +1,14 @@
1
1
  export {
2
2
  ChainOfThoughtPrimitiveRoot as Root,
3
3
  type ChainOfThoughtPrimitiveRoot as RootPrimitive,
4
- } from "./ChainOfThoughtRoot";
4
+ } from "./chainOfThought/ChainOfThoughtRoot";
5
5
 
6
6
  export {
7
7
  ChainOfThoughtPrimitiveAccordionTrigger as AccordionTrigger,
8
8
  type ChainOfThoughtPrimitiveAccordionTrigger as AccordionTriggerPrimitive,
9
- } from "./ChainOfThoughtAccordionTrigger";
9
+ } from "./chainOfThought/ChainOfThoughtAccordionTrigger";
10
10
 
11
11
  export {
12
12
  ChainOfThoughtPrimitiveParts as Parts,
13
13
  type ChainOfThoughtPrimitiveParts as PartsPrimitive,
14
- } from "./ChainOfThoughtParts";
14
+ } from "./chainOfThought/ChainOfThoughtParts";
@@ -6,7 +6,8 @@ import {
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
8
  import { useCallback } from "react";
9
- import { useAuiState, useAui } from "@assistant-ui/store";
9
+ import { useAui } from "@assistant-ui/store";
10
+ import { useComposerAddAttachment as useComposerAddAttachmentBehavior } from "@assistant-ui/core/react";
10
11
 
11
12
  const useComposerAddAttachment = ({
12
13
  multiple = true,
@@ -14,7 +15,7 @@ const useComposerAddAttachment = ({
14
15
  /** allow selecting multiple files */
15
16
  multiple?: boolean | undefined;
16
17
  } = {}) => {
17
- const disabled = useAuiState((s) => !s.composer.isEditing);
18
+ const { disabled, addAttachment } = useComposerAddAttachmentBehavior();
18
19
  const aui = useAui();
19
20
 
20
21
  const callback = useCallback(() => {
@@ -34,7 +35,7 @@ const useComposerAddAttachment = ({
34
35
  const fileList = (e.target as HTMLInputElement).files;
35
36
  if (!fileList) return;
36
37
  for (const file of fileList) {
37
- aui.composer().addAttachment(file);
38
+ addAttachment(file);
38
39
  }
39
40
 
40
41
  document.body.removeChild(input);
@@ -47,7 +48,7 @@ const useComposerAddAttachment = ({
47
48
  };
48
49
 
49
50
  input.click();
50
- }, [aui, multiple]);
51
+ }, [aui, multiple, addAttachment]);
51
52
 
52
53
  if (disabled) return null;
53
54
  return callback;
@@ -5,19 +5,12 @@ import {
5
5
  ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
- import { useCallback } from "react";
9
- import { useAuiState, useAui } from "@assistant-ui/store";
8
+ import { useComposerCancel as useComposerCancelBehavior } from "@assistant-ui/core/react";
10
9
 
11
10
  const useComposerCancel = () => {
12
- const aui = useAui();
13
- const disabled = useAuiState((s) => !s.composer.canCancel);
14
-
15
- const callback = useCallback(() => {
16
- aui.composer().cancel();
17
- }, [aui]);
18
-
11
+ const { disabled, cancel } = useComposerCancelBehavior();
19
12
  if (disabled) return null;
20
- return callback;
13
+ return cancel;
21
14
  };
22
15
 
23
16
  export namespace ComposerPrimitiveCancel {
@@ -1,28 +1,16 @@
1
1
  "use client";
2
2
 
3
- import { useCallback } from "react";
4
- import { useAui, useAuiState } from "@assistant-ui/store";
5
3
  import type {
6
4
  ActionButtonElement,
7
5
  ActionButtonProps,
8
6
  } from "../../utils/createActionButton";
9
7
  import { createActionButton } from "../../utils/createActionButton";
8
+ import { useComposerDictate as useComposerDictateBehavior } from "@assistant-ui/core/react";
10
9
 
11
10
  const useComposerDictate = () => {
12
- const aui = useAui();
13
- const disabled = useAuiState(
14
- (s) =>
15
- s.composer.dictation != null ||
16
- !s.thread.capabilities.dictation ||
17
- !s.composer.isEditing,
18
- );
19
-
20
- const callback = useCallback(() => {
21
- aui.composer().startDictation();
22
- }, [aui]);
23
-
11
+ const { disabled, startDictation } = useComposerDictateBehavior();
24
12
  if (disabled) return null;
25
- return callback;
13
+ return startDictation;
26
14
  };
27
15
 
28
16
  export namespace ComposerPrimitiveDictate {
@@ -5,22 +5,12 @@ import {
5
5
  ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
- import { useCallback } from "react";
9
- import { useAuiState, useAui } from "@assistant-ui/store";
8
+ import { useComposerSend as useComposerSendBehavior } from "@assistant-ui/core/react";
10
9
 
11
10
  export const useComposerSend = () => {
12
- const aui = useAui();
13
-
14
- const disabled = useAuiState(
15
- (s) => s.thread.isRunning || !s.composer.isEditing || s.composer.isEmpty,
16
- );
17
-
18
- const callback = useCallback(() => {
19
- aui.composer().send();
20
- }, [aui]);
21
-
11
+ const { disabled, send } = useComposerSendBehavior();
22
12
  if (disabled) return null;
23
- return callback;
13
+ return send;
24
14
  };
25
15
 
26
16
  export namespace ComposerPrimitiveSend {
@@ -0,0 +1,15 @@
1
+ export { ComposerPrimitiveRoot as Root } from "./composer/ComposerRoot";
2
+ export { ComposerPrimitiveInput as Input } from "./composer/ComposerInput";
3
+ export { ComposerPrimitiveSend as Send } from "./composer/ComposerSend";
4
+ export { ComposerPrimitiveCancel as Cancel } from "./composer/ComposerCancel";
5
+ export { ComposerPrimitiveAddAttachment as AddAttachment } from "./composer/ComposerAddAttachment";
6
+ export { ComposerPrimitiveAttachments as Attachments } from "./composer/ComposerAttachments";
7
+ export { ComposerPrimitiveAttachmentByIndex as AttachmentByIndex } from "./composer/ComposerAttachments";
8
+ export { ComposerPrimitiveAttachmentDropzone as AttachmentDropzone } from "./composer/ComposerAttachmentDropzone";
9
+ export { ComposerPrimitiveDictate as Dictate } from "./composer/ComposerDictate";
10
+ export { ComposerPrimitiveStopDictation as StopDictation } from "./composer/ComposerStopDictation";
11
+ export { ComposerPrimitiveDictationTranscript as DictationTranscript } from "./composer/ComposerDictationTranscript";
12
+ export { ComposerPrimitiveIf as If } from "./composer/ComposerIf";
13
+ export { ComposerPrimitiveQuote as Quote } from "./composer/ComposerQuote";
14
+ export { ComposerPrimitiveQuoteText as QuoteText } from "./composer/ComposerQuote";
15
+ export { ComposerPrimitiveQuoteDismiss as QuoteDismiss } from "./composer/ComposerQuote";
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { Primitive } from "@radix-ui/react-primitive";
4
4
  import { type ComponentRef, forwardRef, ComponentPropsWithoutRef } from "react";
5
- import { useAuiState } from "@assistant-ui/store";
5
+ import { useMessageError } from "@assistant-ui/core/react";
6
6
 
7
7
  export namespace ErrorPrimitiveMessage {
8
8
  export type Element = ComponentRef<typeof Primitive.span>;
@@ -13,12 +13,7 @@ export const ErrorPrimitiveMessage = forwardRef<
13
13
  ErrorPrimitiveMessage.Element,
14
14
  ErrorPrimitiveMessage.Props
15
15
  >(({ children, ...props }, forwardRef) => {
16
- const error = useAuiState((s) => {
17
- return s.message.status?.type === "incomplete" &&
18
- s.message.status.reason === "error"
19
- ? s.message.status.error
20
- : undefined;
21
- });
16
+ const error = useMessageError();
22
17
 
23
18
  if (error === undefined) return null;
24
19
 
@@ -0,0 +1,2 @@
1
+ export { ErrorPrimitiveRoot as Root } from "./error/ErrorRoot";
2
+ export { ErrorPrimitiveMessage as Message } from "./error/ErrorMessage";
@@ -1,15 +1,11 @@
1
1
  "use client";
2
2
 
3
3
  import { FC, PropsWithChildren } from "react";
4
- import { useAuiState } from "@assistant-ui/store";
4
+ import { useMessageError } from "@assistant-ui/core/react";
5
5
 
6
6
  export const MessagePrimitiveError: FC<PropsWithChildren> = ({ children }) => {
7
- const hasError = useAuiState(
8
- (s) =>
9
- s.message.status?.type === "incomplete" &&
10
- s.message.status.reason === "error",
11
- );
12
- return hasError ? children : null;
7
+ const error = useMessageError();
8
+ return error !== undefined ? children : null;
13
9
  };
14
10
 
15
11
  MessagePrimitiveError.displayName = "MessagePrimitive.Error";
@@ -31,10 +31,16 @@ export namespace MessagePrimitiveParts {
31
31
  /**
32
32
  * Renders the parts of a message with web-specific default components.
33
33
  */
34
- export const MessagePrimitiveParts: FC<MessagePrimitiveParts.Props> = ({
35
- components,
36
- ...rest
37
- }) => {
34
+ export const MessagePrimitiveParts: FC<MessagePrimitiveParts.Props> = (
35
+ props,
36
+ ) => {
37
+ if ("children" in props) {
38
+ return (
39
+ <MessagePrimitivePartsBase>{props.children}</MessagePrimitivePartsBase>
40
+ );
41
+ }
42
+
43
+ const { components, ...rest } = props;
38
44
  const merged = components
39
45
  ? {
40
46
  Text: components.Text ?? webDefaultComponents.Text,
@@ -58,6 +64,7 @@ export const MessagePrimitiveParts: FC<MessagePrimitiveParts.Props> = ({
58
64
  messagePartsDefaultComponents.ReasoningGroup,
59
65
  }),
60
66
  Empty: components.Empty,
67
+ Quote: components.Quote,
61
68
  }
62
69
  : webDefaultComponents;
63
70
 
@@ -8,10 +8,8 @@ import {
8
8
  useMemo,
9
9
  } from "react";
10
10
  import { useAuiState, useAui } from "@assistant-ui/store";
11
- import {
12
- PartByIndexProvider,
13
- TextMessagePartProvider,
14
- } from "../../context/providers";
11
+ import { PartByIndexProvider } from "../../context/providers/PartByIndexProvider";
12
+ import { TextMessagePartProvider } from "../../context/providers/TextMessagePartProvider";
15
13
  import { MessagePartPrimitiveText } from "../messagePart/MessagePartText";
16
14
  import { MessagePartPrimitiveImage } from "../messagePart/MessagePartImage";
17
15
  import type {
@@ -26,7 +24,7 @@ import type {
26
24
  ToolCallMessagePartProps,
27
25
  FileMessagePartComponent,
28
26
  ReasoningMessagePartComponent,
29
- } from "../../types";
27
+ } from "@assistant-ui/core/react";
30
28
  import { MessagePartPrimitiveInProgress } from "../messagePart/MessagePartInProgress";
31
29
  import type { MessagePartStatus } from "@assistant-ui/core";
32
30
 
@@ -0,0 +1,13 @@
1
+ export { MessagePrimitiveRoot as Root } from "./message/MessageRoot";
2
+ export { MessagePrimitiveParts as Parts } from "./message/MessageParts";
3
+ export { MessagePrimitivePartByIndex as PartByIndex } from "./message/MessageParts";
4
+ export { MessagePrimitiveParts as Content } from "./message/MessageParts";
5
+ export { MessagePrimitiveIf as If } from "./message/MessageIf";
6
+ export { MessagePrimitiveAttachments as Attachments } from "./message/MessageAttachments";
7
+ export { MessagePrimitiveAttachmentByIndex as AttachmentByIndex } from "./message/MessageAttachments";
8
+ export { MessagePrimitiveQuote as Quote } from "@assistant-ui/core/react";
9
+ export { MessagePrimitiveError as Error } from "./message/MessageError";
10
+ export {
11
+ MessagePrimitiveUnstable_PartsGrouped as Unstable_PartsGrouped,
12
+ MessagePrimitiveUnstable_PartsGroupedByParentId as Unstable_PartsGroupedByParentId,
13
+ } from "./message/MessagePartsGrouped";
@@ -0,0 +1,4 @@
1
+ export { MessagePartPrimitiveText as Text } from "./messagePart/MessagePartText";
2
+ export { MessagePartPrimitiveImage as Image } from "./messagePart/MessagePartImage";
3
+ export { MessagePartPrimitiveInProgress as InProgress } from "./messagePart/MessagePartInProgress";
4
+ export { PartPrimitiveMessages as Messages } from "@assistant-ui/core/react";
@@ -1,8 +1,8 @@
1
1
  export {
2
2
  SelectionToolbarPrimitiveRoot as Root,
3
3
  type SelectionToolbarPrimitiveRoot,
4
- } from "./SelectionToolbarRoot";
4
+ } from "./selectionToolbar/SelectionToolbarRoot";
5
5
  export {
6
6
  SelectionToolbarPrimitiveQuote as Quote,
7
7
  type SelectionToolbarPrimitiveQuote,
8
- } from "./SelectionToolbarQuote";
8
+ } from "./selectionToolbar/SelectionToolbarQuote";