@elizaos/ui 2.0.0-alpha.382 → 2.0.0-alpha.385
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/apps/app-companion/src/components/avatar/VrmViewer.d.ts.map +1 -1
- package/apps/app-companion/src/components/avatar/VrmViewer.js +2 -1
- package/apps/app-companion/src/components/companion/CompanionAppView.d.ts.map +1 -1
- package/apps/app-companion/src/components/companion/CompanionAppView.js +2 -1
- package/apps/app-companion/src/components/companion/CompanionView.d.ts.map +1 -1
- package/apps/app-companion/src/components/companion/CompanionView.js +2 -1
- package/apps/app-companion/src/components/companion/EmotePicker.d.ts.map +1 -1
- package/apps/app-companion/src/components/companion/EmotePicker.js +1 -1
- package/apps/app-companion/src/components/companion/scene-overlay-bridge.d.ts.map +1 -1
- package/apps/app-companion/src/components/companion/scene-overlay-bridge.js +2 -1
- package/apps/app-companion/src/index.d.ts +3 -3
- package/apps/app-companion/src/index.d.ts.map +1 -1
- package/apps/app-companion/src/index.js +3 -3
- package/apps/app-elizamaker/src/drop-service.d.ts +2 -2
- package/apps/app-elizamaker/src/drop-service.d.ts.map +1 -1
- package/apps/app-elizamaker/src/twitter-verify.d.ts +2 -2
- package/apps/app-elizamaker/src/twitter-verify.d.ts.map +1 -1
- package/apps/app-lifeops/src/api/client-lifeops.d.ts +1 -1
- package/apps/app-lifeops/src/api/client-lifeops.d.ts.map +1 -1
- package/apps/app-lifeops/src/contracts/index.d.ts +1 -1
- package/apps/app-lifeops/src/contracts/index.d.ts.map +1 -1
- package/apps/app-lifeops/src/contracts/index.js +1 -1
- package/apps/app-lifeops/src/inbox/message-fetcher.d.ts.map +1 -1
- package/apps/app-lifeops/src/inbox/message-fetcher.js +4 -2
- package/apps/app-lifeops/src/lifeops/google-managed-client.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/google-managed-client.js +4 -3
- package/apps/app-lifeops/src/lifeops/paypal-managed-client.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/paypal-managed-client.js +4 -3
- package/apps/app-lifeops/src/lifeops/plaid-managed-client.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/plaid-managed-client.js +4 -3
- package/apps/app-lifeops/src/lifeops/repository.d.ts +12 -1
- package/apps/app-lifeops/src/lifeops/repository.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/repository.js +135 -0
- package/apps/app-lifeops/src/lifeops/schedule-sync-client.js +1 -1
- package/apps/app-lifeops/src/lifeops/schema.d.ts +4587 -3791
- package/apps/app-lifeops/src/lifeops/schema.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/schema.js +30 -0
- package/apps/app-lifeops/src/lifeops/service-mixin-inbox.d.ts +2 -0
- package/apps/app-lifeops/src/lifeops/service-mixin-inbox.d.ts.map +1 -1
- package/apps/app-lifeops/src/lifeops/service-mixin-inbox.js +103 -13
- package/apps/app-lifeops/src/routes/cloud-features-routes.d.ts.map +1 -1
- package/apps/app-lifeops/src/routes/cloud-features-routes.js +2 -1
- package/apps/app-lifeops/src/routes/travel-provider-relay-routes.d.ts.map +1 -1
- package/apps/app-lifeops/src/routes/travel-provider-relay-routes.js +2 -1
- package/package.json +1 -1
- package/packages/agent/src/actions/grounded-action-reply.d.ts.map +1 -1
- package/packages/agent/src/actions/grounded-action-reply.js +1 -1
- package/packages/agent/src/actions/index.d.ts +1 -0
- package/packages/agent/src/actions/index.d.ts.map +1 -1
- package/packages/agent/src/actions/index.js +1 -0
- package/packages/agent/src/actions/scratchpad.d.ts +7 -0
- package/packages/agent/src/actions/scratchpad.d.ts.map +1 -0
- package/packages/agent/src/actions/scratchpad.js +394 -0
- package/packages/agent/src/actions/settings-actions.js +1 -1
- package/packages/agent/src/actions/terminal.d.ts.map +1 -1
- package/packages/agent/src/actions/terminal.js +10 -2
- package/packages/agent/src/api/apps-routes.d.ts.map +1 -1
- package/packages/agent/src/api/apps-routes.js +171 -0
- package/packages/agent/src/api/binance-skill-helpers.d.ts.map +1 -1
- package/packages/agent/src/api/chat-routes.d.ts +3 -0
- package/packages/agent/src/api/chat-routes.d.ts.map +1 -1
- package/packages/agent/src/api/chat-routes.js +33 -14
- package/packages/agent/src/api/conversation-routes.js +2 -2
- package/packages/agent/src/api/misc-routes.d.ts.map +1 -1
- package/packages/agent/src/api/misc-routes.js +2 -2
- package/packages/agent/src/api/permissions-routes.js +1 -1
- package/packages/agent/src/api/plugin-routes.d.ts.map +1 -1
- package/packages/agent/src/api/plugin-routes.js +7 -1
- package/packages/agent/src/api/provider-switch-config.js +1 -1
- package/packages/agent/src/api/registry-service.d.ts +1 -1
- package/packages/agent/src/api/registry-service.d.ts.map +1 -1
- package/packages/agent/src/api/server-auth.d.ts.map +1 -1
- package/packages/agent/src/api/server-auth.js +119 -1
- package/packages/agent/src/api/server-helpers-auth.d.ts.map +1 -1
- package/packages/agent/src/api/server-helpers-auth.js +119 -1
- package/packages/agent/src/api/server-helpers-swarm.d.ts +1 -1
- package/packages/agent/src/api/server-helpers-swarm.d.ts.map +1 -1
- package/packages/agent/src/api/server-helpers.js +1 -1
- package/packages/agent/src/api/server-types.d.ts +2 -2
- package/packages/agent/src/api/server-types.d.ts.map +1 -1
- package/packages/agent/src/api/server.d.ts.map +1 -1
- package/packages/agent/src/api/server.js +5 -4
- package/packages/agent/src/api/training-backend-check.d.ts +1 -1
- package/packages/agent/src/api/training-backend-check.d.ts.map +1 -1
- package/packages/agent/src/api/training-backend-check.js +1 -1
- package/packages/agent/src/api/training-routes.d.ts +1 -1
- package/packages/agent/src/api/training-routes.d.ts.map +1 -1
- package/packages/agent/src/api/training-routes.js +1 -1
- package/packages/agent/src/api/training-service-like.d.ts +1 -1
- package/packages/agent/src/api/training-service-like.d.ts.map +1 -1
- package/packages/agent/src/api/trajectory-routes.d.ts +1 -1
- package/packages/agent/src/api/trajectory-routes.d.ts.map +1 -1
- package/packages/agent/src/api/trajectory-routes.js +1 -1
- package/packages/agent/src/api/wallet-capability.js +1 -1
- package/packages/agent/src/api/wallet-evm-balance.js +1 -1
- package/packages/agent/src/api/wallet.d.ts +1 -1
- package/packages/agent/src/api/wallet.d.ts.map +1 -1
- package/packages/agent/src/api/wallet.js +2 -2
- package/packages/agent/src/awareness/index.d.ts +2 -0
- package/packages/agent/src/awareness/index.d.ts.map +1 -0
- package/packages/agent/src/awareness/index.js +1 -0
- package/packages/agent/src/config/config.d.ts.map +1 -1
- package/packages/agent/src/config/config.js +2 -0
- package/packages/agent/src/config/index.d.ts +1 -0
- package/packages/agent/src/config/index.d.ts.map +1 -1
- package/packages/agent/src/config/index.js +1 -0
- package/packages/agent/src/config/model-metadata.d.ts +20 -0
- package/packages/agent/src/config/model-metadata.d.ts.map +1 -0
- package/packages/agent/src/config/model-metadata.js +133 -0
- package/packages/agent/src/config/zod-schema.core.d.ts +28 -28
- package/packages/agent/src/config/zod-schema.core.d.ts.map +1 -1
- package/packages/agent/src/config/zod-schema.core.js +16 -9
- package/packages/agent/src/config/zod-schema.d.ts +10 -10
- package/packages/agent/src/index.d.ts +6 -11
- package/packages/agent/src/index.d.ts.map +1 -1
- package/packages/agent/src/index.js +8 -10
- package/packages/agent/src/providers/media-provider.js +1 -1
- package/packages/agent/src/runtime/custom-actions.d.ts.map +1 -1
- package/packages/agent/src/runtime/custom-actions.js +1 -1
- package/packages/agent/src/runtime/eliza-plugin.d.ts.map +1 -1
- package/packages/agent/src/runtime/eliza-plugin.js +6 -0
- package/packages/agent/src/runtime/eliza.d.ts.map +1 -1
- package/packages/agent/src/runtime/eliza.js +7 -7
- package/packages/agent/src/runtime/prompt-optimization.d.ts +24 -1
- package/packages/agent/src/runtime/prompt-optimization.d.ts.map +1 -1
- package/packages/agent/src/runtime/prompt-optimization.js +292 -27
- package/packages/agent/src/runtime/trajectory-internals.d.ts +1 -0
- package/packages/agent/src/runtime/trajectory-internals.d.ts.map +1 -1
- package/packages/agent/src/runtime/trajectory-storage.d.ts.map +1 -1
- package/packages/agent/src/runtime/trajectory-storage.js +3 -0
- package/packages/agent/src/services/index.d.ts +4 -4
- package/packages/agent/src/services/index.d.ts.map +1 -1
- package/packages/agent/src/services/index.js +2 -2
- package/packages/agent/src/services/registry-client-app-meta.d.ts.map +1 -1
- package/packages/agent/src/services/registry-client-app-meta.js +0 -61
- package/packages/agent/src/services/skill-marketplace.d.ts.map +1 -1
- package/packages/app-core/src/App.js +1 -1
- package/packages/app-core/src/api/auth.js +1 -1
- package/packages/app-core/src/api/client-agent.d.ts +1 -2
- package/packages/app-core/src/api/client-agent.d.ts.map +1 -1
- package/packages/app-core/src/api/client-chat.d.ts +10 -1
- package/packages/app-core/src/api/client-chat.d.ts.map +1 -1
- package/packages/app-core/src/api/client-chat.js +33 -0
- package/packages/app-core/src/api/client-skills.d.ts.map +1 -1
- package/packages/app-core/src/api/client-types-chat.d.ts +1 -0
- package/packages/app-core/src/api/client-types-chat.d.ts.map +1 -1
- package/packages/app-core/src/api/client-types-config.d.ts +2 -2
- package/packages/app-core/src/api/client-types-config.d.ts.map +1 -1
- package/packages/app-core/src/api/client-wallet.d.ts +2 -4
- package/packages/app-core/src/api/client-wallet.d.ts.map +1 -1
- package/packages/app-core/src/api/client.d.ts +3 -4
- package/packages/app-core/src/api/client.d.ts.map +1 -1
- package/packages/app-core/src/api/client.js +1 -1
- package/packages/app-core/src/api/compat-route-shared.d.ts +1 -1
- package/packages/app-core/src/api/compat-route-shared.d.ts.map +1 -1
- package/packages/app-core/src/api/compat-route-shared.js +117 -1
- package/packages/app-core/src/api/server-cloud-tts.js +1 -1
- package/packages/app-core/src/api/trusted-local-request.d.ts +4 -0
- package/packages/app-core/src/api/trusted-local-request.d.ts.map +1 -0
- package/packages/app-core/src/api/trusted-local-request.js +176 -0
- package/packages/app-core/src/autonomy/index.d.ts.map +1 -1
- package/packages/app-core/src/autonomy/index.js +3 -1
- package/packages/app-core/src/components/auth/LoginView.d.ts +3 -23
- package/packages/app-core/src/components/auth/LoginView.d.ts.map +1 -1
- package/packages/app-core/src/components/auth/LoginView.js +43 -33
- package/packages/app-core/src/components/chat/AppsSection.d.ts.map +1 -1
- package/packages/app-core/src/components/chat/AppsSection.js +61 -6
- package/packages/app-core/src/components/chat/MessageContent.d.ts.map +1 -1
- package/packages/app-core/src/components/chat/MessageContent.js +26 -3
- package/packages/app-core/src/components/chat/message-choice-parser.d.ts +20 -0
- package/packages/app-core/src/components/chat/message-choice-parser.d.ts.map +1 -0
- package/packages/app-core/src/components/chat/message-choice-parser.js +53 -0
- package/packages/app-core/src/components/chat/widgets/ChoiceWidget.d.ts +24 -0
- package/packages/app-core/src/components/chat/widgets/ChoiceWidget.d.ts.map +1 -0
- package/packages/app-core/src/components/chat/widgets/ChoiceWidget.js +38 -0
- package/packages/app-core/src/components/connectors/ConnectorSetupPanel.js +1 -1
- package/packages/app-core/src/components/custom-actions/CustomActionEditor.d.ts.map +1 -1
- package/packages/app-core/src/components/custom-actions/CustomActionsPanel.d.ts.map +1 -1
- package/packages/app-core/src/components/custom-actions/CustomActionsView.d.ts.map +1 -1
- package/packages/app-core/src/components/custom-actions/custom-action-form.d.ts.map +1 -1
- package/packages/app-core/src/components/pages/BrowserWorkspaceView.js +1 -1
- package/packages/app-core/src/components/pages/KnowledgeView.d.ts.map +1 -1
- package/packages/app-core/src/components/pages/KnowledgeView.js +11 -1
- package/packages/app-core/src/components/pages/PluginConfigForm.d.ts.map +1 -1
- package/packages/app-core/src/components/pages/PluginConfigForm.js +1 -1
- package/packages/app-core/src/components/pages/ScratchpadView.d.ts +2 -0
- package/packages/app-core/src/components/pages/ScratchpadView.d.ts.map +1 -0
- package/packages/app-core/src/components/pages/ScratchpadView.js +364 -0
- package/packages/app-core/src/components/pages/SettingsView.d.ts.map +1 -1
- package/packages/app-core/src/components/pages/SettingsView.js +29 -5
- package/packages/app-core/src/components/pages/VectorBrowserView.d.ts.map +1 -1
- package/packages/app-core/src/components/pages/VectorBrowserView.js +1 -1
- package/packages/app-core/src/components/pages/config-page-sections.d.ts +1 -1
- package/packages/app-core/src/components/pages/config-page-sections.d.ts.map +1 -1
- package/packages/app-core/src/components/pages/config-page-sections.js +1 -1
- package/packages/app-core/src/components/pages/plugin-list-utils.d.ts +1 -1
- package/packages/app-core/src/components/pages/plugin-list-utils.d.ts.map +1 -1
- package/packages/app-core/src/components/pages/useBrowserWorkspaceWalletBridge.d.ts +1 -1
- package/packages/app-core/src/components/pages/useBrowserWorkspaceWalletBridge.d.ts.map +1 -1
- package/packages/app-core/src/components/pages/useBrowserWorkspaceWalletBridge.js +1 -1
- package/packages/app-core/src/components/settings/ApiKeyConfig.js +1 -1
- package/packages/app-core/src/components/settings/AppearanceSettingsSection.d.ts.map +1 -1
- package/packages/app-core/src/components/settings/AppearanceSettingsSection.js +1 -1
- package/packages/app-core/src/components/settings/AppsManagementSection.d.ts +12 -0
- package/packages/app-core/src/components/settings/AppsManagementSection.d.ts.map +1 -0
- package/packages/app-core/src/components/settings/AppsManagementSection.js +285 -0
- package/packages/app-core/src/components/settings/PermissionsSection.js +1 -1
- package/packages/app-core/src/components/settings/ProviderSwitcher.d.ts.map +1 -1
- package/packages/app-core/src/components/settings/ProviderSwitcher.js +2 -2
- package/packages/app-core/src/components/settings/SecuritySettingsSection.d.ts.map +1 -1
- package/packages/app-core/src/components/settings/SecuritySettingsSection.js +150 -33
- package/packages/app-core/src/components/settings/cloud-model-schema.d.ts +1 -1
- package/packages/app-core/src/components/settings/cloud-model-schema.d.ts.map +1 -1
- package/packages/app-core/src/components/shell/Header.d.ts.map +1 -1
- package/packages/app-core/src/components/shell/Header.js +28 -1
- package/packages/app-core/src/components/steward/injected.d.ts.map +1 -1
- package/packages/app-core/src/components/steward/injected.js +1 -1
- package/packages/app-core/src/components/training/injected.d.ts.map +1 -1
- package/packages/app-core/src/components/training/injected.js +1 -1
- package/packages/app-core/src/config/boot-config-store.d.ts +1 -1
- package/packages/app-core/src/config/boot-config-store.d.ts.map +1 -1
- package/packages/app-core/src/content-packs/bundled-packs.d.ts.map +1 -1
- package/packages/app-core/src/hooks/index.d.ts +0 -2
- package/packages/app-core/src/hooks/index.d.ts.map +1 -1
- package/packages/app-core/src/hooks/index.js +0 -2
- package/packages/app-core/src/hooks/useAuthStatus.d.ts +5 -0
- package/packages/app-core/src/hooks/useAuthStatus.d.ts.map +1 -1
- package/packages/app-core/src/hooks/useAuthStatus.js +41 -18
- package/packages/app-core/src/hooks/useSignalPairing.d.ts +1 -1
- package/packages/app-core/src/hooks/useSignalPairing.d.ts.map +1 -1
- package/packages/app-core/src/hooks/useWhatsAppPairing.d.ts +1 -1
- package/packages/app-core/src/hooks/useWhatsAppPairing.d.ts.map +1 -1
- package/packages/app-core/src/i18n/locales/en.json +0 -1
- package/packages/app-core/src/i18n/locales/es.json +0 -1
- package/packages/app-core/src/i18n/locales/ko.json +0 -1
- package/packages/app-core/src/i18n/locales/pt.json +0 -1
- package/packages/app-core/src/i18n/locales/tl.json +0 -1
- package/packages/app-core/src/i18n/locales/vi.json +0 -1
- package/packages/app-core/src/i18n/locales/zh-CN.json +0 -1
- package/packages/app-core/src/index.d.ts +0 -1
- package/packages/app-core/src/index.d.ts.map +1 -1
- package/packages/app-core/src/index.js +0 -1
- package/packages/app-core/src/runtime/channel-plugin-map.d.ts.map +1 -1
- package/packages/app-core/src/runtime/channel-plugin-map.js +1 -1
- package/packages/app-core/src/runtime/plugin-manager-guard.d.ts.map +1 -1
- package/packages/app-core/src/runtime/plugin-manager-guard.js +1 -1
- package/packages/app-core/src/services/plugin-installer.d.ts.map +1 -1
- package/packages/app-core/src/services/plugin-installer.js +1 -8
- package/packages/app-core/src/state/index.d.ts +0 -1
- package/packages/app-core/src/state/index.d.ts.map +1 -1
- package/packages/app-core/src/state/index.js +0 -1
- package/packages/app-core/src/state/startup-phase-restore.d.ts.map +1 -1
- package/packages/app-core/src/state/startup-phase-restore.js +1 -1
- package/packages/app-core/src/state/useOnboardingState.js +2 -2
- package/packages/app-core/src/state/usePluginsSkillsState.d.ts +4 -4
- package/packages/app-core/src/types/index.d.ts +1 -1
- package/packages/app-core/src/types/index.d.ts.map +1 -1
- package/packages/shared/src/contracts/index.d.ts +1 -0
- package/packages/shared/src/contracts/index.d.ts.map +1 -1
- package/packages/shared/src/contracts/index.js +1 -0
- package/packages/shared/src/contracts/scratchpad.d.ts +136 -0
- package/packages/shared/src/contracts/scratchpad.d.ts.map +1 -0
- package/packages/shared/src/contracts/scratchpad.js +90 -0
- package/packages/shared/src/index.d.ts +13 -13
- package/packages/shared/src/index.d.ts.map +1 -1
- package/packages/shared/src/index.js +19 -19
- package/packages/shared/src/spoken-text.js +1 -1
- package/packages/typescript/src/features/advanced-capabilities/evaluators/factExtractor.d.ts.map +1 -1
- package/packages/typescript/src/features/advanced-capabilities/evaluators/factExtractor.js +12 -6
- package/packages/typescript/src/generated/action-docs.d.ts +25 -0
- package/packages/typescript/src/generated/action-docs.d.ts.map +1 -1
- package/packages/typescript/src/generated/action-docs.js +51 -0
- package/packages/typescript/src/services/message.d.ts.map +1 -1
- package/packages/typescript/src/services/message.js +1 -3
- package/packages/typescript/src/types/tools.d.ts.map +1 -1
- package/packages/typescript/src/types/tools.js +7 -3
- package/apps/app-lifeops/src/action.d.ts +0 -3
- package/apps/app-lifeops/src/action.d.ts.map +0 -1
- package/apps/app-lifeops/src/action.js +0 -351
- package/apps/app-lifeops/src/actions/activity-report.d.ts +0 -13
- package/apps/app-lifeops/src/actions/activity-report.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/activity-report.js +0 -313
- package/apps/app-lifeops/src/actions/app-blocker.d.ts +0 -7
- package/apps/app-lifeops/src/actions/app-blocker.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/app-blocker.js +0 -454
- package/apps/app-lifeops/src/actions/approval.d.ts +0 -21
- package/apps/app-lifeops/src/actions/approval.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/approval.js +0 -342
- package/apps/app-lifeops/src/actions/autofill.d.ts +0 -35
- package/apps/app-lifeops/src/actions/autofill.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/autofill.js +0 -475
- package/apps/app-lifeops/src/actions/book-travel-executor.d.ts +0 -9
- package/apps/app-lifeops/src/actions/book-travel-executor.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/book-travel-executor.js +0 -65
- package/apps/app-lifeops/src/actions/book-travel.d.ts +0 -5
- package/apps/app-lifeops/src/actions/book-travel.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/book-travel.js +0 -491
- package/apps/app-lifeops/src/actions/calendar.d.ts +0 -19
- package/apps/app-lifeops/src/actions/calendar.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/calendar.js +0 -3189
- package/apps/app-lifeops/src/actions/calendly.d.ts +0 -3
- package/apps/app-lifeops/src/actions/calendly.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/calendly.js +0 -285
- package/apps/app-lifeops/src/actions/chat-thread-control.d.ts +0 -3
- package/apps/app-lifeops/src/actions/chat-thread-control.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/chat-thread-control.js +0 -260
- package/apps/app-lifeops/src/actions/checkin.d.ts +0 -8
- package/apps/app-lifeops/src/actions/checkin.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/checkin.js +0 -230
- package/apps/app-lifeops/src/actions/computer-use.d.ts +0 -14
- package/apps/app-lifeops/src/actions/computer-use.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/computer-use.js +0 -365
- package/apps/app-lifeops/src/actions/cross-channel-send.d.ts +0 -34
- package/apps/app-lifeops/src/actions/cross-channel-send.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/cross-channel-send.js +0 -964
- package/apps/app-lifeops/src/actions/device-bus.d.ts +0 -19
- package/apps/app-lifeops/src/actions/device-bus.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/device-bus.js +0 -386
- package/apps/app-lifeops/src/actions/dossier.d.ts +0 -5
- package/apps/app-lifeops/src/actions/dossier.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/dossier.js +0 -227
- package/apps/app-lifeops/src/actions/email-unsubscribe.d.ts +0 -5
- package/apps/app-lifeops/src/actions/email-unsubscribe.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/email-unsubscribe.js +0 -172
- package/apps/app-lifeops/src/actions/gmail.d.ts +0 -57
- package/apps/app-lifeops/src/actions/gmail.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/gmail.js +0 -2540
- package/apps/app-lifeops/src/actions/health.d.ts +0 -9
- package/apps/app-lifeops/src/actions/health.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/health.js +0 -398
- package/apps/app-lifeops/src/actions/inbox.d.ts +0 -5
- package/apps/app-lifeops/src/actions/inbox.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/inbox.js +0 -1244
- package/apps/app-lifeops/src/actions/intent-sync.d.ts +0 -5
- package/apps/app-lifeops/src/actions/intent-sync.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/intent-sync.js +0 -326
- package/apps/app-lifeops/src/actions/life-goal-extractor.d.ts +0 -69
- package/apps/app-lifeops/src/actions/life-goal-extractor.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/life-goal-extractor.js +0 -420
- package/apps/app-lifeops/src/actions/life-param-extractor.d.ts +0 -78
- package/apps/app-lifeops/src/actions/life-param-extractor.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/life-param-extractor.js +0 -431
- package/apps/app-lifeops/src/actions/life-recent-context.d.ts +0 -9
- package/apps/app-lifeops/src/actions/life-recent-context.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/life-recent-context.js +0 -78
- package/apps/app-lifeops/src/actions/life-update-extractor.d.ts +0 -27
- package/apps/app-lifeops/src/actions/life-update-extractor.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/life-update-extractor.js +0 -195
- package/apps/app-lifeops/src/actions/life.d.ts +0 -5
- package/apps/app-lifeops/src/actions/life.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/life.extractor.d.ts +0 -18
- package/apps/app-lifeops/src/actions/life.extractor.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/life.extractor.js +0 -363
- package/apps/app-lifeops/src/actions/life.js +0 -3247
- package/apps/app-lifeops/src/actions/lifeops-connector.d.ts +0 -5
- package/apps/app-lifeops/src/actions/lifeops-connector.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/lifeops-connector.js +0 -683
- package/apps/app-lifeops/src/actions/lifeops-extraction-config.d.ts +0 -16
- package/apps/app-lifeops/src/actions/lifeops-extraction-config.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/lifeops-extraction-config.js +0 -25
- package/apps/app-lifeops/src/actions/lifeops-google-helpers.d.ts +0 -64
- package/apps/app-lifeops/src/actions/lifeops-google-helpers.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/lifeops-google-helpers.js +0 -671
- package/apps/app-lifeops/src/actions/lifeops-mutate.d.ts +0 -5
- package/apps/app-lifeops/src/actions/lifeops-mutate.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/lifeops-mutate.js +0 -769
- package/apps/app-lifeops/src/actions/list-remote-sessions.d.ts +0 -6
- package/apps/app-lifeops/src/actions/list-remote-sessions.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/list-remote-sessions.js +0 -45
- package/apps/app-lifeops/src/actions/non-actionable-request.d.ts +0 -17
- package/apps/app-lifeops/src/actions/non-actionable-request.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/non-actionable-request.js +0 -25
- package/apps/app-lifeops/src/actions/owner-app-block.d.ts +0 -12
- package/apps/app-lifeops/src/actions/owner-app-block.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/owner-app-block.js +0 -144
- package/apps/app-lifeops/src/actions/owner-calendar.d.ts +0 -15
- package/apps/app-lifeops/src/actions/owner-calendar.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/owner-calendar.js +0 -762
- package/apps/app-lifeops/src/actions/owner-inbox.d.ts +0 -5
- package/apps/app-lifeops/src/actions/owner-inbox.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/owner-inbox.js +0 -662
- package/apps/app-lifeops/src/actions/owner-remote-desktop.d.ts +0 -12
- package/apps/app-lifeops/src/actions/owner-remote-desktop.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/owner-remote-desktop.js +0 -173
- package/apps/app-lifeops/src/actions/owner-schedule.d.ts +0 -3
- package/apps/app-lifeops/src/actions/owner-schedule.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/owner-schedule.js +0 -174
- package/apps/app-lifeops/src/actions/owner-screen-time.d.ts +0 -10
- package/apps/app-lifeops/src/actions/owner-screen-time.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/owner-screen-time.js +0 -213
- package/apps/app-lifeops/src/actions/owner-website-block.d.ts +0 -12
- package/apps/app-lifeops/src/actions/owner-website-block.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/owner-website-block.js +0 -424
- package/apps/app-lifeops/src/actions/password-manager.d.ts +0 -5
- package/apps/app-lifeops/src/actions/password-manager.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/password-manager.js +0 -217
- package/apps/app-lifeops/src/actions/payments.d.ts +0 -5
- package/apps/app-lifeops/src/actions/payments.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/payments.js +0 -236
- package/apps/app-lifeops/src/actions/relationships.d.ts +0 -12
- package/apps/app-lifeops/src/actions/relationships.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/relationships.js +0 -880
- package/apps/app-lifeops/src/actions/remote-desktop.d.ts +0 -5
- package/apps/app-lifeops/src/actions/remote-desktop.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/remote-desktop.js +0 -248
- package/apps/app-lifeops/src/actions/revoke-remote-session.d.ts +0 -6
- package/apps/app-lifeops/src/actions/revoke-remote-session.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/revoke-remote-session.js +0 -73
- package/apps/app-lifeops/src/actions/schedule-x-dm-reply.d.ts +0 -3
- package/apps/app-lifeops/src/actions/schedule-x-dm-reply.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/schedule-x-dm-reply.js +0 -134
- package/apps/app-lifeops/src/actions/scheduled-trigger-task.d.ts +0 -19
- package/apps/app-lifeops/src/actions/scheduled-trigger-task.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/scheduled-trigger-task.js +0 -82
- package/apps/app-lifeops/src/actions/scheduling.d.ts +0 -70
- package/apps/app-lifeops/src/actions/scheduling.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/scheduling.js +0 -1078
- package/apps/app-lifeops/src/actions/screen-time.d.ts +0 -8
- package/apps/app-lifeops/src/actions/screen-time.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/screen-time.js +0 -249
- package/apps/app-lifeops/src/actions/search-across-channels.d.ts +0 -13
- package/apps/app-lifeops/src/actions/search-across-channels.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/search-across-channels.js +0 -338
- package/apps/app-lifeops/src/actions/start-remote-session.d.ts +0 -14
- package/apps/app-lifeops/src/actions/start-remote-session.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/start-remote-session.js +0 -139
- package/apps/app-lifeops/src/actions/subscriptions.d.ts +0 -5
- package/apps/app-lifeops/src/actions/subscriptions.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/subscriptions.js +0 -404
- package/apps/app-lifeops/src/actions/timezone-normalization.d.ts +0 -4
- package/apps/app-lifeops/src/actions/timezone-normalization.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/timezone-normalization.js +0 -159
- package/apps/app-lifeops/src/actions/twilio-call.d.ts +0 -20
- package/apps/app-lifeops/src/actions/twilio-call.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/twilio-call.js +0 -853
- package/apps/app-lifeops/src/actions/update-owner-profile.d.ts +0 -5
- package/apps/app-lifeops/src/actions/update-owner-profile.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/update-owner-profile.js +0 -181
- package/apps/app-lifeops/src/actions/x-read.d.ts +0 -5
- package/apps/app-lifeops/src/actions/x-read.d.ts.map +0 -1
- package/apps/app-lifeops/src/actions/x-read.js +0 -561
- package/apps/app-lifeops/src/activity-profile/activity-tracker-service.d.ts +0 -36
- package/apps/app-lifeops/src/activity-profile/activity-tracker-service.d.ts.map +0 -1
- package/apps/app-lifeops/src/activity-profile/activity-tracker-service.js +0 -160
- package/apps/app-lifeops/src/activity-profile/analyzer.d.ts +0 -23
- package/apps/app-lifeops/src/activity-profile/analyzer.d.ts.map +0 -1
- package/apps/app-lifeops/src/activity-profile/analyzer.js +0 -555
- package/apps/app-lifeops/src/activity-profile/presence-signal-bridge-service.d.ts +0 -14
- package/apps/app-lifeops/src/activity-profile/presence-signal-bridge-service.d.ts.map +0 -1
- package/apps/app-lifeops/src/activity-profile/presence-signal-bridge-service.js +0 -133
- package/apps/app-lifeops/src/activity-profile/proactive-planner.d.ts +0 -71
- package/apps/app-lifeops/src/activity-profile/proactive-planner.d.ts.map +0 -1
- package/apps/app-lifeops/src/activity-profile/proactive-planner.js +0 -567
- package/apps/app-lifeops/src/activity-profile/proactive-worker.d.ts +0 -32
- package/apps/app-lifeops/src/activity-profile/proactive-worker.d.ts.map +0 -1
- package/apps/app-lifeops/src/activity-profile/proactive-worker.js +0 -676
- package/apps/app-lifeops/src/activity-profile/service.d.ts +0 -11
- package/apps/app-lifeops/src/activity-profile/service.d.ts.map +0 -1
- package/apps/app-lifeops/src/activity-profile/service.js +0 -246
- package/apps/app-lifeops/src/app-blocker/access.d.ts +0 -8
- package/apps/app-lifeops/src/app-blocker/access.d.ts.map +0 -1
- package/apps/app-lifeops/src/app-blocker/access.js +0 -35
- package/apps/app-lifeops/src/app-blocker/engine.d.ts +0 -10
- package/apps/app-lifeops/src/app-blocker/engine.d.ts.map +0 -1
- package/apps/app-lifeops/src/app-blocker/engine.js +0 -43
- package/apps/app-lifeops/src/components/AppBlockerSettingsCard.d.ts +0 -3
- package/apps/app-lifeops/src/components/AppBlockerSettingsCard.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/AppBlockerSettingsCard.js +0 -189
- package/apps/app-lifeops/src/components/BrowserBridgeSetupPanel.d.ts +0 -2
- package/apps/app-lifeops/src/components/BrowserBridgeSetupPanel.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/BrowserBridgeSetupPanel.js +0 -1065
- package/apps/app-lifeops/src/components/BrowserBridgeStatusChip.d.ts +0 -7
- package/apps/app-lifeops/src/components/BrowserBridgeStatusChip.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/BrowserBridgeStatusChip.js +0 -74
- package/apps/app-lifeops/src/components/DataSourcesStrip.d.ts +0 -14
- package/apps/app-lifeops/src/components/DataSourcesStrip.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/DataSourcesStrip.js +0 -36
- package/apps/app-lifeops/src/components/EventEditorDrawer.d.ts +0 -23
- package/apps/app-lifeops/src/components/EventEditorDrawer.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/EventEditorDrawer.js +0 -514
- package/apps/app-lifeops/src/components/LifeOpsActivitySignalsEffect.d.ts +0 -2
- package/apps/app-lifeops/src/components/LifeOpsActivitySignalsEffect.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsActivitySignalsEffect.js +0 -10
- package/apps/app-lifeops/src/components/LifeOpsCalendarSection.d.ts +0 -15
- package/apps/app-lifeops/src/components/LifeOpsCalendarSection.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsCalendarSection.js +0 -515
- package/apps/app-lifeops/src/components/LifeOpsChatAdapter.d.ts +0 -34
- package/apps/app-lifeops/src/components/LifeOpsChatAdapter.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsChatAdapter.js +0 -175
- package/apps/app-lifeops/src/components/LifeOpsFeatureTogglesSection.d.ts +0 -2
- package/apps/app-lifeops/src/components/LifeOpsFeatureTogglesSection.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsFeatureTogglesSection.js +0 -99
- package/apps/app-lifeops/src/components/LifeOpsHabitVisuals.d.ts +0 -37
- package/apps/app-lifeops/src/components/LifeOpsHabitVisuals.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsHabitVisuals.js +0 -88
- package/apps/app-lifeops/src/components/LifeOpsInboxSection.d.ts +0 -13
- package/apps/app-lifeops/src/components/LifeOpsInboxSection.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsInboxSection.js +0 -490
- package/apps/app-lifeops/src/components/LifeOpsLinkBankButton.d.ts +0 -12
- package/apps/app-lifeops/src/components/LifeOpsLinkBankButton.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsLinkBankButton.js +0 -92
- package/apps/app-lifeops/src/components/LifeOpsLinkPaypalButton.d.ts +0 -12
- package/apps/app-lifeops/src/components/LifeOpsLinkPaypalButton.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsLinkPaypalButton.js +0 -160
- package/apps/app-lifeops/src/components/LifeOpsMoneySection.d.ts +0 -3
- package/apps/app-lifeops/src/components/LifeOpsMoneySection.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsMoneySection.js +0 -373
- package/apps/app-lifeops/src/components/LifeOpsNavRail.d.ts +0 -9
- package/apps/app-lifeops/src/components/LifeOpsNavRail.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsNavRail.js +0 -93
- package/apps/app-lifeops/src/components/LifeOpsOperationalPanels.d.ts +0 -4
- package/apps/app-lifeops/src/components/LifeOpsOperationalPanels.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsOperationalPanels.js +0 -274
- package/apps/app-lifeops/src/components/LifeOpsOverviewSection.d.ts +0 -7
- package/apps/app-lifeops/src/components/LifeOpsOverviewSection.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsOverviewSection.js +0 -670
- package/apps/app-lifeops/src/components/LifeOpsPageSections.d.ts +0 -42
- package/apps/app-lifeops/src/components/LifeOpsPageSections.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsPageSections.js +0 -166
- package/apps/app-lifeops/src/components/LifeOpsPageView.d.ts +0 -2
- package/apps/app-lifeops/src/components/LifeOpsPageView.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsPageView.js +0 -565
- package/apps/app-lifeops/src/components/LifeOpsRemindersSection.d.ts +0 -2
- package/apps/app-lifeops/src/components/LifeOpsRemindersSection.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsRemindersSection.js +0 -749
- package/apps/app-lifeops/src/components/LifeOpsResizableSidebar.d.ts +0 -27
- package/apps/app-lifeops/src/components/LifeOpsResizableSidebar.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsResizableSidebar.js +0 -106
- package/apps/app-lifeops/src/components/LifeOpsScreenTimeSection.d.ts +0 -2
- package/apps/app-lifeops/src/components/LifeOpsScreenTimeSection.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsScreenTimeSection.js +0 -373
- package/apps/app-lifeops/src/components/LifeOpsSectionContent.d.ts +0 -10
- package/apps/app-lifeops/src/components/LifeOpsSectionContent.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsSectionContent.js +0 -30
- package/apps/app-lifeops/src/components/LifeOpsSelectionContext.d.ts +0 -21
- package/apps/app-lifeops/src/components/LifeOpsSelectionContext.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsSelectionContext.js +0 -30
- package/apps/app-lifeops/src/components/LifeOpsSettingsSection.d.ts +0 -20
- package/apps/app-lifeops/src/components/LifeOpsSettingsSection.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsSettingsSection.js +0 -597
- package/apps/app-lifeops/src/components/LifeOpsSetupGate.d.ts +0 -13
- package/apps/app-lifeops/src/components/LifeOpsSetupGate.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsSetupGate.js +0 -134
- package/apps/app-lifeops/src/components/LifeOpsSleepSection.d.ts +0 -10
- package/apps/app-lifeops/src/components/LifeOpsSleepSection.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsSleepSection.js +0 -425
- package/apps/app-lifeops/src/components/LifeOpsWorkspaceShell.d.ts +0 -11
- package/apps/app-lifeops/src/components/LifeOpsWorkspaceShell.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsWorkspaceShell.js +0 -49
- package/apps/app-lifeops/src/components/LifeOpsWorkspaceView.d.ts +0 -2
- package/apps/app-lifeops/src/components/LifeOpsWorkspaceView.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/LifeOpsWorkspaceView.js +0 -1041
- package/apps/app-lifeops/src/components/MessagingConnectorCards.d.ts +0 -7
- package/apps/app-lifeops/src/components/MessagingConnectorCards.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/MessagingConnectorCards.js +0 -643
- package/apps/app-lifeops/src/components/MissingSourceCard.d.ts +0 -9
- package/apps/app-lifeops/src/components/MissingSourceCard.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/MissingSourceCard.js +0 -5
- package/apps/app-lifeops/src/components/MobileSignalsSetupCard.d.ts +0 -2
- package/apps/app-lifeops/src/components/MobileSignalsSetupCard.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/MobileSignalsSetupCard.js +0 -162
- package/apps/app-lifeops/src/components/SleepInspectionPanel.d.ts +0 -8
- package/apps/app-lifeops/src/components/SleepInspectionPanel.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/SleepInspectionPanel.js +0 -59
- package/apps/app-lifeops/src/components/WebsiteBlockerSettingsCard.d.ts +0 -3
- package/apps/app-lifeops/src/components/WebsiteBlockerSettingsCard.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/WebsiteBlockerSettingsCard.js +0 -75
- package/apps/app-lifeops/src/components/WhatsAppQrOverlay.d.ts +0 -8
- package/apps/app-lifeops/src/components/WhatsAppQrOverlay.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/WhatsAppQrOverlay.js +0 -48
- package/apps/app-lifeops/src/components/lifeops-labels.d.ts +0 -2
- package/apps/app-lifeops/src/components/lifeops-labels.d.ts.map +0 -1
- package/apps/app-lifeops/src/components/lifeops-labels.js +0 -5
- package/apps/app-lifeops/src/events/index.d.ts +0 -34
- package/apps/app-lifeops/src/events/index.d.ts.map +0 -1
- package/apps/app-lifeops/src/events/index.js +0 -23
- package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.d.ts +0 -3
- package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.d.ts.map +0 -1
- package/apps/app-lifeops/src/followup/actions/listOverdueFollowups.js +0 -48
- package/apps/app-lifeops/src/followup/actions/markFollowupDone.d.ts +0 -3
- package/apps/app-lifeops/src/followup/actions/markFollowupDone.d.ts.map +0 -1
- package/apps/app-lifeops/src/followup/actions/markFollowupDone.js +0 -173
- package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.d.ts +0 -3
- package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.d.ts.map +0 -1
- package/apps/app-lifeops/src/followup/actions/setFollowupThreshold.js +0 -172
- package/apps/app-lifeops/src/followup/followup-tracker.d.ts +0 -82
- package/apps/app-lifeops/src/followup/followup-tracker.d.ts.map +0 -1
- package/apps/app-lifeops/src/followup/followup-tracker.js +0 -279
- package/apps/app-lifeops/src/followup/index.d.ts +0 -5
- package/apps/app-lifeops/src/followup/index.d.ts.map +0 -1
- package/apps/app-lifeops/src/followup/index.js +0 -4
- package/apps/app-lifeops/src/hooks/useCalendarWeek.d.ts +0 -28
- package/apps/app-lifeops/src/hooks/useCalendarWeek.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useCalendarWeek.js +0 -93
- package/apps/app-lifeops/src/hooks/useDiscordConnector.d.ts +0 -14
- package/apps/app-lifeops/src/hooks/useDiscordConnector.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useDiscordConnector.js +0 -126
- package/apps/app-lifeops/src/hooks/useGoogleLifeOpsConnector.d.ts +0 -29
- package/apps/app-lifeops/src/hooks/useGoogleLifeOpsConnector.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useGoogleLifeOpsConnector.js +0 -481
- package/apps/app-lifeops/src/hooks/useIMessageConnector.d.ts +0 -10
- package/apps/app-lifeops/src/hooks/useIMessageConnector.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useIMessageConnector.js +0 -50
- package/apps/app-lifeops/src/hooks/useInbox.d.ts +0 -34
- package/apps/app-lifeops/src/hooks/useInbox.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useInbox.js +0 -98
- package/apps/app-lifeops/src/hooks/useLifeOpsActivitySignals.d.ts +0 -2
- package/apps/app-lifeops/src/hooks/useLifeOpsActivitySignals.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useLifeOpsActivitySignals.js +0 -382
- package/apps/app-lifeops/src/hooks/useLifeOpsAppState.d.ts +0 -21
- package/apps/app-lifeops/src/hooks/useLifeOpsAppState.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useLifeOpsAppState.js +0 -83
- package/apps/app-lifeops/src/hooks/useLifeOpsCapabilitiesStatus.d.ts +0 -8
- package/apps/app-lifeops/src/hooks/useLifeOpsCapabilitiesStatus.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useLifeOpsCapabilitiesStatus.js +0 -60
- package/apps/app-lifeops/src/hooks/useLifeOpsScheduleInspection.d.ts +0 -18
- package/apps/app-lifeops/src/hooks/useLifeOpsScheduleInspection.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useLifeOpsScheduleInspection.js +0 -66
- package/apps/app-lifeops/src/hooks/useLifeOpsScheduleState.d.ts +0 -14
- package/apps/app-lifeops/src/hooks/useLifeOpsScheduleState.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useLifeOpsScheduleState.js +0 -79
- package/apps/app-lifeops/src/hooks/useLifeOpsSection.d.ts +0 -18
- package/apps/app-lifeops/src/hooks/useLifeOpsSection.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useLifeOpsSection.js +0 -78
- package/apps/app-lifeops/src/hooks/useLifeOpsXConnector.d.ts +0 -14
- package/apps/app-lifeops/src/hooks/useLifeOpsXConnector.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useLifeOpsXConnector.js +0 -160
- package/apps/app-lifeops/src/hooks/useSignalConnector.d.ts +0 -16
- package/apps/app-lifeops/src/hooks/useSignalConnector.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useSignalConnector.js +0 -198
- package/apps/app-lifeops/src/hooks/useTelegramConnector.d.ts +0 -21
- package/apps/app-lifeops/src/hooks/useTelegramConnector.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useTelegramConnector.js +0 -177
- package/apps/app-lifeops/src/hooks/useWhatsAppConnector.d.ts +0 -8
- package/apps/app-lifeops/src/hooks/useWhatsAppConnector.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useWhatsAppConnector.js +0 -58
- package/apps/app-lifeops/src/hooks/useWhatsAppPairing.d.ts +0 -12
- package/apps/app-lifeops/src/hooks/useWhatsAppPairing.d.ts.map +0 -1
- package/apps/app-lifeops/src/hooks/useWhatsAppPairing.js +0 -152
- package/apps/app-lifeops/src/inbox/config.d.ts +0 -7
- package/apps/app-lifeops/src/inbox/config.d.ts.map +0 -1
- package/apps/app-lifeops/src/inbox/config.js +0 -67
- package/apps/app-lifeops/src/inbox/reflection.d.ts +0 -40
- package/apps/app-lifeops/src/inbox/reflection.d.ts.map +0 -1
- package/apps/app-lifeops/src/inbox/reflection.js +0 -115
- package/apps/app-lifeops/src/inbox/repository.d.ts +0 -52
- package/apps/app-lifeops/src/inbox/repository.d.ts.map +0 -1
- package/apps/app-lifeops/src/inbox/repository.js +0 -262
- package/apps/app-lifeops/src/inbox/triage-classifier.d.ts +0 -15
- package/apps/app-lifeops/src/inbox/triage-classifier.d.ts.map +0 -1
- package/apps/app-lifeops/src/inbox/triage-classifier.js +0 -179
- package/apps/app-lifeops/src/index.d.ts +0 -20
- package/apps/app-lifeops/src/index.d.ts.map +0 -1
- package/apps/app-lifeops/src/index.js +0 -18
- package/apps/app-lifeops/src/lifeops/approval-queue.d.ts +0 -24
- package/apps/app-lifeops/src/lifeops/approval-queue.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/approval-queue.js +0 -500
- package/apps/app-lifeops/src/lifeops/approval-queue.types.d.ts +0 -166
- package/apps/app-lifeops/src/lifeops/approval-queue.types.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/approval-queue.types.js +0 -22
- package/apps/app-lifeops/src/lifeops/autofill-whitelist.d.ts +0 -15
- package/apps/app-lifeops/src/lifeops/autofill-whitelist.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/autofill-whitelist.js +0 -116
- package/apps/app-lifeops/src/lifeops/background-planner-dispatch.d.ts +0 -60
- package/apps/app-lifeops/src/lifeops/background-planner-dispatch.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/background-planner-dispatch.js +0 -134
- package/apps/app-lifeops/src/lifeops/background-planner.d.ts +0 -141
- package/apps/app-lifeops/src/lifeops/background-planner.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/background-planner.js +0 -377
- package/apps/app-lifeops/src/lifeops/calendly-client.d.ts +0 -61
- package/apps/app-lifeops/src/lifeops/calendly-client.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/calendly-client.js +0 -234
- package/apps/app-lifeops/src/lifeops/checkin/schedule-resolver.d.ts +0 -14
- package/apps/app-lifeops/src/lifeops/checkin/schedule-resolver.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/checkin/schedule-resolver.js +0 -27
- package/apps/app-lifeops/src/lifeops/cross-channel-search.d.ts +0 -88
- package/apps/app-lifeops/src/lifeops/cross-channel-search.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/cross-channel-search.js +0 -446
- package/apps/app-lifeops/src/lifeops/intent-sync.d.ts +0 -59
- package/apps/app-lifeops/src/lifeops/intent-sync.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/intent-sync.js +0 -305
- package/apps/app-lifeops/src/lifeops/notifications-push.d.ts +0 -37
- package/apps/app-lifeops/src/lifeops/notifications-push.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/notifications-push.js +0 -92
- package/apps/app-lifeops/src/lifeops/password-manager-bridge.d.ts +0 -50
- package/apps/app-lifeops/src/lifeops/password-manager-bridge.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/password-manager-bridge.js +0 -448
- package/apps/app-lifeops/src/lifeops/remote-desktop.d.ts +0 -38
- package/apps/app-lifeops/src/lifeops/remote-desktop.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/remote-desktop.js +0 -372
- package/apps/app-lifeops/src/lifeops/runtime.d.ts +0 -11
- package/apps/app-lifeops/src/lifeops/runtime.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/runtime.js +0 -57
- package/apps/app-lifeops/src/lifeops/screen-context.d.ts +0 -52
- package/apps/app-lifeops/src/lifeops/screen-context.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops/screen-context.js +0 -349
- package/apps/app-lifeops/src/lifeops-route.d.ts +0 -74
- package/apps/app-lifeops/src/lifeops-route.d.ts.map +0 -1
- package/apps/app-lifeops/src/lifeops-route.js +0 -204
- package/apps/app-lifeops/src/platform/index.d.ts +0 -2
- package/apps/app-lifeops/src/platform/index.d.ts.map +0 -1
- package/apps/app-lifeops/src/platform/index.js +0 -1
- package/apps/app-lifeops/src/platform/lifeops-github.d.ts +0 -15
- package/apps/app-lifeops/src/platform/lifeops-github.d.ts.map +0 -1
- package/apps/app-lifeops/src/platform/lifeops-github.js +0 -135
- package/apps/app-lifeops/src/plugin.d.ts +0 -33
- package/apps/app-lifeops/src/plugin.d.ts.map +0 -1
- package/apps/app-lifeops/src/plugin.js +0 -316
- package/apps/app-lifeops/src/provider.d.ts +0 -4
- package/apps/app-lifeops/src/provider.d.ts.map +0 -1
- package/apps/app-lifeops/src/provider.js +0 -77
- package/apps/app-lifeops/src/providers/activity-profile.d.ts +0 -3
- package/apps/app-lifeops/src/providers/activity-profile.d.ts.map +0 -1
- package/apps/app-lifeops/src/providers/activity-profile.js +0 -140
- package/apps/app-lifeops/src/providers/app-blocker.d.ts +0 -3
- package/apps/app-lifeops/src/providers/app-blocker.d.ts.map +0 -1
- package/apps/app-lifeops/src/providers/app-blocker.js +0 -86
- package/apps/app-lifeops/src/providers/cross-channel-context.d.ts +0 -29
- package/apps/app-lifeops/src/providers/cross-channel-context.d.ts.map +0 -1
- package/apps/app-lifeops/src/providers/cross-channel-context.js +0 -182
- package/apps/app-lifeops/src/providers/inbox-triage.d.ts +0 -3
- package/apps/app-lifeops/src/providers/inbox-triage.d.ts.map +0 -1
- package/apps/app-lifeops/src/providers/inbox-triage.js +0 -90
- package/apps/app-lifeops/src/providers/lifeops.d.ts +0 -3
- package/apps/app-lifeops/src/providers/lifeops.d.ts.map +0 -1
- package/apps/app-lifeops/src/providers/lifeops.js +0 -197
- package/apps/app-lifeops/src/remote/pairing-code.d.ts +0 -39
- package/apps/app-lifeops/src/remote/pairing-code.d.ts.map +0 -1
- package/apps/app-lifeops/src/remote/pairing-code.js +0 -76
- package/apps/app-lifeops/src/remote/remote-session-service.d.ts +0 -107
- package/apps/app-lifeops/src/remote/remote-session-service.d.ts.map +0 -1
- package/apps/app-lifeops/src/remote/remote-session-service.js +0 -253
- package/apps/app-lifeops/src/service.d.ts +0 -32
- package/apps/app-lifeops/src/service.d.ts.map +0 -1
- package/apps/app-lifeops/src/service.js +0 -67
- package/apps/app-lifeops/src/travel-time/calendar-create.d.ts +0 -17
- package/apps/app-lifeops/src/travel-time/calendar-create.d.ts.map +0 -1
- package/apps/app-lifeops/src/travel-time/calendar-create.js +0 -21
- package/apps/app-lifeops/src/travel-time/service.d.ts +0 -60
- package/apps/app-lifeops/src/travel-time/service.d.ts.map +0 -1
- package/apps/app-lifeops/src/travel-time/service.js +0 -142
- package/apps/app-lifeops/src/utils/lifeops-url.d.ts +0 -5
- package/apps/app-lifeops/src/utils/lifeops-url.d.ts.map +0 -1
- package/apps/app-lifeops/src/utils/lifeops-url.js +0 -35
- package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.d.ts +0 -3
- package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.d.ts.map +0 -1
- package/apps/app-lifeops/src/website-blocker/chat-integration/actions/blockUntilTaskComplete.js +0 -246
- package/apps/app-lifeops/src/website-blocker/chat-integration/actions/listActiveBlocks.d.ts +0 -3
- package/apps/app-lifeops/src/website-blocker/chat-integration/actions/listActiveBlocks.d.ts.map +0 -1
- package/apps/app-lifeops/src/website-blocker/chat-integration/actions/listActiveBlocks.js +0 -83
- package/apps/app-lifeops/src/website-blocker/chat-integration/actions/releaseBlock.d.ts +0 -3
- package/apps/app-lifeops/src/website-blocker/chat-integration/actions/releaseBlock.d.ts.map +0 -1
- package/apps/app-lifeops/src/website-blocker/chat-integration/actions/releaseBlock.js +0 -98
- package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-reconciler.d.ts +0 -7
- package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-reconciler.d.ts.map +0 -1
- package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-reconciler.js +0 -111
- package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-schema.d.ts +0 -39
- package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-schema.d.ts.map +0 -1
- package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-schema.js +0 -123
- package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-service.d.ts +0 -21
- package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-service.d.ts.map +0 -1
- package/apps/app-lifeops/src/website-blocker/chat-integration/block-rule-service.js +0 -258
- package/apps/app-lifeops/src/website-blocker/chat-integration/index.d.ts +0 -8
- package/apps/app-lifeops/src/website-blocker/chat-integration/index.d.ts.map +0 -1
- package/apps/app-lifeops/src/website-blocker/chat-integration/index.js +0 -6
- package/packages/app-core/src/api/client-lifeops.d.ts +0 -35
- package/packages/app-core/src/api/client-lifeops.d.ts.map +0 -1
- package/packages/app-core/src/api/client-lifeops.js +0 -114
- package/packages/app-core/src/hooks/useGoogleLifeOpsConnector.d.ts +0 -20
- package/packages/app-core/src/hooks/useGoogleLifeOpsConnector.d.ts.map +0 -1
- package/packages/app-core/src/hooks/useGoogleLifeOpsConnector.js +0 -69
- package/packages/app-core/src/hooks/useLifeOpsAppState.d.ts +0 -21
- package/packages/app-core/src/hooks/useLifeOpsAppState.d.ts.map +0 -1
- package/packages/app-core/src/hooks/useLifeOpsAppState.js +0 -81
- package/packages/app-core/src/services/steward-sidecar.d.ts +0 -6
- package/packages/app-core/src/services/steward-sidecar.d.ts.map +0 -1
- package/packages/app-core/src/services/steward-sidecar.js +0 -5
|
@@ -1,17 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* LoginView — multi-method login for Milady.
|
|
3
|
-
*
|
|
4
|
-
* Four tabs, rendered in this order (password first: most common for local installs):
|
|
5
|
-
* 1. Password — displayName + password + remember device + submit
|
|
6
|
-
* 2. Eliza Cloud SSO — single button (disabled with tooltip until P2 backend lands)
|
|
7
|
-
* 3. Connector — sign in via Discord / Telegram DM link (disabled until P3)
|
|
8
|
-
* 4. Pairing code — legacy 4-4-4 pairing flow; kept through the 14-day grace window
|
|
9
|
-
*
|
|
10
|
-
* On a 200 from /api/auth/me the caller should redirect to "/".
|
|
11
|
-
*
|
|
12
|
-
* Uses @elizaos/ui primitives (Tabs, Card, Input, Label, Button) + onboarding
|
|
13
|
-
* styles for the dark visual shell.
|
|
14
|
-
*/
|
|
15
1
|
import { type AuthLoginResult } from "../../api/auth-client";
|
|
16
2
|
export interface LoginViewProps {
|
|
17
3
|
/**
|
|
@@ -19,17 +5,11 @@ export interface LoginViewProps {
|
|
|
19
5
|
* main dashboard.
|
|
20
6
|
*/
|
|
21
7
|
onLoginSuccess: () => void;
|
|
22
|
-
/**
|
|
23
|
-
* Whether Eliza Cloud SSO is available. When false the SSO tab button is
|
|
24
|
-
* disabled with an explanatory tooltip.
|
|
25
|
-
*/
|
|
8
|
+
/** Whether Eliza Cloud SSO is available. */
|
|
26
9
|
cloudEnabled?: boolean;
|
|
27
|
-
/**
|
|
28
|
-
* Connector bindings available for DM-link login.
|
|
29
|
-
* Empty array → connector tab shows "no bindings" state.
|
|
30
|
-
*/
|
|
10
|
+
/** Connector bindings available for DM-link login. */
|
|
31
11
|
connectorBindings?: ConnectorBinding[];
|
|
32
|
-
/** Optional
|
|
12
|
+
/** Optional pairing props forwarded to the pairing tab. */
|
|
33
13
|
pairing?: PairingTabProps;
|
|
34
14
|
/** Injected login function (tests). */
|
|
35
15
|
loginFn?: (params: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoginView.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/auth/LoginView.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LoginView.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/auth/LoginView.tsx"],"names":[],"mappings":"AAqBA,OAAO,EAAE,KAAK,eAAe,EAAqB,MAAM,uBAAuB,CAAC;AAWhF,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,4CAA4C;IAC5C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,sDAAsD;IACtD,iBAAiB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACvC,2DAA2D;IAC3D,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,uCAAuC;IACvC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,sBAAsB,GAAG,gCAAgC,CAAC;CACpE;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACxD,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAClC;AAmUD,wBAAgB,SAAS,CAAC,EACxB,cAAc,EACd,YAAoB,EACpB,iBAAsB,EACtB,OAAO,EACP,OAAO,EACP,MAAM,GACP,EAAE,cAAc,2CA6GhB"}
|
|
@@ -1,20 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
*
|
|
5
|
-
* Four tabs, rendered in this order (password first: most common for local installs):
|
|
6
|
-
* 1. Password — displayName + password + remember device + submit
|
|
7
|
-
* 2. Eliza Cloud SSO — single button (disabled with tooltip until P2 backend lands)
|
|
8
|
-
* 3. Connector — sign in via Discord / Telegram DM link (disabled until P3)
|
|
9
|
-
* 4. Pairing code — legacy 4-4-4 pairing flow; kept through the 14-day grace window
|
|
10
|
-
*
|
|
11
|
-
* On a 200 from /api/auth/me the caller should redirect to "/".
|
|
12
|
-
*
|
|
13
|
-
* Uses @elizaos/ui primitives (Tabs, Card, Input, Label, Button) + onboarding
|
|
14
|
-
* styles for the dark visual shell.
|
|
15
|
-
*/
|
|
16
|
-
import { Button, Card, CardContent, CardHeader, CardTitle, cn, Input, Label, Tabs, TabsContent, TabsList, TabsTrigger, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, } from "@elizaos/ui";
|
|
17
|
-
import { useCallback, useId, useState } from "react";
|
|
2
|
+
import { Button, Card, CardContent, CardHeader, CardTitle, cn, Input, Label, Tabs, TabsContent, TabsList, TabsTrigger, } from "@elizaos/ui";
|
|
3
|
+
import { useCallback, useId, useState, } from "react";
|
|
18
4
|
import { authLoginPassword } from "../../api/auth-client";
|
|
19
5
|
import { OnboardingStepDivider, onboardingBodyTextShadowStyle, onboardingDescriptionClass, onboardingEyebrowClass, onboardingTitleClass, } from "../onboarding/onboarding-step-chrome";
|
|
20
6
|
function PasswordTab({ onLoginSuccess, loginFn, }) {
|
|
@@ -66,25 +52,19 @@ function PasswordTab({ onLoginSuccess, loginFn, }) {
|
|
|
66
52
|
}, disabled: isSubmitting, "aria-required": "true" })] }), _jsxs("label", { className: "flex cursor-pointer items-center gap-2 text-sm text-muted-foreground select-none", children: [_jsx("input", { type: "checkbox", checked: rememberDevice, onChange: (e) => setRememberDevice(e.target.checked), disabled: isSubmitting, className: "h-4 w-4 rounded border-border accent-primary" }), "Remember this device for 30 days"] })] }), submitState.phase === "error" && (_jsx("p", { role: "alert", className: "rounded-lg border border-[color:color-mix(in_srgb,var(--danger)_38%,transparent)] bg-[color:color-mix(in_srgb,var(--danger)_12%,transparent)] px-4 py-3 text-sm text-danger", children: submitState.message })), _jsx(Button, { type: "submit", disabled: isSubmitting || !displayName.trim() || !password, className: "w-full", children: isSubmitting ? "Signing in…" : "Sign in" })] }));
|
|
67
53
|
}
|
|
68
54
|
// ── SSO tab ───────────────────────────────────────────────────────────────────
|
|
69
|
-
function SsoTab(
|
|
70
|
-
|
|
71
|
-
return (_jsxs("div", { className: "flex flex-col items-center gap-4 py-2", children: [_jsx("p", { className: "text-sm text-muted-foreground text-center leading-relaxed", children: "Sign in with your Eliza Cloud account. This method requires the instance to have an active Eliza Cloud connection." }), _jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "w-full", children: _jsx(Button, { asChild: cloudEnabled, disabled: !cloudEnabled, className: "w-full", variant: "outline", children: cloudEnabled ? (_jsx("a", { href: "/api/auth/login/sso/start?returnTo=/", children: "Sign in with Eliza Cloud" })) : (_jsx("span", { children: "Sign in with Eliza Cloud" })) }) }) }), !cloudEnabled && _jsx(TooltipContent, { children: tooltipText })] }) })] }));
|
|
55
|
+
function SsoTab() {
|
|
56
|
+
return (_jsxs("div", { className: "flex flex-col items-center gap-4 py-2", children: [_jsx("p", { className: "text-sm text-muted-foreground text-center leading-relaxed", children: "Sign in with your Eliza Cloud account. This method requires the instance to have an active Eliza Cloud connection." }), _jsx(Button, { asChild: true, className: "w-full", variant: "outline", children: _jsx("a", { href: "/api/auth/login/sso/start?returnTo=/", children: "Sign in with Eliza Cloud" }) })] }));
|
|
72
57
|
}
|
|
73
58
|
// ── Connector tab ─────────────────────────────────────────────────────────────
|
|
74
59
|
function ConnectorTab({ bindings }) {
|
|
75
|
-
const hasBindings = bindings.length > 0;
|
|
76
|
-
const unavailableTooltip = "Available when a connector owner is bound to this instance.";
|
|
77
|
-
if (!hasBindings) {
|
|
78
|
-
return (_jsxs("div", { className: "flex flex-col items-center gap-4 py-2", children: [_jsx("p", { className: "text-sm text-muted-foreground text-center leading-relaxed", children: "Log in via a Discord or Telegram message. This method requires a connector owner binding to be configured first." }), _jsx(TooltipProvider, { children: _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: "w-full", children: _jsx(Button, { disabled: true, className: "w-full", variant: "outline", children: "Send login link" }) }) }), _jsx(TooltipContent, { children: unavailableTooltip })] }) }), _jsx("p", { className: "text-xs text-muted-foreground/60 text-center", children: "No connector bindings configured. Set up a connector in Settings to enable this method." })] }));
|
|
79
|
-
}
|
|
80
60
|
return (_jsxs("div", { className: "flex flex-col gap-4 py-2", children: [_jsx("p", { className: "text-sm text-muted-foreground leading-relaxed", children: "Choose a connector \u2014 we\u2019ll send you a one-time login link." }), _jsx("div", { className: "flex flex-col gap-2", children: bindings.map((b) => (_jsx(ConnectorLoginButton, { binding: b }, `${b.connector}:${b.displayHandle}`))) })] }));
|
|
81
61
|
}
|
|
62
|
+
const DM_LINK_UNAVAILABLE_MESSAGE = "Login links are unavailable on this server. Use another sign-in method or contact the instance owner.";
|
|
82
63
|
function ConnectorLoginButton({ binding }) {
|
|
83
64
|
const [state, setState] = useState({ phase: "idle" });
|
|
84
65
|
const handleClick = useCallback(async () => {
|
|
85
66
|
setState({ phase: "sending" });
|
|
86
67
|
try {
|
|
87
|
-
// P3 backend route — may not exist yet. Surface 404 gracefully.
|
|
88
68
|
const res = await fetch("/api/auth/login/owner/dm-link/request", {
|
|
89
69
|
method: "POST",
|
|
90
70
|
credentials: "include",
|
|
@@ -97,7 +77,7 @@ function ConnectorLoginButton({ binding }) {
|
|
|
97
77
|
if (res.status === 404) {
|
|
98
78
|
setState({
|
|
99
79
|
phase: "error",
|
|
100
|
-
message:
|
|
80
|
+
message: DM_LINK_UNAVAILABLE_MESSAGE,
|
|
101
81
|
});
|
|
102
82
|
return;
|
|
103
83
|
}
|
|
@@ -126,22 +106,52 @@ function ConnectorLoginButton({ binding }) {
|
|
|
126
106
|
// ── Pairing tab ───────────────────────────────────────────────────────────────
|
|
127
107
|
function PairingTab({ pairing }) {
|
|
128
108
|
const pairingCodeId = useId().replace(/:/g, "");
|
|
129
|
-
if (!pairing) {
|
|
130
|
-
return (_jsx("p", { className: "py-2 text-sm text-muted-foreground", children: "Pairing is not available in the current server configuration." }));
|
|
131
|
-
}
|
|
132
109
|
const code = pairing.pairingCodeInput.trim();
|
|
133
110
|
return (_jsxs("form", { onSubmit: (e) => {
|
|
134
111
|
e.preventDefault();
|
|
135
112
|
if (code)
|
|
136
113
|
pairing.onSubmit(code);
|
|
137
|
-
}, className: "flex flex-col gap-4", children: [_jsx("p", { className: "text-sm text-muted-foreground leading-relaxed", children: "Enter the pairing code shown in your CLI or desktop app.
|
|
114
|
+
}, className: "flex flex-col gap-4", children: [_jsx("p", { className: "text-sm text-muted-foreground leading-relaxed", children: "Enter the pairing code shown in your CLI or desktop app." }), _jsxs("div", { className: "flex flex-col gap-1.5", children: [_jsx(Label, { htmlFor: pairingCodeId, className: "text-xs uppercase tracking-wide text-muted-foreground", children: "Pairing code" }), _jsx(Input, { id: pairingCodeId, type: "text", placeholder: "xxxx-xxxx-xxxx", value: pairing.pairingCodeInput, onChange: (e) => pairing.onCodeChange(e.target.value), disabled: pairing.pairingBusy, autoComplete: "off", spellCheck: false })] }), pairing.pairingError && (_jsx("p", { role: "alert", className: "text-sm text-danger", children: pairing.pairingError })), _jsx(Button, { type: "submit", disabled: pairing.pairingBusy || !code, className: "w-full", children: pairing.pairingBusy ? "Pairing…" : "Submit code" })] }));
|
|
138
115
|
}
|
|
139
116
|
// ── Root component ────────────────────────────────────────────────────────────
|
|
140
117
|
const SCREEN_SHELL_CLASS = "relative flex min-h-screen w-full items-center justify-center overflow-hidden bg-bg px-4 py-6 font-body text-txt sm:px-6";
|
|
141
118
|
const SCREEN_CARD_CLASS = "relative z-10 w-full max-w-[520px] overflow-hidden border border-border/60 bg-card/95 shadow-[0_30px_120px_rgba(0,0,0,0.35)] backdrop-blur-xl";
|
|
142
119
|
export function LoginView({ onLoginSuccess, cloudEnabled = false, connectorBindings = [], pairing, loginFn, reason, }) {
|
|
143
120
|
const remotePasswordMissing = reason === "remote_password_not_configured";
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
121
|
+
const visibleMethods = [
|
|
122
|
+
{
|
|
123
|
+
value: "password",
|
|
124
|
+
label: "Password",
|
|
125
|
+
content: (_jsx(PasswordTab, { onLoginSuccess: onLoginSuccess, loginFn: loginFn })),
|
|
126
|
+
},
|
|
127
|
+
];
|
|
128
|
+
if (cloudEnabled) {
|
|
129
|
+
visibleMethods.push({
|
|
130
|
+
value: "sso",
|
|
131
|
+
label: "Cloud",
|
|
132
|
+
content: _jsx(SsoTab, {}),
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
if (connectorBindings.length > 0) {
|
|
136
|
+
visibleMethods.push({
|
|
137
|
+
value: "connector",
|
|
138
|
+
label: "Connector",
|
|
139
|
+
content: _jsx(ConnectorTab, { bindings: connectorBindings }),
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
if (pairing?.pairingEnabled) {
|
|
143
|
+
visibleMethods.push({
|
|
144
|
+
value: "pairing",
|
|
145
|
+
label: "Pairing",
|
|
146
|
+
content: _jsx(PairingTab, { pairing: pairing }),
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
const loginDescription = visibleMethods.length > 1
|
|
150
|
+
? "Choose your login method below."
|
|
151
|
+
: "Sign in with your password.";
|
|
152
|
+
return (_jsxs("div", { className: SCREEN_SHELL_CLASS, children: [_jsx("div", { className: "absolute inset-0 overflow-hidden pointer-events-none", children: _jsx("div", { className: "absolute inset-0 bg-[radial-gradient(circle_at_top,rgba(255,255,255,0.08),transparent_40%),linear-gradient(180deg,rgba(11,14,20,0.24),rgba(6,7,8,0.62))]" }) }), _jsxs(Card, { className: SCREEN_CARD_CLASS, children: [_jsx(CardHeader, { className: "pb-2 pt-6 px-6", children: _jsxs("div", { className: "mb-1", children: [_jsx("p", { className: onboardingEyebrowClass, style: onboardingBodyTextShadowStyle, children: "Milady" }), _jsx(OnboardingStepDivider, {}), _jsx(CardTitle, { className: cn(onboardingTitleClass, "mt-2"), style: { textShadow: "var(--onboarding-text-shadow-strong)" }, children: remotePasswordMissing ? "Remote access blocked" : "Sign in" }), _jsx("p", { className: cn(onboardingDescriptionClass, "mt-2"), style: onboardingBodyTextShadowStyle, children: remotePasswordMissing
|
|
153
|
+
? "A remote password is required before this instance can accept browser logins from another machine."
|
|
154
|
+
: loginDescription })] }) }), _jsx(CardContent, { className: "px-6 pb-6", children: remotePasswordMissing ? (_jsx("div", { role: "alert", className: "rounded-lg border border-border/60 bg-bg/50 px-4 py-3 text-sm leading-6 text-muted-foreground", children: "Open Milady on the host machine via localhost, then set a remote password in Settings." })) : (_jsxs(Tabs, { defaultValue: "password", children: [_jsx(TabsList, { className: "mb-5 grid w-full", style: {
|
|
155
|
+
gridTemplateColumns: `repeat(${visibleMethods.length}, minmax(0, 1fr))`,
|
|
156
|
+
}, children: visibleMethods.map((method) => (_jsx(TabsTrigger, { value: method.value, children: method.label }, method.value))) }), visibleMethods.map((method) => (_jsx(TabsContent, { value: method.value, children: method.content }, method.value)))] })) })] })] }));
|
|
147
157
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppsSection.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/chat/AppsSection.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"AppsSection.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/chat/AppsSection.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AA0BvC,MAAM,WAAW,gBAAgB;IAC/B,4EAA4E;IAC5E,YAAY,CAAC,EAAE,SAAS,CAAC;CAC1B;AAED,wBAAgB,WAAW,CAAC,EAAE,YAAY,EAAE,GAAE,gBAAqB,kDAgSlE"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
/**
|
|
3
3
|
* Apps widget section — shown at the top of the chat widget sidebar.
|
|
4
4
|
*
|
|
5
5
|
* Renders running apps first (with a health-state ring), then favorited apps
|
|
6
6
|
* that are not currently running. Clicking an app launches / focuses it.
|
|
7
7
|
*/
|
|
8
|
-
import {
|
|
8
|
+
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "@elizaos/ui";
|
|
9
|
+
import { LayoutGrid, MoreHorizontal } from "lucide-react";
|
|
9
10
|
import { useCallback, useEffect, useMemo, useState } from "react";
|
|
10
11
|
import { client } from "../../api";
|
|
11
12
|
import { useApp } from "../../state";
|
|
@@ -71,6 +72,51 @@ export function AppsSection({ headerAction } = {}) {
|
|
|
71
72
|
};
|
|
72
73
|
}, [catalogApps, appRuns, favoriteApps]);
|
|
73
74
|
// -------------------------------------------------------------------------
|
|
75
|
+
// Kebab menu actions: relaunch, edit, stop. Launch stays as the tile click.
|
|
76
|
+
// -------------------------------------------------------------------------
|
|
77
|
+
const handleRelaunch = useCallback(async (app) => {
|
|
78
|
+
try {
|
|
79
|
+
await client.fetch("/api/apps/relaunch", {
|
|
80
|
+
method: "POST",
|
|
81
|
+
body: JSON.stringify({ name: app.name }),
|
|
82
|
+
});
|
|
83
|
+
setActionNotice(`${app.displayName ?? app.name} relaunched.`, "success", 3000);
|
|
84
|
+
}
|
|
85
|
+
catch (err) {
|
|
86
|
+
setActionNotice(err instanceof Error
|
|
87
|
+
? err.message
|
|
88
|
+
: t("appsview.LaunchFailed", {
|
|
89
|
+
name: app.displayName ?? app.name,
|
|
90
|
+
message: t("common.error"),
|
|
91
|
+
}), "error", 4000);
|
|
92
|
+
}
|
|
93
|
+
}, [setActionNotice, t]);
|
|
94
|
+
const handleEdit = useCallback(async (app) => {
|
|
95
|
+
try {
|
|
96
|
+
await client.fetch("/api/apps/create", {
|
|
97
|
+
method: "POST",
|
|
98
|
+
body: JSON.stringify({ intent: "edit", editTarget: app.name }),
|
|
99
|
+
});
|
|
100
|
+
setActionNotice(`Editing ${app.displayName ?? app.name}…`, "info", 3500);
|
|
101
|
+
}
|
|
102
|
+
catch (err) {
|
|
103
|
+
setActionNotice(err instanceof Error
|
|
104
|
+
? err.message
|
|
105
|
+
: `Couldn't start an edit for ${app.displayName ?? app.name}.`, "error", 4000);
|
|
106
|
+
}
|
|
107
|
+
}, [setActionNotice]);
|
|
108
|
+
const handleStop = useCallback(async (app) => {
|
|
109
|
+
try {
|
|
110
|
+
await client.stopApp(app.name);
|
|
111
|
+
setActionNotice(`${app.displayName ?? app.name} stopped.`, "success", 3000);
|
|
112
|
+
}
|
|
113
|
+
catch (err) {
|
|
114
|
+
setActionNotice(err instanceof Error
|
|
115
|
+
? err.message
|
|
116
|
+
: `Couldn't stop ${app.displayName ?? app.name}.`, "error", 4000);
|
|
117
|
+
}
|
|
118
|
+
}, [setActionNotice]);
|
|
119
|
+
// -------------------------------------------------------------------------
|
|
74
120
|
// Launch handler (identical logic to FavoriteAppsBar)
|
|
75
121
|
// -------------------------------------------------------------------------
|
|
76
122
|
const handleLaunch = useCallback(async (app) => {
|
|
@@ -112,9 +158,18 @@ export function AppsSection({ headerAction } = {}) {
|
|
|
112
158
|
const run = runByName.get(app.name);
|
|
113
159
|
const displayName = app.displayName ?? getAppShortName(app);
|
|
114
160
|
const ringClass = run ? getRunRingClass(run) : "";
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
161
|
+
const isRunning = Boolean(run);
|
|
162
|
+
return (_jsxs("div", { className: "group relative", "data-testid": `apps-section-tile-${app.name}`, children: [_jsx("button", { type: "button", title: displayName, "aria-label": t("chatsidebar.launchApp", {
|
|
163
|
+
defaultValue: `Launch ${displayName}`,
|
|
164
|
+
name: displayName,
|
|
165
|
+
}), className: `rounded-2xl transition-transform hover:scale-105 ${ringClass}`, onClick: () => void handleLaunch(app), children: _jsx(AppIdentityTile, { app: app, active: isRunning, size: "sm", imageOnly: true }) }), _jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx("button", { type: "button", "aria-label": `Actions for ${displayName}`, "data-testid": `apps-section-kebab-${app.name}`, onClick: (event) => event.stopPropagation(), className: "absolute -right-1 -top-1 inline-flex h-5 w-5 items-center justify-center rounded-full border border-border bg-bg text-muted opacity-0 shadow-sm transition-opacity hover:text-txt focus:opacity-100 focus-visible:opacity-100 group-hover:opacity-100", children: _jsx(MoreHorizontal, { className: "h-3 w-3", "aria-hidden": true }) }) }), _jsxs(DropdownMenuContent, { align: "end", sideOffset: 4, className: "w-36", onClick: (event) => event.stopPropagation(), children: [_jsx(DropdownMenuItem, { "data-testid": `apps-section-launch-${app.name}`, onSelect: () => void handleLaunch(app), children: t("settings.sections.apps.launch", {
|
|
166
|
+
defaultValue: "Launch",
|
|
167
|
+
}) }), _jsx(DropdownMenuItem, { "data-testid": `apps-section-relaunch-${app.name}`, onSelect: () => void handleRelaunch(app), children: t("settings.sections.apps.relaunch", {
|
|
168
|
+
defaultValue: "Relaunch",
|
|
169
|
+
}) }), _jsx(DropdownMenuItem, { "data-testid": `apps-section-edit-${app.name}`, onSelect: () => void handleEdit(app), children: t("settings.sections.apps.edit", {
|
|
170
|
+
defaultValue: "Edit",
|
|
171
|
+
}) }), isRunning ? (_jsx(DropdownMenuItem, { "data-testid": `apps-section-stop-${app.name}`, className: "text-danger focus:text-danger", onSelect: () => void handleStop(app), children: t("settings.sections.apps.stop", {
|
|
172
|
+
defaultValue: "Stop",
|
|
173
|
+
}) })) : null] })] })] }, app.name));
|
|
119
174
|
}) })) : null }));
|
|
120
175
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageContent.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/chat/MessageContent.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGvE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"MessageContent.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/chat/MessageContent.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGvE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAwC5D,UAAU,mBAAmB;IAC3B,OAAO,EAAE,mBAAmB,CAAC;CAC9B;AAyDD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAkCzD;AAsBD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAW1D;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,GAAG,IAAI,CAsDhE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,GACX,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAmElE;AAyGD,gHAAgH;AAChH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAEpD;AA+cD,wBAAgB,cAAc,CAAC,EAAE,OAAO,EAAE,EAAE,mBAAmB,2CAiF9D"}
|
|
@@ -7,6 +7,8 @@ import { stripAssistantStageDirections } from "../../utils/assistant-text";
|
|
|
7
7
|
import { ConfigRenderer, defaultRegistry } from "../config-ui/config-renderer";
|
|
8
8
|
import { UiRenderer } from "../config-ui/ui-renderer";
|
|
9
9
|
import { paramsToSchema } from "../pages/plugin-list-utils";
|
|
10
|
+
import { findChoiceRegions } from "./message-choice-parser";
|
|
11
|
+
import { ChoiceWidget } from "./widgets/ChoiceWidget";
|
|
10
12
|
/** Reject prototype-pollution keys that should never be traversed or rendered. */
|
|
11
13
|
const BLOCKED_IDS = new Set(["__proto__", "constructor", "prototype"]);
|
|
12
14
|
const SAFE_PLUGIN_ID_RE = /^[\w-]+$/;
|
|
@@ -258,8 +260,8 @@ export function findPatchRegions(text) {
|
|
|
258
260
|
return results;
|
|
259
261
|
}
|
|
260
262
|
/**
|
|
261
|
-
* Parse message text for [CONFIG:id] markers,
|
|
262
|
-
* inline JSONL patch blocks (Chat Mode).
|
|
263
|
+
* Parse message text for [CONFIG:id] markers, [CHOICE:...] blocks,
|
|
264
|
+
* fenced UiSpec JSON, and inline JSONL patch blocks (Chat Mode).
|
|
263
265
|
* Returns an array of segments for rendering.
|
|
264
266
|
*/
|
|
265
267
|
function parseSegments(text) {
|
|
@@ -279,6 +281,19 @@ function parseSegments(text) {
|
|
|
279
281
|
});
|
|
280
282
|
m = CONFIG_RE.exec(cleaned);
|
|
281
283
|
}
|
|
284
|
+
// 1b. Find [CHOICE:scope id=...] ... [/CHOICE] blocks
|
|
285
|
+
for (const choice of findChoiceRegions(cleaned)) {
|
|
286
|
+
regions.push({
|
|
287
|
+
start: choice.start,
|
|
288
|
+
end: choice.end,
|
|
289
|
+
segment: {
|
|
290
|
+
kind: "choice",
|
|
291
|
+
id: choice.id,
|
|
292
|
+
scope: choice.scope,
|
|
293
|
+
options: choice.options,
|
|
294
|
+
},
|
|
295
|
+
});
|
|
296
|
+
}
|
|
282
297
|
// 2. Find fenced JSON that is a UiSpec (Generate Mode / legacy format)
|
|
283
298
|
FENCED_JSON_RE.lastIndex = 0;
|
|
284
299
|
m = FENCED_JSON_RE.exec(cleaned);
|
|
@@ -622,6 +637,7 @@ function UiSpecBlock({ spec, raw }) {
|
|
|
622
637
|
}
|
|
623
638
|
// ── Main component ──────────────────────────────────────────────────
|
|
624
639
|
export function MessageContent({ message }) {
|
|
640
|
+
const { sendActionMessage } = useApp();
|
|
625
641
|
// Parse segments — memoize to avoid re-parsing on every render
|
|
626
642
|
const segments = useMemo(() => {
|
|
627
643
|
try {
|
|
@@ -632,6 +648,9 @@ export function MessageContent({ message }) {
|
|
|
632
648
|
return [{ kind: "text", text: message.text }];
|
|
633
649
|
}
|
|
634
650
|
}, [message.text]);
|
|
651
|
+
const handleChoice = useCallback((value) => {
|
|
652
|
+
void sendActionMessage(value);
|
|
653
|
+
}, [sendActionMessage]);
|
|
635
654
|
// Fast path: single plain-text segment (most messages)
|
|
636
655
|
if (segments.length === 1 && segments[0].kind === "text") {
|
|
637
656
|
return _jsx("div", { className: "whitespace-pre-wrap", children: segments[0].text });
|
|
@@ -648,7 +667,9 @@ export function MessageContent({ message }) {
|
|
|
648
667
|
? `text:${seg.text.slice(0, 80)}`
|
|
649
668
|
: seg.kind === "config"
|
|
650
669
|
? `config:${seg.pluginId}`
|
|
651
|
-
:
|
|
670
|
+
: seg.kind === "choice"
|
|
671
|
+
? `choice:${seg.id}`
|
|
672
|
+
: `ui:${seg.raw.slice(0, 80)}`;
|
|
652
673
|
const segmentKey = nextKey(baseKey);
|
|
653
674
|
switch (seg.kind) {
|
|
654
675
|
case "text":
|
|
@@ -660,6 +681,8 @@ export function MessageContent({ message }) {
|
|
|
660
681
|
return (_jsx(InlinePluginConfig, { pluginId: seg.pluginId }, segmentKey));
|
|
661
682
|
case "ui-spec":
|
|
662
683
|
return (_jsx(UiSpecBlock, { spec: seg.spec, raw: seg.raw }, segmentKey));
|
|
684
|
+
case "choice":
|
|
685
|
+
return (_jsx(ChoiceWidget, { id: seg.id, scope: seg.scope, options: seg.options, onChoose: handleChoice }, segmentKey));
|
|
663
686
|
default:
|
|
664
687
|
return null;
|
|
665
688
|
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parser for `[CHOICE:<scope>(?: id=<id>)?]\n...lines...\n[/CHOICE]` blocks
|
|
3
|
+
* emitted by agent actions. Lives in its own module so unit tests can
|
|
4
|
+
* exercise the regex/option extraction without pulling the entire
|
|
5
|
+
* `MessageContent` React graph (which transitively imports the runtime).
|
|
6
|
+
*/
|
|
7
|
+
import type { ChoiceOption } from "./widgets/ChoiceWidget";
|
|
8
|
+
export declare const CHOICE_RE: RegExp;
|
|
9
|
+
export declare function generateChoiceId(): string;
|
|
10
|
+
export declare function parseChoiceBody(body: string): ChoiceOption[];
|
|
11
|
+
export interface ChoiceMatch {
|
|
12
|
+
start: number;
|
|
13
|
+
end: number;
|
|
14
|
+
id: string;
|
|
15
|
+
scope: string;
|
|
16
|
+
options: ChoiceOption[];
|
|
17
|
+
}
|
|
18
|
+
/** Find every CHOICE block in `text` and return their character regions. */
|
|
19
|
+
export declare function findChoiceRegions(text: string): ChoiceMatch[];
|
|
20
|
+
//# sourceMappingURL=message-choice-parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-choice-parser.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/chat/message-choice-parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3D,eAAO,MAAM,SAAS,QAC4C,CAAC;AAEnE,wBAAgB,gBAAgB,IAAI,MAAM,CAQzC;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,EAAE,CAa5D;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,YAAY,EAAE,CAAC;CACzB;AAED,4EAA4E;AAC5E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,EAAE,CAoB7D"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parser for `[CHOICE:<scope>(?: id=<id>)?]\n...lines...\n[/CHOICE]` blocks
|
|
3
|
+
* emitted by agent actions. Lives in its own module so unit tests can
|
|
4
|
+
* exercise the regex/option extraction without pulling the entire
|
|
5
|
+
* `MessageContent` React graph (which transitively imports the runtime).
|
|
6
|
+
*/
|
|
7
|
+
export const CHOICE_RE = /\[CHOICE:([\w-]+)(?:\s+id=(\S+))?\]\n([\s\S]*?)\n\[\/CHOICE\]/g;
|
|
8
|
+
export function generateChoiceId() {
|
|
9
|
+
if (typeof crypto !== "undefined" &&
|
|
10
|
+
typeof crypto.randomUUID === "function") {
|
|
11
|
+
return crypto.randomUUID();
|
|
12
|
+
}
|
|
13
|
+
return `choice-${Math.random().toString(36).slice(2, 10)}-${Date.now().toString(36)}`;
|
|
14
|
+
}
|
|
15
|
+
export function parseChoiceBody(body) {
|
|
16
|
+
const options = [];
|
|
17
|
+
for (const rawLine of body.split("\n")) {
|
|
18
|
+
const line = rawLine.trim();
|
|
19
|
+
if (!line)
|
|
20
|
+
continue;
|
|
21
|
+
const eq = line.indexOf("=");
|
|
22
|
+
if (eq < 0)
|
|
23
|
+
continue;
|
|
24
|
+
const value = line.slice(0, eq).trim();
|
|
25
|
+
const label = line.slice(eq + 1).trim();
|
|
26
|
+
if (!value || !label)
|
|
27
|
+
continue;
|
|
28
|
+
options.push({ value, label });
|
|
29
|
+
}
|
|
30
|
+
return options;
|
|
31
|
+
}
|
|
32
|
+
/** Find every CHOICE block in `text` and return their character regions. */
|
|
33
|
+
export function findChoiceRegions(text) {
|
|
34
|
+
const results = [];
|
|
35
|
+
CHOICE_RE.lastIndex = 0;
|
|
36
|
+
let m = CHOICE_RE.exec(text);
|
|
37
|
+
while (m !== null) {
|
|
38
|
+
const scope = m[1];
|
|
39
|
+
const id = m[2] && m[2].length > 0 ? m[2] : generateChoiceId();
|
|
40
|
+
const options = parseChoiceBody(m[3]);
|
|
41
|
+
if (options.length > 0) {
|
|
42
|
+
results.push({
|
|
43
|
+
start: m.index,
|
|
44
|
+
end: m.index + m[0].length,
|
|
45
|
+
id,
|
|
46
|
+
scope,
|
|
47
|
+
options,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
m = CHOICE_RE.exec(text);
|
|
51
|
+
}
|
|
52
|
+
return results;
|
|
53
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ChoiceWidget — inline button row for `[CHOICE:...]` blocks emitted by
|
|
3
|
+
* agent actions (currently the unified APP and PLUGIN actions when they
|
|
4
|
+
* need the user to disambiguate intent).
|
|
5
|
+
*
|
|
6
|
+
* The widget is purely presentational: it surfaces a list of options as
|
|
7
|
+
* buttons and reports the selected `value` back to the caller via
|
|
8
|
+
* `onChoose`. After the first selection the entire row locks so the
|
|
9
|
+
* agent only ever sees one decision per prompt.
|
|
10
|
+
*/
|
|
11
|
+
export type ChoiceOption = {
|
|
12
|
+
value: string;
|
|
13
|
+
label: string;
|
|
14
|
+
};
|
|
15
|
+
export type ChoiceWidgetProps = {
|
|
16
|
+
/** Stable id from the source `[CHOICE:scope id=xxx]` marker. */
|
|
17
|
+
id: string;
|
|
18
|
+
/** Scope hint from the marker, e.g. "app-create" or "plugin-create". */
|
|
19
|
+
scope: string;
|
|
20
|
+
options: ChoiceOption[];
|
|
21
|
+
onChoose: (value: string) => void;
|
|
22
|
+
};
|
|
23
|
+
export declare function ChoiceWidget({ id, scope, options, onChoose, }: ChoiceWidgetProps): import("react/jsx-runtime").JSX.Element | null;
|
|
24
|
+
//# sourceMappingURL=ChoiceWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChoiceWidget.d.ts","sourceRoot":"","sources":["../../../../../../../../app-core/src/components/chat/widgets/ChoiceWidget.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,gEAAgE;IAChE,EAAE,EAAE,MAAM,CAAC;IACX,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC,CAAC;AAQF,wBAAgB,YAAY,CAAC,EAC3B,EAAE,EACF,KAAK,EACL,OAAO,EACP,QAAQ,GACT,EAAE,iBAAiB,kDA4DnB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* ChoiceWidget — inline button row for `[CHOICE:...]` blocks emitted by
|
|
4
|
+
* agent actions (currently the unified APP and PLUGIN actions when they
|
|
5
|
+
* need the user to disambiguate intent).
|
|
6
|
+
*
|
|
7
|
+
* The widget is purely presentational: it surfaces a list of options as
|
|
8
|
+
* buttons and reports the selected `value` back to the caller via
|
|
9
|
+
* `onChoose`. After the first selection the entire row locks so the
|
|
10
|
+
* agent only ever sees one decision per prompt.
|
|
11
|
+
*/
|
|
12
|
+
import { Button } from "@elizaos/ui";
|
|
13
|
+
import { Check } from "lucide-react";
|
|
14
|
+
import { useCallback, useState } from "react";
|
|
15
|
+
function isCancelLike(value, label) {
|
|
16
|
+
const v = value.toLowerCase();
|
|
17
|
+
const l = label.toLowerCase();
|
|
18
|
+
return v === "cancel" || v === "no" || v === "none" || l === "cancel";
|
|
19
|
+
}
|
|
20
|
+
export function ChoiceWidget({ id, scope, options, onChoose, }) {
|
|
21
|
+
const [selected, setSelected] = useState(null);
|
|
22
|
+
const handleChoose = useCallback((option) => {
|
|
23
|
+
if (selected)
|
|
24
|
+
return;
|
|
25
|
+
setSelected(option);
|
|
26
|
+
onChoose(option.value);
|
|
27
|
+
}, [onChoose, selected]);
|
|
28
|
+
if (options.length === 0)
|
|
29
|
+
return null;
|
|
30
|
+
return (_jsxs("fieldset", { className: "my-2 flex min-w-0 flex-wrap items-center gap-2 border-0 p-0", "aria-label": `Choose ${scope}`, "data-choice-id": id, "data-choice-scope": scope, children: [options.map((option) => {
|
|
31
|
+
const cancel = isCancelLike(option.value, option.label);
|
|
32
|
+
const isSelected = selected?.value === option.value;
|
|
33
|
+
const variant = cancel ? "ghost" : "outline";
|
|
34
|
+
return (_jsx(Button, { type: "button", variant: variant, size: "sm", disabled: selected !== null, "aria-label": option.label, "aria-pressed": isSelected, "data-testid": `choice-${option.value}`, className: cancel
|
|
35
|
+
? "h-7 px-3 text-xs text-muted hover:text-txt disabled:opacity-40"
|
|
36
|
+
: "h-7 px-3 text-xs disabled:opacity-40", onClick: () => handleChoose(option), children: isSelected ? (_jsxs("span", { className: "inline-flex items-center gap-1", children: [_jsx(Check, { className: "h-3.5 w-3.5", "aria-hidden": true }), _jsx("span", { children: option.label })] })) : (option.label) }, option.value));
|
|
37
|
+
}), selected ? (_jsxs("span", { className: "text-2xs text-muted", role: "status", children: ["Selected: ", selected.label] })) : null] }));
|
|
38
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { getBootConfig } from "../../config";
|
|
2
|
+
import { getBootConfig } from "../../config/boot-config";
|
|
3
3
|
import { BlueBubblesStatusPanel } from "./BlueBubblesStatusPanel";
|
|
4
4
|
import { DiscordLocalConnectorPanel } from "./DiscordLocalConnectorPanel";
|
|
5
5
|
import { IMessageStatusPanel } from "./IMessageStatusPanel";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomActionEditor.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/custom-actions/CustomActionEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"CustomActionEditor.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/custom-actions/CustomActionEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAuB,MAAM,gBAAgB,CAAC;AA2C3E,UAAU,uBAAuB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,IAAI,CAAC;IAC1C,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,MAAM,EACN,MAAM,EACN,OAAO,GACR,EAAE,uBAAuB,kDAg1BzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomActionsPanel.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/custom-actions/CustomActionsPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"CustomActionsPanel.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/custom-actions/CustomActionsPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAOtD,UAAU,uBAAuB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,eAAe,GAAG,IAAI,KAAK,IAAI,CAAC;CACzD;AA8BD,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,OAAO,EACP,YAAY,GACb,EAAE,uBAAuB,2CA8SzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomActionsView.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/custom-actions/CustomActionsView.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CustomActionsView.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/custom-actions/CustomActionsView.tsx"],"names":[],"mappings":"AA0BA,wBAAgB,iBAAiB,4CAyXhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-action-form.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/custom-actions/custom-action-form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"custom-action-form.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/custom-actions/custom-action-form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAI1D,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AACpD,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;AAErE,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,mBAAmB,CAAC;IAC7B,UAAU,EAAE,QAAQ,EAAE,CAAC;IACvB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAID,eAAO,MAAM,YAAY,oDAAqD,CAAC;AAK/E,eAAO,MAAM,4BAA4B,oJAC0G,CAAC;AACpJ,eAAO,MAAM,yBAAyB,uBAAuB,CAAC;AAC9D,eAAO,MAAM,oBAAoB,wGACsE,CAAC;AACxG,eAAO,MAAM,uBAAuB,oHAAwC,CAAC;AAC7E,eAAO,MAAM,2BAA2B,8HAAyC,CAAC;AAClF,eAAO,MAAM,0BAA0B,wEACgC,CAAC;AAIxE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAInE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQzD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMxD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAG1D;AAID,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,EAAE,CAUxD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,EAAE,CA6B1D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAerD;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG;IACtD,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CA+JA;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAKzD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,GAAG,IAAI,CAkBnE"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { buildBrowserWorkspaceWalletState, } from "@elizaos/app-steward";
|
|
2
|
+
import { buildBrowserWorkspaceWalletState, } from "@elizaos/app-steward/browser-workspace-wallet";
|
|
3
3
|
import { Button, Input, SidebarCollapsedActionButton, SidebarContent, SidebarPanel, SidebarScrollRegion, useIntervalWhenDocumentVisible, WorkspaceLayout, } from "@elizaos/ui";
|
|
4
4
|
import { ExternalLink, FolderOpen, Plus, RefreshCw, X } from "lucide-react";
|
|
5
5
|
import { useCallback, useEffect, useMemo, useRef, useState, } from "react";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnowledgeView.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/pages/KnowledgeView.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"KnowledgeView.d.ts","sourceRoot":"","sources":["../../../../../../../app-core/src/components/pages/KnowledgeView.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,6BAA6B,CAAC;AA+BrC,OAAO,EACL,0BAA0B,EAC1B,KAAK,mBAAmB,EACxB,6BAA6B,GAC9B,MAAM,oBAAoB,CAAC;AAoI5B,wBAAgB,aAAa,CAAC,EAC5B,WAAW,EACX,OAAO,EACP,QAAgB,EAChB,iBAAiB,EACjB,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,GACjB,GAAE;IACD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,iBAAiB,EAAE,KAAK,IAAI,CAAC;IAC7D,0BAA0B,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjE,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACvB,2CA+3BL"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { Button, PagePanel } from "@elizaos/ui";
|
|
3
|
+
import { BookOpen, Pencil } from "lucide-react";
|
|
3
4
|
import { useCallback, useEffect, useMemo, useRef, useState, } from "react";
|
|
4
5
|
import { client } from "../../api/client";
|
|
5
6
|
import { useApp } from "../../state/useApp";
|
|
@@ -9,6 +10,7 @@ import { isKnowledgeImageFile, MAX_KNOWLEDGE_IMAGE_PROCESSING_BYTES, maybeCompre
|
|
|
9
10
|
import { ConfirmDeleteControl } from "../shared/confirm-delete-control";
|
|
10
11
|
import { DocumentViewer, getKnowledgeDocumentSummary, getKnowledgeTypeLabel, } from "./knowledge-detail";
|
|
11
12
|
import { BULK_UPLOAD_TARGET_BYTES, getKnowledgeUploadFilename, isSupportedKnowledgeFile, KNOWLEDGE_UPLOAD_ACCEPT, LARGE_FILE_WARNING_BYTES, MAX_BULK_REQUEST_DOCUMENTS, MAX_UPLOAD_REQUEST_BYTES, shouldReadKnowledgeFileAsText, UploadZone, } from "./knowledge-upload";
|
|
13
|
+
import { ScratchpadView } from "./ScratchpadView";
|
|
12
14
|
// Re-export public API used by tests and other modules
|
|
13
15
|
export { getKnowledgeUploadFilename, shouldReadKnowledgeFileAsText, } from "./knowledge-upload";
|
|
14
16
|
/* ── Search Result Item ─────────────────────────────────────────────── */
|
|
@@ -35,6 +37,7 @@ export function KnowledgeView({ fileInputId, inModal, embedded = false, onDocume
|
|
|
35
37
|
const { setActionNotice } = useApp();
|
|
36
38
|
const setActionNoticeRef = useRef(setActionNotice);
|
|
37
39
|
setActionNoticeRef.current = setActionNotice;
|
|
40
|
+
const [activePanel, setActivePanel] = useState("documents");
|
|
38
41
|
const [searchQuery, setSearchQuery] = useState("");
|
|
39
42
|
const [documents, setDocuments] = useState([]);
|
|
40
43
|
const [searchResults, setSearchResults] = useState(null);
|
|
@@ -532,5 +535,12 @@ export function KnowledgeView({ fileInputId, inModal, embedded = false, onDocume
|
|
|
532
535
|
}), title: t("knowledgeview.NoResultsFound") })), isShowingSearchResults
|
|
533
536
|
? visibleSearchResults.map((result) => (_jsx(SearchResultListItem, { result: result, active: selectedDocId === (result.documentId || result.id), onSelect: setSelectedDocId }, result.id)))
|
|
534
537
|
: filteredDocuments.map((doc) => (_jsx(DocumentListItem, { doc: doc, active: selectedDocId === doc.id, onSelect: setSelectedDocId, onDelete: handleDelete, deleting: deleting === doc.id }, doc.id)))] })] })] }));
|
|
535
|
-
|
|
538
|
+
const panelSelector = (_jsxs("div", { className: "flex items-center gap-1 rounded-lg border border-border/35 bg-bg-muted/40 p-1", children: [_jsxs("button", { type: "button", onClick: () => setActivePanel("documents"), className: `inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs font-bold transition-colors ${activePanel === "documents"
|
|
539
|
+
? "bg-bg text-txt shadow-sm"
|
|
540
|
+
: "text-muted hover:text-txt"}`, "aria-pressed": activePanel === "documents", children: [_jsx(BookOpen, { className: "h-3.5 w-3.5", "aria-hidden": "true" }), t("knowledgeview.Documents", { defaultValue: "Documents" })] }), _jsxs("button", { type: "button", onClick: () => setActivePanel("scratchpad"), className: `inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs font-bold transition-colors ${activePanel === "scratchpad"
|
|
541
|
+
? "bg-bg text-txt shadow-sm"
|
|
542
|
+
: "text-muted hover:text-txt"}`, "aria-pressed": activePanel === "scratchpad", children: [_jsx(Pencil, { className: "h-3.5 w-3.5", "aria-hidden": "true" }), t("knowledgeview.Scratchpad", { defaultValue: "Scratchpad" })] })] }));
|
|
543
|
+
return (_jsxs("div", { className: `flex flex-1 min-h-0 flex-col gap-4 ${inModal ? "min-h-0" : ""}`, "data-testid": "knowledge-view", children: [_jsx("div", { className: "flex flex-wrap items-center justify-between gap-3", children: panelSelector }), activePanel === "documents" &&
|
|
544
|
+
!shouldRenderSelectorRail &&
|
|
545
|
+
fileInputId ? (_jsx("input", { id: fileInputId, type: "file", className: "hidden", multiple: true, accept: KNOWLEDGE_UPLOAD_ACCEPT, onChange: handleExternalFileInputChange })) : null, activePanel === "documents" && isServiceLoading && (_jsxs(PagePanel, { variant: "inset", className: "flex items-center gap-2 px-0 py-3 text-sm text-muted-strong !rounded-none !border-0 !bg-transparent !shadow-none !ring-0", children: [_jsx("span", { className: "h-4 w-4 animate-spin rounded-full border-2 border-accent border-t-transparent" }), t("knowledgeview.KnowledgeServiceIs")] })), activePanel === "documents" && loadError && !isServiceLoading && (_jsx(PagePanel.Notice, { tone: "danger", actions: _jsx(Button, { variant: "outline", size: "sm", className: "border-danger/30 px-3 text-xs text-danger hover:bg-danger/16", onClick: () => loadData(), children: t("common.retry") }), children: loadError })), activePanel === "documents" ? (_jsxs("div", { className: "flex min-h-0 flex-1 flex-col gap-4 lg:flex-row", children: [documentContent, shouldRenderSelectorRail ? selectorRail : null] })) : (_jsx(ScratchpadView, {}))] }));
|
|
536
546
|
}
|