@assistant-ui/react 0.10.0 → 0.10.2

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 (826) hide show
  1. package/dist/api/AssistantRuntime.d.ts +64 -0
  2. package/dist/api/AssistantRuntime.d.ts.map +1 -0
  3. package/dist/api/AssistantRuntime.js +5 -4
  4. package/dist/api/AssistantRuntime.js.map +1 -1
  5. package/dist/api/AttachmentRuntime.d.ts +63 -0
  6. package/dist/api/AttachmentRuntime.d.ts.map +1 -0
  7. package/dist/api/AttachmentRuntime.js +11 -10
  8. package/dist/api/AttachmentRuntime.js.map +1 -1
  9. package/dist/api/ComposerRuntime.d.ts +114 -0
  10. package/dist/api/ComposerRuntime.d.ts.map +1 -0
  11. package/dist/api/ComposerRuntime.js +16 -15
  12. package/dist/api/ComposerRuntime.js.map +1 -1
  13. package/dist/api/ContentPartRuntime.d.ts +33 -0
  14. package/dist/api/ContentPartRuntime.d.ts.map +1 -0
  15. package/dist/api/ContentPartRuntime.js +3 -2
  16. package/dist/api/ContentPartRuntime.js.map +1 -1
  17. package/dist/api/MessageRuntime.d.ts +80 -0
  18. package/dist/api/MessageRuntime.d.ts.map +1 -0
  19. package/dist/api/MessageRuntime.js +14 -13
  20. package/dist/api/MessageRuntime.js.map +1 -1
  21. package/dist/api/RuntimePathTypes.d.ts +64 -0
  22. package/dist/api/RuntimePathTypes.d.ts.map +1 -0
  23. package/dist/api/ThreadListItemRuntime.d.ts +55 -0
  24. package/dist/api/ThreadListItemRuntime.d.ts.map +1 -0
  25. package/dist/api/ThreadListItemRuntime.js +3 -2
  26. package/dist/api/ThreadListItemRuntime.js.map +1 -1
  27. package/dist/api/ThreadListRuntime.d.ts +42 -0
  28. package/dist/api/ThreadListRuntime.d.ts.map +1 -0
  29. package/dist/api/ThreadListRuntime.js +11 -10
  30. package/dist/api/ThreadListRuntime.js.map +1 -1
  31. package/dist/api/ThreadRuntime.d.ts +216 -0
  32. package/dist/api/ThreadRuntime.d.ts.map +1 -0
  33. package/dist/api/ThreadRuntime.js +14 -13
  34. package/dist/api/ThreadRuntime.js.map +1 -1
  35. package/dist/api/index.d.ts +9 -0
  36. package/dist/api/index.d.ts.map +1 -0
  37. package/dist/api/subscribable/BaseSubject.d.ts +11 -0
  38. package/dist/api/subscribable/BaseSubject.d.ts.map +1 -0
  39. package/dist/api/subscribable/BaseSubject.js +3 -2
  40. package/dist/api/subscribable/BaseSubject.js.map +1 -1
  41. package/dist/api/subscribable/EventSubscriptionSubject.d.ts +13 -0
  42. package/dist/api/subscribable/EventSubscriptionSubject.d.ts.map +1 -0
  43. package/dist/api/subscribable/EventSubscriptionSubject.js +4 -3
  44. package/dist/api/subscribable/EventSubscriptionSubject.js.map +1 -1
  45. package/dist/api/subscribable/LazyMemoizeSubject.d.ts +13 -0
  46. package/dist/api/subscribable/LazyMemoizeSubject.d.ts.map +1 -0
  47. package/dist/api/subscribable/LazyMemoizeSubject.js +5 -4
  48. package/dist/api/subscribable/LazyMemoizeSubject.js.map +1 -1
  49. package/dist/api/subscribable/NestedSubscriptionSubject.d.ts +12 -0
  50. package/dist/api/subscribable/NestedSubscriptionSubject.d.ts.map +1 -0
  51. package/dist/api/subscribable/NestedSubscriptionSubject.js +4 -3
  52. package/dist/api/subscribable/NestedSubscriptionSubject.js.map +1 -1
  53. package/dist/api/subscribable/SKIP_UPDATE.d.ts +3 -0
  54. package/dist/api/subscribable/SKIP_UPDATE.d.ts.map +1 -0
  55. package/dist/api/subscribable/SKIP_UPDATE.js +2 -1
  56. package/dist/api/subscribable/SKIP_UPDATE.js.map +1 -1
  57. package/dist/api/subscribable/ShallowMemoizeSubject.d.ts +13 -0
  58. package/dist/api/subscribable/ShallowMemoizeSubject.d.ts.map +1 -0
  59. package/dist/api/subscribable/ShallowMemoizeSubject.js +6 -5
  60. package/dist/api/subscribable/ShallowMemoizeSubject.js.map +1 -1
  61. package/dist/api/subscribable/Subscribable.d.ts +16 -0
  62. package/dist/api/subscribable/Subscribable.d.ts.map +1 -0
  63. package/dist/api/subscribable/shallowEqual.d.ts +2 -0
  64. package/dist/api/subscribable/shallowEqual.d.ts.map +1 -0
  65. package/dist/api/subscribable/shallowEqual.js +1 -0
  66. package/dist/api/subscribable/shallowEqual.js.map +1 -1
  67. package/dist/cloud/AssistantCloud.d.ts +13 -0
  68. package/dist/cloud/AssistantCloud.d.ts.map +1 -0
  69. package/dist/cloud/AssistantCloud.js +7 -6
  70. package/dist/cloud/AssistantCloud.js.map +1 -1
  71. package/dist/cloud/AssistantCloudAPI.d.ts +27 -0
  72. package/dist/cloud/AssistantCloudAPI.d.ts.map +1 -0
  73. package/dist/cloud/AssistantCloudAPI.js +6 -5
  74. package/dist/cloud/AssistantCloudAPI.js.map +1 -1
  75. package/dist/cloud/AssistantCloudAuthStrategy.d.ts +30 -0
  76. package/dist/cloud/AssistantCloudAuthStrategy.d.ts.map +1 -0
  77. package/dist/cloud/AssistantCloudAuthStrategy.js +9 -8
  78. package/dist/cloud/AssistantCloudAuthStrategy.js.map +1 -1
  79. package/dist/cloud/AssistantCloudAuthTokens.d.ts +11 -0
  80. package/dist/cloud/AssistantCloudAuthTokens.d.ts.map +1 -0
  81. package/dist/cloud/AssistantCloudAuthTokens.js +3 -2
  82. package/dist/cloud/AssistantCloudAuthTokens.js.map +1 -1
  83. package/dist/cloud/AssistantCloudRuns.d.ts +15 -0
  84. package/dist/cloud/AssistantCloudRuns.d.ts.map +1 -0
  85. package/dist/cloud/AssistantCloudRuns.js +3 -2
  86. package/dist/cloud/AssistantCloudRuns.js.map +1 -1
  87. package/dist/cloud/AssistantCloudThreadHistoryAdapter.d.ts +5 -0
  88. package/dist/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -0
  89. package/dist/cloud/AssistantCloudThreadHistoryAdapter.js +6 -5
  90. package/dist/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
  91. package/dist/cloud/AssistantCloudThreadMessages.d.ts +30 -0
  92. package/dist/cloud/AssistantCloudThreadMessages.d.ts.map +1 -0
  93. package/dist/cloud/AssistantCloudThreadMessages.js +3 -2
  94. package/dist/cloud/AssistantCloudThreadMessages.js.map +1 -1
  95. package/dist/cloud/AssistantCloudThreads.d.ts +48 -0
  96. package/dist/cloud/AssistantCloudThreads.d.ts.map +1 -0
  97. package/dist/cloud/AssistantCloudThreads.js +4 -3
  98. package/dist/cloud/AssistantCloudThreads.js.map +1 -1
  99. package/dist/cloud/auiV0.d.ts +54 -0
  100. package/dist/cloud/auiV0.d.ts.map +1 -0
  101. package/dist/cloud/auiV0.js +5 -4
  102. package/dist/cloud/auiV0.js.map +1 -1
  103. package/dist/cloud/index.d.ts +3 -0
  104. package/dist/cloud/index.d.ts.map +1 -0
  105. package/dist/cloud/index.js +3 -2
  106. package/dist/cloud/index.js.map +1 -1
  107. package/dist/cloud/useCloudThreadListRuntime.d.ts +14 -0
  108. package/dist/cloud/useCloudThreadListRuntime.d.ts.map +1 -0
  109. package/dist/cloud/useCloudThreadListRuntime.js +5 -3
  110. package/dist/cloud/useCloudThreadListRuntime.js.map +1 -1
  111. package/dist/context/ReadonlyStore.d.ts +4 -0
  112. package/dist/context/ReadonlyStore.d.ts.map +1 -0
  113. package/dist/context/ReadonlyStore.js +2 -1
  114. package/dist/context/ReadonlyStore.js.map +1 -1
  115. package/dist/context/index.d.ts +4 -0
  116. package/dist/context/index.d.ts.map +1 -0
  117. package/dist/context/index.js +4 -3
  118. package/dist/context/index.js.map +1 -1
  119. package/dist/context/providers/AssistantRuntimeProvider.d.ts +13 -0
  120. package/dist/context/providers/AssistantRuntimeProvider.d.ts.map +1 -0
  121. package/dist/context/providers/AssistantRuntimeProvider.js +13 -11
  122. package/dist/context/providers/AssistantRuntimeProvider.js.map +1 -1
  123. package/dist/context/providers/AttachmentRuntimeProvider.d.ts +9 -0
  124. package/dist/context/providers/AttachmentRuntimeProvider.d.ts.map +1 -0
  125. package/dist/context/providers/AttachmentRuntimeProvider.js +8 -6
  126. package/dist/context/providers/AttachmentRuntimeProvider.js.map +1 -1
  127. package/dist/context/providers/ContentPartRuntimeProvider.d.ts +9 -0
  128. package/dist/context/providers/ContentPartRuntimeProvider.d.ts.map +1 -0
  129. package/dist/context/providers/ContentPartRuntimeProvider.js +8 -6
  130. package/dist/context/providers/ContentPartRuntimeProvider.js.map +1 -1
  131. package/dist/context/providers/MessageRuntimeProvider.d.ts +9 -0
  132. package/dist/context/providers/MessageRuntimeProvider.d.ts.map +1 -0
  133. package/dist/context/providers/MessageRuntimeProvider.js +10 -8
  134. package/dist/context/providers/MessageRuntimeProvider.js.map +1 -1
  135. package/dist/context/providers/TextContentPartProvider.d.ts +9 -0
  136. package/dist/context/providers/TextContentPartProvider.d.ts.map +1 -0
  137. package/dist/context/providers/TextContentPartProvider.js +10 -8
  138. package/dist/context/providers/TextContentPartProvider.js.map +1 -1
  139. package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts +9 -0
  140. package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts.map +1 -0
  141. package/dist/context/providers/ThreadListItemRuntimeProvider.js +8 -6
  142. package/dist/context/providers/ThreadListItemRuntimeProvider.js.map +1 -1
  143. package/dist/context/providers/ThreadRuntimeProvider.d.ts +10 -0
  144. package/dist/context/providers/ThreadRuntimeProvider.d.ts.map +1 -0
  145. package/dist/context/providers/ThreadRuntimeProvider.js +10 -8
  146. package/dist/context/providers/ThreadRuntimeProvider.js.map +1 -1
  147. package/dist/context/providers/ThreadViewportProvider.d.ts +3 -0
  148. package/dist/context/providers/ThreadViewportProvider.d.ts.map +1 -0
  149. package/dist/context/providers/ThreadViewportProvider.js +8 -6
  150. package/dist/context/providers/ThreadViewportProvider.js.map +1 -1
  151. package/dist/context/providers/index.d.ts +3 -0
  152. package/dist/context/providers/index.d.ts.map +1 -0
  153. package/dist/context/providers/index.js +3 -2
  154. package/dist/context/providers/index.js.map +1 -1
  155. package/dist/context/react/AssistantContext.d.ts +62 -0
  156. package/dist/context/react/AssistantContext.d.ts.map +1 -0
  157. package/dist/context/react/AssistantContext.js +10 -8
  158. package/dist/context/react/AssistantContext.js.map +1 -1
  159. package/dist/context/react/AttachmentContext.d.ts +836 -0
  160. package/dist/context/react/AttachmentContext.d.ts.map +1 -0
  161. package/dist/context/react/AttachmentContext.js +10 -8
  162. package/dist/context/react/AttachmentContext.js.map +1 -1
  163. package/dist/context/react/ComposerContext.d.ts +35 -0
  164. package/dist/context/react/ComposerContext.d.ts.map +1 -0
  165. package/dist/context/react/ComposerContext.js +6 -4
  166. package/dist/context/react/ComposerContext.js.map +1 -1
  167. package/dist/context/react/ContentPartContext.d.ts +41 -0
  168. package/dist/context/react/ContentPartContext.d.ts.map +1 -0
  169. package/dist/context/react/ContentPartContext.js +7 -5
  170. package/dist/context/react/ContentPartContext.js.map +1 -1
  171. package/dist/context/react/MessageContext.d.ts +86 -0
  172. package/dist/context/react/MessageContext.d.ts.map +1 -0
  173. package/dist/context/react/MessageContext.js +11 -9
  174. package/dist/context/react/MessageContext.js.map +1 -1
  175. package/dist/context/react/ThreadContext.d.ts +75 -0
  176. package/dist/context/react/ThreadContext.d.ts.map +1 -0
  177. package/dist/context/react/ThreadContext.js +9 -7
  178. package/dist/context/react/ThreadContext.js.map +1 -1
  179. package/dist/context/react/ThreadListItemContext.d.ts +41 -0
  180. package/dist/context/react/ThreadListItemContext.d.ts.map +1 -0
  181. package/dist/context/react/ThreadListItemContext.js +7 -5
  182. package/dist/context/react/ThreadListItemContext.js.map +1 -1
  183. package/dist/context/react/ThreadViewportContext.d.ts +24 -0
  184. package/dist/context/react/ThreadViewportContext.d.ts.map +1 -0
  185. package/dist/context/react/ThreadViewportContext.js +7 -5
  186. package/dist/context/react/ThreadViewportContext.js.map +1 -1
  187. package/dist/context/react/index.d.ts +14 -0
  188. package/dist/context/react/index.d.ts.map +1 -0
  189. package/dist/context/react/index.js +11 -9
  190. package/dist/context/react/index.js.map +1 -1
  191. package/dist/context/react/utils/createContextHook.d.ts +11 -0
  192. package/dist/context/react/utils/createContextHook.d.ts.map +1 -0
  193. package/dist/context/react/utils/createContextHook.js +2 -0
  194. package/dist/context/react/utils/createContextHook.js.map +1 -1
  195. package/dist/context/react/utils/createContextStoreHook.d.ts +26 -0
  196. package/dist/context/react/utils/createContextStoreHook.d.ts.map +1 -0
  197. package/dist/context/react/utils/createContextStoreHook.js +1 -0
  198. package/dist/context/react/utils/createContextStoreHook.js.map +1 -1
  199. package/dist/context/react/utils/createStateHookForRuntime.d.ts +31 -0
  200. package/dist/context/react/utils/createStateHookForRuntime.d.ts.map +1 -0
  201. package/dist/context/react/utils/createStateHookForRuntime.js +2 -1
  202. package/dist/context/react/utils/createStateHookForRuntime.js.map +1 -1
  203. package/dist/context/react/utils/ensureBinding.d.ts +2 -0
  204. package/dist/context/react/utils/ensureBinding.d.ts.map +1 -0
  205. package/dist/context/react/utils/ensureBinding.js +2 -21
  206. package/dist/context/react/utils/ensureBinding.js.map +1 -1
  207. package/dist/context/react/utils/useRuntimeState.d.ts +10 -0
  208. package/dist/context/react/utils/useRuntimeState.d.ts.map +1 -0
  209. package/dist/context/react/utils/useRuntimeState.js +3 -2
  210. package/dist/context/react/utils/useRuntimeState.js.map +1 -1
  211. package/dist/context/stores/AssistantToolUIs.d.ts +14 -0
  212. package/dist/context/stores/AssistantToolUIs.d.ts.map +1 -0
  213. package/dist/context/stores/AssistantToolUIs.js +2 -1
  214. package/dist/context/stores/AssistantToolUIs.js.map +1 -1
  215. package/dist/context/stores/MessageUtils.d.ts +8 -0
  216. package/dist/context/stores/MessageUtils.d.ts.map +1 -0
  217. package/dist/context/stores/MessageUtils.js +2 -1
  218. package/dist/context/stores/MessageUtils.js.map +1 -1
  219. package/dist/context/stores/ThreadViewport.d.ts +8 -0
  220. package/dist/context/stores/ThreadViewport.d.ts.map +1 -0
  221. package/dist/context/stores/ThreadViewport.js +3 -1
  222. package/dist/context/stores/ThreadViewport.js.map +1 -1
  223. package/dist/context/stores/index.d.ts +4 -0
  224. package/dist/context/stores/index.d.ts.map +1 -0
  225. package/dist/index.d.ts +9 -0
  226. package/dist/index.d.ts.map +1 -0
  227. package/dist/index.js +9 -8
  228. package/dist/index.js.map +1 -1
  229. package/dist/internal.d.ts +14 -0
  230. package/dist/internal.d.ts.map +1 -0
  231. package/dist/internal.js +12 -11
  232. package/dist/internal.js.map +1 -1
  233. package/dist/model-context/ModelContextTypes.d.ts +29 -0
  234. package/dist/model-context/ModelContextTypes.d.ts.map +1 -0
  235. package/dist/model-context/ModelContextTypes.js +2 -1
  236. package/dist/model-context/ModelContextTypes.js.map +1 -1
  237. package/dist/model-context/index.d.ts +23 -0
  238. package/dist/model-context/index.d.ts.map +1 -0
  239. package/dist/model-context/index.js +10 -9
  240. package/dist/model-context/index.js.map +1 -1
  241. package/dist/model-context/makeAssistantTool.d.ts +7 -0
  242. package/dist/model-context/makeAssistantTool.d.ts.map +1 -0
  243. package/dist/model-context/makeAssistantTool.js +4 -2
  244. package/dist/model-context/makeAssistantTool.js.map +1 -1
  245. package/dist/model-context/makeAssistantToolUI.d.ts +7 -0
  246. package/dist/model-context/makeAssistantToolUI.d.ts.map +1 -0
  247. package/dist/model-context/makeAssistantToolUI.js +4 -2
  248. package/dist/model-context/makeAssistantToolUI.js.map +1 -1
  249. package/dist/model-context/makeAssistantVisible.d.ts +7 -0
  250. package/dist/model-context/makeAssistantVisible.d.ts.map +1 -0
  251. package/dist/model-context/makeAssistantVisible.js +9 -7
  252. package/dist/model-context/makeAssistantVisible.js.map +1 -1
  253. package/dist/model-context/tool.d.ts +12 -0
  254. package/dist/model-context/tool.d.ts.map +1 -0
  255. package/dist/model-context/tool.js +1 -0
  256. package/dist/model-context/tool.js.map +1 -1
  257. package/dist/model-context/useAssistantInstructions.d.ts +7 -0
  258. package/dist/model-context/useAssistantInstructions.d.ts.map +1 -0
  259. package/dist/model-context/useAssistantInstructions.js +5 -3
  260. package/dist/model-context/useAssistantInstructions.js.map +1 -1
  261. package/dist/model-context/useAssistantTool.d.ts +9 -0
  262. package/dist/model-context/useAssistantTool.d.ts.map +1 -0
  263. package/dist/model-context/useAssistantTool.js +4 -2
  264. package/dist/model-context/useAssistantTool.js.map +1 -1
  265. package/dist/model-context/useAssistantToolUI.d.ts +7 -0
  266. package/dist/model-context/useAssistantToolUI.d.ts.map +1 -0
  267. package/dist/model-context/useAssistantToolUI.js +4 -2
  268. package/dist/model-context/useAssistantToolUI.js.map +1 -1
  269. package/dist/model-context/useInlineRender.d.ts +4 -0
  270. package/dist/model-context/useInlineRender.d.ts.map +1 -0
  271. package/dist/model-context/useInlineRender.js +3 -1
  272. package/dist/model-context/useInlineRender.js.map +1 -1
  273. package/dist/primitives/actionBar/ActionBarCopy.d.ts +15 -0
  274. package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -0
  275. package/dist/primitives/actionBar/ActionBarCopy.js +8 -6
  276. package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
  277. package/dist/primitives/actionBar/ActionBarEdit.d.ts +11 -0
  278. package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -0
  279. package/dist/primitives/actionBar/ActionBarEdit.js +6 -4
  280. package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
  281. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts +11 -0
  282. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -0
  283. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +7 -5
  284. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
  285. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts +11 -0
  286. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -0
  287. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +6 -4
  288. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
  289. package/dist/primitives/actionBar/ActionBarReload.d.ts +11 -0
  290. package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -0
  291. package/dist/primitives/actionBar/ActionBarReload.js +8 -6
  292. package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
  293. package/dist/primitives/actionBar/ActionBarRoot.d.ts +20 -0
  294. package/dist/primitives/actionBar/ActionBarRoot.d.ts.map +1 -0
  295. package/dist/primitives/actionBar/ActionBarRoot.js +5 -3
  296. package/dist/primitives/actionBar/ActionBarRoot.js.map +1 -1
  297. package/dist/primitives/actionBar/ActionBarSpeak.d.ts +11 -0
  298. package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -0
  299. package/dist/primitives/actionBar/ActionBarSpeak.js +6 -4
  300. package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
  301. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts +11 -0
  302. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -0
  303. package/dist/primitives/actionBar/ActionBarStopSpeaking.js +6 -4
  304. package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
  305. package/dist/primitives/actionBar/index.d.ts +9 -0
  306. package/dist/primitives/actionBar/index.d.ts.map +1 -0
  307. package/dist/primitives/actionBar/index.js +9 -8
  308. package/dist/primitives/actionBar/index.js.map +1 -1
  309. package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts +12 -0
  310. package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts.map +1 -0
  311. package/dist/primitives/actionBar/useActionBarFloatStatus.js +6 -4
  312. package/dist/primitives/actionBar/useActionBarFloatStatus.js.map +1 -1
  313. package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts +8 -0
  314. package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts.map +1 -0
  315. package/dist/primitives/assistantModal/AssistantModalAnchor.js +5 -3
  316. package/dist/primitives/assistantModal/AssistantModalAnchor.js.map +1 -1
  317. package/dist/primitives/assistantModal/AssistantModalContent.d.ts +12 -0
  318. package/dist/primitives/assistantModal/AssistantModalContent.d.ts.map +1 -0
  319. package/dist/primitives/assistantModal/AssistantModalContent.js +5 -3
  320. package/dist/primitives/assistantModal/AssistantModalContent.js.map +1 -1
  321. package/dist/primitives/assistantModal/AssistantModalRoot.d.ts +9 -0
  322. package/dist/primitives/assistantModal/AssistantModalRoot.d.ts.map +1 -0
  323. package/dist/primitives/assistantModal/AssistantModalRoot.js +7 -5
  324. package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
  325. package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts +8 -0
  326. package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts.map +1 -0
  327. package/dist/primitives/assistantModal/AssistantModalTrigger.js +4 -3
  328. package/dist/primitives/assistantModal/AssistantModalTrigger.js.map +1 -1
  329. package/dist/primitives/assistantModal/index.d.ts +5 -0
  330. package/dist/primitives/assistantModal/index.d.ts.map +1 -0
  331. package/dist/primitives/assistantModal/index.js +5 -4
  332. package/dist/primitives/assistantModal/index.js.map +1 -1
  333. package/dist/primitives/assistantModal/scope.d.ts +8 -0
  334. package/dist/primitives/assistantModal/scope.d.ts.map +1 -0
  335. package/dist/primitives/assistantModal/scope.js +2 -1
  336. package/dist/primitives/assistantModal/scope.js.map +1 -1
  337. package/dist/primitives/attachment/AttachmentName.d.ts +6 -0
  338. package/dist/primitives/attachment/AttachmentName.d.ts.map +1 -0
  339. package/dist/primitives/attachment/AttachmentName.js +4 -2
  340. package/dist/primitives/attachment/AttachmentName.js.map +1 -1
  341. package/dist/primitives/attachment/AttachmentRemove.d.ts +11 -0
  342. package/dist/primitives/attachment/AttachmentRemove.d.ts.map +1 -0
  343. package/dist/primitives/attachment/AttachmentRemove.js +6 -4
  344. package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
  345. package/dist/primitives/attachment/AttachmentRoot.d.ts +12 -0
  346. package/dist/primitives/attachment/AttachmentRoot.d.ts.map +1 -0
  347. package/dist/primitives/attachment/AttachmentRoot.js +3 -2
  348. package/dist/primitives/attachment/AttachmentRoot.js.map +1 -1
  349. package/dist/primitives/attachment/AttachmentThumb.d.ts +12 -0
  350. package/dist/primitives/attachment/AttachmentThumb.d.ts.map +1 -0
  351. package/dist/primitives/attachment/AttachmentThumb.js +5 -3
  352. package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
  353. package/dist/primitives/attachment/index.d.ts +5 -0
  354. package/dist/primitives/attachment/index.d.ts.map +1 -0
  355. package/dist/primitives/attachment/index.js +5 -4
  356. package/dist/primitives/attachment/index.js.map +1 -1
  357. package/dist/primitives/branchPicker/BranchPickerCount.d.ts +6 -0
  358. package/dist/primitives/branchPicker/BranchPickerCount.d.ts.map +1 -0
  359. package/dist/primitives/branchPicker/BranchPickerCount.js +5 -3
  360. package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
  361. package/dist/primitives/branchPicker/BranchPickerNext.d.ts +11 -0
  362. package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -0
  363. package/dist/primitives/branchPicker/BranchPickerNext.js +6 -4
  364. package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
  365. package/dist/primitives/branchPicker/BranchPickerNumber.d.ts +6 -0
  366. package/dist/primitives/branchPicker/BranchPickerNumber.d.ts.map +1 -0
  367. package/dist/primitives/branchPicker/BranchPickerNumber.js +5 -3
  368. package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
  369. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +11 -0
  370. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -0
  371. package/dist/primitives/branchPicker/BranchPickerPrevious.js +6 -4
  372. package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
  373. package/dist/primitives/branchPicker/BranchPickerRoot.d.ts +14 -0
  374. package/dist/primitives/branchPicker/BranchPickerRoot.d.ts.map +1 -0
  375. package/dist/primitives/branchPicker/BranchPickerRoot.js +4 -3
  376. package/dist/primitives/branchPicker/BranchPickerRoot.js.map +1 -1
  377. package/dist/primitives/branchPicker/index.d.ts +6 -0
  378. package/dist/primitives/branchPicker/index.d.ts.map +1 -0
  379. package/dist/primitives/branchPicker/index.js +6 -5
  380. package/dist/primitives/branchPicker/index.js.map +1 -1
  381. package/dist/primitives/composer/ComposerAddAttachment.d.ts +17 -0
  382. package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -0
  383. package/dist/primitives/composer/ComposerAddAttachment.js +6 -4
  384. package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
  385. package/dist/primitives/composer/ComposerAttachments.d.ts +13 -0
  386. package/dist/primitives/composer/ComposerAttachments.d.ts.map +1 -0
  387. package/dist/primitives/composer/ComposerAttachments.js +11 -9
  388. package/dist/primitives/composer/ComposerAttachments.js.map +1 -1
  389. package/dist/primitives/composer/ComposerCancel.d.ts +11 -0
  390. package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -0
  391. package/dist/primitives/composer/ComposerCancel.js +6 -4
  392. package/dist/primitives/composer/ComposerCancel.js.map +1 -1
  393. package/dist/primitives/composer/ComposerIf.d.ts +12 -0
  394. package/dist/primitives/composer/ComposerIf.d.ts.map +1 -0
  395. package/dist/primitives/composer/ComposerIf.js +5 -3
  396. package/dist/primitives/composer/ComposerIf.js.map +1 -1
  397. package/dist/primitives/composer/ComposerInput.d.ts +21 -0
  398. package/dist/primitives/composer/ComposerInput.d.ts.map +1 -0
  399. package/dist/primitives/composer/ComposerInput.js +8 -6
  400. package/dist/primitives/composer/ComposerInput.js.map +1 -1
  401. package/dist/primitives/composer/ComposerRoot.d.ts +10 -0
  402. package/dist/primitives/composer/ComposerRoot.d.ts.map +1 -0
  403. package/dist/primitives/composer/ComposerRoot.js +5 -3
  404. package/dist/primitives/composer/ComposerRoot.js.map +1 -1
  405. package/dist/primitives/composer/ComposerSend.d.ts +10 -0
  406. package/dist/primitives/composer/ComposerSend.d.ts.map +1 -0
  407. package/dist/primitives/composer/ComposerSend.js +8 -6
  408. package/dist/primitives/composer/ComposerSend.js.map +1 -1
  409. package/dist/primitives/composer/index.d.ts +8 -0
  410. package/dist/primitives/composer/index.d.ts.map +1 -0
  411. package/dist/primitives/composer/index.js +8 -7
  412. package/dist/primitives/composer/index.js.map +1 -1
  413. package/dist/primitives/contentPart/ContentPartImage.d.ts +10 -0
  414. package/dist/primitives/contentPart/ContentPartImage.d.ts.map +1 -0
  415. package/dist/primitives/contentPart/ContentPartImage.js +5 -3
  416. package/dist/primitives/contentPart/ContentPartImage.js.map +1 -1
  417. package/dist/primitives/contentPart/ContentPartInProgress.d.ts +6 -0
  418. package/dist/primitives/contentPart/ContentPartInProgress.d.ts.map +1 -0
  419. package/dist/primitives/contentPart/ContentPartInProgress.js +4 -2
  420. package/dist/primitives/contentPart/ContentPartInProgress.js.map +1 -1
  421. package/dist/primitives/contentPart/ContentPartText.d.ts +16 -0
  422. package/dist/primitives/contentPart/ContentPartText.d.ts.map +1 -0
  423. package/dist/primitives/contentPart/ContentPartText.js +6 -4
  424. package/dist/primitives/contentPart/ContentPartText.js.map +1 -1
  425. package/dist/primitives/contentPart/index.d.ts +4 -0
  426. package/dist/primitives/contentPart/index.d.ts.map +1 -0
  427. package/dist/primitives/contentPart/index.js +4 -3
  428. package/dist/primitives/contentPart/index.js.map +1 -1
  429. package/dist/primitives/contentPart/useContentPartFile.d.ts +5 -0
  430. package/dist/primitives/contentPart/useContentPartFile.d.ts.map +1 -0
  431. package/dist/primitives/contentPart/useContentPartFile.js +4 -2
  432. package/dist/primitives/contentPart/useContentPartFile.js.map +1 -1
  433. package/dist/primitives/contentPart/useContentPartImage.d.ts +5 -0
  434. package/dist/primitives/contentPart/useContentPartImage.d.ts.map +1 -0
  435. package/dist/primitives/contentPart/useContentPartImage.js +4 -2
  436. package/dist/primitives/contentPart/useContentPartImage.js.map +1 -1
  437. package/dist/primitives/contentPart/useContentPartReasoning.d.ts +5 -0
  438. package/dist/primitives/contentPart/useContentPartReasoning.d.ts.map +1 -0
  439. package/dist/primitives/contentPart/useContentPartReasoning.js +4 -2
  440. package/dist/primitives/contentPart/useContentPartReasoning.js.map +1 -1
  441. package/dist/primitives/contentPart/useContentPartSource.d.ts +5 -0
  442. package/dist/primitives/contentPart/useContentPartSource.d.ts.map +1 -0
  443. package/dist/primitives/contentPart/useContentPartSource.js +4 -2
  444. package/dist/primitives/contentPart/useContentPartSource.js.map +1 -1
  445. package/dist/primitives/contentPart/useContentPartText.d.ts +7 -0
  446. package/dist/primitives/contentPart/useContentPartText.d.ts.map +1 -0
  447. package/dist/primitives/contentPart/useContentPartText.js +4 -2
  448. package/dist/primitives/contentPart/useContentPartText.js.map +1 -1
  449. package/dist/primitives/index.d.ts +17 -0
  450. package/dist/primitives/index.d.ts.map +1 -0
  451. package/dist/primitives/index.js +17 -16
  452. package/dist/primitives/index.js.map +1 -1
  453. package/dist/primitives/message/MessageAttachments.d.ts +13 -0
  454. package/dist/primitives/message/MessageAttachments.d.ts.map +1 -0
  455. package/dist/primitives/message/MessageAttachments.js +11 -9
  456. package/dist/primitives/message/MessageAttachments.js.map +1 -1
  457. package/dist/primitives/message/MessageContent.d.ts +23 -0
  458. package/dist/primitives/message/MessageContent.d.ts.map +1 -0
  459. package/dist/primitives/message/MessageContent.js +19 -17
  460. package/dist/primitives/message/MessageContent.js.map +1 -1
  461. package/dist/primitives/message/MessageIf.d.ts +21 -0
  462. package/dist/primitives/message/MessageIf.d.ts.map +1 -0
  463. package/dist/primitives/message/MessageIf.js +6 -4
  464. package/dist/primitives/message/MessageIf.js.map +1 -1
  465. package/dist/primitives/message/MessageRoot.d.ts +10 -0
  466. package/dist/primitives/message/MessageRoot.d.ts.map +1 -0
  467. package/dist/primitives/message/MessageRoot.js +7 -5
  468. package/dist/primitives/message/MessageRoot.js.map +1 -1
  469. package/dist/primitives/message/index.d.ts +5 -0
  470. package/dist/primitives/message/index.d.ts.map +1 -0
  471. package/dist/primitives/message/index.js +5 -4
  472. package/dist/primitives/message/index.js.map +1 -1
  473. package/dist/primitives/thread/ThreadEmpty.d.ts +6 -0
  474. package/dist/primitives/thread/ThreadEmpty.d.ts.map +1 -0
  475. package/dist/primitives/thread/ThreadEmpty.js +4 -2
  476. package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
  477. package/dist/primitives/thread/ThreadIf.d.ts +14 -0
  478. package/dist/primitives/thread/ThreadIf.d.ts.map +1 -0
  479. package/dist/primitives/thread/ThreadIf.js +5 -3
  480. package/dist/primitives/thread/ThreadIf.js.map +1 -1
  481. package/dist/primitives/thread/ThreadMessages.d.ts +27 -0
  482. package/dist/primitives/thread/ThreadMessages.d.ts.map +1 -0
  483. package/dist/primitives/thread/ThreadMessages.js +14 -12
  484. package/dist/primitives/thread/ThreadMessages.js.map +1 -1
  485. package/dist/primitives/thread/ThreadRoot.d.ts +10 -0
  486. package/dist/primitives/thread/ThreadRoot.d.ts.map +1 -0
  487. package/dist/primitives/thread/ThreadRoot.js +3 -2
  488. package/dist/primitives/thread/ThreadRoot.js.map +1 -1
  489. package/dist/primitives/thread/ThreadScrollToBottom.d.ts +11 -0
  490. package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -0
  491. package/dist/primitives/thread/ThreadScrollToBottom.js +6 -4
  492. package/dist/primitives/thread/ThreadScrollToBottom.js.map +1 -1
  493. package/dist/primitives/thread/ThreadSuggestion.d.ts +19 -0
  494. package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -0
  495. package/dist/primitives/thread/ThreadSuggestion.js +7 -5
  496. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  497. package/dist/primitives/thread/ThreadViewport.d.ts +14 -0
  498. package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -0
  499. package/dist/primitives/thread/ThreadViewport.js +7 -5
  500. package/dist/primitives/thread/ThreadViewport.js.map +1 -1
  501. package/dist/primitives/thread/index.d.ts +8 -0
  502. package/dist/primitives/thread/index.d.ts.map +1 -0
  503. package/dist/primitives/thread/index.js +8 -7
  504. package/dist/primitives/thread/index.js.map +1 -1
  505. package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts +8 -0
  506. package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts.map +1 -0
  507. package/dist/primitives/thread/useThreadViewportAutoScroll.js +9 -7
  508. package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -1
  509. package/dist/primitives/threadList/ThreadListItems.d.ts +11 -0
  510. package/dist/primitives/threadList/ThreadListItems.d.ts.map +1 -0
  511. package/dist/primitives/threadList/ThreadListItems.js +8 -6
  512. package/dist/primitives/threadList/ThreadListItems.js.map +1 -1
  513. package/dist/primitives/threadList/ThreadListNew.d.ts +11 -0
  514. package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -0
  515. package/dist/primitives/threadList/ThreadListNew.js +6 -4
  516. package/dist/primitives/threadList/ThreadListNew.js.map +1 -1
  517. package/dist/primitives/threadList/ThreadListRoot.d.ts +12 -0
  518. package/dist/primitives/threadList/ThreadListRoot.d.ts.map +1 -0
  519. package/dist/primitives/threadList/ThreadListRoot.js +3 -2
  520. package/dist/primitives/threadList/ThreadListRoot.js.map +1 -1
  521. package/dist/primitives/threadList/index.d.ts +4 -0
  522. package/dist/primitives/threadList/index.d.ts.map +1 -0
  523. package/dist/primitives/threadList/index.js +4 -3
  524. package/dist/primitives/threadList/index.js.map +1 -1
  525. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts +11 -0
  526. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts.map +1 -0
  527. package/dist/primitives/threadListItem/ThreadListItemArchive.js +6 -4
  528. package/dist/primitives/threadListItem/ThreadListItemArchive.js.map +1 -1
  529. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts +11 -0
  530. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -0
  531. package/dist/primitives/threadListItem/ThreadListItemDelete.js +6 -4
  532. package/dist/primitives/threadListItem/ThreadListItemDelete.js.map +1 -1
  533. package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts +12 -0
  534. package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -0
  535. package/dist/primitives/threadListItem/ThreadListItemRoot.js +5 -3
  536. package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -1
  537. package/dist/primitives/threadListItem/ThreadListItemTitle.d.ts +8 -0
  538. package/dist/primitives/threadListItem/ThreadListItemTitle.d.ts.map +1 -0
  539. package/dist/primitives/threadListItem/ThreadListItemTitle.js +4 -2
  540. package/dist/primitives/threadListItem/ThreadListItemTitle.js.map +1 -1
  541. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts +11 -0
  542. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -0
  543. package/dist/primitives/threadListItem/ThreadListItemTrigger.js +6 -4
  544. package/dist/primitives/threadListItem/ThreadListItemTrigger.js.map +1 -1
  545. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts +11 -0
  546. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -0
  547. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js +6 -4
  548. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js.map +1 -1
  549. package/dist/primitives/threadListItem/index.d.ts +7 -0
  550. package/dist/primitives/threadListItem/index.d.ts.map +1 -0
  551. package/dist/primitives/threadListItem/index.js +7 -6
  552. package/dist/primitives/threadListItem/index.js.map +1 -1
  553. package/dist/runtimes/adapters/RuntimeAdapterProvider.d.ts +17 -0
  554. package/dist/runtimes/adapters/RuntimeAdapterProvider.d.ts.map +1 -0
  555. package/dist/runtimes/adapters/RuntimeAdapterProvider.js +5 -4
  556. package/dist/runtimes/adapters/RuntimeAdapterProvider.js.map +1 -1
  557. package/dist/runtimes/adapters/attachment/AttachmentAdapter.d.ts +10 -0
  558. package/dist/runtimes/adapters/attachment/AttachmentAdapter.d.ts.map +1 -0
  559. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.d.ts +13 -0
  560. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.d.ts.map +1 -0
  561. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.js +3 -2
  562. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.js.map +1 -1
  563. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.d.ts +11 -0
  564. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.d.ts.map +1 -0
  565. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.js +4 -3
  566. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.js.map +1 -1
  567. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.d.ts +11 -0
  568. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.d.ts.map +1 -0
  569. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.js +4 -3
  570. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.js.map +1 -1
  571. package/dist/runtimes/adapters/attachment/index.d.ts +5 -0
  572. package/dist/runtimes/adapters/attachment/index.d.ts.map +1 -0
  573. package/dist/runtimes/adapters/attachment/index.js +4 -3
  574. package/dist/runtimes/adapters/attachment/index.js.map +1 -1
  575. package/dist/runtimes/adapters/feedback/FeedbackAdapter.d.ts +10 -0
  576. package/dist/runtimes/adapters/feedback/FeedbackAdapter.d.ts.map +1 -0
  577. package/dist/runtimes/adapters/feedback/index.d.ts +2 -0
  578. package/dist/runtimes/adapters/feedback/index.d.ts.map +1 -0
  579. package/dist/runtimes/adapters/index.d.ts +5 -0
  580. package/dist/runtimes/adapters/index.d.ts.map +1 -0
  581. package/dist/runtimes/adapters/index.js +5 -4
  582. package/dist/runtimes/adapters/index.js.map +1 -1
  583. package/dist/runtimes/adapters/speech/SpeechAdapterTypes.d.ts +41 -0
  584. package/dist/runtimes/adapters/speech/SpeechAdapterTypes.d.ts.map +1 -0
  585. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.d.ts +5 -0
  586. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.d.ts.map +1 -0
  587. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.js +3 -2
  588. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.js.map +1 -1
  589. package/dist/runtimes/adapters/speech/index.d.ts +3 -0
  590. package/dist/runtimes/adapters/speech/index.d.ts.map +1 -0
  591. package/dist/runtimes/adapters/speech/index.js +2 -1
  592. package/dist/runtimes/adapters/speech/index.js.map +1 -1
  593. package/dist/runtimes/adapters/suggestion/SuggestionAdapter.d.ts +10 -0
  594. package/dist/runtimes/adapters/suggestion/SuggestionAdapter.d.ts.map +1 -0
  595. package/dist/runtimes/adapters/suggestion/index.d.ts +2 -0
  596. package/dist/runtimes/adapters/suggestion/index.d.ts.map +1 -0
  597. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.d.ts +10 -0
  598. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.d.ts.map +1 -0
  599. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts +39 -0
  600. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts.map +1 -0
  601. package/dist/runtimes/composer/BaseComposerRuntimeCore.js +5 -4
  602. package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
  603. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.d.ts +25 -0
  604. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.d.ts.map +1 -0
  605. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js +5 -4
  606. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js.map +1 -1
  607. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.d.ts +21 -0
  608. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.d.ts.map +1 -0
  609. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js +4 -3
  610. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js.map +1 -1
  611. package/dist/runtimes/core/AssistantRuntimeCore.d.ts +16 -0
  612. package/dist/runtimes/core/AssistantRuntimeCore.d.ts.map +1 -0
  613. package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts +11 -0
  614. package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts.map +1 -0
  615. package/dist/runtimes/core/BaseAssistantRuntimeCore.js +4 -3
  616. package/dist/runtimes/core/BaseAssistantRuntimeCore.js.map +1 -1
  617. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +60 -0
  618. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -0
  619. package/dist/runtimes/core/BaseThreadRuntimeCore.js +7 -6
  620. package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
  621. package/dist/runtimes/core/ComposerRuntimeCore.d.ts +28 -0
  622. package/dist/runtimes/core/ComposerRuntimeCore.d.ts.map +1 -0
  623. package/dist/runtimes/core/ThreadListRuntimeCore.d.ts +34 -0
  624. package/dist/runtimes/core/ThreadListRuntimeCore.d.ts.map +1 -0
  625. package/dist/runtimes/core/ThreadRuntimeCore.d.ts +79 -0
  626. package/dist/runtimes/core/ThreadRuntimeCore.d.ts.map +1 -0
  627. package/dist/runtimes/core/index.d.ts +2 -0
  628. package/dist/runtimes/core/index.d.ts.map +1 -0
  629. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts +64 -0
  630. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts.map +1 -0
  631. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts +9 -0
  632. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts.map +1 -0
  633. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +7 -6
  634. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
  635. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts +35 -0
  636. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts.map +1 -0
  637. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js +8 -7
  638. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js.map +1 -1
  639. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts +36 -0
  640. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -0
  641. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +11 -10
  642. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
  643. package/dist/runtimes/external-store/ThreadMessageConverter.d.ts +7 -0
  644. package/dist/runtimes/external-store/ThreadMessageConverter.d.ts.map +1 -0
  645. package/dist/runtimes/external-store/ThreadMessageConverter.js +3 -2
  646. package/dist/runtimes/external-store/ThreadMessageConverter.js.map +1 -1
  647. package/dist/runtimes/external-store/ThreadMessageLike.d.ts +28 -0
  648. package/dist/runtimes/external-store/ThreadMessageLike.d.ts.map +1 -0
  649. package/dist/runtimes/external-store/ThreadMessageLike.js +3 -2
  650. package/dist/runtimes/external-store/ThreadMessageLike.js.map +1 -1
  651. package/dist/runtimes/external-store/auto-status.d.ts +9 -0
  652. package/dist/runtimes/external-store/auto-status.d.ts.map +1 -0
  653. package/dist/runtimes/external-store/auto-status.js +5 -4
  654. package/dist/runtimes/external-store/auto-status.js.map +1 -1
  655. package/dist/runtimes/external-store/createMessageConverter.d.ts +16 -0
  656. package/dist/runtimes/external-store/createMessageConverter.d.ts.map +1 -0
  657. package/dist/runtimes/external-store/createMessageConverter.js +6 -4
  658. package/dist/runtimes/external-store/createMessageConverter.js.map +1 -1
  659. package/dist/runtimes/external-store/external-message-converter.d.ts +22 -0
  660. package/dist/runtimes/external-store/external-message-converter.d.ts.map +1 -0
  661. package/dist/runtimes/external-store/external-message-converter.js +11 -9
  662. package/dist/runtimes/external-store/external-message-converter.js.map +1 -1
  663. package/dist/runtimes/external-store/getExternalStoreMessage.d.ts +9 -0
  664. package/dist/runtimes/external-store/getExternalStoreMessage.d.ts.map +1 -0
  665. package/dist/runtimes/external-store/getExternalStoreMessage.js +6 -5
  666. package/dist/runtimes/external-store/getExternalStoreMessage.js.map +1 -1
  667. package/dist/runtimes/external-store/index.d.ts +7 -0
  668. package/dist/runtimes/external-store/index.d.ts.map +1 -0
  669. package/dist/runtimes/external-store/index.js +5 -4
  670. package/dist/runtimes/external-store/index.js.map +1 -1
  671. package/dist/runtimes/external-store/useExternalStoreRuntime.d.ts +4 -0
  672. package/dist/runtimes/external-store/useExternalStoreRuntime.d.ts.map +1 -0
  673. package/dist/runtimes/external-store/useExternalStoreRuntime.js +8 -4
  674. package/dist/runtimes/external-store/useExternalStoreRuntime.js.map +1 -1
  675. package/dist/runtimes/index.d.ts +7 -0
  676. package/dist/runtimes/index.d.ts.map +1 -0
  677. package/dist/runtimes/index.js +7 -6
  678. package/dist/runtimes/index.js.map +1 -1
  679. package/dist/runtimes/local/ChatModelAdapter.d.ts +36 -0
  680. package/dist/runtimes/local/ChatModelAdapter.d.ts.map +1 -0
  681. package/dist/runtimes/local/LocalRuntimeCore.d.ts +11 -0
  682. package/dist/runtimes/local/LocalRuntimeCore.d.ts.map +1 -0
  683. package/dist/runtimes/local/LocalRuntimeCore.js +7 -6
  684. package/dist/runtimes/local/LocalRuntimeCore.js.map +1 -1
  685. package/dist/runtimes/local/LocalRuntimeOptions.d.ts +46 -0
  686. package/dist/runtimes/local/LocalRuntimeOptions.d.ts.map +1 -0
  687. package/dist/runtimes/local/LocalRuntimeOptions.js +2 -1
  688. package/dist/runtimes/local/LocalRuntimeOptions.js.map +1 -1
  689. package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts +32 -0
  690. package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts.map +1 -0
  691. package/dist/runtimes/local/LocalThreadListRuntimeCore.js +5 -4
  692. package/dist/runtimes/local/LocalThreadListRuntimeCore.js.map +1 -1
  693. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts +45 -0
  694. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts.map +1 -0
  695. package/dist/runtimes/local/LocalThreadRuntimeCore.js +6 -5
  696. package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
  697. package/dist/runtimes/local/index.d.ts +4 -0
  698. package/dist/runtimes/local/index.d.ts.map +1 -0
  699. package/dist/runtimes/local/index.js +2 -1
  700. package/dist/runtimes/local/index.js.map +1 -1
  701. package/dist/runtimes/local/shouldContinue.d.ts +3 -0
  702. package/dist/runtimes/local/shouldContinue.d.ts.map +1 -0
  703. package/dist/runtimes/local/shouldContinue.js +2 -1
  704. package/dist/runtimes/local/shouldContinue.js.map +1 -1
  705. package/dist/runtimes/local/useLocalRuntime.d.ts +5 -0
  706. package/dist/runtimes/local/useLocalRuntime.d.ts.map +1 -0
  707. package/dist/runtimes/local/useLocalRuntime.js +9 -7
  708. package/dist/runtimes/local/useLocalRuntime.js.map +1 -1
  709. package/dist/runtimes/remote-thread-list/BaseSubscribable.d.ts +8 -0
  710. package/dist/runtimes/remote-thread-list/BaseSubscribable.d.ts.map +1 -0
  711. package/dist/runtimes/remote-thread-list/BaseSubscribable.js +3 -2
  712. package/dist/runtimes/remote-thread-list/BaseSubscribable.js.map +1 -1
  713. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.d.ts +3 -0
  714. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.d.ts.map +1 -0
  715. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js +3 -2
  716. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js.map +1 -1
  717. package/dist/runtimes/remote-thread-list/OptimisticState.d.ts +23 -0
  718. package/dist/runtimes/remote-thread-list/OptimisticState.d.ts.map +1 -0
  719. package/dist/runtimes/remote-thread-list/OptimisticState.js +5 -4
  720. package/dist/runtimes/remote-thread-list/OptimisticState.js.map +1 -1
  721. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts +81 -0
  722. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts.map +1 -0
  723. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js +9 -7
  724. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js.map +1 -1
  725. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts +119 -0
  726. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -0
  727. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js +13 -11
  728. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
  729. package/dist/runtimes/remote-thread-list/adapter/cloud.d.ts +13 -0
  730. package/dist/runtimes/remote-thread-list/adapter/cloud.d.ts.map +1 -0
  731. package/dist/runtimes/remote-thread-list/adapter/cloud.js +9 -8
  732. package/dist/runtimes/remote-thread-list/adapter/cloud.js.map +1 -1
  733. package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts +12 -0
  734. package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts.map +1 -0
  735. package/dist/runtimes/remote-thread-list/adapter/in-memory.js +3 -2
  736. package/dist/runtimes/remote-thread-list/adapter/in-memory.js.map +1 -1
  737. package/dist/runtimes/remote-thread-list/index.d.ts +4 -0
  738. package/dist/runtimes/remote-thread-list/index.d.ts.map +1 -0
  739. package/dist/runtimes/remote-thread-list/index.js +3 -2
  740. package/dist/runtimes/remote-thread-list/index.js.map +1 -1
  741. package/dist/runtimes/remote-thread-list/types.d.ts +32 -0
  742. package/dist/runtimes/remote-thread-list/types.d.ts.map +1 -0
  743. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.d.ts +4 -0
  744. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.d.ts.map +1 -0
  745. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.js +8 -6
  746. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.js.map +1 -1
  747. package/dist/runtimes/utils/MessageRepository.d.ts +151 -0
  748. package/dist/runtimes/utils/MessageRepository.d.ts.map +1 -0
  749. package/dist/runtimes/utils/MessageRepository.js +10 -9
  750. package/dist/runtimes/utils/MessageRepository.js.map +1 -1
  751. package/dist/tests/setup.d.ts +2 -0
  752. package/dist/tests/setup.d.ts.map +1 -0
  753. package/dist/tests/setup.js +2971 -3
  754. package/dist/tests/setup.js.map +1 -1
  755. package/dist/types/AssistantTypes.d.ts +132 -0
  756. package/dist/types/AssistantTypes.d.ts.map +1 -0
  757. package/dist/types/AttachmentTypes.d.ts +35 -0
  758. package/dist/types/AttachmentTypes.d.ts.map +1 -0
  759. package/dist/types/ContentPartComponentTypes.d.ts +24 -0
  760. package/dist/types/ContentPartComponentTypes.d.ts.map +1 -0
  761. package/dist/types/Unsubscribe.d.ts +2 -0
  762. package/dist/types/Unsubscribe.d.ts.map +1 -0
  763. package/dist/types/index.d.ts +5 -0
  764. package/dist/types/index.d.ts.map +1 -0
  765. package/dist/utils/CompositeContextProvider.d.ts +10 -0
  766. package/dist/utils/CompositeContextProvider.d.ts.map +1 -0
  767. package/dist/utils/CompositeContextProvider.js +4 -3
  768. package/dist/utils/CompositeContextProvider.js.map +1 -1
  769. package/dist/utils/RequireAtLeastOne.d.ts +4 -0
  770. package/dist/utils/RequireAtLeastOne.d.ts.map +1 -0
  771. package/dist/utils/combined/createCombinedStore.d.ts +8 -0
  772. package/dist/utils/combined/createCombinedStore.d.ts.map +1 -0
  773. package/dist/utils/combined/createCombinedStore.js +3 -1
  774. package/dist/utils/combined/createCombinedStore.js.map +1 -1
  775. package/dist/utils/combined/useCombinedStore.d.ts +3 -0
  776. package/dist/utils/combined/useCombinedStore.d.ts.map +1 -0
  777. package/dist/utils/combined/useCombinedStore.js +4 -2
  778. package/dist/utils/combined/useCombinedStore.js.map +1 -1
  779. package/dist/utils/createActionButton.d.ts +11 -0
  780. package/dist/utils/createActionButton.d.ts.map +1 -0
  781. package/dist/utils/createActionButton.js +3 -2
  782. package/dist/utils/createActionButton.js.map +1 -1
  783. package/dist/utils/getThreadMessageText.d.ts +3 -0
  784. package/dist/utils/getThreadMessageText.d.ts.map +1 -0
  785. package/dist/utils/getThreadMessageText.js +2 -1
  786. package/dist/utils/getThreadMessageText.js.map +1 -1
  787. package/dist/utils/hooks/useManagedRef.d.ts +2 -0
  788. package/dist/utils/hooks/useManagedRef.d.ts.map +1 -0
  789. package/dist/utils/hooks/useManagedRef.js +2 -1
  790. package/dist/utils/hooks/useManagedRef.js.map +1 -1
  791. package/dist/utils/hooks/useOnResizeContent.d.ts +2 -0
  792. package/dist/utils/hooks/useOnResizeContent.d.ts.map +1 -0
  793. package/dist/utils/hooks/useOnResizeContent.js +3 -2
  794. package/dist/utils/hooks/useOnResizeContent.js.map +1 -1
  795. package/dist/utils/hooks/useOnScrollToBottom.d.ts +2 -0
  796. package/dist/utils/hooks/useOnScrollToBottom.d.ts.map +1 -0
  797. package/dist/utils/hooks/useOnScrollToBottom.js +4 -2
  798. package/dist/utils/hooks/useOnScrollToBottom.js.map +1 -1
  799. package/dist/utils/idUtils.d.ts +4 -0
  800. package/dist/utils/idUtils.d.ts.map +1 -0
  801. package/dist/utils/idUtils.js +5 -4
  802. package/dist/utils/idUtils.js.map +1 -1
  803. package/dist/utils/json/is-json.d.ts +5 -0
  804. package/dist/utils/json/is-json.d.ts.map +1 -0
  805. package/dist/utils/json/is-json.js +1 -0
  806. package/dist/utils/json/is-json.js.map +1 -1
  807. package/dist/utils/json/json-value.d.ts +6 -0
  808. package/dist/utils/json/json-value.d.ts.map +1 -0
  809. package/dist/utils/smooth/SmoothContext.d.ts +87 -0
  810. package/dist/utils/smooth/SmoothContext.d.ts.map +1 -0
  811. package/dist/utils/smooth/SmoothContext.js +10 -8
  812. package/dist/utils/smooth/SmoothContext.js.map +1 -1
  813. package/dist/utils/smooth/index.d.ts +3 -0
  814. package/dist/utils/smooth/index.d.ts.map +1 -0
  815. package/dist/utils/smooth/index.js +4 -2
  816. package/dist/utils/smooth/index.js.map +1 -1
  817. package/dist/utils/smooth/useSmooth.d.ts +4 -0
  818. package/dist/utils/smooth/useSmooth.d.ts.map +1 -0
  819. package/dist/utils/smooth/useSmooth.js +9 -7
  820. package/dist/utils/smooth/useSmooth.js.map +1 -1
  821. package/dist/utils/useToolArgsFieldStatus.d.ts +12 -0
  822. package/dist/utils/useToolArgsFieldStatus.d.ts.map +1 -0
  823. package/dist/utils/useToolArgsFieldStatus.js +4 -3
  824. package/dist/utils/useToolArgsFieldStatus.js.map +1 -1
  825. package/package.json +3 -18
  826. package/src/runtimes/external-store/useExternalStoreRuntime.tsx +7 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/composer/BaseComposerRuntimeCore.tsx"],"sourcesContent":["import {\n Attachment,\n CompleteAttachment,\n PendingAttachment,\n} from \"../../types/AttachmentTypes\";\nimport { AppendMessage } from \"../../types\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport {\n ComposerRuntimeCore,\n ComposerRuntimeEventType,\n} from \"../core/ComposerRuntimeCore\";\nimport { MessageRole, RunConfig } from \"../../types/AssistantTypes\";\nimport { BaseSubscribable } from \"../remote-thread-list/BaseSubscribable\";\n\nconst isAttachmentComplete = (a: Attachment): a is CompleteAttachment =>\n a.status.type === \"complete\";\n\nexport abstract class BaseComposerRuntimeCore\n extends BaseSubscribable\n implements ComposerRuntimeCore\n{\n public readonly isEditing = true;\n\n protected abstract getAttachmentAdapter(): AttachmentAdapter | undefined;\n\n public getAttachmentAccept(): string {\n return this.getAttachmentAdapter()?.accept ?? \"*\";\n }\n\n private _attachments: readonly Attachment[] = [];\n public get attachments() {\n return this._attachments;\n }\n\n protected setAttachments(value: readonly Attachment[]) {\n this._attachments = value;\n this._notifySubscribers();\n }\n\n public abstract get canCancel(): boolean;\n\n public get isEmpty() {\n return !this.text.trim() && !this.attachments.length;\n }\n\n private _text = \"\";\n\n get text() {\n return this._text;\n }\n\n private _role: MessageRole = \"user\";\n\n get role() {\n return this._role;\n }\n\n private _runConfig: RunConfig = {};\n\n get runConfig() {\n return this._runConfig;\n }\n\n public setText(value: string) {\n if (this._text === value) return;\n\n this._text = value;\n this._notifySubscribers();\n }\n\n public setRole(role: MessageRole) {\n if (this._role === role) return;\n\n this._role = role;\n this._notifySubscribers();\n }\n\n public setRunConfig(runConfig: RunConfig) {\n if (this._runConfig === runConfig) return;\n\n this._runConfig = runConfig;\n this._notifySubscribers();\n }\n\n private _emptyTextAndAttachments() {\n this._attachments = [];\n this._text = \"\";\n this._notifySubscribers();\n }\n\n private async _onClearAttachments() {\n const adapter = this.getAttachmentAdapter();\n if (adapter) {\n await Promise.all(this._attachments.map((a) => adapter.remove(a)));\n }\n }\n\n public async reset() {\n if (\n this._attachments.length === 0 &&\n this._text === \"\" &&\n this._role === \"user\" &&\n Object.keys(this._runConfig).length === 0\n ) {\n return;\n }\n\n this._role = \"user\";\n this._runConfig = {};\n\n const task = this._onClearAttachments();\n this._emptyTextAndAttachments();\n await task;\n }\n\n public async clearAttachments() {\n const task = this._onClearAttachments();\n this.setAttachments([]);\n\n await task;\n }\n\n public async send() {\n const adapter = this.getAttachmentAdapter();\n const attachments =\n adapter && this.attachments.length > 0\n ? await Promise.all(\n this.attachments.map(async (a) => {\n if (isAttachmentComplete(a)) return a;\n const result = await adapter.send(a);\n return result as CompleteAttachment;\n }),\n )\n : [];\n\n const message: Omit<AppendMessage, \"parentId\" | \"sourceId\"> = {\n createdAt: new Date(),\n role: this.role,\n content: this.text ? [{ type: \"text\", text: this.text }] : [],\n attachments,\n runConfig: this.runConfig,\n metadata: { custom: {} },\n };\n this._emptyTextAndAttachments();\n\n this.handleSend(message);\n this._notifyEventSubscribers(\"send\");\n }\n\n public cancel() {\n this.handleCancel();\n }\n\n protected abstract handleSend(\n message: Omit<AppendMessage, \"parentId\" | \"sourceId\">,\n ): void;\n protected abstract handleCancel(): void;\n\n async addAttachment(file: File) {\n const adapter = this.getAttachmentAdapter();\n if (!adapter) throw new Error(\"Attachments are not supported\");\n\n const upsertAttachment = (a: PendingAttachment) => {\n const idx = this._attachments.findIndex(\n (attachment) => attachment.id === a.id,\n );\n if (idx !== -1)\n this._attachments = [\n ...this._attachments.slice(0, idx),\n a,\n ...this._attachments.slice(idx + 1),\n ];\n else {\n this._attachments = [...this._attachments, a];\n this._notifyEventSubscribers(\"attachment_add\");\n }\n\n this._notifySubscribers();\n };\n\n const promiseOrGenerator = adapter.add({ file });\n if (Symbol.asyncIterator in promiseOrGenerator) {\n for await (const r of promiseOrGenerator) {\n upsertAttachment(r);\n }\n } else {\n upsertAttachment(await promiseOrGenerator);\n }\n\n this._notifyEventSubscribers(\"attachment_add\");\n this._notifySubscribers();\n }\n\n async removeAttachment(attachmentId: string) {\n const adapter = this.getAttachmentAdapter();\n if (!adapter) throw new Error(\"Attachments are not supported\");\n\n const index = this._attachments.findIndex((a) => a.id === attachmentId);\n if (index === -1) throw new Error(\"Attachment not found\");\n const attachment = this._attachments[index]!;\n\n await adapter.remove(attachment);\n\n // this._attachments.toSpliced(index, 1); - not yet widely supported\n this._attachments = [\n ...this._attachments.slice(0, index),\n ...this._attachments.slice(index + 1),\n ];\n this._notifySubscribers();\n }\n\n private _eventSubscribers = new Map<\n ComposerRuntimeEventType,\n Set<() => void>\n >();\n\n protected _notifyEventSubscribers(event: ComposerRuntimeEventType) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n\n for (const callback of subscribers) callback();\n }\n\n public unstable_on(event: ComposerRuntimeEventType, callback: () => void) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) {\n this._eventSubscribers.set(event, new Set([callback]));\n } else {\n subscribers.add(callback);\n }\n\n return () => {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n subscribers.delete(callback);\n };\n }\n}\n"],"mappings":"AAYA,SAAS,wBAAwB;AAEjC,MAAM,uBAAuB,CAAC,MAC5B,EAAE,OAAO,SAAS;AAEb,MAAe,gCACZ,iBAEV;AAAA,EACkB,YAAY;AAAA,EAIrB,sBAA8B;AACnC,WAAO,KAAK,qBAAqB,GAAG,UAAU;AAAA,EAChD;AAAA,EAEQ,eAAsC,CAAC;AAAA,EAC/C,IAAW,cAAc;AACvB,WAAO,KAAK;AAAA,EACd;AAAA,EAEU,eAAe,OAA8B;AACrD,SAAK,eAAe;AACpB,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAIA,IAAW,UAAU;AACnB,WAAO,CAAC,KAAK,KAAK,KAAK,KAAK,CAAC,KAAK,YAAY;AAAA,EAChD;AAAA,EAEQ,QAAQ;AAAA,EAEhB,IAAI,OAAO;AACT,WAAO,KAAK;AAAA,EACd;AAAA,EAEQ,QAAqB;AAAA,EAE7B,IAAI,OAAO;AACT,WAAO,KAAK;AAAA,EACd;AAAA,EAEQ,aAAwB,CAAC;AAAA,EAEjC,IAAI,YAAY;AACd,WAAO,KAAK;AAAA,EACd;AAAA,EAEO,QAAQ,OAAe;AAC5B,QAAI,KAAK,UAAU,MAAO;AAE1B,SAAK,QAAQ;AACb,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEO,QAAQ,MAAmB;AAChC,QAAI,KAAK,UAAU,KAAM;AAEzB,SAAK,QAAQ;AACb,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEO,aAAa,WAAsB;AACxC,QAAI,KAAK,eAAe,UAAW;AAEnC,SAAK,aAAa;AAClB,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEQ,2BAA2B;AACjC,SAAK,eAAe,CAAC;AACrB,SAAK,QAAQ;AACb,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEA,MAAc,sBAAsB;AAClC,UAAM,UAAU,KAAK,qBAAqB;AAC1C,QAAI,SAAS;AACX,YAAM,QAAQ,IAAI,KAAK,aAAa,IAAI,CAAC,MAAM,QAAQ,OAAO,CAAC,CAAC,CAAC;AAAA,IACnE;AAAA,EACF;AAAA,EAEA,MAAa,QAAQ;AACnB,QACE,KAAK,aAAa,WAAW,KAC7B,KAAK,UAAU,MACf,KAAK,UAAU,UACf,OAAO,KAAK,KAAK,UAAU,EAAE,WAAW,GACxC;AACA;AAAA,IACF;AAEA,SAAK,QAAQ;AACb,SAAK,aAAa,CAAC;AAEnB,UAAM,OAAO,KAAK,oBAAoB;AACtC,SAAK,yBAAyB;AAC9B,UAAM;AAAA,EACR;AAAA,EAEA,MAAa,mBAAmB;AAC9B,UAAM,OAAO,KAAK,oBAAoB;AACtC,SAAK,eAAe,CAAC,CAAC;AAEtB,UAAM;AAAA,EACR;AAAA,EAEA,MAAa,OAAO;AAClB,UAAM,UAAU,KAAK,qBAAqB;AAC1C,UAAM,cACJ,WAAW,KAAK,YAAY,SAAS,IACjC,MAAM,QAAQ;AAAA,MACZ,KAAK,YAAY,IAAI,OAAO,MAAM;AAChC,YAAI,qBAAqB,CAAC,EAAG,QAAO;AACpC,cAAM,SAAS,MAAM,QAAQ,KAAK,CAAC;AACnC,eAAO;AAAA,MACT,CAAC;AAAA,IACH,IACA,CAAC;AAEP,UAAM,UAAwD;AAAA,MAC5D,WAAW,oBAAI,KAAK;AAAA,MACpB,MAAM,KAAK;AAAA,MACX,SAAS,KAAK,OAAO,CAAC,EAAE,MAAM,QAAQ,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC;AAAA,MAC5D;AAAA,MACA,WAAW,KAAK;AAAA,MAChB,UAAU,EAAE,QAAQ,CAAC,EAAE;AAAA,IACzB;AACA,SAAK,yBAAyB;AAE9B,SAAK,WAAW,OAAO;AACvB,SAAK,wBAAwB,MAAM;AAAA,EACrC;AAAA,EAEO,SAAS;AACd,SAAK,aAAa;AAAA,EACpB;AAAA,EAOA,MAAM,cAAc,MAAY;AAC9B,UAAM,UAAU,KAAK,qBAAqB;AAC1C,QAAI,CAAC,QAAS,OAAM,IAAI,MAAM,+BAA+B;AAE7D,UAAM,mBAAmB,CAAC,MAAyB;AACjD,YAAM,MAAM,KAAK,aAAa;AAAA,QAC5B,CAAC,eAAe,WAAW,OAAO,EAAE;AAAA,MACtC;AACA,UAAI,QAAQ;AACV,aAAK,eAAe;AAAA,UAClB,GAAG,KAAK,aAAa,MAAM,GAAG,GAAG;AAAA,UACjC;AAAA,UACA,GAAG,KAAK,aAAa,MAAM,MAAM,CAAC;AAAA,QACpC;AAAA,WACG;AACH,aAAK,eAAe,CAAC,GAAG,KAAK,cAAc,CAAC;AAC5C,aAAK,wBAAwB,gBAAgB;AAAA,MAC/C;AAEA,WAAK,mBAAmB;AAAA,IAC1B;AAEA,UAAM,qBAAqB,QAAQ,IAAI,EAAE,KAAK,CAAC;AAC/C,QAAI,OAAO,iBAAiB,oBAAoB;AAC9C,uBAAiB,KAAK,oBAAoB;AACxC,yBAAiB,CAAC;AAAA,MACpB;AAAA,IACF,OAAO;AACL,uBAAiB,MAAM,kBAAkB;AAAA,IAC3C;AAEA,SAAK,wBAAwB,gBAAgB;AAC7C,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEA,MAAM,iBAAiB,cAAsB;AAC3C,UAAM,UAAU,KAAK,qBAAqB;AAC1C,QAAI,CAAC,QAAS,OAAM,IAAI,MAAM,+BAA+B;AAE7D,UAAM,QAAQ,KAAK,aAAa,UAAU,CAAC,MAAM,EAAE,OAAO,YAAY;AACtE,QAAI,UAAU,GAAI,OAAM,IAAI,MAAM,sBAAsB;AACxD,UAAM,aAAa,KAAK,aAAa,KAAK;AAE1C,UAAM,QAAQ,OAAO,UAAU;AAG/B,SAAK,eAAe;AAAA,MAClB,GAAG,KAAK,aAAa,MAAM,GAAG,KAAK;AAAA,MACnC,GAAG,KAAK,aAAa,MAAM,QAAQ,CAAC;AAAA,IACtC;AACA,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEQ,oBAAoB,oBAAI,IAG9B;AAAA,EAEQ,wBAAwB,OAAiC;AACjE,UAAM,cAAc,KAAK,kBAAkB,IAAI,KAAK;AACpD,QAAI,CAAC,YAAa;AAElB,eAAW,YAAY,YAAa,UAAS;AAAA,EAC/C;AAAA,EAEO,YAAY,OAAiC,UAAsB;AACxE,UAAM,cAAc,KAAK,kBAAkB,IAAI,KAAK;AACpD,QAAI,CAAC,aAAa;AAChB,WAAK,kBAAkB,IAAI,OAAO,oBAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;AAAA,IACvD,OAAO;AACL,kBAAY,IAAI,QAAQ;AAAA,IAC1B;AAEA,WAAO,MAAM;AACX,YAAMA,eAAc,KAAK,kBAAkB,IAAI,KAAK;AACpD,UAAI,CAACA,aAAa;AAClB,MAAAA,aAAY,OAAO,QAAQ;AAAA,IAC7B;AAAA,EACF;AACF;","names":["subscribers"]}
1
+ {"version":3,"sources":["../../../src/runtimes/composer/BaseComposerRuntimeCore.tsx"],"sourcesContent":["import {\n Attachment,\n CompleteAttachment,\n PendingAttachment,\n} from \"../../types/AttachmentTypes\";\nimport { AppendMessage } from \"../../types\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport {\n ComposerRuntimeCore,\n ComposerRuntimeEventType,\n} from \"../core/ComposerRuntimeCore\";\nimport { MessageRole, RunConfig } from \"../../types/AssistantTypes\";\nimport { BaseSubscribable } from \"../remote-thread-list/BaseSubscribable\";\n\nconst isAttachmentComplete = (a: Attachment): a is CompleteAttachment =>\n a.status.type === \"complete\";\n\nexport abstract class BaseComposerRuntimeCore\n extends BaseSubscribable\n implements ComposerRuntimeCore\n{\n public readonly isEditing = true;\n\n protected abstract getAttachmentAdapter(): AttachmentAdapter | undefined;\n\n public getAttachmentAccept(): string {\n return this.getAttachmentAdapter()?.accept ?? \"*\";\n }\n\n private _attachments: readonly Attachment[] = [];\n public get attachments() {\n return this._attachments;\n }\n\n protected setAttachments(value: readonly Attachment[]) {\n this._attachments = value;\n this._notifySubscribers();\n }\n\n public abstract get canCancel(): boolean;\n\n public get isEmpty() {\n return !this.text.trim() && !this.attachments.length;\n }\n\n private _text = \"\";\n\n get text() {\n return this._text;\n }\n\n private _role: MessageRole = \"user\";\n\n get role() {\n return this._role;\n }\n\n private _runConfig: RunConfig = {};\n\n get runConfig() {\n return this._runConfig;\n }\n\n public setText(value: string) {\n if (this._text === value) return;\n\n this._text = value;\n this._notifySubscribers();\n }\n\n public setRole(role: MessageRole) {\n if (this._role === role) return;\n\n this._role = role;\n this._notifySubscribers();\n }\n\n public setRunConfig(runConfig: RunConfig) {\n if (this._runConfig === runConfig) return;\n\n this._runConfig = runConfig;\n this._notifySubscribers();\n }\n\n private _emptyTextAndAttachments() {\n this._attachments = [];\n this._text = \"\";\n this._notifySubscribers();\n }\n\n private async _onClearAttachments() {\n const adapter = this.getAttachmentAdapter();\n if (adapter) {\n await Promise.all(this._attachments.map((a) => adapter.remove(a)));\n }\n }\n\n public async reset() {\n if (\n this._attachments.length === 0 &&\n this._text === \"\" &&\n this._role === \"user\" &&\n Object.keys(this._runConfig).length === 0\n ) {\n return;\n }\n\n this._role = \"user\";\n this._runConfig = {};\n\n const task = this._onClearAttachments();\n this._emptyTextAndAttachments();\n await task;\n }\n\n public async clearAttachments() {\n const task = this._onClearAttachments();\n this.setAttachments([]);\n\n await task;\n }\n\n public async send() {\n const adapter = this.getAttachmentAdapter();\n const attachments =\n adapter && this.attachments.length > 0\n ? await Promise.all(\n this.attachments.map(async (a) => {\n if (isAttachmentComplete(a)) return a;\n const result = await adapter.send(a);\n return result as CompleteAttachment;\n }),\n )\n : [];\n\n const message: Omit<AppendMessage, \"parentId\" | \"sourceId\"> = {\n createdAt: new Date(),\n role: this.role,\n content: this.text ? [{ type: \"text\", text: this.text }] : [],\n attachments,\n runConfig: this.runConfig,\n metadata: { custom: {} },\n };\n this._emptyTextAndAttachments();\n\n this.handleSend(message);\n this._notifyEventSubscribers(\"send\");\n }\n\n public cancel() {\n this.handleCancel();\n }\n\n protected abstract handleSend(\n message: Omit<AppendMessage, \"parentId\" | \"sourceId\">,\n ): void;\n protected abstract handleCancel(): void;\n\n async addAttachment(file: File) {\n const adapter = this.getAttachmentAdapter();\n if (!adapter) throw new Error(\"Attachments are not supported\");\n\n const upsertAttachment = (a: PendingAttachment) => {\n const idx = this._attachments.findIndex(\n (attachment) => attachment.id === a.id,\n );\n if (idx !== -1)\n this._attachments = [\n ...this._attachments.slice(0, idx),\n a,\n ...this._attachments.slice(idx + 1),\n ];\n else {\n this._attachments = [...this._attachments, a];\n this._notifyEventSubscribers(\"attachment_add\");\n }\n\n this._notifySubscribers();\n };\n\n const promiseOrGenerator = adapter.add({ file });\n if (Symbol.asyncIterator in promiseOrGenerator) {\n for await (const r of promiseOrGenerator) {\n upsertAttachment(r);\n }\n } else {\n upsertAttachment(await promiseOrGenerator);\n }\n\n this._notifyEventSubscribers(\"attachment_add\");\n this._notifySubscribers();\n }\n\n async removeAttachment(attachmentId: string) {\n const adapter = this.getAttachmentAdapter();\n if (!adapter) throw new Error(\"Attachments are not supported\");\n\n const index = this._attachments.findIndex((a) => a.id === attachmentId);\n if (index === -1) throw new Error(\"Attachment not found\");\n const attachment = this._attachments[index]!;\n\n await adapter.remove(attachment);\n\n // this._attachments.toSpliced(index, 1); - not yet widely supported\n this._attachments = [\n ...this._attachments.slice(0, index),\n ...this._attachments.slice(index + 1),\n ];\n this._notifySubscribers();\n }\n\n private _eventSubscribers = new Map<\n ComposerRuntimeEventType,\n Set<() => void>\n >();\n\n protected _notifyEventSubscribers(event: ComposerRuntimeEventType) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n\n for (const callback of subscribers) callback();\n }\n\n public unstable_on(event: ComposerRuntimeEventType, callback: () => void) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) {\n this._eventSubscribers.set(event, new Set([callback]));\n } else {\n subscribers.add(callback);\n }\n\n return () => {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n subscribers.delete(callback);\n };\n }\n}\n"],"mappings":"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","names":["subscribers"]}
@@ -0,0 +1,25 @@
1
+ import { AppendMessage, ThreadMessage } from "../../types";
2
+ import { AttachmentAdapter } from "../adapters/attachment";
3
+ import { ThreadRuntimeCore } from "../core/ThreadRuntimeCore";
4
+ import { BaseComposerRuntimeCore } from "./BaseComposerRuntimeCore";
5
+ export declare class DefaultEditComposerRuntimeCore extends BaseComposerRuntimeCore {
6
+ private runtime;
7
+ private endEditCallback;
8
+ get canCancel(): boolean;
9
+ protected getAttachmentAdapter(): AttachmentAdapter | undefined;
10
+ private _nonTextParts;
11
+ private _previousText;
12
+ private _parentId;
13
+ private _sourceId;
14
+ constructor(runtime: ThreadRuntimeCore & {
15
+ adapters?: {
16
+ attachments?: AttachmentAdapter | undefined;
17
+ } | undefined;
18
+ }, endEditCallback: () => void, { parentId, message }: {
19
+ parentId: string | null;
20
+ message: ThreadMessage;
21
+ });
22
+ handleSend(message: Omit<AppendMessage, "parentId" | "sourceId">): Promise<void>;
23
+ handleCancel(): void;
24
+ }
25
+ //# sourceMappingURL=DefaultEditComposerRuntimeCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultEditComposerRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/composer/DefaultEditComposerRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,qBAAa,8BAA+B,SAAQ,uBAAuB;IAcvE,OAAO,CAAC,OAAO;IAGf,OAAO,CAAC,eAAe;IAhBzB,IAAW,SAAS,YAEnB;IAED,SAAS,CAAC,oBAAoB;IAI9B,OAAO,CAAC,aAAa,CAAC;IACtB,OAAO,CAAC,aAAa,CAAC;IACtB,OAAO,CAAC,SAAS,CAAC;IAClB,OAAO,CAAC,SAAS,CAAC;gBAER,OAAO,EAAE,iBAAiB,GAAG;QACnC,QAAQ,CAAC,EAAE;YAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAA;SAAE,GAAG,SAAS,CAAC;KACxE,EACO,eAAe,EAAE,MAAM,IAAI,EACnC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,aAAa,CAAA;KAAE;IAiB/D,UAAU,CACrB,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,UAAU,CAAC;IAehD,YAAY;CAIpB"}
@@ -1,6 +1,7 @@
1
- import { getThreadMessageText } from "../../utils/getThreadMessageText";
2
- import { BaseComposerRuntimeCore } from "./BaseComposerRuntimeCore";
3
- class DefaultEditComposerRuntimeCore extends BaseComposerRuntimeCore {
1
+ // src/runtimes/composer/DefaultEditComposerRuntimeCore.tsx
2
+ import { getThreadMessageText } from "../../utils/getThreadMessageText.js";
3
+ import { BaseComposerRuntimeCore } from "./BaseComposerRuntimeCore.js";
4
+ var DefaultEditComposerRuntimeCore = class extends BaseComposerRuntimeCore {
4
5
  constructor(runtime, endEditCallback, { parentId, message }) {
5
6
  super();
6
7
  this.runtime = runtime;
@@ -40,7 +41,7 @@ class DefaultEditComposerRuntimeCore extends BaseComposerRuntimeCore {
40
41
  this.endEditCallback();
41
42
  this._notifySubscribers();
42
43
  }
43
- }
44
+ };
44
45
  export {
45
46
  DefaultEditComposerRuntimeCore
46
47
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/composer/DefaultEditComposerRuntimeCore.tsx"],"sourcesContent":["import { AppendMessage, ThreadMessage } from \"../../types\";\nimport { getThreadMessageText } from \"../../utils/getThreadMessageText\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport { ThreadRuntimeCore } from \"../core/ThreadRuntimeCore\";\nimport { BaseComposerRuntimeCore } from \"./BaseComposerRuntimeCore\";\n\nexport class DefaultEditComposerRuntimeCore extends BaseComposerRuntimeCore {\n public get canCancel() {\n return true;\n }\n\n protected getAttachmentAdapter() {\n return this.runtime.adapters?.attachments;\n }\n\n private _nonTextParts;\n private _previousText;\n private _parentId;\n private _sourceId;\n constructor(\n private runtime: ThreadRuntimeCore & {\n adapters?: { attachments?: AttachmentAdapter | undefined } | undefined;\n },\n private endEditCallback: () => void,\n { parentId, message }: { parentId: string | null; message: ThreadMessage },\n ) {\n super();\n this._parentId = parentId;\n this._sourceId = message.id;\n this._previousText = getThreadMessageText(message);\n this.setText(this._previousText);\n\n this.setRole(message.role);\n this.setAttachments(message.attachments ?? []);\n\n this._nonTextParts = message.content.filter((part) => part.type !== \"text\");\n\n // Use the runConfig from the regular (non-edit) composer as the initial runConfig for the edit composer\n this.setRunConfig({ ...runtime.composer.runConfig });\n }\n\n public async handleSend(\n message: Omit<AppendMessage, \"parentId\" | \"sourceId\">,\n ) {\n const text = getThreadMessageText(message as AppendMessage);\n if (text !== this._previousText) {\n this.runtime.append({\n ...message,\n content: [...message.content, ...this._nonTextParts] as any,\n parentId: this._parentId,\n sourceId: this._sourceId,\n });\n }\n\n this.handleCancel();\n }\n\n public handleCancel() {\n this.endEditCallback();\n this._notifySubscribers();\n }\n}\n"],"mappings":"AACA,SAAS,4BAA4B;AAGrC,SAAS,+BAA+B;AAEjC,MAAM,uCAAuC,wBAAwB;AAAA,EAa1E,YACU,SAGA,iBACR,EAAE,UAAU,QAAQ,GACpB;AACA,UAAM;AANE;AAGA;AAIR,SAAK,YAAY;AACjB,SAAK,YAAY,QAAQ;AACzB,SAAK,gBAAgB,qBAAqB,OAAO;AACjD,SAAK,QAAQ,KAAK,aAAa;AAE/B,SAAK,QAAQ,QAAQ,IAAI;AACzB,SAAK,eAAe,QAAQ,eAAe,CAAC,CAAC;AAE7C,SAAK,gBAAgB,QAAQ,QAAQ,OAAO,CAAC,SAAS,KAAK,SAAS,MAAM;AAG1E,SAAK,aAAa,EAAE,GAAG,QAAQ,SAAS,UAAU,CAAC;AAAA,EACrD;AAAA,EAhCA,IAAW,YAAY;AACrB,WAAO;AAAA,EACT;AAAA,EAEU,uBAAuB;AAC/B,WAAO,KAAK,QAAQ,UAAU;AAAA,EAChC;AAAA,EAEQ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAuBR,MAAa,WACX,SACA;AACA,UAAM,OAAO,qBAAqB,OAAwB;AAC1D,QAAI,SAAS,KAAK,eAAe;AAC/B,WAAK,QAAQ,OAAO;AAAA,QAClB,GAAG;AAAA,QACH,SAAS,CAAC,GAAG,QAAQ,SAAS,GAAG,KAAK,aAAa;AAAA,QACnD,UAAU,KAAK;AAAA,QACf,UAAU,KAAK;AAAA,MACjB,CAAC;AAAA,IACH;AAEA,SAAK,aAAa;AAAA,EACpB;AAAA,EAEO,eAAe;AACpB,SAAK,gBAAgB;AACrB,SAAK,mBAAmB;AAAA,EAC1B;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/composer/DefaultEditComposerRuntimeCore.tsx"],"sourcesContent":["import { AppendMessage, ThreadMessage } from \"../../types\";\nimport { getThreadMessageText } from \"../../utils/getThreadMessageText\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport { ThreadRuntimeCore } from \"../core/ThreadRuntimeCore\";\nimport { BaseComposerRuntimeCore } from \"./BaseComposerRuntimeCore\";\n\nexport class DefaultEditComposerRuntimeCore extends BaseComposerRuntimeCore {\n public get canCancel() {\n return true;\n }\n\n protected getAttachmentAdapter() {\n return this.runtime.adapters?.attachments;\n }\n\n private _nonTextParts;\n private _previousText;\n private _parentId;\n private _sourceId;\n constructor(\n private runtime: ThreadRuntimeCore & {\n adapters?: { attachments?: AttachmentAdapter | undefined } | undefined;\n },\n private endEditCallback: () => void,\n { parentId, message }: { parentId: string | null; message: ThreadMessage },\n ) {\n super();\n this._parentId = parentId;\n this._sourceId = message.id;\n this._previousText = getThreadMessageText(message);\n this.setText(this._previousText);\n\n this.setRole(message.role);\n this.setAttachments(message.attachments ?? []);\n\n this._nonTextParts = message.content.filter((part) => part.type !== \"text\");\n\n // Use the runConfig from the regular (non-edit) composer as the initial runConfig for the edit composer\n this.setRunConfig({ ...runtime.composer.runConfig });\n }\n\n public async handleSend(\n message: Omit<AppendMessage, \"parentId\" | \"sourceId\">,\n ) {\n const text = getThreadMessageText(message as AppendMessage);\n if (text !== this._previousText) {\n this.runtime.append({\n ...message,\n content: [...message.content, ...this._nonTextParts] as any,\n parentId: this._parentId,\n sourceId: this._sourceId,\n });\n }\n\n this.handleCancel();\n }\n\n public handleCancel() {\n this.endEditCallback();\n this._notifySubscribers();\n }\n}\n"],"mappings":";AACA,SAAS,4BAA4B;AAGrC,SAAS,+BAA+B;AAEjC,IAAM,iCAAN,cAA6C,wBAAwB;AAAA,EAa1E,YACU,SAGA,iBACR,EAAE,UAAU,QAAQ,GACpB;AACA,UAAM;AANE;AAGA;AAIR,SAAK,YAAY;AACjB,SAAK,YAAY,QAAQ;AACzB,SAAK,gBAAgB,qBAAqB,OAAO;AACjD,SAAK,QAAQ,KAAK,aAAa;AAE/B,SAAK,QAAQ,QAAQ,IAAI;AACzB,SAAK,eAAe,QAAQ,eAAe,CAAC,CAAC;AAE7C,SAAK,gBAAgB,QAAQ,QAAQ,OAAO,CAAC,SAAS,KAAK,SAAS,MAAM;AAG1E,SAAK,aAAa,EAAE,GAAG,QAAQ,SAAS,UAAU,CAAC;AAAA,EACrD;AAAA,EAhCA,IAAW,YAAY;AACrB,WAAO;AAAA,EACT;AAAA,EAEU,uBAAuB;AAC/B,WAAO,KAAK,QAAQ,UAAU;AAAA,EAChC;AAAA,EAEQ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAuBR,MAAa,WACX,SACA;AACA,UAAM,OAAO,qBAAqB,OAAwB;AAC1D,QAAI,SAAS,KAAK,eAAe;AAC/B,WAAK,QAAQ,OAAO;AAAA,QAClB,GAAG;AAAA,QACH,SAAS,CAAC,GAAG,QAAQ,SAAS,GAAG,KAAK,aAAa;AAAA,QACnD,UAAU,KAAK;AAAA,QACf,UAAU,KAAK;AAAA,MACjB,CAAC;AAAA,IACH;AAEA,SAAK,aAAa;AAAA,EACpB;AAAA,EAEO,eAAe;AACpB,SAAK,gBAAgB;AACrB,SAAK,mBAAmB;AAAA,EAC1B;AACF;","names":[]}
@@ -0,0 +1,21 @@
1
+ import { AppendMessage, PendingAttachment } from "../../types";
2
+ import { AttachmentAdapter } from "../adapters/attachment";
3
+ import { ThreadComposerRuntimeCore } from "../core/ComposerRuntimeCore";
4
+ import { ThreadRuntimeCore } from "../core/ThreadRuntimeCore";
5
+ import { BaseComposerRuntimeCore } from "./BaseComposerRuntimeCore";
6
+ export declare class DefaultThreadComposerRuntimeCore extends BaseComposerRuntimeCore implements ThreadComposerRuntimeCore {
7
+ private runtime;
8
+ private _canCancel;
9
+ get canCancel(): boolean;
10
+ get attachments(): readonly PendingAttachment[];
11
+ protected getAttachmentAdapter(): AttachmentAdapter | undefined;
12
+ constructor(runtime: Omit<ThreadRuntimeCore, "composer"> & {
13
+ adapters?: {
14
+ attachments?: AttachmentAdapter | undefined;
15
+ } | undefined;
16
+ });
17
+ connect(): import("../..").Unsubscribe;
18
+ handleSend(message: Omit<AppendMessage, "parentId" | "sourceId">): Promise<void>;
19
+ handleCancel(): Promise<void>;
20
+ }
21
+ //# sourceMappingURL=DefaultThreadComposerRuntimeCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultThreadComposerRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/composer/DefaultThreadComposerRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,qBAAa,gCACX,SAAQ,uBACR,YAAW,yBAAyB;IAgBlC,OAAO,CAAC,OAAO;IAdjB,OAAO,CAAC,UAAU,CAAS;IAC3B,IAAW,SAAS,YAEnB;IAED,IAAoB,WAAW,IAAI,SAAS,iBAAiB,EAAE,CAE9D;IAED,SAAS,CAAC,oBAAoB;gBAKpB,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,GAAG;QACrD,QAAQ,CAAC,EAAE;YAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAA;SAAE,GAAG,SAAS,CAAC;KACxE;IAMI,OAAO;IASD,UAAU,CACrB,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,UAAU,CAAC;IAS1C,YAAY;CAG1B"}
@@ -1,5 +1,6 @@
1
- import { BaseComposerRuntimeCore } from "./BaseComposerRuntimeCore";
2
- class DefaultThreadComposerRuntimeCore extends BaseComposerRuntimeCore {
1
+ // src/runtimes/composer/DefaultThreadComposerRuntimeCore.tsx
2
+ import { BaseComposerRuntimeCore } from "./BaseComposerRuntimeCore.js";
3
+ var DefaultThreadComposerRuntimeCore = class extends BaseComposerRuntimeCore {
3
4
  constructor(runtime) {
4
5
  super();
5
6
  this.runtime = runtime;
@@ -33,7 +34,7 @@ class DefaultThreadComposerRuntimeCore extends BaseComposerRuntimeCore {
33
34
  async handleCancel() {
34
35
  this.runtime.cancelRun();
35
36
  }
36
- }
37
+ };
37
38
  export {
38
39
  DefaultThreadComposerRuntimeCore
39
40
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/composer/DefaultThreadComposerRuntimeCore.tsx"],"sourcesContent":["import { AppendMessage, PendingAttachment } from \"../../types\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport { ThreadComposerRuntimeCore } from \"../core/ComposerRuntimeCore\";\nimport { ThreadRuntimeCore } from \"../core/ThreadRuntimeCore\";\nimport { BaseComposerRuntimeCore } from \"./BaseComposerRuntimeCore\";\n\nexport class DefaultThreadComposerRuntimeCore\n extends BaseComposerRuntimeCore\n implements ThreadComposerRuntimeCore\n{\n private _canCancel = false;\n public get canCancel() {\n return this._canCancel;\n }\n\n public override get attachments(): readonly PendingAttachment[] {\n return super.attachments as readonly PendingAttachment[];\n }\n\n protected getAttachmentAdapter() {\n return this.runtime.adapters?.attachments;\n }\n\n constructor(\n private runtime: Omit<ThreadRuntimeCore, \"composer\"> & {\n adapters?: { attachments?: AttachmentAdapter | undefined } | undefined;\n },\n ) {\n super();\n this.connect();\n }\n\n public connect() {\n return this.runtime.subscribe(() => {\n if (this.canCancel !== this.runtime.capabilities.cancel) {\n this._canCancel = this.runtime.capabilities.cancel;\n this._notifySubscribers();\n }\n });\n }\n\n public async handleSend(\n message: Omit<AppendMessage, \"parentId\" | \"sourceId\">,\n ) {\n this.runtime.append({\n ...(message as AppendMessage),\n parentId: this.runtime.messages.at(-1)?.id ?? null,\n sourceId: null,\n });\n }\n\n public async handleCancel() {\n this.runtime.cancelRun();\n }\n}\n"],"mappings":"AAIA,SAAS,+BAA+B;AAEjC,MAAM,yCACH,wBAEV;AAAA,EAcE,YACU,SAGR;AACA,UAAM;AAJE;AAKR,SAAK,QAAQ;AAAA,EACf;AAAA,EApBQ,aAAa;AAAA,EACrB,IAAW,YAAY;AACrB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAoB,cAA4C;AAC9D,WAAO,MAAM;AAAA,EACf;AAAA,EAEU,uBAAuB;AAC/B,WAAO,KAAK,QAAQ,UAAU;AAAA,EAChC;AAAA,EAWO,UAAU;AACf,WAAO,KAAK,QAAQ,UAAU,MAAM;AAClC,UAAI,KAAK,cAAc,KAAK,QAAQ,aAAa,QAAQ;AACvD,aAAK,aAAa,KAAK,QAAQ,aAAa;AAC5C,aAAK,mBAAmB;AAAA,MAC1B;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEA,MAAa,WACX,SACA;AACA,SAAK,QAAQ,OAAO;AAAA,MAClB,GAAI;AAAA,MACJ,UAAU,KAAK,QAAQ,SAAS,GAAG,EAAE,GAAG,MAAM;AAAA,MAC9C,UAAU;AAAA,IACZ,CAAC;AAAA,EACH;AAAA,EAEA,MAAa,eAAe;AAC1B,SAAK,QAAQ,UAAU;AAAA,EACzB;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/composer/DefaultThreadComposerRuntimeCore.tsx"],"sourcesContent":["import { AppendMessage, PendingAttachment } from \"../../types\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport { ThreadComposerRuntimeCore } from \"../core/ComposerRuntimeCore\";\nimport { ThreadRuntimeCore } from \"../core/ThreadRuntimeCore\";\nimport { BaseComposerRuntimeCore } from \"./BaseComposerRuntimeCore\";\n\nexport class DefaultThreadComposerRuntimeCore\n extends BaseComposerRuntimeCore\n implements ThreadComposerRuntimeCore\n{\n private _canCancel = false;\n public get canCancel() {\n return this._canCancel;\n }\n\n public override get attachments(): readonly PendingAttachment[] {\n return super.attachments as readonly PendingAttachment[];\n }\n\n protected getAttachmentAdapter() {\n return this.runtime.adapters?.attachments;\n }\n\n constructor(\n private runtime: Omit<ThreadRuntimeCore, \"composer\"> & {\n adapters?: { attachments?: AttachmentAdapter | undefined } | undefined;\n },\n ) {\n super();\n this.connect();\n }\n\n public connect() {\n return this.runtime.subscribe(() => {\n if (this.canCancel !== this.runtime.capabilities.cancel) {\n this._canCancel = this.runtime.capabilities.cancel;\n this._notifySubscribers();\n }\n });\n }\n\n public async handleSend(\n message: Omit<AppendMessage, \"parentId\" | \"sourceId\">,\n ) {\n this.runtime.append({\n ...(message as AppendMessage),\n parentId: this.runtime.messages.at(-1)?.id ?? null,\n sourceId: null,\n });\n }\n\n public async handleCancel() {\n this.runtime.cancelRun();\n }\n}\n"],"mappings":";AAIA,SAAS,+BAA+B;AAEjC,IAAM,mCAAN,cACG,wBAEV;AAAA,EAcE,YACU,SAGR;AACA,UAAM;AAJE;AAKR,SAAK,QAAQ;AAAA,EACf;AAAA,EApBQ,aAAa;AAAA,EACrB,IAAW,YAAY;AACrB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAoB,cAA4C;AAC9D,WAAO,MAAM;AAAA,EACf;AAAA,EAEU,uBAAuB;AAC/B,WAAO,KAAK,QAAQ,UAAU;AAAA,EAChC;AAAA,EAWO,UAAU;AACf,WAAO,KAAK,QAAQ,UAAU,MAAM;AAClC,UAAI,KAAK,cAAc,KAAK,QAAQ,aAAa,QAAQ;AACvD,aAAK,aAAa,KAAK,QAAQ,aAAa;AAC5C,aAAK,mBAAmB;AAAA,MAC1B;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEA,MAAa,WACX,SACA;AACA,SAAK,QAAQ,OAAO;AAAA,MAClB,GAAI;AAAA,MACJ,UAAU,KAAK,QAAQ,SAAS,GAAG,EAAE,GAAG,MAAM;AAAA,MAC9C,UAAU;AAAA,IACZ,CAAC;AAAA,EACH;AAAA,EAEA,MAAa,eAAe;AAC1B,SAAK,QAAQ,UAAU;AAAA,EACzB;AACF;","names":[]}
@@ -0,0 +1,16 @@
1
+ import { ComponentType } from "react";
2
+ import type { ModelContextProvider } from "../../model-context/ModelContextTypes";
3
+ import type { Unsubscribe } from "../../types/Unsubscribe";
4
+ import { ThreadListRuntimeCore } from "./ThreadListRuntimeCore";
5
+ export type AssistantRuntimeCore = {
6
+ readonly threads: ThreadListRuntimeCore;
7
+ registerModelContextProvider: (provider: ModelContextProvider) => Unsubscribe;
8
+ /**
9
+ * EXPERIMENTAL: A component that is rendered inside the AssistantRuntimeProvider.
10
+ *
11
+ * Note: This field is expected to never change.
12
+ * To update the component, use a zustand store.
13
+ */
14
+ readonly RenderComponent?: ComponentType | undefined;
15
+ };
16
+ //# sourceMappingURL=AssistantRuntimeCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssistantRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/AssistantRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,CAAC,OAAO,EAAE,qBAAqB,CAAC;IAExC,4BAA4B,EAAE,CAAC,QAAQ,EAAE,oBAAoB,KAAK,WAAW,CAAC;IAE9E;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CACtD,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { type ModelContextProvider } from "../../model-context/ModelContextTypes";
2
+ import type { Unsubscribe } from "../../types/Unsubscribe";
3
+ import type { AssistantRuntimeCore } from "./AssistantRuntimeCore";
4
+ import { CompositeContextProvider } from "../../utils/CompositeContextProvider";
5
+ import { ThreadListRuntimeCore } from "./ThreadListRuntimeCore";
6
+ export declare abstract class BaseAssistantRuntimeCore implements AssistantRuntimeCore {
7
+ protected readonly _contextProvider: CompositeContextProvider;
8
+ abstract get threads(): ThreadListRuntimeCore;
9
+ registerModelContextProvider(provider: ModelContextProvider): Unsubscribe;
10
+ }
11
+ //# sourceMappingURL=BaseAssistantRuntimeCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseAssistantRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/BaseAssistantRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,8BAAsB,wBAAyB,YAAW,oBAAoB;IAC5E,SAAS,CAAC,QAAQ,CAAC,gBAAgB,2BAAkC;IACrE,aAAoB,OAAO,IAAI,qBAAqB,CAAC;IAE9C,4BAA4B,CACjC,QAAQ,EAAE,oBAAoB,GAC7B,WAAW;CAGf"}
@@ -1,10 +1,11 @@
1
- import { CompositeContextProvider } from "../../utils/CompositeContextProvider";
2
- class BaseAssistantRuntimeCore {
1
+ // src/runtimes/core/BaseAssistantRuntimeCore.tsx
2
+ import { CompositeContextProvider } from "../../utils/CompositeContextProvider.js";
3
+ var BaseAssistantRuntimeCore = class {
3
4
  _contextProvider = new CompositeContextProvider();
4
5
  registerModelContextProvider(provider) {
5
6
  return this._contextProvider.registerModelContextProvider(provider);
6
7
  }
7
- }
8
+ };
8
9
  export {
9
10
  BaseAssistantRuntimeCore
10
11
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/core/BaseAssistantRuntimeCore.tsx"],"sourcesContent":["import { type ModelContextProvider } from \"../../model-context/ModelContextTypes\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\nimport type { AssistantRuntimeCore } from \"./AssistantRuntimeCore\";\nimport { CompositeContextProvider } from \"../../utils/CompositeContextProvider\";\nimport { ThreadListRuntimeCore } from \"./ThreadListRuntimeCore\";\n\nexport abstract class BaseAssistantRuntimeCore implements AssistantRuntimeCore {\n protected readonly _contextProvider = new CompositeContextProvider();\n public abstract get threads(): ThreadListRuntimeCore;\n\n public registerModelContextProvider(\n provider: ModelContextProvider,\n ): Unsubscribe {\n return this._contextProvider.registerModelContextProvider(provider);\n }\n}\n"],"mappings":"AAGA,SAAS,gCAAgC;AAGlC,MAAe,yBAAyD;AAAA,EAC1D,mBAAmB,IAAI,yBAAyB;AAAA,EAG5D,6BACL,UACa;AACb,WAAO,KAAK,iBAAiB,6BAA6B,QAAQ;AAAA,EACpE;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/core/BaseAssistantRuntimeCore.tsx"],"sourcesContent":["import { type ModelContextProvider } from \"../../model-context/ModelContextTypes\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\nimport type { AssistantRuntimeCore } from \"./AssistantRuntimeCore\";\nimport { CompositeContextProvider } from \"../../utils/CompositeContextProvider\";\nimport { ThreadListRuntimeCore } from \"./ThreadListRuntimeCore\";\n\nexport abstract class BaseAssistantRuntimeCore implements AssistantRuntimeCore {\n protected readonly _contextProvider = new CompositeContextProvider();\n public abstract get threads(): ThreadListRuntimeCore;\n\n public registerModelContextProvider(\n provider: ModelContextProvider,\n ): Unsubscribe {\n return this._contextProvider.registerModelContextProvider(provider);\n }\n}\n"],"mappings":";AAGA,SAAS,gCAAgC;AAGlC,IAAe,2BAAf,MAAwE;AAAA,EAC1D,mBAAmB,IAAI,yBAAyB;AAAA,EAG5D,6BACL,UACa;AACb,WAAO,KAAK,iBAAiB,6BAA6B,QAAQ;AAAA,EACpE;AACF;","names":[]}
@@ -0,0 +1,60 @@
1
+ import type { AppendMessage, Unsubscribe } from "../../types";
2
+ import { ExportedMessageRepository, MessageRepository } from "../utils/MessageRepository";
3
+ import { DefaultThreadComposerRuntimeCore } from "../composer/DefaultThreadComposerRuntimeCore";
4
+ import { AddToolResultOptions, ThreadSuggestion, SubmitFeedbackOptions, ThreadRuntimeCore, SpeechState, RuntimeCapabilities, SubmittedFeedback, ThreadRuntimeEventType, StartRunConfig, ResumeRunConfig } from "../core/ThreadRuntimeCore";
5
+ import { DefaultEditComposerRuntimeCore } from "../composer/DefaultEditComposerRuntimeCore";
6
+ import { SpeechSynthesisAdapter } from "../adapters/speech/SpeechAdapterTypes";
7
+ import { FeedbackAdapter } from "../adapters/feedback/FeedbackAdapter";
8
+ import { AttachmentAdapter } from "../adapters/attachment";
9
+ import { ModelContextProvider } from "../../model-context";
10
+ type BaseThreadAdapters = {
11
+ speech?: SpeechSynthesisAdapter | undefined;
12
+ feedback?: FeedbackAdapter | undefined;
13
+ attachments?: AttachmentAdapter | undefined;
14
+ };
15
+ export declare abstract class BaseThreadRuntimeCore implements ThreadRuntimeCore {
16
+ private readonly _contextProvider;
17
+ private _subscriptions;
18
+ private _isInitialized;
19
+ protected readonly repository: MessageRepository;
20
+ abstract get adapters(): BaseThreadAdapters | undefined;
21
+ abstract get isDisabled(): boolean;
22
+ abstract get suggestions(): readonly ThreadSuggestion[];
23
+ abstract get extras(): unknown;
24
+ abstract get capabilities(): RuntimeCapabilities;
25
+ abstract append(message: AppendMessage): void;
26
+ abstract startRun(config: StartRunConfig): void;
27
+ abstract resumeRun(config: ResumeRunConfig): void;
28
+ abstract addToolResult(options: AddToolResultOptions): void;
29
+ abstract cancelRun(): void;
30
+ get messages(): readonly import("../..").ThreadMessage[];
31
+ readonly composer: DefaultThreadComposerRuntimeCore;
32
+ constructor(_contextProvider: ModelContextProvider);
33
+ getModelContext(): import("../..").AssistantConfig;
34
+ private _editComposers;
35
+ getEditComposer(messageId: string): DefaultEditComposerRuntimeCore | undefined;
36
+ beginEdit(messageId: string): void;
37
+ getMessageById(messageId: string): {
38
+ parentId: string | null;
39
+ message: import("../..").ThreadMessage;
40
+ };
41
+ getBranches(messageId: string): string[];
42
+ switchToBranch(branchId: string): void;
43
+ protected _notifySubscribers(): void;
44
+ _notifyEventSubscribers(event: ThreadRuntimeEventType): void;
45
+ subscribe(callback: () => void): Unsubscribe;
46
+ private _submittedFeedback;
47
+ getSubmittedFeedback(messageId: string): SubmittedFeedback | undefined;
48
+ submitFeedback({ messageId, type }: SubmitFeedbackOptions): void;
49
+ private _stopSpeaking;
50
+ speech: SpeechState | undefined;
51
+ speak(messageId: string): void;
52
+ stopSpeaking(): void;
53
+ protected ensureInitialized(): void;
54
+ export(): ExportedMessageRepository;
55
+ import(data: ExportedMessageRepository): void;
56
+ private _eventSubscribers;
57
+ unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;
58
+ }
59
+ export {};
60
+ //# sourceMappingURL=BaseThreadRuntimeCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseThreadRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/BaseThreadRuntimeCore.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
+ // src/runtimes/core/BaseThreadRuntimeCore.tsx
1
2
  import {
2
3
  MessageRepository
3
- } from "../utils/MessageRepository";
4
- import { DefaultThreadComposerRuntimeCore } from "../composer/DefaultThreadComposerRuntimeCore";
5
- import { DefaultEditComposerRuntimeCore } from "../composer/DefaultEditComposerRuntimeCore";
6
- import { getThreadMessageText } from "../../utils/getThreadMessageText";
7
- class BaseThreadRuntimeCore {
4
+ } from "../utils/MessageRepository.js";
5
+ import { DefaultThreadComposerRuntimeCore } from "../composer/DefaultThreadComposerRuntimeCore.js";
6
+ import { DefaultEditComposerRuntimeCore } from "../composer/DefaultEditComposerRuntimeCore.js";
7
+ import { getThreadMessageText } from "../../utils/getThreadMessageText.js";
8
+ var BaseThreadRuntimeCore = class {
8
9
  constructor(_contextProvider) {
9
10
  this._contextProvider = _contextProvider;
10
11
  }
@@ -133,7 +134,7 @@ class BaseThreadRuntimeCore {
133
134
  subscribers2.delete(callback);
134
135
  };
135
136
  }
136
- }
137
+ };
137
138
  export {
138
139
  BaseThreadRuntimeCore
139
140
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/core/BaseThreadRuntimeCore.tsx"],"sourcesContent":["import type { AppendMessage, Unsubscribe } from \"../../types\";\nimport {\n ExportedMessageRepository,\n MessageRepository,\n} from \"../utils/MessageRepository\";\nimport { DefaultThreadComposerRuntimeCore } from \"../composer/DefaultThreadComposerRuntimeCore\";\nimport {\n AddToolResultOptions,\n ThreadSuggestion,\n SubmitFeedbackOptions,\n ThreadRuntimeCore,\n SpeechState,\n RuntimeCapabilities,\n SubmittedFeedback,\n ThreadRuntimeEventType,\n StartRunConfig,\n ResumeRunConfig,\n} from \"../core/ThreadRuntimeCore\";\nimport { DefaultEditComposerRuntimeCore } from \"../composer/DefaultEditComposerRuntimeCore\";\nimport { SpeechSynthesisAdapter } from \"../adapters/speech/SpeechAdapterTypes\";\nimport { FeedbackAdapter } from \"../adapters/feedback/FeedbackAdapter\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport { getThreadMessageText } from \"../../utils/getThreadMessageText\";\nimport { ModelContextProvider } from \"../../model-context\";\n\ntype BaseThreadAdapters = {\n speech?: SpeechSynthesisAdapter | undefined;\n feedback?: FeedbackAdapter | undefined;\n attachments?: AttachmentAdapter | undefined;\n};\n\nexport abstract class BaseThreadRuntimeCore implements ThreadRuntimeCore {\n private _subscriptions = new Set<() => void>();\n private _isInitialized = false;\n\n protected readonly repository = new MessageRepository();\n public abstract get adapters(): BaseThreadAdapters | undefined;\n public abstract get isDisabled(): boolean;\n public abstract get suggestions(): readonly ThreadSuggestion[];\n public abstract get extras(): unknown;\n\n public abstract get capabilities(): RuntimeCapabilities;\n public abstract append(message: AppendMessage): void;\n public abstract startRun(config: StartRunConfig): void;\n public abstract resumeRun(config: ResumeRunConfig): void;\n public abstract addToolResult(options: AddToolResultOptions): void;\n public abstract cancelRun(): void;\n\n public get messages() {\n return this.repository.getMessages();\n }\n\n public readonly composer = new DefaultThreadComposerRuntimeCore(this);\n\n constructor(private readonly _contextProvider: ModelContextProvider) {}\n\n public getModelContext() {\n return this._contextProvider.getModelContext();\n }\n\n private _editComposers = new Map<string, DefaultEditComposerRuntimeCore>();\n public getEditComposer(messageId: string) {\n return this._editComposers.get(messageId);\n }\n public beginEdit(messageId: string) {\n if (this._editComposers.has(messageId))\n throw new Error(\"Edit already in progress\");\n\n this._editComposers.set(\n messageId,\n new DefaultEditComposerRuntimeCore(\n this,\n () => this._editComposers.delete(messageId),\n this.repository.getMessage(messageId),\n ),\n );\n this._notifySubscribers();\n }\n\n public getMessageById(messageId: string) {\n return this.repository.getMessage(messageId);\n }\n\n public getBranches(messageId: string): string[] {\n return this.repository.getBranches(messageId);\n }\n\n public switchToBranch(branchId: string): void {\n this.repository.switchToBranch(branchId);\n this._notifySubscribers();\n }\n\n protected _notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n public _notifyEventSubscribers(event: ThreadRuntimeEventType) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n\n for (const callback of subscribers) callback();\n }\n\n public subscribe(callback: () => void): Unsubscribe {\n this._subscriptions.add(callback);\n return () => this._subscriptions.delete(callback);\n }\n\n private _submittedFeedback: Record<string, SubmittedFeedback> = {};\n\n public getSubmittedFeedback(messageId: string) {\n return this._submittedFeedback[messageId];\n }\n\n public submitFeedback({ messageId, type }: SubmitFeedbackOptions) {\n const adapter = this.adapters?.feedback;\n if (!adapter) throw new Error(\"Feedback adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n adapter.submit({ message, type });\n\n this._submittedFeedback[messageId] = { type };\n this._notifySubscribers();\n }\n\n private _stopSpeaking: Unsubscribe | undefined;\n public speech: SpeechState | undefined;\n\n public speak(messageId: string) {\n const adapter = this.adapters?.speech;\n if (!adapter) throw new Error(\"Speech adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n\n this._stopSpeaking?.();\n\n const utterance = adapter.speak(getThreadMessageText(message));\n const unsub = utterance.subscribe(() => {\n if (utterance.status.type === \"ended\") {\n this._stopSpeaking = undefined;\n this.speech = undefined;\n } else {\n this.speech = { messageId, status: utterance.status };\n }\n this._notifySubscribers();\n });\n\n this.speech = { messageId, status: utterance.status };\n this._notifySubscribers();\n\n this._stopSpeaking = () => {\n utterance.cancel();\n unsub();\n this.speech = undefined;\n this._stopSpeaking = undefined;\n };\n }\n\n public stopSpeaking() {\n if (!this._stopSpeaking) throw new Error(\"No message is being spoken\");\n this._stopSpeaking();\n this._notifySubscribers();\n }\n\n protected ensureInitialized() {\n if (!this._isInitialized) {\n this._isInitialized = true;\n this._notifyEventSubscribers(\"initialize\");\n }\n }\n\n // TODO import()/export() on external store doesn't make much sense\n public export() {\n return this.repository.export();\n }\n\n public import(data: ExportedMessageRepository) {\n this.ensureInitialized();\n this.repository.clear();\n this.repository.import(data);\n this._notifySubscribers();\n }\n\n private _eventSubscribers = new Map<\n ThreadRuntimeEventType,\n Set<() => void>\n >();\n\n public unstable_on(event: ThreadRuntimeEventType, callback: () => void) {\n if (event === \"model-context-update\") {\n return this._contextProvider.subscribe?.(callback) ?? (() => {});\n }\n\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) {\n this._eventSubscribers.set(event, new Set([callback]));\n } else {\n subscribers.add(callback);\n }\n\n return () => {\n const subscribers = this._eventSubscribers.get(event)!;\n subscribers.delete(callback);\n };\n }\n}\n"],"mappings":"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","names":["subscribers"]}
1
+ {"version":3,"sources":["../../../src/runtimes/core/BaseThreadRuntimeCore.tsx"],"sourcesContent":["import type { AppendMessage, Unsubscribe } from \"../../types\";\nimport {\n ExportedMessageRepository,\n MessageRepository,\n} from \"../utils/MessageRepository\";\nimport { DefaultThreadComposerRuntimeCore } from \"../composer/DefaultThreadComposerRuntimeCore\";\nimport {\n AddToolResultOptions,\n ThreadSuggestion,\n SubmitFeedbackOptions,\n ThreadRuntimeCore,\n SpeechState,\n RuntimeCapabilities,\n SubmittedFeedback,\n ThreadRuntimeEventType,\n StartRunConfig,\n ResumeRunConfig,\n} from \"../core/ThreadRuntimeCore\";\nimport { DefaultEditComposerRuntimeCore } from \"../composer/DefaultEditComposerRuntimeCore\";\nimport { SpeechSynthesisAdapter } from \"../adapters/speech/SpeechAdapterTypes\";\nimport { FeedbackAdapter } from \"../adapters/feedback/FeedbackAdapter\";\nimport { AttachmentAdapter } from \"../adapters/attachment\";\nimport { getThreadMessageText } from \"../../utils/getThreadMessageText\";\nimport { ModelContextProvider } from \"../../model-context\";\n\ntype BaseThreadAdapters = {\n speech?: SpeechSynthesisAdapter | undefined;\n feedback?: FeedbackAdapter | undefined;\n attachments?: AttachmentAdapter | undefined;\n};\n\nexport abstract class BaseThreadRuntimeCore implements ThreadRuntimeCore {\n private _subscriptions = new Set<() => void>();\n private _isInitialized = false;\n\n protected readonly repository = new MessageRepository();\n public abstract get adapters(): BaseThreadAdapters | undefined;\n public abstract get isDisabled(): boolean;\n public abstract get suggestions(): readonly ThreadSuggestion[];\n public abstract get extras(): unknown;\n\n public abstract get capabilities(): RuntimeCapabilities;\n public abstract append(message: AppendMessage): void;\n public abstract startRun(config: StartRunConfig): void;\n public abstract resumeRun(config: ResumeRunConfig): void;\n public abstract addToolResult(options: AddToolResultOptions): void;\n public abstract cancelRun(): void;\n\n public get messages() {\n return this.repository.getMessages();\n }\n\n public readonly composer = new DefaultThreadComposerRuntimeCore(this);\n\n constructor(private readonly _contextProvider: ModelContextProvider) {}\n\n public getModelContext() {\n return this._contextProvider.getModelContext();\n }\n\n private _editComposers = new Map<string, DefaultEditComposerRuntimeCore>();\n public getEditComposer(messageId: string) {\n return this._editComposers.get(messageId);\n }\n public beginEdit(messageId: string) {\n if (this._editComposers.has(messageId))\n throw new Error(\"Edit already in progress\");\n\n this._editComposers.set(\n messageId,\n new DefaultEditComposerRuntimeCore(\n this,\n () => this._editComposers.delete(messageId),\n this.repository.getMessage(messageId),\n ),\n );\n this._notifySubscribers();\n }\n\n public getMessageById(messageId: string) {\n return this.repository.getMessage(messageId);\n }\n\n public getBranches(messageId: string): string[] {\n return this.repository.getBranches(messageId);\n }\n\n public switchToBranch(branchId: string): void {\n this.repository.switchToBranch(branchId);\n this._notifySubscribers();\n }\n\n protected _notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n public _notifyEventSubscribers(event: ThreadRuntimeEventType) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n\n for (const callback of subscribers) callback();\n }\n\n public subscribe(callback: () => void): Unsubscribe {\n this._subscriptions.add(callback);\n return () => this._subscriptions.delete(callback);\n }\n\n private _submittedFeedback: Record<string, SubmittedFeedback> = {};\n\n public getSubmittedFeedback(messageId: string) {\n return this._submittedFeedback[messageId];\n }\n\n public submitFeedback({ messageId, type }: SubmitFeedbackOptions) {\n const adapter = this.adapters?.feedback;\n if (!adapter) throw new Error(\"Feedback adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n adapter.submit({ message, type });\n\n this._submittedFeedback[messageId] = { type };\n this._notifySubscribers();\n }\n\n private _stopSpeaking: Unsubscribe | undefined;\n public speech: SpeechState | undefined;\n\n public speak(messageId: string) {\n const adapter = this.adapters?.speech;\n if (!adapter) throw new Error(\"Speech adapter not configured\");\n\n const { message } = this.repository.getMessage(messageId);\n\n this._stopSpeaking?.();\n\n const utterance = adapter.speak(getThreadMessageText(message));\n const unsub = utterance.subscribe(() => {\n if (utterance.status.type === \"ended\") {\n this._stopSpeaking = undefined;\n this.speech = undefined;\n } else {\n this.speech = { messageId, status: utterance.status };\n }\n this._notifySubscribers();\n });\n\n this.speech = { messageId, status: utterance.status };\n this._notifySubscribers();\n\n this._stopSpeaking = () => {\n utterance.cancel();\n unsub();\n this.speech = undefined;\n this._stopSpeaking = undefined;\n };\n }\n\n public stopSpeaking() {\n if (!this._stopSpeaking) throw new Error(\"No message is being spoken\");\n this._stopSpeaking();\n this._notifySubscribers();\n }\n\n protected ensureInitialized() {\n if (!this._isInitialized) {\n this._isInitialized = true;\n this._notifyEventSubscribers(\"initialize\");\n }\n }\n\n // TODO import()/export() on external store doesn't make much sense\n public export() {\n return this.repository.export();\n }\n\n public import(data: ExportedMessageRepository) {\n this.ensureInitialized();\n this.repository.clear();\n this.repository.import(data);\n this._notifySubscribers();\n }\n\n private _eventSubscribers = new Map<\n ThreadRuntimeEventType,\n Set<() => void>\n >();\n\n public unstable_on(event: ThreadRuntimeEventType, callback: () => void) {\n if (event === \"model-context-update\") {\n return this._contextProvider.subscribe?.(callback) ?? (() => {});\n }\n\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) {\n this._eventSubscribers.set(event, new Set([callback]));\n } else {\n subscribers.add(callback);\n }\n\n return () => {\n const subscribers = this._eventSubscribers.get(event)!;\n subscribers.delete(callback);\n };\n }\n}\n"],"mappings":"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","names":["subscribers"]}
@@ -0,0 +1,28 @@
1
+ import type { Attachment, PendingAttachment, Unsubscribe } from "../../types";
2
+ import { MessageRole, RunConfig } from "../../types/AssistantTypes";
3
+ export type ComposerRuntimeEventType = "send" | "attachment_add";
4
+ export type ComposerRuntimeCore = Readonly<{
5
+ isEditing: boolean;
6
+ canCancel: boolean;
7
+ isEmpty: boolean;
8
+ attachments: readonly Attachment[];
9
+ getAttachmentAccept(): string;
10
+ addAttachment: (file: File) => Promise<void>;
11
+ removeAttachment: (attachmentId: string) => Promise<void>;
12
+ text: string;
13
+ setText: (value: string) => void;
14
+ role: MessageRole;
15
+ setRole: (role: MessageRole) => void;
16
+ runConfig: RunConfig;
17
+ setRunConfig: (runConfig: RunConfig) => void;
18
+ reset: () => Promise<void>;
19
+ clearAttachments: () => Promise<void>;
20
+ send: () => void;
21
+ cancel: () => void;
22
+ subscribe: (callback: () => void) => Unsubscribe;
23
+ unstable_on: (event: ComposerRuntimeEventType, callback: () => void) => Unsubscribe;
24
+ }>;
25
+ export type ThreadComposerRuntimeCore = ComposerRuntimeCore & Readonly<{
26
+ attachments: readonly PendingAttachment[];
27
+ }>;
28
+ //# sourceMappingURL=ComposerRuntimeCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComposerRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/ComposerRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEpE,MAAM,MAAM,wBAAwB,GAAG,MAAM,GAAG,gBAAgB,CAAC;AAEjE,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC;IACzC,SAAS,EAAE,OAAO,CAAC;IAEnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IAEjB,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAEnC,mBAAmB,IAAI,MAAM,CAAC;IAC9B,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,gBAAgB,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAEjC,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IAErC,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;IAE7C,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,gBAAgB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,MAAM,EAAE,MAAM,IAAI,CAAC;IAEnB,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,WAAW,CAAC;IAEjD,WAAW,EAAE,CACX,KAAK,EAAE,wBAAwB,EAC/B,QAAQ,EAAE,MAAM,IAAI,KACjB,WAAW,CAAC;CAClB,CAAC,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,mBAAmB,GACzD,QAAQ,CAAC;IACP,WAAW,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC3C,CAAC,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { Unsubscribe } from "../../types";
2
+ import { ThreadRuntimeCore } from "./ThreadRuntimeCore";
3
+ type ThreadListItemCoreState = {
4
+ readonly threadId: string;
5
+ readonly remoteId?: string | undefined;
6
+ readonly externalId?: string | undefined;
7
+ readonly status: "archived" | "regular" | "new" | "deleted";
8
+ readonly title?: string | undefined;
9
+ readonly runtime?: ThreadRuntimeCore | undefined;
10
+ };
11
+ export type ThreadListRuntimeCore = {
12
+ mainThreadId: string;
13
+ newThreadId: string | undefined;
14
+ threadIds: readonly string[];
15
+ archivedThreadIds: readonly string[];
16
+ getMainThreadRuntimeCore(): ThreadRuntimeCore;
17
+ getThreadRuntimeCore(threadId: string): ThreadRuntimeCore;
18
+ getItemById(threadId: string): ThreadListItemCoreState | undefined;
19
+ switchToThread(threadId: string): Promise<void>;
20
+ switchToNewThread(): Promise<void>;
21
+ getLoadThreadsPromise(): Promise<void>;
22
+ rename(threadId: string, newTitle: string): Promise<void>;
23
+ archive(threadId: string): Promise<void>;
24
+ unarchive(threadId: string): Promise<void>;
25
+ delete(threadId: string): Promise<void>;
26
+ initialize(threadId: string): Promise<{
27
+ remoteId: string;
28
+ externalId: string | undefined;
29
+ }>;
30
+ generateTitle(threadId: string): Promise<void>;
31
+ subscribe(callback: () => void): Unsubscribe;
32
+ };
33
+ export {};
34
+ //# sourceMappingURL=ThreadListRuntimeCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThreadListRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/ThreadListRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,KAAK,uBAAuB,GAAG;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEzC,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,CAAC;IAC5D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAEpC,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAEhC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IAErC,wBAAwB,IAAI,iBAAiB,CAAC;IAC9C,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAAC;IAE1D,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,uBAAuB,GAAG,SAAS,CAAC;IAEnE,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAGvC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExC,UAAU,CACR,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,CAAC;IACjE,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW,CAAC;CAC9C,CAAC"}
@@ -0,0 +1,79 @@
1
+ import { ModelContext } from "../../model-context";
2
+ import { AppendMessage, ThreadMessage } from "../../types";
3
+ import { RunConfig } from "../../types/AssistantTypes";
4
+ import type { Unsubscribe } from "../../types/Unsubscribe";
5
+ import { SpeechSynthesisAdapter } from "../adapters/speech/SpeechAdapterTypes";
6
+ import { ChatModelRunOptions, ChatModelRunResult } from "../local";
7
+ import { ExportedMessageRepository } from "../utils/MessageRepository";
8
+ import { ComposerRuntimeCore, ThreadComposerRuntimeCore } from "./ComposerRuntimeCore";
9
+ export type RuntimeCapabilities = {
10
+ readonly switchToBranch: boolean;
11
+ readonly edit: boolean;
12
+ readonly reload: boolean;
13
+ readonly cancel: boolean;
14
+ readonly unstable_copy: boolean;
15
+ readonly speech: boolean;
16
+ readonly attachments: boolean;
17
+ readonly feedback: boolean;
18
+ };
19
+ export type AddToolResultOptions = {
20
+ messageId: string;
21
+ toolName: string;
22
+ toolCallId: string;
23
+ result: any;
24
+ };
25
+ export type SubmitFeedbackOptions = {
26
+ messageId: string;
27
+ type: "negative" | "positive";
28
+ };
29
+ export type ThreadSuggestion = {
30
+ prompt: string;
31
+ };
32
+ export type SpeechState = {
33
+ readonly messageId: string;
34
+ readonly status: SpeechSynthesisAdapter.Status;
35
+ };
36
+ export type SubmittedFeedback = {
37
+ readonly type: "negative" | "positive";
38
+ };
39
+ export type ThreadRuntimeEventType = "run-start" | "run-end" | "initialize" | "model-context-update";
40
+ export type StartRunConfig = {
41
+ parentId: string | null;
42
+ sourceId: string | null;
43
+ runConfig: RunConfig;
44
+ };
45
+ export type ResumeRunConfig = StartRunConfig & {
46
+ stream: (options: ChatModelRunOptions) => AsyncGenerator<ChatModelRunResult, void, unknown>;
47
+ };
48
+ export type ThreadRuntimeCore = Readonly<{
49
+ getMessageById: (messageId: string) => {
50
+ parentId: string | null;
51
+ message: ThreadMessage;
52
+ } | undefined;
53
+ getBranches: (messageId: string) => readonly string[];
54
+ switchToBranch: (branchId: string) => void;
55
+ append: (message: AppendMessage) => void;
56
+ startRun: (config: StartRunConfig) => void;
57
+ resumeRun: (config: ResumeRunConfig) => void;
58
+ cancelRun: () => void;
59
+ addToolResult: (options: AddToolResultOptions) => void;
60
+ speak: (messageId: string) => void;
61
+ stopSpeaking: () => void;
62
+ getSubmittedFeedback: (messageId: string) => SubmittedFeedback | undefined;
63
+ submitFeedback: (feedback: SubmitFeedbackOptions) => void;
64
+ getModelContext: () => ModelContext;
65
+ composer: ThreadComposerRuntimeCore;
66
+ getEditComposer: (messageId: string) => ComposerRuntimeCore | undefined;
67
+ beginEdit: (messageId: string) => void;
68
+ speech: SpeechState | undefined;
69
+ capabilities: Readonly<RuntimeCapabilities>;
70
+ isDisabled: boolean;
71
+ messages: readonly ThreadMessage[];
72
+ suggestions: readonly ThreadSuggestion[];
73
+ extras: unknown;
74
+ subscribe: (callback: () => void) => Unsubscribe;
75
+ import(repository: ExportedMessageRepository): void;
76
+ export(): ExportedMessageRepository;
77
+ unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;
78
+ }>;
79
+ //# sourceMappingURL=ThreadRuntimeCore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThreadRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/ThreadRuntimeCore.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export type { AddToolResultOptions, SubmitFeedbackOptions, ThreadSuggestion, } from "./ThreadRuntimeCore";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtimes/core/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC"}