diff --git a/tools/server/webui/src/lib/components/app/chat/ChatForm/ChatFormPromptPicker/ChatFormPromptPicker.svelte b/tools/server/webui/src/lib/components/app/chat/ChatForm/ChatFormPromptPicker/ChatFormPromptPicker.svelte index 7c9d76e38c..771ffb87b3 100644 --- a/tools/server/webui/src/lib/components/app/chat/ChatForm/ChatFormPromptPicker/ChatFormPromptPicker.svelte +++ b/tools/server/webui/src/lib/components/app/chat/ChatForm/ChatFormPromptPicker/ChatFormPromptPicker.svelte @@ -4,11 +4,11 @@ import { mcpStore } from '$lib/stores/mcp.svelte'; import { debounce } from '$lib/utils'; import type { MCPPromptInfo, GetPromptResult, MCPServerSettingsEntry } from '$lib/types'; - import { fly } from 'svelte/transition'; import { SvelteMap } from 'svelte/reactivity'; import ChatFormPromptPickerList from './ChatFormPromptPickerList.svelte'; import ChatFormPromptPickerHeader from './ChatFormPromptPickerHeader.svelte'; import ChatFormPromptPickerArgumentForm from './ChatFormPromptPickerArgumentForm.svelte'; + import * as Popover from '$lib/components/ui/popover'; interface Props { class?: string; @@ -320,50 +320,62 @@ let showSearchInput = $derived(prompts.length > 3); -{#if isOpen} - -
{ + if (!open) { + onClose?.(); + } + }} +> + + + e.preventDefault()} > -
- {#if selectedPrompt} - {@const server = serverSettingsMap.get(selectedPrompt.serverName)} - {@const serverLabel = server ? mcpStore.getServerLabel(server) : selectedPrompt.serverName} + {#if selectedPrompt} + {@const server = serverSettingsMap.get(selectedPrompt.serverName)} + {@const serverLabel = server ? mcpStore.getServerLabel(server) : selectedPrompt.serverName} -
- +
+ - -
- {:else} - mcpStore.getServerLabel(server)} - onPromptClick={handlePromptClick} + - {/if} -
-
-{/if} +
+ {:else} + mcpStore.getServerLabel(server)} + onPromptClick={handlePromptClick} + /> + {/if} + +