@assistant-ui/core 0.2.3 → 0.2.5

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 (828) hide show
  1. package/dist/adapters/attachment.d.ts +43 -39
  2. package/dist/adapters/attachment.d.ts.map +1 -1
  3. package/dist/adapters/attachment.js +148 -183
  4. package/dist/adapters/attachment.js.map +1 -1
  5. package/dist/adapters/directive-formatter.d.ts +6 -2
  6. package/dist/adapters/directive-formatter.d.ts.map +1 -1
  7. package/dist/adapters/directive-formatter.js +36 -33
  8. package/dist/adapters/directive-formatter.js.map +1 -1
  9. package/dist/adapters/feedback.d.ts +9 -6
  10. package/dist/adapters/feedback.d.ts.map +1 -1
  11. package/dist/adapters/feedback.js +0 -2
  12. package/dist/adapters/index.d.ts +9 -13
  13. package/dist/adapters/index.js +5 -6
  14. package/dist/adapters/speech.d.ts +66 -63
  15. package/dist/adapters/speech.d.ts.map +1 -1
  16. package/dist/adapters/speech.js +170 -174
  17. package/dist/adapters/speech.js.map +1 -1
  18. package/dist/adapters/suggestion.d.ts +9 -6
  19. package/dist/adapters/suggestion.d.ts.map +1 -1
  20. package/dist/adapters/suggestion.js +0 -2
  21. package/dist/adapters/thread-history.d.ts +40 -37
  22. package/dist/adapters/thread-history.d.ts.map +1 -1
  23. package/dist/adapters/thread-history.js +0 -2
  24. package/dist/adapters/trigger.d.ts +9 -8
  25. package/dist/adapters/trigger.d.ts.map +1 -1
  26. package/dist/adapters/trigger.js +0 -2
  27. package/dist/adapters/voice.d.ts +46 -42
  28. package/dist/adapters/voice.d.ts.map +1 -1
  29. package/dist/adapters/voice.js +98 -107
  30. package/dist/adapters/voice.js.map +1 -1
  31. package/dist/index.d.ts +45 -53
  32. package/dist/index.js +16 -20
  33. package/dist/internal.d.ts +37 -8
  34. package/dist/internal.js +34 -18
  35. package/dist/model-context/frame/host.d.ts +23 -19
  36. package/dist/model-context/frame/host.d.ts.map +1 -1
  37. package/dist/model-context/frame/host.js +121 -135
  38. package/dist/model-context/frame/host.js.map +1 -1
  39. package/dist/model-context/frame/provider.d.ts +20 -16
  40. package/dist/model-context/frame/provider.d.ts.map +1 -1
  41. package/dist/model-context/frame/provider.js +115 -126
  42. package/dist/model-context/frame/provider.js.map +1 -1
  43. package/dist/model-context/frame/types.d.ts +25 -22
  44. package/dist/model-context/frame/types.d.ts.map +1 -1
  45. package/dist/model-context/frame/types.js +5 -1
  46. package/dist/model-context/frame/types.js.map +1 -1
  47. package/dist/model-context/registry-handles.d.ts +13 -9
  48. package/dist/model-context/registry-handles.d.ts.map +1 -1
  49. package/dist/model-context/registry-handles.js +0 -2
  50. package/dist/model-context/registry.d.ts +19 -15
  51. package/dist/model-context/registry.d.ts.map +1 -1
  52. package/dist/model-context/registry.js +93 -107
  53. package/dist/model-context/registry.js.map +1 -1
  54. package/dist/model-context/tool.d.ts +6 -2
  55. package/dist/model-context/tool.d.ts.map +1 -1
  56. package/dist/model-context/tool.js +30 -27
  57. package/dist/model-context/tool.js.map +1 -1
  58. package/dist/model-context/types.d.ts +37 -33
  59. package/dist/model-context/types.d.ts.map +1 -1
  60. package/dist/model-context/types.js +24 -38
  61. package/dist/model-context/types.js.map +1 -1
  62. package/dist/react/AssistantProvider.d.ts +12 -8
  63. package/dist/react/AssistantProvider.d.ts.map +1 -1
  64. package/dist/react/AssistantProvider.js +16 -9
  65. package/dist/react/AssistantProvider.js.map +1 -1
  66. package/dist/react/AssistantRuntimeProvider.d.ts +26 -18
  67. package/dist/react/AssistantRuntimeProvider.d.ts.map +1 -1
  68. package/dist/react/AssistantRuntimeProvider.js +33 -25
  69. package/dist/react/AssistantRuntimeProvider.js.map +1 -1
  70. package/dist/react/RuntimeAdapter.d.ts +5 -2
  71. package/dist/react/RuntimeAdapter.d.ts.map +1 -1
  72. package/dist/react/RuntimeAdapter.js +11 -11
  73. package/dist/react/RuntimeAdapter.js.map +1 -1
  74. package/dist/react/adapters/LocalStorageThreadListAdapter.d.ts +14 -11
  75. package/dist/react/adapters/LocalStorageThreadListAdapter.d.ts.map +1 -1
  76. package/dist/react/adapters/LocalStorageThreadListAdapter.js +136 -147
  77. package/dist/react/adapters/LocalStorageThreadListAdapter.js.map +1 -1
  78. package/dist/react/adapters/TitleGenerationAdapter.d.ts +8 -4
  79. package/dist/react/adapters/TitleGenerationAdapter.d.ts.map +1 -1
  80. package/dist/react/adapters/TitleGenerationAdapter.js +13 -13
  81. package/dist/react/adapters/TitleGenerationAdapter.js.map +1 -1
  82. package/dist/react/client/DataRenderers.d.ts +6 -2
  83. package/dist/react/client/DataRenderers.d.ts.map +1 -1
  84. package/dist/react/client/DataRenderers.js +53 -51
  85. package/dist/react/client/DataRenderers.js.map +1 -1
  86. package/dist/react/client/Interactables.d.ts +6 -2
  87. package/dist/react/client/Interactables.d.ts.map +1 -1
  88. package/dist/react/client/Interactables.js +251 -257
  89. package/dist/react/client/Interactables.js.map +1 -1
  90. package/dist/react/client/Tools.d.ts +13 -14
  91. package/dist/react/client/Tools.d.ts.map +1 -1
  92. package/dist/react/client/Tools.js +57 -68
  93. package/dist/react/client/Tools.js.map +1 -1
  94. package/dist/react/client/interactable-model-context.d.ts +10 -6
  95. package/dist/react/client/interactable-model-context.d.ts.map +1 -1
  96. package/dist/react/client/interactable-model-context.js +51 -59
  97. package/dist/react/client/interactable-model-context.js.map +1 -1
  98. package/dist/react/index.d.ts +95 -90
  99. package/dist/react/index.js +88 -96
  100. package/dist/react/model-context/makeAssistantDataUI.d.ts +9 -6
  101. package/dist/react/model-context/makeAssistantDataUI.d.ts.map +1 -1
  102. package/dist/react/model-context/makeAssistantDataUI.js +17 -13
  103. package/dist/react/model-context/makeAssistantDataUI.js.map +1 -1
  104. package/dist/react/model-context/makeAssistantTool.d.ts +9 -6
  105. package/dist/react/model-context/makeAssistantTool.d.ts.map +1 -1
  106. package/dist/react/model-context/makeAssistantTool.js +18 -14
  107. package/dist/react/model-context/makeAssistantTool.js.map +1 -1
  108. package/dist/react/model-context/makeAssistantToolUI.d.ts +9 -6
  109. package/dist/react/model-context/makeAssistantToolUI.d.ts.map +1 -1
  110. package/dist/react/model-context/makeAssistantToolUI.js +19 -15
  111. package/dist/react/model-context/makeAssistantToolUI.js.map +1 -1
  112. package/dist/react/model-context/toolbox.d.ts +13 -11
  113. package/dist/react/model-context/toolbox.d.ts.map +1 -1
  114. package/dist/react/model-context/toolbox.js +0 -2
  115. package/dist/react/model-context/useAssistantContext.d.ts +5 -3
  116. package/dist/react/model-context/useAssistantContext.d.ts.map +1 -1
  117. package/dist/react/model-context/useAssistantContext.js +13 -14
  118. package/dist/react/model-context/useAssistantContext.js.map +1 -1
  119. package/dist/react/model-context/useAssistantDataUI.d.ts +9 -7
  120. package/dist/react/model-context/useAssistantDataUI.d.ts.map +1 -1
  121. package/dist/react/model-context/useAssistantDataUI.js +19 -12
  122. package/dist/react/model-context/useAssistantDataUI.js.map +1 -1
  123. package/dist/react/model-context/useAssistantInstructions.d.ts +5 -3
  124. package/dist/react/model-context/useAssistantInstructions.d.ts.map +1 -1
  125. package/dist/react/model-context/useAssistantInstructions.js +18 -16
  126. package/dist/react/model-context/useAssistantInstructions.js.map +1 -1
  127. package/dist/react/model-context/useAssistantInteractable.d.ts +12 -8
  128. package/dist/react/model-context/useAssistantInteractable.d.ts.map +1 -1
  129. package/dist/react/model-context/useAssistantInteractable.js +36 -26
  130. package/dist/react/model-context/useAssistantInteractable.js.map +1 -1
  131. package/dist/react/model-context/useAssistantTool.d.ts +9 -6
  132. package/dist/react/model-context/useAssistantTool.d.ts.map +1 -1
  133. package/dist/react/model-context/useAssistantTool.js +48 -47
  134. package/dist/react/model-context/useAssistantTool.js.map +1 -1
  135. package/dist/react/model-context/useAssistantToolUI.d.ts +9 -7
  136. package/dist/react/model-context/useAssistantToolUI.d.ts.map +1 -1
  137. package/dist/react/model-context/useAssistantToolUI.js +22 -15
  138. package/dist/react/model-context/useAssistantToolUI.js.map +1 -1
  139. package/dist/react/model-context/useInlineRender.d.ts +7 -3
  140. package/dist/react/model-context/useInlineRender.d.ts.map +1 -1
  141. package/dist/react/model-context/useInlineRender.js +12 -12
  142. package/dist/react/model-context/useInlineRender.js.map +1 -1
  143. package/dist/react/model-context/useInteractableState.d.ts +9 -7
  144. package/dist/react/model-context/useInteractableState.d.ts.map +1 -1
  145. package/dist/react/model-context/useInteractableState.js +29 -31
  146. package/dist/react/model-context/useInteractableState.js.map +1 -1
  147. package/dist/react/model-context/useToolArgsStatus.d.ts +7 -7
  148. package/dist/react/model-context/useToolArgsStatus.d.ts.map +1 -1
  149. package/dist/react/model-context/useToolArgsStatus.js +44 -50
  150. package/dist/react/model-context/useToolArgsStatus.js.map +1 -1
  151. package/dist/react/primitive-hooks/useActionBarCopy.d.ts +13 -7
  152. package/dist/react/primitive-hooks/useActionBarCopy.d.ts.map +1 -1
  153. package/dist/react/primitive-hooks/useActionBarCopy.js +31 -23
  154. package/dist/react/primitive-hooks/useActionBarCopy.js.map +1 -1
  155. package/dist/react/primitive-hooks/useActionBarEdit.d.ts +6 -3
  156. package/dist/react/primitive-hooks/useActionBarEdit.d.ts.map +1 -1
  157. package/dist/react/primitive-hooks/useActionBarEdit.js +13 -7
  158. package/dist/react/primitive-hooks/useActionBarEdit.js.map +1 -1
  159. package/dist/react/primitive-hooks/useActionBarFeedback.d.ts +9 -6
  160. package/dist/react/primitive-hooks/useActionBarFeedback.d.ts.map +1 -1
  161. package/dist/react/primitive-hooks/useActionBarFeedback.js +22 -14
  162. package/dist/react/primitive-hooks/useActionBarFeedback.js.map +1 -1
  163. package/dist/react/primitive-hooks/useActionBarReload.d.ts +6 -3
  164. package/dist/react/primitive-hooks/useActionBarReload.d.ts.map +1 -1
  165. package/dist/react/primitive-hooks/useActionBarReload.js +13 -9
  166. package/dist/react/primitive-hooks/useActionBarReload.js.map +1 -1
  167. package/dist/react/primitive-hooks/useActionBarSpeak.d.ts +6 -3
  168. package/dist/react/primitive-hooks/useActionBarSpeak.d.ts.map +1 -1
  169. package/dist/react/primitive-hooks/useActionBarSpeak.js +15 -11
  170. package/dist/react/primitive-hooks/useActionBarSpeak.js.map +1 -1
  171. package/dist/react/primitive-hooks/useActionBarStopSpeaking.d.ts +6 -3
  172. package/dist/react/primitive-hooks/useActionBarStopSpeaking.d.ts.map +1 -1
  173. package/dist/react/primitive-hooks/useActionBarStopSpeaking.js +13 -7
  174. package/dist/react/primitive-hooks/useActionBarStopSpeaking.js.map +1 -1
  175. package/dist/react/primitive-hooks/useBranchPickerNext.d.ts +6 -3
  176. package/dist/react/primitive-hooks/useBranchPickerNext.d.ts.map +1 -1
  177. package/dist/react/primitive-hooks/useBranchPickerNext.js +17 -14
  178. package/dist/react/primitive-hooks/useBranchPickerNext.js.map +1 -1
  179. package/dist/react/primitive-hooks/useBranchPickerPrevious.d.ts +6 -3
  180. package/dist/react/primitive-hooks/useBranchPickerPrevious.d.ts.map +1 -1
  181. package/dist/react/primitive-hooks/useBranchPickerPrevious.js +17 -14
  182. package/dist/react/primitive-hooks/useBranchPickerPrevious.js.map +1 -1
  183. package/dist/react/primitive-hooks/useComposerAddAttachment.d.ts +8 -4
  184. package/dist/react/primitive-hooks/useComposerAddAttachment.d.ts.map +1 -1
  185. package/dist/react/primitive-hooks/useComposerAddAttachment.js +13 -7
  186. package/dist/react/primitive-hooks/useComposerAddAttachment.js.map +1 -1
  187. package/dist/react/primitive-hooks/useComposerCancel.d.ts +6 -3
  188. package/dist/react/primitive-hooks/useComposerCancel.d.ts.map +1 -1
  189. package/dist/react/primitive-hooks/useComposerCancel.js +13 -7
  190. package/dist/react/primitive-hooks/useComposerCancel.js.map +1 -1
  191. package/dist/react/primitive-hooks/useComposerDictate.d.ts +6 -3
  192. package/dist/react/primitive-hooks/useComposerDictate.d.ts.map +1 -1
  193. package/dist/react/primitive-hooks/useComposerDictate.js +13 -9
  194. package/dist/react/primitive-hooks/useComposerDictate.js.map +1 -1
  195. package/dist/react/primitive-hooks/useComposerSend.d.ts +8 -4
  196. package/dist/react/primitive-hooks/useComposerSend.d.ts.map +1 -1
  197. package/dist/react/primitive-hooks/useComposerSend.js +13 -8
  198. package/dist/react/primitive-hooks/useComposerSend.js.map +1 -1
  199. package/dist/react/primitive-hooks/useEditComposerCancel.d.ts +5 -2
  200. package/dist/react/primitive-hooks/useEditComposerCancel.d.ts.map +1 -1
  201. package/dist/react/primitive-hooks/useEditComposerCancel.js +9 -6
  202. package/dist/react/primitive-hooks/useEditComposerCancel.js.map +1 -1
  203. package/dist/react/primitive-hooks/useEditComposerSend.d.ts +6 -3
  204. package/dist/react/primitive-hooks/useEditComposerSend.d.ts.map +1 -1
  205. package/dist/react/primitive-hooks/useEditComposerSend.js +13 -7
  206. package/dist/react/primitive-hooks/useEditComposerSend.js.map +1 -1
  207. package/dist/react/primitive-hooks/useMessageBranching.d.ts +8 -5
  208. package/dist/react/primitive-hooks/useMessageBranching.d.ts.map +1 -1
  209. package/dist/react/primitive-hooks/useMessageBranching.js +16 -11
  210. package/dist/react/primitive-hooks/useMessageBranching.js.map +1 -1
  211. package/dist/react/primitive-hooks/useMessageError.d.ts +4 -1
  212. package/dist/react/primitive-hooks/useMessageError.d.ts.map +1 -1
  213. package/dist/react/primitive-hooks/useMessageError.js +6 -5
  214. package/dist/react/primitive-hooks/useMessageError.js.map +1 -1
  215. package/dist/react/primitive-hooks/useMessageReload.d.ts +6 -3
  216. package/dist/react/primitive-hooks/useMessageReload.d.ts.map +1 -1
  217. package/dist/react/primitive-hooks/useMessageReload.js +13 -7
  218. package/dist/react/primitive-hooks/useMessageReload.js.map +1 -1
  219. package/dist/react/primitive-hooks/useSuggestionTrigger.d.ts +14 -7
  220. package/dist/react/primitive-hooks/useSuggestionTrigger.d.ts.map +1 -1
  221. package/dist/react/primitive-hooks/useSuggestionTrigger.js +33 -28
  222. package/dist/react/primitive-hooks/useSuggestionTrigger.js.map +1 -1
  223. package/dist/react/primitive-hooks/useThreadIsEmpty.d.ts +4 -1
  224. package/dist/react/primitive-hooks/useThreadIsEmpty.d.ts.map +1 -1
  225. package/dist/react/primitive-hooks/useThreadIsEmpty.js +6 -2
  226. package/dist/react/primitive-hooks/useThreadIsEmpty.js.map +1 -1
  227. package/dist/react/primitive-hooks/useThreadIsRunning.d.ts +4 -1
  228. package/dist/react/primitive-hooks/useThreadIsRunning.d.ts.map +1 -1
  229. package/dist/react/primitive-hooks/useThreadIsRunning.js +6 -2
  230. package/dist/react/primitive-hooks/useThreadIsRunning.js.map +1 -1
  231. package/dist/react/primitive-hooks/useThreadListItemArchive.d.ts +5 -2
  232. package/dist/react/primitive-hooks/useThreadListItemArchive.d.ts.map +1 -1
  233. package/dist/react/primitive-hooks/useThreadListItemArchive.js +9 -6
  234. package/dist/react/primitive-hooks/useThreadListItemArchive.js.map +1 -1
  235. package/dist/react/primitive-hooks/useThreadListItemDelete.d.ts +5 -2
  236. package/dist/react/primitive-hooks/useThreadListItemDelete.d.ts.map +1 -1
  237. package/dist/react/primitive-hooks/useThreadListItemDelete.js +9 -6
  238. package/dist/react/primitive-hooks/useThreadListItemDelete.js.map +1 -1
  239. package/dist/react/primitive-hooks/useThreadListItemTrigger.d.ts +5 -2
  240. package/dist/react/primitive-hooks/useThreadListItemTrigger.d.ts.map +1 -1
  241. package/dist/react/primitive-hooks/useThreadListItemTrigger.js +9 -6
  242. package/dist/react/primitive-hooks/useThreadListItemTrigger.js.map +1 -1
  243. package/dist/react/primitive-hooks/useThreadListItemUnarchive.d.ts +5 -2
  244. package/dist/react/primitive-hooks/useThreadListItemUnarchive.d.ts.map +1 -1
  245. package/dist/react/primitive-hooks/useThreadListItemUnarchive.js +9 -6
  246. package/dist/react/primitive-hooks/useThreadListItemUnarchive.js.map +1 -1
  247. package/dist/react/primitive-hooks/useThreadListLoadMore.d.ts +6 -3
  248. package/dist/react/primitive-hooks/useThreadListLoadMore.d.ts.map +1 -1
  249. package/dist/react/primitive-hooks/useThreadListLoadMore.js +13 -7
  250. package/dist/react/primitive-hooks/useThreadListLoadMore.js.map +1 -1
  251. package/dist/react/primitive-hooks/useThreadListNew.d.ts +5 -2
  252. package/dist/react/primitive-hooks/useThreadListNew.d.ts.map +1 -1
  253. package/dist/react/primitive-hooks/useThreadListNew.js +9 -6
  254. package/dist/react/primitive-hooks/useThreadListNew.js.map +1 -1
  255. package/dist/react/primitive-hooks/useThreadMessages.d.ts +6 -2
  256. package/dist/react/primitive-hooks/useThreadMessages.d.ts.map +1 -1
  257. package/dist/react/primitive-hooks/useThreadMessages.js +6 -2
  258. package/dist/react/primitive-hooks/useThreadMessages.js.map +1 -1
  259. package/dist/react/primitive-hooks/useVoice.d.ts +12 -8
  260. package/dist/react/primitive-hooks/useVoice.d.ts.map +1 -1
  261. package/dist/react/primitive-hooks/useVoice.js +25 -21
  262. package/dist/react/primitive-hooks/useVoice.js.map +1 -1
  263. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.d.ts +26 -27
  264. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.d.ts.map +1 -1
  265. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.js +30 -28
  266. package/dist/react/primitives/chainOfThought/ChainOfThoughtParts.js.map +1 -1
  267. package/dist/react/primitives/composer/ComposerAttachments.d.ts +27 -26
  268. package/dist/react/primitives/composer/ComposerAttachments.d.ts.map +1 -1
  269. package/dist/react/primitives/composer/ComposerAttachments.js +44 -48
  270. package/dist/react/primitives/composer/ComposerAttachments.js.map +1 -1
  271. package/dist/react/primitives/composer/ComposerIf.d.ts +12 -13
  272. package/dist/react/primitives/composer/ComposerIf.d.ts.map +1 -1
  273. package/dist/react/primitives/composer/ComposerIf.js +16 -17
  274. package/dist/react/primitives/composer/ComposerIf.js.map +1 -1
  275. package/dist/react/primitives/composer/ComposerQueue.d.ts +16 -13
  276. package/dist/react/primitives/composer/ComposerQueue.d.ts.map +1 -1
  277. package/dist/react/primitives/composer/ComposerQueue.js +31 -23
  278. package/dist/react/primitives/composer/ComposerQueue.js.map +1 -1
  279. package/dist/react/primitives/generativeUI/GenerativeUI.d.ts +64 -0
  280. package/dist/react/primitives/generativeUI/GenerativeUI.d.ts.map +1 -0
  281. package/dist/react/primitives/generativeUI/GenerativeUI.js +91 -0
  282. package/dist/react/primitives/generativeUI/GenerativeUI.js.map +1 -0
  283. package/dist/react/primitives/message/MessageAttachments.d.ts +27 -26
  284. package/dist/react/primitives/message/MessageAttachments.d.ts.map +1 -1
  285. package/dist/react/primitives/message/MessageAttachments.js +47 -52
  286. package/dist/react/primitives/message/MessageAttachments.js.map +1 -1
  287. package/dist/react/primitives/message/MessageGroupedParts.d.ts +73 -66
  288. package/dist/react/primitives/message/MessageGroupedParts.d.ts.map +1 -1
  289. package/dist/react/primitives/message/MessageGroupedParts.js +64 -60
  290. package/dist/react/primitives/message/MessageGroupedParts.js.map +1 -1
  291. package/dist/react/primitives/message/MessageParts.d.ts +147 -145
  292. package/dist/react/primitives/message/MessageParts.d.ts.map +1 -1
  293. package/dist/react/primitives/message/MessageParts.js +358 -329
  294. package/dist/react/primitives/message/MessageParts.js.map +1 -1
  295. package/dist/react/primitives/message/MessageQuote.d.ts +11 -8
  296. package/dist/react/primitives/message/MessageQuote.d.ts.map +1 -1
  297. package/dist/react/primitives/message/MessageQuote.js +24 -21
  298. package/dist/react/primitives/message/MessageQuote.js.map +1 -1
  299. package/dist/react/primitives/messagePart/MessagePartInProgress.d.ts +8 -4
  300. package/dist/react/primitives/messagePart/MessagePartInProgress.d.ts.map +1 -1
  301. package/dist/react/primitives/messagePart/MessagePartInProgress.js +6 -3
  302. package/dist/react/primitives/messagePart/MessagePartInProgress.js.map +1 -1
  303. package/dist/react/primitives/part/PartMessages.d.ts +16 -13
  304. package/dist/react/primitives/part/PartMessages.d.ts.map +1 -1
  305. package/dist/react/primitives/part/PartMessages.js +45 -41
  306. package/dist/react/primitives/part/PartMessages.js.map +1 -1
  307. package/dist/react/primitives/thread/ThreadMessages.d.ts +40 -55
  308. package/dist/react/primitives/thread/ThreadMessages.d.ts.map +1 -1
  309. package/dist/react/primitives/thread/ThreadMessages.js +58 -92
  310. package/dist/react/primitives/thread/ThreadMessages.js.map +1 -1
  311. package/dist/react/primitives/thread/ThreadSuggestions.d.ts +25 -25
  312. package/dist/react/primitives/thread/ThreadSuggestions.d.ts.map +1 -1
  313. package/dist/react/primitives/thread/ThreadSuggestions.js +39 -35
  314. package/dist/react/primitives/thread/ThreadSuggestions.js.map +1 -1
  315. package/dist/react/primitives/threadList/ThreadListItems.d.ts +27 -26
  316. package/dist/react/primitives/threadList/ThreadListItems.d.ts.map +1 -1
  317. package/dist/react/primitives/threadList/ThreadListItems.js +47 -23
  318. package/dist/react/primitives/threadList/ThreadListItems.js.map +1 -1
  319. package/dist/react/primitives/threadListItem/ThreadListItemTitle.d.ts +10 -6
  320. package/dist/react/primitives/threadListItem/ThreadListItemTitle.d.ts.map +1 -1
  321. package/dist/react/primitives/threadListItem/ThreadListItemTitle.js +7 -4
  322. package/dist/react/primitives/threadListItem/ThreadListItemTitle.js.map +1 -1
  323. package/dist/react/providers/AttachmentByIndexProvider.d.ts +9 -5
  324. package/dist/react/providers/AttachmentByIndexProvider.d.ts.map +1 -1
  325. package/dist/react/providers/AttachmentByIndexProvider.js +30 -20
  326. package/dist/react/providers/AttachmentByIndexProvider.js.map +1 -1
  327. package/dist/react/providers/ChainOfThoughtByIndicesProvider.d.ts +8 -4
  328. package/dist/react/providers/ChainOfThoughtByIndicesProvider.d.ts.map +1 -1
  329. package/dist/react/providers/ChainOfThoughtByIndicesProvider.js +19 -17
  330. package/dist/react/providers/ChainOfThoughtByIndicesProvider.js.map +1 -1
  331. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.d.ts +7 -3
  332. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.d.ts.map +1 -1
  333. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.js +18 -11
  334. package/dist/react/providers/ChainOfThoughtPartByIndexProvider.js.map +1 -1
  335. package/dist/react/providers/MessageByIndexProvider.d.ts +7 -3
  336. package/dist/react/providers/MessageByIndexProvider.d.ts.map +1 -1
  337. package/dist/react/providers/MessageByIndexProvider.js +25 -16
  338. package/dist/react/providers/MessageByIndexProvider.js.map +1 -1
  339. package/dist/react/providers/PartByIndexProvider.d.ts +7 -3
  340. package/dist/react/providers/PartByIndexProvider.d.ts.map +1 -1
  341. package/dist/react/providers/PartByIndexProvider.js +18 -11
  342. package/dist/react/providers/PartByIndexProvider.js.map +1 -1
  343. package/dist/react/providers/QueueItemByIndexProvider.d.ts +8 -4
  344. package/dist/react/providers/QueueItemByIndexProvider.d.ts.map +1 -1
  345. package/dist/react/providers/QueueItemByIndexProvider.js +14 -10
  346. package/dist/react/providers/QueueItemByIndexProvider.js.map +1 -1
  347. package/dist/react/providers/ReadonlyThreadProvider.d.ts +11 -7
  348. package/dist/react/providers/ReadonlyThreadProvider.d.ts.map +1 -1
  349. package/dist/react/providers/ReadonlyThreadProvider.js +46 -42
  350. package/dist/react/providers/ReadonlyThreadProvider.js.map +1 -1
  351. package/dist/react/providers/SuggestionByIndexProvider.d.ts +8 -4
  352. package/dist/react/providers/SuggestionByIndexProvider.d.ts.map +1 -1
  353. package/dist/react/providers/SuggestionByIndexProvider.js +14 -10
  354. package/dist/react/providers/SuggestionByIndexProvider.js.map +1 -1
  355. package/dist/react/providers/TextMessagePartProvider.d.ts +8 -4
  356. package/dist/react/providers/TextMessagePartProvider.d.ts.map +1 -1
  357. package/dist/react/providers/TextMessagePartProvider.js +29 -22
  358. package/dist/react/providers/TextMessagePartProvider.js.map +1 -1
  359. package/dist/react/providers/ThreadListItemByIndexProvider.d.ts +8 -4
  360. package/dist/react/providers/ThreadListItemByIndexProvider.d.ts.map +1 -1
  361. package/dist/react/providers/ThreadListItemByIndexProvider.js +22 -11
  362. package/dist/react/providers/ThreadListItemByIndexProvider.js.map +1 -1
  363. package/dist/react/providers/ThreadListItemRuntimeProvider.d.ts +8 -4
  364. package/dist/react/providers/ThreadListItemRuntimeProvider.d.ts.map +1 -1
  365. package/dist/react/providers/ThreadListItemRuntimeProvider.js +12 -8
  366. package/dist/react/providers/ThreadListItemRuntimeProvider.js.map +1 -1
  367. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.d.ts +119 -109
  368. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.d.ts.map +1 -1
  369. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.js +123 -129
  370. package/dist/react/runtimes/RemoteThreadListHookInstanceManager.js.map +1 -1
  371. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.d.ts +147 -135
  372. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.d.ts.map +1 -1
  373. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.js +460 -515
  374. package/dist/react/runtimes/RemoteThreadListThreadListRuntimeCore.js.map +1 -1
  375. package/dist/react/runtimes/RuntimeAdapterProvider.d.ts +19 -15
  376. package/dist/react/runtimes/RuntimeAdapterProvider.d.ts.map +1 -1
  377. package/dist/react/runtimes/RuntimeAdapterProvider.js +16 -9
  378. package/dist/react/runtimes/RuntimeAdapterProvider.js.map +1 -1
  379. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.d.ts +8 -4
  380. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.d.ts.map +1 -1
  381. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.js +372 -485
  382. package/dist/react/runtimes/cloud/AssistantCloudThreadHistoryAdapter.js.map +1 -1
  383. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.d.ts +19 -13
  384. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.d.ts.map +1 -1
  385. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.js +83 -80
  386. package/dist/react/runtimes/cloud/CloudFileAttachmentAdapter.js.map +1 -1
  387. package/dist/react/runtimes/cloud/auiV0.d.ts +61 -58
  388. package/dist/react/runtimes/cloud/auiV0.d.ts.map +1 -1
  389. package/dist/react/runtimes/cloud/auiV0.js +80 -87
  390. package/dist/react/runtimes/cloud/auiV0.js.map +1 -1
  391. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.d.ts +10 -7
  392. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.d.ts.map +1 -1
  393. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.js +101 -101
  394. package/dist/react/runtimes/cloud/useCloudThreadListAdapter.js.map +1 -1
  395. package/dist/react/runtimes/createMessageConverter.d.ts +23 -14
  396. package/dist/react/runtimes/createMessageConverter.d.ts.map +1 -1
  397. package/dist/react/runtimes/createMessageConverter.js +43 -46
  398. package/dist/react/runtimes/createMessageConverter.js.map +1 -1
  399. package/dist/react/runtimes/external-message-converter.d.ts +40 -31
  400. package/dist/react/runtimes/external-message-converter.d.ts.map +1 -1
  401. package/dist/react/runtimes/external-message-converter.js +222 -296
  402. package/dist/react/runtimes/external-message-converter.js.map +1 -1
  403. package/dist/react/runtimes/useExternalStoreRuntime.d.ts +7 -3
  404. package/dist/react/runtimes/useExternalStoreRuntime.d.ts.map +1 -1
  405. package/dist/react/runtimes/useExternalStoreRuntime.js +18 -15
  406. package/dist/react/runtimes/useExternalStoreRuntime.js.map +1 -1
  407. package/dist/react/runtimes/useLocalRuntime.d.ts +41 -26
  408. package/dist/react/runtimes/useLocalRuntime.d.ts.map +1 -1
  409. package/dist/react/runtimes/useLocalRuntime.js +58 -67
  410. package/dist/react/runtimes/useLocalRuntime.js.map +1 -1
  411. package/dist/react/runtimes/useRemoteThreadListRuntime.d.ts +7 -3
  412. package/dist/react/runtimes/useRemoteThreadListRuntime.d.ts.map +1 -1
  413. package/dist/react/runtimes/useRemoteThreadListRuntime.js +51 -62
  414. package/dist/react/runtimes/useRemoteThreadListRuntime.js.map +1 -1
  415. package/dist/react/runtimes/useToolInvocations.d.ts +39 -34
  416. package/dist/react/runtimes/useToolInvocations.d.ts.map +1 -1
  417. package/dist/react/runtimes/useToolInvocations.js +371 -481
  418. package/dist/react/runtimes/useToolInvocations.js.map +1 -1
  419. package/dist/react/types/MessagePartComponentTypes.d.ts +65 -41
  420. package/dist/react/types/MessagePartComponentTypes.d.ts.map +1 -1
  421. package/dist/react/types/MessagePartComponentTypes.js +0 -2
  422. package/dist/react/types/scopes/dataRenderers.d.ts +15 -11
  423. package/dist/react/types/scopes/dataRenderers.d.ts.map +1 -1
  424. package/dist/react/types/scopes/dataRenderers.js +0 -2
  425. package/dist/react/types/scopes/interactables.d.ts +44 -42
  426. package/dist/react/types/scopes/interactables.d.ts.map +1 -1
  427. package/dist/react/types/scopes/interactables.js +0 -2
  428. package/dist/react/types/scopes/tools.d.ts +16 -12
  429. package/dist/react/types/scopes/tools.d.ts.map +1 -1
  430. package/dist/react/types/scopes/tools.js +0 -2
  431. package/dist/react/types/store-augmentation.d.ts +11 -9
  432. package/dist/react/types/store-augmentation.d.ts.map +1 -1
  433. package/dist/react/types/store-augmentation.js +0 -2
  434. package/dist/react/utils/getMessageQuote.d.ts +9 -6
  435. package/dist/react/utils/getMessageQuote.d.ts.map +1 -1
  436. package/dist/react/utils/getMessageQuote.js +8 -5
  437. package/dist/react/utils/getMessageQuote.js.map +1 -1
  438. package/dist/react/utils/groupParts.d.ts +22 -19
  439. package/dist/react/utils/groupParts.d.ts.map +1 -1
  440. package/dist/react/utils/groupParts.js +62 -89
  441. package/dist/react/utils/groupParts.js.map +1 -1
  442. package/dist/runtime/api/assistant-runtime.d.ts +32 -28
  443. package/dist/runtime/api/assistant-runtime.d.ts.map +1 -1
  444. package/dist/runtime/api/assistant-runtime.js +25 -22
  445. package/dist/runtime/api/assistant-runtime.js.map +1 -1
  446. package/dist/runtime/api/attachment-runtime.d.ts +48 -45
  447. package/dist/runtime/api/attachment-runtime.d.ts.map +1 -1
  448. package/dist/runtime/api/attachment-runtime.js +55 -52
  449. package/dist/runtime/api/attachment-runtime.js.map +1 -1
  450. package/dist/runtime/api/bindings.d.ts +30 -25
  451. package/dist/runtime/api/bindings.d.ts.map +1 -1
  452. package/dist/runtime/api/bindings.js +0 -2
  453. package/dist/runtime/api/composer-runtime.d.ts +184 -182
  454. package/dist/runtime/api/composer-runtime.d.ts.map +1 -1
  455. package/dist/runtime/api/composer-runtime.js +239 -245
  456. package/dist/runtime/api/composer-runtime.js.map +1 -1
  457. package/dist/runtime/api/message-part-runtime.d.ts +29 -27
  458. package/dist/runtime/api/message-part-runtime.d.ts.map +1 -1
  459. package/dist/runtime/api/message-part-runtime.js +61 -65
  460. package/dist/runtime/api/message-part-runtime.js.map +1 -1
  461. package/dist/runtime/api/message-runtime.d.ts +91 -80
  462. package/dist/runtime/api/message-runtime.d.ts.map +1 -1
  463. package/dist/runtime/api/message-runtime.js +169 -194
  464. package/dist/runtime/api/message-runtime.js.map +1 -1
  465. package/dist/runtime/api/paths.d.ts +57 -54
  466. package/dist/runtime/api/paths.d.ts.map +1 -1
  467. package/dist/runtime/api/paths.js +0 -2
  468. package/dist/runtime/api/thread-list-item-runtime.d.ts +68 -61
  469. package/dist/runtime/api/thread-list-item-runtime.d.ts.map +1 -1
  470. package/dist/runtime/api/thread-list-item-runtime.js +85 -84
  471. package/dist/runtime/api/thread-list-item-runtime.js.map +1 -1
  472. package/dist/runtime/api/thread-list-runtime.d.ts +57 -48
  473. package/dist/runtime/api/thread-list-runtime.d.ts.map +1 -1
  474. package/dist/runtime/api/thread-list-runtime.js +160 -147
  475. package/dist/runtime/api/thread-list-runtime.js.map +1 -1
  476. package/dist/runtime/api/thread-runtime.d.ts +278 -272
  477. package/dist/runtime/api/thread-runtime.d.ts.map +1 -1
  478. package/dist/runtime/api/thread-runtime.js +244 -244
  479. package/dist/runtime/api/thread-runtime.js.map +1 -1
  480. package/dist/runtime/base/base-assistant-runtime-core.d.ts +13 -9
  481. package/dist/runtime/base/base-assistant-runtime-core.d.ts.map +1 -1
  482. package/dist/runtime/base/base-assistant-runtime-core.js +13 -9
  483. package/dist/runtime/base/base-assistant-runtime-core.js.map +1 -1
  484. package/dist/runtime/base/base-composer-runtime-core.d.ts +60 -57
  485. package/dist/runtime/base/base-composer-runtime-core.d.ts.map +1 -1
  486. package/dist/runtime/base/base-composer-runtime-core.js +348 -392
  487. package/dist/runtime/base/base-composer-runtime-core.js.map +1 -1
  488. package/dist/runtime/base/base-thread-runtime-core.d.ts +89 -84
  489. package/dist/runtime/base/base-thread-runtime-core.d.ts.map +1 -1
  490. package/dist/runtime/base/base-thread-runtime-core.js +349 -357
  491. package/dist/runtime/base/base-thread-runtime-core.js.map +1 -1
  492. package/dist/runtime/base/default-edit-composer-runtime-core.d.ts +37 -30
  493. package/dist/runtime/base/default-edit-composer-runtime-core.d.ts.map +1 -1
  494. package/dist/runtime/base/default-edit-composer-runtime-core.js +70 -77
  495. package/dist/runtime/base/default-edit-composer-runtime-core.js.map +1 -1
  496. package/dist/runtime/base/default-thread-composer-runtime-core.d.ts +25 -21
  497. package/dist/runtime/base/default-thread-composer-runtime-core.d.ts.map +1 -1
  498. package/dist/runtime/base/default-thread-composer-runtime-core.js +51 -48
  499. package/dist/runtime/base/default-thread-composer-runtime-core.js.map +1 -1
  500. package/dist/runtime/interfaces/assistant-runtime-core.d.ts +12 -8
  501. package/dist/runtime/interfaces/assistant-runtime-core.d.ts.map +1 -1
  502. package/dist/runtime/interfaces/assistant-runtime-core.js +0 -2
  503. package/dist/runtime/interfaces/composer-runtime-core.d.ts +70 -67
  504. package/dist/runtime/interfaces/composer-runtime-core.d.ts.map +1 -1
  505. package/dist/runtime/interfaces/composer-runtime-core.js +0 -2
  506. package/dist/runtime/interfaces/thread-list-runtime-core.d.ts +45 -39
  507. package/dist/runtime/interfaces/thread-list-runtime-core.d.ts.map +1 -1
  508. package/dist/runtime/interfaces/thread-list-runtime-core.js +0 -2
  509. package/dist/runtime/interfaces/thread-runtime-core.d.ts +149 -145
  510. package/dist/runtime/interfaces/thread-runtime-core.d.ts.map +1 -1
  511. package/dist/runtime/interfaces/thread-runtime-core.js +0 -2
  512. package/dist/runtime/internal.d.ts +19 -23
  513. package/dist/runtime/internal.js +18 -22
  514. package/dist/runtime/utils/auto-status.d.ts +8 -4
  515. package/dist/runtime/utils/auto-status.d.ts.map +1 -1
  516. package/dist/runtime/utils/auto-status.js +18 -22
  517. package/dist/runtime/utils/auto-status.js.map +1 -1
  518. package/dist/runtime/utils/chat-model-adapter.d.ts +34 -31
  519. package/dist/runtime/utils/chat-model-adapter.d.ts.map +1 -1
  520. package/dist/runtime/utils/chat-model-adapter.js +0 -2
  521. package/dist/runtime/utils/external-store-message.d.ts +9 -5
  522. package/dist/runtime/utils/external-store-message.d.ts.map +1 -1
  523. package/dist/runtime/utils/external-store-message.js +21 -21
  524. package/dist/runtime/utils/external-store-message.js.map +1 -1
  525. package/dist/runtime/utils/message-repository.d.ts +48 -42
  526. package/dist/runtime/utils/message-repository.d.ts.map +1 -1
  527. package/dist/runtime/utils/message-repository.js +213 -267
  528. package/dist/runtime/utils/message-repository.js.map +1 -1
  529. package/dist/runtime/utils/thread-message-like.d.ts +41 -39
  530. package/dist/runtime/utils/thread-message-like.d.ts.map +1 -1
  531. package/dist/runtime/utils/thread-message-like.js +125 -139
  532. package/dist/runtime/utils/thread-message-like.js.map +1 -1
  533. package/dist/runtimes/assistant-transport/utils.d.ts +4 -1
  534. package/dist/runtimes/assistant-transport/utils.d.ts.map +1 -1
  535. package/dist/runtimes/assistant-transport/utils.js +9 -5
  536. package/dist/runtimes/assistant-transport/utils.js.map +1 -1
  537. package/dist/runtimes/external-store/external-store-adapter.d.ts +100 -97
  538. package/dist/runtimes/external-store/external-store-adapter.d.ts.map +1 -1
  539. package/dist/runtimes/external-store/external-store-adapter.js +0 -2
  540. package/dist/runtimes/external-store/external-store-runtime-core.d.ts +9 -5
  541. package/dist/runtimes/external-store/external-store-runtime-core.d.ts.map +1 -1
  542. package/dist/runtimes/external-store/external-store-runtime-core.js +16 -13
  543. package/dist/runtimes/external-store/external-store-runtime-core.js.map +1 -1
  544. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.d.ts +46 -40
  545. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.d.ts.map +1 -1
  546. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.js +141 -171
  547. package/dist/runtimes/external-store/external-store-thread-list-runtime-core.js.map +1 -1
  548. package/dist/runtimes/external-store/external-store-thread-runtime-core.d.ts +53 -47
  549. package/dist/runtimes/external-store/external-store-thread-runtime-core.d.ts.map +1 -1
  550. package/dist/runtimes/external-store/external-store-thread-runtime-core.js +212 -288
  551. package/dist/runtimes/external-store/external-store-thread-runtime-core.js.map +1 -1
  552. package/dist/runtimes/external-store/thread-message-converter.d.ts +9 -5
  553. package/dist/runtimes/external-store/thread-message-converter.d.ts.map +1 -1
  554. package/dist/runtimes/external-store/thread-message-converter.js +14 -11
  555. package/dist/runtimes/external-store/thread-message-converter.js.map +1 -1
  556. package/dist/runtimes/internal.d.ts +15 -19
  557. package/dist/runtimes/internal.js +13 -17
  558. package/dist/runtimes/local/local-runtime-core.d.ts +11 -7
  559. package/dist/runtimes/local/local-runtime-core.d.ts.map +1 -1
  560. package/dist/runtimes/local/local-runtime-core.js +18 -18
  561. package/dist/runtimes/local/local-runtime-core.js.map +1 -1
  562. package/dist/runtimes/local/local-runtime-options.d.ts +27 -23
  563. package/dist/runtimes/local/local-runtime-options.d.ts.map +1 -1
  564. package/dist/runtimes/local/local-runtime-options.js +0 -2
  565. package/dist/runtimes/local/local-thread-list-runtime-core.d.ts +46 -42
  566. package/dist/runtimes/local/local-thread-list-runtime-core.d.ts.map +1 -1
  567. package/dist/runtimes/local/local-thread-list-runtime-core.js +84 -83
  568. package/dist/runtimes/local/local-thread-list-runtime-core.js.map +1 -1
  569. package/dist/runtimes/local/local-thread-runtime-core.d.ts +80 -59
  570. package/dist/runtimes/local/local-thread-runtime-core.d.ts.map +1 -1
  571. package/dist/runtimes/local/local-thread-runtime-core.js +342 -424
  572. package/dist/runtimes/local/local-thread-runtime-core.js.map +1 -1
  573. package/dist/runtimes/local/should-continue.d.ts +6 -2
  574. package/dist/runtimes/local/should-continue.d.ts.map +1 -1
  575. package/dist/runtimes/local/should-continue.js +7 -12
  576. package/dist/runtimes/local/should-continue.js.map +1 -1
  577. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.d.ts +96 -92
  578. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.d.ts.map +1 -1
  579. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.js +164 -176
  580. package/dist/runtimes/readonly/ReadonlyThreadRuntimeCore.js.map +1 -1
  581. package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts +15 -11
  582. package/dist/runtimes/remote-thread-list/adapter/in-memory.d.ts.map +1 -1
  583. package/dist/runtimes/remote-thread-list/adapter/in-memory.js +33 -28
  584. package/dist/runtimes/remote-thread-list/adapter/in-memory.js.map +1 -1
  585. package/dist/runtimes/remote-thread-list/empty-thread-core.d.ts +6 -2
  586. package/dist/runtimes/remote-thread-list/empty-thread-core.d.ts.map +1 -1
  587. package/dist/runtimes/remote-thread-list/empty-thread-core.js +152 -160
  588. package/dist/runtimes/remote-thread-list/empty-thread-core.js.map +1 -1
  589. package/dist/runtimes/remote-thread-list/optimistic-state.d.ts +27 -27
  590. package/dist/runtimes/remote-thread-list/optimistic-state.d.ts.map +1 -1
  591. package/dist/runtimes/remote-thread-list/optimistic-state.js +63 -73
  592. package/dist/runtimes/remote-thread-list/optimistic-state.js.map +1 -1
  593. package/dist/runtimes/remote-thread-list/remote-thread-state.d.ts +46 -43
  594. package/dist/runtimes/remote-thread-list/remote-thread-state.d.ts.map +1 -1
  595. package/dist/runtimes/remote-thread-list/remote-thread-state.js +81 -91
  596. package/dist/runtimes/remote-thread-list/remote-thread-state.js.map +1 -1
  597. package/dist/runtimes/remote-thread-list/types.d.ts +65 -61
  598. package/dist/runtimes/remote-thread-list/types.d.ts.map +1 -1
  599. package/dist/runtimes/remote-thread-list/types.js +0 -2
  600. package/dist/store/clients/chain-of-thought-client.d.ts +16 -12
  601. package/dist/store/clients/chain-of-thought-client.d.ts.map +1 -1
  602. package/dist/store/clients/chain-of-thought-client.js +24 -15
  603. package/dist/store/clients/chain-of-thought-client.js.map +1 -1
  604. package/dist/store/clients/model-context-client.d.ts +6 -2
  605. package/dist/store/clients/model-context-client.d.ts.map +1 -1
  606. package/dist/store/clients/model-context-client.js +32 -26
  607. package/dist/store/clients/model-context-client.js.map +1 -1
  608. package/dist/store/clients/no-op-composer-client.d.ts +8 -4
  609. package/dist/store/clients/no-op-composer-client.d.ts.map +1 -1
  610. package/dist/store/clients/no-op-composer-client.js +67 -63
  611. package/dist/store/clients/no-op-composer-client.js.map +1 -1
  612. package/dist/store/clients/runtime-adapter.d.ts +8 -4
  613. package/dist/store/clients/runtime-adapter.d.ts.map +1 -1
  614. package/dist/store/clients/runtime-adapter.js +33 -33
  615. package/dist/store/clients/runtime-adapter.js.map +1 -1
  616. package/dist/store/clients/suggestions.d.ts +12 -8
  617. package/dist/store/clients/suggestions.d.ts.map +1 -1
  618. package/dist/store/clients/suggestions.js +28 -32
  619. package/dist/store/clients/suggestions.js.map +1 -1
  620. package/dist/store/clients/thread-message-client.d.ts +13 -9
  621. package/dist/store/clients/thread-message-client.d.ts.map +1 -1
  622. package/dist/store/clients/thread-message-client.js +95 -105
  623. package/dist/store/clients/thread-message-client.js.map +1 -1
  624. package/dist/store/index.d.ts +18 -18
  625. package/dist/store/index.js +6 -8
  626. package/dist/store/internal.d.ts +9 -9
  627. package/dist/store/internal.js +9 -9
  628. package/dist/store/runtime-clients/attachment-runtime-client.d.ts +9 -5
  629. package/dist/store/runtime-clients/attachment-runtime-client.d.ts.map +1 -1
  630. package/dist/store/runtime-clients/attachment-runtime-client.js +12 -8
  631. package/dist/store/runtime-clients/attachment-runtime-client.js.map +1 -1
  632. package/dist/store/runtime-clients/composer-runtime-client.d.ts +14 -10
  633. package/dist/store/runtime-clients/composer-runtime-client.d.ts.map +1 -1
  634. package/dist/store/runtime-clients/composer-runtime-client.js +86 -89
  635. package/dist/store/runtime-clients/composer-runtime-client.js.map +1 -1
  636. package/dist/store/runtime-clients/message-part-runtime-client.d.ts +9 -5
  637. package/dist/store/runtime-clients/message-part-runtime-client.d.ts.map +1 -1
  638. package/dist/store/runtime-clients/message-part-runtime-client.js +13 -9
  639. package/dist/store/runtime-clients/message-part-runtime-client.js.map +1 -1
  640. package/dist/store/runtime-clients/message-runtime-client.d.ts +12 -8
  641. package/dist/store/runtime-clients/message-runtime-client.d.ts.map +1 -1
  642. package/dist/store/runtime-clients/message-runtime-client.js +66 -70
  643. package/dist/store/runtime-clients/message-runtime-client.js.map +1 -1
  644. package/dist/store/runtime-clients/tap-subscribable.d.ts +6 -2
  645. package/dist/store/runtime-clients/tap-subscribable.d.ts.map +1 -1
  646. package/dist/store/runtime-clients/tap-subscribable.js +14 -10
  647. package/dist/store/runtime-clients/tap-subscribable.js.map +1 -1
  648. package/dist/store/runtime-clients/thread-list-item-runtime-client.d.ts +9 -5
  649. package/dist/store/runtime-clients/thread-list-item-runtime-client.d.ts.map +1 -1
  650. package/dist/store/runtime-clients/thread-list-item-runtime-client.js +33 -38
  651. package/dist/store/runtime-clients/thread-list-item-runtime-client.js.map +1 -1
  652. package/dist/store/runtime-clients/thread-list-runtime-client.d.ts +12 -8
  653. package/dist/store/runtime-clients/thread-list-runtime-client.d.ts.map +1 -1
  654. package/dist/store/runtime-clients/thread-list-runtime-client.js +53 -53
  655. package/dist/store/runtime-clients/thread-list-runtime-client.js.map +1 -1
  656. package/dist/store/runtime-clients/thread-runtime-client.d.ts +9 -5
  657. package/dist/store/runtime-clients/thread-runtime-client.d.ts.map +1 -1
  658. package/dist/store/runtime-clients/thread-runtime-client.js +93 -85
  659. package/dist/store/runtime-clients/thread-runtime-client.js.map +1 -1
  660. package/dist/store/scope-registration.d.ts +29 -27
  661. package/dist/store/scope-registration.d.ts.map +1 -1
  662. package/dist/store/scope-registration.js +0 -2
  663. package/dist/store/scopes/attachment.d.ts +23 -19
  664. package/dist/store/scopes/attachment.d.ts.map +1 -1
  665. package/dist/store/scopes/attachment.js +0 -2
  666. package/dist/store/scopes/chain-of-thought.d.ts +36 -33
  667. package/dist/store/scopes/chain-of-thought.d.ts.map +1 -1
  668. package/dist/store/scopes/chain-of-thought.js +0 -2
  669. package/dist/store/scopes/composer.d.ts +118 -115
  670. package/dist/store/scopes/composer.d.ts.map +1 -1
  671. package/dist/store/scopes/composer.js +0 -2
  672. package/dist/store/scopes/message.d.ts +81 -81
  673. package/dist/store/scopes/message.d.ts.map +1 -1
  674. package/dist/store/scopes/message.js +0 -2
  675. package/dist/store/scopes/model-context.d.ts +14 -10
  676. package/dist/store/scopes/model-context.d.ts.map +1 -1
  677. package/dist/store/scopes/model-context.js +0 -2
  678. package/dist/store/scopes/part.d.ts +42 -39
  679. package/dist/store/scopes/part.d.ts.map +1 -1
  680. package/dist/store/scopes/part.js +0 -2
  681. package/dist/store/scopes/queue-item.d.ts +18 -15
  682. package/dist/store/scopes/queue-item.d.ts.map +1 -1
  683. package/dist/store/scopes/queue-item.js +0 -2
  684. package/dist/store/scopes/suggestion.d.ts +17 -14
  685. package/dist/store/scopes/suggestion.d.ts.map +1 -1
  686. package/dist/store/scopes/suggestion.js +0 -2
  687. package/dist/store/scopes/suggestions.d.ts +18 -14
  688. package/dist/store/scopes/suggestions.d.ts.map +1 -1
  689. package/dist/store/scopes/suggestions.js +0 -2
  690. package/dist/store/scopes/thread-list-item.d.ts +62 -56
  691. package/dist/store/scopes/thread-list-item.d.ts.map +1 -1
  692. package/dist/store/scopes/thread-list-item.js +0 -2
  693. package/dist/store/scopes/thread.d.ts +151 -149
  694. package/dist/store/scopes/thread.d.ts.map +1 -1
  695. package/dist/store/scopes/thread.js +0 -2
  696. package/dist/store/scopes/threads.d.ts +36 -30
  697. package/dist/store/scopes/threads.d.ts.map +1 -1
  698. package/dist/store/scopes/threads.js +0 -2
  699. package/dist/subscribable/subscribable.d.ts +62 -58
  700. package/dist/subscribable/subscribable.d.ts.map +1 -1
  701. package/dist/subscribable/subscribable.js +196 -220
  702. package/dist/subscribable/subscribable.js.map +1 -1
  703. package/dist/tests/remote-thread-list-test-helpers.d.ts +13 -9
  704. package/dist/tests/remote-thread-list-test-helpers.d.ts.map +1 -1
  705. package/dist/tests/remote-thread-list-test-helpers.js +49 -42
  706. package/dist/tests/remote-thread-list-test-helpers.js.map +1 -1
  707. package/dist/types/attachment.d.ts +35 -32
  708. package/dist/types/attachment.d.ts.map +1 -1
  709. package/dist/types/attachment.js +0 -2
  710. package/dist/types/directive.d.ts +15 -13
  711. package/dist/types/directive.d.ts.map +1 -1
  712. package/dist/types/directive.js +0 -2
  713. package/dist/types/index.d.ts +7 -7
  714. package/dist/types/index.js +0 -2
  715. package/dist/types/message.d.ts +238 -214
  716. package/dist/types/message.d.ts.map +1 -1
  717. package/dist/types/message.js +6 -2
  718. package/dist/types/message.js.map +1 -1
  719. package/dist/types/quote.d.ts +6 -3
  720. package/dist/types/quote.d.ts.map +1 -1
  721. package/dist/types/quote.js +0 -2
  722. package/dist/types/trigger.d.ts +14 -10
  723. package/dist/types/trigger.d.ts.map +1 -1
  724. package/dist/types/trigger.js +0 -2
  725. package/dist/types/unsubscribe.d.ts +4 -1
  726. package/dist/types/unsubscribe.d.ts.map +1 -1
  727. package/dist/types/unsubscribe.js +0 -2
  728. package/dist/utils/composite-context-provider.d.ts +11 -8
  729. package/dist/utils/composite-context-provider.d.ts.map +1 -1
  730. package/dist/utils/composite-context-provider.js +31 -28
  731. package/dist/utils/composite-context-provider.js.map +1 -1
  732. package/dist/utils/id.d.ts +8 -5
  733. package/dist/utils/id.d.ts.map +1 -1
  734. package/dist/utils/id.js +9 -5
  735. package/dist/utils/id.js.map +1 -1
  736. package/dist/utils/json/is-json-equal.d.ts +4 -1
  737. package/dist/utils/json/is-json-equal.d.ts.map +1 -1
  738. package/dist/utils/json/is-json-equal.js +20 -25
  739. package/dist/utils/json/is-json-equal.js.map +1 -1
  740. package/dist/utils/json/is-json.d.ts +9 -5
  741. package/dist/utils/json/is-json.d.ts.map +1 -1
  742. package/dist/utils/json/is-json.js +17 -28
  743. package/dist/utils/json/is-json.js.map +1 -1
  744. package/dist/utils/text.d.ts +6 -2
  745. package/dist/utils/text.d.ts.map +1 -1
  746. package/dist/utils/text.js +6 -3
  747. package/dist/utils/text.js.map +1 -1
  748. package/package.json +12 -12
  749. package/src/index.ts +3 -0
  750. package/src/react/index.ts +17 -0
  751. package/src/react/primitives/generativeUI/GenerativeUI.tsx +182 -0
  752. package/src/react/primitives/message/MessageGroupedParts.tsx +2 -1
  753. package/src/react/primitives/message/MessageParts.tsx +70 -15
  754. package/src/react/runtimes/RemoteThreadListHookInstanceManager.tsx +11 -7
  755. package/src/react/runtimes/RemoteThreadListThreadListRuntimeCore.tsx +7 -2
  756. package/src/react/runtimes/cloud/auiV0.ts +1 -1
  757. package/src/react/types/MessagePartComponentTypes.ts +26 -0
  758. package/src/runtime/api/thread-list-item-runtime.ts +3 -3
  759. package/src/runtime/api/thread-list-runtime.ts +9 -3
  760. package/src/runtime/base/base-thread-runtime-core.ts +8 -0
  761. package/src/runtime/interfaces/thread-list-runtime-core.ts +4 -1
  762. package/src/runtime/interfaces/thread-runtime-core.ts +6 -5
  763. package/src/runtime/utils/thread-message-like.ts +11 -3
  764. package/src/runtimes/external-store/external-store-thread-list-runtime-core.ts +4 -1
  765. package/src/store/runtime-clients/thread-list-runtime-client.ts +2 -2
  766. package/src/store/scopes/thread-list-item.ts +1 -1
  767. package/src/store/scopes/threads.ts +1 -1
  768. package/src/tests/RemoteThreadListThreadListRuntimeCore-switchToThread-unarchive.test.ts +88 -0
  769. package/src/tests/external-store-thread-runtime-core.test.ts +83 -0
  770. package/src/types/index.ts +3 -0
  771. package/src/types/message.ts +49 -1
  772. package/dist/adapters/feedback.js.map +0 -1
  773. package/dist/adapters/index.d.ts.map +0 -1
  774. package/dist/adapters/index.js.map +0 -1
  775. package/dist/adapters/suggestion.js.map +0 -1
  776. package/dist/adapters/thread-history.js.map +0 -1
  777. package/dist/adapters/trigger.js.map +0 -1
  778. package/dist/index.d.ts.map +0 -1
  779. package/dist/index.js.map +0 -1
  780. package/dist/internal.d.ts.map +0 -1
  781. package/dist/internal.js.map +0 -1
  782. package/dist/model-context/registry-handles.js.map +0 -1
  783. package/dist/react/index.d.ts.map +0 -1
  784. package/dist/react/index.js.map +0 -1
  785. package/dist/react/model-context/toolbox.js.map +0 -1
  786. package/dist/react/types/MessagePartComponentTypes.js.map +0 -1
  787. package/dist/react/types/scopes/dataRenderers.js.map +0 -1
  788. package/dist/react/types/scopes/interactables.js.map +0 -1
  789. package/dist/react/types/scopes/tools.js.map +0 -1
  790. package/dist/react/types/store-augmentation.js.map +0 -1
  791. package/dist/runtime/api/bindings.js.map +0 -1
  792. package/dist/runtime/api/paths.js.map +0 -1
  793. package/dist/runtime/interfaces/assistant-runtime-core.js.map +0 -1
  794. package/dist/runtime/interfaces/composer-runtime-core.js.map +0 -1
  795. package/dist/runtime/interfaces/thread-list-runtime-core.js.map +0 -1
  796. package/dist/runtime/interfaces/thread-runtime-core.js.map +0 -1
  797. package/dist/runtime/internal.d.ts.map +0 -1
  798. package/dist/runtime/internal.js.map +0 -1
  799. package/dist/runtime/utils/chat-model-adapter.js.map +0 -1
  800. package/dist/runtimes/external-store/external-store-adapter.js.map +0 -1
  801. package/dist/runtimes/internal.d.ts.map +0 -1
  802. package/dist/runtimes/internal.js.map +0 -1
  803. package/dist/runtimes/local/local-runtime-options.js.map +0 -1
  804. package/dist/runtimes/remote-thread-list/types.js.map +0 -1
  805. package/dist/store/index.d.ts.map +0 -1
  806. package/dist/store/index.js.map +0 -1
  807. package/dist/store/internal.d.ts.map +0 -1
  808. package/dist/store/internal.js.map +0 -1
  809. package/dist/store/scope-registration.js.map +0 -1
  810. package/dist/store/scopes/attachment.js.map +0 -1
  811. package/dist/store/scopes/chain-of-thought.js.map +0 -1
  812. package/dist/store/scopes/composer.js.map +0 -1
  813. package/dist/store/scopes/message.js.map +0 -1
  814. package/dist/store/scopes/model-context.js.map +0 -1
  815. package/dist/store/scopes/part.js.map +0 -1
  816. package/dist/store/scopes/queue-item.js.map +0 -1
  817. package/dist/store/scopes/suggestion.js.map +0 -1
  818. package/dist/store/scopes/suggestions.js.map +0 -1
  819. package/dist/store/scopes/thread-list-item.js.map +0 -1
  820. package/dist/store/scopes/thread.js.map +0 -1
  821. package/dist/store/scopes/threads.js.map +0 -1
  822. package/dist/types/attachment.js.map +0 -1
  823. package/dist/types/directive.js.map +0 -1
  824. package/dist/types/index.d.ts.map +0 -1
  825. package/dist/types/index.js.map +0 -1
  826. package/dist/types/quote.js.map +0 -1
  827. package/dist/types/trigger.js.map +0 -1
  828. package/dist/types/unsubscribe.js.map +0 -1
@@ -1,46 +1,50 @@
1
- import type { Attachment, PendingAttachment, CompleteAttachment } from "../types/attachment.js";
2
- import type { ThreadUserMessagePart } from "../types/message.js";
3
- export type AttachmentAdapter = {
4
- accept: string;
5
- add(state: {
6
- file: File;
7
- }): Promise<PendingAttachment> | AsyncGenerator<PendingAttachment, void>;
8
- remove(attachment: Attachment): Promise<void>;
9
- send(attachment: PendingAttachment): Promise<CompleteAttachment>;
1
+ import { ThreadUserMessagePart } from "../types/message.js";
2
+ import { Attachment, CompleteAttachment, PendingAttachment } from "../types/attachment.js";
3
+
4
+ //#region src/adapters/attachment.d.ts
5
+ type AttachmentAdapter = {
6
+ accept: string;
7
+ add(state: {
8
+ file: File;
9
+ }): Promise<PendingAttachment> | AsyncGenerator<PendingAttachment, void>;
10
+ remove(attachment: Attachment): Promise<void>;
11
+ send(attachment: PendingAttachment): Promise<CompleteAttachment>;
10
12
  };
11
- export declare class SimpleImageAttachmentAdapter implements AttachmentAdapter {
12
- accept: string;
13
- add(state: {
14
- file: File;
15
- }): Promise<PendingAttachment>;
16
- send(attachment: PendingAttachment): Promise<CompleteAttachment>;
17
- remove(): Promise<void>;
13
+ declare class SimpleImageAttachmentAdapter implements AttachmentAdapter {
14
+ accept: string;
15
+ add(state: {
16
+ file: File;
17
+ }): Promise<PendingAttachment>;
18
+ send(attachment: PendingAttachment): Promise<CompleteAttachment>;
19
+ remove(): Promise<void>;
18
20
  }
19
- export declare class SimpleTextAttachmentAdapter implements AttachmentAdapter {
20
- accept: string;
21
- add(state: {
22
- file: File;
23
- }): Promise<PendingAttachment>;
24
- send(attachment: PendingAttachment): Promise<CompleteAttachment>;
25
- remove(): Promise<void>;
21
+ declare class SimpleTextAttachmentAdapter implements AttachmentAdapter {
22
+ accept: string;
23
+ add(state: {
24
+ file: File;
25
+ }): Promise<PendingAttachment>;
26
+ send(attachment: PendingAttachment): Promise<CompleteAttachment>;
27
+ remove(): Promise<void>;
26
28
  }
27
- export declare function fileMatchesAccept(file: {
28
- name: string;
29
- type: string;
29
+ declare function fileMatchesAccept(file: {
30
+ name: string;
31
+ type: string;
30
32
  }, acceptString: string): boolean;
31
- export declare function attachmentsEqual(a: readonly CompleteAttachment[], b: readonly CompleteAttachment[]): boolean;
32
- export declare function partToCompleteAttachment(part: Exclude<ThreadUserMessagePart, {
33
- type: "text";
33
+ declare function attachmentsEqual(a: readonly CompleteAttachment[], b: readonly CompleteAttachment[]): boolean;
34
+ declare function partToCompleteAttachment(part: Exclude<ThreadUserMessagePart, {
35
+ type: "text";
34
36
  }>): CompleteAttachment;
35
- export declare function liftNonTextParts(content: readonly ThreadUserMessagePart[]): CompleteAttachment[];
36
- export declare class CompositeAttachmentAdapter implements AttachmentAdapter {
37
- private _adapters;
38
- accept: string;
39
- constructor(adapters: AttachmentAdapter[]);
40
- add(state: {
41
- file: File;
42
- }): Promise<PendingAttachment> | AsyncGenerator<PendingAttachment, void, any>;
43
- send(attachment: PendingAttachment): Promise<CompleteAttachment>;
44
- remove(attachment: Attachment): Promise<void>;
37
+ declare function liftNonTextParts(content: readonly ThreadUserMessagePart[]): CompleteAttachment[];
38
+ declare class CompositeAttachmentAdapter implements AttachmentAdapter {
39
+ private _adapters;
40
+ accept: string;
41
+ constructor(adapters: AttachmentAdapter[]);
42
+ add(state: {
43
+ file: File;
44
+ }): Promise<PendingAttachment> | AsyncGenerator<PendingAttachment, void, any>;
45
+ send(attachment: PendingAttachment): Promise<CompleteAttachment>;
46
+ remove(attachment: Attachment): Promise<void>;
45
47
  }
48
+ //#endregion
49
+ export { AttachmentAdapter, CompositeAttachmentAdapter, SimpleImageAttachmentAdapter, SimpleTextAttachmentAdapter, attachmentsEqual, fileMatchesAccept, liftNonTextParts, partToCompleteAttachment };
46
50
  //# sourceMappingURL=attachment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachment.d.ts","sourceRoot":"","sources":["../../src/adapters/attachment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,kBAAkB,EACnB,+BAA4B;AAC7B,OAAO,KAAK,EAAE,qBAAqB,EAAE,4BAAyB;AAG9D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,KAAK,EAAE;QACT,IAAI,EAAE,IAAI,CAAC;KACZ,GAAG,OAAO,CAAC,iBAAiB,CAAC,GAAG,cAAc,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IACzE,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;CAClE,CAAC;AAEF,qBAAa,4BAA6B,YAAW,iBAAiB;IAC7D,MAAM,SAAa;IAEb,GAAG,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAWtD,IAAI,CACf,UAAU,EAAE,iBAAiB,GAC5B,OAAO,CAAC,kBAAkB,CAAC;IAajB,MAAM;CAGpB;AAUD,qBAAa,2BAA4B,YAAW,iBAAiB;IAC5D,MAAM,SAC+D;IAE/D,GAAG,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAWtD,IAAI,CACf,UAAU,EAAE,iBAAiB,GAC5B,OAAO,CAAC,kBAAkB,CAAC;IAajB,MAAM;CAGpB;AAUD,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EACpC,YAAY,EAAE,MAAM,WA+BrB;AAED,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,SAAS,kBAAkB,EAAE,EAChC,CAAC,EAAE,SAAS,kBAAkB,EAAE,GAC/B,OAAO,CAGT;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,OAAO,CAAC,qBAAqB,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,GACrD,kBAAkB,CA0CpB;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,SAAS,qBAAqB,EAAE,GACxC,kBAAkB,EAAE,CAQtB;AAED,qBAAa,0BAA2B,YAAW,iBAAiB;IAClE,OAAO,CAAC,SAAS,CAAsB;IAEhC,MAAM,EAAE,MAAM,CAAC;gBAEV,QAAQ,EAAE,iBAAiB,EAAE;IAgBlC,GAAG,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE;IASnB,IAAI,CAAC,UAAU,EAAE,iBAAiB;IAUlC,MAAM,CAAC,UAAU,EAAE,UAAU;CAiB3C"}
1
+ {"version":3,"file":"attachment.d.ts","names":[],"sources":["../../src/adapters/attachment.ts"],"mappings":";;;;KAQY,iBAAA;EACV,MAAA;EACA,GAAA,CAAI,KAAA;IACF,IAAA,EAAM,IAAA;EAAA,IACJ,OAAA,CAAQ,iBAAA,IAAqB,cAAA,CAAe,iBAAA;EAChD,MAAA,CAAO,UAAA,EAAY,UAAA,GAAa,OAAA;EAChC,IAAA,CAAK,UAAA,EAAY,iBAAA,GAAoB,OAAA,CAAQ,kBAAA;AAAA;AAAA,cAGlC,4BAAA,YAAwC,iBAAA;EAC5C,MAAA;EAEM,GAAA,CAAI,KAAA;IAAS,IAAA,EAAM,IAAA;EAAA,IAAS,OAAA,CAAQ,iBAAA;EAWpC,IAAA,CACX,UAAA,EAAY,iBAAA,GACX,OAAA,CAAQ,kBAAA;EAaE,MAAA,CAAA,GAAM,OAAA;AAAA;AAAA,cAaR,2BAAA,YAAuC,iBAAA;EAC3C,MAAA;EAGM,GAAA,CAAI,KAAA;IAAS,IAAA,EAAM,IAAA;EAAA,IAAS,OAAA,CAAQ,iBAAA;EAWpC,IAAA,CACX,UAAA,EAAY,iBAAA,GACX,OAAA,CAAQ,kBAAA;EAaE,MAAA,CAAA,GAAM,OAAA;AAAA;AAAA,iBAaL,iBAAA,CACd,IAAA;EAAQ,IAAA;EAAc,IAAA;AAAA,GACtB,YAAA;AAAA,iBAiCc,gBAAA,CACd,CAAA,WAAY,kBAAA,IACZ,CAAA,WAAY,kBAAkB;AAAA,iBAMhB,wBAAA,CACd,IAAA,EAAM,OAAA,CAAQ,qBAAA;EAAyB,IAAA;AAAA,KACtC,kBAAA;AAAA,iBA4Ca,gBAAA,CACd,OAAA,WAAkB,qBAAA,KACjB,kBAAkB;AAAA,cAUR,0BAAA,YAAsC,iBAAA;EAAA,QACzC,SAAA;EAED,MAAA;cAEK,QAAA,EAAU,iBAAA;EAgBf,GAAA,CAAI,KAAA;IAAS,IAAA,EAAM,IAAA;EAAA,IAAM,OAAA,CAAA,iBAAA,IAAA,cAAA,CAAA,iBAAA;EASnB,IAAA,CAAK,UAAA,EAAY,iBAAA,GAAiB,OAAA,CAAA,kBAAA;EAUlC,MAAA,CAAO,UAAA,EAAY,UAAA,GAAU,OAAA;AAAA"}
@@ -1,193 +1,158 @@
1
1
  import { generateId } from "../utils/id.js";
2
- export class SimpleImageAttachmentAdapter {
3
- accept = "image/*";
4
- async add(state) {
5
- return {
6
- id: state.file.name,
7
- type: "image",
8
- name: state.file.name,
9
- contentType: state.file.type,
10
- file: state.file,
11
- status: { type: "requires-action", reason: "composer-send" },
12
- };
13
- }
14
- async send(attachment) {
15
- return {
16
- ...attachment,
17
- status: { type: "complete" },
18
- content: [
19
- {
20
- type: "image",
21
- image: await getFileDataURL(attachment.file),
22
- },
23
- ],
24
- };
25
- }
26
- async remove() {
27
- // noop
28
- }
29
- }
2
+ //#region src/adapters/attachment.ts
3
+ var SimpleImageAttachmentAdapter = class {
4
+ accept = "image/*";
5
+ async add(state) {
6
+ return {
7
+ id: state.file.name,
8
+ type: "image",
9
+ name: state.file.name,
10
+ contentType: state.file.type,
11
+ file: state.file,
12
+ status: {
13
+ type: "requires-action",
14
+ reason: "composer-send"
15
+ }
16
+ };
17
+ }
18
+ async send(attachment) {
19
+ return {
20
+ ...attachment,
21
+ status: { type: "complete" },
22
+ content: [{
23
+ type: "image",
24
+ image: await getFileDataURL(attachment.file)
25
+ }]
26
+ };
27
+ }
28
+ async remove() {}
29
+ };
30
30
  const getFileDataURL = (file) => new Promise((resolve, reject) => {
31
- const reader = new FileReader();
32
- reader.onload = () => resolve(reader.result);
33
- reader.onerror = (error) => reject(error);
34
- reader.readAsDataURL(file);
31
+ const reader = new FileReader();
32
+ reader.onload = () => resolve(reader.result);
33
+ reader.onerror = (error) => reject(error);
34
+ reader.readAsDataURL(file);
35
35
  });
36
- export class SimpleTextAttachmentAdapter {
37
- accept = "text/plain,text/html,text/markdown,text/csv,text/xml,text/json,text/css";
38
- async add(state) {
39
- return {
40
- id: state.file.name,
41
- type: "document",
42
- name: state.file.name,
43
- contentType: state.file.type,
44
- file: state.file,
45
- status: { type: "requires-action", reason: "composer-send" },
46
- };
47
- }
48
- async send(attachment) {
49
- return {
50
- ...attachment,
51
- status: { type: "complete" },
52
- content: [
53
- {
54
- type: "text",
55
- text: `<attachment name=${attachment.name}>\n${await getFileText(attachment.file)}\n</attachment>`,
56
- },
57
- ],
58
- };
59
- }
60
- async remove() {
61
- // noop
62
- }
63
- }
36
+ var SimpleTextAttachmentAdapter = class {
37
+ accept = "text/plain,text/html,text/markdown,text/csv,text/xml,text/json,text/css";
38
+ async add(state) {
39
+ return {
40
+ id: state.file.name,
41
+ type: "document",
42
+ name: state.file.name,
43
+ contentType: state.file.type,
44
+ file: state.file,
45
+ status: {
46
+ type: "requires-action",
47
+ reason: "composer-send"
48
+ }
49
+ };
50
+ }
51
+ async send(attachment) {
52
+ return {
53
+ ...attachment,
54
+ status: { type: "complete" },
55
+ content: [{
56
+ type: "text",
57
+ text: `<attachment name=${attachment.name}>\n${await getFileText(attachment.file)}\n</attachment>`
58
+ }]
59
+ };
60
+ }
61
+ async remove() {}
62
+ };
64
63
  const getFileText = (file) => new Promise((resolve, reject) => {
65
- const reader = new FileReader();
66
- reader.onload = () => resolve(reader.result);
67
- reader.onerror = (error) => reject(error);
68
- reader.readAsText(file);
64
+ const reader = new FileReader();
65
+ reader.onload = () => resolve(reader.result);
66
+ reader.onerror = (error) => reject(error);
67
+ reader.readAsText(file);
69
68
  });
70
- export function fileMatchesAccept(file, acceptString) {
71
- if (acceptString === "*") {
72
- return true;
73
- }
74
- const allowedTypes = acceptString
75
- .split(",")
76
- .map((type) => type.trim().toLowerCase());
77
- const fileExtension = `.${file.name.split(".").pop().toLowerCase()}`;
78
- const fileMimeType = file.type.toLowerCase();
79
- for (const type of allowedTypes) {
80
- if (type.startsWith(".") && type === fileExtension) {
81
- return true;
82
- }
83
- if (type.includes("/") && type === fileMimeType) {
84
- return true;
85
- }
86
- if (type.endsWith("/*")) {
87
- const generalType = type.split("/")[0];
88
- if (fileMimeType.startsWith(`${generalType}/`)) {
89
- return true;
90
- }
91
- }
92
- }
93
- return false;
94
- }
95
- export function attachmentsEqual(a, b) {
96
- if (a.length !== b.length)
97
- return false;
98
- return a.every((att, i) => att.id === b[i].id);
69
+ function fileMatchesAccept(file, acceptString) {
70
+ if (acceptString === "*") return true;
71
+ const allowedTypes = acceptString.split(",").map((type) => type.trim().toLowerCase());
72
+ const fileExtension = `.${file.name.split(".").pop().toLowerCase()}`;
73
+ const fileMimeType = file.type.toLowerCase();
74
+ for (const type of allowedTypes) {
75
+ if (type.startsWith(".") && type === fileExtension) return true;
76
+ if (type.includes("/") && type === fileMimeType) return true;
77
+ if (type.endsWith("/*")) {
78
+ const generalType = type.split("/")[0];
79
+ if (fileMimeType.startsWith(`${generalType}/`)) return true;
80
+ }
81
+ }
82
+ return false;
99
83
  }
100
- export function partToCompleteAttachment(part) {
101
- const id = generateId();
102
- if (part.type === "image") {
103
- return {
104
- id,
105
- type: "image",
106
- name: part.filename ?? "image",
107
- content: [part],
108
- status: { type: "complete" },
109
- };
110
- }
111
- if (part.type === "file") {
112
- return {
113
- id,
114
- type: "document",
115
- name: part.filename ?? "document",
116
- contentType: part.mimeType,
117
- content: [part],
118
- status: { type: "complete" },
119
- };
120
- }
121
- if (part.type === "audio") {
122
- return {
123
- id,
124
- type: "audio",
125
- name: `audio.${part.audio.format}`,
126
- contentType: `audio/${part.audio.format}`,
127
- content: [part],
128
- status: { type: "complete" },
129
- };
130
- }
131
- return {
132
- id,
133
- type: "data",
134
- name: part.name,
135
- content: [part],
136
- status: { type: "complete" },
137
- };
84
+ function attachmentsEqual(a, b) {
85
+ if (a.length !== b.length) return false;
86
+ return a.every((att, i) => att.id === b[i].id);
138
87
  }
139
- export function liftNonTextParts(content) {
140
- const result = [];
141
- for (const part of content) {
142
- if (part.type !== "text") {
143
- result.push(partToCompleteAttachment(part));
144
- }
145
- }
146
- return result;
88
+ function partToCompleteAttachment(part) {
89
+ const id = generateId();
90
+ if (part.type === "image") return {
91
+ id,
92
+ type: "image",
93
+ name: part.filename ?? "image",
94
+ content: [part],
95
+ status: { type: "complete" }
96
+ };
97
+ if (part.type === "file") return {
98
+ id,
99
+ type: "document",
100
+ name: part.filename ?? "document",
101
+ contentType: part.mimeType,
102
+ content: [part],
103
+ status: { type: "complete" }
104
+ };
105
+ if (part.type === "audio") return {
106
+ id,
107
+ type: "audio",
108
+ name: `audio.${part.audio.format}`,
109
+ contentType: `audio/${part.audio.format}`,
110
+ content: [part],
111
+ status: { type: "complete" }
112
+ };
113
+ return {
114
+ id,
115
+ type: "data",
116
+ name: part.name,
117
+ content: [part],
118
+ status: { type: "complete" }
119
+ };
147
120
  }
148
- export class CompositeAttachmentAdapter {
149
- _adapters;
150
- accept;
151
- constructor(adapters) {
152
- this._adapters = adapters;
153
- const wildcardIdx = adapters.findIndex((a) => a.accept === "*");
154
- if (wildcardIdx !== -1) {
155
- if (wildcardIdx !== adapters.length - 1)
156
- throw new Error("A wildcard adapter (handling all files) can only be specified as the last adapter.");
157
- this.accept = "*";
158
- }
159
- else {
160
- this.accept = adapters.map((a) => a.accept).join(",");
161
- }
162
- }
163
- add(state) {
164
- for (const adapter of this._adapters) {
165
- if (fileMatchesAccept(state.file, adapter.accept)) {
166
- return adapter.add(state);
167
- }
168
- }
169
- throw new Error("No matching adapter found for file");
170
- }
171
- async send(attachment) {
172
- const adapters = this._adapters.slice();
173
- for (const adapter of adapters) {
174
- if (fileMatchesAccept(attachment.file, adapter.accept)) {
175
- return adapter.send(attachment);
176
- }
177
- }
178
- throw new Error("No matching adapter found for attachment");
179
- }
180
- async remove(attachment) {
181
- const adapters = this._adapters.slice();
182
- for (const adapter of adapters) {
183
- if (fileMatchesAccept({
184
- name: attachment.name,
185
- type: attachment.contentType ?? "",
186
- }, adapter.accept)) {
187
- return adapter.remove(attachment);
188
- }
189
- }
190
- throw new Error("No matching adapter found for attachment");
191
- }
121
+ function liftNonTextParts(content) {
122
+ const result = [];
123
+ for (const part of content) if (part.type !== "text") result.push(partToCompleteAttachment(part));
124
+ return result;
192
125
  }
126
+ var CompositeAttachmentAdapter = class {
127
+ _adapters;
128
+ accept;
129
+ constructor(adapters) {
130
+ this._adapters = adapters;
131
+ const wildcardIdx = adapters.findIndex((a) => a.accept === "*");
132
+ if (wildcardIdx !== -1) {
133
+ if (wildcardIdx !== adapters.length - 1) throw new Error("A wildcard adapter (handling all files) can only be specified as the last adapter.");
134
+ this.accept = "*";
135
+ } else this.accept = adapters.map((a) => a.accept).join(",");
136
+ }
137
+ add(state) {
138
+ for (const adapter of this._adapters) if (fileMatchesAccept(state.file, adapter.accept)) return adapter.add(state);
139
+ throw new Error("No matching adapter found for file");
140
+ }
141
+ async send(attachment) {
142
+ const adapters = this._adapters.slice();
143
+ for (const adapter of adapters) if (fileMatchesAccept(attachment.file, adapter.accept)) return adapter.send(attachment);
144
+ throw new Error("No matching adapter found for attachment");
145
+ }
146
+ async remove(attachment) {
147
+ const adapters = this._adapters.slice();
148
+ for (const adapter of adapters) if (fileMatchesAccept({
149
+ name: attachment.name,
150
+ type: attachment.contentType ?? ""
151
+ }, adapter.accept)) return adapter.remove(attachment);
152
+ throw new Error("No matching adapter found for attachment");
153
+ }
154
+ };
155
+ //#endregion
156
+ export { CompositeAttachmentAdapter, SimpleImageAttachmentAdapter, SimpleTextAttachmentAdapter, attachmentsEqual, fileMatchesAccept, liftNonTextParts, partToCompleteAttachment };
157
+
193
158
  //# sourceMappingURL=attachment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachment.js","sourceRoot":"","sources":["../../src/adapters/attachment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attachment.js","names":[],"sources":["../../src/adapters/attachment.ts"],"sourcesContent":["import type {\n Attachment,\n PendingAttachment,\n CompleteAttachment,\n} from \"../types/attachment\";\nimport type { ThreadUserMessagePart } from \"../types/message\";\nimport { generateId } from \"../utils/id\";\n\nexport type AttachmentAdapter = {\n accept: string;\n add(state: {\n file: File;\n }): Promise<PendingAttachment> | AsyncGenerator<PendingAttachment, void>;\n remove(attachment: Attachment): Promise<void>;\n send(attachment: PendingAttachment): Promise<CompleteAttachment>;\n};\n\nexport class SimpleImageAttachmentAdapter implements AttachmentAdapter {\n public accept = \"image/*\";\n\n public async add(state: { file: File }): Promise<PendingAttachment> {\n return {\n id: state.file.name,\n type: \"image\",\n name: state.file.name,\n contentType: state.file.type,\n file: state.file,\n status: { type: \"requires-action\", reason: \"composer-send\" },\n };\n }\n\n public async send(\n attachment: PendingAttachment,\n ): Promise<CompleteAttachment> {\n return {\n ...attachment,\n status: { type: \"complete\" },\n content: [\n {\n type: \"image\",\n image: await getFileDataURL(attachment.file),\n },\n ],\n };\n }\n\n public async remove() {\n // noop\n }\n}\n\nconst getFileDataURL = (file: File) =>\n new Promise<string>((resolve, reject) => {\n const reader = new FileReader();\n reader.onload = () => resolve(reader.result as string);\n reader.onerror = (error) => reject(error);\n reader.readAsDataURL(file);\n });\n\nexport class SimpleTextAttachmentAdapter implements AttachmentAdapter {\n public accept =\n \"text/plain,text/html,text/markdown,text/csv,text/xml,text/json,text/css\";\n\n public async add(state: { file: File }): Promise<PendingAttachment> {\n return {\n id: state.file.name,\n type: \"document\",\n name: state.file.name,\n contentType: state.file.type,\n file: state.file,\n status: { type: \"requires-action\", reason: \"composer-send\" },\n };\n }\n\n public async send(\n attachment: PendingAttachment,\n ): Promise<CompleteAttachment> {\n return {\n ...attachment,\n status: { type: \"complete\" },\n content: [\n {\n type: \"text\",\n text: `<attachment name=${attachment.name}>\\n${await getFileText(attachment.file)}\\n</attachment>`,\n },\n ],\n };\n }\n\n public async remove() {\n // noop\n }\n}\n\nconst getFileText = (file: File) =>\n new Promise<string>((resolve, reject) => {\n const reader = new FileReader();\n reader.onload = () => resolve(reader.result as string);\n reader.onerror = (error) => reject(error);\n reader.readAsText(file);\n });\n\nexport function fileMatchesAccept(\n file: { name: string; type: string },\n acceptString: string,\n) {\n if (acceptString === \"*\") {\n return true;\n }\n\n const allowedTypes = acceptString\n .split(\",\")\n .map((type) => type.trim().toLowerCase());\n\n const fileExtension = `.${file.name.split(\".\").pop()!.toLowerCase()}`;\n const fileMimeType = file.type.toLowerCase();\n\n for (const type of allowedTypes) {\n if (type.startsWith(\".\") && type === fileExtension) {\n return true;\n }\n\n if (type.includes(\"/\") && type === fileMimeType) {\n return true;\n }\n\n if (type.endsWith(\"/*\")) {\n const generalType = type.split(\"/\")[0]!;\n if (fileMimeType.startsWith(`${generalType}/`)) {\n return true;\n }\n }\n }\n\n return false;\n}\n\nexport function attachmentsEqual(\n a: readonly CompleteAttachment[],\n b: readonly CompleteAttachment[],\n): boolean {\n if (a.length !== b.length) return false;\n return a.every((att, i) => att.id === b[i]!.id);\n}\n\nexport function partToCompleteAttachment(\n part: Exclude<ThreadUserMessagePart, { type: \"text\" }>,\n): CompleteAttachment {\n const id = generateId();\n\n if (part.type === \"image\") {\n return {\n id,\n type: \"image\",\n name: part.filename ?? \"image\",\n content: [part],\n status: { type: \"complete\" },\n };\n }\n\n if (part.type === \"file\") {\n return {\n id,\n type: \"document\",\n name: part.filename ?? \"document\",\n contentType: part.mimeType,\n content: [part],\n status: { type: \"complete\" },\n };\n }\n\n if (part.type === \"audio\") {\n return {\n id,\n type: \"audio\",\n name: `audio.${part.audio.format}`,\n contentType: `audio/${part.audio.format}`,\n content: [part],\n status: { type: \"complete\" },\n };\n }\n\n return {\n id,\n type: \"data\",\n name: part.name,\n content: [part],\n status: { type: \"complete\" },\n };\n}\n\nexport function liftNonTextParts(\n content: readonly ThreadUserMessagePart[],\n): CompleteAttachment[] {\n const result: CompleteAttachment[] = [];\n for (const part of content) {\n if (part.type !== \"text\") {\n result.push(partToCompleteAttachment(part));\n }\n }\n return result;\n}\n\nexport class CompositeAttachmentAdapter implements AttachmentAdapter {\n private _adapters: AttachmentAdapter[];\n\n public accept: string;\n\n constructor(adapters: AttachmentAdapter[]) {\n this._adapters = adapters;\n\n const wildcardIdx = adapters.findIndex((a) => a.accept === \"*\");\n if (wildcardIdx !== -1) {\n if (wildcardIdx !== adapters.length - 1)\n throw new Error(\n \"A wildcard adapter (handling all files) can only be specified as the last adapter.\",\n );\n\n this.accept = \"*\";\n } else {\n this.accept = adapters.map((a) => a.accept).join(\",\");\n }\n }\n\n public add(state: { file: File }) {\n for (const adapter of this._adapters) {\n if (fileMatchesAccept(state.file, adapter.accept)) {\n return adapter.add(state);\n }\n }\n throw new Error(\"No matching adapter found for file\");\n }\n\n public async send(attachment: PendingAttachment) {\n const adapters = this._adapters.slice();\n for (const adapter of adapters) {\n if (fileMatchesAccept(attachment.file, adapter.accept)) {\n return adapter.send(attachment);\n }\n }\n throw new Error(\"No matching adapter found for attachment\");\n }\n\n public async remove(attachment: Attachment) {\n const adapters = this._adapters.slice();\n for (const adapter of adapters) {\n if (\n fileMatchesAccept(\n {\n name: attachment.name,\n type: attachment.contentType ?? \"\",\n },\n adapter.accept,\n )\n ) {\n return adapter.remove(attachment);\n }\n }\n throw new Error(\"No matching adapter found for attachment\");\n }\n}\n"],"mappings":"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"}
@@ -1,8 +1,12 @@
1
- import type { Unstable_DirectiveFormatter } from "../types/directive.js";
1
+ import { Unstable_DirectiveFormatter } from "../types/directive.js";
2
+
3
+ //#region src/adapters/directive-formatter.d.ts
2
4
  /**
3
5
  * Default directive formatter using the `:type[label]{name=id}` syntax.
4
6
  *
5
7
  * When `id` equals `label`, the `{name=…}` attribute is omitted for brevity.
6
8
  */
7
- export declare const unstable_defaultDirectiveFormatter: Unstable_DirectiveFormatter;
9
+ declare const unstable_defaultDirectiveFormatter: Unstable_DirectiveFormatter;
10
+ //#endregion
11
+ export { unstable_defaultDirectiveFormatter };
8
12
  //# sourceMappingURL=directive-formatter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"directive-formatter.d.ts","sourceRoot":"","sources":["../../src/adapters/directive-formatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAE5B,8BAA2B;AAM5B;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,EAAE,2BAiChD,CAAC"}
1
+ {"version":3,"file":"directive-formatter.d.ts","names":[],"sources":["../../src/adapters/directive-formatter.ts"],"mappings":";;;;;AAcA;;;cAAa,kCAAA,EAAoC,2BAiChD"}
@@ -1,37 +1,40 @@
1
+ //#region src/adapters/directive-formatter.ts
1
2
  const DIRECTIVE_RE = /:([\w-]{1,64})\[([^\]\n]{1,1024})\](?:\{name=([^}\n]{1,1024})\})?/gu;
2
3
  /**
3
- * Default directive formatter using the `:type[label]{name=id}` syntax.
4
- *
5
- * When `id` equals `label`, the `{name=…}` attribute is omitted for brevity.
6
- */
7
- export const unstable_defaultDirectiveFormatter = {
8
- serialize(item) {
9
- const attrs = item.id !== item.label ? `{name=${item.id}}` : "";
10
- return `:${item.type}[${item.label}]${attrs}`;
11
- },
12
- parse(text) {
13
- const segments = [];
14
- let lastIndex = 0;
15
- for (const match of text.matchAll(DIRECTIVE_RE)) {
16
- if (match.index > lastIndex) {
17
- segments.push({
18
- kind: "text",
19
- text: text.slice(lastIndex, match.index),
20
- });
21
- }
22
- const label = match[2];
23
- segments.push({
24
- kind: "mention",
25
- type: match[1],
26
- label,
27
- id: match[3] ?? label,
28
- });
29
- lastIndex = match.index + match[0].length;
30
- }
31
- if (lastIndex < text.length) {
32
- segments.push({ kind: "text", text: text.slice(lastIndex) });
33
- }
34
- return segments;
35
- },
4
+ * Default directive formatter using the `:type[label]{name=id}` syntax.
5
+ *
6
+ * When `id` equals `label`, the `{name=…}` attribute is omitted for brevity.
7
+ */
8
+ const unstable_defaultDirectiveFormatter = {
9
+ serialize(item) {
10
+ const attrs = item.id !== item.label ? `{name=${item.id}}` : "";
11
+ return `:${item.type}[${item.label}]${attrs}`;
12
+ },
13
+ parse(text) {
14
+ const segments = [];
15
+ let lastIndex = 0;
16
+ for (const match of text.matchAll(DIRECTIVE_RE)) {
17
+ if (match.index > lastIndex) segments.push({
18
+ kind: "text",
19
+ text: text.slice(lastIndex, match.index)
20
+ });
21
+ const label = match[2];
22
+ segments.push({
23
+ kind: "mention",
24
+ type: match[1],
25
+ label,
26
+ id: match[3] ?? label
27
+ });
28
+ lastIndex = match.index + match[0].length;
29
+ }
30
+ if (lastIndex < text.length) segments.push({
31
+ kind: "text",
32
+ text: text.slice(lastIndex)
33
+ });
34
+ return segments;
35
+ }
36
36
  };
37
+ //#endregion
38
+ export { unstable_defaultDirectiveFormatter };
39
+
37
40
  //# sourceMappingURL=directive-formatter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"directive-formatter.js","sourceRoot":"","sources":["../../src/adapters/directive-formatter.ts"],"names":[],"mappings":"AAMA,MAAM,YAAY,GAChB,qEAAqE,CAAC;AAExE;;;;GAIG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAgC;IAC7E,SAAS,CAAC,IAA0B;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,OAAO,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,IAAY;QAChB,MAAM,QAAQ,GAAgC,EAAE,CAAC;QACjD,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAChD,IAAI,KAAK,CAAC,KAAK,GAAG,SAAS,EAAE,CAAC;gBAC5B,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC;iBACzC,CAAC,CAAC;YACL,CAAC;YACD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACxB,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,KAAK,CAAC,CAAC,CAAE;gBACf,KAAK;gBACL,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK;aACtB,CAAC,CAAC;YACH,SAAS,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5C,CAAC;QAED,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"directive-formatter.js","names":[],"sources":["../../src/adapters/directive-formatter.ts"],"sourcesContent":["import type {\n Unstable_DirectiveFormatter,\n Unstable_DirectiveSegment,\n} from \"../types/directive\";\nimport type { Unstable_TriggerItem } from \"../types/trigger\";\n\nconst DIRECTIVE_RE =\n /:([\\w-]{1,64})\\[([^\\]\\n]{1,1024})\\](?:\\{name=([^}\\n]{1,1024})\\})?/gu;\n\n/**\n * Default directive formatter using the `:type[label]{name=id}` syntax.\n *\n * When `id` equals `label`, the `{name=…}` attribute is omitted for brevity.\n */\nexport const unstable_defaultDirectiveFormatter: Unstable_DirectiveFormatter = {\n serialize(item: Unstable_TriggerItem): string {\n const attrs = item.id !== item.label ? `{name=${item.id}}` : \"\";\n return `:${item.type}[${item.label}]${attrs}`;\n },\n\n parse(text: string): Unstable_DirectiveSegment[] {\n const segments: Unstable_DirectiveSegment[] = [];\n let lastIndex = 0;\n\n for (const match of text.matchAll(DIRECTIVE_RE)) {\n if (match.index > lastIndex) {\n segments.push({\n kind: \"text\",\n text: text.slice(lastIndex, match.index),\n });\n }\n const label = match[2]!;\n segments.push({\n kind: \"mention\",\n type: match[1]!,\n label,\n id: match[3] ?? label,\n });\n lastIndex = match.index + match[0].length;\n }\n\n if (lastIndex < text.length) {\n segments.push({ kind: \"text\", text: text.slice(lastIndex) });\n }\n\n return segments;\n },\n};\n"],"mappings":";AAMA,MAAM,eACJ;;;;;;AAOF,MAAa,qCAAkE;CAC7E,UAAU,MAAoC;EAC5C,MAAM,QAAQ,KAAK,OAAO,KAAK,QAAQ,SAAS,KAAK,GAAG,KAAK;EAC7D,OAAO,IAAI,KAAK,KAAK,GAAG,KAAK,MAAM,GAAG;CACxC;CAEA,MAAM,MAA2C;EAC/C,MAAM,WAAwC,CAAC;EAC/C,IAAI,YAAY;EAEhB,KAAK,MAAM,SAAS,KAAK,SAAS,YAAY,GAAG;GAC/C,IAAI,MAAM,QAAQ,WAChB,SAAS,KAAK;IACZ,MAAM;IACN,MAAM,KAAK,MAAM,WAAW,MAAM,KAAK;GACzC,CAAC;GAEH,MAAM,QAAQ,MAAM;GACpB,SAAS,KAAK;IACZ,MAAM;IACN,MAAM,MAAM;IACZ;IACA,IAAI,MAAM,MAAM;GAClB,CAAC;GACD,YAAY,MAAM,QAAQ,MAAM,GAAG;EACrC;EAEA,IAAI,YAAY,KAAK,QACnB,SAAS,KAAK;GAAE,MAAM;GAAQ,MAAM,KAAK,MAAM,SAAS;EAAE,CAAC;EAG7D,OAAO;CACT;AACF"}
@@ -1,10 +1,13 @@
1
- import type { ThreadMessage } from "../types/message.js";
1
+ import { ThreadMessage } from "../types/message.js";
2
+
3
+ //#region src/adapters/feedback.d.ts
2
4
  type FeedbackAdapterFeedback = {
3
- message: ThreadMessage;
4
- type: "positive" | "negative";
5
+ message: ThreadMessage;
6
+ type: "positive" | "negative";
5
7
  };
6
- export type FeedbackAdapter = {
7
- submit: (feedback: FeedbackAdapterFeedback) => void;
8
+ type FeedbackAdapter = {
9
+ submit: (feedback: FeedbackAdapterFeedback) => void;
8
10
  };
9
- export {};
11
+ //#endregion
12
+ export { FeedbackAdapter };
10
13
  //# sourceMappingURL=feedback.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"feedback.d.ts","sourceRoot":"","sources":["../../src/adapters/feedback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,4BAAyB;AAEtD,KAAK,uBAAuB,GAAG;IAC7B,OAAO,EAAE,aAAa,CAAC;IACvB,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,CAAC,QAAQ,EAAE,uBAAuB,KAAK,IAAI,CAAC;CACrD,CAAC"}
1
+ {"version":3,"file":"feedback.d.ts","names":[],"sources":["../../src/adapters/feedback.ts"],"mappings":";;;KAEK,uBAAA;EACH,OAAA,EAAS,aAAa;EACtB,IAAA;AAAA;AAAA,KAGU,eAAA;EACV,MAAA,GAAS,QAAA,EAAU,uBAAuB;AAAA"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=feedback.js.map