@assistant-ui/core 0.3.19 → 0.3.21

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 (934) hide show
  1. package/dist/adapters/attachment.d.ts +50 -43
  2. package/dist/adapters/attachment.d.ts.map +1 -1
  3. package/dist/adapters/attachment.js +52 -21
  4. package/dist/adapters/attachment.js.map +1 -1
  5. package/dist/adapters/directive-formatter.d.ts +2 -5
  6. package/dist/adapters/directive-formatter.d.ts.map +1 -1
  7. package/dist/adapters/feedback.d.ts +7 -8
  8. package/dist/adapters/feedback.d.ts.map +1 -1
  9. package/dist/adapters/index.d.ts +14 -9
  10. package/dist/adapters/index.d.ts.map +1 -0
  11. package/dist/adapters/index.js +1 -1
  12. package/dist/adapters/speech.d.ts +63 -65
  13. package/dist/adapters/speech.d.ts.map +1 -1
  14. package/dist/adapters/speech.js +16 -2
  15. package/dist/adapters/speech.js.map +1 -1
  16. package/dist/adapters/suggestion.d.ts +19 -22
  17. package/dist/adapters/suggestion.d.ts.map +1 -1
  18. package/dist/adapters/thread-history.d.ts +60 -58
  19. package/dist/adapters/thread-history.d.ts.map +1 -1
  20. package/dist/adapters/trigger.d.ts +8 -11
  21. package/dist/adapters/trigger.d.ts.map +1 -1
  22. package/dist/adapters/voice.d.ts +50 -45
  23. package/dist/adapters/voice.d.ts.map +1 -1
  24. package/dist/adapters/voice.js +17 -3
  25. package/dist/adapters/voice.js.map +1 -1
  26. package/dist/index.d.ts +70 -56
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +6 -6
  29. package/dist/index.js.map +1 -1
  30. package/dist/internal/duplicate-detection.d.ts +1 -4
  31. package/dist/internal/duplicate-detection.d.ts.map +1 -1
  32. package/dist/internal.d.ts +27 -58
  33. package/dist/internal.d.ts.map +1 -0
  34. package/dist/internal.js +8 -6
  35. package/dist/model-context/frame/host.d.ts +20 -23
  36. package/dist/model-context/frame/host.d.ts.map +1 -1
  37. package/dist/model-context/frame/host.js +3 -1
  38. package/dist/model-context/frame/host.js.map +1 -1
  39. package/dist/model-context/frame/provider.d.ts +28 -30
  40. package/dist/model-context/frame/provider.d.ts.map +1 -1
  41. package/dist/model-context/frame/provider.js +6 -0
  42. package/dist/model-context/frame/provider.js.map +1 -1
  43. package/dist/model-context/frame/types.d.ts +24 -27
  44. package/dist/model-context/frame/types.d.ts.map +1 -1
  45. package/dist/model-context/frame/validate.d.ts +3 -0
  46. package/dist/model-context/frame/validate.d.ts.map +1 -0
  47. package/dist/model-context/frame/validate.js +26 -0
  48. package/dist/model-context/frame/validate.js.map +1 -0
  49. package/dist/model-context/interactable-composer-metadata.d.ts +51 -39
  50. package/dist/model-context/interactable-composer-metadata.d.ts.map +1 -1
  51. package/dist/model-context/interactable-composer-metadata.js +30 -6
  52. package/dist/model-context/interactable-composer-metadata.js.map +1 -1
  53. package/dist/model-context/registry-handles.d.ts +9 -12
  54. package/dist/model-context/registry-handles.d.ts.map +1 -1
  55. package/dist/model-context/registry.d.ts +15 -18
  56. package/dist/model-context/registry.d.ts.map +1 -1
  57. package/dist/model-context/tool-call-text.d.ts +15 -17
  58. package/dist/model-context/tool-call-text.d.ts.map +1 -1
  59. package/dist/model-context/tool.d.ts +12 -14
  60. package/dist/model-context/tool.d.ts.map +1 -1
  61. package/dist/model-context/types.d.ts +40 -43
  62. package/dist/model-context/types.d.ts.map +1 -1
  63. package/dist/react/AssistantProvider.d.ts +9 -12
  64. package/dist/react/AssistantProvider.d.ts.map +1 -1
  65. package/dist/react/AssistantRuntimeProvider.d.ts +23 -26
  66. package/dist/react/AssistantRuntimeProvider.d.ts.map +1 -1
  67. package/dist/react/RuntimeAdapter.d.ts +4 -8
  68. package/dist/react/RuntimeAdapter.d.ts.map +1 -1
  69. package/dist/react/adapters/LocalStorageThreadListAdapter.d.ts +28 -23
  70. package/dist/react/adapters/LocalStorageThreadListAdapter.d.ts.map +1 -1
  71. package/dist/react/adapters/LocalStorageThreadListAdapter.js +77 -58
  72. package/dist/react/adapters/LocalStorageThreadListAdapter.js.map +1 -1
  73. package/dist/react/adapters/TitleGenerationAdapter.d.ts +4 -7
  74. package/dist/react/adapters/TitleGenerationAdapter.d.ts.map +1 -1
  75. package/dist/react/client/AdaptedRemoteThread.d.ts +6 -9
  76. package/dist/react/client/AdaptedRemoteThread.d.ts.map +1 -1
  77. package/dist/react/client/DataRenderers.d.ts +2 -5
  78. package/dist/react/client/DataRenderers.d.ts.map +1 -1
  79. package/dist/react/client/InMemoryThreadList.d.ts +9 -12
  80. package/dist/react/client/InMemoryThreadList.d.ts.map +1 -1
  81. package/dist/react/client/Interactables.d.ts +3 -6
  82. package/dist/react/client/Interactables.d.ts.map +1 -1
  83. package/dist/react/client/Interactables.js +306 -101
  84. package/dist/react/client/Interactables.js.map +1 -1
  85. package/dist/react/client/RemoteThreadList.d.ts +34 -37
  86. package/dist/react/client/RemoteThreadList.d.ts.map +1 -1
  87. package/dist/react/client/RemoteThreadList.js +2 -1
  88. package/dist/react/client/RemoteThreadList.js.map +1 -1
  89. package/dist/react/client/Tools.d.ts +10 -12
  90. package/dist/react/client/Tools.d.ts.map +1 -1
  91. package/dist/react/client/Tools.js +4 -8
  92. package/dist/react/client/Tools.js.map +1 -1
  93. package/dist/react/client/interactable-model-context.d.ts +9 -11
  94. package/dist/react/client/interactable-model-context.d.ts.map +1 -1
  95. package/dist/react/client/interactable-model-context.js +32 -22
  96. package/dist/react/client/interactable-model-context.js.map +1 -1
  97. package/dist/react/index.d.ts +160 -122
  98. package/dist/react/index.d.ts.map +1 -0
  99. package/dist/react/index.js +5 -5
  100. package/dist/react/interactables-legacy/Interactables.d.ts +2 -5
  101. package/dist/react/interactables-legacy/Interactables.d.ts.map +1 -1
  102. package/dist/react/interactables-legacy/Interactables.js +15 -8
  103. package/dist/react/interactables-legacy/Interactables.js.map +1 -1
  104. package/dist/react/interactables-legacy/interactable-model-context.d.ts +6 -9
  105. package/dist/react/interactables-legacy/interactable-model-context.d.ts.map +1 -1
  106. package/dist/react/interactables-legacy/interactable-model-context.js +13 -14
  107. package/dist/react/interactables-legacy/interactable-model-context.js.map +1 -1
  108. package/dist/react/interactables-legacy/scopes.d.ts +42 -46
  109. package/dist/react/interactables-legacy/scopes.d.ts.map +1 -1
  110. package/dist/react/interactables-legacy/useAssistantInteractable.d.ts +8 -11
  111. package/dist/react/interactables-legacy/useAssistantInteractable.d.ts.map +1 -1
  112. package/dist/react/interactables-legacy/useInteractableState.d.ts +7 -9
  113. package/dist/react/interactables-legacy/useInteractableState.d.ts.map +1 -1
  114. package/dist/react/interactables-shared/useInteractablePersistenceQueue.d.ts +23 -14
  115. package/dist/react/interactables-shared/useInteractablePersistenceQueue.d.ts.map +1 -1
  116. package/dist/react/interactables-shared/useInteractablePersistenceQueue.js +54 -25
  117. package/dist/react/interactables-shared/useInteractablePersistenceQueue.js.map +1 -1
  118. package/dist/react/model-context/define-mcp-toolkit.d.ts +15 -18
  119. package/dist/react/model-context/define-mcp-toolkit.d.ts.map +1 -1
  120. package/dist/react/model-context/define-toolkit.d.ts +13 -6
  121. package/dist/react/model-context/define-toolkit.d.ts.map +1 -1
  122. package/dist/react/model-context/external-tool.d.ts +1 -4
  123. package/dist/react/model-context/external-tool.d.ts.map +1 -1
  124. package/dist/react/model-context/human-tool.d.ts +3 -6
  125. package/dist/react/model-context/human-tool.d.ts.map +1 -1
  126. package/dist/react/model-context/interactableTool.d.ts +26 -29
  127. package/dist/react/model-context/interactableTool.d.ts.map +1 -1
  128. package/dist/react/model-context/makeAssistantDataUI.d.ts +6 -9
  129. package/dist/react/model-context/makeAssistantDataUI.d.ts.map +1 -1
  130. package/dist/react/model-context/makeAssistantTool.d.ts +6 -9
  131. package/dist/react/model-context/makeAssistantTool.d.ts.map +1 -1
  132. package/dist/react/model-context/makeAssistantToolUI.d.ts +6 -9
  133. package/dist/react/model-context/makeAssistantToolUI.d.ts.map +1 -1
  134. package/dist/react/model-context/provider-tool.d.ts +5 -7
  135. package/dist/react/model-context/provider-tool.d.ts.map +1 -1
  136. package/dist/react/model-context/stub-tool.d.ts +1 -4
  137. package/dist/react/model-context/stub-tool.d.ts.map +1 -1
  138. package/dist/react/model-context/toolbox.d.ts +44 -32
  139. package/dist/react/model-context/toolbox.d.ts.map +1 -1
  140. package/dist/react/model-context/useAssistantContext.d.ts +3 -6
  141. package/dist/react/model-context/useAssistantContext.d.ts.map +1 -1
  142. package/dist/react/model-context/useAssistantDataUI.d.ts +7 -10
  143. package/dist/react/model-context/useAssistantDataUI.d.ts.map +1 -1
  144. package/dist/react/model-context/useAssistantInstructions.d.ts +3 -6
  145. package/dist/react/model-context/useAssistantInstructions.d.ts.map +1 -1
  146. package/dist/react/model-context/useAssistantTool.d.ts +9 -13
  147. package/dist/react/model-context/useAssistantTool.d.ts.map +1 -1
  148. package/dist/react/model-context/useAssistantToolUI.d.ts +13 -16
  149. package/dist/react/model-context/useAssistantToolUI.d.ts.map +1 -1
  150. package/dist/react/model-context/useAuiToolOverrides.d.ts +3 -5
  151. package/dist/react/model-context/useAuiToolOverrides.d.ts.map +1 -1
  152. package/dist/react/model-context/useInlineRender.d.ts +3 -6
  153. package/dist/react/model-context/useInlineRender.d.ts.map +1 -1
  154. package/dist/react/model-context/useInteractable.d.ts +40 -40
  155. package/dist/react/model-context/useInteractable.d.ts.map +1 -1
  156. package/dist/react/model-context/useInteractableState.d.ts +10 -9
  157. package/dist/react/model-context/useInteractableState.d.ts.map +1 -1
  158. package/dist/react/model-context/useInteractableVersions.d.ts +4 -7
  159. package/dist/react/model-context/useInteractableVersions.d.ts.map +1 -1
  160. package/dist/react/model-context/useToolArgsStatus.d.ts +7 -9
  161. package/dist/react/model-context/useToolArgsStatus.d.ts.map +1 -1
  162. package/dist/react/primitive-hooks/useActionBarCopy.d.ts +7 -10
  163. package/dist/react/primitive-hooks/useActionBarCopy.d.ts.map +1 -1
  164. package/dist/react/primitive-hooks/useActionBarEdit.d.ts +3 -6
  165. package/dist/react/primitive-hooks/useActionBarEdit.d.ts.map +1 -1
  166. package/dist/react/primitive-hooks/useActionBarFeedback.d.ts +6 -9
  167. package/dist/react/primitive-hooks/useActionBarFeedback.d.ts.map +1 -1
  168. package/dist/react/primitive-hooks/useActionBarReload.d.ts +3 -6
  169. package/dist/react/primitive-hooks/useActionBarReload.d.ts.map +1 -1
  170. package/dist/react/primitive-hooks/useActionBarSpeak.d.ts +3 -6
  171. package/dist/react/primitive-hooks/useActionBarSpeak.d.ts.map +1 -1
  172. package/dist/react/primitive-hooks/useActionBarStopSpeaking.d.ts +3 -6
  173. package/dist/react/primitive-hooks/useActionBarStopSpeaking.d.ts.map +1 -1
  174. package/dist/react/primitive-hooks/useBranchPickerNext.d.ts +3 -6
  175. package/dist/react/primitive-hooks/useBranchPickerNext.d.ts.map +1 -1
  176. package/dist/react/primitive-hooks/useBranchPickerPrevious.d.ts +3 -6
  177. package/dist/react/primitive-hooks/useBranchPickerPrevious.d.ts.map +1 -1
  178. package/dist/react/primitive-hooks/useComposerAddAttachment.d.ts +4 -7
  179. package/dist/react/primitive-hooks/useComposerAddAttachment.d.ts.map +1 -1
  180. package/dist/react/primitive-hooks/useComposerCancel.d.ts +3 -6
  181. package/dist/react/primitive-hooks/useComposerCancel.d.ts.map +1 -1
  182. package/dist/react/primitive-hooks/useComposerDictate.d.ts +3 -6
  183. package/dist/react/primitive-hooks/useComposerDictate.d.ts.map +1 -1
  184. package/dist/react/primitive-hooks/useComposerSend.d.ts +4 -7
  185. package/dist/react/primitive-hooks/useComposerSend.d.ts.map +1 -1
  186. package/dist/react/primitive-hooks/useEditComposerCancel.d.ts +2 -5
  187. package/dist/react/primitive-hooks/useEditComposerCancel.d.ts.map +1 -1
  188. package/dist/react/primitive-hooks/useEditComposerSend.d.ts +3 -6
  189. package/dist/react/primitive-hooks/useEditComposerSend.d.ts.map +1 -1
  190. package/dist/react/primitive-hooks/useMessageBranching.d.ts +5 -8
  191. package/dist/react/primitive-hooks/useMessageBranching.d.ts.map +1 -1
  192. package/dist/react/primitive-hooks/useMessageError.d.ts +1 -4
  193. package/dist/react/primitive-hooks/useMessageError.d.ts.map +1 -1
  194. package/dist/react/primitive-hooks/useMessageReload.d.ts +3 -6
  195. package/dist/react/primitive-hooks/useMessageReload.d.ts.map +1 -1
  196. package/dist/react/primitive-hooks/useSuggestionTrigger.d.ts +7 -10
  197. package/dist/react/primitive-hooks/useSuggestionTrigger.d.ts.map +1 -1
  198. package/dist/react/primitive-hooks/useSuggestionTrigger.js +4 -4
  199. package/dist/react/primitive-hooks/useSuggestionTrigger.js.map +1 -1
  200. package/dist/react/primitive-hooks/useThreadIsEmpty.d.ts +1 -4
  201. package/dist/react/primitive-hooks/useThreadIsEmpty.d.ts.map +1 -1
  202. package/dist/react/primitive-hooks/useThreadIsRunning.d.ts +1 -4
  203. package/dist/react/primitive-hooks/useThreadIsRunning.d.ts.map +1 -1
  204. package/dist/react/primitive-hooks/useThreadListItemArchive.d.ts +2 -5
  205. package/dist/react/primitive-hooks/useThreadListItemArchive.d.ts.map +1 -1
  206. package/dist/react/primitive-hooks/useThreadListItemDelete.d.ts +2 -5
  207. package/dist/react/primitive-hooks/useThreadListItemDelete.d.ts.map +1 -1
  208. package/dist/react/primitive-hooks/useThreadListItemTrigger.d.ts +2 -5
  209. package/dist/react/primitive-hooks/useThreadListItemTrigger.d.ts.map +1 -1
  210. package/dist/react/primitive-hooks/useThreadListItemUnarchive.d.ts +2 -5
  211. package/dist/react/primitive-hooks/useThreadListItemUnarchive.d.ts.map +1 -1
  212. package/dist/react/primitive-hooks/useThreadListLoadMore.d.ts +3 -6
  213. package/dist/react/primitive-hooks/useThreadListLoadMore.d.ts.map +1 -1
  214. package/dist/react/primitive-hooks/useThreadListNew.d.ts +2 -5
  215. package/dist/react/primitive-hooks/useThreadListNew.d.ts.map +1 -1
  216. package/dist/react/primitive-hooks/useThreadMessageIds.d.ts +1 -4
  217. package/dist/react/primitive-hooks/useThreadMessageIds.d.ts.map +1 -1
  218. package/dist/react/primitive-hooks/useThreadMessages.d.ts +2 -5
  219. package/dist/react/primitive-hooks/useThreadMessages.d.ts.map +1 -1
  220. package/dist/react/primitive-hooks/useVoice.d.ts +8 -11
  221. package/dist/react/primitive-hooks/useVoice.d.ts.map +1 -1
  222. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.d.ts +27 -29
  223. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.d.ts.map +1 -1
  224. package/dist/react/primitives/composer/ComposerAttachments.d.ts +26 -28
  225. package/dist/react/primitives/composer/ComposerAttachments.d.ts.map +1 -1
  226. package/dist/react/primitives/composer/ComposerIf.d.ts +13 -13
  227. package/dist/react/primitives/composer/ComposerIf.d.ts.map +1 -1
  228. package/dist/react/primitives/composer/ComposerQueue.d.ts +13 -17
  229. package/dist/react/primitives/composer/ComposerQueue.d.ts.map +1 -1
  230. package/dist/react/primitives/generativeUI/GenerativeUI.d.ts +30 -33
  231. package/dist/react/primitives/generativeUI/GenerativeUI.d.ts.map +1 -1
  232. package/dist/react/primitives/generativeUI/GenerativeUI.js +42 -33
  233. package/dist/react/primitives/generativeUI/GenerativeUI.js.map +1 -1
  234. package/dist/react/primitives/message/MessageAttachments.d.ts +30 -28
  235. package/dist/react/primitives/message/MessageAttachments.d.ts.map +1 -1
  236. package/dist/react/primitives/message/MessageAttachments.js +14 -15
  237. package/dist/react/primitives/message/MessageAttachments.js.map +1 -1
  238. package/dist/react/primitives/message/MessageGroupedParts.d.ts +122 -120
  239. package/dist/react/primitives/message/MessageGroupedParts.d.ts.map +1 -1
  240. package/dist/react/primitives/message/MessageGroupedParts.js +3 -3
  241. package/dist/react/primitives/message/MessageGroupedParts.js.map +1 -1
  242. package/dist/react/primitives/message/MessageParts.d.ts +208 -194
  243. package/dist/react/primitives/message/MessageParts.d.ts.map +1 -1
  244. package/dist/react/primitives/message/MessageParts.js +124 -82
  245. package/dist/react/primitives/message/MessageParts.js.map +1 -1
  246. package/dist/react/primitives/message/MessageQuote.d.ts +8 -11
  247. package/dist/react/primitives/message/MessageQuote.d.ts.map +1 -1
  248. package/dist/react/primitives/messagePart/MessagePartInProgress.d.ts +4 -7
  249. package/dist/react/primitives/messagePart/MessagePartInProgress.d.ts.map +1 -1
  250. package/dist/react/primitives/part/PartMessages.d.ts +16 -19
  251. package/dist/react/primitives/part/PartMessages.d.ts.map +1 -1
  252. package/dist/react/primitives/thread/ThreadMessages.d.ts +61 -64
  253. package/dist/react/primitives/thread/ThreadMessages.d.ts.map +1 -1
  254. package/dist/react/primitives/thread/ThreadSuggestions.d.ts +25 -27
  255. package/dist/react/primitives/thread/ThreadSuggestions.d.ts.map +1 -1
  256. package/dist/react/primitives/thread/ThreadSuggestions.js +24 -5
  257. package/dist/react/primitives/thread/ThreadSuggestions.js.map +1 -1
  258. package/dist/react/primitives/threadList/ThreadListItems.d.ts +26 -28
  259. package/dist/react/primitives/threadList/ThreadListItems.d.ts.map +1 -1
  260. package/dist/react/primitives/threadListItem/ThreadListItemTitle.d.ts +6 -9
  261. package/dist/react/primitives/threadListItem/ThreadListItemTitle.d.ts.map +1 -1
  262. package/dist/react/providers/AttachmentByIndexProvider.d.ts +5 -8
  263. package/dist/react/providers/AttachmentByIndexProvider.d.ts.map +1 -1
  264. package/dist/react/providers/ChainOfThoughtByIndicesProvider.d.ts +4 -7
  265. package/dist/react/providers/ChainOfThoughtByIndicesProvider.d.ts.map +1 -1
  266. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.d.ts +3 -6
  267. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.d.ts.map +1 -1
  268. package/dist/react/providers/MessageByIdProvider.d.ts +3 -6
  269. package/dist/react/providers/MessageByIdProvider.d.ts.map +1 -1
  270. package/dist/react/providers/MessageByIndexProvider.d.ts +3 -6
  271. package/dist/react/providers/MessageByIndexProvider.d.ts.map +1 -1
  272. package/dist/react/providers/PartByIndexProvider.d.ts +3 -6
  273. package/dist/react/providers/PartByIndexProvider.d.ts.map +1 -1
  274. package/dist/react/providers/QueueItemByIndexProvider.d.ts +4 -7
  275. package/dist/react/providers/QueueItemByIndexProvider.d.ts.map +1 -1
  276. package/dist/react/providers/ReadonlyThreadProvider.d.ts +7 -10
  277. package/dist/react/providers/ReadonlyThreadProvider.d.ts.map +1 -1
  278. package/dist/react/providers/ReadonlyThreadProvider.js.map +1 -1
  279. package/dist/react/providers/SuggestionByIndexProvider.d.ts +4 -7
  280. package/dist/react/providers/SuggestionByIndexProvider.d.ts.map +1 -1
  281. package/dist/react/providers/TextMessagePartProvider.d.ts +4 -7
  282. package/dist/react/providers/TextMessagePartProvider.d.ts.map +1 -1
  283. package/dist/react/providers/TextMessagePartProvider.js +5 -1
  284. package/dist/react/providers/TextMessagePartProvider.js.map +1 -1
  285. package/dist/react/providers/ThreadListItemByIndexProvider.d.ts +4 -7
  286. package/dist/react/providers/ThreadListItemByIndexProvider.d.ts.map +1 -1
  287. package/dist/react/providers/ThreadListItemRuntimeProvider.d.ts +4 -8
  288. package/dist/react/providers/ThreadListItemRuntimeProvider.d.ts.map +1 -1
  289. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.d.ts +210 -219
  290. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.d.ts.map +1 -1
  291. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.js +70 -46
  292. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.js.map +1 -1
  293. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.d.ts +186 -198
  294. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -1
  295. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.js +13 -4
  296. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
  297. package/dist/react/runtimes/RemoteThreadResource.d.ts +17 -23
  298. package/dist/react/runtimes/RemoteThreadResource.d.ts.map +1 -1
  299. package/dist/react/runtimes/RemoteThreadResource.js +3 -1
  300. package/dist/react/runtimes/RemoteThreadResource.js.map +1 -1
  301. package/dist/react/runtimes/RuntimeAdapterProvider.d.ts +10 -11
  302. package/dist/react/runtimes/RuntimeAdapterProvider.d.ts.map +1 -1
  303. package/dist/react/runtimes/assistant-transport/commandQueue.d.ts +11 -14
  304. package/dist/react/runtimes/assistant-transport/commandQueue.d.ts.map +1 -1
  305. package/dist/react/runtimes/assistant-transport/replayBoundaryStream.d.ts +6 -8
  306. package/dist/react/runtimes/assistant-transport/replayBoundaryStream.d.ts.map +1 -1
  307. package/dist/react/runtimes/assistant-transport/replayBoundaryStream.js +9 -2
  308. package/dist/react/runtimes/assistant-transport/replayBoundaryStream.js.map +1 -1
  309. package/dist/react/runtimes/assistant-transport/runManager.d.ts +9 -12
  310. package/dist/react/runtimes/assistant-transport/runManager.d.ts.map +1 -1
  311. package/dist/react/runtimes/assistant-transport/runManager.js +4 -1
  312. package/dist/react/runtimes/assistant-transport/runManager.js.map +1 -1
  313. package/dist/react/runtimes/assistant-transport/types.d.ts +123 -118
  314. package/dist/react/runtimes/assistant-transport/types.d.ts.map +1 -1
  315. package/dist/react/runtimes/assistant-transport/useAssistantTransportRuntime.d.ts +7 -10
  316. package/dist/react/runtimes/assistant-transport/useAssistantTransportRuntime.d.ts.map +1 -1
  317. package/dist/react/runtimes/assistant-transport/useAssistantTransportRuntime.js +17 -6
  318. package/dist/react/runtimes/assistant-transport/useAssistantTransportRuntime.js.map +1 -1
  319. package/dist/react/runtimes/assistant-transport/useConvertedState.d.ts +3 -6
  320. package/dist/react/runtimes/assistant-transport/useConvertedState.d.ts.map +1 -1
  321. package/dist/react/runtimes/assistant-transport/useLatestRef.d.ts +2 -5
  322. package/dist/react/runtimes/assistant-transport/useLatestRef.d.ts.map +1 -1
  323. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.d.ts +7 -10
  324. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -1
  325. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.js +426 -216
  326. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
  327. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.d.ts +15 -18
  328. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.d.ts.map +1 -1
  329. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.js +8 -4
  330. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.js.map +1 -1
  331. package/dist/react/runtimes/cloud/auiV0.d.ts +146 -125
  332. package/dist/react/runtimes/cloud/auiV0.d.ts.map +1 -1
  333. package/dist/react/runtimes/cloud/auiV0.js +120 -8
  334. package/dist/react/runtimes/cloud/auiV0.js.map +1 -1
  335. package/dist/react/runtimes/cloud/createCloudThreadListAdapter.d.ts +13 -15
  336. package/dist/react/runtimes/cloud/createCloudThreadListAdapter.d.ts.map +1 -1
  337. package/dist/react/runtimes/cloud/createCloudThreadListAdapterCreateFallback.d.ts +5 -7
  338. package/dist/react/runtimes/cloud/createCloudThreadListAdapterCreateFallback.d.ts.map +1 -1
  339. package/dist/react/runtimes/cloud/sdkIdentity.d.ts +2 -5
  340. package/dist/react/runtimes/cloud/sdkIdentity.d.ts.map +1 -1
  341. package/dist/react/runtimes/cloud/sdkIdentity.js +1 -1
  342. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.d.ts +3 -6
  343. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.d.ts.map +1 -1
  344. package/dist/react/runtimes/cloud/useCloudThreadListRuntime.d.ts +9 -11
  345. package/dist/react/runtimes/cloud/useCloudThreadListRuntime.d.ts.map +1 -1
  346. package/dist/react/runtimes/createMessageConverter.d.ts +15 -19
  347. package/dist/react/runtimes/createMessageConverter.d.ts.map +1 -1
  348. package/dist/react/runtimes/createMessageConverter.js.map +1 -1
  349. package/dist/react/runtimes/createRuntimeExtras.d.ts +14 -17
  350. package/dist/react/runtimes/createRuntimeExtras.d.ts.map +1 -1
  351. package/dist/react/runtimes/external-message-converter.d.ts +17 -21
  352. package/dist/react/runtimes/external-message-converter.d.ts.map +1 -1
  353. package/dist/react/runtimes/external-store-history-copy.d.ts +25 -0
  354. package/dist/react/runtimes/external-store-history-copy.d.ts.map +1 -0
  355. package/dist/react/runtimes/external-store-history-copy.js +148 -0
  356. package/dist/react/runtimes/external-store-history-copy.js.map +1 -0
  357. package/dist/react/runtimes/useExternalStoreRuntime.d.ts +3 -6
  358. package/dist/react/runtimes/useExternalStoreRuntime.d.ts.map +1 -1
  359. package/dist/react/runtimes/useExternalStoreRuntime.js +72 -35
  360. package/dist/react/runtimes/useExternalStoreRuntime.js.map +1 -1
  361. package/dist/react/runtimes/useExternalStoreSharedOptions.d.ts +2 -5
  362. package/dist/react/runtimes/useExternalStoreSharedOptions.d.ts.map +1 -1
  363. package/dist/react/runtimes/useLocalRuntime.d.ts +29 -41
  364. package/dist/react/runtimes/useLocalRuntime.d.ts.map +1 -1
  365. package/dist/react/runtimes/useLocalRuntime.js +142 -34
  366. package/dist/react/runtimes/useLocalRuntime.js.map +1 -1
  367. package/dist/react/runtimes/useRemoteThreadListRuntime.d.ts +3 -6
  368. package/dist/react/runtimes/useRemoteThreadListRuntime.d.ts.map +1 -1
  369. package/dist/react/runtimes/useRemoteThreadListRuntime.js +2 -2
  370. package/dist/react/runtimes/useRemoteThreadListRuntime.js.map +1 -1
  371. package/dist/react/runtimes/useRuntimeAdapters.d.ts +5 -7
  372. package/dist/react/runtimes/useRuntimeAdapters.d.ts.map +1 -1
  373. package/dist/react/runtimes/useStreamingTiming.d.ts +4 -6
  374. package/dist/react/runtimes/useStreamingTiming.d.ts.map +1 -1
  375. package/dist/react/types/MessagePartComponentTypes.d.ts +72 -70
  376. package/dist/react/types/MessagePartComponentTypes.d.ts.map +1 -1
  377. package/dist/react/types/scopes/dataRenderers.d.ts +11 -15
  378. package/dist/react/types/scopes/dataRenderers.d.ts.map +1 -1
  379. package/dist/react/types/scopes/interactables.d.ts +60 -60
  380. package/dist/react/types/scopes/interactables.d.ts.map +1 -1
  381. package/dist/react/types/scopes/tools.d.ts +21 -24
  382. package/dist/react/types/scopes/tools.d.ts.map +1 -1
  383. package/dist/react/types/store-augmentation.d.ts +10 -11
  384. package/dist/react/types/store-augmentation.d.ts.map +1 -1
  385. package/dist/react/utils/getMessageQuote.d.ts +6 -8
  386. package/dist/react/utils/getMessageQuote.d.ts.map +1 -1
  387. package/dist/react/utils/groupParts.d.ts +35 -37
  388. package/dist/react/utils/groupParts.d.ts.map +1 -1
  389. package/dist/react/utils/useJSONEqual.d.ts +3 -6
  390. package/dist/react/utils/useJSONEqual.d.ts.map +1 -1
  391. package/dist/react/utils/useJSONSchemaDependency.d.ts +3 -6
  392. package/dist/react/utils/useJSONSchemaDependency.d.ts.map +1 -1
  393. package/dist/runtime/api/assistant-runtime.d.ts +28 -31
  394. package/dist/runtime/api/assistant-runtime.d.ts.map +1 -1
  395. package/dist/runtime/api/attachment-runtime.d.ts +51 -49
  396. package/dist/runtime/api/attachment-runtime.d.ts.map +1 -1
  397. package/dist/runtime/api/attachment-runtime.js.map +1 -1
  398. package/dist/runtime/api/bindings.d.ts +35 -35
  399. package/dist/runtime/api/bindings.d.ts.map +1 -1
  400. package/dist/runtime/api/composer-runtime.d.ts +215 -201
  401. package/dist/runtime/api/composer-runtime.d.ts.map +1 -1
  402. package/dist/runtime/api/composer-runtime.js +4 -0
  403. package/dist/runtime/api/composer-runtime.js.map +1 -1
  404. package/dist/runtime/api/message-part-runtime.d.ts +31 -30
  405. package/dist/runtime/api/message-part-runtime.d.ts.map +1 -1
  406. package/dist/runtime/api/message-part-runtime.js +25 -2
  407. package/dist/runtime/api/message-part-runtime.js.map +1 -1
  408. package/dist/runtime/api/message-runtime.d.ts +87 -82
  409. package/dist/runtime/api/message-runtime.d.ts.map +1 -1
  410. package/dist/runtime/api/message-runtime.js +4 -3
  411. package/dist/runtime/api/message-runtime.js.map +1 -1
  412. package/dist/runtime/api/paths.d.ts +54 -57
  413. package/dist/runtime/api/paths.d.ts.map +1 -1
  414. package/dist/runtime/api/thread-list-item-runtime.d.ts +70 -72
  415. package/dist/runtime/api/thread-list-item-runtime.d.ts.map +1 -1
  416. package/dist/runtime/api/thread-list-item-runtime.js.map +1 -1
  417. package/dist/runtime/api/thread-list-runtime.d.ts +77 -81
  418. package/dist/runtime/api/thread-list-runtime.d.ts.map +1 -1
  419. package/dist/runtime/api/thread-list-runtime.js.map +1 -1
  420. package/dist/runtime/api/thread-runtime.d.ts +306 -308
  421. package/dist/runtime/api/thread-runtime.d.ts.map +1 -1
  422. package/dist/runtime/api/thread-runtime.js +2 -1
  423. package/dist/runtime/api/thread-runtime.js.map +1 -1
  424. package/dist/runtime/base/base-assistant-runtime-core.d.ts +9 -12
  425. package/dist/runtime/base/base-assistant-runtime-core.d.ts.map +1 -1
  426. package/dist/runtime/base/base-composer-runtime-core.d.ts +150 -101
  427. package/dist/runtime/base/base-composer-runtime-core.d.ts.map +1 -1
  428. package/dist/runtime/base/base-composer-runtime-core.js +400 -122
  429. package/dist/runtime/base/base-composer-runtime-core.js.map +1 -1
  430. package/dist/runtime/base/base-thread-runtime-core.d.ts +121 -104
  431. package/dist/runtime/base/base-thread-runtime-core.d.ts.map +1 -1
  432. package/dist/runtime/base/base-thread-runtime-core.js +174 -62
  433. package/dist/runtime/base/base-thread-runtime-core.js.map +1 -1
  434. package/dist/runtime/base/default-edit-composer-runtime-core.d.ts +30 -31
  435. package/dist/runtime/base/default-edit-composer-runtime-core.d.ts.map +1 -1
  436. package/dist/runtime/base/default-edit-composer-runtime-core.js +21 -2
  437. package/dist/runtime/base/default-edit-composer-runtime-core.js.map +1 -1
  438. package/dist/runtime/base/default-thread-composer-runtime-core.d.ts +28 -31
  439. package/dist/runtime/base/default-thread-composer-runtime-core.d.ts.map +1 -1
  440. package/dist/runtime/base/default-thread-composer-runtime-core.js +23 -2
  441. package/dist/runtime/base/default-thread-composer-runtime-core.js.map +1 -1
  442. package/dist/runtime/branch/external-thread-branch-adapter.d.ts +15 -18
  443. package/dist/runtime/branch/external-thread-branch-adapter.d.ts.map +1 -1
  444. package/dist/runtime/interfaces/assistant-runtime-core.d.ts +8 -11
  445. package/dist/runtime/interfaces/assistant-runtime-core.d.ts.map +1 -1
  446. package/dist/runtime/interfaces/composer-runtime-core.d.ts +98 -83
  447. package/dist/runtime/interfaces/composer-runtime-core.d.ts.map +1 -1
  448. package/dist/runtime/interfaces/thread-list-runtime-core.d.ts +67 -70
  449. package/dist/runtime/interfaces/thread-list-runtime-core.d.ts.map +1 -1
  450. package/dist/runtime/interfaces/thread-runtime-core.d.ts +225 -211
  451. package/dist/runtime/interfaces/thread-runtime-core.d.ts.map +1 -1
  452. package/dist/runtime/internal.d.ts +25 -20
  453. package/dist/runtime/internal.d.ts.map +1 -0
  454. package/dist/runtime/queue/external-thread-queue-adapter.d.ts +37 -40
  455. package/dist/runtime/queue/external-thread-queue-adapter.d.ts.map +1 -1
  456. package/dist/runtime/queue/message-queue.d.ts +32 -33
  457. package/dist/runtime/queue/message-queue.d.ts.map +1 -1
  458. package/dist/runtime/queue/message-queue.js +10 -2
  459. package/dist/runtime/queue/message-queue.js.map +1 -1
  460. package/dist/runtime/queue/queue-item.d.ts +7 -10
  461. package/dist/runtime/queue/queue-item.d.ts.map +1 -1
  462. package/dist/runtime/utils/abortable-thread-load.d.ts +9 -11
  463. package/dist/runtime/utils/abortable-thread-load.d.ts.map +1 -1
  464. package/dist/runtime/utils/attachment-add-operations.d.ts +16 -15
  465. package/dist/runtime/utils/attachment-add-operations.d.ts.map +1 -1
  466. package/dist/runtime/utils/attachment-add-operations.js +24 -2
  467. package/dist/runtime/utils/attachment-add-operations.js.map +1 -1
  468. package/dist/runtime/utils/attachment-send-operations.d.ts +12 -0
  469. package/dist/runtime/utils/attachment-send-operations.d.ts.map +1 -0
  470. package/dist/runtime/utils/attachment-send-operations.js +34 -0
  471. package/dist/runtime/utils/attachment-send-operations.js.map +1 -0
  472. package/dist/runtime/utils/auto-status.d.ts +11 -13
  473. package/dist/runtime/utils/auto-status.d.ts.map +1 -1
  474. package/dist/runtime/utils/auto-status.js +3 -5
  475. package/dist/runtime/utils/auto-status.js.map +1 -1
  476. package/dist/runtime/utils/chat-model-adapter.d.ts +31 -33
  477. package/dist/runtime/utils/chat-model-adapter.d.ts.map +1 -1
  478. package/dist/runtime/utils/external-message-conversion.d.ts +47 -48
  479. package/dist/runtime/utils/external-message-conversion.d.ts.map +1 -1
  480. package/dist/runtime/utils/external-message-conversion.js +6 -5
  481. package/dist/runtime/utils/external-message-conversion.js.map +1 -1
  482. package/dist/runtime/utils/external-store-message.d.ts +6 -9
  483. package/dist/runtime/utils/external-store-message.d.ts.map +1 -1
  484. package/dist/runtime/utils/message-repository-session.d.ts +24 -27
  485. package/dist/runtime/utils/message-repository-session.d.ts.map +1 -1
  486. package/dist/runtime/utils/message-repository.d.ts +52 -54
  487. package/dist/runtime/utils/message-repository.d.ts.map +1 -1
  488. package/dist/runtime/utils/message-repository.js +8 -7
  489. package/dist/runtime/utils/message-repository.js.map +1 -1
  490. package/dist/runtime/utils/pending-tool-calls.d.ts +12 -14
  491. package/dist/runtime/utils/pending-tool-calls.d.ts.map +1 -1
  492. package/dist/runtime/utils/resolveToolApprovalResponse.d.ts +7 -10
  493. package/dist/runtime/utils/resolveToolApprovalResponse.d.ts.map +1 -1
  494. package/dist/runtime/utils/runtime-extras-brand.d.ts +6 -9
  495. package/dist/runtime/utils/runtime-extras-brand.d.ts.map +1 -1
  496. package/dist/runtime/utils/stored-message-parts.d.ts +21 -0
  497. package/dist/runtime/utils/stored-message-parts.d.ts.map +1 -0
  498. package/dist/runtime/utils/stored-message-parts.js +103 -0
  499. package/dist/runtime/utils/stored-message-parts.js.map +1 -0
  500. package/dist/runtime/utils/streaming-timing.d.ts +23 -26
  501. package/dist/runtime/utils/streaming-timing.d.ts.map +1 -1
  502. package/dist/runtime/utils/thread-message-like.d.ts +38 -34
  503. package/dist/runtime/utils/thread-message-like.d.ts.map +1 -1
  504. package/dist/runtime/utils/thread-message-like.js +16 -6
  505. package/dist/runtime/utils/thread-message-like.js.map +1 -1
  506. package/dist/runtime/utils/thread-runtime-lifecycle.d.ts +5 -7
  507. package/dist/runtime/utils/thread-runtime-lifecycle.d.ts.map +1 -1
  508. package/dist/runtime/utils/thread-runtime-lifecycle.js +31 -4
  509. package/dist/runtime/utils/thread-runtime-lifecycle.js.map +1 -1
  510. package/dist/runtime/utils/tool-call-tree.d.ts +10 -13
  511. package/dist/runtime/utils/tool-call-tree.d.ts.map +1 -1
  512. package/dist/runtime/utils/tool-interactions.d.ts +10 -0
  513. package/dist/runtime/utils/tool-interactions.d.ts.map +1 -0
  514. package/dist/runtime/utils/tool-interactions.js +92 -0
  515. package/dist/runtime/utils/tool-interactions.js.map +1 -0
  516. package/dist/runtimes/assistant-transport/utils.d.ts +1 -4
  517. package/dist/runtimes/assistant-transport/utils.d.ts.map +1 -1
  518. package/dist/runtimes/external-store/external-store-adapter.d.ts +220 -200
  519. package/dist/runtimes/external-store/external-store-adapter.d.ts.map +1 -1
  520. package/dist/runtimes/external-store/external-store-runtime-core.d.ts +6 -8
  521. package/dist/runtimes/external-store/external-store-runtime-core.d.ts.map +1 -1
  522. package/dist/runtimes/external-store/external-store-runtime-core.js +4 -1
  523. package/dist/runtimes/external-store/external-store-runtime-core.js.map +1 -1
  524. package/dist/runtimes/external-store/external-store-shared-options.d.ts +3 -6
  525. package/dist/runtimes/external-store/external-store-shared-options.d.ts.map +1 -1
  526. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.d.ts +40 -43
  527. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.d.ts.map +1 -1
  528. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.js +2 -2
  529. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.js.map +1 -1
  530. package/dist/runtimes/external-store/external-store-thread-runtime-core.d.ts +119 -125
  531. package/dist/runtimes/external-store/external-store-thread-runtime-core.d.ts.map +1 -1
  532. package/dist/runtimes/external-store/external-store-thread-runtime-core.js +71 -18
  533. package/dist/runtimes/external-store/external-store-thread-runtime-core.js.map +1 -1
  534. package/dist/runtimes/external-store/thread-message-converter.d.ts +5 -8
  535. package/dist/runtimes/external-store/thread-message-converter.d.ts.map +1 -1
  536. package/dist/runtimes/inert/InertThreadRuntimeCore.d.ts +96 -98
  537. package/dist/runtimes/inert/InertThreadRuntimeCore.d.ts.map +1 -1
  538. package/dist/runtimes/inert/InertThreadRuntimeCore.js +3 -0
  539. package/dist/runtimes/inert/InertThreadRuntimeCore.js.map +1 -1
  540. package/dist/runtimes/internal.d.ts +20 -16
  541. package/dist/runtimes/internal.d.ts.map +1 -0
  542. package/dist/runtimes/local/local-runtime-core.d.ts +7 -10
  543. package/dist/runtimes/local/local-runtime-core.d.ts.map +1 -1
  544. package/dist/runtimes/local/local-runtime-options.d.ts +41 -44
  545. package/dist/runtimes/local/local-runtime-options.d.ts.map +1 -1
  546. package/dist/runtimes/local/local-thread-list-runtime-core.d.ts +42 -45
  547. package/dist/runtimes/local/local-thread-list-runtime-core.d.ts.map +1 -1
  548. package/dist/runtimes/local/local-thread-runtime-core.d.ts +94 -93
  549. package/dist/runtimes/local/local-thread-runtime-core.d.ts.map +1 -1
  550. package/dist/runtimes/local/local-thread-runtime-core.js +220 -29
  551. package/dist/runtimes/local/local-thread-runtime-core.js.map +1 -1
  552. package/dist/runtimes/local/should-continue.d.ts +2 -5
  553. package/dist/runtimes/local/should-continue.d.ts.map +1 -1
  554. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.d.ts +77 -55
  555. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.d.ts.map +1 -1
  556. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.js +28 -1
  557. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.js.map +1 -1
  558. package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts +12 -15
  559. package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts.map +1 -1
  560. package/dist/runtimes/remote-thread-list/adapter-changed.d.ts +3 -6
  561. package/dist/runtimes/remote-thread-list/adapter-changed.d.ts.map +1 -1
  562. package/dist/runtimes/remote-thread-list/empty-thread-core.d.ts +2 -5
  563. package/dist/runtimes/remote-thread-list/empty-thread-core.d.ts.map +1 -1
  564. package/dist/runtimes/remote-thread-list/optimistic-state.d.ts +34 -31
  565. package/dist/runtimes/remote-thread-list/optimistic-state.d.ts.map +1 -1
  566. package/dist/runtimes/remote-thread-list/optimistic-state.js +8 -3
  567. package/dist/runtimes/remote-thread-list/optimistic-state.js.map +1 -1
  568. package/dist/runtimes/remote-thread-list/remote-thread-state.d.ts +60 -63
  569. package/dist/runtimes/remote-thread-list/remote-thread-state.d.ts.map +1 -1
  570. package/dist/runtimes/remote-thread-list/remote-thread-state.js +1 -1
  571. package/dist/runtimes/remote-thread-list/title-generation.d.ts +31 -33
  572. package/dist/runtimes/remote-thread-list/title-generation.d.ts.map +1 -1
  573. package/dist/runtimes/remote-thread-list/title.d.ts +5 -8
  574. package/dist/runtimes/remote-thread-list/title.d.ts.map +1 -1
  575. package/dist/runtimes/remote-thread-list/types.d.ts +119 -121
  576. package/dist/runtimes/remote-thread-list/types.d.ts.map +1 -1
  577. package/dist/runtimes/tool-invocations/ToolInvocationTracker.d.ts +147 -149
  578. package/dist/runtimes/tool-invocations/ToolInvocationTracker.d.ts.map +1 -1
  579. package/dist/runtimes/tool-invocations/ToolInvocationTracker.js +22 -7
  580. package/dist/runtimes/tool-invocations/ToolInvocationTracker.js.map +1 -1
  581. package/dist/store/clients/chain-of-thought-client.d.ts +8 -11
  582. package/dist/store/clients/chain-of-thought-client.d.ts.map +1 -1
  583. package/dist/store/clients/external-thread.d.ts +56 -58
  584. package/dist/store/clients/external-thread.d.ts.map +1 -1
  585. package/dist/store/clients/external-thread.js +1270 -741
  586. package/dist/store/clients/external-thread.js.map +1 -1
  587. package/dist/store/clients/model-context-client.d.ts +2 -5
  588. package/dist/store/clients/model-context-client.d.ts.map +1 -1
  589. package/dist/store/clients/no-op-composer-client.d.ts +3 -6
  590. package/dist/store/clients/no-op-composer-client.d.ts.map +1 -1
  591. package/dist/store/clients/no-op-composer-client.js +3 -1
  592. package/dist/store/clients/no-op-composer-client.js.map +1 -1
  593. package/dist/store/clients/runtime-adapter.d.ts +2 -5
  594. package/dist/store/clients/runtime-adapter.d.ts.map +1 -1
  595. package/dist/store/clients/single-thread-list.d.ts +4 -6
  596. package/dist/store/clients/single-thread-list.d.ts.map +1 -1
  597. package/dist/store/clients/submission-message.d.ts +8 -0
  598. package/dist/store/clients/submission-message.d.ts.map +1 -0
  599. package/dist/store/clients/submission-message.js +22 -0
  600. package/dist/store/clients/submission-message.js.map +1 -0
  601. package/dist/store/clients/suggestions.d.ts +8 -11
  602. package/dist/store/clients/suggestions.d.ts.map +1 -1
  603. package/dist/store/clients/thread-message-client.d.ts +12 -12
  604. package/dist/store/clients/thread-message-client.d.ts.map +1 -1
  605. package/dist/store/clients/thread-message-client.js +81 -82
  606. package/dist/store/clients/thread-message-client.js.map +1 -1
  607. package/dist/store/clients/thread-selection-events.d.ts +1 -4
  608. package/dist/store/clients/thread-selection-events.d.ts.map +1 -1
  609. package/dist/store/clients/thread-tasks.d.ts +7 -10
  610. package/dist/store/clients/thread-tasks.d.ts.map +1 -1
  611. package/dist/store/env.d.ts +1 -4
  612. package/dist/store/env.d.ts.map +1 -1
  613. package/dist/store/index.d.ts +33 -36
  614. package/dist/store/index.d.ts.map +1 -0
  615. package/dist/store/index.js +5 -5
  616. package/dist/store/internal.d.ts +12 -12
  617. package/dist/store/internal.d.ts.map +1 -0
  618. package/dist/store/internal.js +2 -2
  619. package/dist/store/primitive-predicates.d.ts +14 -16
  620. package/dist/store/primitive-predicates.d.ts.map +1 -1
  621. package/dist/store/primitive-predicates.js +10 -5
  622. package/dist/store/primitive-predicates.js.map +1 -1
  623. package/dist/store/runtime-clients/attachment-runtime-client.d.ts +4 -7
  624. package/dist/store/runtime-clients/attachment-runtime-client.d.ts.map +1 -1
  625. package/dist/store/runtime-clients/composer-runtime-client.d.ts +11 -14
  626. package/dist/store/runtime-clients/composer-runtime-client.d.ts.map +1 -1
  627. package/dist/store/runtime-clients/composer-runtime-client.js +65 -62
  628. package/dist/store/runtime-clients/composer-runtime-client.js.map +1 -1
  629. package/dist/store/runtime-clients/handle-runtime-action.d.ts +1 -4
  630. package/dist/store/runtime-clients/handle-runtime-action.d.ts.map +1 -1
  631. package/dist/store/runtime-clients/handle-thread-list-action.d.ts +1 -4
  632. package/dist/store/runtime-clients/handle-thread-list-action.d.ts.map +1 -1
  633. package/dist/store/runtime-clients/liveRef.d.ts +2 -5
  634. package/dist/store/runtime-clients/liveRef.d.ts.map +1 -1
  635. package/dist/store/runtime-clients/message-part-runtime-client.d.ts +4 -7
  636. package/dist/store/runtime-clients/message-part-runtime-client.d.ts.map +1 -1
  637. package/dist/store/runtime-clients/message-part-runtime-client.js +26 -16
  638. package/dist/store/runtime-clients/message-part-runtime-client.js.map +1 -1
  639. package/dist/store/runtime-clients/message-runtime-client.d.ts +10 -11
  640. package/dist/store/runtime-clients/message-runtime-client.d.ts.map +1 -1
  641. package/dist/store/runtime-clients/message-runtime-client.js +121 -113
  642. package/dist/store/runtime-clients/message-runtime-client.js.map +1 -1
  643. package/dist/store/runtime-clients/thread-list-item-runtime-client.d.ts +5 -8
  644. package/dist/store/runtime-clients/thread-list-item-runtime-client.d.ts.map +1 -1
  645. package/dist/store/runtime-clients/thread-list-runtime-client.d.ts +6 -9
  646. package/dist/store/runtime-clients/thread-list-runtime-client.d.ts.map +1 -1
  647. package/dist/store/runtime-clients/thread-runtime-client.d.ts +4 -7
  648. package/dist/store/runtime-clients/thread-runtime-client.d.ts.map +1 -1
  649. package/dist/store/runtime-clients/thread-runtime-client.js +221 -158
  650. package/dist/store/runtime-clients/thread-runtime-client.js.map +1 -1
  651. package/dist/store/runtime-clients/useSubscribable.d.ts +3 -6
  652. package/dist/store/runtime-clients/useSubscribable.d.ts.map +1 -1
  653. package/dist/store/scope-registration.d.ts +28 -29
  654. package/dist/store/scope-registration.d.ts.map +1 -1
  655. package/dist/store/scopes/attachment.d.ts +19 -22
  656. package/dist/store/scopes/attachment.d.ts.map +1 -1
  657. package/dist/store/scopes/chain-of-thought.d.ts +33 -35
  658. package/dist/store/scopes/chain-of-thought.d.ts.map +1 -1
  659. package/dist/store/scopes/composer.d.ts +147 -135
  660. package/dist/store/scopes/composer.d.ts.map +1 -1
  661. package/dist/store/scopes/message.d.ts +119 -112
  662. package/dist/store/scopes/message.d.ts.map +1 -1
  663. package/dist/store/scopes/model-context.d.ts +10 -13
  664. package/dist/store/scopes/model-context.d.ts.map +1 -1
  665. package/dist/store/scopes/part.d.ts +53 -50
  666. package/dist/store/scopes/part.d.ts.map +1 -1
  667. package/dist/store/scopes/queue-item.d.ts +21 -23
  668. package/dist/store/scopes/queue-item.d.ts.map +1 -1
  669. package/dist/store/scopes/suggestion.d.ts +14 -17
  670. package/dist/store/scopes/suggestion.d.ts.map +1 -1
  671. package/dist/store/scopes/suggestions.d.ts +18 -21
  672. package/dist/store/scopes/suggestions.d.ts.map +1 -1
  673. package/dist/store/scopes/task.d.ts +27 -30
  674. package/dist/store/scopes/task.d.ts.map +1 -1
  675. package/dist/store/scopes/thread-list-item.d.ts +68 -71
  676. package/dist/store/scopes/thread-list-item.d.ts.map +1 -1
  677. package/dist/store/scopes/thread.d.ts +197 -200
  678. package/dist/store/scopes/thread.d.ts.map +1 -1
  679. package/dist/store/scopes/threads.d.ts +49 -52
  680. package/dist/store/scopes/threads.d.ts.map +1 -1
  681. package/dist/subscribable/subscribable.d.ts +73 -69
  682. package/dist/subscribable/subscribable.d.ts.map +1 -1
  683. package/dist/subscribable/subscribable.js +35 -7
  684. package/dist/subscribable/subscribable.js.map +1 -1
  685. package/dist/types/attachment.d.ts +35 -37
  686. package/dist/types/attachment.d.ts.map +1 -1
  687. package/dist/types/augmentations.d.ts +7 -8
  688. package/dist/types/augmentations.d.ts.map +1 -1
  689. package/dist/types/directive.d.ts +13 -16
  690. package/dist/types/directive.d.ts.map +1 -1
  691. package/dist/types/error.d.ts +15 -17
  692. package/dist/types/error.d.ts.map +1 -1
  693. package/dist/types/index.d.ts +7 -7
  694. package/dist/types/index.d.ts.map +1 -0
  695. package/dist/types/message.d.ts +358 -318
  696. package/dist/types/message.d.ts.map +1 -1
  697. package/dist/types/message.js.map +1 -1
  698. package/dist/types/quote.d.ts +3 -6
  699. package/dist/types/quote.d.ts.map +1 -1
  700. package/dist/types/trigger.d.ts +10 -13
  701. package/dist/types/trigger.d.ts.map +1 -1
  702. package/dist/types/unsubscribe.d.ts +1 -4
  703. package/dist/types/unsubscribe.d.ts.map +1 -1
  704. package/dist/utils/abortable-iterable.d.ts +2 -5
  705. package/dist/utils/abortable-iterable.d.ts.map +1 -1
  706. package/dist/utils/composite-context-provider.d.ts +9 -13
  707. package/dist/utils/composite-context-provider.d.ts.map +1 -1
  708. package/dist/utils/data-url.d.ts +16 -19
  709. package/dist/utils/data-url.d.ts.map +1 -1
  710. package/dist/utils/getGroupStatus.d.ts +19 -21
  711. package/dist/utils/getGroupStatus.d.ts.map +1 -1
  712. package/dist/utils/id.d.ts +3 -6
  713. package/dist/utils/id.d.ts.map +1 -1
  714. package/dist/utils/image-media-type.d.ts +1 -4
  715. package/dist/utils/image-media-type.d.ts.map +1 -1
  716. package/dist/utils/invoke-user-callback.d.ts +1 -4
  717. package/dist/utils/invoke-user-callback.d.ts.map +1 -1
  718. package/dist/utils/json/is-json-equal.d.ts +1 -4
  719. package/dist/utils/json/is-json-equal.d.ts.map +1 -1
  720. package/dist/utils/json/is-json.d.ts +5 -8
  721. package/dist/utils/json/is-json.d.ts.map +1 -1
  722. package/dist/utils/json/stable-stringify-tool-args.d.ts +3 -6
  723. package/dist/utils/json/stable-stringify-tool-args.d.ts.map +1 -1
  724. package/dist/utils/normalizePartStatus.d.ts +6 -8
  725. package/dist/utils/normalizePartStatus.d.ts.map +1 -1
  726. package/dist/utils/normalizePartStatus.js +3 -2
  727. package/dist/utils/normalizePartStatus.js.map +1 -1
  728. package/dist/utils/notify-event-listeners.d.ts +2 -4
  729. package/dist/utils/notify-event-listeners.d.ts.map +1 -1
  730. package/dist/utils/record.d.ts +1 -4
  731. package/dist/utils/record.d.ts.map +1 -1
  732. package/dist/utils/silent-runtime-action.d.ts +2 -5
  733. package/dist/utils/silent-runtime-action.d.ts.map +1 -1
  734. package/dist/utils/text.d.ts +2 -5
  735. package/dist/utils/text.d.ts.map +1 -1
  736. package/dist/utils/wire-media.d.ts +3 -6
  737. package/dist/utils/wire-media.d.ts.map +1 -1
  738. package/package.json +15 -13
  739. package/src/adapters/attachment.test.ts +98 -1
  740. package/src/adapters/attachment.ts +77 -20
  741. package/src/adapters/feedback.ts +1 -0
  742. package/src/adapters/speech.test.ts +94 -0
  743. package/src/adapters/speech.ts +16 -2
  744. package/src/adapters/thread-history.ts +16 -5
  745. package/src/adapters/voice.test.ts +169 -0
  746. package/src/adapters/voice.ts +25 -4
  747. package/src/index.ts +14 -2
  748. package/src/internal.ts +7 -0
  749. package/src/model-context/frame/host.test.ts +51 -1
  750. package/src/model-context/frame/host.ts +3 -1
  751. package/src/model-context/frame/provider.test.ts +106 -20
  752. package/src/model-context/frame/provider.ts +8 -1
  753. package/src/model-context/frame/validate.ts +57 -0
  754. package/src/model-context/interactable-composer-metadata.test.ts +82 -0
  755. package/src/model-context/interactable-composer-metadata.ts +45 -2
  756. package/src/react/RuntimeAdapter.test.ts +4 -1
  757. package/src/react/adapters/LocalStorageThreadListAdapter.test.ts +711 -0
  758. package/src/react/adapters/LocalStorageThreadListAdapter.tsx +125 -109
  759. package/src/react/client/Interactables.test.ts +865 -8
  760. package/src/react/client/Interactables.ts +325 -45
  761. package/src/react/client/RemoteThreadList.concurrent.test.tsx +9 -3
  762. package/src/react/client/RemoteThreadList.initialize-failure.test.ts +124 -0
  763. package/src/react/client/RemoteThreadList.test.ts +5 -6
  764. package/src/react/client/RemoteThreadList.ts +6 -0
  765. package/src/react/client/Tools.ts +2 -3
  766. package/src/react/client/interactable-model-context.test.ts +56 -13
  767. package/src/react/client/interactable-model-context.ts +48 -23
  768. package/src/react/index.ts +2 -2
  769. package/src/react/interactables-legacy/Interactables.test.ts +221 -4
  770. package/src/react/interactables-legacy/Interactables.ts +25 -14
  771. package/src/react/interactables-legacy/interactable-model-context.ts +26 -24
  772. package/src/react/interactables-legacy/useAssistantInteractable.test.tsx +40 -22
  773. package/src/react/interactables-shared/useInteractablePersistenceQueue.test.tsx +22 -2
  774. package/src/react/interactables-shared/useInteractablePersistenceQueue.ts +63 -11
  775. package/src/react/model-context/useInteractable.test.tsx +56 -29
  776. package/src/react/primitive-hooks/useActionBarCopy.test.ts +5 -5
  777. package/src/react/primitive-hooks/useSuggestionTrigger.test.ts +33 -0
  778. package/src/react/primitive-hooks/useSuggestionTrigger.ts +7 -4
  779. package/src/react/primitives/generativeUI/GenerativeUI.test.tsx +170 -0
  780. package/src/react/primitives/generativeUI/GenerativeUI.tsx +43 -28
  781. package/src/react/primitives/message/MessageAttachments.test.tsx +2 -6
  782. package/src/react/primitives/message/MessageAttachments.tsx +14 -8
  783. package/src/react/primitives/message/MessageGroupedParts.test.tsx +155 -8
  784. package/src/react/primitives/message/MessageGroupedParts.tsx +19 -6
  785. package/src/react/primitives/message/MessageParts.test.tsx +84 -0
  786. package/src/react/primitives/message/MessageParts.tool-interaction.test.tsx +69 -0
  787. package/src/react/primitives/message/MessageParts.tsx +29 -8
  788. package/src/react/primitives/thread/ThreadMessages.test.tsx +25 -7
  789. package/src/react/primitives/thread/ThreadSuggestions.test.tsx +97 -0
  790. package/src/react/primitives/thread/ThreadSuggestions.tsx +29 -6
  791. package/src/react/providers/ReadonlyThreadProvider.tsx +2 -2
  792. package/src/react/providers/TextMessagePartProvider.tsx +3 -0
  793. package/src/react/runtimes/RemoteThreadListHookInstanceManager.layout.test.tsx +62 -0
  794. package/src/react/runtimes/RemoteThreadListHookInstanceManager.retry.test.tsx +2 -2
  795. package/src/react/runtimes/RemoteThreadListHookInstanceManager.running.test.tsx +93 -0
  796. package/src/react/runtimes/RemoteThreadListHookInstanceManager.test.tsx +181 -21
  797. package/src/react/runtimes/RemoteThreadListHookInstanceManager.title.test.tsx +62 -17
  798. package/src/react/runtimes/RemoteThreadListHookInstanceManager.tsx +112 -77
  799. package/src/react/runtimes/RemoteThreadListThreadListRuntimeCore.tsx +19 -3
  800. package/src/react/runtimes/RemoteThreadResource.ts +5 -2
  801. package/src/react/runtimes/assistant-transport/replayBoundaryStream.test.ts +3 -1
  802. package/src/react/runtimes/assistant-transport/replayBoundaryStream.ts +10 -2
  803. package/src/react/runtimes/assistant-transport/runManager.ts +3 -0
  804. package/src/react/runtimes/assistant-transport/transport-parentid.test.tsx +57 -0
  805. package/src/react/runtimes/assistant-transport/transport-scheduling.test.ts +73 -46
  806. package/src/react/runtimes/assistant-transport/transport-thread-id.test.tsx +571 -0
  807. package/src/react/runtimes/assistant-transport/types.ts +9 -1
  808. package/src/react/runtimes/assistant-transport/useAssistantTransport.spec.md +10 -0
  809. package/src/react/runtimes/assistant-transport/useAssistantTransportRuntime.test.tsx +108 -1
  810. package/src/react/runtimes/assistant-transport/useAssistantTransportRuntime.ts +33 -9
  811. package/src/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.copy.integration.test.tsx +289 -0
  812. package/src/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.copy.test.tsx +471 -0
  813. package/src/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.engagement.test.tsx +330 -0
  814. package/src/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.test.ts +78 -2
  815. package/src/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.test.tsx +463 -2
  816. package/src/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.ts +595 -227
  817. package/src/react/runtimes/cloud/CloudFileAttachmentAdapter.test.ts +33 -4
  818. package/src/react/runtimes/cloud/CloudFileAttachmentAdapter.ts +7 -3
  819. package/src/react/runtimes/cloud/auiV0.ts +275 -6
  820. package/src/react/runtimes/cloud/auiV0DecodeSafely.test.ts +873 -0
  821. package/src/react/runtimes/createMessageConverter.ts +9 -3
  822. package/src/react/runtimes/external-message-converter.test.ts +7 -3
  823. package/src/react/runtimes/external-store-history-copy.ts +223 -0
  824. package/src/react/runtimes/remote-thread-hook-on-tap.test.ts +2 -1
  825. package/src/react/runtimes/useExternalStoreRuntime.history-copy.test.tsx +483 -0
  826. package/src/react/runtimes/useExternalStoreRuntime.lifecycle.test.tsx +84 -3
  827. package/src/react/runtimes/useExternalStoreRuntime.suggestions.test.tsx +6 -2
  828. package/src/react/runtimes/useExternalStoreRuntime.ts +25 -5
  829. package/src/react/runtimes/useLocalRuntime.test.tsx +145 -1
  830. package/src/react/runtimes/useLocalRuntime.ts +8 -5
  831. package/src/react/runtimes/useRemoteThreadListRuntime.concurrent.test.tsx +84 -4
  832. package/src/react/runtimes/useRemoteThreadListRuntime.ts +5 -1
  833. package/src/react/types/MessagePartComponentTypes.ts +10 -0
  834. package/src/react/types/scopes/interactables.ts +3 -0
  835. package/src/runtime/api/attachment-runtime.ts +10 -5
  836. package/src/runtime/api/bindings.ts +6 -1
  837. package/src/runtime/api/composer-runtime.ts +29 -6
  838. package/src/runtime/api/message-part-runtime.test.ts +215 -0
  839. package/src/runtime/api/message-part-runtime.ts +44 -1
  840. package/src/runtime/api/message-runtime.test.ts +112 -2
  841. package/src/runtime/api/message-runtime.ts +25 -7
  842. package/src/runtime/api/thread-list-item-runtime.ts +5 -5
  843. package/src/runtime/api/thread-list-runtime.ts +3 -3
  844. package/src/runtime/api/thread-runtime.test.ts +59 -0
  845. package/src/runtime/api/thread-runtime.ts +21 -11
  846. package/src/runtime/base/base-composer-runtime-core.ts +548 -153
  847. package/src/runtime/base/base-thread-runtime-core.test.ts +1614 -136
  848. package/src/runtime/base/base-thread-runtime-core.ts +236 -46
  849. package/src/runtime/base/default-edit-composer-runtime-core.ts +24 -2
  850. package/src/runtime/base/default-thread-composer-runtime-core.ts +33 -3
  851. package/src/runtime/interfaces/composer-runtime-core.ts +19 -0
  852. package/src/runtime/interfaces/thread-runtime-core.ts +24 -1
  853. package/src/runtime/queue/message-queue.ts +11 -1
  854. package/src/runtime/utils/attachment-add-operations.ts +45 -2
  855. package/src/runtime/utils/attachment-send-operations.ts +54 -0
  856. package/src/runtime/utils/auto-status.test.ts +54 -0
  857. package/src/runtime/utils/auto-status.ts +3 -10
  858. package/src/runtime/utils/external-message-conversion.test.ts +91 -0
  859. package/src/runtime/utils/external-message-conversion.ts +9 -6
  860. package/src/runtime/utils/message-repository.test.ts +69 -1
  861. package/src/runtime/utils/message-repository.ts +14 -7
  862. package/src/runtime/utils/stored-message-parts.ts +216 -0
  863. package/src/runtime/utils/thread-message-like.test.ts +58 -0
  864. package/src/runtime/utils/thread-message-like.ts +79 -48
  865. package/src/runtime/utils/thread-runtime-lifecycle.test.ts +67 -0
  866. package/src/runtime/utils/thread-runtime-lifecycle.ts +42 -8
  867. package/src/runtime/utils/tool-interactions.test.ts +193 -0
  868. package/src/runtime/utils/tool-interactions.ts +147 -0
  869. package/src/runtimes/external-store/external-store-adapter.ts +25 -0
  870. package/src/runtimes/external-store/external-store-runtime-core.ts +10 -2
  871. package/src/runtimes/external-store/external-store-thread-list-runtime-core.ts +2 -2
  872. package/src/runtimes/external-store/external-store-thread-runtime-core.test.ts +49 -0
  873. package/src/runtimes/external-store/external-store-thread-runtime-core.ts +114 -32
  874. package/src/runtimes/inert/InertThreadRuntimeCore.test.ts +127 -56
  875. package/src/runtimes/inert/InertThreadRuntimeCore.ts +10 -1
  876. package/src/runtimes/local/local-thread-runtime-core.edit-cancellation.test.ts +70 -0
  877. package/src/runtimes/local/local-thread-runtime-core.test.ts +1866 -169
  878. package/src/runtimes/local/local-thread-runtime-core.ts +365 -40
  879. package/src/runtimes/readonly/ReadonlyThreadRuntimeCore.ts +53 -1
  880. package/src/runtimes/remote-thread-list/optimistic-state.ts +8 -3
  881. package/src/runtimes/tool-invocations/EDGE_CASES.md +19 -4
  882. package/src/runtimes/tool-invocations/ToolInvocationTracker.test.ts +392 -39
  883. package/src/runtimes/tool-invocations/ToolInvocationTracker.ts +31 -8
  884. package/src/store/clients/external-thread.test.ts +145 -0
  885. package/src/store/clients/external-thread.ts +669 -144
  886. package/src/store/clients/model-context-client.test.ts +8 -8
  887. package/src/store/clients/no-op-composer-client.ts +2 -0
  888. package/src/store/clients/submission-message.ts +27 -0
  889. package/src/store/clients/thread-message-client.test.ts +39 -0
  890. package/src/store/clients/thread-message-client.ts +13 -6
  891. package/src/store/index.ts +2 -2
  892. package/src/store/internal.ts +1 -0
  893. package/src/store/primitive-predicates.test.ts +119 -0
  894. package/src/store/primitive-predicates.ts +19 -4
  895. package/src/store/runtime-clients/composer-runtime-client.ts +4 -3
  896. package/src/store/runtime-clients/message-part-runtime-client.test.ts +42 -0
  897. package/src/store/runtime-clients/message-part-runtime-client.ts +4 -0
  898. package/src/store/runtime-clients/message-runtime-client.ts +5 -0
  899. package/src/store/runtime-clients/thread-runtime-client.test.tsx +243 -0
  900. package/src/store/runtime-clients/thread-runtime-client.ts +46 -9
  901. package/src/store/scopes/composer.ts +22 -4
  902. package/src/store/scopes/message.ts +12 -1
  903. package/src/store/scopes/part.ts +8 -0
  904. package/src/subscribable/subscribable.test.ts +205 -3
  905. package/src/subscribable/subscribable.ts +49 -7
  906. package/src/tests/RemoteThreadListThreadListRuntimeCore-errors.test.ts +95 -1
  907. package/src/tests/attachment-adapters.test.ts +16 -1
  908. package/src/tests/auiV0Encode.test.ts +412 -1
  909. package/src/tests/base-composer-runtime-core-addAttachment.test.ts +6 -6
  910. package/src/tests/base-composer-runtime-core-send.test.ts +722 -29
  911. package/src/tests/base-composer-runtime-core.test.ts +212 -5
  912. package/src/tests/composer-can-cancel.test.ts +35 -6
  913. package/src/tests/composer-can-send.test.ts +120 -1
  914. package/src/tests/composer-submission.test.tsx +796 -0
  915. package/src/tests/default-edit-composer-runtime-core.test.ts +149 -2
  916. package/src/tests/external-store-thread-list-runtime-core.test.ts +111 -0
  917. package/src/tests/external-store-thread-runtime-core-adapter.test.ts +810 -28
  918. package/src/tests/external-store-thread-runtime-core.test.ts +217 -0
  919. package/src/tests/external-thread-attachments.test.tsx +763 -26
  920. package/src/tests/external-thread-feedback.test.tsx +20 -7
  921. package/src/tests/external-thread-isLast.test.tsx +69 -0
  922. package/src/tests/external-thread-parity.test.tsx +1 -1
  923. package/src/tests/get-thread-state-isRunning.test.ts +2 -2
  924. package/src/tests/message-queue.test.ts +45 -10
  925. package/src/tests/remote-thread-list-adapter-switch.test.ts +45 -1
  926. package/src/tests/thread-switch-events.test.tsx +11 -7
  927. package/src/tests/useRemoteThreadListRuntime-controlled.test.tsx +2 -1
  928. package/src/types/message.test.ts +19 -0
  929. package/src/types/message.ts +65 -10
  930. package/src/utils/normalizePartStatus.ts +14 -1
  931. package/dist/tests/remote-thread-list-test-helpers.d.ts +0 -16
  932. package/dist/tests/remote-thread-list-test-helpers.d.ts.map +0 -1
  933. package/dist/tests/remote-thread-list-test-helpers.js +0 -59
  934. package/dist/tests/remote-thread-list-test-helpers.js.map +0 -1
@@ -1,17 +1,17 @@
1
+ import { resolveToolCallText } from "../model-context/tool-call-text.js";
2
+ import { NoOpComposerClient } from "./clients/no-op-composer-client.js";
3
+ import { ThreadMessageClient } from "./clients/thread-message-client.js";
1
4
  import { Suggestions } from "./clients/suggestions.js";
2
5
  import { ModelContext } from "./clients/model-context-client.js";
3
- import { resolveToolCallText } from "../model-context/tool-call-text.js";
4
6
  import { RuntimeAdapter, runtimeAdapterTransformScopes } from "../react/RuntimeAdapter.js";
5
- import { defineToolkit } from "../react/model-context/define-toolkit.js";
6
- import { defineMcpToolkit } from "../react/model-context/define-mcp-toolkit.js";
7
7
  import { InMemoryThreadList, inMemoryThreadListTransformScopes } from "../react/client/InMemoryThreadList.js";
8
8
  import { RemoteThreadList } from "../react/client/RemoteThreadList.js";
9
+ import { defineToolkit } from "../react/model-context/define-toolkit.js";
10
+ import { defineMcpToolkit } from "../react/model-context/define-mcp-toolkit.js";
9
11
  import { convertExternalMessages, createExternalMessageConversionCache, useExternalMessageConverter } from "../react/runtimes/external-message-converter.js";
10
12
  import { useStreamingTiming } from "../react/runtimes/useStreamingTiming.js";
11
13
  import { createRuntimeExtrasBrand } from "../runtime/utils/runtime-extras-brand.js";
12
14
  import { SingleThreadList } from "./clients/single-thread-list.js";
13
15
  import { ExternalThread } from "./clients/external-thread.js";
14
- import { NoOpComposerClient } from "./clients/no-op-composer-client.js";
15
16
  import { ChainOfThoughtClient } from "./clients/chain-of-thought-client.js";
16
- import { ThreadMessageClient } from "./clients/thread-message-client.js";
17
17
  export { ChainOfThoughtClient, ExternalThread, InMemoryThreadList, ModelContext, NoOpComposerClient, RemoteThreadList, RuntimeAdapter, SingleThreadList, Suggestions, ThreadMessageClient, convertExternalMessages, createExternalMessageConversionCache, createRuntimeExtrasBrand, defineMcpToolkit, defineToolkit, inMemoryThreadListTransformScopes, resolveToolCallText, runtimeAdapterTransformScopes, useExternalMessageConverter, useStreamingTiming };
@@ -1,12 +1,12 @@
1
- import { baseRuntimeAdapterTransformScopes } from "./clients/runtime-adapter.js";
2
- import { useThreadSelectionEvents } from "./clients/thread-selection-events.js";
3
- import { isDevelopment } from "./env.js";
4
- import { AttachmentRuntimeClient } from "./runtime-clients/attachment-runtime-client.js";
5
- import { MessagePartClient } from "./runtime-clients/message-part-runtime-client.js";
6
- import { ComposerClient } from "./runtime-clients/composer-runtime-client.js";
7
- import { MessageClient } from "./runtime-clients/message-runtime-client.js";
8
- import { ThreadClient } from "./runtime-clients/thread-runtime-client.js";
9
- import { ThreadListItemClient } from "./runtime-clients/thread-list-item-runtime-client.js";
10
- import { ThreadListClient } from "./runtime-clients/thread-list-runtime-client.js";
11
- import { actionBarCopyDisabled, actionBarEditDisabled, actionBarReloadDisabled, branchPickerNextDisabled, branchPickerPreviousDisabled, composerCancelDisabled, composerInputDisabled, composerSendDisabled, messageErrorText, suggestionTriggerDisabled, threadListLoadMoreDisabled } from "./primitive-predicates.js";
12
- export { AttachmentRuntimeClient, ComposerClient, MessageClient, MessagePartClient, ThreadClient, ThreadListClient, ThreadListItemClient, actionBarCopyDisabled, actionBarEditDisabled, actionBarReloadDisabled, baseRuntimeAdapterTransformScopes, branchPickerNextDisabled, branchPickerPreviousDisabled, composerCancelDisabled, composerInputDisabled, composerSendDisabled, isDevelopment, messageErrorText, suggestionTriggerDisabled, threadListLoadMoreDisabled, useThreadSelectionEvents };
1
+ export { AttachmentRuntimeClient } from "./runtime-clients/attachment-runtime-client.js";
2
+ export { MessagePartClient } from "./runtime-clients/message-part-runtime-client.js";
3
+ export { ComposerClient } from "./runtime-clients/composer-runtime-client.js";
4
+ export { MessageClient } from "./runtime-clients/message-runtime-client.js";
5
+ export { ThreadClient } from "./runtime-clients/thread-runtime-client.js";
6
+ export { ThreadListItemClient } from "./runtime-clients/thread-list-item-runtime-client.js";
7
+ export { ThreadListClient } from "./runtime-clients/thread-list-runtime-client.js";
8
+ export { baseRuntimeAdapterTransformScopes } from "./clients/runtime-adapter.js";
9
+ export { actionBarCopyDisabled, actionBarEditDisabled, actionBarReloadDisabled, branchPickerNextDisabled, branchPickerPreviousDisabled, composerCancelDisabled, composerInputDisabled, composerSendDisabled, messageErrorText, suggestionSendMode, suggestionTriggerDisabled, threadListLoadMoreDisabled, } from "./primitive-predicates.js";
10
+ export { isDevelopment } from "./env.js";
11
+ export { useThreadSelectionEvents } from "./clients/thread-selection-events.js";
12
+ //# sourceMappingURL=internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/store/internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,uDAAoD;AACtF,OAAO,EAAE,iBAAiB,EAAE,yDAAsD;AAClF,OAAO,EAAE,cAAc,EAAE,qDAAkD;AAC3E,OAAO,EAAE,aAAa,EAAE,oDAAiD;AACzE,OAAO,EAAE,YAAY,EAAE,mDAAgD;AACvE,OAAO,EAAE,oBAAoB,EAAE,6DAA0D;AACzF,OAAO,EAAE,gBAAgB,EAAE,wDAAqD;AAChF,OAAO,EAAE,iCAAiC,EAAE,qCAAkC;AAC9E,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,yBAAyB,EACzB,0BAA0B,GAC3B,kCAA+B;AAChC,OAAO,EAAE,aAAa,EAAE,iBAAc;AACtC,OAAO,EAAE,wBAAwB,EAAE,6CAA0C"}
@@ -7,6 +7,6 @@ import { ThreadListItemClient } from "./runtime-clients/thread-list-item-runtime
7
7
  import { useThreadSelectionEvents } from "./clients/thread-selection-events.js";
8
8
  import { ThreadListClient } from "./runtime-clients/thread-list-runtime-client.js";
9
9
  import { baseRuntimeAdapterTransformScopes } from "./clients/runtime-adapter.js";
10
- import { actionBarCopyDisabled, actionBarEditDisabled, actionBarReloadDisabled, branchPickerNextDisabled, branchPickerPreviousDisabled, composerCancelDisabled, composerInputDisabled, composerSendDisabled, messageErrorText, suggestionTriggerDisabled, threadListLoadMoreDisabled } from "./primitive-predicates.js";
10
+ import { actionBarCopyDisabled, actionBarEditDisabled, actionBarReloadDisabled, branchPickerNextDisabled, branchPickerPreviousDisabled, composerCancelDisabled, composerInputDisabled, composerSendDisabled, messageErrorText, suggestionSendMode, suggestionTriggerDisabled, threadListLoadMoreDisabled } from "./primitive-predicates.js";
11
11
  import { isDevelopment } from "./env.js";
12
- export { AttachmentRuntimeClient, ComposerClient, MessageClient, MessagePartClient, ThreadClient, ThreadListClient, ThreadListItemClient, actionBarCopyDisabled, actionBarEditDisabled, actionBarReloadDisabled, baseRuntimeAdapterTransformScopes, branchPickerNextDisabled, branchPickerPreviousDisabled, composerCancelDisabled, composerInputDisabled, composerSendDisabled, isDevelopment, messageErrorText, suggestionTriggerDisabled, threadListLoadMoreDisabled, useThreadSelectionEvents };
12
+ export { AttachmentRuntimeClient, ComposerClient, MessageClient, MessagePartClient, ThreadClient, ThreadListClient, ThreadListItemClient, actionBarCopyDisabled, actionBarEditDisabled, actionBarReloadDisabled, baseRuntimeAdapterTransformScopes, branchPickerNextDisabled, branchPickerPreviousDisabled, composerCancelDisabled, composerInputDisabled, composerSendDisabled, isDevelopment, messageErrorText, suggestionSendMode, suggestionTriggerDisabled, threadListLoadMoreDisabled, useThreadSelectionEvents };
@@ -1,22 +1,20 @@
1
- import { ReadonlyJSONArray, ReadonlyJSONObject } from "assistant-stream/utils";
2
- import { AssistantState } from "@assistant-ui/store";
3
- //#region src/store/primitive-predicates.d.ts
1
+ import type { ReadonlyJSONArray, ReadonlyJSONObject } from "assistant-stream/utils";
2
+ import type { AssistantState } from "@assistant-ui/store";
4
3
  /**
5
4
  * Disabled predicates shared by every binding's primitive layer. Each binding
6
5
  * consumes these as state selectors so the disabled semantics of a primitive
7
6
  * cannot drift between frameworks.
8
7
  */
9
- declare const composerSendDisabled: (s: AssistantState) => boolean;
10
- declare const composerCancelDisabled: (s: AssistantState) => boolean;
11
- declare const composerInputDisabled: (s: AssistantState) => boolean;
12
- declare const actionBarEditDisabled: (s: AssistantState) => boolean;
13
- declare const actionBarReloadDisabled: (s: AssistantState) => boolean;
14
- declare const actionBarCopyDisabled: (s: AssistantState) => boolean;
15
- declare const branchPickerPreviousDisabled: (s: AssistantState) => boolean;
16
- declare const branchPickerNextDisabled: (s: AssistantState) => boolean;
17
- declare const suggestionTriggerDisabled: (s: AssistantState, send: boolean) => boolean;
18
- declare const messageErrorText: (s: AssistantState) => string | number | boolean | ReadonlyJSONObject | ReadonlyJSONArray | undefined;
19
- declare const threadListLoadMoreDisabled: (s: AssistantState) => boolean;
20
- //#endregion
21
- export { actionBarCopyDisabled, actionBarEditDisabled, actionBarReloadDisabled, branchPickerNextDisabled, branchPickerPreviousDisabled, composerCancelDisabled, composerInputDisabled, composerSendDisabled, messageErrorText, suggestionTriggerDisabled, threadListLoadMoreDisabled };
8
+ export declare const composerSendDisabled: (s: AssistantState) => boolean;
9
+ export declare const composerCancelDisabled: (s: AssistantState) => boolean;
10
+ export declare const composerInputDisabled: (s: AssistantState) => boolean;
11
+ export declare const actionBarEditDisabled: (s: AssistantState) => boolean;
12
+ export declare const actionBarReloadDisabled: (s: AssistantState) => boolean;
13
+ export declare const actionBarCopyDisabled: (s: AssistantState) => boolean;
14
+ export declare const branchPickerPreviousDisabled: (s: AssistantState) => boolean;
15
+ export declare const branchPickerNextDisabled: (s: AssistantState) => boolean;
16
+ export declare const suggestionSendMode: (thread: AssistantState["thread"]) => "now" | "queued" | "blocked";
17
+ export declare const suggestionTriggerDisabled: (s: AssistantState, send: boolean) => boolean;
18
+ export declare const messageErrorText: (s: AssistantState) => string | number | boolean | ReadonlyJSONObject | ReadonlyJSONArray | undefined;
19
+ export declare const threadListLoadMoreDisabled: (s: AssistantState) => boolean;
22
20
  //# sourceMappingURL=primitive-predicates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"primitive-predicates.d.ts","names":[],"sources":["../../src/store/primitive-predicates.ts"],"mappings":";;;;;;;;cAYa,uBAAwB,GAAG;cAG3B,yBAA0B,GAAG;cAG7B,wBAAyB,GAAG;cAG5B,wBAAyB,GAAG;cAG5B,0BAA2B,GAAG;cAM9B,wBAAyB,GAAG;cAM5B,+BAAgC,GAAG;cAKnC,2BAA4B,GAAG;cAK/B,4BACX,GAAG,gBACH;cAKW,mBACX,GAAG,+CAKD,qBACA;cAqBS,6BAA8B,GAAG"}
1
+ {"version":3,"file":"primitive-predicates.d.ts","sourceRoot":"","sources":["../../src/store/primitive-predicates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D;;;;GAIG;AAEH,eAAO,MAAM,oBAAoB,GAAI,GAAG,cAAc,KAAG,OAIxB,CAAC;AAElC,eAAO,MAAM,sBAAsB,GAAI,GAAG,cAAc,KAAG,OACpC,CAAC;AAExB,eAAO,MAAM,qBAAqB,GAAI,GAAG,cAAc,KAAG,OACW,CAAC;AAEtE,eAAO,MAAM,qBAAqB,GAAI,GAAG,cAAc,KAAG,OAIV,CAAC;AAEjD,eAAO,MAAM,uBAAuB,GAAI,GAAG,cAAc,KAAG,OAK7B,CAAC;AAEhC,eAAO,MAAM,qBAAqB,GAAI,GAAG,cAAc,KAAG,OAIvD,CAAC;AAEJ,eAAO,MAAM,4BAA4B,GAAI,GAAG,cAAc,KAAG,OAGK,CAAC;AAEvE,eAAO,MAAM,wBAAwB,GAAI,GAAG,cAAc,KAAG,OAGS,CAAC;AAEvE,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,cAAc,CAAC,QAAQ,CAAC,KAC/B,KAAK,GAAG,QAAQ,GAAG,SAKrB,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,GAAG,cAAc,EACjB,MAAM,OAAO,KACZ,OAC0E,CAAC;AAE9E,eAAO,MAAM,gBAAgB,GAC3B,GAAG,cAAc,KAEf,MAAM,GACN,MAAM,GACN,OAAO,GACP,kBAAkB,GAClB,iBAAiB,GACjB,SAkBH,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,GAAG,cAAc,KAAG,OACO,CAAC"}
@@ -4,15 +4,20 @@
4
4
  * consumes these as state selectors so the disabled semantics of a primitive
5
5
  * cannot drift between frameworks.
6
6
  */
7
- const composerSendDisabled = (s) => !s.composer.canSend || s.thread.isRunning && !s.thread.capabilities.queue;
7
+ const composerSendDisabled = (s) => !s.composer.canSend || s.thread.isRunning && !s.thread.capabilities.queue && s.thread.voice === void 0;
8
8
  const composerCancelDisabled = (s) => !s.composer.canCancel;
9
9
  const composerInputDisabled = (s) => s.thread.isDisabled || s.composer.dictation?.inputDisabled === true;
10
- const actionBarEditDisabled = (s) => s.composer.isEditing || s.optional.thread?.capabilities.edit === false;
11
- const actionBarReloadDisabled = (s) => s.thread.isRunning || s.thread.isDisabled || s.message.role !== "assistant" || !s.thread.capabilities.reload;
10
+ const actionBarEditDisabled = (s) => s.composer.isEditing || s.optional.message?.submission !== void 0 || s.optional.thread?.voice !== void 0 || s.optional.thread?.capabilities.edit === false;
11
+ const actionBarReloadDisabled = (s) => s.thread.isRunning || s.thread.isDisabled || s.thread.voice !== void 0 || s.message.role !== "assistant" || !s.thread.capabilities.reload;
12
12
  const actionBarCopyDisabled = (s) => !((s.message.role !== "assistant" || s.message.status?.type !== "running") && s.message.parts.some((part) => part.type === "text" && part.text.length > 0));
13
13
  const branchPickerPreviousDisabled = (s) => s.message.branchNumber <= 1 || !s.thread.capabilities.switchToBranch || s.thread.isRunning && !s.thread.capabilities.switchBranchDuringRun;
14
14
  const branchPickerNextDisabled = (s) => s.message.branchNumber >= s.message.branchCount || !s.thread.capabilities.switchToBranch || s.thread.isRunning && !s.thread.capabilities.switchBranchDuringRun;
15
- const suggestionTriggerDisabled = (s, send) => s.thread.isDisabled || send && s.thread.isRunning && !s.thread.capabilities.queue;
15
+ const suggestionSendMode = (thread) => {
16
+ if (thread.voice !== void 0) return thread.voice.canSendText ? "now" : "blocked";
17
+ if (!thread.isRunning) return "now";
18
+ return thread.capabilities.queue ? "queued" : "blocked";
19
+ };
20
+ const suggestionTriggerDisabled = (s, send) => s.thread.isDisabled || send && suggestionSendMode(s.thread) === "blocked";
16
21
  const messageErrorText = (s) => {
17
22
  if (s.message.status?.type !== "incomplete" || s.message.status.reason !== "error") return;
18
23
  const error = s.message.status.error;
@@ -22,6 +27,6 @@ const messageErrorText = (s) => {
22
27
  };
23
28
  const threadListLoadMoreDisabled = (s) => !s.threads.hasMore || s.threads.isLoading || s.threads.isLoadingMore;
24
29
  //#endregion
25
- export { actionBarCopyDisabled, actionBarEditDisabled, actionBarReloadDisabled, branchPickerNextDisabled, branchPickerPreviousDisabled, composerCancelDisabled, composerInputDisabled, composerSendDisabled, messageErrorText, suggestionTriggerDisabled, threadListLoadMoreDisabled };
30
+ export { actionBarCopyDisabled, actionBarEditDisabled, actionBarReloadDisabled, branchPickerNextDisabled, branchPickerPreviousDisabled, composerCancelDisabled, composerInputDisabled, composerSendDisabled, messageErrorText, suggestionSendMode, suggestionTriggerDisabled, threadListLoadMoreDisabled };
26
31
 
27
32
  //# sourceMappingURL=primitive-predicates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"primitive-predicates.js","names":["ReadonlyJSONArray","ReadonlyJSONObject","AssistantState","composerSendDisabled","s","composer","canSend","thread","isRunning","capabilities","queue","composerCancelDisabled","canCancel","composerInputDisabled","isDisabled","dictation","inputDisabled","actionBarEditDisabled","isEditing","optional","edit","actionBarReloadDisabled","message","role","reload","actionBarCopyDisabled","status","type","parts","some","part","text","length","branchPickerPreviousDisabled","branchNumber","switchToBranch","switchBranchDuringRun","branchPickerNextDisabled","branchCount","suggestionTriggerDisabled","send","messageErrorText","reason","undefined","error","threadListLoadMoreDisabled","threads","hasMore","isLoading","isLoadingMore"],"sources":["../../src/store/primitive-predicates.ts"],"sourcesContent":["import type {\n ReadonlyJSONArray,\n ReadonlyJSONObject,\n} from \"assistant-stream/utils\";\nimport type { AssistantState } from \"@assistant-ui/store\";\n\n/**\n * Disabled predicates shared by every binding's primitive layer. Each binding\n * consumes these as state selectors so the disabled semantics of a primitive\n * cannot drift between frameworks.\n */\n\nexport const composerSendDisabled = (s: AssistantState): boolean =>\n !s.composer.canSend || (s.thread.isRunning && !s.thread.capabilities.queue);\n\nexport const composerCancelDisabled = (s: AssistantState): boolean =>\n !s.composer.canCancel;\n\nexport const composerInputDisabled = (s: AssistantState): boolean =>\n s.thread.isDisabled || s.composer.dictation?.inputDisabled === true;\n\nexport const actionBarEditDisabled = (s: AssistantState): boolean =>\n s.composer.isEditing || s.optional.thread?.capabilities.edit === false;\n\nexport const actionBarReloadDisabled = (s: AssistantState): boolean =>\n s.thread.isRunning ||\n s.thread.isDisabled ||\n s.message.role !== \"assistant\" ||\n !s.thread.capabilities.reload;\n\nexport const actionBarCopyDisabled = (s: AssistantState): boolean =>\n !(\n (s.message.role !== \"assistant\" || s.message.status?.type !== \"running\") &&\n s.message.parts.some((part) => part.type === \"text\" && part.text.length > 0)\n );\n\nexport const branchPickerPreviousDisabled = (s: AssistantState): boolean =>\n s.message.branchNumber <= 1 ||\n !s.thread.capabilities.switchToBranch ||\n (s.thread.isRunning && !s.thread.capabilities.switchBranchDuringRun);\n\nexport const branchPickerNextDisabled = (s: AssistantState): boolean =>\n s.message.branchNumber >= s.message.branchCount ||\n !s.thread.capabilities.switchToBranch ||\n (s.thread.isRunning && !s.thread.capabilities.switchBranchDuringRun);\n\nexport const suggestionTriggerDisabled = (\n s: AssistantState,\n send: boolean,\n): boolean =>\n s.thread.isDisabled ||\n (send && s.thread.isRunning && !s.thread.capabilities.queue);\n\nexport const messageErrorText = (\n s: AssistantState,\n):\n | string\n | number\n | boolean\n | ReadonlyJSONObject\n | ReadonlyJSONArray\n | undefined => {\n if (\n s.message.status?.type !== \"incomplete\" ||\n s.message.status.reason !== \"error\"\n ) {\n return undefined;\n }\n const error = s.message.status.error;\n if (typeof error === \"string\") return error;\n if (\n typeof error === \"object\" &&\n error !== null &&\n \"message\" in error &&\n typeof error.message === \"string\"\n ) {\n return error.message;\n }\n return error ?? \"An error occurred\";\n};\n\nexport const threadListLoadMoreDisabled = (s: AssistantState): boolean =>\n !s.threads.hasMore || s.threads.isLoading || s.threads.isLoadingMore;\n"],"mappings":";;;;;;AAYA,MAAaG,wBAAwBC,MACnC,CAACA,EAAEC,SAASC,WAAYF,EAAEG,OAAOC,aAAa,CAACJ,EAAEG,OAAOE,aAAaC;AAEvE,MAAaC,0BAA0BP,MACrC,CAACA,EAAEC,SAASO;AAEd,MAAaC,yBAAyBT,MACpCA,EAAEG,OAAOO,cAAcV,EAAEC,SAASU,WAAWC,kBAAkB;AAEjE,MAAaC,yBAAyBb,MACpCA,EAAEC,SAASa,aAAad,EAAEe,SAASZ,QAAQE,aAAaW,SAAS;AAEnE,MAAaC,2BAA2BjB,MACtCA,EAAEG,OAAOC,aACTJ,EAAEG,OAAOO,cACTV,EAAEkB,QAAQC,SAAS,eACnB,CAACnB,EAAEG,OAAOE,aAAae;AAEzB,MAAaC,yBAAyBrB,MACpC,GACGA,EAAEkB,QAAQC,SAAS,eAAenB,EAAEkB,QAAQI,QAAQC,SAAS,cAC9DvB,EAAEkB,QAAQM,MAAMC,MAAMC,SAASA,KAAKH,SAAS,UAAUG,KAAKC,KAAKC,SAAS,CAAC;AAG/E,MAAaC,gCAAgC7B,MAC3CA,EAAEkB,QAAQY,gBAAgB,KAC1B,CAAC9B,EAAEG,OAAOE,aAAa0B,kBACtB/B,EAAEG,OAAOC,aAAa,CAACJ,EAAEG,OAAOE,aAAa2B;AAEhD,MAAaC,4BAA4BjC,MACvCA,EAAEkB,QAAQY,gBAAgB9B,EAAEkB,QAAQgB,eACpC,CAAClC,EAAEG,OAAOE,aAAa0B,kBACtB/B,EAAEG,OAAOC,aAAa,CAACJ,EAAEG,OAAOE,aAAa2B;AAEhD,MAAaG,6BACXnC,GACAoC,SAEApC,EAAEG,OAAOO,cACR0B,QAAQpC,EAAEG,OAAOC,aAAa,CAACJ,EAAEG,OAAOE,aAAaC;AAExD,MAAa+B,oBACXrC,MAOe;CACf,IACEA,EAAEkB,QAAQI,QAAQC,SAAS,gBAC3BvB,EAAEkB,QAAQI,OAAOgB,WAAW,SAE5B;CAEF,MAAME,QAAQxC,EAAEkB,QAAQI,OAAOkB;CAC/B,IAAI,OAAOA,UAAU,UAAU,OAAOA;CACtC,IACE,OAAOA,UAAU,YACjBA,UAAU,QACV,aAAaA,SACb,OAAOA,MAAMtB,YAAY,UAEzB,OAAOsB,MAAMtB;CAEf,OAAOsB,SAAS;AAClB;AAEA,MAAaC,8BAA8BzC,MACzC,CAACA,EAAE0C,QAAQC,WAAW3C,EAAE0C,QAAQE,aAAa5C,EAAE0C,QAAQG"}
1
+ {"version":3,"file":"primitive-predicates.js","names":["ReadonlyJSONArray","ReadonlyJSONObject","AssistantState","composerSendDisabled","s","composer","canSend","thread","isRunning","capabilities","queue","voice","undefined","composerCancelDisabled","canCancel","composerInputDisabled","isDisabled","dictation","inputDisabled","actionBarEditDisabled","isEditing","optional","message","submission","edit","actionBarReloadDisabled","role","reload","actionBarCopyDisabled","status","type","parts","some","part","text","length","branchPickerPreviousDisabled","branchNumber","switchToBranch","switchBranchDuringRun","branchPickerNextDisabled","branchCount","suggestionSendMode","canSendText","suggestionTriggerDisabled","send","messageErrorText","reason","error","threadListLoadMoreDisabled","threads","hasMore","isLoading","isLoadingMore"],"sources":["../../src/store/primitive-predicates.ts"],"sourcesContent":["import type {\n ReadonlyJSONArray,\n ReadonlyJSONObject,\n} from \"assistant-stream/utils\";\nimport type { AssistantState } from \"@assistant-ui/store\";\n\n/**\n * Disabled predicates shared by every binding's primitive layer. Each binding\n * consumes these as state selectors so the disabled semantics of a primitive\n * cannot drift between frameworks.\n */\n\nexport const composerSendDisabled = (s: AssistantState): boolean =>\n !s.composer.canSend ||\n (s.thread.isRunning &&\n !s.thread.capabilities.queue &&\n s.thread.voice === undefined);\n\nexport const composerCancelDisabled = (s: AssistantState): boolean =>\n !s.composer.canCancel;\n\nexport const composerInputDisabled = (s: AssistantState): boolean =>\n s.thread.isDisabled || s.composer.dictation?.inputDisabled === true;\n\nexport const actionBarEditDisabled = (s: AssistantState): boolean =>\n s.composer.isEditing ||\n s.optional.message?.submission !== undefined ||\n s.optional.thread?.voice !== undefined ||\n s.optional.thread?.capabilities.edit === false;\n\nexport const actionBarReloadDisabled = (s: AssistantState): boolean =>\n s.thread.isRunning ||\n s.thread.isDisabled ||\n s.thread.voice !== undefined ||\n s.message.role !== \"assistant\" ||\n !s.thread.capabilities.reload;\n\nexport const actionBarCopyDisabled = (s: AssistantState): boolean =>\n !(\n (s.message.role !== \"assistant\" || s.message.status?.type !== \"running\") &&\n s.message.parts.some((part) => part.type === \"text\" && part.text.length > 0)\n );\n\nexport const branchPickerPreviousDisabled = (s: AssistantState): boolean =>\n s.message.branchNumber <= 1 ||\n !s.thread.capabilities.switchToBranch ||\n (s.thread.isRunning && !s.thread.capabilities.switchBranchDuringRun);\n\nexport const branchPickerNextDisabled = (s: AssistantState): boolean =>\n s.message.branchNumber >= s.message.branchCount ||\n !s.thread.capabilities.switchToBranch ||\n (s.thread.isRunning && !s.thread.capabilities.switchBranchDuringRun);\n\nexport const suggestionSendMode = (\n thread: AssistantState[\"thread\"],\n): \"now\" | \"queued\" | \"blocked\" => {\n if (thread.voice !== undefined)\n return thread.voice.canSendText ? \"now\" : \"blocked\";\n if (!thread.isRunning) return \"now\";\n return thread.capabilities.queue ? \"queued\" : \"blocked\";\n};\n\nexport const suggestionTriggerDisabled = (\n s: AssistantState,\n send: boolean,\n): boolean =>\n s.thread.isDisabled || (send && suggestionSendMode(s.thread) === \"blocked\");\n\nexport const messageErrorText = (\n s: AssistantState,\n):\n | string\n | number\n | boolean\n | ReadonlyJSONObject\n | ReadonlyJSONArray\n | undefined => {\n if (\n s.message.status?.type !== \"incomplete\" ||\n s.message.status.reason !== \"error\"\n ) {\n return undefined;\n }\n const error = s.message.status.error;\n if (typeof error === \"string\") return error;\n if (\n typeof error === \"object\" &&\n error !== null &&\n \"message\" in error &&\n typeof error.message === \"string\"\n ) {\n return error.message;\n }\n return error ?? \"An error occurred\";\n};\n\nexport const threadListLoadMoreDisabled = (s: AssistantState): boolean =>\n !s.threads.hasMore || s.threads.isLoading || s.threads.isLoadingMore;\n"],"mappings":";;;;;;AAYA,MAAaG,wBAAwBC,MACnC,CAACA,EAAEC,SAASC,WACXF,EAAEG,OAAOC,aACR,CAACJ,EAAEG,OAAOE,aAAaC,SACvBN,EAAEG,OAAOI,UAAUC,KAAAA;AAEvB,MAAaC,0BAA0BT,MACrC,CAACA,EAAEC,SAASS;AAEd,MAAaC,yBAAyBX,MACpCA,EAAEG,OAAOS,cAAcZ,EAAEC,SAASY,WAAWC,kBAAkB;AAEjE,MAAaC,yBAAyBf,MACpCA,EAAEC,SAASe,aACXhB,EAAEiB,SAASC,SAASC,eAAeX,KAAAA,KACnCR,EAAEiB,SAASd,QAAQI,UAAUC,KAAAA,KAC7BR,EAAEiB,SAASd,QAAQE,aAAae,SAAS;AAE3C,MAAaC,2BAA2BrB,MACtCA,EAAEG,OAAOC,aACTJ,EAAEG,OAAOS,cACTZ,EAAEG,OAAOI,UAAUC,KAAAA,KACnBR,EAAEkB,QAAQI,SAAS,eACnB,CAACtB,EAAEG,OAAOE,aAAakB;AAEzB,MAAaC,yBAAyBxB,MACpC,GACGA,EAAEkB,QAAQI,SAAS,eAAetB,EAAEkB,QAAQO,QAAQC,SAAS,cAC9D1B,EAAEkB,QAAQS,MAAMC,MAAMC,SAASA,KAAKH,SAAS,UAAUG,KAAKC,KAAKC,SAAS,CAAC;AAG/E,MAAaC,gCAAgChC,MAC3CA,EAAEkB,QAAQe,gBAAgB,KAC1B,CAACjC,EAAEG,OAAOE,aAAa6B,kBACtBlC,EAAEG,OAAOC,aAAa,CAACJ,EAAEG,OAAOE,aAAa8B;AAEhD,MAAaC,4BAA4BpC,MACvCA,EAAEkB,QAAQe,gBAAgBjC,EAAEkB,QAAQmB,eACpC,CAACrC,EAAEG,OAAOE,aAAa6B,kBACtBlC,EAAEG,OAAOC,aAAa,CAACJ,EAAEG,OAAOE,aAAa8B;AAEhD,MAAaG,sBACXnC,WACiC;CACjC,IAAIA,OAAOI,UAAUC,KAAAA,GACnB,OAAOL,OAAOI,MAAMgC,cAAc,QAAQ;CAC5C,IAAI,CAACpC,OAAOC,WAAW,OAAO;CAC9B,OAAOD,OAAOE,aAAaC,QAAQ,WAAW;AAChD;AAEA,MAAakC,6BACXxC,GACAyC,SAEAzC,EAAEG,OAAOS,cAAe6B,QAAQH,mBAAmBtC,EAAEG,MAAM,MAAM;AAEnE,MAAauC,oBACX1C,MAOe;CACf,IACEA,EAAEkB,QAAQO,QAAQC,SAAS,gBAC3B1B,EAAEkB,QAAQO,OAAOkB,WAAW,SAE5B;CAEF,MAAMC,QAAQ5C,EAAEkB,QAAQO,OAAOmB;CAC/B,IAAI,OAAOA,UAAU,UAAU,OAAOA;CACtC,IACE,OAAOA,UAAU,YACjBA,UAAU,QACV,aAAaA,SACb,OAAOA,MAAM1B,YAAY,UAEzB,OAAO0B,MAAM1B;CAEf,OAAO0B,SAAS;AAClB;AAEA,MAAaC,8BAA8B7C,MACzC,CAACA,EAAE8C,QAAQC,WAAW/C,EAAE8C,QAAQE,aAAahD,EAAE8C,QAAQG"}
@@ -1,9 +1,6 @@
1
- import { AttachmentRuntime } from "../../runtime/api/attachment-runtime.js";
2
- import { ClientOutput } from "@assistant-ui/store";
3
- //#region src/store/runtime-clients/attachment-runtime-client.d.ts
4
- declare const AttachmentRuntimeClient: import("@assistant-ui/tap").Resource<ClientOutput<"attachment">, [{
5
- runtime: AttachmentRuntime;
1
+ import type { ClientOutput } from "@assistant-ui/store";
2
+ import type { AttachmentRuntime } from "../../runtime/api/attachment-runtime.js";
3
+ export declare const AttachmentRuntimeClient: import("@assistant-ui/tap").Resource<ClientOutput<"attachment">, [{
4
+ runtime: AttachmentRuntime;
6
5
  }]>;
7
- //#endregion
8
- export { AttachmentRuntimeClient };
9
6
  //# sourceMappingURL=attachment-runtime-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachment-runtime-client.d.ts","names":[],"sources":["../../../src/store/runtime-clients/attachment-runtime-client.ts"],"mappings":";;;cAoBa,qDAAuB,SAAA;EAXzB,SAAA"}
1
+ {"version":3,"file":"attachment-runtime-client.d.ts","sourceRoot":"","sources":["../../../src/store/runtime-clients/attachment-runtime-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,gDAA6C;AAkB9E,eAAO,MAAM,uBAAuB;aAXzB,iBAAiB;GAW+C,CAAC"}
@@ -1,16 +1,13 @@
1
- import { ComposerRuntime } from "../../runtime/api/composer-runtime.js";
2
- import { ClientOutput } from "@assistant-ui/store";
3
- //#region src/store/runtime-clients/composer-runtime-client.d.ts
4
- declare const ComposerClient: import("@assistant-ui/tap").Resource<ClientOutput<"composer">, [{
5
- threadIdRef: {
6
- current: string;
7
- };
8
- messageIdRef?: {
9
- current: string;
10
- };
11
- runtime: ComposerRuntime;
12
- isSuggestion?: ((text: string) => boolean) | undefined;
1
+ import type { ClientOutput } from "@assistant-ui/store";
2
+ import type { ComposerRuntime } from "../../runtime/api/composer-runtime.js";
3
+ export declare const ComposerClient: import("@assistant-ui/tap").Resource<ClientOutput<"composer">, [{
4
+ threadIdRef: {
5
+ current: string;
6
+ };
7
+ messageIdRef?: {
8
+ current: string;
9
+ };
10
+ runtime: ComposerRuntime;
11
+ isSuggestion?: ((text: string) => boolean) | undefined;
13
12
  }]>;
14
- //#endregion
15
- export { ComposerClient };
16
13
  //# sourceMappingURL=composer-runtime-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"composer-runtime-client.d.ts","names":[],"sources":["../../../src/store/runtime-clients/composer-runtime-client.ts"],"mappings":";;;cAwNa,4CAAc,SAAA;EAzJZ;IAAE;;EACA;IAAE;;EACR,SAAA;EACM,iBAAE"}
1
+ {"version":3,"file":"composer-runtime-client.d.ts","sourceRoot":"","sources":["../../../src/store/runtime-clients/composer-runtime-client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EACV,eAAe,EAEhB,8CAA2C;AAiN5C,eAAO,MAAM,cAAc;iBAzJZ;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE;mBACjB;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE;aACzB,eAAe;mBACT,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS;GAsJC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { runCleanups } from "../../subscribable/subscribable.js";
1
2
  import { useSubscribable } from "./useSubscribable.js";
2
3
  import { AttachmentRuntimeClient } from "./attachment-runtime-client.js";
3
4
  import { useAssistantEmit, useClientLookup } from "@assistant-ui/store/client";
@@ -38,7 +39,7 @@ const useQueueItemClient = ({ item, onMove, onRemove }) => {
38
39
  };
39
40
  const QueueItemClient = resource(useQueueItemClient);
40
41
  const useComposerClient = (t0) => {
41
- const $ = c(63);
42
+ const $ = c(65);
42
43
  const { threadIdRef, messageIdRef, runtime, isSuggestion } = t0;
43
44
  const runtimeState = useSubscribable(runtime);
44
45
  const emit = useAssistantEmit();
@@ -78,9 +79,7 @@ const useComposerClient = (t0) => {
78
79
  ...payload_1.contentType ? { contentType: payload_1.contentType } : void 0
79
80
  });
80
81
  }));
81
- return () => {
82
- for (const unsub of unsubscribers) unsub();
83
- };
82
+ return () => runCleanups(unsubscribers);
84
83
  };
85
84
  t2 = [
86
85
  runtime,
@@ -137,7 +136,7 @@ const useComposerClient = (t0) => {
137
136
  const queueItems = useClientLookup(t4);
138
137
  const t5 = runtimeState.type ?? "thread";
139
138
  let t6;
140
- if ($[16] !== attachments.state || $[17] !== queue || $[18] !== runtimeState.attachmentAccept || $[19] !== runtimeState.canCancel || $[20] !== runtimeState.canSend || $[21] !== runtimeState.dictation || $[22] !== runtimeState.isEditing || $[23] !== runtimeState.isEmpty || $[24] !== runtimeState.quote || $[25] !== runtimeState.role || $[26] !== runtimeState.runConfig || $[27] !== runtimeState.text || $[28] !== t5) {
139
+ if ($[16] !== attachments.state || $[17] !== queue || $[18] !== runtimeState.attachmentAccept || $[19] !== runtimeState.canCancel || $[20] !== runtimeState.canSend || $[21] !== runtimeState.dictation || $[22] !== runtimeState.inTransit || $[23] !== runtimeState.isEditing || $[24] !== runtimeState.isEmpty || $[25] !== runtimeState.quote || $[26] !== runtimeState.role || $[27] !== runtimeState.runConfig || $[28] !== runtimeState.submission || $[29] !== runtimeState.text || $[30] !== t5) {
141
140
  t6 = {
142
141
  text: runtimeState.text,
143
142
  role: runtimeState.role,
@@ -151,7 +150,9 @@ const useComposerClient = (t0) => {
151
150
  type: t5,
152
151
  dictation: runtimeState.dictation,
153
152
  quote: runtimeState.quote,
154
- queue
153
+ queue,
154
+ submission: runtimeState.submission,
155
+ inTransit: runtimeState.inTransit
155
156
  };
156
157
  $[16] = attachments.state;
157
158
  $[17] = queue;
@@ -159,72 +160,74 @@ const useComposerClient = (t0) => {
159
160
  $[19] = runtimeState.canCancel;
160
161
  $[20] = runtimeState.canSend;
161
162
  $[21] = runtimeState.dictation;
162
- $[22] = runtimeState.isEditing;
163
- $[23] = runtimeState.isEmpty;
164
- $[24] = runtimeState.quote;
165
- $[25] = runtimeState.role;
166
- $[26] = runtimeState.runConfig;
167
- $[27] = runtimeState.text;
168
- $[28] = t5;
169
- $[29] = t6;
170
- } else t6 = $[29];
163
+ $[22] = runtimeState.inTransit;
164
+ $[23] = runtimeState.isEditing;
165
+ $[24] = runtimeState.isEmpty;
166
+ $[25] = runtimeState.quote;
167
+ $[26] = runtimeState.role;
168
+ $[27] = runtimeState.runConfig;
169
+ $[28] = runtimeState.submission;
170
+ $[29] = runtimeState.text;
171
+ $[30] = t5;
172
+ $[31] = t6;
173
+ } else t6 = $[31];
171
174
  const state = t6;
172
175
  let t7;
173
- if ($[30] !== state) {
176
+ if ($[32] !== state) {
174
177
  t7 = () => state;
175
- $[30] = state;
176
- $[31] = t7;
177
- } else t7 = $[31];
178
+ $[32] = state;
179
+ $[33] = t7;
180
+ } else t7 = $[33];
178
181
  let t8;
179
- if ($[32] !== isSuggestion || $[33] !== runtime) {
182
+ if ($[34] !== isSuggestion || $[35] !== runtime) {
180
183
  t8 = (options) => {
181
184
  const state_0 = runtime.getState();
182
185
  pendingSuggestion.current = state_0.canSend && (isSuggestion?.(state_0.text) ?? false);
183
186
  runtime.send(options);
184
187
  };
185
- $[32] = isSuggestion;
186
- $[33] = runtime;
187
- $[34] = t8;
188
- } else t8 = $[34];
188
+ $[34] = isSuggestion;
189
+ $[35] = runtime;
190
+ $[36] = t8;
191
+ } else t8 = $[36];
189
192
  let t9;
190
- if ($[35] !== emit || $[36] !== messageIdRef || $[37] !== runtime || $[38] !== threadIdRef) {
193
+ if ($[37] !== emit || $[38] !== messageIdRef || $[39] !== runtime || $[40] !== threadIdRef) {
191
194
  t9 = () => {
192
195
  if (!messageIdRef && runtime.getState().canCancel) emit("composer.cancel", { threadId: threadIdRef.current });
193
196
  runtime.cancel();
194
197
  };
195
- $[35] = emit;
196
- $[36] = messageIdRef;
197
- $[37] = runtime;
198
- $[38] = threadIdRef;
199
- $[39] = t9;
200
- } else t9 = $[39];
198
+ $[37] = emit;
199
+ $[38] = messageIdRef;
200
+ $[39] = runtime;
201
+ $[40] = threadIdRef;
202
+ $[41] = t9;
203
+ } else t9 = $[41];
201
204
  const t10 = runtime.beginEdit ?? _temp;
202
205
  let t11;
203
- if ($[40] !== attachments) {
206
+ if ($[42] !== attachments) {
204
207
  t11 = (selector) => {
205
208
  if ("id" in selector) return attachments.get({ key: selector.id });
206
209
  else return attachments.get(selector);
207
210
  };
208
- $[40] = attachments;
209
- $[41] = t11;
210
- } else t11 = $[41];
211
+ $[42] = attachments;
212
+ $[43] = t11;
213
+ } else t11 = $[43];
211
214
  let t12;
212
- if ($[42] !== queueItems) {
215
+ if ($[44] !== queueItems) {
213
216
  t12 = (selector_0) => {
214
217
  if ("id" in selector_0) return queueItems.get({ key: selector_0.id });
215
218
  else return queueItems.get(selector_0);
216
219
  };
217
- $[42] = queueItems;
218
- $[43] = t12;
219
- } else t12 = $[43];
220
+ $[44] = queueItems;
221
+ $[45] = t12;
222
+ } else t12 = $[45];
220
223
  let t13;
221
- if ($[44] !== runtime) {
224
+ if ($[46] !== runtime) {
222
225
  t13 = () => runtime;
223
- $[44] = runtime;
224
- $[45] = t13;
225
- } else t13 = $[45];
226
+ $[46] = runtime;
227
+ $[47] = t13;
228
+ } else t13 = $[47];
226
229
  let t14;
227
- if ($[46] !== runtime.addAttachment || $[47] !== runtime.clearAttachments || $[48] !== runtime.reset || $[49] !== runtime.setQuote || $[50] !== runtime.setRole || $[51] !== runtime.setRunConfig || $[52] !== runtime.setText || $[53] !== runtime.startDictation || $[54] !== runtime.stopDictation || $[55] !== t10 || $[56] !== t11 || $[57] !== t12 || $[58] !== t13 || $[59] !== t7 || $[60] !== t8 || $[61] !== t9) {
230
+ if ($[48] !== runtime.addAttachment || $[49] !== runtime.clearAttachments || $[50] !== runtime.reset || $[51] !== runtime.setQuote || $[52] !== runtime.setRole || $[53] !== runtime.setRunConfig || $[54] !== runtime.setText || $[55] !== runtime.startDictation || $[56] !== runtime.stopDictation || $[57] !== t10 || $[58] !== t11 || $[59] !== t12 || $[60] !== t13 || $[61] !== t7 || $[62] !== t8 || $[63] !== t9) {
228
231
  t14 = {
229
232
  getState: t7,
230
233
  setText: runtime.setText,
@@ -243,24 +246,24 @@ const useComposerClient = (t0) => {
243
246
  queueItem: t12,
244
247
  __internal_getRuntime: t13
245
248
  };
246
- $[46] = runtime.addAttachment;
247
- $[47] = runtime.clearAttachments;
248
- $[48] = runtime.reset;
249
- $[49] = runtime.setQuote;
250
- $[50] = runtime.setRole;
251
- $[51] = runtime.setRunConfig;
252
- $[52] = runtime.setText;
253
- $[53] = runtime.startDictation;
254
- $[54] = runtime.stopDictation;
255
- $[55] = t10;
256
- $[56] = t11;
257
- $[57] = t12;
258
- $[58] = t13;
259
- $[59] = t7;
260
- $[60] = t8;
261
- $[61] = t9;
262
- $[62] = t14;
263
- } else t14 = $[62];
249
+ $[48] = runtime.addAttachment;
250
+ $[49] = runtime.clearAttachments;
251
+ $[50] = runtime.reset;
252
+ $[51] = runtime.setQuote;
253
+ $[52] = runtime.setRole;
254
+ $[53] = runtime.setRunConfig;
255
+ $[54] = runtime.setText;
256
+ $[55] = runtime.startDictation;
257
+ $[56] = runtime.stopDictation;
258
+ $[57] = t10;
259
+ $[58] = t11;
260
+ $[59] = t12;
261
+ $[60] = t13;
262
+ $[61] = t7;
263
+ $[62] = t8;
264
+ $[63] = t9;
265
+ $[64] = t14;
266
+ } else t14 = $[64];
264
267
  return t14;
265
268
  };
266
269
  const ComposerClient = resource(useComposerClient);
@@ -1 +1 @@
1
- {"version":3,"file":"composer-runtime-client.js","names":["Unsubscribe","useMemo","useEffect","useRef","useResource","resource","withKey","ClientOutput","useAssistantEmit","useClientLookup","ComposerRuntime","EditComposerRuntime","ComposerState","QueueItemState","QueuePlacement","AttachmentRuntimeClient","useSubscribable","useComposerAttachmentClientByIndex","t0","$","_c","runtime","index","t1","getAttachmentByIndex","attachmentRuntime","t2","ComposerAttachmentClientByIndex","useQueueItemClient","item","onMove","onRemove","placement","getState","steer","lane","insertAfter","move","remove","QueueItemClient","useComposerClient","threadIdRef","messageIdRef","isSuggestion","runtimeState","emit","pendingSuggestion","unsubscribers","sendUnsubscribe","unstable_on","payload","suggestion","current","threadId","messageId","chars","attachments","undefined","push","attachmentUnsubscribe","payload_0","contentType","payload_1","attachmentId","reason","message","unsub","t3","t4","attachment","idx","id","map","queue","t5","moveQueueItem","removeQueueItem","queueItems","type","t6","state","attachmentAccept","canCancel","canSend","dictation","isEditing","isEmpty","quote","role","runConfig","text","t7","t8","options","state_0","send","t9","cancel","t10","beginEdit","_temp","t11","selector","get","key","t12","selector_0","t13","t14","addAttachment","clearAttachments","reset","setQuote","setRole","setRunConfig","setText","startDictation","stopDictation","queueItem","__internal_getRuntime","ComposerClient","Error"],"sources":["../../../src/store/runtime-clients/composer-runtime-client.ts"],"sourcesContent":["import type { Unsubscribe } from \"../../types/unsubscribe\";\nimport { useMemo, useEffect, useRef } from \"react\";\nimport { useResource, resource, withKey } from \"@assistant-ui/tap\";\nimport type { ClientOutput } from \"@assistant-ui/store\";\nimport { useAssistantEmit, useClientLookup } from \"@assistant-ui/store/client\";\nimport type {\n ComposerRuntime,\n EditComposerRuntime,\n} from \"../../runtime/api/composer-runtime\";\nimport type { ComposerState } from \"../scopes/composer\";\nimport type { QueueItemState } from \"../scopes/queue-item\";\nimport type { QueuePlacement } from \"../../runtime/queue/external-thread-queue-adapter\";\nimport { AttachmentRuntimeClient } from \"./attachment-runtime-client\";\nimport { useSubscribable } from \"./useSubscribable\";\n\nconst useComposerAttachmentClientByIndex = ({\n runtime,\n index,\n}: {\n runtime: ComposerRuntime;\n index: number;\n}) => {\n const attachmentRuntime = useMemo(\n () => runtime.getAttachmentByIndex(index),\n [runtime, index],\n );\n\n return useResource(\n AttachmentRuntimeClient({\n runtime: attachmentRuntime,\n }),\n );\n};\n\nconst ComposerAttachmentClientByIndex = resource(\n useComposerAttachmentClientByIndex,\n);\n\nconst useQueueItemClient = ({\n item,\n onMove,\n onRemove,\n}: {\n item: QueueItemState;\n onMove: (placement: QueuePlacement) => void;\n onRemove: () => void;\n}): ClientOutput<\"queueItem\"> => {\n return {\n getState: () => item,\n steer: () => onMove({ lane: \"steer\", insertAfter: null }),\n move: onMove,\n remove: onRemove,\n };\n};\n\nconst QueueItemClient = resource(useQueueItemClient);\n\nconst useComposerClient = ({\n threadIdRef,\n messageIdRef,\n runtime,\n isSuggestion,\n}: {\n threadIdRef: { current: string };\n messageIdRef?: { current: string };\n runtime: ComposerRuntime;\n isSuggestion?: ((text: string) => boolean) | undefined;\n}): ClientOutput<\"composer\"> => {\n const runtimeState = useSubscribable(runtime);\n const emit = useAssistantEmit();\n const pendingSuggestion = useRef(false);\n\n // Bind composer events to event manager\n useEffect(() => {\n const unsubscribers: Unsubscribe[] = [];\n\n // Subscribe to composer events\n const sendUnsubscribe = runtime.unstable_on(\"send\", (payload) => {\n const suggestion = pendingSuggestion.current;\n pendingSuggestion.current = false;\n emit(\"composer.send\", {\n threadId: threadIdRef.current,\n ...(messageIdRef && { messageId: messageIdRef.current }),\n chars: payload.chars,\n attachments: payload.attachments,\n ...(suggestion ? { suggestion: true } : undefined),\n });\n });\n unsubscribers.push(sendUnsubscribe);\n\n const attachmentUnsubscribe = runtime.unstable_on(\n \"attachmentAdd\",\n (payload) => {\n emit(\"composer.attachmentAdd\", {\n threadId: threadIdRef.current,\n ...(messageIdRef && { messageId: messageIdRef.current }),\n ...(payload.contentType\n ? { contentType: payload.contentType }\n : undefined),\n });\n },\n );\n unsubscribers.push(attachmentUnsubscribe);\n\n unsubscribers.push(\n runtime.unstable_on(\"attachmentAddError\", (payload) => {\n // payload.error omitted: raw Error is not store-serializable; use runtime.unstable_on for it.\n emit(\"composer.attachmentAddError\", {\n threadId: threadIdRef.current,\n ...(messageIdRef && { messageId: messageIdRef.current }),\n ...(payload.attachmentId && { attachmentId: payload.attachmentId }),\n reason: payload.reason,\n message: payload.message,\n ...(payload.contentType\n ? { contentType: payload.contentType }\n : undefined),\n });\n }),\n );\n\n return () => {\n for (const unsub of unsubscribers) unsub();\n };\n }, [runtime, emit, threadIdRef, messageIdRef]);\n\n const attachments = useClientLookup(\n runtimeState.attachments.map((attachment, idx) =>\n withKey(\n attachment.id,\n ComposerAttachmentClientByIndex({\n runtime,\n index: idx,\n }),\n [runtime, idx],\n ),\n ),\n );\n\n const queue = runtimeState.queue;\n const queueItems = useClientLookup(\n queue.map((item) =>\n withKey(\n item.id,\n QueueItemClient({\n item,\n onMove: (placement) => runtime.moveQueueItem(item.id, placement),\n onRemove: () => runtime.removeQueueItem(item.id),\n }),\n ),\n ),\n );\n\n const state = useMemo<ComposerState>(() => {\n return {\n text: runtimeState.text,\n role: runtimeState.role,\n attachments: attachments.state,\n runConfig: runtimeState.runConfig,\n isEditing: runtimeState.isEditing,\n canCancel: runtimeState.canCancel,\n canSend: runtimeState.canSend,\n attachmentAccept: runtimeState.attachmentAccept,\n isEmpty: runtimeState.isEmpty,\n type: runtimeState.type ?? \"thread\",\n dictation: runtimeState.dictation,\n quote: runtimeState.quote,\n queue,\n };\n }, [runtimeState, attachments.state, queue]);\n\n return {\n getState: () => state,\n setText: runtime.setText,\n setRole: runtime.setRole,\n setRunConfig: runtime.setRunConfig,\n addAttachment: runtime.addAttachment,\n reset: runtime.reset,\n clearAttachments: runtime.clearAttachments,\n send: (options) => {\n const state = runtime.getState();\n pendingSuggestion.current =\n state.canSend && (isSuggestion?.(state.text) ?? false);\n runtime.send(options);\n },\n cancel: () => {\n if (!messageIdRef && runtime.getState().canCancel) {\n emit(\"composer.cancel\", { threadId: threadIdRef.current });\n }\n runtime.cancel();\n },\n beginEdit:\n (runtime as EditComposerRuntime).beginEdit ??\n (() => {\n throw new Error(\"beginEdit is not supported in this runtime\");\n }),\n startDictation: runtime.startDictation,\n stopDictation: runtime.stopDictation,\n setQuote: runtime.setQuote,\n attachment: (selector) => {\n if (\"id\" in selector) {\n return attachments.get({ key: selector.id });\n } else {\n return attachments.get(selector);\n }\n },\n queueItem: (selector) => {\n if (\"id\" in selector) {\n return queueItems.get({ key: selector.id });\n } else {\n return queueItems.get(selector);\n }\n },\n __internal_getRuntime: () => runtime,\n };\n};\n\nexport const ComposerClient = resource(useComposerClient);\n"],"mappings":"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"}
1
+ {"version":3,"file":"composer-runtime-client.js","names":["Unsubscribe","useMemo","useEffect","useRef","useResource","resource","withKey","ClientOutput","useAssistantEmit","useClientLookup","ComposerRuntime","EditComposerRuntime","ComposerState","QueueItemState","QueuePlacement","AttachmentRuntimeClient","useSubscribable","runCleanups","useComposerAttachmentClientByIndex","t0","$","_c","runtime","index","t1","getAttachmentByIndex","attachmentRuntime","t2","ComposerAttachmentClientByIndex","useQueueItemClient","item","onMove","onRemove","placement","getState","steer","lane","insertAfter","move","remove","QueueItemClient","useComposerClient","threadIdRef","messageIdRef","isSuggestion","runtimeState","emit","pendingSuggestion","unsubscribers","sendUnsubscribe","unstable_on","payload","suggestion","current","threadId","messageId","chars","attachments","undefined","push","attachmentUnsubscribe","payload_0","contentType","payload_1","attachmentId","reason","message","t3","t4","attachment","idx","id","map","queue","t5","moveQueueItem","removeQueueItem","queueItems","type","t6","state","attachmentAccept","canCancel","canSend","dictation","inTransit","isEditing","isEmpty","quote","role","runConfig","submission","text","t7","t8","options","state_0","send","t9","cancel","t10","beginEdit","_temp","t11","selector","get","key","t12","selector_0","t13","t14","addAttachment","clearAttachments","reset","setQuote","setRole","setRunConfig","setText","startDictation","stopDictation","queueItem","__internal_getRuntime","ComposerClient","Error"],"sources":["../../../src/store/runtime-clients/composer-runtime-client.ts"],"sourcesContent":["import type { Unsubscribe } from \"../../types/unsubscribe\";\nimport { useMemo, useEffect, useRef } from \"react\";\nimport { useResource, resource, withKey } from \"@assistant-ui/tap\";\nimport type { ClientOutput } from \"@assistant-ui/store\";\nimport { useAssistantEmit, useClientLookup } from \"@assistant-ui/store/client\";\nimport type {\n ComposerRuntime,\n EditComposerRuntime,\n} from \"../../runtime/api/composer-runtime\";\nimport type { ComposerState } from \"../scopes/composer\";\nimport type { QueueItemState } from \"../scopes/queue-item\";\nimport type { QueuePlacement } from \"../../runtime/queue/external-thread-queue-adapter\";\nimport { AttachmentRuntimeClient } from \"./attachment-runtime-client\";\nimport { useSubscribable } from \"./useSubscribable\";\nimport { runCleanups } from \"../../subscribable/subscribable\";\n\nconst useComposerAttachmentClientByIndex = ({\n runtime,\n index,\n}: {\n runtime: ComposerRuntime;\n index: number;\n}) => {\n const attachmentRuntime = useMemo(\n () => runtime.getAttachmentByIndex(index),\n [runtime, index],\n );\n\n return useResource(\n AttachmentRuntimeClient({\n runtime: attachmentRuntime,\n }),\n );\n};\n\nconst ComposerAttachmentClientByIndex = resource(\n useComposerAttachmentClientByIndex,\n);\n\nconst useQueueItemClient = ({\n item,\n onMove,\n onRemove,\n}: {\n item: QueueItemState;\n onMove: (placement: QueuePlacement) => void;\n onRemove: () => void;\n}): ClientOutput<\"queueItem\"> => {\n return {\n getState: () => item,\n steer: () => onMove({ lane: \"steer\", insertAfter: null }),\n move: onMove,\n remove: onRemove,\n };\n};\n\nconst QueueItemClient = resource(useQueueItemClient);\n\nconst useComposerClient = ({\n threadIdRef,\n messageIdRef,\n runtime,\n isSuggestion,\n}: {\n threadIdRef: { current: string };\n messageIdRef?: { current: string };\n runtime: ComposerRuntime;\n isSuggestion?: ((text: string) => boolean) | undefined;\n}): ClientOutput<\"composer\"> => {\n const runtimeState = useSubscribable(runtime);\n const emit = useAssistantEmit();\n const pendingSuggestion = useRef(false);\n\n // Bind composer events to event manager\n useEffect(() => {\n const unsubscribers: Unsubscribe[] = [];\n\n // Subscribe to composer events\n const sendUnsubscribe = runtime.unstable_on(\"send\", (payload) => {\n const suggestion = pendingSuggestion.current;\n pendingSuggestion.current = false;\n emit(\"composer.send\", {\n threadId: threadIdRef.current,\n ...(messageIdRef && { messageId: messageIdRef.current }),\n chars: payload.chars,\n attachments: payload.attachments,\n ...(suggestion ? { suggestion: true } : undefined),\n });\n });\n unsubscribers.push(sendUnsubscribe);\n\n const attachmentUnsubscribe = runtime.unstable_on(\n \"attachmentAdd\",\n (payload) => {\n emit(\"composer.attachmentAdd\", {\n threadId: threadIdRef.current,\n ...(messageIdRef && { messageId: messageIdRef.current }),\n ...(payload.contentType\n ? { contentType: payload.contentType }\n : undefined),\n });\n },\n );\n unsubscribers.push(attachmentUnsubscribe);\n\n unsubscribers.push(\n runtime.unstable_on(\"attachmentAddError\", (payload) => {\n // payload.error omitted: raw Error is not store-serializable; use runtime.unstable_on for it.\n emit(\"composer.attachmentAddError\", {\n threadId: threadIdRef.current,\n ...(messageIdRef && { messageId: messageIdRef.current }),\n ...(payload.attachmentId && { attachmentId: payload.attachmentId }),\n reason: payload.reason,\n message: payload.message,\n ...(payload.contentType\n ? { contentType: payload.contentType }\n : undefined),\n });\n }),\n );\n\n return () => runCleanups(unsubscribers);\n }, [runtime, emit, threadIdRef, messageIdRef]);\n\n const attachments = useClientLookup(\n runtimeState.attachments.map((attachment, idx) =>\n withKey(\n attachment.id,\n ComposerAttachmentClientByIndex({\n runtime,\n index: idx,\n }),\n [runtime, idx],\n ),\n ),\n );\n\n const queue = runtimeState.queue;\n const queueItems = useClientLookup(\n queue.map((item) =>\n withKey(\n item.id,\n QueueItemClient({\n item,\n onMove: (placement) => runtime.moveQueueItem(item.id, placement),\n onRemove: () => runtime.removeQueueItem(item.id),\n }),\n ),\n ),\n );\n\n const state = useMemo<ComposerState>(() => {\n return {\n text: runtimeState.text,\n role: runtimeState.role,\n attachments: attachments.state,\n runConfig: runtimeState.runConfig,\n isEditing: runtimeState.isEditing,\n canCancel: runtimeState.canCancel,\n canSend: runtimeState.canSend,\n attachmentAccept: runtimeState.attachmentAccept,\n isEmpty: runtimeState.isEmpty,\n type: runtimeState.type ?? \"thread\",\n dictation: runtimeState.dictation,\n quote: runtimeState.quote,\n queue,\n submission: runtimeState.submission,\n inTransit: runtimeState.inTransit,\n };\n }, [runtimeState, attachments.state, queue]);\n\n return {\n getState: () => state,\n setText: runtime.setText,\n setRole: runtime.setRole,\n setRunConfig: runtime.setRunConfig,\n addAttachment: runtime.addAttachment,\n reset: runtime.reset,\n clearAttachments: runtime.clearAttachments,\n send: (options) => {\n const state = runtime.getState();\n pendingSuggestion.current =\n state.canSend && (isSuggestion?.(state.text) ?? false);\n runtime.send(options);\n },\n cancel: () => {\n if (!messageIdRef && runtime.getState().canCancel) {\n emit(\"composer.cancel\", { threadId: threadIdRef.current });\n }\n runtime.cancel();\n },\n beginEdit:\n (runtime as EditComposerRuntime).beginEdit ??\n (() => {\n throw new Error(\"beginEdit is not supported in this runtime\");\n }),\n startDictation: runtime.startDictation,\n stopDictation: runtime.stopDictation,\n setQuote: runtime.setQuote,\n attachment: (selector) => {\n if (\"id\" in selector) {\n return attachments.get({ key: selector.id });\n } else {\n return attachments.get(selector);\n }\n },\n queueItem: (selector) => {\n if (\"id\" in selector) {\n return queueItems.get({ key: selector.id });\n } else {\n return queueItems.get(selector);\n }\n },\n __internal_getRuntime: () => runtime,\n };\n};\n\nexport const ComposerClient = resource(useComposerClient);\n"],"mappings":"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"}
@@ -1,5 +1,2 @@
1
- //#region src/store/runtime-clients/handle-runtime-action.d.ts
2
- declare const handleRuntimeAction: (label: string, execute: () => Promise<void>) => Promise<void>;
3
- //#endregion
4
- export { handleRuntimeAction };
1
+ export declare const handleRuntimeAction: (label: string, execute: () => Promise<void>) => Promise<void>;
5
2
  //# sourceMappingURL=handle-runtime-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handle-runtime-action.d.ts","names":[],"sources":["../../../src/store/runtime-clients/handle-runtime-action.ts"],"mappings":";cAEa,sBACX,eACA,eAAe,kBACd"}
1
+ {"version":3,"file":"handle-runtime-action.d.ts","sourceRoot":"","sources":["../../../src/store/runtime-clients/handle-runtime-action.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,GAC9B,OAAO,MAAM,EACb,SAAS,MAAM,OAAO,CAAC,IAAI,CAAC,KAC3B,OAAO,CAAC,IAAI,CAQd,CAAC"}
@@ -1,5 +1,2 @@
1
- //#region src/store/runtime-clients/handle-thread-list-action.d.ts
2
- declare const handleThreadListAction: (action: string, execute: () => Promise<void>) => Promise<void>;
3
- //#endregion
4
- export { handleThreadListAction };
1
+ export declare const handleThreadListAction: (action: string, execute: () => Promise<void>) => Promise<void>;
5
2
  //# sourceMappingURL=handle-thread-list-action.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handle-thread-list-action.d.ts","names":[],"sources":["../../../src/store/runtime-clients/handle-thread-list-action.ts"],"mappings":";cAEa,yBACX,gBACA,eAAe,kBACd"}
1
+ {"version":3,"file":"handle-thread-list-action.d.ts","sourceRoot":"","sources":["../../../src/store/runtime-clients/handle-thread-list-action.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,sBAAsB,GACjC,QAAQ,MAAM,EACd,SAAS,MAAM,OAAO,CAAC,IAAI,CAAC,KAC3B,OAAO,CAAC,IAAI,CAA0D,CAAC"}
@@ -1,7 +1,4 @@
1
- //#region src/store/runtime-clients/liveRef.d.ts
2
- declare const liveRef: <T>(get: () => T) => {
3
- readonly current: T;
1
+ export declare const liveRef: <T>(get: () => T) => {
2
+ readonly current: T;
4
3
  };
5
- //#endregion
6
- export { liveRef };
7
4
  //# sourceMappingURL=liveRef.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"liveRef.d.ts","names":[],"sources":["../../../src/store/runtime-clients/liveRef.ts"],"mappings":";cAAa,UAAW,GAAG,WAAW;WAAe,SAAS"}
1
+ {"version":3,"file":"liveRef.d.ts","sourceRoot":"","sources":["../../../src/store/runtime-clients/liveRef.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,KAAK,MAAM,CAAC,KAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;CAI7D,CAAC"}
@@ -1,9 +1,6 @@
1
- import { MessagePartRuntime } from "../../runtime/api/message-part-runtime.js";
2
- import { ClientOutput } from "@assistant-ui/store";
3
- //#region src/store/runtime-clients/message-part-runtime-client.d.ts
4
- declare const MessagePartClient: import("@assistant-ui/tap").Resource<ClientOutput<"part">, [{
5
- runtime: MessagePartRuntime;
1
+ import type { ClientOutput } from "@assistant-ui/store";
2
+ import type { MessagePartRuntime } from "../../runtime/api/message-part-runtime.js";
3
+ export declare const MessagePartClient: import("@assistant-ui/tap").Resource<ClientOutput<"part">, [{
4
+ runtime: MessagePartRuntime;
6
5
  }]>;
7
- //#endregion
8
- export { MessagePartClient };
9
6
  //# sourceMappingURL=message-part-runtime-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"message-part-runtime-client.d.ts","names":[],"sources":["../../../src/store/runtime-clients/message-part-runtime-client.ts"],"mappings":";;;cAsBa,+CAAiB,SAAA;EAdnB,SAAA"}
1
+ {"version":3,"file":"message-part-runtime-client.d.ts","sourceRoot":"","sources":["../../../src/store/runtime-clients/message-part-runtime-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,kDAA+C;AAwBjF,eAAO,MAAM,iBAAiB;aAlBnB,kBAAkB;GAkBkC,CAAC"}