@jini-ai/ui 0.1.2 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +108 -18
- package/dist/browser/useDismissOnOutsideOrEscape.d.ts.map +1 -1
- package/dist/browser/useDismissOnOutsideOrEscape.js +3 -2
- package/dist/browser/useDismissOnOutsideOrEscape.js.map +1 -1
- package/dist/browser/useGlobalKeydown.js +1 -1
- package/dist/browser/useGlobalKeydown.js.map +1 -1
- package/dist/core.d.ts +69 -0
- package/dist/core.d.ts.map +1 -0
- package/dist/core.js +66 -0
- package/dist/core.js.map +1 -0
- package/dist/features/a2ui/catalog-from-registry.d.ts +30 -0
- package/dist/features/a2ui/catalog-from-registry.d.ts.map +1 -0
- package/dist/features/a2ui/catalog-from-registry.js +25 -0
- package/dist/features/a2ui/catalog-from-registry.js.map +1 -0
- package/dist/features/a2ui/index.d.ts +5 -0
- package/dist/features/a2ui/index.d.ts.map +1 -0
- package/dist/features/a2ui/index.js +5 -0
- package/dist/features/a2ui/index.js.map +1 -0
- package/dist/features/a2ui/protocol.d.ts +7 -0
- package/dist/features/a2ui/protocol.d.ts.map +1 -0
- package/dist/features/a2ui/protocol.js +7 -0
- package/dist/features/a2ui/protocol.js.map +1 -0
- package/dist/features/a2ui/renderer.d.ts +17 -0
- package/dist/features/a2ui/renderer.d.ts.map +1 -0
- package/dist/features/a2ui/renderer.js +80 -0
- package/dist/features/a2ui/renderer.js.map +1 -0
- package/dist/features/a2ui/use-a2ui-surface.d.ts +13 -0
- package/dist/features/a2ui/use-a2ui-surface.d.ts.map +1 -0
- package/dist/features/a2ui/use-a2ui-surface.js +17 -0
- package/dist/features/a2ui/use-a2ui-surface.js.map +1 -0
- package/dist/features/about/index.d.ts +7 -0
- package/dist/features/about/index.d.ts.map +1 -0
- package/dist/features/about/index.js +4 -0
- package/dist/features/about/index.js.map +1 -0
- package/dist/features/about/react/components/AboutTab.d.ts +82 -0
- package/dist/features/about/react/components/AboutTab.d.ts.map +1 -0
- package/dist/features/about/react/components/AboutTab.js +70 -0
- package/dist/features/about/react/components/AboutTab.js.map +1 -0
- package/dist/features/about/react/hooks/useSilentUpdatesToggle.d.ts +44 -0
- package/dist/features/about/react/hooks/useSilentUpdatesToggle.d.ts.map +1 -0
- package/dist/features/about/react/hooks/useSilentUpdatesToggle.js +44 -0
- package/dist/features/about/react/hooks/useSilentUpdatesToggle.js.map +1 -0
- package/dist/features/about/rules.d.ts +105 -0
- package/dist/features/about/rules.d.ts.map +1 -0
- package/dist/features/about/rules.js +240 -0
- package/dist/features/about/rules.js.map +1 -0
- package/dist/features/about/types.d.ts +110 -0
- package/dist/features/about/types.d.ts.map +1 -0
- package/dist/features/about/types.js +20 -0
- package/dist/features/about/types.js.map +1 -0
- package/dist/features/appearance/constants.d.ts +16 -0
- package/dist/features/appearance/constants.d.ts.map +1 -0
- package/dist/features/appearance/constants.js +23 -0
- package/dist/features/appearance/constants.js.map +1 -0
- package/dist/features/appearance/index.d.ts +5 -0
- package/dist/features/appearance/index.d.ts.map +1 -0
- package/dist/features/appearance/index.js.map +1 -0
- package/dist/features/appearance/react/components/AppearanceTab.d.ts.map +1 -0
- package/dist/features/appearance/react/components/AppearanceTab.js +31 -0
- package/dist/features/appearance/react/components/AppearanceTab.js.map +1 -0
- package/dist/features/appearance/rules.d.ts +31 -0
- package/dist/features/appearance/rules.d.ts.map +1 -0
- package/dist/features/appearance/rules.js +45 -0
- package/dist/features/appearance/rules.js.map +1 -0
- package/dist/features/appearance/types.d.ts +12 -0
- package/dist/features/appearance/types.d.ts.map +1 -0
- package/dist/features/appearance/types.js +8 -0
- package/dist/features/appearance/types.js.map +1 -0
- package/dist/features/asset-grid/react/components/AssetGrid.d.ts.map +1 -1
- package/dist/features/asset-grid/react/components/AssetGrid.js +44 -9
- package/dist/features/asset-grid/react/components/AssetGrid.js.map +1 -1
- package/dist/features/asset-grid/react/hooks/useAssetGridLiveUpdates.d.ts.map +1 -1
- package/dist/features/asset-grid/react/hooks/useAssetGridLiveUpdates.js +39 -2
- package/dist/features/asset-grid/react/hooks/useAssetGridLiveUpdates.js.map +1 -1
- package/dist/features/asset-tree-browser/rules.d.ts +1 -0
- package/dist/features/asset-tree-browser/rules.d.ts.map +1 -1
- package/dist/features/asset-tree-browser/rules.js.map +1 -1
- package/dist/features/connectors/ConnectorsBrowser.d.ts.map +1 -1
- package/dist/features/connectors/ConnectorsBrowser.js +2 -2
- package/dist/features/connectors/ConnectorsBrowser.js.map +1 -1
- package/dist/features/connectors/components/ConnectorCard.d.ts.map +1 -1
- package/dist/features/connectors/components/ConnectorCard.js.map +1 -1
- package/dist/features/connectors/components/ConnectorDetailDrawer.d.ts.map +1 -1
- package/dist/features/connectors/components/ConnectorDetailDrawer.js.map +1 -1
- package/dist/features/connectors/dependencies.d.ts +1 -1
- package/dist/features/connectors/dependencies.d.ts.map +1 -1
- package/dist/features/connectors/dependencies.js +1 -2
- package/dist/features/connectors/dependencies.js.map +1 -1
- package/dist/features/connectors/hooks/useConnectorAuthorization.d.ts +38 -0
- package/dist/features/connectors/hooks/useConnectorAuthorization.d.ts.map +1 -1
- package/dist/features/connectors/hooks/useConnectorAuthorization.js +76 -63
- package/dist/features/connectors/hooks/useConnectorAuthorization.js.map +1 -1
- package/dist/features/connectors/hooks/useConnectorCatalog.d.ts.map +1 -1
- package/dist/features/connectors/hooks/useConnectorCatalog.js.map +1 -1
- package/dist/features/connectors/hooks/useConnectorDetail.d.ts.map +1 -1
- package/dist/features/connectors/hooks/useConnectorDetail.js +1 -1
- package/dist/features/connectors/hooks/useConnectorDetail.js.map +1 -1
- package/dist/features/connectors/index.d.ts +4 -4
- package/dist/features/connectors/index.d.ts.map +1 -1
- package/dist/features/connectors/index.js +2 -2
- package/dist/features/connectors/index.js.map +1 -1
- package/dist/features/execution/constants.d.ts +55 -0
- package/dist/features/execution/constants.d.ts.map +1 -0
- package/dist/features/execution/constants.js +187 -0
- package/dist/features/execution/constants.js.map +1 -0
- package/dist/features/execution/dependencies.d.ts +41 -0
- package/dist/features/execution/dependencies.d.ts.map +1 -0
- package/dist/features/execution/dependencies.js +64 -0
- package/dist/features/execution/dependencies.js.map +1 -0
- package/dist/features/execution/index.d.ts +24 -0
- package/dist/features/execution/index.d.ts.map +1 -0
- package/dist/features/execution/index.js +13 -0
- package/dist/features/execution/index.js.map +1 -0
- package/dist/features/execution/ports.d.ts +71 -0
- package/dist/features/execution/ports.d.ts.map +1 -0
- package/dist/features/execution/ports.js.map +1 -0
- package/dist/features/execution/react/components/AgentCliEnvFields.d.ts +26 -0
- package/dist/features/execution/react/components/AgentCliEnvFields.d.ts.map +1 -0
- package/dist/features/execution/react/components/AgentCliEnvFields.js +25 -0
- package/dist/features/execution/react/components/AgentCliEnvFields.js.map +1 -0
- package/dist/features/execution/react/components/AgentDiagnosticRow.d.ts +32 -0
- package/dist/features/execution/react/components/AgentDiagnosticRow.d.ts.map +1 -0
- package/dist/features/execution/react/components/AgentDiagnosticRow.js +61 -0
- package/dist/features/execution/react/components/AgentDiagnosticRow.js.map +1 -0
- package/dist/features/execution/react/components/ByokProviderForm.d.ts +73 -0
- package/dist/features/execution/react/components/ByokProviderForm.d.ts.map +1 -0
- package/dist/features/execution/react/components/ByokProviderForm.js +88 -0
- package/dist/features/execution/react/components/ByokProviderForm.js.map +1 -0
- package/dist/features/execution/react/components/ExecutionTab.d.ts +60 -0
- package/dist/features/execution/react/components/ExecutionTab.d.ts.map +1 -0
- package/dist/features/execution/react/components/ExecutionTab.js +91 -0
- package/dist/features/execution/react/components/ExecutionTab.js.map +1 -0
- package/dist/features/execution/react/components/LocalCliAgentCard.d.ts +40 -0
- package/dist/features/execution/react/components/LocalCliAgentCard.d.ts.map +1 -0
- package/dist/features/execution/react/components/LocalCliAgentCard.js +121 -0
- package/dist/features/execution/react/components/LocalCliAgentCard.js.map +1 -0
- package/dist/features/execution/react/components/LocalCliAgentList.d.ts +37 -0
- package/dist/features/execution/react/components/LocalCliAgentList.d.ts.map +1 -0
- package/dist/features/execution/react/components/LocalCliAgentList.js +18 -0
- package/dist/features/execution/react/components/LocalCliAgentList.js.map +1 -0
- package/dist/features/execution/react/components/ProviderChipGroup.d.ts +21 -0
- package/dist/features/execution/react/components/ProviderChipGroup.d.ts.map +1 -0
- package/dist/features/execution/react/components/ProviderChipGroup.js +22 -0
- package/dist/features/execution/react/components/ProviderChipGroup.js.map +1 -0
- package/dist/features/execution/react/components/SearchableModelSelect.d.ts +45 -0
- package/dist/features/execution/react/components/SearchableModelSelect.d.ts.map +1 -0
- package/dist/features/execution/react/components/SearchableModelSelect.js +55 -0
- package/dist/features/execution/react/components/SearchableModelSelect.js.map +1 -0
- package/dist/features/execution/react/hooks/useExecutionTab.d.ts +38 -0
- package/dist/features/execution/react/hooks/useExecutionTab.d.ts.map +1 -0
- package/dist/features/execution/react/hooks/useExecutionTab.js +158 -0
- package/dist/features/execution/react/hooks/useExecutionTab.js.map +1 -0
- package/dist/features/execution/rules.d.ts +218 -0
- package/dist/features/execution/rules.d.ts.map +1 -0
- package/dist/features/execution/rules.js +414 -0
- package/dist/features/execution/rules.js.map +1 -0
- package/dist/features/execution/types.d.ts +410 -0
- package/dist/features/execution/types.d.ts.map +1 -0
- package/dist/features/execution/types.js +19 -0
- package/dist/features/execution/types.js.map +1 -0
- package/dist/features/external-mcp/constants.d.ts +3 -0
- package/dist/features/external-mcp/constants.d.ts.map +1 -0
- package/dist/features/external-mcp/constants.js +22 -0
- package/dist/features/external-mcp/constants.js.map +1 -0
- package/dist/features/external-mcp/index.d.ts +4 -0
- package/dist/features/external-mcp/index.d.ts.map +1 -0
- package/dist/features/external-mcp/index.js +3 -0
- package/dist/features/external-mcp/index.js.map +1 -0
- package/dist/features/external-mcp/react/components/ExternalMcpTab.d.ts +23 -0
- package/dist/features/external-mcp/react/components/ExternalMcpTab.d.ts.map +1 -0
- package/dist/features/external-mcp/react/components/ExternalMcpTab.js +53 -0
- package/dist/features/external-mcp/react/components/ExternalMcpTab.js.map +1 -0
- package/dist/features/html-editor/canvas-content-wrapper.d.ts +16 -0
- package/dist/features/html-editor/canvas-content-wrapper.d.ts.map +1 -0
- package/dist/features/html-editor/canvas-content-wrapper.js +86 -0
- package/dist/features/html-editor/canvas-content-wrapper.js.map +1 -0
- package/dist/features/html-editor/canvas-embed-placeholders.d.ts +65 -0
- package/dist/features/html-editor/canvas-embed-placeholders.d.ts.map +1 -0
- package/dist/features/html-editor/canvas-embed-placeholders.js +190 -0
- package/dist/features/html-editor/canvas-embed-placeholders.js.map +1 -0
- package/dist/features/html-editor/canvas-style.d.ts +73 -0
- package/dist/features/html-editor/canvas-style.d.ts.map +1 -0
- package/dist/features/html-editor/canvas-style.js +64 -0
- package/dist/features/html-editor/canvas-style.js.map +1 -0
- package/dist/features/html-editor/css.d.ts +22 -0
- package/dist/features/html-editor/css.d.ts.map +1 -0
- package/dist/features/html-editor/css.js +140 -0
- package/dist/features/html-editor/css.js.map +1 -0
- package/dist/features/html-editor/dom.d.ts +15 -0
- package/dist/features/html-editor/dom.d.ts.map +1 -0
- package/dist/features/html-editor/dom.js +20 -0
- package/dist/features/html-editor/dom.js.map +1 -0
- package/dist/features/html-editor/index.d.ts +8 -0
- package/dist/features/html-editor/index.d.ts.map +1 -0
- package/dist/features/html-editor/index.js +5 -0
- package/dist/features/html-editor/index.js.map +1 -0
- package/dist/features/html-editor/react/components/InteractiveHtmlEditor.d.ts +94 -0
- package/dist/features/html-editor/react/components/InteractiveHtmlEditor.d.ts.map +1 -0
- package/dist/features/html-editor/react/components/InteractiveHtmlEditor.js +15 -0
- package/dist/features/html-editor/react/components/InteractiveHtmlEditor.js.map +1 -0
- package/dist/features/html-editor/react/hooks/useInteractiveHtmlEditor.d.ts +33 -0
- package/dist/features/html-editor/react/hooks/useInteractiveHtmlEditor.d.ts.map +1 -0
- package/dist/features/html-editor/react/hooks/useInteractiveHtmlEditor.js +170 -0
- package/dist/features/html-editor/react/hooks/useInteractiveHtmlEditor.js.map +1 -0
- package/dist/features/html-viewer/dependencies.d.ts +1 -1
- package/dist/features/html-viewer/dependencies.d.ts.map +1 -1
- package/dist/features/html-viewer/dependencies.js +2 -2
- package/dist/features/html-viewer/dependencies.js.map +1 -1
- package/dist/features/html-viewer/react/hooks/useDeckNavigation.d.ts +2 -2
- package/dist/features/html-viewer/react/hooks/useDeckNavigation.js +3 -3
- package/dist/features/html-viewer/react/hooks/useDeckNavigation.js.map +1 -1
- package/dist/features/i18n/context.d.ts +35 -2
- package/dist/features/i18n/context.d.ts.map +1 -1
- package/dist/features/i18n/context.js +1 -1
- package/dist/features/i18n/context.js.map +1 -1
- package/dist/features/i18n/dictionaries/index.d.ts +63 -0
- package/dist/features/i18n/dictionaries/index.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/index.js +70 -0
- package/dist/features/i18n/dictionaries/index.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ar.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ar.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ar.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ar.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.bn.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.bn.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.bn.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.bn.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.de.d.ts +17 -0
- package/dist/features/i18n/dictionaries/settings-dialog.de.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.de.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.de.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.en.d.ts +33 -0
- package/dist/features/i18n/dictionaries/settings-dialog.en.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.en.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.en.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.es.d.ts +17 -0
- package/dist/features/i18n/dictionaries/settings-dialog.es.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.es.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.es.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.fa.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.fa.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.fa.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.fa.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.fr.d.ts +17 -0
- package/dist/features/i18n/dictionaries/settings-dialog.fr.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.fr.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.fr.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.hi.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.hi.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.hi.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.hi.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.hu.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.hu.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.hu.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.hu.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.id.d.ts +17 -0
- package/dist/features/i18n/dictionaries/settings-dialog.id.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.id.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.id.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.it.d.ts +17 -0
- package/dist/features/i18n/dictionaries/settings-dialog.it.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.it.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.it.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ja.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ja.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ja.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ja.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ko.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ko.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ko.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ko.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.pl.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.pl.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.pl.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.pl.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.pt-BR.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.pt-BR.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.pt-BR.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.pt-BR.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ru.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ru.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ru.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ru.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.th.d.ts +17 -0
- package/dist/features/i18n/dictionaries/settings-dialog.th.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.th.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.th.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.tr.d.ts +17 -0
- package/dist/features/i18n/dictionaries/settings-dialog.tr.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.tr.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.tr.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.uk.d.ts +17 -0
- package/dist/features/i18n/dictionaries/settings-dialog.uk.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.uk.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.uk.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ur.d.ts +8 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ur.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ur.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.ur.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.zh-CN.d.ts +17 -0
- package/dist/features/i18n/dictionaries/settings-dialog.zh-CN.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.zh-CN.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.zh-CN.js.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.zh-TW.d.ts +20 -0
- package/dist/features/i18n/dictionaries/settings-dialog.zh-TW.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/settings-dialog.zh-TW.js +239 -0
- package/dist/features/i18n/dictionaries/settings-dialog.zh-TW.js.map +1 -0
- package/dist/features/i18n/dictionaries/types.d.ts +16 -0
- package/dist/features/i18n/dictionaries/types.d.ts.map +1 -0
- package/dist/features/i18n/dictionaries/types.js.map +1 -0
- package/dist/features/i18n/index.d.ts +2 -0
- package/dist/features/i18n/index.d.ts.map +1 -1
- package/dist/features/i18n/index.js +1 -0
- package/dist/features/i18n/index.js.map +1 -1
- package/dist/features/iframe-pool/react/components/PooledIframe.d.ts.map +1 -1
- package/dist/features/iframe-pool/react/components/PooledIframe.js +27 -3
- package/dist/features/iframe-pool/react/components/PooledIframe.js.map +1 -1
- package/dist/features/instructions/index.d.ts.map +1 -0
- package/dist/features/instructions/index.js.map +1 -0
- package/dist/features/instructions/react/components/InstructionsTab.d.ts.map +1 -0
- package/dist/features/instructions/react/components/InstructionsTab.js +16 -0
- package/dist/features/instructions/react/components/InstructionsTab.js.map +1 -0
- package/dist/features/integrations/constants.d.ts.map +1 -0
- package/dist/features/integrations/constants.js.map +1 -0
- package/dist/features/integrations/dependencies.d.ts.map +1 -0
- package/dist/features/integrations/dependencies.js.map +1 -0
- package/dist/features/integrations/index.d.ts +18 -0
- package/dist/features/integrations/index.d.ts.map +1 -0
- package/dist/features/integrations/index.js +10 -0
- package/dist/features/integrations/index.js.map +1 -0
- package/dist/features/integrations/ports.d.ts.map +1 -0
- package/dist/features/integrations/ports.js +2 -0
- package/dist/features/integrations/ports.js.map +1 -0
- package/dist/features/integrations/react/components/ClientPicker.d.ts.map +1 -0
- package/dist/features/integrations/react/components/ClientPicker.js +31 -0
- package/dist/features/integrations/react/components/ClientPicker.js.map +1 -0
- package/dist/features/integrations/react/components/CodexInstallToggleButton.d.ts.map +1 -0
- package/dist/features/integrations/react/components/CodexInstallToggleButton.js +21 -0
- package/dist/features/integrations/react/components/CodexInstallToggleButton.js.map +1 -0
- package/dist/features/integrations/react/components/IntegrationsTab.d.ts +27 -0
- package/dist/features/integrations/react/components/IntegrationsTab.d.ts.map +1 -0
- package/dist/features/integrations/react/components/IntegrationsTab.js +61 -0
- package/dist/features/integrations/react/components/IntegrationsTab.js.map +1 -0
- package/dist/features/integrations/react/components/SnippetBlock.d.ts.map +1 -0
- package/dist/features/integrations/react/components/SnippetBlock.js +53 -0
- package/dist/features/integrations/react/components/SnippetBlock.js.map +1 -0
- package/dist/features/integrations/react/hooks/useCodexInstallToggle.d.ts.map +1 -0
- package/dist/features/integrations/react/hooks/useCodexInstallToggle.js.map +1 -0
- package/dist/features/integrations/react/hooks/useMcpInstallInfo.d.ts.map +1 -0
- package/dist/features/integrations/react/hooks/useMcpInstallInfo.js.map +1 -0
- package/dist/features/integrations/rules.d.ts +55 -0
- package/dist/features/integrations/rules.d.ts.map +1 -0
- package/dist/features/integrations/rules.js +193 -0
- package/dist/features/integrations/rules.js.map +1 -0
- package/dist/features/integrations/types.d.ts +58 -0
- package/dist/features/integrations/types.d.ts.map +1 -0
- package/dist/features/integrations/types.js +15 -0
- package/dist/features/integrations/types.js.map +1 -0
- package/dist/features/interactive-ui/index.d.ts +23 -0
- package/dist/features/interactive-ui/index.d.ts.map +1 -0
- package/dist/features/interactive-ui/index.js +37 -0
- package/dist/features/interactive-ui/index.js.map +1 -0
- package/dist/features/interactive-ui/interactive-ui.css +2 -0
- package/dist/features/interactive-ui/manifests.d.ts +21 -0
- package/dist/features/interactive-ui/manifests.d.ts.map +1 -0
- package/dist/features/interactive-ui/manifests.js +37 -0
- package/dist/features/interactive-ui/manifests.js.map +1 -0
- package/dist/features/interactive-ui/providers/native/data-table.d.ts +12 -0
- package/dist/features/interactive-ui/providers/native/data-table.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/native/data-table.js +5 -0
- package/dist/features/interactive-ui/providers/native/data-table.js.map +1 -0
- package/dist/features/interactive-ui/providers/native/data-table.manifest.d.ts +57 -0
- package/dist/features/interactive-ui/providers/native/data-table.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/native/data-table.manifest.js +31 -0
- package/dist/features/interactive-ui/providers/native/data-table.manifest.js.map +1 -0
- package/dist/features/interactive-ui/providers/native/index.d.ts +3 -0
- package/dist/features/interactive-ui/providers/native/index.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/native/index.js +3 -0
- package/dist/features/interactive-ui/providers/native/index.js.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/bar-chart.d.ts +8 -0
- package/dist/features/interactive-ui/providers/recharts/bar-chart.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/bar-chart.js +6 -0
- package/dist/features/interactive-ui/providers/recharts/bar-chart.js.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/bar-chart.manifest.d.ts +21 -0
- package/dist/features/interactive-ui/providers/recharts/bar-chart.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/bar-chart.manifest.js +18 -0
- package/dist/features/interactive-ui/providers/recharts/bar-chart.manifest.js.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/index.d.ts +7 -0
- package/dist/features/interactive-ui/providers/recharts/index.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/index.js +7 -0
- package/dist/features/interactive-ui/providers/recharts/index.js.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/line-chart.d.ts +8 -0
- package/dist/features/interactive-ui/providers/recharts/line-chart.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/line-chart.js +6 -0
- package/dist/features/interactive-ui/providers/recharts/line-chart.js.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/line-chart.manifest.d.ts +20 -0
- package/dist/features/interactive-ui/providers/recharts/line-chart.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/line-chart.manifest.js +17 -0
- package/dist/features/interactive-ui/providers/recharts/line-chart.manifest.js.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/pie-chart.d.ts +10 -0
- package/dist/features/interactive-ui/providers/recharts/pie-chart.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/pie-chart.js +7 -0
- package/dist/features/interactive-ui/providers/recharts/pie-chart.js.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/pie-chart.manifest.d.ts +41 -0
- package/dist/features/interactive-ui/providers/recharts/pie-chart.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/recharts/pie-chart.manifest.js +15 -0
- package/dist/features/interactive-ui/providers/recharts/pie-chart.manifest.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/action-button.d.ts +14 -0
- package/dist/features/interactive-ui/providers/shadcn/action-button.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/action-button.js +6 -0
- package/dist/features/interactive-ui/providers/shadcn/action-button.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/action-button.manifest.d.ts +24 -0
- package/dist/features/interactive-ui/providers/shadcn/action-button.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/action-button.manifest.js +21 -0
- package/dist/features/interactive-ui/providers/shadcn/action-button.manifest.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/button.d.ts +18 -0
- package/dist/features/interactive-ui/providers/shadcn/button.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/button.js +40 -0
- package/dist/features/interactive-ui/providers/shadcn/button.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/card.d.ts +13 -0
- package/dist/features/interactive-ui/providers/shadcn/card.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/card.js +21 -0
- package/dist/features/interactive-ui/providers/shadcn/card.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox-field.d.ts +9 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox-field.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox-field.js +9 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox-field.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox-field.manifest.d.ts +17 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox-field.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox-field.manifest.js +16 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox-field.manifest.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox.d.ts +10 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox.js +14 -0
- package/dist/features/interactive-ui/providers/shadcn/checkbox.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/content-card.d.ts +7 -0
- package/dist/features/interactive-ui/providers/shadcn/content-card.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/content-card.js +6 -0
- package/dist/features/interactive-ui/providers/shadcn/content-card.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/content-card.manifest.d.ts +17 -0
- package/dist/features/interactive-ui/providers/shadcn/content-card.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/content-card.manifest.js +16 -0
- package/dist/features/interactive-ui/providers/shadcn/content-card.manifest.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/data-table.d.ts +13 -0
- package/dist/features/interactive-ui/providers/shadcn/data-table.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/data-table.js +7 -0
- package/dist/features/interactive-ui/providers/shadcn/data-table.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/data-table.manifest.d.ts +47 -0
- package/dist/features/interactive-ui/providers/shadcn/data-table.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/data-table.manifest.js +21 -0
- package/dist/features/interactive-ui/providers/shadcn/data-table.manifest.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/index.d.ts +15 -0
- package/dist/features/interactive-ui/providers/shadcn/index.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/index.js +15 -0
- package/dist/features/interactive-ui/providers/shadcn/index.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/input.d.ts +8 -0
- package/dist/features/interactive-ui/providers/shadcn/input.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/input.js +13 -0
- package/dist/features/interactive-ui/providers/shadcn/input.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/label.d.ts +11 -0
- package/dist/features/interactive-ui/providers/shadcn/label.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/label.js +15 -0
- package/dist/features/interactive-ui/providers/shadcn/label.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/lib/utils.d.ts +9 -0
- package/dist/features/interactive-ui/providers/shadcn/lib/utils.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/lib/utils.js +12 -0
- package/dist/features/interactive-ui/providers/shadcn/lib/utils.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group-field.d.ts +13 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group-field.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group-field.js +14 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group-field.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group-field.manifest.d.ts +44 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group-field.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group-field.manifest.js +16 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group-field.manifest.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group.d.ts +11 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group.js +20 -0
- package/dist/features/interactive-ui/providers/shadcn/radio-group.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/select-field.d.ts +14 -0
- package/dist/features/interactive-ui/providers/shadcn/select-field.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/select-field.js +8 -0
- package/dist/features/interactive-ui/providers/shadcn/select-field.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/select-field.manifest.d.ts +47 -0
- package/dist/features/interactive-ui/providers/shadcn/select-field.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/select-field.manifest.js +17 -0
- package/dist/features/interactive-ui/providers/shadcn/select-field.manifest.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/select.d.ts +19 -0
- package/dist/features/interactive-ui/providers/shadcn/select.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/select.js +30 -0
- package/dist/features/interactive-ui/providers/shadcn/select.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/table.d.ts +17 -0
- package/dist/features/interactive-ui/providers/shadcn/table.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/table.js +35 -0
- package/dist/features/interactive-ui/providers/shadcn/table.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/text-input-field.d.ts +16 -0
- package/dist/features/interactive-ui/providers/shadcn/text-input-field.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/text-input-field.js +6 -0
- package/dist/features/interactive-ui/providers/shadcn/text-input-field.js.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/text-input-field.manifest.d.ts +20 -0
- package/dist/features/interactive-ui/providers/shadcn/text-input-field.manifest.d.ts.map +1 -0
- package/dist/features/interactive-ui/providers/shadcn/text-input-field.manifest.js +17 -0
- package/dist/features/interactive-ui/providers/shadcn/text-input-field.manifest.js.map +1 -0
- package/dist/features/interactive-ui/registry.d.ts +27 -0
- package/dist/features/interactive-ui/registry.d.ts.map +1 -0
- package/dist/features/interactive-ui/registry.js +27 -0
- package/dist/features/interactive-ui/registry.js.map +1 -0
- package/dist/features/interactive-ui/types.d.ts +18 -0
- package/dist/features/interactive-ui/types.d.ts.map +1 -0
- package/dist/features/interactive-ui/types.js.map +1 -0
- package/dist/features/language/index.d.ts.map +1 -0
- package/dist/features/language/index.js.map +1 -0
- package/dist/features/language/react/components/LanguageTab.d.ts.map +1 -0
- package/dist/features/language/react/components/LanguageTab.js +18 -0
- package/dist/features/language/react/components/LanguageTab.js.map +1 -0
- package/dist/features/language/types.d.ts +21 -0
- package/dist/features/language/types.d.ts.map +1 -0
- package/dist/features/language/types.js +2 -0
- package/dist/features/language/types.js.map +1 -0
- package/dist/features/list-detail-panel/types.d.ts +1 -1
- package/dist/features/list-detail-panel/types.js +1 -1
- package/dist/features/mcp-ui/confirmation-store.d.ts +110 -0
- package/dist/features/mcp-ui/confirmation-store.d.ts.map +1 -0
- package/dist/features/mcp-ui/confirmation-store.js +149 -0
- package/dist/features/mcp-ui/confirmation-store.js.map +1 -0
- package/dist/features/mcp-ui/early-message-buffer.d.ts +62 -0
- package/dist/features/mcp-ui/early-message-buffer.d.ts.map +1 -0
- package/dist/features/mcp-ui/early-message-buffer.js +69 -0
- package/dist/features/mcp-ui/early-message-buffer.js.map +1 -0
- package/dist/features/mcp-ui/escape.d.ts +51 -0
- package/dist/features/mcp-ui/escape.d.ts.map +1 -0
- package/dist/features/mcp-ui/escape.js +68 -0
- package/dist/features/mcp-ui/escape.js.map +1 -0
- package/dist/features/mcp-ui/index.d.ts +28 -0
- package/dist/features/mcp-ui/index.d.ts.map +1 -0
- package/dist/features/mcp-ui/index.js +28 -0
- package/dist/features/mcp-ui/index.js.map +1 -0
- package/dist/features/mcp-ui/protocol.d.ts +59 -0
- package/dist/features/mcp-ui/protocol.d.ts.map +1 -0
- package/dist/features/mcp-ui/protocol.js +58 -0
- package/dist/features/mcp-ui/protocol.js.map +1 -0
- package/dist/features/mcp-ui/resource.d.ts +192 -0
- package/dist/features/mcp-ui/resource.d.ts.map +1 -0
- package/dist/features/mcp-ui/resource.js +228 -0
- package/dist/features/mcp-ui/resource.js.map +1 -0
- package/dist/features/mcp-ui/sandbox-proxy.d.ts +132 -0
- package/dist/features/mcp-ui/sandbox-proxy.d.ts.map +1 -0
- package/dist/features/mcp-ui/sandbox-proxy.js +167 -0
- package/dist/features/mcp-ui/sandbox-proxy.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/bridge.d.ts +43 -0
- package/dist/features/mcp-ui/surfaces/bridge.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/bridge.js +200 -0
- package/dist/features/mcp-ui/surfaces/bridge.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/checkbox.d.ts +25 -0
- package/dist/features/mcp-ui/surfaces/checkbox.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/checkbox.js +26 -0
- package/dist/features/mcp-ui/surfaces/checkbox.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/choice-group.d.ts +34 -0
- package/dist/features/mcp-ui/surfaces/choice-group.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/choice-group.js +70 -0
- package/dist/features/mcp-ui/surfaces/choice-group.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/confirmation.d.ts +75 -0
- package/dist/features/mcp-ui/surfaces/confirmation.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/confirmation.js +148 -0
- package/dist/features/mcp-ui/surfaces/confirmation.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/document.d.ts +173 -0
- package/dist/features/mcp-ui/surfaces/document.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/document.js +327 -0
- package/dist/features/mcp-ui/surfaces/document.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/fields.d.ts +77 -0
- package/dist/features/mcp-ui/surfaces/fields.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/fields.js +97 -0
- package/dist/features/mcp-ui/surfaces/fields.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/form.d.ts +78 -0
- package/dist/features/mcp-ui/surfaces/form.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/form.js +218 -0
- package/dist/features/mcp-ui/surfaces/form.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/index.d.ts +12 -0
- package/dist/features/mcp-ui/surfaces/index.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/index.js +12 -0
- package/dist/features/mcp-ui/surfaces/index.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/outcome.d.ts +102 -0
- package/dist/features/mcp-ui/surfaces/outcome.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/outcome.js +119 -0
- package/dist/features/mcp-ui/surfaces/outcome.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/select.d.ts +35 -0
- package/dist/features/mcp-ui/surfaces/select.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/select.js +36 -0
- package/dist/features/mcp-ui/surfaces/select.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/text-input.d.ts +35 -0
- package/dist/features/mcp-ui/surfaces/text-input.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/text-input.js +61 -0
- package/dist/features/mcp-ui/surfaces/text-input.js.map +1 -0
- package/dist/features/mcp-ui/surfaces/tokens.d.ts +106 -0
- package/dist/features/mcp-ui/surfaces/tokens.d.ts.map +1 -0
- package/dist/features/mcp-ui/surfaces/tokens.js +165 -0
- package/dist/features/mcp-ui/surfaces/tokens.js.map +1 -0
- package/dist/features/media-providers/constants.d.ts +10 -0
- package/dist/features/media-providers/constants.d.ts.map +1 -0
- package/dist/features/media-providers/constants.js +90 -0
- package/dist/features/media-providers/constants.js.map +1 -0
- package/dist/features/media-providers/dependencies.d.ts +27 -0
- package/dist/features/media-providers/dependencies.d.ts.map +1 -0
- package/dist/features/media-providers/dependencies.js +29 -0
- package/dist/features/media-providers/dependencies.js.map +1 -0
- package/dist/features/media-providers/index.d.ts +10 -0
- package/dist/features/media-providers/index.d.ts.map +1 -0
- package/dist/features/media-providers/index.js +6 -0
- package/dist/features/media-providers/index.js.map +1 -0
- package/dist/features/media-providers/ports.d.ts +51 -0
- package/dist/features/media-providers/ports.d.ts.map +1 -0
- package/dist/features/media-providers/ports.js +2 -0
- package/dist/features/media-providers/ports.js.map +1 -0
- package/dist/features/media-providers/react/components/MediaProvidersTab.d.ts +59 -0
- package/dist/features/media-providers/react/components/MediaProvidersTab.d.ts.map +1 -0
- package/dist/features/media-providers/react/components/MediaProvidersTab.js +92 -0
- package/dist/features/media-providers/react/components/MediaProvidersTab.js.map +1 -0
- package/dist/features/media-providers/react/hooks/useMediaProvidersTab.d.ts +58 -0
- package/dist/features/media-providers/react/hooks/useMediaProvidersTab.d.ts.map +1 -0
- package/dist/features/media-providers/react/hooks/useMediaProvidersTab.js +294 -0
- package/dist/features/media-providers/react/hooks/useMediaProvidersTab.js.map +1 -0
- package/dist/features/media-providers/rules.d.ts +139 -0
- package/dist/features/media-providers/rules.d.ts.map +1 -0
- package/dist/features/media-providers/rules.js +227 -0
- package/dist/features/media-providers/rules.js.map +1 -0
- package/dist/features/media-providers/types.d.ts +102 -0
- package/dist/features/media-providers/types.d.ts.map +1 -0
- package/dist/features/media-providers/types.js +27 -0
- package/dist/features/media-providers/types.js.map +1 -0
- package/dist/features/memory/constants.d.ts +0 -2
- package/dist/features/memory/constants.d.ts.map +1 -1
- package/dist/features/memory/constants.js +0 -9
- package/dist/features/memory/constants.js.map +1 -1
- package/dist/features/memory/dependencies.d.ts +1 -28
- package/dist/features/memory/dependencies.d.ts.map +1 -1
- package/dist/features/memory/dependencies.js +39 -23
- package/dist/features/memory/dependencies.js.map +1 -1
- package/dist/features/memory/formatters.d.ts +5 -2
- package/dist/features/memory/formatters.d.ts.map +1 -1
- package/dist/features/memory/formatters.js +1 -2
- package/dist/features/memory/formatters.js.map +1 -1
- package/dist/features/memory/index.d.ts +8 -8
- package/dist/features/memory/index.d.ts.map +1 -1
- package/dist/features/memory/index.js +6 -10
- package/dist/features/memory/index.js.map +1 -1
- package/dist/features/memory/ports.d.ts +1 -1
- package/dist/features/memory/react/components/MemoryConnectedPanel.d.ts +1 -1
- package/dist/features/memory/react/components/MemoryConnectedPanel.d.ts.map +1 -1
- package/dist/features/memory/react/components/MemoryConnectedPanel.js +2 -1
- package/dist/features/memory/react/components/MemoryConnectedPanel.js.map +1 -1
- package/dist/features/memory/react/components/MemoryEntryCard.d.ts.map +1 -1
- package/dist/features/memory/react/components/MemoryEntryCard.js +2 -1
- package/dist/features/memory/react/components/MemoryEntryCard.js.map +1 -1
- package/dist/features/memory/react/components/MemoryExtractionCard.d.ts.map +1 -1
- package/dist/features/memory/react/components/MemoryExtractionCard.js +1 -1
- package/dist/features/memory/react/components/MemoryExtractionCard.js.map +1 -1
- package/dist/features/memory/react/components/MemoryManualEditor.d.ts.map +1 -1
- package/dist/features/memory/react/components/MemoryManualEditor.js +2 -1
- package/dist/features/memory/react/components/MemoryManualEditor.js.map +1 -1
- package/dist/features/memory/react/components/MemorySettingsPanel.d.ts +22 -0
- package/dist/features/memory/react/components/MemorySettingsPanel.d.ts.map +1 -0
- package/dist/features/memory/react/components/MemorySettingsPanel.js +30 -0
- package/dist/features/memory/react/components/MemorySettingsPanel.js.map +1 -0
- package/dist/features/memory/react/hooks/useMemoryConfig.hooks.d.ts.map +1 -1
- package/dist/features/memory/react/hooks/useMemoryConfig.hooks.js +1 -1
- package/dist/features/memory/react/hooks/useMemoryConfig.hooks.js.map +1 -1
- package/dist/features/memory/react/hooks/useMemoryConnectors.hooks.d.ts +43 -1
- package/dist/features/memory/react/hooks/useMemoryConnectors.hooks.d.ts.map +1 -1
- package/dist/features/memory/react/hooks/useMemoryConnectors.hooks.js +99 -99
- package/dist/features/memory/react/hooks/useMemoryConnectors.hooks.js.map +1 -1
- package/dist/features/memory/react/hooks/useMemoryConnectors.rules.d.ts +54 -0
- package/dist/features/memory/react/hooks/useMemoryConnectors.rules.d.ts.map +1 -0
- package/dist/features/memory/react/hooks/useMemoryConnectors.rules.js +81 -0
- package/dist/features/memory/react/hooks/useMemoryConnectors.rules.js.map +1 -0
- package/dist/features/memory/react/hooks/useMemoryEntries.hooks.d.ts.map +1 -1
- package/dist/features/memory/react/hooks/useMemoryEntries.hooks.js +1 -1
- package/dist/features/memory/react/hooks/useMemoryEntries.hooks.js.map +1 -1
- package/dist/features/memory/react/hooks/useMemoryExtractions.hooks.d.ts.map +1 -1
- package/dist/features/memory/react/hooks/useMemoryExtractions.hooks.js.map +1 -1
- package/dist/features/memory/react/render-markdown.d.ts.map +1 -1
- package/dist/features/memory/react/render-markdown.js +3 -2
- package/dist/features/memory/react/render-markdown.js.map +1 -1
- package/dist/features/memory/react/styles.d.ts +11 -0
- package/dist/features/memory/react/styles.d.ts.map +1 -0
- package/dist/features/memory/react/styles.js +18 -0
- package/dist/features/memory/react/styles.js.map +1 -0
- package/dist/features/memory/rules.d.ts +1 -1
- package/dist/features/memory/rules.js +2 -2
- package/dist/features/memory/rules.js.map +1 -1
- package/dist/features/memory/types.d.ts +1 -1
- package/dist/features/memory/types.d.ts.map +1 -1
- package/dist/features/notifications/constants.d.ts.map +1 -0
- package/dist/features/notifications/constants.js +8 -0
- package/dist/features/notifications/constants.js.map +1 -0
- package/dist/features/notifications/index.d.ts +5 -0
- package/dist/features/notifications/index.d.ts.map +1 -0
- package/dist/features/notifications/index.js.map +1 -0
- package/dist/features/notifications/notifications-catalog.d.ts +25 -0
- package/dist/features/notifications/notifications-catalog.d.ts.map +1 -0
- package/dist/features/notifications/notifications-catalog.js +27 -0
- package/dist/features/notifications/notifications-catalog.js.map +1 -0
- package/dist/features/notifications/react/components/NotificationsTab.d.ts +48 -0
- package/dist/features/notifications/react/components/NotificationsTab.d.ts.map +1 -0
- package/dist/features/notifications/react/components/NotificationsTab.js +84 -0
- package/dist/features/notifications/react/components/NotificationsTab.js.map +1 -0
- package/dist/features/notifications/rules.d.ts +21 -0
- package/dist/features/notifications/rules.d.ts.map +1 -0
- package/dist/features/notifications/rules.js +7 -0
- package/dist/features/notifications/rules.js.map +1 -0
- package/dist/features/notifications/types.d.ts +15 -0
- package/dist/features/notifications/types.d.ts.map +1 -0
- package/dist/features/notifications/types.js +2 -0
- package/dist/features/notifications/types.js.map +1 -0
- package/dist/features/privacy/index.d.ts +5 -0
- package/dist/features/privacy/index.d.ts.map +1 -0
- package/dist/features/privacy/index.js.map +1 -0
- package/dist/features/privacy/react/components/PrivacyTab.d.ts +34 -0
- package/dist/features/privacy/react/components/PrivacyTab.d.ts.map +1 -0
- package/dist/features/privacy/react/components/PrivacyTab.js +36 -0
- package/dist/features/privacy/react/components/PrivacyTab.js.map +1 -0
- package/dist/features/privacy/rules.d.ts.map +1 -0
- package/dist/features/privacy/rules.js +70 -0
- package/dist/features/privacy/rules.js.map +1 -0
- package/dist/features/privacy/types.d.ts.map +1 -0
- package/dist/features/privacy/types.js.map +1 -0
- package/dist/features/project-locations/dependencies.d.ts +20 -0
- package/dist/features/project-locations/dependencies.d.ts.map +1 -0
- package/dist/features/project-locations/dependencies.js +45 -0
- package/dist/features/project-locations/dependencies.js.map +1 -0
- package/dist/features/project-locations/index.d.ts +9 -0
- package/dist/features/project-locations/index.d.ts.map +1 -0
- package/dist/features/project-locations/index.js +5 -0
- package/dist/features/project-locations/index.js.map +1 -0
- package/dist/features/project-locations/ports.d.ts +41 -0
- package/dist/features/project-locations/ports.d.ts.map +1 -0
- package/dist/features/project-locations/ports.js +2 -0
- package/dist/features/project-locations/ports.js.map +1 -0
- package/dist/features/project-locations/react/components/ProjectLocationsTab.d.ts +36 -0
- package/dist/features/project-locations/react/components/ProjectLocationsTab.d.ts.map +1 -0
- package/dist/features/project-locations/react/components/ProjectLocationsTab.js +53 -0
- package/dist/features/project-locations/react/components/ProjectLocationsTab.js.map +1 -0
- package/dist/features/project-locations/react/hooks/useProjectLocationsTab.d.ts +41 -0
- package/dist/features/project-locations/react/hooks/useProjectLocationsTab.d.ts.map +1 -0
- package/dist/features/project-locations/react/hooks/useProjectLocationsTab.js +157 -0
- package/dist/features/project-locations/react/hooks/useProjectLocationsTab.js.map +1 -0
- package/dist/features/project-locations/rules.d.ts +53 -0
- package/dist/features/project-locations/rules.d.ts.map +1 -0
- package/dist/features/project-locations/rules.js +82 -0
- package/dist/features/project-locations/rules.js.map +1 -0
- package/dist/features/project-locations/types.d.ts +78 -0
- package/dist/features/project-locations/types.d.ts.map +1 -0
- package/dist/features/project-locations/types.js +13 -0
- package/dist/features/project-locations/types.js.map +1 -0
- package/dist/features/resource-dashboard/types.d.ts +1 -1
- package/dist/features/resource-dashboard/types.js +1 -1
- package/dist/features/settings/dialog/index.d.ts +7 -0
- package/dist/features/settings/dialog/index.d.ts.map +1 -0
- package/dist/features/settings/dialog/index.js +8 -0
- package/dist/features/settings/dialog/index.js.map +1 -0
- package/dist/features/settings/dialog/react/components/SettingsDialogShell.d.ts +33 -0
- package/dist/features/settings/dialog/react/components/SettingsDialogShell.d.ts.map +1 -0
- package/dist/features/settings/dialog/react/components/SettingsDialogShell.js +32 -0
- package/dist/features/settings/dialog/react/components/SettingsDialogShell.js.map +1 -0
- package/dist/features/settings/dialog/react/hooks/useSettingsDialogShell.d.ts +11 -0
- package/dist/features/settings/dialog/react/hooks/useSettingsDialogShell.d.ts.map +1 -0
- package/dist/features/settings/dialog/react/hooks/useSettingsDialogShell.js +10 -0
- package/dist/features/settings/dialog/react/hooks/useSettingsDialogShell.js.map +1 -0
- package/dist/features/settings/dialog/styles/settings-dialog.css +4434 -0
- package/dist/features/skills/dependencies.d.ts +18 -0
- package/dist/features/skills/dependencies.d.ts.map +1 -0
- package/dist/features/skills/dependencies.js +82 -0
- package/dist/features/skills/dependencies.js.map +1 -0
- package/dist/features/skills/index.d.ts +13 -0
- package/dist/features/skills/index.d.ts.map +1 -0
- package/dist/features/skills/index.js +7 -0
- package/dist/features/skills/index.js.map +1 -0
- package/dist/features/skills/ports.d.ts +45 -0
- package/dist/features/skills/ports.d.ts.map +1 -0
- package/dist/features/skills/ports.js +2 -0
- package/dist/features/skills/ports.js.map +1 -0
- package/dist/features/skills/react/components/SkillDraftForm.d.ts +39 -0
- package/dist/features/skills/react/components/SkillDraftForm.d.ts.map +1 -0
- package/dist/features/skills/react/components/SkillDraftForm.js +29 -0
- package/dist/features/skills/react/components/SkillDraftForm.js.map +1 -0
- package/dist/features/skills/react/components/SkillRow.d.ts +54 -0
- package/dist/features/skills/react/components/SkillRow.d.ts.map +1 -0
- package/dist/features/skills/react/components/SkillRow.js +34 -0
- package/dist/features/skills/react/components/SkillRow.js.map +1 -0
- package/dist/features/skills/react/components/SkillsTab.d.ts +34 -0
- package/dist/features/skills/react/components/SkillsTab.d.ts.map +1 -0
- package/dist/features/skills/react/components/SkillsTab.js +33 -0
- package/dist/features/skills/react/components/SkillsTab.js.map +1 -0
- package/dist/features/skills/react/hooks/useSkillsTab.d.ts +70 -0
- package/dist/features/skills/react/hooks/useSkillsTab.d.ts.map +1 -0
- package/dist/features/skills/react/hooks/useSkillsTab.js +282 -0
- package/dist/features/skills/react/hooks/useSkillsTab.js.map +1 -0
- package/dist/features/skills/rules.d.ts +156 -0
- package/dist/features/skills/rules.d.ts.map +1 -0
- package/dist/features/skills/rules.js +272 -0
- package/dist/features/skills/rules.js.map +1 -0
- package/dist/features/skills/types.d.ts +97 -0
- package/dist/features/skills/types.d.ts.map +1 -0
- package/dist/features/skills/types.js +18 -0
- package/dist/features/skills/types.js.map +1 -0
- package/dist/features/source-config-list/agent-handles.d.ts +121 -0
- package/dist/features/source-config-list/agent-handles.d.ts.map +1 -0
- package/dist/features/source-config-list/agent-handles.js +151 -0
- package/dist/features/source-config-list/agent-handles.js.map +1 -0
- package/dist/features/source-config-list/index.d.ts +6 -5
- package/dist/features/source-config-list/index.d.ts.map +1 -1
- package/dist/features/source-config-list/index.js +3 -2
- package/dist/features/source-config-list/index.js.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigAddForm.d.ts +28 -1
- package/dist/features/source-config-list/react/components/SourceConfigAddForm.d.ts.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigAddForm.js +25 -4
- package/dist/features/source-config-list/react/components/SourceConfigAddForm.js.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigField.d.ts +36 -1
- package/dist/features/source-config-list/react/components/SourceConfigField.d.ts.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigField.js +74 -3
- package/dist/features/source-config-list/react/components/SourceConfigField.js.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigItemCard.d.ts +39 -2
- package/dist/features/source-config-list/react/components/SourceConfigItemCard.d.ts.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigItemCard.js +55 -4
- package/dist/features/source-config-list/react/components/SourceConfigItemCard.js.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigList.d.ts +9 -3
- package/dist/features/source-config-list/react/components/SourceConfigList.d.ts.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigList.js +2 -2
- package/dist/features/source-config-list/react/components/SourceConfigList.js.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigListView.d.ts +13 -2
- package/dist/features/source-config-list/react/components/SourceConfigListView.d.ts.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigListView.js +8 -2
- package/dist/features/source-config-list/react/components/SourceConfigListView.js.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigTestControl.d.ts +18 -1
- package/dist/features/source-config-list/react/components/SourceConfigTestControl.d.ts.map +1 -1
- package/dist/features/source-config-list/react/components/SourceConfigTestControl.js +16 -2
- package/dist/features/source-config-list/react/components/SourceConfigTestControl.js.map +1 -1
- package/dist/features/source-config-list/react/hooks/useSourceConfigAddForm.d.ts.map +1 -1
- package/dist/features/source-config-list/react/hooks/useSourceConfigAddForm.js.map +1 -1
- package/dist/features/source-config-list/react/hooks/useSourceConfigList.d.ts +12 -1
- package/dist/features/source-config-list/react/hooks/useSourceConfigList.d.ts.map +1 -1
- package/dist/features/source-config-list/react/hooks/useSourceConfigList.js.map +1 -1
- package/dist/features/source-config-list/rules.d.ts +22 -5
- package/dist/features/source-config-list/rules.d.ts.map +1 -1
- package/dist/features/source-config-list/rules.js +56 -16
- package/dist/features/source-config-list/rules.js.map +1 -1
- package/dist/features/source-config-list/types.d.ts +16 -2
- package/dist/features/source-config-list/types.d.ts.map +1 -1
- package/dist/features/tab-strip/types.d.ts +1 -1
- package/dist/features/tabbed-dialog/index.d.ts +7 -0
- package/dist/features/tabbed-dialog/index.d.ts.map +1 -0
- package/dist/features/tabbed-dialog/index.js +4 -0
- package/dist/features/tabbed-dialog/index.js.map +1 -0
- package/dist/features/tabbed-dialog/react/components/TabbedDialog.d.ts +71 -0
- package/dist/features/tabbed-dialog/react/components/TabbedDialog.d.ts.map +1 -0
- package/dist/features/tabbed-dialog/react/components/TabbedDialog.js +72 -0
- package/dist/features/tabbed-dialog/react/components/TabbedDialog.js.map +1 -0
- package/dist/features/tabbed-dialog/react/hooks/useTabbedDialog.d.ts +39 -0
- package/dist/features/tabbed-dialog/react/hooks/useTabbedDialog.d.ts.map +1 -0
- package/dist/features/tabbed-dialog/react/hooks/useTabbedDialog.js +50 -0
- package/dist/features/tabbed-dialog/react/hooks/useTabbedDialog.js.map +1 -0
- package/dist/features/tabbed-dialog/rules.d.ts +13 -0
- package/dist/features/tabbed-dialog/rules.d.ts.map +1 -0
- package/dist/features/tabbed-dialog/rules.js.map +1 -0
- package/dist/features/tabbed-dialog/styles/tabbed-dialog.css +406 -0
- package/dist/features/tabbed-dialog/types.d.ts +51 -0
- package/dist/features/tabbed-dialog/types.d.ts.map +1 -0
- package/dist/features/tabbed-dialog/types.js +23 -0
- package/dist/features/tabbed-dialog/types.js.map +1 -0
- package/dist/features/viewer-shell/react/components/ViewportSwitcher.d.ts +1 -1
- package/dist/features/viewer-shell/react/components/ViewportSwitcher.js +1 -1
- package/dist/features/viewer-shell/rules.d.ts +1 -1
- package/dist/features/viewer-shell/rules.js +1 -1
- package/dist/icon-name.d.ts +21 -0
- package/dist/icon-name.d.ts.map +1 -0
- package/dist/icon-name.js +25 -0
- package/dist/icon-name.js.map +1 -0
- package/dist/index.d.ts +16 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +32 -9
- package/dist/index.js.map +1 -1
- package/dist/react/components/AgentIcon.d.ts +5 -3
- package/dist/react/components/AgentIcon.d.ts.map +1 -1
- package/dist/react/components/AgentIcon.js +52 -13
- package/dist/react/components/AgentIcon.js.map +1 -1
- package/dist/react/components/AppChromeHeader.js +1 -1
- package/dist/react/components/AppChromeHeader.js.map +1 -1
- package/dist/react/components/CustomSelect.d.ts +19 -4
- package/dist/react/components/CustomSelect.d.ts.map +1 -1
- package/dist/react/components/CustomSelect.js +59 -12
- package/dist/react/components/CustomSelect.js.map +1 -1
- package/dist/react/components/EdgeScrollZones.js +1 -1
- package/dist/react/components/EdgeScrollZones.js.map +1 -1
- package/dist/react/components/ExportDiagnosticsButton.d.ts.map +1 -1
- package/dist/react/components/ExportDiagnosticsButton.js +5 -2
- package/dist/react/components/ExportDiagnosticsButton.js.map +1 -1
- package/dist/react/components/HeaderActionsMenu.d.ts +1 -1
- package/dist/react/components/HeaderActionsMenu.d.ts.map +1 -1
- package/dist/react/components/HeaderActionsMenu.js +1 -1
- package/dist/react/components/HeaderActionsMenu.js.map +1 -1
- package/dist/react/components/Icon.d.ts +7 -4
- package/dist/react/components/Icon.d.ts.map +1 -1
- package/dist/react/components/Icon.js +133 -213
- package/dist/react/components/Icon.js.map +1 -1
- package/dist/react/components/LanguageMenu.d.ts +2 -4
- package/dist/react/components/LanguageMenu.d.ts.map +1 -1
- package/dist/react/components/LanguageMenu.js +1 -1
- package/dist/react/components/LanguageMenu.js.map +1 -1
- package/dist/react/components/Loading.js +1 -1
- package/dist/react/components/Loading.js.map +1 -1
- package/dist/react/components/PaletteTweaks.js +1 -1
- package/dist/react/components/PaletteTweaks.js.map +1 -1
- package/dist/react/components/RemixIcon.d.ts +3 -3
- package/dist/react/components/RemixIcon.d.ts.map +1 -1
- package/dist/react/components/RemixIcon.js +39 -3
- package/dist/react/components/RemixIcon.js.map +1 -1
- package/dist/react/components/Toast.js +1 -1
- package/dist/react/components/Toast.js.map +1 -1
- package/dist/react/components/WorkingDirPicker.js +1 -1
- package/dist/react/components/WorkingDirPicker.js.map +1 -1
- package/dist/react/components/agent-icons/amr.svg +17 -0
- package/dist/react/components/agent-icons/antigravity.svg +1 -0
- package/dist/react/components/agent-icons/claude.svg +1 -0
- package/dist/react/components/agent-icons/codex.svg +1 -0
- package/dist/react/components/agent-icons/copilot.svg +1 -0
- package/dist/react/components/agent-icons/cursor-agent.svg +1 -0
- package/dist/react/components/agent-icons/deepseek.svg +1 -0
- package/dist/react/components/agent-icons/gemini.svg +1 -0
- package/dist/react/components/agent-icons/grok-build.svg +15 -0
- package/dist/react/components/agent-icons/hermes.svg +1 -0
- package/dist/react/components/agent-icons/kilo.svg +1 -0
- package/dist/react/components/agent-icons/kimi.svg +1 -0
- package/dist/react/components/agent-icons/kiro.svg +1 -0
- package/dist/react/components/agent-icons/mimo.svg +1 -0
- package/dist/react/components/agent-icons/opencode.svg +1 -0
- package/dist/react/components/agent-icons/pi.svg +1 -0
- package/dist/react/components/agent-icons/qoder.svg +1 -0
- package/dist/react/components/agent-icons/qwen.svg +1 -0
- package/dist/react/components/agent-icons/reasonix.svg +37 -0
- package/dist/react/components/agent-icons/vibe.svg +1 -0
- package/dist/react/components/remixicon-font/remixicon.css +3270 -0
- package/dist/react/components/remixicon-font/remixicon.woff2 +0 -0
- package/dist/react/hooks/useBrandFonts.d.ts.map +1 -1
- package/dist/react/hooks/useBrandFonts.js +2 -3
- package/dist/react/hooks/useBrandFonts.js.map +1 -1
- package/dist/react/mcp-ui/McpUiHost.d.ts +19 -0
- package/dist/react/mcp-ui/McpUiHost.d.ts.map +1 -0
- package/dist/react/mcp-ui/McpUiHost.js +34 -0
- package/dist/react/mcp-ui/McpUiHost.js.map +1 -0
- package/dist/react/mcp-ui/host-message-source.d.ts +27 -0
- package/dist/react/mcp-ui/host-message-source.d.ts.map +1 -0
- package/dist/react/mcp-ui/host-message-source.js +33 -0
- package/dist/react/mcp-ui/host-message-source.js.map +1 -0
- package/dist/react/mcp-ui/index.d.ts +23 -0
- package/dist/react/mcp-ui/index.d.ts.map +1 -0
- package/dist/react/mcp-ui/index.js +26 -0
- package/dist/react/mcp-ui/index.js.map +1 -0
- package/dist/react/mcp-ui/useMcpUiHost.d.ts +160 -0
- package/dist/react/mcp-ui/useMcpUiHost.d.ts.map +1 -0
- package/dist/react/mcp-ui/useMcpUiHost.js +193 -0
- package/dist/react/mcp-ui/useMcpUiHost.js.map +1 -0
- package/dist/renderers/annotation-canvas/dependencies.d.ts +13 -0
- package/dist/renderers/annotation-canvas/dependencies.d.ts.map +1 -0
- package/dist/renderers/annotation-canvas/dependencies.js +8 -0
- package/dist/renderers/annotation-canvas/dependencies.js.map +1 -0
- package/dist/renderers/annotation-canvas/drawing.d.ts +39 -0
- package/dist/renderers/annotation-canvas/drawing.d.ts.map +1 -0
- package/dist/renderers/annotation-canvas/drawing.js +135 -0
- package/dist/renderers/annotation-canvas/drawing.js.map +1 -0
- package/dist/renderers/annotation-canvas/index.d.ts +13 -0
- package/dist/renderers/annotation-canvas/index.d.ts.map +1 -0
- package/dist/renderers/annotation-canvas/index.js +7 -0
- package/dist/renderers/annotation-canvas/index.js.map +1 -0
- package/dist/renderers/annotation-canvas/ports.d.ts +30 -0
- package/dist/renderers/annotation-canvas/ports.d.ts.map +1 -0
- package/dist/renderers/annotation-canvas/ports.js +2 -0
- package/dist/renderers/annotation-canvas/ports.js.map +1 -0
- package/dist/renderers/annotation-canvas/react/components/AnnotationCanvas.d.ts +24 -0
- package/dist/renderers/annotation-canvas/react/components/AnnotationCanvas.d.ts.map +1 -0
- package/dist/renderers/annotation-canvas/react/components/AnnotationCanvas.js +102 -0
- package/dist/renderers/annotation-canvas/react/components/AnnotationCanvas.js.map +1 -0
- package/dist/renderers/annotation-canvas/react/components/icons.d.ts +11 -0
- package/dist/renderers/annotation-canvas/react/components/icons.d.ts.map +1 -0
- package/dist/renderers/annotation-canvas/react/components/icons.js +21 -0
- package/dist/renderers/annotation-canvas/react/components/icons.js.map +1 -0
- package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.controller.d.ts +146 -0
- package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.controller.d.ts.map +1 -0
- package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.controller.js +118 -0
- package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.controller.js.map +1 -0
- package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.d.ts +101 -0
- package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.d.ts.map +1 -0
- package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.js +834 -0
- package/dist/renderers/annotation-canvas/react/hooks/useAnnotationCanvas.js.map +1 -0
- package/dist/renderers/annotation-canvas/rules.d.ts +73 -0
- package/dist/renderers/annotation-canvas/rules.d.ts.map +1 -0
- package/dist/renderers/annotation-canvas/rules.js +177 -0
- package/dist/renderers/annotation-canvas/rules.js.map +1 -0
- package/dist/renderers/annotation-canvas/types.d.ts +108 -0
- package/dist/renderers/annotation-canvas/types.d.ts.map +1 -0
- package/dist/renderers/annotation-canvas/types.js +2 -0
- package/dist/renderers/annotation-canvas/types.js.map +1 -0
- package/dist/renderers/html-utils.d.ts +25 -0
- package/dist/renderers/html-utils.d.ts.map +1 -0
- package/dist/renderers/html-utils.js +53 -0
- package/dist/renderers/html-utils.js.map +1 -0
- package/dist/renderers/index.d.ts +45 -0
- package/dist/renderers/index.d.ts.map +1 -0
- package/dist/renderers/index.js +36 -0
- package/dist/renderers/index.js.map +1 -0
- package/dist/renderers/new-tab-preview.d.ts +22 -0
- package/dist/renderers/new-tab-preview.d.ts.map +1 -0
- package/dist/renderers/new-tab-preview.js +50 -0
- package/dist/renderers/new-tab-preview.js.map +1 -0
- package/dist/renderers/preview-modal-shell/index.d.ts +10 -0
- package/dist/renderers/preview-modal-shell/index.d.ts.map +1 -0
- package/dist/renderers/preview-modal-shell/index.js +5 -0
- package/dist/renderers/preview-modal-shell/index.js.map +1 -0
- package/dist/renderers/preview-modal-shell/react/components/PreviewModalShell.d.ts +62 -0
- package/dist/renderers/preview-modal-shell/react/components/PreviewModalShell.d.ts.map +1 -0
- package/dist/renderers/preview-modal-shell/react/components/PreviewModalShell.js +74 -0
- package/dist/renderers/preview-modal-shell/react/components/PreviewModalShell.js.map +1 -0
- package/dist/renderers/preview-modal-shell/react/components/icons.d.ts +12 -0
- package/dist/renderers/preview-modal-shell/react/components/icons.d.ts.map +1 -0
- package/dist/renderers/preview-modal-shell/react/components/icons.js +11 -0
- package/dist/renderers/preview-modal-shell/react/components/icons.js.map +1 -0
- package/dist/renderers/preview-modal-shell/react/hooks/usePreviewModalShell.d.ts +50 -0
- package/dist/renderers/preview-modal-shell/react/hooks/usePreviewModalShell.d.ts.map +1 -0
- package/dist/renderers/preview-modal-shell/react/hooks/usePreviewModalShell.js +171 -0
- package/dist/renderers/preview-modal-shell/react/hooks/usePreviewModalShell.js.map +1 -0
- package/dist/renderers/preview-modal-shell/rules.d.ts +44 -0
- package/dist/renderers/preview-modal-shell/rules.d.ts.map +1 -0
- package/dist/renderers/preview-modal-shell/rules.js +50 -0
- package/dist/renderers/preview-modal-shell/rules.js.map +1 -0
- package/dist/renderers/preview-modal-shell/types.d.ts +50 -0
- package/dist/renderers/preview-modal-shell/types.d.ts.map +1 -0
- package/dist/renderers/preview-modal-shell/types.js +14 -0
- package/dist/renderers/preview-modal-shell/types.js.map +1 -0
- package/dist/renderers/react/components/ArtifactView.d.ts +46 -0
- package/dist/renderers/react/components/ArtifactView.d.ts.map +1 -0
- package/dist/renderers/react/components/ArtifactView.js +35 -0
- package/dist/renderers/react/components/ArtifactView.js.map +1 -0
- package/dist/renderers/react/components/SrcDocSandbox.d.ts +13 -0
- package/dist/renderers/react/components/SrcDocSandbox.d.ts.map +1 -0
- package/dist/renderers/react/components/SrcDocSandbox.js +34 -0
- package/dist/renderers/react/components/SrcDocSandbox.js.map +1 -0
- package/dist/renderers/react/i18n.d.ts +30 -0
- package/dist/renderers/react/i18n.d.ts.map +1 -0
- package/dist/renderers/react/i18n.js +40 -0
- package/dist/renderers/react/i18n.js.map +1 -0
- package/dist/renderers/registry.d.ts +57 -0
- package/dist/renderers/registry.d.ts.map +1 -0
- package/dist/renderers/registry.js +39 -0
- package/dist/renderers/registry.js.map +1 -0
- package/dist/renderers/renderers/html.d.ts +10 -0
- package/dist/renderers/renderers/html.d.ts.map +1 -0
- package/dist/renderers/renderers/html.js +23 -0
- package/dist/renderers/renderers/html.js.map +1 -0
- package/dist/renderers/renderers/index.d.ts +12 -0
- package/dist/renderers/renderers/index.d.ts.map +1 -0
- package/dist/renderers/renderers/index.js +18 -0
- package/dist/renderers/renderers/index.js.map +1 -0
- package/dist/renderers/renderers/markdown.d.ts +4 -0
- package/dist/renderers/renderers/markdown.d.ts.map +1 -0
- package/dist/renderers/renderers/markdown.js +126 -0
- package/dist/renderers/renderers/markdown.js.map +1 -0
- package/dist/renderers/renderers/react-component.d.ts +10 -0
- package/dist/renderers/renderers/react-component.d.ts.map +1 -0
- package/dist/renderers/renderers/react-component.js +19 -0
- package/dist/renderers/renderers/react-component.js.map +1 -0
- package/dist/renderers/renderers/svg.d.ts +3 -0
- package/dist/renderers/renderers/svg.d.ts.map +1 -0
- package/dist/renderers/renderers/svg.js +14 -0
- package/dist/renderers/renderers/svg.js.map +1 -0
- package/dist/renderers/sandbox-bridge.d.ts +44 -0
- package/dist/renderers/sandbox-bridge.d.ts.map +1 -0
- package/dist/renderers/sandbox-bridge.js +46 -0
- package/dist/renderers/sandbox-bridge.js.map +1 -0
- package/dist/renderers/sandboxed-document.d.ts +34 -0
- package/dist/renderers/sandboxed-document.d.ts.map +1 -0
- package/dist/renderers/sandboxed-document.js +152 -0
- package/dist/renderers/sandboxed-document.js.map +1 -0
- package/dist/renderers/shiki.d.ts +2 -0
- package/dist/renderers/shiki.d.ts.map +1 -0
- package/dist/renderers/shiki.js +55 -0
- package/dist/renderers/shiki.js.map +1 -0
- package/dist/renderers/srcdoc/bridge.d.ts +37 -0
- package/dist/renderers/srcdoc/bridge.d.ts.map +1 -0
- package/dist/renderers/srcdoc/bridge.js +35 -0
- package/dist/renderers/srcdoc/bridge.js.map +1 -0
- package/dist/renderers/srcdoc/build.d.ts +130 -0
- package/dist/renderers/srcdoc/build.d.ts.map +1 -0
- package/dist/renderers/srcdoc/build.js +448 -0
- package/dist/renderers/srcdoc/build.js.map +1 -0
- package/dist/renderers/srcdoc/index.d.ts +3 -0
- package/dist/renderers/srcdoc/index.d.ts.map +1 -0
- package/dist/renderers/srcdoc/index.js +3 -0
- package/dist/renderers/srcdoc/index.js.map +1 -0
- package/dist/renderers/types.d.ts +98 -0
- package/dist/renderers/types.d.ts.map +1 -0
- package/dist/renderers/types.js +2 -0
- package/dist/renderers/types.js.map +1 -0
- package/dist/renderers/url-load-decision.d.ts +93 -0
- package/dist/renderers/url-load-decision.d.ts.map +1 -0
- package/dist/renderers/url-load-decision.js +116 -0
- package/dist/renderers/url-load-decision.js.map +1 -0
- package/dist/utils/appearance.d.ts +2 -16
- package/dist/utils/appearance.d.ts.map +1 -1
- package/dist/utils/appearance.js +11 -51
- package/dist/utils/appearance.js.map +1 -1
- package/dist/utils/endpoint-policy.d.ts +65 -0
- package/dist/utils/endpoint-policy.d.ts.map +1 -0
- package/dist/utils/endpoint-policy.js +157 -0
- package/dist/utils/endpoint-policy.js.map +1 -0
- package/dist/utils/file-transfer.d.ts +10 -0
- package/dist/utils/file-transfer.d.ts.map +1 -1
- package/dist/utils/file-transfer.js +22 -1
- package/dist/utils/file-transfer.js.map +1 -1
- package/dist/utils/notifications.d.ts +2 -9
- package/dist/utils/notifications.d.ts.map +1 -1
- package/dist/utils/notifications.js +1 -13
- package/dist/utils/notifications.js.map +1 -1
- package/package.json +118 -15
- package/dist/components/AgentIcon.d.ts +0 -15
- package/dist/components/AgentIcon.d.ts.map +0 -1
- package/dist/components/AgentIcon.js +0 -80
- package/dist/components/AgentIcon.js.map +0 -1
- package/dist/components/AppChromeHeader.d.ts +0 -19
- package/dist/components/AppChromeHeader.d.ts.map +0 -1
- package/dist/components/AppChromeHeader.js +0 -11
- package/dist/components/AppChromeHeader.js.map +0 -1
- package/dist/components/CustomSelect.d.ts +0 -28
- package/dist/components/CustomSelect.d.ts.map +0 -1
- package/dist/components/CustomSelect.js +0 -167
- package/dist/components/CustomSelect.js.map +0 -1
- package/dist/components/ExportDiagnosticsButton.d.ts +0 -40
- package/dist/components/ExportDiagnosticsButton.d.ts.map +0 -1
- package/dist/components/ExportDiagnosticsButton.js +0 -112
- package/dist/components/ExportDiagnosticsButton.js.map +0 -1
- package/dist/components/Icon.d.ts +0 -15
- package/dist/components/Icon.d.ts.map +0 -1
- package/dist/components/Icon.js +0 -236
- package/dist/components/Icon.js.map +0 -1
- package/dist/components/KitErrorBoundary.d.ts +0 -13
- package/dist/components/KitErrorBoundary.d.ts.map +0 -1
- package/dist/components/KitErrorBoundary.js +0 -30
- package/dist/components/KitErrorBoundary.js.map +0 -1
- package/dist/components/LanguageMenu.d.ts +0 -23
- package/dist/components/LanguageMenu.d.ts.map +0 -1
- package/dist/components/LanguageMenu.js +0 -44
- package/dist/components/LanguageMenu.js.map +0 -1
- package/dist/components/Loading.d.ts +0 -27
- package/dist/components/Loading.d.ts.map +0 -1
- package/dist/components/Loading.js +0 -24
- package/dist/components/Loading.js.map +0 -1
- package/dist/components/PaletteTweaks.d.ts +0 -11
- package/dist/components/PaletteTweaks.d.ts.map +0 -1
- package/dist/components/PaletteTweaks.js +0 -65
- package/dist/components/PaletteTweaks.js.map +0 -1
- package/dist/components/RemixIcon.d.ts +0 -15
- package/dist/components/RemixIcon.d.ts.map +0 -1
- package/dist/components/RemixIcon.js +0 -19
- package/dist/components/RemixIcon.js.map +0 -1
- package/dist/components/Toast.d.ts +0 -18
- package/dist/components/Toast.d.ts.map +0 -1
- package/dist/components/Toast.js +0 -70
- package/dist/components/Toast.js.map +0 -1
- package/dist/components/TooltipLayer.d.ts +0 -9
- package/dist/components/TooltipLayer.d.ts.map +0 -1
- package/dist/components/TooltipLayer.js +0 -289
- package/dist/components/TooltipLayer.js.map +0 -1
- package/dist/components/WorkingDirPicker.d.ts +0 -47
- package/dist/components/WorkingDirPicker.d.ts.map +0 -1
- package/dist/components/WorkingDirPicker.js +0 -63
- package/dist/components/WorkingDirPicker.js.map +0 -1
- package/dist/features/agent-tools/model-context.d.ts +0 -30
- package/dist/features/agent-tools/model-context.d.ts.map +0 -1
- package/dist/features/agent-tools/model-context.js +0 -29
- package/dist/features/agent-tools/model-context.js.map +0 -1
- package/dist/features/agent-tools/types.d.ts +0 -34
- package/dist/features/agent-tools/types.d.ts.map +0 -1
- package/dist/features/agent-tools/types.js +0 -18
- package/dist/features/agent-tools/types.js.map +0 -1
- package/dist/features/rich-text-input/constants.d.ts +0 -16
- package/dist/features/rich-text-input/constants.d.ts.map +0 -1
- package/dist/features/rich-text-input/constants.js +0 -18
- package/dist/features/rich-text-input/constants.js.map +0 -1
- package/dist/features/rich-text-input/deserialize.d.ts +0 -9
- package/dist/features/rich-text-input/deserialize.d.ts.map +0 -1
- package/dist/features/rich-text-input/deserialize.js +0 -55
- package/dist/features/rich-text-input/deserialize.js.map +0 -1
- package/dist/features/rich-text-input/index.d.ts +0 -12
- package/dist/features/rich-text-input/index.d.ts.map +0 -1
- package/dist/features/rich-text-input/index.js +0 -11
- package/dist/features/rich-text-input/index.js.map +0 -1
- package/dist/features/rich-text-input/mention-node.d.ts +0 -56
- package/dist/features/rich-text-input/mention-node.d.ts.map +0 -1
- package/dist/features/rich-text-input/mention-node.js +0 -142
- package/dist/features/rich-text-input/mention-node.js.map +0 -1
- package/dist/features/rich-text-input/mention-parser.d.ts +0 -47
- package/dist/features/rich-text-input/mention-parser.d.ts.map +0 -1
- package/dist/features/rich-text-input/mention-parser.js +0 -239
- package/dist/features/rich-text-input/mention-parser.js.map +0 -1
- package/dist/features/rich-text-input/react/components/CaretFloatingLayer.d.ts +0 -20
- package/dist/features/rich-text-input/react/components/CaretFloatingLayer.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/components/CaretFloatingLayer.js +0 -33
- package/dist/features/rich-text-input/react/components/CaretFloatingLayer.js.map +0 -1
- package/dist/features/rich-text-input/react/components/RichTextInput.d.ts +0 -61
- package/dist/features/rich-text-input/react/components/RichTextInput.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/components/RichTextInput.js +0 -154
- package/dist/features/rich-text-input/react/components/RichTextInput.js.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useCaretFloatingLayerPosition.d.ts +0 -15
- package/dist/features/rich-text-input/react/hooks/useCaretFloatingLayerPosition.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useCaretFloatingLayerPosition.js +0 -54
- package/dist/features/rich-text-input/react/hooks/useCaretFloatingLayerPosition.js.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useKeyboardCommands.d.ts +0 -11
- package/dist/features/rich-text-input/react/hooks/useKeyboardCommands.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useKeyboardCommands.js +0 -70
- package/dist/features/rich-text-input/react/hooks/useKeyboardCommands.js.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useMentionAtomicNavigation.d.ts +0 -8
- package/dist/features/rich-text-input/react/hooks/useMentionAtomicNavigation.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useMentionAtomicNavigation.js +0 -63
- package/dist/features/rich-text-input/react/hooks/useMentionAtomicNavigation.js.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useMentionColorStamping.d.ts +0 -18
- package/dist/features/rich-text-input/react/hooks/useMentionColorStamping.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useMentionColorStamping.js +0 -64
- package/dist/features/rich-text-input/react/hooks/useMentionColorStamping.js.map +0 -1
- package/dist/features/rich-text-input/react/hooks/usePasteFiles.d.ts +0 -5
- package/dist/features/rich-text-input/react/hooks/usePasteFiles.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/hooks/usePasteFiles.js +0 -24
- package/dist/features/rich-text-input/react/hooks/usePasteFiles.js.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useSeededValue.d.ts +0 -21
- package/dist/features/rich-text-input/react/hooks/useSeededValue.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useSeededValue.js +0 -35
- package/dist/features/rich-text-input/react/hooks/useSeededValue.js.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useSyncedOnChange.d.ts +0 -10
- package/dist/features/rich-text-input/react/hooks/useSyncedOnChange.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useSyncedOnChange.js +0 -29
- package/dist/features/rich-text-input/react/hooks/useSyncedOnChange.js.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useTriggerDetection.d.ts +0 -6
- package/dist/features/rich-text-input/react/hooks/useTriggerDetection.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/hooks/useTriggerDetection.js +0 -39
- package/dist/features/rich-text-input/react/hooks/useTriggerDetection.js.map +0 -1
- package/dist/features/rich-text-input/react/test-support/lexical-harness.d.ts +0 -11
- package/dist/features/rich-text-input/react/test-support/lexical-harness.d.ts.map +0 -1
- package/dist/features/rich-text-input/react/test-support/lexical-harness.js +0 -35
- package/dist/features/rich-text-input/react/test-support/lexical-harness.js.map +0 -1
- package/dist/features/rich-text-input/rules.d.ts +0 -83
- package/dist/features/rich-text-input/rules.d.ts.map +0 -1
- package/dist/features/rich-text-input/rules.js +0 -317
- package/dist/features/rich-text-input/rules.js.map +0 -1
- package/dist/features/rich-text-input/serialize.d.ts +0 -8
- package/dist/features/rich-text-input/serialize.d.ts.map +0 -1
- package/dist/features/rich-text-input/serialize.js +0 -44
- package/dist/features/rich-text-input/serialize.js.map +0 -1
- package/dist/features/rich-text-input/types.d.ts +0 -83
- package/dist/features/rich-text-input/types.d.ts.map +0 -1
- package/dist/features/rich-text-input/types.js +0 -15
- package/dist/features/rich-text-input/types.js.map +0 -1
- package/dist/features/settings-dialog/index.d.ts +0 -7
- package/dist/features/settings-dialog/index.d.ts.map +0 -1
- package/dist/features/settings-dialog/index.js +0 -4
- package/dist/features/settings-dialog/index.js.map +0 -1
- package/dist/features/settings-dialog/react/components/SettingsDialogShell.d.ts +0 -49
- package/dist/features/settings-dialog/react/components/SettingsDialogShell.d.ts.map +0 -1
- package/dist/features/settings-dialog/react/components/SettingsDialogShell.js +0 -55
- package/dist/features/settings-dialog/react/components/SettingsDialogShell.js.map +0 -1
- package/dist/features/settings-dialog/react/hooks/useSettingsDialogShell.d.ts +0 -39
- package/dist/features/settings-dialog/react/hooks/useSettingsDialogShell.d.ts.map +0 -1
- package/dist/features/settings-dialog/react/hooks/useSettingsDialogShell.js +0 -50
- package/dist/features/settings-dialog/react/hooks/useSettingsDialogShell.js.map +0 -1
- package/dist/features/settings-dialog/rules.d.ts +0 -13
- package/dist/features/settings-dialog/rules.d.ts.map +0 -1
- package/dist/features/settings-dialog/rules.js.map +0 -1
- package/dist/features/settings-dialog/tabs/appearance/constants.d.ts +0 -12
- package/dist/features/settings-dialog/tabs/appearance/constants.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/appearance/constants.js +0 -10
- package/dist/features/settings-dialog/tabs/appearance/constants.js.map +0 -1
- package/dist/features/settings-dialog/tabs/appearance/index.d.ts +0 -6
- package/dist/features/settings-dialog/tabs/appearance/index.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/appearance/index.js.map +0 -1
- package/dist/features/settings-dialog/tabs/appearance/react/components/AppearanceTab.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/appearance/react/components/AppearanceTab.js +0 -31
- package/dist/features/settings-dialog/tabs/appearance/react/components/AppearanceTab.js.map +0 -1
- package/dist/features/settings-dialog/tabs/appearance/types.d.ts +0 -12
- package/dist/features/settings-dialog/tabs/appearance/types.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/appearance/types.js +0 -8
- package/dist/features/settings-dialog/tabs/appearance/types.js.map +0 -1
- package/dist/features/settings-dialog/tabs/instructions/index.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/instructions/index.js.map +0 -1
- package/dist/features/settings-dialog/tabs/instructions/react/components/InstructionsTab.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/instructions/react/components/InstructionsTab.js +0 -16
- package/dist/features/settings-dialog/tabs/instructions/react/components/InstructionsTab.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/constants.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/constants.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/dependencies.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/dependencies.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/index.d.ts +0 -19
- package/dist/features/settings-dialog/tabs/integrations/index.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/index.js +0 -10
- package/dist/features/settings-dialog/tabs/integrations/index.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/ports.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/ports.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/components/ClientPicker.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/components/ClientPicker.js +0 -31
- package/dist/features/settings-dialog/tabs/integrations/react/components/ClientPicker.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/components/CodexInstallToggleButton.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/components/CodexInstallToggleButton.js +0 -21
- package/dist/features/settings-dialog/tabs/integrations/react/components/CodexInstallToggleButton.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/components/IntegrationsTab.d.ts +0 -27
- package/dist/features/settings-dialog/tabs/integrations/react/components/IntegrationsTab.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/components/IntegrationsTab.js +0 -54
- package/dist/features/settings-dialog/tabs/integrations/react/components/IntegrationsTab.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/components/SnippetBlock.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/components/SnippetBlock.js +0 -53
- package/dist/features/settings-dialog/tabs/integrations/react/components/SnippetBlock.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/hooks/useCodexInstallToggle.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/hooks/useCodexInstallToggle.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/hooks/useMcpInstallInfo.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/react/hooks/useMcpInstallInfo.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/rules.d.ts +0 -45
- package/dist/features/settings-dialog/tabs/integrations/rules.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/rules.js +0 -181
- package/dist/features/settings-dialog/tabs/integrations/rules.js.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/types.d.ts +0 -58
- package/dist/features/settings-dialog/tabs/integrations/types.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/integrations/types.js +0 -15
- package/dist/features/settings-dialog/tabs/integrations/types.js.map +0 -1
- package/dist/features/settings-dialog/tabs/language/index.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/language/index.js.map +0 -1
- package/dist/features/settings-dialog/tabs/language/react/components/LanguageTab.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/language/react/components/LanguageTab.js +0 -18
- package/dist/features/settings-dialog/tabs/language/react/components/LanguageTab.js.map +0 -1
- package/dist/features/settings-dialog/tabs/language/types.d.ts +0 -15
- package/dist/features/settings-dialog/tabs/language/types.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/language/types.js.map +0 -1
- package/dist/features/settings-dialog/tabs/notifications/constants.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/notifications/constants.js +0 -8
- package/dist/features/settings-dialog/tabs/notifications/constants.js.map +0 -1
- package/dist/features/settings-dialog/tabs/notifications/index.d.ts +0 -5
- package/dist/features/settings-dialog/tabs/notifications/index.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/notifications/index.js.map +0 -1
- package/dist/features/settings-dialog/tabs/notifications/react/components/NotificationsTab.d.ts +0 -33
- package/dist/features/settings-dialog/tabs/notifications/react/components/NotificationsTab.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/notifications/react/components/NotificationsTab.js +0 -71
- package/dist/features/settings-dialog/tabs/notifications/react/components/NotificationsTab.js.map +0 -1
- package/dist/features/settings-dialog/tabs/notifications/types.d.ts +0 -15
- package/dist/features/settings-dialog/tabs/notifications/types.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/notifications/types.js.map +0 -1
- package/dist/features/settings-dialog/tabs/privacy/index.d.ts +0 -5
- package/dist/features/settings-dialog/tabs/privacy/index.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/privacy/index.js.map +0 -1
- package/dist/features/settings-dialog/tabs/privacy/react/components/PrivacyTab.d.ts +0 -34
- package/dist/features/settings-dialog/tabs/privacy/react/components/PrivacyTab.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/privacy/react/components/PrivacyTab.js +0 -36
- package/dist/features/settings-dialog/tabs/privacy/react/components/PrivacyTab.js.map +0 -1
- package/dist/features/settings-dialog/tabs/privacy/rules.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/privacy/rules.js +0 -70
- package/dist/features/settings-dialog/tabs/privacy/rules.js.map +0 -1
- package/dist/features/settings-dialog/tabs/privacy/types.d.ts.map +0 -1
- package/dist/features/settings-dialog/tabs/privacy/types.js.map +0 -1
- package/dist/features/settings-dialog/types.d.ts +0 -46
- package/dist/features/settings-dialog/types.d.ts.map +0 -1
- package/dist/features/settings-dialog/types.js +0 -18
- package/dist/features/settings-dialog/types.js.map +0 -1
- package/dist/hooks/useCoalescedCallback.d.ts +0 -35
- package/dist/hooks/useCoalescedCallback.d.ts.map +0 -1
- package/dist/hooks/useCoalescedCallback.js +0 -61
- package/dist/hooks/useCoalescedCallback.js.map +0 -1
- package/dist/hooks/useDebouncedValue.d.ts +0 -2
- package/dist/hooks/useDebouncedValue.d.ts.map +0 -1
- package/dist/hooks/useDebouncedValue.js +0 -14
- package/dist/hooks/useDebouncedValue.js.map +0 -1
- package/dist/hooks/useInView.d.ts +0 -19
- package/dist/hooks/useInView.d.ts.map +0 -1
- package/dist/hooks/useInView.js +0 -39
- package/dist/hooks/useInView.js.map +0 -1
- package/dist/hooks/useResizableSplitPane.d.ts +0 -44
- package/dist/hooks/useResizableSplitPane.d.ts.map +0 -1
- package/dist/hooks/useResizableSplitPane.js +0 -259
- package/dist/hooks/useResizableSplitPane.js.map +0 -1
- package/dist/hooks/useStableHandler.d.ts +0 -10
- package/dist/hooks/useStableHandler.d.ts.map +0 -1
- package/dist/hooks/useStableHandler.js +0 -17
- package/dist/hooks/useStableHandler.js.map +0 -1
- package/dist/vitest-chat-entry.d.ts +0 -13
- package/dist/vitest-chat-entry.d.ts.map +0 -1
- package/dist/vitest-chat-entry.js +0 -13
- package/dist/vitest-chat-entry.js.map +0 -1
- /package/dist/features/{settings-dialog/tabs/appearance → appearance}/index.js +0 -0
- /package/dist/features/{settings-dialog/tabs/appearance → appearance}/react/components/AppearanceTab.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → execution}/ports.js +0 -0
- /package/dist/features/{settings-dialog/tabs/language → i18n/dictionaries}/types.js +0 -0
- /package/dist/features/{settings-dialog/tabs/instructions → instructions}/index.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/instructions → instructions}/index.js +0 -0
- /package/dist/features/{settings-dialog/tabs/instructions → instructions}/react/components/InstructionsTab.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/constants.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/constants.js +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/dependencies.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/dependencies.js +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/ports.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/components/ClientPicker.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/components/CodexInstallToggleButton.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/components/SnippetBlock.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/hooks/useCodexInstallToggle.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/hooks/useCodexInstallToggle.js +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/hooks/useMcpInstallInfo.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/integrations → integrations}/react/hooks/useMcpInstallInfo.js +0 -0
- /package/dist/features/{settings-dialog/tabs/notifications → interactive-ui}/types.js +0 -0
- /package/dist/features/{settings-dialog/tabs/language → language}/index.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/language → language}/index.js +0 -0
- /package/dist/features/{settings-dialog/tabs/language → language}/react/components/LanguageTab.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/notifications → notifications}/constants.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/notifications → notifications}/index.js +0 -0
- /package/dist/features/{settings-dialog/tabs/privacy → privacy}/index.js +0 -0
- /package/dist/features/{settings-dialog/tabs/privacy → privacy}/rules.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/privacy → privacy}/types.d.ts +0 -0
- /package/dist/features/{settings-dialog/tabs/privacy → privacy}/types.js +0 -0
- /package/dist/features/{settings-dialog → tabbed-dialog}/rules.js +0 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { SelectOption } from './select.js';
|
|
2
|
+
export interface ChoiceGroupProps {
|
|
3
|
+
/** HTML `name`, DOM `id` stem, and the params key the value is posted under. */
|
|
4
|
+
readonly name: string;
|
|
5
|
+
/** The question. Rendered as the group's `<legend>`. */
|
|
6
|
+
readonly label: string;
|
|
7
|
+
readonly options: readonly SelectOption[];
|
|
8
|
+
/**
|
|
9
|
+
* `single` renders radios and posts one string; `multiple` renders checkboxes and posts an array
|
|
10
|
+
* of the checked values.
|
|
11
|
+
*/
|
|
12
|
+
readonly selection: 'single' | 'multiple';
|
|
13
|
+
/** Pre-checked values. A `single` group honours only the first; unknown values check nothing. */
|
|
14
|
+
readonly value?: readonly string[];
|
|
15
|
+
/** Help text, wired up with `aria-describedby` on the group rather than on any one option. */
|
|
16
|
+
readonly hint?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Marks the group as answer-required. Enforced by `form.ts`'s `isBlank`, never by the native
|
|
19
|
+
* `required` attribute: on a checkbox group `required` means *this specific box* must be checked,
|
|
20
|
+
* which would silently demand the first option rather than any option. Radios are exempt from
|
|
21
|
+
* that trap but are left consistent here so both groups fail the same way for the same reason.
|
|
22
|
+
*/
|
|
23
|
+
readonly required?: boolean;
|
|
24
|
+
readonly disabled?: boolean;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Renders one grouped-choice field.
|
|
28
|
+
*
|
|
29
|
+
* @param props - See {@link ChoiceGroupProps}.
|
|
30
|
+
* @returns An HTML fragment.
|
|
31
|
+
* @complexity O(n) in the number of options.
|
|
32
|
+
*/
|
|
33
|
+
export declare function renderChoiceGroup(props: ChoiceGroupProps): string;
|
|
34
|
+
//# sourceMappingURL=choice-group.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"choice-group.d.ts","sourceRoot":"","sources":["../../../../src/features/mcp-ui/surfaces/choice-group.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,MAAM,WAAW,gBAAgB;IAC/B,gFAAgF;IAChF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,wDAAwD;IACxD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC1C,iGAAiG;IACjG,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,8FAA8F;IAC9F,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,CAqCjE"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module features/mcp-ui/surfaces/choice-group
|
|
3
|
+
*
|
|
4
|
+
* The two grouped-choice control fragments: a radio group (pick one) and a checklist (pick any).
|
|
5
|
+
*
|
|
6
|
+
* ## Why these are not `select.ts` with a different attribute
|
|
7
|
+
*
|
|
8
|
+
* A `<select>` and a radio group carry the same data — one value from a fixed set — and this module
|
|
9
|
+
* exists only because they answer different questions for the human. A dropdown hides its options
|
|
10
|
+
* until opened, which is right for a long list and wrong for a short one the human is being asked to
|
|
11
|
+
* *compare*; a confirmation surface asking "which of these three?" wants all three visible at once.
|
|
12
|
+
* So `EnumField` gained a `presentation` discriminator rather than a second kind — same value, same
|
|
13
|
+
* read path, same params key, different rendering. Adding a kind would have forced every consumer
|
|
14
|
+
* switching on `kind` to handle a case that behaves identically to one it already handles.
|
|
15
|
+
*
|
|
16
|
+
* A checklist is genuinely different and *does* get its own kind: it posts an **array**, which no
|
|
17
|
+
* other field kind does. `form.ts`'s `readField`/`isBlank` both branch on it for that reason.
|
|
18
|
+
*
|
|
19
|
+
* ## The grouping is a `<fieldset>`, not a `<label>`
|
|
20
|
+
*
|
|
21
|
+
* `renderFieldLabel` points `for` at `fieldElementId(name)`, which for a group names no element —
|
|
22
|
+
* every option input needs its own id, so a single `for` target cannot exist. A `<fieldset>` with a
|
|
23
|
+
* `<legend>` is the native construct for "one question, several controls": screen readers announce
|
|
24
|
+
* the legend with each option, which is exactly the association a stray `<label>` would fail to make.
|
|
25
|
+
*
|
|
26
|
+
* ## The one-option DOM trap this module's read path has to survive
|
|
27
|
+
*
|
|
28
|
+
* `form.elements[name]` returns a `RadioNodeList` when several controls share a name and **the bare
|
|
29
|
+
* element** when only one does. A checklist with a single option therefore reads as a non-iterable
|
|
30
|
+
* value unless normalised — see `form.ts`'s `readChecked`, which is written against this fact.
|
|
31
|
+
*/
|
|
32
|
+
import { escapeHtml } from '../escape.js';
|
|
33
|
+
import { fieldElementId } from './document.js';
|
|
34
|
+
/**
|
|
35
|
+
* Renders one grouped-choice field.
|
|
36
|
+
*
|
|
37
|
+
* @param props - See {@link ChoiceGroupProps}.
|
|
38
|
+
* @returns An HTML fragment.
|
|
39
|
+
* @complexity O(n) in the number of options.
|
|
40
|
+
*/
|
|
41
|
+
export function renderChoiceGroup(props) {
|
|
42
|
+
const stem = fieldElementId(props.name);
|
|
43
|
+
const type = props.selection === 'multiple' ? 'checkbox' : 'radio';
|
|
44
|
+
const checked = new Set(props.selection === 'multiple' ? (props.value ?? []) : (props.value ?? []).slice(0, 1));
|
|
45
|
+
const required = props.required === true ? '<span class="mcpui-required" aria-hidden="true">*</span>' : '';
|
|
46
|
+
const hint = props.hint === undefined
|
|
47
|
+
? ''
|
|
48
|
+
: `\n<span class="mcpui-hint" id="${escapeHtml(stem)}-hint">${escapeHtml(props.hint)}</span>`;
|
|
49
|
+
const describedBy = props.hint === undefined ? '' : ` aria-describedby="${escapeHtml(stem)}-hint"`;
|
|
50
|
+
const options = props.options
|
|
51
|
+
.map((option, index) => {
|
|
52
|
+
// Index-suffixed rather than value-suffixed: an option value is caller data and may contain
|
|
53
|
+
// characters that are legal in a value and illegal in an id, which would break the `for`
|
|
54
|
+
// association silently — the label would simply stop being a hit target.
|
|
55
|
+
const id = `${stem}-${index}`;
|
|
56
|
+
const attributes = ` id="${escapeHtml(id)}" name="${escapeHtml(props.name)}" value="${escapeHtml(option.value)}"` +
|
|
57
|
+
(checked.has(option.value) ? ' checked' : '') +
|
|
58
|
+
(props.disabled === true || option.disabled === true ? ' disabled' : '');
|
|
59
|
+
return (`<div class="mcpui-choice">\n` +
|
|
60
|
+
`<input class="mcpui-checkbox" type="${type}"${attributes}>\n` +
|
|
61
|
+
`<label class="mcpui-choice-label" for="${escapeHtml(id)}">${escapeHtml(option.label ?? option.value)}</label>\n` +
|
|
62
|
+
`</div>`);
|
|
63
|
+
})
|
|
64
|
+
.join('\n');
|
|
65
|
+
return (`<fieldset class="mcpui-field mcpui-choice-group"${describedBy}>\n` +
|
|
66
|
+
`<legend class="mcpui-label">${escapeHtml(props.label)}${required}</legend>${hint}\n` +
|
|
67
|
+
`${options}\n` +
|
|
68
|
+
`</fieldset>`);
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=choice-group.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"choice-group.js","sourceRoot":"","sources":["../../../../src/features/mcp-ui/surfaces/choice-group.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AA2B/C;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAuB;IACvD,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;IACnE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAEhH,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,0DAA0D,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3G,MAAM,IAAI,GACR,KAAK,CAAC,IAAI,KAAK,SAAS;QACtB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,kCAAkC,UAAU,CAAC,IAAI,CAAC,UAAU,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;IAClG,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;IAEnG,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO;SAC1B,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACrB,4FAA4F;QAC5F,yFAAyF;QACzF,yEAAyE;QACzE,MAAM,EAAE,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;QAC9B,MAAM,UAAU,GACd,QAAQ,UAAU,CAAC,EAAE,CAAC,WAAW,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG;YAC9F,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,CAAC,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3E,OAAO,CACL,8BAA8B;YAC9B,uCAAuC,IAAI,IAAI,UAAU,KAAK;YAC9D,0CAA0C,UAAU,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,YAAY;YACjH,QAAQ,CACT,CAAC;IACJ,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,CACL,mDAAmD,WAAW,KAAK;QACnE,+BAA+B,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,QAAQ,YAAY,IAAI,IAAI;QACrF,GAAG,OAAO,IAAI;QACd,aAAa,CACd,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module features/mcp-ui/surfaces/confirmation
|
|
3
|
+
*
|
|
4
|
+
* The confirmation dialog: a title, a description, the facts the human is being asked to agree
|
|
5
|
+
* about, and two buttons — one of which calls a tool.
|
|
6
|
+
*
|
|
7
|
+
* Generalized from the reference implementation's `delete-confirmation-ui.ts`, which is the same
|
|
8
|
+
* dialog hardcoded to one domain (its noun is "post" or "page", its fields are title/slug/kind/status/id,
|
|
9
|
+
* and its tool id is a module constant). Everything domain-shaped there is a parameter here: the
|
|
10
|
+
* facts are a `{label, value}` list, the destructive framing is a flag, and both buttons name their
|
|
11
|
+
* own tool and params.
|
|
12
|
+
*
|
|
13
|
+
* ## The property this builder is built around
|
|
14
|
+
*
|
|
15
|
+
* A confirmation whose secret the model can read is theater. `confirmation-store.ts` explains the
|
|
16
|
+
* arrangement; this builder is the half that keeps its end of it — the token is a value in
|
|
17
|
+
* `confirm.params`, which is interpolated into the surface's inline script and nowhere else. The
|
|
18
|
+
* `ui://` URI, the title, the details, and the model-readable text block of the tool result are all
|
|
19
|
+
* places a token must never go, and none of them are reachable from `confirm.params`.
|
|
20
|
+
*
|
|
21
|
+
* ## Why cancel may also call a tool
|
|
22
|
+
*
|
|
23
|
+
* A cancel that only closes the dialog leaves a live, unredeemed token behind until it expires.
|
|
24
|
+
* Giving `cancel` its own tool call (with the same token and a `decision: "cancel"` param, the shape
|
|
25
|
+
* the reference implementation uses) lets the server burn it immediately, so "cancel" genuinely
|
|
26
|
+
* closes the window rather
|
|
27
|
+
* than deferring it by the TTL. It stays optional because a non-destructive confirmation has nothing
|
|
28
|
+
* to burn.
|
|
29
|
+
*/
|
|
30
|
+
import { type UIResource, type UIResourceUri } from '../resource.js';
|
|
31
|
+
import { type SurfaceDetail, type SurfaceStatusText } from './document.js';
|
|
32
|
+
import type { BridgeScriptSpec } from './bridge.js';
|
|
33
|
+
import type { SurfaceTokenName } from './tokens.js';
|
|
34
|
+
/** A button that calls a tool when clicked. */
|
|
35
|
+
export interface ConfirmationToolAction {
|
|
36
|
+
readonly label: string;
|
|
37
|
+
readonly toolName: string;
|
|
38
|
+
/** Passed verbatim as the tool's `arguments`. The only safe home for a confirmation token. */
|
|
39
|
+
readonly params: Readonly<Record<string, unknown>>;
|
|
40
|
+
}
|
|
41
|
+
export interface ConfirmationSurfaceSpec {
|
|
42
|
+
readonly title: string;
|
|
43
|
+
readonly description?: string;
|
|
44
|
+
/** The facts being agreed about. A dialog that says "delete this?" without naming *this* is not consent. */
|
|
45
|
+
readonly details?: readonly SurfaceDetail[];
|
|
46
|
+
/** A callout above the buttons — the consequence that is not obvious from the details alone. */
|
|
47
|
+
readonly warning?: string;
|
|
48
|
+
/** Styles the affirmative button as destructive. Affects presentation only; it changes no behavior. */
|
|
49
|
+
readonly danger?: boolean;
|
|
50
|
+
readonly confirm: ConfirmationToolAction;
|
|
51
|
+
/** Omit for a dialog whose cancel only dismisses. Give it a tool to burn a pending token server-side. */
|
|
52
|
+
readonly cancel?: ConfirmationToolAction | {
|
|
53
|
+
readonly label: string;
|
|
54
|
+
};
|
|
55
|
+
/** Runtime strings. Partially overridable; anything omitted keeps its English default. */
|
|
56
|
+
readonly text?: Partial<SurfaceStatusText>;
|
|
57
|
+
/** Identity reported to the Host in `ui/initialize`. Defaults to a generic one. */
|
|
58
|
+
readonly app?: BridgeScriptSpec;
|
|
59
|
+
readonly lang?: string;
|
|
60
|
+
readonly tokens?: Partial<Record<SurfaceTokenName, string>>;
|
|
61
|
+
}
|
|
62
|
+
export declare function renderConfirmationDocument(spec: ConfirmationSurfaceSpec): string;
|
|
63
|
+
/**
|
|
64
|
+
* Renders the confirmation dialog as an MCP-UI resource, ready for a tool result's `content` array.
|
|
65
|
+
*
|
|
66
|
+
* @param spec.uri - The `ui://` identifier. Key it by entity and version, never by the confirmation
|
|
67
|
+
* token: a URI is something a host may log, cache, or show in devtools.
|
|
68
|
+
* @param spec.preferredFrameSize - `[width, height]` hint for hosts that honor it.
|
|
69
|
+
* @complexity O(n) in the rendered length.
|
|
70
|
+
*/
|
|
71
|
+
export declare function buildConfirmationSurface(spec: ConfirmationSurfaceSpec & {
|
|
72
|
+
uri: UIResourceUri;
|
|
73
|
+
preferredFrameSize?: readonly [string, string];
|
|
74
|
+
}): UIResource;
|
|
75
|
+
//# sourceMappingURL=confirmation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"confirmation.d.ts","sourceRoot":"","sources":["../../../../src/features/mcp-ui/surfaces/confirmation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,EAAoB,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEvF,OAAO,EASL,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACvB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,+CAA+C;AAC/C,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8FAA8F;IAC9F,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,4GAA4G;IAC5G,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IAC5C,gGAAgG;IAChG,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,uGAAuG;IACvG,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,yGAAyG;IACzG,QAAQ,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACtE,0FAA0F;IAC1F,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC3C,mFAAmF;IACnF,QAAQ,CAAC,GAAG,CAAC,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;CAC7D;AA+BD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,uBAAuB,GAAG,MAAM,CAsEhF;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,uBAAuB,GAAG;IAC9B,GAAG,EAAE,aAAa,CAAC;IACnB,kBAAkB,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChD,GACA,UAAU,CAcZ"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module features/mcp-ui/surfaces/confirmation
|
|
3
|
+
*
|
|
4
|
+
* The confirmation dialog: a title, a description, the facts the human is being asked to agree
|
|
5
|
+
* about, and two buttons — one of which calls a tool.
|
|
6
|
+
*
|
|
7
|
+
* Generalized from the reference implementation's `delete-confirmation-ui.ts`, which is the same
|
|
8
|
+
* dialog hardcoded to one domain (its noun is "post" or "page", its fields are title/slug/kind/status/id,
|
|
9
|
+
* and its tool id is a module constant). Everything domain-shaped there is a parameter here: the
|
|
10
|
+
* facts are a `{label, value}` list, the destructive framing is a flag, and both buttons name their
|
|
11
|
+
* own tool and params.
|
|
12
|
+
*
|
|
13
|
+
* ## The property this builder is built around
|
|
14
|
+
*
|
|
15
|
+
* A confirmation whose secret the model can read is theater. `confirmation-store.ts` explains the
|
|
16
|
+
* arrangement; this builder is the half that keeps its end of it — the token is a value in
|
|
17
|
+
* `confirm.params`, which is interpolated into the surface's inline script and nowhere else. The
|
|
18
|
+
* `ui://` URI, the title, the details, and the model-readable text block of the tool result are all
|
|
19
|
+
* places a token must never go, and none of them are reachable from `confirm.params`.
|
|
20
|
+
*
|
|
21
|
+
* ## Why cancel may also call a tool
|
|
22
|
+
*
|
|
23
|
+
* A cancel that only closes the dialog leaves a live, unredeemed token behind until it expires.
|
|
24
|
+
* Giving `cancel` its own tool call (with the same token and a `decision: "cancel"` param, the shape
|
|
25
|
+
* the reference implementation uses) lets the server burn it immediately, so "cancel" genuinely
|
|
26
|
+
* closes the window rather
|
|
27
|
+
* than deferring it by the TTL. It stays optional because a non-destructive confirmation has nothing
|
|
28
|
+
* to burn.
|
|
29
|
+
*/
|
|
30
|
+
import { createUIResource } from '../resource.js';
|
|
31
|
+
import { escapeHtml, escapeJsValue } from '../escape.js';
|
|
32
|
+
import { DEFAULT_SURFACE_STATUS_TEXT, SURFACE_SCRIPT_PRELUDE, renderActions, renderDetailList, renderStatusRegion, renderSurfaceDocument, renderSurfaceHeader, } from './document.js';
|
|
33
|
+
const DEFAULT_APP = { appName: 'jini-mcp-ui-confirmation', appVersion: '1' };
|
|
34
|
+
function isToolAction(action) {
|
|
35
|
+
return action !== undefined && 'toolName' in action;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Renders the confirmation dialog as a complete, self-contained HTML document.
|
|
39
|
+
*
|
|
40
|
+
* @param spec - See {@link ConfirmationSurfaceSpec}.
|
|
41
|
+
* @returns The full HTML string.
|
|
42
|
+
* @complexity O(n) in the rendered length.
|
|
43
|
+
*/
|
|
44
|
+
/**
|
|
45
|
+
* The confirm/cancel action list a confirmation spec implies — shared between
|
|
46
|
+
* {@link renderConfirmationDocument} (which renders these as real, in-frame buttons) and
|
|
47
|
+
* {@link buildConfirmationSurface} (which writes the same ids/labels/variants into the
|
|
48
|
+
* `_meta` action plan a host mirrors outside the frame). One function, not two independently
|
|
49
|
+
* maintained mappings: a caller adding a third action or renaming a label must not be able to
|
|
50
|
+
* update the visible button without also updating what an agent-visible mirror reports for it.
|
|
51
|
+
*/
|
|
52
|
+
function confirmationActions(spec) {
|
|
53
|
+
const actions = [
|
|
54
|
+
{ id: 'confirm', label: spec.confirm.label, variant: spec.danger === true ? 'danger' : 'primary' },
|
|
55
|
+
];
|
|
56
|
+
if (spec.cancel !== undefined)
|
|
57
|
+
actions.push({ id: 'cancel', label: spec.cancel.label, variant: 'neutral' });
|
|
58
|
+
return actions;
|
|
59
|
+
}
|
|
60
|
+
export function renderConfirmationDocument(spec) {
|
|
61
|
+
const text = { ...DEFAULT_SURFACE_STATUS_TEXT, ...spec.text };
|
|
62
|
+
const actions = confirmationActions(spec);
|
|
63
|
+
const warning = spec.warning === undefined ? '' : `<p class="mcpui-warning">${escapeHtml(spec.warning)}</p>`;
|
|
64
|
+
const bodyHtml = [
|
|
65
|
+
renderSurfaceHeader(spec.description === undefined ? { title: spec.title } : { title: spec.title, description: spec.description }),
|
|
66
|
+
renderDetailList(spec.details ?? []),
|
|
67
|
+
warning,
|
|
68
|
+
renderActions(actions),
|
|
69
|
+
renderStatusRegion(),
|
|
70
|
+
]
|
|
71
|
+
.filter((fragment) => fragment !== '')
|
|
72
|
+
.join('\n');
|
|
73
|
+
// A map from button id to what that button does. `null` means "dismiss locally, call nothing" —
|
|
74
|
+
// the shape a cancel-without-a-tool takes, kept as an explicit null rather than an absent key so
|
|
75
|
+
// the script can tell "this button dismisses" from "this button is unknown to me".
|
|
76
|
+
const plan = {
|
|
77
|
+
confirm: { toolName: spec.confirm.toolName, params: spec.confirm.params },
|
|
78
|
+
};
|
|
79
|
+
if (spec.cancel !== undefined) {
|
|
80
|
+
plan['cancel'] = isToolAction(spec.cancel)
|
|
81
|
+
? { toolName: spec.cancel.toolName, params: spec.cancel.params }
|
|
82
|
+
: null;
|
|
83
|
+
}
|
|
84
|
+
const script = `(function () {
|
|
85
|
+
"use strict";
|
|
86
|
+
${SURFACE_SCRIPT_PRELUDE}
|
|
87
|
+
var PLAN = ${escapeJsValue(plan)};
|
|
88
|
+
var TEXT = ${escapeJsValue(text)};
|
|
89
|
+
|
|
90
|
+
for (var i = 0; i < actionButtons.length; i++) {
|
|
91
|
+
actionButtons[i].addEventListener("click", onClick);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
function onClick(event) {
|
|
95
|
+
var step = PLAN[event.currentTarget.getAttribute("data-mcpui-action")];
|
|
96
|
+
if (step === undefined) return;
|
|
97
|
+
if (step === null) {
|
|
98
|
+
setBusy(true);
|
|
99
|
+
setStatus(TEXT.dismissed, "dismissed");
|
|
100
|
+
api.requestTeardown();
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
setBusy(true);
|
|
104
|
+
setStatus(TEXT.working, "pending");
|
|
105
|
+
api.callTool(step.toolName, step.params).then(function () {
|
|
106
|
+
setStatus(TEXT.done, "done");
|
|
107
|
+
api.requestTeardown();
|
|
108
|
+
}, function (error) {
|
|
109
|
+
// Re-enabled on failure: a rejected call did not happen, so the human must be able to retry
|
|
110
|
+
// or cancel rather than be left with a dead dialog reporting an error it cannot act on.
|
|
111
|
+
setBusy(false);
|
|
112
|
+
setStatus(TEXT.failedPrefix + describeError(error), "failed");
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
}());`;
|
|
116
|
+
return renderSurfaceDocument({
|
|
117
|
+
title: spec.title,
|
|
118
|
+
bodyHtml,
|
|
119
|
+
script,
|
|
120
|
+
app: spec.app ?? DEFAULT_APP,
|
|
121
|
+
...(spec.lang === undefined ? {} : { lang: spec.lang }),
|
|
122
|
+
...(spec.tokens === undefined ? {} : { tokens: spec.tokens }),
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Renders the confirmation dialog as an MCP-UI resource, ready for a tool result's `content` array.
|
|
127
|
+
*
|
|
128
|
+
* @param spec.uri - The `ui://` identifier. Key it by entity and version, never by the confirmation
|
|
129
|
+
* token: a URI is something a host may log, cache, or show in devtools.
|
|
130
|
+
* @param spec.preferredFrameSize - `[width, height]` hint for hosts that honor it.
|
|
131
|
+
* @complexity O(n) in the rendered length.
|
|
132
|
+
*/
|
|
133
|
+
export function buildConfirmationSurface(spec) {
|
|
134
|
+
return createUIResource({
|
|
135
|
+
uri: spec.uri,
|
|
136
|
+
htmlString: renderConfirmationDocument(spec),
|
|
137
|
+
...(spec.preferredFrameSize === undefined ? {} : { preferredFrameSize: spec.preferredFrameSize }),
|
|
138
|
+
// Same title/actions the frame itself renders (via confirmationActions) — see that function's
|
|
139
|
+
// doc for why this must never be a second, independently-maintained mapping. A host reads this
|
|
140
|
+
// to build a parent-DOM mirror discoverable by page.find_elements; see MCP_UI_ACTION_PLAN_META_KEY.
|
|
141
|
+
actionPlan: {
|
|
142
|
+
title: spec.title,
|
|
143
|
+
...(spec.description === undefined ? {} : { description: spec.description }),
|
|
144
|
+
actions: confirmationActions(spec),
|
|
145
|
+
},
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=confirmation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"confirmation.js","sourceRoot":"","sources":["../../../../src/features/mcp-ui/surfaces/confirmation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,EAAE,gBAAgB,EAAuC,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,qBAAqB,EACrB,mBAAmB,GAIpB,MAAM,eAAe,CAAC;AAgCvB,MAAM,WAAW,GAAqB,EAAE,OAAO,EAAE,0BAA0B,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;AAE/F,SAAS,YAAY,CAAC,MAAyC;IAC7D,OAAO,MAAM,KAAK,SAAS,IAAI,UAAU,IAAI,MAAM,CAAC;AACtD,CAAC;AAED;;;;;;GAMG;AACH;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAAC,IAA6B;IACxD,MAAM,OAAO,GAAoB;QAC/B,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE;KACnG,CAAC;IACF,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IAC5G,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAA6B;IACtE,MAAM,IAAI,GAAG,EAAE,GAAG,2BAA2B,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC9D,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAE1C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,4BAA4B,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAC7G,MAAM,QAAQ,GAAG;QACf,mBAAmB,CACjB,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAC9G;QACD,gBAAgB,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;QACpC,OAAO;QACP,aAAa,CAAC,OAAO,CAAC;QACtB,kBAAkB,EAAE;KACrB;SACE,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,KAAK,EAAE,CAAC;SACrC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,gGAAgG;IAChG,iGAAiG;IACjG,mFAAmF;IACnF,MAAM,IAAI,GAA2F;QACnG,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;KAC1E,CAAC;IACF,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;YACxC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAChE,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED,MAAM,MAAM,GAAG;;EAEf,sBAAsB;eACT,aAAa,CAAC,IAAI,CAAC;eACnB,aAAa,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;MA2B5B,CAAC;IAEL,OAAO,qBAAqB,CAAC;QAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,QAAQ;QACR,MAAM;QACN,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,WAAW;QAC5B,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACvD,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;KAC9D,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CACtC,IAGC;IAED,OAAO,gBAAgB,CAAC;QACtB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,UAAU,EAAE,0BAA0B,CAAC,IAAI,CAAC;QAC5C,GAAG,CAAC,IAAI,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACjG,8FAA8F;QAC9F,+FAA+F;QAC/F,oGAAoG;QACpG,UAAU,EAAE;YACV,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5E,OAAO,EAAE,mBAAmB,CAAC,IAAI,CAAC;SACnC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { type BridgeScriptSpec } from './bridge.js';
|
|
2
|
+
import { type SurfaceTokenName } from './tokens.js';
|
|
3
|
+
/**
|
|
4
|
+
* The base stylesheet, applied after the token block.
|
|
5
|
+
*
|
|
6
|
+
* Every rule resolves through a token declared by {@link renderTokenBlock} — there is no external
|
|
7
|
+
* stylesheet to inherit from and no host cascade to fall back to, so a hardcoded color here would
|
|
8
|
+
* be a color no caller could reskin. `var(--x, fallback)` appears only where a value is genuinely
|
|
9
|
+
* optional.
|
|
10
|
+
*/
|
|
11
|
+
export declare const SURFACE_BASE_CSS = "*, *::before, *::after { box-sizing: border-box; }\nhtml, body { margin: 0; padding: 0; }\nbody {\n /* Transparent, not var(--jini-mcpui-bg): this document has no page of its own to paint. It is an\n allow-scripts-only sandboxed iframe embedded directly in a host's chat transcript, and html's\n background is left at its (also transparent) initial value, so the host's own pane shows\n straight through to .mcpui-surface below rather than through a second, unrelated rectangle of\n fill color sitting between the two. --jini-mcpui-bg stays declared for a caller styling\n something else via extraCss -- nothing in this stylesheet reads it anymore. */\n background: transparent;\n color: var(--jini-mcpui-text);\n font-family: var(--jini-mcpui-font);\n font-size: 14px;\n line-height: 1.5;\n padding: 16px;\n -webkit-font-smoothing: antialiased;\n}\n.mcpui-surface {\n background: linear-gradient(135deg,\n color-mix(in srgb, var(--jini-mcpui-accent) 5%, var(--jini-mcpui-panel)) 0%,\n var(--jini-mcpui-panel) 60%);\n border: 1px solid color-mix(in srgb, var(--jini-mcpui-accent) 18%, var(--jini-mcpui-border));\n border-radius: var(--jini-mcpui-radius-md);\n box-shadow: var(--jini-mcpui-surface-shadow);\n padding: 18px 20px 16px;\n max-width: 640px;\n margin: 0 auto;\n}\n.mcpui-title {\n margin: 0;\n font-size: 16px;\n font-weight: 600;\n letter-spacing: -0.01em;\n color: var(--jini-mcpui-text-strong);\n}\n.mcpui-description { margin: 6px 0 0; color: var(--jini-mcpui-text-muted); }\n.mcpui-details {\n display: grid;\n grid-template-columns: max-content minmax(0, 1fr);\n gap: 4px 14px;\n margin: 14px 0 0;\n}\n.mcpui-details dt { color: var(--jini-mcpui-text-soft); font-weight: 500; }\n.mcpui-details dd { margin: 0; overflow-wrap: anywhere; color: var(--jini-mcpui-text); }\n.mcpui-warning {\n margin: 14px 0 0;\n padding: 9px 11px;\n border-radius: var(--jini-mcpui-radius-md);\n border: 1px solid var(--jini-mcpui-danger);\n background: var(--jini-mcpui-danger-tint);\n color: var(--jini-mcpui-text-strong);\n}\n.mcpui-fields { display: flex; flex-direction: column; gap: 12px; margin: 16px 0 0; border: 0; padding: 0; }\n.mcpui-field { display: flex; flex-direction: column; gap: 4px; }\n.mcpui-field-inline { flex-direction: row; align-items: flex-start; gap: 8px; }\n.mcpui-label { font-weight: 500; color: var(--jini-mcpui-text-strong); }\n.mcpui-required { color: var(--jini-mcpui-accent); margin-left: 2px; }\n.mcpui-hint { color: var(--jini-mcpui-text-soft); font-size: 13px; }\n.mcpui-input, .mcpui-select, .mcpui-textarea {\n font: inherit;\n color: var(--jini-mcpui-text);\n background: var(--jini-mcpui-panel);\n border: 1px solid color-mix(in srgb, var(--jini-mcpui-accent) 14%, var(--jini-mcpui-border-strong));\n border-radius: var(--jini-mcpui-radius-sm);\n padding: 7px 9px;\n width: 100%;\n min-width: 0;\n}\n.mcpui-textarea { resize: vertical; min-height: 72px; font-family: var(--jini-mcpui-font); }\n.mcpui-checkbox { margin: 3px 0 0; accent-color: var(--jini-mcpui-accent); }\n.mcpui-choice-group { border: 0; padding: 0; margin: 0; min-width: 0; }\n.mcpui-choice { display: flex; flex-direction: row; align-items: flex-start; gap: 8px; margin: 6px 0 0; }\n.mcpui-choice-label { color: var(--jini-mcpui-text); font-weight: 400; }\n.mcpui-input:focus-visible, .mcpui-select:focus-visible, .mcpui-textarea:focus-visible,\n.mcpui-checkbox:focus-visible, .mcpui-button:focus-visible {\n outline: 2px solid var(--jini-mcpui-accent-ring);\n outline-offset: 1px;\n border-color: var(--jini-mcpui-accent);\n}\n.mcpui-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; }\n.mcpui-button {\n font: inherit;\n font-weight: 500;\n padding: 7px 15px;\n border-radius: var(--jini-mcpui-radius-pill);\n border: 1px solid color-mix(in srgb, var(--jini-mcpui-accent) 14%, var(--jini-mcpui-border-strong));\n background: var(--jini-mcpui-panel);\n color: var(--jini-mcpui-text);\n cursor: pointer;\n}\n.mcpui-button:hover:not([disabled]) { background: var(--jini-mcpui-accent-tint); }\n.mcpui-button-primary {\n background: var(--jini-mcpui-accent);\n border-color: var(--jini-mcpui-accent);\n color: var(--jini-mcpui-panel);\n}\n.mcpui-button-primary:hover:not([disabled]) { background: var(--jini-mcpui-accent-hover); border-color: var(--jini-mcpui-accent-hover); }\n.mcpui-button-danger {\n background: var(--jini-mcpui-danger);\n border-color: var(--jini-mcpui-danger);\n color: var(--jini-mcpui-panel);\n}\n.mcpui-button-danger:hover:not([disabled]) { background: var(--jini-mcpui-danger-hover); border-color: var(--jini-mcpui-danger-hover); }\n.mcpui-button[disabled] { opacity: 0.55; cursor: default; }\n.mcpui-status { margin: 12px 0 0; min-height: 1.4em; color: var(--jini-mcpui-text-muted); }\n.mcpui-status[data-state=\"failed\"], .mcpui-status[data-state=\"invalid\"] { color: var(--jini-mcpui-danger); }\n.mcpui-status[data-state=\"done\"] { color: var(--jini-mcpui-text-strong); }\n/* Neither a plain success nor a failure \u2014 e.g. an outcome surface reporting \"uploaded, not yet\n reachable\" (outcome.ts's own state: partial). Distinct from both --jini-mcpui-danger (would\n wrongly read as \"this failed\") and --jini-mcpui-text-strong (would wrongly read as \"this is\n fully done\"); the accent token reads as \"worth a second look\" without asserting either. */\n.mcpui-status[data-state=\"partial\"] { color: var(--jini-mcpui-accent); }\n.mcpui-code { font-family: var(--jini-mcpui-font-mono); font-size: 13px; color: var(--jini-mcpui-text-faint); }";
|
|
12
|
+
/**
|
|
13
|
+
* The Content-Security-Policy every generated surface declares in its own `<head>`.
|
|
14
|
+
*
|
|
15
|
+
* The sandbox attribute (`MCP_UI_VIEW_SANDBOX`) already denies the frame an origin, forms, popups,
|
|
16
|
+
* and top-level navigation. What it does not deny is *outbound network access*: a sandboxed frame
|
|
17
|
+
* can still `fetch()`, load an image, or open a WebSocket, which is a working exfiltration channel
|
|
18
|
+
* for whatever the surface was told — and a confirmation dialog is told, by design, a secret the
|
|
19
|
+
* model is not allowed to have. `default-src 'none'` closes it: no subresource of any kind, from
|
|
20
|
+
* any origin, including the frame's own.
|
|
21
|
+
*
|
|
22
|
+
* `'unsafe-inline'` for scripts and styles is not a weakening of that. Inline is the *only* way a
|
|
23
|
+
* `srcdoc` document can carry code or styling at all — there is no origin to serve a file from — so
|
|
24
|
+
* the alternative to allowing it is a document with neither. What matters is that the inline content
|
|
25
|
+
* is generated by this package from typed props, and that with `default-src 'none'` it has nowhere
|
|
26
|
+
* to send anything.
|
|
27
|
+
*/
|
|
28
|
+
export declare const SURFACE_CSP = "default-src 'none'; script-src 'unsafe-inline'; style-src 'unsafe-inline'; img-src data:; font-src data:; form-action 'none'; base-uri 'none'";
|
|
29
|
+
export interface SurfaceDocumentSpec {
|
|
30
|
+
/** The document `<title>`. Also what a host shows if it labels the frame. */
|
|
31
|
+
readonly title: string;
|
|
32
|
+
/** The body of `.mcpui-surface`. Already-escaped HTML — builders escape at the point they interpolate. */
|
|
33
|
+
readonly bodyHtml: string;
|
|
34
|
+
/** The surface's own script, run after the bridge. Reaches the protocol through `window.jiniMcpUi`. */
|
|
35
|
+
readonly script: string;
|
|
36
|
+
/** Identity reported to the Host in `ui/initialize`. */
|
|
37
|
+
readonly app: BridgeScriptSpec;
|
|
38
|
+
/** `<html lang>`. Defaults to `'en'`; pass the host's locale for a surface with translated text. */
|
|
39
|
+
readonly lang?: string;
|
|
40
|
+
/** Base design tokens to override — see `tokens.ts`. */
|
|
41
|
+
readonly tokens?: Partial<Record<SurfaceTokenName, string>>;
|
|
42
|
+
/** Extra CSS, appended after {@link SURFACE_BASE_CSS} so it can override it. */
|
|
43
|
+
readonly extraCss?: string;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Assembles a complete, self-contained surface document.
|
|
47
|
+
*
|
|
48
|
+
* @param spec - See {@link SurfaceDocumentSpec}.
|
|
49
|
+
* @returns The full HTML string, suitable for `createUIResource`'s `htmlString` and, on the host
|
|
50
|
+
* side, for an iframe's `srcdoc`.
|
|
51
|
+
* @complexity O(n) in the assembled length.
|
|
52
|
+
*/
|
|
53
|
+
export declare function renderSurfaceDocument(spec: SurfaceDocumentSpec): string;
|
|
54
|
+
/**
|
|
55
|
+
* Renders a surface's heading and optional description.
|
|
56
|
+
*
|
|
57
|
+
* @param spec.title - Shown as the `<h1>`. There is exactly one per surface — a frame this small
|
|
58
|
+
* has no room for a heading hierarchy, and a screen reader reaching a one-heading document announces
|
|
59
|
+
* it as the frame's purpose.
|
|
60
|
+
*/
|
|
61
|
+
export declare function renderSurfaceHeader(spec: {
|
|
62
|
+
title: string;
|
|
63
|
+
description?: string;
|
|
64
|
+
}): string;
|
|
65
|
+
/** One row of a surface's detail list. */
|
|
66
|
+
export interface SurfaceDetail {
|
|
67
|
+
readonly label: string;
|
|
68
|
+
readonly value: string;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Renders a `label: value` description list.
|
|
72
|
+
*
|
|
73
|
+
* @returns The `<dl>`, or `''` for an empty list — an empty `<dl>` is announced by screen readers
|
|
74
|
+
* as a list with no items, which is worse than no list.
|
|
75
|
+
*/
|
|
76
|
+
export declare function renderDetailList(details: readonly SurfaceDetail[]): string;
|
|
77
|
+
/** Renders the polite live region every surface reports outcomes through. Its id is fixed so surface scripts can find it. */
|
|
78
|
+
export declare function renderStatusRegion(): string;
|
|
79
|
+
/** The id {@link renderStatusRegion} emits and {@link SURFACE_SCRIPT_PRELUDE} looks up. */
|
|
80
|
+
export declare const SURFACE_STATUS_ELEMENT_ID = "mcpui-status";
|
|
81
|
+
/**
|
|
82
|
+
* Every user-visible string a surface's script writes at runtime.
|
|
83
|
+
*
|
|
84
|
+
* Surfaces are HTML strings built outside React, so `features/i18n`'s `useT` cannot reach them — a
|
|
85
|
+
* translated surface is one whose builder was handed translated text. These are the defaults for a
|
|
86
|
+
* caller that has none.
|
|
87
|
+
*/
|
|
88
|
+
export interface SurfaceStatusText {
|
|
89
|
+
/** Shown while a tool call is in flight. */
|
|
90
|
+
readonly working: string;
|
|
91
|
+
/** Shown when the call resolves. */
|
|
92
|
+
readonly done: string;
|
|
93
|
+
/** Prefixed to the Host's own error message when the call rejects. */
|
|
94
|
+
readonly failedPrefix: string;
|
|
95
|
+
/** Shown when the human dismisses a surface that has no cancel tool to call. */
|
|
96
|
+
readonly dismissed: string;
|
|
97
|
+
/** Prefixed to the comma-joined labels of unfilled required fields. */
|
|
98
|
+
readonly missingPrefix: string;
|
|
99
|
+
}
|
|
100
|
+
export declare const DEFAULT_SURFACE_STATUS_TEXT: SurfaceStatusText;
|
|
101
|
+
/**
|
|
102
|
+
* The JavaScript preamble every surface script opens with: the bridge handle, the status region,
|
|
103
|
+
* the action buttons, and the two helpers (`setStatus`, `setBusy`) that would otherwise be
|
|
104
|
+
* copy-pasted into each builder — and would then drift, so that one dialog disabled its buttons
|
|
105
|
+
* while another left them live for a second click on an in-flight destructive action.
|
|
106
|
+
*
|
|
107
|
+
* Declared with `var` and function declarations rather than `const`/arrow functions to match the
|
|
108
|
+
* rest of the emitted scripts: these run as classic scripts in whatever engine the host embeds, and
|
|
109
|
+
* the builders make no assumption about it beyond ES5.
|
|
110
|
+
*/
|
|
111
|
+
export declare const SURFACE_SCRIPT_PRELUDE: string;
|
|
112
|
+
/**
|
|
113
|
+
* Builds the DOM id for a field's control, validating the name on the way through.
|
|
114
|
+
*
|
|
115
|
+
* @throws If the name is not a valid field name. Thrown rather than sanitized, because silently
|
|
116
|
+
* rewriting a caller's field name would change the key of the params the tool receives.
|
|
117
|
+
*/
|
|
118
|
+
export declare function fieldElementId(name: string): string;
|
|
119
|
+
/**
|
|
120
|
+
* Renders a control's `<label>`, plus its optional hint.
|
|
121
|
+
*
|
|
122
|
+
* @param spec.inline - `true` for a checkbox, where the label follows the control rather than
|
|
123
|
+
* sitting above it, so the hint has to be wrapped instead of emitted as a sibling.
|
|
124
|
+
*/
|
|
125
|
+
export declare function renderFieldLabel(spec: {
|
|
126
|
+
name: string;
|
|
127
|
+
label: string;
|
|
128
|
+
required?: boolean;
|
|
129
|
+
hint?: string;
|
|
130
|
+
}): string;
|
|
131
|
+
/** The `aria-describedby` attribute pointing at a field's hint, or `''` when it has none. */
|
|
132
|
+
export declare function fieldDescribedBy(spec: {
|
|
133
|
+
name: string;
|
|
134
|
+
hint?: string;
|
|
135
|
+
}): string;
|
|
136
|
+
/** One button in a surface's action row. */
|
|
137
|
+
export interface SurfaceAction {
|
|
138
|
+
/** Written to `data-mcpui-action`; the surface script dispatches on it. */
|
|
139
|
+
readonly id: string;
|
|
140
|
+
readonly label: string;
|
|
141
|
+
/** `primary` for the affirmative action, `danger` for a destructive one, `neutral` for cancel. */
|
|
142
|
+
readonly variant?: 'primary' | 'danger' | 'neutral';
|
|
143
|
+
/**
|
|
144
|
+
* `submit` triggers native `<form>` submission on click — which every surface in this package
|
|
145
|
+
* avoids. In the sandbox these documents actually render in (`allow-scripts`, no `allow-forms`),
|
|
146
|
+
* a native form submission is blocked before the browser ever dispatches the `submit` event, so a
|
|
147
|
+
* `type="submit"` button inside a `<form>` there is inert by construction and any handler wired to
|
|
148
|
+
* `submit` is unreachable dead code — see `form.ts`'s `runSubmit`, which is called from `click`
|
|
149
|
+
* instead. Kept as an option here, not removed, for a caller embedding this HTML somewhere other
|
|
150
|
+
* than that sandbox; every current builder passes `button` (the default).
|
|
151
|
+
*/
|
|
152
|
+
readonly type?: 'button' | 'submit';
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Renders the action row.
|
|
156
|
+
*
|
|
157
|
+
* Buttons carry `data-mcpui-action`, never an `onclick` attribute: an inline handler would need a
|
|
158
|
+
* `script-src 'unsafe-inline'`-equivalent allowance for attributes specifically, and a host is free
|
|
159
|
+
* to apply a stricter CSP to the frame than this package can see.
|
|
160
|
+
*
|
|
161
|
+
* Each button also carries the `@jini-ai/agentic` `data-agent-*` markup convention
|
|
162
|
+
* ({@link AGENT_ELEMENT_ATTRIBUTE} et al.) — but this tagging is advisory, not the thing that makes
|
|
163
|
+
* a surface's actions reachable by `page.find_elements`/`page.click`. Those capabilities resolve a
|
|
164
|
+
* handle by scanning `document`/`contentDocument`, and this document renders inside a `srcdoc`
|
|
165
|
+
* iframe sandboxed to `allow-scripts` alone (`MCP_UI_VIEW_SANDBOX` — no `allow-same-origin`,
|
|
166
|
+
* deliberately), which gives it an opaque origin no ancestor document can read into. So this tagging
|
|
167
|
+
* is real for a driver that reaches INTO the frame directly — `frameLocator` in Playwright, proven
|
|
168
|
+
* end to end against exactly this markup — and inert for anything scanning the parent page. Making a
|
|
169
|
+
* surface's actions visible to `page.find_elements` needs a second, parent-DOM-side echo of this
|
|
170
|
+
* same action list; see `McpUiSurfaceCard` in `@jini-ai/chat` for that half.
|
|
171
|
+
*/
|
|
172
|
+
export declare function renderActions(actions: readonly SurfaceAction[]): string;
|
|
173
|
+
//# sourceMappingURL=document.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../../../src/features/mcp-ui/surfaces/document.ts"],"names":[],"mappings":"AAeA,OAAO,EAA6C,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/F,OAAO,EAAoB,KAAK,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEtE;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB,g+KAgHmF,CAAC;AAEjH;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,WAAW,kJACyH,CAAC;AAElJ,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,0GAA0G;IAC1G,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,uGAAuG;IACvG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;IAC/B,oGAAoG;IACpG,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CA0BvE;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAIzF;AAED,0CAA0C;AAC1C,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,GAAG,MAAM,CAM1E;AAED,6HAA6H;AAC7H,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,2FAA2F;AAC3F,eAAO,MAAM,yBAAyB,iBAAiB,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,oCAAoC;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sEAAsE;IACtE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,gFAAgF;IAChF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,uEAAuE;IACvE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,eAAO,MAAM,2BAA2B,EAAE,iBAMzC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,QAYjC,CAAC;AAUH;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKnD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,CAOT;AAED,6FAA6F;AAC7F,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAG9E;AAED,4CAA4C;AAC5C,MAAM,WAAW,aAAa;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,kGAAkG;IAClG,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IACpD;;;;;;;;OAQG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,GAAG,MAAM,CAkBvE"}
|