@assistant-ui/core 0.2.20 → 0.2.22

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 (610) hide show
  1. package/dist/adapters/attachment.d.ts +2 -2
  2. package/dist/adapters/attachment.d.ts.map +1 -1
  3. package/dist/adapters/attachment.js +14 -7
  4. package/dist/adapters/attachment.js.map +1 -1
  5. package/dist/adapters/directive-formatter.d.ts +0 -1
  6. package/dist/adapters/directive-formatter.d.ts.map +1 -1
  7. package/dist/adapters/feedback.d.ts +0 -1
  8. package/dist/adapters/feedback.d.ts.map +1 -1
  9. package/dist/adapters/index.d.ts +2 -2
  10. package/dist/adapters/index.js +2 -1
  11. package/dist/adapters/speech.d.ts +0 -1
  12. package/dist/adapters/speech.d.ts.map +1 -1
  13. package/dist/adapters/speech.js +9 -2
  14. package/dist/adapters/speech.js.map +1 -1
  15. package/dist/adapters/suggestion.d.ts +16 -2
  16. package/dist/adapters/suggestion.d.ts.map +1 -1
  17. package/dist/adapters/suggestion.js +36 -0
  18. package/dist/adapters/suggestion.js.map +1 -0
  19. package/dist/adapters/thread-history.d.ts +2 -2
  20. package/dist/adapters/thread-history.d.ts.map +1 -1
  21. package/dist/adapters/trigger.d.ts +5 -3
  22. package/dist/adapters/trigger.d.ts.map +1 -1
  23. package/dist/adapters/voice.d.ts +0 -1
  24. package/dist/adapters/voice.d.ts.map +1 -1
  25. package/dist/adapters/voice.js +13 -5
  26. package/dist/adapters/voice.js.map +1 -1
  27. package/dist/index.d.ts +4 -3
  28. package/dist/index.js +3 -1
  29. package/dist/index.js.map +1 -1
  30. package/dist/internal/duplicate-detection.d.ts.map +1 -1
  31. package/dist/internal.d.ts +9 -1
  32. package/dist/internal.js +8 -2
  33. package/dist/model-context/frame/host.d.ts +1 -1
  34. package/dist/model-context/frame/host.d.ts.map +1 -1
  35. package/dist/model-context/frame/host.js +5 -0
  36. package/dist/model-context/frame/host.js.map +1 -1
  37. package/dist/model-context/frame/provider.d.ts +0 -1
  38. package/dist/model-context/frame/provider.d.ts.map +1 -1
  39. package/dist/model-context/frame/provider.js +1 -0
  40. package/dist/model-context/frame/provider.js.map +1 -1
  41. package/dist/model-context/frame/types.d.ts.map +1 -1
  42. package/dist/model-context/interactable-composer-metadata.d.ts +4 -2
  43. package/dist/model-context/interactable-composer-metadata.d.ts.map +1 -1
  44. package/dist/model-context/interactable-composer-metadata.js.map +1 -1
  45. package/dist/model-context/registry-handles.d.ts +0 -1
  46. package/dist/model-context/registry-handles.d.ts.map +1 -1
  47. package/dist/model-context/registry.d.ts +0 -1
  48. package/dist/model-context/registry.d.ts.map +1 -1
  49. package/dist/model-context/tool.d.ts +23 -9
  50. package/dist/model-context/tool.d.ts.map +1 -1
  51. package/dist/model-context/tool.js +0 -25
  52. package/dist/model-context/tool.js.map +1 -1
  53. package/dist/model-context/types.d.ts +0 -1
  54. package/dist/model-context/types.d.ts.map +1 -1
  55. package/dist/react/AssistantProvider.d.ts +0 -1
  56. package/dist/react/AssistantProvider.d.ts.map +1 -1
  57. package/dist/react/AssistantProvider.js.map +1 -1
  58. package/dist/react/AssistantRuntimeProvider.d.ts +1 -6
  59. package/dist/react/AssistantRuntimeProvider.d.ts.map +1 -1
  60. package/dist/react/RuntimeAdapter.d.ts +1 -0
  61. package/dist/react/RuntimeAdapter.d.ts.map +1 -1
  62. package/dist/react/adapters/LocalStorageThreadListAdapter.d.ts +13 -2
  63. package/dist/react/adapters/LocalStorageThreadListAdapter.d.ts.map +1 -1
  64. package/dist/react/adapters/LocalStorageThreadListAdapter.js +196 -54
  65. package/dist/react/adapters/LocalStorageThreadListAdapter.js.map +1 -1
  66. package/dist/react/adapters/TitleGenerationAdapter.d.ts +0 -1
  67. package/dist/react/adapters/TitleGenerationAdapter.d.ts.map +1 -1
  68. package/dist/react/client/DataRenderers.d.ts +0 -1
  69. package/dist/react/client/DataRenderers.d.ts.map +1 -1
  70. package/dist/react/client/Interactables.d.ts +0 -1
  71. package/dist/react/client/Interactables.d.ts.map +1 -1
  72. package/dist/react/client/Interactables.js.map +1 -1
  73. package/dist/react/client/Tools.d.ts +3 -2
  74. package/dist/react/client/Tools.d.ts.map +1 -1
  75. package/dist/react/client/interactable-model-context.d.ts +0 -1
  76. package/dist/react/client/interactable-model-context.d.ts.map +1 -1
  77. package/dist/react/index.d.ts +2 -2
  78. package/dist/react/interactables-legacy/Interactables.d.ts +0 -1
  79. package/dist/react/interactables-legacy/Interactables.d.ts.map +1 -1
  80. package/dist/react/interactables-legacy/interactable-model-context.d.ts +0 -1
  81. package/dist/react/interactables-legacy/interactable-model-context.d.ts.map +1 -1
  82. package/dist/react/interactables-legacy/scopes.d.ts +4 -2
  83. package/dist/react/interactables-legacy/scopes.d.ts.map +1 -1
  84. package/dist/react/interactables-legacy/useAssistantInteractable.d.ts +0 -1
  85. package/dist/react/interactables-legacy/useAssistantInteractable.d.ts.map +1 -1
  86. package/dist/react/interactables-legacy/useInteractableState.d.ts.map +1 -1
  87. package/dist/react/model-context/define-mcp-toolkit.d.ts +19 -4
  88. package/dist/react/model-context/define-mcp-toolkit.d.ts.map +1 -1
  89. package/dist/react/model-context/define-mcp-toolkit.js +17 -5
  90. package/dist/react/model-context/define-mcp-toolkit.js.map +1 -1
  91. package/dist/react/model-context/define-toolkit.d.ts +1 -2
  92. package/dist/react/model-context/define-toolkit.d.ts.map +1 -1
  93. package/dist/react/model-context/external-tool.d.ts.map +1 -1
  94. package/dist/react/model-context/human-tool.d.ts.map +1 -1
  95. package/dist/react/model-context/interactableTool.d.ts +2 -2
  96. package/dist/react/model-context/interactableTool.d.ts.map +1 -1
  97. package/dist/react/model-context/makeAssistantDataUI.d.ts +2 -2
  98. package/dist/react/model-context/makeAssistantDataUI.d.ts.map +1 -1
  99. package/dist/react/model-context/makeAssistantTool.d.ts +2 -2
  100. package/dist/react/model-context/makeAssistantTool.d.ts.map +1 -1
  101. package/dist/react/model-context/makeAssistantToolUI.d.ts +2 -2
  102. package/dist/react/model-context/makeAssistantToolUI.d.ts.map +1 -1
  103. package/dist/react/model-context/provider-tool.d.ts +0 -1
  104. package/dist/react/model-context/provider-tool.d.ts.map +1 -1
  105. package/dist/react/model-context/stub-tool.d.ts.map +1 -1
  106. package/dist/react/model-context/toolbox.d.ts +5 -5
  107. package/dist/react/model-context/toolbox.d.ts.map +1 -1
  108. package/dist/react/model-context/useAssistantContext.d.ts +1 -0
  109. package/dist/react/model-context/useAssistantContext.d.ts.map +1 -1
  110. package/dist/react/model-context/useAssistantDataUI.d.ts +3 -2
  111. package/dist/react/model-context/useAssistantDataUI.d.ts.map +1 -1
  112. package/dist/react/model-context/useAssistantInstructions.d.ts +1 -0
  113. package/dist/react/model-context/useAssistantInstructions.d.ts.map +1 -1
  114. package/dist/react/model-context/useAssistantTool.d.ts +4 -2
  115. package/dist/react/model-context/useAssistantTool.d.ts.map +1 -1
  116. package/dist/react/model-context/useAssistantToolUI.d.ts +3 -2
  117. package/dist/react/model-context/useAssistantToolUI.d.ts.map +1 -1
  118. package/dist/react/model-context/useAuiToolOverrides.d.ts +0 -1
  119. package/dist/react/model-context/useAuiToolOverrides.d.ts.map +1 -1
  120. package/dist/react/model-context/useInlineRender.d.ts +0 -1
  121. package/dist/react/model-context/useInlineRender.d.ts.map +1 -1
  122. package/dist/react/model-context/useInteractable.d.ts +7 -4
  123. package/dist/react/model-context/useInteractable.d.ts.map +1 -1
  124. package/dist/react/model-context/useInteractable.js.map +1 -1
  125. package/dist/react/model-context/useInteractableState.d.ts.map +1 -1
  126. package/dist/react/model-context/useInteractableVersions.d.ts +0 -1
  127. package/dist/react/model-context/useInteractableVersions.d.ts.map +1 -1
  128. package/dist/react/model-context/useToolArgsStatus.d.ts +3 -1
  129. package/dist/react/model-context/useToolArgsStatus.d.ts.map +1 -1
  130. package/dist/react/primitive-hooks/useActionBarCopy.d.ts +1 -4
  131. package/dist/react/primitive-hooks/useActionBarCopy.d.ts.map +1 -1
  132. package/dist/react/primitive-hooks/useActionBarCopy.js +13 -13
  133. package/dist/react/primitive-hooks/useActionBarCopy.js.map +1 -1
  134. package/dist/react/primitive-hooks/useActionBarEdit.d.ts.map +1 -1
  135. package/dist/react/primitive-hooks/useActionBarFeedback.d.ts.map +1 -1
  136. package/dist/react/primitive-hooks/useActionBarReload.d.ts.map +1 -1
  137. package/dist/react/primitive-hooks/useActionBarSpeak.d.ts.map +1 -1
  138. package/dist/react/primitive-hooks/useActionBarStopSpeaking.d.ts.map +1 -1
  139. package/dist/react/primitive-hooks/useBranchPickerNext.d.ts.map +1 -1
  140. package/dist/react/primitive-hooks/useBranchPickerPrevious.d.ts.map +1 -1
  141. package/dist/react/primitive-hooks/useComposerAddAttachment.d.ts +0 -1
  142. package/dist/react/primitive-hooks/useComposerAddAttachment.d.ts.map +1 -1
  143. package/dist/react/primitive-hooks/useComposerCancel.d.ts.map +1 -1
  144. package/dist/react/primitive-hooks/useComposerDictate.d.ts.map +1 -1
  145. package/dist/react/primitive-hooks/useComposerSend.d.ts +0 -1
  146. package/dist/react/primitive-hooks/useComposerSend.d.ts.map +1 -1
  147. package/dist/react/primitive-hooks/useEditComposerCancel.d.ts.map +1 -1
  148. package/dist/react/primitive-hooks/useEditComposerSend.d.ts.map +1 -1
  149. package/dist/react/primitive-hooks/useMessageBranching.d.ts.map +1 -1
  150. package/dist/react/primitive-hooks/useMessageError.d.ts.map +1 -1
  151. package/dist/react/primitive-hooks/useMessageError.js +5 -1
  152. package/dist/react/primitive-hooks/useMessageError.js.map +1 -1
  153. package/dist/react/primitive-hooks/useMessageReload.d.ts.map +1 -1
  154. package/dist/react/primitive-hooks/useSuggestionTrigger.d.ts +1 -5
  155. package/dist/react/primitive-hooks/useSuggestionTrigger.d.ts.map +1 -1
  156. package/dist/react/primitive-hooks/useThreadIsEmpty.d.ts.map +1 -1
  157. package/dist/react/primitive-hooks/useThreadIsRunning.d.ts.map +1 -1
  158. package/dist/react/primitive-hooks/useThreadListItemArchive.d.ts.map +1 -1
  159. package/dist/react/primitive-hooks/useThreadListItemDelete.d.ts.map +1 -1
  160. package/dist/react/primitive-hooks/useThreadListItemTrigger.d.ts.map +1 -1
  161. package/dist/react/primitive-hooks/useThreadListItemUnarchive.d.ts.map +1 -1
  162. package/dist/react/primitive-hooks/useThreadListLoadMore.d.ts.map +1 -1
  163. package/dist/react/primitive-hooks/useThreadListNew.d.ts.map +1 -1
  164. package/dist/react/primitive-hooks/useThreadMessageIds.d.ts.map +1 -1
  165. package/dist/react/primitive-hooks/useThreadMessages.d.ts +0 -1
  166. package/dist/react/primitive-hooks/useThreadMessages.d.ts.map +1 -1
  167. package/dist/react/primitive-hooks/useVoice.d.ts +0 -1
  168. package/dist/react/primitive-hooks/useVoice.d.ts.map +1 -1
  169. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.d.ts +7 -4
  170. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.d.ts.map +1 -1
  171. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.js +1 -1
  172. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.js.map +1 -1
  173. package/dist/react/primitives/composer/ComposerAttachments.d.ts +4 -3
  174. package/dist/react/primitives/composer/ComposerAttachments.d.ts.map +1 -1
  175. package/dist/react/primitives/composer/ComposerAttachments.js.map +1 -1
  176. package/dist/react/primitives/composer/ComposerIf.d.ts +4 -3
  177. package/dist/react/primitives/composer/ComposerIf.d.ts.map +1 -1
  178. package/dist/react/primitives/composer/ComposerQueue.d.ts +2 -2
  179. package/dist/react/primitives/composer/ComposerQueue.d.ts.map +1 -1
  180. package/dist/react/primitives/composer/ComposerQueue.js.map +1 -1
  181. package/dist/react/primitives/generativeUI/GenerativeUI.d.ts +2 -2
  182. package/dist/react/primitives/generativeUI/GenerativeUI.d.ts.map +1 -1
  183. package/dist/react/primitives/message/MessageAttachments.d.ts +4 -3
  184. package/dist/react/primitives/message/MessageAttachments.d.ts.map +1 -1
  185. package/dist/react/primitives/message/MessageAttachments.js.map +1 -1
  186. package/dist/react/primitives/message/MessageGroupedParts.d.ts +1 -6
  187. package/dist/react/primitives/message/MessageGroupedParts.d.ts.map +1 -1
  188. package/dist/react/primitives/message/MessageGroupedParts.js.map +1 -1
  189. package/dist/react/primitives/message/MessageParts.d.ts +44 -25
  190. package/dist/react/primitives/message/MessageParts.d.ts.map +1 -1
  191. package/dist/react/primitives/message/MessageParts.js +48 -37
  192. package/dist/react/primitives/message/MessageParts.js.map +1 -1
  193. package/dist/react/primitives/message/MessageQuote.d.ts +2 -2
  194. package/dist/react/primitives/message/MessageQuote.d.ts.map +1 -1
  195. package/dist/react/primitives/messagePart/MessagePartInProgress.d.ts +0 -1
  196. package/dist/react/primitives/messagePart/MessagePartInProgress.d.ts.map +1 -1
  197. package/dist/react/primitives/part/PartMessages.d.ts +2 -2
  198. package/dist/react/primitives/part/PartMessages.d.ts.map +1 -1
  199. package/dist/react/primitives/part/PartMessages.js.map +1 -1
  200. package/dist/react/primitives/thread/ThreadMessages.d.ts +35 -17
  201. package/dist/react/primitives/thread/ThreadMessages.d.ts.map +1 -1
  202. package/dist/react/primitives/thread/ThreadMessages.js.map +1 -1
  203. package/dist/react/primitives/thread/ThreadSuggestions.d.ts +6 -4
  204. package/dist/react/primitives/thread/ThreadSuggestions.d.ts.map +1 -1
  205. package/dist/react/primitives/thread/ThreadSuggestions.js.map +1 -1
  206. package/dist/react/primitives/threadList/ThreadListItems.d.ts +4 -3
  207. package/dist/react/primitives/threadList/ThreadListItems.d.ts.map +1 -1
  208. package/dist/react/primitives/threadList/ThreadListItems.js.map +1 -1
  209. package/dist/react/primitives/threadListItem/ThreadListItemTitle.d.ts +0 -1
  210. package/dist/react/primitives/threadListItem/ThreadListItemTitle.d.ts.map +1 -1
  211. package/dist/react/providers/AttachmentByIndexProvider.d.ts +0 -1
  212. package/dist/react/providers/AttachmentByIndexProvider.d.ts.map +1 -1
  213. package/dist/react/providers/ChainOfThoughtByIndicesProvider.d.ts +0 -1
  214. package/dist/react/providers/ChainOfThoughtByIndicesProvider.d.ts.map +1 -1
  215. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.d.ts +0 -1
  216. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.d.ts.map +1 -1
  217. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.js +18 -30
  218. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.js.map +1 -1
  219. package/dist/react/providers/MessageByIdProvider.d.ts +0 -1
  220. package/dist/react/providers/MessageByIdProvider.d.ts.map +1 -1
  221. package/dist/react/providers/MessageByIndexProvider.d.ts +0 -1
  222. package/dist/react/providers/MessageByIndexProvider.d.ts.map +1 -1
  223. package/dist/react/providers/PartByIndexProvider.d.ts +0 -1
  224. package/dist/react/providers/PartByIndexProvider.d.ts.map +1 -1
  225. package/dist/react/providers/PartByIndexProvider.js +18 -30
  226. package/dist/react/providers/PartByIndexProvider.js.map +1 -1
  227. package/dist/react/providers/QueueItemByIndexProvider.d.ts +0 -1
  228. package/dist/react/providers/QueueItemByIndexProvider.d.ts.map +1 -1
  229. package/dist/react/providers/ReadonlyThreadProvider.d.ts +0 -1
  230. package/dist/react/providers/ReadonlyThreadProvider.d.ts.map +1 -1
  231. package/dist/react/providers/SuggestionByIndexProvider.d.ts +0 -1
  232. package/dist/react/providers/SuggestionByIndexProvider.d.ts.map +1 -1
  233. package/dist/react/providers/TextMessagePartProvider.d.ts +0 -1
  234. package/dist/react/providers/TextMessagePartProvider.d.ts.map +1 -1
  235. package/dist/react/providers/ThreadListItemByIndexProvider.d.ts +0 -1
  236. package/dist/react/providers/ThreadListItemByIndexProvider.d.ts.map +1 -1
  237. package/dist/react/providers/ThreadListItemRuntimeProvider.d.ts +1 -1
  238. package/dist/react/providers/ThreadListItemRuntimeProvider.d.ts.map +1 -1
  239. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.d.ts +2 -1
  240. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.d.ts.map +1 -1
  241. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.js +2 -1
  242. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.js.map +1 -1
  243. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.d.ts +12 -3
  244. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -1
  245. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.js +70 -27
  246. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
  247. package/dist/react/runtimes/RuntimeAdapterProvider.d.ts +0 -1
  248. package/dist/react/runtimes/RuntimeAdapterProvider.d.ts.map +1 -1
  249. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.d.ts +0 -1
  250. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -1
  251. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.js +1 -1
  252. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
  253. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.d.ts +1 -4
  254. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.d.ts.map +1 -1
  255. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.js +8 -4
  256. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.js.map +1 -1
  257. package/dist/react/runtimes/cloud/auiV0.d.ts +12 -2
  258. package/dist/react/runtimes/cloud/auiV0.d.ts.map +1 -1
  259. package/dist/react/runtimes/cloud/auiV0.js +30 -1
  260. package/dist/react/runtimes/cloud/auiV0.js.map +1 -1
  261. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.d.ts +0 -1
  262. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.d.ts.map +1 -1
  263. package/dist/react/runtimes/createMessageConverter.d.ts +1 -7
  264. package/dist/react/runtimes/createMessageConverter.d.ts.map +1 -1
  265. package/dist/react/runtimes/createRuntimeExtras.d.ts +0 -1
  266. package/dist/react/runtimes/createRuntimeExtras.d.ts.map +1 -1
  267. package/dist/react/runtimes/external-message-converter.d.ts +1 -8
  268. package/dist/react/runtimes/external-message-converter.d.ts.map +1 -1
  269. package/dist/react/runtimes/external-message-converter.js +43 -45
  270. package/dist/react/runtimes/external-message-converter.js.map +1 -1
  271. package/dist/react/runtimes/useExternalStoreRuntime.d.ts +0 -1
  272. package/dist/react/runtimes/useExternalStoreRuntime.d.ts.map +1 -1
  273. package/dist/react/runtimes/useExternalStoreSharedOptions.d.ts +0 -1
  274. package/dist/react/runtimes/useExternalStoreSharedOptions.d.ts.map +1 -1
  275. package/dist/react/runtimes/useLocalRuntime.d.ts +3 -5
  276. package/dist/react/runtimes/useLocalRuntime.d.ts.map +1 -1
  277. package/dist/react/runtimes/useLocalRuntime.js +9 -1
  278. package/dist/react/runtimes/useLocalRuntime.js.map +1 -1
  279. package/dist/react/runtimes/useRemoteThreadListRuntime.d.ts +0 -1
  280. package/dist/react/runtimes/useRemoteThreadListRuntime.d.ts.map +1 -1
  281. package/dist/react/runtimes/useStreamingTiming.d.ts +0 -1
  282. package/dist/react/runtimes/useStreamingTiming.d.ts.map +1 -1
  283. package/dist/react/types/MessagePartComponentTypes.d.ts +6 -3
  284. package/dist/react/types/MessagePartComponentTypes.d.ts.map +1 -1
  285. package/dist/react/types/scopes/dataRenderers.d.ts +1 -1
  286. package/dist/react/types/scopes/dataRenderers.d.ts.map +1 -1
  287. package/dist/react/types/scopes/interactables.d.ts +4 -2
  288. package/dist/react/types/scopes/interactables.d.ts.map +1 -1
  289. package/dist/react/types/scopes/tools.d.ts +5 -3
  290. package/dist/react/types/scopes/tools.d.ts.map +1 -1
  291. package/dist/react/types/store-augmentation.d.ts +1 -2
  292. package/dist/react/types/store-augmentation.d.ts.map +1 -1
  293. package/dist/react/utils/getMessageQuote.d.ts +0 -1
  294. package/dist/react/utils/getMessageQuote.d.ts.map +1 -1
  295. package/dist/react/utils/groupParts.d.ts +2 -2
  296. package/dist/react/utils/groupParts.d.ts.map +1 -1
  297. package/dist/react/utils/useJSONEqual.d.ts.map +1 -1
  298. package/dist/runtime/api/assistant-runtime.d.ts +0 -1
  299. package/dist/runtime/api/assistant-runtime.d.ts.map +1 -1
  300. package/dist/runtime/api/attachment-runtime.d.ts +0 -1
  301. package/dist/runtime/api/attachment-runtime.d.ts.map +1 -1
  302. package/dist/runtime/api/bindings.d.ts +0 -1
  303. package/dist/runtime/api/bindings.d.ts.map +1 -1
  304. package/dist/runtime/api/composer-runtime.d.ts +6 -4
  305. package/dist/runtime/api/composer-runtime.d.ts.map +1 -1
  306. package/dist/runtime/api/message-part-runtime.d.ts +0 -1
  307. package/dist/runtime/api/message-part-runtime.d.ts.map +1 -1
  308. package/dist/runtime/api/message-runtime.d.ts +6 -16
  309. package/dist/runtime/api/message-runtime.d.ts.map +1 -1
  310. package/dist/runtime/api/message-runtime.js +5 -5
  311. package/dist/runtime/api/message-runtime.js.map +1 -1
  312. package/dist/runtime/api/paths.d.ts.map +1 -1
  313. package/dist/runtime/api/thread-list-item-runtime.d.ts +0 -1
  314. package/dist/runtime/api/thread-list-item-runtime.d.ts.map +1 -1
  315. package/dist/runtime/api/thread-list-item-runtime.js +2 -1
  316. package/dist/runtime/api/thread-list-item-runtime.js.map +1 -1
  317. package/dist/runtime/api/thread-list-runtime.d.ts +0 -1
  318. package/dist/runtime/api/thread-list-runtime.d.ts.map +1 -1
  319. package/dist/runtime/api/thread-runtime.d.ts +3 -1
  320. package/dist/runtime/api/thread-runtime.d.ts.map +1 -1
  321. package/dist/runtime/base/base-assistant-runtime-core.d.ts +0 -1
  322. package/dist/runtime/base/base-assistant-runtime-core.d.ts.map +1 -1
  323. package/dist/runtime/base/base-composer-runtime-core.d.ts +4 -2
  324. package/dist/runtime/base/base-composer-runtime-core.d.ts.map +1 -1
  325. package/dist/runtime/base/base-composer-runtime-core.js +51 -10
  326. package/dist/runtime/base/base-composer-runtime-core.js.map +1 -1
  327. package/dist/runtime/base/base-thread-runtime-core.d.ts +2 -4
  328. package/dist/runtime/base/base-thread-runtime-core.d.ts.map +1 -1
  329. package/dist/runtime/base/base-thread-runtime-core.js +3 -2
  330. package/dist/runtime/base/base-thread-runtime-core.js.map +1 -1
  331. package/dist/runtime/base/default-edit-composer-runtime-core.d.ts +1 -5
  332. package/dist/runtime/base/default-edit-composer-runtime-core.d.ts.map +1 -1
  333. package/dist/runtime/base/default-edit-composer-runtime-core.js +4 -2
  334. package/dist/runtime/base/default-edit-composer-runtime-core.js.map +1 -1
  335. package/dist/runtime/base/default-thread-composer-runtime-core.d.ts +1 -0
  336. package/dist/runtime/base/default-thread-composer-runtime-core.d.ts.map +1 -1
  337. package/dist/runtime/base/default-thread-composer-runtime-core.js +2 -2
  338. package/dist/runtime/base/default-thread-composer-runtime-core.js.map +1 -1
  339. package/dist/runtime/branch/external-thread-branch-adapter.d.ts.map +1 -1
  340. package/dist/runtime/interfaces/assistant-runtime-core.d.ts +0 -1
  341. package/dist/runtime/interfaces/assistant-runtime-core.d.ts.map +1 -1
  342. package/dist/runtime/interfaces/composer-runtime-core.d.ts +2 -2
  343. package/dist/runtime/interfaces/composer-runtime-core.d.ts.map +1 -1
  344. package/dist/runtime/interfaces/thread-list-runtime-core.d.ts +0 -1
  345. package/dist/runtime/interfaces/thread-list-runtime-core.d.ts.map +1 -1
  346. package/dist/runtime/interfaces/thread-runtime-core.d.ts +2 -2
  347. package/dist/runtime/interfaces/thread-runtime-core.d.ts.map +1 -1
  348. package/dist/runtime/queue/external-thread-queue-adapter.d.ts +0 -1
  349. package/dist/runtime/queue/external-thread-queue-adapter.d.ts.map +1 -1
  350. package/dist/runtime/queue/message-queue.d.ts +6 -4
  351. package/dist/runtime/queue/message-queue.d.ts.map +1 -1
  352. package/dist/runtime/queue/message-queue.js +1 -1
  353. package/dist/runtime/utils/auto-status.d.ts +0 -1
  354. package/dist/runtime/utils/auto-status.d.ts.map +1 -1
  355. package/dist/runtime/utils/chat-model-adapter.d.ts +0 -1
  356. package/dist/runtime/utils/chat-model-adapter.d.ts.map +1 -1
  357. package/dist/runtime/utils/external-store-message.d.ts +0 -1
  358. package/dist/runtime/utils/external-store-message.d.ts.map +1 -1
  359. package/dist/runtime/utils/message-repository.d.ts +1 -5
  360. package/dist/runtime/utils/message-repository.d.ts.map +1 -1
  361. package/dist/runtime/utils/message-repository.js +3 -1
  362. package/dist/runtime/utils/message-repository.js.map +1 -1
  363. package/dist/runtime/utils/resolveToolApprovalResponse.d.ts +0 -1
  364. package/dist/runtime/utils/resolveToolApprovalResponse.d.ts.map +1 -1
  365. package/dist/runtime/utils/streaming-timing.d.ts +5 -3
  366. package/dist/runtime/utils/streaming-timing.d.ts.map +1 -1
  367. package/dist/runtime/utils/thread-message-like.d.ts +2 -2
  368. package/dist/runtime/utils/thread-message-like.d.ts.map +1 -1
  369. package/dist/runtime/utils/thread-message-like.js +4 -1
  370. package/dist/runtime/utils/thread-message-like.js.map +1 -1
  371. package/dist/runtimes/assistant-transport/utils.d.ts.map +1 -1
  372. package/dist/runtimes/external-store/external-store-adapter.d.ts +2 -2
  373. package/dist/runtimes/external-store/external-store-adapter.d.ts.map +1 -1
  374. package/dist/runtimes/external-store/external-store-runtime-core.d.ts +0 -1
  375. package/dist/runtimes/external-store/external-store-runtime-core.d.ts.map +1 -1
  376. package/dist/runtimes/external-store/external-store-shared-options.d.ts +0 -1
  377. package/dist/runtimes/external-store/external-store-shared-options.d.ts.map +1 -1
  378. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.d.ts +0 -1
  379. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.d.ts.map +1 -1
  380. package/dist/runtimes/external-store/external-store-thread-runtime-core.d.ts +2 -0
  381. package/dist/runtimes/external-store/external-store-thread-runtime-core.d.ts.map +1 -1
  382. package/dist/runtimes/external-store/external-store-thread-runtime-core.js +1 -1
  383. package/dist/runtimes/external-store/external-store-thread-runtime-core.js.map +1 -1
  384. package/dist/runtimes/external-store/thread-message-converter.d.ts +0 -1
  385. package/dist/runtimes/external-store/thread-message-converter.d.ts.map +1 -1
  386. package/dist/runtimes/local/local-runtime-core.d.ts +0 -1
  387. package/dist/runtimes/local/local-runtime-core.d.ts.map +1 -1
  388. package/dist/runtimes/local/local-runtime-options.d.ts +0 -1
  389. package/dist/runtimes/local/local-runtime-options.d.ts.map +1 -1
  390. package/dist/runtimes/local/local-thread-list-runtime-core.d.ts +0 -1
  391. package/dist/runtimes/local/local-thread-list-runtime-core.d.ts.map +1 -1
  392. package/dist/runtimes/local/local-thread-runtime-core.d.ts +5 -21
  393. package/dist/runtimes/local/local-thread-runtime-core.d.ts.map +1 -1
  394. package/dist/runtimes/local/local-thread-runtime-core.js +29 -17
  395. package/dist/runtimes/local/local-thread-runtime-core.js.map +1 -1
  396. package/dist/runtimes/local/should-continue.d.ts +0 -1
  397. package/dist/runtimes/local/should-continue.d.ts.map +1 -1
  398. package/dist/runtimes/local/should-continue.js +2 -2
  399. package/dist/runtimes/local/should-continue.js.map +1 -1
  400. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.d.ts +0 -1
  401. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.d.ts.map +1 -1
  402. package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts +1 -2
  403. package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts.map +1 -1
  404. package/dist/runtimes/remote-thread-list/adapter/in-memory.js +5 -3
  405. package/dist/runtimes/remote-thread-list/adapter/in-memory.js.map +1 -1
  406. package/dist/runtimes/remote-thread-list/empty-thread-core.d.ts +0 -1
  407. package/dist/runtimes/remote-thread-list/empty-thread-core.d.ts.map +1 -1
  408. package/dist/runtimes/remote-thread-list/optimistic-state.d.ts +10 -8
  409. package/dist/runtimes/remote-thread-list/optimistic-state.d.ts.map +1 -1
  410. package/dist/runtimes/remote-thread-list/optimistic-state.js +22 -9
  411. package/dist/runtimes/remote-thread-list/optimistic-state.js.map +1 -1
  412. package/dist/runtimes/remote-thread-list/remote-thread-state.d.ts +0 -1
  413. package/dist/runtimes/remote-thread-list/remote-thread-state.d.ts.map +1 -1
  414. package/dist/runtimes/remote-thread-list/types.d.ts +1 -2
  415. package/dist/runtimes/remote-thread-list/types.d.ts.map +1 -1
  416. package/dist/runtimes/tool-invocations/ToolInvocationTracker.d.ts +2 -2
  417. package/dist/runtimes/tool-invocations/ToolInvocationTracker.d.ts.map +1 -1
  418. package/dist/runtimes/tool-invocations/ToolInvocationTracker.js +1 -2
  419. package/dist/runtimes/tool-invocations/ToolInvocationTracker.js.map +1 -1
  420. package/dist/store/clients/chain-of-thought-client.d.ts +0 -1
  421. package/dist/store/clients/chain-of-thought-client.d.ts.map +1 -1
  422. package/dist/store/clients/model-context-client.d.ts +0 -1
  423. package/dist/store/clients/model-context-client.d.ts.map +1 -1
  424. package/dist/store/clients/no-op-composer-client.d.ts +0 -1
  425. package/dist/store/clients/no-op-composer-client.d.ts.map +1 -1
  426. package/dist/store/clients/runtime-adapter.d.ts +0 -1
  427. package/dist/store/clients/runtime-adapter.d.ts.map +1 -1
  428. package/dist/store/clients/suggestions.d.ts +0 -1
  429. package/dist/store/clients/suggestions.d.ts.map +1 -1
  430. package/dist/store/clients/thread-message-client.d.ts +0 -1
  431. package/dist/store/clients/thread-message-client.d.ts.map +1 -1
  432. package/dist/store/runtime-clients/attachment-runtime-client.d.ts +0 -1
  433. package/dist/store/runtime-clients/attachment-runtime-client.d.ts.map +1 -1
  434. package/dist/store/runtime-clients/composer-runtime-client.d.ts +0 -1
  435. package/dist/store/runtime-clients/composer-runtime-client.d.ts.map +1 -1
  436. package/dist/store/runtime-clients/liveRef.d.ts.map +1 -1
  437. package/dist/store/runtime-clients/message-part-runtime-client.d.ts +0 -1
  438. package/dist/store/runtime-clients/message-part-runtime-client.d.ts.map +1 -1
  439. package/dist/store/runtime-clients/message-runtime-client.d.ts +0 -1
  440. package/dist/store/runtime-clients/message-runtime-client.d.ts.map +1 -1
  441. package/dist/store/runtime-clients/thread-list-item-runtime-client.d.ts +0 -1
  442. package/dist/store/runtime-clients/thread-list-item-runtime-client.d.ts.map +1 -1
  443. package/dist/store/runtime-clients/thread-list-runtime-client.d.ts +0 -1
  444. package/dist/store/runtime-clients/thread-list-runtime-client.d.ts.map +1 -1
  445. package/dist/store/runtime-clients/thread-runtime-client.d.ts +0 -1
  446. package/dist/store/runtime-clients/thread-runtime-client.d.ts.map +1 -1
  447. package/dist/store/runtime-clients/useSubscribable.d.ts +0 -1
  448. package/dist/store/runtime-clients/useSubscribable.d.ts.map +1 -1
  449. package/dist/store/scope-registration.d.ts +1 -2
  450. package/dist/store/scope-registration.d.ts.map +1 -1
  451. package/dist/store/scopes/attachment.d.ts +0 -1
  452. package/dist/store/scopes/attachment.d.ts.map +1 -1
  453. package/dist/store/scopes/chain-of-thought.d.ts +0 -1
  454. package/dist/store/scopes/chain-of-thought.d.ts.map +1 -1
  455. package/dist/store/scopes/composer.d.ts +0 -1
  456. package/dist/store/scopes/composer.d.ts.map +1 -1
  457. package/dist/store/scopes/message.d.ts +6 -4
  458. package/dist/store/scopes/message.d.ts.map +1 -1
  459. package/dist/store/scopes/model-context.d.ts +0 -1
  460. package/dist/store/scopes/model-context.d.ts.map +1 -1
  461. package/dist/store/scopes/part.d.ts +0 -1
  462. package/dist/store/scopes/part.d.ts.map +1 -1
  463. package/dist/store/scopes/queue-item.d.ts.map +1 -1
  464. package/dist/store/scopes/suggestion.d.ts.map +1 -1
  465. package/dist/store/scopes/suggestions.d.ts +0 -1
  466. package/dist/store/scopes/suggestions.d.ts.map +1 -1
  467. package/dist/store/scopes/thread-list-item.d.ts +0 -1
  468. package/dist/store/scopes/thread-list-item.d.ts.map +1 -1
  469. package/dist/store/scopes/thread.d.ts +4 -3
  470. package/dist/store/scopes/thread.d.ts.map +1 -1
  471. package/dist/store/scopes/threads.d.ts +0 -1
  472. package/dist/store/scopes/threads.d.ts.map +1 -1
  473. package/dist/subscribable/subscribable.d.ts +1 -2
  474. package/dist/subscribable/subscribable.d.ts.map +1 -1
  475. package/dist/subscribable/subscribable.js +11 -3
  476. package/dist/subscribable/subscribable.js.map +1 -1
  477. package/dist/tests/remote-thread-list-test-helpers.d.ts +2 -2
  478. package/dist/tests/remote-thread-list-test-helpers.d.ts.map +1 -1
  479. package/dist/tests/remote-thread-list-test-helpers.js +5 -2
  480. package/dist/tests/remote-thread-list-test-helpers.js.map +1 -1
  481. package/dist/types/attachment.d.ts +3 -2
  482. package/dist/types/attachment.d.ts.map +1 -1
  483. package/dist/types/attachment.js +6 -0
  484. package/dist/types/attachment.js.map +1 -0
  485. package/dist/types/directive.d.ts +3 -2
  486. package/dist/types/directive.d.ts.map +1 -1
  487. package/dist/types/error.d.ts +15 -0
  488. package/dist/types/error.d.ts.map +1 -0
  489. package/dist/types/error.js +46 -0
  490. package/dist/types/error.js.map +1 -0
  491. package/dist/types/index.d.ts +2 -2
  492. package/dist/types/message.d.ts +71 -33
  493. package/dist/types/message.d.ts.map +1 -1
  494. package/dist/types/message.js.map +1 -1
  495. package/dist/types/quote.d.ts.map +1 -1
  496. package/dist/types/trigger.d.ts +0 -1
  497. package/dist/types/trigger.d.ts.map +1 -1
  498. package/dist/types/unsubscribe.d.ts.map +1 -1
  499. package/dist/utils/composite-context-provider.d.ts +1 -0
  500. package/dist/utils/composite-context-provider.d.ts.map +1 -1
  501. package/dist/utils/data-url.d.ts +9 -0
  502. package/dist/utils/data-url.d.ts.map +1 -0
  503. package/dist/utils/data-url.js +14 -0
  504. package/dist/utils/data-url.js.map +1 -0
  505. package/dist/utils/id.d.ts.map +1 -1
  506. package/dist/utils/json/is-json-equal.d.ts.map +1 -1
  507. package/dist/utils/json/is-json.d.ts +0 -1
  508. package/dist/utils/json/is-json.d.ts.map +1 -1
  509. package/dist/utils/json/is-json.js +1 -1
  510. package/dist/utils/json/is-json.js.map +1 -1
  511. package/dist/utils/json/stable-stringify-tool-args.d.ts +7 -0
  512. package/dist/utils/json/stable-stringify-tool-args.d.ts.map +1 -0
  513. package/dist/utils/json/stable-stringify-tool-args.js +32 -0
  514. package/dist/utils/json/stable-stringify-tool-args.js.map +1 -0
  515. package/dist/utils/notify-event-listeners.d.ts +6 -0
  516. package/dist/utils/notify-event-listeners.d.ts.map +1 -0
  517. package/dist/utils/notify-event-listeners.js +16 -0
  518. package/dist/utils/notify-event-listeners.js.map +1 -0
  519. package/dist/utils/text.d.ts +0 -1
  520. package/dist/utils/text.d.ts.map +1 -1
  521. package/package.json +14 -10
  522. package/src/adapters/attachment.test.ts +107 -0
  523. package/src/adapters/attachment.ts +20 -10
  524. package/src/adapters/index.ts +6 -1
  525. package/src/adapters/speech.test.ts +88 -0
  526. package/src/adapters/speech.ts +17 -2
  527. package/src/adapters/suggestion.test.ts +187 -0
  528. package/src/adapters/suggestion.ts +75 -1
  529. package/src/adapters/voice.test.ts +130 -0
  530. package/src/adapters/voice.ts +26 -6
  531. package/src/index.ts +15 -1
  532. package/src/internal.ts +21 -0
  533. package/src/model-context/frame/host.test.ts +100 -0
  534. package/src/model-context/frame/host.ts +10 -0
  535. package/src/model-context/frame/provider.test.ts +83 -0
  536. package/src/model-context/frame/provider.ts +1 -0
  537. package/src/model-context/tool.test.ts +110 -0
  538. package/src/model-context/tool.ts +31 -9
  539. package/src/react/adapters/LocalStorageThreadListAdapter.test.ts +304 -0
  540. package/src/react/adapters/LocalStorageThreadListAdapter.tsx +307 -60
  541. package/src/react/index.ts +2 -0
  542. package/src/react/model-context/define-mcp-toolkit.ts +39 -6
  543. package/src/react/model-context/define-toolkit.test.ts +107 -0
  544. package/src/react/primitive-hooks/useActionBarCopy.test.ts +79 -0
  545. package/src/react/primitive-hooks/useActionBarCopy.ts +4 -3
  546. package/src/react/primitive-hooks/useMessageError.test.ts +64 -0
  547. package/src/react/primitive-hooks/useMessageError.ts +19 -6
  548. package/src/react/primitives/chainOfThought/ChainOfThoughtParts.tsx +1 -3
  549. package/src/react/primitives/message/MessageParts.tsx +48 -35
  550. package/src/react/providers/ChainOfThoughtPartByIndexProvider.tsx +19 -2
  551. package/src/react/providers/PartByIndexProvider.tsx +16 -2
  552. package/src/react/runtimes/RemoteThreadListHookInstanceManager.test.tsx +18 -0
  553. package/src/react/runtimes/RemoteThreadListHookInstanceManager.tsx +4 -1
  554. package/src/react/runtimes/RemoteThreadListThreadListRuntimeCore.tsx +96 -26
  555. package/src/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.test.tsx +69 -0
  556. package/src/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.ts +1 -1
  557. package/src/react/runtimes/cloud/CloudFileAttachmentAdapter.test.ts +127 -0
  558. package/src/react/runtimes/cloud/CloudFileAttachmentAdapter.ts +15 -4
  559. package/src/react/runtimes/cloud/auiV0.ts +71 -2
  560. package/src/react/runtimes/external-message-converter.test.tsx +123 -0
  561. package/src/react/runtimes/external-message-converter.ts +36 -11
  562. package/src/react/runtimes/useLocalRuntime.test.tsx +56 -0
  563. package/src/react/runtimes/useLocalRuntime.ts +13 -1
  564. package/src/runtime/api/message-runtime.test.ts +81 -0
  565. package/src/runtime/api/message-runtime.ts +4 -6
  566. package/src/runtime/api/thread-list-item-runtime.ts +6 -1
  567. package/src/runtime/base/base-composer-runtime-core.ts +95 -30
  568. package/src/runtime/base/base-thread-runtime-core.ts +2 -1
  569. package/src/runtime/base/default-edit-composer-runtime-core.ts +4 -2
  570. package/src/runtime/base/default-thread-composer-runtime-core.ts +2 -2
  571. package/src/runtime/utils/message-repository.ts +8 -3
  572. package/src/runtime/utils/thread-message-like.ts +3 -0
  573. package/src/runtimes/local/local-thread-runtime-core.test.ts +276 -3
  574. package/src/runtimes/local/local-thread-runtime-core.ts +29 -25
  575. package/src/runtimes/local/should-continue.ts +5 -2
  576. package/src/runtimes/remote-thread-list/adapter/in-memory.test.ts +14 -0
  577. package/src/runtimes/remote-thread-list/adapter/in-memory.ts +13 -5
  578. package/src/runtimes/remote-thread-list/optimistic-state.test.ts +63 -0
  579. package/src/runtimes/remote-thread-list/optimistic-state.ts +49 -17
  580. package/src/runtimes/remote-thread-list/types.ts +1 -1
  581. package/src/runtimes/tool-invocations/EDGE_CASES.md +13 -19
  582. package/src/runtimes/tool-invocations/ToolInvocationTracker.test.ts +127 -6
  583. package/src/runtimes/tool-invocations/ToolInvocationTracker.ts +4 -2
  584. package/src/subscribable/subscribable.test.ts +58 -0
  585. package/src/subscribable/subscribable.ts +13 -3
  586. package/src/tests/MessageRepository.test.ts +26 -0
  587. package/src/tests/OptimisticState-list-race.test.ts +33 -0
  588. package/src/tests/RemoteThreadListThreadListRuntimeCore-errors.test.ts +42 -0
  589. package/src/tests/RemoteThreadListThreadListRuntimeCore-switchToThread-order.test.ts +223 -0
  590. package/src/tests/attachment-adapters.test.ts +14 -2
  591. package/src/tests/auiV0Encode.test.ts +134 -1
  592. package/src/tests/base-composer-runtime-core-addAttachment.test.ts +123 -5
  593. package/src/tests/base-composer-runtime-core-send.test.ts +573 -0
  594. package/src/tests/default-edit-composer-runtime-core.test.ts +43 -5
  595. package/src/tests/event-subscription-listener-errors.test.ts +205 -0
  596. package/src/tests/remote-thread-list-test-helpers.ts +14 -7
  597. package/src/tests/thread-message-like.test.ts +97 -0
  598. package/src/types/attachment.ts +6 -0
  599. package/src/types/error.test.ts +122 -0
  600. package/src/types/error.ts +74 -0
  601. package/src/types/index.ts +1 -0
  602. package/src/types/message.ts +12 -3
  603. package/src/utils/data-url.test.ts +50 -0
  604. package/src/utils/data-url.ts +9 -0
  605. package/src/utils/json/is-json-equal.test.ts +84 -0
  606. package/src/utils/json/is-json.test.ts +123 -0
  607. package/src/utils/json/is-json.ts +1 -1
  608. package/src/utils/json/stable-stringify-tool-args.test.ts +105 -0
  609. package/src/utils/json/stable-stringify-tool-args.ts +70 -0
  610. package/src/utils/notify-event-listeners.ts +30 -0
@@ -1 +1 @@
1
- {"version":3,"file":"interactableTool.d.ts","names":[],"sources":["../../../src/react/model-context/interactableTool.tsx"],"mappings":";;;;;;KAWY,oCAAA;;AAAZ;;;EAKE,KAAA,EAAO,MAAA;EACP,QAAA,GAAW,OAAA,EAAS,MAAA,KAAW,IAAA,EAAM,MAAA,KAAW,MAAA;EAAX;;;;;EAMrC,OAAA,EAAS,gCAAA,CAAiC,MAAA;EAC1C,EAAA,UARA;EAUA,SAAA;AAAA;AAAA,KAGU,+BAAA,iBACM,gCAAA;EAEhB,WAAA;EACA,WAAA,EAAa,OAAA;EACb,MAAA,GACE,KAAA,EAAO,oCAAA,CACL,+BAAA,CAAgC,OAAA,OAE/B,SAAA;AAAA;;;;;;;AAZI;AAGX;;;;;;;;;;;;;cAoCa,yBAAA,mBACK,gCAAA,EAEhB,MAAA,EAAQ,+BAAA,CAAgC,OAAA,MACvC,cAAA,CAAe,MAAA;EAA2B,OAAA;AAAA"}
1
+ {"version":3,"file":"interactableTool.d.ts","names":[],"sources":["../../../src/react/model-context/interactableTool.tsx"],"mappings":";;;;;KAWY,qCAAqC;;;;;EAK/C,OAAO;EACP,WAAW,SAAS,WAAW,MAAM,WAAW;;;;;;EAMhD,SAAS,iCAAiC;EAC1C;;EAEA;;KAGU,gCACV,gBAAgB;EAEhB;EACA,aAAa;EACb,SACE,OAAO,qCACL,gCAAgC,cAE/B;;;;;;;;;;;;;;;;;;;;;;cA2BM,4BACX,gBAAgB,kCAEhB,QAAQ,gCAAgC,aACvC,eAAe;EAA2B"}
@@ -1,6 +1,5 @@
1
1
  import { AssistantDataUIProps } from "./useAssistantDataUI.js";
2
2
  import { FC } from "react";
3
-
4
3
  //#region src/react/model-context/makeAssistantDataUI.d.ts
5
4
  /**
6
5
  * Component returned by {@link makeAssistantDataUI}.
@@ -9,7 +8,8 @@ import { FC } from "react";
9
8
  * parts.
10
9
  */
11
10
  type AssistantDataUI = FC & {
12
- /** Data renderer registered by this component. */unstable_data: AssistantDataUIProps;
11
+ /** Data renderer registered by this component. */
12
+ unstable_data: AssistantDataUIProps;
13
13
  };
14
14
  /**
15
15
  * Creates a React component that registers a named data-part renderer when
@@ -1 +1 @@
1
- {"version":3,"file":"makeAssistantDataUI.d.ts","names":[],"sources":["../../../src/react/model-context/makeAssistantDataUI.ts"],"mappings":";;;;;;AAYA;;;;KAAY,eAAA,GAAkB,EAAA;EAE5B,kDAAA,aAAA,EAAe,oBAAoB;AAAA;AAAA;AASrC;;;;;AATqC,cASxB,mBAAA,YACX,MAAA,EAAQ,oBAAA,CAAqB,CAAA,MAAE,eAAA"}
1
+ {"version":3,"file":"makeAssistantDataUI.d.ts","names":[],"sources":["../../../src/react/model-context/makeAssistantDataUI.ts"],"mappings":";;;;;;;;;KAYY,kBAAkB;;EAE5B,eAAe;;;;;;;;cASJ,sBAAuB,SAClC,QAAQ,qBAAqB,OAAE"}
@@ -1,6 +1,5 @@
1
1
  import { AssistantToolProps } from "./useAssistantTool.js";
2
2
  import { FC } from "react";
3
-
4
3
  //#region src/react/model-context/makeAssistantTool.d.ts
5
4
  /**
6
5
  * Component returned by {@link makeAssistantTool}.
@@ -13,7 +12,8 @@ import { FC } from "react";
13
12
  * https://assistant-ui.com/docs/migrations/toolkit-tools.
14
13
  */
15
14
  type AssistantTool = FC & {
16
- /** Tool definition registered by this component. */unstable_tool: AssistantToolProps<any, any>;
15
+ /** Tool definition registered by this component. */
16
+ unstable_tool: AssistantToolProps<any, any>;
17
17
  };
18
18
  /**
19
19
  * Creates a React component that registers an assistant tool when rendered.
@@ -1 +1 @@
1
- {"version":3,"file":"makeAssistantTool.d.ts","names":[],"sources":["../../../src/react/model-context/makeAssistantTool.ts"],"mappings":";;;;;;AAaA;;;;;;;;KAAY,aAAA,GAAgB,EAAA;EAiBf,oDAfX,aAAA,EAAe,kBAAkB;AAAA;;;;;;;;;;;;;cAetB,iBAAA,iBACG,MAAA,4BAGd,IAAA,EAAM,kBAAA,CAAmB,KAAA,EAAO,OAAA,MAAQ,aAAA"}
1
+ {"version":3,"file":"makeAssistantTool.d.ts","names":[],"sources":["../../../src/react/model-context/makeAssistantTool.ts"],"mappings":";;;;;;;;;;;;;KAaY,gBAAgB;;EAE1B,eAAe;;;;;;;;;;;;;;cAeJ,oBACX,cAAc,yBACd,SAEA,MAAM,mBAAmB,OAAO,aAAQ"}
@@ -1,6 +1,5 @@
1
1
  import { AssistantToolUIProps } from "./useAssistantToolUI.js";
2
2
  import { FC } from "react";
3
-
4
3
  //#region src/react/model-context/makeAssistantToolUI.d.ts
5
4
  /**
6
5
  * Component returned by {@link makeAssistantToolUI}.
@@ -13,7 +12,8 @@ import { FC } from "react";
13
12
  * See https://assistant-ui.com/docs/migrations/toolkit-tools.
14
13
  */
15
14
  type AssistantToolUI = FC & {
16
- /** Tool renderer registered by this component. */unstable_tool: AssistantToolUIProps<any, any>;
15
+ /** Tool renderer registered by this component. */
16
+ unstable_tool: AssistantToolUIProps<any, any>;
17
17
  };
18
18
  /**
19
19
  * Creates a React component that registers a tool-call renderer when rendered.
@@ -1 +1 @@
1
- {"version":3,"file":"makeAssistantToolUI.d.ts","names":[],"sources":["../../../src/react/model-context/makeAssistantToolUI.ts"],"mappings":";;;;;;AAgBA;;;;;;;;KAAY,eAAA,GAAkB,EAAA;EAiBjB,kDAfX,aAAA,EAAe,oBAAoB;AAAA;;;;;;;;;;;;;cAexB,mBAAA,mBACX,IAAA,EAAM,oBAAA,CAAqB,KAAA,EAAO,OAAA,MAAQ,eAAA"}
1
+ {"version":3,"file":"makeAssistantToolUI.d.ts","names":[],"sources":["../../../src/react/model-context/makeAssistantToolUI.ts"],"mappings":";;;;;;;;;;;;;KAgBY,kBAAkB;;EAE5B,eAAe;;;;;;;;;;;;;;cAeJ,sBAAuB,OAAO,SACzC,MAAM,qBAAqB,OAAO,aAAQ"}
@@ -1,5 +1,4 @@
1
1
  import { Tool } from "assistant-stream";
2
-
3
2
  //#region src/react/model-context/provider-tool.d.ts
4
3
  type ProviderToolDefinition<TArgs extends Record<string, unknown>> = Extract<Tool<TArgs, unknown>, {
5
4
  type: "provider";
@@ -1 +1 @@
1
- {"version":3,"file":"provider-tool.d.ts","names":[],"sources":["../../../src/react/model-context/provider-tool.ts"],"mappings":";;;KAEK,sBAAA,eAAqC,MAAA,qBAA2B,OAAA,CACnE,IAAA,CAAK,KAAA;EACH,IAAA;AAAA;AAAA,KAGQ,kBAAA,eACI,MAAA,oBAA0B,MAAA,qBACtC,IAAA,CACF,sBAAA,CAAuB,KAAA;;;;;iBAYT,YAAA,CAAa,OAA2B,EAAlB,kBAAkB"}
1
+ {"version":3,"file":"provider-tool.d.ts","names":[],"sources":["../../../src/react/model-context/provider-tool.ts"],"mappings":";;KAEK,uBAAuB,cAAc,2BAA2B,QACnE,KAAK;EACH;;KAGQ,mBACV,cAAc,0BAA0B,2BACtC,KACF,uBAAuB;;;;;iBAYT,aAAa,SAAS"}
@@ -1 +1 @@
1
- {"version":3,"file":"stub-tool.d.ts","names":[],"sources":["../../../src/react/model-context/stub-tool.ts"],"mappings":";;AAOA;;;;AAAwB;;iBAAR,QAAA"}
1
+ {"version":3,"file":"stub-tool.d.ts","names":[],"sources":["../../../src/react/model-context/stub-tool.ts"],"mappings":";;;;;;;;iBAOgB"}
@@ -1,7 +1,6 @@
1
1
  import { ToolCallMessagePartComponent, ToolCallMessagePartProps } from "../types/MessagePartComponentTypes.js";
2
2
  import { Tool, ToolCallReader, ToolDeclaration, ToolModelOutputFunction } from "assistant-stream";
3
3
  import { ReactNode } from "react";
4
-
5
4
  //#region src/react/model-context/toolbox.d.ts
6
5
  /**
7
6
  * Resolves whether a tool's UI should be presented standalone (outside the
@@ -84,13 +83,13 @@ type Toolkit = Record<string, ToolDefinition<any, any>>;
84
83
  * directive → frontend; otherwise backend) and writes it back — so declaring it
85
84
  * here is a type error.
86
85
  */
87
- type OverrideOptionalField<T, TKey extends keyof T, TValue> = undefined extends T[TKey] ? Exclude<T[TKey], undefined> extends never ? { [K in TKey]?: undefined } : { [K in TKey]?: TValue | undefined } : { [K in TKey]: TValue };
86
+ type OverrideOptionalField<T, TKey extends keyof T, TValue> = undefined extends T[TKey] ? Exclude<T[TKey], undefined> extends never ? { [K in TKey]?: undefined; } : { [K in TKey]?: TValue | undefined; } : { [K in TKey]: TValue; };
88
87
  type OverrideToolDeclarationCallbacks<T extends {
89
88
  streamCall?: unknown;
90
89
  }, TArgs extends Record<string, unknown>, TResult> = Omit<T, "type" | "execute" | "toModelOutput" | "experimental_onSchemaValidationError" | "streamCall"> & {
91
90
  type?: never;
92
91
  } & ("execute" extends keyof T ? OverrideOptionalField<T, "execute", ToolExecute<NoInfer<TArgs>, TResult>> : {}) & ("toModelOutput" extends keyof T ? OverrideOptionalField<T, "toModelOutput", ToolModelOutputFunction<NoInfer<TArgs>, NoInfer<TResult>>> : {}) & ("experimental_onSchemaValidationError" extends keyof T ? OverrideOptionalField<T, "experimental_onSchemaValidationError", (args: unknown, context: ToolExecuteContext) => NoInfer<TResult> | Promise<NoInfer<TResult>>> : {}) & OverrideOptionalField<T, "streamCall", ToolStreamCall<TArgs, unknown>>;
93
- type ToolkitDefinitionInput<TArgs extends Record<string, unknown>, TResult> = WithRender<ToolDeclaration<TArgs, TResult> extends infer T ? T extends {
92
+ type ToolkitDefinitionInput<TArgs extends Record<string, unknown>, TResult> = WithRender<ToolDeclaration<TArgs, TResult> extends (infer T) ? T extends {
94
93
  streamCall?: unknown;
95
94
  } ? OverrideToolDeclarationCallbacks<T, TArgs, TResult> : never : never, TArgs, TResult>;
96
95
  /**
@@ -111,10 +110,11 @@ type ToolkitDefinitionEntryWithParameters<TArgs extends Record<string, unknown>
111
110
  * {@link defineToolkit}. Backend entries may carry their server `execute` here;
112
111
  * the canonical {@link Toolkit} keeps those fields `undefined`.
113
112
  */
114
- type ToolkitDefinition<TArgsByName extends { [K in keyof TArgsByName]: Record<string, unknown> } = Record<string, any>, TResultByName extends { [K in keyof TArgsByName]: unknown } = { [K in keyof TArgsByName]: any }> = { [K in keyof TArgsByName]: ToolkitDefinitionEntry<TArgsByName[K], TResultByName[K]> };
113
+ type ToolkitDefinition<TArgsByName extends { [K in keyof TArgsByName]: Record<string, unknown>; } = Record<string, any>, TResultByName extends { [K in keyof TArgsByName]: unknown; } = { [K in keyof TArgsByName]: any; }> = { [K in keyof TArgsByName]: ToolkitDefinitionEntry<TArgsByName[K], TResultByName[K]>; };
115
114
  /** Configuration for the {@link Tools} resource. */
116
115
  type ToolsConfig = {
117
- /** Tools to register with model context and, when provided, message renderers. */toolkit: Toolkit;
116
+ /** Tools to register with model context and, when provided, message renderers. */
117
+ toolkit: Toolkit;
118
118
  };
119
119
  //#endregion
120
120
  export { ToolCallText, ToolDefinition, Toolkit, ToolkitDefinition, ToolkitDefinitionEntry, ToolkitDefinitionEntryWithParameters, ToolsConfig, isStandaloneToolDisplay, makeToolCallTextComponent };
@@ -1 +1 @@
1
- {"version":3,"file":"toolbox.d.ts","names":[],"sources":["../../../src/react/model-context/toolbox.ts"],"mappings":";;;;;;;AAqBA;;;;;;;cAAa,uBAAA,GACX,IAAA,EAAM,IAAI,CAAC,IAAA;AAAA,KAMR,UAAA,kBAA4B,MAAA,8BAAoC,CAAA;EACnE,IAAA;AAAA,IAEE,CAAA,IACG,CAAA;EAAY,IAAA;AAAA;EAEH,MAAA,EAAQ,4BAAA,CAA6B,KAAA,EAAO,OAAA;AAAA;EAE5C,MAAA,GAAS,4BAAA,CAA6B,KAAA,EAAO,OAAA;EAC7C,UAAA,EAAY,YAAA,CAAa,KAAA,EAAO,OAAA;AAAA;EAEpC,MAAA,EAAQ,4BAAA,CAA6B,KAAA,EAAO,OAAA;AAAA,KACpD,CAAA;EACE,MAAA,GAAS,4BAAA,CAA6B,KAAA,EAAO,OAAA;EAC7C,UAAA,GAAa,YAAA,CAAa,KAAA,EAAO,OAAA;AAAA;AAAA,KAGlC,cAAA,eAA6B,MAAA,qBAChC,eAAA,CAAgB,KAAA;AAAA,KAGb,kBAAA,GAAqB,UAAA,CACxB,WAAA,CAAY,eAAA;AAAA,KAGT,WAAA,eAA0B,MAAA,+BAC7B,IAAA,EAAM,KAAA,EACN,OAAA,EAAS,kBAAA,KACN,OAAA,GAAU,OAAA,CAAQ,OAAA;AAAA,KAElB,cAAA,eAA6B,MAAA,+BAChC,MAAA,EAAQ,cAAA,CAAe,KAAA,EAAO,OAAA,GAC9B,OAAA,EAAS,kBAAA;AAAA,KAGN,mBAAA,eAAkC,MAAA,qBACnC,SAAA,KACE,OAAA;EAAW,IAAA,EAAM,KAAA;AAAA,MAAY,SAAA;AAAA,KAE9B,oBAAA,eAAmC,MAAA,8BACpC,SAAA,KACE,OAAA;EAAW,IAAA,EAAM,KAAA;EAAO,MAAA,EAAQ,OAAA;AAAA,MAA0B,SAAA;AAAA,KAEpD,YAAA,eAA2B,MAAA;EAEjC,OAAA,EAAS,mBAAA,CAAoB,KAAA;EAC7B,QAAA,GAAW,oBAAA,CAAqB,KAAA,EAAO,OAAA;AAAA;EAGvC,OAAA,GAAU,mBAAA,CAAoB,KAAA;EAC9B,QAAA,EAAU,oBAAA,CAAqB,KAAA,EAAO,OAAA;AAAA;AAAA,cAqB/B,yBAAA,iBACG,MAAA,4BAGd,IAAA,EAAM,YAAA,CAAa,KAAA,EAAO,OAAA,QACvB,IAAA,EAAM,wBAAA,CAAyB,KAAA,EAAO,OAAA,MAAa,SAAA;;;;;;;;;KAc5C,cAAA,eACI,MAAA,oBAA0B,MAAA,wCAEtC,UAAA,CAAW,IAAA,CAAK,KAAA,EAAO,OAAA,GAAU,KAAA,EAAO,OAAA;;;;;;;;;;;;;;;;;;;KAoBhC,OAAA,GAAU,MAAM,SAAS,cAAA;;;AAnGS;AAAA;;;;;;KA8GzC,qBAAA,uBAEgB,CAAA,8BAEC,CAAA,CAAE,IAAA,IAGpB,OAAA,CAAQ,CAAA,CAAE,IAAA,sCACA,IAAA,0BACA,IAAA,IAAQ,MAAA,yBACV,IAAA,GAAO,MAAA;AAAA,KAEd,gCAAA;EACS,UAAA;AAAA,iBACE,MAAA,8BAEZ,IAAA,CACF,CAAA;EAOA,IAAA;AAAA,6BAC2B,CAAA,GACvB,qBAAA,CAAsB,CAAA,aAAc,WAAA,CAAY,OAAA,CAAQ,KAAA,GAAQ,OAAA,0CAErC,CAAA,GAC3B,qBAAA,CACE,CAAA,mBAEA,uBAAA,CAAwB,OAAA,CAAQ,KAAA,GAAQ,OAAA,CAAQ,OAAA,kEAGA,CAAA,GAClD,qBAAA,CACE,CAAA,2CAGE,IAAA,WACA,OAAA,EAAS,kBAAA,KACN,OAAA,CAAQ,OAAA,IAAW,OAAA,CAAQ,OAAA,CAAQ,OAAA,YAG9C,qBAAA,CAAsB,CAAA,gBAAiB,cAAA,CAAe,KAAA;AAAA,KAInD,sBAAA,eACW,MAAA,8BAEZ,UAAA,CACF,eAAA,CAAgB,KAAA,EAAO,OAAA,oBACnB,CAAA;EAAY,UAAA;AAAA,IACV,gCAAA,CAAiC,CAAA,EAAG,KAAA,EAAO,OAAA,mBAGjD,KAAA,EACA,OAAA;;;;;;AAjK2B;AAAA;;;KA6KjB,sBAAA,eACI,MAAA,oBAA0B,MAAA,wCAEtC,sBAAA,CAAuB,KAAA,EAAO,OAAA,IAAW,cAAA;AAAA,KAEjC,oCAAA,eACI,MAAA,oBAA0B,MAAA,wCAEtC,sBAAA,CAAuB,KAAA,EAAO,OAAA;EAChC,UAAA,EAAY,WAAA,CAAY,cAAA,CAAe,KAAA;AAAA;;;;;;KAQ7B,iBAAA,mCAEI,WAAA,GAAc,MAAA,sBACxB,MAAA,mDACgC,WAAA,6BACtB,WAAA,0BAGF,WAAA,GAAc,sBAAA,CACxB,WAAA,CAAY,CAAA,GACZ,aAAA,CAAc,CAAA;;KAKN,WAAA;EArMP,kFAuMH,OAAA,EAAS,OAAO;AAAA"}
1
+ {"version":3,"file":"toolbox.d.ts","names":[],"sources":["../../../src/react/model-context/toolbox.ts"],"mappings":";;;;;;;;;;;;;cAqBa,0BACX,MAAM,KAAK;KAMR,WAAW,GAAG,cAAc,yBAAyB,WAAW;EACnE;IAEE,KACG;EAAY;;EAEH,QAAQ,6BAA6B,OAAO;;EAE5C,SAAS,6BAA6B,OAAO;EAC7C,YAAY,aAAa,OAAO;;EAEpC,QAAQ,6BAA6B,OAAO;KACpD;EACE,SAAS,6BAA6B,OAAO;EAC7C,aAAa,aAAa,OAAO;;KAGlC,eAAe,cAAc,2BAChC,gBAAgB;KAGb,qBAAqB,WACxB,YAAY;KAGT,YAAY,cAAc,yBAAyB,YACtD,MAAM,OACN,SAAS,uBACN,UAAU,QAAQ;KAElB,eAAe,cAAc,yBAAyB,YACzD,QAAQ,eAAe,OAAO,UAC9B,SAAS;KAGN,oBAAoB,cAAc,2BACnC,cACE;EAAW,MAAM;MAAY;KAE9B,qBAAqB,cAAc,yBAAyB,WAC7D,cACE;EAAW,MAAM;EAAO,QAAQ;MAA0B;KAEpD,aAAa,cAAc,yBAAyB;EAE1D,SAAS,oBAAoB;EAC7B,WAAW,qBAAqB,OAAO;;EAGvC,UAAU,oBAAoB;EAC9B,UAAU,qBAAqB,OAAO;;cAqB/B,4BACX,cAAc,yBACd,SAEA,MAAM,aAAa,OAAO,eACvB,MAAM,yBAAyB,OAAO,aAAa;;;;;;;;;KAc5C,eACV,cAAc,0BAA0B,yBACxC,qBACE,WAAW,KAAK,OAAO,UAAU,OAAO;;;;;;;;;;;;;;;;;;;KAoBhC,UAAU,eAAe;;;;;;;;;;KAWhC,sBACH,GACA,mBAAmB,GACnB,4BACoB,EAAE,QAGpB,QAAQ,EAAE,qCACL,KAAK,0BACL,KAAK,QAAQ,2BACf,KAAK,OAAO;KAEd,iCACH;EAAY;GACZ,cAAc,yBACd,WACE,KACF;EAOA;6BAC2B,IACvB,sBAAsB,cAAc,YAAY,QAAQ,QAAQ,iDAErC,IAC3B,sBACE,oBAEA,wBAAwB,QAAQ,QAAQ,QAAQ,yEAGA,IAClD,sBACE,4CAGE,eACA,SAAS,uBACN,QAAQ,WAAW,QAAQ,QAAQ,mBAG9C,sBAAsB,iBAAiB,eAAe;KAInD,uBACH,cAAc,yBACd,WACE,WACF,gBAAgB,OAAO,wBAAuB,KAC1C;EAAY;IACV,iCAAiC,GAAG,OAAO,0BAGjD,OACA;;;;;;;;;;KAYU,uBACV,cAAc,0BAA0B,yBACxC,qBACE,uBAAuB,OAAO,WAAW;KAEjC,qCACV,cAAc,0BAA0B,yBACxC,qBACE,uBAAuB,OAAO;EAChC,YAAY,YAAY,eAAe;;;;;;;KAQ7B,kBACV,uBACG,WAAW,cAAc,6BACxB,qBACJ,yBAAyB,WAAW,8BACjC,WAAW,2BAGb,WAAW,cAAc,uBACxB,YAAY,IACZ,cAAc;;KAKN;;EAEV,SAAS"}
@@ -1,4 +1,5 @@
1
1
  import { AssistantContextConfig } from "../../model-context/types.js";
2
+ import "../../index.js";
2
3
  //#region src/react/model-context/useAssistantContext.d.ts
3
4
  declare const useAssistantContext: (config: AssistantContextConfig) => void;
4
5
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"useAssistantContext.d.ts","names":[],"sources":["../../../src/react/model-context/useAssistantContext.ts"],"mappings":";;cAMa,mBAAA,GAAuB,MAA8B,EAAtB,sBAAsB"}
1
+ {"version":3,"file":"useAssistantContext.d.ts","names":[],"sources":["../../../src/react/model-context/useAssistantContext.ts"],"mappings":";;;cAMa,sBAAuB,QAAQ"}
@@ -1,9 +1,10 @@
1
1
  import { DataMessagePartComponent } from "../types/MessagePartComponentTypes.js";
2
-
3
2
  //#region src/react/model-context/useAssistantDataUI.d.ts
4
3
  /** Props used to register a renderer for `data` message parts. */
5
4
  type AssistantDataUIProps<T = any> = {
6
- /** Data part name this renderer handles. */name: string; /** Component rendered for matching data message parts. */
5
+ /** Data part name this renderer handles. */
6
+ name: string;
7
+ /** Component rendered for matching data message parts. */
7
8
  render: DataMessagePartComponent<T>;
8
9
  };
9
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useAssistantDataUI.d.ts","names":[],"sources":["../../../src/react/model-context/useAssistantDataUI.ts"],"mappings":";;;;KAKY,oBAAA;EAAA,4CAEV,IAAA,UAF8B;EAI9B,MAAA,EAAQ,wBAAwB,CAAC,CAAA;AAAA;;;;;;AAAC;cASvB,kBAAA,GAAsB,MAAmC,EAA3B,oBAAoB"}
1
+ {"version":3,"file":"useAssistantDataUI.d.ts","names":[],"sources":["../../../src/react/model-context/useAssistantDataUI.ts"],"mappings":";;;KAKY,qBAAqB;;EAE/B;;EAEA,QAAQ,yBAAyB;;;;;;;;cAStB,qBAAsB,QAAQ"}
@@ -1,4 +1,5 @@
1
1
  import { AssistantInstructionsConfig } from "../../model-context/types.js";
2
+ import "../../index.js";
2
3
  //#region src/react/model-context/useAssistantInstructions.d.ts
3
4
  declare const useAssistantInstructions: (config: string | AssistantInstructionsConfig) => void;
4
5
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"useAssistantInstructions.d.ts","names":[],"sources":["../../../src/react/model-context/useAssistantInstructions.ts"],"mappings":";;cAaa,wBAAA,GACX,MAA4C,WAA3B,2BAA2B"}
1
+ {"version":3,"file":"useAssistantInstructions.d.ts","names":[],"sources":["../../../src/react/model-context/useAssistantInstructions.ts"],"mappings":";;;cAaa,2BACX,iBAAiB"}
@@ -1,7 +1,7 @@
1
1
  import { AssistantToolProps as AssistantToolProps$1 } from "../../model-context/types.js";
2
+ import "../../index.js";
2
3
  import { ToolCallMessagePartComponent } from "../types/MessagePartComponentTypes.js";
3
4
  import { ToolCallText } from "./toolbox.js";
4
-
5
5
  //#region src/react/model-context/useAssistantTool.d.ts
6
6
  /**
7
7
  * Props used to register a tool from React.
@@ -11,7 +11,9 @@ import { ToolCallText } from "./toolbox.js";
11
11
  * https://assistant-ui.com/docs/migrations/toolkit-tools.
12
12
  */
13
13
  type AssistantToolProps<TArgs extends Record<string, unknown>, TResult> = AssistantToolProps$1<TArgs, TResult> & {
14
- /** Component used to render calls to this tool in assistant messages. */render?: ToolCallMessagePartComponent<TArgs, TResult> | undefined; /** Lightweight text rendered while a tool call is running or complete. */
14
+ /** Component used to render calls to this tool in assistant messages. */
15
+ render?: ToolCallMessagePartComponent<TArgs, TResult> | undefined;
16
+ /** Lightweight text rendered while a tool call is running or complete. */
15
17
  renderText?: ToolCallText<TArgs, TResult> | undefined;
16
18
  };
17
19
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useAssistantTool.d.ts","names":[],"sources":["../../../src/react/model-context/useAssistantTool.ts"],"mappings":";;;;;;;;AAiBA;;;;KAAY,kBAAA,eACI,MAAA,8BAEZ,oBAAA,CAAuB,KAAA,EAAO,OAAA;EAAA,yEAEhC,MAAA,GAAS,4BAAA,CAA6B,KAAA,EAAO,OAAA,eAAP;EAEtC,UAAA,GAAa,YAAA,CAAa,KAAA,EAAO,OAAA;AAAA;;;;;;;;;;;;;;;;;;;;;AAAO;AAqC1C;;;;;;;;;;;;;cAAa,gBAAA,iBACG,MAAA,4BAGd,IAAA,EAAM,kBAAA,CAAmB,KAAA,EAAO,OAAA"}
1
+ {"version":3,"file":"useAssistantTool.d.ts","names":[],"sources":["../../../src/react/model-context/useAssistantTool.ts"],"mappings":";;;;;;;;;;;;KAiBY,mBACV,cAAc,yBACd,WACE,qBAAuB,OAAO;;EAEhC,SAAS,6BAA6B,OAAO;;EAE7C,aAAa,aAAa,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAqCtB,mBACX,cAAc,yBACd,SAEA,MAAM,mBAAmB,OAAO"}
@@ -1,5 +1,4 @@
1
1
  import { ToolCallMessagePartComponent } from "../types/MessagePartComponentTypes.js";
2
-
3
2
  //#region src/react/model-context/useAssistantToolUI.d.ts
4
3
  /**
5
4
  * Props used to register a renderer for tool-call message parts.
@@ -9,7 +8,9 @@ import { ToolCallMessagePartComponent } from "../types/MessagePartComponentTypes
9
8
  * See https://assistant-ui.com/docs/migrations/toolkit-tools.
10
9
  */
11
10
  type AssistantToolUIProps<TArgs, TResult> = {
12
- /** Name of the tool whose calls should use this renderer. */toolName: string; /** Component rendered for matching tool-call message parts. */
11
+ /** Name of the tool whose calls should use this renderer. */
12
+ toolName: string;
13
+ /** Component rendered for matching tool-call message parts. */
13
14
  render: ToolCallMessagePartComponent<TArgs, TResult>;
14
15
  /**
15
16
  * How the UI is presented relative to the chain-of-thought trace. Set
@@ -1 +1 @@
1
- {"version":3,"file":"useAssistantToolUI.d.ts","names":[],"sources":["../../../src/react/model-context/useAssistantToolUI.ts"],"mappings":";;;;;AAWA;;;;;KAAY,oBAAA;EAI0B,6DAFpC,QAAA,UAF+B;EAI/B,MAAA,EAAQ,4BAAA,CAA6B,KAAA,EAAO,OAAA;EAF5C;;;;;EAQA,OAAA;AAAA;AAAO;AAeT;;;;AAC6C;;;;;;;AAhBpC,cAeI,kBAAA,GACX,IAA2C,EAArC,oBAAoB"}
1
+ {"version":3,"file":"useAssistantToolUI.d.ts","names":[],"sources":["../../../src/react/model-context/useAssistantToolUI.ts"],"mappings":";;;;;;;;;KAWY,qBAAqB,OAAO;;EAEtC;;EAEA,QAAQ,6BAA6B,OAAO;;;;;;EAM5C;;;;;;;;;;;;;;cAeW,qBACX,MAAM"}
@@ -1,5 +1,4 @@
1
1
  import { Tool } from "assistant-stream";
2
-
3
2
  //#region src/react/model-context/useAuiToolOverrides.d.ts
4
3
  type AuiToolOverride<TArgs extends Record<string, unknown> = Record<string, unknown>, TResult = unknown> = Partial<Tool<TArgs, TResult>>;
5
4
  type AuiToolOverrides = Record<string, AuiToolOverride<any, any>>;
@@ -1 +1 @@
1
- {"version":3,"file":"useAuiToolOverrides.d.ts","names":[],"sources":["../../../src/react/model-context/useAuiToolOverrides.ts"],"mappings":";;;KAIK,eAAA,eACW,MAAA,oBAA0B,MAAA,wCAEtC,OAAA,CAAQ,IAAA,CAAK,KAAA,EAAO,OAAA;AAAA,KAEnB,gBAAA,GAAmB,MAAM,SAAS,eAAA;AAPM;;;;;;;;;;;;;AAAA,iBAsB7B,mBAAA,CAAoB,SAA2B,EAAhB,gBAAgB"}
1
+ {"version":3,"file":"useAuiToolOverrides.d.ts","names":[],"sources":["../../../src/react/model-context/useAuiToolOverrides.ts"],"mappings":";;KAIK,gBACH,cAAc,0BAA0B,yBACxC,qBACE,QAAQ,KAAK,OAAO;KAEnB,mBAAmB,eAAe;;;;;;;;;;;;;;iBAevB,oBAAoB,WAAW"}
@@ -1,6 +1,5 @@
1
1
  import { ToolCallMessagePartProps } from "../types/MessagePartComponentTypes.js";
2
2
  import { FC } from "react";
3
-
4
3
  //#region src/react/model-context/useInlineRender.d.ts
5
4
  declare const useInlineRender: <TArgs, TResult>(toolUI: FC<ToolCallMessagePartProps<TArgs, TResult>>) => FC<ToolCallMessagePartProps<TArgs, TResult>>;
6
5
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"useInlineRender.d.ts","names":[],"sources":["../../../src/react/model-context/useInlineRender.ts"],"mappings":";;;;cAIa,eAAA,mBACX,MAAA,EAAQ,EAAA,CAAG,wBAAA,CAAyB,KAAA,EAAO,OAAA,OAC1C,EAAA,CAAG,wBAAA,CAAyB,KAAA,EAAO,OAAA"}
1
+ {"version":3,"file":"useInlineRender.d.ts","names":[],"sources":["../../../src/react/model-context/useInlineRender.ts"],"mappings":";;;cAIa,kBAAmB,OAAO,SACrC,QAAQ,GAAG,yBAAyB,OAAO,cAC1C,GAAG,yBAAyB,OAAO"}
@@ -1,6 +1,5 @@
1
1
  import { ToolCallMessagePartComponent } from "../types/MessagePartComponentTypes.js";
2
2
  import { Unstable_InteractableStateSchema } from "../types/scopes/interactables.js";
3
-
4
3
  //#region src/react/model-context/useInteractable.d.ts
5
4
  /**
6
5
  * The state type described by an interactable's `stateSchema`. Resolves the
@@ -20,8 +19,11 @@ type Unstable_InferInteractableState<TSchema> = TSchema extends {
20
19
  * the live instance back to it.
21
20
  */
22
21
  type Unstable_InteractableVersionInfo<TState> = {
23
- /** The interactable's state as it was at this message. */state: TState; /** Whether this message holds the instance's most recent tool-driven version. */
24
- isLatest: boolean; /** Sets the live state back to this version. */
22
+ /** The interactable's state as it was at this message. */
23
+ state: TState;
24
+ /** Whether this message holds the instance's most recent tool-driven version. */
25
+ isLatest: boolean;
26
+ /** Sets the live state back to this version. */
25
27
  restore: () => void;
26
28
  };
27
29
  /**
@@ -31,7 +33,8 @@ type Unstable_InteractableVersionInfo<TState> = {
31
33
  type Unstable_InteractableConfig<TSchema extends Unstable_InteractableStateSchema> = {
32
34
  description: string;
33
35
  stateSchema: TSchema;
34
- initialState: Unstable_InferInteractableState<TSchema>; /** Unique instance ID; required to address this instance when multiple interactables share a name. Auto-generated if omitted. */
36
+ initialState: Unstable_InferInteractableState<TSchema>;
37
+ /** Unique instance ID; required to address this instance when multiple interactables share a name. Auto-generated if omitted. */
35
38
  id?: string | undefined;
36
39
  /**
37
40
  * Component installed as the tool UI for this interactable's `update_{name}`
@@ -1 +1 @@
1
- {"version":3,"file":"useInteractable.d.ts","names":[],"sources":["../../../src/react/model-context/useInteractable.ts"],"mappings":";;;;;;AAkBA;;;KAAY,+BAAA,YAA2C,OAAO;EAC5D,WAAA;IAAe,KAAA;MAAU,MAAA;IAAA;EAAA;AAAA,IAEvB,OAAA;;;AAAO;AAQX;;KAAY,gCAAA;EAEG,0DAAb,KAAA,EAAO,MAAM,EAAb;EAEA,QAAA;EAEA,OAAA;AAAA;AAAO;AAOT;;;AAPS,KAOG,2BAAA,iBACM,gCAAA;EAEhB,WAAA;EACA,WAAA,EAAa,OAAA;EACb,YAAA,EAAc,+BAAA,CAAgC,OAAA,GAU/B;EARf,EAAA;EAQ2C;;;;;;;EAA3C,YAAA,GAAe,4BAAA;AAAA;;;;;AAA4B;AAsJ7C;;;;;;;;;;;;;cAAa,wBAAA,mBACK,gCAAA,EAEhB,IAAA,UACA,MAAA,EAAQ,2BAAA,CAA4B,OAAA,gBAEpC,+BAAA,CAAgC,OAAA;EAE9B,EAAA;EACA,OAAA,EACI,gCAAA,CACE,+BAAA,CAAgC,OAAA;EAGtC,QAAA,GACE,OAAA,EACI,+BAAA,CAAgC,OAAA,MAE9B,IAAA,EAAM,+BAAA,CAAgC,OAAA,MACnC,+BAAA,CAAgC,OAAA;EAE3C,SAAA;EACA,KAAA;EACA,KAAA,QAAa,OAAA;AAAA"}
1
+ {"version":3,"file":"useInteractable.d.ts","names":[],"sources":["../../../src/react/model-context/useInteractable.ts"],"mappings":";;;;;;;;KAkBY,gCAAgC,WAAW;EACrD;IAAe;MAAU,cAAc;;;IAErC;;;;;;KAQQ,iCAAiC;;EAE3C,OAAO;;EAEP;;EAEA;;;;;;KAOU,4BACV,gBAAgB;EAEhB;EACA,aAAa;EACb,cAAc,gCAAgC;;EAE9C;;;;;;;;EAQA,eAAe;;;;;;;;;;;;;;;;;;;;cAsJJ,2BACX,gBAAgB,kCAEhB,cACA,QAAQ,4BAA4B,uBAEpC,gCAAgC;EAE9B;EACA,SACI,iCACE,gCAAgC;EAGtC,WACE,SACI,gCAAgC,aAE9B,MAAM,gCAAgC,aACnC,gCAAgC;EAE3C;EACA;EACA,aAAa"}
@@ -1 +1 @@
1
- {"version":3,"file":"useInteractable.js","names":["useEffect","useId","useMemo","useRef","useAui","useAuiState","Unstable_InteractableStateSchema","ToolCallMessagePartComponent","unstable_getInteractableVersions","getInteractableVersions","interactableToolName","unstable_useInteractableState","useInteractableState","useJSONEqual","Unstable_InferInteractableState","TSchema","types","output","TOutput","Unstable_InteractableVersionInfo","state","TState","isLatest","restore","Unstable_InteractableConfig","description","stateSchema","initialState","id","updateRender","useInteractable","name","config","version","setState","updater","prev","isPending","error","flush","Promise","aui","autoId","replace","inPart","part","source","updateToolName","s","undefined","p","type","inferredId","toolName","result","Record","args","success","internalScope","stateSchemaRef","current","initialStateRef","interactables","unstable_interactables","register","scope","Parameters","myToolCallId","toolCallId","registeredState","methods","versionValue","versions","thread","messages","some","v","origin","mine","find","latestToolCallId","findLast","const","unstable_useInteractable"],"sources":["../../../src/react/model-context/useInteractable.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useId, useMemo, useRef } from \"react\";\nimport { useAui, useAuiState } from \"@assistant-ui/store\";\nimport type { Unstable_InteractableStateSchema } from \"../types/scopes/interactables\";\nimport type { ToolCallMessagePartComponent } from \"../types/MessagePartComponentTypes\";\nimport {\n unstable_getInteractableVersions as getInteractableVersions,\n interactableToolName,\n} from \"../../model-context/interactable-composer-metadata\";\nimport { unstable_useInteractableState as useInteractableState } from \"./useInteractableState\";\nimport { useJSONEqual } from \"../utils/useJSONEqual\";\n\n/**\n * The state type described by an interactable's `stateSchema`. Resolves the\n * output type of a StandardSchemaV1 schema (e.g. Zod); plain JSON Schema\n * falls back to `unknown`.\n */\nexport type Unstable_InferInteractableState<TSchema> = TSchema extends {\n \"~standard\": { types?: { output: infer TOutput } | undefined };\n}\n ? TOutput\n : unknown;\n\n/**\n * One message's version of an interactable, for components rendered inside\n * tool-call parts. Show `state` to display history; call `restore()` to set\n * the live instance back to it.\n */\nexport type Unstable_InteractableVersionInfo<TState> = {\n /** The interactable's state as it was at this message. */\n state: TState;\n /** Whether this message holds the instance's most recent tool-driven version. */\n isLatest: boolean;\n /** Sets the live state back to this version. */\n restore: () => void;\n};\n\n/**\n * Unstable / Experimental — the interactables API is still evolving and may change in any release.\n * @deprecated Unstable / Experimental (not actually removed).\n */\nexport type Unstable_InteractableConfig<\n TSchema extends Unstable_InteractableStateSchema,\n> = {\n description: string;\n stateSchema: TSchema;\n initialState: Unstable_InferInteractableState<TSchema>;\n /** Unique instance ID; required to address this instance when multiple interactables share a name. Auto-generated if omitted. */\n id?: string | undefined;\n /**\n * Component installed as the tool UI for this interactable's `update_{name}`\n * tool calls, so a model edit re-renders the interactable at the message\n * that made it instead of only mutating an earlier one. Prefer\n * `unstable_interactableTool`, which wires this up. Pass a stable component reference;\n * changing identity re-registers the tool UI.\n */\n updateRender?: ToolCallMessagePartComponent | undefined;\n};\n\nconst useInteractable = <TSchema extends Unstable_InteractableStateSchema>(\n name: string,\n config: Unstable_InteractableConfig<TSchema>,\n): readonly [\n Unstable_InferInteractableState<TSchema>,\n {\n id: string;\n /**\n * This message's version of the instance, when rendered inside a\n * tool-created interactable message part; `undefined` elsewhere.\n */\n version:\n | Unstable_InteractableVersionInfo<\n Unstable_InferInteractableState<TSchema>\n >\n | undefined;\n setState: (\n updater:\n | Unstable_InferInteractableState<TSchema>\n | ((\n prev: Unstable_InferInteractableState<TSchema>,\n ) => Unstable_InferInteractableState<TSchema>),\n ) => void;\n isPending: boolean;\n error: unknown;\n flush: () => Promise<void>;\n },\n] => {\n const aui = useAui();\n\n const autoId = useId().replace(/[^a-zA-Z0-9]/g, \"\");\n\n // Whether this component renders inside a message part is fixed for its\n // lifetime, so conditioning the selectors on it is safe.\n const inPart = aui.part.source != null;\n const updateToolName = interactableToolName(name);\n const part = useAuiState((s) => {\n if (!inPart) return undefined;\n const p = s.part;\n return p.type === \"tool-call\" ? p : undefined;\n });\n\n // Inside an update_{name} part, the instance id comes from the call itself:\n // the result's resolved id (covers id-less calls), or the id argument.\n let inferredId: string | undefined;\n if (part?.toolName === updateToolName) {\n const result = part.result as Record<string, unknown> | undefined;\n const args = part.args as Record<string, unknown> | undefined;\n if (result?.success !== false) {\n if (typeof result?.id === \"string\") inferredId = result.id;\n else if (typeof args?.id === \"string\") inferredId = args.id;\n }\n }\n\n const id = config.id ?? inferredId ?? autoId;\n const internalScope =\n part?.toolName === name || part?.toolName === updateToolName\n ? \"thread\"\n : undefined;\n\n const stateSchemaRef = useRef(config.stateSchema);\n stateSchemaRef.current = config.stateSchema;\n const initialStateRef = useRef(config.initialState);\n initialStateRef.current = config.initialState;\n\n const interactables = useAuiState(() => aui.unstable_interactables());\n\n useEffect(() => {\n return interactables.register({\n id,\n name,\n description: config.description,\n stateSchema: stateSchemaRef.current,\n initialState: initialStateRef.current,\n updateRender: config.updateRender,\n ...(internalScope ? { scope: internalScope } : {}),\n } as Parameters<typeof interactables.register>[0] & {\n scope?: \"thread\" | undefined;\n });\n }, [\n interactables,\n id,\n name,\n config.description,\n internalScope,\n config.updateRender,\n ]);\n\n const myToolCallId = part?.toolCallId;\n\n const [registeredState, methods] =\n useInteractableState<Unstable_InferInteractableState<TSchema>>(id);\n const { setState } = methods;\n\n const versionValue = useAuiState(\n useJSONEqual((s) => {\n if (!internalScope || !myToolCallId) return undefined;\n const versions = getInteractableVersions(s.thread.messages, id, name);\n if (!versions.some((v) => v.origin === \"create\" && v.toolCallId === id)) {\n return undefined;\n }\n const mine = versions.find((v) => v.toolCallId === myToolCallId);\n if (!mine) return undefined;\n const latestToolCallId = versions.findLast(\n (v) => v.toolCallId !== undefined,\n )?.toolCallId;\n return { state: mine.state, isLatest: latestToolCallId === myToolCallId };\n }),\n );\n\n const version = useMemo(\n () =>\n versionValue && {\n state: versionValue.state as Unstable_InferInteractableState<TSchema>,\n isLatest: versionValue.isLatest,\n restore: () =>\n setState(\n versionValue.state as Unstable_InferInteractableState<TSchema>,\n ),\n },\n [versionValue, setState],\n );\n\n const state =\n registeredState === undefined ? config.initialState : registeredState;\n\n return [state, { id, version, ...methods }] as const;\n};\n\n/**\n * Registers an interactable with the AI assistant and returns its live state,\n * like `useState` that the model can also read and update.\n *\n * Call this once per place that shows the interactable. Other components can\n * read and write the same instance by passing its `id` to\n * `unstable_useInteractableState`.\n *\n * For tool-created interactables rendered inside tool-call message parts,\n * `version` carries this message's version of the instance — its state as of\n * that point in the conversation, whether it is the most recent tool-driven\n * version, and a `restore()` back to it. Whether older messages render frozen history or stay\n * live-editable is the component's choice. Inside an `update_{name}` part the\n * instance `id` is inferred from the call, so the same component works at the\n * creating call and at update calls.\n *\n * @deprecated Unstable / Experimental (not actually removed).\n */\nexport const unstable_useInteractable: <\n TSchema extends Unstable_InteractableStateSchema,\n>(\n name: string,\n config: Unstable_InteractableConfig<TSchema>,\n) => readonly [\n Unstable_InferInteractableState<TSchema>,\n {\n id: string;\n version:\n | Unstable_InteractableVersionInfo<\n Unstable_InferInteractableState<TSchema>\n >\n | undefined;\n setState: (\n updater:\n | Unstable_InferInteractableState<TSchema>\n | ((\n prev: Unstable_InferInteractableState<TSchema>,\n ) => Unstable_InferInteractableState<TSchema>),\n ) => void;\n isPending: boolean;\n error: unknown;\n flush: () => Promise<void>;\n },\n] = useInteractable;\n"],"mappings":";;;;;;;AA4DA,MAAM8B,mBACJC,MACAC,WAyBG;CACH,MAAMS,MAAMrC,OAAO;CAEnB,MAAMsC,SAASzC,MAAM,CAAC,CAAC0C,QAAQ,iBAAiB,EAAE;CAIlD,MAAMC,SAASH,IAAII,KAAKC,UAAU;CAClC,MAAMC,iBAAiBrC,qBAAqBqB,IAAI;CAChD,MAAMc,OAAOxC,aAAa2C,MAAM;EAC9B,IAAI,CAACJ,QAAQ,OAAOK,KAAAA;EACpB,MAAMC,IAAIF,EAAEH;EACZ,OAAOK,EAAEC,SAAS,cAAcD,IAAID,KAAAA;CACtC,CAAC;CAID,IAAIG;CACJ,IAAIP,MAAMQ,aAAaN,gBAAgB;EACrC,MAAMO,SAAST,KAAKS;EACpB,MAAME,OAAOX,KAAKW;EAClB,IAAIF,QAAQG,YAAY;OAClB,OAAOH,QAAQ1B,OAAO,UAAUwB,aAAaE,OAAO1B;QACnD,IAAI,OAAO4B,MAAM5B,OAAO,UAAUwB,aAAaI,KAAK5B;EAAAA;CAE7D;CAEA,MAAMA,KAAKI,OAAOJ,MAAMwB,cAAcV;CACtC,MAAMgB,gBACJb,MAAMQ,aAAatB,QAAQc,MAAMQ,aAAaN,iBAC1C,WACAE,KAAAA;CAEN,MAAMU,iBAAiBxD,OAAO6B,OAAON,WAAW;CAChDiC,eAAeC,UAAU5B,OAAON;CAChC,MAAMmC,kBAAkB1D,OAAO6B,OAAOL,YAAY;CAClDkC,gBAAgBD,UAAU5B,OAAOL;CAEjC,MAAMmC,gBAAgBzD,kBAAkBoC,IAAIsB,uBAAuB,CAAC;CAEpE/D,gBAAgB;EACd,OAAO8D,cAAcE,SAAS;GAC5BpC;GACAG;GACAN,aAAaO,OAAOP;GACpBC,aAAaiC,eAAeC;GAC5BjC,cAAckC,gBAAgBD;GAC9B/B,cAAcG,OAAOH;GACrB,GAAI6B,gBAAgB,EAAEO,OAAOP,cAAc,IAAI,CAAC;EAClD,CAEC;CACH,GAAG;EACDI;EACAlC;EACAG;EACAC,OAAOP;EACPiC;EACA1B,OAAOH;CAAY,CACpB;CAED,MAAMsC,eAAetB,MAAMuB;CAE3B,MAAM,CAACC,iBAAiBC,WACtB1D,8BAA+DgB,EAAE;CACnE,MAAM,EAAEM,aAAaoC;CAErB,MAAMC,eAAelE,YACnBQ,cAAcmC,QAAM;EAClB,IAAI,CAACU,iBAAiB,CAACS,cAAc,OAAOlB,KAAAA;EAC5C,MAAMuB,WAAW/D,iCAAwBuC,IAAEyB,OAAOC,UAAU9C,IAAIG,IAAI;EACpE,IAAI,CAACyC,SAASG,MAAMC,MAAMA,EAAEC,WAAW,YAAYD,EAAER,eAAexC,EAAE,GACpE;EAEF,MAAMkD,OAAON,SAASO,MAAMH,QAAMA,IAAER,eAAeD,YAAY;EAC/D,IAAI,CAACW,MAAM,OAAO7B,KAAAA;EAClB,MAAM+B,mBAAmBR,SAASS,UAC/BL,QAAMA,IAAER,eAAenB,KAAAA,CAC1B,CAAC,EAAEmB;EACH,OAAO;GAAEhD,OAAO0D,KAAK1D;GAAOE,UAAU0D,qBAAqBb;EAAa;CAC1E,CAAC,CACH;CAEA,MAAMlC,UAAU/B,cAEZqE,gBAAgB;EACdnD,OAAOmD,aAAanD;EACpBE,UAAUiD,aAAajD;EACvBC,eACEW,SACEqC,aAAanD,KACf;CACJ,GACF,CAACmD,cAAcrC,QAAQ,CACzB;CAKA,OAAO,CAFLmC,oBAAoBpB,KAAAA,IAAYjB,OAAOL,eAAe0C,iBAEzC;EAAEzC;EAAIK;EAAS,GAAGqC;CAAQ,CAAC;AAC5C;;;;;;;;;;;;;;;;;;;AAoBA,MAAaa,2BAyBTrD"}
1
+ {"version":3,"file":"useInteractable.js","names":["useEffect","useId","useMemo","useRef","useAui","useAuiState","Unstable_InteractableStateSchema","ToolCallMessagePartComponent","unstable_getInteractableVersions","getInteractableVersions","interactableToolName","unstable_useInteractableState","useInteractableState","useJSONEqual","Unstable_InferInteractableState","TSchema","types","output","TOutput","Unstable_InteractableVersionInfo","state","TState","isLatest","restore","Unstable_InteractableConfig","description","stateSchema","initialState","id","updateRender","useInteractable","name","config","version","setState","updater","prev","isPending","error","flush","Promise","aui","autoId","replace","inPart","part","source","updateToolName","s","undefined","p","type","inferredId","toolName","result","Record","args","success","internalScope","stateSchemaRef","current","initialStateRef","interactables","unstable_interactables","register","scope","Parameters","myToolCallId","toolCallId","registeredState","methods","versionValue","versions","thread","messages","some","v","origin","mine","find","latestToolCallId","findLast","const","unstable_useInteractable"],"sources":["../../../src/react/model-context/useInteractable.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useId, useMemo, useRef } from \"react\";\nimport { useAui, useAuiState } from \"@assistant-ui/store\";\nimport type { Unstable_InteractableStateSchema } from \"../types/scopes/interactables\";\nimport type { ToolCallMessagePartComponent } from \"../types/MessagePartComponentTypes\";\nimport {\n unstable_getInteractableVersions as getInteractableVersions,\n interactableToolName,\n} from \"../../model-context/interactable-composer-metadata\";\nimport { unstable_useInteractableState as useInteractableState } from \"./useInteractableState\";\nimport { useJSONEqual } from \"../utils/useJSONEqual\";\n\n/**\n * The state type described by an interactable's `stateSchema`. Resolves the\n * output type of a StandardSchemaV1 schema (e.g. Zod); plain JSON Schema\n * falls back to `unknown`.\n */\nexport type Unstable_InferInteractableState<TSchema> = TSchema extends {\n \"~standard\": { types?: { output: infer TOutput } | undefined };\n}\n ? TOutput\n : unknown;\n\n/**\n * One message's version of an interactable, for components rendered inside\n * tool-call parts. Show `state` to display history; call `restore()` to set\n * the live instance back to it.\n */\nexport type Unstable_InteractableVersionInfo<TState> = {\n /** The interactable's state as it was at this message. */\n state: TState;\n /** Whether this message holds the instance's most recent tool-driven version. */\n isLatest: boolean;\n /** Sets the live state back to this version. */\n restore: () => void;\n};\n\n/**\n * Unstable / Experimental — the interactables API is still evolving and may change in any release.\n * @deprecated Unstable / Experimental (not actually removed).\n */\nexport type Unstable_InteractableConfig<\n TSchema extends Unstable_InteractableStateSchema,\n> = {\n description: string;\n stateSchema: TSchema;\n initialState: Unstable_InferInteractableState<TSchema>;\n /** Unique instance ID; required to address this instance when multiple interactables share a name. Auto-generated if omitted. */\n id?: string | undefined;\n /**\n * Component installed as the tool UI for this interactable's `update_{name}`\n * tool calls, so a model edit re-renders the interactable at the message\n * that made it instead of only mutating an earlier one. Prefer\n * `unstable_interactableTool`, which wires this up. Pass a stable component reference;\n * changing identity re-registers the tool UI.\n */\n updateRender?: ToolCallMessagePartComponent | undefined;\n};\n\nconst useInteractable = <TSchema extends Unstable_InteractableStateSchema>(\n name: string,\n config: Unstable_InteractableConfig<TSchema>,\n): readonly [\n Unstable_InferInteractableState<TSchema>,\n {\n id: string;\n /**\n * This message's version of the instance, when rendered inside a\n * tool-created interactable message part; `undefined` elsewhere.\n */\n version:\n | Unstable_InteractableVersionInfo<\n Unstable_InferInteractableState<TSchema>\n >\n | undefined;\n setState: (\n updater:\n | Unstable_InferInteractableState<TSchema>\n | ((\n prev: Unstable_InferInteractableState<TSchema>,\n ) => Unstable_InferInteractableState<TSchema>),\n ) => void;\n isPending: boolean;\n error: unknown;\n flush: () => Promise<void>;\n },\n] => {\n const aui = useAui();\n\n const autoId = useId().replace(/[^a-zA-Z0-9]/g, \"\");\n\n // Whether this component renders inside a message part is fixed for its\n // lifetime, so conditioning the selectors on it is safe.\n const inPart = aui.part.source != null;\n const updateToolName = interactableToolName(name);\n const part = useAuiState((s) => {\n if (!inPart) return undefined;\n const p = s.part;\n return p.type === \"tool-call\" ? p : undefined;\n });\n\n // Inside an update_{name} part, the instance id comes from the call itself:\n // the result's resolved id (covers id-less calls), or the id argument.\n let inferredId: string | undefined;\n if (part?.toolName === updateToolName) {\n const result = part.result as Record<string, unknown> | undefined;\n const args = part.args as Record<string, unknown> | undefined;\n if (result?.success !== false) {\n if (typeof result?.id === \"string\") inferredId = result.id;\n else if (typeof args?.id === \"string\") inferredId = args.id;\n }\n }\n\n const id = config.id ?? inferredId ?? autoId;\n const internalScope =\n part?.toolName === name || part?.toolName === updateToolName\n ? \"thread\"\n : undefined;\n\n const stateSchemaRef = useRef(config.stateSchema);\n stateSchemaRef.current = config.stateSchema;\n const initialStateRef = useRef(config.initialState);\n initialStateRef.current = config.initialState;\n\n const interactables = useAuiState(() => aui.unstable_interactables());\n\n useEffect(() => {\n return interactables.register({\n id,\n name,\n description: config.description,\n stateSchema: stateSchemaRef.current,\n initialState: initialStateRef.current,\n updateRender: config.updateRender,\n ...(internalScope ? { scope: internalScope } : {}),\n } as Parameters<typeof interactables.register>[0] & {\n scope?: \"thread\" | undefined;\n });\n }, [\n interactables,\n id,\n name,\n config.description,\n internalScope,\n config.updateRender,\n ]);\n\n const myToolCallId = part?.toolCallId;\n\n const [registeredState, methods] =\n useInteractableState<Unstable_InferInteractableState<TSchema>>(id);\n const { setState } = methods;\n\n const versionValue = useAuiState(\n useJSONEqual((s) => {\n if (!internalScope || !myToolCallId) return undefined;\n const versions = getInteractableVersions(s.thread.messages, id, name);\n if (!versions.some((v) => v.origin === \"create\" && v.toolCallId === id)) {\n return undefined;\n }\n const mine = versions.find((v) => v.toolCallId === myToolCallId);\n if (!mine) return undefined;\n const latestToolCallId = versions.findLast(\n (v) => v.toolCallId !== undefined,\n )?.toolCallId;\n return { state: mine.state, isLatest: latestToolCallId === myToolCallId };\n }),\n );\n\n const version = useMemo(\n () =>\n versionValue && {\n state: versionValue.state as Unstable_InferInteractableState<TSchema>,\n isLatest: versionValue.isLatest,\n restore: () =>\n setState(\n versionValue.state as Unstable_InferInteractableState<TSchema>,\n ),\n },\n [versionValue, setState],\n );\n\n const state =\n registeredState === undefined ? config.initialState : registeredState;\n\n return [state, { id, version, ...methods }] as const;\n};\n\n/**\n * Registers an interactable with the AI assistant and returns its live state,\n * like `useState` that the model can also read and update.\n *\n * Call this once per place that shows the interactable. Other components can\n * read and write the same instance by passing its `id` to\n * `unstable_useInteractableState`.\n *\n * For tool-created interactables rendered inside tool-call message parts,\n * `version` carries this message's version of the instance — its state as of\n * that point in the conversation, whether it is the most recent tool-driven\n * version, and a `restore()` back to it. Whether older messages render frozen history or stay\n * live-editable is the component's choice. Inside an `update_{name}` part the\n * instance `id` is inferred from the call, so the same component works at the\n * creating call and at update calls.\n *\n * @deprecated Unstable / Experimental (not actually removed).\n */\nexport const unstable_useInteractable: <\n TSchema extends Unstable_InteractableStateSchema,\n>(\n name: string,\n config: Unstable_InteractableConfig<TSchema>,\n) => readonly [\n Unstable_InferInteractableState<TSchema>,\n {\n id: string;\n version:\n | Unstable_InteractableVersionInfo<\n Unstable_InferInteractableState<TSchema>\n >\n | undefined;\n setState: (\n updater:\n | Unstable_InferInteractableState<TSchema>\n | ((\n prev: Unstable_InferInteractableState<TSchema>,\n ) => Unstable_InferInteractableState<TSchema>),\n ) => void;\n isPending: boolean;\n error: unknown;\n flush: () => Promise<void>;\n },\n] = useInteractable;\n"],"mappings":";;;;;;;AA4DA,MAAM8B,mBACJC,MACAC,WAyBG;CACH,MAAMS,MAAMrC,OAAO;CAEnB,MAAMsC,SAASzC,MAAM,CAAC,CAAC0C,QAAQ,iBAAiB,EAAE;CAIlD,MAAMC,SAASH,IAAII,KAAKC,UAAU;CAClC,MAAMC,iBAAiBrC,qBAAqBqB,IAAI;CAChD,MAAMc,OAAOxC,aAAa2C,MAAM;EAC9B,IAAI,CAACJ,QAAQ,OAAOK,KAAAA;EACpB,MAAMC,IAAIF,EAAEH;EACZ,OAAOK,EAAEC,SAAS,cAAcD,IAAID,KAAAA;CACtC,CAAC;CAID,IAAIG;CACJ,IAAIP,MAAMQ,aAAaN,gBAAgB;EACrC,MAAMO,SAAST,KAAKS;EACpB,MAAME,OAAOX,KAAKW;EAClB,IAAIF,QAAQG,YAAY,OAClB;OAAA,OAAOH,QAAQ1B,OAAO,UAAUwB,aAAaE,OAAO1B;QACnD,IAAI,OAAO4B,MAAM5B,OAAO,UAAUwB,aAAaI,KAAK5B;EAAAA;CAE7D;CAEA,MAAMA,KAAKI,OAAOJ,MAAMwB,cAAcV;CACtC,MAAMgB,gBACJb,MAAMQ,aAAatB,QAAQc,MAAMQ,aAAaN,iBAC1C,WACAE,KAAAA;CAEN,MAAMU,iBAAiBxD,OAAO6B,OAAON,WAAW;CAChDiC,eAAeC,UAAU5B,OAAON;CAChC,MAAMmC,kBAAkB1D,OAAO6B,OAAOL,YAAY;CAClDkC,gBAAgBD,UAAU5B,OAAOL;CAEjC,MAAMmC,gBAAgBzD,kBAAkBoC,IAAIsB,uBAAuB,CAAC;CAEpE/D,gBAAgB;EACd,OAAO8D,cAAcE,SAAS;GAC5BpC;GACAG;GACAN,aAAaO,OAAOP;GACpBC,aAAaiC,eAAeC;GAC5BjC,cAAckC,gBAAgBD;GAC9B/B,cAAcG,OAAOH;GACrB,GAAI6B,gBAAgB,EAAEO,OAAOP,cAAc,IAAI,CAAC;EAClD,CAEC;CACH,GAAG;EACDI;EACAlC;EACAG;EACAC,OAAOP;EACPiC;EACA1B,OAAOH;CAAY,CACpB;CAED,MAAMsC,eAAetB,MAAMuB;CAE3B,MAAM,CAACC,iBAAiBC,WACtB1D,8BAA+DgB,EAAE;CACnE,MAAM,EAAEM,aAAaoC;CAErB,MAAMC,eAAelE,YACnBQ,cAAcmC,QAAM;EAClB,IAAI,CAACU,iBAAiB,CAACS,cAAc,OAAOlB,KAAAA;EAC5C,MAAMuB,WAAW/D,iCAAwBuC,IAAEyB,OAAOC,UAAU9C,IAAIG,IAAI;EACpE,IAAI,CAACyC,SAASG,MAAMC,MAAMA,EAAEC,WAAW,YAAYD,EAAER,eAAexC,EAAE,GACpE;EAEF,MAAMkD,OAAON,SAASO,MAAMH,QAAMA,IAAER,eAAeD,YAAY;EAC/D,IAAI,CAACW,MAAM,OAAO7B,KAAAA;EAClB,MAAM+B,mBAAmBR,SAASS,UAC/BL,QAAMA,IAAER,eAAenB,KAAAA,CAC1B,CAAC,EAAEmB;EACH,OAAO;GAAEhD,OAAO0D,KAAK1D;GAAOE,UAAU0D,qBAAqBb;EAAa;CAC1E,CAAC,CACH;CAEA,MAAMlC,UAAU/B,cAEZqE,gBAAgB;EACdnD,OAAOmD,aAAanD;EACpBE,UAAUiD,aAAajD;EACvBC,eACEW,SACEqC,aAAanD,KACf;CACJ,GACF,CAACmD,cAAcrC,QAAQ,CACzB;CAKA,OAAO,CAFLmC,oBAAoBpB,KAAAA,IAAYjB,OAAOL,eAAe0C,iBAEzC;EAAEzC;EAAIK;EAAS,GAAGqC;CAAQ,CAAC;AAC5C;;;;;;;;;;;;;;;;;;;AAoBA,MAAaa,2BAyBTrD"}
@@ -1 +1 @@
1
- {"version":3,"file":"useInteractableState.d.ts","names":[],"sources":["../../../src/react/model-context/useInteractableState.ts"],"mappings":";KAKK,YAAA,WAAuB,MAAA,KAAW,IAAA,EAAM,MAAA,KAAW,MAAA;;;;;;;;;;cAyD3C,6BAAA,WAAwC,EAAA,cACnD,MAAA;EAEE,QAAA,GAAW,OAAA,EAAS,YAAA,CAAa,MAAA;EACjC,SAAA;EACA,KAAA;EACA,KAAA,QAAa,OAAA;AAAA"}
1
+ {"version":3,"file":"useInteractableState.d.ts","names":[],"sources":["../../../src/react/model-context/useInteractableState.ts"],"mappings":";KAKK,aAAa,UAAU,WAAW,MAAM,WAAW;;;;;;;;;;cAyD3C,gCAAgC,QAAQ,gBACnD;EAEE,WAAW,SAAS,aAAa;EACjC;EACA;EACA,aAAa"}
@@ -1,5 +1,4 @@
1
1
  import { Unstable_InteractableVersion } from "../../model-context/interactable-composer-metadata.js";
2
-
3
2
  //#region src/react/model-context/useInteractableVersions.d.ts
4
3
  /**
5
4
  * Every version of a tool-created interactable recorded in the current
@@ -1 +1 @@
1
- {"version":3,"file":"useInteractableVersions.d.ts","names":[],"sources":["../../../src/react/model-context/useInteractableVersions.ts"],"mappings":";;;;;AAyCA;;;;;;;cAAa,gCAAA,qBACX,EAAA,UACA,IAAA,cACI,IAAA,CAAK,4BAAA;EACT,KAAA,EAAO,MAAA;EACP,OAAA;AAAA"}
1
+ {"version":3,"file":"useInteractableVersions.d.ts","names":[],"sources":["../../../src/react/model-context/useInteractableVersions.ts"],"mappings":";;;;;;;;;;;cAyCa,mCAAmC,kBAC9C,YACA,kBACI,KAAK;EACT,OAAO;EACP"}
@@ -4,7 +4,9 @@ type PropFieldStatus = "streaming" | "complete";
4
4
  * Streaming completion status for the arguments of the current tool call.
5
5
  */
6
6
  type ToolArgsStatus<TArgs extends Record<string, unknown> = Record<string, unknown>> = {
7
- /** Overall lifecycle state of the tool-call part. */status: "running" | "complete" | "incomplete" | "requires-action"; /** Per-argument status keyed by argument name. */
7
+ /** Overall lifecycle state of the tool-call part. */
8
+ status: "running" | "complete" | "incomplete" | "requires-action";
9
+ /** Per-argument status keyed by argument name. */
8
10
  propStatus: Partial<Record<keyof TArgs, PropFieldStatus>>;
9
11
  };
10
12
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useToolArgsStatus.d.ts","names":[],"sources":["../../../src/react/model-context/useToolArgsStatus.ts"],"mappings":";KAOK,eAAA;;;;KAKO,cAAA,eACI,MAAA,oBAA0B,MAAA;EANtB,qDASlB,MAAA,6DAJwB;EAMxB,UAAA,EAAY,OAAA,CAAQ,MAAA,OAAa,KAAA,EAAO,eAAA;AAAA;;;;;;;;;;;;;;;;;;AAAe;AA2BzD;;;;;;cAAa,iBAAA,iBACG,MAAA,oBAA0B,MAAA,wBACrC,cAAA,CAAe,KAAA"}
1
+ {"version":3,"file":"useToolArgsStatus.d.ts","names":[],"sources":["../../../src/react/model-context/useToolArgsStatus.ts"],"mappings":";KAOK;;;;KAKO,eACV,cAAc,0BAA0B;;EAGxC;;EAEA,YAAY,QAAQ,aAAa,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;cA2B7B,oBACX,cAAc,0BAA0B,8BACrC,eAAe"}
@@ -3,10 +3,7 @@ type UseActionBarCopyOptions = {
3
3
  copiedDuration?: number | undefined;
4
4
  copyToClipboard?: ((text: string) => void | Promise<void>) | undefined;
5
5
  };
6
- declare const useActionBarCopy: ({
7
- copiedDuration,
8
- copyToClipboard
9
- }?: UseActionBarCopyOptions) => {
6
+ declare const useActionBarCopy: ({ copiedDuration, copyToClipboard }?: UseActionBarCopyOptions) => {
10
7
  copy: () => void;
11
8
  disabled: boolean;
12
9
  isCopied: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"useActionBarCopy.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarCopy.ts"],"mappings":";KAGY,uBAAA;EACV,cAAA;EACA,eAAA,KAAoB,IAAA,oBAAwB,OAAO;AAAA;AAAA,cAGxC,gBAAA;EAAoB,cAAA;EAAA;AAAA,IAG9B,uBAAA"}
1
+ {"version":3,"file":"useActionBarCopy.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarCopy.ts"],"mappings":";KAGY;EACV;EACA,oBAAoB,wBAAwB;;cAGjC,qBAAoB,gBAAA,oBAG9B"}
@@ -19,13 +19,13 @@ const useActionBarCopy = (t0) => {
19
19
  let t3;
20
20
  if ($[2] !== aui || $[3] !== composerValue || $[4] !== copiedDuration || $[5] !== copyToClipboard || $[6] !== isEditing) {
21
21
  t3 = () => {
22
+ if (!copyToClipboard) return;
22
23
  const valueToCopy = isEditing ? composerValue : aui.message().getCopyText();
23
24
  if (!valueToCopy) return;
24
- const write = copyToClipboard ?? _temp6;
25
- Promise.resolve(write(valueToCopy)).then(() => {
25
+ Promise.resolve(copyToClipboard(valueToCopy)).then(() => {
26
26
  aui.message().setIsCopied(true);
27
27
  setTimeout(() => aui.message().setIsCopied(false), copiedDuration);
28
- }, _temp7);
28
+ }, _temp6);
29
29
  };
30
30
  $[2] = aui;
31
31
  $[3] = composerValue;
@@ -35,19 +35,20 @@ const useActionBarCopy = (t0) => {
35
35
  $[7] = t3;
36
36
  } else t3 = $[7];
37
37
  const copy = t3;
38
- let t4;
39
- if ($[8] !== copy || $[9] !== disabled || $[10] !== isCopied) {
40
- t4 = {
38
+ const t4 = disabled || !copyToClipboard;
39
+ let t5;
40
+ if ($[8] !== copy || $[9] !== isCopied || $[10] !== t4) {
41
+ t5 = {
41
42
  copy,
42
- disabled,
43
+ disabled: t4,
43
44
  isCopied
44
45
  };
45
46
  $[8] = copy;
46
- $[9] = disabled;
47
- $[10] = isCopied;
48
- $[11] = t4;
49
- } else t4 = $[11];
50
- return t4;
47
+ $[9] = isCopied;
48
+ $[10] = t4;
49
+ $[11] = t5;
50
+ } else t5 = $[11];
51
+ return t5;
51
52
  };
52
53
  function _temp(c) {
53
54
  return c.type === "text" && c.text.length > 0;
@@ -65,7 +66,6 @@ function _temp5(s_2) {
65
66
  return s_2.composer.text;
66
67
  }
67
68
  function _temp6() {}
68
- function _temp7() {}
69
69
  //#endregion
70
70
  export { useActionBarCopy };
71
71
 
@@ -1 +1 @@
1
- {"version":3,"file":"useActionBarCopy.js","names":["useCallback","useAui","useAuiState","UseActionBarCopyOptions","copiedDuration","copyToClipboard","text","Promise","useActionBarCopy","t0","$","_c","t1","undefined","t2","aui","disabled","_temp2","isCopied","_temp3","isEditing","_temp4","composerValue","_temp5","t3","valueToCopy","message","getCopyText","write","_temp6","resolve","then","setIsCopied","setTimeout","_temp7","copy","t4","_temp","c","type","length","s","role","status","parts","some","s_0","s_1","composer","s_2"],"sources":["../../../src/react/primitive-hooks/useActionBarCopy.ts"],"sourcesContent":["import { useCallback } from \"react\";\nimport { useAui, useAuiState } from \"@assistant-ui/store\";\n\nexport type UseActionBarCopyOptions = {\n copiedDuration?: number | undefined;\n copyToClipboard?: ((text: string) => void | Promise<void>) | undefined;\n};\n\nexport const useActionBarCopy = ({\n copiedDuration = 3000,\n copyToClipboard,\n}: UseActionBarCopyOptions = {}) => {\n const aui = useAui();\n const disabled = useAuiState((s) => {\n return !(\n (s.message.role !== \"assistant\" ||\n s.message.status?.type !== \"running\") &&\n s.message.parts.some((c) => c.type === \"text\" && c.text.length > 0)\n );\n });\n const isCopied = useAuiState((s) => s.message.isCopied);\n const isEditing = useAuiState((s) => s.composer.isEditing);\n const composerValue = useAuiState((s) => s.composer.text);\n\n const copy = useCallback(() => {\n const valueToCopy = isEditing ? composerValue : aui.message().getCopyText();\n if (!valueToCopy) return;\n\n const write = copyToClipboard ?? (() => {});\n // The rejection handler swallows clipboard write failures (permission denied,\n // API unavailable) so they don't surface as unhandled promise rejections.\n Promise.resolve(write(valueToCopy)).then(\n () => {\n aui.message().setIsCopied(true);\n setTimeout(() => aui.message().setIsCopied(false), copiedDuration);\n },\n () => {},\n );\n }, [aui, isEditing, composerValue, copiedDuration, copyToClipboard]);\n\n return { copy, disabled, isCopied };\n};\n"],"mappings":";;;AAQA,MAAaQ,oBAAmBC,OAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;CAAA,IAAAF,EAAA,OAAAD,IAAA;EAACG,KAAAH,OAAAI,KAAAA,IAAA,CAGH,IAHGJ;EAGFC,EAAA,KAAAD;EAAAC,EAAA,KAAAE;CAAA,OAAAA,KAAAF,EAAA;CAHE,MAAA,EAAAN,gBAAAU,IAAAT,oBAAAO;CAC/B,MAAAR,iBAAAU,OAAAD,KAAAA,IAAA,MAAAC;CAGA,MAAAC,MAAYd,OAAO;CACnB,MAAAe,WAAiBd,YAAYe,MAM5B;CACD,MAAAC,WAAiBhB,YAAYiB,MAAyB;CACtD,MAAAC,YAAkBlB,YAAYmB,MAA2B;CACzD,MAAAC,gBAAsBpB,YAAYqB,MAAsB;CAAE,IAAAC;CAAA,IAAAd,EAAA,OAAAK,OAAAL,EAAA,OAAAY,iBAAAZ,EAAA,OAAAN,kBAAAM,EAAA,OAAAL,mBAAAK,EAAA,OAAAU,WAAA;EAEjCI,WAAA;GACvB,MAAAC,cAAoBL,YAAAE,gBAA4BP,IAAGW,QAAS,CAAC,CAAAC,YAAa;GAC1E,IAAI,CAACF,aAAW;GAEhB,MAAAG,QAAcvB,mBAAAwB;GAGdtB,QAAOuB,QAASF,MAAMH,WAAW,CAAC,CAAC,CAAAM,WACjC;IACEhB,IAAGW,QAAS,CAAC,CAAAM,YAAa,IAAI;IAC9BC,iBAAiBlB,IAAGW,QAAS,CAAC,CAAAM,YAAa,KAAK,GAAG5B,cAAc;GAAC,GAEpE8B,MACF;EAAC;EACFxB,EAAA,KAAAK;EAAAL,EAAA,KAAAY;EAAAZ,EAAA,KAAAN;EAAAM,EAAA,KAAAL;EAAAK,EAAA,KAAAU;EAAAV,EAAA,KAAAc;CAAA,OAAAA,KAAAd,EAAA;CAdD,MAAAyB,OAAaX;CAcwD,IAAAY;CAAA,IAAA1B,EAAA,OAAAyB,QAAAzB,EAAA,OAAAM,YAAAN,EAAA,QAAAQ,UAAA;EAE9DkB,KAAA;GAAAD;GAAAnB;GAAAE;EAA2B;EAACR,EAAA,KAAAyB;EAAAzB,EAAA,KAAAM;EAAAN,EAAA,MAAAQ;EAAAR,EAAA,MAAA0B;CAAA,OAAAA,KAAA1B,EAAA;CAAA,OAA5B0B;AAA4B;AAhCL,SAAAC,MAAAC,GAAA;CAAA,OASEA,EAACC,SAAU,UAAUD,EAAChC,KAAKkC,SAAU;AAAC;AATxC,SAAAvB,OAAAwB,GAAA;CAAA,OAMrB,GACJA,EAACf,QAAQgB,SAAU,eAClBD,EAACf,QAAQiB,QAAaJ,SAAK,cAC7BE,EAACf,QAAQkB,MAAMC,KAAMR,KAA6C;AACnE;AAV2B,SAAAlB,OAAA2B,KAAA;CAAA,OAYML,IAACf,QAAQR;AAAS;AAZxB,SAAAG,OAAA0B,KAAA;CAAA,OAaON,IAACO,SAAS5B;AAAU;AAb3B,SAAAG,OAAA0B,KAAA;CAAA,OAcWR,IAACO,SAAS1C;AAAK;AAd1B,SAAAuB,SAAA,CAAA;AAAA,SAAAK,SAAA,CAAA"}
1
+ {"version":3,"file":"useActionBarCopy.js","names":["useCallback","useAui","useAuiState","UseActionBarCopyOptions","copiedDuration","copyToClipboard","text","Promise","useActionBarCopy","t0","$","_c","t1","undefined","t2","aui","disabled","_temp2","isCopied","_temp3","isEditing","_temp4","composerValue","_temp5","t3","valueToCopy","message","getCopyText","resolve","then","setIsCopied","setTimeout","_temp6","copy","t4","t5","_temp","c","type","length","s","role","status","parts","some","s_0","s_1","composer","s_2"],"sources":["../../../src/react/primitive-hooks/useActionBarCopy.ts"],"sourcesContent":["import { useCallback } from \"react\";\nimport { useAui, useAuiState } from \"@assistant-ui/store\";\n\nexport type UseActionBarCopyOptions = {\n copiedDuration?: number | undefined;\n copyToClipboard?: ((text: string) => void | Promise<void>) | undefined;\n};\n\nexport const useActionBarCopy = ({\n copiedDuration = 3000,\n copyToClipboard,\n}: UseActionBarCopyOptions = {}) => {\n const aui = useAui();\n const disabled = useAuiState((s) => {\n return !(\n (s.message.role !== \"assistant\" ||\n s.message.status?.type !== \"running\") &&\n s.message.parts.some((c) => c.type === \"text\" && c.text.length > 0)\n );\n });\n const isCopied = useAuiState((s) => s.message.isCopied);\n const isEditing = useAuiState((s) => s.composer.isEditing);\n const composerValue = useAuiState((s) => s.composer.text);\n\n const copy = useCallback(() => {\n if (!copyToClipboard) return;\n\n const valueToCopy = isEditing ? composerValue : aui.message().getCopyText();\n if (!valueToCopy) return;\n\n // The rejection handler swallows clipboard write failures (permission denied,\n // API unavailable) so they don't surface as unhandled promise rejections.\n Promise.resolve(copyToClipboard(valueToCopy)).then(\n () => {\n aui.message().setIsCopied(true);\n setTimeout(() => aui.message().setIsCopied(false), copiedDuration);\n },\n () => {},\n );\n }, [aui, isEditing, composerValue, copiedDuration, copyToClipboard]);\n\n return { copy, disabled: disabled || !copyToClipboard, isCopied };\n};\n"],"mappings":";;;AAQA,MAAaQ,oBAAmBC,OAAA;CAAA,MAAAC,IAAAC,EAAA,EAAA;CAAA,IAAAC;CAAA,IAAAF,EAAA,OAAAD,IAAA;EAACG,KAAAH,OAAAI,KAAAA,IAAA,CAGH,IAHGJ;EAGFC,EAAA,KAAAD;EAAAC,EAAA,KAAAE;CAAA,OAAAA,KAAAF,EAAA;CAHE,MAAA,EAAAN,gBAAAU,IAAAT,oBAAAO;CAC/B,MAAAR,iBAAAU,OAAAD,KAAAA,IAAA,MAAAC;CAGA,MAAAC,MAAYd,OAAO;CACnB,MAAAe,WAAiBd,YAAYe,MAM5B;CACD,MAAAC,WAAiBhB,YAAYiB,MAAyB;CACtD,MAAAC,YAAkBlB,YAAYmB,MAA2B;CACzD,MAAAC,gBAAsBpB,YAAYqB,MAAsB;CAAE,IAAAC;CAAA,IAAAd,EAAA,OAAAK,OAAAL,EAAA,OAAAY,iBAAAZ,EAAA,OAAAN,kBAAAM,EAAA,OAAAL,mBAAAK,EAAA,OAAAU,WAAA;EAEjCI,WAAA;GACvB,IAAI,CAACnB,iBAAe;GAEpB,MAAAoB,cAAoBL,YAAAE,gBAA4BP,IAAGW,QAAS,CAAC,CAAAC,YAAa;GAC1E,IAAI,CAACF,aAAW;GAIhBlB,QAAOqB,QAASvB,gBAAgBoB,WAAW,CAAC,CAAC,CAAAI,WAC3C;IACEd,IAAGW,QAAS,CAAC,CAAAI,YAAa,IAAI;IAC9BC,iBAAiBhB,IAAGW,QAAS,CAAC,CAAAI,YAAa,KAAK,GAAG1B,cAAc;GAAC,GAEpE4B,MACF;EAAC;EACFtB,EAAA,KAAAK;EAAAL,EAAA,KAAAY;EAAAZ,EAAA,KAAAN;EAAAM,EAAA,KAAAL;EAAAK,EAAA,KAAAU;EAAAV,EAAA,KAAAc;CAAA,OAAAA,KAAAd,EAAA;CAfD,MAAAuB,OAAaT;CAiBY,MAAAU,KAAAlB,YAAA,CAAaX;CAAe,IAAA8B;CAAA,IAAAzB,EAAA,OAAAuB,QAAAvB,EAAA,OAAAQ,YAAAR,EAAA,QAAAwB,IAAA;EAA9CC,KAAA;GAAAF;GAAAjB,UAAkBkB;GAA4BhB;EAAW;EAACR,EAAA,KAAAuB;EAAAvB,EAAA,KAAAQ;EAAAR,EAAA,MAAAwB;EAAAxB,EAAA,MAAAyB;CAAA,OAAAA,KAAAzB,EAAA;CAAA,OAA1DyB;AAA0D;AAjCnC,SAAAC,MAAAC,GAAA;CAAA,OASEA,EAACC,SAAU,UAAUD,EAAC/B,KAAKiC,SAAU;AAAC;AATxC,SAAAtB,OAAAuB,GAAA;CAAA,OAMrB,GACJA,EAACd,QAAQe,SAAU,eAClBD,EAACd,QAAQgB,QAAaJ,SAAK,cAC7BE,EAACd,QAAQiB,MAAMC,KAAMR,KAA6C;AACnE;AAV2B,SAAAjB,OAAA0B,KAAA;CAAA,OAYML,IAACd,QAAQR;AAAS;AAZxB,SAAAG,OAAAyB,KAAA;CAAA,OAaON,IAACO,SAAS3B;AAAU;AAb3B,SAAAG,OAAAyB,KAAA;CAAA,OAcWR,IAACO,SAASzC;AAAK;AAd1B,SAAA0B,SAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useActionBarEdit.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarEdit.ts"],"mappings":";cAGa,gBAAA;EASZ,IAAA;EAAA,QAAA;AAAA"}
1
+ {"version":3,"file":"useActionBarEdit.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarEdit.ts"],"mappings":";cAGa;EAAA;EAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useActionBarFeedback.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarFeedback.ts"],"mappings":";cAGa,4BAAA;EAWZ,MAAA;EAAA,WAAA;AAAA;AAAA,cAEY,4BAAA;EAWZ,MAAA;EAAA,WAAA;AAAA"}
1
+ {"version":3,"file":"useActionBarFeedback.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarFeedback.ts"],"mappings":";cAGa;EAAA;EAAA;;cAaA;EAAA;EAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useActionBarReload.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarReload.ts"],"mappings":";cAGa,kBAAA;EAcZ,MAAA;EAAA,QAAA;AAAA"}
1
+ {"version":3,"file":"useActionBarReload.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarReload.ts"],"mappings":";cAGa;EAAA;EAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useActionBarSpeak.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarSpeak.ts"],"mappings":";cAGa,iBAAA;eAgBZ,OAAA"}
1
+ {"version":3,"file":"useActionBarSpeak.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarSpeak.ts"],"mappings":";cAGa;eAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useActionBarStopSpeaking.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarStopSpeaking.ts"],"mappings":";cAGa,wBAAA;EASZ,YAAA;EAAA,QAAA;AAAA"}
1
+ {"version":3,"file":"useActionBarStopSpeaking.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useActionBarStopSpeaking.ts"],"mappings":";cAGa;EAAA;EAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useBranchPickerNext.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useBranchPickerNext.ts"],"mappings":";cAGa,mBAAA;EAeZ,IAAA;EAAA,QAAA;AAAA"}
1
+ {"version":3,"file":"useBranchPickerNext.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useBranchPickerNext.ts"],"mappings":";cAGa;EAAA;EAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useBranchPickerPrevious.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useBranchPickerPrevious.ts"],"mappings":";cAGa,uBAAA;EAeZ,QAAA;EAAA,QAAA;AAAA"}
1
+ {"version":3,"file":"useBranchPickerPrevious.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useBranchPickerPrevious.ts"],"mappings":";cAGa;EAAA;EAAA"}
@@ -1,5 +1,4 @@
1
1
  import { CreateAttachment } from "../../types/attachment.js";
2
-
3
2
  //#region src/react/primitive-hooks/useComposerAddAttachment.d.ts
4
3
  declare const useComposerAddAttachment: () => {
5
4
  addAttachment: (file: File | CreateAttachment) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"useComposerAddAttachment.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useComposerAddAttachment.ts"],"mappings":";;;cAIa,wBAAA;wBAKF,IAAA,GAAO,gBAAA,KAAgB,OAAA"}
1
+ {"version":3,"file":"useComposerAddAttachment.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useComposerAddAttachment.ts"],"mappings":";;cAIa;EAKF,gBAAA,MAAA,OAAO,qBAAgB"}
@@ -1 +1 @@
1
- {"version":3,"file":"useComposerCancel.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useComposerCancel.ts"],"mappings":";cAGa,iBAAA;EASZ,MAAA;EAAA,QAAA;AAAA"}
1
+ {"version":3,"file":"useComposerCancel.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useComposerCancel.ts"],"mappings":";cAGa;EAAA;EAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useComposerDictate.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useComposerDictate.ts"],"mappings":";cAGa,kBAAA;EAcZ,cAAA;EAAA,QAAA;AAAA"}
1
+ {"version":3,"file":"useComposerDictate.d.ts","names":[],"sources":["../../../src/react/primitive-hooks/useComposerDictate.ts"],"mappings":";cAGa;EAAA;EAAA"}
@@ -1,5 +1,4 @@
1
1
  import { ComposerSendOptions } from "../../store/scopes/composer.js";
2
-
3
2
  //#region src/react/primitive-hooks/useComposerSend.d.ts
4
3
  declare const useComposerSend: () => {
5
4
  send: (opts?: ComposerSendOptions) => void;