From 622f248ea272fb6b847be03bff086349d9f9d3dd Mon Sep 17 00:00:00 2001 From: Bryan Van Deusen Date: Sun, 11 Oct 2026 16:14:01 -0400 Subject: [PATCH] refactor: track lengths and file sizes come from the shared formatters on Missing files, Duplicates, a want's Releases and the app download; an hour-long track reads 1:01:05, not 61:05 (M505 #5639 #5640) Co-Authored-By: Claude Opus 5.5 --- web/src/lib/components/MobileAppDownload.svelte | 8 ++------ web/src/lib/components/WantCandidates.svelte | 10 +++------- web/src/routes/collection/duplicates/+page.svelte | 14 +++----------- .../collection/duplicates/duplicates.test.ts | 11 +++++++++++ web/src/routes/collection/missing/+page.svelte | 9 ++------- web/src/routes/collection/missing/missing.test.ts | 13 +++++++++++++ web/src/routes/settings/account/account.test.ts | 2 +- 7 files changed, 35 insertions(+), 32 deletions(-) diff --git a/web/src/lib/components/MobileAppDownload.svelte b/web/src/lib/components/MobileAppDownload.svelte index 19ee9e10..d43e47ad 100644 --- a/web/src/lib/components/MobileAppDownload.svelte +++ b/web/src/lib/components/MobileAppDownload.svelte @@ -2,6 +2,7 @@ import { onMount } from 'svelte'; import { Download, Smartphone } from 'lucide-svelte'; import { api } from '#lib/api/client.js'; + import { formatBytes } from '#lib/utils/bytes.js'; import SettingsGroup from '#lib/components/settings/SettingsGroup.svelte'; import SettingRow from '#lib/components/settings/SettingRow.svelte'; @@ -20,11 +21,6 @@ let info = $state(null); - function formatSize(bytes: number): string { - if (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(0)} KB`; - return `${(bytes / 1024 / 1024).toFixed(1)} MB`; - } - onMount(async () => { try { const body = await api.get>('/api/client/version'); @@ -44,7 +40,7 @@