From 06eb1cada88d759c1d407133b6c82f2060697986 Mon Sep 17 00:00:00 2001 From: Marcel Date: Thu, 16 Apr 2026 12:28:20 +0200 Subject: [PATCH] refactor(#240): deduplicate formatDate, use generated types, always-visible strip MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add formatMCDate() to $lib/utils/date.ts (locale-aware, medium format); remove duplicated inline formatDate() from all three column components - Replace local TranscriptionQueueItemDTO/TranscriptionWeeklyStatsDTO type declarations with imports from $lib/generated/api across all four components - Add dashed empty states to SegmentationColumn and TranscriptionColumn (ReadyColumn already had one) - Remove outer {#if} from MissionControlStrip so the section is always visible — each column owns its own empty state Co-Authored-By: Claude Sonnet 4.6 --- .../lib/components/MissionControlStrip.svelte | 48 +++++++------------ .../src/lib/components/ReadyColumn.svelte | 22 ++------- .../lib/components/SegmentationColumn.svelte | 29 +++++------ .../lib/components/TranscriptionColumn.svelte | 29 +++++------ frontend/src/lib/utils/date.ts | 13 +++++ 5 files changed, 58 insertions(+), 83 deletions(-) diff --git a/frontend/src/lib/components/MissionControlStrip.svelte b/frontend/src/lib/components/MissionControlStrip.svelte index 52664b54..0601faf5 100644 --- a/frontend/src/lib/components/MissionControlStrip.svelte +++ b/frontend/src/lib/components/MissionControlStrip.svelte @@ -1,23 +1,12 @@ -{#if segmentationDocs.length > 0 || transcriptionDocs.length > 0 || readyDocs.length > 0} -
-

- {m.mission_control_heading()} -

-
- - - -
-
-{/if} +
+

+ {m.mission_control_heading()} +

+
+ + + +
+
diff --git a/frontend/src/lib/components/ReadyColumn.svelte b/frontend/src/lib/components/ReadyColumn.svelte index a1af2c4d..217e3ca9 100644 --- a/frontend/src/lib/components/ReadyColumn.svelte +++ b/frontend/src/lib/components/ReadyColumn.svelte @@ -1,15 +1,10 @@ {#if docs.length > 0} @@ -53,11 +40,19 @@ function formatDate(dateStr: string): string { > {doc.title} {#if doc.documentDate} - {formatDate(doc.documentDate)} + {formatMCDate(doc.documentDate, getLocale())} {/if} {/each} +{:else} +
+

{m.mission_control_segmentation_empty()}

+
{/if} diff --git a/frontend/src/lib/components/TranscriptionColumn.svelte b/frontend/src/lib/components/TranscriptionColumn.svelte index 4aec87e0..ef4b742b 100644 --- a/frontend/src/lib/components/TranscriptionColumn.svelte +++ b/frontend/src/lib/components/TranscriptionColumn.svelte @@ -1,15 +1,10 @@