diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index de438a88b..5dabbb08c 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -151,6 +151,30 @@ .map((id) => ($models.find((model) => model.id === id) || {})?.filters ?? []) .reduce((acc, filters) => acc.filter((f1) => filters.some((f2) => f2.id === f1.id))); + let showToolsButton = false; + $: showToolsButton = toolServers.length + selectedToolIds.length > 0; + + let showWebSearchButton = false; + $: showWebSearchButton = + (atSelectedModel?.id ? [atSelectedModel.id] : selectedModels).length === + webSearchCapableModels.length && + $config?.features?.enable_web_search && + ($_user.role === 'admin' || $_user?.permissions?.features?.web_search); + + let showImageGenerationButton = false; + $: showImageGenerationButton = + (atSelectedModel?.id ? [atSelectedModel.id] : selectedModels).length === + imageGenerationCapableModels.length && + $config?.features?.enable_image_generation && + ($_user.role === 'admin' || $_user?.permissions?.features?.image_generation); + + let showCodeInterpreterButton = false; + $: showCodeInterpreterButton = + (atSelectedModel?.id ? [atSelectedModel.id] : selectedModels).length === + codeInterpreterCapableModels.length && + $config?.features?.enable_code_interpreter && + ($_user.role === 'admin' || $_user?.permissions?.features?.code_interpreter); + const scrollToBottom = () => { const element = document.getElementById('messages-container'); element.scrollTo({ @@ -1091,8 +1115,8 @@ {/if} -