diff --git a/src/app.css b/src/app.css index 4308385dbc..2ff440c6e7 100644 --- a/src/app.css +++ b/src/app.css @@ -409,8 +409,7 @@ input[type='number'] { outline: none; } -/* unlayered, so it beats outline-none utilities without ringing rich text editors */ -:focus-visible:not(.ProseMirror):not([contenteditable='true']) { +html.high-contrast .focus-ring:focus-visible { outline: 2px solid theme(--color-blue-500); outline-offset: 2px; } diff --git a/src/lib/components/chat/ModelSelector/ModelItem.svelte b/src/lib/components/chat/ModelSelector/ModelItem.svelte index 59dbf2a24d..5dcf24443a 100644 --- a/src/lib/components/chat/ModelSelector/ModelItem.svelte +++ b/src/lib/components/chat/ModelSelector/ModelItem.svelte @@ -52,7 +52,7 @@ role="option" aria-selected={isSelected} aria-label={$i18n.t('Select {{modelName}} model', { modelName: item.label })} - class="group/item flex h-8 w-full cursor-pointer select-none items-center rounded-xl px-2 text-left text-[0.8125rem] font-normal text-gray-700 outline-hidden transition-colors duration-75 hover:bg-gray-50/40 dark:text-gray-100 dark:hover:bg-gray-800/40 {index === + class="focus-ring group/item flex h-8 w-full cursor-pointer select-none items-center rounded-xl px-2 text-left text-[0.8125rem] font-normal text-gray-700 outline-hidden transition-colors duration-75 hover:bg-gray-50/40 dark:text-gray-100 dark:hover:bg-gray-800/40 {index === selectedModelIdx && !compareEnabled ? 'bg-gray-50/70 dark:bg-gray-800/60' : ''} {isSelected ? 'bg-gray-50/70 dark:bg-gray-800/60' : ''}" @@ -121,7 +121,8 @@ }`} className="self-end" > - {item.model.ollama?.details?.parameter_size ?? ''} @@ -250,7 +251,7 @@ className="flex-shrink-0 group-hover/item:opacity-100 opacity-0 " > { e.preventDefault(); @@ -275,7 +276,7 @@ > { e.preventDefault(); e.stopPropagation(); diff --git a/src/lib/components/chat/ModelSelector/Selector.svelte b/src/lib/components/chat/ModelSelector/Selector.svelte index c0247c7ffd..10b74676da 100644 --- a/src/lib/components/chat/ModelSelector/Selector.svelte +++ b/src/lib/components/chat/ModelSelector/Selector.svelte @@ -746,7 +746,7 @@ { show = false; showSettings.set('admin:connections'); @@ -900,7 +900,7 @@ { pullModelHandler(); }} @@ -987,7 +987,7 @@ { cancelModelPullHandler(model); @@ -1021,7 +1021,7 @@ {$i18n.t('Set as default')} diff --git a/src/lib/components/common/AccessButton.svelte b/src/lib/components/common/AccessButton.svelte index 49d4d98062..24a2b048a6 100644 --- a/src/lib/components/common/AccessButton.svelte +++ b/src/lib/components/common/AccessButton.svelte @@ -13,7 +13,7 @@ diff --git a/src/lib/components/common/Checkbox.svelte b/src/lib/components/common/Checkbox.svelte index a044974e97..6409f2cc57 100644 --- a/src/lib/components/common/Checkbox.svelte +++ b/src/lib/components/common/Checkbox.svelte @@ -15,7 +15,7 @@ {#each items as item} toggleItem(item.value)} > diff --git a/src/lib/components/common/Select.svelte b/src/lib/components/common/Select.svelte index e4f01e5138..efa8456d05 100644 --- a/src/lib/components/common/Select.svelte +++ b/src/lib/components/common/Select.svelte @@ -122,7 +122,7 @@ {#each items as item} - selectItem(item)}> + selectItem(item)}> {item.label} diff --git a/src/lib/components/common/SplitCreateButton.svelte b/src/lib/components/common/SplitCreateButton.svelte index 8da6fce4f4..00a701f3de 100644 --- a/src/lib/components/common/SplitCreateButton.svelte +++ b/src/lib/components/common/SplitCreateButton.svelte @@ -50,7 +50,7 @@ {#if visibleActions.length === 1} { runAction(primaryAction); @@ -63,7 +63,7 @@ class="ml-1 flex overflow-hidden rounded-lg bg-gray-50 text-xs text-gray-900 transition ring-1 ring-gray-200 dark:bg-gray-850 dark:text-gray-100 dark:ring-gray-800" > { runAction(primaryAction); }} @@ -73,7 +73,7 @@ diff --git a/src/lib/components/common/Switch.svelte b/src/lib/components/common/Switch.svelte index d3979a971f..1bfb6c3274 100644 --- a/src/lib/components/common/Switch.svelte +++ b/src/lib/components/common/Switch.svelte @@ -36,7 +36,7 @@ {id} aria-labelledby={ariaLabelledbyId || undefined} aria-label={ariaLabel || undefined} - class="relative h-4 min-h-4 w-7 shrink-0 cursor-pointer rounded-full mx-[0.0625rem] transition-colors duration-150 disabled:cursor-not-allowed {($settings?.highContrastMode ?? + class="focus-ring relative h-4 min-h-4 w-7 shrink-0 cursor-pointer rounded-full mx-[0.0625rem] transition-colors duration-150 disabled:cursor-not-allowed {($settings?.highContrastMode ?? false) ? 'focus:outline focus:outline-2 focus:outline-gray-800! focus:dark:outline-gray-200!' : ''} {state ? 'bg-gray-900 dark:bg-white' : 'bg-gray-300 dark:bg-gray-700'}"