@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
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { isViewVisible } from "@elizaos/core";
|
|
2
3
|
import { ArrowLeft } from "lucide-react";
|
|
3
4
|
import { useCallback, useEffect, useMemo, useState } from "react";
|
|
4
5
|
import { useAgentElement } from "../../agent-surface/index.js";
|
|
@@ -9,10 +10,12 @@ import { listExtraSettingsGroups } from "../../cloud/settings/index.js";
|
|
|
9
10
|
import { useMediaQuery } from "../../hooks/useMediaQuery.js";
|
|
10
11
|
import { ContentLayout } from "../../layouts/content-layout/index.js";
|
|
11
12
|
import { cn } from "../../lib/utils.js";
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
13
|
+
import { isAndroidCloudBuild } from "../../platform/android-runtime.js";
|
|
14
|
+
import { useAppSelectorShallow } from "../../state/index.js";
|
|
15
|
+
import { useEnabledViewKinds } from "../../state/useViewKinds.js";
|
|
14
16
|
import { SettingsGroup, SettingsRow, SettingsStack, } from "../settings/settings-layout.js";
|
|
15
|
-
import { getAllSettingsSections, readSettingsHashSection, replaceSettingsHash,
|
|
17
|
+
import { getAllSettingsSections, readSettingsHashSection, replaceSettingsHash, SECTION_TONE_ICON_CLASS, SETTINGS_GROUP_LABEL, SETTINGS_GROUP_ORDER, settingsSectionLabel, settingsSectionTitle, } from "../settings/settings-sections.js";
|
|
18
|
+
import { ErrorBoundary } from "../ui/error-boundary.js";
|
|
16
19
|
import { ShellViewAgentSurface } from "../views/ShellViewAgentSurface.js";
|
|
17
20
|
/**
|
|
18
21
|
* Group sections for display. Built-in groups keep their pinned order + labels;
|
|
@@ -62,7 +65,7 @@ function sectionChip(section, walletEnabled) {
|
|
|
62
65
|
return null;
|
|
63
66
|
}
|
|
64
67
|
function Chip({ children }) {
|
|
65
|
-
return (_jsx("span", { className: "inline-flex items-center rounded-full bg-accent/12 px-2 py-0.5 text-[11px] font-medium text-accent
|
|
68
|
+
return (_jsx("span", { className: "inline-flex items-center rounded-full bg-accent/12 px-2 py-0.5 text-[11px] font-medium text-accent ", children: children }));
|
|
66
69
|
}
|
|
67
70
|
/**
|
|
68
71
|
* One navigation entry. Renders as a tappable list row on mobile and a compact
|
|
@@ -80,13 +83,9 @@ function SettingsNavItem({ section, label, chip, active, variant, onSelect, }) {
|
|
|
80
83
|
});
|
|
81
84
|
const Icon = section.icon;
|
|
82
85
|
if (variant === "list") {
|
|
83
|
-
return (_jsx(SettingsRow, { icon: Icon, iconClassName:
|
|
86
|
+
return (_jsx(SettingsRow, { icon: Icon, iconClassName: SECTION_TONE_ICON_CLASS[section.tone], label: label, onClick: () => onSelect(section.id), buttonRef: ref, buttonProps: agentProps, trailing: chip ? _jsx(Chip, { children: chip }) : undefined, chevron: !chip }));
|
|
84
87
|
}
|
|
85
|
-
return (_jsxs("button", { ref: ref, type: "button", onClick: () => onSelect(section.id), "aria-current": active ? "page" : undefined, className: cn("flex w-full items-center gap-2.5 rounded-md px-2.5 py-2 text-left text-sm transition-colors", active
|
|
86
|
-
? "bg-accent/12 font-medium text-accent"
|
|
87
|
-
: "text-txt hover:bg-surface"), ...agentProps, children: [_jsx("span", { className: cn("flex h-7 w-7 shrink-0 items-center justify-center rounded-md", active
|
|
88
|
-
? "bg-accent/15 text-accent"
|
|
89
|
-
: SECTION_HUE_MEDALLION_CLASS[section.hue]), children: _jsx(Icon, { className: "h-4 w-4", "aria-hidden": true }) }), _jsx("span", { className: "min-w-0 flex-1 truncate", children: label }), chip ? _jsx(Chip, { children: chip }) : null] }));
|
|
88
|
+
return (_jsxs("button", { ref: ref, type: "button", onClick: () => onSelect(section.id), "aria-current": active ? "page" : undefined, className: cn("flex w-full items-center gap-2.5 rounded-md px-2.5 py-2 text-left text-sm transition-colors", active ? "font-medium text-accent" : "text-txt hover:bg-surface"), ...agentProps, children: [_jsx(Icon, { className: cn("h-4 w-4 shrink-0", active ? "text-accent" : SECTION_TONE_ICON_CLASS[section.tone]), "aria-hidden": true }), _jsx("span", { className: "min-w-0 flex-1 truncate", children: label }), chip ? _jsx(Chip, { children: chip }) : null] }));
|
|
90
89
|
}
|
|
91
90
|
function SectionBackButton({ onBack }) {
|
|
92
91
|
const { ref, agentProps } = useAgentElement({
|
|
@@ -96,14 +95,26 @@ function SectionBackButton({ onBack }) {
|
|
|
96
95
|
description: "Return to the settings hub",
|
|
97
96
|
onActivate: onBack,
|
|
98
97
|
});
|
|
99
|
-
return (_jsxs("button", { ref: ref, type: "button", onClick: onBack, className: "-mx-2 inline-flex items-center gap-1.5 rounded-md px-2 py-1.5 text-xs font-medium text-muted transition-colors hover:text-accent
|
|
98
|
+
return (_jsxs("button", { ref: ref, type: "button", onClick: onBack, className: "-mx-2 inline-flex items-center gap-1.5 rounded-md px-2 py-1.5 text-xs font-medium text-muted transition-colors hover:text-accent ", ...agentProps, children: [_jsx(ArrowLeft, { className: "h-3.5 w-3.5", "aria-hidden": true }), "Settings"] }));
|
|
100
99
|
}
|
|
101
100
|
/** The active section's body: optional back, header (icon + title), content. */
|
|
102
101
|
function SettingsSectionContent({ section, t, onBack, }) {
|
|
103
102
|
const Component = section.Component;
|
|
104
103
|
const Icon = section.icon;
|
|
105
104
|
const title = settingsSectionTitle(section, t);
|
|
106
|
-
return (_jsxs("div", { id: section.id, children: [onBack ? (_jsx("div", { className: "mb-
|
|
105
|
+
return (_jsxs("div", { id: section.id, children: [onBack ? (_jsx("div", { className: "mb-1.5", children: _jsx(SectionBackButton, { onBack: onBack }) })) : null, _jsxs("div", { className: "mb-5 flex items-center gap-2.5", children: [_jsx(Icon, { className: "h-5 w-5 shrink-0 text-muted/80", "aria-hidden": true }), _jsx("h1", { className: "text-lg font-semibold tracking-tight text-txt-strong", children: title })] }), _jsx("div", { className: section.bodyClassName, children: _jsx(ErrorBoundary, { fallback: (error, reset) => (_jsx(SettingsSectionFallback, { title: title, error: error, onRetry: reset, t: t })), children: _jsx(Component, {}) }, section.id) })] }));
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Inline per-section error fallback. A section that throws on mount/render must
|
|
109
|
+
* degrade to this card — never blank the whole shell — so the settings nav rail
|
|
110
|
+
* and every other section stay interactive. Uses the settings `warn` token
|
|
111
|
+
* vocabulary for visual consistency with the rest of the surface.
|
|
112
|
+
*/
|
|
113
|
+
function SettingsSectionFallback({ title, error, onRetry, t, }) {
|
|
114
|
+
return (_jsxs("div", { role: "alert", "data-testid": "settings-section-error", className: "flex flex-col items-start gap-2 rounded-md border border-warn/30 bg-warn/12 p-4 text-left", children: [_jsx("p", { className: "text-sm font-semibold text-warn", children: t("settings.sectionFailed", {
|
|
115
|
+
defaultValue: "{{title}} failed to load",
|
|
116
|
+
title,
|
|
117
|
+
}) }), _jsx("p", { className: "text-xs-tight text-muted max-w-prose break-words", children: error.message }), _jsx("button", { type: "button", onClick: onRetry, className: "mt-1 inline-flex h-9 items-center rounded-md border border-border bg-card px-3 text-xs font-medium text-txt transition-colors hover:border-accent hover:text-accent ", children: t("settings.sectionRetry", { defaultValue: "Retry" }) })] }));
|
|
107
118
|
}
|
|
108
119
|
function MobileHub({ grouped, t, walletEnabled, onSelect, }) {
|
|
109
120
|
return (_jsxs("div", { className: "w-full pb-32", children: [_jsx("h1", { className: "mb-4 text-2xl font-semibold tracking-tight text-txt-strong", children: t("nav.settings", { defaultValue: "Settings" }) }), _jsx(SettingsStack, { children: grouped.map(({ group, label, items }) => (_jsx(SettingsGroup, { title: label, children: items.map((section) => (_jsx(SettingsNavItem, { section: section, label: settingsSectionLabel(section, t), chip: sectionChip(section, walletEnabled), active: false, variant: "list", onSelect: onSelect }, section.id))) }, group))) })] }));
|
|
@@ -112,16 +123,25 @@ function DesktopLayout({ grouped, t, walletEnabled, activeId, activeSection, onS
|
|
|
112
123
|
return (_jsxs("div", { className: "flex w-full gap-7 pb-32", children: [_jsx("nav", { className: "w-60 shrink-0", "aria-label": "Settings sections", children: _jsxs("div", { className: "sticky top-2 space-y-5", children: [_jsx("h1", { className: "px-2.5 text-lg font-semibold tracking-tight text-txt-strong", children: t("nav.settings", { defaultValue: "Settings" }) }), grouped.map(({ group, label, items }) => (_jsxs("div", { children: [_jsx("h2", { className: "mb-1 px-2.5 text-xs font-medium text-muted", children: label }), _jsx("div", { className: "space-y-0.5", children: items.map((section) => (_jsx(SettingsNavItem, { section: section, label: settingsSectionLabel(section, t), chip: sectionChip(section, walletEnabled), active: section.id === activeId, variant: "rail", onSelect: onSelect }, section.id))) })] }, group)))] }) }), _jsx("div", { className: "min-w-0 flex-1", children: activeSection ? (_jsx(SettingsSectionContent, { section: activeSection, t: t })) : null })] }));
|
|
113
124
|
}
|
|
114
125
|
export function SettingsView({ inModal, initialSection, } = {}) {
|
|
115
|
-
const { t, loadPlugins, walletEnabled } =
|
|
126
|
+
const { t, loadPlugins, walletEnabled } = useAppSelectorShallow((s) => ({
|
|
127
|
+
t: s.t,
|
|
128
|
+
loadPlugins: s.loadPlugins,
|
|
129
|
+
walletEnabled: s.walletEnabled,
|
|
130
|
+
}));
|
|
116
131
|
const isDesktop = useMediaQuery("(min-width: 1024px)");
|
|
132
|
+
const enabledKinds = useEnabledViewKinds();
|
|
117
133
|
const [activeSection, setActiveSection] = useState(() => initialSection ?? readSettingsHashSection());
|
|
118
134
|
const visibleSections = useMemo(() => {
|
|
119
135
|
return getAllSettingsSections().filter((section) => {
|
|
120
136
|
if (section.id === "wallet-rpc" && walletEnabled === false)
|
|
121
137
|
return false;
|
|
138
|
+
if (!isViewVisible(section, enabledKinds))
|
|
139
|
+
return false;
|
|
140
|
+
if (section.hideOnCloud && isAndroidCloudBuild())
|
|
141
|
+
return false;
|
|
122
142
|
return true;
|
|
123
143
|
});
|
|
124
|
-
}, [walletEnabled]);
|
|
144
|
+
}, [walletEnabled, enabledKinds]);
|
|
125
145
|
const visibleSectionIds = useMemo(() => new Set(visibleSections.map((section) => section.id)), [visibleSections]);
|
|
126
146
|
const grouped = useMemo(() => groupSections(visibleSections), [visibleSections]);
|
|
127
147
|
useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkillsView.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/SkillsView.tsx"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"SkillsView.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/SkillsView.tsx"],"names":[],"mappings":"AACA,OAAO,EAAQ,KAAK,SAAS,EAAgC,MAAM,OAAO,CAAC;AAmH3E,wBAAgB,UAAU,CAAC,EACzB,aAAa,EACb,OAAO,GACR,GAAE;IACD,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;CACd,2CAGL"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Brain, Store } from "lucide-react";
|
|
3
|
-
import { useEffect, useMemo, useState } from "react";
|
|
3
|
+
import { memo, useEffect, useMemo, useState } from "react";
|
|
4
4
|
import { useAgentElement } from "../../agent-surface/index.js";
|
|
5
|
+
import { useIntervalWhenDocumentVisible } from "../../hooks/useDocumentVisibility.js";
|
|
5
6
|
import { PageLayout } from "../../layouts/page-layout/page-layout.js";
|
|
6
|
-
import {
|
|
7
|
+
import { useAppSelectorShallow } from "../../state/index.js";
|
|
7
8
|
import { useRegisterViewChatBinding } from "../../state/view-chat-binding.js";
|
|
8
9
|
import { ChatSearchHint } from "../composites/chat-search-hint.js";
|
|
9
10
|
import { PagePanel } from "../composites/page-panel/index.js";
|
|
@@ -35,7 +36,7 @@ function SkillFilterTab({ tabKey, label, isActive, onSelect, }) {
|
|
|
35
36
|
? "border-accent/30 bg-accent/10 text-txt"
|
|
36
37
|
: "border-border/45 text-muted hover:border-border/70 hover:bg-bg/35 hover:text-txt"}`, onClick: onSelect, ...agentProps, children: label }));
|
|
37
38
|
}
|
|
38
|
-
function SkillRowButton({ skill, active, enabled, icon, description, onLabel, offLabel, attentionLabel, onSelect, }) {
|
|
39
|
+
const SkillRowButton = memo(function SkillRowButton({ skill, active, enabled, icon, description, onLabel, offLabel, attentionLabel, onSelect, }) {
|
|
39
40
|
const { agentProps } = useAgentElement({
|
|
40
41
|
id: `skill-${skill.id}`,
|
|
41
42
|
role: "button",
|
|
@@ -46,7 +47,7 @@ function SkillRowButton({ skill, active, enabled, icon, description, onLabel, of
|
|
|
46
47
|
onActivate: onSelect,
|
|
47
48
|
});
|
|
48
49
|
return (_jsx("div", { ...agentProps, children: _jsx(SkillSidebarItem, { active: active, testId: `skill-row-${skill.id}`, enabled: enabled, icon: icon, name: skill.name, description: description, onLabel: onLabel, offLabel: offLabel, onSelect: onSelect, attentionLabel: attentionLabel }) }));
|
|
49
|
-
}
|
|
50
|
+
});
|
|
50
51
|
/* ── Main Skills View ───────────────────────────────────────────────── */
|
|
51
52
|
export function SkillsView({ contentHeader, inModal, } = {}) {
|
|
52
53
|
if (inModal)
|
|
@@ -55,7 +56,39 @@ export function SkillsView({ contentHeader, inModal, } = {}) {
|
|
|
55
56
|
}
|
|
56
57
|
/* ── Full-Page Skills View ─────────────────────────────────────────── */
|
|
57
58
|
function SkillsFullView({ contentHeader } = {}) {
|
|
58
|
-
const { skills, skillCreateFormOpen, skillCreateName, skillCreateDescription, skillCreating, skillReviewReport, skillReviewId, skillReviewLoading, skillToggleAction, skillsMarketplaceQuery, skillsMarketplaceResults, skillsMarketplaceError, skillsMarketplaceLoading, skillsMarketplaceAction, skillsMarketplaceManualGithubUrl, loadSkills, refreshSkills, handleSkillToggle, handleCreateSkill, handleDeleteSkill, handleReviewSkill, handleAcknowledgeSkill, searchSkillsMarketplace, installSkillFromMarketplace, uninstallMarketplaceSkill, installSkillFromGithubUrl, enableMarketplaceSkill, disableMarketplaceSkill, copyMarketplaceSkillSource, setState, t, } =
|
|
59
|
+
const { skills, skillCreateFormOpen, skillCreateName, skillCreateDescription, skillCreating, skillReviewReport, skillReviewId, skillReviewLoading, skillToggleAction, skillsMarketplaceQuery, skillsMarketplaceResults, skillsMarketplaceError, skillsMarketplaceLoading, skillsMarketplaceAction, skillsMarketplaceManualGithubUrl, loadSkills, refreshSkills, handleSkillToggle, handleCreateSkill, handleDeleteSkill, handleReviewSkill, handleAcknowledgeSkill, searchSkillsMarketplace, installSkillFromMarketplace, uninstallMarketplaceSkill, installSkillFromGithubUrl, enableMarketplaceSkill, disableMarketplaceSkill, copyMarketplaceSkillSource, setState, t, } = useAppSelectorShallow((s) => ({
|
|
60
|
+
skills: s.skills,
|
|
61
|
+
skillCreateFormOpen: s.skillCreateFormOpen,
|
|
62
|
+
skillCreateName: s.skillCreateName,
|
|
63
|
+
skillCreateDescription: s.skillCreateDescription,
|
|
64
|
+
skillCreating: s.skillCreating,
|
|
65
|
+
skillReviewReport: s.skillReviewReport,
|
|
66
|
+
skillReviewId: s.skillReviewId,
|
|
67
|
+
skillReviewLoading: s.skillReviewLoading,
|
|
68
|
+
skillToggleAction: s.skillToggleAction,
|
|
69
|
+
skillsMarketplaceQuery: s.skillsMarketplaceQuery,
|
|
70
|
+
skillsMarketplaceResults: s.skillsMarketplaceResults,
|
|
71
|
+
skillsMarketplaceError: s.skillsMarketplaceError,
|
|
72
|
+
skillsMarketplaceLoading: s.skillsMarketplaceLoading,
|
|
73
|
+
skillsMarketplaceAction: s.skillsMarketplaceAction,
|
|
74
|
+
skillsMarketplaceManualGithubUrl: s.skillsMarketplaceManualGithubUrl,
|
|
75
|
+
loadSkills: s.loadSkills,
|
|
76
|
+
refreshSkills: s.refreshSkills,
|
|
77
|
+
handleSkillToggle: s.handleSkillToggle,
|
|
78
|
+
handleCreateSkill: s.handleCreateSkill,
|
|
79
|
+
handleDeleteSkill: s.handleDeleteSkill,
|
|
80
|
+
handleReviewSkill: s.handleReviewSkill,
|
|
81
|
+
handleAcknowledgeSkill: s.handleAcknowledgeSkill,
|
|
82
|
+
searchSkillsMarketplace: s.searchSkillsMarketplace,
|
|
83
|
+
installSkillFromMarketplace: s.installSkillFromMarketplace,
|
|
84
|
+
uninstallMarketplaceSkill: s.uninstallMarketplaceSkill,
|
|
85
|
+
installSkillFromGithubUrl: s.installSkillFromGithubUrl,
|
|
86
|
+
enableMarketplaceSkill: s.enableMarketplaceSkill,
|
|
87
|
+
disableMarketplaceSkill: s.disableMarketplaceSkill,
|
|
88
|
+
copyMarketplaceSkillSource: s.copyMarketplaceSkillSource,
|
|
89
|
+
setState: s.setState,
|
|
90
|
+
t: s.t,
|
|
91
|
+
}));
|
|
59
92
|
const [installModalOpen, setInstallModalOpen] = useState(false);
|
|
60
93
|
const [filterText, setFilterText] = useState("");
|
|
61
94
|
const [filterTab, setFilterTab] = useState("all");
|
|
@@ -74,15 +107,16 @@ function SkillsFullView({ contentHeader } = {}) {
|
|
|
74
107
|
}, [loadSkills]);
|
|
75
108
|
// The skills list polls itself in the background instead of exposing a manual
|
|
76
109
|
// refresh control — silently revalidate on a slow interval and on window focus.
|
|
110
|
+
// The interval is gated on document visibility so a backgrounded window goes
|
|
111
|
+
// quiet; the focus listener still gives an immediate refresh on return.
|
|
77
112
|
useEffect(() => {
|
|
78
113
|
const poll = () => void refreshSkills();
|
|
79
114
|
window.addEventListener("focus", poll);
|
|
80
|
-
const interval = window.setInterval(poll, 20_000);
|
|
81
115
|
return () => {
|
|
82
116
|
window.removeEventListener("focus", poll);
|
|
83
|
-
window.clearInterval(interval);
|
|
84
117
|
};
|
|
85
118
|
}, [refreshSkills]);
|
|
119
|
+
useIntervalWhenDocumentVisible(() => void refreshSkills(), 20_000);
|
|
86
120
|
const filteredSkills = useMemo(() => {
|
|
87
121
|
const query = filterText.toLowerCase();
|
|
88
122
|
return skills.filter((skill) => {
|
|
@@ -106,6 +140,8 @@ function SkillsFullView({ contentHeader } = {}) {
|
|
|
106
140
|
const selectedSkill = selectedSkillId
|
|
107
141
|
? (skills.find((skill) => skill.id === selectedSkillId) ?? null)
|
|
108
142
|
: null;
|
|
143
|
+
const enabledSkillCount = useMemo(() => skills.filter((skill) => skill.enabled).length, [skills]);
|
|
144
|
+
const disabledSkillCount = skills.length - enabledSkillCount;
|
|
109
145
|
const filterTabs = [
|
|
110
146
|
{
|
|
111
147
|
key: "all",
|
|
@@ -113,11 +149,11 @@ function SkillsFullView({ contentHeader } = {}) {
|
|
|
113
149
|
},
|
|
114
150
|
{
|
|
115
151
|
key: "on",
|
|
116
|
-
label: `${t("common.on")} (${
|
|
152
|
+
label: `${t("common.on")} (${enabledSkillCount})`,
|
|
117
153
|
},
|
|
118
154
|
{
|
|
119
155
|
key: "off",
|
|
120
|
-
label: `${t("common.off")} (${
|
|
156
|
+
label: `${t("common.off")} (${disabledSkillCount})`,
|
|
121
157
|
},
|
|
122
158
|
];
|
|
123
159
|
const handleDismissReview = () => {
|
|
@@ -261,13 +297,13 @@ function SkillsFullView({ contentHeader } = {}) {
|
|
|
261
297
|
}), description: t("skillsview.noSkillsMatchFilter", {
|
|
262
298
|
defaultValue: 'No skills match "{{filter}}"',
|
|
263
299
|
filter: filterText,
|
|
264
|
-
}) })) : skillCreateFormOpen ? (_jsxs(PagePanel, { variant: "surface", className: "overflow-hidden", children: [_jsx(PagePanel.Header, { heading: t("skillsview.CreateNewSkill") }), _jsx("div", { className: "bg-bg/18 px-4 py-4 sm:px-5", children: _jsxs("div", { className: "flex flex-col gap-3", children: [_jsxs("div", { children: [_jsxs("span", { className: "mb-1 block text-xs-tight font-medium text-muted", children: [t("skillsview.SkillName"), " ", _jsx("span", { className: "text-danger", children: "*" })] }), _jsx(Input, { ref: createNameInput.ref, className: "w-full border-border/50 bg-bg/50
|
|
300
|
+
}) })) : skillCreateFormOpen ? (_jsxs(PagePanel, { variant: "surface", className: "overflow-hidden", children: [_jsx(PagePanel.Header, { heading: t("skillsview.CreateNewSkill") }), _jsx("div", { className: "bg-bg/18 px-4 py-4 sm:px-5", children: _jsxs("div", { className: "flex flex-col gap-3", children: [_jsxs("div", { children: [_jsxs("span", { className: "mb-1 block text-xs-tight font-medium text-muted", children: [t("skillsview.SkillName"), " ", _jsx("span", { className: "text-danger", children: "*" })] }), _jsx(Input, { ref: createNameInput.ref, className: "w-full border-border/50 bg-bg/50 ", placeholder: t("skillsview.eGMyAwesomeSkil"), value: skillCreateName, onChange: (event) => setState("skillCreateName", event.target.value), ...createNameInput.agentProps, onKeyDown: (event) => {
|
|
265
301
|
if (event.key === "Enter" &&
|
|
266
302
|
skillCreateName.trim() &&
|
|
267
303
|
!skillCreating) {
|
|
268
304
|
handleCreateSkill();
|
|
269
305
|
}
|
|
270
|
-
} })] }), _jsxs("div", { children: [_jsx("span", { className: "mb-1 block text-xs-tight font-medium text-muted", children: t("common.description") }), _jsx(Input, { ref: createDescriptionInput.ref, className: "w-full border-border/50 bg-bg/50
|
|
306
|
+
} })] }), _jsxs("div", { children: [_jsx("span", { className: "mb-1 block text-xs-tight font-medium text-muted", children: t("common.description") }), _jsx(Input, { ref: createDescriptionInput.ref, className: "w-full border-border/50 bg-bg/50 ", placeholder: t("skillsview.BriefDescriptionOf"), value: skillCreateDescription, onChange: (event) => setState("skillCreateDescription", event.target.value), ...createDescriptionInput.agentProps, onKeyDown: (event) => {
|
|
271
307
|
if (event.key === "Enter" &&
|
|
272
308
|
skillCreateName.trim() &&
|
|
273
309
|
!skillCreating) {
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Springboard — iOS-like app/view launcher.
|
|
3
|
+
*
|
|
4
|
+
* Renders every available view as a names-only icon on swipeable pages plus a
|
|
5
|
+
* pinned favorites dock. Tap launches; long-press enters edit mode where icons
|
|
6
|
+
* can be reordered (drag), favorited into the dock, and — for manageable
|
|
7
|
+
* (dynamic developer) views — edited or deleted. Page order is persisted via
|
|
8
|
+
* the pure `springboard-layout` model. Favorites are
|
|
9
|
+
* controlled-optional: when `onToggleFavorite` is supplied the dock reflects the
|
|
10
|
+
* caller's `favoriteIds`; otherwise favorites are kept locally. Fully
|
|
11
|
+
* token-themed (light/dark + overrides) and renders no background of its own —
|
|
12
|
+
* the shared root `AppBackground` shows through, matching the home screen.
|
|
13
|
+
*/
|
|
14
|
+
import type { ViewEntry } from "../../hooks/view-catalog.js";
|
|
15
|
+
export interface SpringboardProps {
|
|
16
|
+
entries: ViewEntry[];
|
|
17
|
+
loading?: boolean;
|
|
18
|
+
onLaunch: (entry: ViewEntry) => void;
|
|
19
|
+
onEdgeSwipeRight?: () => void;
|
|
20
|
+
/** When set, favorites are controlled by the caller (e.g. desktop tabs). */
|
|
21
|
+
favoriteIds?: string[];
|
|
22
|
+
onToggleFavorite?: (id: string) => void;
|
|
23
|
+
/** Per-tile management for dynamic views, shown in edit mode when allowed. */
|
|
24
|
+
canManageView?: (id: string) => boolean;
|
|
25
|
+
onEditView?: (id: string) => void;
|
|
26
|
+
onDeleteView?: (id: string) => void;
|
|
27
|
+
/**
|
|
28
|
+
* Controlled active page index. When provided the page is owned by the caller
|
|
29
|
+
* (the shell-surface store, via SpringboardSurface); when omitted it is local
|
|
30
|
+
* state so the component stays usable standalone (stories / isolated tests).
|
|
31
|
+
*/
|
|
32
|
+
page?: number;
|
|
33
|
+
onPageChange?: (page: number) => void;
|
|
34
|
+
/** Fires with the rendered page count whenever it changes, so an outer surface
|
|
35
|
+
* can size the unified page indicator. */
|
|
36
|
+
onPageCountChange?: (count: number) => void;
|
|
37
|
+
/** Controlled edit mode. When omitted, edit mode is local state. */
|
|
38
|
+
editing?: boolean;
|
|
39
|
+
onEditingChange?: (editing: boolean) => void;
|
|
40
|
+
/**
|
|
41
|
+
* Render the inner per-page dots. Off when an outer surface (the rail) owns
|
|
42
|
+
* the single unified indicator — this is what prevents two stacked dot strips
|
|
43
|
+
* (#4). Defaults to true for standalone usage.
|
|
44
|
+
*/
|
|
45
|
+
showPageDots?: boolean;
|
|
46
|
+
className?: string;
|
|
47
|
+
}
|
|
48
|
+
export declare function Springboard({ entries, loading, onLaunch, onEdgeSwipeRight, favoriteIds, onToggleFavorite, canManageView, onEditView, onDeleteView, page: pageProp, onPageChange, onPageCountChange, editing: editingProp, onEditingChange, showPageDots, className, }: SpringboardProps): import("react/jsx-runtime").JSX.Element;
|
|
49
|
+
//# sourceMappingURL=Springboard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Springboard.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/Springboard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAc1D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,gBAAgB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,8EAA8E;IAC9E,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;IACxC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC;+CAC2C;IAC3C,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,oEAAoE;IACpE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAmKD,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,OAAe,EACf,QAAQ,EACR,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,YAAY,EACZ,IAAI,EAAE,QAAQ,EACd,YAAY,EACZ,iBAAiB,EACjB,OAAO,EAAE,WAAW,EACpB,eAAe,EACf,YAAmB,EACnB,SAAS,GACV,EAAE,gBAAgB,2CA0SlB"}
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* Springboard — iOS-like app/view launcher.
|
|
4
|
+
*
|
|
5
|
+
* Renders every available view as a names-only icon on swipeable pages plus a
|
|
6
|
+
* pinned favorites dock. Tap launches; long-press enters edit mode where icons
|
|
7
|
+
* can be reordered (drag), favorited into the dock, and — for manageable
|
|
8
|
+
* (dynamic developer) views — edited or deleted. Page order is persisted via
|
|
9
|
+
* the pure `springboard-layout` model. Favorites are
|
|
10
|
+
* controlled-optional: when `onToggleFavorite` is supplied the dock reflects the
|
|
11
|
+
* caller's `favoriteIds`; otherwise favorites are kept locally. Fully
|
|
12
|
+
* token-themed (light/dark + overrides) and renders no background of its own —
|
|
13
|
+
* the shared root `AppBackground` shows through, matching the home screen.
|
|
14
|
+
*/
|
|
15
|
+
import { Pencil, Trash2 } from "lucide-react";
|
|
16
|
+
import { motion, Reorder } from "motion/react";
|
|
17
|
+
import { memo, useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
18
|
+
import { cn } from "../../lib/utils.js";
|
|
19
|
+
import { moveIcon, readSpringboardLayout, reconcileLayout, SPRINGBOARD_DOCK_LIMIT, toggleFavorite, writeSpringboardLayout, } from "../../state/springboard-layout.js";
|
|
20
|
+
import { emitViewInteraction } from "../../view-telemetry.js";
|
|
21
|
+
import { ViewTileImage } from "../views/ViewTileImage.js";
|
|
22
|
+
const LONG_PRESS_MS = 450;
|
|
23
|
+
/** Finger travel (px) that aborts a long-press — a pan/swipe is not a press, so
|
|
24
|
+
* a horizontal swipe-back can never ghost-fire edit mode mid-gesture. */
|
|
25
|
+
const LONG_PRESS_MOVE_SLOP = 10;
|
|
26
|
+
/** Horizontal drag distance (px) needed to flip to the adjacent page. */
|
|
27
|
+
const SWIPE_THRESHOLD = 60;
|
|
28
|
+
// Memoized so a layout reconcile (install/uninstall/sort) re-renders only the
|
|
29
|
+
// tiles whose props actually changed, not all ~20 on a page.
|
|
30
|
+
const IconTile = memo(function IconTile({ entry, editing, favorited, manageable, onLaunch, onToggleFavorite, onEdit, onDelete, onLongPress, }) {
|
|
31
|
+
const timer = useRef(null);
|
|
32
|
+
const pressStart = useRef(null);
|
|
33
|
+
const clear = () => {
|
|
34
|
+
if (timer.current !== null) {
|
|
35
|
+
clearTimeout(timer.current);
|
|
36
|
+
timer.current = null;
|
|
37
|
+
}
|
|
38
|
+
pressStart.current = null;
|
|
39
|
+
};
|
|
40
|
+
return (_jsxs("div", { className: "flex flex-col items-center gap-1.5 select-none", "data-testid": `springboard-tile-${entry.id}`, children: [_jsxs("div", { className: "relative", children: [_jsx("button", { type: "button", "aria-label": entry.label, onClick: () => {
|
|
41
|
+
if (!editing)
|
|
42
|
+
onLaunch(entry);
|
|
43
|
+
}, onPointerDown: (event) => {
|
|
44
|
+
clear();
|
|
45
|
+
pressStart.current = { x: event.clientX, y: event.clientY };
|
|
46
|
+
timer.current = setTimeout(onLongPress, LONG_PRESS_MS);
|
|
47
|
+
},
|
|
48
|
+
// A long-press requires a near-stationary finger: once movement passes
|
|
49
|
+
// LONG_PRESS_MOVE_SLOP the press is a pan/swipe, so cancel the timer.
|
|
50
|
+
// This is what stops a horizontal swipe-back (which keeps the pointer
|
|
51
|
+
// over the translating tile) from ghost-firing edit mode (#3).
|
|
52
|
+
onPointerMove: (event) => {
|
|
53
|
+
const start = pressStart.current;
|
|
54
|
+
if (!start)
|
|
55
|
+
return;
|
|
56
|
+
if (Math.hypot(event.clientX - start.x, event.clientY - start.y) >
|
|
57
|
+
LONG_PRESS_MOVE_SLOP) {
|
|
58
|
+
clear();
|
|
59
|
+
}
|
|
60
|
+
}, onPointerUp: clear, onPointerLeave: clear,
|
|
61
|
+
// pointercancel (not pointerup) fires when a touch scroll or system
|
|
62
|
+
// gesture interrupts the press — clear the timer so a long-press never
|
|
63
|
+
// ghost-fires edit mode after the user finishes scrolling.
|
|
64
|
+
onPointerCancel: clear, className: cn(
|
|
65
|
+
// ViewTileImage handles image-vs-glyph internally, so the button is
|
|
66
|
+
// one constant surface. The hero image (object-cover) covers the
|
|
67
|
+
// tile when it loads; this dark neutral fill + white glyph is the
|
|
68
|
+
// fallback so a tile reads as a real app icon (not a bare glyph
|
|
69
|
+
// floating on the background) even before/without the image. Filter
|
|
70
|
+
// effects (#9281) and focus rings (#9292) were removed on develop.
|
|
71
|
+
"h-16 w-16 overflow-hidden rounded-2xl border border-white/10 bg-black/35 text-white transition-colors hover:bg-black/45", editing && "animate-pulse"), children: _jsx(ViewTileImage, { entry: entry, source: "springboard", containerClassName: "grid h-full w-full place-items-center", glyphClassName: "h-7 w-7", imageTestId: `springboard-image-${entry.id}` }) }), editing ? (_jsx("button", { type: "button", "aria-label": favorited ? `Unpin ${entry.label}` : `Pin ${entry.label}`, "data-testid": `springboard-fav-${entry.id}`, onClick: (e) => {
|
|
72
|
+
e.stopPropagation();
|
|
73
|
+
onToggleFavorite(entry.id);
|
|
74
|
+
}, className: cn(
|
|
75
|
+
// Filled chips stay legible across image and dark tile backgrounds.
|
|
76
|
+
"absolute -right-1.5 -top-1.5 grid h-5 w-5 place-items-center rounded-full text-[11px] font-bold shadow-md ring-1", favorited
|
|
77
|
+
? "bg-accent text-white ring-black/20"
|
|
78
|
+
: "bg-white text-neutral-900 ring-black/15"), children: favorited ? "★" : "+" })) : null, editing && manageable ? (_jsxs("div", { className: "absolute -left-1.5 -top-1.5 flex gap-1", children: [onEdit ? (_jsx("button", { type: "button", "aria-label": `Edit ${entry.label}`, "data-testid": `springboard-edit-${entry.id}`, onClick: (e) => {
|
|
79
|
+
e.stopPropagation();
|
|
80
|
+
onEdit(entry.id);
|
|
81
|
+
}, className: "grid h-5 w-5 place-items-center rounded-full bg-bg-accent text-foreground", children: _jsx(Pencil, { className: "h-3 w-3", "aria-hidden": "true" }) })) : null, onDelete ? (_jsx("button", { type: "button", "aria-label": `Delete ${entry.label}`, "data-testid": `springboard-delete-${entry.id}`, onClick: (e) => {
|
|
82
|
+
e.stopPropagation();
|
|
83
|
+
onDelete(entry.id);
|
|
84
|
+
}, className: "grid h-5 w-5 place-items-center rounded-full bg-destructive/80 text-destructive-foreground", children: _jsx(Trash2, { className: "h-3 w-3", "aria-hidden": "true" }) })) : null] })) : null] }), _jsx("span", { className: "max-w-[4.5rem] truncate text-center text-[11px] font-medium leading-tight text-white [text-shadow:0_1px_3px_rgba(0,0,0,0.55)]", children: entry.label })] }));
|
|
85
|
+
});
|
|
86
|
+
export function Springboard({ entries, loading = false, onLaunch, onEdgeSwipeRight, favoriteIds, onToggleFavorite, canManageView, onEditView, onDeleteView, page: pageProp, onPageChange, onPageCountChange, editing: editingProp, onEditingChange, showPageDots = true, className, }) {
|
|
87
|
+
const availableIds = useMemo(() => entries.map((e) => e.id), [entries]);
|
|
88
|
+
const byId = useMemo(() => new Map(entries.map((e) => [e.id, e])), [entries]);
|
|
89
|
+
const controlled = onToggleFavorite != null;
|
|
90
|
+
const favorites = useMemo(() => (controlled ? (favoriteIds ?? []) : null), [controlled, favoriteIds]);
|
|
91
|
+
const [layout, setLayout] = useState(() => {
|
|
92
|
+
const stored = readSpringboardLayout();
|
|
93
|
+
return reconcileLayout({ favorites: favorites ?? stored.favorites, pages: stored.pages }, entries.map((e) => e.id));
|
|
94
|
+
});
|
|
95
|
+
// Active page index + edit mode are CONTROLLED when the caller (the
|
|
96
|
+
// shell-surface store, via SpringboardSurface) supplies them, and local
|
|
97
|
+
// otherwise — so the app has one source of truth (the store enforces the
|
|
98
|
+
// "leaving the springboard clears edit mode + page" invariant) while the
|
|
99
|
+
// component stays usable standalone (stories / isolated tests).
|
|
100
|
+
const pageControlled = pageProp !== undefined;
|
|
101
|
+
const [localPage, setLocalPage] = useState(0);
|
|
102
|
+
const activePage = pageProp ?? localPage;
|
|
103
|
+
const setActivePage = useCallback((next) => {
|
|
104
|
+
if (pageControlled)
|
|
105
|
+
onPageChange?.(next);
|
|
106
|
+
else
|
|
107
|
+
setLocalPage(next);
|
|
108
|
+
}, [pageControlled, onPageChange]);
|
|
109
|
+
const editingControlled = editingProp !== undefined;
|
|
110
|
+
const [localEditing, setLocalEditing] = useState(false);
|
|
111
|
+
const editing = editingProp ?? localEditing;
|
|
112
|
+
const setEditingState = useCallback((next) => {
|
|
113
|
+
if (editingControlled)
|
|
114
|
+
onEditingChange?.(next);
|
|
115
|
+
else
|
|
116
|
+
setLocalEditing(next);
|
|
117
|
+
}, [editingControlled, onEditingChange]);
|
|
118
|
+
// Re-reconcile when the available views or controlled favorites change.
|
|
119
|
+
useEffect(() => {
|
|
120
|
+
setLayout((prev) => reconcileLayout({ favorites: favorites ?? prev.favorites, pages: prev.pages }, availableIds));
|
|
121
|
+
}, [availableIds, favorites]);
|
|
122
|
+
// Keep the LOCAL active page index in range when pages shrink (views removed).
|
|
123
|
+
// When controlled, the store clamps the page, so this only guards the
|
|
124
|
+
// standalone path.
|
|
125
|
+
useEffect(() => {
|
|
126
|
+
if (pageControlled)
|
|
127
|
+
return;
|
|
128
|
+
const pageCount = layout.pages.length > 0 ? layout.pages.length : 1;
|
|
129
|
+
setLocalPage((p) => (p > pageCount - 1 ? pageCount - 1 : p));
|
|
130
|
+
}, [layout.pages.length, pageControlled]);
|
|
131
|
+
const commit = useCallback((next) => {
|
|
132
|
+
setLayout(next);
|
|
133
|
+
writeSpringboardLayout(next);
|
|
134
|
+
}, []);
|
|
135
|
+
const toggleFav = useCallback((id) => {
|
|
136
|
+
const wasFavorited = (favorites ?? layout.favorites).includes(id);
|
|
137
|
+
emitViewInteraction({
|
|
138
|
+
source: "springboard",
|
|
139
|
+
action: wasFavorited ? "unfavorite" : "favorite",
|
|
140
|
+
viewId: id,
|
|
141
|
+
});
|
|
142
|
+
if (controlled) {
|
|
143
|
+
onToggleFavorite?.(id);
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
commit(reconcileLayout(toggleFavorite(layout, id), availableIds));
|
|
147
|
+
}, [controlled, onToggleFavorite, commit, layout, availableIds, favorites]);
|
|
148
|
+
const handleLaunch = useCallback((entry) => {
|
|
149
|
+
emitViewInteraction({
|
|
150
|
+
source: "springboard",
|
|
151
|
+
action: "launch",
|
|
152
|
+
viewId: entry.id,
|
|
153
|
+
});
|
|
154
|
+
onLaunch(entry);
|
|
155
|
+
}, [onLaunch]);
|
|
156
|
+
const toggleEditMode = useCallback(() => {
|
|
157
|
+
emitViewInteraction({
|
|
158
|
+
source: "springboard",
|
|
159
|
+
action: editing ? "edit-mode-exit" : "edit-mode-enter",
|
|
160
|
+
});
|
|
161
|
+
setEditingState(!editing);
|
|
162
|
+
}, [editing, setEditingState]);
|
|
163
|
+
const pages = useMemo(() => (layout.pages.length > 0 ? layout.pages : [[]]), [layout.pages]);
|
|
164
|
+
// Report the page count up so an outer surface (the rail) can size the single
|
|
165
|
+
// unified page indicator. Fires only on an actual count change.
|
|
166
|
+
useEffect(() => {
|
|
167
|
+
onPageCountChange?.(pages.length);
|
|
168
|
+
}, [pages.length, onPageCountChange]);
|
|
169
|
+
const clampedPage = Math.min(activePage, pages.length - 1);
|
|
170
|
+
// Cap the rendered dock at SPRINGBOARD_DOCK_LIMIT in BOTH modes. The
|
|
171
|
+
// uncontrolled path already enforces it via toggleFavorite; controlled
|
|
172
|
+
// (desktop-tab) favorites are capped at the pinning source too, but clamp
|
|
173
|
+
// here as defense so the dock can never overflow regardless of caller.
|
|
174
|
+
const favoriteIdList = useMemo(() => (favorites ?? layout.favorites).slice(0, SPRINGBOARD_DOCK_LIMIT), [favorites, layout.favorites]);
|
|
175
|
+
const favoriteEntries = useMemo(() => favoriteIdList
|
|
176
|
+
.map((id) => byId.get(id))
|
|
177
|
+
.filter((e) => e != null), [byId, favoriteIdList]);
|
|
178
|
+
// O(1) dock-membership check inside the tile map instead of Array.includes.
|
|
179
|
+
const favoriteSet = useMemo(() => new Set(favoriteIdList), [favoriteIdList]);
|
|
180
|
+
const handleReorder = useCallback((pageIndex, nextIds) => {
|
|
181
|
+
// Rebuild the layout for this page from the reordered id list.
|
|
182
|
+
let next = layout;
|
|
183
|
+
nextIds.forEach((id, index) => {
|
|
184
|
+
next = moveIcon(next, id, pageIndex, index);
|
|
185
|
+
});
|
|
186
|
+
emitViewInteraction({
|
|
187
|
+
source: "springboard",
|
|
188
|
+
action: "reorder",
|
|
189
|
+
count: pageIndex,
|
|
190
|
+
});
|
|
191
|
+
commit(next);
|
|
192
|
+
}, [layout, commit]);
|
|
193
|
+
const renderTile = useCallback((entry, favorited) => (_jsx(IconTile, { entry: entry, editing: editing, favorited: favorited, manageable: canManageView?.(entry.id) ?? false, onLaunch: handleLaunch, onToggleFavorite: toggleFav, onEdit: onEditView, onDelete: onDeleteView, onLongPress: toggleEditMode })), [
|
|
194
|
+
editing,
|
|
195
|
+
canManageView,
|
|
196
|
+
handleLaunch,
|
|
197
|
+
toggleFav,
|
|
198
|
+
onEditView,
|
|
199
|
+
onDeleteView,
|
|
200
|
+
toggleEditMode,
|
|
201
|
+
]);
|
|
202
|
+
return (_jsxs("div", { className: cn("flex min-h-0 flex-1 flex-col", className), "data-testid": "springboard", children: [favoriteEntries.length > 0 ? (_jsx("div", { "data-testid": "springboard-dock", className: "mx-3 mt-2 mb-3 flex items-center justify-center gap-3 rounded-3xl border border-white/10 bg-black/30 px-3 py-3 backdrop-blur-md sm:mx-4 sm:gap-4 sm:px-6", children: favoriteEntries.map((entry) => (_jsx("div", { children: renderTile(entry, true) }, `dock-${entry.id}`))) })) : null, _jsxs("div", { className: "relative flex min-h-0 flex-1 flex-col overflow-hidden", children: [_jsx(motion.div
|
|
203
|
+
// A stable identity (NOT `key={clampedPage}`): keying on the page
|
|
204
|
+
// index forced a full unmount/remount of the page — Reorder.Group and
|
|
205
|
+
// every tile — on each swipe, which janks the paging. The page content
|
|
206
|
+
// already swaps via `pages[clampedPage]`, and `dragSnapToOrigin`
|
|
207
|
+
// animates the drag back to origin, so the swap is smooth without a
|
|
208
|
+
// remount (#9304).
|
|
209
|
+
, { drag: editing ? false : "x", dragConstraints: { left: 0, right: 0 }, dragElastic: 0.2, dragSnapToOrigin: true, onDragEnd: (_event, info) => {
|
|
210
|
+
if (editing)
|
|
211
|
+
return;
|
|
212
|
+
if (info.offset.x < -SWIPE_THRESHOLD &&
|
|
213
|
+
clampedPage < pages.length - 1) {
|
|
214
|
+
setActivePage(clampedPage + 1);
|
|
215
|
+
emitViewInteraction({
|
|
216
|
+
source: "springboard",
|
|
217
|
+
action: "page-swipe",
|
|
218
|
+
count: clampedPage + 1,
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
else if (info.offset.x > SWIPE_THRESHOLD && clampedPage > 0) {
|
|
222
|
+
setActivePage(clampedPage - 1);
|
|
223
|
+
emitViewInteraction({
|
|
224
|
+
source: "springboard",
|
|
225
|
+
action: "page-swipe",
|
|
226
|
+
count: clampedPage - 1,
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
else if (info.offset.x > SWIPE_THRESHOLD && clampedPage === 0) {
|
|
230
|
+
onEdgeSwipeRight?.();
|
|
231
|
+
}
|
|
232
|
+
}, className: "flex min-h-0 flex-1 items-start justify-center overflow-y-auto px-6 pt-2 pb-8", children: loading && entries.length === 0 ? (_jsx("div", { className: "grid w-full max-w-2xl grid-cols-4 gap-x-4 gap-y-5 sm:grid-cols-5", children: ["a", "b", "c", "d", "e", "f", "g", "h"].map((id) => (_jsxs("div", { className: "flex flex-col items-center gap-1.5 opacity-60", children: [_jsx("div", { className: "h-16 w-16 rounded-2xl bg-bg-accent/50" }), _jsx("div", { className: "h-2.5 w-12 rounded-full bg-bg-accent/50" })] }, id))) })) : (_jsx(Reorder.Group, { axis: "y", values: pages[clampedPage] ?? [], onReorder: (next) => handleReorder(clampedPage, next), className: "grid w-full max-w-2xl grid-cols-4 gap-x-4 gap-y-5 sm:grid-cols-5", children: (pages[clampedPage] ?? []).map((id) => {
|
|
233
|
+
const entry = byId.get(id);
|
|
234
|
+
if (!entry)
|
|
235
|
+
return null;
|
|
236
|
+
return (_jsx(Reorder.Item, { value: id, drag: editing, dragListener: editing, className: "flex justify-center", children: renderTile(entry, favoriteSet.has(id)) }, id));
|
|
237
|
+
}) })) }, "springboard-page"), showPageDots && pages.length > 1 ? (_jsx("div", { className: "flex items-center justify-center gap-2 pb-3", children: pages.map((pageIds, index) => (_jsx("button", { type: "button", "aria-label": `Page ${index + 1}`, "aria-current": index === clampedPage, onClick: () => setActivePage(index), className: cn("h-2 w-2 rounded-full transition-colors", index === clampedPage ? "bg-accent" : "bg-border") }, `dot-${index}-${pageIds[0] ?? "empty"}`))) })) : null] })] }));
|
|
238
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
export interface SpringboardSurfaceProps {
|
|
3
|
+
onNavigateHomeFromEdge?: () => void;
|
|
4
|
+
}
|
|
5
|
+
export declare const SpringboardSurface: React.MemoExoticComponent<({ onNavigateHomeFromEdge, }: SpringboardSurfaceProps) => React.JSX.Element>;
|
|
6
|
+
//# sourceMappingURL=SpringboardSurface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SpringboardSurface.d.ts","sourceRoot":"","sources":["../../../../../../src/components/pages/SpringboardSurface.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA2F/B,MAAM,WAAW,uBAAuB;IACtC,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;CACrC;AAED,eAAO,MAAM,kBAAkB,0DAE5B,uBAAuB,KAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAgF5C,CAAC"}
|