From d8780e4de20d53ecf025a762f6b074429fcd4999 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Thu, 10 Apr 2025 10:36:57 -0700 Subject: [PATCH] feat: detect artifacts toggle --- .../chat/Messages/ContentRenderer.svelte | 3 +- .../components/chat/Settings/Interface.svelte | 30 +++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/src/lib/components/chat/Messages/ContentRenderer.svelte b/src/lib/components/chat/Messages/ContentRenderer.svelte index 21fb11d3a..d3a5812f7 100644 --- a/src/lib/components/chat/Messages/ContentRenderer.svelte +++ b/src/lib/components/chat/Messages/ContentRenderer.svelte @@ -4,7 +4,7 @@ const dispatch = createEventDispatcher(); import Markdown from './Markdown.svelte'; - import { chatId, mobile, showArtifacts, showControls, showOverview } from '$lib/stores'; + import { chatId, mobile, settings, showArtifacts, showControls, showOverview } from '$lib/stores'; import FloatingButtons from '../ContentRenderer/FloatingButtons.svelte'; import { createMessagesList } from '$lib/utils'; @@ -161,6 +161,7 @@ const { lang, code } = e.detail; if ( + ($settings?.detectArtifacts ?? true) && (['html', 'svg'].includes(lang) || (lang === 'xml' && code.includes('svg'))) && !$mobile && $chatId diff --git a/src/lib/components/chat/Settings/Interface.svelte b/src/lib/components/chat/Settings/Interface.svelte index 95c52a861..668cc9f90 100644 --- a/src/lib/components/chat/Settings/Interface.svelte +++ b/src/lib/components/chat/Settings/Interface.svelte @@ -32,6 +32,8 @@ let showUsername = false; let notificationSound = true; + let detectArtifacts = true; + let richTextInput = true; let promptAutocomplete = false; @@ -176,6 +178,11 @@ saveSettings({ autoTags }); }; + const toggleDetectArtifacts = async () => { + detectArtifacts = !detectArtifacts; + saveSettings({ detectArtifacts }); + }; + const toggleRichTextInput = async () => { richTextInput = !richTextInput; saveSettings({ richTextInput }); @@ -242,6 +249,7 @@ titleAutoGenerate = $settings?.title?.auto ?? true; autoTags = $settings.autoTags ?? true; + detectArtifacts = $settings.detectArtifacts ?? true; responseAutoCopy = $settings.responseAutoCopy ?? false; showUsername = $settings.showUsername ?? false; @@ -537,6 +545,28 @@ +
+
+
+ {$i18n.t('Detect Artifacts Automatically')} +
+ + +
+
+