@assistant-ui/react 0.10.0 → 0.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (826) hide show
  1. package/dist/api/AssistantRuntime.d.ts +64 -0
  2. package/dist/api/AssistantRuntime.d.ts.map +1 -0
  3. package/dist/api/AssistantRuntime.js +5 -4
  4. package/dist/api/AssistantRuntime.js.map +1 -1
  5. package/dist/api/AttachmentRuntime.d.ts +63 -0
  6. package/dist/api/AttachmentRuntime.d.ts.map +1 -0
  7. package/dist/api/AttachmentRuntime.js +11 -10
  8. package/dist/api/AttachmentRuntime.js.map +1 -1
  9. package/dist/api/ComposerRuntime.d.ts +114 -0
  10. package/dist/api/ComposerRuntime.d.ts.map +1 -0
  11. package/dist/api/ComposerRuntime.js +16 -15
  12. package/dist/api/ComposerRuntime.js.map +1 -1
  13. package/dist/api/ContentPartRuntime.d.ts +33 -0
  14. package/dist/api/ContentPartRuntime.d.ts.map +1 -0
  15. package/dist/api/ContentPartRuntime.js +3 -2
  16. package/dist/api/ContentPartRuntime.js.map +1 -1
  17. package/dist/api/MessageRuntime.d.ts +80 -0
  18. package/dist/api/MessageRuntime.d.ts.map +1 -0
  19. package/dist/api/MessageRuntime.js +14 -13
  20. package/dist/api/MessageRuntime.js.map +1 -1
  21. package/dist/api/RuntimePathTypes.d.ts +64 -0
  22. package/dist/api/RuntimePathTypes.d.ts.map +1 -0
  23. package/dist/api/ThreadListItemRuntime.d.ts +55 -0
  24. package/dist/api/ThreadListItemRuntime.d.ts.map +1 -0
  25. package/dist/api/ThreadListItemRuntime.js +3 -2
  26. package/dist/api/ThreadListItemRuntime.js.map +1 -1
  27. package/dist/api/ThreadListRuntime.d.ts +42 -0
  28. package/dist/api/ThreadListRuntime.d.ts.map +1 -0
  29. package/dist/api/ThreadListRuntime.js +11 -10
  30. package/dist/api/ThreadListRuntime.js.map +1 -1
  31. package/dist/api/ThreadRuntime.d.ts +216 -0
  32. package/dist/api/ThreadRuntime.d.ts.map +1 -0
  33. package/dist/api/ThreadRuntime.js +14 -13
  34. package/dist/api/ThreadRuntime.js.map +1 -1
  35. package/dist/api/index.d.ts +9 -0
  36. package/dist/api/index.d.ts.map +1 -0
  37. package/dist/api/subscribable/BaseSubject.d.ts +11 -0
  38. package/dist/api/subscribable/BaseSubject.d.ts.map +1 -0
  39. package/dist/api/subscribable/BaseSubject.js +3 -2
  40. package/dist/api/subscribable/BaseSubject.js.map +1 -1
  41. package/dist/api/subscribable/EventSubscriptionSubject.d.ts +13 -0
  42. package/dist/api/subscribable/EventSubscriptionSubject.d.ts.map +1 -0
  43. package/dist/api/subscribable/EventSubscriptionSubject.js +4 -3
  44. package/dist/api/subscribable/EventSubscriptionSubject.js.map +1 -1
  45. package/dist/api/subscribable/LazyMemoizeSubject.d.ts +13 -0
  46. package/dist/api/subscribable/LazyMemoizeSubject.d.ts.map +1 -0
  47. package/dist/api/subscribable/LazyMemoizeSubject.js +5 -4
  48. package/dist/api/subscribable/LazyMemoizeSubject.js.map +1 -1
  49. package/dist/api/subscribable/NestedSubscriptionSubject.d.ts +12 -0
  50. package/dist/api/subscribable/NestedSubscriptionSubject.d.ts.map +1 -0
  51. package/dist/api/subscribable/NestedSubscriptionSubject.js +4 -3
  52. package/dist/api/subscribable/NestedSubscriptionSubject.js.map +1 -1
  53. package/dist/api/subscribable/SKIP_UPDATE.d.ts +3 -0
  54. package/dist/api/subscribable/SKIP_UPDATE.d.ts.map +1 -0
  55. package/dist/api/subscribable/SKIP_UPDATE.js +2 -1
  56. package/dist/api/subscribable/SKIP_UPDATE.js.map +1 -1
  57. package/dist/api/subscribable/ShallowMemoizeSubject.d.ts +13 -0
  58. package/dist/api/subscribable/ShallowMemoizeSubject.d.ts.map +1 -0
  59. package/dist/api/subscribable/ShallowMemoizeSubject.js +6 -5
  60. package/dist/api/subscribable/ShallowMemoizeSubject.js.map +1 -1
  61. package/dist/api/subscribable/Subscribable.d.ts +16 -0
  62. package/dist/api/subscribable/Subscribable.d.ts.map +1 -0
  63. package/dist/api/subscribable/shallowEqual.d.ts +2 -0
  64. package/dist/api/subscribable/shallowEqual.d.ts.map +1 -0
  65. package/dist/api/subscribable/shallowEqual.js +1 -0
  66. package/dist/api/subscribable/shallowEqual.js.map +1 -1
  67. package/dist/cloud/AssistantCloud.d.ts +13 -0
  68. package/dist/cloud/AssistantCloud.d.ts.map +1 -0
  69. package/dist/cloud/AssistantCloud.js +7 -6
  70. package/dist/cloud/AssistantCloud.js.map +1 -1
  71. package/dist/cloud/AssistantCloudAPI.d.ts +27 -0
  72. package/dist/cloud/AssistantCloudAPI.d.ts.map +1 -0
  73. package/dist/cloud/AssistantCloudAPI.js +6 -5
  74. package/dist/cloud/AssistantCloudAPI.js.map +1 -1
  75. package/dist/cloud/AssistantCloudAuthStrategy.d.ts +30 -0
  76. package/dist/cloud/AssistantCloudAuthStrategy.d.ts.map +1 -0
  77. package/dist/cloud/AssistantCloudAuthStrategy.js +9 -8
  78. package/dist/cloud/AssistantCloudAuthStrategy.js.map +1 -1
  79. package/dist/cloud/AssistantCloudAuthTokens.d.ts +11 -0
  80. package/dist/cloud/AssistantCloudAuthTokens.d.ts.map +1 -0
  81. package/dist/cloud/AssistantCloudAuthTokens.js +3 -2
  82. package/dist/cloud/AssistantCloudAuthTokens.js.map +1 -1
  83. package/dist/cloud/AssistantCloudRuns.d.ts +15 -0
  84. package/dist/cloud/AssistantCloudRuns.d.ts.map +1 -0
  85. package/dist/cloud/AssistantCloudRuns.js +3 -2
  86. package/dist/cloud/AssistantCloudRuns.js.map +1 -1
  87. package/dist/cloud/AssistantCloudThreadHistoryAdapter.d.ts +5 -0
  88. package/dist/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -0
  89. package/dist/cloud/AssistantCloudThreadHistoryAdapter.js +6 -5
  90. package/dist/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
  91. package/dist/cloud/AssistantCloudThreadMessages.d.ts +30 -0
  92. package/dist/cloud/AssistantCloudThreadMessages.d.ts.map +1 -0
  93. package/dist/cloud/AssistantCloudThreadMessages.js +3 -2
  94. package/dist/cloud/AssistantCloudThreadMessages.js.map +1 -1
  95. package/dist/cloud/AssistantCloudThreads.d.ts +48 -0
  96. package/dist/cloud/AssistantCloudThreads.d.ts.map +1 -0
  97. package/dist/cloud/AssistantCloudThreads.js +4 -3
  98. package/dist/cloud/AssistantCloudThreads.js.map +1 -1
  99. package/dist/cloud/auiV0.d.ts +54 -0
  100. package/dist/cloud/auiV0.d.ts.map +1 -0
  101. package/dist/cloud/auiV0.js +5 -4
  102. package/dist/cloud/auiV0.js.map +1 -1
  103. package/dist/cloud/index.d.ts +3 -0
  104. package/dist/cloud/index.d.ts.map +1 -0
  105. package/dist/cloud/index.js +3 -2
  106. package/dist/cloud/index.js.map +1 -1
  107. package/dist/cloud/useCloudThreadListRuntime.d.ts +14 -0
  108. package/dist/cloud/useCloudThreadListRuntime.d.ts.map +1 -0
  109. package/dist/cloud/useCloudThreadListRuntime.js +5 -3
  110. package/dist/cloud/useCloudThreadListRuntime.js.map +1 -1
  111. package/dist/context/ReadonlyStore.d.ts +4 -0
  112. package/dist/context/ReadonlyStore.d.ts.map +1 -0
  113. package/dist/context/ReadonlyStore.js +2 -1
  114. package/dist/context/ReadonlyStore.js.map +1 -1
  115. package/dist/context/index.d.ts +4 -0
  116. package/dist/context/index.d.ts.map +1 -0
  117. package/dist/context/index.js +4 -3
  118. package/dist/context/index.js.map +1 -1
  119. package/dist/context/providers/AssistantRuntimeProvider.d.ts +13 -0
  120. package/dist/context/providers/AssistantRuntimeProvider.d.ts.map +1 -0
  121. package/dist/context/providers/AssistantRuntimeProvider.js +13 -11
  122. package/dist/context/providers/AssistantRuntimeProvider.js.map +1 -1
  123. package/dist/context/providers/AttachmentRuntimeProvider.d.ts +9 -0
  124. package/dist/context/providers/AttachmentRuntimeProvider.d.ts.map +1 -0
  125. package/dist/context/providers/AttachmentRuntimeProvider.js +8 -6
  126. package/dist/context/providers/AttachmentRuntimeProvider.js.map +1 -1
  127. package/dist/context/providers/ContentPartRuntimeProvider.d.ts +9 -0
  128. package/dist/context/providers/ContentPartRuntimeProvider.d.ts.map +1 -0
  129. package/dist/context/providers/ContentPartRuntimeProvider.js +8 -6
  130. package/dist/context/providers/ContentPartRuntimeProvider.js.map +1 -1
  131. package/dist/context/providers/MessageRuntimeProvider.d.ts +9 -0
  132. package/dist/context/providers/MessageRuntimeProvider.d.ts.map +1 -0
  133. package/dist/context/providers/MessageRuntimeProvider.js +10 -8
  134. package/dist/context/providers/MessageRuntimeProvider.js.map +1 -1
  135. package/dist/context/providers/TextContentPartProvider.d.ts +9 -0
  136. package/dist/context/providers/TextContentPartProvider.d.ts.map +1 -0
  137. package/dist/context/providers/TextContentPartProvider.js +10 -8
  138. package/dist/context/providers/TextContentPartProvider.js.map +1 -1
  139. package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts +9 -0
  140. package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts.map +1 -0
  141. package/dist/context/providers/ThreadListItemRuntimeProvider.js +8 -6
  142. package/dist/context/providers/ThreadListItemRuntimeProvider.js.map +1 -1
  143. package/dist/context/providers/ThreadRuntimeProvider.d.ts +10 -0
  144. package/dist/context/providers/ThreadRuntimeProvider.d.ts.map +1 -0
  145. package/dist/context/providers/ThreadRuntimeProvider.js +10 -8
  146. package/dist/context/providers/ThreadRuntimeProvider.js.map +1 -1
  147. package/dist/context/providers/ThreadViewportProvider.d.ts +3 -0
  148. package/dist/context/providers/ThreadViewportProvider.d.ts.map +1 -0
  149. package/dist/context/providers/ThreadViewportProvider.js +8 -6
  150. package/dist/context/providers/ThreadViewportProvider.js.map +1 -1
  151. package/dist/context/providers/index.d.ts +3 -0
  152. package/dist/context/providers/index.d.ts.map +1 -0
  153. package/dist/context/providers/index.js +3 -2
  154. package/dist/context/providers/index.js.map +1 -1
  155. package/dist/context/react/AssistantContext.d.ts +62 -0
  156. package/dist/context/react/AssistantContext.d.ts.map +1 -0
  157. package/dist/context/react/AssistantContext.js +10 -8
  158. package/dist/context/react/AssistantContext.js.map +1 -1
  159. package/dist/context/react/AttachmentContext.d.ts +836 -0
  160. package/dist/context/react/AttachmentContext.d.ts.map +1 -0
  161. package/dist/context/react/AttachmentContext.js +10 -8
  162. package/dist/context/react/AttachmentContext.js.map +1 -1
  163. package/dist/context/react/ComposerContext.d.ts +35 -0
  164. package/dist/context/react/ComposerContext.d.ts.map +1 -0
  165. package/dist/context/react/ComposerContext.js +6 -4
  166. package/dist/context/react/ComposerContext.js.map +1 -1
  167. package/dist/context/react/ContentPartContext.d.ts +41 -0
  168. package/dist/context/react/ContentPartContext.d.ts.map +1 -0
  169. package/dist/context/react/ContentPartContext.js +7 -5
  170. package/dist/context/react/ContentPartContext.js.map +1 -1
  171. package/dist/context/react/MessageContext.d.ts +86 -0
  172. package/dist/context/react/MessageContext.d.ts.map +1 -0
  173. package/dist/context/react/MessageContext.js +11 -9
  174. package/dist/context/react/MessageContext.js.map +1 -1
  175. package/dist/context/react/ThreadContext.d.ts +75 -0
  176. package/dist/context/react/ThreadContext.d.ts.map +1 -0
  177. package/dist/context/react/ThreadContext.js +9 -7
  178. package/dist/context/react/ThreadContext.js.map +1 -1
  179. package/dist/context/react/ThreadListItemContext.d.ts +41 -0
  180. package/dist/context/react/ThreadListItemContext.d.ts.map +1 -0
  181. package/dist/context/react/ThreadListItemContext.js +7 -5
  182. package/dist/context/react/ThreadListItemContext.js.map +1 -1
  183. package/dist/context/react/ThreadViewportContext.d.ts +24 -0
  184. package/dist/context/react/ThreadViewportContext.d.ts.map +1 -0
  185. package/dist/context/react/ThreadViewportContext.js +7 -5
  186. package/dist/context/react/ThreadViewportContext.js.map +1 -1
  187. package/dist/context/react/index.d.ts +14 -0
  188. package/dist/context/react/index.d.ts.map +1 -0
  189. package/dist/context/react/index.js +11 -9
  190. package/dist/context/react/index.js.map +1 -1
  191. package/dist/context/react/utils/createContextHook.d.ts +11 -0
  192. package/dist/context/react/utils/createContextHook.d.ts.map +1 -0
  193. package/dist/context/react/utils/createContextHook.js +2 -0
  194. package/dist/context/react/utils/createContextHook.js.map +1 -1
  195. package/dist/context/react/utils/createContextStoreHook.d.ts +26 -0
  196. package/dist/context/react/utils/createContextStoreHook.d.ts.map +1 -0
  197. package/dist/context/react/utils/createContextStoreHook.js +1 -0
  198. package/dist/context/react/utils/createContextStoreHook.js.map +1 -1
  199. package/dist/context/react/utils/createStateHookForRuntime.d.ts +31 -0
  200. package/dist/context/react/utils/createStateHookForRuntime.d.ts.map +1 -0
  201. package/dist/context/react/utils/createStateHookForRuntime.js +2 -1
  202. package/dist/context/react/utils/createStateHookForRuntime.js.map +1 -1
  203. package/dist/context/react/utils/ensureBinding.d.ts +2 -0
  204. package/dist/context/react/utils/ensureBinding.d.ts.map +1 -0
  205. package/dist/context/react/utils/ensureBinding.js +2 -21
  206. package/dist/context/react/utils/ensureBinding.js.map +1 -1
  207. package/dist/context/react/utils/useRuntimeState.d.ts +10 -0
  208. package/dist/context/react/utils/useRuntimeState.d.ts.map +1 -0
  209. package/dist/context/react/utils/useRuntimeState.js +3 -2
  210. package/dist/context/react/utils/useRuntimeState.js.map +1 -1
  211. package/dist/context/stores/AssistantToolUIs.d.ts +14 -0
  212. package/dist/context/stores/AssistantToolUIs.d.ts.map +1 -0
  213. package/dist/context/stores/AssistantToolUIs.js +2 -1
  214. package/dist/context/stores/AssistantToolUIs.js.map +1 -1
  215. package/dist/context/stores/MessageUtils.d.ts +8 -0
  216. package/dist/context/stores/MessageUtils.d.ts.map +1 -0
  217. package/dist/context/stores/MessageUtils.js +2 -1
  218. package/dist/context/stores/MessageUtils.js.map +1 -1
  219. package/dist/context/stores/ThreadViewport.d.ts +8 -0
  220. package/dist/context/stores/ThreadViewport.d.ts.map +1 -0
  221. package/dist/context/stores/ThreadViewport.js +3 -1
  222. package/dist/context/stores/ThreadViewport.js.map +1 -1
  223. package/dist/context/stores/index.d.ts +4 -0
  224. package/dist/context/stores/index.d.ts.map +1 -0
  225. package/dist/index.d.ts +9 -0
  226. package/dist/index.d.ts.map +1 -0
  227. package/dist/index.js +9 -8
  228. package/dist/index.js.map +1 -1
  229. package/dist/internal.d.ts +14 -0
  230. package/dist/internal.d.ts.map +1 -0
  231. package/dist/internal.js +12 -11
  232. package/dist/internal.js.map +1 -1
  233. package/dist/model-context/ModelContextTypes.d.ts +29 -0
  234. package/dist/model-context/ModelContextTypes.d.ts.map +1 -0
  235. package/dist/model-context/ModelContextTypes.js +2 -1
  236. package/dist/model-context/ModelContextTypes.js.map +1 -1
  237. package/dist/model-context/index.d.ts +23 -0
  238. package/dist/model-context/index.d.ts.map +1 -0
  239. package/dist/model-context/index.js +10 -9
  240. package/dist/model-context/index.js.map +1 -1
  241. package/dist/model-context/makeAssistantTool.d.ts +7 -0
  242. package/dist/model-context/makeAssistantTool.d.ts.map +1 -0
  243. package/dist/model-context/makeAssistantTool.js +4 -2
  244. package/dist/model-context/makeAssistantTool.js.map +1 -1
  245. package/dist/model-context/makeAssistantToolUI.d.ts +7 -0
  246. package/dist/model-context/makeAssistantToolUI.d.ts.map +1 -0
  247. package/dist/model-context/makeAssistantToolUI.js +4 -2
  248. package/dist/model-context/makeAssistantToolUI.js.map +1 -1
  249. package/dist/model-context/makeAssistantVisible.d.ts +7 -0
  250. package/dist/model-context/makeAssistantVisible.d.ts.map +1 -0
  251. package/dist/model-context/makeAssistantVisible.js +9 -7
  252. package/dist/model-context/makeAssistantVisible.js.map +1 -1
  253. package/dist/model-context/tool.d.ts +12 -0
  254. package/dist/model-context/tool.d.ts.map +1 -0
  255. package/dist/model-context/tool.js +1 -0
  256. package/dist/model-context/tool.js.map +1 -1
  257. package/dist/model-context/useAssistantInstructions.d.ts +7 -0
  258. package/dist/model-context/useAssistantInstructions.d.ts.map +1 -0
  259. package/dist/model-context/useAssistantInstructions.js +5 -3
  260. package/dist/model-context/useAssistantInstructions.js.map +1 -1
  261. package/dist/model-context/useAssistantTool.d.ts +9 -0
  262. package/dist/model-context/useAssistantTool.d.ts.map +1 -0
  263. package/dist/model-context/useAssistantTool.js +4 -2
  264. package/dist/model-context/useAssistantTool.js.map +1 -1
  265. package/dist/model-context/useAssistantToolUI.d.ts +7 -0
  266. package/dist/model-context/useAssistantToolUI.d.ts.map +1 -0
  267. package/dist/model-context/useAssistantToolUI.js +4 -2
  268. package/dist/model-context/useAssistantToolUI.js.map +1 -1
  269. package/dist/model-context/useInlineRender.d.ts +4 -0
  270. package/dist/model-context/useInlineRender.d.ts.map +1 -0
  271. package/dist/model-context/useInlineRender.js +3 -1
  272. package/dist/model-context/useInlineRender.js.map +1 -1
  273. package/dist/primitives/actionBar/ActionBarCopy.d.ts +15 -0
  274. package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -0
  275. package/dist/primitives/actionBar/ActionBarCopy.js +8 -6
  276. package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
  277. package/dist/primitives/actionBar/ActionBarEdit.d.ts +11 -0
  278. package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -0
  279. package/dist/primitives/actionBar/ActionBarEdit.js +6 -4
  280. package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
  281. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts +11 -0
  282. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -0
  283. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +7 -5
  284. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
  285. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts +11 -0
  286. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -0
  287. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +6 -4
  288. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
  289. package/dist/primitives/actionBar/ActionBarReload.d.ts +11 -0
  290. package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -0
  291. package/dist/primitives/actionBar/ActionBarReload.js +8 -6
  292. package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
  293. package/dist/primitives/actionBar/ActionBarRoot.d.ts +20 -0
  294. package/dist/primitives/actionBar/ActionBarRoot.d.ts.map +1 -0
  295. package/dist/primitives/actionBar/ActionBarRoot.js +5 -3
  296. package/dist/primitives/actionBar/ActionBarRoot.js.map +1 -1
  297. package/dist/primitives/actionBar/ActionBarSpeak.d.ts +11 -0
  298. package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -0
  299. package/dist/primitives/actionBar/ActionBarSpeak.js +6 -4
  300. package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
  301. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts +11 -0
  302. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -0
  303. package/dist/primitives/actionBar/ActionBarStopSpeaking.js +6 -4
  304. package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
  305. package/dist/primitives/actionBar/index.d.ts +9 -0
  306. package/dist/primitives/actionBar/index.d.ts.map +1 -0
  307. package/dist/primitives/actionBar/index.js +9 -8
  308. package/dist/primitives/actionBar/index.js.map +1 -1
  309. package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts +12 -0
  310. package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts.map +1 -0
  311. package/dist/primitives/actionBar/useActionBarFloatStatus.js +6 -4
  312. package/dist/primitives/actionBar/useActionBarFloatStatus.js.map +1 -1
  313. package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts +8 -0
  314. package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts.map +1 -0
  315. package/dist/primitives/assistantModal/AssistantModalAnchor.js +5 -3
  316. package/dist/primitives/assistantModal/AssistantModalAnchor.js.map +1 -1
  317. package/dist/primitives/assistantModal/AssistantModalContent.d.ts +12 -0
  318. package/dist/primitives/assistantModal/AssistantModalContent.d.ts.map +1 -0
  319. package/dist/primitives/assistantModal/AssistantModalContent.js +5 -3
  320. package/dist/primitives/assistantModal/AssistantModalContent.js.map +1 -1
  321. package/dist/primitives/assistantModal/AssistantModalRoot.d.ts +9 -0
  322. package/dist/primitives/assistantModal/AssistantModalRoot.d.ts.map +1 -0
  323. package/dist/primitives/assistantModal/AssistantModalRoot.js +7 -5
  324. package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
  325. package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts +8 -0
  326. package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts.map +1 -0
  327. package/dist/primitives/assistantModal/AssistantModalTrigger.js +4 -3
  328. package/dist/primitives/assistantModal/AssistantModalTrigger.js.map +1 -1
  329. package/dist/primitives/assistantModal/index.d.ts +5 -0
  330. package/dist/primitives/assistantModal/index.d.ts.map +1 -0
  331. package/dist/primitives/assistantModal/index.js +5 -4
  332. package/dist/primitives/assistantModal/index.js.map +1 -1
  333. package/dist/primitives/assistantModal/scope.d.ts +8 -0
  334. package/dist/primitives/assistantModal/scope.d.ts.map +1 -0
  335. package/dist/primitives/assistantModal/scope.js +2 -1
  336. package/dist/primitives/assistantModal/scope.js.map +1 -1
  337. package/dist/primitives/attachment/AttachmentName.d.ts +6 -0
  338. package/dist/primitives/attachment/AttachmentName.d.ts.map +1 -0
  339. package/dist/primitives/attachment/AttachmentName.js +4 -2
  340. package/dist/primitives/attachment/AttachmentName.js.map +1 -1
  341. package/dist/primitives/attachment/AttachmentRemove.d.ts +11 -0
  342. package/dist/primitives/attachment/AttachmentRemove.d.ts.map +1 -0
  343. package/dist/primitives/attachment/AttachmentRemove.js +6 -4
  344. package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
  345. package/dist/primitives/attachment/AttachmentRoot.d.ts +12 -0
  346. package/dist/primitives/attachment/AttachmentRoot.d.ts.map +1 -0
  347. package/dist/primitives/attachment/AttachmentRoot.js +3 -2
  348. package/dist/primitives/attachment/AttachmentRoot.js.map +1 -1
  349. package/dist/primitives/attachment/AttachmentThumb.d.ts +12 -0
  350. package/dist/primitives/attachment/AttachmentThumb.d.ts.map +1 -0
  351. package/dist/primitives/attachment/AttachmentThumb.js +5 -3
  352. package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
  353. package/dist/primitives/attachment/index.d.ts +5 -0
  354. package/dist/primitives/attachment/index.d.ts.map +1 -0
  355. package/dist/primitives/attachment/index.js +5 -4
  356. package/dist/primitives/attachment/index.js.map +1 -1
  357. package/dist/primitives/branchPicker/BranchPickerCount.d.ts +6 -0
  358. package/dist/primitives/branchPicker/BranchPickerCount.d.ts.map +1 -0
  359. package/dist/primitives/branchPicker/BranchPickerCount.js +5 -3
  360. package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
  361. package/dist/primitives/branchPicker/BranchPickerNext.d.ts +11 -0
  362. package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -0
  363. package/dist/primitives/branchPicker/BranchPickerNext.js +6 -4
  364. package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
  365. package/dist/primitives/branchPicker/BranchPickerNumber.d.ts +6 -0
  366. package/dist/primitives/branchPicker/BranchPickerNumber.d.ts.map +1 -0
  367. package/dist/primitives/branchPicker/BranchPickerNumber.js +5 -3
  368. package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
  369. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +11 -0
  370. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -0
  371. package/dist/primitives/branchPicker/BranchPickerPrevious.js +6 -4
  372. package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
  373. package/dist/primitives/branchPicker/BranchPickerRoot.d.ts +14 -0
  374. package/dist/primitives/branchPicker/BranchPickerRoot.d.ts.map +1 -0
  375. package/dist/primitives/branchPicker/BranchPickerRoot.js +4 -3
  376. package/dist/primitives/branchPicker/BranchPickerRoot.js.map +1 -1
  377. package/dist/primitives/branchPicker/index.d.ts +6 -0
  378. package/dist/primitives/branchPicker/index.d.ts.map +1 -0
  379. package/dist/primitives/branchPicker/index.js +6 -5
  380. package/dist/primitives/branchPicker/index.js.map +1 -1
  381. package/dist/primitives/composer/ComposerAddAttachment.d.ts +17 -0
  382. package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -0
  383. package/dist/primitives/composer/ComposerAddAttachment.js +6 -4
  384. package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
  385. package/dist/primitives/composer/ComposerAttachments.d.ts +13 -0
  386. package/dist/primitives/composer/ComposerAttachments.d.ts.map +1 -0
  387. package/dist/primitives/composer/ComposerAttachments.js +11 -9
  388. package/dist/primitives/composer/ComposerAttachments.js.map +1 -1
  389. package/dist/primitives/composer/ComposerCancel.d.ts +11 -0
  390. package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -0
  391. package/dist/primitives/composer/ComposerCancel.js +6 -4
  392. package/dist/primitives/composer/ComposerCancel.js.map +1 -1
  393. package/dist/primitives/composer/ComposerIf.d.ts +12 -0
  394. package/dist/primitives/composer/ComposerIf.d.ts.map +1 -0
  395. package/dist/primitives/composer/ComposerIf.js +5 -3
  396. package/dist/primitives/composer/ComposerIf.js.map +1 -1
  397. package/dist/primitives/composer/ComposerInput.d.ts +21 -0
  398. package/dist/primitives/composer/ComposerInput.d.ts.map +1 -0
  399. package/dist/primitives/composer/ComposerInput.js +8 -6
  400. package/dist/primitives/composer/ComposerInput.js.map +1 -1
  401. package/dist/primitives/composer/ComposerRoot.d.ts +10 -0
  402. package/dist/primitives/composer/ComposerRoot.d.ts.map +1 -0
  403. package/dist/primitives/composer/ComposerRoot.js +5 -3
  404. package/dist/primitives/composer/ComposerRoot.js.map +1 -1
  405. package/dist/primitives/composer/ComposerSend.d.ts +10 -0
  406. package/dist/primitives/composer/ComposerSend.d.ts.map +1 -0
  407. package/dist/primitives/composer/ComposerSend.js +8 -6
  408. package/dist/primitives/composer/ComposerSend.js.map +1 -1
  409. package/dist/primitives/composer/index.d.ts +8 -0
  410. package/dist/primitives/composer/index.d.ts.map +1 -0
  411. package/dist/primitives/composer/index.js +8 -7
  412. package/dist/primitives/composer/index.js.map +1 -1
  413. package/dist/primitives/contentPart/ContentPartImage.d.ts +10 -0
  414. package/dist/primitives/contentPart/ContentPartImage.d.ts.map +1 -0
  415. package/dist/primitives/contentPart/ContentPartImage.js +5 -3
  416. package/dist/primitives/contentPart/ContentPartImage.js.map +1 -1
  417. package/dist/primitives/contentPart/ContentPartInProgress.d.ts +6 -0
  418. package/dist/primitives/contentPart/ContentPartInProgress.d.ts.map +1 -0
  419. package/dist/primitives/contentPart/ContentPartInProgress.js +4 -2
  420. package/dist/primitives/contentPart/ContentPartInProgress.js.map +1 -1
  421. package/dist/primitives/contentPart/ContentPartText.d.ts +16 -0
  422. package/dist/primitives/contentPart/ContentPartText.d.ts.map +1 -0
  423. package/dist/primitives/contentPart/ContentPartText.js +6 -4
  424. package/dist/primitives/contentPart/ContentPartText.js.map +1 -1
  425. package/dist/primitives/contentPart/index.d.ts +4 -0
  426. package/dist/primitives/contentPart/index.d.ts.map +1 -0
  427. package/dist/primitives/contentPart/index.js +4 -3
  428. package/dist/primitives/contentPart/index.js.map +1 -1
  429. package/dist/primitives/contentPart/useContentPartFile.d.ts +5 -0
  430. package/dist/primitives/contentPart/useContentPartFile.d.ts.map +1 -0
  431. package/dist/primitives/contentPart/useContentPartFile.js +4 -2
  432. package/dist/primitives/contentPart/useContentPartFile.js.map +1 -1
  433. package/dist/primitives/contentPart/useContentPartImage.d.ts +5 -0
  434. package/dist/primitives/contentPart/useContentPartImage.d.ts.map +1 -0
  435. package/dist/primitives/contentPart/useContentPartImage.js +4 -2
  436. package/dist/primitives/contentPart/useContentPartImage.js.map +1 -1
  437. package/dist/primitives/contentPart/useContentPartReasoning.d.ts +5 -0
  438. package/dist/primitives/contentPart/useContentPartReasoning.d.ts.map +1 -0
  439. package/dist/primitives/contentPart/useContentPartReasoning.js +4 -2
  440. package/dist/primitives/contentPart/useContentPartReasoning.js.map +1 -1
  441. package/dist/primitives/contentPart/useContentPartSource.d.ts +5 -0
  442. package/dist/primitives/contentPart/useContentPartSource.d.ts.map +1 -0
  443. package/dist/primitives/contentPart/useContentPartSource.js +4 -2
  444. package/dist/primitives/contentPart/useContentPartSource.js.map +1 -1
  445. package/dist/primitives/contentPart/useContentPartText.d.ts +7 -0
  446. package/dist/primitives/contentPart/useContentPartText.d.ts.map +1 -0
  447. package/dist/primitives/contentPart/useContentPartText.js +4 -2
  448. package/dist/primitives/contentPart/useContentPartText.js.map +1 -1
  449. package/dist/primitives/index.d.ts +17 -0
  450. package/dist/primitives/index.d.ts.map +1 -0
  451. package/dist/primitives/index.js +17 -16
  452. package/dist/primitives/index.js.map +1 -1
  453. package/dist/primitives/message/MessageAttachments.d.ts +13 -0
  454. package/dist/primitives/message/MessageAttachments.d.ts.map +1 -0
  455. package/dist/primitives/message/MessageAttachments.js +11 -9
  456. package/dist/primitives/message/MessageAttachments.js.map +1 -1
  457. package/dist/primitives/message/MessageContent.d.ts +23 -0
  458. package/dist/primitives/message/MessageContent.d.ts.map +1 -0
  459. package/dist/primitives/message/MessageContent.js +19 -17
  460. package/dist/primitives/message/MessageContent.js.map +1 -1
  461. package/dist/primitives/message/MessageIf.d.ts +21 -0
  462. package/dist/primitives/message/MessageIf.d.ts.map +1 -0
  463. package/dist/primitives/message/MessageIf.js +6 -4
  464. package/dist/primitives/message/MessageIf.js.map +1 -1
  465. package/dist/primitives/message/MessageRoot.d.ts +10 -0
  466. package/dist/primitives/message/MessageRoot.d.ts.map +1 -0
  467. package/dist/primitives/message/MessageRoot.js +7 -5
  468. package/dist/primitives/message/MessageRoot.js.map +1 -1
  469. package/dist/primitives/message/index.d.ts +5 -0
  470. package/dist/primitives/message/index.d.ts.map +1 -0
  471. package/dist/primitives/message/index.js +5 -4
  472. package/dist/primitives/message/index.js.map +1 -1
  473. package/dist/primitives/thread/ThreadEmpty.d.ts +6 -0
  474. package/dist/primitives/thread/ThreadEmpty.d.ts.map +1 -0
  475. package/dist/primitives/thread/ThreadEmpty.js +4 -2
  476. package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
  477. package/dist/primitives/thread/ThreadIf.d.ts +14 -0
  478. package/dist/primitives/thread/ThreadIf.d.ts.map +1 -0
  479. package/dist/primitives/thread/ThreadIf.js +5 -3
  480. package/dist/primitives/thread/ThreadIf.js.map +1 -1
  481. package/dist/primitives/thread/ThreadMessages.d.ts +27 -0
  482. package/dist/primitives/thread/ThreadMessages.d.ts.map +1 -0
  483. package/dist/primitives/thread/ThreadMessages.js +14 -12
  484. package/dist/primitives/thread/ThreadMessages.js.map +1 -1
  485. package/dist/primitives/thread/ThreadRoot.d.ts +10 -0
  486. package/dist/primitives/thread/ThreadRoot.d.ts.map +1 -0
  487. package/dist/primitives/thread/ThreadRoot.js +3 -2
  488. package/dist/primitives/thread/ThreadRoot.js.map +1 -1
  489. package/dist/primitives/thread/ThreadScrollToBottom.d.ts +11 -0
  490. package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -0
  491. package/dist/primitives/thread/ThreadScrollToBottom.js +6 -4
  492. package/dist/primitives/thread/ThreadScrollToBottom.js.map +1 -1
  493. package/dist/primitives/thread/ThreadSuggestion.d.ts +19 -0
  494. package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -0
  495. package/dist/primitives/thread/ThreadSuggestion.js +7 -5
  496. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  497. package/dist/primitives/thread/ThreadViewport.d.ts +14 -0
  498. package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -0
  499. package/dist/primitives/thread/ThreadViewport.js +7 -5
  500. package/dist/primitives/thread/ThreadViewport.js.map +1 -1
  501. package/dist/primitives/thread/index.d.ts +8 -0
  502. package/dist/primitives/thread/index.d.ts.map +1 -0
  503. package/dist/primitives/thread/index.js +8 -7
  504. package/dist/primitives/thread/index.js.map +1 -1
  505. package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts +8 -0
  506. package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts.map +1 -0
  507. package/dist/primitives/thread/useThreadViewportAutoScroll.js +9 -7
  508. package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -1
  509. package/dist/primitives/threadList/ThreadListItems.d.ts +11 -0
  510. package/dist/primitives/threadList/ThreadListItems.d.ts.map +1 -0
  511. package/dist/primitives/threadList/ThreadListItems.js +8 -6
  512. package/dist/primitives/threadList/ThreadListItems.js.map +1 -1
  513. package/dist/primitives/threadList/ThreadListNew.d.ts +11 -0
  514. package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -0
  515. package/dist/primitives/threadList/ThreadListNew.js +6 -4
  516. package/dist/primitives/threadList/ThreadListNew.js.map +1 -1
  517. package/dist/primitives/threadList/ThreadListRoot.d.ts +12 -0
  518. package/dist/primitives/threadList/ThreadListRoot.d.ts.map +1 -0
  519. package/dist/primitives/threadList/ThreadListRoot.js +3 -2
  520. package/dist/primitives/threadList/ThreadListRoot.js.map +1 -1
  521. package/dist/primitives/threadList/index.d.ts +4 -0
  522. package/dist/primitives/threadList/index.d.ts.map +1 -0
  523. package/dist/primitives/threadList/index.js +4 -3
  524. package/dist/primitives/threadList/index.js.map +1 -1
  525. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts +11 -0
  526. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts.map +1 -0
  527. package/dist/primitives/threadListItem/ThreadListItemArchive.js +6 -4
  528. package/dist/primitives/threadListItem/ThreadListItemArchive.js.map +1 -1
  529. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts +11 -0
  530. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -0
  531. package/dist/primitives/threadListItem/ThreadListItemDelete.js +6 -4
  532. package/dist/primitives/threadListItem/ThreadListItemDelete.js.map +1 -1
  533. package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts +12 -0
  534. package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -0
  535. package/dist/primitives/threadListItem/ThreadListItemRoot.js +5 -3
  536. package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -1
  537. package/dist/primitives/threadListItem/ThreadListItemTitle.d.ts +8 -0
  538. package/dist/primitives/threadListItem/ThreadListItemTitle.d.ts.map +1 -0
  539. package/dist/primitives/threadListItem/ThreadListItemTitle.js +4 -2
  540. package/dist/primitives/threadListItem/ThreadListItemTitle.js.map +1 -1
  541. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts +11 -0
  542. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -0
  543. package/dist/primitives/threadListItem/ThreadListItemTrigger.js +6 -4
  544. package/dist/primitives/threadListItem/ThreadListItemTrigger.js.map +1 -1
  545. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts +11 -0
  546. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -0
  547. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js +6 -4
  548. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js.map +1 -1
  549. package/dist/primitives/threadListItem/index.d.ts +7 -0
  550. package/dist/primitives/threadListItem/index.d.ts.map +1 -0
  551. package/dist/primitives/threadListItem/index.js +7 -6
  552. package/dist/primitives/threadListItem/index.js.map +1 -1
  553. package/dist/runtimes/adapters/RuntimeAdapterProvider.d.ts +17 -0
  554. package/dist/runtimes/adapters/RuntimeAdapterProvider.d.ts.map +1 -0
  555. package/dist/runtimes/adapters/RuntimeAdapterProvider.js +5 -4
  556. package/dist/runtimes/adapters/RuntimeAdapterProvider.js.map +1 -1
  557. package/dist/runtimes/adapters/attachment/AttachmentAdapter.d.ts +10 -0
  558. package/dist/runtimes/adapters/attachment/AttachmentAdapter.d.ts.map +1 -0
  559. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.d.ts +13 -0
  560. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.d.ts.map +1 -0
  561. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.js +3 -2
  562. package/dist/runtimes/adapters/attachment/CompositeAttachmentAdapter.js.map +1 -1
  563. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.d.ts +11 -0
  564. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.d.ts.map +1 -0
  565. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.js +4 -3
  566. package/dist/runtimes/adapters/attachment/SimpleImageAttachmentAdapter.js.map +1 -1
  567. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.d.ts +11 -0
  568. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.d.ts.map +1 -0
  569. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.js +4 -3
  570. package/dist/runtimes/adapters/attachment/SimpleTextAttachmentAdapter.js.map +1 -1
  571. package/dist/runtimes/adapters/attachment/index.d.ts +5 -0
  572. package/dist/runtimes/adapters/attachment/index.d.ts.map +1 -0
  573. package/dist/runtimes/adapters/attachment/index.js +4 -3
  574. package/dist/runtimes/adapters/attachment/index.js.map +1 -1
  575. package/dist/runtimes/adapters/feedback/FeedbackAdapter.d.ts +10 -0
  576. package/dist/runtimes/adapters/feedback/FeedbackAdapter.d.ts.map +1 -0
  577. package/dist/runtimes/adapters/feedback/index.d.ts +2 -0
  578. package/dist/runtimes/adapters/feedback/index.d.ts.map +1 -0
  579. package/dist/runtimes/adapters/index.d.ts +5 -0
  580. package/dist/runtimes/adapters/index.d.ts.map +1 -0
  581. package/dist/runtimes/adapters/index.js +5 -4
  582. package/dist/runtimes/adapters/index.js.map +1 -1
  583. package/dist/runtimes/adapters/speech/SpeechAdapterTypes.d.ts +41 -0
  584. package/dist/runtimes/adapters/speech/SpeechAdapterTypes.d.ts.map +1 -0
  585. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.d.ts +5 -0
  586. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.d.ts.map +1 -0
  587. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.js +3 -2
  588. package/dist/runtimes/adapters/speech/WebSpeechSynthesisAdapter.js.map +1 -1
  589. package/dist/runtimes/adapters/speech/index.d.ts +3 -0
  590. package/dist/runtimes/adapters/speech/index.d.ts.map +1 -0
  591. package/dist/runtimes/adapters/speech/index.js +2 -1
  592. package/dist/runtimes/adapters/speech/index.js.map +1 -1
  593. package/dist/runtimes/adapters/suggestion/SuggestionAdapter.d.ts +10 -0
  594. package/dist/runtimes/adapters/suggestion/SuggestionAdapter.d.ts.map +1 -0
  595. package/dist/runtimes/adapters/suggestion/index.d.ts +2 -0
  596. package/dist/runtimes/adapters/suggestion/index.d.ts.map +1 -0
  597. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.d.ts +10 -0
  598. package/dist/runtimes/adapters/thread-history/ThreadHistoryAdapter.d.ts.map +1 -0
  599. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts +39 -0
  600. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts.map +1 -0
  601. package/dist/runtimes/composer/BaseComposerRuntimeCore.js +5 -4
  602. package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
  603. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.d.ts +25 -0
  604. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.d.ts.map +1 -0
  605. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js +5 -4
  606. package/dist/runtimes/composer/DefaultEditComposerRuntimeCore.js.map +1 -1
  607. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.d.ts +21 -0
  608. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.d.ts.map +1 -0
  609. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js +4 -3
  610. package/dist/runtimes/composer/DefaultThreadComposerRuntimeCore.js.map +1 -1
  611. package/dist/runtimes/core/AssistantRuntimeCore.d.ts +16 -0
  612. package/dist/runtimes/core/AssistantRuntimeCore.d.ts.map +1 -0
  613. package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts +11 -0
  614. package/dist/runtimes/core/BaseAssistantRuntimeCore.d.ts.map +1 -0
  615. package/dist/runtimes/core/BaseAssistantRuntimeCore.js +4 -3
  616. package/dist/runtimes/core/BaseAssistantRuntimeCore.js.map +1 -1
  617. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +60 -0
  618. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -0
  619. package/dist/runtimes/core/BaseThreadRuntimeCore.js +7 -6
  620. package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
  621. package/dist/runtimes/core/ComposerRuntimeCore.d.ts +28 -0
  622. package/dist/runtimes/core/ComposerRuntimeCore.d.ts.map +1 -0
  623. package/dist/runtimes/core/ThreadListRuntimeCore.d.ts +34 -0
  624. package/dist/runtimes/core/ThreadListRuntimeCore.d.ts.map +1 -0
  625. package/dist/runtimes/core/ThreadRuntimeCore.d.ts +79 -0
  626. package/dist/runtimes/core/ThreadRuntimeCore.d.ts.map +1 -0
  627. package/dist/runtimes/core/index.d.ts +2 -0
  628. package/dist/runtimes/core/index.d.ts.map +1 -0
  629. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts +64 -0
  630. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts.map +1 -0
  631. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts +9 -0
  632. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.d.ts.map +1 -0
  633. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js +7 -6
  634. package/dist/runtimes/external-store/ExternalStoreRuntimeCore.js.map +1 -1
  635. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts +35 -0
  636. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts.map +1 -0
  637. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js +8 -7
  638. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js.map +1 -1
  639. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts +36 -0
  640. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -0
  641. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +11 -10
  642. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
  643. package/dist/runtimes/external-store/ThreadMessageConverter.d.ts +7 -0
  644. package/dist/runtimes/external-store/ThreadMessageConverter.d.ts.map +1 -0
  645. package/dist/runtimes/external-store/ThreadMessageConverter.js +3 -2
  646. package/dist/runtimes/external-store/ThreadMessageConverter.js.map +1 -1
  647. package/dist/runtimes/external-store/ThreadMessageLike.d.ts +28 -0
  648. package/dist/runtimes/external-store/ThreadMessageLike.d.ts.map +1 -0
  649. package/dist/runtimes/external-store/ThreadMessageLike.js +3 -2
  650. package/dist/runtimes/external-store/ThreadMessageLike.js.map +1 -1
  651. package/dist/runtimes/external-store/auto-status.d.ts +9 -0
  652. package/dist/runtimes/external-store/auto-status.d.ts.map +1 -0
  653. package/dist/runtimes/external-store/auto-status.js +5 -4
  654. package/dist/runtimes/external-store/auto-status.js.map +1 -1
  655. package/dist/runtimes/external-store/createMessageConverter.d.ts +16 -0
  656. package/dist/runtimes/external-store/createMessageConverter.d.ts.map +1 -0
  657. package/dist/runtimes/external-store/createMessageConverter.js +6 -4
  658. package/dist/runtimes/external-store/createMessageConverter.js.map +1 -1
  659. package/dist/runtimes/external-store/external-message-converter.d.ts +22 -0
  660. package/dist/runtimes/external-store/external-message-converter.d.ts.map +1 -0
  661. package/dist/runtimes/external-store/external-message-converter.js +11 -9
  662. package/dist/runtimes/external-store/external-message-converter.js.map +1 -1
  663. package/dist/runtimes/external-store/getExternalStoreMessage.d.ts +9 -0
  664. package/dist/runtimes/external-store/getExternalStoreMessage.d.ts.map +1 -0
  665. package/dist/runtimes/external-store/getExternalStoreMessage.js +6 -5
  666. package/dist/runtimes/external-store/getExternalStoreMessage.js.map +1 -1
  667. package/dist/runtimes/external-store/index.d.ts +7 -0
  668. package/dist/runtimes/external-store/index.d.ts.map +1 -0
  669. package/dist/runtimes/external-store/index.js +5 -4
  670. package/dist/runtimes/external-store/index.js.map +1 -1
  671. package/dist/runtimes/external-store/useExternalStoreRuntime.d.ts +4 -0
  672. package/dist/runtimes/external-store/useExternalStoreRuntime.d.ts.map +1 -0
  673. package/dist/runtimes/external-store/useExternalStoreRuntime.js +8 -4
  674. package/dist/runtimes/external-store/useExternalStoreRuntime.js.map +1 -1
  675. package/dist/runtimes/index.d.ts +7 -0
  676. package/dist/runtimes/index.d.ts.map +1 -0
  677. package/dist/runtimes/index.js +7 -6
  678. package/dist/runtimes/index.js.map +1 -1
  679. package/dist/runtimes/local/ChatModelAdapter.d.ts +36 -0
  680. package/dist/runtimes/local/ChatModelAdapter.d.ts.map +1 -0
  681. package/dist/runtimes/local/LocalRuntimeCore.d.ts +11 -0
  682. package/dist/runtimes/local/LocalRuntimeCore.d.ts.map +1 -0
  683. package/dist/runtimes/local/LocalRuntimeCore.js +7 -6
  684. package/dist/runtimes/local/LocalRuntimeCore.js.map +1 -1
  685. package/dist/runtimes/local/LocalRuntimeOptions.d.ts +46 -0
  686. package/dist/runtimes/local/LocalRuntimeOptions.d.ts.map +1 -0
  687. package/dist/runtimes/local/LocalRuntimeOptions.js +2 -1
  688. package/dist/runtimes/local/LocalRuntimeOptions.js.map +1 -1
  689. package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts +32 -0
  690. package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts.map +1 -0
  691. package/dist/runtimes/local/LocalThreadListRuntimeCore.js +5 -4
  692. package/dist/runtimes/local/LocalThreadListRuntimeCore.js.map +1 -1
  693. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts +45 -0
  694. package/dist/runtimes/local/LocalThreadRuntimeCore.d.ts.map +1 -0
  695. package/dist/runtimes/local/LocalThreadRuntimeCore.js +6 -5
  696. package/dist/runtimes/local/LocalThreadRuntimeCore.js.map +1 -1
  697. package/dist/runtimes/local/index.d.ts +4 -0
  698. package/dist/runtimes/local/index.d.ts.map +1 -0
  699. package/dist/runtimes/local/index.js +2 -1
  700. package/dist/runtimes/local/index.js.map +1 -1
  701. package/dist/runtimes/local/shouldContinue.d.ts +3 -0
  702. package/dist/runtimes/local/shouldContinue.d.ts.map +1 -0
  703. package/dist/runtimes/local/shouldContinue.js +2 -1
  704. package/dist/runtimes/local/shouldContinue.js.map +1 -1
  705. package/dist/runtimes/local/useLocalRuntime.d.ts +5 -0
  706. package/dist/runtimes/local/useLocalRuntime.d.ts.map +1 -0
  707. package/dist/runtimes/local/useLocalRuntime.js +9 -7
  708. package/dist/runtimes/local/useLocalRuntime.js.map +1 -1
  709. package/dist/runtimes/remote-thread-list/BaseSubscribable.d.ts +8 -0
  710. package/dist/runtimes/remote-thread-list/BaseSubscribable.d.ts.map +1 -0
  711. package/dist/runtimes/remote-thread-list/BaseSubscribable.js +3 -2
  712. package/dist/runtimes/remote-thread-list/BaseSubscribable.js.map +1 -1
  713. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.d.ts +3 -0
  714. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.d.ts.map +1 -0
  715. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js +3 -2
  716. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js.map +1 -1
  717. package/dist/runtimes/remote-thread-list/OptimisticState.d.ts +23 -0
  718. package/dist/runtimes/remote-thread-list/OptimisticState.d.ts.map +1 -0
  719. package/dist/runtimes/remote-thread-list/OptimisticState.js +5 -4
  720. package/dist/runtimes/remote-thread-list/OptimisticState.js.map +1 -1
  721. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts +81 -0
  722. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts.map +1 -0
  723. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js +9 -7
  724. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js.map +1 -1
  725. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts +119 -0
  726. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -0
  727. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js +13 -11
  728. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
  729. package/dist/runtimes/remote-thread-list/adapter/cloud.d.ts +13 -0
  730. package/dist/runtimes/remote-thread-list/adapter/cloud.d.ts.map +1 -0
  731. package/dist/runtimes/remote-thread-list/adapter/cloud.js +9 -8
  732. package/dist/runtimes/remote-thread-list/adapter/cloud.js.map +1 -1
  733. package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts +12 -0
  734. package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts.map +1 -0
  735. package/dist/runtimes/remote-thread-list/adapter/in-memory.js +3 -2
  736. package/dist/runtimes/remote-thread-list/adapter/in-memory.js.map +1 -1
  737. package/dist/runtimes/remote-thread-list/index.d.ts +4 -0
  738. package/dist/runtimes/remote-thread-list/index.d.ts.map +1 -0
  739. package/dist/runtimes/remote-thread-list/index.js +3 -2
  740. package/dist/runtimes/remote-thread-list/index.js.map +1 -1
  741. package/dist/runtimes/remote-thread-list/types.d.ts +32 -0
  742. package/dist/runtimes/remote-thread-list/types.d.ts.map +1 -0
  743. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.d.ts +4 -0
  744. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.d.ts.map +1 -0
  745. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.js +8 -6
  746. package/dist/runtimes/remote-thread-list/useRemoteThreadListRuntime.js.map +1 -1
  747. package/dist/runtimes/utils/MessageRepository.d.ts +151 -0
  748. package/dist/runtimes/utils/MessageRepository.d.ts.map +1 -0
  749. package/dist/runtimes/utils/MessageRepository.js +10 -9
  750. package/dist/runtimes/utils/MessageRepository.js.map +1 -1
  751. package/dist/tests/setup.d.ts +2 -0
  752. package/dist/tests/setup.d.ts.map +1 -0
  753. package/dist/tests/setup.js +2971 -3
  754. package/dist/tests/setup.js.map +1 -1
  755. package/dist/types/AssistantTypes.d.ts +132 -0
  756. package/dist/types/AssistantTypes.d.ts.map +1 -0
  757. package/dist/types/AttachmentTypes.d.ts +35 -0
  758. package/dist/types/AttachmentTypes.d.ts.map +1 -0
  759. package/dist/types/ContentPartComponentTypes.d.ts +24 -0
  760. package/dist/types/ContentPartComponentTypes.d.ts.map +1 -0
  761. package/dist/types/Unsubscribe.d.ts +2 -0
  762. package/dist/types/Unsubscribe.d.ts.map +1 -0
  763. package/dist/types/index.d.ts +5 -0
  764. package/dist/types/index.d.ts.map +1 -0
  765. package/dist/utils/CompositeContextProvider.d.ts +10 -0
  766. package/dist/utils/CompositeContextProvider.d.ts.map +1 -0
  767. package/dist/utils/CompositeContextProvider.js +4 -3
  768. package/dist/utils/CompositeContextProvider.js.map +1 -1
  769. package/dist/utils/RequireAtLeastOne.d.ts +4 -0
  770. package/dist/utils/RequireAtLeastOne.d.ts.map +1 -0
  771. package/dist/utils/combined/createCombinedStore.d.ts +8 -0
  772. package/dist/utils/combined/createCombinedStore.d.ts.map +1 -0
  773. package/dist/utils/combined/createCombinedStore.js +3 -1
  774. package/dist/utils/combined/createCombinedStore.js.map +1 -1
  775. package/dist/utils/combined/useCombinedStore.d.ts +3 -0
  776. package/dist/utils/combined/useCombinedStore.d.ts.map +1 -0
  777. package/dist/utils/combined/useCombinedStore.js +4 -2
  778. package/dist/utils/combined/useCombinedStore.js.map +1 -1
  779. package/dist/utils/createActionButton.d.ts +11 -0
  780. package/dist/utils/createActionButton.d.ts.map +1 -0
  781. package/dist/utils/createActionButton.js +3 -2
  782. package/dist/utils/createActionButton.js.map +1 -1
  783. package/dist/utils/getThreadMessageText.d.ts +3 -0
  784. package/dist/utils/getThreadMessageText.d.ts.map +1 -0
  785. package/dist/utils/getThreadMessageText.js +2 -1
  786. package/dist/utils/getThreadMessageText.js.map +1 -1
  787. package/dist/utils/hooks/useManagedRef.d.ts +2 -0
  788. package/dist/utils/hooks/useManagedRef.d.ts.map +1 -0
  789. package/dist/utils/hooks/useManagedRef.js +2 -1
  790. package/dist/utils/hooks/useManagedRef.js.map +1 -1
  791. package/dist/utils/hooks/useOnResizeContent.d.ts +2 -0
  792. package/dist/utils/hooks/useOnResizeContent.d.ts.map +1 -0
  793. package/dist/utils/hooks/useOnResizeContent.js +3 -2
  794. package/dist/utils/hooks/useOnResizeContent.js.map +1 -1
  795. package/dist/utils/hooks/useOnScrollToBottom.d.ts +2 -0
  796. package/dist/utils/hooks/useOnScrollToBottom.d.ts.map +1 -0
  797. package/dist/utils/hooks/useOnScrollToBottom.js +4 -2
  798. package/dist/utils/hooks/useOnScrollToBottom.js.map +1 -1
  799. package/dist/utils/idUtils.d.ts +4 -0
  800. package/dist/utils/idUtils.d.ts.map +1 -0
  801. package/dist/utils/idUtils.js +5 -4
  802. package/dist/utils/idUtils.js.map +1 -1
  803. package/dist/utils/json/is-json.d.ts +5 -0
  804. package/dist/utils/json/is-json.d.ts.map +1 -0
  805. package/dist/utils/json/is-json.js +1 -0
  806. package/dist/utils/json/is-json.js.map +1 -1
  807. package/dist/utils/json/json-value.d.ts +6 -0
  808. package/dist/utils/json/json-value.d.ts.map +1 -0
  809. package/dist/utils/smooth/SmoothContext.d.ts +87 -0
  810. package/dist/utils/smooth/SmoothContext.d.ts.map +1 -0
  811. package/dist/utils/smooth/SmoothContext.js +10 -8
  812. package/dist/utils/smooth/SmoothContext.js.map +1 -1
  813. package/dist/utils/smooth/index.d.ts +3 -0
  814. package/dist/utils/smooth/index.d.ts.map +1 -0
  815. package/dist/utils/smooth/index.js +4 -2
  816. package/dist/utils/smooth/index.js.map +1 -1
  817. package/dist/utils/smooth/useSmooth.d.ts +4 -0
  818. package/dist/utils/smooth/useSmooth.d.ts.map +1 -0
  819. package/dist/utils/smooth/useSmooth.js +9 -7
  820. package/dist/utils/smooth/useSmooth.js.map +1 -1
  821. package/dist/utils/useToolArgsFieldStatus.d.ts +12 -0
  822. package/dist/utils/useToolArgsFieldStatus.d.ts.map +1 -0
  823. package/dist/utils/useToolArgsFieldStatus.js +4 -3
  824. package/dist/utils/useToolArgsFieldStatus.js.map +1 -1
  825. package/package.json +3 -18
  826. package/src/runtimes/external-store/useExternalStoreRuntime.tsx +7 -2
@@ -0,0 +1,216 @@
1
+ import { ThreadSuggestion, RuntimeCapabilities, ThreadRuntimeCore, SpeechState, ThreadRuntimeEventType, StartRunConfig, ResumeRunConfig } from "../runtimes/core/ThreadRuntimeCore";
2
+ import { ExportedMessageRepository } from "../runtimes/utils/MessageRepository";
3
+ import { AppendMessage, ThreadMessage, Unsubscribe } from "../types";
4
+ import { MessageRuntime, MessageRuntimeImpl } from "./MessageRuntime";
5
+ import { SubscribableWithState } from "./subscribable/Subscribable";
6
+ import { ThreadComposerRuntime, ThreadComposerRuntimeImpl } from "./ComposerRuntime";
7
+ import { ThreadListItemRuntimePath, ThreadRuntimePath } from "./RuntimePathTypes";
8
+ import { ThreadListItemState } from "./ThreadListItemRuntime";
9
+ import { RunConfig } from "../types/AssistantTypes";
10
+ import { ModelContext } from "../model-context";
11
+ import { ChatModelRunOptions, ChatModelRunResult } from "../runtimes";
12
+ export type CreateStartRunConfig = {
13
+ parentId: string | null;
14
+ sourceId?: string | null | undefined;
15
+ runConfig?: RunConfig | undefined;
16
+ };
17
+ export type CreateResumeRunConfig = CreateStartRunConfig & {
18
+ stream: (options: ChatModelRunOptions) => AsyncGenerator<ChatModelRunResult, void, unknown>;
19
+ };
20
+ export type CreateAppendMessage = string | {
21
+ parentId?: string | null | undefined;
22
+ sourceId?: string | null | undefined;
23
+ role?: AppendMessage["role"] | undefined;
24
+ content: AppendMessage["content"];
25
+ attachments?: AppendMessage["attachments"] | undefined;
26
+ startRun?: boolean | undefined;
27
+ };
28
+ export type ThreadRuntimeCoreBinding = SubscribableWithState<ThreadRuntimeCore, ThreadRuntimePath> & {
29
+ outerSubscribe(callback: () => void): Unsubscribe;
30
+ };
31
+ export type ThreadListItemRuntimeBinding = SubscribableWithState<ThreadListItemState, ThreadListItemRuntimePath>;
32
+ export type ThreadState = {
33
+ /**
34
+ * The thread ID.
35
+ * @deprecated This field is deprecated and will be removed in 0.8.0. Use `useThreadListItem().id` instead.
36
+ */
37
+ readonly threadId: string;
38
+ /**
39
+ * The thread metadata.
40
+ *
41
+ * @deprecated Use `useThreadListItem()` instead. This field is deprecated and will be removed in 0.8.0.
42
+ */
43
+ readonly metadata: ThreadListItemState;
44
+ /**
45
+ * Whether the thread is disabled. Disabled threads cannot receive new messages.
46
+ */
47
+ readonly isDisabled: boolean;
48
+ /**
49
+ * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.
50
+ */
51
+ readonly isRunning: boolean;
52
+ /**
53
+ * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.
54
+ */
55
+ readonly capabilities: RuntimeCapabilities;
56
+ /**
57
+ * The messages in the currently selected branch of the thread.
58
+ */
59
+ readonly messages: readonly ThreadMessage[];
60
+ /**
61
+ * Follow up message suggestions to show the user.
62
+ */
63
+ readonly suggestions: readonly ThreadSuggestion[];
64
+ /**
65
+ * Custom extra information provided by the runtime.
66
+ */
67
+ readonly extras: unknown;
68
+ /**
69
+ * @deprecated This API is still under active development and might change without notice.
70
+ */
71
+ readonly speech: SpeechState | undefined;
72
+ };
73
+ export declare const getThreadState: (runtime: ThreadRuntimeCore, threadListItemState: ThreadListItemState) => ThreadState;
74
+ export type ThreadRuntime = {
75
+ /**
76
+ * The selector for the thread runtime.
77
+ */
78
+ readonly path: ThreadRuntimePath;
79
+ /**
80
+ * The thread composer runtime.
81
+ */
82
+ readonly composer: ThreadComposerRuntime;
83
+ /**
84
+ * Gets a snapshot of the thread state.
85
+ */
86
+ getState(): ThreadState;
87
+ /**
88
+ * Append a new message to the thread.
89
+ *
90
+ * @example ```ts
91
+ * // append a new user message with the text "Hello, world!"
92
+ * threadRuntime.append("Hello, world!");
93
+ * ```
94
+ *
95
+ * @example ```ts
96
+ * // append a new assistant message with the text "Hello, world!"
97
+ * threadRuntime.append({
98
+ * role: "assistant",
99
+ * content: [{ type: "text", text: "Hello, world!" }],
100
+ * });
101
+ * ```
102
+ */
103
+ append(message: CreateAppendMessage): void;
104
+ /**
105
+ * @deprecated pass an object with `parentId` instead. This will be removed in 0.8.0.
106
+ */
107
+ startRun(parentId: string | null): void;
108
+ /**
109
+ * Start a new run with the given configuration.
110
+ * @param config The configuration for starting the run
111
+ */
112
+ startRun(config: CreateStartRunConfig): void;
113
+ /**
114
+ * Resume a run with the given configuration.
115
+ * @param config The configuration for resuming the run
116
+ **/
117
+ unstable_resumeRun(config: CreateResumeRunConfig): void;
118
+ subscribe(callback: () => void): Unsubscribe;
119
+ cancelRun(): void;
120
+ getModelContext(): ModelContext;
121
+ /**
122
+ * @deprecated This method was renamed to `getModelContext`.
123
+ */
124
+ getModelConfig(): ModelContext;
125
+ export(): ExportedMessageRepository;
126
+ import(repository: ExportedMessageRepository): void;
127
+ getMesssageByIndex(idx: number): MessageRuntime;
128
+ getMesssageById(messageId: string): MessageRuntime;
129
+ /**
130
+ * @deprecated This API is still under active development and might change without notice.
131
+ */
132
+ stopSpeaking: () => void;
133
+ unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;
134
+ };
135
+ export declare class ThreadRuntimeImpl implements ThreadRuntime {
136
+ get path(): ThreadRuntimePath;
137
+ get __internal_threadBinding(): import("./subscribable/Subscribable").Subscribable & {
138
+ path: ThreadRuntimePath;
139
+ getState: () => Readonly<{
140
+ getMessageById: (messageId: string) => {
141
+ parentId: string | null;
142
+ message: ThreadMessage;
143
+ } | undefined;
144
+ getBranches: (messageId: string) => readonly string[];
145
+ switchToBranch: (branchId: string) => void;
146
+ append: (message: AppendMessage) => void;
147
+ startRun: (config: StartRunConfig) => void;
148
+ resumeRun: (config: ResumeRunConfig) => void;
149
+ cancelRun: () => void;
150
+ addToolResult: (options: import("..").AddToolResultOptions) => void;
151
+ speak: (messageId: string) => void;
152
+ stopSpeaking: () => void;
153
+ getSubmittedFeedback: (messageId: string) => import("../runtimes/core/ThreadRuntimeCore").SubmittedFeedback | undefined;
154
+ submitFeedback: (feedback: import("..").SubmitFeedbackOptions) => void;
155
+ getModelContext: () => ModelContext;
156
+ composer: import("../runtimes/core/ComposerRuntimeCore").ThreadComposerRuntimeCore;
157
+ getEditComposer: (messageId: string) => Readonly<{
158
+ isEditing: boolean;
159
+ canCancel: boolean;
160
+ isEmpty: boolean;
161
+ attachments: readonly import("..").Attachment[];
162
+ getAttachmentAccept(): string;
163
+ addAttachment: (file: File) => Promise<void>;
164
+ removeAttachment: (attachmentId: string) => Promise<void>;
165
+ text: string;
166
+ setText: (value: string) => void;
167
+ role: import("../types/AssistantTypes").MessageRole;
168
+ setRole: (role: import("../types/AssistantTypes").MessageRole) => void;
169
+ runConfig: RunConfig;
170
+ setRunConfig: (runConfig: RunConfig) => void;
171
+ reset: () => Promise<void>;
172
+ clearAttachments: () => Promise<void>;
173
+ send: () => void;
174
+ cancel: () => void;
175
+ subscribe: (callback: () => void) => Unsubscribe;
176
+ unstable_on: (event: import("../runtimes/core/ComposerRuntimeCore").ComposerRuntimeEventType, callback: () => void) => Unsubscribe;
177
+ }> | undefined;
178
+ beginEdit: (messageId: string) => void;
179
+ speech: SpeechState | undefined;
180
+ capabilities: Readonly<RuntimeCapabilities>;
181
+ isDisabled: boolean;
182
+ messages: readonly ThreadMessage[];
183
+ suggestions: readonly ThreadSuggestion[];
184
+ extras: unknown;
185
+ subscribe: (callback: () => void) => Unsubscribe;
186
+ import(repository: ExportedMessageRepository): void;
187
+ export(): ExportedMessageRepository;
188
+ unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;
189
+ }>;
190
+ } & {
191
+ outerSubscribe(callback: () => void): Unsubscribe;
192
+ } & {
193
+ getStateState(): ThreadState;
194
+ };
195
+ private readonly _threadBinding;
196
+ constructor(threadBinding: ThreadRuntimeCoreBinding, threadListItemBinding: ThreadListItemRuntimeBinding);
197
+ protected __internal_bindMethods(): void;
198
+ readonly composer: ThreadComposerRuntimeImpl;
199
+ getState(): ThreadState;
200
+ append(message: CreateAppendMessage): void;
201
+ subscribe(callback: () => void): Unsubscribe;
202
+ getModelContext(): ModelContext;
203
+ getModelConfig(): ModelContext;
204
+ startRun(configOrParentId: string | null | CreateStartRunConfig): void;
205
+ unstable_resumeRun(config: CreateResumeRunConfig): void;
206
+ cancelRun(): void;
207
+ stopSpeaking(): void;
208
+ export(): ExportedMessageRepository;
209
+ import(data: ExportedMessageRepository): void;
210
+ getMesssageByIndex(idx: number): MessageRuntimeImpl;
211
+ getMesssageById(messageId: string): MessageRuntimeImpl;
212
+ private _getMessageRuntime;
213
+ private _eventSubscriptionSubjects;
214
+ unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;
215
+ }
216
+ //# sourceMappingURL=ThreadRuntime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThreadRuntime.d.ts","sourceRoot":"","sources":["../../src/api/ThreadRuntime.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,WAAW,EACX,sBAAsB,EACtB,cAAc,EACd,eAAe,EAChB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EACL,cAAc,EACd,kBAAkB,EAEnB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EAC1B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAEL,yBAAyB,EACzB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtE,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,oBAAoB,GAAG;IACzD,MAAM,EAAE,CACN,OAAO,EAAE,mBAAmB,KACzB,cAAc,CAAC,kBAAkB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;CACxD,CAAC;AAmBF,MAAM,MAAM,mBAAmB,GAC3B,MAAM,GACN;IACE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,IAAI,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IACzC,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;IACvD,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC,CAAC;AAgCN,MAAM,MAAM,wBAAwB,GAAG,qBAAqB,CAC1D,iBAAiB,EACjB,iBAAiB,CAClB,GAAG;IACF,cAAc,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,qBAAqB,CAC9D,mBAAmB,EACnB,yBAAyB,CAC1B,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IAEvC;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,YAAY,EAAE,mBAAmB,CAAC;IAE3C;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,SAAS,aAAa,EAAE,CAAC;IAE5C;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAElD;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;CAC1C,CAAC;AAEF,eAAO,MAAM,cAAc,GACzB,SAAS,iBAAiB,EAC1B,qBAAqB,mBAAmB,KACvC,WAgBF,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IAEzC;;OAEG;IACH,QAAQ,IAAI,WAAW,CAAC;IAExB;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAE3C;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IACxC;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAE7C;;;QAGI;IACJ,kBAAkB,CAAC,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAExD,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW,CAAC;IAC7C,SAAS,IAAI,IAAI,CAAC;IAClB,eAAe,IAAI,YAAY,CAAC;IAEhC;;OAEG;IACH,cAAc,IAAI,YAAY,CAAC;IAE/B,MAAM,IAAI,yBAAyB,CAAC;IACpC,MAAM,CAAC,UAAU,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACpD,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAC;IAChD,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,CAAC;IAEnD;;OAEG;IACH,YAAY,EAAE,MAAM,IAAI,CAAC;IAEzB,WAAW,CAAC,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW,CAAC;CAC/E,CAAC;AAEF,qBAAa,iBAAkB,YAAW,aAAa;IACrD,IAAW,IAAI,sBAEd;IAED,IAAW,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCA5JV,MAAM,IAAI,GAAG,WAAW;;yBAiK9B,WAAW;MAH7B;IAED,OAAO,CAAC,QAAQ,CAAC,cAAc,CAE7B;gBAGA,aAAa,EAAE,wBAAwB,EACvC,qBAAqB,EAAE,4BAA4B;IAwCrD,SAAS,CAAC,sBAAsB;IAiBhC,SAAgB,QAAQ,4BAAC;IAElB,QAAQ;IAIR,MAAM,CAAC,OAAO,EAAE,mBAAmB;IAQnC,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI;IAI9B,eAAe;IAIf,cAAc;IAId,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,oBAAoB;IAQ/D,kBAAkB,CAAC,MAAM,EAAE,qBAAqB;IAIhD,SAAS;IAIT,YAAY;IAIZ,MAAM;IAIN,MAAM,CAAC,IAAI,EAAE,yBAAyB;IAItC,kBAAkB,CAAC,GAAG,EAAE,MAAM;IAqB9B,eAAe,CAAC,SAAS,EAAE,MAAM;IAaxC,OAAO,CAAC,kBAAkB;IA4C1B,OAAO,CAAC,0BAA0B,CAG9B;IAEG,WAAW,CAChB,KAAK,EAAE,sBAAsB,EAC7B,QAAQ,EAAE,MAAM,IAAI,GACnB,WAAW;CAWf"}
@@ -1,15 +1,16 @@
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.js";
5
+ import { NestedSubscriptionSubject } from "./subscribable/NestedSubscriptionSubject.js";
6
+ import { ShallowMemoizeSubject } from "./subscribable/ShallowMemoizeSubject.js";
6
7
  import {
7
8
  ThreadComposerRuntimeImpl
8
- } from "./ComposerRuntime";
9
- import { SKIP_UPDATE } from "./subscribable/SKIP_UPDATE";
10
- import { EventSubscriptionSubject } from "./subscribable/EventSubscriptionSubject";
11
- import { symbolInnerMessage } from "../runtimes/external-store/getExternalStoreMessage";
12
- const toResumeRunConfig = (message) => {
9
+ } from "./ComposerRuntime.js";
10
+ import { SKIP_UPDATE } from "./subscribable/SKIP_UPDATE.js";
11
+ import { EventSubscriptionSubject } from "./subscribable/EventSubscriptionSubject.js";
12
+ import { symbolInnerMessage } from "../runtimes/external-store/getExternalStoreMessage.js";
13
+ var toResumeRunConfig = (message) => {
13
14
  return {
14
15
  parentId: message.parentId ?? null,
15
16
  sourceId: message.sourceId ?? null,
@@ -17,14 +18,14 @@ const toResumeRunConfig = (message) => {
17
18
  stream: message.stream
18
19
  };
19
20
  };
20
- const toStartRunConfig = (message) => {
21
+ var toStartRunConfig = (message) => {
21
22
  return {
22
23
  parentId: message.parentId ?? null,
23
24
  sourceId: message.sourceId ?? null,
24
25
  runConfig: message.runConfig ?? {}
25
26
  };
26
27
  };
27
- const toAppendMessage = (messages, message) => {
28
+ var toAppendMessage = (messages, message) => {
28
29
  if (typeof message === "string") {
29
30
  return {
30
31
  createdAt: /* @__PURE__ */ new Date(),
@@ -48,7 +49,7 @@ const toAppendMessage = (messages, message) => {
48
49
  attachments: message.attachments ?? []
49
50
  };
50
51
  };
51
- const getThreadState = (runtime, threadListItemState) => {
52
+ var getThreadState = (runtime, threadListItemState) => {
52
53
  const lastMessage = runtime.messages.at(-1);
53
54
  return Object.freeze({
54
55
  threadId: threadListItemState.id,
@@ -62,7 +63,7 @@ const getThreadState = (runtime, threadListItemState) => {
62
63
  speech: runtime.speech
63
64
  });
64
65
  };
65
- class ThreadRuntimeImpl {
66
+ var ThreadRuntimeImpl = class {
66
67
  get path() {
67
68
  return this._threadBinding.path;
68
69
  }
@@ -226,7 +227,7 @@ class ThreadRuntimeImpl {
226
227
  }
227
228
  return subject.subscribe(callback);
228
229
  }
229
- }
230
+ };
230
231
  export {
231
232
  ThreadRuntimeImpl,
232
233
  getThreadState
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/api/ThreadRuntime.ts"],"sourcesContent":["import {\n ThreadSuggestion,\n RuntimeCapabilities,\n ThreadRuntimeCore,\n SpeechState,\n ThreadRuntimeEventType,\n StartRunConfig,\n ResumeRunConfig,\n} from \"../runtimes/core/ThreadRuntimeCore\";\nimport { ExportedMessageRepository } from \"../runtimes/utils/MessageRepository\";\nimport { AppendMessage, ThreadMessage, Unsubscribe } from \"../types\";\nimport {\n MessageRuntime,\n MessageRuntimeImpl,\n MessageState,\n} from \"./MessageRuntime\";\nimport { NestedSubscriptionSubject } from \"./subscribable/NestedSubscriptionSubject\";\nimport { ShallowMemoizeSubject } from \"./subscribable/ShallowMemoizeSubject\";\nimport { SubscribableWithState } from \"./subscribable/Subscribable\";\nimport {\n ThreadComposerRuntime,\n ThreadComposerRuntimeImpl,\n} from \"./ComposerRuntime\";\nimport { SKIP_UPDATE } from \"./subscribable/SKIP_UPDATE\";\nimport {\n MessageRuntimePath,\n ThreadListItemRuntimePath,\n ThreadRuntimePath,\n} from \"./RuntimePathTypes\";\nimport { ThreadListItemState } from \"./ThreadListItemRuntime\";\nimport { RunConfig } from \"../types/AssistantTypes\";\nimport { EventSubscriptionSubject } from \"./subscribable/EventSubscriptionSubject\";\nimport { symbolInnerMessage } from \"../runtimes/external-store/getExternalStoreMessage\";\nimport { ModelContext } from \"../model-context\";\nimport { ChatModelRunOptions, ChatModelRunResult } from \"../runtimes\";\n\nexport type CreateStartRunConfig = {\n parentId: string | null;\n sourceId?: string | null | undefined;\n runConfig?: RunConfig | undefined;\n};\n\nexport type CreateResumeRunConfig = CreateStartRunConfig & {\n stream: (\n options: ChatModelRunOptions,\n ) => AsyncGenerator<ChatModelRunResult, void, unknown>;\n};\n\nconst toResumeRunConfig = (message: CreateResumeRunConfig): ResumeRunConfig => {\n return {\n parentId: message.parentId ?? null,\n sourceId: message.sourceId ?? null,\n runConfig: message.runConfig ?? {},\n stream: message.stream,\n };\n};\n\nconst toStartRunConfig = (message: CreateStartRunConfig): StartRunConfig => {\n return {\n parentId: message.parentId ?? null,\n sourceId: message.sourceId ?? null,\n runConfig: message.runConfig ?? {},\n };\n};\n\nexport type CreateAppendMessage =\n | string\n | {\n parentId?: string | null | undefined;\n sourceId?: string | null | undefined;\n role?: AppendMessage[\"role\"] | undefined;\n content: AppendMessage[\"content\"];\n attachments?: AppendMessage[\"attachments\"] | undefined;\n startRun?: boolean | undefined;\n };\n\nconst toAppendMessage = (\n messages: readonly ThreadMessage[],\n message: CreateAppendMessage,\n): AppendMessage => {\n if (typeof message === \"string\") {\n return {\n createdAt: new Date(),\n parentId: messages.at(-1)?.id ?? null,\n sourceId: null,\n runConfig: {},\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n metadata: { custom: {} },\n };\n }\n\n if (message.role && message.parentId && message.attachments) {\n return message as AppendMessage;\n }\n\n return {\n ...message,\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n sourceId: message.sourceId ?? null,\n role: message.role ?? \"user\",\n attachments: message.attachments ?? [],\n } as AppendMessage;\n};\n\nexport type ThreadRuntimeCoreBinding = SubscribableWithState<\n ThreadRuntimeCore,\n ThreadRuntimePath\n> & {\n outerSubscribe(callback: () => void): Unsubscribe;\n};\n\nexport type ThreadListItemRuntimeBinding = SubscribableWithState<\n ThreadListItemState,\n ThreadListItemRuntimePath\n>;\n\nexport type ThreadState = {\n /**\n * The thread ID.\n * @deprecated This field is deprecated and will be removed in 0.8.0. Use `useThreadListItem().id` instead.\n */\n readonly threadId: string;\n\n /**\n * The thread metadata.\n *\n * @deprecated Use `useThreadListItem()` instead. This field is deprecated and will be removed in 0.8.0.\n */\n readonly metadata: ThreadListItemState;\n\n /**\n * Whether the thread is disabled. Disabled threads cannot receive new messages.\n */\n readonly isDisabled: boolean;\n\n /**\n * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.\n */\n readonly isRunning: boolean;\n\n /**\n * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.\n */\n readonly capabilities: RuntimeCapabilities;\n\n /**\n * The messages in the currently selected branch of the thread.\n */\n readonly messages: readonly ThreadMessage[];\n\n /**\n * Follow up message suggestions to show the user.\n */\n readonly suggestions: readonly ThreadSuggestion[];\n\n /**\n * Custom extra information provided by the runtime.\n */\n readonly extras: unknown;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n readonly speech: SpeechState | undefined;\n};\n\nexport const getThreadState = (\n runtime: ThreadRuntimeCore,\n threadListItemState: ThreadListItemState,\n): ThreadState => {\n const lastMessage = runtime.messages.at(-1);\n return Object.freeze({\n threadId: threadListItemState.id,\n metadata: threadListItemState,\n capabilities: runtime.capabilities,\n isDisabled: runtime.isDisabled,\n isRunning:\n lastMessage?.role !== \"assistant\"\n ? false\n : lastMessage.status.type === \"running\",\n messages: runtime.messages,\n suggestions: runtime.suggestions,\n extras: runtime.extras,\n speech: runtime.speech,\n });\n};\n\nexport type ThreadRuntime = {\n /**\n * The selector for the thread runtime.\n */\n readonly path: ThreadRuntimePath;\n\n /**\n * The thread composer runtime.\n */\n readonly composer: ThreadComposerRuntime;\n\n /**\n * Gets a snapshot of the thread state.\n */\n getState(): ThreadState;\n\n /**\n * Append a new message to the thread.\n *\n * @example ```ts\n * // append a new user message with the text \"Hello, world!\"\n * threadRuntime.append(\"Hello, world!\");\n * ```\n *\n * @example ```ts\n * // append a new assistant message with the text \"Hello, world!\"\n * threadRuntime.append({\n * role: \"assistant\",\n * content: [{ type: \"text\", text: \"Hello, world!\" }],\n * });\n * ```\n */\n append(message: CreateAppendMessage): void;\n\n /**\n * @deprecated pass an object with `parentId` instead. This will be removed in 0.8.0.\n */\n startRun(parentId: string | null): void;\n /**\n * Start a new run with the given configuration.\n * @param config The configuration for starting the run\n */\n startRun(config: CreateStartRunConfig): void;\n\n /**\n * Resume a run with the given configuration.\n * @param config The configuration for resuming the run\n **/\n unstable_resumeRun(config: CreateResumeRunConfig): void;\n\n subscribe(callback: () => void): Unsubscribe;\n cancelRun(): void;\n getModelContext(): ModelContext;\n\n /**\n * @deprecated This method was renamed to `getModelContext`.\n */\n getModelConfig(): ModelContext;\n\n export(): ExportedMessageRepository;\n import(repository: ExportedMessageRepository): void;\n getMesssageByIndex(idx: number): MessageRuntime;\n getMesssageById(messageId: string): MessageRuntime;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n stopSpeaking: () => void;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n};\n\nexport class ThreadRuntimeImpl implements ThreadRuntime {\n public get path() {\n return this._threadBinding.path;\n }\n\n public get __internal_threadBinding() {\n return this._threadBinding;\n }\n\n private readonly _threadBinding: ThreadRuntimeCoreBinding & {\n getStateState(): ThreadState;\n };\n\n constructor(\n threadBinding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) {\n const stateBinding = new ShallowMemoizeSubject({\n path: threadBinding.path,\n getState: () =>\n getThreadState(\n threadBinding.getState(),\n threadListItemBinding.getState(),\n ),\n subscribe: (callback) => {\n const sub1 = threadBinding.subscribe(callback);\n const sub2 = threadListItemBinding.subscribe(callback);\n return () => {\n sub1();\n sub2();\n };\n },\n });\n\n this._threadBinding = {\n path: threadBinding.path,\n getState: () => threadBinding.getState(),\n getStateState: () => stateBinding.getState(),\n outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),\n subscribe: (callback) => threadBinding.subscribe(callback),\n };\n\n this.composer = new ThreadComposerRuntimeImpl(\n new NestedSubscriptionSubject({\n path: {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.composer`,\n composerSource: \"thread\",\n },\n getState: () => this._threadBinding.getState().composer,\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n );\n }\n\n protected __internal_bindMethods() {\n this.append = this.append.bind(this);\n this.unstable_resumeRun = this.unstable_resumeRun.bind(this);\n this.startRun = this.startRun.bind(this);\n this.cancelRun = this.cancelRun.bind(this);\n this.stopSpeaking = this.stopSpeaking.bind(this);\n this.export = this.export.bind(this);\n this.import = this.import.bind(this);\n this.getMesssageByIndex = this.getMesssageByIndex.bind(this);\n this.getMesssageById = this.getMesssageById.bind(this);\n this.subscribe = this.subscribe.bind(this);\n this.unstable_on = this.unstable_on.bind(this);\n this.getModelContext = this.getModelContext.bind(this);\n this.getModelConfig = this.getModelConfig.bind(this);\n this.getState = this.getState.bind(this);\n }\n\n public readonly composer;\n\n public getState() {\n return this._threadBinding.getStateState();\n }\n\n public append(message: CreateAppendMessage) {\n this._threadBinding\n .getState()\n .append(\n toAppendMessage(this._threadBinding.getState().messages, message),\n );\n }\n\n public subscribe(callback: () => void) {\n return this._threadBinding.subscribe(callback);\n }\n\n public getModelContext() {\n return this._threadBinding.getState().getModelContext();\n }\n\n public getModelConfig() {\n return this.getModelContext();\n }\n\n public startRun(configOrParentId: string | null | CreateStartRunConfig) {\n const config =\n configOrParentId === null || typeof configOrParentId === \"string\"\n ? { parentId: configOrParentId }\n : configOrParentId;\n return this._threadBinding.getState().startRun(toStartRunConfig(config));\n }\n\n public unstable_resumeRun(config: CreateResumeRunConfig) {\n return this._threadBinding.getState().resumeRun(toResumeRunConfig(config));\n }\n\n public cancelRun() {\n this._threadBinding.getState().cancelRun();\n }\n\n public stopSpeaking() {\n return this._threadBinding.getState().stopSpeaking();\n }\n\n public export() {\n return this._threadBinding.getState().export();\n }\n\n public import(data: ExportedMessageRepository) {\n this._threadBinding.getState().import(data);\n }\n\n public getMesssageByIndex(idx: number) {\n if (idx < 0) throw new Error(\"Message index must be >= 0\");\n\n return this._getMessageRuntime(\n {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,\n messageSelector: { type: \"index\", index: idx },\n },\n () => {\n const messages = this._threadBinding.getState().messages;\n const message = messages[idx];\n if (!message) return undefined;\n return {\n message,\n parentId: messages[idx - 1]?.id ?? null,\n };\n },\n );\n }\n\n public getMesssageById(messageId: string) {\n return this._getMessageRuntime(\n {\n ...this.path,\n ref:\n this.path.ref +\n `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,\n messageSelector: { type: \"messageId\", messageId: messageId },\n },\n () => this._threadBinding.getState().getMessageById(messageId),\n );\n }\n\n private _getMessageRuntime(\n path: MessageRuntimePath,\n callback: () =>\n | { parentId: string | null; message: ThreadMessage }\n | undefined,\n ) {\n return new MessageRuntimeImpl(\n new ShallowMemoizeSubject({\n path,\n getState: () => {\n const { message, parentId } = callback() ?? {};\n\n const { messages, speech: speechState } =\n this._threadBinding.getState();\n\n if (!message || parentId === undefined) return SKIP_UPDATE;\n\n const thread = this._threadBinding.getState();\n\n const branches = thread.getBranches(message.id);\n const submittedFeedback = thread.getSubmittedFeedback(message.id);\n\n return {\n ...message,\n ...{ [symbolInnerMessage]: (message as any)[symbolInnerMessage] },\n\n isLast: messages.at(-1)?.id === message.id,\n parentId,\n\n branchNumber: branches.indexOf(message.id) + 1,\n branchCount: branches.length,\n\n speech:\n speechState?.messageId === message.id ? speechState : undefined,\n\n submittedFeedback,\n } satisfies MessageState;\n },\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n this._threadBinding,\n );\n }\n\n private _eventSubscriptionSubjects = new Map<\n string,\n EventSubscriptionSubject<ThreadRuntimeEventType>\n >();\n\n public unstable_on(\n event: ThreadRuntimeEventType,\n callback: () => void,\n ): Unsubscribe {\n let subject = this._eventSubscriptionSubjects.get(event);\n if (!subject) {\n subject = new EventSubscriptionSubject({\n event: event,\n binding: this._threadBinding,\n });\n this._eventSubscriptionSubjects.set(event, subject);\n }\n return subject.subscribe(callback);\n }\n}\n"],"mappings":"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","names":["callback"]}
1
+ {"version":3,"sources":["../../src/api/ThreadRuntime.ts"],"sourcesContent":["import {\n ThreadSuggestion,\n RuntimeCapabilities,\n ThreadRuntimeCore,\n SpeechState,\n ThreadRuntimeEventType,\n StartRunConfig,\n ResumeRunConfig,\n} from \"../runtimes/core/ThreadRuntimeCore\";\nimport { ExportedMessageRepository } from \"../runtimes/utils/MessageRepository\";\nimport { AppendMessage, ThreadMessage, Unsubscribe } from \"../types\";\nimport {\n MessageRuntime,\n MessageRuntimeImpl,\n MessageState,\n} from \"./MessageRuntime\";\nimport { NestedSubscriptionSubject } from \"./subscribable/NestedSubscriptionSubject\";\nimport { ShallowMemoizeSubject } from \"./subscribable/ShallowMemoizeSubject\";\nimport { SubscribableWithState } from \"./subscribable/Subscribable\";\nimport {\n ThreadComposerRuntime,\n ThreadComposerRuntimeImpl,\n} from \"./ComposerRuntime\";\nimport { SKIP_UPDATE } from \"./subscribable/SKIP_UPDATE\";\nimport {\n MessageRuntimePath,\n ThreadListItemRuntimePath,\n ThreadRuntimePath,\n} from \"./RuntimePathTypes\";\nimport { ThreadListItemState } from \"./ThreadListItemRuntime\";\nimport { RunConfig } from \"../types/AssistantTypes\";\nimport { EventSubscriptionSubject } from \"./subscribable/EventSubscriptionSubject\";\nimport { symbolInnerMessage } from \"../runtimes/external-store/getExternalStoreMessage\";\nimport { ModelContext } from \"../model-context\";\nimport { ChatModelRunOptions, ChatModelRunResult } from \"../runtimes\";\n\nexport type CreateStartRunConfig = {\n parentId: string | null;\n sourceId?: string | null | undefined;\n runConfig?: RunConfig | undefined;\n};\n\nexport type CreateResumeRunConfig = CreateStartRunConfig & {\n stream: (\n options: ChatModelRunOptions,\n ) => AsyncGenerator<ChatModelRunResult, void, unknown>;\n};\n\nconst toResumeRunConfig = (message: CreateResumeRunConfig): ResumeRunConfig => {\n return {\n parentId: message.parentId ?? null,\n sourceId: message.sourceId ?? null,\n runConfig: message.runConfig ?? {},\n stream: message.stream,\n };\n};\n\nconst toStartRunConfig = (message: CreateStartRunConfig): StartRunConfig => {\n return {\n parentId: message.parentId ?? null,\n sourceId: message.sourceId ?? null,\n runConfig: message.runConfig ?? {},\n };\n};\n\nexport type CreateAppendMessage =\n | string\n | {\n parentId?: string | null | undefined;\n sourceId?: string | null | undefined;\n role?: AppendMessage[\"role\"] | undefined;\n content: AppendMessage[\"content\"];\n attachments?: AppendMessage[\"attachments\"] | undefined;\n startRun?: boolean | undefined;\n };\n\nconst toAppendMessage = (\n messages: readonly ThreadMessage[],\n message: CreateAppendMessage,\n): AppendMessage => {\n if (typeof message === \"string\") {\n return {\n createdAt: new Date(),\n parentId: messages.at(-1)?.id ?? null,\n sourceId: null,\n runConfig: {},\n role: \"user\",\n content: [{ type: \"text\", text: message }],\n attachments: [],\n metadata: { custom: {} },\n };\n }\n\n if (message.role && message.parentId && message.attachments) {\n return message as AppendMessage;\n }\n\n return {\n ...message,\n parentId: message.parentId ?? messages.at(-1)?.id ?? null,\n sourceId: message.sourceId ?? null,\n role: message.role ?? \"user\",\n attachments: message.attachments ?? [],\n } as AppendMessage;\n};\n\nexport type ThreadRuntimeCoreBinding = SubscribableWithState<\n ThreadRuntimeCore,\n ThreadRuntimePath\n> & {\n outerSubscribe(callback: () => void): Unsubscribe;\n};\n\nexport type ThreadListItemRuntimeBinding = SubscribableWithState<\n ThreadListItemState,\n ThreadListItemRuntimePath\n>;\n\nexport type ThreadState = {\n /**\n * The thread ID.\n * @deprecated This field is deprecated and will be removed in 0.8.0. Use `useThreadListItem().id` instead.\n */\n readonly threadId: string;\n\n /**\n * The thread metadata.\n *\n * @deprecated Use `useThreadListItem()` instead. This field is deprecated and will be removed in 0.8.0.\n */\n readonly metadata: ThreadListItemState;\n\n /**\n * Whether the thread is disabled. Disabled threads cannot receive new messages.\n */\n readonly isDisabled: boolean;\n\n /**\n * Whether the thread is running. A thread is considered running when there is an active stream connection to the backend.\n */\n readonly isRunning: boolean;\n\n /**\n * The capabilities of the thread, such as whether the thread supports editing, branch switching, etc.\n */\n readonly capabilities: RuntimeCapabilities;\n\n /**\n * The messages in the currently selected branch of the thread.\n */\n readonly messages: readonly ThreadMessage[];\n\n /**\n * Follow up message suggestions to show the user.\n */\n readonly suggestions: readonly ThreadSuggestion[];\n\n /**\n * Custom extra information provided by the runtime.\n */\n readonly extras: unknown;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n readonly speech: SpeechState | undefined;\n};\n\nexport const getThreadState = (\n runtime: ThreadRuntimeCore,\n threadListItemState: ThreadListItemState,\n): ThreadState => {\n const lastMessage = runtime.messages.at(-1);\n return Object.freeze({\n threadId: threadListItemState.id,\n metadata: threadListItemState,\n capabilities: runtime.capabilities,\n isDisabled: runtime.isDisabled,\n isRunning:\n lastMessage?.role !== \"assistant\"\n ? false\n : lastMessage.status.type === \"running\",\n messages: runtime.messages,\n suggestions: runtime.suggestions,\n extras: runtime.extras,\n speech: runtime.speech,\n });\n};\n\nexport type ThreadRuntime = {\n /**\n * The selector for the thread runtime.\n */\n readonly path: ThreadRuntimePath;\n\n /**\n * The thread composer runtime.\n */\n readonly composer: ThreadComposerRuntime;\n\n /**\n * Gets a snapshot of the thread state.\n */\n getState(): ThreadState;\n\n /**\n * Append a new message to the thread.\n *\n * @example ```ts\n * // append a new user message with the text \"Hello, world!\"\n * threadRuntime.append(\"Hello, world!\");\n * ```\n *\n * @example ```ts\n * // append a new assistant message with the text \"Hello, world!\"\n * threadRuntime.append({\n * role: \"assistant\",\n * content: [{ type: \"text\", text: \"Hello, world!\" }],\n * });\n * ```\n */\n append(message: CreateAppendMessage): void;\n\n /**\n * @deprecated pass an object with `parentId` instead. This will be removed in 0.8.0.\n */\n startRun(parentId: string | null): void;\n /**\n * Start a new run with the given configuration.\n * @param config The configuration for starting the run\n */\n startRun(config: CreateStartRunConfig): void;\n\n /**\n * Resume a run with the given configuration.\n * @param config The configuration for resuming the run\n **/\n unstable_resumeRun(config: CreateResumeRunConfig): void;\n\n subscribe(callback: () => void): Unsubscribe;\n cancelRun(): void;\n getModelContext(): ModelContext;\n\n /**\n * @deprecated This method was renamed to `getModelContext`.\n */\n getModelConfig(): ModelContext;\n\n export(): ExportedMessageRepository;\n import(repository: ExportedMessageRepository): void;\n getMesssageByIndex(idx: number): MessageRuntime;\n getMesssageById(messageId: string): MessageRuntime;\n\n /**\n * @deprecated This API is still under active development and might change without notice.\n */\n stopSpeaking: () => void;\n\n unstable_on(event: ThreadRuntimeEventType, callback: () => void): Unsubscribe;\n};\n\nexport class ThreadRuntimeImpl implements ThreadRuntime {\n public get path() {\n return this._threadBinding.path;\n }\n\n public get __internal_threadBinding() {\n return this._threadBinding;\n }\n\n private readonly _threadBinding: ThreadRuntimeCoreBinding & {\n getStateState(): ThreadState;\n };\n\n constructor(\n threadBinding: ThreadRuntimeCoreBinding,\n threadListItemBinding: ThreadListItemRuntimeBinding,\n ) {\n const stateBinding = new ShallowMemoizeSubject({\n path: threadBinding.path,\n getState: () =>\n getThreadState(\n threadBinding.getState(),\n threadListItemBinding.getState(),\n ),\n subscribe: (callback) => {\n const sub1 = threadBinding.subscribe(callback);\n const sub2 = threadListItemBinding.subscribe(callback);\n return () => {\n sub1();\n sub2();\n };\n },\n });\n\n this._threadBinding = {\n path: threadBinding.path,\n getState: () => threadBinding.getState(),\n getStateState: () => stateBinding.getState(),\n outerSubscribe: (callback) => threadBinding.outerSubscribe(callback),\n subscribe: (callback) => threadBinding.subscribe(callback),\n };\n\n this.composer = new ThreadComposerRuntimeImpl(\n new NestedSubscriptionSubject({\n path: {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.composer`,\n composerSource: \"thread\",\n },\n getState: () => this._threadBinding.getState().composer,\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n );\n }\n\n protected __internal_bindMethods() {\n this.append = this.append.bind(this);\n this.unstable_resumeRun = this.unstable_resumeRun.bind(this);\n this.startRun = this.startRun.bind(this);\n this.cancelRun = this.cancelRun.bind(this);\n this.stopSpeaking = this.stopSpeaking.bind(this);\n this.export = this.export.bind(this);\n this.import = this.import.bind(this);\n this.getMesssageByIndex = this.getMesssageByIndex.bind(this);\n this.getMesssageById = this.getMesssageById.bind(this);\n this.subscribe = this.subscribe.bind(this);\n this.unstable_on = this.unstable_on.bind(this);\n this.getModelContext = this.getModelContext.bind(this);\n this.getModelConfig = this.getModelConfig.bind(this);\n this.getState = this.getState.bind(this);\n }\n\n public readonly composer;\n\n public getState() {\n return this._threadBinding.getStateState();\n }\n\n public append(message: CreateAppendMessage) {\n this._threadBinding\n .getState()\n .append(\n toAppendMessage(this._threadBinding.getState().messages, message),\n );\n }\n\n public subscribe(callback: () => void) {\n return this._threadBinding.subscribe(callback);\n }\n\n public getModelContext() {\n return this._threadBinding.getState().getModelContext();\n }\n\n public getModelConfig() {\n return this.getModelContext();\n }\n\n public startRun(configOrParentId: string | null | CreateStartRunConfig) {\n const config =\n configOrParentId === null || typeof configOrParentId === \"string\"\n ? { parentId: configOrParentId }\n : configOrParentId;\n return this._threadBinding.getState().startRun(toStartRunConfig(config));\n }\n\n public unstable_resumeRun(config: CreateResumeRunConfig) {\n return this._threadBinding.getState().resumeRun(toResumeRunConfig(config));\n }\n\n public cancelRun() {\n this._threadBinding.getState().cancelRun();\n }\n\n public stopSpeaking() {\n return this._threadBinding.getState().stopSpeaking();\n }\n\n public export() {\n return this._threadBinding.getState().export();\n }\n\n public import(data: ExportedMessageRepository) {\n this._threadBinding.getState().import(data);\n }\n\n public getMesssageByIndex(idx: number) {\n if (idx < 0) throw new Error(\"Message index must be >= 0\");\n\n return this._getMessageRuntime(\n {\n ...this.path,\n ref: this.path.ref + `${this.path.ref}.messages[${idx}]`,\n messageSelector: { type: \"index\", index: idx },\n },\n () => {\n const messages = this._threadBinding.getState().messages;\n const message = messages[idx];\n if (!message) return undefined;\n return {\n message,\n parentId: messages[idx - 1]?.id ?? null,\n };\n },\n );\n }\n\n public getMesssageById(messageId: string) {\n return this._getMessageRuntime(\n {\n ...this.path,\n ref:\n this.path.ref +\n `${this.path.ref}.messages[messageId=${JSON.stringify(messageId)}]`,\n messageSelector: { type: \"messageId\", messageId: messageId },\n },\n () => this._threadBinding.getState().getMessageById(messageId),\n );\n }\n\n private _getMessageRuntime(\n path: MessageRuntimePath,\n callback: () =>\n | { parentId: string | null; message: ThreadMessage }\n | undefined,\n ) {\n return new MessageRuntimeImpl(\n new ShallowMemoizeSubject({\n path,\n getState: () => {\n const { message, parentId } = callback() ?? {};\n\n const { messages, speech: speechState } =\n this._threadBinding.getState();\n\n if (!message || parentId === undefined) return SKIP_UPDATE;\n\n const thread = this._threadBinding.getState();\n\n const branches = thread.getBranches(message.id);\n const submittedFeedback = thread.getSubmittedFeedback(message.id);\n\n return {\n ...message,\n ...{ [symbolInnerMessage]: (message as any)[symbolInnerMessage] },\n\n isLast: messages.at(-1)?.id === message.id,\n parentId,\n\n branchNumber: branches.indexOf(message.id) + 1,\n branchCount: branches.length,\n\n speech:\n speechState?.messageId === message.id ? speechState : undefined,\n\n submittedFeedback,\n } satisfies MessageState;\n },\n subscribe: (callback) => this._threadBinding.subscribe(callback),\n }),\n this._threadBinding,\n );\n }\n\n private _eventSubscriptionSubjects = new Map<\n string,\n EventSubscriptionSubject<ThreadRuntimeEventType>\n >();\n\n public unstable_on(\n event: ThreadRuntimeEventType,\n callback: () => void,\n ): Unsubscribe {\n let subject = this._eventSubscriptionSubjects.get(event);\n if (!subject) {\n subject = new EventSubscriptionSubject({\n event: event,\n binding: this._threadBinding,\n });\n this._eventSubscriptionSubjects.set(event, subject);\n }\n return subject.subscribe(callback);\n }\n}\n"],"mappings":"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","names":["callback"]}
@@ -0,0 +1,9 @@
1
+ export type { AssistantRuntime } from "./AssistantRuntime";
2
+ export type { ThreadRuntime, ThreadState, CreateAppendMessage, CreateStartRunConfig, } from "./ThreadRuntime";
3
+ export type { MessageRuntime, MessageState } from "./MessageRuntime";
4
+ export type { ContentPartRuntime, ContentPartState, } from "./ContentPartRuntime";
5
+ export type { ComposerRuntime, ThreadComposerRuntime, EditComposerRuntime, EditComposerState, ThreadComposerState, ComposerState, } from "./ComposerRuntime";
6
+ export type { AttachmentRuntime, AttachmentState } from "./AttachmentRuntime";
7
+ export type { ThreadListRuntime, ThreadListState } from "./ThreadListRuntime";
8
+ export type { ThreadListItemRuntime, ThreadListItemState, } from "./ThreadListItemRuntime";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EACV,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrE,YAAY,EACV,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,GACd,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC9E,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC9E,YAAY,EACV,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { Unsubscribe } from "../../types/Unsubscribe";
2
+ export declare abstract class BaseSubject {
3
+ private _subscriptions;
4
+ private _connection;
5
+ protected get isConnected(): boolean;
6
+ protected abstract _connect(): Unsubscribe;
7
+ protected notifySubscribers(): void;
8
+ private _updateConnection;
9
+ subscribe(callback: () => void): () => void;
10
+ }
11
+ //# sourceMappingURL=BaseSubject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseSubject.d.ts","sourceRoot":"","sources":["../../../src/api/subscribable/BaseSubject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,8BAAsB,WAAW;IAC/B,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,WAAW,CAA0B;IAE7C,SAAS,KAAK,WAAW,YAExB;IAED,SAAS,CAAC,QAAQ,CAAC,QAAQ,IAAI,WAAW;IAE1C,SAAS,CAAC,iBAAiB;IAI3B,OAAO,CAAC,iBAAiB;IAUlB,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI;CAStC"}
@@ -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":[]}
@@ -0,0 +1,13 @@
1
+ import { Unsubscribe } from "../../types";
2
+ import { BaseSubject } from "./BaseSubject";
3
+ import { EventSubscribable } from "./Subscribable";
4
+ export declare class EventSubscriptionSubject<TEvent extends string> extends BaseSubject {
5
+ private config;
6
+ constructor(config: EventSubscribable<TEvent>);
7
+ getState(): {
8
+ unstable_on: (event: TEvent, callback: () => void) => Unsubscribe;
9
+ } | undefined;
10
+ outerSubscribe(callback: () => void): Unsubscribe;
11
+ protected _connect(): Unsubscribe;
12
+ }
13
+ //# sourceMappingURL=EventSubscriptionSubject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventSubscriptionSubject.d.ts","sourceRoot":"","sources":["../../../src/api/subscribable/EventSubscriptionSubject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,qBAAa,wBAAwB,CACnC,MAAM,SAAS,MAAM,CACrB,SAAQ,WAAW;IACP,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC;IAI9C,QAAQ;;;IAIR,cAAc,CAAC,QAAQ,EAAE,MAAM,IAAI;IAI1C,SAAS,CAAC,QAAQ,IAAI,WAAW;CAwBlC"}
@@ -1,5 +1,6 @@
1
- import { BaseSubject } from "./BaseSubject";
2
- class EventSubscriptionSubject extends BaseSubject {
1
+ // src/api/subscribable/EventSubscriptionSubject.ts
2
+ import { BaseSubject } from "./BaseSubject.js";
3
+ var EventSubscriptionSubject = class extends BaseSubject {
3
4
  constructor(config) {
4
5
  super();
5
6
  this.config = config;
@@ -29,7 +30,7 @@ class EventSubscriptionSubject extends BaseSubject {
29
30
  innerUnsubscribe?.();
30
31
  };
31
32
  }
32
- }
33
+ };
33
34
  export {
34
35
  EventSubscriptionSubject
35
36
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/subscribable/EventSubscriptionSubject.ts"],"sourcesContent":["import { Unsubscribe } from \"../../types\";\nimport { BaseSubject } from \"./BaseSubject\";\nimport { EventSubscribable } from \"./Subscribable\";\n\nexport class EventSubscriptionSubject<\n TEvent extends string,\n> extends BaseSubject {\n constructor(private config: EventSubscribable<TEvent>) {\n super();\n }\n\n public getState() {\n return this.config.binding.getState();\n }\n\n public outerSubscribe(callback: () => void) {\n return this.config.binding.subscribe(callback);\n }\n\n protected _connect(): Unsubscribe {\n const callback = () => {\n this.notifySubscribers();\n };\n\n let lastState = this.config.binding.getState();\n let innerUnsubscribe = lastState?.unstable_on(this.config.event, callback);\n const onRuntimeUpdate = () => {\n const newState = this.config.binding.getState();\n if (newState === lastState) return;\n lastState = newState;\n\n innerUnsubscribe?.();\n innerUnsubscribe = this.config.binding\n .getState()\n ?.unstable_on(this.config.event, callback);\n };\n\n const outerUnsubscribe = this.outerSubscribe(onRuntimeUpdate);\n return () => {\n outerUnsubscribe?.();\n innerUnsubscribe?.();\n };\n }\n}\n"],"mappings":"AACA,SAAS,mBAAmB;AAGrB,MAAM,iCAEH,YAAY;AAAA,EACpB,YAAoB,QAAmC;AACrD,UAAM;AADY;AAAA,EAEpB;AAAA,EAEO,WAAW;AAChB,WAAO,KAAK,OAAO,QAAQ,SAAS;AAAA,EACtC;AAAA,EAEO,eAAe,UAAsB;AAC1C,WAAO,KAAK,OAAO,QAAQ,UAAU,QAAQ;AAAA,EAC/C;AAAA,EAEU,WAAwB;AAChC,UAAM,WAAW,MAAM;AACrB,WAAK,kBAAkB;AAAA,IACzB;AAEA,QAAI,YAAY,KAAK,OAAO,QAAQ,SAAS;AAC7C,QAAI,mBAAmB,WAAW,YAAY,KAAK,OAAO,OAAO,QAAQ;AACzE,UAAM,kBAAkB,MAAM;AAC5B,YAAM,WAAW,KAAK,OAAO,QAAQ,SAAS;AAC9C,UAAI,aAAa,UAAW;AAC5B,kBAAY;AAEZ,yBAAmB;AACnB,yBAAmB,KAAK,OAAO,QAC5B,SAAS,GACR,YAAY,KAAK,OAAO,OAAO,QAAQ;AAAA,IAC7C;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/EventSubscriptionSubject.ts"],"sourcesContent":["import { Unsubscribe } from \"../../types\";\nimport { BaseSubject } from \"./BaseSubject\";\nimport { EventSubscribable } from \"./Subscribable\";\n\nexport class EventSubscriptionSubject<\n TEvent extends string,\n> extends BaseSubject {\n constructor(private config: EventSubscribable<TEvent>) {\n super();\n }\n\n public getState() {\n return this.config.binding.getState();\n }\n\n public outerSubscribe(callback: () => void) {\n return this.config.binding.subscribe(callback);\n }\n\n protected _connect(): Unsubscribe {\n const callback = () => {\n this.notifySubscribers();\n };\n\n let lastState = this.config.binding.getState();\n let innerUnsubscribe = lastState?.unstable_on(this.config.event, callback);\n const onRuntimeUpdate = () => {\n const newState = this.config.binding.getState();\n if (newState === lastState) return;\n lastState = newState;\n\n innerUnsubscribe?.();\n innerUnsubscribe = this.config.binding\n .getState()\n ?.unstable_on(this.config.event, callback);\n };\n\n const outerUnsubscribe = this.outerSubscribe(onRuntimeUpdate);\n return () => {\n outerUnsubscribe?.();\n innerUnsubscribe?.();\n };\n }\n}\n"],"mappings":";AACA,SAAS,mBAAmB;AAGrB,IAAM,2BAAN,cAEG,YAAY;AAAA,EACpB,YAAoB,QAAmC;AACrD,UAAM;AADY;AAAA,EAEpB;AAAA,EAEO,WAAW;AAChB,WAAO,KAAK,OAAO,QAAQ,SAAS;AAAA,EACtC;AAAA,EAEO,eAAe,UAAsB;AAC1C,WAAO,KAAK,OAAO,QAAQ,UAAU,QAAQ;AAAA,EAC/C;AAAA,EAEU,WAAwB;AAChC,UAAM,WAAW,MAAM;AACrB,WAAK,kBAAkB;AAAA,IACzB;AAEA,QAAI,YAAY,KAAK,OAAO,QAAQ,SAAS;AAC7C,QAAI,mBAAmB,WAAW,YAAY,KAAK,OAAO,OAAO,QAAQ;AACzE,UAAM,kBAAkB,MAAM;AAC5B,YAAM,WAAW,KAAK,OAAO,QAAQ,SAAS;AAC9C,UAAI,aAAa,UAAW;AAC5B,kBAAY;AAEZ,yBAAmB;AACnB,yBAAmB,KAAK,OAAO,QAC5B,SAAS,GACR,YAAY,KAAK,OAAO,OAAO,QAAQ;AAAA,IAC7C;AAEA,UAAM,mBAAmB,KAAK,eAAe,eAAe;AAC5D,WAAO,MAAM;AACX,yBAAmB;AACnB,yBAAmB;AAAA,IACrB;AAAA,EACF;AACF;","names":[]}
@@ -0,0 +1,13 @@
1
+ import { BaseSubject } from "./BaseSubject";
2
+ import { SKIP_UPDATE } from "./SKIP_UPDATE";
3
+ import { SubscribableWithState } from "./Subscribable";
4
+ export declare class LazyMemoizeSubject<TState extends object, TPath> extends BaseSubject implements SubscribableWithState<TState, TPath> {
5
+ private binding;
6
+ get path(): TPath;
7
+ constructor(binding: SubscribableWithState<TState | SKIP_UPDATE, TPath>);
8
+ private _previousStateDirty;
9
+ private _previousState;
10
+ getState: () => TState;
11
+ protected _connect(): import("../..").Unsubscribe;
12
+ }
13
+ //# sourceMappingURL=LazyMemoizeSubject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyMemoizeSubject.d.ts","sourceRoot":"","sources":["../../../src/api/subscribable/LazyMemoizeSubject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,qBAAa,kBAAkB,CAAC,MAAM,SAAS,MAAM,EAAE,KAAK,CAC1D,SAAQ,WACR,YAAW,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC;IAO7C,OAAO,CAAC,OAAO;IALjB,IAAW,IAAI,UAEd;gBAGS,OAAO,EAAE,qBAAqB,CAAC,MAAM,GAAG,WAAW,EAAE,KAAK,CAAC;IAKrE,OAAO,CAAC,mBAAmB,CAAQ;IACnC,OAAO,CAAC,cAAc,CAAqB;IACpC,QAAQ,eAWb;IAEF,SAAS,CAAC,QAAQ;CAQnB"}
@@ -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.js";
3
+ import { SKIP_UPDATE } from "./SKIP_UPDATE.js";
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":[]}
@@ -0,0 +1,12 @@
1
+ import { Unsubscribe } from "../../types";
2
+ import { BaseSubject } from "./BaseSubject";
3
+ import { NestedSubscribable, Subscribable, SubscribableWithState } from "./Subscribable";
4
+ export declare class NestedSubscriptionSubject<TState extends Subscribable | undefined, TPath> extends BaseSubject implements SubscribableWithState<TState, TPath>, NestedSubscribable<TState, TPath> {
5
+ private binding;
6
+ get path(): TPath;
7
+ constructor(binding: NestedSubscribable<TState, TPath>);
8
+ getState(): TState;
9
+ outerSubscribe(callback: () => void): Unsubscribe;
10
+ protected _connect(): Unsubscribe;
11
+ }
12
+ //# sourceMappingURL=NestedSubscriptionSubject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NestedSubscriptionSubject.d.ts","sourceRoot":"","sources":["../../../src/api/subscribable/NestedSubscriptionSubject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAExB,qBAAa,yBAAyB,CAClC,MAAM,SAAS,YAAY,GAAG,SAAS,EACvC,KAAK,CAEP,SAAQ,WACR,YACE,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC,EACpC,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC;IAMvB,OAAO,CAAC,OAAO;IAJ3B,IAAW,IAAI,UAEd;gBAEmB,OAAO,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC;IAIvD,QAAQ;IAIR,cAAc,CAAC,QAAQ,EAAE,MAAM,IAAI;IAI1C,SAAS,CAAC,QAAQ,IAAI,WAAW;CAwBlC"}
@@ -1,5 +1,6 @@
1
- import { BaseSubject } from "./BaseSubject";
2
- class NestedSubscriptionSubject extends BaseSubject {
1
+ // src/api/subscribable/NestedSubscriptionSubject.ts
2
+ import { BaseSubject } from "./BaseSubject.js";
3
+ var NestedSubscriptionSubject = class extends BaseSubject {
3
4
  constructor(binding) {
4
5
  super();
5
6
  this.binding = binding;
@@ -33,7 +34,7 @@ class NestedSubscriptionSubject extends BaseSubject {
33
34
  innerUnsubscribe?.();
34
35
  };
35
36
  }
36
- }
37
+ };
37
38
  export {
38
39
  NestedSubscriptionSubject
39
40
  };
@@ -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<\n TState extends Subscribable | undefined,\n TPath,\n >\n extends BaseSubject\n implements\n SubscribableWithState<TState, TPath>,\n 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":"AACA,SAAS,mBAAmB;AAOrB,MAAM,kCAIH,YAIV;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<\n TState extends Subscribable | undefined,\n TPath,\n >\n extends BaseSubject\n implements\n SubscribableWithState<TState, TPath>,\n 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":";AACA,SAAS,mBAAmB;AAOrB,IAAM,4BAAN,cAIG,YAIV;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":[]}
@@ -0,0 +1,3 @@
1
+ export declare const SKIP_UPDATE: unique symbol;
2
+ export type SKIP_UPDATE = typeof SKIP_UPDATE;
3
+ //# sourceMappingURL=SKIP_UPDATE.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SKIP_UPDATE.d.ts","sourceRoot":"","sources":["../../../src/api/subscribable/SKIP_UPDATE.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,eAAwB,CAAC;AACjD,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC"}
@@ -1,4 +1,5 @@
1
- const SKIP_UPDATE = Symbol("skip-update");
1
+ // src/api/subscribable/SKIP_UPDATE.ts
2
+ var SKIP_UPDATE = Symbol("skip-update");
2
3
  export {
3
4
  SKIP_UPDATE
4
5
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/subscribable/SKIP_UPDATE.ts"],"sourcesContent":["export const SKIP_UPDATE = Symbol(\"skip-update\");\nexport type SKIP_UPDATE = typeof SKIP_UPDATE;\n"],"mappings":"AAAO,MAAM,cAAc,OAAO,aAAa;","names":[]}
1
+ {"version":3,"sources":["../../../src/api/subscribable/SKIP_UPDATE.ts"],"sourcesContent":["export const SKIP_UPDATE = Symbol(\"skip-update\");\nexport type SKIP_UPDATE = typeof SKIP_UPDATE;\n"],"mappings":";AAAO,IAAM,cAAc,OAAO,aAAa;","names":[]}