@assistant-ui/react 0.7.53 → 0.7.54

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (647) hide show
  1. package/dist/api/AssistantRuntime.d.ts +12 -7
  2. package/dist/api/AssistantRuntime.d.ts.map +1 -1
  3. package/dist/api/AssistantRuntime.js +5 -1
  4. package/dist/api/AssistantRuntime.js.map +1 -1
  5. package/dist/api/AssistantRuntime.mjs +5 -1
  6. package/dist/api/AssistantRuntime.mjs.map +1 -1
  7. package/dist/api/ThreadRuntime.d.ts +10 -4
  8. package/dist/api/ThreadRuntime.d.ts.map +1 -1
  9. package/dist/api/ThreadRuntime.js +5 -1
  10. package/dist/api/ThreadRuntime.js.map +1 -1
  11. package/dist/api/ThreadRuntime.mjs +5 -1
  12. package/dist/api/ThreadRuntime.mjs.map +1 -1
  13. package/dist/context/react/ThreadContext.d.ts +5 -5
  14. package/dist/context/react/ThreadContext.d.ts.map +1 -1
  15. package/dist/context/react/ThreadContext.js +5 -5
  16. package/dist/context/react/ThreadContext.js.map +1 -1
  17. package/dist/context/react/ThreadContext.mjs +4 -4
  18. package/dist/context/react/ThreadContext.mjs.map +1 -1
  19. package/dist/context/react/index.d.ts +5 -1
  20. package/dist/context/react/index.d.ts.map +1 -1
  21. package/dist/context/react/index.js +3 -1
  22. package/dist/context/react/index.js.map +1 -1
  23. package/dist/context/react/index.mjs +4 -2
  24. package/dist/context/react/index.mjs.map +1 -1
  25. package/dist/index.d.ts +1 -2
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +2 -4
  28. package/dist/index.js.map +1 -1
  29. package/dist/index.mjs +1 -2
  30. package/dist/index.mjs.map +1 -1
  31. package/dist/internal.d.ts +1 -1
  32. package/dist/internal.d.ts.map +1 -1
  33. package/dist/internal.js +3 -3
  34. package/dist/internal.js.map +1 -1
  35. package/dist/internal.mjs +2 -2
  36. package/dist/internal.mjs.map +1 -1
  37. package/dist/{types/ModelConfigTypes.d.ts → model-context/ModelContextTypes.d.ts} +6 -6
  38. package/dist/model-context/ModelContextTypes.d.ts.map +1 -0
  39. package/dist/{types/ModelConfigTypes.js → model-context/ModelContextTypes.js} +9 -9
  40. package/dist/model-context/ModelContextTypes.js.map +1 -0
  41. package/dist/{types/ModelConfigTypes.mjs → model-context/ModelContextTypes.mjs} +5 -5
  42. package/dist/model-context/ModelContextTypes.mjs.map +1 -0
  43. package/dist/{model-config → model-context}/index.d.ts +9 -0
  44. package/dist/model-context/index.d.ts.map +1 -0
  45. package/dist/{model-config → model-context}/index.js +4 -4
  46. package/dist/model-context/index.js.map +1 -0
  47. package/dist/{model-config → model-context}/index.mjs +1 -1
  48. package/dist/model-context/index.mjs.map +1 -0
  49. package/dist/model-context/makeAssistantTool.d.ts.map +1 -0
  50. package/dist/{model-config → model-context}/makeAssistantTool.js +1 -1
  51. package/dist/model-context/makeAssistantTool.js.map +1 -0
  52. package/dist/{model-config → model-context}/makeAssistantTool.mjs +1 -1
  53. package/dist/model-context/makeAssistantTool.mjs.map +1 -0
  54. package/dist/model-context/makeAssistantToolUI.d.ts.map +1 -0
  55. package/dist/{model-config → model-context}/makeAssistantToolUI.js +1 -1
  56. package/dist/model-context/makeAssistantToolUI.js.map +1 -0
  57. package/dist/{model-config → model-context}/makeAssistantToolUI.mjs +1 -1
  58. package/dist/model-context/makeAssistantToolUI.mjs.map +1 -0
  59. package/dist/model-context/useAssistantInstructions.d.ts.map +1 -0
  60. package/dist/{model-config → model-context}/useAssistantInstructions.js +3 -3
  61. package/dist/model-context/useAssistantInstructions.js.map +1 -0
  62. package/dist/{model-config → model-context}/useAssistantInstructions.mjs +3 -3
  63. package/dist/model-context/useAssistantInstructions.mjs.map +1 -0
  64. package/dist/{model-config → model-context}/useAssistantTool.d.ts +1 -1
  65. package/dist/model-context/useAssistantTool.d.ts.map +1 -0
  66. package/dist/{model-config → model-context}/useAssistantTool.js +4 -4
  67. package/dist/model-context/useAssistantTool.js.map +1 -0
  68. package/dist/{model-config → model-context}/useAssistantTool.mjs +4 -4
  69. package/dist/model-context/useAssistantTool.mjs.map +1 -0
  70. package/dist/model-context/useAssistantToolUI.d.ts.map +1 -0
  71. package/dist/{model-config → model-context}/useAssistantToolUI.js +1 -1
  72. package/dist/model-context/useAssistantToolUI.js.map +1 -0
  73. package/dist/{model-config → model-context}/useAssistantToolUI.mjs +1 -1
  74. package/dist/model-context/useAssistantToolUI.mjs.map +1 -0
  75. package/dist/model-context/useInlineRender.d.ts.map +1 -0
  76. package/dist/{model-config → model-context}/useInlineRender.js +1 -1
  77. package/dist/model-context/useInlineRender.js.map +1 -0
  78. package/dist/{model-config → model-context}/useInlineRender.mjs +1 -1
  79. package/dist/model-context/useInlineRender.mjs.map +1 -0
  80. package/dist/primitives/actionBar/ActionBarCopy.d.ts +8 -3
  81. package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
  82. package/dist/primitives/actionBar/ActionBarCopy.js +24 -2
  83. package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
  84. package/dist/primitives/actionBar/ActionBarCopy.mjs +27 -2
  85. package/dist/primitives/actionBar/ActionBarCopy.mjs.map +1 -1
  86. package/dist/primitives/actionBar/ActionBarEdit.d.ts +2 -1
  87. package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
  88. package/dist/primitives/actionBar/ActionBarEdit.js +12 -2
  89. package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
  90. package/dist/primitives/actionBar/ActionBarEdit.mjs +11 -1
  91. package/dist/primitives/actionBar/ActionBarEdit.mjs.map +1 -1
  92. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts +2 -1
  93. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
  94. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +10 -2
  95. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
  96. package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs +9 -1
  97. package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs.map +1 -1
  98. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts +2 -1
  99. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
  100. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +8 -2
  101. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
  102. package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs +9 -3
  103. package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs.map +1 -1
  104. package/dist/primitives/actionBar/ActionBarReload.d.ts +2 -1
  105. package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
  106. package/dist/primitives/actionBar/ActionBarReload.js +18 -2
  107. package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
  108. package/dist/primitives/actionBar/ActionBarReload.mjs +17 -1
  109. package/dist/primitives/actionBar/ActionBarReload.mjs.map +1 -1
  110. package/dist/primitives/actionBar/ActionBarSpeak.d.ts +2 -1
  111. package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -1
  112. package/dist/primitives/actionBar/ActionBarSpeak.js +14 -2
  113. package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
  114. package/dist/primitives/actionBar/ActionBarSpeak.mjs +13 -1
  115. package/dist/primitives/actionBar/ActionBarSpeak.mjs.map +1 -1
  116. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts +2 -1
  117. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
  118. package/dist/primitives/actionBar/ActionBarStopSpeaking.js +12 -2
  119. package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
  120. package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs +14 -1
  121. package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs.map +1 -1
  122. package/dist/primitives/attachment/AttachmentRemove.d.ts +2 -1
  123. package/dist/primitives/attachment/AttachmentRemove.d.ts.map +1 -1
  124. package/dist/primitives/attachment/AttachmentRemove.js +10 -2
  125. package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
  126. package/dist/primitives/attachment/AttachmentRemove.mjs +9 -1
  127. package/dist/primitives/attachment/AttachmentRemove.mjs.map +1 -1
  128. package/dist/primitives/branchPicker/BranchPickerCount.d.ts.map +1 -1
  129. package/dist/primitives/branchPicker/BranchPickerCount.js +6 -2
  130. package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
  131. package/dist/primitives/branchPicker/BranchPickerCount.mjs +5 -1
  132. package/dist/primitives/branchPicker/BranchPickerCount.mjs.map +1 -1
  133. package/dist/primitives/branchPicker/BranchPickerNext.d.ts +2 -1
  134. package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
  135. package/dist/primitives/branchPicker/BranchPickerNext.js +12 -2
  136. package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
  137. package/dist/primitives/branchPicker/BranchPickerNext.mjs +14 -1
  138. package/dist/primitives/branchPicker/BranchPickerNext.mjs.map +1 -1
  139. package/dist/primitives/branchPicker/BranchPickerNumber.d.ts.map +1 -1
  140. package/dist/primitives/branchPicker/BranchPickerNumber.js +6 -2
  141. package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
  142. package/dist/primitives/branchPicker/BranchPickerNumber.mjs +5 -1
  143. package/dist/primitives/branchPicker/BranchPickerNumber.mjs.map +1 -1
  144. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +2 -1
  145. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
  146. package/dist/primitives/branchPicker/BranchPickerPrevious.js +12 -2
  147. package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
  148. package/dist/primitives/branchPicker/BranchPickerPrevious.mjs +14 -1
  149. package/dist/primitives/branchPicker/BranchPickerPrevious.mjs.map +1 -1
  150. package/dist/primitives/composer/ComposerAddAttachment.d.ts +9 -2
  151. package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
  152. package/dist/primitives/composer/ComposerAddAttachment.js +28 -2
  153. package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
  154. package/dist/primitives/composer/ComposerAddAttachment.mjs +27 -1
  155. package/dist/primitives/composer/ComposerAddAttachment.mjs.map +1 -1
  156. package/dist/primitives/composer/ComposerCancel.d.ts +2 -1
  157. package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
  158. package/dist/primitives/composer/ComposerCancel.js +12 -2
  159. package/dist/primitives/composer/ComposerCancel.js.map +1 -1
  160. package/dist/primitives/composer/ComposerCancel.mjs +11 -1
  161. package/dist/primitives/composer/ComposerCancel.mjs.map +1 -1
  162. package/dist/primitives/composer/ComposerIf.d.ts +6 -1
  163. package/dist/primitives/composer/ComposerIf.d.ts.map +1 -1
  164. package/dist/primitives/composer/ComposerIf.js +9 -2
  165. package/dist/primitives/composer/ComposerIf.js.map +1 -1
  166. package/dist/primitives/composer/ComposerIf.mjs +8 -3
  167. package/dist/primitives/composer/ComposerIf.mjs.map +1 -1
  168. package/dist/primitives/composer/ComposerRoot.js +2 -2
  169. package/dist/primitives/composer/ComposerRoot.js.map +1 -1
  170. package/dist/primitives/composer/ComposerRoot.mjs +1 -1
  171. package/dist/primitives/composer/ComposerRoot.mjs.map +1 -1
  172. package/dist/primitives/composer/ComposerSend.d.ts +1 -1
  173. package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
  174. package/dist/primitives/composer/ComposerSend.js +22 -4
  175. package/dist/primitives/composer/ComposerSend.js.map +1 -1
  176. package/dist/primitives/composer/ComposerSend.mjs +19 -2
  177. package/dist/primitives/composer/ComposerSend.mjs.map +1 -1
  178. package/dist/primitives/contentPart/ContentPartDisplay.d.ts +3 -0
  179. package/dist/primitives/contentPart/ContentPartDisplay.d.ts.map +1 -1
  180. package/dist/primitives/contentPart/ContentPartDisplay.js +1 -1
  181. package/dist/primitives/contentPart/ContentPartDisplay.js.map +1 -1
  182. package/dist/primitives/contentPart/ContentPartDisplay.mjs +1 -1
  183. package/dist/primitives/contentPart/ContentPartDisplay.mjs.map +1 -1
  184. package/dist/primitives/contentPart/ContentPartImage.js +1 -1
  185. package/dist/primitives/contentPart/ContentPartImage.js.map +1 -1
  186. package/dist/primitives/contentPart/ContentPartImage.mjs +1 -1
  187. package/dist/primitives/contentPart/ContentPartImage.mjs.map +1 -1
  188. package/dist/primitives/contentPart/ContentPartText.js +1 -1
  189. package/dist/primitives/contentPart/ContentPartText.js.map +1 -1
  190. package/dist/primitives/contentPart/ContentPartText.mjs +1 -1
  191. package/dist/primitives/contentPart/ContentPartText.mjs.map +1 -1
  192. package/dist/primitives/contentPart/useContentPartDisplay.d.ts.map +1 -0
  193. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.js +1 -1
  194. package/dist/primitives/contentPart/useContentPartDisplay.js.map +1 -0
  195. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.mjs +1 -1
  196. package/dist/primitives/contentPart/useContentPartDisplay.mjs.map +1 -0
  197. package/dist/primitives/contentPart/useContentPartImage.d.ts.map +1 -0
  198. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartImage.js +1 -1
  199. package/dist/primitives/contentPart/useContentPartImage.js.map +1 -0
  200. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartImage.mjs +1 -1
  201. package/dist/primitives/contentPart/useContentPartImage.mjs.map +1 -0
  202. package/dist/primitives/contentPart/useContentPartText.d.ts.map +1 -0
  203. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartText.js +1 -1
  204. package/dist/primitives/contentPart/useContentPartText.js.map +1 -0
  205. package/dist/{primitive-hooks → primitives}/contentPart/useContentPartText.mjs +1 -1
  206. package/dist/primitives/contentPart/useContentPartText.mjs.map +1 -0
  207. package/dist/primitives/index.d.ts +3 -0
  208. package/dist/primitives/index.d.ts.map +1 -1
  209. package/dist/primitives/index.js +11 -2
  210. package/dist/primitives/index.js.map +1 -1
  211. package/dist/primitives/index.mjs +7 -1
  212. package/dist/primitives/index.mjs.map +1 -1
  213. package/dist/primitives/message/MessageIf.d.ts +15 -1
  214. package/dist/primitives/message/MessageIf.d.ts.map +1 -1
  215. package/dist/primitives/message/MessageIf.js +38 -2
  216. package/dist/primitives/message/MessageIf.js.map +1 -1
  217. package/dist/primitives/message/MessageIf.mjs +39 -2
  218. package/dist/primitives/message/MessageIf.mjs.map +1 -1
  219. package/dist/primitives/thread/ThreadEmpty.js +2 -2
  220. package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
  221. package/dist/primitives/thread/ThreadEmpty.mjs +2 -2
  222. package/dist/primitives/thread/ThreadEmpty.mjs.map +1 -1
  223. package/dist/primitives/thread/ThreadIf.d.ts +8 -1
  224. package/dist/primitives/thread/ThreadIf.d.ts.map +1 -1
  225. package/dist/primitives/thread/ThreadIf.js +13 -2
  226. package/dist/primitives/thread/ThreadIf.js.map +1 -1
  227. package/dist/primitives/thread/ThreadIf.mjs +12 -3
  228. package/dist/primitives/thread/ThreadIf.mjs.map +1 -1
  229. package/dist/primitives/thread/ThreadScrollToBottom.d.ts +2 -1
  230. package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -1
  231. package/dist/primitives/thread/ThreadScrollToBottom.js +13 -2
  232. package/dist/primitives/thread/ThreadScrollToBottom.js.map +1 -1
  233. package/dist/primitives/thread/ThreadScrollToBottom.mjs +12 -1
  234. package/dist/primitives/thread/ThreadScrollToBottom.mjs.map +1 -1
  235. package/dist/primitives/thread/ThreadSuggestion.d.ts +11 -2
  236. package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
  237. package/dist/primitives/thread/ThreadSuggestion.js +21 -2
  238. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  239. package/dist/primitives/thread/ThreadSuggestion.mjs +20 -1
  240. package/dist/primitives/thread/ThreadSuggestion.mjs.map +1 -1
  241. package/dist/primitives/thread/ThreadViewport.d.ts +1 -1
  242. package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -1
  243. package/dist/primitives/thread/ThreadViewport.js +1 -1
  244. package/dist/primitives/thread/ThreadViewport.js.map +1 -1
  245. package/dist/primitives/thread/ThreadViewport.mjs +1 -1
  246. package/dist/primitives/thread/ThreadViewport.mjs.map +1 -1
  247. package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts.map +1 -0
  248. package/dist/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.js +1 -1
  249. package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -0
  250. package/dist/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.mjs +1 -1
  251. package/dist/primitives/thread/useThreadViewportAutoScroll.mjs.map +1 -0
  252. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.d.ts.map +1 -1
  253. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.js.map +1 -1
  254. package/dist/runtimes/core/AssistantRuntimeCore.d.ts +2 -2
  255. package/dist/runtimes/core/AssistantRuntimeCore.d.ts.map +1 -1
  256. package/dist/runtimes/core/AssistantRuntimeCore.js.map +1 -1
  257. package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts +4 -5
  258. package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts.map +1 -1
  259. package/dist/runtimes/core/BaseAssistantRuntimeCore.js +4 -6
  260. package/dist/runtimes/core/BaseAssistantRuntimeCore.js.map +1 -1
  261. package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs +4 -6
  262. package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs.map +1 -1
  263. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +5 -4
  264. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -1
  265. package/dist/runtimes/core/BaseThreadRuntimeCore.js +6 -6
  266. package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
  267. package/dist/runtimes/core/BaseThreadRuntimeCore.mjs +6 -6
  268. package/dist/runtimes/core/BaseThreadRuntimeCore.mjs.map +1 -1
  269. package/dist/runtimes/core/ThreadRuntimeCore.d.ts +4 -3
  270. package/dist/runtimes/core/ThreadRuntimeCore.d.ts.map +1 -1
  271. package/dist/runtimes/core/ThreadRuntimeCore.js.map +1 -1
  272. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.d.ts +1 -1
  273. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.d.ts.map +1 -1
  274. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js +6 -6
  275. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js.map +1 -1
  276. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.mjs +6 -6
  277. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.mjs.map +1 -1
  278. package/dist/runtimes/edge/EdgeChatAdapter.d.ts +1 -1
  279. package/dist/runtimes/edge/EdgeChatAdapter.d.ts.map +1 -1
  280. package/dist/runtimes/edge/EdgeChatAdapter.js +6 -6
  281. package/dist/runtimes/edge/EdgeChatAdapter.js.map +1 -1
  282. package/dist/runtimes/edge/EdgeChatAdapter.mjs +6 -6
  283. package/dist/runtimes/edge/EdgeChatAdapter.mjs.map +1 -1
  284. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js +2 -2
  285. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js.map +1 -1
  286. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs +1 -1
  287. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs.map +1 -1
  288. package/dist/runtimes/edge/converters/fromLanguageModelTools.d.ts +1 -1
  289. package/dist/runtimes/edge/converters/fromLanguageModelTools.d.ts.map +1 -1
  290. package/dist/runtimes/edge/converters/fromLanguageModelTools.js.map +1 -1
  291. package/dist/runtimes/edge/converters/fromLanguageModelTools.mjs.map +1 -1
  292. package/dist/runtimes/edge/converters/toLanguageModelTools.d.ts +1 -1
  293. package/dist/runtimes/edge/converters/toLanguageModelTools.d.ts.map +1 -1
  294. package/dist/runtimes/edge/converters/toLanguageModelTools.js.map +1 -1
  295. package/dist/runtimes/edge/converters/toLanguageModelTools.mjs.map +1 -1
  296. package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts +1 -2
  297. package/dist/runtimes/edge/createEdgeRuntimeAPI.d.ts.map +1 -1
  298. package/dist/runtimes/edge/createEdgeRuntimeAPI.js +2 -2
  299. package/dist/runtimes/edge/createEdgeRuntimeAPI.js.map +1 -1
  300. package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs +1 -1
  301. package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs.map +1 -1
  302. package/dist/runtimes/edge/streams/toolResultStream.d.ts +1 -1
  303. package/dist/runtimes/edge/streams/toolResultStream.d.ts.map +1 -1
  304. package/dist/runtimes/edge/streams/toolResultStream.js.map +1 -1
  305. package/dist/runtimes/edge/streams/toolResultStream.mjs.map +1 -1
  306. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts.map +1 -1
  307. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +1 -1
  308. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
  309. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs +1 -1
  310. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs.map +1 -1
  311. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts +3 -2
  312. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -1
  313. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +2 -2
  314. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
  315. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs +2 -2
  316. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs.map +1 -1
  317. package/dist/runtimes/external-store/external-message-converter.d.ts +1 -0
  318. package/dist/runtimes/external-store/external-message-converter.d.ts.map +1 -1
  319. package/dist/runtimes/external-store/external-message-converter.js +23 -0
  320. package/dist/runtimes/external-store/external-message-converter.js.map +1 -1
  321. package/dist/runtimes/external-store/external-message-converter.mjs +22 -0
  322. package/dist/runtimes/external-store/external-message-converter.mjs.map +1 -1
  323. package/dist/runtimes/external-store/index.d.ts +1 -1
  324. package/dist/runtimes/external-store/index.d.ts.map +1 -1
  325. package/dist/runtimes/external-store/index.js +2 -0
  326. package/dist/runtimes/external-store/index.js.map +1 -1
  327. package/dist/runtimes/external-store/index.mjs +5 -1
  328. package/dist/runtimes/external-store/index.mjs.map +1 -1
  329. package/dist/runtimes/local/ChatModelAdapter.d.ts +6 -2
  330. package/dist/runtimes/local/ChatModelAdapter.d.ts.map +1 -1
  331. package/dist/runtimes/local/ChatModelAdapter.js.map +1 -1
  332. package/dist/runtimes/local/LocalRuntimeCore.d.ts.map +1 -1
  333. package/dist/runtimes/local/LocalRuntimeCore.js +1 -4
  334. package/dist/runtimes/local/LocalRuntimeCore.js.map +1 -1
  335. package/dist/runtimes/local/LocalRuntimeCore.mjs +1 -4
  336. package/dist/runtimes/local/LocalRuntimeCore.mjs.map +1 -1
  337. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts +3 -2
  338. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts.map +1 -1
  339. package/dist/runtimes/local/LocalThreadRuntimeCore.js +5 -3
  340. package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
  341. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs +5 -3
  342. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs.map +1 -1
  343. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js +1 -1
  344. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js.map +1 -1
  345. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.mjs +1 -1
  346. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.mjs.map +1 -1
  347. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts +2 -2
  348. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts +2 -2
  349. package/dist/tailwindcss/index.d.ts.map +1 -1
  350. package/dist/tailwindcss/index.js +6 -2
  351. package/dist/tailwindcss/index.js.map +1 -1
  352. package/dist/tailwindcss/index.mjs +6 -2
  353. package/dist/tailwindcss/index.mjs.map +1 -1
  354. package/dist/types/index.d.ts +0 -1
  355. package/dist/types/index.d.ts.map +1 -1
  356. package/dist/types/index.js.map +1 -1
  357. package/dist/ui/thread-config.d.ts +1 -1
  358. package/dist/ui/thread-config.d.ts.map +1 -1
  359. package/dist/ui/thread-config.js.map +1 -1
  360. package/dist/ui/thread-config.mjs.map +1 -1
  361. package/dist/ui/thread.d.ts +1 -1
  362. package/dist/utils/CompositeContextProvider.d.ts +10 -0
  363. package/dist/utils/CompositeContextProvider.d.ts.map +1 -0
  364. package/dist/utils/{ProxyConfigProvider.js → CompositeContextProvider.js} +12 -12
  365. package/dist/utils/CompositeContextProvider.js.map +1 -0
  366. package/dist/utils/{ProxyConfigProvider.mjs → CompositeContextProvider.mjs} +9 -9
  367. package/dist/utils/CompositeContextProvider.mjs.map +1 -0
  368. package/package.json +1 -1
  369. package/src/api/AssistantRuntime.ts +19 -8
  370. package/src/api/ThreadRuntime.ts +15 -8
  371. package/src/context/react/ThreadContext.ts +9 -9
  372. package/src/context/react/index.ts +5 -1
  373. package/src/index.ts +1 -2
  374. package/src/internal.ts +1 -1
  375. package/src/{types/ModelConfigTypes.ts → model-context/ModelContextTypes.ts} +9 -9
  376. package/src/{model-config → model-context}/index.ts +14 -0
  377. package/src/{model-config → model-context}/useAssistantInstructions.tsx +2 -2
  378. package/src/{model-config → model-context}/useAssistantTool.tsx +4 -4
  379. package/src/primitives/actionBar/ActionBarCopy.tsx +38 -3
  380. package/src/primitives/actionBar/ActionBarEdit.tsx +14 -1
  381. package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +12 -1
  382. package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +12 -3
  383. package/src/primitives/actionBar/ActionBarReload.tsx +21 -1
  384. package/src/primitives/actionBar/ActionBarSpeak.tsx +19 -1
  385. package/src/primitives/actionBar/ActionBarStopSpeaking.tsx +18 -1
  386. package/src/primitives/attachment/AttachmentRemove.tsx +12 -1
  387. package/src/primitives/branchPicker/BranchPickerCount.tsx +6 -1
  388. package/src/primitives/branchPicker/BranchPickerNext.tsx +17 -1
  389. package/src/primitives/branchPicker/BranchPickerNumber.tsx +6 -1
  390. package/src/primitives/branchPicker/BranchPickerPrevious.tsx +17 -1
  391. package/src/primitives/composer/ComposerAddAttachment.tsx +36 -1
  392. package/src/primitives/composer/ComposerCancel.tsx +14 -1
  393. package/src/primitives/composer/ComposerIf.tsx +17 -4
  394. package/src/primitives/composer/ComposerRoot.tsx +1 -1
  395. package/src/primitives/composer/ComposerSend.tsx +21 -1
  396. package/src/primitives/contentPart/ContentPartDisplay.tsx +4 -1
  397. package/src/primitives/contentPart/ContentPartImage.tsx +1 -1
  398. package/src/primitives/contentPart/ContentPartText.tsx +1 -1
  399. package/src/primitives/index.ts +4 -0
  400. package/src/primitives/message/MessageIf.tsx +77 -3
  401. package/src/primitives/thread/ThreadEmpty.tsx +2 -2
  402. package/src/primitives/thread/ThreadIf.tsx +23 -4
  403. package/src/primitives/thread/ThreadScrollToBottom.tsx +16 -1
  404. package/src/primitives/thread/ThreadSuggestion.tsx +27 -1
  405. package/src/primitives/thread/ThreadViewport.tsx +1 -1
  406. package/src/runtimes/adapters/thread-history/ThreadHistoryAdapter.ts +0 -1
  407. package/src/runtimes/core/AssistantRuntimeCore.tsx +2 -2
  408. package/src/runtimes/core/BaseAssistantRuntimeCore.tsx +6 -8
  409. package/src/runtimes/core/BaseThreadRuntimeCore.tsx +7 -10
  410. package/src/runtimes/core/ThreadRuntimeCore.tsx +4 -3
  411. package/src/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.ts +6 -6
  412. package/src/runtimes/edge/EdgeChatAdapter.ts +6 -6
  413. package/src/runtimes/edge/EdgeRuntimeRequestOptions.ts +1 -1
  414. package/src/runtimes/edge/converters/fromLanguageModelTools.ts +1 -1
  415. package/src/runtimes/edge/converters/toLanguageModelTools.ts +1 -1
  416. package/src/runtimes/edge/createEdgeRuntimeAPI.ts +2 -2
  417. package/src/runtimes/edge/streams/toolResultStream.ts +1 -1
  418. package/src/runtimes/external-store/ExternalStoreRuntimeCore.tsx +1 -2
  419. package/src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx +4 -3
  420. package/src/runtimes/external-store/external-message-converter.tsx +28 -0
  421. package/src/runtimes/external-store/index.ts +4 -1
  422. package/src/runtimes/local/ChatModelAdapter.tsx +7 -2
  423. package/src/runtimes/local/LocalRuntimeCore.tsx +1 -4
  424. package/src/runtimes/local/LocalThreadRuntimeCore.tsx +7 -8
  425. package/src/runtimes/remote-thread-list/EMPTY_THREAD_CORE.tsx +1 -1
  426. package/src/tailwindcss/index.ts +8 -2
  427. package/src/types/index.ts +0 -6
  428. package/src/ui/thread-config.tsx +1 -1
  429. package/src/utils/{ProxyConfigProvider.ts → CompositeContextProvider.ts} +8 -8
  430. package/dist/model-config/index.d.ts.map +0 -1
  431. package/dist/model-config/index.js.map +0 -1
  432. package/dist/model-config/index.mjs.map +0 -1
  433. package/dist/model-config/makeAssistantTool.d.ts.map +0 -1
  434. package/dist/model-config/makeAssistantTool.js.map +0 -1
  435. package/dist/model-config/makeAssistantTool.mjs.map +0 -1
  436. package/dist/model-config/makeAssistantToolUI.d.ts.map +0 -1
  437. package/dist/model-config/makeAssistantToolUI.js.map +0 -1
  438. package/dist/model-config/makeAssistantToolUI.mjs.map +0 -1
  439. package/dist/model-config/useAssistantInstructions.d.ts.map +0 -1
  440. package/dist/model-config/useAssistantInstructions.js.map +0 -1
  441. package/dist/model-config/useAssistantInstructions.mjs.map +0 -1
  442. package/dist/model-config/useAssistantTool.d.ts.map +0 -1
  443. package/dist/model-config/useAssistantTool.js.map +0 -1
  444. package/dist/model-config/useAssistantTool.mjs.map +0 -1
  445. package/dist/model-config/useAssistantToolUI.d.ts.map +0 -1
  446. package/dist/model-config/useAssistantToolUI.js.map +0 -1
  447. package/dist/model-config/useAssistantToolUI.mjs.map +0 -1
  448. package/dist/model-config/useInlineRender.d.ts.map +0 -1
  449. package/dist/model-config/useInlineRender.js.map +0 -1
  450. package/dist/model-config/useInlineRender.mjs.map +0 -1
  451. package/dist/primitive-hooks/actionBar/useActionBarCopy.d.ts +0 -7
  452. package/dist/primitive-hooks/actionBar/useActionBarCopy.d.ts.map +0 -1
  453. package/dist/primitive-hooks/actionBar/useActionBarCopy.js +0 -54
  454. package/dist/primitive-hooks/actionBar/useActionBarCopy.js.map +0 -1
  455. package/dist/primitive-hooks/actionBar/useActionBarCopy.mjs +0 -34
  456. package/dist/primitive-hooks/actionBar/useActionBarCopy.mjs.map +0 -1
  457. package/dist/primitive-hooks/actionBar/useActionBarEdit.d.ts +0 -2
  458. package/dist/primitive-hooks/actionBar/useActionBarEdit.d.ts.map +0 -1
  459. package/dist/primitive-hooks/actionBar/useActionBarEdit.js +0 -42
  460. package/dist/primitive-hooks/actionBar/useActionBarEdit.js.map +0 -1
  461. package/dist/primitive-hooks/actionBar/useActionBarEdit.mjs +0 -18
  462. package/dist/primitive-hooks/actionBar/useActionBarEdit.mjs.map +0 -1
  463. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.d.ts +0 -2
  464. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.d.ts.map +0 -1
  465. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js +0 -40
  466. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js.map +0 -1
  467. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.mjs +0 -16
  468. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.mjs.map +0 -1
  469. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.d.ts +0 -2
  470. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.d.ts.map +0 -1
  471. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js +0 -40
  472. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js.map +0 -1
  473. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.mjs +0 -16
  474. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.mjs.map +0 -1
  475. package/dist/primitive-hooks/actionBar/useActionBarReload.d.ts +0 -2
  476. package/dist/primitive-hooks/actionBar/useActionBarReload.d.ts.map +0 -1
  477. package/dist/primitive-hooks/actionBar/useActionBarReload.js +0 -48
  478. package/dist/primitive-hooks/actionBar/useActionBarReload.js.map +0 -1
  479. package/dist/primitive-hooks/actionBar/useActionBarReload.mjs +0 -24
  480. package/dist/primitive-hooks/actionBar/useActionBarReload.mjs.map +0 -1
  481. package/dist/primitive-hooks/actionBar/useActionBarSpeak.d.ts +0 -2
  482. package/dist/primitive-hooks/actionBar/useActionBarSpeak.d.ts.map +0 -1
  483. package/dist/primitive-hooks/actionBar/useActionBarSpeak.js +0 -44
  484. package/dist/primitive-hooks/actionBar/useActionBarSpeak.js.map +0 -1
  485. package/dist/primitive-hooks/actionBar/useActionBarSpeak.mjs +0 -20
  486. package/dist/primitive-hooks/actionBar/useActionBarSpeak.mjs.map +0 -1
  487. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.d.ts +0 -2
  488. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.d.ts.map +0 -1
  489. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js +0 -42
  490. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js.map +0 -1
  491. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.mjs +0 -21
  492. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.mjs.map +0 -1
  493. package/dist/primitive-hooks/attachment/useAttachmentRemove.d.ts +0 -2
  494. package/dist/primitive-hooks/attachment/useAttachmentRemove.d.ts.map +0 -1
  495. package/dist/primitive-hooks/attachment/useAttachmentRemove.js +0 -40
  496. package/dist/primitive-hooks/attachment/useAttachmentRemove.js.map +0 -1
  497. package/dist/primitive-hooks/attachment/useAttachmentRemove.mjs +0 -16
  498. package/dist/primitive-hooks/attachment/useAttachmentRemove.mjs.map +0 -1
  499. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.d.ts +0 -2
  500. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.d.ts.map +0 -1
  501. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js +0 -36
  502. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js.map +0 -1
  503. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.mjs +0 -12
  504. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.mjs.map +0 -1
  505. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.d.ts +0 -2
  506. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.d.ts.map +0 -1
  507. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js +0 -42
  508. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js.map +0 -1
  509. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.mjs +0 -21
  510. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.mjs.map +0 -1
  511. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.d.ts +0 -2
  512. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.d.ts.map +0 -1
  513. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js +0 -36
  514. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js.map +0 -1
  515. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.mjs +0 -12
  516. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.mjs.map +0 -1
  517. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.d.ts +0 -2
  518. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.d.ts.map +0 -1
  519. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js +0 -42
  520. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js.map +0 -1
  521. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.mjs +0 -21
  522. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.mjs.map +0 -1
  523. package/dist/primitive-hooks/composer/useComposerAddAttachment.d.ts +0 -8
  524. package/dist/primitive-hooks/composer/useComposerAddAttachment.d.ts.map +0 -1
  525. package/dist/primitive-hooks/composer/useComposerAddAttachment.js +0 -58
  526. package/dist/primitive-hooks/composer/useComposerAddAttachment.js.map +0 -1
  527. package/dist/primitive-hooks/composer/useComposerAddAttachment.mjs +0 -34
  528. package/dist/primitive-hooks/composer/useComposerAddAttachment.mjs.map +0 -1
  529. package/dist/primitive-hooks/composer/useComposerCancel.d.ts +0 -2
  530. package/dist/primitive-hooks/composer/useComposerCancel.d.ts.map +0 -1
  531. package/dist/primitive-hooks/composer/useComposerCancel.js +0 -42
  532. package/dist/primitive-hooks/composer/useComposerCancel.js.map +0 -1
  533. package/dist/primitive-hooks/composer/useComposerCancel.mjs +0 -18
  534. package/dist/primitive-hooks/composer/useComposerCancel.mjs.map +0 -1
  535. package/dist/primitive-hooks/composer/useComposerIf.d.ts +0 -8
  536. package/dist/primitive-hooks/composer/useComposerIf.d.ts.map +0 -1
  537. package/dist/primitive-hooks/composer/useComposerIf.js +0 -39
  538. package/dist/primitive-hooks/composer/useComposerIf.js.map +0 -1
  539. package/dist/primitive-hooks/composer/useComposerIf.mjs +0 -15
  540. package/dist/primitive-hooks/composer/useComposerIf.mjs.map +0 -1
  541. package/dist/primitive-hooks/composer/useComposerSend.d.ts +0 -2
  542. package/dist/primitive-hooks/composer/useComposerSend.d.ts.map +0 -1
  543. package/dist/primitive-hooks/composer/useComposerSend.js +0 -49
  544. package/dist/primitive-hooks/composer/useComposerSend.js.map +0 -1
  545. package/dist/primitive-hooks/composer/useComposerSend.mjs +0 -25
  546. package/dist/primitive-hooks/composer/useComposerSend.mjs.map +0 -1
  547. package/dist/primitive-hooks/contentPart/index.d.ts +0 -4
  548. package/dist/primitive-hooks/contentPart/index.d.ts.map +0 -1
  549. package/dist/primitive-hooks/contentPart/index.js +0 -37
  550. package/dist/primitive-hooks/contentPart/index.js.map +0 -1
  551. package/dist/primitive-hooks/contentPart/index.mjs +0 -10
  552. package/dist/primitive-hooks/contentPart/index.mjs.map +0 -1
  553. package/dist/primitive-hooks/contentPart/useContentPartDisplay.d.ts.map +0 -1
  554. package/dist/primitive-hooks/contentPart/useContentPartDisplay.js.map +0 -1
  555. package/dist/primitive-hooks/contentPart/useContentPartDisplay.mjs.map +0 -1
  556. package/dist/primitive-hooks/contentPart/useContentPartImage.d.ts.map +0 -1
  557. package/dist/primitive-hooks/contentPart/useContentPartImage.js.map +0 -1
  558. package/dist/primitive-hooks/contentPart/useContentPartImage.mjs.map +0 -1
  559. package/dist/primitive-hooks/contentPart/useContentPartText.d.ts.map +0 -1
  560. package/dist/primitive-hooks/contentPart/useContentPartText.js.map +0 -1
  561. package/dist/primitive-hooks/contentPart/useContentPartText.mjs.map +0 -1
  562. package/dist/primitive-hooks/index.d.ts +0 -2
  563. package/dist/primitive-hooks/index.d.ts.map +0 -1
  564. package/dist/primitive-hooks/index.js +0 -25
  565. package/dist/primitive-hooks/index.js.map +0 -1
  566. package/dist/primitive-hooks/index.mjs +0 -3
  567. package/dist/primitive-hooks/index.mjs.map +0 -1
  568. package/dist/primitive-hooks/message/useMessageIf.d.ts +0 -17
  569. package/dist/primitive-hooks/message/useMessageIf.d.ts.map +0 -1
  570. package/dist/primitive-hooks/message/useMessageIf.js +0 -68
  571. package/dist/primitive-hooks/message/useMessageIf.js.map +0 -1
  572. package/dist/primitive-hooks/message/useMessageIf.mjs +0 -47
  573. package/dist/primitive-hooks/message/useMessageIf.mjs.map +0 -1
  574. package/dist/primitive-hooks/thread/useThreadEmpty.d.ts +0 -2
  575. package/dist/primitive-hooks/thread/useThreadEmpty.d.ts.map +0 -1
  576. package/dist/primitive-hooks/thread/useThreadEmpty.js +0 -35
  577. package/dist/primitive-hooks/thread/useThreadEmpty.js.map +0 -1
  578. package/dist/primitive-hooks/thread/useThreadEmpty.mjs +0 -11
  579. package/dist/primitive-hooks/thread/useThreadEmpty.mjs.map +0 -1
  580. package/dist/primitive-hooks/thread/useThreadIf.d.ts +0 -10
  581. package/dist/primitive-hooks/thread/useThreadIf.d.ts.map +0 -1
  582. package/dist/primitive-hooks/thread/useThreadIf.js +0 -43
  583. package/dist/primitive-hooks/thread/useThreadIf.js.map +0 -1
  584. package/dist/primitive-hooks/thread/useThreadIf.mjs +0 -19
  585. package/dist/primitive-hooks/thread/useThreadIf.mjs.map +0 -1
  586. package/dist/primitive-hooks/thread/useThreadScrollToBottom.d.ts +0 -2
  587. package/dist/primitive-hooks/thread/useThreadScrollToBottom.d.ts.map +0 -1
  588. package/dist/primitive-hooks/thread/useThreadScrollToBottom.js +0 -43
  589. package/dist/primitive-hooks/thread/useThreadScrollToBottom.js.map +0 -1
  590. package/dist/primitive-hooks/thread/useThreadScrollToBottom.mjs +0 -19
  591. package/dist/primitive-hooks/thread/useThreadScrollToBottom.mjs.map +0 -1
  592. package/dist/primitive-hooks/thread/useThreadSuggestion.d.ts +0 -9
  593. package/dist/primitive-hooks/thread/useThreadSuggestion.d.ts.map +0 -1
  594. package/dist/primitive-hooks/thread/useThreadSuggestion.js +0 -51
  595. package/dist/primitive-hooks/thread/useThreadSuggestion.js.map +0 -1
  596. package/dist/primitive-hooks/thread/useThreadSuggestion.mjs +0 -27
  597. package/dist/primitive-hooks/thread/useThreadSuggestion.mjs.map +0 -1
  598. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.d.ts.map +0 -1
  599. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.js.map +0 -1
  600. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.mjs.map +0 -1
  601. package/dist/types/ModelConfigTypes.d.ts.map +0 -1
  602. package/dist/types/ModelConfigTypes.js.map +0 -1
  603. package/dist/types/ModelConfigTypes.mjs.map +0 -1
  604. package/dist/utils/ProxyConfigProvider.d.ts +0 -10
  605. package/dist/utils/ProxyConfigProvider.d.ts.map +0 -1
  606. package/dist/utils/ProxyConfigProvider.js.map +0 -1
  607. package/dist/utils/ProxyConfigProvider.mjs.map +0 -1
  608. package/src/primitive-hooks/actionBar/useActionBarCopy.tsx +0 -45
  609. package/src/primitive-hooks/actionBar/useActionBarEdit.tsx +0 -16
  610. package/src/primitive-hooks/actionBar/useActionBarFeedbackNegative.tsx +0 -14
  611. package/src/primitive-hooks/actionBar/useActionBarFeedbackPositive.tsx +0 -14
  612. package/src/primitive-hooks/actionBar/useActionBarReload.tsx +0 -23
  613. package/src/primitive-hooks/actionBar/useActionBarSpeak.tsx +0 -22
  614. package/src/primitive-hooks/actionBar/useActionBarStopSpeaking.tsx +0 -20
  615. package/src/primitive-hooks/attachment/useAttachmentRemove.ts +0 -14
  616. package/src/primitive-hooks/branchPicker/useBranchPickerCount.tsx +0 -8
  617. package/src/primitive-hooks/branchPicker/useBranchPickerNext.tsx +0 -19
  618. package/src/primitive-hooks/branchPicker/useBranchPickerNumber.tsx +0 -8
  619. package/src/primitive-hooks/branchPicker/useBranchPickerPrevious.tsx +0 -19
  620. package/src/primitive-hooks/composer/useComposerAddAttachment.tsx +0 -42
  621. package/src/primitive-hooks/composer/useComposerCancel.tsx +0 -16
  622. package/src/primitive-hooks/composer/useComposerIf.tsx +0 -19
  623. package/src/primitive-hooks/composer/useComposerSend.tsx +0 -25
  624. package/src/primitive-hooks/contentPart/index.ts +0 -3
  625. package/src/primitive-hooks/index.ts +0 -1
  626. package/src/primitive-hooks/message/useMessageIf.tsx +0 -80
  627. package/src/primitive-hooks/thread/useThreadEmpty.tsx +0 -7
  628. package/src/primitive-hooks/thread/useThreadIf.tsx +0 -25
  629. package/src/primitive-hooks/thread/useThreadScrollToBottom.tsx +0 -18
  630. package/src/primitive-hooks/thread/useThreadSuggestion.tsx +0 -33
  631. /package/dist/{model-config → model-context}/makeAssistantTool.d.ts +0 -0
  632. /package/dist/{model-config → model-context}/makeAssistantToolUI.d.ts +0 -0
  633. /package/dist/{model-config → model-context}/useAssistantInstructions.d.ts +0 -0
  634. /package/dist/{model-config → model-context}/useAssistantToolUI.d.ts +0 -0
  635. /package/dist/{model-config → model-context}/useInlineRender.d.ts +0 -0
  636. /package/dist/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.d.ts +0 -0
  637. /package/dist/{primitive-hooks → primitives}/contentPart/useContentPartImage.d.ts +0 -0
  638. /package/dist/{primitive-hooks → primitives}/contentPart/useContentPartText.d.ts +0 -0
  639. /package/dist/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.d.ts +0 -0
  640. /package/src/{model-config → model-context}/makeAssistantTool.tsx +0 -0
  641. /package/src/{model-config → model-context}/makeAssistantToolUI.tsx +0 -0
  642. /package/src/{model-config → model-context}/useAssistantToolUI.tsx +0 -0
  643. /package/src/{model-config → model-context}/useInlineRender.tsx +0 -0
  644. /package/src/{primitive-hooks → primitives}/contentPart/useContentPartDisplay.tsx +0 -0
  645. /package/src/{primitive-hooks → primitives}/contentPart/useContentPartImage.tsx +0 -0
  646. /package/src/{primitive-hooks → primitives}/contentPart/useContentPartText.tsx +0 -0
  647. /package/src/{primitive-hooks → primitives}/thread/useThreadViewportAutoScroll.tsx +0 -0
@@ -1,5 +1,5 @@
1
1
  import { AssistantRuntimeCore } from "../runtimes/core/AssistantRuntimeCore";
2
- import { ModelConfigProvider } from "../types/ModelConfigTypes";
2
+ import { ModelContextProvider } from "../model-context/ModelContextTypes";
3
3
  import { ThreadListItemRuntimeBinding, ThreadRuntime, ThreadRuntimeCoreBinding } from "./ThreadRuntime";
4
4
  import { Unsubscribe } from "../types";
5
5
  import { ThreadListRuntime, ThreadListRuntimeImpl } from "./ThreadListRuntime";
@@ -19,22 +19,26 @@ export type AssistantRuntime = {
19
19
  /**
20
20
  * Switch to a new thread.
21
21
  *
22
- * @deprecated This field was moved to `threads.switchToNewThread`.
22
+ * @deprecated This method was moved to `threads.switchToNewThread`.
23
23
  */
24
24
  switchToNewThread(): void;
25
25
  /**
26
26
  * Switch to a thread.
27
27
  *
28
28
  * @param threadId The thread ID to switch to.
29
- * @deprecated This field was moved to `threads.switchToThread`.
29
+ * @deprecated This method was moved to `threads.switchToThread`.
30
30
  */
31
31
  switchToThread(threadId: string): void;
32
32
  /**
33
- * Register a model config provider. Model config providers are configuration such as system message, temperature, etc. that are set in the frontend.
33
+ * Register a model context provider. Model context providers are configuration such as system message, temperature, etc. that are set in the frontend.
34
34
  *
35
- * @param provider The model config provider to register.
35
+ * @param provider The model context provider to register.
36
36
  */
37
- registerModelConfigProvider(provider: ModelConfigProvider): Unsubscribe;
37
+ registerModelContextProvider(provider: ModelContextProvider): Unsubscribe;
38
+ /**
39
+ * @deprecated This method was renamed to `registerModelContextProvider`.
40
+ */
41
+ registerModelConfigProvider(provider: ModelContextProvider): Unsubscribe;
38
42
  };
39
43
  export declare class AssistantRuntimeImpl implements AssistantRuntime {
40
44
  private readonly _core;
@@ -46,7 +50,8 @@ export declare class AssistantRuntimeImpl implements AssistantRuntime {
46
50
  get thread(): ThreadRuntime;
47
51
  switchToNewThread(): Promise<void>;
48
52
  switchToThread(threadId: string): Promise<void>;
49
- registerModelConfigProvider(provider: ModelConfigProvider): Unsubscribe;
53
+ registerModelContextProvider(provider: ModelContextProvider): Unsubscribe;
54
+ registerModelConfigProvider(provider: ModelContextProvider): Unsubscribe;
50
55
  static create(_core: AssistantRuntimeCore, runtimeFactory?: new (binding: ThreadRuntimeCoreBinding, threadListItemBinding: ThreadListItemRuntimeBinding) => ThreadRuntime): AssistantRuntime;
51
56
  }
52
57
  //# sourceMappingURL=AssistantRuntime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AssistantRuntime.d.ts","sourceRoot":"","sources":["../../src/api/AssistantRuntime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EACL,4BAA4B,EAC5B,aAAa,EACb,wBAAwB,EAEzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE/E,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IAEpC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAE/B;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IAEvC;;;;OAIG;IACH,iBAAiB,IAAI,IAAI,CAAC;IAE1B;;;;;OAKG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvC;;;;OAIG;IACH,2BAA2B,CAAC,QAAQ,EAAE,mBAAmB,GAAG,WAAW,CAAC;CACzE,CAAC;AAEF,qBAAa,oBAAqB,YAAW,gBAAgB;IASzD,OAAO,CAAC,QAAQ,CAAC,KAAK;IARxB,SAAgB,OAAO,wBAAC;IACxB,IAAW,UAAU,0BAEpB;IAED,SAAgB,OAAO,EAAE,aAAa,CAAC;IAEvC,SAAS,aACU,KAAK,EAAE,oBAAoB,EAC5C,cAAc,GAAE,KACd,OAAO,EAAE,wBAAwB,EACjC,qBAAqB,EAAE,4BAA4B,KAChD,aAAiC;IAMxC,SAAS,CAAC,sBAAsB;IAOhC,IAAW,MAAM,kBAEhB;IAEM,iBAAiB;IAIjB,cAAc,CAAC,QAAQ,EAAE,MAAM;IAI/B,2BAA2B,CAAC,QAAQ,EAAE,mBAAmB;WAIlD,MAAM,CAClB,KAAK,EAAE,oBAAoB,EAC3B,cAAc,GAAE,KACd,OAAO,EAAE,wBAAwB,EACjC,qBAAqB,EAAE,4BAA4B,KAChD,aAAiC,GACrC,gBAAgB;CAGpB"}
1
+ {"version":3,"file":"AssistantRuntime.d.ts","sourceRoot":"","sources":["../../src/api/AssistantRuntime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EACL,4BAA4B,EAC5B,aAAa,EACb,wBAAwB,EAEzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE/E,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IAEpC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAE/B;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IAEvC;;;;OAIG;IACH,iBAAiB,IAAI,IAAI,CAAC;IAE1B;;;;;OAKG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvC;;;;OAIG;IACH,4BAA4B,CAAC,QAAQ,EAAE,oBAAoB,GAAG,WAAW,CAAC;IAE1E;;OAEG;IACH,2BAA2B,CAAC,QAAQ,EAAE,oBAAoB,GAAG,WAAW,CAAC;CAC1E,CAAC;AAEF,qBAAa,oBAAqB,YAAW,gBAAgB;IASzD,OAAO,CAAC,QAAQ,CAAC,KAAK;IARxB,SAAgB,OAAO,wBAAC;IACxB,IAAW,UAAU,0BAEpB;IAED,SAAgB,OAAO,EAAE,aAAa,CAAC;IAEvC,SAAS,aACU,KAAK,EAAE,oBAAoB,EAC5C,cAAc,GAAE,KACd,OAAO,EAAE,wBAAwB,EACjC,qBAAqB,EAAE,4BAA4B,KAChD,aAAiC;IAMxC,SAAS,CAAC,sBAAsB;IAShC,IAAW,MAAM,kBAEhB;IAEM,iBAAiB;IAIjB,cAAc,CAAC,QAAQ,EAAE,MAAM;IAI/B,4BAA4B,CAAC,QAAQ,EAAE,oBAAoB;IAI3D,2BAA2B,CAAC,QAAQ,EAAE,oBAAoB;WAInD,MAAM,CAClB,KAAK,EAAE,oBAAoB,EAC3B,cAAc,GAAE,KACd,OAAO,EAAE,wBAAwB,EACjC,qBAAqB,EAAE,4BAA4B,KAChD,aAAiC,GACrC,gBAAgB;CAGpB"}
@@ -39,6 +39,7 @@ var AssistantRuntimeImpl = class _AssistantRuntimeImpl {
39
39
  __internal_bindMethods() {
40
40
  this.switchToNewThread = this.switchToNewThread.bind(this);
41
41
  this.switchToThread = this.switchToThread.bind(this);
42
+ this.registerModelContextProvider = this.registerModelContextProvider.bind(this);
42
43
  this.registerModelConfigProvider = this.registerModelConfigProvider.bind(this);
43
44
  }
44
45
  get thread() {
@@ -50,8 +51,11 @@ var AssistantRuntimeImpl = class _AssistantRuntimeImpl {
50
51
  switchToThread(threadId) {
51
52
  return this._core.threads.switchToThread(threadId);
52
53
  }
54
+ registerModelContextProvider(provider) {
55
+ return this._core.registerModelContextProvider(provider);
56
+ }
53
57
  registerModelConfigProvider(provider) {
54
- return this._core.registerModelConfigProvider(provider);
58
+ return this.registerModelContextProvider(provider);
55
59
  }
56
60
  static create(_core, runtimeFactory = import_ThreadRuntime.ThreadRuntimeImpl) {
57
61
  return new _AssistantRuntimeImpl(_core, runtimeFactory);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/api/AssistantRuntime.ts"],"sourcesContent":["import { AssistantRuntimeCore } from \"../runtimes/core/AssistantRuntimeCore\";\nimport { ModelConfigProvider } from \"../types/ModelConfigTypes\";\nimport {\n ThreadListItemRuntimeBinding,\n ThreadRuntime,\n ThreadRuntimeCoreBinding,\n ThreadRuntimeImpl,\n} from \"./ThreadRuntime\";\nimport { Unsubscribe } from \"../types\";\nimport { ThreadListRuntime, ThreadListRuntimeImpl } from \"./ThreadListRuntime\";\n\nexport type AssistantRuntime = {\n /**\n * The threads in this assistant.\n */\n readonly threads: ThreadListRuntime;\n\n /**\n * The currently selected main thread. Equivalent to `threads.main`.\n */\n readonly thread: ThreadRuntime;\n\n /**\n * @deprecated This field was renamed to `threads.main`.\n */\n readonly threadList: ThreadListRuntime;\n\n /**\n * Switch to a new thread.\n *\n * @deprecated This field was moved to `threads.switchToNewThread`.\n */\n switchToNewThread(): void;\n\n /**\n * Switch to a thread.\n *\n * @param threadId The thread ID to switch to.\n * @deprecated This field was moved to `threads.switchToThread`.\n */\n switchToThread(threadId: string): void;\n\n /**\n * Register a model config provider. Model config providers are configuration such as system message, temperature, etc. that are set in the frontend.\n *\n * @param provider The model config provider to register.\n */\n registerModelConfigProvider(provider: ModelConfigProvider): Unsubscribe;\n};\n\nexport class AssistantRuntimeImpl implements AssistantRuntime {\n public readonly threads;\n public get threadList() {\n return this.threads;\n }\n\n public readonly _thread: ThreadRuntime;\n\n protected constructor(\n private readonly _core: AssistantRuntimeCore,\n runtimeFactory: new (\n binding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) => ThreadRuntime = ThreadRuntimeImpl,\n ) {\n this.threads = new ThreadListRuntimeImpl(_core.threads, runtimeFactory);\n this._thread = this.threadList.main;\n }\n\n protected __internal_bindMethods() {\n this.switchToNewThread = this.switchToNewThread.bind(this);\n this.switchToThread = this.switchToThread.bind(this);\n this.registerModelConfigProvider =\n this.registerModelConfigProvider.bind(this);\n }\n\n public get thread() {\n return this._thread;\n }\n\n public switchToNewThread() {\n return this._core.threads.switchToNewThread();\n }\n\n public switchToThread(threadId: string) {\n return this._core.threads.switchToThread(threadId);\n }\n\n public registerModelConfigProvider(provider: ModelConfigProvider) {\n return this._core.registerModelConfigProvider(provider);\n }\n\n public static create(\n _core: AssistantRuntimeCore,\n runtimeFactory: new (\n binding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) => ThreadRuntime = ThreadRuntimeImpl,\n ): AssistantRuntime {\n return new AssistantRuntimeImpl(_core, runtimeFactory);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,2BAKO;AAEP,+BAAyD;AAyClD,IAAM,uBAAN,MAAM,sBAAiD;AAAA,EAQlD,YACS,OACjB,iBAGqB,wCACrB;AALiB;AAMjB,SAAK,UAAU,IAAI,+CAAsB,MAAM,SAAS,cAAc;AACtE,SAAK,UAAU,KAAK,WAAW;AAAA,EACjC;AAAA,EAhBgB;AAAA,EAChB,IAAW,aAAa;AACtB,WAAO,KAAK;AAAA,EACd;AAAA,EAEgB;AAAA,EAaN,yBAAyB;AACjC,SAAK,oBAAoB,KAAK,kBAAkB,KAAK,IAAI;AACzD,SAAK,iBAAiB,KAAK,eAAe,KAAK,IAAI;AACnD,SAAK,8BACH,KAAK,4BAA4B,KAAK,IAAI;AAAA,EAC9C;AAAA,EAEA,IAAW,SAAS;AAClB,WAAO,KAAK;AAAA,EACd;AAAA,EAEO,oBAAoB;AACzB,WAAO,KAAK,MAAM,QAAQ,kBAAkB;AAAA,EAC9C;AAAA,EAEO,eAAe,UAAkB;AACtC,WAAO,KAAK,MAAM,QAAQ,eAAe,QAAQ;AAAA,EACnD;AAAA,EAEO,4BAA4B,UAA+B;AAChE,WAAO,KAAK,MAAM,4BAA4B,QAAQ;AAAA,EACxD;AAAA,EAEA,OAAc,OACZ,OACA,iBAGqB,wCACH;AAClB,WAAO,IAAI,sBAAqB,OAAO,cAAc;AAAA,EACvD;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/api/AssistantRuntime.ts"],"sourcesContent":["import { AssistantRuntimeCore } from \"../runtimes/core/AssistantRuntimeCore\";\nimport { ModelContextProvider } from \"../model-context/ModelContextTypes\";\nimport {\n ThreadListItemRuntimeBinding,\n ThreadRuntime,\n ThreadRuntimeCoreBinding,\n ThreadRuntimeImpl,\n} from \"./ThreadRuntime\";\nimport { Unsubscribe } from \"../types\";\nimport { ThreadListRuntime, ThreadListRuntimeImpl } from \"./ThreadListRuntime\";\n\nexport type AssistantRuntime = {\n /**\n * The threads in this assistant.\n */\n readonly threads: ThreadListRuntime;\n\n /**\n * The currently selected main thread. Equivalent to `threads.main`.\n */\n readonly thread: ThreadRuntime;\n\n /**\n * @deprecated This field was renamed to `threads.main`.\n */\n readonly threadList: ThreadListRuntime;\n\n /**\n * Switch to a new thread.\n *\n * @deprecated This method was moved to `threads.switchToNewThread`.\n */\n switchToNewThread(): void;\n\n /**\n * Switch to a thread.\n *\n * @param threadId The thread ID to switch to.\n * @deprecated This method was moved to `threads.switchToThread`.\n */\n switchToThread(threadId: string): void;\n\n /**\n * Register a model context provider. Model context providers are configuration such as system message, temperature, etc. that are set in the frontend.\n *\n * @param provider The model context provider to register.\n */\n registerModelContextProvider(provider: ModelContextProvider): Unsubscribe;\n\n /**\n * @deprecated This method was renamed to `registerModelContextProvider`.\n */\n registerModelConfigProvider(provider: ModelContextProvider): Unsubscribe;\n};\n\nexport class AssistantRuntimeImpl implements AssistantRuntime {\n public readonly threads;\n public get threadList() {\n return this.threads;\n }\n\n public readonly _thread: ThreadRuntime;\n\n protected constructor(\n private readonly _core: AssistantRuntimeCore,\n runtimeFactory: new (\n binding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) => ThreadRuntime = ThreadRuntimeImpl,\n ) {\n this.threads = new ThreadListRuntimeImpl(_core.threads, runtimeFactory);\n this._thread = this.threadList.main;\n }\n\n protected __internal_bindMethods() {\n this.switchToNewThread = this.switchToNewThread.bind(this);\n this.switchToThread = this.switchToThread.bind(this);\n this.registerModelContextProvider =\n this.registerModelContextProvider.bind(this);\n this.registerModelConfigProvider =\n this.registerModelConfigProvider.bind(this);\n }\n\n public get thread() {\n return this._thread;\n }\n\n public switchToNewThread() {\n return this._core.threads.switchToNewThread();\n }\n\n public switchToThread(threadId: string) {\n return this._core.threads.switchToThread(threadId);\n }\n\n public registerModelContextProvider(provider: ModelContextProvider) {\n return this._core.registerModelContextProvider(provider);\n }\n\n public registerModelConfigProvider(provider: ModelContextProvider) {\n return this.registerModelContextProvider(provider);\n }\n\n public static create(\n _core: AssistantRuntimeCore,\n runtimeFactory: new (\n binding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) => ThreadRuntime = ThreadRuntimeImpl,\n ): AssistantRuntime {\n return new AssistantRuntimeImpl(_core, runtimeFactory);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,2BAKO;AAEP,+BAAyD;AA8ClD,IAAM,uBAAN,MAAM,sBAAiD;AAAA,EAQlD,YACS,OACjB,iBAGqB,wCACrB;AALiB;AAMjB,SAAK,UAAU,IAAI,+CAAsB,MAAM,SAAS,cAAc;AACtE,SAAK,UAAU,KAAK,WAAW;AAAA,EACjC;AAAA,EAhBgB;AAAA,EAChB,IAAW,aAAa;AACtB,WAAO,KAAK;AAAA,EACd;AAAA,EAEgB;AAAA,EAaN,yBAAyB;AACjC,SAAK,oBAAoB,KAAK,kBAAkB,KAAK,IAAI;AACzD,SAAK,iBAAiB,KAAK,eAAe,KAAK,IAAI;AACnD,SAAK,+BACH,KAAK,6BAA6B,KAAK,IAAI;AAC7C,SAAK,8BACH,KAAK,4BAA4B,KAAK,IAAI;AAAA,EAC9C;AAAA,EAEA,IAAW,SAAS;AAClB,WAAO,KAAK;AAAA,EACd;AAAA,EAEO,oBAAoB;AACzB,WAAO,KAAK,MAAM,QAAQ,kBAAkB;AAAA,EAC9C;AAAA,EAEO,eAAe,UAAkB;AACtC,WAAO,KAAK,MAAM,QAAQ,eAAe,QAAQ;AAAA,EACnD;AAAA,EAEO,6BAA6B,UAAgC;AAClE,WAAO,KAAK,MAAM,6BAA6B,QAAQ;AAAA,EACzD;AAAA,EAEO,4BAA4B,UAAgC;AACjE,WAAO,KAAK,6BAA6B,QAAQ;AAAA,EACnD;AAAA,EAEA,OAAc,OACZ,OACA,iBAGqB,wCACH;AAClB,WAAO,IAAI,sBAAqB,OAAO,cAAc;AAAA,EACvD;AACF;","names":[]}
@@ -17,6 +17,7 @@ var AssistantRuntimeImpl = class _AssistantRuntimeImpl {
17
17
  __internal_bindMethods() {
18
18
  this.switchToNewThread = this.switchToNewThread.bind(this);
19
19
  this.switchToThread = this.switchToThread.bind(this);
20
+ this.registerModelContextProvider = this.registerModelContextProvider.bind(this);
20
21
  this.registerModelConfigProvider = this.registerModelConfigProvider.bind(this);
21
22
  }
22
23
  get thread() {
@@ -28,8 +29,11 @@ var AssistantRuntimeImpl = class _AssistantRuntimeImpl {
28
29
  switchToThread(threadId) {
29
30
  return this._core.threads.switchToThread(threadId);
30
31
  }
32
+ registerModelContextProvider(provider) {
33
+ return this._core.registerModelContextProvider(provider);
34
+ }
31
35
  registerModelConfigProvider(provider) {
32
- return this._core.registerModelConfigProvider(provider);
36
+ return this.registerModelContextProvider(provider);
33
37
  }
34
38
  static create(_core, runtimeFactory = ThreadRuntimeImpl) {
35
39
  return new _AssistantRuntimeImpl(_core, runtimeFactory);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/api/AssistantRuntime.ts"],"sourcesContent":["import { AssistantRuntimeCore } from \"../runtimes/core/AssistantRuntimeCore\";\nimport { ModelConfigProvider } from \"../types/ModelConfigTypes\";\nimport {\n ThreadListItemRuntimeBinding,\n ThreadRuntime,\n ThreadRuntimeCoreBinding,\n ThreadRuntimeImpl,\n} from \"./ThreadRuntime\";\nimport { Unsubscribe } from \"../types\";\nimport { ThreadListRuntime, ThreadListRuntimeImpl } from \"./ThreadListRuntime\";\n\nexport type AssistantRuntime = {\n /**\n * The threads in this assistant.\n */\n readonly threads: ThreadListRuntime;\n\n /**\n * The currently selected main thread. Equivalent to `threads.main`.\n */\n readonly thread: ThreadRuntime;\n\n /**\n * @deprecated This field was renamed to `threads.main`.\n */\n readonly threadList: ThreadListRuntime;\n\n /**\n * Switch to a new thread.\n *\n * @deprecated This field was moved to `threads.switchToNewThread`.\n */\n switchToNewThread(): void;\n\n /**\n * Switch to a thread.\n *\n * @param threadId The thread ID to switch to.\n * @deprecated This field was moved to `threads.switchToThread`.\n */\n switchToThread(threadId: string): void;\n\n /**\n * Register a model config provider. Model config providers are configuration such as system message, temperature, etc. that are set in the frontend.\n *\n * @param provider The model config provider to register.\n */\n registerModelConfigProvider(provider: ModelConfigProvider): Unsubscribe;\n};\n\nexport class AssistantRuntimeImpl implements AssistantRuntime {\n public readonly threads;\n public get threadList() {\n return this.threads;\n }\n\n public readonly _thread: ThreadRuntime;\n\n protected constructor(\n private readonly _core: AssistantRuntimeCore,\n runtimeFactory: new (\n binding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) => ThreadRuntime = ThreadRuntimeImpl,\n ) {\n this.threads = new ThreadListRuntimeImpl(_core.threads, runtimeFactory);\n this._thread = this.threadList.main;\n }\n\n protected __internal_bindMethods() {\n this.switchToNewThread = this.switchToNewThread.bind(this);\n this.switchToThread = this.switchToThread.bind(this);\n this.registerModelConfigProvider =\n this.registerModelConfigProvider.bind(this);\n }\n\n public get thread() {\n return this._thread;\n }\n\n public switchToNewThread() {\n return this._core.threads.switchToNewThread();\n }\n\n public switchToThread(threadId: string) {\n return this._core.threads.switchToThread(threadId);\n }\n\n public registerModelConfigProvider(provider: ModelConfigProvider) {\n return this._core.registerModelConfigProvider(provider);\n }\n\n public static create(\n _core: AssistantRuntimeCore,\n runtimeFactory: new (\n binding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) => ThreadRuntime = ThreadRuntimeImpl,\n ): AssistantRuntime {\n return new AssistantRuntimeImpl(_core, runtimeFactory);\n }\n}\n"],"mappings":";AAEA;AAAA,EAIE;AAAA,OACK;AAEP,SAA4B,6BAA6B;AAyClD,IAAM,uBAAN,MAAM,sBAAiD;AAAA,EAQlD,YACS,OACjB,iBAGqB,mBACrB;AALiB;AAMjB,SAAK,UAAU,IAAI,sBAAsB,MAAM,SAAS,cAAc;AACtE,SAAK,UAAU,KAAK,WAAW;AAAA,EACjC;AAAA,EAhBgB;AAAA,EAChB,IAAW,aAAa;AACtB,WAAO,KAAK;AAAA,EACd;AAAA,EAEgB;AAAA,EAaN,yBAAyB;AACjC,SAAK,oBAAoB,KAAK,kBAAkB,KAAK,IAAI;AACzD,SAAK,iBAAiB,KAAK,eAAe,KAAK,IAAI;AACnD,SAAK,8BACH,KAAK,4BAA4B,KAAK,IAAI;AAAA,EAC9C;AAAA,EAEA,IAAW,SAAS;AAClB,WAAO,KAAK;AAAA,EACd;AAAA,EAEO,oBAAoB;AACzB,WAAO,KAAK,MAAM,QAAQ,kBAAkB;AAAA,EAC9C;AAAA,EAEO,eAAe,UAAkB;AACtC,WAAO,KAAK,MAAM,QAAQ,eAAe,QAAQ;AAAA,EACnD;AAAA,EAEO,4BAA4B,UAA+B;AAChE,WAAO,KAAK,MAAM,4BAA4B,QAAQ;AAAA,EACxD;AAAA,EAEA,OAAc,OACZ,OACA,iBAGqB,mBACH;AAClB,WAAO,IAAI,sBAAqB,OAAO,cAAc;AAAA,EACvD;AACF;","names":[]}
1
+ {"version":3,"sources":["../../src/api/AssistantRuntime.ts"],"sourcesContent":["import { AssistantRuntimeCore } from \"../runtimes/core/AssistantRuntimeCore\";\nimport { ModelContextProvider } from \"../model-context/ModelContextTypes\";\nimport {\n ThreadListItemRuntimeBinding,\n ThreadRuntime,\n ThreadRuntimeCoreBinding,\n ThreadRuntimeImpl,\n} from \"./ThreadRuntime\";\nimport { Unsubscribe } from \"../types\";\nimport { ThreadListRuntime, ThreadListRuntimeImpl } from \"./ThreadListRuntime\";\n\nexport type AssistantRuntime = {\n /**\n * The threads in this assistant.\n */\n readonly threads: ThreadListRuntime;\n\n /**\n * The currently selected main thread. Equivalent to `threads.main`.\n */\n readonly thread: ThreadRuntime;\n\n /**\n * @deprecated This field was renamed to `threads.main`.\n */\n readonly threadList: ThreadListRuntime;\n\n /**\n * Switch to a new thread.\n *\n * @deprecated This method was moved to `threads.switchToNewThread`.\n */\n switchToNewThread(): void;\n\n /**\n * Switch to a thread.\n *\n * @param threadId The thread ID to switch to.\n * @deprecated This method was moved to `threads.switchToThread`.\n */\n switchToThread(threadId: string): void;\n\n /**\n * Register a model context provider. Model context providers are configuration such as system message, temperature, etc. that are set in the frontend.\n *\n * @param provider The model context provider to register.\n */\n registerModelContextProvider(provider: ModelContextProvider): Unsubscribe;\n\n /**\n * @deprecated This method was renamed to `registerModelContextProvider`.\n */\n registerModelConfigProvider(provider: ModelContextProvider): Unsubscribe;\n};\n\nexport class AssistantRuntimeImpl implements AssistantRuntime {\n public readonly threads;\n public get threadList() {\n return this.threads;\n }\n\n public readonly _thread: ThreadRuntime;\n\n protected constructor(\n private readonly _core: AssistantRuntimeCore,\n runtimeFactory: new (\n binding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) => ThreadRuntime = ThreadRuntimeImpl,\n ) {\n this.threads = new ThreadListRuntimeImpl(_core.threads, runtimeFactory);\n this._thread = this.threadList.main;\n }\n\n protected __internal_bindMethods() {\n this.switchToNewThread = this.switchToNewThread.bind(this);\n this.switchToThread = this.switchToThread.bind(this);\n this.registerModelContextProvider =\n this.registerModelContextProvider.bind(this);\n this.registerModelConfigProvider =\n this.registerModelConfigProvider.bind(this);\n }\n\n public get thread() {\n return this._thread;\n }\n\n public switchToNewThread() {\n return this._core.threads.switchToNewThread();\n }\n\n public switchToThread(threadId: string) {\n return this._core.threads.switchToThread(threadId);\n }\n\n public registerModelContextProvider(provider: ModelContextProvider) {\n return this._core.registerModelContextProvider(provider);\n }\n\n public registerModelConfigProvider(provider: ModelContextProvider) {\n return this.registerModelContextProvider(provider);\n }\n\n public static create(\n _core: AssistantRuntimeCore,\n runtimeFactory: new (\n binding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) => ThreadRuntime = ThreadRuntimeImpl,\n ): AssistantRuntime {\n return new AssistantRuntimeImpl(_core, runtimeFactory);\n }\n}\n"],"mappings":";AAEA;AAAA,EAIE;AAAA,OACK;AAEP,SAA4B,6BAA6B;AA8ClD,IAAM,uBAAN,MAAM,sBAAiD;AAAA,EAQlD,YACS,OACjB,iBAGqB,mBACrB;AALiB;AAMjB,SAAK,UAAU,IAAI,sBAAsB,MAAM,SAAS,cAAc;AACtE,SAAK,UAAU,KAAK,WAAW;AAAA,EACjC;AAAA,EAhBgB;AAAA,EAChB,IAAW,aAAa;AACtB,WAAO,KAAK;AAAA,EACd;AAAA,EAEgB;AAAA,EAaN,yBAAyB;AACjC,SAAK,oBAAoB,KAAK,kBAAkB,KAAK,IAAI;AACzD,SAAK,iBAAiB,KAAK,eAAe,KAAK,IAAI;AACnD,SAAK,+BACH,KAAK,6BAA6B,KAAK,IAAI;AAC7C,SAAK,8BACH,KAAK,4BAA4B,KAAK,IAAI;AAAA,EAC9C;AAAA,EAEA,IAAW,SAAS;AAClB,WAAO,KAAK;AAAA,EACd;AAAA,EAEO,oBAAoB;AACzB,WAAO,KAAK,MAAM,QAAQ,kBAAkB;AAAA,EAC9C;AAAA,EAEO,eAAe,UAAkB;AACtC,WAAO,KAAK,MAAM,QAAQ,eAAe,QAAQ;AAAA,EACnD;AAAA,EAEO,6BAA6B,UAAgC;AAClE,WAAO,KAAK,MAAM,6BAA6B,QAAQ;AAAA,EACzD;AAAA,EAEO,4BAA4B,UAAgC;AACjE,WAAO,KAAK,6BAA6B,QAAQ;AAAA,EACnD;AAAA,EAEA,OAAc,OACZ,OACA,iBAGqB,mBACH;AAClB,WAAO,IAAI,sBAAqB,OAAO,cAAc;AAAA,EACvD;AACF;","names":[]}
@@ -1,12 +1,13 @@
1
1
  import { ThreadSuggestion, RuntimeCapabilities, ThreadRuntimeCore, SpeechState, ThreadRuntimeEventType, StartRunConfig } from "../runtimes/core/ThreadRuntimeCore";
2
2
  import { ExportedMessageRepository } from "../runtimes/utils/MessageRepository";
3
- import { AppendMessage, ModelConfig, ThreadMessage, Unsubscribe } from "../types";
3
+ import { AppendMessage, ThreadMessage, Unsubscribe } from "../types";
4
4
  import { MessageRuntime, MessageRuntimeImpl } from "./MessageRuntime";
5
5
  import { SubscribableWithState } from "./subscribable/Subscribable";
6
6
  import { ThreadComposerRuntime, ThreadComposerRuntimeImpl } from "./ComposerRuntime";
7
7
  import { ThreadListItemRuntimePath, ThreadRuntimePath } from "./RuntimePathTypes";
8
8
  import { ThreadListItemState } from "./ThreadListItemRuntime";
9
9
  import { RunConfig } from "../types/AssistantTypes";
10
+ import { ModelContext } from "../model-context";
10
11
  export type CreateStartRunConfig = {
11
12
  parentId: string | null;
12
13
  sourceId?: string | null | undefined;
@@ -107,7 +108,11 @@ export type ThreadRuntime = {
107
108
  startRun(config: CreateStartRunConfig): void;
108
109
  subscribe(callback: () => void): Unsubscribe;
109
110
  cancelRun(): void;
110
- getModelConfig(): ModelConfig;
111
+ getModelContext(): ModelContext;
112
+ /**
113
+ * @deprecated This method was renamed to `getModelContext`.
114
+ */
115
+ getModelConfig(): ModelContext;
111
116
  export(): ExportedMessageRepository;
112
117
  import(repository: ExportedMessageRepository): void;
113
118
  getMesssageByIndex(idx: number): MessageRuntime;
@@ -137,7 +142,7 @@ export declare class ThreadRuntimeImpl implements ThreadRuntime {
137
142
  stopSpeaking: () => void;
138
143
  getSubmittedFeedback: (messageId: string) => import("../runtimes/core/ThreadRuntimeCore").SubmittedFeedback | undefined;
139
144
  submitFeedback: (feedback: import("..").SubmitFeedbackOptions) => void;
140
- getModelConfig: () => ModelConfig;
145
+ getModelContext: () => ModelContext;
141
146
  composer: import("../runtimes/core/ComposerRuntimeCore").ThreadComposerRuntimeCore;
142
147
  getEditComposer: (messageId: string) => Readonly<{
143
148
  isEditing: boolean;
@@ -184,7 +189,8 @@ export declare class ThreadRuntimeImpl implements ThreadRuntime {
184
189
  getState(): ThreadState;
185
190
  append(message: CreateAppendMessage): void;
186
191
  subscribe(callback: () => void): Unsubscribe;
187
- getModelConfig(): ModelConfig;
192
+ getModelContext(): ModelContext;
193
+ getModelConfig(): ModelContext;
188
194
  startRun(configOrParentId: string | null | CreateStartRunConfig): void;
189
195
  cancelRun(): void;
190
196
  stopSpeaking(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadRuntime.d.ts","sourceRoot":"","sources":["../../src/api/ThreadRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ThreadRuntime.d.ts","sourceRoot":"","sources":["../../src/api/ThreadRuntime.ts"],"names":[],"mappings":"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"}
@@ -129,6 +129,7 @@ var ThreadRuntimeImpl = class {
129
129
  this.getMesssageById = this.getMesssageById.bind(this);
130
130
  this.subscribe = this.subscribe.bind(this);
131
131
  this.unstable_on = this.unstable_on.bind(this);
132
+ this.getModelContext = this.getModelContext.bind(this);
132
133
  this.getModelConfig = this.getModelConfig.bind(this);
133
134
  this.getState = this.getState.bind(this);
134
135
  }
@@ -144,8 +145,11 @@ var ThreadRuntimeImpl = class {
144
145
  subscribe(callback) {
145
146
  return this._threadBinding.subscribe(callback);
146
147
  }
148
+ getModelContext() {
149
+ return this._threadBinding.getState().getModelContext();
150
+ }
147
151
  getModelConfig() {
148
- return this._threadBinding.getState().getModelConfig();
152
+ return this.getModelContext();
149
153
  }
150
154
  startRun(configOrParentId) {
151
155
  const config = configOrParentId === null || typeof configOrParentId === "string" ? { parentId: configOrParentId } : configOrParentId;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/api/ThreadRuntime.ts"],"sourcesContent":["import {\n ThreadSuggestion,\n RuntimeCapabilities,\n ThreadRuntimeCore,\n SpeechState,\n ThreadRuntimeEventType,\n StartRunConfig,\n} from \"../runtimes/core/ThreadRuntimeCore\";\nimport { ExportedMessageRepository } from \"../runtimes/utils/MessageRepository\";\nimport {\n AppendMessage,\n ModelConfig,\n ThreadMessage,\n Unsubscribe,\n} from \"../types\";\nimport {\n MessageRuntime,\n MessageRuntimeImpl,\n MessageState,\n} from \"./MessageRuntime\";\nimport { NestedSubscriptionSubject } from \"./subscribable/NestedSubscriptionSubject\";\nimport { ShallowMemoizeSubject } from \"./subscribable/ShallowMemoizeSubject\";\nimport { SubscribableWithState } from \"./subscribable/Subscribable\";\nimport {\n ThreadComposerRuntime,\n ThreadComposerRuntimeImpl,\n} from \"./ComposerRuntime\";\nimport { LazyMemoizeSubject } from \"./subscribable/LazyMemoizeSubject\";\nimport { SKIP_UPDATE } from \"./subscribable/SKIP_UPDATE\";\nimport {\n MessageRuntimePath,\n ThreadListItemRuntimePath,\n ThreadRuntimePath,\n} from \"./RuntimePathTypes\";\nimport { ThreadListItemState } from \"./ThreadListItemRuntime\";\nimport { RunConfig } from \"../types/AssistantTypes\";\nimport { EventSubscriptionSubject } from \"./subscribable/EventSubscriptionSubject\";\nimport { symbolInnerMessage } from \"../runtimes/external-store/getExternalStoreMessage\";\n\nexport type CreateStartRunConfig = {\n parentId: string | null;\n sourceId?: string | null | undefined;\n runConfig?: RunConfig | undefined;\n};\n\nconst toStartRunConfig = (message: CreateStartRunConfig): StartRunConfig => {\n return {\n parentId: message.parentId ?? null,\n sourceId: message.sourceId ?? null,\n runConfig: message.runConfig ?? {},\n };\n};\n\nexport type CreateAppendMessage =\n | string\n | {\n parentId?: string | null | undefined;\n sourceId?: string | null | undefined;\n role?: AppendMessage[\"role\"] | undefined;\n content: AppendMessage[\"content\"];\n attachments?: AppendMessage[\"attachments\"] | undefined;\n startRun?: boolean | undefined;\n };\n\nconst toAppendMessage = (\n messages: readonly ThreadMessage[],\n message: CreateAppendMessage,\n): AppendMessage => {\n if (typeof message === \"string\") {\n return {\n parentId: messages.at(-1)?.id ?? null,\n sourceId: null,\n runConfig: {},\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n };\n }\n\n if (message.role && message.parentId && message.attachments) {\n return message as AppendMessage;\n }\n\n return {\n ...message,\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n sourceId: message.sourceId ?? null,\n role: message.role ?? \"user\",\n attachments: message.attachments ?? [],\n } as AppendMessage;\n};\n\nexport type ThreadRuntimeCoreBinding = SubscribableWithState<\n ThreadRuntimeCore,\n ThreadRuntimePath\n> & {\n outerSubscribe(callback: () => void): Unsubscribe;\n};\n\nexport type ThreadListItemRuntimeBinding = SubscribableWithState<\n ThreadListItemState,\n ThreadListItemRuntimePath\n>;\n\nexport type ThreadState = {\n /**\n * The thread ID.\n * @deprecated This field is deprecated and will be removed in 0.8.0. Use `useThreadListItem().id` instead.\n */\n readonly threadId: string;\n\n /**\n * The thread metadata.\n *\n * @deprecated Use `useThreadListItem()` instead. This field is deprecated and will be removed in 0.8.0.\n */\n readonly metadata: ThreadListItemState;\n\n /**\n * Whether the thread is disabled. Disabled threads cannot receive new messages.\n */\n readonly isDisabled: boolean;\n\n /**\n * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.\n */\n readonly isRunning: boolean;\n\n /**\n * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.\n */\n readonly capabilities: RuntimeCapabilities;\n\n /**\n * The messages in the currently selected branch of the thread.\n */\n readonly messages: readonly ThreadMessage[];\n\n /**\n * Follow up message suggestions to show the user.\n */\n readonly suggestions: readonly ThreadSuggestion[];\n\n /**\n * Custom extra information provided by the runtime.\n */\n readonly extras: unknown;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n readonly speech: SpeechState | undefined;\n};\n\nexport const getThreadState = (\n runtime: ThreadRuntimeCore,\n threadListItemState: ThreadListItemState,\n): ThreadState => {\n const lastMessage = runtime.messages.at(-1);\n return Object.freeze({\n threadId: threadListItemState.id,\n metadata: threadListItemState,\n capabilities: runtime.capabilities,\n isDisabled: runtime.isDisabled,\n isRunning:\n lastMessage?.role !== \"assistant\"\n ? false\n : lastMessage.status.type === \"running\",\n messages: runtime.messages,\n suggestions: runtime.suggestions,\n extras: runtime.extras,\n speech: runtime.speech,\n });\n};\n\nexport type ThreadRuntime = {\n /**\n * The selector for the thread runtime.\n */\n readonly path: ThreadRuntimePath;\n\n /**\n * The thread composer runtime.\n */\n readonly composer: ThreadComposerRuntime;\n\n /**\n * Gets a snapshot of the thread state.\n */\n getState(): ThreadState;\n\n /**\n * Append a new message to the thread.\n *\n * @example ```ts\n * // append a new user message with the text \"Hello, world!\"\n * threadRuntime.append(\"Hello, world!\");\n * ```\n *\n * @example ```ts\n * // append a new assistant message with the text \"Hello, world!\"\n * threadRuntime.append({\n * role: \"assistant\",\n * content: [{ type: \"text\", text: \"Hello, world!\" }],\n * });\n * ```\n */\n append(message: CreateAppendMessage): void;\n\n /**\n * @deprecated pass an object with `parentId` instead. This will be removed in 0.8.0.\n */\n startRun(parentId: string | null): void;\n /**\n * Start a new run with the given configuration.\n * @param config The configuration for starting the run\n */\n startRun(config: CreateStartRunConfig): void;\n subscribe(callback: () => void): Unsubscribe;\n cancelRun(): void;\n getModelConfig(): ModelConfig;\n export(): ExportedMessageRepository;\n import(repository: ExportedMessageRepository): void;\n getMesssageByIndex(idx: number): MessageRuntime;\n getMesssageById(messageId: string): MessageRuntime;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n stopSpeaking: () => void;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n};\n\nexport class ThreadRuntimeImpl implements ThreadRuntime {\n public get path() {\n return this._threadBinding.path;\n }\n\n public get __internal_threadBinding() {\n return this._threadBinding;\n }\n\n private readonly _threadBinding: ThreadRuntimeCoreBinding & {\n getStateState(): ThreadState;\n };\n\n constructor(\n threadBinding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) {\n const stateBinding = new LazyMemoizeSubject({\n path: threadBinding.path,\n getState: () =>\n getThreadState(\n threadBinding.getState(),\n threadListItemBinding.getState(),\n ),\n subscribe: (callback) => {\n const sub1 = threadBinding.subscribe(callback);\n const sub2 = threadListItemBinding.subscribe(callback);\n return () => {\n sub1();\n sub2();\n };\n },\n });\n\n this._threadBinding = {\n path: threadBinding.path,\n getState: () => threadBinding.getState(),\n getStateState: () => stateBinding.getState(),\n outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),\n subscribe: (callback) => threadBinding.subscribe(callback),\n };\n\n this.composer = new ThreadComposerRuntimeImpl(\n new NestedSubscriptionSubject({\n path: {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.composer`,\n composerSource: \"thread\",\n },\n getState: () => this._threadBinding.getState().composer,\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n );\n }\n\n protected __internal_bindMethods() {\n this.append = this.append.bind(this);\n this.startRun = this.startRun.bind(this);\n this.cancelRun = this.cancelRun.bind(this);\n this.stopSpeaking = this.stopSpeaking.bind(this);\n this.export = this.export.bind(this);\n this.import = this.import.bind(this);\n this.getMesssageByIndex = this.getMesssageByIndex.bind(this);\n this.getMesssageById = this.getMesssageById.bind(this);\n this.subscribe = this.subscribe.bind(this);\n this.unstable_on = this.unstable_on.bind(this);\n this.getModelConfig = this.getModelConfig.bind(this);\n this.getState = this.getState.bind(this);\n }\n\n public readonly composer;\n\n public getState() {\n return this._threadBinding.getStateState();\n }\n\n public append(message: CreateAppendMessage) {\n this._threadBinding\n .getState()\n .append(\n toAppendMessage(this._threadBinding.getState().messages, message),\n );\n }\n\n public subscribe(callback: () => void) {\n return this._threadBinding.subscribe(callback);\n }\n\n public getModelConfig() {\n return this._threadBinding.getState().getModelConfig();\n }\n\n public startRun(configOrParentId: string | null | CreateStartRunConfig) {\n const config =\n configOrParentId === null || typeof configOrParentId === \"string\"\n ? { parentId: configOrParentId }\n : configOrParentId;\n return this._threadBinding.getState().startRun(toStartRunConfig(config));\n }\n\n public cancelRun() {\n this._threadBinding.getState().cancelRun();\n }\n\n public stopSpeaking() {\n return this._threadBinding.getState().stopSpeaking();\n }\n\n public export() {\n return this._threadBinding.getState().export();\n }\n\n public import(data: ExportedMessageRepository) {\n this._threadBinding.getState().import(data);\n }\n\n public getMesssageByIndex(idx: number) {\n if (idx < 0) throw new Error(\"Message index must be >= 0\");\n\n return this._getMessageRuntime(\n {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,\n messageSelector: { type: \"index\", index: idx },\n },\n () => {\n const messages = this._threadBinding.getState().messages;\n const message = messages[idx];\n if (!message) return undefined;\n return {\n message,\n parentId: messages[idx - 1]?.id ?? null,\n };\n },\n );\n }\n\n public getMesssageById(messageId: string) {\n return this._getMessageRuntime(\n {\n ...this.path,\n ref:\n this.path.ref +\n `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,\n messageSelector: { type: \"messageId\", messageId: messageId },\n },\n () => this._threadBinding.getState().getMessageById(messageId),\n );\n }\n\n private _getMessageRuntime(\n path: MessageRuntimePath,\n callback: () =>\n | { parentId: string | null; message: ThreadMessage }\n | undefined,\n ) {\n return new MessageRuntimeImpl(\n new ShallowMemoizeSubject({\n path,\n getState: () => {\n const { message, parentId } = callback() ?? {};\n\n const { messages, speech: speechState } =\n this._threadBinding.getState();\n\n if (!message || parentId === undefined) return SKIP_UPDATE;\n\n const thread = this._threadBinding.getState();\n\n const branches = thread.getBranches(message.id);\n const submittedFeedback = thread.getSubmittedFeedback(message.id);\n\n return {\n ...message,\n ...{ [symbolInnerMessage]: (message as any)[symbolInnerMessage] },\n\n isLast: messages.at(-1)?.id === message.id,\n parentId,\n\n branchNumber: branches.indexOf(message.id) + 1,\n branchCount: branches.length,\n\n speech:\n speechState?.messageId === message.id ? speechState : undefined,\n\n submittedFeedback,\n } satisfies MessageState;\n },\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n this._threadBinding,\n );\n }\n\n private _eventSubscriptionSubjects = new Map<\n string,\n EventSubscriptionSubject<ThreadRuntimeEventType>\n >();\n\n public unstable_on(\n event: ThreadRuntimeEventType,\n callback: () => void,\n ): Unsubscribe {\n let subject = this._eventSubscriptionSubjects.get(event);\n if (!subject) {\n subject = new EventSubscriptionSubject({\n event: event,\n binding: this._threadBinding,\n });\n this._eventSubscriptionSubjects.set(event, subject);\n }\n return subject.subscribe(callback);\n }\n}\n"],"mappings":"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","names":["callback"]}
1
+ {"version":3,"sources":["../../src/api/ThreadRuntime.ts"],"sourcesContent":["import {\n ThreadSuggestion,\n RuntimeCapabilities,\n ThreadRuntimeCore,\n SpeechState,\n ThreadRuntimeEventType,\n StartRunConfig,\n} from \"../runtimes/core/ThreadRuntimeCore\";\nimport { ExportedMessageRepository } from \"../runtimes/utils/MessageRepository\";\nimport { AppendMessage, ThreadMessage, Unsubscribe } from \"../types\";\nimport {\n MessageRuntime,\n MessageRuntimeImpl,\n MessageState,\n} from \"./MessageRuntime\";\nimport { NestedSubscriptionSubject } from \"./subscribable/NestedSubscriptionSubject\";\nimport { ShallowMemoizeSubject } from \"./subscribable/ShallowMemoizeSubject\";\nimport { SubscribableWithState } from \"./subscribable/Subscribable\";\nimport {\n ThreadComposerRuntime,\n ThreadComposerRuntimeImpl,\n} from \"./ComposerRuntime\";\nimport { LazyMemoizeSubject } from \"./subscribable/LazyMemoizeSubject\";\nimport { SKIP_UPDATE } from \"./subscribable/SKIP_UPDATE\";\nimport {\n MessageRuntimePath,\n ThreadListItemRuntimePath,\n ThreadRuntimePath,\n} from \"./RuntimePathTypes\";\nimport { ThreadListItemState } from \"./ThreadListItemRuntime\";\nimport { RunConfig } from \"../types/AssistantTypes\";\nimport { EventSubscriptionSubject } from \"./subscribable/EventSubscriptionSubject\";\nimport { symbolInnerMessage } from \"../runtimes/external-store/getExternalStoreMessage\";\nimport { ModelContext } from \"../model-context\";\n\nexport type CreateStartRunConfig = {\n parentId: string | null;\n sourceId?: string | null | undefined;\n runConfig?: RunConfig | undefined;\n};\n\nconst toStartRunConfig = (message: CreateStartRunConfig): StartRunConfig => {\n return {\n parentId: message.parentId ?? null,\n sourceId: message.sourceId ?? null,\n runConfig: message.runConfig ?? {},\n };\n};\n\nexport type CreateAppendMessage =\n | string\n | {\n parentId?: string | null | undefined;\n sourceId?: string | null | undefined;\n role?: AppendMessage[\"role\"] | undefined;\n content: AppendMessage[\"content\"];\n attachments?: AppendMessage[\"attachments\"] | undefined;\n startRun?: boolean | undefined;\n };\n\nconst toAppendMessage = (\n messages: readonly ThreadMessage[],\n message: CreateAppendMessage,\n): AppendMessage => {\n if (typeof message === \"string\") {\n return {\n parentId: messages.at(-1)?.id ?? null,\n sourceId: null,\n runConfig: {},\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n };\n }\n\n if (message.role && message.parentId && message.attachments) {\n return message as AppendMessage;\n }\n\n return {\n ...message,\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n sourceId: message.sourceId ?? null,\n role: message.role ?? \"user\",\n attachments: message.attachments ?? [],\n } as AppendMessage;\n};\n\nexport type ThreadRuntimeCoreBinding = SubscribableWithState<\n ThreadRuntimeCore,\n ThreadRuntimePath\n> & {\n outerSubscribe(callback: () => void): Unsubscribe;\n};\n\nexport type ThreadListItemRuntimeBinding = SubscribableWithState<\n ThreadListItemState,\n ThreadListItemRuntimePath\n>;\n\nexport type ThreadState = {\n /**\n * The thread ID.\n * @deprecated This field is deprecated and will be removed in 0.8.0. Use `useThreadListItem().id` instead.\n */\n readonly threadId: string;\n\n /**\n * The thread metadata.\n *\n * @deprecated Use `useThreadListItem()` instead. This field is deprecated and will be removed in 0.8.0.\n */\n readonly metadata: ThreadListItemState;\n\n /**\n * Whether the thread is disabled. Disabled threads cannot receive new messages.\n */\n readonly isDisabled: boolean;\n\n /**\n * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.\n */\n readonly isRunning: boolean;\n\n /**\n * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.\n */\n readonly capabilities: RuntimeCapabilities;\n\n /**\n * The messages in the currently selected branch of the thread.\n */\n readonly messages: readonly ThreadMessage[];\n\n /**\n * Follow up message suggestions to show the user.\n */\n readonly suggestions: readonly ThreadSuggestion[];\n\n /**\n * Custom extra information provided by the runtime.\n */\n readonly extras: unknown;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n readonly speech: SpeechState | undefined;\n};\n\nexport const getThreadState = (\n runtime: ThreadRuntimeCore,\n threadListItemState: ThreadListItemState,\n): ThreadState => {\n const lastMessage = runtime.messages.at(-1);\n return Object.freeze({\n threadId: threadListItemState.id,\n metadata: threadListItemState,\n capabilities: runtime.capabilities,\n isDisabled: runtime.isDisabled,\n isRunning:\n lastMessage?.role !== \"assistant\"\n ? false\n : lastMessage.status.type === \"running\",\n messages: runtime.messages,\n suggestions: runtime.suggestions,\n extras: runtime.extras,\n speech: runtime.speech,\n });\n};\n\nexport type ThreadRuntime = {\n /**\n * The selector for the thread runtime.\n */\n readonly path: ThreadRuntimePath;\n\n /**\n * The thread composer runtime.\n */\n readonly composer: ThreadComposerRuntime;\n\n /**\n * Gets a snapshot of the thread state.\n */\n getState(): ThreadState;\n\n /**\n * Append a new message to the thread.\n *\n * @example ```ts\n * // append a new user message with the text \"Hello, world!\"\n * threadRuntime.append(\"Hello, world!\");\n * ```\n *\n * @example ```ts\n * // append a new assistant message with the text \"Hello, world!\"\n * threadRuntime.append({\n * role: \"assistant\",\n * content: [{ type: \"text\", text: \"Hello, world!\" }],\n * });\n * ```\n */\n append(message: CreateAppendMessage): void;\n\n /**\n * @deprecated pass an object with `parentId` instead. This will be removed in 0.8.0.\n */\n startRun(parentId: string | null): void;\n /**\n * Start a new run with the given configuration.\n * @param config The configuration for starting the run\n */\n startRun(config: CreateStartRunConfig): void;\n subscribe(callback: () => void): Unsubscribe;\n cancelRun(): void;\n getModelContext(): ModelContext;\n\n /**\n * @deprecated This method was renamed to `getModelContext`.\n */\n getModelConfig(): ModelContext;\n\n export(): ExportedMessageRepository;\n import(repository: ExportedMessageRepository): void;\n getMesssageByIndex(idx: number): MessageRuntime;\n getMesssageById(messageId: string): MessageRuntime;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n stopSpeaking: () => void;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n};\n\nexport class ThreadRuntimeImpl implements ThreadRuntime {\n public get path() {\n return this._threadBinding.path;\n }\n\n public get __internal_threadBinding() {\n return this._threadBinding;\n }\n\n private readonly _threadBinding: ThreadRuntimeCoreBinding & {\n getStateState(): ThreadState;\n };\n\n constructor(\n threadBinding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) {\n const stateBinding = new LazyMemoizeSubject({\n path: threadBinding.path,\n getState: () =>\n getThreadState(\n threadBinding.getState(),\n threadListItemBinding.getState(),\n ),\n subscribe: (callback) => {\n const sub1 = threadBinding.subscribe(callback);\n const sub2 = threadListItemBinding.subscribe(callback);\n return () => {\n sub1();\n sub2();\n };\n },\n });\n\n this._threadBinding = {\n path: threadBinding.path,\n getState: () => threadBinding.getState(),\n getStateState: () => stateBinding.getState(),\n outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),\n subscribe: (callback) => threadBinding.subscribe(callback),\n };\n\n this.composer = new ThreadComposerRuntimeImpl(\n new NestedSubscriptionSubject({\n path: {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.composer`,\n composerSource: \"thread\",\n },\n getState: () => this._threadBinding.getState().composer,\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n );\n }\n\n protected __internal_bindMethods() {\n this.append = this.append.bind(this);\n this.startRun = this.startRun.bind(this);\n this.cancelRun = this.cancelRun.bind(this);\n this.stopSpeaking = this.stopSpeaking.bind(this);\n this.export = this.export.bind(this);\n this.import = this.import.bind(this);\n this.getMesssageByIndex = this.getMesssageByIndex.bind(this);\n this.getMesssageById = this.getMesssageById.bind(this);\n this.subscribe = this.subscribe.bind(this);\n this.unstable_on = this.unstable_on.bind(this);\n this.getModelContext = this.getModelContext.bind(this);\n this.getModelConfig = this.getModelConfig.bind(this);\n this.getState = this.getState.bind(this);\n }\n\n public readonly composer;\n\n public getState() {\n return this._threadBinding.getStateState();\n }\n\n public append(message: CreateAppendMessage) {\n this._threadBinding\n .getState()\n .append(\n toAppendMessage(this._threadBinding.getState().messages, message),\n );\n }\n\n public subscribe(callback: () => void) {\n return this._threadBinding.subscribe(callback);\n }\n\n public getModelContext() {\n return this._threadBinding.getState().getModelContext();\n }\n\n public getModelConfig() {\n return this.getModelContext();\n }\n\n public startRun(configOrParentId: string | null | CreateStartRunConfig) {\n const config =\n configOrParentId === null || typeof configOrParentId === \"string\"\n ? { parentId: configOrParentId }\n : configOrParentId;\n return this._threadBinding.getState().startRun(toStartRunConfig(config));\n }\n\n public cancelRun() {\n this._threadBinding.getState().cancelRun();\n }\n\n public stopSpeaking() {\n return this._threadBinding.getState().stopSpeaking();\n }\n\n public export() {\n return this._threadBinding.getState().export();\n }\n\n public import(data: ExportedMessageRepository) {\n this._threadBinding.getState().import(data);\n }\n\n public getMesssageByIndex(idx: number) {\n if (idx < 0) throw new Error(\"Message index must be >= 0\");\n\n return this._getMessageRuntime(\n {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,\n messageSelector: { type: \"index\", index: idx },\n },\n () => {\n const messages = this._threadBinding.getState().messages;\n const message = messages[idx];\n if (!message) return undefined;\n return {\n message,\n parentId: messages[idx - 1]?.id ?? null,\n };\n },\n );\n }\n\n public getMesssageById(messageId: string) {\n return this._getMessageRuntime(\n {\n ...this.path,\n ref:\n this.path.ref +\n `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,\n messageSelector: { type: \"messageId\", messageId: messageId },\n },\n () => this._threadBinding.getState().getMessageById(messageId),\n );\n }\n\n private _getMessageRuntime(\n path: MessageRuntimePath,\n callback: () =>\n | { parentId: string | null; message: ThreadMessage }\n | undefined,\n ) {\n return new MessageRuntimeImpl(\n new ShallowMemoizeSubject({\n path,\n getState: () => {\n const { message, parentId } = callback() ?? {};\n\n const { messages, speech: speechState } =\n this._threadBinding.getState();\n\n if (!message || parentId === undefined) return SKIP_UPDATE;\n\n const thread = this._threadBinding.getState();\n\n const branches = thread.getBranches(message.id);\n const submittedFeedback = thread.getSubmittedFeedback(message.id);\n\n return {\n ...message,\n ...{ [symbolInnerMessage]: (message as any)[symbolInnerMessage] },\n\n isLast: messages.at(-1)?.id === message.id,\n parentId,\n\n branchNumber: branches.indexOf(message.id) + 1,\n branchCount: branches.length,\n\n speech:\n speechState?.messageId === message.id ? speechState : undefined,\n\n submittedFeedback,\n } satisfies MessageState;\n },\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n this._threadBinding,\n );\n }\n\n private _eventSubscriptionSubjects = new Map<\n string,\n EventSubscriptionSubject<ThreadRuntimeEventType>\n >();\n\n public unstable_on(\n event: ThreadRuntimeEventType,\n callback: () => void,\n ): Unsubscribe {\n let subject = this._eventSubscriptionSubjects.get(event);\n if (!subject) {\n subject = new EventSubscriptionSubject({\n event: event,\n binding: this._threadBinding,\n });\n this._eventSubscriptionSubjects.set(event, subject);\n }\n return subject.subscribe(callback);\n }\n}\n"],"mappings":"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","names":["callback"]}
@@ -108,6 +108,7 @@ var ThreadRuntimeImpl = class {
108
108
  this.getMesssageById = this.getMesssageById.bind(this);
109
109
  this.subscribe = this.subscribe.bind(this);
110
110
  this.unstable_on = this.unstable_on.bind(this);
111
+ this.getModelContext = this.getModelContext.bind(this);
111
112
  this.getModelConfig = this.getModelConfig.bind(this);
112
113
  this.getState = this.getState.bind(this);
113
114
  }
@@ -123,8 +124,11 @@ var ThreadRuntimeImpl = class {
123
124
  subscribe(callback) {
124
125
  return this._threadBinding.subscribe(callback);
125
126
  }
127
+ getModelContext() {
128
+ return this._threadBinding.getState().getModelContext();
129
+ }
126
130
  getModelConfig() {
127
- return this._threadBinding.getState().getModelConfig();
131
+ return this.getModelContext();
128
132
  }
129
133
  startRun(configOrParentId) {
130
134
  const config = configOrParentId === null || typeof configOrParentId === "string" ? { parentId: configOrParentId } : configOrParentId;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/api/ThreadRuntime.ts"],"sourcesContent":["import {\n ThreadSuggestion,\n RuntimeCapabilities,\n ThreadRuntimeCore,\n SpeechState,\n ThreadRuntimeEventType,\n StartRunConfig,\n} from \"../runtimes/core/ThreadRuntimeCore\";\nimport { ExportedMessageRepository } from \"../runtimes/utils/MessageRepository\";\nimport {\n AppendMessage,\n ModelConfig,\n ThreadMessage,\n Unsubscribe,\n} from \"../types\";\nimport {\n MessageRuntime,\n MessageRuntimeImpl,\n MessageState,\n} from \"./MessageRuntime\";\nimport { NestedSubscriptionSubject } from \"./subscribable/NestedSubscriptionSubject\";\nimport { ShallowMemoizeSubject } from \"./subscribable/ShallowMemoizeSubject\";\nimport { SubscribableWithState } from \"./subscribable/Subscribable\";\nimport {\n ThreadComposerRuntime,\n ThreadComposerRuntimeImpl,\n} from \"./ComposerRuntime\";\nimport { LazyMemoizeSubject } from \"./subscribable/LazyMemoizeSubject\";\nimport { SKIP_UPDATE } from \"./subscribable/SKIP_UPDATE\";\nimport {\n MessageRuntimePath,\n ThreadListItemRuntimePath,\n ThreadRuntimePath,\n} from \"./RuntimePathTypes\";\nimport { ThreadListItemState } from \"./ThreadListItemRuntime\";\nimport { RunConfig } from \"../types/AssistantTypes\";\nimport { EventSubscriptionSubject } from \"./subscribable/EventSubscriptionSubject\";\nimport { symbolInnerMessage } from \"../runtimes/external-store/getExternalStoreMessage\";\n\nexport type CreateStartRunConfig = {\n parentId: string | null;\n sourceId?: string | null | undefined;\n runConfig?: RunConfig | undefined;\n};\n\nconst toStartRunConfig = (message: CreateStartRunConfig): StartRunConfig => {\n return {\n parentId: message.parentId ?? null,\n sourceId: message.sourceId ?? null,\n runConfig: message.runConfig ?? {},\n };\n};\n\nexport type CreateAppendMessage =\n | string\n | {\n parentId?: string | null | undefined;\n sourceId?: string | null | undefined;\n role?: AppendMessage[\"role\"] | undefined;\n content: AppendMessage[\"content\"];\n attachments?: AppendMessage[\"attachments\"] | undefined;\n startRun?: boolean | undefined;\n };\n\nconst toAppendMessage = (\n messages: readonly ThreadMessage[],\n message: CreateAppendMessage,\n): AppendMessage => {\n if (typeof message === \"string\") {\n return {\n parentId: messages.at(-1)?.id ?? null,\n sourceId: null,\n runConfig: {},\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n };\n }\n\n if (message.role && message.parentId && message.attachments) {\n return message as AppendMessage;\n }\n\n return {\n ...message,\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n sourceId: message.sourceId ?? null,\n role: message.role ?? \"user\",\n attachments: message.attachments ?? [],\n } as AppendMessage;\n};\n\nexport type ThreadRuntimeCoreBinding = SubscribableWithState<\n ThreadRuntimeCore,\n ThreadRuntimePath\n> & {\n outerSubscribe(callback: () => void): Unsubscribe;\n};\n\nexport type ThreadListItemRuntimeBinding = SubscribableWithState<\n ThreadListItemState,\n ThreadListItemRuntimePath\n>;\n\nexport type ThreadState = {\n /**\n * The thread ID.\n * @deprecated This field is deprecated and will be removed in 0.8.0. Use `useThreadListItem().id` instead.\n */\n readonly threadId: string;\n\n /**\n * The thread metadata.\n *\n * @deprecated Use `useThreadListItem()` instead. This field is deprecated and will be removed in 0.8.0.\n */\n readonly metadata: ThreadListItemState;\n\n /**\n * Whether the thread is disabled. Disabled threads cannot receive new messages.\n */\n readonly isDisabled: boolean;\n\n /**\n * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.\n */\n readonly isRunning: boolean;\n\n /**\n * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.\n */\n readonly capabilities: RuntimeCapabilities;\n\n /**\n * The messages in the currently selected branch of the thread.\n */\n readonly messages: readonly ThreadMessage[];\n\n /**\n * Follow up message suggestions to show the user.\n */\n readonly suggestions: readonly ThreadSuggestion[];\n\n /**\n * Custom extra information provided by the runtime.\n */\n readonly extras: unknown;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n readonly speech: SpeechState | undefined;\n};\n\nexport const getThreadState = (\n runtime: ThreadRuntimeCore,\n threadListItemState: ThreadListItemState,\n): ThreadState => {\n const lastMessage = runtime.messages.at(-1);\n return Object.freeze({\n threadId: threadListItemState.id,\n metadata: threadListItemState,\n capabilities: runtime.capabilities,\n isDisabled: runtime.isDisabled,\n isRunning:\n lastMessage?.role !== \"assistant\"\n ? false\n : lastMessage.status.type === \"running\",\n messages: runtime.messages,\n suggestions: runtime.suggestions,\n extras: runtime.extras,\n speech: runtime.speech,\n });\n};\n\nexport type ThreadRuntime = {\n /**\n * The selector for the thread runtime.\n */\n readonly path: ThreadRuntimePath;\n\n /**\n * The thread composer runtime.\n */\n readonly composer: ThreadComposerRuntime;\n\n /**\n * Gets a snapshot of the thread state.\n */\n getState(): ThreadState;\n\n /**\n * Append a new message to the thread.\n *\n * @example ```ts\n * // append a new user message with the text \"Hello, world!\"\n * threadRuntime.append(\"Hello, world!\");\n * ```\n *\n * @example ```ts\n * // append a new assistant message with the text \"Hello, world!\"\n * threadRuntime.append({\n * role: \"assistant\",\n * content: [{ type: \"text\", text: \"Hello, world!\" }],\n * });\n * ```\n */\n append(message: CreateAppendMessage): void;\n\n /**\n * @deprecated pass an object with `parentId` instead. This will be removed in 0.8.0.\n */\n startRun(parentId: string | null): void;\n /**\n * Start a new run with the given configuration.\n * @param config The configuration for starting the run\n */\n startRun(config: CreateStartRunConfig): void;\n subscribe(callback: () => void): Unsubscribe;\n cancelRun(): void;\n getModelConfig(): ModelConfig;\n export(): ExportedMessageRepository;\n import(repository: ExportedMessageRepository): void;\n getMesssageByIndex(idx: number): MessageRuntime;\n getMesssageById(messageId: string): MessageRuntime;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n stopSpeaking: () => void;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n};\n\nexport class ThreadRuntimeImpl implements ThreadRuntime {\n public get path() {\n return this._threadBinding.path;\n }\n\n public get __internal_threadBinding() {\n return this._threadBinding;\n }\n\n private readonly _threadBinding: ThreadRuntimeCoreBinding & {\n getStateState(): ThreadState;\n };\n\n constructor(\n threadBinding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) {\n const stateBinding = new LazyMemoizeSubject({\n path: threadBinding.path,\n getState: () =>\n getThreadState(\n threadBinding.getState(),\n threadListItemBinding.getState(),\n ),\n subscribe: (callback) => {\n const sub1 = threadBinding.subscribe(callback);\n const sub2 = threadListItemBinding.subscribe(callback);\n return () => {\n sub1();\n sub2();\n };\n },\n });\n\n this._threadBinding = {\n path: threadBinding.path,\n getState: () => threadBinding.getState(),\n getStateState: () => stateBinding.getState(),\n outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),\n subscribe: (callback) => threadBinding.subscribe(callback),\n };\n\n this.composer = new ThreadComposerRuntimeImpl(\n new NestedSubscriptionSubject({\n path: {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.composer`,\n composerSource: \"thread\",\n },\n getState: () => this._threadBinding.getState().composer,\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n );\n }\n\n protected __internal_bindMethods() {\n this.append = this.append.bind(this);\n this.startRun = this.startRun.bind(this);\n this.cancelRun = this.cancelRun.bind(this);\n this.stopSpeaking = this.stopSpeaking.bind(this);\n this.export = this.export.bind(this);\n this.import = this.import.bind(this);\n this.getMesssageByIndex = this.getMesssageByIndex.bind(this);\n this.getMesssageById = this.getMesssageById.bind(this);\n this.subscribe = this.subscribe.bind(this);\n this.unstable_on = this.unstable_on.bind(this);\n this.getModelConfig = this.getModelConfig.bind(this);\n this.getState = this.getState.bind(this);\n }\n\n public readonly composer;\n\n public getState() {\n return this._threadBinding.getStateState();\n }\n\n public append(message: CreateAppendMessage) {\n this._threadBinding\n .getState()\n .append(\n toAppendMessage(this._threadBinding.getState().messages, message),\n );\n }\n\n public subscribe(callback: () => void) {\n return this._threadBinding.subscribe(callback);\n }\n\n public getModelConfig() {\n return this._threadBinding.getState().getModelConfig();\n }\n\n public startRun(configOrParentId: string | null | CreateStartRunConfig) {\n const config =\n configOrParentId === null || typeof configOrParentId === \"string\"\n ? { parentId: configOrParentId }\n : configOrParentId;\n return this._threadBinding.getState().startRun(toStartRunConfig(config));\n }\n\n public cancelRun() {\n this._threadBinding.getState().cancelRun();\n }\n\n public stopSpeaking() {\n return this._threadBinding.getState().stopSpeaking();\n }\n\n public export() {\n return this._threadBinding.getState().export();\n }\n\n public import(data: ExportedMessageRepository) {\n this._threadBinding.getState().import(data);\n }\n\n public getMesssageByIndex(idx: number) {\n if (idx < 0) throw new Error(\"Message index must be >= 0\");\n\n return this._getMessageRuntime(\n {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,\n messageSelector: { type: \"index\", index: idx },\n },\n () => {\n const messages = this._threadBinding.getState().messages;\n const message = messages[idx];\n if (!message) return undefined;\n return {\n message,\n parentId: messages[idx - 1]?.id ?? null,\n };\n },\n );\n }\n\n public getMesssageById(messageId: string) {\n return this._getMessageRuntime(\n {\n ...this.path,\n ref:\n this.path.ref +\n `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,\n messageSelector: { type: \"messageId\", messageId: messageId },\n },\n () => this._threadBinding.getState().getMessageById(messageId),\n );\n }\n\n private _getMessageRuntime(\n path: MessageRuntimePath,\n callback: () =>\n | { parentId: string | null; message: ThreadMessage }\n | undefined,\n ) {\n return new MessageRuntimeImpl(\n new ShallowMemoizeSubject({\n path,\n getState: () => {\n const { message, parentId } = callback() ?? {};\n\n const { messages, speech: speechState } =\n this._threadBinding.getState();\n\n if (!message || parentId === undefined) return SKIP_UPDATE;\n\n const thread = this._threadBinding.getState();\n\n const branches = thread.getBranches(message.id);\n const submittedFeedback = thread.getSubmittedFeedback(message.id);\n\n return {\n ...message,\n ...{ [symbolInnerMessage]: (message as any)[symbolInnerMessage] },\n\n isLast: messages.at(-1)?.id === message.id,\n parentId,\n\n branchNumber: branches.indexOf(message.id) + 1,\n branchCount: branches.length,\n\n speech:\n speechState?.messageId === message.id ? speechState : undefined,\n\n submittedFeedback,\n } satisfies MessageState;\n },\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n this._threadBinding,\n );\n }\n\n private _eventSubscriptionSubjects = new Map<\n string,\n EventSubscriptionSubject<ThreadRuntimeEventType>\n >();\n\n public unstable_on(\n event: ThreadRuntimeEventType,\n callback: () => void,\n ): Unsubscribe {\n let subject = this._eventSubscriptionSubjects.get(event);\n if (!subject) {\n subject = new EventSubscriptionSubject({\n event: event,\n binding: this._threadBinding,\n });\n this._eventSubscriptionSubjects.set(event, subject);\n }\n return subject.subscribe(callback);\n }\n}\n"],"mappings":"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","names":["callback"]}
1
+ {"version":3,"sources":["../../src/api/ThreadRuntime.ts"],"sourcesContent":["import {\n ThreadSuggestion,\n RuntimeCapabilities,\n ThreadRuntimeCore,\n SpeechState,\n ThreadRuntimeEventType,\n StartRunConfig,\n} from \"../runtimes/core/ThreadRuntimeCore\";\nimport { ExportedMessageRepository } from \"../runtimes/utils/MessageRepository\";\nimport { AppendMessage, ThreadMessage, Unsubscribe } from \"../types\";\nimport {\n MessageRuntime,\n MessageRuntimeImpl,\n MessageState,\n} from \"./MessageRuntime\";\nimport { NestedSubscriptionSubject } from \"./subscribable/NestedSubscriptionSubject\";\nimport { ShallowMemoizeSubject } from \"./subscribable/ShallowMemoizeSubject\";\nimport { SubscribableWithState } from \"./subscribable/Subscribable\";\nimport {\n ThreadComposerRuntime,\n ThreadComposerRuntimeImpl,\n} from \"./ComposerRuntime\";\nimport { LazyMemoizeSubject } from \"./subscribable/LazyMemoizeSubject\";\nimport { SKIP_UPDATE } from \"./subscribable/SKIP_UPDATE\";\nimport {\n MessageRuntimePath,\n ThreadListItemRuntimePath,\n ThreadRuntimePath,\n} from \"./RuntimePathTypes\";\nimport { ThreadListItemState } from \"./ThreadListItemRuntime\";\nimport { RunConfig } from \"../types/AssistantTypes\";\nimport { EventSubscriptionSubject } from \"./subscribable/EventSubscriptionSubject\";\nimport { symbolInnerMessage } from \"../runtimes/external-store/getExternalStoreMessage\";\nimport { ModelContext } from \"../model-context\";\n\nexport type CreateStartRunConfig = {\n parentId: string | null;\n sourceId?: string | null | undefined;\n runConfig?: RunConfig | undefined;\n};\n\nconst toStartRunConfig = (message: CreateStartRunConfig): StartRunConfig => {\n return {\n parentId: message.parentId ?? null,\n sourceId: message.sourceId ?? null,\n runConfig: message.runConfig ?? {},\n };\n};\n\nexport type CreateAppendMessage =\n | string\n | {\n parentId?: string | null | undefined;\n sourceId?: string | null | undefined;\n role?: AppendMessage[\"role\"] | undefined;\n content: AppendMessage[\"content\"];\n attachments?: AppendMessage[\"attachments\"] | undefined;\n startRun?: boolean | undefined;\n };\n\nconst toAppendMessage = (\n messages: readonly ThreadMessage[],\n message: CreateAppendMessage,\n): AppendMessage => {\n if (typeof message === \"string\") {\n return {\n parentId: messages.at(-1)?.id ?? null,\n sourceId: null,\n runConfig: {},\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n };\n }\n\n if (message.role && message.parentId && message.attachments) {\n return message as AppendMessage;\n }\n\n return {\n ...message,\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n sourceId: message.sourceId ?? null,\n role: message.role ?? \"user\",\n attachments: message.attachments ?? [],\n } as AppendMessage;\n};\n\nexport type ThreadRuntimeCoreBinding = SubscribableWithState<\n ThreadRuntimeCore,\n ThreadRuntimePath\n> & {\n outerSubscribe(callback: () => void): Unsubscribe;\n};\n\nexport type ThreadListItemRuntimeBinding = SubscribableWithState<\n ThreadListItemState,\n ThreadListItemRuntimePath\n>;\n\nexport type ThreadState = {\n /**\n * The thread ID.\n * @deprecated This field is deprecated and will be removed in 0.8.0. Use `useThreadListItem().id` instead.\n */\n readonly threadId: string;\n\n /**\n * The thread metadata.\n *\n * @deprecated Use `useThreadListItem()` instead. This field is deprecated and will be removed in 0.8.0.\n */\n readonly metadata: ThreadListItemState;\n\n /**\n * Whether the thread is disabled. Disabled threads cannot receive new messages.\n */\n readonly isDisabled: boolean;\n\n /**\n * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.\n */\n readonly isRunning: boolean;\n\n /**\n * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.\n */\n readonly capabilities: RuntimeCapabilities;\n\n /**\n * The messages in the currently selected branch of the thread.\n */\n readonly messages: readonly ThreadMessage[];\n\n /**\n * Follow up message suggestions to show the user.\n */\n readonly suggestions: readonly ThreadSuggestion[];\n\n /**\n * Custom extra information provided by the runtime.\n */\n readonly extras: unknown;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n readonly speech: SpeechState | undefined;\n};\n\nexport const getThreadState = (\n runtime: ThreadRuntimeCore,\n threadListItemState: ThreadListItemState,\n): ThreadState => {\n const lastMessage = runtime.messages.at(-1);\n return Object.freeze({\n threadId: threadListItemState.id,\n metadata: threadListItemState,\n capabilities: runtime.capabilities,\n isDisabled: runtime.isDisabled,\n isRunning:\n lastMessage?.role !== \"assistant\"\n ? false\n : lastMessage.status.type === \"running\",\n messages: runtime.messages,\n suggestions: runtime.suggestions,\n extras: runtime.extras,\n speech: runtime.speech,\n });\n};\n\nexport type ThreadRuntime = {\n /**\n * The selector for the thread runtime.\n */\n readonly path: ThreadRuntimePath;\n\n /**\n * The thread composer runtime.\n */\n readonly composer: ThreadComposerRuntime;\n\n /**\n * Gets a snapshot of the thread state.\n */\n getState(): ThreadState;\n\n /**\n * Append a new message to the thread.\n *\n * @example ```ts\n * // append a new user message with the text \"Hello, world!\"\n * threadRuntime.append(\"Hello, world!\");\n * ```\n *\n * @example ```ts\n * // append a new assistant message with the text \"Hello, world!\"\n * threadRuntime.append({\n * role: \"assistant\",\n * content: [{ type: \"text\", text: \"Hello, world!\" }],\n * });\n * ```\n */\n append(message: CreateAppendMessage): void;\n\n /**\n * @deprecated pass an object with `parentId` instead. This will be removed in 0.8.0.\n */\n startRun(parentId: string | null): void;\n /**\n * Start a new run with the given configuration.\n * @param config The configuration for starting the run\n */\n startRun(config: CreateStartRunConfig): void;\n subscribe(callback: () => void): Unsubscribe;\n cancelRun(): void;\n getModelContext(): ModelContext;\n\n /**\n * @deprecated This method was renamed to `getModelContext`.\n */\n getModelConfig(): ModelContext;\n\n export(): ExportedMessageRepository;\n import(repository: ExportedMessageRepository): void;\n getMesssageByIndex(idx: number): MessageRuntime;\n getMesssageById(messageId: string): MessageRuntime;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n stopSpeaking: () => void;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n};\n\nexport class ThreadRuntimeImpl implements ThreadRuntime {\n public get path() {\n return this._threadBinding.path;\n }\n\n public get __internal_threadBinding() {\n return this._threadBinding;\n }\n\n private readonly _threadBinding: ThreadRuntimeCoreBinding & {\n getStateState(): ThreadState;\n };\n\n constructor(\n threadBinding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) {\n const stateBinding = new LazyMemoizeSubject({\n path: threadBinding.path,\n getState: () =>\n getThreadState(\n threadBinding.getState(),\n threadListItemBinding.getState(),\n ),\n subscribe: (callback) => {\n const sub1 = threadBinding.subscribe(callback);\n const sub2 = threadListItemBinding.subscribe(callback);\n return () => {\n sub1();\n sub2();\n };\n },\n });\n\n this._threadBinding = {\n path: threadBinding.path,\n getState: () => threadBinding.getState(),\n getStateState: () => stateBinding.getState(),\n outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),\n subscribe: (callback) => threadBinding.subscribe(callback),\n };\n\n this.composer = new ThreadComposerRuntimeImpl(\n new NestedSubscriptionSubject({\n path: {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.composer`,\n composerSource: \"thread\",\n },\n getState: () => this._threadBinding.getState().composer,\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n );\n }\n\n protected __internal_bindMethods() {\n this.append = this.append.bind(this);\n this.startRun = this.startRun.bind(this);\n this.cancelRun = this.cancelRun.bind(this);\n this.stopSpeaking = this.stopSpeaking.bind(this);\n this.export = this.export.bind(this);\n this.import = this.import.bind(this);\n this.getMesssageByIndex = this.getMesssageByIndex.bind(this);\n this.getMesssageById = this.getMesssageById.bind(this);\n this.subscribe = this.subscribe.bind(this);\n this.unstable_on = this.unstable_on.bind(this);\n this.getModelContext = this.getModelContext.bind(this);\n this.getModelConfig = this.getModelConfig.bind(this);\n this.getState = this.getState.bind(this);\n }\n\n public readonly composer;\n\n public getState() {\n return this._threadBinding.getStateState();\n }\n\n public append(message: CreateAppendMessage) {\n this._threadBinding\n .getState()\n .append(\n toAppendMessage(this._threadBinding.getState().messages, message),\n );\n }\n\n public subscribe(callback: () => void) {\n return this._threadBinding.subscribe(callback);\n }\n\n public getModelContext() {\n return this._threadBinding.getState().getModelContext();\n }\n\n public getModelConfig() {\n return this.getModelContext();\n }\n\n public startRun(configOrParentId: string | null | CreateStartRunConfig) {\n const config =\n configOrParentId === null || typeof configOrParentId === \"string\"\n ? { parentId: configOrParentId }\n : configOrParentId;\n return this._threadBinding.getState().startRun(toStartRunConfig(config));\n }\n\n public cancelRun() {\n this._threadBinding.getState().cancelRun();\n }\n\n public stopSpeaking() {\n return this._threadBinding.getState().stopSpeaking();\n }\n\n public export() {\n return this._threadBinding.getState().export();\n }\n\n public import(data: ExportedMessageRepository) {\n this._threadBinding.getState().import(data);\n }\n\n public getMesssageByIndex(idx: number) {\n if (idx < 0) throw new Error(\"Message index must be >= 0\");\n\n return this._getMessageRuntime(\n {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,\n messageSelector: { type: \"index\", index: idx },\n },\n () => {\n const messages = this._threadBinding.getState().messages;\n const message = messages[idx];\n if (!message) return undefined;\n return {\n message,\n parentId: messages[idx - 1]?.id ?? null,\n };\n },\n );\n }\n\n public getMesssageById(messageId: string) {\n return this._getMessageRuntime(\n {\n ...this.path,\n ref:\n this.path.ref +\n `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,\n messageSelector: { type: \"messageId\", messageId: messageId },\n },\n () => this._threadBinding.getState().getMessageById(messageId),\n );\n }\n\n private _getMessageRuntime(\n path: MessageRuntimePath,\n callback: () =>\n | { parentId: string | null; message: ThreadMessage }\n | undefined,\n ) {\n return new MessageRuntimeImpl(\n new ShallowMemoizeSubject({\n path,\n getState: () => {\n const { message, parentId } = callback() ?? {};\n\n const { messages, speech: speechState } =\n this._threadBinding.getState();\n\n if (!message || parentId === undefined) return SKIP_UPDATE;\n\n const thread = this._threadBinding.getState();\n\n const branches = thread.getBranches(message.id);\n const submittedFeedback = thread.getSubmittedFeedback(message.id);\n\n return {\n ...message,\n ...{ [symbolInnerMessage]: (message as any)[symbolInnerMessage] },\n\n isLast: messages.at(-1)?.id === message.id,\n parentId,\n\n branchNumber: branches.indexOf(message.id) + 1,\n branchCount: branches.length,\n\n speech:\n speechState?.messageId === message.id ? speechState : undefined,\n\n submittedFeedback,\n } satisfies MessageState;\n },\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n this._threadBinding,\n );\n }\n\n private _eventSubscriptionSubjects = new Map<\n string,\n EventSubscriptionSubject<ThreadRuntimeEventType>\n >();\n\n public unstable_on(\n event: ThreadRuntimeEventType,\n callback: () => void,\n ): Unsubscribe {\n let subject = this._eventSubscriptionSubjects.get(event);\n if (!subject) {\n subject = new EventSubscriptionSubject({\n event: event,\n binding: this._threadBinding,\n });\n this._eventSubscriptionSubjects.set(event, subject);\n }\n return subject.subscribe(callback);\n }\n}\n"],"mappings":"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","names":["callback"]}
@@ -2,7 +2,7 @@ import type { ThreadViewportState } from "../stores/ThreadViewport";
2
2
  import { ReadonlyStore } from "../ReadonlyStore";
3
3
  import { UseBoundStore } from "zustand";
4
4
  import { ThreadRuntime } from "../../api/ThreadRuntime";
5
- import { ModelConfig } from "../../types";
5
+ import { ModelContext } from "../../model-context";
6
6
  export type ThreadContextValue = {
7
7
  useThreadRuntime: UseBoundStore<ReadonlyStore<ThreadRuntime>>;
8
8
  useViewport: UseBoundStore<ReadonlyStore<ThreadViewportState>>;
@@ -84,10 +84,10 @@ export declare const useThreadViewport: {
84
84
  optional: true;
85
85
  }): ReadonlyStore<ThreadViewportState> | null;
86
86
  };
87
- export declare function useThreadModelConfig(options?: {
87
+ export declare function useThreadModelContext(options?: {
88
88
  optional?: false | undefined;
89
- }): ModelConfig;
90
- export declare function useThreadModelConfig(options?: {
89
+ }): ModelContext;
90
+ export declare function useThreadModelContext(options?: {
91
91
  optional?: boolean | undefined;
92
- }): ModelConfig | null;
92
+ }): ModelContext | null;
93
93
  //# sourceMappingURL=ThreadContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadContext.d.ts","sourceRoot":"","sources":["../../../src/context/react/ThreadContext.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGxC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI1C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gBAAgB,EAAE,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9D,WAAW,EAAE,aAAa,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC;CAChE,CAAC;AAEF,eAAO,MAAM,aAAa,oDAAiD,CAAC;AAO5E,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE;IACzC,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CAC9B,GAAG,aAAa,CAAC;AAClB,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE;IACzC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC,GAAG,aAAa,GAAG,IAAI,CAAC;AAOzB,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;CAA8C,CAAC;AAKrE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;CAE7B,CAAC;AAEF,eAAO,MACQ,iBAAiB;;;;;;;;;;GACZ,sBAAsB;;;;;CACiB,CAAC;AAE5D,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE;IAC7C,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CAC9B,GAAG,WAAW,CAAC;AAChB,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE;IAC7C,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC,GAAG,WAAW,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"ThreadContext.d.ts","sourceRoot":"","sources":["../../../src/context/react/ThreadContext.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGxC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAInD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,gBAAgB,EAAE,aAAa,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9D,WAAW,EAAE,aAAa,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC;CAChE,CAAC;AAEF,eAAO,MAAM,aAAa,oDAAiD,CAAC;AAO5E,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE;IACzC,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CAC9B,GAAG,aAAa,CAAC;AAClB,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE;IACzC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC,GAAG,aAAa,GAAG,IAAI,CAAC;AAOzB,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;CAA8C,CAAC;AAKrE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;CAE7B,CAAC;AAEF,eAAO,MACQ,iBAAiB;;;;;;;;;;GACZ,sBAAsB;;;;;CACiB,CAAC;AAE5D,wBAAgB,qBAAqB,CAAC,OAAO,CAAC,EAAE;IAC9C,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CAC9B,GAAG,YAAY,CAAC;AACjB,wBAAgB,qBAAqB,CAAC,OAAO,CAAC,EAAE;IAC9C,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC,GAAG,YAAY,GAAG,IAAI,CAAC"}
@@ -24,7 +24,7 @@ __export(ThreadContext_exports, {
24
24
  ThreadContext: () => ThreadContext,
25
25
  useThread: () => useThread,
26
26
  useThreadComposer: () => useThreadComposer,
27
- useThreadModelConfig: () => useThreadModelConfig,
27
+ useThreadModelContext: () => useThreadModelContext,
28
28
  useThreadRuntime: () => useThreadRuntime,
29
29
  useThreadViewport: () => useThreadViewport,
30
30
  useThreadViewportStore: () => useThreadViewportStore
@@ -53,21 +53,21 @@ var {
53
53
  useViewport: useThreadViewport,
54
54
  useViewportStore: useThreadViewportStore
55
55
  } = (0, import_createContextStoreHook.createContextStoreHook)(useThreadContext, "useViewport");
56
- function useThreadModelConfig(options) {
56
+ function useThreadModelContext(options) {
57
57
  const [, rerender] = (0, import_react.useState)({});
58
58
  const runtime = useThreadRuntime(options);
59
59
  (0, import_react.useEffect)(() => {
60
- return runtime?.unstable_on("model-config-update", () => rerender({}));
60
+ return runtime?.unstable_on("model-context-update", () => rerender({}));
61
61
  }, [runtime]);
62
62
  if (!runtime) return null;
63
- return runtime?.getModelConfig();
63
+ return runtime?.getModelContext();
64
64
  }
65
65
  // Annotate the CommonJS export names for ESM import in node:
66
66
  0 && (module.exports = {
67
67
  ThreadContext,
68
68
  useThread,
69
69
  useThreadComposer,
70
- useThreadModelConfig,
70
+ useThreadModelContext,
71
71
  useThreadRuntime,
72
72
  useThreadViewport,
73
73
  useThreadViewportStore
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/context/react/ThreadContext.ts"],"sourcesContent":["\"use client\";\n\nimport { createContext, useEffect, useState } from \"react\";\nimport type { ThreadViewportState } from \"../stores/ThreadViewport\";\nimport { ReadonlyStore } from \"../ReadonlyStore\";\nimport { UseBoundStore } from \"zustand\";\nimport { createContextHook } from \"./utils/createContextHook\";\nimport { createContextStoreHook } from \"./utils/createContextStoreHook\";\nimport { ThreadRuntime } from \"../../api/ThreadRuntime\";\nimport { ModelConfig } from \"../../types\";\nimport { createStateHookForRuntime } from \"./utils/createStateHookForRuntime\";\nimport { ThreadComposerRuntime } from \"../../api\";\n\nexport type ThreadContextValue = {\n useThreadRuntime: UseBoundStore<ReadonlyStore<ThreadRuntime>>;\n useViewport: UseBoundStore<ReadonlyStore<ThreadViewportState>>;\n};\n\nexport const ThreadContext = createContext<ThreadContextValue | null>(null);\n\nconst useThreadContext = createContextHook(\n ThreadContext,\n \"AssistantRuntimeProvider\",\n);\n\nexport function useThreadRuntime(options?: {\n optional?: false | undefined;\n}): ThreadRuntime;\nexport function useThreadRuntime(options?: {\n optional?: boolean | undefined;\n}): ThreadRuntime | null;\nexport function useThreadRuntime(options?: { optional?: boolean | undefined }) {\n const context = useThreadContext(options);\n if (!context) return null;\n return context.useThreadRuntime();\n}\n\nexport const useThread = createStateHookForRuntime(useThreadRuntime);\n\nconst useThreadComposerRuntime = (opt: {\n optional: boolean | undefined;\n}): ThreadComposerRuntime | null => useThreadRuntime(opt)?.composer ?? null;\nexport const useThreadComposer = createStateHookForRuntime(\n useThreadComposerRuntime,\n);\n\nexport const {\n useViewport: useThreadViewport,\n useViewportStore: useThreadViewportStore,\n} = createContextStoreHook(useThreadContext, \"useViewport\");\n\nexport function useThreadModelConfig(options?: {\n optional?: false | undefined;\n}): ModelConfig;\nexport function useThreadModelConfig(options?: {\n optional?: boolean | undefined;\n}): ModelConfig | null;\nexport function useThreadModelConfig(options?: {\n optional?: boolean | undefined;\n}): ModelConfig | null {\n const [, rerender] = useState({});\n\n const runtime = useThreadRuntime(options);\n useEffect(() => {\n return runtime?.unstable_on(\"model-config-update\", () => rerender({}));\n }, [runtime]);\n\n if (!runtime) return null;\n return runtime?.getModelConfig();\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAAmD;AAInD,+BAAkC;AAClC,oCAAuC;AAGvC,uCAA0C;AAQnC,IAAM,oBAAgB,4BAAyC,IAAI;AAE1E,IAAM,uBAAmB;AAAA,EACvB;AAAA,EACA;AACF;AAQO,SAAS,iBAAiB,SAA8C;AAC7E,QAAM,UAAU,iBAAiB,OAAO;AACxC,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,QAAQ,iBAAiB;AAClC;AAEO,IAAM,gBAAY,4DAA0B,gBAAgB;AAEnE,IAAM,2BAA2B,CAAC,QAEE,iBAAiB,GAAG,GAAG,YAAY;AAChE,IAAM,wBAAoB;AAAA,EAC/B;AACF;AAEO,IAAM;AAAA,EACX,aAAa;AAAA,EACb,kBAAkB;AACpB,QAAI,sDAAuB,kBAAkB,aAAa;AAQnD,SAAS,qBAAqB,SAEd;AACrB,QAAM,CAAC,EAAE,QAAQ,QAAI,uBAAS,CAAC,CAAC;AAEhC,QAAM,UAAU,iBAAiB,OAAO;AACxC,8BAAU,MAAM;AACd,WAAO,SAAS,YAAY,uBAAuB,MAAM,SAAS,CAAC,CAAC,CAAC;AAAA,EACvE,GAAG,CAAC,OAAO,CAAC;AAEZ,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,SAAS,eAAe;AACjC;","names":[]}
1
+ {"version":3,"sources":["../../../src/context/react/ThreadContext.ts"],"sourcesContent":["\"use client\";\n\nimport { createContext, useEffect, useState } from \"react\";\nimport type { ThreadViewportState } from \"../stores/ThreadViewport\";\nimport { ReadonlyStore } from \"../ReadonlyStore\";\nimport { UseBoundStore } from \"zustand\";\nimport { createContextHook } from \"./utils/createContextHook\";\nimport { createContextStoreHook } from \"./utils/createContextStoreHook\";\nimport { ThreadRuntime } from \"../../api/ThreadRuntime\";\nimport { ModelContext } from \"../../model-context\";\nimport { createStateHookForRuntime } from \"./utils/createStateHookForRuntime\";\nimport { ThreadComposerRuntime } from \"../../api\";\n\nexport type ThreadContextValue = {\n useThreadRuntime: UseBoundStore<ReadonlyStore<ThreadRuntime>>;\n useViewport: UseBoundStore<ReadonlyStore<ThreadViewportState>>;\n};\n\nexport const ThreadContext = createContext<ThreadContextValue | null>(null);\n\nconst useThreadContext = createContextHook(\n ThreadContext,\n \"AssistantRuntimeProvider\",\n);\n\nexport function useThreadRuntime(options?: {\n optional?: false | undefined;\n}): ThreadRuntime;\nexport function useThreadRuntime(options?: {\n optional?: boolean | undefined;\n}): ThreadRuntime | null;\nexport function useThreadRuntime(options?: { optional?: boolean | undefined }) {\n const context = useThreadContext(options);\n if (!context) return null;\n return context.useThreadRuntime();\n}\n\nexport const useThread = createStateHookForRuntime(useThreadRuntime);\n\nconst useThreadComposerRuntime = (opt: {\n optional: boolean | undefined;\n}): ThreadComposerRuntime | null => useThreadRuntime(opt)?.composer ?? null;\nexport const useThreadComposer = createStateHookForRuntime(\n useThreadComposerRuntime,\n);\n\nexport const {\n useViewport: useThreadViewport,\n useViewportStore: useThreadViewportStore,\n} = createContextStoreHook(useThreadContext, \"useViewport\");\n\nexport function useThreadModelContext(options?: {\n optional?: false | undefined;\n}): ModelContext;\nexport function useThreadModelContext(options?: {\n optional?: boolean | undefined;\n}): ModelContext | null;\nexport function useThreadModelContext(options?: {\n optional?: boolean | undefined;\n}): ModelContext | null {\n const [, rerender] = useState({});\n\n const runtime = useThreadRuntime(options);\n useEffect(() => {\n return runtime?.unstable_on(\"model-context-update\", () => rerender({}));\n }, [runtime]);\n\n if (!runtime) return null;\n return runtime?.getModelContext();\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAAmD;AAInD,+BAAkC;AAClC,oCAAuC;AAGvC,uCAA0C;AAQnC,IAAM,oBAAgB,4BAAyC,IAAI;AAE1E,IAAM,uBAAmB;AAAA,EACvB;AAAA,EACA;AACF;AAQO,SAAS,iBAAiB,SAA8C;AAC7E,QAAM,UAAU,iBAAiB,OAAO;AACxC,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,QAAQ,iBAAiB;AAClC;AAEO,IAAM,gBAAY,4DAA0B,gBAAgB;AAEnE,IAAM,2BAA2B,CAAC,QAEE,iBAAiB,GAAG,GAAG,YAAY;AAChE,IAAM,wBAAoB;AAAA,EAC/B;AACF;AAEO,IAAM;AAAA,EACX,aAAa;AAAA,EACb,kBAAkB;AACpB,QAAI,sDAAuB,kBAAkB,aAAa;AAQnD,SAAS,sBAAsB,SAEd;AACtB,QAAM,CAAC,EAAE,QAAQ,QAAI,uBAAS,CAAC,CAAC;AAEhC,QAAM,UAAU,iBAAiB,OAAO;AACxC,8BAAU,MAAM;AACd,WAAO,SAAS,YAAY,wBAAwB,MAAM,SAAS,CAAC,CAAC,CAAC;AAAA,EACxE,GAAG,CAAC,OAAO,CAAC;AAEZ,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,SAAS,gBAAgB;AAClC;","names":[]}
@@ -24,20 +24,20 @@ var {
24
24
  useViewport: useThreadViewport,
25
25
  useViewportStore: useThreadViewportStore
26
26
  } = createContextStoreHook(useThreadContext, "useViewport");
27
- function useThreadModelConfig(options) {
27
+ function useThreadModelContext(options) {
28
28
  const [, rerender] = useState({});
29
29
  const runtime = useThreadRuntime(options);
30
30
  useEffect(() => {
31
- return runtime?.unstable_on("model-config-update", () => rerender({}));
31
+ return runtime?.unstable_on("model-context-update", () => rerender({}));
32
32
  }, [runtime]);
33
33
  if (!runtime) return null;
34
- return runtime?.getModelConfig();
34
+ return runtime?.getModelContext();
35
35
  }
36
36
  export {
37
37
  ThreadContext,
38
38
  useThread,
39
39
  useThreadComposer,
40
- useThreadModelConfig,
40
+ useThreadModelContext,
41
41
  useThreadRuntime,
42
42
  useThreadViewport,
43
43
  useThreadViewportStore
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/context/react/ThreadContext.ts"],"sourcesContent":["\"use client\";\n\nimport { createContext, useEffect, useState } from \"react\";\nimport type { ThreadViewportState } from \"../stores/ThreadViewport\";\nimport { ReadonlyStore } from \"../ReadonlyStore\";\nimport { UseBoundStore } from \"zustand\";\nimport { createContextHook } from \"./utils/createContextHook\";\nimport { createContextStoreHook } from \"./utils/createContextStoreHook\";\nimport { ThreadRuntime } from \"../../api/ThreadRuntime\";\nimport { ModelConfig } from \"../../types\";\nimport { createStateHookForRuntime } from \"./utils/createStateHookForRuntime\";\nimport { ThreadComposerRuntime } from \"../../api\";\n\nexport type ThreadContextValue = {\n useThreadRuntime: UseBoundStore<ReadonlyStore<ThreadRuntime>>;\n useViewport: UseBoundStore<ReadonlyStore<ThreadViewportState>>;\n};\n\nexport const ThreadContext = createContext<ThreadContextValue | null>(null);\n\nconst useThreadContext = createContextHook(\n ThreadContext,\n \"AssistantRuntimeProvider\",\n);\n\nexport function useThreadRuntime(options?: {\n optional?: false | undefined;\n}): ThreadRuntime;\nexport function useThreadRuntime(options?: {\n optional?: boolean | undefined;\n}): ThreadRuntime | null;\nexport function useThreadRuntime(options?: { optional?: boolean | undefined }) {\n const context = useThreadContext(options);\n if (!context) return null;\n return context.useThreadRuntime();\n}\n\nexport const useThread = createStateHookForRuntime(useThreadRuntime);\n\nconst useThreadComposerRuntime = (opt: {\n optional: boolean | undefined;\n}): ThreadComposerRuntime | null => useThreadRuntime(opt)?.composer ?? null;\nexport const useThreadComposer = createStateHookForRuntime(\n useThreadComposerRuntime,\n);\n\nexport const {\n useViewport: useThreadViewport,\n useViewportStore: useThreadViewportStore,\n} = createContextStoreHook(useThreadContext, \"useViewport\");\n\nexport function useThreadModelConfig(options?: {\n optional?: false | undefined;\n}): ModelConfig;\nexport function useThreadModelConfig(options?: {\n optional?: boolean | undefined;\n}): ModelConfig | null;\nexport function useThreadModelConfig(options?: {\n optional?: boolean | undefined;\n}): ModelConfig | null {\n const [, rerender] = useState({});\n\n const runtime = useThreadRuntime(options);\n useEffect(() => {\n return runtime?.unstable_on(\"model-config-update\", () => rerender({}));\n }, [runtime]);\n\n if (!runtime) return null;\n return runtime?.getModelConfig();\n}\n"],"mappings":";;;AAEA,SAAS,eAAe,WAAW,gBAAgB;AAInD,SAAS,yBAAyB;AAClC,SAAS,8BAA8B;AAGvC,SAAS,iCAAiC;AAQnC,IAAM,gBAAgB,cAAyC,IAAI;AAE1E,IAAM,mBAAmB;AAAA,EACvB;AAAA,EACA;AACF;AAQO,SAAS,iBAAiB,SAA8C;AAC7E,QAAM,UAAU,iBAAiB,OAAO;AACxC,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,QAAQ,iBAAiB;AAClC;AAEO,IAAM,YAAY,0BAA0B,gBAAgB;AAEnE,IAAM,2BAA2B,CAAC,QAEE,iBAAiB,GAAG,GAAG,YAAY;AAChE,IAAM,oBAAoB;AAAA,EAC/B;AACF;AAEO,IAAM;AAAA,EACX,aAAa;AAAA,EACb,kBAAkB;AACpB,IAAI,uBAAuB,kBAAkB,aAAa;AAQnD,SAAS,qBAAqB,SAEd;AACrB,QAAM,CAAC,EAAE,QAAQ,IAAI,SAAS,CAAC,CAAC;AAEhC,QAAM,UAAU,iBAAiB,OAAO;AACxC,YAAU,MAAM;AACd,WAAO,SAAS,YAAY,uBAAuB,MAAM,SAAS,CAAC,CAAC,CAAC;AAAA,EACvE,GAAG,CAAC,OAAO,CAAC;AAEZ,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,SAAS,eAAe;AACjC;","names":[]}
1
+ {"version":3,"sources":["../../../src/context/react/ThreadContext.ts"],"sourcesContent":["\"use client\";\n\nimport { createContext, useEffect, useState } from \"react\";\nimport type { ThreadViewportState } from \"../stores/ThreadViewport\";\nimport { ReadonlyStore } from \"../ReadonlyStore\";\nimport { UseBoundStore } from \"zustand\";\nimport { createContextHook } from \"./utils/createContextHook\";\nimport { createContextStoreHook } from \"./utils/createContextStoreHook\";\nimport { ThreadRuntime } from \"../../api/ThreadRuntime\";\nimport { ModelContext } from \"../../model-context\";\nimport { createStateHookForRuntime } from \"./utils/createStateHookForRuntime\";\nimport { ThreadComposerRuntime } from \"../../api\";\n\nexport type ThreadContextValue = {\n useThreadRuntime: UseBoundStore<ReadonlyStore<ThreadRuntime>>;\n useViewport: UseBoundStore<ReadonlyStore<ThreadViewportState>>;\n};\n\nexport const ThreadContext = createContext<ThreadContextValue | null>(null);\n\nconst useThreadContext = createContextHook(\n ThreadContext,\n \"AssistantRuntimeProvider\",\n);\n\nexport function useThreadRuntime(options?: {\n optional?: false | undefined;\n}): ThreadRuntime;\nexport function useThreadRuntime(options?: {\n optional?: boolean | undefined;\n}): ThreadRuntime | null;\nexport function useThreadRuntime(options?: { optional?: boolean | undefined }) {\n const context = useThreadContext(options);\n if (!context) return null;\n return context.useThreadRuntime();\n}\n\nexport const useThread = createStateHookForRuntime(useThreadRuntime);\n\nconst useThreadComposerRuntime = (opt: {\n optional: boolean | undefined;\n}): ThreadComposerRuntime | null => useThreadRuntime(opt)?.composer ?? null;\nexport const useThreadComposer = createStateHookForRuntime(\n useThreadComposerRuntime,\n);\n\nexport const {\n useViewport: useThreadViewport,\n useViewportStore: useThreadViewportStore,\n} = createContextStoreHook(useThreadContext, \"useViewport\");\n\nexport function useThreadModelContext(options?: {\n optional?: false | undefined;\n}): ModelContext;\nexport function useThreadModelContext(options?: {\n optional?: boolean | undefined;\n}): ModelContext | null;\nexport function useThreadModelContext(options?: {\n optional?: boolean | undefined;\n}): ModelContext | null {\n const [, rerender] = useState({});\n\n const runtime = useThreadRuntime(options);\n useEffect(() => {\n return runtime?.unstable_on(\"model-context-update\", () => rerender({}));\n }, [runtime]);\n\n if (!runtime) return null;\n return runtime?.getModelContext();\n}\n"],"mappings":";;;AAEA,SAAS,eAAe,WAAW,gBAAgB;AAInD,SAAS,yBAAyB;AAClC,SAAS,8BAA8B;AAGvC,SAAS,iCAAiC;AAQnC,IAAM,gBAAgB,cAAyC,IAAI;AAE1E,IAAM,mBAAmB;AAAA,EACvB;AAAA,EACA;AACF;AAQO,SAAS,iBAAiB,SAA8C;AAC7E,QAAM,UAAU,iBAAiB,OAAO;AACxC,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,QAAQ,iBAAiB;AAClC;AAEO,IAAM,YAAY,0BAA0B,gBAAgB;AAEnE,IAAM,2BAA2B,CAAC,QAEE,iBAAiB,GAAG,GAAG,YAAY;AAChE,IAAM,oBAAoB;AAAA,EAC/B;AACF;AAEO,IAAM;AAAA,EACX,aAAa;AAAA,EACb,kBAAkB;AACpB,IAAI,uBAAuB,kBAAkB,aAAa;AAQnD,SAAS,sBAAsB,SAEd;AACtB,QAAM,CAAC,EAAE,QAAQ,IAAI,SAAS,CAAC,CAAC;AAEhC,QAAM,UAAU,iBAAiB,OAAO;AACxC,YAAU,MAAM;AACd,WAAO,SAAS,YAAY,wBAAwB,MAAM,SAAS,CAAC,CAAC,CAAC;AAAA,EACxE,GAAG,CAAC,OAAO,CAAC;AAEZ,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,SAAS,gBAAgB;AAClC;","names":[]}
@@ -1,5 +1,9 @@
1
1
  export { useAssistantRuntime, useThreadList, useToolUIs, useToolUIsStore, } from "./AssistantContext";
2
- export { useThreadRuntime, useThread, useThreadComposer, useThreadModelConfig, useThreadViewport, useThreadViewportStore, } from "./ThreadContext";
2
+ export { useThreadRuntime, useThread, useThreadComposer, useThreadModelContext,
3
+ /**
4
+ * @deprecated This method was renamed to `useThreadModelContext`.
5
+ */
6
+ useThreadModelContext as useThreadModelConfig, useThreadViewport, useThreadViewportStore, } from "./ThreadContext";
3
7
  export { useThreadListItemRuntime, useThreadListItem, } from "./ThreadListItemContext";
4
8
  export { useMessageRuntime, useMessage, useEditComposer, useMessageUtils, useMessageUtilsStore, } from "./MessageContext";
5
9
  export { useContentPartRuntime, useContentPart } from "./ContentPartContext";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/context/react/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,eAAe,EACf,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EACL,aAAa,EACb,oBAAoB,GASrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/context/react/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,qBAAqB;AACrB;;GAEG;AACH,qBAAqB,IAAI,oBAAoB,EAC7C,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,eAAe,EACf,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EACL,aAAa,EACb,oBAAoB,GASrB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC"}