@burdenoff/microfe-vibecontrols 2026.511.1 → 2026.512.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_rolldown/runtime.js +2 -5
- package/dist/components/agent-manager/AgentManagerAdminBar.js +69 -61
- package/dist/components/agent-manager/AgentManagerAdminBar.js.map +1 -1
- package/dist/components/agent-manager/AgentManagerCenter.js +56 -50
- package/dist/components/agent-manager/AgentManagerCenter.js.map +1 -1
- package/dist/components/agent-manager/AgentManagerChatPane.js +87 -74
- package/dist/components/agent-manager/AgentManagerChatPane.js.map +1 -1
- package/dist/components/agent-manager/AgentManagerDetailPanel.js +5 -5
- package/dist/components/agent-manager/AgentManagerDetailPanel.js.map +1 -1
- package/dist/components/agent-manager/AgentManagerInputArea.js +159 -157
- package/dist/components/agent-manager/AgentManagerInputArea.js.map +1 -1
- package/dist/components/agent-manager/AgentManagerMessageItem.js +32 -28
- package/dist/components/agent-manager/AgentManagerMessageItem.js.map +1 -1
- package/dist/components/agent-manager/AgentManagerSessionItem.js +24 -24
- package/dist/components/agent-manager/AgentManagerSessionItem.js.map +1 -1
- package/dist/components/agent-manager/AgentManagerSessionList.js +32 -24
- package/dist/components/agent-manager/AgentManagerSessionList.js.map +1 -1
- package/dist/components/agent-manager/AgentManagerSidebar.js +3 -3
- package/dist/components/agent-manager/AgentManagerSidebar.js.map +1 -1
- package/dist/components/agent-manager/AgentManagerTabBar.js +2 -2
- package/dist/components/agent-manager/AgentManagerTabBar.js.map +1 -1
- package/dist/components/agent-manager/BridleConfigPanel.js +1 -1
- package/dist/components/agent-manager/BridleConfigPanel.js.map +1 -1
- package/dist/components/agent-manager/ProfilesPanel.js +260 -0
- package/dist/components/agent-manager/ProfilesPanel.js.map +1 -0
- package/dist/components/agent-manager/controls/ModelSelector.js +75 -58
- package/dist/components/agent-manager/controls/ModelSelector.js.map +1 -1
- package/dist/components/agent-manager/controls/SdkSelector.js +85 -61
- package/dist/components/agent-manager/controls/SdkSelector.js.map +1 -1
- package/dist/components/agent-manager/detail/SessionConfigPanel.js +2 -2
- package/dist/components/agent-manager/detail/SessionConfigPanel.js.map +1 -1
- package/dist/components/agent-manager/detail/SessionLogsPanel.js +1 -1
- package/dist/components/agent-manager/detail/SessionLogsPanel.js.map +1 -1
- package/dist/components/agent-manager/detail/SessionStatsPanel.js +1 -1
- package/dist/components/agent-manager/detail/SessionStatsPanel.js.map +1 -1
- package/dist/components/agent-manager/detail/SessionToolsPanel.js +1 -1
- package/dist/components/agent-manager/detail/SessionToolsPanel.js.map +1 -1
- package/dist/components/agent-manager/dialogs/ExportSessionDialog.js +1 -1
- package/dist/components/agent-manager/dialogs/ExportSessionDialog.js.map +1 -1
- package/dist/components/agent-manager/dialogs/NewSessionDialog.js +129 -108
- package/dist/components/agent-manager/dialogs/NewSessionDialog.js.map +1 -1
- package/dist/components/agent-manager/dialogs/SessionSearchDialog.js +1 -1
- package/dist/components/agent-manager/dialogs/SessionSearchDialog.js.map +1 -1
- package/dist/components/agent-manager/index.js +16 -0
- package/dist/components/agent-manager/modelDefaults.js +10 -0
- package/dist/components/agent-manager/modelDefaults.js.map +1 -0
- package/dist/components/agents/AgentCard.js +33 -30
- package/dist/components/agents/AgentCard.js.map +1 -1
- package/dist/components/agents/AgentForm.js +277 -239
- package/dist/components/agents/AgentForm.js.map +1 -1
- package/dist/components/agents/AgentStatusBadge.js +19 -8
- package/dist/components/agents/AgentStatusBadge.js.map +1 -1
- package/dist/components/agents/OpenInBrowserEditorButton.js +67 -65
- package/dist/components/agents/OpenInBrowserEditorButton.js.map +1 -1
- package/dist/components/agents/backup/AgentBackupTab.js +186 -185
- package/dist/components/agents/backup/AgentBackupTab.js.map +1 -1
- package/dist/components/ai/AIContextsTab.js +1 -1
- package/dist/components/ai/AIContextsTab.js.map +1 -1
- package/dist/components/ai/AIOverviewTab.js +2 -2
- package/dist/components/ai/AIOverviewTab.js.map +1 -1
- package/dist/components/ai/AIPlaygroundTab.js +97 -97
- package/dist/components/ai/AIPlaygroundTab.js.map +1 -1
- package/dist/components/ai/AIPromptsTab.js +4 -4
- package/dist/components/ai/AIPromptsTab.js.map +1 -1
- package/dist/components/ai/AIProviderCredentialsCard.js +234 -0
- package/dist/components/ai/AIProviderCredentialsCard.js.map +1 -0
- package/dist/components/ai/AISessionsTab.js +17 -1
- package/dist/components/ai/AISessionsTab.js.map +1 -1
- package/dist/components/ai/AIStatsTab.js +1 -1
- package/dist/components/ai/AIStatsTab.js.map +1 -1
- package/dist/components/ai/ClaudeCredentialsCard.js +1 -1
- package/dist/components/ai/ClaudeCredentialsCard.js.map +1 -1
- package/dist/components/ai/PluginHarnessPicker.js +84 -53
- package/dist/components/ai/PluginHarnessPicker.js.map +1 -1
- package/dist/components/aliases/AliasManager.js +386 -0
- package/dist/components/aliases/AliasManager.js.map +1 -0
- package/dist/components/aliases/aliasReservedNames.js +32 -0
- package/dist/components/aliases/aliasReservedNames.js.map +1 -0
- package/dist/components/gitops/CIDurationChart.js +11 -11
- package/dist/components/gitops/VibeGitOpsTab.js +128 -100
- package/dist/components/gitops/VibeGitOpsTab.js.map +1 -1
- package/dist/components/graph/AgentGraphView.js +61 -62
- package/dist/components/graph/AgentGraphView.js.map +1 -1
- package/dist/components/graph/AgentNode.js +17 -18
- package/dist/components/graph/AgentNode.js.map +1 -1
- package/dist/components/graph/TargetNode.js +31 -32
- package/dist/components/graph/TargetNode.js.map +1 -1
- package/dist/components/logs/LogViewer.js +121 -119
- package/dist/components/logs/LogViewer.js.map +1 -1
- package/dist/components/sessions/TerminalPanel.js +449 -458
- package/dist/components/sessions/TerminalPanel.js.map +1 -1
- package/dist/components/shared/AgentSelector.js +87 -67
- package/dist/components/shared/AgentSelector.js.map +1 -1
- package/dist/components/shared/AgentSetupBanner.js +64 -61
- package/dist/components/shared/AgentSetupBanner.js.map +1 -1
- package/dist/components/vibecalendar/expandOccurrences.js.map +1 -1
- package/dist/constants/pluginCatalog.js +29 -1
- package/dist/constants/pluginCatalog.js.map +1 -1
- package/dist/generated/wspace-operations.js +126 -103
- package/dist/generated/wspace-operations.js.map +1 -1
- package/dist/generated/wspace-types.js.map +1 -1
- package/dist/hooks/useActiveAgentProfile.js +51 -0
- package/dist/hooks/useActiveAgentProfile.js.map +1 -0
- package/dist/hooks/useAgentEvents.js +1 -0
- package/dist/hooks/useAgentEvents.js.map +1 -1
- package/dist/hooks/useAgentManagerStreaming.js +1 -1
- package/dist/hooks/useAgentManagerStreaming.js.map +1 -1
- package/dist/hooks/useCachedInitialData.js +4 -2
- package/dist/hooks/useCachedInitialData.js.map +1 -1
- package/dist/hooks/usePluginAvailability.js +93 -61
- package/dist/hooks/usePluginAvailability.js.map +1 -1
- package/dist/index.js +10 -10
- package/dist/microfe-vibecontrols.css +1 -1
- package/dist/node_modules/d3-scale/src/continuous.js +20 -20
- package/dist/node_modules/d3-scale/src/diverging.js +30 -30
- package/dist/node_modules/d3-scale/src/sequential.js +25 -25
- package/dist/pages/AgentDetailsPage.js +801 -736
- package/dist/pages/AgentDetailsPage.js.map +1 -1
- package/dist/pages/AgentsLandingPage.js +4 -4
- package/dist/pages/AgentsLandingPage.js.map +1 -1
- package/dist/pages/AgentsPage.js +351 -295
- package/dist/pages/AgentsPage.js.map +1 -1
- package/dist/pages/SessionsPage.js +618 -615
- package/dist/pages/SessionsPage.js.map +1 -1
- package/dist/pages/TargetsPage.js +5 -2
- package/dist/pages/TargetsPage.js.map +1 -1
- package/dist/pages/VibeDetailsPage.js +582 -555
- package/dist/pages/VibeDetailsPage.js.map +1 -1
- package/dist/pages/ai/AIPage.js +107 -103
- package/dist/pages/ai/AIPage.js.map +1 -1
- package/dist/pages/ai/AISessionDetailPage.js +167 -163
- package/dist/pages/ai/AISessionDetailPage.js.map +1 -1
- package/dist/pages/ai/AgentManagerPage.js +94 -90
- package/dist/pages/ai/AgentManagerPage.js.map +1 -1
- package/dist/pages/tunnels/TunnelDetailsPage.js.map +1 -1
- package/dist/services/aiApi.js +119 -112
- package/dist/services/aiApi.js.map +1 -1
- package/dist/services/iframeToken.js +29 -0
- package/dist/services/iframeToken.js.map +1 -0
- package/dist/services/schedulerApi.js +14 -13
- package/dist/services/schedulerApi.js.map +1 -1
- package/dist/store/agentManagerStore.js +61 -14
- package/dist/store/agentManagerStore.js.map +1 -1
- package/dist/store/vibeControlsStore.js +21 -1
- package/dist/store/vibeControlsStore.js.map +1 -1
- package/dist/translations/en.js.map +1 -1
- package/dist/utils/agentApiPath.js +9 -0
- package/dist/utils/agentApiPath.js.map +1 -0
- package/package.json +3 -3
- package/dist/VibeControlsRoot.d.ts +0 -36
- package/dist/VibeControlsRoot.d.ts.map +0 -1
- package/dist/VibeControlsRoutes.d.ts +0 -2
- package/dist/VibeControlsRoutes.d.ts.map +0 -1
- package/dist/components/actions/ActionCard.d.ts +0 -32
- package/dist/components/actions/ActionCard.d.ts.map +0 -1
- package/dist/components/actions/ActionForm.d.ts +0 -39
- package/dist/components/actions/ActionForm.d.ts.map +0 -1
- package/dist/components/actions/ActionTypeBadge.d.ts +0 -9
- package/dist/components/actions/ActionTypeBadge.d.ts.map +0 -1
- package/dist/components/actions/ExecutionHistory.d.ts +0 -23
- package/dist/components/actions/ExecutionHistory.d.ts.map +0 -1
- package/dist/components/actions/index.d.ts +0 -6
- package/dist/components/actions/index.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerAdminBar.d.ts +0 -13
- package/dist/components/agent-manager/AgentManagerAdminBar.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerBulkActions.d.ts +0 -13
- package/dist/components/agent-manager/AgentManagerBulkActions.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerCenter.d.ts +0 -8
- package/dist/components/agent-manager/AgentManagerCenter.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerChatPane.d.ts +0 -9
- package/dist/components/agent-manager/AgentManagerChatPane.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerDetailPanel.d.ts +0 -13
- package/dist/components/agent-manager/AgentManagerDetailPanel.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerInputArea.d.ts +0 -14
- package/dist/components/agent-manager/AgentManagerInputArea.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerLayout.d.ts +0 -10
- package/dist/components/agent-manager/AgentManagerLayout.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerMessageItem.d.ts +0 -10
- package/dist/components/agent-manager/AgentManagerMessageItem.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerMessageList.d.ts +0 -12
- package/dist/components/agent-manager/AgentManagerMessageList.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerSessionItem.d.ts +0 -12
- package/dist/components/agent-manager/AgentManagerSessionItem.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerSessionList.d.ts +0 -16
- package/dist/components/agent-manager/AgentManagerSessionList.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerSidebar.d.ts +0 -14
- package/dist/components/agent-manager/AgentManagerSidebar.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerStreamingIndicator.d.ts +0 -8
- package/dist/components/agent-manager/AgentManagerStreamingIndicator.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerTab.d.ts +0 -15
- package/dist/components/agent-manager/AgentManagerTab.d.ts.map +0 -1
- package/dist/components/agent-manager/AgentManagerTabBar.d.ts +0 -10
- package/dist/components/agent-manager/AgentManagerTabBar.d.ts.map +0 -1
- package/dist/components/agent-manager/BridleConfigPanel.d.ts +0 -13
- package/dist/components/agent-manager/BridleConfigPanel.d.ts.map +0 -1
- package/dist/components/agent-manager/PluginInstallModal.d.ts +0 -9
- package/dist/components/agent-manager/PluginInstallModal.d.ts.map +0 -1
- package/dist/components/agent-manager/controls/ContextLevelToggle.d.ts +0 -23
- package/dist/components/agent-manager/controls/ContextLevelToggle.d.ts.map +0 -1
- package/dist/components/agent-manager/controls/FileAttachButton.d.ts +0 -13
- package/dist/components/agent-manager/controls/FileAttachButton.d.ts.map +0 -1
- package/dist/components/agent-manager/controls/McpServerSelector.d.ts +0 -10
- package/dist/components/agent-manager/controls/McpServerSelector.d.ts.map +0 -1
- package/dist/components/agent-manager/controls/ModelSelector.d.ts +0 -10
- package/dist/components/agent-manager/controls/ModelSelector.d.ts.map +0 -1
- package/dist/components/agent-manager/controls/SdkSelector.d.ts +0 -13
- package/dist/components/agent-manager/controls/SdkSelector.d.ts.map +0 -1
- package/dist/components/agent-manager/controls/VoiceToggle.d.ts +0 -13
- package/dist/components/agent-manager/controls/VoiceToggle.d.ts.map +0 -1
- package/dist/components/agent-manager/detail/SessionConfigPanel.d.ts +0 -14
- package/dist/components/agent-manager/detail/SessionConfigPanel.d.ts.map +0 -1
- package/dist/components/agent-manager/detail/SessionLogsPanel.d.ts +0 -13
- package/dist/components/agent-manager/detail/SessionLogsPanel.d.ts.map +0 -1
- package/dist/components/agent-manager/detail/SessionStatsPanel.d.ts +0 -12
- package/dist/components/agent-manager/detail/SessionStatsPanel.d.ts.map +0 -1
- package/dist/components/agent-manager/detail/SessionToolsPanel.d.ts +0 -12
- package/dist/components/agent-manager/detail/SessionToolsPanel.d.ts.map +0 -1
- package/dist/components/agent-manager/dialogs/ExportSessionDialog.d.ts +0 -15
- package/dist/components/agent-manager/dialogs/ExportSessionDialog.d.ts.map +0 -1
- package/dist/components/agent-manager/dialogs/NewSessionDialog.d.ts +0 -14
- package/dist/components/agent-manager/dialogs/NewSessionDialog.d.ts.map +0 -1
- package/dist/components/agent-manager/dialogs/RenameSessionDialog.d.ts +0 -15
- package/dist/components/agent-manager/dialogs/RenameSessionDialog.d.ts.map +0 -1
- package/dist/components/agent-manager/dialogs/SessionSearchDialog.d.ts +0 -15
- package/dist/components/agent-manager/dialogs/SessionSearchDialog.d.ts.map +0 -1
- package/dist/components/agent-manager/index.d.ts +0 -16
- package/dist/components/agent-manager/index.d.ts.map +0 -1
- package/dist/components/agents/AgentCard.d.ts +0 -30
- package/dist/components/agents/AgentCard.d.ts.map +0 -1
- package/dist/components/agents/AgentForm.d.ts +0 -29
- package/dist/components/agents/AgentForm.d.ts.map +0 -1
- package/dist/components/agents/AgentList.d.ts +0 -19
- package/dist/components/agents/AgentList.d.ts.map +0 -1
- package/dist/components/agents/AgentStatusBadge.d.ts +0 -12
- package/dist/components/agents/AgentStatusBadge.d.ts.map +0 -1
- package/dist/components/agents/OpenInBrowserEditorButton.d.ts +0 -16
- package/dist/components/agents/OpenInBrowserEditorButton.d.ts.map +0 -1
- package/dist/components/agents/PluginUIPanel.d.ts +0 -38
- package/dist/components/agents/PluginUIPanel.d.ts.map +0 -1
- package/dist/components/agents/backup/AgentBackupTab.d.ts +0 -11
- package/dist/components/agents/backup/AgentBackupTab.d.ts.map +0 -1
- package/dist/components/agents/index.d.ts +0 -8
- package/dist/components/agents/index.d.ts.map +0 -1
- package/dist/components/agents/types.d.ts +0 -72
- package/dist/components/agents/types.d.ts.map +0 -1
- package/dist/components/ai/AIAssistantPanel.d.ts +0 -8
- package/dist/components/ai/AIAssistantPanel.d.ts.map +0 -1
- package/dist/components/ai/AIContextsTab.d.ts +0 -6
- package/dist/components/ai/AIContextsTab.d.ts.map +0 -1
- package/dist/components/ai/AIOverviewTab.d.ts +0 -7
- package/dist/components/ai/AIOverviewTab.d.ts.map +0 -1
- package/dist/components/ai/AIPlaygroundTab.d.ts +0 -6
- package/dist/components/ai/AIPlaygroundTab.d.ts.map +0 -1
- package/dist/components/ai/AIPromptsTab.d.ts +0 -6
- package/dist/components/ai/AIPromptsTab.d.ts.map +0 -1
- package/dist/components/ai/AISessionsTab.d.ts +0 -7
- package/dist/components/ai/AISessionsTab.d.ts.map +0 -1
- package/dist/components/ai/AIStatsTab.d.ts +0 -6
- package/dist/components/ai/AIStatsTab.d.ts.map +0 -1
- package/dist/components/ai/AITasksTab.d.ts +0 -5
- package/dist/components/ai/AITasksTab.d.ts.map +0 -1
- package/dist/components/ai/AITemplatesTab.d.ts +0 -6
- package/dist/components/ai/AITemplatesTab.d.ts.map +0 -1
- package/dist/components/ai/ClaudeCredentialsCard.d.ts +0 -6
- package/dist/components/ai/ClaudeCredentialsCard.d.ts.map +0 -1
- package/dist/components/ai/PluginHarnessPicker.d.ts +0 -31
- package/dist/components/ai/PluginHarnessPicker.d.ts.map +0 -1
- package/dist/components/analytics/AnalyticsBreakdownChart.d.ts +0 -12
- package/dist/components/analytics/AnalyticsBreakdownChart.d.ts.map +0 -1
- package/dist/components/analytics/AnalyticsBreakdownTable.d.ts +0 -13
- package/dist/components/analytics/AnalyticsBreakdownTable.d.ts.map +0 -1
- package/dist/components/analytics/AnalyticsEntityTabs.d.ts +0 -9
- package/dist/components/analytics/AnalyticsEntityTabs.d.ts.map +0 -1
- package/dist/components/analytics/AnalyticsFilterBar.d.ts +0 -15
- package/dist/components/analytics/AnalyticsFilterBar.d.ts.map +0 -1
- package/dist/components/analytics/AnalyticsKpiGrid.d.ts +0 -10
- package/dist/components/analytics/AnalyticsKpiGrid.d.ts.map +0 -1
- package/dist/components/analytics/AnalyticsTimeSeriesChart.d.ts +0 -16
- package/dist/components/analytics/AnalyticsTimeSeriesChart.d.ts.map +0 -1
- package/dist/components/analytics/SandboxAnalyticsSection.d.ts +0 -9
- package/dist/components/analytics/SandboxAnalyticsSection.d.ts.map +0 -1
- package/dist/components/analytics/index.d.ts +0 -9
- package/dist/components/analytics/index.d.ts.map +0 -1
- package/dist/components/analytics/types.d.ts +0 -28
- package/dist/components/analytics/types.d.ts.map +0 -1
- package/dist/components/assistant/AIAssistantPanel.d.ts +0 -5
- package/dist/components/assistant/AIAssistantPanel.d.ts.map +0 -1
- package/dist/components/assistant/AssistantChatArea.d.ts +0 -4
- package/dist/components/assistant/AssistantChatArea.d.ts.map +0 -1
- package/dist/components/assistant/AssistantChatInput.d.ts +0 -10
- package/dist/components/assistant/AssistantChatInput.d.ts.map +0 -1
- package/dist/components/assistant/AssistantConversationList.d.ts +0 -4
- package/dist/components/assistant/AssistantConversationList.d.ts.map +0 -1
- package/dist/components/assistant/AssistantExportMenu.d.ts +0 -4
- package/dist/components/assistant/AssistantExportMenu.d.ts.map +0 -1
- package/dist/components/assistant/AssistantMarkdownRenderer.d.ts +0 -8
- package/dist/components/assistant/AssistantMarkdownRenderer.d.ts.map +0 -1
- package/dist/components/assistant/AssistantMessageItem.d.ts +0 -10
- package/dist/components/assistant/AssistantMessageItem.d.ts.map +0 -1
- package/dist/components/assistant/AssistantMessageList.d.ts +0 -10
- package/dist/components/assistant/AssistantMessageList.d.ts.map +0 -1
- package/dist/components/assistant/AssistantModeSelector.d.ts +0 -10
- package/dist/components/assistant/AssistantModeSelector.d.ts.map +0 -1
- package/dist/components/assistant/AssistantWelcome.d.ts +0 -10
- package/dist/components/assistant/AssistantWelcome.d.ts.map +0 -1
- package/dist/components/assistant/index.d.ts +0 -11
- package/dist/components/assistant/index.d.ts.map +0 -1
- package/dist/components/audit/AuditDeleteDialog.d.ts +0 -12
- package/dist/components/audit/AuditDeleteDialog.d.ts.map +0 -1
- package/dist/components/audit/AuditExportButton.d.ts +0 -8
- package/dist/components/audit/AuditExportButton.d.ts.map +0 -1
- package/dist/components/audit/AuditLogDetail.d.ts +0 -9
- package/dist/components/audit/AuditLogDetail.d.ts.map +0 -1
- package/dist/components/audit/AuditLogFilters.d.ts +0 -15
- package/dist/components/audit/AuditLogFilters.d.ts.map +0 -1
- package/dist/components/audit/AuditLogStats.d.ts +0 -9
- package/dist/components/audit/AuditLogStats.d.ts.map +0 -1
- package/dist/components/audit/AuditLogTable.d.ts +0 -21
- package/dist/components/audit/AuditLogTable.d.ts.map +0 -1
- package/dist/components/audit/index.d.ts +0 -7
- package/dist/components/audit/index.d.ts.map +0 -1
- package/dist/components/catalog/CatalogCard.d.ts +0 -22
- package/dist/components/catalog/CatalogCard.d.ts.map +0 -1
- package/dist/components/catalog/CatalogForm.d.ts +0 -18
- package/dist/components/catalog/CatalogForm.d.ts.map +0 -1
- package/dist/components/catalog/index.d.ts +0 -5
- package/dist/components/catalog/index.d.ts.map +0 -1
- package/dist/components/docs/DocsCompileStatus.d.ts +0 -9
- package/dist/components/docs/DocsCompileStatus.d.ts.map +0 -1
- package/dist/components/docs/DocsEditPanel.d.ts +0 -26
- package/dist/components/docs/DocsEditPanel.d.ts.map +0 -1
- package/dist/components/docs/DocsEmptyState.d.ts +0 -7
- package/dist/components/docs/DocsEmptyState.d.ts.map +0 -1
- package/dist/components/docs/DocsPageEditor.d.ts +0 -13
- package/dist/components/docs/DocsPageEditor.d.ts.map +0 -1
- package/dist/components/docs/DocsPageTree.d.ts +0 -12
- package/dist/components/docs/DocsPageTree.d.ts.map +0 -1
- package/dist/components/docs/DocsPreviewPanel.d.ts +0 -17
- package/dist/components/docs/DocsPreviewPanel.d.ts.map +0 -1
- package/dist/components/docs/DocsSettingsPanel.d.ts +0 -15
- package/dist/components/docs/DocsSettingsPanel.d.ts.map +0 -1
- package/dist/components/docs/DocsTabPanel.d.ts +0 -8
- package/dist/components/docs/DocsTabPanel.d.ts.map +0 -1
- package/dist/components/docs/index.d.ts +0 -10
- package/dist/components/docs/index.d.ts.map +0 -1
- package/dist/components/docs/previewHtml.d.ts +0 -2
- package/dist/components/docs/previewHtml.d.ts.map +0 -1
- package/dist/components/docs/types.d.ts +0 -59
- package/dist/components/docs/types.d.ts.map +0 -1
- package/dist/components/gitops/CIDurationChart.d.ts +0 -12
- package/dist/components/gitops/CIDurationChart.d.ts.map +0 -1
- package/dist/components/gitops/CIFailedRuns.d.ts +0 -13
- package/dist/components/gitops/CIFailedRuns.d.ts.map +0 -1
- package/dist/components/gitops/CIPipelineRunsTable.d.ts +0 -13
- package/dist/components/gitops/CIPipelineRunsTable.d.ts.map +0 -1
- package/dist/components/gitops/CISuccessRateChart.d.ts +0 -13
- package/dist/components/gitops/CISuccessRateChart.d.ts.map +0 -1
- package/dist/components/gitops/CITab.d.ts +0 -15
- package/dist/components/gitops/CITab.d.ts.map +0 -1
- package/dist/components/gitops/CIWorkflowList.d.ts +0 -13
- package/dist/components/gitops/CIWorkflowList.d.ts.map +0 -1
- package/dist/components/gitops/GitOpsProviderCard.d.ts +0 -14
- package/dist/components/gitops/GitOpsProviderCard.d.ts.map +0 -1
- package/dist/components/gitops/GitOpsSetup.d.ts +0 -16
- package/dist/components/gitops/GitOpsSetup.d.ts.map +0 -1
- package/dist/components/gitops/GitOpsSkeleton.d.ts +0 -12
- package/dist/components/gitops/GitOpsSkeleton.d.ts.map +0 -1
- package/dist/components/gitops/GitOpsStatusBadge.d.ts +0 -14
- package/dist/components/gitops/GitOpsStatusBadge.d.ts.map +0 -1
- package/dist/components/gitops/ProviderIcon.d.ts +0 -14
- package/dist/components/gitops/ProviderIcon.d.ts.map +0 -1
- package/dist/components/gitops/RepoActivityCard.d.ts +0 -12
- package/dist/components/gitops/RepoActivityCard.d.ts.map +0 -1
- package/dist/components/gitops/RepoIssuesCard.d.ts +0 -12
- package/dist/components/gitops/RepoIssuesCard.d.ts.map +0 -1
- package/dist/components/gitops/RepoLanguagesCard.d.ts +0 -13
- package/dist/components/gitops/RepoLanguagesCard.d.ts.map +0 -1
- package/dist/components/gitops/RepoOverviewCard.d.ts +0 -13
- package/dist/components/gitops/RepoOverviewCard.d.ts.map +0 -1
- package/dist/components/gitops/RepoPullRequestsCard.d.ts +0 -12
- package/dist/components/gitops/RepoPullRequestsCard.d.ts.map +0 -1
- package/dist/components/gitops/RepoSecurityCard.d.ts +0 -12
- package/dist/components/gitops/RepoSecurityCard.d.ts.map +0 -1
- package/dist/components/gitops/RepoStatsTab.d.ts +0 -15
- package/dist/components/gitops/RepoStatsTab.d.ts.map +0 -1
- package/dist/components/gitops/VibeGitOpsTab.d.ts +0 -12
- package/dist/components/gitops/VibeGitOpsTab.d.ts.map +0 -1
- package/dist/components/gitops/index.d.ts +0 -21
- package/dist/components/gitops/index.d.ts.map +0 -1
- package/dist/components/gitops/types.d.ts +0 -90
- package/dist/components/gitops/types.d.ts.map +0 -1
- package/dist/components/graph/AgentGraphView.d.ts +0 -44
- package/dist/components/graph/AgentGraphView.d.ts.map +0 -1
- package/dist/components/graph/AgentNode.d.ts +0 -6
- package/dist/components/graph/AgentNode.d.ts.map +0 -1
- package/dist/components/graph/ConnectionPermissionsDialog.d.ts +0 -26
- package/dist/components/graph/ConnectionPermissionsDialog.d.ts.map +0 -1
- package/dist/components/graph/TargetNode.d.ts +0 -6
- package/dist/components/graph/TargetNode.d.ts.map +0 -1
- package/dist/components/health/AgentHealthCard.d.ts +0 -9
- package/dist/components/health/AgentHealthCard.d.ts.map +0 -1
- package/dist/components/health/HealthDashboard.d.ts +0 -10
- package/dist/components/health/HealthDashboard.d.ts.map +0 -1
- package/dist/components/health/SystemStatus.d.ts +0 -11
- package/dist/components/health/SystemStatus.d.ts.map +0 -1
- package/dist/components/health/index.d.ts +0 -5
- package/dist/components/health/index.d.ts.map +0 -1
- package/dist/components/health/types.d.ts +0 -50
- package/dist/components/health/types.d.ts.map +0 -1
- package/dist/components/idp-components/ComponentCard.d.ts +0 -24
- package/dist/components/idp-components/ComponentCard.d.ts.map +0 -1
- package/dist/components/idp-components/ComponentForm.d.ts +0 -22
- package/dist/components/idp-components/ComponentForm.d.ts.map +0 -1
- package/dist/components/idp-components/index.d.ts +0 -5
- package/dist/components/idp-components/index.d.ts.map +0 -1
- package/dist/components/logs/LogViewer.d.ts +0 -13
- package/dist/components/logs/LogViewer.d.ts.map +0 -1
- package/dist/components/notes/NoteCard.d.ts +0 -13
- package/dist/components/notes/NoteCard.d.ts.map +0 -1
- package/dist/components/notes/NoteEditor.d.ts +0 -31
- package/dist/components/notes/NoteEditor.d.ts.map +0 -1
- package/dist/components/notes/NoteList.d.ts +0 -15
- package/dist/components/notes/NoteList.d.ts.map +0 -1
- package/dist/components/notes/NotesTabPanel.d.ts +0 -18
- package/dist/components/notes/NotesTabPanel.d.ts.map +0 -1
- package/dist/components/notes/index.d.ts +0 -7
- package/dist/components/notes/index.d.ts.map +0 -1
- package/dist/components/notes/types.d.ts +0 -58
- package/dist/components/notes/types.d.ts.map +0 -1
- package/dist/components/scorecard/ScorecardPanel.d.ts +0 -9
- package/dist/components/scorecard/ScorecardPanel.d.ts.map +0 -1
- package/dist/components/scorecard/index.d.ts +0 -3
- package/dist/components/scorecard/index.d.ts.map +0 -1
- package/dist/components/sessions/CollaboratorsList.d.ts +0 -18
- package/dist/components/sessions/CollaboratorsList.d.ts.map +0 -1
- package/dist/components/sessions/ControlStatusBar.d.ts +0 -31
- package/dist/components/sessions/ControlStatusBar.d.ts.map +0 -1
- package/dist/components/sessions/SessionCard.d.ts +0 -24
- package/dist/components/sessions/SessionCard.d.ts.map +0 -1
- package/dist/components/sessions/SessionForm.d.ts +0 -20
- package/dist/components/sessions/SessionForm.d.ts.map +0 -1
- package/dist/components/sessions/SessionList.d.ts +0 -25
- package/dist/components/sessions/SessionList.d.ts.map +0 -1
- package/dist/components/sessions/SessionShareDialog.d.ts +0 -15
- package/dist/components/sessions/SessionShareDialog.d.ts.map +0 -1
- package/dist/components/sessions/SessionStatusBadge.d.ts +0 -9
- package/dist/components/sessions/SessionStatusBadge.d.ts.map +0 -1
- package/dist/components/sessions/SharedTerminalPanel.d.ts +0 -72
- package/dist/components/sessions/SharedTerminalPanel.d.ts.map +0 -1
- package/dist/components/sessions/TerminalPanel.d.ts +0 -69
- package/dist/components/sessions/TerminalPanel.d.ts.map +0 -1
- package/dist/components/sessions/index.d.ts +0 -11
- package/dist/components/sessions/index.d.ts.map +0 -1
- package/dist/components/sessions/types.d.ts +0 -67
- package/dist/components/sessions/types.d.ts.map +0 -1
- package/dist/components/settings/AdvancedSection.d.ts +0 -22
- package/dist/components/settings/AdvancedSection.d.ts.map +0 -1
- package/dist/components/settings/ConfigEditor.d.ts +0 -14
- package/dist/components/settings/ConfigEditor.d.ts.map +0 -1
- package/dist/components/settings/ConfigSection.d.ts +0 -12
- package/dist/components/settings/ConfigSection.d.ts.map +0 -1
- package/dist/components/settings/NotificationsSection.d.ts +0 -14
- package/dist/components/settings/NotificationsSection.d.ts.map +0 -1
- package/dist/components/settings/PreferencesSection.d.ts +0 -14
- package/dist/components/settings/PreferencesSection.d.ts.map +0 -1
- package/dist/components/settings/ProfileSection.d.ts +0 -14
- package/dist/components/settings/ProfileSection.d.ts.map +0 -1
- package/dist/components/settings/SecuritySection.d.ts +0 -11
- package/dist/components/settings/SecuritySection.d.ts.map +0 -1
- package/dist/components/settings/SettingsForm.d.ts +0 -58
- package/dist/components/settings/SettingsForm.d.ts.map +0 -1
- package/dist/components/settings/WorkspaceDefaultsSection.d.ts +0 -27
- package/dist/components/settings/WorkspaceDefaultsSection.d.ts.map +0 -1
- package/dist/components/settings/index.d.ts +0 -4
- package/dist/components/settings/index.d.ts.map +0 -1
- package/dist/components/settings/types.d.ts +0 -55
- package/dist/components/settings/types.d.ts.map +0 -1
- package/dist/components/shared/AgentEventsConnector.d.ts +0 -6
- package/dist/components/shared/AgentEventsConnector.d.ts.map +0 -1
- package/dist/components/shared/AgentSelector.d.ts +0 -25
- package/dist/components/shared/AgentSelector.d.ts.map +0 -1
- package/dist/components/shared/AgentSetupBanner.d.ts +0 -21
- package/dist/components/shared/AgentSetupBanner.d.ts.map +0 -1
- package/dist/components/shared/Card.d.ts +0 -29
- package/dist/components/shared/Card.d.ts.map +0 -1
- package/dist/components/shared/ConfirmDialog.d.ts +0 -14
- package/dist/components/shared/ConfirmDialog.d.ts.map +0 -1
- package/dist/components/shared/EmptyState.d.ts +0 -11
- package/dist/components/shared/EmptyState.d.ts.map +0 -1
- package/dist/components/shared/EntityTagPicker.d.ts +0 -8
- package/dist/components/shared/EntityTagPicker.d.ts.map +0 -1
- package/dist/components/shared/ErrorState.d.ts +0 -11
- package/dist/components/shared/ErrorState.d.ts.map +0 -1
- package/dist/components/shared/FilterDropdown.d.ts +0 -20
- package/dist/components/shared/FilterDropdown.d.ts.map +0 -1
- package/dist/components/shared/GetHelpButton.d.ts +0 -27
- package/dist/components/shared/GetHelpButton.d.ts.map +0 -1
- package/dist/components/shared/InstallTabs.d.ts +0 -18
- package/dist/components/shared/InstallTabs.d.ts.map +0 -1
- package/dist/components/shared/LoadingState.d.ts +0 -7
- package/dist/components/shared/LoadingState.d.ts.map +0 -1
- package/dist/components/shared/NotificationToast.d.ts +0 -40
- package/dist/components/shared/NotificationToast.d.ts.map +0 -1
- package/dist/components/shared/PageHeader.d.ts +0 -14
- package/dist/components/shared/PageHeader.d.ts.map +0 -1
- package/dist/components/shared/PluginGate.d.ts +0 -35
- package/dist/components/shared/PluginGate.d.ts.map +0 -1
- package/dist/components/shared/QuotaExhaustedDialog.d.ts +0 -12
- package/dist/components/shared/QuotaExhaustedDialog.d.ts.map +0 -1
- package/dist/components/shared/RequireAgentReachable.d.ts +0 -14
- package/dist/components/shared/RequireAgentReachable.d.ts.map +0 -1
- package/dist/components/shared/SearchInput.d.ts +0 -9
- package/dist/components/shared/SearchInput.d.ts.map +0 -1
- package/dist/components/shared/SearchableSelect.d.ts +0 -48
- package/dist/components/shared/SearchableSelect.d.ts.map +0 -1
- package/dist/components/shared/SelectionCheckbox.d.ts +0 -11
- package/dist/components/shared/SelectionCheckbox.d.ts.map +0 -1
- package/dist/components/shared/SessionNotificationBanner.d.ts +0 -47
- package/dist/components/shared/SessionNotificationBanner.d.ts.map +0 -1
- package/dist/components/shared/StatCard.d.ts +0 -17
- package/dist/components/shared/StatCard.d.ts.map +0 -1
- package/dist/components/shared/StatusBadge.d.ts +0 -11
- package/dist/components/shared/StatusBadge.d.ts.map +0 -1
- package/dist/components/shared/TagFilter.d.ts +0 -11
- package/dist/components/shared/TagFilter.d.ts.map +0 -1
- package/dist/components/shared/index.d.ts +0 -32
- package/dist/components/shared/index.d.ts.map +0 -1
- package/dist/components/targets/TargetCard.d.ts +0 -45
- package/dist/components/targets/TargetCard.d.ts.map +0 -1
- package/dist/components/targets/index.d.ts +0 -3
- package/dist/components/targets/index.d.ts.map +0 -1
- package/dist/components/templates/TemplateCard.d.ts +0 -19
- package/dist/components/templates/TemplateCard.d.ts.map +0 -1
- package/dist/components/templates/index.d.ts +0 -3
- package/dist/components/templates/index.d.ts.map +0 -1
- package/dist/components/tunnels/DomainVerificationBadge.d.ts +0 -6
- package/dist/components/tunnels/DomainVerificationBadge.d.ts.map +0 -1
- package/dist/components/tunnels/ProviderBadge.d.ts +0 -6
- package/dist/components/tunnels/ProviderBadge.d.ts.map +0 -1
- package/dist/components/tunnels/TunnelCard.d.ts +0 -13
- package/dist/components/tunnels/TunnelCard.d.ts.map +0 -1
- package/dist/components/tunnels/TunnelCreateWizard.d.ts +0 -2
- package/dist/components/tunnels/TunnelCreateWizard.d.ts.map +0 -1
- package/dist/components/tunnels/TunnelStatusBadge.d.ts +0 -6
- package/dist/components/tunnels/TunnelStatusBadge.d.ts.map +0 -1
- package/dist/components/vibe/VibeAgentEmptyState.d.ts +0 -8
- package/dist/components/vibe/VibeAgentEmptyState.d.ts.map +0 -1
- package/dist/components/vibecalendar/LogsDrawer.d.ts +0 -12
- package/dist/components/vibecalendar/LogsDrawer.d.ts.map +0 -1
- package/dist/components/vibecalendar/ScheduleTaskModal.d.ts +0 -33
- package/dist/components/vibecalendar/ScheduleTaskModal.d.ts.map +0 -1
- package/dist/components/vibecalendar/VibeCalAgendaView.d.ts +0 -11
- package/dist/components/vibecalendar/VibeCalAgendaView.d.ts.map +0 -1
- package/dist/components/vibecalendar/VibeCalDayView.d.ts +0 -12
- package/dist/components/vibecalendar/VibeCalDayView.d.ts.map +0 -1
- package/dist/components/vibecalendar/VibeCalMonthView.d.ts +0 -12
- package/dist/components/vibecalendar/VibeCalMonthView.d.ts.map +0 -1
- package/dist/components/vibecalendar/VibeCalWeekView.d.ts +0 -12
- package/dist/components/vibecalendar/VibeCalWeekView.d.ts.map +0 -1
- package/dist/components/vibecalendar/VibeCalendarHeader.d.ts +0 -12
- package/dist/components/vibecalendar/VibeCalendarHeader.d.ts.map +0 -1
- package/dist/components/vibecalendar/VibeTaskBlock.d.ts +0 -12
- package/dist/components/vibecalendar/VibeTaskBlock.d.ts.map +0 -1
- package/dist/components/vibecalendar/expandOccurrences.d.ts +0 -37
- package/dist/components/vibecalendar/expandOccurrences.d.ts.map +0 -1
- package/dist/components/vibecalendar/index.d.ts +0 -11
- package/dist/components/vibecalendar/index.d.ts.map +0 -1
- package/dist/components/vibecalendar/types.d.ts +0 -53
- package/dist/components/vibecalendar/types.d.ts.map +0 -1
- package/dist/components/vibedeck/VibeDeckButtonForm.d.ts +0 -54
- package/dist/components/vibedeck/VibeDeckButtonForm.d.ts.map +0 -1
- package/dist/components/vibedeck/VibeDeckButtonTile.d.ts +0 -48
- package/dist/components/vibedeck/VibeDeckButtonTile.d.ts.map +0 -1
- package/dist/components/vibedeck/VibeDeckExecutionLog.d.ts +0 -25
- package/dist/components/vibedeck/VibeDeckExecutionLog.d.ts.map +0 -1
- package/dist/components/vibedeck/VibeDeckForm.d.ts +0 -21
- package/dist/components/vibedeck/VibeDeckForm.d.ts.map +0 -1
- package/dist/components/vibedeck/VibeDeckGrid.d.ts +0 -51
- package/dist/components/vibedeck/VibeDeckGrid.d.ts.map +0 -1
- package/dist/components/vibedeck/VibeDeckShareDialog.d.ts +0 -10
- package/dist/components/vibedeck/VibeDeckShareDialog.d.ts.map +0 -1
- package/dist/components/vibedeck/VibeDeckSwitcher.d.ts +0 -28
- package/dist/components/vibedeck/VibeDeckSwitcher.d.ts.map +0 -1
- package/dist/components/vibedeck/index.d.ts +0 -9
- package/dist/components/vibedeck/index.d.ts.map +0 -1
- package/dist/components/vibes/VibeCard.d.ts +0 -19
- package/dist/components/vibes/VibeCard.d.ts.map +0 -1
- package/dist/components/vibes/VibeForm.d.ts +0 -15
- package/dist/components/vibes/VibeForm.d.ts.map +0 -1
- package/dist/components/vibes/VibeList.d.ts +0 -20
- package/dist/components/vibes/VibeList.d.ts.map +0 -1
- package/dist/components/vibes/icons.d.ts +0 -6
- package/dist/components/vibes/icons.d.ts.map +0 -1
- package/dist/components/vibes/index.d.ts +0 -5
- package/dist/components/vibes/index.d.ts.map +0 -1
- package/dist/components/vibes/types.d.ts +0 -71
- package/dist/components/vibes/types.d.ts.map +0 -1
- package/dist/components/webhooks/WebhookCard.d.ts +0 -12
- package/dist/components/webhooks/WebhookCard.d.ts.map +0 -1
- package/dist/components/webhooks/WebhookForm.d.ts +0 -11
- package/dist/components/webhooks/WebhookForm.d.ts.map +0 -1
- package/dist/components/webhooks/WebhookList.d.ts +0 -14
- package/dist/components/webhooks/WebhookList.d.ts.map +0 -1
- package/dist/components/webhooks/index.d.ts +0 -5
- package/dist/components/webhooks/index.d.ts.map +0 -1
- package/dist/components/webhooks/types.d.ts +0 -58
- package/dist/components/webhooks/types.d.ts.map +0 -1
- package/dist/config/assistantUsecases.d.ts +0 -18
- package/dist/config/assistantUsecases.d.ts.map +0 -1
- package/dist/config/index.d.ts +0 -24
- package/dist/config/index.d.ts.map +0 -1
- package/dist/constants/permissions.d.ts +0 -112
- package/dist/constants/permissions.d.ts.map +0 -1
- package/dist/constants/pluginCatalog.d.ts +0 -36
- package/dist/constants/pluginCatalog.d.ts.map +0 -1
- package/dist/dev/main.d.ts +0 -2
- package/dist/dev/main.d.ts.map +0 -1
- package/dist/generated/global-operations.d.ts +0 -2
- package/dist/generated/global-operations.d.ts.map +0 -1
- package/dist/generated/global-types.d.ts +0 -21253
- package/dist/generated/global-types.d.ts.map +0 -1
- package/dist/generated/wspace-operations.d.ts +0 -15218
- package/dist/generated/wspace-operations.d.ts.map +0 -1
- package/dist/generated/wspace-types.d.ts +0 -55252
- package/dist/generated/wspace-types.d.ts.map +0 -1
- package/dist/hooks/index.d.ts +0 -7
- package/dist/hooks/index.d.ts.map +0 -1
- package/dist/hooks/useAgentConnectivity.d.ts +0 -47
- package/dist/hooks/useAgentConnectivity.d.ts.map +0 -1
- package/dist/hooks/useAgentEvents.d.ts +0 -36
- package/dist/hooks/useAgentEvents.d.ts.map +0 -1
- package/dist/hooks/useAgentManagerKeyboard.d.ts +0 -17
- package/dist/hooks/useAgentManagerKeyboard.d.ts.map +0 -1
- package/dist/hooks/useAgentManagerStreaming.d.ts +0 -19
- package/dist/hooks/useAgentManagerStreaming.d.ts.map +0 -1
- package/dist/hooks/useAssistantHeartbeat.d.ts +0 -4
- package/dist/hooks/useAssistantHeartbeat.d.ts.map +0 -1
- package/dist/hooks/useAssistantKeyboardShortcuts.d.ts +0 -18
- package/dist/hooks/useAssistantKeyboardShortcuts.d.ts.map +0 -1
- package/dist/hooks/useCachedInitialData.d.ts +0 -120
- package/dist/hooks/useCachedInitialData.d.ts.map +0 -1
- package/dist/hooks/useEntityTags.d.ts +0 -24
- package/dist/hooks/useEntityTags.d.ts.map +0 -1
- package/dist/hooks/useFileUpload.d.ts +0 -15
- package/dist/hooks/useFileUpload.d.ts.map +0 -1
- package/dist/hooks/useInitialDataLoader.d.ts +0 -48
- package/dist/hooks/useInitialDataLoader.d.ts.map +0 -1
- package/dist/hooks/useMcpServers.d.ts +0 -14
- package/dist/hooks/useMcpServers.d.ts.map +0 -1
- package/dist/hooks/useOpenAssistantHelp.d.ts +0 -2
- package/dist/hooks/useOpenAssistantHelp.d.ts.map +0 -1
- package/dist/hooks/usePluginAvailability.d.ts +0 -35
- package/dist/hooks/usePluginAvailability.d.ts.map +0 -1
- package/dist/hooks/useQueryBackedTab.d.ts +0 -2
- package/dist/hooks/useQueryBackedTab.d.ts.map +0 -1
- package/dist/hooks/useSessionSearch.d.ts +0 -24
- package/dist/hooks/useSessionSearch.d.ts.map +0 -1
- package/dist/hooks/useVoiceMode.d.ts +0 -17
- package/dist/hooks/useVoiceMode.d.ts.map +0 -1
- package/dist/index.d.ts +0 -17
- package/dist/index.d.ts.map +0 -1
- package/dist/lib/vibeFeatures.d.ts +0 -29
- package/dist/lib/vibeFeatures.d.ts.map +0 -1
- package/dist/node_modules/@xyflow/react/dist/esm/index.js +0 -3281
- package/dist/node_modules/@xyflow/react/dist/esm/index.js.map +0 -1
- package/dist/node_modules/@xyflow/system/dist/esm/index.js +0 -1845
- package/dist/node_modules/@xyflow/system/dist/esm/index.js.map +0 -1
- package/dist/node_modules/classcat/index.js +0 -12
- package/dist/node_modules/classcat/index.js.map +0 -1
- package/dist/node_modules/d3-dispatch/src/dispatch.js +0 -67
- package/dist/node_modules/d3-dispatch/src/dispatch.js.map +0 -1
- package/dist/node_modules/d3-drag/src/constant.js +0 -6
- package/dist/node_modules/d3-drag/src/constant.js.map +0 -1
- package/dist/node_modules/d3-drag/src/drag.js +0 -116
- package/dist/node_modules/d3-drag/src/drag.js.map +0 -1
- package/dist/node_modules/d3-drag/src/event.js +0 -64
- package/dist/node_modules/d3-drag/src/event.js.map +0 -1
- package/dist/node_modules/d3-drag/src/nodrag.js +0 -17
- package/dist/node_modules/d3-drag/src/nodrag.js.map +0 -1
- package/dist/node_modules/d3-drag/src/noevent.js +0 -15
- package/dist/node_modules/d3-drag/src/noevent.js.map +0 -1
- package/dist/node_modules/d3-ease/src/cubic.js +0 -8
- package/dist/node_modules/d3-ease/src/cubic.js.map +0 -1
- package/dist/node_modules/d3-interpolate/src/transform/decompose.js +0 -24
- package/dist/node_modules/d3-interpolate/src/transform/decompose.js.map +0 -1
- package/dist/node_modules/d3-interpolate/src/transform/index.js +0 -56
- package/dist/node_modules/d3-interpolate/src/transform/index.js.map +0 -1
- package/dist/node_modules/d3-interpolate/src/transform/parse.js +0 -14
- package/dist/node_modules/d3-interpolate/src/transform/parse.js.map +0 -1
- package/dist/node_modules/d3-interpolate/src/zoom.js +0 -43
- package/dist/node_modules/d3-interpolate/src/zoom.js.map +0 -1
- package/dist/node_modules/d3-selection/src/array.js +0 -8
- package/dist/node_modules/d3-selection/src/array.js.map +0 -1
- package/dist/node_modules/d3-selection/src/constant.js +0 -10
- package/dist/node_modules/d3-selection/src/constant.js.map +0 -1
- package/dist/node_modules/d3-selection/src/creator.js +0 -22
- package/dist/node_modules/d3-selection/src/creator.js.map +0 -1
- package/dist/node_modules/d3-selection/src/matcher.js +0 -15
- package/dist/node_modules/d3-selection/src/matcher.js.map +0 -1
- package/dist/node_modules/d3-selection/src/namespace.js +0 -13
- package/dist/node_modules/d3-selection/src/namespace.js.map +0 -1
- package/dist/node_modules/d3-selection/src/namespaces.js +0 -12
- package/dist/node_modules/d3-selection/src/namespaces.js.map +0 -1
- package/dist/node_modules/d3-selection/src/pointer.js +0 -20
- package/dist/node_modules/d3-selection/src/pointer.js.map +0 -1
- package/dist/node_modules/d3-selection/src/select.js +0 -9
- package/dist/node_modules/d3-selection/src/select.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/append.js +0 -12
- package/dist/node_modules/d3-selection/src/selection/append.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/attr.js +0 -46
- package/dist/node_modules/d3-selection/src/selection/attr.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/call.js +0 -9
- package/dist/node_modules/d3-selection/src/selection/call.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/classed.js +0 -55
- package/dist/node_modules/d3-selection/src/selection/classed.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/clone.js +0 -16
- package/dist/node_modules/d3-selection/src/selection/clone.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/data.js +0 -38
- package/dist/node_modules/d3-selection/src/selection/data.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/datum.js +0 -8
- package/dist/node_modules/d3-selection/src/selection/datum.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/dispatch.js +0 -23
- package/dist/node_modules/d3-selection/src/selection/dispatch.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/each.js +0 -9
- package/dist/node_modules/d3-selection/src/selection/each.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/empty.js +0 -8
- package/dist/node_modules/d3-selection/src/selection/empty.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/enter.js +0 -28
- package/dist/node_modules/d3-selection/src/selection/enter.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/exit.js +0 -10
- package/dist/node_modules/d3-selection/src/selection/exit.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/filter.js +0 -12
- package/dist/node_modules/d3-selection/src/selection/filter.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/html.js +0 -21
- package/dist/node_modules/d3-selection/src/selection/html.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/index.js +0 -87
- package/dist/node_modules/d3-selection/src/selection/index.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/insert.js +0 -16
- package/dist/node_modules/d3-selection/src/selection/insert.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/iterator.js +0 -8
- package/dist/node_modules/d3-selection/src/selection/iterator.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/join.js +0 -9
- package/dist/node_modules/d3-selection/src/selection/join.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/lower.js +0 -11
- package/dist/node_modules/d3-selection/src/selection/lower.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/merge.js +0 -11
- package/dist/node_modules/d3-selection/src/selection/merge.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/node.js +0 -12
- package/dist/node_modules/d3-selection/src/selection/node.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/nodes.js +0 -8
- package/dist/node_modules/d3-selection/src/selection/nodes.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/on.js +0 -58
- package/dist/node_modules/d3-selection/src/selection/on.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/order.js +0 -9
- package/dist/node_modules/d3-selection/src/selection/order.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/property.js +0 -24
- package/dist/node_modules/d3-selection/src/selection/property.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/raise.js +0 -11
- package/dist/node_modules/d3-selection/src/selection/raise.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/remove.js +0 -12
- package/dist/node_modules/d3-selection/src/selection/remove.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/select.js +0 -12
- package/dist/node_modules/d3-selection/src/selection/select.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/selectAll.js +0 -18
- package/dist/node_modules/d3-selection/src/selection/selectAll.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/selectChild.js +0 -18
- package/dist/node_modules/d3-selection/src/selection/selectChild.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/selectChildren.js +0 -18
- package/dist/node_modules/d3-selection/src/selection/selectChildren.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/size.js +0 -10
- package/dist/node_modules/d3-selection/src/selection/size.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/sort.js +0 -20
- package/dist/node_modules/d3-selection/src/selection/sort.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/sparse.js +0 -8
- package/dist/node_modules/d3-selection/src/selection/sparse.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/style.js +0 -28
- package/dist/node_modules/d3-selection/src/selection/style.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selection/text.js +0 -21
- package/dist/node_modules/d3-selection/src/selection/text.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selector.js +0 -11
- package/dist/node_modules/d3-selection/src/selector.js.map +0 -1
- package/dist/node_modules/d3-selection/src/selectorAll.js +0 -13
- package/dist/node_modules/d3-selection/src/selectorAll.js.map +0 -1
- package/dist/node_modules/d3-selection/src/sourceEvent.js +0 -10
- package/dist/node_modules/d3-selection/src/sourceEvent.js.map +0 -1
- package/dist/node_modules/d3-selection/src/window.js +0 -8
- package/dist/node_modules/d3-selection/src/window.js.map +0 -1
- package/dist/node_modules/d3-timer/src/timeout.js +0 -12
- package/dist/node_modules/d3-timer/src/timeout.js.map +0 -1
- package/dist/node_modules/d3-timer/src/timer.js +0 -55
- package/dist/node_modules/d3-timer/src/timer.js.map +0 -1
- package/dist/node_modules/d3-transition/src/index.js +0 -3
- package/dist/node_modules/d3-transition/src/interrupt.js +0 -18
- package/dist/node_modules/d3-transition/src/interrupt.js.map +0 -1
- package/dist/node_modules/d3-transition/src/selection/index.js +0 -7
- package/dist/node_modules/d3-transition/src/selection/index.js.map +0 -1
- package/dist/node_modules/d3-transition/src/selection/interrupt.js +0 -11
- package/dist/node_modules/d3-transition/src/selection/interrupt.js.map +0 -1
- package/dist/node_modules/d3-transition/src/selection/transition.js +0 -25
- package/dist/node_modules/d3-transition/src/selection/transition.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/attr.js +0 -51
- package/dist/node_modules/d3-transition/src/transition/attr.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/attrTween.js +0 -40
- package/dist/node_modules/d3-transition/src/transition/attrTween.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/delay.js +0 -20
- package/dist/node_modules/d3-transition/src/transition/delay.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/duration.js +0 -20
- package/dist/node_modules/d3-transition/src/transition/duration.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/ease.js +0 -16
- package/dist/node_modules/d3-transition/src/transition/ease.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/easeVarying.js +0 -17
- package/dist/node_modules/d3-transition/src/transition/easeVarying.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/end.js +0 -18
- package/dist/node_modules/d3-transition/src/transition/end.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/filter.js +0 -12
- package/dist/node_modules/d3-transition/src/transition/filter.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/index.js +0 -69
- package/dist/node_modules/d3-transition/src/transition/index.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/interpolate.js +0 -13
- package/dist/node_modules/d3-transition/src/transition/interpolate.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/merge.js +0 -12
- package/dist/node_modules/d3-transition/src/transition/merge.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/on.js +0 -23
- package/dist/node_modules/d3-transition/src/transition/on.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/remove.js +0 -15
- package/dist/node_modules/d3-transition/src/transition/remove.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/schedule.js +0 -71
- package/dist/node_modules/d3-transition/src/transition/schedule.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/select.js +0 -14
- package/dist/node_modules/d3-transition/src/transition/select.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/selectAll.js +0 -17
- package/dist/node_modules/d3-transition/src/transition/selectAll.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/selection.js +0 -10
- package/dist/node_modules/d3-transition/src/transition/selection.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/style.js +0 -47
- package/dist/node_modules/d3-transition/src/transition/style.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/styleTween.js +0 -25
- package/dist/node_modules/d3-transition/src/transition/styleTween.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/text.js +0 -19
- package/dist/node_modules/d3-transition/src/transition/text.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/textTween.js +0 -25
- package/dist/node_modules/d3-transition/src/transition/textTween.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/transition.js +0 -19
- package/dist/node_modules/d3-transition/src/transition/transition.js.map +0 -1
- package/dist/node_modules/d3-transition/src/transition/tween.js +0 -56
- package/dist/node_modules/d3-transition/src/transition/tween.js.map +0 -1
- package/dist/node_modules/d3-zoom/src/constant.js +0 -6
- package/dist/node_modules/d3-zoom/src/constant.js.map +0 -1
- package/dist/node_modules/d3-zoom/src/event.js +0 -30
- package/dist/node_modules/d3-zoom/src/event.js.map +0 -1
- package/dist/node_modules/d3-zoom/src/index.js +0 -2
- package/dist/node_modules/d3-zoom/src/noevent.js +0 -11
- package/dist/node_modules/d3-zoom/src/noevent.js.map +0 -1
- package/dist/node_modules/d3-zoom/src/transform.js +0 -50
- package/dist/node_modules/d3-zoom/src/transform.js.map +0 -1
- package/dist/node_modules/d3-zoom/src/zoom.js +0 -219
- package/dist/node_modules/d3-zoom/src/zoom.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +0 -56
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js +0 -54
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +0 -54
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +0 -46
- package/dist/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/shim/index.js +0 -12
- package/dist/node_modules/use-sync-external-store/shim/index.js.map +0 -1
- package/dist/node_modules/use-sync-external-store/shim/with-selector.js +0 -12
- package/dist/node_modules/use-sync-external-store/shim/with-selector.js.map +0 -1
- package/dist/node_modules/zustand/esm/traditional.js +0 -17
- package/dist/node_modules/zustand/esm/traditional.js.map +0 -1
- package/dist/node_modules/zustand/esm/vanilla/shallow.js +0 -21
- package/dist/node_modules/zustand/esm/vanilla/shallow.js.map +0 -1
- package/dist/node_modules/zustand/esm/vanilla.js +0 -20
- package/dist/node_modules/zustand/esm/vanilla.js.map +0 -1
- package/dist/pages/ActionsPage.d.ts +0 -2
- package/dist/pages/ActionsPage.d.ts.map +0 -1
- package/dist/pages/AgentDetailsPage.d.ts +0 -5
- package/dist/pages/AgentDetailsPage.d.ts.map +0 -1
- package/dist/pages/AgentGraphPage.d.ts +0 -9
- package/dist/pages/AgentGraphPage.d.ts.map +0 -1
- package/dist/pages/AgentsLandingPage.d.ts +0 -12
- package/dist/pages/AgentsLandingPage.d.ts.map +0 -1
- package/dist/pages/AgentsPage.d.ts +0 -5
- package/dist/pages/AgentsPage.d.ts.map +0 -1
- package/dist/pages/AnalyticsPage.d.ts +0 -2
- package/dist/pages/AnalyticsPage.d.ts.map +0 -1
- package/dist/pages/CatalogDetailPage.d.ts +0 -2
- package/dist/pages/CatalogDetailPage.d.ts.map +0 -1
- package/dist/pages/CatalogDocsPage.d.ts +0 -2
- package/dist/pages/CatalogDocsPage.d.ts.map +0 -1
- package/dist/pages/CatalogPage.d.ts +0 -2
- package/dist/pages/CatalogPage.d.ts.map +0 -1
- package/dist/pages/ComponentDetailPage.d.ts +0 -2
- package/dist/pages/ComponentDetailPage.d.ts.map +0 -1
- package/dist/pages/ComponentDocsPage.d.ts +0 -2
- package/dist/pages/ComponentDocsPage.d.ts.map +0 -1
- package/dist/pages/ComponentsPage.d.ts +0 -2
- package/dist/pages/ComponentsPage.d.ts.map +0 -1
- package/dist/pages/GettingStartedPage.d.ts +0 -16
- package/dist/pages/GettingStartedPage.d.ts.map +0 -1
- package/dist/pages/HealthPage.d.ts +0 -2
- package/dist/pages/HealthPage.d.ts.map +0 -1
- package/dist/pages/LogsPage.d.ts +0 -2
- package/dist/pages/LogsPage.d.ts.map +0 -1
- package/dist/pages/NoteDetailsPage.d.ts +0 -2
- package/dist/pages/NoteDetailsPage.d.ts.map +0 -1
- package/dist/pages/OverviewPage.d.ts +0 -9
- package/dist/pages/OverviewPage.d.ts.map +0 -1
- package/dist/pages/SessionDetailsPage.d.ts +0 -6
- package/dist/pages/SessionDetailsPage.d.ts.map +0 -1
- package/dist/pages/SessionsPage.d.ts +0 -6
- package/dist/pages/SessionsPage.d.ts.map +0 -1
- package/dist/pages/SettingsPage.d.ts +0 -2
- package/dist/pages/SettingsPage.d.ts.map +0 -1
- package/dist/pages/SharedSessionPage.d.ts +0 -13
- package/dist/pages/SharedSessionPage.d.ts.map +0 -1
- package/dist/pages/SharedVibeDeckPage.d.ts +0 -8
- package/dist/pages/SharedVibeDeckPage.d.ts.map +0 -1
- package/dist/pages/TargetDetailsPage.d.ts +0 -13
- package/dist/pages/TargetDetailsPage.d.ts.map +0 -1
- package/dist/pages/TargetsPage.d.ts +0 -8
- package/dist/pages/TargetsPage.d.ts.map +0 -1
- package/dist/pages/TemplateDetailPage.d.ts +0 -2
- package/dist/pages/TemplateDetailPage.d.ts.map +0 -1
- package/dist/pages/TemplatesPage.d.ts +0 -2
- package/dist/pages/TemplatesPage.d.ts.map +0 -1
- package/dist/pages/TunnelsLandingPage.d.ts +0 -8
- package/dist/pages/TunnelsLandingPage.d.ts.map +0 -1
- package/dist/pages/VibeAuditPage.d.ts +0 -2
- package/dist/pages/VibeAuditPage.d.ts.map +0 -1
- package/dist/pages/VibeCalendarPage.d.ts +0 -9
- package/dist/pages/VibeCalendarPage.d.ts.map +0 -1
- package/dist/pages/VibeDeckPage.d.ts +0 -2
- package/dist/pages/VibeDeckPage.d.ts.map +0 -1
- package/dist/pages/VibeDetailsPage.d.ts +0 -5
- package/dist/pages/VibeDetailsPage.d.ts.map +0 -1
- package/dist/pages/VibeDocsPage.d.ts +0 -2
- package/dist/pages/VibeDocsPage.d.ts.map +0 -1
- package/dist/pages/VibeTaskDetailPage.d.ts +0 -9
- package/dist/pages/VibeTaskDetailPage.d.ts.map +0 -1
- package/dist/pages/VibesPage.d.ts +0 -5
- package/dist/pages/VibesPage.d.ts.map +0 -1
- package/dist/pages/WebhooksPage.d.ts +0 -5
- package/dist/pages/WebhooksPage.d.ts.map +0 -1
- package/dist/pages/ai/AIPage.d.ts +0 -6
- package/dist/pages/ai/AIPage.d.ts.map +0 -1
- package/dist/pages/ai/AISessionDetailPage.d.ts +0 -5
- package/dist/pages/ai/AISessionDetailPage.d.ts.map +0 -1
- package/dist/pages/ai/AgentManagerPage.d.ts +0 -9
- package/dist/pages/ai/AgentManagerPage.d.ts.map +0 -1
- package/dist/pages/index.d.ts +0 -17
- package/dist/pages/index.d.ts.map +0 -1
- package/dist/pages/tunnels/AuditTab.d.ts +0 -8
- package/dist/pages/tunnels/AuditTab.d.ts.map +0 -1
- package/dist/pages/tunnels/DomainsTab.d.ts +0 -2
- package/dist/pages/tunnels/DomainsTab.d.ts.map +0 -1
- package/dist/pages/tunnels/ProvidersTab.d.ts +0 -2
- package/dist/pages/tunnels/ProvidersTab.d.ts.map +0 -1
- package/dist/pages/tunnels/SessionsTab.d.ts +0 -8
- package/dist/pages/tunnels/SessionsTab.d.ts.map +0 -1
- package/dist/pages/tunnels/TunnelDetailsPage.d.ts +0 -2
- package/dist/pages/tunnels/TunnelDetailsPage.d.ts.map +0 -1
- package/dist/pages/tunnels/TunnelsTab.d.ts +0 -2
- package/dist/pages/tunnels/TunnelsTab.d.ts.map +0 -1
- package/dist/pages/tunnels/UsageTab.d.ts +0 -8
- package/dist/pages/tunnels/UsageTab.d.ts.map +0 -1
- package/dist/pages/tunnels/tabs/TunnelAuditTab.d.ts +0 -4
- package/dist/pages/tunnels/tabs/TunnelAuditTab.d.ts.map +0 -1
- package/dist/pages/tunnels/tabs/TunnelCliTab.d.ts +0 -8
- package/dist/pages/tunnels/tabs/TunnelCliTab.d.ts.map +0 -1
- package/dist/pages/tunnels/tabs/TunnelDomainsTab.d.ts +0 -8
- package/dist/pages/tunnels/tabs/TunnelDomainsTab.d.ts.map +0 -1
- package/dist/pages/tunnels/tabs/TunnelEndpointsTab.d.ts +0 -8
- package/dist/pages/tunnels/tabs/TunnelEndpointsTab.d.ts.map +0 -1
- package/dist/pages/tunnels/tabs/TunnelOverviewTab.d.ts +0 -8
- package/dist/pages/tunnels/tabs/TunnelOverviewTab.d.ts.map +0 -1
- package/dist/pages/tunnels/tabs/TunnelSessionsTab.d.ts +0 -4
- package/dist/pages/tunnels/tabs/TunnelSessionsTab.d.ts.map +0 -1
- package/dist/pages/tunnels/tabs/TunnelSettingsTab.d.ts +0 -9
- package/dist/pages/tunnels/tabs/TunnelSettingsTab.d.ts.map +0 -1
- package/dist/pages/tunnels/tabs/TunnelUsageTab.d.ts +0 -4
- package/dist/pages/tunnels/tabs/TunnelUsageTab.d.ts.map +0 -1
- package/dist/plugin.d.ts +0 -4
- package/dist/plugin.d.ts.map +0 -1
- package/dist/providers/AgentEventsProvider.d.ts +0 -79
- package/dist/providers/AgentEventsProvider.d.ts.map +0 -1
- package/dist/providers/VibeControlsProvider.d.ts +0 -29
- package/dist/providers/VibeControlsProvider.d.ts.map +0 -1
- package/dist/services/aiApi.d.ts +0 -310
- package/dist/services/aiApi.d.ts.map +0 -1
- package/dist/services/assistantApi.d.ts +0 -71
- package/dist/services/assistantApi.d.ts.map +0 -1
- package/dist/services/assistantExportService.d.ts +0 -9
- package/dist/services/assistantExportService.d.ts.map +0 -1
- package/dist/services/schedulerApi.d.ts +0 -18
- package/dist/services/schedulerApi.d.ts.map +0 -1
- package/dist/shared/hooks/useTr.d.ts +0 -17
- package/dist/shared/hooks/useTr.d.ts.map +0 -1
- package/dist/store/agentManagerStore.d.ts +0 -65
- package/dist/store/agentManagerStore.d.ts.map +0 -1
- package/dist/store/assistantStore.d.ts +0 -56
- package/dist/store/assistantStore.d.ts.map +0 -1
- package/dist/store/vibeControlsStore.d.ts +0 -68
- package/dist/store/vibeControlsStore.d.ts.map +0 -1
- package/dist/translations/en.d.ts +0 -2174
- package/dist/translations/en.d.ts.map +0 -1
- package/dist/types/agentManager.d.ts +0 -72
- package/dist/types/agentManager.d.ts.map +0 -1
- package/dist/types/assistant.d.ts +0 -58
- package/dist/types/assistant.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -134
- package/dist/types/index.d.ts.map +0 -1
- package/dist/utils/agentStatus.d.ts +0 -42
- package/dist/utils/agentStatus.d.ts.map +0 -1
- package/dist/utils/aiSessionNotFound.d.ts +0 -2
- package/dist/utils/aiSessionNotFound.d.ts.map +0 -1
- package/dist/utils/nativeBridge.d.ts +0 -3
- package/dist/utils/nativeBridge.d.ts.map +0 -1
- package/dist/utils/pageContext.d.ts +0 -23
- package/dist/utils/pageContext.d.ts.map +0 -1
- package/dist/utils/quotaUtils.d.ts +0 -8
- package/dist/utils/quotaUtils.d.ts.map +0 -1
- package/dist/utils/relativeTime.d.ts +0 -3
- package/dist/utils/relativeTime.d.ts.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useAdoptAgentSessionMutation as e, useAgentSessionOrphansLazyQuery as t, useBulkRestartSessionsMutation as n, useBulkStopSessionsMutation as r, useBulkTerminateSessionsMutation as i, useCheckSessionHealthMutation as ee, useCreateSessionMutation as
|
|
1
|
+
import { useAdoptAgentSessionMutation as e, useAgentSessionOrphansLazyQuery as t, useBulkRestartSessionsMutation as n, useBulkStopSessionsMutation as r, useBulkTerminateSessionsMutation as i, useCheckSessionHealthMutation as ee, useCreateSessionMutation as a, useListSessionsQuery as o, useRestartSessionMutation as te, useRestartSessionTerminalMutation as ne, useSessionStatusChangedSubscription as re, useStartSessionMutation as ie, useStartSessionTerminalMutation as ae, useStopSessionMutation as oe, useStopSessionTerminalMutation as se, useTerminateSessionMutation as ce, useUpdateSessionMutation as le, useVibecontrolsAgentHealthProbeStreamSubscription as ue, useVibecontrolsAgentHealthProbesQuery as de } from "../generated/wspace-operations.js";
|
|
2
2
|
import { useVibeControls as fe, useVibeNavigate as pe } from "../providers/VibeControlsProvider.js";
|
|
3
3
|
import { useVibeControlsStore as me } from "../store/vibeControlsStore.js";
|
|
4
4
|
import he from "../hooks/useCachedInitialData.js";
|
|
@@ -6,32 +6,32 @@ import { PageHeader as ge } from "../components/shared/PageHeader.js";
|
|
|
6
6
|
import { LoadingState as _e } from "../components/shared/LoadingState.js";
|
|
7
7
|
import { ErrorState as ve } from "../components/shared/ErrorState.js";
|
|
8
8
|
import { ConfirmDialog as ye } from "../components/shared/ConfirmDialog.js";
|
|
9
|
-
import { getQuotaDialogContent as be, isQuotaExhaustedError as
|
|
9
|
+
import { getQuotaDialogContent as be, isQuotaExhaustedError as s } from "../utils/quotaUtils.js";
|
|
10
10
|
import { EmptyState as xe } from "../components/shared/EmptyState.js";
|
|
11
11
|
import { SearchInput as Se } from "../components/shared/SearchInput.js";
|
|
12
|
-
import { FilterDropdown as
|
|
12
|
+
import { FilterDropdown as c } from "../components/shared/FilterDropdown.js";
|
|
13
13
|
import { AgentSetupBanner as Ce } from "../components/shared/AgentSetupBanner.js";
|
|
14
14
|
import { GetHelpButton as we } from "../components/shared/GetHelpButton.js";
|
|
15
|
-
import { SearchableSelect as
|
|
16
|
-
import
|
|
15
|
+
import { SearchableSelect as Te } from "../components/shared/SearchableSelect.js";
|
|
16
|
+
import Ee from "../components/shared/SessionNotificationBanner.js";
|
|
17
17
|
import "../components/shared/index.js";
|
|
18
|
-
import { VIBE_PERMISSIONS as
|
|
18
|
+
import { VIBE_PERMISSIONS as l } from "../constants/permissions.js";
|
|
19
19
|
import { SessionCard as De } from "../components/sessions/SessionCard.js";
|
|
20
20
|
import { SessionList as Oe } from "../components/sessions/SessionList.js";
|
|
21
21
|
import { TerminalPanel as ke } from "../components/sessions/TerminalPanel.js";
|
|
22
22
|
import { SessionShareDialog as Ae } from "../components/sessions/SessionShareDialog.js";
|
|
23
23
|
import "../components/sessions/index.js";
|
|
24
|
-
import { useCallback as
|
|
24
|
+
import { useCallback as u, useEffect as d, useMemo as f, useRef as p, useState as m } from "react";
|
|
25
25
|
import { useI18n as je } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
26
26
|
import { Activity as Me, CheckSquare as Ne, Grid as Pe, List as Fe, Monitor as Ie, Play as Le, Plus as Re, RefreshCw as ze, RotateCcw as Be, Square as Ve, Terminal as He, Trash2 as Ue, XSquare as We } from "lucide-react";
|
|
27
27
|
import { useSearchParams as Ge } from "react-router-dom";
|
|
28
28
|
import { usePermissions as Ke } from "@burdenoff/fe-libs/shared/providers/shell";
|
|
29
29
|
import { AnimatePresence as qe } from "framer-motion";
|
|
30
|
-
import { jsx as
|
|
31
|
-
import { MotionItem as Je, MotionList as Ye, MotionPage as
|
|
30
|
+
import { jsx as h, jsxs as g } from "react/jsx-runtime";
|
|
31
|
+
import { MotionItem as Je, MotionList as Ye, MotionPage as _ } from "@burdenoff/fe-libs/shared/motion";
|
|
32
32
|
import { AccessDenied as Xe, PermissionButton as Ze } from "@burdenoff/fe-libs/shared/components";
|
|
33
33
|
//#region src/pages/SessionsPage.tsx
|
|
34
|
-
var Qe =
|
|
34
|
+
var Qe = 3e5;
|
|
35
35
|
function $e(e, t) {
|
|
36
36
|
if (!e) return null;
|
|
37
37
|
try {
|
|
@@ -63,215 +63,218 @@ function et(e, t, n, r) {
|
|
|
63
63
|
return e;
|
|
64
64
|
}
|
|
65
65
|
function tt() {
|
|
66
|
-
let { t: tt } = je(), { onSessionStart: nt } = fe(),
|
|
66
|
+
let { t: tt } = je(), { onSessionStart: nt, workspaceId: rt } = fe(), it = pe(), { hasPermission: at, isLoading: ot, permissions: st } = Ke(), [ct, lt] = Ge(), v = u((e, t, n) => {
|
|
67
67
|
let r = tt(e, n), i = r === e ? t : r;
|
|
68
68
|
return n ? Object.entries(n).reduce((e, [t, n]) => e.replace(`{{${t}}}`, String(n)), i) : i;
|
|
69
|
-
}, [tt]),
|
|
69
|
+
}, [tt]), ut = f(() => [
|
|
70
70
|
{
|
|
71
71
|
value: "all",
|
|
72
|
-
label:
|
|
72
|
+
label: v("sessions.statusAll", "All Statuses")
|
|
73
73
|
},
|
|
74
74
|
{
|
|
75
75
|
value: "RUNNING",
|
|
76
|
-
label:
|
|
76
|
+
label: v("sessions.running", "Running")
|
|
77
77
|
},
|
|
78
78
|
{
|
|
79
79
|
value: "STOPPED",
|
|
80
|
-
label:
|
|
80
|
+
label: v("sessions.stopped", "Stopped")
|
|
81
81
|
},
|
|
82
82
|
{
|
|
83
83
|
value: "STARTING",
|
|
84
|
-
label:
|
|
84
|
+
label: v("sessions.starting", "Starting")
|
|
85
85
|
},
|
|
86
86
|
{
|
|
87
87
|
value: "ERROR",
|
|
88
|
-
label:
|
|
88
|
+
label: v("common.error", "Error")
|
|
89
89
|
}
|
|
90
|
-
], [
|
|
90
|
+
], [v]), dt = f(() => [
|
|
91
91
|
{
|
|
92
92
|
value: "all",
|
|
93
|
-
label:
|
|
93
|
+
label: v("sessions.typeAll", "All Types")
|
|
94
94
|
},
|
|
95
95
|
{
|
|
96
96
|
value: "TMUX",
|
|
97
|
-
label:
|
|
97
|
+
label: v("sessions.typeTmux", "Tmux")
|
|
98
98
|
},
|
|
99
99
|
{
|
|
100
100
|
value: "TERMINAL",
|
|
101
|
-
label:
|
|
101
|
+
label: v("sessions.typeTerminal", "Terminal")
|
|
102
102
|
},
|
|
103
103
|
{
|
|
104
104
|
value: "SCRIPT",
|
|
105
|
-
label:
|
|
105
|
+
label: v("sessions.typeScript", "Script")
|
|
106
106
|
},
|
|
107
107
|
{
|
|
108
108
|
value: "CUSTOM",
|
|
109
|
-
label:
|
|
109
|
+
label: v("sessions.typeCustom", "Custom")
|
|
110
110
|
}
|
|
111
|
-
], [
|
|
112
|
-
|
|
113
|
-
|
|
111
|
+
], [v]), ft = at(l.SESSION_LIST), pt = at(l.SESSION_CREATE), [y, mt] = m(""), [b, ht] = m("all"), [x, gt] = m("all"), [S, _t] = m("all"), [C, vt] = m("all"), [w, T] = m("terminal"), [yt, E] = m(!1), [bt, D] = m(!1), [xt, O] = m(null), [St, Ct] = m(!1), [k, A] = m(null), [j, M] = m(/* @__PURE__ */ new Set()), [wt, N] = m(!1), Tt = p(null), Et = p(null), Dt = p(null), Ot = p(null), [kt, At] = m(""), [jt, Mt] = m(""), [P, Nt] = m("TMUX"), [Pt, Ft] = m(!1), { terminalTabs: It, activeTerminalTabId: Lt, sessionsViewMode: Rt, setTerminalTabs: zt, setActiveTerminalTabId: Bt, setSessionsViewMode: Vt, activeSessionId: F } = me(), [I, L] = m([]), [R, z] = m(null), [Ht, B] = m(!1), [Ut, Wt] = m(null), [Gt, Kt] = m(!1), [V, qt] = m(!1), H = ct.get("view"), Jt = ct.get("session"), [Yt] = a({ refetchQueries: ["ListSessions"] }), [Xt, Zt] = m(!1), [U, Qt] = m(""), [$t, W] = m(null), [en, tn] = m(null), [nn, { data: rn, loading: an }] = t({ fetchPolicy: "network-only" }), [on] = e({ refetchQueries: ["ListSessions"] }), [sn] = ie({ refetchQueries: ["ListSessions"] }), [cn] = oe({ refetchQueries: ["ListSessions"] }), [ln] = te({ refetchQueries: ["ListSessions"] }), [G] = ae({ refetchQueries: ["ListSessions"] }), [un] = se({ refetchQueries: ["ListSessions"] }), [dn] = ne({ refetchQueries: ["ListSessions"] }), [fn] = le({ refetchQueries: ["ListSessions"] }), [pn] = ce({ refetchQueries: ["ListSessions"] }), [mn] = ee({ refetchQueries: ["ListSessions"] }), [hn] = r({ refetchQueries: ["ListSessions"] }), [gn] = n({ refetchQueries: ["ListSessions"] }), [_n] = i({ refetchQueries: ["ListSessions"] });
|
|
112
|
+
d(() => {
|
|
113
|
+
V || (H === "terminal" || H === "grid" || H === "list" ? T(H) : Rt && T(Rt), Jt ? z(Jt) : Lt && z(Lt), It.length > 0 && L(It.map((e) => ({
|
|
114
114
|
sessionId: e.sessionId,
|
|
115
115
|
name: e.name,
|
|
116
116
|
terminalUrl: null,
|
|
117
117
|
loading: !1,
|
|
118
118
|
error: null
|
|
119
|
-
}))),
|
|
119
|
+
}))), qt(!0));
|
|
120
120
|
}, [
|
|
121
|
-
Ft,
|
|
122
121
|
It,
|
|
123
122
|
Lt,
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
123
|
+
Rt,
|
|
124
|
+
Jt,
|
|
125
|
+
H,
|
|
126
|
+
V
|
|
127
127
|
]);
|
|
128
|
-
let
|
|
129
|
-
|
|
130
|
-
|
|
128
|
+
let vn = p(!1);
|
|
129
|
+
d(() => {
|
|
130
|
+
V && zt(I.map((e) => ({
|
|
131
131
|
sessionId: e.sessionId,
|
|
132
132
|
name: e.name
|
|
133
133
|
})));
|
|
134
134
|
}, [
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
Rt
|
|
138
|
-
]), u(() => {
|
|
139
|
-
B && zt(L);
|
|
140
|
-
}, [
|
|
141
|
-
L,
|
|
142
|
-
B,
|
|
135
|
+
I,
|
|
136
|
+
V,
|
|
143
137
|
zt
|
|
144
|
-
]),
|
|
145
|
-
|
|
138
|
+
]), d(() => {
|
|
139
|
+
V && Bt(R);
|
|
146
140
|
}, [
|
|
147
|
-
|
|
148
|
-
|
|
141
|
+
R,
|
|
142
|
+
V,
|
|
149
143
|
Bt
|
|
150
|
-
]),
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
144
|
+
]), d(() => {
|
|
145
|
+
V && Vt(w);
|
|
146
|
+
}, [
|
|
147
|
+
w,
|
|
148
|
+
V,
|
|
149
|
+
Vt
|
|
150
|
+
]), d(() => {
|
|
151
|
+
if (!V) return;
|
|
152
|
+
let e = new URLSearchParams(ct), t = !1, n = w === "terminal" ? null : w;
|
|
153
|
+
n ? e.get("view") !== n && (e.set("view", n), t = !0) : e.has("view") && (e.delete("view"), t = !0), R ? e.get("session") !== R && (e.set("session", R), t = !0) : e.has("session") && (e.delete("session"), t = !0), t && lt(e, { replace: !0 });
|
|
154
154
|
}, [
|
|
155
|
-
|
|
156
|
-
st,
|
|
155
|
+
R,
|
|
157
156
|
ct,
|
|
158
|
-
|
|
159
|
-
|
|
157
|
+
lt,
|
|
158
|
+
V,
|
|
159
|
+
w
|
|
160
160
|
]);
|
|
161
|
-
let
|
|
162
|
-
|
|
161
|
+
let K = p(null);
|
|
162
|
+
re({
|
|
163
|
+
skip: !rt,
|
|
164
|
+
variables: { workspaceId: rt || "" }
|
|
165
|
+
}), d(() => {
|
|
163
166
|
let e = setInterval(() => {
|
|
164
|
-
|
|
167
|
+
mn().catch(() => {});
|
|
165
168
|
}, Qe);
|
|
166
169
|
return () => clearInterval(e);
|
|
167
|
-
}, [
|
|
170
|
+
}, [mn]), d(() => {
|
|
168
171
|
let e = (e) => {
|
|
169
172
|
let t = e.target;
|
|
170
173
|
if (t.tagName === "INPUT" || t.tagName === "TEXTAREA" || t.tagName === "SELECT" || t.isContentEditable) return;
|
|
171
174
|
let n = e.metaKey || e.ctrlKey;
|
|
172
175
|
if (n && e.key === "t") {
|
|
173
|
-
e.preventDefault(),
|
|
176
|
+
e.preventDefault(), E(!0);
|
|
174
177
|
return;
|
|
175
178
|
}
|
|
176
|
-
if (n && e.key === "w" &&
|
|
179
|
+
if (n && e.key === "w" && R) {
|
|
177
180
|
e.preventDefault();
|
|
178
|
-
let t =
|
|
179
|
-
|
|
180
|
-
let e =
|
|
181
|
+
let t = R;
|
|
182
|
+
L((e) => e.filter((e) => e.sessionId !== t)), z(() => {
|
|
183
|
+
let e = I.filter((e) => e.sessionId !== t);
|
|
181
184
|
return e.length > 0 ? e[e.length - 1].sessionId : null;
|
|
182
185
|
});
|
|
183
186
|
return;
|
|
184
187
|
}
|
|
185
|
-
if (e.ctrlKey && e.key === "Tab" && !e.shiftKey &&
|
|
186
|
-
e.preventDefault(),
|
|
188
|
+
if (e.ctrlKey && e.key === "Tab" && !e.shiftKey && I.length > 1) {
|
|
189
|
+
e.preventDefault(), z(I[(I.findIndex((e) => e.sessionId === R) + 1) % I.length].sessionId);
|
|
187
190
|
return;
|
|
188
191
|
}
|
|
189
|
-
if (e.ctrlKey && e.key === "Tab" && e.shiftKey &&
|
|
190
|
-
e.preventDefault(),
|
|
192
|
+
if (e.ctrlKey && e.key === "Tab" && e.shiftKey && I.length > 1) {
|
|
193
|
+
e.preventDefault(), z(I[(I.findIndex((e) => e.sessionId === R) - 1 + I.length) % I.length].sessionId);
|
|
191
194
|
return;
|
|
192
195
|
}
|
|
193
196
|
};
|
|
194
197
|
return document.addEventListener("keydown", e), () => document.removeEventListener("keydown", e);
|
|
195
|
-
}, [
|
|
196
|
-
let { data:
|
|
198
|
+
}, [R, I]);
|
|
199
|
+
let { data: yn, previousData: bn, loading: q, error: xn, refetch: J } = o({
|
|
197
200
|
variables: {
|
|
198
201
|
filter: {
|
|
199
|
-
status:
|
|
200
|
-
type:
|
|
201
|
-
vibeId:
|
|
202
|
-
agentId:
|
|
202
|
+
status: b === "all" ? void 0 : b,
|
|
203
|
+
type: x === "all" ? void 0 : x,
|
|
204
|
+
vibeId: S !== "all" && S !== "none" ? S : void 0,
|
|
205
|
+
agentId: C === "all" ? void 0 : C
|
|
203
206
|
},
|
|
204
207
|
pagination: { limit: 50 }
|
|
205
208
|
},
|
|
206
209
|
fetchPolicy: "cache-first"
|
|
207
|
-
}),
|
|
208
|
-
let e = /* @__PURE__ */ new Map(), t =
|
|
210
|
+
}), Sn = yn ?? bn, { agents: Cn, vibes: Y } = he(), wn = de({ fetchPolicy: "cache-and-network" }), { data: Tn } = ue(), En = f(() => {
|
|
211
|
+
let e = /* @__PURE__ */ new Map(), t = Tn?.vibecontrolsAgentHealthProbeStream ?? wn.data?.vibecontrolsAgentHealthProbes ?? [];
|
|
209
212
|
for (let n of t) e.set(n.agentId, {
|
|
210
213
|
healthy: n.healthy,
|
|
211
214
|
error: n.errorMessage ?? null
|
|
212
215
|
});
|
|
213
216
|
return e;
|
|
214
|
-
}, [
|
|
217
|
+
}, [wn.data, Tn]), Dn = f(() => [
|
|
215
218
|
{
|
|
216
219
|
value: "all",
|
|
217
|
-
label:
|
|
220
|
+
label: v("sessions.filterVibeAll", "All Vibes")
|
|
218
221
|
},
|
|
219
222
|
{
|
|
220
223
|
value: "none",
|
|
221
|
-
label:
|
|
224
|
+
label: v("sessions.filterVibeNone", "No Vibe")
|
|
222
225
|
},
|
|
223
226
|
...Y.map((e) => ({
|
|
224
227
|
value: e.id,
|
|
225
228
|
label: e.name
|
|
226
229
|
}))
|
|
227
|
-
], [Y,
|
|
230
|
+
], [Y, v]), On = f(() => [{
|
|
228
231
|
value: "all",
|
|
229
|
-
label:
|
|
230
|
-
}, ...
|
|
232
|
+
label: v("sessions.filterAgentAll", "All Agents")
|
|
233
|
+
}, ...Cn.map((e) => ({
|
|
231
234
|
value: e.id,
|
|
232
|
-
label: `${e.name} ${e.isActive ? "" : `(${
|
|
233
|
-
}))], [
|
|
235
|
+
label: `${e.name} ${e.isActive ? "" : `(${v("sessions.offline", "Offline")})`}`
|
|
236
|
+
}))], [Cn, v]), kn = f(() => [{
|
|
234
237
|
value: "",
|
|
235
|
-
label:
|
|
238
|
+
label: v("sessions.noVibe", "No vibe")
|
|
236
239
|
}, ...Y.map((e) => ({
|
|
237
240
|
value: e.id,
|
|
238
241
|
label: e.name
|
|
239
|
-
}))], [Y,
|
|
242
|
+
}))], [Y, v]), An = f(() => [{
|
|
240
243
|
value: "",
|
|
241
|
-
label:
|
|
242
|
-
}, ...
|
|
244
|
+
label: v("sessions.selectAgent", "Select an agent")
|
|
245
|
+
}, ...Cn.map((e) => ({
|
|
243
246
|
value: e.id,
|
|
244
|
-
label: `${e.name} ${e.isActive ? `(${
|
|
245
|
-
}))], [
|
|
247
|
+
label: `${e.name} ${e.isActive ? `(${v("sessions.active", "Active")})` : `(${v("sessions.offline", "Offline")})`}`
|
|
248
|
+
}))], [Cn, v]), jn = f(() => [
|
|
246
249
|
{
|
|
247
250
|
value: "TMUX",
|
|
248
|
-
label:
|
|
251
|
+
label: v("sessions.typeTmuxLower", "tmux")
|
|
249
252
|
},
|
|
250
253
|
{
|
|
251
254
|
value: "WEZTERM",
|
|
252
|
-
label:
|
|
255
|
+
label: v("sessions.typeWezTerm", "WezTerm")
|
|
253
256
|
},
|
|
254
257
|
{
|
|
255
258
|
value: "ZELLIJ",
|
|
256
|
-
label:
|
|
259
|
+
label: v("sessions.typeZellij", "Zellij")
|
|
257
260
|
},
|
|
258
261
|
{
|
|
259
262
|
value: "TERMINAL",
|
|
260
|
-
label:
|
|
263
|
+
label: v("sessions.typeTerminal", "Terminal")
|
|
261
264
|
},
|
|
262
265
|
{
|
|
263
266
|
value: "SSH",
|
|
264
|
-
label:
|
|
267
|
+
label: v("sessions.typeSsh", "SSH")
|
|
265
268
|
},
|
|
266
269
|
{
|
|
267
270
|
value: "SCRIPT",
|
|
268
|
-
label:
|
|
271
|
+
label: v("sessions.typeScript", "Script")
|
|
269
272
|
},
|
|
270
273
|
{
|
|
271
274
|
value: "CUSTOM",
|
|
272
|
-
label:
|
|
275
|
+
label: v("sessions.typeCustom", "Custom")
|
|
273
276
|
}
|
|
274
|
-
], [
|
|
277
|
+
], [v]), X = f(() => (Sn?.sessions?.items ?? []).map((e) => {
|
|
275
278
|
let t = $e(e.ttydUrl || null, e.agent?.tunnelUrl || null);
|
|
276
279
|
return {
|
|
277
280
|
id: e.id,
|
|
@@ -305,20 +308,20 @@ function tt() {
|
|
|
305
308
|
isActive: e.agent.isActive
|
|
306
309
|
} : void 0
|
|
307
310
|
};
|
|
308
|
-
}), [
|
|
309
|
-
|
|
310
|
-
|
|
311
|
+
}), [Sn?.sessions?.items]);
|
|
312
|
+
d(() => {
|
|
313
|
+
vn.current || X.length === 0 || I.length === 0 || (vn.current = !0, Promise.allSettled(I.map(async (e) => {
|
|
311
314
|
let t = X.find((t) => t.id === e.sessionId);
|
|
312
315
|
if (t) try {
|
|
313
|
-
let n = await
|
|
314
|
-
|
|
316
|
+
let n = await G({ variables: { id: e.sessionId } }), r = t.agent?.tunnelUrl ?? null, i = $e(n.data?.startSessionTerminal?.ttydUrl ?? null, r);
|
|
317
|
+
L((t) => t.map((t) => t.sessionId === e.sessionId ? {
|
|
315
318
|
...t,
|
|
316
319
|
terminalUrl: i,
|
|
317
320
|
loading: !1,
|
|
318
321
|
error: null
|
|
319
322
|
} : t));
|
|
320
323
|
} catch (n) {
|
|
321
|
-
console.warn("[sessions] tab restore startSessionTerminal failed", n),
|
|
324
|
+
console.warn("[sessions] tab restore startSessionTerminal failed", n), L((n) => n.map((n) => n.sessionId === e.sessionId && t.ttydUrl ? {
|
|
322
325
|
...n,
|
|
323
326
|
terminalUrl: t.ttydUrl,
|
|
324
327
|
loading: !1
|
|
@@ -327,21 +330,21 @@ function tt() {
|
|
|
327
330
|
})));
|
|
328
331
|
}, [
|
|
329
332
|
X,
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
]),
|
|
333
|
-
if (!
|
|
334
|
-
|
|
333
|
+
I,
|
|
334
|
+
G
|
|
335
|
+
]), d(() => {
|
|
336
|
+
if (!V || !F) {
|
|
337
|
+
K.current = F;
|
|
335
338
|
return;
|
|
336
339
|
}
|
|
337
|
-
if (
|
|
338
|
-
|
|
340
|
+
if (K.current === null && F) {
|
|
341
|
+
K.current = F;
|
|
339
342
|
return;
|
|
340
343
|
}
|
|
341
|
-
if (
|
|
342
|
-
|
|
343
|
-
let e = X.find((e) => e.id ===
|
|
344
|
-
if (e) if (
|
|
344
|
+
if (K.current === F) return;
|
|
345
|
+
K.current = F;
|
|
346
|
+
let e = X.find((e) => e.id === F);
|
|
347
|
+
if (e) if (I.find((e) => e.sessionId === F)) z(F), B(!1);
|
|
345
348
|
else {
|
|
346
349
|
let t = e.ttydUrl || null, n = {
|
|
347
350
|
sessionId: e.id,
|
|
@@ -350,17 +353,17 @@ function tt() {
|
|
|
350
353
|
loading: !t,
|
|
351
354
|
error: null
|
|
352
355
|
};
|
|
353
|
-
|
|
356
|
+
L((e) => [...e, n]), z(F), B(!1), t || G({ variables: { id: e.id } }).then((t) => {
|
|
354
357
|
let n = t.data?.startSessionTerminal?.ttydUrl || null;
|
|
355
|
-
|
|
358
|
+
L((t) => t.map((t) => t.sessionId === e.id ? {
|
|
356
359
|
...t,
|
|
357
360
|
terminalUrl: n,
|
|
358
361
|
loading: !1,
|
|
359
|
-
error: n ? null :
|
|
362
|
+
error: n ? null : v("sessions.terminalStartedNoUrl", "Terminal started but no URL was returned. Try restarting.")
|
|
360
363
|
} : t));
|
|
361
364
|
}).catch((t) => {
|
|
362
|
-
let n = t instanceof Error ? t.message :
|
|
363
|
-
|
|
365
|
+
let n = t instanceof Error ? t.message : v("sessions.failedStartTerminal", "Failed to start terminal");
|
|
366
|
+
L((t) => t.map((t) => t.sessionId === e.id ? {
|
|
364
367
|
...t,
|
|
365
368
|
loading: !1,
|
|
366
369
|
error: n
|
|
@@ -368,186 +371,186 @@ function tt() {
|
|
|
368
371
|
});
|
|
369
372
|
}
|
|
370
373
|
}, [
|
|
371
|
-
P,
|
|
372
|
-
X,
|
|
373
374
|
F,
|
|
374
|
-
|
|
375
|
-
|
|
375
|
+
X,
|
|
376
|
+
I,
|
|
377
|
+
V,
|
|
378
|
+
G
|
|
376
379
|
]);
|
|
377
|
-
let Z =
|
|
378
|
-
if (
|
|
379
|
-
let t =
|
|
380
|
+
let Z = f(() => X.filter((e) => {
|
|
381
|
+
if (y) {
|
|
382
|
+
let t = y.toLowerCase();
|
|
380
383
|
if (!(e.name.toLowerCase().includes(t) || e.command?.toLowerCase().includes(t) || e.workingDirectory?.toLowerCase().includes(t))) return !1;
|
|
381
384
|
}
|
|
382
|
-
return !(
|
|
385
|
+
return !(S === "none" && e.vibeId);
|
|
383
386
|
}), [
|
|
384
387
|
X,
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
]),
|
|
388
|
-
|
|
388
|
+
y,
|
|
389
|
+
S
|
|
390
|
+
]), Mn = u((e) => {
|
|
391
|
+
M((t) => {
|
|
389
392
|
let n = new Set(t);
|
|
390
393
|
return n.has(e) ? n.delete(e) : n.add(e), n;
|
|
391
394
|
});
|
|
392
|
-
}, []),
|
|
393
|
-
|
|
394
|
-
}, [Z]),
|
|
395
|
-
|
|
396
|
-
}, []),
|
|
397
|
-
if (
|
|
398
|
-
|
|
395
|
+
}, []), Nn = u(() => {
|
|
396
|
+
M(new Set(Z.map((e) => e.id)));
|
|
397
|
+
}, [Z]), Pn = u(() => {
|
|
398
|
+
M(/* @__PURE__ */ new Set());
|
|
399
|
+
}, []), Fn = Z.length > 0 && j.size === Z.length, In = j.size > 0, Ln = u(async () => {
|
|
400
|
+
if (j.size !== 0) {
|
|
401
|
+
N(!0);
|
|
399
402
|
try {
|
|
400
|
-
let e = (await
|
|
401
|
-
|
|
403
|
+
let e = (await hn({ variables: { ids: Array.from(j) } })).data?.bulkStopSessions;
|
|
404
|
+
A(`${v("sessions.stopped", "Stopped")} ${e?.succeeded ?? 0} ${v("nav.sessions", "sessions")}${e?.failed ? `, ${e.failed} ${v("sessions.failed", "failed")}` : ""}`), M(/* @__PURE__ */ new Set()), setTimeout(() => A(null), 3e3);
|
|
402
405
|
} catch (e) {
|
|
403
|
-
|
|
406
|
+
A(`${v("sessions.errorPrefix", "Error")}: ${e instanceof Error ? e.message : v("sessions.failedStop", "Failed to stop sessions")}`), setTimeout(() => A(null), 5e3);
|
|
404
407
|
} finally {
|
|
405
|
-
|
|
408
|
+
N(!1);
|
|
406
409
|
}
|
|
407
410
|
}
|
|
408
411
|
}, [
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
]),
|
|
413
|
-
if (
|
|
414
|
-
|
|
412
|
+
j,
|
|
413
|
+
hn,
|
|
414
|
+
v
|
|
415
|
+
]), Rn = u(async () => {
|
|
416
|
+
if (j.size !== 0) {
|
|
417
|
+
N(!0);
|
|
415
418
|
try {
|
|
416
|
-
let e = (await
|
|
417
|
-
|
|
419
|
+
let e = (await gn({ variables: { ids: Array.from(j) } })).data?.bulkRestartSessions;
|
|
420
|
+
A(`${v("sessions.restarted", "Restarted")} ${e?.succeeded ?? 0} ${v("nav.sessions", "sessions")}${e?.failed ? `, ${e.failed} ${v("sessions.failed", "failed")}` : ""}`), M(/* @__PURE__ */ new Set()), setTimeout(() => A(null), 3e3);
|
|
418
421
|
} catch (e) {
|
|
419
|
-
|
|
422
|
+
A(`${v("sessions.errorPrefix", "Error")}: ${e instanceof Error ? e.message : v("sessions.failedRestart", "Failed to restart sessions")}`), setTimeout(() => A(null), 5e3);
|
|
420
423
|
} finally {
|
|
421
|
-
|
|
424
|
+
N(!1);
|
|
422
425
|
}
|
|
423
426
|
}
|
|
424
427
|
}, [
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
]),
|
|
429
|
-
if (
|
|
430
|
-
|
|
428
|
+
j,
|
|
429
|
+
gn,
|
|
430
|
+
v
|
|
431
|
+
]), zn = u(async () => {
|
|
432
|
+
if (j.size !== 0 && confirm(`${v("sessions.confirmRemovePrefix", "Are you sure you want to remove")} ${j.size} ${v("nav.sessions", "session(s)")}? ${v("sessions.confirmRemoveSuffix", "This cannot be undone.")}`)) {
|
|
433
|
+
N(!0);
|
|
431
434
|
try {
|
|
432
|
-
let e = (await
|
|
433
|
-
|
|
435
|
+
let e = (await _n({ variables: { ids: Array.from(j) } })).data?.bulkTerminateSessions;
|
|
436
|
+
A(`${v("sessions.removed", "Removed")} ${e?.succeeded ?? 0} ${v("nav.sessions", "sessions")}${e?.failed ? `, ${e.failed} ${v("sessions.failed", "failed")}` : ""}`), M(/* @__PURE__ */ new Set()), setTimeout(() => A(null), 3e3);
|
|
434
437
|
} catch (e) {
|
|
435
|
-
|
|
438
|
+
A(`${v("sessions.errorPrefix", "Error")}: ${e instanceof Error ? e.message : v("sessions.failedRemove", "Failed to remove sessions")}`), setTimeout(() => A(null), 5e3);
|
|
436
439
|
} finally {
|
|
437
|
-
|
|
440
|
+
N(!1);
|
|
438
441
|
}
|
|
439
442
|
}
|
|
440
443
|
}, [
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
]),
|
|
445
|
-
|
|
446
|
-
},
|
|
447
|
-
|
|
448
|
-
},
|
|
449
|
-
let e =
|
|
444
|
+
j,
|
|
445
|
+
_n,
|
|
446
|
+
v
|
|
447
|
+
]), Bn = (e) => {
|
|
448
|
+
it(`/sessions/${e.id}`);
|
|
449
|
+
}, Vn = () => {
|
|
450
|
+
O(null), E(!0);
|
|
451
|
+
}, Hn = async () => {
|
|
452
|
+
let e = Tt.current?.value?.trim(), t = kt, n = jt, r = P, i = Et.current?.value?.trim(), ee = Dt.current?.checked ?? !1;
|
|
450
453
|
if (!e) {
|
|
451
|
-
|
|
454
|
+
O(v("sessions.nameRequired", "Name is required"));
|
|
452
455
|
return;
|
|
453
456
|
}
|
|
454
|
-
let
|
|
455
|
-
if (!
|
|
456
|
-
|
|
457
|
+
let a = Y.find((e) => e.id === t)?.agentId || n;
|
|
458
|
+
if (!a) {
|
|
459
|
+
O(v("sessions.agentRequired", "Please select an agent for this session."));
|
|
457
460
|
return;
|
|
458
461
|
}
|
|
459
|
-
let
|
|
460
|
-
if (
|
|
461
|
-
|
|
462
|
+
let o = En.get(a);
|
|
463
|
+
if (o && !o.healthy) {
|
|
464
|
+
O(v("sessions.agentNotHealthy", "The selected agent isn’t fully reachable right now. Please wait for the agent badge to turn green and retry.") + (o.error ? ` (${o.error})` : ""));
|
|
462
465
|
return;
|
|
463
466
|
}
|
|
464
|
-
|
|
467
|
+
Ct(!0), O(null);
|
|
465
468
|
try {
|
|
466
|
-
let n =
|
|
469
|
+
let n = Ot.current?.value?.trim() || void 0, o = await Yt({ variables: { input: {
|
|
467
470
|
name: e,
|
|
468
471
|
type: r || "TMUX",
|
|
469
472
|
command: i || void 0,
|
|
470
473
|
vibeId: t || void 0,
|
|
471
|
-
agentId:
|
|
474
|
+
agentId: a,
|
|
472
475
|
autoStart: ee,
|
|
473
476
|
externalSessionName: n
|
|
474
477
|
} } });
|
|
475
|
-
|
|
476
|
-
id:
|
|
477
|
-
workspaceId:
|
|
478
|
-
vibeId:
|
|
479
|
-
agentId:
|
|
480
|
-
name:
|
|
481
|
-
type:
|
|
482
|
-
status:
|
|
483
|
-
command:
|
|
484
|
-
workingDirectory:
|
|
485
|
-
environmentVariables:
|
|
486
|
-
autoStart:
|
|
487
|
-
providerSessionName:
|
|
488
|
-
providerWindowName:
|
|
489
|
-
pid:
|
|
490
|
-
exitCode:
|
|
491
|
-
lastOutput:
|
|
492
|
-
ttydUrl:
|
|
493
|
-
metadata:
|
|
494
|
-
createdAt:
|
|
495
|
-
updatedAt:
|
|
478
|
+
E(!1), A(v("sessions.createdSuccess", "Session created successfully")), setTimeout(() => A(null), 3e3), w === "terminal" && o.data?.createSession && Q({
|
|
479
|
+
id: o.data.createSession.id,
|
|
480
|
+
workspaceId: o.data.createSession.workspaceId,
|
|
481
|
+
vibeId: o.data.createSession.vibeId || null,
|
|
482
|
+
agentId: o.data.createSession.agentId || null,
|
|
483
|
+
name: o.data.createSession.name,
|
|
484
|
+
type: o.data.createSession.type,
|
|
485
|
+
status: o.data.createSession.status,
|
|
486
|
+
command: o.data.createSession.command || null,
|
|
487
|
+
workingDirectory: o.data.createSession.workingDirectory || null,
|
|
488
|
+
environmentVariables: o.data.createSession.environmentVariables || {},
|
|
489
|
+
autoStart: o.data.createSession.autoStart,
|
|
490
|
+
providerSessionName: o.data.createSession.providerSessionName || void 0,
|
|
491
|
+
providerWindowName: o.data.createSession.providerWindowId || void 0,
|
|
492
|
+
pid: o.data.createSession.pid || null,
|
|
493
|
+
exitCode: o.data.createSession.exitCode || null,
|
|
494
|
+
lastOutput: o.data.createSession.lastOutput || null,
|
|
495
|
+
ttydUrl: o.data.createSession.ttydUrl || null,
|
|
496
|
+
metadata: o.data.createSession.metadata || {},
|
|
497
|
+
createdAt: o.data.createSession.createdAt,
|
|
498
|
+
updatedAt: o.data.createSession.updatedAt
|
|
496
499
|
});
|
|
497
500
|
} catch (e) {
|
|
498
|
-
if (
|
|
499
|
-
|
|
501
|
+
if (s(e)) {
|
|
502
|
+
E(!1), D(!0);
|
|
500
503
|
return;
|
|
501
504
|
}
|
|
502
|
-
|
|
505
|
+
O(e instanceof Error ? e.message : v("sessions.failedCreate", "Failed to create session"));
|
|
503
506
|
} finally {
|
|
504
|
-
|
|
507
|
+
Ct(!1);
|
|
505
508
|
}
|
|
506
|
-
},
|
|
509
|
+
}, Un = async (e) => {
|
|
507
510
|
try {
|
|
508
|
-
await
|
|
511
|
+
await sn({ variables: { id: e.id } }), nt?.({
|
|
509
512
|
id: e.id,
|
|
510
513
|
name: e.name,
|
|
511
514
|
type: e.type,
|
|
512
515
|
status: "RUNNING"
|
|
513
516
|
});
|
|
514
517
|
} catch (e) {
|
|
515
|
-
if (
|
|
516
|
-
|
|
518
|
+
if (s(e)) {
|
|
519
|
+
D(!0);
|
|
517
520
|
return;
|
|
518
521
|
}
|
|
519
522
|
console.error("Failed to start session:", e);
|
|
520
523
|
}
|
|
521
|
-
},
|
|
524
|
+
}, Wn = async (e) => {
|
|
522
525
|
try {
|
|
523
|
-
await
|
|
526
|
+
await cn({ variables: { id: e.id } });
|
|
524
527
|
} catch (e) {
|
|
525
528
|
console.error("Failed to stop session:", e);
|
|
526
529
|
}
|
|
527
|
-
},
|
|
530
|
+
}, Gn = async (e) => {
|
|
528
531
|
try {
|
|
529
|
-
await
|
|
532
|
+
await ln({ variables: { id: e.id } });
|
|
530
533
|
} catch (e) {
|
|
531
|
-
if (
|
|
532
|
-
|
|
534
|
+
if (s(e)) {
|
|
535
|
+
D(!0);
|
|
533
536
|
return;
|
|
534
537
|
}
|
|
535
538
|
console.error("Failed to restart session:", e);
|
|
536
539
|
}
|
|
537
|
-
},
|
|
540
|
+
}, Kn = async (e) => {
|
|
538
541
|
try {
|
|
539
|
-
await
|
|
542
|
+
await pn({ variables: { id: e.id } });
|
|
540
543
|
} catch (e) {
|
|
541
544
|
console.error("Failed to terminate session:", e);
|
|
542
545
|
}
|
|
543
|
-
},
|
|
544
|
-
|
|
545
|
-
}, []), Q =
|
|
546
|
-
if (
|
|
547
|
-
|
|
546
|
+
}, qn = u((e) => e.ttydUrl || null, []), Jn = u((e) => {
|
|
547
|
+
Wt(e);
|
|
548
|
+
}, []), Q = u(async (e) => {
|
|
549
|
+
if (I.find((t) => t.sessionId === e.id)?.terminalUrl) {
|
|
550
|
+
z(e.id), B(!1);
|
|
548
551
|
return;
|
|
549
552
|
}
|
|
550
|
-
let t =
|
|
553
|
+
let t = qn(e);
|
|
551
554
|
if (t) {
|
|
552
555
|
let n = {
|
|
553
556
|
sessionId: e.id,
|
|
@@ -556,7 +559,7 @@ function tt() {
|
|
|
556
559
|
loading: !1,
|
|
557
560
|
error: null
|
|
558
561
|
};
|
|
559
|
-
|
|
562
|
+
L((t) => [...t.filter((t) => t.sessionId !== e.id), n]), z(e.id), B(!1);
|
|
560
563
|
return;
|
|
561
564
|
}
|
|
562
565
|
let n = {
|
|
@@ -566,560 +569,560 @@ function tt() {
|
|
|
566
569
|
loading: !0,
|
|
567
570
|
error: null
|
|
568
571
|
};
|
|
569
|
-
|
|
572
|
+
L((t) => [...t.filter((t) => t.sessionId !== e.id), n]), z(e.id), B(!1);
|
|
570
573
|
try {
|
|
571
|
-
let t = await
|
|
572
|
-
if (t.error &&
|
|
573
|
-
let t =
|
|
574
|
-
|
|
574
|
+
let t = await G({ variables: { id: e.id } });
|
|
575
|
+
if (t.error && s(t.error)) {
|
|
576
|
+
let t = I.filter((t) => t.sessionId !== e.id);
|
|
577
|
+
L(t), R === e.id && z(t.length > 0 ? t[t.length - 1].sessionId : null), D(!0);
|
|
575
578
|
return;
|
|
576
579
|
}
|
|
577
580
|
let n = $e(t.data?.startSessionTerminal?.ttydUrl || null, X.find((t) => t.id === e.id)?.agent?.tunnelUrl ?? null);
|
|
578
|
-
|
|
581
|
+
L((t) => t.map((t) => t.sessionId === e.id ? {
|
|
579
582
|
...t,
|
|
580
583
|
terminalUrl: n,
|
|
581
584
|
loading: !1,
|
|
582
|
-
error: n ? null :
|
|
585
|
+
error: n ? null : v("sessions.terminalStartedNoTunnelUrl", "Terminal started but no tunnel URL was returned. Try restarting.")
|
|
583
586
|
} : t));
|
|
584
587
|
} catch (t) {
|
|
585
|
-
if (
|
|
586
|
-
let t =
|
|
587
|
-
|
|
588
|
+
if (s(t)) {
|
|
589
|
+
let t = I.filter((t) => t.sessionId !== e.id);
|
|
590
|
+
L(t), R === e.id && z(t.length > 0 ? t[t.length - 1].sessionId : null), D(!0);
|
|
588
591
|
return;
|
|
589
592
|
}
|
|
590
|
-
let n = t instanceof Error ? t.message :
|
|
591
|
-
|
|
593
|
+
let n = t instanceof Error ? t.message : v("sessions.failedStartTerminal", "Failed to start terminal");
|
|
594
|
+
L((t) => t.map((t) => t.sessionId === e.id ? {
|
|
592
595
|
...t,
|
|
593
596
|
loading: !1,
|
|
594
597
|
error: n
|
|
595
598
|
} : t));
|
|
596
599
|
}
|
|
597
600
|
}, [
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
601
|
+
R,
|
|
602
|
+
I,
|
|
603
|
+
qn,
|
|
604
|
+
G
|
|
602
605
|
]);
|
|
603
|
-
|
|
604
|
-
if (!
|
|
605
|
-
let e = X.find((e) => e.id ===
|
|
606
|
+
d(() => {
|
|
607
|
+
if (!V || !R || I.some((e) => e.sessionId === R)) return;
|
|
608
|
+
let e = X.find((e) => e.id === R);
|
|
606
609
|
e && Q(e);
|
|
607
610
|
}, [
|
|
608
|
-
|
|
611
|
+
R,
|
|
609
612
|
Q,
|
|
610
613
|
X,
|
|
611
|
-
|
|
612
|
-
|
|
614
|
+
I,
|
|
615
|
+
V
|
|
613
616
|
]);
|
|
614
|
-
let
|
|
615
|
-
|
|
616
|
-
let t =
|
|
617
|
+
let Yn = u((e) => {
|
|
618
|
+
L((t) => t.filter((t) => t.sessionId !== e)), R === e && z(() => {
|
|
619
|
+
let t = I.filter((t) => t.sessionId !== e);
|
|
617
620
|
return t.length > 0 ? t[t.length - 1].sessionId : null;
|
|
618
621
|
});
|
|
619
|
-
}, [
|
|
620
|
-
let t =
|
|
622
|
+
}, [R, I]), Xn = u((e) => {
|
|
623
|
+
let t = I.find((t) => t.sessionId === e);
|
|
621
624
|
t?.terminalUrl && window.open(t.terminalUrl, "_blank");
|
|
622
|
-
}, [
|
|
625
|
+
}, [I]), Zn = u(async (e, t) => {
|
|
623
626
|
try {
|
|
624
|
-
await
|
|
627
|
+
await fn({ variables: {
|
|
625
628
|
id: e,
|
|
626
629
|
input: { name: t }
|
|
627
|
-
} }),
|
|
630
|
+
} }), L((n) => n.map((n) => n.sessionId === e ? {
|
|
628
631
|
...n,
|
|
629
632
|
name: t
|
|
630
633
|
} : n));
|
|
631
634
|
} catch (e) {
|
|
632
635
|
console.error("Failed to rename session:", e);
|
|
633
636
|
}
|
|
634
|
-
}, [
|
|
637
|
+
}, [fn]), Qn = u(async (e) => {
|
|
635
638
|
try {
|
|
636
|
-
await
|
|
639
|
+
await un({ variables: { id: e } }), L((t) => t.map((t) => t.sessionId === e ? {
|
|
637
640
|
...t,
|
|
638
641
|
terminalUrl: null,
|
|
639
|
-
error:
|
|
642
|
+
error: v("sessions.terminalStopped", "Terminal stopped")
|
|
640
643
|
} : t));
|
|
641
644
|
} catch (e) {
|
|
642
645
|
console.error("Failed to stop terminal:", e);
|
|
643
646
|
}
|
|
644
|
-
}, [
|
|
645
|
-
let t =
|
|
647
|
+
}, [un]), $n = u(async (e) => {
|
|
648
|
+
let t = I.find((t) => t.sessionId === e) || null;
|
|
646
649
|
try {
|
|
647
|
-
|
|
650
|
+
L((t) => t.map((t) => t.sessionId === e ? {
|
|
648
651
|
...t,
|
|
649
652
|
loading: !0,
|
|
650
653
|
error: null,
|
|
651
654
|
terminalUrl: null
|
|
652
655
|
} : t));
|
|
653
|
-
let n = await
|
|
654
|
-
if (n.error &&
|
|
655
|
-
|
|
656
|
+
let n = await dn({ variables: { id: e } });
|
|
657
|
+
if (n.error && s(n.error)) {
|
|
658
|
+
L((n) => n.map((n) => n.sessionId === e ? {
|
|
656
659
|
...n,
|
|
657
660
|
loading: !1,
|
|
658
661
|
error: null,
|
|
659
662
|
terminalUrl: t?.terminalUrl ?? n.terminalUrl
|
|
660
|
-
} : n)),
|
|
663
|
+
} : n)), D(!0);
|
|
661
664
|
return;
|
|
662
665
|
}
|
|
663
666
|
let r = n.data?.restartSessionTerminal?.ttydUrl || null;
|
|
664
|
-
|
|
667
|
+
L((t) => t.map((t) => t.sessionId === e ? {
|
|
665
668
|
...t,
|
|
666
669
|
terminalUrl: r,
|
|
667
670
|
loading: !1,
|
|
668
|
-
error: r ? null :
|
|
671
|
+
error: r ? null : v("sessions.terminalRestartedNoUrl", "Terminal restarted but no URL returned.")
|
|
669
672
|
} : t));
|
|
670
673
|
} catch (n) {
|
|
671
|
-
if (
|
|
672
|
-
|
|
674
|
+
if (s(n)) {
|
|
675
|
+
L((n) => n.map((n) => n.sessionId === e ? {
|
|
673
676
|
...n,
|
|
674
677
|
loading: !1,
|
|
675
678
|
error: null,
|
|
676
679
|
terminalUrl: t?.terminalUrl ?? n.terminalUrl
|
|
677
|
-
} : n)),
|
|
680
|
+
} : n)), D(!0);
|
|
678
681
|
return;
|
|
679
682
|
}
|
|
680
|
-
let r = n instanceof Error ? n.message :
|
|
681
|
-
|
|
683
|
+
let r = n instanceof Error ? n.message : v("sessions.failedRestartTerminal", "Failed to restart terminal");
|
|
684
|
+
L((t) => t.map((t) => t.sessionId === e ? {
|
|
682
685
|
...t,
|
|
683
686
|
loading: !1,
|
|
684
687
|
error: r
|
|
685
688
|
} : t));
|
|
686
689
|
}
|
|
687
|
-
}, [
|
|
688
|
-
|
|
690
|
+
}, [dn, I]), er = u(() => {
|
|
691
|
+
Kt((e) => !e);
|
|
689
692
|
}, []), $ = {
|
|
690
693
|
total: X.length,
|
|
691
694
|
running: X.filter((e) => e.status === "RUNNING").length,
|
|
692
695
|
stopped: X.filter((e) => e.status === "STOPPED").length
|
|
693
696
|
};
|
|
694
|
-
if (!
|
|
697
|
+
if (!ot && st && st.permissionStrings?.length > 0 && !ft) return /* @__PURE__ */ h(_, {
|
|
695
698
|
className: "space-y-6 p-4 sm:p-6 bg-bg-surface min-h-screen",
|
|
696
|
-
children: /* @__PURE__ */
|
|
697
|
-
title:
|
|
698
|
-
description:
|
|
699
|
-
details:
|
|
699
|
+
children: /* @__PURE__ */ h(Xe, {
|
|
700
|
+
title: v("common.accessDeniedTitle", "Access Denied"),
|
|
701
|
+
description: v("sessions.accessDeniedDescription", "You don't have permission to view sessions."),
|
|
702
|
+
details: v("sessions.requiredPermission", "Required permission: session:list")
|
|
700
703
|
})
|
|
701
704
|
});
|
|
702
|
-
if (
|
|
705
|
+
if (q && !bn && X.length === 0) return /* @__PURE__ */ h(_, {
|
|
703
706
|
className: "space-y-6 p-4 sm:p-6 bg-bg-surface min-h-screen",
|
|
704
|
-
children: /* @__PURE__ */
|
|
707
|
+
children: /* @__PURE__ */ h(_e, { message: v("sessions.loading", "Loading sessions...") })
|
|
705
708
|
});
|
|
706
|
-
if (
|
|
709
|
+
if (xn && X.length === 0) return /* @__PURE__ */ h(_, {
|
|
707
710
|
className: "space-y-6 p-4 sm:p-6 bg-bg-surface min-h-screen",
|
|
708
|
-
children: /* @__PURE__ */
|
|
709
|
-
title:
|
|
710
|
-
message:
|
|
711
|
-
onRetry: () =>
|
|
711
|
+
children: /* @__PURE__ */ h(ve, {
|
|
712
|
+
title: v("sessions.failedLoad", "Failed to load sessions"),
|
|
713
|
+
message: xn.message,
|
|
714
|
+
onRetry: () => J()
|
|
712
715
|
})
|
|
713
716
|
});
|
|
714
|
-
let
|
|
717
|
+
let tr = () => !In || w === "terminal" ? null : /* @__PURE__ */ g("div", {
|
|
715
718
|
className: "flex flex-col sm:flex-row items-start sm:items-center gap-3 px-4 py-2 bg-action-primary-bg/10 border border-action-primary-bg/20 rounded-lg",
|
|
716
|
-
children: [/* @__PURE__ */
|
|
719
|
+
children: [/* @__PURE__ */ h("span", {
|
|
717
720
|
className: "text-sm font-medium text-text-primary",
|
|
718
|
-
children:
|
|
719
|
-
}), /* @__PURE__ */
|
|
721
|
+
children: v(j.size === 1 ? "sessions.selectionCountSingle" : "sessions.selectionCountPlural", j.size === 1 ? "{{count}} session selected" : "{{count}} sessions selected", { count: j.size })
|
|
722
|
+
}), /* @__PURE__ */ g("div", {
|
|
720
723
|
className: "flex items-center gap-1.5 sm:ml-auto flex-wrap",
|
|
721
724
|
children: [
|
|
722
|
-
/* @__PURE__ */
|
|
723
|
-
onClick:
|
|
724
|
-
disabled:
|
|
725
|
+
/* @__PURE__ */ g("button", {
|
|
726
|
+
onClick: Ln,
|
|
727
|
+
disabled: wt,
|
|
725
728
|
className: "flex items-center gap-1.5 px-3 py-1.5 text-xs font-medium text-text-primary bg-bg-surface border border-border-default rounded-md hover:bg-bg-sunken transition-colors disabled:opacity-50",
|
|
726
729
|
children: [
|
|
727
|
-
/* @__PURE__ */
|
|
730
|
+
/* @__PURE__ */ h(Ve, { className: "w-3 h-3" }),
|
|
728
731
|
" ",
|
|
729
|
-
|
|
732
|
+
v("sessions.stop", "Stop")
|
|
730
733
|
]
|
|
731
734
|
}),
|
|
732
|
-
/* @__PURE__ */
|
|
733
|
-
onClick:
|
|
734
|
-
disabled:
|
|
735
|
+
/* @__PURE__ */ g("button", {
|
|
736
|
+
onClick: Rn,
|
|
737
|
+
disabled: wt,
|
|
735
738
|
className: "flex items-center gap-1.5 px-3 py-1.5 text-xs font-medium text-text-primary bg-bg-surface border border-border-default rounded-md hover:bg-bg-sunken transition-colors disabled:opacity-50",
|
|
736
739
|
children: [
|
|
737
|
-
/* @__PURE__ */
|
|
740
|
+
/* @__PURE__ */ h(Be, { className: "w-3 h-3" }),
|
|
738
741
|
" ",
|
|
739
|
-
|
|
742
|
+
v("sessions.restart", "Restart")
|
|
740
743
|
]
|
|
741
744
|
}),
|
|
742
|
-
/* @__PURE__ */
|
|
743
|
-
onClick:
|
|
744
|
-
disabled:
|
|
745
|
+
/* @__PURE__ */ g("button", {
|
|
746
|
+
onClick: zn,
|
|
747
|
+
disabled: wt,
|
|
745
748
|
className: "flex items-center gap-1.5 px-3 py-1.5 text-xs font-medium text-status-error-text bg-status-error-bg border border-status-error-text/20 rounded-md hover:bg-status-error-bg/80 transition-colors disabled:opacity-50",
|
|
746
749
|
children: [
|
|
747
|
-
/* @__PURE__ */
|
|
750
|
+
/* @__PURE__ */ h(Ue, { className: "w-3 h-3" }),
|
|
748
751
|
" ",
|
|
749
|
-
|
|
752
|
+
v("sessions.remove", "Remove")
|
|
750
753
|
]
|
|
751
754
|
}),
|
|
752
|
-
/* @__PURE__ */
|
|
753
|
-
onClick:
|
|
755
|
+
/* @__PURE__ */ g("button", {
|
|
756
|
+
onClick: Pn,
|
|
754
757
|
className: "flex items-center gap-1.5 px-3 py-1.5 text-xs text-text-secondary hover:text-text-primary transition-colors",
|
|
755
758
|
children: [
|
|
756
|
-
/* @__PURE__ */
|
|
759
|
+
/* @__PURE__ */ h(We, { className: "w-3 h-3" }),
|
|
757
760
|
" ",
|
|
758
|
-
|
|
761
|
+
v("sessions.deselect", "Deselect")
|
|
759
762
|
]
|
|
760
763
|
})
|
|
761
764
|
]
|
|
762
765
|
})]
|
|
763
766
|
});
|
|
764
|
-
if (
|
|
767
|
+
if (w === "terminal") return /* @__PURE__ */ g(_, {
|
|
765
768
|
className: "flex flex-col bg-bg-surface h-screen",
|
|
766
769
|
children: [
|
|
767
|
-
/* @__PURE__ */
|
|
770
|
+
/* @__PURE__ */ g("div", {
|
|
768
771
|
className: "flex flex-col sm:flex-row items-start sm:items-center justify-between gap-2 px-4 py-2 border-b border-border-default bg-bg-sunken",
|
|
769
|
-
children: [/* @__PURE__ */
|
|
772
|
+
children: [/* @__PURE__ */ g("div", {
|
|
770
773
|
className: "flex flex-wrap items-center gap-3",
|
|
771
|
-
children: [/* @__PURE__ */
|
|
774
|
+
children: [/* @__PURE__ */ h("h1", {
|
|
772
775
|
className: "text-sm font-semibold text-text-primary",
|
|
773
|
-
children:
|
|
774
|
-
}), /* @__PURE__ */
|
|
776
|
+
children: v("nav.sessions", "Sessions")
|
|
777
|
+
}), /* @__PURE__ */ h("span", {
|
|
775
778
|
className: "text-xs text-text-muted",
|
|
776
|
-
children:
|
|
779
|
+
children: v("sessions.runningSummary", "{{running}} running / {{total}} total", {
|
|
777
780
|
running: $.running,
|
|
778
781
|
total: $.total
|
|
779
782
|
})
|
|
780
783
|
})]
|
|
781
|
-
}), /* @__PURE__ */
|
|
784
|
+
}), /* @__PURE__ */ g("div", {
|
|
782
785
|
className: "flex w-full flex-wrap items-center gap-2 sm:w-auto sm:justify-end",
|
|
783
786
|
children: [
|
|
784
|
-
/* @__PURE__ */
|
|
785
|
-
onClick: () =>
|
|
787
|
+
/* @__PURE__ */ h("button", {
|
|
788
|
+
onClick: () => mn().then(() => J()),
|
|
786
789
|
className: "p-1.5 text-text-secondary hover:bg-bg-surface rounded transition-colors",
|
|
787
|
-
title:
|
|
788
|
-
children: /* @__PURE__ */
|
|
790
|
+
title: v("sessions.checkHealth", "Check session health"),
|
|
791
|
+
children: /* @__PURE__ */ h(Me, { className: "w-3.5 h-3.5" })
|
|
789
792
|
}),
|
|
790
|
-
/* @__PURE__ */
|
|
791
|
-
onClick: () =>
|
|
792
|
-
disabled:
|
|
793
|
+
/* @__PURE__ */ h("button", {
|
|
794
|
+
onClick: () => J(),
|
|
795
|
+
disabled: q,
|
|
793
796
|
className: "p-1.5 text-text-secondary hover:bg-bg-surface rounded transition-colors disabled:opacity-50",
|
|
794
|
-
title:
|
|
795
|
-
children: /* @__PURE__ */
|
|
797
|
+
title: v("common.refresh", "Refresh"),
|
|
798
|
+
children: /* @__PURE__ */ h(ze, { className: `w-3.5 h-3.5 ${q ? "animate-spin" : ""}` })
|
|
796
799
|
}),
|
|
797
|
-
/* @__PURE__ */
|
|
800
|
+
/* @__PURE__ */ g("div", {
|
|
798
801
|
className: "flex items-center gap-0.5 rounded bg-bg-surface p-0.5",
|
|
799
802
|
children: [
|
|
800
|
-
/* @__PURE__ */
|
|
801
|
-
onClick: () =>
|
|
803
|
+
/* @__PURE__ */ h("button", {
|
|
804
|
+
onClick: () => T("terminal"),
|
|
802
805
|
className: "p-1.5 rounded bg-bg-sunken shadow-sm",
|
|
803
|
-
title:
|
|
804
|
-
children: /* @__PURE__ */
|
|
806
|
+
title: v("sessions.terminalViewTitle", "Terminal view"),
|
|
807
|
+
children: /* @__PURE__ */ h(Ie, { className: "w-3.5 h-3.5 text-text-secondary" })
|
|
805
808
|
}),
|
|
806
|
-
/* @__PURE__ */
|
|
807
|
-
onClick: () =>
|
|
809
|
+
/* @__PURE__ */ h("button", {
|
|
810
|
+
onClick: () => T("grid"),
|
|
808
811
|
className: "p-1.5 rounded hover:bg-bg-sunken/50",
|
|
809
|
-
title:
|
|
810
|
-
children: /* @__PURE__ */
|
|
812
|
+
title: v("sessions.gridViewTitle", "Grid view"),
|
|
813
|
+
children: /* @__PURE__ */ h(Pe, { className: "w-3.5 h-3.5 text-text-secondary" })
|
|
811
814
|
}),
|
|
812
|
-
/* @__PURE__ */
|
|
813
|
-
onClick: () =>
|
|
815
|
+
/* @__PURE__ */ h("button", {
|
|
816
|
+
onClick: () => T("list"),
|
|
814
817
|
className: "p-1.5 rounded hover:bg-bg-sunken/50",
|
|
815
|
-
title:
|
|
816
|
-
children: /* @__PURE__ */
|
|
818
|
+
title: v("sessions.listViewTitle", "List view"),
|
|
819
|
+
children: /* @__PURE__ */ h(Fe, { className: "w-3.5 h-3.5 text-text-secondary" })
|
|
817
820
|
})
|
|
818
821
|
]
|
|
819
822
|
})
|
|
820
823
|
]
|
|
821
824
|
})]
|
|
822
825
|
}),
|
|
823
|
-
/* @__PURE__ */
|
|
826
|
+
/* @__PURE__ */ h("div", {
|
|
824
827
|
className: "px-4 pt-3",
|
|
825
|
-
children: /* @__PURE__ */
|
|
828
|
+
children: /* @__PURE__ */ h(Ee, {
|
|
826
829
|
showConnectionStatus: !0,
|
|
827
830
|
maxVisible: 3
|
|
828
831
|
})
|
|
829
832
|
}),
|
|
830
|
-
/* @__PURE__ */
|
|
831
|
-
tabs:
|
|
832
|
-
activeTabId:
|
|
833
|
-
onTabSelect:
|
|
834
|
-
onTabClose:
|
|
835
|
-
onOpenExternal:
|
|
833
|
+
/* @__PURE__ */ h(ke, {
|
|
834
|
+
tabs: I,
|
|
835
|
+
activeTabId: R,
|
|
836
|
+
onTabSelect: z,
|
|
837
|
+
onTabClose: Yn,
|
|
838
|
+
onOpenExternal: Xn,
|
|
836
839
|
collapsed: !1,
|
|
837
840
|
sessions: Z,
|
|
838
841
|
onOpenTerminal: Q,
|
|
839
842
|
onRetryTerminal: Q,
|
|
840
|
-
onRenameSession:
|
|
841
|
-
onStopTerminal:
|
|
842
|
-
onRestartTerminal:
|
|
843
|
-
onCreateSession:
|
|
843
|
+
onRenameSession: Zn,
|
|
844
|
+
onStopTerminal: Qn,
|
|
845
|
+
onRestartTerminal: $n,
|
|
846
|
+
onCreateSession: Vn,
|
|
844
847
|
fullScreen: !0,
|
|
845
|
-
isImmersiveFullscreen:
|
|
846
|
-
onToggleImmersiveFullscreen:
|
|
848
|
+
isImmersiveFullscreen: Gt,
|
|
849
|
+
onToggleImmersiveFullscreen: er,
|
|
847
850
|
contextSwitcher: void 0
|
|
848
851
|
}),
|
|
849
|
-
|
|
852
|
+
k && /* @__PURE__ */ h("div", {
|
|
850
853
|
className: "fixed bottom-4 right-4 z-50 px-4 py-3 bg-status-success-bg text-status-success-text rounded-md shadow-lg text-sm",
|
|
851
|
-
children:
|
|
854
|
+
children: k
|
|
852
855
|
}),
|
|
853
|
-
|
|
854
|
-
|
|
856
|
+
yt && rr(),
|
|
857
|
+
nr()
|
|
855
858
|
]
|
|
856
859
|
});
|
|
857
|
-
return /* @__PURE__ */
|
|
860
|
+
return /* @__PURE__ */ g(_, {
|
|
858
861
|
className: "flex flex-col bg-bg-surface min-h-screen",
|
|
859
862
|
children: [
|
|
860
|
-
/* @__PURE__ */
|
|
863
|
+
/* @__PURE__ */ g("div", {
|
|
861
864
|
className: "flex-1 overflow-y-auto space-y-6 p-4 sm:p-6",
|
|
862
865
|
children: [
|
|
863
|
-
/* @__PURE__ */
|
|
864
|
-
title:
|
|
865
|
-
description:
|
|
866
|
+
/* @__PURE__ */ h(ge, {
|
|
867
|
+
title: v("nav.sessions", "Sessions"),
|
|
868
|
+
description: v("sessions.pageDescription", "{{running}} of {{total}} sessions running", {
|
|
866
869
|
running: $.running,
|
|
867
870
|
total: $.total
|
|
868
871
|
}),
|
|
869
|
-
actions: /* @__PURE__ */
|
|
872
|
+
actions: /* @__PURE__ */ g("div", {
|
|
870
873
|
className: "flex flex-col sm:flex-row items-stretch sm:items-center gap-2",
|
|
871
874
|
children: [
|
|
872
|
-
/* @__PURE__ */
|
|
873
|
-
onClick: () =>
|
|
875
|
+
/* @__PURE__ */ h("button", {
|
|
876
|
+
onClick: () => mn().then(() => J()),
|
|
874
877
|
className: "flex items-center gap-2 px-3 py-2 text-text-secondary hover:bg-bg-sunken rounded-md transition-colors",
|
|
875
|
-
title:
|
|
876
|
-
children: /* @__PURE__ */
|
|
878
|
+
title: v("sessions.checkHealth", "Check session health"),
|
|
879
|
+
children: /* @__PURE__ */ h(Me, { className: "w-4 h-4" })
|
|
877
880
|
}),
|
|
878
|
-
/* @__PURE__ */
|
|
879
|
-
onClick: () =>
|
|
880
|
-
disabled:
|
|
881
|
+
/* @__PURE__ */ h("button", {
|
|
882
|
+
onClick: () => J(),
|
|
883
|
+
disabled: q,
|
|
881
884
|
className: "flex items-center gap-2 px-3 py-2 text-text-secondary hover:bg-bg-sunken rounded-md transition-colors disabled:opacity-50",
|
|
882
|
-
title:
|
|
883
|
-
children: /* @__PURE__ */
|
|
885
|
+
title: v("sessions.refreshTitle", "Refresh sessions"),
|
|
886
|
+
children: /* @__PURE__ */ h(ze, { className: `w-4 h-4 ${q ? "animate-spin" : ""}` })
|
|
884
887
|
}),
|
|
885
|
-
/* @__PURE__ */
|
|
886
|
-
permission:
|
|
887
|
-
children: /* @__PURE__ */
|
|
888
|
-
onClick: () =>
|
|
888
|
+
/* @__PURE__ */ h(Ze, {
|
|
889
|
+
permission: l.SESSION_CREATE,
|
|
890
|
+
children: /* @__PURE__ */ g("button", {
|
|
891
|
+
onClick: () => Zt(!0),
|
|
889
892
|
className: "flex items-center gap-2 px-3 py-2 text-text-primary border border-border-default rounded-md hover:bg-bg-sunken transition-colors",
|
|
890
893
|
"data-testid": "sessions-reconnect-button",
|
|
891
|
-
title:
|
|
892
|
-
children: [/* @__PURE__ */
|
|
894
|
+
title: v("sessions.reconnectTooltip", "Reconnect orphan tmux/wezterm/zellij sessions left over from a previous agent run"),
|
|
895
|
+
children: [/* @__PURE__ */ h(ze, { className: "w-4 h-4" }), v("sessions.reconnect", "Reconnect")]
|
|
893
896
|
})
|
|
894
897
|
}),
|
|
895
|
-
/* @__PURE__ */
|
|
896
|
-
permission:
|
|
897
|
-
children: /* @__PURE__ */
|
|
898
|
-
onClick:
|
|
898
|
+
/* @__PURE__ */ h(Ze, {
|
|
899
|
+
permission: l.SESSION_CREATE,
|
|
900
|
+
children: /* @__PURE__ */ g("button", {
|
|
901
|
+
onClick: Vn,
|
|
899
902
|
className: "flex items-center gap-2 px-4 py-2 bg-action-primary-bg text-action-primary-text rounded-md hover:bg-action-primary-bg-hover transition-colors",
|
|
900
|
-
children: [/* @__PURE__ */
|
|
903
|
+
children: [/* @__PURE__ */ h(Re, { className: "w-4 h-4" }), v("sessions.newSession", "New Session")]
|
|
901
904
|
})
|
|
902
905
|
})
|
|
903
906
|
]
|
|
904
907
|
})
|
|
905
908
|
}),
|
|
906
|
-
/* @__PURE__ */
|
|
909
|
+
/* @__PURE__ */ h(Ee, {
|
|
907
910
|
showConnectionStatus: !0,
|
|
908
911
|
maxVisible: 3
|
|
909
912
|
}),
|
|
910
|
-
/* @__PURE__ */
|
|
913
|
+
/* @__PURE__ */ g("div", {
|
|
911
914
|
"data-tour": "sessions-filters",
|
|
912
915
|
className: "space-y-3",
|
|
913
|
-
children: [/* @__PURE__ */
|
|
916
|
+
children: [/* @__PURE__ */ g("div", {
|
|
914
917
|
className: "flex flex-col sm:flex-row items-stretch sm:items-center gap-2",
|
|
915
|
-
children: [/* @__PURE__ */
|
|
916
|
-
value:
|
|
917
|
-
onChange:
|
|
918
|
-
placeholder:
|
|
918
|
+
children: [/* @__PURE__ */ h(Se, {
|
|
919
|
+
value: y,
|
|
920
|
+
onChange: mt,
|
|
921
|
+
placeholder: v("sessions.searchPlaceholder", "Search sessions..."),
|
|
919
922
|
className: "flex-1 sm:w-64 sm:flex-none"
|
|
920
|
-
}), /* @__PURE__ */
|
|
923
|
+
}), /* @__PURE__ */ g("div", {
|
|
921
924
|
className: "flex items-center gap-1 bg-bg-sunken rounded-md p-1 flex-shrink-0",
|
|
922
925
|
children: [
|
|
923
|
-
/* @__PURE__ */
|
|
924
|
-
onClick: () =>
|
|
926
|
+
/* @__PURE__ */ h("button", {
|
|
927
|
+
onClick: () => T("terminal"),
|
|
925
928
|
className: "p-1.5 sm:p-2 rounded hover:bg-bg-surface/50",
|
|
926
|
-
title:
|
|
927
|
-
children: /* @__PURE__ */
|
|
929
|
+
title: v("sessions.terminalViewTitle", "Terminal view"),
|
|
930
|
+
children: /* @__PURE__ */ h(Ie, { className: "w-4 h-4 text-text-secondary" })
|
|
928
931
|
}),
|
|
929
|
-
/* @__PURE__ */
|
|
930
|
-
onClick: () =>
|
|
931
|
-
className: `p-1.5 sm:p-2 rounded ${
|
|
932
|
-
title:
|
|
933
|
-
children: /* @__PURE__ */
|
|
932
|
+
/* @__PURE__ */ h("button", {
|
|
933
|
+
onClick: () => T("grid"),
|
|
934
|
+
className: `p-1.5 sm:p-2 rounded ${w === "grid" ? "bg-bg-surface shadow-sm" : "hover:bg-bg-surface/50"}`,
|
|
935
|
+
title: v("sessions.gridViewTitle", "Grid view"),
|
|
936
|
+
children: /* @__PURE__ */ h(Pe, { className: "w-4 h-4 text-text-secondary" })
|
|
934
937
|
}),
|
|
935
|
-
/* @__PURE__ */
|
|
936
|
-
onClick: () =>
|
|
937
|
-
className: `p-1.5 sm:p-2 rounded ${
|
|
938
|
-
title:
|
|
939
|
-
children: /* @__PURE__ */
|
|
938
|
+
/* @__PURE__ */ h("button", {
|
|
939
|
+
onClick: () => T("list"),
|
|
940
|
+
className: `p-1.5 sm:p-2 rounded ${w === "list" ? "bg-bg-surface shadow-sm" : "hover:bg-bg-surface/50"}`,
|
|
941
|
+
title: v("sessions.listViewTitle", "List view"),
|
|
942
|
+
children: /* @__PURE__ */ h(Fe, { className: "w-4 h-4 text-text-secondary" })
|
|
940
943
|
})
|
|
941
944
|
]
|
|
942
945
|
})]
|
|
943
|
-
}), /* @__PURE__ */
|
|
946
|
+
}), /* @__PURE__ */ g("div", {
|
|
944
947
|
className: "flex items-center gap-2 sm:gap-3 flex-wrap",
|
|
945
948
|
children: [
|
|
946
|
-
/* @__PURE__ */
|
|
947
|
-
label:
|
|
948
|
-
value: y,
|
|
949
|
-
options: lt,
|
|
950
|
-
onChange: mt
|
|
951
|
-
}),
|
|
952
|
-
/* @__PURE__ */ m(s, {
|
|
953
|
-
label: _("sessions.filterType", "Type"),
|
|
949
|
+
/* @__PURE__ */ h(c, {
|
|
950
|
+
label: v("sessions.filterStatus", "Status"),
|
|
954
951
|
value: b,
|
|
955
952
|
options: ut,
|
|
956
953
|
onChange: ht
|
|
957
954
|
}),
|
|
958
|
-
/* @__PURE__ */
|
|
959
|
-
label:
|
|
955
|
+
/* @__PURE__ */ h(c, {
|
|
956
|
+
label: v("sessions.filterType", "Type"),
|
|
960
957
|
value: x,
|
|
961
|
-
options:
|
|
958
|
+
options: dt,
|
|
962
959
|
onChange: gt
|
|
963
960
|
}),
|
|
964
|
-
/* @__PURE__ */
|
|
965
|
-
label:
|
|
961
|
+
/* @__PURE__ */ h(c, {
|
|
962
|
+
label: v("sessions.filterVibe", "Vibe"),
|
|
966
963
|
value: S,
|
|
967
|
-
options:
|
|
964
|
+
options: Dn,
|
|
968
965
|
onChange: _t
|
|
966
|
+
}),
|
|
967
|
+
/* @__PURE__ */ h(c, {
|
|
968
|
+
label: v("sessions.filterAgent", "Agent"),
|
|
969
|
+
value: C,
|
|
970
|
+
options: On,
|
|
971
|
+
onChange: vt
|
|
969
972
|
})
|
|
970
973
|
]
|
|
971
974
|
})]
|
|
972
975
|
}),
|
|
973
|
-
/* @__PURE__ */
|
|
976
|
+
/* @__PURE__ */ g("div", {
|
|
974
977
|
className: "flex flex-col sm:flex-row items-start sm:items-center gap-2 flex-wrap",
|
|
975
978
|
children: [
|
|
976
|
-
/* @__PURE__ */
|
|
977
|
-
onClick: () =>
|
|
978
|
-
className: `flex items-center gap-2 px-3 py-1.5 text-sm rounded-full transition-colors ${
|
|
979
|
+
/* @__PURE__ */ g("button", {
|
|
980
|
+
onClick: () => ht("RUNNING"),
|
|
981
|
+
className: `flex items-center gap-2 px-3 py-1.5 text-sm rounded-full transition-colors ${b === "RUNNING" ? "bg-status-success-bg text-status-success-text" : "bg-bg-sunken text-text-secondary hover:bg-bg-sunken/80"}`,
|
|
979
982
|
children: [
|
|
980
|
-
/* @__PURE__ */
|
|
983
|
+
/* @__PURE__ */ h(Le, { className: "w-3 h-3" }),
|
|
981
984
|
" ",
|
|
982
|
-
|
|
985
|
+
v("sessions.running", "Running"),
|
|
983
986
|
" (",
|
|
984
987
|
$.running,
|
|
985
988
|
")"
|
|
986
989
|
]
|
|
987
990
|
}),
|
|
988
|
-
/* @__PURE__ */
|
|
989
|
-
onClick: () =>
|
|
990
|
-
className: `flex items-center gap-2 px-3 py-1.5 text-sm rounded-full transition-colors ${
|
|
991
|
+
/* @__PURE__ */ g("button", {
|
|
992
|
+
onClick: () => ht("STOPPED"),
|
|
993
|
+
className: `flex items-center gap-2 px-3 py-1.5 text-sm rounded-full transition-colors ${b === "STOPPED" ? "bg-bg-sunken text-text-secondary" : "bg-bg-sunken text-text-secondary hover:bg-bg-sunken/80"}`,
|
|
991
994
|
children: [
|
|
992
|
-
/* @__PURE__ */
|
|
995
|
+
/* @__PURE__ */ h(Ve, { className: "w-3 h-3" }),
|
|
993
996
|
" ",
|
|
994
|
-
|
|
997
|
+
v("sessions.stoppedState", "Stopped"),
|
|
995
998
|
" (",
|
|
996
999
|
$.stopped,
|
|
997
1000
|
")"
|
|
998
1001
|
]
|
|
999
1002
|
}),
|
|
1000
|
-
/* @__PURE__ */
|
|
1003
|
+
/* @__PURE__ */ h("div", {
|
|
1001
1004
|
className: "sm:ml-auto flex items-center gap-2",
|
|
1002
|
-
children: Z.length > 0 && /* @__PURE__ */
|
|
1003
|
-
onClick:
|
|
1005
|
+
children: Z.length > 0 && /* @__PURE__ */ g("button", {
|
|
1006
|
+
onClick: Fn ? Pn : Nn,
|
|
1004
1007
|
className: "flex items-center gap-1.5 px-3 py-1.5 text-xs text-text-secondary hover:text-text-primary transition-colors",
|
|
1005
|
-
children: [/* @__PURE__ */
|
|
1008
|
+
children: [/* @__PURE__ */ h(Ne, { className: "w-3.5 h-3.5" }), Fn ? v("sessions.deselectAll", "Deselect All") : v("sessions.selectAll", "Select All")]
|
|
1006
1009
|
})
|
|
1007
1010
|
})
|
|
1008
1011
|
]
|
|
1009
1012
|
}),
|
|
1010
|
-
|
|
1011
|
-
|
|
1013
|
+
tr(),
|
|
1014
|
+
y || b !== "all" || x !== "all" || S !== "all" || C !== "all" ? /* @__PURE__ */ g("p", {
|
|
1012
1015
|
className: "text-sm text-text-secondary",
|
|
1013
1016
|
children: [
|
|
1014
|
-
|
|
1017
|
+
v("sessions.showing", "Showing"),
|
|
1015
1018
|
" ",
|
|
1016
1019
|
Z.length,
|
|
1017
1020
|
" ",
|
|
1018
|
-
|
|
1021
|
+
v("sessions.of", "of"),
|
|
1019
1022
|
" ",
|
|
1020
1023
|
X.length,
|
|
1021
1024
|
" ",
|
|
1022
|
-
|
|
1023
|
-
|
|
1025
|
+
v("nav.sessions", "sessions"),
|
|
1026
|
+
q && /* @__PURE__ */ g("span", {
|
|
1024
1027
|
className: "ml-2 text-text-muted",
|
|
1025
1028
|
children: [
|
|
1026
1029
|
"(",
|
|
1027
|
-
|
|
1030
|
+
v("sessions.refreshing", "refreshing..."),
|
|
1028
1031
|
")"
|
|
1029
1032
|
]
|
|
1030
1033
|
})
|
|
1031
1034
|
]
|
|
1032
1035
|
}) : null,
|
|
1033
|
-
/* @__PURE__ */
|
|
1036
|
+
/* @__PURE__ */ h(qe, {
|
|
1034
1037
|
mode: "wait",
|
|
1035
|
-
children: Z.length > 0 ?
|
|
1038
|
+
children: Z.length > 0 ? w === "grid" ? /* @__PURE__ */ h(Ye, {
|
|
1036
1039
|
stagger: .04,
|
|
1037
1040
|
className: "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4",
|
|
1038
|
-
children: Z.map((e) => /* @__PURE__ */
|
|
1041
|
+
children: Z.map((e) => /* @__PURE__ */ h(Je, { children: /* @__PURE__ */ h(De, {
|
|
1039
1042
|
session: e,
|
|
1040
|
-
onOpen:
|
|
1041
|
-
onStart:
|
|
1042
|
-
onStop:
|
|
1043
|
-
onRestart:
|
|
1043
|
+
onOpen: Bn,
|
|
1044
|
+
onStart: Un,
|
|
1045
|
+
onStop: Wn,
|
|
1046
|
+
onRestart: Gn,
|
|
1044
1047
|
onOpenTerminal: Q,
|
|
1045
|
-
onShare:
|
|
1046
|
-
selected:
|
|
1047
|
-
onToggleSelect: () =>
|
|
1048
|
+
onShare: Jn,
|
|
1049
|
+
selected: j.has(e.id),
|
|
1050
|
+
onToggleSelect: () => Mn(e.id)
|
|
1048
1051
|
}) }, e.id))
|
|
1049
|
-
}, "grid-view") : /* @__PURE__ */
|
|
1052
|
+
}, "grid-view") : /* @__PURE__ */ h(Je, { children: /* @__PURE__ */ h(Oe, {
|
|
1050
1053
|
sessions: Z,
|
|
1051
|
-
onOpen:
|
|
1052
|
-
onStart:
|
|
1053
|
-
onStop:
|
|
1054
|
-
onRestart:
|
|
1055
|
-
onTerminate:
|
|
1054
|
+
onOpen: Bn,
|
|
1055
|
+
onStart: Un,
|
|
1056
|
+
onStop: Wn,
|
|
1057
|
+
onRestart: Gn,
|
|
1058
|
+
onTerminate: Kn,
|
|
1056
1059
|
onOpenTerminal: Q,
|
|
1057
|
-
onShare:
|
|
1058
|
-
selectedIds:
|
|
1059
|
-
onToggleSelect:
|
|
1060
|
-
onSelectAll:
|
|
1061
|
-
onDeselectAll:
|
|
1062
|
-
}) }, "list-view") : /* @__PURE__ */
|
|
1060
|
+
onShare: Jn,
|
|
1061
|
+
selectedIds: j,
|
|
1062
|
+
onToggleSelect: Mn,
|
|
1063
|
+
onSelectAll: Nn,
|
|
1064
|
+
onDeselectAll: Pn
|
|
1065
|
+
}) }, "list-view") : /* @__PURE__ */ g("div", {
|
|
1063
1066
|
className: "space-y-4",
|
|
1064
|
-
children: [/* @__PURE__ */
|
|
1067
|
+
children: [/* @__PURE__ */ h(Ce, {
|
|
1065
1068
|
variant: "compact",
|
|
1066
1069
|
dismissKey: "vibecontrols-sessions-setup-banner"
|
|
1067
|
-
}), /* @__PURE__ */
|
|
1068
|
-
icon: /* @__PURE__ */
|
|
1069
|
-
title:
|
|
1070
|
-
description:
|
|
1071
|
-
action: !
|
|
1070
|
+
}), /* @__PURE__ */ h(xe, {
|
|
1071
|
+
icon: /* @__PURE__ */ h(He, { className: "w-8 h-8 text-text-secondary" }),
|
|
1072
|
+
title: y || b !== "all" || x !== "all" || S !== "all" || C !== "all" ? v("sessions.emptyFound", "No sessions found") : v("sessions.emptyConfigured", "No sessions configured"),
|
|
1073
|
+
description: y || b !== "all" || x !== "all" || S !== "all" || C !== "all" ? v("sessions.emptyAdjustSearch", "Try adjusting your search or filters") : v("sessions.emptyDescription", "Sessions require an active agent. Install the CLI agent first, then start a session."),
|
|
1074
|
+
action: !y && b === "all" && x === "all" && S === "all" && C === "all" ? /* @__PURE__ */ g("div", {
|
|
1072
1075
|
className: "flex items-center gap-2",
|
|
1073
|
-
children: [
|
|
1074
|
-
onClick:
|
|
1076
|
+
children: [pt && /* @__PURE__ */ g("button", {
|
|
1077
|
+
onClick: Vn,
|
|
1075
1078
|
className: "flex items-center gap-2 px-4 py-2 bg-action-primary-bg text-action-primary-text rounded-md hover:bg-action-primary-bg-hover transition-colors",
|
|
1076
1079
|
children: [
|
|
1077
|
-
/* @__PURE__ */
|
|
1080
|
+
/* @__PURE__ */ h(Re, { className: "w-4 h-4" }),
|
|
1078
1081
|
" ",
|
|
1079
|
-
|
|
1082
|
+
v("sessions.newSession", "New Session")
|
|
1080
1083
|
]
|
|
1081
|
-
}), /* @__PURE__ */
|
|
1084
|
+
}), /* @__PURE__ */ h(we, { prompt: "What is a Session in VibeControls and how do I start one?" })]
|
|
1082
1085
|
}) : void 0
|
|
1083
1086
|
})]
|
|
1084
1087
|
})
|
|
1085
1088
|
}),
|
|
1086
|
-
|
|
1089
|
+
k && /* @__PURE__ */ h("div", {
|
|
1087
1090
|
className: "fixed bottom-4 right-4 z-50 px-4 py-3 bg-status-success-bg text-status-success-text rounded-md shadow-lg text-sm",
|
|
1088
|
-
children:
|
|
1091
|
+
children: k
|
|
1089
1092
|
})
|
|
1090
1093
|
]
|
|
1091
1094
|
}),
|
|
1092
|
-
|
|
1093
|
-
tabs:
|
|
1094
|
-
activeTabId:
|
|
1095
|
-
onTabSelect:
|
|
1096
|
-
onTabClose:
|
|
1097
|
-
onOpenExternal:
|
|
1098
|
-
onToggleCollapse: () =>
|
|
1099
|
-
collapsed:
|
|
1095
|
+
I.length > 0 && /* @__PURE__ */ h(ke, {
|
|
1096
|
+
tabs: I,
|
|
1097
|
+
activeTabId: R,
|
|
1098
|
+
onTabSelect: z,
|
|
1099
|
+
onTabClose: Yn,
|
|
1100
|
+
onOpenExternal: Xn,
|
|
1101
|
+
onToggleCollapse: () => B((e) => !e),
|
|
1102
|
+
collapsed: Ht,
|
|
1100
1103
|
sessions: Z,
|
|
1101
1104
|
onOpenTerminal: Q,
|
|
1102
1105
|
onRetryTerminal: Q,
|
|
1103
|
-
onRenameSession:
|
|
1104
|
-
onStopTerminal:
|
|
1105
|
-
onRestartTerminal:
|
|
1106
|
+
onRenameSession: Zn,
|
|
1107
|
+
onStopTerminal: Qn,
|
|
1108
|
+
onRestartTerminal: $n,
|
|
1106
1109
|
heightClass: "h-[280px] sm:h-[380px]",
|
|
1107
|
-
isImmersiveFullscreen:
|
|
1108
|
-
onToggleImmersiveFullscreen:
|
|
1110
|
+
isImmersiveFullscreen: Gt,
|
|
1111
|
+
onToggleImmersiveFullscreen: er,
|
|
1109
1112
|
contextSwitcher: void 0
|
|
1110
1113
|
}),
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
session:
|
|
1115
|
-
isOpen: !!
|
|
1116
|
-
onClose: () =>
|
|
1114
|
+
yt && rr(),
|
|
1115
|
+
nr(),
|
|
1116
|
+
Ut && /* @__PURE__ */ h(Ae, {
|
|
1117
|
+
session: Ut,
|
|
1118
|
+
isOpen: !!Ut,
|
|
1119
|
+
onClose: () => Wt(null)
|
|
1117
1120
|
}),
|
|
1118
|
-
/* @__PURE__ */
|
|
1119
|
-
isOpen:
|
|
1120
|
-
onClose: () =>
|
|
1121
|
+
/* @__PURE__ */ h(ye, {
|
|
1122
|
+
isOpen: bt,
|
|
1123
|
+
onClose: () => D(!1),
|
|
1121
1124
|
onConfirm: () => {
|
|
1122
|
-
|
|
1125
|
+
D(!1), it("/billing");
|
|
1123
1126
|
},
|
|
1124
1127
|
title: be("session").title,
|
|
1125
1128
|
message: be("session").message,
|
|
@@ -1129,62 +1132,62 @@ function tt() {
|
|
|
1129
1132
|
})
|
|
1130
1133
|
]
|
|
1131
1134
|
});
|
|
1132
|
-
function
|
|
1133
|
-
if (!
|
|
1134
|
-
let e =
|
|
1135
|
-
return /* @__PURE__ */
|
|
1135
|
+
function nr() {
|
|
1136
|
+
if (!Xt) return null;
|
|
1137
|
+
let e = rn?.agentSessionOrphans ?? [];
|
|
1138
|
+
return /* @__PURE__ */ h("div", {
|
|
1136
1139
|
className: "fixed inset-0 bg-bg-overlay flex items-center justify-center z-50 p-4",
|
|
1137
1140
|
"data-testid": "sessions-reconnect-modal",
|
|
1138
|
-
children: /* @__PURE__ */
|
|
1141
|
+
children: /* @__PURE__ */ g("div", {
|
|
1139
1142
|
className: "bg-bg-surface rounded-lg p-6 w-full max-w-2xl max-h-[80vh] overflow-y-auto",
|
|
1140
1143
|
children: [
|
|
1141
|
-
/* @__PURE__ */
|
|
1144
|
+
/* @__PURE__ */ h("h2", {
|
|
1142
1145
|
className: "text-lg font-semibold text-text-primary mb-1",
|
|
1143
|
-
children:
|
|
1146
|
+
children: v("sessions.reconnectTitle", "Reconnect orphan sessions")
|
|
1144
1147
|
}),
|
|
1145
|
-
/* @__PURE__ */
|
|
1148
|
+
/* @__PURE__ */ h("p", {
|
|
1146
1149
|
className: "text-sm text-text-secondary mb-4",
|
|
1147
|
-
children:
|
|
1150
|
+
children: v("sessions.reconnectDesc", "Pick an agent to scan its host for tmux / wezterm / zellij sessions named vibe-* that are not currently tracked. Adopt one to start a web terminal and bring it back into the UI.")
|
|
1148
1151
|
}),
|
|
1149
|
-
/* @__PURE__ */
|
|
1152
|
+
/* @__PURE__ */ g("div", {
|
|
1150
1153
|
className: "space-y-4",
|
|
1151
1154
|
children: [
|
|
1152
|
-
/* @__PURE__ */
|
|
1155
|
+
/* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h("label", {
|
|
1153
1156
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
1154
|
-
children:
|
|
1155
|
-
}), /* @__PURE__ */
|
|
1156
|
-
options:
|
|
1157
|
-
value:
|
|
1157
|
+
children: v("sessions.agent", "Agent")
|
|
1158
|
+
}), /* @__PURE__ */ h(Te, {
|
|
1159
|
+
options: An,
|
|
1160
|
+
value: U,
|
|
1158
1161
|
onChange: (e) => {
|
|
1159
|
-
|
|
1162
|
+
Qt(e), W(null), e && nn({ variables: { agentId: e } });
|
|
1160
1163
|
},
|
|
1161
|
-
placeholder:
|
|
1162
|
-
searchPlaceholder:
|
|
1164
|
+
placeholder: v("sessions.selectAgent", "Select an agent"),
|
|
1165
|
+
searchPlaceholder: v("sessions.searchAgents", "Search agents..."),
|
|
1163
1166
|
clearable: !0
|
|
1164
1167
|
})] }),
|
|
1165
|
-
|
|
1168
|
+
$t && /* @__PURE__ */ h("div", {
|
|
1166
1169
|
className: "p-3 bg-status-error-bg text-status-error-text text-sm rounded-md",
|
|
1167
1170
|
"data-testid": "sessions-reconnect-error",
|
|
1168
|
-
children:
|
|
1171
|
+
children: $t
|
|
1169
1172
|
}),
|
|
1170
|
-
|
|
1173
|
+
U && /* @__PURE__ */ h("div", {
|
|
1171
1174
|
"data-testid": "sessions-reconnect-list",
|
|
1172
1175
|
className: "space-y-2",
|
|
1173
|
-
children:
|
|
1176
|
+
children: an ? /* @__PURE__ */ h("div", {
|
|
1174
1177
|
className: "text-sm text-text-secondary",
|
|
1175
|
-
children:
|
|
1176
|
-
}) : e.length === 0 ? /* @__PURE__ */
|
|
1178
|
+
children: v("sessions.scanningHost", "Scanning host...")
|
|
1179
|
+
}) : e.length === 0 ? /* @__PURE__ */ h("div", {
|
|
1177
1180
|
className: "text-sm text-text-secondary",
|
|
1178
|
-
children:
|
|
1179
|
-
}) : e.map((e) => /* @__PURE__ */
|
|
1181
|
+
children: v("sessions.noOrphans", "No orphan vibe-* sessions found on this agent.")
|
|
1182
|
+
}) : e.map((e) => /* @__PURE__ */ g("div", {
|
|
1180
1183
|
className: "flex items-center justify-between gap-3 p-3 border border-border-default rounded-md bg-bg-sunken/40",
|
|
1181
1184
|
"data-testid": "sessions-reconnect-row",
|
|
1182
|
-
children: [/* @__PURE__ */
|
|
1185
|
+
children: [/* @__PURE__ */ g("div", {
|
|
1183
1186
|
className: "min-w-0 flex-1",
|
|
1184
|
-
children: [/* @__PURE__ */
|
|
1187
|
+
children: [/* @__PURE__ */ h("div", {
|
|
1185
1188
|
className: "font-mono text-sm text-text-primary break-all",
|
|
1186
1189
|
children: e.externalName
|
|
1187
|
-
}), /* @__PURE__ */
|
|
1190
|
+
}), /* @__PURE__ */ g("div", {
|
|
1188
1191
|
className: "text-xs text-text-tertiary mt-0.5",
|
|
1189
1192
|
children: [
|
|
1190
1193
|
e.provider,
|
|
@@ -1196,179 +1199,179 @@ function tt() {
|
|
|
1196
1199
|
e.createdAt ? ` · created ${e.createdAt}` : ""
|
|
1197
1200
|
]
|
|
1198
1201
|
})]
|
|
1199
|
-
}), /* @__PURE__ */
|
|
1202
|
+
}), /* @__PURE__ */ h("button", {
|
|
1200
1203
|
type: "button",
|
|
1201
|
-
disabled:
|
|
1204
|
+
disabled: en === e.externalName,
|
|
1202
1205
|
onClick: async () => {
|
|
1203
|
-
|
|
1206
|
+
tn(e.externalName), W(null);
|
|
1204
1207
|
try {
|
|
1205
|
-
await
|
|
1206
|
-
agentId:
|
|
1208
|
+
await on({ variables: {
|
|
1209
|
+
agentId: U,
|
|
1207
1210
|
externalName: e.externalName,
|
|
1208
1211
|
name: e.externalName
|
|
1209
|
-
} }), await
|
|
1212
|
+
} }), await nn({ variables: { agentId: U } });
|
|
1210
1213
|
} catch (e) {
|
|
1211
|
-
|
|
1214
|
+
W(e instanceof Error ? e.message : String(e));
|
|
1212
1215
|
} finally {
|
|
1213
|
-
|
|
1216
|
+
tn(null);
|
|
1214
1217
|
}
|
|
1215
1218
|
},
|
|
1216
1219
|
className: "shrink-0 px-3 py-1.5 text-xs bg-action-primary-bg text-action-primary-text rounded-md hover:bg-action-primary-bg-hover transition-colors disabled:opacity-50",
|
|
1217
1220
|
"data-testid": `sessions-reconnect-adopt-${e.externalName}`,
|
|
1218
|
-
children:
|
|
1221
|
+
children: en === e.externalName ? v("sessions.adopting", "Adopting…") : v("sessions.adopt", "Adopt")
|
|
1219
1222
|
})]
|
|
1220
1223
|
}, e.externalName))
|
|
1221
1224
|
})
|
|
1222
1225
|
]
|
|
1223
1226
|
}),
|
|
1224
|
-
/* @__PURE__ */
|
|
1227
|
+
/* @__PURE__ */ h("div", {
|
|
1225
1228
|
className: "flex justify-end gap-3 mt-6",
|
|
1226
|
-
children: /* @__PURE__ */
|
|
1229
|
+
children: /* @__PURE__ */ h("button", {
|
|
1227
1230
|
onClick: () => {
|
|
1228
|
-
|
|
1231
|
+
Zt(!1), W(null);
|
|
1229
1232
|
},
|
|
1230
1233
|
className: "px-4 py-2 text-text-primary hover:bg-bg-sunken rounded-md transition-colors",
|
|
1231
|
-
children:
|
|
1234
|
+
children: v("common.close", "Close")
|
|
1232
1235
|
})
|
|
1233
1236
|
})
|
|
1234
1237
|
]
|
|
1235
1238
|
})
|
|
1236
1239
|
});
|
|
1237
1240
|
}
|
|
1238
|
-
function
|
|
1239
|
-
return /* @__PURE__ */
|
|
1241
|
+
function rr() {
|
|
1242
|
+
return /* @__PURE__ */ h("div", {
|
|
1240
1243
|
className: "fixed inset-0 bg-bg-overlay flex items-center justify-center z-50 p-4",
|
|
1241
|
-
children: /* @__PURE__ */
|
|
1244
|
+
children: /* @__PURE__ */ g("div", {
|
|
1242
1245
|
className: "bg-bg-surface rounded-lg p-6 w-full max-w-lg",
|
|
1243
1246
|
children: [
|
|
1244
|
-
/* @__PURE__ */
|
|
1247
|
+
/* @__PURE__ */ h("h2", {
|
|
1245
1248
|
className: "text-lg font-semibold text-text-primary mb-4",
|
|
1246
|
-
children:
|
|
1249
|
+
children: v("sessions.newSession", "New Session")
|
|
1247
1250
|
}),
|
|
1248
|
-
/* @__PURE__ */
|
|
1251
|
+
/* @__PURE__ */ g("div", {
|
|
1249
1252
|
className: "space-y-4",
|
|
1250
1253
|
children: [
|
|
1251
|
-
|
|
1254
|
+
xt && /* @__PURE__ */ h("div", {
|
|
1252
1255
|
className: "p-3 bg-status-error-bg text-status-error-text text-sm rounded-md",
|
|
1253
|
-
children:
|
|
1256
|
+
children: xt
|
|
1254
1257
|
}),
|
|
1255
|
-
/* @__PURE__ */
|
|
1258
|
+
/* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h("label", {
|
|
1256
1259
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
1257
|
-
children:
|
|
1258
|
-
}), /* @__PURE__ */
|
|
1259
|
-
ref:
|
|
1260
|
+
children: v("sessions.name", "Name")
|
|
1261
|
+
}), /* @__PURE__ */ h("input", {
|
|
1262
|
+
ref: Tt,
|
|
1260
1263
|
type: "text",
|
|
1261
|
-
placeholder:
|
|
1264
|
+
placeholder: v("sessions.namePlaceholder", "dev-server"),
|
|
1262
1265
|
className: "w-full px-3 py-2 bg-bg-sunken border border-border-default rounded-md text-text-primary placeholder:text-text-placeholder"
|
|
1263
1266
|
})] }),
|
|
1264
|
-
/* @__PURE__ */
|
|
1267
|
+
/* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h("label", {
|
|
1265
1268
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
1266
|
-
children:
|
|
1267
|
-
}), /* @__PURE__ */
|
|
1268
|
-
options:
|
|
1269
|
-
value:
|
|
1270
|
-
onChange:
|
|
1271
|
-
placeholder:
|
|
1272
|
-
searchPlaceholder:
|
|
1269
|
+
children: v("sessions.filterVibe", "Vibe")
|
|
1270
|
+
}), /* @__PURE__ */ h(Te, {
|
|
1271
|
+
options: kn,
|
|
1272
|
+
value: kt,
|
|
1273
|
+
onChange: At,
|
|
1274
|
+
placeholder: v("sessions.noVibe", "No vibe"),
|
|
1275
|
+
searchPlaceholder: v("sessions.searchVibes", "Search vibes..."),
|
|
1273
1276
|
clearable: !0
|
|
1274
1277
|
})] }),
|
|
1275
|
-
/* @__PURE__ */
|
|
1276
|
-
/* @__PURE__ */
|
|
1278
|
+
/* @__PURE__ */ g("div", { children: [
|
|
1279
|
+
/* @__PURE__ */ h("label", {
|
|
1277
1280
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
1278
|
-
children:
|
|
1281
|
+
children: v("sessions.filterAgent", "Agent")
|
|
1279
1282
|
}),
|
|
1280
|
-
/* @__PURE__ */
|
|
1281
|
-
options:
|
|
1282
|
-
value:
|
|
1283
|
-
onChange:
|
|
1284
|
-
placeholder:
|
|
1285
|
-
searchPlaceholder:
|
|
1283
|
+
/* @__PURE__ */ h(Te, {
|
|
1284
|
+
options: An,
|
|
1285
|
+
value: jt,
|
|
1286
|
+
onChange: Mt,
|
|
1287
|
+
placeholder: v("sessions.selectAgent", "Select an agent"),
|
|
1288
|
+
searchPlaceholder: v("sessions.searchAgents", "Search agents..."),
|
|
1286
1289
|
clearable: !0
|
|
1287
1290
|
}),
|
|
1288
|
-
/* @__PURE__ */
|
|
1291
|
+
/* @__PURE__ */ h("p", {
|
|
1289
1292
|
className: "text-xs text-text-muted mt-1",
|
|
1290
|
-
children:
|
|
1293
|
+
children: v("sessions.agentHint", "Required when no vibe is selected. Overridden by the vibe's agent if a vibe is chosen.")
|
|
1291
1294
|
})
|
|
1292
1295
|
] }),
|
|
1293
|
-
/* @__PURE__ */
|
|
1296
|
+
/* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h("label", {
|
|
1294
1297
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
1295
|
-
children:
|
|
1296
|
-
}), /* @__PURE__ */
|
|
1297
|
-
options:
|
|
1298
|
-
value:
|
|
1299
|
-
onChange:
|
|
1300
|
-
placeholder:
|
|
1301
|
-
searchPlaceholder:
|
|
1298
|
+
children: v("sessions.filterType", "Type")
|
|
1299
|
+
}), /* @__PURE__ */ h(Te, {
|
|
1300
|
+
options: jn,
|
|
1301
|
+
value: P,
|
|
1302
|
+
onChange: Nt,
|
|
1303
|
+
placeholder: v("sessions.selectType", "Select type"),
|
|
1304
|
+
searchPlaceholder: v("sessions.searchTypes", "Search types...")
|
|
1302
1305
|
})] }),
|
|
1303
|
-
/* @__PURE__ */
|
|
1306
|
+
/* @__PURE__ */ g("div", { children: [/* @__PURE__ */ h("label", {
|
|
1304
1307
|
className: "block text-sm font-medium text-text-primary mb-1",
|
|
1305
|
-
children:
|
|
1306
|
-
}), /* @__PURE__ */
|
|
1307
|
-
ref:
|
|
1308
|
+
children: v("sessions.command", "Command")
|
|
1309
|
+
}), /* @__PURE__ */ h("input", {
|
|
1310
|
+
ref: Et,
|
|
1308
1311
|
type: "text",
|
|
1309
|
-
placeholder:
|
|
1312
|
+
placeholder: v("sessions.commandPlaceholder", "bun run dev"),
|
|
1310
1313
|
className: "w-full px-3 py-2 bg-bg-sunken border border-border-default rounded-md text-text-primary placeholder:text-text-placeholder"
|
|
1311
1314
|
})] }),
|
|
1312
|
-
/* @__PURE__ */
|
|
1315
|
+
/* @__PURE__ */ g("div", {
|
|
1313
1316
|
className: "flex items-center gap-2",
|
|
1314
|
-
children: [/* @__PURE__ */
|
|
1315
|
-
ref:
|
|
1317
|
+
children: [/* @__PURE__ */ h("input", {
|
|
1318
|
+
ref: Dt,
|
|
1316
1319
|
type: "checkbox",
|
|
1317
1320
|
id: "autoStart",
|
|
1318
1321
|
className: "w-4 h-4 rounded border-border-default"
|
|
1319
|
-
}), /* @__PURE__ */
|
|
1322
|
+
}), /* @__PURE__ */ h("label", {
|
|
1320
1323
|
htmlFor: "autoStart",
|
|
1321
1324
|
className: "text-sm text-text-primary",
|
|
1322
|
-
children:
|
|
1325
|
+
children: v("sessions.autoStartWithVibe", "Auto-start with vibe")
|
|
1323
1326
|
})]
|
|
1324
1327
|
}),
|
|
1325
|
-
(
|
|
1328
|
+
(P === "TMUX" || P === "WEZTERM" || P === "ZELLIJ") && /* @__PURE__ */ g("div", {
|
|
1326
1329
|
className: "rounded-md border border-border-default bg-bg-sunken/40",
|
|
1327
1330
|
"data-testid": "sessions-create-advanced",
|
|
1328
|
-
children: [/* @__PURE__ */
|
|
1331
|
+
children: [/* @__PURE__ */ g("button", {
|
|
1329
1332
|
type: "button",
|
|
1330
|
-
onClick: () =>
|
|
1333
|
+
onClick: () => Ft((e) => !e),
|
|
1331
1334
|
className: "w-full flex items-center justify-between px-3 py-2 text-sm font-medium text-text-primary",
|
|
1332
|
-
"aria-expanded":
|
|
1333
|
-
children: [/* @__PURE__ */
|
|
1335
|
+
"aria-expanded": Pt,
|
|
1336
|
+
children: [/* @__PURE__ */ h("span", { children: v("sessions.advanced", "Advanced options") }), /* @__PURE__ */ h("span", {
|
|
1334
1337
|
className: "text-text-tertiary text-xs",
|
|
1335
|
-
children:
|
|
1338
|
+
children: Pt ? "▾" : "▸"
|
|
1336
1339
|
})]
|
|
1337
|
-
}),
|
|
1340
|
+
}), Pt && /* @__PURE__ */ g("div", {
|
|
1338
1341
|
className: "px-3 pb-3 space-y-2",
|
|
1339
1342
|
children: [
|
|
1340
|
-
/* @__PURE__ */
|
|
1343
|
+
/* @__PURE__ */ h("label", {
|
|
1341
1344
|
className: "block text-xs font-medium text-text-secondary",
|
|
1342
|
-
children:
|
|
1345
|
+
children: v("sessions.attachExistingLabel", "Attach to existing session (optional)")
|
|
1343
1346
|
}),
|
|
1344
|
-
/* @__PURE__ */
|
|
1345
|
-
ref:
|
|
1347
|
+
/* @__PURE__ */ h("input", {
|
|
1348
|
+
ref: Ot,
|
|
1346
1349
|
type: "text",
|
|
1347
1350
|
"data-testid": "sessions-create-external-name",
|
|
1348
|
-
placeholder:
|
|
1351
|
+
placeholder: P === "WEZTERM" ? "e.g. vibe-051c9c62 (existing wezterm workspace)" : P === "ZELLIJ" ? "e.g. vibe-051c9c62 (existing zellij session)" : "e.g. vibe-051c9c62 (existing tmux session)",
|
|
1349
1352
|
className: "w-full px-3 py-2 text-sm bg-bg-sunken border border-border-default rounded-md text-text-primary placeholder:text-text-placeholder font-mono"
|
|
1350
1353
|
}),
|
|
1351
|
-
/* @__PURE__ */
|
|
1354
|
+
/* @__PURE__ */ h("p", {
|
|
1352
1355
|
className: "text-xs text-text-tertiary",
|
|
1353
|
-
children:
|
|
1356
|
+
children: v("sessions.attachExistingHint", "When set, the agent attaches to that existing session instead of creating a new one. Leave blank to spawn fresh.")
|
|
1354
1357
|
})
|
|
1355
1358
|
]
|
|
1356
1359
|
})]
|
|
1357
1360
|
})
|
|
1358
1361
|
]
|
|
1359
1362
|
}),
|
|
1360
|
-
/* @__PURE__ */
|
|
1363
|
+
/* @__PURE__ */ g("div", {
|
|
1361
1364
|
className: "flex justify-end gap-3 mt-6",
|
|
1362
|
-
children: [/* @__PURE__ */
|
|
1363
|
-
onClick: () =>
|
|
1364
|
-
disabled:
|
|
1365
|
+
children: [/* @__PURE__ */ h("button", {
|
|
1366
|
+
onClick: () => E(!1),
|
|
1367
|
+
disabled: St,
|
|
1365
1368
|
className: "px-4 py-2 text-text-primary hover:bg-bg-sunken rounded-md transition-colors disabled:opacity-50",
|
|
1366
|
-
children:
|
|
1367
|
-
}), /* @__PURE__ */
|
|
1368
|
-
onClick:
|
|
1369
|
-
disabled:
|
|
1369
|
+
children: v("common.cancel", "Cancel")
|
|
1370
|
+
}), /* @__PURE__ */ h("button", {
|
|
1371
|
+
onClick: Hn,
|
|
1372
|
+
disabled: St,
|
|
1370
1373
|
className: "px-4 py-2 bg-action-primary-bg text-action-primary-text rounded-md hover:bg-action-primary-bg-hover transition-colors disabled:opacity-50",
|
|
1371
|
-
children:
|
|
1374
|
+
children: St ? v("sessions.creating", "Creating...") : v("sessions.createSession", "Create Session")
|
|
1372
1375
|
})]
|
|
1373
1376
|
})
|
|
1374
1377
|
]
|