@assistant-ui/react 0.14.26 → 0.14.27

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 (425) hide show
  1. package/README.md +1 -1
  2. package/dist/augmentations.d.ts.map +1 -1
  3. package/dist/client/ExternalThread.d.ts +6 -4
  4. package/dist/client/ExternalThread.d.ts.map +1 -1
  5. package/dist/client/ExternalThread.js +2 -1
  6. package/dist/client/ExternalThread.js.map +1 -1
  7. package/dist/client/InMemoryThreadList.d.ts +0 -1
  8. package/dist/client/InMemoryThreadList.d.ts.map +1 -1
  9. package/dist/client/InMemoryThreadList.js +4 -1
  10. package/dist/client/InMemoryThreadList.js.map +1 -1
  11. package/dist/client/SingleThreadList.d.ts +0 -1
  12. package/dist/client/SingleThreadList.d.ts.map +1 -1
  13. package/dist/context/ReadonlyStore.d.ts +0 -1
  14. package/dist/context/ReadonlyStore.d.ts.map +1 -1
  15. package/dist/context/providers/MessageProvider.d.ts +0 -1
  16. package/dist/context/providers/MessageProvider.d.ts.map +1 -1
  17. package/dist/context/providers/ThreadViewportProvider.d.ts +0 -1
  18. package/dist/context/providers/ThreadViewportProvider.d.ts.map +1 -1
  19. package/dist/context/react/ThreadViewportContext.d.ts +15 -16
  20. package/dist/context/react/ThreadViewportContext.d.ts.map +1 -1
  21. package/dist/context/react/utils/createContextHook.d.ts +0 -1
  22. package/dist/context/react/utils/createContextHook.d.ts.map +1 -1
  23. package/dist/context/react/utils/createContextStoreHook.d.ts +2 -3
  24. package/dist/context/react/utils/createContextStoreHook.d.ts.map +1 -1
  25. package/dist/context/react/utils/createStateHookForRuntime.d.ts +0 -1
  26. package/dist/context/react/utils/createStateHookForRuntime.d.ts.map +1 -1
  27. package/dist/context/react/utils/ensureBinding.d.ts.map +1 -1
  28. package/dist/context/react/utils/useRuntimeState.d.ts +0 -1
  29. package/dist/context/react/utils/useRuntimeState.d.ts.map +1 -1
  30. package/dist/context/stores/ThreadViewport.d.ts +25 -15
  31. package/dist/context/stores/ThreadViewport.d.ts.map +1 -1
  32. package/dist/devtools/DevToolsHooks.d.ts +0 -1
  33. package/dist/devtools/DevToolsHooks.d.ts.map +1 -1
  34. package/dist/hooks/useMessageQuote.d.ts +0 -1
  35. package/dist/hooks/useMessageQuote.d.ts.map +1 -1
  36. package/dist/hooks/useMessageTiming.d.ts +0 -1
  37. package/dist/hooks/useMessageTiming.d.ts.map +1 -1
  38. package/dist/hooks/useToolCallElapsed.d.ts.map +1 -1
  39. package/dist/index.d.ts +5 -3
  40. package/dist/internal.d.ts +0 -2
  41. package/dist/legacy-runtime/AssistantRuntimeProvider.d.ts +0 -1
  42. package/dist/legacy-runtime/AssistantRuntimeProvider.d.ts.map +1 -1
  43. package/dist/legacy-runtime/cloud/auiV0.d.ts +11 -2
  44. package/dist/legacy-runtime/cloud/auiV0.d.ts.map +1 -1
  45. package/dist/legacy-runtime/cloud/auiV0.js +31 -2
  46. package/dist/legacy-runtime/cloud/auiV0.js.map +1 -1
  47. package/dist/legacy-runtime/cloud/useCloudThreadListRuntime.d.ts +1 -5
  48. package/dist/legacy-runtime/cloud/useCloudThreadListRuntime.d.ts.map +1 -1
  49. package/dist/legacy-runtime/hooks/AssistantContext.d.ts +0 -1
  50. package/dist/legacy-runtime/hooks/AssistantContext.d.ts.map +1 -1
  51. package/dist/legacy-runtime/hooks/AttachmentContext.d.ts +12 -13
  52. package/dist/legacy-runtime/hooks/AttachmentContext.d.ts.map +1 -1
  53. package/dist/legacy-runtime/hooks/ComposerContext.d.ts +0 -1
  54. package/dist/legacy-runtime/hooks/ComposerContext.d.ts.map +1 -1
  55. package/dist/legacy-runtime/hooks/MessageContext.d.ts +0 -1
  56. package/dist/legacy-runtime/hooks/MessageContext.d.ts.map +1 -1
  57. package/dist/legacy-runtime/hooks/MessagePartContext.d.ts +0 -1
  58. package/dist/legacy-runtime/hooks/MessagePartContext.d.ts.map +1 -1
  59. package/dist/legacy-runtime/hooks/ThreadContext.d.ts +0 -1
  60. package/dist/legacy-runtime/hooks/ThreadContext.d.ts.map +1 -1
  61. package/dist/legacy-runtime/hooks/ThreadListItemContext.d.ts +0 -1
  62. package/dist/legacy-runtime/hooks/ThreadListItemContext.d.ts.map +1 -1
  63. package/dist/legacy-runtime/runtime-cores/assistant-transport/commandQueue.d.ts +0 -1
  64. package/dist/legacy-runtime/runtime-cores/assistant-transport/commandQueue.d.ts.map +1 -1
  65. package/dist/legacy-runtime/runtime-cores/assistant-transport/replayBoundaryStream.d.ts +1 -4
  66. package/dist/legacy-runtime/runtime-cores/assistant-transport/replayBoundaryStream.d.ts.map +1 -1
  67. package/dist/legacy-runtime/runtime-cores/assistant-transport/runManager.d.ts.map +1 -1
  68. package/dist/legacy-runtime/runtime-cores/assistant-transport/types.d.ts +0 -1
  69. package/dist/legacy-runtime/runtime-cores/assistant-transport/types.d.ts.map +1 -1
  70. package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.d.ts +0 -1
  71. package/dist/legacy-runtime/runtime-cores/assistant-transport/useAssistantTransportRuntime.d.ts.map +1 -1
  72. package/dist/legacy-runtime/runtime-cores/assistant-transport/useConvertedState.d.ts +0 -1
  73. package/dist/legacy-runtime/runtime-cores/assistant-transport/useConvertedState.d.ts.map +1 -1
  74. package/dist/legacy-runtime/runtime-cores/assistant-transport/useLatestRef.d.ts.map +1 -1
  75. package/dist/mcp-apps/McpAppRenderer.d.ts +12 -7
  76. package/dist/mcp-apps/McpAppRenderer.d.ts.map +1 -1
  77. package/dist/mcp-apps/McpAppRenderer.js +29 -7
  78. package/dist/mcp-apps/McpAppRenderer.js.map +1 -1
  79. package/dist/mcp-apps/McpAppsRemoteHost.d.ts +0 -1
  80. package/dist/mcp-apps/McpAppsRemoteHost.d.ts.map +1 -1
  81. package/dist/mcp-apps/McpAppsRemoteHost.js +32 -1
  82. package/dist/mcp-apps/McpAppsRemoteHost.js.map +1 -1
  83. package/dist/mcp-apps/app-frame.d.ts +1 -12
  84. package/dist/mcp-apps/app-frame.d.ts.map +1 -1
  85. package/dist/mcp-apps/app-frame.js +1 -1
  86. package/dist/mcp-apps/app-frame.js.map +1 -1
  87. package/dist/mcp-apps/bridge.d.ts +0 -1
  88. package/dist/mcp-apps/bridge.d.ts.map +1 -1
  89. package/dist/mcp-apps/bridge.js +4 -3
  90. package/dist/mcp-apps/bridge.js.map +1 -1
  91. package/dist/mcp-apps/types.d.ts +10 -7
  92. package/dist/mcp-apps/types.d.ts.map +1 -1
  93. package/dist/mcp-apps/types.js.map +1 -1
  94. package/dist/mcp-apps/utils.d.ts +0 -1
  95. package/dist/mcp-apps/utils.d.ts.map +1 -1
  96. package/dist/model-context/frame/useAssistantFrameHost.d.ts +1 -6
  97. package/dist/model-context/frame/useAssistantFrameHost.d.ts.map +1 -1
  98. package/dist/model-context/makeAssistantVisible.d.ts +0 -1
  99. package/dist/model-context/makeAssistantVisible.d.ts.map +1 -1
  100. package/dist/primitives/actionBar/ActionBarCopy.d.ts +1 -4
  101. package/dist/primitives/actionBar/ActionBarCopy.d.ts.map +1 -1
  102. package/dist/primitives/actionBar/ActionBarEdit.d.ts +0 -1
  103. package/dist/primitives/actionBar/ActionBarEdit.d.ts.map +1 -1
  104. package/dist/primitives/actionBar/ActionBarExportMarkdown.d.ts +1 -5
  105. package/dist/primitives/actionBar/ActionBarExportMarkdown.d.ts.map +1 -1
  106. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts +0 -1
  107. package/dist/primitives/actionBar/ActionBarFeedbackNegative.d.ts.map +1 -1
  108. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts +0 -1
  109. package/dist/primitives/actionBar/ActionBarFeedbackPositive.d.ts.map +1 -1
  110. package/dist/primitives/actionBar/ActionBarInteractionContext.d.ts.map +1 -1
  111. package/dist/primitives/actionBar/ActionBarReload.d.ts +0 -1
  112. package/dist/primitives/actionBar/ActionBarReload.d.ts.map +1 -1
  113. package/dist/primitives/actionBar/ActionBarRoot.d.ts +0 -1
  114. package/dist/primitives/actionBar/ActionBarRoot.d.ts.map +1 -1
  115. package/dist/primitives/actionBar/ActionBarSpeak.d.ts +0 -1
  116. package/dist/primitives/actionBar/ActionBarSpeak.d.ts.map +1 -1
  117. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts +0 -1
  118. package/dist/primitives/actionBar/ActionBarStopSpeaking.d.ts.map +1 -1
  119. package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts +1 -6
  120. package/dist/primitives/actionBar/useActionBarFloatStatus.d.ts.map +1 -1
  121. package/dist/primitives/actionBar.d.ts +0 -2
  122. package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts +0 -1
  123. package/dist/primitives/actionBarMore/ActionBarMoreContent.d.ts.map +1 -1
  124. package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts +0 -1
  125. package/dist/primitives/actionBarMore/ActionBarMoreItem.d.ts.map +1 -1
  126. package/dist/primitives/actionBarMore/ActionBarMoreRoot.d.ts +0 -1
  127. package/dist/primitives/actionBarMore/ActionBarMoreRoot.d.ts.map +1 -1
  128. package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts +0 -1
  129. package/dist/primitives/actionBarMore/ActionBarMoreSeparator.d.ts.map +1 -1
  130. package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts +0 -1
  131. package/dist/primitives/actionBarMore/ActionBarMoreTrigger.d.ts.map +1 -1
  132. package/dist/primitives/actionBarMore/scope.d.ts +0 -1
  133. package/dist/primitives/actionBarMore/scope.d.ts.map +1 -1
  134. package/dist/primitives/actionBarMore.d.ts +0 -2
  135. package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts +6 -4
  136. package/dist/primitives/assistantModal/AssistantModalAnchor.d.ts.map +1 -1
  137. package/dist/primitives/assistantModal/AssistantModalAnchor.js +2 -2
  138. package/dist/primitives/assistantModal/AssistantModalAnchor.js.map +1 -1
  139. package/dist/primitives/assistantModal/AssistantModalContent.d.ts +4 -2
  140. package/dist/primitives/assistantModal/AssistantModalContent.d.ts.map +1 -1
  141. package/dist/primitives/assistantModal/AssistantModalContent.js +2 -1
  142. package/dist/primitives/assistantModal/AssistantModalContent.js.map +1 -1
  143. package/dist/primitives/assistantModal/AssistantModalRoot.d.ts +0 -1
  144. package/dist/primitives/assistantModal/AssistantModalRoot.d.ts.map +1 -1
  145. package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts +6 -4
  146. package/dist/primitives/assistantModal/AssistantModalTrigger.d.ts.map +1 -1
  147. package/dist/primitives/assistantModal/AssistantModalTrigger.js +2 -2
  148. package/dist/primitives/assistantModal/AssistantModalTrigger.js.map +1 -1
  149. package/dist/primitives/assistantModal/popoverRenderPrimitives.d.ts +14 -0
  150. package/dist/primitives/assistantModal/popoverRenderPrimitives.d.ts.map +1 -0
  151. package/dist/primitives/assistantModal/popoverRenderPrimitives.js +10 -0
  152. package/dist/primitives/assistantModal/popoverRenderPrimitives.js.map +1 -0
  153. package/dist/primitives/assistantModal/scope.d.ts +0 -1
  154. package/dist/primitives/assistantModal/scope.d.ts.map +1 -1
  155. package/dist/primitives/assistantModal.d.ts +0 -2
  156. package/dist/primitives/attachment/AttachmentName.d.ts +0 -1
  157. package/dist/primitives/attachment/AttachmentName.d.ts.map +1 -1
  158. package/dist/primitives/attachment/AttachmentRemove.d.ts +0 -1
  159. package/dist/primitives/attachment/AttachmentRemove.d.ts.map +1 -1
  160. package/dist/primitives/attachment/AttachmentRoot.d.ts +0 -1
  161. package/dist/primitives/attachment/AttachmentRoot.d.ts.map +1 -1
  162. package/dist/primitives/attachment/AttachmentThumb.d.ts +0 -1
  163. package/dist/primitives/attachment/AttachmentThumb.d.ts.map +1 -1
  164. package/dist/primitives/attachment.d.ts +0 -2
  165. package/dist/primitives/branchPicker/BranchPickerCount.d.ts +0 -1
  166. package/dist/primitives/branchPicker/BranchPickerCount.d.ts.map +1 -1
  167. package/dist/primitives/branchPicker/BranchPickerNext.d.ts +0 -1
  168. package/dist/primitives/branchPicker/BranchPickerNext.d.ts.map +1 -1
  169. package/dist/primitives/branchPicker/BranchPickerNumber.d.ts +0 -1
  170. package/dist/primitives/branchPicker/BranchPickerNumber.d.ts.map +1 -1
  171. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts +0 -1
  172. package/dist/primitives/branchPicker/BranchPickerPrevious.d.ts.map +1 -1
  173. package/dist/primitives/branchPicker/BranchPickerRoot.d.ts +0 -1
  174. package/dist/primitives/branchPicker/BranchPickerRoot.d.ts.map +1 -1
  175. package/dist/primitives/branchPicker.d.ts +0 -2
  176. package/dist/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.d.ts +0 -1
  177. package/dist/primitives/chainOfThought/ChainOfThoughtAccordionTrigger.d.ts.map +1 -1
  178. package/dist/primitives/chainOfThought/ChainOfThoughtRoot.d.ts +0 -1
  179. package/dist/primitives/chainOfThought/ChainOfThoughtRoot.d.ts.map +1 -1
  180. package/dist/primitives/chainOfThought.d.ts +0 -2
  181. package/dist/primitives/composer/ComposerAddAttachment.d.ts +5 -6
  182. package/dist/primitives/composer/ComposerAddAttachment.d.ts.map +1 -1
  183. package/dist/primitives/composer/ComposerAttachmentDropzone.d.ts +0 -1
  184. package/dist/primitives/composer/ComposerAttachmentDropzone.d.ts.map +1 -1
  185. package/dist/primitives/composer/ComposerCancel.d.ts +0 -1
  186. package/dist/primitives/composer/ComposerCancel.d.ts.map +1 -1
  187. package/dist/primitives/composer/ComposerCompactContext.d.ts +9 -0
  188. package/dist/primitives/composer/ComposerCompactContext.d.ts.map +1 -0
  189. package/dist/primitives/composer/ComposerCompactContext.js +11 -0
  190. package/dist/primitives/composer/ComposerCompactContext.js.map +1 -0
  191. package/dist/primitives/composer/ComposerDictate.d.ts +0 -1
  192. package/dist/primitives/composer/ComposerDictate.d.ts.map +1 -1
  193. package/dist/primitives/composer/ComposerDictationTranscript.d.ts +0 -1
  194. package/dist/primitives/composer/ComposerDictationTranscript.d.ts.map +1 -1
  195. package/dist/primitives/composer/ComposerInput.d.ts +0 -1
  196. package/dist/primitives/composer/ComposerInput.d.ts.map +1 -1
  197. package/dist/primitives/composer/ComposerInput.js +17 -2
  198. package/dist/primitives/composer/ComposerInput.js.map +1 -1
  199. package/dist/primitives/composer/ComposerInputPluginContext.d.ts +4 -3
  200. package/dist/primitives/composer/ComposerInputPluginContext.d.ts.map +1 -1
  201. package/dist/primitives/composer/ComposerQuote.d.ts +0 -1
  202. package/dist/primitives/composer/ComposerQuote.d.ts.map +1 -1
  203. package/dist/primitives/composer/ComposerRoot.d.ts +22 -3
  204. package/dist/primitives/composer/ComposerRoot.d.ts.map +1 -1
  205. package/dist/primitives/composer/ComposerRoot.js +63 -30
  206. package/dist/primitives/composer/ComposerRoot.js.map +1 -1
  207. package/dist/primitives/composer/ComposerSend.d.ts +0 -1
  208. package/dist/primitives/composer/ComposerSend.d.ts.map +1 -1
  209. package/dist/primitives/composer/ComposerStopDictation.d.ts +0 -1
  210. package/dist/primitives/composer/ComposerStopDictation.d.ts.map +1 -1
  211. package/dist/primitives/composer/trigger/TriggerPopover.d.ts +10 -5
  212. package/dist/primitives/composer/trigger/TriggerPopover.d.ts.map +1 -1
  213. package/dist/primitives/composer/trigger/TriggerPopoverAction.d.ts +5 -3
  214. package/dist/primitives/composer/trigger/TriggerPopoverAction.d.ts.map +1 -1
  215. package/dist/primitives/composer/trigger/TriggerPopoverAction.js +3 -2
  216. package/dist/primitives/composer/trigger/TriggerPopoverAction.js.map +1 -1
  217. package/dist/primitives/composer/trigger/TriggerPopoverBack.d.ts +0 -1
  218. package/dist/primitives/composer/trigger/TriggerPopoverBack.d.ts.map +1 -1
  219. package/dist/primitives/composer/trigger/TriggerPopoverCategories.d.ts +0 -1
  220. package/dist/primitives/composer/trigger/TriggerPopoverCategories.d.ts.map +1 -1
  221. package/dist/primitives/composer/trigger/TriggerPopoverDirective.d.ts +3 -2
  222. package/dist/primitives/composer/trigger/TriggerPopoverDirective.d.ts.map +1 -1
  223. package/dist/primitives/composer/trigger/TriggerPopoverItems.d.ts +0 -1
  224. package/dist/primitives/composer/trigger/TriggerPopoverItems.d.ts.map +1 -1
  225. package/dist/primitives/composer/trigger/TriggerPopoverResource.d.ts +10 -6
  226. package/dist/primitives/composer/trigger/TriggerPopoverResource.d.ts.map +1 -1
  227. package/dist/primitives/composer/trigger/TriggerPopoverRootContext.d.ts +8 -5
  228. package/dist/primitives/composer/trigger/TriggerPopoverRootContext.d.ts.map +1 -1
  229. package/dist/primitives/composer/trigger/index.d.ts +0 -1
  230. package/dist/primitives/composer/trigger/index.d.ts.map +1 -1
  231. package/dist/primitives/composer/trigger/triggerDetectionResource.d.ts +5 -2
  232. package/dist/primitives/composer/trigger/triggerDetectionResource.d.ts.map +1 -1
  233. package/dist/primitives/composer/trigger/triggerKeyboardResource.d.ts +7 -4
  234. package/dist/primitives/composer/trigger/triggerKeyboardResource.d.ts.map +1 -1
  235. package/dist/primitives/composer/trigger/triggerNavigationResource.d.ts +13 -7
  236. package/dist/primitives/composer/trigger/triggerNavigationResource.d.ts.map +1 -1
  237. package/dist/primitives/composer/trigger/triggerSelectionResource.d.ts +7 -4
  238. package/dist/primitives/composer/trigger/triggerSelectionResource.d.ts.map +1 -1
  239. package/dist/primitives/composer/useComposerInputState.d.ts.map +1 -1
  240. package/dist/primitives/composer.d.ts +0 -2
  241. package/dist/primitives/dropdownMenuRenderPrimitives.d.ts +0 -1
  242. package/dist/primitives/dropdownMenuRenderPrimitives.d.ts.map +1 -1
  243. package/dist/primitives/error/ErrorMessage.d.ts +0 -1
  244. package/dist/primitives/error/ErrorMessage.d.ts.map +1 -1
  245. package/dist/primitives/error/ErrorRoot.d.ts +0 -1
  246. package/dist/primitives/error/ErrorRoot.d.ts.map +1 -1
  247. package/dist/primitives/error.d.ts +0 -2
  248. package/dist/primitives/message/MessageError.d.ts +0 -1
  249. package/dist/primitives/message/MessageError.d.ts.map +1 -1
  250. package/dist/primitives/message/MessageIf.d.ts +0 -1
  251. package/dist/primitives/message/MessageIf.d.ts.map +1 -1
  252. package/dist/primitives/message/MessageParts.d.ts +0 -1
  253. package/dist/primitives/message/MessageParts.d.ts.map +1 -1
  254. package/dist/primitives/message/MessagePartsGrouped.d.ts +25 -12
  255. package/dist/primitives/message/MessagePartsGrouped.d.ts.map +1 -1
  256. package/dist/primitives/message/MessageRoot.d.ts +0 -1
  257. package/dist/primitives/message/MessageRoot.d.ts.map +1 -1
  258. package/dist/primitives/message.d.ts +0 -2
  259. package/dist/primitives/messagePart/MessagePartImage.d.ts +0 -1
  260. package/dist/primitives/messagePart/MessagePartImage.d.ts.map +1 -1
  261. package/dist/primitives/messagePart/MessagePartText.d.ts +0 -1
  262. package/dist/primitives/messagePart/MessagePartText.d.ts.map +1 -1
  263. package/dist/primitives/messagePart/useMessagePartData.d.ts +0 -1
  264. package/dist/primitives/messagePart/useMessagePartData.d.ts.map +1 -1
  265. package/dist/primitives/messagePart/useMessagePartFile.d.ts +0 -1
  266. package/dist/primitives/messagePart/useMessagePartFile.d.ts.map +1 -1
  267. package/dist/primitives/messagePart/useMessagePartImage.d.ts +0 -1
  268. package/dist/primitives/messagePart/useMessagePartImage.d.ts.map +1 -1
  269. package/dist/primitives/messagePart/useMessagePartReasoning.d.ts +0 -1
  270. package/dist/primitives/messagePart/useMessagePartReasoning.d.ts.map +1 -1
  271. package/dist/primitives/messagePart/useMessagePartSource.d.ts.map +1 -1
  272. package/dist/primitives/messagePart/useMessagePartText.d.ts +0 -1
  273. package/dist/primitives/messagePart/useMessagePartText.d.ts.map +1 -1
  274. package/dist/primitives/messagePart.d.ts +0 -2
  275. package/dist/primitives/queueItem/QueueItemRemove.d.ts +0 -1
  276. package/dist/primitives/queueItem/QueueItemRemove.d.ts.map +1 -1
  277. package/dist/primitives/queueItem/QueueItemSteer.d.ts +0 -1
  278. package/dist/primitives/queueItem/QueueItemSteer.d.ts.map +1 -1
  279. package/dist/primitives/queueItem/QueueItemText.d.ts +0 -1
  280. package/dist/primitives/queueItem/QueueItemText.d.ts.map +1 -1
  281. package/dist/primitives/queueItem.d.ts +0 -2
  282. package/dist/primitives/reasoning/useScrollLock.d.ts +0 -1
  283. package/dist/primitives/reasoning/useScrollLock.d.ts.map +1 -1
  284. package/dist/primitives/selectionToolbar/SelectionToolbarQuote.d.ts +0 -1
  285. package/dist/primitives/selectionToolbar/SelectionToolbarQuote.d.ts.map +1 -1
  286. package/dist/primitives/selectionToolbar/SelectionToolbarRoot.d.ts +0 -1
  287. package/dist/primitives/selectionToolbar/SelectionToolbarRoot.d.ts.map +1 -1
  288. package/dist/primitives/selectionToolbar/SelectionToolbarRoot.js +2 -1
  289. package/dist/primitives/selectionToolbar/SelectionToolbarRoot.js.map +1 -1
  290. package/dist/primitives/selectionToolbar.d.ts +0 -2
  291. package/dist/primitives/suggestion/SuggestionDescription.d.ts +0 -1
  292. package/dist/primitives/suggestion/SuggestionDescription.d.ts.map +1 -1
  293. package/dist/primitives/suggestion/SuggestionTitle.d.ts +0 -1
  294. package/dist/primitives/suggestion/SuggestionTitle.d.ts.map +1 -1
  295. package/dist/primitives/suggestion/SuggestionTrigger.d.ts +1 -5
  296. package/dist/primitives/suggestion/SuggestionTrigger.d.ts.map +1 -1
  297. package/dist/primitives/suggestion.d.ts +0 -2
  298. package/dist/primitives/thread/ThreadEmpty.d.ts +0 -1
  299. package/dist/primitives/thread/ThreadEmpty.d.ts.map +1 -1
  300. package/dist/primitives/thread/ThreadIf.d.ts +0 -1
  301. package/dist/primitives/thread/ThreadIf.d.ts.map +1 -1
  302. package/dist/primitives/thread/ThreadRoot.d.ts +0 -1
  303. package/dist/primitives/thread/ThreadRoot.d.ts.map +1 -1
  304. package/dist/primitives/thread/ThreadScrollToBottom.d.ts +1 -4
  305. package/dist/primitives/thread/ThreadScrollToBottom.d.ts.map +1 -1
  306. package/dist/primitives/thread/ThreadSuggestion.d.ts +13 -14
  307. package/dist/primitives/thread/ThreadSuggestion.d.ts.map +1 -1
  308. package/dist/primitives/thread/ThreadViewport.d.ts +0 -1
  309. package/dist/primitives/thread/ThreadViewport.d.ts.map +1 -1
  310. package/dist/primitives/thread/ThreadViewportFooter.d.ts +0 -1
  311. package/dist/primitives/thread/ThreadViewportFooter.d.ts.map +1 -1
  312. package/dist/primitives/thread/topAnchor/computeTopAnchorSlack.d.ts +2 -11
  313. package/dist/primitives/thread/topAnchor/computeTopAnchorSlack.d.ts.map +1 -1
  314. package/dist/primitives/thread/topAnchor/createReserveObservers.d.ts.map +1 -1
  315. package/dist/primitives/thread/topAnchor/mountTopAnchorReserve.d.ts.map +1 -1
  316. package/dist/primitives/thread/topAnchor/topAnchorTurn.d.ts +1 -4
  317. package/dist/primitives/thread/topAnchor/topAnchorTurn.d.ts.map +1 -1
  318. package/dist/primitives/thread/topAnchor/topAnchorUtils.d.ts.map +1 -1
  319. package/dist/primitives/thread/topAnchor/useTopAnchorReserve.d.ts.map +1 -1
  320. package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts +1 -7
  321. package/dist/primitives/thread/useThreadViewportAutoScroll.d.ts.map +1 -1
  322. package/dist/primitives/thread.d.ts +0 -2
  323. package/dist/primitives/threadList/ThreadListLoadMore.d.ts +0 -1
  324. package/dist/primitives/threadList/ThreadListLoadMore.d.ts.map +1 -1
  325. package/dist/primitives/threadList/ThreadListNew.d.ts +0 -1
  326. package/dist/primitives/threadList/ThreadListNew.d.ts.map +1 -1
  327. package/dist/primitives/threadList/ThreadListRoot.d.ts +0 -1
  328. package/dist/primitives/threadList/ThreadListRoot.d.ts.map +1 -1
  329. package/dist/primitives/threadList.d.ts +0 -2
  330. package/dist/primitives/threadListFocusGroup.d.ts +0 -1
  331. package/dist/primitives/threadListFocusGroup.d.ts.map +1 -1
  332. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts +0 -1
  333. package/dist/primitives/threadListItem/ThreadListItemArchive.d.ts.map +1 -1
  334. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts +0 -1
  335. package/dist/primitives/threadListItem/ThreadListItemDelete.d.ts.map +1 -1
  336. package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts +0 -1
  337. package/dist/primitives/threadListItem/ThreadListItemRoot.d.ts.map +1 -1
  338. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts +0 -1
  339. package/dist/primitives/threadListItem/ThreadListItemTrigger.d.ts.map +1 -1
  340. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts +0 -1
  341. package/dist/primitives/threadListItem/ThreadListItemUnarchive.d.ts.map +1 -1
  342. package/dist/primitives/threadListItem.d.ts +0 -2
  343. package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts +0 -1
  344. package/dist/primitives/threadListItemMore/ThreadListItemMoreContent.d.ts.map +1 -1
  345. package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts +0 -1
  346. package/dist/primitives/threadListItemMore/ThreadListItemMoreItem.d.ts.map +1 -1
  347. package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.d.ts +0 -1
  348. package/dist/primitives/threadListItemMore/ThreadListItemMoreRoot.d.ts.map +1 -1
  349. package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts +0 -1
  350. package/dist/primitives/threadListItemMore/ThreadListItemMoreSeparator.d.ts.map +1 -1
  351. package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts +0 -1
  352. package/dist/primitives/threadListItemMore/ThreadListItemMoreTrigger.d.ts.map +1 -1
  353. package/dist/primitives/threadListItemMore/scope.d.ts +0 -1
  354. package/dist/primitives/threadListItemMore/scope.d.ts.map +1 -1
  355. package/dist/primitives/threadListItemMore.d.ts +0 -2
  356. package/dist/sandbox-host/SandboxHost.d.ts +1 -10
  357. package/dist/sandbox-host/SandboxHost.d.ts.map +1 -1
  358. package/dist/tests/remote-thread-list-test-helpers.d.ts +0 -1
  359. package/dist/tests/remote-thread-list-test-helpers.d.ts.map +1 -1
  360. package/dist/unstable/useComposerInput.d.ts +2 -2
  361. package/dist/unstable/useComposerInput.d.ts.map +1 -1
  362. package/dist/unstable/useComposerInputHistory.d.ts +2 -2
  363. package/dist/unstable/useComposerInputHistory.d.ts.map +1 -1
  364. package/dist/unstable/useLiveCompletionAdapter.d.ts +4 -3
  365. package/dist/unstable/useLiveCompletionAdapter.d.ts.map +1 -1
  366. package/dist/unstable/useMentionAdapter.d.ts +19 -10
  367. package/dist/unstable/useMentionAdapter.d.ts.map +1 -1
  368. package/dist/unstable/useMessageStallDetection.d.ts +3 -1
  369. package/dist/unstable/useMessageStallDetection.d.ts.map +1 -1
  370. package/dist/unstable/useSlashCommandAdapter.d.ts +6 -4
  371. package/dist/unstable/useSlashCommandAdapter.d.ts.map +1 -1
  372. package/dist/utils/Primitive.d.ts +0 -1
  373. package/dist/utils/Primitive.d.ts.map +1 -1
  374. package/dist/utils/RequireAtLeastOne.d.ts +1 -1
  375. package/dist/utils/RequireAtLeastOne.d.ts.map +1 -1
  376. package/dist/utils/createActionButton.d.ts +0 -1
  377. package/dist/utils/createActionButton.d.ts.map +1 -1
  378. package/dist/utils/getSelectionMessageId.d.ts.map +1 -1
  379. package/dist/utils/getSelectionMessageId.js +32 -7
  380. package/dist/utils/getSelectionMessageId.js.map +1 -1
  381. package/dist/utils/hooks/useManagedRef.d.ts.map +1 -1
  382. package/dist/utils/hooks/useMediaQuery.d.ts.map +1 -1
  383. package/dist/utils/hooks/useOnResizeContent.d.ts.map +1 -1
  384. package/dist/utils/hooks/useOnScrollToBottom.d.ts.map +1 -1
  385. package/dist/utils/hooks/useSizeHandle.d.ts +0 -1
  386. package/dist/utils/hooks/useSizeHandle.d.ts.map +1 -1
  387. package/dist/utils/smooth/SmoothContext.d.ts +71 -72
  388. package/dist/utils/smooth/SmoothContext.d.ts.map +1 -1
  389. package/dist/utils/smooth/useSmooth.d.ts +0 -1
  390. package/dist/utils/smooth/useSmooth.d.ts.map +1 -1
  391. package/dist/utils/useToolArgsFieldStatus.d.ts +2 -2
  392. package/dist/utils/useToolArgsFieldStatus.d.ts.map +1 -1
  393. package/package.json +18 -18
  394. package/src/index.ts +3 -0
  395. package/src/legacy-runtime/cloud/auiV0.ts +72 -3
  396. package/src/mcp-apps/McpAppRenderer.test.tsx +141 -0
  397. package/src/mcp-apps/McpAppRenderer.tsx +48 -10
  398. package/src/mcp-apps/McpAppsRemoteHost.test.ts +126 -0
  399. package/src/mcp-apps/McpAppsRemoteHost.ts +40 -1
  400. package/src/mcp-apps/app-frame.tsx +3 -1
  401. package/src/mcp-apps/bridge.ts +1 -1
  402. package/src/mcp-apps/types.ts +16 -8
  403. package/src/primitives/assistantModal/AssistantModalAnchor.tsx +6 -8
  404. package/src/primitives/assistantModal/AssistantModalContent.tsx +5 -5
  405. package/src/primitives/assistantModal/AssistantModalTrigger.test.tsx +80 -0
  406. package/src/primitives/assistantModal/AssistantModalTrigger.tsx +6 -8
  407. package/src/primitives/assistantModal/popoverRenderPrimitives.ts +6 -0
  408. package/src/primitives/composer/ComposerCompactContext.tsx +13 -0
  409. package/src/primitives/composer/ComposerInput.tsx +35 -0
  410. package/src/primitives/composer/ComposerRoot.test.tsx +161 -0
  411. package/src/primitives/composer/ComposerRoot.tsx +37 -7
  412. package/src/tests/LocalThreadRuntimeCore.test.ts +4 -1
  413. package/src/tests/auiV0Encode.test.ts +134 -1
  414. package/src/utils/getSelectionMessageId.test.ts +175 -0
  415. package/src/utils/getSelectionMessageId.ts +57 -6
  416. package/dist/utils/json/is-json-equal.d.ts +0 -5
  417. package/dist/utils/json/is-json-equal.d.ts.map +0 -1
  418. package/dist/utils/json/is-json-equal.js +0 -26
  419. package/dist/utils/json/is-json-equal.js.map +0 -1
  420. package/dist/utils/json/is-json.d.ts +0 -10
  421. package/dist/utils/json/is-json.d.ts.map +0 -1
  422. package/dist/utils/json/is-json.js +0 -22
  423. package/dist/utils/json/is-json.js.map +0 -1
  424. package/src/utils/json/is-json-equal.ts +0 -48
  425. package/src/utils/json/is-json.ts +0 -58
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.js","names":["SandboxHostFrame","MCP_APP_PROTOCOL_VERSION","McpAppBridgeHandlers","McpAppDisplayMode","McpAppHostContext","McpAppHostInfo","McpAppJsonRpcMessage","McpAppJsonRpcNotification","McpAppJsonRpcRequest","McpAppJsonRpcResponse","isRecord","VALID_DISPLAY_MODES","const","McpAppBridgeFrame","CreateMcpAppBridgeOptions","frame","handlers","hostInfo","hostContext","McpAppBridge","onMessage","event","MessageEvent","dispose","notifyToolInput","input","notifyToolResult","result","notifyHostContextChanged","DEFAULT_HOST_INFO","name","version","METHOD_ALIASES","Record","normalizeMethod","method","JSONRPC_ERROR","parseError","invalidRequest","methodNotFound","invalidParams","internalError","isJsonRpcMessage","value","v","jsonrpc","isRequest","msg","isNotification","createMcpAppBridge","opts","post","sendMessage","respond","id","payload","error","code","message","data","res","errorResponse","undefined","handleRequest","req","params","requestedProtocolVersion","protocolVersion","host","capabilities","tools","callTool","resources","readResource","listResources","ui","openLink","requestDisplayMode","updateModelContext","hostCapabilities","openLinks","serverTools","serverResources","text","onLog","logging","callParams","arguments","allowedTools","includes","callArgs","Array","isArray","readParams","uri","linkParams","url","linkProtocol","URL","protocol","modeParams","mode","err","Error","String","onError","handleNotification","note","onInitialized","p","width","height","onSizeChange","onRequestTeardown","content","type","ctx"],"sources":["../../src/mcp-apps/bridge.ts"],"sourcesContent":["import type { SandboxHostFrame } from \"../sandbox-host/SandboxHost\";\nimport {\n MCP_APP_PROTOCOL_VERSION,\n type McpAppBridgeHandlers,\n type McpAppDisplayMode,\n type McpAppHostContext,\n type McpAppHostInfo,\n type McpAppJsonRpcMessage,\n type McpAppJsonRpcNotification,\n type McpAppJsonRpcRequest,\n type McpAppJsonRpcResponse,\n} from \"./types\";\nimport { isRecord } from \"../utils/json/is-json\";\n\nconst VALID_DISPLAY_MODES = [\n \"inline\",\n \"fullscreen\",\n \"pip\",\n] as const satisfies readonly McpAppDisplayMode[];\n\nexport type McpAppBridgeFrame = SandboxHostFrame;\n\nexport type CreateMcpAppBridgeOptions = {\n frame: McpAppBridgeFrame;\n handlers?: McpAppBridgeHandlers | undefined;\n hostInfo?: McpAppHostInfo | undefined;\n hostContext?: McpAppHostContext | undefined;\n};\n\nexport type McpAppBridge = {\n onMessage: (event: MessageEvent) => void;\n dispose: () => void;\n notifyToolInput: (input: unknown) => void;\n notifyToolResult: (result: unknown) => void;\n notifyHostContextChanged: (hostContext: McpAppHostContext) => void;\n};\n\nconst DEFAULT_HOST_INFO: McpAppHostInfo = {\n name: \"assistant-ui\",\n version: \"0.1\",\n};\n\n// Accept both the legacy method names and the MCP-UI 2026-01-26 names that\n// `ui/*` capable widgets (e.g. xmcp's host-bridge) emit. Normalize on input\n// so downstream switch statements only need to know the legacy names.\nconst METHOD_ALIASES: Record<string, string> = {\n \"ui/notifications/initialized\": \"notifications/initialized\",\n \"ui/notifications/size-changed\": \"notifications/size_changed\",\n \"ui/request-display-mode\": \"requestDisplayMode\",\n \"ui/open-link\": \"openLink\",\n \"ui/update-model-context\": \"updateModelContext\",\n \"ui/message\": \"sendMessage\",\n \"notifications/message\": \"notifications/log\",\n};\n\nconst normalizeMethod = (method: string): string =>\n METHOD_ALIASES[method] ?? method;\n\nconst JSONRPC_ERROR = {\n parseError: -32700,\n invalidRequest: -32600,\n methodNotFound: -32601,\n invalidParams: -32602,\n internalError: -32603,\n} as const;\n\nfunction isJsonRpcMessage(value: unknown): value is McpAppJsonRpcMessage {\n if (!value || typeof value !== \"object\") return false;\n const v = value as Record<string, unknown>;\n return v.jsonrpc === \"2.0\" && typeof v.method === \"string\";\n}\n\nfunction isRequest(msg: McpAppJsonRpcMessage): msg is McpAppJsonRpcRequest {\n return \"id\" in msg;\n}\n\nfunction isNotification(\n msg: McpAppJsonRpcMessage,\n): msg is McpAppJsonRpcNotification {\n return !(\"id\" in msg);\n}\n\nexport function createMcpAppBridge(\n opts: CreateMcpAppBridgeOptions,\n): McpAppBridge {\n const {\n frame,\n handlers = {},\n hostInfo = DEFAULT_HOST_INFO,\n hostContext = {},\n } = opts;\n\n const post = (msg: McpAppJsonRpcMessage) => {\n frame.sendMessage(msg);\n };\n\n const respond = (\n id: McpAppJsonRpcRequest[\"id\"],\n payload:\n | { result: unknown }\n | { error: { code: number; message: string; data?: unknown } },\n ) => {\n const res: McpAppJsonRpcResponse = {\n jsonrpc: \"2.0\",\n id,\n ...payload,\n };\n post(res);\n };\n\n const errorResponse = (\n id: McpAppJsonRpcRequest[\"id\"],\n code: number,\n message: string,\n data?: unknown,\n ) => {\n respond(id, {\n error: {\n code,\n message,\n ...(data !== undefined ? { data } : {}),\n },\n });\n };\n\n const handleRequest = async (req: McpAppJsonRpcRequest) => {\n try {\n const params = req.params;\n\n switch (normalizeMethod(req.method)) {\n case \"ui/initialize\": {\n const requestedProtocolVersion =\n isRecord(params) && typeof params.protocolVersion === \"string\"\n ? params.protocolVersion\n : MCP_APP_PROTOCOL_VERSION;\n respond(req.id, {\n result: {\n protocolVersion: requestedProtocolVersion,\n host: hostInfo,\n hostInfo,\n hostContext,\n capabilities: {\n tools: handlers.callTool ? {} : undefined,\n resources:\n handlers.readResource || handlers.listResources\n ? {}\n : undefined,\n ui: {\n sendMessage: !!handlers.sendMessage,\n openLink: !!handlers.openLink,\n requestDisplayMode: !!handlers.requestDisplayMode,\n updateModelContext: !!handlers.updateModelContext,\n },\n },\n hostCapabilities: {\n ...(handlers.openLink ? { openLinks: {} } : {}),\n ...(handlers.callTool ? { serverTools: {} } : {}),\n ...(handlers.readResource || handlers.listResources\n ? { serverResources: {} }\n : {}),\n ...(handlers.updateModelContext\n ? { updateModelContext: { text: {} } }\n : {}),\n ...(handlers.sendMessage ? { message: { text: {} } } : {}),\n ...(handlers.onLog ? { logging: {} } : {}),\n },\n },\n });\n return;\n }\n\n case \"tools/call\": {\n if (!handlers.callTool) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"tools/call is not supported by this host\",\n );\n return;\n }\n const callParams = (params ?? {}) as {\n name?: unknown;\n arguments?: unknown;\n };\n if (typeof callParams.name !== \"string\") {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"tools/call requires a string 'name'\",\n );\n return;\n }\n if (\n handlers.allowedTools &&\n !handlers.allowedTools.includes(callParams.name)\n ) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n `tool '${callParams.name}' is not allowed for this app`,\n );\n return;\n }\n let callArgs: Record<string, unknown> | undefined;\n if (callParams.arguments !== undefined) {\n if (\n callParams.arguments === null ||\n typeof callParams.arguments !== \"object\" ||\n Array.isArray(callParams.arguments)\n ) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"tools/call 'arguments' must be an object\",\n );\n return;\n }\n callArgs = callParams.arguments as Record<string, unknown>;\n }\n const result = await handlers.callTool({\n name: callParams.name,\n ...(callArgs !== undefined ? { arguments: callArgs } : {}),\n });\n respond(req.id, { result });\n return;\n }\n\n case \"resources/read\": {\n if (!handlers.readResource) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"resources/read is not supported by this host\",\n );\n return;\n }\n const readParams = (params ?? {}) as { uri?: unknown };\n if (typeof readParams.uri !== \"string\") {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"resources/read requires a string 'uri'\",\n );\n return;\n }\n respond(req.id, {\n result: await handlers.readResource({ uri: readParams.uri }),\n });\n return;\n }\n\n case \"resources/list\": {\n if (!handlers.listResources) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"resources/list is not supported by this host\",\n );\n return;\n }\n respond(req.id, {\n result: (await handlers.listResources(params)) ?? null,\n });\n return;\n }\n\n case \"openLink\": {\n if (!handlers.openLink) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"openLink is not supported by this host\",\n );\n return;\n }\n const linkParams = (params ?? {}) as { url?: unknown };\n if (typeof linkParams.url !== \"string\") {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"openLink requires a string 'url'\",\n );\n return;\n }\n let linkProtocol: string;\n try {\n linkProtocol = new URL(linkParams.url).protocol;\n } catch {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"openLink requires a valid URL\",\n );\n return;\n }\n if (linkProtocol !== \"https:\" && linkProtocol !== \"http:\") {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"openLink only accepts http(s) URLs\",\n );\n return;\n }\n respond(req.id, {\n result: await handlers.openLink({ url: linkParams.url }),\n });\n return;\n }\n\n case \"sendMessage\": {\n if (!handlers.sendMessage) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"sendMessage is not supported by this host\",\n );\n return;\n }\n respond(req.id, {\n result: (await handlers.sendMessage(params)) ?? null,\n });\n return;\n }\n\n case \"updateModelContext\": {\n if (!handlers.updateModelContext) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"updateModelContext is not supported by this host\",\n );\n return;\n }\n respond(req.id, {\n result: (await handlers.updateModelContext(params)) ?? null,\n });\n return;\n }\n\n case \"requestDisplayMode\": {\n if (!handlers.requestDisplayMode) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"requestDisplayMode is not supported by this host\",\n );\n return;\n }\n const modeParams = (params ?? {}) as { mode?: unknown };\n if (\n typeof modeParams.mode !== \"string\" ||\n !VALID_DISPLAY_MODES.includes(modeParams.mode as McpAppDisplayMode)\n ) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"requestDisplayMode requires a valid 'mode'\",\n );\n return;\n }\n respond(req.id, {\n result: await handlers.requestDisplayMode({\n mode: modeParams.mode as McpAppDisplayMode,\n }),\n });\n return;\n }\n\n default: {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n `Unknown method: ${req.method}`,\n );\n }\n }\n } catch (err) {\n const error = err instanceof Error ? err : new Error(String(err));\n handlers.onError?.(error);\n errorResponse(req.id, JSONRPC_ERROR.internalError, error.message);\n }\n };\n\n const handleNotification = (note: McpAppJsonRpcNotification) => {\n switch (normalizeMethod(note.method)) {\n case \"notifications/initialized\": {\n handlers.onInitialized?.();\n return;\n }\n case \"notifications/size_changed\": {\n const p = (note.params ?? {}) as { width?: number; height?: number };\n handlers.onSizeChange?.({\n ...(typeof p.width === \"number\" ? { width: p.width } : {}),\n ...(typeof p.height === \"number\" ? { height: p.height } : {}),\n });\n return;\n }\n case \"notifications/log\": {\n handlers.onLog?.(note.params);\n return;\n }\n case \"notifications/request_teardown\": {\n handlers.onRequestTeardown?.(note.params);\n return;\n }\n case \"notifications/error\": {\n const p = (note.params ?? {}) as { message?: string };\n handlers.onError?.(\n new Error(typeof p.message === \"string\" ? p.message : \"Widget error\"),\n );\n return;\n }\n default:\n return;\n }\n };\n\n // The host applies the cross-origin guard before delegating; this only\n // validates the JSON-RPC envelope.\n const onMessage = (event: MessageEvent) => {\n if (!isJsonRpcMessage(event.data)) return;\n\n const msg = event.data;\n if (isRequest(msg)) {\n void handleRequest(msg);\n } else if (isNotification(msg)) {\n handleNotification(msg);\n }\n };\n\n return {\n onMessage,\n dispose: () => {},\n notifyToolInput: (input: unknown) => {\n post({\n jsonrpc: \"2.0\",\n method: \"notifications/tools/call/input\",\n params: { input },\n });\n post({\n jsonrpc: \"2.0\",\n method: \"ui/notifications/tool-input\",\n params: isRecord(input) ? { arguments: input } : {},\n });\n },\n notifyToolResult: (result: unknown) => {\n post({\n jsonrpc: \"2.0\",\n method: \"notifications/tools/call/result\",\n params: { result },\n });\n post({\n jsonrpc: \"2.0\",\n method: \"ui/notifications/tool-result\",\n params: isRecord(result)\n ? result\n : { content: [{ type: \"text\", text: String(result) }] },\n });\n },\n notifyHostContextChanged: (ctx: McpAppHostContext) => {\n post({\n jsonrpc: \"2.0\",\n method: \"notifications/host_context/changed\",\n params: ctx,\n });\n post({\n jsonrpc: \"2.0\",\n method: \"ui/notifications/host-context-changed\",\n params: ctx,\n });\n },\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"bridge.js","names":["SandboxHostFrame","MCP_APP_PROTOCOL_VERSION","McpAppBridgeHandlers","McpAppDisplayMode","McpAppHostContext","McpAppHostInfo","McpAppJsonRpcMessage","McpAppJsonRpcNotification","McpAppJsonRpcRequest","McpAppJsonRpcResponse","isRecord","VALID_DISPLAY_MODES","const","McpAppBridgeFrame","CreateMcpAppBridgeOptions","frame","handlers","hostInfo","hostContext","McpAppBridge","onMessage","event","MessageEvent","dispose","notifyToolInput","input","notifyToolResult","result","notifyHostContextChanged","DEFAULT_HOST_INFO","name","version","METHOD_ALIASES","Record","normalizeMethod","method","JSONRPC_ERROR","parseError","invalidRequest","methodNotFound","invalidParams","internalError","isJsonRpcMessage","value","v","jsonrpc","isRequest","msg","isNotification","createMcpAppBridge","opts","post","sendMessage","respond","id","payload","error","code","message","data","res","errorResponse","undefined","handleRequest","req","params","requestedProtocolVersion","protocolVersion","host","capabilities","tools","callTool","resources","readResource","listResources","ui","openLink","requestDisplayMode","updateModelContext","hostCapabilities","openLinks","serverTools","serverResources","text","onLog","logging","callParams","arguments","allowedTools","includes","callArgs","Array","isArray","readParams","uri","linkParams","url","linkProtocol","URL","protocol","modeParams","mode","err","Error","String","onError","handleNotification","note","onInitialized","p","width","height","onSizeChange","onRequestTeardown","content","type","ctx"],"sources":["../../src/mcp-apps/bridge.ts"],"sourcesContent":["import type { SandboxHostFrame } from \"../sandbox-host/SandboxHost\";\nimport {\n MCP_APP_PROTOCOL_VERSION,\n type McpAppBridgeHandlers,\n type McpAppDisplayMode,\n type McpAppHostContext,\n type McpAppHostInfo,\n type McpAppJsonRpcMessage,\n type McpAppJsonRpcNotification,\n type McpAppJsonRpcRequest,\n type McpAppJsonRpcResponse,\n} from \"./types\";\nimport { isRecord } from \"@assistant-ui/core/internal\";\n\nconst VALID_DISPLAY_MODES = [\n \"inline\",\n \"fullscreen\",\n \"pip\",\n] as const satisfies readonly McpAppDisplayMode[];\n\nexport type McpAppBridgeFrame = SandboxHostFrame;\n\nexport type CreateMcpAppBridgeOptions = {\n frame: McpAppBridgeFrame;\n handlers?: McpAppBridgeHandlers | undefined;\n hostInfo?: McpAppHostInfo | undefined;\n hostContext?: McpAppHostContext | undefined;\n};\n\nexport type McpAppBridge = {\n onMessage: (event: MessageEvent) => void;\n dispose: () => void;\n notifyToolInput: (input: unknown) => void;\n notifyToolResult: (result: unknown) => void;\n notifyHostContextChanged: (hostContext: McpAppHostContext) => void;\n};\n\nconst DEFAULT_HOST_INFO: McpAppHostInfo = {\n name: \"assistant-ui\",\n version: \"0.1\",\n};\n\n// Accept both the legacy method names and the MCP-UI 2026-01-26 names that\n// `ui/*` capable widgets (e.g. xmcp's host-bridge) emit. Normalize on input\n// so downstream switch statements only need to know the legacy names.\nconst METHOD_ALIASES: Record<string, string> = {\n \"ui/notifications/initialized\": \"notifications/initialized\",\n \"ui/notifications/size-changed\": \"notifications/size_changed\",\n \"ui/request-display-mode\": \"requestDisplayMode\",\n \"ui/open-link\": \"openLink\",\n \"ui/update-model-context\": \"updateModelContext\",\n \"ui/message\": \"sendMessage\",\n \"notifications/message\": \"notifications/log\",\n};\n\nconst normalizeMethod = (method: string): string =>\n METHOD_ALIASES[method] ?? method;\n\nconst JSONRPC_ERROR = {\n parseError: -32700,\n invalidRequest: -32600,\n methodNotFound: -32601,\n invalidParams: -32602,\n internalError: -32603,\n} as const;\n\nfunction isJsonRpcMessage(value: unknown): value is McpAppJsonRpcMessage {\n if (!value || typeof value !== \"object\") return false;\n const v = value as Record<string, unknown>;\n return v.jsonrpc === \"2.0\" && typeof v.method === \"string\";\n}\n\nfunction isRequest(msg: McpAppJsonRpcMessage): msg is McpAppJsonRpcRequest {\n return \"id\" in msg;\n}\n\nfunction isNotification(\n msg: McpAppJsonRpcMessage,\n): msg is McpAppJsonRpcNotification {\n return !(\"id\" in msg);\n}\n\nexport function createMcpAppBridge(\n opts: CreateMcpAppBridgeOptions,\n): McpAppBridge {\n const {\n frame,\n handlers = {},\n hostInfo = DEFAULT_HOST_INFO,\n hostContext = {},\n } = opts;\n\n const post = (msg: McpAppJsonRpcMessage) => {\n frame.sendMessage(msg);\n };\n\n const respond = (\n id: McpAppJsonRpcRequest[\"id\"],\n payload:\n | { result: unknown }\n | { error: { code: number; message: string; data?: unknown } },\n ) => {\n const res: McpAppJsonRpcResponse = {\n jsonrpc: \"2.0\",\n id,\n ...payload,\n };\n post(res);\n };\n\n const errorResponse = (\n id: McpAppJsonRpcRequest[\"id\"],\n code: number,\n message: string,\n data?: unknown,\n ) => {\n respond(id, {\n error: {\n code,\n message,\n ...(data !== undefined ? { data } : {}),\n },\n });\n };\n\n const handleRequest = async (req: McpAppJsonRpcRequest) => {\n try {\n const params = req.params;\n\n switch (normalizeMethod(req.method)) {\n case \"ui/initialize\": {\n const requestedProtocolVersion =\n isRecord(params) && typeof params.protocolVersion === \"string\"\n ? params.protocolVersion\n : MCP_APP_PROTOCOL_VERSION;\n respond(req.id, {\n result: {\n protocolVersion: requestedProtocolVersion,\n host: hostInfo,\n hostInfo,\n hostContext,\n capabilities: {\n tools: handlers.callTool ? {} : undefined,\n resources:\n handlers.readResource || handlers.listResources\n ? {}\n : undefined,\n ui: {\n sendMessage: !!handlers.sendMessage,\n openLink: !!handlers.openLink,\n requestDisplayMode: !!handlers.requestDisplayMode,\n updateModelContext: !!handlers.updateModelContext,\n },\n },\n hostCapabilities: {\n ...(handlers.openLink ? { openLinks: {} } : {}),\n ...(handlers.callTool ? { serverTools: {} } : {}),\n ...(handlers.readResource || handlers.listResources\n ? { serverResources: {} }\n : {}),\n ...(handlers.updateModelContext\n ? { updateModelContext: { text: {} } }\n : {}),\n ...(handlers.sendMessage ? { message: { text: {} } } : {}),\n ...(handlers.onLog ? { logging: {} } : {}),\n },\n },\n });\n return;\n }\n\n case \"tools/call\": {\n if (!handlers.callTool) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"tools/call is not supported by this host\",\n );\n return;\n }\n const callParams = (params ?? {}) as {\n name?: unknown;\n arguments?: unknown;\n };\n if (typeof callParams.name !== \"string\") {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"tools/call requires a string 'name'\",\n );\n return;\n }\n if (\n handlers.allowedTools &&\n !handlers.allowedTools.includes(callParams.name)\n ) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n `tool '${callParams.name}' is not allowed for this app`,\n );\n return;\n }\n let callArgs: Record<string, unknown> | undefined;\n if (callParams.arguments !== undefined) {\n if (\n callParams.arguments === null ||\n typeof callParams.arguments !== \"object\" ||\n Array.isArray(callParams.arguments)\n ) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"tools/call 'arguments' must be an object\",\n );\n return;\n }\n callArgs = callParams.arguments as Record<string, unknown>;\n }\n const result = await handlers.callTool({\n name: callParams.name,\n ...(callArgs !== undefined ? { arguments: callArgs } : {}),\n });\n respond(req.id, { result });\n return;\n }\n\n case \"resources/read\": {\n if (!handlers.readResource) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"resources/read is not supported by this host\",\n );\n return;\n }\n const readParams = (params ?? {}) as { uri?: unknown };\n if (typeof readParams.uri !== \"string\") {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"resources/read requires a string 'uri'\",\n );\n return;\n }\n respond(req.id, {\n result: await handlers.readResource({ uri: readParams.uri }),\n });\n return;\n }\n\n case \"resources/list\": {\n if (!handlers.listResources) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"resources/list is not supported by this host\",\n );\n return;\n }\n respond(req.id, {\n result: (await handlers.listResources(params)) ?? null,\n });\n return;\n }\n\n case \"openLink\": {\n if (!handlers.openLink) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"openLink is not supported by this host\",\n );\n return;\n }\n const linkParams = (params ?? {}) as { url?: unknown };\n if (typeof linkParams.url !== \"string\") {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"openLink requires a string 'url'\",\n );\n return;\n }\n let linkProtocol: string;\n try {\n linkProtocol = new URL(linkParams.url).protocol;\n } catch {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"openLink requires a valid URL\",\n );\n return;\n }\n if (linkProtocol !== \"https:\" && linkProtocol !== \"http:\") {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"openLink only accepts http(s) URLs\",\n );\n return;\n }\n respond(req.id, {\n result: await handlers.openLink({ url: linkParams.url }),\n });\n return;\n }\n\n case \"sendMessage\": {\n if (!handlers.sendMessage) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"sendMessage is not supported by this host\",\n );\n return;\n }\n respond(req.id, {\n result: (await handlers.sendMessage(params)) ?? null,\n });\n return;\n }\n\n case \"updateModelContext\": {\n if (!handlers.updateModelContext) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"updateModelContext is not supported by this host\",\n );\n return;\n }\n respond(req.id, {\n result: (await handlers.updateModelContext(params)) ?? null,\n });\n return;\n }\n\n case \"requestDisplayMode\": {\n if (!handlers.requestDisplayMode) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n \"requestDisplayMode is not supported by this host\",\n );\n return;\n }\n const modeParams = (params ?? {}) as { mode?: unknown };\n if (\n typeof modeParams.mode !== \"string\" ||\n !VALID_DISPLAY_MODES.includes(modeParams.mode as McpAppDisplayMode)\n ) {\n errorResponse(\n req.id,\n JSONRPC_ERROR.invalidParams,\n \"requestDisplayMode requires a valid 'mode'\",\n );\n return;\n }\n respond(req.id, {\n result: await handlers.requestDisplayMode({\n mode: modeParams.mode as McpAppDisplayMode,\n }),\n });\n return;\n }\n\n default: {\n errorResponse(\n req.id,\n JSONRPC_ERROR.methodNotFound,\n `Unknown method: ${req.method}`,\n );\n }\n }\n } catch (err) {\n const error = err instanceof Error ? err : new Error(String(err));\n handlers.onError?.(error);\n errorResponse(req.id, JSONRPC_ERROR.internalError, error.message);\n }\n };\n\n const handleNotification = (note: McpAppJsonRpcNotification) => {\n switch (normalizeMethod(note.method)) {\n case \"notifications/initialized\": {\n handlers.onInitialized?.();\n return;\n }\n case \"notifications/size_changed\": {\n const p = (note.params ?? {}) as { width?: number; height?: number };\n handlers.onSizeChange?.({\n ...(typeof p.width === \"number\" ? { width: p.width } : {}),\n ...(typeof p.height === \"number\" ? { height: p.height } : {}),\n });\n return;\n }\n case \"notifications/log\": {\n handlers.onLog?.(note.params);\n return;\n }\n case \"notifications/request_teardown\": {\n handlers.onRequestTeardown?.(note.params);\n return;\n }\n case \"notifications/error\": {\n const p = (note.params ?? {}) as { message?: string };\n handlers.onError?.(\n new Error(typeof p.message === \"string\" ? p.message : \"Widget error\"),\n );\n return;\n }\n default:\n return;\n }\n };\n\n // The host applies the cross-origin guard before delegating; this only\n // validates the JSON-RPC envelope.\n const onMessage = (event: MessageEvent) => {\n if (!isJsonRpcMessage(event.data)) return;\n\n const msg = event.data;\n if (isRequest(msg)) {\n void handleRequest(msg);\n } else if (isNotification(msg)) {\n handleNotification(msg);\n }\n };\n\n return {\n onMessage,\n dispose: () => {},\n notifyToolInput: (input: unknown) => {\n post({\n jsonrpc: \"2.0\",\n method: \"notifications/tools/call/input\",\n params: { input },\n });\n post({\n jsonrpc: \"2.0\",\n method: \"ui/notifications/tool-input\",\n params: isRecord(input) ? { arguments: input } : {},\n });\n },\n notifyToolResult: (result: unknown) => {\n post({\n jsonrpc: \"2.0\",\n method: \"notifications/tools/call/result\",\n params: { result },\n });\n post({\n jsonrpc: \"2.0\",\n method: \"ui/notifications/tool-result\",\n params: isRecord(result)\n ? result\n : { content: [{ type: \"text\", text: String(result) }] },\n });\n },\n notifyHostContextChanged: (ctx: McpAppHostContext) => {\n post({\n jsonrpc: \"2.0\",\n method: \"notifications/host_context/changed\",\n params: ctx,\n });\n post({\n jsonrpc: \"2.0\",\n method: \"ui/notifications/host-context-changed\",\n params: ctx,\n });\n },\n };\n}\n"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { SandboxHostConfig } from "../sandbox-host/SandboxHost.js";
2
2
  import { McpAppMetadata, ToolCallMessagePartMcpMetadata } from "@assistant-ui/core";
3
-
4
3
  //#region src/mcp-apps/types.d.ts
5
4
  declare const MCP_APP_MIME_TYPE: "text/html;profile=mcp-app";
6
5
  declare const MCP_APP_PROTOCOL_VERSION: "0.1";
@@ -41,20 +40,24 @@ type McpAppHostInfo = {
41
40
  type McpAppsHost = {
42
41
  loadResource: (params: {
43
42
  uri: string;
43
+ serverId?: string;
44
44
  }) => Promise<McpAppResource>;
45
- callTool: (params: McpAppToolCallParams) => Promise<unknown>;
45
+ callTool: (params: McpAppToolCallParams & {
46
+ serverId?: string;
47
+ }) => Promise<unknown>;
46
48
  readResource: (params: {
47
49
  uri: string;
50
+ serverId?: string;
48
51
  }) => Promise<unknown>;
49
52
  listResources: (params?: unknown) => Promise<unknown>;
50
53
  };
51
54
  /**
52
55
  * Options for `McpAppsRemoteHost`. The host POSTs `{ method, params }` to
53
- * `url` and expects JSON responses. Method names sent:
54
- * - `mcp-apps/read-resource` (`{ uri }`) → `McpAppResource`
55
- * - `tools/call` (`{ name, arguments? }`) → tool result
56
- * - `resources/read` (`{ uri }`) → resource read result
57
- * - `resources/list` (`params?`) → list result
56
+ * `url` and expects JSON responses. Params may carry `serverId` for host-side routing. Method names sent:
57
+ * - `mcp-apps/read-resource` (`{ uri, serverId? }`) → `McpAppResource`
58
+ * - `tools/call` (`{ name, arguments?, serverId? }`) → tool result
59
+ * - `resources/read` (`{ uri, serverId? }`) → resource read result
60
+ * - `resources/list` (`{ serverId?, ...params }?`) → list result
58
61
  */
59
62
  type McpAppsRemoteHostOptions = {
60
63
  url: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","names":[],"sources":["../../src/mcp-apps/types.ts"],"mappings":";;;;cAQa,iBAAA;AAAA,cAEA,wBAAA;AAAA,KAED,iBAAA;EACV,cAAA;EACA,eAAA;EACA,YAAA;EAAA,CACC,CAAA;AAAA;AAAA,KAGS,kBAAA;EACV,aAAA;EACA,GAAA,GAAM,iBAAA;EACN,WAAA,GAAc,MAAM;EAAA,CACnB,CAAA;AAAA;AAAA,KAGS,cAAA;EACV,GAAA;EACA,QAAA,SAAiB,iBAAA;EACjB,IAAA;EACA,IAAA,GAAO,kBAAkB;AAAA;AAAA,KAGf,iBAAA;AAAA,KAEA,iBAAA;EACV,KAAA;EACA,WAAA,GAAc,iBAAA;EACd,qBAAA,GAAwB,iBAAiB;EAAA,CACxC,CAAA;AAAA;AAAA,KAGS,cAAA;EACV,IAAA;EACA,OAAO;AAAA;;AArBG;AAGZ;;;KA0BY,WAAA;EACV,YAAA,GAAe,MAAA;IAAU,GAAA;EAAA,MAAkB,OAAA,CAAQ,cAAA;EACnD,QAAA,GAAW,MAAA,EAAQ,oBAAA,KAAyB,OAAA;EAC5C,YAAA,GAAe,MAAA;IAAU,GAAA;EAAA,MAAkB,OAAA;EAC3C,aAAA,GAAgB,MAAA,eAAqB,OAAA;AAAA;;;;AAvBV;AAE7B;;;;KAgCY,wBAAA;EACV,GAAA;EACA,KAAA,UAAe,KAAA;EACf,OAAA,GACI,MAAA,0BACO,MAAA,mBAAyB,OAAA,CAAQ,MAAA;AAAA;AAAA,KAGlC,oBAAA;EACV,IAAA;EACA,SAAA,GAAY,MAAM;AAAA;AAAA,KAGR,oBAAA;EACV,YAAA;EACA,QAAA,IAAY,MAAA,EAAQ,oBAAA,KAAyB,OAAA;EAC7C,YAAA,IAAgB,MAAA;IAAU,GAAA;EAAA,MAAkB,OAAA;EAC5C,aAAA,IAAiB,MAAA,eAAqB,OAAA;EACtC,QAAA,IAAY,MAAA;IAAU,GAAA;EAAA,MAAkB,OAAA;EACxC,WAAA,IAAe,MAAA,cAAoB,OAAA;EACnC,kBAAA,IAAsB,MAAA,cAAoB,OAAA;EAC1C,kBAAA,IAAsB,MAAA;IACpB,IAAA,EAAM,iBAAA;EAAA,MACF,OAAA;IAAU,IAAA,EAAM,iBAAA;EAAA;IAAyB,IAAA,EAAM,iBAAA;EAAA;EACrD,YAAA,IAAgB,MAAA;IAAU,KAAA;IAAgB,MAAA;EAAA;EAC1C,aAAA;EACA,iBAAA,IAAqB,MAAA;EACrB,KAAA,IAAS,MAAA;EACT,OAAA,IAAW,KAAA,EAAO,KAAA;AAAA;AAAA,KAGR,mBAAA,GAAsB,iBAAiB;AAAA,KAEvC,gBAAA;EACV,GAAA,EAAK,cAAA;EACL,QAAA,EAAU,cAAA;EACV,KAAA;EACA,MAAA;EACA,OAAA,GAAU,mBAAA;EACV,QAAA,GAAW,oBAAA;EACX,QAAA,GAAW,cAAA;EACX,WAAA,GAAc,iBAAA;EApCH;;;;EAyCX,SAAA;AAAA;AAAA,KAGU,oBAAA;EACV,OAAA;EACA,EAAA;EACA,MAAA;EACA,MAAA;AAAA;AAAA,KAGU,yBAAA;EACV,OAAA;EACA,MAAA;EACA,MAAA;AAAA;AAAA,KAGU,kBAAA;EACV,IAAA;EACA,OAAA;EACA,IAAA;AAAA;AAAA,KAGU,qBAAA;EAEN,OAAA;EACA,EAAA;EACA,MAAA;EACA,KAAA;AAAA;EAGA,OAAA;EACA,EAAA;EACA,MAAA;EACA,KAAA,EAAO,kBAAkB;AAAA;AAAA,KAGnB,oBAAA,GACR,oBAAA,GACA,yBAAA,GACA,qBAAA"}
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../../src/mcp-apps/types.ts"],"mappings":";;;cAQa;cAEA;KAED;EACV;EACA;EACA;GACC;;KAGS;EACV;EACA,MAAM;EACN,cAAc;GACb;;KAGS;EACV;EACA,iBAAiB;EACjB;EACA,OAAO;;KAGG;KAEA;EACV;EACA,cAAc;EACd,wBAAwB;GACvB;;KAGS;EACV;EACA;;;;;;;KAQU;EACV,eAAe;IACb;IACA;QACI,QAAQ;EACd,WACE,QAAQ;IAAyB;QAC9B;EACL,eAAe;IACb;IACA;QACI;EACN,gBAAgB,qBAAqB;;;;;;;;;;KAW3B;EACV;EACA,eAAe;EACf,UACI,gCACO,yBAAyB,QAAQ;;KAGlC;EACV;EACA,YAAY;;KAGF;EACV;EACA,YAAY,QAAQ,yBAAyB;EAC7C,gBAAgB;IAAU;QAAkB;EAC5C,iBAAiB,qBAAqB;EACtC,YAAY;IAAU;QAAkB;EACxC,eAAe,oBAAoB;EACnC,sBAAsB,oBAAoB;EAC1C,sBAAsB;IACpB,MAAM;QACF;IAAU,MAAM;;IAAyB,MAAM;;EACrD,gBAAgB;IAAU;IAAgB;;EAC1C;EACA,qBAAqB;EACrB,SAAS;EACT,WAAW,OAAO;;KAGR,sBAAsB;KAEtB;EACV,KAAK;EACL,UAAU;EACV;EACA;EACA,UAAU;EACV,WAAW;EACX,WAAW;EACX,cAAc;;;;;EAKd;;KAGU;EACV;EACA;EACA;EACA;;KAGU;EACV;EACA;EACA;;KAGU;EACV;EACA;EACA;;KAGU;EAEN;EACA;EACA;EACA;;EAGA;EACA;EACA;EACA,OAAO;;KAGD,uBACR,uBACA,4BACA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":["McpAppMetadata","ToolCallMessagePartMcpMetadata","SandboxHostConfig","MCP_APP_MIME_TYPE","const","MCP_APP_PROTOCOL_VERSION","McpAppResourceCSP","connectDomains","resourceDomains","frameDomains","k","McpAppResourceMeta","prefersBorder","csp","permissions","Record","McpAppResource","uri","mimeType","html","meta","McpAppDisplayMode","McpAppHostContext","theme","displayMode","availableDisplayModes","McpAppHostInfo","name","version","McpAppsHost","loadResource","params","Promise","callTool","McpAppToolCallParams","readResource","listResources","McpAppsRemoteHostOptions","url","fetch","headers","arguments","McpAppBridgeHandlers","allowedTools","openLink","sendMessage","updateModelContext","requestDisplayMode","mode","onSizeChange","width","height","onInitialized","onRequestTeardown","onLog","onError","error","Error","McpAppSandboxConfig","McpAppFrameProps","app","resource","input","output","sandbox","handlers","hostInfo","hostContext","maxHeight","McpAppJsonRpcRequest","jsonrpc","id","method","McpAppJsonRpcNotification","McpAppJsonRpcError","code","message","data","McpAppJsonRpcResponse","result","McpAppJsonRpcMessage"],"sources":["../../src/mcp-apps/types.ts"],"sourcesContent":["import type {\n McpAppMetadata,\n ToolCallMessagePartMcpMetadata,\n} from \"@assistant-ui/core\";\nimport type { SandboxHostConfig } from \"../sandbox-host/SandboxHost\";\n\nexport type { McpAppMetadata, ToolCallMessagePartMcpMetadata };\n\nexport const MCP_APP_MIME_TYPE = \"text/html;profile=mcp-app\" as const;\n\nexport const MCP_APP_PROTOCOL_VERSION = \"0.1\" as const;\n\nexport type McpAppResourceCSP = {\n connectDomains?: string[];\n resourceDomains?: string[];\n frameDomains?: string[];\n [k: string]: unknown;\n};\n\nexport type McpAppResourceMeta = {\n prefersBorder?: boolean;\n csp?: McpAppResourceCSP;\n permissions?: Record<string, unknown>;\n [k: string]: unknown;\n};\n\nexport type McpAppResource = {\n uri: string;\n mimeType: typeof MCP_APP_MIME_TYPE;\n html: string;\n meta?: McpAppResourceMeta;\n};\n\nexport type McpAppDisplayMode = \"inline\" | \"fullscreen\" | \"pip\";\n\nexport type McpAppHostContext = {\n theme?: \"light\" | \"dark\";\n displayMode?: McpAppDisplayMode;\n availableDisplayModes?: McpAppDisplayMode[];\n [k: string]: unknown;\n};\n\nexport type McpAppHostInfo = {\n name: string;\n version: string;\n};\n\n/**\n * What `McpAppRenderer` needs from its host — the data-plane operations\n * the widget can request. Provided by a host resource like\n * `McpAppsRemoteHost`.\n */\nexport type McpAppsHost = {\n loadResource: (params: { uri: string }) => Promise<McpAppResource>;\n callTool: (params: McpAppToolCallParams) => Promise<unknown>;\n readResource: (params: { uri: string }) => Promise<unknown>;\n listResources: (params?: unknown) => Promise<unknown>;\n};\n\n/**\n * Options for `McpAppsRemoteHost`. The host POSTs `{ method, params }` to\n * `url` and expects JSON responses. Method names sent:\n * - `mcp-apps/read-resource` (`{ uri }`) → `McpAppResource`\n * - `tools/call` (`{ name, arguments? }`) → tool result\n * - `resources/read` (`{ uri }`) → resource read result\n * - `resources/list` (`params?`) → list result\n */\nexport type McpAppsRemoteHostOptions = {\n url: string;\n fetch?: typeof fetch;\n headers?:\n | Record<string, string>\n | (() => Record<string, string> | Promise<Record<string, string>>);\n};\n\nexport type McpAppToolCallParams = {\n name: string;\n arguments?: Record<string, unknown>;\n};\n\nexport type McpAppBridgeHandlers = {\n allowedTools?: readonly string[];\n callTool?: (params: McpAppToolCallParams) => Promise<unknown> | unknown;\n readResource?: (params: { uri: string }) => Promise<unknown> | unknown;\n listResources?: (params?: unknown) => Promise<unknown> | unknown;\n openLink?: (params: { url: string }) => Promise<unknown> | unknown;\n sendMessage?: (params: unknown) => Promise<unknown> | unknown;\n updateModelContext?: (params: unknown) => Promise<unknown> | unknown;\n requestDisplayMode?: (params: {\n mode: McpAppDisplayMode;\n }) => Promise<{ mode: McpAppDisplayMode }> | { mode: McpAppDisplayMode };\n onSizeChange?: (params: { width?: number; height?: number }) => void;\n onInitialized?: () => void;\n onRequestTeardown?: (params: unknown) => void;\n onLog?: (params: unknown) => void;\n onError?: (error: Error) => void;\n};\n\nexport type McpAppSandboxConfig = SandboxHostConfig;\n\nexport type McpAppFrameProps = {\n app: McpAppMetadata;\n resource: McpAppResource;\n input?: unknown;\n output?: unknown;\n sandbox?: McpAppSandboxConfig | undefined;\n handlers?: McpAppBridgeHandlers | undefined;\n hostInfo?: McpAppHostInfo | undefined;\n hostContext?: McpAppHostContext | undefined;\n /**\n * Upper bound (in pixels) for the auto-resize height driven by the widget's\n * `notifications/size_changed`. Defaults to 800.\n */\n maxHeight?: number | undefined;\n};\n\nexport type McpAppJsonRpcRequest = {\n jsonrpc: \"2.0\";\n id: string | number;\n method: string;\n params?: unknown;\n};\n\nexport type McpAppJsonRpcNotification = {\n jsonrpc: \"2.0\";\n method: string;\n params?: unknown;\n};\n\nexport type McpAppJsonRpcError = {\n code: number;\n message: string;\n data?: unknown;\n};\n\nexport type McpAppJsonRpcResponse =\n | {\n jsonrpc: \"2.0\";\n id: string | number;\n result: unknown;\n error?: never;\n }\n | {\n jsonrpc: \"2.0\";\n id: string | number;\n result?: never;\n error: McpAppJsonRpcError;\n };\n\nexport type McpAppJsonRpcMessage =\n | McpAppJsonRpcRequest\n | McpAppJsonRpcNotification\n | McpAppJsonRpcResponse;\n"],"mappings":";AAQA,MAAaG,oBAAoB;AAEjC,MAAaE,2BAA2B"}
1
+ {"version":3,"file":"types.js","names":["McpAppMetadata","ToolCallMessagePartMcpMetadata","SandboxHostConfig","MCP_APP_MIME_TYPE","const","MCP_APP_PROTOCOL_VERSION","McpAppResourceCSP","connectDomains","resourceDomains","frameDomains","k","McpAppResourceMeta","prefersBorder","csp","permissions","Record","McpAppResource","uri","mimeType","html","meta","McpAppDisplayMode","McpAppHostContext","theme","displayMode","availableDisplayModes","McpAppHostInfo","name","version","McpAppsHost","loadResource","params","serverId","Promise","callTool","McpAppToolCallParams","readResource","listResources","McpAppsRemoteHostOptions","url","fetch","headers","arguments","McpAppBridgeHandlers","allowedTools","openLink","sendMessage","updateModelContext","requestDisplayMode","mode","onSizeChange","width","height","onInitialized","onRequestTeardown","onLog","onError","error","Error","McpAppSandboxConfig","McpAppFrameProps","app","resource","input","output","sandbox","handlers","hostInfo","hostContext","maxHeight","McpAppJsonRpcRequest","jsonrpc","id","method","McpAppJsonRpcNotification","McpAppJsonRpcError","code","message","data","McpAppJsonRpcResponse","result","McpAppJsonRpcMessage"],"sources":["../../src/mcp-apps/types.ts"],"sourcesContent":["import type {\n McpAppMetadata,\n ToolCallMessagePartMcpMetadata,\n} from \"@assistant-ui/core\";\nimport type { SandboxHostConfig } from \"../sandbox-host/SandboxHost\";\n\nexport type { McpAppMetadata, ToolCallMessagePartMcpMetadata };\n\nexport const MCP_APP_MIME_TYPE = \"text/html;profile=mcp-app\" as const;\n\nexport const MCP_APP_PROTOCOL_VERSION = \"0.1\" as const;\n\nexport type McpAppResourceCSP = {\n connectDomains?: string[];\n resourceDomains?: string[];\n frameDomains?: string[];\n [k: string]: unknown;\n};\n\nexport type McpAppResourceMeta = {\n prefersBorder?: boolean;\n csp?: McpAppResourceCSP;\n permissions?: Record<string, unknown>;\n [k: string]: unknown;\n};\n\nexport type McpAppResource = {\n uri: string;\n mimeType: typeof MCP_APP_MIME_TYPE;\n html: string;\n meta?: McpAppResourceMeta;\n};\n\nexport type McpAppDisplayMode = \"inline\" | \"fullscreen\" | \"pip\";\n\nexport type McpAppHostContext = {\n theme?: \"light\" | \"dark\";\n displayMode?: McpAppDisplayMode;\n availableDisplayModes?: McpAppDisplayMode[];\n [k: string]: unknown;\n};\n\nexport type McpAppHostInfo = {\n name: string;\n version: string;\n};\n\n/**\n * What `McpAppRenderer` needs from its host — the data-plane operations\n * the widget can request. Provided by a host resource like\n * `McpAppsRemoteHost`.\n */\nexport type McpAppsHost = {\n loadResource: (params: {\n uri: string;\n serverId?: string;\n }) => Promise<McpAppResource>;\n callTool: (\n params: McpAppToolCallParams & { serverId?: string },\n ) => Promise<unknown>;\n readResource: (params: {\n uri: string;\n serverId?: string;\n }) => Promise<unknown>;\n listResources: (params?: unknown) => Promise<unknown>;\n};\n\n/**\n * Options for `McpAppsRemoteHost`. The host POSTs `{ method, params }` to\n * `url` and expects JSON responses. Params may carry `serverId` for host-side routing. Method names sent:\n * - `mcp-apps/read-resource` (`{ uri, serverId? }`) → `McpAppResource`\n * - `tools/call` (`{ name, arguments?, serverId? }`) → tool result\n * - `resources/read` (`{ uri, serverId? }`) → resource read result\n * - `resources/list` (`{ serverId?, ...params }?`) → list result\n */\nexport type McpAppsRemoteHostOptions = {\n url: string;\n fetch?: typeof fetch;\n headers?:\n | Record<string, string>\n | (() => Record<string, string> | Promise<Record<string, string>>);\n};\n\nexport type McpAppToolCallParams = {\n name: string;\n arguments?: Record<string, unknown>;\n};\n\nexport type McpAppBridgeHandlers = {\n allowedTools?: readonly string[];\n callTool?: (params: McpAppToolCallParams) => Promise<unknown> | unknown;\n readResource?: (params: { uri: string }) => Promise<unknown> | unknown;\n listResources?: (params?: unknown) => Promise<unknown> | unknown;\n openLink?: (params: { url: string }) => Promise<unknown> | unknown;\n sendMessage?: (params: unknown) => Promise<unknown> | unknown;\n updateModelContext?: (params: unknown) => Promise<unknown> | unknown;\n requestDisplayMode?: (params: {\n mode: McpAppDisplayMode;\n }) => Promise<{ mode: McpAppDisplayMode }> | { mode: McpAppDisplayMode };\n onSizeChange?: (params: { width?: number; height?: number }) => void;\n onInitialized?: () => void;\n onRequestTeardown?: (params: unknown) => void;\n onLog?: (params: unknown) => void;\n onError?: (error: Error) => void;\n};\n\nexport type McpAppSandboxConfig = SandboxHostConfig;\n\nexport type McpAppFrameProps = {\n app: McpAppMetadata;\n resource: McpAppResource;\n input?: unknown;\n output?: unknown;\n sandbox?: McpAppSandboxConfig | undefined;\n handlers?: McpAppBridgeHandlers | undefined;\n hostInfo?: McpAppHostInfo | undefined;\n hostContext?: McpAppHostContext | undefined;\n /**\n * Upper bound (in pixels) for the auto-resize height driven by the widget's\n * `notifications/size_changed`. Defaults to 800.\n */\n maxHeight?: number | undefined;\n};\n\nexport type McpAppJsonRpcRequest = {\n jsonrpc: \"2.0\";\n id: string | number;\n method: string;\n params?: unknown;\n};\n\nexport type McpAppJsonRpcNotification = {\n jsonrpc: \"2.0\";\n method: string;\n params?: unknown;\n};\n\nexport type McpAppJsonRpcError = {\n code: number;\n message: string;\n data?: unknown;\n};\n\nexport type McpAppJsonRpcResponse =\n | {\n jsonrpc: \"2.0\";\n id: string | number;\n result: unknown;\n error?: never;\n }\n | {\n jsonrpc: \"2.0\";\n id: string | number;\n result?: never;\n error: McpAppJsonRpcError;\n };\n\nexport type McpAppJsonRpcMessage =\n | McpAppJsonRpcRequest\n | McpAppJsonRpcNotification\n | McpAppJsonRpcResponse;\n"],"mappings":";AAQA,MAAaG,oBAAoB;AAEjC,MAAaE,2BAA2B"}
@@ -1,5 +1,4 @@
1
1
  import { McpAppMetadata, ToolCallMessagePart } from "@assistant-ui/core";
2
-
3
2
  //#region src/mcp-apps/utils.d.ts
4
3
  type ToolPartLike = Pick<ToolCallMessagePart, "mcp">;
5
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","names":[],"sources":["../../src/mcp-apps/utils.ts"],"mappings":";;;KAMK,YAAA,GAAe,IAAI,CAAC,mBAAA;;AAFG;;;;AAEgB;AAS5C;iBAAgB,qBAAA,CACd,IAAA,EAAM,YAAA,GACL,cAAc"}
1
+ {"version":3,"file":"utils.d.ts","names":[],"sources":["../../src/mcp-apps/utils.ts"],"mappings":";;KAMK,eAAe,KAAK;;;;;;;;iBAST,sBACd,MAAM,eACL"}
@@ -1,6 +1,5 @@
1
1
  import { AssistantFrameHost, Unsubscribe } from "@assistant-ui/core";
2
2
  import { RefObject } from "react";
3
-
4
3
  //#region src/model-context/frame/useAssistantFrameHost.d.ts
5
4
  type UseAssistantFrameHostOptions = {
6
5
  iframeRef: Readonly<RefObject<HTMLIFrameElement | null | undefined>>;
@@ -24,11 +23,7 @@ type UseAssistantFrameHostOptions = {
24
23
  * }
25
24
  * ```
26
25
  */
27
- declare const useAssistantFrameHost: ({
28
- iframeRef,
29
- targetOrigin,
30
- register
31
- }: UseAssistantFrameHostOptions) => void;
26
+ declare const useAssistantFrameHost: ({ iframeRef, targetOrigin, register }: UseAssistantFrameHostOptions) => void;
32
27
  //#endregion
33
28
  export { useAssistantFrameHost };
34
29
  //# sourceMappingURL=useAssistantFrameHost.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAssistantFrameHost.d.ts","names":[],"sources":["../../../src/model-context/frame/useAssistantFrameHost.ts"],"mappings":";;;;KAMK,4BAAA;EACH,SAAA,EAAW,QAAA,CAAS,SAAA,CAAU,iBAAA;EAC9B,YAAA;EACA,QAAA,GAAW,SAAA,EAAW,kBAAA,KAAuB,WAAA;AAAA;;;;;;;;;;;;;;;;;AAAW;cAoB7C,qBAAA;EAAyB,SAAA;EAAA,YAAA;EAAA;AAAA,GAInC,4BAAA"}
1
+ {"version":3,"file":"useAssistantFrameHost.d.ts","names":[],"sources":["../../../src/model-context/frame/useAssistantFrameHost.ts"],"mappings":";;;KAMK;EACH,WAAW,SAAS,UAAU;EAC9B;EACA,WAAW,WAAW,uBAAuB;;;;;;;;;;;;;;;;;;;cAoBlC,0BAAyB,WAAA,cAAA,YAInC"}
@@ -1,5 +1,4 @@
1
1
  import { ComponentType } from "react";
2
-
3
2
  //#region src/model-context/makeAssistantVisible.d.ts
4
3
  declare const makeAssistantVisible: <T extends ComponentType<any>>(Component: T, config?: {
5
4
  clickable?: boolean | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"makeAssistantVisible.d.ts","names":[],"sources":["../../src/model-context/makeAssistantVisible.tsx"],"mappings":";;;cA0Ea,oBAAA,aAAkC,aAAA,OAC7C,SAAA,EAAW,CAAA,EACX,MAAA;EAAW,SAAA;EAAiC,QAAA;AAAA,MA6CL,CAAA"}
1
+ {"version":3,"file":"makeAssistantVisible.d.ts","names":[],"sources":["../../src/model-context/makeAssistantVisible.tsx"],"mappings":";;cA0Ea,uBAAwB,UAAU,oBAC7C,WAAW,GACX;EAAW;EAAiC;MA6CL"}
@@ -1,5 +1,4 @@
1
1
  import { ActionButtonProps } from "../../utils/createActionButton.js";
2
-
3
2
  //#region src/primitives/actionBar/ActionBarCopy.d.ts
4
3
  /**
5
4
  * Hook that provides copy functionality for action bar buttons.
@@ -25,9 +24,7 @@ import { ActionButtonProps } from "../../utils/createActionButton.js";
25
24
  * }
26
25
  * ```
27
26
  */
28
- declare const useActionBarPrimitiveCopy: ({
29
- copiedDuration
30
- }?: {
27
+ declare const useActionBarPrimitiveCopy: ({ copiedDuration }?: {
31
28
  copiedDuration?: number | undefined;
32
29
  }) => (() => void) | null;
33
30
  declare namespace ActionBarPrimitiveCopy {
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarCopy.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarCopy.tsx"],"mappings":";;;;;AAGwE;;;;;;;;AAiCxD;AAehB;;;;;;;;;;;;;cAlBM,yBAAA;EAA6B;AAAA;EAGjC,cAAA;AAAA;AAAA,kBAee,sBAAA;EAAA,KACH,OAAA,GAAU,iBAAA;EAsBW;;;;EAAA,KAjBrB,KAAA,GAAQ,iBAAA,QAAyB,yBAAA;AAAA;;;;;;;;;;;;;;;cAiBlC,sBAAA,kBAAsB,yBAAA,CAAA,IAAA,CAAA,IAAA,iBAAA,eAAA,CAAA,iBAAA,oBAAA,oBAAA,CAAA,iBAAA"}
1
+ {"version":3,"file":"ActionBarCopy.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarCopy.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;cAiCM,8BAA6B;EAGjC;;kBAee;OACH,UAAU;;;;;OAKV,QAAQ,yBAAyB;;;;;;;;;;;;;;;;cAiBlC,wCAAsB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
@@ -1,5 +1,4 @@
1
1
  import { ActionButtonElement, ActionButtonProps } from "../../utils/createActionButton.js";
2
-
3
2
  //#region src/primitives/actionBar/ActionBarEdit.d.ts
4
3
  /**
5
4
  * Hook that provides edit functionality for action bar buttons.
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarEdit.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarEdit.ts"],"mappings":";;;;;AAMwC;;;;AA4BvC;AAED;;;;;;;;;;;;;;cANM,gBAAA;AAAA,kBAMW,sBAAA;EAAA,KACH,OAAA,GAAU,mBAAA;;;;;OAKV,KAAA,GAAQ,iBAAA,QAAyB,gBAAA;AAAA;;;;;;;;;;;;;;cAgBlC,sBAAA,kBAAsB,yBAAA,CAAA,IAAA,CAAA,IAAA,iBAAA,eAAA,CAAA,iBAAA,oBAAA,oBAAA,CAAA,iBAAA"}
1
+ {"version":3,"file":"ActionBarEdit.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarEdit.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;cA8BM;kBAMW;OACH,UAAU;;;;;OAKV,QAAQ,yBAAyB;;;;;;;;;;;;;;;cAgBlC,wCAAsB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
@@ -1,10 +1,6 @@
1
1
  import { ActionButtonProps } from "../../utils/createActionButton.js";
2
-
3
2
  //#region src/primitives/actionBar/ActionBarExportMarkdown.d.ts
4
- declare const useActionBarExportMarkdown: ({
5
- filename,
6
- onExport
7
- }?: {
3
+ declare const useActionBarExportMarkdown: ({ filename, onExport }?: {
8
4
  filename?: string | undefined;
9
5
  onExport?: ((content: string) => void | Promise<void>) | undefined;
10
6
  }) => (() => Promise<void>) | null;
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarExportMarkdown.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarExportMarkdown.tsx"],"mappings":";;;cAQM,0BAAA;EAA8B,QAAA;EAAA;AAAA;EAIlC,QAAA;EACA,QAAA,KAAa,OAAA,oBAA2B,OAAA;AAAA,aACpC,OAAA;AAAA,kBAgCW,gCAAA;EAAA,KACH,OAAA,GAAU,iBAAA;EAAA,KACV,KAAA,GAAQ,iBAAA,QAAyB,0BAAA;AAAA;AAAA,cAGlC,gCAAA,kBAAgC,yBAAA,CAAA,IAAA,CAAA,IAAA,iBAAA,eAAA,CAAA,iBAAA,oBAAA,oBAAA,CAAA,iBAAA;;;;;;eAtC9B,OAAA,oBAA2B,OAAA;AAAA"}
1
+ {"version":3,"file":"ActionBarExportMarkdown.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarExportMarkdown.tsx"],"mappings":";;cAQM,+BAA8B,UAAA;EAIlC;EACA,aAAa,2BAA2B;aACpC;kBAgCW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,kDAAgC,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA;;;;;;eAtC9B,2BAA2B"}
@@ -1,5 +1,4 @@
1
1
  import { ActionButtonProps } from "../../utils/createActionButton.js";
2
-
3
2
  //#region src/primitives/actionBar/ActionBarFeedbackNegative.d.ts
4
3
  declare const useActionBarFeedbackNegative: () => () => void;
5
4
  declare namespace ActionBarPrimitiveFeedbackNegative {
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarFeedbackNegative.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarFeedbackNegative.tsx"],"mappings":";;;cASM,4BAAA;AAAA,kBAKW,kCAAA;EAAA,KACH,OAAA,GAAU,iBAAA;EAAA,KACV,KAAA,GAAQ,iBAAA,QAAyB,4BAAA;AAAA;AAAA,cAGlC,kCAAA,kBAAkC,yBAAA,CAAA,IAAA,CAAA,IAAA,iBAAA,eAAA,CAAA,iBAAA,oBAAA,oBAAA,CAAA,iBAAA"}
1
+ {"version":3,"file":"ActionBarFeedbackNegative.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarFeedbackNegative.tsx"],"mappings":";;cASM;kBAKW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,oDAAkC,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
@@ -1,5 +1,4 @@
1
1
  import { ActionButtonProps } from "../../utils/createActionButton.js";
2
-
3
2
  //#region src/primitives/actionBar/ActionBarFeedbackPositive.d.ts
4
3
  declare const useActionBarFeedbackPositive: () => () => void;
5
4
  declare namespace ActionBarPrimitiveFeedbackPositive {
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarFeedbackPositive.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarFeedbackPositive.tsx"],"mappings":";;;cASM,4BAAA;AAAA,kBAKW,kCAAA;EAAA,KACH,OAAA,GAAU,iBAAA;EAAA,KACV,KAAA,GAAQ,iBAAA,QAAyB,4BAAA;AAAA;AAAA,cAGlC,kCAAA,kBAAkC,yBAAA,CAAA,IAAA,CAAA,IAAA,iBAAA,eAAA,CAAA,iBAAA,oBAAA,oBAAA,CAAA,iBAAA"}
1
+ {"version":3,"file":"ActionBarFeedbackPositive.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarFeedbackPositive.tsx"],"mappings":";;cASM;kBAKW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,oDAAkC,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarInteractionContext.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarInteractionContext.ts"],"mappings":";KAIY,gCAAA;EACV,sBAAsB;AAAA;AAAA,cAGX,2BAAA,kBAA2B,OAAA,CAAA,gCAAA;AAAA,cAG3B,8BAAA,QAA8B,gCAAA"}
1
+ {"version":3,"file":"ActionBarInteractionContext.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarInteractionContext.ts"],"mappings":";KAIY;EACV;;cAGW,6CAA2B,QAAA;cAG3B,sCAA8B"}
@@ -1,5 +1,4 @@
1
1
  import { ActionButtonElement, ActionButtonProps } from "../../utils/createActionButton.js";
2
-
3
2
  //#region src/primitives/actionBar/ActionBarReload.d.ts
4
3
  /**
5
4
  * Hook that provides reload functionality for action bar buttons.
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarReload.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarReload.ts"],"mappings":";;;;;AAMwC;;;;AA4BvC;AAED;;;;;;;;;;;;;;cANM,kBAAA;AAAA,kBAMW,wBAAA;EAAA,KACH,OAAA,GAAU,mBAAA;;;;;OAKV,KAAA,GAAQ,iBAAA,QAAyB,kBAAA;AAAA;;;;;;;;;;;;;;;cAiBlC,wBAAA,kBAAwB,yBAAA,CAAA,IAAA,CAAA,IAAA,iBAAA,eAAA,CAAA,iBAAA,oBAAA,oBAAA,CAAA,iBAAA"}
1
+ {"version":3,"file":"ActionBarReload.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarReload.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;cA8BM;kBAMW;OACH,UAAU;;;;;OAKV,QAAQ,yBAAyB;;;;;;;;;;;;;;;;cAiBlC,0CAAwB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
@@ -1,6 +1,5 @@
1
1
  import { Primitive } from "../../utils/Primitive.js";
2
2
  import { ComponentPropsWithoutRef, ComponentRef } from "react";
3
-
4
3
  //#region src/primitives/actionBar/ActionBarRoot.d.ts
5
4
  type PrimitiveDivProps = ComponentPropsWithoutRef<typeof Primitive.div>;
6
5
  declare namespace ActionBarPrimitiveRoot {
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarRoot.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarRoot.tsx"],"mappings":";;;;KAiBK,iBAAA,GAAoB,wBAAwB,QAAQ,SAAA,CAAU,GAAA;AAAA,kBAElD,sBAAA;EAAA,KACH,OAAA,GAAU,YAAA,QAAoB,SAAA,CAAU,GAAA;EAAA,KACxC,KAAA,GAAQ,iBAAA;IAJmC;;;;IASrD,eAAA;IATkE;AAAA;AAEtE;;;;;IAeI,QAAA;IAbmC;;;;;;;IAqBnC,aAAA;EAAA;AAAA;;;AAAa;AAwBjB;;;;;;;;;;;;;;;;;cAAa,sBAAA,kBAAsB,yBAAA,CAAA,IAAA,CAAA,IAAA,iBAAA,eAAA,CAAA,cAAA,oBAAA,cAAA,CAAA,cAAA"}
1
+ {"version":3,"file":"ActionBarRoot.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarRoot.tsx"],"mappings":";;;KAiBK,oBAAoB,gCAAgC,UAAU;kBAElD;OACH,UAAU,oBAAoB,UAAU;OACxC,QAAQ;;;;;IAKlB;;;;;;;;IAQA;;;;;;;;IAQA;;;;;;;;;;;;;;;;;;;;;;;cAwBS,wCAAsB,0BAAA,KAAA,qBAAA,gBAAA,kCAAA,eAAA"}
@@ -1,5 +1,4 @@
1
1
  import { ActionButtonElement, ActionButtonProps } from "../../utils/createActionButton.js";
2
-
3
2
  //#region src/primitives/actionBar/ActionBarSpeak.d.ts
4
3
  declare const useActionBarSpeak: () => (() => Promise<void>) | null;
5
4
  declare namespace ActionBarPrimitiveSpeak {
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarSpeak.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarSpeak.ts"],"mappings":";;;cASM,iBAAA,eAAiB,OAAA;AAAA,kBAMN,uBAAA;EAAA,KACH,OAAA,GAAU,mBAAA;EAAA,KACV,KAAA,GAAQ,iBAAA,QAAyB,iBAAA;AAAA;AAAA,cAGlC,uBAAA,kBAAuB,yBAAA,CAAA,IAAA,CAAA,IAAA,iBAAA,eAAA,CAAA,iBAAA,oBAAA,oBAAA,CAAA,iBAAA"}
1
+ {"version":3,"file":"ActionBarSpeak.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarSpeak.ts"],"mappings":";;cASM,gCAAiB;kBAMN;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,yCAAuB,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
@@ -1,5 +1,4 @@
1
1
  import { ActionButtonProps } from "../../utils/createActionButton.js";
2
-
3
2
  //#region src/primitives/actionBar/ActionBarStopSpeaking.d.ts
4
3
  declare const useActionBarStopSpeaking: () => (() => void) | null;
5
4
  declare namespace ActionBarPrimitiveStopSpeaking {
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarStopSpeaking.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarStopSpeaking.tsx"],"mappings":";;;cASM,wBAAA;AAAA,kBAMW,8BAAA;EAAA,KACH,OAAA,GAAU,iBAAA;EAAA,KACV,KAAA,GAAQ,iBAAA,QAAyB,wBAAA;AAAA;AAAA,cAGlC,8BAAA,kBAA8B,yBAAA,CAAA,IAAA,CAAA,IAAA,iBAAA,eAAA,CAAA,iBAAA,oBAAA,oBAAA,CAAA,iBAAA"}
1
+ {"version":3,"file":"ActionBarStopSpeaking.d.ts","names":[],"sources":["../../../src/primitives/actionBar/ActionBarStopSpeaking.tsx"],"mappings":";;cASM;kBAMW;OACH,UAAU;OACV,QAAQ,yBAAyB;;cAGlC,gDAA8B,0BAAA,KAAA,qBAAA,gBAAA,qCAAA,qBAAA"}
@@ -10,12 +10,7 @@ type UseActionBarFloatStatusProps = {
10
10
  autohideFloat?: "always" | "single-branch" | "never" | undefined;
11
11
  forceVisible?: boolean | undefined;
12
12
  };
13
- declare const useActionBarFloatStatus: ({
14
- hideWhenRunning,
15
- autohide,
16
- autohideFloat,
17
- forceVisible
18
- }: UseActionBarFloatStatusProps) => HideAndFloatStatus;
13
+ declare const useActionBarFloatStatus: ({ hideWhenRunning, autohide, autohideFloat, forceVisible }: UseActionBarFloatStatusProps) => HideAndFloatStatus;
19
14
  //#endregion
20
15
  export { HideAndFloatStatus, UseActionBarFloatStatusProps, useActionBarFloatStatus };
21
16
  //# sourceMappingURL=useActionBarFloatStatus.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useActionBarFloatStatus.d.ts","names":[],"sources":["../../../src/primitives/actionBar/useActionBarFloatStatus.ts"],"mappings":";aAIY,kBAAA;EACV,MAAA;EACA,QAAA;EACA,MAAA;AAAA;AAAA,KAGU,4BAAA;EACV,eAAA;EACA,QAAA;EACA,aAAA;EACA,YAAA;AAAA;AAAA,cAGW,uBAAA;EAA2B,eAAA;EAAA,QAAA;EAAA,aAAA;EAAA;AAAA,GAKrC,4BAAA,KAA4B,kBAAA"}
1
+ {"version":3,"file":"useActionBarFloatStatus.d.ts","names":[],"sources":["../../../src/primitives/actionBar/useActionBarFloatStatus.ts"],"mappings":";aAIY;EACV;EACA;EACA;;KAGU;EACV;EACA;EACA;EACA;;cAGW,4BAA2B,iBAAA,UAAA,eAAA,gBAKrC,iCAA4B"}
@@ -7,8 +7,6 @@ import { ActionBarPrimitiveStopSpeaking } from "./actionBar/ActionBarStopSpeakin
7
7
  import { ActionBarPrimitiveFeedbackPositive } from "./actionBar/ActionBarFeedbackPositive.js";
8
8
  import { ActionBarPrimitiveFeedbackNegative } from "./actionBar/ActionBarFeedbackNegative.js";
9
9
  import { ActionBarPrimitiveExportMarkdown } from "./actionBar/ActionBarExportMarkdown.js";
10
-
11
- //#region src/primitives/actionBar.d.ts
12
10
  declare namespace actionBar_d_exports {
13
11
  export { ActionBarPrimitiveCopy as Copy, ActionBarPrimitiveEdit as Edit, ActionBarPrimitiveExportMarkdown as ExportMarkdown, ActionBarPrimitiveFeedbackNegative as FeedbackNegative, ActionBarPrimitiveFeedbackPositive as FeedbackPositive, ActionBarPrimitiveReload as Reload, ActionBarPrimitiveRoot as Root, ActionBarPrimitiveSpeak as Speak, ActionBarPrimitiveStopSpeaking as StopSpeaking };
14
12
  }
@@ -1,7 +1,6 @@
1
1
  import { WithRenderPropProps } from "../../utils/Primitive.js";
2
2
  import { ComponentPropsWithoutRef, ComponentRef } from "react";
3
3
  import { DropdownMenu } from "radix-ui";
4
-
5
4
  //#region src/primitives/actionBarMore/ActionBarMoreContent.d.ts
6
5
  declare namespace ActionBarMorePrimitiveContent {
7
6
  type Element = ComponentRef<typeof DropdownMenu.Content>;
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarMoreContent.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreContent.tsx"],"mappings":";;;;;kBAYiB,6BAAA;EAAA,KACH,OAAA,GAAU,YAAA,QAAoB,YAAA,CAAsB,OAAA;EAAA,KACpD,KAAA,GAAQ,mBAAA,QACX,YAAA,CAAsB,OAAA;IAE7B,WAAA,GACI,wBAAA,QAAgC,YAAA,CAAsB,MAAA;EAAA;AAAA;AAAA,cAKjD,6BAAA,kBAA6B,yBAAA,CAAA,IAAA,CAAA,YAAA,CAAA,wBAAA,mBAAA,aAAA,CAAA,cAAA;;;gBALlC,wBAAA,QAAgC,YAAA,CAAsB,MAAA;AAAA"}
1
+ {"version":3,"file":"ActionBarMoreContent.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreContent.tsx"],"mappings":";;;;kBAYiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BACX,aAAsB;IAE7B,cACI,gCAAgC,aAAsB;;;cAKjD,+CAA6B,0BAAA,KAAA,aAAA,2CAAA,cAAA;;;gBALlC,gCAAgC,aAAsB"}
@@ -1,7 +1,6 @@
1
1
  import { WithRenderPropProps } from "../../utils/Primitive.js";
2
2
  import { ComponentRef } from "react";
3
3
  import { DropdownMenu } from "radix-ui";
4
-
5
4
  //#region src/primitives/actionBarMore/ActionBarMoreItem.d.ts
6
5
  declare namespace ActionBarMorePrimitiveItem {
7
6
  type Element = ComponentRef<typeof DropdownMenu.Item>;
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarMoreItem.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreItem.tsx"],"mappings":";;;;;kBAQiB,0BAAA;EAAA,KACH,OAAA,GAAU,YAAA,QAAoB,YAAA,CAAsB,IAAA;EAAA,KACpD,KAAA,GAAQ,mBAAA,QAA2B,YAAA,CAAsB,IAAA;AAAA;AAAA,cAG1D,0BAAA,kBAA0B,yBAAA,CAAA,IAAA,CAAA,YAAA,CAAA,qBAAA,mBAAA,aAAA,CAAA,cAAA"}
1
+ {"version":3,"file":"ActionBarMoreItem.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreItem.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BAA2B,aAAsB;;cAG1D,4CAA0B,0BAAA,KAAA,aAAA,wCAAA,cAAA"}
@@ -1,6 +1,5 @@
1
1
  import { FC } from "react";
2
2
  import { DropdownMenu } from "radix-ui";
3
-
4
3
  //#region src/primitives/actionBarMore/ActionBarMoreRoot.d.ts
5
4
  declare namespace ActionBarMorePrimitiveRoot {
6
5
  type Props = DropdownMenu.DropdownMenuProps;
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarMoreRoot.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreRoot.tsx"],"mappings":";;;;kBAOiB,0BAAA;EAAA,KACH,KAAA,GAAQ,YAAA,CAAsB,iBAAiB;AAAA;AAAA,cAGhD,0BAAA,EAA4B,EAAE,CACzC,0BAAA,CAA2B,KAAA"}
1
+ {"version":3,"file":"ActionBarMoreRoot.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreRoot.tsx"],"mappings":";;;kBAOiB;OACH,QAAQ,aAAsB;;cAG/B,4BAA4B,GACvC,2BAA2B"}
@@ -1,7 +1,6 @@
1
1
  import { WithRenderPropProps } from "../../utils/Primitive.js";
2
2
  import { ComponentRef } from "react";
3
3
  import { DropdownMenu } from "radix-ui";
4
-
5
4
  //#region src/primitives/actionBarMore/ActionBarMoreSeparator.d.ts
6
5
  declare namespace ActionBarMorePrimitiveSeparator {
7
6
  type Element = ComponentRef<typeof DropdownMenu.Separator>;
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarMoreSeparator.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreSeparator.tsx"],"mappings":";;;;;kBAQiB,+BAAA;EAAA,KACH,OAAA,GAAU,YAAA,QAAoB,YAAA,CAAsB,SAAA;EAAA,KACpD,KAAA,GAAQ,mBAAA,QACX,YAAA,CAAsB,SAAA;AAAA;AAAA,cAIpB,+BAAA,kBAA+B,yBAAA,CAAA,IAAA,CAAA,YAAA,CAAA,0BAAA,mBAAA,aAAA,CAAA,cAAA"}
1
+ {"version":3,"file":"ActionBarMoreSeparator.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreSeparator.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BACX,aAAsB;;cAIpB,iDAA+B,0BAAA,KAAA,aAAA,6CAAA,cAAA"}
@@ -1,7 +1,6 @@
1
1
  import { WithRenderPropProps } from "../../utils/Primitive.js";
2
2
  import { ComponentRef } from "react";
3
3
  import { DropdownMenu } from "radix-ui";
4
-
5
4
  //#region src/primitives/actionBarMore/ActionBarMoreTrigger.d.ts
6
5
  declare namespace ActionBarMorePrimitiveTrigger {
7
6
  type Element = ComponentRef<typeof DropdownMenu.Trigger>;
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBarMoreTrigger.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreTrigger.tsx"],"mappings":";;;;;kBAQiB,6BAAA;EAAA,KACH,OAAA,GAAU,YAAA,QAAoB,YAAA,CAAsB,OAAA;EAAA,KACpD,KAAA,GAAQ,mBAAA,QAA2B,YAAA,CAAsB,OAAA;AAAA;AAAA,cAG1D,6BAAA,kBAA6B,yBAAA,CAAA,IAAA,CAAA,YAAA,CAAA,wBAAA,mBAAA,aAAA,CAAA,iBAAA"}
1
+ {"version":3,"file":"ActionBarMoreTrigger.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/ActionBarMoreTrigger.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,aAAsB;OACpD,QAAQ,2BAA2B,aAAsB;;cAG1D,+CAA6B,0BAAA,KAAA,aAAA,2CAAA,cAAA"}
@@ -1,6 +1,5 @@
1
1
  import { DropdownMenu } from "radix-ui";
2
2
  import { Scope } from "@radix-ui/react-context";
3
-
4
3
  //#region src/primitives/actionBarMore/scope.d.ts
5
4
  declare const useDropdownMenuScope: ReturnType<typeof DropdownMenu.createDropdownMenuScope>;
6
5
  type ScopedProps<P> = P & {
@@ -1 +1 @@
1
- {"version":3,"file":"scope.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/scope.ts"],"mappings":";;;;cAGa,oBAAA,EAAsB,UAAU,QACpC,YAAA,CAAsB,uBAAA;AAAA,KAGnB,WAAA,MAAiB,CAAA;EAAM,oBAAA,GAAuB,KAAK;AAAA"}
1
+ {"version":3,"file":"scope.d.ts","names":[],"sources":["../../../src/primitives/actionBarMore/scope.ts"],"mappings":";;;cAGa,sBAAsB,kBAC1B,aAAsB;KAGnB,YAAY,KAAK;EAAM,uBAAuB"}
@@ -3,8 +3,6 @@ import { ActionBarMorePrimitiveTrigger } from "./actionBarMore/ActionBarMoreTrig
3
3
  import { ActionBarMorePrimitiveContent } from "./actionBarMore/ActionBarMoreContent.js";
4
4
  import { ActionBarMorePrimitiveItem } from "./actionBarMore/ActionBarMoreItem.js";
5
5
  import { ActionBarMorePrimitiveSeparator } from "./actionBarMore/ActionBarMoreSeparator.js";
6
-
7
- //#region src/primitives/actionBarMore.d.ts
8
6
  declare namespace actionBarMore_d_exports {
9
7
  export { ActionBarMorePrimitiveContent as Content, ActionBarMorePrimitiveItem as Item, ActionBarMorePrimitiveRoot as Root, ActionBarMorePrimitiveSeparator as Separator, ActionBarMorePrimitiveTrigger as Trigger };
10
8
  }
@@ -1,12 +1,14 @@
1
- import { ComponentPropsWithoutRef, ComponentRef } from "react";
1
+ import { WithRenderPropProps } from "../../utils/Primitive.js";
2
+ import { ComponentRef } from "react";
2
3
  import { Popover } from "radix-ui";
3
-
4
4
  //#region src/primitives/assistantModal/AssistantModalAnchor.d.ts
5
5
  declare namespace AssistantModalPrimitiveAnchor {
6
6
  type Element = ComponentRef<typeof Popover.Anchor>;
7
- type Props = ComponentPropsWithoutRef<typeof Popover.Anchor>;
7
+ type Props = WithRenderPropProps<typeof Popover.Anchor>;
8
8
  }
9
- declare const AssistantModalPrimitiveAnchor: import("react").ForwardRefExoticComponent<Omit<Popover.PopoverAnchorProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
9
+ declare const AssistantModalPrimitiveAnchor: import("react").ForwardRefExoticComponent<Omit<Popover.PopoverAnchorProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & {
10
+ render?: import("react").ReactElement | undefined;
11
+ } & import("react").RefAttributes<HTMLDivElement>>;
10
12
  //#endregion
11
13
  export { AssistantModalPrimitiveAnchor };
12
14
  //# sourceMappingURL=AssistantModalAnchor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AssistantModalAnchor.d.ts","names":[],"sources":["../../../src/primitives/assistantModal/AssistantModalAnchor.tsx"],"mappings":";;;;kBAUiB,6BAAA;EAAA,KACH,OAAA,GAAU,YAAA,QAAoB,OAAA,CAAiB,MAAA;EAAA,KAC/C,KAAA,GAAQ,wBAAA,QAAgC,OAAA,CAAiB,MAAA;AAAA;AAAA,cAG1D,6BAAA,kBAA6B,yBAAA,CAAA,IAAA,CAAA,OAAA,CAAA,kBAAA,mBAAA,aAAA,CAAA,cAAA,4BAAA,aAAA,CAAA,cAAA"}
1
+ {"version":3,"file":"AssistantModalAnchor.d.ts","names":[],"sources":["../../../src/primitives/assistantModal/AssistantModalAnchor.tsx"],"mappings":";;;;kBAQiB;OACH,UAAU,oBAAoB,QAAiB;OAC/C,QAAQ,2BAA2B,QAAiB;;cAGrD,+CAA6B,0BAAA,KAAA,QAAA,qCAAA,cAAA"}
@@ -1,9 +1,9 @@
1
1
  "use client";
2
2
  import { usePopoverScope } from "./scope.js";
3
+ import { PopoverRenderAnchor } from "./popoverRenderPrimitives.js";
3
4
  import { c } from "@assistant-ui/tap/react-shim/compiler-runtime";
4
5
  import { forwardRef } from "@assistant-ui/tap/react-shim";
5
6
  import { jsx } from "react/jsx-runtime";
6
- import { Popover } from "radix-ui";
7
7
  //#region src/primitives/assistantModal/AssistantModalAnchor.tsx
8
8
  const AssistantModalPrimitiveAnchor = forwardRef((t0, ref) => {
9
9
  const $ = c(7);
@@ -21,7 +21,7 @@ const AssistantModalPrimitiveAnchor = forwardRef((t0, ref) => {
21
21
  const scope = usePopoverScope(__scopeAssistantModal);
22
22
  let t1;
23
23
  if ($[3] !== ref || $[4] !== rest || $[5] !== scope) {
24
- t1 = /* @__PURE__ */ jsx(Popover.Anchor, {
24
+ t1 = /* @__PURE__ */ jsx(PopoverRenderAnchor, {
25
25
  ...scope,
26
26
  ...rest,
27
27
  ref