+
{$i18n.t('Image Max Compression Size')}
@@ -65,7 +71,7 @@
id="image-comp-width"
bind:value={size.width}
type="number"
- class="w-full bg-transparent outline-hidden text-center"
+ class="h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-center text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500"
min="0"
placeholder={$i18n.t('Width')}
/>
@@ -83,7 +89,7 @@
id="image-comp-height"
bind:value={size.height}
type="number"
- class="w-full bg-transparent outline-hidden text-center"
+ class="h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-center text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500"
min="0"
placeholder={$i18n.t('Height')}
/>
diff --git a/src/lib/components/chat/Settings/Personalization.svelte b/src/lib/components/chat/Settings/Personalization.svelte
index 67f84f25d4..f8b00cbb51 100644
--- a/src/lib/components/chat/Settings/Personalization.svelte
+++ b/src/lib/components/chat/Settings/Personalization.svelte
@@ -2,18 +2,27 @@
import Switch from '$lib/components/common/Switch.svelte';
import { config, settings } from '$lib/stores';
import { createEventDispatcher, onMount, getContext } from 'svelte';
+ import type { Writable } from 'svelte/store';
+ import type { i18n as i18nType } from 'i18next';
import Tooltip from '$lib/components/common/Tooltip.svelte';
import Spinner from '$lib/components/common/Spinner.svelte';
import ConfirmDialog from '$lib/components/common/ConfirmDialog.svelte';
+ import Dropdown from '$lib/components/common/Dropdown.svelte';
+ import DropdownMenu from '$lib/components/common/DropdownMenu.svelte';
import MemoryModal from './Personalization/MemoryModal.svelte';
import { deleteMemoriesByUserId, deleteMemoryById, getMemories } from '$lib/apis/memories';
import { toast } from 'svelte-sonner';
+ import UserSettingRow from './UserSettingRow.svelte';
+ import UserSettingSection from './UserSettingSection.svelte';
+ import ChevronDown from '$lib/components/icons/ChevronDown.svelte';
+ import Plus from '$lib/components/icons/Plus.svelte';
+ import Trash from '$lib/components/icons/Trash.svelte';
const dispatch = createEventDispatcher();
- const i18n = getContext('i18n');
+ const i18n = getContext
>('i18n');
- export let saveSettings: Function;
+ export let saveSettings: (settings: any) => void | Promise;
// Addons
let enableMemory = false;
@@ -25,6 +34,10 @@
let showClearConfirmDialog = false;
let showDeleteConfirm = false;
let query = '';
+ const inputClass =
+ 'h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500';
+ const actionButtonClass =
+ 'shrink-0 text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white';
type Memory = {
id: string;
@@ -90,7 +103,7 @@