@assistant-ui/react 0.7.53 → 0.7.54

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 (647) hide show
  1. package/dist/api/AssistantRuntime.d.ts +12 -7
  2. package/dist/api/AssistantRuntime.d.ts.map +1 -1
  3. package/dist/api/AssistantRuntime.js +5 -1
  4. package/dist/api/AssistantRuntime.js.map +1 -1
  5. package/dist/api/AssistantRuntime.mjs +5 -1
  6. package/dist/api/AssistantRuntime.mjs.map +1 -1
  7. package/dist/api/ThreadRuntime.d.ts +10 -4
  8. package/dist/api/ThreadRuntime.d.ts.map +1 -1
  9. package/dist/api/ThreadRuntime.js +5 -1
  10. package/dist/api/ThreadRuntime.js.map +1 -1
  11. package/dist/api/ThreadRuntime.mjs +5 -1
  12. package/dist/api/ThreadRuntime.mjs.map +1 -1
  13. package/dist/context/react/ThreadContext.d.ts +5 -5
  14. package/dist/context/react/ThreadContext.d.ts.map +1 -1
  15. package/dist/context/react/ThreadContext.js +5 -5
  16. package/dist/context/react/ThreadContext.js.map +1 -1
  17. package/dist/context/react/ThreadContext.mjs +4 -4
  18. package/dist/context/react/ThreadContext.mjs.map +1 -1
  19. package/dist/context/react/index.d.ts +5 -1
  20. package/dist/context/react/index.d.ts.map +1 -1
  21. package/dist/context/react/index.js +3 -1
  22. package/dist/context/react/index.js.map +1 -1
  23. package/dist/context/react/index.mjs +4 -2
  24. package/dist/context/react/index.mjs.map +1 -1
  25. package/dist/index.d.ts +1 -2
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +2 -4
  28. package/dist/index.js.map +1 -1
  29. package/dist/index.mjs +1 -2
  30. package/dist/index.mjs.map +1 -1
  31. package/dist/internal.d.ts +1 -1
  32. package/dist/internal.d.ts.map +1 -1
  33. package/dist/internal.js +3 -3
  34. package/dist/internal.js.map +1 -1
  35. package/dist/internal.mjs +2 -2
  36. package/dist/internal.mjs.map +1 -1
  37. package/dist/{types/ModelConfigTypes.d.ts → model-context/ModelContextTypes.d.ts} +6 -6
  38. package/dist/model-context/ModelContextTypes.d.ts.map +1 -0
  39. package/dist/{types/ModelConfigTypes.js → model-context/ModelContextTypes.js} +9 -9
  40. package/dist/model-context/ModelContextTypes.js.map +1 -0
  41. package/dist/{types/ModelConfigTypes.mjs → model-context/ModelContextTypes.mjs} +5 -5
  42. package/dist/model-context/ModelContextTypes.mjs.map +1 -0
  43. package/dist/{model-config → model-context}/index.d.ts +9 -0
  44. package/dist/model-context/index.d.ts.map +1 -0
  45. package/dist/{model-config → model-context}/index.js +4 -4
  46. package/dist/model-context/index.js.map +1 -0
  47. package/dist/{model-config → model-context}/index.mjs +1 -1
  48. package/dist/model-context/index.mjs.map +1 -0
  49. package/dist/model-context/makeAssistantTool.d.ts.map +1 -0
  50. package/dist/{model-config → model-context}/makeAssistantTool.js +1 -1
  51. package/dist/model-context/makeAssistantTool.js.map +1 -0
  52. package/dist/{model-config → model-context}/makeAssistantTool.mjs +1 -1
  53. package/dist/model-context/makeAssistantTool.mjs.map +1 -0
  54. package/dist/model-context/makeAssistantToolUI.d.ts.map +1 -0
  55. package/dist/{model-config → model-context}/makeAssistantToolUI.js +1 -1
  56. package/dist/model-context/makeAssistantToolUI.js.map +1 -0
  57. package/dist/{model-config → model-context}/makeAssistantToolUI.mjs +1 -1
  58. package/dist/model-context/makeAssistantToolUI.mjs.map +1 -0
  59. package/dist/model-context/useAssistantInstructions.d.ts.map +1 -0
  60. package/dist/{model-config → model-context}/useAssistantInstructions.js +3 -3
  61. package/dist/model-context/useAssistantInstructions.js.map +1 -0
  62. package/dist/{model-config → model-context}/useAssistantInstructions.mjs +3 -3
  63. package/dist/model-context/useAssistantInstructions.mjs.map +1 -0
  64. package/dist/{model-config → model-context}/useAssistantTool.d.ts +1 -1
  65. package/dist/model-context/useAssistantTool.d.ts.map +1 -0
  66. package/dist/{model-config → model-context}/useAssistantTool.js +4 -4
  67. package/dist/model-context/useAssistantTool.js.map +1 -0
  68. package/dist/{model-config → model-context}/useAssistantTool.mjs +4 -4
  69. package/dist/model-context/useAssistantTool.mjs.map +1 -0
  70. package/dist/model-context/useAssistantToolUI.d.ts.map +1 -0
  71. package/dist/{model-config → model-context}/useAssistantToolUI.js +1 -1
  72. package/dist/model-context/useAssistantToolUI.js.map +1 -0
  73. package/dist/{model-config → model-context}/useAssistantToolUI.mjs +1 -1
  74. package/dist/model-context/useAssistantToolUI.mjs.map +1 -0
  75. package/dist/model-context/useInlineRender.d.ts.map +1 -0
  76. package/dist/{model-config → model-context}/useInlineRender.js +1 -1
  77. package/dist/model-context/useInlineRender.js.map +1 -0
  78. package/dist/{model-config → model-context}/useInlineRender.mjs +1 -1
  79. package/dist/model-context/useInlineRender.mjs.map +1 -0
  80. package/dist/primitives/actionBar/ActionBarCopy.d.ts +8 -3
  81. package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
  82. package/dist/primitives/actionBar/ActionBarCopy.js +24 -2
  83. package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
  84. package/dist/primitives/actionBar/ActionBarCopy.mjs +27 -2
  85. package/dist/primitives/actionBar/ActionBarCopy.mjs.map +1 -1
  86. package/dist/primitives/actionBar/ActionBarEdit.d.ts +2 -1
  87. package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
  88. package/dist/primitives/actionBar/ActionBarEdit.js +12 -2
  89. package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
  90. package/dist/primitives/actionBar/ActionBarEdit.mjs +11 -1
  91. package/dist/primitives/actionBar/ActionBarEdit.mjs.map +1 -1
  92. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts +2 -1
  93. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
  94. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +10 -2
  95. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
  96. package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs +9 -1
  97. package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs.map +1 -1
  98. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts +2 -1
  99. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
  100. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +8 -2
  101. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
  102. package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs +9 -3
  103. package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs.map +1 -1
  104. package/dist/primitives/actionBar/ActionBarReload.d.ts +2 -1
  105. package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
  106. package/dist/primitives/actionBar/ActionBarReload.js +18 -2
  107. package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
  108. package/dist/primitives/actionBar/ActionBarReload.mjs +17 -1
  109. package/dist/primitives/actionBar/ActionBarReload.mjs.map +1 -1
  110. package/dist/primitives/actionBar/ActionBarSpeak.d.ts +2 -1
  111. package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -1
  112. package/dist/primitives/actionBar/ActionBarSpeak.js +14 -2
  113. package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
  114. package/dist/primitives/actionBar/ActionBarSpeak.mjs +13 -1
  115. package/dist/primitives/actionBar/ActionBarSpeak.mjs.map +1 -1
  116. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts +2 -1
  117. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
  118. package/dist/primitives/actionBar/ActionBarStopSpeaking.js +12 -2
  119. package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
  120. package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs +14 -1
  121. package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs.map +1 -1
  122. package/dist/primitives/attachment/AttachmentRemove.d.ts +2 -1
  123. package/dist/primitives/attachment/AttachmentRemove.d.ts.map +1 -1
  124. package/dist/primitives/attachment/AttachmentRemove.js +10 -2
  125. package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
  126. package/dist/primitives/attachment/AttachmentRemove.mjs +9 -1
  127. package/dist/primitives/attachment/AttachmentRemove.mjs.map +1 -1
  128. package/dist/primitives/branchPicker/BranchPickerCount.d.ts.map +1 -1
  129. package/dist/primitives/branchPicker/BranchPickerCount.js +6 -2
  130. package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
  131. package/dist/primitives/branchPicker/BranchPickerCount.mjs +5 -1
  132. package/dist/primitives/branchPicker/BranchPickerCount.mjs.map +1 -1
  133. package/dist/primitives/branchPicker/BranchPickerNext.d.ts +2 -1
  134. package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
  135. package/dist/primitives/branchPicker/BranchPickerNext.js +12 -2
  136. package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
  137. package/dist/primitives/branchPicker/BranchPickerNext.mjs +14 -1
  138. package/dist/primitives/branchPicker/BranchPickerNext.mjs.map +1 -1
  139. package/dist/primitives/branchPicker/BranchPickerNumber.d.ts.map +1 -1
  140. package/dist/primitives/branchPicker/BranchPickerNumber.js +6 -2
  141. package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
  142. package/dist/primitives/branchPicker/BranchPickerNumber.mjs +5 -1
  143. package/dist/primitives/branchPicker/BranchPickerNumber.mjs.map +1 -1
  144. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +2 -1
  145. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
  146. package/dist/primitives/branchPicker/BranchPickerPrevious.js +12 -2
  147. package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
  148. package/dist/primitives/branchPicker/BranchPickerPrevious.mjs +14 -1
  149. package/dist/primitives/branchPicker/BranchPickerPrevious.mjs.map +1 -1
  150. package/dist/primitives/composer/ComposerAddAttachment.d.ts +9 -2
  151. package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
  152. package/dist/primitives/composer/ComposerAddAttachment.js +28 -2
  153. package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
  154. package/dist/primitives/composer/ComposerAddAttachment.mjs +27 -1
  155. package/dist/primitives/composer/ComposerAddAttachment.mjs.map +1 -1
  156. package/dist/primitives/composer/ComposerCancel.d.ts +2 -1
  157. package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
  158. package/dist/primitives/composer/ComposerCancel.js +12 -2
  159. package/dist/primitives/composer/ComposerCancel.js.map +1 -1
  160. package/dist/primitives/composer/ComposerCancel.mjs +11 -1
  161. package/dist/primitives/composer/ComposerCancel.mjs.map +1 -1
  162. package/dist/primitives/composer/ComposerIf.d.ts +6 -1
  163. package/dist/primitives/composer/ComposerIf.d.ts.map +1 -1
  164. package/dist/primitives/composer/ComposerIf.js +9 -2
  165. package/dist/primitives/composer/ComposerIf.js.map +1 -1
  166. package/dist/primitives/composer/ComposerIf.mjs +8 -3
  167. package/dist/primitives/composer/ComposerIf.mjs.map +1 -1
  168. package/dist/primitives/composer/ComposerRoot.js +2 -2
  169. package/dist/primitives/composer/ComposerRoot.js.map +1 -1
  170. package/dist/primitives/composer/ComposerRoot.mjs +1 -1
  171. package/dist/primitives/composer/ComposerRoot.mjs.map +1 -1
  172. package/dist/primitives/composer/ComposerSend.d.ts +1 -1
  173. package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
  174. package/dist/primitives/composer/ComposerSend.js +22 -4
  175. package/dist/primitives/composer/ComposerSend.js.map +1 -1
  176. package/dist/primitives/composer/ComposerSend.mjs +19 -2
  177. package/dist/primitives/composer/ComposerSend.mjs.map +1 -1
  178. package/dist/primitives/contentPart/ContentPartDisplay.d.ts +3 -0
  179. package/dist/primitives/contentPart/ContentPartDisplay.d.ts.map +1 -1
  180. package/dist/primitives/contentPart/ContentPartDisplay.js +1 -1
  181. package/dist/primitives/contentPart/ContentPartDisplay.js.map +1 -1
  182. package/dist/primitives/contentPart/ContentPartDisplay.mjs +1 -1
  183. package/dist/primitives/contentPart/ContentPartDisplay.mjs.map +1 -1
  184. package/dist/primitives/contentPart/ContentPartImage.js +1 -1
  185. package/dist/primitives/contentPart/ContentPartImage.js.map +1 -1
  186. package/dist/primitives/contentPart/ContentPartImage.mjs +1 -1
  187. package/dist/primitives/contentPart/ContentPartImage.mjs.map +1 -1
  188. package/dist/primitives/contentPart/ContentPartText.js +1 -1
  189. package/dist/primitives/contentPart/ContentPartText.js.map +1 -1
  190. package/dist/primitives/contentPart/ContentPartText.mjs +1 -1
  191. package/dist/primitives/contentPart/ContentPartText.mjs.map +1 -1
  192. package/dist/primitives/contentPart/useContentPartDisplay.d.ts.map +1 -0
  193. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.js +1 -1
  194. package/dist/primitives/contentPart/useContentPartDisplay.js.map +1 -0
  195. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.mjs +1 -1
  196. package/dist/primitives/contentPart/useContentPartDisplay.mjs.map +1 -0
  197. package/dist/primitives/contentPart/useContentPartImage.d.ts.map +1 -0
  198. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartImage.js +1 -1
  199. package/dist/primitives/contentPart/useContentPartImage.js.map +1 -0
  200. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartImage.mjs +1 -1
  201. package/dist/primitives/contentPart/useContentPartImage.mjs.map +1 -0
  202. package/dist/primitives/contentPart/useContentPartText.d.ts.map +1 -0
  203. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartText.js +1 -1
  204. package/dist/primitives/contentPart/useContentPartText.js.map +1 -0
  205. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartText.mjs +1 -1
  206. package/dist/primitives/contentPart/useContentPartText.mjs.map +1 -0
  207. package/dist/primitives/index.d.ts +3 -0
  208. package/dist/primitives/index.d.ts.map +1 -1
  209. package/dist/primitives/index.js +11 -2
  210. package/dist/primitives/index.js.map +1 -1
  211. package/dist/primitives/index.mjs +7 -1
  212. package/dist/primitives/index.mjs.map +1 -1
  213. package/dist/primitives/message/MessageIf.d.ts +15 -1
  214. package/dist/primitives/message/MessageIf.d.ts.map +1 -1
  215. package/dist/primitives/message/MessageIf.js +38 -2
  216. package/dist/primitives/message/MessageIf.js.map +1 -1
  217. package/dist/primitives/message/MessageIf.mjs +39 -2
  218. package/dist/primitives/message/MessageIf.mjs.map +1 -1
  219. package/dist/primitives/thread/ThreadEmpty.js +2 -2
  220. package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
  221. package/dist/primitives/thread/ThreadEmpty.mjs +2 -2
  222. package/dist/primitives/thread/ThreadEmpty.mjs.map +1 -1
  223. package/dist/primitives/thread/ThreadIf.d.ts +8 -1
  224. package/dist/primitives/thread/ThreadIf.d.ts.map +1 -1
  225. package/dist/primitives/thread/ThreadIf.js +13 -2
  226. package/dist/primitives/thread/ThreadIf.js.map +1 -1
  227. package/dist/primitives/thread/ThreadIf.mjs +12 -3
  228. package/dist/primitives/thread/ThreadIf.mjs.map +1 -1
  229. package/dist/primitives/thread/ThreadScrollToBottom.d.ts +2 -1
  230. package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -1
  231. package/dist/primitives/thread/ThreadScrollToBottom.js +13 -2
  232. package/dist/primitives/thread/ThreadScrollToBottom.js.map +1 -1
  233. package/dist/primitives/thread/ThreadScrollToBottom.mjs +12 -1
  234. package/dist/primitives/thread/ThreadScrollToBottom.mjs.map +1 -1
  235. package/dist/primitives/thread/ThreadSuggestion.d.ts +11 -2
  236. package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
  237. package/dist/primitives/thread/ThreadSuggestion.js +21 -2
  238. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  239. package/dist/primitives/thread/ThreadSuggestion.mjs +20 -1
  240. package/dist/primitives/thread/ThreadSuggestion.mjs.map +1 -1
  241. package/dist/primitives/thread/ThreadViewport.d.ts +1 -1
  242. package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -1
  243. package/dist/primitives/thread/ThreadViewport.js +1 -1
  244. package/dist/primitives/thread/ThreadViewport.js.map +1 -1
  245. package/dist/primitives/thread/ThreadViewport.mjs +1 -1
  246. package/dist/primitives/thread/ThreadViewport.mjs.map +1 -1
  247. package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts.map +1 -0
  248. package/dist/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.js +1 -1
  249. package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -0
  250. package/dist/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.mjs +1 -1
  251. package/dist/primitives/thread/useThreadViewportAutoScroll.mjs.map +1 -0
  252. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.d.ts.map +1 -1
  253. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.js.map +1 -1
  254. package/dist/runtimes/core/AssistantRuntimeCore.d.ts +2 -2
  255. package/dist/runtimes/core/AssistantRuntimeCore.d.ts.map +1 -1
  256. package/dist/runtimes/core/AssistantRuntimeCore.js.map +1 -1
  257. package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts +4 -5
  258. package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts.map +1 -1
  259. package/dist/runtimes/core/BaseAssistantRuntimeCore.js +4 -6
  260. package/dist/runtimes/core/BaseAssistantRuntimeCore.js.map +1 -1
  261. package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs +4 -6
  262. package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs.map +1 -1
  263. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +5 -4
  264. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -1
  265. package/dist/runtimes/core/BaseThreadRuntimeCore.js +6 -6
  266. package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
  267. package/dist/runtimes/core/BaseThreadRuntimeCore.mjs +6 -6
  268. package/dist/runtimes/core/BaseThreadRuntimeCore.mjs.map +1 -1
  269. package/dist/runtimes/core/ThreadRuntimeCore.d.ts +4 -3
  270. package/dist/runtimes/core/ThreadRuntimeCore.d.ts.map +1 -1
  271. package/dist/runtimes/core/ThreadRuntimeCore.js.map +1 -1
  272. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.d.ts +1 -1
  273. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.d.ts.map +1 -1
  274. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js +6 -6
  275. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js.map +1 -1
  276. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.mjs +6 -6
  277. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.mjs.map +1 -1
  278. package/dist/runtimes/edge/EdgeChatAdapter.d.ts +1 -1
  279. package/dist/runtimes/edge/EdgeChatAdapter.d.ts.map +1 -1
  280. package/dist/runtimes/edge/EdgeChatAdapter.js +6 -6
  281. package/dist/runtimes/edge/EdgeChatAdapter.js.map +1 -1
  282. package/dist/runtimes/edge/EdgeChatAdapter.mjs +6 -6
  283. package/dist/runtimes/edge/EdgeChatAdapter.mjs.map +1 -1
  284. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js +2 -2
  285. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js.map +1 -1
  286. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs +1 -1
  287. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs.map +1 -1
  288. package/dist/runtimes/edge/converters/fromLanguageModelTools.d.ts +1 -1
  289. package/dist/runtimes/edge/converters/fromLanguageModelTools.d.ts.map +1 -1
  290. package/dist/runtimes/edge/converters/fromLanguageModelTools.js.map +1 -1
  291. package/dist/runtimes/edge/converters/fromLanguageModelTools.mjs.map +1 -1
  292. package/dist/runtimes/edge/converters/toLanguageModelTools.d.ts +1 -1
  293. package/dist/runtimes/edge/converters/toLanguageModelTools.d.ts.map +1 -1
  294. package/dist/runtimes/edge/converters/toLanguageModelTools.js.map +1 -1
  295. package/dist/runtimes/edge/converters/toLanguageModelTools.mjs.map +1 -1
  296. package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts +1 -2
  297. package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts.map +1 -1
  298. package/dist/runtimes/edge/createEdgeRuntimeAPI.js +2 -2
  299. package/dist/runtimes/edge/createEdgeRuntimeAPI.js.map +1 -1
  300. package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs +1 -1
  301. package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs.map +1 -1
  302. package/dist/runtimes/edge/streams/toolResultStream.d.ts +1 -1
  303. package/dist/runtimes/edge/streams/toolResultStream.d.ts.map +1 -1
  304. package/dist/runtimes/edge/streams/toolResultStream.js.map +1 -1
  305. package/dist/runtimes/edge/streams/toolResultStream.mjs.map +1 -1
  306. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts.map +1 -1
  307. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +1 -1
  308. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
  309. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs +1 -1
  310. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs.map +1 -1
  311. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts +3 -2
  312. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -1
  313. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +2 -2
  314. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
  315. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs +2 -2
  316. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs.map +1 -1
  317. package/dist/runtimes/external-store/external-message-converter.d.ts +1 -0
  318. package/dist/runtimes/external-store/external-message-converter.d.ts.map +1 -1
  319. package/dist/runtimes/external-store/external-message-converter.js +23 -0
  320. package/dist/runtimes/external-store/external-message-converter.js.map +1 -1
  321. package/dist/runtimes/external-store/external-message-converter.mjs +22 -0
  322. package/dist/runtimes/external-store/external-message-converter.mjs.map +1 -1
  323. package/dist/runtimes/external-store/index.d.ts +1 -1
  324. package/dist/runtimes/external-store/index.d.ts.map +1 -1
  325. package/dist/runtimes/external-store/index.js +2 -0
  326. package/dist/runtimes/external-store/index.js.map +1 -1
  327. package/dist/runtimes/external-store/index.mjs +5 -1
  328. package/dist/runtimes/external-store/index.mjs.map +1 -1
  329. package/dist/runtimes/local/ChatModelAdapter.d.ts +6 -2
  330. package/dist/runtimes/local/ChatModelAdapter.d.ts.map +1 -1
  331. package/dist/runtimes/local/ChatModelAdapter.js.map +1 -1
  332. package/dist/runtimes/local/LocalRuntimeCore.d.ts.map +1 -1
  333. package/dist/runtimes/local/LocalRuntimeCore.js +1 -4
  334. package/dist/runtimes/local/LocalRuntimeCore.js.map +1 -1
  335. package/dist/runtimes/local/LocalRuntimeCore.mjs +1 -4
  336. package/dist/runtimes/local/LocalRuntimeCore.mjs.map +1 -1
  337. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts +3 -2
  338. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts.map +1 -1
  339. package/dist/runtimes/local/LocalThreadRuntimeCore.js +5 -3
  340. package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
  341. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs +5 -3
  342. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs.map +1 -1
  343. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js +1 -1
  344. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js.map +1 -1
  345. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.mjs +1 -1
  346. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.mjs.map +1 -1
  347. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts +2 -2
  348. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts +2 -2
  349. package/dist/tailwindcss/index.d.ts.map +1 -1
  350. package/dist/tailwindcss/index.js +6 -2
  351. package/dist/tailwindcss/index.js.map +1 -1
  352. package/dist/tailwindcss/index.mjs +6 -2
  353. package/dist/tailwindcss/index.mjs.map +1 -1
  354. package/dist/types/index.d.ts +0 -1
  355. package/dist/types/index.d.ts.map +1 -1
  356. package/dist/types/index.js.map +1 -1
  357. package/dist/ui/thread-config.d.ts +1 -1
  358. package/dist/ui/thread-config.d.ts.map +1 -1
  359. package/dist/ui/thread-config.js.map +1 -1
  360. package/dist/ui/thread-config.mjs.map +1 -1
  361. package/dist/ui/thread.d.ts +1 -1
  362. package/dist/utils/CompositeContextProvider.d.ts +10 -0
  363. package/dist/utils/CompositeContextProvider.d.ts.map +1 -0
  364. package/dist/utils/{ProxyConfigProvider.js → CompositeContextProvider.js} +12 -12
  365. package/dist/utils/CompositeContextProvider.js.map +1 -0
  366. package/dist/utils/{ProxyConfigProvider.mjs → CompositeContextProvider.mjs} +9 -9
  367. package/dist/utils/CompositeContextProvider.mjs.map +1 -0
  368. package/package.json +1 -1
  369. package/src/api/AssistantRuntime.ts +19 -8
  370. package/src/api/ThreadRuntime.ts +15 -8
  371. package/src/context/react/ThreadContext.ts +9 -9
  372. package/src/context/react/index.ts +5 -1
  373. package/src/index.ts +1 -2
  374. package/src/internal.ts +1 -1
  375. package/src/{types/ModelConfigTypes.ts → model-context/ModelContextTypes.ts} +9 -9
  376. package/src/{model-config → model-context}/index.ts +14 -0
  377. package/src/{model-config → model-context}/useAssistantInstructions.tsx +2 -2
  378. package/src/{model-config → model-context}/useAssistantTool.tsx +4 -4
  379. package/src/primitives/actionBar/ActionBarCopy.tsx +38 -3
  380. package/src/primitives/actionBar/ActionBarEdit.tsx +14 -1
  381. package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +12 -1
  382. package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +12 -3
  383. package/src/primitives/actionBar/ActionBarReload.tsx +21 -1
  384. package/src/primitives/actionBar/ActionBarSpeak.tsx +19 -1
  385. package/src/primitives/actionBar/ActionBarStopSpeaking.tsx +18 -1
  386. package/src/primitives/attachment/AttachmentRemove.tsx +12 -1
  387. package/src/primitives/branchPicker/BranchPickerCount.tsx +6 -1
  388. package/src/primitives/branchPicker/BranchPickerNext.tsx +17 -1
  389. package/src/primitives/branchPicker/BranchPickerNumber.tsx +6 -1
  390. package/src/primitives/branchPicker/BranchPickerPrevious.tsx +17 -1
  391. package/src/primitives/composer/ComposerAddAttachment.tsx +36 -1
  392. package/src/primitives/composer/ComposerCancel.tsx +14 -1
  393. package/src/primitives/composer/ComposerIf.tsx +17 -4
  394. package/src/primitives/composer/ComposerRoot.tsx +1 -1
  395. package/src/primitives/composer/ComposerSend.tsx +21 -1
  396. package/src/primitives/contentPart/ContentPartDisplay.tsx +4 -1
  397. package/src/primitives/contentPart/ContentPartImage.tsx +1 -1
  398. package/src/primitives/contentPart/ContentPartText.tsx +1 -1
  399. package/src/primitives/index.ts +4 -0
  400. package/src/primitives/message/MessageIf.tsx +77 -3
  401. package/src/primitives/thread/ThreadEmpty.tsx +2 -2
  402. package/src/primitives/thread/ThreadIf.tsx +23 -4
  403. package/src/primitives/thread/ThreadScrollToBottom.tsx +16 -1
  404. package/src/primitives/thread/ThreadSuggestion.tsx +27 -1
  405. package/src/primitives/thread/ThreadViewport.tsx +1 -1
  406. package/src/runtimes/adapters/thread-history/ThreadHistoryAdapter.ts +0 -1
  407. package/src/runtimes/core/AssistantRuntimeCore.tsx +2 -2
  408. package/src/runtimes/core/BaseAssistantRuntimeCore.tsx +6 -8
  409. package/src/runtimes/core/BaseThreadRuntimeCore.tsx +7 -10
  410. package/src/runtimes/core/ThreadRuntimeCore.tsx +4 -3
  411. package/src/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.ts +6 -6
  412. package/src/runtimes/edge/EdgeChatAdapter.ts +6 -6
  413. package/src/runtimes/edge/EdgeRuntimeRequestOptions.ts +1 -1
  414. package/src/runtimes/edge/converters/fromLanguageModelTools.ts +1 -1
  415. package/src/runtimes/edge/converters/toLanguageModelTools.ts +1 -1
  416. package/src/runtimes/edge/createEdgeRuntimeAPI.ts +2 -2
  417. package/src/runtimes/edge/streams/toolResultStream.ts +1 -1
  418. package/src/runtimes/external-store/ExternalStoreRuntimeCore.tsx +1 -2
  419. package/src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx +4 -3
  420. package/src/runtimes/external-store/external-message-converter.tsx +28 -0
  421. package/src/runtimes/external-store/index.ts +4 -1
  422. package/src/runtimes/local/ChatModelAdapter.tsx +7 -2
  423. package/src/runtimes/local/LocalRuntimeCore.tsx +1 -4
  424. package/src/runtimes/local/LocalThreadRuntimeCore.tsx +7 -8
  425. package/src/runtimes/remote-thread-list/EMPTY_THREAD_CORE.tsx +1 -1
  426. package/src/tailwindcss/index.ts +8 -2
  427. package/src/types/index.ts +0 -6
  428. package/src/ui/thread-config.tsx +1 -1
  429. package/src/utils/{ProxyConfigProvider.ts → CompositeContextProvider.ts} +8 -8
  430. package/dist/model-config/index.d.ts.map +0 -1
  431. package/dist/model-config/index.js.map +0 -1
  432. package/dist/model-config/index.mjs.map +0 -1
  433. package/dist/model-config/makeAssistantTool.d.ts.map +0 -1
  434. package/dist/model-config/makeAssistantTool.js.map +0 -1
  435. package/dist/model-config/makeAssistantTool.mjs.map +0 -1
  436. package/dist/model-config/makeAssistantToolUI.d.ts.map +0 -1
  437. package/dist/model-config/makeAssistantToolUI.js.map +0 -1
  438. package/dist/model-config/makeAssistantToolUI.mjs.map +0 -1
  439. package/dist/model-config/useAssistantInstructions.d.ts.map +0 -1
  440. package/dist/model-config/useAssistantInstructions.js.map +0 -1
  441. package/dist/model-config/useAssistantInstructions.mjs.map +0 -1
  442. package/dist/model-config/useAssistantTool.d.ts.map +0 -1
  443. package/dist/model-config/useAssistantTool.js.map +0 -1
  444. package/dist/model-config/useAssistantTool.mjs.map +0 -1
  445. package/dist/model-config/useAssistantToolUI.d.ts.map +0 -1
  446. package/dist/model-config/useAssistantToolUI.js.map +0 -1
  447. package/dist/model-config/useAssistantToolUI.mjs.map +0 -1
  448. package/dist/model-config/useInlineRender.d.ts.map +0 -1
  449. package/dist/model-config/useInlineRender.js.map +0 -1
  450. package/dist/model-config/useInlineRender.mjs.map +0 -1
  451. package/dist/primitive-hooks/actionBar/useActionBarCopy.d.ts +0 -7
  452. package/dist/primitive-hooks/actionBar/useActionBarCopy.d.ts.map +0 -1
  453. package/dist/primitive-hooks/actionBar/useActionBarCopy.js +0 -54
  454. package/dist/primitive-hooks/actionBar/useActionBarCopy.js.map +0 -1
  455. package/dist/primitive-hooks/actionBar/useActionBarCopy.mjs +0 -34
  456. package/dist/primitive-hooks/actionBar/useActionBarCopy.mjs.map +0 -1
  457. package/dist/primitive-hooks/actionBar/useActionBarEdit.d.ts +0 -2
  458. package/dist/primitive-hooks/actionBar/useActionBarEdit.d.ts.map +0 -1
  459. package/dist/primitive-hooks/actionBar/useActionBarEdit.js +0 -42
  460. package/dist/primitive-hooks/actionBar/useActionBarEdit.js.map +0 -1
  461. package/dist/primitive-hooks/actionBar/useActionBarEdit.mjs +0 -18
  462. package/dist/primitive-hooks/actionBar/useActionBarEdit.mjs.map +0 -1
  463. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.d.ts +0 -2
  464. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.d.ts.map +0 -1
  465. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js +0 -40
  466. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js.map +0 -1
  467. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.mjs +0 -16
  468. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.mjs.map +0 -1
  469. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.d.ts +0 -2
  470. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.d.ts.map +0 -1
  471. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js +0 -40
  472. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js.map +0 -1
  473. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.mjs +0 -16
  474. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.mjs.map +0 -1
  475. package/dist/primitive-hooks/actionBar/useActionBarReload.d.ts +0 -2
  476. package/dist/primitive-hooks/actionBar/useActionBarReload.d.ts.map +0 -1
  477. package/dist/primitive-hooks/actionBar/useActionBarReload.js +0 -48
  478. package/dist/primitive-hooks/actionBar/useActionBarReload.js.map +0 -1
  479. package/dist/primitive-hooks/actionBar/useActionBarReload.mjs +0 -24
  480. package/dist/primitive-hooks/actionBar/useActionBarReload.mjs.map +0 -1
  481. package/dist/primitive-hooks/actionBar/useActionBarSpeak.d.ts +0 -2
  482. package/dist/primitive-hooks/actionBar/useActionBarSpeak.d.ts.map +0 -1
  483. package/dist/primitive-hooks/actionBar/useActionBarSpeak.js +0 -44
  484. package/dist/primitive-hooks/actionBar/useActionBarSpeak.js.map +0 -1
  485. package/dist/primitive-hooks/actionBar/useActionBarSpeak.mjs +0 -20
  486. package/dist/primitive-hooks/actionBar/useActionBarSpeak.mjs.map +0 -1
  487. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.d.ts +0 -2
  488. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.d.ts.map +0 -1
  489. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js +0 -42
  490. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js.map +0 -1
  491. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.mjs +0 -21
  492. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.mjs.map +0 -1
  493. package/dist/primitive-hooks/attachment/useAttachmentRemove.d.ts +0 -2
  494. package/dist/primitive-hooks/attachment/useAttachmentRemove.d.ts.map +0 -1
  495. package/dist/primitive-hooks/attachment/useAttachmentRemove.js +0 -40
  496. package/dist/primitive-hooks/attachment/useAttachmentRemove.js.map +0 -1
  497. package/dist/primitive-hooks/attachment/useAttachmentRemove.mjs +0 -16
  498. package/dist/primitive-hooks/attachment/useAttachmentRemove.mjs.map +0 -1
  499. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.d.ts +0 -2
  500. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.d.ts.map +0 -1
  501. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js +0 -36
  502. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js.map +0 -1
  503. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.mjs +0 -12
  504. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.mjs.map +0 -1
  505. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.d.ts +0 -2
  506. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.d.ts.map +0 -1
  507. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js +0 -42
  508. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js.map +0 -1
  509. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.mjs +0 -21
  510. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.mjs.map +0 -1
  511. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.d.ts +0 -2
  512. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.d.ts.map +0 -1
  513. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js +0 -36
  514. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js.map +0 -1
  515. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.mjs +0 -12
  516. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.mjs.map +0 -1
  517. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.d.ts +0 -2
  518. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.d.ts.map +0 -1
  519. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js +0 -42
  520. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js.map +0 -1
  521. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.mjs +0 -21
  522. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.mjs.map +0 -1
  523. package/dist/primitive-hooks/composer/useComposerAddAttachment.d.ts +0 -8
  524. package/dist/primitive-hooks/composer/useComposerAddAttachment.d.ts.map +0 -1
  525. package/dist/primitive-hooks/composer/useComposerAddAttachment.js +0 -58
  526. package/dist/primitive-hooks/composer/useComposerAddAttachment.js.map +0 -1
  527. package/dist/primitive-hooks/composer/useComposerAddAttachment.mjs +0 -34
  528. package/dist/primitive-hooks/composer/useComposerAddAttachment.mjs.map +0 -1
  529. package/dist/primitive-hooks/composer/useComposerCancel.d.ts +0 -2
  530. package/dist/primitive-hooks/composer/useComposerCancel.d.ts.map +0 -1
  531. package/dist/primitive-hooks/composer/useComposerCancel.js +0 -42
  532. package/dist/primitive-hooks/composer/useComposerCancel.js.map +0 -1
  533. package/dist/primitive-hooks/composer/useComposerCancel.mjs +0 -18
  534. package/dist/primitive-hooks/composer/useComposerCancel.mjs.map +0 -1
  535. package/dist/primitive-hooks/composer/useComposerIf.d.ts +0 -8
  536. package/dist/primitive-hooks/composer/useComposerIf.d.ts.map +0 -1
  537. package/dist/primitive-hooks/composer/useComposerIf.js +0 -39
  538. package/dist/primitive-hooks/composer/useComposerIf.js.map +0 -1
  539. package/dist/primitive-hooks/composer/useComposerIf.mjs +0 -15
  540. package/dist/primitive-hooks/composer/useComposerIf.mjs.map +0 -1
  541. package/dist/primitive-hooks/composer/useComposerSend.d.ts +0 -2
  542. package/dist/primitive-hooks/composer/useComposerSend.d.ts.map +0 -1
  543. package/dist/primitive-hooks/composer/useComposerSend.js +0 -49
  544. package/dist/primitive-hooks/composer/useComposerSend.js.map +0 -1
  545. package/dist/primitive-hooks/composer/useComposerSend.mjs +0 -25
  546. package/dist/primitive-hooks/composer/useComposerSend.mjs.map +0 -1
  547. package/dist/primitive-hooks/contentPart/index.d.ts +0 -4
  548. package/dist/primitive-hooks/contentPart/index.d.ts.map +0 -1
  549. package/dist/primitive-hooks/contentPart/index.js +0 -37
  550. package/dist/primitive-hooks/contentPart/index.js.map +0 -1
  551. package/dist/primitive-hooks/contentPart/index.mjs +0 -10
  552. package/dist/primitive-hooks/contentPart/index.mjs.map +0 -1
  553. package/dist/primitive-hooks/contentPart/useContentPartDisplay.d.ts.map +0 -1
  554. package/dist/primitive-hooks/contentPart/useContentPartDisplay.js.map +0 -1
  555. package/dist/primitive-hooks/contentPart/useContentPartDisplay.mjs.map +0 -1
  556. package/dist/primitive-hooks/contentPart/useContentPartImage.d.ts.map +0 -1
  557. package/dist/primitive-hooks/contentPart/useContentPartImage.js.map +0 -1
  558. package/dist/primitive-hooks/contentPart/useContentPartImage.mjs.map +0 -1
  559. package/dist/primitive-hooks/contentPart/useContentPartText.d.ts.map +0 -1
  560. package/dist/primitive-hooks/contentPart/useContentPartText.js.map +0 -1
  561. package/dist/primitive-hooks/contentPart/useContentPartText.mjs.map +0 -1
  562. package/dist/primitive-hooks/index.d.ts +0 -2
  563. package/dist/primitive-hooks/index.d.ts.map +0 -1
  564. package/dist/primitive-hooks/index.js +0 -25
  565. package/dist/primitive-hooks/index.js.map +0 -1
  566. package/dist/primitive-hooks/index.mjs +0 -3
  567. package/dist/primitive-hooks/index.mjs.map +0 -1
  568. package/dist/primitive-hooks/message/useMessageIf.d.ts +0 -17
  569. package/dist/primitive-hooks/message/useMessageIf.d.ts.map +0 -1
  570. package/dist/primitive-hooks/message/useMessageIf.js +0 -68
  571. package/dist/primitive-hooks/message/useMessageIf.js.map +0 -1
  572. package/dist/primitive-hooks/message/useMessageIf.mjs +0 -47
  573. package/dist/primitive-hooks/message/useMessageIf.mjs.map +0 -1
  574. package/dist/primitive-hooks/thread/useThreadEmpty.d.ts +0 -2
  575. package/dist/primitive-hooks/thread/useThreadEmpty.d.ts.map +0 -1
  576. package/dist/primitive-hooks/thread/useThreadEmpty.js +0 -35
  577. package/dist/primitive-hooks/thread/useThreadEmpty.js.map +0 -1
  578. package/dist/primitive-hooks/thread/useThreadEmpty.mjs +0 -11
  579. package/dist/primitive-hooks/thread/useThreadEmpty.mjs.map +0 -1
  580. package/dist/primitive-hooks/thread/useThreadIf.d.ts +0 -10
  581. package/dist/primitive-hooks/thread/useThreadIf.d.ts.map +0 -1
  582. package/dist/primitive-hooks/thread/useThreadIf.js +0 -43
  583. package/dist/primitive-hooks/thread/useThreadIf.js.map +0 -1
  584. package/dist/primitive-hooks/thread/useThreadIf.mjs +0 -19
  585. package/dist/primitive-hooks/thread/useThreadIf.mjs.map +0 -1
  586. package/dist/primitive-hooks/thread/useThreadScrollToBottom.d.ts +0 -2
  587. package/dist/primitive-hooks/thread/useThreadScrollToBottom.d.ts.map +0 -1
  588. package/dist/primitive-hooks/thread/useThreadScrollToBottom.js +0 -43
  589. package/dist/primitive-hooks/thread/useThreadScrollToBottom.js.map +0 -1
  590. package/dist/primitive-hooks/thread/useThreadScrollToBottom.mjs +0 -19
  591. package/dist/primitive-hooks/thread/useThreadScrollToBottom.mjs.map +0 -1
  592. package/dist/primitive-hooks/thread/useThreadSuggestion.d.ts +0 -9
  593. package/dist/primitive-hooks/thread/useThreadSuggestion.d.ts.map +0 -1
  594. package/dist/primitive-hooks/thread/useThreadSuggestion.js +0 -51
  595. package/dist/primitive-hooks/thread/useThreadSuggestion.js.map +0 -1
  596. package/dist/primitive-hooks/thread/useThreadSuggestion.mjs +0 -27
  597. package/dist/primitive-hooks/thread/useThreadSuggestion.mjs.map +0 -1
  598. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.d.ts.map +0 -1
  599. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.js.map +0 -1
  600. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.mjs.map +0 -1
  601. package/dist/types/ModelConfigTypes.d.ts.map +0 -1
  602. package/dist/types/ModelConfigTypes.js.map +0 -1
  603. package/dist/types/ModelConfigTypes.mjs.map +0 -1
  604. package/dist/utils/ProxyConfigProvider.d.ts +0 -10
  605. package/dist/utils/ProxyConfigProvider.d.ts.map +0 -1
  606. package/dist/utils/ProxyConfigProvider.js.map +0 -1
  607. package/dist/utils/ProxyConfigProvider.mjs.map +0 -1
  608. package/src/primitive-hooks/actionBar/useActionBarCopy.tsx +0 -45
  609. package/src/primitive-hooks/actionBar/useActionBarEdit.tsx +0 -16
  610. package/src/primitive-hooks/actionBar/useActionBarFeedbackNegative.tsx +0 -14
  611. package/src/primitive-hooks/actionBar/useActionBarFeedbackPositive.tsx +0 -14
  612. package/src/primitive-hooks/actionBar/useActionBarReload.tsx +0 -23
  613. package/src/primitive-hooks/actionBar/useActionBarSpeak.tsx +0 -22
  614. package/src/primitive-hooks/actionBar/useActionBarStopSpeaking.tsx +0 -20
  615. package/src/primitive-hooks/attachment/useAttachmentRemove.ts +0 -14
  616. package/src/primitive-hooks/branchPicker/useBranchPickerCount.tsx +0 -8
  617. package/src/primitive-hooks/branchPicker/useBranchPickerNext.tsx +0 -19
  618. package/src/primitive-hooks/branchPicker/useBranchPickerNumber.tsx +0 -8
  619. package/src/primitive-hooks/branchPicker/useBranchPickerPrevious.tsx +0 -19
  620. package/src/primitive-hooks/composer/useComposerAddAttachment.tsx +0 -42
  621. package/src/primitive-hooks/composer/useComposerCancel.tsx +0 -16
  622. package/src/primitive-hooks/composer/useComposerIf.tsx +0 -19
  623. package/src/primitive-hooks/composer/useComposerSend.tsx +0 -25
  624. package/src/primitive-hooks/contentPart/index.ts +0 -3
  625. package/src/primitive-hooks/index.ts +0 -1
  626. package/src/primitive-hooks/message/useMessageIf.tsx +0 -80
  627. package/src/primitive-hooks/thread/useThreadEmpty.tsx +0 -7
  628. package/src/primitive-hooks/thread/useThreadIf.tsx +0 -25
  629. package/src/primitive-hooks/thread/useThreadScrollToBottom.tsx +0 -18
  630. package/src/primitive-hooks/thread/useThreadSuggestion.tsx +0 -33
  631. /package/dist/{model-config → model-context}/makeAssistantTool.d.ts +0 -0
  632. /package/dist/{model-config → model-context}/makeAssistantToolUI.d.ts +0 -0
  633. /package/dist/{model-config → model-context}/useAssistantInstructions.d.ts +0 -0
  634. /package/dist/{model-config → model-context}/useAssistantToolUI.d.ts +0 -0
  635. /package/dist/{model-config → model-context}/useInlineRender.d.ts +0 -0
  636. /package/dist/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.d.ts +0 -0
  637. /package/dist/{primitive-hooks → primitives}/contentPart/useContentPartImage.d.ts +0 -0
  638. /package/dist/{primitive-hooks → primitives}/contentPart/useContentPartText.d.ts +0 -0
  639. /package/dist/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.d.ts +0 -0
  640. /package/src/{model-config → model-context}/makeAssistantTool.tsx +0 -0
  641. /package/src/{model-config → model-context}/makeAssistantToolUI.tsx +0 -0
  642. /package/src/{model-config → model-context}/useAssistantToolUI.tsx +0 -0
  643. /package/src/{model-config → model-context}/useInlineRender.tsx +0 -0
  644. /package/src/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.tsx +0 -0
  645. /package/src/{primitive-hooks → primitives}/contentPart/useContentPartImage.tsx +0 -0
  646. /package/src/{primitive-hooks → primitives}/contentPart/useContentPartText.tsx +0 -0
  647. /package/src/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.tsx +0 -0
@@ -25,10 +25,29 @@ __export(ThreadSuggestion_exports, {
25
25
  });
26
26
  module.exports = __toCommonJS(ThreadSuggestion_exports);
27
27
  var import_createActionButton = require("../../utils/createActionButton.js");
28
- var import_useThreadSuggestion = require("../../primitive-hooks/thread/useThreadSuggestion.js");
28
+ var import_react = require("react");
29
+ var import_context = require("../../context/index.js");
30
+ var import_ThreadContext = require("../../context/react/ThreadContext.js");
31
+ var useThreadSuggestion = ({
32
+ prompt,
33
+ autoSend
34
+ }) => {
35
+ const threadRuntime = (0, import_ThreadContext.useThreadRuntime)();
36
+ const disabled = (0, import_context.useThread)((t) => t.isDisabled);
37
+ const callback = (0, import_react.useCallback)(() => {
38
+ if (autoSend && !threadRuntime.getState().isRunning) {
39
+ threadRuntime.append(prompt);
40
+ threadRuntime.composer.setText("");
41
+ } else {
42
+ threadRuntime.composer.setText(prompt);
43
+ }
44
+ }, [threadRuntime, autoSend, prompt]);
45
+ if (disabled) return null;
46
+ return callback;
47
+ };
29
48
  var ThreadPrimitiveSuggestion = (0, import_createActionButton.createActionButton)(
30
49
  "ThreadPrimitive.Suggestion",
31
- import_useThreadSuggestion.useThreadSuggestion,
50
+ useThreadSuggestion,
32
51
  ["prompt", "autoSend", "method"]
33
52
  );
34
53
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/primitives/thread/ThreadSuggestion.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useThreadSuggestion } from \"../../primitive-hooks/thread/useThreadSuggestion\";\n\nexport namespace ThreadPrimitiveSuggestion {\n export type Element = ActionButtonElement;\n export type Props = ActionButtonProps<typeof useThreadSuggestion>;\n}\n\nexport const ThreadPrimitiveSuggestion = createActionButton(\n \"ThreadPrimitive.Suggestion\",\n useThreadSuggestion,\n [\"prompt\", \"autoSend\", \"method\"],\n);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,gCAIO;AACP,iCAAoC;AAO7B,IAAM,gCAA4B;AAAA,EACvC;AAAA,EACA;AAAA,EACA,CAAC,UAAU,YAAY,QAAQ;AACjC;","names":[]}
1
+ {"version":3,"sources":["../../../src/primitives/thread/ThreadSuggestion.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport { useThread } from \"../../context\";\nimport { useThreadRuntime } from \"../../context/react/ThreadContext\";\n\nconst useThreadSuggestion = ({\n prompt,\n autoSend,\n}: {\n prompt: string;\n method: \"replace\";\n autoSend?: boolean | undefined;\n}) => {\n const threadRuntime = useThreadRuntime();\n\n const disabled = useThread((t) => t.isDisabled);\n const callback = useCallback(() => {\n if (autoSend && !threadRuntime.getState().isRunning) {\n threadRuntime.append(prompt);\n threadRuntime.composer.setText(\"\");\n } else {\n threadRuntime.composer.setText(prompt);\n }\n }, [threadRuntime, autoSend, prompt]);\n\n if (disabled) return null;\n return callback;\n};\n\nexport namespace ThreadPrimitiveSuggestion {\n export type Element = ActionButtonElement;\n export type Props = ActionButtonProps<typeof useThreadSuggestion>;\n}\n\nexport const ThreadPrimitiveSuggestion = createActionButton(\n \"ThreadPrimitive.Suggestion\",\n useThreadSuggestion,\n [\"prompt\", \"autoSend\", \"method\"],\n);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,gCAIO;AACP,mBAA4B;AAC5B,qBAA0B;AAC1B,2BAAiC;AAEjC,IAAM,sBAAsB,CAAC;AAAA,EAC3B;AAAA,EACA;AACF,MAIM;AACJ,QAAM,oBAAgB,uCAAiB;AAEvC,QAAM,eAAW,0BAAU,CAAC,MAAM,EAAE,UAAU;AAC9C,QAAM,eAAW,0BAAY,MAAM;AACjC,QAAI,YAAY,CAAC,cAAc,SAAS,EAAE,WAAW;AACnD,oBAAc,OAAO,MAAM;AAC3B,oBAAc,SAAS,QAAQ,EAAE;AAAA,IACnC,OAAO;AACL,oBAAc,SAAS,QAAQ,MAAM;AAAA,IACvC;AAAA,EACF,GAAG,CAAC,eAAe,UAAU,MAAM,CAAC;AAEpC,MAAI,SAAU,QAAO;AACrB,SAAO;AACT;AAOO,IAAM,gCAA4B;AAAA,EACvC;AAAA,EACA;AAAA,EACA,CAAC,UAAU,YAAY,QAAQ;AACjC;","names":[]}
@@ -4,7 +4,26 @@
4
4
  import {
5
5
  createActionButton
6
6
  } from "../../utils/createActionButton.mjs";
7
- import { useThreadSuggestion } from "../../primitive-hooks/thread/useThreadSuggestion.mjs";
7
+ import { useCallback } from "react";
8
+ import { useThread } from "../../context/index.mjs";
9
+ import { useThreadRuntime } from "../../context/react/ThreadContext.mjs";
10
+ var useThreadSuggestion = ({
11
+ prompt,
12
+ autoSend
13
+ }) => {
14
+ const threadRuntime = useThreadRuntime();
15
+ const disabled = useThread((t) => t.isDisabled);
16
+ const callback = useCallback(() => {
17
+ if (autoSend && !threadRuntime.getState().isRunning) {
18
+ threadRuntime.append(prompt);
19
+ threadRuntime.composer.setText("");
20
+ } else {
21
+ threadRuntime.composer.setText(prompt);
22
+ }
23
+ }, [threadRuntime, autoSend, prompt]);
24
+ if (disabled) return null;
25
+ return callback;
26
+ };
8
27
  var ThreadPrimitiveSuggestion = createActionButton(
9
28
  "ThreadPrimitive.Suggestion",
10
29
  useThreadSuggestion,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/primitives/thread/ThreadSuggestion.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useThreadSuggestion } from \"../../primitive-hooks/thread/useThreadSuggestion\";\n\nexport namespace ThreadPrimitiveSuggestion {\n export type Element = ActionButtonElement;\n export type Props = ActionButtonProps<typeof useThreadSuggestion>;\n}\n\nexport const ThreadPrimitiveSuggestion = createActionButton(\n \"ThreadPrimitive.Suggestion\",\n useThreadSuggestion,\n [\"prompt\", \"autoSend\", \"method\"],\n);\n"],"mappings":";;;AAEA;AAAA,EAGE;AAAA,OACK;AACP,SAAS,2BAA2B;AAO7B,IAAM,4BAA4B;AAAA,EACvC;AAAA,EACA;AAAA,EACA,CAAC,UAAU,YAAY,QAAQ;AACjC;","names":[]}
1
+ {"version":3,"sources":["../../../src/primitives/thread/ThreadSuggestion.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n ActionButtonElement,\n ActionButtonProps,\n createActionButton,\n} from \"../../utils/createActionButton\";\nimport { useCallback } from \"react\";\nimport { useThread } from \"../../context\";\nimport { useThreadRuntime } from \"../../context/react/ThreadContext\";\n\nconst useThreadSuggestion = ({\n prompt,\n autoSend,\n}: {\n prompt: string;\n method: \"replace\";\n autoSend?: boolean | undefined;\n}) => {\n const threadRuntime = useThreadRuntime();\n\n const disabled = useThread((t) => t.isDisabled);\n const callback = useCallback(() => {\n if (autoSend && !threadRuntime.getState().isRunning) {\n threadRuntime.append(prompt);\n threadRuntime.composer.setText(\"\");\n } else {\n threadRuntime.composer.setText(prompt);\n }\n }, [threadRuntime, autoSend, prompt]);\n\n if (disabled) return null;\n return callback;\n};\n\nexport namespace ThreadPrimitiveSuggestion {\n export type Element = ActionButtonElement;\n export type Props = ActionButtonProps<typeof useThreadSuggestion>;\n}\n\nexport const ThreadPrimitiveSuggestion = createActionButton(\n \"ThreadPrimitive.Suggestion\",\n useThreadSuggestion,\n [\"prompt\", \"autoSend\", \"method\"],\n);\n"],"mappings":";;;AAEA;AAAA,EAGE;AAAA,OACK;AACP,SAAS,mBAAmB;AAC5B,SAAS,iBAAiB;AAC1B,SAAS,wBAAwB;AAEjC,IAAM,sBAAsB,CAAC;AAAA,EAC3B;AAAA,EACA;AACF,MAIM;AACJ,QAAM,gBAAgB,iBAAiB;AAEvC,QAAM,WAAW,UAAU,CAAC,MAAM,EAAE,UAAU;AAC9C,QAAM,WAAW,YAAY,MAAM;AACjC,QAAI,YAAY,CAAC,cAAc,SAAS,EAAE,WAAW;AACnD,oBAAc,OAAO,MAAM;AAC3B,oBAAc,SAAS,QAAQ,EAAE;AAAA,IACnC,OAAO;AACL,oBAAc,SAAS,QAAQ,MAAM;AAAA,IACvC;AAAA,EACF,GAAG,CAAC,eAAe,UAAU,MAAM,CAAC;AAEpC,MAAI,SAAU,QAAO;AACrB,SAAO;AACT;AAOO,IAAM,4BAA4B;AAAA,EACvC;AAAA,EACA;AAAA,EACA,CAAC,UAAU,YAAY,QAAQ;AACjC;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import { Primitive } from "@radix-ui/react-primitive";
2
2
  import { type ComponentRef, ComponentPropsWithoutRef } from "react";
3
- import { useThreadViewportAutoScroll } from "../../primitive-hooks/thread/useThreadViewportAutoScroll";
3
+ import { useThreadViewportAutoScroll } from "./useThreadViewportAutoScroll";
4
4
  export declare namespace ThreadPrimitiveViewport {
5
5
  type Element = ComponentRef<typeof Primitive.div>;
6
6
  type Props = ComponentPropsWithoutRef<typeof Primitive.div> & useThreadViewportAutoScroll.Options;
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadViewport.d.ts","sourceRoot":"","sources":["../../../src/primitives/thread/ThreadViewport.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,KAAK,YAAY,EAAc,wBAAwB,EAAE,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,0DAA0D,CAAC;AAEvG,yBAAiB,uBAAuB,CAAC;IACvC,KAAY,OAAO,GAAG,YAAY,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACzD,KAAY,KAAK,GAAG,wBAAwB,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,GAChE,2BAA2B,CAAC,OAAO,CAAC;CACvC;AAED,eAAO,MAAM,uBAAuB;;gGAelC,CAAC"}
1
+ {"version":3,"file":"ThreadViewport.d.ts","sourceRoot":"","sources":["../../../src/primitives/thread/ThreadViewport.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,KAAK,YAAY,EAAc,wBAAwB,EAAE,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,yBAAiB,uBAAuB,CAAC;IACvC,KAAY,OAAO,GAAG,YAAY,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACzD,KAAY,KAAK,GAAG,wBAAwB,CAAC,OAAO,SAAS,CAAC,GAAG,CAAC,GAChE,2BAA2B,CAAC,OAAO,CAAC;CACvC;AAED,eAAO,MAAM,uBAAuB;;gGAelC,CAAC"}
@@ -27,7 +27,7 @@ module.exports = __toCommonJS(ThreadViewport_exports);
27
27
  var import_react_compose_refs = require("@radix-ui/react-compose-refs");
28
28
  var import_react_primitive = require("@radix-ui/react-primitive");
29
29
  var import_react = require("react");
30
- var import_useThreadViewportAutoScroll = require("../../primitive-hooks/thread/useThreadViewportAutoScroll.js");
30
+ var import_useThreadViewportAutoScroll = require("./useThreadViewportAutoScroll.js");
31
31
  var import_jsx_runtime = require("react/jsx-runtime");
32
32
  var ThreadPrimitiveViewport = (0, import_react.forwardRef)(({ autoScroll, children, ...rest }, forwardedRef) => {
33
33
  const autoScrollRef = (0, import_useThreadViewportAutoScroll.useThreadViewportAutoScroll)({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/primitives/thread/ThreadViewport.tsx"],"sourcesContent":["\"use client\";\n\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { type ComponentRef, forwardRef, ComponentPropsWithoutRef } from \"react\";\nimport { useThreadViewportAutoScroll } from \"../../primitive-hooks/thread/useThreadViewportAutoScroll\";\n\nexport namespace ThreadPrimitiveViewport {\n export type Element = ComponentRef<typeof Primitive.div>;\n export type Props = ComponentPropsWithoutRef<typeof Primitive.div> &\n useThreadViewportAutoScroll.Options;\n}\n\nexport const ThreadPrimitiveViewport = forwardRef<\n ThreadPrimitiveViewport.Element,\n ThreadPrimitiveViewport.Props\n>(({ autoScroll, children, ...rest }, forwardedRef) => {\n const autoScrollRef = useThreadViewportAutoScroll<HTMLDivElement>({\n autoScroll,\n });\n\n const ref = useComposedRefs(forwardedRef, autoScrollRef);\n\n return (\n <Primitive.div {...rest} ref={ref}>\n {children}\n </Primitive.div>\n );\n});\n\nThreadPrimitiveViewport.displayName = \"ThreadPrimitive.Viewport\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,gCAAgC;AAChC,6BAA0B;AAC1B,mBAAwE;AACxE,yCAA4C;AAmBxC;AAXG,IAAM,8BAA0B,yBAGrC,CAAC,EAAE,YAAY,UAAU,GAAG,KAAK,GAAG,iBAAiB;AACrD,QAAM,oBAAgB,gEAA4C;AAAA,IAChE;AAAA,EACF,CAAC;AAED,QAAM,UAAM,2CAAgB,cAAc,aAAa;AAEvD,SACE,4CAAC,iCAAU,KAAV,EAAe,GAAG,MAAM,KACtB,UACH;AAEJ,CAAC;AAED,wBAAwB,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../src/primitives/thread/ThreadViewport.tsx"],"sourcesContent":["\"use client\";\n\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { type ComponentRef, forwardRef, ComponentPropsWithoutRef } from \"react\";\nimport { useThreadViewportAutoScroll } from \"./useThreadViewportAutoScroll\";\n\nexport namespace ThreadPrimitiveViewport {\n export type Element = ComponentRef<typeof Primitive.div>;\n export type Props = ComponentPropsWithoutRef<typeof Primitive.div> &\n useThreadViewportAutoScroll.Options;\n}\n\nexport const ThreadPrimitiveViewport = forwardRef<\n ThreadPrimitiveViewport.Element,\n ThreadPrimitiveViewport.Props\n>(({ autoScroll, children, ...rest }, forwardedRef) => {\n const autoScrollRef = useThreadViewportAutoScroll<HTMLDivElement>({\n autoScroll,\n });\n\n const ref = useComposedRefs(forwardedRef, autoScrollRef);\n\n return (\n <Primitive.div {...rest} ref={ref}>\n {children}\n </Primitive.div>\n );\n});\n\nThreadPrimitiveViewport.displayName = \"ThreadPrimitive.Viewport\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,gCAAgC;AAChC,6BAA0B;AAC1B,mBAAwE;AACxE,yCAA4C;AAmBxC;AAXG,IAAM,8BAA0B,yBAGrC,CAAC,EAAE,YAAY,UAAU,GAAG,KAAK,GAAG,iBAAiB;AACrD,QAAM,oBAAgB,gEAA4C;AAAA,IAChE;AAAA,EACF,CAAC;AAED,QAAM,UAAM,2CAAgB,cAAc,aAAa;AAEvD,SACE,4CAAC,iCAAU,KAAV,EAAe,GAAG,MAAM,KACtB,UACH;AAEJ,CAAC;AAED,wBAAwB,cAAc;","names":[]}
@@ -4,7 +4,7 @@
4
4
  import { useComposedRefs } from "@radix-ui/react-compose-refs";
5
5
  import { Primitive } from "@radix-ui/react-primitive";
6
6
  import { forwardRef } from "react";
7
- import { useThreadViewportAutoScroll } from "../../primitive-hooks/thread/useThreadViewportAutoScroll.mjs";
7
+ import { useThreadViewportAutoScroll } from "./useThreadViewportAutoScroll.mjs";
8
8
  import { jsx } from "react/jsx-runtime";
9
9
  var ThreadPrimitiveViewport = forwardRef(({ autoScroll, children, ...rest }, forwardedRef) => {
10
10
  const autoScrollRef = useThreadViewportAutoScroll({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/primitives/thread/ThreadViewport.tsx"],"sourcesContent":["\"use client\";\n\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { type ComponentRef, forwardRef, ComponentPropsWithoutRef } from \"react\";\nimport { useThreadViewportAutoScroll } from \"../../primitive-hooks/thread/useThreadViewportAutoScroll\";\n\nexport namespace ThreadPrimitiveViewport {\n export type Element = ComponentRef<typeof Primitive.div>;\n export type Props = ComponentPropsWithoutRef<typeof Primitive.div> &\n useThreadViewportAutoScroll.Options;\n}\n\nexport const ThreadPrimitiveViewport = forwardRef<\n ThreadPrimitiveViewport.Element,\n ThreadPrimitiveViewport.Props\n>(({ autoScroll, children, ...rest }, forwardedRef) => {\n const autoScrollRef = useThreadViewportAutoScroll<HTMLDivElement>({\n autoScroll,\n });\n\n const ref = useComposedRefs(forwardedRef, autoScrollRef);\n\n return (\n <Primitive.div {...rest} ref={ref}>\n {children}\n </Primitive.div>\n );\n});\n\nThreadPrimitiveViewport.displayName = \"ThreadPrimitive.Viewport\";\n"],"mappings":";;;AAEA,SAAS,uBAAuB;AAChC,SAAS,iBAAiB;AAC1B,SAA4B,kBAA4C;AACxE,SAAS,mCAAmC;AAmBxC;AAXG,IAAM,0BAA0B,WAGrC,CAAC,EAAE,YAAY,UAAU,GAAG,KAAK,GAAG,iBAAiB;AACrD,QAAM,gBAAgB,4BAA4C;AAAA,IAChE;AAAA,EACF,CAAC;AAED,QAAM,MAAM,gBAAgB,cAAc,aAAa;AAEvD,SACE,oBAAC,UAAU,KAAV,EAAe,GAAG,MAAM,KACtB,UACH;AAEJ,CAAC;AAED,wBAAwB,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../src/primitives/thread/ThreadViewport.tsx"],"sourcesContent":["\"use client\";\n\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { type ComponentRef, forwardRef, ComponentPropsWithoutRef } from \"react\";\nimport { useThreadViewportAutoScroll } from \"./useThreadViewportAutoScroll\";\n\nexport namespace ThreadPrimitiveViewport {\n export type Element = ComponentRef<typeof Primitive.div>;\n export type Props = ComponentPropsWithoutRef<typeof Primitive.div> &\n useThreadViewportAutoScroll.Options;\n}\n\nexport const ThreadPrimitiveViewport = forwardRef<\n ThreadPrimitiveViewport.Element,\n ThreadPrimitiveViewport.Props\n>(({ autoScroll, children, ...rest }, forwardedRef) => {\n const autoScrollRef = useThreadViewportAutoScroll<HTMLDivElement>({\n autoScroll,\n });\n\n const ref = useComposedRefs(forwardedRef, autoScrollRef);\n\n return (\n <Primitive.div {...rest} ref={ref}>\n {children}\n </Primitive.div>\n );\n});\n\nThreadPrimitiveViewport.displayName = \"ThreadPrimitive.Viewport\";\n"],"mappings":";;;AAEA,SAAS,uBAAuB;AAChC,SAAS,iBAAiB;AAC1B,SAA4B,kBAA4C;AACxE,SAAS,mCAAmC;AAmBxC;AAXG,IAAM,0BAA0B,WAGrC,CAAC,EAAE,YAAY,UAAU,GAAG,KAAK,GAAG,iBAAiB;AACrD,QAAM,gBAAgB,4BAA4C;AAAA,IAChE;AAAA,EACF,CAAC;AAED,QAAM,MAAM,gBAAgB,cAAc,aAAa;AAEvD,SACE,oBAAC,UAAU,KAAV,EAAe,GAAG,MAAM,KACtB,UACH;AAEJ,CAAC;AAED,wBAAwB,cAAc;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useThreadViewportAutoScroll.d.ts","sourceRoot":"","sources":["../../../src/primitives/thread/useThreadViewportAutoScroll.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAqB,MAAM,OAAO,CAAC;AAUvD,yBAAiB,2BAA2B,CAAC;IAC3C,KAAY,OAAO,GAAG;QACpB,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACjC,iCAAiC,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;KACzD,CAAC;CACH;AAED,eAAO,MAAM,2BAA2B,GAAI,QAAQ,SAAS,WAAW,sDAGrE,2BAA2B,CAAC,OAAO,KAAG,WAAW,CAAC,QAAQ,CA6E5D,CAAC"}
@@ -18,7 +18,7 @@ var __copyProps = (to, from, except, desc) => {
18
18
  };
19
19
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
20
 
21
- // src/primitive-hooks/thread/useThreadViewportAutoScroll.tsx
21
+ // src/primitives/thread/useThreadViewportAutoScroll.tsx
22
22
  var useThreadViewportAutoScroll_exports = {};
23
23
  __export(useThreadViewportAutoScroll_exports, {
24
24
  useThreadViewportAutoScroll: () => useThreadViewportAutoScroll
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/primitives/thread/useThreadViewportAutoScroll.tsx"],"sourcesContent":["\"use client\";\n\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { RefCallback, useEffect, useRef } from \"react\";\nimport {\n useThreadRuntime,\n useThreadViewportStore,\n} from \"../../context/react/ThreadContext\";\nimport { useOnResizeContent } from \"../../utils/hooks/useOnResizeContent\";\nimport { useOnScrollToBottom } from \"../../utils/hooks/useOnScrollToBottom\";\nimport { useManagedRef } from \"../../utils/hooks/useManagedRef\";\nimport { writableStore } from \"../../context/ReadonlyStore\";\n\nexport namespace useThreadViewportAutoScroll {\n export type Options = {\n autoScroll?: boolean | undefined;\n unstable_scrollToBottomOnRunStart?: boolean | undefined;\n };\n}\n\nexport const useThreadViewportAutoScroll = <TElement extends HTMLElement>({\n autoScroll = true,\n unstable_scrollToBottomOnRunStart = true,\n}: useThreadViewportAutoScroll.Options): RefCallback<TElement> => {\n const divRef = useRef<TElement>(null);\n\n const threadViewportStore = useThreadViewportStore();\n\n const lastScrollTop = useRef<number>(0);\n\n // bug: when ScrollToBottom's button changes its disabled state, the scroll stops\n // fix: delay the state change until the scroll is done\n const isScrollingToBottomRef = useRef(false);\n\n const scrollToBottom = (behavior: ScrollBehavior) => {\n const div = divRef.current;\n if (!div || !autoScroll) return;\n\n isScrollingToBottomRef.current = true;\n div.scrollTo({ top: div.scrollHeight, behavior });\n };\n\n const handleScroll = () => {\n const div = divRef.current;\n if (!div) return;\n\n const isAtBottom = threadViewportStore.getState().isAtBottom;\n const newIsAtBottom =\n div.scrollHeight - div.scrollTop <= div.clientHeight + 1; // TODO figure out why +1 is needed\n\n if (!newIsAtBottom && lastScrollTop.current < div.scrollTop) {\n // ignore scroll down\n } else {\n if (newIsAtBottom) {\n isScrollingToBottomRef.current = false;\n }\n\n if (newIsAtBottom !== isAtBottom) {\n writableStore(threadViewportStore).setState({\n isAtBottom: newIsAtBottom,\n });\n }\n }\n\n lastScrollTop.current = div.scrollTop;\n };\n\n const resizeRef = useOnResizeContent(() => {\n if (\n isScrollingToBottomRef.current ||\n threadViewportStore.getState().isAtBottom\n ) {\n scrollToBottom(\"instant\");\n }\n\n handleScroll();\n });\n\n const scrollRef = useManagedRef<HTMLElement>((el) => {\n el.addEventListener(\"scroll\", handleScroll);\n return () => {\n el.removeEventListener(\"scroll\", handleScroll);\n };\n });\n\n const autoScrollRef = useComposedRefs<TElement>(resizeRef, scrollRef, divRef);\n\n useOnScrollToBottom(() => {\n scrollToBottom(\"auto\");\n });\n\n // autoscroll on run start\n const threadRuntime = useThreadRuntime();\n useEffect(() => {\n if (!unstable_scrollToBottomOnRunStart) return undefined;\n\n return threadRuntime.unstable_on(\"run-start\", focus);\n }, [unstable_scrollToBottomOnRunStart]);\n\n return autoScrollRef;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,gCAAgC;AAChC,mBAA+C;AAC/C,2BAGO;AACP,gCAAmC;AACnC,iCAAoC;AACpC,2BAA8B;AAC9B,2BAA8B;AASvB,IAAM,8BAA8B,CAA+B;AAAA,EACxE,aAAa;AAAA,EACb,oCAAoC;AACtC,MAAkE;AAChE,QAAM,aAAS,qBAAiB,IAAI;AAEpC,QAAM,0BAAsB,6CAAuB;AAEnD,QAAM,oBAAgB,qBAAe,CAAC;AAItC,QAAM,6BAAyB,qBAAO,KAAK;AAE3C,QAAM,iBAAiB,CAAC,aAA6B;AACnD,UAAM,MAAM,OAAO;AACnB,QAAI,CAAC,OAAO,CAAC,WAAY;AAEzB,2BAAuB,UAAU;AACjC,QAAI,SAAS,EAAE,KAAK,IAAI,cAAc,SAAS,CAAC;AAAA,EAClD;AAEA,QAAM,eAAe,MAAM;AACzB,UAAM,MAAM,OAAO;AACnB,QAAI,CAAC,IAAK;AAEV,UAAM,aAAa,oBAAoB,SAAS,EAAE;AAClD,UAAM,gBACJ,IAAI,eAAe,IAAI,aAAa,IAAI,eAAe;AAEzD,QAAI,CAAC,iBAAiB,cAAc,UAAU,IAAI,WAAW;AAAA,IAE7D,OAAO;AACL,UAAI,eAAe;AACjB,+BAAuB,UAAU;AAAA,MACnC;AAEA,UAAI,kBAAkB,YAAY;AAChC,gDAAc,mBAAmB,EAAE,SAAS;AAAA,UAC1C,YAAY;AAAA,QACd,CAAC;AAAA,MACH;AAAA,IACF;AAEA,kBAAc,UAAU,IAAI;AAAA,EAC9B;AAEA,QAAM,gBAAY,8CAAmB,MAAM;AACzC,QACE,uBAAuB,WACvB,oBAAoB,SAAS,EAAE,YAC/B;AACA,qBAAe,SAAS;AAAA,IAC1B;AAEA,iBAAa;AAAA,EACf,CAAC;AAED,QAAM,gBAAY,oCAA2B,CAAC,OAAO;AACnD,OAAG,iBAAiB,UAAU,YAAY;AAC1C,WAAO,MAAM;AACX,SAAG,oBAAoB,UAAU,YAAY;AAAA,IAC/C;AAAA,EACF,CAAC;AAED,QAAM,oBAAgB,2CAA0B,WAAW,WAAW,MAAM;AAE5E,sDAAoB,MAAM;AACxB,mBAAe,MAAM;AAAA,EACvB,CAAC;AAGD,QAAM,oBAAgB,uCAAiB;AACvC,8BAAU,MAAM;AACd,QAAI,CAAC,kCAAmC,QAAO;AAE/C,WAAO,cAAc,YAAY,aAAa,KAAK;AAAA,EACrD,GAAG,CAAC,iCAAiC,CAAC;AAEtC,SAAO;AACT;","names":[]}
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- // src/primitive-hooks/thread/useThreadViewportAutoScroll.tsx
3
+ // src/primitives/thread/useThreadViewportAutoScroll.tsx
4
4
  import { useComposedRefs } from "@radix-ui/react-compose-refs";
5
5
  import { useEffect, useRef } from "react";
6
6
  import {
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/primitives/thread/useThreadViewportAutoScroll.tsx"],"sourcesContent":["\"use client\";\n\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { RefCallback, useEffect, useRef } from \"react\";\nimport {\n useThreadRuntime,\n useThreadViewportStore,\n} from \"../../context/react/ThreadContext\";\nimport { useOnResizeContent } from \"../../utils/hooks/useOnResizeContent\";\nimport { useOnScrollToBottom } from \"../../utils/hooks/useOnScrollToBottom\";\nimport { useManagedRef } from \"../../utils/hooks/useManagedRef\";\nimport { writableStore } from \"../../context/ReadonlyStore\";\n\nexport namespace useThreadViewportAutoScroll {\n export type Options = {\n autoScroll?: boolean | undefined;\n unstable_scrollToBottomOnRunStart?: boolean | undefined;\n };\n}\n\nexport const useThreadViewportAutoScroll = <TElement extends HTMLElement>({\n autoScroll = true,\n unstable_scrollToBottomOnRunStart = true,\n}: useThreadViewportAutoScroll.Options): RefCallback<TElement> => {\n const divRef = useRef<TElement>(null);\n\n const threadViewportStore = useThreadViewportStore();\n\n const lastScrollTop = useRef<number>(0);\n\n // bug: when ScrollToBottom's button changes its disabled state, the scroll stops\n // fix: delay the state change until the scroll is done\n const isScrollingToBottomRef = useRef(false);\n\n const scrollToBottom = (behavior: ScrollBehavior) => {\n const div = divRef.current;\n if (!div || !autoScroll) return;\n\n isScrollingToBottomRef.current = true;\n div.scrollTo({ top: div.scrollHeight, behavior });\n };\n\n const handleScroll = () => {\n const div = divRef.current;\n if (!div) return;\n\n const isAtBottom = threadViewportStore.getState().isAtBottom;\n const newIsAtBottom =\n div.scrollHeight - div.scrollTop <= div.clientHeight + 1; // TODO figure out why +1 is needed\n\n if (!newIsAtBottom && lastScrollTop.current < div.scrollTop) {\n // ignore scroll down\n } else {\n if (newIsAtBottom) {\n isScrollingToBottomRef.current = false;\n }\n\n if (newIsAtBottom !== isAtBottom) {\n writableStore(threadViewportStore).setState({\n isAtBottom: newIsAtBottom,\n });\n }\n }\n\n lastScrollTop.current = div.scrollTop;\n };\n\n const resizeRef = useOnResizeContent(() => {\n if (\n isScrollingToBottomRef.current ||\n threadViewportStore.getState().isAtBottom\n ) {\n scrollToBottom(\"instant\");\n }\n\n handleScroll();\n });\n\n const scrollRef = useManagedRef<HTMLElement>((el) => {\n el.addEventListener(\"scroll\", handleScroll);\n return () => {\n el.removeEventListener(\"scroll\", handleScroll);\n };\n });\n\n const autoScrollRef = useComposedRefs<TElement>(resizeRef, scrollRef, divRef);\n\n useOnScrollToBottom(() => {\n scrollToBottom(\"auto\");\n });\n\n // autoscroll on run start\n const threadRuntime = useThreadRuntime();\n useEffect(() => {\n if (!unstable_scrollToBottomOnRunStart) return undefined;\n\n return threadRuntime.unstable_on(\"run-start\", focus);\n }, [unstable_scrollToBottomOnRunStart]);\n\n return autoScrollRef;\n};\n"],"mappings":";;;AAEA,SAAS,uBAAuB;AAChC,SAAsB,WAAW,cAAc;AAC/C;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,0BAA0B;AACnC,SAAS,2BAA2B;AACpC,SAAS,qBAAqB;AAC9B,SAAS,qBAAqB;AASvB,IAAM,8BAA8B,CAA+B;AAAA,EACxE,aAAa;AAAA,EACb,oCAAoC;AACtC,MAAkE;AAChE,QAAM,SAAS,OAAiB,IAAI;AAEpC,QAAM,sBAAsB,uBAAuB;AAEnD,QAAM,gBAAgB,OAAe,CAAC;AAItC,QAAM,yBAAyB,OAAO,KAAK;AAE3C,QAAM,iBAAiB,CAAC,aAA6B;AACnD,UAAM,MAAM,OAAO;AACnB,QAAI,CAAC,OAAO,CAAC,WAAY;AAEzB,2BAAuB,UAAU;AACjC,QAAI,SAAS,EAAE,KAAK,IAAI,cAAc,SAAS,CAAC;AAAA,EAClD;AAEA,QAAM,eAAe,MAAM;AACzB,UAAM,MAAM,OAAO;AACnB,QAAI,CAAC,IAAK;AAEV,UAAM,aAAa,oBAAoB,SAAS,EAAE;AAClD,UAAM,gBACJ,IAAI,eAAe,IAAI,aAAa,IAAI,eAAe;AAEzD,QAAI,CAAC,iBAAiB,cAAc,UAAU,IAAI,WAAW;AAAA,IAE7D,OAAO;AACL,UAAI,eAAe;AACjB,+BAAuB,UAAU;AAAA,MACnC;AAEA,UAAI,kBAAkB,YAAY;AAChC,sBAAc,mBAAmB,EAAE,SAAS;AAAA,UAC1C,YAAY;AAAA,QACd,CAAC;AAAA,MACH;AAAA,IACF;AAEA,kBAAc,UAAU,IAAI;AAAA,EAC9B;AAEA,QAAM,YAAY,mBAAmB,MAAM;AACzC,QACE,uBAAuB,WACvB,oBAAoB,SAAS,EAAE,YAC/B;AACA,qBAAe,SAAS;AAAA,IAC1B;AAEA,iBAAa;AAAA,EACf,CAAC;AAED,QAAM,YAAY,cAA2B,CAAC,OAAO;AACnD,OAAG,iBAAiB,UAAU,YAAY;AAC1C,WAAO,MAAM;AACX,SAAG,oBAAoB,UAAU,YAAY;AAAA,IAC/C;AAAA,EACF,CAAC;AAED,QAAM,gBAAgB,gBAA0B,WAAW,WAAW,MAAM;AAE5E,sBAAoB,MAAM;AACxB,mBAAe,MAAM;AAAA,EACvB,CAAC;AAGD,QAAM,gBAAgB,iBAAiB;AACvC,YAAU,MAAM;AACd,QAAI,CAAC,kCAAmC,QAAO;AAE/C,WAAO,cAAc,YAAY,aAAa,KAAK;AAAA,EACrD,GAAG,CAAC,iCAAiC,CAAC;AAEtC,SAAO;AACT;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadHistoryAdapter.d.ts","sourceRoot":"","sources":["../../../../src/runtimes/adapters/thread-history/ThreadHistoryAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC9B,MAAM,+BAA+B,CAAC;AAGvC,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,IAAI,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D,CAAC"}
1
+ {"version":3,"file":"ThreadHistoryAdapter.d.ts","sourceRoot":"","sources":["../../../../src/runtimes/adapters/thread-history/ThreadHistoryAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC9B,MAAM,+BAA+B,CAAC;AAEvC,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,IAAI,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC3C,MAAM,CAAC,IAAI,EAAE,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/adapters/thread-history/ThreadHistoryAdapter.ts"],"sourcesContent":["import {\n ExportedMessageRepository,\n ExportedMessageRepositoryItem,\n} from \"../../utils/MessageRepository\";\n\n// TODO external store - which version to save? how to restore?\nexport type ThreadHistoryAdapter = {\n load(): Promise<ExportedMessageRepository>;\n append(item: ExportedMessageRepositoryItem): Promise<void>;\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../../../src/runtimes/adapters/thread-history/ThreadHistoryAdapter.ts"],"sourcesContent":["import {\n ExportedMessageRepository,\n ExportedMessageRepositoryItem,\n} from \"../../utils/MessageRepository\";\n\nexport type ThreadHistoryAdapter = {\n load(): Promise<ExportedMessageRepository>;\n append(item: ExportedMessageRepositoryItem): Promise<void>;\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -1,10 +1,10 @@
1
1
  import { ComponentType } from "react";
2
- import type { ModelConfigProvider } from "../../types/ModelConfigTypes";
2
+ import type { ModelContextProvider } from "../../model-context/ModelContextTypes";
3
3
  import type { Unsubscribe } from "../../types/Unsubscribe";
4
4
  import { ThreadListRuntimeCore } from "./ThreadListRuntimeCore";
5
5
  export type AssistantRuntimeCore = {
6
6
  readonly threads: ThreadListRuntimeCore;
7
- registerModelConfigProvider: (provider: ModelConfigProvider) => Unsubscribe;
7
+ registerModelContextProvider: (provider: ModelContextProvider) => Unsubscribe;
8
8
  /**
9
9
  * EXPERIMENTAL: A component that is rendered inside the AssistantRuntimeProvider.
10
10
  *
@@ -1 +1 @@
1
- {"version":3,"file":"AssistantRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/AssistantRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;IAExC,2BAA2B,EAAE,CAAC,QAAQ,EAAE,mBAAmB,KAAK,WAAW,CAAC;IAE5E;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CACtD,CAAC"}
1
+ {"version":3,"file":"AssistantRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/AssistantRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;IAExC,4BAA4B,EAAE,CAAC,QAAQ,EAAE,oBAAoB,KAAK,WAAW,CAAC;IAE9E;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CACtD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/core/AssistantRuntimeCore.tsx"],"sourcesContent":["import { ComponentType } from \"react\";\nimport type { ModelConfigProvider } from \"../../types/ModelConfigTypes\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\nimport { ThreadListRuntimeCore } from \"./ThreadListRuntimeCore\";\n\nexport type AssistantRuntimeCore = {\n readonly threads: ThreadListRuntimeCore;\n\n registerModelConfigProvider: (provider: ModelConfigProvider) => Unsubscribe;\n\n /**\n * EXPERIMENTAL: A component that is rendered inside the AssistantRuntimeProvider.\n *\n * Note: This field is expected to never change.\n * To update the component, use a zustand store.\n */\n readonly RenderComponent?: ComponentType | undefined;\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/core/AssistantRuntimeCore.tsx"],"sourcesContent":["import { ComponentType } from \"react\";\nimport type { ModelContextProvider } from \"../../model-context/ModelContextTypes\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\nimport { ThreadListRuntimeCore } from \"./ThreadListRuntimeCore\";\n\nexport type AssistantRuntimeCore = {\n readonly threads: ThreadListRuntimeCore;\n\n registerModelContextProvider: (provider: ModelContextProvider) => Unsubscribe;\n\n /**\n * EXPERIMENTAL: A component that is rendered inside the AssistantRuntimeProvider.\n *\n * Note: This field is expected to never change.\n * To update the component, use a zustand store.\n */\n readonly RenderComponent?: ComponentType | undefined;\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -1,12 +1,11 @@
1
- import { type ModelConfigProvider } from "../../types/ModelConfigTypes";
1
+ import { type ModelContextProvider } from "../../model-context/ModelContextTypes";
2
2
  import type { Unsubscribe } from "../../types/Unsubscribe";
3
3
  import type { AssistantRuntimeCore } from "./AssistantRuntimeCore";
4
- import { ProxyConfigProvider } from "../../utils/ProxyConfigProvider";
4
+ import { CompositeContextProvider } from "../../utils/CompositeContextProvider";
5
5
  import { ThreadListRuntimeCore } from "./ThreadListRuntimeCore";
6
6
  export declare abstract class BaseAssistantRuntimeCore implements AssistantRuntimeCore {
7
- protected readonly _proxyConfigProvider: ProxyConfigProvider;
7
+ protected readonly _contextProvider: CompositeContextProvider;
8
8
  abstract get threads(): ThreadListRuntimeCore;
9
- constructor();
10
- registerModelConfigProvider(provider: ModelConfigProvider): Unsubscribe;
9
+ registerModelContextProvider(provider: ModelContextProvider): Unsubscribe;
11
10
  }
12
11
  //# sourceMappingURL=BaseAssistantRuntimeCore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAssistantRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/BaseAssistantRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,8BAAsB,wBAAyB,YAAW,oBAAoB;IAC5E,SAAS,CAAC,QAAQ,CAAC,oBAAoB,sBAA6B;IACpE,aAAoB,OAAO,IAAI,qBAAqB,CAAC;;IAI9C,2BAA2B,CAChC,QAAQ,EAAE,mBAAmB,GAC5B,WAAW;CAGf"}
1
+ {"version":3,"file":"BaseAssistantRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/BaseAssistantRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,8BAAsB,wBAAyB,YAAW,oBAAoB;IAC5E,SAAS,CAAC,QAAQ,CAAC,gBAAgB,2BAAkC;IACrE,aAAoB,OAAO,IAAI,qBAAqB,CAAC;IAE9C,4BAA4B,CACjC,QAAQ,EAAE,oBAAoB,GAC7B,WAAW;CAGf"}
@@ -23,13 +23,11 @@ __export(BaseAssistantRuntimeCore_exports, {
23
23
  BaseAssistantRuntimeCore: () => BaseAssistantRuntimeCore
24
24
  });
25
25
  module.exports = __toCommonJS(BaseAssistantRuntimeCore_exports);
26
- var import_ProxyConfigProvider = require("../../utils/ProxyConfigProvider.js");
26
+ var import_CompositeContextProvider = require("../../utils/CompositeContextProvider.js");
27
27
  var BaseAssistantRuntimeCore = class {
28
- _proxyConfigProvider = new import_ProxyConfigProvider.ProxyConfigProvider();
29
- constructor() {
30
- }
31
- registerModelConfigProvider(provider) {
32
- return this._proxyConfigProvider.registerModelConfigProvider(provider);
28
+ _contextProvider = new import_CompositeContextProvider.CompositeContextProvider();
29
+ registerModelContextProvider(provider) {
30
+ return this._contextProvider.registerModelContextProvider(provider);
33
31
  }
34
32
  };
35
33
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/core/BaseAssistantRuntimeCore.tsx"],"sourcesContent":["import { type ModelConfigProvider } from \"../../types/ModelConfigTypes\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\nimport type { AssistantRuntimeCore } from \"./AssistantRuntimeCore\";\nimport { ProxyConfigProvider } from \"../../utils/ProxyConfigProvider\";\nimport { ThreadListRuntimeCore } from \"./ThreadListRuntimeCore\";\n\nexport abstract class BaseAssistantRuntimeCore implements AssistantRuntimeCore {\n protected readonly _proxyConfigProvider = new ProxyConfigProvider();\n public abstract get threads(): ThreadListRuntimeCore;\n\n constructor() {}\n\n public registerModelConfigProvider(\n provider: ModelConfigProvider,\n ): Unsubscribe {\n return this._proxyConfigProvider.registerModelConfigProvider(provider);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,iCAAoC;AAG7B,IAAe,2BAAf,MAAwE;AAAA,EAC1D,uBAAuB,IAAI,+CAAoB;AAAA,EAGlE,cAAc;AAAA,EAAC;AAAA,EAER,4BACL,UACa;AACb,WAAO,KAAK,qBAAqB,4BAA4B,QAAQ;AAAA,EACvE;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/core/BaseAssistantRuntimeCore.tsx"],"sourcesContent":["import { type ModelContextProvider } from \"../../model-context/ModelContextTypes\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\nimport type { AssistantRuntimeCore } from \"./AssistantRuntimeCore\";\nimport { CompositeContextProvider } from \"../../utils/CompositeContextProvider\";\nimport { ThreadListRuntimeCore } from \"./ThreadListRuntimeCore\";\n\nexport abstract class BaseAssistantRuntimeCore implements AssistantRuntimeCore {\n protected readonly _contextProvider = new CompositeContextProvider();\n public abstract get threads(): ThreadListRuntimeCore;\n\n public registerModelContextProvider(\n provider: ModelContextProvider,\n ): Unsubscribe {\n return this._contextProvider.registerModelContextProvider(provider);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,sCAAyC;AAGlC,IAAe,2BAAf,MAAwE;AAAA,EAC1D,mBAAmB,IAAI,yDAAyB;AAAA,EAG5D,6BACL,UACa;AACb,WAAO,KAAK,iBAAiB,6BAA6B,QAAQ;AAAA,EACpE;AACF;","names":[]}
@@ -1,11 +1,9 @@
1
1
  // src/runtimes/core/BaseAssistantRuntimeCore.tsx
2
- import { ProxyConfigProvider } from "../../utils/ProxyConfigProvider.mjs";
2
+ import { CompositeContextProvider } from "../../utils/CompositeContextProvider.mjs";
3
3
  var BaseAssistantRuntimeCore = class {
4
- _proxyConfigProvider = new ProxyConfigProvider();
5
- constructor() {
6
- }
7
- registerModelConfigProvider(provider) {
8
- return this._proxyConfigProvider.registerModelConfigProvider(provider);
4
+ _contextProvider = new CompositeContextProvider();
5
+ registerModelContextProvider(provider) {
6
+ return this._contextProvider.registerModelContextProvider(provider);
9
7
  }
10
8
  };
11
9
  export {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/core/BaseAssistantRuntimeCore.tsx"],"sourcesContent":["import { type ModelConfigProvider } from \"../../types/ModelConfigTypes\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\nimport type { AssistantRuntimeCore } from \"./AssistantRuntimeCore\";\nimport { ProxyConfigProvider } from \"../../utils/ProxyConfigProvider\";\nimport { ThreadListRuntimeCore } from \"./ThreadListRuntimeCore\";\n\nexport abstract class BaseAssistantRuntimeCore implements AssistantRuntimeCore {\n protected readonly _proxyConfigProvider = new ProxyConfigProvider();\n public abstract get threads(): ThreadListRuntimeCore;\n\n constructor() {}\n\n public registerModelConfigProvider(\n provider: ModelConfigProvider,\n ): Unsubscribe {\n return this._proxyConfigProvider.registerModelConfigProvider(provider);\n }\n}\n"],"mappings":";AAGA,SAAS,2BAA2B;AAG7B,IAAe,2BAAf,MAAwE;AAAA,EAC1D,uBAAuB,IAAI,oBAAoB;AAAA,EAGlE,cAAc;AAAA,EAAC;AAAA,EAER,4BACL,UACa;AACb,WAAO,KAAK,qBAAqB,4BAA4B,QAAQ;AAAA,EACvE;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/core/BaseAssistantRuntimeCore.tsx"],"sourcesContent":["import { type ModelContextProvider } from \"../../model-context/ModelContextTypes\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\nimport type { AssistantRuntimeCore } from \"./AssistantRuntimeCore\";\nimport { CompositeContextProvider } from \"../../utils/CompositeContextProvider\";\nimport { ThreadListRuntimeCore } from \"./ThreadListRuntimeCore\";\n\nexport abstract class BaseAssistantRuntimeCore implements AssistantRuntimeCore {\n protected readonly _contextProvider = new CompositeContextProvider();\n public abstract get threads(): ThreadListRuntimeCore;\n\n public registerModelContextProvider(\n provider: ModelContextProvider,\n ): Unsubscribe {\n return this._contextProvider.registerModelContextProvider(provider);\n }\n}\n"],"mappings":";AAGA,SAAS,gCAAgC;AAGlC,IAAe,2BAAf,MAAwE;AAAA,EAC1D,mBAAmB,IAAI,yBAAyB;AAAA,EAG5D,6BACL,UACa;AACb,WAAO,KAAK,iBAAiB,6BAA6B,QAAQ;AAAA,EACpE;AACF;","names":[]}
@@ -1,4 +1,4 @@
1
- import type { ModelConfigProvider, AppendMessage, Unsubscribe } from "../../types";
1
+ import type { AppendMessage, Unsubscribe } from "../../types";
2
2
  import { ExportedMessageRepository, MessageRepository } from "../utils/MessageRepository";
3
3
  import { DefaultThreadComposerRuntimeCore } from "../composer/DefaultThreadComposerRuntimeCore";
4
4
  import { AddToolResultOptions, ThreadSuggestion, SubmitFeedbackOptions, ThreadRuntimeCore, SpeechState, RuntimeCapabilities, SubmittedFeedback, ThreadRuntimeEventType, StartRunConfig } from "../core/ThreadRuntimeCore";
@@ -6,13 +6,14 @@ import { DefaultEditComposerRuntimeCore } from "../composer/DefaultEditComposerR
6
6
  import { SpeechSynthesisAdapter } from "../adapters/speech/SpeechAdapterTypes";
7
7
  import { FeedbackAdapter } from "../adapters/feedback/FeedbackAdapter";
8
8
  import { AttachmentAdapter } from "../adapters/attachment";
9
+ import { ModelContextProvider } from "../../model-context";
9
10
  type BaseThreadAdapters = {
10
11
  speech?: SpeechSynthesisAdapter | undefined;
11
12
  feedback?: FeedbackAdapter | undefined;
12
13
  attachments?: AttachmentAdapter | undefined;
13
14
  };
14
15
  export declare abstract class BaseThreadRuntimeCore implements ThreadRuntimeCore {
15
- private readonly _configProvider;
16
+ private readonly _contextProvider;
16
17
  private _subscriptions;
17
18
  private _isInitialized;
18
19
  protected readonly repository: MessageRepository;
@@ -27,8 +28,8 @@ export declare abstract class BaseThreadRuntimeCore implements ThreadRuntimeCore
27
28
  abstract cancelRun(): void;
28
29
  get messages(): import("../..").ThreadMessage[];
29
30
  readonly composer: DefaultThreadComposerRuntimeCore;
30
- constructor(_configProvider: ModelConfigProvider);
31
- getModelConfig(): import("../..").ModelConfig;
31
+ constructor(_contextProvider: ModelContextProvider);
32
+ getModelContext(): import("../..").AssistantConfig;
32
33
  private _editComposers;
33
34
  getEditComposer(messageId: string): DefaultEditComposerRuntimeCore | undefined;
34
35
  beginEdit(messageId: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseThreadRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/BaseThreadRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EACb,WAAW,EACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,iBAAiB,EAClB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAG3D,KAAK,kBAAkB,GAAG;IACxB,MAAM,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACvC,WAAW,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF,8BAAsB,qBAAsB,YAAW,iBAAiB;IAsB1D,OAAO,CAAC,QAAQ,CAAC,eAAe;IArB5C,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,cAAc,CAAS;IAE/B,SAAS,CAAC,QAAQ,CAAC,UAAU,oBAA2B;IACxD,aAAoB,QAAQ,IAAI,kBAAkB,GAAG,SAAS,CAAC;IAC/D,aAAoB,UAAU,IAAI,OAAO,CAAC;IAC1C,aAAoB,WAAW,IAAI,SAAS,gBAAgB,EAAE,CAAC;IAC/D,aAAoB,MAAM,IAAI,OAAO,CAAC;IAEtC,aAAoB,YAAY,IAAI,mBAAmB,CAAC;aACxC,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;aACpC,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;aACtC,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;aAClD,SAAS,IAAI,IAAI;IAEjC,IAAW,QAAQ,oCAElB;IAED,SAAgB,QAAQ,mCAA8C;gBAEzC,eAAe,EAAE,mBAAmB;IAE1D,cAAc;IAIrB,OAAO,CAAC,cAAc,CAAqD;IACpE,eAAe,CAAC,SAAS,EAAE,MAAM;IAGjC,SAAS,CAAC,SAAS,EAAE,MAAM;IAe3B,cAAc,CAAC,SAAS,EAAE,MAAM;;;;IAIhC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAIxC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAK7C,SAAS,CAAC,kBAAkB;IAIrB,uBAAuB,CAAC,KAAK,EAAE,sBAAsB;IAOrD,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW;IAKnD,OAAO,CAAC,kBAAkB,CAAyC;IAE5D,oBAAoB,CAAC,SAAS,EAAE,MAAM;IAItC,cAAc,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,qBAAqB;IAWhE,OAAO,CAAC,aAAa,CAA0B;IACxC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;IAEhC,KAAK,CAAC,SAAS,EAAE,MAAM;IA8BvB,YAAY;IAMnB,SAAS,CAAC,iBAAiB;IAOpB,MAAM;IAIN,MAAM,CAAC,IAAI,EAAE,yBAAyB;IAO7C,OAAO,CAAC,iBAAiB,CAGrB;IAEG,WAAW,CAAC,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,IAAI;CAiBvE"}
1
+ {"version":3,"file":"BaseThreadRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/BaseThreadRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EACL,yBAAyB,EACzB,iBAAiB,EAClB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gCAAgC,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AAC5F,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE3D,KAAK,kBAAkB,GAAG;IACxB,MAAM,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IACvC,WAAW,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF,8BAAsB,qBAAsB,YAAW,iBAAiB;IAsB1D,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IArB7C,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,cAAc,CAAS;IAE/B,SAAS,CAAC,QAAQ,CAAC,UAAU,oBAA2B;IACxD,aAAoB,QAAQ,IAAI,kBAAkB,GAAG,SAAS,CAAC;IAC/D,aAAoB,UAAU,IAAI,OAAO,CAAC;IAC1C,aAAoB,WAAW,IAAI,SAAS,gBAAgB,EAAE,CAAC;IAC/D,aAAoB,MAAM,IAAI,OAAO,CAAC;IAEtC,aAAoB,YAAY,IAAI,mBAAmB,CAAC;aACxC,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;aACpC,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;aACtC,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;aAClD,SAAS,IAAI,IAAI;IAEjC,IAAW,QAAQ,oCAElB;IAED,SAAgB,QAAQ,mCAA8C;gBAEzC,gBAAgB,EAAE,oBAAoB;IAE5D,eAAe;IAItB,OAAO,CAAC,cAAc,CAAqD;IACpE,eAAe,CAAC,SAAS,EAAE,MAAM;IAGjC,SAAS,CAAC,SAAS,EAAE,MAAM;IAe3B,cAAc,CAAC,SAAS,EAAE,MAAM;;;;IAIhC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAIxC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAK7C,SAAS,CAAC,kBAAkB;IAIrB,uBAAuB,CAAC,KAAK,EAAE,sBAAsB;IAOrD,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW;IAKnD,OAAO,CAAC,kBAAkB,CAAyC;IAE5D,oBAAoB,CAAC,SAAS,EAAE,MAAM;IAItC,cAAc,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,qBAAqB;IAWhE,OAAO,CAAC,aAAa,CAA0B;IACxC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;IAEhC,KAAK,CAAC,SAAS,EAAE,MAAM;IA8BvB,YAAY;IAMnB,SAAS,CAAC,iBAAiB;IAOpB,MAAM;IAIN,MAAM,CAAC,IAAI,EAAE,yBAAyB;IAO7C,OAAO,CAAC,iBAAiB,CAGrB;IAEG,WAAW,CAAC,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,IAAI;CAiBvE"}
@@ -28,8 +28,8 @@ var import_DefaultThreadComposerRuntimeCore = require("../composer/DefaultThread
28
28
  var import_DefaultEditComposerRuntimeCore = require("../composer/DefaultEditComposerRuntimeCore.js");
29
29
  var import_getThreadMessageText = require("../../utils/getThreadMessageText.js");
30
30
  var BaseThreadRuntimeCore = class {
31
- constructor(_configProvider) {
32
- this._configProvider = _configProvider;
31
+ constructor(_contextProvider) {
32
+ this._contextProvider = _contextProvider;
33
33
  }
34
34
  _subscriptions = /* @__PURE__ */ new Set();
35
35
  _isInitialized = false;
@@ -38,8 +38,8 @@ var BaseThreadRuntimeCore = class {
38
38
  return this.repository.getMessages();
39
39
  }
40
40
  composer = new import_DefaultThreadComposerRuntimeCore.DefaultThreadComposerRuntimeCore(this);
41
- getModelConfig() {
42
- return this._configProvider.getModelConfig();
41
+ getModelContext() {
42
+ return this._contextProvider.getModelContext();
43
43
  }
44
44
  _editComposers = /* @__PURE__ */ new Map();
45
45
  getEditComposer(messageId) {
@@ -139,8 +139,8 @@ var BaseThreadRuntimeCore = class {
139
139
  }
140
140
  _eventSubscribers = /* @__PURE__ */ new Map();
141
141
  unstable_on(event, callback) {
142
- if (event === "model-config-update") {
143
- return this._configProvider.subscribe?.(callback) ?? (() => {
142
+ if (event === "model-context-update") {
143
+ return this._contextProvider.subscribe?.(callback) ?? (() => {
144
144
  });
145
145
  }
146
146
  const subscribers = this._eventSubscribers.get(event);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/core/BaseThreadRuntimeCore.tsx"],"sourcesContent":["import type {\n ModelConfigProvider,\n AppendMessage,\n Unsubscribe,\n} from \"../../types\";\nimport {\n ExportedMessageRepository,\n MessageRepository,\n} from \"../utils/MessageRepository\";\nimport { DefaultThreadComposerRuntimeCore } from \"../composer/DefaultThreadComposerRuntimeCore\";\nimport {\n AddToolResultOptions,\n ThreadSuggestion,\n SubmitFeedbackOptions,\n ThreadRuntimeCore,\n SpeechState,\n RuntimeCapabilities,\n SubmittedFeedback,\n ThreadRuntimeEventType,\n StartRunConfig,\n} from \"../core/ThreadRuntimeCore\";\nimport { DefaultEditComposerRuntimeCore } from \"../composer/DefaultEditComposerRuntimeCore\";\nimport { SpeechSynthesisAdapter } from \"../adapters/speech/SpeechAdapterTypes\";\nimport { FeedbackAdapter } from \"../adapters/feedback/FeedbackAdapter\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport { getThreadMessageText } from \"../../utils/getThreadMessageText\";\n\ntype BaseThreadAdapters = {\n speech?: SpeechSynthesisAdapter | undefined;\n feedback?: FeedbackAdapter | undefined;\n attachments?: AttachmentAdapter | undefined;\n};\n\nexport abstract class BaseThreadRuntimeCore implements ThreadRuntimeCore {\n private _subscriptions = new Set<() => void>();\n private _isInitialized = false;\n\n protected readonly repository = new MessageRepository();\n public abstract get adapters(): BaseThreadAdapters | undefined;\n public abstract get isDisabled(): boolean;\n public abstract get suggestions(): readonly ThreadSuggestion[];\n public abstract get extras(): unknown;\n\n public abstract get capabilities(): RuntimeCapabilities;\n public abstract append(message: AppendMessage): void;\n public abstract startRun(config: StartRunConfig): void;\n public abstract addToolResult(options: AddToolResultOptions): void;\n public abstract cancelRun(): void;\n\n public get messages() {\n return this.repository.getMessages();\n }\n\n public readonly composer = new DefaultThreadComposerRuntimeCore(this);\n\n constructor(private readonly _configProvider: ModelConfigProvider) {}\n\n public getModelConfig() {\n return this._configProvider.getModelConfig();\n }\n\n private _editComposers = new Map<string, DefaultEditComposerRuntimeCore>();\n public getEditComposer(messageId: string) {\n return this._editComposers.get(messageId);\n }\n public beginEdit(messageId: string) {\n if (this._editComposers.has(messageId))\n throw new Error(\"Edit already in progress\");\n\n this._editComposers.set(\n messageId,\n new DefaultEditComposerRuntimeCore(\n this,\n () => this._editComposers.delete(messageId),\n this.repository.getMessage(messageId),\n ),\n );\n this._notifySubscribers();\n }\n\n public getMessageById(messageId: string) {\n return this.repository.getMessage(messageId);\n }\n\n public getBranches(messageId: string): string[] {\n return this.repository.getBranches(messageId);\n }\n\n public switchToBranch(branchId: string): void {\n this.repository.switchToBranch(branchId);\n this._notifySubscribers();\n }\n\n protected _notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n public _notifyEventSubscribers(event: ThreadRuntimeEventType) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n\n for (const callback of subscribers) callback();\n }\n\n public subscribe(callback: () => void): Unsubscribe {\n this._subscriptions.add(callback);\n return () => this._subscriptions.delete(callback);\n }\n\n private _submittedFeedback: Record<string, SubmittedFeedback> = {};\n\n public getSubmittedFeedback(messageId: string) {\n return this._submittedFeedback[messageId];\n }\n\n public submitFeedback({ messageId, type }: SubmitFeedbackOptions) {\n const adapter = this.adapters?.feedback;\n if (!adapter) throw new Error(\"Feedback adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n adapter.submit({ message, type });\n\n this._submittedFeedback[messageId] = { type };\n this._notifySubscribers();\n }\n\n private _stopSpeaking: Unsubscribe | undefined;\n public speech: SpeechState | undefined;\n\n public speak(messageId: string) {\n const adapter = this.adapters?.speech;\n if (!adapter) throw new Error(\"Speech adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n\n this._stopSpeaking?.();\n\n const utterance = adapter.speak(getThreadMessageText(message));\n const unsub = utterance.subscribe(() => {\n if (utterance.status.type === \"ended\") {\n this._stopSpeaking = undefined;\n this.speech = undefined;\n } else {\n this.speech = { messageId, status: utterance.status };\n }\n this._notifySubscribers();\n });\n\n this.speech = { messageId, status: utterance.status };\n this._notifySubscribers();\n\n this._stopSpeaking = () => {\n utterance.cancel();\n unsub();\n this.speech = undefined;\n this._stopSpeaking = undefined;\n };\n }\n\n public stopSpeaking() {\n if (!this._stopSpeaking) throw new Error(\"No message is being spoken\");\n this._stopSpeaking();\n this._notifySubscribers();\n }\n\n protected ensureInitialized() {\n if (!this._isInitialized) {\n this._isInitialized = true;\n this._notifyEventSubscribers(\"initialize\");\n }\n }\n\n public export() {\n return this.repository.export();\n }\n\n public import(data: ExportedMessageRepository) {\n this.ensureInitialized();\n\n this.repository.import(data);\n this._notifySubscribers();\n }\n\n private _eventSubscribers = new Map<\n ThreadRuntimeEventType,\n Set<() => void>\n >();\n\n public unstable_on(event: ThreadRuntimeEventType, callback: () => void) {\n if (event === \"model-config-update\") {\n return this._configProvider.subscribe?.(callback) ?? (() => {});\n }\n\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) {\n this._eventSubscribers.set(event, new Set([callback]));\n } else {\n subscribers.add(callback);\n }\n\n return () => {\n const subscribers = this._eventSubscribers.get(event)!;\n subscribers.delete(callback);\n };\n }\n}\n"],"mappings":"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","names":["subscribers"]}
1
+ {"version":3,"sources":["../../../src/runtimes/core/BaseThreadRuntimeCore.tsx"],"sourcesContent":["import type { AppendMessage, Unsubscribe } from \"../../types\";\nimport {\n ExportedMessageRepository,\n MessageRepository,\n} from \"../utils/MessageRepository\";\nimport { DefaultThreadComposerRuntimeCore } from \"../composer/DefaultThreadComposerRuntimeCore\";\nimport {\n AddToolResultOptions,\n ThreadSuggestion,\n SubmitFeedbackOptions,\n ThreadRuntimeCore,\n SpeechState,\n RuntimeCapabilities,\n SubmittedFeedback,\n ThreadRuntimeEventType,\n StartRunConfig,\n} from \"../core/ThreadRuntimeCore\";\nimport { DefaultEditComposerRuntimeCore } from \"../composer/DefaultEditComposerRuntimeCore\";\nimport { SpeechSynthesisAdapter } from \"../adapters/speech/SpeechAdapterTypes\";\nimport { FeedbackAdapter } from \"../adapters/feedback/FeedbackAdapter\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport { getThreadMessageText } from \"../../utils/getThreadMessageText\";\nimport { ModelContextProvider } from \"../../model-context\";\n\ntype BaseThreadAdapters = {\n speech?: SpeechSynthesisAdapter | undefined;\n feedback?: FeedbackAdapter | undefined;\n attachments?: AttachmentAdapter | undefined;\n};\n\nexport abstract class BaseThreadRuntimeCore implements ThreadRuntimeCore {\n private _subscriptions = new Set<() => void>();\n private _isInitialized = false;\n\n protected readonly repository = new MessageRepository();\n public abstract get adapters(): BaseThreadAdapters | undefined;\n public abstract get isDisabled(): boolean;\n public abstract get suggestions(): readonly ThreadSuggestion[];\n public abstract get extras(): unknown;\n\n public abstract get capabilities(): RuntimeCapabilities;\n public abstract append(message: AppendMessage): void;\n public abstract startRun(config: StartRunConfig): void;\n public abstract addToolResult(options: AddToolResultOptions): void;\n public abstract cancelRun(): void;\n\n public get messages() {\n return this.repository.getMessages();\n }\n\n public readonly composer = new DefaultThreadComposerRuntimeCore(this);\n\n constructor(private readonly _contextProvider: ModelContextProvider) {}\n\n public getModelContext() {\n return this._contextProvider.getModelContext();\n }\n\n private _editComposers = new Map<string, DefaultEditComposerRuntimeCore>();\n public getEditComposer(messageId: string) {\n return this._editComposers.get(messageId);\n }\n public beginEdit(messageId: string) {\n if (this._editComposers.has(messageId))\n throw new Error(\"Edit already in progress\");\n\n this._editComposers.set(\n messageId,\n new DefaultEditComposerRuntimeCore(\n this,\n () => this._editComposers.delete(messageId),\n this.repository.getMessage(messageId),\n ),\n );\n this._notifySubscribers();\n }\n\n public getMessageById(messageId: string) {\n return this.repository.getMessage(messageId);\n }\n\n public getBranches(messageId: string): string[] {\n return this.repository.getBranches(messageId);\n }\n\n public switchToBranch(branchId: string): void {\n this.repository.switchToBranch(branchId);\n this._notifySubscribers();\n }\n\n protected _notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n public _notifyEventSubscribers(event: ThreadRuntimeEventType) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n\n for (const callback of subscribers) callback();\n }\n\n public subscribe(callback: () => void): Unsubscribe {\n this._subscriptions.add(callback);\n return () => this._subscriptions.delete(callback);\n }\n\n private _submittedFeedback: Record<string, SubmittedFeedback> = {};\n\n public getSubmittedFeedback(messageId: string) {\n return this._submittedFeedback[messageId];\n }\n\n public submitFeedback({ messageId, type }: SubmitFeedbackOptions) {\n const adapter = this.adapters?.feedback;\n if (!adapter) throw new Error(\"Feedback adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n adapter.submit({ message, type });\n\n this._submittedFeedback[messageId] = { type };\n this._notifySubscribers();\n }\n\n private _stopSpeaking: Unsubscribe | undefined;\n public speech: SpeechState | undefined;\n\n public speak(messageId: string) {\n const adapter = this.adapters?.speech;\n if (!adapter) throw new Error(\"Speech adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n\n this._stopSpeaking?.();\n\n const utterance = adapter.speak(getThreadMessageText(message));\n const unsub = utterance.subscribe(() => {\n if (utterance.status.type === \"ended\") {\n this._stopSpeaking = undefined;\n this.speech = undefined;\n } else {\n this.speech = { messageId, status: utterance.status };\n }\n this._notifySubscribers();\n });\n\n this.speech = { messageId, status: utterance.status };\n this._notifySubscribers();\n\n this._stopSpeaking = () => {\n utterance.cancel();\n unsub();\n this.speech = undefined;\n this._stopSpeaking = undefined;\n };\n }\n\n public stopSpeaking() {\n if (!this._stopSpeaking) throw new Error(\"No message is being spoken\");\n this._stopSpeaking();\n this._notifySubscribers();\n }\n\n protected ensureInitialized() {\n if (!this._isInitialized) {\n this._isInitialized = true;\n this._notifyEventSubscribers(\"initialize\");\n }\n }\n\n public export() {\n return this.repository.export();\n }\n\n public import(data: ExportedMessageRepository) {\n this.ensureInitialized();\n\n this.repository.import(data);\n this._notifySubscribers();\n }\n\n private _eventSubscribers = new Map<\n ThreadRuntimeEventType,\n Set<() => void>\n >();\n\n public unstable_on(event: ThreadRuntimeEventType, callback: () => void) {\n if (event === \"model-context-update\") {\n return this._contextProvider.subscribe?.(callback) ?? (() => {});\n }\n\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) {\n this._eventSubscribers.set(event, new Set([callback]));\n } else {\n subscribers.add(callback);\n }\n\n return () => {\n const subscribers = this._eventSubscribers.get(event)!;\n subscribers.delete(callback);\n };\n }\n}\n"],"mappings":"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","names":["subscribers"]}
@@ -6,8 +6,8 @@ import { DefaultThreadComposerRuntimeCore } from "../composer/DefaultThreadCompo
6
6
  import { DefaultEditComposerRuntimeCore } from "../composer/DefaultEditComposerRuntimeCore.mjs";
7
7
  import { getThreadMessageText } from "../../utils/getThreadMessageText.mjs";
8
8
  var BaseThreadRuntimeCore = class {
9
- constructor(_configProvider) {
10
- this._configProvider = _configProvider;
9
+ constructor(_contextProvider) {
10
+ this._contextProvider = _contextProvider;
11
11
  }
12
12
  _subscriptions = /* @__PURE__ */ new Set();
13
13
  _isInitialized = false;
@@ -16,8 +16,8 @@ var BaseThreadRuntimeCore = class {
16
16
  return this.repository.getMessages();
17
17
  }
18
18
  composer = new DefaultThreadComposerRuntimeCore(this);
19
- getModelConfig() {
20
- return this._configProvider.getModelConfig();
19
+ getModelContext() {
20
+ return this._contextProvider.getModelContext();
21
21
  }
22
22
  _editComposers = /* @__PURE__ */ new Map();
23
23
  getEditComposer(messageId) {
@@ -117,8 +117,8 @@ var BaseThreadRuntimeCore = class {
117
117
  }
118
118
  _eventSubscribers = /* @__PURE__ */ new Map();
119
119
  unstable_on(event, callback) {
120
- if (event === "model-config-update") {
121
- return this._configProvider.subscribe?.(callback) ?? (() => {
120
+ if (event === "model-context-update") {
121
+ return this._contextProvider.subscribe?.(callback) ?? (() => {
122
122
  });
123
123
  }
124
124
  const subscribers = this._eventSubscribers.get(event);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/core/BaseThreadRuntimeCore.tsx"],"sourcesContent":["import type {\n ModelConfigProvider,\n AppendMessage,\n Unsubscribe,\n} from \"../../types\";\nimport {\n ExportedMessageRepository,\n MessageRepository,\n} from \"../utils/MessageRepository\";\nimport { DefaultThreadComposerRuntimeCore } from \"../composer/DefaultThreadComposerRuntimeCore\";\nimport {\n AddToolResultOptions,\n ThreadSuggestion,\n SubmitFeedbackOptions,\n ThreadRuntimeCore,\n SpeechState,\n RuntimeCapabilities,\n SubmittedFeedback,\n ThreadRuntimeEventType,\n StartRunConfig,\n} from \"../core/ThreadRuntimeCore\";\nimport { DefaultEditComposerRuntimeCore } from \"../composer/DefaultEditComposerRuntimeCore\";\nimport { SpeechSynthesisAdapter } from \"../adapters/speech/SpeechAdapterTypes\";\nimport { FeedbackAdapter } from \"../adapters/feedback/FeedbackAdapter\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport { getThreadMessageText } from \"../../utils/getThreadMessageText\";\n\ntype BaseThreadAdapters = {\n speech?: SpeechSynthesisAdapter | undefined;\n feedback?: FeedbackAdapter | undefined;\n attachments?: AttachmentAdapter | undefined;\n};\n\nexport abstract class BaseThreadRuntimeCore implements ThreadRuntimeCore {\n private _subscriptions = new Set<() => void>();\n private _isInitialized = false;\n\n protected readonly repository = new MessageRepository();\n public abstract get adapters(): BaseThreadAdapters | undefined;\n public abstract get isDisabled(): boolean;\n public abstract get suggestions(): readonly ThreadSuggestion[];\n public abstract get extras(): unknown;\n\n public abstract get capabilities(): RuntimeCapabilities;\n public abstract append(message: AppendMessage): void;\n public abstract startRun(config: StartRunConfig): void;\n public abstract addToolResult(options: AddToolResultOptions): void;\n public abstract cancelRun(): void;\n\n public get messages() {\n return this.repository.getMessages();\n }\n\n public readonly composer = new DefaultThreadComposerRuntimeCore(this);\n\n constructor(private readonly _configProvider: ModelConfigProvider) {}\n\n public getModelConfig() {\n return this._configProvider.getModelConfig();\n }\n\n private _editComposers = new Map<string, DefaultEditComposerRuntimeCore>();\n public getEditComposer(messageId: string) {\n return this._editComposers.get(messageId);\n }\n public beginEdit(messageId: string) {\n if (this._editComposers.has(messageId))\n throw new Error(\"Edit already in progress\");\n\n this._editComposers.set(\n messageId,\n new DefaultEditComposerRuntimeCore(\n this,\n () => this._editComposers.delete(messageId),\n this.repository.getMessage(messageId),\n ),\n );\n this._notifySubscribers();\n }\n\n public getMessageById(messageId: string) {\n return this.repository.getMessage(messageId);\n }\n\n public getBranches(messageId: string): string[] {\n return this.repository.getBranches(messageId);\n }\n\n public switchToBranch(branchId: string): void {\n this.repository.switchToBranch(branchId);\n this._notifySubscribers();\n }\n\n protected _notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n public _notifyEventSubscribers(event: ThreadRuntimeEventType) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n\n for (const callback of subscribers) callback();\n }\n\n public subscribe(callback: () => void): Unsubscribe {\n this._subscriptions.add(callback);\n return () => this._subscriptions.delete(callback);\n }\n\n private _submittedFeedback: Record<string, SubmittedFeedback> = {};\n\n public getSubmittedFeedback(messageId: string) {\n return this._submittedFeedback[messageId];\n }\n\n public submitFeedback({ messageId, type }: SubmitFeedbackOptions) {\n const adapter = this.adapters?.feedback;\n if (!adapter) throw new Error(\"Feedback adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n adapter.submit({ message, type });\n\n this._submittedFeedback[messageId] = { type };\n this._notifySubscribers();\n }\n\n private _stopSpeaking: Unsubscribe | undefined;\n public speech: SpeechState | undefined;\n\n public speak(messageId: string) {\n const adapter = this.adapters?.speech;\n if (!adapter) throw new Error(\"Speech adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n\n this._stopSpeaking?.();\n\n const utterance = adapter.speak(getThreadMessageText(message));\n const unsub = utterance.subscribe(() => {\n if (utterance.status.type === \"ended\") {\n this._stopSpeaking = undefined;\n this.speech = undefined;\n } else {\n this.speech = { messageId, status: utterance.status };\n }\n this._notifySubscribers();\n });\n\n this.speech = { messageId, status: utterance.status };\n this._notifySubscribers();\n\n this._stopSpeaking = () => {\n utterance.cancel();\n unsub();\n this.speech = undefined;\n this._stopSpeaking = undefined;\n };\n }\n\n public stopSpeaking() {\n if (!this._stopSpeaking) throw new Error(\"No message is being spoken\");\n this._stopSpeaking();\n this._notifySubscribers();\n }\n\n protected ensureInitialized() {\n if (!this._isInitialized) {\n this._isInitialized = true;\n this._notifyEventSubscribers(\"initialize\");\n }\n }\n\n public export() {\n return this.repository.export();\n }\n\n public import(data: ExportedMessageRepository) {\n this.ensureInitialized();\n\n this.repository.import(data);\n this._notifySubscribers();\n }\n\n private _eventSubscribers = new Map<\n ThreadRuntimeEventType,\n Set<() => void>\n >();\n\n public unstable_on(event: ThreadRuntimeEventType, callback: () => void) {\n if (event === \"model-config-update\") {\n return this._configProvider.subscribe?.(callback) ?? (() => {});\n }\n\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) {\n this._eventSubscribers.set(event, new Set([callback]));\n } else {\n subscribers.add(callback);\n }\n\n return () => {\n const subscribers = this._eventSubscribers.get(event)!;\n subscribers.delete(callback);\n };\n }\n}\n"],"mappings":";AAKA;AAAA,EAEE;AAAA,OACK;AACP,SAAS,wCAAwC;AAYjD,SAAS,sCAAsC;AAI/C,SAAS,4BAA4B;AAQ9B,IAAe,wBAAf,MAAkE;AAAA,EAsBvE,YAA6B,iBAAsC;AAAtC;AAAA,EAAuC;AAAA,EArB5D,iBAAiB,oBAAI,IAAgB;AAAA,EACrC,iBAAiB;AAAA,EAEN,aAAa,IAAI,kBAAkB;AAAA,EAYtD,IAAW,WAAW;AACpB,WAAO,KAAK,WAAW,YAAY;AAAA,EACrC;AAAA,EAEgB,WAAW,IAAI,iCAAiC,IAAI;AAAA,EAI7D,iBAAiB;AACtB,WAAO,KAAK,gBAAgB,eAAe;AAAA,EAC7C;AAAA,EAEQ,iBAAiB,oBAAI,IAA4C;AAAA,EAClE,gBAAgB,WAAmB;AACxC,WAAO,KAAK,eAAe,IAAI,SAAS;AAAA,EAC1C;AAAA,EACO,UAAU,WAAmB;AAClC,QAAI,KAAK,eAAe,IAAI,SAAS;AACnC,YAAM,IAAI,MAAM,0BAA0B;AAE5C,SAAK,eAAe;AAAA,MAClB;AAAA,MACA,IAAI;AAAA,QACF;AAAA,QACA,MAAM,KAAK,eAAe,OAAO,SAAS;AAAA,QAC1C,KAAK,WAAW,WAAW,SAAS;AAAA,MACtC;AAAA,IACF;AACA,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEO,eAAe,WAAmB;AACvC,WAAO,KAAK,WAAW,WAAW,SAAS;AAAA,EAC7C;AAAA,EAEO,YAAY,WAA6B;AAC9C,WAAO,KAAK,WAAW,YAAY,SAAS;AAAA,EAC9C;AAAA,EAEO,eAAe,UAAwB;AAC5C,SAAK,WAAW,eAAe,QAAQ;AACvC,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEU,qBAAqB;AAC7B,eAAW,YAAY,KAAK,eAAgB,UAAS;AAAA,EACvD;AAAA,EAEO,wBAAwB,OAA+B;AAC5D,UAAM,cAAc,KAAK,kBAAkB,IAAI,KAAK;AACpD,QAAI,CAAC,YAAa;AAElB,eAAW,YAAY,YAAa,UAAS;AAAA,EAC/C;AAAA,EAEO,UAAU,UAAmC;AAClD,SAAK,eAAe,IAAI,QAAQ;AAChC,WAAO,MAAM,KAAK,eAAe,OAAO,QAAQ;AAAA,EAClD;AAAA,EAEQ,qBAAwD,CAAC;AAAA,EAE1D,qBAAqB,WAAmB;AAC7C,WAAO,KAAK,mBAAmB,SAAS;AAAA,EAC1C;AAAA,EAEO,eAAe,EAAE,WAAW,KAAK,GAA0B;AAChE,UAAM,UAAU,KAAK,UAAU;AAC/B,QAAI,CAAC,QAAS,OAAM,IAAI,MAAM,iCAAiC;AAE/D,UAAM,EAAE,QAAQ,IAAI,KAAK,WAAW,WAAW,SAAS;AACxD,YAAQ,OAAO,EAAE,SAAS,KAAK,CAAC;AAEhC,SAAK,mBAAmB,SAAS,IAAI,EAAE,KAAK;AAC5C,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEQ;AAAA,EACD;AAAA,EAEA,MAAM,WAAmB;AAC9B,UAAM,UAAU,KAAK,UAAU;AAC/B,QAAI,CAAC,QAAS,OAAM,IAAI,MAAM,+BAA+B;AAE7D,UAAM,EAAE,QAAQ,IAAI,KAAK,WAAW,WAAW,SAAS;AAExD,SAAK,gBAAgB;AAErB,UAAM,YAAY,QAAQ,MAAM,qBAAqB,OAAO,CAAC;AAC7D,UAAM,QAAQ,UAAU,UAAU,MAAM;AACtC,UAAI,UAAU,OAAO,SAAS,SAAS;AACrC,aAAK,gBAAgB;AACrB,aAAK,SAAS;AAAA,MAChB,OAAO;AACL,aAAK,SAAS,EAAE,WAAW,QAAQ,UAAU,OAAO;AAAA,MACtD;AACA,WAAK,mBAAmB;AAAA,IAC1B,CAAC;AAED,SAAK,SAAS,EAAE,WAAW,QAAQ,UAAU,OAAO;AACpD,SAAK,mBAAmB;AAExB,SAAK,gBAAgB,MAAM;AACzB,gBAAU,OAAO;AACjB,YAAM;AACN,WAAK,SAAS;AACd,WAAK,gBAAgB;AAAA,IACvB;AAAA,EACF;AAAA,EAEO,eAAe;AACpB,QAAI,CAAC,KAAK,cAAe,OAAM,IAAI,MAAM,4BAA4B;AACrE,SAAK,cAAc;AACnB,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEU,oBAAoB;AAC5B,QAAI,CAAC,KAAK,gBAAgB;AACxB,WAAK,iBAAiB;AACtB,WAAK,wBAAwB,YAAY;AAAA,IAC3C;AAAA,EACF;AAAA,EAEO,SAAS;AACd,WAAO,KAAK,WAAW,OAAO;AAAA,EAChC;AAAA,EAEO,OAAO,MAAiC;AAC7C,SAAK,kBAAkB;AAEvB,SAAK,WAAW,OAAO,IAAI;AAC3B,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEQ,oBAAoB,oBAAI,IAG9B;AAAA,EAEK,YAAY,OAA+B,UAAsB;AACtE,QAAI,UAAU,uBAAuB;AACnC,aAAO,KAAK,gBAAgB,YAAY,QAAQ,MAAM,MAAM;AAAA,MAAC;AAAA,IAC/D;AAEA,UAAM,cAAc,KAAK,kBAAkB,IAAI,KAAK;AACpD,QAAI,CAAC,aAAa;AAChB,WAAK,kBAAkB,IAAI,OAAO,oBAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;AAAA,IACvD,OAAO;AACL,kBAAY,IAAI,QAAQ;AAAA,IAC1B;AAEA,WAAO,MAAM;AACX,YAAMA,eAAc,KAAK,kBAAkB,IAAI,KAAK;AACpD,MAAAA,aAAY,OAAO,QAAQ;AAAA,IAC7B;AAAA,EACF;AACF;","names":["subscribers"]}
1
+ {"version":3,"sources":["../../../src/runtimes/core/BaseThreadRuntimeCore.tsx"],"sourcesContent":["import type { AppendMessage, Unsubscribe } from \"../../types\";\nimport {\n ExportedMessageRepository,\n MessageRepository,\n} from \"../utils/MessageRepository\";\nimport { DefaultThreadComposerRuntimeCore } from \"../composer/DefaultThreadComposerRuntimeCore\";\nimport {\n AddToolResultOptions,\n ThreadSuggestion,\n SubmitFeedbackOptions,\n ThreadRuntimeCore,\n SpeechState,\n RuntimeCapabilities,\n SubmittedFeedback,\n ThreadRuntimeEventType,\n StartRunConfig,\n} from \"../core/ThreadRuntimeCore\";\nimport { DefaultEditComposerRuntimeCore } from \"../composer/DefaultEditComposerRuntimeCore\";\nimport { SpeechSynthesisAdapter } from \"../adapters/speech/SpeechAdapterTypes\";\nimport { FeedbackAdapter } from \"../adapters/feedback/FeedbackAdapter\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport { getThreadMessageText } from \"../../utils/getThreadMessageText\";\nimport { ModelContextProvider } from \"../../model-context\";\n\ntype BaseThreadAdapters = {\n speech?: SpeechSynthesisAdapter | undefined;\n feedback?: FeedbackAdapter | undefined;\n attachments?: AttachmentAdapter | undefined;\n};\n\nexport abstract class BaseThreadRuntimeCore implements ThreadRuntimeCore {\n private _subscriptions = new Set<() => void>();\n private _isInitialized = false;\n\n protected readonly repository = new MessageRepository();\n public abstract get adapters(): BaseThreadAdapters | undefined;\n public abstract get isDisabled(): boolean;\n public abstract get suggestions(): readonly ThreadSuggestion[];\n public abstract get extras(): unknown;\n\n public abstract get capabilities(): RuntimeCapabilities;\n public abstract append(message: AppendMessage): void;\n public abstract startRun(config: StartRunConfig): void;\n public abstract addToolResult(options: AddToolResultOptions): void;\n public abstract cancelRun(): void;\n\n public get messages() {\n return this.repository.getMessages();\n }\n\n public readonly composer = new DefaultThreadComposerRuntimeCore(this);\n\n constructor(private readonly _contextProvider: ModelContextProvider) {}\n\n public getModelContext() {\n return this._contextProvider.getModelContext();\n }\n\n private _editComposers = new Map<string, DefaultEditComposerRuntimeCore>();\n public getEditComposer(messageId: string) {\n return this._editComposers.get(messageId);\n }\n public beginEdit(messageId: string) {\n if (this._editComposers.has(messageId))\n throw new Error(\"Edit already in progress\");\n\n this._editComposers.set(\n messageId,\n new DefaultEditComposerRuntimeCore(\n this,\n () => this._editComposers.delete(messageId),\n this.repository.getMessage(messageId),\n ),\n );\n this._notifySubscribers();\n }\n\n public getMessageById(messageId: string) {\n return this.repository.getMessage(messageId);\n }\n\n public getBranches(messageId: string): string[] {\n return this.repository.getBranches(messageId);\n }\n\n public switchToBranch(branchId: string): void {\n this.repository.switchToBranch(branchId);\n this._notifySubscribers();\n }\n\n protected _notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n public _notifyEventSubscribers(event: ThreadRuntimeEventType) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n\n for (const callback of subscribers) callback();\n }\n\n public subscribe(callback: () => void): Unsubscribe {\n this._subscriptions.add(callback);\n return () => this._subscriptions.delete(callback);\n }\n\n private _submittedFeedback: Record<string, SubmittedFeedback> = {};\n\n public getSubmittedFeedback(messageId: string) {\n return this._submittedFeedback[messageId];\n }\n\n public submitFeedback({ messageId, type }: SubmitFeedbackOptions) {\n const adapter = this.adapters?.feedback;\n if (!adapter) throw new Error(\"Feedback adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n adapter.submit({ message, type });\n\n this._submittedFeedback[messageId] = { type };\n this._notifySubscribers();\n }\n\n private _stopSpeaking: Unsubscribe | undefined;\n public speech: SpeechState | undefined;\n\n public speak(messageId: string) {\n const adapter = this.adapters?.speech;\n if (!adapter) throw new Error(\"Speech adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n\n this._stopSpeaking?.();\n\n const utterance = adapter.speak(getThreadMessageText(message));\n const unsub = utterance.subscribe(() => {\n if (utterance.status.type === \"ended\") {\n this._stopSpeaking = undefined;\n this.speech = undefined;\n } else {\n this.speech = { messageId, status: utterance.status };\n }\n this._notifySubscribers();\n });\n\n this.speech = { messageId, status: utterance.status };\n this._notifySubscribers();\n\n this._stopSpeaking = () => {\n utterance.cancel();\n unsub();\n this.speech = undefined;\n this._stopSpeaking = undefined;\n };\n }\n\n public stopSpeaking() {\n if (!this._stopSpeaking) throw new Error(\"No message is being spoken\");\n this._stopSpeaking();\n this._notifySubscribers();\n }\n\n protected ensureInitialized() {\n if (!this._isInitialized) {\n this._isInitialized = true;\n this._notifyEventSubscribers(\"initialize\");\n }\n }\n\n public export() {\n return this.repository.export();\n }\n\n public import(data: ExportedMessageRepository) {\n this.ensureInitialized();\n\n this.repository.import(data);\n this._notifySubscribers();\n }\n\n private _eventSubscribers = new Map<\n ThreadRuntimeEventType,\n Set<() => void>\n >();\n\n public unstable_on(event: ThreadRuntimeEventType, callback: () => void) {\n if (event === \"model-context-update\") {\n return this._contextProvider.subscribe?.(callback) ?? (() => {});\n }\n\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) {\n this._eventSubscribers.set(event, new Set([callback]));\n } else {\n subscribers.add(callback);\n }\n\n return () => {\n const subscribers = this._eventSubscribers.get(event)!;\n subscribers.delete(callback);\n };\n }\n}\n"],"mappings":"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","names":["subscribers"]}
@@ -1,4 +1,5 @@
1
- import { AppendMessage, ModelConfig, ThreadMessage } from "../../types";
1
+ import { ModelContext } from "../../model-context";
2
+ import { AppendMessage, ThreadMessage } from "../../types";
2
3
  import { RunConfig } from "../../types/AssistantTypes";
3
4
  import type { Unsubscribe } from "../../types/Unsubscribe";
4
5
  import { SpeechSynthesisAdapter } from "../adapters/speech/SpeechAdapterTypes";
@@ -34,7 +35,7 @@ export type SpeechState = {
34
35
  export type SubmittedFeedback = {
35
36
  readonly type: "negative" | "positive";
36
37
  };
37
- export type ThreadRuntimeEventType = "run-start" | "run-end" | "initialize" | "model-config-update";
38
+ export type ThreadRuntimeEventType = "run-start" | "run-end" | "initialize" | "model-context-update";
38
39
  export type StartRunConfig = {
39
40
  parentId: string | null;
40
41
  sourceId: string | null;
@@ -55,7 +56,7 @@ export type ThreadRuntimeCore = Readonly<{
55
56
  stopSpeaking: () => void;
56
57
  getSubmittedFeedback: (messageId: string) => SubmittedFeedback | undefined;
57
58
  submitFeedback: (feedback: SubmitFeedbackOptions) => void;
58
- getModelConfig: () => ModelConfig;
59
+ getModelContext: () => ModelContext;
59
60
  composer: ThreadComposerRuntimeCore;
60
61
  getEditComposer: (messageId: string) => ComposerRuntimeCore | undefined;
61
62
  beginEdit: (messageId: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/ThreadRuntimeCore.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ThreadRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/ThreadRuntimeCore.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/core/ThreadRuntimeCore.tsx"],"sourcesContent":["import { AppendMessage, ModelConfig, ThreadMessage } from \"../../types\";\nimport { RunConfig } from \"../../types/AssistantTypes\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\nimport { SpeechSynthesisAdapter } from \"../adapters/speech/SpeechAdapterTypes\";\nimport { ExportedMessageRepository } from \"../utils/MessageRepository\";\nimport {\n ComposerRuntimeCore,\n ThreadComposerRuntimeCore,\n} from \"./ComposerRuntimeCore\";\n\nexport type RuntimeCapabilities = {\n readonly switchToBranch: boolean;\n readonly edit: boolean;\n readonly reload: boolean;\n readonly cancel: boolean;\n readonly unstable_copy: boolean;\n readonly speech: boolean;\n readonly attachments: boolean;\n readonly feedback: boolean;\n};\n\nexport type AddToolResultOptions = {\n messageId: string;\n toolName: string;\n toolCallId: string;\n result: any;\n};\n\nexport type SubmitFeedbackOptions = {\n messageId: string;\n type: \"negative\" | \"positive\";\n};\n\nexport type ThreadSuggestion = {\n prompt: string;\n};\n\nexport type SpeechState = {\n readonly messageId: string;\n readonly status: SpeechSynthesisAdapter.Status;\n};\n\nexport type SubmittedFeedback = {\n readonly type: \"negative\" | \"positive\";\n};\n\nexport type ThreadRuntimeEventType =\n | \"run-start\"\n | \"run-end\"\n | \"initialize\"\n | \"model-config-update\";\n\nexport type StartRunConfig = {\n parentId: string | null;\n sourceId: string | null;\n runConfig: RunConfig;\n};\n\nexport type ThreadRuntimeCore = Readonly<{\n getMessageById: (messageId: string) =>\n | {\n parentId: string | null;\n message: ThreadMessage;\n }\n | undefined;\n\n getBranches: (messageId: string) => readonly string[];\n switchToBranch: (branchId: string) => void;\n\n append: (message: AppendMessage) => void;\n startRun: (config: StartRunConfig) => void;\n cancelRun: () => void;\n\n addToolResult: (options: AddToolResultOptions) => void;\n\n speak: (messageId: string) => void;\n stopSpeaking: () => void;\n\n getSubmittedFeedback: (messageId: string) => SubmittedFeedback | undefined;\n submitFeedback: (feedback: SubmitFeedbackOptions) => void;\n\n getModelConfig: () => ModelConfig;\n\n composer: ThreadComposerRuntimeCore;\n getEditComposer: (messageId: string) => ComposerRuntimeCore | undefined;\n beginEdit: (messageId: string) => void;\n\n speech: SpeechState | undefined;\n\n capabilities: Readonly<RuntimeCapabilities>;\n isDisabled: boolean;\n messages: readonly ThreadMessage[];\n suggestions: readonly ThreadSuggestion[];\n\n // TODO deprecate for a more elegant solution\n // /**\n // * @deprecated This field is deprecated and will be removed in 0.8.0.\n // * Please migrate to using `AssistantRuntimeCore.Provider` instead.\n // */\n extras: unknown;\n\n subscribe: (callback: () => void) => Unsubscribe;\n\n import(repository: ExportedMessageRepository): void;\n export(): ExportedMessageRepository;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n}>;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/core/ThreadRuntimeCore.tsx"],"sourcesContent":["import { ModelContext } from \"../../model-context\";\nimport { AppendMessage, ThreadMessage } from \"../../types\";\nimport { RunConfig } from \"../../types/AssistantTypes\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\nimport { SpeechSynthesisAdapter } from \"../adapters/speech/SpeechAdapterTypes\";\nimport { ExportedMessageRepository } from \"../utils/MessageRepository\";\nimport {\n ComposerRuntimeCore,\n ThreadComposerRuntimeCore,\n} from \"./ComposerRuntimeCore\";\n\nexport type RuntimeCapabilities = {\n readonly switchToBranch: boolean;\n readonly edit: boolean;\n readonly reload: boolean;\n readonly cancel: boolean;\n readonly unstable_copy: boolean;\n readonly speech: boolean;\n readonly attachments: boolean;\n readonly feedback: boolean;\n};\n\nexport type AddToolResultOptions = {\n messageId: string;\n toolName: string;\n toolCallId: string;\n result: any;\n};\n\nexport type SubmitFeedbackOptions = {\n messageId: string;\n type: \"negative\" | \"positive\";\n};\n\nexport type ThreadSuggestion = {\n prompt: string;\n};\n\nexport type SpeechState = {\n readonly messageId: string;\n readonly status: SpeechSynthesisAdapter.Status;\n};\n\nexport type SubmittedFeedback = {\n readonly type: \"negative\" | \"positive\";\n};\n\nexport type ThreadRuntimeEventType =\n | \"run-start\"\n | \"run-end\"\n | \"initialize\"\n | \"model-context-update\";\n\nexport type StartRunConfig = {\n parentId: string | null;\n sourceId: string | null;\n runConfig: RunConfig;\n};\n\nexport type ThreadRuntimeCore = Readonly<{\n getMessageById: (messageId: string) =>\n | {\n parentId: string | null;\n message: ThreadMessage;\n }\n | undefined;\n\n getBranches: (messageId: string) => readonly string[];\n switchToBranch: (branchId: string) => void;\n\n append: (message: AppendMessage) => void;\n startRun: (config: StartRunConfig) => void;\n cancelRun: () => void;\n\n addToolResult: (options: AddToolResultOptions) => void;\n\n speak: (messageId: string) => void;\n stopSpeaking: () => void;\n\n getSubmittedFeedback: (messageId: string) => SubmittedFeedback | undefined;\n submitFeedback: (feedback: SubmitFeedbackOptions) => void;\n\n getModelContext: () => ModelContext;\n\n composer: ThreadComposerRuntimeCore;\n getEditComposer: (messageId: string) => ComposerRuntimeCore | undefined;\n beginEdit: (messageId: string) => void;\n\n speech: SpeechState | undefined;\n\n capabilities: Readonly<RuntimeCapabilities>;\n isDisabled: boolean;\n messages: readonly ThreadMessage[];\n suggestions: readonly ThreadSuggestion[];\n\n // TODO deprecate for a more elegant solution\n // /**\n // * @deprecated This field is deprecated and will be removed in 0.8.0.\n // * Please migrate to using `AssistantRuntimeCore.Provider` instead.\n // */\n extras: unknown;\n\n subscribe: (callback: () => void) => Unsubscribe;\n\n import(repository: ExportedMessageRepository): void;\n export(): ExportedMessageRepository;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n}>;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}