From 99ceeadb83419cf522db90a7e3c8c7021b73c1d2 Mon Sep 17 00:00:00 2001 From: Duncan Tourolle Date: Sun, 16 Aug 2026 00:04:58 +0200 Subject: [PATCH] docs: regenerate the traceability matrix MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The generated matrix had drifted well behind the code — this pass picks up DR-171/UT-166 along with everything else that had accumulated since it was last run, which is why the diff is large for a mechanical regeneration. Coverage 87% (265/303), no orphaned IDs, comfortably above the workflow's 50% floor. No hand edits: `bun run traces:markdown` output as-is. --- docs/traceability.md | 8887 +++++++++++++++++++++++------------------- 1 file changed, 4850 insertions(+), 4037 deletions(-) diff --git a/docs/traceability.md b/docs/traceability.md index 62d9836c..977282f8 100644 --- a/docs/traceability.md +++ b/docs/traceability.md @@ -1,32 +1,32 @@ # Code Traceability Matrix -**Generated:** 8/11/2026, 7:21:40 PM +**Generated:** 8/16/2026, 12:03:52 AM ## Summary -- **Total Files Scanned:** 346 -- **Total TRACES Found:** 609 +- **Total Files Scanned:** 352 +- **Total TRACES Found:** 695 - **Requirements Covered:** - - User Requirements (UR): 67 - - Integration Requirements (IR): 18 - - Development Requirements (DR): 135 + - User Requirements (UR): 70 + - Integration Requirements (IR): 19 + - Development Requirements (DR): 148 - Jellyfin API Requirements (JA): 28 ## Requirements by Type ### User Requirements (UR) ``` -UR-002, UR-003, UR-004, UR-005, UR-007, UR-008, UR-009, UR-010, UR-011, UR-012, UR-013, UR-014, UR-015, UR-016, UR-017, UR-018, UR-019, UR-020, UR-021, UR-022, UR-023, UR-024, UR-025, UR-026, UR-027, UR-028, UR-029, UR-030, UR-031, UR-032, UR-033, UR-034, UR-035, UR-036, UR-038, UR-039, UR-040, UR-041, UR-042, UR-043, UR-044, UR-045, UR-046, UR-047, UR-048, UR-049, UR-050, UR-051, UR-052, UR-053, UR-054, UR-055, UR-056, UR-057, UR-058, UR-059, UR-060, UR-061, UR-062, UR-063, UR-064, UR-065, UR-066, UR-067, UR-068, UR-069, UR-071 +UR-002, UR-003, UR-004, UR-005, UR-007, UR-008, UR-009, UR-010, UR-011, UR-012, UR-013, UR-014, UR-015, UR-016, UR-017, UR-018, UR-019, UR-020, UR-021, UR-022, UR-023, UR-024, UR-025, UR-026, UR-027, UR-028, UR-029, UR-030, UR-031, UR-032, UR-033, UR-034, UR-035, UR-036, UR-038, UR-039, UR-040, UR-041, UR-042, UR-043, UR-044, UR-045, UR-046, UR-047, UR-048, UR-049, UR-050, UR-051, UR-052, UR-053, UR-054, UR-055, UR-056, UR-057, UR-058, UR-059, UR-060, UR-061, UR-062, UR-063, UR-064, UR-065, UR-066, UR-067, UR-068, UR-069, UR-071, UR-072, UR-073, UR-074 ``` ### Integration Requirements (IR) ``` -IR-003, IR-004, IR-009, IR-010, IR-011, IR-012, IR-013, IR-014, IR-015, IR-016, IR-020, IR-023, IR-025, IR-026, IR-027, IR-028, IR-030, IR-031 +IR-003, IR-004, IR-009, IR-010, IR-011, IR-012, IR-013, IR-014, IR-015, IR-016, IR-020, IR-021, IR-023, IR-025, IR-026, IR-027, IR-028, IR-030, IR-031 ``` ### Development Requirements (DR) ``` -DR-001, DR-002, DR-003, DR-004, DR-005, DR-006, DR-007, DR-009, DR-010, DR-011, DR-012, DR-013, DR-014, DR-015, DR-016, DR-017, DR-018, DR-020, DR-021, DR-022, DR-023, DR-024, DR-025, DR-026, DR-027, DR-028, DR-029, DR-030, DR-032, DR-033, DR-034, DR-035, DR-036, DR-037, DR-038, DR-039, DR-040, DR-041, DR-043, DR-044, DR-045, DR-047, DR-048, DR-049, DR-050, DR-051, DR-052, DR-053, DR-054, DR-055, DR-056, DR-057, DR-058, DR-059, DR-060, DR-061, DR-062, DR-063, DR-064, DR-065, DR-066, DR-067, DR-068, DR-069, DR-070, DR-074, DR-075, DR-076, DR-077, DR-078, DR-079, DR-080, DR-081, DR-082, DR-083, DR-084, DR-085, DR-086, DR-087, DR-088, DR-089, DR-090, DR-091, DR-092, DR-093, DR-095, DR-096, DR-097, DR-098, DR-099, DR-100, DR-101, DR-102, DR-103, DR-104, DR-105, DR-106, DR-107, DR-108, DR-109, DR-110, DR-111, DR-112, DR-113, DR-114, DR-115, DR-116, DR-117, DR-118, DR-119, DR-120, DR-123, DR-126, DR-127, DR-128, DR-129, DR-130, DR-131, DR-132, DR-133, DR-134, DR-135, DR-136, DR-137, DR-140, DR-141, DR-142, DR-143, DR-147, DR-148, DR-149, DR-150, DR-151, DR-152, DR-153 +DR-001, DR-002, DR-003, DR-004, DR-005, DR-006, DR-007, DR-009, DR-010, DR-011, DR-012, DR-013, DR-014, DR-015, DR-016, DR-017, DR-018, DR-020, DR-021, DR-022, DR-023, DR-024, DR-025, DR-026, DR-027, DR-028, DR-029, DR-030, DR-032, DR-033, DR-034, DR-035, DR-036, DR-037, DR-038, DR-039, DR-040, DR-041, DR-043, DR-044, DR-045, DR-047, DR-048, DR-049, DR-050, DR-051, DR-052, DR-053, DR-054, DR-055, DR-056, DR-057, DR-058, DR-059, DR-060, DR-061, DR-062, DR-063, DR-064, DR-065, DR-066, DR-067, DR-068, DR-069, DR-070, DR-074, DR-075, DR-076, DR-077, DR-078, DR-079, DR-080, DR-081, DR-082, DR-083, DR-084, DR-085, DR-086, DR-087, DR-088, DR-089, DR-090, DR-091, DR-092, DR-093, DR-095, DR-096, DR-097, DR-098, DR-099, DR-100, DR-101, DR-102, DR-103, DR-104, DR-105, DR-106, DR-107, DR-108, DR-109, DR-110, DR-111, DR-112, DR-113, DR-114, DR-115, DR-116, DR-117, DR-118, DR-119, DR-120, DR-123, DR-126, DR-127, DR-128, DR-129, DR-130, DR-131, DR-132, DR-133, DR-134, DR-135, DR-136, DR-137, DR-140, DR-141, DR-142, DR-143, DR-147, DR-148, DR-149, DR-150, DR-151, DR-152, DR-153, DR-154, DR-155, DR-156, DR-157, DR-158, DR-159, DR-160, DR-162, DR-167, DR-168, DR-169, DR-170, DR-171 ``` ### Jellyfin API Requirements (JA) @@ -82,10 +82,10 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1) +- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1) +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1) - **Line:** 1 - **Context:** `Unknown` @@ -112,15 +112,15 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 3 file(s) -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L8) - - **Line:** 8 - - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - **Line:** 3 - **Context:** `Unknown` - **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L8) + - **Line:** 8 + - **Context:** `Unknown` ### IR-014 @@ -138,12 +138,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L445) - **Line:** 445 - **Context:** `Unknown` -- **File:** [`src-tauri/src/credentials.rs`](src-tauri/src/credentials.rs#L10) - - **Line:** 10 - - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/auth.rs`](src-tauri/src/commands/auth.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/credentials.rs`](src-tauri/src/credentials.rs#L10) + - **Line:** 10 + - **Context:** `Unknown` ### IR-015 @@ -157,6 +157,18 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 16 file(s) +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2351) + - **Line:** 2351 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2969) + - **Line:** 2969 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L159) + - **Line:** 159 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L282) + - **Line:** 282 + - **Context:** `Unknown` - **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) - **Line:** 20 - **Context:** `Unknown` @@ -166,26 +178,14 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L218) - **Line:** 218 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L159) - - **Line:** 159 +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L362) + - **Line:** 362 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L282) - - **Line:** 282 +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L703) + - **Line:** 703 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L315) - - **Line:** 315 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L635) - - **Line:** 635 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1812) - - **Line:** 1812 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2262) - - **Line:** 2262 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2842) - - **Line:** 2842 +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L2004) + - **Line:** 2004 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L42) - **Line:** 42 @@ -193,29 +193,23 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L223) - **Line:** 223 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L399) - - **Line:** 399 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L422) + - **Line:** 422 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2538) - - **Line:** 2538 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2681) + - **Line:** 2681 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2595) - - **Line:** 2595 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2738) + - **Line:** 2738 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2627) - - **Line:** 2627 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2770) + - **Line:** 2770 - **Context:** `Unknown` ### IR-020 **Locations:** 8 file(s) -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L33) - - **Line:** 33 - - **Context:** `Unknown` - **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L658) - **Line:** 658 - **Context:** `Unknown` @@ -234,6 +228,20 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L33) + - **Line:** 33 + - **Context:** `Unknown` + +### IR-021 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/playback_mode/mod.rs`](src-tauri/src/playback_mode/mod.rs#L165) + - **Line:** 165 + - **Context:** `Unknown` ### IR-023 @@ -247,12 +255,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src/lib/utils/backgroundAudio.ts`](src/lib/utils/backgroundAudio.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` - **File:** [`src/lib/utils/backgroundAudio.test.ts`](src/lib/utils/backgroundAudio.test.ts#L7) - **Line:** 7 - **Context:** `Unknown` +- **File:** [`src/lib/utils/backgroundAudio.ts`](src/lib/utils/backgroundAudio.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` ### IR-026 @@ -285,8 +293,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L326) - **Line:** 326 - **Context:** `Unknown` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1334) - - **Line:** 1334 +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1369) + - **Line:** 1369 - **Context:** `Unknown` ### IR-031 @@ -304,17 +312,17 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 17 file(s) -- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) - - **Line:** 15 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2559) + - **Line:** 2559 - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/rustReportHost.ts`](src/lib/player/adapters/rustReportHost.ts#L13) - - **Line:** 13 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2616) + - **Line:** 2616 - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) - - **Line:** 19 +- **File:** [`src/lib/stores/player.ts`](src/lib/stores/player.ts#L8) + - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L15) - - **Line:** 15 +- **File:** [`src/lib/stores/player.ts`](src/lib/stores/player.ts#L31) + - **Line:** 31 - **Context:** `Unknown` - **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) - **Line:** 4 @@ -328,17 +336,17 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L186) - **Line:** 186 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2470) - - **Line:** 2470 +- **File:** [`src/lib/player/adapters/rustReportHost.ts`](src/lib/player/adapters/rustReportHost.ts#L13) + - **Line:** 13 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2527) - - **Line:** 2527 +- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) + - **Line:** 15 - **Context:** `Unknown` -- **File:** [`src/lib/stores/player.ts`](src/lib/stores/player.ts#L8) - - **Line:** 8 +- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) + - **Line:** 19 - **Context:** `Unknown` -- **File:** [`src/lib/stores/player.ts`](src/lib/stores/player.ts#L31) - - **Line:** 31 +- **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L15) + - **Line:** 15 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/state.rs`](src-tauri/src/player/state.rs#L7) - **Line:** 7 @@ -360,8 +368,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2348) - - **Line:** 2348 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2437) + - **Line:** 2437 - **Context:** `export type PlaybackProgress = { itemId: string;` - **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L60) - **Line:** 60 @@ -371,8 +379,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2452) - - **Line:** 2452 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2541) + - **Line:** 2541 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L142) - **Line:** 142 @@ -380,16 +388,16 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, ### DR-004 -**Locations:** 14 file(s) +**Locations:** 16 file(s) -- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L24) - - **Line:** 24 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L149) + - **Line:** 149 - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/webviewAudioAdapter.ts`](src/lib/player/adapters/webviewAudioAdapter.ts#L18) - - **Line:** 18 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2401) + - **Line:** 2401 - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L20) - - **Line:** 20 +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L801) + - **Line:** 801 - **Context:** `Unknown` - **File:** [`src/lib/services/playbackCapabilities.ts`](src/lib/services/playbackCapabilities.ts#L4) - **Line:** 4 @@ -397,17 +405,17 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/services/webviewAudio.ts`](src/lib/services/webviewAudio.ts#L18) - **Line:** 18 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L149) - - **Line:** 149 +- **File:** [`src/lib/player/adapters/webviewAudioAdapter.ts`](src/lib/player/adapters/webviewAudioAdapter.ts#L18) + - **Line:** 18 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2312) - - **Line:** 2312 +- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L20) + - **Line:** 20 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L25) - - **Line:** 25 +- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L24) + - **Line:** 24 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L184) - - **Line:** 184 +- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L57) + - **Line:** 57 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L39) - **Line:** 39 @@ -418,22 +426,28 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L251) - **Line:** 251 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1664) - - **Line:** 1664 +- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L25) + - **Line:** 25 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1681) - - **Line:** 1681 +- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L184) + - **Line:** 184 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1807) + - **Line:** 1807 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1824) + - **Line:** 1824 - **Context:** `Unknown` ### DR-005 **Locations:** 13 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2724) - - **Line:** 2724 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2813) + - **Line:** 2813 - **Context:** `export type RemoteSessionStatus = { position: number; duration: number...` -- **File:** [`src/lib/stores/appState.ts`](src/lib/stores/appState.ts#L2) - - **Line:** 2 +- **File:** [`src/lib/stores/queue.test.ts`](src/lib/stores/queue.test.ts#L4) + - **Line:** 4 - **Context:** `Unknown` - **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L7) - **Line:** 7 @@ -453,8 +467,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L125) - **Line:** 125 - **Context:** `async function toggleShuffle() {` -- **File:** [`src/lib/stores/queue.test.ts`](src/lib/stores/queue.test.ts#L4) - - **Line:** 4 +- **File:** [`src/lib/stores/appState.ts`](src/lib/stores/appState.ts#L2) + - **Line:** 2 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L8) - **Line:** 8 @@ -473,61 +487,49 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src/lib/services/preload.test.ts`](src/lib/services/preload.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` - **File:** [`src/lib/services/preload.ts`](src/lib/services/preload.ts#L5) - **Line:** 5 - **Context:** `Unknown` +- **File:** [`src/lib/services/preload.test.ts`](src/lib/services/preload.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` ### DR-007 **Locations:** 9 file(s) +- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` - **File:** [`src/routes/library/movies/+page.svelte`](src/routes/library/movies/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` - **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` - **File:** [`src/lib/components/library/AlphabetScrollBar.svelte`](src/lib/components/library/AlphabetScrollBar.svelte#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L1) - **Line:** 1 - **Context:** `Unknown` +- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/music.ts`](src/lib/stores/music.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` - **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) - **Line:** 3 - **Context:** `Unknown` - **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L2) - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src/lib/stores/music.ts`](src/lib/stores/music.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` ### DR-009 **Locations:** 12 file(s) -- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L17) - - **Line:** 17 - - **Context:** `Unknown` -- **File:** [`src/lib/utils/layoutShell.test.ts`](src/lib/utils/layoutShell.test.ts#L14) - - **Line:** 14 - - **Context:** `Unknown` -- **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L15) - - **Line:** 15 - - **Context:** `Unknown` -- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L23) - - **Line:** 23 - - **Context:** `Unknown` - **File:** [`src/lib/components/player/Controls.svelte`](src/lib/components/player/Controls.svelte#L1) - **Line:** 1 - **Context:** `Unknown` @@ -537,21 +539,33 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/player/AudioPlayer.svelte`](src/lib/components/player/AudioPlayer.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/stores/player.ts`](src/lib/stores/player.ts#L8) - - **Line:** 8 +- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L23) + - **Line:** 23 - **Context:** `Unknown` - **File:** [`src/lib/stores/appState.ts`](src/lib/stores/appState.ts#L2) - **Line:** 2 - **Context:** `Unknown` +- **File:** [`src/lib/stores/player.ts`](src/lib/stores/player.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` - **File:** [`src/lib/stores/playerVisibility.test.ts`](src/lib/stores/playerVisibility.test.ts#L9) - **Line:** 9 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/conversions.rs`](src-tauri/src/commands/conversions.rs#L3) - - **Line:** 3 +- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L17) + - **Line:** 17 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/layoutShell.test.ts`](src/lib/utils/layoutShell.test.ts#L14) + - **Line:** 14 + - **Context:** `Unknown` +- **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L15) + - **Line:** 15 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/player/session.rs`](src-tauri/src/commands/player/session.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/conversions.rs`](src-tauri/src/commands/conversions.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` ### DR-010 @@ -565,24 +579,24 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 9 file(s) +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L615) + - **Line:** 615 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L631) + - **Line:** 631 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/services/deviceId.test.ts`](src/lib/services/deviceId.test.ts#L7) + - **Line:** 7 + - **Context:** `Unknown` - **File:** [`src/lib/services/deviceId.ts`](src/lib/services/deviceId.ts#L8) - **Line:** 8 - **Context:** `Unknown` - **File:** [`src/lib/services/deviceId.ts`](src/lib/services/deviceId.ts#L23) - **Line:** 23 - **Context:** `Unknown` -- **File:** [`src/lib/services/deviceId.test.ts`](src/lib/services/deviceId.test.ts#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L581) - - **Line:** 581 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L597) - - **Line:** 597 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/device.rs`](src-tauri/src/commands/device.rs#L4) - **Line:** 4 - **Context:** `Unknown` @@ -597,18 +611,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 7 file(s) -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3) +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - **Line:** 3 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L8) - - **Line:** 8 - - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L3) - **Line:** 3 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` - **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - **Line:** 311 - **Context:** `Unknown` @@ -618,6 +626,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` ### DR-013 @@ -626,18 +640,18 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L10) - **Line:** 10 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3) +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - **Line:** 3 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L8) - **Line:** 8 - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` ### DR-014 @@ -646,11 +660,11 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L7) - **Line:** 7 - **Context:** `Unknown` -- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L57) - - **Line:** 57 +- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L58) + - **Line:** 58 - **Context:** `Unknown` -- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L172) - - **Line:** 172 +- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L191) + - **Line:** 191 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L7) - **Line:** 7 @@ -660,35 +674,35 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 6 file(s) -- **File:** [`src/lib/utils/validation.test.ts`](src/lib/utils/validation.test.ts#L4) - - **Line:** 4 +- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L2) + - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src/lib/services/preload.test.ts`](src/lib/services/preload.test.ts#L4) +- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/validation.test.ts`](src/lib/utils/validation.test.ts#L4) - **Line:** 4 - **Context:** `Unknown` - **File:** [`src/lib/services/preload.ts`](src/lib/services/preload.ts#L5) - **Line:** 5 - **Context:** `Unknown` -- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) - - **Line:** 2 +- **File:** [`src/lib/services/preload.test.ts`](src/lib/services/preload.test.ts#L4) + - **Line:** 4 - **Context:** `Unknown` -- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2040) - - **Line:** 2040 +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2113) + - **Line:** 2113 - **Context:** `Unknown` ### DR-016 **Locations:** 3 file(s) -- **File:** [`src/lib/services/imageCache.ts`](src/lib/services/imageCache.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` - **File:** [`src/lib/services/imageCache.test.ts`](src/lib/services/imageCache.test.ts#L4) - **Line:** 4 - **Context:** `Unknown` +- **File:** [`src/lib/services/imageCache.ts`](src/lib/services/imageCache.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/storage/thumbnails.rs`](src-tauri/src/commands/storage/thumbnails.rs#L3) - **Line:** 3 - **Context:** `Unknown` @@ -697,10 +711,10 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 3 file(s) -- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) +- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L2) - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L2) +- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) - **Line:** 2 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/offline.rs`](src-tauri/src/commands/offline.rs#L136) @@ -711,14 +725,17 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 1 file(s) -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2040) - - **Line:** 2040 +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2113) + - **Line:** 2113 - **Context:** `Unknown` ### DR-020 **Locations:** 8 file(s) +- **File:** [`src/lib/stores/queue.test.ts`](src/lib/stores/queue.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` - **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L7) - **Line:** 7 - **Context:** `Unknown` @@ -734,9 +751,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L140) - **Line:** 140 - **Context:** `async function moveInQueue(fromIndex: number, toIndex: number) {` -- **File:** [`src/lib/stores/queue.test.ts`](src/lib/stores/queue.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` - **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L20) - **Line:** 20 - **Context:** `pub enum RepeatMode {` @@ -770,67 +784,67 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 12 file(s) +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L149) + - **Line:** 149 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2401) + - **Line:** 2401 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L18) + - **Line:** 18 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) + - **Line:** 20 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L353) + - **Line:** 353 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1971) + - **Line:** 1971 + - **Context:** `function toggleSubtitleMenu() {` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L2004) + - **Line:** 2004 + - **Context:** `Unknown` - **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) - **Line:** 15 - **Context:** `Unknown` - **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) - **Line:** 19 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) - - **Line:** 20 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1807) + - **Line:** 1807 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L18) - - **Line:** 18 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L306) - - **Line:** 306 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1779) - - **Line:** 1779 - - **Context:** `function toggleSubtitleMenu() {` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1812) - - **Line:** 1812 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L149) - - **Line:** 149 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2312) - - **Line:** 2312 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1664) - - **Line:** 1664 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1681) - - **Line:** 1681 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1824) + - **Line:** 1824 - **Context:** `Unknown` ### DR-024 **Locations:** 8 file(s) +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L149) + - **Line:** 149 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2401) + - **Line:** 2401 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` - **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) - **Line:** 15 - **Context:** `Unknown` - **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) - **Line:** 19 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1807) + - **Line:** 1807 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L149) - - **Line:** 149 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2312) - - **Line:** 2312 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1664) - - **Line:** 1664 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1681) - - **Line:** 1681 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1824) + - **Line:** 1824 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/storage/series_prefs.rs`](src-tauri/src/commands/storage/series_prefs.rs#L3) - **Line:** 3 @@ -868,22 +882,28 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, ### DR-028 -**Locations:** 18 file(s) +**Locations:** 20 file(s) +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2616) + - **Line:** 2616 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L801) + - **Line:** 801 + - **Context:** `Unknown` - **File:** [`src/lib/utils/duration.test.ts`](src/lib/utils/duration.test.ts#L4) - **Line:** 4 - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) - - **Line:** 15 +- **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) + - **Line:** 4 - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L24) - - **Line:** 24 +- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4) + - **Line:** 4 - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/rustReportHost.ts`](src/lib/player/adapters/rustReportHost.ts#L13) - - **Line:** 13 +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) + - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) - - **Line:** 19 +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L156) + - **Line:** 156 - **Context:** `Unknown` - **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10) - **Line:** 10 @@ -900,20 +920,20 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L122) - **Line:** 122 - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) - - **Line:** 4 +- **File:** [`src/lib/player/adapters/rustReportHost.ts`](src/lib/player/adapters/rustReportHost.ts#L13) + - **Line:** 13 - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) - - **Line:** 8 +- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) + - **Line:** 15 - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L156) - - **Line:** 156 +- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) + - **Line:** 19 - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4) - - **Line:** 4 +- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L24) + - **Line:** 24 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2527) - - **Line:** 2527 +- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L57) + - **Line:** 57 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L6) - **Line:** 6 @@ -929,30 +949,30 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 10 file(s) +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2873) + - **Line:** 2873 + - **Context:** `export type SessionInfo = { id?: string | null; userId?: string | null...` - **File:** [`src/lib/components/player/SleepTimerModal.svelte`](src/lib/components/player/SleepTimerModal.svelte#L1) - **Line:** 1 - **Context:** `Unknown` +- **File:** [`src/lib/stores/sleepTimer.ts`](src/lib/stores/sleepTimer.ts#L10) + - **Line:** 10 + - **Context:** `Unknown` - **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L264) - **Line:** 264 - **Context:** `function handleMediaLoaded(duration: number): void {` - **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L324) - **Line:** 324 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2784) - - **Line:** 2784 - - **Context:** `export type SessionInfo = { id?: string | null; userId?: string | null...` -- **File:** [`src/lib/stores/sleepTimer.ts`](src/lib/stores/sleepTimer.ts#L10) - - **Line:** 10 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/autoplay.rs`](src-tauri/src/player/autoplay.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` - **File:** [`src-tauri/src/player/sleep_timer.rs`](src-tauri/src/player/sleep_timer.rs#L4) - **Line:** 4 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/sleep_timer.rs`](src-tauri/src/player/sleep_timer.rs#L81) - **Line:** 81 - **Context:** `pub fn cancel(&mut self) {` +- **File:** [`src-tauri/src/player/autoplay.rs`](src-tauri/src/player/autoplay.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` - **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L328) - **Line:** 328 - **Context:** `Unknown` @@ -970,8 +990,20 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L189) - **Line:** 189 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1939) - - **Line:** 1939 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2028) + - **Line:** 2028 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L563) + - **Line:** 563 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L601) + - **Line:** 601 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L50) + - **Line:** 50 - **Context:** `Unknown` - **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) - **Line:** 1 @@ -985,38 +1017,26 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L140) - **Line:** 140 - **Context:** `pub fn with_crossfade_clamped(mut self) -> Self {` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L193) - - **Line:** 193 +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L334) + - **Line:** 334 - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L210) - - **Line:** 210 +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L351) + - **Line:** 351 - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L234) - - **Line:** 234 +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L375) + - **Line:** 375 - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L270) - - **Line:** 270 +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L411) + - **Line:** 411 - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L299) - - **Line:** 299 +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L440) + - **Line:** 440 - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L326) - - **Line:** 326 +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L467) + - **Line:** 467 - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L337) - - **Line:** 337 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L563) - - **Line:** 563 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L601) - - **Line:** 601 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L33) - - **Line:** 33 +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L478) + - **Line:** 478 - **Context:** `Unknown` ### DR-032 @@ -1042,29 +1062,17 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` ### DR-035 **Locations:** 7 file(s) -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L193) - - **Line:** 193 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L210) - - **Line:** 210 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L234) - - **Line:** 234 - - **Context:** `Unknown` - **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L563) - **Line:** 563 - **Context:** `Unknown` @@ -1074,23 +1082,23 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L334) + - **Line:** 334 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L351) + - **Line:** 351 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L375) + - **Line:** 375 + - **Context:** `Unknown` ### DR-036 **Locations:** 12 file(s) -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L193) - - **Line:** 193 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L210) - - **Line:** 210 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L234) - - **Line:** 234 - - **Context:** `Unknown` - **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L563) - **Line:** 563 - **Context:** `Unknown` @@ -1115,41 +1123,53 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L334) + - **Line:** 334 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L351) + - **Line:** 351 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L375) + - **Line:** 375 + - **Context:** `Unknown` ### DR-037 **Locations:** 12 file(s) -- **File:** [`src/lib/components/sessions/SessionPickerModal.svelte`](src/lib/components/sessions/SessionPickerModal.svelte#L1) +- **File:** [`src/lib/components/sessions/SessionCard.svelte`](src/lib/components/sessions/SessionCard.svelte#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/components/sessions/SessionsList.svelte`](src/lib/components/sessions/SessionsList.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/components/sessions/SessionCard.svelte`](src/lib/components/sessions/SessionCard.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` - **File:** [`src/lib/components/sessions/RemoteControls.svelte`](src/lib/components/sessions/RemoteControls.svelte#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/components/sessions/CastButton.svelte`](src/lib/components/sessions/CastButton.svelte#L1) - **Line:** 1 - **Context:** `Unknown` +- **File:** [`src/lib/components/sessions/SessionPickerModal.svelte`](src/lib/components/sessions/SessionPickerModal.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` - **File:** [`src/lib/stores/sessions.test.ts`](src/lib/stores/sessions.test.ts#L2) - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src/lib/stores/playbackMode.ts`](src/lib/stores/playbackMode.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/playbackMode.test.ts`](src/lib/stores/playbackMode.test.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` - **File:** [`src/lib/stores/sessions.ts`](src/lib/stores/sessions.ts#L2) - **Line:** 2 - **Context:** `Unknown` - **File:** [`src/lib/stores/lmsSync.ts`](src/lib/stores/lmsSync.ts#L12) - **Line:** 12 - **Context:** `Unknown` +- **File:** [`src/lib/stores/playbackMode.ts`](src/lib/stores/playbackMode.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/playbackMode.test.ts`](src/lib/stores/playbackMode.test.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/player/remote.rs`](src-tauri/src/commands/player/remote.rs#L3) - **Line:** 3 - **Context:** `Unknown` @@ -1161,71 +1181,71 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 9 file(s) +- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` - **File:** [`src/routes/library/movies/+page.svelte`](src/routes/library/movies/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` - **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/utils/heroMix.ts`](src/lib/utils/heroMix.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` - **File:** [`src/lib/components/home/HeroBanner.svelte`](src/lib/components/home/HeroBanner.svelte#L1) - **Line:** 1 - **Context:** `Unknown` +- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/music.ts`](src/lib/stores/music.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` - **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) - **Line:** 3 - **Context:** `Unknown` - **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src/lib/stores/music.ts`](src/lib/stores/music.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) - - **Line:** 3 +- **File:** [`src/lib/utils/heroMix.ts`](src/lib/utils/heroMix.ts#L8) + - **Line:** 8 - **Context:** `Unknown` ### DR-039 **Locations:** 8 file(s) +- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` - **File:** [`src/routes/library/movies/+page.svelte`](src/routes/library/movies/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` - **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` - **File:** [`src/lib/components/home/Carousel.svelte`](src/lib/components/home/Carousel.svelte#L1) - **Line:** 1 - **Context:** `Unknown` +- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/music.ts`](src/lib/stores/music.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` - **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) - **Line:** 3 - **Context:** `Unknown` - **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src/lib/stores/music.ts`](src/lib/stores/music.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` ### DR-040 **Locations:** 3 file(s) -- **File:** [`src/lib/components/library/CrewLinks.svelte`](src/lib/components/library/CrewLinks.svelte#L1) +- **File:** [`src/lib/components/library/CastSection.svelte`](src/lib/components/library/CastSection.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/CastSection.svelte`](src/lib/components/library/CastSection.svelte#L1) +- **File:** [`src/lib/components/library/CrewLinks.svelte`](src/lib/components/library/CrewLinks.svelte#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L3) @@ -1271,13 +1291,22 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 15 file(s) -- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10) - - **Line:** 10 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L283) + - **Line:** 283 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2616) + - **Line:** 2616 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/nextEpisode.ts`](src/lib/stores/nextEpisode.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) + - **Line:** 4 - **Context:** `Unknown` - **File:** [`src/lib/services/nextEpisodeService.ts`](src/lib/services/nextEpisodeService.ts#L11) - **Line:** 11 - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) +- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4) - **Line:** 4 - **Context:** `Unknown` - **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) @@ -1289,20 +1318,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L369) - **Line:** 369 - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L249) - - **Line:** 249 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2527) - - **Line:** 2527 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/nextEpisode.ts`](src/lib/stores/nextEpisode.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/autoplay.rs`](src-tauri/src/player/autoplay.rs#L2) - - **Line:** 2 +- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10) + - **Line:** 10 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L6) - **Line:** 6 @@ -1310,6 +1327,9 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L23) - **Line:** 23 - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/autoplay.rs`](src-tauri/src/player/autoplay.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L3) - **Line:** 3 - **Context:** `Unknown` @@ -1324,21 +1344,21 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` +- **File:** [`src/lib/stores/nextEpisode.ts`](src/lib/stores/nextEpisode.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` - **File:** [`src/lib/services/nextEpisodeService.ts`](src/lib/services/nextEpisodeService.ts#L11) - **Line:** 11 - **Context:** `Unknown` - **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L369) - **Line:** 369 - **Context:** `Unknown` -- **File:** [`src/lib/stores/nextEpisode.ts`](src/lib/stores/nextEpisode.ts#L9) - - **Line:** 9 +- **File:** [`src-tauri/src/player/autoplay.rs`](src-tauri/src/player/autoplay.rs#L2) + - **Line:** 2 - **Context:** `Unknown` - **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/autoplay.rs`](src-tauri/src/player/autoplay.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` ### DR-049 @@ -1360,25 +1380,28 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 3 file(s) -- **File:** [`src/lib/utils/backgroundAudio.ts`](src/lib/utils/backgroundAudio.ts#L4) - - **Line:** 4 +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/utils/backgroundAudio.test.ts`](src/lib/utils/backgroundAudio.test.ts#L7) - **Line:** 7 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 +- **File:** [`src/lib/utils/backgroundAudio.ts`](src/lib/utils/backgroundAudio.ts#L4) + - **Line:** 4 - **Context:** `Unknown` ### DR-052 **Locations:** 20 file(s) -- **File:** [`src/lib/player/backgroundAudio.commands.test.ts`](src/lib/player/backgroundAudio.commands.test.ts#L7) - - **Line:** 7 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L38) + - **Line:** 38 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L51) + - **Line:** 51 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L283) + - **Line:** 283 - **Context:** `Unknown` - **File:** [`src/lib/components/player/backgroundAudioHandoff.test.ts`](src/lib/components/player/backgroundAudioHandoff.test.ts#L11) - **Line:** 11 @@ -1389,14 +1412,11 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/player/backgroundAudioHandoff.ts`](src/lib/components/player/backgroundAudioHandoff.ts#L69) - **Line:** 69 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L38) - - **Line:** 38 +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L51) - - **Line:** 51 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L249) - - **Line:** 249 +- **File:** [`src/lib/player/backgroundAudio.commands.test.ts`](src/lib/player/backgroundAudio.commands.test.ts#L7) + - **Line:** 7 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L179) - **Line:** 179 @@ -1404,35 +1424,35 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L190) - **Line:** 190 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1261) - - **Line:** 1261 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1299) + - **Line:** 1299 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1275) - - **Line:** 1275 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1313) + - **Line:** 1313 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1288) - - **Line:** 1288 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1326) + - **Line:** 1326 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1297) - - **Line:** 1297 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1335) + - **Line:** 1335 - **Context:** `pub fn exit_background_audio(&self) -> f64 {` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1304) - - **Line:** 1304 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1342) + - **Line:** 1342 - **Context:** `pub fn is_background_audio_active(&self) -> bool {` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1319) - - **Line:** 1319 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1357) + - **Line:** 1357 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1559) - - **Line:** 1559 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1599) + - **Line:** 1599 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L145) - **Line:** 145 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L664) - - **Line:** 664 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L687) + - **Line:** 687 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L767) - - **Line:** 767 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L790) + - **Line:** 790 - **Context:** `Unknown` ### DR-053 @@ -1488,11 +1508,14 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, ### DR-059 -**Locations:** 1 file(s) +**Locations:** 2 file(s) - **File:** [`src-tauri/src/commands/playback_mode.rs`](src-tauri/src/commands/playback_mode.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/playback_mode/mod.rs`](src-tauri/src/playback_mode/mod.rs#L165) + - **Line:** 165 + - **Context:** `Unknown` ### DR-060 @@ -1509,8 +1532,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L7) - **Line:** 7 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L265) - - **Line:** 265 +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L272) + - **Line:** 272 - **Context:** `Unknown` ### DR-062 @@ -1529,28 +1552,37 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L7) - **Line:** 7 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L265) - - **Line:** 265 +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L272) + - **Line:** 272 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L353) - - **Line:** 353 +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L360) + - **Line:** 360 - **Context:** `Unknown` ### DR-063 **Locations:** 17 file(s) +- **File:** [`src/routes/library/+page.svelte`](src/routes/library/+page.svelte#L17) + - **Line:** 17 + - **Context:** `Unknown` - **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L21) - **Line:** 21 - **Context:** `Unknown` - **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L34) - **Line:** 34 - **Context:** `Unknown` -- **File:** [`src/routes/library/+page.svelte`](src/routes/library/+page.svelte#L17) - - **Line:** 17 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1492) + - **Line:** 1492 - **Context:** `Unknown` -- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L104) - - **Line:** 104 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2848) + - **Line:** 2848 + - **Context:** `export type SearchResult = { items: MediaItem[]; totalRecordCount: num...` +- **File:** [`src/lib/components/search/HeaderSearch.svelte`](src/lib/components/search/HeaderSearch.svelte#L12) + - **Line:** 12 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L236) + - **Line:** 236 - **Context:** `Unknown` - **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L9) - **Line:** 9 @@ -1567,18 +1599,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L125) - **Line:** 125 - **Context:** `Unknown` -- **File:** [`src/lib/components/search/HeaderSearch.svelte`](src/lib/components/search/HeaderSearch.svelte#L12) - - **Line:** 12 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1412) - - **Line:** 1412 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2759) - - **Line:** 2759 - - **Context:** `export type SearchResult = { items: MediaItem[]; totalRecordCount: num...` -- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L236) - - **Line:** 236 +- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L104) + - **Line:** 104 - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L482) + - **Line:** 482 + - **Context:** `pub struct SearchUpdateEvent {` - **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L311) - **Line:** 311 - **Context:** `Unknown` @@ -1588,9 +1614,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L374) - **Line:** 374 - **Context:** `impl SearchOptions {` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L482) - - **Line:** 482 - - **Context:** `pub struct SearchUpdateEvent {` ### DR-064 @@ -1602,15 +1625,15 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L62) - **Line:** 62 - **Context:** `Unknown` -- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L125) - - **Line:** 125 - - **Context:** `Unknown` - **File:** [`src/lib/components/search/SearchScopeChips.svelte`](src/lib/components/search/SearchScopeChips.svelte#L7) - **Line:** 7 - **Context:** `Unknown` - **File:** [`src/lib/components/search/HeaderSearch.svelte`](src/lib/components/search/HeaderSearch.svelte#L12) - **Line:** 12 - **Context:** `Unknown` +- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L125) + - **Line:** 125 + - **Context:** `Unknown` ### DR-065 @@ -1627,35 +1650,35 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 5 file(s) +- **File:** [`src/lib/components/settings/SearchGroupOrderList.svelte`](src/lib/components/settings/SearchGroupOrderList.svelte#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/searchGroupOrder.ts`](src/lib/stores/searchGroupOrder.ts#L6) + - **Line:** 6 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/searchGroupOrder.test.ts`](src/lib/stores/searchGroupOrder.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` - **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L9) - **Line:** 9 - **Context:** `Unknown` - **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L240) - **Line:** 240 - **Context:** `Unknown` -- **File:** [`src/lib/components/settings/SearchGroupOrderList.svelte`](src/lib/components/settings/SearchGroupOrderList.svelte#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/searchGroupOrder.test.ts`](src/lib/stores/searchGroupOrder.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/searchGroupOrder.ts`](src/lib/stores/searchGroupOrder.ts#L6) - - **Line:** 6 - - **Context:** `Unknown` ### DR-067 **Locations:** 3 file(s) +- **File:** [`src/lib/components/search/SearchResults.svelte`](src/lib/components/search/SearchResults.svelte#L9) + - **Line:** 9 + - **Context:** `Unknown` - **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L9) - **Line:** 9 - **Context:** `Unknown` - **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L290) - **Line:** 290 - **Context:** `Unknown` -- **File:** [`src/lib/components/search/SearchResults.svelte`](src/lib/components/search/SearchResults.svelte#L9) - - **Line:** 9 - - **Context:** `Unknown` ### DR-068 @@ -1685,27 +1708,27 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 17 file(s) +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1094) + - **Line:** 1094 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1105) + - **Line:** 1105 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2227) + - **Line:** 2227 + - **Context:** `export type MergedMediaItem = { id: string; title: string; artist: str...` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2236) + - **Line:** 2236 + - **Context:** `export type NetworkStateWrapperArg = { networkType: NetworkType; unmet...` +- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L81) + - **Line:** 81 + - **Context:** `Unknown` - **File:** [`src/lib/services/networkType.ts`](src/lib/services/networkType.ts#L10) - **Line:** 10 - **Context:** `Unknown` - **File:** [`src/lib/services/networkType.test.ts`](src/lib/services/networkType.test.ts#L4) - **Line:** 4 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1014) - - **Line:** 1014 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1025) - - **Line:** 1025 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2138) - - **Line:** 2138 - - **Context:** `export type MergedMediaItem = { id: string; title: string; artist: str...` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2147) - - **Line:** 2147 - - **Context:** `export type NetworkStateWrapperArg = { networkType: NetworkType; unmet...` -- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L81) - - **Line:** 81 - - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L27) - **Line:** 27 - **Context:** `pub struct DownloadManagerWrapper(pub Mutex);` @@ -1718,11 +1741,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L92) - **Line:** 92 - **Context:** `pub struct NetworkStateWrapperArg {` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L1312) - - **Line:** 1312 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L86) - - **Line:** 86 +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L1359) + - **Line:** 1359 - **Context:** `Unknown` - **File:** [`src-tauri/src/download/network.rs`](src-tauri/src/download/network.rs#L22) - **Line:** 22 @@ -1736,6 +1756,9 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/download/events.rs`](src-tauri/src/download/events.rs#L47) - **Line:** 47 - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L86) + - **Line:** 86 + - **Context:** `Unknown` ### DR-075 @@ -1749,12 +1772,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L82) - - **Line:** 82 - - **Context:** `Unknown` - **File:** [`src/lib/components/AppHeader.svelte`](src/lib/components/AppHeader.svelte#L10) - **Line:** 10 - **Context:** `Unknown` +- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L82) + - **Line:** 82 + - **Context:** `Unknown` ### DR-077 @@ -1789,8 +1812,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L43) - **Line:** 43 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2956) - - **Line:** 2956 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3012) + - **Line:** 3012 - **Context:** `Unknown` ### DR-079 @@ -1808,12 +1831,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L43) - - **Line:** 43 - - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L8) - **Line:** 8 - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L43) + - **Line:** 43 + - **Context:** `Unknown` ### DR-081 @@ -1828,55 +1851,34 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, ### DR-082 -**Locations:** 20 file(s) +**Locations:** 21 file(s) - **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14) - **Line:** 14 - **Context:** `Unknown` -- **File:** [`src/lib/components/downloads/DownloadedBrowse.svelte`](src/lib/components/downloads/DownloadedBrowse.svelte#L10) - - **Line:** 10 - - **Context:** `Unknown` -- **File:** [`src/lib/services/downloadedCatalog.ts`](src/lib/services/downloadedCatalog.ts#L12) - - **Line:** 12 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1295) - - **Line:** 1295 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1303) - - **Line:** 1303 - - **Context:** `Unknown` - **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L97) - **Line:** 97 - **Context:** `Unknown` - **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L105) - **Line:** 105 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L808) - - **Line:** 808 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1375) + - **Line:** 1375 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L835) - - **Line:** 835 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1383) + - **Line:** 1383 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L939) - - **Line:** 939 +- **File:** [`src/lib/components/downloads/DownloadedBrowse.svelte`](src/lib/components/downloads/DownloadedBrowse.svelte#L10) + - **Line:** 10 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3584) - - **Line:** 3584 +- **File:** [`src/lib/services/downloadedCatalog.ts`](src/lib/services/downloadedCatalog.ts#L12) + - **Line:** 12 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3606) - - **Line:** 3606 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L218) + - **Line:** 218 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3640) - - **Line:** 3640 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3686) - - **Line:** 3686 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3707) - - **Line:** 3707 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3726) - - **Line:** 3726 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L233) + - **Line:** 233 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L200) - **Line:** 200 @@ -1884,11 +1886,35 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L211) - **Line:** 211 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L218) - - **Line:** 218 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L848) + - **Line:** 848 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L233) - - **Line:** 233 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L857) + - **Line:** 857 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L884) + - **Line:** 884 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L990) + - **Line:** 990 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3696) + - **Line:** 3696 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3718) + - **Line:** 3718 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3828) + - **Line:** 3828 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3874) + - **Line:** 3874 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3895) + - **Line:** 3895 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3914) + - **Line:** 3914 - **Context:** `Unknown` ### DR-083 @@ -1898,6 +1924,15 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14) - **Line:** 14 - **Context:** `Unknown` +- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L105) + - **Line:** 105 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L935) + - **Line:** 935 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1383) + - **Line:** 1383 + - **Context:** `Unknown` - **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L26) - **Line:** 26 - **Context:** `Unknown` @@ -1913,44 +1948,35 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/services/downloadedCatalog.ts`](src/lib/services/downloadedCatalog.ts#L95) - **Line:** 95 - **Context:** `function sizeOf(itemId: string): number {` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L855) - - **Line:** 855 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1303) - - **Line:** 1303 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L105) - - **Line:** 105 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L808) - - **Line:** 808 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L835) - - **Line:** 835 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3584) - - **Line:** 3584 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3606) - - **Line:** 3606 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3640) - - **Line:** 3640 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3686) - - **Line:** 3686 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3787) - - **Line:** 3787 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L200) - - **Line:** 200 +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2011) + - **Line:** 2011 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L233) - **Line:** 233 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L1938) - - **Line:** 1938 +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L200) + - **Line:** 200 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L857) + - **Line:** 857 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L884) + - **Line:** 884 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3696) + - **Line:** 3696 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3718) + - **Line:** 3718 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3828) + - **Line:** 3828 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3874) + - **Line:** 3874 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3975) + - **Line:** 3975 - **Context:** `Unknown` ### DR-084 @@ -1971,38 +1997,35 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14) - **Line:** 14 - **Context:** `Unknown` +- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L113) + - **Line:** 113 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1391) + - **Line:** 1391 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1953) + - **Line:** 1953 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/LibraryGrid.svelte`](src/lib/components/library/LibraryGrid.svelte#L17) + - **Line:** 17 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L20) + - **Line:** 20 + - **Context:** `Unknown` +- **File:** [`src/lib/components/downloads/DownloadedBrowse.svelte`](src/lib/components/downloads/DownloadedBrowse.svelte#L10) + - **Line:** 10 + - **Context:** `Unknown` - **File:** [`src/lib/utils/formatBytes.ts`](src/lib/utils/formatBytes.ts#L8) - **Line:** 8 - **Context:** `Unknown` - **File:** [`src/lib/utils/formatBytes.test.ts`](src/lib/utils/formatBytes.test.ts#L4) - **Line:** 4 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L20) - - **Line:** 20 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/LibraryGrid.svelte`](src/lib/components/library/LibraryGrid.svelte#L17) - - **Line:** 17 - - **Context:** `Unknown` -- **File:** [`src/lib/components/downloads/DownloadedBrowse.svelte`](src/lib/components/downloads/DownloadedBrowse.svelte#L10) - - **Line:** 10 - - **Context:** `Unknown` - **File:** [`src/lib/services/downloadedCatalog.ts`](src/lib/services/downloadedCatalog.ts#L12) - **Line:** 12 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1311) - - **Line:** 1311 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1864) - - **Line:** 1864 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L113) - - **Line:** 113 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L990) - - **Line:** 990 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3748) - - **Line:** 3748 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L250) + - **Line:** 250 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L259) - **Line:** 259 @@ -2010,8 +2033,11 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L218) - **Line:** 218 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L250) - - **Line:** 250 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1037) + - **Line:** 1037 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3936) + - **Line:** 3936 - **Context:** `Unknown` ### DR-086 @@ -2026,11 +2052,11 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 3 file(s) -- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L62) - - **Line:** 62 +- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L69) + - **Line:** 69 - **Context:** `Unknown` -- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L86) - - **Line:** 86 +- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L93) + - **Line:** 93 - **Context:** `Unknown` - **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L39) - **Line:** 39 @@ -2051,15 +2077,15 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 4 file(s) -- **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` - **File:** [`src/lib/stores/continueWatchingFilter.ts`](src/lib/stores/continueWatchingFilter.ts#L12) - **Line:** 12 - **Context:** `Unknown` - **File:** [`src/lib/stores/continueWatchingFilter.test.ts`](src/lib/stores/continueWatchingFilter.test.ts#L9) - **Line:** 9 - **Context:** `Unknown` +- **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` - **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) - **Line:** 2 - **Context:** `Unknown` @@ -2131,15 +2157,15 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 9 file(s) +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` - **File:** [`src/lib/player/transport.authority.test.ts`](src/lib/player/transport.authority.test.ts#L4) - **Line:** 4 - **Context:** `Unknown` - **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L15) - **Line:** 15 - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` - **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L190) - **Line:** 190 - **Context:** `Unknown` @@ -2152,11 +2178,11 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L605) - **Line:** 605 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1275) - - **Line:** 1275 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1313) + - **Line:** 1313 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1288) - - **Line:** 1288 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1326) + - **Line:** 1326 - **Context:** `Unknown` ### DR-098 @@ -2166,15 +2192,15 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/player/tapGestures.ts`](src/lib/components/player/tapGestures.ts#L21) - **Line:** 21 - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.tapSurface.test.ts`](src/lib/components/player/VideoPlayer.tapSurface.test.ts#L5) + - **Line:** 5 + - **Context:** `Unknown` - **File:** [`src/lib/components/player/VideoPlayer.touchScrub.test.ts`](src/lib/components/player/VideoPlayer.touchScrub.test.ts#L21) - **Line:** 21 - **Context:** `Unknown` - **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.tapSurface.test.ts`](src/lib/components/player/VideoPlayer.tapSurface.test.ts#L5) - - **Line:** 5 - - **Context:** `Unknown` ### DR-099 @@ -2191,25 +2217,19 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` - **File:** [`src/lib/components/player/playerSurface.test.ts`](src/lib/components/player/playerSurface.test.ts#L13) - **Line:** 13 - **Context:** `Unknown` +- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` ### DR-101 **Locations:** 8 file(s) -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L187) - - **Line:** 187 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1350) - - **Line:** 1350 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1363) - - **Line:** 1363 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L188) + - **Line:** 188 - **Context:** `Unknown` - **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L144) - **Line:** 144 @@ -2217,8 +2237,11 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L154) - **Line:** 154 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/series_progress.rs`](src-tauri/src/repository/series_progress.rs#L12) - - **Line:** 12 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1430) + - **Line:** 1430 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1443) + - **Line:** 1443 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L344) - **Line:** 344 @@ -2226,6 +2249,9 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L365) - **Line:** 365 - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/series_progress.rs`](src-tauri/src/repository/series_progress.rs#L12) + - **Line:** 12 + - **Context:** `Unknown` ### DR-102 @@ -2234,22 +2260,22 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L187) - - **Line:** 187 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L188) + - **Line:** 188 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L308) - - **Line:** 308 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L309) + - **Line:** 309 - **Context:** `async function handlePlayAll() {` -- **File:** [`src/lib/components/library/EpisodeRow.svelte`](src/lib/components/library/EpisodeRow.svelte#L16) - - **Line:** 16 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) +- **File:** [`src/lib/components/library/seriesNavigation.test.ts`](src/lib/components/library/seriesNavigation.test.ts#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/components/library/seriesNavigation.ts`](src/lib/components/library/seriesNavigation.ts#L13) - **Line:** 13 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/seriesNavigation.test.ts`](src/lib/components/library/seriesNavigation.test.ts#L1) +- **File:** [`src/lib/components/library/EpisodeRow.svelte`](src/lib/components/library/EpisodeRow.svelte#L17) + - **Line:** 17 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) - **Line:** 1 - **Context:** `Unknown` @@ -2260,19 +2286,19 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L114) - - **Line:** 114 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L115) + - **Line:** 115 - **Context:** `Unknown` - **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) +- **File:** [`src/lib/components/library/seriesNavigation.test.ts`](src/lib/components/library/seriesNavigation.test.ts#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/components/library/seriesNavigation.ts`](src/lib/components/library/seriesNavigation.ts#L13) - **Line:** 13 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/seriesNavigation.test.ts`](src/lib/components/library/seriesNavigation.test.ts#L1) +- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) - **Line:** 1 - **Context:** `Unknown` @@ -2288,6 +2314,9 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 10 file(s) +- **File:** [`src/routes/library/shows/genres/+page.ts`](src/routes/library/shows/genres/+page.ts#L6) + - **Line:** 6 + - **Context:** `Unknown` - **File:** [`src/routes/library/movies/genres/+page.ts`](src/routes/library/movies/genres/+page.ts#L6) - **Line:** 6 - **Context:** `Unknown` @@ -2297,17 +2326,14 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/library/movies/+page.svelte`](src/routes/library/movies/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L8) - - **Line:** 8 - - **Context:** `Unknown` - **File:** [`src/routes/library/tv/shows/+page.ts`](src/routes/library/tv/shows/+page.ts#L6) - **Line:** 6 - **Context:** `Unknown` -- **File:** [`src/routes/library/shows/genres/+page.ts`](src/routes/library/shows/genres/+page.ts#L6) - - **Line:** 6 +- **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L8) + - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/lib/utils/libraryView.ts`](src/lib/utils/libraryView.ts#L9) - - **Line:** 9 +- **File:** [`src/lib/components/library/LibraryViewTabs.svelte`](src/lib/components/library/LibraryViewTabs.svelte#L8) + - **Line:** 8 - **Context:** `Unknown` - **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L48) - **Line:** 48 @@ -2315,35 +2341,35 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/GenericGenreBrowser.svelte`](src/lib/components/library/GenericGenreBrowser.svelte#L42) - **Line:** 42 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/LibraryViewTabs.svelte`](src/lib/components/library/LibraryViewTabs.svelte#L8) - - **Line:** 8 +- **File:** [`src/lib/utils/libraryView.ts`](src/lib/utils/libraryView.ts#L9) + - **Line:** 9 - **Context:** `Unknown` ### DR-106 **Locations:** 7 file(s) -- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) - - **Line:** 1 +- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L165) + - **Line:** 165 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1457) + - **Line:** 1457 - **Context:** `Unknown` - **File:** [`src/lib/components/library/ClearHistoryButton.svelte`](src/lib/components/library/ClearHistoryButton.svelte#L9) - **Line:** 9 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1377) - - **Line:** 1377 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L165) - - **Line:** 165 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L235) - - **Line:** 235 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1896) - - **Line:** 1896 +- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) + - **Line:** 1 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L387) - **Line:** 387 - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2041) + - **Line:** 2041 + - **Context:** `Unknown` ### DR-107 @@ -2352,8 +2378,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L19) - - **Line:** 19 +- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L20) + - **Line:** 20 - **Context:** `Unknown` ### DR-108 @@ -2363,18 +2389,18 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L62) - **Line:** 62 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2478) - - **Line:** 2478 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2534) + - **Line:** 2534 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2518) - - **Line:** 2518 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3236) - - **Line:** 3236 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2574) + - **Line:** 2574 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3292) - **Line:** 3292 - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3348) + - **Line:** 3348 + - **Context:** `Unknown` ### DR-109 @@ -2389,77 +2415,74 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L326) - **Line:** 326 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L740) - - **Line:** 740 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L739) + - **Line:** 739 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L51) - **Line:** 51 - **Context:** `Unknown` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1334) - - **Line:** 1334 +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1369) + - **Line:** 1369 - **Context:** `Unknown` ### DR-110 **Locations:** 8 file(s) +- **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L56) + - **Line:** 56 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L164) + - **Line:** 164 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L757) + - **Line:** 757 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L63) + - **Line:** 63 + - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L276) - **Line:** 276 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L501) - **Line:** 501 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3074) - - **Line:** 3074 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3130) + - **Line:** 3130 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3183) - - **Line:** 3183 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L63) - - **Line:** 63 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L164) - - **Line:** 164 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L56) - - **Line:** 56 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L757) - - **Line:** 757 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3239) + - **Line:** 3239 - **Context:** `Unknown` ### DR-111 **Locations:** 5 file(s) -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L333) - - **Line:** 333 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3017) - - **Line:** 3017 +- **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L56) + - **Line:** 56 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L96) - **Line:** 96 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L56) - - **Line:** 56 - - **Context:** `Unknown` - **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L769) - **Line:** 769 - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L333) + - **Line:** 333 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3073) + - **Line:** 3073 + - **Context:** `Unknown` ### DR-112 **Locations:** 6 file(s) -- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L254) - - **Line:** 254 +- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L261) + - **Line:** 261 - **Context:** `Unknown` -- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L129) - - **Line:** 129 - - **Context:** `Unknown` -- **File:** [`src/lib/utils/layoutShell.test.ts`](src/lib/utils/layoutShell.test.ts#L158) - - **Line:** 158 +- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L23) + - **Line:** 23 - **Context:** `Unknown` - **File:** [`src/lib/utils/safeArea.ts`](src/lib/utils/safeArea.ts#L4) - **Line:** 4 @@ -2467,59 +2490,56 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/utils/safeArea.test.ts`](src/lib/utils/safeArea.test.ts#L17) - **Line:** 17 - **Context:** `Unknown` -- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L23) - - **Line:** 23 +- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L129) + - **Line:** 129 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/layoutShell.test.ts`](src/lib/utils/layoutShell.test.ts#L158) + - **Line:** 158 - **Context:** `Unknown` ### DR-113 **Locations:** 4 file(s) -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L590) - - **Line:** 590 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L650) + - **Line:** 650 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L806) - - **Line:** 806 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L886) + - **Line:** 886 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2714) - - **Line:** 2714 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3118) + - **Line:** 3118 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2745) - - **Line:** 2745 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3149) + - **Line:** 3149 - **Context:** `Unknown` ### DR-114 **Locations:** 2 file(s) -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L678) - - **Line:** 678 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L688) + - **Line:** 688 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4301) - - **Line:** 4301 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4489) + - **Line:** 4489 - **Context:** `Unknown` ### DR-115 **Locations:** 16 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1506) - - **Line:** 1506 - - **Context:** `Unknown` - **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L322) - **Line:** 322 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1953) - - **Line:** 1953 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1595) + - **Line:** 1595 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4173) - - **Line:** 4173 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L886) + - **Line:** 886 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4208) - - **Line:** 4208 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L223) - - **Line:** 223 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L923) + - **Line:** 923 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L141) - **Line:** 141 @@ -2527,35 +2547,44 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L156) - **Line:** 156 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L855) - - **Line:** 855 +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L937) + - **Line:** 937 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L681) - - **Line:** 681 +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L233) + - **Line:** 233 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1836) - - **Line:** 1836 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2009) + - **Line:** 2009 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2624) - - **Line:** 2624 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4361) + - **Line:** 4361 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2646) - - **Line:** 2646 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4396) + - **Line:** 4396 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2655) - - **Line:** 2655 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L761) + - **Line:** 761 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L840) - - **Line:** 840 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1981) + - **Line:** 1981 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L877) - - **Line:** 877 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3009) + - **Line:** 3009 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3031) + - **Line:** 3031 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3040) + - **Line:** 3040 - **Context:** `Unknown` ### DR-116 **Locations:** 11 file(s) +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2053) + - **Line:** 2053 + - **Context:** `export type GetItemsOptions = { startIndex?: number | null; limit?: nu...` - **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L1) - **Line:** 1 - **Context:** `Unknown` @@ -2568,63 +2597,63 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L288) - **Line:** 288 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1964) - - **Line:** 1964 - - **Context:** `export type GetItemsOptions = { startIndex?: number | null; limit?: nu...` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1222) - - **Line:** 1222 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4253) - - **Line:** 4253 - - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L298) - **Line:** 298 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L622) - - **Line:** 622 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1269) + - **Line:** 1269 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L659) - - **Line:** 659 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4441) + - **Line:** 4441 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2677) - - **Line:** 2677 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L682) + - **Line:** 682 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L719) + - **Line:** 719 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3062) + - **Line:** 3062 - **Context:** `Unknown` ### DR-117 -**Locations:** 7 file(s) +**Locations:** 8 file(s) -- **File:** [`src/routes/library/+page.svelte`](src/routes/library/+page.svelte#L207) - - **Line:** 207 - - **Context:** `Unknown` - **File:** [`src/routes/library/favorites/+page.svelte`](src/routes/library/favorites/+page.svelte#L9) - **Line:** 9 - **Context:** `Unknown` - **File:** [`src/routes/library/favorites/+page.svelte`](src/routes/library/favorites/+page.svelte#L41) - **Line:** 41 - **Context:** `Unknown` -- **File:** [`src/lib/utils/favoritesView.test.ts`](src/lib/utils/favoritesView.test.ts#L1) +- **File:** [`src/routes/library/+page.svelte`](src/routes/library/+page.svelte#L207) + - **Line:** 207 + - **Context:** `Unknown` +- **File:** [`src/routes/library/+page.svelte`](src/routes/library/+page.svelte#L251) + - **Line:** 251 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L79) + - **Line:** 79 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/utils/favoritesView.ts`](src/lib/utils/favoritesView.ts#L8) - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) +- **File:** [`src/lib/utils/favoritesView.test.ts`](src/lib/utils/favoritesView.test.ts#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L79) - - **Line:** 79 - - **Context:** `Unknown` ### DR-118 **Locations:** 5 file(s) -- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L137) - - **Line:** 137 +- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L144) + - **Line:** 144 - **Context:** `Unknown` -- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L228) - - **Line:** 228 +- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L238) + - **Line:** 238 - **Context:** `Unknown` - **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) - **Line:** 2 @@ -2640,42 +2669,33 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 15 file(s) -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L567) - - **Line:** 567 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L232) - - **Line:** 232 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L584) + - **Line:** 584 - **Context:** `Unknown` - **File:** [`src/lib/components/library/ArtistDetailView.svelte`](src/lib/components/library/ArtistDetailView.svelte#L133) - **Line:** 133 - **Context:** `Unknown` +- **File:** [`src/lib/components/library/PlaylistDetailView.svelte`](src/lib/components/library/PlaylistDetailView.svelte#L219) + - **Line:** 219 + - **Context:** `Unknown` - **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L45) - **Line:** 45 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L132) - - **Line:** 132 +- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L139) + - **Line:** 139 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L281) - - **Line:** 281 +- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L295) + - **Line:** 295 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/PlaylistDetailView.svelte`](src/lib/components/library/PlaylistDetailView.svelte#L219) - - **Line:** 219 +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L233) + - **Line:** 233 - **Context:** `Unknown` - **File:** [`src/lib/components/FavoriteButton.svelte`](src/lib/components/FavoriteButton.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/services/favorites.ts`](src/lib/services/favorites.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src/lib/services/favorites.ts`](src/lib/services/favorites.ts#L38) - - **Line:** 38 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) - - **Line:** 1 - - **Context:** `Unknown` - **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L8) - **Line:** 8 - **Context:** `Unknown` @@ -2685,6 +2705,15 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L79) - **Line:** 79 - **Context:** `Unknown` +- **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/services/favorites.ts`](src/lib/services/favorites.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/services/favorites.ts`](src/lib/services/favorites.ts#L38) + - **Line:** 38 + - **Context:** `Unknown` ### DR-120 @@ -2693,18 +2722,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/library/favorites/+page.svelte`](src/routes/library/favorites/+page.svelte#L73) - **Line:** 73 - **Context:** `Unknown` -- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L130) - - **Line:** 130 +- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L137) + - **Line:** 137 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1506) - - **Line:** 1506 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1595) + - **Line:** 1595 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L46) - - **Line:** 46 - - **Context:** `pub fn new(online: OnlineRepository, offline: OfflineRepository) -> Se...` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L50) - - **Line:** 50 - - **Context:** `impl OnlineRepository {` - **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L12) - **Line:** 12 - **Context:** `Unknown` @@ -2726,31 +2749,37 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L355) - **Line:** 355 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L800) - - **Line:** 800 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L846) + - **Line:** 846 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L806) - - **Line:** 806 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L852) + - **Line:** 852 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L821) - - **Line:** 821 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L867) + - **Line:** 867 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L840) - - **Line:** 840 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L886) + - **Line:** 886 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L994) - - **Line:** 994 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L1040) + - **Line:** 1040 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L1019) - - **Line:** 1019 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L1065) + - **Line:** 1065 - **Context:** `Unknown` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1341) - - **Line:** 1341 +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L46) + - **Line:** 46 + - **Context:** `pub fn new(online: OnlineRepository, offline: OfflineRepository) -> Se...` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L85) + - **Line:** 85 + - **Context:** `impl OnlineRepository {` +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1376) + - **Line:** 1376 - **Context:** `Unknown` ### DR-123 -**Locations:** 7 file(s) +**Locations:** 8 file(s) - **File:** [`src/routes/player/[id]/+page.svelte`](src/routes/player/[id]/+page.svelte#L315) - **Line:** 315 @@ -2758,20 +2787,23 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/player/[id]/+page.svelte`](src/routes/player/[id]/+page.svelte#L319) - **Line:** 319 - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L342) + - **Line:** 342 + - **Context:** `Unknown` - **File:** [`src/lib/player/localSource.ts`](src/lib/player/localSource.ts#L12) - **Line:** 12 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L308) - - **Line:** 308 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L467) + - **Line:** 467 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L444) - - **Line:** 444 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L519) + - **Line:** 519 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L496) - - **Line:** 496 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2845) + - **Line:** 2845 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2702) - - **Line:** 2702 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1873) + - **Line:** 1873 - **Context:** `Unknown` ### DR-126 @@ -2789,12 +2821,15 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 6 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1799) - - **Line:** 1799 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1888) + - **Line:** 1888 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L276) - **Line:** 276 - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L813) + - **Line:** 813 + - **Context:** `Unknown` - **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L33) - **Line:** 33 - **Context:** `Unknown` @@ -2804,30 +2839,27 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L422) - **Line:** 422 - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L813) - - **Line:** 813 - - **Context:** `Unknown` ### DR-128 **Locations:** 3 file(s) -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L416) - - **Line:** 416 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L439) + - **Line:** 439 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L682) - - **Line:** 682 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L705) + - **Line:** 705 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2661) - - **Line:** 2661 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2804) + - **Line:** 2804 - **Context:** `Unknown` ### DR-129 **Locations:** 8 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L249) - - **Line:** 249 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L283) + - **Line:** 283 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/stream_end.rs`](src-tauri/src/player/stream_end.rs#L3) - **Line:** 3 @@ -2835,17 +2867,17 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L199) - **Line:** 199 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1377) - - **Line:** 1377 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1415) + - **Line:** 1415 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1407) - - **Line:** 1407 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1447) + - **Line:** 1447 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1464) - - **Line:** 1464 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1504) + - **Line:** 1504 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1495) - - **Line:** 1495 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1535) + - **Line:** 1535 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L145) - **Line:** 145 @@ -2855,23 +2887,23 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 7 file(s) +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L306) + - **Line:** 306 + - **Context:** `Unknown` - **File:** [`src/lib/services/playerEvents.regression.test.ts`](src/lib/services/playerEvents.regression.test.ts#L155) - **Line:** 155 - **Context:** `Unknown` - **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L287) - **Line:** 287 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L272) - - **Line:** 272 - - **Context:** `Unknown` - **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L564) - **Line:** 564 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L573) - **Line:** 573 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1464) - - **Line:** 1464 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1504) + - **Line:** 1504 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L299) - **Line:** 299 @@ -2881,53 +2913,53 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 16 file(s) -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L243) - - **Line:** 243 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1937) - - **Line:** 1937 +- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L7) + - **Line:** 7 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L14) - **Line:** 14 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L70) - - **Line:** 70 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L76) + - **Line:** 76 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L228) - - **Line:** 228 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L236) + - **Line:** 236 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L360) - - **Line:** 360 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L427) + - **Line:** 427 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L538) - - **Line:** 538 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L605) + - **Line:** 605 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L604) - - **Line:** 604 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L671) + - **Line:** 671 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L634) - - **Line:** 634 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L701) + - **Line:** 701 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L668) - - **Line:** 668 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L735) + - **Line:** 735 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L697) - - **Line:** 697 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L764) + - **Line:** 764 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L743) - - **Line:** 743 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L810) + - **Line:** 810 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L787) - - **Line:** 787 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L991) + - **Line:** 991 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L802) - - **Line:** 802 +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L1006) + - **Line:** 1006 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L7) - - **Line:** 7 +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L253) + - **Line:** 253 - **Context:** `Unknown` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1348) - - **Line:** 1348 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2082) + - **Line:** 2082 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1383) + - **Line:** 1383 - **Context:** `Unknown` ### DR-132 @@ -2937,32 +2969,29 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L742) - - **Line:** 742 +- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L791) + - **Line:** 791 - **Context:** `Unknown` -- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L272) - - **Line:** 272 +- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L279) + - **Line:** 279 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1240) + - **Line:** 1240 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L3002) + - **Line:** 3002 + - **Context:** `export type SyncQueueItem = { id: number; userId: string; operation: s...` +- **File:** [`src/lib/components/sync/PendingSyncList.svelte`](src/lib/components/sync/PendingSyncList.svelte#L12) + - **Line:** 12 - **Context:** `Unknown` - **File:** [`src/lib/components/sync/PendingSyncModal.svelte`](src/lib/components/sync/PendingSyncModal.svelte#L5) - **Line:** 5 - **Context:** `Unknown` -- **File:** [`src/lib/components/sync/PendingSyncList.svelte`](src/lib/components/sync/PendingSyncList.svelte#L12) - - **Line:** 12 - - **Context:** `Unknown` -- **File:** [`src/lib/services/pendingSync.logic.ts`](src/lib/services/pendingSync.logic.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` - **File:** [`src/lib/services/pendingSync.logic.test.ts`](src/lib/services/pendingSync.logic.test.ts#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1160) - - **Line:** 1160 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2875) - - **Line:** 2875 - - **Context:** `export type SyncQueueItem = { id: number; userId: string; operation: s...` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L407) - - **Line:** 407 +- **File:** [`src/lib/services/pendingSync.logic.ts`](src/lib/services/pendingSync.logic.ts#L9) + - **Line:** 9 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L7) - **Line:** 7 @@ -2970,6 +2999,9 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L33) - **Line:** 33 - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L474) + - **Line:** 474 + - **Context:** `Unknown` ### DR-133 @@ -2986,8 +3018,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 1 file(s) -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1020) - - **Line:** 1020 +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1041) + - **Line:** 1041 - **Context:** `Unknown` ### DR-135 @@ -3000,14 +3032,14 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L538) - **Line:** 538 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L911) - - **Line:** 911 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L910) + - **Line:** 910 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L949) - - **Line:** 949 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L948) + - **Line:** 948 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L972) - - **Line:** 972 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L971) + - **Line:** 971 - **Context:** `Unknown` ### DR-136 @@ -3017,11 +3049,11 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L489) - **Line:** 489 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L668) - - **Line:** 668 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L666) + - **Line:** 666 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L1000) - - **Line:** 1000 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L999) + - **Line:** 999 - **Context:** `Unknown` ### DR-137 @@ -3034,8 +3066,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/player/[id]/+page.svelte`](src/routes/player/[id]/+page.svelte#L319) - **Line:** 319 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L895) - - **Line:** 895 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L975) + - **Line:** 975 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L93) - **Line:** 93 @@ -3076,19 +3108,19 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L567) - **Line:** 567 - **Context:** `Unknown` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1251) - - **Line:** 1251 +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1286) + - **Line:** 1286 - **Context:** `Unknown` ### DR-140 **Locations:** 2 file(s) -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L384) - - **Line:** 384 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L424) + - **Line:** 424 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L450) - - **Line:** 450 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L503) + - **Line:** 503 - **Context:** `Unknown` ### DR-141 @@ -3106,56 +3138,56 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 11 file(s) -- **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L97) - - **Line:** 97 - - **Context:** `Unknown` - **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L129) - - **Line:** 129 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L130) + - **Line:** 130 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L215) - - **Line:** 215 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L216) + - **Line:** 216 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L444) - - **Line:** 444 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L445) + - **Line:** 445 + - **Context:** `Unknown` +- **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L97) + - **Line:** 97 - **Context:** `Unknown` - **File:** [`src/lib/components/library/EpisodeFocusView.test.ts`](src/lib/components/library/EpisodeFocusView.test.ts#L7) - **Line:** 7 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L232) - - **Line:** 232 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L353) - - **Line:** 353 +- **File:** [`src/lib/components/library/seriesNavigation.test.ts`](src/lib/components/library/seriesNavigation.test.ts#L1) + - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/components/library/seriesNavigation.ts`](src/lib/components/library/seriesNavigation.ts#L13) - **Line:** 13 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/seriesNavigation.test.ts`](src/lib/components/library/seriesNavigation.test.ts#L1) - - **Line:** 1 +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L233) + - **Line:** 233 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L360) + - **Line:** 360 - **Context:** `Unknown` ### DR-143 **Locations:** 11 file(s) -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L90) - - **Line:** 90 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L91) + - **Line:** 91 - **Context:** `Unknown` +- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L71) + - **Line:** 71 + - **Context:** `async function load() {` - **File:** [`src/routes/library/movies/+page.svelte`](src/routes/library/movies/+page.svelte#L73) - **Line:** 73 - **Context:** `async function load() {` - **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L74) - **Line:** 74 - **Context:** `async function load() {` -- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L71) - - **Line:** 71 - - **Context:** `async function load() {` - **File:** [`src/routes/library/favorites/+page.svelte`](src/routes/library/favorites/+page.svelte#L85) - **Line:** 85 - **Context:** `Unknown` @@ -3165,18 +3197,18 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/GenericGenreBrowser.svelte`](src/lib/components/library/GenericGenreBrowser.svelte#L64) - **Line:** 64 - **Context:** `async function reloadGenreBrowse() {` -- **File:** [`src/lib/composables/useOfflineFilterReload.test.ts`](src/lib/composables/useOfflineFilterReload.test.ts#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/composables/useOfflineFilterReload.ts`](src/lib/composables/useOfflineFilterReload.ts#L26) - - **Line:** 26 - - **Context:** `Unknown` - **File:** [`src/lib/services/offlineCatalog.ts`](src/lib/services/offlineCatalog.ts#L43) - **Line:** 43 - **Context:** `Unknown` - **File:** [`src/lib/services/offlineCatalog.reload.test.ts`](src/lib/services/offlineCatalog.reload.test.ts#L11) - **Line:** 11 - **Context:** `Unknown` +- **File:** [`src/lib/composables/useOfflineFilterReload.test.ts`](src/lib/composables/useOfflineFilterReload.test.ts#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/composables/useOfflineFilterReload.ts`](src/lib/composables/useOfflineFilterReload.ts#L26) + - **Line:** 26 + - **Context:** `Unknown` ### DR-147 @@ -3191,47 +3223,50 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L62) - **Line:** 62 - **Context:** `Unknown` -- **File:** [`src/lib/components/search/HeaderSearch.test.ts`](src/lib/components/search/HeaderSearch.test.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` - **File:** [`src/lib/components/search/HeaderSearch.svelte`](src/lib/components/search/HeaderSearch.svelte#L12) - **Line:** 12 - **Context:** `Unknown` +- **File:** [`src/lib/components/search/HeaderSearch.test.ts`](src/lib/components/search/HeaderSearch.test.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` ### DR-148 **Locations:** 1 file(s) -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L80) - - **Line:** 80 +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L88) + - **Line:** 88 - **Context:** `Unknown` ### DR-149 -**Locations:** 2 file(s) +**Locations:** 3 file(s) -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L105) - - **Line:** 105 +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L113) + - **Line:** 113 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L127) - - **Line:** 127 +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L135) + - **Line:** 135 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L152) + - **Line:** 152 - **Context:** `Unknown` ### DR-150 **Locations:** 4 file(s) +- **File:** [`src/lib/stores/nativeVideo.ts`](src/lib/stores/nativeVideo.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` - **File:** [`src/lib/utils/videoSurface.ts`](src/lib/utils/videoSurface.ts#L4) - **Line:** 4 - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L20) - - **Line:** 20 - - **Context:** `Unknown` - **File:** [`src/lib/player/adapters/adapterSelection.test.ts`](src/lib/player/adapters/adapterSelection.test.ts#L4) - **Line:** 4 - **Context:** `Unknown` -- **File:** [`src/lib/stores/nativeVideo.ts`](src/lib/stores/nativeVideo.ts#L3) - - **Line:** 3 +- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L20) + - **Line:** 20 - **Context:** `Unknown` ### DR-151 @@ -3246,12 +3281,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src/lib/services/playbackCapabilities.ts`](src/lib/services/playbackCapabilities.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` - **File:** [`src/lib/stores/nativeVideo.ts`](src/lib/stores/nativeVideo.ts#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackCapabilities.ts`](src/lib/services/playbackCapabilities.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` ### DR-153 @@ -3261,6 +3296,323 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 4 - **Context:** `Unknown` +### DR-154 + +**Locations:** 7 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1563) + - **Line:** 1563 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L380) + - **Line:** 380 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L855) + - **Line:** 855 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L884) + - **Line:** 884 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L914) + - **Line:** 914 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L953) + - **Line:** 953 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L723) + - **Line:** 723 + - **Context:** `Unknown` + +### DR-155 + +**Locations:** 5 file(s) + +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L335) + - **Line:** 335 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L549) + - **Line:** 549 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L688) + - **Line:** 688 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4576) + - **Line:** 4576 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4662) + - **Line:** 4662 + - **Context:** `Unknown` + +### DR-156 + +**Locations:** 2 file(s) + +- **File:** [`src/lib/utils/scrollContainer.ts`](src/lib/utils/scrollContainer.ts#L23) + - **Line:** 23 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/scrollRestore.ts`](src/lib/utils/scrollRestore.ts#L26) + - **Line:** 26 + - **Context:** `Unknown` + +### DR-157 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/utils/immersive.ts`](src/lib/utils/immersive.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` + +### DR-158 + +**Locations:** 6 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L805) + - **Line:** 805 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/WatchedToggleButton.svelte`](src/lib/components/library/WatchedToggleButton.svelte#L13) + - **Line:** 13 + - **Context:** `Unknown` +- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L121) + - **Line:** 121 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L891) + - **Line:** 891 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L1046) + - **Line:** 1046 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L1063) + - **Line:** 1063 + - **Context:** `Unknown` + +### DR-159 + +**Locations:** 3 file(s) + +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L784) + - **Line:** 784 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L3664) + - **Line:** 3664 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L3707) + - **Line:** 3707 + - **Context:** `Unknown` + +### DR-160 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/utils/pictureInPicture.ts`](src/lib/utils/pictureInPicture.ts#L107) + - **Line:** 107 + - **Context:** `Unknown` + +### DR-162 + +**Locations:** 38 file(s) + +- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L71) + - **Line:** 71 + - **Context:** `Unknown` +- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L343) + - **Line:** 343 + - **Context:** `function handleEpisodeLimitChange(value: number) {` +- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L701) + - **Line:** 701 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L208) + - **Line:** 208 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L229) + - **Line:** 229 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2919) + - **Line:** 2919 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2944) + - **Line:** 2944 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L3079) + - **Line:** 3079 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L251) + - **Line:** 251 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L658) + - **Line:** 658 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1934) + - **Line:** 1934 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L2359) + - **Line:** 2359 + - **Context:** `Unknown` +- **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L192) + - **Line:** 192 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L25) + - **Line:** 25 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L85) + - **Line:** 85 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L107) + - **Line:** 107 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L122) + - **Line:** 122 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L158) + - **Line:** 158 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L350) + - **Line:** 350 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1488) + - **Line:** 1488 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L26) + - **Line:** 26 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L35) + - **Line:** 35 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L42) + - **Line:** 42 + - **Context:** `pub fn set_streaming_quality(quality: StreamingQuality) {` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L424) + - **Line:** 424 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L540) + - **Line:** 540 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1476) + - **Line:** 1476 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1717) + - **Line:** 1717 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2499) + - **Line:** 2499 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2523) + - **Line:** 2523 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2545) + - **Line:** 2545 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2568) + - **Line:** 2568 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L164) + - **Line:** 164 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L299) + - **Line:** 299 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L604) + - **Line:** 604 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L640) + - **Line:** 640 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L667) + - **Line:** 667 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1255) + - **Line:** 1255 + - **Context:** `Unknown` + +### DR-167 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L848) + - **Line:** 848 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3758) + - **Line:** 3758 + - **Context:** `Unknown` + +### DR-168 + +**Locations:** 6 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L885) + - **Line:** 885 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L898) + - **Line:** 898 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L860) + - **Line:** 860 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L894) + - **Line:** 894 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/stop.rs`](src-tauri/src/download/stop.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L42) + - **Line:** 42 + - **Context:** `Unknown` + +### DR-169 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L247) + - **Line:** 247 + - **Context:** `/ One function so the writer and the cleaners cannot disagree again.` +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L336) + - **Line:** 336 + - **Context:** `Unknown` + +### DR-170 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L219) + - **Line:** 219 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L313) + - **Line:** 313 + - **Context:** `Unknown` + +### DR-171 + +**Locations:** 9 file(s) + +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L210) + - **Line:** 210 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L345) + - **Line:** 345 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L367) + - **Line:** 367 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1950) + - **Line:** 1950 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2901) + - **Line:** 2901 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2933) + - **Line:** 2933 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2959) + - **Line:** 2959 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L152) + - **Line:** 152 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L220) + - **Line:** 220 + - **Context:** `Unknown` + ### JA-001 **Locations:** 1 file(s) @@ -3322,20 +3674,20 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 8 file(s) -- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L183) - - **Line:** 183 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2351) + - **Line:** 2351 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2969) + - **Line:** 2969 - **Context:** `Unknown` - **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L159) - **Line:** 159 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L635) - - **Line:** 635 +- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L183) + - **Line:** 183 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2262) - - **Line:** 2262 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2842) - - **Line:** 2842 +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L703) + - **Line:** 703 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L42) - **Line:** 42 @@ -3343,8 +3695,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L223) - **Line:** 223 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2627) - - **Line:** 2627 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2770) + - **Line:** 2770 - **Context:** `Unknown` ### JA-010 @@ -3416,10 +3768,10 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 6 file(s) -- **File:** [`src/lib/components/sessions/SessionPickerModal.svelte`](src/lib/components/sessions/SessionPickerModal.svelte#L1) +- **File:** [`src/lib/components/sessions/SessionsList.svelte`](src/lib/components/sessions/SessionsList.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/components/sessions/SessionsList.svelte`](src/lib/components/sessions/SessionsList.svelte#L1) +- **File:** [`src/lib/components/sessions/SessionPickerModal.svelte`](src/lib/components/sessions/SessionPickerModal.svelte#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/stores/lmsSync.ts`](src/lib/stores/lmsSync.ts#L12) @@ -3428,12 +3780,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/sessions.rs`](src-tauri/src/commands/sessions.rs#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/session_poller/mod.rs`](src-tauri/src/session_poller/mod.rs#L6) - - **Line:** 6 - - **Context:** `Unknown` - **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1) - **Line:** 1 - **Context:** `Unknown` +- **File:** [`src-tauri/src/session_poller/mod.rs`](src-tauri/src/session_poller/mod.rs#L6) + - **Line:** 6 + - **Context:** `Unknown` ### JA-022 @@ -3517,10 +3869,10 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 3 file(s) -- **File:** [`src/lib/components/library/CrewLinks.svelte`](src/lib/components/library/CrewLinks.svelte#L1) +- **File:** [`src/lib/components/library/CastSection.svelte`](src/lib/components/library/CastSection.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/CastSection.svelte`](src/lib/components/library/CastSection.svelte#L1) +- **File:** [`src/lib/components/library/CrewLinks.svelte`](src/lib/components/library/CrewLinks.svelte#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L4) @@ -3553,9 +3905,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 10 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1438) - - **Line:** 1438 - - **Context:** `Unknown` - **File:** [`src/lib/api/repository-client.test.ts`](src/lib/api/repository-client.test.ts#L434) - **Line:** 434 - **Context:** `Unknown` @@ -3565,529 +3914,103 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L234) - **Line:** 234 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L129) - - **Line:** 129 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1518) + - **Line:** 1518 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L599) + - **Line:** 599 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L104) - **Line:** 104 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L450) - - **Line:** 450 +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L129) + - **Line:** 129 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2397) - - **Line:** 2397 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L503) + - **Line:** 503 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2438) - - **Line:** 2438 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2640) + - **Line:** 2640 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L599) - - **Line:** 599 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2681) + - **Line:** 2681 - **Context:** `Unknown` ### JA-033 **Locations:** 7 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1506) - - **Line:** 1506 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1595) + - **Line:** 1595 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L223) - - **Line:** 223 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L886) + - **Line:** 886 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L681) - - **Line:** 681 +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L233) + - **Line:** 233 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1836) - - **Line:** 1836 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L761) + - **Line:** 761 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1896) - - **Line:** 1896 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1981) + - **Line:** 1981 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2624) - - **Line:** 2624 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2041) + - **Line:** 2041 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L840) - - **Line:** 840 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3009) + - **Line:** 3009 - **Context:** `Unknown` ### JA-034 **Locations:** 3 file(s) -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L590) - - **Line:** 590 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L650) + - **Line:** 650 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L806) - - **Line:** 806 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L886) + - **Line:** 886 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2714) - - **Line:** 2714 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3118) + - **Line:** 3118 - **Context:** `Unknown` ### JA-035 **Locations:** 2 file(s) -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L243) - - **Line:** 243 +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L253) + - **Line:** 253 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1937) - - **Line:** 1937 - - **Context:** `Unknown` - -### UR-003 - -**Locations:** 28 file(s) - -- **File:** [`src/lib/utils/videoSurface.ts`](src/lib/utils/videoSurface.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) - - **Line:** 15 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L24) - - **Line:** 24 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/rustReportHost.ts`](src/lib/player/adapters/rustReportHost.ts#L13) - - **Line:** 13 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/webviewAudioAdapter.ts`](src/lib/player/adapters/webviewAudioAdapter.ts#L18) - - **Line:** 18 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) - - **Line:** 19 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L20) - - **Line:** 20 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/adapterSelection.test.ts`](src/lib/player/adapters/adapterSelection.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackCapabilities.ts`](src/lib/services/playbackCapabilities.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/services/webviewAudio.ts`](src/lib/services/webviewAudio.ts#L18) - - **Line:** 18 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L149) - - **Line:** 149 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2312) - - **Line:** 2312 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2348) - - **Line:** 2348 - - **Context:** `export type PlaybackProgress = { itemId: string;` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2452) - - **Line:** 2452 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/nativeVideo.ts`](src/lib/stores/nativeVideo.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L25) - - **Line:** 25 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L184) - - **Line:** 184 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L60) - - **Line:** 60 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L142) - - **Line:** 142 - - **Context:** `pub enum MediaType {` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mpv_backend_test.rs`](src-tauri/src/player/mpv_backend_test.rs#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L39) - - **Line:** 39 - - **Context:** `pub fn playback_failed>(message: S) -> Self {` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) - - **Line:** 245 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1664) - - **Line:** 1664 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1681) - - **Line:** 1681 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` - -### UR-004 - -**Locations:** 32 file(s) - -- **File:** [`src/lib/utils/videoSurface.ts`](src/lib/utils/videoSurface.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L20) - - **Line:** 20 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/adapterSelection.test.ts`](src/lib/player/adapters/adapterSelection.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/AudioPlayer.svelte`](src/lib/components/player/AudioPlayer.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/services/preload.test.ts`](src/lib/services/preload.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.regression.test.ts`](src/lib/services/playerEvents.regression.test.ts#L155) - - **Line:** 155 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L287) - - **Line:** 287 - - **Context:** `Unknown` -- **File:** [`src/lib/services/preload.ts`](src/lib/services/preload.ts#L5) - - **Line:** 5 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L272) - - **Line:** 272 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2348) - - **Line:** 2348 - - **Context:** `export type PlaybackProgress = { itemId: string;` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2452) - - **Line:** 2452 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/nativeVideo.ts`](src/lib/stores/nativeVideo.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L25) - - **Line:** 25 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L184) - - **Line:** 184 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L60) - - **Line:** 60 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L142) - - **Line:** 142 - - **Context:** `pub enum MediaType {` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1377) - - **Line:** 1377 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1464) - - **Line:** 1464 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1495) - - **Line:** 1495 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mpv_backend_test.rs`](src-tauri/src/player/mpv_backend_test.rs#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L39) - - **Line:** 39 - - **Context:** `pub fn playback_failed>(message: S) -> Self {` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) - - **Line:** 245 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L29) - - **Line:** 29 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L40) - - **Line:** 40 - - **Context:** `pub fn clamp_max_audio_channels(reported: Option) -> u32 {` -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L80) - - **Line:** 80 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L105) - - **Line:** 105 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L127) - - **Line:** 127 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L384) - - **Line:** 384 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L299) - - **Line:** 299 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` - -### UR-005 - -**Locations:** 78 file(s) - -- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L17) - - **Line:** 17 - - **Context:** `Unknown` -- **File:** [`src/lib/utils/duration.test.ts`](src/lib/utils/duration.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/utils/layoutShell.test.ts`](src/lib/utils/layoutShell.test.ts#L14) - - **Line:** 14 - - **Context:** `Unknown` -- **File:** [`src/lib/player/transport.authority.test.ts`](src/lib/player/transport.authority.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) - - **Line:** 15 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L24) - - **Line:** 24 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/rustReportHost.ts`](src/lib/player/adapters/rustReportHost.ts#L13) - - **Line:** 13 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/webviewAudioAdapter.ts`](src/lib/player/adapters/webviewAudioAdapter.ts#L18) - - **Line:** 18 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) - - **Line:** 19 - - **Context:** `Unknown` -- **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L15) - - **Line:** 15 - - **Context:** `Unknown` -- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L23) - - **Line:** 23 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/tapGestures.ts`](src/lib/components/player/tapGestures.ts#L21) - - **Line:** 21 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/Controls.svelte`](src/lib/components/player/Controls.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/playerSurface.test.ts`](src/lib/components/player/playerSurface.test.ts#L13) - - **Line:** 13 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/videoFit.ts`](src/lib/components/player/videoFit.ts#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.touchScrub.test.ts`](src/lib/components/player/VideoPlayer.touchScrub.test.ts#L21) - - **Line:** 21 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/MiniPlayer.svelte`](src/lib/components/player/MiniPlayer.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/backgroundAudioHandoff.ts`](src/lib/components/player/backgroundAudioHandoff.ts#L69) - - **Line:** 69 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/AudioPlayer.svelte`](src/lib/components/player/AudioPlayer.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.tapSurface.test.ts`](src/lib/components/player/VideoPlayer.tapSurface.test.ts#L5) - - **Line:** 5 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10) - - **Line:** 10 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L21) - - **Line:** 21 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L58) - - **Line:** 58 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L89) - - **Line:** 89 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackCapabilities.ts`](src/lib/services/playbackCapabilities.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/services/webviewAudio.ts`](src/lib/services/webviewAudio.ts#L18) - - **Line:** 18 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.regression.test.ts`](src/lib/services/playerEvents.regression.test.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L156) - - **Line:** 156 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L186) - - **Line:** 186 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L149) - - **Line:** 149 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2312) - - **Line:** 2312 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2470) - - **Line:** 2470 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2527) - - **Line:** 2527 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2724) - - **Line:** 2724 - - **Context:** `export type RemoteSessionStatus = { position: number; duration: number...` -- **File:** [`src/lib/stores/player.ts`](src/lib/stores/player.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/player.ts`](src/lib/stores/player.ts#L31) - - **Line:** 31 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/appState.ts`](src/lib/stores/appState.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L105) - - **Line:** 105 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L110) - - **Line:** 110 - - **Context:** `async function next() {` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L115) - - **Line:** 115 - - **Context:** `async function previous() {` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L120) - - **Line:** 120 - - **Context:** `async function skipTo(index: number) {` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L125) - - **Line:** 125 - - **Context:** `async function toggleShuffle() {` -- **File:** [`src/lib/stores/queue.test.ts`](src/lib/stores/queue.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/playerVisibility.test.ts`](src/lib/stores/playerVisibility.test.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L25) - - **Line:** 25 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L184) - - **Line:** 184 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L20) - - **Line:** 20 - - **Context:** `pub enum RepeatMode {` -- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535) - - **Line:** 535 - - **Context:** `pub enum AddPosition {` -- **File:** [`src-tauri/src/player/state.rs`](src-tauri/src/player/state.rs#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/state.rs`](src-tauri/src/player/state.rs#L25) - - **Line:** 25 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L6) - - **Line:** 6 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L23) - - **Line:** 23 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L564) - - **Line:** 564 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L573) - - **Line:** 573 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L553) - - **Line:** 553 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L561) - - **Line:** 561 - - **Context:** `pub fn is_html5_active(&self) -> bool {` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L605) - - **Line:** 605 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1275) - - **Line:** 1275 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1288) - - **Line:** 1288 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L42) - - **Line:** 42 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L46) - - **Line:** 46 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L50) - - **Line:** 50 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L54) - - **Line:** 54 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L58) - - **Line:** 58 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/conversions.rs`](src-tauri/src/commands/conversions.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/session.rs`](src-tauri/src/commands/player/session.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1664) - - **Line:** 1664 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1681) - - **Line:** 1681 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) - - **Line:** 2 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2082) + - **Line:** 2082 - **Context:** `Unknown` ### UR-007 **Locations:** 16 file(s) +- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` - **File:** [`src/routes/library/movies/+page.svelte`](src/routes/library/movies/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` - **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` - **File:** [`src/lib/components/library/AlphabetScrollBar.svelte`](src/lib/components/library/AlphabetScrollBar.svelte#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/services/imageCache.ts`](src/lib/services/imageCache.ts#L2) - - **Line:** 2 +- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) + - **Line:** 3 - **Context:** `Unknown` -- **File:** [`src/lib/services/imageCache.test.ts`](src/lib/services/imageCache.test.ts#L4) - - **Line:** 4 +- **File:** [`src/lib/stores/music.ts`](src/lib/stores/music.ts#L3) + - **Line:** 3 - **Context:** `Unknown` - **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) - **Line:** 3 @@ -4095,235 +4018,26 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L2) - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src/lib/stores/music.ts`](src/lib/stores/music.ts#L3) +- **File:** [`src/lib/services/imageCache.test.ts`](src/lib/services/imageCache.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/imageCache.ts`](src/lib/services/imageCache.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/storage/thumbnails.rs`](src-tauri/src/commands/storage/thumbnails.rs#L3) - **Line:** 3 - **Context:** `Unknown` -- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L622) - - **Line:** 622 - - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L3) - **Line:** 3 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L4) - **Line:** 4 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/thumbnails.rs`](src-tauri/src/commands/storage/thumbnails.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` - -### UR-009 - -**Locations:** 15 file(s) - -- **File:** [`src/lib/utils/validation.test.ts`](src/lib/utils/validation.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/services/deviceId.ts`](src/lib/services/deviceId.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src/lib/services/deviceId.ts`](src/lib/services/deviceId.ts#L23) - - **Line:** 23 - - **Context:** `Unknown` -- **File:** [`src/lib/services/deviceId.test.ts`](src/lib/services/deviceId.test.ts#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L581) - - **Line:** 581 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L597) - - **Line:** 597 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/auth.test.ts`](src/lib/stores/auth.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L6) - - **Line:** 6 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L266) - - **Line:** 266 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L293) - - **Line:** 293 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/device.rs`](src-tauri/src/commands/device.rs#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/device.rs`](src-tauri/src/commands/device.rs#L24) - - **Line:** 24 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/device.rs`](src-tauri/src/commands/device.rs#L81) - - **Line:** 81 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1) +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1) - **Line:** 1 - **Context:** `Unknown` - -### UR-010 - -**Locations:** 15 file(s) - -- **File:** [`src/lib/components/sessions/SessionPickerModal.svelte`](src/lib/components/sessions/SessionPickerModal.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/sessions/SessionsList.svelte`](src/lib/components/sessions/SessionsList.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/sessions/SessionCard.svelte`](src/lib/components/sessions/SessionCard.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/sessions/RemoteControls.svelte`](src/lib/components/sessions/RemoteControls.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/sessions/CastButton.svelte`](src/lib/components/sessions/CastButton.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/sessions.test.ts`](src/lib/stores/sessions.test.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/playbackMode.ts`](src/lib/stores/playbackMode.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/playbackMode.test.ts`](src/lib/stores/playbackMode.test.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/sessions.ts`](src/lib/stores/sessions.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/lmsSync.ts`](src/lib/stores/lmsSync.ts#L12) - - **Line:** 12 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/remote.rs`](src-tauri/src/commands/player/remote.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/playback_mode.rs`](src-tauri/src/commands/playback_mode.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sessions.rs`](src-tauri/src/commands/sessions.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/session_poller/mod.rs`](src-tauri/src/session_poller/mod.rs#L6) - - **Line:** 6 - - **Context:** `Unknown` - -### UR-017 - -**Locations:** 10 file(s) - -- **File:** [`src/lib/components/player/MiniPlayer.svelte`](src/lib/components/player/MiniPlayer.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/FavoriteButton.svelte`](src/lib/components/FavoriteButton.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L57) - - **Line:** 57 - - **Context:** `Unknown` -- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L172) - - **Line:** 172 - - **Context:** `Unknown` -- **File:** [`src/lib/services/favorites.test.ts`](src/lib/services/favorites.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/services/favorites.ts`](src/lib/services/favorites.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` - -### UR-020 - -**Locations:** 23 file(s) - -- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) - - **Line:** 15 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) - - **Line:** 19 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) - - **Line:** 20 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L183) - - **Line:** 183 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L218) - - **Line:** 218 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L18) - - **Line:** 18 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L159) - - **Line:** 159 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L282) - - **Line:** 282 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L306) - - **Line:** 306 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L315) - - **Line:** 315 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L635) - - **Line:** 635 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1779) - - **Line:** 1779 - - **Context:** `function toggleSubtitleMenu() {` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1812) - - **Line:** 1812 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2262) - - **Line:** 2262 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2842) - - **Line:** 2842 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L42) - - **Line:** 42 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L223) - - **Line:** 223 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L399) - - **Line:** 399 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2538) - - **Line:** 2538 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2595) - - **Line:** 2595 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2627) - - **Line:** 2627 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L682) + - **Line:** 682 - **Context:** `Unknown` ### UR-023 @@ -4339,12 +4053,30 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/services/nextEpisodeService.ts`](src/lib/services/nextEpisodeService.ts#L11) - - **Line:** 11 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L283) + - **Line:** 283 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2616) + - **Line:** 2616 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/nextEpisode.ts`](src/lib/stores/nextEpisode.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) + - **Line:** 2 - **Context:** `Unknown` - **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) - **Line:** 4 - **Context:** `Unknown` +- **File:** [`src/lib/services/nextEpisodeService.ts`](src/lib/services/nextEpisodeService.ts#L11) + - **Line:** 11 + - **Context:** `Unknown` - **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) - **Line:** 8 - **Context:** `Unknown` @@ -4354,47 +4086,26 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L369) - **Line:** 369 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L249) - - **Line:** 249 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2527) - - **Line:** 2527 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/nextEpisode.ts`](src/lib/stores/nextEpisode.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/autoplay.rs`](src-tauri/src/player/autoplay.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` - **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L6) - **Line:** 6 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L23) - **Line:** 23 - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/autoplay.rs`](src-tauri/src/player/autoplay.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` - **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) - **Line:** 2 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L328) - **Line:** 328 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1319) - - **Line:** 1319 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1357) + - **Line:** 1357 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1559) - - **Line:** 1559 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1599) + - **Line:** 1599 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L3) - **Line:** 3 @@ -4402,28 +4113,55 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L145) - **Line:** 145 - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` ### UR-025 -**Locations:** 42 file(s) +**Locations:** 54 file(s) - **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L742) - - **Line:** 742 +- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L791) + - **Line:** 791 - **Context:** `Unknown` -- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L272) - - **Line:** 272 +- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L279) + - **Line:** 279 - **Context:** `Unknown` -- **File:** [`src/lib/utils/validation.test.ts`](src/lib/utils/validation.test.ts#L4) - - **Line:** 4 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1240) + - **Line:** 1240 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1563) + - **Line:** 1563 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L3002) + - **Line:** 3002 + - **Context:** `export type SyncQueueItem = { id: number; userId: string; operation: s...` +- **File:** [`src/lib/components/sync/PendingSyncList.svelte`](src/lib/components/sync/PendingSyncList.svelte#L12) + - **Line:** 12 - **Context:** `Unknown` - **File:** [`src/lib/components/sync/PendingSyncModal.svelte`](src/lib/components/sync/PendingSyncModal.svelte#L5) - **Line:** 5 - **Context:** `Unknown` -- **File:** [`src/lib/components/sync/PendingSyncList.svelte`](src/lib/components/sync/PendingSyncList.svelte#L12) - - **Line:** 12 +- **File:** [`src/lib/utils/validation.test.ts`](src/lib/utils/validation.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/skipReporting.ts`](src/lib/services/skipReporting.ts#L14) + - **Line:** 14 + - **Context:** `Unknown` +- **File:** [`src/lib/services/skipReporting.test.ts`](src/lib/services/skipReporting.test.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L156) + - **Line:** 156 + - **Context:** `Unknown` +- **File:** [`src/lib/services/pendingSync.logic.test.ts`](src/lib/services/pendingSync.logic.test.ts#L1) + - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10) - **Line:** 10 @@ -4437,89 +4175,14 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L122) - **Line:** 122 - **Context:** `Unknown` -- **File:** [`src/lib/services/skipReporting.ts`](src/lib/services/skipReporting.ts#L14) - - **Line:** 14 +- **File:** [`src/lib/services/pendingSync.logic.ts`](src/lib/services/pendingSync.logic.ts#L9) + - **Line:** 9 - **Context:** `Unknown` - **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L7) - **Line:** 7 - **Context:** `Unknown` -- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L57) - - **Line:** 57 - - **Context:** `Unknown` -- **File:** [`src/lib/services/pendingSync.logic.ts`](src/lib/services/pendingSync.logic.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/services/skipReporting.test.ts`](src/lib/services/skipReporting.test.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L156) - - **Line:** 156 - - **Context:** `Unknown` -- **File:** [`src/lib/services/pendingSync.logic.test.ts`](src/lib/services/pendingSync.logic.test.ts#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1160) - - **Line:** 1160 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2875) - - **Line:** 2875 - - **Context:** `export type SyncQueueItem = { id: number; userId: string; operation: s...` -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L243) - - **Line:** 243 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1937) - - **Line:** 1937 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L14) - - **Line:** 14 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L70) - - **Line:** 70 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L228) - - **Line:** 228 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L360) - - **Line:** 360 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L407) - - **Line:** 407 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L538) - - **Line:** 538 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L604) - - **Line:** 604 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L634) - - **Line:** 634 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L668) - - **Line:** 668 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L697) - - **Line:** 697 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L743) - - **Line:** 743 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L787) - - **Line:** 787 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L802) - - **Line:** 802 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L33) - - **Line:** 33 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) - - **Line:** 2 +- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L58) + - **Line:** 58 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - **Line:** 3 @@ -4527,73 +4190,98 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L33) + - **Line:** 33 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L14) + - **Line:** 14 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L76) + - **Line:** 76 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L236) + - **Line:** 236 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L380) + - **Line:** 380 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L427) + - **Line:** 427 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L474) + - **Line:** 474 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L605) + - **Line:** 605 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L671) + - **Line:** 671 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L701) + - **Line:** 701 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L735) + - **Line:** 735 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L764) + - **Line:** 764 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L810) + - **Line:** 810 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L855) + - **Line:** 855 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L884) + - **Line:** 884 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L914) + - **Line:** 914 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L953) + - **Line:** 953 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L991) + - **Line:** 991 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L1006) + - **Line:** 1006 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L723) + - **Line:** 723 + - **Context:** `Unknown` - **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - **Line:** 157 - **Context:** `pub fn file_size(&self) -> Option {` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1348) - - **Line:** 1348 +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L335) + - **Line:** 335 - **Context:** `Unknown` - -### UR-026 - -**Locations:** 19 file(s) - -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L549) + - **Line:** 549 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/SleepTimerModal.svelte`](src/lib/components/player/SleepTimerModal.svelte#L1) - - **Line:** 1 +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L253) + - **Line:** 253 - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) - - **Line:** 4 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L688) + - **Line:** 688 - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) - - **Line:** 8 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4576) + - **Line:** 4576 - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L264) - - **Line:** 264 - - **Context:** `function handleMediaLoaded(duration: number): void {` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L324) - - **Line:** 324 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4662) + - **Line:** 4662 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L249) - - **Line:** 249 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2082) + - **Line:** 2082 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2527) - - **Line:** 2527 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2784) - - **Line:** 2784 - - **Context:** `export type SessionInfo = { id?: string | null; userId?: string | null...` -- **File:** [`src/lib/stores/sleepTimer.ts`](src/lib/stores/sleepTimer.ts#L10) - - **Line:** 10 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/autoplay.rs`](src-tauri/src/player/autoplay.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/sleep_timer.rs`](src-tauri/src/player/sleep_timer.rs#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/sleep_timer.rs`](src-tauri/src/player/sleep_timer.rs#L81) - - **Line:** 81 - - **Context:** `pub fn cancel(&mut self) {` -- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L6) - - **Line:** 6 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L23) - - **Line:** 23 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L328) - - **Line:** 328 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L145) - - **Line:** 145 +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1383) + - **Line:** 1383 - **Context:** `Unknown` ### UR-027 @@ -4606,41 +4294,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L189) - **Line:** 189 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1939) - - **Line:** 1939 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L33) - - **Line:** 33 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L46) - - **Line:** 46 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L140) - - **Line:** 140 - - **Context:** `pub fn with_crossfade_clamped(mut self) -> Self {` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L193) - - **Line:** 193 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L210) - - **Line:** 210 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L234) - - **Line:** 234 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L270) - - **Line:** 270 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L299) - - **Line:** 299 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L326) - - **Line:** 326 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L337) - - **Line:** 337 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2028) + - **Line:** 2028 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L563) - **Line:** 563 @@ -4666,19 +4321,41 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) - **Line:** 3 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L33) +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L50) + - **Line:** 50 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L33) - **Line:** 33 - **Context:** `Unknown` - -### UR-028 - -**Locations:** 2 file(s) - -- **File:** [`src/lib/components/player/MiniPlayer.svelte`](src/lib/components/player/MiniPlayer.svelte#L1) - - **Line:** 1 +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L46) + - **Line:** 46 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/AudioPlayer.svelte`](src/lib/components/player/AudioPlayer.svelte#L1) - - **Line:** 1 +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L140) + - **Line:** 140 + - **Context:** `pub fn with_crossfade_clamped(mut self) -> Self {` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L334) + - **Line:** 334 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L351) + - **Line:** 351 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L375) + - **Line:** 375 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L411) + - **Line:** 411 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L440) + - **Line:** 440 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L467) + - **Line:** 467 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L478) + - **Line:** 478 - **Context:** `Unknown` ### UR-029 @@ -4688,40 +4365,43 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` - **File:** [`src/lib/components/library/LibraryGrid.svelte`](src/lib/components/library/LibraryGrid.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L2) - - **Line:** 2 +- **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L1) + - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/stores/viewMode.test.ts`](src/lib/stores/viewMode.test.ts#L7) - **Line:** 7 - **Context:** `Unknown` +- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` ### UR-034 **Locations:** 10 file(s) +- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` - **File:** [`src/routes/library/movies/+page.svelte`](src/routes/library/movies/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` - **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L1) +- **File:** [`src/lib/components/home/HeroBanner.svelte`](src/lib/components/home/HeroBanner.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/utils/heroMix.ts`](src/lib/utils/heroMix.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` - **File:** [`src/lib/components/home/Carousel.svelte`](src/lib/components/home/Carousel.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/components/home/HeroBanner.svelte`](src/lib/components/home/HeroBanner.svelte#L1) - - **Line:** 1 +- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/music.ts`](src/lib/stores/music.ts#L3) + - **Line:** 3 - **Context:** `Unknown` - **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) - **Line:** 3 @@ -4729,11 +4409,8 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src/lib/stores/music.ts`](src/lib/stores/music.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/movies.ts`](src/lib/stores/movies.ts#L3) - - **Line:** 3 +- **File:** [`src/lib/utils/heroMix.ts`](src/lib/utils/heroMix.ts#L8) + - **Line:** 8 - **Context:** `Unknown` ### UR-035 @@ -4743,18 +4420,18 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/CrewLinks.svelte`](src/lib/components/library/CrewLinks.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` - **File:** [`src/lib/components/library/CastSection.svelte`](src/lib/components/library/CastSection.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L4) - - **Line:** 4 +- **File:** [`src/lib/components/library/CrewLinks.svelte`](src/lib/components/library/CrewLinks.svelte#L1) + - **Line:** 1 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L4) + - **Line:** 4 + - **Context:** `Unknown` ### UR-038 @@ -4766,19 +4443,31 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, ### UR-040 -**Locations:** 42 file(s) +**Locations:** 45 file(s) -- **File:** [`src/lib/utils/backgroundAudio.ts`](src/lib/utils/backgroundAudio.ts#L4) - - **Line:** 4 +- **File:** [`src/lib/api/repository-client.test.ts`](src/lib/api/repository-client.test.ts#L434) + - **Line:** 434 - **Context:** `Unknown` -- **File:** [`src/lib/utils/backgroundAudio.test.ts`](src/lib/utils/backgroundAudio.test.ts#L7) - - **Line:** 7 +- **File:** [`src/lib/api/repository-client.test.ts`](src/lib/api/repository-client.test.ts#L451) + - **Line:** 451 - **Context:** `Unknown` -- **File:** [`src/lib/player/backgroundAudio.commands.test.ts`](src/lib/player/backgroundAudio.commands.test.ts#L7) - - **Line:** 7 +- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L234) + - **Line:** 234 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L38) + - **Line:** 38 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L51) + - **Line:** 51 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L283) + - **Line:** 283 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L306) + - **Line:** 306 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1518) + - **Line:** 1518 - **Context:** `Unknown` - **File:** [`src/lib/components/player/backgroundAudioHandoff.test.ts`](src/lib/components/player/backgroundAudioHandoff.test.ts#L11) - **Line:** 11 @@ -4789,35 +4478,23 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/player/backgroundAudioHandoff.ts`](src/lib/components/player/backgroundAudioHandoff.ts#L69) - **Line:** 69 - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/backgroundAudio.test.ts`](src/lib/utils/backgroundAudio.test.ts#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/backgroundAudio.ts`](src/lib/utils/backgroundAudio.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` - **File:** [`src/lib/services/playerEvents.regression.test.ts`](src/lib/services/playerEvents.regression.test.ts#L155) - **Line:** 155 - **Context:** `Unknown` - **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L287) - **Line:** 287 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L38) - - **Line:** 38 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L51) - - **Line:** 51 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L249) - - **Line:** 249 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L272) - - **Line:** 272 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1438) - - **Line:** 1438 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.test.ts`](src/lib/api/repository-client.test.ts#L434) - - **Line:** 434 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.test.ts`](src/lib/api/repository-client.test.ts#L451) - - **Line:** 451 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L234) - - **Line:** 234 +- **File:** [`src/lib/player/backgroundAudio.commands.test.ts`](src/lib/player/backgroundAudio.commands.test.ts#L7) + - **Line:** 7 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/stream_end.rs`](src-tauri/src/player/stream_end.rs#L3) - **Line:** 3 @@ -4831,53 +4508,44 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L199) - **Line:** 199 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1261) - - **Line:** 1261 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L784) + - **Line:** 784 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1275) - - **Line:** 1275 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1299) + - **Line:** 1299 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1288) - - **Line:** 1288 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1313) + - **Line:** 1313 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1297) - - **Line:** 1297 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1326) + - **Line:** 1326 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1335) + - **Line:** 1335 - **Context:** `pub fn exit_background_audio(&self) -> f64 {` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1304) - - **Line:** 1304 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1342) + - **Line:** 1342 - **Context:** `pub fn is_background_audio_active(&self) -> bool {` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1319) - - **Line:** 1319 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1357) + - **Line:** 1357 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1377) - - **Line:** 1377 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1415) + - **Line:** 1415 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1407) - - **Line:** 1407 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1447) + - **Line:** 1447 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1464) - - **Line:** 1464 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1504) + - **Line:** 1504 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1495) - - **Line:** 1495 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1535) + - **Line:** 1535 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1559) - - **Line:** 1559 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1599) + - **Line:** 1599 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L129) - - **Line:** 129 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L104) - - **Line:** 104 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L450) - - **Line:** 450 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2397) - - **Line:** 2397 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2438) - - **Line:** 2438 +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L3664) + - **Line:** 3664 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L145) - **Line:** 145 @@ -4885,22 +4553,32 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L299) - **Line:** 299 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L664) - - **Line:** 664 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L687) + - **Line:** 687 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L767) - - **Line:** 767 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L790) + - **Line:** 790 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L599) - **Line:** 599 - **Context:** `Unknown` - -### UR-041 - -**Locations:** 1 file(s) - -- **File:** [`src/lib/utils/pictureInPicture.ts`](src/lib/utils/pictureInPicture.ts#L4) - - **Line:** 4 +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L104) + - **Line:** 104 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L129) + - **Line:** 129 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L503) + - **Line:** 503 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2568) + - **Line:** 2568 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2640) + - **Line:** 2640 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2681) + - **Line:** 2681 - **Context:** `Unknown` ### UR-048 @@ -4919,17 +4597,20 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L7) - **Line:** 7 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L265) - - **Line:** 265 +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L272) + - **Line:** 272 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L353) - - **Line:** 353 +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L360) + - **Line:** 360 - **Context:** `Unknown` ### UR-049 **Locations:** 22 file(s) +- **File:** [`src/routes/library/+page.svelte`](src/routes/library/+page.svelte#L17) + - **Line:** 17 + - **Context:** `Unknown` - **File:** [`src/routes/search/searchPage.test.ts`](src/routes/search/searchPage.test.ts#L14) - **Line:** 14 - **Context:** `Unknown` @@ -4942,11 +4623,26 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L62) - **Line:** 62 - **Context:** `Unknown` -- **File:** [`src/routes/library/+page.svelte`](src/routes/library/+page.svelte#L17) - - **Line:** 17 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1492) + - **Line:** 1492 - **Context:** `Unknown` -- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L104) - - **Line:** 104 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2848) + - **Line:** 2848 + - **Context:** `export type SearchResult = { items: MediaItem[]; totalRecordCount: num...` +- **File:** [`src/lib/components/search/SearchScopeChips.svelte`](src/lib/components/search/SearchScopeChips.svelte#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src/lib/components/search/HeaderSearch.svelte`](src/lib/components/search/HeaderSearch.svelte#L12) + - **Line:** 12 + - **Context:** `Unknown` +- **File:** [`src/lib/components/search/HeaderSearch.test.ts`](src/lib/components/search/HeaderSearch.test.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L236) + - **Line:** 236 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/librarySearchScope.test.ts`](src/lib/stores/librarySearchScope.test.ts#L4) + - **Line:** 4 - **Context:** `Unknown` - **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L9) - **Line:** 9 @@ -4963,27 +4659,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L125) - **Line:** 125 - **Context:** `Unknown` -- **File:** [`src/lib/components/search/HeaderSearch.test.ts`](src/lib/components/search/HeaderSearch.test.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/components/search/SearchScopeChips.svelte`](src/lib/components/search/SearchScopeChips.svelte#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src/lib/components/search/HeaderSearch.svelte`](src/lib/components/search/HeaderSearch.svelte#L12) - - **Line:** 12 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1412) - - **Line:** 1412 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2759) - - **Line:** 2759 - - **Context:** `export type SearchResult = { items: MediaItem[]; totalRecordCount: num...` -- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L236) - - **Line:** 236 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/librarySearchScope.test.ts`](src/lib/stores/librarySearchScope.test.ts#L4) - - **Line:** 4 +- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L104) + - **Line:** 104 - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L482) + - **Line:** 482 + - **Context:** `pub struct SearchUpdateEvent {` - **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L311) - **Line:** 311 - **Context:** `Unknown` @@ -4993,58 +4674,23 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L374) - **Line:** 374 - **Context:** `impl SearchOptions {` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L482) - - **Line:** 482 - - **Context:** `pub struct SearchUpdateEvent {` - -### UR-050 - -**Locations:** 9 file(s) - -- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L240) - - **Line:** 240 - - **Context:** `Unknown` -- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L290) - - **Line:** 290 - - **Context:** `Unknown` -- **File:** [`src/lib/components/search/SearchResults.svelte`](src/lib/components/search/SearchResults.svelte#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/components/settings/SearchGroupOrderList.svelte`](src/lib/components/settings/SearchGroupOrderList.svelte#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1412) - - **Line:** 1412 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/searchGroupOrder.test.ts`](src/lib/stores/searchGroupOrder.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/searchGroupOrder.ts`](src/lib/stores/searchGroupOrder.ts#L6) - - **Line:** 6 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L482) - - **Line:** 482 - - **Context:** `pub struct SearchUpdateEvent {` ### UR-052 **Locations:** 23 file(s) -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L90) - - **Line:** 90 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L91) + - **Line:** 91 - **Context:** `Unknown` +- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L71) + - **Line:** 71 + - **Context:** `async function load() {` - **File:** [`src/routes/library/movies/+page.svelte`](src/routes/library/movies/+page.svelte#L73) - **Line:** 73 - **Context:** `async function load() {` - **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L74) - **Line:** 74 - **Context:** `async function load() {` -- **File:** [`src/routes/library/music/+page.svelte`](src/routes/library/music/+page.svelte#L71) - - **Line:** 71 - - **Context:** `async function load() {` - **File:** [`src/routes/library/favorites/+page.svelte`](src/routes/library/favorites/+page.svelte#L85) - **Line:** 85 - **Context:** `Unknown` @@ -5057,11 +4703,11 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/composables/useOfflineFilterReload.test.ts`](src/lib/composables/useOfflineFilterReload.test.ts#L1) - - **Line:** 1 +- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L10) + - **Line:** 10 - **Context:** `Unknown` -- **File:** [`src/lib/composables/useOfflineFilterReload.ts`](src/lib/composables/useOfflineFilterReload.ts#L26) - - **Line:** 26 +- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L245) + - **Line:** 245 - **Context:** `Unknown` - **File:** [`src/lib/services/offlineCatalog.ts`](src/lib/services/offlineCatalog.ts#L14) - **Line:** 14 @@ -5072,11 +4718,23 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/services/offlineCatalog.reload.test.ts`](src/lib/services/offlineCatalog.reload.test.ts#L11) - **Line:** 11 - **Context:** `Unknown` -- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L10) - - **Line:** 10 +- **File:** [`src/lib/composables/useOfflineFilterReload.test.ts`](src/lib/composables/useOfflineFilterReload.test.ts#L1) + - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L245) - - **Line:** 245 +- **File:** [`src/lib/composables/useOfflineFilterReload.ts`](src/lib/composables/useOfflineFilterReload.ts#L26) + - **Line:** 26 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L538) + - **Line:** 538 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L853) + - **Line:** 853 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L910) + - **Line:** 910 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L8) + - **Line:** 8 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3) - **Line:** 3 @@ -5087,52 +4745,38 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L43) - **Line:** 43 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2956) - - **Line:** 2956 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L538) - - **Line:** 538 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L854) - - **Line:** 854 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L911) - - **Line:** 911 - - **Context:** `Unknown` - -### UR-054 - -**Locations:** 6 file(s) - -- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L82) - - **Line:** 82 - - **Context:** `Unknown` -- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L104) - - **Line:** 104 - - **Context:** `Unknown` -- **File:** [`src/lib/components/AppHeader.svelte`](src/lib/components/AppHeader.svelte#L10) - - **Line:** 10 - - **Context:** `Unknown` -- **File:** [`src/lib/components/search/HeaderSearch.test.ts`](src/lib/components/search/HeaderSearch.test.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/components/search/HeaderSearch.svelte`](src/lib/components/search/HeaderSearch.svelte#L12) - - **Line:** 12 - - **Context:** `Unknown` -- **File:** [`src/lib/components/account/AccountMenu.svelte`](src/lib/components/account/AccountMenu.svelte#L7) - - **Line:** 7 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3012) + - **Line:** 3012 - **Context:** `Unknown` ### UR-055 -**Locations:** 27 file(s) +**Locations:** 37 file(s) - **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14) - **Line:** 14 - **Context:** `Unknown` +- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L97) + - **Line:** 97 + - **Context:** `Unknown` +- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L105) + - **Line:** 105 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L885) + - **Line:** 885 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L898) + - **Line:** 898 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L935) + - **Line:** 935 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1375) + - **Line:** 1375 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1383) + - **Line:** 1383 + - **Context:** `Unknown` - **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L26) - **Line:** 26 - **Context:** `Unknown` @@ -5142,65 +4786,23 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/downloads/DownloadedBrowse.svelte`](src/lib/components/downloads/DownloadedBrowse.svelte#L10) - **Line:** 10 - **Context:** `Unknown` +- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L315) + - **Line:** 315 + - **Context:** `Unknown` - **File:** [`src/lib/services/downloadedCatalog.ts`](src/lib/services/downloadedCatalog.ts#L12) - **Line:** 12 - **Context:** `Unknown` - **File:** [`src/lib/services/downloadedCatalog.ts`](src/lib/services/downloadedCatalog.ts#L95) - **Line:** 95 - **Context:** `function sizeOf(itemId: string): number {` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L855) - - **Line:** 855 +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L860) + - **Line:** 860 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1295) - - **Line:** 1295 +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L894) + - **Line:** 894 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1303) - - **Line:** 1303 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L97) - - **Line:** 97 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L105) - - **Line:** 105 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L315) - - **Line:** 315 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L808) - - **Line:** 808 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L835) - - **Line:** 835 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L939) - - **Line:** 939 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3584) - - **Line:** 3584 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3606) - - **Line:** 3606 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3640) - - **Line:** 3640 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3686) - - **Line:** 3686 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3707) - - **Line:** 3707 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3726) - - **Line:** 3726 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3787) - - **Line:** 3787 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L200) - - **Line:** 200 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L211) - - **Line:** 211 +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2011) + - **Line:** 2011 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L218) - **Line:** 218 @@ -5208,8 +4810,59 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L233) - **Line:** 233 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L1938) - - **Line:** 1938 +- **File:** [`src-tauri/src/download/stop.rs`](src-tauri/src/download/stop.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L42) + - **Line:** 42 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L247) + - **Line:** 247 + - **Context:** `/ One function so the writer and the cleaners cannot disagree again.` +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L336) + - **Line:** 336 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L200) + - **Line:** 200 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L211) + - **Line:** 211 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L848) + - **Line:** 848 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L857) + - **Line:** 857 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L884) + - **Line:** 884 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L990) + - **Line:** 990 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3696) + - **Line:** 3696 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3718) + - **Line:** 3718 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3758) + - **Line:** 3758 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3828) + - **Line:** 3828 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3874) + - **Line:** 3874 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3895) + - **Line:** 3895 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3914) + - **Line:** 3914 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3975) + - **Line:** 3975 - **Context:** `Unknown` ### UR-056 @@ -5219,11 +4872,17 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14) - **Line:** 14 - **Context:** `Unknown` -- **File:** [`src/lib/utils/formatBytes.ts`](src/lib/utils/formatBytes.ts#L8) - - **Line:** 8 +- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L113) + - **Line:** 113 - **Context:** `Unknown` -- **File:** [`src/lib/utils/formatBytes.test.ts`](src/lib/utils/formatBytes.test.ts#L4) - - **Line:** 4 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1391) + - **Line:** 1391 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1953) + - **Line:** 1953 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/LibraryGrid.svelte`](src/lib/components/library/LibraryGrid.svelte#L17) + - **Line:** 17 - **Context:** `Unknown` - **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L20) - **Line:** 20 @@ -5231,32 +4890,23 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L31) - **Line:** 31 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/LibraryGrid.svelte`](src/lib/components/library/LibraryGrid.svelte#L17) - - **Line:** 17 - - **Context:** `Unknown` - **File:** [`src/lib/components/downloads/DownloadedBrowse.svelte`](src/lib/components/downloads/DownloadedBrowse.svelte#L10) - **Line:** 10 - **Context:** `Unknown` +- **File:** [`src/lib/utils/formatBytes.ts`](src/lib/utils/formatBytes.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/formatBytes.test.ts`](src/lib/utils/formatBytes.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` - **File:** [`src/lib/services/downloadedCatalog.ts`](src/lib/services/downloadedCatalog.ts#L12) - **Line:** 12 - **Context:** `Unknown` - **File:** [`src/lib/services/downloadedCatalog.ts`](src/lib/services/downloadedCatalog.ts#L95) - **Line:** 95 - **Context:** `function sizeOf(itemId: string): number {` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1311) - - **Line:** 1311 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1864) - - **Line:** 1864 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L113) - - **Line:** 113 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L990) - - **Line:** 990 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3748) - - **Line:** 3748 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L250) + - **Line:** 250 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L259) - **Line:** 259 @@ -5264,8 +4914,11 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L218) - **Line:** 218 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L250) - - **Line:** 250 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1037) + - **Line:** 1037 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3936) + - **Line:** 3936 - **Context:** `Unknown` ### UR-057 @@ -5280,38 +4933,38 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 11 file(s) -- **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L97) - - **Line:** 97 - - **Context:** `Unknown` - **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L129) - - **Line:** 129 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L130) + - **Line:** 130 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L215) - - **Line:** 215 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L216) + - **Line:** 216 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L444) - - **Line:** 444 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L445) + - **Line:** 445 - **Context:** `Unknown` -- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L62) - - **Line:** 62 +- **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L97) + - **Line:** 97 - **Context:** `Unknown` -- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L86) - - **Line:** 86 +- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L69) + - **Line:** 69 + - **Context:** `Unknown` +- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L93) + - **Line:** 93 - **Context:** `Unknown` - **File:** [`src/lib/components/library/EpisodeFocusView.test.ts`](src/lib/components/library/EpisodeFocusView.test.ts#L7) - **Line:** 7 - **Context:** `Unknown` +- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L39) + - **Line:** 39 + - **Context:** `Unknown` - **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L7) - **Line:** 7 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L232) - - **Line:** 232 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L39) - - **Line:** 39 +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L233) + - **Line:** 233 - **Context:** `Unknown` ### UR-062 @@ -5321,47 +4974,44 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L114) - - **Line:** 114 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L115) + - **Line:** 115 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L187) - - **Line:** 187 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L188) + - **Line:** 188 - **Context:** `Unknown` -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L308) - - **Line:** 308 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L309) + - **Line:** 309 - **Context:** `async function handlePlayAll() {` -- **File:** [`src/lib/components/library/episodeStrip.ts`](src/lib/components/library/episodeStrip.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeRow.svelte`](src/lib/components/library/EpisodeRow.svelte#L16) - - **Line:** 16 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L19) - - **Line:** 19 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/seriesNavigation.ts`](src/lib/components/library/seriesNavigation.ts#L13) - - **Line:** 13 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/seriesNavigation.test.ts`](src/lib/components/library/seriesNavigation.test.ts#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1350) - - **Line:** 1350 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1363) - - **Line:** 1363 - - **Context:** `Unknown` - **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L144) - **Line:** 144 - **Context:** `Unknown` - **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L154) - **Line:** 154 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/series_progress.rs`](src-tauri/src/repository/series_progress.rs#L12) - - **Line:** 12 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1430) + - **Line:** 1430 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1443) + - **Line:** 1443 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/episodeStrip.ts`](src/lib/components/library/episodeStrip.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/seriesNavigation.test.ts`](src/lib/components/library/seriesNavigation.test.ts#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/seriesNavigation.ts`](src/lib/components/library/seriesNavigation.ts#L13) + - **Line:** 13 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/EpisodeRow.svelte`](src/lib/components/library/EpisodeRow.svelte#L17) + - **Line:** 17 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L20) + - **Line:** 20 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L344) - **Line:** 344 @@ -5369,11 +5019,17 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L365) - **Line:** 365 - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/series_progress.rs`](src-tauri/src/repository/series_progress.rs#L12) + - **Line:** 12 + - **Context:** `Unknown` ### UR-063 **Locations:** 10 file(s) +- **File:** [`src/routes/library/shows/genres/+page.ts`](src/routes/library/shows/genres/+page.ts#L6) + - **Line:** 6 + - **Context:** `Unknown` - **File:** [`src/routes/library/movies/genres/+page.ts`](src/routes/library/movies/genres/+page.ts#L6) - **Line:** 6 - **Context:** `Unknown` @@ -5383,17 +5039,14 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/library/movies/+page.svelte`](src/routes/library/movies/+page.svelte#L8) - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L8) - - **Line:** 8 - - **Context:** `Unknown` - **File:** [`src/routes/library/tv/shows/+page.ts`](src/routes/library/tv/shows/+page.ts#L6) - **Line:** 6 - **Context:** `Unknown` -- **File:** [`src/routes/library/shows/genres/+page.ts`](src/routes/library/shows/genres/+page.ts#L6) - - **Line:** 6 +- **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L8) + - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src/lib/utils/libraryView.ts`](src/lib/utils/libraryView.ts#L9) - - **Line:** 9 +- **File:** [`src/lib/components/library/LibraryViewTabs.svelte`](src/lib/components/library/LibraryViewTabs.svelte#L8) + - **Line:** 8 - **Context:** `Unknown` - **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L48) - **Line:** 48 @@ -5401,22 +5054,45 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/GenericGenreBrowser.svelte`](src/lib/components/library/GenericGenreBrowser.svelte#L42) - **Line:** 42 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/LibraryViewTabs.svelte`](src/lib/components/library/LibraryViewTabs.svelte#L8) - - **Line:** 8 +- **File:** [`src/lib/utils/libraryView.ts`](src/lib/utils/libraryView.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` + +### UR-064 + +**Locations:** 7 file(s) + +- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L165) + - **Line:** 165 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1457) + - **Line:** 1457 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/ClearHistoryButton.svelte`](src/lib/components/library/ClearHistoryButton.svelte#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L387) + - **Line:** 387 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2041) + - **Line:** 2041 - **Context:** `Unknown` ### UR-066 -**Locations:** 6 file(s) +**Locations:** 7 file(s) -- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L254) - - **Line:** 254 +- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L261) + - **Line:** 261 - **Context:** `Unknown` -- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L129) - - **Line:** 129 - - **Context:** `Unknown` -- **File:** [`src/lib/utils/layoutShell.test.ts`](src/lib/utils/layoutShell.test.ts#L158) - - **Line:** 158 +- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L23) + - **Line:** 23 - **Context:** `Unknown` - **File:** [`src/lib/utils/safeArea.ts`](src/lib/utils/safeArea.ts#L4) - **Line:** 4 @@ -5424,35 +5100,47 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/utils/safeArea.test.ts`](src/lib/utils/safeArea.test.ts#L17) - **Line:** 17 - **Context:** `Unknown` -- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L23) - - **Line:** 23 +- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L129) + - **Line:** 129 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/layoutShell.test.ts`](src/lib/utils/layoutShell.test.ts#L158) + - **Line:** 158 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/immersive.ts`](src/lib/utils/immersive.ts#L4) + - **Line:** 4 - **Context:** `Unknown` ### UR-067 -**Locations:** 39 file(s) +**Locations:** 40 file(s) -- **File:** [`src/routes/library/+page.svelte`](src/routes/library/+page.svelte#L207) - - **Line:** 207 - - **Context:** `Unknown` - **File:** [`src/routes/library/favorites/+page.svelte`](src/routes/library/favorites/+page.svelte#L9) - **Line:** 9 - **Context:** `Unknown` - **File:** [`src/routes/library/favorites/+page.svelte`](src/routes/library/favorites/+page.svelte#L41) - **Line:** 41 - **Context:** `Unknown` -- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L137) - - **Line:** 137 +- **File:** [`src/routes/library/+page.svelte`](src/routes/library/+page.svelte#L207) + - **Line:** 207 - **Context:** `Unknown` -- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L228) - - **Line:** 228 +- **File:** [`src/routes/library/+page.svelte`](src/routes/library/+page.svelte#L251) + - **Line:** 251 - **Context:** `Unknown` -- **File:** [`src/lib/utils/favoritesView.test.ts`](src/lib/utils/favoritesView.test.ts#L1) - - **Line:** 1 +- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L144) + - **Line:** 144 - **Context:** `Unknown` -- **File:** [`src/lib/utils/favoritesView.ts`](src/lib/utils/favoritesView.ts#L8) - - **Line:** 8 +- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L238) + - **Line:** 238 - **Context:** `Unknown` +- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L322) + - **Line:** 322 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1595) + - **Line:** 1595 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2053) + - **Line:** 2053 + - **Context:** `export type GetItemsOptions = { startIndex?: number | null; limit?: nu...` - **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L1) - **Line:** 1 - **Context:** `Unknown` @@ -5465,21 +5153,12 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L288) - **Line:** 288 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1506) - - **Line:** 1506 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1964) - - **Line:** 1964 - - **Context:** `export type GetItemsOptions = { startIndex?: number | null; limit?: nu...` -- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L322) - - **Line:** 322 +- **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L79) + - **Line:** 79 - **Context:** `Unknown` - **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L79) - - **Line:** 79 - - **Context:** `Unknown` - **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) - **Line:** 2 - **Context:** `Unknown` @@ -5489,147 +5168,1349 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L57) - **Line:** 57 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1222) - - **Line:** 1222 +- **File:** [`src/lib/utils/favoritesView.ts`](src/lib/utils/favoritesView.ts#L8) + - **Line:** 8 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1953) - - **Line:** 1953 +- **File:** [`src/lib/utils/favoritesView.test.ts`](src/lib/utils/favoritesView.test.ts#L1) + - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4173) - - **Line:** 4173 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L886) + - **Line:** 886 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4208) - - **Line:** 4208 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4253) - - **Line:** 4253 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L923) + - **Line:** 923 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L298) - **Line:** 298 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L223) - - **Line:** 223 - - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L141) - **Line:** 141 - **Context:** `Unknown` - **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L156) - **Line:** 156 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L855) - - **Line:** 855 +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L937) + - **Line:** 937 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L622) - - **Line:** 622 +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L233) + - **Line:** 233 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L659) - - **Line:** 659 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1269) + - **Line:** 1269 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L681) - - **Line:** 681 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2009) + - **Line:** 2009 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1836) - - **Line:** 1836 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4361) + - **Line:** 4361 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2624) - - **Line:** 2624 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4396) + - **Line:** 4396 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2646) - - **Line:** 2646 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4441) + - **Line:** 4441 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2655) - - **Line:** 2655 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L682) + - **Line:** 682 - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2677) - - **Line:** 2677 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L719) + - **Line:** 719 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L840) - - **Line:** 840 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L761) + - **Line:** 761 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L877) - - **Line:** 877 +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1981) + - **Line:** 1981 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3009) + - **Line:** 3009 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3031) + - **Line:** 3031 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3040) + - **Line:** 3040 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3062) + - **Line:** 3062 - **Context:** `Unknown` ### UR-068 **Locations:** 14 file(s) -- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L567) - - **Line:** 567 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L232) - - **Line:** 232 +- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L584) + - **Line:** 584 - **Context:** `Unknown` - **File:** [`src/lib/components/library/ArtistDetailView.svelte`](src/lib/components/library/ArtistDetailView.svelte#L133) - **Line:** 133 - **Context:** `Unknown` +- **File:** [`src/lib/components/library/PlaylistDetailView.svelte`](src/lib/components/library/PlaylistDetailView.svelte#L219) + - **Line:** 219 + - **Context:** `Unknown` - **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L1) - **Line:** 1 - **Context:** `Unknown` - **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L45) - **Line:** 45 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L132) - - **Line:** 132 +- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L139) + - **Line:** 139 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L281) - - **Line:** 281 +- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L295) + - **Line:** 295 - **Context:** `Unknown` -- **File:** [`src/lib/components/library/PlaylistDetailView.svelte`](src/lib/components/library/PlaylistDetailView.svelte#L219) - - **Line:** 219 +- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L233) + - **Line:** 233 - **Context:** `Unknown` - **File:** [`src/lib/components/FavoriteButton.svelte`](src/lib/components/FavoriteButton.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src/lib/services/favorites.ts`](src/lib/services/favorites.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src/lib/services/favorites.ts`](src/lib/services/favorites.ts#L38) - - **Line:** 38 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) - - **Line:** 1 - - **Context:** `Unknown` - **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L8) - **Line:** 8 - **Context:** `Unknown` - **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L55) - **Line:** 55 - **Context:** `Unknown` +- **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/services/favorites.ts`](src/lib/services/favorites.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/services/favorites.ts`](src/lib/services/favorites.ts#L38) + - **Line:** 38 + - **Context:** `Unknown` + +### IT-003 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/mpv_backend_test.rs`](src-tauri/src/player/mpv_backend_test.rs#L8) + - **Line:** 8 + - **Context:** `Unknown` + +### IT-004 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/mpv_backend_test.rs`](src-tauri/src/player/mpv_backend_test.rs#L8) + - **Line:** 8 + - **Context:** `Unknown` + +### IT-013 + +**Locations:** 4 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L38) + - **Line:** 38 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L51) + - **Line:** 51 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L687) + - **Line:** 687 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L790) + - **Line:** 790 + - **Context:** `Unknown` + +### IT-016 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3012) + - **Line:** 3012 + - **Context:** `Unknown` + +### UT-003 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535) + - **Line:** 535 + - **Context:** `pub enum AddPosition {` + +### UT-005 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535) + - **Line:** 535 + - **Context:** `pub enum AddPosition {` + +### UT-012 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/sleep_timer.rs`](src-tauri/src/player/sleep_timer.rs#L81) + - **Line:** 81 + - **Context:** `pub fn cancel(&mut self) {` + +### UT-018 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) + - **Line:** 311 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` + +### UT-019 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) + - **Line:** 311 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` + +### UT-020 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) + - **Line:** 311 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` + +### UT-021 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) + - **Line:** 311 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` + +### UT-022 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) + - **Line:** 311 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` + +### UT-023 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) + - **Line:** 311 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` + +### UT-025 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) + - **Line:** 311 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` + +### UT-029 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` + +### UT-031 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` + +### UT-033 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` + +### UT-051 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3975) + - **Line:** 3975 + - **Context:** `Unknown` + +### UT-059 + +**Locations:** 3 file(s) + +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L503) + - **Line:** 503 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2640) + - **Line:** 2640 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2681) + - **Line:** 2681 + - **Context:** `Unknown` + +### UT-062 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/utils/backgroundAudio.test.ts`](src/lib/utils/backgroundAudio.test.ts#L7) + - **Line:** 7 + - **Context:** `Unknown` + +### UT-066 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/services/networkType.test.ts`](src/lib/services/networkType.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` + +### UT-067 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3012) + - **Line:** 3012 + - **Context:** `Unknown` + +### UT-071 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/utils/formatBytes.test.ts`](src/lib/utils/formatBytes.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` + +### UT-072 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3696) + - **Line:** 3696 + - **Context:** `Unknown` + +### UT-073 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3895) + - **Line:** 3895 + - **Context:** `Unknown` + +### UT-074 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3914) + - **Line:** 3914 + - **Context:** `Unknown` + +### UT-075 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3936) + - **Line:** 3936 + - **Context:** `Unknown` + +### UT-076 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3718) + - **Line:** 3718 + - **Context:** `Unknown` + +### UT-077 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3828) + - **Line:** 3828 + - **Context:** `Unknown` + +### UT-078 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3874) + - **Line:** 3874 + - **Context:** `Unknown` + +### UT-079 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L411) + - **Line:** 411 + - **Context:** `Unknown` + +### UT-080 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L440) + - **Line:** 440 + - **Context:** `Unknown` + +### UT-081 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L467) + - **Line:** 467 + - **Context:** `Unknown` + +### UT-082 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L478) + - **Line:** 478 + - **Context:** `Unknown` + +### UT-083 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L747) + - **Line:** 747 + - **Context:** `Unknown` + +### UT-084 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L759) + - **Line:** 759 + - **Context:** `Unknown` + +### UT-090 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/components/player/VideoPlayer.touchScrub.test.ts`](src/lib/components/player/VideoPlayer.touchScrub.test.ts#L21) + - **Line:** 21 + - **Context:** `Unknown` + +### UT-091 + +**Locations:** 2 file(s) + +- **File:** [`src/lib/player/transport.authority.test.ts`](src/lib/player/transport.authority.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L15) + - **Line:** 15 + - **Context:** `Unknown` + +### UT-095 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/utils/safeArea.test.ts`](src/lib/utils/safeArea.test.ts#L17) + - **Line:** 17 + - **Context:** `Unknown` + +### UT-096 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/utils/safeArea.test.ts`](src/lib/utils/safeArea.test.ts#L17) + - **Line:** 17 + - **Context:** `Unknown` + +### UT-097 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/utils/safeArea.test.ts`](src/lib/utils/safeArea.test.ts#L17) + - **Line:** 17 + - **Context:** `Unknown` + +### UT-098 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/utils/layoutShell.test.ts`](src/lib/utils/layoutShell.test.ts#L158) + - **Line:** 158 + - **Context:** `Unknown` + +### UT-099 + +**Locations:** 3 file(s) + +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L650) + - **Line:** 650 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3118) + - **Line:** 3118 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3149) + - **Line:** 3149 + - **Context:** `Unknown` + +### UT-100 + +**Locations:** 6 file(s) + +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L233) + - **Line:** 233 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L761) + - **Line:** 761 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1981) + - **Line:** 1981 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3009) + - **Line:** 3009 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3031) + - **Line:** 3031 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3040) + - **Line:** 3040 + - **Context:** `Unknown` + +### UT-101 + +**Locations:** 4 file(s) + +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L233) + - **Line:** 233 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2009) + - **Line:** 2009 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4361) + - **Line:** 4361 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4396) + - **Line:** 4396 + - **Context:** `Unknown` + +### UT-102 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L688) + - **Line:** 688 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4489) + - **Line:** 4489 + - **Context:** `Unknown` + +### UT-105 + +**Locations:** 3 file(s) + +- **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L55) + - **Line:** 55 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) + - **Line:** 1 + - **Context:** `Unknown` + +### UT-106 + +**Locations:** 3 file(s) + +- **File:** [`src/routes/library/favorites/+page.svelte`](src/routes/library/favorites/+page.svelte#L41) + - **Line:** 41 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L79) + - **Line:** 79 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) + - **Line:** 1 + - **Context:** `Unknown` + +### UR-003 + +**Locations:** 28 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L149) + - **Line:** 149 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2401) + - **Line:** 2401 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2437) + - **Line:** 2437 + - **Context:** `export type PlaybackProgress = { itemId: string;` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2541) + - **Line:** 2541 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/nativeVideo.ts`](src/lib/stores/nativeVideo.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/videoSurface.ts`](src/lib/utils/videoSurface.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackCapabilities.ts`](src/lib/services/playbackCapabilities.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/webviewAudio.ts`](src/lib/services/webviewAudio.ts#L18) + - **Line:** 18 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/rustReportHost.ts`](src/lib/player/adapters/rustReportHost.ts#L13) + - **Line:** 13 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) + - **Line:** 15 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/webviewAudioAdapter.ts`](src/lib/player/adapters/webviewAudioAdapter.ts#L18) + - **Line:** 18 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) + - **Line:** 19 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/adapterSelection.test.ts`](src/lib/player/adapters/adapterSelection.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L20) + - **Line:** 20 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L24) + - **Line:** 24 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mpv_backend_test.rs`](src-tauri/src/player/mpv_backend_test.rs#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L39) + - **Line:** 39 + - **Context:** `pub fn playback_failed>(message: S) -> Self {` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L25) + - **Line:** 25 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L184) + - **Line:** 184 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L60) + - **Line:** 60 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L142) + - **Line:** 142 + - **Context:** `pub enum MediaType {` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1807) + - **Line:** 1807 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1824) + - **Line:** 1824 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` + +### UR-004 + +**Locations:** 35 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L306) + - **Line:** 306 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2437) + - **Line:** 2437 + - **Context:** `export type PlaybackProgress = { itemId: string;` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2541) + - **Line:** 2541 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/AudioPlayer.svelte`](src/lib/components/player/AudioPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/nativeVideo.ts`](src/lib/stores/nativeVideo.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/videoSurface.ts`](src/lib/utils/videoSurface.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/preload.ts`](src/lib/services/preload.ts#L5) + - **Line:** 5 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.regression.test.ts`](src/lib/services/playerEvents.regression.test.ts#L155) + - **Line:** 155 + - **Context:** `Unknown` +- **File:** [`src/lib/services/preload.test.ts`](src/lib/services/preload.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L287) + - **Line:** 287 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/adapterSelection.test.ts`](src/lib/player/adapters/adapterSelection.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L20) + - **Line:** 20 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mpv_backend_test.rs`](src-tauri/src/player/mpv_backend_test.rs#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L39) + - **Line:** 39 + - **Context:** `pub fn playback_failed>(message: S) -> Self {` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L25) + - **Line:** 25 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L184) + - **Line:** 184 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L60) + - **Line:** 60 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L142) + - **Line:** 142 + - **Context:** `pub enum MediaType {` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1415) + - **Line:** 1415 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1504) + - **Line:** 1504 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1535) + - **Line:** 1535 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L299) + - **Line:** 299 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L424) + - **Line:** 424 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1950) + - **Line:** 1950 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2901) + - **Line:** 2901 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L29) + - **Line:** 29 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L40) + - **Line:** 40 + - **Context:** `pub fn clamp_max_audio_channels(reported: Option) -> u32 {` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L88) + - **Line:** 88 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L113) + - **Line:** 113 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L135) + - **Line:** 135 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L152) + - **Line:** 152 + - **Context:** `Unknown` + +### UR-005 + +**Locations:** 83 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L149) + - **Line:** 149 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2401) + - **Line:** 2401 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2559) + - **Line:** 2559 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2616) + - **Line:** 2616 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2813) + - **Line:** 2813 + - **Context:** `export type RemoteSessionStatus = { position: number; duration: number...` +- **File:** [`src/lib/components/player/Controls.svelte`](src/lib/components/player/Controls.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/MiniPlayer.svelte`](src/lib/components/player/MiniPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/videoFit.ts`](src/lib/components/player/videoFit.ts#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/tapGestures.ts`](src/lib/components/player/tapGestures.ts#L21) + - **Line:** 21 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/playerSurface.test.ts`](src/lib/components/player/playerSurface.test.ts#L13) + - **Line:** 13 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/AudioPlayer.svelte`](src/lib/components/player/AudioPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/backgroundAudioHandoff.ts`](src/lib/components/player/backgroundAudioHandoff.ts#L69) + - **Line:** 69 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.tapSurface.test.ts`](src/lib/components/player/VideoPlayer.tapSurface.test.ts#L5) + - **Line:** 5 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.touchScrub.test.ts`](src/lib/components/player/VideoPlayer.touchScrub.test.ts#L21) + - **Line:** 21 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L801) + - **Line:** 801 + - **Context:** `Unknown` +- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L23) + - **Line:** 23 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/queue.test.ts`](src/lib/stores/queue.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L105) + - **Line:** 105 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L110) + - **Line:** 110 + - **Context:** `async function next() {` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L115) + - **Line:** 115 + - **Context:** `async function previous() {` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L120) + - **Line:** 120 + - **Context:** `async function skipTo(index: number) {` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L125) + - **Line:** 125 + - **Context:** `async function toggleShuffle() {` +- **File:** [`src/lib/stores/appState.ts`](src/lib/stores/appState.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/player.ts`](src/lib/stores/player.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/player.ts`](src/lib/stores/player.ts#L31) + - **Line:** 31 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/playerVisibility.test.ts`](src/lib/stores/playerVisibility.test.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/duration.test.ts`](src/lib/utils/duration.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L17) + - **Line:** 17 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/layoutShell.test.ts`](src/lib/utils/layoutShell.test.ts#L14) + - **Line:** 14 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.regression.test.ts`](src/lib/services/playerEvents.regression.test.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L156) + - **Line:** 156 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L186) + - **Line:** 186 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackCapabilities.ts`](src/lib/services/playbackCapabilities.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10) + - **Line:** 10 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L21) + - **Line:** 21 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L58) + - **Line:** 58 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L89) + - **Line:** 89 + - **Context:** `Unknown` +- **File:** [`src/lib/services/webviewAudio.ts`](src/lib/services/webviewAudio.ts#L18) + - **Line:** 18 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/rustReportHost.ts`](src/lib/player/adapters/rustReportHost.ts#L13) + - **Line:** 13 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) + - **Line:** 15 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/webviewAudioAdapter.ts`](src/lib/player/adapters/webviewAudioAdapter.ts#L18) + - **Line:** 18 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) + - **Line:** 19 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L24) + - **Line:** 24 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L57) + - **Line:** 57 + - **Context:** `Unknown` +- **File:** [`src/lib/player/transport.authority.test.ts`](src/lib/player/transport.authority.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L15) + - **Line:** 15 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L20) + - **Line:** 20 + - **Context:** `pub enum RepeatMode {` +- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535) + - **Line:** 535 + - **Context:** `pub enum AddPosition {` +- **File:** [`src-tauri/src/player/state.rs`](src-tauri/src/player/state.rs#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/state.rs`](src-tauri/src/player/state.rs#L25) + - **Line:** 25 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L42) + - **Line:** 42 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L46) + - **Line:** 46 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L50) + - **Line:** 50 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L54) + - **Line:** 54 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L58) + - **Line:** 58 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L6) + - **Line:** 6 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L23) + - **Line:** 23 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L25) + - **Line:** 25 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/webview_audio_backend.rs`](src-tauri/src/player/webview_audio_backend.rs#L184) + - **Line:** 184 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L564) + - **Line:** 564 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L573) + - **Line:** 573 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L553) + - **Line:** 553 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L561) + - **Line:** 561 + - **Context:** `pub fn is_html5_active(&self) -> bool {` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L605) + - **Line:** 605 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L784) + - **Line:** 784 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1313) + - **Line:** 1313 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1326) + - **Line:** 1326 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L3664) + - **Line:** 3664 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L3707) + - **Line:** 3707 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/session.rs`](src-tauri/src/commands/player/session.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1807) + - **Line:** 1807 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1824) + - **Line:** 1824 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/conversions.rs`](src-tauri/src/commands/conversions.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` + +### UR-008 + +**Locations:** 2 file(s) + +- **File:** [`src/lib/components/library/GenericMediaListPage.searchEvent.test.ts`](src/lib/components/library/GenericMediaListPage.searchEvent.test.ts#L12) + - **Line:** 12 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` + +### UR-009 + +**Locations:** 15 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L615) + - **Line:** 615 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L631) + - **Line:** 631 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/auth.test.ts`](src/lib/stores/auth.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L6) + - **Line:** 6 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L266) + - **Line:** 266 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L293) + - **Line:** 293 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/validation.test.ts`](src/lib/utils/validation.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/deviceId.test.ts`](src/lib/services/deviceId.test.ts#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src/lib/services/deviceId.ts`](src/lib/services/deviceId.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/services/deviceId.ts`](src/lib/services/deviceId.ts#L23) + - **Line:** 23 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/device.rs`](src-tauri/src/commands/device.rs#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/device.rs`](src-tauri/src/commands/device.rs#L24) + - **Line:** 24 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/device.rs`](src-tauri/src/commands/device.rs#L81) + - **Line:** 81 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` + +### UR-012 + +**Locations:** 9 file(s) + +- **File:** [`src/lib/stores/auth.test.ts`](src/lib/stores/auth.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L6) + - **Line:** 6 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L293) + - **Line:** 293 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L445) + - **Line:** 445 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) + - **Line:** 311 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` +- **File:** [`src-tauri/src/credentials.rs`](src-tauri/src/credentials.rs#L10) + - **Line:** 10 + - **Context:** `Unknown` + +### UR-013 + +**Locations:** 2 file(s) + +- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` + +### UR-015 + +**Locations:** 13 file(s) + +- **File:** [`src/lib/stores/queue.test.ts`](src/lib/stores/queue.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L105) + - **Line:** 105 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L110) + - **Line:** 110 + - **Context:** `async function next() {` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L115) + - **Line:** 115 + - **Context:** `async function previous() {` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L120) + - **Line:** 120 + - **Context:** `async function skipTo(index: number) {` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L125) + - **Line:** 125 + - **Context:** `async function toggleShuffle() {` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L130) + - **Line:** 130 + - **Context:** `async function cycleRepeat() {` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L135) + - **Line:** 135 + - **Context:** `async function removeFromQueue(index: number) {` +- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L140) + - **Line:** 140 + - **Context:** `async function moveInQueue(fromIndex: number, toIndex: number) {` +- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L20) + - **Line:** 20 + - **Context:** `pub enum RepeatMode {` +- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535) + - **Line:** 535 + - **Context:** `pub enum AddPosition {` +- **File:** [`src-tauri/src/commands/player/queue.rs`](src-tauri/src/commands/player/queue.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` + +### UR-016 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L62) + - **Line:** 62 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L251) + - **Line:** 251 + - **Context:** `Unknown` + +### UR-018 + +**Locations:** 3 file(s) + +- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2113) + - **Line:** 2113 + - **Context:** `Unknown` + +### UR-021 + +**Locations:** 5 file(s) + +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) + - **Line:** 15 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) + - **Line:** 19 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/storage/series_prefs.rs`](src-tauri/src/commands/storage/series_prefs.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` + +### UR-024 + +**Locations:** 2 file(s) + +- **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` + +### UR-026 + +**Locations:** 19 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L283) + - **Line:** 283 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2616) + - **Line:** 2616 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2873) + - **Line:** 2873 + - **Context:** `export type SessionInfo = { id?: string | null; userId?: string | null...` +- **File:** [`src/lib/components/player/SleepTimerModal.svelte`](src/lib/components/player/SleepTimerModal.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/sleepTimer.ts`](src/lib/stores/sleepTimer.ts#L10) + - **Line:** 10 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L264) + - **Line:** 264 + - **Context:** `function handleMediaLoaded(duration: number): void {` +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L324) + - **Line:** 324 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/sleep_timer.rs`](src-tauri/src/player/sleep_timer.rs#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/sleep_timer.rs`](src-tauri/src/player/sleep_timer.rs#L81) + - **Line:** 81 + - **Context:** `pub fn cancel(&mut self) {` +- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L6) + - **Line:** 6 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L23) + - **Line:** 23 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/autoplay.rs`](src-tauri/src/player/autoplay.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L328) + - **Line:** 328 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L145) + - **Line:** 145 + - **Context:** `Unknown` + +### UR-036 + +**Locations:** 3 file(s) + +- **File:** [`src/lib/components/library/PersonDetailView.svelte`](src/lib/components/library/PersonDetailView.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L4) + - **Line:** 4 + - **Context:** `Unknown` + +### UR-039 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/components/BottomNav.svelte`](src/lib/components/BottomNav.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` + +### UR-051 + +**Locations:** 2 file(s) + +- **File:** [`src/lib/components/library/LibraryGrid.svelte`](src/lib/components/library/LibraryGrid.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` ### UR-069 -**Locations:** 23 file(s) +**Locations:** 24 file(s) - **File:** [`src/routes/library/favorites/+page.svelte`](src/routes/library/favorites/+page.svelte#L73) - **Line:** 73 - **Context:** `Unknown` -- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L130) - - **Line:** 130 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L678) - - **Line:** 678 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4301) - - **Line:** 4301 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L46) - - **Line:** 46 - - **Context:** `pub fn new(online: OnlineRepository, offline: OfflineRepository) -> Se...` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L50) - - **Line:** 50 - - **Context:** `impl OnlineRepository {` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L590) - - **Line:** 590 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L806) - - **Line:** 806 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2714) - - **Line:** 2714 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2745) - - **Line:** 2745 +- **File:** [`src/routes/+layout.svelte`](src/routes/+layout.svelte#L137) + - **Line:** 137 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L12) - **Line:** 12 @@ -5652,28 +6533,55 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L355) - **Line:** 355 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L800) - - **Line:** 800 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L846) + - **Line:** 846 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L806) - - **Line:** 806 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L852) + - **Line:** 852 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L821) - - **Line:** 821 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L867) + - **Line:** 867 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L994) - - **Line:** 994 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L1040) + - **Line:** 1040 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L1019) - - **Line:** 1019 +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L1065) + - **Line:** 1065 - **Context:** `Unknown` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1341) - - **Line:** 1341 +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L46) + - **Line:** 46 + - **Context:** `pub fn new(online: OnlineRepository, offline: OfflineRepository) -> Se...` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L688) + - **Line:** 688 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4489) + - **Line:** 4489 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4576) + - **Line:** 4576 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L85) + - **Line:** 85 + - **Context:** `impl OnlineRepository {` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L650) + - **Line:** 650 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L886) + - **Line:** 886 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3118) + - **Line:** 3118 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3149) + - **Line:** 3149 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1376) + - **Line:** 1376 - **Context:** `Unknown` ### UR-071 -**Locations:** 45 file(s) +**Locations:** 57 file(s) - **File:** [`src/routes/player/[id]/+page.svelte`](src/routes/player/[id]/+page.svelte#L241) - **Line:** 241 @@ -5687,38 +6595,44 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src/routes/player/[id]/+page.svelte`](src/routes/player/[id]/+page.svelte#L319) - **Line:** 319 - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L342) + - **Line:** 342 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L975) + - **Line:** 975 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1888) + - **Line:** 1888 + - **Context:** `Unknown` - **File:** [`src/lib/player/localSource.ts`](src/lib/player/localSource.ts#L12) - **Line:** 12 - **Context:** `Unknown` - **File:** [`src/lib/player/localSource.ts`](src/lib/player/localSource.ts#L55) - **Line:** 55 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L308) - - **Line:** 308 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L439) + - **Line:** 439 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L895) - - **Line:** 895 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L467) + - **Line:** 467 - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1799) - - **Line:** 1799 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L519) + - **Line:** 519 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L416) - - **Line:** 416 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L705) + - **Line:** 705 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L444) - - **Line:** 444 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2804) + - **Line:** 2804 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L496) - - **Line:** 496 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2845) + - **Line:** 2845 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L682) - - **Line:** 682 +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L276) + - **Line:** 276 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2661) - - **Line:** 2661 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2702) - - **Line:** 2702 +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L93) + - **Line:** 93 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L114) - **Line:** 114 @@ -5729,26 +6643,23 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L538) - **Line:** 538 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L668) - - **Line:** 668 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L666) + - **Line:** 666 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L911) - - **Line:** 911 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L910) + - **Line:** 910 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L949) - - **Line:** 949 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L948) + - **Line:** 948 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L972) - - **Line:** 972 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L971) + - **Line:** 971 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L1000) - - **Line:** 1000 +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L999) + - **Line:** 999 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L276) - - **Line:** 276 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L93) - - **Line:** 93 +- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L813) + - **Line:** 813 - **Context:** `Unknown` - **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L33) - **Line:** 33 @@ -5765,8 +6676,41 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L544) - **Line:** 544 - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L813) - - **Line:** 813 +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L219) + - **Line:** 219 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L313) + - **Line:** 313 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L210) + - **Line:** 210 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L345) + - **Line:** 345 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L367) + - **Line:** 367 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1873) + - **Line:** 1873 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1950) + - **Line:** 1950 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2901) + - **Line:** 2901 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2933) + - **Line:** 2933 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2959) + - **Line:** 2959 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L152) + - **Line:** 152 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L220) + - **Line:** 220 - **Context:** `Unknown` - **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L27) - **Line:** 27 @@ -5804,11 +6748,827 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L567) - **Line:** 567 - **Context:** `Unknown` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1020) - - **Line:** 1020 +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1041) + - **Line:** 1041 - **Context:** `Unknown` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1251) - - **Line:** 1251 +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1286) + - **Line:** 1286 + - **Context:** `Unknown` + +### UR-074 + +**Locations:** 38 file(s) + +- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L71) + - **Line:** 71 + - **Context:** `Unknown` +- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L343) + - **Line:** 343 + - **Context:** `function handleEpisodeLimitChange(value: number) {` +- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L701) + - **Line:** 701 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L208) + - **Line:** 208 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L229) + - **Line:** 229 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2919) + - **Line:** 2919 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2944) + - **Line:** 2944 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L3079) + - **Line:** 3079 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L251) + - **Line:** 251 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L658) + - **Line:** 658 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1934) + - **Line:** 1934 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L2359) + - **Line:** 2359 + - **Context:** `Unknown` +- **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L192) + - **Line:** 192 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L25) + - **Line:** 25 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L85) + - **Line:** 85 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L107) + - **Line:** 107 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L122) + - **Line:** 122 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L158) + - **Line:** 158 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L350) + - **Line:** 350 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1488) + - **Line:** 1488 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L26) + - **Line:** 26 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L35) + - **Line:** 35 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L42) + - **Line:** 42 + - **Context:** `pub fn set_streaming_quality(quality: StreamingQuality) {` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L424) + - **Line:** 424 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L540) + - **Line:** 540 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1476) + - **Line:** 1476 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1717) + - **Line:** 1717 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2499) + - **Line:** 2499 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2523) + - **Line:** 2523 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2545) + - **Line:** 2545 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2568) + - **Line:** 2568 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L164) + - **Line:** 164 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L299) + - **Line:** 299 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L604) + - **Line:** 604 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L640) + - **Line:** 640 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L667) + - **Line:** 667 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1255) + - **Line:** 1255 + - **Context:** `Unknown` + +### UT-010 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` + +### UT-024 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` + +### UT-052 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L315) + - **Line:** 315 + - **Context:** `Unknown` + +### UT-061 + +**Locations:** 9 file(s) + +- **File:** [`src/lib/api/repository-client.test.ts`](src/lib/api/repository-client.test.ts#L434) + - **Line:** 434 + - **Context:** `Unknown` +- **File:** [`src/lib/api/repository-client.test.ts`](src/lib/api/repository-client.test.ts#L451) + - **Line:** 451 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L38) + - **Line:** 38 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L51) + - **Line:** 51 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1518) + - **Line:** 1518 + - **Context:** `Unknown` +- **File:** [`src/lib/player/backgroundAudio.commands.test.ts`](src/lib/player/backgroundAudio.commands.test.ts#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L687) + - **Line:** 687 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L790) + - **Line:** 790 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L599) + - **Line:** 599 + - **Context:** `Unknown` + +### UT-094 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/utils/safeArea.test.ts`](src/lib/utils/safeArea.test.ts#L17) + - **Line:** 17 + - **Context:** `Unknown` + +### UT-104 + +**Locations:** 7 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2053) + - **Line:** 2053 + - **Context:** `export type GetItemsOptions = { startIndex?: number | null; limit?: nu...` +- **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L298) + - **Line:** 298 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1269) + - **Line:** 1269 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4441) + - **Line:** 4441 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L682) + - **Line:** 682 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L719) + - **Line:** 719 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L3062) + - **Line:** 3062 + - **Context:** `Unknown` + +### UT-107 + +**Locations:** 6 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1595) + - **Line:** 1595 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L852) + - **Line:** 852 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L867) + - **Line:** 867 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L886) + - **Line:** 886 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L1040) + - **Line:** 1040 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L1065) + - **Line:** 1065 + - **Context:** `Unknown` + +### UT-116 + +**Locations:** 4 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L342) + - **Line:** 342 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L467) + - **Line:** 467 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L519) + - **Line:** 519 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2845) + - **Line:** 2845 + - **Context:** `Unknown` + +### UT-117 + +**Locations:** 7 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L306) + - **Line:** 306 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/stream_end.rs`](src-tauri/src/player/stream_end.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1415) + - **Line:** 1415 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1447) + - **Line:** 1447 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1504) + - **Line:** 1504 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1535) + - **Line:** 1535 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L299) + - **Line:** 299 + - **Context:** `Unknown` + +### UR-002 + +**Locations:** 21 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2541) + - **Line:** 2541 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L10) + - **Line:** 10 + - **Context:** `Unknown` +- **File:** [`src/lib/services/offlineCatalog.ts`](src/lib/services/offlineCatalog.ts#L14) + - **Line:** 14 + - **Context:** `Unknown` +- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L142) + - **Line:** 142 + - **Context:** `pub enum MediaType {` +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/offline.rs`](src-tauri/src/commands/offline.rs#L136) + - **Line:** 136 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L14) + - **Line:** 14 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L236) + - **Line:** 236 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) + - **Line:** 311 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` +- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L335) + - **Line:** 335 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L549) + - **Line:** 549 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1383) + - **Line:** 1383 + - **Context:** `Unknown` + +### UR-011 + +**Locations:** 11 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2541) + - **Line:** 2541 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/services/preload.ts`](src/lib/services/preload.ts#L5) + - **Line:** 5 + - **Context:** `Unknown` +- **File:** [`src/lib/services/preload.test.ts`](src/lib/services/preload.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L142) + - **Line:** 142 + - **Context:** `pub enum MediaType {` +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2113) + - **Line:** 2113 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/offline.rs`](src-tauri/src/commands/offline.rs#L136) + - **Line:** 136 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L853) + - **Line:** 853 + - **Context:** `Unknown` + +### UR-017 + +**Locations:** 10 file(s) + +- **File:** [`src/lib/components/player/MiniPlayer.svelte`](src/lib/components/player/MiniPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/FavoriteButton.svelte`](src/lib/components/FavoriteButton.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/services/favorites.test.ts`](src/lib/services/favorites.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/favorites.ts`](src/lib/services/favorites.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L58) + - **Line:** 58 + - **Context:** `Unknown` +- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L191) + - **Line:** 191 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L7) + - **Line:** 7 + - **Context:** `Unknown` + +### UR-019 + +**Locations:** 12 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2616) + - **Line:** 2616 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10) + - **Line:** 10 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L6) + - **Line:** 6 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L23) + - **Line:** 23 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` + +### UR-020 + +**Locations:** 23 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2351) + - **Line:** 2351 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2969) + - **Line:** 2969 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L18) + - **Line:** 18 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L159) + - **Line:** 159 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L282) + - **Line:** 282 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) + - **Line:** 20 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L183) + - **Line:** 183 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L218) + - **Line:** 218 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L353) + - **Line:** 353 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L362) + - **Line:** 362 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L703) + - **Line:** 703 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1971) + - **Line:** 1971 + - **Context:** `function toggleSubtitleMenu() {` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L2004) + - **Line:** 2004 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) + - **Line:** 15 + - **Context:** `Unknown` +- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) + - **Line:** 19 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L42) + - **Line:** 42 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L223) + - **Line:** 223 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L422) + - **Line:** 422 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2681) + - **Line:** 2681 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2738) + - **Line:** 2738 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2770) + - **Line:** 2770 + - **Context:** `Unknown` + +### UR-028 + +**Locations:** 2 file(s) + +- **File:** [`src/lib/components/player/MiniPlayer.svelte`](src/lib/components/player/MiniPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/AudioPlayer.svelte`](src/lib/components/player/AudioPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` + +### UR-032 + +**Locations:** 7 file(s) + +- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L563) + - **Line:** 563 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L601) + - **Line:** 601 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L334) + - **Line:** 334 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L351) + - **Line:** 351 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L375) + - **Line:** 375 + - **Context:** `Unknown` + +### UR-033 + +**Locations:** 12 file(s) + +- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L563) + - **Line:** 563 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L601) + - **Line:** 601 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L658) + - **Line:** 658 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L712) + - **Line:** 712 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L778) + - **Line:** 778 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L788) + - **Line:** 788 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L833) + - **Line:** 833 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L334) + - **Line:** 334 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L351) + - **Line:** 351 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L375) + - **Line:** 375 + - **Context:** `Unknown` + +### UR-041 + +**Locations:** 2 file(s) + +- **File:** [`src/lib/utils/pictureInPicture.ts`](src/lib/utils/pictureInPicture.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/pictureInPicture.ts`](src/lib/utils/pictureInPicture.ts#L107) + - **Line:** 107 + - **Context:** `Unknown` + +### UR-050 + +**Locations:** 9 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1492) + - **Line:** 1492 + - **Context:** `Unknown` +- **File:** [`src/lib/components/search/SearchResults.svelte`](src/lib/components/search/SearchResults.svelte#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/components/settings/SearchGroupOrderList.svelte`](src/lib/components/settings/SearchGroupOrderList.svelte#L8) + - **Line:** 8 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/searchGroupOrder.ts`](src/lib/stores/searchGroupOrder.ts#L6) + - **Line:** 6 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/searchGroupOrder.test.ts`](src/lib/stores/searchGroupOrder.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L240) + - **Line:** 240 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L290) + - **Line:** 290 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L482) + - **Line:** 482 + - **Context:** `pub struct SearchUpdateEvent {` + +### UR-053 + +**Locations:** 17 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1094) + - **Line:** 1094 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1105) + - **Line:** 1105 + - **Context:** `Unknown` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2227) + - **Line:** 2227 + - **Context:** `export type MergedMediaItem = { id: string; title: string; artist: str...` +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2236) + - **Line:** 2236 + - **Context:** `export type NetworkStateWrapperArg = { networkType: NetworkType; unmet...` +- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L81) + - **Line:** 81 + - **Context:** `Unknown` +- **File:** [`src/lib/services/networkType.ts`](src/lib/services/networkType.ts#L10) + - **Line:** 10 + - **Context:** `Unknown` +- **File:** [`src/lib/services/networkType.test.ts`](src/lib/services/networkType.test.ts#L4) + - **Line:** 4 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L27) + - **Line:** 27 + - **Context:** `pub struct DownloadManagerWrapper(pub Mutex);` +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L36) + - **Line:** 36 + - **Context:** `pub struct NetworkStateWrapper(pub NetworkStateHandle);` +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L79) + - **Line:** 79 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L92) + - **Line:** 92 + - **Context:** `pub struct NetworkStateWrapperArg {` +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L1359) + - **Line:** 1359 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/network.rs`](src-tauri/src/download/network.rs#L22) + - **Line:** 22 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/network.rs`](src-tauri/src/download/network.rs#L42) + - **Line:** 42 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/network.rs`](src-tauri/src/download/network.rs#L70) + - **Line:** 70 + - **Context:** `impl NetworkState {` +- **File:** [`src-tauri/src/download/events.rs`](src-tauri/src/download/events.rs#L47) + - **Line:** 47 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L86) + - **Line:** 86 + - **Context:** `Unknown` + +### UR-060 + +**Locations:** 7 file(s) + +- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L155) + - **Line:** 155 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L221) + - **Line:** 221 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L96) + - **Line:** 96 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L769) + - **Line:** 769 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L333) + - **Line:** 333 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3073) + - **Line:** 3073 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/domain/search_rank.rs`](src-tauri/src/domain/search_rank.rs#L106) + - **Line:** 106 + - **Context:** `Unknown` + +### UR-072 + +**Locations:** 1 file(s) + +- **File:** [`src/lib/utils/scrollContainer.ts`](src/lib/utils/scrollContainer.ts#L23) + - **Line:** 23 + - **Context:** `Unknown` + +### UR-073 + +**Locations:** 6 file(s) + +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L805) + - **Line:** 805 + - **Context:** `Unknown` +- **File:** [`src/lib/components/library/WatchedToggleButton.svelte`](src/lib/components/library/WatchedToggleButton.svelte#L13) + - **Line:** 13 + - **Context:** `Unknown` +- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L121) + - **Line:** 121 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L891) + - **Line:** 891 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L1046) + - **Line:** 1046 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L1063) + - **Line:** 1063 + - **Context:** `Unknown` + +### UT-004 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535) + - **Line:** 535 + - **Context:** `pub enum AddPosition {` + +### UT-026 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L251) + - **Line:** 251 + - **Context:** `Unknown` + +### UT-027 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` + +### UT-028 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` + +### UT-030 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) + - **Line:** 245 + - **Context:** `Unknown` + +### UT-032 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) + - **Line:** 245 - **Context:** `Unknown` ### UT-060 @@ -5825,94 +7585,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 69 - **Context:** `Unknown` -### UT-061 - -**Locations:** 9 file(s) - -- **File:** [`src/lib/player/backgroundAudio.commands.test.ts`](src/lib/player/backgroundAudio.commands.test.ts#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L38) - - **Line:** 38 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L51) - - **Line:** 51 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1438) - - **Line:** 1438 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.test.ts`](src/lib/api/repository-client.test.ts#L434) - - **Line:** 434 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.test.ts`](src/lib/api/repository-client.test.ts#L451) - - **Line:** 451 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L664) - - **Line:** 664 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L767) - - **Line:** 767 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L599) - - **Line:** 599 - - **Context:** `Unknown` - -### UT-062 - -**Locations:** 1 file(s) - -- **File:** [`src/lib/utils/backgroundAudio.test.ts`](src/lib/utils/backgroundAudio.test.ts#L7) - - **Line:** 7 - - **Context:** `Unknown` - -### UT-071 - -**Locations:** 1 file(s) - -- **File:** [`src/lib/utils/formatBytes.test.ts`](src/lib/utils/formatBytes.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` - -### UT-106 - -**Locations:** 3 file(s) - -- **File:** [`src/routes/library/favorites/+page.svelte`](src/routes/library/favorites/+page.svelte#L41) - - **Line:** 41 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L79) - - **Line:** 79 - - **Context:** `Unknown` - -### UR-060 - -**Locations:** 7 file(s) - -- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L155) - - **Line:** 155 - - **Context:** `Unknown` -- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L221) - - **Line:** 221 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/domain/search_rank.rs`](src-tauri/src/domain/search_rank.rs#L106) - - **Line:** 106 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L333) - - **Line:** 333 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3017) - - **Line:** 3017 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L96) - - **Line:** 96 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L769) - - **Line:** 769 - - **Context:** `Unknown` - ### UT-085 **Locations:** 2 file(s) @@ -5962,35 +7634,16 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 21 - **Context:** `Unknown` -### UT-090 - -**Locations:** 1 file(s) - -- **File:** [`src/lib/components/player/VideoPlayer.touchScrub.test.ts`](src/lib/components/player/VideoPlayer.touchScrub.test.ts#L21) - - **Line:** 21 - - **Context:** `Unknown` - -### UT-091 - -**Locations:** 2 file(s) - -- **File:** [`src/lib/player/transport.authority.test.ts`](src/lib/player/transport.authority.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/player/index.ts`](src/lib/player/index.ts#L15) - - **Line:** 15 - - **Context:** `Unknown` - ### UT-092 **Locations:** 3 file(s) -- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` - **File:** [`src/lib/components/player/playerSurface.test.ts`](src/lib/components/player/playerSurface.test.ts#L13) - **Line:** 13 - **Context:** `Unknown` +- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8) + - **Line:** 8 + - **Context:** `Unknown` - **File:** [`src/lib/components/player/VideoPlayer.tapSurface.test.ts`](src/lib/components/player/VideoPlayer.tapSurface.test.ts#L5) - **Line:** 5 - **Context:** `Unknown` @@ -5999,51 +7652,85 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, **Locations:** 2 file(s) -- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` - **File:** [`src/lib/components/player/playerSurface.test.ts`](src/lib/components/player/playerSurface.test.ts#L13) - **Line:** 13 - **Context:** `Unknown` - -### UT-094 - -**Locations:** 1 file(s) - -- **File:** [`src/lib/utils/safeArea.test.ts`](src/lib/utils/safeArea.test.ts#L17) - - **Line:** 17 +- **File:** [`src/lib/components/player/playerSurface.ts`](src/lib/components/player/playerSurface.ts#L8) + - **Line:** 8 - **Context:** `Unknown` -### UT-095 +### UT-108 -**Locations:** 1 file(s) +**Locations:** 2 file(s) -- **File:** [`src/lib/utils/safeArea.test.ts`](src/lib/utils/safeArea.test.ts#L17) - - **Line:** 17 +- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L320) + - **Line:** 320 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L544) + - **Line:** 544 - **Context:** `Unknown` -### UT-096 +### UT-109 **Locations:** 1 file(s) -- **File:** [`src/lib/utils/safeArea.test.ts`](src/lib/utils/safeArea.test.ts#L17) - - **Line:** 17 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3292) + - **Line:** 3292 - **Context:** `Unknown` -### UT-097 +### UT-110 **Locations:** 1 file(s) -- **File:** [`src/lib/utils/safeArea.test.ts`](src/lib/utils/safeArea.test.ts#L17) - - **Line:** 17 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3348) + - **Line:** 3348 - **Context:** `Unknown` -### UT-098 +### UT-111 -**Locations:** 1 file(s) +**Locations:** 3 file(s) -- **File:** [`src/lib/utils/layoutShell.test.ts`](src/lib/utils/layoutShell.test.ts#L158) - - **Line:** 158 +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L62) + - **Line:** 62 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2534) + - **Line:** 2534 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2574) + - **Line:** 2574 + - **Context:** `Unknown` + +### UT-112 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L501) + - **Line:** 501 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3239) + - **Line:** 3239 + - **Context:** `Unknown` + +### UT-113 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L276) + - **Line:** 276 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3130) + - **Line:** 3130 + - **Context:** `Unknown` + +### UT-114 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L333) + - **Line:** 333 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3073) + - **Line:** 3073 - **Context:** `Unknown` ### UT-118 @@ -6054,6 +7741,39 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 12 - **Context:** `Unknown` +### UT-120 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L220) + - **Line:** 220 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L422) + - **Line:** 422 + - **Context:** `Unknown` + +### UT-121 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L564) + - **Line:** 564 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L573) + - **Line:** 573 + - **Context:** `Unknown` + +### UT-123 + +**Locations:** 2 file(s) + +- **File:** [`src/lib/services/pendingSync.logic.test.ts`](src/lib/services/pendingSync.logic.test.ts#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/services/pendingSync.logic.ts`](src/lib/services/pendingSync.logic.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` + ### UT-124 **Locations:** 1 file(s) @@ -6062,24 +7782,53 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 55 - **Context:** `Unknown` -### UR-021 +### UT-127 -**Locations:** 5 file(s) +**Locations:** 11 file(s) -- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15) - - **Line:** 15 +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L27) + - **Line:** 27 - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19) - - **Line:** 19 +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L282) + - **Line:** 282 - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L327) + - **Line:** 327 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) - - **Line:** 1 +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L398) + - **Line:** 398 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/series_prefs.rs`](src-tauri/src/commands/storage/series_prefs.rs#L3) - - **Line:** 3 +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L449) + - **Line:** 449 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L458) + - **Line:** 458 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L473) + - **Line:** 473 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L508) + - **Line:** 508 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L515) + - **Line:** 515 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L540) + - **Line:** 540 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L567) + - **Line:** 567 + - **Context:** `Unknown` + +### UT-130 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L424) + - **Line:** 424 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L503) + - **Line:** 503 - **Context:** `Unknown` ### UT-131 @@ -6122,392 +7871,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 7 - **Context:** `Unknown` -### UT-144 - -**Locations:** 3 file(s) - -- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) - - **Line:** 20 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L18) - - **Line:** 18 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L306) - - **Line:** 306 - - **Context:** `Unknown` - -### UT-147 - -**Locations:** 8 file(s) - -- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) - - **Line:** 20 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L183) - - **Line:** 183 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L218) - - **Line:** 218 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L159) - - **Line:** 159 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L282) - - **Line:** 282 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L315) - - **Line:** 315 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L635) - - **Line:** 635 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1812) - - **Line:** 1812 - - **Context:** `Unknown` - -### UT-149 - -**Locations:** 2 file(s) - -- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L20) - - **Line:** 20 - - **Context:** `Unknown` -- **File:** [`src/lib/player/adapters/adapterSelection.test.ts`](src/lib/player/adapters/adapterSelection.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` - -### UR-061 - -**Locations:** 4 file(s) - -- **File:** [`src/lib/components/player/tapGestures.ts`](src/lib/components/player/tapGestures.ts#L21) - - **Line:** 21 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.touchScrub.test.ts`](src/lib/components/player/VideoPlayer.touchScrub.test.ts#L21) - - **Line:** 21 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.tapSurface.test.ts`](src/lib/components/player/VideoPlayer.tapSurface.test.ts#L5) - - **Line:** 5 - - **Context:** `Unknown` - -### UT-143 - -**Locations:** 3 file(s) - -- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) - - **Line:** 20 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L18) - - **Line:** 18 - - **Context:** `Unknown` -- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L306) - - **Line:** 306 - - **Context:** `Unknown` - -### UR-002 - -**Locations:** 19 file(s) - -- **File:** [`src/lib/services/offlineCatalog.ts`](src/lib/services/offlineCatalog.ts#L14) - - **Line:** 14 - - **Context:** `Unknown` -- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2452) - - **Line:** 2452 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L10) - - **Line:** 10 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L142) - - **Line:** 142 - - **Context:** `pub enum MediaType {` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L14) - - **Line:** 14 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L228) - - **Line:** 228 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/offline.rs`](src-tauri/src/commands/offline.rs#L136) - - **Line:** 136 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - - **Line:** 311 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` -- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1348) - - **Line:** 1348 - - **Context:** `Unknown` - -### UR-008 - -**Locations:** 2 file(s) - -- **File:** [`src/lib/components/library/GenericMediaListPage.searchEvent.test.ts`](src/lib/components/library/GenericMediaListPage.searchEvent.test.ts#L12) - - **Line:** 12 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` - -### UR-011 - -**Locations:** 11 file(s) - -- **File:** [`src/lib/services/preload.test.ts`](src/lib/services/preload.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/services/preload.ts`](src/lib/services/preload.ts#L5) - - **Line:** 5 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2452) - - **Line:** 2452 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L142) - - **Line:** 142 - - **Context:** `pub enum MediaType {` -- **File:** [`src-tauri/src/commands/offline.rs`](src-tauri/src/commands/offline.rs#L136) - - **Line:** 136 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L854) - - **Line:** 854 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2040) - - **Line:** 2040 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` - -### UR-019 - -**Locations:** 12 file(s) - -- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10) - - **Line:** 10 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.test.ts`](src/lib/services/playerEvents.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8) - - **Line:** 8 - - **Context:** `Unknown` -- **File:** [`src/lib/services/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2527) - - **Line:** 2527 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L6) - - **Line:** 6 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/events.rs`](src-tauri/src/player/events.rs#L23) - - **Line:** 23 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` - -### UR-030 - -**Locations:** 2 file(s) - -- **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` - -### UR-036 - -**Locations:** 3 file(s) - -- **File:** [`src/lib/components/library/PersonDetailView.svelte`](src/lib/components/library/PersonDetailView.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` - -### UR-039 - -**Locations:** 1 file(s) - -- **File:** [`src/lib/components/BottomNav.svelte`](src/lib/components/BottomNav.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` - -### UR-051 - -**Locations:** 2 file(s) - -- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/LibraryGrid.svelte`](src/lib/components/library/LibraryGrid.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` - -### UR-064 - -**Locations:** 7 file(s) - -- **File:** [`src/lib/components/library/SeasonSection.svelte`](src/lib/components/library/SeasonSection.svelte#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src/lib/components/library/ClearHistoryButton.svelte`](src/lib/components/library/ClearHistoryButton.svelte#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1377) - - **Line:** 1377 - - **Context:** `Unknown` -- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L165) - - **Line:** 165 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L235) - - **Line:** 235 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1896) - - **Line:** 1896 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L387) - - **Line:** 387 - - **Context:** `Unknown` - -### IT-013 - -**Locations:** 4 file(s) - -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L38) - - **Line:** 38 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L51) - - **Line:** 51 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L664) - - **Line:** 664 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L767) - - **Line:** 767 - - **Context:** `Unknown` - -### UT-066 - -**Locations:** 1 file(s) - -- **File:** [`src/lib/services/networkType.test.ts`](src/lib/services/networkType.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` - -### UT-116 - -**Locations:** 4 file(s) - -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L308) - - **Line:** 308 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L444) - - **Line:** 444 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L496) - - **Line:** 496 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2702) - - **Line:** 2702 - - **Context:** `Unknown` - -### UT-117 - -**Locations:** 7 file(s) - -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L272) - - **Line:** 272 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/stream_end.rs`](src-tauri/src/player/stream_end.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1377) - - **Line:** 1377 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1407) - - **Line:** 1407 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1464) - - **Line:** 1464 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L1495) - - **Line:** 1495 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L299) - - **Line:** 299 - - **Context:** `Unknown` - -### UT-123 - -**Locations:** 2 file(s) - -- **File:** [`src/lib/services/pendingSync.logic.ts`](src/lib/services/pendingSync.logic.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/services/pendingSync.logic.test.ts`](src/lib/services/pendingSync.logic.test.ts#L1) - - **Line:** 1 - - **Context:** `Unknown` - ### UT-136 **Locations:** 1 file(s) @@ -6548,462 +7911,209 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 1 - **Context:** `Unknown` -### UR-053 +### UT-141 -**Locations:** 17 file(s) +**Locations:** 2 file(s) -- **File:** [`src/lib/services/networkType.ts`](src/lib/services/networkType.ts#L10) - - **Line:** 10 - - **Context:** `Unknown` -- **File:** [`src/lib/services/networkType.test.ts`](src/lib/services/networkType.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1014) - - **Line:** 1014 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1025) - - **Line:** 1025 - - **Context:** `Unknown` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2138) - - **Line:** 2138 - - **Context:** `export type MergedMediaItem = { id: string; title: string; artist: str...` -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2147) - - **Line:** 2147 - - **Context:** `export type NetworkStateWrapperArg = { networkType: NetworkType; unmet...` -- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L81) - - **Line:** 81 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L27) - - **Line:** 27 - - **Context:** `pub struct DownloadManagerWrapper(pub Mutex);` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L36) - - **Line:** 36 - - **Context:** `pub struct NetworkStateWrapper(pub NetworkStateHandle);` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L79) - - **Line:** 79 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L92) - - **Line:** 92 - - **Context:** `pub struct NetworkStateWrapperArg {` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L1312) - - **Line:** 1312 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L86) - - **Line:** 86 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/download/network.rs`](src-tauri/src/download/network.rs#L22) - - **Line:** 22 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/download/network.rs`](src-tauri/src/download/network.rs#L42) - - **Line:** 42 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/download/network.rs`](src-tauri/src/download/network.rs#L70) - - **Line:** 70 - - **Context:** `impl NetworkState {` -- **File:** [`src-tauri/src/download/events.rs`](src-tauri/src/download/events.rs#L47) - - **Line:** 47 +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L29) + - **Line:** 29 - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L40) + - **Line:** 40 + - **Context:** `pub fn clamp_max_audio_channels(reported: Option) -> u32 {` -### UR-059 - -**Locations:** 6 file(s) - -- **File:** [`src/lib/services/skipReporting.ts`](src/lib/services/skipReporting.ts#L14) - - **Line:** 14 - - **Context:** `Unknown` -- **File:** [`src/lib/services/skipReporting.test.ts`](src/lib/services/skipReporting.test.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/continueWatchingFilter.ts`](src/lib/stores/continueWatchingFilter.ts#L12) - - **Line:** 12 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/continueWatchingFilter.test.ts`](src/lib/stores/continueWatchingFilter.test.ts#L9) - - **Line:** 9 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` - -### IT-003 +### UT-142 **Locations:** 1 file(s) -- **File:** [`src-tauri/src/player/mpv_backend_test.rs`](src-tauri/src/player/mpv_backend_test.rs#L8) - - **Line:** 8 +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L88) + - **Line:** 88 - **Context:** `Unknown` -### IT-004 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/mpv_backend_test.rs`](src-tauri/src/player/mpv_backend_test.rs#L8) - - **Line:** 8 - - **Context:** `Unknown` - -### UT-003 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535) - - **Line:** 535 - - **Context:** `pub enum AddPosition {` - -### UT-005 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535) - - **Line:** 535 - - **Context:** `pub enum AddPosition {` - -### UT-010 - -**Locations:** 1 file(s) - -- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` - -### UT-024 - -**Locations:** 1 file(s) - -- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` - -### UT-030 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) - - **Line:** 245 - - **Context:** `Unknown` - -### UT-032 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) - - **Line:** 245 - - **Context:** `Unknown` - -### UT-052 - -**Locations:** 1 file(s) - -- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L315) - - **Line:** 315 - - **Context:** `Unknown` - -### UT-104 - -**Locations:** 7 file(s) - -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1964) - - **Line:** 1964 - - **Context:** `export type GetItemsOptions = { startIndex?: number | null; limit?: nu...` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1222) - - **Line:** 1222 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4253) - - **Line:** 4253 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L298) - - **Line:** 298 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L622) - - **Line:** 622 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L659) - - **Line:** 659 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2677) - - **Line:** 2677 - - **Context:** `Unknown` - -### UT-105 +### UT-143 **Locations:** 3 file(s) -- **File:** [`src/lib/stores/favorites.test.ts`](src/lib/stores/favorites.test.ts#L1) - - **Line:** 1 +- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L18) + - **Line:** 18 - **Context:** `Unknown` -- **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L8) - - **Line:** 8 +- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) + - **Line:** 20 - **Context:** `Unknown` -- **File:** [`src/lib/stores/favorites.ts`](src/lib/stores/favorites.ts#L55) - - **Line:** 55 +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L353) + - **Line:** 353 - **Context:** `Unknown` -### UT-107 +### UT-144 -**Locations:** 6 file(s) +**Locations:** 3 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1506) - - **Line:** 1506 +- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L18) + - **Line:** 18 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L806) - - **Line:** 806 +- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) + - **Line:** 20 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L821) - - **Line:** 821 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L840) - - **Line:** 840 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L994) - - **Line:** 994 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L1019) - - **Line:** 1019 +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L353) + - **Line:** 353 - **Context:** `Unknown` ### UT-145 **Locations:** 5 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2262) - - **Line:** 2262 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2351) + - **Line:** 2351 - **Context:** `Unknown` - **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L223) - **Line:** 223 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L399) - - **Line:** 399 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L422) + - **Line:** 422 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2538) - - **Line:** 2538 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2681) + - **Line:** 2681 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2595) - - **Line:** 2595 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2738) + - **Line:** 2738 - **Context:** `Unknown` ### UT-146 **Locations:** 3 file(s) -- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2842) - - **Line:** 2842 +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2969) + - **Line:** 2969 - **Context:** `Unknown` - **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L42) - **Line:** 42 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2627) - - **Line:** 2627 +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2770) + - **Line:** 2770 - **Context:** `Unknown` -### UR-012 - -**Locations:** 9 file(s) - -- **File:** [`src/lib/stores/auth.test.ts`](src/lib/stores/auth.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L6) - - **Line:** 6 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L293) - - **Line:** 293 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/auth.ts`](src/lib/stores/auth.ts#L445) - - **Line:** 445 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/credentials.rs`](src-tauri/src/credentials.rs#L10) - - **Line:** 10 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/mod.rs`](src-tauri/src/commands/mod.rs#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - - **Line:** 311 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` - -### UR-013 - -**Locations:** 2 file(s) - -- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L2) - - **Line:** 2 - - **Context:** `Unknown` - -### UR-014 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/commands/playlist.rs`](src-tauri/src/commands/playlist.rs#L4) - - **Line:** 4 - - **Context:** `Unknown` - -### UR-015 - -**Locations:** 13 file(s) - -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L7) - - **Line:** 7 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L105) - - **Line:** 105 - - **Context:** `Unknown` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L110) - - **Line:** 110 - - **Context:** `async function next() {` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L115) - - **Line:** 115 - - **Context:** `async function previous() {` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L120) - - **Line:** 120 - - **Context:** `async function skipTo(index: number) {` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L125) - - **Line:** 125 - - **Context:** `async function toggleShuffle() {` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L130) - - **Line:** 130 - - **Context:** `async function cycleRepeat() {` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L135) - - **Line:** 135 - - **Context:** `async function removeFromQueue(index: number) {` -- **File:** [`src/lib/stores/queue.ts`](src/lib/stores/queue.ts#L140) - - **Line:** 140 - - **Context:** `async function moveInQueue(fromIndex: number, toIndex: number) {` -- **File:** [`src/lib/stores/queue.test.ts`](src/lib/stores/queue.test.ts#L4) - - **Line:** 4 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L20) - - **Line:** 20 - - **Context:** `pub enum RepeatMode {` -- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535) - - **Line:** 535 - - **Context:** `pub enum AddPosition {` -- **File:** [`src-tauri/src/commands/player/queue.rs`](src-tauri/src/commands/player/queue.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` - -### UR-016 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L62) - - **Line:** 62 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L251) - - **Line:** 251 - - **Context:** `Unknown` - -### UR-018 +### UT-148 **Locations:** 3 file(s) -- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L2) - - **Line:** 2 +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L113) + - **Line:** 113 - **Context:** `Unknown` -- **File:** [`src/lib/stores/downloads.ts`](src/lib/stores/downloads.ts#L2) - - **Line:** 2 +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L135) + - **Line:** 135 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2040) - - **Line:** 2040 +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L152) + - **Line:** 152 - **Context:** `Unknown` -### UR-024 +### UT-149 **Locations:** 2 file(s) -- **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) - - **Line:** 2 +- **File:** [`src/lib/player/adapters/adapterSelection.test.ts`](src/lib/player/adapters/adapterSelection.test.ts#L4) + - **Line:** 4 - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L3) - - **Line:** 3 +- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L20) + - **Line:** 20 - **Context:** `Unknown` -### UR-031 +### UT-150 -**Locations:** 2 file(s) +**Locations:** 1 file(s) -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) - - **Line:** 1 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) - - **Line:** 3 +- **File:** [`scripts/set-version.test.ts`](scripts/set-version.test.ts#L4) + - **Line:** 4 - **Context:** `Unknown` -### UR-032 +### UT-151 **Locations:** 7 file(s) -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) +- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1563) + - **Line:** 1563 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L380) + - **Line:** 380 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L855) + - **Line:** 855 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L884) + - **Line:** 884 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L914) + - **Line:** 914 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L953) + - **Line:** 953 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L723) + - **Line:** 723 + - **Context:** `Unknown` + +### UR-010 + +**Locations:** 16 file(s) + +- **File:** [`src/lib/components/sessions/SessionCard.svelte`](src/lib/components/sessions/SessionCard.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L193) - - **Line:** 193 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L210) - - **Line:** 210 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L234) - - **Line:** 234 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L563) - - **Line:** 563 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L601) - - **Line:** 601 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` - -### UR-033 - -**Locations:** 12 file(s) - -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) +- **File:** [`src/lib/components/sessions/SessionsList.svelte`](src/lib/components/sessions/SessionsList.svelte#L1) - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L193) - - **Line:** 193 +- **File:** [`src/lib/components/sessions/RemoteControls.svelte`](src/lib/components/sessions/RemoteControls.svelte#L1) + - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L210) - - **Line:** 210 +- **File:** [`src/lib/components/sessions/CastButton.svelte`](src/lib/components/sessions/CastButton.svelte#L1) + - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L234) - - **Line:** 234 +- **File:** [`src/lib/components/sessions/SessionPickerModal.svelte`](src/lib/components/sessions/SessionPickerModal.svelte#L1) + - **Line:** 1 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L563) - - **Line:** 563 +- **File:** [`src/lib/stores/sessions.test.ts`](src/lib/stores/sessions.test.ts#L2) + - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/android/mod.rs`](src-tauri/src/player/android/mod.rs#L601) - - **Line:** 601 +- **File:** [`src/lib/stores/sessions.ts`](src/lib/stores/sessions.ts#L2) + - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L658) - - **Line:** 658 +- **File:** [`src/lib/stores/lmsSync.ts`](src/lib/stores/lmsSync.ts#L12) + - **Line:** 12 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L712) - - **Line:** 712 +- **File:** [`src/lib/stores/playbackMode.ts`](src/lib/stores/playbackMode.ts#L9) + - **Line:** 9 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L778) - - **Line:** 778 +- **File:** [`src/lib/stores/playbackMode.test.ts`](src/lib/stores/playbackMode.test.ts#L2) + - **Line:** 2 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L788) - - **Line:** 788 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L833) - - **Line:** 833 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) +- **File:** [`src-tauri/src/commands/player/remote.rs`](src-tauri/src/commands/player/remote.rs#L3) - **Line:** 3 - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/playback_mode.rs`](src-tauri/src/commands/playback_mode.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sessions.rs`](src-tauri/src/commands/sessions.rs#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/playback_mode/mod.rs`](src-tauri/src/playback_mode/mod.rs#L165) + - **Line:** 165 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/session_poller/mod.rs`](src-tauri/src/session_poller/mod.rs#L6) + - **Line:** 6 + - **Context:** `Unknown` + +### UR-030 + +**Locations:** 2 file(s) + +- **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` ### UR-043 @@ -7016,130 +8126,157 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 3 - **Context:** `Unknown` -### UT-004 +### UR-054 + +**Locations:** 7 file(s) + +- **File:** [`src/lib/components/search/HeaderSearch.svelte`](src/lib/components/search/HeaderSearch.svelte#L12) + - **Line:** 12 + - **Context:** `Unknown` +- **File:** [`src/lib/components/search/HeaderSearch.test.ts`](src/lib/components/search/HeaderSearch.test.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/components/account/AccountMenu.svelte`](src/lib/components/account/AccountMenu.svelte#L7) + - **Line:** 7 + - **Context:** `Unknown` +- **File:** [`src/lib/components/AppHeader.svelte`](src/lib/components/AppHeader.svelte#L10) + - **Line:** 10 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L82) + - **Line:** 82 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L104) + - **Line:** 104 + - **Context:** `Unknown` +- **File:** [`src/lib/utils/scrollRestore.ts`](src/lib/utils/scrollRestore.ts#L26) + - **Line:** 26 + - **Context:** `Unknown` + +### UR-059 + +**Locations:** 6 file(s) + +- **File:** [`src/lib/stores/continueWatchingFilter.ts`](src/lib/stores/continueWatchingFilter.ts#L12) + - **Line:** 12 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/continueWatchingFilter.test.ts`](src/lib/stores/continueWatchingFilter.test.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3) + - **Line:** 3 + - **Context:** `Unknown` +- **File:** [`src/lib/stores/home.ts`](src/lib/stores/home.ts#L2) + - **Line:** 2 + - **Context:** `Unknown` +- **File:** [`src/lib/services/skipReporting.ts`](src/lib/services/skipReporting.ts#L14) + - **Line:** 14 + - **Context:** `Unknown` +- **File:** [`src/lib/services/skipReporting.test.ts`](src/lib/services/skipReporting.test.ts#L9) + - **Line:** 9 + - **Context:** `Unknown` + +### UR-061 + +**Locations:** 4 file(s) + +- **File:** [`src/lib/components/player/tapGestures.ts`](src/lib/components/player/tapGestures.ts#L21) + - **Line:** 21 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.tapSurface.test.ts`](src/lib/components/player/VideoPlayer.tapSurface.test.ts#L5) + - **Line:** 5 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.touchScrub.test.ts`](src/lib/components/player/VideoPlayer.touchScrub.test.ts#L21) + - **Line:** 21 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1) + - **Line:** 1 + - **Context:** `Unknown` + +### UT-147 + +**Locations:** 8 file(s) + +- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L159) + - **Line:** 159 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.test.ts`](src/lib/components/player/subtitleTracks.test.ts#L282) + - **Line:** 282 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L20) + - **Line:** 20 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L183) + - **Line:** 183 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/subtitleTracks.ts`](src/lib/components/player/subtitleTracks.ts#L218) + - **Line:** 218 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L362) + - **Line:** 362 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L703) + - **Line:** 703 + - **Context:** `Unknown` +- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L2004) + - **Line:** 2004 + - **Context:** `Unknown` + +### UT-152 + +**Locations:** 4 file(s) + +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L549) + - **Line:** 549 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L688) + - **Line:** 688 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4576) + - **Line:** 4576 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4662) + - **Line:** 4662 + - **Context:** `Unknown` + +### UT-155 + +**Locations:** 3 file(s) + +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L784) + - **Line:** 784 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L3664) + - **Line:** 3664 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/player/mod.rs`](src-tauri/src/player/mod.rs#L3707) + - **Line:** 3707 + - **Context:** `Unknown` + +### UR-014 **Locations:** 1 file(s) -- **File:** [`src-tauri/src/player/queue.rs`](src-tauri/src/player/queue.rs#L535) - - **Line:** 535 - - **Context:** `pub enum AddPosition {` +- **File:** [`src-tauri/src/commands/playlist.rs`](src-tauri/src/commands/playlist.rs#L4) + - **Line:** 4 + - **Context:** `Unknown` -### UT-012 +### UR-022 **Locations:** 1 file(s) -- **File:** [`src-tauri/src/player/sleep_timer.rs`](src-tauri/src/player/sleep_timer.rs#L81) - - **Line:** 81 - - **Context:** `pub fn cancel(&mut self) {` +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` -### UT-026 +### UR-031 **Locations:** 2 file(s) -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) - - **Line:** 245 +- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) + - **Line:** 3 - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L251) - - **Line:** 251 - - **Context:** `Unknown` - -### UT-027 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) - - **Line:** 245 - - **Context:** `Unknown` - -### UT-028 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) - - **Line:** 245 - - **Context:** `Unknown` - -### UT-029 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) - - **Line:** 245 - - **Context:** `Unknown` - -### UT-031 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) - - **Line:** 245 - - **Context:** `Unknown` - -### UT-033 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L245) - - **Line:** 245 - - **Context:** `Unknown` - -### UT-079 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L270) - - **Line:** 270 - - **Context:** `Unknown` - -### UT-080 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L299) - - **Line:** 299 - - **Context:** `Unknown` - -### UT-081 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L326) - - **Line:** 326 - - **Context:** `Unknown` - -### UT-082 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L337) - - **Line:** 337 - - **Context:** `Unknown` - -### UT-083 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L747) - - **Line:** 747 - - **Context:** `Unknown` - -### UT-084 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L759) - - **Line:** 759 - - **Context:** `Unknown` - -### UT-121 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L564) - - **Line:** 564 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L573) - - **Line:** 573 +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1) + - **Line:** 1 - **Context:** `Unknown` ### UR-042 @@ -7166,472 +8303,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 3 - **Context:** `Unknown` -### UR-065 - -**Locations:** 22 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L62) - - **Line:** 62 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L276) - - **Line:** 276 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L333) - - **Line:** 333 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L501) - - **Line:** 501 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2478) - - **Line:** 2478 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2518) - - **Line:** 2518 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3017) - - **Line:** 3017 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3074) - - **Line:** 3074 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3183) - - **Line:** 3183 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3236) - - **Line:** 3236 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3292) - - **Line:** 3292 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L63) - - **Line:** 63 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L96) - - **Line:** 96 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L164) - - **Line:** 164 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L281) - - **Line:** 281 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L326) - - **Line:** 326 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L740) - - **Line:** 740 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L51) - - **Line:** 51 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L56) - - **Line:** 56 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L757) - - **Line:** 757 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L769) - - **Line:** 769 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1334) - - **Line:** 1334 - - **Context:** `Unknown` - -### IT-016 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2956) - - **Line:** 2956 - - **Context:** `Unknown` - -### IT-017 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L854) - - **Line:** 854 - - **Context:** `Unknown` - -### UT-044 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/commands/offline.rs`](src-tauri/src/commands/offline.rs#L136) - - **Line:** 136 - - **Context:** `Unknown` - -### UT-051 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3787) - - **Line:** 3787 - - **Context:** `Unknown` - -### UT-059 - -**Locations:** 3 file(s) - -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L450) - - **Line:** 450 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2397) - - **Line:** 2397 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2438) - - **Line:** 2438 - - **Context:** `Unknown` - -### UT-067 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2956) - - **Line:** 2956 - - **Context:** `Unknown` - -### UT-072 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3584) - - **Line:** 3584 - - **Context:** `Unknown` - -### UT-073 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3707) - - **Line:** 3707 - - **Context:** `Unknown` - -### UT-074 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3726) - - **Line:** 3726 - - **Context:** `Unknown` - -### UT-075 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3748) - - **Line:** 3748 - - **Context:** `Unknown` - -### UT-076 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3606) - - **Line:** 3606 - - **Context:** `Unknown` - -### UT-077 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3640) - - **Line:** 3640 - - **Context:** `Unknown` - -### UT-078 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3686) - - **Line:** 3686 - - **Context:** `Unknown` - -### UT-099 - -**Locations:** 3 file(s) - -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L590) - - **Line:** 590 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2714) - - **Line:** 2714 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2745) - - **Line:** 2745 - - **Context:** `Unknown` - -### UT-100 - -**Locations:** 6 file(s) - -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L223) - - **Line:** 223 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L681) - - **Line:** 681 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1836) - - **Line:** 1836 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2624) - - **Line:** 2624 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2646) - - **Line:** 2646 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2655) - - **Line:** 2655 - - **Context:** `Unknown` - -### UT-101 - -**Locations:** 4 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L1953) - - **Line:** 1953 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4173) - - **Line:** 4173 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4208) - - **Line:** 4208 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L223) - - **Line:** 223 - - **Context:** `Unknown` - -### UT-102 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L678) - - **Line:** 678 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L4301) - - **Line:** 4301 - - **Context:** `Unknown` - -### UT-103 - -**Locations:** 6 file(s) - -- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L12) - - **Line:** 12 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L78) - - **Line:** 78 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L285) - - **Line:** 285 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L319) - - **Line:** 319 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L339) - - **Line:** 339 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L355) - - **Line:** 355 - - **Context:** `Unknown` - -### UT-109 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3236) - - **Line:** 3236 - - **Context:** `Unknown` - -### UT-110 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3292) - - **Line:** 3292 - - **Context:** `Unknown` - -### UT-111 - -**Locations:** 3 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L62) - - **Line:** 62 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2478) - - **Line:** 2478 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2518) - - **Line:** 2518 - - **Context:** `Unknown` - -### UT-112 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L501) - - **Line:** 501 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3183) - - **Line:** 3183 - - **Context:** `Unknown` - -### UT-113 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L276) - - **Line:** 276 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3074) - - **Line:** 3074 - - **Context:** `Unknown` - -### UT-114 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L333) - - **Line:** 333 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3017) - - **Line:** 3017 - - **Context:** `Unknown` - -### UT-115 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L281) - - **Line:** 281 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L740) - - **Line:** 740 - - **Context:** `Unknown` - -### UT-119 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L416) - - **Line:** 416 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2661) - - **Line:** 2661 - - **Context:** `Unknown` - -### UT-122 - -**Locations:** 11 file(s) - -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L14) - - **Line:** 14 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L70) - - **Line:** 70 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L228) - - **Line:** 228 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L538) - - **Line:** 538 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L604) - - **Line:** 604 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L634) - - **Line:** 634 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L668) - - **Line:** 668 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L697) - - **Line:** 697 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L743) - - **Line:** 743 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L787) - - **Line:** 787 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L802) - - **Line:** 802 - - **Context:** `Unknown` - -### UT-125 - -**Locations:** 3 file(s) - -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L911) - - **Line:** 911 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L949) - - **Line:** 949 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L972) - - **Line:** 972 - - **Context:** `Unknown` - -### UT-126 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L489) - - **Line:** 489 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L1000) - - **Line:** 1000 - - **Context:** `Unknown` - -### UT-130 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L384) - - **Line:** 384 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L450) - - **Line:** 450 - - **Context:** `Unknown` - -### UT-141 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L29) - - **Line:** 29 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L40) - - **Line:** 40 - - **Context:** `pub fn clamp_max_audio_channels(reported: Option) -> u32 {` - -### UT-142 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L80) - - **Line:** 80 - - **Context:** `Unknown` - -### UT-148 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L105) - - **Line:** 105 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L127) - - **Line:** 127 - - **Context:** `Unknown` - -### UR-022 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` - ### UR-046 **Locations:** 1 file(s) @@ -7640,107 +8311,6 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 3 - **Context:** `Unknown` -### UT-016 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - - **Line:** 311 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` - -### UT-017 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - - **Line:** 311 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` - -### UT-018 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - - **Line:** 311 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` - -### UT-020 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - - **Line:** 311 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` - -### UT-021 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - - **Line:** 311 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` - -### UT-022 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - - **Line:** 311 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` - -### UT-025 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - - **Line:** 311 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` - -### UT-042 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2040) - - **Line:** 2040 - - **Context:** `Unknown` - -### UT-043 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2040) - - **Line:** 2040 - - **Context:** `Unknown` - -### UR-047 - -**Locations:** 1 file(s) - -- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) - - **Line:** 3 - - **Context:** `Unknown` - ### UT-014 **Locations:** 2 file(s) @@ -7763,7 +8333,7 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 157 - **Context:** `pub fn file_size(&self) -> Option {` -### UT-019 +### UT-016 **Locations:** 2 file(s) @@ -7774,83 +8344,326 @@ JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-008, JA-010, JA-011, JA-012, - **Line:** 157 - **Context:** `pub fn file_size(&self) -> Option {` -### UT-023 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) - - **Line:** 311 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) - - **Line:** 157 - - **Context:** `pub fn file_size(&self) -> Option {` - -### UT-108 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L320) - - **Line:** 320 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L544) - - **Line:** 544 - - **Context:** `Unknown` - -### UT-120 - -**Locations:** 2 file(s) - -- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L220) - - **Line:** 220 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/download/cache.rs`](src-tauri/src/download/cache.rs#L422) - - **Line:** 422 - - **Context:** `Unknown` - -### UT-127 - -**Locations:** 11 file(s) - -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L27) - - **Line:** 27 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L282) - - **Line:** 282 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L327) - - **Line:** 327 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L398) - - **Line:** 398 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L449) - - **Line:** 449 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L458) - - **Line:** 458 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L473) - - **Line:** 473 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L508) - - **Line:** 508 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L515) - - **Line:** 515 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L540) - - **Line:** 540 - - **Context:** `Unknown` -- **File:** [`src-tauri/src/media_server.rs`](src-tauri/src/media_server.rs#L567) - - **Line:** 567 - - **Context:** `Unknown` - -### UT-150 +### UT-042 **Locations:** 1 file(s) -- **File:** [`scripts/set-version.test.ts`](scripts/set-version.test.ts#L4) - - **Line:** 4 +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2113) + - **Line:** 2113 + - **Context:** `Unknown` + +### UT-043 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2113) + - **Line:** 2113 + - **Context:** `Unknown` + +### UT-119 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L439) + - **Line:** 439 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L2804) + - **Line:** 2804 + - **Context:** `Unknown` + +### UR-047 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3) + - **Line:** 3 + - **Context:** `Unknown` + +### UR-065 + +**Locations:** 22 file(s) + +- **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L56) + - **Line:** 56 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L96) + - **Line:** 96 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L164) + - **Line:** 164 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L281) + - **Line:** 281 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L326) + - **Line:** 326 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L739) + - **Line:** 739 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L51) + - **Line:** 51 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L757) + - **Line:** 757 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/schema.rs`](src-tauri/src/storage/schema.rs#L769) + - **Line:** 769 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L63) + - **Line:** 63 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L62) + - **Line:** 62 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L276) + - **Line:** 276 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L333) + - **Line:** 333 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L501) + - **Line:** 501 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2534) + - **Line:** 2534 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2574) + - **Line:** 2574 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3073) + - **Line:** 3073 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3130) + - **Line:** 3130 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3239) + - **Line:** 3239 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3292) + - **Line:** 3292 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3348) + - **Line:** 3348 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/lib.rs`](src-tauri/src/lib.rs#L1369) + - **Line:** 1369 + - **Context:** `Unknown` + +### IT-017 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L853) + - **Line:** 853 + - **Context:** `Unknown` + +### UT-017 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/storage/db_service.rs`](src-tauri/src/storage/db_service.rs#L311) + - **Line:** 311 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/storage/mod.rs`](src-tauri/src/storage/mod.rs#L157) + - **Line:** 157 + - **Context:** `pub fn file_size(&self) -> Option {` + +### UT-044 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/commands/offline.rs`](src-tauri/src/commands/offline.rs#L136) + - **Line:** 136 + - **Context:** `Unknown` + +### UT-103 + +**Locations:** 6 file(s) + +- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L12) + - **Line:** 12 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L78) + - **Line:** 78 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L285) + - **Line:** 285 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L319) + - **Line:** 319 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L339) + - **Line:** 339 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/favorites.rs`](src-tauri/src/commands/favorites.rs#L355) + - **Line:** 355 + - **Context:** `Unknown` + +### UT-115 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L281) + - **Line:** 281 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L739) + - **Line:** 739 + - **Context:** `Unknown` + +### UT-122 + +**Locations:** 11 file(s) + +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L14) + - **Line:** 14 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L76) + - **Line:** 76 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L236) + - **Line:** 236 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L605) + - **Line:** 605 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L671) + - **Line:** 671 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L701) + - **Line:** 701 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L735) + - **Line:** 735 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L764) + - **Line:** 764 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L810) + - **Line:** 810 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L991) + - **Line:** 991 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L1006) + - **Line:** 1006 + - **Context:** `Unknown` + +### UT-125 + +**Locations:** 3 file(s) + +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L910) + - **Line:** 910 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L948) + - **Line:** 948 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L971) + - **Line:** 971 + - **Context:** `Unknown` + +### UT-126 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L489) + - **Line:** 489 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L999) + - **Line:** 999 + - **Context:** `Unknown` + +### UT-154 + +**Locations:** 2 file(s) + +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L1046) + - **Line:** 1046 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/commands/sync_drain.rs`](src-tauri/src/commands/sync_drain.rs#L1063) + - **Line:** 1063 + - **Context:** `Unknown` + +### UT-156 + +**Locations:** 4 file(s) + +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L424) + - **Line:** 424 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2523) + - **Line:** 2523 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2545) + - **Line:** 2545 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2568) + - **Line:** 2568 + - **Context:** `Unknown` + +### UT-157 + +**Locations:** 3 file(s) + +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L604) + - **Line:** 604 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L640) + - **Line:** 640 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L667) + - **Line:** 667 + - **Context:** `Unknown` + +### UT-162 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3758) + - **Line:** 3758 + - **Context:** `Unknown` + +### UT-163 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L336) + - **Line:** 336 + - **Context:** `Unknown` + +### UT-164 + +**Locations:** 1 file(s) + +- **File:** [`src-tauri/src/download/worker.rs`](src-tauri/src/download/worker.rs#L313) + - **Line:** 313 + - **Context:** `Unknown` + +### UT-166 + +**Locations:** 7 file(s) + +- **File:** [`src-tauri/src/repository/mod.rs`](src-tauri/src/repository/mod.rs#L345) + - **Line:** 345 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1950) + - **Line:** 1950 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2901) + - **Line:** 2901 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2933) + - **Line:** 2933 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2959) + - **Line:** 2959 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L152) + - **Line:** 152 + - **Context:** `Unknown` +- **File:** [`src-tauri/src/repository/device_profile.rs`](src-tauri/src/repository/device_profile.rs#L220) + - **Line:** 220 - **Context:** `Unknown`