@assistant-ui/react 0.7.53 → 0.7.54

Sign up to get free protection for your applications and to get access to all the features.
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":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,+BAGO;AACP,8CAAiD;AAYjD,4CAA+C;AAI/C,kCAAqC;AAS9B,IAAe,wBAAf,MAAkE;AAAA,EAsBvE,YAA6B,kBAAwC;AAAxC;AAAA,EAAyC;AAAA,EArB9D,iBAAiB,oBAAI,IAAgB;AAAA,EACrC,iBAAiB;AAAA,EAEN,aAAa,IAAI,2CAAkB;AAAA,EAYtD,IAAW,WAAW;AACpB,WAAO,KAAK,WAAW,YAAY;AAAA,EACrC;AAAA,EAEgB,WAAW,IAAI,yEAAiC,IAAI;AAAA,EAI7D,kBAAkB;AACvB,WAAO,KAAK,iBAAiB,gBAAgB;AAAA,EAC/C;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,UAAM,kDAAqB,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,wBAAwB;AACpC,aAAO,KAAK,iBAAiB,YAAY,QAAQ,MAAM,MAAM;AAAA,MAAC;AAAA,IAChE;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"]}
@@ -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":"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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"]}
@@ -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":[]}