@assistant-ui/react 0.10.50 → 0.11.0

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 (526) hide show
  1. package/dist/api/AttachmentRuntime.d.ts.map +1 -1
  2. package/dist/api/AttachmentRuntime.js +1 -0
  3. package/dist/api/AttachmentRuntime.js.map +1 -1
  4. package/dist/api/ComposerRuntime.d.ts +5 -2
  5. package/dist/api/ComposerRuntime.d.ts.map +1 -1
  6. package/dist/api/ComposerRuntime.js +4 -6
  7. package/dist/api/ComposerRuntime.js.map +1 -1
  8. package/dist/api/MessagePartRuntime.d.ts.map +1 -1
  9. package/dist/api/MessagePartRuntime.js +1 -0
  10. package/dist/api/MessagePartRuntime.js.map +1 -1
  11. package/dist/api/MessageRuntime.d.ts.map +1 -1
  12. package/dist/api/MessageRuntime.js +1 -0
  13. package/dist/api/MessageRuntime.js.map +1 -1
  14. package/dist/api/ThreadListItemRuntime.d.ts.map +1 -1
  15. package/dist/api/ThreadListItemRuntime.js +5 -0
  16. package/dist/api/ThreadListItemRuntime.js.map +1 -1
  17. package/dist/api/ThreadListRuntime.d.ts +2 -3
  18. package/dist/api/ThreadListRuntime.d.ts.map +1 -1
  19. package/dist/api/ThreadListRuntime.js +6 -7
  20. package/dist/api/ThreadListRuntime.js.map +1 -1
  21. package/dist/api/ThreadRuntime.d.ts +6 -6
  22. package/dist/api/ThreadRuntime.d.ts.map +1 -1
  23. package/dist/api/ThreadRuntime.js +5 -4
  24. package/dist/api/ThreadRuntime.js.map +1 -1
  25. package/dist/client/AssistantRuntimeClient.d.ts +86 -0
  26. package/dist/client/AssistantRuntimeClient.d.ts.map +1 -0
  27. package/dist/client/AssistantRuntimeClient.js +138 -0
  28. package/dist/client/AssistantRuntimeClient.js.map +1 -0
  29. package/dist/client/AttachmentClient.d.ts +6 -0
  30. package/dist/client/AttachmentClient.d.ts.map +1 -0
  31. package/dist/client/AttachmentClient.js +1 -0
  32. package/dist/client/AttachmentClient.js.map +1 -0
  33. package/dist/client/ComposerClient.d.ts +42 -0
  34. package/dist/client/ComposerClient.d.ts.map +1 -0
  35. package/dist/client/ComposerClient.js +76 -0
  36. package/dist/client/ComposerClient.js.map +1 -0
  37. package/dist/client/EventManagerClient.d.ts +9 -0
  38. package/dist/client/EventManagerClient.d.ts.map +1 -0
  39. package/dist/client/EventManagerClient.js +40 -0
  40. package/dist/client/EventManagerClient.js.map +1 -0
  41. package/dist/client/MessageClient.d.ts +67 -0
  42. package/dist/client/MessageClient.d.ts.map +1 -0
  43. package/dist/client/MessageClient.js +108 -0
  44. package/dist/client/MessageClient.js.map +1 -0
  45. package/dist/client/MessagePartClient.d.ts +21 -0
  46. package/dist/client/MessagePartClient.d.ts.map +1 -0
  47. package/dist/client/MessagePartClient.js +25 -0
  48. package/dist/client/MessagePartClient.js.map +1 -0
  49. package/dist/client/ThreadClient.d.ts +111 -0
  50. package/dist/client/ThreadClient.d.ts.map +1 -0
  51. package/dist/client/ThreadClient.js +126 -0
  52. package/dist/client/ThreadClient.js.map +1 -0
  53. package/dist/client/ThreadListClient.d.ts +33 -0
  54. package/dist/client/ThreadListClient.d.ts.map +1 -0
  55. package/dist/client/ThreadListClient.js +87 -0
  56. package/dist/client/ThreadListClient.js.map +1 -0
  57. package/dist/client/ThreadListItemClient.d.ts +32 -0
  58. package/dist/client/ThreadListItemClient.d.ts.map +1 -0
  59. package/dist/client/ThreadListItemClient.js +53 -0
  60. package/dist/client/ThreadListItemClient.js.map +1 -0
  61. package/dist/client/util-hooks/tapLookupResources.d.ts +16 -0
  62. package/dist/client/util-hooks/tapLookupResources.d.ts.map +1 -0
  63. package/dist/client/util-hooks/tapLookupResources.js +21 -0
  64. package/dist/client/util-hooks/tapLookupResources.js.map +1 -0
  65. package/dist/client/util-hooks/tapSubscribable.d.ts +3 -0
  66. package/dist/client/util-hooks/tapSubscribable.d.ts.map +1 -0
  67. package/dist/client/util-hooks/tapSubscribable.js +16 -0
  68. package/dist/client/util-hooks/tapSubscribable.js.map +1 -0
  69. package/dist/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -1
  70. package/dist/cloud/AssistantCloudThreadHistoryAdapter.js +21 -12
  71. package/dist/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
  72. package/dist/context/providers/AssistantRuntimeProvider.d.ts +3 -3
  73. package/dist/context/providers/AssistantRuntimeProvider.d.ts.map +1 -1
  74. package/dist/context/providers/AssistantRuntimeProvider.js +14 -42
  75. package/dist/context/providers/AssistantRuntimeProvider.js.map +1 -1
  76. package/dist/context/providers/AttachmentProvider.d.ts +8 -0
  77. package/dist/context/providers/AttachmentProvider.d.ts.map +1 -0
  78. package/dist/context/providers/AttachmentProvider.js +41 -0
  79. package/dist/context/providers/AttachmentProvider.js.map +1 -0
  80. package/dist/context/providers/MessageProvider.d.ts +5 -0
  81. package/dist/context/providers/MessageProvider.d.ts.map +1 -0
  82. package/dist/context/providers/MessageProvider.js +47 -0
  83. package/dist/context/providers/MessageProvider.js.map +1 -0
  84. package/dist/context/providers/PartProvider.d.ts +5 -0
  85. package/dist/context/providers/PartProvider.d.ts.map +1 -0
  86. package/dist/context/providers/PartProvider.js +27 -0
  87. package/dist/context/providers/PartProvider.js.map +1 -0
  88. package/dist/context/providers/TextMessagePartProvider.d.ts +5 -8
  89. package/dist/context/providers/TextMessagePartProvider.d.ts.map +1 -1
  90. package/dist/context/providers/TextMessagePartProvider.js +42 -53
  91. package/dist/context/providers/TextMessagePartProvider.js.map +1 -1
  92. package/dist/context/providers/ThreadListItemProvider.d.ts +9 -0
  93. package/dist/context/providers/ThreadListItemProvider.d.ts.map +1 -0
  94. package/dist/context/providers/ThreadListItemProvider.js +65 -0
  95. package/dist/context/providers/ThreadListItemProvider.js.map +1 -0
  96. package/dist/context/providers/index.d.ts +4 -1
  97. package/dist/context/providers/index.d.ts.map +1 -1
  98. package/dist/context/providers/index.js +17 -3
  99. package/dist/context/providers/index.js.map +1 -1
  100. package/dist/context/react/AssistantApiContext.d.ts +112 -0
  101. package/dist/context/react/AssistantApiContext.d.ts.map +1 -0
  102. package/dist/context/react/AssistantApiContext.js +197 -0
  103. package/dist/context/react/AssistantApiContext.js.map +1 -0
  104. package/dist/context/react/index.d.ts +9 -12
  105. package/dist/context/react/index.d.ts.map +1 -1
  106. package/dist/context/react/index.js +38 -33
  107. package/dist/context/react/index.js.map +1 -1
  108. package/dist/context/react/legacy/AssistantContext.d.ts +58 -0
  109. package/dist/context/react/legacy/AssistantContext.d.ts.map +1 -0
  110. package/dist/context/react/legacy/AssistantContext.js +20 -0
  111. package/dist/context/react/legacy/AssistantContext.js.map +1 -0
  112. package/dist/context/react/{AttachmentContext.d.ts → legacy/AttachmentContext.d.ts} +133 -139
  113. package/dist/context/react/legacy/AttachmentContext.d.ts.map +1 -0
  114. package/dist/context/react/{AttachmentContext.js → legacy/AttachmentContext.js} +9 -15
  115. package/dist/context/react/legacy/AttachmentContext.js.map +1 -0
  116. package/dist/context/react/{ComposerContext.d.ts → legacy/ComposerContext.d.ts} +12 -12
  117. package/dist/context/react/legacy/ComposerContext.d.ts.map +1 -0
  118. package/dist/context/react/legacy/ComposerContext.js +19 -0
  119. package/dist/context/react/legacy/ComposerContext.js.map +1 -0
  120. package/dist/context/react/{MessageContext.d.ts → legacy/MessageContext.d.ts} +23 -47
  121. package/dist/context/react/legacy/MessageContext.d.ts.map +1 -0
  122. package/dist/context/react/legacy/MessageContext.js +24 -0
  123. package/dist/context/react/legacy/MessageContext.js.map +1 -0
  124. package/dist/context/react/legacy/MessagePartContext.d.ts +35 -0
  125. package/dist/context/react/legacy/MessagePartContext.d.ts.map +1 -0
  126. package/dist/context/react/legacy/MessagePartContext.js +19 -0
  127. package/dist/context/react/legacy/MessagePartContext.js.map +1 -0
  128. package/dist/context/react/{ThreadContext.d.ts → legacy/ThreadContext.d.ts} +24 -30
  129. package/dist/context/react/legacy/ThreadContext.d.ts.map +1 -0
  130. package/dist/context/react/legacy/ThreadContext.js +33 -0
  131. package/dist/context/react/legacy/ThreadContext.js.map +1 -0
  132. package/dist/context/react/legacy/ThreadListItemContext.d.ts +35 -0
  133. package/dist/context/react/legacy/ThreadListItemContext.d.ts.map +1 -0
  134. package/dist/context/react/legacy/ThreadListItemContext.js +21 -0
  135. package/dist/context/react/legacy/ThreadListItemContext.js.map +1 -0
  136. package/dist/context/stores/index.d.ts +0 -2
  137. package/dist/context/stores/index.d.ts.map +1 -1
  138. package/dist/hooks/useAssistantEvent.d.ts +3 -0
  139. package/dist/hooks/useAssistantEvent.d.ts.map +1 -0
  140. package/dist/hooks/useAssistantEvent.js +22 -0
  141. package/dist/hooks/useAssistantEvent.js.map +1 -0
  142. package/dist/model-context/makeAssistantVisible.js +4 -4
  143. package/dist/model-context/makeAssistantVisible.js.map +1 -1
  144. package/dist/model-context/useAssistantInstructions.js +4 -4
  145. package/dist/model-context/useAssistantInstructions.js.map +1 -1
  146. package/dist/model-context/useAssistantTool.d.ts.map +1 -1
  147. package/dist/model-context/useAssistantTool.js +7 -10
  148. package/dist/model-context/useAssistantTool.js.map +1 -1
  149. package/dist/model-context/useAssistantToolUI.js +5 -5
  150. package/dist/model-context/useAssistantToolUI.js.map +1 -1
  151. package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
  152. package/dist/primitives/actionBar/ActionBarCopy.js +12 -17
  153. package/dist/primitives/actionBar/ActionBarCopy.js.map +1 -1
  154. package/dist/primitives/actionBar/ActionBarEdit.js +5 -5
  155. package/dist/primitives/actionBar/ActionBarEdit.js.map +1 -1
  156. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
  157. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js +6 -7
  158. package/dist/primitives/actionBar/ActionBarFeedbackNegative.js.map +1 -1
  159. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js +6 -6
  160. package/dist/primitives/actionBar/ActionBarFeedbackPositive.js.map +1 -1
  161. package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
  162. package/dist/primitives/actionBar/ActionBarReload.js +6 -10
  163. package/dist/primitives/actionBar/ActionBarReload.js.map +1 -1
  164. package/dist/primitives/actionBar/ActionBarSpeak.js +6 -6
  165. package/dist/primitives/actionBar/ActionBarSpeak.js.map +1 -1
  166. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
  167. package/dist/primitives/actionBar/ActionBarStopSpeaking.js +5 -8
  168. package/dist/primitives/actionBar/ActionBarStopSpeaking.js.map +1 -1
  169. package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts.map +1 -1
  170. package/dist/primitives/actionBar/useActionBarFloatStatus.js +10 -21
  171. package/dist/primitives/actionBar/useActionBarFloatStatus.js.map +1 -1
  172. package/dist/primitives/assistantModal/AssistantModalRoot.js +4 -4
  173. package/dist/primitives/assistantModal/AssistantModalRoot.js.map +1 -1
  174. package/dist/primitives/attachment/AttachmentName.js +2 -2
  175. package/dist/primitives/attachment/AttachmentName.js.map +1 -1
  176. package/dist/primitives/attachment/AttachmentRemove.js +4 -4
  177. package/dist/primitives/attachment/AttachmentRemove.js.map +1 -1
  178. package/dist/primitives/attachment/AttachmentThumb.d.ts.map +1 -1
  179. package/dist/primitives/attachment/AttachmentThumb.js +5 -2
  180. package/dist/primitives/attachment/AttachmentThumb.js.map +1 -1
  181. package/dist/primitives/branchPicker/BranchPickerCount.js +2 -2
  182. package/dist/primitives/branchPicker/BranchPickerCount.js.map +1 -1
  183. package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
  184. package/dist/primitives/branchPicker/BranchPickerNext.js +7 -8
  185. package/dist/primitives/branchPicker/BranchPickerNext.js.map +1 -1
  186. package/dist/primitives/branchPicker/BranchPickerNumber.js +2 -2
  187. package/dist/primitives/branchPicker/BranchPickerNumber.js.map +1 -1
  188. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
  189. package/dist/primitives/branchPicker/BranchPickerPrevious.js +7 -8
  190. package/dist/primitives/branchPicker/BranchPickerPrevious.js.map +1 -1
  191. package/dist/primitives/composer/ComposerAddAttachment.js +6 -6
  192. package/dist/primitives/composer/ComposerAddAttachment.js.map +1 -1
  193. package/dist/primitives/composer/ComposerAttachmentDropzone.js +4 -4
  194. package/dist/primitives/composer/ComposerAttachmentDropzone.js.map +1 -1
  195. package/dist/primitives/composer/ComposerAttachments.d.ts.map +1 -1
  196. package/dist/primitives/composer/ComposerAttachments.js +11 -13
  197. package/dist/primitives/composer/ComposerAttachments.js.map +1 -1
  198. package/dist/primitives/composer/ComposerCancel.js +5 -5
  199. package/dist/primitives/composer/ComposerCancel.js.map +1 -1
  200. package/dist/primitives/composer/ComposerIf.js +2 -2
  201. package/dist/primitives/composer/ComposerIf.js.map +1 -1
  202. package/dist/primitives/composer/ComposerInput.d.ts.map +1 -1
  203. package/dist/primitives/composer/ComposerInput.js +22 -32
  204. package/dist/primitives/composer/ComposerInput.js.map +1 -1
  205. package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
  206. package/dist/primitives/composer/ComposerSend.js +6 -10
  207. package/dist/primitives/composer/ComposerSend.js.map +1 -1
  208. package/dist/primitives/error/ErrorMessage.d.ts.map +1 -1
  209. package/dist/primitives/error/ErrorMessage.js +3 -3
  210. package/dist/primitives/error/ErrorMessage.js.map +1 -1
  211. package/dist/primitives/message/MessageAttachments.d.ts.map +1 -1
  212. package/dist/primitives/message/MessageAttachments.js +9 -11
  213. package/dist/primitives/message/MessageAttachments.js.map +1 -1
  214. package/dist/primitives/message/MessageError.d.ts.map +1 -1
  215. package/dist/primitives/message/MessageError.js +3 -3
  216. package/dist/primitives/message/MessageError.js.map +1 -1
  217. package/dist/primitives/message/MessageIf.d.ts.map +1 -1
  218. package/dist/primitives/message/MessageIf.js +28 -34
  219. package/dist/primitives/message/MessageIf.js.map +1 -1
  220. package/dist/primitives/message/MessageParts.d.ts.map +1 -1
  221. package/dist/primitives/message/MessageParts.js +25 -27
  222. package/dist/primitives/message/MessageParts.js.map +1 -1
  223. package/dist/primitives/message/MessagePartsGrouped.d.ts.map +1 -1
  224. package/dist/primitives/message/MessagePartsGrouped.js +24 -26
  225. package/dist/primitives/message/MessagePartsGrouped.js.map +1 -1
  226. package/dist/primitives/message/MessageRoot.d.ts.map +1 -1
  227. package/dist/primitives/message/MessageRoot.js +8 -7
  228. package/dist/primitives/message/MessageRoot.js.map +1 -1
  229. package/dist/primitives/messagePart/MessagePartInProgress.d.ts.map +1 -1
  230. package/dist/primitives/messagePart/MessagePartInProgress.js +4 -2
  231. package/dist/primitives/messagePart/MessagePartInProgress.js.map +1 -1
  232. package/dist/primitives/messagePart/useMessagePartFile.js +4 -4
  233. package/dist/primitives/messagePart/useMessagePartFile.js.map +1 -1
  234. package/dist/primitives/messagePart/useMessagePartImage.js +4 -4
  235. package/dist/primitives/messagePart/useMessagePartImage.js.map +1 -1
  236. package/dist/primitives/messagePart/useMessagePartReasoning.js +4 -4
  237. package/dist/primitives/messagePart/useMessagePartReasoning.js.map +1 -1
  238. package/dist/primitives/messagePart/useMessagePartSource.js +4 -4
  239. package/dist/primitives/messagePart/useMessagePartSource.js.map +1 -1
  240. package/dist/primitives/messagePart/useMessagePartText.js +4 -4
  241. package/dist/primitives/messagePart/useMessagePartText.js.map +1 -1
  242. package/dist/primitives/thread/ThreadEmpty.js +2 -2
  243. package/dist/primitives/thread/ThreadEmpty.js.map +1 -1
  244. package/dist/primitives/thread/ThreadIf.js +2 -2
  245. package/dist/primitives/thread/ThreadIf.js.map +1 -1
  246. package/dist/primitives/thread/ThreadMessages.d.ts.map +1 -1
  247. package/dist/primitives/thread/ThreadMessages.js +9 -12
  248. package/dist/primitives/thread/ThreadMessages.js.map +1 -1
  249. package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
  250. package/dist/primitives/thread/ThreadSuggestion.js +8 -8
  251. package/dist/primitives/thread/ThreadSuggestion.js.map +1 -1
  252. package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts.map +1 -1
  253. package/dist/primitives/thread/useThreadViewportAutoScroll.js +3 -6
  254. package/dist/primitives/thread/useThreadViewportAutoScroll.js.map +1 -1
  255. package/dist/primitives/threadList/ThreadListItems.d.ts.map +1 -1
  256. package/dist/primitives/threadList/ThreadListItems.js +7 -10
  257. package/dist/primitives/threadList/ThreadListItems.js.map +1 -1
  258. package/dist/primitives/threadList/ThreadListNew.d.ts +1 -3
  259. package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -1
  260. package/dist/primitives/threadList/ThreadListNew.js +7 -11
  261. package/dist/primitives/threadList/ThreadListNew.js.map +1 -1
  262. package/dist/primitives/threadListItem/ThreadListItemArchive.js +4 -4
  263. package/dist/primitives/threadListItem/ThreadListItemArchive.js.map +1 -1
  264. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -1
  265. package/dist/primitives/threadListItem/ThreadListItemDelete.js +6 -5
  266. package/dist/primitives/threadListItem/ThreadListItemDelete.js.map +1 -1
  267. package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -1
  268. package/dist/primitives/threadListItem/ThreadListItemRoot.js +4 -2
  269. package/dist/primitives/threadListItem/ThreadListItemRoot.js.map +1 -1
  270. package/dist/primitives/threadListItem/ThreadListItemTitle.js +2 -2
  271. package/dist/primitives/threadListItem/ThreadListItemTitle.js.map +1 -1
  272. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -1
  273. package/dist/primitives/threadListItem/ThreadListItemTrigger.js +6 -5
  274. package/dist/primitives/threadListItem/ThreadListItemTrigger.js.map +1 -1
  275. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -1
  276. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js +6 -5
  277. package/dist/primitives/threadListItem/ThreadListItemUnarchive.js.map +1 -1
  278. package/dist/runtimes/adapters/attachment/index.js.map +1 -1
  279. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts +1 -1
  280. package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts.map +1 -1
  281. package/dist/runtimes/composer/BaseComposerRuntimeCore.js +3 -3
  282. package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
  283. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts +1 -1
  284. package/dist/runtimes/core/BaseThreadRuntimeCore.d.ts.map +1 -1
  285. package/dist/runtimes/core/BaseThreadRuntimeCore.js +5 -1
  286. package/dist/runtimes/core/BaseThreadRuntimeCore.js.map +1 -1
  287. package/dist/runtimes/core/ComposerRuntimeCore.d.ts +2 -2
  288. package/dist/runtimes/core/ComposerRuntimeCore.d.ts.map +1 -1
  289. package/dist/runtimes/core/ThreadListRuntimeCore.d.ts +5 -5
  290. package/dist/runtimes/core/ThreadListRuntimeCore.d.ts.map +1 -1
  291. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts +5 -2
  292. package/dist/runtimes/external-store/ExternalStoreAdapter.d.ts.map +1 -1
  293. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts +6 -4
  294. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.d.ts.map +1 -1
  295. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js +42 -7
  296. package/dist/runtimes/external-store/ExternalStoreThreadListRuntimeCore.js.map +1 -1
  297. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.d.ts.map +1 -1
  298. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js +3 -0
  299. package/dist/runtimes/external-store/ExternalStoreThreadRuntimeCore.js.map +1 -1
  300. package/dist/runtimes/external-store/createMessageConverter.d.ts +2 -2
  301. package/dist/runtimes/external-store/createMessageConverter.d.ts.map +1 -1
  302. package/dist/runtimes/external-store/createMessageConverter.js +9 -6
  303. package/dist/runtimes/external-store/createMessageConverter.js.map +1 -1
  304. package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts +10 -1
  305. package/dist/runtimes/local/LocalThreadListRuntimeCore.d.ts.map +1 -1
  306. package/dist/runtimes/local/LocalThreadListRuntimeCore.js +15 -2
  307. package/dist/runtimes/local/LocalThreadListRuntimeCore.js.map +1 -1
  308. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.d.ts.map +1 -1
  309. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js +3 -5
  310. package/dist/runtimes/remote-thread-list/EMPTY_THREAD_CORE.js.map +1 -1
  311. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.d.ts.map +1 -1
  312. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js +13 -19
  313. package/dist/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.js.map +1 -1
  314. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts +11 -7
  315. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -1
  316. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js +41 -35
  317. package/dist/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
  318. package/dist/tests/setup.js +8 -8
  319. package/dist/tests/setup.js.map +1 -1
  320. package/dist/types/EventTypes.d.ts +49 -0
  321. package/dist/types/EventTypes.d.ts.map +1 -0
  322. package/dist/types/EventTypes.js +22 -0
  323. package/dist/types/EventTypes.js.map +1 -0
  324. package/dist/types/index.d.ts +1 -0
  325. package/dist/types/index.d.ts.map +1 -1
  326. package/dist/utils/smooth/SmoothContext.js +3 -3
  327. package/dist/utils/smooth/SmoothContext.js.map +1 -1
  328. package/dist/utils/smooth/useSmooth.d.ts.map +1 -1
  329. package/dist/utils/smooth/useSmooth.js +2 -5
  330. package/dist/utils/smooth/useSmooth.js.map +1 -1
  331. package/dist/utils/tap-store/index.d.ts +3 -0
  332. package/dist/utils/tap-store/index.d.ts.map +1 -0
  333. package/dist/utils/tap-store/index.js +8 -0
  334. package/dist/utils/tap-store/index.js.map +1 -0
  335. package/dist/utils/tap-store/store.d.ts +21 -0
  336. package/dist/utils/tap-store/store.d.ts.map +1 -0
  337. package/dist/utils/tap-store/store.js +29 -0
  338. package/dist/utils/tap-store/store.js.map +1 -0
  339. package/dist/utils/tap-store/tap-store-api.d.ts +8 -0
  340. package/dist/utils/tap-store/tap-store-api.d.ts.map +1 -0
  341. package/dist/utils/tap-store/tap-store-api.js +57 -0
  342. package/dist/utils/tap-store/tap-store-api.js.map +1 -0
  343. package/dist/utils/useToolArgsFieldStatus.js +6 -6
  344. package/dist/utils/useToolArgsFieldStatus.js.map +1 -1
  345. package/package.json +2 -1
  346. package/src/api/AttachmentRuntime.ts +3 -1
  347. package/src/api/ComposerRuntime.ts +16 -9
  348. package/src/api/MessagePartRuntime.ts +3 -1
  349. package/src/api/MessageRuntime.ts +2 -0
  350. package/src/api/ThreadListItemRuntime.ts +11 -1
  351. package/src/api/ThreadListRuntime.ts +9 -9
  352. package/src/api/ThreadRuntime.ts +9 -7
  353. package/src/client/AssistantRuntimeClient.ts +197 -0
  354. package/src/client/AttachmentClient.ts +11 -0
  355. package/src/client/ComposerClient.ts +133 -0
  356. package/src/client/EventManagerClient.ts +63 -0
  357. package/src/client/MessageClient.ts +196 -0
  358. package/src/client/MessagePartClient.ts +53 -0
  359. package/src/client/ThreadClient.ts +280 -0
  360. package/src/client/ThreadListClient.ts +135 -0
  361. package/src/client/ThreadListItemClient.ts +88 -0
  362. package/src/client/util-hooks/tapLookupResources.ts +31 -0
  363. package/src/client/util-hooks/tapSubscribable.ts +16 -0
  364. package/src/cloud/AssistantCloudThreadHistoryAdapter.tsx +24 -13
  365. package/src/context/providers/AssistantRuntimeProvider.tsx +27 -51
  366. package/src/context/providers/AttachmentProvider.tsx +48 -0
  367. package/src/context/providers/MessageProvider.tsx +57 -0
  368. package/src/context/providers/PartProvider.tsx +28 -0
  369. package/src/context/providers/TextMessagePartProvider.tsx +53 -78
  370. package/src/context/providers/ThreadListItemProvider.tsx +84 -0
  371. package/src/context/providers/index.ts +10 -3
  372. package/src/context/react/AssistantApiContext.tsx +392 -0
  373. package/src/context/react/index.ts +30 -37
  374. package/src/context/react/{AssistantContext.ts → legacy/AssistantContext.ts} +12 -31
  375. package/src/context/react/{AttachmentContext.ts → legacy/AttachmentContext.ts} +11 -22
  376. package/src/context/react/{ComposerContext.ts → legacy/ComposerContext.ts} +11 -9
  377. package/src/context/react/{MessageContext.ts → legacy/MessageContext.ts} +12 -29
  378. package/src/context/react/legacy/MessagePartContext.ts +24 -0
  379. package/src/context/react/{ThreadContext.ts → legacy/ThreadContext.ts} +15 -25
  380. package/src/context/react/legacy/ThreadListItemContext.ts +28 -0
  381. package/src/context/stores/index.ts +0 -2
  382. package/src/hooks/useAssistantEvent.ts +24 -0
  383. package/src/model-context/makeAssistantVisible.tsx +4 -4
  384. package/src/model-context/useAssistantInstructions.tsx +4 -4
  385. package/src/model-context/useAssistantTool.tsx +7 -12
  386. package/src/model-context/useAssistantToolUI.tsx +5 -5
  387. package/src/primitives/actionBar/ActionBarCopy.tsx +14 -20
  388. package/src/primitives/actionBar/ActionBarEdit.tsx +5 -5
  389. package/src/primitives/actionBar/ActionBarFeedbackNegative.tsx +6 -7
  390. package/src/primitives/actionBar/ActionBarFeedbackPositive.tsx +6 -6
  391. package/src/primitives/actionBar/ActionBarReload.tsx +9 -10
  392. package/src/primitives/actionBar/ActionBarSpeak.tsx +7 -7
  393. package/src/primitives/actionBar/ActionBarStopSpeaking.tsx +5 -8
  394. package/src/primitives/actionBar/useActionBarFloatStatus.tsx +22 -34
  395. package/src/primitives/assistantModal/AssistantModalRoot.tsx +4 -4
  396. package/src/primitives/attachment/AttachmentName.tsx +2 -2
  397. package/src/primitives/attachment/AttachmentRemove.tsx +4 -4
  398. package/src/primitives/attachment/AttachmentThumb.tsx +5 -2
  399. package/src/primitives/branchPicker/BranchPickerCount.tsx +2 -2
  400. package/src/primitives/branchPicker/BranchPickerNext.tsx +7 -8
  401. package/src/primitives/branchPicker/BranchPickerNumber.tsx +2 -2
  402. package/src/primitives/branchPicker/BranchPickerPrevious.tsx +7 -8
  403. package/src/primitives/composer/ComposerAddAttachment.tsx +6 -6
  404. package/src/primitives/composer/ComposerAttachmentDropzone.tsx +4 -4
  405. package/src/primitives/composer/ComposerAttachments.tsx +12 -15
  406. package/src/primitives/composer/ComposerCancel.tsx +5 -5
  407. package/src/primitives/composer/ComposerIf.tsx +2 -2
  408. package/src/primitives/composer/ComposerInput.tsx +32 -32
  409. package/src/primitives/composer/ComposerSend.tsx +6 -10
  410. package/src/primitives/error/ErrorMessage.tsx +5 -4
  411. package/src/primitives/message/MessageAttachments.tsx +10 -13
  412. package/src/primitives/message/MessageError.tsx +5 -3
  413. package/src/primitives/message/MessageIf.tsx +43 -52
  414. package/src/primitives/message/MessageParts.tsx +26 -31
  415. package/src/primitives/message/MessagePartsGrouped.tsx +25 -30
  416. package/src/primitives/message/MessageRoot.tsx +10 -8
  417. package/src/primitives/messagePart/MessagePartInProgress.tsx +4 -2
  418. package/src/primitives/messagePart/useMessagePartFile.tsx +4 -4
  419. package/src/primitives/messagePart/useMessagePartImage.tsx +4 -4
  420. package/src/primitives/messagePart/useMessagePartReasoning.tsx +4 -4
  421. package/src/primitives/messagePart/useMessagePartSource.tsx +4 -4
  422. package/src/primitives/messagePart/useMessagePartText.tsx +4 -4
  423. package/src/primitives/thread/ThreadEmpty.tsx +2 -2
  424. package/src/primitives/thread/ThreadIf.tsx +2 -2
  425. package/src/primitives/thread/ThreadMessages.tsx +10 -14
  426. package/src/primitives/thread/ThreadSuggestion.tsx +8 -8
  427. package/src/primitives/thread/useThreadViewportAutoScroll.tsx +3 -6
  428. package/src/primitives/threadList/ThreadListItems.tsx +8 -15
  429. package/src/primitives/threadList/ThreadListNew.tsx +9 -13
  430. package/src/primitives/threadListItem/ThreadListItemArchive.ts +4 -4
  431. package/src/primitives/threadListItem/ThreadListItemDelete.ts +6 -5
  432. package/src/primitives/threadListItem/ThreadListItemRoot.tsx +4 -2
  433. package/src/primitives/threadListItem/ThreadListItemTitle.tsx +2 -2
  434. package/src/primitives/threadListItem/ThreadListItemTrigger.ts +6 -5
  435. package/src/primitives/threadListItem/ThreadListItemUnarchive.ts +6 -5
  436. package/src/runtimes/adapters/attachment/index.ts +1 -1
  437. package/src/runtimes/composer/BaseComposerRuntimeCore.tsx +3 -3
  438. package/src/runtimes/core/BaseThreadRuntimeCore.tsx +5 -1
  439. package/src/runtimes/core/ComposerRuntimeCore.tsx +2 -2
  440. package/src/runtimes/core/ThreadListRuntimeCore.tsx +6 -4
  441. package/src/runtimes/external-store/ExternalStoreAdapter.tsx +5 -2
  442. package/src/runtimes/external-store/ExternalStoreThreadListRuntimeCore.tsx +53 -12
  443. package/src/runtimes/external-store/ExternalStoreThreadRuntimeCore.tsx +4 -0
  444. package/src/runtimes/external-store/createMessageConverter.tsx +10 -6
  445. package/src/runtimes/local/LocalThreadListRuntimeCore.tsx +16 -2
  446. package/src/runtimes/remote-thread-list/EMPTY_THREAD_CORE.tsx +3 -6
  447. package/src/runtimes/remote-thread-list/RemoteThreadListHookInstanceManager.tsx +14 -19
  448. package/src/runtimes/remote-thread-list/RemoteThreadListThreadListRuntimeCore.tsx +50 -43
  449. package/src/types/EventTypes.ts +92 -0
  450. package/src/types/index.ts +6 -0
  451. package/src/utils/smooth/SmoothContext.tsx +3 -3
  452. package/src/utils/smooth/useSmooth.tsx +2 -5
  453. package/src/utils/tap-store/index.ts +2 -0
  454. package/src/utils/tap-store/store.ts +51 -0
  455. package/src/utils/tap-store/tap-store-api.ts +75 -0
  456. package/src/utils/useToolArgsFieldStatus.tsx +6 -6
  457. package/dist/context/providers/AttachmentRuntimeProvider.d.ts +0 -9
  458. package/dist/context/providers/AttachmentRuntimeProvider.d.ts.map +0 -1
  459. package/dist/context/providers/AttachmentRuntimeProvider.js +0 -33
  460. package/dist/context/providers/AttachmentRuntimeProvider.js.map +0 -1
  461. package/dist/context/providers/MessagePartRuntimeProvider.d.ts +0 -9
  462. package/dist/context/providers/MessagePartRuntimeProvider.d.ts.map +0 -1
  463. package/dist/context/providers/MessagePartRuntimeProvider.js +0 -28
  464. package/dist/context/providers/MessagePartRuntimeProvider.js.map +0 -1
  465. package/dist/context/providers/MessageRuntimeProvider.d.ts +0 -9
  466. package/dist/context/providers/MessageRuntimeProvider.d.ts.map +0 -1
  467. package/dist/context/providers/MessageRuntimeProvider.js +0 -37
  468. package/dist/context/providers/MessageRuntimeProvider.js.map +0 -1
  469. package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts +0 -9
  470. package/dist/context/providers/ThreadListItemRuntimeProvider.d.ts.map +0 -1
  471. package/dist/context/providers/ThreadListItemRuntimeProvider.js +0 -30
  472. package/dist/context/providers/ThreadListItemRuntimeProvider.js.map +0 -1
  473. package/dist/context/providers/ThreadRuntimeProvider.d.ts +0 -10
  474. package/dist/context/providers/ThreadRuntimeProvider.d.ts.map +0 -1
  475. package/dist/context/providers/ThreadRuntimeProvider.js +0 -33
  476. package/dist/context/providers/ThreadRuntimeProvider.js.map +0 -1
  477. package/dist/context/react/AssistantContext.d.ts +0 -85
  478. package/dist/context/react/AssistantContext.d.ts.map +0 -1
  479. package/dist/context/react/AssistantContext.js +0 -34
  480. package/dist/context/react/AssistantContext.js.map +0 -1
  481. package/dist/context/react/AttachmentContext.d.ts.map +0 -1
  482. package/dist/context/react/AttachmentContext.js.map +0 -1
  483. package/dist/context/react/ComposerContext.d.ts.map +0 -1
  484. package/dist/context/react/ComposerContext.js +0 -17
  485. package/dist/context/react/ComposerContext.js.map +0 -1
  486. package/dist/context/react/MessageContext.d.ts.map +0 -1
  487. package/dist/context/react/MessageContext.js +0 -35
  488. package/dist/context/react/MessageContext.js.map +0 -1
  489. package/dist/context/react/MessagePartContext.d.ts +0 -41
  490. package/dist/context/react/MessagePartContext.d.ts.map +0 -1
  491. package/dist/context/react/MessagePartContext.js +0 -25
  492. package/dist/context/react/MessagePartContext.js.map +0 -1
  493. package/dist/context/react/ThreadContext.d.ts.map +0 -1
  494. package/dist/context/react/ThreadContext.js +0 -38
  495. package/dist/context/react/ThreadContext.js.map +0 -1
  496. package/dist/context/react/ThreadListItemContext.d.ts +0 -41
  497. package/dist/context/react/ThreadListItemContext.d.ts.map +0 -1
  498. package/dist/context/react/ThreadListItemContext.js +0 -25
  499. package/dist/context/react/ThreadListItemContext.js.map +0 -1
  500. package/dist/context/stores/AssistantToolUIs.d.ts +0 -14
  501. package/dist/context/stores/AssistantToolUIs.d.ts.map +0 -1
  502. package/dist/context/stores/AssistantToolUIs.js +0 -35
  503. package/dist/context/stores/AssistantToolUIs.js.map +0 -1
  504. package/dist/context/stores/MessageUtils.d.ts +0 -8
  505. package/dist/context/stores/MessageUtils.d.ts.map +0 -1
  506. package/dist/context/stores/MessageUtils.js +0 -18
  507. package/dist/context/stores/MessageUtils.js.map +0 -1
  508. package/dist/utils/combined/createCombinedStore.d.ts +0 -8
  509. package/dist/utils/combined/createCombinedStore.d.ts.map +0 -1
  510. package/dist/utils/combined/createCombinedStore.js +0 -22
  511. package/dist/utils/combined/createCombinedStore.js.map +0 -1
  512. package/dist/utils/combined/useCombinedStore.d.ts +0 -3
  513. package/dist/utils/combined/useCombinedStore.d.ts.map +0 -1
  514. package/dist/utils/combined/useCombinedStore.js +0 -15
  515. package/dist/utils/combined/useCombinedStore.js.map +0 -1
  516. package/src/context/providers/AttachmentRuntimeProvider.tsx +0 -44
  517. package/src/context/providers/MessagePartRuntimeProvider.tsx +0 -42
  518. package/src/context/providers/MessageRuntimeProvider.tsx +0 -50
  519. package/src/context/providers/ThreadListItemRuntimeProvider.tsx +0 -43
  520. package/src/context/providers/ThreadRuntimeProvider.tsx +0 -53
  521. package/src/context/react/MessagePartContext.ts +0 -37
  522. package/src/context/react/ThreadListItemContext.ts +0 -38
  523. package/src/context/stores/AssistantToolUIs.ts +0 -51
  524. package/src/context/stores/MessageUtils.ts +0 -23
  525. package/src/utils/combined/createCombinedStore.ts +0 -31
  526. package/src/utils/combined/useCombinedStore.ts +0 -17
@@ -1,38 +0,0 @@
1
- "use client";
2
-
3
- // src/context/react/ThreadContext.ts
4
- import { createContext, useEffect, useState } from "react";
5
- import { createContextHook } from "./utils/createContextHook.js";
6
- import { createStateHookForRuntime } from "./utils/createStateHookForRuntime.js";
7
- var ThreadContext = createContext(null);
8
- var useThreadContext = createContextHook(
9
- ThreadContext,
10
- "AssistantRuntimeProvider"
11
- );
12
- function useThreadRuntime(options) {
13
- const context = useThreadContext(options);
14
- if (!context) return null;
15
- return context.useThreadRuntime();
16
- }
17
- var useThread = createStateHookForRuntime(useThreadRuntime);
18
- var useThreadComposerRuntime = (opt) => useThreadRuntime(opt)?.composer ?? null;
19
- var useThreadComposer = createStateHookForRuntime(
20
- useThreadComposerRuntime
21
- );
22
- function useThreadModelContext(options) {
23
- const [, rerender] = useState({});
24
- const runtime = useThreadRuntime(options);
25
- useEffect(() => {
26
- return runtime?.unstable_on("model-context-update", () => rerender({}));
27
- }, [runtime]);
28
- if (!runtime) return null;
29
- return runtime?.getModelContext();
30
- }
31
- export {
32
- ThreadContext,
33
- useThread,
34
- useThreadComposer,
35
- useThreadModelContext,
36
- useThreadRuntime
37
- };
38
- //# sourceMappingURL=ThreadContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/context/react/ThreadContext.ts"],"sourcesContent":["\"use client\";\n\nimport { createContext, useEffect, useState } from \"react\";\nimport { ReadonlyStore } from \"../ReadonlyStore\";\nimport { UseBoundStore } from \"zustand\";\nimport { createContextHook } from \"./utils/createContextHook\";\nimport { ThreadRuntime } from \"../../api/ThreadRuntime\";\nimport { ModelContext } from \"../../model-context\";\nimport { createStateHookForRuntime } from \"./utils/createStateHookForRuntime\";\nimport { ThreadComposerRuntime } from \"../../api\";\n\nexport type ThreadContextValue = {\n useThreadRuntime: UseBoundStore<ReadonlyStore<ThreadRuntime>>;\n};\n\nexport const ThreadContext = createContext<ThreadContextValue | null>(null);\n\nconst useThreadContext = createContextHook(\n ThreadContext,\n \"AssistantRuntimeProvider\",\n);\n\n/**\n * Hook to access the ThreadRuntime from the current context.\n *\n * The ThreadRuntime provides access to thread-level state and actions,\n * including message management, thread state, and composer functionality.\n *\n * @param options Configuration options\n * @param options.optional Whether the hook should return null if no context is found\n * @returns The ThreadRuntime instance, or null if optional is true and no context exists\n *\n * @example\n * ```tsx\n * function MyComponent() {\n * const runtime = useThreadRuntime();\n *\n * const handleSendMessage = (text: string) => {\n * runtime.append({ role: \"user\", content: [{ type: \"text\", text }] });\n * };\n *\n * return <button onClick={() => handleSendMessage(\"Hello!\")}>Send</button>;\n * }\n * ```\n */\nexport function useThreadRuntime(options?: {\n optional?: false | undefined;\n}): ThreadRuntime;\nexport function useThreadRuntime(options?: {\n optional?: boolean | undefined;\n}): ThreadRuntime | null;\nexport function useThreadRuntime(options?: { optional?: boolean | undefined }) {\n const context = useThreadContext(options);\n if (!context) return null;\n return context.useThreadRuntime();\n}\n\n/**\n * Hook to access the current thread state.\n *\n * This hook provides reactive access to the thread's state, including messages,\n * running status, capabilities, and other thread-level properties.\n *\n * @param selector Optional selector function to pick specific state properties\n * @returns The selected thread state or the entire thread state if no selector provided\n *\n * @example\n * ```tsx\n * function ThreadStatus() {\n * const isRunning = useThread((state) => state.isRunning);\n * const messageCount = useThread((state) => state.messages.length);\n *\n * return <div>Running: {isRunning}, Messages: {messageCount}</div>;\n * }\n * ```\n */\nexport const useThread = createStateHookForRuntime(useThreadRuntime);\n\nconst useThreadComposerRuntime = (opt: {\n optional: boolean | undefined;\n}): ThreadComposerRuntime | null => useThreadRuntime(opt)?.composer ?? null;\nexport const useThreadComposer = createStateHookForRuntime(\n useThreadComposerRuntime,\n);\n\nexport function useThreadModelContext(options?: {\n optional?: false | undefined;\n}): ModelContext;\nexport function useThreadModelContext(options?: {\n optional?: boolean | undefined;\n}): ModelContext | null;\nexport function useThreadModelContext(options?: {\n optional?: boolean | undefined;\n}): ModelContext | null {\n const [, rerender] = useState({});\n\n const runtime = useThreadRuntime(options);\n useEffect(() => {\n return runtime?.unstable_on(\"model-context-update\", () => rerender({}));\n }, [runtime]);\n\n if (!runtime) return null;\n return runtime?.getModelContext();\n}\n"],"mappings":";;;AAEA,SAAS,eAAe,WAAW,gBAAgB;AAGnD,SAAS,yBAAyB;AAGlC,SAAS,iCAAiC;AAOnC,IAAM,gBAAgB,cAAyC,IAAI;AAE1E,IAAM,mBAAmB;AAAA,EACvB;AAAA,EACA;AACF;AA+BO,SAAS,iBAAiB,SAA8C;AAC7E,QAAM,UAAU,iBAAiB,OAAO;AACxC,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,QAAQ,iBAAiB;AAClC;AAqBO,IAAM,YAAY,0BAA0B,gBAAgB;AAEnE,IAAM,2BAA2B,CAAC,QAEE,iBAAiB,GAAG,GAAG,YAAY;AAChE,IAAM,oBAAoB;AAAA,EAC/B;AACF;AAQO,SAAS,sBAAsB,SAEd;AACtB,QAAM,CAAC,EAAE,QAAQ,IAAI,SAAS,CAAC,CAAC;AAEhC,QAAM,UAAU,iBAAiB,OAAO;AACxC,YAAU,MAAM;AACd,WAAO,SAAS,YAAY,wBAAwB,MAAM,SAAS,CAAC,CAAC,CAAC;AAAA,EACxE,GAAG,CAAC,OAAO,CAAC;AAEZ,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,SAAS,gBAAgB;AAClC;","names":[]}
@@ -1,41 +0,0 @@
1
- import { ReadonlyStore } from "../ReadonlyStore";
2
- import { UseBoundStore } from "zustand";
3
- import { ThreadListItemRuntime } from "../../api/ThreadListItemRuntime";
4
- export type ThreadListItemContextValue = {
5
- useThreadListItemRuntime: UseBoundStore<ReadonlyStore<ThreadListItemRuntime>>;
6
- };
7
- export declare const ThreadListItemContext: import("react").Context<ThreadListItemContextValue | null>;
8
- export declare function useThreadListItemRuntime(options?: {
9
- optional?: false | undefined;
10
- }): ThreadListItemRuntime;
11
- export declare function useThreadListItemRuntime(options?: {
12
- optional?: boolean | undefined;
13
- }): ThreadListItemRuntime | null;
14
- export declare const useThreadListItem: {
15
- (): import("../..").ThreadListItemState;
16
- <TSelected>(selector: (state: import("../..").ThreadListItemState) => TSelected): TSelected;
17
- <TSelected>(selector: ((state: import("../..").ThreadListItemState) => TSelected) | undefined): import("../..").ThreadListItemState | TSelected;
18
- (options: {
19
- optional?: false | undefined;
20
- }): import("../..").ThreadListItemState;
21
- (options: {
22
- optional?: boolean | undefined;
23
- }): import("../..").ThreadListItemState | null;
24
- <TSelected>(options: {
25
- optional?: false | undefined;
26
- selector: (state: import("../..").ThreadListItemState) => TSelected;
27
- }): TSelected;
28
- <TSelected>(options: {
29
- optional?: false | undefined;
30
- selector: ((state: import("../..").ThreadListItemState) => TSelected) | undefined;
31
- }): import("../..").ThreadListItemState | TSelected;
32
- <TSelected>(options: {
33
- optional?: boolean | undefined;
34
- selector: (state: import("../..").ThreadListItemState) => TSelected;
35
- }): TSelected | null;
36
- <TSelected>(options: {
37
- optional?: boolean | undefined;
38
- selector: ((state: import("../..").ThreadListItemState) => TSelected) | undefined;
39
- }): import("../..").ThreadListItemState | TSelected | null;
40
- };
41
- //# sourceMappingURL=ThreadListItemContext.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ThreadListItemContext.d.ts","sourceRoot":"","sources":["../../../src/context/react/ThreadListItemContext.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,MAAM,MAAM,0BAA0B,GAAG;IACvC,wBAAwB,EAAE,aAAa,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC,CAAC;CAC/E,CAAC;AAEF,eAAO,MAAM,qBAAqB,4DACsB,CAAC;AAOzD,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE;IACjD,QAAQ,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;CAC9B,GAAG,qBAAqB,CAAC;AAC1B,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE;IACjD,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAChC,GAAG,qBAAqB,GAAG,IAAI,CAAC;AASjC,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;CAE7B,CAAC"}
@@ -1,25 +0,0 @@
1
- "use client";
2
-
3
- // src/context/react/ThreadListItemContext.ts
4
- import { createContext } from "react";
5
- import { createContextHook } from "./utils/createContextHook.js";
6
- import { createStateHookForRuntime } from "./utils/createStateHookForRuntime.js";
7
- var ThreadListItemContext = createContext(null);
8
- var useThreadListItemContext = createContextHook(
9
- ThreadListItemContext,
10
- "a component passed to <ThreadListPrimitive.Items components={...}>"
11
- );
12
- function useThreadListItemRuntime(options) {
13
- const context = useThreadListItemContext(options);
14
- if (!context) return null;
15
- return context.useThreadListItemRuntime();
16
- }
17
- var useThreadListItem = createStateHookForRuntime(
18
- useThreadListItemRuntime
19
- );
20
- export {
21
- ThreadListItemContext,
22
- useThreadListItem,
23
- useThreadListItemRuntime
24
- };
25
- //# sourceMappingURL=ThreadListItemContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/context/react/ThreadListItemContext.ts"],"sourcesContent":["\"use client\";\n\nimport { createContext } from \"react\";\nimport { ReadonlyStore } from \"../ReadonlyStore\";\nimport { createContextHook } from \"./utils/createContextHook\";\nimport { UseBoundStore } from \"zustand\";\nimport { ThreadListItemRuntime } from \"../../api/ThreadListItemRuntime\";\nimport { createStateHookForRuntime } from \"./utils/createStateHookForRuntime\";\n\nexport type ThreadListItemContextValue = {\n useThreadListItemRuntime: UseBoundStore<ReadonlyStore<ThreadListItemRuntime>>;\n};\n\nexport const ThreadListItemContext =\n createContext<ThreadListItemContextValue | null>(null);\n\nconst useThreadListItemContext = createContextHook(\n ThreadListItemContext,\n \"a component passed to <ThreadListPrimitive.Items components={...}>\",\n);\n\nexport function useThreadListItemRuntime(options?: {\n optional?: false | undefined;\n}): ThreadListItemRuntime;\nexport function useThreadListItemRuntime(options?: {\n optional?: boolean | undefined;\n}): ThreadListItemRuntime | null;\nexport function useThreadListItemRuntime(options?: {\n optional?: boolean | undefined;\n}) {\n const context = useThreadListItemContext(options);\n if (!context) return null;\n return context.useThreadListItemRuntime();\n}\n\nexport const useThreadListItem = createStateHookForRuntime(\n useThreadListItemRuntime,\n);\n"],"mappings":";;;AAEA,SAAS,qBAAqB;AAE9B,SAAS,yBAAyB;AAGlC,SAAS,iCAAiC;AAMnC,IAAM,wBACX,cAAiD,IAAI;AAEvD,IAAM,2BAA2B;AAAA,EAC/B;AAAA,EACA;AACF;AAQO,SAAS,yBAAyB,SAEtC;AACD,QAAM,UAAU,yBAAyB,OAAO;AAChD,MAAI,CAAC,QAAS,QAAO;AACrB,SAAO,QAAQ,yBAAyB;AAC1C;AAEO,IAAM,oBAAoB;AAAA,EAC/B;AACF;","names":[]}
@@ -1,14 +0,0 @@
1
- import type { ToolCallMessagePartComponent } from "../../types/MessagePartComponentTypes";
2
- import { Unsubscribe } from "../../types";
3
- export type AssistantToolUIsState = {
4
- /**
5
- * Get the tool UI configured for a given tool name.
6
- */
7
- getToolUI: (toolName: string) => ToolCallMessagePartComponent | null;
8
- /**
9
- * Registers a tool UI for a given tool name. Returns an unsubscribe function to remove the tool UI.
10
- */
11
- setToolUI: (toolName: string, render: ToolCallMessagePartComponent) => Unsubscribe;
12
- };
13
- export declare const makeAssistantToolUIsStore: () => import("zustand").UseBoundStore<import("zustand").StoreApi<AssistantToolUIsState>>;
14
- //# sourceMappingURL=AssistantToolUIs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AssistantToolUIs.d.ts","sourceRoot":"","sources":["../../../src/context/stores/AssistantToolUIs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,4BAA4B,GAAG,IAAI,CAAC;IAErE;;OAEG;IACH,SAAS,EAAE,CACT,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,4BAA4B,KACjC,WAAW,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,yBAAyB,0FA+BlC,CAAC"}
@@ -1,35 +0,0 @@
1
- // src/context/stores/AssistantToolUIs.ts
2
- import { create } from "zustand";
3
- var makeAssistantToolUIsStore = () => create((set) => {
4
- const renderers = /* @__PURE__ */ new Map();
5
- return Object.freeze({
6
- getToolUI: (name) => {
7
- const arr = renderers.get(name);
8
- const last = arr?.at(-1);
9
- if (last) return last;
10
- return null;
11
- },
12
- setToolUI: (name, render) => {
13
- let arr = renderers.get(name);
14
- if (!arr) {
15
- arr = [];
16
- renderers.set(name, arr);
17
- }
18
- arr.push(render);
19
- set({});
20
- return () => {
21
- const index = arr.indexOf(render);
22
- if (index !== -1) {
23
- arr.splice(index, 1);
24
- }
25
- if (index === arr.length) {
26
- set({});
27
- }
28
- };
29
- }
30
- });
31
- });
32
- export {
33
- makeAssistantToolUIsStore
34
- };
35
- //# sourceMappingURL=AssistantToolUIs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/context/stores/AssistantToolUIs.ts"],"sourcesContent":["import { create } from \"zustand\";\nimport type { ToolCallMessagePartComponent } from \"../../types/MessagePartComponentTypes\";\nimport { Unsubscribe } from \"../../types\";\n\nexport type AssistantToolUIsState = {\n /**\n * Get the tool UI configured for a given tool name.\n */\n getToolUI: (toolName: string) => ToolCallMessagePartComponent | null;\n\n /**\n * Registers a tool UI for a given tool name. Returns an unsubscribe function to remove the tool UI.\n */\n setToolUI: (\n toolName: string,\n render: ToolCallMessagePartComponent,\n ) => Unsubscribe;\n};\n\nexport const makeAssistantToolUIsStore = () =>\n create<AssistantToolUIsState>((set) => {\n const renderers = new Map<string, ToolCallMessagePartComponent[]>();\n\n return Object.freeze({\n getToolUI: (name) => {\n const arr = renderers.get(name);\n const last = arr?.at(-1);\n if (last) return last;\n return null;\n },\n setToolUI: (name, render) => {\n let arr = renderers.get(name);\n if (!arr) {\n arr = [];\n renderers.set(name, arr);\n }\n arr.push(render);\n set({}); // notify the store listeners\n\n return () => {\n const index = arr.indexOf(render);\n if (index !== -1) {\n arr.splice(index, 1);\n }\n if (index === arr.length) {\n set({}); // notify the store listeners\n }\n };\n },\n }) satisfies AssistantToolUIsState;\n });\n"],"mappings":";AAAA,SAAS,cAAc;AAmBhB,IAAM,4BAA4B,MACvC,OAA8B,CAAC,QAAQ;AACrC,QAAM,YAAY,oBAAI,IAA4C;AAElE,SAAO,OAAO,OAAO;AAAA,IACnB,WAAW,CAAC,SAAS;AACnB,YAAM,MAAM,UAAU,IAAI,IAAI;AAC9B,YAAM,OAAO,KAAK,GAAG,EAAE;AACvB,UAAI,KAAM,QAAO;AACjB,aAAO;AAAA,IACT;AAAA,IACA,WAAW,CAAC,MAAM,WAAW;AAC3B,UAAI,MAAM,UAAU,IAAI,IAAI;AAC5B,UAAI,CAAC,KAAK;AACR,cAAM,CAAC;AACP,kBAAU,IAAI,MAAM,GAAG;AAAA,MACzB;AACA,UAAI,KAAK,MAAM;AACf,UAAI,CAAC,CAAC;AAEN,aAAO,MAAM;AACX,cAAM,QAAQ,IAAI,QAAQ,MAAM;AAChC,YAAI,UAAU,IAAI;AAChB,cAAI,OAAO,OAAO,CAAC;AAAA,QACrB;AACA,YAAI,UAAU,IAAI,QAAQ;AACxB,cAAI,CAAC,CAAC;AAAA,QACR;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AACH,CAAC;","names":[]}
@@ -1,8 +0,0 @@
1
- export type MessageUtilsState = {
2
- readonly isCopied: boolean;
3
- readonly setIsCopied: (value: boolean) => void;
4
- readonly isHovering: boolean;
5
- readonly setIsHovering: (value: boolean) => void;
6
- };
7
- export declare const makeMessageUtilsStore: () => import("zustand").UseBoundStore<import("zustand").StoreApi<MessageUtilsState>>;
8
- //# sourceMappingURL=MessageUtils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MessageUtils.d.ts","sourceRoot":"","sources":["../../../src/context/stores/MessageUtils.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAE/C,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAClD,CAAC;AAEF,eAAO,MAAM,qBAAqB,sFAY9B,CAAC"}
@@ -1,18 +0,0 @@
1
- // src/context/stores/MessageUtils.ts
2
- import { create } from "zustand";
3
- var makeMessageUtilsStore = () => create((set) => {
4
- return {
5
- isCopied: false,
6
- setIsCopied: (value) => {
7
- set({ isCopied: value });
8
- },
9
- isHovering: false,
10
- setIsHovering: (value) => {
11
- set({ isHovering: value });
12
- }
13
- };
14
- });
15
- export {
16
- makeMessageUtilsStore
17
- };
18
- //# sourceMappingURL=MessageUtils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/context/stores/MessageUtils.ts"],"sourcesContent":["import { create } from \"zustand\";\n\nexport type MessageUtilsState = {\n readonly isCopied: boolean;\n readonly setIsCopied: (value: boolean) => void;\n\n readonly isHovering: boolean;\n readonly setIsHovering: (value: boolean) => void;\n};\n\nexport const makeMessageUtilsStore = () =>\n create<MessageUtilsState>((set) => {\n return {\n isCopied: false,\n setIsCopied: (value) => {\n set({ isCopied: value });\n },\n isHovering: false,\n setIsHovering: (value) => {\n set({ isHovering: value });\n },\n };\n });\n"],"mappings":";AAAA,SAAS,cAAc;AAUhB,IAAM,wBAAwB,MACnC,OAA0B,CAAC,QAAQ;AACjC,SAAO;AAAA,IACL,UAAU;AAAA,IACV,aAAa,CAAC,UAAU;AACtB,UAAI,EAAE,UAAU,MAAM,CAAC;AAAA,IACzB;AAAA,IACA,YAAY;AAAA,IACZ,eAAe,CAAC,UAAU;AACxB,UAAI,EAAE,YAAY,MAAM,CAAC;AAAA,IAC3B;AAAA,EACF;AACF,CAAC;","names":[]}
@@ -1,8 +0,0 @@
1
- import type { Unsubscribe } from "../../types/Unsubscribe";
2
- export type StoreOrRuntime<T> = {
3
- getState: () => T;
4
- subscribe: (callback: () => void) => Unsubscribe;
5
- };
6
- export type CombinedSelector<T extends Array<unknown>, R> = (...args: T) => R;
7
- export declare const createCombinedStore: <T extends Array<unknown>, R>(stores: { [K in keyof T]: StoreOrRuntime<T[K]>; }) => (selector: CombinedSelector<T, R>) => R;
8
- //# sourceMappingURL=createCombinedStore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createCombinedStore.d.ts","sourceRoot":"","sources":["../../../src/utils/combined/createCombinedStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAC9B,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClB,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,WAAW,CAAC;CAClD,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;AAE9E,eAAO,MAAM,mBAAmB,GAAI,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,QAAQ,GACtE,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACrC,MAUS,UAAU,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,KAAG,CAM5C,CAAC"}
@@ -1,22 +0,0 @@
1
- "use client";
2
-
3
- // src/utils/combined/createCombinedStore.ts
4
- import { useSyncExternalStore } from "react";
5
- var createCombinedStore = (stores) => {
6
- const subscribe = (callback) => {
7
- const unsubscribes = stores.map((store) => store.subscribe(callback));
8
- return () => {
9
- for (const unsub of unsubscribes) {
10
- unsub();
11
- }
12
- };
13
- };
14
- return (selector) => {
15
- const getSnapshot = () => selector(...stores.map((store) => store.getState()));
16
- return useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
17
- };
18
- };
19
- export {
20
- createCombinedStore
21
- };
22
- //# sourceMappingURL=createCombinedStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/utils/combined/createCombinedStore.ts"],"sourcesContent":["\"use client\";\n\nimport { useSyncExternalStore } from \"react\";\nimport type { Unsubscribe } from \"../../types/Unsubscribe\";\n\nexport type StoreOrRuntime<T> = {\n getState: () => T;\n subscribe: (callback: () => void) => Unsubscribe;\n};\n\nexport type CombinedSelector<T extends Array<unknown>, R> = (...args: T) => R;\n\nexport const createCombinedStore = <T extends Array<unknown>, R>(stores: {\n [K in keyof T]: StoreOrRuntime<T[K]>;\n}) => {\n const subscribe = (callback: () => void): Unsubscribe => {\n const unsubscribes = stores.map((store) => store.subscribe(callback));\n return () => {\n for (const unsub of unsubscribes) {\n unsub();\n }\n };\n };\n\n return (selector: CombinedSelector<T, R>): R => {\n const getSnapshot = (): R =>\n selector(...(stores.map((store) => store.getState()) as T));\n\n return useSyncExternalStore(subscribe, getSnapshot, getSnapshot);\n };\n};\n"],"mappings":";;;AAEA,SAAS,4BAA4B;AAU9B,IAAM,sBAAsB,CAA8B,WAE3D;AACJ,QAAM,YAAY,CAAC,aAAsC;AACvD,UAAM,eAAe,OAAO,IAAI,CAAC,UAAU,MAAM,UAAU,QAAQ,CAAC;AACpE,WAAO,MAAM;AACX,iBAAW,SAAS,cAAc;AAChC,cAAM;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEA,SAAO,CAAC,aAAwC;AAC9C,UAAM,cAAc,MAClB,SAAS,GAAI,OAAO,IAAI,CAAC,UAAU,MAAM,SAAS,CAAC,CAAO;AAE5D,WAAO,qBAAqB,WAAW,aAAa,WAAW;AAAA,EACjE;AACF;","names":[]}
@@ -1,3 +0,0 @@
1
- import { type CombinedSelector, StoreOrRuntime } from "./createCombinedStore";
2
- export declare const useCombinedStore: <T extends Array<unknown>, R>(stores: { [K in keyof T]: StoreOrRuntime<T[K]>; }, selector: CombinedSelector<T, R>) => R;
3
- //# sourceMappingURL=useCombinedStore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useCombinedStore.d.ts","sourceRoot":"","sources":["../../../src/utils/combined/useCombinedStore.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,gBAAgB,EAErB,cAAc,EACf,MAAM,uBAAuB,CAAC;AAE/B,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAC1D,QAAQ,GAAG,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAE,EAChD,UAAU,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,KAC/B,CAIF,CAAC"}
@@ -1,15 +0,0 @@
1
- "use client";
2
-
3
- // src/utils/combined/useCombinedStore.ts
4
- import { useMemo } from "react";
5
- import {
6
- createCombinedStore
7
- } from "./createCombinedStore.js";
8
- var useCombinedStore = (stores, selector) => {
9
- const useCombined = useMemo(() => createCombinedStore(stores), stores);
10
- return useCombined(selector);
11
- };
12
- export {
13
- useCombinedStore
14
- };
15
- //# sourceMappingURL=useCombinedStore.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/utils/combined/useCombinedStore.ts"],"sourcesContent":["\"use client\";\n\nimport { useMemo } from \"react\";\nimport {\n type CombinedSelector,\n createCombinedStore,\n StoreOrRuntime,\n} from \"./createCombinedStore\";\n\nexport const useCombinedStore = <T extends Array<unknown>, R>(\n stores: { [K in keyof T]: StoreOrRuntime<T[K]> },\n selector: CombinedSelector<T, R>,\n): R => {\n // eslint-disable-next-line react-hooks/exhaustive-deps -- shallow-compare the store array\n const useCombined = useMemo(() => createCombinedStore<T, R>(stores), stores);\n return useCombined(selector);\n};\n"],"mappings":";;;AAEA,SAAS,eAAe;AACxB;AAAA,EAEE;AAAA,OAEK;AAEA,IAAM,mBAAmB,CAC9B,QACA,aACM;AAEN,QAAM,cAAc,QAAQ,MAAM,oBAA0B,MAAM,GAAG,MAAM;AAC3E,SAAO,YAAY,QAAQ;AAC7B;","names":[]}
@@ -1,44 +0,0 @@
1
- "use client";
2
-
3
- import { type FC, type PropsWithChildren, useEffect, useState } from "react";
4
- import { create } from "zustand";
5
- import { AttachmentContext } from "../react/AttachmentContext";
6
- import { writableStore } from "../ReadonlyStore";
7
- import { AttachmentRuntime } from "../../api/AttachmentRuntime";
8
- import { ensureBinding } from "../react/utils/ensureBinding";
9
-
10
- export namespace AttachmentRuntimeProvider {
11
- export type Props = PropsWithChildren<{
12
- runtime: AttachmentRuntime;
13
- }>;
14
- }
15
-
16
- const useAttachmentRuntimeStore = (runtime: AttachmentRuntime) => {
17
- const [store] = useState(() => create(() => runtime));
18
-
19
- useEffect(() => {
20
- ensureBinding(runtime);
21
-
22
- writableStore(store).setState(runtime, true);
23
- }, [runtime, store]);
24
-
25
- return store;
26
- };
27
-
28
- export const AttachmentRuntimeProvider: FC<AttachmentRuntimeProvider.Props> = ({
29
- runtime,
30
- children,
31
- }) => {
32
- const useAttachmentRuntime = useAttachmentRuntimeStore(runtime);
33
- const [context] = useState(() => {
34
- return {
35
- useAttachmentRuntime,
36
- };
37
- });
38
-
39
- return (
40
- <AttachmentContext.Provider value={context}>
41
- {children}
42
- </AttachmentContext.Provider>
43
- );
44
- };
@@ -1,42 +0,0 @@
1
- "use client";
2
-
3
- import { type FC, type PropsWithChildren, useEffect, useState } from "react";
4
- import { create } from "zustand";
5
- import { MessagePartContext } from "../react/MessagePartContext";
6
- import type { MessagePartContextValue } from "../react/MessagePartContext";
7
- import { writableStore } from "../ReadonlyStore";
8
- import { MessagePartRuntime } from "../../api/MessagePartRuntime";
9
- import { ensureBinding } from "../react/utils/ensureBinding";
10
-
11
- export namespace MessagePartRuntimeProvider {
12
- export type Props = PropsWithChildren<{
13
- runtime: MessagePartRuntime;
14
- }>;
15
- }
16
-
17
- const useMessagePartRuntimeStore = (runtime: MessagePartRuntime) => {
18
- const [store] = useState(() => create(() => runtime));
19
-
20
- useEffect(() => {
21
- ensureBinding(runtime);
22
-
23
- writableStore(store).setState(runtime, true);
24
- }, [runtime, store]);
25
-
26
- return store;
27
- };
28
-
29
- export const MessagePartRuntimeProvider: FC<
30
- MessagePartRuntimeProvider.Props
31
- > = ({ runtime, children }) => {
32
- const useMessagePartRuntime = useMessagePartRuntimeStore(runtime);
33
- const [context] = useState<MessagePartContextValue>(() => {
34
- return { useMessagePartRuntime };
35
- });
36
-
37
- return (
38
- <MessagePartContext.Provider value={context}>
39
- {children}
40
- </MessagePartContext.Provider>
41
- );
42
- };
@@ -1,50 +0,0 @@
1
- "use client";
2
-
3
- import { type FC, type PropsWithChildren, useEffect, useState } from "react";
4
- import { create } from "zustand";
5
- import { MessageContext } from "../react/MessageContext";
6
- import type { MessageContextValue } from "../react/MessageContext";
7
- import { makeMessageUtilsStore } from "../stores/MessageUtils";
8
- import { writableStore } from "../ReadonlyStore";
9
- import { MessageRuntime } from "../../api/MessageRuntime";
10
- import { ensureBinding } from "../react/utils/ensureBinding";
11
-
12
- export namespace MessageRuntimeProvider {
13
- export type Props = PropsWithChildren<{
14
- runtime: MessageRuntime;
15
- }>;
16
- }
17
-
18
- const useMessageRuntimeStore = (runtime: MessageRuntime) => {
19
- const [store] = useState(() => create(() => runtime));
20
-
21
- useEffect(() => {
22
- ensureBinding(runtime);
23
-
24
- writableStore(store).setState(runtime, true);
25
- }, [runtime, store]);
26
-
27
- return store;
28
- };
29
-
30
- const useMessageUtilsStore = () => {
31
- const [store] = useState(() => makeMessageUtilsStore());
32
- return store;
33
- };
34
-
35
- export const MessageRuntimeProvider: FC<MessageRuntimeProvider.Props> = ({
36
- runtime,
37
- children,
38
- }) => {
39
- const useMessageRuntime = useMessageRuntimeStore(runtime);
40
- const useMessageUtils = useMessageUtilsStore();
41
- const [context] = useState<MessageContextValue>(() => {
42
- return { useMessageRuntime, useMessageUtils };
43
- });
44
-
45
- return (
46
- <MessageContext.Provider value={context}>
47
- {children}
48
- </MessageContext.Provider>
49
- );
50
- };
@@ -1,43 +0,0 @@
1
- "use client";
2
-
3
- import { type FC, type PropsWithChildren, useEffect, useState } from "react";
4
- import { create } from "zustand";
5
- import {
6
- ThreadListItemContext,
7
- type ThreadListItemContextValue,
8
- } from "../react/ThreadListItemContext";
9
- import { writableStore } from "../ReadonlyStore";
10
- import { ThreadListItemRuntime } from "../../api/ThreadListItemRuntime";
11
- import { ensureBinding } from "../react/utils/ensureBinding";
12
-
13
- export namespace ThreadListItemRuntimeProvider {
14
- export type Props = PropsWithChildren<{
15
- runtime: ThreadListItemRuntime;
16
- }>;
17
- }
18
-
19
- const useThreadListItemRuntimeStore = (runtime: ThreadListItemRuntime) => {
20
- const [store] = useState(() => create(() => runtime));
21
-
22
- useEffect(() => {
23
- ensureBinding(runtime);
24
- writableStore(store).setState(runtime, true);
25
- }, [runtime, store]);
26
-
27
- return store;
28
- };
29
-
30
- export const ThreadListItemRuntimeProvider: FC<
31
- ThreadListItemRuntimeProvider.Props
32
- > = ({ runtime, children }) => {
33
- const useThreadListItemRuntime = useThreadListItemRuntimeStore(runtime);
34
- const [context] = useState<ThreadListItemContextValue>(() => {
35
- return { useThreadListItemRuntime };
36
- });
37
-
38
- return (
39
- <ThreadListItemContext.Provider value={context}>
40
- {children}
41
- </ThreadListItemContext.Provider>
42
- );
43
- };
@@ -1,53 +0,0 @@
1
- "use client";
2
-
3
- import type { FC, PropsWithChildren } from "react";
4
- import { useEffect, useState } from "react";
5
- import type { ThreadContextValue } from "../react/ThreadContext";
6
- import { ThreadContext } from "../react/ThreadContext";
7
- import { writableStore } from "../ReadonlyStore";
8
- import { ThreadRuntime } from "../../api/ThreadRuntime";
9
- import { create } from "zustand";
10
- import { ThreadListItemRuntime } from "../../api/ThreadListItemRuntime";
11
- import { ThreadListItemRuntimeProvider } from "./ThreadListItemRuntimeProvider";
12
- import { ensureBinding } from "../react/utils/ensureBinding";
13
- import { ThreadViewportProvider } from "./ThreadViewportProvider";
14
-
15
- type ThreadProviderProps = {
16
- listItemRuntime: ThreadListItemRuntime;
17
- runtime: ThreadRuntime;
18
- };
19
-
20
- const useThreadRuntimeStore = (runtime: ThreadRuntime) => {
21
- const [store] = useState(() => create(() => runtime));
22
-
23
- useEffect(() => {
24
- ensureBinding(runtime);
25
- ensureBinding(runtime.composer);
26
-
27
- writableStore(store).setState(runtime, true);
28
- }, [runtime, store]);
29
-
30
- return store;
31
- };
32
-
33
- export const ThreadRuntimeProvider: FC<
34
- PropsWithChildren<ThreadProviderProps>
35
- > = ({ children, listItemRuntime: threadListItemRuntime, runtime }) => {
36
- const useThreadRuntime = useThreadRuntimeStore(runtime);
37
-
38
- const [context] = useState<ThreadContextValue>(() => {
39
- return {
40
- useThreadRuntime,
41
- };
42
- });
43
-
44
- return (
45
- <ThreadListItemRuntimeProvider runtime={threadListItemRuntime}>
46
- <ThreadContext.Provider value={context}>
47
- {/* TODO temporarily allow accessing viewport state from outside the viewport */}
48
- {/* TODO figure out if this behavior should be deprecated, since it is quite hacky */}
49
- <ThreadViewportProvider>{children}</ThreadViewportProvider>
50
- </ThreadContext.Provider>
51
- </ThreadListItemRuntimeProvider>
52
- );
53
- };
@@ -1,37 +0,0 @@
1
- "use client";
2
-
3
- import { createContext } from "react";
4
- import { ReadonlyStore } from "../ReadonlyStore";
5
- import { createContextHook } from "./utils/createContextHook";
6
- import { UseBoundStore } from "zustand";
7
- import { MessagePartRuntime } from "../../api/MessagePartRuntime";
8
- import { createStateHookForRuntime } from "./utils/createStateHookForRuntime";
9
-
10
- export type MessagePartContextValue = {
11
- useMessagePartRuntime: UseBoundStore<ReadonlyStore<MessagePartRuntime>>;
12
- };
13
-
14
- export const MessagePartContext = createContext<MessagePartContextValue | null>(
15
- null,
16
- );
17
-
18
- const useMessagePartContext = createContextHook(
19
- MessagePartContext,
20
- "a component passed to <MessagePrimitive.Parts components={...}>",
21
- );
22
-
23
- export function useMessagePartRuntime(options?: {
24
- optional?: false | undefined;
25
- }): MessagePartRuntime;
26
- export function useMessagePartRuntime(options?: {
27
- optional?: boolean | undefined;
28
- }): MessagePartRuntime | null;
29
- export function useMessagePartRuntime(options?: {
30
- optional?: boolean | undefined;
31
- }) {
32
- const context = useMessagePartContext(options);
33
- if (!context) return null;
34
- return context.useMessagePartRuntime();
35
- }
36
-
37
- export const useMessagePart = createStateHookForRuntime(useMessagePartRuntime);
@@ -1,38 +0,0 @@
1
- "use client";
2
-
3
- import { createContext } from "react";
4
- import { ReadonlyStore } from "../ReadonlyStore";
5
- import { createContextHook } from "./utils/createContextHook";
6
- import { UseBoundStore } from "zustand";
7
- import { ThreadListItemRuntime } from "../../api/ThreadListItemRuntime";
8
- import { createStateHookForRuntime } from "./utils/createStateHookForRuntime";
9
-
10
- export type ThreadListItemContextValue = {
11
- useThreadListItemRuntime: UseBoundStore<ReadonlyStore<ThreadListItemRuntime>>;
12
- };
13
-
14
- export const ThreadListItemContext =
15
- createContext<ThreadListItemContextValue | null>(null);
16
-
17
- const useThreadListItemContext = createContextHook(
18
- ThreadListItemContext,
19
- "a component passed to <ThreadListPrimitive.Items components={...}>",
20
- );
21
-
22
- export function useThreadListItemRuntime(options?: {
23
- optional?: false | undefined;
24
- }): ThreadListItemRuntime;
25
- export function useThreadListItemRuntime(options?: {
26
- optional?: boolean | undefined;
27
- }): ThreadListItemRuntime | null;
28
- export function useThreadListItemRuntime(options?: {
29
- optional?: boolean | undefined;
30
- }) {
31
- const context = useThreadListItemContext(options);
32
- if (!context) return null;
33
- return context.useThreadListItemRuntime();
34
- }
35
-
36
- export const useThreadListItem = createStateHookForRuntime(
37
- useThreadListItemRuntime,
38
- );