@elizaos/ui 2.0.3-beta.2 → 2.0.3-beta.3
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/App.d.ts +6 -1
- package/App.d.ts.map +1 -1
- package/App.js +251 -49
- package/agent-surface/AgentSurfaceContext.d.ts +1 -1
- package/agent-surface/AgentSurfaceContext.hooks.d.ts +2 -2
- package/agent-surface/__e2e__/real-view-fixture.d.ts +21 -0
- package/agent-surface/__e2e__/real-view-fixture.d.ts.map +1 -0
- package/agent-surface/__e2e__/real-view-fixture.js +54 -0
- package/agent-surface/capabilities.d.ts +2 -2
- package/agent-surface/components.d.ts +1 -1
- package/agent-surface/element-reporter.hooks.d.ts +1 -1
- package/agent-surface/index.d.ts +10 -10
- package/agent-surface/registry.d.ts +1 -1
- package/agent-surface/useAgentElement.d.ts +1 -1
- package/api/android-native-agent-transport.d.ts +1 -1
- package/api/client-agent.d.ts +16 -2
- package/api/client-agent.d.ts.map +1 -1
- package/api/client-agent.js +13 -3
- package/api/client-approvals.d.ts +16 -0
- package/api/client-approvals.d.ts.map +1 -0
- package/api/client-approvals.js +4 -0
- package/api/client-automations.d.ts +1 -1
- package/api/client-background.d.ts +15 -0
- package/api/client-background.d.ts.map +1 -0
- package/api/client-background.js +10 -0
- package/api/client-base.d.ts +13 -3
- package/api/client-base.d.ts.map +1 -1
- package/api/client-base.js +99 -6
- package/api/client-browser-workspace.d.ts +1 -1
- package/api/client-chat.d.ts +8 -3
- package/api/client-chat.d.ts.map +1 -1
- package/api/client-chat.js +13 -4
- package/api/client-cloud.d.ts +3 -3
- package/api/client-cloud.d.ts.map +1 -1
- package/api/client-cloud.js +19 -13
- package/api/client-files.d.ts +36 -0
- package/api/client-files.d.ts.map +1 -0
- package/api/client-files.js +19 -0
- package/api/client-local-inference.d.ts +52 -6
- package/api/client-local-inference.d.ts.map +1 -1
- package/api/client-local-inference.js +78 -5
- package/api/client-skills.d.ts +3 -3
- package/api/client-transcripts.d.ts +8 -0
- package/api/client-transcripts.d.ts.map +1 -1
- package/api/client-transcripts.js +6 -0
- package/api/client-types-chat.d.ts +53 -2
- package/api/client-types-chat.d.ts.map +1 -1
- package/api/client-types-cloud.d.ts +3 -151
- package/api/client-types-cloud.d.ts.map +1 -1
- package/api/client-types-config.d.ts +13 -6
- package/api/client-types-config.d.ts.map +1 -1
- package/api/client-types-core.d.ts +1 -1
- package/api/client-types-feed.d.ts +0 -14
- package/api/client-types-feed.d.ts.map +1 -1
- package/api/client-types.d.ts +8 -8
- package/api/client-wallet.d.ts +3 -3
- package/api/client-workflow.d.ts +1 -1
- package/api/client.d.ts +31 -27
- package/api/client.d.ts.map +1 -1
- package/api/client.js +3 -0
- package/api/desktop-http-transport.d.ts +1 -1
- package/api/desktop-http-transport.d.ts.map +1 -1
- package/api/desktop-http-transport.js +29 -1
- package/api/i18n-locale-client.d.ts +1 -1
- package/api/index.d.ts +2 -2
- package/api/ios-local-agent-kernel.d.ts +1 -1
- package/api/ios-local-agent-kernel.d.ts.map +1 -1
- package/api/ios-local-agent-kernel.js +97 -22
- package/api/ios-local-agent-transport.d.ts +1 -1
- package/api/ios-local-agent-transport.d.ts.map +1 -1
- package/api/ios-local-agent-transport.js +1 -7
- package/api/ittp-agent-transport.d.ts +1 -1
- package/api/native-cloud-http-transport.d.ts +1 -1
- package/api/native-cloud-http-transport.d.ts.map +1 -1
- package/api/native-cloud-http-transport.js +7 -0
- package/app-navigate-view.d.ts +1 -1
- package/app-navigate-view.d.ts.map +1 -1
- package/app-navigate-view.js +1 -4
- package/app-shell-components.d.ts +26 -27
- package/app-shell-components.d.ts.map +1 -1
- package/app-shell-components.js +3 -1
- package/app-shell-registry.d.ts +12 -1
- package/app-shell-registry.d.ts.map +1 -1
- package/backgrounds/AppBackground.d.ts +16 -0
- package/backgrounds/AppBackground.d.ts.map +1 -0
- package/backgrounds/AppBackground.js +30 -0
- package/backgrounds/ImageBackground.d.ts +12 -0
- package/backgrounds/ImageBackground.d.ts.map +1 -0
- package/backgrounds/ImageBackground.js +15 -0
- package/backgrounds/ShaderBackground.d.ts +12 -0
- package/backgrounds/ShaderBackground.d.ts.map +1 -0
- package/backgrounds/ShaderBackground.js +39 -0
- package/backgrounds/index.d.ts +7 -3
- package/backgrounds/index.d.ts.map +1 -1
- package/backgrounds/index.js +4 -0
- package/backgrounds/useBackgroundApplyChannel.d.ts +21 -0
- package/backgrounds/useBackgroundApplyChannel.d.ts.map +1 -0
- package/backgrounds/useBackgroundApplyChannel.js +53 -0
- package/bridge/capacitor-bridge.d.ts +1 -1
- package/bridge/index.d.ts +6 -6
- package/bridge/native-notifications.d.ts.map +1 -1
- package/bridge/native-notifications.js +6 -1
- package/bridge/native-plugins.d.ts +20 -1
- package/bridge/native-plugins.d.ts.map +1 -1
- package/bridge/plugin-bridge.d.ts +1 -1
- package/browser.d.ts +131 -131
- package/cache-telemetry.d.ts +2 -0
- package/cache-telemetry.d.ts.map +1 -1
- package/character/character-draft-helpers.d.ts +1 -1
- package/character-catalog.d.ts +1 -1
- package/chat/coding-agent-session-state.d.ts +1 -1
- package/chat/index.d.ts +24 -4
- package/chat/index.d.ts.map +1 -1
- package/chat/index.js +59 -6
- package/chat/slash-menu.d.ts +37 -2
- package/chat/slash-menu.d.ts.map +1 -1
- package/chat/slash-menu.js +220 -0
- package/chat/useSlashCommandController.d.ts +35 -2
- package/chat/useSlashCommandController.d.ts.map +1 -1
- package/chat/useSlashCommandController.js +64 -8
- package/cloud/account-security/AccountRoute.js +1 -1
- package/cloud/account-security/PermissionsRoute.js +1 -1
- package/cloud/account-security/SecurityRoute.js +1 -1
- package/cloud/account-security/components/account-details.d.ts +1 -1
- package/cloud/account-security/components/account-page-client.d.ts +1 -1
- package/cloud/account-security/components/organization-info.d.ts +1 -1
- package/cloud/account-security/components/profile-form.d.ts +1 -1
- package/cloud/account-security/components/profile-form.js +2 -2
- package/cloud/account-security/data/use-session-auth.d.ts +1 -1
- package/cloud/account-security/index.d.ts +8 -8
- package/cloud/admin/ModerationPage.js +1 -1
- package/cloud/admin/RedemptionsPage.js +2 -2
- package/cloud/admin/RpcStatusPage.js +1 -1
- package/cloud/admin/index.d.ts +6 -6
- package/cloud/analytics/_components/filters.js +1 -1
- package/cloud/analytics/_components/model-breakdown.js +2 -2
- package/cloud/analytics/_components/projections-chart.js +2 -2
- package/cloud/analytics/_components/provider-breakdown.js +2 -2
- package/cloud/analytics/index.d.ts +3 -3
- package/cloud/api-explorer/ApiExplorerPage.js +2 -2
- package/cloud/api-explorer/api-tester.d.ts.map +1 -1
- package/cloud/api-explorer/api-tester.js +15 -8
- package/cloud/api-explorer/auth-manager.d.ts +1 -1
- package/cloud/api-explorer/auth-manager.js +1 -1
- package/cloud/api-explorer/index.d.ts +5 -5
- package/cloud/api-explorer/use-session-auth.d.ts +1 -1
- package/cloud/api-keys/ApiKeysRoute.js +1 -1
- package/cloud/api-keys/ApiKeysView.d.ts +1 -1
- package/cloud/api-keys/ApiKeysView.js +5 -5
- package/cloud/api-keys/index.d.ts +6 -6
- package/cloud/applications/ApplicationDetailPage.js +1 -1
- package/cloud/applications/ApplicationsPage.js +1 -1
- package/cloud/applications/components/app-analytics.d.ts.map +1 -1
- package/cloud/applications/components/app-analytics.js +12 -20
- package/cloud/applications/components/app-details-tabs.d.ts +1 -1
- package/cloud/applications/components/app-details-tabs.js +1 -1
- package/cloud/applications/components/app-domains.d.ts.map +1 -1
- package/cloud/applications/components/app-domains.js +5 -2
- package/cloud/applications/components/app-overview.d.ts +1 -1
- package/cloud/applications/components/app-overview.d.ts.map +1 -1
- package/cloud/applications/components/app-overview.js +120 -3
- package/cloud/applications/components/app-promote.d.ts +1 -1
- package/cloud/applications/components/app-promote.d.ts.map +1 -1
- package/cloud/applications/components/app-promote.js +13 -4
- package/cloud/applications/components/app-settings.d.ts +1 -1
- package/cloud/applications/components/app-settings.js +5 -5
- package/cloud/applications/components/apps-table.d.ts +1 -1
- package/cloud/applications/components/create-app-dialog.js +1 -1
- package/cloud/applications/components/withdraw-dialog.js +1 -1
- package/cloud/applications/index.d.ts +5 -5
- package/cloud/applications/lib/apps.d.ts +25 -0
- package/cloud/applications/lib/apps.d.ts.map +1 -1
- package/cloud/applications/lib/apps.js +17 -1
- package/cloud/approvals/ApprovalsRoute.js +1 -1
- package/cloud/approvals/index.d.ts +3 -3
- package/cloud/approvals/lib/approvals.d.ts.map +1 -1
- package/cloud/approvals/lib/approvals.js +1 -1
- package/cloud/billing/components/billing-tab.d.ts +1 -1
- package/cloud/billing/components/direct-crypto-credit-card.d.ts +1 -1
- package/cloud/billing/components/direct-crypto-credit-card.js +1 -1
- package/cloud/billing/components/invoice-detail-client.d.ts +1 -1
- package/cloud/billing/components/payment-waiting-overlay.js +1 -1
- package/cloud/billing/data/billing-data.d.ts +2 -2
- package/cloud/billing/index.d.ts +9 -9
- package/cloud/billing/use-session-auth.d.ts +1 -1
- package/cloud/connectors/index.d.ts +10 -10
- package/cloud/documents/DocumentsRoute.js +2 -2
- package/cloud/documents/index.d.ts +7 -7
- package/cloud/documents/lib/agents.d.ts.map +1 -1
- package/cloud/documents/lib/agents.js +1 -1
- package/cloud/handoff/cloud-handoff-supervisor.d.ts +1 -1
- package/cloud/handoff/run-cloud-agent-handoff.d.ts +18 -0
- package/cloud/handoff/run-cloud-agent-handoff.d.ts.map +1 -0
- package/cloud/handoff/run-cloud-agent-handoff.js +51 -0
- package/cloud/index.d.ts +4 -4
- package/cloud/instances/AgentChatPage.js +2 -2
- package/cloud/instances/AgentDetailPage.js +1 -1
- package/cloud/instances/AgentsPage.js +1 -1
- package/cloud/instances/MyAgentsPage.js +1 -1
- package/cloud/instances/components/agent-actions.js +1 -1
- package/cloud/instances/components/agent-card.d.ts +3 -1
- package/cloud/instances/components/agent-card.d.ts.map +1 -1
- package/cloud/instances/components/agent-card.js +10 -6
- package/cloud/instances/components/character-filters.d.ts +1 -1
- package/cloud/instances/components/character-filters.js +1 -1
- package/cloud/instances/components/character-library-grid.d.ts +1 -1
- package/cloud/instances/components/create-eliza-agent-dialog.js +3 -3
- package/cloud/instances/components/docker-logs-viewer.d.ts.map +1 -1
- package/cloud/instances/components/docker-logs-viewer.js +13 -12
- package/cloud/instances/components/eliza-agent-backups-panel.js +2 -2
- package/cloud/instances/components/eliza-agents-table.js +1 -1
- package/cloud/instances/components/eliza-wallet-section.d.ts.map +1 -1
- package/cloud/instances/components/eliza-wallet-section.js +3 -5
- package/cloud/instances/components/my-agents.d.ts.map +1 -1
- package/cloud/instances/components/my-agents.js +5 -5
- package/cloud/instances/index.d.ts +6 -6
- package/cloud/instances/lib/i18n.d.ts +1 -1
- package/cloud/instances/lib/use-job-poller.d.ts.map +1 -1
- package/cloud/instances/lib/use-job-poller.js +4 -0
- package/cloud/instances/lib/use-sandbox-status-poll.d.ts.map +1 -1
- package/cloud/instances/lib/use-sandbox-status-poll.js +6 -0
- package/cloud/instances/lib/use-session-auth.d.ts +1 -1
- package/cloud/join/index.d.ts +5 -5
- package/cloud/lib/auth-query.d.ts +19 -0
- package/cloud/lib/auth-query.d.ts.map +1 -0
- package/cloud/{documents/lib → lib}/auth-query.js +7 -5
- package/cloud/lib/format-usd.d.ts +9 -0
- package/cloud/lib/format-usd.d.ts.map +1 -0
- package/cloud/lib/format-usd.js +16 -0
- package/cloud/lib/use-copy-feedback.d.ts +5 -0
- package/cloud/lib/use-copy-feedback.d.ts.map +1 -0
- package/cloud/{instances/lib → lib}/use-copy-feedback.js +2 -0
- package/cloud/lib/use-document-title.d.ts +2 -0
- package/cloud/lib/use-document-title.d.ts.map +1 -0
- package/cloud/{admin → lib}/use-document-title.js +4 -5
- package/cloud/lib/use-session-auth.d.ts +31 -0
- package/cloud/lib/use-session-auth.d.ts.map +1 -0
- package/cloud/{applications/lib → lib}/use-session-auth.js +14 -11
- package/cloud/mcps/McpDetailDrawer.d.ts +1 -1
- package/cloud/mcps/McpEditorDialog.d.ts +1 -1
- package/cloud/mcps/McpsView.d.ts.map +1 -1
- package/cloud/mcps/McpsView.js +20 -13
- package/cloud/mcps/index.d.ts +10 -10
- package/cloud/mcps/lib/mcp-mutations.d.ts +1 -1
- package/cloud/mcps/lib/use-mcps.d.ts +1 -1
- package/cloud/monetization/affiliates/AffiliatesRoute.js +1 -1
- package/cloud/monetization/affiliates/use-dashboard-referral-me.d.ts +1 -1
- package/cloud/monetization/earnings/EarningsPageClient.js +1 -1
- package/cloud/monetization/earnings/EarningsRoute.js +1 -1
- package/cloud/monetization/index.d.ts +8 -8
- package/cloud/organization/data/use-organization.d.ts +1 -1
- package/cloud/organization/index.d.ts +11 -11
- package/cloud/organization/members-list.d.ts +1 -1
- package/cloud/organization/members-tab.d.ts +1 -1
- package/cloud/organization/organization-general-tab.d.ts +1 -1
- package/cloud/organization/organization-tab.d.ts +1 -1
- package/cloud/organization/pending-invites-list.d.ts +1 -1
- package/cloud/public-pages/index.d.ts +21 -21
- package/cloud/public-pages/lib/use-session-auth.d.ts +1 -1
- package/cloud/public-pages/pages/auth/cli-login-page.d.ts.map +1 -1
- package/cloud/public-pages/pages/auth/cli-login-page.js +46 -9
- package/cloud/public-pages/pages/bsc-page.js +5 -5
- package/cloud/public-pages/pages/login/steward-login-section.js +2 -2
- package/cloud/public-pages/pages/payment/app-charge-page.js +1 -1
- package/cloud/public-pages/pages/payment/payment-request-page.js +1 -1
- package/cloud/register-all.d.ts +5 -5
- package/cloud/settings/index.d.ts +4 -4
- package/cloud/settings/sections.js +1 -1
- package/cloud/shell/CloudI18nProvider.d.ts +1 -1
- package/cloud/shell/StewardProvider.d.ts +1 -31
- package/cloud/shell/StewardProvider.d.ts.map +1 -1
- package/cloud/shell/StewardProvider.js +3 -122
- package/cloud/shell/StewardProviderRuntime.d.ts.map +1 -1
- package/cloud/shell/StewardProviderRuntime.js +17 -7
- package/cloud/shell/StewardProviderShared.d.ts +27 -0
- package/cloud/shell/StewardProviderShared.d.ts.map +1 -0
- package/cloud/shell/StewardProviderShared.js +112 -0
- package/cloud-ui/components/ai-elements/index.d.ts +3 -3
- package/cloud-ui/components/ai-elements/memoized-chat-message.d.ts +1 -1
- package/cloud-ui/components/ai-elements/memoized-chat-message.d.ts.map +1 -1
- package/cloud-ui/components/ai-elements/memoized-chat-message.js +162 -139
- package/cloud-ui/components/analytics/cost-alerts.d.ts +1 -1
- package/cloud-ui/components/analytics/cost-insights-card.d.ts +1 -1
- package/cloud-ui/components/analytics/index.d.ts +3 -3
- package/cloud-ui/components/auth/authorize-content.js +1 -1
- package/cloud-ui/components/brand/brand-button.d.ts +1 -1
- package/cloud-ui/components/brand/brand-button.js +1 -1
- package/cloud-ui/components/brand/brand-tabs-responsive.d.ts.map +1 -1
- package/cloud-ui/components/brand/brand-tabs-responsive.js +1 -1
- package/cloud-ui/components/brand/brand-tabs.d.ts.map +1 -1
- package/cloud-ui/components/brand/brand-tabs.js +2 -2
- package/cloud-ui/components/brand/index.d.ts +21 -21
- package/cloud-ui/components/brand/lock-on-button.d.ts +2 -2
- package/cloud-ui/components/brand/lock-on-button.variants.d.ts +1 -1
- package/cloud-ui/components/brand/lock-on-button.variants.js +1 -1
- package/cloud-ui/components/code/code-display.d.ts +1 -1
- package/cloud-ui/components/code/code-display.d.ts.map +1 -1
- package/cloud-ui/components/code/code-display.js +11 -9
- package/cloud-ui/components/code/index.d.ts +3 -3
- package/cloud-ui/components/data-list/apps-list-view.js +1 -1
- package/cloud-ui/components/data-list/index.d.ts +8 -8
- package/cloud-ui/components/data-list/list-action-menu.js +1 -1
- package/cloud-ui/components/docs/api-parameter-select.js +1 -1
- package/cloud-ui/components/docs/api-route-explorer-client.d.ts +1 -1
- package/cloud-ui/components/docs/api-route-explorer-client.js +1 -1
- package/cloud-ui/components/docs/docs-layout.d.ts +1 -1
- package/cloud-ui/components/docs/index.d.ts +11 -11
- package/cloud-ui/components/drawer.js +1 -1
- package/cloud-ui/components/image-gen/index.d.ts +4 -4
- package/cloud-ui/components/image-gen/prompt-input.js +1 -1
- package/cloud-ui/components/layout/dashboard-route-page.d.ts +1 -1
- package/cloud-ui/components/layout/dashboard-sidebar-item.d.ts +1 -1
- package/cloud-ui/components/layout/dashboard-sidebar-section.d.ts +1 -1
- package/cloud-ui/components/layout/dashboard-sidebar.d.ts +1 -1
- package/cloud-ui/components/layout/dashboard-sidebar.js +1 -1
- package/cloud-ui/components/layout/index.d.ts +11 -11
- package/cloud-ui/components/log-viewer.d.ts +1 -1
- package/cloud-ui/components/log-viewer.d.ts.map +1 -1
- package/cloud-ui/components/log-viewer.js +5 -2
- package/cloud-ui/components/monetization/animated-counter.d.ts.map +1 -1
- package/cloud-ui/components/monetization/animated-counter.js +4 -2
- package/cloud-ui/components/monetization/index.d.ts +4 -4
- package/cloud-ui/components/primitives.d.ts +57 -57
- package/cloud-ui/components/product-switcher.js +1 -1
- package/cloud-ui/components/resizable.d.ts.map +1 -1
- package/cloud-ui/components/resizable.js +23 -3
- package/cloud-ui/components/share/index.d.ts +1 -1
- package/cloud-ui/components/theme/index.d.ts +3 -3
- package/cloud-ui/components/theme/theme-provider.d.ts +2 -2
- package/cloud-ui/components/timeline.d.ts.map +1 -1
- package/cloud-ui/components/timeline.js +6 -6
- package/cloud-ui/components/voice/index.d.ts +8 -8
- package/cloud-ui/index.d.ts +30 -30
- package/cloud-ui/lib/utils.d.ts +1 -1
- package/companion/desktop-bar/CompanionBar.d.ts +1 -1
- package/companion/desktop-bar/CompanionBar.d.ts.map +1 -1
- package/companion/desktop-bar/CompanionBar.js +11 -8
- package/companion/desktop-bar/index.d.ts +6 -6
- package/companion/desktop-bar/platform/electrobun-tray.d.ts +19 -0
- package/companion/desktop-bar/platform/electrobun-tray.d.ts.map +1 -1
- package/companion/desktop-bar/platform/index.d.ts +2 -2
- package/companion/desktop-bar/platform/index.d.ts.map +1 -1
- package/companion/desktop-bar/platform/web-fallback.d.ts +1 -1
- package/companion/desktop-bar/useKeyboardShortcuts.d.ts +1 -1
- package/components/accounts/AccountCard.d.ts +1 -1
- package/components/accounts/AccountCard.js +2 -2
- package/components/accounts/AccountList.js +2 -2
- package/components/accounts/AddAccountDialog.d.ts.map +1 -1
- package/components/accounts/AddAccountDialog.js +11 -3
- package/components/accounts/RotationStrategyPicker.d.ts +1 -1
- package/components/accounts/RotationStrategyPicker.js +2 -2
- package/components/apps/AppWindowRenderer.d.ts.map +1 -1
- package/components/apps/AppWindowRenderer.helpers.d.ts +1 -1
- package/components/apps/AppWindowRenderer.js +23 -10
- package/components/apps/AppsCatalogGrid.d.ts +1 -1
- package/components/apps/AppsCatalogGrid.d.ts.map +1 -1
- package/components/apps/AppsCatalogGrid.js +16 -23
- package/components/apps/AppsSidebar.d.ts +1 -1
- package/components/apps/AppsSidebar.d.ts.map +1 -1
- package/components/apps/AppsSidebar.js +22 -11
- package/components/apps/GameView.d.ts.map +1 -1
- package/components/apps/GameView.helpers.d.ts +1 -1
- package/components/apps/GameView.js +55 -20
- package/components/apps/GameViewOverlay.d.ts.map +1 -1
- package/components/apps/GameViewOverlay.js +38 -4
- package/components/apps/RunningAppsRow.d.ts +1 -1
- package/components/apps/RunningAppsRow.d.ts.map +1 -1
- package/components/apps/RunningAppsRow.js +12 -10
- package/components/apps/app-identity.helpers.d.ts +1 -1
- package/components/apps/app-identity.js +1 -1
- package/components/apps/catalog-loader.d.ts +1 -1
- package/components/apps/extensions/registry.d.ts +2 -2
- package/components/apps/extensions/surface.d.ts +2 -2
- package/components/apps/extensions/surface.d.ts.map +1 -1
- package/components/apps/extensions/surface.helpers.d.ts +2 -2
- package/components/apps/extensions/surface.js +9 -9
- package/components/apps/extensions/types.d.ts +1 -1
- package/components/apps/helpers.d.ts +8 -5
- package/components/apps/helpers.d.ts.map +1 -1
- package/components/apps/helpers.js +5 -10
- package/components/apps/home-grid-apps.d.ts +2 -2
- package/components/apps/internal-tool-apps.d.ts +2 -2
- package/components/apps/internal-tool-apps.d.ts.map +1 -1
- package/components/apps/internal-tool-apps.js +18 -8
- package/components/apps/launch-history.d.ts +1 -1
- package/components/apps/load-apps-catalog.d.ts +1 -1
- package/components/apps/overlay-app-registry.d.ts +5 -2
- package/components/apps/overlay-app-registry.d.ts.map +1 -1
- package/components/apps/overlay-app-registry.js +3 -6
- package/components/apps/run-attention.d.ts +1 -1
- package/components/apps/surfaces/registry.d.ts +1 -1
- package/components/apps/useRegistryCatalog.d.ts +1 -1
- package/components/apps/viewer-auth.d.ts +1 -1
- package/components/auth/LoginView.d.ts +1 -1
- package/components/auth/LoginView.js +1 -1
- package/components/character/CharacterEditor.d.ts +4 -1
- package/components/character/CharacterEditor.d.ts.map +1 -1
- package/components/character/CharacterEditor.js +54 -14
- package/components/character/CharacterEditorPanels.d.ts +1 -1
- package/components/character/CharacterEditorPanels.d.ts.map +1 -1
- package/components/character/CharacterEditorPanels.js +10 -12
- package/components/character/CharacterExperienceWorkspace.d.ts +1 -1
- package/components/character/CharacterExperienceWorkspace.d.ts.map +1 -1
- package/components/character/CharacterExperienceWorkspace.js +10 -10
- package/components/character/CharacterHubView.d.ts +4 -2
- package/components/character/CharacterHubView.d.ts.map +1 -1
- package/components/character/CharacterHubView.js +57 -201
- package/components/character/CharacterOverviewSection.d.ts +1 -1
- package/components/character/CharacterOverviewSection.js +1 -1
- package/components/character/CharacterPersonalityTimeline.d.ts +1 -1
- package/components/character/CharacterRoster.d.ts.map +1 -1
- package/components/character/CharacterRoster.helpers.d.ts +1 -1
- package/components/character/CharacterRoster.js +2 -10
- package/components/character/MusicLibraryCharacterWidget.d.ts +1 -1
- package/components/character/character-editor-helpers.d.ts +2 -2
- package/components/character/character-hub-helpers.d.ts +2 -2
- package/components/character/character-voice-config.d.ts +2 -2
- package/components/character/useCharacterHubData.d.ts +41 -0
- package/components/character/useCharacterHubData.d.ts.map +1 -0
- package/components/character/useCharacterHubData.js +112 -0
- package/components/chat/AccountRequiredCard.d.ts +1 -1
- package/components/chat/AgentActivityBox.d.ts +1 -1
- package/components/chat/AgentActivityBox.d.ts.map +1 -1
- package/components/chat/AgentActivityBox.js +28 -17
- package/components/chat/AppsSection.d.ts.map +1 -1
- package/components/chat/AppsSection.js +13 -14
- package/components/chat/ConnectorAccountPicker.d.ts +1 -1
- package/components/chat/InlineWidgetText.d.ts +6 -0
- package/components/chat/InlineWidgetText.d.ts.map +1 -0
- package/components/chat/InlineWidgetText.js +99 -0
- package/components/chat/MessageAttachments.d.ts +22 -3
- package/components/chat/MessageAttachments.d.ts.map +1 -1
- package/components/chat/MessageAttachments.js +381 -14
- package/components/chat/MessageContent.d.ts +17 -2
- package/components/chat/MessageContent.d.ts.map +1 -1
- package/components/chat/MessageContent.js +163 -467
- package/components/chat/SaveCommandModal.js +2 -2
- package/components/chat/TasksEventsPanel.d.ts +1 -1
- package/components/chat/TasksEventsPanel.js +2 -2
- package/components/chat/TranscriptViewerOverlay.d.ts +32 -0
- package/components/chat/TranscriptViewerOverlay.d.ts.map +1 -0
- package/components/chat/TranscriptViewerOverlay.js +329 -0
- package/components/chat/WidgetVisibilityPanel.d.ts +3 -3
- package/components/chat/WidgetVisibilityPanel.d.ts.map +1 -1
- package/components/chat/WidgetVisibilityPanel.helpers.d.ts +1 -1
- package/components/chat/connector-send-as.d.ts +1 -1
- package/components/chat/message-choice-parser.d.ts +1 -1
- package/components/chat/message-choice-parser.d.ts.map +1 -1
- package/components/chat/message-choice-parser.js +1 -1
- package/components/chat/message-parser-helpers.d.ts +139 -0
- package/components/chat/message-parser-helpers.d.ts.map +1 -0
- package/components/chat/message-parser-helpers.js +490 -0
- package/components/chat/widgets/ChoiceWidget.js +1 -1
- package/components/chat/widgets/agent-orchestrator-accounts-view.d.ts +3 -3
- package/components/chat/widgets/agent-orchestrator.d.ts +1 -1
- package/components/chat/widgets/agent-orchestrator.d.ts.map +1 -1
- package/components/chat/widgets/agent-orchestrator.js +60 -39
- package/components/chat/widgets/browser-launch-widget.d.ts +19 -0
- package/components/chat/widgets/browser-launch-widget.d.ts.map +1 -0
- package/components/chat/widgets/browser-launch-widget.js +38 -0
- package/components/chat/widgets/browser-status.d.ts +1 -1
- package/components/chat/widgets/browser-status.d.ts.map +1 -1
- package/components/chat/widgets/browser-status.helpers.d.ts +1 -1
- package/components/chat/widgets/browser-status.js +17 -27
- package/components/chat/widgets/calendar-upcoming.d.ts +17 -0
- package/components/chat/widgets/calendar-upcoming.d.ts.map +1 -0
- package/components/chat/widgets/calendar-upcoming.js +149 -0
- package/components/chat/widgets/credential-request-widget.d.ts +40 -0
- package/components/chat/widgets/credential-request-widget.d.ts.map +1 -0
- package/components/chat/widgets/credential-request-widget.js +52 -0
- package/components/chat/widgets/finances-alerts.d.ts +17 -0
- package/components/chat/widgets/finances-alerts.d.ts.map +1 -0
- package/components/chat/widgets/finances-alerts.js +214 -0
- package/components/chat/widgets/followups.d.ts +1 -1
- package/components/chat/widgets/form-request.d.ts +1 -1
- package/components/chat/widgets/goals-attention.d.ts +17 -0
- package/components/chat/widgets/goals-attention.d.ts.map +1 -0
- package/components/chat/widgets/goals-attention.js +155 -0
- package/components/chat/widgets/health-sleep.d.ts +18 -0
- package/components/chat/widgets/health-sleep.d.ts.map +1 -0
- package/components/chat/widgets/health-sleep.js +159 -0
- package/components/chat/widgets/home-widget-card.d.ts +47 -0
- package/components/chat/widgets/home-widget-card.d.ts.map +1 -0
- package/components/chat/widgets/home-widget-card.js +64 -0
- package/components/chat/widgets/inbox-unread.d.ts +10 -0
- package/components/chat/widgets/inbox-unread.d.ts.map +1 -0
- package/components/chat/widgets/inbox-unread.js +119 -0
- package/components/chat/widgets/inline-registry.d.ts +1 -1
- package/components/chat/widgets/messages.d.ts +8 -0
- package/components/chat/widgets/messages.d.ts.map +1 -0
- package/components/chat/widgets/messages.js +38 -0
- package/components/chat/widgets/music-player.d.ts +1 -1
- package/components/chat/widgets/music-player.helpers.d.ts +1 -1
- package/components/chat/widgets/needs-attention.d.ts +22 -0
- package/components/chat/widgets/needs-attention.d.ts.map +1 -0
- package/components/chat/widgets/needs-attention.js +109 -0
- package/components/chat/widgets/notifications.d.ts +9 -0
- package/components/chat/widgets/notifications.d.ts.map +1 -0
- package/components/chat/widgets/notifications.js +42 -0
- package/components/chat/widgets/orchestrator-grilling-card.d.ts +24 -0
- package/components/chat/widgets/orchestrator-grilling-card.d.ts.map +1 -0
- package/components/chat/widgets/orchestrator-grilling-card.js +57 -0
- package/components/chat/widgets/relationships-attention.d.ts +18 -0
- package/components/chat/widgets/relationships-attention.d.ts.map +1 -0
- package/components/chat/widgets/relationships-attention.js +135 -0
- package/components/chat/widgets/shared.js +2 -2
- package/components/chat/widgets/task-widget.js +1 -1
- package/components/chat/widgets/todo.d.ts +1 -1
- package/components/chat/widgets/todo.d.ts.map +1 -1
- package/components/chat/widgets/todo.js +39 -10
- package/components/chat/widgets/topic-chips-bar.d.ts +23 -0
- package/components/chat/widgets/topic-chips-bar.d.ts.map +1 -0
- package/components/chat/widgets/topic-chips-bar.js +22 -0
- package/components/chat/widgets/topic-grouped-transcript.d.ts +20 -0
- package/components/chat/widgets/topic-grouped-transcript.d.ts.map +1 -0
- package/components/chat/widgets/topic-grouped-transcript.js +45 -0
- package/components/chat/widgets/types.d.ts +5 -2
- package/components/chat/widgets/types.d.ts.map +1 -1
- package/components/chat/widgets/use-inline-widget-context.d.ts +18 -0
- package/components/chat/widgets/use-inline-widget-context.d.ts.map +1 -0
- package/components/chat/widgets/use-inline-widget-context.js +46 -0
- package/components/cloud/CloudSourceControls.js +2 -2
- package/components/cloud/CloudStatusBadge.js +2 -2
- package/components/cloud/FlaminaGuide.d.ts +1 -1
- package/components/cloud/FlaminaGuide.d.ts.map +1 -1
- package/components/cloud/FlaminaGuide.js +10 -5
- package/components/companion/injected.d.ts +1 -1
- package/components/companion/injected.hooks.d.ts +1 -1
- package/components/composites/chat/ChatVoiceStatusBar.d.ts +2 -2
- package/components/composites/chat/ChatVoiceStatusBar.js +1 -1
- package/components/composites/chat/ContinuousChatToggle.d.ts +1 -1
- package/components/composites/chat/ContinuousChatToggle.js +1 -1
- package/components/composites/chat/chat-attachment-strip.d.ts +1 -1
- package/components/composites/chat/chat-attachment-strip.js +1 -1
- package/components/composites/chat/chat-composer-shell.d.ts +1 -1
- package/components/composites/chat/chat-composer.d.ts +10 -4
- package/components/composites/chat/chat-composer.d.ts.map +1 -1
- package/components/composites/chat/chat-composer.js +14 -14
- package/components/composites/chat/chat-conversation-item.d.ts +2 -2
- package/components/composites/chat/chat-conversation-item.d.ts.map +1 -1
- package/components/composites/chat/chat-conversation-item.js +8 -8
- package/components/composites/chat/chat-empty-state.d.ts +1 -1
- package/components/composites/chat/chat-message-actions.d.ts +1 -1
- package/components/composites/chat/chat-message.d.ts +10 -2
- package/components/composites/chat/chat-message.d.ts.map +1 -1
- package/components/composites/chat/chat-message.js +4 -2
- package/components/composites/chat/chat-source.d.ts +2 -2
- package/components/composites/chat/chat-source.helpers.d.ts +1 -1
- package/components/composites/chat/chat-thread-layout.d.ts +1 -1
- package/components/composites/chat/chat-thread-layout.d.ts.map +1 -1
- package/components/composites/chat/chat-thread-layout.js +2 -2
- package/components/composites/chat/chat-transcript.d.ts +6 -2
- package/components/composites/chat/chat-transcript.d.ts.map +1 -1
- package/components/composites/chat/chat-transcript.js +18 -3
- package/components/composites/chat/chat-types.d.ts +2 -0
- package/components/composites/chat/chat-types.d.ts.map +1 -1
- package/components/composites/chat/chat-typing-indicator.d.ts +1 -1
- package/components/composites/chat/index.d.ts +16 -16
- package/components/composites/chat/permission-card.d.ts +1 -1
- package/components/composites/chat/permission-card.render.d.ts +2 -2
- package/components/composites/code/DiffReviewPanel.d.ts +1 -1
- package/components/composites/code/index.d.ts +1 -1
- package/components/composites/form-field/index.d.ts +1 -1
- package/components/composites/index.d.ts +29 -29
- package/components/composites/page-panel/index.d.ts +19 -19
- package/components/composites/page-panel/page-panel-collapsible-section.d.ts +1 -1
- package/components/composites/page-panel/page-panel-collapsible-section.d.ts.map +1 -1
- package/components/composites/page-panel/page-panel-collapsible-section.js +2 -2
- package/components/composites/page-panel/page-panel-empty.d.ts +1 -1
- package/components/composites/page-panel/page-panel-empty.d.ts.map +1 -1
- package/components/composites/page-panel/page-panel-empty.js +4 -4
- package/components/composites/page-panel/page-panel-feature-empty.d.ts +1 -1
- package/components/composites/page-panel/page-panel-frame.d.ts +1 -1
- package/components/composites/page-panel/page-panel-frame.d.ts.map +1 -1
- package/components/composites/page-panel/page-panel-frame.js +1 -1
- package/components/composites/page-panel/page-panel-header.d.ts +1 -1
- package/components/composites/page-panel/page-panel-header.d.ts.map +1 -1
- package/components/composites/page-panel/page-panel-header.js +9 -9
- package/components/composites/page-panel/page-panel-loading.d.ts +1 -1
- package/components/composites/page-panel/page-panel-loading.d.ts.map +1 -1
- package/components/composites/page-panel/page-panel-loading.js +3 -3
- package/components/composites/page-panel/page-panel-root.d.ts +2 -2
- package/components/composites/page-panel/page-panel-root.js +7 -7
- package/components/composites/page-panel/page-panel-toolbar.d.ts +1 -1
- package/components/composites/page-panel/page-panel-types.d.ts +1 -1
- package/components/composites/search/index.d.ts +1 -1
- package/components/composites/search/searchbar.js +1 -1
- package/components/composites/sidebar/index.d.ts +10 -10
- package/components/composites/sidebar/sidebar-auto-rail.d.ts +1 -1
- package/components/composites/sidebar/sidebar-body.d.ts +1 -1
- package/components/composites/sidebar/sidebar-collapsed-rail.d.ts +1 -1
- package/components/composites/sidebar/sidebar-content.js +3 -3
- package/components/composites/sidebar/sidebar-header-stack.d.ts +1 -1
- package/components/composites/sidebar/sidebar-header.d.ts +1 -1
- package/components/composites/sidebar/sidebar-panel.d.ts +1 -1
- package/components/composites/sidebar/sidebar-root.d.ts +1 -1
- package/components/composites/sidebar/sidebar-root.d.ts.map +1 -1
- package/components/composites/sidebar/sidebar-root.js +34 -8
- package/components/composites/sidebar/sidebar-scroll-region.d.ts +1 -1
- package/components/composites/skills/index.d.ts +1 -1
- package/components/composites/trajectories/index.d.ts +7 -7
- package/components/composites/trajectories/trajectory-code-block.d.ts.map +1 -1
- package/components/composites/trajectories/trajectory-code-block.js +3 -2
- package/components/composites/trajectories/trajectory-pipeline-graph.js +3 -3
- package/components/config-ui/config-control-primitives.helpers.js +2 -2
- package/components/config-ui/config-field.d.ts +1 -1
- package/components/config-ui/config-field.helpers.d.ts +1 -1
- package/components/config-ui/config-field.helpers.d.ts.map +1 -1
- package/components/config-ui/config-field.helpers.js +33 -20
- package/components/config-ui/config-field.js +2 -2
- package/components/config-ui/config-renderer.d.ts +2 -2
- package/components/config-ui/config-renderer.helpers.d.ts +2 -2
- package/components/config-ui/config-renderer.js +6 -6
- package/components/config-ui/index.d.ts +7 -7
- package/components/config-ui/ui-renderer.d.ts +1 -1
- package/components/config-ui/ui-renderer.d.ts.map +1 -1
- package/components/config-ui/ui-renderer.helpers.d.ts +1 -1
- package/components/config-ui/ui-renderer.js +15 -8
- package/components/connectors/BlueBubblesStatusPanel.d.ts.map +1 -1
- package/components/connectors/BlueBubblesStatusPanel.js +11 -24
- package/components/connectors/ConnectorAccountAuditList.d.ts.map +1 -1
- package/components/connectors/ConnectorAccountAuditList.js +19 -32
- package/components/connectors/ConnectorAccountCard.d.ts +1 -1
- package/components/connectors/ConnectorAccountList.d.ts +2 -2
- package/components/connectors/ConnectorAccountPrivacySelector.d.ts +1 -1
- package/components/connectors/ConnectorAccountPurposeSelector.d.ts +1 -1
- package/components/connectors/ConnectorModeSelector.d.ts +1 -1
- package/components/connectors/ConnectorModeSelector.helpers.d.ts +1 -1
- package/components/connectors/ConnectorModeSelector.hooks.d.ts +1 -1
- package/components/connectors/ConnectorModeSelector.js +2 -2
- package/components/connectors/ConnectorQrPairingOverlay.js +2 -2
- package/components/connectors/DiscordLocalConnectorPanel.js +2 -2
- package/components/connectors/IMessageStatusPanel.js +2 -2
- package/components/connectors/SignalQrOverlay.js +2 -2
- package/components/connectors/TelegramAccountConnectorPanel.js +4 -4
- package/components/connectors/TelegramBotSetupPanel.js +3 -3
- package/components/connectors/WhatsAppQrOverlay.js +2 -2
- package/components/connectors/XRPairingPanel.d.ts.map +1 -1
- package/components/connectors/XRPairingPanel.js +6 -3
- package/components/connectors/connector-account-options.d.ts +1 -1
- package/components/conversations/ConversationRenameDialog.d.ts.map +1 -1
- package/components/conversations/ConversationRenameDialog.js +4 -2
- package/components/conversations/ConversationsSidebar.d.ts.map +1 -1
- package/components/conversations/ConversationsSidebar.js +18 -3
- package/components/conversations/conversation-sidebar-model.d.ts +2 -2
- package/components/conversations/conversation-utils.d.ts +1 -1
- package/components/custom-actions/CustomActionEditor.js +2 -2
- package/components/custom-actions/CustomActionsPanel.d.ts.map +1 -1
- package/components/custom-actions/CustomActionsPanel.js +16 -5
- package/components/custom-actions/CustomActionsView.js +3 -3
- package/components/custom-actions/custom-action-form.d.ts +4 -4
- package/components/custom-actions/custom-action-form.d.ts.map +1 -1
- package/components/custom-actions/custom-action-form.js +2 -2
- package/components/desktop/DesktopTabBar.d.ts +2 -2
- package/components/desktop/DesktopTabBar.js +4 -4
- package/components/index.d.ts +161 -156
- package/components/index.d.ts.map +1 -1
- package/components/index.js +9 -1
- package/components/local-inference/ActiveModelBar.d.ts +1 -1
- package/components/local-inference/DeviceBridgeStatus.d.ts +1 -1
- package/components/local-inference/DevicesPanel.d.ts +1 -1
- package/components/local-inference/DownloadProgress.d.ts +1 -1
- package/components/local-inference/DownloadProgress.d.ts.map +1 -1
- package/components/local-inference/DownloadProgress.js +1 -3
- package/components/local-inference/DownloadQueue.d.ts +8 -2
- package/components/local-inference/DownloadQueue.d.ts.map +1 -1
- package/components/local-inference/DownloadQueue.js +3 -3
- package/components/local-inference/FirstRunOffer.d.ts +1 -1
- package/components/local-inference/HardwareBadge.d.ts +1 -1
- package/components/local-inference/LocalInferencePanel.d.ts +1 -1
- package/components/local-inference/LocalInferencePanel.d.ts.map +1 -1
- package/components/local-inference/LocalInferencePanel.js +18 -51
- package/components/local-inference/ModelCard.d.ts +1 -1
- package/components/local-inference/ModelCard.d.ts.map +1 -1
- package/components/local-inference/ModelCard.js +6 -5
- package/components/local-inference/ModelHubView.d.ts +1 -1
- package/components/local-inference/ModelHubView.d.ts.map +1 -1
- package/components/local-inference/ModelHubView.js +10 -6
- package/components/local-inference/RoutingMatrix.d.ts.map +1 -1
- package/components/local-inference/RoutingMatrix.js +115 -40
- package/components/local-inference/SlotAssignments.d.ts +1 -1
- package/components/local-inference/SlotAssignments.d.ts.map +1 -1
- package/components/local-inference/SlotAssignments.js +27 -10
- package/components/local-inference/hub-utils.d.ts +2 -1
- package/components/local-inference/hub-utils.d.ts.map +1 -1
- package/components/local-inference/hub-utils.js +2 -0
- package/components/local-inference/runtime-class-ui.d.ts +44 -0
- package/components/local-inference/runtime-class-ui.d.ts.map +1 -0
- package/components/local-inference/runtime-class-ui.js +61 -0
- package/components/local-inference/slot-metadata.d.ts +1 -1
- package/components/local-inference/useDeviceBridgeStatus.d.ts +1 -1
- package/components/local-inference/useDeviceBridgeStatus.d.ts.map +1 -1
- package/components/local-inference/useDeviceBridgeStatus.js +17 -12
- package/components/local-inference/useHomeModelStatus.d.ts +1 -1
- package/components/local-inference/useHomeModelStatus.d.ts.map +1 -1
- package/components/local-inference/useHomeModelStatus.js +15 -10
- package/components/pages/AppDetailsView.d.ts +1 -1
- package/components/pages/AppDetailsView.d.ts.map +1 -1
- package/components/pages/AppDetailsView.helpers.d.ts +1 -1
- package/components/pages/AppDetailsView.js +15 -3
- package/components/pages/AppsPageView.d.ts.map +1 -1
- package/components/pages/AppsPageView.js +7 -2
- package/components/pages/AppsView.d.ts.map +1 -1
- package/components/pages/AppsView.js +35 -8
- package/components/pages/AutomationsFeed.d.ts +1 -1
- package/components/pages/AutomationsFeed.d.ts.map +1 -1
- package/components/pages/AutomationsFeed.js +3 -7
- package/components/pages/BackgroundView.d.ts +10 -0
- package/components/pages/BackgroundView.d.ts.map +1 -0
- package/components/pages/BackgroundView.js +14 -0
- package/components/pages/BrowserWorkspaceView.d.ts.map +1 -1
- package/components/pages/BrowserWorkspaceView.js +13 -8
- package/components/pages/CameraPageView.js +2 -2
- package/components/pages/ChatView.d.ts +1 -1
- package/components/pages/ChatView.d.ts.map +1 -1
- package/components/pages/ChatView.js +186 -29
- package/components/pages/ConfigPageView.d.ts.map +1 -1
- package/components/pages/ConfigPageView.js +11 -2
- package/components/pages/DatabasePageView.d.ts.map +1 -1
- package/components/pages/DatabasePageView.js +4 -2
- package/components/pages/DatabaseView.d.ts.map +1 -1
- package/components/pages/DatabaseView.js +14 -12
- package/components/pages/DocumentsView.d.ts +2 -2
- package/components/pages/DocumentsView.d.ts.map +1 -1
- package/components/pages/DocumentsView.js +20 -20
- package/components/pages/ElizaCloudDashboard.d.ts.map +1 -1
- package/components/pages/ElizaCloudDashboard.js +20 -2
- package/components/pages/ElizaOsAppsView.d.ts.map +1 -1
- package/components/pages/ElizaOsAppsView.js +29 -22
- package/components/pages/FilesView.d.ts +15 -0
- package/components/pages/FilesView.d.ts.map +1 -0
- package/components/pages/FilesView.js +201 -0
- package/components/pages/GeneratedViewHero.js +1 -1
- package/components/pages/HeartbeatForm.d.ts +3 -3
- package/components/pages/HeartbeatsView.d.ts.map +1 -1
- package/components/pages/HeartbeatsView.js +21 -6
- package/components/pages/LogsView.d.ts +0 -6
- package/components/pages/LogsView.d.ts.map +1 -1
- package/components/pages/LogsView.js +41 -25
- package/components/pages/MediaGalleryView.d.ts.map +1 -1
- package/components/pages/MediaGalleryView.js +59 -11
- package/components/pages/MemoryDetailPanel.d.ts +1 -1
- package/components/pages/MemoryDetailPanel.d.ts.map +1 -1
- package/components/pages/MemoryDetailPanel.js +8 -3
- package/components/pages/MemoryViewerView.d.ts.map +1 -1
- package/components/pages/MemoryViewerView.js +33 -24
- package/components/pages/PluginCard.d.ts +2 -2
- package/components/pages/PluginCard.d.ts.map +1 -1
- package/components/pages/PluginCard.js +6 -5
- package/components/pages/PluginConfigForm.d.ts +1 -1
- package/components/pages/PluginConfigForm.js +2 -2
- package/components/pages/PluginVisual.d.ts +1 -1
- package/components/pages/PluginsView.d.ts +1 -1
- package/components/pages/PluginsView.d.ts.map +1 -1
- package/components/pages/PluginsView.js +33 -13
- package/components/pages/RelationshipsGraphPanel.d.ts +1 -1
- package/components/pages/RelationshipsGraphPanel.js +2 -2
- package/components/pages/RelationshipsIdentityCluster.d.ts +1 -1
- package/components/pages/ReleaseCenterView.d.ts.map +1 -1
- package/components/pages/ReleaseCenterView.js +11 -9
- package/components/pages/RuntimeView.d.ts.map +1 -1
- package/components/pages/RuntimeView.js +13 -12
- package/components/pages/SecretsView.d.ts.map +1 -1
- package/components/pages/SecretsView.js +21 -18
- package/components/pages/SettingsView.d.ts.map +1 -1
- package/components/pages/SettingsView.js +34 -14
- package/components/pages/SkillsView.d.ts.map +1 -1
- package/components/pages/SkillsView.js +47 -11
- package/components/pages/Springboard.d.ts +49 -0
- package/components/pages/Springboard.d.ts.map +1 -0
- package/components/pages/Springboard.js +238 -0
- package/components/pages/SpringboardSurface.d.ts +6 -0
- package/components/pages/SpringboardSurface.d.ts.map +1 -0
- package/components/pages/SpringboardSurface.js +120 -0
- package/components/pages/SqlEditorPanel.d.ts +1 -1
- package/components/pages/SqlEditorPanel.js +5 -5
- package/components/pages/StreamView.d.ts.map +1 -1
- package/components/pages/StreamView.js +6 -7
- package/components/pages/TaskEditor.d.ts +3 -3
- package/components/pages/TrajectoriesView.d.ts.map +1 -1
- package/components/pages/TrajectoriesView.js +9 -9
- package/components/pages/TrajectoryDetailView.d.ts.map +1 -1
- package/components/pages/TrajectoryDetailView.js +58 -39
- package/components/pages/WorkflowEditor.d.ts +1 -1
- package/components/pages/WorkflowEditor.d.ts.map +1 -1
- package/components/pages/WorkflowEditor.js +13 -22
- package/components/pages/WorkflowGraphViewer.d.ts +1 -1
- package/components/pages/WorkflowGraphViewer.d.ts.map +1 -1
- package/components/pages/WorkflowGraphViewer.js +9 -11
- package/components/pages/__e2e__/background-fixture.d.ts +2 -0
- package/components/pages/__e2e__/background-fixture.d.ts.map +1 -0
- package/components/pages/__e2e__/background-fixture.js +84 -0
- package/components/pages/__e2e__/springboard-fixture.d.ts +2 -0
- package/components/pages/__e2e__/springboard-fixture.d.ts.map +1 -0
- package/components/pages/__e2e__/springboard-fixture.js +103 -0
- package/components/pages/automation-conversations.d.ts +1 -1
- package/components/pages/automations-missing-creds.d.ts +1 -1
- package/components/pages/background-image.d.ts +10 -0
- package/components/pages/background-image.d.ts.map +1 -0
- package/components/pages/background-image.js +61 -0
- package/components/pages/browser-workspace-wallet.d.ts +1 -1
- package/components/pages/chat-view-hooks.d.ts +5 -5
- package/components/pages/cloud-dashboard-utils.d.ts +1 -1
- package/components/pages/config-page-sections.d.ts +1 -1
- package/components/pages/config-page-sections.d.ts.map +1 -1
- package/components/pages/config-page-sections.js +4 -3
- package/components/pages/database-utils.d.ts +2 -1
- package/components/pages/database-utils.d.ts.map +1 -1
- package/components/pages/database-utils.js +38 -25
- package/components/pages/documents-detail.d.ts.map +1 -1
- package/components/pages/documents-detail.helpers.d.ts +1 -1
- package/components/pages/documents-detail.js +55 -8
- package/components/pages/documents-upload.d.ts +1 -1
- package/components/pages/documents-upload.d.ts.map +1 -1
- package/components/pages/documents-upload.helpers.d.ts +1 -1
- package/components/pages/documents-upload.js +5 -3
- package/components/pages/heartbeat-utils.d.ts +2 -2
- package/components/pages/help/HelpView.js +2 -2
- package/components/pages/help/help-content.d.ts.map +1 -1
- package/components/pages/help/help-content.js +7 -5
- package/components/pages/page-scoped-conversations.d.ts +3 -3
- package/components/pages/page-scoped-conversations.d.ts.map +1 -1
- package/components/pages/page-scoped-conversations.js +1 -18
- package/components/pages/plugin-list-utils.d.ts +3 -3
- package/components/pages/plugin-list-utils.d.ts.map +1 -1
- package/components/pages/plugin-list-utils.js +6 -2
- package/components/pages/plugin-view-connectors.d.ts +2 -2
- package/components/pages/plugin-view-connectors.d.ts.map +1 -1
- package/components/pages/plugin-view-connectors.js +7 -2
- package/components/pages/plugin-view-dialogs.d.ts +3 -9
- package/components/pages/plugin-view-dialogs.d.ts.map +1 -1
- package/components/pages/plugin-view-dialogs.js +1 -1
- package/components/pages/plugin-view-modal.d.ts +2 -2
- package/components/pages/plugin-view-sidebar.d.ts +2 -2
- package/components/pages/relationships/RelationshipsCandidateMergesPanel.d.ts +1 -1
- package/components/pages/relationships/RelationshipsPersonPanels.d.ts +1 -1
- package/components/pages/relationships/RelationshipsPersonPanels.js +1 -1
- package/components/pages/relationships/RelationshipsSidebar.d.ts +1 -1
- package/components/pages/relationships/RelationshipsWorkspaceView.d.ts.map +1 -1
- package/components/pages/relationships/RelationshipsWorkspaceView.js +5 -4
- package/components/pages/relationships/relationships-utils.d.ts +1 -1
- package/components/pages/skill-detail-panel.d.ts.map +1 -1
- package/components/pages/skill-detail-panel.js +25 -3
- package/components/pages/skill-marketplace.d.ts +2 -2
- package/components/pages/skill-marketplace.d.ts.map +1 -1
- package/components/pages/skill-marketplace.js +3 -3
- package/components/pages/tutorial/TutorialNarrator.d.ts.map +1 -1
- package/components/pages/tutorial/TutorialNarrator.js +3 -2
- package/components/pages/tutorial/TutorialOverlay.d.ts.map +1 -1
- package/components/pages/tutorial/TutorialOverlay.js +3 -2
- package/components/pages/tutorial/TutorialSpotlight.js +3 -3
- package/components/pages/tutorial/TutorialView.d.ts.map +1 -1
- package/components/pages/tutorial/TutorialView.js +3 -5
- package/components/pages/useBrowserWorkspaceWalletBridge.d.ts +2 -2
- package/components/pages/workflow-action-handoff.d.ts +1 -1
- package/components/permissions/StreamingPermissions.d.ts +1 -1
- package/components/permissions/StreamingPermissions.d.ts.map +1 -1
- package/components/permissions/StreamingPermissions.js +5 -6
- package/components/plugins/showcase-data.d.ts +1 -1
- package/components/policy-controls/ApprovedAddressesSection.d.ts +1 -1
- package/components/policy-controls/ApprovedAddressesSection.helpers.d.ts +1 -1
- package/components/policy-controls/AutoApproveSection.d.ts +1 -1
- package/components/policy-controls/AutoApproveSection.helpers.d.ts +1 -1
- package/components/policy-controls/RateLimitSection.d.ts +1 -1
- package/components/policy-controls/RateLimitSection.helpers.d.ts +1 -1
- package/components/policy-controls/SpendingLimitSection.d.ts +1 -1
- package/components/policy-controls/SpendingLimitSection.helpers.d.ts +1 -1
- package/components/policy-controls/TimeWindowSection.d.ts +1 -1
- package/components/policy-controls/TimeWindowSection.helpers.d.ts +1 -1
- package/components/policy-controls/constants.d.ts +1 -1
- package/components/policy-controls/helpers.d.ts +1 -1
- package/components/policy-controls/index.d.ts +14 -14
- package/components/primitives/index.d.ts +27 -27
- package/components/release-center/sections.d.ts +1 -1
- package/components/release-center/sections.js +7 -7
- package/components/release-center/shared.js +2 -2
- package/components/settings/AdvancedSection.d.ts.map +1 -1
- package/components/settings/AdvancedSection.js +20 -4
- package/components/settings/AdvancedToggle.js +1 -1
- package/components/settings/ApiKeyConfig.d.ts +2 -2
- package/components/settings/ApiKeyConfig.js +2 -2
- package/components/settings/AppPermissionsSection.d.ts.map +1 -1
- package/components/settings/AppPermissionsSection.js +7 -12
- package/components/settings/AppearanceSettingsSection.d.ts.map +1 -1
- package/components/settings/AppearanceSettingsSection.js +34 -5
- package/components/settings/AppsManagementSection.d.ts.map +1 -1
- package/components/settings/AppsManagementSection.js +42 -33
- package/components/settings/BackgroundSettingsControls.d.ts +5 -0
- package/components/settings/BackgroundSettingsControls.d.ts.map +1 -0
- package/components/settings/BackgroundSettingsControls.js +118 -0
- package/components/settings/CapabilitiesSection.d.ts.map +1 -1
- package/components/settings/CapabilitiesSection.js +115 -13
- package/components/settings/CloudAgentsSection.d.ts.map +1 -1
- package/components/settings/CloudAgentsSection.js +33 -13
- package/components/settings/ConnectorsSection.d.ts.map +1 -1
- package/components/settings/ConnectorsSection.js +8 -6
- package/components/settings/DesktopWorkspaceDisplay.d.ts +2 -3
- package/components/settings/DesktopWorkspaceDisplay.d.ts.map +1 -1
- package/components/settings/DesktopWorkspaceDisplay.hooks.d.ts +3 -4
- package/components/settings/DesktopWorkspaceDisplay.hooks.d.ts.map +1 -1
- package/components/settings/DesktopWorkspaceSection.d.ts.map +1 -1
- package/components/settings/DesktopWorkspaceSection.js +4 -2
- package/components/settings/IdentitySettingsSection.d.ts.map +1 -1
- package/components/settings/IdentitySettingsSection.js +13 -3
- package/components/settings/LoadContentPackForm.js +2 -2
- package/components/settings/LoadedPacksList.d.ts.map +1 -1
- package/components/settings/LoadedPacksList.js +8 -10
- package/components/settings/PermissionsSection.d.ts.map +1 -1
- package/components/settings/PermissionsSection.js +10 -32
- package/components/settings/PolicyControlsView.d.ts.map +1 -1
- package/components/settings/PolicyControlsView.js +8 -10
- package/components/settings/ProviderCard.d.ts +3 -5
- package/components/settings/ProviderCard.d.ts.map +1 -1
- package/components/settings/ProviderCard.js +4 -6
- package/components/settings/ProviderPanels.d.ts +4 -15
- package/components/settings/ProviderPanels.d.ts.map +1 -1
- package/components/settings/ProviderPanels.js +11 -17
- package/components/settings/ProviderRoutingPanel.d.ts +1 -1
- package/components/settings/ProviderRoutingPanel.d.ts.map +1 -1
- package/components/settings/ProviderRoutingPanel.js +4 -8
- package/components/settings/ProviderSwitcher.d.ts +1 -1
- package/components/settings/ProviderSwitcher.d.ts.map +1 -1
- package/components/settings/ProviderSwitcher.js +31 -32
- package/components/settings/RemotePluginHostSection.d.ts.map +1 -1
- package/components/settings/RemotePluginHostSection.js +13 -27
- package/components/settings/RuntimeSettingsSection.d.ts.map +1 -1
- package/components/settings/RuntimeSettingsSection.js +7 -18
- package/components/settings/SecretsManagerSection.d.ts +1 -1
- package/components/settings/SecretsManagerSection.d.ts.map +1 -1
- package/components/settings/SecretsManagerSection.js +3 -3
- package/components/settings/SecuritySettingsSection.d.ts.map +1 -1
- package/components/settings/SecuritySettingsSection.js +49 -57
- package/components/settings/SubscriptionStatus.d.ts +1 -1
- package/components/settings/SubscriptionStatus.js +4 -4
- package/components/settings/VaultInventoryPanel.d.ts +1 -1
- package/components/settings/VaultInventoryPanel.d.ts.map +1 -1
- package/components/settings/VaultInventoryPanel.js +26 -22
- package/components/settings/VoiceConfigView.d.ts.map +1 -1
- package/components/settings/VoiceConfigView.helpers.d.ts +1 -1
- package/components/settings/VoiceConfigView.js +25 -21
- package/components/settings/VoiceProfileSection.d.ts +2 -4
- package/components/settings/VoiceProfileSection.d.ts.map +1 -1
- package/components/settings/VoiceProfileSection.js +57 -34
- package/components/settings/VoiceSection.d.ts +8 -7
- package/components/settings/VoiceSection.d.ts.map +1 -1
- package/components/settings/VoiceSection.helpers.d.ts +1 -1
- package/components/settings/VoiceSection.helpers.d.ts.map +1 -1
- package/components/settings/VoiceSection.helpers.js +0 -1
- package/components/settings/VoiceSection.js +21 -57
- package/components/settings/VoiceSectionMount.d.ts.map +1 -1
- package/components/settings/VoiceSectionMount.js +16 -7
- package/components/settings/VoiceTierBanner.d.ts.map +1 -1
- package/components/settings/VoiceTierBanner.helpers.d.ts +1 -1
- package/components/settings/VoiceTierBanner.js +13 -19
- package/components/settings/WalletKeysSection.d.ts.map +1 -1
- package/components/settings/WalletKeysSection.js +3 -9
- package/components/settings/cloud-model-schema.d.ts +3 -3
- package/components/settings/desktop-workspace-audit-config.d.ts +1 -1
- package/components/settings/permission-controls.d.ts +2 -2
- package/components/settings/permission-controls.hooks.d.ts +1 -1
- package/components/settings/permission-controls.js +3 -3
- package/components/settings/permission-types.d.ts +1 -1
- package/components/settings/permission-types.js +8 -8
- package/components/settings/settings-agent-rows.d.ts +26 -2
- package/components/settings/settings-agent-rows.d.ts.map +1 -1
- package/components/settings/settings-agent-rows.js +29 -1
- package/components/settings/settings-control-primitives.d.ts +1 -1
- package/components/settings/settings-layout.d.ts +9 -3
- package/components/settings/settings-layout.d.ts.map +1 -1
- package/components/settings/settings-layout.js +8 -6
- package/components/settings/settings-section-registry.d.ts +19 -1
- package/components/settings/settings-section-registry.d.ts.map +1 -1
- package/components/settings/settings-sections.d.ts +3 -3
- package/components/settings/settings-sections.d.ts.map +1 -1
- package/components/settings/settings-sections.js +11 -4
- package/components/settings/useCloudModelConfig.d.ts +2 -2
- package/components/settings/useDesktopWindowControls.d.ts +3 -4
- package/components/settings/useDesktopWindowControls.d.ts.map +1 -1
- package/components/settings/useProviderBootstrap.d.ts +2 -2
- package/components/settings/useProviderEntries.d.ts +4 -4
- package/components/settings/useProviderSelection.d.ts +1 -1
- package/components/settings/useProviderSelection.d.ts.map +1 -1
- package/components/settings/useProviderSelection.js +9 -5
- package/components/settings/vault-tabs/OverviewTab.d.ts +1 -1
- package/components/settings/vault-tabs/OverviewTab.d.ts.map +1 -1
- package/components/settings/vault-tabs/OverviewTab.js +7 -1
- package/components/settings/vault-tabs/RoutingTab.d.ts +1 -1
- package/components/settings/vault-tabs/RoutingTab.d.ts.map +1 -1
- package/components/settings/vault-tabs/RoutingTab.js +41 -14
- package/components/settings/vault-tabs/SecretsTab.d.ts +1 -1
- package/components/settings/vault-tabs/SecretsTab.d.ts.map +1 -1
- package/components/settings/vault-tabs/SecretsTab.js +3 -1
- package/components/setup/BootstrapStep.d.ts +1 -1
- package/components/setup/BootstrapStep.d.ts.map +1 -1
- package/components/setup/BootstrapStep.js +1 -2
- package/components/setup/setup-classes.d.ts +2 -2
- package/components/setup/setup-classes.d.ts.map +1 -1
- package/components/setup/setup-classes.js +2 -2
- package/components/shared/AppPageSidebar.d.ts +1 -1
- package/components/shared/AppPageSidebar.js +1 -1
- package/components/shared/CollapsibleSidebarSection.js +1 -1
- package/components/shared/LanguageDropdown.d.ts +1 -1
- package/components/shared/LanguageDropdown.d.ts.map +1 -1
- package/components/shared/LanguageDropdown.helpers.d.ts +1 -1
- package/components/shared/LanguageDropdown.js +4 -7
- package/components/shared/ThemeToggle.d.ts +1 -1
- package/components/shared/ThemeToggle.js +2 -2
- package/components/shared/confirm-delete-control.js +2 -2
- package/components/shell/ActionBanner.d.ts.map +1 -1
- package/components/shell/ActionBanner.js +3 -2
- package/components/shell/AssistantOverlay.d.ts +1 -1
- package/components/shell/AssistantOverlay.js +3 -3
- package/components/shell/BugReportModal.d.ts.map +1 -1
- package/components/shell/BugReportModal.js +6 -5
- package/components/shell/ChatSurface.d.ts +1 -1
- package/components/shell/ChatSurface.d.ts.map +1 -1
- package/components/shell/ChatSurface.js +7 -2
- package/components/shell/CloudHandoffBanner.d.ts +3 -2
- package/components/shell/CloudHandoffBanner.d.ts.map +1 -1
- package/components/shell/CloudHandoffBanner.js +9 -10
- package/components/shell/CommandPalette.d.ts.map +1 -1
- package/components/shell/CommandPalette.js +57 -5
- package/components/shell/ComputerUseApprovalOverlay.d.ts.map +1 -1
- package/components/shell/ComputerUseApprovalOverlay.js +10 -8
- package/components/shell/ConnectionFailedBanner.d.ts.map +1 -1
- package/components/shell/ConnectionFailedBanner.js +8 -3
- package/components/shell/ConnectionLostOverlay.d.ts.map +1 -1
- package/components/shell/ConnectionLostOverlay.js +7 -2
- package/components/shell/ContinuousChatOverlay.d.ts +2 -2
- package/components/shell/ContinuousChatOverlay.d.ts.map +1 -1
- package/components/shell/ContinuousChatOverlay.js +620 -168
- package/components/shell/HomePill.d.ts +1 -1
- package/components/shell/HomePill.js +1 -1
- package/components/shell/HomeScreen.d.ts +18 -6
- package/components/shell/HomeScreen.d.ts.map +1 -1
- package/components/shell/HomeScreen.js +84 -94
- package/components/shell/HomeSpringboardSurface.d.ts +21 -0
- package/components/shell/HomeSpringboardSurface.d.ts.map +1 -0
- package/components/shell/HomeSpringboardSurface.js +134 -0
- package/components/shell/KioskViewCanvas.d.ts +1 -1
- package/components/shell/LoadingScreen.d.ts +1 -1
- package/components/shell/LoadingScreen.d.ts.map +1 -1
- package/components/shell/LoadingScreen.js +29 -6
- package/components/shell/NotificationCenter.d.ts.map +1 -1
- package/components/shell/NotificationCenter.js +52 -20
- package/components/shell/PairingCommandHint.d.ts.map +1 -1
- package/components/shell/PairingCommandHint.js +4 -2
- package/components/shell/PairingView.d.ts.map +1 -1
- package/components/shell/PairingView.js +11 -2
- package/components/shell/RestartBanner.d.ts.map +1 -1
- package/components/shell/RestartBanner.js +9 -3
- package/components/shell/ShellControllerContext.hooks.d.ts +1 -1
- package/components/shell/ShellHeaderControls.d.ts +3 -3
- package/components/shell/ShellHeaderControls.d.ts.map +1 -1
- package/components/shell/ShellHeaderControls.js +2 -2
- package/components/shell/ShellOverlays.d.ts +1 -1
- package/components/shell/ShellOverlays.d.ts.map +1 -1
- package/components/shell/ShellOverlays.js +19 -4
- package/components/shell/ShortcutsOverlay.d.ts.map +1 -1
- package/components/shell/ShortcutsOverlay.js +10 -3
- package/components/shell/SlashCommandMenu.d.ts +2 -2
- package/components/shell/SlashCommandMenu.d.ts.map +1 -1
- package/components/shell/SlashCommandMenu.js +2 -2
- package/components/shell/StartupFailureView.d.ts +1 -1
- package/components/shell/StartupFailureView.js +3 -3
- package/components/shell/StartupShell.d.ts +1 -1
- package/components/shell/StartupShell.d.ts.map +1 -1
- package/components/shell/StartupShell.js +18 -6
- package/components/shell/SystemWarningBanner.d.ts.map +1 -1
- package/components/shell/SystemWarningBanner.js +5 -3
- package/components/shell/TopicChipsBar.d.ts +14 -0
- package/components/shell/TopicChipsBar.d.ts.map +1 -0
- package/components/shell/TopicChipsBar.js +18 -0
- package/components/shell/TopicGroup.d.ts +21 -0
- package/components/shell/TopicGroup.d.ts.map +1 -0
- package/components/shell/TopicGroup.js +30 -0
- package/components/shell/__e2e__/chat-ambient-fixture.js +2 -2
- package/components/shell/__e2e__/chat-sheet-fixture.js +13 -1
- package/components/shell/__e2e__/chatux-gesture-fixture.d.ts +13 -0
- package/components/shell/__e2e__/chatux-gesture-fixture.d.ts.map +1 -0
- package/components/shell/__e2e__/chatux-gesture-fixture.js +65 -0
- package/components/shell/__e2e__/home-screen-fixture.api-stub.d.ts +97 -9
- package/components/shell/__e2e__/home-screen-fixture.api-stub.d.ts.map +1 -1
- package/components/shell/__e2e__/home-screen-fixture.api-stub.js +30 -9
- package/components/shell/__e2e__/home-screen-fixture.catalog-stub.d.ts +20 -0
- package/components/shell/__e2e__/home-screen-fixture.catalog-stub.d.ts.map +1 -0
- package/components/shell/__e2e__/home-screen-fixture.catalog-stub.js +23 -0
- package/components/shell/__e2e__/home-screen-fixture.core-stub.d.ts +3 -0
- package/components/shell/__e2e__/home-screen-fixture.core-stub.d.ts.map +1 -0
- package/components/shell/__e2e__/home-screen-fixture.core-stub.js +6 -0
- package/components/shell/__e2e__/home-screen-fixture.js +10 -2
- package/components/shell/__e2e__/home-screen-fixture.platform-stub.d.ts +3 -0
- package/components/shell/__e2e__/home-screen-fixture.platform-stub.d.ts.map +1 -0
- package/components/shell/__e2e__/home-screen-fixture.platform-stub.js +6 -0
- package/components/shell/__e2e__/home-screen-fixture.view-kinds-stub.d.ts +5 -0
- package/components/shell/__e2e__/home-screen-fixture.view-kinds-stub.d.ts.map +1 -0
- package/components/shell/__e2e__/home-screen-fixture.view-kinds-stub.js +3 -0
- package/components/shell/__e2e__/home-screen-fixture.views-stub.d.ts +7 -0
- package/components/shell/__e2e__/home-screen-fixture.views-stub.d.ts.map +1 -1
- package/components/shell/__e2e__/home-screen-fixture.views-stub.js +68 -3
- package/components/shell/first-run-theme.d.ts +1 -1
- package/components/shell/glass-composer.helpers.d.ts +2 -2
- package/components/shell/glass-composer.helpers.d.ts.map +1 -1
- package/components/shell/glass-composer.helpers.js +2 -2
- package/components/shell/glass-composer.js +1 -1
- package/components/shell/home-springboard-events.d.ts +7 -0
- package/components/shell/home-springboard-events.d.ts.map +1 -0
- package/components/shell/home-springboard-events.js +6 -0
- package/components/shell/shell-state.d.ts +24 -1
- package/components/shell/shell-state.d.ts.map +1 -1
- package/components/shell/shell-state.js +19 -1
- package/components/shell/startup-shell-types.d.ts +1 -1
- package/components/shell/topic-grouping.d.ts +39 -0
- package/components/shell/topic-grouping.d.ts.map +1 -0
- package/components/shell/topic-grouping.js +81 -0
- package/components/shell/use-conversation-reset.d.ts +14 -0
- package/components/shell/use-conversation-reset.d.ts.map +1 -0
- package/components/shell/use-conversation-reset.js +25 -0
- package/components/shell/use-pull-gesture.d.ts +32 -7
- package/components/shell/use-pull-gesture.d.ts.map +1 -1
- package/components/shell/use-pull-gesture.js +146 -21
- package/components/shell/usePromptSuggestions.d.ts +3 -3
- package/components/shell/usePromptSuggestions.js +1 -1
- package/components/shell/useShellController.d.ts +42 -19
- package/components/shell/useShellController.d.ts.map +1 -1
- package/components/shell/useShellController.js +189 -15
- package/components/shell/useShellVoiceOutput.d.ts +1 -1
- package/components/steward/injected.d.ts +1 -1
- package/components/stream/StatusBar.js +5 -7
- package/components/tool-events/ToolCallEventLog.d.ts +1 -1
- package/components/tool-events/ToolCallEventLog.helpers.d.ts +2 -2
- package/components/training/JobDetailPanel.js +2 -2
- package/components/training/TrainingDashboard.js +1 -1
- package/components/training/hooks/useTrainingApi.d.ts +1 -1
- package/components/training/injected.d.ts +1 -1
- package/components/transcripts/TranscriptBody.d.ts.map +1 -1
- package/components/transcripts/TranscriptBody.js +14 -6
- package/components/transcripts/index.d.ts +4 -4
- package/components/ui/admin-dialog.d.ts +2 -2
- package/components/ui/admin-dialog.js +2 -2
- package/components/ui/badge.js +1 -1
- package/components/ui/button.js +1 -1
- package/components/ui/calendar.d.ts +1 -1
- package/components/ui/calendar.js +3 -3
- package/components/ui/carousel.d.ts +1 -1
- package/components/ui/chart.js +1 -1
- package/components/ui/checkbox.js +1 -1
- package/components/ui/code-block.js +1 -1
- package/components/ui/confirm-dialog.hooks.d.ts +1 -1
- package/components/ui/connection-status.d.ts.map +1 -1
- package/components/ui/connection-status.js +6 -6
- package/components/ui/copy-button.d.ts.map +1 -1
- package/components/ui/copy-button.js +10 -1
- package/components/ui/dialog.js +1 -1
- package/components/ui/dropdown-menu.js +4 -4
- package/components/ui/field-switch.js +1 -1
- package/components/ui/form-select.d.ts +1 -1
- package/components/ui/form-select.js +2 -2
- package/components/ui/grid.d.ts +1 -1
- package/components/ui/input-group.d.ts +1 -1
- package/components/ui/input-group.js +4 -4
- package/components/ui/input.js +3 -3
- package/components/ui/new-action-button.d.ts +1 -1
- package/components/ui/pagination.d.ts +1 -1
- package/components/ui/scroll-area.js +1 -1
- package/components/ui/select.js +2 -2
- package/components/ui/settings-controls.d.ts +6 -6
- package/components/ui/settings-controls.d.ts.map +1 -1
- package/components/ui/settings-controls.js +9 -9
- package/components/ui/slider.js +1 -1
- package/components/ui/stack.d.ts +2 -2
- package/components/ui/status-badge.helpers.d.ts +1 -1
- package/components/ui/switch.js +1 -1
- package/components/ui/tabs.d.ts.map +1 -1
- package/components/ui/tabs.js +2 -2
- package/components/ui/textarea.js +3 -3
- package/components/ui/toggle.js +1 -1
- package/components/ui/tooltip-extended.js +1 -1
- package/components/views/DynamicViewLoader.d.ts +12 -0
- package/components/views/DynamicViewLoader.d.ts.map +1 -1
- package/components/views/DynamicViewLoader.js +82 -18
- package/components/views/ShellViewAgentSurface.d.ts +1 -1
- package/components/views/TerminalPluginView.d.ts.map +1 -1
- package/components/views/TerminalPluginView.js +0 -1
- package/components/views/ViewIcon.d.ts.map +1 -1
- package/components/views/ViewIcon.js +22 -4
- package/components/views/ViewTileImage.d.ts +25 -0
- package/components/views/ViewTileImage.d.ts.map +1 -0
- package/components/views/ViewTileImage.js +52 -0
- package/components/views/view-interact-registry.d.ts +1 -1
- package/components/workspace/AppWorkspaceChrome.d.ts +12 -1
- package/components/workspace/AppWorkspaceChrome.d.ts.map +1 -1
- package/components/workspace/AppWorkspaceChrome.js +3 -3
- package/config/boot-config-store.d.ts +9 -8
- package/config/boot-config-store.d.ts.map +1 -1
- package/config/boot-config-store.js +1 -50
- package/config/branding-react.hooks.d.ts +1 -1
- package/config/branding.d.ts +2 -2
- package/config/config-catalog.d.ts +10 -366
- package/config/config-catalog.d.ts.map +1 -1
- package/config/config-catalog.js +10 -705
- package/config/index.d.ts +7 -7
- package/content-packs/index.d.ts +3 -3
- package/events/index.d.ts +33 -63
- package/events/index.d.ts.map +1 -1
- package/events/index.js +41 -37
- package/first-run/AgentPicker.d.ts +8 -2
- package/first-run/AgentPicker.d.ts.map +1 -1
- package/first-run/AgentPicker.js +4 -4
- package/first-run/CompactOnboarding.d.ts.map +1 -1
- package/first-run/CompactOnboarding.js +2 -2
- package/first-run/deep-link-handler.d.ts +1 -1
- package/first-run/ensure-store-build-workspace-folder.d.ts +1 -1
- package/first-run/first-run-config.d.ts +1 -1
- package/first-run/first-run.d.ts +3 -3
- package/first-run/mobile-runtime-mode.d.ts +1 -1
- package/first-run/pre-seed-local-runtime.d.ts +1 -1
- package/first-run/setup-steps.d.ts +1 -1
- package/first-run/use-first-run-controller.d.ts +3 -3
- package/first-run/use-first-run-controller.d.ts.map +1 -1
- package/first-run/use-first-run-controller.js +64 -68
- package/genui/actions.d.ts +1 -1
- package/genui/index.d.ts +8 -8
- package/genui/modes.d.ts +1 -1
- package/genui/pipe.d.ts +1 -1
- package/genui/renderer.d.ts +1 -1
- package/genui/starter-pack-demo.d.ts +1 -1
- package/genui/streaming.d.ts +1 -1
- package/genui/use-json-render-message.d.ts +1 -1
- package/genui/use-ui-stream.d.ts +1 -1
- package/genui/use-ui-stream.d.ts.map +1 -1
- package/genui/use-ui-stream.js +5 -5
- package/genui/validator.d.ts +1 -1
- package/hooks/BugReportProvider.d.ts +1 -1
- package/hooks/frame-budget.d.ts +124 -0
- package/hooks/frame-budget.d.ts.map +1 -0
- package/hooks/frame-budget.js +183 -0
- package/hooks/index.d.ts +27 -24
- package/hooks/index.d.ts.map +1 -1
- package/hooks/index.js +3 -0
- package/hooks/resource-cache.d.ts.map +1 -1
- package/hooks/resource-cache.js +36 -0
- package/hooks/useAccounts.d.ts +2 -4
- package/hooks/useAccounts.d.ts.map +1 -1
- package/hooks/useAccounts.js +6 -4
- package/hooks/useActivityEvents.d.ts +12 -0
- package/hooks/useActivityEvents.d.ts.map +1 -1
- package/hooks/useActivityEvents.js +48 -69
- package/hooks/useAuthStatus.d.ts +1 -1
- package/hooks/useAuthStatus.d.ts.map +1 -1
- package/hooks/useAuthStatus.js +19 -1
- package/hooks/useAvailableViews.d.ts +17 -3
- package/hooks/useAvailableViews.d.ts.map +1 -1
- package/hooks/useAvailableViews.js +89 -10
- package/hooks/useCachedResource.d.ts +1 -1
- package/hooks/useCloudHandoffPhase.d.ts +1 -1
- package/hooks/useCloudHandoffPhase.d.ts.map +1 -1
- package/hooks/useCloudHandoffPhase.js +15 -9
- package/hooks/useConnectorAccounts.d.ts +2 -4
- package/hooks/useConnectorAccounts.d.ts.map +1 -1
- package/hooks/useConnectorAccounts.js +1 -1
- package/hooks/useConnectorReconnect.d.ts +1 -1
- package/hooks/useConnectorSendAsAccount.d.ts +3 -5
- package/hooks/useConnectorSendAsAccount.d.ts.map +1 -1
- package/hooks/useContextMenu.d.ts +1 -1
- package/hooks/useContextMenu.d.ts.map +1 -1
- package/hooks/useContextMenu.js +6 -2
- package/hooks/useContinuousChat.d.ts +2 -2
- package/hooks/useDefaultProviderPresets.d.ts +1 -1
- package/hooks/useDesktopTabs.d.ts +1 -1
- package/hooks/useDesktopTabs.d.ts.map +1 -1
- package/hooks/useDesktopTabs.js +27 -9
- package/hooks/useFrameBudgetMonitor.d.ts +30 -0
- package/hooks/useFrameBudgetMonitor.d.ts.map +1 -0
- package/hooks/useFrameBudgetMonitor.js +105 -0
- package/hooks/useKeyboardShortcuts.d.ts +4 -0
- package/hooks/useKeyboardShortcuts.d.ts.map +1 -1
- package/hooks/useKeyboardShortcuts.js +19 -11
- package/hooks/useLayoutShiftMonitor.d.ts +43 -0
- package/hooks/useLayoutShiftMonitor.d.ts.map +1 -0
- package/hooks/useLayoutShiftMonitor.js +128 -0
- package/hooks/useNow.d.ts +10 -0
- package/hooks/useNow.d.ts.map +1 -0
- package/hooks/useNow.js +18 -0
- package/hooks/useRuntimeMode.d.ts +1 -1
- package/hooks/useSignalPairing.d.ts +2 -2
- package/hooks/useViewCatalog.d.ts +2 -2
- package/hooks/useViewCatalog.js +5 -5
- package/hooks/useViewEvent.d.ts +1 -1
- package/hooks/useVoiceChat.d.ts +17 -6
- package/hooks/useVoiceChat.d.ts.map +1 -1
- package/hooks/useVoiceChat.js +49 -2
- package/hooks/useWhatsAppPairing.d.ts +2 -2
- package/hooks/view-catalog.d.ts +37 -5
- package/hooks/view-catalog.d.ts.map +1 -1
- package/hooks/view-catalog.js +75 -5
- package/i18n/index.d.ts +1 -1
- package/i18n/locales/en.json +65 -21
- package/i18n/locales/es.json +15 -16
- package/i18n/locales/ja.json +15 -16
- package/i18n/locales/ko.json +15 -16
- package/i18n/locales/pt.json +15 -16
- package/i18n/locales/tl.json +15 -16
- package/i18n/locales/vi.json +15 -16
- package/i18n/locales/zh-CN.json +15 -16
- package/i18n/region.d.ts +1 -1
- package/index.d.ts +146 -138
- package/index.d.ts.map +1 -1
- package/index.js +12 -2
- package/layouts/chat-panel-layout/index.d.ts +1 -1
- package/layouts/content-layout/index.d.ts +1 -1
- package/layouts/index.d.ts +4 -4
- package/layouts/page-layout/index.d.ts +4 -4
- package/layouts/page-layout/page-layout-mobile-drawer.d.ts +1 -1
- package/layouts/page-layout/page-layout-types.d.ts +2 -2
- package/layouts/page-layout/page-layout.d.ts +1 -1
- package/layouts/workspace-layout/index.d.ts +3 -3
- package/layouts/workspace-layout/workspace-layout-types.d.ts +1 -1
- package/layouts/workspace-layout/workspace-layout.d.ts +1 -1
- package/layouts/workspace-layout/workspace-layout.d.ts.map +1 -1
- package/layouts/workspace-layout/workspace-layout.js +2 -1
- package/navigation/index.d.ts +4 -4
- package/navigation/index.d.ts.map +1 -1
- package/navigation/index.js +26 -16
- package/package.json +26 -10
- package/perf/PerfOverlay.d.ts +21 -0
- package/perf/PerfOverlay.d.ts.map +1 -0
- package/perf/PerfOverlay.js +90 -0
- package/perf/perf-hud-control.d.ts +21 -0
- package/perf/perf-hud-control.d.ts.map +1 -0
- package/perf/perf-hud-control.js +98 -0
- package/platform/assistant-launch-payload.d.ts.map +1 -1
- package/platform/assistant-launch-payload.js +0 -3
- package/platform/cloud-preference-patch.d.ts +1 -1
- package/platform/desktop-permissions-client.d.ts +1 -1
- package/platform/first-run-reset.d.ts +1 -1
- package/platform/index.d.ts +14 -14
- package/platform/init.d.ts +1 -1
- package/platform/mobile-permissions-client.d.ts +1 -1
- package/platform/platform-guards.d.ts +8 -0
- package/platform/platform-guards.d.ts.map +1 -1
- package/platform/platform-guards.js +2 -4
- package/platform/types.d.ts +1 -1
- package/platform/window-shell.d.ts +1 -1
- package/retained-lazy.d.ts +1 -2
- package/retained-lazy.d.ts.map +1 -1
- package/services/app-updates/update-policy.d.ts +1 -1
- package/services/app-updates/update-policy.d.ts.map +1 -1
- package/services/app-updates/update-policy.js +1 -1
- package/services/local-inference/active-model.d.ts +3 -3
- package/services/local-inference/assignments.d.ts +6 -8
- package/services/local-inference/assignments.d.ts.map +1 -1
- package/services/local-inference/assignments.js +31 -14
- package/services/local-inference/catalog-policy.d.ts +2 -1
- package/services/local-inference/catalog-policy.d.ts.map +1 -1
- package/services/local-inference/catalog-policy.js +6 -0
- package/services/local-inference/catalog.d.ts +1 -1
- package/services/local-inference/catalog.d.ts.map +1 -1
- package/services/local-inference/catalog.js +1 -1
- package/services/local-inference/custom-search.d.ts +2 -1
- package/services/local-inference/custom-search.d.ts.map +1 -1
- package/services/local-inference/custom-search.js +13 -21
- package/services/local-inference/device-bridge.d.ts +1 -1
- package/services/local-inference/downloader.d.ts +6 -5
- package/services/local-inference/downloader.d.ts.map +1 -1
- package/services/local-inference/downloader.js +9 -5
- package/services/local-inference/engine.d.ts +1 -1
- package/services/local-inference/external-scanner.d.ts +1 -1
- package/services/local-inference/hardware.d.ts +2 -2
- package/services/local-inference/hf-search.d.ts +5 -20
- package/services/local-inference/hf-search.d.ts.map +1 -1
- package/services/local-inference/hf-search.js +14 -272
- package/services/local-inference/home-model-status.d.ts +1 -1
- package/services/local-inference/index.d.ts +10 -10
- package/services/local-inference/readiness.d.ts +1 -1
- package/services/local-inference/recommendation.d.ts +1 -1
- package/services/local-inference/registry.d.ts +11 -13
- package/services/local-inference/registry.d.ts.map +1 -1
- package/services/local-inference/registry.js +18 -17
- package/services/local-inference/routing-policy.d.ts +6 -2
- package/services/local-inference/routing-policy.d.ts.map +1 -1
- package/services/local-inference/routing-policy.js +36 -8
- package/services/local-inference/service.d.ts +6 -6
- package/services/local-inference/service.d.ts.map +1 -1
- package/services/local-inference/service.js +19 -8
- package/services/local-inference/token-tree.d.ts +1 -1
- package/slots/task-coordinator-slots.d.ts +2 -2
- package/spatial/context.d.ts +1 -1
- package/spatial/dom.d.ts +9 -3
- package/spatial/dom.d.ts.map +1 -1
- package/spatial/dom.js +13 -3
- package/spatial/evaluate.d.ts +1 -1
- package/spatial/index.d.ts +6 -6
- package/spatial/primitives.d.ts +3 -3
- package/spatial/primitives.d.ts.map +1 -1
- package/spatial/primitives.js +10 -7
- package/spatial/tui/engine.d.ts +1 -1
- package/spatial/tui/index.d.ts +3 -3
- package/spatial/tui/index.d.ts.map +1 -1
- package/spatial/tui/index.js +2 -2
- package/spatial/tui/renderer.d.ts +9 -2
- package/spatial/tui/renderer.d.ts.map +1 -1
- package/spatial/tui/renderer.js +47 -2
- package/state/AppContext.d.ts +1 -1
- package/state/AppContext.d.ts.map +1 -1
- package/state/AppContext.js +83 -30
- package/state/ChatComposerContext.hooks.d.ts +1 -1
- package/state/ChatTurnStatusContext.hooks.d.ts +27 -0
- package/state/ChatTurnStatusContext.hooks.d.ts.map +1 -0
- package/state/ChatTurnStatusContext.hooks.js +24 -0
- package/state/CompanionSceneConfigContext.hooks.d.ts +3 -3
- package/state/ConversationMessagesContext.hooks.d.ts +26 -0
- package/state/ConversationMessagesContext.hooks.d.ts.map +1 -0
- package/state/ConversationMessagesContext.hooks.js +22 -0
- package/state/PtySessionsContext.hooks.d.ts +1 -1
- package/state/TranslationContext.hooks.d.ts +1 -1
- package/state/TranslationProvider.d.ts +2 -2
- package/state/action-notice.d.ts +31 -1
- package/state/action-notice.d.ts.map +1 -1
- package/state/action-notice.js +27 -1
- package/state/agent-profiles.d.ts +10 -2
- package/state/agent-profiles.d.ts.map +1 -1
- package/state/agent-profiles.js +20 -0
- package/state/agent-runtime-target.d.ts +2 -2
- package/state/app-store.d.ts +52 -0
- package/state/app-store.d.ts.map +1 -0
- package/state/app-store.js +169 -0
- package/state/autonomy.d.ts +1 -1
- package/state/chat-conversation-guards.d.ts +1 -1
- package/state/chat-conversation-guards.d.ts.map +1 -1
- package/state/chat-conversation-guards.js +0 -1
- package/state/complete-reset-local-state-after-wipe.d.ts +1 -1
- package/state/conversation-message-filter.d.ts +1 -1
- package/state/first-run-bootstrap.d.ts +1 -1
- package/state/first-run-restart.d.ts +1 -1
- package/state/handle-reset-applied-from-main.d.ts +2 -2
- package/state/index.d.ts +24 -18
- package/state/index.d.ts.map +1 -1
- package/state/index.js +6 -0
- package/state/internal.d.ts +11 -11
- package/state/notifications/navigate-deep-link.d.ts +27 -0
- package/state/notifications/navigate-deep-link.d.ts.map +1 -0
- package/state/notifications/navigate-deep-link.js +48 -0
- package/state/notifications/notification-store.d.ts +2 -2
- package/state/notifications/notification-store.d.ts.map +1 -1
- package/state/notifications/notification-store.js +4 -4
- package/state/parsers.d.ts +3 -3
- package/state/parsers.d.ts.map +1 -1
- package/state/parsers.js +9 -3
- package/state/persistence.d.ts +23 -8
- package/state/persistence.d.ts.map +1 -1
- package/state/persistence.js +86 -4
- package/state/screen-capture-bridge.d.ts +8 -0
- package/state/screen-capture-bridge.d.ts.map +1 -0
- package/state/screen-capture-bridge.js +124 -0
- package/state/setup-resume.d.ts +2 -2
- package/state/shell-routing.d.ts +3 -3
- package/state/shell-surface-store.d.ts +50 -0
- package/state/shell-surface-store.d.ts.map +1 -0
- package/state/shell-surface-store.js +130 -0
- package/state/springboard-layout.d.ts +85 -0
- package/state/springboard-layout.d.ts.map +1 -0
- package/state/springboard-layout.js +180 -0
- package/state/startup-coordinator.d.ts +1 -1
- package/state/startup-phase-hydrate.d.ts +5 -5
- package/state/startup-phase-hydrate.d.ts.map +1 -1
- package/state/startup-phase-hydrate.js +6 -0
- package/state/startup-phase-poll.d.ts +8 -8
- package/state/startup-phase-restore.d.ts +22 -6
- package/state/startup-phase-restore.d.ts.map +1 -1
- package/state/startup-phase-restore.js +91 -1
- package/state/startup-phase-runtime.d.ts +3 -3
- package/state/startup-telemetry.d.ts +73 -0
- package/state/startup-telemetry.d.ts.map +1 -0
- package/state/startup-telemetry.js +139 -0
- package/state/types.d.ts +36 -12
- package/state/types.d.ts.map +1 -1
- package/state/types.js +13 -0
- package/state/ui-preferences.d.ts +39 -0
- package/state/ui-preferences.d.ts.map +1 -1
- package/state/ui-preferences.js +30 -1
- package/state/use-startup-shell-controller.d.ts +8 -1
- package/state/use-startup-shell-controller.d.ts.map +1 -1
- package/state/use-startup-shell-controller.js +63 -3
- package/state/useApp.d.ts +1 -1
- package/state/useAppLifecycleEvents.d.ts +1 -1
- package/state/useAppProviderEffects.d.ts +3 -3
- package/state/useBackgroundConfig.d.ts +16 -0
- package/state/useBackgroundConfig.d.ts.map +1 -0
- package/state/useBackgroundConfig.js +21 -0
- package/state/useCharacterState.d.ts +2 -2
- package/state/useChatCallbacks.d.ts +40 -7
- package/state/useChatCallbacks.d.ts.map +1 -1
- package/state/useChatCallbacks.js +218 -132
- package/state/useChatLifecycle.d.ts +12 -4
- package/state/useChatLifecycle.d.ts.map +1 -1
- package/state/useChatLifecycle.js +26 -2
- package/state/useChatSend.d.ts +7 -4
- package/state/useChatSend.d.ts.map +1 -1
- package/state/useChatSend.js +126 -21
- package/state/useChatState.d.ts +4 -4
- package/state/useContentPack.d.ts.map +1 -1
- package/state/useContentPack.js +12 -2
- package/state/useDataLoaders.d.ts +6 -5
- package/state/useDataLoaders.d.ts.map +1 -1
- package/state/useDataLoaders.js +99 -5
- package/state/useDeveloperMode.d.ts.map +1 -1
- package/state/useDeveloperMode.js +48 -8
- package/state/useDisplayPreferences.d.ts +6 -2
- package/state/useDisplayPreferences.d.ts.map +1 -1
- package/state/useDisplayPreferences.js +40 -2
- package/state/useFirstRunCallbacks.d.ts +8 -8
- package/state/useFirstRunState.d.ts +3 -3
- package/state/useLifecycleState.d.ts +9 -2
- package/state/useLifecycleState.d.ts.map +1 -1
- package/state/useLifecycleState.js +26 -1
- package/state/useLogsState.d.ts +1 -1
- package/state/useMiscUiState.d.ts +1 -1
- package/state/useNavigationState.d.ts +2 -2
- package/state/usePluginsSkillsState.d.ts +3 -3
- package/state/usePreviewMode.d.ts +4 -0
- package/state/usePreviewMode.d.ts.map +1 -0
- package/state/usePreviewMode.js +93 -0
- package/state/useStartupCoordinator.d.ts +5 -5
- package/state/useStartupCoordinator.d.ts.map +1 -1
- package/state/useStartupCoordinator.js +9 -0
- package/state/useStreamingText.d.ts +1 -1
- package/state/useTriggersState.d.ts +1 -1
- package/state/useViewKinds.d.ts +19 -0
- package/state/useViewKinds.d.ts.map +1 -0
- package/state/useViewKinds.js +28 -0
- package/state/useWalletState.d.ts +3 -3
- package/state/vrm.d.ts +1 -1
- package/storybook/home-widget-decorator.d.ts +21 -0
- package/storybook/home-widget-decorator.d.ts.map +1 -0
- package/storybook/home-widget-decorator.js +53 -0
- package/storybook/mock-providers.d.ts +2 -2
- package/storybook/mock-providers.d.ts.map +1 -1
- package/storybook/mock-providers.helpers.d.ts +1 -1
- package/storybook/mock-providers.js +20 -1
- package/styles/base.css +66 -32
- package/styles/brand-gold.css +0 -7
- package/styles/styles.css +10 -5
- package/testing/layout-stability.d.ts +67 -0
- package/testing/layout-stability.d.ts.map +1 -0
- package/testing/layout-stability.js +106 -0
- package/testing/render-counter.d.ts +56 -0
- package/testing/render-counter.d.ts.map +1 -0
- package/testing/render-counter.js +62 -0
- package/themes/presets.d.ts.map +1 -1
- package/themes/presets.js +17 -15
- package/utils/attachment-url.d.ts +42 -0
- package/utils/attachment-url.d.ts.map +1 -0
- package/utils/attachment-url.js +130 -0
- package/utils/cloud-agent-base.d.ts +0 -1
- package/utils/cloud-agent-base.d.ts.map +1 -1
- package/utils/cloud-agent-base.js +0 -8
- package/utils/download-share.d.ts +65 -0
- package/utils/download-share.d.ts.map +1 -0
- package/utils/download-share.js +292 -0
- package/utils/event-source.d.ts +17 -0
- package/utils/event-source.d.ts.map +1 -0
- package/utils/event-source.js +36 -0
- package/utils/image-attachment.d.ts +156 -4
- package/utils/image-attachment.d.ts.map +1 -1
- package/utils/image-attachment.js +193 -4
- package/utils/index.d.ts +33 -33
- package/utils/workflow-executions.d.ts +1 -1
- package/utils/workflow-json.d.ts +1 -1
- package/view-telemetry.d.ts +30 -0
- package/view-telemetry.d.ts.map +1 -0
- package/view-telemetry.js +47 -0
- package/views/view-interact-protocol.d.ts +6 -0
- package/views/view-interact-protocol.d.ts.map +1 -1
- package/views/view-interact-protocol.js +6 -0
- package/voice/audio-frame-diarization-harness.d.ts +5 -0
- package/voice/audio-frame-diarization-harness.d.ts.map +1 -1
- package/voice/audio-frame-pump.d.ts +1 -1
- package/voice/character-voice-config.d.ts +2 -2
- package/voice/end-of-turn.d.ts +14 -11
- package/voice/end-of-turn.d.ts.map +1 -1
- package/voice/end-of-turn.js +14 -119
- package/voice/index.d.ts +11 -10
- package/voice/index.d.ts.map +1 -1
- package/voice/index.js +1 -0
- package/voice/jni-voice-harness.d.ts +19 -4
- package/voice/jni-voice-harness.d.ts.map +1 -1
- package/voice/jni-voice-harness.js +45 -10
- package/voice/jni-voice-pipeline.d.ts +27 -3
- package/voice/jni-voice-pipeline.d.ts.map +1 -1
- package/voice/jni-voice-pipeline.js +40 -2
- package/voice/local-asr-capture.js +1 -1
- package/voice/local-asr-transcribe.d.ts +2 -2
- package/voice/local-asr-transcribe.d.ts.map +1 -1
- package/voice/local-asr-transcribe.js +3 -3
- package/voice/playback-frame-pump.d.ts +49 -0
- package/voice/playback-frame-pump.d.ts.map +1 -0
- package/voice/playback-frame-pump.js +387 -0
- package/voice/should-respond.d.ts +7 -32
- package/voice/should-respond.d.ts.map +1 -1
- package/voice/should-respond.js +7 -68
- package/voice/useVoiceConfig.d.ts +1 -1
- package/voice/voice-capture-factory.d.ts +2 -2
- package/voice/voice-capture-factory.js +3 -3
- package/voice/voice-chat-playback.d.ts +1 -1
- package/voice/voice-chat-types.d.ts +2 -2
- package/voice/voice-provider-defaults.d.ts +8 -5
- package/voice/voice-provider-defaults.d.ts.map +1 -1
- package/voice/voice-provider-defaults.js +17 -10
- package/voice/voice-selftest/VoiceSelfTestShell.d.ts +11 -0
- package/voice/voice-selftest/VoiceSelfTestShell.d.ts.map +1 -1
- package/voice/voice-selftest/VoiceSelfTestShell.js +1 -4
- package/voice/voice-selftest/VoiceWorkbenchShell.d.ts +29 -0
- package/voice/voice-selftest/VoiceWorkbenchShell.d.ts.map +1 -0
- package/voice/voice-selftest/VoiceWorkbenchShell.js +133 -0
- package/voice/voice-selftest/timing.d.ts +8 -0
- package/voice/voice-selftest/timing.d.ts.map +1 -0
- package/voice/voice-selftest/timing.js +7 -0
- package/voice/voice-selftest/voice-selftest-harness.d.ts +1 -1
- package/voice/voice-selftest/voice-selftest-harness.d.ts.map +1 -1
- package/voice/voice-selftest/voice-selftest-harness.js +1 -2
- package/voice/voice-selftest/voice-workbench-player.d.ts +139 -0
- package/voice/voice-selftest/voice-workbench-player.d.ts.map +1 -0
- package/voice/voice-selftest/voice-workbench-player.js +401 -0
- package/voice/voice-turn-signal.d.ts +15 -26
- package/voice/voice-turn-signal.d.ts.map +1 -1
- package/voice/voice-turn-signal.js +7 -51
- package/widgets/WidgetHost.d.ts +10 -4
- package/widgets/WidgetHost.d.ts.map +1 -1
- package/widgets/WidgetHost.js +149 -30
- package/widgets/__fixtures__/home-widget-mock-data.d.ts +89 -0
- package/widgets/__fixtures__/home-widget-mock-data.d.ts.map +1 -0
- package/widgets/__fixtures__/home-widget-mock-data.js +388 -0
- package/widgets/home-attention-store.d.ts +40 -0
- package/widgets/home-attention-store.d.ts.map +1 -0
- package/widgets/home-attention-store.js +84 -0
- package/widgets/home-priority.d.ts +136 -0
- package/widgets/home-priority.d.ts.map +1 -0
- package/widgets/home-priority.js +276 -0
- package/widgets/index.d.ts +10 -7
- package/widgets/index.d.ts.map +1 -1
- package/widgets/index.js +4 -2
- package/widgets/registry-store.d.ts +9 -11
- package/widgets/registry-store.d.ts.map +1 -1
- package/widgets/registry-store.js +8 -12
- package/widgets/registry.d.ts +16 -4
- package/widgets/registry.d.ts.map +1 -1
- package/widgets/registry.js +432 -8
- package/widgets/types.d.ts +12 -4
- package/widgets/types.d.ts.map +1 -1
- package/widgets/types.js +7 -1
- package/widgets/useChatSidebarVisibility.d.ts +6 -3
- package/widgets/useChatSidebarVisibility.d.ts.map +1 -1
- package/widgets/useChatSidebarVisibility.js +15 -11
- package/widgets/visibility.d.ts +16 -10
- package/widgets/visibility.d.ts.map +1 -1
- package/widgets/visibility.js +25 -13
- package/api/agent-client-type-shim.d.ts +0 -24
- package/api/agent-client-type-shim.d.ts.map +0 -1
- package/api/agent-client-type-shim.js +0 -1
- package/cloud/account-security/use-document-title.d.ts +0 -10
- package/cloud/account-security/use-document-title.d.ts.map +0 -1
- package/cloud/account-security/use-document-title.js +0 -20
- package/cloud/admin/lib/format-usd.d.ts +0 -11
- package/cloud/admin/lib/format-usd.d.ts.map +0 -1
- package/cloud/admin/lib/format-usd.js +0 -18
- package/cloud/admin/use-document-title.d.ts +0 -10
- package/cloud/admin/use-document-title.d.ts.map +0 -1
- package/cloud/api-explorer/use-document-title.d.ts +0 -11
- package/cloud/api-explorer/use-document-title.d.ts.map +0 -1
- package/cloud/api-explorer/use-document-title.js +0 -21
- package/cloud/api-keys/use-document-title.d.ts +0 -10
- package/cloud/api-keys/use-document-title.d.ts.map +0 -1
- package/cloud/api-keys/use-document-title.js +0 -20
- package/cloud/applications/lib/auth-query.d.ts +0 -14
- package/cloud/applications/lib/auth-query.d.ts.map +0 -1
- package/cloud/applications/lib/auth-query.js +0 -18
- package/cloud/applications/lib/use-copy-feedback.d.ts +0 -9
- package/cloud/applications/lib/use-copy-feedback.d.ts.map +0 -1
- package/cloud/applications/lib/use-copy-feedback.js +0 -13
- package/cloud/applications/lib/use-session-auth.d.ts +0 -28
- package/cloud/applications/lib/use-session-auth.d.ts.map +0 -1
- package/cloud/approvals/lib/auth-query.d.ts +0 -18
- package/cloud/approvals/lib/auth-query.d.ts.map +0 -1
- package/cloud/approvals/lib/auth-query.js +0 -22
- package/cloud/approvals/lib/use-session-auth.d.ts +0 -28
- package/cloud/approvals/lib/use-session-auth.d.ts.map +0 -1
- package/cloud/approvals/lib/use-session-auth.js +0 -97
- package/cloud/documents/lib/auth-query.d.ts +0 -17
- package/cloud/documents/lib/auth-query.d.ts.map +0 -1
- package/cloud/documents/lib/use-session-auth.d.ts +0 -27
- package/cloud/documents/lib/use-session-auth.d.ts.map +0 -1
- package/cloud/documents/lib/use-session-auth.js +0 -96
- package/cloud/documents/use-document-title.d.ts +0 -11
- package/cloud/documents/use-document-title.d.ts.map +0 -1
- package/cloud/documents/use-document-title.js +0 -21
- package/cloud/instances/lib/format-bytes.d.ts +0 -19
- package/cloud/instances/lib/format-bytes.d.ts.map +0 -1
- package/cloud/instances/lib/format-bytes.js +0 -25
- package/cloud/instances/lib/use-copy-feedback.d.ts +0 -9
- package/cloud/instances/lib/use-copy-feedback.d.ts.map +0 -1
- package/cloud/instances/lib/use-document-title.d.ts +0 -13
- package/cloud/instances/lib/use-document-title.d.ts.map +0 -1
- package/cloud/instances/lib/use-document-title.js +0 -23
- package/cloud/monetization/lib/format-usd.d.ts +0 -12
- package/cloud/monetization/lib/format-usd.d.ts.map +0 -1
- package/cloud/monetization/lib/format-usd.js +0 -19
- package/cloud/monetization/use-document-title.d.ts +0 -10
- package/cloud/monetization/use-document-title.d.ts.map +0 -1
- package/cloud/monetization/use-document-title.js +0 -20
- package/components/local-inference/CustomModelSearch.d.ts +0 -19
- package/components/local-inference/CustomModelSearch.d.ts.map +0 -1
- package/components/local-inference/CustomModelSearch.js +0 -128
- package/components/pages/ViewCatalog.d.ts +0 -10
- package/components/pages/ViewCatalog.d.ts.map +0 -1
- package/components/pages/ViewCatalog.js +0 -600
- package/components/shell/ChatAmbientBackground.d.ts +0 -8
- package/components/shell/ChatAmbientBackground.d.ts.map +0 -1
- package/components/shell/ChatAmbientBackground.js +0 -51
|
@@ -23,12 +23,14 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
23
23
|
* 10-second auto-hide window.
|
|
24
24
|
*/
|
|
25
25
|
import { ArrowRight, CheckCircle2, ChevronDown, ChevronRight, Copy, Eye, EyeOff, Loader2, Plus, Trash2, } from "lucide-react";
|
|
26
|
-
import { useCallback, useEffect, useMemo, useRef, useState, } from "react";
|
|
26
|
+
import { memo, useCallback, useEffect, useMemo, useRef, useState, } from "react";
|
|
27
27
|
import { useAgentElement } from "../../agent-surface/index.js";
|
|
28
28
|
import { useTranslation } from "../../state/TranslationContext.hooks.js";
|
|
29
29
|
import { Button } from "../ui/button.js";
|
|
30
30
|
import { Input } from "../ui/input.js";
|
|
31
31
|
import { Label } from "../ui/label.js";
|
|
32
|
+
import { Select, SelectContent, SelectItem, SelectValue } from "../ui/select.js";
|
|
33
|
+
import { SettingsSelectTrigger } from "../ui/settings-controls.js";
|
|
32
34
|
const CATEGORY_LABEL = {
|
|
33
35
|
provider: "Providers",
|
|
34
36
|
plugin: "Plugins",
|
|
@@ -135,16 +137,14 @@ export function VaultInventoryPanel(props = {}) {
|
|
|
135
137
|
}
|
|
136
138
|
return buckets;
|
|
137
139
|
}, [entries]);
|
|
138
|
-
return (_jsxs("section", { "data-testid": "vault-inventory-panel", className: "space-y-2 pt-1", children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
defaultValue: "Stored locally, grouped by category.",
|
|
142
|
-
}) })] }), _jsxs(Button, { ref: addSecretRef, ...addSecretAgentProps, variant: "outline", size: "sm", className: "h-8 shrink-0 gap-1 rounded-sm px-2", onClick: () => setShowAdd((v) => !v), "aria-label": t("vaultinventory.addSecret", {
|
|
140
|
+
return (_jsxs("section", { "data-testid": "vault-inventory-panel", className: "space-y-2 pt-1", children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("p", { className: "min-w-0 text-sm font-medium text-txt", children: t("vaultinventory.storedSecrets", {
|
|
141
|
+
defaultValue: "Stored secrets",
|
|
142
|
+
}) }), _jsxs(Button, { ref: addSecretRef, ...addSecretAgentProps, variant: "outline", size: "sm", className: "h-8 shrink-0 gap-1 rounded-sm px-2", onClick: () => setShowAdd((v) => !v), "aria-label": t("vaultinventory.addSecret", {
|
|
143
143
|
defaultValue: "Add secret",
|
|
144
144
|
}), children: [_jsx(Plus, { className: "h-3.5 w-3.5", "aria-hidden": true }), t("vaultinventory.addSecret", { defaultValue: "Add secret" })] })] }), error && (_jsx("div", { "aria-live": "polite", "data-testid": "vault-inventory-error", className: "rounded-sm border border-danger/40 bg-danger/10 px-3 py-1.5 text-xs text-danger", children: error })), showAdd && (_jsx(AddSecretForm, { onClose: () => setShowAdd(false), onSaved: () => {
|
|
145
145
|
setShowAdd(false);
|
|
146
146
|
onChanged();
|
|
147
|
-
} })), entries === null ? (_jsxs("div", { className: "flex items-center gap-2 px-1 py-3 text-xs text-muted", children: [_jsx(Loader2, { className: "h-3.5 w-3.5 animate-spin", "aria-hidden": true }), " Loading\u2026"] })) : entries.length === 0 ? (_jsx("
|
|
147
|
+
} })), entries === null ? (_jsxs("div", { className: "flex items-center gap-2 px-1 py-3 text-xs text-muted", children: [_jsx(Loader2, { className: "h-3.5 w-3.5 animate-spin", "aria-hidden": true }), " Loading\u2026"] })) : entries.length === 0 ? (_jsx("p", { "data-testid": "vault-inventory-empty", className: "px-3 py-3 text-center text-xs text-muted", children: "No secrets yet. Add an API key." })) : (_jsx("div", { className: "space-y-3", children: CATEGORY_ORDER.map((cat) => {
|
|
148
148
|
const rows = grouped[cat];
|
|
149
149
|
if (rows.length === 0)
|
|
150
150
|
return null;
|
|
@@ -152,11 +152,11 @@ export function VaultInventoryPanel(props = {}) {
|
|
|
152
152
|
}) }))] }));
|
|
153
153
|
}
|
|
154
154
|
// ── Category group ─────────────────────────────────────────────────
|
|
155
|
-
function CategoryGroup({ category, entries, onChanged, onJumpToRouting, focusKey, focusProfileId, onFocusApplied, }) {
|
|
156
|
-
return (_jsxs("div", { "data-testid": `vault-category-${category}`, className: "space-y-1", children: [_jsx("p", { className: "text-2xs font-semibold text-muted", children: CATEGORY_LABEL[category] }), _jsx("ul", { className: "space-y-1
|
|
157
|
-
}
|
|
155
|
+
const CategoryGroup = memo(function CategoryGroup({ category, entries, onChanged, onJumpToRouting, focusKey, focusProfileId, onFocusApplied, }) {
|
|
156
|
+
return (_jsxs("div", { "data-testid": `vault-category-${category}`, className: "space-y-1", children: [_jsx("p", { className: "text-2xs font-semibold uppercase tracking-[0.08em] text-muted/70", children: CATEGORY_LABEL[category] }), _jsx("ul", { className: "space-y-1", children: entries.map((entry) => (_jsx("li", { children: _jsx(EntryRow, { entry: entry, onChanged: onChanged, onJumpToRouting: onJumpToRouting, focusKey: focusKey, focusProfileId: focusProfileId, onFocusApplied: onFocusApplied }) }, entry.key))) })] }));
|
|
157
|
+
});
|
|
158
158
|
// ── Single entry row ───────────────────────────────────────────────
|
|
159
|
-
function EntryRow({ entry, onChanged, onJumpToRouting, focusKey, focusProfileId, onFocusApplied, }) {
|
|
159
|
+
const EntryRow = memo(function EntryRow({ entry, onChanged, onJumpToRouting, focusKey, focusProfileId, onFocusApplied, }) {
|
|
160
160
|
const { t } = useTranslation();
|
|
161
161
|
const [revealed, setRevealed] = useState(null);
|
|
162
162
|
const [revealError, setRevealError] = useState(null);
|
|
@@ -233,7 +233,7 @@ function EntryRow({ entry, onChanged, onJumpToRouting, focusKey, focusProfileId,
|
|
|
233
233
|
}, [entry.key, entry.label, onChanged]);
|
|
234
234
|
const profileCount = entry.profiles?.length ?? 0;
|
|
235
235
|
return (_jsxs("div", { ref: rowRef, "data-testid": `vault-entry-row-${entry.key}`, className: "rounded-sm px-2 py-1.5 hover:bg-bg-muted/30", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Button, { variant: "ghost", size: "sm", className: "h-6 w-6 shrink-0 rounded-sm p-0 text-muted", onClick: () => setExpanded((v) => !v), "aria-label": expanded ? "Collapse" : "Expand", children: expanded ? (_jsx(ChevronDown, { className: "h-3.5 w-3.5", "aria-hidden": true })) : (_jsx(ChevronRight, { className: "h-3.5 w-3.5", "aria-hidden": true })) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("p", { className: "truncate text-xs font-medium text-txt", children: entry.label }), _jsx("p", { className: "truncate font-mono text-2xs text-muted", children: entry.key })] }), profileCount > 0 && (_jsxs("span", { "data-testid": `profile-badge-${entry.key}`, className: "shrink-0 rounded-full border border-accent/40 bg-accent/10 px-1.5 py-0.5 text-2xs font-medium text-accent", children: [profileCount, " profile", profileCount === 1 ? "" : "s"] })), !revealed ? (_jsxs(Button, { ref: revealRef, ...revealAgentProps, variant: "ghost", size: "sm", className: "h-7 shrink-0 gap-1 rounded-sm px-2 text-xs text-muted", onClick: () => void reveal(), disabled: revealing, "aria-label": `Reveal ${entry.label}`, children: [revealing ? (_jsx(Loader2, { className: "h-3.5 w-3.5 animate-spin", "aria-hidden": true })) : (_jsx(Eye, { className: "h-3.5 w-3.5", "aria-hidden": true })), "Reveal"] })) : (_jsxs(Button, { ref: revealRef, ...revealAgentProps, variant: "ghost", size: "sm", className: "h-7 shrink-0 gap-1 rounded-sm px-2 text-xs text-muted", onClick: hide, "aria-label": `Hide ${entry.label}`, children: [_jsx(EyeOff, { className: "h-3.5 w-3.5", "aria-hidden": true }), "Hide"] })), _jsx(Button, { ref: deleteRef, ...deleteAgentProps, variant: "ghost", size: "sm", className: "h-7 w-7 shrink-0 rounded-sm p-0 text-muted hover:text-danger", onClick: () => void onDelete(), "aria-label": `Delete ${entry.label}`, children: _jsx(Trash2, { className: "h-3.5 w-3.5", "aria-hidden": true }) })] }), revealed && (_jsxs("div", { "data-testid": `vault-revealed-${entry.key}`, className: "mt-1.5 flex items-center gap-2 rounded-sm border border-border/50 bg-bg/40 p-2", children: [_jsx("code", { className: "flex-1 truncate font-mono text-2xs text-txt", children: revealed.value }), revealed.source === "profile" && revealed.profileId && (_jsx("span", { className: "shrink-0 rounded-full border border-accent/40 bg-accent/10 px-1.5 py-0.5 text-2xs text-accent", children: revealed.profileId })), _jsxs(Button, { variant: "ghost", size: "sm", className: "h-6 shrink-0 gap-1 rounded-sm px-2 text-2xs", onClick: () => void copy(), "aria-label": t("vaultinventory.copy", { defaultValue: "Copy" }), children: [_jsx(Copy, { className: "h-3 w-3", "aria-hidden": true }), " ", t("vaultinventory.copy", { defaultValue: "Copy" })] })] })), revealError && (_jsx("p", { className: "mt-1 text-2xs text-danger", children: revealError })), expanded && (_jsx(ProfilesPanel, { entry: entry, onChanged: onChanged, onJumpToRouting: onJumpToRouting, highlightProfileId: focusKey === entry.key ? focusProfileId : null }))] }));
|
|
236
|
-
}
|
|
236
|
+
});
|
|
237
237
|
// ── Profiles management ────────────────────────────────────────────
|
|
238
238
|
function ProfilesPanel({ entry, onChanged, onJumpToRouting, highlightProfileId, }) {
|
|
239
239
|
const { t } = useTranslation();
|
|
@@ -359,7 +359,7 @@ function ProfilesPanel({ entry, onChanged, onJumpToRouting, highlightProfileId,
|
|
|
359
359
|
}
|
|
360
360
|
onChanged();
|
|
361
361
|
}, [entry.key, onChanged]);
|
|
362
|
-
return (_jsxs("div", { "data-testid": `profiles-panel-${entry.key}`, className: "mt-2 space-y-2
|
|
362
|
+
return (_jsxs("div", { "data-testid": `profiles-panel-${entry.key}`, className: "mt-2 space-y-2 border-l-2 border-border/40 pl-3", children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsx("p", { className: "text-2xs font-semibold text-muted", children: t("vaultinventory.profiles.title", { defaultValue: "Profiles" }) }), _jsxs("div", { className: "flex items-center gap-1", children: [hasProfiles && onJumpToRouting && (_jsxs(Button, { ref: jumpRoutingRef, ...jumpRoutingAgentProps, variant: "ghost", size: "sm", className: "h-6 gap-1 rounded-sm px-2 text-2xs", onClick: () => onJumpToRouting(entry.key), "aria-label": t("vaultinventory.profiles.routingRulesFor", {
|
|
363
363
|
label: entry.label,
|
|
364
364
|
defaultValue: "Routing rules for {{label}}",
|
|
365
365
|
}), children: [t("vaultinventory.profiles.routingRules", {
|
|
@@ -372,7 +372,7 @@ function ProfilesPanel({ entry, onChanged, onJumpToRouting, highlightProfileId,
|
|
|
372
372
|
defaultValue: "Enable profiles for this key",
|
|
373
373
|
}), children: [migrating ? (_jsx(Loader2, { className: "h-3 w-3 animate-spin", "aria-hidden": true })) : (_jsx(Plus, { className: "h-3 w-3", "aria-hidden": true })), t("vaultinventory.profiles.enable", {
|
|
374
374
|
defaultValue: "Enable profiles",
|
|
375
|
-
})] }))] })] }), err && (_jsx("p", { className: "text-2xs text-danger", "aria-live": "polite", children: err })), hasProfiles && (_jsx("ul", { className: "space-y-1", children: profiles.map((p) => (_jsx(ProfileRow, { entryKey: entry.key, profileId: p.id, profileLabel: p.label, active: entry.activeProfile === p.id, highlight: highlightProfileId === p.id, onActivate: () => void onActivate(p.id), onDelete: () => void onDelete(p.id) }, p.id))) })), showAdd && (_jsxs("form", { onSubmit: onAdd, "data-testid": `add-profile-form-${entry.key}`, className: "space-y-1.5
|
|
375
|
+
})] }))] })] }), err && (_jsx("p", { className: "text-2xs text-danger", "aria-live": "polite", children: err })), hasProfiles && (_jsx("ul", { className: "space-y-1", children: profiles.map((p) => (_jsx(ProfileRow, { entryKey: entry.key, profileId: p.id, profileLabel: p.label, active: entry.activeProfile === p.id, highlight: highlightProfileId === p.id, onActivate: () => void onActivate(p.id), onDelete: () => void onDelete(p.id) }, p.id))) })), showAdd && (_jsxs("form", { onSubmit: onAdd, "data-testid": `add-profile-form-${entry.key}`, className: "space-y-1.5 border-l-2 border-border/40 pl-3", children: [_jsxs("div", { className: "grid grid-cols-1 gap-1.5 sm:grid-cols-2", children: [_jsxs("div", { children: [_jsx(Label, { className: "text-2xs text-muted", children: t("vaultinventory.profiles.idLabel", {
|
|
376
376
|
defaultValue: "Profile id",
|
|
377
377
|
}) }), _jsx(Input, { ref: newIdRef, ...newIdAgentProps, value: newId, onChange: (e) => setNewId(e.target.value), placeholder: t("vaultinventory.profiles.idPlaceholder", {
|
|
378
378
|
defaultValue: "work",
|
|
@@ -392,8 +392,7 @@ function ProfilesPanel({ entry, onChanged, onJumpToRouting, highlightProfileId,
|
|
|
392
392
|
defaultValue: "Save profile",
|
|
393
393
|
}) })] })] }))] }));
|
|
394
394
|
}
|
|
395
|
-
|
|
396
|
-
function ProfileRow({ entryKey, profileId, profileLabel, active, highlight, onActivate, onDelete, }) {
|
|
395
|
+
const ProfileRow = memo(function ProfileRow({ entryKey, profileId, profileLabel, active, highlight, onActivate, onDelete, }) {
|
|
397
396
|
const { t } = useTranslation();
|
|
398
397
|
const { ref: activateRef, agentProps: activateAgentProps } = useAgentElement({
|
|
399
398
|
id: `vault-profile-activate-${entryKey}-${profileId}`,
|
|
@@ -410,7 +409,7 @@ function ProfileRow({ entryKey, profileId, profileLabel, active, highlight, onAc
|
|
|
410
409
|
group: "vault-profiles",
|
|
411
410
|
onActivate: onDelete,
|
|
412
411
|
});
|
|
413
|
-
return (_jsxs("li", { className: `flex items-center gap-2 rounded-sm px-1.5 py-1 text-xs ${highlight ? "
|
|
412
|
+
return (_jsxs("li", { className: `flex items-center gap-2 rounded-sm px-1.5 py-1 text-xs ${highlight ? " " : ""}`, children: [_jsx("input", { ref: activateRef, ...activateAgentProps, type: "radio", name: `active-${entryKey}`, checked: active, onChange: onActivate, className: "h-3 w-3 cursor-pointer accent-accent", "aria-current": active ? "true" : undefined, "aria-label": t("vaultinventory.profiles.makeActive", {
|
|
414
413
|
label: profileLabel,
|
|
415
414
|
defaultValue: "Make {{label}} active",
|
|
416
415
|
}) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("p", { className: "truncate font-medium text-txt", children: profileLabel }), _jsx("p", { className: "truncate font-mono text-2xs text-muted", children: profileId })] }), active && (_jsxs("span", { className: "shrink-0 inline-flex items-center gap-0.5 rounded-full border border-accent/40 bg-accent/10 px-1.5 py-0.5 text-2xs font-medium text-accent", children: [_jsx(CheckCircle2, { className: "h-3 w-3", "aria-hidden": true }), " ", t("vaultinventory.profiles.active", {
|
|
@@ -419,7 +418,14 @@ function ProfileRow({ entryKey, profileId, profileLabel, active, highlight, onAc
|
|
|
419
418
|
label: profileLabel,
|
|
420
419
|
defaultValue: "Delete profile {{label}}",
|
|
421
420
|
}), onClick: onDelete, children: _jsx(Trash2, { className: "h-3 w-3", "aria-hidden": true }) })] }));
|
|
422
|
-
}
|
|
421
|
+
},
|
|
422
|
+
// onActivate/onDelete are allocated inline per row but always act on this
|
|
423
|
+
// row's profileId, so compare only the render-affecting primitive props.
|
|
424
|
+
(prev, next) => prev.entryKey === next.entryKey &&
|
|
425
|
+
prev.profileId === next.profileId &&
|
|
426
|
+
prev.profileLabel === next.profileLabel &&
|
|
427
|
+
prev.active === next.active &&
|
|
428
|
+
prev.highlight === next.highlight);
|
|
423
429
|
// ── Add-secret form ────────────────────────────────────────────────
|
|
424
430
|
function AddSecretForm({ onClose, onSaved, }) {
|
|
425
431
|
const { t } = useTranslation();
|
|
@@ -510,13 +516,11 @@ function AddSecretForm({ onClose, onSaved, }) {
|
|
|
510
516
|
}
|
|
511
517
|
onSaved();
|
|
512
518
|
}, [category, key, label, providerId, value, onSaved]);
|
|
513
|
-
return (_jsxs("form", { onSubmit: onSubmit, "data-testid": "vault-add-secret-form", className: "space-y-2
|
|
514
|
-
defaultValue: "Stored locally and encrypted at rest.",
|
|
515
|
-
}) }), _jsxs("div", { className: "grid grid-cols-1 gap-2 sm:grid-cols-2", children: [_jsxs("div", { children: [_jsx(Label, { className: "text-2xs text-muted", children: t("vaultinventory.addForm.key.label", { defaultValue: "Key" }) }), _jsx(Input, { ref: keyRef, ...keyAgentProps, value: key, onChange: (e) => setKey(e.target.value), placeholder: "OPENROUTER_API_KEY", className: "h-8 font-mono text-xs", autoComplete: "off", required: true })] }), _jsxs("div", { children: [_jsx(Label, { className: "text-2xs text-muted", children: t("vaultinventory.addForm.displayLabel.label", {
|
|
519
|
+
return (_jsxs("form", { onSubmit: onSubmit, "data-testid": "vault-add-secret-form", className: "space-y-2 border-l-2 border-border/50 pl-3", children: [_jsxs("div", { className: "grid grid-cols-1 gap-2 sm:grid-cols-2", children: [_jsxs("div", { children: [_jsx(Label, { className: "text-2xs text-muted", children: t("vaultinventory.addForm.key.label", { defaultValue: "Key" }) }), _jsx(Input, { ref: keyRef, ...keyAgentProps, value: key, onChange: (e) => setKey(e.target.value), placeholder: "OPENROUTER_API_KEY", className: "h-8 font-mono text-xs", autoComplete: "off", required: true })] }), _jsxs("div", { children: [_jsx(Label, { className: "text-2xs text-muted", children: t("vaultinventory.addForm.displayLabel.label", {
|
|
516
520
|
defaultValue: "Display label",
|
|
517
521
|
}) }), _jsx(Input, { ref: labelRef, ...labelAgentProps, value: label, onChange: (e) => setLabel(e.target.value), placeholder: "OpenRouter", className: "h-8 text-xs", autoComplete: "off" })] })] }), _jsxs("div", { children: [_jsx(Label, { className: "text-2xs text-muted", children: t("vaultinventory.addForm.value.label", { defaultValue: "Value" }) }), _jsx(Input, { ref: valueRef, ...valueAgentProps, type: "password", value: value, onChange: (e) => setValue(e.target.value), className: "h-8 font-mono text-xs", autoComplete: "new-password", required: true })] }), _jsxs("div", { className: "grid grid-cols-1 gap-2 sm:grid-cols-2", children: [_jsxs("div", { children: [_jsx(Label, { className: "text-2xs text-muted", children: t("vaultinventory.addForm.category.label", {
|
|
518
522
|
defaultValue: "Category",
|
|
519
|
-
}) }),
|
|
523
|
+
}) }), _jsxs(Select, { value: category, onValueChange: (value) => setCategory(value), children: [_jsx(SettingsSelectTrigger, { ref: categoryRef, variant: "soft", className: "block w-full", "aria-label": "Secret category", ...categoryAgentProps, children: _jsx(SelectValue, {}) }), _jsx(SelectContent, { children: CATEGORY_INPUT_OPTIONS.map((opt) => (_jsx(SelectItem, { value: opt.value, children: t(opt.labelKey, { defaultValue: opt.defaultLabel }) }, opt.value))) })] })] }), _jsxs("div", { children: [_jsx(Label, { className: "text-2xs text-muted", children: t("vaultinventory.addForm.providerId.label", {
|
|
520
524
|
defaultValue: "Provider id (optional)",
|
|
521
525
|
}) }), _jsx(Input, { ref: providerRef, ...providerAgentProps, value: providerId, onChange: (e) => setProviderId(e.target.value), placeholder: "openrouter", className: "h-8 text-xs", autoComplete: "off" })] })] }), err && (_jsx("p", { className: "text-2xs text-danger", "aria-live": "polite", children: err })), _jsxs("div", { className: "flex justify-end gap-2 pt-1", children: [_jsx(Button, { ref: cancelRef, ...cancelAgentProps, type: "button", variant: "ghost", size: "sm", className: "h-7 rounded-sm px-3 text-xs", onClick: onClose, disabled: submitting, children: t("vaultinventory.addForm.cancel", { defaultValue: "Cancel" }) }), _jsx(Button, { ref: saveRef, ...saveAgentProps, type: "submit", variant: "default", size: "sm", className: "h-7 rounded-sm px-3 text-xs", disabled: submitting || !key.trim() || !value, children: submitting
|
|
522
526
|
? t("vaultinventory.addForm.saving", { defaultValue: "Saving…" })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceConfigView.d.ts","sourceRoot":"","sources":["../../../../../../src/components/settings/VoiceConfigView.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"VoiceConfigView.d.ts","sourceRoot":"","sources":["../../../../../../src/components/settings/VoiceConfigView.tsx"],"names":[],"mappings":"AAoDA,wBAAgB,oBAAoB,4CAkXnC;AA4jBD,wBAAgB,eAAe,4CAyZ9B"}
|
|
@@ -7,11 +7,11 @@ import { invokeDesktopBridgeRequest, isElectrobunRuntime } from "../../bridge/in
|
|
|
7
7
|
import { getSwabblePlugin, } from "../../bridge/native-plugins.js";
|
|
8
8
|
import { dispatchWindowEvent, VOICE_CONFIG_UPDATED_EVENT } from "../../events/index.js";
|
|
9
9
|
import { useDefaultProviderPresets } from "../../hooks/useDefaultProviderPresets.js";
|
|
10
|
-
import {
|
|
10
|
+
import { useAppSelector } from "../../state/index.js";
|
|
11
11
|
import { hasConfiguredApiKey, PREMADE_VOICES, sanitizeApiKey, VOICE_PROVIDERS, } from "../../voice/index.js";
|
|
12
12
|
import { CloudConnectionStatus, CloudSourceModeToggle, } from "../cloud/CloudSourceControls.js";
|
|
13
13
|
import { Button } from "../ui/button.js";
|
|
14
|
-
import { Card, CardContent,
|
|
14
|
+
import { Card, CardContent, CardHeader, CardTitle } from "../ui/card.js";
|
|
15
15
|
import { Input } from "../ui/input.js";
|
|
16
16
|
import { SaveFooter } from "../ui/save-footer.js";
|
|
17
17
|
import { SettingsInput } from "../ui/settings-controls.js";
|
|
@@ -34,7 +34,7 @@ export function DesktopTalkModePanel() {
|
|
|
34
34
|
const [busyAction, setBusyAction] = useState(null);
|
|
35
35
|
const [error, setError] = useState(null);
|
|
36
36
|
const [message, setMessage] = useState(null);
|
|
37
|
-
const
|
|
37
|
+
const t = useAppSelector((s) => s.t);
|
|
38
38
|
const [phrase, setPhrase] = useState(t("voiceconfigview.testPhrase"));
|
|
39
39
|
const [panelState, setPanelState] = useState({
|
|
40
40
|
state: "idle",
|
|
@@ -176,9 +176,9 @@ export function DesktopTalkModePanel() {
|
|
|
176
176
|
if (!desktopRuntime) {
|
|
177
177
|
return (_jsx(Card, { className: "border-border/60 bg-card/92 ", children: _jsx(CardContent, { className: "px-4 py-4 text-xs leading-5 text-muted", children: t("voiceconfigview.DesktopTalkModeDesktopOnly") }) }));
|
|
178
178
|
}
|
|
179
|
-
return (_jsxs(Card, { className: "border-border/60 bg-card/92 ", children: [_jsx(CardHeader, { className: "px-4 py-4 pb-0", children: _jsxs("div", { className: "flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between", children: [
|
|
179
|
+
return (_jsxs(Card, { className: "border-border/60 bg-card/92 ", children: [_jsx(CardHeader, { className: "px-4 py-4 pb-0", children: _jsxs("div", { className: "flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between", children: [_jsx(CardTitle, { className: "text-sm", children: t("voiceconfigview.DesktopTalkMode") }), _jsx(Button, { ref: refreshRef, variant: "outline", size: "sm", className: "min-h-10 rounded-sm px-3 text-xs-tight font-semibold", onClick: () => void runAction("voice-talkmode-refresh", async () => { }, t("voiceconfigview.TalkModeStateRefreshed")), disabled: loading || busyAction === "voice-talkmode-refresh", ...refreshAgentProps, children: t("common.refresh") })] }) }), _jsxs(CardContent, { className: "flex flex-col gap-4 px-4 pb-4", children: [(error || message) && (_jsx("div", { className: `rounded-sm border px-3 py-2.5 text-xs-tight leading-5 ${error
|
|
180
180
|
? "border-danger/40 bg-danger/10 text-danger"
|
|
181
|
-
: "border-ok/40 bg-ok/10 text-ok"}`, children: error ?? message })), _jsxs("div", { className: "
|
|
181
|
+
: "border-ok/40 bg-ok/10 text-ok"}`, children: error ?? message })), _jsxs("div", { className: "flex flex-wrap gap-x-6 gap-y-2 text-xs-tight", children: [_jsxs("div", { children: [_jsx("div", { className: "text-xs text-muted", children: t("voiceconfigview.State") }), _jsx("div", { className: "font-semibold text-txt", children: panelState.state })] }), _jsxs("div", { children: [_jsx("div", { className: "text-xs text-muted", children: t("common.enabled") }), _jsx("div", { className: "font-semibold text-txt", children: panelState.enabled ? t("common.yes") : t("common.no") })] }), _jsxs("div", { children: [_jsx("div", { className: "text-xs text-muted", children: t("voiceconfigview.Speaking") }), _jsx("div", { className: "font-semibold text-txt", children: panelState.speaking ? t("common.yes") : t("common.no") })] })] }), _jsx(Input, { ref: phraseRef, type: "text", className: "min-h-10 rounded-sm bg-bg text-xs", value: phrase, onChange: (event) => setPhrase(event.target.value), placeholder: t("voiceconfigview.testPhrase"), ...phraseAgentProps }), _jsxs("div", { className: "flex flex-col gap-2 sm:flex-row sm:flex-wrap", children: [_jsx(Button, { ref: startStopRef, variant: "outline", size: "sm", className: "min-h-10 rounded-sm px-3 text-xs-tight font-semibold", onClick: () => void runAction("voice-talkmode-start-stop", async () => {
|
|
182
182
|
if (panelState.enabled) {
|
|
183
183
|
await invokeDesktopBridgeRequest({
|
|
184
184
|
rpcMethod: "talkmodeStop",
|
|
@@ -232,12 +232,12 @@ function ModelSizeButton({ id, active, hint, onSelect, }) {
|
|
|
232
232
|
return (_jsxs(Button, { ref: ref, variant: active ? "default" : "outline", size: "sm", className: "h-auto min-h-12 flex-col rounded-sm py-2", onClick: onSelect, ...agentProps, children: [_jsx("div", { className: "font-semibold", children: id }), hint && _jsx("div", { className: "mt-0.5 text-xs opacity-90", children: hint })] }));
|
|
233
233
|
}
|
|
234
234
|
function WakeWordSection({ serverConfig, }) {
|
|
235
|
-
const
|
|
235
|
+
const t = useAppSelector((s) => s.t);
|
|
236
236
|
const [triggers, setTriggers] = useState(["eliza"]);
|
|
237
237
|
const [triggerInput, setTriggerInput] = useState("");
|
|
238
238
|
const [postTriggerGap, setPostTriggerGap] = useState(0.45);
|
|
239
239
|
const [modelSize, setModelSize] = useState("base");
|
|
240
|
-
const
|
|
240
|
+
const meterRef = useRef(null);
|
|
241
241
|
const [enabled, setEnabled] = useState(false);
|
|
242
242
|
useEffect(() => {
|
|
243
243
|
void (async () => {
|
|
@@ -268,7 +268,13 @@ function WakeWordSection({ serverConfig, }) {
|
|
|
268
268
|
void (async () => {
|
|
269
269
|
try {
|
|
270
270
|
handle = await getSwabblePlugin().addListener("audioLevel", (evt) => {
|
|
271
|
-
|
|
271
|
+
// Write the meter directly to the DOM to avoid a React re-render of
|
|
272
|
+
// the whole section on every (tens-of-Hz) mic frame. Drive a
|
|
273
|
+
// compositor-only transform (scaleX) rather than `width` so the
|
|
274
|
+
// per-frame update doesn't force layout.
|
|
275
|
+
if (meterRef.current) {
|
|
276
|
+
meterRef.current.style.transform = `scaleX(${Math.min(Math.max(evt.level, 0), 1)})`;
|
|
277
|
+
}
|
|
272
278
|
});
|
|
273
279
|
}
|
|
274
280
|
catch {
|
|
@@ -393,19 +399,17 @@ function WakeWordSection({ serverConfig, }) {
|
|
|
393
399
|
}), ...enableAgentProps })] })] }), _jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsx("span", { className: "text-xs font-semibold", children: t("voiceconfigview.Triggers") }), _jsxs("div", { className: "flex min-h-10 flex-wrap gap-1.5 rounded-sm border border-border/60 bg-bg px-2 py-2", children: [triggers.map((trigger) => (_jsxs("span", { className: "flex min-h-7 items-center gap-1 rounded-full border border-accent/30 bg-accent/10 px-2 py-1 text-xs text-txt", children: [trigger, triggers.length > 1 && (_jsx(RemoveTriggerButton, { trigger: trigger, onRemove: () => removeTrigger(trigger), label: t("voiceconfigview.RemoveTrigger", {
|
|
394
400
|
defaultValue: 'Remove trigger "{{trigger}}"',
|
|
395
401
|
trigger,
|
|
396
|
-
}) }))] }, trigger))), _jsx(Input, { ref: addTriggerRef, type: "text", className: "h-7 min-w-[120px] flex-1 border-0 bg-transparent px-1 text-xs shadow-none
|
|
402
|
+
}) }))] }, trigger))), _jsx(Input, { ref: addTriggerRef, type: "text", className: "h-7 min-w-[120px] flex-1 border-0 bg-transparent px-1 text-xs shadow-none ", placeholder: t("voiceconfigview.AddTrigger"), value: triggerInput, onChange: (e) => setTriggerInput(e.target.value), onKeyDown: (e) => {
|
|
397
403
|
if (e.key === "Enter" || e.key === ",") {
|
|
398
404
|
e.preventDefault();
|
|
399
405
|
addTrigger(triggerInput);
|
|
400
406
|
setTriggerInput("");
|
|
401
407
|
}
|
|
402
|
-
}, ...addTriggerAgentProps })] })
|
|
408
|
+
}, ...addTriggerAgentProps })] })] }), _jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("span", { className: "text-xs font-semibold", children: t("voiceconfigview.PostTriggerGap", {
|
|
403
409
|
defaultValue: "Post-trigger gap",
|
|
404
410
|
}) }), _jsxs("span", { className: "text-xs text-muted", children: [postTriggerGap.toFixed(2), "s"] })] }), _jsx("input", { ref: gapRef, type: "range", min: 0.1, max: 2.0, step: 0.05, value: postTriggerGap, className: "w-full accent-accent", "aria-label": t("voiceconfigview.PostTriggerGap", {
|
|
405
411
|
defaultValue: "Post-trigger gap",
|
|
406
|
-
}), onChange: (e) => void handlePostTriggerGapChange(parseFloat(e.target.value)), ...gapAgentProps }),
|
|
407
|
-
defaultValue: "Quiet time after the wake word before listening resumes.",
|
|
408
|
-
}) })] }), _jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsx("span", { className: "text-xs font-semibold", children: t("voiceconfigview.ModelSize") }), _jsx("div", { className: "grid grid-cols-2 gap-1.5 xl:grid-cols-5", children: MODEL_SIZES.map((m) => (_jsx(ModelSizeButton, { id: m.id, active: modelSize === m.id, hint: m.hintKey ? t(m.hintKey) : undefined, onSelect: () => void handleModelSizeChange(m.id) }, m.id))) })] }), _jsxs("div", { className: "flex flex-col gap-1", children: [_jsx("span", { className: "text-xs font-semibold", children: t("voiceconfigview.Microphone") }), _jsx("div", { className: "h-2 w-full overflow-hidden rounded-full bg-border/70", children: _jsx("div", { className: "h-full rounded-full bg-ok transition-all duration-75", style: { width: `${Math.min(audioLevel * 100, 100)}%` } }) })] })] }));
|
|
412
|
+
}), onChange: (e) => void handlePostTriggerGapChange(parseFloat(e.target.value)), ...gapAgentProps })] }), _jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsx("span", { className: "text-xs font-semibold", children: t("voiceconfigview.ModelSize") }), _jsx("div", { className: "grid grid-cols-2 gap-1.5 xl:grid-cols-5", children: MODEL_SIZES.map((m) => (_jsx(ModelSizeButton, { id: m.id, active: modelSize === m.id, hint: m.hintKey ? t(m.hintKey) : undefined, onSelect: () => void handleModelSizeChange(m.id) }, m.id))) })] }), _jsxs("div", { className: "flex flex-col gap-1", children: [_jsx("span", { className: "text-xs font-semibold", children: t("voiceconfigview.Microphone") }), _jsx("div", { className: "h-2 w-full overflow-hidden rounded-full bg-border/70", children: _jsx("div", { ref: meterRef, className: "h-full w-full origin-left rounded-full bg-ok transition-transform duration-75", style: { transform: "scaleX(0)" } }) })] })] }));
|
|
409
413
|
}
|
|
410
414
|
function AsrProviderButton({ id, label, hint, active, onSelect, }) {
|
|
411
415
|
const { ref, agentProps } = useAgentElement({
|
|
@@ -423,7 +427,7 @@ function AsrProviderButton({ id, label, hint, active, onSelect, }) {
|
|
|
423
427
|
* hidden until the AdvancedToggle is on.
|
|
424
428
|
*/
|
|
425
429
|
function AsrAdvancedSection({ currentAsrProvider, onChange, defaultAsrProvider, }) {
|
|
426
|
-
const
|
|
430
|
+
const t = useAppSelector((s) => s.t);
|
|
427
431
|
const [localStatusBusy, setLocalStatusBusy] = useState(false);
|
|
428
432
|
// A non-empty local-inference downloads list means the model bundle isn't
|
|
429
433
|
// ready yet, so we show "downloading" rather than implying it's online.
|
|
@@ -452,14 +456,14 @@ function AsrAdvancedSection({ currentAsrProvider, onChange, defaultAsrProvider,
|
|
|
452
456
|
cancelled = true;
|
|
453
457
|
};
|
|
454
458
|
}, [currentAsrProvider]);
|
|
455
|
-
return (_jsxs("div", { className: "
|
|
459
|
+
return (_jsxs("div", { className: "flex flex-col gap-3", children: [_jsxs("div", { className: "flex flex-col gap-0.5", children: [_jsx("span", { className: "text-[11px] font-semibold uppercase tracking-[0.08em] text-muted/70", children: t("voiceconfigview.AsrProvider", {
|
|
456
460
|
defaultValue: "Speech-to-text",
|
|
457
461
|
}) }), _jsx("span", { className: "text-xs text-muted", children: t("voiceconfigview.AsrDeviceDefault", {
|
|
458
462
|
defaultValue: "Device default: {{provider}}",
|
|
459
463
|
provider: defaultAsrProvider,
|
|
460
|
-
}) })] }), _jsx("div", { className: "grid gap-2 sm:grid-cols-3", children: ASR_PROVIDERS.map((p) => (_jsx(AsrProviderButton, { id: p.id, label: p.label, hint: p.hint, active: currentAsrProvider === p.id, onSelect: () => onChange(p.id) }, p.id))) }), currentAsrProvider === "local-inference" && localStatusBusy && (_jsx("
|
|
464
|
+
}) })] }), _jsx("div", { className: "grid gap-2 sm:grid-cols-3", children: ASR_PROVIDERS.map((p) => (_jsx(AsrProviderButton, { id: p.id, label: p.label, hint: p.hint, active: currentAsrProvider === p.id, onSelect: () => onChange(p.id) }, p.id))) }), currentAsrProvider === "local-inference" && localStatusBusy && (_jsx("p", { className: "text-xs leading-5 text-warn", children: t("voiceconfigview.AsrDownloading", {
|
|
461
465
|
defaultValue: "Downloading local model — using cloud until ready.",
|
|
462
|
-
}) })), currentAsrProvider === "openai" && (_jsx("
|
|
466
|
+
}) })), currentAsrProvider === "openai" && (_jsx("p", { className: "text-xs leading-5 text-muted", children: t("voiceconfigview.AsrUsesOpenAiKey", {
|
|
463
467
|
defaultValue: "Uses your OpenAI API key from the Providers section.",
|
|
464
468
|
}) }))] }));
|
|
465
469
|
}
|
|
@@ -488,7 +492,9 @@ function PremadeVoiceButton({ voiceId, name, hint, active, onSelect, }) {
|
|
|
488
492
|
: "border-border/60 bg-bg text-txt hover:border-border-strong hover:bg-surface"}`, onClick: onSelect, ...agentProps, children: [_jsx("div", { className: "font-semibold text-xs truncate w-full", children: name }), _jsx("div", { className: "text-xs text-muted truncate w-full", children: hint })] }));
|
|
489
493
|
}
|
|
490
494
|
export function VoiceConfigView() {
|
|
491
|
-
const
|
|
495
|
+
const t = useAppSelector((s) => s.t);
|
|
496
|
+
const elizaCloudConnected = useAppSelector((s) => s.elizaCloudConnected);
|
|
497
|
+
const elizaCloudVoiceProxyAvailable = useAppSelector((s) => s.elizaCloudVoiceProxyAvailable);
|
|
492
498
|
const [voiceConfig, setVoiceConfig] = useState({});
|
|
493
499
|
const [swabbleServerConfig, setSwabbleServerConfig] = useState(null);
|
|
494
500
|
const [loading, setLoading] = useState(true);
|
|
@@ -685,9 +691,7 @@ export function VoiceConfigView() {
|
|
|
685
691
|
audioRef.current.pause();
|
|
686
692
|
setTesting(false);
|
|
687
693
|
}
|
|
688
|
-
}, children: t("common.stop") })) : null] }) })) : null] })), currentProvider === "edge" && (_jsx(SettingsGroup, { bare: true, children: _jsx("
|
|
694
|
+
}, children: t("common.stop") })) : null] }) })) : null] })), currentProvider === "edge" && (_jsx(SettingsGroup, { bare: true, children: _jsx("p", { className: "py-1 text-xs leading-5 text-muted", children: t("voiceconfigview.EdgeTTSUsesMicros") }) })), currentProvider === "robot-voice" && (_jsx(SettingsGroup, { bare: true, children: _jsx("p", { className: "py-1 text-xs leading-5 text-muted", children: t("voiceconfigview.SimpleVoiceUsesYo") }) })), _jsx(SettingsGroup, { children: _jsx(SettingsRow, { label: t("voiceconfigview.advancedSettings", {
|
|
689
695
|
defaultValue: "Advanced settings",
|
|
690
|
-
}), description: t("voiceconfigview.advancedSettingsHint", {
|
|
691
|
-
defaultValue: "Show ASR (speech-to-text) provider picker and per-provider overrides.",
|
|
692
696
|
}), control: _jsx(AdvancedToggle, { label: "Advanced" }) }) }), advancedEnabled && (_jsx(SettingsGroup, { bare: true, children: _jsx(AsrAdvancedSection, { currentAsrProvider: currentAsrProvider, onChange: handleAsrProviderChange, defaultAsrProvider: providerDefaults.asr }) })), _jsx(SettingsGroup, { bare: true, title: t("voiceconfigview.WakeWord"), children: _jsx(WakeWordSection, { serverConfig: swabbleServerConfig }) }), _jsx(SettingsGroup, { bare: true, children: _jsx(DesktopTalkModePanel, {}) }), _jsx(SaveFooter, { dirty: dirty, saving: saving, saveError: saveError, saveSuccess: saveSuccess, onSave: () => void handleSave() })] }));
|
|
693
697
|
}
|
|
@@ -4,16 +4,14 @@
|
|
|
4
4
|
* comes from `VoiceProfilesClient`; an empty list renders the empty state.
|
|
5
5
|
*/
|
|
6
6
|
import * as React from "react";
|
|
7
|
-
import type { VoiceProfile, VoiceProfilesClient } from "../../api/client-voice-profiles";
|
|
7
|
+
import type { VoiceProfile, VoiceProfilesClient } from "../../api/client-voice-profiles.js";
|
|
8
8
|
export interface VoiceProfileSectionProps {
|
|
9
9
|
/** Adapter supplied by the parent that holds the `ElizaClient`. */
|
|
10
10
|
profilesClient: VoiceProfilesClient;
|
|
11
11
|
/** Pre-loaded profiles (skips initial fetch — useful for tests). */
|
|
12
12
|
initialProfiles?: VoiceProfile[];
|
|
13
|
-
/** Render the panel inside a settings card chrome (default true). */
|
|
14
|
-
framed?: boolean;
|
|
15
13
|
className?: string;
|
|
16
14
|
}
|
|
17
|
-
export declare function VoiceProfileSection({ profilesClient, initialProfiles,
|
|
15
|
+
export declare function VoiceProfileSection({ profilesClient, initialProfiles, className, }: VoiceProfileSectionProps): React.ReactElement;
|
|
18
16
|
export default VoiceProfileSection;
|
|
19
17
|
//# sourceMappingURL=VoiceProfileSection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VoiceProfileSection.d.ts","sourceRoot":"","sources":["../../../../../../src/components/settings/VoiceProfileSection.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACpB,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"VoiceProfileSection.d.ts","sourceRoot":"","sources":["../../../../../../src/components/settings/VoiceProfileSection.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACpB,MAAM,iCAAiC,CAAC;AAOzC,MAAM,WAAW,wBAAwB;IACvC,mEAAmE;IACnE,cAAc,EAAE,mBAAmB,CAAC;IACpC,oEAAoE;IACpE,eAAe,CAAC,EAAE,YAAY,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAsSD,wBAAgB,mBAAmB,CAAC,EAClC,cAAc,EACd,eAAe,EACf,SAAS,GACV,EAAE,wBAAwB,GAAG,KAAK,CAAC,YAAY,CA0Q/C;AAED,eAAe,mBAAmB,CAAC"}
|
|
@@ -4,12 +4,14 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
4
4
|
* pinned at top) with rename / set-relationship / delete affordances. Data
|
|
5
5
|
* comes from `VoiceProfilesClient`; an empty list renders the empty state.
|
|
6
6
|
*/
|
|
7
|
-
import { Crown, Download, Mic, Pencil, Trash2
|
|
7
|
+
import { Crown, Download, Mic, Pencil, Trash2 } from "lucide-react";
|
|
8
8
|
import * as React from "react";
|
|
9
9
|
import { useAgentElement } from "../../agent-surface/index.js";
|
|
10
10
|
import { cn } from "../../lib/utils.js";
|
|
11
11
|
import { useTranslation } from "../../state/TranslationContext.hooks.js";
|
|
12
12
|
import { Button } from "../ui/button.js";
|
|
13
|
+
import { Select, SelectContent, SelectItem, SelectValue } from "../ui/select.js";
|
|
14
|
+
import { SettingsSelectTrigger } from "../ui/settings-controls.js";
|
|
13
15
|
function compareProfiles(a, b) {
|
|
14
16
|
if (a.isOwner !== b.isOwner)
|
|
15
17
|
return a.isOwner ? -1 : 1;
|
|
@@ -31,6 +33,13 @@ function relationshipRank(cohort) {
|
|
|
31
33
|
return 3;
|
|
32
34
|
}
|
|
33
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Sentinel for the "(no label)" relationship choice. The profile stores a
|
|
38
|
+
* relationship as `string | null`; Radix Select forbids an empty-string item
|
|
39
|
+
* value, so this sentinel stands in for "no relationship" and maps back to
|
|
40
|
+
* `null` at the value/onChange boundary.
|
|
41
|
+
*/
|
|
42
|
+
const NO_RELATIONSHIP_VALUE = "__none__";
|
|
34
43
|
const COMMON_RELATIONSHIPS = [
|
|
35
44
|
"wife",
|
|
36
45
|
"husband",
|
|
@@ -43,7 +52,8 @@ const COMMON_RELATIONSHIPS = [
|
|
|
43
52
|
"colleague",
|
|
44
53
|
"roommate",
|
|
45
54
|
];
|
|
46
|
-
function VoiceProfileRow({ profile, isEditingThis, renameValue, setRenameValue, setRenameId, dispatch,
|
|
55
|
+
const VoiceProfileRow = React.memo(function VoiceProfileRow({ profile, isEditingThis, renameValue, setRenameValue, setRenameId, dispatch, }) {
|
|
56
|
+
const { t } = useTranslation();
|
|
47
57
|
const { ref: nameRef, agentProps: nameAgentProps } = useAgentElement({
|
|
48
58
|
id: `voice-profile-name-${profile.id}`,
|
|
49
59
|
role: "button",
|
|
@@ -73,13 +83,13 @@ function VoiceProfileRow({ profile, isEditingThis, renameValue, setRenameValue,
|
|
|
73
83
|
defaultValue: "Set relationship",
|
|
74
84
|
}),
|
|
75
85
|
group: "voice-profiles-list",
|
|
76
|
-
getValue: () => profile.relationshipLabel ??
|
|
86
|
+
getValue: () => profile.relationshipLabel ?? NO_RELATIONSHIP_VALUE,
|
|
77
87
|
onFill: (value) => dispatch({
|
|
78
88
|
type: "set-relationship",
|
|
79
89
|
id: profile.id,
|
|
80
|
-
relationshipLabel: value
|
|
90
|
+
relationshipLabel: value && value !== NO_RELATIONSHIP_VALUE ? value : null,
|
|
81
91
|
}),
|
|
82
|
-
options: [
|
|
92
|
+
options: [NO_RELATIONSHIP_VALUE, ...COMMON_RELATIONSHIPS],
|
|
83
93
|
});
|
|
84
94
|
const { ref: renameBtnRef, agentProps: renameBtnAgentProps } = useAgentElement({
|
|
85
95
|
id: `voice-profile-rename-${profile.id}`,
|
|
@@ -102,7 +112,7 @@ function VoiceProfileRow({ profile, isEditingThis, renameValue, setRenameValue,
|
|
|
102
112
|
group: "voice-profiles-list",
|
|
103
113
|
onActivate: () => dispatch({ type: "delete", id: profile.id }),
|
|
104
114
|
});
|
|
105
|
-
return (_jsxs("li", { "data-testid": `voice-profile-row-${profile.id}`, "data-is-owner": profile.isOwner ? "true" : "false", "data-cohort": profile.cohort, className: "flex items-center gap-3
|
|
115
|
+
return (_jsxs("li", { "data-testid": `voice-profile-row-${profile.id}`, "data-is-owner": profile.isOwner ? "true" : "false", "data-cohort": profile.cohort, className: "flex items-center gap-3 py-2.5", children: [profile.isOwner ? (_jsx(Crown, { className: "h-4 w-4 shrink-0 text-accent", "aria-label": t("voiceprofile.owner", { defaultValue: "Owner" }), "data-testid": `voice-profile-crown-${profile.id}` })) : (_jsx("span", { className: "inline-block h-4 w-4 shrink-0", "aria-hidden": "true" })), _jsxs("div", { className: "min-w-0 flex-1", children: [isEditingThis ? (_jsx("input", { ref: renameInputRef, type: "text", value: renameValue, onChange: (e) => setRenameValue(e.target.value), onBlur: () => {
|
|
106
116
|
setRenameId(null);
|
|
107
117
|
if (renameValue.trim() && renameValue !== profile.displayName) {
|
|
108
118
|
dispatch({
|
|
@@ -121,7 +131,7 @@ function VoiceProfileRow({ profile, isEditingThis, renameValue, setRenameValue,
|
|
|
121
131
|
}
|
|
122
132
|
},
|
|
123
133
|
// biome-ignore lint/a11y/noAutofocus: this is an inline rename input the user just clicked into; focus must follow.
|
|
124
|
-
autoFocus: true, className: "h-11 w-full rounded-md border border-border bg-
|
|
134
|
+
autoFocus: true, className: "h-11 w-full rounded-md border border-border bg-surface px-3 text-sm transition-colors ", "data-testid": `voice-profile-rename-input-${profile.id}`, "aria-label": t("voiceprofile.renameAria", {
|
|
125
135
|
defaultValue: "Rename voice profile",
|
|
126
136
|
}), ...renameInputAgentProps })) : (_jsx("button", { ref: nameRef, type: "button", onClick: () => {
|
|
127
137
|
setRenameId(profile.id);
|
|
@@ -134,13 +144,13 @@ function VoiceProfileRow({ profile, isEditingThis, renameValue, setRenameValue,
|
|
|
134
144
|
: t("voiceprofile.sampleOther", {
|
|
135
145
|
count: profile.embeddingCount,
|
|
136
146
|
defaultValue: "{{count}} samples",
|
|
137
|
-
}) }), profile.relationshipLabel ? (_jsx("span", { className: "rounded-sm bg-bg/60 px-1 py-0.5", "data-testid": `voice-profile-relationship-${profile.id}`, children: profile.relationshipLabel })) : null, _jsx("span", { children: profile.cohort })] })] }), !profile.isOwner ? (_jsxs("div", { className: "flex items-center gap-1", children: [_jsxs(
|
|
147
|
+
}) }), profile.relationshipLabel ? (_jsx("span", { className: "rounded-sm bg-bg/60 px-1 py-0.5", "data-testid": `voice-profile-relationship-${profile.id}`, children: profile.relationshipLabel })) : null, _jsx("span", { children: profile.cohort })] })] }), !profile.isOwner ? (_jsxs("div", { className: "flex items-center gap-1", children: [_jsxs(Select, { value: profile.relationshipLabel ?? NO_RELATIONSHIP_VALUE, onValueChange: (value) => dispatch({
|
|
138
148
|
type: "set-relationship",
|
|
139
149
|
id: profile.id,
|
|
140
|
-
relationshipLabel:
|
|
141
|
-
}),
|
|
142
|
-
|
|
143
|
-
|
|
150
|
+
relationshipLabel: value === NO_RELATIONSHIP_VALUE ? null : value,
|
|
151
|
+
}), children: [_jsx(SettingsSelectTrigger, { ref: relationshipRef, variant: "soft", "data-testid": `voice-profile-relationship-select-${profile.id}`, "aria-label": t("voiceprofile.setRelationship", {
|
|
152
|
+
defaultValue: "Set relationship",
|
|
153
|
+
}), ...relationshipAgentProps, children: _jsx(SelectValue, {}) }), _jsxs(SelectContent, { children: [_jsx(SelectItem, { value: NO_RELATIONSHIP_VALUE, children: t("voiceprofile.noLabel", { defaultValue: "(no label)" }) }), COMMON_RELATIONSHIPS.map((r) => (_jsx(SelectItem, { value: r, children: r }, r)))] })] }), _jsx(Button, { ref: renameBtnRef, type: "button", variant: "ghost", size: "icon", onClick: () => {
|
|
144
154
|
setRenameId(profile.id);
|
|
145
155
|
setRenameValue(profile.displayName);
|
|
146
156
|
}, "data-testid": `voice-profile-rename-${profile.id}`, "aria-label": t("voiceprofile.renameAria", {
|
|
@@ -148,8 +158,8 @@ function VoiceProfileRow({ profile, isEditingThis, renameValue, setRenameValue,
|
|
|
148
158
|
}), ...renameBtnAgentProps, children: _jsx(Pencil, { className: "h-3.5 w-3.5" }) }), _jsx(Button, { ref: deleteRef, type: "button", variant: "ghost", size: "icon", onClick: () => dispatch({ type: "delete", id: profile.id }), "data-testid": `voice-profile-delete-${profile.id}`, "aria-label": t("voiceprofile.deleteAria", {
|
|
149
159
|
defaultValue: "Delete voice profile",
|
|
150
160
|
}), ...deleteAgentProps, children: _jsx(Trash2, { className: "h-3.5 w-3.5 text-danger" }) })] })) : null] }));
|
|
151
|
-
}
|
|
152
|
-
export function VoiceProfileSection({ profilesClient, initialProfiles,
|
|
161
|
+
});
|
|
162
|
+
export function VoiceProfileSection({ profilesClient, initialProfiles, className, }) {
|
|
153
163
|
const { t } = useTranslation();
|
|
154
164
|
const [profiles, setProfiles] = React.useState(initialProfiles ?? []);
|
|
155
165
|
const [loading, setLoading] = React.useState(initialProfiles === undefined);
|
|
@@ -181,7 +191,15 @@ export function VoiceProfileSection({ profilesClient, initialProfiles, framed =
|
|
|
181
191
|
}
|
|
182
192
|
void refresh();
|
|
183
193
|
}, [initialProfiles, refresh]);
|
|
184
|
-
const sorted = React.useMemo(() =>
|
|
194
|
+
const { sorted, ownerCount, otherCount } = React.useMemo(() => {
|
|
195
|
+
const next = [...profiles].sort(compareProfiles);
|
|
196
|
+
const owners = next.filter((p) => p.isOwner).length;
|
|
197
|
+
return {
|
|
198
|
+
sorted: next,
|
|
199
|
+
ownerCount: owners,
|
|
200
|
+
otherCount: next.length - owners,
|
|
201
|
+
};
|
|
202
|
+
}, [profiles]);
|
|
185
203
|
const dispatch = React.useCallback(async (action) => {
|
|
186
204
|
try {
|
|
187
205
|
switch (action.type) {
|
|
@@ -223,6 +241,7 @@ export function VoiceProfileSection({ profilesClient, initialProfiles, framed =
|
|
|
223
241
|
}));
|
|
224
242
|
}
|
|
225
243
|
}, [profiles, profilesClient, t]);
|
|
244
|
+
const dispatchAction = React.useCallback((action) => void dispatch(action), [dispatch]);
|
|
226
245
|
const onExport = React.useCallback(async () => {
|
|
227
246
|
try {
|
|
228
247
|
const { downloadUrl } = await profilesClient.exportAll();
|
|
@@ -251,8 +270,6 @@ export function VoiceProfileSection({ profilesClient, initialProfiles, framed =
|
|
|
251
270
|
}));
|
|
252
271
|
}
|
|
253
272
|
}, [profilesClient, t]);
|
|
254
|
-
const ownerCount = sorted.filter((p) => p.isOwner).length;
|
|
255
|
-
const otherCount = sorted.length - ownerCount;
|
|
256
273
|
const { ref: exportRef, agentProps: exportAgentProps } = useAgentElement({
|
|
257
274
|
id: "voice-profile-export",
|
|
258
275
|
role: "button",
|
|
@@ -271,25 +288,31 @@ export function VoiceProfileSection({ profilesClient, initialProfiles, framed =
|
|
|
271
288
|
group: "voice-profiles",
|
|
272
289
|
onActivate: () => void onDeleteAll(),
|
|
273
290
|
});
|
|
274
|
-
return (_jsxs("div", { "data-testid": "voice-profile-section", className: cn(
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
291
|
+
return (_jsxs("div", { "data-testid": "voice-profile-section", className: cn("flex flex-col", className), children: [_jsxs("header", { className: "flex items-center justify-between gap-3 py-1", children: [_jsxs("span", { className: "text-xs text-muted", "data-testid": "voice-profile-count", children: [ownerCount > 0
|
|
292
|
+
? t("voiceprofile.ownerCount", {
|
|
293
|
+
count: ownerCount,
|
|
294
|
+
defaultValue: "{{count}} owner · ",
|
|
295
|
+
})
|
|
296
|
+
: "", otherCount === 1
|
|
297
|
+
? t("voiceprofile.otherCountOne", {
|
|
298
|
+
count: otherCount,
|
|
299
|
+
defaultValue: "{{count}} other",
|
|
300
|
+
})
|
|
301
|
+
: t("voiceprofile.otherCount", {
|
|
302
|
+
count: otherCount,
|
|
303
|
+
defaultValue: "{{count}} others",
|
|
304
|
+
})] }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsxs(Button, { ref: exportRef, variant: "ghost", size: "sm", onClick: () => void onExport(), "data-testid": "voice-profile-export", "aria-label": t("voiceprofile.exportAria", {
|
|
288
305
|
defaultValue: "Export voice profile metadata",
|
|
289
306
|
}), ...exportAgentProps, children: [_jsx(Download, { className: "mr-1 h-3.5 w-3.5" }), " ", t("voiceprofile.export", { defaultValue: "Export" })] }), _jsxs(Button, { ref: resetRef, variant: "ghost", size: "sm", onClick: () => void onDeleteAll(), "data-testid": "voice-profile-delete-all", "aria-label": t("voiceprofile.resetAria", {
|
|
290
307
|
defaultValue: "Delete all non-owner voice profiles",
|
|
291
|
-
}), ...resetAgentProps, children: [_jsx(Trash2, { className: "mr-1 h-3.5 w-3.5" }), " ", t("voiceprofile.reset", { defaultValue: "Reset" })] })] })] }), error ? (_jsx("div", { className: "
|
|
292
|
-
defaultValue: "No voice profiles yet
|
|
293
|
-
})] })) : (_jsx("ul", { className: "
|
|
308
|
+
}), ...resetAgentProps, children: [_jsx(Trash2, { className: "mr-1 h-3.5 w-3.5" }), " ", t("voiceprofile.reset", { defaultValue: "Reset" })] })] })] }), error ? (_jsx("div", { className: "py-2 text-xs text-warn", "data-testid": "voice-profile-error", children: error })) : null, loading ? (_jsx("div", { className: "py-6 text-center text-xs text-muted", "data-testid": "voice-profile-loading", children: t("voiceprofile.loading", { defaultValue: "Loading profiles…" }) })) : sorted.length === 0 ? (_jsxs("div", { className: "flex flex-col items-center gap-2 py-6 text-center text-xs text-muted", "data-testid": "voice-profile-empty", children: [_jsx(Mic, { className: "h-5 w-5 text-muted", "aria-hidden": true }), t("voiceprofile.empty", {
|
|
309
|
+
defaultValue: "No voice profiles yet.",
|
|
310
|
+
})] })) : (_jsx("ul", { className: "flex flex-col", "data-testid": "voice-profile-list", children: sorted.map((profile) => {
|
|
311
|
+
const isEditingThis = renameId === profile.id;
|
|
312
|
+
return (_jsx(VoiceProfileRow, { profile: profile, isEditingThis: isEditingThis,
|
|
313
|
+
// Only the editing row needs the live draft; passing "" to the
|
|
314
|
+
// rest keeps their props stable so memo skips them per keystroke.
|
|
315
|
+
renameValue: isEditingThis ? renameValue : "", setRenameValue: setRenameValue, setRenameId: setRenameId, dispatch: dispatchAction }, profile.id));
|
|
316
|
+
}) }))] }));
|
|
294
317
|
}
|
|
295
318
|
export default VoiceProfileSection;
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* VoiceSection — top-level Settings → Voice tree. Mounts the device-tier
|
|
3
|
-
* banner, continuous-chat mode, wake word,
|
|
4
|
-
*
|
|
3
|
+
* banner, continuous-chat mode, wake word, end-of-turn tuning, the models
|
|
4
|
+
* slot, voice profiles, and privacy toggles.
|
|
5
|
+
*
|
|
6
|
+
* Per-modality local-vs-cloud routing is owned by the RoutingMatrix control
|
|
7
|
+
* (per-slot policy rows), not by this section.
|
|
5
8
|
*/
|
|
6
9
|
import * as React from "react";
|
|
7
|
-
import type { VoiceProfilesClient } from "../../api/client-voice-profiles";
|
|
8
|
-
import type { VoiceContinuousMode } from "../../voice/voice-chat-types";
|
|
9
|
-
import { type VoiceDeviceTier } from "./VoiceTierBanner";
|
|
10
|
-
export type VoiceLocalCloudStrategy = "auto" | "force-local" | "force-cloud";
|
|
10
|
+
import type { VoiceProfilesClient } from "../../api/client-voice-profiles.js";
|
|
11
|
+
import type { VoiceContinuousMode } from "../../voice/voice-chat-types.js";
|
|
12
|
+
import { type VoiceDeviceTier } from "./VoiceTierBanner.js";
|
|
11
13
|
/**
|
|
12
14
|
* User-facing slice of the auto-stop options: how long silence ends a turn
|
|
13
15
|
* and how loud audio must be to count as speech. Other fields keep library
|
|
@@ -21,7 +23,6 @@ export interface VadAutoStopPrefs {
|
|
|
21
23
|
}
|
|
22
24
|
export interface VoiceSectionPrefs {
|
|
23
25
|
continuous: VoiceContinuousMode;
|
|
24
|
-
strategy: VoiceLocalCloudStrategy;
|
|
25
26
|
cloudFirstLineCache: boolean;
|
|
26
27
|
autoLearnVoices: boolean;
|
|
27
28
|
/**
|