@assistant-ui/react 0.9.6 → 0.10.1

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 (893) hide show
  1. package/dist/api/AssistantRuntime.js +8 -34
  2. package/dist/api/AssistantRuntime.js.map +1 -1
  3. package/dist/api/AttachmentRuntime.js +12 -41
  4. package/dist/api/AttachmentRuntime.js.map +1 -1
  5. package/dist/api/ComposerRuntime.js +29 -54
  6. package/dist/api/ComposerRuntime.js.map +1 -1
  7. package/dist/api/ContentPartRuntime.js +4 -30
  8. package/dist/api/ContentPartRuntime.js.map +1 -1
  9. package/dist/api/MessageRuntime.js +34 -55
  10. package/dist/api/MessageRuntime.js.map +1 -1
  11. package/dist/api/RuntimePathTypes.js +0 -18
  12. package/dist/api/RuntimePathTypes.js.map +1 -1
  13. package/dist/api/ThreadListItemRuntime.js +4 -30
  14. package/dist/api/ThreadListItemRuntime.js.map +1 -1
  15. package/dist/api/ThreadListRuntime.js +30 -52
  16. package/dist/api/ThreadListRuntime.js.map +1 -1
  17. package/dist/api/ThreadRuntime.js +27 -50
  18. package/dist/api/ThreadRuntime.js.map +1 -1
  19. package/dist/api/index.js +0 -18
  20. package/dist/api/index.js.map +1 -1
  21. package/dist/api/subscribable/BaseSubject.js +4 -30
  22. package/dist/api/subscribable/BaseSubject.js.map +1 -1
  23. package/dist/api/subscribable/EventSubscriptionSubject.js +5 -31
  24. package/dist/api/subscribable/EventSubscriptionSubject.js.map +1 -1
  25. package/dist/api/subscribable/LazyMemoizeSubject.js +7 -33
  26. package/dist/api/subscribable/LazyMemoizeSubject.js.map +1 -1
  27. package/dist/api/subscribable/NestedSubscriptionSubject.js +5 -31
  28. package/dist/api/subscribable/NestedSubscriptionSubject.js.map +1 -1
  29. package/dist/api/subscribable/SKIP_UPDATE.js +3 -29
  30. package/dist/api/subscribable/SKIP_UPDATE.js.map +1 -1
  31. package/dist/api/subscribable/ShallowMemoizeSubject.js +10 -36
  32. package/dist/api/subscribable/ShallowMemoizeSubject.js.map +1 -1
  33. package/dist/api/subscribable/Subscribable.js +0 -18
  34. package/dist/api/subscribable/Subscribable.js.map +1 -1
  35. package/dist/api/subscribable/shallowEqual.js +2 -28
  36. package/dist/api/subscribable/shallowEqual.js.map +1 -1
  37. package/dist/cloud/AssistantCloud.js +12 -38
  38. package/dist/cloud/AssistantCloud.js.map +1 -1
  39. package/dist/cloud/AssistantCloudAPI.js +14 -36
  40. package/dist/cloud/AssistantCloudAPI.js.map +1 -1
  41. package/dist/cloud/AssistantCloudAuthStrategy.js +10 -38
  42. package/dist/cloud/AssistantCloudAuthStrategy.js.map +1 -1
  43. package/dist/cloud/AssistantCloudAuthTokens.js +4 -30
  44. package/dist/cloud/AssistantCloudAuthTokens.js.map +1 -1
  45. package/dist/cloud/AssistantCloudRuns.js +6 -32
  46. package/dist/cloud/AssistantCloudRuns.js.map +1 -1
  47. package/dist/cloud/AssistantCloudThreadHistoryAdapter.js +12 -38
  48. package/dist/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
  49. package/dist/cloud/AssistantCloudThreadMessages.js +4 -30
  50. package/dist/cloud/AssistantCloudThreadMessages.js.map +1 -1
  51. package/dist/cloud/AssistantCloudThreads.js +6 -32
  52. package/dist/cloud/AssistantCloudThreads.js.map +1 -1
  53. package/dist/cloud/auiV0.js +8 -35
  54. package/dist/cloud/auiV0.js.map +1 -1
  55. package/dist/cloud/index.js +4 -31
  56. package/dist/cloud/index.js.map +1 -1
  57. package/dist/cloud/useCloudThreadListRuntime.js +7 -33
  58. package/dist/cloud/useCloudThreadListRuntime.js.map +1 -1
  59. package/dist/context/ReadonlyStore.js +3 -29
  60. package/dist/context/ReadonlyStore.js.map +1 -1
  61. package/dist/context/index.js +3 -28
  62. package/dist/context/index.js.map +1 -1
  63. package/dist/context/providers/AssistantRuntimeProvider.js +31 -53
  64. package/dist/context/providers/AssistantRuntimeProvider.js.map +1 -1
  65. package/dist/context/providers/AttachmentRuntimeProvider.js +16 -42
  66. package/dist/context/providers/AttachmentRuntimeProvider.js.map +1 -1
  67. package/dist/context/providers/ContentPartRuntimeProvider.js +16 -42
  68. package/dist/context/providers/ContentPartRuntimeProvider.js.map +1 -1
  69. package/dist/context/providers/MessageRuntimeProvider.js +19 -45
  70. package/dist/context/providers/MessageRuntimeProvider.js.map +1 -1
  71. package/dist/context/providers/TextContentPartProvider.js +24 -46
  72. package/dist/context/providers/TextContentPartProvider.js.map +1 -1
  73. package/dist/context/providers/ThreadListItemRuntimeProvider.js +18 -42
  74. package/dist/context/providers/ThreadListItemRuntimeProvider.js.map +1 -1
  75. package/dist/context/providers/ThreadRuntimeProvider.js +19 -45
  76. package/dist/context/providers/ThreadRuntimeProvider.js.map +1 -1
  77. package/dist/context/providers/ThreadViewportProvider.js +19 -42
  78. package/dist/context/providers/ThreadViewportProvider.js.map +1 -1
  79. package/dist/context/providers/index.js +4 -31
  80. package/dist/context/providers/index.js.map +1 -1
  81. package/dist/context/react/AssistantContext.js +11 -42
  82. package/dist/context/react/AssistantContext.js.map +1 -1
  83. package/dist/context/react/AttachmentContext.js +11 -45
  84. package/dist/context/react/AttachmentContext.js.map +1 -1
  85. package/dist/context/react/ComposerContext.js +8 -35
  86. package/dist/context/react/ComposerContext.js.map +1 -1
  87. package/dist/context/react/ContentPartContext.js +8 -36
  88. package/dist/context/react/ContentPartContext.js.map +1 -1
  89. package/dist/context/react/MessageContext.js +12 -43
  90. package/dist/context/react/MessageContext.js.map +1 -1
  91. package/dist/context/react/ThreadContext.js +12 -42
  92. package/dist/context/react/ThreadContext.js.map +1 -1
  93. package/dist/context/react/ThreadListItemContext.js +8 -36
  94. package/dist/context/react/ThreadListItemContext.js.map +1 -1
  95. package/dist/context/react/ThreadViewportContext.js +8 -36
  96. package/dist/context/react/ThreadViewportContext.js.map +1 -1
  97. package/dist/context/react/index.js +38 -62
  98. package/dist/context/react/index.js.map +1 -1
  99. package/dist/context/react/utils/createContextHook.js +4 -30
  100. package/dist/context/react/utils/createContextHook.js.map +1 -1
  101. package/dist/context/react/utils/createContextStoreHook.js +2 -28
  102. package/dist/context/react/utils/createContextStoreHook.js.map +1 -1
  103. package/dist/context/react/utils/createStateHookForRuntime.js +6 -30
  104. package/dist/context/react/utils/createStateHookForRuntime.js.map +1 -1
  105. package/dist/context/react/utils/ensureBinding.js +21 -27
  106. package/dist/context/react/utils/ensureBinding.js.map +1 -1
  107. package/dist/context/react/utils/useRuntimeState.js +8 -35
  108. package/dist/context/react/utils/useRuntimeState.js.map +1 -1
  109. package/dist/context/stores/AssistantToolUIs.js +4 -30
  110. package/dist/context/stores/AssistantToolUIs.js.map +1 -1
  111. package/dist/context/stores/MessageUtils.js +4 -30
  112. package/dist/context/stores/MessageUtils.js.map +1 -1
  113. package/dist/context/stores/ThreadViewport.js +5 -31
  114. package/dist/context/stores/ThreadViewport.js.map +1 -1
  115. package/dist/context/stores/index.js +0 -18
  116. package/dist/context/stores/index.js.map +1 -1
  117. package/dist/index.js +10 -54
  118. package/dist/index.js.map +1 -1
  119. package/dist/internal.js +16 -51
  120. package/dist/internal.js.map +1 -1
  121. package/dist/model-context/ModelContextTypes.d.ts +14 -41
  122. package/dist/model-context/ModelContextTypes.d.ts.map +1 -1
  123. package/dist/model-context/ModelContextTypes.js +3 -48
  124. package/dist/model-context/ModelContextTypes.js.map +1 -1
  125. package/dist/model-context/index.js +17 -47
  126. package/dist/model-context/index.js.map +1 -1
  127. package/dist/model-context/makeAssistantTool.js +5 -31
  128. package/dist/model-context/makeAssistantTool.js.map +1 -1
  129. package/dist/model-context/makeAssistantToolUI.js +7 -31
  130. package/dist/model-context/makeAssistantToolUI.js.map +1 -1
  131. package/dist/model-context/makeAssistantVisible.d.ts.map +1 -1
  132. package/dist/model-context/makeAssistantVisible.js +33 -52
  133. package/dist/model-context/makeAssistantVisible.js.map +1 -1
  134. package/dist/model-context/tool.d.ts +6 -6
  135. package/dist/model-context/tool.d.ts.map +1 -1
  136. package/dist/model-context/tool.js +2 -28
  137. package/dist/model-context/tool.js.map +1 -1
  138. package/dist/model-context/useAssistantInstructions.js +8 -34
  139. package/dist/model-context/useAssistantInstructions.js.map +1 -1
  140. package/dist/model-context/useAssistantTool.js +12 -35
  141. package/dist/model-context/useAssistantTool.js.map +1 -1
  142. package/dist/model-context/useAssistantToolUI.js +7 -33
  143. package/dist/model-context/useAssistantToolUI.js.map +1 -1
  144. package/dist/model-context/useInlineRender.js +8 -34
  145. package/dist/model-context/useInlineRender.js.map +1 -1
  146. package/dist/primitives/actionBar/ActionBarCopy.js +24 -47
  147. package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
  148. package/dist/primitives/actionBar/ActionBarEdit.js +12 -36
  149. package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
  150. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +17 -43
  151. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
  152. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +15 -41
  153. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
  154. package/dist/primitives/actionBar/ActionBarReload.js +15 -39
  155. package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
  156. package/dist/primitives/actionBar/ActionBarRoot.js +15 -38
  157. package/dist/primitives/actionBar/ActionBarRoot.js.map +1 -1
  158. package/dist/primitives/actionBar/ActionBarSpeak.js +12 -36
  159. package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
  160. package/dist/primitives/actionBar/ActionBarStopSpeaking.js +21 -44
  161. package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
  162. package/dist/primitives/actionBar/index.js +17 -50
  163. package/dist/primitives/actionBar/index.js.map +1 -1
  164. package/dist/primitives/actionBar/useActionBarFloatStatus.js +13 -37
  165. package/dist/primitives/actionBar/useActionBarFloatStatus.js.map +1 -1
  166. package/dist/primitives/assistantModal/AssistantModalAnchor.js +9 -45
  167. package/dist/primitives/assistantModal/AssistantModalAnchor.js.map +1 -1
  168. package/dist/primitives/assistantModal/AssistantModalContent.js +11 -47
  169. package/dist/primitives/assistantModal/AssistantModalContent.js.map +1 -1
  170. package/dist/primitives/assistantModal/AssistantModalRoot.js +14 -50
  171. package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
  172. package/dist/primitives/assistantModal/AssistantModalTrigger.js +9 -45
  173. package/dist/primitives/assistantModal/AssistantModalTrigger.js.map +1 -1
  174. package/dist/primitives/assistantModal/index.js +9 -38
  175. package/dist/primitives/assistantModal/index.js.map +1 -1
  176. package/dist/primitives/assistantModal/scope.js +4 -40
  177. package/dist/primitives/assistantModal/scope.js.map +1 -1
  178. package/dist/primitives/attachment/AttachmentName.js +7 -33
  179. package/dist/primitives/attachment/AttachmentName.js.map +1 -1
  180. package/dist/primitives/attachment/AttachmentRemove.js +11 -35
  181. package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
  182. package/dist/primitives/attachment/AttachmentRoot.js +7 -33
  183. package/dist/primitives/attachment/AttachmentRoot.js.map +1 -1
  184. package/dist/primitives/attachment/AttachmentThumb.js +9 -35
  185. package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
  186. package/dist/primitives/attachment/index.js +9 -38
  187. package/dist/primitives/attachment/index.js.map +1 -1
  188. package/dist/primitives/branchPicker/BranchPickerCount.js +8 -34
  189. package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
  190. package/dist/primitives/branchPicker/BranchPickerNext.js +15 -36
  191. package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
  192. package/dist/primitives/branchPicker/BranchPickerNumber.js +8 -34
  193. package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
  194. package/dist/primitives/branchPicker/BranchPickerPrevious.js +15 -36
  195. package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
  196. package/dist/primitives/branchPicker/BranchPickerRoot.js +8 -34
  197. package/dist/primitives/branchPicker/BranchPickerRoot.js.map +1 -1
  198. package/dist/primitives/branchPicker/index.js +11 -41
  199. package/dist/primitives/branchPicker/index.js.map +1 -1
  200. package/dist/primitives/composer/ComposerAddAttachment.js +12 -36
  201. package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
  202. package/dist/primitives/composer/ComposerAttachments.js +19 -45
  203. package/dist/primitives/composer/ComposerAttachments.js.map +1 -1
  204. package/dist/primitives/composer/ComposerCancel.js +12 -36
  205. package/dist/primitives/composer/ComposerCancel.js.map +1 -1
  206. package/dist/primitives/composer/ComposerIf.js +6 -32
  207. package/dist/primitives/composer/ComposerIf.js.map +1 -1
  208. package/dist/primitives/composer/ComposerInput.js +39 -67
  209. package/dist/primitives/composer/ComposerInput.js.map +1 -1
  210. package/dist/primitives/composer/ComposerRoot.js +14 -38
  211. package/dist/primitives/composer/ComposerRoot.js.map +1 -1
  212. package/dist/primitives/composer/ComposerSend.js +15 -40
  213. package/dist/primitives/composer/ComposerSend.js.map +1 -1
  214. package/dist/primitives/composer/index.js +15 -47
  215. package/dist/primitives/composer/index.js.map +1 -1
  216. package/dist/primitives/contentPart/ContentPartImage.js +9 -35
  217. package/dist/primitives/contentPart/ContentPartImage.js.map +1 -1
  218. package/dist/primitives/contentPart/ContentPartInProgress.js +5 -31
  219. package/dist/primitives/contentPart/ContentPartInProgress.js.map +1 -1
  220. package/dist/primitives/contentPart/ContentPartText.js +11 -35
  221. package/dist/primitives/contentPart/ContentPartText.js.map +1 -1
  222. package/dist/primitives/contentPart/index.js +7 -35
  223. package/dist/primitives/contentPart/index.js.map +1 -1
  224. package/dist/primitives/contentPart/useContentPartFile.js +5 -31
  225. package/dist/primitives/contentPart/useContentPartFile.js.map +1 -1
  226. package/dist/primitives/contentPart/useContentPartImage.js +5 -31
  227. package/dist/primitives/contentPart/useContentPartImage.js.map +1 -1
  228. package/dist/primitives/contentPart/useContentPartReasoning.js +5 -31
  229. package/dist/primitives/contentPart/useContentPartReasoning.js.map +1 -1
  230. package/dist/primitives/contentPart/useContentPartSource.js +5 -31
  231. package/dist/primitives/contentPart/useContentPartSource.js.map +1 -1
  232. package/dist/primitives/contentPart/useContentPartText.js +5 -31
  233. package/dist/primitives/contentPart/useContentPartText.js.map +1 -1
  234. package/dist/primitives/index.js +18 -69
  235. package/dist/primitives/index.js.map +1 -1
  236. package/dist/primitives/message/MessageAttachments.js +19 -45
  237. package/dist/primitives/message/MessageAttachments.js.map +1 -1
  238. package/dist/primitives/message/MessageContent.js +54 -72
  239. package/dist/primitives/message/MessageContent.js.map +1 -1
  240. package/dist/primitives/message/MessageIf.js +12 -35
  241. package/dist/primitives/message/MessageIf.js.map +1 -1
  242. package/dist/primitives/message/MessageRoot.js +18 -41
  243. package/dist/primitives/message/MessageRoot.js.map +1 -1
  244. package/dist/primitives/message/index.js +9 -38
  245. package/dist/primitives/message/index.js.map +1 -1
  246. package/dist/primitives/thread/ThreadEmpty.js +5 -31
  247. package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
  248. package/dist/primitives/thread/ThreadIf.js +6 -32
  249. package/dist/primitives/thread/ThreadIf.js.map +1 -1
  250. package/dist/primitives/thread/ThreadMessages.js +23 -50
  251. package/dist/primitives/thread/ThreadMessages.js.map +1 -1
  252. package/dist/primitives/thread/ThreadRoot.js +7 -33
  253. package/dist/primitives/thread/ThreadRoot.js.map +1 -1
  254. package/dist/primitives/thread/ThreadScrollToBottom.js +15 -36
  255. package/dist/primitives/thread/ThreadScrollToBottom.js.map +1 -1
  256. package/dist/primitives/thread/ThreadSuggestion.js +13 -37
  257. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  258. package/dist/primitives/thread/ThreadViewport.js +14 -40
  259. package/dist/primitives/thread/ThreadViewport.js.map +1 -1
  260. package/dist/primitives/thread/index.js +15 -47
  261. package/dist/primitives/thread/index.js.map +1 -1
  262. package/dist/primitives/thread/useThreadViewportAutoScroll.js +22 -48
  263. package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -1
  264. package/dist/primitives/threadList/ThreadListItems.js +14 -40
  265. package/dist/primitives/threadList/ThreadListItems.js.map +1 -1
  266. package/dist/primitives/threadList/ThreadListNew.js +14 -40
  267. package/dist/primitives/threadList/ThreadListNew.js.map +1 -1
  268. package/dist/primitives/threadList/ThreadListRoot.js +7 -33
  269. package/dist/primitives/threadList/ThreadListRoot.js.map +1 -1
  270. package/dist/primitives/threadList/index.js +7 -35
  271. package/dist/primitives/threadList/index.js.map +1 -1
  272. package/dist/primitives/threadListItem/ThreadListItemArchive.js +11 -35
  273. package/dist/primitives/threadListItem/ThreadListItemArchive.js.map +1 -1
  274. package/dist/primitives/threadListItem/ThreadListItemDelete.js +9 -33
  275. package/dist/primitives/threadListItem/ThreadListItemDelete.js.map +1 -1
  276. package/dist/primitives/threadListItem/ThreadListItemRoot.js +10 -36
  277. package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -1
  278. package/dist/primitives/threadListItem/ThreadListItemTitle.js +7 -33
  279. package/dist/primitives/threadListItem/ThreadListItemTitle.js.map +1 -1
  280. package/dist/primitives/threadListItem/ThreadListItemTrigger.js +9 -33
  281. package/dist/primitives/threadListItem/ThreadListItemTrigger.js.map +1 -1
  282. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js +9 -33
  283. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js.map +1 -1
  284. package/dist/primitives/threadListItem/index.js +13 -44
  285. package/dist/primitives/threadListItem/index.js.map +1 -1
  286. package/dist/runtimes/adapters/RuntimeAdapterProvider.js +10 -37
  287. package/dist/runtimes/adapters/RuntimeAdapterProvider.js.map +1 -1
  288. package/dist/runtimes/adapters/attachment/AttachmentAdapter.js +0 -18
  289. package/dist/runtimes/adapters/attachment/AttachmentAdapter.js.map +1 -1
  290. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.js +4 -30
  291. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.js.map +1 -1
  292. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.js +5 -31
  293. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.js.map +1 -1
  294. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.js +5 -31
  295. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.js.map +1 -1
  296. package/dist/runtimes/adapters/attachment/index.js +5 -33
  297. package/dist/runtimes/adapters/attachment/index.js.map +1 -1
  298. package/dist/runtimes/adapters/feedback/FeedbackAdapter.js +0 -18
  299. package/dist/runtimes/adapters/feedback/FeedbackAdapter.js.map +1 -1
  300. package/dist/runtimes/adapters/feedback/index.js +0 -18
  301. package/dist/runtimes/adapters/feedback/index.js.map +1 -1
  302. package/dist/runtimes/adapters/index.js +4 -30
  303. package/dist/runtimes/adapters/index.js.map +1 -1
  304. package/dist/runtimes/adapters/speech/SpeechAdapterTypes.js +0 -18
  305. package/dist/runtimes/adapters/speech/SpeechAdapterTypes.js.map +1 -1
  306. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.js +4 -30
  307. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.js.map +1 -1
  308. package/dist/runtimes/adapters/speech/index.js +3 -29
  309. package/dist/runtimes/adapters/speech/index.js.map +1 -1
  310. package/dist/runtimes/adapters/suggestion/SuggestionAdapter.js +0 -18
  311. package/dist/runtimes/adapters/suggestion/SuggestionAdapter.js.map +1 -1
  312. package/dist/runtimes/adapters/suggestion/index.js +0 -18
  313. package/dist/runtimes/adapters/suggestion/index.js.map +1 -1
  314. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.js +0 -18
  315. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.js.map +1 -1
  316. package/dist/runtimes/composer/BaseComposerRuntimeCore.js +6 -32
  317. package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
  318. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js +8 -34
  319. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js.map +1 -1
  320. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js +5 -31
  321. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js.map +1 -1
  322. package/dist/runtimes/core/AssistantRuntimeCore.js +0 -18
  323. package/dist/runtimes/core/AssistantRuntimeCore.js.map +1 -1
  324. package/dist/runtimes/core/BaseAssistantRuntimeCore.js +6 -32
  325. package/dist/runtimes/core/BaseAssistantRuntimeCore.js.map +1 -1
  326. package/dist/runtimes/core/BaseThreadRuntimeCore.js +14 -38
  327. package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
  328. package/dist/runtimes/core/ComposerRuntimeCore.js +0 -18
  329. package/dist/runtimes/core/ComposerRuntimeCore.js.map +1 -1
  330. package/dist/runtimes/core/ThreadListRuntimeCore.js +0 -18
  331. package/dist/runtimes/core/ThreadListRuntimeCore.js.map +1 -1
  332. package/dist/runtimes/core/ThreadRuntimeCore.js +0 -18
  333. package/dist/runtimes/core/ThreadRuntimeCore.js.map +1 -1
  334. package/dist/runtimes/core/index.js +0 -18
  335. package/dist/runtimes/core/index.js.map +1 -1
  336. package/dist/runtimes/external-store/ExternalStoreAdapter.js +0 -18
  337. package/dist/runtimes/external-store/ExternalStoreAdapter.js.map +1 -1
  338. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +10 -36
  339. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
  340. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js +9 -35
  341. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js.map +1 -1
  342. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +23 -47
  343. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
  344. package/dist/runtimes/external-store/ThreadMessageConverter.js +4 -30
  345. package/dist/runtimes/external-store/ThreadMessageConverter.js.map +1 -1
  346. package/dist/runtimes/external-store/ThreadMessageLike.js +8 -34
  347. package/dist/runtimes/external-store/ThreadMessageLike.js.map +1 -1
  348. package/dist/runtimes/external-store/auto-status.js +6 -33
  349. package/dist/runtimes/external-store/auto-status.js.map +1 -1
  350. package/dist/runtimes/external-store/createMessageConverter.d.ts +5 -1
  351. package/dist/runtimes/external-store/createMessageConverter.d.ts.map +1 -1
  352. package/dist/runtimes/external-store/createMessageConverter.js +22 -40
  353. package/dist/runtimes/external-store/createMessageConverter.js.map +1 -1
  354. package/dist/runtimes/external-store/external-message-converter.js +30 -54
  355. package/dist/runtimes/external-store/external-message-converter.js.map +1 -1
  356. package/dist/runtimes/external-store/getExternalStoreMessage.js +7 -35
  357. package/dist/runtimes/external-store/getExternalStoreMessage.js.map +1 -1
  358. package/dist/runtimes/external-store/index.js +14 -39
  359. package/dist/runtimes/external-store/index.js.map +1 -1
  360. package/dist/runtimes/external-store/useExternalStoreRuntime.d.ts +2 -2
  361. package/dist/runtimes/external-store/useExternalStoreRuntime.d.ts.map +1 -1
  362. package/dist/runtimes/external-store/useExternalStoreRuntime.js +14 -38
  363. package/dist/runtimes/external-store/useExternalStoreRuntime.js.map +1 -1
  364. package/dist/runtimes/index.js +8 -40
  365. package/dist/runtimes/index.js.map +1 -1
  366. package/dist/runtimes/local/ChatModelAdapter.js +0 -18
  367. package/dist/runtimes/local/ChatModelAdapter.js.map +1 -1
  368. package/dist/runtimes/local/LocalRuntimeCore.js +11 -37
  369. package/dist/runtimes/local/LocalRuntimeCore.js.map +1 -1
  370. package/dist/runtimes/local/LocalRuntimeOptions.js +3 -29
  371. package/dist/runtimes/local/LocalRuntimeOptions.js.map +1 -1
  372. package/dist/runtimes/local/LocalThreadListRuntimeCore.js +6 -32
  373. package/dist/runtimes/local/LocalThreadListRuntimeCore.js.map +1 -1
  374. package/dist/runtimes/local/LocalThreadRuntimeCore.js +11 -37
  375. package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
  376. package/dist/runtimes/local/index.js +3 -29
  377. package/dist/runtimes/local/index.js.map +1 -1
  378. package/dist/runtimes/local/shouldContinue.js +3 -29
  379. package/dist/runtimes/local/shouldContinue.js.map +1 -1
  380. package/dist/runtimes/local/useLocalRuntime.js +18 -44
  381. package/dist/runtimes/local/useLocalRuntime.js.map +1 -1
  382. package/dist/runtimes/remote-thread-list/BaseSubscribable.js +4 -30
  383. package/dist/runtimes/remote-thread-list/BaseSubscribable.js.map +1 -1
  384. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js +4 -30
  385. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js.map +1 -1
  386. package/dist/runtimes/remote-thread-list/OptimisticState.js +6 -32
  387. package/dist/runtimes/remote-thread-list/OptimisticState.js.map +1 -1
  388. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js +33 -50
  389. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js.map +1 -1
  390. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js +28 -54
  391. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
  392. package/dist/runtimes/remote-thread-list/adapter/cloud.js +23 -44
  393. package/dist/runtimes/remote-thread-list/adapter/cloud.js.map +1 -1
  394. package/dist/runtimes/remote-thread-list/adapter/in-memory.js +4 -30
  395. package/dist/runtimes/remote-thread-list/adapter/in-memory.js.map +1 -1
  396. package/dist/runtimes/remote-thread-list/index.js +5 -32
  397. package/dist/runtimes/remote-thread-list/index.js.map +1 -1
  398. package/dist/runtimes/remote-thread-list/types.js +0 -18
  399. package/dist/runtimes/remote-thread-list/types.js.map +1 -1
  400. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.js +13 -39
  401. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.js.map +1 -1
  402. package/dist/runtimes/utils/MessageRepository.js +14 -41
  403. package/dist/runtimes/utils/MessageRepository.js.map +1 -1
  404. package/dist/tests/setup.js +3 -2995
  405. package/dist/tests/setup.js.map +1 -1
  406. package/dist/types/AssistantTypes.js +0 -18
  407. package/dist/types/AssistantTypes.js.map +1 -1
  408. package/dist/types/AttachmentTypes.js +0 -18
  409. package/dist/types/AttachmentTypes.js.map +1 -1
  410. package/dist/types/ContentPartComponentTypes.js +0 -18
  411. package/dist/types/ContentPartComponentTypes.js.map +1 -1
  412. package/dist/types/Unsubscribe.js +0 -18
  413. package/dist/types/Unsubscribe.js.map +1 -1
  414. package/dist/types/index.js +0 -18
  415. package/dist/types/index.js.map +1 -1
  416. package/dist/utils/CompositeContextProvider.js +8 -32
  417. package/dist/utils/CompositeContextProvider.js.map +1 -1
  418. package/dist/utils/RequireAtLeastOne.js +0 -18
  419. package/dist/utils/RequireAtLeastOne.js.map +1 -1
  420. package/dist/utils/combined/createCombinedStore.js +5 -31
  421. package/dist/utils/combined/createCombinedStore.js.map +1 -1
  422. package/dist/utils/combined/useCombinedStore.js +8 -32
  423. package/dist/utils/combined/useCombinedStore.js.map +1 -1
  424. package/dist/utils/createActionButton.js +13 -37
  425. package/dist/utils/createActionButton.js.map +1 -1
  426. package/dist/utils/getThreadMessageText.js +3 -29
  427. package/dist/utils/getThreadMessageText.js.map +1 -1
  428. package/dist/utils/hooks/useManagedRef.js +6 -32
  429. package/dist/utils/hooks/useManagedRef.js.map +1 -1
  430. package/dist/utils/hooks/useOnResizeContent.js +9 -35
  431. package/dist/utils/hooks/useOnResizeContent.js.map +1 -1
  432. package/dist/utils/hooks/useOnScrollToBottom.js +9 -35
  433. package/dist/utils/hooks/useOnScrollToBottom.js.map +1 -1
  434. package/dist/utils/idUtils.js +7 -35
  435. package/dist/utils/idUtils.js.map +1 -1
  436. package/dist/utils/json/is-json.js +2 -30
  437. package/dist/utils/json/is-json.js.map +1 -1
  438. package/dist/utils/json/json-value.js +0 -18
  439. package/dist/utils/json/json-value.js.map +1 -1
  440. package/dist/utils/smooth/SmoothContext.js +24 -48
  441. package/dist/utils/smooth/SmoothContext.js.map +1 -1
  442. package/dist/utils/smooth/index.js +4 -32
  443. package/dist/utils/smooth/index.js.map +1 -1
  444. package/dist/utils/smooth/useSmooth.js +23 -49
  445. package/dist/utils/smooth/useSmooth.js.map +1 -1
  446. package/dist/utils/useToolArgsFieldStatus.js +8 -34
  447. package/dist/utils/useToolArgsFieldStatus.js.map +1 -1
  448. package/package.json +10 -16
  449. package/src/model-context/ModelContextTypes.ts +14 -21
  450. package/src/model-context/makeAssistantVisible.tsx +2 -0
  451. package/src/model-context/tool.ts +6 -12
  452. package/src/runtimes/external-store/createMessageConverter.tsx +10 -1
  453. package/src/runtimes/external-store/useExternalStoreRuntime.tsx +7 -2
  454. package/dist/api/AssistantRuntime.mjs +0 -46
  455. package/dist/api/AssistantRuntime.mjs.map +0 -1
  456. package/dist/api/AttachmentRuntime.mjs +0 -59
  457. package/dist/api/AttachmentRuntime.mjs.map +0 -1
  458. package/dist/api/ComposerRuntime.mjs +0 -230
  459. package/dist/api/ComposerRuntime.mjs.map +0 -1
  460. package/dist/api/ContentPartRuntime.mjs +0 -47
  461. package/dist/api/ContentPartRuntime.mjs.map +0 -1
  462. package/dist/api/MessageRuntime.mjs +0 -212
  463. package/dist/api/MessageRuntime.mjs.map +0 -1
  464. package/dist/api/RuntimePathTypes.mjs +0 -1
  465. package/dist/api/RuntimePathTypes.mjs.map +0 -1
  466. package/dist/api/ThreadListItemRuntime.mjs +0 -71
  467. package/dist/api/ThreadListItemRuntime.mjs.map +0 -1
  468. package/dist/api/ThreadListRuntime.mjs +0 -165
  469. package/dist/api/ThreadListRuntime.mjs.map +0 -1
  470. package/dist/api/ThreadRuntime.mjs +0 -235
  471. package/dist/api/ThreadRuntime.mjs.map +0 -1
  472. package/dist/api/index.mjs +0 -1
  473. package/dist/api/index.mjs.map +0 -1
  474. package/dist/api/subscribable/BaseSubject.mjs +0 -32
  475. package/dist/api/subscribable/BaseSubject.mjs.map +0 -1
  476. package/dist/api/subscribable/EventSubscriptionSubject.mjs +0 -37
  477. package/dist/api/subscribable/EventSubscriptionSubject.mjs.map +0 -1
  478. package/dist/api/subscribable/LazyMemoizeSubject.mjs +0 -37
  479. package/dist/api/subscribable/LazyMemoizeSubject.mjs.map +0 -1
  480. package/dist/api/subscribable/NestedSubscriptionSubject.mjs +0 -41
  481. package/dist/api/subscribable/NestedSubscriptionSubject.mjs.map +0 -1
  482. package/dist/api/subscribable/SKIP_UPDATE.mjs +0 -6
  483. package/dist/api/subscribable/SKIP_UPDATE.mjs.map +0 -1
  484. package/dist/api/subscribable/ShallowMemoizeSubject.mjs +0 -41
  485. package/dist/api/subscribable/ShallowMemoizeSubject.mjs.map +0 -1
  486. package/dist/api/subscribable/Subscribable.mjs +0 -1
  487. package/dist/api/subscribable/Subscribable.mjs.map +0 -1
  488. package/dist/api/subscribable/shallowEqual.mjs +0 -16
  489. package/dist/api/subscribable/shallowEqual.mjs.map +0 -1
  490. package/dist/cloud/AssistantCloud.mjs +0 -22
  491. package/dist/cloud/AssistantCloud.mjs.map +0 -1
  492. package/dist/cloud/AssistantCloudAPI.mjs +0 -87
  493. package/dist/cloud/AssistantCloudAPI.mjs.map +0 -1
  494. package/dist/cloud/AssistantCloudAuthStrategy.mjs +0 -139
  495. package/dist/cloud/AssistantCloudAuthStrategy.mjs.map +0 -1
  496. package/dist/cloud/AssistantCloudAuthTokens.mjs +0 -13
  497. package/dist/cloud/AssistantCloudAuthTokens.mjs.map +0 -1
  498. package/dist/cloud/AssistantCloudRuns.mjs +0 -21
  499. package/dist/cloud/AssistantCloudRuns.mjs.map +0 -1
  500. package/dist/cloud/AssistantCloudThreadHistoryAdapter.mjs +0 -47
  501. package/dist/cloud/AssistantCloudThreadHistoryAdapter.mjs.map +0 -1
  502. package/dist/cloud/AssistantCloudThreadMessages.mjs +0 -21
  503. package/dist/cloud/AssistantCloudThreadMessages.mjs.map +0 -1
  504. package/dist/cloud/AssistantCloudThreads.mjs +0 -30
  505. package/dist/cloud/AssistantCloudThreads.mjs.map +0 -1
  506. package/dist/cloud/auiV0.mjs +0 -88
  507. package/dist/cloud/auiV0.mjs.map +0 -1
  508. package/dist/cloud/index.mjs +0 -8
  509. package/dist/cloud/index.mjs.map +0 -1
  510. package/dist/cloud/useCloudThreadListRuntime.mjs +0 -20
  511. package/dist/cloud/useCloudThreadListRuntime.mjs.map +0 -1
  512. package/dist/context/ReadonlyStore.mjs +0 -8
  513. package/dist/context/ReadonlyStore.mjs.map +0 -1
  514. package/dist/context/index.mjs +0 -5
  515. package/dist/context/index.mjs.map +0 -1
  516. package/dist/context/providers/AssistantRuntimeProvider.mjs +0 -59
  517. package/dist/context/providers/AssistantRuntimeProvider.mjs.map +0 -1
  518. package/dist/context/providers/AttachmentRuntimeProvider.mjs +0 -33
  519. package/dist/context/providers/AttachmentRuntimeProvider.mjs.map +0 -1
  520. package/dist/context/providers/ContentPartRuntimeProvider.mjs +0 -28
  521. package/dist/context/providers/ContentPartRuntimeProvider.mjs.map +0 -1
  522. package/dist/context/providers/MessageRuntimeProvider.mjs +0 -37
  523. package/dist/context/providers/MessageRuntimeProvider.mjs.map +0 -1
  524. package/dist/context/providers/TextContentPartProvider.mjs +0 -66
  525. package/dist/context/providers/TextContentPartProvider.mjs.map +0 -1
  526. package/dist/context/providers/ThreadListItemRuntimeProvider.mjs +0 -30
  527. package/dist/context/providers/ThreadListItemRuntimeProvider.mjs.map +0 -1
  528. package/dist/context/providers/ThreadRuntimeProvider.mjs +0 -33
  529. package/dist/context/providers/ThreadRuntimeProvider.mjs.map +0 -1
  530. package/dist/context/providers/ThreadViewportProvider.mjs +0 -42
  531. package/dist/context/providers/ThreadViewportProvider.mjs.map +0 -1
  532. package/dist/context/providers/index.mjs +0 -8
  533. package/dist/context/providers/index.mjs.map +0 -1
  534. package/dist/context/react/AssistantContext.mjs +0 -34
  535. package/dist/context/react/AssistantContext.mjs.map +0 -1
  536. package/dist/context/react/AttachmentContext.mjs +0 -67
  537. package/dist/context/react/AttachmentContext.mjs.map +0 -1
  538. package/dist/context/react/ComposerContext.mjs +0 -17
  539. package/dist/context/react/ComposerContext.mjs.map +0 -1
  540. package/dist/context/react/ContentPartContext.mjs +0 -25
  541. package/dist/context/react/ContentPartContext.mjs.map +0 -1
  542. package/dist/context/react/MessageContext.mjs +0 -35
  543. package/dist/context/react/MessageContext.mjs.map +0 -1
  544. package/dist/context/react/ThreadContext.mjs +0 -38
  545. package/dist/context/react/ThreadContext.mjs.map +0 -1
  546. package/dist/context/react/ThreadListItemContext.mjs +0 -25
  547. package/dist/context/react/ThreadListItemContext.mjs.map +0 -1
  548. package/dist/context/react/ThreadViewportContext.mjs +0 -18
  549. package/dist/context/react/ThreadViewportContext.mjs.map +0 -1
  550. package/dist/context/react/index.mjs +0 -66
  551. package/dist/context/react/index.mjs.map +0 -1
  552. package/dist/context/react/utils/createContextHook.mjs +0 -18
  553. package/dist/context/react/utils/createContextHook.mjs.map +0 -1
  554. package/dist/context/react/utils/createContextStoreHook.mjs +0 -31
  555. package/dist/context/react/utils/createContextStoreHook.mjs.map +0 -1
  556. package/dist/context/react/utils/createStateHookForRuntime.mjs +0 -24
  557. package/dist/context/react/utils/createStateHookForRuntime.mjs.map +0 -1
  558. package/dist/context/react/utils/ensureBinding.mjs +0 -11
  559. package/dist/context/react/utils/ensureBinding.mjs.map +0 -1
  560. package/dist/context/react/utils/useRuntimeState.mjs +0 -22
  561. package/dist/context/react/utils/useRuntimeState.mjs.map +0 -1
  562. package/dist/context/stores/AssistantToolUIs.mjs +0 -35
  563. package/dist/context/stores/AssistantToolUIs.mjs.map +0 -1
  564. package/dist/context/stores/MessageUtils.mjs +0 -18
  565. package/dist/context/stores/MessageUtils.mjs.map +0 -1
  566. package/dist/context/stores/ThreadViewport.mjs +0 -25
  567. package/dist/context/stores/ThreadViewport.mjs.map +0 -1
  568. package/dist/context/stores/index.mjs +0 -1
  569. package/dist/context/stores/index.mjs.map +0 -1
  570. package/dist/index.mjs +0 -13
  571. package/dist/index.mjs.map +0 -1
  572. package/dist/internal.mjs +0 -27
  573. package/dist/internal.mjs.map +0 -1
  574. package/dist/model-context/ModelContextTypes.mjs +0 -61
  575. package/dist/model-context/ModelContextTypes.mjs.map +0 -1
  576. package/dist/model-context/index.mjs +0 -26
  577. package/dist/model-context/index.mjs.map +0 -1
  578. package/dist/model-context/makeAssistantTool.mjs +0 -16
  579. package/dist/model-context/makeAssistantTool.mjs.map +0 -1
  580. package/dist/model-context/makeAssistantToolUI.mjs +0 -18
  581. package/dist/model-context/makeAssistantToolUI.mjs.map +0 -1
  582. package/dist/model-context/makeAssistantVisible.mjs +0 -93
  583. package/dist/model-context/makeAssistantVisible.mjs.map +0 -1
  584. package/dist/model-context/tool.mjs +0 -8
  585. package/dist/model-context/tool.mjs.map +0 -1
  586. package/dist/model-context/useAssistantInstructions.mjs +0 -26
  587. package/dist/model-context/useAssistantInstructions.mjs.map +0 -1
  588. package/dist/model-context/useAssistantTool.mjs +0 -31
  589. package/dist/model-context/useAssistantTool.mjs.map +0 -1
  590. package/dist/model-context/useAssistantToolUI.mjs +0 -16
  591. package/dist/model-context/useAssistantToolUI.mjs.map +0 -1
  592. package/dist/model-context/useInlineRender.mjs +0 -22
  593. package/dist/model-context/useInlineRender.mjs.map +0 -1
  594. package/dist/primitives/actionBar/ActionBarCopy.mjs +0 -56
  595. package/dist/primitives/actionBar/ActionBarCopy.mjs.map +0 -1
  596. package/dist/primitives/actionBar/ActionBarEdit.mjs +0 -25
  597. package/dist/primitives/actionBar/ActionBarEdit.mjs.map +0 -1
  598. package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs +0 -41
  599. package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs.map +0 -1
  600. package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs +0 -39
  601. package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs.map +0 -1
  602. package/dist/primitives/actionBar/ActionBarReload.mjs +0 -31
  603. package/dist/primitives/actionBar/ActionBarReload.mjs.map +0 -1
  604. package/dist/primitives/actionBar/ActionBarRoot.mjs +0 -31
  605. package/dist/primitives/actionBar/ActionBarRoot.mjs.map +0 -1
  606. package/dist/primitives/actionBar/ActionBarSpeak.mjs +0 -27
  607. package/dist/primitives/actionBar/ActionBarSpeak.mjs.map +0 -1
  608. package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs +0 -48
  609. package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs.map +0 -1
  610. package/dist/primitives/actionBar/index.mjs +0 -20
  611. package/dist/primitives/actionBar/index.mjs.map +0 -1
  612. package/dist/primitives/actionBar/useActionBarFloatStatus.mjs +0 -41
  613. package/dist/primitives/actionBar/useActionBarFloatStatus.mjs.map +0 -1
  614. package/dist/primitives/assistantModal/AssistantModalAnchor.mjs +0 -21
  615. package/dist/primitives/assistantModal/AssistantModalAnchor.mjs.map +0 -1
  616. package/dist/primitives/assistantModal/AssistantModalContent.mjs +0 -39
  617. package/dist/primitives/assistantModal/AssistantModalContent.mjs.map +0 -1
  618. package/dist/primitives/assistantModal/AssistantModalRoot.mjs +0 -60
  619. package/dist/primitives/assistantModal/AssistantModalRoot.mjs.map +0 -1
  620. package/dist/primitives/assistantModal/AssistantModalTrigger.mjs +0 -19
  621. package/dist/primitives/assistantModal/AssistantModalTrigger.mjs.map +0 -1
  622. package/dist/primitives/assistantModal/index.mjs +0 -12
  623. package/dist/primitives/assistantModal/index.mjs.map +0 -1
  624. package/dist/primitives/assistantModal/scope.mjs +0 -7
  625. package/dist/primitives/assistantModal/scope.mjs.map +0 -1
  626. package/dist/primitives/attachment/AttachmentName.mjs +0 -14
  627. package/dist/primitives/attachment/AttachmentName.mjs.map +0 -1
  628. package/dist/primitives/attachment/AttachmentRemove.mjs +0 -23
  629. package/dist/primitives/attachment/AttachmentRemove.mjs.map +0 -1
  630. package/dist/primitives/attachment/AttachmentRoot.mjs +0 -12
  631. package/dist/primitives/attachment/AttachmentRoot.mjs.map +0 -1
  632. package/dist/primitives/attachment/AttachmentThumb.mjs +0 -19
  633. package/dist/primitives/attachment/AttachmentThumb.mjs.map +0 -1
  634. package/dist/primitives/attachment/index.mjs +0 -12
  635. package/dist/primitives/attachment/index.mjs.map +0 -1
  636. package/dist/primitives/branchPicker/BranchPickerCount.mjs +0 -18
  637. package/dist/primitives/branchPicker/BranchPickerCount.mjs.map +0 -1
  638. package/dist/primitives/branchPicker/BranchPickerNext.mjs +0 -28
  639. package/dist/primitives/branchPicker/BranchPickerNext.mjs.map +0 -1
  640. package/dist/primitives/branchPicker/BranchPickerNumber.mjs +0 -18
  641. package/dist/primitives/branchPicker/BranchPickerNumber.mjs.map +0 -1
  642. package/dist/primitives/branchPicker/BranchPickerPrevious.mjs +0 -28
  643. package/dist/primitives/branchPicker/BranchPickerPrevious.mjs.map +0 -1
  644. package/dist/primitives/branchPicker/BranchPickerRoot.mjs +0 -13
  645. package/dist/primitives/branchPicker/BranchPickerRoot.mjs.map +0 -1
  646. package/dist/primitives/branchPicker/index.mjs +0 -14
  647. package/dist/primitives/branchPicker/index.mjs.map +0 -1
  648. package/dist/primitives/composer/ComposerAddAttachment.mjs +0 -42
  649. package/dist/primitives/composer/ComposerAddAttachment.mjs.map +0 -1
  650. package/dist/primitives/composer/ComposerAttachments.mjs +0 -57
  651. package/dist/primitives/composer/ComposerAttachments.mjs.map +0 -1
  652. package/dist/primitives/composer/ComposerCancel.mjs +0 -25
  653. package/dist/primitives/composer/ComposerCancel.mjs.map +0 -1
  654. package/dist/primitives/composer/ComposerIf.mjs +0 -23
  655. package/dist/primitives/composer/ComposerIf.mjs.map +0 -1
  656. package/dist/primitives/composer/ComposerInput.mjs +0 -115
  657. package/dist/primitives/composer/ComposerInput.mjs.map +0 -1
  658. package/dist/primitives/composer/ComposerRoot.mjs +0 -31
  659. package/dist/primitives/composer/ComposerRoot.mjs.map +0 -1
  660. package/dist/primitives/composer/ComposerSend.mjs +0 -32
  661. package/dist/primitives/composer/ComposerSend.mjs.map +0 -1
  662. package/dist/primitives/composer/index.mjs +0 -18
  663. package/dist/primitives/composer/index.mjs.map +0 -1
  664. package/dist/primitives/contentPart/ContentPartImage.mjs +0 -16
  665. package/dist/primitives/contentPart/ContentPartImage.mjs.map +0 -1
  666. package/dist/primitives/contentPart/ContentPartInProgress.mjs +0 -13
  667. package/dist/primitives/contentPart/ContentPartInProgress.mjs.map +0 -1
  668. package/dist/primitives/contentPart/ContentPartText.mjs +0 -18
  669. package/dist/primitives/contentPart/ContentPartText.mjs.map +0 -1
  670. package/dist/primitives/contentPart/index.mjs +0 -10
  671. package/dist/primitives/contentPart/index.mjs.map +0 -1
  672. package/dist/primitives/contentPart/useContentPartFile.mjs +0 -18
  673. package/dist/primitives/contentPart/useContentPartFile.mjs.map +0 -1
  674. package/dist/primitives/contentPart/useContentPartImage.mjs +0 -18
  675. package/dist/primitives/contentPart/useContentPartImage.mjs.map +0 -1
  676. package/dist/primitives/contentPart/useContentPartReasoning.mjs +0 -18
  677. package/dist/primitives/contentPart/useContentPartReasoning.mjs.map +0 -1
  678. package/dist/primitives/contentPart/useContentPartSource.mjs +0 -18
  679. package/dist/primitives/contentPart/useContentPartSource.mjs.map +0 -1
  680. package/dist/primitives/contentPart/useContentPartText.mjs +0 -18
  681. package/dist/primitives/contentPart/useContentPartText.mjs.map +0 -1
  682. package/dist/primitives/index.mjs +0 -36
  683. package/dist/primitives/index.mjs.map +0 -1
  684. package/dist/primitives/message/MessageAttachments.mjs +0 -58
  685. package/dist/primitives/message/MessageAttachments.mjs.map +0 -1
  686. package/dist/primitives/message/MessageContent.mjs +0 -131
  687. package/dist/primitives/message/MessageContent.mjs.map +0 -1
  688. package/dist/primitives/message/MessageIf.mjs +0 -55
  689. package/dist/primitives/message/MessageIf.mjs.map +0 -1
  690. package/dist/primitives/message/MessageRoot.mjs +0 -45
  691. package/dist/primitives/message/MessageRoot.mjs.map +0 -1
  692. package/dist/primitives/message/index.mjs +0 -12
  693. package/dist/primitives/message/index.mjs.map +0 -1
  694. package/dist/primitives/thread/ThreadEmpty.mjs +0 -15
  695. package/dist/primitives/thread/ThreadEmpty.mjs.map +0 -1
  696. package/dist/primitives/thread/ThreadIf.mjs +0 -27
  697. package/dist/primitives/thread/ThreadIf.mjs.map +0 -1
  698. package/dist/primitives/thread/ThreadMessages.mjs +0 -77
  699. package/dist/primitives/thread/ThreadMessages.mjs.map +0 -1
  700. package/dist/primitives/thread/ThreadRoot.mjs +0 -12
  701. package/dist/primitives/thread/ThreadRoot.mjs.map +0 -1
  702. package/dist/primitives/thread/ThreadScrollToBottom.mjs +0 -28
  703. package/dist/primitives/thread/ThreadScrollToBottom.mjs.map +0 -1
  704. package/dist/primitives/thread/ThreadSuggestion.mjs +0 -34
  705. package/dist/primitives/thread/ThreadSuggestion.mjs.map +0 -1
  706. package/dist/primitives/thread/ThreadViewport.mjs +0 -25
  707. package/dist/primitives/thread/ThreadViewport.mjs.map +0 -1
  708. package/dist/primitives/thread/index.mjs +0 -18
  709. package/dist/primitives/thread/index.mjs.map +0 -1
  710. package/dist/primitives/thread/useThreadViewportAutoScroll.mjs +0 -68
  711. package/dist/primitives/thread/useThreadViewportAutoScroll.mjs.map +0 -1
  712. package/dist/primitives/threadList/ThreadListItems.mjs +0 -46
  713. package/dist/primitives/threadList/ThreadListItems.mjs.map +0 -1
  714. package/dist/primitives/threadList/ThreadListNew.mjs +0 -36
  715. package/dist/primitives/threadList/ThreadListNew.mjs.map +0 -1
  716. package/dist/primitives/threadList/ThreadListRoot.mjs +0 -12
  717. package/dist/primitives/threadList/ThreadListRoot.mjs.map +0 -1
  718. package/dist/primitives/threadList/index.mjs +0 -10
  719. package/dist/primitives/threadList/index.mjs.map +0 -1
  720. package/dist/primitives/threadListItem/ThreadListItemArchive.mjs +0 -22
  721. package/dist/primitives/threadListItem/ThreadListItemArchive.mjs.map +0 -1
  722. package/dist/primitives/threadListItem/ThreadListItemDelete.mjs +0 -21
  723. package/dist/primitives/threadListItem/ThreadListItemDelete.mjs.map +0 -1
  724. package/dist/primitives/threadListItem/ThreadListItemRoot.mjs +0 -23
  725. package/dist/primitives/threadListItem/ThreadListItemRoot.mjs.map +0 -1
  726. package/dist/primitives/threadListItem/ThreadListItemTitle.mjs +0 -14
  727. package/dist/primitives/threadListItem/ThreadListItemTitle.mjs.map +0 -1
  728. package/dist/primitives/threadListItem/ThreadListItemTrigger.mjs +0 -21
  729. package/dist/primitives/threadListItem/ThreadListItemTrigger.mjs.map +0 -1
  730. package/dist/primitives/threadListItem/ThreadListItemUnarchive.mjs +0 -21
  731. package/dist/primitives/threadListItem/ThreadListItemUnarchive.mjs.map +0 -1
  732. package/dist/primitives/threadListItem/index.mjs +0 -16
  733. package/dist/primitives/threadListItem/index.mjs.map +0 -1
  734. package/dist/runtimes/adapters/RuntimeAdapterProvider.mjs +0 -29
  735. package/dist/runtimes/adapters/RuntimeAdapterProvider.mjs.map +0 -1
  736. package/dist/runtimes/adapters/attachment/AttachmentAdapter.mjs +0 -1
  737. package/dist/runtimes/adapters/attachment/AttachmentAdapter.mjs.map +0 -1
  738. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.mjs +0 -79
  739. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.mjs.map +0 -1
  740. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.mjs +0 -38
  741. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.mjs.map +0 -1
  742. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.mjs +0 -40
  743. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.mjs.map +0 -1
  744. package/dist/runtimes/adapters/attachment/index.mjs +0 -10
  745. package/dist/runtimes/adapters/attachment/index.mjs.map +0 -1
  746. package/dist/runtimes/adapters/feedback/FeedbackAdapter.mjs +0 -1
  747. package/dist/runtimes/adapters/feedback/FeedbackAdapter.mjs.map +0 -1
  748. package/dist/runtimes/adapters/feedback/index.mjs +0 -1
  749. package/dist/runtimes/adapters/feedback/index.mjs.map +0 -1
  750. package/dist/runtimes/adapters/index.mjs +0 -6
  751. package/dist/runtimes/adapters/index.mjs.map +0 -1
  752. package/dist/runtimes/adapters/speech/SpeechAdapterTypes.mjs +0 -1
  753. package/dist/runtimes/adapters/speech/SpeechAdapterTypes.mjs.map +0 -1
  754. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.mjs +0 -43
  755. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.mjs.map +0 -1
  756. package/dist/runtimes/adapters/speech/index.mjs +0 -6
  757. package/dist/runtimes/adapters/speech/index.mjs.map +0 -1
  758. package/dist/runtimes/adapters/suggestion/SuggestionAdapter.mjs +0 -1
  759. package/dist/runtimes/adapters/suggestion/SuggestionAdapter.mjs.map +0 -1
  760. package/dist/runtimes/adapters/suggestion/index.mjs +0 -1
  761. package/dist/runtimes/adapters/suggestion/index.mjs.map +0 -1
  762. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.mjs +0 -1
  763. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.mjs.map +0 -1
  764. package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs +0 -163
  765. package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs.map +0 -1
  766. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.mjs +0 -48
  767. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.mjs.map +0 -1
  768. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.mjs +0 -41
  769. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.mjs.map +0 -1
  770. package/dist/runtimes/core/AssistantRuntimeCore.mjs +0 -1
  771. package/dist/runtimes/core/AssistantRuntimeCore.mjs.map +0 -1
  772. package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs +0 -12
  773. package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs.map +0 -1
  774. package/dist/runtimes/core/BaseThreadRuntimeCore.mjs +0 -141
  775. package/dist/runtimes/core/BaseThreadRuntimeCore.mjs.map +0 -1
  776. package/dist/runtimes/core/ComposerRuntimeCore.mjs +0 -1
  777. package/dist/runtimes/core/ComposerRuntimeCore.mjs.map +0 -1
  778. package/dist/runtimes/core/ThreadListRuntimeCore.mjs +0 -1
  779. package/dist/runtimes/core/ThreadListRuntimeCore.mjs.map +0 -1
  780. package/dist/runtimes/core/ThreadRuntimeCore.mjs +0 -1
  781. package/dist/runtimes/core/ThreadRuntimeCore.mjs.map +0 -1
  782. package/dist/runtimes/core/index.mjs +0 -1
  783. package/dist/runtimes/core/index.mjs.map +0 -1
  784. package/dist/runtimes/external-store/ExternalStoreAdapter.mjs +0 -1
  785. package/dist/runtimes/external-store/ExternalStoreAdapter.mjs.map +0 -1
  786. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs +0 -25
  787. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs.map +0 -1
  788. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.mjs +0 -134
  789. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.mjs.map +0 -1
  790. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs +0 -191
  791. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs.map +0 -1
  792. package/dist/runtimes/external-store/ThreadMessageConverter.mjs +0 -16
  793. package/dist/runtimes/external-store/ThreadMessageConverter.mjs.map +0 -1
  794. package/dist/runtimes/external-store/ThreadMessageLike.mjs +0 -111
  795. package/dist/runtimes/external-store/ThreadMessageLike.mjs.map +0 -1
  796. package/dist/runtimes/external-store/auto-status.mjs +0 -13
  797. package/dist/runtimes/external-store/auto-status.mjs.map +0 -1
  798. package/dist/runtimes/external-store/createMessageConverter.mjs +0 -52
  799. package/dist/runtimes/external-store/createMessageConverter.mjs.map +0 -1
  800. package/dist/runtimes/external-store/external-message-converter.mjs +0 -238
  801. package/dist/runtimes/external-store/external-message-converter.mjs.map +0 -1
  802. package/dist/runtimes/external-store/getExternalStoreMessage.mjs +0 -24
  803. package/dist/runtimes/external-store/getExternalStoreMessage.mjs.map +0 -1
  804. package/dist/runtimes/external-store/index.mjs +0 -20
  805. package/dist/runtimes/external-store/index.mjs.map +0 -1
  806. package/dist/runtimes/external-store/useExternalStoreRuntime.mjs +0 -23
  807. package/dist/runtimes/external-store/useExternalStoreRuntime.mjs.map +0 -1
  808. package/dist/runtimes/index.mjs +0 -11
  809. package/dist/runtimes/index.mjs.map +0 -1
  810. package/dist/runtimes/local/ChatModelAdapter.mjs +0 -1
  811. package/dist/runtimes/local/ChatModelAdapter.mjs.map +0 -1
  812. package/dist/runtimes/local/LocalRuntimeCore.mjs +0 -24
  813. package/dist/runtimes/local/LocalRuntimeCore.mjs.map +0 -1
  814. package/dist/runtimes/local/LocalRuntimeOptions.mjs +0 -25
  815. package/dist/runtimes/local/LocalRuntimeOptions.mjs.map +0 -1
  816. package/dist/runtimes/local/LocalThreadListRuntimeCore.mjs +0 -72
  817. package/dist/runtimes/local/LocalThreadListRuntimeCore.mjs.map +0 -1
  818. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs +0 -309
  819. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs.map +0 -1
  820. package/dist/runtimes/local/index.mjs +0 -6
  821. package/dist/runtimes/local/index.mjs.map +0 -1
  822. package/dist/runtimes/local/shouldContinue.mjs +0 -13
  823. package/dist/runtimes/local/shouldContinue.mjs.map +0 -1
  824. package/dist/runtimes/local/useLocalRuntime.mjs +0 -46
  825. package/dist/runtimes/local/useLocalRuntime.mjs.map +0 -1
  826. package/dist/runtimes/remote-thread-list/BaseSubscribable.mjs +0 -37
  827. package/dist/runtimes/remote-thread-list/BaseSubscribable.mjs.map +0 -1
  828. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.mjs +0 -128
  829. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.mjs.map +0 -1
  830. package/dist/runtimes/remote-thread-list/OptimisticState.mjs +0 -60
  831. package/dist/runtimes/remote-thread-list/OptimisticState.mjs.map +0 -1
  832. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.mjs +0 -128
  833. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.mjs.map +0 -1
  834. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.mjs +0 -431
  835. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.mjs.map +0 -1
  836. package/dist/runtimes/remote-thread-list/adapter/cloud.mjs +0 -83
  837. package/dist/runtimes/remote-thread-list/adapter/cloud.mjs.map +0 -1
  838. package/dist/runtimes/remote-thread-list/adapter/in-memory.mjs +0 -30
  839. package/dist/runtimes/remote-thread-list/adapter/in-memory.mjs.map +0 -1
  840. package/dist/runtimes/remote-thread-list/index.mjs +0 -8
  841. package/dist/runtimes/remote-thread-list/index.mjs.map +0 -1
  842. package/dist/runtimes/remote-thread-list/types.mjs +0 -1
  843. package/dist/runtimes/remote-thread-list/types.mjs.map +0 -1
  844. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.mjs +0 -32
  845. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.mjs.map +0 -1
  846. package/dist/runtimes/utils/MessageRepository.mjs +0 -345
  847. package/dist/runtimes/utils/MessageRepository.mjs.map +0 -1
  848. package/dist/tests/MessageRepository.test.d.ts +0 -2
  849. package/dist/tests/MessageRepository.test.d.ts.map +0 -1
  850. package/dist/tests/setup.mjs +0 -2974
  851. package/dist/tests/setup.mjs.map +0 -1
  852. package/dist/types/AssistantTypes.mjs +0 -1
  853. package/dist/types/AssistantTypes.mjs.map +0 -1
  854. package/dist/types/AttachmentTypes.mjs +0 -1
  855. package/dist/types/AttachmentTypes.mjs.map +0 -1
  856. package/dist/types/ContentPartComponentTypes.mjs +0 -1
  857. package/dist/types/ContentPartComponentTypes.mjs.map +0 -1
  858. package/dist/types/Unsubscribe.mjs +0 -1
  859. package/dist/types/Unsubscribe.mjs.map +0 -1
  860. package/dist/types/index.mjs +0 -1
  861. package/dist/types/index.mjs.map +0 -1
  862. package/dist/utils/CompositeContextProvider.mjs +0 -34
  863. package/dist/utils/CompositeContextProvider.mjs.map +0 -1
  864. package/dist/utils/RequireAtLeastOne.mjs +0 -1
  865. package/dist/utils/RequireAtLeastOne.mjs.map +0 -1
  866. package/dist/utils/combined/createCombinedStore.mjs +0 -22
  867. package/dist/utils/combined/createCombinedStore.mjs.map +0 -1
  868. package/dist/utils/combined/useCombinedStore.mjs +0 -15
  869. package/dist/utils/combined/useCombinedStore.mjs.map +0 -1
  870. package/dist/utils/createActionButton.mjs +0 -37
  871. package/dist/utils/createActionButton.mjs.map +0 -1
  872. package/dist/utils/getThreadMessageText.mjs +0 -11
  873. package/dist/utils/getThreadMessageText.mjs.map +0 -1
  874. package/dist/utils/hooks/useManagedRef.mjs +0 -21
  875. package/dist/utils/hooks/useManagedRef.mjs.map +0 -1
  876. package/dist/utils/hooks/useOnResizeContent.mjs +0 -34
  877. package/dist/utils/hooks/useOnResizeContent.mjs.map +0 -1
  878. package/dist/utils/hooks/useOnScrollToBottom.mjs +0 -17
  879. package/dist/utils/hooks/useOnScrollToBottom.mjs.map +0 -1
  880. package/dist/utils/idUtils.mjs +0 -15
  881. package/dist/utils/idUtils.mjs.map +0 -1
  882. package/dist/utils/json/is-json.mjs +0 -35
  883. package/dist/utils/json/is-json.mjs.map +0 -1
  884. package/dist/utils/json/json-value.mjs +0 -1
  885. package/dist/utils/json/json-value.mjs.map +0 -1
  886. package/dist/utils/smooth/SmoothContext.mjs +0 -53
  887. package/dist/utils/smooth/SmoothContext.mjs.map +0 -1
  888. package/dist/utils/smooth/index.mjs +0 -11
  889. package/dist/utils/smooth/index.mjs.map +0 -1
  890. package/dist/utils/smooth/useSmooth.mjs +0 -114
  891. package/dist/utils/smooth/useSmooth.mjs.map +0 -1
  892. package/dist/utils/useToolArgsFieldStatus.mjs +0 -20
  893. package/dist/utils/useToolArgsFieldStatus.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx"],"sourcesContent":["import {\n AddToolResultOptions,\n StartRunConfig,\n ThreadSuggestion,\n} from \"../core/ThreadRuntimeCore\";\n\nimport { AppendMessage, ThreadMessage } from \"../../types\";\nimport { ExternalStoreAdapter } from \"./ExternalStoreAdapter\";\nimport {\n getExternalStoreMessage,\n symbolInnerMessage,\n} from \"./getExternalStoreMessage\";\nimport { ThreadMessageConverter } from \"./ThreadMessageConverter\";\nimport { getAutoStatus, isAutoStatus } from \"./auto-status\";\nimport { fromThreadMessageLike } from \"./ThreadMessageLike\";\nimport { getThreadMessageText } from \"../../utils/getThreadMessageText\";\nimport {\n RuntimeCapabilities,\n ThreadRuntimeCore,\n} from \"../core/ThreadRuntimeCore\";\nimport { BaseThreadRuntimeCore } from \"../core/BaseThreadRuntimeCore\";\nimport { ModelContextProvider } from \"../../model-context\";\n\nconst EMPTY_ARRAY = Object.freeze([]);\n\nexport const hasUpcomingMessage = (\n isRunning: boolean,\n messages: readonly ThreadMessage[],\n) => {\n return isRunning && messages[messages.length - 1]?.role !== \"assistant\";\n};\n\nexport class ExternalStoreThreadRuntimeCore\n extends BaseThreadRuntimeCore\n implements ThreadRuntimeCore\n{\n private assistantOptimisticId: string | null = null;\n\n private _capabilities: RuntimeCapabilities = {\n switchToBranch: false,\n edit: false,\n reload: false,\n cancel: false,\n unstable_copy: false,\n speech: false,\n attachments: false,\n feedback: false,\n };\n\n public get capabilities() {\n return this._capabilities;\n }\n\n private _messages!: readonly ThreadMessage[];\n public isDisabled!: boolean;\n\n public override get messages() {\n return this._messages;\n }\n\n public get adapters() {\n return this._store.adapters;\n }\n\n public suggestions: readonly ThreadSuggestion[] = [];\n public extras: unknown = undefined;\n\n private _converter = new ThreadMessageConverter();\n\n private _store!: ExternalStoreAdapter<any>;\n\n public override beginEdit(messageId: string) {\n if (!this._store.onEdit)\n throw new Error(\"Runtime does not support editing.\");\n\n super.beginEdit(messageId);\n }\n\n constructor(\n contextProvider: ModelContextProvider,\n store: ExternalStoreAdapter<any>,\n ) {\n super(contextProvider);\n this.__internal_setAdapter(store);\n }\n\n public __internal_setAdapter(store: ExternalStoreAdapter<any>) {\n if (this._store === store) return;\n\n const isRunning = store.isRunning ?? false;\n this.isDisabled = store.isDisabled ?? false;\n\n const oldStore = this._store as ExternalStoreAdapter<any> | undefined;\n this._store = store;\n this.extras = store.extras;\n this.suggestions = store.suggestions ?? EMPTY_ARRAY;\n this._capabilities = {\n switchToBranch: this._store.setMessages !== undefined,\n edit: this._store.onEdit !== undefined,\n reload: this._store.onReload !== undefined,\n cancel: this._store.onCancel !== undefined,\n speech: this._store.adapters?.speech !== undefined,\n unstable_copy: this._store.unstable_capabilities?.copy !== false, // default true\n attachments: !!this._store.adapters?.attachments,\n feedback: !!this._store.adapters?.feedback,\n };\n\n if (oldStore) {\n // flush the converter cache when the convertMessage prop changes\n if (oldStore.convertMessage !== store.convertMessage) {\n this._converter = new ThreadMessageConverter();\n } else if (\n oldStore.isRunning === store.isRunning &&\n oldStore.messages === store.messages\n ) {\n this._notifySubscribers();\n // no conversion update\n return;\n }\n }\n\n const messages = !store.convertMessage\n ? store.messages\n : this._converter.convertMessages(store.messages, (cache, m, idx) => {\n if (!store.convertMessage) return m;\n\n const isLast = idx === store.messages.length - 1;\n const autoStatus = getAutoStatus(isLast, isRunning);\n\n if (\n cache &&\n (cache.role !== \"assistant\" ||\n !isAutoStatus(cache.status) ||\n cache.status === autoStatus)\n )\n return cache;\n\n const messageLike = store.convertMessage(m, idx);\n const newMessage = fromThreadMessageLike(\n messageLike,\n idx.toString(),\n autoStatus,\n );\n (newMessage as any)[symbolInnerMessage] = m;\n return newMessage;\n });\n\n if (messages.length > 0) this.ensureInitialized();\n\n if (oldStore?.isRunning ?? false !== store.isRunning ?? false) {\n if (store.isRunning) {\n this._notifyEventSubscribers(\"run-start\");\n } else {\n this._notifyEventSubscribers(\"run-end\");\n }\n }\n\n for (let i = 0; i < messages.length; i++) {\n const message = messages[i]!;\n const parent = messages[i - 1];\n this.repository.addOrUpdateMessage(parent?.id ?? null, message);\n }\n\n if (this.assistantOptimisticId) {\n this.repository.deleteMessage(this.assistantOptimisticId);\n this.assistantOptimisticId = null;\n }\n\n if (hasUpcomingMessage(isRunning, messages)) {\n this.assistantOptimisticId = this.repository.appendOptimisticMessage(\n messages.at(-1)?.id ?? null,\n {\n role: \"assistant\",\n content: [],\n },\n );\n }\n\n this.repository.resetHead(\n this.assistantOptimisticId ?? messages.at(-1)?.id ?? null,\n );\n\n this._messages = this.repository.getMessages();\n this._notifySubscribers();\n }\n\n public override switchToBranch(branchId: string): void {\n if (!this._store.setMessages)\n throw new Error(\"Runtime does not support switching branches.\");\n\n this.repository.switchToBranch(branchId);\n this.updateMessages(this.repository.getMessages());\n }\n\n public async append(message: AppendMessage): Promise<void> {\n if (message.parentId !== (this.messages.at(-1)?.id ?? null)) {\n if (!this._store.onEdit)\n throw new Error(\"Runtime does not support editing messages.\");\n await this._store.onEdit(message);\n } else {\n await this._store.onNew(message);\n }\n }\n\n public async startRun(config: StartRunConfig): Promise<void> {\n if (!this._store.onReload)\n throw new Error(\"Runtime does not support reloading messages.\");\n\n await this._store.onReload(config.parentId, config);\n }\n\n public async resumeRun(): Promise<void> {\n throw new Error(\"Runtime does not support resuming runs.\");\n }\n\n public cancelRun(): void {\n if (!this._store.onCancel)\n throw new Error(\"Runtime does not support cancelling runs.\");\n\n this._store.onCancel();\n\n if (this.assistantOptimisticId) {\n this.repository.deleteMessage(this.assistantOptimisticId);\n this.assistantOptimisticId = null;\n }\n\n let messages = this.repository.getMessages();\n const previousMessage = messages[messages.length - 1];\n if (\n previousMessage?.role === \"user\" &&\n previousMessage.id === messages.at(-1)?.id // ensure the previous message is a leaf node\n ) {\n this.repository.deleteMessage(previousMessage.id);\n if (!this.composer.text.trim()) {\n this.composer.setText(getThreadMessageText(previousMessage));\n }\n\n messages = this.repository.getMessages();\n } else {\n this._notifySubscribers();\n }\n\n // resync messages (for reloading, to restore the previous branch)\n setTimeout(() => {\n this.updateMessages(messages);\n }, 0);\n }\n\n public addToolResult(options: AddToolResultOptions) {\n if (!this._store.onAddToolResult)\n throw new Error(\"Runtime does not support tool results.\");\n this._store.onAddToolResult(options);\n }\n\n private updateMessages = (messages: readonly ThreadMessage[]) => {\n const hasConverter = this._store.convertMessage !== undefined;\n if (hasConverter) {\n this._store.setMessages?.(\n messages.flatMap(getExternalStoreMessage).filter((m) => m != null),\n );\n } else {\n // TODO mark this as readonly in v0.8.0\n this._store.setMessages?.(messages as ThreadMessage[]);\n }\n };\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx"],"sourcesContent":["import {\n AddToolResultOptions,\n StartRunConfig,\n ThreadSuggestion,\n} from \"../core/ThreadRuntimeCore\";\n\nimport { AppendMessage, ThreadMessage } from \"../../types\";\nimport { ExternalStoreAdapter } from \"./ExternalStoreAdapter\";\nimport {\n getExternalStoreMessage,\n symbolInnerMessage,\n} from \"./getExternalStoreMessage\";\nimport { ThreadMessageConverter } from \"./ThreadMessageConverter\";\nimport { getAutoStatus, isAutoStatus } from \"./auto-status\";\nimport { fromThreadMessageLike } from \"./ThreadMessageLike\";\nimport { getThreadMessageText } from \"../../utils/getThreadMessageText\";\nimport {\n RuntimeCapabilities,\n ThreadRuntimeCore,\n} from \"../core/ThreadRuntimeCore\";\nimport { BaseThreadRuntimeCore } from \"../core/BaseThreadRuntimeCore\";\nimport { ModelContextProvider } from \"../../model-context\";\n\nconst EMPTY_ARRAY = Object.freeze([]);\n\nexport const hasUpcomingMessage = (\n isRunning: boolean,\n messages: readonly ThreadMessage[],\n) => {\n return isRunning && messages[messages.length - 1]?.role !== \"assistant\";\n};\n\nexport class ExternalStoreThreadRuntimeCore\n extends BaseThreadRuntimeCore\n implements ThreadRuntimeCore\n{\n private assistantOptimisticId: string | null = null;\n\n private _capabilities: RuntimeCapabilities = {\n switchToBranch: false,\n edit: false,\n reload: false,\n cancel: false,\n unstable_copy: false,\n speech: false,\n attachments: false,\n feedback: false,\n };\n\n public get capabilities() {\n return this._capabilities;\n }\n\n private _messages!: readonly ThreadMessage[];\n public isDisabled!: boolean;\n\n public override get messages() {\n return this._messages;\n }\n\n public get adapters() {\n return this._store.adapters;\n }\n\n public suggestions: readonly ThreadSuggestion[] = [];\n public extras: unknown = undefined;\n\n private _converter = new ThreadMessageConverter();\n\n private _store!: ExternalStoreAdapter<any>;\n\n public override beginEdit(messageId: string) {\n if (!this._store.onEdit)\n throw new Error(\"Runtime does not support editing.\");\n\n super.beginEdit(messageId);\n }\n\n constructor(\n contextProvider: ModelContextProvider,\n store: ExternalStoreAdapter<any>,\n ) {\n super(contextProvider);\n this.__internal_setAdapter(store);\n }\n\n public __internal_setAdapter(store: ExternalStoreAdapter<any>) {\n if (this._store === store) return;\n\n const isRunning = store.isRunning ?? false;\n this.isDisabled = store.isDisabled ?? false;\n\n const oldStore = this._store as ExternalStoreAdapter<any> | undefined;\n this._store = store;\n this.extras = store.extras;\n this.suggestions = store.suggestions ?? EMPTY_ARRAY;\n this._capabilities = {\n switchToBranch: this._store.setMessages !== undefined,\n edit: this._store.onEdit !== undefined,\n reload: this._store.onReload !== undefined,\n cancel: this._store.onCancel !== undefined,\n speech: this._store.adapters?.speech !== undefined,\n unstable_copy: this._store.unstable_capabilities?.copy !== false, // default true\n attachments: !!this._store.adapters?.attachments,\n feedback: !!this._store.adapters?.feedback,\n };\n\n if (oldStore) {\n // flush the converter cache when the convertMessage prop changes\n if (oldStore.convertMessage !== store.convertMessage) {\n this._converter = new ThreadMessageConverter();\n } else if (\n oldStore.isRunning === store.isRunning &&\n oldStore.messages === store.messages\n ) {\n this._notifySubscribers();\n // no conversion update\n return;\n }\n }\n\n const messages = !store.convertMessage\n ? store.messages\n : this._converter.convertMessages(store.messages, (cache, m, idx) => {\n if (!store.convertMessage) return m;\n\n const isLast = idx === store.messages.length - 1;\n const autoStatus = getAutoStatus(isLast, isRunning);\n\n if (\n cache &&\n (cache.role !== \"assistant\" ||\n !isAutoStatus(cache.status) ||\n cache.status === autoStatus)\n )\n return cache;\n\n const messageLike = store.convertMessage(m, idx);\n const newMessage = fromThreadMessageLike(\n messageLike,\n idx.toString(),\n autoStatus,\n );\n (newMessage as any)[symbolInnerMessage] = m;\n return newMessage;\n });\n\n if (messages.length > 0) this.ensureInitialized();\n\n if (oldStore?.isRunning ?? false !== store.isRunning ?? false) {\n if (store.isRunning) {\n this._notifyEventSubscribers(\"run-start\");\n } else {\n this._notifyEventSubscribers(\"run-end\");\n }\n }\n\n for (let i = 0; i < messages.length; i++) {\n const message = messages[i]!;\n const parent = messages[i - 1];\n this.repository.addOrUpdateMessage(parent?.id ?? null, message);\n }\n\n if (this.assistantOptimisticId) {\n this.repository.deleteMessage(this.assistantOptimisticId);\n this.assistantOptimisticId = null;\n }\n\n if (hasUpcomingMessage(isRunning, messages)) {\n this.assistantOptimisticId = this.repository.appendOptimisticMessage(\n messages.at(-1)?.id ?? null,\n {\n role: \"assistant\",\n content: [],\n },\n );\n }\n\n this.repository.resetHead(\n this.assistantOptimisticId ?? messages.at(-1)?.id ?? null,\n );\n\n this._messages = this.repository.getMessages();\n this._notifySubscribers();\n }\n\n public override switchToBranch(branchId: string): void {\n if (!this._store.setMessages)\n throw new Error(\"Runtime does not support switching branches.\");\n\n this.repository.switchToBranch(branchId);\n this.updateMessages(this.repository.getMessages());\n }\n\n public async append(message: AppendMessage): Promise<void> {\n if (message.parentId !== (this.messages.at(-1)?.id ?? null)) {\n if (!this._store.onEdit)\n throw new Error(\"Runtime does not support editing messages.\");\n await this._store.onEdit(message);\n } else {\n await this._store.onNew(message);\n }\n }\n\n public async startRun(config: StartRunConfig): Promise<void> {\n if (!this._store.onReload)\n throw new Error(\"Runtime does not support reloading messages.\");\n\n await this._store.onReload(config.parentId, config);\n }\n\n public async resumeRun(): Promise<void> {\n throw new Error(\"Runtime does not support resuming runs.\");\n }\n\n public cancelRun(): void {\n if (!this._store.onCancel)\n throw new Error(\"Runtime does not support cancelling runs.\");\n\n this._store.onCancel();\n\n if (this.assistantOptimisticId) {\n this.repository.deleteMessage(this.assistantOptimisticId);\n this.assistantOptimisticId = null;\n }\n\n let messages = this.repository.getMessages();\n const previousMessage = messages[messages.length - 1];\n if (\n previousMessage?.role === \"user\" &&\n previousMessage.id === messages.at(-1)?.id // ensure the previous message is a leaf node\n ) {\n this.repository.deleteMessage(previousMessage.id);\n if (!this.composer.text.trim()) {\n this.composer.setText(getThreadMessageText(previousMessage));\n }\n\n messages = this.repository.getMessages();\n } else {\n this._notifySubscribers();\n }\n\n // resync messages (for reloading, to restore the previous branch)\n setTimeout(() => {\n this.updateMessages(messages);\n }, 0);\n }\n\n public addToolResult(options: AddToolResultOptions) {\n if (!this._store.onAddToolResult)\n throw new Error(\"Runtime does not support tool results.\");\n this._store.onAddToolResult(options);\n }\n\n private updateMessages = (messages: readonly ThreadMessage[]) => {\n const hasConverter = this._store.convertMessage !== undefined;\n if (hasConverter) {\n this._store.setMessages?.(\n messages.flatMap(getExternalStoreMessage).filter((m) => m != null),\n );\n } else {\n // TODO mark this as readonly in v0.8.0\n this._store.setMessages?.(messages as ThreadMessage[]);\n }\n };\n}\n"],"mappings":"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","names":[]}
@@ -1,29 +1,4 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/runtimes/external-store/ThreadMessageConverter.ts
21
- var ThreadMessageConverter_exports = {};
22
- __export(ThreadMessageConverter_exports, {
23
- ThreadMessageConverter: () => ThreadMessageConverter
24
- });
25
- module.exports = __toCommonJS(ThreadMessageConverter_exports);
26
- var ThreadMessageConverter = class {
1
+ class ThreadMessageConverter {
27
2
  cache = /* @__PURE__ */ new WeakMap();
28
3
  convertMessages(messages, converter) {
29
4
  return messages.map((m, idx) => {
@@ -33,9 +8,8 @@ var ThreadMessageConverter = class {
33
8
  return newMessage;
34
9
  });
35
10
  }
36
- };
37
- // Annotate the CommonJS export names for ESM import in node:
38
- 0 && (module.exports = {
11
+ }
12
+ export {
39
13
  ThreadMessageConverter
40
- });
14
+ };
41
15
  //# sourceMappingURL=ThreadMessageConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/external-store/ThreadMessageConverter.ts"],"sourcesContent":["import { ThreadMessage } from \"../../types\";\n\nexport type ConverterCallback<TIn> = (\n cache: ThreadMessage | undefined,\n message: TIn,\n idx: number,\n) => ThreadMessage;\n\nexport class ThreadMessageConverter {\n private readonly cache = new WeakMap<WeakKey, ThreadMessage>();\n\n convertMessages<TIn extends WeakKey>(\n messages: readonly TIn[],\n converter: ConverterCallback<TIn>,\n ): ThreadMessage[] {\n return messages.map((m, idx) => {\n const cached = this.cache.get(m);\n const newMessage = converter(cached, m, idx);\n this.cache.set(m, newMessage);\n return newMessage;\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQO,IAAM,yBAAN,MAA6B;AAAA,EACjB,QAAQ,oBAAI,QAAgC;AAAA,EAE7D,gBACE,UACA,WACiB;AACjB,WAAO,SAAS,IAAI,CAAC,GAAG,QAAQ;AAC9B,YAAM,SAAS,KAAK,MAAM,IAAI,CAAC;AAC/B,YAAM,aAAa,UAAU,QAAQ,GAAG,GAAG;AAC3C,WAAK,MAAM,IAAI,GAAG,UAAU;AAC5B,aAAO;AAAA,IACT,CAAC;AAAA,EACH;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/external-store/ThreadMessageConverter.ts"],"sourcesContent":["import { ThreadMessage } from \"../../types\";\n\nexport type ConverterCallback<TIn> = (\n cache: ThreadMessage | undefined,\n message: TIn,\n idx: number,\n) => ThreadMessage;\n\nexport class ThreadMessageConverter {\n private readonly cache = new WeakMap<WeakKey, ThreadMessage>();\n\n convertMessages<TIn extends WeakKey>(\n messages: readonly TIn[],\n converter: ConverterCallback<TIn>,\n ): ThreadMessage[] {\n return messages.map((m, idx) => {\n const cached = this.cache.get(m);\n const newMessage = converter(cached, m, idx);\n this.cache.set(m, newMessage);\n return newMessage;\n });\n }\n}\n"],"mappings":"AAQO,MAAM,uBAAuB;AAAA,EACjB,QAAQ,oBAAI,QAAgC;AAAA,EAE7D,gBACE,UACA,WACiB;AACjB,WAAO,SAAS,IAAI,CAAC,GAAG,QAAQ;AAC9B,YAAM,SAAS,KAAK,MAAM,IAAI,CAAC;AAC/B,YAAM,aAAa,UAAU,QAAQ,GAAG,GAAG;AAC3C,WAAK,MAAM,IAAI,GAAG,UAAU;AAC5B,aAAO;AAAA,IACT,CAAC;AAAA,EACH;AACF;","names":[]}
@@ -1,31 +1,6 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/runtimes/external-store/ThreadMessageLike.tsx
21
- var ThreadMessageLike_exports = {};
22
- __export(ThreadMessageLike_exports, {
23
- fromThreadMessageLike: () => fromThreadMessageLike
24
- });
25
- module.exports = __toCommonJS(ThreadMessageLike_exports);
26
- var import_utils = require("assistant-stream/utils");
27
- var import_internal = require("../../internal.js");
28
- var fromThreadMessageLike = (like, fallbackId, fallbackStatus) => {
1
+ import { parsePartialJsonObject } from "assistant-stream/utils";
2
+ import { generateId } from "../../internal";
3
+ const fromThreadMessageLike = (like, fallbackId, fallbackStatus) => {
29
4
  const { role, id, createdAt, attachments, status, metadata } = like;
30
5
  const common = {
31
6
  id: id ?? fallbackId,
@@ -57,15 +32,15 @@ var fromThreadMessageLike = (like, fallbackId, fallbackStatus) => {
57
32
  if (part.args) {
58
33
  return {
59
34
  ...part,
60
- toolCallId: part.toolCallId ?? "tool-" + (0, import_internal.generateId)(),
35
+ toolCallId: part.toolCallId ?? "tool-" + generateId(),
61
36
  args: part.args,
62
37
  argsText: JSON.stringify(part.args)
63
38
  };
64
39
  }
65
40
  return {
66
41
  ...part,
67
- toolCallId: part.toolCallId ?? "tool-" + (0, import_internal.generateId)(),
68
- args: part.args ?? (0, import_utils.parsePartialJsonObject)(part.argsText ?? "") ?? {},
42
+ toolCallId: part.toolCallId ?? "tool-" + generateId(),
43
+ args: part.args ?? parsePartialJsonObject(part.argsText ?? "") ?? {},
69
44
  argsText: part.argsText ?? ""
70
45
  };
71
46
  }
@@ -129,8 +104,7 @@ var fromThreadMessageLike = (like, fallbackId, fallbackStatus) => {
129
104
  }
130
105
  }
131
106
  };
132
- // Annotate the CommonJS export names for ESM import in node:
133
- 0 && (module.exports = {
107
+ export {
134
108
  fromThreadMessageLike
135
- });
109
+ };
136
110
  //# sourceMappingURL=ThreadMessageLike.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/external-store/ThreadMessageLike.tsx"],"sourcesContent":["import { parsePartialJsonObject } from \"assistant-stream/utils\";\nimport { generateId } from \"../../internal\";\nimport {\n MessageStatus,\n TextContentPart,\n ImageContentPart,\n ThreadMessage,\n ThreadAssistantContentPart,\n ThreadAssistantMessage,\n ThreadUserContentPart,\n ThreadUserMessage,\n ThreadSystemMessage,\n CompleteAttachment,\n FileContentPart,\n Unstable_AudioContentPart,\n} from \"../../types\";\nimport {\n ReasoningContentPart,\n SourceContentPart,\n ThreadStep,\n} from \"../../types/AssistantTypes\";\nimport {\n ReadonlyJSONObject,\n ReadonlyJSONValue,\n} from \"../../utils/json/json-value\";\n\nexport type ThreadMessageLike = {\n readonly role: \"assistant\" | \"user\" | \"system\";\n readonly content:\n | string\n | readonly (\n | TextContentPart\n | ReasoningContentPart\n | SourceContentPart\n | ImageContentPart\n | FileContentPart\n | Unstable_AudioContentPart\n | {\n readonly type: \"tool-call\";\n readonly toolCallId?: string;\n readonly toolName: string;\n readonly args?: ReadonlyJSONObject;\n readonly argsText?: string;\n readonly artifact?: any;\n readonly result?: any | undefined;\n readonly isError?: boolean | undefined;\n }\n )[];\n readonly id?: string | undefined;\n readonly createdAt?: Date | undefined;\n readonly status?: MessageStatus | undefined;\n readonly attachments?: readonly CompleteAttachment[] | undefined;\n readonly metadata?:\n | {\n readonly unstable_annotations?:\n | readonly ReadonlyJSONValue[]\n | undefined;\n readonly unstable_data?: readonly ReadonlyJSONValue[] | undefined;\n readonly steps?: readonly ThreadStep[] | undefined;\n readonly custom?: Record<string, unknown> | undefined;\n }\n | undefined;\n};\n\nexport const fromThreadMessageLike = (\n like: ThreadMessageLike,\n fallbackId: string,\n fallbackStatus: MessageStatus,\n): ThreadMessage => {\n const { role, id, createdAt, attachments, status, metadata } = like;\n const common = {\n id: id ?? fallbackId,\n createdAt: createdAt ?? new Date(),\n };\n\n const content =\n typeof like.content === \"string\"\n ? [{ type: \"text\" as const, text: like.content }]\n : like.content;\n\n if (role !== \"user\" && attachments?.length)\n throw new Error(\"attachments are only supported for user messages\");\n\n if (role !== \"assistant\" && status)\n throw new Error(\"status is only supported for assistant messages\");\n\n if (role !== \"assistant\" && metadata?.steps)\n throw new Error(\"metadata.steps is only supported for assistant messages\");\n\n switch (role) {\n case \"assistant\":\n return {\n ...common,\n role,\n content: content\n .map((part): ThreadAssistantContentPart | null => {\n const type = part.type;\n switch (type) {\n case \"text\":\n case \"reasoning\":\n if (part.text.trim().length === 0) return null;\n return part;\n\n case \"file\":\n case \"source\":\n return part;\n\n case \"tool-call\": {\n if (part.args) {\n return {\n ...part,\n toolCallId: part.toolCallId ?? \"tool-\" + generateId(),\n args: part.args,\n argsText: JSON.stringify(part.args),\n };\n }\n return {\n ...part,\n toolCallId: part.toolCallId ?? \"tool-\" + generateId(),\n args:\n part.args ??\n parsePartialJsonObject(part.argsText ?? \"\") ??\n {},\n argsText: part.argsText ?? \"\",\n };\n }\n\n default: {\n const unhandledType: \"image\" | \"audio\" = type;\n throw new Error(\n `Unsupported assistant content part type: ${unhandledType}`,\n );\n }\n }\n })\n .filter((c) => !!c),\n status: status ?? fallbackStatus,\n metadata: {\n unstable_annotations: metadata?.unstable_annotations ?? [],\n unstable_data: metadata?.unstable_data ?? [],\n custom: metadata?.custom ?? {},\n steps: metadata?.steps ?? [],\n },\n } satisfies ThreadAssistantMessage;\n\n case \"user\":\n return {\n ...common,\n role,\n content: content.map((part): ThreadUserContentPart => {\n const type = part.type;\n switch (type) {\n case \"text\":\n case \"image\":\n case \"audio\":\n case \"file\":\n return part;\n\n default: {\n const unhandledType: \"tool-call\" | \"reasoning\" | \"source\" = type;\n throw new Error(\n `Unsupported user content part type: ${unhandledType}`,\n );\n }\n }\n }),\n attachments: attachments ?? [],\n metadata: {\n custom: metadata?.custom ?? {},\n },\n } satisfies ThreadUserMessage;\n\n case \"system\":\n if (content.length !== 1 || content[0]!.type !== \"text\")\n throw new Error(\n \"System messages must have exactly one text content part.\",\n );\n\n return {\n ...common,\n role,\n content: content as [TextContentPart],\n metadata: {\n custom: metadata?.custom ?? {},\n },\n } satisfies ThreadSystemMessage;\n\n default: {\n const unsupportedRole: never = role;\n throw new Error(`Unknown message role: ${unsupportedRole}`);\n }\n }\n};\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/external-store/ThreadMessageLike.tsx"],"sourcesContent":["import { parsePartialJsonObject } from \"assistant-stream/utils\";\nimport { generateId } from \"../../internal\";\nimport {\n MessageStatus,\n TextContentPart,\n ImageContentPart,\n ThreadMessage,\n ThreadAssistantContentPart,\n ThreadAssistantMessage,\n ThreadUserContentPart,\n ThreadUserMessage,\n ThreadSystemMessage,\n CompleteAttachment,\n FileContentPart,\n Unstable_AudioContentPart,\n} from \"../../types\";\nimport {\n ReasoningContentPart,\n SourceContentPart,\n ThreadStep,\n} from \"../../types/AssistantTypes\";\nimport {\n ReadonlyJSONObject,\n ReadonlyJSONValue,\n} from \"../../utils/json/json-value\";\n\nexport type ThreadMessageLike = {\n readonly role: \"assistant\" | \"user\" | \"system\";\n readonly content:\n | string\n | readonly (\n | TextContentPart\n | ReasoningContentPart\n | SourceContentPart\n | ImageContentPart\n | FileContentPart\n | Unstable_AudioContentPart\n | {\n readonly type: \"tool-call\";\n readonly toolCallId?: string;\n readonly toolName: string;\n readonly args?: ReadonlyJSONObject;\n readonly argsText?: string;\n readonly artifact?: any;\n readonly result?: any | undefined;\n readonly isError?: boolean | undefined;\n }\n )[];\n readonly id?: string | undefined;\n readonly createdAt?: Date | undefined;\n readonly status?: MessageStatus | undefined;\n readonly attachments?: readonly CompleteAttachment[] | undefined;\n readonly metadata?:\n | {\n readonly unstable_annotations?:\n | readonly ReadonlyJSONValue[]\n | undefined;\n readonly unstable_data?: readonly ReadonlyJSONValue[] | undefined;\n readonly steps?: readonly ThreadStep[] | undefined;\n readonly custom?: Record<string, unknown> | undefined;\n }\n | undefined;\n};\n\nexport const fromThreadMessageLike = (\n like: ThreadMessageLike,\n fallbackId: string,\n fallbackStatus: MessageStatus,\n): ThreadMessage => {\n const { role, id, createdAt, attachments, status, metadata } = like;\n const common = {\n id: id ?? fallbackId,\n createdAt: createdAt ?? new Date(),\n };\n\n const content =\n typeof like.content === \"string\"\n ? [{ type: \"text\" as const, text: like.content }]\n : like.content;\n\n if (role !== \"user\" && attachments?.length)\n throw new Error(\"attachments are only supported for user messages\");\n\n if (role !== \"assistant\" && status)\n throw new Error(\"status is only supported for assistant messages\");\n\n if (role !== \"assistant\" && metadata?.steps)\n throw new Error(\"metadata.steps is only supported for assistant messages\");\n\n switch (role) {\n case \"assistant\":\n return {\n ...common,\n role,\n content: content\n .map((part): ThreadAssistantContentPart | null => {\n const type = part.type;\n switch (type) {\n case \"text\":\n case \"reasoning\":\n if (part.text.trim().length === 0) return null;\n return part;\n\n case \"file\":\n case \"source\":\n return part;\n\n case \"tool-call\": {\n if (part.args) {\n return {\n ...part,\n toolCallId: part.toolCallId ?? \"tool-\" + generateId(),\n args: part.args,\n argsText: JSON.stringify(part.args),\n };\n }\n return {\n ...part,\n toolCallId: part.toolCallId ?? \"tool-\" + generateId(),\n args:\n part.args ??\n parsePartialJsonObject(part.argsText ?? \"\") ??\n {},\n argsText: part.argsText ?? \"\",\n };\n }\n\n default: {\n const unhandledType: \"image\" | \"audio\" = type;\n throw new Error(\n `Unsupported assistant content part type: ${unhandledType}`,\n );\n }\n }\n })\n .filter((c) => !!c),\n status: status ?? fallbackStatus,\n metadata: {\n unstable_annotations: metadata?.unstable_annotations ?? [],\n unstable_data: metadata?.unstable_data ?? [],\n custom: metadata?.custom ?? {},\n steps: metadata?.steps ?? [],\n },\n } satisfies ThreadAssistantMessage;\n\n case \"user\":\n return {\n ...common,\n role,\n content: content.map((part): ThreadUserContentPart => {\n const type = part.type;\n switch (type) {\n case \"text\":\n case \"image\":\n case \"audio\":\n case \"file\":\n return part;\n\n default: {\n const unhandledType: \"tool-call\" | \"reasoning\" | \"source\" = type;\n throw new Error(\n `Unsupported user content part type: ${unhandledType}`,\n );\n }\n }\n }),\n attachments: attachments ?? [],\n metadata: {\n custom: metadata?.custom ?? {},\n },\n } satisfies ThreadUserMessage;\n\n case \"system\":\n if (content.length !== 1 || content[0]!.type !== \"text\")\n throw new Error(\n \"System messages must have exactly one text content part.\",\n );\n\n return {\n ...common,\n role,\n content: content as [TextContentPart],\n metadata: {\n custom: metadata?.custom ?? {},\n },\n } satisfies ThreadSystemMessage;\n\n default: {\n const unsupportedRole: never = role;\n throw new Error(`Unknown message role: ${unsupportedRole}`);\n }\n }\n};\n"],"mappings":"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","names":[]}
@@ -1,39 +1,12 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/runtimes/external-store/auto-status.tsx
21
- var auto_status_exports = {};
22
- __export(auto_status_exports, {
23
- getAutoStatus: () => getAutoStatus,
24
- isAutoStatus: () => isAutoStatus
25
- });
26
- module.exports = __toCommonJS(auto_status_exports);
27
- var AUTO_STATUS_RUNNING = Object.freeze({ type: "running" });
28
- var AUTO_STATUS_COMPLETE = Object.freeze({
1
+ const AUTO_STATUS_RUNNING = Object.freeze({ type: "running" });
2
+ const AUTO_STATUS_COMPLETE = Object.freeze({
29
3
  type: "complete",
30
4
  reason: "unknown"
31
5
  });
32
- var isAutoStatus = (status) => status === AUTO_STATUS_RUNNING || status === AUTO_STATUS_COMPLETE;
33
- var getAutoStatus = (isLast, isRunning) => isLast && isRunning ? AUTO_STATUS_RUNNING : AUTO_STATUS_COMPLETE;
34
- // Annotate the CommonJS export names for ESM import in node:
35
- 0 && (module.exports = {
6
+ const isAutoStatus = (status) => status === AUTO_STATUS_RUNNING || status === AUTO_STATUS_COMPLETE;
7
+ const getAutoStatus = (isLast, isRunning) => isLast && isRunning ? AUTO_STATUS_RUNNING : AUTO_STATUS_COMPLETE;
8
+ export {
36
9
  getAutoStatus,
37
10
  isAutoStatus
38
- });
11
+ };
39
12
  //# sourceMappingURL=auto-status.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/external-store/auto-status.tsx"],"sourcesContent":["import { MessageStatus } from \"../../types\";\n\nconst AUTO_STATUS_RUNNING = Object.freeze({ type: \"running\" });\nconst AUTO_STATUS_COMPLETE = Object.freeze({\n type: \"complete\",\n reason: \"unknown\",\n});\n\nexport const isAutoStatus = (status: MessageStatus) =>\n status === AUTO_STATUS_RUNNING || status === AUTO_STATUS_COMPLETE;\n\nexport const getAutoStatus = (isLast: boolean, isRunning: boolean) =>\n isLast && isRunning ? AUTO_STATUS_RUNNING : AUTO_STATUS_COMPLETE;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,IAAM,sBAAsB,OAAO,OAAO,EAAE,MAAM,UAAU,CAAC;AAC7D,IAAM,uBAAuB,OAAO,OAAO;AAAA,EACzC,MAAM;AAAA,EACN,QAAQ;AACV,CAAC;AAEM,IAAM,eAAe,CAAC,WAC3B,WAAW,uBAAuB,WAAW;AAExC,IAAM,gBAAgB,CAAC,QAAiB,cAC7C,UAAU,YAAY,sBAAsB;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/external-store/auto-status.tsx"],"sourcesContent":["import { MessageStatus } from \"../../types\";\n\nconst AUTO_STATUS_RUNNING = Object.freeze({ type: \"running\" });\nconst AUTO_STATUS_COMPLETE = Object.freeze({\n type: \"complete\",\n reason: \"unknown\",\n});\n\nexport const isAutoStatus = (status: MessageStatus) =>\n status === AUTO_STATUS_RUNNING || status === AUTO_STATUS_COMPLETE;\n\nexport const getAutoStatus = (isLast: boolean, isRunning: boolean) =>\n isLast && isRunning ? AUTO_STATUS_RUNNING : AUTO_STATUS_COMPLETE;\n"],"mappings":"AAEA,MAAM,sBAAsB,OAAO,OAAO,EAAE,MAAM,UAAU,CAAC;AAC7D,MAAM,uBAAuB,OAAO,OAAO;AAAA,EACzC,MAAM;AAAA,EACN,QAAQ;AACV,CAAC;AAEM,MAAM,eAAe,CAAC,WAC3B,WAAW,uBAAuB,WAAW;AAExC,MAAM,gBAAgB,CAAC,QAAiB,cAC7C,UAAU,YAAY,sBAAsB;","names":[]}
@@ -2,7 +2,11 @@ import { ThreadState } from "../../api";
2
2
  import { ThreadMessage } from "../../types";
3
3
  import { useExternalMessageConverter } from "./external-message-converter";
4
4
  export declare const createMessageConverter: <T extends object>(callback: useExternalMessageConverter.Callback<T>) => {
5
- useThreadMessages: (messages: T[], isRunning: boolean) => ThreadMessage[];
5
+ useThreadMessages: ({ messages, isRunning, joinStrategy, }: {
6
+ messages: T[];
7
+ isRunning: boolean;
8
+ joinStrategy?: "concat-content" | "none" | undefined;
9
+ }) => ThreadMessage[];
6
10
  toThreadMessages: (messages: T[]) => ThreadMessage[];
7
11
  toOriginalMessages: (input: ThreadState | ThreadMessage | ThreadMessage["content"][number]) => unknown[];
8
12
  toOriginalMessage: (input: ThreadState | ThreadMessage | ThreadMessage["content"][number]) => {};
@@ -1 +1 @@
1
- {"version":3,"file":"createMessageConverter.d.ts","sourceRoot":"","sources":["../../../src/runtimes/external-store/createMessageConverter.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,2BAA2B,EAE5B,MAAM,8BAA8B,CAAC;AAGtC,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,MAAM,EACrD,UAAU,2BAA2B,CAAC,QAAQ,CAAC,CAAC,CAAC;kCAGjB,CAAC,EAAE,aAAa,OAAO;iCAOxB,CAAC,EAAE;gCAIvB,WAAW,GAAG,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;+BAO9D,WAAW,GAAG,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;;;CAwB1E,CAAC"}
1
+ {"version":3,"file":"createMessageConverter.d.ts","sourceRoot":"","sources":["../../../src/runtimes/external-store/createMessageConverter.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EACL,2BAA2B,EAE5B,MAAM,8BAA8B,CAAC;AAGtC,eAAO,MAAM,sBAAsB,GAAI,CAAC,SAAS,MAAM,EACrD,UAAU,2BAA2B,CAAC,QAAQ,CAAC,CAAC,CAAC;gEAO5C;QACD,QAAQ,EAAE,CAAC,EAAE,CAAC;QACd,SAAS,EAAE,OAAO,CAAC;QACnB,YAAY,CAAC,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAAC;KACtD;iCAQ4B,CAAC,EAAE;gCAIvB,WAAW,GAAG,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;+BAO9D,WAAW,GAAG,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;;;CAwB1E,CAAC"}
@@ -1,46 +1,29 @@
1
- "use strict";
2
1
  "use client";
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
-
21
- // src/runtimes/external-store/createMessageConverter.tsx
22
- var createMessageConverter_exports = {};
23
- __export(createMessageConverter_exports, {
24
- createMessageConverter: () => createMessageConverter
25
- });
26
- module.exports = __toCommonJS(createMessageConverter_exports);
27
- var import_context = require("../../context/index.js");
28
- var import_external_message_converter = require("./external-message-converter.js");
29
- var import_getExternalStoreMessage = require("./getExternalStoreMessage.js");
30
- var createMessageConverter = (callback) => {
2
+ import { useContentPart, useMessage } from "../../context";
3
+ import {
4
+ useExternalMessageConverter,
5
+ convertExternalMessages
6
+ } from "./external-message-converter";
7
+ import { getExternalStoreMessages } from "./getExternalStoreMessage";
8
+ const createMessageConverter = (callback) => {
31
9
  const result = {
32
- useThreadMessages: (messages, isRunning) => {
33
- return (0, import_external_message_converter.useExternalMessageConverter)({
10
+ useThreadMessages: ({
11
+ messages,
12
+ isRunning,
13
+ joinStrategy
14
+ }) => {
15
+ return useExternalMessageConverter({
34
16
  callback,
35
17
  messages,
36
- isRunning
18
+ isRunning,
19
+ joinStrategy
37
20
  });
38
21
  },
39
22
  toThreadMessages: (messages) => {
40
- return (0, import_external_message_converter.convertExternalMessages)(messages, callback, false);
23
+ return convertExternalMessages(messages, callback, false);
41
24
  },
42
25
  toOriginalMessages: (input) => {
43
- const messages = (0, import_getExternalStoreMessage.getExternalStoreMessages)(input);
26
+ const messages = getExternalStoreMessages(input);
44
27
  if (messages.length === 0) throw new Error("No original messages found");
45
28
  return messages;
46
29
  },
@@ -54,11 +37,11 @@ var createMessageConverter = (callback) => {
54
37
  return first;
55
38
  },
56
39
  useOriginalMessages: () => {
57
- const contentPartMessages = (0, import_context.useContentPart)({
40
+ const contentPartMessages = useContentPart({
58
41
  optional: true,
59
- selector: import_getExternalStoreMessage.getExternalStoreMessages
42
+ selector: getExternalStoreMessages
60
43
  });
61
- const messageMessages = (0, import_context.useMessage)(import_getExternalStoreMessage.getExternalStoreMessages);
44
+ const messageMessages = useMessage(getExternalStoreMessages);
62
45
  const messages = contentPartMessages ?? messageMessages;
63
46
  if (messages.length === 0) throw new Error("No original messages found");
64
47
  return messages;
@@ -66,8 +49,7 @@ var createMessageConverter = (callback) => {
66
49
  };
67
50
  return result;
68
51
  };
69
- // Annotate the CommonJS export names for ESM import in node:
70
- 0 && (module.exports = {
52
+ export {
71
53
  createMessageConverter
72
- });
54
+ };
73
55
  //# sourceMappingURL=createMessageConverter.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/external-store/createMessageConverter.tsx"],"sourcesContent":["\"use client\";\nimport { ThreadState } from \"../../api\";\nimport { useContentPart, useMessage } from \"../../context\";\nimport { ThreadMessage } from \"../../types\";\nimport {\n useExternalMessageConverter,\n convertExternalMessages,\n} from \"./external-message-converter\";\nimport { getExternalStoreMessages } from \"./getExternalStoreMessage\";\n\nexport const createMessageConverter = <T extends object>(\n callback: useExternalMessageConverter.Callback<T>,\n) => {\n const result = {\n useThreadMessages: (messages: T[], isRunning: boolean) => {\n return useExternalMessageConverter<T>({\n callback,\n messages,\n isRunning,\n });\n },\n toThreadMessages: (messages: T[]) => {\n return convertExternalMessages(messages, callback, false); // TODO figure out isRunning\n },\n toOriginalMessages: (\n input: ThreadState | ThreadMessage | ThreadMessage[\"content\"][number],\n ) => {\n const messages = getExternalStoreMessages(input);\n if (messages.length === 0) throw new Error(\"No original messages found\");\n return messages;\n },\n toOriginalMessage: (\n input: ThreadState | ThreadMessage | ThreadMessage[\"content\"][number],\n ) => {\n const messages = result.toOriginalMessages(input);\n return messages[0]!;\n },\n useOriginalMessage: () => {\n const messageMessages = result.useOriginalMessages();\n const first = messageMessages[0]!;\n return first;\n },\n useOriginalMessages: () => {\n const contentPartMessages = useContentPart<T[]>({\n optional: true,\n selector: getExternalStoreMessages,\n });\n\n const messageMessages = useMessage<T[]>(getExternalStoreMessages);\n const messages = contentPartMessages ?? messageMessages;\n if (messages.length === 0) throw new Error(\"No original messages found\");\n return messages;\n },\n };\n\n return result;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,qBAA2C;AAE3C,wCAGO;AACP,qCAAyC;AAElC,IAAM,yBAAyB,CACpC,aACG;AACH,QAAM,SAAS;AAAA,IACb,mBAAmB,CAAC,UAAe,cAAuB;AACxD,iBAAO,+DAA+B;AAAA,QACpC;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA,kBAAkB,CAAC,aAAkB;AACnC,iBAAO,2DAAwB,UAAU,UAAU,KAAK;AAAA,IAC1D;AAAA,IACA,oBAAoB,CAClB,UACG;AACH,YAAM,eAAW,yDAAyB,KAAK;AAC/C,UAAI,SAAS,WAAW,EAAG,OAAM,IAAI,MAAM,4BAA4B;AACvE,aAAO;AAAA,IACT;AAAA,IACA,mBAAmB,CACjB,UACG;AACH,YAAM,WAAW,OAAO,mBAAmB,KAAK;AAChD,aAAO,SAAS,CAAC;AAAA,IACnB;AAAA,IACA,oBAAoB,MAAM;AACxB,YAAM,kBAAkB,OAAO,oBAAoB;AACnD,YAAM,QAAQ,gBAAgB,CAAC;AAC/B,aAAO;AAAA,IACT;AAAA,IACA,qBAAqB,MAAM;AACzB,YAAM,0BAAsB,+BAAoB;AAAA,QAC9C,UAAU;AAAA,QACV,UAAU;AAAA,MACZ,CAAC;AAED,YAAM,sBAAkB,2BAAgB,uDAAwB;AAChE,YAAM,WAAW,uBAAuB;AACxC,UAAI,SAAS,WAAW,EAAG,OAAM,IAAI,MAAM,4BAA4B;AACvE,aAAO;AAAA,IACT;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/external-store/createMessageConverter.tsx"],"sourcesContent":["\"use client\";\nimport { ThreadState } from \"../../api\";\nimport { useContentPart, useMessage } from \"../../context\";\nimport { ThreadMessage } from \"../../types\";\nimport {\n useExternalMessageConverter,\n convertExternalMessages,\n} from \"./external-message-converter\";\nimport { getExternalStoreMessages } from \"./getExternalStoreMessage\";\n\nexport const createMessageConverter = <T extends object>(\n callback: useExternalMessageConverter.Callback<T>,\n) => {\n const result = {\n useThreadMessages: ({\n messages,\n isRunning,\n joinStrategy,\n }: {\n messages: T[];\n isRunning: boolean;\n joinStrategy?: \"concat-content\" | \"none\" | undefined;\n }) => {\n return useExternalMessageConverter<T>({\n callback,\n messages,\n isRunning,\n joinStrategy,\n });\n },\n toThreadMessages: (messages: T[]) => {\n return convertExternalMessages(messages, callback, false); // TODO figure out isRunning\n },\n toOriginalMessages: (\n input: ThreadState | ThreadMessage | ThreadMessage[\"content\"][number],\n ) => {\n const messages = getExternalStoreMessages(input);\n if (messages.length === 0) throw new Error(\"No original messages found\");\n return messages;\n },\n toOriginalMessage: (\n input: ThreadState | ThreadMessage | ThreadMessage[\"content\"][number],\n ) => {\n const messages = result.toOriginalMessages(input);\n return messages[0]!;\n },\n useOriginalMessage: () => {\n const messageMessages = result.useOriginalMessages();\n const first = messageMessages[0]!;\n return first;\n },\n useOriginalMessages: () => {\n const contentPartMessages = useContentPart<T[]>({\n optional: true,\n selector: getExternalStoreMessages,\n });\n\n const messageMessages = useMessage<T[]>(getExternalStoreMessages);\n const messages = contentPartMessages ?? messageMessages;\n if (messages.length === 0) throw new Error(\"No original messages found\");\n return messages;\n },\n };\n\n return result;\n};\n"],"mappings":";AAEA,SAAS,gBAAgB,kBAAkB;AAE3C;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,gCAAgC;AAElC,MAAM,yBAAyB,CACpC,aACG;AACH,QAAM,SAAS;AAAA,IACb,mBAAmB,CAAC;AAAA,MAClB;AAAA,MACA;AAAA,MACA;AAAA,IACF,MAIM;AACJ,aAAO,4BAA+B;AAAA,QACpC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA,kBAAkB,CAAC,aAAkB;AACnC,aAAO,wBAAwB,UAAU,UAAU,KAAK;AAAA,IAC1D;AAAA,IACA,oBAAoB,CAClB,UACG;AACH,YAAM,WAAW,yBAAyB,KAAK;AAC/C,UAAI,SAAS,WAAW,EAAG,OAAM,IAAI,MAAM,4BAA4B;AACvE,aAAO;AAAA,IACT;AAAA,IACA,mBAAmB,CACjB,UACG;AACH,YAAM,WAAW,OAAO,mBAAmB,KAAK;AAChD,aAAO,SAAS,CAAC;AAAA,IACnB;AAAA,IACA,oBAAoB,MAAM;AACxB,YAAM,kBAAkB,OAAO,oBAAoB;AACnD,YAAM,QAAQ,gBAAgB,CAAC;AAC/B,aAAO;AAAA,IACT;AAAA,IACA,qBAAqB,MAAM;AACzB,YAAM,sBAAsB,eAAoB;AAAA,QAC9C,UAAU;AAAA,QACV,UAAU;AAAA,MACZ,CAAC;AAED,YAAM,kBAAkB,WAAgB,wBAAwB;AAChE,YAAM,WAAW,uBAAuB;AACxC,UAAI,SAAS,WAAW,EAAG,OAAM,IAAI,MAAM,4BAA4B;AACvE,aAAO;AAAA,IACT;AAAA,EACF;AAEA,SAAO;AACT;","names":[]}
@@ -1,36 +1,13 @@
1
- "use strict";
2
1
  "use client";
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
-
21
- // src/runtimes/external-store/external-message-converter.tsx
22
- var external_message_converter_exports = {};
23
- __export(external_message_converter_exports, {
24
- convertExternalMessages: () => convertExternalMessages,
25
- useExternalMessageConverter: () => useExternalMessageConverter
26
- });
27
- module.exports = __toCommonJS(external_message_converter_exports);
28
- var import_react = require("react");
29
- var import_ThreadMessageConverter = require("./ThreadMessageConverter.js");
30
- var import_getExternalStoreMessage = require("./getExternalStoreMessage.js");
31
- var import_ThreadMessageLike = require("./ThreadMessageLike.js");
32
- var import_auto_status = require("./auto-status.js");
33
- var joinExternalMessages = (messages) => {
2
+ import { useMemo } from "react";
3
+ import { ThreadMessageConverter } from "./ThreadMessageConverter";
4
+ import {
5
+ getExternalStoreMessages,
6
+ symbolInnerMessage
7
+ } from "./getExternalStoreMessage";
8
+ import { fromThreadMessageLike } from "./ThreadMessageLike";
9
+ import { getAutoStatus, isAutoStatus } from "./auto-status";
10
+ const joinExternalMessages = (messages) => {
34
11
  const assistantMessage = {
35
12
  role: "assistant",
36
13
  content: []
@@ -51,8 +28,8 @@ var joinExternalMessages = (messages) => {
51
28
  assistantMessage.content[toolCallIdx] = {
52
29
  ...toolCall,
53
30
  ...{
54
- [import_getExternalStoreMessage.symbolInnerMessage]: [
55
- ...toolCall[import_getExternalStoreMessage.symbolInnerMessage] ?? [],
31
+ [symbolInnerMessage]: [
32
+ ...toolCall[symbolInnerMessage] ?? [],
56
33
  output
57
34
  ]
58
35
  },
@@ -67,7 +44,7 @@ var joinExternalMessages = (messages) => {
67
44
  const role = output.role;
68
45
  const content = (typeof output.content === "string" ? [{ type: "text", text: output.content }] : output.content).map((c) => ({
69
46
  ...c,
70
- ...{ [import_getExternalStoreMessage.symbolInnerMessage]: [output] }
47
+ ...{ [symbolInnerMessage]: [output] }
71
48
  }));
72
49
  switch (role) {
73
50
  case "system":
@@ -126,7 +103,7 @@ var joinExternalMessages = (messages) => {
126
103
  }
127
104
  return assistantMessage;
128
105
  };
129
- var chunkExternalMessages = (callbackResults, joinStrategy) => {
106
+ const chunkExternalMessages = (callbackResults, joinStrategy) => {
130
107
  const results = [];
131
108
  let isAssistant = false;
132
109
  let pendingNone = false;
@@ -162,7 +139,7 @@ var chunkExternalMessages = (callbackResults, joinStrategy) => {
162
139
  flush();
163
140
  return results;
164
141
  };
165
- var convertExternalMessages = (messages, callback, isRunning) => {
142
+ const convertExternalMessages = (messages, callback, isRunning) => {
166
143
  const callbackResults = [];
167
144
  for (const message of messages) {
168
145
  const output = callback(message);
@@ -173,32 +150,32 @@ var convertExternalMessages = (messages, callback, isRunning) => {
173
150
  const chunks = chunkExternalMessages(callbackResults);
174
151
  return chunks.map((message, idx) => {
175
152
  const isLast = idx === chunks.length - 1;
176
- const autoStatus = (0, import_auto_status.getAutoStatus)(isLast, isRunning);
177
- const newMessage = (0, import_ThreadMessageLike.fromThreadMessageLike)(
153
+ const autoStatus = getAutoStatus(isLast, isRunning);
154
+ const newMessage = fromThreadMessageLike(
178
155
  joinExternalMessages(message.outputs),
179
156
  idx.toString(),
180
157
  autoStatus
181
158
  );
182
- newMessage[import_getExternalStoreMessage.symbolInnerMessage] = message.inputs;
159
+ newMessage[symbolInnerMessage] = message.inputs;
183
160
  return newMessage;
184
161
  });
185
162
  };
186
- var useExternalMessageConverter = ({
163
+ const useExternalMessageConverter = ({
187
164
  callback,
188
165
  messages,
189
166
  isRunning,
190
167
  joinStrategy
191
168
  }) => {
192
- const state = (0, import_react.useMemo)(
169
+ const state = useMemo(
193
170
  () => ({
194
171
  callback,
195
172
  callbackCache: /* @__PURE__ */ new WeakMap(),
196
173
  chunkCache: /* @__PURE__ */ new WeakMap(),
197
- converterCache: new import_ThreadMessageConverter.ThreadMessageConverter()
174
+ converterCache: new ThreadMessageConverter()
198
175
  }),
199
176
  [callback]
200
177
  );
201
- return (0, import_react.useMemo)(() => {
178
+ return useMemo(() => {
202
179
  const callbackResults = [];
203
180
  for (const message of messages) {
204
181
  let result = state.callbackCache.get(message);
@@ -225,36 +202,35 @@ var useExternalMessageConverter = ({
225
202
  chunks,
226
203
  (cache, message, idx) => {
227
204
  const isLast = idx === chunks.length - 1;
228
- const autoStatus = (0, import_auto_status.getAutoStatus)(isLast, isRunning);
229
- if (cache && (cache.role !== "assistant" || !(0, import_auto_status.isAutoStatus)(cache.status) || cache.status === autoStatus)) {
230
- const inputs = (0, import_getExternalStoreMessage.getExternalStoreMessages)(cache);
205
+ const autoStatus = getAutoStatus(isLast, isRunning);
206
+ if (cache && (cache.role !== "assistant" || !isAutoStatus(cache.status) || cache.status === autoStatus)) {
207
+ const inputs = getExternalStoreMessages(cache);
231
208
  if (shallowArrayEqual(inputs, message.inputs)) {
232
209
  return cache;
233
210
  }
234
211
  }
235
- const newMessage = (0, import_ThreadMessageLike.fromThreadMessageLike)(
212
+ const newMessage = fromThreadMessageLike(
236
213
  joinExternalMessages(message.outputs),
237
214
  idx.toString(),
238
215
  autoStatus
239
216
  );
240
- newMessage[import_getExternalStoreMessage.symbolInnerMessage] = message.inputs;
217
+ newMessage[symbolInnerMessage] = message.inputs;
241
218
  return newMessage;
242
219
  }
243
220
  );
244
- threadMessages[import_getExternalStoreMessage.symbolInnerMessage] = messages;
221
+ threadMessages[symbolInnerMessage] = messages;
245
222
  return threadMessages;
246
223
  }, [state, messages, isRunning, joinStrategy]);
247
224
  };
248
- var shallowArrayEqual = (a, b) => {
225
+ const shallowArrayEqual = (a, b) => {
249
226
  if (a.length !== b.length) return false;
250
227
  for (let i = 0; i < a.length; i++) {
251
228
  if (a[i] !== b[i]) return false;
252
229
  }
253
230
  return true;
254
231
  };
255
- // Annotate the CommonJS export names for ESM import in node:
256
- 0 && (module.exports = {
232
+ export {
257
233
  convertExternalMessages,
258
234
  useExternalMessageConverter
259
- });
235
+ };
260
236
  //# sourceMappingURL=external-message-converter.js.map