@assistant-ui/react 0.12.25 → 0.12.27

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 (491) hide show
  1. package/dist/augmentations.d.ts.map +1 -1
  2. package/dist/client/InMemoryThreadList.d.ts.map +1 -1
  3. package/dist/client/InMemoryThreadList.js +1 -0
  4. package/dist/client/InMemoryThreadList.js.map +1 -1
  5. package/dist/client/SingleThreadList.d.ts.map +1 -1
  6. package/dist/client/SingleThreadList.js +1 -0
  7. package/dist/client/SingleThreadList.js.map +1 -1
  8. package/dist/context/providers/MessageProvider.d.ts +1 -1
  9. package/dist/context/providers/MessageProvider.d.ts.map +1 -1
  10. package/dist/context/react/ThreadViewportContext.d.ts +3 -3
  11. package/dist/context/react/ThreadViewportContext.d.ts.map +1 -1
  12. package/dist/context/react/utils/createContextHook.d.ts +1 -1
  13. package/dist/context/react/utils/createContextHook.d.ts.map +1 -1
  14. package/dist/context/react/utils/createContextHook.js.map +1 -1
  15. package/dist/context/react/utils/createContextStoreHook.d.ts +1 -1
  16. package/dist/context/react/utils/createContextStoreHook.d.ts.map +1 -1
  17. package/dist/context/react/utils/createStateHookForRuntime.d.ts +1 -1
  18. package/dist/context/react/utils/createStateHookForRuntime.d.ts.map +1 -1
  19. package/dist/context/react/utils/createStateHookForRuntime.js +1 -0
  20. package/dist/context/react/utils/createStateHookForRuntime.js.map +1 -1
  21. package/dist/devtools/DevToolsHooks.d.ts +1 -1
  22. package/dist/devtools/DevToolsHooks.d.ts.map +1 -1
  23. package/dist/devtools/DevToolsHooks.js +4 -0
  24. package/dist/devtools/DevToolsHooks.js.map +1 -1
  25. package/dist/index.d.ts +3 -5
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +6 -32
  28. package/dist/index.js.map +1 -1
  29. package/dist/legacy-runtime/AssistantRuntimeProvider.d.ts +3 -3
  30. package/dist/legacy-runtime/AssistantRuntimeProvider.d.ts.map +1 -1
  31. package/dist/legacy-runtime/AssistantRuntimeProvider.js.map +1 -1
  32. package/dist/legacy-runtime/cloud/auiV0.d.ts +3 -3
  33. package/dist/legacy-runtime/cloud/auiV0.d.ts.map +1 -1
  34. package/dist/legacy-runtime/cloud/auiV0.js.map +1 -1
  35. package/dist/legacy-runtime/cloud/useCloudThreadListRuntime.d.ts +1 -1
  36. package/dist/legacy-runtime/cloud/useCloudThreadListRuntime.d.ts.map +1 -1
  37. package/dist/legacy-runtime/hooks/AssistantContext.d.ts +1 -1
  38. package/dist/legacy-runtime/hooks/AssistantContext.d.ts.map +1 -1
  39. package/dist/legacy-runtime/hooks/AttachmentContext.d.ts +1 -1
  40. package/dist/legacy-runtime/hooks/AttachmentContext.d.ts.map +1 -1
  41. package/dist/legacy-runtime/hooks/ComposerContext.d.ts +1 -1
  42. package/dist/legacy-runtime/hooks/ComposerContext.d.ts.map +1 -1
  43. package/dist/legacy-runtime/hooks/MessageContext.d.ts +1 -1
  44. package/dist/legacy-runtime/hooks/MessageContext.d.ts.map +1 -1
  45. package/dist/legacy-runtime/hooks/MessagePartContext.d.ts +1 -1
  46. package/dist/legacy-runtime/hooks/MessagePartContext.d.ts.map +1 -1
  47. package/dist/legacy-runtime/hooks/ThreadContext.d.ts +1 -1
  48. package/dist/legacy-runtime/hooks/ThreadContext.d.ts.map +1 -1
  49. package/dist/legacy-runtime/hooks/ThreadListItemContext.d.ts +1 -1
  50. package/dist/legacy-runtime/hooks/ThreadListItemContext.d.ts.map +1 -1
  51. package/dist/legacy-runtime/runtime-cores/assistant-transport/commandQueue.d.ts +1 -1
  52. package/dist/legacy-runtime/runtime-cores/assistant-transport/commandQueue.d.ts.map +1 -1
  53. package/dist/legacy-runtime/runtime-cores/assistant-transport/types.d.ts +2 -2
  54. package/dist/legacy-runtime/runtime-cores/assistant-transport/types.d.ts.map +1 -1
  55. package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.d.ts +3 -3
  56. package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.d.ts.map +1 -1
  57. package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.js +14 -1
  58. package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.js.map +1 -1
  59. package/dist/model-context/frame/useAssistantFrameHost.d.ts +1 -1
  60. package/dist/model-context/frame/useAssistantFrameHost.d.ts.map +1 -1
  61. package/dist/model-context/frame/useAssistantFrameHost.js.map +1 -1
  62. package/dist/model-context/makeAssistantVisible.d.ts +1 -1
  63. package/dist/model-context/makeAssistantVisible.d.ts.map +1 -1
  64. package/dist/primitives/actionBar/ActionBarCopy.d.ts +1 -1
  65. package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
  66. package/dist/primitives/actionBar/ActionBarEdit.d.ts +1 -1
  67. package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
  68. package/dist/primitives/actionBar/ActionBarExportMarkdown.d.ts +1 -1
  69. package/dist/primitives/actionBar/ActionBarExportMarkdown.d.ts.map +1 -1
  70. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts +1 -1
  71. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
  72. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts +1 -1
  73. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
  74. package/dist/primitives/actionBar/ActionBarReload.d.ts +1 -1
  75. package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
  76. package/dist/primitives/actionBar/ActionBarRoot.d.ts +1 -1
  77. package/dist/primitives/actionBar/ActionBarRoot.d.ts.map +1 -1
  78. package/dist/primitives/actionBar/ActionBarSpeak.d.ts +1 -1
  79. package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -1
  80. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts +1 -1
  81. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
  82. package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts +5 -2
  83. package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts.map +1 -1
  84. package/dist/primitives/actionBarMore/ActionBarMoreContent.js +3 -2
  85. package/dist/primitives/actionBarMore/ActionBarMoreContent.js.map +1 -1
  86. package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts +7 -4
  87. package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts.map +1 -1
  88. package/dist/primitives/actionBarMore/ActionBarMoreItem.js +2 -2
  89. package/dist/primitives/actionBarMore/ActionBarMoreItem.js.map +1 -1
  90. package/dist/primitives/actionBarMore/ActionBarMoreRoot.d.ts +1 -1
  91. package/dist/primitives/actionBarMore/ActionBarMoreRoot.d.ts.map +1 -1
  92. package/dist/primitives/actionBarMore/ActionBarMoreRoot.js.map +1 -1
  93. package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts +7 -4
  94. package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts.map +1 -1
  95. package/dist/primitives/actionBarMore/ActionBarMoreSeparator.js +2 -2
  96. package/dist/primitives/actionBarMore/ActionBarMoreSeparator.js.map +1 -1
  97. package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts +7 -4
  98. package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts.map +1 -1
  99. package/dist/primitives/actionBarMore/ActionBarMoreTrigger.js +2 -2
  100. package/dist/primitives/actionBarMore/ActionBarMoreTrigger.js.map +1 -1
  101. package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts +1 -1
  102. package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts.map +1 -1
  103. package/dist/primitives/assistantModal/AssistantModalAnchor.js +1 -1
  104. package/dist/primitives/assistantModal/AssistantModalAnchor.js.map +1 -1
  105. package/dist/primitives/assistantModal/AssistantModalContent.d.ts +1 -1
  106. package/dist/primitives/assistantModal/AssistantModalContent.d.ts.map +1 -1
  107. package/dist/primitives/assistantModal/AssistantModalContent.js +1 -1
  108. package/dist/primitives/assistantModal/AssistantModalContent.js.map +1 -1
  109. package/dist/primitives/assistantModal/AssistantModalRoot.d.ts +1 -1
  110. package/dist/primitives/assistantModal/AssistantModalRoot.d.ts.map +1 -1
  111. package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
  112. package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts +1 -1
  113. package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts.map +1 -1
  114. package/dist/primitives/assistantModal/AssistantModalTrigger.js +1 -1
  115. package/dist/primitives/assistantModal/AssistantModalTrigger.js.map +1 -1
  116. package/dist/primitives/attachment/AttachmentRemove.d.ts +1 -1
  117. package/dist/primitives/attachment/AttachmentRemove.d.ts.map +1 -1
  118. package/dist/primitives/attachment/AttachmentRoot.d.ts +1 -1
  119. package/dist/primitives/attachment/AttachmentRoot.d.ts.map +1 -1
  120. package/dist/primitives/attachment/AttachmentRoot.js +1 -1
  121. package/dist/primitives/attachment/AttachmentRoot.js.map +1 -1
  122. package/dist/primitives/attachment/AttachmentThumb.d.ts +1 -1
  123. package/dist/primitives/attachment/AttachmentThumb.d.ts.map +1 -1
  124. package/dist/primitives/attachment/AttachmentThumb.js +1 -1
  125. package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
  126. package/dist/primitives/branchPicker/BranchPickerNext.d.ts +1 -1
  127. package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
  128. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +1 -1
  129. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
  130. package/dist/primitives/branchPicker/BranchPickerRoot.d.ts +1 -1
  131. package/dist/primitives/branchPicker/BranchPickerRoot.d.ts.map +1 -1
  132. package/dist/primitives/branchPicker/BranchPickerRoot.js +1 -1
  133. package/dist/primitives/branchPicker/BranchPickerRoot.js.map +1 -1
  134. package/dist/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.d.ts +1 -1
  135. package/dist/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.d.ts.map +1 -1
  136. package/dist/primitives/chainOfThought/ChainOfThoughtRoot.d.ts +1 -1
  137. package/dist/primitives/chainOfThought/ChainOfThoughtRoot.d.ts.map +1 -1
  138. package/dist/primitives/chainOfThought/ChainOfThoughtRoot.js +1 -1
  139. package/dist/primitives/chainOfThought/ChainOfThoughtRoot.js.map +1 -1
  140. package/dist/primitives/composer/ComposerAddAttachment.d.ts +1 -1
  141. package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
  142. package/dist/primitives/composer/ComposerAttachmentDropzone.d.ts +1 -1
  143. package/dist/primitives/composer/ComposerAttachmentDropzone.d.ts.map +1 -1
  144. package/dist/primitives/composer/ComposerAttachmentDropzone.js +3 -2
  145. package/dist/primitives/composer/ComposerAttachmentDropzone.js.map +1 -1
  146. package/dist/primitives/composer/ComposerCancel.d.ts +1 -1
  147. package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
  148. package/dist/primitives/composer/ComposerDictationTranscript.d.ts +1 -1
  149. package/dist/primitives/composer/ComposerDictationTranscript.d.ts.map +1 -1
  150. package/dist/primitives/composer/ComposerDictationTranscript.js +1 -1
  151. package/dist/primitives/composer/ComposerDictationTranscript.js.map +1 -1
  152. package/dist/primitives/composer/ComposerInput.d.ts.map +1 -1
  153. package/dist/primitives/composer/ComposerInput.js +28 -0
  154. package/dist/primitives/composer/ComposerInput.js.map +1 -1
  155. package/dist/primitives/composer/ComposerInputPluginContext.d.ts +11 -3
  156. package/dist/primitives/composer/ComposerInputPluginContext.d.ts.map +1 -1
  157. package/dist/primitives/composer/ComposerInputPluginContext.js +13 -9
  158. package/dist/primitives/composer/ComposerInputPluginContext.js.map +1 -1
  159. package/dist/primitives/composer/ComposerRoot.d.ts +1 -1
  160. package/dist/primitives/composer/ComposerRoot.d.ts.map +1 -1
  161. package/dist/primitives/composer/ComposerSend.d.ts +1 -1
  162. package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
  163. package/dist/primitives/composer/trigger/TriggerPopover.d.ts +60 -0
  164. package/dist/primitives/composer/trigger/TriggerPopover.d.ts.map +1 -0
  165. package/dist/primitives/composer/trigger/TriggerPopover.js +108 -0
  166. package/dist/primitives/composer/trigger/TriggerPopover.js.map +1 -0
  167. package/dist/primitives/composer/trigger/TriggerPopoverAction.d.ts +31 -0
  168. package/dist/primitives/composer/trigger/TriggerPopoverAction.d.ts.map +1 -0
  169. package/dist/primitives/composer/trigger/TriggerPopoverAction.js +39 -0
  170. package/dist/primitives/composer/trigger/TriggerPopoverAction.js.map +1 -0
  171. package/dist/primitives/composer/trigger/TriggerPopoverBack.d.ts.map +1 -1
  172. package/dist/primitives/composer/trigger/TriggerPopoverBack.js +3 -3
  173. package/dist/primitives/composer/trigger/TriggerPopoverBack.js.map +1 -1
  174. package/dist/primitives/composer/trigger/TriggerPopoverCategories.d.ts.map +1 -1
  175. package/dist/primitives/composer/trigger/TriggerPopoverCategories.js +11 -9
  176. package/dist/primitives/composer/trigger/TriggerPopoverCategories.js.map +1 -1
  177. package/dist/primitives/composer/trigger/TriggerPopoverDirective.d.ts +28 -0
  178. package/dist/primitives/composer/trigger/TriggerPopoverDirective.d.ts.map +1 -0
  179. package/dist/primitives/composer/trigger/TriggerPopoverDirective.js +37 -0
  180. package/dist/primitives/composer/trigger/TriggerPopoverDirective.js.map +1 -0
  181. package/dist/primitives/composer/trigger/TriggerPopoverItems.d.ts.map +1 -1
  182. package/dist/primitives/composer/trigger/TriggerPopoverItems.js +9 -6
  183. package/dist/primitives/composer/trigger/TriggerPopoverItems.js.map +1 -1
  184. package/dist/primitives/composer/trigger/TriggerPopoverResource.d.ts +16 -17
  185. package/dist/primitives/composer/trigger/TriggerPopoverResource.d.ts.map +1 -1
  186. package/dist/primitives/composer/trigger/TriggerPopoverResource.js +53 -248
  187. package/dist/primitives/composer/trigger/TriggerPopoverResource.js.map +1 -1
  188. package/dist/primitives/composer/trigger/TriggerPopoverRootContext.d.ts +60 -0
  189. package/dist/primitives/composer/trigger/TriggerPopoverRootContext.d.ts.map +1 -0
  190. package/dist/primitives/composer/trigger/TriggerPopoverRootContext.js +117 -0
  191. package/dist/primitives/composer/trigger/TriggerPopoverRootContext.js.map +1 -0
  192. package/dist/primitives/composer/trigger/detectTrigger.js +1 -1
  193. package/dist/primitives/composer/trigger/detectTrigger.js.map +1 -1
  194. package/dist/primitives/composer/trigger/index.d.ts +16 -3
  195. package/dist/primitives/composer/trigger/index.d.ts.map +1 -1
  196. package/dist/primitives/composer/trigger/index.js +9 -2
  197. package/dist/primitives/composer/trigger/index.js.map +1 -1
  198. package/dist/primitives/composer/trigger/triggerDetectionResource.d.ts +22 -0
  199. package/dist/primitives/composer/trigger/triggerDetectionResource.d.ts.map +1 -0
  200. package/dist/primitives/composer/trigger/triggerDetectionResource.js +17 -0
  201. package/dist/primitives/composer/trigger/triggerDetectionResource.js.map +1 -0
  202. package/dist/primitives/composer/trigger/triggerKeyboardResource.d.ts +45 -0
  203. package/dist/primitives/composer/trigger/triggerKeyboardResource.d.ts.map +1 -0
  204. package/dist/primitives/composer/trigger/triggerKeyboardResource.js +94 -0
  205. package/dist/primitives/composer/trigger/triggerKeyboardResource.js.map +1 -0
  206. package/dist/primitives/composer/trigger/triggerNavigationResource.d.ts +31 -0
  207. package/dist/primitives/composer/trigger/triggerNavigationResource.d.ts.map +1 -0
  208. package/dist/primitives/composer/trigger/triggerNavigationResource.js +94 -0
  209. package/dist/primitives/composer/trigger/triggerNavigationResource.js.map +1 -0
  210. package/dist/primitives/composer/trigger/triggerSelectionResource.d.ts +42 -0
  211. package/dist/primitives/composer/trigger/triggerSelectionResource.d.ts.map +1 -0
  212. package/dist/primitives/composer/trigger/triggerSelectionResource.js +62 -0
  213. package/dist/primitives/composer/trigger/triggerSelectionResource.js.map +1 -0
  214. package/dist/primitives/composer.d.ts +8 -13
  215. package/dist/primitives/composer.d.ts.map +1 -1
  216. package/dist/primitives/composer.js +7 -17
  217. package/dist/primitives/composer.js.map +1 -1
  218. package/dist/primitives/dropdownMenuRenderPrimitives.d.ts +14 -0
  219. package/dist/primitives/dropdownMenuRenderPrimitives.d.ts.map +1 -0
  220. package/dist/primitives/dropdownMenuRenderPrimitives.js +7 -0
  221. package/dist/primitives/dropdownMenuRenderPrimitives.js.map +1 -0
  222. package/dist/primitives/error/ErrorMessage.d.ts +1 -1
  223. package/dist/primitives/error/ErrorMessage.d.ts.map +1 -1
  224. package/dist/primitives/error/ErrorMessage.js +1 -1
  225. package/dist/primitives/error/ErrorMessage.js.map +1 -1
  226. package/dist/primitives/error/ErrorRoot.d.ts +1 -1
  227. package/dist/primitives/error/ErrorRoot.d.ts.map +1 -1
  228. package/dist/primitives/error/ErrorRoot.js +1 -1
  229. package/dist/primitives/error/ErrorRoot.js.map +1 -1
  230. package/dist/primitives/message/MessageError.d.ts +1 -1
  231. package/dist/primitives/message/MessageError.d.ts.map +1 -1
  232. package/dist/primitives/message/MessageIf.js +1 -1
  233. package/dist/primitives/message/MessageIf.js.map +1 -1
  234. package/dist/primitives/message/MessagePartsGrouped.d.ts +1 -1
  235. package/dist/primitives/message/MessagePartsGrouped.d.ts.map +1 -1
  236. package/dist/primitives/message/MessageRoot.d.ts +1 -1
  237. package/dist/primitives/message/MessageRoot.d.ts.map +1 -1
  238. package/dist/primitives/messagePart/MessagePartImage.d.ts +1 -1
  239. package/dist/primitives/messagePart/MessagePartImage.d.ts.map +1 -1
  240. package/dist/primitives/messagePart/MessagePartImage.js +2 -1
  241. package/dist/primitives/messagePart/MessagePartImage.js.map +1 -1
  242. package/dist/primitives/messagePart/MessagePartInProgress.d.ts +1 -1
  243. package/dist/primitives/messagePart/MessagePartInProgress.d.ts.map +1 -1
  244. package/dist/primitives/messagePart/MessagePartText.d.ts +2 -2
  245. package/dist/primitives/messagePart/MessagePartText.d.ts.map +1 -1
  246. package/dist/primitives/queueItem/QueueItemRemove.d.ts +1 -1
  247. package/dist/primitives/queueItem/QueueItemRemove.d.ts.map +1 -1
  248. package/dist/primitives/queueItem/QueueItemSteer.d.ts +1 -1
  249. package/dist/primitives/queueItem/QueueItemSteer.d.ts.map +1 -1
  250. package/dist/primitives/suggestion/SuggestionDescription.d.ts +1 -1
  251. package/dist/primitives/suggestion/SuggestionDescription.d.ts.map +1 -1
  252. package/dist/primitives/suggestion/SuggestionDescription.js +1 -1
  253. package/dist/primitives/suggestion/SuggestionDescription.js.map +1 -1
  254. package/dist/primitives/suggestion/SuggestionTitle.d.ts +1 -1
  255. package/dist/primitives/suggestion/SuggestionTitle.d.ts.map +1 -1
  256. package/dist/primitives/suggestion/SuggestionTitle.js +1 -1
  257. package/dist/primitives/suggestion/SuggestionTitle.js.map +1 -1
  258. package/dist/primitives/suggestion/SuggestionTrigger.d.ts +1 -1
  259. package/dist/primitives/suggestion/SuggestionTrigger.d.ts.map +1 -1
  260. package/dist/primitives/thread/ThreadRoot.d.ts +1 -1
  261. package/dist/primitives/thread/ThreadRoot.d.ts.map +1 -1
  262. package/dist/primitives/thread/ThreadRoot.js +1 -1
  263. package/dist/primitives/thread/ThreadRoot.js.map +1 -1
  264. package/dist/primitives/thread/ThreadScrollToBottom.d.ts +1 -1
  265. package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -1
  266. package/dist/primitives/thread/ThreadSuggestion.d.ts +1 -1
  267. package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
  268. package/dist/primitives/thread/ThreadSuggestion.js +0 -2
  269. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  270. package/dist/primitives/thread/ThreadViewport.d.ts +1 -1
  271. package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -1
  272. package/dist/primitives/thread/ThreadViewportFooter.d.ts +1 -1
  273. package/dist/primitives/thread/ThreadViewportFooter.d.ts.map +1 -1
  274. package/dist/primitives/threadList/ThreadListNew.d.ts +1 -1
  275. package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -1
  276. package/dist/primitives/threadList/ThreadListRoot.d.ts +1 -1
  277. package/dist/primitives/threadList/ThreadListRoot.d.ts.map +1 -1
  278. package/dist/primitives/threadList/ThreadListRoot.js +1 -1
  279. package/dist/primitives/threadList/ThreadListRoot.js.map +1 -1
  280. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts +1 -1
  281. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts.map +1 -1
  282. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts +1 -1
  283. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -1
  284. package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts +1 -1
  285. package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -1
  286. package/dist/primitives/threadListItem/ThreadListItemRoot.js +1 -1
  287. package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -1
  288. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts +1 -1
  289. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -1
  290. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts +1 -1
  291. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -1
  292. package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts +5 -2
  293. package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts.map +1 -1
  294. package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.js +3 -2
  295. package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.js.map +1 -1
  296. package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts +7 -4
  297. package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts.map +1 -1
  298. package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.js +2 -2
  299. package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.js.map +1 -1
  300. package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.d.ts +1 -1
  301. package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.d.ts.map +1 -1
  302. package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.js.map +1 -1
  303. package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts +7 -4
  304. package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts.map +1 -1
  305. package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.js +2 -2
  306. package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.js.map +1 -1
  307. package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts +7 -4
  308. package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts.map +1 -1
  309. package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.js +2 -2
  310. package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.js.map +1 -1
  311. package/dist/unstable/useMentionAdapter.d.ts +80 -0
  312. package/dist/unstable/useMentionAdapter.d.ts.map +1 -0
  313. package/dist/unstable/useMentionAdapter.js +129 -0
  314. package/dist/unstable/useMentionAdapter.js.map +1 -0
  315. package/dist/unstable/useSlashCommandAdapter.d.ts +32 -17
  316. package/dist/unstable/useSlashCommandAdapter.d.ts.map +1 -1
  317. package/dist/unstable/useSlashCommandAdapter.js +56 -32
  318. package/dist/unstable/useSlashCommandAdapter.js.map +1 -1
  319. package/dist/utils/Primitive.d.ts +6 -4
  320. package/dist/utils/Primitive.d.ts.map +1 -1
  321. package/dist/utils/Primitive.js +15 -8
  322. package/dist/utils/Primitive.js.map +1 -1
  323. package/dist/utils/createActionButton.d.ts +1 -1
  324. package/dist/utils/createActionButton.d.ts.map +1 -1
  325. package/dist/utils/hooks/useManagedRef.d.ts +1 -1
  326. package/dist/utils/hooks/useManagedRef.d.ts.map +1 -1
  327. package/dist/utils/hooks/useManagedRef.js.map +1 -1
  328. package/dist/utils/json/is-json.d.ts +1 -1
  329. package/dist/utils/json/is-json.d.ts.map +1 -1
  330. package/dist/utils/smooth/SmoothContext.d.ts +2 -2
  331. package/dist/utils/smooth/SmoothContext.d.ts.map +1 -1
  332. package/dist/utils/smooth/SmoothContext.js.map +1 -1
  333. package/package.json +10 -10
  334. package/src/augmentations.ts +2 -0
  335. package/src/client/InMemoryThreadList.ts +1 -0
  336. package/src/client/SingleThreadList.ts +1 -0
  337. package/src/context/providers/MessageProvider.tsx +1 -1
  338. package/src/context/providers/ThreadViewportProvider.tsx +1 -1
  339. package/src/context/react/ThreadViewportContext.ts +3 -3
  340. package/src/context/react/utils/createContextHook.ts +1 -1
  341. package/src/context/react/utils/createContextStoreHook.ts +2 -2
  342. package/src/context/react/utils/createStateHookForRuntime.ts +2 -1
  343. package/src/devtools/DevToolsHooks.ts +5 -1
  344. package/src/index.ts +27 -56
  345. package/src/legacy-runtime/AssistantRuntimeProvider.tsx +3 -3
  346. package/src/legacy-runtime/cloud/auiV0.ts +6 -3
  347. package/src/legacy-runtime/cloud/useCloudThreadListRuntime.ts +1 -1
  348. package/src/legacy-runtime/hooks/AssistantContext.ts +1 -1
  349. package/src/legacy-runtime/hooks/AttachmentContext.ts +1 -1
  350. package/src/legacy-runtime/hooks/ComposerContext.ts +1 -1
  351. package/src/legacy-runtime/hooks/MessageContext.ts +1 -1
  352. package/src/legacy-runtime/hooks/MessagePartContext.ts +1 -1
  353. package/src/legacy-runtime/hooks/ThreadContext.ts +1 -1
  354. package/src/legacy-runtime/hooks/ThreadListItemContext.ts +1 -1
  355. package/src/legacy-runtime/runtime-cores/assistant-transport/commandQueue.ts +1 -1
  356. package/src/legacy-runtime/runtime-cores/assistant-transport/types.ts +2 -2
  357. package/src/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.ts +20 -4
  358. package/src/legacy-runtime/runtime-cores/assistant-transport/useToolInvocations.test.ts +8 -2
  359. package/src/model-context/frame/useAssistantFrameHost.ts +1 -1
  360. package/src/model-context/makeAssistantVisible.tsx +3 -3
  361. package/src/primitives/actionBar/ActionBarCopy.tsx +1 -1
  362. package/src/primitives/actionBar/ActionBarEdit.ts +2 -2
  363. package/src/primitives/actionBar/ActionBarExportMarkdown.tsx +1 -1
  364. package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +1 -1
  365. package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +1 -1
  366. package/src/primitives/actionBar/ActionBarReload.ts +2 -2
  367. package/src/primitives/actionBar/ActionBarRoot.tsx +1 -1
  368. package/src/primitives/actionBar/ActionBarSpeak.ts +2 -2
  369. package/src/primitives/actionBar/ActionBarStopSpeaking.tsx +1 -1
  370. package/src/primitives/actionBarMore/ActionBarMoreContent.tsx +10 -4
  371. package/src/primitives/actionBarMore/ActionBarMoreItem.tsx +7 -7
  372. package/src/primitives/actionBarMore/ActionBarMoreRoot.tsx +2 -2
  373. package/src/primitives/actionBarMore/ActionBarMoreSeparator.tsx +7 -5
  374. package/src/primitives/actionBarMore/ActionBarMoreTrigger.tsx +7 -7
  375. package/src/primitives/assistantModal/AssistantModalAnchor.tsx +6 -2
  376. package/src/primitives/assistantModal/AssistantModalContent.tsx +6 -2
  377. package/src/primitives/assistantModal/AssistantModalRoot.tsx +2 -2
  378. package/src/primitives/assistantModal/AssistantModalTrigger.tsx +6 -2
  379. package/src/primitives/attachment/AttachmentRemove.ts +2 -2
  380. package/src/primitives/attachment/AttachmentRoot.tsx +5 -1
  381. package/src/primitives/attachment/AttachmentThumb.tsx +5 -1
  382. package/src/primitives/branchPicker/BranchPickerNext.ts +2 -2
  383. package/src/primitives/branchPicker/BranchPickerPrevious.ts +2 -2
  384. package/src/primitives/branchPicker/BranchPickerRoot.tsx +5 -1
  385. package/src/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.ts +2 -2
  386. package/src/primitives/chainOfThought/ChainOfThoughtRoot.tsx +5 -1
  387. package/src/primitives/composer/ComposerAddAttachment.ts +2 -2
  388. package/src/primitives/composer/ComposerAttachmentDropzone.test.tsx +125 -0
  389. package/src/primitives/composer/ComposerAttachmentDropzone.tsx +11 -8
  390. package/src/primitives/composer/ComposerCancel.ts +2 -2
  391. package/src/primitives/composer/ComposerDictationTranscript.tsx +5 -1
  392. package/src/primitives/composer/ComposerInput.tsx +33 -1
  393. package/src/primitives/composer/ComposerInputPluginContext.tsx +37 -24
  394. package/src/primitives/composer/ComposerRoot.tsx +1 -1
  395. package/src/primitives/composer/ComposerSend.ts +2 -2
  396. package/src/primitives/composer/trigger/TriggerPopover.tsx +207 -0
  397. package/src/primitives/composer/trigger/TriggerPopoverAction.tsx +61 -0
  398. package/src/primitives/composer/trigger/TriggerPopoverBack.tsx +4 -3
  399. package/src/primitives/composer/trigger/TriggerPopoverCategories.tsx +14 -17
  400. package/src/primitives/composer/trigger/TriggerPopoverDirective.tsx +57 -0
  401. package/src/primitives/composer/trigger/TriggerPopoverItems.tsx +44 -40
  402. package/src/primitives/composer/trigger/TriggerPopoverResource.ts +76 -315
  403. package/src/primitives/composer/trigger/TriggerPopoverRootContext.tsx +212 -0
  404. package/src/primitives/composer/trigger/detectTrigger.test.ts +36 -0
  405. package/src/primitives/composer/trigger/detectTrigger.ts +1 -1
  406. package/src/primitives/composer/trigger/index.ts +21 -5
  407. package/src/primitives/composer/trigger/triggerDetectionResource.ts +43 -0
  408. package/src/primitives/composer/trigger/triggerKeyboardResource.ts +151 -0
  409. package/src/primitives/composer/trigger/triggerNavigationResource.ts +145 -0
  410. package/src/primitives/composer/trigger/triggerSelectionResource.ts +122 -0
  411. package/src/primitives/composer.ts +8 -18
  412. package/src/primitives/dropdownMenuRenderPrimitives.test.tsx +64 -0
  413. package/src/primitives/dropdownMenuRenderPrimitives.ts +15 -0
  414. package/src/primitives/error/ErrorMessage.tsx +5 -1
  415. package/src/primitives/error/ErrorRoot.tsx +5 -1
  416. package/src/primitives/message/MessageError.ts +1 -1
  417. package/src/primitives/message/MessageIf.ts +1 -1
  418. package/src/primitives/message/MessagePartsGrouped.tsx +1 -1
  419. package/src/primitives/message/MessageRoot.tsx +1 -1
  420. package/src/primitives/messagePart/MessagePartImage.tsx +6 -1
  421. package/src/primitives/messagePart/MessagePartInProgress.ts +1 -1
  422. package/src/primitives/messagePart/MessagePartText.tsx +3 -3
  423. package/src/primitives/queueItem/QueueItemRemove.ts +2 -2
  424. package/src/primitives/queueItem/QueueItemSteer.ts +2 -2
  425. package/src/primitives/suggestion/SuggestionDescription.tsx +5 -1
  426. package/src/primitives/suggestion/SuggestionTitle.tsx +5 -1
  427. package/src/primitives/suggestion/SuggestionTrigger.ts +2 -2
  428. package/src/primitives/thread/ThreadRoot.tsx +5 -1
  429. package/src/primitives/thread/ThreadScrollToBottom.ts +2 -2
  430. package/src/primitives/thread/ThreadSuggestion.ts +2 -4
  431. package/src/primitives/thread/ThreadViewport.tsx +1 -1
  432. package/src/primitives/thread/ThreadViewportFooter.tsx +1 -1
  433. package/src/primitives/threadList/ThreadListNew.tsx +1 -1
  434. package/src/primitives/threadList/ThreadListRoot.tsx +5 -1
  435. package/src/primitives/threadListItem/ThreadListItemArchive.ts +2 -2
  436. package/src/primitives/threadListItem/ThreadListItemDelete.ts +2 -2
  437. package/src/primitives/threadListItem/ThreadListItemRoot.tsx +5 -1
  438. package/src/primitives/threadListItem/ThreadListItemTrigger.ts +2 -2
  439. package/src/primitives/threadListItem/ThreadListItemUnarchive.ts +2 -2
  440. package/src/primitives/threadListItemMore/ThreadListItemMoreContent.tsx +10 -4
  441. package/src/primitives/threadListItemMore/ThreadListItemMoreItem.tsx +7 -7
  442. package/src/primitives/threadListItemMore/ThreadListItemMoreRoot.tsx +2 -2
  443. package/src/primitives/threadListItemMore/ThreadListItemMoreSeparator.tsx +7 -5
  444. package/src/primitives/threadListItemMore/ThreadListItemMoreTrigger.tsx +7 -7
  445. package/src/tests/BaseComposerRuntimeCore.test.ts +143 -0
  446. package/src/tests/DataRenderers.test.ts +174 -41
  447. package/src/tests/MessageParts.loading.test.tsx +104 -0
  448. package/src/tests/RemoteThreadListRuntime.deferredProvider.test.tsx +79 -0
  449. package/src/unstable/useMentionAdapter.ts +220 -0
  450. package/src/unstable/useSlashCommandAdapter.ts +79 -50
  451. package/src/utils/Primitive.test.tsx +7 -1
  452. package/src/utils/Primitive.tsx +49 -16
  453. package/src/utils/createActionButton.tsx +3 -3
  454. package/src/utils/hooks/useManagedRef.ts +2 -2
  455. package/src/utils/json/is-json.ts +1 -1
  456. package/src/utils/smooth/SmoothContext.tsx +5 -5
  457. package/dist/primitives/composer/mention/ComposerMentionContext.d.ts +0 -25
  458. package/dist/primitives/composer/mention/ComposerMentionContext.d.ts.map +0 -1
  459. package/dist/primitives/composer/mention/ComposerMentionContext.js +0 -74
  460. package/dist/primitives/composer/mention/ComposerMentionContext.js.map +0 -1
  461. package/dist/primitives/composer/mention/index.d.ts +0 -6
  462. package/dist/primitives/composer/mention/index.d.ts.map +0 -1
  463. package/dist/primitives/composer/mention/index.js +0 -8
  464. package/dist/primitives/composer/mention/index.js.map +0 -1
  465. package/dist/primitives/composer/slash-command/ComposerSlashCommandRoot.d.ts +0 -36
  466. package/dist/primitives/composer/slash-command/ComposerSlashCommandRoot.d.ts.map +0 -1
  467. package/dist/primitives/composer/slash-command/ComposerSlashCommandRoot.js +0 -36
  468. package/dist/primitives/composer/slash-command/ComposerSlashCommandRoot.js.map +0 -1
  469. package/dist/primitives/composer/slash-command/index.d.ts +0 -2
  470. package/dist/primitives/composer/slash-command/index.d.ts.map +0 -1
  471. package/dist/primitives/composer/slash-command/index.js +0 -2
  472. package/dist/primitives/composer/slash-command/index.js.map +0 -1
  473. package/dist/primitives/composer/trigger/TriggerPopoverContext.d.ts +0 -37
  474. package/dist/primitives/composer/trigger/TriggerPopoverContext.d.ts.map +0 -1
  475. package/dist/primitives/composer/trigger/TriggerPopoverContext.js +0 -70
  476. package/dist/primitives/composer/trigger/TriggerPopoverContext.js.map +0 -1
  477. package/dist/primitives/composer/trigger/TriggerPopoverPopover.d.ts +0 -26
  478. package/dist/primitives/composer/trigger/TriggerPopoverPopover.d.ts.map +0 -1
  479. package/dist/primitives/composer/trigger/TriggerPopoverPopover.js +0 -28
  480. package/dist/primitives/composer/trigger/TriggerPopoverPopover.js.map +0 -1
  481. package/dist/unstable/useToolMentionAdapter.d.ts +0 -42
  482. package/dist/unstable/useToolMentionAdapter.d.ts.map +0 -1
  483. package/dist/unstable/useToolMentionAdapter.js +0 -65
  484. package/dist/unstable/useToolMentionAdapter.js.map +0 -1
  485. package/src/primitives/composer/mention/ComposerMentionContext.tsx +0 -175
  486. package/src/primitives/composer/mention/index.ts +0 -19
  487. package/src/primitives/composer/slash-command/ComposerSlashCommandRoot.tsx +0 -76
  488. package/src/primitives/composer/slash-command/index.ts +0 -1
  489. package/src/primitives/composer/trigger/TriggerPopoverContext.tsx +0 -129
  490. package/src/primitives/composer/trigger/TriggerPopoverPopover.tsx +0 -51
  491. package/src/unstable/useToolMentionAdapter.ts +0 -114
@@ -4,7 +4,7 @@ import { Primitive } from "../../utils/Primitive";
4
4
  import {
5
5
  type ComponentRef,
6
6
  forwardRef,
7
- ComponentPropsWithoutRef,
7
+ type ComponentPropsWithoutRef,
8
8
  useCallback,
9
9
  } from "react";
10
10
  import { useAui, useAuiState } from "@assistant-ui/store";
@@ -1,7 +1,11 @@
1
1
  "use client";
2
2
 
3
3
  import { Primitive } from "../../utils/Primitive";
4
- import { type ComponentRef, forwardRef, ComponentPropsWithoutRef } from "react";
4
+ import {
5
+ type ComponentRef,
6
+ forwardRef,
7
+ type ComponentPropsWithoutRef,
8
+ } from "react";
5
9
  import { useMessagePartImage } from "./useMessagePartImage";
6
10
 
7
11
  export namespace MessagePartPrimitiveImage {
@@ -33,6 +37,7 @@ export const MessagePartPrimitiveImage = forwardRef<
33
37
  MessagePartPrimitiveImage.Props
34
38
  >((props, forwardedRef) => {
35
39
  const { image } = useMessagePartImage();
40
+ // biome-ignore lint/performance/noImgElement: next/image not applicable here
36
41
  return <Primitive.img src={image} {...props} ref={forwardedRef} />;
37
42
  });
38
43
 
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { FC, PropsWithChildren } from "react";
3
+ import type { FC, PropsWithChildren } from "react";
4
4
  import { useAuiState } from "@assistant-ui/store";
5
5
 
6
6
  export namespace MessagePartPrimitiveInProgress {
@@ -1,11 +1,11 @@
1
1
  "use client";
2
2
 
3
- import { Primitive } from "../../utils/Primitive";
3
+ import type { Primitive } from "../../utils/Primitive";
4
4
  import {
5
5
  type ComponentRef,
6
6
  forwardRef,
7
- ComponentPropsWithoutRef,
8
- ElementType,
7
+ type ComponentPropsWithoutRef,
8
+ type ElementType,
9
9
  } from "react";
10
10
  import { useMessagePartText } from "./useMessagePartText";
11
11
  import { useSmooth } from "../../utils/smooth/useSmooth";
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import {
4
- ActionButtonElement,
5
- ActionButtonProps,
4
+ type ActionButtonElement,
5
+ type ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
8
  import { useAui } from "@assistant-ui/store";
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import {
4
- ActionButtonElement,
5
- ActionButtonProps,
4
+ type ActionButtonElement,
5
+ type ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
8
  import { useAui } from "@assistant-ui/store";
@@ -1,7 +1,11 @@
1
1
  "use client";
2
2
 
3
3
  import { Primitive } from "../../utils/Primitive";
4
- import { type ElementRef, forwardRef, ComponentPropsWithoutRef } from "react";
4
+ import {
5
+ type ElementRef,
6
+ forwardRef,
7
+ type ComponentPropsWithoutRef,
8
+ } from "react";
5
9
  import { useAuiState } from "@assistant-ui/store";
6
10
 
7
11
  export namespace SuggestionPrimitiveDescription {
@@ -1,7 +1,11 @@
1
1
  "use client";
2
2
 
3
3
  import { Primitive } from "../../utils/Primitive";
4
- import { type ElementRef, forwardRef, ComponentPropsWithoutRef } from "react";
4
+ import {
5
+ type ElementRef,
6
+ forwardRef,
7
+ type ComponentPropsWithoutRef,
8
+ } from "react";
5
9
  import { useAuiState } from "@assistant-ui/store";
6
10
 
7
11
  export namespace SuggestionPrimitiveTitle {
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import {
4
- ActionButtonElement,
5
- ActionButtonProps,
4
+ type ActionButtonElement,
5
+ type ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
8
  import { useCallback } from "react";
@@ -1,7 +1,11 @@
1
1
  "use client";
2
2
 
3
3
  import { Primitive } from "../../utils/Primitive";
4
- import { type ComponentRef, forwardRef, ComponentPropsWithoutRef } from "react";
4
+ import {
5
+ type ComponentRef,
6
+ forwardRef,
7
+ type ComponentPropsWithoutRef,
8
+ } from "react";
5
9
 
6
10
  export namespace ThreadPrimitiveRoot {
7
11
  export type Element = ComponentRef<typeof Primitive.div>;
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import {
4
- ActionButtonElement,
5
- ActionButtonProps,
4
+ type ActionButtonElement,
5
+ type ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
8
  import { useCallback } from "react";
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import {
4
- ActionButtonElement,
5
- ActionButtonProps,
4
+ type ActionButtonElement,
5
+ type ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
8
  import { useSuggestionTrigger as useSuggestionTriggerBehavior } from "@assistant-ui/core/react";
@@ -38,9 +38,7 @@ const useThreadSuggestion = ({
38
38
  /** @deprecated Use `clearComposer` instead. */
39
39
  method?: "replace";
40
40
  }) => {
41
- // ========== Deprecation Mapping ==========
42
41
  const resolvedSend = send ?? autoSend ?? false;
43
- // ==========================================
44
42
 
45
43
  const { disabled, trigger } = useSuggestionTriggerBehavior({
46
44
  prompt,
@@ -5,7 +5,7 @@ import { Primitive } from "../../utils/Primitive";
5
5
  import {
6
6
  type ComponentRef,
7
7
  forwardRef,
8
- ComponentPropsWithoutRef,
8
+ type ComponentPropsWithoutRef,
9
9
  useCallback,
10
10
  } from "react";
11
11
  import { useThreadViewportAutoScroll } from "./useThreadViewportAutoScroll";
@@ -5,7 +5,7 @@ import { Primitive } from "../../utils/Primitive";
5
5
  import {
6
6
  type ComponentRef,
7
7
  forwardRef,
8
- ComponentPropsWithoutRef,
8
+ type ComponentPropsWithoutRef,
9
9
  useCallback,
10
10
  } from "react";
11
11
  import { useSizeHandle } from "../../utils/hooks/useSizeHandle";
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import {
3
+ import type {
4
4
  ActionButtonElement,
5
5
  ActionButtonProps,
6
6
  } from "../../utils/createActionButton";
@@ -1,7 +1,11 @@
1
1
  "use client";
2
2
 
3
3
  import { Primitive } from "../../utils/Primitive";
4
- import { ComponentPropsWithoutRef, ComponentRef, forwardRef } from "react";
4
+ import {
5
+ type ComponentPropsWithoutRef,
6
+ type ComponentRef,
7
+ forwardRef,
8
+ } from "react";
5
9
 
6
10
  type PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;
7
11
 
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import {
4
- ActionButtonElement,
5
- ActionButtonProps,
4
+ type ActionButtonElement,
5
+ type ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
8
  import { useThreadListItemArchive as useThreadListItemArchiveBehavior } from "@assistant-ui/core/react";
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import {
4
- ActionButtonElement,
5
- ActionButtonProps,
4
+ type ActionButtonElement,
5
+ type ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
8
  import { useThreadListItemDelete as useThreadListItemDeleteBehavior } from "@assistant-ui/core/react";
@@ -1,7 +1,11 @@
1
1
  "use client";
2
2
 
3
3
  import { Primitive } from "../../utils/Primitive";
4
- import { type ComponentRef, forwardRef, ComponentPropsWithoutRef } from "react";
4
+ import {
5
+ type ComponentRef,
6
+ forwardRef,
7
+ type ComponentPropsWithoutRef,
8
+ } from "react";
5
9
  import { useAuiState } from "@assistant-ui/store";
6
10
 
7
11
  type PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import {
4
- ActionButtonElement,
5
- ActionButtonProps,
4
+ type ActionButtonElement,
5
+ type ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
8
  import { useThreadListItemTrigger as useThreadListItemTriggerBehavior } from "@assistant-ui/core/react";
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
3
  import {
4
- ActionButtonElement,
5
- ActionButtonProps,
4
+ type ActionButtonElement,
5
+ type ActionButtonProps,
6
6
  createActionButton,
7
7
  } from "../../utils/createActionButton";
8
8
  import { useThreadListItemUnarchive as useThreadListItemUnarchiveBehavior } from "@assistant-ui/core/react";
@@ -1,12 +1,18 @@
1
1
  "use client";
2
2
 
3
- import { ComponentPropsWithoutRef, ComponentRef, forwardRef } from "react";
3
+ import {
4
+ type ComponentPropsWithoutRef,
5
+ type ComponentRef,
6
+ forwardRef,
7
+ } from "react";
4
8
  import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
5
- import { ScopedProps, useDropdownMenuScope } from "./scope";
9
+ import type { WithRenderPropProps } from "../../utils/Primitive";
10
+ import { DropdownMenuRenderContent } from "../dropdownMenuRenderPrimitives";
11
+ import { type ScopedProps, useDropdownMenuScope } from "./scope";
6
12
 
7
13
  export namespace ThreadListItemMorePrimitiveContent {
8
14
  export type Element = ComponentRef<typeof DropdownMenuPrimitive.Content>;
9
- export type Props = ComponentPropsWithoutRef<
15
+ export type Props = WithRenderPropProps<
10
16
  typeof DropdownMenuPrimitive.Content
11
17
  > & {
12
18
  portalProps?:
@@ -32,7 +38,7 @@ export const ThreadListItemMorePrimitiveContent = forwardRef<
32
38
 
33
39
  return (
34
40
  <DropdownMenuPrimitive.Portal {...scope} {...portalProps}>
35
- <DropdownMenuPrimitive.Content
41
+ <DropdownMenuRenderContent
36
42
  {...scope}
37
43
  {...props}
38
44
  ref={forwardedRef}
@@ -1,14 +1,14 @@
1
1
  "use client";
2
2
 
3
- import { ComponentPropsWithoutRef, ComponentRef, forwardRef } from "react";
4
- import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
5
- import { ScopedProps, useDropdownMenuScope } from "./scope";
3
+ import { type ComponentRef, forwardRef } from "react";
4
+ import type { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
5
+ import type { WithRenderPropProps } from "../../utils/Primitive";
6
+ import { DropdownMenuRenderItem } from "../dropdownMenuRenderPrimitives";
7
+ import { type ScopedProps, useDropdownMenuScope } from "./scope";
6
8
 
7
9
  export namespace ThreadListItemMorePrimitiveItem {
8
10
  export type Element = ComponentRef<typeof DropdownMenuPrimitive.Item>;
9
- export type Props = ComponentPropsWithoutRef<
10
- typeof DropdownMenuPrimitive.Item
11
- >;
11
+ export type Props = WithRenderPropProps<typeof DropdownMenuPrimitive.Item>;
12
12
  }
13
13
 
14
14
  export const ThreadListItemMorePrimitiveItem = forwardRef<
@@ -24,7 +24,7 @@ export const ThreadListItemMorePrimitiveItem = forwardRef<
24
24
  ) => {
25
25
  const scope = useDropdownMenuScope(__scopeThreadListItemMore);
26
26
 
27
- return <DropdownMenuPrimitive.Item {...scope} {...rest} ref={ref} />;
27
+ return <DropdownMenuRenderItem {...scope} {...rest} ref={ref} />;
28
28
  },
29
29
  );
30
30
 
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
 
3
- import { FC } from "react";
3
+ import type { FC } from "react";
4
4
  import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
5
- import { ScopedProps, useDropdownMenuScope } from "./scope";
5
+ import { type ScopedProps, useDropdownMenuScope } from "./scope";
6
6
 
7
7
  export namespace ThreadListItemMorePrimitiveRoot {
8
8
  export type Props = DropdownMenuPrimitive.DropdownMenuProps;
@@ -1,12 +1,14 @@
1
1
  "use client";
2
2
 
3
- import { ComponentPropsWithoutRef, ComponentRef, forwardRef } from "react";
4
- import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
5
- import { ScopedProps, useDropdownMenuScope } from "./scope";
3
+ import { type ComponentRef, forwardRef } from "react";
4
+ import type { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
5
+ import type { WithRenderPropProps } from "../../utils/Primitive";
6
+ import { DropdownMenuRenderSeparator } from "../dropdownMenuRenderPrimitives";
7
+ import { type ScopedProps, useDropdownMenuScope } from "./scope";
6
8
 
7
9
  export namespace ThreadListItemMorePrimitiveSeparator {
8
10
  export type Element = ComponentRef<typeof DropdownMenuPrimitive.Separator>;
9
- export type Props = ComponentPropsWithoutRef<
11
+ export type Props = WithRenderPropProps<
10
12
  typeof DropdownMenuPrimitive.Separator
11
13
  >;
12
14
  }
@@ -24,7 +26,7 @@ export const ThreadListItemMorePrimitiveSeparator = forwardRef<
24
26
  ) => {
25
27
  const scope = useDropdownMenuScope(__scopeThreadListItemMore);
26
28
 
27
- return <DropdownMenuPrimitive.Separator {...scope} {...rest} ref={ref} />;
29
+ return <DropdownMenuRenderSeparator {...scope} {...rest} ref={ref} />;
28
30
  },
29
31
  );
30
32
 
@@ -1,14 +1,14 @@
1
1
  "use client";
2
2
 
3
- import { ComponentPropsWithoutRef, ComponentRef, forwardRef } from "react";
4
- import { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
5
- import { ScopedProps, useDropdownMenuScope } from "./scope";
3
+ import { type ComponentRef, forwardRef } from "react";
4
+ import type { DropdownMenu as DropdownMenuPrimitive } from "radix-ui";
5
+ import type { WithRenderPropProps } from "../../utils/Primitive";
6
+ import { DropdownMenuRenderTrigger } from "../dropdownMenuRenderPrimitives";
7
+ import { type ScopedProps, useDropdownMenuScope } from "./scope";
6
8
 
7
9
  export namespace ThreadListItemMorePrimitiveTrigger {
8
10
  export type Element = ComponentRef<typeof DropdownMenuPrimitive.Trigger>;
9
- export type Props = ComponentPropsWithoutRef<
10
- typeof DropdownMenuPrimitive.Trigger
11
- >;
11
+ export type Props = WithRenderPropProps<typeof DropdownMenuPrimitive.Trigger>;
12
12
  }
13
13
 
14
14
  export const ThreadListItemMorePrimitiveTrigger = forwardRef<
@@ -24,7 +24,7 @@ export const ThreadListItemMorePrimitiveTrigger = forwardRef<
24
24
  ) => {
25
25
  const scope = useDropdownMenuScope(__scopeThreadListItemMore);
26
26
 
27
- return <DropdownMenuPrimitive.Trigger {...scope} {...rest} ref={ref} />;
27
+ return <DropdownMenuRenderTrigger {...scope} {...rest} ref={ref} />;
28
28
  },
29
29
  );
30
30
 
@@ -426,6 +426,149 @@ describe("BaseComposerRuntimeCore", () => {
426
426
  // Pending was sent through adapter
427
427
  expect(adapter.send).toHaveBeenCalledTimes(1);
428
428
  });
429
+
430
+ describe("adapter.accept enforcement", () => {
431
+ const makeImageAdapter = (): AttachmentAdapter => ({
432
+ accept: "image/*",
433
+ add: vi.fn(),
434
+ remove: vi.fn(),
435
+ send: vi.fn(),
436
+ });
437
+
438
+ it("rejects external attachment with contentType not matching adapter.accept", async () => {
439
+ composer.setAttachmentAdapter(makeImageAdapter());
440
+ const onError = vi.fn();
441
+ const onAdd = vi.fn();
442
+ composer.unstable_on("attachmentAddError", onError);
443
+ composer.unstable_on("attachmentAdd", onAdd);
444
+
445
+ await expect(
446
+ composer.addAttachment(
447
+ makeCreateAttachment({
448
+ name: "doc.pdf",
449
+ contentType: "application/pdf",
450
+ }),
451
+ ),
452
+ ).rejects.toThrow(/File type application\/pdf is not accepted/);
453
+
454
+ expect(composer.attachments).toHaveLength(0);
455
+ expect(onError).toHaveBeenCalledTimes(1);
456
+ expect(onAdd).not.toHaveBeenCalled();
457
+ });
458
+
459
+ it("accepts external attachment with contentType matching adapter.accept", async () => {
460
+ composer.setAttachmentAdapter(makeImageAdapter());
461
+ const onError = vi.fn();
462
+
463
+ composer.unstable_on("attachmentAddError", onError);
464
+ await composer.addAttachment(
465
+ makeCreateAttachment({
466
+ name: "photo.png",
467
+ contentType: "image/png",
468
+ }),
469
+ );
470
+
471
+ expect(composer.attachments).toHaveLength(1);
472
+ expect(onError).not.toHaveBeenCalled();
473
+ });
474
+
475
+ it("accepts external attachment when only filename extension matches adapter.accept", async () => {
476
+ composer.setAttachmentAdapter({
477
+ accept: ".pdf",
478
+ add: vi.fn(),
479
+ remove: vi.fn(),
480
+ send: vi.fn(),
481
+ });
482
+
483
+ await composer.addAttachment(
484
+ makeCreateAttachment({ name: "report.pdf" }),
485
+ );
486
+
487
+ expect(composer.attachments).toHaveLength(1);
488
+ });
489
+
490
+ it("rejects external attachment when contentType missing and extension does not match", async () => {
491
+ composer.setAttachmentAdapter(makeImageAdapter());
492
+ const onError = vi.fn();
493
+ composer.unstable_on("attachmentAddError", onError);
494
+
495
+ await expect(
496
+ composer.addAttachment(makeCreateAttachment({ name: "notes.txt" })),
497
+ ).rejects.toThrow(/is not accepted/);
498
+
499
+ expect(onError).toHaveBeenCalledTimes(1);
500
+ });
501
+
502
+ it("adds external attachment without check when no adapter is configured", async () => {
503
+ // No adapter — preserves the original "no adapter required" guarantee
504
+ await composer.addAttachment(
505
+ makeCreateAttachment({
506
+ name: "anything.xyz",
507
+ contentType: "application/x-anything",
508
+ }),
509
+ );
510
+
511
+ expect(composer.attachments).toHaveLength(1);
512
+ });
513
+
514
+ it("does not let subscriber errors mask the original throw", async () => {
515
+ composer.setAttachmentAdapter(makeImageAdapter());
516
+ composer.unstable_on("attachmentAddError", () => {
517
+ throw new Error("subscriber boom");
518
+ });
519
+
520
+ await expect(
521
+ composer.addAttachment(
522
+ makeCreateAttachment({
523
+ name: "doc.pdf",
524
+ contentType: "application/pdf",
525
+ }),
526
+ ),
527
+ ).rejects.toThrow(/is not accepted/);
528
+ });
529
+
530
+ it("does not fire attachmentAddError when an attachmentAdd subscriber throws", async () => {
531
+ composer.setAttachmentAdapter(makeImageAdapter());
532
+ const onError = vi.fn();
533
+ composer.unstable_on("attachmentAdd", () => {
534
+ throw new Error("add subscriber boom");
535
+ });
536
+ composer.unstable_on("attachmentAddError", onError);
537
+
538
+ await expect(
539
+ composer.addAttachment(
540
+ makeCreateAttachment({
541
+ name: "photo.png",
542
+ contentType: "image/png",
543
+ }),
544
+ ),
545
+ ).rejects.toThrow("add subscriber boom");
546
+
547
+ expect(composer.attachments).toHaveLength(1);
548
+ expect(onError).not.toHaveBeenCalled();
549
+ });
550
+
551
+ it("does not fire attachmentAddError when a state subscriber throws on add", async () => {
552
+ composer.setAttachmentAdapter(makeImageAdapter());
553
+ const onError = vi.fn();
554
+ composer.subscribe(() => {
555
+ throw new Error("state subscriber boom");
556
+ });
557
+ composer.unstable_on("attachmentAddError", onError);
558
+
559
+ await expect(
560
+ composer.addAttachment(
561
+ makeCreateAttachment({
562
+ name: "photo.png",
563
+ contentType: "image/png",
564
+ }),
565
+ ),
566
+ ).rejects.toThrow("state subscriber boom");
567
+
568
+ expect(composer.attachments).toHaveLength(1);
569
+ expect(onError).not.toHaveBeenCalled();
570
+ });
571
+ });
429
572
  });
430
573
 
431
574
  describe("send options", () => {