@assistant-ui/react 0.5.97 → 0.5.99

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1153) hide show
  1. package/dist/api/AssistantRuntime.d.ts +4 -4
  2. package/dist/api/AssistantRuntime.d.ts.map +1 -1
  3. package/dist/api/AssistantRuntime.js +15 -13
  4. package/dist/api/AssistantRuntime.js.map +1 -1
  5. package/dist/api/AssistantRuntime.mjs +14 -15
  6. package/dist/api/AssistantRuntime.mjs.map +1 -1
  7. package/dist/api/AttachmentRuntime.js +12 -10
  8. package/dist/api/AttachmentRuntime.js.map +1 -1
  9. package/dist/api/AttachmentRuntime.mjs +11 -10
  10. package/dist/api/AttachmentRuntime.mjs.map +1 -1
  11. package/dist/api/ComposerRuntime.d.ts +7 -0
  12. package/dist/api/ComposerRuntime.d.ts.map +1 -1
  13. package/dist/api/ComposerRuntime.js +29 -14
  14. package/dist/api/ComposerRuntime.js.map +1 -1
  15. package/dist/api/ComposerRuntime.mjs +28 -14
  16. package/dist/api/ComposerRuntime.mjs.map +1 -1
  17. package/dist/api/ContentPartRuntime.js +4 -2
  18. package/dist/api/ContentPartRuntime.js.map +1 -1
  19. package/dist/api/ContentPartRuntime.mjs +3 -2
  20. package/dist/api/ContentPartRuntime.mjs.map +1 -1
  21. package/dist/api/MessageRuntime.d.ts.map +1 -1
  22. package/dist/api/MessageRuntime.js +15 -18
  23. package/dist/api/MessageRuntime.js.map +1 -1
  24. package/dist/api/MessageRuntime.mjs +14 -18
  25. package/dist/api/MessageRuntime.mjs.map +1 -1
  26. package/dist/api/RuntimePathTypes.d.ts +16 -1
  27. package/dist/api/RuntimePathTypes.d.ts.map +1 -1
  28. package/dist/api/RuntimePathTypes.js +2 -0
  29. package/dist/api/RuntimePathTypes.js.map +1 -1
  30. package/dist/api/ThreadListItemRuntime.d.ts +29 -0
  31. package/dist/api/ThreadListItemRuntime.d.ts.map +1 -0
  32. package/dist/api/ThreadListItemRuntime.js +61 -0
  33. package/dist/api/ThreadListItemRuntime.js.map +1 -0
  34. package/dist/api/ThreadListItemRuntime.mjs +36 -0
  35. package/dist/api/ThreadListItemRuntime.mjs.map +1 -0
  36. package/dist/api/ThreadListRuntime.d.ts +51 -0
  37. package/dist/api/ThreadListRuntime.d.ts.map +1 -0
  38. package/dist/api/ThreadListRuntime.js +128 -0
  39. package/dist/api/ThreadListRuntime.js.map +1 -0
  40. package/dist/api/ThreadListRuntime.mjs +105 -0
  41. package/dist/api/ThreadListRuntime.mjs.map +1 -0
  42. package/dist/api/ThreadRuntime.d.ts +3 -0
  43. package/dist/api/ThreadRuntime.d.ts.map +1 -1
  44. package/dist/api/ThreadRuntime.js +13 -11
  45. package/dist/api/ThreadRuntime.js.map +1 -1
  46. package/dist/api/ThreadRuntime.mjs +12 -11
  47. package/dist/api/ThreadRuntime.mjs.map +1 -1
  48. package/dist/api/index.d.ts +1 -1
  49. package/dist/api/index.d.ts.map +1 -1
  50. package/dist/api/index.js +2 -0
  51. package/dist/api/index.js.map +1 -1
  52. package/dist/api/subscribable/BaseSubject.js +4 -2
  53. package/dist/api/subscribable/BaseSubject.js.map +1 -1
  54. package/dist/api/subscribable/BaseSubject.mjs +3 -2
  55. package/dist/api/subscribable/BaseSubject.mjs.map +1 -1
  56. package/dist/api/subscribable/LazyMemoizeSubject.js +6 -4
  57. package/dist/api/subscribable/LazyMemoizeSubject.js.map +1 -1
  58. package/dist/api/subscribable/LazyMemoizeSubject.mjs +5 -4
  59. package/dist/api/subscribable/LazyMemoizeSubject.mjs.map +1 -1
  60. package/dist/api/subscribable/NestedSubscriptionSubject.js +5 -3
  61. package/dist/api/subscribable/NestedSubscriptionSubject.js.map +1 -1
  62. package/dist/api/subscribable/NestedSubscriptionSubject.mjs +4 -3
  63. package/dist/api/subscribable/NestedSubscriptionSubject.mjs.map +1 -1
  64. package/dist/api/subscribable/SKIP_UPDATE.js +3 -1
  65. package/dist/api/subscribable/SKIP_UPDATE.js.map +1 -1
  66. package/dist/api/subscribable/SKIP_UPDATE.mjs +2 -1
  67. package/dist/api/subscribable/SKIP_UPDATE.mjs.map +1 -1
  68. package/dist/api/subscribable/ShallowMemoizeSubject.js +7 -5
  69. package/dist/api/subscribable/ShallowMemoizeSubject.js.map +1 -1
  70. package/dist/api/subscribable/ShallowMemoizeSubject.mjs +6 -5
  71. package/dist/api/subscribable/ShallowMemoizeSubject.mjs.map +1 -1
  72. package/dist/api/subscribable/Subscribable.js +2 -0
  73. package/dist/api/subscribable/Subscribable.js.map +1 -1
  74. package/dist/api/subscribable/shallowEqual.js +2 -0
  75. package/dist/api/subscribable/shallowEqual.js.map +1 -1
  76. package/dist/api/subscribable/shallowEqual.mjs +1 -0
  77. package/dist/api/subscribable/shallowEqual.mjs.map +1 -1
  78. package/dist/context/ReadonlyStore.js +3 -1
  79. package/dist/context/ReadonlyStore.js.map +1 -1
  80. package/dist/context/ReadonlyStore.mjs +2 -1
  81. package/dist/context/ReadonlyStore.mjs.map +1 -1
  82. package/dist/context/index.js +8 -6
  83. package/dist/context/index.js.map +1 -1
  84. package/dist/context/index.mjs +4 -3
  85. package/dist/context/index.mjs.map +1 -1
  86. package/dist/context/providers/AssistantRuntimeProvider.d.ts.map +1 -1
  87. package/dist/context/providers/AssistantRuntimeProvider.js +18 -18
  88. package/dist/context/providers/AssistantRuntimeProvider.js.map +1 -1
  89. package/dist/context/providers/AssistantRuntimeProvider.mjs +18 -18
  90. package/dist/context/providers/AssistantRuntimeProvider.mjs.map +1 -1
  91. package/dist/context/providers/AttachmentRuntimeProvider.d.ts +6 -5
  92. package/dist/context/providers/AttachmentRuntimeProvider.d.ts.map +1 -1
  93. package/dist/context/providers/AttachmentRuntimeProvider.js +8 -6
  94. package/dist/context/providers/AttachmentRuntimeProvider.js.map +1 -1
  95. package/dist/context/providers/AttachmentRuntimeProvider.mjs +8 -6
  96. package/dist/context/providers/AttachmentRuntimeProvider.mjs.map +1 -1
  97. package/dist/context/providers/ContentPartRuntimeProvider.d.ts +6 -5
  98. package/dist/context/providers/ContentPartRuntimeProvider.d.ts.map +1 -1
  99. package/dist/context/providers/ContentPartRuntimeProvider.js +8 -9
  100. package/dist/context/providers/ContentPartRuntimeProvider.js.map +1 -1
  101. package/dist/context/providers/ContentPartRuntimeProvider.mjs +8 -9
  102. package/dist/context/providers/ContentPartRuntimeProvider.mjs.map +1 -1
  103. package/dist/context/providers/MessageRuntimeProvider.d.ts +6 -5
  104. package/dist/context/providers/MessageRuntimeProvider.d.ts.map +1 -1
  105. package/dist/context/providers/MessageRuntimeProvider.js +11 -9
  106. package/dist/context/providers/MessageRuntimeProvider.js.map +1 -1
  107. package/dist/context/providers/MessageRuntimeProvider.mjs +11 -9
  108. package/dist/context/providers/MessageRuntimeProvider.mjs.map +1 -1
  109. package/dist/context/providers/TextContentPartProvider.d.ts +7 -6
  110. package/dist/context/providers/TextContentPartProvider.d.ts.map +1 -1
  111. package/dist/context/providers/TextContentPartProvider.js +13 -7
  112. package/dist/context/providers/TextContentPartProvider.js.map +1 -1
  113. package/dist/context/providers/TextContentPartProvider.mjs +13 -7
  114. package/dist/context/providers/TextContentPartProvider.mjs.map +1 -1
  115. package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts +13 -0
  116. package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts.map +1 -0
  117. package/dist/context/providers/ThreadListItemRuntimeProvider.js +62 -0
  118. package/dist/context/providers/ThreadListItemRuntimeProvider.js.map +1 -0
  119. package/dist/context/providers/ThreadListItemRuntimeProvider.mjs +39 -0
  120. package/dist/context/providers/ThreadListItemRuntimeProvider.mjs.map +1 -0
  121. package/dist/context/providers/ThreadRuntimeProvider.js +11 -9
  122. package/dist/context/providers/ThreadRuntimeProvider.js.map +1 -1
  123. package/dist/context/providers/ThreadRuntimeProvider.mjs +10 -9
  124. package/dist/context/providers/ThreadRuntimeProvider.mjs.map +1 -1
  125. package/dist/context/providers/index.js +4 -2
  126. package/dist/context/providers/index.js.map +1 -1
  127. package/dist/context/providers/index.mjs +3 -2
  128. package/dist/context/providers/index.mjs.map +1 -1
  129. package/dist/context/react/AssistantContext.d.ts +35 -11
  130. package/dist/context/react/AssistantContext.d.ts.map +1 -1
  131. package/dist/context/react/AssistantContext.js +15 -13
  132. package/dist/context/react/AssistantContext.js.map +1 -1
  133. package/dist/context/react/AssistantContext.mjs +14 -12
  134. package/dist/context/react/AssistantContext.mjs.map +1 -1
  135. package/dist/context/react/AttachmentContext.js +8 -6
  136. package/dist/context/react/AttachmentContext.js.map +1 -1
  137. package/dist/context/react/AttachmentContext.mjs +8 -6
  138. package/dist/context/react/AttachmentContext.mjs.map +1 -1
  139. package/dist/context/react/ComposerContext.js +7 -5
  140. package/dist/context/react/ComposerContext.js.map +1 -1
  141. package/dist/context/react/ComposerContext.mjs +6 -5
  142. package/dist/context/react/ComposerContext.mjs.map +1 -1
  143. package/dist/context/react/ContentPartContext.js +7 -5
  144. package/dist/context/react/ContentPartContext.js.map +1 -1
  145. package/dist/context/react/ContentPartContext.mjs +7 -5
  146. package/dist/context/react/ContentPartContext.mjs.map +1 -1
  147. package/dist/context/react/MessageContext.js +9 -7
  148. package/dist/context/react/MessageContext.js.map +1 -1
  149. package/dist/context/react/MessageContext.mjs +9 -7
  150. package/dist/context/react/MessageContext.mjs.map +1 -1
  151. package/dist/context/react/ThreadContext.js +16 -14
  152. package/dist/context/react/ThreadContext.js.map +1 -1
  153. package/dist/context/react/ThreadContext.mjs +16 -14
  154. package/dist/context/react/ThreadContext.mjs.map +1 -1
  155. package/dist/context/react/ThreadListItemContext.d.ts +58 -0
  156. package/dist/context/react/ThreadListItemContext.d.ts.map +1 -0
  157. package/dist/context/react/ThreadListItemContext.js +53 -0
  158. package/dist/context/react/ThreadListItemContext.js.map +1 -0
  159. package/dist/context/react/ThreadListItemContext.mjs +25 -0
  160. package/dist/context/react/ThreadListItemContext.mjs.map +1 -0
  161. package/dist/context/react/index.d.ts +1 -1
  162. package/dist/context/react/index.d.ts.map +1 -1
  163. package/dist/context/react/index.js +10 -8
  164. package/dist/context/react/index.js.map +1 -1
  165. package/dist/context/react/index.mjs +9 -8
  166. package/dist/context/react/index.mjs.map +1 -1
  167. package/dist/context/react/utils/createContextHook.js +2 -0
  168. package/dist/context/react/utils/createContextHook.js.map +1 -1
  169. package/dist/context/react/utils/createContextHook.mjs +1 -0
  170. package/dist/context/react/utils/createContextHook.mjs.map +1 -1
  171. package/dist/context/react/utils/createContextStoreHook.js +2 -0
  172. package/dist/context/react/utils/createContextStoreHook.js.map +1 -1
  173. package/dist/context/react/utils/createContextStoreHook.mjs +1 -0
  174. package/dist/context/react/utils/createContextStoreHook.mjs.map +1 -1
  175. package/dist/context/stores/AssistantToolUIs.js +3 -1
  176. package/dist/context/stores/AssistantToolUIs.js.map +1 -1
  177. package/dist/context/stores/AssistantToolUIs.mjs +3 -1
  178. package/dist/context/stores/AssistantToolUIs.mjs.map +1 -1
  179. package/dist/context/stores/MessageUtils.js +3 -1
  180. package/dist/context/stores/MessageUtils.js.map +1 -1
  181. package/dist/context/stores/MessageUtils.mjs +2 -1
  182. package/dist/context/stores/MessageUtils.mjs.map +1 -1
  183. package/dist/context/stores/ThreadViewport.js +3 -1
  184. package/dist/context/stores/ThreadViewport.js.map +1 -1
  185. package/dist/context/stores/ThreadViewport.mjs +3 -1
  186. package/dist/context/stores/ThreadViewport.mjs.map +1 -1
  187. package/dist/context/stores/index.js +2 -0
  188. package/dist/context/stores/index.js.map +1 -1
  189. package/dist/edge.js +3 -1
  190. package/dist/edge.js.map +1 -1
  191. package/dist/edge.mjs +2 -1
  192. package/dist/edge.mjs.map +1 -1
  193. package/dist/hooks/index.js +4 -2
  194. package/dist/hooks/index.js.map +1 -1
  195. package/dist/hooks/index.mjs +3 -2
  196. package/dist/hooks/index.mjs.map +1 -1
  197. package/dist/hooks/useAppendMessage.js +4 -2
  198. package/dist/hooks/useAppendMessage.js.map +1 -1
  199. package/dist/hooks/useAppendMessage.mjs +3 -2
  200. package/dist/hooks/useAppendMessage.mjs.map +1 -1
  201. package/dist/hooks/useSwitchToNewThread.js +4 -2
  202. package/dist/hooks/useSwitchToNewThread.js.map +1 -1
  203. package/dist/hooks/useSwitchToNewThread.mjs +3 -2
  204. package/dist/hooks/useSwitchToNewThread.mjs.map +1 -1
  205. package/dist/index.js +21 -19
  206. package/dist/index.js.map +1 -1
  207. package/dist/index.mjs +11 -10
  208. package/dist/index.mjs.map +1 -1
  209. package/dist/internal.d.ts +1 -1
  210. package/dist/internal.d.ts.map +1 -1
  211. package/dist/internal.js +12 -10
  212. package/dist/internal.js.map +1 -1
  213. package/dist/internal.mjs +10 -9
  214. package/dist/internal.mjs.map +1 -1
  215. package/dist/model-config/index.js +8 -6
  216. package/dist/model-config/index.js.map +1 -1
  217. package/dist/model-config/index.mjs +7 -6
  218. package/dist/model-config/index.mjs.map +1 -1
  219. package/dist/model-config/makeAssistantTool.js +4 -2
  220. package/dist/model-config/makeAssistantTool.js.map +1 -1
  221. package/dist/model-config/makeAssistantTool.mjs +4 -2
  222. package/dist/model-config/makeAssistantTool.mjs.map +1 -1
  223. package/dist/model-config/makeAssistantToolUI.js +4 -2
  224. package/dist/model-config/makeAssistantToolUI.js.map +1 -1
  225. package/dist/model-config/makeAssistantToolUI.mjs +4 -2
  226. package/dist/model-config/makeAssistantToolUI.mjs.map +1 -1
  227. package/dist/model-config/useAssistantInstructions.js +4 -2
  228. package/dist/model-config/useAssistantInstructions.js.map +1 -1
  229. package/dist/model-config/useAssistantInstructions.mjs +4 -2
  230. package/dist/model-config/useAssistantInstructions.mjs.map +1 -1
  231. package/dist/model-config/useAssistantTool.js +4 -2
  232. package/dist/model-config/useAssistantTool.js.map +1 -1
  233. package/dist/model-config/useAssistantTool.mjs +4 -2
  234. package/dist/model-config/useAssistantTool.mjs.map +1 -1
  235. package/dist/model-config/useAssistantToolUI.js +4 -2
  236. package/dist/model-config/useAssistantToolUI.js.map +1 -1
  237. package/dist/model-config/useAssistantToolUI.mjs +4 -2
  238. package/dist/model-config/useAssistantToolUI.mjs.map +1 -1
  239. package/dist/model-config/useInlineRender.js +3 -1
  240. package/dist/model-config/useInlineRender.js.map +1 -1
  241. package/dist/model-config/useInlineRender.mjs +2 -1
  242. package/dist/model-config/useInlineRender.mjs.map +1 -1
  243. package/dist/primitive-hooks/actionBar/index.js +9 -7
  244. package/dist/primitive-hooks/actionBar/index.js.map +1 -1
  245. package/dist/primitive-hooks/actionBar/index.mjs +8 -7
  246. package/dist/primitive-hooks/actionBar/index.mjs.map +1 -1
  247. package/dist/primitive-hooks/actionBar/useActionBarCopy.js +5 -3
  248. package/dist/primitive-hooks/actionBar/useActionBarCopy.js.map +1 -1
  249. package/dist/primitive-hooks/actionBar/useActionBarCopy.mjs +4 -3
  250. package/dist/primitive-hooks/actionBar/useActionBarCopy.mjs.map +1 -1
  251. package/dist/primitive-hooks/actionBar/useActionBarEdit.js +4 -2
  252. package/dist/primitive-hooks/actionBar/useActionBarEdit.js.map +1 -1
  253. package/dist/primitive-hooks/actionBar/useActionBarEdit.mjs +3 -2
  254. package/dist/primitive-hooks/actionBar/useActionBarEdit.mjs.map +1 -1
  255. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js +4 -2
  256. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js.map +1 -1
  257. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.mjs +3 -2
  258. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.mjs.map +1 -1
  259. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js +4 -2
  260. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js.map +1 -1
  261. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.mjs +3 -2
  262. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.mjs.map +1 -1
  263. package/dist/primitive-hooks/actionBar/useActionBarReload.js +6 -4
  264. package/dist/primitive-hooks/actionBar/useActionBarReload.js.map +1 -1
  265. package/dist/primitive-hooks/actionBar/useActionBarReload.mjs +5 -4
  266. package/dist/primitive-hooks/actionBar/useActionBarReload.mjs.map +1 -1
  267. package/dist/primitive-hooks/actionBar/useActionBarSpeak.js +4 -2
  268. package/dist/primitive-hooks/actionBar/useActionBarSpeak.js.map +1 -1
  269. package/dist/primitive-hooks/actionBar/useActionBarSpeak.mjs +3 -2
  270. package/dist/primitive-hooks/actionBar/useActionBarSpeak.mjs.map +1 -1
  271. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js +4 -2
  272. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js.map +1 -1
  273. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.mjs +3 -2
  274. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.mjs.map +1 -1
  275. package/dist/primitive-hooks/attachment/useAttachmentRemove.js +4 -2
  276. package/dist/primitive-hooks/attachment/useAttachmentRemove.js.map +1 -1
  277. package/dist/primitive-hooks/attachment/useAttachmentRemove.mjs +3 -2
  278. package/dist/primitive-hooks/attachment/useAttachmentRemove.mjs.map +1 -1
  279. package/dist/primitive-hooks/branchPicker/index.js +6 -4
  280. package/dist/primitive-hooks/branchPicker/index.js.map +1 -1
  281. package/dist/primitive-hooks/branchPicker/index.mjs +5 -4
  282. package/dist/primitive-hooks/branchPicker/index.mjs.map +1 -1
  283. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js +4 -2
  284. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js.map +1 -1
  285. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.mjs +4 -2
  286. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.mjs.map +1 -1
  287. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js +4 -2
  288. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js.map +1 -1
  289. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.mjs +3 -2
  290. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.mjs.map +1 -1
  291. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js +4 -2
  292. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js.map +1 -1
  293. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.mjs +4 -2
  294. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.mjs.map +1 -1
  295. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js +4 -2
  296. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js.map +1 -1
  297. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.mjs +3 -2
  298. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.mjs.map +1 -1
  299. package/dist/primitive-hooks/composer/index.js +6 -4
  300. package/dist/primitive-hooks/composer/index.js.map +1 -1
  301. package/dist/primitive-hooks/composer/index.mjs +5 -4
  302. package/dist/primitive-hooks/composer/index.mjs.map +1 -1
  303. package/dist/primitive-hooks/composer/useComposerAddAttachment.js +4 -2
  304. package/dist/primitive-hooks/composer/useComposerAddAttachment.js.map +1 -1
  305. package/dist/primitive-hooks/composer/useComposerAddAttachment.mjs +3 -2
  306. package/dist/primitive-hooks/composer/useComposerAddAttachment.mjs.map +1 -1
  307. package/dist/primitive-hooks/composer/useComposerCancel.js +4 -2
  308. package/dist/primitive-hooks/composer/useComposerCancel.js.map +1 -1
  309. package/dist/primitive-hooks/composer/useComposerCancel.mjs +3 -2
  310. package/dist/primitive-hooks/composer/useComposerCancel.mjs.map +1 -1
  311. package/dist/primitive-hooks/composer/useComposerIf.js +4 -2
  312. package/dist/primitive-hooks/composer/useComposerIf.js.map +1 -1
  313. package/dist/primitive-hooks/composer/useComposerIf.mjs +4 -2
  314. package/dist/primitive-hooks/composer/useComposerIf.mjs.map +1 -1
  315. package/dist/primitive-hooks/composer/useComposerSend.js +6 -4
  316. package/dist/primitive-hooks/composer/useComposerSend.js.map +1 -1
  317. package/dist/primitive-hooks/composer/useComposerSend.mjs +5 -4
  318. package/dist/primitive-hooks/composer/useComposerSend.mjs.map +1 -1
  319. package/dist/primitive-hooks/contentPart/index.js +5 -3
  320. package/dist/primitive-hooks/contentPart/index.js.map +1 -1
  321. package/dist/primitive-hooks/contentPart/index.mjs +4 -3
  322. package/dist/primitive-hooks/contentPart/index.mjs.map +1 -1
  323. package/dist/primitive-hooks/contentPart/useContentPartDisplay.js +4 -2
  324. package/dist/primitive-hooks/contentPart/useContentPartDisplay.js.map +1 -1
  325. package/dist/primitive-hooks/contentPart/useContentPartDisplay.mjs +3 -2
  326. package/dist/primitive-hooks/contentPart/useContentPartDisplay.mjs.map +1 -1
  327. package/dist/primitive-hooks/contentPart/useContentPartImage.js +4 -2
  328. package/dist/primitive-hooks/contentPart/useContentPartImage.js.map +1 -1
  329. package/dist/primitive-hooks/contentPart/useContentPartImage.mjs +3 -2
  330. package/dist/primitive-hooks/contentPart/useContentPartImage.mjs.map +1 -1
  331. package/dist/primitive-hooks/contentPart/useContentPartText.js +4 -2
  332. package/dist/primitive-hooks/contentPart/useContentPartText.js.map +1 -1
  333. package/dist/primitive-hooks/contentPart/useContentPartText.mjs +3 -2
  334. package/dist/primitive-hooks/contentPart/useContentPartText.mjs.map +1 -1
  335. package/dist/primitive-hooks/index.js +14 -12
  336. package/dist/primitive-hooks/index.js.map +1 -1
  337. package/dist/primitive-hooks/index.mjs +7 -6
  338. package/dist/primitive-hooks/index.mjs.map +1 -1
  339. package/dist/primitive-hooks/message/index.js +3 -1
  340. package/dist/primitive-hooks/message/index.js.map +1 -1
  341. package/dist/primitive-hooks/message/index.mjs +2 -1
  342. package/dist/primitive-hooks/message/index.mjs.map +1 -1
  343. package/dist/primitive-hooks/message/useMessageIf.js +5 -3
  344. package/dist/primitive-hooks/message/useMessageIf.js.map +1 -1
  345. package/dist/primitive-hooks/message/useMessageIf.mjs +5 -3
  346. package/dist/primitive-hooks/message/useMessageIf.mjs.map +1 -1
  347. package/dist/primitive-hooks/thread/index.js +6 -4
  348. package/dist/primitive-hooks/thread/index.js.map +1 -1
  349. package/dist/primitive-hooks/thread/index.mjs +5 -4
  350. package/dist/primitive-hooks/thread/index.mjs.map +1 -1
  351. package/dist/primitive-hooks/thread/useThreadEmpty.js +4 -2
  352. package/dist/primitive-hooks/thread/useThreadEmpty.js.map +1 -1
  353. package/dist/primitive-hooks/thread/useThreadEmpty.mjs +3 -2
  354. package/dist/primitive-hooks/thread/useThreadEmpty.mjs.map +1 -1
  355. package/dist/primitive-hooks/thread/useThreadIf.js +4 -2
  356. package/dist/primitive-hooks/thread/useThreadIf.js.map +1 -1
  357. package/dist/primitive-hooks/thread/useThreadIf.mjs +4 -2
  358. package/dist/primitive-hooks/thread/useThreadIf.mjs.map +1 -1
  359. package/dist/primitive-hooks/thread/useThreadScrollToBottom.js +5 -3
  360. package/dist/primitive-hooks/thread/useThreadScrollToBottom.js.map +1 -1
  361. package/dist/primitive-hooks/thread/useThreadScrollToBottom.mjs +4 -3
  362. package/dist/primitive-hooks/thread/useThreadScrollToBottom.mjs.map +1 -1
  363. package/dist/primitive-hooks/thread/useThreadSuggestion.js +5 -3
  364. package/dist/primitive-hooks/thread/useThreadSuggestion.js.map +1 -1
  365. package/dist/primitive-hooks/thread/useThreadSuggestion.mjs +4 -3
  366. package/dist/primitive-hooks/thread/useThreadSuggestion.mjs.map +1 -1
  367. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.js +8 -6
  368. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.js.map +1 -1
  369. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.mjs +8 -6
  370. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.mjs.map +1 -1
  371. package/dist/primitives/actionBar/ActionBarCopy.js +6 -4
  372. package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
  373. package/dist/primitives/actionBar/ActionBarCopy.mjs +6 -4
  374. package/dist/primitives/actionBar/ActionBarCopy.mjs.map +1 -1
  375. package/dist/primitives/actionBar/ActionBarEdit.js +5 -3
  376. package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
  377. package/dist/primitives/actionBar/ActionBarEdit.mjs +5 -3
  378. package/dist/primitives/actionBar/ActionBarEdit.mjs.map +1 -1
  379. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +6 -4
  380. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
  381. package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs +6 -4
  382. package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs.map +1 -1
  383. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +6 -4
  384. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
  385. package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs +6 -4
  386. package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs.map +1 -1
  387. package/dist/primitives/actionBar/ActionBarReload.js +5 -3
  388. package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
  389. package/dist/primitives/actionBar/ActionBarReload.mjs +5 -3
  390. package/dist/primitives/actionBar/ActionBarReload.mjs.map +1 -1
  391. package/dist/primitives/actionBar/ActionBarRoot.js +5 -3
  392. package/dist/primitives/actionBar/ActionBarRoot.js.map +1 -1
  393. package/dist/primitives/actionBar/ActionBarRoot.mjs +5 -3
  394. package/dist/primitives/actionBar/ActionBarRoot.mjs.map +1 -1
  395. package/dist/primitives/actionBar/ActionBarSpeak.js +5 -3
  396. package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
  397. package/dist/primitives/actionBar/ActionBarSpeak.mjs +5 -3
  398. package/dist/primitives/actionBar/ActionBarSpeak.mjs.map +1 -1
  399. package/dist/primitives/actionBar/ActionBarStopSpeaking.js +5 -3
  400. package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
  401. package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs +5 -3
  402. package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs.map +1 -1
  403. package/dist/primitives/actionBar/index.js +10 -8
  404. package/dist/primitives/actionBar/index.js.map +1 -1
  405. package/dist/primitives/actionBar/index.mjs +9 -8
  406. package/dist/primitives/actionBar/index.mjs.map +1 -1
  407. package/dist/primitives/actionBar/types.js +2 -0
  408. package/dist/primitives/actionBar/types.js.map +1 -1
  409. package/dist/primitives/actionBar/useActionBarFloatStatus.js +6 -4
  410. package/dist/primitives/actionBar/useActionBarFloatStatus.js.map +1 -1
  411. package/dist/primitives/actionBar/useActionBarFloatStatus.mjs +6 -4
  412. package/dist/primitives/actionBar/useActionBarFloatStatus.mjs.map +1 -1
  413. package/dist/primitives/assistantModal/AssistantModalAnchor.js +5 -3
  414. package/dist/primitives/assistantModal/AssistantModalAnchor.js.map +1 -1
  415. package/dist/primitives/assistantModal/AssistantModalAnchor.mjs +5 -3
  416. package/dist/primitives/assistantModal/AssistantModalAnchor.mjs.map +1 -1
  417. package/dist/primitives/assistantModal/AssistantModalContent.js +5 -3
  418. package/dist/primitives/assistantModal/AssistantModalContent.js.map +1 -1
  419. package/dist/primitives/assistantModal/AssistantModalContent.mjs +5 -3
  420. package/dist/primitives/assistantModal/AssistantModalContent.mjs.map +1 -1
  421. package/dist/primitives/assistantModal/AssistantModalRoot.js +7 -5
  422. package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
  423. package/dist/primitives/assistantModal/AssistantModalRoot.mjs +7 -5
  424. package/dist/primitives/assistantModal/AssistantModalRoot.mjs.map +1 -1
  425. package/dist/primitives/assistantModal/AssistantModalTrigger.js +5 -3
  426. package/dist/primitives/assistantModal/AssistantModalTrigger.js.map +1 -1
  427. package/dist/primitives/assistantModal/AssistantModalTrigger.mjs +5 -3
  428. package/dist/primitives/assistantModal/AssistantModalTrigger.mjs.map +1 -1
  429. package/dist/primitives/assistantModal/index.js +6 -4
  430. package/dist/primitives/assistantModal/index.js.map +1 -1
  431. package/dist/primitives/assistantModal/index.mjs +5 -4
  432. package/dist/primitives/assistantModal/index.mjs.map +1 -1
  433. package/dist/primitives/assistantModal/scope.js +3 -1
  434. package/dist/primitives/assistantModal/scope.js.map +1 -1
  435. package/dist/primitives/assistantModal/scope.mjs +2 -1
  436. package/dist/primitives/assistantModal/scope.mjs.map +1 -1
  437. package/dist/primitives/assistantModal/types.js +2 -0
  438. package/dist/primitives/assistantModal/types.js.map +1 -1
  439. package/dist/primitives/attachment/AttachmentName.js +4 -2
  440. package/dist/primitives/attachment/AttachmentName.js.map +1 -1
  441. package/dist/primitives/attachment/AttachmentName.mjs +4 -2
  442. package/dist/primitives/attachment/AttachmentName.mjs.map +1 -1
  443. package/dist/primitives/attachment/AttachmentRemove.js +5 -3
  444. package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
  445. package/dist/primitives/attachment/AttachmentRemove.mjs +5 -3
  446. package/dist/primitives/attachment/AttachmentRemove.mjs.map +1 -1
  447. package/dist/primitives/attachment/AttachmentRoot.js +4 -2
  448. package/dist/primitives/attachment/AttachmentRoot.js.map +1 -1
  449. package/dist/primitives/attachment/AttachmentRoot.mjs +3 -2
  450. package/dist/primitives/attachment/AttachmentRoot.mjs.map +1 -1
  451. package/dist/primitives/attachment/AttachmentThumb.js +5 -3
  452. package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
  453. package/dist/primitives/attachment/AttachmentThumb.mjs +5 -3
  454. package/dist/primitives/attachment/AttachmentThumb.mjs.map +1 -1
  455. package/dist/primitives/attachment/index.js +6 -4
  456. package/dist/primitives/attachment/index.js.map +1 -1
  457. package/dist/primitives/attachment/index.mjs +5 -4
  458. package/dist/primitives/attachment/index.mjs.map +1 -1
  459. package/dist/primitives/branchPicker/BranchPickerCount.js +4 -2
  460. package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
  461. package/dist/primitives/branchPicker/BranchPickerCount.mjs +4 -2
  462. package/dist/primitives/branchPicker/BranchPickerCount.mjs.map +1 -1
  463. package/dist/primitives/branchPicker/BranchPickerNext.js +5 -3
  464. package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
  465. package/dist/primitives/branchPicker/BranchPickerNext.mjs +5 -3
  466. package/dist/primitives/branchPicker/BranchPickerNext.mjs.map +1 -1
  467. package/dist/primitives/branchPicker/BranchPickerNumber.js +4 -2
  468. package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
  469. package/dist/primitives/branchPicker/BranchPickerNumber.mjs +4 -2
  470. package/dist/primitives/branchPicker/BranchPickerNumber.mjs.map +1 -1
  471. package/dist/primitives/branchPicker/BranchPickerPrevious.js +5 -3
  472. package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
  473. package/dist/primitives/branchPicker/BranchPickerPrevious.mjs +5 -3
  474. package/dist/primitives/branchPicker/BranchPickerPrevious.mjs.map +1 -1
  475. package/dist/primitives/branchPicker/BranchPickerRoot.js +5 -3
  476. package/dist/primitives/branchPicker/BranchPickerRoot.js.map +1 -1
  477. package/dist/primitives/branchPicker/BranchPickerRoot.mjs +5 -3
  478. package/dist/primitives/branchPicker/BranchPickerRoot.mjs.map +1 -1
  479. package/dist/primitives/branchPicker/index.js +7 -5
  480. package/dist/primitives/branchPicker/index.js.map +1 -1
  481. package/dist/primitives/branchPicker/index.mjs +6 -5
  482. package/dist/primitives/branchPicker/index.mjs.map +1 -1
  483. package/dist/primitives/branchPicker/types.js +2 -0
  484. package/dist/primitives/branchPicker/types.js.map +1 -1
  485. package/dist/primitives/composer/ComposerAddAttachment.js +5 -3
  486. package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
  487. package/dist/primitives/composer/ComposerAddAttachment.mjs +5 -3
  488. package/dist/primitives/composer/ComposerAddAttachment.mjs.map +1 -1
  489. package/dist/primitives/composer/ComposerAttachments.js +11 -9
  490. package/dist/primitives/composer/ComposerAttachments.js.map +1 -1
  491. package/dist/primitives/composer/ComposerAttachments.mjs +11 -9
  492. package/dist/primitives/composer/ComposerAttachments.mjs.map +1 -1
  493. package/dist/primitives/composer/ComposerCancel.js +5 -3
  494. package/dist/primitives/composer/ComposerCancel.js.map +1 -1
  495. package/dist/primitives/composer/ComposerCancel.mjs +5 -3
  496. package/dist/primitives/composer/ComposerCancel.mjs.map +1 -1
  497. package/dist/primitives/composer/ComposerIf.js +4 -2
  498. package/dist/primitives/composer/ComposerIf.js.map +1 -1
  499. package/dist/primitives/composer/ComposerIf.mjs +4 -2
  500. package/dist/primitives/composer/ComposerIf.mjs.map +1 -1
  501. package/dist/primitives/composer/ComposerInput.js +7 -5
  502. package/dist/primitives/composer/ComposerInput.js.map +1 -1
  503. package/dist/primitives/composer/ComposerInput.mjs +7 -5
  504. package/dist/primitives/composer/ComposerInput.mjs.map +1 -1
  505. package/dist/primitives/composer/ComposerRoot.js +5 -3
  506. package/dist/primitives/composer/ComposerRoot.js.map +1 -1
  507. package/dist/primitives/composer/ComposerRoot.mjs +5 -3
  508. package/dist/primitives/composer/ComposerRoot.mjs.map +1 -1
  509. package/dist/primitives/composer/ComposerSend.js +5 -3
  510. package/dist/primitives/composer/ComposerSend.js.map +1 -1
  511. package/dist/primitives/composer/ComposerSend.mjs +5 -3
  512. package/dist/primitives/composer/ComposerSend.mjs.map +1 -1
  513. package/dist/primitives/composer/index.js +9 -7
  514. package/dist/primitives/composer/index.js.map +1 -1
  515. package/dist/primitives/composer/index.mjs +8 -7
  516. package/dist/primitives/composer/index.mjs.map +1 -1
  517. package/dist/primitives/composer/types.js +2 -0
  518. package/dist/primitives/composer/types.js.map +1 -1
  519. package/dist/primitives/contentPart/ContentPartDisplay.js +4 -2
  520. package/dist/primitives/contentPart/ContentPartDisplay.js.map +1 -1
  521. package/dist/primitives/contentPart/ContentPartDisplay.mjs +3 -2
  522. package/dist/primitives/contentPart/ContentPartDisplay.mjs.map +1 -1
  523. package/dist/primitives/contentPart/ContentPartImage.js +5 -3
  524. package/dist/primitives/contentPart/ContentPartImage.js.map +1 -1
  525. package/dist/primitives/contentPart/ContentPartImage.mjs +4 -3
  526. package/dist/primitives/contentPart/ContentPartImage.mjs.map +1 -1
  527. package/dist/primitives/contentPart/ContentPartInProgress.js +4 -2
  528. package/dist/primitives/contentPart/ContentPartInProgress.js.map +1 -1
  529. package/dist/primitives/contentPart/ContentPartInProgress.mjs +3 -2
  530. package/dist/primitives/contentPart/ContentPartInProgress.mjs.map +1 -1
  531. package/dist/primitives/contentPart/ContentPartText.js +6 -4
  532. package/dist/primitives/contentPart/ContentPartText.js.map +1 -1
  533. package/dist/primitives/contentPart/ContentPartText.mjs +6 -4
  534. package/dist/primitives/contentPart/ContentPartText.mjs.map +1 -1
  535. package/dist/primitives/contentPart/index.js +6 -4
  536. package/dist/primitives/contentPart/index.js.map +1 -1
  537. package/dist/primitives/contentPart/index.mjs +5 -4
  538. package/dist/primitives/contentPart/index.mjs.map +1 -1
  539. package/dist/primitives/contentPart/types.js +2 -0
  540. package/dist/primitives/contentPart/types.js.map +1 -1
  541. package/dist/primitives/index.d.ts +2 -0
  542. package/dist/primitives/index.d.ts.map +1 -1
  543. package/dist/primitives/index.js +16 -8
  544. package/dist/primitives/index.js.map +1 -1
  545. package/dist/primitives/index.mjs +13 -8
  546. package/dist/primitives/index.mjs.map +1 -1
  547. package/dist/primitives/message/MessageAttachments.js +11 -9
  548. package/dist/primitives/message/MessageAttachments.js.map +1 -1
  549. package/dist/primitives/message/MessageAttachments.mjs +11 -9
  550. package/dist/primitives/message/MessageAttachments.mjs.map +1 -1
  551. package/dist/primitives/message/MessageContent.js +17 -15
  552. package/dist/primitives/message/MessageContent.js.map +1 -1
  553. package/dist/primitives/message/MessageContent.mjs +17 -15
  554. package/dist/primitives/message/MessageContent.mjs.map +1 -1
  555. package/dist/primitives/message/MessageIf.js +4 -2
  556. package/dist/primitives/message/MessageIf.js.map +1 -1
  557. package/dist/primitives/message/MessageIf.mjs +4 -2
  558. package/dist/primitives/message/MessageIf.mjs.map +1 -1
  559. package/dist/primitives/message/MessageInProgress.js +3 -1
  560. package/dist/primitives/message/MessageInProgress.js.map +1 -1
  561. package/dist/primitives/message/MessageInProgress.mjs +3 -1
  562. package/dist/primitives/message/MessageInProgress.mjs.map +1 -1
  563. package/dist/primitives/message/MessageRoot.js +7 -5
  564. package/dist/primitives/message/MessageRoot.js.map +1 -1
  565. package/dist/primitives/message/MessageRoot.mjs +7 -5
  566. package/dist/primitives/message/MessageRoot.mjs.map +1 -1
  567. package/dist/primitives/message/index.js +7 -5
  568. package/dist/primitives/message/index.js.map +1 -1
  569. package/dist/primitives/message/index.mjs +6 -5
  570. package/dist/primitives/message/index.mjs.map +1 -1
  571. package/dist/primitives/message/types.js +2 -0
  572. package/dist/primitives/message/types.js.map +1 -1
  573. package/dist/primitives/thread/ThreadEmpty.js +4 -2
  574. package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
  575. package/dist/primitives/thread/ThreadEmpty.mjs +4 -2
  576. package/dist/primitives/thread/ThreadEmpty.mjs.map +1 -1
  577. package/dist/primitives/thread/ThreadIf.js +4 -2
  578. package/dist/primitives/thread/ThreadIf.js.map +1 -1
  579. package/dist/primitives/thread/ThreadIf.mjs +4 -2
  580. package/dist/primitives/thread/ThreadIf.mjs.map +1 -1
  581. package/dist/primitives/thread/ThreadMessages.js +14 -12
  582. package/dist/primitives/thread/ThreadMessages.js.map +1 -1
  583. package/dist/primitives/thread/ThreadMessages.mjs +14 -12
  584. package/dist/primitives/thread/ThreadMessages.mjs.map +1 -1
  585. package/dist/primitives/thread/ThreadRoot.js +4 -2
  586. package/dist/primitives/thread/ThreadRoot.js.map +1 -1
  587. package/dist/primitives/thread/ThreadRoot.mjs +4 -2
  588. package/dist/primitives/thread/ThreadRoot.mjs.map +1 -1
  589. package/dist/primitives/thread/ThreadScrollToBottom.js +5 -3
  590. package/dist/primitives/thread/ThreadScrollToBottom.js.map +1 -1
  591. package/dist/primitives/thread/ThreadScrollToBottom.mjs +5 -3
  592. package/dist/primitives/thread/ThreadScrollToBottom.mjs.map +1 -1
  593. package/dist/primitives/thread/ThreadSuggestion.js +5 -3
  594. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  595. package/dist/primitives/thread/ThreadSuggestion.mjs +5 -3
  596. package/dist/primitives/thread/ThreadSuggestion.mjs.map +1 -1
  597. package/dist/primitives/thread/ThreadViewport.js +5 -3
  598. package/dist/primitives/thread/ThreadViewport.js.map +1 -1
  599. package/dist/primitives/thread/ThreadViewport.mjs +5 -3
  600. package/dist/primitives/thread/ThreadViewport.mjs.map +1 -1
  601. package/dist/primitives/thread/index.js +9 -7
  602. package/dist/primitives/thread/index.js.map +1 -1
  603. package/dist/primitives/thread/index.mjs +8 -7
  604. package/dist/primitives/thread/index.mjs.map +1 -1
  605. package/dist/primitives/thread/types.js +2 -0
  606. package/dist/primitives/thread/types.js.map +1 -1
  607. package/dist/primitives/threadList/ThreadListItems.d.ts +11 -0
  608. package/dist/primitives/threadList/ThreadListItems.d.ts.map +1 -0
  609. package/dist/primitives/threadList/ThreadListItems.js +72 -0
  610. package/dist/primitives/threadList/ThreadListItems.js.map +1 -0
  611. package/dist/primitives/threadList/ThreadListItems.mjs +48 -0
  612. package/dist/primitives/threadList/ThreadListItems.mjs.map +1 -0
  613. package/dist/primitives/threadList/ThreadListNew.d.ts +13 -0
  614. package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -0
  615. package/dist/primitives/threadList/ThreadListNew.js +43 -0
  616. package/dist/primitives/threadList/ThreadListNew.js.map +1 -0
  617. package/dist/primitives/threadList/ThreadListNew.mjs +21 -0
  618. package/dist/primitives/threadList/ThreadListNew.mjs.map +1 -0
  619. package/dist/primitives/threadList/index.d.ts +3 -0
  620. package/dist/primitives/threadList/index.d.ts.map +1 -0
  621. package/dist/primitives/threadList/index.js +34 -0
  622. package/dist/primitives/threadList/index.js.map +1 -0
  623. package/dist/primitives/threadList/index.mjs +8 -0
  624. package/dist/primitives/threadList/index.mjs.map +1 -0
  625. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts +13 -0
  626. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts.map +1 -0
  627. package/dist/primitives/threadListItem/ThreadListItemArchive.js +43 -0
  628. package/dist/primitives/threadListItem/ThreadListItemArchive.js.map +1 -0
  629. package/dist/primitives/threadListItem/ThreadListItemArchive.mjs +21 -0
  630. package/dist/primitives/threadListItem/ThreadListItemArchive.mjs.map +1 -0
  631. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts +13 -0
  632. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -0
  633. package/dist/primitives/threadListItem/ThreadListItemDelete.js +43 -0
  634. package/dist/primitives/threadListItem/ThreadListItemDelete.js.map +1 -0
  635. package/dist/primitives/threadListItem/ThreadListItemDelete.mjs +21 -0
  636. package/dist/primitives/threadListItem/ThreadListItemDelete.mjs.map +1 -0
  637. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts +13 -0
  638. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -0
  639. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js +43 -0
  640. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js.map +1 -0
  641. package/dist/primitives/threadListItem/ThreadListItemUnarchive.mjs +21 -0
  642. package/dist/primitives/threadListItem/ThreadListItemUnarchive.mjs.map +1 -0
  643. package/dist/primitives/threadListItem/index.d.ts +4 -0
  644. package/dist/primitives/threadListItem/index.d.ts.map +1 -0
  645. package/dist/primitives/threadListItem/index.js +37 -0
  646. package/dist/primitives/threadListItem/index.js.map +1 -0
  647. package/dist/primitives/threadListItem/index.mjs +10 -0
  648. package/dist/primitives/threadListItem/index.mjs.map +1 -0
  649. package/dist/runtimes/attachment/AttachmentAdapter.js +2 -0
  650. package/dist/runtimes/attachment/AttachmentAdapter.js.map +1 -1
  651. package/dist/runtimes/attachment/CompositeAttachmentAdapter.js +4 -2
  652. package/dist/runtimes/attachment/CompositeAttachmentAdapter.js.map +1 -1
  653. package/dist/runtimes/attachment/CompositeAttachmentAdapter.mjs +3 -2
  654. package/dist/runtimes/attachment/CompositeAttachmentAdapter.mjs.map +1 -1
  655. package/dist/runtimes/attachment/SimpleImageAttachmentAdapter.js +5 -3
  656. package/dist/runtimes/attachment/SimpleImageAttachmentAdapter.js.map +1 -1
  657. package/dist/runtimes/attachment/SimpleImageAttachmentAdapter.mjs +4 -3
  658. package/dist/runtimes/attachment/SimpleImageAttachmentAdapter.mjs.map +1 -1
  659. package/dist/runtimes/attachment/SimpleTextAttachmentAdapter.js +5 -3
  660. package/dist/runtimes/attachment/SimpleTextAttachmentAdapter.js.map +1 -1
  661. package/dist/runtimes/attachment/SimpleTextAttachmentAdapter.mjs +4 -3
  662. package/dist/runtimes/attachment/SimpleTextAttachmentAdapter.mjs.map +1 -1
  663. package/dist/runtimes/attachment/index.js +5 -3
  664. package/dist/runtimes/attachment/index.js.map +1 -1
  665. package/dist/runtimes/attachment/index.mjs +4 -3
  666. package/dist/runtimes/attachment/index.mjs.map +1 -1
  667. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts +5 -1
  668. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts.map +1 -1
  669. package/dist/runtimes/composer/BaseComposerRuntimeCore.js +19 -8
  670. package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
  671. package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs +18 -8
  672. package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs.map +1 -1
  673. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.d.ts.map +1 -1
  674. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js +8 -5
  675. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js.map +1 -1
  676. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.mjs +7 -5
  677. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.mjs.map +1 -1
  678. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js +5 -3
  679. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js.map +1 -1
  680. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.mjs +4 -3
  681. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.mjs.map +1 -1
  682. package/dist/runtimes/core/AssistantRuntimeCore.d.ts +2 -2
  683. package/dist/runtimes/core/AssistantRuntimeCore.d.ts.map +1 -1
  684. package/dist/runtimes/core/AssistantRuntimeCore.js +2 -0
  685. package/dist/runtimes/core/AssistantRuntimeCore.js.map +1 -1
  686. package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts +2 -2
  687. package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts.map +1 -1
  688. package/dist/runtimes/core/BaseAssistantRuntimeCore.js +5 -3
  689. package/dist/runtimes/core/BaseAssistantRuntimeCore.js.map +1 -1
  690. package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs +4 -3
  691. package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs.map +1 -1
  692. package/dist/runtimes/core/BaseThreadRuntimeCore.js +8 -6
  693. package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
  694. package/dist/runtimes/core/BaseThreadRuntimeCore.mjs +7 -6
  695. package/dist/runtimes/core/BaseThreadRuntimeCore.mjs.map +1 -1
  696. package/dist/runtimes/core/ComposerRuntimeCore.d.ts +3 -0
  697. package/dist/runtimes/core/ComposerRuntimeCore.d.ts.map +1 -1
  698. package/dist/runtimes/core/ComposerRuntimeCore.js +2 -0
  699. package/dist/runtimes/core/ComposerRuntimeCore.js.map +1 -1
  700. package/dist/runtimes/core/{ThreadManagerRuntimeCore.d.ts → ThreadListRuntimeCore.d.ts} +7 -6
  701. package/dist/runtimes/core/ThreadListRuntimeCore.d.ts.map +1 -0
  702. package/dist/runtimes/core/{ThreadManagerRuntimeCore.js → ThreadListRuntimeCore.js} +5 -3
  703. package/dist/runtimes/core/ThreadListRuntimeCore.js.map +1 -0
  704. package/dist/runtimes/core/ThreadListRuntimeCore.mjs +1 -0
  705. package/dist/runtimes/core/ThreadRuntimeCore.js +2 -0
  706. package/dist/runtimes/core/ThreadRuntimeCore.js.map +1 -1
  707. package/dist/runtimes/core/index.js +3 -1
  708. package/dist/runtimes/core/index.js.map +1 -1
  709. package/dist/runtimes/core/index.mjs +2 -1
  710. package/dist/runtimes/core/index.mjs.map +1 -1
  711. package/dist/runtimes/core/subscribeToMainThread.js +5 -3
  712. package/dist/runtimes/core/subscribeToMainThread.js.map +1 -1
  713. package/dist/runtimes/core/subscribeToMainThread.mjs +4 -3
  714. package/dist/runtimes/core/subscribeToMainThread.mjs.map +1 -1
  715. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js +10 -8
  716. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js.map +1 -1
  717. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.mjs +9 -8
  718. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.mjs.map +1 -1
  719. package/dist/runtimes/dangerous-in-browser/index.js +3 -1
  720. package/dist/runtimes/dangerous-in-browser/index.js.map +1 -1
  721. package/dist/runtimes/dangerous-in-browser/index.mjs +2 -1
  722. package/dist/runtimes/dangerous-in-browser/index.mjs.map +1 -1
  723. package/dist/runtimes/dangerous-in-browser/useDangerousInBrowserRuntime.js +6 -4
  724. package/dist/runtimes/dangerous-in-browser/useDangerousInBrowserRuntime.js.map +1 -1
  725. package/dist/runtimes/dangerous-in-browser/useDangerousInBrowserRuntime.mjs +5 -4
  726. package/dist/runtimes/dangerous-in-browser/useDangerousInBrowserRuntime.mjs.map +1 -1
  727. package/dist/runtimes/edge/EdgeChatAdapter.js +11 -9
  728. package/dist/runtimes/edge/EdgeChatAdapter.js.map +1 -1
  729. package/dist/runtimes/edge/EdgeChatAdapter.mjs +10 -9
  730. package/dist/runtimes/edge/EdgeChatAdapter.mjs.map +1 -1
  731. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js +13 -11
  732. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js.map +1 -1
  733. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs +12 -11
  734. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs.map +1 -1
  735. package/dist/runtimes/edge/converters/fromCoreMessage.js +5 -3
  736. package/dist/runtimes/edge/converters/fromCoreMessage.js.map +1 -1
  737. package/dist/runtimes/edge/converters/fromCoreMessage.mjs +4 -3
  738. package/dist/runtimes/edge/converters/fromCoreMessage.mjs.map +1 -1
  739. package/dist/runtimes/edge/converters/fromLanguageModelMessages.js +3 -1
  740. package/dist/runtimes/edge/converters/fromLanguageModelMessages.js.map +1 -1
  741. package/dist/runtimes/edge/converters/fromLanguageModelMessages.mjs +2 -1
  742. package/dist/runtimes/edge/converters/fromLanguageModelMessages.mjs.map +1 -1
  743. package/dist/runtimes/edge/converters/fromLanguageModelTools.js +3 -1
  744. package/dist/runtimes/edge/converters/fromLanguageModelTools.js.map +1 -1
  745. package/dist/runtimes/edge/converters/fromLanguageModelTools.mjs +2 -1
  746. package/dist/runtimes/edge/converters/fromLanguageModelTools.mjs.map +1 -1
  747. package/dist/runtimes/edge/converters/index.js +8 -6
  748. package/dist/runtimes/edge/converters/index.js.map +1 -1
  749. package/dist/runtimes/edge/converters/index.mjs +7 -6
  750. package/dist/runtimes/edge/converters/index.mjs.map +1 -1
  751. package/dist/runtimes/edge/converters/toCoreMessages.js +4 -2
  752. package/dist/runtimes/edge/converters/toCoreMessages.js.map +1 -1
  753. package/dist/runtimes/edge/converters/toCoreMessages.mjs +3 -2
  754. package/dist/runtimes/edge/converters/toCoreMessages.mjs.map +1 -1
  755. package/dist/runtimes/edge/converters/toLanguageModelMessages.js +3 -1
  756. package/dist/runtimes/edge/converters/toLanguageModelMessages.js.map +1 -1
  757. package/dist/runtimes/edge/converters/toLanguageModelMessages.mjs +2 -1
  758. package/dist/runtimes/edge/converters/toLanguageModelMessages.mjs.map +1 -1
  759. package/dist/runtimes/edge/converters/toLanguageModelTools.js +3 -1
  760. package/dist/runtimes/edge/converters/toLanguageModelTools.js.map +1 -1
  761. package/dist/runtimes/edge/converters/toLanguageModelTools.mjs +2 -1
  762. package/dist/runtimes/edge/converters/toLanguageModelTools.mjs.map +1 -1
  763. package/dist/runtimes/edge/createEdgeRuntimeAPI.js +15 -13
  764. package/dist/runtimes/edge/createEdgeRuntimeAPI.js.map +1 -1
  765. package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs +14 -13
  766. package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs.map +1 -1
  767. package/dist/runtimes/edge/index.js +8 -6
  768. package/dist/runtimes/edge/index.js.map +1 -1
  769. package/dist/runtimes/edge/index.mjs +5 -4
  770. package/dist/runtimes/edge/index.mjs.map +1 -1
  771. package/dist/runtimes/edge/partial-json/fix-json.js +2 -0
  772. package/dist/runtimes/edge/partial-json/fix-json.js.map +1 -1
  773. package/dist/runtimes/edge/partial-json/fix-json.mjs +1 -0
  774. package/dist/runtimes/edge/partial-json/fix-json.mjs.map +1 -1
  775. package/dist/runtimes/edge/partial-json/parse-partial-json.js +4 -2
  776. package/dist/runtimes/edge/partial-json/parse-partial-json.js.map +1 -1
  777. package/dist/runtimes/edge/partial-json/parse-partial-json.mjs +3 -2
  778. package/dist/runtimes/edge/partial-json/parse-partial-json.mjs.map +1 -1
  779. package/dist/runtimes/edge/streams/AssistantStreamChunkType.js +2 -0
  780. package/dist/runtimes/edge/streams/AssistantStreamChunkType.js.map +1 -1
  781. package/dist/runtimes/edge/streams/AssistantStreamChunkType.mjs +1 -0
  782. package/dist/runtimes/edge/streams/AssistantStreamChunkType.mjs.map +1 -1
  783. package/dist/runtimes/edge/streams/assistantDecoderStream.js +3 -1
  784. package/dist/runtimes/edge/streams/assistantDecoderStream.js.map +1 -1
  785. package/dist/runtimes/edge/streams/assistantDecoderStream.mjs +2 -1
  786. package/dist/runtimes/edge/streams/assistantDecoderStream.mjs.map +1 -1
  787. package/dist/runtimes/edge/streams/assistantEncoderStream.js +3 -1
  788. package/dist/runtimes/edge/streams/assistantEncoderStream.js.map +1 -1
  789. package/dist/runtimes/edge/streams/assistantEncoderStream.mjs +2 -1
  790. package/dist/runtimes/edge/streams/assistantEncoderStream.mjs.map +1 -1
  791. package/dist/runtimes/edge/streams/runResultStream.js +10 -8
  792. package/dist/runtimes/edge/streams/runResultStream.js.map +1 -1
  793. package/dist/runtimes/edge/streams/runResultStream.mjs +9 -8
  794. package/dist/runtimes/edge/streams/runResultStream.mjs.map +1 -1
  795. package/dist/runtimes/edge/streams/toolResultStream.js +2 -0
  796. package/dist/runtimes/edge/streams/toolResultStream.js.map +1 -1
  797. package/dist/runtimes/edge/streams/toolResultStream.mjs +1 -0
  798. package/dist/runtimes/edge/streams/toolResultStream.mjs.map +1 -1
  799. package/dist/runtimes/edge/streams/utils/PipeableTransformStream.js +4 -2
  800. package/dist/runtimes/edge/streams/utils/PipeableTransformStream.js.map +1 -1
  801. package/dist/runtimes/edge/streams/utils/PipeableTransformStream.mjs +3 -2
  802. package/dist/runtimes/edge/streams/utils/PipeableTransformStream.mjs.map +1 -1
  803. package/dist/runtimes/edge/streams/utils/StreamPart.js +2 -0
  804. package/dist/runtimes/edge/streams/utils/StreamPart.js.map +1 -1
  805. package/dist/runtimes/edge/streams/utils/chunkByLineStream.js +2 -0
  806. package/dist/runtimes/edge/streams/utils/chunkByLineStream.js.map +1 -1
  807. package/dist/runtimes/edge/streams/utils/chunkByLineStream.mjs +1 -0
  808. package/dist/runtimes/edge/streams/utils/chunkByLineStream.mjs.map +1 -1
  809. package/dist/runtimes/edge/streams/utils/index.js +5 -3
  810. package/dist/runtimes/edge/streams/utils/index.js.map +1 -1
  811. package/dist/runtimes/edge/streams/utils/index.mjs +4 -3
  812. package/dist/runtimes/edge/streams/utils/index.mjs.map +1 -1
  813. package/dist/runtimes/edge/streams/utils/streamPartDecoderStream.js +5 -3
  814. package/dist/runtimes/edge/streams/utils/streamPartDecoderStream.js.map +1 -1
  815. package/dist/runtimes/edge/streams/utils/streamPartDecoderStream.mjs +4 -3
  816. package/dist/runtimes/edge/streams/utils/streamPartDecoderStream.mjs.map +1 -1
  817. package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.js +3 -1
  818. package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.js.map +1 -1
  819. package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.mjs +2 -1
  820. package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.mjs.map +1 -1
  821. package/dist/runtimes/edge/useEdgeRuntime.js +6 -4
  822. package/dist/runtimes/edge/useEdgeRuntime.js.map +1 -1
  823. package/dist/runtimes/edge/useEdgeRuntime.mjs +5 -4
  824. package/dist/runtimes/edge/useEdgeRuntime.mjs.map +1 -1
  825. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts +8 -8
  826. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts.map +1 -1
  827. package/dist/runtimes/external-store/ExternalStoreAdapter.js +2 -0
  828. package/dist/runtimes/external-store/ExternalStoreAdapter.js.map +1 -1
  829. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts +2 -2
  830. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts.map +1 -1
  831. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +14 -12
  832. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
  833. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs +13 -12
  834. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs.map +1 -1
  835. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts +35 -0
  836. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts.map +1 -0
  837. package/dist/runtimes/external-store/{ExternalStoreThreadManagementAdapter.js → ExternalStoreThreadListRuntimeCore.js} +21 -10
  838. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js.map +1 -0
  839. package/dist/runtimes/external-store/{ExternalStoreThreadManagementAdapter.mjs → ExternalStoreThreadListRuntimeCore.mjs} +16 -6
  840. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.mjs.map +1 -0
  841. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts +1 -1
  842. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +12 -10
  843. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
  844. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs +11 -10
  845. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs.map +1 -1
  846. package/dist/runtimes/external-store/ThreadMessageConverter.js +4 -2
  847. package/dist/runtimes/external-store/ThreadMessageConverter.js.map +1 -1
  848. package/dist/runtimes/external-store/ThreadMessageConverter.mjs +3 -2
  849. package/dist/runtimes/external-store/ThreadMessageConverter.mjs.map +1 -1
  850. package/dist/runtimes/external-store/ThreadMessageLike.js +3 -1
  851. package/dist/runtimes/external-store/ThreadMessageLike.js.map +1 -1
  852. package/dist/runtimes/external-store/ThreadMessageLike.mjs +2 -1
  853. package/dist/runtimes/external-store/ThreadMessageLike.mjs.map +1 -1
  854. package/dist/runtimes/external-store/auto-status.js +6 -4
  855. package/dist/runtimes/external-store/auto-status.js.map +1 -1
  856. package/dist/runtimes/external-store/auto-status.mjs +5 -4
  857. package/dist/runtimes/external-store/auto-status.mjs.map +1 -1
  858. package/dist/runtimes/external-store/external-message-converter.js +10 -8
  859. package/dist/runtimes/external-store/external-message-converter.js.map +1 -1
  860. package/dist/runtimes/external-store/external-message-converter.mjs +9 -8
  861. package/dist/runtimes/external-store/external-message-converter.mjs.map +1 -1
  862. package/dist/runtimes/external-store/getExternalStoreMessage.js +4 -2
  863. package/dist/runtimes/external-store/getExternalStoreMessage.js.map +1 -1
  864. package/dist/runtimes/external-store/getExternalStoreMessage.mjs +3 -2
  865. package/dist/runtimes/external-store/getExternalStoreMessage.mjs.map +1 -1
  866. package/dist/runtimes/external-store/index.js +5 -3
  867. package/dist/runtimes/external-store/index.js.map +1 -1
  868. package/dist/runtimes/external-store/index.mjs +4 -3
  869. package/dist/runtimes/external-store/index.mjs.map +1 -1
  870. package/dist/runtimes/external-store/useExternalStoreRuntime.js +6 -4
  871. package/dist/runtimes/external-store/useExternalStoreRuntime.js.map +1 -1
  872. package/dist/runtimes/external-store/useExternalStoreRuntime.mjs +5 -4
  873. package/dist/runtimes/external-store/useExternalStoreRuntime.mjs.map +1 -1
  874. package/dist/runtimes/feedback/FeedbackAdapter.js +2 -0
  875. package/dist/runtimes/feedback/FeedbackAdapter.js.map +1 -1
  876. package/dist/runtimes/feedback/index.js +2 -0
  877. package/dist/runtimes/feedback/index.js.map +1 -1
  878. package/dist/runtimes/index.js +18 -16
  879. package/dist/runtimes/index.js.map +1 -1
  880. package/dist/runtimes/index.mjs +9 -8
  881. package/dist/runtimes/index.mjs.map +1 -1
  882. package/dist/runtimes/local/ChatModelAdapter.js +2 -0
  883. package/dist/runtimes/local/ChatModelAdapter.js.map +1 -1
  884. package/dist/runtimes/local/LocalRuntimeCore.d.ts +2 -2
  885. package/dist/runtimes/local/LocalRuntimeCore.d.ts.map +1 -1
  886. package/dist/runtimes/local/LocalRuntimeCore.js +15 -13
  887. package/dist/runtimes/local/LocalRuntimeCore.js.map +1 -1
  888. package/dist/runtimes/local/LocalRuntimeCore.mjs +14 -13
  889. package/dist/runtimes/local/LocalRuntimeCore.mjs.map +1 -1
  890. package/dist/runtimes/local/LocalRuntimeOptions.js +3 -1
  891. package/dist/runtimes/local/LocalRuntimeOptions.js.map +1 -1
  892. package/dist/runtimes/local/LocalRuntimeOptions.mjs +2 -1
  893. package/dist/runtimes/local/LocalRuntimeOptions.mjs.map +1 -1
  894. package/dist/runtimes/local/{LocalThreadManagerRuntimeCore.d.ts → LocalThreadListRuntimeCore.d.ts} +16 -6
  895. package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts.map +1 -0
  896. package/dist/runtimes/local/{LocalThreadManagerRuntimeCore.js → LocalThreadListRuntimeCore.js} +14 -9
  897. package/dist/runtimes/local/LocalThreadListRuntimeCore.js.map +1 -0
  898. package/dist/runtimes/local/{LocalThreadManagerRuntimeCore.mjs → LocalThreadListRuntimeCore.mjs} +9 -5
  899. package/dist/runtimes/local/LocalThreadListRuntimeCore.mjs.map +1 -0
  900. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts.map +1 -1
  901. package/dist/runtimes/local/LocalThreadRuntimeCore.js +10 -7
  902. package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
  903. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs +9 -7
  904. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs.map +1 -1
  905. package/dist/runtimes/local/index.js +3 -1
  906. package/dist/runtimes/local/index.js.map +1 -1
  907. package/dist/runtimes/local/index.mjs +2 -1
  908. package/dist/runtimes/local/index.mjs.map +1 -1
  909. package/dist/runtimes/local/shouldContinue.js +3 -1
  910. package/dist/runtimes/local/shouldContinue.js.map +1 -1
  911. package/dist/runtimes/local/shouldContinue.mjs +2 -1
  912. package/dist/runtimes/local/shouldContinue.mjs.map +1 -1
  913. package/dist/runtimes/local/useLocalRuntime.js +9 -7
  914. package/dist/runtimes/local/useLocalRuntime.js.map +1 -1
  915. package/dist/runtimes/local/useLocalRuntime.mjs +9 -7
  916. package/dist/runtimes/local/useLocalRuntime.mjs.map +1 -1
  917. package/dist/runtimes/speech/SpeechAdapterTypes.js +2 -0
  918. package/dist/runtimes/speech/SpeechAdapterTypes.js.map +1 -1
  919. package/dist/runtimes/speech/WebSpeechSynthesisAdapter.js +4 -2
  920. package/dist/runtimes/speech/WebSpeechSynthesisAdapter.js.map +1 -1
  921. package/dist/runtimes/speech/WebSpeechSynthesisAdapter.mjs +3 -2
  922. package/dist/runtimes/speech/WebSpeechSynthesisAdapter.mjs.map +1 -1
  923. package/dist/runtimes/speech/index.js +3 -1
  924. package/dist/runtimes/speech/index.js.map +1 -1
  925. package/dist/runtimes/speech/index.mjs +2 -1
  926. package/dist/runtimes/speech/index.mjs.map +1 -1
  927. package/dist/runtimes/utils/MessageRepository.js +7 -5
  928. package/dist/runtimes/utils/MessageRepository.js.map +1 -1
  929. package/dist/runtimes/utils/MessageRepository.mjs +6 -5
  930. package/dist/runtimes/utils/MessageRepository.mjs.map +1 -1
  931. package/dist/tailwindcss/index.d.ts.map +1 -1
  932. package/dist/tailwindcss/index.js +7 -5
  933. package/dist/tailwindcss/index.js.map +1 -1
  934. package/dist/tailwindcss/index.mjs +6 -5
  935. package/dist/tailwindcss/index.mjs.map +1 -1
  936. package/dist/types/AssistantTypes.d.ts +2 -0
  937. package/dist/types/AssistantTypes.d.ts.map +1 -1
  938. package/dist/types/AssistantTypes.js +2 -0
  939. package/dist/types/AssistantTypes.js.map +1 -1
  940. package/dist/types/AttachmentTypes.js +2 -0
  941. package/dist/types/AttachmentTypes.js.map +1 -1
  942. package/dist/types/ContentPartComponentTypes.js +2 -0
  943. package/dist/types/ContentPartComponentTypes.js.map +1 -1
  944. package/dist/types/ModelConfigTypes.js +5 -3
  945. package/dist/types/ModelConfigTypes.js.map +1 -1
  946. package/dist/types/ModelConfigTypes.mjs +4 -3
  947. package/dist/types/ModelConfigTypes.mjs.map +1 -1
  948. package/dist/types/Unsubscribe.js +2 -0
  949. package/dist/types/Unsubscribe.js.map +1 -1
  950. package/dist/types/index.js +2 -0
  951. package/dist/types/index.js.map +1 -1
  952. package/dist/ui/assistant-action-bar.js +23 -21
  953. package/dist/ui/assistant-action-bar.js.map +1 -1
  954. package/dist/ui/assistant-action-bar.mjs +23 -21
  955. package/dist/ui/assistant-action-bar.mjs.map +1 -1
  956. package/dist/ui/assistant-message.js +16 -14
  957. package/dist/ui/assistant-message.js.map +1 -1
  958. package/dist/ui/assistant-message.mjs +16 -14
  959. package/dist/ui/assistant-message.mjs.map +1 -1
  960. package/dist/ui/assistant-modal.js +16 -14
  961. package/dist/ui/assistant-modal.js.map +1 -1
  962. package/dist/ui/assistant-modal.mjs +16 -14
  963. package/dist/ui/assistant-modal.mjs.map +1 -1
  964. package/dist/ui/attachment.js +22 -20
  965. package/dist/ui/attachment.js.map +1 -1
  966. package/dist/ui/attachment.mjs +19 -17
  967. package/dist/ui/attachment.mjs.map +1 -1
  968. package/dist/ui/base/CircleStopIcon.js +3 -1
  969. package/dist/ui/base/CircleStopIcon.js.map +1 -1
  970. package/dist/ui/base/CircleStopIcon.mjs +2 -1
  971. package/dist/ui/base/CircleStopIcon.mjs.map +1 -1
  972. package/dist/ui/base/avatar.js +8 -6
  973. package/dist/ui/base/avatar.js.map +1 -1
  974. package/dist/ui/base/avatar.mjs +8 -6
  975. package/dist/ui/base/avatar.mjs.map +1 -1
  976. package/dist/ui/base/button.js +5 -3
  977. package/dist/ui/base/button.js.map +1 -1
  978. package/dist/ui/base/button.mjs +4 -3
  979. package/dist/ui/base/button.mjs.map +1 -1
  980. package/dist/ui/base/dialog.js +9 -7
  981. package/dist/ui/base/dialog.js.map +1 -1
  982. package/dist/ui/base/dialog.mjs +9 -7
  983. package/dist/ui/base/dialog.mjs.map +1 -1
  984. package/dist/ui/base/index.js +7 -5
  985. package/dist/ui/base/index.js.map +1 -1
  986. package/dist/ui/base/index.mjs +6 -5
  987. package/dist/ui/base/index.mjs.map +1 -1
  988. package/dist/ui/base/tooltip-icon-button.js +6 -4
  989. package/dist/ui/base/tooltip-icon-button.js.map +1 -1
  990. package/dist/ui/base/tooltip-icon-button.mjs +6 -4
  991. package/dist/ui/base/tooltip-icon-button.mjs.map +1 -1
  992. package/dist/ui/base/tooltip.js +7 -5
  993. package/dist/ui/base/tooltip.js.map +1 -1
  994. package/dist/ui/base/tooltip.mjs +7 -5
  995. package/dist/ui/base/tooltip.mjs.map +1 -1
  996. package/dist/ui/branch-picker.js +16 -14
  997. package/dist/ui/branch-picker.js.map +1 -1
  998. package/dist/ui/branch-picker.mjs +16 -14
  999. package/dist/ui/branch-picker.mjs.map +1 -1
  1000. package/dist/ui/composer.js +26 -24
  1001. package/dist/ui/composer.js.map +1 -1
  1002. package/dist/ui/composer.mjs +26 -24
  1003. package/dist/ui/composer.mjs.map +1 -1
  1004. package/dist/ui/content-part.js +7 -5
  1005. package/dist/ui/content-part.js.map +1 -1
  1006. package/dist/ui/content-part.mjs +6 -5
  1007. package/dist/ui/content-part.mjs.map +1 -1
  1008. package/dist/ui/edit-composer.js +14 -12
  1009. package/dist/ui/edit-composer.js.map +1 -1
  1010. package/dist/ui/edit-composer.mjs +14 -12
  1011. package/dist/ui/edit-composer.mjs.map +1 -1
  1012. package/dist/ui/index.js +15 -13
  1013. package/dist/ui/index.js.map +1 -1
  1014. package/dist/ui/index.mjs +14 -13
  1015. package/dist/ui/index.mjs.map +1 -1
  1016. package/dist/ui/thread-config.js +8 -6
  1017. package/dist/ui/thread-config.js.map +1 -1
  1018. package/dist/ui/thread-config.mjs +8 -6
  1019. package/dist/ui/thread-config.mjs.map +1 -1
  1020. package/dist/ui/thread-welcome.js +20 -18
  1021. package/dist/ui/thread-welcome.js.map +1 -1
  1022. package/dist/ui/thread-welcome.mjs +20 -18
  1023. package/dist/ui/thread-welcome.mjs.map +1 -1
  1024. package/dist/ui/thread.js +24 -22
  1025. package/dist/ui/thread.js.map +1 -1
  1026. package/dist/ui/thread.mjs +24 -22
  1027. package/dist/ui/thread.mjs.map +1 -1
  1028. package/dist/ui/user-action-bar.js +13 -11
  1029. package/dist/ui/user-action-bar.js.map +1 -1
  1030. package/dist/ui/user-action-bar.mjs +13 -11
  1031. package/dist/ui/user-action-bar.mjs.map +1 -1
  1032. package/dist/ui/user-message.js +16 -14
  1033. package/dist/ui/user-message.js.map +1 -1
  1034. package/dist/ui/user-message.mjs +16 -14
  1035. package/dist/ui/user-message.mjs.map +1 -1
  1036. package/dist/ui/utils/withDefaults.js +5 -3
  1037. package/dist/ui/utils/withDefaults.js.map +1 -1
  1038. package/dist/ui/utils/withDefaults.mjs +4 -3
  1039. package/dist/ui/utils/withDefaults.mjs.map +1 -1
  1040. package/dist/utils/ProxyConfigProvider.js +5 -3
  1041. package/dist/utils/ProxyConfigProvider.js.map +1 -1
  1042. package/dist/utils/ProxyConfigProvider.mjs +4 -3
  1043. package/dist/utils/ProxyConfigProvider.mjs.map +1 -1
  1044. package/dist/utils/RequireAtLeastOne.js +2 -0
  1045. package/dist/utils/RequireAtLeastOne.js.map +1 -1
  1046. package/dist/utils/combined/createCombinedStore.js +3 -1
  1047. package/dist/utils/combined/createCombinedStore.js.map +1 -1
  1048. package/dist/utils/combined/createCombinedStore.mjs +3 -1
  1049. package/dist/utils/combined/createCombinedStore.mjs.map +1 -1
  1050. package/dist/utils/combined/useCombinedStore.js +4 -2
  1051. package/dist/utils/combined/useCombinedStore.js.map +1 -1
  1052. package/dist/utils/combined/useCombinedStore.mjs +3 -2
  1053. package/dist/utils/combined/useCombinedStore.mjs.map +1 -1
  1054. package/dist/utils/createActionButton.js +4 -2
  1055. package/dist/utils/createActionButton.js.map +1 -1
  1056. package/dist/utils/createActionButton.mjs +4 -2
  1057. package/dist/utils/createActionButton.mjs.map +1 -1
  1058. package/dist/utils/getThreadMessageText.js +3 -1
  1059. package/dist/utils/getThreadMessageText.js.map +1 -1
  1060. package/dist/utils/getThreadMessageText.mjs +2 -1
  1061. package/dist/utils/getThreadMessageText.mjs.map +1 -1
  1062. package/dist/utils/hooks/useManagedRef.js +3 -1
  1063. package/dist/utils/hooks/useManagedRef.js.map +1 -1
  1064. package/dist/utils/hooks/useManagedRef.mjs +2 -1
  1065. package/dist/utils/hooks/useManagedRef.mjs.map +1 -1
  1066. package/dist/utils/hooks/useOnResizeContent.js +4 -2
  1067. package/dist/utils/hooks/useOnResizeContent.js.map +1 -1
  1068. package/dist/utils/hooks/useOnResizeContent.mjs +3 -2
  1069. package/dist/utils/hooks/useOnResizeContent.mjs.map +1 -1
  1070. package/dist/utils/hooks/useOnScrollToBottom.js +4 -2
  1071. package/dist/utils/hooks/useOnScrollToBottom.js.map +1 -1
  1072. package/dist/utils/hooks/useOnScrollToBottom.mjs +3 -2
  1073. package/dist/utils/hooks/useOnScrollToBottom.mjs.map +1 -1
  1074. package/dist/utils/idUtils.js +6 -4
  1075. package/dist/utils/idUtils.js.map +1 -1
  1076. package/dist/utils/idUtils.mjs +5 -4
  1077. package/dist/utils/idUtils.mjs.map +1 -1
  1078. package/dist/utils/smooth/SmoothContext.js +10 -8
  1079. package/dist/utils/smooth/SmoothContext.js.map +1 -1
  1080. package/dist/utils/smooth/SmoothContext.mjs +9 -8
  1081. package/dist/utils/smooth/SmoothContext.mjs.map +1 -1
  1082. package/dist/utils/smooth/index.js +5 -3
  1083. package/dist/utils/smooth/index.js.map +1 -1
  1084. package/dist/utils/smooth/index.mjs +4 -3
  1085. package/dist/utils/smooth/index.mjs.map +1 -1
  1086. package/dist/utils/smooth/useSmooth.js +9 -7
  1087. package/dist/utils/smooth/useSmooth.js.map +1 -1
  1088. package/dist/utils/smooth/useSmooth.mjs +9 -7
  1089. package/dist/utils/smooth/useSmooth.mjs.map +1 -1
  1090. package/package.json +13 -12
  1091. package/src/api/AssistantRuntime.ts +9 -12
  1092. package/src/api/ComposerRuntime.ts +17 -0
  1093. package/src/api/MessageRuntime.ts +0 -9
  1094. package/src/api/RuntimePathTypes.ts +10 -1
  1095. package/src/api/ThreadListItemRuntime.ts +67 -0
  1096. package/src/api/ThreadListRuntime.ts +159 -0
  1097. package/src/api/ThreadRuntime.ts +2 -1
  1098. package/src/api/index.ts +1 -4
  1099. package/src/context/providers/AssistantRuntimeProvider.tsx +7 -9
  1100. package/src/context/providers/AttachmentRuntimeProvider.tsx +6 -4
  1101. package/src/context/providers/ContentPartRuntimeProvider.tsx +8 -7
  1102. package/src/context/providers/MessageRuntimeProvider.tsx +6 -4
  1103. package/src/context/providers/TextContentPartProvider.tsx +11 -7
  1104. package/src/context/providers/ThreadListItemRuntimeProvider.tsx +54 -0
  1105. package/src/context/react/AssistantContext.ts +4 -4
  1106. package/src/context/react/ThreadListItemContext.ts +39 -0
  1107. package/src/context/react/index.ts +2 -2
  1108. package/src/internal.ts +1 -1
  1109. package/src/primitives/index.ts +2 -0
  1110. package/src/primitives/threadList/ThreadListItems.tsx +73 -0
  1111. package/src/primitives/threadList/ThreadListNew.ts +25 -0
  1112. package/src/primitives/threadList/index.ts +2 -0
  1113. package/src/primitives/threadListItem/ThreadListItemArchive.ts +25 -0
  1114. package/src/primitives/threadListItem/ThreadListItemDelete.ts +25 -0
  1115. package/src/primitives/threadListItem/ThreadListItemUnarchive.ts +25 -0
  1116. package/src/primitives/threadListItem/index.ts +3 -0
  1117. package/src/runtimes/composer/BaseComposerRuntimeCore.tsx +19 -5
  1118. package/src/runtimes/composer/DefaultEditComposerRuntimeCore.tsx +3 -2
  1119. package/src/runtimes/core/AssistantRuntimeCore.tsx +2 -2
  1120. package/src/runtimes/core/BaseAssistantRuntimeCore.tsx +2 -2
  1121. package/src/runtimes/core/ComposerRuntimeCore.tsx +4 -0
  1122. package/src/runtimes/core/{ThreadManagerRuntimeCore.tsx → ThreadListRuntimeCore.tsx} +7 -5
  1123. package/src/runtimes/core/subscribeToMainThread.ts +2 -2
  1124. package/src/runtimes/external-store/ExternalStoreAdapter.tsx +8 -8
  1125. package/src/runtimes/external-store/ExternalStoreRuntimeCore.tsx +8 -8
  1126. package/src/runtimes/external-store/{ExternalStoreThreadManagementAdapter.tsx → ExternalStoreThreadListRuntimeCore.tsx} +16 -6
  1127. package/src/runtimes/local/LocalRuntimeCore.tsx +7 -7
  1128. package/src/runtimes/local/{LocalThreadManagerRuntimeCore.tsx → LocalThreadListRuntimeCore.tsx} +11 -7
  1129. package/src/runtimes/local/LocalThreadRuntimeCore.tsx +2 -1
  1130. package/src/tailwindcss/index.ts +4 -4
  1131. package/src/types/AssistantTypes.ts +3 -0
  1132. package/dist/api/ThreadManagerRuntime.d.ts +0 -32
  1133. package/dist/api/ThreadManagerRuntime.d.ts.map +0 -1
  1134. package/dist/api/ThreadManagerRuntime.js +0 -71
  1135. package/dist/api/ThreadManagerRuntime.js.map +0 -1
  1136. package/dist/api/ThreadManagerRuntime.mjs +0 -47
  1137. package/dist/api/ThreadManagerRuntime.mjs.map +0 -1
  1138. package/dist/runtimes/core/ThreadManagerRuntimeCore.d.ts.map +0 -1
  1139. package/dist/runtimes/core/ThreadManagerRuntimeCore.js.map +0 -1
  1140. package/dist/runtimes/core/ThreadManagerRuntimeCore.mjs +0 -1
  1141. package/dist/runtimes/external-store/ExternalStoreThreadManagementAdapter.d.ts +0 -25
  1142. package/dist/runtimes/external-store/ExternalStoreThreadManagementAdapter.d.ts.map +0 -1
  1143. package/dist/runtimes/external-store/ExternalStoreThreadManagementAdapter.js.map +0 -1
  1144. package/dist/runtimes/external-store/ExternalStoreThreadManagementAdapter.mjs.map +0 -1
  1145. package/dist/runtimes/local/LocalThreadManagerRuntimeCore.d.ts.map +0 -1
  1146. package/dist/runtimes/local/LocalThreadManagerRuntimeCore.js.map +0 -1
  1147. package/dist/runtimes/local/LocalThreadManagerRuntimeCore.mjs.map +0 -1
  1148. package/src/api/ThreadManagerRuntime.ts +0 -80
  1149. /package/dist/runtimes/core/{ThreadManagerRuntimeCore.mjs.map → ThreadListRuntimeCore.mjs.map} +0 -0
  1150. /package/{generated → dist/styles/tailwindcss}/base-components.css.json +0 -0
  1151. /package/{generated → dist/styles/tailwindcss}/modal.css.json +0 -0
  1152. /package/{generated → dist/styles/tailwindcss}/thread.css.json +0 -0
  1153. /package/{generated → dist/styles/themes}/default.css.json +0 -0
@@ -16,13 +16,15 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var LocalThreadManagerRuntimeCore_exports = {};
20
- __export(LocalThreadManagerRuntimeCore_exports, {
21
- LocalThreadManagerRuntimeCore: () => LocalThreadManagerRuntimeCore
19
+
20
+ // src/runtimes/local/LocalThreadListRuntimeCore.tsx
21
+ var LocalThreadListRuntimeCore_exports = {};
22
+ __export(LocalThreadListRuntimeCore_exports, {
23
+ LocalThreadListRuntimeCore: () => LocalThreadListRuntimeCore
22
24
  });
23
- module.exports = __toCommonJS(LocalThreadManagerRuntimeCore_exports);
24
- var import_idUtils = require("../../utils/idUtils");
25
- class LocalThreadManagerRuntimeCore {
25
+ module.exports = __toCommonJS(LocalThreadListRuntimeCore_exports);
26
+ var import_idUtils = require("../../utils/idUtils.cjs");
27
+ var LocalThreadListRuntimeCore = class {
26
28
  constructor(_threadFactory) {
27
29
  this._threadFactory = _threadFactory;
28
30
  const threadId = (0, import_idUtils.generateId)();
@@ -47,6 +49,9 @@ class LocalThreadManagerRuntimeCore {
47
49
  get mainThread() {
48
50
  return this._mainThread;
49
51
  }
52
+ getThreadMetadataById(threadId) {
53
+ return this._threadData.get(threadId)?.metadata;
54
+ }
50
55
  switchToThread(threadId) {
51
56
  if (this._mainThread.threadId === threadId) return;
52
57
  const data = this._threadData.get(threadId);
@@ -135,9 +140,9 @@ class LocalThreadManagerRuntimeCore {
135
140
  _notifySubscribers() {
136
141
  for (const callback of this._subscriptions) callback();
137
142
  }
138
- }
143
+ };
139
144
  // Annotate the CommonJS export names for ESM import in node:
140
145
  0 && (module.exports = {
141
- LocalThreadManagerRuntimeCore
146
+ LocalThreadListRuntimeCore
142
147
  });
143
- //# sourceMappingURL=LocalThreadManagerRuntimeCore.js.map
148
+ //# sourceMappingURL=LocalThreadListRuntimeCore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/runtimes/local/LocalThreadListRuntimeCore.tsx"],"sourcesContent":["import type { Unsubscribe } from \"../../types\";\nimport {\n ThreadListMetadata,\n ThreadListRuntimeCore,\n} from \"../core/ThreadListRuntimeCore\";\nimport { ExportedMessageRepository } from \"../utils/MessageRepository\";\nimport { generateId } from \"../../utils/idUtils\";\nimport { LocalThreadRuntimeCore } from \"./LocalThreadRuntimeCore\";\n\nexport type LocalThreadData = {\n data: ExportedMessageRepository;\n metadata: ThreadListMetadata;\n isArchived: boolean;\n};\n\nexport type LocalThreadFactory = (\n threadId: string,\n data: ExportedMessageRepository,\n) => LocalThreadRuntimeCore;\n\nexport class LocalThreadListRuntimeCore implements ThreadListRuntimeCore {\n private _threadData = new Map<string, LocalThreadData>();\n\n private _threads: readonly ThreadListMetadata[] = [];\n private _archivedThreads: readonly ThreadListMetadata[] = [];\n\n public get threads() {\n return this._threads;\n }\n\n public get archivedThreads() {\n return this._archivedThreads;\n }\n\n private _mainThread: LocalThreadRuntimeCore;\n\n public get mainThread(): LocalThreadRuntimeCore {\n return this._mainThread;\n }\n\n constructor(private _threadFactory: LocalThreadFactory) {\n const threadId = generateId();\n this._threadData.set(threadId, {\n data: { messages: [] },\n metadata: { threadId },\n isArchived: false,\n });\n this._threads = [{ threadId }];\n this._mainThread = this._threadFactory(threadId, { messages: [] });\n }\n\n public getThreadMetadataById(threadId: string) {\n return this._threadData.get(threadId)?.metadata;\n }\n\n public switchToThread(threadId: string): void {\n if (this._mainThread.threadId === threadId) return;\n\n const data = this._threadData.get(threadId);\n if (!data) throw new Error(\"Thread not found\");\n\n const thread = this._threadFactory(threadId, data.data);\n this._performThreadSwitch(thread);\n }\n\n public switchToNewThread(): void {\n const threadId = generateId();\n this._threadData.set(threadId, {\n data: { messages: [] },\n metadata: { threadId },\n isArchived: false,\n });\n this._threads = [{ threadId }];\n const thread = this._threadFactory(threadId, { messages: [] });\n this._performThreadSwitch(thread);\n }\n\n private _performThreadSwitch(newThreadCore: LocalThreadRuntimeCore) {\n const data = this._threadData.get(this._mainThread.threadId);\n if (!data) throw new Error(\"Thread not found\");\n\n const exprt = this._mainThread.export();\n data.data = exprt;\n\n this._mainThread._notifyEventSubscribers(\"switched-away\");\n this._mainThread = newThreadCore;\n newThreadCore._notifyEventSubscribers(\"switched-to\");\n\n this._notifySubscribers();\n }\n\n private _performMoveOp(\n threadId: string,\n operation: \"archive\" | \"unarchive\" | \"delete\",\n ) {\n const data = this._threadData.get(threadId);\n if (!data) throw new Error(\"Thread not found\");\n\n if (operation === \"archive\" && data.isArchived) return;\n if (operation === \"unarchive\" && !data.isArchived) return;\n\n if (operation === \"archive\") {\n data.isArchived = true;\n this._archivedThreads = [...this._archivedThreads, data.metadata];\n }\n if (operation === \"unarchive\") {\n data.isArchived = false;\n this._threads = [...this._threads, data.metadata];\n }\n if (operation === \"delete\") {\n this._threadData.delete(threadId);\n }\n\n if (\n operation === \"archive\" ||\n (operation === \"delete\" && data.isArchived)\n ) {\n this._archivedThreads = this._archivedThreads.filter(\n (t) => t.threadId !== threadId,\n );\n }\n\n if (\n operation === \"unarchive\" ||\n (operation === \"delete\" && !data.isArchived)\n ) {\n this._threads = this._threads.filter((t) => t.threadId !== threadId);\n }\n\n this._notifySubscribers();\n }\n\n public async rename(threadId: string, newTitle: string): Promise<void> {\n const data = this._threadData.get(threadId);\n if (!data) throw new Error(\"Thread not found\");\n\n data.metadata = {\n ...data.metadata,\n title: newTitle,\n };\n\n const threadList = data.isArchived ? this.archivedThreads : this.threads;\n const idx = threadList.findIndex((t) => t.threadId === threadId);\n const updatedThreadList = threadList.toSpliced(idx, 1, data.metadata);\n if (data.isArchived) {\n this._archivedThreads = updatedThreadList;\n } else {\n this._threads = updatedThreadList;\n }\n this._notifySubscribers();\n }\n\n public async archive(threadId: string): Promise<void> {\n this._performMoveOp(threadId, \"archive\");\n }\n\n public async unarchive(threadId: string): Promise<void> {\n this._performMoveOp(threadId, \"unarchive\");\n }\n\n public async delete(threadId: string): Promise<void> {\n this._performMoveOp(threadId, \"delete\");\n }\n\n private _subscriptions = new Set<() => void>();\n\n public subscribe(callback: () => void): Unsubscribe {\n this._subscriptions.add(callback);\n return () => this._subscriptions.delete(callback);\n }\n\n private _notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n}\n"],"mappings":"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","names":[]}
@@ -1,5 +1,6 @@
1
- import { generateId } from "../../utils/idUtils";
2
- class LocalThreadManagerRuntimeCore {
1
+ // src/runtimes/local/LocalThreadListRuntimeCore.tsx
2
+ import { generateId } from "../../utils/idUtils.mjs";
3
+ var LocalThreadListRuntimeCore = class {
3
4
  constructor(_threadFactory) {
4
5
  this._threadFactory = _threadFactory;
5
6
  const threadId = generateId();
@@ -24,6 +25,9 @@ class LocalThreadManagerRuntimeCore {
24
25
  get mainThread() {
25
26
  return this._mainThread;
26
27
  }
28
+ getThreadMetadataById(threadId) {
29
+ return this._threadData.get(threadId)?.metadata;
30
+ }
27
31
  switchToThread(threadId) {
28
32
  if (this._mainThread.threadId === threadId) return;
29
33
  const data = this._threadData.get(threadId);
@@ -112,8 +116,8 @@ class LocalThreadManagerRuntimeCore {
112
116
  _notifySubscribers() {
113
117
  for (const callback of this._subscriptions) callback();
114
118
  }
115
- }
119
+ };
116
120
  export {
117
- LocalThreadManagerRuntimeCore
121
+ LocalThreadListRuntimeCore
118
122
  };
119
- //# sourceMappingURL=LocalThreadManagerRuntimeCore.mjs.map
123
+ //# sourceMappingURL=LocalThreadListRuntimeCore.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/runtimes/local/LocalThreadListRuntimeCore.tsx"],"sourcesContent":["import type { Unsubscribe } from \"../../types\";\nimport {\n ThreadListMetadata,\n ThreadListRuntimeCore,\n} from \"../core/ThreadListRuntimeCore\";\nimport { ExportedMessageRepository } from \"../utils/MessageRepository\";\nimport { generateId } from \"../../utils/idUtils\";\nimport { LocalThreadRuntimeCore } from \"./LocalThreadRuntimeCore\";\n\nexport type LocalThreadData = {\n data: ExportedMessageRepository;\n metadata: ThreadListMetadata;\n isArchived: boolean;\n};\n\nexport type LocalThreadFactory = (\n threadId: string,\n data: ExportedMessageRepository,\n) => LocalThreadRuntimeCore;\n\nexport class LocalThreadListRuntimeCore implements ThreadListRuntimeCore {\n private _threadData = new Map<string, LocalThreadData>();\n\n private _threads: readonly ThreadListMetadata[] = [];\n private _archivedThreads: readonly ThreadListMetadata[] = [];\n\n public get threads() {\n return this._threads;\n }\n\n public get archivedThreads() {\n return this._archivedThreads;\n }\n\n private _mainThread: LocalThreadRuntimeCore;\n\n public get mainThread(): LocalThreadRuntimeCore {\n return this._mainThread;\n }\n\n constructor(private _threadFactory: LocalThreadFactory) {\n const threadId = generateId();\n this._threadData.set(threadId, {\n data: { messages: [] },\n metadata: { threadId },\n isArchived: false,\n });\n this._threads = [{ threadId }];\n this._mainThread = this._threadFactory(threadId, { messages: [] });\n }\n\n public getThreadMetadataById(threadId: string) {\n return this._threadData.get(threadId)?.metadata;\n }\n\n public switchToThread(threadId: string): void {\n if (this._mainThread.threadId === threadId) return;\n\n const data = this._threadData.get(threadId);\n if (!data) throw new Error(\"Thread not found\");\n\n const thread = this._threadFactory(threadId, data.data);\n this._performThreadSwitch(thread);\n }\n\n public switchToNewThread(): void {\n const threadId = generateId();\n this._threadData.set(threadId, {\n data: { messages: [] },\n metadata: { threadId },\n isArchived: false,\n });\n this._threads = [{ threadId }];\n const thread = this._threadFactory(threadId, { messages: [] });\n this._performThreadSwitch(thread);\n }\n\n private _performThreadSwitch(newThreadCore: LocalThreadRuntimeCore) {\n const data = this._threadData.get(this._mainThread.threadId);\n if (!data) throw new Error(\"Thread not found\");\n\n const exprt = this._mainThread.export();\n data.data = exprt;\n\n this._mainThread._notifyEventSubscribers(\"switched-away\");\n this._mainThread = newThreadCore;\n newThreadCore._notifyEventSubscribers(\"switched-to\");\n\n this._notifySubscribers();\n }\n\n private _performMoveOp(\n threadId: string,\n operation: \"archive\" | \"unarchive\" | \"delete\",\n ) {\n const data = this._threadData.get(threadId);\n if (!data) throw new Error(\"Thread not found\");\n\n if (operation === \"archive\" && data.isArchived) return;\n if (operation === \"unarchive\" && !data.isArchived) return;\n\n if (operation === \"archive\") {\n data.isArchived = true;\n this._archivedThreads = [...this._archivedThreads, data.metadata];\n }\n if (operation === \"unarchive\") {\n data.isArchived = false;\n this._threads = [...this._threads, data.metadata];\n }\n if (operation === \"delete\") {\n this._threadData.delete(threadId);\n }\n\n if (\n operation === \"archive\" ||\n (operation === \"delete\" && data.isArchived)\n ) {\n this._archivedThreads = this._archivedThreads.filter(\n (t) => t.threadId !== threadId,\n );\n }\n\n if (\n operation === \"unarchive\" ||\n (operation === \"delete\" && !data.isArchived)\n ) {\n this._threads = this._threads.filter((t) => t.threadId !== threadId);\n }\n\n this._notifySubscribers();\n }\n\n public async rename(threadId: string, newTitle: string): Promise<void> {\n const data = this._threadData.get(threadId);\n if (!data) throw new Error(\"Thread not found\");\n\n data.metadata = {\n ...data.metadata,\n title: newTitle,\n };\n\n const threadList = data.isArchived ? this.archivedThreads : this.threads;\n const idx = threadList.findIndex((t) => t.threadId === threadId);\n const updatedThreadList = threadList.toSpliced(idx, 1, data.metadata);\n if (data.isArchived) {\n this._archivedThreads = updatedThreadList;\n } else {\n this._threads = updatedThreadList;\n }\n this._notifySubscribers();\n }\n\n public async archive(threadId: string): Promise<void> {\n this._performMoveOp(threadId, \"archive\");\n }\n\n public async unarchive(threadId: string): Promise<void> {\n this._performMoveOp(threadId, \"unarchive\");\n }\n\n public async delete(threadId: string): Promise<void> {\n this._performMoveOp(threadId, \"delete\");\n }\n\n private _subscriptions = new Set<() => void>();\n\n public subscribe(callback: () => void): Unsubscribe {\n this._subscriptions.add(callback);\n return () => this._subscriptions.delete(callback);\n }\n\n private _notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"LocalThreadRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/local/LocalThreadRuntimeCore.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EAEd,MAAM,aAAa,CAAC;AAIrB,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,qBAAa,sBACX,SAAQ,qBACR,YAAW,iBAAiB;aAwBV,QAAQ,EAAE,MAAM;IAtBlC,SAAgB,YAAY;;;;;;;;;MAS1B;IAEF,OAAO,CAAC,eAAe,CAAgC;IAEvD,SAAgB,UAAU,SAAS;IACnC,SAAgB,WAAW,EAAE,SAAS,gBAAgB,EAAE,CAAM;IAE9D,IAAW,QAAQ;;;;;MAElB;gBAGC,cAAc,EAAE,mBAAmB,EACnB,QAAQ,EAAE,MAAM,EAChC,OAAO,EAAE,uBAAuB;IAOlC,OAAO,CAAC,QAAQ,CAA2B;IAE3C,IAAW,MAAM,cAEhB;IAEM,UAAU,CAAC,OAAO,EAAE,uBAAuB;IA4BrC,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAc7C,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAoB/C,gBAAgB;IA+GvB,SAAS;IAKT,aAAa,CAAC,EACnB,SAAS,EACT,UAAU,EACV,MAAM,GACP,EAAE,oBAAoB;CAkCxB"}
1
+ {"version":3,"file":"LocalThreadRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/local/LocalThreadRuntimeCore.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EAEd,MAAM,aAAa,CAAC;AAIrB,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,qBAAa,sBACX,SAAQ,qBACR,YAAW,iBAAiB;aAwBV,QAAQ,EAAE,MAAM;IAtBlC,SAAgB,YAAY;;;;;;;;;MAS1B;IAEF,OAAO,CAAC,eAAe,CAAgC;IAEvD,SAAgB,UAAU,SAAS;IACnC,SAAgB,WAAW,EAAE,SAAS,gBAAgB,EAAE,CAAM;IAE9D,IAAW,QAAQ;;;;;MAElB;gBAGC,cAAc,EAAE,mBAAmB,EACnB,QAAQ,EAAE,MAAM,EAChC,OAAO,EAAE,uBAAuB;IAOlC,OAAO,CAAC,QAAQ,CAA2B;IAE3C,IAAW,MAAM,cAEhB;IAEM,UAAU,CAAC,OAAO,EAAE,uBAAuB;IA4BrC,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAe7C,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAoB/C,gBAAgB;IA+GvB,SAAS;IAKT,aAAa,CAAC,EACnB,SAAS,EACT,UAAU,EACV,MAAM,GACP,EAAE,oBAAoB;CAkCxB"}
@@ -16,16 +16,18 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/runtimes/local/LocalThreadRuntimeCore.tsx
19
21
  var LocalThreadRuntimeCore_exports = {};
20
22
  __export(LocalThreadRuntimeCore_exports, {
21
23
  LocalThreadRuntimeCore: () => LocalThreadRuntimeCore
22
24
  });
23
25
  module.exports = __toCommonJS(LocalThreadRuntimeCore_exports);
24
- var import_internal = require("../../internal");
25
- var import_edge = require("../edge");
26
- var import_shouldContinue = require("./shouldContinue");
27
- var import_BaseThreadRuntimeCore = require("../core/BaseThreadRuntimeCore");
28
- class LocalThreadRuntimeCore extends import_BaseThreadRuntimeCore.BaseThreadRuntimeCore {
26
+ var import_internal = require("../../internal.cjs");
27
+ var import_edge = require("../edge/index.cjs");
28
+ var import_shouldContinue = require("./shouldContinue.cjs");
29
+ var import_BaseThreadRuntimeCore = require("../core/BaseThreadRuntimeCore.cjs");
30
+ var LocalThreadRuntimeCore = class extends import_BaseThreadRuntimeCore.BaseThreadRuntimeCore {
29
31
  constructor(configProvider, threadId, options) {
30
32
  super(configProvider);
31
33
  this.threadId = threadId;
@@ -77,7 +79,8 @@ class LocalThreadRuntimeCore extends import_BaseThreadRuntimeCore.BaseThreadRunt
77
79
  attachments: message.attachments
78
80
  });
79
81
  this.repository.addOrUpdateMessage(message.parentId, newMessage);
80
- if (message.role === "user") {
82
+ const startRun = message.startRun ?? message.role === "user";
83
+ if (startRun) {
81
84
  await this.startRun(newMessage.id);
82
85
  } else {
83
86
  this.repository.resetHead(newMessage.id);
@@ -218,7 +221,7 @@ class LocalThreadRuntimeCore extends import_BaseThreadRuntimeCore.BaseThreadRunt
218
221
  this.performRoundtrip(parentId, message);
219
222
  }
220
223
  }
221
- }
224
+ };
222
225
  // Annotate the CommonJS export names for ESM import in node:
223
226
  0 && (module.exports = {
224
227
  LocalThreadRuntimeCore
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/local/LocalThreadRuntimeCore.tsx"],"sourcesContent":["import { generateId } from \"../../internal\";\nimport type {\n ModelConfigProvider,\n AppendMessage,\n ThreadAssistantMessage,\n} from \"../../types\";\nimport { fromCoreMessage } from \"../edge\";\nimport type { ChatModelRunResult } from \"./ChatModelAdapter\";\nimport { shouldContinue } from \"./shouldContinue\";\nimport { LocalRuntimeOptionsBase } from \"./LocalRuntimeOptions\";\nimport {\n AddToolResultOptions,\n ThreadSuggestion,\n ThreadRuntimeCore,\n} from \"../core/ThreadRuntimeCore\";\nimport { BaseThreadRuntimeCore } from \"../core/BaseThreadRuntimeCore\";\n\nexport class LocalThreadRuntimeCore\n extends BaseThreadRuntimeCore\n implements ThreadRuntimeCore\n{\n public readonly capabilities = {\n switchToBranch: true,\n edit: true,\n reload: true,\n cancel: true,\n unstable_copy: true,\n speech: false,\n attachments: false,\n feedback: false,\n };\n\n private abortController: AbortController | null = null;\n\n public readonly isDisabled = false;\n public readonly suggestions: readonly ThreadSuggestion[] = [];\n\n public get adapters() {\n return this._options.adapters;\n }\n\n constructor(\n configProvider: ModelConfigProvider,\n public readonly threadId: string,\n options: LocalRuntimeOptionsBase,\n ) {\n super(configProvider);\n\n this.setOptions(options);\n }\n\n private _options!: LocalRuntimeOptionsBase;\n\n public get extras() {\n return undefined;\n }\n\n public setOptions(options: LocalRuntimeOptionsBase) {\n if (this._options === options) return;\n\n this._options = options;\n\n let hasUpdates = false;\n\n const canSpeak = options.adapters?.speech !== undefined;\n if (this.capabilities.speech !== canSpeak) {\n this.capabilities.speech = canSpeak;\n hasUpdates = true;\n }\n\n const canAttach = options.adapters?.attachments !== undefined;\n if (this.capabilities.attachments !== canAttach) {\n this.capabilities.attachments = canAttach;\n hasUpdates = true;\n }\n\n const canFeedback = options.adapters?.feedback !== undefined;\n if (this.capabilities.feedback !== canFeedback) {\n this.capabilities.feedback = canFeedback;\n hasUpdates = true;\n }\n\n if (hasUpdates) this._notifySubscribers();\n }\n\n public async append(message: AppendMessage): Promise<void> {\n const newMessage = fromCoreMessage(message, {\n attachments: message.attachments,\n });\n this.repository.addOrUpdateMessage(message.parentId, newMessage);\n\n if (message.role === \"user\") {\n await this.startRun(newMessage.id);\n } else {\n this.repository.resetHead(newMessage.id);\n this._notifySubscribers();\n }\n }\n\n public async startRun(parentId: string | null): Promise<void> {\n this.repository.resetHead(parentId);\n\n // add assistant message\n const id = generateId();\n let message: ThreadAssistantMessage = {\n id,\n role: \"assistant\",\n status: { type: \"running\" },\n content: [],\n createdAt: new Date(),\n };\n\n this._notifyEventSubscribers(\"run-start\");\n\n do {\n message = await this.performRoundtrip(parentId, message);\n } while (shouldContinue(message));\n }\n\n private async performRoundtrip(\n parentId: string | null,\n message: ThreadAssistantMessage,\n ) {\n const messages = this.repository.getMessages();\n\n // abort existing run\n this.abortController?.abort();\n this.abortController = new AbortController();\n\n const initialContent = message.content;\n const initialSteps = message.metadata?.steps;\n const initalCustom = message.metadata?.custom;\n const updateMessage = (m: Partial<ChatModelRunResult>) => {\n const newSteps = m.metadata?.steps || m.metadata?.roundtrips;\n const steps = newSteps\n ? [...(initialSteps ?? []), ...newSteps]\n : undefined;\n\n message = {\n ...message,\n ...(m.content\n ? { content: [...initialContent, ...(m.content ?? [])] }\n : undefined),\n status: m.status ?? message.status,\n // TODO deprecated, remove in v0.6\n ...(steps ? { roundtrips: steps } : undefined),\n ...(m.metadata\n ? {\n metadata: {\n ...message.metadata,\n ...(steps ? { roundtrips: steps, steps } : undefined),\n ...(m.metadata?.custom\n ? {\n custom: { ...(initalCustom ?? {}), ...m.metadata.custom },\n }\n : undefined),\n },\n }\n : undefined),\n };\n this.repository.addOrUpdateMessage(parentId, message);\n this._notifySubscribers();\n };\n\n const maxSteps = this._options.maxSteps\n ? this._options.maxSteps\n : (this._options.maxToolRoundtrips ?? 1) + 1;\n\n const steps = message.metadata?.steps?.length ?? 0;\n if (steps >= maxSteps) {\n // reached max tool steps\n updateMessage({\n status: {\n type: \"incomplete\",\n reason: \"tool-calls\",\n },\n });\n return message;\n } else {\n updateMessage({\n status: {\n type: \"running\",\n },\n });\n }\n\n try {\n const promiseOrGenerator = this.adapters.chatModel.run({\n messages,\n abortSignal: this.abortController.signal,\n config: this.getModelConfig(),\n onUpdate: updateMessage,\n unstable_assistantMessageId: message.id,\n });\n\n // handle async iterator for streaming results\n if (Symbol.asyncIterator in promiseOrGenerator) {\n for await (const r of promiseOrGenerator) {\n updateMessage(r);\n }\n } else {\n updateMessage(await promiseOrGenerator);\n }\n\n this.abortController = null;\n\n if (message.status.type === \"running\") {\n updateMessage({\n status: { type: \"complete\", reason: \"unknown\" },\n });\n }\n } catch (e) {\n this.abortController = null;\n\n // TODO this should be handled by the run result stream\n if (e instanceof Error && e.name === \"AbortError\") {\n updateMessage({\n status: { type: \"incomplete\", reason: \"cancelled\" },\n });\n } else {\n updateMessage({\n status: { type: \"incomplete\", reason: \"error\", error: e },\n });\n\n throw e;\n }\n }\n return message;\n }\n\n public cancelRun() {\n this.abortController?.abort();\n this.abortController = null;\n }\n\n public addToolResult({\n messageId,\n toolCallId,\n result,\n }: AddToolResultOptions) {\n const messageData = this.repository.getMessage(messageId);\n const { parentId } = messageData;\n let { message } = messageData;\n\n if (message.role !== \"assistant\")\n throw new Error(\"Tried to add tool result to non-assistant message\");\n\n let added = false;\n let found = false;\n const newContent = message.content.map((c) => {\n if (c.type !== \"tool-call\") return c;\n if (c.toolCallId !== toolCallId) return c;\n found = true;\n if (!c.result) added = true;\n return {\n ...c,\n result,\n };\n });\n\n if (!found)\n throw new Error(\"Tried to add tool result to non-existing tool call\");\n\n message = {\n ...message,\n content: newContent,\n };\n this.repository.addOrUpdateMessage(parentId, message);\n\n if (added && shouldContinue(message)) {\n this.performRoundtrip(parentId, message);\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA2B;AAM3B,kBAAgC;AAEhC,4BAA+B;AAO/B,mCAAsC;AAE/B,MAAM,+BACH,mDAEV;AAAA,EAqBE,YACE,gBACgB,UAChB,SACA;AACA,UAAM,cAAc;AAHJ;AAKhB,SAAK,WAAW,OAAO;AAAA,EACzB;AAAA,EA5BgB,eAAe;AAAA,IAC7B,gBAAgB;AAAA,IAChB,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR,eAAe;AAAA,IACf,QAAQ;AAAA,IACR,aAAa;AAAA,IACb,UAAU;AAAA,EACZ;AAAA,EAEQ,kBAA0C;AAAA,EAElC,aAAa;AAAA,EACb,cAA2C,CAAC;AAAA,EAE5D,IAAW,WAAW;AACpB,WAAO,KAAK,SAAS;AAAA,EACvB;AAAA,EAYQ;AAAA,EAER,IAAW,SAAS;AAClB,WAAO;AAAA,EACT;AAAA,EAEO,WAAW,SAAkC;AAClD,QAAI,KAAK,aAAa,QAAS;AAE/B,SAAK,WAAW;AAEhB,QAAI,aAAa;AAEjB,UAAM,WAAW,QAAQ,UAAU,WAAW;AAC9C,QAAI,KAAK,aAAa,WAAW,UAAU;AACzC,WAAK,aAAa,SAAS;AAC3B,mBAAa;AAAA,IACf;AAEA,UAAM,YAAY,QAAQ,UAAU,gBAAgB;AACpD,QAAI,KAAK,aAAa,gBAAgB,WAAW;AAC/C,WAAK,aAAa,cAAc;AAChC,mBAAa;AAAA,IACf;AAEA,UAAM,cAAc,QAAQ,UAAU,aAAa;AACnD,QAAI,KAAK,aAAa,aAAa,aAAa;AAC9C,WAAK,aAAa,WAAW;AAC7B,mBAAa;AAAA,IACf;AAEA,QAAI,WAAY,MAAK,mBAAmB;AAAA,EAC1C;AAAA,EAEA,MAAa,OAAO,SAAuC;AACzD,UAAM,iBAAa,6BAAgB,SAAS;AAAA,MAC1C,aAAa,QAAQ;AAAA,IACvB,CAAC;AACD,SAAK,WAAW,mBAAmB,QAAQ,UAAU,UAAU;AAE/D,QAAI,QAAQ,SAAS,QAAQ;AAC3B,YAAM,KAAK,SAAS,WAAW,EAAE;AAAA,IACnC,OAAO;AACL,WAAK,WAAW,UAAU,WAAW,EAAE;AACvC,WAAK,mBAAmB;AAAA,IAC1B;AAAA,EACF;AAAA,EAEA,MAAa,SAAS,UAAwC;AAC5D,SAAK,WAAW,UAAU,QAAQ;AAGlC,UAAM,SAAK,4BAAW;AACtB,QAAI,UAAkC;AAAA,MACpC;AAAA,MACA,MAAM;AAAA,MACN,QAAQ,EAAE,MAAM,UAAU;AAAA,MAC1B,SAAS,CAAC;AAAA,MACV,WAAW,oBAAI,KAAK;AAAA,IACtB;AAEA,SAAK,wBAAwB,WAAW;AAExC,OAAG;AACD,gBAAU,MAAM,KAAK,iBAAiB,UAAU,OAAO;AAAA,IACzD,aAAS,sCAAe,OAAO;AAAA,EACjC;AAAA,EAEA,MAAc,iBACZ,UACA,SACA;AACA,UAAM,WAAW,KAAK,WAAW,YAAY;AAG7C,SAAK,iBAAiB,MAAM;AAC5B,SAAK,kBAAkB,IAAI,gBAAgB;AAE3C,UAAM,iBAAiB,QAAQ;AAC/B,UAAM,eAAe,QAAQ,UAAU;AACvC,UAAM,eAAe,QAAQ,UAAU;AACvC,UAAM,gBAAgB,CAAC,MAAmC;AACxD,YAAM,WAAW,EAAE,UAAU,SAAS,EAAE,UAAU;AAClD,YAAMA,SAAQ,WACV,CAAC,GAAI,gBAAgB,CAAC,GAAI,GAAG,QAAQ,IACrC;AAEJ,gBAAU;AAAA,QACR,GAAG;AAAA,QACH,GAAI,EAAE,UACF,EAAE,SAAS,CAAC,GAAG,gBAAgB,GAAI,EAAE,WAAW,CAAC,CAAE,EAAE,IACrD;AAAA,QACJ,QAAQ,EAAE,UAAU,QAAQ;AAAA;AAAA,QAE5B,GAAIA,SAAQ,EAAE,YAAYA,OAAM,IAAI;AAAA,QACpC,GAAI,EAAE,WACF;AAAA,UACE,UAAU;AAAA,YACR,GAAG,QAAQ;AAAA,YACX,GAAIA,SAAQ,EAAE,YAAYA,QAAO,OAAAA,OAAM,IAAI;AAAA,YAC3C,GAAI,EAAE,UAAU,SACZ;AAAA,cACE,QAAQ,EAAE,GAAI,gBAAgB,CAAC,GAAI,GAAG,EAAE,SAAS,OAAO;AAAA,YAC1D,IACA;AAAA,UACN;AAAA,QACF,IACA;AAAA,MACN;AACA,WAAK,WAAW,mBAAmB,UAAU,OAAO;AACpD,WAAK,mBAAmB;AAAA,IAC1B;AAEA,UAAM,WAAW,KAAK,SAAS,WAC3B,KAAK,SAAS,YACb,KAAK,SAAS,qBAAqB,KAAK;AAE7C,UAAM,QAAQ,QAAQ,UAAU,OAAO,UAAU;AACjD,QAAI,SAAS,UAAU;AAErB,oBAAc;AAAA,QACZ,QAAQ;AAAA,UACN,MAAM;AAAA,UACN,QAAQ;AAAA,QACV;AAAA,MACF,CAAC;AACD,aAAO;AAAA,IACT,OAAO;AACL,oBAAc;AAAA,QACZ,QAAQ;AAAA,UACN,MAAM;AAAA,QACR;AAAA,MACF,CAAC;AAAA,IACH;AAEA,QAAI;AACF,YAAM,qBAAqB,KAAK,SAAS,UAAU,IAAI;AAAA,QACrD;AAAA,QACA,aAAa,KAAK,gBAAgB;AAAA,QAClC,QAAQ,KAAK,eAAe;AAAA,QAC5B,UAAU;AAAA,QACV,6BAA6B,QAAQ;AAAA,MACvC,CAAC;AAGD,UAAI,OAAO,iBAAiB,oBAAoB;AAC9C,yBAAiB,KAAK,oBAAoB;AACxC,wBAAc,CAAC;AAAA,QACjB;AAAA,MACF,OAAO;AACL,sBAAc,MAAM,kBAAkB;AAAA,MACxC;AAEA,WAAK,kBAAkB;AAEvB,UAAI,QAAQ,OAAO,SAAS,WAAW;AACrC,sBAAc;AAAA,UACZ,QAAQ,EAAE,MAAM,YAAY,QAAQ,UAAU;AAAA,QAChD,CAAC;AAAA,MACH;AAAA,IACF,SAAS,GAAG;AACV,WAAK,kBAAkB;AAGvB,UAAI,aAAa,SAAS,EAAE,SAAS,cAAc;AACjD,sBAAc;AAAA,UACZ,QAAQ,EAAE,MAAM,cAAc,QAAQ,YAAY;AAAA,QACpD,CAAC;AAAA,MACH,OAAO;AACL,sBAAc;AAAA,UACZ,QAAQ,EAAE,MAAM,cAAc,QAAQ,SAAS,OAAO,EAAE;AAAA,QAC1D,CAAC;AAED,cAAM;AAAA,MACR;AAAA,IACF;AACA,WAAO;AAAA,EACT;AAAA,EAEO,YAAY;AACjB,SAAK,iBAAiB,MAAM;AAC5B,SAAK,kBAAkB;AAAA,EACzB;AAAA,EAEO,cAAc;AAAA,IACnB;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAyB;AACvB,UAAM,cAAc,KAAK,WAAW,WAAW,SAAS;AACxD,UAAM,EAAE,SAAS,IAAI;AACrB,QAAI,EAAE,QAAQ,IAAI;AAElB,QAAI,QAAQ,SAAS;AACnB,YAAM,IAAI,MAAM,mDAAmD;AAErE,QAAI,QAAQ;AACZ,QAAI,QAAQ;AACZ,UAAM,aAAa,QAAQ,QAAQ,IAAI,CAAC,MAAM;AAC5C,UAAI,EAAE,SAAS,YAAa,QAAO;AACnC,UAAI,EAAE,eAAe,WAAY,QAAO;AACxC,cAAQ;AACR,UAAI,CAAC,EAAE,OAAQ,SAAQ;AACvB,aAAO;AAAA,QACL,GAAG;AAAA,QACH;AAAA,MACF;AAAA,IACF,CAAC;AAED,QAAI,CAAC;AACH,YAAM,IAAI,MAAM,oDAAoD;AAEtE,cAAU;AAAA,MACR,GAAG;AAAA,MACH,SAAS;AAAA,IACX;AACA,SAAK,WAAW,mBAAmB,UAAU,OAAO;AAEpD,QAAI,aAAS,sCAAe,OAAO,GAAG;AACpC,WAAK,iBAAiB,UAAU,OAAO;AAAA,IACzC;AAAA,EACF;AACF;","names":["steps"]}
1
+ {"version":3,"sources":["../../../src/runtimes/local/LocalThreadRuntimeCore.tsx"],"sourcesContent":["import { generateId } from \"../../internal\";\nimport type {\n ModelConfigProvider,\n AppendMessage,\n ThreadAssistantMessage,\n} from \"../../types\";\nimport { fromCoreMessage } from \"../edge\";\nimport type { ChatModelRunResult } from \"./ChatModelAdapter\";\nimport { shouldContinue } from \"./shouldContinue\";\nimport { LocalRuntimeOptionsBase } from \"./LocalRuntimeOptions\";\nimport {\n AddToolResultOptions,\n ThreadSuggestion,\n ThreadRuntimeCore,\n} from \"../core/ThreadRuntimeCore\";\nimport { BaseThreadRuntimeCore } from \"../core/BaseThreadRuntimeCore\";\n\nexport class LocalThreadRuntimeCore\n extends BaseThreadRuntimeCore\n implements ThreadRuntimeCore\n{\n public readonly capabilities = {\n switchToBranch: true,\n edit: true,\n reload: true,\n cancel: true,\n unstable_copy: true,\n speech: false,\n attachments: false,\n feedback: false,\n };\n\n private abortController: AbortController | null = null;\n\n public readonly isDisabled = false;\n public readonly suggestions: readonly ThreadSuggestion[] = [];\n\n public get adapters() {\n return this._options.adapters;\n }\n\n constructor(\n configProvider: ModelConfigProvider,\n public readonly threadId: string,\n options: LocalRuntimeOptionsBase,\n ) {\n super(configProvider);\n\n this.setOptions(options);\n }\n\n private _options!: LocalRuntimeOptionsBase;\n\n public get extras() {\n return undefined;\n }\n\n public setOptions(options: LocalRuntimeOptionsBase) {\n if (this._options === options) return;\n\n this._options = options;\n\n let hasUpdates = false;\n\n const canSpeak = options.adapters?.speech !== undefined;\n if (this.capabilities.speech !== canSpeak) {\n this.capabilities.speech = canSpeak;\n hasUpdates = true;\n }\n\n const canAttach = options.adapters?.attachments !== undefined;\n if (this.capabilities.attachments !== canAttach) {\n this.capabilities.attachments = canAttach;\n hasUpdates = true;\n }\n\n const canFeedback = options.adapters?.feedback !== undefined;\n if (this.capabilities.feedback !== canFeedback) {\n this.capabilities.feedback = canFeedback;\n hasUpdates = true;\n }\n\n if (hasUpdates) this._notifySubscribers();\n }\n\n public async append(message: AppendMessage): Promise<void> {\n const newMessage = fromCoreMessage(message, {\n attachments: message.attachments,\n });\n this.repository.addOrUpdateMessage(message.parentId, newMessage);\n\n const startRun = message.startRun ?? message.role === \"user\";\n if (startRun) {\n await this.startRun(newMessage.id);\n } else {\n this.repository.resetHead(newMessage.id);\n this._notifySubscribers();\n }\n }\n\n public async startRun(parentId: string | null): Promise<void> {\n this.repository.resetHead(parentId);\n\n // add assistant message\n const id = generateId();\n let message: ThreadAssistantMessage = {\n id,\n role: \"assistant\",\n status: { type: \"running\" },\n content: [],\n createdAt: new Date(),\n };\n\n this._notifyEventSubscribers(\"run-start\");\n\n do {\n message = await this.performRoundtrip(parentId, message);\n } while (shouldContinue(message));\n }\n\n private async performRoundtrip(\n parentId: string | null,\n message: ThreadAssistantMessage,\n ) {\n const messages = this.repository.getMessages();\n\n // abort existing run\n this.abortController?.abort();\n this.abortController = new AbortController();\n\n const initialContent = message.content;\n const initialSteps = message.metadata?.steps;\n const initalCustom = message.metadata?.custom;\n const updateMessage = (m: Partial<ChatModelRunResult>) => {\n const newSteps = m.metadata?.steps || m.metadata?.roundtrips;\n const steps = newSteps\n ? [...(initialSteps ?? []), ...newSteps]\n : undefined;\n\n message = {\n ...message,\n ...(m.content\n ? { content: [...initialContent, ...(m.content ?? [])] }\n : undefined),\n status: m.status ?? message.status,\n // TODO deprecated, remove in v0.6\n ...(steps ? { roundtrips: steps } : undefined),\n ...(m.metadata\n ? {\n metadata: {\n ...message.metadata,\n ...(steps ? { roundtrips: steps, steps } : undefined),\n ...(m.metadata?.custom\n ? {\n custom: { ...(initalCustom ?? {}), ...m.metadata.custom },\n }\n : undefined),\n },\n }\n : undefined),\n };\n this.repository.addOrUpdateMessage(parentId, message);\n this._notifySubscribers();\n };\n\n const maxSteps = this._options.maxSteps\n ? this._options.maxSteps\n : (this._options.maxToolRoundtrips ?? 1) + 1;\n\n const steps = message.metadata?.steps?.length ?? 0;\n if (steps >= maxSteps) {\n // reached max tool steps\n updateMessage({\n status: {\n type: \"incomplete\",\n reason: \"tool-calls\",\n },\n });\n return message;\n } else {\n updateMessage({\n status: {\n type: \"running\",\n },\n });\n }\n\n try {\n const promiseOrGenerator = this.adapters.chatModel.run({\n messages,\n abortSignal: this.abortController.signal,\n config: this.getModelConfig(),\n onUpdate: updateMessage,\n unstable_assistantMessageId: message.id,\n });\n\n // handle async iterator for streaming results\n if (Symbol.asyncIterator in promiseOrGenerator) {\n for await (const r of promiseOrGenerator) {\n updateMessage(r);\n }\n } else {\n updateMessage(await promiseOrGenerator);\n }\n\n this.abortController = null;\n\n if (message.status.type === \"running\") {\n updateMessage({\n status: { type: \"complete\", reason: \"unknown\" },\n });\n }\n } catch (e) {\n this.abortController = null;\n\n // TODO this should be handled by the run result stream\n if (e instanceof Error && e.name === \"AbortError\") {\n updateMessage({\n status: { type: \"incomplete\", reason: \"cancelled\" },\n });\n } else {\n updateMessage({\n status: { type: \"incomplete\", reason: \"error\", error: e },\n });\n\n throw e;\n }\n }\n return message;\n }\n\n public cancelRun() {\n this.abortController?.abort();\n this.abortController = null;\n }\n\n public addToolResult({\n messageId,\n toolCallId,\n result,\n }: AddToolResultOptions) {\n const messageData = this.repository.getMessage(messageId);\n const { parentId } = messageData;\n let { message } = messageData;\n\n if (message.role !== \"assistant\")\n throw new Error(\"Tried to add tool result to non-assistant message\");\n\n let added = false;\n let found = false;\n const newContent = message.content.map((c) => {\n if (c.type !== \"tool-call\") return c;\n if (c.toolCallId !== toolCallId) return c;\n found = true;\n if (!c.result) added = true;\n return {\n ...c,\n result,\n };\n });\n\n if (!found)\n throw new Error(\"Tried to add tool result to non-existing tool call\");\n\n message = {\n ...message,\n content: newContent,\n };\n this.repository.addOrUpdateMessage(parentId, message);\n\n if (added && shouldContinue(message)) {\n this.performRoundtrip(parentId, message);\n }\n }\n}\n"],"mappings":"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","names":["steps"]}
@@ -1,8 +1,9 @@
1
- import { generateId } from "../../internal";
2
- import { fromCoreMessage } from "../edge";
3
- import { shouldContinue } from "./shouldContinue";
4
- import { BaseThreadRuntimeCore } from "../core/BaseThreadRuntimeCore";
5
- class LocalThreadRuntimeCore extends BaseThreadRuntimeCore {
1
+ // src/runtimes/local/LocalThreadRuntimeCore.tsx
2
+ import { generateId } from "../../internal.mjs";
3
+ import { fromCoreMessage } from "../edge/index.mjs";
4
+ import { shouldContinue } from "./shouldContinue.mjs";
5
+ import { BaseThreadRuntimeCore } from "../core/BaseThreadRuntimeCore.mjs";
6
+ var LocalThreadRuntimeCore = class extends BaseThreadRuntimeCore {
6
7
  constructor(configProvider, threadId, options) {
7
8
  super(configProvider);
8
9
  this.threadId = threadId;
@@ -54,7 +55,8 @@ class LocalThreadRuntimeCore extends BaseThreadRuntimeCore {
54
55
  attachments: message.attachments
55
56
  });
56
57
  this.repository.addOrUpdateMessage(message.parentId, newMessage);
57
- if (message.role === "user") {
58
+ const startRun = message.startRun ?? message.role === "user";
59
+ if (startRun) {
58
60
  await this.startRun(newMessage.id);
59
61
  } else {
60
62
  this.repository.resetHead(newMessage.id);
@@ -195,7 +197,7 @@ class LocalThreadRuntimeCore extends BaseThreadRuntimeCore {
195
197
  this.performRoundtrip(parentId, message);
196
198
  }
197
199
  }
198
- }
200
+ };
199
201
  export {
200
202
  LocalThreadRuntimeCore
201
203
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/local/LocalThreadRuntimeCore.tsx"],"sourcesContent":["import { generateId } from \"../../internal\";\nimport type {\n ModelConfigProvider,\n AppendMessage,\n ThreadAssistantMessage,\n} from \"../../types\";\nimport { fromCoreMessage } from \"../edge\";\nimport type { ChatModelRunResult } from \"./ChatModelAdapter\";\nimport { shouldContinue } from \"./shouldContinue\";\nimport { LocalRuntimeOptionsBase } from \"./LocalRuntimeOptions\";\nimport {\n AddToolResultOptions,\n ThreadSuggestion,\n ThreadRuntimeCore,\n} from \"../core/ThreadRuntimeCore\";\nimport { BaseThreadRuntimeCore } from \"../core/BaseThreadRuntimeCore\";\n\nexport class LocalThreadRuntimeCore\n extends BaseThreadRuntimeCore\n implements ThreadRuntimeCore\n{\n public readonly capabilities = {\n switchToBranch: true,\n edit: true,\n reload: true,\n cancel: true,\n unstable_copy: true,\n speech: false,\n attachments: false,\n feedback: false,\n };\n\n private abortController: AbortController | null = null;\n\n public readonly isDisabled = false;\n public readonly suggestions: readonly ThreadSuggestion[] = [];\n\n public get adapters() {\n return this._options.adapters;\n }\n\n constructor(\n configProvider: ModelConfigProvider,\n public readonly threadId: string,\n options: LocalRuntimeOptionsBase,\n ) {\n super(configProvider);\n\n this.setOptions(options);\n }\n\n private _options!: LocalRuntimeOptionsBase;\n\n public get extras() {\n return undefined;\n }\n\n public setOptions(options: LocalRuntimeOptionsBase) {\n if (this._options === options) return;\n\n this._options = options;\n\n let hasUpdates = false;\n\n const canSpeak = options.adapters?.speech !== undefined;\n if (this.capabilities.speech !== canSpeak) {\n this.capabilities.speech = canSpeak;\n hasUpdates = true;\n }\n\n const canAttach = options.adapters?.attachments !== undefined;\n if (this.capabilities.attachments !== canAttach) {\n this.capabilities.attachments = canAttach;\n hasUpdates = true;\n }\n\n const canFeedback = options.adapters?.feedback !== undefined;\n if (this.capabilities.feedback !== canFeedback) {\n this.capabilities.feedback = canFeedback;\n hasUpdates = true;\n }\n\n if (hasUpdates) this._notifySubscribers();\n }\n\n public async append(message: AppendMessage): Promise<void> {\n const newMessage = fromCoreMessage(message, {\n attachments: message.attachments,\n });\n this.repository.addOrUpdateMessage(message.parentId, newMessage);\n\n if (message.role === \"user\") {\n await this.startRun(newMessage.id);\n } else {\n this.repository.resetHead(newMessage.id);\n this._notifySubscribers();\n }\n }\n\n public async startRun(parentId: string | null): Promise<void> {\n this.repository.resetHead(parentId);\n\n // add assistant message\n const id = generateId();\n let message: ThreadAssistantMessage = {\n id,\n role: \"assistant\",\n status: { type: \"running\" },\n content: [],\n createdAt: new Date(),\n };\n\n this._notifyEventSubscribers(\"run-start\");\n\n do {\n message = await this.performRoundtrip(parentId, message);\n } while (shouldContinue(message));\n }\n\n private async performRoundtrip(\n parentId: string | null,\n message: ThreadAssistantMessage,\n ) {\n const messages = this.repository.getMessages();\n\n // abort existing run\n this.abortController?.abort();\n this.abortController = new AbortController();\n\n const initialContent = message.content;\n const initialSteps = message.metadata?.steps;\n const initalCustom = message.metadata?.custom;\n const updateMessage = (m: Partial<ChatModelRunResult>) => {\n const newSteps = m.metadata?.steps || m.metadata?.roundtrips;\n const steps = newSteps\n ? [...(initialSteps ?? []), ...newSteps]\n : undefined;\n\n message = {\n ...message,\n ...(m.content\n ? { content: [...initialContent, ...(m.content ?? [])] }\n : undefined),\n status: m.status ?? message.status,\n // TODO deprecated, remove in v0.6\n ...(steps ? { roundtrips: steps } : undefined),\n ...(m.metadata\n ? {\n metadata: {\n ...message.metadata,\n ...(steps ? { roundtrips: steps, steps } : undefined),\n ...(m.metadata?.custom\n ? {\n custom: { ...(initalCustom ?? {}), ...m.metadata.custom },\n }\n : undefined),\n },\n }\n : undefined),\n };\n this.repository.addOrUpdateMessage(parentId, message);\n this._notifySubscribers();\n };\n\n const maxSteps = this._options.maxSteps\n ? this._options.maxSteps\n : (this._options.maxToolRoundtrips ?? 1) + 1;\n\n const steps = message.metadata?.steps?.length ?? 0;\n if (steps >= maxSteps) {\n // reached max tool steps\n updateMessage({\n status: {\n type: \"incomplete\",\n reason: \"tool-calls\",\n },\n });\n return message;\n } else {\n updateMessage({\n status: {\n type: \"running\",\n },\n });\n }\n\n try {\n const promiseOrGenerator = this.adapters.chatModel.run({\n messages,\n abortSignal: this.abortController.signal,\n config: this.getModelConfig(),\n onUpdate: updateMessage,\n unstable_assistantMessageId: message.id,\n });\n\n // handle async iterator for streaming results\n if (Symbol.asyncIterator in promiseOrGenerator) {\n for await (const r of promiseOrGenerator) {\n updateMessage(r);\n }\n } else {\n updateMessage(await promiseOrGenerator);\n }\n\n this.abortController = null;\n\n if (message.status.type === \"running\") {\n updateMessage({\n status: { type: \"complete\", reason: \"unknown\" },\n });\n }\n } catch (e) {\n this.abortController = null;\n\n // TODO this should be handled by the run result stream\n if (e instanceof Error && e.name === \"AbortError\") {\n updateMessage({\n status: { type: \"incomplete\", reason: \"cancelled\" },\n });\n } else {\n updateMessage({\n status: { type: \"incomplete\", reason: \"error\", error: e },\n });\n\n throw e;\n }\n }\n return message;\n }\n\n public cancelRun() {\n this.abortController?.abort();\n this.abortController = null;\n }\n\n public addToolResult({\n messageId,\n toolCallId,\n result,\n }: AddToolResultOptions) {\n const messageData = this.repository.getMessage(messageId);\n const { parentId } = messageData;\n let { message } = messageData;\n\n if (message.role !== \"assistant\")\n throw new Error(\"Tried to add tool result to non-assistant message\");\n\n let added = false;\n let found = false;\n const newContent = message.content.map((c) => {\n if (c.type !== \"tool-call\") return c;\n if (c.toolCallId !== toolCallId) return c;\n found = true;\n if (!c.result) added = true;\n return {\n ...c,\n result,\n };\n });\n\n if (!found)\n throw new Error(\"Tried to add tool result to non-existing tool call\");\n\n message = {\n ...message,\n content: newContent,\n };\n this.repository.addOrUpdateMessage(parentId, message);\n\n if (added && shouldContinue(message)) {\n this.performRoundtrip(parentId, message);\n }\n }\n}\n"],"mappings":"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","names":["steps"]}
1
+ {"version":3,"sources":["../../../src/runtimes/local/LocalThreadRuntimeCore.tsx"],"sourcesContent":["import { generateId } from \"../../internal\";\nimport type {\n ModelConfigProvider,\n AppendMessage,\n ThreadAssistantMessage,\n} from \"../../types\";\nimport { fromCoreMessage } from \"../edge\";\nimport type { ChatModelRunResult } from \"./ChatModelAdapter\";\nimport { shouldContinue } from \"./shouldContinue\";\nimport { LocalRuntimeOptionsBase } from \"./LocalRuntimeOptions\";\nimport {\n AddToolResultOptions,\n ThreadSuggestion,\n ThreadRuntimeCore,\n} from \"../core/ThreadRuntimeCore\";\nimport { BaseThreadRuntimeCore } from \"../core/BaseThreadRuntimeCore\";\n\nexport class LocalThreadRuntimeCore\n extends BaseThreadRuntimeCore\n implements ThreadRuntimeCore\n{\n public readonly capabilities = {\n switchToBranch: true,\n edit: true,\n reload: true,\n cancel: true,\n unstable_copy: true,\n speech: false,\n attachments: false,\n feedback: false,\n };\n\n private abortController: AbortController | null = null;\n\n public readonly isDisabled = false;\n public readonly suggestions: readonly ThreadSuggestion[] = [];\n\n public get adapters() {\n return this._options.adapters;\n }\n\n constructor(\n configProvider: ModelConfigProvider,\n public readonly threadId: string,\n options: LocalRuntimeOptionsBase,\n ) {\n super(configProvider);\n\n this.setOptions(options);\n }\n\n private _options!: LocalRuntimeOptionsBase;\n\n public get extras() {\n return undefined;\n }\n\n public setOptions(options: LocalRuntimeOptionsBase) {\n if (this._options === options) return;\n\n this._options = options;\n\n let hasUpdates = false;\n\n const canSpeak = options.adapters?.speech !== undefined;\n if (this.capabilities.speech !== canSpeak) {\n this.capabilities.speech = canSpeak;\n hasUpdates = true;\n }\n\n const canAttach = options.adapters?.attachments !== undefined;\n if (this.capabilities.attachments !== canAttach) {\n this.capabilities.attachments = canAttach;\n hasUpdates = true;\n }\n\n const canFeedback = options.adapters?.feedback !== undefined;\n if (this.capabilities.feedback !== canFeedback) {\n this.capabilities.feedback = canFeedback;\n hasUpdates = true;\n }\n\n if (hasUpdates) this._notifySubscribers();\n }\n\n public async append(message: AppendMessage): Promise<void> {\n const newMessage = fromCoreMessage(message, {\n attachments: message.attachments,\n });\n this.repository.addOrUpdateMessage(message.parentId, newMessage);\n\n const startRun = message.startRun ?? message.role === \"user\";\n if (startRun) {\n await this.startRun(newMessage.id);\n } else {\n this.repository.resetHead(newMessage.id);\n this._notifySubscribers();\n }\n }\n\n public async startRun(parentId: string | null): Promise<void> {\n this.repository.resetHead(parentId);\n\n // add assistant message\n const id = generateId();\n let message: ThreadAssistantMessage = {\n id,\n role: \"assistant\",\n status: { type: \"running\" },\n content: [],\n createdAt: new Date(),\n };\n\n this._notifyEventSubscribers(\"run-start\");\n\n do {\n message = await this.performRoundtrip(parentId, message);\n } while (shouldContinue(message));\n }\n\n private async performRoundtrip(\n parentId: string | null,\n message: ThreadAssistantMessage,\n ) {\n const messages = this.repository.getMessages();\n\n // abort existing run\n this.abortController?.abort();\n this.abortController = new AbortController();\n\n const initialContent = message.content;\n const initialSteps = message.metadata?.steps;\n const initalCustom = message.metadata?.custom;\n const updateMessage = (m: Partial<ChatModelRunResult>) => {\n const newSteps = m.metadata?.steps || m.metadata?.roundtrips;\n const steps = newSteps\n ? [...(initialSteps ?? []), ...newSteps]\n : undefined;\n\n message = {\n ...message,\n ...(m.content\n ? { content: [...initialContent, ...(m.content ?? [])] }\n : undefined),\n status: m.status ?? message.status,\n // TODO deprecated, remove in v0.6\n ...(steps ? { roundtrips: steps } : undefined),\n ...(m.metadata\n ? {\n metadata: {\n ...message.metadata,\n ...(steps ? { roundtrips: steps, steps } : undefined),\n ...(m.metadata?.custom\n ? {\n custom: { ...(initalCustom ?? {}), ...m.metadata.custom },\n }\n : undefined),\n },\n }\n : undefined),\n };\n this.repository.addOrUpdateMessage(parentId, message);\n this._notifySubscribers();\n };\n\n const maxSteps = this._options.maxSteps\n ? this._options.maxSteps\n : (this._options.maxToolRoundtrips ?? 1) + 1;\n\n const steps = message.metadata?.steps?.length ?? 0;\n if (steps >= maxSteps) {\n // reached max tool steps\n updateMessage({\n status: {\n type: \"incomplete\",\n reason: \"tool-calls\",\n },\n });\n return message;\n } else {\n updateMessage({\n status: {\n type: \"running\",\n },\n });\n }\n\n try {\n const promiseOrGenerator = this.adapters.chatModel.run({\n messages,\n abortSignal: this.abortController.signal,\n config: this.getModelConfig(),\n onUpdate: updateMessage,\n unstable_assistantMessageId: message.id,\n });\n\n // handle async iterator for streaming results\n if (Symbol.asyncIterator in promiseOrGenerator) {\n for await (const r of promiseOrGenerator) {\n updateMessage(r);\n }\n } else {\n updateMessage(await promiseOrGenerator);\n }\n\n this.abortController = null;\n\n if (message.status.type === \"running\") {\n updateMessage({\n status: { type: \"complete\", reason: \"unknown\" },\n });\n }\n } catch (e) {\n this.abortController = null;\n\n // TODO this should be handled by the run result stream\n if (e instanceof Error && e.name === \"AbortError\") {\n updateMessage({\n status: { type: \"incomplete\", reason: \"cancelled\" },\n });\n } else {\n updateMessage({\n status: { type: \"incomplete\", reason: \"error\", error: e },\n });\n\n throw e;\n }\n }\n return message;\n }\n\n public cancelRun() {\n this.abortController?.abort();\n this.abortController = null;\n }\n\n public addToolResult({\n messageId,\n toolCallId,\n result,\n }: AddToolResultOptions) {\n const messageData = this.repository.getMessage(messageId);\n const { parentId } = messageData;\n let { message } = messageData;\n\n if (message.role !== \"assistant\")\n throw new Error(\"Tried to add tool result to non-assistant message\");\n\n let added = false;\n let found = false;\n const newContent = message.content.map((c) => {\n if (c.type !== \"tool-call\") return c;\n if (c.toolCallId !== toolCallId) return c;\n found = true;\n if (!c.result) added = true;\n return {\n ...c,\n result,\n };\n });\n\n if (!found)\n throw new Error(\"Tried to add tool result to non-existing tool call\");\n\n message = {\n ...message,\n content: newContent,\n };\n this.repository.addOrUpdateMessage(parentId, message);\n\n if (added && shouldContinue(message)) {\n this.performRoundtrip(parentId, message);\n }\n }\n}\n"],"mappings":"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","names":["steps"]}
@@ -16,12 +16,14 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/runtimes/local/index.ts
19
21
  var local_exports = {};
20
22
  __export(local_exports, {
21
23
  useLocalRuntime: () => import_useLocalRuntime.useLocalRuntime
22
24
  });
23
25
  module.exports = __toCommonJS(local_exports);
24
- var import_useLocalRuntime = require("./useLocalRuntime");
26
+ var import_useLocalRuntime = require("./useLocalRuntime.cjs");
25
27
  // Annotate the CommonJS export names for ESM import in node:
26
28
  0 && (module.exports = {
27
29
  useLocalRuntime
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/local/index.ts"],"sourcesContent":["export { useLocalRuntime } from \"./useLocalRuntime\";\nexport type { LocalRuntimeOptions } from \"./LocalRuntimeOptions\";\nexport type {\n ChatModelAdapter,\n ChatModelRunOptions,\n ChatModelRunResult,\n ChatModelRunUpdate,\n} from \"./ChatModelAdapter\";\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAAgC;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/local/index.ts"],"sourcesContent":["export { useLocalRuntime } from \"./useLocalRuntime\";\nexport type { LocalRuntimeOptions } from \"./LocalRuntimeOptions\";\nexport type {\n ChatModelAdapter,\n ChatModelRunOptions,\n ChatModelRunResult,\n ChatModelRunUpdate,\n} from \"./ChatModelAdapter\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAAgC;","names":[]}
@@ -1,4 +1,5 @@
1
- import { useLocalRuntime } from "./useLocalRuntime";
1
+ // src/runtimes/local/index.ts
2
+ import { useLocalRuntime } from "./useLocalRuntime.mjs";
2
3
  export {
3
4
  useLocalRuntime
4
5
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/local/index.ts"],"sourcesContent":["export { useLocalRuntime } from \"./useLocalRuntime\";\nexport type { LocalRuntimeOptions } from \"./LocalRuntimeOptions\";\nexport type {\n ChatModelAdapter,\n ChatModelRunOptions,\n ChatModelRunResult,\n ChatModelRunUpdate,\n} from \"./ChatModelAdapter\";\n"],"mappings":"AAAA,SAAS,uBAAuB;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/local/index.ts"],"sourcesContent":["export { useLocalRuntime } from \"./useLocalRuntime\";\nexport type { LocalRuntimeOptions } from \"./LocalRuntimeOptions\";\nexport type {\n ChatModelAdapter,\n ChatModelRunOptions,\n ChatModelRunResult,\n ChatModelRunUpdate,\n} from \"./ChatModelAdapter\";\n"],"mappings":";AAAA,SAAS,uBAAuB;","names":[]}
@@ -16,12 +16,14 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/runtimes/local/shouldContinue.tsx
19
21
  var shouldContinue_exports = {};
20
22
  __export(shouldContinue_exports, {
21
23
  shouldContinue: () => shouldContinue
22
24
  });
23
25
  module.exports = __toCommonJS(shouldContinue_exports);
24
- const shouldContinue = (result) => result.status?.type === "requires-action" && result.status.reason === "tool-calls" && result.content.every((c) => c.type !== "tool-call" || !!c.result);
26
+ var shouldContinue = (result) => result.status?.type === "requires-action" && result.status.reason === "tool-calls" && result.content.every((c) => c.type !== "tool-call" || !!c.result);
25
27
  // Annotate the CommonJS export names for ESM import in node:
26
28
  0 && (module.exports = {
27
29
  shouldContinue
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/local/shouldContinue.tsx"],"sourcesContent":["import type { ThreadAssistantMessage } from \"../../types\";\n\nexport const shouldContinue = (result: ThreadAssistantMessage) =>\n result.status?.type === \"requires-action\" &&\n result.status.reason === \"tool-calls\" &&\n result.content.every((c) => c.type !== \"tool-call\" || !!c.result);\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,iBAAiB,CAAC,WAC7B,OAAO,QAAQ,SAAS,qBACxB,OAAO,OAAO,WAAW,gBACzB,OAAO,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,eAAe,CAAC,CAAC,EAAE,MAAM;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/local/shouldContinue.tsx"],"sourcesContent":["import type { ThreadAssistantMessage } from \"../../types\";\n\nexport const shouldContinue = (result: ThreadAssistantMessage) =>\n result.status?.type === \"requires-action\" &&\n result.status.reason === \"tool-calls\" &&\n result.content.every((c) => c.type !== \"tool-call\" || !!c.result);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,IAAM,iBAAiB,CAAC,WAC7B,OAAO,QAAQ,SAAS,qBACxB,OAAO,OAAO,WAAW,gBACzB,OAAO,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,eAAe,CAAC,CAAC,EAAE,MAAM;","names":[]}
@@ -1,4 +1,5 @@
1
- const shouldContinue = (result) => result.status?.type === "requires-action" && result.status.reason === "tool-calls" && result.content.every((c) => c.type !== "tool-call" || !!c.result);
1
+ // src/runtimes/local/shouldContinue.tsx
2
+ var shouldContinue = (result) => result.status?.type === "requires-action" && result.status.reason === "tool-calls" && result.content.every((c) => c.type !== "tool-call" || !!c.result);
2
3
  export {
3
4
  shouldContinue
4
5
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/local/shouldContinue.tsx"],"sourcesContent":["import type { ThreadAssistantMessage } from \"../../types\";\n\nexport const shouldContinue = (result: ThreadAssistantMessage) =>\n result.status?.type === \"requires-action\" &&\n result.status.reason === \"tool-calls\" &&\n result.content.every((c) => c.type !== \"tool-call\" || !!c.result);\n"],"mappings":"AAEO,MAAM,iBAAiB,CAAC,WAC7B,OAAO,QAAQ,SAAS,qBACxB,OAAO,OAAO,WAAW,gBACzB,OAAO,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,eAAe,CAAC,CAAC,EAAE,MAAM;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/local/shouldContinue.tsx"],"sourcesContent":["import type { ThreadAssistantMessage } from \"../../types\";\n\nexport const shouldContinue = (result: ThreadAssistantMessage) =>\n result.status?.type === \"requires-action\" &&\n result.status.reason === \"tool-calls\" &&\n result.content.every((c) => c.type !== \"tool-call\" || !!c.result);\n"],"mappings":";AAEO,IAAM,iBAAiB,CAAC,WAC7B,OAAO,QAAQ,SAAS,qBACxB,OAAO,OAAO,WAAW,gBACzB,OAAO,QAAQ,MAAM,CAAC,MAAM,EAAE,SAAS,eAAe,CAAC,CAAC,EAAE,MAAM;","names":[]}
@@ -17,16 +17,18 @@ var __copyProps = (to, from, except, desc) => {
17
17
  return to;
18
18
  };
19
19
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+
21
+ // src/runtimes/local/useLocalRuntime.tsx
20
22
  var useLocalRuntime_exports = {};
21
23
  __export(useLocalRuntime_exports, {
22
24
  useLocalRuntime: () => useLocalRuntime
23
25
  });
24
26
  module.exports = __toCommonJS(useLocalRuntime_exports);
25
27
  var import_react = require("react");
26
- var import_LocalRuntimeCore = require("./LocalRuntimeCore");
27
- var import_AssistantRuntime = require("../../api/AssistantRuntime");
28
- var import_internal = require("../../internal");
29
- class LocalRuntimeImpl extends import_AssistantRuntime.AssistantRuntimeImpl {
28
+ var import_LocalRuntimeCore = require("./LocalRuntimeCore.cjs");
29
+ var import_AssistantRuntime = require("../../api/AssistantRuntime.cjs");
30
+ var import_internal = require("../../internal.cjs");
31
+ var LocalRuntimeImpl = class _LocalRuntimeImpl extends import_AssistantRuntime.AssistantRuntimeImpl {
30
32
  constructor(core, thread) {
31
33
  super(core, thread);
32
34
  this.core = core;
@@ -35,13 +37,13 @@ class LocalRuntimeImpl extends import_AssistantRuntime.AssistantRuntimeImpl {
35
37
  this.core.reset(options);
36
38
  }
37
39
  static create(_core) {
38
- return new LocalRuntimeImpl(
40
+ return new _LocalRuntimeImpl(
39
41
  _core,
40
42
  import_AssistantRuntime.AssistantRuntimeImpl.createMainThreadRuntime(_core, import_internal.ThreadRuntimeImpl)
41
43
  );
42
44
  }
43
- }
44
- const useLocalRuntime = (adapter, { initialMessages, ...options } = {}) => {
45
+ };
46
+ var useLocalRuntime = (adapter, { initialMessages, ...options } = {}) => {
45
47
  const opt = {
46
48
  ...options,
47
49
  adapters: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/local/useLocalRuntime.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useMemo, useState } from \"react\";\nimport type { ChatModelAdapter } from \"./ChatModelAdapter\";\nimport { LocalRuntimeCore } from \"./LocalRuntimeCore\";\nimport { LocalRuntimeOptions } from \"./LocalRuntimeOptions\";\nimport {\n AssistantRuntime,\n AssistantRuntimeImpl,\n} from \"../../api/AssistantRuntime\";\nimport { ThreadRuntimeImpl } from \"../../internal\";\nimport { ThreadRuntime } from \"../../api/ThreadRuntime\";\n\nexport type LocalRuntime = AssistantRuntime & {\n reset: (options?: Parameters<LocalRuntimeCore[\"reset\"]>[0]) => void;\n};\n\nclass LocalRuntimeImpl extends AssistantRuntimeImpl implements LocalRuntime {\n private constructor(\n private core: LocalRuntimeCore,\n thread: ThreadRuntime,\n ) {\n super(core, thread);\n }\n\n public reset(options?: Parameters<LocalRuntimeCore[\"reset\"]>[0]) {\n this.core.reset(options);\n }\n\n public static override create(_core: LocalRuntimeCore) {\n return new LocalRuntimeImpl(\n _core,\n AssistantRuntimeImpl.createMainThreadRuntime(_core, ThreadRuntimeImpl),\n ) as LocalRuntime;\n }\n}\n\nexport const useLocalRuntime = (\n adapter: ChatModelAdapter,\n { initialMessages, ...options }: LocalRuntimeOptions = {},\n) => {\n const opt = {\n ...options,\n adapters: {\n ...options.adapters,\n chatModel: adapter,\n },\n };\n\n const [runtime] = useState(() => new LocalRuntimeCore(opt, initialMessages));\n\n useEffect(() => {\n runtime.setOptions(opt);\n });\n\n return useMemo(() => LocalRuntimeImpl.create(runtime), [runtime]);\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAA6C;AAE7C,8BAAiC;AAEjC,8BAGO;AACP,sBAAkC;AAOlC,MAAM,yBAAyB,6CAA6C;AAAA,EAClE,YACE,MACR,QACA;AACA,UAAM,MAAM,MAAM;AAHV;AAAA,EAIV;AAAA,EAEO,MAAM,SAAoD;AAC/D,SAAK,KAAK,MAAM,OAAO;AAAA,EACzB;AAAA,EAEA,OAAuB,OAAO,OAAyB;AACrD,WAAO,IAAI;AAAA,MACT;AAAA,MACA,6CAAqB,wBAAwB,OAAO,iCAAiB;AAAA,IACvE;AAAA,EACF;AACF;AAEO,MAAM,kBAAkB,CAC7B,SACA,EAAE,iBAAiB,GAAG,QAAQ,IAAyB,CAAC,MACrD;AACH,QAAM,MAAM;AAAA,IACV,GAAG;AAAA,IACH,UAAU;AAAA,MACR,GAAG,QAAQ;AAAA,MACX,WAAW;AAAA,IACb;AAAA,EACF;AAEA,QAAM,CAAC,OAAO,QAAI,uBAAS,MAAM,IAAI,yCAAiB,KAAK,eAAe,CAAC;AAE3E,8BAAU,MAAM;AACd,YAAQ,WAAW,GAAG;AAAA,EACxB,CAAC;AAED,aAAO,sBAAQ,MAAM,iBAAiB,OAAO,OAAO,GAAG,CAAC,OAAO,CAAC;AAClE;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/local/useLocalRuntime.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useMemo, useState } from \"react\";\nimport type { ChatModelAdapter } from \"./ChatModelAdapter\";\nimport { LocalRuntimeCore } from \"./LocalRuntimeCore\";\nimport { LocalRuntimeOptions } from \"./LocalRuntimeOptions\";\nimport {\n AssistantRuntime,\n AssistantRuntimeImpl,\n} from \"../../api/AssistantRuntime\";\nimport { ThreadRuntimeImpl } from \"../../internal\";\nimport { ThreadRuntime } from \"../../api/ThreadRuntime\";\n\nexport type LocalRuntime = AssistantRuntime & {\n reset: (options?: Parameters<LocalRuntimeCore[\"reset\"]>[0]) => void;\n};\n\nclass LocalRuntimeImpl extends AssistantRuntimeImpl implements LocalRuntime {\n private constructor(\n private core: LocalRuntimeCore,\n thread: ThreadRuntime,\n ) {\n super(core, thread);\n }\n\n public reset(options?: Parameters<LocalRuntimeCore[\"reset\"]>[0]) {\n this.core.reset(options);\n }\n\n public static override create(_core: LocalRuntimeCore) {\n return new LocalRuntimeImpl(\n _core,\n AssistantRuntimeImpl.createMainThreadRuntime(_core, ThreadRuntimeImpl),\n ) as LocalRuntime;\n }\n}\n\nexport const useLocalRuntime = (\n adapter: ChatModelAdapter,\n { initialMessages, ...options }: LocalRuntimeOptions = {},\n) => {\n const opt = {\n ...options,\n adapters: {\n ...options.adapters,\n chatModel: adapter,\n },\n };\n\n const [runtime] = useState(() => new LocalRuntimeCore(opt, initialMessages));\n\n useEffect(() => {\n runtime.setOptions(opt);\n });\n\n return useMemo(() => LocalRuntimeImpl.create(runtime), [runtime]);\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAA6C;AAE7C,8BAAiC;AAEjC,8BAGO;AACP,sBAAkC;AAOlC,IAAM,mBAAN,MAAM,0BAAyB,6CAA6C;AAAA,EAClE,YACE,MACR,QACA;AACA,UAAM,MAAM,MAAM;AAHV;AAAA,EAIV;AAAA,EAEO,MAAM,SAAoD;AAC/D,SAAK,KAAK,MAAM,OAAO;AAAA,EACzB;AAAA,EAEA,OAAuB,OAAO,OAAyB;AACrD,WAAO,IAAI;AAAA,MACT;AAAA,MACA,6CAAqB,wBAAwB,OAAO,iCAAiB;AAAA,IACvE;AAAA,EACF;AACF;AAEO,IAAM,kBAAkB,CAC7B,SACA,EAAE,iBAAiB,GAAG,QAAQ,IAAyB,CAAC,MACrD;AACH,QAAM,MAAM;AAAA,IACV,GAAG;AAAA,IACH,UAAU;AAAA,MACR,GAAG,QAAQ;AAAA,MACX,WAAW;AAAA,IACb;AAAA,EACF;AAEA,QAAM,CAAC,OAAO,QAAI,uBAAS,MAAM,IAAI,yCAAiB,KAAK,eAAe,CAAC;AAE3E,8BAAU,MAAM;AACd,YAAQ,WAAW,GAAG;AAAA,EACxB,CAAC;AAED,aAAO,sBAAQ,MAAM,iBAAiB,OAAO,OAAO,GAAG,CAAC,OAAO,CAAC;AAClE;","names":[]}
@@ -1,11 +1,13 @@
1
1
  "use client";
2
+
3
+ // src/runtimes/local/useLocalRuntime.tsx
2
4
  import { useEffect, useMemo, useState } from "react";
3
- import { LocalRuntimeCore } from "./LocalRuntimeCore";
5
+ import { LocalRuntimeCore } from "./LocalRuntimeCore.mjs";
4
6
  import {
5
7
  AssistantRuntimeImpl
6
- } from "../../api/AssistantRuntime";
7
- import { ThreadRuntimeImpl } from "../../internal";
8
- class LocalRuntimeImpl extends AssistantRuntimeImpl {
8
+ } from "../../api/AssistantRuntime.mjs";
9
+ import { ThreadRuntimeImpl } from "../../internal.mjs";
10
+ var LocalRuntimeImpl = class _LocalRuntimeImpl extends AssistantRuntimeImpl {
9
11
  constructor(core, thread) {
10
12
  super(core, thread);
11
13
  this.core = core;
@@ -14,13 +16,13 @@ class LocalRuntimeImpl extends AssistantRuntimeImpl {
14
16
  this.core.reset(options);
15
17
  }
16
18
  static create(_core) {
17
- return new LocalRuntimeImpl(
19
+ return new _LocalRuntimeImpl(
18
20
  _core,
19
21
  AssistantRuntimeImpl.createMainThreadRuntime(_core, ThreadRuntimeImpl)
20
22
  );
21
23
  }
22
- }
23
- const useLocalRuntime = (adapter, { initialMessages, ...options } = {}) => {
24
+ };
25
+ var useLocalRuntime = (adapter, { initialMessages, ...options } = {}) => {
24
26
  const opt = {
25
27
  ...options,
26
28
  adapters: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/local/useLocalRuntime.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useMemo, useState } from \"react\";\nimport type { ChatModelAdapter } from \"./ChatModelAdapter\";\nimport { LocalRuntimeCore } from \"./LocalRuntimeCore\";\nimport { LocalRuntimeOptions } from \"./LocalRuntimeOptions\";\nimport {\n AssistantRuntime,\n AssistantRuntimeImpl,\n} from \"../../api/AssistantRuntime\";\nimport { ThreadRuntimeImpl } from \"../../internal\";\nimport { ThreadRuntime } from \"../../api/ThreadRuntime\";\n\nexport type LocalRuntime = AssistantRuntime & {\n reset: (options?: Parameters<LocalRuntimeCore[\"reset\"]>[0]) => void;\n};\n\nclass LocalRuntimeImpl extends AssistantRuntimeImpl implements LocalRuntime {\n private constructor(\n private core: LocalRuntimeCore,\n thread: ThreadRuntime,\n ) {\n super(core, thread);\n }\n\n public reset(options?: Parameters<LocalRuntimeCore[\"reset\"]>[0]) {\n this.core.reset(options);\n }\n\n public static override create(_core: LocalRuntimeCore) {\n return new LocalRuntimeImpl(\n _core,\n AssistantRuntimeImpl.createMainThreadRuntime(_core, ThreadRuntimeImpl),\n ) as LocalRuntime;\n }\n}\n\nexport const useLocalRuntime = (\n adapter: ChatModelAdapter,\n { initialMessages, ...options }: LocalRuntimeOptions = {},\n) => {\n const opt = {\n ...options,\n adapters: {\n ...options.adapters,\n chatModel: adapter,\n },\n };\n\n const [runtime] = useState(() => new LocalRuntimeCore(opt, initialMessages));\n\n useEffect(() => {\n runtime.setOptions(opt);\n });\n\n return useMemo(() => LocalRuntimeImpl.create(runtime), [runtime]);\n};\n"],"mappings":";AAEA,SAAS,WAAW,SAAS,gBAAgB;AAE7C,SAAS,wBAAwB;AAEjC;AAAA,EAEE;AAAA,OACK;AACP,SAAS,yBAAyB;AAOlC,MAAM,yBAAyB,qBAA6C;AAAA,EAClE,YACE,MACR,QACA;AACA,UAAM,MAAM,MAAM;AAHV;AAAA,EAIV;AAAA,EAEO,MAAM,SAAoD;AAC/D,SAAK,KAAK,MAAM,OAAO;AAAA,EACzB;AAAA,EAEA,OAAuB,OAAO,OAAyB;AACrD,WAAO,IAAI;AAAA,MACT;AAAA,MACA,qBAAqB,wBAAwB,OAAO,iBAAiB;AAAA,IACvE;AAAA,EACF;AACF;AAEO,MAAM,kBAAkB,CAC7B,SACA,EAAE,iBAAiB,GAAG,QAAQ,IAAyB,CAAC,MACrD;AACH,QAAM,MAAM;AAAA,IACV,GAAG;AAAA,IACH,UAAU;AAAA,MACR,GAAG,QAAQ;AAAA,MACX,WAAW;AAAA,IACb;AAAA,EACF;AAEA,QAAM,CAAC,OAAO,IAAI,SAAS,MAAM,IAAI,iBAAiB,KAAK,eAAe,CAAC;AAE3E,YAAU,MAAM;AACd,YAAQ,WAAW,GAAG;AAAA,EACxB,CAAC;AAED,SAAO,QAAQ,MAAM,iBAAiB,OAAO,OAAO,GAAG,CAAC,OAAO,CAAC;AAClE;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/local/useLocalRuntime.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useMemo, useState } from \"react\";\nimport type { ChatModelAdapter } from \"./ChatModelAdapter\";\nimport { LocalRuntimeCore } from \"./LocalRuntimeCore\";\nimport { LocalRuntimeOptions } from \"./LocalRuntimeOptions\";\nimport {\n AssistantRuntime,\n AssistantRuntimeImpl,\n} from \"../../api/AssistantRuntime\";\nimport { ThreadRuntimeImpl } from \"../../internal\";\nimport { ThreadRuntime } from \"../../api/ThreadRuntime\";\n\nexport type LocalRuntime = AssistantRuntime & {\n reset: (options?: Parameters<LocalRuntimeCore[\"reset\"]>[0]) => void;\n};\n\nclass LocalRuntimeImpl extends AssistantRuntimeImpl implements LocalRuntime {\n private constructor(\n private core: LocalRuntimeCore,\n thread: ThreadRuntime,\n ) {\n super(core, thread);\n }\n\n public reset(options?: Parameters<LocalRuntimeCore[\"reset\"]>[0]) {\n this.core.reset(options);\n }\n\n public static override create(_core: LocalRuntimeCore) {\n return new LocalRuntimeImpl(\n _core,\n AssistantRuntimeImpl.createMainThreadRuntime(_core, ThreadRuntimeImpl),\n ) as LocalRuntime;\n }\n}\n\nexport const useLocalRuntime = (\n adapter: ChatModelAdapter,\n { initialMessages, ...options }: LocalRuntimeOptions = {},\n) => {\n const opt = {\n ...options,\n adapters: {\n ...options.adapters,\n chatModel: adapter,\n },\n };\n\n const [runtime] = useState(() => new LocalRuntimeCore(opt, initialMessages));\n\n useEffect(() => {\n runtime.setOptions(opt);\n });\n\n return useMemo(() => LocalRuntimeImpl.create(runtime), [runtime]);\n};\n"],"mappings":";;;AAEA,SAAS,WAAW,SAAS,gBAAgB;AAE7C,SAAS,wBAAwB;AAEjC;AAAA,EAEE;AAAA,OACK;AACP,SAAS,yBAAyB;AAOlC,IAAM,mBAAN,MAAM,0BAAyB,qBAA6C;AAAA,EAClE,YACE,MACR,QACA;AACA,UAAM,MAAM,MAAM;AAHV;AAAA,EAIV;AAAA,EAEO,MAAM,SAAoD;AAC/D,SAAK,KAAK,MAAM,OAAO;AAAA,EACzB;AAAA,EAEA,OAAuB,OAAO,OAAyB;AACrD,WAAO,IAAI;AAAA,MACT;AAAA,MACA,qBAAqB,wBAAwB,OAAO,iBAAiB;AAAA,IACvE;AAAA,EACF;AACF;AAEO,IAAM,kBAAkB,CAC7B,SACA,EAAE,iBAAiB,GAAG,QAAQ,IAAyB,CAAC,MACrD;AACH,QAAM,MAAM;AAAA,IACV,GAAG;AAAA,IACH,UAAU;AAAA,MACR,GAAG,QAAQ;AAAA,MACX,WAAW;AAAA,IACb;AAAA,EACF;AAEA,QAAM,CAAC,OAAO,IAAI,SAAS,MAAM,IAAI,iBAAiB,KAAK,eAAe,CAAC;AAE3E,YAAU,MAAM;AACd,YAAQ,WAAW,GAAG;AAAA,EACxB,CAAC;AAED,SAAO,QAAQ,MAAM,iBAAiB,OAAO,OAAO,GAAG,CAAC,OAAO,CAAC;AAClE;","names":[]}
@@ -12,6 +12,8 @@ var __copyProps = (to, from, except, desc) => {
12
12
  return to;
13
13
  };
14
14
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // src/runtimes/speech/SpeechAdapterTypes.ts
15
17
  var SpeechAdapterTypes_exports = {};
16
18
  module.exports = __toCommonJS(SpeechAdapterTypes_exports);
17
19
  //# sourceMappingURL=SpeechAdapterTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/speech/SpeechAdapterTypes.ts"],"sourcesContent":["import { Unsubscribe } from \"../../types\";\n\nexport namespace SpeechSynthesisAdapter {\n export type Status =\n | {\n type: \"starting\" | \"running\";\n }\n | {\n type: \"ended\";\n reason: \"finished\" | \"cancelled\" | \"error\";\n error?: unknown;\n };\n\n export type Utterance = {\n status: Status;\n cancel: () => void;\n subscribe: (callback: () => void) => Unsubscribe;\n };\n}\n\nexport type SpeechSynthesisAdapter = {\n speak: (text: string) => SpeechSynthesisAdapter.Utterance;\n};\n\nexport namespace SpeechRecognitionAdapter {\n export type Status =\n | {\n type: \"starting\" | \"running\";\n }\n | {\n type: \"ended\";\n reason: \"stopped\" | \"cancelled\" | \"error\";\n };\n\n export type Result = {\n transcript: string;\n };\n\n export type Session = {\n status: Status;\n stop: () => Promise<void>;\n cancel: () => void;\n onSpeechStart: (callback: () => void) => Unsubscribe;\n onSpeechEnd: (callback: (result: Result) => void) => Unsubscribe;\n onSpeech: (callback: (result: Result) => void) => Unsubscribe;\n };\n}\n\nexport type SpeechRecognitionAdapter = {\n listen: () => SpeechRecognitionAdapter.Session;\n};\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/speech/SpeechAdapterTypes.ts"],"sourcesContent":["import { Unsubscribe } from \"../../types\";\n\nexport namespace SpeechSynthesisAdapter {\n export type Status =\n | {\n type: \"starting\" | \"running\";\n }\n | {\n type: \"ended\";\n reason: \"finished\" | \"cancelled\" | \"error\";\n error?: unknown;\n };\n\n export type Utterance = {\n status: Status;\n cancel: () => void;\n subscribe: (callback: () => void) => Unsubscribe;\n };\n}\n\nexport type SpeechSynthesisAdapter = {\n speak: (text: string) => SpeechSynthesisAdapter.Utterance;\n};\n\nexport namespace SpeechRecognitionAdapter {\n export type Status =\n | {\n type: \"starting\" | \"running\";\n }\n | {\n type: \"ended\";\n reason: \"stopped\" | \"cancelled\" | \"error\";\n };\n\n export type Result = {\n transcript: string;\n };\n\n export type Session = {\n status: Status;\n stop: () => Promise<void>;\n cancel: () => void;\n onSpeechStart: (callback: () => void) => Unsubscribe;\n onSpeechEnd: (callback: (result: Result) => void) => Unsubscribe;\n onSpeech: (callback: (result: Result) => void) => Unsubscribe;\n };\n}\n\nexport type SpeechRecognitionAdapter = {\n listen: () => SpeechRecognitionAdapter.Session;\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -16,12 +16,14 @@ var __copyProps = (to, from, except, desc) => {
16
16
  return to;
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/runtimes/speech/WebSpeechSynthesisAdapter.ts
19
21
  var WebSpeechSynthesisAdapter_exports = {};
20
22
  __export(WebSpeechSynthesisAdapter_exports, {
21
23
  WebSpeechSynthesisAdapter: () => WebSpeechSynthesisAdapter
22
24
  });
23
25
  module.exports = __toCommonJS(WebSpeechSynthesisAdapter_exports);
24
- class WebSpeechSynthesisAdapter {
26
+ var WebSpeechSynthesisAdapter = class {
25
27
  speak(text) {
26
28
  const utterance = new SpeechSynthesisUtterance(text);
27
29
  const subscribers = /* @__PURE__ */ new Set();
@@ -58,7 +60,7 @@ class WebSpeechSynthesisAdapter {
58
60
  };
59
61
  return res;
60
62
  }
61
- }
63
+ };
62
64
  // Annotate the CommonJS export names for ESM import in node:
63
65
  0 && (module.exports = {
64
66
  WebSpeechSynthesisAdapter
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/speech/WebSpeechSynthesisAdapter.ts"],"sourcesContent":["import { SpeechSynthesisAdapter } from \"./SpeechAdapterTypes\";\n\nexport class WebSpeechSynthesisAdapter implements SpeechSynthesisAdapter {\n speak(text: string): SpeechSynthesisAdapter.Utterance {\n const utterance = new SpeechSynthesisUtterance(text);\n\n const subscribers = new Set<() => void>();\n const handleEnd = (\n reason: \"finished\" | \"error\" | \"cancelled\",\n error?: unknown,\n ) => {\n if (res.status.type === \"ended\") return;\n\n res.status = { type: \"ended\", reason, error };\n subscribers.forEach((handler) => handler());\n };\n\n utterance.addEventListener(\"end\", () => handleEnd(\"finished\"));\n utterance.addEventListener(\"error\", (e) => handleEnd(\"error\", e.error));\n\n window.speechSynthesis.speak(utterance);\n\n const res: SpeechSynthesisAdapter.Utterance = {\n status: { type: \"running\" },\n cancel: () => {\n window.speechSynthesis.cancel();\n handleEnd(\"cancelled\");\n },\n subscribe: (callback) => {\n if (res.status.type === \"ended\") {\n let cancelled = false;\n queueMicrotask(() => {\n if (!cancelled) callback();\n });\n return () => {\n cancelled = true;\n };\n } else {\n subscribers.add(callback);\n return () => {\n subscribers.delete(callback);\n };\n }\n },\n };\n return res;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,0BAA4D;AAAA,EACvE,MAAM,MAAgD;AACpD,UAAM,YAAY,IAAI,yBAAyB,IAAI;AAEnD,UAAM,cAAc,oBAAI,IAAgB;AACxC,UAAM,YAAY,CAChB,QACA,UACG;AACH,UAAI,IAAI,OAAO,SAAS,QAAS;AAEjC,UAAI,SAAS,EAAE,MAAM,SAAS,QAAQ,MAAM;AAC5C,kBAAY,QAAQ,CAAC,YAAY,QAAQ,CAAC;AAAA,IAC5C;AAEA,cAAU,iBAAiB,OAAO,MAAM,UAAU,UAAU,CAAC;AAC7D,cAAU,iBAAiB,SAAS,CAAC,MAAM,UAAU,SAAS,EAAE,KAAK,CAAC;AAEtE,WAAO,gBAAgB,MAAM,SAAS;AAEtC,UAAM,MAAwC;AAAA,MAC5C,QAAQ,EAAE,MAAM,UAAU;AAAA,MAC1B,QAAQ,MAAM;AACZ,eAAO,gBAAgB,OAAO;AAC9B,kBAAU,WAAW;AAAA,MACvB;AAAA,MACA,WAAW,CAAC,aAAa;AACvB,YAAI,IAAI,OAAO,SAAS,SAAS;AAC/B,cAAI,YAAY;AAChB,yBAAe,MAAM;AACnB,gBAAI,CAAC,UAAW,UAAS;AAAA,UAC3B,CAAC;AACD,iBAAO,MAAM;AACX,wBAAY;AAAA,UACd;AAAA,QACF,OAAO;AACL,sBAAY,IAAI,QAAQ;AACxB,iBAAO,MAAM;AACX,wBAAY,OAAO,QAAQ;AAAA,UAC7B;AAAA,QACF;AAAA,MACF;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/speech/WebSpeechSynthesisAdapter.ts"],"sourcesContent":["import { SpeechSynthesisAdapter } from \"./SpeechAdapterTypes\";\n\nexport class WebSpeechSynthesisAdapter implements SpeechSynthesisAdapter {\n speak(text: string): SpeechSynthesisAdapter.Utterance {\n const utterance = new SpeechSynthesisUtterance(text);\n\n const subscribers = new Set<() => void>();\n const handleEnd = (\n reason: \"finished\" | \"error\" | \"cancelled\",\n error?: unknown,\n ) => {\n if (res.status.type === \"ended\") return;\n\n res.status = { type: \"ended\", reason, error };\n subscribers.forEach((handler) => handler());\n };\n\n utterance.addEventListener(\"end\", () => handleEnd(\"finished\"));\n utterance.addEventListener(\"error\", (e) => handleEnd(\"error\", e.error));\n\n window.speechSynthesis.speak(utterance);\n\n const res: SpeechSynthesisAdapter.Utterance = {\n status: { type: \"running\" },\n cancel: () => {\n window.speechSynthesis.cancel();\n handleEnd(\"cancelled\");\n },\n subscribe: (callback) => {\n if (res.status.type === \"ended\") {\n let cancelled = false;\n queueMicrotask(() => {\n if (!cancelled) callback();\n });\n return () => {\n cancelled = true;\n };\n } else {\n subscribers.add(callback);\n return () => {\n subscribers.delete(callback);\n };\n }\n },\n };\n return res;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,IAAM,4BAAN,MAAkE;AAAA,EACvE,MAAM,MAAgD;AACpD,UAAM,YAAY,IAAI,yBAAyB,IAAI;AAEnD,UAAM,cAAc,oBAAI,IAAgB;AACxC,UAAM,YAAY,CAChB,QACA,UACG;AACH,UAAI,IAAI,OAAO,SAAS,QAAS;AAEjC,UAAI,SAAS,EAAE,MAAM,SAAS,QAAQ,MAAM;AAC5C,kBAAY,QAAQ,CAAC,YAAY,QAAQ,CAAC;AAAA,IAC5C;AAEA,cAAU,iBAAiB,OAAO,MAAM,UAAU,UAAU,CAAC;AAC7D,cAAU,iBAAiB,SAAS,CAAC,MAAM,UAAU,SAAS,EAAE,KAAK,CAAC;AAEtE,WAAO,gBAAgB,MAAM,SAAS;AAEtC,UAAM,MAAwC;AAAA,MAC5C,QAAQ,EAAE,MAAM,UAAU;AAAA,MAC1B,QAAQ,MAAM;AACZ,eAAO,gBAAgB,OAAO;AAC9B,kBAAU,WAAW;AAAA,MACvB;AAAA,MACA,WAAW,CAAC,aAAa;AACvB,YAAI,IAAI,OAAO,SAAS,SAAS;AAC/B,cAAI,YAAY;AAChB,yBAAe,MAAM;AACnB,gBAAI,CAAC,UAAW,UAAS;AAAA,UAC3B,CAAC;AACD,iBAAO,MAAM;AACX,wBAAY;AAAA,UACd;AAAA,QACF,OAAO;AACL,sBAAY,IAAI,QAAQ;AACxB,iBAAO,MAAM;AACX,wBAAY,OAAO,QAAQ;AAAA,UAC7B;AAAA,QACF;AAAA,MACF;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;","names":[]}
@@ -1,4 +1,5 @@
1
- class WebSpeechSynthesisAdapter {
1
+ // src/runtimes/speech/WebSpeechSynthesisAdapter.ts
2
+ var WebSpeechSynthesisAdapter = class {
2
3
  speak(text) {
3
4
  const utterance = new SpeechSynthesisUtterance(text);
4
5
  const subscribers = /* @__PURE__ */ new Set();
@@ -35,7 +36,7 @@ class WebSpeechSynthesisAdapter {
35
36
  };
36
37
  return res;
37
38
  }
38
- }
39
+ };
39
40
  export {
40
41
  WebSpeechSynthesisAdapter
41
42
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/runtimes/speech/WebSpeechSynthesisAdapter.ts"],"sourcesContent":["import { SpeechSynthesisAdapter } from \"./SpeechAdapterTypes\";\n\nexport class WebSpeechSynthesisAdapter implements SpeechSynthesisAdapter {\n speak(text: string): SpeechSynthesisAdapter.Utterance {\n const utterance = new SpeechSynthesisUtterance(text);\n\n const subscribers = new Set<() => void>();\n const handleEnd = (\n reason: \"finished\" | \"error\" | \"cancelled\",\n error?: unknown,\n ) => {\n if (res.status.type === \"ended\") return;\n\n res.status = { type: \"ended\", reason, error };\n subscribers.forEach((handler) => handler());\n };\n\n utterance.addEventListener(\"end\", () => handleEnd(\"finished\"));\n utterance.addEventListener(\"error\", (e) => handleEnd(\"error\", e.error));\n\n window.speechSynthesis.speak(utterance);\n\n const res: SpeechSynthesisAdapter.Utterance = {\n status: { type: \"running\" },\n cancel: () => {\n window.speechSynthesis.cancel();\n handleEnd(\"cancelled\");\n },\n subscribe: (callback) => {\n if (res.status.type === \"ended\") {\n let cancelled = false;\n queueMicrotask(() => {\n if (!cancelled) callback();\n });\n return () => {\n cancelled = true;\n };\n } else {\n subscribers.add(callback);\n return () => {\n subscribers.delete(callback);\n };\n }\n },\n };\n return res;\n }\n}\n"],"mappings":"AAEO,MAAM,0BAA4D;AAAA,EACvE,MAAM,MAAgD;AACpD,UAAM,YAAY,IAAI,yBAAyB,IAAI;AAEnD,UAAM,cAAc,oBAAI,IAAgB;AACxC,UAAM,YAAY,CAChB,QACA,UACG;AACH,UAAI,IAAI,OAAO,SAAS,QAAS;AAEjC,UAAI,SAAS,EAAE,MAAM,SAAS,QAAQ,MAAM;AAC5C,kBAAY,QAAQ,CAAC,YAAY,QAAQ,CAAC;AAAA,IAC5C;AAEA,cAAU,iBAAiB,OAAO,MAAM,UAAU,UAAU,CAAC;AAC7D,cAAU,iBAAiB,SAAS,CAAC,MAAM,UAAU,SAAS,EAAE,KAAK,CAAC;AAEtE,WAAO,gBAAgB,MAAM,SAAS;AAEtC,UAAM,MAAwC;AAAA,MAC5C,QAAQ,EAAE,MAAM,UAAU;AAAA,MAC1B,QAAQ,MAAM;AACZ,eAAO,gBAAgB,OAAO;AAC9B,kBAAU,WAAW;AAAA,MACvB;AAAA,MACA,WAAW,CAAC,aAAa;AACvB,YAAI,IAAI,OAAO,SAAS,SAAS;AAC/B,cAAI,YAAY;AAChB,yBAAe,MAAM;AACnB,gBAAI,CAAC,UAAW,UAAS;AAAA,UAC3B,CAAC;AACD,iBAAO,MAAM;AACX,wBAAY;AAAA,UACd;AAAA,QACF,OAAO;AACL,sBAAY,IAAI,QAAQ;AACxB,iBAAO,MAAM;AACX,wBAAY,OAAO,QAAQ;AAAA,UAC7B;AAAA,QACF;AAAA,MACF;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/runtimes/speech/WebSpeechSynthesisAdapter.ts"],"sourcesContent":["import { SpeechSynthesisAdapter } from \"./SpeechAdapterTypes\";\n\nexport class WebSpeechSynthesisAdapter implements SpeechSynthesisAdapter {\n speak(text: string): SpeechSynthesisAdapter.Utterance {\n const utterance = new SpeechSynthesisUtterance(text);\n\n const subscribers = new Set<() => void>();\n const handleEnd = (\n reason: \"finished\" | \"error\" | \"cancelled\",\n error?: unknown,\n ) => {\n if (res.status.type === \"ended\") return;\n\n res.status = { type: \"ended\", reason, error };\n subscribers.forEach((handler) => handler());\n };\n\n utterance.addEventListener(\"end\", () => handleEnd(\"finished\"));\n utterance.addEventListener(\"error\", (e) => handleEnd(\"error\", e.error));\n\n window.speechSynthesis.speak(utterance);\n\n const res: SpeechSynthesisAdapter.Utterance = {\n status: { type: \"running\" },\n cancel: () => {\n window.speechSynthesis.cancel();\n handleEnd(\"cancelled\");\n },\n subscribe: (callback) => {\n if (res.status.type === \"ended\") {\n let cancelled = false;\n queueMicrotask(() => {\n if (!cancelled) callback();\n });\n return () => {\n cancelled = true;\n };\n } else {\n subscribers.add(callback);\n return () => {\n subscribers.delete(callback);\n };\n }\n },\n };\n return res;\n }\n}\n"],"mappings":";AAEO,IAAM,4BAAN,MAAkE;AAAA,EACvE,MAAM,MAAgD;AACpD,UAAM,YAAY,IAAI,yBAAyB,IAAI;AAEnD,UAAM,cAAc,oBAAI,IAAgB;AACxC,UAAM,YAAY,CAChB,QACA,UACG;AACH,UAAI,IAAI,OAAO,SAAS,QAAS;AAEjC,UAAI,SAAS,EAAE,MAAM,SAAS,QAAQ,MAAM;AAC5C,kBAAY,QAAQ,CAAC,YAAY,QAAQ,CAAC;AAAA,IAC5C;AAEA,cAAU,iBAAiB,OAAO,MAAM,UAAU,UAAU,CAAC;AAC7D,cAAU,iBAAiB,SAAS,CAAC,MAAM,UAAU,SAAS,EAAE,KAAK,CAAC;AAEtE,WAAO,gBAAgB,MAAM,SAAS;AAEtC,UAAM,MAAwC;AAAA,MAC5C,QAAQ,EAAE,MAAM,UAAU;AAAA,MAC1B,QAAQ,MAAM;AACZ,eAAO,gBAAgB,OAAO;AAC9B,kBAAU,WAAW;AAAA,MACvB;AAAA,MACA,WAAW,CAAC,aAAa;AACvB,YAAI,IAAI,OAAO,SAAS,SAAS;AAC/B,cAAI,YAAY;AAChB,yBAAe,MAAM;AACnB,gBAAI,CAAC,UAAW,UAAS;AAAA,UAC3B,CAAC;AACD,iBAAO,MAAM;AACX,wBAAY;AAAA,UACd;AAAA,QACF,OAAO;AACL,sBAAY,IAAI,QAAQ;AACxB,iBAAO,MAAM;AACX,wBAAY,OAAO,QAAQ;AAAA,UAC7B;AAAA,QACF;AAAA,MACF;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;","names":[]}