From 1d11cf132b78e05c8f8e78fea12c0f0694abece5 Mon Sep 17 00:00:00 2001 From: Sam Chau Date: Thu, 29 Jan 2026 06:12:09 +1030 Subject: [PATCH] style: mobile improvements to quality profile tabs. Use sticky card for all pages, custom card view for scoring, better UX for quality ordering. fix:custom format scoring bug that would stop updated scores from propogating --- .../client/ui/dropdown/DropdownSelect.svelte | 3 +- .../client/ui/modal/SaveTargetModal.svelte | 2 +- .../[databaseId]/[id]/qualities/+page.svelte | 718 ++++++++++-------- .../[databaseId]/[id]/scoring/+page.svelte | 162 ++-- .../scoring/components/ScoringTable.svelte | 133 +--- .../components/ScoringTableDesktop.svelte | 113 +++ .../components/ScoringTableMobile.svelte | 99 +++ .../components/GeneralForm.svelte | 74 +- 8 files changed, 758 insertions(+), 546 deletions(-) create mode 100644 src/routes/quality-profiles/[databaseId]/[id]/scoring/components/ScoringTableDesktop.svelte create mode 100644 src/routes/quality-profiles/[databaseId]/[id]/scoring/components/ScoringTableMobile.svelte diff --git a/src/lib/client/ui/dropdown/DropdownSelect.svelte b/src/lib/client/ui/dropdown/DropdownSelect.svelte index 71bf1a5..b9834d6 100644 --- a/src/lib/client/ui/dropdown/DropdownSelect.svelte +++ b/src/lib/client/ui/dropdown/DropdownSelect.svelte @@ -12,6 +12,7 @@ export let placeholder: string = 'Select...'; export let minWidth: string = '8rem'; export let position: 'left' | 'right' | 'middle' = 'left'; + export let mobilePosition: 'left' | 'right' | 'middle' | null = null; // Separate compact controls - compact is shorthand for both export let compact: boolean = false; export let compactButton: boolean | undefined = undefined; @@ -96,7 +97,7 @@ on:click={() => !disabled && (open = !open)} /> {#if open} - + {#each options as option}