From e92ce0791667b452980b6fb1b5198046a3e83674 Mon Sep 17 00:00:00 2001 From: Aleksander Grygier Date: Sun, 23 Nov 2025 23:23:38 +0100 Subject: [PATCH] refactor: Copy To Clipboard Icon component --- .../ChatMessages/ChatMessageAssistant.svelte | 14 +++++++------ .../app/dialogs/DialogModelInformation.svelte | 20 ++++++++----------- .../webui/src/lib/components/app/index.ts | 1 + .../app/misc/CopyToClipboardIcon.svelte | 18 +++++++++++++++++ 4 files changed, 35 insertions(+), 18 deletions(-) create mode 100644 tools/server/webui/src/lib/components/app/misc/CopyToClipboardIcon.svelte diff --git a/tools/server/webui/src/lib/components/app/chat/ChatMessages/ChatMessageAssistant.svelte b/tools/server/webui/src/lib/components/app/chat/ChatMessages/ChatMessageAssistant.svelte index af4a6fcfe5..0a110af02e 100644 --- a/tools/server/webui/src/lib/components/app/chat/ChatMessages/ChatMessageAssistant.svelte +++ b/tools/server/webui/src/lib/components/app/chat/ChatMessages/ChatMessageAssistant.svelte @@ -3,6 +3,7 @@ ChatMessageActions, ChatMessageStatistics, ChatMessageThinkingBlock, + CopyToClipboardIcon, MarkdownContent, SelectorModel } from '$lib/components/app'; @@ -10,7 +11,7 @@ import { isLoading } from '$lib/stores/chat.svelte'; import autoResizeTextarea from '$lib/utils/autoresize-textarea'; import { fade } from 'svelte/transition'; - import { Check, Copy, X, Wrench } from '@lucide/svelte'; + import { Check, X, Wrench } from '@lucide/svelte'; import { Button } from '$lib/components/ui/button'; import { Checkbox } from '$lib/components/ui/checkbox'; import { INPUT_CLASSES } from '$lib/constants/input-classes'; @@ -264,7 +265,7 @@ onclick={handleCopyModel} > {displayedModel()} - + {/if} @@ -297,8 +298,10 @@ onclick={() => handleCopyToolCall(badge.copyValue)} > {badge.label} - - + {/each} {:else if fallbackToolCalls} @@ -310,8 +313,7 @@ onclick={() => handleCopyToolCall(fallbackToolCalls)} > {fallbackToolCalls} - - + {/if} diff --git a/tools/server/webui/src/lib/components/app/dialogs/DialogModelInformation.svelte b/tools/server/webui/src/lib/components/app/dialogs/DialogModelInformation.svelte index ea963149ca..b45d054913 100644 --- a/tools/server/webui/src/lib/components/app/dialogs/DialogModelInformation.svelte +++ b/tools/server/webui/src/lib/components/app/dialogs/DialogModelInformation.svelte @@ -1,12 +1,10 @@ + + canCopy && copyToClipboard(text)} +/>