+
-
+
diff --git a/tools/server/webui/src/lib/components/app/chat/ChatForm/ChatFormInputArea.svelte b/tools/server/webui/src/lib/components/app/chat/ChatForm/ChatFormInputArea.svelte
deleted file mode 100644
index 72e21b75c0..0000000000
--- a/tools/server/webui/src/lib/components/app/chat/ChatForm/ChatFormInputArea.svelte
+++ /dev/null
@@ -1,418 +0,0 @@
-
-
-
-
-
diff --git a/tools/server/webui/src/lib/components/app/chat/ChatMessages/ChatMessageEditForm.svelte b/tools/server/webui/src/lib/components/app/chat/ChatMessages/ChatMessageEditForm.svelte
index 2f0b3a1b01..7cf342d0e9 100644
--- a/tools/server/webui/src/lib/components/app/chat/ChatMessages/ChatMessageEditForm.svelte
+++ b/tools/server/webui/src/lib/components/app/chat/ChatMessages/ChatMessageEditForm.svelte
@@ -2,7 +2,7 @@
import { X, AlertTriangle } from '@lucide/svelte';
import { Button } from '$lib/components/ui/button';
import { Switch } from '$lib/components/ui/switch';
- import { ChatFormInputArea, DialogConfirmation } from '$lib/components/app';
+ import { ChatForm, DialogConfirmation } from '$lib/components/app';
import { chatStore } from '$lib/stores/chat.svelte';
import { processFilesToChatUploaded } from '$lib/utils/browser-only';
@@ -36,7 +36,7 @@
onEditedUploadedFilesChange
}: Props = $props();
- let inputAreaRef: ChatFormInputArea | undefined = $state(undefined);
+ let inputAreaRef: ChatForm | undefined = $state(undefined);
let saveWithoutRegenerate = $state(false);
let showDiscardDialog = $state(false);
@@ -126,7 +126,7 @@
-
- import ChatMessageActions from './ChatMessageActions.svelte';
- import McpPromptContent from '../McpPromptContent.svelte';
+ import { ChatMessageActions, ChatMessageMcpPromptContent } from '$lib/components/app';
import { MessageRole } from '$lib/enums';
import type { DatabaseMessageExtraMcpPrompt } from '$lib/types';
@@ -45,7 +44,7 @@
class="group flex flex-col items-end gap-3 md:gap-2 {className}"
role="group"
>
-
+
{#if message.timestamp}
diff --git a/tools/server/webui/src/lib/components/app/chat/McpPromptContent.svelte b/tools/server/webui/src/lib/components/app/chat/ChatMessages/ChatMessageMcpPromptContent.svelte
similarity index 100%
rename from tools/server/webui/src/lib/components/app/chat/McpPromptContent.svelte
rename to tools/server/webui/src/lib/components/app/chat/ChatMessages/ChatMessageMcpPromptContent.svelte
diff --git a/tools/server/webui/src/lib/components/app/chat/ChatScreen/ChatScreen.svelte b/tools/server/webui/src/lib/components/app/chat/ChatScreen/ChatScreen.svelte
index 19a58553f4..5fe8942cea 100644
--- a/tools/server/webui/src/lib/components/app/chat/ChatScreen/ChatScreen.svelte
+++ b/tools/server/webui/src/lib/components/app/chat/ChatScreen/ChatScreen.svelte
@@ -1,7 +1,7 @@
+
+
+
+
+
+
diff --git a/tools/server/webui/src/lib/components/app/chat/ChatSettings/ChatSettings.svelte b/tools/server/webui/src/lib/components/app/chat/ChatSettings/ChatSettings.svelte
index 7b52a992f3..d18cf602df 100644
--- a/tools/server/webui/src/lib/components/app/chat/ChatSettings/ChatSettings.svelte
+++ b/tools/server/webui/src/lib/components/app/chat/ChatSettings/ChatSettings.svelte
@@ -16,7 +16,7 @@
ChatSettingsImportExportTab,
ChatSettingsFields
} from '$lib/components/app';
- import McpLogo from '$lib/components/app/misc/McpLogo.svelte';
+ import McpLogo from '$lib/components/app/mcp/McpLogo.svelte';
import { ScrollArea } from '$lib/components/ui/scroll-area';
import { config, settingsStore } from '$lib/stores/settings.svelte';
import { setMode } from 'mode-watcher';
diff --git a/tools/server/webui/src/lib/components/app/index.ts b/tools/server/webui/src/lib/components/app/index.ts
index 0fc7780d80..8d3dd2b23e 100644
--- a/tools/server/webui/src/lib/components/app/index.ts
+++ b/tools/server/webui/src/lib/components/app/index.ts
@@ -14,7 +14,6 @@ export { default as ChatFormActions } from './chat/ChatForm/ChatFormActions/Chat
export { default as ChatFormActionSubmit } from './chat/ChatForm/ChatFormActions/ChatFormActionSubmit.svelte';
export { default as ChatFormFileInputInvisible } from './chat/ChatForm/ChatFormFileInputInvisible.svelte';
export { default as ChatFormHelperText } from './chat/ChatForm/ChatFormHelperText.svelte';
-export { default as ChatFormInputArea } from './chat/ChatForm/ChatFormInputArea.svelte';
export { default as ChatFormPromptPicker } from './chat/ChatForm/ChatFormPromptPicker.svelte';
export { default as ChatFormTextarea } from './chat/ChatForm/ChatFormTextarea.svelte';
@@ -24,15 +23,15 @@ export { default as ChatMessageActions } from './chat/ChatMessages/ChatMessageAc
export { default as ChatMessageBranchingControls } from './chat/ChatMessages/ChatMessageBranchingControls.svelte';
export { default as ChatMessageStatistics } from './chat/ChatMessages/ChatMessageStatistics.svelte';
export { default as ChatMessageMcpPrompt } from './chat/ChatMessages/ChatMessageMcpPrompt.svelte';
+export { default as ChatMessageMcpPromptContent } from './chat/ChatMessages/ChatMessageMcpPromptContent.svelte';
export { default as ChatMessageSystem } from './chat/ChatMessages/ChatMessageSystem.svelte';
export { default as ChatMessages } from './chat/ChatMessages/ChatMessages.svelte';
export { default as CollapsibleContentBlock } from './chat/ChatMessages/CollapsibleContentBlock.svelte';
export { default as MessageBranchingControls } from './chat/ChatMessages/ChatMessageBranchingControls.svelte';
-export { default as McpPromptContent } from './chat/McpPromptContent.svelte';
-
export { default as ChatScreen } from './chat/ChatScreen/ChatScreen.svelte';
-export { default as KeyValuePairs } from './misc/KeyValuePairs.svelte';
+export { default as ChatScreenForm } from './chat/ChatScreen/ChatScreenForm.svelte';
+
export { default as ChatScreenHeader } from './chat/ChatScreen/ChatScreenHeader.svelte';
export { default as ChatScreenProcessingInfo } from './chat/ChatScreen/ChatScreenProcessingInfo.svelte';
@@ -66,11 +65,11 @@ export { default as ActionButton } from './misc/ActionButton.svelte';
export { default as ActionDropdown } from './misc/ActionDropdown.svelte';
export { default as BadgeChatStatistic } from './misc/BadgeChatStatistic.svelte';
export { default as BadgeInfo } from './misc/BadgeInfo.svelte';
-export { default as McpLogo } from './misc/McpLogo.svelte';
export { default as BadgeModality } from './misc/BadgeModality.svelte';
export { default as ConversationSelection } from './misc/ConversationSelection.svelte';
export { default as CopyToClipboardIcon } from './misc/CopyToClipboardIcon.svelte';
export { default as KeyboardShortcutInfo } from './misc/KeyboardShortcutInfo.svelte';
+export { default as KeyValuePairs } from './misc/KeyValuePairs.svelte';
export { default as MarkdownContent } from './misc/MarkdownContent.svelte';
export { default as RemoveButton } from './misc/RemoveButton.svelte';
export { default as SearchInput } from './misc/SearchInput.svelte';
@@ -86,7 +85,7 @@ export { default as ModelsSelector } from './models/ModelsSelector.svelte';
// MCP
export { default as McpActiveServersAvatars } from './mcp/McpActiveServersAvatars.svelte';
-export { default as McpSelector } from './mcp/McpSelector.svelte';
+export { default as McpLogo } from './mcp/McpLogo.svelte';
export { default as McpSettingsSection } from './mcp/McpSettingsSection.svelte';
// Server
diff --git a/tools/server/webui/src/lib/components/app/misc/McpLogo.svelte b/tools/server/webui/src/lib/components/app/mcp/McpLogo.svelte
similarity index 100%
rename from tools/server/webui/src/lib/components/app/misc/McpLogo.svelte
rename to tools/server/webui/src/lib/components/app/mcp/McpLogo.svelte
diff --git a/tools/server/webui/src/lib/components/app/mcp/McpSelector.svelte b/tools/server/webui/src/lib/components/app/mcp/McpSelector.svelte
deleted file mode 100644
index f4a494c9bc..0000000000
--- a/tools/server/webui/src/lib/components/app/mcp/McpSelector.svelte
+++ /dev/null
@@ -1,199 +0,0 @@
-
-
-{#if hasMcpServers}
-
- {#snippet trigger()}
-
- {/snippet}
-
-
- {#if isLoading}
- {#each mcpServers as server (server.id)}
-