@assistant-ui/react 0.5.96 → 0.5.98

Sign up to get free protection for your applications and to get access to all the features.
Files changed (989) hide show
  1. package/dist/api/AssistantRuntime.d.ts +19 -0
  2. package/dist/api/AssistantRuntime.d.ts.map +1 -1
  3. package/dist/api/AssistantRuntime.js +9 -7
  4. package/dist/api/AssistantRuntime.js.map +1 -1
  5. package/dist/api/AssistantRuntime.mjs +8 -7
  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.js +16 -14
  12. package/dist/api/ComposerRuntime.js.map +1 -1
  13. package/dist/api/ComposerRuntime.mjs +15 -14
  14. package/dist/api/ComposerRuntime.mjs.map +1 -1
  15. package/dist/api/ContentPartRuntime.js +4 -2
  16. package/dist/api/ContentPartRuntime.js.map +1 -1
  17. package/dist/api/ContentPartRuntime.mjs +3 -2
  18. package/dist/api/ContentPartRuntime.mjs.map +1 -1
  19. package/dist/api/MessageRuntime.js +15 -13
  20. package/dist/api/MessageRuntime.js.map +1 -1
  21. package/dist/api/MessageRuntime.mjs +14 -13
  22. package/dist/api/MessageRuntime.mjs.map +1 -1
  23. package/dist/api/RuntimePathTypes.js +2 -0
  24. package/dist/api/RuntimePathTypes.js.map +1 -1
  25. package/dist/api/ThreadManagerRuntime.js +7 -5
  26. package/dist/api/ThreadManagerRuntime.js.map +1 -1
  27. package/dist/api/ThreadManagerRuntime.mjs +6 -5
  28. package/dist/api/ThreadManagerRuntime.mjs.map +1 -1
  29. package/dist/api/ThreadRuntime.d.ts +42 -0
  30. package/dist/api/ThreadRuntime.d.ts.map +1 -1
  31. package/dist/api/ThreadRuntime.js +12 -10
  32. package/dist/api/ThreadRuntime.js.map +1 -1
  33. package/dist/api/ThreadRuntime.mjs +11 -10
  34. package/dist/api/ThreadRuntime.mjs.map +1 -1
  35. package/dist/api/index.js +2 -0
  36. package/dist/api/index.js.map +1 -1
  37. package/dist/api/subscribable/BaseSubject.js +4 -2
  38. package/dist/api/subscribable/BaseSubject.js.map +1 -1
  39. package/dist/api/subscribable/BaseSubject.mjs +3 -2
  40. package/dist/api/subscribable/BaseSubject.mjs.map +1 -1
  41. package/dist/api/subscribable/LazyMemoizeSubject.js +6 -4
  42. package/dist/api/subscribable/LazyMemoizeSubject.js.map +1 -1
  43. package/dist/api/subscribable/LazyMemoizeSubject.mjs +5 -4
  44. package/dist/api/subscribable/LazyMemoizeSubject.mjs.map +1 -1
  45. package/dist/api/subscribable/NestedSubscriptionSubject.js +5 -3
  46. package/dist/api/subscribable/NestedSubscriptionSubject.js.map +1 -1
  47. package/dist/api/subscribable/NestedSubscriptionSubject.mjs +4 -3
  48. package/dist/api/subscribable/NestedSubscriptionSubject.mjs.map +1 -1
  49. package/dist/api/subscribable/SKIP_UPDATE.js +3 -1
  50. package/dist/api/subscribable/SKIP_UPDATE.js.map +1 -1
  51. package/dist/api/subscribable/SKIP_UPDATE.mjs +2 -1
  52. package/dist/api/subscribable/SKIP_UPDATE.mjs.map +1 -1
  53. package/dist/api/subscribable/ShallowMemoizeSubject.js +7 -5
  54. package/dist/api/subscribable/ShallowMemoizeSubject.js.map +1 -1
  55. package/dist/api/subscribable/ShallowMemoizeSubject.mjs +6 -5
  56. package/dist/api/subscribable/ShallowMemoizeSubject.mjs.map +1 -1
  57. package/dist/api/subscribable/Subscribable.js +2 -0
  58. package/dist/api/subscribable/Subscribable.js.map +1 -1
  59. package/dist/api/subscribable/shallowEqual.js +2 -0
  60. package/dist/api/subscribable/shallowEqual.js.map +1 -1
  61. package/dist/api/subscribable/shallowEqual.mjs +1 -0
  62. package/dist/api/subscribable/shallowEqual.mjs.map +1 -1
  63. package/dist/context/ReadonlyStore.js +3 -1
  64. package/dist/context/ReadonlyStore.js.map +1 -1
  65. package/dist/context/ReadonlyStore.mjs +2 -1
  66. package/dist/context/ReadonlyStore.mjs.map +1 -1
  67. package/dist/context/index.js +8 -6
  68. package/dist/context/index.js.map +1 -1
  69. package/dist/context/index.mjs +4 -3
  70. package/dist/context/index.mjs.map +1 -1
  71. package/dist/context/providers/AssistantRuntimeProvider.js +12 -10
  72. package/dist/context/providers/AssistantRuntimeProvider.js.map +1 -1
  73. package/dist/context/providers/AssistantRuntimeProvider.mjs +12 -10
  74. package/dist/context/providers/AssistantRuntimeProvider.mjs.map +1 -1
  75. package/dist/context/providers/AttachmentRuntimeProvider.js +8 -6
  76. package/dist/context/providers/AttachmentRuntimeProvider.js.map +1 -1
  77. package/dist/context/providers/AttachmentRuntimeProvider.mjs +8 -6
  78. package/dist/context/providers/AttachmentRuntimeProvider.mjs.map +1 -1
  79. package/dist/context/providers/ContentPartRuntimeProvider.js +8 -6
  80. package/dist/context/providers/ContentPartRuntimeProvider.js.map +1 -1
  81. package/dist/context/providers/ContentPartRuntimeProvider.mjs +8 -6
  82. package/dist/context/providers/ContentPartRuntimeProvider.mjs.map +1 -1
  83. package/dist/context/providers/MessageRuntimeProvider.js +11 -9
  84. package/dist/context/providers/MessageRuntimeProvider.js.map +1 -1
  85. package/dist/context/providers/MessageRuntimeProvider.mjs +11 -9
  86. package/dist/context/providers/MessageRuntimeProvider.mjs.map +1 -1
  87. package/dist/context/providers/TextContentPartProvider.js +9 -7
  88. package/dist/context/providers/TextContentPartProvider.js.map +1 -1
  89. package/dist/context/providers/TextContentPartProvider.mjs +9 -7
  90. package/dist/context/providers/TextContentPartProvider.mjs.map +1 -1
  91. package/dist/context/providers/ThreadRuntimeProvider.js +11 -9
  92. package/dist/context/providers/ThreadRuntimeProvider.js.map +1 -1
  93. package/dist/context/providers/ThreadRuntimeProvider.mjs +10 -9
  94. package/dist/context/providers/ThreadRuntimeProvider.mjs.map +1 -1
  95. package/dist/context/providers/index.js +4 -2
  96. package/dist/context/providers/index.js.map +1 -1
  97. package/dist/context/providers/index.mjs +3 -2
  98. package/dist/context/providers/index.mjs.map +1 -1
  99. package/dist/context/react/AssistantContext.js +12 -10
  100. package/dist/context/react/AssistantContext.js.map +1 -1
  101. package/dist/context/react/AssistantContext.mjs +12 -10
  102. package/dist/context/react/AssistantContext.mjs.map +1 -1
  103. package/dist/context/react/AttachmentContext.js +8 -6
  104. package/dist/context/react/AttachmentContext.js.map +1 -1
  105. package/dist/context/react/AttachmentContext.mjs +8 -6
  106. package/dist/context/react/AttachmentContext.mjs.map +1 -1
  107. package/dist/context/react/ComposerContext.js +7 -5
  108. package/dist/context/react/ComposerContext.js.map +1 -1
  109. package/dist/context/react/ComposerContext.mjs +6 -5
  110. package/dist/context/react/ComposerContext.mjs.map +1 -1
  111. package/dist/context/react/ContentPartContext.js +7 -5
  112. package/dist/context/react/ContentPartContext.js.map +1 -1
  113. package/dist/context/react/ContentPartContext.mjs +7 -5
  114. package/dist/context/react/ContentPartContext.mjs.map +1 -1
  115. package/dist/context/react/MessageContext.js +9 -7
  116. package/dist/context/react/MessageContext.js.map +1 -1
  117. package/dist/context/react/MessageContext.mjs +9 -7
  118. package/dist/context/react/MessageContext.mjs.map +1 -1
  119. package/dist/context/react/ThreadContext.js +16 -14
  120. package/dist/context/react/ThreadContext.js.map +1 -1
  121. package/dist/context/react/ThreadContext.mjs +16 -14
  122. package/dist/context/react/ThreadContext.mjs.map +1 -1
  123. package/dist/context/react/index.js +8 -6
  124. package/dist/context/react/index.js.map +1 -1
  125. package/dist/context/react/index.mjs +7 -6
  126. package/dist/context/react/index.mjs.map +1 -1
  127. package/dist/context/react/utils/createContextHook.js +2 -0
  128. package/dist/context/react/utils/createContextHook.js.map +1 -1
  129. package/dist/context/react/utils/createContextHook.mjs +1 -0
  130. package/dist/context/react/utils/createContextHook.mjs.map +1 -1
  131. package/dist/context/react/utils/createContextStoreHook.js +2 -0
  132. package/dist/context/react/utils/createContextStoreHook.js.map +1 -1
  133. package/dist/context/react/utils/createContextStoreHook.mjs +1 -0
  134. package/dist/context/react/utils/createContextStoreHook.mjs.map +1 -1
  135. package/dist/context/stores/AssistantToolUIs.js +3 -1
  136. package/dist/context/stores/AssistantToolUIs.js.map +1 -1
  137. package/dist/context/stores/AssistantToolUIs.mjs +3 -1
  138. package/dist/context/stores/AssistantToolUIs.mjs.map +1 -1
  139. package/dist/context/stores/MessageUtils.js +3 -1
  140. package/dist/context/stores/MessageUtils.js.map +1 -1
  141. package/dist/context/stores/MessageUtils.mjs +2 -1
  142. package/dist/context/stores/MessageUtils.mjs.map +1 -1
  143. package/dist/context/stores/ThreadViewport.js +3 -1
  144. package/dist/context/stores/ThreadViewport.js.map +1 -1
  145. package/dist/context/stores/ThreadViewport.mjs +3 -1
  146. package/dist/context/stores/ThreadViewport.mjs.map +1 -1
  147. package/dist/context/stores/index.js +2 -0
  148. package/dist/context/stores/index.js.map +1 -1
  149. package/dist/edge.js +3 -1
  150. package/dist/edge.js.map +1 -1
  151. package/dist/edge.mjs +2 -1
  152. package/dist/edge.mjs.map +1 -1
  153. package/dist/hooks/index.js +4 -2
  154. package/dist/hooks/index.js.map +1 -1
  155. package/dist/hooks/index.mjs +3 -2
  156. package/dist/hooks/index.mjs.map +1 -1
  157. package/dist/hooks/useAppendMessage.js +4 -2
  158. package/dist/hooks/useAppendMessage.js.map +1 -1
  159. package/dist/hooks/useAppendMessage.mjs +3 -2
  160. package/dist/hooks/useAppendMessage.mjs.map +1 -1
  161. package/dist/hooks/useSwitchToNewThread.js +4 -2
  162. package/dist/hooks/useSwitchToNewThread.js.map +1 -1
  163. package/dist/hooks/useSwitchToNewThread.mjs +3 -2
  164. package/dist/hooks/useSwitchToNewThread.mjs.map +1 -1
  165. package/dist/index.js +21 -19
  166. package/dist/index.js.map +1 -1
  167. package/dist/index.mjs +11 -10
  168. package/dist/index.mjs.map +1 -1
  169. package/dist/internal.js +12 -10
  170. package/dist/internal.js.map +1 -1
  171. package/dist/internal.mjs +10 -9
  172. package/dist/internal.mjs.map +1 -1
  173. package/dist/model-config/index.js +8 -6
  174. package/dist/model-config/index.js.map +1 -1
  175. package/dist/model-config/index.mjs +7 -6
  176. package/dist/model-config/index.mjs.map +1 -1
  177. package/dist/model-config/makeAssistantTool.js +4 -2
  178. package/dist/model-config/makeAssistantTool.js.map +1 -1
  179. package/dist/model-config/makeAssistantTool.mjs +4 -2
  180. package/dist/model-config/makeAssistantTool.mjs.map +1 -1
  181. package/dist/model-config/makeAssistantToolUI.js +4 -2
  182. package/dist/model-config/makeAssistantToolUI.js.map +1 -1
  183. package/dist/model-config/makeAssistantToolUI.mjs +4 -2
  184. package/dist/model-config/makeAssistantToolUI.mjs.map +1 -1
  185. package/dist/model-config/useAssistantInstructions.js +4 -2
  186. package/dist/model-config/useAssistantInstructions.js.map +1 -1
  187. package/dist/model-config/useAssistantInstructions.mjs +4 -2
  188. package/dist/model-config/useAssistantInstructions.mjs.map +1 -1
  189. package/dist/model-config/useAssistantTool.js +4 -2
  190. package/dist/model-config/useAssistantTool.js.map +1 -1
  191. package/dist/model-config/useAssistantTool.mjs +4 -2
  192. package/dist/model-config/useAssistantTool.mjs.map +1 -1
  193. package/dist/model-config/useAssistantToolUI.js +4 -2
  194. package/dist/model-config/useAssistantToolUI.js.map +1 -1
  195. package/dist/model-config/useAssistantToolUI.mjs +4 -2
  196. package/dist/model-config/useAssistantToolUI.mjs.map +1 -1
  197. package/dist/model-config/useInlineRender.js +3 -1
  198. package/dist/model-config/useInlineRender.js.map +1 -1
  199. package/dist/model-config/useInlineRender.mjs +2 -1
  200. package/dist/model-config/useInlineRender.mjs.map +1 -1
  201. package/dist/primitive-hooks/actionBar/index.js +9 -7
  202. package/dist/primitive-hooks/actionBar/index.js.map +1 -1
  203. package/dist/primitive-hooks/actionBar/index.mjs +8 -7
  204. package/dist/primitive-hooks/actionBar/index.mjs.map +1 -1
  205. package/dist/primitive-hooks/actionBar/useActionBarCopy.js +5 -3
  206. package/dist/primitive-hooks/actionBar/useActionBarCopy.js.map +1 -1
  207. package/dist/primitive-hooks/actionBar/useActionBarCopy.mjs +4 -3
  208. package/dist/primitive-hooks/actionBar/useActionBarCopy.mjs.map +1 -1
  209. package/dist/primitive-hooks/actionBar/useActionBarEdit.js +4 -2
  210. package/dist/primitive-hooks/actionBar/useActionBarEdit.js.map +1 -1
  211. package/dist/primitive-hooks/actionBar/useActionBarEdit.mjs +3 -2
  212. package/dist/primitive-hooks/actionBar/useActionBarEdit.mjs.map +1 -1
  213. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js +4 -2
  214. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.js.map +1 -1
  215. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.mjs +3 -2
  216. package/dist/primitive-hooks/actionBar/useActionBarFeedbackNegative.mjs.map +1 -1
  217. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js +4 -2
  218. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.js.map +1 -1
  219. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.mjs +3 -2
  220. package/dist/primitive-hooks/actionBar/useActionBarFeedbackPositive.mjs.map +1 -1
  221. package/dist/primitive-hooks/actionBar/useActionBarReload.js +6 -4
  222. package/dist/primitive-hooks/actionBar/useActionBarReload.js.map +1 -1
  223. package/dist/primitive-hooks/actionBar/useActionBarReload.mjs +5 -4
  224. package/dist/primitive-hooks/actionBar/useActionBarReload.mjs.map +1 -1
  225. package/dist/primitive-hooks/actionBar/useActionBarSpeak.js +4 -2
  226. package/dist/primitive-hooks/actionBar/useActionBarSpeak.js.map +1 -1
  227. package/dist/primitive-hooks/actionBar/useActionBarSpeak.mjs +3 -2
  228. package/dist/primitive-hooks/actionBar/useActionBarSpeak.mjs.map +1 -1
  229. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js +4 -2
  230. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.js.map +1 -1
  231. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.mjs +3 -2
  232. package/dist/primitive-hooks/actionBar/useActionBarStopSpeaking.mjs.map +1 -1
  233. package/dist/primitive-hooks/attachment/useAttachmentRemove.js +4 -2
  234. package/dist/primitive-hooks/attachment/useAttachmentRemove.js.map +1 -1
  235. package/dist/primitive-hooks/attachment/useAttachmentRemove.mjs +3 -2
  236. package/dist/primitive-hooks/attachment/useAttachmentRemove.mjs.map +1 -1
  237. package/dist/primitive-hooks/branchPicker/index.js +6 -4
  238. package/dist/primitive-hooks/branchPicker/index.js.map +1 -1
  239. package/dist/primitive-hooks/branchPicker/index.mjs +5 -4
  240. package/dist/primitive-hooks/branchPicker/index.mjs.map +1 -1
  241. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js +4 -2
  242. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.js.map +1 -1
  243. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.mjs +4 -2
  244. package/dist/primitive-hooks/branchPicker/useBranchPickerCount.mjs.map +1 -1
  245. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js +4 -2
  246. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.js.map +1 -1
  247. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.mjs +3 -2
  248. package/dist/primitive-hooks/branchPicker/useBranchPickerNext.mjs.map +1 -1
  249. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js +4 -2
  250. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.js.map +1 -1
  251. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.mjs +4 -2
  252. package/dist/primitive-hooks/branchPicker/useBranchPickerNumber.mjs.map +1 -1
  253. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js +4 -2
  254. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.js.map +1 -1
  255. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.mjs +3 -2
  256. package/dist/primitive-hooks/branchPicker/useBranchPickerPrevious.mjs.map +1 -1
  257. package/dist/primitive-hooks/composer/index.js +6 -4
  258. package/dist/primitive-hooks/composer/index.js.map +1 -1
  259. package/dist/primitive-hooks/composer/index.mjs +5 -4
  260. package/dist/primitive-hooks/composer/index.mjs.map +1 -1
  261. package/dist/primitive-hooks/composer/useComposerAddAttachment.js +4 -2
  262. package/dist/primitive-hooks/composer/useComposerAddAttachment.js.map +1 -1
  263. package/dist/primitive-hooks/composer/useComposerAddAttachment.mjs +3 -2
  264. package/dist/primitive-hooks/composer/useComposerAddAttachment.mjs.map +1 -1
  265. package/dist/primitive-hooks/composer/useComposerCancel.js +4 -2
  266. package/dist/primitive-hooks/composer/useComposerCancel.js.map +1 -1
  267. package/dist/primitive-hooks/composer/useComposerCancel.mjs +3 -2
  268. package/dist/primitive-hooks/composer/useComposerCancel.mjs.map +1 -1
  269. package/dist/primitive-hooks/composer/useComposerIf.js +4 -2
  270. package/dist/primitive-hooks/composer/useComposerIf.js.map +1 -1
  271. package/dist/primitive-hooks/composer/useComposerIf.mjs +4 -2
  272. package/dist/primitive-hooks/composer/useComposerIf.mjs.map +1 -1
  273. package/dist/primitive-hooks/composer/useComposerSend.js +6 -4
  274. package/dist/primitive-hooks/composer/useComposerSend.js.map +1 -1
  275. package/dist/primitive-hooks/composer/useComposerSend.mjs +5 -4
  276. package/dist/primitive-hooks/composer/useComposerSend.mjs.map +1 -1
  277. package/dist/primitive-hooks/contentPart/index.js +5 -3
  278. package/dist/primitive-hooks/contentPart/index.js.map +1 -1
  279. package/dist/primitive-hooks/contentPart/index.mjs +4 -3
  280. package/dist/primitive-hooks/contentPart/index.mjs.map +1 -1
  281. package/dist/primitive-hooks/contentPart/useContentPartDisplay.js +4 -2
  282. package/dist/primitive-hooks/contentPart/useContentPartDisplay.js.map +1 -1
  283. package/dist/primitive-hooks/contentPart/useContentPartDisplay.mjs +3 -2
  284. package/dist/primitive-hooks/contentPart/useContentPartDisplay.mjs.map +1 -1
  285. package/dist/primitive-hooks/contentPart/useContentPartImage.js +4 -2
  286. package/dist/primitive-hooks/contentPart/useContentPartImage.js.map +1 -1
  287. package/dist/primitive-hooks/contentPart/useContentPartImage.mjs +3 -2
  288. package/dist/primitive-hooks/contentPart/useContentPartImage.mjs.map +1 -1
  289. package/dist/primitive-hooks/contentPart/useContentPartText.js +4 -2
  290. package/dist/primitive-hooks/contentPart/useContentPartText.js.map +1 -1
  291. package/dist/primitive-hooks/contentPart/useContentPartText.mjs +3 -2
  292. package/dist/primitive-hooks/contentPart/useContentPartText.mjs.map +1 -1
  293. package/dist/primitive-hooks/index.js +14 -12
  294. package/dist/primitive-hooks/index.js.map +1 -1
  295. package/dist/primitive-hooks/index.mjs +7 -6
  296. package/dist/primitive-hooks/index.mjs.map +1 -1
  297. package/dist/primitive-hooks/message/index.js +3 -1
  298. package/dist/primitive-hooks/message/index.js.map +1 -1
  299. package/dist/primitive-hooks/message/index.mjs +2 -1
  300. package/dist/primitive-hooks/message/index.mjs.map +1 -1
  301. package/dist/primitive-hooks/message/useMessageIf.js +5 -3
  302. package/dist/primitive-hooks/message/useMessageIf.js.map +1 -1
  303. package/dist/primitive-hooks/message/useMessageIf.mjs +5 -3
  304. package/dist/primitive-hooks/message/useMessageIf.mjs.map +1 -1
  305. package/dist/primitive-hooks/thread/index.js +6 -4
  306. package/dist/primitive-hooks/thread/index.js.map +1 -1
  307. package/dist/primitive-hooks/thread/index.mjs +5 -4
  308. package/dist/primitive-hooks/thread/index.mjs.map +1 -1
  309. package/dist/primitive-hooks/thread/useThreadEmpty.js +4 -2
  310. package/dist/primitive-hooks/thread/useThreadEmpty.js.map +1 -1
  311. package/dist/primitive-hooks/thread/useThreadEmpty.mjs +3 -2
  312. package/dist/primitive-hooks/thread/useThreadEmpty.mjs.map +1 -1
  313. package/dist/primitive-hooks/thread/useThreadIf.js +4 -2
  314. package/dist/primitive-hooks/thread/useThreadIf.js.map +1 -1
  315. package/dist/primitive-hooks/thread/useThreadIf.mjs +4 -2
  316. package/dist/primitive-hooks/thread/useThreadIf.mjs.map +1 -1
  317. package/dist/primitive-hooks/thread/useThreadScrollToBottom.js +5 -3
  318. package/dist/primitive-hooks/thread/useThreadScrollToBottom.js.map +1 -1
  319. package/dist/primitive-hooks/thread/useThreadScrollToBottom.mjs +4 -3
  320. package/dist/primitive-hooks/thread/useThreadScrollToBottom.mjs.map +1 -1
  321. package/dist/primitive-hooks/thread/useThreadSuggestion.js +5 -3
  322. package/dist/primitive-hooks/thread/useThreadSuggestion.js.map +1 -1
  323. package/dist/primitive-hooks/thread/useThreadSuggestion.mjs +4 -3
  324. package/dist/primitive-hooks/thread/useThreadSuggestion.mjs.map +1 -1
  325. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.js +8 -6
  326. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.js.map +1 -1
  327. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.mjs +8 -6
  328. package/dist/primitive-hooks/thread/useThreadViewportAutoScroll.mjs.map +1 -1
  329. package/dist/primitives/actionBar/ActionBarCopy.js +6 -4
  330. package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
  331. package/dist/primitives/actionBar/ActionBarCopy.mjs +6 -4
  332. package/dist/primitives/actionBar/ActionBarCopy.mjs.map +1 -1
  333. package/dist/primitives/actionBar/ActionBarEdit.js +5 -3
  334. package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
  335. package/dist/primitives/actionBar/ActionBarEdit.mjs +5 -3
  336. package/dist/primitives/actionBar/ActionBarEdit.mjs.map +1 -1
  337. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +6 -4
  338. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
  339. package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs +6 -4
  340. package/dist/primitives/actionBar/ActionBarFeedbackNegative.mjs.map +1 -1
  341. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +6 -4
  342. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
  343. package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs +6 -4
  344. package/dist/primitives/actionBar/ActionBarFeedbackPositive.mjs.map +1 -1
  345. package/dist/primitives/actionBar/ActionBarReload.js +5 -3
  346. package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
  347. package/dist/primitives/actionBar/ActionBarReload.mjs +5 -3
  348. package/dist/primitives/actionBar/ActionBarReload.mjs.map +1 -1
  349. package/dist/primitives/actionBar/ActionBarRoot.js +5 -3
  350. package/dist/primitives/actionBar/ActionBarRoot.js.map +1 -1
  351. package/dist/primitives/actionBar/ActionBarRoot.mjs +5 -3
  352. package/dist/primitives/actionBar/ActionBarRoot.mjs.map +1 -1
  353. package/dist/primitives/actionBar/ActionBarSpeak.js +5 -3
  354. package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
  355. package/dist/primitives/actionBar/ActionBarSpeak.mjs +5 -3
  356. package/dist/primitives/actionBar/ActionBarSpeak.mjs.map +1 -1
  357. package/dist/primitives/actionBar/ActionBarStopSpeaking.js +5 -3
  358. package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
  359. package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs +5 -3
  360. package/dist/primitives/actionBar/ActionBarStopSpeaking.mjs.map +1 -1
  361. package/dist/primitives/actionBar/index.js +10 -8
  362. package/dist/primitives/actionBar/index.js.map +1 -1
  363. package/dist/primitives/actionBar/index.mjs +9 -8
  364. package/dist/primitives/actionBar/index.mjs.map +1 -1
  365. package/dist/primitives/actionBar/types.js +2 -0
  366. package/dist/primitives/actionBar/types.js.map +1 -1
  367. package/dist/primitives/actionBar/useActionBarFloatStatus.js +6 -4
  368. package/dist/primitives/actionBar/useActionBarFloatStatus.js.map +1 -1
  369. package/dist/primitives/actionBar/useActionBarFloatStatus.mjs +6 -4
  370. package/dist/primitives/actionBar/useActionBarFloatStatus.mjs.map +1 -1
  371. package/dist/primitives/assistantModal/AssistantModalAnchor.js +5 -3
  372. package/dist/primitives/assistantModal/AssistantModalAnchor.js.map +1 -1
  373. package/dist/primitives/assistantModal/AssistantModalAnchor.mjs +5 -3
  374. package/dist/primitives/assistantModal/AssistantModalAnchor.mjs.map +1 -1
  375. package/dist/primitives/assistantModal/AssistantModalContent.js +5 -3
  376. package/dist/primitives/assistantModal/AssistantModalContent.js.map +1 -1
  377. package/dist/primitives/assistantModal/AssistantModalContent.mjs +5 -3
  378. package/dist/primitives/assistantModal/AssistantModalContent.mjs.map +1 -1
  379. package/dist/primitives/assistantModal/AssistantModalRoot.js +7 -5
  380. package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
  381. package/dist/primitives/assistantModal/AssistantModalRoot.mjs +7 -5
  382. package/dist/primitives/assistantModal/AssistantModalRoot.mjs.map +1 -1
  383. package/dist/primitives/assistantModal/AssistantModalTrigger.js +5 -3
  384. package/dist/primitives/assistantModal/AssistantModalTrigger.js.map +1 -1
  385. package/dist/primitives/assistantModal/AssistantModalTrigger.mjs +5 -3
  386. package/dist/primitives/assistantModal/AssistantModalTrigger.mjs.map +1 -1
  387. package/dist/primitives/assistantModal/index.js +6 -4
  388. package/dist/primitives/assistantModal/index.js.map +1 -1
  389. package/dist/primitives/assistantModal/index.mjs +5 -4
  390. package/dist/primitives/assistantModal/index.mjs.map +1 -1
  391. package/dist/primitives/assistantModal/scope.js +3 -1
  392. package/dist/primitives/assistantModal/scope.js.map +1 -1
  393. package/dist/primitives/assistantModal/scope.mjs +2 -1
  394. package/dist/primitives/assistantModal/scope.mjs.map +1 -1
  395. package/dist/primitives/assistantModal/types.js +2 -0
  396. package/dist/primitives/assistantModal/types.js.map +1 -1
  397. package/dist/primitives/attachment/AttachmentName.js +4 -2
  398. package/dist/primitives/attachment/AttachmentName.js.map +1 -1
  399. package/dist/primitives/attachment/AttachmentName.mjs +4 -2
  400. package/dist/primitives/attachment/AttachmentName.mjs.map +1 -1
  401. package/dist/primitives/attachment/AttachmentRemove.js +5 -3
  402. package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
  403. package/dist/primitives/attachment/AttachmentRemove.mjs +5 -3
  404. package/dist/primitives/attachment/AttachmentRemove.mjs.map +1 -1
  405. package/dist/primitives/attachment/AttachmentRoot.js +4 -2
  406. package/dist/primitives/attachment/AttachmentRoot.js.map +1 -1
  407. package/dist/primitives/attachment/AttachmentRoot.mjs +3 -2
  408. package/dist/primitives/attachment/AttachmentRoot.mjs.map +1 -1
  409. package/dist/primitives/attachment/AttachmentThumb.js +5 -3
  410. package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
  411. package/dist/primitives/attachment/AttachmentThumb.mjs +5 -3
  412. package/dist/primitives/attachment/AttachmentThumb.mjs.map +1 -1
  413. package/dist/primitives/attachment/index.js +6 -4
  414. package/dist/primitives/attachment/index.js.map +1 -1
  415. package/dist/primitives/attachment/index.mjs +5 -4
  416. package/dist/primitives/attachment/index.mjs.map +1 -1
  417. package/dist/primitives/branchPicker/BranchPickerCount.js +4 -2
  418. package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
  419. package/dist/primitives/branchPicker/BranchPickerCount.mjs +4 -2
  420. package/dist/primitives/branchPicker/BranchPickerCount.mjs.map +1 -1
  421. package/dist/primitives/branchPicker/BranchPickerNext.js +5 -3
  422. package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
  423. package/dist/primitives/branchPicker/BranchPickerNext.mjs +5 -3
  424. package/dist/primitives/branchPicker/BranchPickerNext.mjs.map +1 -1
  425. package/dist/primitives/branchPicker/BranchPickerNumber.js +4 -2
  426. package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
  427. package/dist/primitives/branchPicker/BranchPickerNumber.mjs +4 -2
  428. package/dist/primitives/branchPicker/BranchPickerNumber.mjs.map +1 -1
  429. package/dist/primitives/branchPicker/BranchPickerPrevious.js +5 -3
  430. package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
  431. package/dist/primitives/branchPicker/BranchPickerPrevious.mjs +5 -3
  432. package/dist/primitives/branchPicker/BranchPickerPrevious.mjs.map +1 -1
  433. package/dist/primitives/branchPicker/BranchPickerRoot.js +5 -3
  434. package/dist/primitives/branchPicker/BranchPickerRoot.js.map +1 -1
  435. package/dist/primitives/branchPicker/BranchPickerRoot.mjs +5 -3
  436. package/dist/primitives/branchPicker/BranchPickerRoot.mjs.map +1 -1
  437. package/dist/primitives/branchPicker/index.js +7 -5
  438. package/dist/primitives/branchPicker/index.js.map +1 -1
  439. package/dist/primitives/branchPicker/index.mjs +6 -5
  440. package/dist/primitives/branchPicker/index.mjs.map +1 -1
  441. package/dist/primitives/branchPicker/types.js +2 -0
  442. package/dist/primitives/branchPicker/types.js.map +1 -1
  443. package/dist/primitives/composer/ComposerAddAttachment.js +5 -3
  444. package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
  445. package/dist/primitives/composer/ComposerAddAttachment.mjs +5 -3
  446. package/dist/primitives/composer/ComposerAddAttachment.mjs.map +1 -1
  447. package/dist/primitives/composer/ComposerAttachments.js +11 -9
  448. package/dist/primitives/composer/ComposerAttachments.js.map +1 -1
  449. package/dist/primitives/composer/ComposerAttachments.mjs +11 -9
  450. package/dist/primitives/composer/ComposerAttachments.mjs.map +1 -1
  451. package/dist/primitives/composer/ComposerCancel.js +5 -3
  452. package/dist/primitives/composer/ComposerCancel.js.map +1 -1
  453. package/dist/primitives/composer/ComposerCancel.mjs +5 -3
  454. package/dist/primitives/composer/ComposerCancel.mjs.map +1 -1
  455. package/dist/primitives/composer/ComposerIf.js +4 -2
  456. package/dist/primitives/composer/ComposerIf.js.map +1 -1
  457. package/dist/primitives/composer/ComposerIf.mjs +4 -2
  458. package/dist/primitives/composer/ComposerIf.mjs.map +1 -1
  459. package/dist/primitives/composer/ComposerInput.js +7 -5
  460. package/dist/primitives/composer/ComposerInput.js.map +1 -1
  461. package/dist/primitives/composer/ComposerInput.mjs +7 -5
  462. package/dist/primitives/composer/ComposerInput.mjs.map +1 -1
  463. package/dist/primitives/composer/ComposerRoot.js +5 -3
  464. package/dist/primitives/composer/ComposerRoot.js.map +1 -1
  465. package/dist/primitives/composer/ComposerRoot.mjs +5 -3
  466. package/dist/primitives/composer/ComposerRoot.mjs.map +1 -1
  467. package/dist/primitives/composer/ComposerSend.js +5 -3
  468. package/dist/primitives/composer/ComposerSend.js.map +1 -1
  469. package/dist/primitives/composer/ComposerSend.mjs +5 -3
  470. package/dist/primitives/composer/ComposerSend.mjs.map +1 -1
  471. package/dist/primitives/composer/index.js +9 -7
  472. package/dist/primitives/composer/index.js.map +1 -1
  473. package/dist/primitives/composer/index.mjs +8 -7
  474. package/dist/primitives/composer/index.mjs.map +1 -1
  475. package/dist/primitives/composer/types.js +2 -0
  476. package/dist/primitives/composer/types.js.map +1 -1
  477. package/dist/primitives/contentPart/ContentPartDisplay.js +4 -2
  478. package/dist/primitives/contentPart/ContentPartDisplay.js.map +1 -1
  479. package/dist/primitives/contentPart/ContentPartDisplay.mjs +3 -2
  480. package/dist/primitives/contentPart/ContentPartDisplay.mjs.map +1 -1
  481. package/dist/primitives/contentPart/ContentPartImage.js +5 -3
  482. package/dist/primitives/contentPart/ContentPartImage.js.map +1 -1
  483. package/dist/primitives/contentPart/ContentPartImage.mjs +4 -3
  484. package/dist/primitives/contentPart/ContentPartImage.mjs.map +1 -1
  485. package/dist/primitives/contentPart/ContentPartInProgress.js +4 -2
  486. package/dist/primitives/contentPart/ContentPartInProgress.js.map +1 -1
  487. package/dist/primitives/contentPart/ContentPartInProgress.mjs +3 -2
  488. package/dist/primitives/contentPart/ContentPartInProgress.mjs.map +1 -1
  489. package/dist/primitives/contentPart/ContentPartText.js +6 -4
  490. package/dist/primitives/contentPart/ContentPartText.js.map +1 -1
  491. package/dist/primitives/contentPart/ContentPartText.mjs +6 -4
  492. package/dist/primitives/contentPart/ContentPartText.mjs.map +1 -1
  493. package/dist/primitives/contentPart/index.js +6 -4
  494. package/dist/primitives/contentPart/index.js.map +1 -1
  495. package/dist/primitives/contentPart/index.mjs +5 -4
  496. package/dist/primitives/contentPart/index.mjs.map +1 -1
  497. package/dist/primitives/contentPart/types.js +2 -0
  498. package/dist/primitives/contentPart/types.js.map +1 -1
  499. package/dist/primitives/index.js +10 -8
  500. package/dist/primitives/index.js.map +1 -1
  501. package/dist/primitives/index.mjs +9 -8
  502. package/dist/primitives/index.mjs.map +1 -1
  503. package/dist/primitives/message/MessageAttachments.js +11 -9
  504. package/dist/primitives/message/MessageAttachments.js.map +1 -1
  505. package/dist/primitives/message/MessageAttachments.mjs +11 -9
  506. package/dist/primitives/message/MessageAttachments.mjs.map +1 -1
  507. package/dist/primitives/message/MessageContent.js +17 -15
  508. package/dist/primitives/message/MessageContent.js.map +1 -1
  509. package/dist/primitives/message/MessageContent.mjs +17 -15
  510. package/dist/primitives/message/MessageContent.mjs.map +1 -1
  511. package/dist/primitives/message/MessageIf.js +4 -2
  512. package/dist/primitives/message/MessageIf.js.map +1 -1
  513. package/dist/primitives/message/MessageIf.mjs +4 -2
  514. package/dist/primitives/message/MessageIf.mjs.map +1 -1
  515. package/dist/primitives/message/MessageInProgress.js +3 -1
  516. package/dist/primitives/message/MessageInProgress.js.map +1 -1
  517. package/dist/primitives/message/MessageInProgress.mjs +3 -1
  518. package/dist/primitives/message/MessageInProgress.mjs.map +1 -1
  519. package/dist/primitives/message/MessageRoot.js +7 -5
  520. package/dist/primitives/message/MessageRoot.js.map +1 -1
  521. package/dist/primitives/message/MessageRoot.mjs +7 -5
  522. package/dist/primitives/message/MessageRoot.mjs.map +1 -1
  523. package/dist/primitives/message/index.js +7 -5
  524. package/dist/primitives/message/index.js.map +1 -1
  525. package/dist/primitives/message/index.mjs +6 -5
  526. package/dist/primitives/message/index.mjs.map +1 -1
  527. package/dist/primitives/message/types.js +2 -0
  528. package/dist/primitives/message/types.js.map +1 -1
  529. package/dist/primitives/thread/ThreadEmpty.js +4 -2
  530. package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
  531. package/dist/primitives/thread/ThreadEmpty.mjs +4 -2
  532. package/dist/primitives/thread/ThreadEmpty.mjs.map +1 -1
  533. package/dist/primitives/thread/ThreadIf.js +4 -2
  534. package/dist/primitives/thread/ThreadIf.js.map +1 -1
  535. package/dist/primitives/thread/ThreadIf.mjs +4 -2
  536. package/dist/primitives/thread/ThreadIf.mjs.map +1 -1
  537. package/dist/primitives/thread/ThreadMessages.js +14 -12
  538. package/dist/primitives/thread/ThreadMessages.js.map +1 -1
  539. package/dist/primitives/thread/ThreadMessages.mjs +14 -12
  540. package/dist/primitives/thread/ThreadMessages.mjs.map +1 -1
  541. package/dist/primitives/thread/ThreadRoot.js +4 -2
  542. package/dist/primitives/thread/ThreadRoot.js.map +1 -1
  543. package/dist/primitives/thread/ThreadRoot.mjs +4 -2
  544. package/dist/primitives/thread/ThreadRoot.mjs.map +1 -1
  545. package/dist/primitives/thread/ThreadScrollToBottom.js +5 -3
  546. package/dist/primitives/thread/ThreadScrollToBottom.js.map +1 -1
  547. package/dist/primitives/thread/ThreadScrollToBottom.mjs +5 -3
  548. package/dist/primitives/thread/ThreadScrollToBottom.mjs.map +1 -1
  549. package/dist/primitives/thread/ThreadSuggestion.js +5 -3
  550. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  551. package/dist/primitives/thread/ThreadSuggestion.mjs +5 -3
  552. package/dist/primitives/thread/ThreadSuggestion.mjs.map +1 -1
  553. package/dist/primitives/thread/ThreadViewport.js +5 -3
  554. package/dist/primitives/thread/ThreadViewport.js.map +1 -1
  555. package/dist/primitives/thread/ThreadViewport.mjs +5 -3
  556. package/dist/primitives/thread/ThreadViewport.mjs.map +1 -1
  557. package/dist/primitives/thread/index.js +9 -7
  558. package/dist/primitives/thread/index.js.map +1 -1
  559. package/dist/primitives/thread/index.mjs +8 -7
  560. package/dist/primitives/thread/index.mjs.map +1 -1
  561. package/dist/primitives/thread/types.js +2 -0
  562. package/dist/primitives/thread/types.js.map +1 -1
  563. package/dist/runtimes/attachment/AttachmentAdapter.js +2 -0
  564. package/dist/runtimes/attachment/AttachmentAdapter.js.map +1 -1
  565. package/dist/runtimes/attachment/CompositeAttachmentAdapter.js +4 -2
  566. package/dist/runtimes/attachment/CompositeAttachmentAdapter.js.map +1 -1
  567. package/dist/runtimes/attachment/CompositeAttachmentAdapter.mjs +3 -2
  568. package/dist/runtimes/attachment/CompositeAttachmentAdapter.mjs.map +1 -1
  569. package/dist/runtimes/attachment/SimpleImageAttachmentAdapter.js +5 -3
  570. package/dist/runtimes/attachment/SimpleImageAttachmentAdapter.js.map +1 -1
  571. package/dist/runtimes/attachment/SimpleImageAttachmentAdapter.mjs +4 -3
  572. package/dist/runtimes/attachment/SimpleImageAttachmentAdapter.mjs.map +1 -1
  573. package/dist/runtimes/attachment/SimpleTextAttachmentAdapter.js +5 -3
  574. package/dist/runtimes/attachment/SimpleTextAttachmentAdapter.js.map +1 -1
  575. package/dist/runtimes/attachment/SimpleTextAttachmentAdapter.mjs +4 -3
  576. package/dist/runtimes/attachment/SimpleTextAttachmentAdapter.mjs.map +1 -1
  577. package/dist/runtimes/attachment/index.js +5 -3
  578. package/dist/runtimes/attachment/index.js.map +1 -1
  579. package/dist/runtimes/attachment/index.mjs +4 -3
  580. package/dist/runtimes/attachment/index.mjs.map +1 -1
  581. package/dist/runtimes/composer/BaseComposerRuntimeCore.js +5 -3
  582. package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
  583. package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs +4 -3
  584. package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs.map +1 -1
  585. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js +6 -4
  586. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js.map +1 -1
  587. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.mjs +5 -4
  588. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.mjs.map +1 -1
  589. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js +5 -3
  590. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js.map +1 -1
  591. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.mjs +4 -3
  592. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.mjs.map +1 -1
  593. package/dist/runtimes/core/AssistantRuntimeCore.js +2 -0
  594. package/dist/runtimes/core/AssistantRuntimeCore.js.map +1 -1
  595. package/dist/runtimes/core/BaseAssistantRuntimeCore.js +5 -3
  596. package/dist/runtimes/core/BaseAssistantRuntimeCore.js.map +1 -1
  597. package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs +4 -3
  598. package/dist/runtimes/core/BaseAssistantRuntimeCore.mjs.map +1 -1
  599. package/dist/runtimes/core/BaseThreadRuntimeCore.js +8 -6
  600. package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
  601. package/dist/runtimes/core/BaseThreadRuntimeCore.mjs +7 -6
  602. package/dist/runtimes/core/BaseThreadRuntimeCore.mjs.map +1 -1
  603. package/dist/runtimes/core/ComposerRuntimeCore.js +2 -0
  604. package/dist/runtimes/core/ComposerRuntimeCore.js.map +1 -1
  605. package/dist/runtimes/core/ThreadManagerRuntimeCore.js +2 -0
  606. package/dist/runtimes/core/ThreadManagerRuntimeCore.js.map +1 -1
  607. package/dist/runtimes/core/ThreadRuntimeCore.js +2 -0
  608. package/dist/runtimes/core/ThreadRuntimeCore.js.map +1 -1
  609. package/dist/runtimes/core/index.js +3 -1
  610. package/dist/runtimes/core/index.js.map +1 -1
  611. package/dist/runtimes/core/index.mjs +2 -1
  612. package/dist/runtimes/core/index.mjs.map +1 -1
  613. package/dist/runtimes/core/subscribeToMainThread.js +3 -1
  614. package/dist/runtimes/core/subscribeToMainThread.js.map +1 -1
  615. package/dist/runtimes/core/subscribeToMainThread.mjs +2 -1
  616. package/dist/runtimes/core/subscribeToMainThread.mjs.map +1 -1
  617. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js +10 -8
  618. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.js.map +1 -1
  619. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.mjs +9 -8
  620. package/dist/runtimes/dangerous-in-browser/DangerousInBrowserAdapter.mjs.map +1 -1
  621. package/dist/runtimes/dangerous-in-browser/index.js +3 -1
  622. package/dist/runtimes/dangerous-in-browser/index.js.map +1 -1
  623. package/dist/runtimes/dangerous-in-browser/index.mjs +2 -1
  624. package/dist/runtimes/dangerous-in-browser/index.mjs.map +1 -1
  625. package/dist/runtimes/dangerous-in-browser/useDangerousInBrowserRuntime.js +6 -4
  626. package/dist/runtimes/dangerous-in-browser/useDangerousInBrowserRuntime.js.map +1 -1
  627. package/dist/runtimes/dangerous-in-browser/useDangerousInBrowserRuntime.mjs +5 -4
  628. package/dist/runtimes/dangerous-in-browser/useDangerousInBrowserRuntime.mjs.map +1 -1
  629. package/dist/runtimes/edge/EdgeChatAdapter.d.ts +5 -0
  630. package/dist/runtimes/edge/EdgeChatAdapter.d.ts.map +1 -1
  631. package/dist/runtimes/edge/EdgeChatAdapter.js +14 -9
  632. package/dist/runtimes/edge/EdgeChatAdapter.js.map +1 -1
  633. package/dist/runtimes/edge/EdgeChatAdapter.mjs +13 -9
  634. package/dist/runtimes/edge/EdgeChatAdapter.mjs.map +1 -1
  635. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js +13 -11
  636. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js.map +1 -1
  637. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs +12 -11
  638. package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs.map +1 -1
  639. package/dist/runtimes/edge/converters/fromCoreMessage.js +5 -3
  640. package/dist/runtimes/edge/converters/fromCoreMessage.js.map +1 -1
  641. package/dist/runtimes/edge/converters/fromCoreMessage.mjs +4 -3
  642. package/dist/runtimes/edge/converters/fromCoreMessage.mjs.map +1 -1
  643. package/dist/runtimes/edge/converters/fromLanguageModelMessages.js +3 -1
  644. package/dist/runtimes/edge/converters/fromLanguageModelMessages.js.map +1 -1
  645. package/dist/runtimes/edge/converters/fromLanguageModelMessages.mjs +2 -1
  646. package/dist/runtimes/edge/converters/fromLanguageModelMessages.mjs.map +1 -1
  647. package/dist/runtimes/edge/converters/fromLanguageModelTools.js +3 -1
  648. package/dist/runtimes/edge/converters/fromLanguageModelTools.js.map +1 -1
  649. package/dist/runtimes/edge/converters/fromLanguageModelTools.mjs +2 -1
  650. package/dist/runtimes/edge/converters/fromLanguageModelTools.mjs.map +1 -1
  651. package/dist/runtimes/edge/converters/index.js +8 -6
  652. package/dist/runtimes/edge/converters/index.js.map +1 -1
  653. package/dist/runtimes/edge/converters/index.mjs +7 -6
  654. package/dist/runtimes/edge/converters/index.mjs.map +1 -1
  655. package/dist/runtimes/edge/converters/toCoreMessages.js +4 -2
  656. package/dist/runtimes/edge/converters/toCoreMessages.js.map +1 -1
  657. package/dist/runtimes/edge/converters/toCoreMessages.mjs +3 -2
  658. package/dist/runtimes/edge/converters/toCoreMessages.mjs.map +1 -1
  659. package/dist/runtimes/edge/converters/toLanguageModelMessages.js +3 -1
  660. package/dist/runtimes/edge/converters/toLanguageModelMessages.js.map +1 -1
  661. package/dist/runtimes/edge/converters/toLanguageModelMessages.mjs +2 -1
  662. package/dist/runtimes/edge/converters/toLanguageModelMessages.mjs.map +1 -1
  663. package/dist/runtimes/edge/converters/toLanguageModelTools.js +3 -1
  664. package/dist/runtimes/edge/converters/toLanguageModelTools.js.map +1 -1
  665. package/dist/runtimes/edge/converters/toLanguageModelTools.mjs +2 -1
  666. package/dist/runtimes/edge/converters/toLanguageModelTools.mjs.map +1 -1
  667. package/dist/runtimes/edge/createEdgeRuntimeAPI.js +15 -13
  668. package/dist/runtimes/edge/createEdgeRuntimeAPI.js.map +1 -1
  669. package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs +14 -13
  670. package/dist/runtimes/edge/createEdgeRuntimeAPI.mjs.map +1 -1
  671. package/dist/runtimes/edge/index.js +8 -6
  672. package/dist/runtimes/edge/index.js.map +1 -1
  673. package/dist/runtimes/edge/index.mjs +5 -4
  674. package/dist/runtimes/edge/index.mjs.map +1 -1
  675. package/dist/runtimes/edge/partial-json/fix-json.js +2 -0
  676. package/dist/runtimes/edge/partial-json/fix-json.js.map +1 -1
  677. package/dist/runtimes/edge/partial-json/fix-json.mjs +1 -0
  678. package/dist/runtimes/edge/partial-json/fix-json.mjs.map +1 -1
  679. package/dist/runtimes/edge/partial-json/parse-partial-json.js +4 -2
  680. package/dist/runtimes/edge/partial-json/parse-partial-json.js.map +1 -1
  681. package/dist/runtimes/edge/partial-json/parse-partial-json.mjs +3 -2
  682. package/dist/runtimes/edge/partial-json/parse-partial-json.mjs.map +1 -1
  683. package/dist/runtimes/edge/streams/AssistantStreamChunkType.js +2 -0
  684. package/dist/runtimes/edge/streams/AssistantStreamChunkType.js.map +1 -1
  685. package/dist/runtimes/edge/streams/AssistantStreamChunkType.mjs +1 -0
  686. package/dist/runtimes/edge/streams/AssistantStreamChunkType.mjs.map +1 -1
  687. package/dist/runtimes/edge/streams/assistantDecoderStream.js +3 -1
  688. package/dist/runtimes/edge/streams/assistantDecoderStream.js.map +1 -1
  689. package/dist/runtimes/edge/streams/assistantDecoderStream.mjs +2 -1
  690. package/dist/runtimes/edge/streams/assistantDecoderStream.mjs.map +1 -1
  691. package/dist/runtimes/edge/streams/assistantEncoderStream.js +3 -1
  692. package/dist/runtimes/edge/streams/assistantEncoderStream.js.map +1 -1
  693. package/dist/runtimes/edge/streams/assistantEncoderStream.mjs +2 -1
  694. package/dist/runtimes/edge/streams/assistantEncoderStream.mjs.map +1 -1
  695. package/dist/runtimes/edge/streams/runResultStream.js +10 -8
  696. package/dist/runtimes/edge/streams/runResultStream.js.map +1 -1
  697. package/dist/runtimes/edge/streams/runResultStream.mjs +9 -8
  698. package/dist/runtimes/edge/streams/runResultStream.mjs.map +1 -1
  699. package/dist/runtimes/edge/streams/toolResultStream.js +2 -0
  700. package/dist/runtimes/edge/streams/toolResultStream.js.map +1 -1
  701. package/dist/runtimes/edge/streams/toolResultStream.mjs +1 -0
  702. package/dist/runtimes/edge/streams/toolResultStream.mjs.map +1 -1
  703. package/dist/runtimes/edge/streams/utils/PipeableTransformStream.js +4 -2
  704. package/dist/runtimes/edge/streams/utils/PipeableTransformStream.js.map +1 -1
  705. package/dist/runtimes/edge/streams/utils/PipeableTransformStream.mjs +3 -2
  706. package/dist/runtimes/edge/streams/utils/PipeableTransformStream.mjs.map +1 -1
  707. package/dist/runtimes/edge/streams/utils/StreamPart.js +2 -0
  708. package/dist/runtimes/edge/streams/utils/StreamPart.js.map +1 -1
  709. package/dist/runtimes/edge/streams/utils/chunkByLineStream.js +2 -0
  710. package/dist/runtimes/edge/streams/utils/chunkByLineStream.js.map +1 -1
  711. package/dist/runtimes/edge/streams/utils/chunkByLineStream.mjs +1 -0
  712. package/dist/runtimes/edge/streams/utils/chunkByLineStream.mjs.map +1 -1
  713. package/dist/runtimes/edge/streams/utils/index.js +5 -3
  714. package/dist/runtimes/edge/streams/utils/index.js.map +1 -1
  715. package/dist/runtimes/edge/streams/utils/index.mjs +4 -3
  716. package/dist/runtimes/edge/streams/utils/index.mjs.map +1 -1
  717. package/dist/runtimes/edge/streams/utils/streamPartDecoderStream.js +5 -3
  718. package/dist/runtimes/edge/streams/utils/streamPartDecoderStream.js.map +1 -1
  719. package/dist/runtimes/edge/streams/utils/streamPartDecoderStream.mjs +4 -3
  720. package/dist/runtimes/edge/streams/utils/streamPartDecoderStream.mjs.map +1 -1
  721. package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.js +3 -1
  722. package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.js.map +1 -1
  723. package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.mjs +2 -1
  724. package/dist/runtimes/edge/streams/utils/streamPartEncoderStream.mjs.map +1 -1
  725. package/dist/runtimes/edge/useEdgeRuntime.js +6 -4
  726. package/dist/runtimes/edge/useEdgeRuntime.js.map +1 -1
  727. package/dist/runtimes/edge/useEdgeRuntime.mjs +5 -4
  728. package/dist/runtimes/edge/useEdgeRuntime.mjs.map +1 -1
  729. package/dist/runtimes/external-store/ExternalStoreAdapter.js +2 -0
  730. package/dist/runtimes/external-store/ExternalStoreAdapter.js.map +1 -1
  731. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +8 -6
  732. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
  733. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs +7 -6
  734. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.mjs.map +1 -1
  735. package/dist/runtimes/external-store/ExternalStoreThreadManagementAdapter.js +6 -4
  736. package/dist/runtimes/external-store/ExternalStoreThreadManagementAdapter.js.map +1 -1
  737. package/dist/runtimes/external-store/ExternalStoreThreadManagementAdapter.mjs +5 -4
  738. package/dist/runtimes/external-store/ExternalStoreThreadManagementAdapter.mjs.map +1 -1
  739. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +12 -10
  740. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
  741. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs +11 -10
  742. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.mjs.map +1 -1
  743. package/dist/runtimes/external-store/ThreadMessageConverter.js +4 -2
  744. package/dist/runtimes/external-store/ThreadMessageConverter.js.map +1 -1
  745. package/dist/runtimes/external-store/ThreadMessageConverter.mjs +3 -2
  746. package/dist/runtimes/external-store/ThreadMessageConverter.mjs.map +1 -1
  747. package/dist/runtimes/external-store/ThreadMessageLike.js +3 -1
  748. package/dist/runtimes/external-store/ThreadMessageLike.js.map +1 -1
  749. package/dist/runtimes/external-store/ThreadMessageLike.mjs +2 -1
  750. package/dist/runtimes/external-store/ThreadMessageLike.mjs.map +1 -1
  751. package/dist/runtimes/external-store/auto-status.js +6 -4
  752. package/dist/runtimes/external-store/auto-status.js.map +1 -1
  753. package/dist/runtimes/external-store/auto-status.mjs +5 -4
  754. package/dist/runtimes/external-store/auto-status.mjs.map +1 -1
  755. package/dist/runtimes/external-store/external-message-converter.js +10 -8
  756. package/dist/runtimes/external-store/external-message-converter.js.map +1 -1
  757. package/dist/runtimes/external-store/external-message-converter.mjs +9 -8
  758. package/dist/runtimes/external-store/external-message-converter.mjs.map +1 -1
  759. package/dist/runtimes/external-store/getExternalStoreMessage.js +4 -2
  760. package/dist/runtimes/external-store/getExternalStoreMessage.js.map +1 -1
  761. package/dist/runtimes/external-store/getExternalStoreMessage.mjs +3 -2
  762. package/dist/runtimes/external-store/getExternalStoreMessage.mjs.map +1 -1
  763. package/dist/runtimes/external-store/index.js +5 -3
  764. package/dist/runtimes/external-store/index.js.map +1 -1
  765. package/dist/runtimes/external-store/index.mjs +4 -3
  766. package/dist/runtimes/external-store/index.mjs.map +1 -1
  767. package/dist/runtimes/external-store/useExternalStoreRuntime.js +6 -4
  768. package/dist/runtimes/external-store/useExternalStoreRuntime.js.map +1 -1
  769. package/dist/runtimes/external-store/useExternalStoreRuntime.mjs +5 -4
  770. package/dist/runtimes/external-store/useExternalStoreRuntime.mjs.map +1 -1
  771. package/dist/runtimes/feedback/FeedbackAdapter.js +2 -0
  772. package/dist/runtimes/feedback/FeedbackAdapter.js.map +1 -1
  773. package/dist/runtimes/feedback/index.js +2 -0
  774. package/dist/runtimes/feedback/index.js.map +1 -1
  775. package/dist/runtimes/index.js +18 -16
  776. package/dist/runtimes/index.js.map +1 -1
  777. package/dist/runtimes/index.mjs +9 -8
  778. package/dist/runtimes/index.mjs.map +1 -1
  779. package/dist/runtimes/local/ChatModelAdapter.js +2 -0
  780. package/dist/runtimes/local/ChatModelAdapter.js.map +1 -1
  781. package/dist/runtimes/local/LocalRuntimeCore.js +9 -7
  782. package/dist/runtimes/local/LocalRuntimeCore.js.map +1 -1
  783. package/dist/runtimes/local/LocalRuntimeCore.mjs +8 -7
  784. package/dist/runtimes/local/LocalRuntimeCore.mjs.map +1 -1
  785. package/dist/runtimes/local/LocalRuntimeOptions.js +3 -1
  786. package/dist/runtimes/local/LocalRuntimeOptions.js.map +1 -1
  787. package/dist/runtimes/local/LocalRuntimeOptions.mjs +2 -1
  788. package/dist/runtimes/local/LocalRuntimeOptions.mjs.map +1 -1
  789. package/dist/runtimes/local/LocalThreadManagerRuntimeCore.js +5 -3
  790. package/dist/runtimes/local/LocalThreadManagerRuntimeCore.js.map +1 -1
  791. package/dist/runtimes/local/LocalThreadManagerRuntimeCore.mjs +4 -3
  792. package/dist/runtimes/local/LocalThreadManagerRuntimeCore.mjs.map +1 -1
  793. package/dist/runtimes/local/LocalThreadRuntimeCore.js +8 -6
  794. package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
  795. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs +7 -6
  796. package/dist/runtimes/local/LocalThreadRuntimeCore.mjs.map +1 -1
  797. package/dist/runtimes/local/index.js +3 -1
  798. package/dist/runtimes/local/index.js.map +1 -1
  799. package/dist/runtimes/local/index.mjs +2 -1
  800. package/dist/runtimes/local/index.mjs.map +1 -1
  801. package/dist/runtimes/local/shouldContinue.js +3 -1
  802. package/dist/runtimes/local/shouldContinue.js.map +1 -1
  803. package/dist/runtimes/local/shouldContinue.mjs +2 -1
  804. package/dist/runtimes/local/shouldContinue.mjs.map +1 -1
  805. package/dist/runtimes/local/useLocalRuntime.js +9 -7
  806. package/dist/runtimes/local/useLocalRuntime.js.map +1 -1
  807. package/dist/runtimes/local/useLocalRuntime.mjs +9 -7
  808. package/dist/runtimes/local/useLocalRuntime.mjs.map +1 -1
  809. package/dist/runtimes/speech/SpeechAdapterTypes.js +2 -0
  810. package/dist/runtimes/speech/SpeechAdapterTypes.js.map +1 -1
  811. package/dist/runtimes/speech/WebSpeechSynthesisAdapter.js +4 -2
  812. package/dist/runtimes/speech/WebSpeechSynthesisAdapter.js.map +1 -1
  813. package/dist/runtimes/speech/WebSpeechSynthesisAdapter.mjs +3 -2
  814. package/dist/runtimes/speech/WebSpeechSynthesisAdapter.mjs.map +1 -1
  815. package/dist/runtimes/speech/index.js +3 -1
  816. package/dist/runtimes/speech/index.js.map +1 -1
  817. package/dist/runtimes/speech/index.mjs +2 -1
  818. package/dist/runtimes/speech/index.mjs.map +1 -1
  819. package/dist/runtimes/utils/MessageRepository.js +7 -5
  820. package/dist/runtimes/utils/MessageRepository.js.map +1 -1
  821. package/dist/runtimes/utils/MessageRepository.mjs +6 -5
  822. package/dist/runtimes/utils/MessageRepository.mjs.map +1 -1
  823. package/dist/tailwindcss/index.d.ts.map +1 -1
  824. package/dist/tailwindcss/index.js +7 -5
  825. package/dist/tailwindcss/index.js.map +1 -1
  826. package/dist/tailwindcss/index.mjs +6 -5
  827. package/dist/tailwindcss/index.mjs.map +1 -1
  828. package/dist/types/AssistantTypes.js +2 -0
  829. package/dist/types/AssistantTypes.js.map +1 -1
  830. package/dist/types/AttachmentTypes.js +2 -0
  831. package/dist/types/AttachmentTypes.js.map +1 -1
  832. package/dist/types/ContentPartComponentTypes.js +2 -0
  833. package/dist/types/ContentPartComponentTypes.js.map +1 -1
  834. package/dist/types/ModelConfigTypes.js +5 -3
  835. package/dist/types/ModelConfigTypes.js.map +1 -1
  836. package/dist/types/ModelConfigTypes.mjs +4 -3
  837. package/dist/types/ModelConfigTypes.mjs.map +1 -1
  838. package/dist/types/Unsubscribe.js +2 -0
  839. package/dist/types/Unsubscribe.js.map +1 -1
  840. package/dist/types/index.js +2 -0
  841. package/dist/types/index.js.map +1 -1
  842. package/dist/ui/assistant-action-bar.js +23 -21
  843. package/dist/ui/assistant-action-bar.js.map +1 -1
  844. package/dist/ui/assistant-action-bar.mjs +23 -21
  845. package/dist/ui/assistant-action-bar.mjs.map +1 -1
  846. package/dist/ui/assistant-message.js +16 -14
  847. package/dist/ui/assistant-message.js.map +1 -1
  848. package/dist/ui/assistant-message.mjs +16 -14
  849. package/dist/ui/assistant-message.mjs.map +1 -1
  850. package/dist/ui/assistant-modal.js +16 -14
  851. package/dist/ui/assistant-modal.js.map +1 -1
  852. package/dist/ui/assistant-modal.mjs +16 -14
  853. package/dist/ui/assistant-modal.mjs.map +1 -1
  854. package/dist/ui/attachment.js +22 -20
  855. package/dist/ui/attachment.js.map +1 -1
  856. package/dist/ui/attachment.mjs +19 -17
  857. package/dist/ui/attachment.mjs.map +1 -1
  858. package/dist/ui/base/CircleStopIcon.js +3 -1
  859. package/dist/ui/base/CircleStopIcon.js.map +1 -1
  860. package/dist/ui/base/CircleStopIcon.mjs +2 -1
  861. package/dist/ui/base/CircleStopIcon.mjs.map +1 -1
  862. package/dist/ui/base/avatar.js +8 -6
  863. package/dist/ui/base/avatar.js.map +1 -1
  864. package/dist/ui/base/avatar.mjs +8 -6
  865. package/dist/ui/base/avatar.mjs.map +1 -1
  866. package/dist/ui/base/button.js +5 -3
  867. package/dist/ui/base/button.js.map +1 -1
  868. package/dist/ui/base/button.mjs +4 -3
  869. package/dist/ui/base/button.mjs.map +1 -1
  870. package/dist/ui/base/dialog.js +9 -7
  871. package/dist/ui/base/dialog.js.map +1 -1
  872. package/dist/ui/base/dialog.mjs +9 -7
  873. package/dist/ui/base/dialog.mjs.map +1 -1
  874. package/dist/ui/base/index.js +7 -5
  875. package/dist/ui/base/index.js.map +1 -1
  876. package/dist/ui/base/index.mjs +6 -5
  877. package/dist/ui/base/index.mjs.map +1 -1
  878. package/dist/ui/base/tooltip-icon-button.js +6 -4
  879. package/dist/ui/base/tooltip-icon-button.js.map +1 -1
  880. package/dist/ui/base/tooltip-icon-button.mjs +6 -4
  881. package/dist/ui/base/tooltip-icon-button.mjs.map +1 -1
  882. package/dist/ui/base/tooltip.js +7 -5
  883. package/dist/ui/base/tooltip.js.map +1 -1
  884. package/dist/ui/base/tooltip.mjs +7 -5
  885. package/dist/ui/base/tooltip.mjs.map +1 -1
  886. package/dist/ui/branch-picker.js +16 -14
  887. package/dist/ui/branch-picker.js.map +1 -1
  888. package/dist/ui/branch-picker.mjs +16 -14
  889. package/dist/ui/branch-picker.mjs.map +1 -1
  890. package/dist/ui/composer.js +26 -24
  891. package/dist/ui/composer.js.map +1 -1
  892. package/dist/ui/composer.mjs +26 -24
  893. package/dist/ui/composer.mjs.map +1 -1
  894. package/dist/ui/content-part.js +7 -5
  895. package/dist/ui/content-part.js.map +1 -1
  896. package/dist/ui/content-part.mjs +6 -5
  897. package/dist/ui/content-part.mjs.map +1 -1
  898. package/dist/ui/edit-composer.js +14 -12
  899. package/dist/ui/edit-composer.js.map +1 -1
  900. package/dist/ui/edit-composer.mjs +14 -12
  901. package/dist/ui/edit-composer.mjs.map +1 -1
  902. package/dist/ui/index.js +15 -13
  903. package/dist/ui/index.js.map +1 -1
  904. package/dist/ui/index.mjs +14 -13
  905. package/dist/ui/index.mjs.map +1 -1
  906. package/dist/ui/thread-config.js +8 -6
  907. package/dist/ui/thread-config.js.map +1 -1
  908. package/dist/ui/thread-config.mjs +8 -6
  909. package/dist/ui/thread-config.mjs.map +1 -1
  910. package/dist/ui/thread-welcome.js +20 -18
  911. package/dist/ui/thread-welcome.js.map +1 -1
  912. package/dist/ui/thread-welcome.mjs +20 -18
  913. package/dist/ui/thread-welcome.mjs.map +1 -1
  914. package/dist/ui/thread.js +24 -22
  915. package/dist/ui/thread.js.map +1 -1
  916. package/dist/ui/thread.mjs +24 -22
  917. package/dist/ui/thread.mjs.map +1 -1
  918. package/dist/ui/user-action-bar.js +13 -11
  919. package/dist/ui/user-action-bar.js.map +1 -1
  920. package/dist/ui/user-action-bar.mjs +13 -11
  921. package/dist/ui/user-action-bar.mjs.map +1 -1
  922. package/dist/ui/user-message.js +16 -14
  923. package/dist/ui/user-message.js.map +1 -1
  924. package/dist/ui/user-message.mjs +16 -14
  925. package/dist/ui/user-message.mjs.map +1 -1
  926. package/dist/ui/utils/withDefaults.js +5 -3
  927. package/dist/ui/utils/withDefaults.js.map +1 -1
  928. package/dist/ui/utils/withDefaults.mjs +4 -3
  929. package/dist/ui/utils/withDefaults.mjs.map +1 -1
  930. package/dist/utils/ProxyConfigProvider.js +5 -3
  931. package/dist/utils/ProxyConfigProvider.js.map +1 -1
  932. package/dist/utils/ProxyConfigProvider.mjs +4 -3
  933. package/dist/utils/ProxyConfigProvider.mjs.map +1 -1
  934. package/dist/utils/RequireAtLeastOne.js +2 -0
  935. package/dist/utils/RequireAtLeastOne.js.map +1 -1
  936. package/dist/utils/combined/createCombinedStore.js +3 -1
  937. package/dist/utils/combined/createCombinedStore.js.map +1 -1
  938. package/dist/utils/combined/createCombinedStore.mjs +3 -1
  939. package/dist/utils/combined/createCombinedStore.mjs.map +1 -1
  940. package/dist/utils/combined/useCombinedStore.js +4 -2
  941. package/dist/utils/combined/useCombinedStore.js.map +1 -1
  942. package/dist/utils/combined/useCombinedStore.mjs +3 -2
  943. package/dist/utils/combined/useCombinedStore.mjs.map +1 -1
  944. package/dist/utils/createActionButton.js +4 -2
  945. package/dist/utils/createActionButton.js.map +1 -1
  946. package/dist/utils/createActionButton.mjs +4 -2
  947. package/dist/utils/createActionButton.mjs.map +1 -1
  948. package/dist/utils/getThreadMessageText.js +3 -1
  949. package/dist/utils/getThreadMessageText.js.map +1 -1
  950. package/dist/utils/getThreadMessageText.mjs +2 -1
  951. package/dist/utils/getThreadMessageText.mjs.map +1 -1
  952. package/dist/utils/hooks/useManagedRef.js +3 -1
  953. package/dist/utils/hooks/useManagedRef.js.map +1 -1
  954. package/dist/utils/hooks/useManagedRef.mjs +2 -1
  955. package/dist/utils/hooks/useManagedRef.mjs.map +1 -1
  956. package/dist/utils/hooks/useOnResizeContent.js +4 -2
  957. package/dist/utils/hooks/useOnResizeContent.js.map +1 -1
  958. package/dist/utils/hooks/useOnResizeContent.mjs +3 -2
  959. package/dist/utils/hooks/useOnResizeContent.mjs.map +1 -1
  960. package/dist/utils/hooks/useOnScrollToBottom.js +4 -2
  961. package/dist/utils/hooks/useOnScrollToBottom.js.map +1 -1
  962. package/dist/utils/hooks/useOnScrollToBottom.mjs +3 -2
  963. package/dist/utils/hooks/useOnScrollToBottom.mjs.map +1 -1
  964. package/dist/utils/idUtils.js +6 -4
  965. package/dist/utils/idUtils.js.map +1 -1
  966. package/dist/utils/idUtils.mjs +5 -4
  967. package/dist/utils/idUtils.mjs.map +1 -1
  968. package/dist/utils/smooth/SmoothContext.js +10 -8
  969. package/dist/utils/smooth/SmoothContext.js.map +1 -1
  970. package/dist/utils/smooth/SmoothContext.mjs +9 -8
  971. package/dist/utils/smooth/SmoothContext.mjs.map +1 -1
  972. package/dist/utils/smooth/index.js +5 -3
  973. package/dist/utils/smooth/index.js.map +1 -1
  974. package/dist/utils/smooth/index.mjs +4 -3
  975. package/dist/utils/smooth/index.mjs.map +1 -1
  976. package/dist/utils/smooth/useSmooth.js +9 -7
  977. package/dist/utils/smooth/useSmooth.js.map +1 -1
  978. package/dist/utils/smooth/useSmooth.mjs +9 -7
  979. package/dist/utils/smooth/useSmooth.mjs.map +1 -1
  980. package/package.json +8 -7
  981. package/src/api/AssistantRuntime.ts +20 -0
  982. package/src/api/ThreadRuntime.ts +26 -0
  983. package/src/runtimes/edge/EdgeChatAdapter.ts +14 -3
  984. package/src/tailwindcss/index.ts +4 -4
  985. package/src/ui/base/dialog.tsx +1 -1
  986. /package/{generated → dist/styles/tailwindcss}/base-components.css.json +0 -0
  987. /package/{generated → dist/styles/tailwindcss}/modal.css.json +0 -0
  988. /package/{generated → dist/styles/tailwindcss}/thread.css.json +0 -0
  989. /package/{generated → dist/styles/themes}/default.css.json +0 -0
@@ -16,12 +16,33 @@ export type ThreadRuntimeCoreBinding = SubscribableWithState<ThreadRuntimeCore,
16
16
  outerSubscribe(callback: () => void): Unsubscribe;
17
17
  };
18
18
  export type ThreadState = Readonly<{
19
+ /**
20
+ * The thread ID.
21
+ */
19
22
  threadId: string;
23
+ /**
24
+ * Whether the thread is disabled. Disabled threads cannot receive new messages.
25
+ */
20
26
  isDisabled: boolean;
27
+ /**
28
+ * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.
29
+ */
21
30
  isRunning: boolean;
31
+ /**
32
+ * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.
33
+ */
22
34
  capabilities: RuntimeCapabilities;
35
+ /**
36
+ * The messages in the currently selected branch of the thread.
37
+ */
23
38
  messages: readonly ThreadMessage[];
39
+ /**
40
+ * Follow up message suggestions to show the user.
41
+ */
24
42
  suggestions: readonly ThreadSuggestion[];
43
+ /**
44
+ * Custom extra information provided by the runtime.
45
+ */
25
46
  extras: unknown;
26
47
  /**
27
48
  * @deprecated This API is still under active development and might change without notice.
@@ -197,12 +218,33 @@ export declare class ThreadRuntimeImpl implements Omit<ThreadRuntimeCore, "getMe
197
218
  constructor(threadBinding: ThreadRuntimeCoreBinding);
198
219
  readonly composer: ThreadComposerRuntimeImpl;
199
220
  getState(): Readonly<{
221
+ /**
222
+ * The thread ID.
223
+ */
200
224
  threadId: string;
225
+ /**
226
+ * Whether the thread is disabled. Disabled threads cannot receive new messages.
227
+ */
201
228
  isDisabled: boolean;
229
+ /**
230
+ * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.
231
+ */
202
232
  isRunning: boolean;
233
+ /**
234
+ * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.
235
+ */
203
236
  capabilities: RuntimeCapabilities;
237
+ /**
238
+ * The messages in the currently selected branch of the thread.
239
+ */
204
240
  messages: readonly ThreadMessage[];
241
+ /**
242
+ * Follow up message suggestions to show the user.
243
+ */
205
244
  suggestions: readonly ThreadSuggestion[];
245
+ /**
246
+ * Custom extra information provided by the runtime.
247
+ */
206
248
  extras: unknown;
207
249
  /**
208
250
  * @deprecated This API is still under active development and might change without notice.
@@ -1 +1 @@
1
- {"version":3,"file":"ThreadRuntime.d.ts","sourceRoot":"","sources":["../../src/api/ThreadRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ThreadRuntime.d.ts","sourceRoot":"","sources":["../../src/api/ThreadRuntime.ts"],"names":[],"mappings":"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"}
@@ -16,19 +16,21 @@ 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/api/ThreadRuntime.ts
19
21
  var ThreadRuntime_exports = {};
20
22
  __export(ThreadRuntime_exports, {
21
23
  ThreadRuntimeImpl: () => ThreadRuntimeImpl,
22
24
  getThreadState: () => getThreadState
23
25
  });
24
26
  module.exports = __toCommonJS(ThreadRuntime_exports);
25
- var import_MessageRuntime = require("./MessageRuntime");
26
- var import_NestedSubscriptionSubject = require("./subscribable/NestedSubscriptionSubject");
27
- var import_ShallowMemoizeSubject = require("./subscribable/ShallowMemoizeSubject");
28
- var import_ComposerRuntime = require("./ComposerRuntime");
29
- var import_LazyMemoizeSubject = require("./subscribable/LazyMemoizeSubject");
30
- var import_SKIP_UPDATE = require("./subscribable/SKIP_UPDATE");
31
- const toAppendMessage = (messages, message) => {
27
+ var import_MessageRuntime = require("./MessageRuntime.cjs");
28
+ var import_NestedSubscriptionSubject = require("./subscribable/NestedSubscriptionSubject.cjs");
29
+ var import_ShallowMemoizeSubject = require("./subscribable/ShallowMemoizeSubject.cjs");
30
+ var import_ComposerRuntime = require("./ComposerRuntime.cjs");
31
+ var import_LazyMemoizeSubject = require("./subscribable/LazyMemoizeSubject.cjs");
32
+ var import_SKIP_UPDATE = require("./subscribable/SKIP_UPDATE.cjs");
33
+ var toAppendMessage = (messages, message) => {
32
34
  if (typeof message === "string") {
33
35
  return {
34
36
  parentId: messages.at(-1)?.id ?? null,
@@ -47,7 +49,7 @@ const toAppendMessage = (messages, message) => {
47
49
  attachments: message.attachments ?? []
48
50
  };
49
51
  };
50
- const getThreadState = (runtime) => {
52
+ var getThreadState = (runtime) => {
51
53
  const lastMessage = runtime.messages.at(-1);
52
54
  return Object.freeze({
53
55
  threadId: runtime.threadId,
@@ -60,7 +62,7 @@ const getThreadState = (runtime) => {
60
62
  speech: runtime.speech
61
63
  });
62
64
  };
63
- class ThreadRuntimeImpl {
65
+ var ThreadRuntimeImpl = class {
64
66
  get path() {
65
67
  return this._threadBinding.path;
66
68
  }
@@ -289,7 +291,7 @@ class ThreadRuntimeImpl {
289
291
  }
290
292
  return subject.subscribe(callback);
291
293
  }
292
- }
294
+ };
293
295
  // Annotate the CommonJS export names for ESM import in node:
294
296
  0 && (module.exports = {
295
297
  ThreadRuntimeImpl,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/api/ThreadRuntime.ts"],"sourcesContent":["import {\n AddToolResultOptions,\n ThreadSuggestion,\n RuntimeCapabilities,\n SubmitFeedbackOptions,\n ThreadRuntimeCore,\n SpeechState,\n SubmittedFeedback,\n ThreadRuntimeEventType,\n} from \"../runtimes/core/ThreadRuntimeCore\";\nimport { ExportedMessageRepository } from \"../runtimes/utils/MessageRepository\";\nimport {\n AppendMessage,\n ModelConfig,\n ThreadMessage,\n Unsubscribe,\n} from \"../types\";\nimport {\n MessageRuntime,\n MessageRuntimeImpl,\n MessageState,\n} from \"./MessageRuntime\";\nimport { NestedSubscriptionSubject } from \"./subscribable/NestedSubscriptionSubject\";\nimport { ShallowMemoizeSubject } from \"./subscribable/ShallowMemoizeSubject\";\nimport {\n Subscribable,\n SubscribableWithState,\n} from \"./subscribable/Subscribable\";\nimport {\n ThreadComposerRuntime,\n ThreadComposerRuntimeImpl,\n} from \"./ComposerRuntime\";\nimport { LazyMemoizeSubject } from \"./subscribable/LazyMemoizeSubject\";\nimport { SKIP_UPDATE } from \"./subscribable/SKIP_UPDATE\";\nimport { ComposerRuntimeCore } from \"../runtimes/core/ComposerRuntimeCore\";\nimport { MessageRuntimePath, ThreadRuntimePath } from \"./RuntimePathTypes\";\n\nexport type CreateAppendMessage =\n | string\n | {\n parentId?: string | null | undefined;\n role?: AppendMessage[\"role\"] | undefined;\n content: AppendMessage[\"content\"];\n attachments?: AppendMessage[\"attachments\"] | undefined;\n };\n\nconst toAppendMessage = (\n messages: readonly ThreadMessage[],\n message: CreateAppendMessage,\n): AppendMessage => {\n if (typeof message === \"string\") {\n return {\n parentId: messages.at(-1)?.id ?? null,\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n };\n }\n\n if (message.role && message.parentId && message.attachments) {\n return message as AppendMessage;\n }\n\n return {\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n role: message.role ?? \"user\",\n content: message.content,\n attachments: message.attachments ?? [],\n } as AppendMessage;\n};\n\nexport type ThreadRuntimeCoreBinding = SubscribableWithState<\n ThreadRuntimeCore,\n ThreadRuntimePath\n> & {\n outerSubscribe(callback: () => void): Unsubscribe;\n};\n\nexport type ThreadState = Readonly<{\n threadId: string;\n isDisabled: boolean;\n isRunning: boolean;\n capabilities: RuntimeCapabilities;\n messages: readonly ThreadMessage[];\n suggestions: readonly ThreadSuggestion[];\n extras: unknown;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n speech: SpeechState | undefined;\n}>;\n\nexport const getThreadState = (runtime: ThreadRuntimeCore): ThreadState => {\n const lastMessage = runtime.messages.at(-1);\n return Object.freeze({\n threadId: runtime.threadId,\n capabilities: runtime.capabilities,\n isDisabled: runtime.isDisabled,\n isRunning:\n lastMessage?.role !== \"assistant\"\n ? false\n : lastMessage.status.type === \"running\",\n messages: runtime.messages,\n suggestions: runtime.suggestions,\n extras: runtime.extras,\n speech: runtime.speech,\n });\n};\n\nexport type ThreadRuntime = Readonly<{\n readonly path: ThreadRuntimePath;\n\n readonly composer: ThreadComposerRuntime;\n getState(): ThreadState;\n\n /**\n * @deprecated This method will be removed in 0.6.0. Submit feedback if you need this functionality.\n */\n unstable_getCore(): ThreadRuntimeCore;\n\n append(message: CreateAppendMessage): void;\n startRun(parentId: string | null): void;\n subscribe(callback: () => void): Unsubscribe;\n cancelRun(): void;\n getModelConfig(): ModelConfig;\n export(): ExportedMessageRepository;\n import(repository: ExportedMessageRepository): void;\n getMesssageByIndex(idx: number): MessageRuntime;\n getMesssageById(messageId: string): MessageRuntime;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n stopSpeaking: () => void;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n\n // Legacy methods with deprecations\n\n /**\n * @deprecated Use `getState().capabilities` instead. This will be removed in 0.6.0.\n */\n capabilities: Readonly<RuntimeCapabilities>;\n\n /**\n * @deprecated Use `getState().threadId` instead. This will be removed in 0.6.0.\n */\n threadId: string;\n\n /**\n * @deprecated Use `getState().isDisabled` instead. This will be removed in 0.6.0.\n */\n isDisabled: boolean;\n\n /**\n * @deprecated Use `getState().isRunning` instead. This will be removed in 0.6.0.\n */\n isRunning: boolean;\n\n /**\n * @deprecated Use `getState().messages` instead. This will be removed in 0.6.0.\n */\n messages: readonly ThreadMessage[];\n\n /**\n * @deprecated Use `getState().followupSuggestions` instead. This will be removed in 0.6.0.\n */\n suggestions: readonly ThreadSuggestion[];\n\n /**\n * @deprecated Use `getState().speechState` instead. This will be removed in 0.6.0.\n */\n speech: SpeechState | undefined;\n\n /**\n * @deprecated Use `getState().extras` instead. This will be removed in 0.6.0.\n */\n extras: unknown;\n\n /**\n * @deprecated Use `getMesssageById(id).getState().branchNumber` / `getMesssageById(id).getState().branchCount` instead. This will be removed in 0.6.0.\n */\n getBranches: (messageId: string) => readonly string[];\n\n /**\n * @deprecated Use `getMesssageById(id).switchToBranch({ options })` instead. This will be removed in 0.6.0.\n */\n switchToBranch: (branchId: string) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).getContentPartByToolCallId(toolCallId).addToolResult({ result })` instead. This will be removed in 0.6.0.\n */\n addToolResult: (options: AddToolResultOptions) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).speak()` instead. This will be removed in 0.6.0.\n */\n speak: (messageId: string) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).getState().submittedFeedback` instead. This will be removed in 0.6.0.\n */\n getSubmittedFeedback: (messageId: string) => SubmittedFeedback | undefined;\n\n /**\n * @deprecated Use `getMesssageById(id).submitFeedback({ type })` instead. This will be removed in 0.6.0.\n */\n submitFeedback: (feedback: SubmitFeedbackOptions) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).composer` instead. This will be removed in 0.6.0.\n */\n getEditComposer: (messageId: string) => ComposerRuntimeCore | undefined;\n\n /**\n * @deprecated Use `getMesssageById(id).composer.beginEdit()` instead. This will be removed in 0.6.0.\n */\n beginEdit: (messageId: string) => void;\n}>;\n\nexport class ThreadRuntimeImpl\n implements Omit<ThreadRuntimeCore, \"getMessageById\">, ThreadRuntime\n{\n public get path() {\n return this._threadBinding.path;\n }\n\n /**\n * @deprecated Use `getState().threadId` instead. This will be removed in 0.6.0.\n */\n public get threadId() {\n return this.getState().threadId;\n }\n\n /**\n * @deprecated Use `getState().isDisabled` instead. This will be removed in 0.6.0.\n */\n public get isDisabled() {\n return this.getState().isDisabled;\n }\n\n /**\n * @deprecated Use `getState().isRunning` instead. This will be removed in 0.6.0.\n */\n public get isRunning() {\n return this.getState().isRunning;\n }\n\n /**\n * @deprecated Use `getState().capabilities` instead. This will be removed in 0.6.0.\n */\n public get capabilities() {\n return this.getState().capabilities;\n }\n\n /**\n * @deprecated Use `getState().extras` instead. This will be removed in 0.6.0.\n */\n public get extras() {\n return this._threadBinding.getState().extras;\n }\n\n /**\n * @deprecated Use `getState().followupSuggestions` instead. This will be removed in 0.6.0.\n */\n public get suggestions() {\n return this._threadBinding.getState().suggestions;\n }\n\n /**\n * @deprecated Use `getState().messages` instead. This will be removed in 0.6.0.\n */\n public get messages() {\n return this._threadBinding.getState().messages;\n }\n\n /**\n * @deprecated Use `getState().speechState` instead. This will be removed in 0.6.0.\n */\n public get speech() {\n return this._threadBinding.getState().speech;\n }\n\n public unstable_getCore() {\n return this._threadBinding.getState();\n }\n\n private _threadBinding: ThreadRuntimeCoreBinding & {\n getStateState(): ThreadState;\n };\n\n constructor(threadBinding: ThreadRuntimeCoreBinding) {\n const stateBinding = new LazyMemoizeSubject({\n path: threadBinding.path,\n getState: () => getThreadState(threadBinding.getState()),\n subscribe: (callback) => threadBinding.subscribe(callback),\n });\n\n this._threadBinding = {\n path: threadBinding.path,\n getState: () => threadBinding.getState(),\n getStateState: () => stateBinding.getState(),\n outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),\n subscribe: (callback) => threadBinding.subscribe(callback),\n };\n\n this.composer = new ThreadComposerRuntimeImpl(\n new NestedSubscriptionSubject({\n path: {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.composer`,\n composerSource: \"thread\",\n },\n getState: () => this._threadBinding.getState().composer,\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n );\n }\n\n public readonly composer;\n\n public getState() {\n return this._threadBinding.getStateState();\n }\n\n public append(message: CreateAppendMessage) {\n this._threadBinding\n .getState()\n .append(\n toAppendMessage(this._threadBinding.getState().messages, message),\n );\n }\n\n public subscribe(callback: () => void) {\n return this._threadBinding.subscribe(callback);\n }\n\n /**\n * @derprecated Use `getMesssageById(id).getState().branchNumber` / `getMesssageById(id).getState().branchCount` instead. This will be removed in 0.6.0.\n */\n public getBranches(messageId: string) {\n return this._threadBinding.getState().getBranches(messageId);\n }\n\n public getModelConfig() {\n return this._threadBinding.getState().getModelConfig();\n }\n\n // TODO sometimes you want to continue when there is no child message\n public startRun(parentId: string | null) {\n return this._threadBinding.getState().startRun(parentId);\n }\n\n public cancelRun() {\n this._threadBinding.getState().cancelRun();\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getContentPartByToolCallId(toolCallId).addToolResult({ result })` instead. This will be removed in 0.6.0.\n */\n public addToolResult(options: AddToolResultOptions) {\n this._threadBinding.getState().addToolResult(options);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).switchToBranch({ options })` instead. This will be removed in 0.6.0.\n */\n public switchToBranch(branchId: string) {\n return this._threadBinding.getState().switchToBranch(branchId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).speak()` instead. This will be removed in 0.6.0.\n */\n public speak(messageId: string) {\n return this._threadBinding.getState().speak(messageId);\n }\n\n public stopSpeaking() {\n return this._threadBinding.getState().stopSpeaking();\n }\n\n public getSubmittedFeedback(messageId: string) {\n return this._threadBinding.getState().getSubmittedFeedback(messageId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).submitFeedback({ type })` instead. This will be removed in 0.6.0.\n */\n public submitFeedback(options: SubmitFeedbackOptions) {\n return this._threadBinding.getState().submitFeedback(options);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getMessageByIndex(idx).composer` instead. This will be removed in 0.6.0.\n */\n public getEditComposer(messageId: string) {\n return this._threadBinding.getState().getEditComposer(messageId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getMessageByIndex(idx).composer.beginEdit()` instead. This will be removed in 0.6.0.\n */\n public beginEdit(messageId: string) {\n return this._threadBinding.getState().beginEdit(messageId);\n }\n\n public export() {\n return this._threadBinding.getState().export();\n }\n\n public import(data: ExportedMessageRepository) {\n this._threadBinding.getState().import(data);\n }\n\n public getMesssageByIndex(idx: number) {\n if (idx < 0) throw new Error(\"Message index must be >= 0\");\n\n return this._getMessageRuntime(\n {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,\n messageSelector: { type: \"index\", index: idx },\n },\n () => {\n const messages = this._threadBinding.getState().messages;\n const message = messages[idx];\n if (!message) return undefined;\n return {\n message,\n parentId: messages[idx - 1]?.id ?? null,\n };\n },\n );\n }\n\n public getMesssageById(messageId: string) {\n return this._getMessageRuntime(\n {\n ...this.path,\n ref:\n this.path.ref +\n `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,\n messageSelector: { type: \"messageId\", messageId: messageId },\n },\n () => this._threadBinding.getState().getMessageById(messageId),\n );\n }\n\n private _getMessageRuntime(\n path: MessageRuntimePath,\n callback: () =>\n | { parentId: string | null; message: ThreadMessage }\n | undefined,\n ) {\n return new MessageRuntimeImpl(\n new ShallowMemoizeSubject({\n path,\n getState: () => {\n const { message, parentId } = callback() ?? {};\n\n const { messages, speech: speechState } =\n this._threadBinding.getState();\n\n if (!message || parentId === undefined) return SKIP_UPDATE;\n\n const thread = this._threadBinding.getState();\n\n const branches = thread.getBranches(message.id);\n const submittedFeedback = thread.getSubmittedFeedback(message.id);\n\n return {\n ...message,\n\n message,\n isLast: messages.at(-1)?.id === message.id,\n parentId,\n\n branches,\n branchNumber: branches.indexOf(message.id) + 1,\n branchCount: branches.length,\n\n speech:\n speechState?.messageId === message.id ? speechState : undefined,\n\n submittedFeedback,\n } satisfies MessageState;\n },\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n this._threadBinding,\n );\n }\n\n private _eventListenerNestedSubscriptions = new Map<\n string,\n NestedSubscriptionSubject<Subscribable, ThreadRuntimePath>\n >();\n\n public unstable_on(\n event: ThreadRuntimeEventType,\n callback: () => void,\n ): Unsubscribe {\n let subject = this._eventListenerNestedSubscriptions.get(event);\n if (!subject) {\n subject = new NestedSubscriptionSubject({\n path: this.path,\n getState: () => ({\n subscribe: (callback) =>\n this._threadBinding.getState().unstable_on(event, callback),\n }),\n subscribe: (callback) => this._threadBinding.outerSubscribe(callback),\n });\n this._eventListenerNestedSubscriptions.set(event, subject);\n }\n return subject.subscribe(callback);\n }\n}\n"],"mappings":"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","names":["callback"]}
1
+ {"version":3,"sources":["../../src/api/ThreadRuntime.ts"],"sourcesContent":["import {\n AddToolResultOptions,\n ThreadSuggestion,\n RuntimeCapabilities,\n SubmitFeedbackOptions,\n ThreadRuntimeCore,\n SpeechState,\n SubmittedFeedback,\n ThreadRuntimeEventType,\n} from \"../runtimes/core/ThreadRuntimeCore\";\nimport { ExportedMessageRepository } from \"../runtimes/utils/MessageRepository\";\nimport {\n AppendMessage,\n ModelConfig,\n ThreadMessage,\n Unsubscribe,\n} from \"../types\";\nimport {\n MessageRuntime,\n MessageRuntimeImpl,\n MessageState,\n} from \"./MessageRuntime\";\nimport { NestedSubscriptionSubject } from \"./subscribable/NestedSubscriptionSubject\";\nimport { ShallowMemoizeSubject } from \"./subscribable/ShallowMemoizeSubject\";\nimport {\n Subscribable,\n SubscribableWithState,\n} from \"./subscribable/Subscribable\";\nimport {\n ThreadComposerRuntime,\n ThreadComposerRuntimeImpl,\n} from \"./ComposerRuntime\";\nimport { LazyMemoizeSubject } from \"./subscribable/LazyMemoizeSubject\";\nimport { SKIP_UPDATE } from \"./subscribable/SKIP_UPDATE\";\nimport { ComposerRuntimeCore } from \"../runtimes/core/ComposerRuntimeCore\";\nimport { MessageRuntimePath, ThreadRuntimePath } from \"./RuntimePathTypes\";\n\nexport type CreateAppendMessage =\n | string\n | {\n parentId?: string | null | undefined;\n role?: AppendMessage[\"role\"] | undefined;\n content: AppendMessage[\"content\"];\n attachments?: AppendMessage[\"attachments\"] | undefined;\n };\n\nconst toAppendMessage = (\n messages: readonly ThreadMessage[],\n message: CreateAppendMessage,\n): AppendMessage => {\n if (typeof message === \"string\") {\n return {\n parentId: messages.at(-1)?.id ?? null,\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n };\n }\n\n if (message.role && message.parentId && message.attachments) {\n return message as AppendMessage;\n }\n\n return {\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n role: message.role ?? \"user\",\n content: message.content,\n attachments: message.attachments ?? [],\n } as AppendMessage;\n};\n\nexport type ThreadRuntimeCoreBinding = SubscribableWithState<\n ThreadRuntimeCore,\n ThreadRuntimePath\n> & {\n outerSubscribe(callback: () => void): Unsubscribe;\n};\n\nexport type ThreadState = Readonly<{\n /**\n * The thread ID.\n */\n threadId: string;\n /**\n * Whether the thread is disabled. Disabled threads cannot receive new messages.\n */\n isDisabled: boolean;\n\n /**\n * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.\n */\n isRunning: boolean;\n\n /**\n * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.\n */\n capabilities: RuntimeCapabilities;\n\n /**\n * The messages in the currently selected branch of the thread.\n */\n messages: readonly ThreadMessage[];\n\n /**\n * Follow up message suggestions to show the user.\n */\n suggestions: readonly ThreadSuggestion[];\n\n /**\n * Custom extra information provided by the runtime.\n */\n extras: unknown;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n speech: SpeechState | undefined;\n}>;\n\nexport const getThreadState = (runtime: ThreadRuntimeCore): ThreadState => {\n const lastMessage = runtime.messages.at(-1);\n return Object.freeze({\n threadId: runtime.threadId,\n capabilities: runtime.capabilities,\n isDisabled: runtime.isDisabled,\n isRunning:\n lastMessage?.role !== \"assistant\"\n ? false\n : lastMessage.status.type === \"running\",\n messages: runtime.messages,\n suggestions: runtime.suggestions,\n extras: runtime.extras,\n speech: runtime.speech,\n });\n};\n\nexport type ThreadRuntime = Readonly<{\n readonly path: ThreadRuntimePath;\n\n readonly composer: ThreadComposerRuntime;\n getState(): ThreadState;\n\n /**\n * @deprecated This method will be removed in 0.6.0. Submit feedback if you need this functionality.\n */\n unstable_getCore(): ThreadRuntimeCore;\n\n append(message: CreateAppendMessage): void;\n startRun(parentId: string | null): void;\n subscribe(callback: () => void): Unsubscribe;\n cancelRun(): void;\n getModelConfig(): ModelConfig;\n export(): ExportedMessageRepository;\n import(repository: ExportedMessageRepository): void;\n getMesssageByIndex(idx: number): MessageRuntime;\n getMesssageById(messageId: string): MessageRuntime;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n stopSpeaking: () => void;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n\n // Legacy methods with deprecations\n\n /**\n * @deprecated Use `getState().capabilities` instead. This will be removed in 0.6.0.\n */\n capabilities: Readonly<RuntimeCapabilities>;\n\n /**\n * @deprecated Use `getState().threadId` instead. This will be removed in 0.6.0.\n */\n threadId: string;\n\n /**\n * @deprecated Use `getState().isDisabled` instead. This will be removed in 0.6.0.\n */\n isDisabled: boolean;\n\n /**\n * @deprecated Use `getState().isRunning` instead. This will be removed in 0.6.0.\n */\n isRunning: boolean;\n\n /**\n * @deprecated Use `getState().messages` instead. This will be removed in 0.6.0.\n */\n messages: readonly ThreadMessage[];\n\n /**\n * @deprecated Use `getState().followupSuggestions` instead. This will be removed in 0.6.0.\n */\n suggestions: readonly ThreadSuggestion[];\n\n /**\n * @deprecated Use `getState().speechState` instead. This will be removed in 0.6.0.\n */\n speech: SpeechState | undefined;\n\n /**\n * @deprecated Use `getState().extras` instead. This will be removed in 0.6.0.\n */\n extras: unknown;\n\n /**\n * @deprecated Use `getMesssageById(id).getState().branchNumber` / `getMesssageById(id).getState().branchCount` instead. This will be removed in 0.6.0.\n */\n getBranches: (messageId: string) => readonly string[];\n\n /**\n * @deprecated Use `getMesssageById(id).switchToBranch({ options })` instead. This will be removed in 0.6.0.\n */\n switchToBranch: (branchId: string) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).getContentPartByToolCallId(toolCallId).addToolResult({ result })` instead. This will be removed in 0.6.0.\n */\n addToolResult: (options: AddToolResultOptions) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).speak()` instead. This will be removed in 0.6.0.\n */\n speak: (messageId: string) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).getState().submittedFeedback` instead. This will be removed in 0.6.0.\n */\n getSubmittedFeedback: (messageId: string) => SubmittedFeedback | undefined;\n\n /**\n * @deprecated Use `getMesssageById(id).submitFeedback({ type })` instead. This will be removed in 0.6.0.\n */\n submitFeedback: (feedback: SubmitFeedbackOptions) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).composer` instead. This will be removed in 0.6.0.\n */\n getEditComposer: (messageId: string) => ComposerRuntimeCore | undefined;\n\n /**\n * @deprecated Use `getMesssageById(id).composer.beginEdit()` instead. This will be removed in 0.6.0.\n */\n beginEdit: (messageId: string) => void;\n}>;\n\nexport class ThreadRuntimeImpl\n implements Omit<ThreadRuntimeCore, \"getMessageById\">, ThreadRuntime\n{\n public get path() {\n return this._threadBinding.path;\n }\n\n /**\n * @deprecated Use `getState().threadId` instead. This will be removed in 0.6.0.\n */\n public get threadId() {\n return this.getState().threadId;\n }\n\n /**\n * @deprecated Use `getState().isDisabled` instead. This will be removed in 0.6.0.\n */\n public get isDisabled() {\n return this.getState().isDisabled;\n }\n\n /**\n * @deprecated Use `getState().isRunning` instead. This will be removed in 0.6.0.\n */\n public get isRunning() {\n return this.getState().isRunning;\n }\n\n /**\n * @deprecated Use `getState().capabilities` instead. This will be removed in 0.6.0.\n */\n public get capabilities() {\n return this.getState().capabilities;\n }\n\n /**\n * @deprecated Use `getState().extras` instead. This will be removed in 0.6.0.\n */\n public get extras() {\n return this._threadBinding.getState().extras;\n }\n\n /**\n * @deprecated Use `getState().followupSuggestions` instead. This will be removed in 0.6.0.\n */\n public get suggestions() {\n return this._threadBinding.getState().suggestions;\n }\n\n /**\n * @deprecated Use `getState().messages` instead. This will be removed in 0.6.0.\n */\n public get messages() {\n return this._threadBinding.getState().messages;\n }\n\n /**\n * @deprecated Use `getState().speechState` instead. This will be removed in 0.6.0.\n */\n public get speech() {\n return this._threadBinding.getState().speech;\n }\n\n public unstable_getCore() {\n return this._threadBinding.getState();\n }\n\n private _threadBinding: ThreadRuntimeCoreBinding & {\n getStateState(): ThreadState;\n };\n\n constructor(threadBinding: ThreadRuntimeCoreBinding) {\n const stateBinding = new LazyMemoizeSubject({\n path: threadBinding.path,\n getState: () => getThreadState(threadBinding.getState()),\n subscribe: (callback) => threadBinding.subscribe(callback),\n });\n\n this._threadBinding = {\n path: threadBinding.path,\n getState: () => threadBinding.getState(),\n getStateState: () => stateBinding.getState(),\n outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),\n subscribe: (callback) => threadBinding.subscribe(callback),\n };\n\n this.composer = new ThreadComposerRuntimeImpl(\n new NestedSubscriptionSubject({\n path: {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.composer`,\n composerSource: \"thread\",\n },\n getState: () => this._threadBinding.getState().composer,\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n );\n }\n\n public readonly composer;\n\n public getState() {\n return this._threadBinding.getStateState();\n }\n\n public append(message: CreateAppendMessage) {\n this._threadBinding\n .getState()\n .append(\n toAppendMessage(this._threadBinding.getState().messages, message),\n );\n }\n\n public subscribe(callback: () => void) {\n return this._threadBinding.subscribe(callback);\n }\n\n /**\n * @derprecated Use `getMesssageById(id).getState().branchNumber` / `getMesssageById(id).getState().branchCount` instead. This will be removed in 0.6.0.\n */\n public getBranches(messageId: string) {\n return this._threadBinding.getState().getBranches(messageId);\n }\n\n public getModelConfig() {\n return this._threadBinding.getState().getModelConfig();\n }\n\n // TODO sometimes you want to continue when there is no child message\n public startRun(parentId: string | null) {\n return this._threadBinding.getState().startRun(parentId);\n }\n\n public cancelRun() {\n this._threadBinding.getState().cancelRun();\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getContentPartByToolCallId(toolCallId).addToolResult({ result })` instead. This will be removed in 0.6.0.\n */\n public addToolResult(options: AddToolResultOptions) {\n this._threadBinding.getState().addToolResult(options);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).switchToBranch({ options })` instead. This will be removed in 0.6.0.\n */\n public switchToBranch(branchId: string) {\n return this._threadBinding.getState().switchToBranch(branchId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).speak()` instead. This will be removed in 0.6.0.\n */\n public speak(messageId: string) {\n return this._threadBinding.getState().speak(messageId);\n }\n\n public stopSpeaking() {\n return this._threadBinding.getState().stopSpeaking();\n }\n\n public getSubmittedFeedback(messageId: string) {\n return this._threadBinding.getState().getSubmittedFeedback(messageId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).submitFeedback({ type })` instead. This will be removed in 0.6.0.\n */\n public submitFeedback(options: SubmitFeedbackOptions) {\n return this._threadBinding.getState().submitFeedback(options);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getMessageByIndex(idx).composer` instead. This will be removed in 0.6.0.\n */\n public getEditComposer(messageId: string) {\n return this._threadBinding.getState().getEditComposer(messageId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getMessageByIndex(idx).composer.beginEdit()` instead. This will be removed in 0.6.0.\n */\n public beginEdit(messageId: string) {\n return this._threadBinding.getState().beginEdit(messageId);\n }\n\n public export() {\n return this._threadBinding.getState().export();\n }\n\n public import(data: ExportedMessageRepository) {\n this._threadBinding.getState().import(data);\n }\n\n public getMesssageByIndex(idx: number) {\n if (idx < 0) throw new Error(\"Message index must be >= 0\");\n\n return this._getMessageRuntime(\n {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,\n messageSelector: { type: \"index\", index: idx },\n },\n () => {\n const messages = this._threadBinding.getState().messages;\n const message = messages[idx];\n if (!message) return undefined;\n return {\n message,\n parentId: messages[idx - 1]?.id ?? null,\n };\n },\n );\n }\n\n public getMesssageById(messageId: string) {\n return this._getMessageRuntime(\n {\n ...this.path,\n ref:\n this.path.ref +\n `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,\n messageSelector: { type: \"messageId\", messageId: messageId },\n },\n () => this._threadBinding.getState().getMessageById(messageId),\n );\n }\n\n private _getMessageRuntime(\n path: MessageRuntimePath,\n callback: () =>\n | { parentId: string | null; message: ThreadMessage }\n | undefined,\n ) {\n return new MessageRuntimeImpl(\n new ShallowMemoizeSubject({\n path,\n getState: () => {\n const { message, parentId } = callback() ?? {};\n\n const { messages, speech: speechState } =\n this._threadBinding.getState();\n\n if (!message || parentId === undefined) return SKIP_UPDATE;\n\n const thread = this._threadBinding.getState();\n\n const branches = thread.getBranches(message.id);\n const submittedFeedback = thread.getSubmittedFeedback(message.id);\n\n return {\n ...message,\n\n message,\n isLast: messages.at(-1)?.id === message.id,\n parentId,\n\n branches,\n branchNumber: branches.indexOf(message.id) + 1,\n branchCount: branches.length,\n\n speech:\n speechState?.messageId === message.id ? speechState : undefined,\n\n submittedFeedback,\n } satisfies MessageState;\n },\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n this._threadBinding,\n );\n }\n\n private _eventListenerNestedSubscriptions = new Map<\n string,\n NestedSubscriptionSubject<Subscribable, ThreadRuntimePath>\n >();\n\n public unstable_on(\n event: ThreadRuntimeEventType,\n callback: () => void,\n ): Unsubscribe {\n let subject = this._eventListenerNestedSubscriptions.get(event);\n if (!subject) {\n subject = new NestedSubscriptionSubject({\n path: this.path,\n getState: () => ({\n subscribe: (callback) =>\n this._threadBinding.getState().unstable_on(event, callback),\n }),\n subscribe: (callback) => this._threadBinding.outerSubscribe(callback),\n });\n this._eventListenerNestedSubscriptions.set(event, subject);\n }\n return subject.subscribe(callback);\n }\n}\n"],"mappings":"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","names":["callback"]}
@@ -1,14 +1,15 @@
1
+ // src/api/ThreadRuntime.ts
1
2
  import {
2
3
  MessageRuntimeImpl
3
- } from "./MessageRuntime";
4
- import { NestedSubscriptionSubject } from "./subscribable/NestedSubscriptionSubject";
5
- import { ShallowMemoizeSubject } from "./subscribable/ShallowMemoizeSubject";
4
+ } from "./MessageRuntime.mjs";
5
+ import { NestedSubscriptionSubject } from "./subscribable/NestedSubscriptionSubject.mjs";
6
+ import { ShallowMemoizeSubject } from "./subscribable/ShallowMemoizeSubject.mjs";
6
7
  import {
7
8
  ThreadComposerRuntimeImpl
8
- } from "./ComposerRuntime";
9
- import { LazyMemoizeSubject } from "./subscribable/LazyMemoizeSubject";
10
- import { SKIP_UPDATE } from "./subscribable/SKIP_UPDATE";
11
- const toAppendMessage = (messages, message) => {
9
+ } from "./ComposerRuntime.mjs";
10
+ import { LazyMemoizeSubject } from "./subscribable/LazyMemoizeSubject.mjs";
11
+ import { SKIP_UPDATE } from "./subscribable/SKIP_UPDATE.mjs";
12
+ var toAppendMessage = (messages, message) => {
12
13
  if (typeof message === "string") {
13
14
  return {
14
15
  parentId: messages.at(-1)?.id ?? null,
@@ -27,7 +28,7 @@ const toAppendMessage = (messages, message) => {
27
28
  attachments: message.attachments ?? []
28
29
  };
29
30
  };
30
- const getThreadState = (runtime) => {
31
+ var getThreadState = (runtime) => {
31
32
  const lastMessage = runtime.messages.at(-1);
32
33
  return Object.freeze({
33
34
  threadId: runtime.threadId,
@@ -40,7 +41,7 @@ const getThreadState = (runtime) => {
40
41
  speech: runtime.speech
41
42
  });
42
43
  };
43
- class ThreadRuntimeImpl {
44
+ var ThreadRuntimeImpl = class {
44
45
  get path() {
45
46
  return this._threadBinding.path;
46
47
  }
@@ -269,7 +270,7 @@ class ThreadRuntimeImpl {
269
270
  }
270
271
  return subject.subscribe(callback);
271
272
  }
272
- }
273
+ };
273
274
  export {
274
275
  ThreadRuntimeImpl,
275
276
  getThreadState
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/api/ThreadRuntime.ts"],"sourcesContent":["import {\n AddToolResultOptions,\n ThreadSuggestion,\n RuntimeCapabilities,\n SubmitFeedbackOptions,\n ThreadRuntimeCore,\n SpeechState,\n SubmittedFeedback,\n ThreadRuntimeEventType,\n} from \"../runtimes/core/ThreadRuntimeCore\";\nimport { ExportedMessageRepository } from \"../runtimes/utils/MessageRepository\";\nimport {\n AppendMessage,\n ModelConfig,\n ThreadMessage,\n Unsubscribe,\n} from \"../types\";\nimport {\n MessageRuntime,\n MessageRuntimeImpl,\n MessageState,\n} from \"./MessageRuntime\";\nimport { NestedSubscriptionSubject } from \"./subscribable/NestedSubscriptionSubject\";\nimport { ShallowMemoizeSubject } from \"./subscribable/ShallowMemoizeSubject\";\nimport {\n Subscribable,\n SubscribableWithState,\n} from \"./subscribable/Subscribable\";\nimport {\n ThreadComposerRuntime,\n ThreadComposerRuntimeImpl,\n} from \"./ComposerRuntime\";\nimport { LazyMemoizeSubject } from \"./subscribable/LazyMemoizeSubject\";\nimport { SKIP_UPDATE } from \"./subscribable/SKIP_UPDATE\";\nimport { ComposerRuntimeCore } from \"../runtimes/core/ComposerRuntimeCore\";\nimport { MessageRuntimePath, ThreadRuntimePath } from \"./RuntimePathTypes\";\n\nexport type CreateAppendMessage =\n | string\n | {\n parentId?: string | null | undefined;\n role?: AppendMessage[\"role\"] | undefined;\n content: AppendMessage[\"content\"];\n attachments?: AppendMessage[\"attachments\"] | undefined;\n };\n\nconst toAppendMessage = (\n messages: readonly ThreadMessage[],\n message: CreateAppendMessage,\n): AppendMessage => {\n if (typeof message === \"string\") {\n return {\n parentId: messages.at(-1)?.id ?? null,\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n };\n }\n\n if (message.role && message.parentId && message.attachments) {\n return message as AppendMessage;\n }\n\n return {\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n role: message.role ?? \"user\",\n content: message.content,\n attachments: message.attachments ?? [],\n } as AppendMessage;\n};\n\nexport type ThreadRuntimeCoreBinding = SubscribableWithState<\n ThreadRuntimeCore,\n ThreadRuntimePath\n> & {\n outerSubscribe(callback: () => void): Unsubscribe;\n};\n\nexport type ThreadState = Readonly<{\n threadId: string;\n isDisabled: boolean;\n isRunning: boolean;\n capabilities: RuntimeCapabilities;\n messages: readonly ThreadMessage[];\n suggestions: readonly ThreadSuggestion[];\n extras: unknown;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n speech: SpeechState | undefined;\n}>;\n\nexport const getThreadState = (runtime: ThreadRuntimeCore): ThreadState => {\n const lastMessage = runtime.messages.at(-1);\n return Object.freeze({\n threadId: runtime.threadId,\n capabilities: runtime.capabilities,\n isDisabled: runtime.isDisabled,\n isRunning:\n lastMessage?.role !== \"assistant\"\n ? false\n : lastMessage.status.type === \"running\",\n messages: runtime.messages,\n suggestions: runtime.suggestions,\n extras: runtime.extras,\n speech: runtime.speech,\n });\n};\n\nexport type ThreadRuntime = Readonly<{\n readonly path: ThreadRuntimePath;\n\n readonly composer: ThreadComposerRuntime;\n getState(): ThreadState;\n\n /**\n * @deprecated This method will be removed in 0.6.0. Submit feedback if you need this functionality.\n */\n unstable_getCore(): ThreadRuntimeCore;\n\n append(message: CreateAppendMessage): void;\n startRun(parentId: string | null): void;\n subscribe(callback: () => void): Unsubscribe;\n cancelRun(): void;\n getModelConfig(): ModelConfig;\n export(): ExportedMessageRepository;\n import(repository: ExportedMessageRepository): void;\n getMesssageByIndex(idx: number): MessageRuntime;\n getMesssageById(messageId: string): MessageRuntime;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n stopSpeaking: () => void;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n\n // Legacy methods with deprecations\n\n /**\n * @deprecated Use `getState().capabilities` instead. This will be removed in 0.6.0.\n */\n capabilities: Readonly<RuntimeCapabilities>;\n\n /**\n * @deprecated Use `getState().threadId` instead. This will be removed in 0.6.0.\n */\n threadId: string;\n\n /**\n * @deprecated Use `getState().isDisabled` instead. This will be removed in 0.6.0.\n */\n isDisabled: boolean;\n\n /**\n * @deprecated Use `getState().isRunning` instead. This will be removed in 0.6.0.\n */\n isRunning: boolean;\n\n /**\n * @deprecated Use `getState().messages` instead. This will be removed in 0.6.0.\n */\n messages: readonly ThreadMessage[];\n\n /**\n * @deprecated Use `getState().followupSuggestions` instead. This will be removed in 0.6.0.\n */\n suggestions: readonly ThreadSuggestion[];\n\n /**\n * @deprecated Use `getState().speechState` instead. This will be removed in 0.6.0.\n */\n speech: SpeechState | undefined;\n\n /**\n * @deprecated Use `getState().extras` instead. This will be removed in 0.6.0.\n */\n extras: unknown;\n\n /**\n * @deprecated Use `getMesssageById(id).getState().branchNumber` / `getMesssageById(id).getState().branchCount` instead. This will be removed in 0.6.0.\n */\n getBranches: (messageId: string) => readonly string[];\n\n /**\n * @deprecated Use `getMesssageById(id).switchToBranch({ options })` instead. This will be removed in 0.6.0.\n */\n switchToBranch: (branchId: string) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).getContentPartByToolCallId(toolCallId).addToolResult({ result })` instead. This will be removed in 0.6.0.\n */\n addToolResult: (options: AddToolResultOptions) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).speak()` instead. This will be removed in 0.6.0.\n */\n speak: (messageId: string) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).getState().submittedFeedback` instead. This will be removed in 0.6.0.\n */\n getSubmittedFeedback: (messageId: string) => SubmittedFeedback | undefined;\n\n /**\n * @deprecated Use `getMesssageById(id).submitFeedback({ type })` instead. This will be removed in 0.6.0.\n */\n submitFeedback: (feedback: SubmitFeedbackOptions) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).composer` instead. This will be removed in 0.6.0.\n */\n getEditComposer: (messageId: string) => ComposerRuntimeCore | undefined;\n\n /**\n * @deprecated Use `getMesssageById(id).composer.beginEdit()` instead. This will be removed in 0.6.0.\n */\n beginEdit: (messageId: string) => void;\n}>;\n\nexport class ThreadRuntimeImpl\n implements Omit<ThreadRuntimeCore, \"getMessageById\">, ThreadRuntime\n{\n public get path() {\n return this._threadBinding.path;\n }\n\n /**\n * @deprecated Use `getState().threadId` instead. This will be removed in 0.6.0.\n */\n public get threadId() {\n return this.getState().threadId;\n }\n\n /**\n * @deprecated Use `getState().isDisabled` instead. This will be removed in 0.6.0.\n */\n public get isDisabled() {\n return this.getState().isDisabled;\n }\n\n /**\n * @deprecated Use `getState().isRunning` instead. This will be removed in 0.6.0.\n */\n public get isRunning() {\n return this.getState().isRunning;\n }\n\n /**\n * @deprecated Use `getState().capabilities` instead. This will be removed in 0.6.0.\n */\n public get capabilities() {\n return this.getState().capabilities;\n }\n\n /**\n * @deprecated Use `getState().extras` instead. This will be removed in 0.6.0.\n */\n public get extras() {\n return this._threadBinding.getState().extras;\n }\n\n /**\n * @deprecated Use `getState().followupSuggestions` instead. This will be removed in 0.6.0.\n */\n public get suggestions() {\n return this._threadBinding.getState().suggestions;\n }\n\n /**\n * @deprecated Use `getState().messages` instead. This will be removed in 0.6.0.\n */\n public get messages() {\n return this._threadBinding.getState().messages;\n }\n\n /**\n * @deprecated Use `getState().speechState` instead. This will be removed in 0.6.0.\n */\n public get speech() {\n return this._threadBinding.getState().speech;\n }\n\n public unstable_getCore() {\n return this._threadBinding.getState();\n }\n\n private _threadBinding: ThreadRuntimeCoreBinding & {\n getStateState(): ThreadState;\n };\n\n constructor(threadBinding: ThreadRuntimeCoreBinding) {\n const stateBinding = new LazyMemoizeSubject({\n path: threadBinding.path,\n getState: () => getThreadState(threadBinding.getState()),\n subscribe: (callback) => threadBinding.subscribe(callback),\n });\n\n this._threadBinding = {\n path: threadBinding.path,\n getState: () => threadBinding.getState(),\n getStateState: () => stateBinding.getState(),\n outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),\n subscribe: (callback) => threadBinding.subscribe(callback),\n };\n\n this.composer = new ThreadComposerRuntimeImpl(\n new NestedSubscriptionSubject({\n path: {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.composer`,\n composerSource: \"thread\",\n },\n getState: () => this._threadBinding.getState().composer,\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n );\n }\n\n public readonly composer;\n\n public getState() {\n return this._threadBinding.getStateState();\n }\n\n public append(message: CreateAppendMessage) {\n this._threadBinding\n .getState()\n .append(\n toAppendMessage(this._threadBinding.getState().messages, message),\n );\n }\n\n public subscribe(callback: () => void) {\n return this._threadBinding.subscribe(callback);\n }\n\n /**\n * @derprecated Use `getMesssageById(id).getState().branchNumber` / `getMesssageById(id).getState().branchCount` instead. This will be removed in 0.6.0.\n */\n public getBranches(messageId: string) {\n return this._threadBinding.getState().getBranches(messageId);\n }\n\n public getModelConfig() {\n return this._threadBinding.getState().getModelConfig();\n }\n\n // TODO sometimes you want to continue when there is no child message\n public startRun(parentId: string | null) {\n return this._threadBinding.getState().startRun(parentId);\n }\n\n public cancelRun() {\n this._threadBinding.getState().cancelRun();\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getContentPartByToolCallId(toolCallId).addToolResult({ result })` instead. This will be removed in 0.6.0.\n */\n public addToolResult(options: AddToolResultOptions) {\n this._threadBinding.getState().addToolResult(options);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).switchToBranch({ options })` instead. This will be removed in 0.6.0.\n */\n public switchToBranch(branchId: string) {\n return this._threadBinding.getState().switchToBranch(branchId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).speak()` instead. This will be removed in 0.6.0.\n */\n public speak(messageId: string) {\n return this._threadBinding.getState().speak(messageId);\n }\n\n public stopSpeaking() {\n return this._threadBinding.getState().stopSpeaking();\n }\n\n public getSubmittedFeedback(messageId: string) {\n return this._threadBinding.getState().getSubmittedFeedback(messageId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).submitFeedback({ type })` instead. This will be removed in 0.6.0.\n */\n public submitFeedback(options: SubmitFeedbackOptions) {\n return this._threadBinding.getState().submitFeedback(options);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getMessageByIndex(idx).composer` instead. This will be removed in 0.6.0.\n */\n public getEditComposer(messageId: string) {\n return this._threadBinding.getState().getEditComposer(messageId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getMessageByIndex(idx).composer.beginEdit()` instead. This will be removed in 0.6.0.\n */\n public beginEdit(messageId: string) {\n return this._threadBinding.getState().beginEdit(messageId);\n }\n\n public export() {\n return this._threadBinding.getState().export();\n }\n\n public import(data: ExportedMessageRepository) {\n this._threadBinding.getState().import(data);\n }\n\n public getMesssageByIndex(idx: number) {\n if (idx < 0) throw new Error(\"Message index must be >= 0\");\n\n return this._getMessageRuntime(\n {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,\n messageSelector: { type: \"index\", index: idx },\n },\n () => {\n const messages = this._threadBinding.getState().messages;\n const message = messages[idx];\n if (!message) return undefined;\n return {\n message,\n parentId: messages[idx - 1]?.id ?? null,\n };\n },\n );\n }\n\n public getMesssageById(messageId: string) {\n return this._getMessageRuntime(\n {\n ...this.path,\n ref:\n this.path.ref +\n `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,\n messageSelector: { type: \"messageId\", messageId: messageId },\n },\n () => this._threadBinding.getState().getMessageById(messageId),\n );\n }\n\n private _getMessageRuntime(\n path: MessageRuntimePath,\n callback: () =>\n | { parentId: string | null; message: ThreadMessage }\n | undefined,\n ) {\n return new MessageRuntimeImpl(\n new ShallowMemoizeSubject({\n path,\n getState: () => {\n const { message, parentId } = callback() ?? {};\n\n const { messages, speech: speechState } =\n this._threadBinding.getState();\n\n if (!message || parentId === undefined) return SKIP_UPDATE;\n\n const thread = this._threadBinding.getState();\n\n const branches = thread.getBranches(message.id);\n const submittedFeedback = thread.getSubmittedFeedback(message.id);\n\n return {\n ...message,\n\n message,\n isLast: messages.at(-1)?.id === message.id,\n parentId,\n\n branches,\n branchNumber: branches.indexOf(message.id) + 1,\n branchCount: branches.length,\n\n speech:\n speechState?.messageId === message.id ? speechState : undefined,\n\n submittedFeedback,\n } satisfies MessageState;\n },\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n this._threadBinding,\n );\n }\n\n private _eventListenerNestedSubscriptions = new Map<\n string,\n NestedSubscriptionSubject<Subscribable, ThreadRuntimePath>\n >();\n\n public unstable_on(\n event: ThreadRuntimeEventType,\n callback: () => void,\n ): Unsubscribe {\n let subject = this._eventListenerNestedSubscriptions.get(event);\n if (!subject) {\n subject = new NestedSubscriptionSubject({\n path: this.path,\n getState: () => ({\n subscribe: (callback) =>\n this._threadBinding.getState().unstable_on(event, callback),\n }),\n subscribe: (callback) => this._threadBinding.outerSubscribe(callback),\n });\n this._eventListenerNestedSubscriptions.set(event, subject);\n }\n return subject.subscribe(callback);\n }\n}\n"],"mappings":"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","names":["callback"]}
1
+ {"version":3,"sources":["../../src/api/ThreadRuntime.ts"],"sourcesContent":["import {\n AddToolResultOptions,\n ThreadSuggestion,\n RuntimeCapabilities,\n SubmitFeedbackOptions,\n ThreadRuntimeCore,\n SpeechState,\n SubmittedFeedback,\n ThreadRuntimeEventType,\n} from \"../runtimes/core/ThreadRuntimeCore\";\nimport { ExportedMessageRepository } from \"../runtimes/utils/MessageRepository\";\nimport {\n AppendMessage,\n ModelConfig,\n ThreadMessage,\n Unsubscribe,\n} from \"../types\";\nimport {\n MessageRuntime,\n MessageRuntimeImpl,\n MessageState,\n} from \"./MessageRuntime\";\nimport { NestedSubscriptionSubject } from \"./subscribable/NestedSubscriptionSubject\";\nimport { ShallowMemoizeSubject } from \"./subscribable/ShallowMemoizeSubject\";\nimport {\n Subscribable,\n SubscribableWithState,\n} from \"./subscribable/Subscribable\";\nimport {\n ThreadComposerRuntime,\n ThreadComposerRuntimeImpl,\n} from \"./ComposerRuntime\";\nimport { LazyMemoizeSubject } from \"./subscribable/LazyMemoizeSubject\";\nimport { SKIP_UPDATE } from \"./subscribable/SKIP_UPDATE\";\nimport { ComposerRuntimeCore } from \"../runtimes/core/ComposerRuntimeCore\";\nimport { MessageRuntimePath, ThreadRuntimePath } from \"./RuntimePathTypes\";\n\nexport type CreateAppendMessage =\n | string\n | {\n parentId?: string | null | undefined;\n role?: AppendMessage[\"role\"] | undefined;\n content: AppendMessage[\"content\"];\n attachments?: AppendMessage[\"attachments\"] | undefined;\n };\n\nconst toAppendMessage = (\n messages: readonly ThreadMessage[],\n message: CreateAppendMessage,\n): AppendMessage => {\n if (typeof message === \"string\") {\n return {\n parentId: messages.at(-1)?.id ?? null,\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n };\n }\n\n if (message.role && message.parentId && message.attachments) {\n return message as AppendMessage;\n }\n\n return {\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n role: message.role ?? \"user\",\n content: message.content,\n attachments: message.attachments ?? [],\n } as AppendMessage;\n};\n\nexport type ThreadRuntimeCoreBinding = SubscribableWithState<\n ThreadRuntimeCore,\n ThreadRuntimePath\n> & {\n outerSubscribe(callback: () => void): Unsubscribe;\n};\n\nexport type ThreadState = Readonly<{\n /**\n * The thread ID.\n */\n threadId: string;\n /**\n * Whether the thread is disabled. Disabled threads cannot receive new messages.\n */\n isDisabled: boolean;\n\n /**\n * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.\n */\n isRunning: boolean;\n\n /**\n * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.\n */\n capabilities: RuntimeCapabilities;\n\n /**\n * The messages in the currently selected branch of the thread.\n */\n messages: readonly ThreadMessage[];\n\n /**\n * Follow up message suggestions to show the user.\n */\n suggestions: readonly ThreadSuggestion[];\n\n /**\n * Custom extra information provided by the runtime.\n */\n extras: unknown;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n speech: SpeechState | undefined;\n}>;\n\nexport const getThreadState = (runtime: ThreadRuntimeCore): ThreadState => {\n const lastMessage = runtime.messages.at(-1);\n return Object.freeze({\n threadId: runtime.threadId,\n capabilities: runtime.capabilities,\n isDisabled: runtime.isDisabled,\n isRunning:\n lastMessage?.role !== \"assistant\"\n ? false\n : lastMessage.status.type === \"running\",\n messages: runtime.messages,\n suggestions: runtime.suggestions,\n extras: runtime.extras,\n speech: runtime.speech,\n });\n};\n\nexport type ThreadRuntime = Readonly<{\n readonly path: ThreadRuntimePath;\n\n readonly composer: ThreadComposerRuntime;\n getState(): ThreadState;\n\n /**\n * @deprecated This method will be removed in 0.6.0. Submit feedback if you need this functionality.\n */\n unstable_getCore(): ThreadRuntimeCore;\n\n append(message: CreateAppendMessage): void;\n startRun(parentId: string | null): void;\n subscribe(callback: () => void): Unsubscribe;\n cancelRun(): void;\n getModelConfig(): ModelConfig;\n export(): ExportedMessageRepository;\n import(repository: ExportedMessageRepository): void;\n getMesssageByIndex(idx: number): MessageRuntime;\n getMesssageById(messageId: string): MessageRuntime;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n stopSpeaking: () => void;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n\n // Legacy methods with deprecations\n\n /**\n * @deprecated Use `getState().capabilities` instead. This will be removed in 0.6.0.\n */\n capabilities: Readonly<RuntimeCapabilities>;\n\n /**\n * @deprecated Use `getState().threadId` instead. This will be removed in 0.6.0.\n */\n threadId: string;\n\n /**\n * @deprecated Use `getState().isDisabled` instead. This will be removed in 0.6.0.\n */\n isDisabled: boolean;\n\n /**\n * @deprecated Use `getState().isRunning` instead. This will be removed in 0.6.0.\n */\n isRunning: boolean;\n\n /**\n * @deprecated Use `getState().messages` instead. This will be removed in 0.6.0.\n */\n messages: readonly ThreadMessage[];\n\n /**\n * @deprecated Use `getState().followupSuggestions` instead. This will be removed in 0.6.0.\n */\n suggestions: readonly ThreadSuggestion[];\n\n /**\n * @deprecated Use `getState().speechState` instead. This will be removed in 0.6.0.\n */\n speech: SpeechState | undefined;\n\n /**\n * @deprecated Use `getState().extras` instead. This will be removed in 0.6.0.\n */\n extras: unknown;\n\n /**\n * @deprecated Use `getMesssageById(id).getState().branchNumber` / `getMesssageById(id).getState().branchCount` instead. This will be removed in 0.6.0.\n */\n getBranches: (messageId: string) => readonly string[];\n\n /**\n * @deprecated Use `getMesssageById(id).switchToBranch({ options })` instead. This will be removed in 0.6.0.\n */\n switchToBranch: (branchId: string) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).getContentPartByToolCallId(toolCallId).addToolResult({ result })` instead. This will be removed in 0.6.0.\n */\n addToolResult: (options: AddToolResultOptions) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).speak()` instead. This will be removed in 0.6.0.\n */\n speak: (messageId: string) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).getState().submittedFeedback` instead. This will be removed in 0.6.0.\n */\n getSubmittedFeedback: (messageId: string) => SubmittedFeedback | undefined;\n\n /**\n * @deprecated Use `getMesssageById(id).submitFeedback({ type })` instead. This will be removed in 0.6.0.\n */\n submitFeedback: (feedback: SubmitFeedbackOptions) => void;\n\n /**\n * @deprecated Use `getMesssageById(id).composer` instead. This will be removed in 0.6.0.\n */\n getEditComposer: (messageId: string) => ComposerRuntimeCore | undefined;\n\n /**\n * @deprecated Use `getMesssageById(id).composer.beginEdit()` instead. This will be removed in 0.6.0.\n */\n beginEdit: (messageId: string) => void;\n}>;\n\nexport class ThreadRuntimeImpl\n implements Omit<ThreadRuntimeCore, \"getMessageById\">, ThreadRuntime\n{\n public get path() {\n return this._threadBinding.path;\n }\n\n /**\n * @deprecated Use `getState().threadId` instead. This will be removed in 0.6.0.\n */\n public get threadId() {\n return this.getState().threadId;\n }\n\n /**\n * @deprecated Use `getState().isDisabled` instead. This will be removed in 0.6.0.\n */\n public get isDisabled() {\n return this.getState().isDisabled;\n }\n\n /**\n * @deprecated Use `getState().isRunning` instead. This will be removed in 0.6.0.\n */\n public get isRunning() {\n return this.getState().isRunning;\n }\n\n /**\n * @deprecated Use `getState().capabilities` instead. This will be removed in 0.6.0.\n */\n public get capabilities() {\n return this.getState().capabilities;\n }\n\n /**\n * @deprecated Use `getState().extras` instead. This will be removed in 0.6.0.\n */\n public get extras() {\n return this._threadBinding.getState().extras;\n }\n\n /**\n * @deprecated Use `getState().followupSuggestions` instead. This will be removed in 0.6.0.\n */\n public get suggestions() {\n return this._threadBinding.getState().suggestions;\n }\n\n /**\n * @deprecated Use `getState().messages` instead. This will be removed in 0.6.0.\n */\n public get messages() {\n return this._threadBinding.getState().messages;\n }\n\n /**\n * @deprecated Use `getState().speechState` instead. This will be removed in 0.6.0.\n */\n public get speech() {\n return this._threadBinding.getState().speech;\n }\n\n public unstable_getCore() {\n return this._threadBinding.getState();\n }\n\n private _threadBinding: ThreadRuntimeCoreBinding & {\n getStateState(): ThreadState;\n };\n\n constructor(threadBinding: ThreadRuntimeCoreBinding) {\n const stateBinding = new LazyMemoizeSubject({\n path: threadBinding.path,\n getState: () => getThreadState(threadBinding.getState()),\n subscribe: (callback) => threadBinding.subscribe(callback),\n });\n\n this._threadBinding = {\n path: threadBinding.path,\n getState: () => threadBinding.getState(),\n getStateState: () => stateBinding.getState(),\n outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),\n subscribe: (callback) => threadBinding.subscribe(callback),\n };\n\n this.composer = new ThreadComposerRuntimeImpl(\n new NestedSubscriptionSubject({\n path: {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.composer`,\n composerSource: \"thread\",\n },\n getState: () => this._threadBinding.getState().composer,\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n );\n }\n\n public readonly composer;\n\n public getState() {\n return this._threadBinding.getStateState();\n }\n\n public append(message: CreateAppendMessage) {\n this._threadBinding\n .getState()\n .append(\n toAppendMessage(this._threadBinding.getState().messages, message),\n );\n }\n\n public subscribe(callback: () => void) {\n return this._threadBinding.subscribe(callback);\n }\n\n /**\n * @derprecated Use `getMesssageById(id).getState().branchNumber` / `getMesssageById(id).getState().branchCount` instead. This will be removed in 0.6.0.\n */\n public getBranches(messageId: string) {\n return this._threadBinding.getState().getBranches(messageId);\n }\n\n public getModelConfig() {\n return this._threadBinding.getState().getModelConfig();\n }\n\n // TODO sometimes you want to continue when there is no child message\n public startRun(parentId: string | null) {\n return this._threadBinding.getState().startRun(parentId);\n }\n\n public cancelRun() {\n this._threadBinding.getState().cancelRun();\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getContentPartByToolCallId(toolCallId).addToolResult({ result })` instead. This will be removed in 0.6.0.\n */\n public addToolResult(options: AddToolResultOptions) {\n this._threadBinding.getState().addToolResult(options);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).switchToBranch({ options })` instead. This will be removed in 0.6.0.\n */\n public switchToBranch(branchId: string) {\n return this._threadBinding.getState().switchToBranch(branchId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).speak()` instead. This will be removed in 0.6.0.\n */\n public speak(messageId: string) {\n return this._threadBinding.getState().speak(messageId);\n }\n\n public stopSpeaking() {\n return this._threadBinding.getState().stopSpeaking();\n }\n\n public getSubmittedFeedback(messageId: string) {\n return this._threadBinding.getState().getSubmittedFeedback(messageId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).submitFeedback({ type })` instead. This will be removed in 0.6.0.\n */\n public submitFeedback(options: SubmitFeedbackOptions) {\n return this._threadBinding.getState().submitFeedback(options);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getMessageByIndex(idx).composer` instead. This will be removed in 0.6.0.\n */\n public getEditComposer(messageId: string) {\n return this._threadBinding.getState().getEditComposer(messageId);\n }\n\n /**\n * @deprecated Use `getMesssageById(id).getMessageByIndex(idx).composer.beginEdit()` instead. This will be removed in 0.6.0.\n */\n public beginEdit(messageId: string) {\n return this._threadBinding.getState().beginEdit(messageId);\n }\n\n public export() {\n return this._threadBinding.getState().export();\n }\n\n public import(data: ExportedMessageRepository) {\n this._threadBinding.getState().import(data);\n }\n\n public getMesssageByIndex(idx: number) {\n if (idx < 0) throw new Error(\"Message index must be >= 0\");\n\n return this._getMessageRuntime(\n {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,\n messageSelector: { type: \"index\", index: idx },\n },\n () => {\n const messages = this._threadBinding.getState().messages;\n const message = messages[idx];\n if (!message) return undefined;\n return {\n message,\n parentId: messages[idx - 1]?.id ?? null,\n };\n },\n );\n }\n\n public getMesssageById(messageId: string) {\n return this._getMessageRuntime(\n {\n ...this.path,\n ref:\n this.path.ref +\n `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,\n messageSelector: { type: \"messageId\", messageId: messageId },\n },\n () => this._threadBinding.getState().getMessageById(messageId),\n );\n }\n\n private _getMessageRuntime(\n path: MessageRuntimePath,\n callback: () =>\n | { parentId: string | null; message: ThreadMessage }\n | undefined,\n ) {\n return new MessageRuntimeImpl(\n new ShallowMemoizeSubject({\n path,\n getState: () => {\n const { message, parentId } = callback() ?? {};\n\n const { messages, speech: speechState } =\n this._threadBinding.getState();\n\n if (!message || parentId === undefined) return SKIP_UPDATE;\n\n const thread = this._threadBinding.getState();\n\n const branches = thread.getBranches(message.id);\n const submittedFeedback = thread.getSubmittedFeedback(message.id);\n\n return {\n ...message,\n\n message,\n isLast: messages.at(-1)?.id === message.id,\n parentId,\n\n branches,\n branchNumber: branches.indexOf(message.id) + 1,\n branchCount: branches.length,\n\n speech:\n speechState?.messageId === message.id ? speechState : undefined,\n\n submittedFeedback,\n } satisfies MessageState;\n },\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n this._threadBinding,\n );\n }\n\n private _eventListenerNestedSubscriptions = new Map<\n string,\n NestedSubscriptionSubject<Subscribable, ThreadRuntimePath>\n >();\n\n public unstable_on(\n event: ThreadRuntimeEventType,\n callback: () => void,\n ): Unsubscribe {\n let subject = this._eventListenerNestedSubscriptions.get(event);\n if (!subject) {\n subject = new NestedSubscriptionSubject({\n path: this.path,\n getState: () => ({\n subscribe: (callback) =>\n this._threadBinding.getState().unstable_on(event, callback),\n }),\n subscribe: (callback) => this._threadBinding.outerSubscribe(callback),\n });\n this._eventListenerNestedSubscriptions.set(event, subject);\n }\n return subject.subscribe(callback);\n }\n}\n"],"mappings":";AAiBA;AAAA,EAEE;AAAA,OAEK;AACP,SAAS,iCAAiC;AAC1C,SAAS,6BAA6B;AAKtC;AAAA,EAEE;AAAA,OACK;AACP,SAAS,0BAA0B;AACnC,SAAS,mBAAmB;AAa5B,IAAM,kBAAkB,CACtB,UACA,YACkB;AAClB,MAAI,OAAO,YAAY,UAAU;AAC/B,WAAO;AAAA,MACL,UAAU,SAAS,GAAG,EAAE,GAAG,MAAM;AAAA,MACjC,MAAM;AAAA,MACN,SAAS,CAAC,EAAE,MAAM,QAAQ,MAAM,QAAQ,CAAC;AAAA,MACzC,aAAa,CAAC;AAAA,IAChB;AAAA,EACF;AAEA,MAAI,QAAQ,QAAQ,QAAQ,YAAY,QAAQ,aAAa;AAC3D,WAAO;AAAA,EACT;AAEA,SAAO;AAAA,IACL,UAAU,QAAQ,YAAY,SAAS,GAAG,EAAE,GAAG,MAAM;AAAA,IACrD,MAAM,QAAQ,QAAQ;AAAA,IACtB,SAAS,QAAQ;AAAA,IACjB,aAAa,QAAQ,eAAe,CAAC;AAAA,EACvC;AACF;AAkDO,IAAM,iBAAiB,CAAC,YAA4C;AACzE,QAAM,cAAc,QAAQ,SAAS,GAAG,EAAE;AAC1C,SAAO,OAAO,OAAO;AAAA,IACnB,UAAU,QAAQ;AAAA,IAClB,cAAc,QAAQ;AAAA,IACtB,YAAY,QAAQ;AAAA,IACpB,WACE,aAAa,SAAS,cAClB,QACA,YAAY,OAAO,SAAS;AAAA,IAClC,UAAU,QAAQ;AAAA,IAClB,aAAa,QAAQ;AAAA,IACrB,QAAQ,QAAQ;AAAA,IAChB,QAAQ,QAAQ;AAAA,EAClB,CAAC;AACH;AAiHO,IAAM,oBAAN,MAEP;AAAA,EACE,IAAW,OAAO;AAChB,WAAO,KAAK,eAAe;AAAA,EAC7B;AAAA;AAAA;AAAA;AAAA,EAKA,IAAW,WAAW;AACpB,WAAO,KAAK,SAAS,EAAE;AAAA,EACzB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAW,aAAa;AACtB,WAAO,KAAK,SAAS,EAAE;AAAA,EACzB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAW,YAAY;AACrB,WAAO,KAAK,SAAS,EAAE;AAAA,EACzB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAW,eAAe;AACxB,WAAO,KAAK,SAAS,EAAE;AAAA,EACzB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAW,SAAS;AAClB,WAAO,KAAK,eAAe,SAAS,EAAE;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA,EAKA,IAAW,cAAc;AACvB,WAAO,KAAK,eAAe,SAAS,EAAE;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA,EAKA,IAAW,WAAW;AACpB,WAAO,KAAK,eAAe,SAAS,EAAE;AAAA,EACxC;AAAA;AAAA;AAAA;AAAA,EAKA,IAAW,SAAS;AAClB,WAAO,KAAK,eAAe,SAAS,EAAE;AAAA,EACxC;AAAA,EAEO,mBAAmB;AACxB,WAAO,KAAK,eAAe,SAAS;AAAA,EACtC;AAAA,EAEQ;AAAA,EAIR,YAAY,eAAyC;AACnD,UAAM,eAAe,IAAI,mBAAmB;AAAA,MAC1C,MAAM,cAAc;AAAA,MACpB,UAAU,MAAM,eAAe,cAAc,SAAS,CAAC;AAAA,MACvD,WAAW,CAAC,aAAa,cAAc,UAAU,QAAQ;AAAA,IAC3D,CAAC;AAED,SAAK,iBAAiB;AAAA,MACpB,MAAM,cAAc;AAAA,MACpB,UAAU,MAAM,cAAc,SAAS;AAAA,MACvC,eAAe,MAAM,aAAa,SAAS;AAAA,MAC3C,gBAAgB,CAAC,aAAa,cAAc,eAAe,QAAQ;AAAA,MACnE,WAAW,CAAC,aAAa,cAAc,UAAU,QAAQ;AAAA,IAC3D;AAEA,SAAK,WAAW,IAAI;AAAA,MAClB,IAAI,0BAA0B;AAAA,QAC5B,MAAM;AAAA,UACJ,GAAG,KAAK;AAAA,UACR,KAAK,KAAK,KAAK,MAAM,GAAG,KAAK,KAAK,GAAG;AAAA,UACrC,gBAAgB;AAAA,QAClB;AAAA,QACA,UAAU,MAAM,KAAK,eAAe,SAAS,EAAE;AAAA,QAC/C,WAAW,CAAC,aAAa,KAAK,eAAe,UAAU,QAAQ;AAAA,MACjE,CAAC;AAAA,IACH;AAAA,EACF;AAAA,EAEgB;AAAA,EAET,WAAW;AAChB,WAAO,KAAK,eAAe,cAAc;AAAA,EAC3C;AAAA,EAEO,OAAO,SAA8B;AAC1C,SAAK,eACF,SAAS,EACT;AAAA,MACC,gBAAgB,KAAK,eAAe,SAAS,EAAE,UAAU,OAAO;AAAA,IAClE;AAAA,EACJ;AAAA,EAEO,UAAU,UAAsB;AACrC,WAAO,KAAK,eAAe,UAAU,QAAQ;AAAA,EAC/C;AAAA;AAAA;AAAA;AAAA,EAKO,YAAY,WAAmB;AACpC,WAAO,KAAK,eAAe,SAAS,EAAE,YAAY,SAAS;AAAA,EAC7D;AAAA,EAEO,iBAAiB;AACtB,WAAO,KAAK,eAAe,SAAS,EAAE,eAAe;AAAA,EACvD;AAAA;AAAA,EAGO,SAAS,UAAyB;AACvC,WAAO,KAAK,eAAe,SAAS,EAAE,SAAS,QAAQ;AAAA,EACzD;AAAA,EAEO,YAAY;AACjB,SAAK,eAAe,SAAS,EAAE,UAAU;AAAA,EAC3C;AAAA;AAAA;AAAA;AAAA,EAKO,cAAc,SAA+B;AAClD,SAAK,eAAe,SAAS,EAAE,cAAc,OAAO;AAAA,EACtD;AAAA;AAAA;AAAA;AAAA,EAKO,eAAe,UAAkB;AACtC,WAAO,KAAK,eAAe,SAAS,EAAE,eAAe,QAAQ;AAAA,EAC/D;AAAA;AAAA;AAAA;AAAA,EAKO,MAAM,WAAmB;AAC9B,WAAO,KAAK,eAAe,SAAS,EAAE,MAAM,SAAS;AAAA,EACvD;AAAA,EAEO,eAAe;AACpB,WAAO,KAAK,eAAe,SAAS,EAAE,aAAa;AAAA,EACrD;AAAA,EAEO,qBAAqB,WAAmB;AAC7C,WAAO,KAAK,eAAe,SAAS,EAAE,qBAAqB,SAAS;AAAA,EACtE;AAAA;AAAA;AAAA;AAAA,EAKO,eAAe,SAAgC;AACpD,WAAO,KAAK,eAAe,SAAS,EAAE,eAAe,OAAO;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA,EAKO,gBAAgB,WAAmB;AACxC,WAAO,KAAK,eAAe,SAAS,EAAE,gBAAgB,SAAS;AAAA,EACjE;AAAA;AAAA;AAAA;AAAA,EAKO,UAAU,WAAmB;AAClC,WAAO,KAAK,eAAe,SAAS,EAAE,UAAU,SAAS;AAAA,EAC3D;AAAA,EAEO,SAAS;AACd,WAAO,KAAK,eAAe,SAAS,EAAE,OAAO;AAAA,EAC/C;AAAA,EAEO,OAAO,MAAiC;AAC7C,SAAK,eAAe,SAAS,EAAE,OAAO,IAAI;AAAA,EAC5C;AAAA,EAEO,mBAAmB,KAAa;AACrC,QAAI,MAAM,EAAG,OAAM,IAAI,MAAM,4BAA4B;AAEzD,WAAO,KAAK;AAAA,MACV;AAAA,QACE,GAAG,KAAK;AAAA,QACR,KAAK,KAAK,KAAK,MAAM,GAAG,KAAK,KAAK,GAAG,aAAa,GAAG;AAAA,QACrD,iBAAiB,EAAE,MAAM,SAAS,OAAO,IAAI;AAAA,MAC/C;AAAA,MACA,MAAM;AACJ,cAAM,WAAW,KAAK,eAAe,SAAS,EAAE;AAChD,cAAM,UAAU,SAAS,GAAG;AAC5B,YAAI,CAAC,QAAS,QAAO;AACrB,eAAO;AAAA,UACL;AAAA,UACA,UAAU,SAAS,MAAM,CAAC,GAAG,MAAM;AAAA,QACrC;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAAA,EAEO,gBAAgB,WAAmB;AACxC,WAAO,KAAK;AAAA,MACV;AAAA,QACE,GAAG,KAAK;AAAA,QACR,KACE,KAAK,KAAK,MACV,GAAG,KAAK,KAAK,GAAG,uBAAuB,KAAK,UAAU,SAAS,CAAC;AAAA,QAClE,iBAAiB,EAAE,MAAM,aAAa,UAAqB;AAAA,MAC7D;AAAA,MACA,MAAM,KAAK,eAAe,SAAS,EAAE,eAAe,SAAS;AAAA,IAC/D;AAAA,EACF;AAAA,EAEQ,mBACN,MACA,UAGA;AACA,WAAO,IAAI;AAAA,MACT,IAAI,sBAAsB;AAAA,QACxB;AAAA,QACA,UAAU,MAAM;AACd,gBAAM,EAAE,SAAS,SAAS,IAAI,SAAS,KAAK,CAAC;AAE7C,gBAAM,EAAE,UAAU,QAAQ,YAAY,IACpC,KAAK,eAAe,SAAS;AAE/B,cAAI,CAAC,WAAW,aAAa,OAAW,QAAO;AAE/C,gBAAM,SAAS,KAAK,eAAe,SAAS;AAE5C,gBAAM,WAAW,OAAO,YAAY,QAAQ,EAAE;AAC9C,gBAAM,oBAAoB,OAAO,qBAAqB,QAAQ,EAAE;AAEhE,iBAAO;AAAA,YACL,GAAG;AAAA,YAEH;AAAA,YACA,QAAQ,SAAS,GAAG,EAAE,GAAG,OAAO,QAAQ;AAAA,YACxC;AAAA,YAEA;AAAA,YACA,cAAc,SAAS,QAAQ,QAAQ,EAAE,IAAI;AAAA,YAC7C,aAAa,SAAS;AAAA,YAEtB,QACE,aAAa,cAAc,QAAQ,KAAK,cAAc;AAAA,YAExD;AAAA,UACF;AAAA,QACF;AAAA,QACA,WAAW,CAACA,cAAa,KAAK,eAAe,UAAUA,SAAQ;AAAA,MACjE,CAAC;AAAA,MACD,KAAK;AAAA,IACP;AAAA,EACF;AAAA,EAEQ,oCAAoC,oBAAI,IAG9C;AAAA,EAEK,YACL,OACA,UACa;AACb,QAAI,UAAU,KAAK,kCAAkC,IAAI,KAAK;AAC9D,QAAI,CAAC,SAAS;AACZ,gBAAU,IAAI,0BAA0B;AAAA,QACtC,MAAM,KAAK;AAAA,QACX,UAAU,OAAO;AAAA,UACf,WAAW,CAACA,cACV,KAAK,eAAe,SAAS,EAAE,YAAY,OAAOA,SAAQ;AAAA,QAC9D;AAAA,QACA,WAAW,CAACA,cAAa,KAAK,eAAe,eAAeA,SAAQ;AAAA,MACtE,CAAC;AACD,WAAK,kCAAkC,IAAI,OAAO,OAAO;AAAA,IAC3D;AACA,WAAO,QAAQ,UAAU,QAAQ;AAAA,EACnC;AACF;","names":["callback"]}
package/dist/api/index.js CHANGED
@@ -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/api/index.ts
15
17
  var api_exports = {};
16
18
  module.exports = __toCommonJS(api_exports);
17
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/api/index.ts"],"sourcesContent":["export type { AssistantRuntime } from \"./AssistantRuntime\";\nexport type { ThreadRuntime, ThreadState } from \"./ThreadRuntime\";\nexport type { MessageRuntime, MessageState } from \"./MessageRuntime\";\nexport type {\n ContentPartRuntime,\n ContentPartState,\n} from \"./ContentPartRuntime\";\nexport type {\n ComposerRuntime,\n ThreadComposerRuntime,\n EditComposerRuntime,\n EditComposerState,\n ThreadComposerState,\n ComposerState,\n} from \"./ComposerRuntime\";\nexport type { AttachmentRuntime, AttachmentState } from \"./AttachmentRuntime\";\nexport type {\n ThreadManagerRuntime,\n ThreadManagerState,\n} from \"./ThreadManagerRuntime\";\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../../src/api/index.ts"],"sourcesContent":["export type { AssistantRuntime } from \"./AssistantRuntime\";\nexport type { ThreadRuntime, ThreadState } from \"./ThreadRuntime\";\nexport type { MessageRuntime, MessageState } from \"./MessageRuntime\";\nexport type {\n ContentPartRuntime,\n ContentPartState,\n} from \"./ContentPartRuntime\";\nexport type {\n ComposerRuntime,\n ThreadComposerRuntime,\n EditComposerRuntime,\n EditComposerState,\n ThreadComposerState,\n ComposerState,\n} from \"./ComposerRuntime\";\nexport type { AttachmentRuntime, AttachmentState } from \"./AttachmentRuntime\";\nexport type {\n ThreadManagerRuntime,\n ThreadManagerState,\n} from \"./ThreadManagerRuntime\";\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/api/subscribable/BaseSubject.ts
19
21
  var BaseSubject_exports = {};
20
22
  __export(BaseSubject_exports, {
21
23
  BaseSubject: () => BaseSubject
22
24
  });
23
25
  module.exports = __toCommonJS(BaseSubject_exports);
24
- class BaseSubject {
26
+ var BaseSubject = class {
25
27
  _subscriptions = /* @__PURE__ */ new Set();
26
28
  _connection;
27
29
  get isConnected() {
@@ -47,7 +49,7 @@ class BaseSubject {
47
49
  this._updateConnection();
48
50
  };
49
51
  }
50
- }
52
+ };
51
53
  // Annotate the CommonJS export names for ESM import in node:
52
54
  0 && (module.exports = {
53
55
  BaseSubject
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/subscribable/BaseSubject.ts"],"sourcesContent":["import { Unsubscribe } from \"../../types/Unsubscribe\";\n\nexport abstract class BaseSubject {\n private _subscriptions = new Set<() => void>();\n private _connection: Unsubscribe | undefined;\n\n protected get isConnected() {\n return !!this._connection;\n }\n\n protected abstract _connect(): Unsubscribe;\n\n protected notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n private _updateConnection() {\n if (this._subscriptions.size > 0) {\n if (this._connection) return;\n this._connection = this._connect();\n } else {\n this._connection?.();\n this._connection = undefined;\n }\n }\n\n public subscribe(callback: () => void) {\n this._subscriptions.add(callback);\n this._updateConnection();\n\n return () => {\n this._subscriptions.delete(callback);\n this._updateConnection();\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAe,YAAY;AAAA,EACxB,iBAAiB,oBAAI,IAAgB;AAAA,EACrC;AAAA,EAER,IAAc,cAAc;AAC1B,WAAO,CAAC,CAAC,KAAK;AAAA,EAChB;AAAA,EAIU,oBAAoB;AAC5B,eAAW,YAAY,KAAK,eAAgB,UAAS;AAAA,EACvD;AAAA,EAEQ,oBAAoB;AAC1B,QAAI,KAAK,eAAe,OAAO,GAAG;AAChC,UAAI,KAAK,YAAa;AACtB,WAAK,cAAc,KAAK,SAAS;AAAA,IACnC,OAAO;AACL,WAAK,cAAc;AACnB,WAAK,cAAc;AAAA,IACrB;AAAA,EACF;AAAA,EAEO,UAAU,UAAsB;AACrC,SAAK,eAAe,IAAI,QAAQ;AAChC,SAAK,kBAAkB;AAEvB,WAAO,MAAM;AACX,WAAK,eAAe,OAAO,QAAQ;AACnC,WAAK,kBAAkB;AAAA,IACzB;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/api/subscribable/BaseSubject.ts"],"sourcesContent":["import { Unsubscribe } from \"../../types/Unsubscribe\";\n\nexport abstract class BaseSubject {\n private _subscriptions = new Set<() => void>();\n private _connection: Unsubscribe | undefined;\n\n protected get isConnected() {\n return !!this._connection;\n }\n\n protected abstract _connect(): Unsubscribe;\n\n protected notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n private _updateConnection() {\n if (this._subscriptions.size > 0) {\n if (this._connection) return;\n this._connection = this._connect();\n } else {\n this._connection?.();\n this._connection = undefined;\n }\n }\n\n public subscribe(callback: () => void) {\n this._subscriptions.add(callback);\n this._updateConnection();\n\n return () => {\n this._subscriptions.delete(callback);\n this._updateConnection();\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,IAAe,cAAf,MAA2B;AAAA,EACxB,iBAAiB,oBAAI,IAAgB;AAAA,EACrC;AAAA,EAER,IAAc,cAAc;AAC1B,WAAO,CAAC,CAAC,KAAK;AAAA,EAChB;AAAA,EAIU,oBAAoB;AAC5B,eAAW,YAAY,KAAK,eAAgB,UAAS;AAAA,EACvD;AAAA,EAEQ,oBAAoB;AAC1B,QAAI,KAAK,eAAe,OAAO,GAAG;AAChC,UAAI,KAAK,YAAa;AACtB,WAAK,cAAc,KAAK,SAAS;AAAA,IACnC,OAAO;AACL,WAAK,cAAc;AACnB,WAAK,cAAc;AAAA,IACrB;AAAA,EACF;AAAA,EAEO,UAAU,UAAsB;AACrC,SAAK,eAAe,IAAI,QAAQ;AAChC,SAAK,kBAAkB;AAEvB,WAAO,MAAM;AACX,WAAK,eAAe,OAAO,QAAQ;AACnC,WAAK,kBAAkB;AAAA,IACzB;AAAA,EACF;AACF;","names":[]}
@@ -1,4 +1,5 @@
1
- class BaseSubject {
1
+ // src/api/subscribable/BaseSubject.ts
2
+ var BaseSubject = class {
2
3
  _subscriptions = /* @__PURE__ */ new Set();
3
4
  _connection;
4
5
  get isConnected() {
@@ -24,7 +25,7 @@ class BaseSubject {
24
25
  this._updateConnection();
25
26
  };
26
27
  }
27
- }
28
+ };
28
29
  export {
29
30
  BaseSubject
30
31
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/subscribable/BaseSubject.ts"],"sourcesContent":["import { Unsubscribe } from \"../../types/Unsubscribe\";\n\nexport abstract class BaseSubject {\n private _subscriptions = new Set<() => void>();\n private _connection: Unsubscribe | undefined;\n\n protected get isConnected() {\n return !!this._connection;\n }\n\n protected abstract _connect(): Unsubscribe;\n\n protected notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n private _updateConnection() {\n if (this._subscriptions.size > 0) {\n if (this._connection) return;\n this._connection = this._connect();\n } else {\n this._connection?.();\n this._connection = undefined;\n }\n }\n\n public subscribe(callback: () => void) {\n this._subscriptions.add(callback);\n this._updateConnection();\n\n return () => {\n this._subscriptions.delete(callback);\n this._updateConnection();\n };\n }\n}\n"],"mappings":"AAEO,MAAe,YAAY;AAAA,EACxB,iBAAiB,oBAAI,IAAgB;AAAA,EACrC;AAAA,EAER,IAAc,cAAc;AAC1B,WAAO,CAAC,CAAC,KAAK;AAAA,EAChB;AAAA,EAIU,oBAAoB;AAC5B,eAAW,YAAY,KAAK,eAAgB,UAAS;AAAA,EACvD;AAAA,EAEQ,oBAAoB;AAC1B,QAAI,KAAK,eAAe,OAAO,GAAG;AAChC,UAAI,KAAK,YAAa;AACtB,WAAK,cAAc,KAAK,SAAS;AAAA,IACnC,OAAO;AACL,WAAK,cAAc;AACnB,WAAK,cAAc;AAAA,IACrB;AAAA,EACF;AAAA,EAEO,UAAU,UAAsB;AACrC,SAAK,eAAe,IAAI,QAAQ;AAChC,SAAK,kBAAkB;AAEvB,WAAO,MAAM;AACX,WAAK,eAAe,OAAO,QAAQ;AACnC,WAAK,kBAAkB;AAAA,IACzB;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/api/subscribable/BaseSubject.ts"],"sourcesContent":["import { Unsubscribe } from \"../../types/Unsubscribe\";\n\nexport abstract class BaseSubject {\n private _subscriptions = new Set<() => void>();\n private _connection: Unsubscribe | undefined;\n\n protected get isConnected() {\n return !!this._connection;\n }\n\n protected abstract _connect(): Unsubscribe;\n\n protected notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n private _updateConnection() {\n if (this._subscriptions.size > 0) {\n if (this._connection) return;\n this._connection = this._connect();\n } else {\n this._connection?.();\n this._connection = undefined;\n }\n }\n\n public subscribe(callback: () => void) {\n this._subscriptions.add(callback);\n this._updateConnection();\n\n return () => {\n this._subscriptions.delete(callback);\n this._updateConnection();\n };\n }\n}\n"],"mappings":";AAEO,IAAe,cAAf,MAA2B;AAAA,EACxB,iBAAiB,oBAAI,IAAgB;AAAA,EACrC;AAAA,EAER,IAAc,cAAc;AAC1B,WAAO,CAAC,CAAC,KAAK;AAAA,EAChB;AAAA,EAIU,oBAAoB;AAC5B,eAAW,YAAY,KAAK,eAAgB,UAAS;AAAA,EACvD;AAAA,EAEQ,oBAAoB;AAC1B,QAAI,KAAK,eAAe,OAAO,GAAG;AAChC,UAAI,KAAK,YAAa;AACtB,WAAK,cAAc,KAAK,SAAS;AAAA,IACnC,OAAO;AACL,WAAK,cAAc;AACnB,WAAK,cAAc;AAAA,IACrB;AAAA,EACF;AAAA,EAEO,UAAU,UAAsB;AACrC,SAAK,eAAe,IAAI,QAAQ;AAChC,SAAK,kBAAkB;AAEvB,WAAO,MAAM;AACX,WAAK,eAAe,OAAO,QAAQ;AACnC,WAAK,kBAAkB;AAAA,IACzB;AAAA,EACF;AACF;","names":[]}
@@ -16,14 +16,16 @@ 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/api/subscribable/LazyMemoizeSubject.ts
19
21
  var LazyMemoizeSubject_exports = {};
20
22
  __export(LazyMemoizeSubject_exports, {
21
23
  LazyMemoizeSubject: () => LazyMemoizeSubject
22
24
  });
23
25
  module.exports = __toCommonJS(LazyMemoizeSubject_exports);
24
- var import_BaseSubject = require("./BaseSubject");
25
- var import_SKIP_UPDATE = require("./SKIP_UPDATE");
26
- class LazyMemoizeSubject extends import_BaseSubject.BaseSubject {
26
+ var import_BaseSubject = require("./BaseSubject.cjs");
27
+ var import_SKIP_UPDATE = require("./SKIP_UPDATE.cjs");
28
+ var LazyMemoizeSubject = class extends import_BaseSubject.BaseSubject {
27
29
  constructor(binding) {
28
30
  super();
29
31
  this.binding = binding;
@@ -52,7 +54,7 @@ class LazyMemoizeSubject extends import_BaseSubject.BaseSubject {
52
54
  };
53
55
  return this.binding.subscribe(callback);
54
56
  }
55
- }
57
+ };
56
58
  // Annotate the CommonJS export names for ESM import in node:
57
59
  0 && (module.exports = {
58
60
  LazyMemoizeSubject
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/subscribable/LazyMemoizeSubject.ts"],"sourcesContent":["import { BaseSubject } from \"./BaseSubject\";\nimport { SKIP_UPDATE } from \"./SKIP_UPDATE\";\nimport { SubscribableWithState } from \"./Subscribable\";\n\nexport class LazyMemoizeSubject<TState extends object, TPath>\n extends BaseSubject\n implements SubscribableWithState<TState, TPath>\n{\n public get path() {\n return this.binding.path;\n }\n\n constructor(\n private binding: SubscribableWithState<TState | SKIP_UPDATE, TPath>,\n ) {\n super();\n }\n\n private _previousStateDirty = true;\n private _previousState: TState | undefined;\n public getState = () => {\n if (!this.isConnected || this._previousStateDirty) {\n const newState = this.binding.getState();\n if (newState !== SKIP_UPDATE) {\n this._previousState = newState;\n }\n this._previousStateDirty = false;\n }\n if (this._previousState === undefined)\n throw new Error(\"Entry not available in the store\");\n return this._previousState;\n };\n\n protected _connect() {\n const callback = () => {\n this._previousStateDirty = true;\n this.notifySubscribers();\n };\n\n return this.binding.subscribe(callback);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAA4B;AAC5B,yBAA4B;AAGrB,MAAM,2BACH,+BAEV;AAAA,EAKE,YACU,SACR;AACA,UAAM;AAFE;AAAA,EAGV;AAAA,EARA,IAAW,OAAO;AAChB,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAQQ,sBAAsB;AAAA,EACtB;AAAA,EACD,WAAW,MAAM;AACtB,QAAI,CAAC,KAAK,eAAe,KAAK,qBAAqB;AACjD,YAAM,WAAW,KAAK,QAAQ,SAAS;AACvC,UAAI,aAAa,gCAAa;AAC5B,aAAK,iBAAiB;AAAA,MACxB;AACA,WAAK,sBAAsB;AAAA,IAC7B;AACA,QAAI,KAAK,mBAAmB;AAC1B,YAAM,IAAI,MAAM,kCAAkC;AACpD,WAAO,KAAK;AAAA,EACd;AAAA,EAEU,WAAW;AACnB,UAAM,WAAW,MAAM;AACrB,WAAK,sBAAsB;AAC3B,WAAK,kBAAkB;AAAA,IACzB;AAEA,WAAO,KAAK,QAAQ,UAAU,QAAQ;AAAA,EACxC;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/api/subscribable/LazyMemoizeSubject.ts"],"sourcesContent":["import { BaseSubject } from \"./BaseSubject\";\nimport { SKIP_UPDATE } from \"./SKIP_UPDATE\";\nimport { SubscribableWithState } from \"./Subscribable\";\n\nexport class LazyMemoizeSubject<TState extends object, TPath>\n extends BaseSubject\n implements SubscribableWithState<TState, TPath>\n{\n public get path() {\n return this.binding.path;\n }\n\n constructor(\n private binding: SubscribableWithState<TState | SKIP_UPDATE, TPath>,\n ) {\n super();\n }\n\n private _previousStateDirty = true;\n private _previousState: TState | undefined;\n public getState = () => {\n if (!this.isConnected || this._previousStateDirty) {\n const newState = this.binding.getState();\n if (newState !== SKIP_UPDATE) {\n this._previousState = newState;\n }\n this._previousStateDirty = false;\n }\n if (this._previousState === undefined)\n throw new Error(\"Entry not available in the store\");\n return this._previousState;\n };\n\n protected _connect() {\n const callback = () => {\n this._previousStateDirty = true;\n this.notifySubscribers();\n };\n\n return this.binding.subscribe(callback);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,yBAA4B;AAC5B,yBAA4B;AAGrB,IAAM,qBAAN,cACG,+BAEV;AAAA,EAKE,YACU,SACR;AACA,UAAM;AAFE;AAAA,EAGV;AAAA,EARA,IAAW,OAAO;AAChB,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAQQ,sBAAsB;AAAA,EACtB;AAAA,EACD,WAAW,MAAM;AACtB,QAAI,CAAC,KAAK,eAAe,KAAK,qBAAqB;AACjD,YAAM,WAAW,KAAK,QAAQ,SAAS;AACvC,UAAI,aAAa,gCAAa;AAC5B,aAAK,iBAAiB;AAAA,MACxB;AACA,WAAK,sBAAsB;AAAA,IAC7B;AACA,QAAI,KAAK,mBAAmB;AAC1B,YAAM,IAAI,MAAM,kCAAkC;AACpD,WAAO,KAAK;AAAA,EACd;AAAA,EAEU,WAAW;AACnB,UAAM,WAAW,MAAM;AACrB,WAAK,sBAAsB;AAC3B,WAAK,kBAAkB;AAAA,IACzB;AAEA,WAAO,KAAK,QAAQ,UAAU,QAAQ;AAAA,EACxC;AACF;","names":[]}
@@ -1,6 +1,7 @@
1
- import { BaseSubject } from "./BaseSubject";
2
- import { SKIP_UPDATE } from "./SKIP_UPDATE";
3
- class LazyMemoizeSubject extends BaseSubject {
1
+ // src/api/subscribable/LazyMemoizeSubject.ts
2
+ import { BaseSubject } from "./BaseSubject.mjs";
3
+ import { SKIP_UPDATE } from "./SKIP_UPDATE.mjs";
4
+ var LazyMemoizeSubject = class extends BaseSubject {
4
5
  constructor(binding) {
5
6
  super();
6
7
  this.binding = binding;
@@ -29,7 +30,7 @@ class LazyMemoizeSubject extends BaseSubject {
29
30
  };
30
31
  return this.binding.subscribe(callback);
31
32
  }
32
- }
33
+ };
33
34
  export {
34
35
  LazyMemoizeSubject
35
36
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/subscribable/LazyMemoizeSubject.ts"],"sourcesContent":["import { BaseSubject } from \"./BaseSubject\";\nimport { SKIP_UPDATE } from \"./SKIP_UPDATE\";\nimport { SubscribableWithState } from \"./Subscribable\";\n\nexport class LazyMemoizeSubject<TState extends object, TPath>\n extends BaseSubject\n implements SubscribableWithState<TState, TPath>\n{\n public get path() {\n return this.binding.path;\n }\n\n constructor(\n private binding: SubscribableWithState<TState | SKIP_UPDATE, TPath>,\n ) {\n super();\n }\n\n private _previousStateDirty = true;\n private _previousState: TState | undefined;\n public getState = () => {\n if (!this.isConnected || this._previousStateDirty) {\n const newState = this.binding.getState();\n if (newState !== SKIP_UPDATE) {\n this._previousState = newState;\n }\n this._previousStateDirty = false;\n }\n if (this._previousState === undefined)\n throw new Error(\"Entry not available in the store\");\n return this._previousState;\n };\n\n protected _connect() {\n const callback = () => {\n this._previousStateDirty = true;\n this.notifySubscribers();\n };\n\n return this.binding.subscribe(callback);\n }\n}\n"],"mappings":"AAAA,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB;AAGrB,MAAM,2BACH,YAEV;AAAA,EAKE,YACU,SACR;AACA,UAAM;AAFE;AAAA,EAGV;AAAA,EARA,IAAW,OAAO;AAChB,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAQQ,sBAAsB;AAAA,EACtB;AAAA,EACD,WAAW,MAAM;AACtB,QAAI,CAAC,KAAK,eAAe,KAAK,qBAAqB;AACjD,YAAM,WAAW,KAAK,QAAQ,SAAS;AACvC,UAAI,aAAa,aAAa;AAC5B,aAAK,iBAAiB;AAAA,MACxB;AACA,WAAK,sBAAsB;AAAA,IAC7B;AACA,QAAI,KAAK,mBAAmB;AAC1B,YAAM,IAAI,MAAM,kCAAkC;AACpD,WAAO,KAAK;AAAA,EACd;AAAA,EAEU,WAAW;AACnB,UAAM,WAAW,MAAM;AACrB,WAAK,sBAAsB;AAC3B,WAAK,kBAAkB;AAAA,IACzB;AAEA,WAAO,KAAK,QAAQ,UAAU,QAAQ;AAAA,EACxC;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/api/subscribable/LazyMemoizeSubject.ts"],"sourcesContent":["import { BaseSubject } from \"./BaseSubject\";\nimport { SKIP_UPDATE } from \"./SKIP_UPDATE\";\nimport { SubscribableWithState } from \"./Subscribable\";\n\nexport class LazyMemoizeSubject<TState extends object, TPath>\n extends BaseSubject\n implements SubscribableWithState<TState, TPath>\n{\n public get path() {\n return this.binding.path;\n }\n\n constructor(\n private binding: SubscribableWithState<TState | SKIP_UPDATE, TPath>,\n ) {\n super();\n }\n\n private _previousStateDirty = true;\n private _previousState: TState | undefined;\n public getState = () => {\n if (!this.isConnected || this._previousStateDirty) {\n const newState = this.binding.getState();\n if (newState !== SKIP_UPDATE) {\n this._previousState = newState;\n }\n this._previousStateDirty = false;\n }\n if (this._previousState === undefined)\n throw new Error(\"Entry not available in the store\");\n return this._previousState;\n };\n\n protected _connect() {\n const callback = () => {\n this._previousStateDirty = true;\n this.notifySubscribers();\n };\n\n return this.binding.subscribe(callback);\n }\n}\n"],"mappings":";AAAA,SAAS,mBAAmB;AAC5B,SAAS,mBAAmB;AAGrB,IAAM,qBAAN,cACG,YAEV;AAAA,EAKE,YACU,SACR;AACA,UAAM;AAFE;AAAA,EAGV;AAAA,EARA,IAAW,OAAO;AAChB,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAQQ,sBAAsB;AAAA,EACtB;AAAA,EACD,WAAW,MAAM;AACtB,QAAI,CAAC,KAAK,eAAe,KAAK,qBAAqB;AACjD,YAAM,WAAW,KAAK,QAAQ,SAAS;AACvC,UAAI,aAAa,aAAa;AAC5B,aAAK,iBAAiB;AAAA,MACxB;AACA,WAAK,sBAAsB;AAAA,IAC7B;AACA,QAAI,KAAK,mBAAmB;AAC1B,YAAM,IAAI,MAAM,kCAAkC;AACpD,WAAO,KAAK;AAAA,EACd;AAAA,EAEU,WAAW;AACnB,UAAM,WAAW,MAAM;AACrB,WAAK,sBAAsB;AAC3B,WAAK,kBAAkB;AAAA,IACzB;AAEA,WAAO,KAAK,QAAQ,UAAU,QAAQ;AAAA,EACxC;AACF;","names":[]}
@@ -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
+
20
+ // src/api/subscribable/NestedSubscriptionSubject.ts
19
21
  var NestedSubscriptionSubject_exports = {};
20
22
  __export(NestedSubscriptionSubject_exports, {
21
23
  NestedSubscriptionSubject: () => NestedSubscriptionSubject
22
24
  });
23
25
  module.exports = __toCommonJS(NestedSubscriptionSubject_exports);
24
- var import_BaseSubject = require("./BaseSubject");
25
- class NestedSubscriptionSubject extends import_BaseSubject.BaseSubject {
26
+ var import_BaseSubject = require("./BaseSubject.cjs");
27
+ var NestedSubscriptionSubject = class extends import_BaseSubject.BaseSubject {
26
28
  constructor(binding) {
27
29
  super();
28
30
  this.binding = binding;
@@ -56,7 +58,7 @@ class NestedSubscriptionSubject extends import_BaseSubject.BaseSubject {
56
58
  innerUnsubscribe?.();
57
59
  };
58
60
  }
59
- }
61
+ };
60
62
  // Annotate the CommonJS export names for ESM import in node:
61
63
  0 && (module.exports = {
62
64
  NestedSubscriptionSubject
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/subscribable/NestedSubscriptionSubject.ts"],"sourcesContent":["import { Unsubscribe } from \"../../types\";\nimport { BaseSubject } from \"./BaseSubject\";\nimport {\n NestedSubscribable,\n Subscribable,\n SubscribableWithState,\n} from \"./Subscribable\";\n\nexport class NestedSubscriptionSubject<TState extends Subscribable | undefined, TPath>\n extends BaseSubject\n implements SubscribableWithState<TState, TPath>, NestedSubscribable<TState, TPath>\n{\n public get path() {\n return this.binding.path;\n }\n\n constructor(private binding: NestedSubscribable<TState, TPath>) {\n super();\n }\n\n public getState() {\n return this.binding.getState();\n }\n\n public outerSubscribe(callback: () => void) {\n return this.binding.subscribe(callback);\n }\n\n protected _connect(): Unsubscribe {\n const callback = () => {\n this.notifySubscribers();\n };\n\n let lastState = this.binding.getState();\n let innerUnsubscribe = lastState?.subscribe(callback);\n const onRuntimeUpdate = () => {\n const newState = this.binding.getState();\n if (newState === lastState) return;\n lastState = newState;\n\n innerUnsubscribe?.();\n innerUnsubscribe = this.binding.getState()?.subscribe(callback);\n\n callback();\n };\n\n const outerUnsubscribe = this.outerSubscribe(onRuntimeUpdate);\n return () => {\n outerUnsubscribe?.();\n innerUnsubscribe?.();\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA4B;AAOrB,MAAM,kCACH,+BAEV;AAAA,EAKE,YAAoB,SAA4C;AAC9D,UAAM;AADY;AAAA,EAEpB;AAAA,EANA,IAAW,OAAO;AAChB,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAMO,WAAW;AAChB,WAAO,KAAK,QAAQ,SAAS;AAAA,EAC/B;AAAA,EAEO,eAAe,UAAsB;AAC1C,WAAO,KAAK,QAAQ,UAAU,QAAQ;AAAA,EACxC;AAAA,EAEU,WAAwB;AAChC,UAAM,WAAW,MAAM;AACrB,WAAK,kBAAkB;AAAA,IACzB;AAEA,QAAI,YAAY,KAAK,QAAQ,SAAS;AACtC,QAAI,mBAAmB,WAAW,UAAU,QAAQ;AACpD,UAAM,kBAAkB,MAAM;AAC5B,YAAM,WAAW,KAAK,QAAQ,SAAS;AACvC,UAAI,aAAa,UAAW;AAC5B,kBAAY;AAEZ,yBAAmB;AACnB,yBAAmB,KAAK,QAAQ,SAAS,GAAG,UAAU,QAAQ;AAE9D,eAAS;AAAA,IACX;AAEA,UAAM,mBAAmB,KAAK,eAAe,eAAe;AAC5D,WAAO,MAAM;AACX,yBAAmB;AACnB,yBAAmB;AAAA,IACrB;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/api/subscribable/NestedSubscriptionSubject.ts"],"sourcesContent":["import { Unsubscribe } from \"../../types\";\nimport { BaseSubject } from \"./BaseSubject\";\nimport {\n NestedSubscribable,\n Subscribable,\n SubscribableWithState,\n} from \"./Subscribable\";\n\nexport class NestedSubscriptionSubject<TState extends Subscribable | undefined, TPath>\n extends BaseSubject\n implements SubscribableWithState<TState, TPath>, NestedSubscribable<TState, TPath>\n{\n public get path() {\n return this.binding.path;\n }\n\n constructor(private binding: NestedSubscribable<TState, TPath>) {\n super();\n }\n\n public getState() {\n return this.binding.getState();\n }\n\n public outerSubscribe(callback: () => void) {\n return this.binding.subscribe(callback);\n }\n\n protected _connect(): Unsubscribe {\n const callback = () => {\n this.notifySubscribers();\n };\n\n let lastState = this.binding.getState();\n let innerUnsubscribe = lastState?.subscribe(callback);\n const onRuntimeUpdate = () => {\n const newState = this.binding.getState();\n if (newState === lastState) return;\n lastState = newState;\n\n innerUnsubscribe?.();\n innerUnsubscribe = this.binding.getState()?.subscribe(callback);\n\n callback();\n };\n\n const outerUnsubscribe = this.outerSubscribe(onRuntimeUpdate);\n return () => {\n outerUnsubscribe?.();\n innerUnsubscribe?.();\n };\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAA4B;AAOrB,IAAM,4BAAN,cACG,+BAEV;AAAA,EAKE,YAAoB,SAA4C;AAC9D,UAAM;AADY;AAAA,EAEpB;AAAA,EANA,IAAW,OAAO;AAChB,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAMO,WAAW;AAChB,WAAO,KAAK,QAAQ,SAAS;AAAA,EAC/B;AAAA,EAEO,eAAe,UAAsB;AAC1C,WAAO,KAAK,QAAQ,UAAU,QAAQ;AAAA,EACxC;AAAA,EAEU,WAAwB;AAChC,UAAM,WAAW,MAAM;AACrB,WAAK,kBAAkB;AAAA,IACzB;AAEA,QAAI,YAAY,KAAK,QAAQ,SAAS;AACtC,QAAI,mBAAmB,WAAW,UAAU,QAAQ;AACpD,UAAM,kBAAkB,MAAM;AAC5B,YAAM,WAAW,KAAK,QAAQ,SAAS;AACvC,UAAI,aAAa,UAAW;AAC5B,kBAAY;AAEZ,yBAAmB;AACnB,yBAAmB,KAAK,QAAQ,SAAS,GAAG,UAAU,QAAQ;AAE9D,eAAS;AAAA,IACX;AAEA,UAAM,mBAAmB,KAAK,eAAe,eAAe;AAC5D,WAAO,MAAM;AACX,yBAAmB;AACnB,yBAAmB;AAAA,IACrB;AAAA,EACF;AACF;","names":[]}