@assistant-ui/core 0.2.12 → 0.2.15

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 (445) hide show
  1. package/dist/adapters/attachment.js.map +1 -1
  2. package/dist/adapters/directive-formatter.js.map +1 -1
  3. package/dist/adapters/speech.js.map +1 -1
  4. package/dist/adapters/thread-history.d.ts +3 -1
  5. package/dist/adapters/thread-history.d.ts.map +1 -1
  6. package/dist/adapters/voice.js.map +1 -1
  7. package/dist/index.d.ts +3 -2
  8. package/dist/index.js.map +1 -1
  9. package/dist/internal/duplicate-detection.js.map +1 -1
  10. package/dist/internal.d.ts +2 -1
  11. package/dist/internal.js +2 -1
  12. package/dist/model-context/frame/host.js.map +1 -1
  13. package/dist/model-context/frame/provider.js.map +1 -1
  14. package/dist/model-context/frame/types.js.map +1 -1
  15. package/dist/model-context/registry.js.map +1 -1
  16. package/dist/model-context/tool.js.map +1 -1
  17. package/dist/model-context/types.d.ts +1 -0
  18. package/dist/model-context/types.d.ts.map +1 -1
  19. package/dist/model-context/types.js.map +1 -1
  20. package/dist/react/AssistantProvider.js +7 -1
  21. package/dist/react/AssistantProvider.js.map +1 -1
  22. package/dist/react/AssistantRuntimeProvider.js +18 -6
  23. package/dist/react/AssistantRuntimeProvider.js.map +1 -1
  24. package/dist/react/RuntimeAdapter.d.ts +1 -1
  25. package/dist/react/RuntimeAdapter.d.ts.map +1 -1
  26. package/dist/react/RuntimeAdapter.js +35 -6
  27. package/dist/react/RuntimeAdapter.js.map +1 -1
  28. package/dist/react/adapters/LocalStorageThreadListAdapter.js +29 -7
  29. package/dist/react/adapters/LocalStorageThreadListAdapter.js.map +1 -1
  30. package/dist/react/adapters/TitleGenerationAdapter.js.map +1 -1
  31. package/dist/react/client/DataRenderers.d.ts +1 -8
  32. package/dist/react/client/DataRenderers.d.ts.map +1 -1
  33. package/dist/react/client/DataRenderers.js +56 -36
  34. package/dist/react/client/DataRenderers.js.map +1 -1
  35. package/dist/react/client/Interactables.d.ts +1 -1
  36. package/dist/react/client/Interactables.d.ts.map +1 -1
  37. package/dist/react/client/Interactables.js +71 -70
  38. package/dist/react/client/Interactables.js.map +1 -1
  39. package/dist/react/client/Tools.d.ts +2 -13
  40. package/dist/react/client/Tools.d.ts.map +1 -1
  41. package/dist/react/client/Tools.js +121 -57
  42. package/dist/react/client/Tools.js.map +1 -1
  43. package/dist/react/client/interactable-model-context.js.map +1 -1
  44. package/dist/react/model-context/define-mcp-toolkit.js.map +1 -1
  45. package/dist/react/model-context/define-toolkit.js.map +1 -1
  46. package/dist/react/model-context/external-tool.js.map +1 -1
  47. package/dist/react/model-context/human-tool.js.map +1 -1
  48. package/dist/react/model-context/makeAssistantDataUI.js.map +1 -1
  49. package/dist/react/model-context/makeAssistantTool.js.map +1 -1
  50. package/dist/react/model-context/makeAssistantToolUI.js.map +1 -1
  51. package/dist/react/model-context/provider-tool.js.map +1 -1
  52. package/dist/react/model-context/stub-tool.js.map +1 -1
  53. package/dist/react/model-context/toolbox.js.map +1 -1
  54. package/dist/react/model-context/useAssistantContext.js.map +1 -1
  55. package/dist/react/model-context/useAssistantDataUI.js +27 -8
  56. package/dist/react/model-context/useAssistantDataUI.js.map +1 -1
  57. package/dist/react/model-context/useAssistantInstructions.js +33 -10
  58. package/dist/react/model-context/useAssistantInstructions.js.map +1 -1
  59. package/dist/react/model-context/useAssistantInteractable.js.map +1 -1
  60. package/dist/react/model-context/useAssistantTool.js +59 -17
  61. package/dist/react/model-context/useAssistantTool.js.map +1 -1
  62. package/dist/react/model-context/useAssistantToolUI.js +30 -9
  63. package/dist/react/model-context/useAssistantToolUI.js.map +1 -1
  64. package/dist/react/model-context/useAuiToolOverrides.js.map +1 -1
  65. package/dist/react/model-context/useInlineRender.js +35 -8
  66. package/dist/react/model-context/useInlineRender.js.map +1 -1
  67. package/dist/react/model-context/useInteractableState.js +65 -19
  68. package/dist/react/model-context/useInteractableState.js.map +1 -1
  69. package/dist/react/model-context/useToolArgsStatus.js +42 -14
  70. package/dist/react/model-context/useToolArgsStatus.js.map +1 -1
  71. package/dist/react/primitive-hooks/useActionBarCopy.js +59 -22
  72. package/dist/react/primitive-hooks/useActionBarCopy.js.map +1 -1
  73. package/dist/react/primitive-hooks/useActionBarEdit.js +25 -7
  74. package/dist/react/primitive-hooks/useActionBarEdit.js.map +1 -1
  75. package/dist/react/primitive-hooks/useActionBarFeedback.js +49 -13
  76. package/dist/react/primitive-hooks/useActionBarFeedback.js.map +1 -1
  77. package/dist/react/primitive-hooks/useActionBarReload.js +25 -7
  78. package/dist/react/primitive-hooks/useActionBarReload.js.map +1 -1
  79. package/dist/react/primitive-hooks/useActionBarSpeak.js +28 -9
  80. package/dist/react/primitive-hooks/useActionBarSpeak.js.map +1 -1
  81. package/dist/react/primitive-hooks/useActionBarStopSpeaking.js +25 -7
  82. package/dist/react/primitive-hooks/useActionBarStopSpeaking.js.map +1 -1
  83. package/dist/react/primitive-hooks/useBranchPickerNext.js +27 -11
  84. package/dist/react/primitive-hooks/useBranchPickerNext.js.map +1 -1
  85. package/dist/react/primitive-hooks/useBranchPickerPrevious.js +27 -11
  86. package/dist/react/primitive-hooks/useBranchPickerPrevious.js.map +1 -1
  87. package/dist/react/primitive-hooks/useComposerAddAttachment.js +24 -8
  88. package/dist/react/primitive-hooks/useComposerAddAttachment.js.map +1 -1
  89. package/dist/react/primitive-hooks/useComposerCancel.js +25 -7
  90. package/dist/react/primitive-hooks/useComposerCancel.js.map +1 -1
  91. package/dist/react/primitive-hooks/useComposerDictate.js +25 -7
  92. package/dist/react/primitive-hooks/useComposerDictate.js.map +1 -1
  93. package/dist/react/primitive-hooks/useComposerSend.js +25 -7
  94. package/dist/react/primitive-hooks/useComposerSend.js.map +1 -1
  95. package/dist/react/primitive-hooks/useEditComposerCancel.js +18 -4
  96. package/dist/react/primitive-hooks/useEditComposerCancel.js.map +1 -1
  97. package/dist/react/primitive-hooks/useEditComposerSend.js +25 -7
  98. package/dist/react/primitive-hooks/useEditComposerSend.js.map +1 -1
  99. package/dist/react/primitive-hooks/useMessageBranching.js +41 -9
  100. package/dist/react/primitive-hooks/useMessageBranching.js.map +1 -1
  101. package/dist/react/primitive-hooks/useMessageError.js +4 -1
  102. package/dist/react/primitive-hooks/useMessageError.js.map +1 -1
  103. package/dist/react/primitive-hooks/useMessageReload.js +25 -7
  104. package/dist/react/primitive-hooks/useMessageReload.js.map +1 -1
  105. package/dist/react/primitive-hooks/useSuggestionTrigger.js +31 -13
  106. package/dist/react/primitive-hooks/useSuggestionTrigger.js.map +1 -1
  107. package/dist/react/primitive-hooks/useThreadIsEmpty.js +4 -1
  108. package/dist/react/primitive-hooks/useThreadIsEmpty.js.map +1 -1
  109. package/dist/react/primitive-hooks/useThreadIsRunning.js +4 -1
  110. package/dist/react/primitive-hooks/useThreadIsRunning.js.map +1 -1
  111. package/dist/react/primitive-hooks/useThreadListItemArchive.js +18 -4
  112. package/dist/react/primitive-hooks/useThreadListItemArchive.js.map +1 -1
  113. package/dist/react/primitive-hooks/useThreadListItemDelete.js +18 -4
  114. package/dist/react/primitive-hooks/useThreadListItemDelete.js.map +1 -1
  115. package/dist/react/primitive-hooks/useThreadListItemTrigger.js +18 -4
  116. package/dist/react/primitive-hooks/useThreadListItemTrigger.js.map +1 -1
  117. package/dist/react/primitive-hooks/useThreadListItemUnarchive.js +18 -4
  118. package/dist/react/primitive-hooks/useThreadListItemUnarchive.js.map +1 -1
  119. package/dist/react/primitive-hooks/useThreadListLoadMore.js +25 -7
  120. package/dist/react/primitive-hooks/useThreadListLoadMore.js.map +1 -1
  121. package/dist/react/primitive-hooks/useThreadListNew.js +18 -4
  122. package/dist/react/primitive-hooks/useThreadListNew.js.map +1 -1
  123. package/dist/react/primitive-hooks/useThreadMessages.js +4 -1
  124. package/dist/react/primitive-hooks/useThreadMessages.js.map +1 -1
  125. package/dist/react/primitive-hooks/useVoice.js +63 -13
  126. package/dist/react/primitive-hooks/useVoice.js.map +1 -1
  127. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.js +42 -7
  128. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.js.map +1 -1
  129. package/dist/react/primitives/composer/ComposerAttachments.js +67 -16
  130. package/dist/react/primitives/composer/ComposerAttachments.js.map +1 -1
  131. package/dist/react/primitives/composer/ComposerIf.js +30 -9
  132. package/dist/react/primitives/composer/ComposerIf.js.map +1 -1
  133. package/dist/react/primitives/composer/ComposerQueue.js.map +1 -1
  134. package/dist/react/primitives/generativeUI/GenerativeUI.js +55 -13
  135. package/dist/react/primitives/generativeUI/GenerativeUI.js.map +1 -1
  136. package/dist/react/primitives/message/MessageAttachments.js +68 -16
  137. package/dist/react/primitives/message/MessageAttachments.js.map +1 -1
  138. package/dist/react/primitives/message/MessageGroupedParts.d.ts +3 -2
  139. package/dist/react/primitives/message/MessageGroupedParts.d.ts.map +1 -1
  140. package/dist/react/primitives/message/MessageGroupedParts.js +6 -6
  141. package/dist/react/primitives/message/MessageGroupedParts.js.map +1 -1
  142. package/dist/react/primitives/message/MessageParts.d.ts +28 -1
  143. package/dist/react/primitives/message/MessageParts.d.ts.map +1 -1
  144. package/dist/react/primitives/message/MessageParts.js +665 -163
  145. package/dist/react/primitives/message/MessageParts.js.map +1 -1
  146. package/dist/react/primitives/message/MessageQuote.js +18 -2
  147. package/dist/react/primitives/message/MessageQuote.js.map +1 -1
  148. package/dist/react/primitives/messagePart/MessagePartInProgress.js +6 -2
  149. package/dist/react/primitives/messagePart/MessagePartInProgress.js.map +1 -1
  150. package/dist/react/primitives/part/PartMessages.js +46 -14
  151. package/dist/react/primitives/part/PartMessages.js.map +1 -1
  152. package/dist/react/primitives/thread/ThreadMessages.js +67 -10
  153. package/dist/react/primitives/thread/ThreadMessages.js.map +1 -1
  154. package/dist/react/primitives/thread/ThreadSuggestions.js +50 -10
  155. package/dist/react/primitives/thread/ThreadSuggestions.js.map +1 -1
  156. package/dist/react/primitives/threadList/ThreadListItems.js +55 -14
  157. package/dist/react/primitives/threadList/ThreadListItems.js.map +1 -1
  158. package/dist/react/primitives/threadListItem/ThreadListItemTitle.js +15 -2
  159. package/dist/react/primitives/threadListItem/ThreadListItemTitle.js.map +1 -1
  160. package/dist/react/providers/AttachmentByIndexProvider.js +57 -12
  161. package/dist/react/providers/AttachmentByIndexProvider.js.map +1 -1
  162. package/dist/react/providers/ChainOfThoughtByIndicesProvider.js +33 -11
  163. package/dist/react/providers/ChainOfThoughtByIndicesProvider.js.map +1 -1
  164. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.js +29 -6
  165. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.js.map +1 -1
  166. package/dist/react/providers/MessageByIndexProvider.js +49 -19
  167. package/dist/react/providers/MessageByIndexProvider.js.map +1 -1
  168. package/dist/react/providers/PartByIndexProvider.js +29 -6
  169. package/dist/react/providers/PartByIndexProvider.js.map +1 -1
  170. package/dist/react/providers/QueueItemByIndexProvider.js +29 -6
  171. package/dist/react/providers/QueueItemByIndexProvider.js.map +1 -1
  172. package/dist/react/providers/ReadonlyThreadProvider.js +83 -28
  173. package/dist/react/providers/ReadonlyThreadProvider.js.map +1 -1
  174. package/dist/react/providers/SuggestionByIndexProvider.js +29 -6
  175. package/dist/react/providers/SuggestionByIndexProvider.js.map +1 -1
  176. package/dist/react/providers/TextMessagePartProvider.d.ts.map +1 -1
  177. package/dist/react/providers/TextMessagePartProvider.js +75 -26
  178. package/dist/react/providers/TextMessagePartProvider.js.map +1 -1
  179. package/dist/react/providers/ThreadListItemByIndexProvider.js +30 -6
  180. package/dist/react/providers/ThreadListItemByIndexProvider.js.map +1 -1
  181. package/dist/react/providers/ThreadListItemRuntimeProvider.js +28 -5
  182. package/dist/react/providers/ThreadListItemRuntimeProvider.js.map +1 -1
  183. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.d.ts +2 -0
  184. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.d.ts.map +1 -1
  185. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.js +19 -4
  186. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.js.map +1 -1
  187. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.d.ts +2 -0
  188. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -1
  189. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.js +1 -0
  190. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
  191. package/dist/react/runtimes/RuntimeAdapterProvider.js +27 -10
  192. package/dist/react/runtimes/RuntimeAdapterProvider.js.map +1 -1
  193. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -1
  194. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.js +16 -1
  195. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
  196. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.js.map +1 -1
  197. package/dist/react/runtimes/cloud/auiV0.js.map +1 -1
  198. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.d.ts.map +1 -1
  199. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.js +19 -17
  200. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.js.map +1 -1
  201. package/dist/react/runtimes/createMessageConverter.js.map +1 -1
  202. package/dist/react/runtimes/external-message-converter.d.ts.map +1 -1
  203. package/dist/react/runtimes/external-message-converter.js +67 -30
  204. package/dist/react/runtimes/external-message-converter.js.map +1 -1
  205. package/dist/react/runtimes/useExternalStoreRuntime.js +44 -10
  206. package/dist/react/runtimes/useExternalStoreRuntime.js.map +1 -1
  207. package/dist/react/runtimes/useExternalStoreSharedOptions.js +17 -12
  208. package/dist/react/runtimes/useExternalStoreSharedOptions.js.map +1 -1
  209. package/dist/react/runtimes/useLocalRuntime.js.map +1 -1
  210. package/dist/react/runtimes/useRemoteThreadListRuntime.js +34 -6
  211. package/dist/react/runtimes/useRemoteThreadListRuntime.js.map +1 -1
  212. package/dist/react/types/MessagePartComponentTypes.d.ts +5 -6
  213. package/dist/react/types/MessagePartComponentTypes.d.ts.map +1 -1
  214. package/dist/react/utils/getMessageQuote.js.map +1 -1
  215. package/dist/react/utils/groupParts.d.ts +13 -1
  216. package/dist/react/utils/groupParts.d.ts.map +1 -1
  217. package/dist/react/utils/groupParts.js +17 -5
  218. package/dist/react/utils/groupParts.js.map +1 -1
  219. package/dist/runtime/api/assistant-runtime.js.map +1 -1
  220. package/dist/runtime/api/attachment-runtime.js.map +1 -1
  221. package/dist/runtime/api/bindings.d.ts +1 -0
  222. package/dist/runtime/api/bindings.d.ts.map +1 -1
  223. package/dist/runtime/api/composer-runtime.js.map +1 -1
  224. package/dist/runtime/api/message-part-runtime.d.ts +3 -9
  225. package/dist/runtime/api/message-part-runtime.d.ts.map +1 -1
  226. package/dist/runtime/api/message-part-runtime.js +3 -6
  227. package/dist/runtime/api/message-part-runtime.js.map +1 -1
  228. package/dist/runtime/api/message-runtime.d.ts +2 -0
  229. package/dist/runtime/api/message-runtime.d.ts.map +1 -1
  230. package/dist/runtime/api/message-runtime.js +5 -0
  231. package/dist/runtime/api/message-runtime.js.map +1 -1
  232. package/dist/runtime/api/thread-list-item-runtime.js.map +1 -1
  233. package/dist/runtime/api/thread-list-runtime.d.ts.map +1 -1
  234. package/dist/runtime/api/thread-list-runtime.js +1 -0
  235. package/dist/runtime/api/thread-list-runtime.js.map +1 -1
  236. package/dist/runtime/api/thread-runtime.d.ts +3 -0
  237. package/dist/runtime/api/thread-runtime.d.ts.map +1 -1
  238. package/dist/runtime/api/thread-runtime.js +4 -0
  239. package/dist/runtime/api/thread-runtime.js.map +1 -1
  240. package/dist/runtime/base/base-assistant-runtime-core.js.map +1 -1
  241. package/dist/runtime/base/base-composer-runtime-core.js.map +1 -1
  242. package/dist/runtime/base/base-thread-runtime-core.d.ts +1 -0
  243. package/dist/runtime/base/base-thread-runtime-core.d.ts.map +1 -1
  244. package/dist/runtime/base/base-thread-runtime-core.js.map +1 -1
  245. package/dist/runtime/base/default-edit-composer-runtime-core.js.map +1 -1
  246. package/dist/runtime/base/default-thread-composer-runtime-core.js.map +1 -1
  247. package/dist/runtime/branch/external-thread-branch-adapter.d.ts +30 -0
  248. package/dist/runtime/branch/external-thread-branch-adapter.d.ts.map +1 -0
  249. package/dist/runtime/branch/external-thread-branch-adapter.js +0 -0
  250. package/dist/runtime/interfaces/thread-list-runtime-core.d.ts +1 -0
  251. package/dist/runtime/interfaces/thread-list-runtime-core.d.ts.map +1 -1
  252. package/dist/runtime/interfaces/thread-runtime-core.d.ts +4 -1
  253. package/dist/runtime/interfaces/thread-runtime-core.d.ts.map +1 -1
  254. package/dist/runtime/queue/message-queue.js.map +1 -1
  255. package/dist/runtime/utils/auto-status.js.map +1 -1
  256. package/dist/runtime/utils/external-store-message.js.map +1 -1
  257. package/dist/runtime/utils/message-repository.js.map +1 -1
  258. package/dist/runtime/utils/resolveToolApprovalResponse.d.ts +15 -0
  259. package/dist/runtime/utils/resolveToolApprovalResponse.d.ts.map +1 -0
  260. package/dist/runtime/utils/resolveToolApprovalResponse.js +35 -0
  261. package/dist/runtime/utils/resolveToolApprovalResponse.js.map +1 -0
  262. package/dist/runtime/utils/thread-message-like.d.ts +5 -1
  263. package/dist/runtime/utils/thread-message-like.d.ts.map +1 -1
  264. package/dist/runtime/utils/thread-message-like.js.map +1 -1
  265. package/dist/runtimes/assistant-transport/utils.js.map +1 -1
  266. package/dist/runtimes/external-store/external-store-adapter.d.ts +1 -0
  267. package/dist/runtimes/external-store/external-store-adapter.d.ts.map +1 -1
  268. package/dist/runtimes/external-store/external-store-runtime-core.js.map +1 -1
  269. package/dist/runtimes/external-store/external-store-shared-options.js.map +1 -1
  270. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.js.map +1 -1
  271. package/dist/runtimes/external-store/external-store-thread-runtime-core.d.ts +1 -0
  272. package/dist/runtimes/external-store/external-store-thread-runtime-core.d.ts.map +1 -1
  273. package/dist/runtimes/external-store/external-store-thread-runtime-core.js +13 -0
  274. package/dist/runtimes/external-store/external-store-thread-runtime-core.js.map +1 -1
  275. package/dist/runtimes/external-store/thread-message-converter.js.map +1 -1
  276. package/dist/runtimes/local/local-runtime-core.js.map +1 -1
  277. package/dist/runtimes/local/local-runtime-options.d.ts +1 -1
  278. package/dist/runtimes/local/local-thread-list-runtime-core.js.map +1 -1
  279. package/dist/runtimes/local/local-thread-runtime-core.d.ts +9 -1
  280. package/dist/runtimes/local/local-thread-runtime-core.d.ts.map +1 -1
  281. package/dist/runtimes/local/local-thread-runtime-core.js +65 -5
  282. package/dist/runtimes/local/local-thread-runtime-core.js.map +1 -1
  283. package/dist/runtimes/local/should-continue.js +4 -2
  284. package/dist/runtimes/local/should-continue.js.map +1 -1
  285. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.d.ts +2 -0
  286. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.d.ts.map +1 -1
  287. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.js +4 -0
  288. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.js.map +1 -1
  289. package/dist/runtimes/remote-thread-list/adapter/in-memory.js.map +1 -1
  290. package/dist/runtimes/remote-thread-list/empty-thread-core.d.ts.map +1 -1
  291. package/dist/runtimes/remote-thread-list/empty-thread-core.js +4 -0
  292. package/dist/runtimes/remote-thread-list/empty-thread-core.js.map +1 -1
  293. package/dist/runtimes/remote-thread-list/optimistic-state.js.map +1 -1
  294. package/dist/runtimes/remote-thread-list/remote-thread-state.d.ts +1 -0
  295. package/dist/runtimes/remote-thread-list/remote-thread-state.d.ts.map +1 -1
  296. package/dist/runtimes/remote-thread-list/remote-thread-state.js +1 -0
  297. package/dist/runtimes/remote-thread-list/remote-thread-state.js.map +1 -1
  298. package/dist/runtimes/remote-thread-list/types.d.ts +1 -0
  299. package/dist/runtimes/remote-thread-list/types.d.ts.map +1 -1
  300. package/dist/runtimes/tool-invocations/ToolInvocationTracker.js.map +1 -1
  301. package/dist/store/clients/chain-of-thought-client.d.ts +2 -7
  302. package/dist/store/clients/chain-of-thought-client.d.ts.map +1 -1
  303. package/dist/store/clients/chain-of-thought-client.js +39 -20
  304. package/dist/store/clients/chain-of-thought-client.js.map +1 -1
  305. package/dist/store/clients/model-context-client.d.ts +1 -1
  306. package/dist/store/clients/model-context-client.d.ts.map +1 -1
  307. package/dist/store/clients/model-context-client.js +67 -16
  308. package/dist/store/clients/model-context-client.js.map +1 -1
  309. package/dist/store/clients/no-op-composer-client.d.ts +2 -4
  310. package/dist/store/clients/no-op-composer-client.d.ts.map +1 -1
  311. package/dist/store/clients/no-op-composer-client.js +96 -54
  312. package/dist/store/clients/no-op-composer-client.js.map +1 -1
  313. package/dist/store/clients/runtime-adapter.d.ts +1 -3
  314. package/dist/store/clients/runtime-adapter.d.ts.map +1 -1
  315. package/dist/store/clients/runtime-adapter.js +2 -15
  316. package/dist/store/clients/runtime-adapter.js.map +1 -1
  317. package/dist/store/clients/suggestions.d.ts +1 -4
  318. package/dist/store/clients/suggestions.d.ts.map +1 -1
  319. package/dist/store/clients/suggestions.js +63 -23
  320. package/dist/store/clients/suggestions.js.map +1 -1
  321. package/dist/store/clients/thread-message-client.d.ts +1 -1
  322. package/dist/store/clients/thread-message-client.d.ts.map +1 -1
  323. package/dist/store/clients/thread-message-client.js +184 -73
  324. package/dist/store/clients/thread-message-client.js.map +1 -1
  325. package/dist/store/internal.d.ts +2 -2
  326. package/dist/store/internal.js +2 -2
  327. package/dist/store/runtime-clients/attachment-runtime-client.d.ts +2 -4
  328. package/dist/store/runtime-clients/attachment-runtime-client.d.ts.map +1 -1
  329. package/dist/store/runtime-clients/attachment-runtime-client.js +31 -7
  330. package/dist/store/runtime-clients/attachment-runtime-client.js.map +1 -1
  331. package/dist/store/runtime-clients/composer-runtime-client.d.ts +2 -10
  332. package/dist/store/runtime-clients/composer-runtime-client.d.ts.map +1 -1
  333. package/dist/store/runtime-clients/composer-runtime-client.js +195 -72
  334. package/dist/store/runtime-clients/composer-runtime-client.js.map +1 -1
  335. package/dist/store/runtime-clients/liveRef.d.ts +7 -0
  336. package/dist/store/runtime-clients/liveRef.d.ts.map +1 -0
  337. package/dist/store/runtime-clients/liveRef.js +8 -0
  338. package/dist/store/runtime-clients/liveRef.js.map +1 -0
  339. package/dist/store/runtime-clients/message-part-runtime-client.d.ts +2 -4
  340. package/dist/store/runtime-clients/message-part-runtime-client.d.ts.map +1 -1
  341. package/dist/store/runtime-clients/message-part-runtime-client.js +49 -9
  342. package/dist/store/runtime-clients/message-part-runtime-client.js.map +1 -1
  343. package/dist/store/runtime-clients/message-runtime-client.d.ts +2 -7
  344. package/dist/store/runtime-clients/message-runtime-client.d.ts.map +1 -1
  345. package/dist/store/runtime-clients/message-runtime-client.js +220 -54
  346. package/dist/store/runtime-clients/message-runtime-client.js.map +1 -1
  347. package/dist/store/runtime-clients/thread-list-item-runtime-client.d.ts +2 -4
  348. package/dist/store/runtime-clients/thread-list-item-runtime-client.d.ts.map +1 -1
  349. package/dist/store/runtime-clients/thread-list-item-runtime-client.js +71 -26
  350. package/dist/store/runtime-clients/thread-list-item-runtime-client.js.map +1 -1
  351. package/dist/store/runtime-clients/thread-list-runtime-client.d.ts +2 -5
  352. package/dist/store/runtime-clients/thread-list-runtime-client.d.ts.map +1 -1
  353. package/dist/store/runtime-clients/thread-list-runtime-client.js +141 -36
  354. package/dist/store/runtime-clients/thread-list-runtime-client.js.map +1 -1
  355. package/dist/store/runtime-clients/thread-runtime-client.d.ts +2 -4
  356. package/dist/store/runtime-clients/thread-runtime-client.d.ts.map +1 -1
  357. package/dist/store/runtime-clients/thread-runtime-client.js +196 -72
  358. package/dist/store/runtime-clients/thread-runtime-client.js.map +1 -1
  359. package/dist/store/runtime-clients/useSubscribable.js +2 -9
  360. package/dist/store/runtime-clients/useSubscribable.js.map +1 -1
  361. package/dist/store/scopes/message.d.ts +1 -0
  362. package/dist/store/scopes/message.d.ts.map +1 -1
  363. package/dist/store/scopes/part.d.ts +5 -6
  364. package/dist/store/scopes/part.d.ts.map +1 -1
  365. package/dist/store/scopes/queue-item.js.map +1 -1
  366. package/dist/store/scopes/thread-list-item.d.ts +1 -0
  367. package/dist/store/scopes/thread-list-item.d.ts.map +1 -1
  368. package/dist/store/scopes/thread.d.ts +1 -0
  369. package/dist/store/scopes/thread.d.ts.map +1 -1
  370. package/dist/subscribable/subscribable.js.map +1 -1
  371. package/dist/tests/remote-thread-list-test-helpers.js.map +1 -1
  372. package/dist/types/message.d.ts +38 -5
  373. package/dist/types/message.d.ts.map +1 -1
  374. package/dist/types/message.js.map +1 -1
  375. package/dist/utils/composite-context-provider.js.map +1 -1
  376. package/dist/utils/id.js.map +1 -1
  377. package/dist/utils/json/is-json-equal.js.map +1 -1
  378. package/dist/utils/json/is-json.js.map +1 -1
  379. package/dist/utils/text.js.map +1 -1
  380. package/package.json +6 -6
  381. package/src/adapters/thread-history.ts +2 -0
  382. package/src/index.ts +5 -0
  383. package/src/internal.ts +1 -0
  384. package/src/model-context/types.ts +1 -0
  385. package/src/react/AssistantProvider.tsx +10 -1
  386. package/src/react/RuntimeAdapter.ts +25 -8
  387. package/src/react/client/DataRenderers.ts +42 -45
  388. package/src/react/client/Interactables.ts +261 -261
  389. package/src/react/client/Tools.ts +9 -9
  390. package/src/react/primitives/message/MessageGroupedParts.tsx +19 -7
  391. package/src/react/primitives/message/MessageParts.tsx +64 -13
  392. package/src/react/providers/TextMessagePartProvider.tsx +5 -3
  393. package/src/react/runtimes/RemoteThreadListThreadListRuntimeCore.tsx +1 -0
  394. package/src/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.ts +11 -0
  395. package/src/react/runtimes/cloud/useCloudThreadListAdapter.tsx +6 -0
  396. package/src/react/runtimes/external-message-converter.ts +3 -1
  397. package/src/react/types/MessagePartComponentTypes.ts +5 -5
  398. package/src/react/utils/groupParts.ts +27 -0
  399. package/src/runtime/api/bindings.ts +1 -0
  400. package/src/runtime/api/message-part-runtime.ts +14 -11
  401. package/src/runtime/api/message-runtime.ts +7 -0
  402. package/src/runtime/api/thread-list-runtime.ts +1 -0
  403. package/src/runtime/api/thread-runtime.ts +7 -0
  404. package/src/runtime/base/base-thread-runtime-core.ts +1 -0
  405. package/src/runtime/branch/external-thread-branch-adapter.ts +26 -0
  406. package/src/runtime/interfaces/thread-list-runtime-core.ts +1 -0
  407. package/src/runtime/interfaces/thread-runtime-core.ts +4 -0
  408. package/src/runtime/utils/resolveToolApprovalResponse.test.ts +91 -0
  409. package/src/runtime/utils/resolveToolApprovalResponse.ts +55 -0
  410. package/src/runtime/utils/thread-message-like.ts +10 -1
  411. package/src/runtimes/external-store/external-store-adapter.ts +1 -0
  412. package/src/runtimes/external-store/external-store-thread-runtime-core.ts +24 -0
  413. package/src/runtimes/local/local-runtime-options.ts +1 -1
  414. package/src/runtimes/local/local-thread-runtime-core.test.ts +370 -0
  415. package/src/runtimes/local/local-thread-runtime-core.ts +113 -7
  416. package/src/runtimes/local/should-continue.ts +24 -13
  417. package/src/runtimes/readonly/ReadonlyThreadRuntimeCore.ts +5 -0
  418. package/src/runtimes/remote-thread-list/empty-thread-core.ts +5 -0
  419. package/src/runtimes/remote-thread-list/remote-thread-state.ts +2 -0
  420. package/src/runtimes/remote-thread-list/types.ts +1 -0
  421. package/src/store/clients/chain-of-thought-client.ts +5 -3
  422. package/src/store/clients/model-context-client.test.ts +5 -4
  423. package/src/store/clients/model-context-client.ts +21 -21
  424. package/src/store/clients/no-op-composer-client.ts +5 -3
  425. package/src/store/clients/runtime-adapter.ts +0 -24
  426. package/src/store/clients/suggestions.ts +12 -23
  427. package/src/store/clients/thread-message-client.ts +42 -40
  428. package/src/store/internal.ts +1 -4
  429. package/src/store/runtime-clients/attachment-runtime-client.ts +14 -14
  430. package/src/store/runtime-clients/composer-runtime-client.ts +48 -45
  431. package/src/store/runtime-clients/liveRef.ts +5 -0
  432. package/src/store/runtime-clients/message-part-runtime-client.ts +5 -3
  433. package/src/store/runtime-clients/message-runtime-client.ts +42 -40
  434. package/src/store/runtime-clients/thread-list-item-runtime-client.ts +5 -3
  435. package/src/store/runtime-clients/thread-list-runtime-client.ts +13 -11
  436. package/src/store/runtime-clients/thread-runtime-client.ts +20 -16
  437. package/src/store/runtime-clients/useSubscribable.ts +2 -10
  438. package/src/store/scopes/message.ts +1 -0
  439. package/src/store/scopes/part.ts +5 -2
  440. package/src/store/scopes/thread-list-item.ts +1 -0
  441. package/src/store/scopes/thread.ts +1 -0
  442. package/src/tests/external-store-thread-runtime-core.test.ts +57 -0
  443. package/src/tests/groupMessageParts.test.ts +84 -0
  444. package/src/tests/groupParts.test.ts +55 -0
  445. package/src/types/message.ts +45 -3
@@ -1,45 +1,95 @@
1
+ import { getThreadMessageText } from "../../utils/text.js";
1
2
  import { NoOpComposerClient } from "./no-op-composer-client.js";
2
- import { useMemo, useState } from "@assistant-ui/tap/react-shim";
3
+ import { useState } from "@assistant-ui/tap/react-shim";
3
4
  import { useClientLookup } from "@assistant-ui/store";
5
+ import { c } from "@assistant-ui/tap/react-shim/compiler-runtime";
4
6
  import { resource, useResource, withKey } from "@assistant-ui/tap";
5
7
  //#region src/store/clients/thread-message-client.ts
6
- const ThreadMessagePartClient = resource(function ThreadMessagePartClient({ part }) {
7
- const state = useMemo(() => {
8
- return {
8
+ const useThreadMessagePartClient = (t0) => {
9
+ const $ = c(5);
10
+ const { part } = t0;
11
+ let t1;
12
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
13
+ t1 = { type: "complete" };
14
+ $[0] = t1;
15
+ } else t1 = $[0];
16
+ let t2;
17
+ if ($[1] !== part) {
18
+ t2 = {
9
19
  ...part,
10
- status: { type: "complete" }
20
+ status: t1
11
21
  };
12
- }, [part]);
13
- return {
14
- getState: () => state,
15
- addToolResult: () => {
16
- throw new Error("Not supported");
17
- },
18
- resumeToolCall: () => {
19
- throw new Error("Not supported");
20
- },
21
- respondToToolApproval: () => {
22
- throw new Error("Not supported");
23
- }
24
- };
25
- });
26
- const ThreadMessageAttachmentClient = resource(function ThreadMessageAttachmentClient({ attachment }) {
22
+ $[1] = part;
23
+ $[2] = t2;
24
+ } else t2 = $[2];
25
+ const state = t2;
26
+ let t3;
27
+ if ($[3] !== state) {
28
+ t3 = {
29
+ getState: () => state,
30
+ addToolResult: _temp,
31
+ resumeToolCall: _temp2,
32
+ respondToToolApproval: _temp3
33
+ };
34
+ $[3] = state;
35
+ $[4] = t3;
36
+ } else t3 = $[4];
37
+ return t3;
38
+ };
39
+ const ThreadMessagePartClient = resource(useThreadMessagePartClient);
40
+ const useThreadMessageAttachmentClient = ({ attachment }) => {
27
41
  return {
28
42
  getState: () => attachment,
29
43
  remove: () => {
30
44
  throw new Error("Not supported");
31
45
  }
32
46
  };
33
- });
34
- const ThreadMessageClient = resource(function ThreadMessageClient({ message, index, isLast = true, branchNumber = 1, branchCount = 1 }) {
47
+ };
48
+ const ThreadMessageAttachmentClient = resource(useThreadMessageAttachmentClient);
49
+ const useThreadMessageClient = (t0) => {
50
+ const $ = c(35);
51
+ const { message, index, isLast: t1, branchNumber: t2, branchCount: t3 } = t0;
52
+ const isLast = t1 === void 0 ? true : t1;
53
+ const branchNumber = t2 === void 0 ? 1 : t2;
54
+ const branchCount = t3 === void 0 ? 1 : t3;
35
55
  const [isCopiedState, setIsCopied] = useState(false);
36
56
  const [isHoveringState, setIsHovering] = useState(false);
37
- const parts = useClientLookup(() => message.content.map((part, idx) => withKey("toolCallId" in part && part.toolCallId != null ? `toolCallId-${part.toolCallId}` : `index-${idx}`, ThreadMessagePartClient({ part }))), [message.content]);
38
- const attachments = useClientLookup(() => (message.attachments ?? []).map((attachment) => withKey(attachment.id, ThreadMessageAttachmentClient({ attachment }))), [message.attachments]);
39
- const composer = useResource(NoOpComposerClient({ type: "edit" }));
40
- const composerState = composer.getState();
41
- const state = useMemo(() => {
42
- return {
57
+ let t4;
58
+ if ($[0] !== message.content) {
59
+ t4 = message.content.map(_temp4);
60
+ $[0] = message.content;
61
+ $[1] = t4;
62
+ } else t4 = $[1];
63
+ const parts = useClientLookup(t4);
64
+ let t5;
65
+ if ($[2] !== message.attachments) {
66
+ t5 = message.attachments ?? [];
67
+ $[2] = message.attachments;
68
+ $[3] = t5;
69
+ } else t5 = $[3];
70
+ let t6;
71
+ if ($[4] !== t5) {
72
+ t6 = t5.map(_temp5);
73
+ $[4] = t5;
74
+ $[5] = t6;
75
+ } else t6 = $[5];
76
+ const attachments = useClientLookup(t6);
77
+ let t7;
78
+ if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
79
+ t7 = NoOpComposerClient({ type: "edit" });
80
+ $[6] = t7;
81
+ } else t7 = $[6];
82
+ const composer = useResource(t7);
83
+ let t8;
84
+ if ($[7] !== composer) {
85
+ t8 = composer.getState();
86
+ $[7] = composer;
87
+ $[8] = t8;
88
+ } else t8 = $[8];
89
+ const composerState = t8;
90
+ let t9;
91
+ if ($[9] !== branchCount || $[10] !== branchNumber || $[11] !== composerState || $[12] !== index || $[13] !== isCopiedState || $[14] !== isHoveringState || $[15] !== isLast || $[16] !== message || $[17] !== parts.state) {
92
+ t9 = {
43
93
  ...message,
44
94
  parts: parts.state,
45
95
  composer: composerState,
@@ -52,53 +102,114 @@ const ThreadMessageClient = resource(function ThreadMessageClient({ message, ind
52
102
  isCopied: isCopiedState,
53
103
  isHovering: isHoveringState
54
104
  };
55
- }, [
56
- message,
57
- index,
58
- isCopiedState,
59
- isHoveringState,
60
- isLast,
61
- parts.state,
62
- composerState,
63
- branchNumber,
64
- branchCount
65
- ]);
66
- return {
67
- getState: () => state,
68
- composer: () => composer,
69
- part: (selector) => {
105
+ $[9] = branchCount;
106
+ $[10] = branchNumber;
107
+ $[11] = composerState;
108
+ $[12] = index;
109
+ $[13] = isCopiedState;
110
+ $[14] = isHoveringState;
111
+ $[15] = isLast;
112
+ $[16] = message;
113
+ $[17] = parts.state;
114
+ $[18] = t9;
115
+ } else t9 = $[18];
116
+ const state = t9;
117
+ let t10;
118
+ if ($[19] !== state) {
119
+ t10 = () => state;
120
+ $[19] = state;
121
+ $[20] = t10;
122
+ } else t10 = $[20];
123
+ let t11;
124
+ if ($[21] !== composer) {
125
+ t11 = () => composer;
126
+ $[21] = composer;
127
+ $[22] = t11;
128
+ } else t11 = $[22];
129
+ let t12;
130
+ if ($[23] !== parts) {
131
+ t12 = (selector) => {
70
132
  if ("index" in selector) return parts.get({ index: selector.index });
71
133
  else return parts.get({ key: `toolCallId-${selector.toolCallId}` });
72
- },
73
- attachment: (selector) => {
74
- if ("id" in selector) return attachments.get({ key: selector.id });
75
- else return attachments.get(selector);
76
- },
77
- reload: () => {
78
- throw new Error("Not supported in ThreadMessageProvider");
79
- },
80
- speak: () => {
81
- throw new Error("Not supported in ThreadMessageProvider");
82
- },
83
- stopSpeaking: () => {
84
- throw new Error("Not supported in ThreadMessageProvider");
85
- },
86
- submitFeedback: () => {
87
- throw new Error("Not supported in ThreadMessageProvider");
88
- },
89
- switchToBranch: () => {
90
- throw new Error("Not supported in ThreadMessageProvider");
91
- },
92
- getCopyText: () => {
93
- return message.content.map((part) => {
94
- if ("text" in part && typeof part.text === "string") return part.text;
95
- return "";
96
- }).join("\n");
97
- },
98
- setIsCopied,
99
- setIsHovering
100
- };
101
- });
134
+ };
135
+ $[23] = parts;
136
+ $[24] = t12;
137
+ } else t12 = $[24];
138
+ let t13;
139
+ if ($[25] !== attachments) {
140
+ t13 = (selector_0) => {
141
+ if ("id" in selector_0) return attachments.get({ key: selector_0.id });
142
+ else return attachments.get(selector_0);
143
+ };
144
+ $[25] = attachments;
145
+ $[26] = t13;
146
+ } else t13 = $[26];
147
+ let t14;
148
+ if ($[27] !== message) {
149
+ t14 = () => getThreadMessageText(message);
150
+ $[27] = message;
151
+ $[28] = t14;
152
+ } else t14 = $[28];
153
+ let t15;
154
+ if ($[29] !== t10 || $[30] !== t11 || $[31] !== t12 || $[32] !== t13 || $[33] !== t14) {
155
+ t15 = {
156
+ getState: t10,
157
+ composer: t11,
158
+ part: t12,
159
+ attachment: t13,
160
+ delete: _temp6,
161
+ reload: _temp7,
162
+ speak: _temp8,
163
+ stopSpeaking: _temp9,
164
+ submitFeedback: _temp0,
165
+ switchToBranch: _temp1,
166
+ getCopyText: t14,
167
+ setIsCopied,
168
+ setIsHovering
169
+ };
170
+ $[29] = t10;
171
+ $[30] = t11;
172
+ $[31] = t12;
173
+ $[32] = t13;
174
+ $[33] = t14;
175
+ $[34] = t15;
176
+ } else t15 = $[34];
177
+ return t15;
178
+ };
179
+ const ThreadMessageClient = resource(useThreadMessageClient);
180
+ function _temp() {
181
+ throw new Error("Not supported");
182
+ }
183
+ function _temp2() {
184
+ throw new Error("Not supported");
185
+ }
186
+ function _temp3() {
187
+ throw new Error("Not supported");
188
+ }
189
+ function _temp4(part, idx) {
190
+ return withKey("toolCallId" in part && part.toolCallId != null ? `toolCallId-${part.toolCallId}` : `index-${idx}`, ThreadMessagePartClient({ part }), [part]);
191
+ }
192
+ function _temp5(attachment) {
193
+ return withKey(attachment.id, ThreadMessageAttachmentClient({ attachment }), [attachment]);
194
+ }
195
+ function _temp6() {
196
+ throw new Error("Not supported in ThreadMessageProvider");
197
+ }
198
+ function _temp7() {
199
+ throw new Error("Not supported in ThreadMessageProvider");
200
+ }
201
+ function _temp8() {
202
+ throw new Error("Not supported in ThreadMessageProvider");
203
+ }
204
+ function _temp9() {
205
+ throw new Error("Not supported in ThreadMessageProvider");
206
+ }
207
+ function _temp0() {
208
+ throw new Error("Not supported in ThreadMessageProvider");
209
+ }
210
+ function _temp1() {
211
+ throw new Error("Not supported in ThreadMessageProvider");
212
+ }
102
213
  //#endregion
103
214
  export { ThreadMessageClient };
104
215
 
@@ -1 +1 @@
1
- {"version":3,"file":"thread-message-client.js","names":[],"sources":["../../../src/store/clients/thread-message-client.ts"],"sourcesContent":["import type {\n ThreadAssistantMessagePart,\n ThreadUserMessagePart,\n ThreadMessage,\n} from \"../../types/message\";\nimport type { Attachment } from \"../../types/attachment\";\nimport { useMemo, useState } from \"react\";\nimport { useResource, resource, withKey } from \"@assistant-ui/tap\";\nimport type { ClientOutput } from \"@assistant-ui/store\";\nimport { useClientLookup } from \"@assistant-ui/store\";\nimport type { MessageState } from \"../scopes/message\";\nimport type { PartState } from \"../scopes/part\";\nimport { NoOpComposerClient } from \"./no-op-composer-client\";\n\nconst ThreadMessagePartClient = resource(function ThreadMessagePartClient({\n part,\n}: {\n part: ThreadAssistantMessagePart | ThreadUserMessagePart;\n}): ClientOutput<\"part\"> {\n const state = useMemo<PartState>(() => {\n return {\n ...part,\n status: { type: \"complete\" },\n };\n }, [part]);\n\n return {\n getState: () => state,\n addToolResult: () => {\n throw new Error(\"Not supported\");\n },\n resumeToolCall: () => {\n throw new Error(\"Not supported\");\n },\n respondToToolApproval: () => {\n throw new Error(\"Not supported\");\n },\n };\n});\n\nconst ThreadMessageAttachmentClient = resource(\n function ThreadMessageAttachmentClient({\n attachment,\n }: {\n attachment: Attachment;\n }): ClientOutput<\"attachment\"> {\n return {\n getState: () => attachment,\n remove: () => {\n throw new Error(\"Not supported\");\n },\n };\n },\n);\nexport type ThreadMessageClientProps = {\n message: ThreadMessage;\n index: number;\n isLast?: boolean;\n branchNumber?: number;\n branchCount?: number;\n};\n\nexport const ThreadMessageClient = resource(function ThreadMessageClient({\n message,\n index,\n isLast = true,\n branchNumber = 1,\n branchCount = 1,\n}: ThreadMessageClientProps): ClientOutput<\"message\"> {\n const [isCopiedState, setIsCopied] = useState(false);\n const [isHoveringState, setIsHovering] = useState(false);\n\n const parts = useClientLookup(\n () =>\n message.content.map((part, idx) =>\n withKey(\n \"toolCallId\" in part && part.toolCallId != null\n ? `toolCallId-${part.toolCallId}`\n : `index-${idx}`,\n ThreadMessagePartClient({ part }),\n ),\n ),\n [message.content],\n );\n\n const attachments = useClientLookup(\n () =>\n (message.attachments ?? []).map((attachment) =>\n withKey(attachment.id, ThreadMessageAttachmentClient({ attachment })),\n ),\n [message.attachments],\n );\n\n const composer = useResource(NoOpComposerClient({ type: \"edit\" }));\n const composerState = composer.getState();\n\n const state = useMemo<MessageState>(() => {\n return {\n ...message,\n parts: parts.state,\n composer: composerState,\n parentId: null,\n index,\n isLast,\n branchNumber,\n branchCount,\n speech: undefined,\n isCopied: isCopiedState,\n isHovering: isHoveringState,\n };\n }, [\n message,\n index,\n isCopiedState,\n isHoveringState,\n isLast,\n parts.state,\n composerState,\n branchNumber,\n branchCount,\n ]);\n\n return {\n getState: () => state,\n composer: () => composer,\n part: (selector) => {\n if (\"index\" in selector) {\n return parts.get({ index: selector.index });\n } else {\n return parts.get({ key: `toolCallId-${selector.toolCallId}` });\n }\n },\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 reload: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n speak: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n stopSpeaking: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n submitFeedback: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n switchToBranch: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n getCopyText: () => {\n return message.content\n .map((part) => {\n if (\"text\" in part && typeof part.text === \"string\") {\n return part.text;\n }\n return \"\";\n })\n .join(\"\\n\");\n },\n setIsCopied,\n setIsHovering,\n };\n});\n"],"mappings":";;;;;AAcA,MAAM,0BAA0B,SAAS,SAAS,wBAAwB,EACxE,QAGuB;CACvB,MAAM,QAAQ,cAAyB;EACrC,OAAO;GACL,GAAG;GACH,QAAQ,EAAE,MAAM,WAAW;EAC7B;CACF,GAAG,CAAC,IAAI,CAAC;CAET,OAAO;EACL,gBAAgB;EAChB,qBAAqB;GACnB,MAAM,IAAI,MAAM,eAAe;EACjC;EACA,sBAAsB;GACpB,MAAM,IAAI,MAAM,eAAe;EACjC;EACA,6BAA6B;GAC3B,MAAM,IAAI,MAAM,eAAe;EACjC;CACF;AACF,CAAC;AAED,MAAM,gCAAgC,SACpC,SAAS,8BAA8B,EACrC,cAG6B;CAC7B,OAAO;EACL,gBAAgB;EAChB,cAAc;GACZ,MAAM,IAAI,MAAM,eAAe;EACjC;CACF;AACF,CACF;AASA,MAAa,sBAAsB,SAAS,SAAS,oBAAoB,EACvE,SACA,OACA,SAAS,MACT,eAAe,GACf,cAAc,KACsC;CACpD,MAAM,CAAC,eAAe,eAAe,SAAS,KAAK;CACnD,MAAM,CAAC,iBAAiB,iBAAiB,SAAS,KAAK;CAEvD,MAAM,QAAQ,sBAEV,QAAQ,QAAQ,KAAK,MAAM,QACzB,QACE,gBAAgB,QAAQ,KAAK,cAAc,OACvC,cAAc,KAAK,eACnB,SAAS,OACb,wBAAwB,EAAE,KAAK,CAAC,CAClC,CACF,GACF,CAAC,QAAQ,OAAO,CAClB;CAEA,MAAM,cAAc,uBAEf,QAAQ,eAAe,CAAC,EAAA,CAAG,KAAK,eAC/B,QAAQ,WAAW,IAAI,8BAA8B,EAAE,WAAW,CAAC,CAAC,CACtE,GACF,CAAC,QAAQ,WAAW,CACtB;CAEA,MAAM,WAAW,YAAY,mBAAmB,EAAE,MAAM,OAAO,CAAC,CAAC;CACjE,MAAM,gBAAgB,SAAS,SAAS;CAExC,MAAM,QAAQ,cAA4B;EACxC,OAAO;GACL,GAAG;GACH,OAAO,MAAM;GACb,UAAU;GACV,UAAU;GACV;GACA;GACA;GACA;GACA,QAAQ,KAAA;GACR,UAAU;GACV,YAAY;EACd;CACF,GAAG;EACD;EACA;EACA;EACA;EACA;EACA,MAAM;EACN;EACA;EACA;CACF,CAAC;CAED,OAAO;EACL,gBAAgB;EAChB,gBAAgB;EAChB,OAAO,aAAa;GAClB,IAAI,WAAW,UACb,OAAO,MAAM,IAAI,EAAE,OAAO,SAAS,MAAM,CAAC;QAE1C,OAAO,MAAM,IAAI,EAAE,KAAK,cAAc,SAAS,aAAa,CAAC;EAEjE;EACA,aAAa,aAAa;GACxB,IAAI,QAAQ,UACV,OAAO,YAAY,IAAI,EAAE,KAAK,SAAS,GAAG,CAAC;QAE3C,OAAO,YAAY,IAAI,QAAQ;EAEnC;EACA,cAAc;GACZ,MAAM,IAAI,MAAM,wCAAwC;EAC1D;EACA,aAAa;GACX,MAAM,IAAI,MAAM,wCAAwC;EAC1D;EACA,oBAAoB;GAClB,MAAM,IAAI,MAAM,wCAAwC;EAC1D;EACA,sBAAsB;GACpB,MAAM,IAAI,MAAM,wCAAwC;EAC1D;EACA,sBAAsB;GACpB,MAAM,IAAI,MAAM,wCAAwC;EAC1D;EACA,mBAAmB;GACjB,OAAO,QAAQ,QACZ,KAAK,SAAS;IACb,IAAI,UAAU,QAAQ,OAAO,KAAK,SAAS,UACzC,OAAO,KAAK;IAEd,OAAO;GACT,CAAC,CAAC,CACD,KAAK,IAAI;EACd;EACA;EACA;CACF;AACF,CAAC"}
1
+ {"version":3,"file":"thread-message-client.js","names":["ThreadAssistantMessagePart","ThreadUserMessagePart","ThreadMessage","Attachment","useMemo","useState","useResource","resource","withKey","ClientOutput","useClientLookup","MessageState","PartState","NoOpComposerClient","getThreadMessageText","useThreadMessagePartClient","t0","$","_c","part","t1","Symbol","for","type","t2","status","state","t3","getState","addToolResult","_temp","resumeToolCall","_temp2","respondToToolApproval","_temp3","ThreadMessagePartClient","useThreadMessageAttachmentClient","attachment","remove","Error","ThreadMessageAttachmentClient","ThreadMessageClientProps","message","index","isLast","branchNumber","branchCount","useThreadMessageClient","undefined","isCopiedState","setIsCopied","isHoveringState","setIsHovering","t4","content","map","_temp4","parts","t5","attachments","t6","_temp5","t7","composer","t8","composerState","t9","parentId","speech","isCopied","isHovering","t10","t11","t12","selector","get","key","toolCallId","t13","selector_0","id","t14","t15","delete","_temp6","reload","_temp7","speak","_temp8","stopSpeaking","_temp9","submitFeedback","_temp0","switchToBranch","_temp1","getCopyText","ThreadMessageClient","idx"],"sources":["../../../src/store/clients/thread-message-client.ts"],"sourcesContent":["import type {\n ThreadAssistantMessagePart,\n ThreadUserMessagePart,\n ThreadMessage,\n} from \"../../types/message\";\nimport type { Attachment } from \"../../types/attachment\";\nimport { useMemo, useState } from \"react\";\nimport { useResource, resource, withKey } from \"@assistant-ui/tap\";\nimport type { ClientOutput } from \"@assistant-ui/store\";\nimport { useClientLookup } from \"@assistant-ui/store\";\nimport type { MessageState } from \"../scopes/message\";\nimport type { PartState } from \"../scopes/part\";\nimport { NoOpComposerClient } from \"./no-op-composer-client\";\nimport { getThreadMessageText } from \"../../utils/text\";\n\nconst useThreadMessagePartClient = ({\n part,\n}: {\n part: ThreadAssistantMessagePart | ThreadUserMessagePart;\n}): ClientOutput<\"part\"> => {\n const state = useMemo<PartState>(() => {\n return {\n ...part,\n status: { type: \"complete\" },\n };\n }, [part]);\n\n return {\n getState: () => state,\n addToolResult: () => {\n throw new Error(\"Not supported\");\n },\n resumeToolCall: () => {\n throw new Error(\"Not supported\");\n },\n respondToToolApproval: () => {\n throw new Error(\"Not supported\");\n },\n };\n};\n\nconst ThreadMessagePartClient = resource(useThreadMessagePartClient);\n\nconst useThreadMessageAttachmentClient = ({\n attachment,\n}: {\n attachment: Attachment;\n}): ClientOutput<\"attachment\"> => {\n return {\n getState: () => attachment,\n remove: () => {\n throw new Error(\"Not supported\");\n },\n };\n};\n\nconst ThreadMessageAttachmentClient = resource(\n useThreadMessageAttachmentClient,\n);\nexport type ThreadMessageClientProps = {\n message: ThreadMessage;\n index: number;\n isLast?: boolean;\n branchNumber?: number;\n branchCount?: number;\n};\n\nconst useThreadMessageClient = ({\n message,\n index,\n isLast = true,\n branchNumber = 1,\n branchCount = 1,\n}: ThreadMessageClientProps): ClientOutput<\"message\"> => {\n const [isCopiedState, setIsCopied] = useState(false);\n const [isHoveringState, setIsHovering] = useState(false);\n\n const parts = useClientLookup(\n message.content.map((part, idx) =>\n withKey(\n \"toolCallId\" in part && part.toolCallId != null\n ? `toolCallId-${part.toolCallId}`\n : `index-${idx}`,\n ThreadMessagePartClient({ part }),\n [part],\n ),\n ),\n );\n\n const attachments = useClientLookup(\n (message.attachments ?? []).map((attachment) =>\n withKey(attachment.id, ThreadMessageAttachmentClient({ attachment }), [\n attachment,\n ]),\n ),\n );\n\n const composer = useResource(NoOpComposerClient({ type: \"edit\" }));\n const composerState = composer.getState();\n\n const state = useMemo<MessageState>(() => {\n return {\n ...message,\n parts: parts.state,\n composer: composerState,\n parentId: null,\n index,\n isLast,\n branchNumber,\n branchCount,\n speech: undefined,\n isCopied: isCopiedState,\n isHovering: isHoveringState,\n };\n }, [\n message,\n index,\n isCopiedState,\n isHoveringState,\n isLast,\n parts.state,\n composerState,\n branchNumber,\n branchCount,\n ]);\n\n return {\n getState: () => state,\n composer: () => composer,\n part: (selector) => {\n if (\"index\" in selector) {\n return parts.get({ index: selector.index });\n } else {\n return parts.get({ key: `toolCallId-${selector.toolCallId}` });\n }\n },\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 delete: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n reload: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n speak: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n stopSpeaking: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n submitFeedback: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n switchToBranch: () => {\n throw new Error(\"Not supported in ThreadMessageProvider\");\n },\n getCopyText: () => {\n return getThreadMessageText(message);\n },\n setIsCopied,\n setIsHovering,\n };\n};\n\nexport const ThreadMessageClient = resource(useThreadMessageClient);\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { RuntimeAdapterResource, baseRuntimeAdapterTransformScopes } from "./clients/runtime-adapter.js";
1
+ import { baseRuntimeAdapterTransformScopes } from "./clients/runtime-adapter.js";
2
2
  import { AttachmentRuntimeClient } from "./runtime-clients/attachment-runtime-client.js";
3
3
  import { MessagePartClient } from "./runtime-clients/message-part-runtime-client.js";
4
4
  import { ComposerClient } from "./runtime-clients/composer-runtime-client.js";
@@ -6,4 +6,4 @@ import { MessageClient } from "./runtime-clients/message-runtime-client.js";
6
6
  import { ThreadClient } from "./runtime-clients/thread-runtime-client.js";
7
7
  import { ThreadListItemClient } from "./runtime-clients/thread-list-item-runtime-client.js";
8
8
  import { ThreadListClient } from "./runtime-clients/thread-list-runtime-client.js";
9
- export { AttachmentRuntimeClient, ComposerClient, MessageClient, MessagePartClient, RuntimeAdapterResource, ThreadClient, ThreadListClient, ThreadListItemClient, baseRuntimeAdapterTransformScopes };
9
+ export { AttachmentRuntimeClient, ComposerClient, MessageClient, MessagePartClient, ThreadClient, ThreadListClient, ThreadListItemClient, baseRuntimeAdapterTransformScopes };
@@ -5,5 +5,5 @@ import { MessageClient } from "./runtime-clients/message-runtime-client.js";
5
5
  import { ThreadClient } from "./runtime-clients/thread-runtime-client.js";
6
6
  import { ThreadListItemClient } from "./runtime-clients/thread-list-item-runtime-client.js";
7
7
  import { ThreadListClient } from "./runtime-clients/thread-list-runtime-client.js";
8
- import { RuntimeAdapterResource, baseRuntimeAdapterTransformScopes } from "./clients/runtime-adapter.js";
9
- export { AttachmentRuntimeClient, ComposerClient, MessageClient, MessagePartClient, RuntimeAdapterResource, ThreadClient, ThreadListClient, ThreadListItemClient, baseRuntimeAdapterTransformScopes };
8
+ import { baseRuntimeAdapterTransformScopes } from "./clients/runtime-adapter.js";
9
+ export { AttachmentRuntimeClient, ComposerClient, MessageClient, MessagePartClient, ThreadClient, ThreadListClient, ThreadListItemClient, baseRuntimeAdapterTransformScopes };
@@ -2,11 +2,9 @@ import { AttachmentRuntime } from "../../runtime/api/attachment-runtime.js";
2
2
  import { ClientOutput } from "@assistant-ui/store";
3
3
 
4
4
  //#region src/store/runtime-clients/attachment-runtime-client.d.ts
5
- declare const AttachmentRuntimeClient: (props: {
5
+ declare const AttachmentRuntimeClient: import("@assistant-ui/tap").Resource<ClientOutput<"attachment">, [{
6
6
  runtime: AttachmentRuntime;
7
- }) => import("@assistant-ui/tap").ResourceElement<ClientOutput<"attachment">, {
8
- runtime: AttachmentRuntime;
9
- }>;
7
+ }]>;
10
8
  //#endregion
11
9
  export { AttachmentRuntimeClient };
12
10
  //# 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":";;;;cAKa,uBAAA,GAAuB,KAAA;WAIvB,iBAAA;AAAA;WAAA,iBAAA;AAAA"}
1
+ {"version":3,"file":"attachment-runtime-client.d.ts","names":[],"sources":["../../../src/store/runtime-clients/attachment-runtime-client.ts"],"mappings":";;;;cAmBa,uBAAA,8BAAuB,QAAA,CAAA,YAAA;WAXzB,iBAAiB;AAAA"}
@@ -1,14 +1,38 @@
1
1
  import { useSubscribable } from "./useSubscribable.js";
2
+ import { c } from "@assistant-ui/tap/react-shim/compiler-runtime";
2
3
  import { resource } from "@assistant-ui/tap";
3
4
  //#region src/store/runtime-clients/attachment-runtime-client.ts
4
- const AttachmentRuntimeClient = resource(function AttachmentRuntimeClient({ runtime }) {
5
+ const useAttachmentRuntimeClient = (t0) => {
6
+ const $ = c(8);
7
+ const { runtime } = t0;
5
8
  const state = useSubscribable(runtime);
6
- return {
7
- getState: () => state,
8
- remove: runtime.remove,
9
- __internal_getRuntime: () => runtime
10
- };
11
- });
9
+ let t1;
10
+ if ($[0] !== state) {
11
+ t1 = () => state;
12
+ $[0] = state;
13
+ $[1] = t1;
14
+ } else t1 = $[1];
15
+ let t2;
16
+ if ($[2] !== runtime) {
17
+ t2 = () => runtime;
18
+ $[2] = runtime;
19
+ $[3] = t2;
20
+ } else t2 = $[3];
21
+ let t3;
22
+ if ($[4] !== runtime.remove || $[5] !== t1 || $[6] !== t2) {
23
+ t3 = {
24
+ getState: t1,
25
+ remove: runtime.remove,
26
+ __internal_getRuntime: t2
27
+ };
28
+ $[4] = runtime.remove;
29
+ $[5] = t1;
30
+ $[6] = t2;
31
+ $[7] = t3;
32
+ } else t3 = $[7];
33
+ return t3;
34
+ };
35
+ const AttachmentRuntimeClient = resource(useAttachmentRuntimeClient);
12
36
  //#endregion
13
37
  export { AttachmentRuntimeClient };
14
38
 
@@ -1 +1 @@
1
- {"version":3,"file":"attachment-runtime-client.js","names":[],"sources":["../../../src/store/runtime-clients/attachment-runtime-client.ts"],"sourcesContent":["import { resource } from \"@assistant-ui/tap\";\nimport type { ClientOutput } from \"@assistant-ui/store\";\nimport type { AttachmentRuntime } from \"../../runtime/api/attachment-runtime\";\nimport { useSubscribable } from \"./useSubscribable\";\n\nexport const AttachmentRuntimeClient = resource(\n function AttachmentRuntimeClient({\n runtime,\n }: {\n runtime: AttachmentRuntime;\n }): ClientOutput<\"attachment\"> {\n const state = useSubscribable(runtime);\n\n return {\n getState: () => state,\n remove: runtime.remove,\n __internal_getRuntime: () => runtime,\n };\n },\n);\n"],"mappings":";;;AAKA,MAAa,0BAA0B,SACrC,SAAS,wBAAwB,EAC/B,WAG6B;CAC7B,MAAM,QAAQ,gBAAgB,OAAO;CAErC,OAAO;EACL,gBAAgB;EAChB,QAAQ,QAAQ;EAChB,6BAA6B;CAC/B;AACF,CACF"}
1
+ {"version":3,"file":"attachment-runtime-client.js","names":["resource","ClientOutput","AttachmentRuntime","useSubscribable","useAttachmentRuntimeClient","t0","$","_c","runtime","state","t1","t2","t3","remove","getState","__internal_getRuntime","AttachmentRuntimeClient"],"sources":["../../../src/store/runtime-clients/attachment-runtime-client.ts"],"sourcesContent":["import { resource } from \"@assistant-ui/tap\";\nimport type { ClientOutput } from \"@assistant-ui/store\";\nimport type { AttachmentRuntime } from \"../../runtime/api/attachment-runtime\";\nimport { useSubscribable } from \"./useSubscribable\";\n\nconst useAttachmentRuntimeClient = ({\n runtime,\n}: {\n runtime: AttachmentRuntime;\n}): ClientOutput<\"attachment\"> => {\n const state = useSubscribable(runtime);\n\n return {\n getState: () => state,\n remove: runtime.remove,\n __internal_getRuntime: () => runtime,\n };\n};\n\nexport const AttachmentRuntimeClient = resource(useAttachmentRuntimeClient);\n"],"mappings":";;;;AAKA,MAAMI,8BAA6BC,OAAA;CAAA,MAAAC,IAAAC,EAAA,CAAA;CAAC,MAAA,EAAAC,YAAAH;CAKlC,MAAAI,QAAcN,gBAAgBK,OAAO;CAAE,IAAAE;CAAA,IAAAJ,EAAA,OAAAG,OAAA;EAG3BC,WAAMD;EAAKH,EAAA,KAAAG;EAAAH,EAAA,KAAAI;CAAA,OAAAA,KAAAJ,EAAA;CAAA,IAAAK;CAAA,IAAAL,EAAA,OAAAE,SAAA;EAEEG,WAAMH;EAAOF,EAAA,KAAAE;EAAAF,EAAA,KAAAK;CAAA,OAAAA,KAAAL,EAAA;CAAA,IAAAM;CAAA,IAAAN,EAAA,OAAAE,QAAAK,UAAAP,EAAA,OAAAI,MAAAJ,EAAA,OAAAK,IAAA;EAH/BC,KAAA;GAAAE,UACKJ;GAAWG,QACbL,QAAOK;GAAOE,uBACCJ;EACzB;EAACL,EAAA,KAAAE,QAAAK;EAAAP,EAAA,KAAAI;EAAAJ,EAAA,KAAAK;EAAAL,EAAA,KAAAM;CAAA,OAAAA,KAAAN,EAAA;CAAA,OAJMM;AAIN;AAGH,MAAaI,0BAA0BhB,SAASI,0BAA0B"}
@@ -2,7 +2,7 @@ import { ComposerRuntime } from "../../runtime/api/composer-runtime.js";
2
2
  import { ClientOutput } from "@assistant-ui/store";
3
3
 
4
4
  //#region src/store/runtime-clients/composer-runtime-client.d.ts
5
- declare const ComposerClient: (props: {
5
+ declare const ComposerClient: import("@assistant-ui/tap").Resource<ClientOutput<"composer">, [{
6
6
  threadIdRef: {
7
7
  current: string;
8
8
  };
@@ -10,15 +10,7 @@ declare const ComposerClient: (props: {
10
10
  current: string;
11
11
  };
12
12
  runtime: ComposerRuntime;
13
- }) => import("@assistant-ui/tap").ResourceElement<ClientOutput<"composer">, {
14
- threadIdRef: {
15
- current: string;
16
- };
17
- messageIdRef?: {
18
- current: string;
19
- };
20
- runtime: ComposerRuntime;
21
- }>;
13
+ }]>;
22
14
  //#endregion
23
15
  export { ComposerClient };
24
16
  //# 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":";;;;cAsDa,cAAA,GAAc,KAAA;;IAKV,OAAA;EAAA;;IACE,OAAA;EAAA;WACR,eAAA;AAAA;;IAFM,OAAA;EAAA;;IACE,OAAA;EAAA;WACR,eAAA;AAAA"}
1
+ {"version":3,"file":"composer-runtime-client.d.ts","names":[],"sources":["../../../src/store/runtime-clients/composer-runtime-client.ts"],"mappings":";;;;cAkLa,cAAA,8BAAc,QAAA,CAAA,YAAA;;IAnHV,OAAA;EAAA;;IACE,OAAA;EAAA;WACR,eAAe;AAAA"}