@jini-ai/ui 0.1.2 → 0.3.1

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 (1402) hide show
  1. package/README.md +108 -18
  2. package/dist/browser/useDismissOnOutsideOrEscape.d.ts.map +1 -1
  3. package/dist/browser/useDismissOnOutsideOrEscape.js +3 -2
  4. package/dist/browser/useDismissOnOutsideOrEscape.js.map +1 -1
  5. package/dist/browser/useGlobalKeydown.js +1 -1
  6. package/dist/browser/useGlobalKeydown.js.map +1 -1
  7. package/dist/core.d.ts +69 -0
  8. package/dist/core.d.ts.map +1 -0
  9. package/dist/core.js +66 -0
  10. package/dist/core.js.map +1 -0
  11. package/dist/features/a2ui/catalog-from-registry.d.ts +30 -0
  12. package/dist/features/a2ui/catalog-from-registry.d.ts.map +1 -0
  13. package/dist/features/a2ui/catalog-from-registry.js +25 -0
  14. package/dist/features/a2ui/catalog-from-registry.js.map +1 -0
  15. package/dist/features/a2ui/index.d.ts +5 -0
  16. package/dist/features/a2ui/index.d.ts.map +1 -0
  17. package/dist/features/a2ui/index.js +5 -0
  18. package/dist/features/a2ui/index.js.map +1 -0
  19. package/dist/features/a2ui/protocol.d.ts +7 -0
  20. package/dist/features/a2ui/protocol.d.ts.map +1 -0
  21. package/dist/features/a2ui/protocol.js +7 -0
  22. package/dist/features/a2ui/protocol.js.map +1 -0
  23. package/dist/features/a2ui/renderer.d.ts +17 -0
  24. package/dist/features/a2ui/renderer.d.ts.map +1 -0
  25. package/dist/features/a2ui/renderer.js +80 -0
  26. package/dist/features/a2ui/renderer.js.map +1 -0
  27. package/dist/features/a2ui/use-a2ui-surface.d.ts +13 -0
  28. package/dist/features/a2ui/use-a2ui-surface.d.ts.map +1 -0
  29. package/dist/features/a2ui/use-a2ui-surface.js +17 -0
  30. package/dist/features/a2ui/use-a2ui-surface.js.map +1 -0
  31. package/dist/features/about/index.d.ts +7 -0
  32. package/dist/features/about/index.d.ts.map +1 -0
  33. package/dist/features/about/index.js +4 -0
  34. package/dist/features/about/index.js.map +1 -0
  35. package/dist/features/about/react/components/AboutTab.d.ts +82 -0
  36. package/dist/features/about/react/components/AboutTab.d.ts.map +1 -0
  37. package/dist/features/about/react/components/AboutTab.js +70 -0
  38. package/dist/features/about/react/components/AboutTab.js.map +1 -0
  39. package/dist/features/about/react/hooks/useSilentUpdatesToggle.d.ts +44 -0
  40. package/dist/features/about/react/hooks/useSilentUpdatesToggle.d.ts.map +1 -0
  41. package/dist/features/about/react/hooks/useSilentUpdatesToggle.js +44 -0
  42. package/dist/features/about/react/hooks/useSilentUpdatesToggle.js.map +1 -0
  43. package/dist/features/about/rules.d.ts +105 -0
  44. package/dist/features/about/rules.d.ts.map +1 -0
  45. package/dist/features/about/rules.js +240 -0
  46. package/dist/features/about/rules.js.map +1 -0
  47. package/dist/features/about/types.d.ts +110 -0
  48. package/dist/features/about/types.d.ts.map +1 -0
  49. package/dist/features/about/types.js +20 -0
  50. package/dist/features/about/types.js.map +1 -0
  51. package/dist/features/appearance/constants.d.ts +16 -0
  52. package/dist/features/appearance/constants.d.ts.map +1 -0
  53. package/dist/features/appearance/constants.js +23 -0
  54. package/dist/features/appearance/constants.js.map +1 -0
  55. package/dist/features/appearance/index.d.ts +5 -0
  56. package/dist/features/appearance/index.d.ts.map +1 -0
  57. package/dist/features/appearance/index.js.map +1 -0
  58. package/dist/features/appearance/react/components/AppearanceTab.d.ts.map +1 -0
  59. package/dist/features/appearance/react/components/AppearanceTab.js +31 -0
  60. package/dist/features/appearance/react/components/AppearanceTab.js.map +1 -0
  61. package/dist/features/appearance/rules.d.ts +31 -0
  62. package/dist/features/appearance/rules.d.ts.map +1 -0
  63. package/dist/features/appearance/rules.js +45 -0
  64. package/dist/features/appearance/rules.js.map +1 -0
  65. package/dist/features/appearance/types.d.ts +12 -0
  66. package/dist/features/appearance/types.d.ts.map +1 -0
  67. package/dist/features/appearance/types.js +8 -0
  68. package/dist/features/appearance/types.js.map +1 -0
  69. package/dist/features/asset-grid/react/components/AssetGrid.d.ts.map +1 -1
  70. package/dist/features/asset-grid/react/components/AssetGrid.js +44 -9
  71. package/dist/features/asset-grid/react/components/AssetGrid.js.map +1 -1
  72. package/dist/features/asset-grid/react/hooks/useAssetGridLiveUpdates.d.ts.map +1 -1
  73. package/dist/features/asset-grid/react/hooks/useAssetGridLiveUpdates.js +39 -2
  74. package/dist/features/asset-grid/react/hooks/useAssetGridLiveUpdates.js.map +1 -1
  75. package/dist/features/asset-tree-browser/rules.d.ts +1 -0
  76. package/dist/features/asset-tree-browser/rules.d.ts.map +1 -1
  77. package/dist/features/asset-tree-browser/rules.js.map +1 -1
  78. package/dist/features/connectors/ConnectorsBrowser.d.ts.map +1 -1
  79. package/dist/features/connectors/ConnectorsBrowser.js +2 -2
  80. package/dist/features/connectors/ConnectorsBrowser.js.map +1 -1
  81. package/dist/features/connectors/components/ConnectorCard.d.ts.map +1 -1
  82. package/dist/features/connectors/components/ConnectorCard.js.map +1 -1
  83. package/dist/features/connectors/components/ConnectorDetailDrawer.d.ts.map +1 -1
  84. package/dist/features/connectors/components/ConnectorDetailDrawer.js.map +1 -1
  85. package/dist/features/connectors/dependencies.d.ts +1 -1
  86. package/dist/features/connectors/dependencies.d.ts.map +1 -1
  87. package/dist/features/connectors/dependencies.js +1 -2
  88. package/dist/features/connectors/dependencies.js.map +1 -1
  89. package/dist/features/connectors/hooks/useConnectorAuthorization.d.ts +38 -0
  90. package/dist/features/connectors/hooks/useConnectorAuthorization.d.ts.map +1 -1
  91. package/dist/features/connectors/hooks/useConnectorAuthorization.js +76 -63
  92. package/dist/features/connectors/hooks/useConnectorAuthorization.js.map +1 -1
  93. package/dist/features/connectors/hooks/useConnectorCatalog.d.ts.map +1 -1
  94. package/dist/features/connectors/hooks/useConnectorCatalog.js.map +1 -1
  95. package/dist/features/connectors/hooks/useConnectorDetail.d.ts.map +1 -1
  96. package/dist/features/connectors/hooks/useConnectorDetail.js +1 -1
  97. package/dist/features/connectors/hooks/useConnectorDetail.js.map +1 -1
  98. package/dist/features/connectors/index.d.ts +4 -4
  99. package/dist/features/connectors/index.d.ts.map +1 -1
  100. package/dist/features/connectors/index.js +2 -2
  101. package/dist/features/connectors/index.js.map +1 -1
  102. package/dist/features/execution/constants.d.ts +55 -0
  103. package/dist/features/execution/constants.d.ts.map +1 -0
  104. package/dist/features/execution/constants.js +187 -0
  105. package/dist/features/execution/constants.js.map +1 -0
  106. package/dist/features/execution/dependencies.d.ts +41 -0
  107. package/dist/features/execution/dependencies.d.ts.map +1 -0
  108. package/dist/features/execution/dependencies.js +64 -0
  109. package/dist/features/execution/dependencies.js.map +1 -0
  110. package/dist/features/execution/index.d.ts +24 -0
  111. package/dist/features/execution/index.d.ts.map +1 -0
  112. package/dist/features/execution/index.js +13 -0
  113. package/dist/features/execution/index.js.map +1 -0
  114. package/dist/features/execution/ports.d.ts +71 -0
  115. package/dist/features/execution/ports.d.ts.map +1 -0
  116. package/dist/features/execution/ports.js.map +1 -0
  117. package/dist/features/execution/react/components/AgentCliEnvFields.d.ts +26 -0
  118. package/dist/features/execution/react/components/AgentCliEnvFields.d.ts.map +1 -0
  119. package/dist/features/execution/react/components/AgentCliEnvFields.js +25 -0
  120. package/dist/features/execution/react/components/AgentCliEnvFields.js.map +1 -0
  121. package/dist/features/execution/react/components/AgentDiagnosticRow.d.ts +32 -0
  122. package/dist/features/execution/react/components/AgentDiagnosticRow.d.ts.map +1 -0
  123. package/dist/features/execution/react/components/AgentDiagnosticRow.js +61 -0
  124. package/dist/features/execution/react/components/AgentDiagnosticRow.js.map +1 -0
  125. package/dist/features/execution/react/components/ByokProviderForm.d.ts +73 -0
  126. package/dist/features/execution/react/components/ByokProviderForm.d.ts.map +1 -0
  127. package/dist/features/execution/react/components/ByokProviderForm.js +88 -0
  128. package/dist/features/execution/react/components/ByokProviderForm.js.map +1 -0
  129. package/dist/features/execution/react/components/ExecutionTab.d.ts +60 -0
  130. package/dist/features/execution/react/components/ExecutionTab.d.ts.map +1 -0
  131. package/dist/features/execution/react/components/ExecutionTab.js +91 -0
  132. package/dist/features/execution/react/components/ExecutionTab.js.map +1 -0
  133. package/dist/features/execution/react/components/LocalCliAgentCard.d.ts +40 -0
  134. package/dist/features/execution/react/components/LocalCliAgentCard.d.ts.map +1 -0
  135. package/dist/features/execution/react/components/LocalCliAgentCard.js +121 -0
  136. package/dist/features/execution/react/components/LocalCliAgentCard.js.map +1 -0
  137. package/dist/features/execution/react/components/LocalCliAgentList.d.ts +37 -0
  138. package/dist/features/execution/react/components/LocalCliAgentList.d.ts.map +1 -0
  139. package/dist/features/execution/react/components/LocalCliAgentList.js +18 -0
  140. package/dist/features/execution/react/components/LocalCliAgentList.js.map +1 -0
  141. package/dist/features/execution/react/components/ProviderChipGroup.d.ts +21 -0
  142. package/dist/features/execution/react/components/ProviderChipGroup.d.ts.map +1 -0
  143. package/dist/features/execution/react/components/ProviderChipGroup.js +22 -0
  144. package/dist/features/execution/react/components/ProviderChipGroup.js.map +1 -0
  145. package/dist/features/execution/react/components/SearchableModelSelect.d.ts +45 -0
  146. package/dist/features/execution/react/components/SearchableModelSelect.d.ts.map +1 -0
  147. package/dist/features/execution/react/components/SearchableModelSelect.js +55 -0
  148. package/dist/features/execution/react/components/SearchableModelSelect.js.map +1 -0
  149. package/dist/features/execution/react/hooks/useExecutionTab.d.ts +38 -0
  150. package/dist/features/execution/react/hooks/useExecutionTab.d.ts.map +1 -0
  151. package/dist/features/execution/react/hooks/useExecutionTab.js +158 -0
  152. package/dist/features/execution/react/hooks/useExecutionTab.js.map +1 -0
  153. package/dist/features/execution/rules.d.ts +218 -0
  154. package/dist/features/execution/rules.d.ts.map +1 -0
  155. package/dist/features/execution/rules.js +414 -0
  156. package/dist/features/execution/rules.js.map +1 -0
  157. package/dist/features/execution/types.d.ts +410 -0
  158. package/dist/features/execution/types.d.ts.map +1 -0
  159. package/dist/features/execution/types.js +19 -0
  160. package/dist/features/execution/types.js.map +1 -0
  161. package/dist/features/external-mcp/constants.d.ts +3 -0
  162. package/dist/features/external-mcp/constants.d.ts.map +1 -0
  163. package/dist/features/external-mcp/constants.js +22 -0
  164. package/dist/features/external-mcp/constants.js.map +1 -0
  165. package/dist/features/external-mcp/index.d.ts +4 -0
  166. package/dist/features/external-mcp/index.d.ts.map +1 -0
  167. package/dist/features/external-mcp/index.js +3 -0
  168. package/dist/features/external-mcp/index.js.map +1 -0
  169. package/dist/features/external-mcp/react/components/ExternalMcpTab.d.ts +23 -0
  170. package/dist/features/external-mcp/react/components/ExternalMcpTab.d.ts.map +1 -0
  171. package/dist/features/external-mcp/react/components/ExternalMcpTab.js +53 -0
  172. package/dist/features/external-mcp/react/components/ExternalMcpTab.js.map +1 -0
  173. package/dist/features/html-editor/canvas-content-wrapper.d.ts +16 -0
  174. package/dist/features/html-editor/canvas-content-wrapper.d.ts.map +1 -0
  175. package/dist/features/html-editor/canvas-content-wrapper.js +86 -0
  176. package/dist/features/html-editor/canvas-content-wrapper.js.map +1 -0
  177. package/dist/features/html-editor/canvas-embed-placeholders.d.ts +65 -0
  178. package/dist/features/html-editor/canvas-embed-placeholders.d.ts.map +1 -0
  179. package/dist/features/html-editor/canvas-embed-placeholders.js +190 -0
  180. package/dist/features/html-editor/canvas-embed-placeholders.js.map +1 -0
  181. package/dist/features/html-editor/canvas-style.d.ts +73 -0
  182. package/dist/features/html-editor/canvas-style.d.ts.map +1 -0
  183. package/dist/features/html-editor/canvas-style.js +64 -0
  184. package/dist/features/html-editor/canvas-style.js.map +1 -0
  185. package/dist/features/html-editor/css.d.ts +22 -0
  186. package/dist/features/html-editor/css.d.ts.map +1 -0
  187. package/dist/features/html-editor/css.js +140 -0
  188. package/dist/features/html-editor/css.js.map +1 -0
  189. package/dist/features/html-editor/dom.d.ts +15 -0
  190. package/dist/features/html-editor/dom.d.ts.map +1 -0
  191. package/dist/features/html-editor/dom.js +20 -0
  192. package/dist/features/html-editor/dom.js.map +1 -0
  193. package/dist/features/html-editor/index.d.ts +8 -0
  194. package/dist/features/html-editor/index.d.ts.map +1 -0
  195. package/dist/features/html-editor/index.js +5 -0
  196. package/dist/features/html-editor/index.js.map +1 -0
  197. package/dist/features/html-editor/react/components/InteractiveHtmlEditor.d.ts +94 -0
  198. package/dist/features/html-editor/react/components/InteractiveHtmlEditor.d.ts.map +1 -0
  199. package/dist/features/html-editor/react/components/InteractiveHtmlEditor.js +15 -0
  200. package/dist/features/html-editor/react/components/InteractiveHtmlEditor.js.map +1 -0
  201. package/dist/features/html-editor/react/hooks/useInteractiveHtmlEditor.d.ts +33 -0
  202. package/dist/features/html-editor/react/hooks/useInteractiveHtmlEditor.d.ts.map +1 -0
  203. package/dist/features/html-editor/react/hooks/useInteractiveHtmlEditor.js +170 -0
  204. package/dist/features/html-editor/react/hooks/useInteractiveHtmlEditor.js.map +1 -0
  205. package/dist/features/html-viewer/dependencies.d.ts +1 -1
  206. package/dist/features/html-viewer/dependencies.d.ts.map +1 -1
  207. package/dist/features/html-viewer/dependencies.js +2 -2
  208. package/dist/features/html-viewer/dependencies.js.map +1 -1
  209. package/dist/features/html-viewer/react/hooks/useDeckNavigation.d.ts +2 -2
  210. package/dist/features/html-viewer/react/hooks/useDeckNavigation.js +3 -3
  211. package/dist/features/html-viewer/react/hooks/useDeckNavigation.js.map +1 -1
  212. package/dist/features/i18n/context.d.ts +35 -2
  213. package/dist/features/i18n/context.d.ts.map +1 -1
  214. package/dist/features/i18n/context.js +1 -1
  215. package/dist/features/i18n/context.js.map +1 -1
  216. package/dist/features/i18n/dictionaries/index.d.ts +63 -0
  217. package/dist/features/i18n/dictionaries/index.d.ts.map +1 -0
  218. package/dist/features/i18n/dictionaries/index.js +70 -0
  219. package/dist/features/i18n/dictionaries/index.js.map +1 -0
  220. package/dist/features/i18n/dictionaries/settings-dialog.ar.d.ts +8 -0
  221. package/dist/features/i18n/dictionaries/settings-dialog.ar.d.ts.map +1 -0
  222. package/dist/features/i18n/dictionaries/settings-dialog.ar.js +239 -0
  223. package/dist/features/i18n/dictionaries/settings-dialog.ar.js.map +1 -0
  224. package/dist/features/i18n/dictionaries/settings-dialog.bn.d.ts +8 -0
  225. package/dist/features/i18n/dictionaries/settings-dialog.bn.d.ts.map +1 -0
  226. package/dist/features/i18n/dictionaries/settings-dialog.bn.js +239 -0
  227. package/dist/features/i18n/dictionaries/settings-dialog.bn.js.map +1 -0
  228. package/dist/features/i18n/dictionaries/settings-dialog.de.d.ts +17 -0
  229. package/dist/features/i18n/dictionaries/settings-dialog.de.d.ts.map +1 -0
  230. package/dist/features/i18n/dictionaries/settings-dialog.de.js +239 -0
  231. package/dist/features/i18n/dictionaries/settings-dialog.de.js.map +1 -0
  232. package/dist/features/i18n/dictionaries/settings-dialog.en.d.ts +33 -0
  233. package/dist/features/i18n/dictionaries/settings-dialog.en.d.ts.map +1 -0
  234. package/dist/features/i18n/dictionaries/settings-dialog.en.js +239 -0
  235. package/dist/features/i18n/dictionaries/settings-dialog.en.js.map +1 -0
  236. package/dist/features/i18n/dictionaries/settings-dialog.es.d.ts +17 -0
  237. package/dist/features/i18n/dictionaries/settings-dialog.es.d.ts.map +1 -0
  238. package/dist/features/i18n/dictionaries/settings-dialog.es.js +239 -0
  239. package/dist/features/i18n/dictionaries/settings-dialog.es.js.map +1 -0
  240. package/dist/features/i18n/dictionaries/settings-dialog.fa.d.ts +8 -0
  241. package/dist/features/i18n/dictionaries/settings-dialog.fa.d.ts.map +1 -0
  242. package/dist/features/i18n/dictionaries/settings-dialog.fa.js +239 -0
  243. package/dist/features/i18n/dictionaries/settings-dialog.fa.js.map +1 -0
  244. package/dist/features/i18n/dictionaries/settings-dialog.fr.d.ts +17 -0
  245. package/dist/features/i18n/dictionaries/settings-dialog.fr.d.ts.map +1 -0
  246. package/dist/features/i18n/dictionaries/settings-dialog.fr.js +239 -0
  247. package/dist/features/i18n/dictionaries/settings-dialog.fr.js.map +1 -0
  248. package/dist/features/i18n/dictionaries/settings-dialog.hi.d.ts +8 -0
  249. package/dist/features/i18n/dictionaries/settings-dialog.hi.d.ts.map +1 -0
  250. package/dist/features/i18n/dictionaries/settings-dialog.hi.js +239 -0
  251. package/dist/features/i18n/dictionaries/settings-dialog.hi.js.map +1 -0
  252. package/dist/features/i18n/dictionaries/settings-dialog.hu.d.ts +8 -0
  253. package/dist/features/i18n/dictionaries/settings-dialog.hu.d.ts.map +1 -0
  254. package/dist/features/i18n/dictionaries/settings-dialog.hu.js +239 -0
  255. package/dist/features/i18n/dictionaries/settings-dialog.hu.js.map +1 -0
  256. package/dist/features/i18n/dictionaries/settings-dialog.id.d.ts +17 -0
  257. package/dist/features/i18n/dictionaries/settings-dialog.id.d.ts.map +1 -0
  258. package/dist/features/i18n/dictionaries/settings-dialog.id.js +239 -0
  259. package/dist/features/i18n/dictionaries/settings-dialog.id.js.map +1 -0
  260. package/dist/features/i18n/dictionaries/settings-dialog.it.d.ts +17 -0
  261. package/dist/features/i18n/dictionaries/settings-dialog.it.d.ts.map +1 -0
  262. package/dist/features/i18n/dictionaries/settings-dialog.it.js +239 -0
  263. package/dist/features/i18n/dictionaries/settings-dialog.it.js.map +1 -0
  264. package/dist/features/i18n/dictionaries/settings-dialog.ja.d.ts +8 -0
  265. package/dist/features/i18n/dictionaries/settings-dialog.ja.d.ts.map +1 -0
  266. package/dist/features/i18n/dictionaries/settings-dialog.ja.js +239 -0
  267. package/dist/features/i18n/dictionaries/settings-dialog.ja.js.map +1 -0
  268. package/dist/features/i18n/dictionaries/settings-dialog.ko.d.ts +8 -0
  269. package/dist/features/i18n/dictionaries/settings-dialog.ko.d.ts.map +1 -0
  270. package/dist/features/i18n/dictionaries/settings-dialog.ko.js +239 -0
  271. package/dist/features/i18n/dictionaries/settings-dialog.ko.js.map +1 -0
  272. package/dist/features/i18n/dictionaries/settings-dialog.pl.d.ts +8 -0
  273. package/dist/features/i18n/dictionaries/settings-dialog.pl.d.ts.map +1 -0
  274. package/dist/features/i18n/dictionaries/settings-dialog.pl.js +239 -0
  275. package/dist/features/i18n/dictionaries/settings-dialog.pl.js.map +1 -0
  276. package/dist/features/i18n/dictionaries/settings-dialog.pt-BR.d.ts +8 -0
  277. package/dist/features/i18n/dictionaries/settings-dialog.pt-BR.d.ts.map +1 -0
  278. package/dist/features/i18n/dictionaries/settings-dialog.pt-BR.js +239 -0
  279. package/dist/features/i18n/dictionaries/settings-dialog.pt-BR.js.map +1 -0
  280. package/dist/features/i18n/dictionaries/settings-dialog.ru.d.ts +8 -0
  281. package/dist/features/i18n/dictionaries/settings-dialog.ru.d.ts.map +1 -0
  282. package/dist/features/i18n/dictionaries/settings-dialog.ru.js +239 -0
  283. package/dist/features/i18n/dictionaries/settings-dialog.ru.js.map +1 -0
  284. package/dist/features/i18n/dictionaries/settings-dialog.th.d.ts +17 -0
  285. package/dist/features/i18n/dictionaries/settings-dialog.th.d.ts.map +1 -0
  286. package/dist/features/i18n/dictionaries/settings-dialog.th.js +239 -0
  287. package/dist/features/i18n/dictionaries/settings-dialog.th.js.map +1 -0
  288. package/dist/features/i18n/dictionaries/settings-dialog.tr.d.ts +17 -0
  289. package/dist/features/i18n/dictionaries/settings-dialog.tr.d.ts.map +1 -0
  290. package/dist/features/i18n/dictionaries/settings-dialog.tr.js +239 -0
  291. package/dist/features/i18n/dictionaries/settings-dialog.tr.js.map +1 -0
  292. package/dist/features/i18n/dictionaries/settings-dialog.uk.d.ts +17 -0
  293. package/dist/features/i18n/dictionaries/settings-dialog.uk.d.ts.map +1 -0
  294. package/dist/features/i18n/dictionaries/settings-dialog.uk.js +239 -0
  295. package/dist/features/i18n/dictionaries/settings-dialog.uk.js.map +1 -0
  296. package/dist/features/i18n/dictionaries/settings-dialog.ur.d.ts +8 -0
  297. package/dist/features/i18n/dictionaries/settings-dialog.ur.d.ts.map +1 -0
  298. package/dist/features/i18n/dictionaries/settings-dialog.ur.js +239 -0
  299. package/dist/features/i18n/dictionaries/settings-dialog.ur.js.map +1 -0
  300. package/dist/features/i18n/dictionaries/settings-dialog.zh-CN.d.ts +17 -0
  301. package/dist/features/i18n/dictionaries/settings-dialog.zh-CN.d.ts.map +1 -0
  302. package/dist/features/i18n/dictionaries/settings-dialog.zh-CN.js +239 -0
  303. package/dist/features/i18n/dictionaries/settings-dialog.zh-CN.js.map +1 -0
  304. package/dist/features/i18n/dictionaries/settings-dialog.zh-TW.d.ts +20 -0
  305. package/dist/features/i18n/dictionaries/settings-dialog.zh-TW.d.ts.map +1 -0
  306. package/dist/features/i18n/dictionaries/settings-dialog.zh-TW.js +239 -0
  307. package/dist/features/i18n/dictionaries/settings-dialog.zh-TW.js.map +1 -0
  308. package/dist/features/i18n/dictionaries/types.d.ts +16 -0
  309. package/dist/features/i18n/dictionaries/types.d.ts.map +1 -0
  310. package/dist/features/i18n/dictionaries/types.js.map +1 -0
  311. package/dist/features/i18n/index.d.ts +2 -0
  312. package/dist/features/i18n/index.d.ts.map +1 -1
  313. package/dist/features/i18n/index.js +1 -0
  314. package/dist/features/i18n/index.js.map +1 -1
  315. package/dist/features/iframe-pool/react/components/PooledIframe.d.ts.map +1 -1
  316. package/dist/features/iframe-pool/react/components/PooledIframe.js +27 -3
  317. package/dist/features/iframe-pool/react/components/PooledIframe.js.map +1 -1
  318. package/dist/features/instructions/index.d.ts.map +1 -0
  319. package/dist/features/instructions/index.js.map +1 -0
  320. package/dist/features/instructions/react/components/InstructionsTab.d.ts.map +1 -0
  321. package/dist/features/instructions/react/components/InstructionsTab.js +16 -0
  322. package/dist/features/instructions/react/components/InstructionsTab.js.map +1 -0
  323. package/dist/features/integrations/constants.d.ts.map +1 -0
  324. package/dist/features/integrations/constants.js.map +1 -0
  325. package/dist/features/integrations/dependencies.d.ts.map +1 -0
  326. package/dist/features/integrations/dependencies.js.map +1 -0
  327. package/dist/features/integrations/index.d.ts +18 -0
  328. package/dist/features/integrations/index.d.ts.map +1 -0
  329. package/dist/features/integrations/index.js +10 -0
  330. package/dist/features/integrations/index.js.map +1 -0
  331. package/dist/features/integrations/ports.d.ts.map +1 -0
  332. package/dist/features/integrations/ports.js +2 -0
  333. package/dist/features/integrations/ports.js.map +1 -0
  334. package/dist/features/integrations/react/components/ClientPicker.d.ts.map +1 -0
  335. package/dist/features/integrations/react/components/ClientPicker.js +31 -0
  336. package/dist/features/integrations/react/components/ClientPicker.js.map +1 -0
  337. package/dist/features/integrations/react/components/CodexInstallToggleButton.d.ts.map +1 -0
  338. package/dist/features/integrations/react/components/CodexInstallToggleButton.js +21 -0
  339. package/dist/features/integrations/react/components/CodexInstallToggleButton.js.map +1 -0
  340. package/dist/features/integrations/react/components/IntegrationsTab.d.ts +27 -0
  341. package/dist/features/integrations/react/components/IntegrationsTab.d.ts.map +1 -0
  342. package/dist/features/integrations/react/components/IntegrationsTab.js +61 -0
  343. package/dist/features/integrations/react/components/IntegrationsTab.js.map +1 -0
  344. package/dist/features/integrations/react/components/SnippetBlock.d.ts.map +1 -0
  345. package/dist/features/integrations/react/components/SnippetBlock.js +53 -0
  346. package/dist/features/integrations/react/components/SnippetBlock.js.map +1 -0
  347. package/dist/features/integrations/react/hooks/useCodexInstallToggle.d.ts.map +1 -0
  348. package/dist/features/integrations/react/hooks/useCodexInstallToggle.js.map +1 -0
  349. package/dist/features/integrations/react/hooks/useMcpInstallInfo.d.ts.map +1 -0
  350. package/dist/features/integrations/react/hooks/useMcpInstallInfo.js.map +1 -0
  351. package/dist/features/integrations/rules.d.ts +55 -0
  352. package/dist/features/integrations/rules.d.ts.map +1 -0
  353. package/dist/features/integrations/rules.js +193 -0
  354. package/dist/features/integrations/rules.js.map +1 -0
  355. package/dist/features/integrations/types.d.ts +58 -0
  356. package/dist/features/integrations/types.d.ts.map +1 -0
  357. package/dist/features/integrations/types.js +15 -0
  358. package/dist/features/integrations/types.js.map +1 -0
  359. package/dist/features/interactive-ui/index.d.ts +23 -0
  360. package/dist/features/interactive-ui/index.d.ts.map +1 -0
  361. package/dist/features/interactive-ui/index.js +37 -0
  362. package/dist/features/interactive-ui/index.js.map +1 -0
  363. package/dist/features/interactive-ui/interactive-ui.css +2 -0
  364. package/dist/features/interactive-ui/manifests.d.ts +21 -0
  365. package/dist/features/interactive-ui/manifests.d.ts.map +1 -0
  366. package/dist/features/interactive-ui/manifests.js +37 -0
  367. package/dist/features/interactive-ui/manifests.js.map +1 -0
  368. package/dist/features/interactive-ui/providers/native/data-table.d.ts +12 -0
  369. package/dist/features/interactive-ui/providers/native/data-table.d.ts.map +1 -0
  370. package/dist/features/interactive-ui/providers/native/data-table.js +5 -0
  371. package/dist/features/interactive-ui/providers/native/data-table.js.map +1 -0
  372. package/dist/features/interactive-ui/providers/native/data-table.manifest.d.ts +57 -0
  373. package/dist/features/interactive-ui/providers/native/data-table.manifest.d.ts.map +1 -0
  374. package/dist/features/interactive-ui/providers/native/data-table.manifest.js +31 -0
  375. package/dist/features/interactive-ui/providers/native/data-table.manifest.js.map +1 -0
  376. package/dist/features/interactive-ui/providers/native/index.d.ts +3 -0
  377. package/dist/features/interactive-ui/providers/native/index.d.ts.map +1 -0
  378. package/dist/features/interactive-ui/providers/native/index.js +3 -0
  379. package/dist/features/interactive-ui/providers/native/index.js.map +1 -0
  380. package/dist/features/interactive-ui/providers/recharts/bar-chart.d.ts +8 -0
  381. package/dist/features/interactive-ui/providers/recharts/bar-chart.d.ts.map +1 -0
  382. package/dist/features/interactive-ui/providers/recharts/bar-chart.js +6 -0
  383. package/dist/features/interactive-ui/providers/recharts/bar-chart.js.map +1 -0
  384. package/dist/features/interactive-ui/providers/recharts/bar-chart.manifest.d.ts +21 -0
  385. package/dist/features/interactive-ui/providers/recharts/bar-chart.manifest.d.ts.map +1 -0
  386. package/dist/features/interactive-ui/providers/recharts/bar-chart.manifest.js +18 -0
  387. package/dist/features/interactive-ui/providers/recharts/bar-chart.manifest.js.map +1 -0
  388. package/dist/features/interactive-ui/providers/recharts/index.d.ts +7 -0
  389. package/dist/features/interactive-ui/providers/recharts/index.d.ts.map +1 -0
  390. package/dist/features/interactive-ui/providers/recharts/index.js +7 -0
  391. package/dist/features/interactive-ui/providers/recharts/index.js.map +1 -0
  392. package/dist/features/interactive-ui/providers/recharts/line-chart.d.ts +8 -0
  393. package/dist/features/interactive-ui/providers/recharts/line-chart.d.ts.map +1 -0
  394. package/dist/features/interactive-ui/providers/recharts/line-chart.js +6 -0
  395. package/dist/features/interactive-ui/providers/recharts/line-chart.js.map +1 -0
  396. package/dist/features/interactive-ui/providers/recharts/line-chart.manifest.d.ts +20 -0
  397. package/dist/features/interactive-ui/providers/recharts/line-chart.manifest.d.ts.map +1 -0
  398. package/dist/features/interactive-ui/providers/recharts/line-chart.manifest.js +17 -0
  399. package/dist/features/interactive-ui/providers/recharts/line-chart.manifest.js.map +1 -0
  400. package/dist/features/interactive-ui/providers/recharts/pie-chart.d.ts +10 -0
  401. package/dist/features/interactive-ui/providers/recharts/pie-chart.d.ts.map +1 -0
  402. package/dist/features/interactive-ui/providers/recharts/pie-chart.js +7 -0
  403. package/dist/features/interactive-ui/providers/recharts/pie-chart.js.map +1 -0
  404. package/dist/features/interactive-ui/providers/recharts/pie-chart.manifest.d.ts +41 -0
  405. package/dist/features/interactive-ui/providers/recharts/pie-chart.manifest.d.ts.map +1 -0
  406. package/dist/features/interactive-ui/providers/recharts/pie-chart.manifest.js +15 -0
  407. package/dist/features/interactive-ui/providers/recharts/pie-chart.manifest.js.map +1 -0
  408. package/dist/features/interactive-ui/providers/shadcn/action-button.d.ts +14 -0
  409. package/dist/features/interactive-ui/providers/shadcn/action-button.d.ts.map +1 -0
  410. package/dist/features/interactive-ui/providers/shadcn/action-button.js +6 -0
  411. package/dist/features/interactive-ui/providers/shadcn/action-button.js.map +1 -0
  412. package/dist/features/interactive-ui/providers/shadcn/action-button.manifest.d.ts +24 -0
  413. package/dist/features/interactive-ui/providers/shadcn/action-button.manifest.d.ts.map +1 -0
  414. package/dist/features/interactive-ui/providers/shadcn/action-button.manifest.js +21 -0
  415. package/dist/features/interactive-ui/providers/shadcn/action-button.manifest.js.map +1 -0
  416. package/dist/features/interactive-ui/providers/shadcn/button.d.ts +18 -0
  417. package/dist/features/interactive-ui/providers/shadcn/button.d.ts.map +1 -0
  418. package/dist/features/interactive-ui/providers/shadcn/button.js +40 -0
  419. package/dist/features/interactive-ui/providers/shadcn/button.js.map +1 -0
  420. package/dist/features/interactive-ui/providers/shadcn/card.d.ts +13 -0
  421. package/dist/features/interactive-ui/providers/shadcn/card.d.ts.map +1 -0
  422. package/dist/features/interactive-ui/providers/shadcn/card.js +21 -0
  423. package/dist/features/interactive-ui/providers/shadcn/card.js.map +1 -0
  424. package/dist/features/interactive-ui/providers/shadcn/checkbox-field.d.ts +9 -0
  425. package/dist/features/interactive-ui/providers/shadcn/checkbox-field.d.ts.map +1 -0
  426. package/dist/features/interactive-ui/providers/shadcn/checkbox-field.js +9 -0
  427. package/dist/features/interactive-ui/providers/shadcn/checkbox-field.js.map +1 -0
  428. package/dist/features/interactive-ui/providers/shadcn/checkbox-field.manifest.d.ts +17 -0
  429. package/dist/features/interactive-ui/providers/shadcn/checkbox-field.manifest.d.ts.map +1 -0
  430. package/dist/features/interactive-ui/providers/shadcn/checkbox-field.manifest.js +16 -0
  431. package/dist/features/interactive-ui/providers/shadcn/checkbox-field.manifest.js.map +1 -0
  432. package/dist/features/interactive-ui/providers/shadcn/checkbox.d.ts +10 -0
  433. package/dist/features/interactive-ui/providers/shadcn/checkbox.d.ts.map +1 -0
  434. package/dist/features/interactive-ui/providers/shadcn/checkbox.js +14 -0
  435. package/dist/features/interactive-ui/providers/shadcn/checkbox.js.map +1 -0
  436. package/dist/features/interactive-ui/providers/shadcn/content-card.d.ts +7 -0
  437. package/dist/features/interactive-ui/providers/shadcn/content-card.d.ts.map +1 -0
  438. package/dist/features/interactive-ui/providers/shadcn/content-card.js +6 -0
  439. package/dist/features/interactive-ui/providers/shadcn/content-card.js.map +1 -0
  440. package/dist/features/interactive-ui/providers/shadcn/content-card.manifest.d.ts +17 -0
  441. package/dist/features/interactive-ui/providers/shadcn/content-card.manifest.d.ts.map +1 -0
  442. package/dist/features/interactive-ui/providers/shadcn/content-card.manifest.js +16 -0
  443. package/dist/features/interactive-ui/providers/shadcn/content-card.manifest.js.map +1 -0
  444. package/dist/features/interactive-ui/providers/shadcn/data-table.d.ts +13 -0
  445. package/dist/features/interactive-ui/providers/shadcn/data-table.d.ts.map +1 -0
  446. package/dist/features/interactive-ui/providers/shadcn/data-table.js +7 -0
  447. package/dist/features/interactive-ui/providers/shadcn/data-table.js.map +1 -0
  448. package/dist/features/interactive-ui/providers/shadcn/data-table.manifest.d.ts +47 -0
  449. package/dist/features/interactive-ui/providers/shadcn/data-table.manifest.d.ts.map +1 -0
  450. package/dist/features/interactive-ui/providers/shadcn/data-table.manifest.js +21 -0
  451. package/dist/features/interactive-ui/providers/shadcn/data-table.manifest.js.map +1 -0
  452. package/dist/features/interactive-ui/providers/shadcn/index.d.ts +15 -0
  453. package/dist/features/interactive-ui/providers/shadcn/index.d.ts.map +1 -0
  454. package/dist/features/interactive-ui/providers/shadcn/index.js +15 -0
  455. package/dist/features/interactive-ui/providers/shadcn/index.js.map +1 -0
  456. package/dist/features/interactive-ui/providers/shadcn/input.d.ts +8 -0
  457. package/dist/features/interactive-ui/providers/shadcn/input.d.ts.map +1 -0
  458. package/dist/features/interactive-ui/providers/shadcn/input.js +13 -0
  459. package/dist/features/interactive-ui/providers/shadcn/input.js.map +1 -0
  460. package/dist/features/interactive-ui/providers/shadcn/label.d.ts +11 -0
  461. package/dist/features/interactive-ui/providers/shadcn/label.d.ts.map +1 -0
  462. package/dist/features/interactive-ui/providers/shadcn/label.js +15 -0
  463. package/dist/features/interactive-ui/providers/shadcn/label.js.map +1 -0
  464. package/dist/features/interactive-ui/providers/shadcn/lib/utils.d.ts +9 -0
  465. package/dist/features/interactive-ui/providers/shadcn/lib/utils.d.ts.map +1 -0
  466. package/dist/features/interactive-ui/providers/shadcn/lib/utils.js +12 -0
  467. package/dist/features/interactive-ui/providers/shadcn/lib/utils.js.map +1 -0
  468. package/dist/features/interactive-ui/providers/shadcn/radio-group-field.d.ts +13 -0
  469. package/dist/features/interactive-ui/providers/shadcn/radio-group-field.d.ts.map +1 -0
  470. package/dist/features/interactive-ui/providers/shadcn/radio-group-field.js +14 -0
  471. package/dist/features/interactive-ui/providers/shadcn/radio-group-field.js.map +1 -0
  472. package/dist/features/interactive-ui/providers/shadcn/radio-group-field.manifest.d.ts +44 -0
  473. package/dist/features/interactive-ui/providers/shadcn/radio-group-field.manifest.d.ts.map +1 -0
  474. package/dist/features/interactive-ui/providers/shadcn/radio-group-field.manifest.js +16 -0
  475. package/dist/features/interactive-ui/providers/shadcn/radio-group-field.manifest.js.map +1 -0
  476. package/dist/features/interactive-ui/providers/shadcn/radio-group.d.ts +11 -0
  477. package/dist/features/interactive-ui/providers/shadcn/radio-group.d.ts.map +1 -0
  478. package/dist/features/interactive-ui/providers/shadcn/radio-group.js +20 -0
  479. package/dist/features/interactive-ui/providers/shadcn/radio-group.js.map +1 -0
  480. package/dist/features/interactive-ui/providers/shadcn/select-field.d.ts +14 -0
  481. package/dist/features/interactive-ui/providers/shadcn/select-field.d.ts.map +1 -0
  482. package/dist/features/interactive-ui/providers/shadcn/select-field.js +8 -0
  483. package/dist/features/interactive-ui/providers/shadcn/select-field.js.map +1 -0
  484. package/dist/features/interactive-ui/providers/shadcn/select-field.manifest.d.ts +47 -0
  485. package/dist/features/interactive-ui/providers/shadcn/select-field.manifest.d.ts.map +1 -0
  486. package/dist/features/interactive-ui/providers/shadcn/select-field.manifest.js +17 -0
  487. package/dist/features/interactive-ui/providers/shadcn/select-field.manifest.js.map +1 -0
  488. package/dist/features/interactive-ui/providers/shadcn/select.d.ts +19 -0
  489. package/dist/features/interactive-ui/providers/shadcn/select.d.ts.map +1 -0
  490. package/dist/features/interactive-ui/providers/shadcn/select.js +30 -0
  491. package/dist/features/interactive-ui/providers/shadcn/select.js.map +1 -0
  492. package/dist/features/interactive-ui/providers/shadcn/table.d.ts +17 -0
  493. package/dist/features/interactive-ui/providers/shadcn/table.d.ts.map +1 -0
  494. package/dist/features/interactive-ui/providers/shadcn/table.js +35 -0
  495. package/dist/features/interactive-ui/providers/shadcn/table.js.map +1 -0
  496. package/dist/features/interactive-ui/providers/shadcn/text-input-field.d.ts +16 -0
  497. package/dist/features/interactive-ui/providers/shadcn/text-input-field.d.ts.map +1 -0
  498. package/dist/features/interactive-ui/providers/shadcn/text-input-field.js +6 -0
  499. package/dist/features/interactive-ui/providers/shadcn/text-input-field.js.map +1 -0
  500. package/dist/features/interactive-ui/providers/shadcn/text-input-field.manifest.d.ts +20 -0
  501. package/dist/features/interactive-ui/providers/shadcn/text-input-field.manifest.d.ts.map +1 -0
  502. package/dist/features/interactive-ui/providers/shadcn/text-input-field.manifest.js +17 -0
  503. package/dist/features/interactive-ui/providers/shadcn/text-input-field.manifest.js.map +1 -0
  504. package/dist/features/interactive-ui/registry.d.ts +27 -0
  505. package/dist/features/interactive-ui/registry.d.ts.map +1 -0
  506. package/dist/features/interactive-ui/registry.js +27 -0
  507. package/dist/features/interactive-ui/registry.js.map +1 -0
  508. package/dist/features/interactive-ui/types.d.ts +18 -0
  509. package/dist/features/interactive-ui/types.d.ts.map +1 -0
  510. package/dist/features/interactive-ui/types.js.map +1 -0
  511. package/dist/features/language/index.d.ts.map +1 -0
  512. package/dist/features/language/index.js.map +1 -0
  513. package/dist/features/language/react/components/LanguageTab.d.ts.map +1 -0
  514. package/dist/features/language/react/components/LanguageTab.js +18 -0
  515. package/dist/features/language/react/components/LanguageTab.js.map +1 -0
  516. package/dist/features/language/types.d.ts +21 -0
  517. package/dist/features/language/types.d.ts.map +1 -0
  518. package/dist/features/language/types.js +2 -0
  519. package/dist/features/language/types.js.map +1 -0
  520. package/dist/features/list-detail-panel/types.d.ts +1 -1
  521. package/dist/features/list-detail-panel/types.js +1 -1
  522. package/dist/features/mcp-ui/confirmation-store.d.ts +110 -0
  523. package/dist/features/mcp-ui/confirmation-store.d.ts.map +1 -0
  524. package/dist/features/mcp-ui/confirmation-store.js +149 -0
  525. package/dist/features/mcp-ui/confirmation-store.js.map +1 -0
  526. package/dist/features/mcp-ui/early-message-buffer.d.ts +62 -0
  527. package/dist/features/mcp-ui/early-message-buffer.d.ts.map +1 -0
  528. package/dist/features/mcp-ui/early-message-buffer.js +69 -0
  529. package/dist/features/mcp-ui/early-message-buffer.js.map +1 -0
  530. package/dist/features/mcp-ui/escape.d.ts +51 -0
  531. package/dist/features/mcp-ui/escape.d.ts.map +1 -0
  532. package/dist/features/mcp-ui/escape.js +68 -0
  533. package/dist/features/mcp-ui/escape.js.map +1 -0
  534. package/dist/features/mcp-ui/index.d.ts +28 -0
  535. package/dist/features/mcp-ui/index.d.ts.map +1 -0
  536. package/dist/features/mcp-ui/index.js +28 -0
  537. package/dist/features/mcp-ui/index.js.map +1 -0
  538. package/dist/features/mcp-ui/protocol.d.ts +59 -0
  539. package/dist/features/mcp-ui/protocol.d.ts.map +1 -0
  540. package/dist/features/mcp-ui/protocol.js +58 -0
  541. package/dist/features/mcp-ui/protocol.js.map +1 -0
  542. package/dist/features/mcp-ui/resource.d.ts +192 -0
  543. package/dist/features/mcp-ui/resource.d.ts.map +1 -0
  544. package/dist/features/mcp-ui/resource.js +228 -0
  545. package/dist/features/mcp-ui/resource.js.map +1 -0
  546. package/dist/features/mcp-ui/sandbox-proxy.d.ts +132 -0
  547. package/dist/features/mcp-ui/sandbox-proxy.d.ts.map +1 -0
  548. package/dist/features/mcp-ui/sandbox-proxy.js +167 -0
  549. package/dist/features/mcp-ui/sandbox-proxy.js.map +1 -0
  550. package/dist/features/mcp-ui/surfaces/bridge.d.ts +43 -0
  551. package/dist/features/mcp-ui/surfaces/bridge.d.ts.map +1 -0
  552. package/dist/features/mcp-ui/surfaces/bridge.js +200 -0
  553. package/dist/features/mcp-ui/surfaces/bridge.js.map +1 -0
  554. package/dist/features/mcp-ui/surfaces/checkbox.d.ts +25 -0
  555. package/dist/features/mcp-ui/surfaces/checkbox.d.ts.map +1 -0
  556. package/dist/features/mcp-ui/surfaces/checkbox.js +26 -0
  557. package/dist/features/mcp-ui/surfaces/checkbox.js.map +1 -0
  558. package/dist/features/mcp-ui/surfaces/choice-group.d.ts +34 -0
  559. package/dist/features/mcp-ui/surfaces/choice-group.d.ts.map +1 -0
  560. package/dist/features/mcp-ui/surfaces/choice-group.js +70 -0
  561. package/dist/features/mcp-ui/surfaces/choice-group.js.map +1 -0
  562. package/dist/features/mcp-ui/surfaces/confirmation.d.ts +75 -0
  563. package/dist/features/mcp-ui/surfaces/confirmation.d.ts.map +1 -0
  564. package/dist/features/mcp-ui/surfaces/confirmation.js +148 -0
  565. package/dist/features/mcp-ui/surfaces/confirmation.js.map +1 -0
  566. package/dist/features/mcp-ui/surfaces/document.d.ts +173 -0
  567. package/dist/features/mcp-ui/surfaces/document.d.ts.map +1 -0
  568. package/dist/features/mcp-ui/surfaces/document.js +327 -0
  569. package/dist/features/mcp-ui/surfaces/document.js.map +1 -0
  570. package/dist/features/mcp-ui/surfaces/fields.d.ts +77 -0
  571. package/dist/features/mcp-ui/surfaces/fields.d.ts.map +1 -0
  572. package/dist/features/mcp-ui/surfaces/fields.js +97 -0
  573. package/dist/features/mcp-ui/surfaces/fields.js.map +1 -0
  574. package/dist/features/mcp-ui/surfaces/form.d.ts +78 -0
  575. package/dist/features/mcp-ui/surfaces/form.d.ts.map +1 -0
  576. package/dist/features/mcp-ui/surfaces/form.js +218 -0
  577. package/dist/features/mcp-ui/surfaces/form.js.map +1 -0
  578. package/dist/features/mcp-ui/surfaces/index.d.ts +12 -0
  579. package/dist/features/mcp-ui/surfaces/index.d.ts.map +1 -0
  580. package/dist/features/mcp-ui/surfaces/index.js +12 -0
  581. package/dist/features/mcp-ui/surfaces/index.js.map +1 -0
  582. package/dist/features/mcp-ui/surfaces/outcome.d.ts +102 -0
  583. package/dist/features/mcp-ui/surfaces/outcome.d.ts.map +1 -0
  584. package/dist/features/mcp-ui/surfaces/outcome.js +119 -0
  585. package/dist/features/mcp-ui/surfaces/outcome.js.map +1 -0
  586. package/dist/features/mcp-ui/surfaces/select.d.ts +35 -0
  587. package/dist/features/mcp-ui/surfaces/select.d.ts.map +1 -0
  588. package/dist/features/mcp-ui/surfaces/select.js +36 -0
  589. package/dist/features/mcp-ui/surfaces/select.js.map +1 -0
  590. package/dist/features/mcp-ui/surfaces/text-input.d.ts +35 -0
  591. package/dist/features/mcp-ui/surfaces/text-input.d.ts.map +1 -0
  592. package/dist/features/mcp-ui/surfaces/text-input.js +61 -0
  593. package/dist/features/mcp-ui/surfaces/text-input.js.map +1 -0
  594. package/dist/features/mcp-ui/surfaces/tokens.d.ts +106 -0
  595. package/dist/features/mcp-ui/surfaces/tokens.d.ts.map +1 -0
  596. package/dist/features/mcp-ui/surfaces/tokens.js +165 -0
  597. package/dist/features/mcp-ui/surfaces/tokens.js.map +1 -0
  598. package/dist/features/media-providers/constants.d.ts +10 -0
  599. package/dist/features/media-providers/constants.d.ts.map +1 -0
  600. package/dist/features/media-providers/constants.js +90 -0
  601. package/dist/features/media-providers/constants.js.map +1 -0
  602. package/dist/features/media-providers/dependencies.d.ts +27 -0
  603. package/dist/features/media-providers/dependencies.d.ts.map +1 -0
  604. package/dist/features/media-providers/dependencies.js +29 -0
  605. package/dist/features/media-providers/dependencies.js.map +1 -0
  606. package/dist/features/media-providers/index.d.ts +10 -0
  607. package/dist/features/media-providers/index.d.ts.map +1 -0
  608. package/dist/features/media-providers/index.js +6 -0
  609. package/dist/features/media-providers/index.js.map +1 -0
  610. package/dist/features/media-providers/ports.d.ts +51 -0
  611. package/dist/features/media-providers/ports.d.ts.map +1 -0
  612. package/dist/features/media-providers/ports.js +2 -0
  613. package/dist/features/media-providers/ports.js.map +1 -0
  614. package/dist/features/media-providers/react/components/MediaProvidersTab.d.ts +59 -0
  615. package/dist/features/media-providers/react/components/MediaProvidersTab.d.ts.map +1 -0
  616. package/dist/features/media-providers/react/components/MediaProvidersTab.js +92 -0
  617. package/dist/features/media-providers/react/components/MediaProvidersTab.js.map +1 -0
  618. package/dist/features/media-providers/react/hooks/useMediaProvidersTab.d.ts +58 -0
  619. package/dist/features/media-providers/react/hooks/useMediaProvidersTab.d.ts.map +1 -0
  620. package/dist/features/media-providers/react/hooks/useMediaProvidersTab.js +294 -0
  621. package/dist/features/media-providers/react/hooks/useMediaProvidersTab.js.map +1 -0
  622. package/dist/features/media-providers/rules.d.ts +139 -0
  623. package/dist/features/media-providers/rules.d.ts.map +1 -0
  624. package/dist/features/media-providers/rules.js +227 -0
  625. package/dist/features/media-providers/rules.js.map +1 -0
  626. package/dist/features/media-providers/types.d.ts +102 -0
  627. package/dist/features/media-providers/types.d.ts.map +1 -0
  628. package/dist/features/media-providers/types.js +27 -0
  629. package/dist/features/media-providers/types.js.map +1 -0
  630. package/dist/features/memory/constants.d.ts +0 -2
  631. package/dist/features/memory/constants.d.ts.map +1 -1
  632. package/dist/features/memory/constants.js +0 -9
  633. package/dist/features/memory/constants.js.map +1 -1
  634. package/dist/features/memory/dependencies.d.ts +1 -28
  635. package/dist/features/memory/dependencies.d.ts.map +1 -1
  636. package/dist/features/memory/dependencies.js +39 -23
  637. package/dist/features/memory/dependencies.js.map +1 -1
  638. package/dist/features/memory/formatters.d.ts +5 -2
  639. package/dist/features/memory/formatters.d.ts.map +1 -1
  640. package/dist/features/memory/formatters.js +1 -2
  641. package/dist/features/memory/formatters.js.map +1 -1
  642. package/dist/features/memory/index.d.ts +8 -8
  643. package/dist/features/memory/index.d.ts.map +1 -1
  644. package/dist/features/memory/index.js +6 -10
  645. package/dist/features/memory/index.js.map +1 -1
  646. package/dist/features/memory/ports.d.ts +1 -1
  647. package/dist/features/memory/react/components/MemoryConnectedPanel.d.ts +1 -1
  648. package/dist/features/memory/react/components/MemoryConnectedPanel.d.ts.map +1 -1
  649. package/dist/features/memory/react/components/MemoryConnectedPanel.js +2 -1
  650. package/dist/features/memory/react/components/MemoryConnectedPanel.js.map +1 -1
  651. package/dist/features/memory/react/components/MemoryEntryCard.d.ts.map +1 -1
  652. package/dist/features/memory/react/components/MemoryEntryCard.js +2 -1
  653. package/dist/features/memory/react/components/MemoryEntryCard.js.map +1 -1
  654. package/dist/features/memory/react/components/MemoryExtractionCard.d.ts.map +1 -1
  655. package/dist/features/memory/react/components/MemoryExtractionCard.js +1 -1
  656. package/dist/features/memory/react/components/MemoryExtractionCard.js.map +1 -1
  657. package/dist/features/memory/react/components/MemoryManualEditor.d.ts.map +1 -1
  658. package/dist/features/memory/react/components/MemoryManualEditor.js +2 -1
  659. package/dist/features/memory/react/components/MemoryManualEditor.js.map +1 -1
  660. package/dist/features/memory/react/components/MemorySettingsPanel.d.ts +22 -0
  661. package/dist/features/memory/react/components/MemorySettingsPanel.d.ts.map +1 -0
  662. package/dist/features/memory/react/components/MemorySettingsPanel.js +30 -0
  663. package/dist/features/memory/react/components/MemorySettingsPanel.js.map +1 -0
  664. package/dist/features/memory/react/hooks/useMemoryConfig.hooks.d.ts.map +1 -1
  665. package/dist/features/memory/react/hooks/useMemoryConfig.hooks.js +1 -1
  666. package/dist/features/memory/react/hooks/useMemoryConfig.hooks.js.map +1 -1
  667. package/dist/features/memory/react/hooks/useMemoryConnectors.hooks.d.ts +43 -1
  668. package/dist/features/memory/react/hooks/useMemoryConnectors.hooks.d.ts.map +1 -1
  669. package/dist/features/memory/react/hooks/useMemoryConnectors.hooks.js +99 -99
  670. package/dist/features/memory/react/hooks/useMemoryConnectors.hooks.js.map +1 -1
  671. package/dist/features/memory/react/hooks/useMemoryConnectors.rules.d.ts +54 -0
  672. package/dist/features/memory/react/hooks/useMemoryConnectors.rules.d.ts.map +1 -0
  673. package/dist/features/memory/react/hooks/useMemoryConnectors.rules.js +81 -0
  674. package/dist/features/memory/react/hooks/useMemoryConnectors.rules.js.map +1 -0
  675. package/dist/features/memory/react/hooks/useMemoryEntries.hooks.d.ts.map +1 -1
  676. package/dist/features/memory/react/hooks/useMemoryEntries.hooks.js +1 -1
  677. package/dist/features/memory/react/hooks/useMemoryEntries.hooks.js.map +1 -1
  678. package/dist/features/memory/react/hooks/useMemoryExtractions.hooks.d.ts.map +1 -1
  679. package/dist/features/memory/react/hooks/useMemoryExtractions.hooks.js.map +1 -1
  680. package/dist/features/memory/react/render-markdown.d.ts.map +1 -1
  681. package/dist/features/memory/react/render-markdown.js +3 -2
  682. package/dist/features/memory/react/render-markdown.js.map +1 -1
  683. package/dist/features/memory/react/styles.d.ts +11 -0
  684. package/dist/features/memory/react/styles.d.ts.map +1 -0
  685. package/dist/features/memory/react/styles.js +18 -0
  686. package/dist/features/memory/react/styles.js.map +1 -0
  687. package/dist/features/memory/rules.d.ts +1 -1
  688. package/dist/features/memory/rules.js +2 -2
  689. package/dist/features/memory/rules.js.map +1 -1
  690. package/dist/features/memory/types.d.ts +1 -1
  691. package/dist/features/memory/types.d.ts.map +1 -1
  692. package/dist/features/notifications/constants.d.ts.map +1 -0
  693. package/dist/features/notifications/constants.js +8 -0
  694. package/dist/features/notifications/constants.js.map +1 -0
  695. package/dist/features/notifications/index.d.ts +5 -0
  696. package/dist/features/notifications/index.d.ts.map +1 -0
  697. package/dist/features/notifications/index.js.map +1 -0
  698. package/dist/features/notifications/notifications-catalog.d.ts +25 -0
  699. package/dist/features/notifications/notifications-catalog.d.ts.map +1 -0
  700. package/dist/features/notifications/notifications-catalog.js +27 -0
  701. package/dist/features/notifications/notifications-catalog.js.map +1 -0
  702. package/dist/features/notifications/react/components/NotificationsTab.d.ts +48 -0
  703. package/dist/features/notifications/react/components/NotificationsTab.d.ts.map +1 -0
  704. package/dist/features/notifications/react/components/NotificationsTab.js +84 -0
  705. package/dist/features/notifications/react/components/NotificationsTab.js.map +1 -0
  706. package/dist/features/notifications/rules.d.ts +21 -0
  707. package/dist/features/notifications/rules.d.ts.map +1 -0
  708. package/dist/features/notifications/rules.js +7 -0
  709. package/dist/features/notifications/rules.js.map +1 -0
  710. package/dist/features/notifications/types.d.ts +15 -0
  711. package/dist/features/notifications/types.d.ts.map +1 -0
  712. package/dist/features/notifications/types.js +2 -0
  713. package/dist/features/notifications/types.js.map +1 -0
  714. package/dist/features/privacy/index.d.ts +5 -0
  715. package/dist/features/privacy/index.d.ts.map +1 -0
  716. package/dist/features/privacy/index.js.map +1 -0
  717. package/dist/features/privacy/react/components/PrivacyTab.d.ts +34 -0
  718. package/dist/features/privacy/react/components/PrivacyTab.d.ts.map +1 -0
  719. package/dist/features/privacy/react/components/PrivacyTab.js +36 -0
  720. package/dist/features/privacy/react/components/PrivacyTab.js.map +1 -0
  721. package/dist/features/privacy/rules.d.ts.map +1 -0
  722. package/dist/features/privacy/rules.js +70 -0
  723. package/dist/features/privacy/rules.js.map +1 -0
  724. package/dist/features/privacy/types.d.ts.map +1 -0
  725. package/dist/features/privacy/types.js.map +1 -0
  726. package/dist/features/project-locations/dependencies.d.ts +20 -0
  727. package/dist/features/project-locations/dependencies.d.ts.map +1 -0
  728. package/dist/features/project-locations/dependencies.js +45 -0
  729. package/dist/features/project-locations/dependencies.js.map +1 -0
  730. package/dist/features/project-locations/index.d.ts +9 -0
  731. package/dist/features/project-locations/index.d.ts.map +1 -0
  732. package/dist/features/project-locations/index.js +5 -0
  733. package/dist/features/project-locations/index.js.map +1 -0
  734. package/dist/features/project-locations/ports.d.ts +41 -0
  735. package/dist/features/project-locations/ports.d.ts.map +1 -0
  736. package/dist/features/project-locations/ports.js +2 -0
  737. package/dist/features/project-locations/ports.js.map +1 -0
  738. package/dist/features/project-locations/react/components/ProjectLocationsTab.d.ts +36 -0
  739. package/dist/features/project-locations/react/components/ProjectLocationsTab.d.ts.map +1 -0
  740. package/dist/features/project-locations/react/components/ProjectLocationsTab.js +53 -0
  741. package/dist/features/project-locations/react/components/ProjectLocationsTab.js.map +1 -0
  742. package/dist/features/project-locations/react/hooks/useProjectLocationsTab.d.ts +41 -0
  743. package/dist/features/project-locations/react/hooks/useProjectLocationsTab.d.ts.map +1 -0
  744. package/dist/features/project-locations/react/hooks/useProjectLocationsTab.js +157 -0
  745. package/dist/features/project-locations/react/hooks/useProjectLocationsTab.js.map +1 -0
  746. package/dist/features/project-locations/rules.d.ts +53 -0
  747. package/dist/features/project-locations/rules.d.ts.map +1 -0
  748. package/dist/features/project-locations/rules.js +82 -0
  749. package/dist/features/project-locations/rules.js.map +1 -0
  750. package/dist/features/project-locations/types.d.ts +78 -0
  751. package/dist/features/project-locations/types.d.ts.map +1 -0
  752. package/dist/features/project-locations/types.js +13 -0
  753. package/dist/features/project-locations/types.js.map +1 -0
  754. package/dist/features/resource-dashboard/types.d.ts +1 -1
  755. package/dist/features/resource-dashboard/types.js +1 -1
  756. package/dist/features/settings/dialog/index.d.ts +7 -0
  757. package/dist/features/settings/dialog/index.d.ts.map +1 -0
  758. package/dist/features/settings/dialog/index.js +8 -0
  759. package/dist/features/settings/dialog/index.js.map +1 -0
  760. package/dist/features/settings/dialog/react/components/SettingsDialogShell.d.ts +33 -0
  761. package/dist/features/settings/dialog/react/components/SettingsDialogShell.d.ts.map +1 -0
  762. package/dist/features/settings/dialog/react/components/SettingsDialogShell.js +32 -0
  763. package/dist/features/settings/dialog/react/components/SettingsDialogShell.js.map +1 -0
  764. package/dist/features/settings/dialog/react/hooks/useSettingsDialogShell.d.ts +11 -0
  765. package/dist/features/settings/dialog/react/hooks/useSettingsDialogShell.d.ts.map +1 -0
  766. package/dist/features/settings/dialog/react/hooks/useSettingsDialogShell.js +10 -0
  767. package/dist/features/settings/dialog/react/hooks/useSettingsDialogShell.js.map +1 -0
  768. package/dist/features/settings/dialog/styles/settings-dialog.css +4434 -0
  769. package/dist/features/skills/dependencies.d.ts +18 -0
  770. package/dist/features/skills/dependencies.d.ts.map +1 -0
  771. package/dist/features/skills/dependencies.js +82 -0
  772. package/dist/features/skills/dependencies.js.map +1 -0
  773. package/dist/features/skills/index.d.ts +13 -0
  774. package/dist/features/skills/index.d.ts.map +1 -0
  775. package/dist/features/skills/index.js +7 -0
  776. package/dist/features/skills/index.js.map +1 -0
  777. package/dist/features/skills/ports.d.ts +45 -0
  778. package/dist/features/skills/ports.d.ts.map +1 -0
  779. package/dist/features/skills/ports.js +2 -0
  780. package/dist/features/skills/ports.js.map +1 -0
  781. package/dist/features/skills/react/components/SkillDraftForm.d.ts +39 -0
  782. package/dist/features/skills/react/components/SkillDraftForm.d.ts.map +1 -0
  783. package/dist/features/skills/react/components/SkillDraftForm.js +29 -0
  784. package/dist/features/skills/react/components/SkillDraftForm.js.map +1 -0
  785. package/dist/features/skills/react/components/SkillRow.d.ts +54 -0
  786. package/dist/features/skills/react/components/SkillRow.d.ts.map +1 -0
  787. package/dist/features/skills/react/components/SkillRow.js +34 -0
  788. package/dist/features/skills/react/components/SkillRow.js.map +1 -0
  789. package/dist/features/skills/react/components/SkillsTab.d.ts +34 -0
  790. package/dist/features/skills/react/components/SkillsTab.d.ts.map +1 -0
  791. package/dist/features/skills/react/components/SkillsTab.js +33 -0
  792. package/dist/features/skills/react/components/SkillsTab.js.map +1 -0
  793. package/dist/features/skills/react/hooks/useSkillsTab.d.ts +70 -0
  794. package/dist/features/skills/react/hooks/useSkillsTab.d.ts.map +1 -0
  795. package/dist/features/skills/react/hooks/useSkillsTab.js +282 -0
  796. package/dist/features/skills/react/hooks/useSkillsTab.js.map +1 -0
  797. package/dist/features/skills/rules.d.ts +156 -0
  798. package/dist/features/skills/rules.d.ts.map +1 -0
  799. package/dist/features/skills/rules.js +272 -0
  800. package/dist/features/skills/rules.js.map +1 -0
  801. package/dist/features/skills/types.d.ts +97 -0
  802. package/dist/features/skills/types.d.ts.map +1 -0
  803. package/dist/features/skills/types.js +18 -0
  804. package/dist/features/skills/types.js.map +1 -0
  805. package/dist/features/source-config-list/agent-handles.d.ts +121 -0
  806. package/dist/features/source-config-list/agent-handles.d.ts.map +1 -0
  807. package/dist/features/source-config-list/agent-handles.js +151 -0
  808. package/dist/features/source-config-list/agent-handles.js.map +1 -0
  809. package/dist/features/source-config-list/index.d.ts +6 -5
  810. package/dist/features/source-config-list/index.d.ts.map +1 -1
  811. package/dist/features/source-config-list/index.js +3 -2
  812. package/dist/features/source-config-list/index.js.map +1 -1
  813. package/dist/features/source-config-list/react/components/SourceConfigAddForm.d.ts +28 -1
  814. package/dist/features/source-config-list/react/components/SourceConfigAddForm.d.ts.map +1 -1
  815. package/dist/features/source-config-list/react/components/SourceConfigAddForm.js +25 -4
  816. package/dist/features/source-config-list/react/components/SourceConfigAddForm.js.map +1 -1
  817. package/dist/features/source-config-list/react/components/SourceConfigField.d.ts +36 -1
  818. package/dist/features/source-config-list/react/components/SourceConfigField.d.ts.map +1 -1
  819. package/dist/features/source-config-list/react/components/SourceConfigField.js +74 -3
  820. package/dist/features/source-config-list/react/components/SourceConfigField.js.map +1 -1
  821. package/dist/features/source-config-list/react/components/SourceConfigItemCard.d.ts +39 -2
  822. package/dist/features/source-config-list/react/components/SourceConfigItemCard.d.ts.map +1 -1
  823. package/dist/features/source-config-list/react/components/SourceConfigItemCard.js +55 -4
  824. package/dist/features/source-config-list/react/components/SourceConfigItemCard.js.map +1 -1
  825. package/dist/features/source-config-list/react/components/SourceConfigList.d.ts +9 -3
  826. package/dist/features/source-config-list/react/components/SourceConfigList.d.ts.map +1 -1
  827. package/dist/features/source-config-list/react/components/SourceConfigList.js +2 -2
  828. package/dist/features/source-config-list/react/components/SourceConfigList.js.map +1 -1
  829. package/dist/features/source-config-list/react/components/SourceConfigListView.d.ts +13 -2
  830. package/dist/features/source-config-list/react/components/SourceConfigListView.d.ts.map +1 -1
  831. package/dist/features/source-config-list/react/components/SourceConfigListView.js +8 -2
  832. package/dist/features/source-config-list/react/components/SourceConfigListView.js.map +1 -1
  833. package/dist/features/source-config-list/react/components/SourceConfigTestControl.d.ts +18 -1
  834. package/dist/features/source-config-list/react/components/SourceConfigTestControl.d.ts.map +1 -1
  835. package/dist/features/source-config-list/react/components/SourceConfigTestControl.js +16 -2
  836. package/dist/features/source-config-list/react/components/SourceConfigTestControl.js.map +1 -1
  837. package/dist/features/source-config-list/react/hooks/useSourceConfigAddForm.d.ts.map +1 -1
  838. package/dist/features/source-config-list/react/hooks/useSourceConfigAddForm.js.map +1 -1
  839. package/dist/features/source-config-list/react/hooks/useSourceConfigList.d.ts +12 -1
  840. package/dist/features/source-config-list/react/hooks/useSourceConfigList.d.ts.map +1 -1
  841. package/dist/features/source-config-list/react/hooks/useSourceConfigList.js.map +1 -1
  842. package/dist/features/source-config-list/rules.d.ts +22 -5
  843. package/dist/features/source-config-list/rules.d.ts.map +1 -1
  844. package/dist/features/source-config-list/rules.js +56 -16
  845. package/dist/features/source-config-list/rules.js.map +1 -1
  846. package/dist/features/source-config-list/types.d.ts +16 -2
  847. package/dist/features/source-config-list/types.d.ts.map +1 -1
  848. package/dist/features/tab-strip/types.d.ts +1 -1
  849. package/dist/features/tabbed-dialog/index.d.ts +7 -0
  850. package/dist/features/tabbed-dialog/index.d.ts.map +1 -0
  851. package/dist/features/tabbed-dialog/index.js +4 -0
  852. package/dist/features/tabbed-dialog/index.js.map +1 -0
  853. package/dist/features/tabbed-dialog/react/components/TabbedDialog.d.ts +71 -0
  854. package/dist/features/tabbed-dialog/react/components/TabbedDialog.d.ts.map +1 -0
  855. package/dist/features/tabbed-dialog/react/components/TabbedDialog.js +72 -0
  856. package/dist/features/tabbed-dialog/react/components/TabbedDialog.js.map +1 -0
  857. package/dist/features/tabbed-dialog/react/hooks/useTabbedDialog.d.ts +39 -0
  858. package/dist/features/tabbed-dialog/react/hooks/useTabbedDialog.d.ts.map +1 -0
  859. package/dist/features/tabbed-dialog/react/hooks/useTabbedDialog.js +50 -0
  860. package/dist/features/tabbed-dialog/react/hooks/useTabbedDialog.js.map +1 -0
  861. package/dist/features/tabbed-dialog/rules.d.ts +13 -0
  862. package/dist/features/tabbed-dialog/rules.d.ts.map +1 -0
  863. package/dist/features/tabbed-dialog/rules.js.map +1 -0
  864. package/dist/features/tabbed-dialog/styles/tabbed-dialog.css +406 -0
  865. package/dist/features/tabbed-dialog/types.d.ts +51 -0
  866. package/dist/features/tabbed-dialog/types.d.ts.map +1 -0
  867. package/dist/features/tabbed-dialog/types.js +23 -0
  868. package/dist/features/tabbed-dialog/types.js.map +1 -0
  869. package/dist/features/viewer-shell/react/components/ViewportSwitcher.d.ts +1 -1
  870. package/dist/features/viewer-shell/react/components/ViewportSwitcher.js +1 -1
  871. package/dist/features/viewer-shell/rules.d.ts +1 -1
  872. package/dist/features/viewer-shell/rules.js +1 -1
  873. package/dist/icon-name.d.ts +21 -0
  874. package/dist/icon-name.d.ts.map +1 -0
  875. package/dist/icon-name.js +25 -0
  876. package/dist/icon-name.js.map +1 -0
  877. package/dist/index.d.ts +16 -9
  878. package/dist/index.d.ts.map +1 -1
  879. package/dist/index.js +32 -9
  880. package/dist/index.js.map +1 -1
  881. package/dist/react/components/AgentIcon.d.ts +5 -3
  882. package/dist/react/components/AgentIcon.d.ts.map +1 -1
  883. package/dist/react/components/AgentIcon.js +40 -13
  884. package/dist/react/components/AgentIcon.js.map +1 -1
  885. package/dist/react/components/AppChromeHeader.js +1 -1
  886. package/dist/react/components/AppChromeHeader.js.map +1 -1
  887. package/dist/react/components/CustomSelect.d.ts +19 -4
  888. package/dist/react/components/CustomSelect.d.ts.map +1 -1
  889. package/dist/react/components/CustomSelect.js +59 -12
  890. package/dist/react/components/CustomSelect.js.map +1 -1
  891. package/dist/react/components/EdgeScrollZones.js +1 -1
  892. package/dist/react/components/EdgeScrollZones.js.map +1 -1
  893. package/dist/react/components/ExportDiagnosticsButton.d.ts.map +1 -1
  894. package/dist/react/components/ExportDiagnosticsButton.js +5 -2
  895. package/dist/react/components/ExportDiagnosticsButton.js.map +1 -1
  896. package/dist/react/components/HeaderActionsMenu.d.ts +1 -1
  897. package/dist/react/components/HeaderActionsMenu.d.ts.map +1 -1
  898. package/dist/react/components/HeaderActionsMenu.js +1 -1
  899. package/dist/react/components/HeaderActionsMenu.js.map +1 -1
  900. package/dist/react/components/Icon.d.ts +7 -4
  901. package/dist/react/components/Icon.d.ts.map +1 -1
  902. package/dist/react/components/Icon.js +133 -213
  903. package/dist/react/components/Icon.js.map +1 -1
  904. package/dist/react/components/LanguageMenu.d.ts +2 -4
  905. package/dist/react/components/LanguageMenu.d.ts.map +1 -1
  906. package/dist/react/components/LanguageMenu.js +1 -1
  907. package/dist/react/components/LanguageMenu.js.map +1 -1
  908. package/dist/react/components/Loading.js +1 -1
  909. package/dist/react/components/Loading.js.map +1 -1
  910. package/dist/react/components/PaletteTweaks.js +1 -1
  911. package/dist/react/components/PaletteTweaks.js.map +1 -1
  912. package/dist/react/components/RemixIcon.d.ts +3 -3
  913. package/dist/react/components/RemixIcon.d.ts.map +1 -1
  914. package/dist/react/components/RemixIcon.js +39 -3
  915. package/dist/react/components/RemixIcon.js.map +1 -1
  916. package/dist/react/components/Toast.js +1 -1
  917. package/dist/react/components/Toast.js.map +1 -1
  918. package/dist/react/components/WorkingDirPicker.js +1 -1
  919. package/dist/react/components/WorkingDirPicker.js.map +1 -1
  920. package/dist/react/components/agent-icon-data-uris.generated.d.ts +2 -0
  921. package/dist/react/components/agent-icon-data-uris.generated.d.ts.map +1 -0
  922. package/dist/react/components/agent-icon-data-uris.generated.js +27 -0
  923. package/dist/react/components/agent-icon-data-uris.generated.js.map +1 -0
  924. package/dist/react/components/remixicon-font/remixicon.css +3270 -0
  925. package/dist/react/components/remixicon-font/remixicon.woff2 +0 -0
  926. package/dist/react/hooks/useBrandFonts.d.ts.map +1 -1
  927. package/dist/react/hooks/useBrandFonts.js +2 -3
  928. package/dist/react/hooks/useBrandFonts.js.map +1 -1
  929. package/dist/react/mcp-ui/McpUiHost.d.ts +19 -0
  930. package/dist/react/mcp-ui/McpUiHost.d.ts.map +1 -0
  931. package/dist/react/mcp-ui/McpUiHost.js +34 -0
  932. package/dist/react/mcp-ui/McpUiHost.js.map +1 -0
  933. package/dist/react/mcp-ui/host-message-source.d.ts +27 -0
  934. package/dist/react/mcp-ui/host-message-source.d.ts.map +1 -0
  935. package/dist/react/mcp-ui/host-message-source.js +33 -0
  936. package/dist/react/mcp-ui/host-message-source.js.map +1 -0
  937. package/dist/react/mcp-ui/index.d.ts +23 -0
  938. package/dist/react/mcp-ui/index.d.ts.map +1 -0
  939. package/dist/react/mcp-ui/index.js +26 -0
  940. package/dist/react/mcp-ui/index.js.map +1 -0
  941. package/dist/react/mcp-ui/useMcpUiHost.d.ts +160 -0
  942. package/dist/react/mcp-ui/useMcpUiHost.d.ts.map +1 -0
  943. package/dist/react/mcp-ui/useMcpUiHost.js +193 -0
  944. package/dist/react/mcp-ui/useMcpUiHost.js.map +1 -0
  945. package/dist/renderers/annotation-canvas/dependencies.d.ts +13 -0
  946. package/dist/renderers/annotation-canvas/dependencies.d.ts.map +1 -0
  947. package/dist/renderers/annotation-canvas/dependencies.js +8 -0
  948. package/dist/renderers/annotation-canvas/dependencies.js.map +1 -0
  949. package/dist/renderers/annotation-canvas/drawing.d.ts +39 -0
  950. package/dist/renderers/annotation-canvas/drawing.d.ts.map +1 -0
  951. package/dist/renderers/annotation-canvas/drawing.js +135 -0
  952. package/dist/renderers/annotation-canvas/drawing.js.map +1 -0
  953. package/dist/renderers/annotation-canvas/index.d.ts +13 -0
  954. package/dist/renderers/annotation-canvas/index.d.ts.map +1 -0
  955. package/dist/renderers/annotation-canvas/index.js +7 -0
  956. package/dist/renderers/annotation-canvas/index.js.map +1 -0
  957. package/dist/renderers/annotation-canvas/ports.d.ts +30 -0
  958. package/dist/renderers/annotation-canvas/ports.d.ts.map +1 -0
  959. package/dist/renderers/annotation-canvas/ports.js +2 -0
  960. package/dist/renderers/annotation-canvas/ports.js.map +1 -0
  961. package/dist/renderers/annotation-canvas/react/components/AnnotationCanvas.d.ts +24 -0
  962. package/dist/renderers/annotation-canvas/react/components/AnnotationCanvas.d.ts.map +1 -0
  963. package/dist/renderers/annotation-canvas/react/components/AnnotationCanvas.js +102 -0
  964. package/dist/renderers/annotation-canvas/react/components/AnnotationCanvas.js.map +1 -0
  965. package/dist/renderers/annotation-canvas/react/components/icons.d.ts +11 -0
  966. package/dist/renderers/annotation-canvas/react/components/icons.d.ts.map +1 -0
  967. package/dist/renderers/annotation-canvas/react/components/icons.js +21 -0
  968. package/dist/renderers/annotation-canvas/react/components/icons.js.map +1 -0
  969. package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.controller.d.ts +146 -0
  970. package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.controller.d.ts.map +1 -0
  971. package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.controller.js +118 -0
  972. package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.controller.js.map +1 -0
  973. package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.d.ts +101 -0
  974. package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.d.ts.map +1 -0
  975. package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.js +834 -0
  976. package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.js.map +1 -0
  977. package/dist/renderers/annotation-canvas/rules.d.ts +73 -0
  978. package/dist/renderers/annotation-canvas/rules.d.ts.map +1 -0
  979. package/dist/renderers/annotation-canvas/rules.js +177 -0
  980. package/dist/renderers/annotation-canvas/rules.js.map +1 -0
  981. package/dist/renderers/annotation-canvas/types.d.ts +108 -0
  982. package/dist/renderers/annotation-canvas/types.d.ts.map +1 -0
  983. package/dist/renderers/annotation-canvas/types.js +2 -0
  984. package/dist/renderers/annotation-canvas/types.js.map +1 -0
  985. package/dist/renderers/html-utils.d.ts +25 -0
  986. package/dist/renderers/html-utils.d.ts.map +1 -0
  987. package/dist/renderers/html-utils.js +53 -0
  988. package/dist/renderers/html-utils.js.map +1 -0
  989. package/dist/renderers/index.d.ts +45 -0
  990. package/dist/renderers/index.d.ts.map +1 -0
  991. package/dist/renderers/index.js +36 -0
  992. package/dist/renderers/index.js.map +1 -0
  993. package/dist/renderers/new-tab-preview.d.ts +22 -0
  994. package/dist/renderers/new-tab-preview.d.ts.map +1 -0
  995. package/dist/renderers/new-tab-preview.js +50 -0
  996. package/dist/renderers/new-tab-preview.js.map +1 -0
  997. package/dist/renderers/preview-modal-shell/index.d.ts +10 -0
  998. package/dist/renderers/preview-modal-shell/index.d.ts.map +1 -0
  999. package/dist/renderers/preview-modal-shell/index.js +5 -0
  1000. package/dist/renderers/preview-modal-shell/index.js.map +1 -0
  1001. package/dist/renderers/preview-modal-shell/react/components/PreviewModalShell.d.ts +62 -0
  1002. package/dist/renderers/preview-modal-shell/react/components/PreviewModalShell.d.ts.map +1 -0
  1003. package/dist/renderers/preview-modal-shell/react/components/PreviewModalShell.js +74 -0
  1004. package/dist/renderers/preview-modal-shell/react/components/PreviewModalShell.js.map +1 -0
  1005. package/dist/renderers/preview-modal-shell/react/components/icons.d.ts +12 -0
  1006. package/dist/renderers/preview-modal-shell/react/components/icons.d.ts.map +1 -0
  1007. package/dist/renderers/preview-modal-shell/react/components/icons.js +11 -0
  1008. package/dist/renderers/preview-modal-shell/react/components/icons.js.map +1 -0
  1009. package/dist/renderers/preview-modal-shell/react/hooks/usePreviewModalShell.d.ts +50 -0
  1010. package/dist/renderers/preview-modal-shell/react/hooks/usePreviewModalShell.d.ts.map +1 -0
  1011. package/dist/renderers/preview-modal-shell/react/hooks/usePreviewModalShell.js +171 -0
  1012. package/dist/renderers/preview-modal-shell/react/hooks/usePreviewModalShell.js.map +1 -0
  1013. package/dist/renderers/preview-modal-shell/rules.d.ts +44 -0
  1014. package/dist/renderers/preview-modal-shell/rules.d.ts.map +1 -0
  1015. package/dist/renderers/preview-modal-shell/rules.js +50 -0
  1016. package/dist/renderers/preview-modal-shell/rules.js.map +1 -0
  1017. package/dist/renderers/preview-modal-shell/types.d.ts +50 -0
  1018. package/dist/renderers/preview-modal-shell/types.d.ts.map +1 -0
  1019. package/dist/renderers/preview-modal-shell/types.js +14 -0
  1020. package/dist/renderers/preview-modal-shell/types.js.map +1 -0
  1021. package/dist/renderers/react/components/ArtifactView.d.ts +46 -0
  1022. package/dist/renderers/react/components/ArtifactView.d.ts.map +1 -0
  1023. package/dist/renderers/react/components/ArtifactView.js +35 -0
  1024. package/dist/renderers/react/components/ArtifactView.js.map +1 -0
  1025. package/dist/renderers/react/components/SrcDocSandbox.d.ts +13 -0
  1026. package/dist/renderers/react/components/SrcDocSandbox.d.ts.map +1 -0
  1027. package/dist/renderers/react/components/SrcDocSandbox.js +34 -0
  1028. package/dist/renderers/react/components/SrcDocSandbox.js.map +1 -0
  1029. package/dist/renderers/react/i18n.d.ts +30 -0
  1030. package/dist/renderers/react/i18n.d.ts.map +1 -0
  1031. package/dist/renderers/react/i18n.js +40 -0
  1032. package/dist/renderers/react/i18n.js.map +1 -0
  1033. package/dist/renderers/registry.d.ts +57 -0
  1034. package/dist/renderers/registry.d.ts.map +1 -0
  1035. package/dist/renderers/registry.js +39 -0
  1036. package/dist/renderers/registry.js.map +1 -0
  1037. package/dist/renderers/renderers/html.d.ts +10 -0
  1038. package/dist/renderers/renderers/html.d.ts.map +1 -0
  1039. package/dist/renderers/renderers/html.js +23 -0
  1040. package/dist/renderers/renderers/html.js.map +1 -0
  1041. package/dist/renderers/renderers/index.d.ts +12 -0
  1042. package/dist/renderers/renderers/index.d.ts.map +1 -0
  1043. package/dist/renderers/renderers/index.js +18 -0
  1044. package/dist/renderers/renderers/index.js.map +1 -0
  1045. package/dist/renderers/renderers/markdown.d.ts +4 -0
  1046. package/dist/renderers/renderers/markdown.d.ts.map +1 -0
  1047. package/dist/renderers/renderers/markdown.js +126 -0
  1048. package/dist/renderers/renderers/markdown.js.map +1 -0
  1049. package/dist/renderers/renderers/react-component.d.ts +10 -0
  1050. package/dist/renderers/renderers/react-component.d.ts.map +1 -0
  1051. package/dist/renderers/renderers/react-component.js +19 -0
  1052. package/dist/renderers/renderers/react-component.js.map +1 -0
  1053. package/dist/renderers/renderers/svg.d.ts +3 -0
  1054. package/dist/renderers/renderers/svg.d.ts.map +1 -0
  1055. package/dist/renderers/renderers/svg.js +14 -0
  1056. package/dist/renderers/renderers/svg.js.map +1 -0
  1057. package/dist/renderers/sandbox-bridge.d.ts +44 -0
  1058. package/dist/renderers/sandbox-bridge.d.ts.map +1 -0
  1059. package/dist/renderers/sandbox-bridge.js +46 -0
  1060. package/dist/renderers/sandbox-bridge.js.map +1 -0
  1061. package/dist/renderers/sandboxed-document.d.ts +34 -0
  1062. package/dist/renderers/sandboxed-document.d.ts.map +1 -0
  1063. package/dist/renderers/sandboxed-document.js +152 -0
  1064. package/dist/renderers/sandboxed-document.js.map +1 -0
  1065. package/dist/renderers/shiki.d.ts +2 -0
  1066. package/dist/renderers/shiki.d.ts.map +1 -0
  1067. package/dist/renderers/shiki.js +55 -0
  1068. package/dist/renderers/shiki.js.map +1 -0
  1069. package/dist/renderers/srcdoc/bridge.d.ts +37 -0
  1070. package/dist/renderers/srcdoc/bridge.d.ts.map +1 -0
  1071. package/dist/renderers/srcdoc/bridge.js +35 -0
  1072. package/dist/renderers/srcdoc/bridge.js.map +1 -0
  1073. package/dist/renderers/srcdoc/build.d.ts +130 -0
  1074. package/dist/renderers/srcdoc/build.d.ts.map +1 -0
  1075. package/dist/renderers/srcdoc/build.js +448 -0
  1076. package/dist/renderers/srcdoc/build.js.map +1 -0
  1077. package/dist/renderers/srcdoc/index.d.ts +3 -0
  1078. package/dist/renderers/srcdoc/index.d.ts.map +1 -0
  1079. package/dist/renderers/srcdoc/index.js +3 -0
  1080. package/dist/renderers/srcdoc/index.js.map +1 -0
  1081. package/dist/renderers/types.d.ts +98 -0
  1082. package/dist/renderers/types.d.ts.map +1 -0
  1083. package/dist/renderers/types.js +2 -0
  1084. package/dist/renderers/types.js.map +1 -0
  1085. package/dist/renderers/url-load-decision.d.ts +93 -0
  1086. package/dist/renderers/url-load-decision.d.ts.map +1 -0
  1087. package/dist/renderers/url-load-decision.js +116 -0
  1088. package/dist/renderers/url-load-decision.js.map +1 -0
  1089. package/dist/utils/appearance.d.ts +2 -16
  1090. package/dist/utils/appearance.d.ts.map +1 -1
  1091. package/dist/utils/appearance.js +11 -51
  1092. package/dist/utils/appearance.js.map +1 -1
  1093. package/dist/utils/endpoint-policy.d.ts +65 -0
  1094. package/dist/utils/endpoint-policy.d.ts.map +1 -0
  1095. package/dist/utils/endpoint-policy.js +157 -0
  1096. package/dist/utils/endpoint-policy.js.map +1 -0
  1097. package/dist/utils/file-transfer.d.ts +10 -0
  1098. package/dist/utils/file-transfer.d.ts.map +1 -1
  1099. package/dist/utils/file-transfer.js +22 -1
  1100. package/dist/utils/file-transfer.js.map +1 -1
  1101. package/dist/utils/notifications.d.ts +2 -9
  1102. package/dist/utils/notifications.d.ts.map +1 -1
  1103. package/dist/utils/notifications.js +1 -13
  1104. package/dist/utils/notifications.js.map +1 -1
  1105. package/package.json +123 -20
  1106. package/LICENSE +0 -201
  1107. package/dist/components/AgentIcon.d.ts +0 -15
  1108. package/dist/components/AgentIcon.d.ts.map +0 -1
  1109. package/dist/components/AgentIcon.js +0 -80
  1110. package/dist/components/AgentIcon.js.map +0 -1
  1111. package/dist/components/AppChromeHeader.d.ts +0 -19
  1112. package/dist/components/AppChromeHeader.d.ts.map +0 -1
  1113. package/dist/components/AppChromeHeader.js +0 -11
  1114. package/dist/components/AppChromeHeader.js.map +0 -1
  1115. package/dist/components/CustomSelect.d.ts +0 -28
  1116. package/dist/components/CustomSelect.d.ts.map +0 -1
  1117. package/dist/components/CustomSelect.js +0 -167
  1118. package/dist/components/CustomSelect.js.map +0 -1
  1119. package/dist/components/ExportDiagnosticsButton.d.ts +0 -40
  1120. package/dist/components/ExportDiagnosticsButton.d.ts.map +0 -1
  1121. package/dist/components/ExportDiagnosticsButton.js +0 -112
  1122. package/dist/components/ExportDiagnosticsButton.js.map +0 -1
  1123. package/dist/components/Icon.d.ts +0 -15
  1124. package/dist/components/Icon.d.ts.map +0 -1
  1125. package/dist/components/Icon.js +0 -236
  1126. package/dist/components/Icon.js.map +0 -1
  1127. package/dist/components/KitErrorBoundary.d.ts +0 -13
  1128. package/dist/components/KitErrorBoundary.d.ts.map +0 -1
  1129. package/dist/components/KitErrorBoundary.js +0 -30
  1130. package/dist/components/KitErrorBoundary.js.map +0 -1
  1131. package/dist/components/LanguageMenu.d.ts +0 -23
  1132. package/dist/components/LanguageMenu.d.ts.map +0 -1
  1133. package/dist/components/LanguageMenu.js +0 -44
  1134. package/dist/components/LanguageMenu.js.map +0 -1
  1135. package/dist/components/Loading.d.ts +0 -27
  1136. package/dist/components/Loading.d.ts.map +0 -1
  1137. package/dist/components/Loading.js +0 -24
  1138. package/dist/components/Loading.js.map +0 -1
  1139. package/dist/components/PaletteTweaks.d.ts +0 -11
  1140. package/dist/components/PaletteTweaks.d.ts.map +0 -1
  1141. package/dist/components/PaletteTweaks.js +0 -65
  1142. package/dist/components/PaletteTweaks.js.map +0 -1
  1143. package/dist/components/RemixIcon.d.ts +0 -15
  1144. package/dist/components/RemixIcon.d.ts.map +0 -1
  1145. package/dist/components/RemixIcon.js +0 -19
  1146. package/dist/components/RemixIcon.js.map +0 -1
  1147. package/dist/components/Toast.d.ts +0 -18
  1148. package/dist/components/Toast.d.ts.map +0 -1
  1149. package/dist/components/Toast.js +0 -70
  1150. package/dist/components/Toast.js.map +0 -1
  1151. package/dist/components/TooltipLayer.d.ts +0 -9
  1152. package/dist/components/TooltipLayer.d.ts.map +0 -1
  1153. package/dist/components/TooltipLayer.js +0 -289
  1154. package/dist/components/TooltipLayer.js.map +0 -1
  1155. package/dist/components/WorkingDirPicker.d.ts +0 -47
  1156. package/dist/components/WorkingDirPicker.d.ts.map +0 -1
  1157. package/dist/components/WorkingDirPicker.js +0 -63
  1158. package/dist/components/WorkingDirPicker.js.map +0 -1
  1159. package/dist/features/agent-tools/model-context.d.ts +0 -30
  1160. package/dist/features/agent-tools/model-context.d.ts.map +0 -1
  1161. package/dist/features/agent-tools/model-context.js +0 -29
  1162. package/dist/features/agent-tools/model-context.js.map +0 -1
  1163. package/dist/features/agent-tools/types.d.ts +0 -34
  1164. package/dist/features/agent-tools/types.d.ts.map +0 -1
  1165. package/dist/features/agent-tools/types.js +0 -18
  1166. package/dist/features/agent-tools/types.js.map +0 -1
  1167. package/dist/features/rich-text-input/constants.d.ts +0 -16
  1168. package/dist/features/rich-text-input/constants.d.ts.map +0 -1
  1169. package/dist/features/rich-text-input/constants.js +0 -18
  1170. package/dist/features/rich-text-input/constants.js.map +0 -1
  1171. package/dist/features/rich-text-input/deserialize.d.ts +0 -9
  1172. package/dist/features/rich-text-input/deserialize.d.ts.map +0 -1
  1173. package/dist/features/rich-text-input/deserialize.js +0 -55
  1174. package/dist/features/rich-text-input/deserialize.js.map +0 -1
  1175. package/dist/features/rich-text-input/index.d.ts +0 -12
  1176. package/dist/features/rich-text-input/index.d.ts.map +0 -1
  1177. package/dist/features/rich-text-input/index.js +0 -11
  1178. package/dist/features/rich-text-input/index.js.map +0 -1
  1179. package/dist/features/rich-text-input/mention-node.d.ts +0 -56
  1180. package/dist/features/rich-text-input/mention-node.d.ts.map +0 -1
  1181. package/dist/features/rich-text-input/mention-node.js +0 -142
  1182. package/dist/features/rich-text-input/mention-node.js.map +0 -1
  1183. package/dist/features/rich-text-input/mention-parser.d.ts +0 -47
  1184. package/dist/features/rich-text-input/mention-parser.d.ts.map +0 -1
  1185. package/dist/features/rich-text-input/mention-parser.js +0 -239
  1186. package/dist/features/rich-text-input/mention-parser.js.map +0 -1
  1187. package/dist/features/rich-text-input/react/components/CaretFloatingLayer.d.ts +0 -20
  1188. package/dist/features/rich-text-input/react/components/CaretFloatingLayer.d.ts.map +0 -1
  1189. package/dist/features/rich-text-input/react/components/CaretFloatingLayer.js +0 -33
  1190. package/dist/features/rich-text-input/react/components/CaretFloatingLayer.js.map +0 -1
  1191. package/dist/features/rich-text-input/react/components/RichTextInput.d.ts +0 -61
  1192. package/dist/features/rich-text-input/react/components/RichTextInput.d.ts.map +0 -1
  1193. package/dist/features/rich-text-input/react/components/RichTextInput.js +0 -154
  1194. package/dist/features/rich-text-input/react/components/RichTextInput.js.map +0 -1
  1195. package/dist/features/rich-text-input/react/hooks/useCaretFloatingLayerPosition.d.ts +0 -15
  1196. package/dist/features/rich-text-input/react/hooks/useCaretFloatingLayerPosition.d.ts.map +0 -1
  1197. package/dist/features/rich-text-input/react/hooks/useCaretFloatingLayerPosition.js +0 -54
  1198. package/dist/features/rich-text-input/react/hooks/useCaretFloatingLayerPosition.js.map +0 -1
  1199. package/dist/features/rich-text-input/react/hooks/useKeyboardCommands.d.ts +0 -11
  1200. package/dist/features/rich-text-input/react/hooks/useKeyboardCommands.d.ts.map +0 -1
  1201. package/dist/features/rich-text-input/react/hooks/useKeyboardCommands.js +0 -70
  1202. package/dist/features/rich-text-input/react/hooks/useKeyboardCommands.js.map +0 -1
  1203. package/dist/features/rich-text-input/react/hooks/useMentionAtomicNavigation.d.ts +0 -8
  1204. package/dist/features/rich-text-input/react/hooks/useMentionAtomicNavigation.d.ts.map +0 -1
  1205. package/dist/features/rich-text-input/react/hooks/useMentionAtomicNavigation.js +0 -63
  1206. package/dist/features/rich-text-input/react/hooks/useMentionAtomicNavigation.js.map +0 -1
  1207. package/dist/features/rich-text-input/react/hooks/useMentionColorStamping.d.ts +0 -18
  1208. package/dist/features/rich-text-input/react/hooks/useMentionColorStamping.d.ts.map +0 -1
  1209. package/dist/features/rich-text-input/react/hooks/useMentionColorStamping.js +0 -64
  1210. package/dist/features/rich-text-input/react/hooks/useMentionColorStamping.js.map +0 -1
  1211. package/dist/features/rich-text-input/react/hooks/usePasteFiles.d.ts +0 -5
  1212. package/dist/features/rich-text-input/react/hooks/usePasteFiles.d.ts.map +0 -1
  1213. package/dist/features/rich-text-input/react/hooks/usePasteFiles.js +0 -24
  1214. package/dist/features/rich-text-input/react/hooks/usePasteFiles.js.map +0 -1
  1215. package/dist/features/rich-text-input/react/hooks/useSeededValue.d.ts +0 -21
  1216. package/dist/features/rich-text-input/react/hooks/useSeededValue.d.ts.map +0 -1
  1217. package/dist/features/rich-text-input/react/hooks/useSeededValue.js +0 -35
  1218. package/dist/features/rich-text-input/react/hooks/useSeededValue.js.map +0 -1
  1219. package/dist/features/rich-text-input/react/hooks/useSyncedOnChange.d.ts +0 -10
  1220. package/dist/features/rich-text-input/react/hooks/useSyncedOnChange.d.ts.map +0 -1
  1221. package/dist/features/rich-text-input/react/hooks/useSyncedOnChange.js +0 -29
  1222. package/dist/features/rich-text-input/react/hooks/useSyncedOnChange.js.map +0 -1
  1223. package/dist/features/rich-text-input/react/hooks/useTriggerDetection.d.ts +0 -6
  1224. package/dist/features/rich-text-input/react/hooks/useTriggerDetection.d.ts.map +0 -1
  1225. package/dist/features/rich-text-input/react/hooks/useTriggerDetection.js +0 -39
  1226. package/dist/features/rich-text-input/react/hooks/useTriggerDetection.js.map +0 -1
  1227. package/dist/features/rich-text-input/react/test-support/lexical-harness.d.ts +0 -11
  1228. package/dist/features/rich-text-input/react/test-support/lexical-harness.d.ts.map +0 -1
  1229. package/dist/features/rich-text-input/react/test-support/lexical-harness.js +0 -35
  1230. package/dist/features/rich-text-input/react/test-support/lexical-harness.js.map +0 -1
  1231. package/dist/features/rich-text-input/rules.d.ts +0 -83
  1232. package/dist/features/rich-text-input/rules.d.ts.map +0 -1
  1233. package/dist/features/rich-text-input/rules.js +0 -317
  1234. package/dist/features/rich-text-input/rules.js.map +0 -1
  1235. package/dist/features/rich-text-input/serialize.d.ts +0 -8
  1236. package/dist/features/rich-text-input/serialize.d.ts.map +0 -1
  1237. package/dist/features/rich-text-input/serialize.js +0 -44
  1238. package/dist/features/rich-text-input/serialize.js.map +0 -1
  1239. package/dist/features/rich-text-input/types.d.ts +0 -83
  1240. package/dist/features/rich-text-input/types.d.ts.map +0 -1
  1241. package/dist/features/rich-text-input/types.js +0 -15
  1242. package/dist/features/rich-text-input/types.js.map +0 -1
  1243. package/dist/features/settings-dialog/index.d.ts +0 -7
  1244. package/dist/features/settings-dialog/index.d.ts.map +0 -1
  1245. package/dist/features/settings-dialog/index.js +0 -4
  1246. package/dist/features/settings-dialog/index.js.map +0 -1
  1247. package/dist/features/settings-dialog/react/components/SettingsDialogShell.d.ts +0 -49
  1248. package/dist/features/settings-dialog/react/components/SettingsDialogShell.d.ts.map +0 -1
  1249. package/dist/features/settings-dialog/react/components/SettingsDialogShell.js +0 -55
  1250. package/dist/features/settings-dialog/react/components/SettingsDialogShell.js.map +0 -1
  1251. package/dist/features/settings-dialog/react/hooks/useSettingsDialogShell.d.ts +0 -39
  1252. package/dist/features/settings-dialog/react/hooks/useSettingsDialogShell.d.ts.map +0 -1
  1253. package/dist/features/settings-dialog/react/hooks/useSettingsDialogShell.js +0 -50
  1254. package/dist/features/settings-dialog/react/hooks/useSettingsDialogShell.js.map +0 -1
  1255. package/dist/features/settings-dialog/rules.d.ts +0 -13
  1256. package/dist/features/settings-dialog/rules.d.ts.map +0 -1
  1257. package/dist/features/settings-dialog/rules.js.map +0 -1
  1258. package/dist/features/settings-dialog/tabs/appearance/constants.d.ts +0 -12
  1259. package/dist/features/settings-dialog/tabs/appearance/constants.d.ts.map +0 -1
  1260. package/dist/features/settings-dialog/tabs/appearance/constants.js +0 -10
  1261. package/dist/features/settings-dialog/tabs/appearance/constants.js.map +0 -1
  1262. package/dist/features/settings-dialog/tabs/appearance/index.d.ts +0 -6
  1263. package/dist/features/settings-dialog/tabs/appearance/index.d.ts.map +0 -1
  1264. package/dist/features/settings-dialog/tabs/appearance/index.js.map +0 -1
  1265. package/dist/features/settings-dialog/tabs/appearance/react/components/AppearanceTab.d.ts.map +0 -1
  1266. package/dist/features/settings-dialog/tabs/appearance/react/components/AppearanceTab.js +0 -31
  1267. package/dist/features/settings-dialog/tabs/appearance/react/components/AppearanceTab.js.map +0 -1
  1268. package/dist/features/settings-dialog/tabs/appearance/types.d.ts +0 -12
  1269. package/dist/features/settings-dialog/tabs/appearance/types.d.ts.map +0 -1
  1270. package/dist/features/settings-dialog/tabs/appearance/types.js +0 -8
  1271. package/dist/features/settings-dialog/tabs/appearance/types.js.map +0 -1
  1272. package/dist/features/settings-dialog/tabs/instructions/index.d.ts.map +0 -1
  1273. package/dist/features/settings-dialog/tabs/instructions/index.js.map +0 -1
  1274. package/dist/features/settings-dialog/tabs/instructions/react/components/InstructionsTab.d.ts.map +0 -1
  1275. package/dist/features/settings-dialog/tabs/instructions/react/components/InstructionsTab.js +0 -16
  1276. package/dist/features/settings-dialog/tabs/instructions/react/components/InstructionsTab.js.map +0 -1
  1277. package/dist/features/settings-dialog/tabs/integrations/constants.d.ts.map +0 -1
  1278. package/dist/features/settings-dialog/tabs/integrations/constants.js.map +0 -1
  1279. package/dist/features/settings-dialog/tabs/integrations/dependencies.d.ts.map +0 -1
  1280. package/dist/features/settings-dialog/tabs/integrations/dependencies.js.map +0 -1
  1281. package/dist/features/settings-dialog/tabs/integrations/index.d.ts +0 -19
  1282. package/dist/features/settings-dialog/tabs/integrations/index.d.ts.map +0 -1
  1283. package/dist/features/settings-dialog/tabs/integrations/index.js +0 -10
  1284. package/dist/features/settings-dialog/tabs/integrations/index.js.map +0 -1
  1285. package/dist/features/settings-dialog/tabs/integrations/ports.d.ts.map +0 -1
  1286. package/dist/features/settings-dialog/tabs/integrations/ports.js.map +0 -1
  1287. package/dist/features/settings-dialog/tabs/integrations/react/components/ClientPicker.d.ts.map +0 -1
  1288. package/dist/features/settings-dialog/tabs/integrations/react/components/ClientPicker.js +0 -31
  1289. package/dist/features/settings-dialog/tabs/integrations/react/components/ClientPicker.js.map +0 -1
  1290. package/dist/features/settings-dialog/tabs/integrations/react/components/CodexInstallToggleButton.d.ts.map +0 -1
  1291. package/dist/features/settings-dialog/tabs/integrations/react/components/CodexInstallToggleButton.js +0 -21
  1292. package/dist/features/settings-dialog/tabs/integrations/react/components/CodexInstallToggleButton.js.map +0 -1
  1293. package/dist/features/settings-dialog/tabs/integrations/react/components/IntegrationsTab.d.ts +0 -27
  1294. package/dist/features/settings-dialog/tabs/integrations/react/components/IntegrationsTab.d.ts.map +0 -1
  1295. package/dist/features/settings-dialog/tabs/integrations/react/components/IntegrationsTab.js +0 -54
  1296. package/dist/features/settings-dialog/tabs/integrations/react/components/IntegrationsTab.js.map +0 -1
  1297. package/dist/features/settings-dialog/tabs/integrations/react/components/SnippetBlock.d.ts.map +0 -1
  1298. package/dist/features/settings-dialog/tabs/integrations/react/components/SnippetBlock.js +0 -53
  1299. package/dist/features/settings-dialog/tabs/integrations/react/components/SnippetBlock.js.map +0 -1
  1300. package/dist/features/settings-dialog/tabs/integrations/react/hooks/useCodexInstallToggle.d.ts.map +0 -1
  1301. package/dist/features/settings-dialog/tabs/integrations/react/hooks/useCodexInstallToggle.js.map +0 -1
  1302. package/dist/features/settings-dialog/tabs/integrations/react/hooks/useMcpInstallInfo.d.ts.map +0 -1
  1303. package/dist/features/settings-dialog/tabs/integrations/react/hooks/useMcpInstallInfo.js.map +0 -1
  1304. package/dist/features/settings-dialog/tabs/integrations/rules.d.ts +0 -45
  1305. package/dist/features/settings-dialog/tabs/integrations/rules.d.ts.map +0 -1
  1306. package/dist/features/settings-dialog/tabs/integrations/rules.js +0 -181
  1307. package/dist/features/settings-dialog/tabs/integrations/rules.js.map +0 -1
  1308. package/dist/features/settings-dialog/tabs/integrations/types.d.ts +0 -58
  1309. package/dist/features/settings-dialog/tabs/integrations/types.d.ts.map +0 -1
  1310. package/dist/features/settings-dialog/tabs/integrations/types.js +0 -15
  1311. package/dist/features/settings-dialog/tabs/integrations/types.js.map +0 -1
  1312. package/dist/features/settings-dialog/tabs/language/index.d.ts.map +0 -1
  1313. package/dist/features/settings-dialog/tabs/language/index.js.map +0 -1
  1314. package/dist/features/settings-dialog/tabs/language/react/components/LanguageTab.d.ts.map +0 -1
  1315. package/dist/features/settings-dialog/tabs/language/react/components/LanguageTab.js +0 -18
  1316. package/dist/features/settings-dialog/tabs/language/react/components/LanguageTab.js.map +0 -1
  1317. package/dist/features/settings-dialog/tabs/language/types.d.ts +0 -15
  1318. package/dist/features/settings-dialog/tabs/language/types.d.ts.map +0 -1
  1319. package/dist/features/settings-dialog/tabs/language/types.js.map +0 -1
  1320. package/dist/features/settings-dialog/tabs/notifications/constants.d.ts.map +0 -1
  1321. package/dist/features/settings-dialog/tabs/notifications/constants.js +0 -8
  1322. package/dist/features/settings-dialog/tabs/notifications/constants.js.map +0 -1
  1323. package/dist/features/settings-dialog/tabs/notifications/index.d.ts +0 -5
  1324. package/dist/features/settings-dialog/tabs/notifications/index.d.ts.map +0 -1
  1325. package/dist/features/settings-dialog/tabs/notifications/index.js.map +0 -1
  1326. package/dist/features/settings-dialog/tabs/notifications/react/components/NotificationsTab.d.ts +0 -33
  1327. package/dist/features/settings-dialog/tabs/notifications/react/components/NotificationsTab.d.ts.map +0 -1
  1328. package/dist/features/settings-dialog/tabs/notifications/react/components/NotificationsTab.js +0 -71
  1329. package/dist/features/settings-dialog/tabs/notifications/react/components/NotificationsTab.js.map +0 -1
  1330. package/dist/features/settings-dialog/tabs/notifications/types.d.ts +0 -15
  1331. package/dist/features/settings-dialog/tabs/notifications/types.d.ts.map +0 -1
  1332. package/dist/features/settings-dialog/tabs/notifications/types.js.map +0 -1
  1333. package/dist/features/settings-dialog/tabs/privacy/index.d.ts +0 -5
  1334. package/dist/features/settings-dialog/tabs/privacy/index.d.ts.map +0 -1
  1335. package/dist/features/settings-dialog/tabs/privacy/index.js.map +0 -1
  1336. package/dist/features/settings-dialog/tabs/privacy/react/components/PrivacyTab.d.ts +0 -34
  1337. package/dist/features/settings-dialog/tabs/privacy/react/components/PrivacyTab.d.ts.map +0 -1
  1338. package/dist/features/settings-dialog/tabs/privacy/react/components/PrivacyTab.js +0 -36
  1339. package/dist/features/settings-dialog/tabs/privacy/react/components/PrivacyTab.js.map +0 -1
  1340. package/dist/features/settings-dialog/tabs/privacy/rules.d.ts.map +0 -1
  1341. package/dist/features/settings-dialog/tabs/privacy/rules.js +0 -70
  1342. package/dist/features/settings-dialog/tabs/privacy/rules.js.map +0 -1
  1343. package/dist/features/settings-dialog/tabs/privacy/types.d.ts.map +0 -1
  1344. package/dist/features/settings-dialog/tabs/privacy/types.js.map +0 -1
  1345. package/dist/features/settings-dialog/types.d.ts +0 -46
  1346. package/dist/features/settings-dialog/types.d.ts.map +0 -1
  1347. package/dist/features/settings-dialog/types.js +0 -18
  1348. package/dist/features/settings-dialog/types.js.map +0 -1
  1349. package/dist/hooks/useCoalescedCallback.d.ts +0 -35
  1350. package/dist/hooks/useCoalescedCallback.d.ts.map +0 -1
  1351. package/dist/hooks/useCoalescedCallback.js +0 -61
  1352. package/dist/hooks/useCoalescedCallback.js.map +0 -1
  1353. package/dist/hooks/useDebouncedValue.d.ts +0 -2
  1354. package/dist/hooks/useDebouncedValue.d.ts.map +0 -1
  1355. package/dist/hooks/useDebouncedValue.js +0 -14
  1356. package/dist/hooks/useDebouncedValue.js.map +0 -1
  1357. package/dist/hooks/useInView.d.ts +0 -19
  1358. package/dist/hooks/useInView.d.ts.map +0 -1
  1359. package/dist/hooks/useInView.js +0 -39
  1360. package/dist/hooks/useInView.js.map +0 -1
  1361. package/dist/hooks/useResizableSplitPane.d.ts +0 -44
  1362. package/dist/hooks/useResizableSplitPane.d.ts.map +0 -1
  1363. package/dist/hooks/useResizableSplitPane.js +0 -259
  1364. package/dist/hooks/useResizableSplitPane.js.map +0 -1
  1365. package/dist/hooks/useStableHandler.d.ts +0 -10
  1366. package/dist/hooks/useStableHandler.d.ts.map +0 -1
  1367. package/dist/hooks/useStableHandler.js +0 -17
  1368. package/dist/hooks/useStableHandler.js.map +0 -1
  1369. package/dist/vitest-chat-entry.d.ts +0 -13
  1370. package/dist/vitest-chat-entry.d.ts.map +0 -1
  1371. package/dist/vitest-chat-entry.js +0 -13
  1372. package/dist/vitest-chat-entry.js.map +0 -1
  1373. /package/dist/features/{settings-dialog/tabs/appearance → appearance}/index.js +0 -0
  1374. /package/dist/features/{settings-dialog/tabs/appearance → appearance}/react/components/AppearanceTab.d.ts +0 -0
  1375. /package/dist/features/{settings-dialog/tabs/integrations → execution}/ports.js +0 -0
  1376. /package/dist/features/{settings-dialog/tabs/language → i18n/dictionaries}/types.js +0 -0
  1377. /package/dist/features/{settings-dialog/tabs/instructions → instructions}/index.d.ts +0 -0
  1378. /package/dist/features/{settings-dialog/tabs/instructions → instructions}/index.js +0 -0
  1379. /package/dist/features/{settings-dialog/tabs/instructions → instructions}/react/components/InstructionsTab.d.ts +0 -0
  1380. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/constants.d.ts +0 -0
  1381. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/constants.js +0 -0
  1382. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/dependencies.d.ts +0 -0
  1383. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/dependencies.js +0 -0
  1384. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/ports.d.ts +0 -0
  1385. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/components/ClientPicker.d.ts +0 -0
  1386. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/components/CodexInstallToggleButton.d.ts +0 -0
  1387. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/components/SnippetBlock.d.ts +0 -0
  1388. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/hooks/useCodexInstallToggle.d.ts +0 -0
  1389. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/hooks/useCodexInstallToggle.js +0 -0
  1390. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/hooks/useMcpInstallInfo.d.ts +0 -0
  1391. /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/hooks/useMcpInstallInfo.js +0 -0
  1392. /package/dist/features/{settings-dialog/tabs/notifications → interactive-ui}/types.js +0 -0
  1393. /package/dist/features/{settings-dialog/tabs/language → language}/index.d.ts +0 -0
  1394. /package/dist/features/{settings-dialog/tabs/language → language}/index.js +0 -0
  1395. /package/dist/features/{settings-dialog/tabs/language → language}/react/components/LanguageTab.d.ts +0 -0
  1396. /package/dist/features/{settings-dialog/tabs/notifications → notifications}/constants.d.ts +0 -0
  1397. /package/dist/features/{settings-dialog/tabs/notifications → notifications}/index.js +0 -0
  1398. /package/dist/features/{settings-dialog/tabs/privacy → privacy}/index.js +0 -0
  1399. /package/dist/features/{settings-dialog/tabs/privacy → privacy}/rules.d.ts +0 -0
  1400. /package/dist/features/{settings-dialog/tabs/privacy → privacy}/types.d.ts +0 -0
  1401. /package/dist/features/{settings-dialog/tabs/privacy → privacy}/types.js +0 -0
  1402. /package/dist/features/{settings-dialog → tabbed-dialog}/rules.js +0 -0
@@ -0,0 +1,132 @@
1
+ /**
2
+ * @module features/mcp-ui/sandbox-proxy
3
+ *
4
+ * The one piece of NEW infrastructure the official `@mcp-ui/client` swap needs that this package's
5
+ * hand-rolled Host never did: a **sandbox proxy** page.
6
+ *
7
+ * ## Why this exists
8
+ *
9
+ * `@mcp-ui/client`'s `AppRenderer`/`AppFrame` do not mount a View by writing HTML into an iframe's
10
+ * `srcdoc` (the old `McpUiHost` did exactly that). Instead they point an iframe's `src` at a real,
11
+ * separately-served URL — the "sandbox proxy" — wait for that page to report itself ready
12
+ * (`ui/notifications/sandbox-proxy-ready`), and only THEN hand it the View's HTML via
13
+ * `ui/notifications/sandbox-resource-ready`. A host that never serves such a page gets an iframe
14
+ * that loads nothing and a `AppFrame`/`AppRenderer` that times out after 10s waiting for a ready
15
+ * signal that will never come.
16
+ *
17
+ * This module exports the proxy's source as a **string constant** rather than a static file this
18
+ * package's own build copies into `dist/`, for the same reason `surfaces/document.ts` builds HTML as
19
+ * template strings: the natural way for a HOST APPLICATION (Tovu's admin server, `examples/reference-web`'s
20
+ * dev server, any future consumer) to serve this is to mount ONE route that responds with this exact
21
+ * body — `res.type('html').send(SANDBOX_PROXY_HTML)` — not to vendor a copy of a file from this
22
+ * package's `dist/` into their own static-asset pipeline. A string a host can `fetch`/import needs no
23
+ * new build-script wiring on either side.
24
+ *
25
+ * ## What actually needs to be served, and where — the part this package cannot do for you
26
+ *
27
+ * This module only produces the BYTES. Actually serving them — mounting a route, choosing a path,
28
+ * deciding whether it needs a separate origin from the host app for defense-in-depth — is real
29
+ * per-host infrastructure this package has no way to reach into a consumer's server and add itself.
30
+ * See this constant's own doc for the concrete tradeoff. `examples/reference-web` mounts it (see
31
+ * that example's own server/vite config) as the reference wiring for both local development in this
32
+ * monorepo and for any external host copying the pattern.
33
+ *
34
+ * ## The relay contract this implements, verified against the real `@mcp-ui/client@7.1.1` bundle
35
+ *
36
+ * `AppFrame`'s internal mount effect (traced from the built package, since this exact mechanism is
37
+ * not part of its public `.d.ts` surface):
38
+ * 1. Creates an iframe, sets `sandbox="allow-scripts allow-same-origin allow-forms"`, and navigates
39
+ * it to the configured `sandbox.url`.
40
+ * 2. Waits (10s timeout) for a `postMessage` from that iframe's `contentWindow` whose `data.method`
41
+ * is `"ui/notifications/sandbox-proxy-ready"`.
42
+ * 3. Once ready, delivers the View's HTML via `postMessage({method: "ui/notifications/sandbox-resource-ready",
43
+ * params: {html}}, ...)`.
44
+ *
45
+ * This module's script does the minimum that satisfies that contract, matching the official
46
+ * project's own reference implementation (`docs/src/guide/client/walkthrough.md`,
47
+ * `MCP-UI-Org/mcp-ui` on GitHub, step 3 — verified 2026-08-18): post `sandbox-proxy-ready`
48
+ * immediately, then on receiving `sandbox-resource-ready`, `document.open(); document.write(html);
49
+ * document.close();`.
50
+ *
51
+ * ## Why `document.write`, not a second nested iframe, and what that means for `window.parent`
52
+ *
53
+ * The official docs' own architecture description elsewhere characterizes this as a "double-iframe"
54
+ * design (an inner iframe hosting the untrusted app inside the outer sandbox-proxy iframe), and a
55
+ * more hardened production deployment may well nest a second iframe for an additional isolation
56
+ * hop. This module deliberately does NOT do that, and the choice is load-bearing for THIS package's
57
+ * existing surface documents: every surface `surfaces/document.ts`/`surfaces/bridge.ts` generate
58
+ * already contains its own inline protocol bridge script (`renderBridgeScript`) that talks to
59
+ * `window.parent` directly — written years before this swap, on the assumption (true for the OLD
60
+ * `srcdoc`-based Host) that its immediate parent IS the ultimate Host. `document.write`-ing that HTML
61
+ * into THIS SAME window/document (rather than into a second, nested iframe) preserves that
62
+ * assumption exactly: the guest script's `window.parent` is still the real Host, one hop away, same
63
+ * as before. A nested-iframe proxy would put the guest TWO hops from the Host, breaking every
64
+ * existing surface's bridge script silently (its `postMessage`s would land on the proxy, not the
65
+ * Host, and nothing would ever answer `ui/initialize`). Choosing the single-hop shape is what makes
66
+ * this swap possible WITHOUT touching `surfaces/bridge.ts`/`surfaces/document.ts`/any existing
67
+ * surface builder — the wire protocol those already speak (JSON-RPC to `window.parent`) is exactly
68
+ * what a single-hop proxy delivers unmodified.
69
+ *
70
+ * The real security tradeoff this simplification makes, spelled out rather than buried: the outer
71
+ * (and, here, only) iframe carries `allow-same-origin` (`AppFrame`'s own hardcoded default — not
72
+ * configurable away without also breaking the ready/resource-ready handshake, which this package's
73
+ * script needs `window.parent` for regardless of same-origin status). Combined with `document.write`
74
+ * happening in that SAME window, the guest surface gets full same-origin access to whatever origin
75
+ * this proxy page is served from. This is the exact hazard `../protocol.ts`'s `MCP_UI_VIEW_SANDBOX`
76
+ * comment warns about for a `srcdoc` frame — and it is why the official guidance is explicit that a
77
+ * production sandbox proxy MUST be served from an origin distinct from the host application's own,
78
+ * so "full same-origin access" only ever reaches an origin that holds nothing sensitive (no cookies,
79
+ * no session, nothing but this one static page). **Serving this from the SAME origin as an admin
80
+ * app, as a same-origin convenience route, reopens exactly the risk this package's `srcdoc` design
81
+ * spent real effort avoiding.** See this session's report for why that tradeoff is left as an
82
+ * explicitly flagged follow-up rather than silently accepted.
83
+ *
84
+ * ## Who is allowed to hand this page HTML — the origin check, and why it is shaped this way
85
+ *
86
+ * `document.write`-ing a `postMessage` payload is script execution on this page's origin, so the
87
+ * listener's guard IS the trust boundary. The first version of this file had none: it read
88
+ * `event.data` without ever looking at `event.origin` or `event.source`, which meant ANY page that
89
+ * could get a handle on this window — by framing it, or by `window.open`-ing it and keeping the
90
+ * returned reference — could post `sandbox-resource-ready` and run its own script on the serving
91
+ * origin. Two checks close that, and both are needed:
92
+ *
93
+ * - `event.source === window.parent` binds delivery to the window that actually embedded this page.
94
+ * `event.source` is set by the browser and cannot be forged by the sender, and it is the only
95
+ * check that covers the `window.open` case at all: an opener is `window.opener`, never
96
+ * `window.parent`. The `window.parent === window` early return makes that airtight — a top-level
97
+ * (unframed) copy of this page registers no listener and does nothing, which is correct, because
98
+ * an unframed sandbox proxy has no host to serve and no handshake to complete.
99
+ * - `event.origin === window.location.origin` is the second, independent check, and it is what
100
+ * makes a hostile FRAMER fail too (that attacker does satisfy `event.source === window.parent`).
101
+ * A host serving this page cross-origin from itself — the hardening the section above recommends
102
+ * — will need to widen this to an allowlist. That allowlist must be baked into the served bytes
103
+ * by the host's own server, NOT read from this page's query string or fragment: an attacker who
104
+ * can frame the page also picks the `src`, so a URL-supplied expected origin is attacker-supplied
105
+ * and defeats the check entirely. That is deliberately left unbuilt rather than built wrong.
106
+ *
107
+ * For the same reason the ready notification is addressed to `window.location.origin` rather than
108
+ * broadcast with `"*"`: a hostile framer should not even learn that the page loaded. Neither check
109
+ * hardcodes any particular host — a consumer's origin is discovered at runtime from the page's own
110
+ * URL — and neither touches the single-hop `document.write` shape the section above depends on.
111
+ */
112
+ /**
113
+ * The sandbox proxy page's complete, self-contained source — see this module's own doc for the
114
+ * protocol it implements and the security tradeoff serving it makes.
115
+ *
116
+ * A host mounts this at whatever URL it then passes as `sandbox={{ url }}` to `AppRenderer`/
117
+ * `AppFrame` (this package's `McpUiHost`/`useMcpUiHost` included) — e.g. an Express route:
118
+ * `app.get('/mcp-ui/sandbox-proxy.html', (_req, res) => res.type('html').send(SANDBOX_PROXY_HTML))`.
119
+ *
120
+ * That route SHOULD also send `Content-Security-Policy: frame-ancestors 'self'` (plus
121
+ * `X-Frame-Options: SAMEORIGIN` for browsers predating it). The page's own origin check already
122
+ * refuses to `document.write` anything a hostile framer sends it, but the header is what stops the
123
+ * page being framed by a third party in the first place — and it is the layer that still holds if a
124
+ * future edit to the script below regresses. `frame-ancestors 'none'`/`X-Frame-Options: DENY` is
125
+ * NOT the value to reach for: this page exists to be framed by its host, so `DENY` breaks every
126
+ * surface. Do not add `default-src`/`script-src` directives to that header either: a header CSP
127
+ * survives `document.open()` and would then apply to the guest HTML written in below, silently
128
+ * breaking any UIResource whose HTML this package did not build. Surfaces built by
129
+ * `surfaces/document.ts` already carry their own `SURFACE_CSP` meta tag for exactly that job.
130
+ */
131
+ export declare const SANDBOX_PROXY_HTML = "<!doctype html>\n<html>\n<head>\n<meta charset=\"utf-8\">\n<title>MCP-UI sandbox proxy</title>\n<style>html, body { margin: 0; padding: 0; width: 100%; height: 100%; }</style>\n</head>\n<body>\n<script>\n(function () {\n \"use strict\";\n var host = window.parent;\n var hostOrigin = window.location.origin;\n if (host === window) return;\n\n function isFromHost(event) {\n return event.source === host && event.origin === hostOrigin;\n }\n\n window.addEventListener(\"message\", function (event) {\n if (!isFromHost(event)) return;\n var data = event.data;\n if (!data || typeof data !== \"object\") return;\n if (data.method !== \"ui/notifications/sandbox-resource-ready\") return;\n var html = data.params && data.params.html;\n if (typeof html !== \"string\") return;\n document.open();\n document.write(html);\n document.close();\n });\n\n host.postMessage({ method: \"ui/notifications/sandbox-proxy-ready\", params: {} }, hostOrigin);\n}());\n</script>\n</body>\n</html>";
132
+ //# sourceMappingURL=sandbox-proxy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox-proxy.d.ts","sourceRoot":"","sources":["../../../src/features/mcp-ui/sandbox-proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8GG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,kBAAkB,4/BAmCvB,CAAC"}
@@ -0,0 +1,167 @@
1
+ /**
2
+ * @module features/mcp-ui/sandbox-proxy
3
+ *
4
+ * The one piece of NEW infrastructure the official `@mcp-ui/client` swap needs that this package's
5
+ * hand-rolled Host never did: a **sandbox proxy** page.
6
+ *
7
+ * ## Why this exists
8
+ *
9
+ * `@mcp-ui/client`'s `AppRenderer`/`AppFrame` do not mount a View by writing HTML into an iframe's
10
+ * `srcdoc` (the old `McpUiHost` did exactly that). Instead they point an iframe's `src` at a real,
11
+ * separately-served URL — the "sandbox proxy" — wait for that page to report itself ready
12
+ * (`ui/notifications/sandbox-proxy-ready`), and only THEN hand it the View's HTML via
13
+ * `ui/notifications/sandbox-resource-ready`. A host that never serves such a page gets an iframe
14
+ * that loads nothing and a `AppFrame`/`AppRenderer` that times out after 10s waiting for a ready
15
+ * signal that will never come.
16
+ *
17
+ * This module exports the proxy's source as a **string constant** rather than a static file this
18
+ * package's own build copies into `dist/`, for the same reason `surfaces/document.ts` builds HTML as
19
+ * template strings: the natural way for a HOST APPLICATION (Tovu's admin server, `examples/reference-web`'s
20
+ * dev server, any future consumer) to serve this is to mount ONE route that responds with this exact
21
+ * body — `res.type('html').send(SANDBOX_PROXY_HTML)` — not to vendor a copy of a file from this
22
+ * package's `dist/` into their own static-asset pipeline. A string a host can `fetch`/import needs no
23
+ * new build-script wiring on either side.
24
+ *
25
+ * ## What actually needs to be served, and where — the part this package cannot do for you
26
+ *
27
+ * This module only produces the BYTES. Actually serving them — mounting a route, choosing a path,
28
+ * deciding whether it needs a separate origin from the host app for defense-in-depth — is real
29
+ * per-host infrastructure this package has no way to reach into a consumer's server and add itself.
30
+ * See this constant's own doc for the concrete tradeoff. `examples/reference-web` mounts it (see
31
+ * that example's own server/vite config) as the reference wiring for both local development in this
32
+ * monorepo and for any external host copying the pattern.
33
+ *
34
+ * ## The relay contract this implements, verified against the real `@mcp-ui/client@7.1.1` bundle
35
+ *
36
+ * `AppFrame`'s internal mount effect (traced from the built package, since this exact mechanism is
37
+ * not part of its public `.d.ts` surface):
38
+ * 1. Creates an iframe, sets `sandbox="allow-scripts allow-same-origin allow-forms"`, and navigates
39
+ * it to the configured `sandbox.url`.
40
+ * 2. Waits (10s timeout) for a `postMessage` from that iframe's `contentWindow` whose `data.method`
41
+ * is `"ui/notifications/sandbox-proxy-ready"`.
42
+ * 3. Once ready, delivers the View's HTML via `postMessage({method: "ui/notifications/sandbox-resource-ready",
43
+ * params: {html}}, ...)`.
44
+ *
45
+ * This module's script does the minimum that satisfies that contract, matching the official
46
+ * project's own reference implementation (`docs/src/guide/client/walkthrough.md`,
47
+ * `MCP-UI-Org/mcp-ui` on GitHub, step 3 — verified 2026-08-18): post `sandbox-proxy-ready`
48
+ * immediately, then on receiving `sandbox-resource-ready`, `document.open(); document.write(html);
49
+ * document.close();`.
50
+ *
51
+ * ## Why `document.write`, not a second nested iframe, and what that means for `window.parent`
52
+ *
53
+ * The official docs' own architecture description elsewhere characterizes this as a "double-iframe"
54
+ * design (an inner iframe hosting the untrusted app inside the outer sandbox-proxy iframe), and a
55
+ * more hardened production deployment may well nest a second iframe for an additional isolation
56
+ * hop. This module deliberately does NOT do that, and the choice is load-bearing for THIS package's
57
+ * existing surface documents: every surface `surfaces/document.ts`/`surfaces/bridge.ts` generate
58
+ * already contains its own inline protocol bridge script (`renderBridgeScript`) that talks to
59
+ * `window.parent` directly — written years before this swap, on the assumption (true for the OLD
60
+ * `srcdoc`-based Host) that its immediate parent IS the ultimate Host. `document.write`-ing that HTML
61
+ * into THIS SAME window/document (rather than into a second, nested iframe) preserves that
62
+ * assumption exactly: the guest script's `window.parent` is still the real Host, one hop away, same
63
+ * as before. A nested-iframe proxy would put the guest TWO hops from the Host, breaking every
64
+ * existing surface's bridge script silently (its `postMessage`s would land on the proxy, not the
65
+ * Host, and nothing would ever answer `ui/initialize`). Choosing the single-hop shape is what makes
66
+ * this swap possible WITHOUT touching `surfaces/bridge.ts`/`surfaces/document.ts`/any existing
67
+ * surface builder — the wire protocol those already speak (JSON-RPC to `window.parent`) is exactly
68
+ * what a single-hop proxy delivers unmodified.
69
+ *
70
+ * The real security tradeoff this simplification makes, spelled out rather than buried: the outer
71
+ * (and, here, only) iframe carries `allow-same-origin` (`AppFrame`'s own hardcoded default — not
72
+ * configurable away without also breaking the ready/resource-ready handshake, which this package's
73
+ * script needs `window.parent` for regardless of same-origin status). Combined with `document.write`
74
+ * happening in that SAME window, the guest surface gets full same-origin access to whatever origin
75
+ * this proxy page is served from. This is the exact hazard `../protocol.ts`'s `MCP_UI_VIEW_SANDBOX`
76
+ * comment warns about for a `srcdoc` frame — and it is why the official guidance is explicit that a
77
+ * production sandbox proxy MUST be served from an origin distinct from the host application's own,
78
+ * so "full same-origin access" only ever reaches an origin that holds nothing sensitive (no cookies,
79
+ * no session, nothing but this one static page). **Serving this from the SAME origin as an admin
80
+ * app, as a same-origin convenience route, reopens exactly the risk this package's `srcdoc` design
81
+ * spent real effort avoiding.** See this session's report for why that tradeoff is left as an
82
+ * explicitly flagged follow-up rather than silently accepted.
83
+ *
84
+ * ## Who is allowed to hand this page HTML — the origin check, and why it is shaped this way
85
+ *
86
+ * `document.write`-ing a `postMessage` payload is script execution on this page's origin, so the
87
+ * listener's guard IS the trust boundary. The first version of this file had none: it read
88
+ * `event.data` without ever looking at `event.origin` or `event.source`, which meant ANY page that
89
+ * could get a handle on this window — by framing it, or by `window.open`-ing it and keeping the
90
+ * returned reference — could post `sandbox-resource-ready` and run its own script on the serving
91
+ * origin. Two checks close that, and both are needed:
92
+ *
93
+ * - `event.source === window.parent` binds delivery to the window that actually embedded this page.
94
+ * `event.source` is set by the browser and cannot be forged by the sender, and it is the only
95
+ * check that covers the `window.open` case at all: an opener is `window.opener`, never
96
+ * `window.parent`. The `window.parent === window` early return makes that airtight — a top-level
97
+ * (unframed) copy of this page registers no listener and does nothing, which is correct, because
98
+ * an unframed sandbox proxy has no host to serve and no handshake to complete.
99
+ * - `event.origin === window.location.origin` is the second, independent check, and it is what
100
+ * makes a hostile FRAMER fail too (that attacker does satisfy `event.source === window.parent`).
101
+ * A host serving this page cross-origin from itself — the hardening the section above recommends
102
+ * — will need to widen this to an allowlist. That allowlist must be baked into the served bytes
103
+ * by the host's own server, NOT read from this page's query string or fragment: an attacker who
104
+ * can frame the page also picks the `src`, so a URL-supplied expected origin is attacker-supplied
105
+ * and defeats the check entirely. That is deliberately left unbuilt rather than built wrong.
106
+ *
107
+ * For the same reason the ready notification is addressed to `window.location.origin` rather than
108
+ * broadcast with `"*"`: a hostile framer should not even learn that the page loaded. Neither check
109
+ * hardcodes any particular host — a consumer's origin is discovered at runtime from the page's own
110
+ * URL — and neither touches the single-hop `document.write` shape the section above depends on.
111
+ */
112
+ /**
113
+ * The sandbox proxy page's complete, self-contained source — see this module's own doc for the
114
+ * protocol it implements and the security tradeoff serving it makes.
115
+ *
116
+ * A host mounts this at whatever URL it then passes as `sandbox={{ url }}` to `AppRenderer`/
117
+ * `AppFrame` (this package's `McpUiHost`/`useMcpUiHost` included) — e.g. an Express route:
118
+ * `app.get('/mcp-ui/sandbox-proxy.html', (_req, res) => res.type('html').send(SANDBOX_PROXY_HTML))`.
119
+ *
120
+ * That route SHOULD also send `Content-Security-Policy: frame-ancestors 'self'` (plus
121
+ * `X-Frame-Options: SAMEORIGIN` for browsers predating it). The page's own origin check already
122
+ * refuses to `document.write` anything a hostile framer sends it, but the header is what stops the
123
+ * page being framed by a third party in the first place — and it is the layer that still holds if a
124
+ * future edit to the script below regresses. `frame-ancestors 'none'`/`X-Frame-Options: DENY` is
125
+ * NOT the value to reach for: this page exists to be framed by its host, so `DENY` breaks every
126
+ * surface. Do not add `default-src`/`script-src` directives to that header either: a header CSP
127
+ * survives `document.open()` and would then apply to the guest HTML written in below, silently
128
+ * breaking any UIResource whose HTML this package did not build. Surfaces built by
129
+ * `surfaces/document.ts` already carry their own `SURFACE_CSP` meta tag for exactly that job.
130
+ */
131
+ export const SANDBOX_PROXY_HTML = `<!doctype html>
132
+ <html>
133
+ <head>
134
+ <meta charset="utf-8">
135
+ <title>MCP-UI sandbox proxy</title>
136
+ <style>html, body { margin: 0; padding: 0; width: 100%; height: 100%; }</style>
137
+ </head>
138
+ <body>
139
+ <script>
140
+ (function () {
141
+ "use strict";
142
+ var host = window.parent;
143
+ var hostOrigin = window.location.origin;
144
+ if (host === window) return;
145
+
146
+ function isFromHost(event) {
147
+ return event.source === host && event.origin === hostOrigin;
148
+ }
149
+
150
+ window.addEventListener("message", function (event) {
151
+ if (!isFromHost(event)) return;
152
+ var data = event.data;
153
+ if (!data || typeof data !== "object") return;
154
+ if (data.method !== "ui/notifications/sandbox-resource-ready") return;
155
+ var html = data.params && data.params.html;
156
+ if (typeof html !== "string") return;
157
+ document.open();
158
+ document.write(html);
159
+ document.close();
160
+ });
161
+
162
+ host.postMessage({ method: "ui/notifications/sandbox-proxy-ready", params: {} }, hostOrigin);
163
+ }());
164
+ </script>
165
+ </body>
166
+ </html>`;
167
+ //# sourceMappingURL=sandbox-proxy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox-proxy.js","sourceRoot":"","sources":["../../../src/features/mcp-ui/sandbox-proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8GG;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAmC1B,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * The global a surface's own script reaches the protocol through.
3
+ *
4
+ * A global rather than a module export because the surface script is a second classic `<script>` in
5
+ * the same document — there are no modules to import between them.
6
+ */
7
+ export declare const SURFACE_BRIDGE_GLOBAL = "jiniMcpUi";
8
+ /**
9
+ * Set on `<html>` when the handshake fails, so a host, a test, or a human with devtools open can
10
+ * tell "the Host never answered `ui/initialize`" apart from "the surface's own script threw".
11
+ */
12
+ export declare const SURFACE_HANDSHAKE_FAILED_ATTRIBUTE = "data-mcpui-handshake-failed";
13
+ export interface BridgeScriptSpec {
14
+ /** Reported to the Host as `appInfo.name` in `ui/initialize`. */
15
+ readonly appName: string;
16
+ /** Reported to the Host as `appInfo.version`. */
17
+ readonly appVersion: string;
18
+ /** Defaults to {@link MCP_UI_PROTOCOL_VERSION}. */
19
+ readonly protocolVersion?: string;
20
+ }
21
+ /**
22
+ * Renders the View-side protocol bridge as JavaScript source.
23
+ *
24
+ * The emitted script defines `window[SURFACE_BRIDGE_GLOBAL]` with:
25
+ * - `callTool(name, args)` → `Promise` of the tool result, queued until the handshake completes and
26
+ * rejected with the Host's own error message on a JSON-RPC error response.
27
+ * - `notify(method, params)` → a raw fire-and-forget notification, for the lifecycle messages a
28
+ * surface may want beyond what the bridge sends itself.
29
+ * - `openLink(url)` → `ui/open-link`, the only way an isolated frame can navigate anything.
30
+ * - `requestTeardown()` → `ui/notifications/request-teardown`, the draft-spec way for a "Done"
31
+ * button to ask the Host to remove the frame.
32
+ * - `whenReady(fn)` → runs `fn` after the handshake, immediately if it already completed.
33
+ *
34
+ * The script also answers the Host's `ui/resource-teardown` request. That answer is not optional
35
+ * politeness: our Host waits (bounded) for it before removing the frame, so a View that never
36
+ * responded would stall every teardown to its timeout.
37
+ *
38
+ * @param spec - See {@link BridgeScriptSpec}.
39
+ * @returns JavaScript source, to be placed in a classic `<script>` before the surface's own script.
40
+ * @complexity O(1) — a constant template with three interpolations.
41
+ */
42
+ export declare function renderBridgeScript(spec: BridgeScriptSpec): string;
43
+ //# sourceMappingURL=bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../../../src/features/mcp-ui/surfaces/bridge.ts"],"names":[],"mappings":"AA2CA;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,cAAc,CAAC;AAEjD;;;GAGG;AACH,eAAO,MAAM,kCAAkC,gCAAgC,CAAC;AAEhF,MAAM,WAAW,gBAAgB;IAC/B,iEAAiE;IACjE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,iDAAiD;IACjD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,mDAAmD;IACnD,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CA4HjE"}
@@ -0,0 +1,200 @@
1
+ /**
2
+ * @module features/mcp-ui/surfaces/bridge
3
+ *
4
+ * The inline `<script>` every generated surface carries: the View half of the MCP Apps handshake,
5
+ * emitted as a JavaScript source string because it runs inside a sandboxed iframe with no bundler,
6
+ * no module loader, and no shared runtime to import from.
7
+ *
8
+ * ## Why the surface HTML cannot just post an action and be done
9
+ *
10
+ * `mcp-ui-apps.ts` states the ordering rule the spec makes normative: a Host MUST NOT send anything
11
+ * to a View before `ui/notifications/initialized`, and — the mirror of it, which is what this script
12
+ * has to respect — a Host answers a View's requests only once the handshake is complete. Our own
13
+ * Host refuses a `tools/call` that arrives in `awaiting-initialize` with a JSON-RPC
14
+ * `invalidRequest`. So a surface that posted its action on click without ever handshaking would get
15
+ * a refusal, not an execution. {@link renderBridgeScript} therefore runs `ui/initialize` at load
16
+ * time and queues any `callTool` made before the response lands.
17
+ *
18
+ * ## Which action shape this emits, and what it deliberately does not
19
+ *
20
+ * The community `@mcp-ui/client` SDK accepts a legacy, non-JSON-RPC action —
21
+ * `{ type: 'tool', payload: { toolName, params } }` — and the reference implementation's
22
+ * `delete-confirmation-ui.ts` emits exactly that. This bridge emits the JSON-RPC
23
+ * `tools/call` request from {@link MCP_UI_VIEW_METHODS} instead, and emits **only** that.
24
+ *
25
+ * That is a real divergence from the brief this module was built to, and it is deliberate: the two
26
+ * shapes are alternatives, not layers. Emitting both would mean a host that understands both
27
+ * executes the tool twice — the worst possible outcome for a surface whose entire purpose is
28
+ * confirming a destructive action. JSON-RPC wins because it is what the Host in `react/mcp-ui/`
29
+ * speaks, what the standardized spec fixed, and the only one of the two with a response correlated
30
+ * back to the caller, which is what lets a dialog report "done" or "failed" instead of appearing to
31
+ * do nothing. A consumer needing the legacy shape for an existing mcp-ui host should build that
32
+ * surface with its own script rather than have this one emit both.
33
+ *
34
+ * ## What the script must never do
35
+ *
36
+ * No `localStorage` / `sessionStorage` (both throw `SecurityError` in the opaque origin this
37
+ * package's sandbox produces — see `MCP_UI_VIEW_SANDBOX`), no `scrollIntoView` (it breaks iframe
38
+ * preview layout), no cross-document `<a href>` (dead in an isolated frame; use `ui/open-link`
39
+ * through {@link SURFACE_BRIDGE_GLOBAL} instead).
40
+ */
41
+ import { escapeJsValue } from '../escape.js';
42
+ import { MCP_UI_PROTOCOL_VERSION } from '../protocol.js';
43
+ /**
44
+ * The global a surface's own script reaches the protocol through.
45
+ *
46
+ * A global rather than a module export because the surface script is a second classic `<script>` in
47
+ * the same document — there are no modules to import between them.
48
+ */
49
+ export const SURFACE_BRIDGE_GLOBAL = 'jiniMcpUi';
50
+ /**
51
+ * Set on `<html>` when the handshake fails, so a host, a test, or a human with devtools open can
52
+ * tell "the Host never answered `ui/initialize`" apart from "the surface's own script threw".
53
+ */
54
+ export const SURFACE_HANDSHAKE_FAILED_ATTRIBUTE = 'data-mcpui-handshake-failed';
55
+ /**
56
+ * Renders the View-side protocol bridge as JavaScript source.
57
+ *
58
+ * The emitted script defines `window[SURFACE_BRIDGE_GLOBAL]` with:
59
+ * - `callTool(name, args)` → `Promise` of the tool result, queued until the handshake completes and
60
+ * rejected with the Host's own error message on a JSON-RPC error response.
61
+ * - `notify(method, params)` → a raw fire-and-forget notification, for the lifecycle messages a
62
+ * surface may want beyond what the bridge sends itself.
63
+ * - `openLink(url)` → `ui/open-link`, the only way an isolated frame can navigate anything.
64
+ * - `requestTeardown()` → `ui/notifications/request-teardown`, the draft-spec way for a "Done"
65
+ * button to ask the Host to remove the frame.
66
+ * - `whenReady(fn)` → runs `fn` after the handshake, immediately if it already completed.
67
+ *
68
+ * The script also answers the Host's `ui/resource-teardown` request. That answer is not optional
69
+ * politeness: our Host waits (bounded) for it before removing the frame, so a View that never
70
+ * responded would stall every teardown to its timeout.
71
+ *
72
+ * @param spec - See {@link BridgeScriptSpec}.
73
+ * @returns JavaScript source, to be placed in a classic `<script>` before the surface's own script.
74
+ * @complexity O(1) — a constant template with three interpolations.
75
+ */
76
+ export function renderBridgeScript(spec) {
77
+ const appInfo = escapeJsValue({ name: spec.appName, version: spec.appVersion });
78
+ const protocolVersion = escapeJsValue(spec.protocolVersion ?? MCP_UI_PROTOCOL_VERSION);
79
+ const global = SURFACE_BRIDGE_GLOBAL;
80
+ const failedAttribute = escapeJsValue(SURFACE_HANDSHAKE_FAILED_ATTRIBUTE);
81
+ return `(function () {
82
+ "use strict";
83
+ var HOST = window.parent;
84
+ var APP_INFO = ${appInfo};
85
+ var PROTOCOL_VERSION = ${protocolVersion};
86
+ var nextId = 1;
87
+ var pending = Object.create(null);
88
+ var ready = false;
89
+ var settled = false;
90
+ var queuedCalls = [];
91
+ var readyHandlers = [];
92
+ var hostContext = null;
93
+
94
+ // Posted to "*", not to a specific origin, because a sandboxed frame without allow-same-origin
95
+ // has an opaque origin and no way to learn its embedder's. The Host does not trust origin either
96
+ // — it authenticates by event.source identity against its own iframe's contentWindow, which a
97
+ // third party cannot forge.
98
+ function post(message) { HOST.postMessage(message, "*"); }
99
+
100
+ function notify(method, params) {
101
+ post(params === undefined
102
+ ? { jsonrpc: "2.0", method: method }
103
+ : { jsonrpc: "2.0", method: method, params: params });
104
+ }
105
+
106
+ function request(method, params) {
107
+ return new Promise(function (resolve, reject) {
108
+ var id = "view-" + nextId++;
109
+ pending[id] = { resolve: resolve, reject: reject };
110
+ post({ jsonrpc: "2.0", id: id, method: method, params: params });
111
+ });
112
+ }
113
+
114
+ // A call made before the handshake completes is held, not sent: our Host answers a pre-handshake
115
+ // tools/call with a JSON-RPC invalidRequest, so sending early would turn "the user clicked a
116
+ // little too fast" into a refusal the surface would have to explain. A call held when the
117
+ // handshake FAILS is rejected rather than held forever, so the dialog can say so.
118
+ function callTool(name, args) {
119
+ var params = { name: name, arguments: args || {} };
120
+ if (ready) return request("tools/call", params);
121
+ return new Promise(function (resolve, reject) {
122
+ queuedCalls.push({ resolve: resolve, reject: reject, params: params });
123
+ });
124
+ }
125
+
126
+ function reportSize() {
127
+ var root = document.documentElement;
128
+ notify("ui/notifications/size-changed", { width: root.scrollWidth, height: root.scrollHeight });
129
+ }
130
+
131
+ window.addEventListener("message", function (event) {
132
+ var data = event.data;
133
+ if (!data || typeof data !== "object" || data.jsonrpc !== "2.0") return;
134
+ if (typeof data.method === "string") {
135
+ if (!("id" in data)) return;
136
+ if (data.method === "ui/resource-teardown") {
137
+ post({ jsonrpc: "2.0", id: data.id, result: {} });
138
+ return;
139
+ }
140
+ post({ jsonrpc: "2.0", id: data.id, error: { code: -32601, message: "View does not implement " + data.method } });
141
+ return;
142
+ }
143
+ var waiter = pending[data.id];
144
+ if (!waiter) return;
145
+ delete pending[data.id];
146
+ if (data.error) waiter.reject(toError(data.error));
147
+ else waiter.resolve(data.result);
148
+ });
149
+
150
+ function toError(error) {
151
+ var failure = new Error(error && typeof error.message === "string" ? error.message : "Host returned an error");
152
+ if (error && typeof error.code === "number") failure.code = error.code;
153
+ return failure;
154
+ }
155
+
156
+ function onHandshakeDone(result) {
157
+ hostContext = result && result.hostContext ? result.hostContext : null;
158
+ ready = true;
159
+ settled = true;
160
+ notify("ui/notifications/initialized");
161
+ reportSize();
162
+ var calls = queuedCalls;
163
+ var handlers = readyHandlers;
164
+ queuedCalls = [];
165
+ readyHandlers = [];
166
+ for (var i = 0; i < calls.length; i++) request("tools/call", calls[i].params).then(calls[i].resolve, calls[i].reject);
167
+ for (var j = 0; j < handlers.length; j++) handlers[j]();
168
+ if (typeof ResizeObserver === "function") new ResizeObserver(reportSize).observe(document.documentElement);
169
+ }
170
+
171
+ function onHandshakeFailed(error) {
172
+ settled = true;
173
+ document.documentElement.setAttribute(${failedAttribute}, "true");
174
+ var calls = queuedCalls;
175
+ queuedCalls = [];
176
+ // Rejected, never dropped: a queued call is a click the human already made, and a promise that
177
+ // never settles is a dialog stuck on "Working…" with nothing to say.
178
+ for (var i = 0; i < calls.length; i++) calls[i].reject(error instanceof Error ? error : new Error("MCP-UI handshake failed"));
179
+ // readyHandlers are intentionally not run — "when ready" never became true.
180
+ readyHandlers = [];
181
+ }
182
+
183
+ request("ui/initialize", {
184
+ protocolVersion: PROTOCOL_VERSION,
185
+ appInfo: APP_INFO,
186
+ appCapabilities: {}
187
+ }).then(onHandshakeDone, onHandshakeFailed);
188
+
189
+ window.${global} = {
190
+ callTool: callTool,
191
+ notify: notify,
192
+ openLink: function (url) { notify("ui/open-link", { url: url }); },
193
+ requestTeardown: function () { notify("ui/notifications/request-teardown"); },
194
+ whenReady: function (fn) { if (ready) fn(); else if (!settled) readyHandlers.push(fn); },
195
+ hostContext: function () { return hostContext; },
196
+ isReady: function () { return ready; }
197
+ };
198
+ }());`;
199
+ }
200
+ //# sourceMappingURL=bridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../../../src/features/mcp-ui/surfaces/bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,WAAW,CAAC;AAEjD;;;GAGG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,6BAA6B,CAAC;AAWhF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAsB;IACvD,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IAChF,MAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CAAC,eAAe,IAAI,uBAAuB,CAAC,CAAC;IACvF,MAAM,MAAM,GAAG,qBAAqB,CAAC;IACrC,MAAM,eAAe,GAAG,aAAa,CAAC,kCAAkC,CAAC,CAAC;IAE1E,OAAO;;;mBAGU,OAAO;2BACC,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4CAwFE,eAAe;;;;;;;;;;;;;;;;WAgBhD,MAAM;;;;;;;;;MASX,CAAC;AACP,CAAC"}
@@ -0,0 +1,25 @@
1
+ export interface CheckboxProps {
2
+ /** HTML `name`, DOM `id` suffix, and the params key the value is posted under. */
3
+ readonly name: string;
4
+ readonly label: string;
5
+ /** Initial checked state. Defaults to unchecked. */
6
+ readonly value?: boolean;
7
+ /** Help text, wired up with `aria-describedby`. */
8
+ readonly hint?: string;
9
+ /**
10
+ * Native checkbox `required` semantics: the box must be CHECKED to submit, not merely answered.
11
+ * That is the right meaning for the case this control exists for ("I understand this deletes the
12
+ * record"), and the wrong meaning for a plain optional toggle — leave it off for those.
13
+ */
14
+ readonly required?: boolean;
15
+ readonly disabled?: boolean;
16
+ }
17
+ /**
18
+ * Renders one boolean field.
19
+ *
20
+ * @param props - See {@link CheckboxProps}.
21
+ * @returns An HTML fragment.
22
+ * @complexity O(n) in the rendered length.
23
+ */
24
+ export declare function renderCheckbox(props: CheckboxProps): string;
25
+ //# sourceMappingURL=checkbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../../src/features/mcp-ui/surfaces/checkbox.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,aAAa;IAC5B,kFAAkF;IAClF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,oDAAoD;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,mDAAmD;IACnD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAS3D"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @module features/mcp-ui/surfaces/checkbox
3
+ *
4
+ * The boolean control fragment. Laid out inline (control first, label after) rather than
5
+ * label-above like the other controls, because a checkbox's label is its hit target and stacking it
6
+ * above leaves a lone box with nothing next to it.
7
+ */
8
+ import { escapeHtml } from '../escape.js';
9
+ import { fieldDescribedBy, fieldElementId, renderFieldLabel } from './document.js';
10
+ /**
11
+ * Renders one boolean field.
12
+ *
13
+ * @param props - See {@link CheckboxProps}.
14
+ * @returns An HTML fragment.
15
+ * @complexity O(n) in the rendered length.
16
+ */
17
+ export function renderCheckbox(props) {
18
+ const id = fieldElementId(props.name);
19
+ const attributes = ` id="${escapeHtml(id)}" name="${escapeHtml(props.name)}"` +
20
+ (props.value === true ? ' checked' : '') +
21
+ (props.required === true ? ' required' : '') +
22
+ (props.disabled === true ? ' disabled' : '') +
23
+ fieldDescribedBy(props);
24
+ return `<div class="mcpui-field mcpui-field-inline">\n<input class="mcpui-checkbox" type="checkbox"${attributes}>\n<span>${renderFieldLabel(props)}</span>\n</div>`;
25
+ }
26
+ //# sourceMappingURL=checkbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../../../src/features/mcp-ui/surfaces/checkbox.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAmBnF;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,KAAoB;IACjD,MAAM,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,UAAU,GACd,QAAQ,UAAU,CAAC,EAAE,CAAC,WAAW,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG;QAC1D,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,CAAC,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,CAAC,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1B,OAAO,8FAA8F,UAAU,YAAY,gBAAgB,CAAC,KAAK,CAAC,iBAAiB,CAAC;AACtK,CAAC"}