Files
jellytau/docs/traceability.md
T
dtourolle c543f90ad3 feat(audio): graphic equalizer with presets and custom bands
Adds a 10-band graphic equalizer to AudioSettings (enabled flag +
per-band dB gains, normalised to 10 entries and clamped to range).
Presets return gain curves; the settings page gains EQ UI. libmpv
applies the filter on Linux (Android parity pending). Old persisted
settings without EQ fields load as disabled + flat.

Also includes the requirements/traceability/ux-flows doc updates for
this feature and the home long-press routing (UR-058/DR-087).

TRACES: UR-027 | IR-020, DR-030 | UT-079, UT-080, UT-081, UT-082
2026-07-24 23:49:13 +02:00

4238 lines
147 KiB
Markdown

# Code Traceability Matrix
**Generated:** 7/24/2026, 10:45:36 PM
## Summary
- **Total Files Scanned:** 287
- **Total TRACES Found:** 294
- **Requirements Covered:**
- User Requirements (UR): 55
- Integration Requirements (IR): 15
- Development Requirements (DR): 79
- Jellyfin API Requirements (JA): 24
## 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
```
### Integration Requirements (IR)
```
IR-003, IR-004, IR-009, IR-010, IR-011, IR-012, IR-013, IR-014, IR-015, IR-020, IR-023, IR-025, IR-026, IR-027, IR-028
```
### 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
```
### Jellyfin API Requirements (JA)
```
JA-001, JA-002, JA-003, JA-004, JA-005, JA-007, JA-010, JA-011, JA-012, JA-016, JA-017, JA-019, JA-020, JA-021, JA-022, JA-023, JA-024, JA-025, JA-026, JA-028, JA-029, JA-030, JA-031, JA-032
```
## Detailed Mapping
### IR-003
**Locations:** 2 file(s)
- **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<S: Into<String>>(message: S) -> Self {`
### IR-004
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L39)
- **Line:** 39
- **Context:** `pub fn playback_failed<S: Into<String>>(message: S) -> Self {`
### IR-009
**Locations:** 6 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#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/auth.rs`](src-tauri/src/commands/auth.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### IR-010
**Locations:** 2 file(s)
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### IR-011
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### IR-012
**Locations:** 2 file(s)
- **File:** [`src/lib/stores/playbackMode.ts`](src/lib/stores/playbackMode.ts#L9)
- **Line:** 9
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/player/remote.rs`](src-tauri/src/commands/player/remote.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### IR-013
**Locations:** 3 file(s)
- **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
**Locations:** 6 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/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
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### IR-020
**Locations:** 8 file(s)
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L584)
- **Line:** 584
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L604)
- **Line:** 604
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L673)
- **Line:** 673
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L685)
- **Line:** 685
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L759)
- **Line:** 759
- **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#L33)
- **Line:** 33
- **Context:** `Unknown`
### IR-023
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### IR-025
**Locations:** 1 file(s)
- **File:** [`src/lib/utils/backgroundAudio.ts`](src/lib/utils/backgroundAudio.ts#L4)
- **Line:** 4
- **Context:** `Unknown`
### IR-026
**Locations:** 1 file(s)
- **File:** [`src/lib/utils/pictureInPicture.ts`](src/lib/utils/pictureInPicture.ts#L4)
- **Line:** 4
- **Context:** `Unknown`
### IR-027
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/connectivity.rs`](src-tauri/src/commands/connectivity.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### IR-028
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/player/remote.rs`](src-tauri/src/commands/player/remote.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-001
**Locations:** 17 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2240)
- **Line:** 2240
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2297)
- **Line:** 2297
- **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/services/playerEvents.test.ts`](src/lib/services/playerEvents.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#L186)
- **Line:** 186
- **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/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/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
- **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/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-002
**Locations:** 2 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2118)
- **Line:** 2118
- **Context:** `export type PlaybackProgress = { itemId: string;`
- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L42)
- **Line:** 42
- **Context:** `Unknown`
### DR-003
**Locations:** 2 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2222)
- **Line:** 2222
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L124)
- **Line:** 124
- **Context:** `pub enum MediaType {`
### DR-004
**Locations:** 9 file(s)
- **File:** [`src/lib/services/webviewAudio.ts`](src/lib/services/webviewAudio.ts#L18)
- **Line:** 18
- **Context:** `Unknown`
- **File:** [`src/lib/player/adapters/index.ts`](src/lib/player/adapters/index.ts#L11)
- **Line:** 11
- **Context:** `Unknown`
- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L16)
- **Line:** 16
- **Context:** `Unknown`
- **File:** [`src/lib/player/adapters/webviewAudioAdapter.ts`](src/lib/player/adapters/webviewAudioAdapter.ts#L18)
- **Line:** 18
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L39)
- **Line:** 39
- **Context:** `pub fn playback_failed<S: Into<String>>(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/backend.rs`](src-tauri/src/player/backend.rs#L251)
- **Line:** 251
- **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`
### DR-005
**Locations:** 13 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2494)
- **Line:** 2494
- **Context:** `export type RemoteSessionStatus = { position: number; duration: number...`
- **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-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/commands/player/queue.rs`](src-tauri/src/commands/player/queue.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-006
**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`
### 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#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+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/library.ts`](src/lib/stores/library.ts#L2)
- **Line:** 2
- **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`
### DR-009
**Locations:** 12 file(s)
- **File:** [`src/lib/components/player/Controls.svelte`](src/lib/components/player/Controls.svelte#L1)
- **Line:** 1
- **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/MiniPlayer.svelte`](src/lib/components/player/MiniPlayer.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L16)
- **Line:** 16
- **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/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
**Locations:** 1 file(s)
- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-011
**Locations:** 9 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L531)
- **Line:** 531
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L547)
- **Line:** 547
- **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-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`
### DR-012
**Locations:** 7 file(s)
- **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/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<u64> {`
- **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
**Locations:** 5 file(s)
- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L10)
- **Line:** 10
- **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/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/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-014
**Locations:** 4 file(s)
- **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#L64)
- **Line:** 64
- **Context:** `Unknown`
- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L188)
- **Line:** 188
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L5)
- **Line:** 5
- **Context:** `Unknown`
### DR-015
**Locations:** 6 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/lib/utils/validation.test.ts`](src/lib/utils/validation.test.ts#L4)
- **Line:** 4
- **Context:** `Unknown`
- **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-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2027)
- **Line:** 2027
- **Context:** `Unknown`
### DR-016
**Locations:** 3 file(s)
- **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`
### DR-017
**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/offline.rs`](src-tauri/src/commands/offline.rs#L136)
- **Line:** 136
- **Context:** `Unknown`
### DR-018
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2027)
- **Line:** 2027
- **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`
- **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#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/commands/player/queue.rs`](src-tauri/src/commands/player/queue.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-021
**Locations:** 2 file(s)
- **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`
### DR-022
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-023
**Locations:** 3 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/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19)
- **Line:** 19
- **Context:** `Unknown`
- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15)
- **Line:** 15
- **Context:** `Unknown`
### DR-024
**Locations:** 4 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/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19)
- **Line:** 19
- **Context:** `Unknown`
- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15)
- **Line:** 15
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/storage/series_prefs.rs`](src-tauri/src/commands/storage/series_prefs.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-025
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/player/settings.rs`](src-tauri/src/commands/player/settings.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-026
**Locations:** 2 file(s)
- **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`
### DR-027
**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`
### DR-028
**Locations:** 18 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2297)
- **Line:** 2297
- **Context:** `Unknown`
- **File:** [`src/lib/utils/duration.test.ts`](src/lib/utils/duration.test.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/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.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/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L122)
- **Line:** 122
- **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/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#L16)
- **Line:** 16
- **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-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/commands/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-029
**Locations:** 9 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2536)
- **Line:** 2536
- **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#L301)
- **Line:** 301
- **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/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-030
**Locations:** 13 file(s)
- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L181)
- **Line:** 181
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1773)
- **Line:** 1773
- **Context:** `export type DownloadsResponse = { downloads: DownloadInfo[]; stats: Do...`
- **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
- **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#L200)
- **Line:** 200
- **Context:** `Unknown`
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L229)
- **Line:** 229
- **Context:** `Unknown`
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L256)
- **Line:** 256
- **Context:** `Unknown`
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L267)
- **Line:** 267
- **Context:** `Unknown`
### DR-032
**Locations:** 1 file(s)
- **File:** [`src/lib/components/library/GenericMediaListPage.svelte`](src/lib/components/library/GenericMediaListPage.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-033
**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`
### DR-034
**Locations:** 2 file(s)
- **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:** 2 file(s)
- **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-036
**Locations:** 7 file(s)
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L584)
- **Line:** 584
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L638)
- **Line:** 638
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L704)
- **Line:** 704
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L714)
- **Line:** 714
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L759)
- **Line:** 759
- **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-037
**Locations:** 12 file(s)
- **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/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/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`
- **File:** [`src-tauri/src/commands/sessions.rs`](src-tauri/src/commands/sessions.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-038
**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#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/components/home/HeroBanner.svelte`](src/lib/components/home/HeroBanner.svelte#L1)
- **Line:** 1
- **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/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/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#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+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/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/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`
### DR-040
**Locations:** 3 file(s)
- **File:** [`src/lib/components/library/CastSection.svelte`](src/lib/components/library/CastSection.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-tauri/src/commands/storage/people.rs`](src-tauri/src/commands/storage/people.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-041
**Locations:** 2 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`
### DR-043
**Locations:** 1 file(s)
- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-044
**Locations:** 1 file(s)
- **File:** [`src/lib/components/library/CastSection.svelte`](src/lib/components/library/CastSection.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-045
**Locations:** 1 file(s)
- **File:** [`src/lib/components/BottomNav.svelte`](src/lib/components/BottomNav.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-047
**Locations:** 13 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2297)
- **Line:** 2297
- **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/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.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/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#L340)
- **Line:** 340
- **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/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-048
**Locations:** 6 file(s)
- **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#L340)
- **Line:** 340
- **Context:** `Unknown`
- **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`
### DR-049
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-050
**Locations:** 1 file(s)
- **File:** [`src/lib/components/player/SleepTimerModal.svelte`](src/lib/components/player/SleepTimerModal.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-051
**Locations:** 2 file(s)
- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/utils/backgroundAudio.ts`](src/lib/utils/backgroundAudio.ts#L4)
- **Line:** 4
- **Context:** `Unknown`
### DR-052
**Locations:** 9 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/lib/components/player/backgroundAudioHandoff.test.ts`](src/lib/components/player/backgroundAudioHandoff.test.ts#L10)
- **Line:** 10
- **Context:** `Unknown`
- **File:** [`src/lib/components/player/backgroundAudioHandoff.ts`](src/lib/components/player/backgroundAudioHandoff.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/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#L68)
- **Line:** 68
- **Context:** `pub struct VideoSettingsWrapper(pub Mutex<VideoSettings>);`
- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L574)
- **Line:** 574
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L664)
- **Line:** 664
- **Context:** `Unknown`
### DR-053
**Locations:** 1 file(s)
- **File:** [`src/lib/utils/pictureInPicture.ts`](src/lib/utils/pictureInPicture.ts#L4)
- **Line:** 4
- **Context:** `Unknown`
### DR-054
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/auth.rs`](src-tauri/src/commands/auth.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-055
**Locations:** 2 file(s)
- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L10)
- **Line:** 10
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/connectivity.rs`](src-tauri/src/commands/connectivity.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-056
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/download/pinning.rs`](src-tauri/src/commands/download/pinning.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-057
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/download/smart_cache.rs`](src-tauri/src/commands/download/smart_cache.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-058
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/player/remote.rs`](src-tauri/src/commands/player/remote.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-059
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/playback_mode.rs`](src-tauri/src/commands/playback_mode.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-060
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/storage/mod.rs`](src-tauri/src/commands/storage/mod.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### DR-061
**Locations:** 1 file(s)
- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-062
**Locations:** 2 file(s)
- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-063
**Locations:** 3 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#L39)
- **Line:** 39
- **Context:** `Unknown`
- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L50)
- **Line:** 50
- **Context:** `export function scopeItemTypes(scope: SearchScope): string[] | undefin...`
### DR-064
**Locations:** 3 file(s)
- **File:** [`src/routes/library/+layout.svelte`](src/routes/library/+layout.svelte#L41)
- **Line:** 41
- **Context:** `Unknown`
- **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L15)
- **Line:** 15
- **Context:** `Unknown`
- **File:** [`src/lib/components/search/SearchScopeChips.svelte`](src/lib/components/search/SearchScopeChips.svelte#L7)
- **Line:** 7
- **Context:** `Unknown`
### DR-065
**Locations:** 2 file(s)
- **File:** [`src/lib/stores/librarySearchScope.test.ts`](src/lib/stores/librarySearchScope.test.ts#L4)
- **Line:** 4
- **Context:** `Unknown`
- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L235)
- **Line:** 235
- **Context:** `Unknown`
### DR-066
**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#L117)
- **Line:** 117
- **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#L161)
- **Line:** 161
- **Context:** `Unknown`
### DR-068
**Locations:** 1 file(s)
- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-069
**Locations:** 1 file(s)
- **File:** [`src/lib/components/library/LibraryGrid.svelte`](src/lib/components/library/LibraryGrid.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-070
**Locations:** 1 file(s)
- **File:** [`src/lib/components/library/LibraryGrid.svelte`](src/lib/components/library/LibraryGrid.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-074
**Locations:** 17 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L948)
- **Line:** 948
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L959)
- **Line:** 959
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1965)
- **Line:** 1965
- **Context:** `export type MergedMediaItem = { id: string; title: string; artist: str...`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1974)
- **Line:** 1974
- **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<DownloadManager>);`
- **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#L1299)
- **Line:** 1299
- **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/cache.rs`](src-tauri/src/download/cache.rs#L76)
- **Line:** 76
- **Context:** `Unknown`
- **File:** [`src-tauri/src/download/events.rs`](src-tauri/src/download/events.rs#L47)
- **Line:** 47
- **Context:** `Unknown`
### DR-075
**Locations:** 1 file(s)
- **File:** [`src/lib/components/account/AccountMenu.svelte`](src/lib/components/account/AccountMenu.svelte#L7)
- **Line:** 7
- **Context:** `Unknown`
### DR-076
**Locations:** 2 file(s)
- **File:** [`src/lib/components/AppHeader.svelte`](src/lib/components/AppHeader.svelte#L7)
- **Line:** 7
- **Context:** `Unknown`
- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L80)
- **Line:** 80
- **Context:** `Unknown`
### DR-077
**Locations:** 2 file(s)
- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/stores/viewMode.test.ts`](src/lib/stores/viewMode.test.ts#L7)
- **Line:** 7
- **Context:** `Unknown`
### DR-078
**Locations:** 6 file(s)
- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/services/offlineCatalog.ts`](src/lib/services/offlineCatalog.ts#L14)
- **Line:** 14
- **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/offline.rs`](src-tauri/src/repository/offline.rs#L24)
- **Line:** 24
- **Context:** `Unknown`
- **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#L2385)
- **Line:** 2385
- **Context:** `Unknown`
### DR-079
**Locations:** 2 file(s)
- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L10)
- **Line:** 10
- **Context:** `Unknown`
- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L245)
- **Line:** 245
- **Context:** `Unknown`
### DR-080
**Locations:** 2 file(s)
- **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
**Locations:** 2 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`
### DR-082
**Locations:** 20 file(s)
- **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14)
- **Line:** 14
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1221)
- **Line:** 1221
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1229)
- **Line:** 1229
- **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/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-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L203)
- **Line:** 203
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L218)
- **Line:** 218
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L143)
- **Line:** 143
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L154)
- **Line:** 154
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L538)
- **Line:** 538
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L565)
- **Line:** 565
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L669)
- **Line:** 669
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2686)
- **Line:** 2686
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2708)
- **Line:** 2708
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2742)
- **Line:** 2742
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2788)
- **Line:** 2788
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2809)
- **Line:** 2809
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2828)
- **Line:** 2828
- **Context:** `Unknown`
### DR-083
**Locations:** 19 file(s)
- **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14)
- **Line:** 14
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L805)
- **Line:** 805
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1229)
- **Line:** 1229
- **Context:** `Unknown`
- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L105)
- **Line:** 105
- **Context:** `Unknown`
- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L24)
- **Line:** 24
- **Context:** `Unknown`
- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L29)
- **Line:** 29
- **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/services/downloadedCatalog.ts`](src/lib/services/downloadedCatalog.ts#L95)
- **Line:** 95
- **Context:** `function sizeOf(itemId: string): number {`
- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L1925)
- **Line:** 1925
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L218)
- **Line:** 218
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L143)
- **Line:** 143
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L538)
- **Line:** 538
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L565)
- **Line:** 565
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2686)
- **Line:** 2686
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2708)
- **Line:** 2708
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2742)
- **Line:** 2742
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2788)
- **Line:** 2788
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2889)
- **Line:** 2889
- **Context:** `Unknown`
### DR-084
**Locations:** 2 file(s)
- **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14)
- **Line:** 14
- **Context:** `Unknown`
- **File:** [`src/lib/stores/downloads.test.ts`](src/lib/stores/downloads.test.ts#L315)
- **Line:** 315
- **Context:** `Unknown`
### DR-085
**Locations:** 15 file(s)
- **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14)
- **Line:** 14
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1237)
- **Line:** 1237
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1718)
- **Line:** 1718
- **Context:** `Unknown`
- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L113)
- **Line:** 113
- **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#L18)
- **Line:** 18
- **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-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L235)
- **Line:** 235
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L161)
- **Line:** 161
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L259)
- **Line:** 259
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L720)
- **Line:** 720
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2850)
- **Line:** 2850
- **Context:** `Unknown`
### DR-086
**Locations:** 1 file(s)
- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### DR-087
**Locations:** 4 file(s)
- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L386)
- **Line:** 386
- **Context:** `Unknown`
- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L62)
- **Line:** 62
- **Context:** `Unknown`
- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L86)
- **Line:** 86
- **Context:** `Unknown`
- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L37)
- **Line:** 37
- **Context:** `Unknown`
### JA-001
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### JA-002
**Locations:** 2 file(s)
- **File:** [`src-tauri/src/commands/auth.rs`](src-tauri/src/commands/auth.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### JA-003
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### JA-004
**Locations:** 3 file(s)
- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L4)
- **Line:** 4
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### JA-005
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L4)
- **Line:** 4
- **Context:** `Unknown`
### JA-007
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### JA-010
**Locations:** 2 file(s)
- **File:** [`src-tauri/src/commands/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### JA-011
**Locations:** 2 file(s)
- **File:** [`src-tauri/src/commands/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### JA-012
**Locations:** 2 file(s)
- **File:** [`src-tauri/src/commands/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### JA-016
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### JA-017
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/jellyfin/client.rs`](src-tauri/src/jellyfin/client.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### JA-019
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/playlist.rs`](src-tauri/src/commands/playlist.rs#L4)
- **Line:** 4
- **Context:** `Unknown`
### JA-020
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/playlist.rs`](src-tauri/src/commands/playlist.rs#L4)
- **Line:** 4
- **Context:** `Unknown`
### JA-021
**Locations:** 6 file(s)
- **File:** [`src/lib/components/sessions/SessionsList.svelte`](src/lib/components/sessions/SessionsList.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/lmsSync.ts`](src/lib/stores/lmsSync.ts#L12)
- **Line:** 12
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/sessions.rs`](src-tauri/src/commands/sessions.rs#L1)
- **Line:** 1
- **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
**Locations:** 3 file(s)
- **File:** [`src/lib/components/sessions/RemoteControls.svelte`](src/lib/components/sessions/RemoteControls.svelte#L1)
- **Line:** 1
- **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`
### JA-023
**Locations:** 3 file(s)
- **File:** [`src/lib/components/sessions/RemoteControls.svelte`](src/lib/components/sessions/RemoteControls.svelte#L1)
- **Line:** 1
- **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`
### JA-024
**Locations:** 2 file(s)
- **File:** [`src/lib/components/sessions/RemoteControls.svelte`](src/lib/components/sessions/RemoteControls.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
### JA-025
**Locations:** 4 file(s)
- **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)
- **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`
### JA-026
**Locations:** 3 file(s)
- **File:** [`src/lib/components/sessions/RemoteControls.svelte`](src/lib/components/sessions/RemoteControls.svelte#L1)
- **Line:** 1
- **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`
### JA-028
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/storage/thumbnails.rs`](src-tauri/src/commands/storage/thumbnails.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### JA-029
**Locations:** 3 file(s)
- **File:** [`src/lib/components/library/CastSection.svelte`](src/lib/components/library/CastSection.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-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L4)
- **Line:** 4
- **Context:** `Unknown`
### JA-030
**Locations:** 2 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`
### JA-031
**Locations:** 2 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`
### JA-032
**Locations:** 9 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1319)
- **Line:** 1319
- **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#L203)
- **Line:** 203
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L494)
- **Line:** 494
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L82)
- **Line:** 82
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L435)
- **Line:** 435
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2093)
- **Line:** 2093
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2134)
- **Line:** 2134
- **Context:** `Unknown`
### UR-002
**Locations:** 16 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2222)
- **Line:** 2222
- **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#L124)
- **Line:** 124
- **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#L5)
- **Line:** 5
- **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<u64> {`
- **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/online.rs`](src-tauri/src/repository/online.rs#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### UR-003
**Locations:** 20 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2118)
- **Line:** 2118
- **Context:** `export type PlaybackProgress = { itemId: string;`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2222)
- **Line:** 2222
- **Context:** `Unknown`
- **File:** [`src/lib/components/player/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/services/webviewAudio.ts`](src/lib/services/webviewAudio.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#L11)
- **Line:** 11
- **Context:** `Unknown`
- **File:** [`src/lib/player/adapters/nativeAdapter.ts`](src/lib/player/adapters/nativeAdapter.ts#L16)
- **Line:** 16
- **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-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/media.rs`](src-tauri/src/player/media.rs#L42)
- **Line:** 42
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L124)
- **Line:** 124
- **Context:** `pub enum MediaType {`
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L39)
- **Line:** 39
- **Context:** `pub fn playback_failed<S: Into<String>>(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/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/mod.rs`](src-tauri/src/commands/mod.rs#L2)
- **Line:** 2
- **Context:** `Unknown`
### UR-004
**Locations:** 15 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2118)
- **Line:** 2118
- **Context:** `export type PlaybackProgress = { itemId: string;`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2222)
- **Line:** 2222
- **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/preload.ts`](src/lib/services/preload.ts#L5)
- **Line:** 5
- **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/media.rs`](src-tauri/src/player/media.rs#L42)
- **Line:** 42
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L124)
- **Line:** 124
- **Context:** `pub enum MediaType {`
- **File:** [`src-tauri/src/player/backend.rs`](src-tauri/src/player/backend.rs#L39)
- **Line:** 39
- **Context:** `pub fn playback_failed<S: Into<String>>(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/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/mod.rs`](src-tauri/src/commands/mod.rs#L2)
- **Line:** 2
- **Context:** `Unknown`
### UR-005
**Locations:** 58 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2240)
- **Line:** 2240
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2297)
- **Line:** 2297
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2494)
- **Line:** 2494
- **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/AudioPlayer.svelte`](src/lib/components/player/AudioPlayer.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/VideoPlayer.svelte`](src/lib/components/player/VideoPlayer.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/components/BottomUi.svelte`](src/lib/components/BottomUi.svelte#L16)
- **Line:** 16
- **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/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/utils/duration.test.ts`](src/lib/utils/duration.test.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/playbackReporting.test.ts`](src/lib/services/playbackReporting.test.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/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/webviewAudio.ts`](src/lib/services/webviewAudio.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#L16)
- **Line:** 16
- **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/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/mod.rs`](src-tauri/src/player/mod.rs#L2)
- **Line:** 2
- **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/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-007
**Locations:** 15 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#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+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/library.ts`](src/lib/stores/library.ts#L2)
- **Line:** 2
- **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/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-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L4)
- **Line:** 4
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L1)
- **Line:** 1
- **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#L531)
- **Line:** 531
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L547)
- **Line:** 547
- **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-010
**Locations:** 15 file(s)
- **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/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/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`
- **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-011
**Locations:** 11 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2222)
- **Line:** 2222
- **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.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-tauri/src/player/media.rs`](src-tauri/src/player/media.rs#L124)
- **Line:** 124
- **Context:** `pub enum MediaType {`
- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2027)
- **Line:** 2027
- **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#L441)
- **Line:** 441
- **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<u64> {`
- **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-017
**Locations:** 9 file(s)
- **File:** [`src/lib/components/player/MiniPlayer.svelte`](src/lib/components/player/MiniPlayer.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#L64)
- **Line:** 64
- **Context:** `Unknown`
- **File:** [`src/lib/services/syncService.ts`](src/lib/services/syncService.ts#L188)
- **Line:** 188
- **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#L5)
- **Line:** 5
- **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#L2027)
- **Line:** 2027
- **Context:** `Unknown`
### UR-019
**Locations:** 12 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2297)
- **Line:** 2297
- **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/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L10)
- **Line:** 10
- **Context:** `Unknown`
- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L8)
- **Line:** 8
- **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/mod.rs`](src-tauri/src/commands/mod.rs#L2)
- **Line:** 2
- **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<u64> {`
### UR-020
**Locations:** 4 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/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19)
- **Line:** 19
- **Context:** `Unknown`
- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15)
- **Line:** 15
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L1)
- **Line:** 1
- **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/html5Adapter.ts`](src/lib/player/adapters/html5Adapter.ts#L19)
- **Line:** 19
- **Context:** `Unknown`
- **File:** [`src/lib/player/adapters/types.ts`](src/lib/player/adapters/types.ts#L15)
- **Line:** 15
- **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-023
**Locations:** 19 file(s)
- **File:** [`src/routes/library/movies/+page.svelte`](src/routes/library/movies/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2297)
- **Line:** 2297
- **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/lib/stores/tv.ts`](src/lib/stores/tv.ts#L3)
- **Line:** 3
- **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`
- **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#L340)
- **Line:** 340
- **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/mod.rs`](src-tauri/src/player/mod.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`
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L1)
- **Line:** 1
- **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-025
**Locations:** 14 file(s)
- **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/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#L89)
- **Line:** 89
- **Context:** `Unknown`
- **File:** [`src/lib/services/playbackReporting.ts`](src/lib/services/playbackReporting.ts#L122)
- **Line:** 122
- **Context:** `Unknown`
- **File:** [`src/lib/services/playerEvents.ts`](src/lib/services/playerEvents.ts#L156)
- **Line:** 156
- **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#L64)
- **Line:** 64
- **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/playback_reporting.rs`](src-tauri/src/commands/playback_reporting.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/sync.rs`](src-tauri/src/commands/sync.rs#L5)
- **Line:** 5
- **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<u64> {`
### UR-026
**Locations:** 16 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2297)
- **Line:** 2297
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L2536)
- **Line:** 2536
- **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#L301)
- **Line:** 301
- **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/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/player/timers.rs`](src-tauri/src/commands/player/timers.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### UR-027
**Locations:** 18 file(s)
- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L181)
- **Line:** 181
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1773)
- **Line:** 1773
- **Context:** `export type DownloadsResponse = { downloads: DownloadInfo[]; stats: Do...`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L584)
- **Line:** 584
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L604)
- **Line:** 604
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L673)
- **Line:** 673
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L685)
- **Line:** 685
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L759)
- **Line:** 759
- **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
- **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#L200)
- **Line:** 200
- **Context:** `Unknown`
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L229)
- **Line:** 229
- **Context:** `Unknown`
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L256)
- **Line:** 256
- **Context:** `Unknown`
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L267)
- **Line:** 267
- **Context:** `Unknown`
### UR-028
**Locations:** 2 file(s)
- **File:** [`src/lib/components/player/AudioPlayer.svelte`](src/lib/components/player/AudioPlayer.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/components/player/MiniPlayer.svelte`](src/lib/components/player/MiniPlayer.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### UR-029
**Locations:** 5 file(s)
- **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/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-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-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#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/routes/library/tv/+page.svelte`](src/routes/library/tv/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/components/home/HeroBanner.svelte`](src/lib/components/home/HeroBanner.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/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/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/utils/heroMix.ts`](src/lib/utils/heroMix.ts#L8)
- **Line:** 8
- **Context:** `Unknown`
### UR-035
**Locations:** 5 file(s)
- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.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/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-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-038
**Locations:** 1 file(s)
- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L1)
- **Line:** 1
- **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-040
**Locations:** 19 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/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1319)
- **Line:** 1319
- **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#L203)
- **Line:** 203
- **Context:** `Unknown`
- **File:** [`src/lib/components/player/backgroundAudioHandoff.test.ts`](src/lib/components/player/backgroundAudioHandoff.test.ts#L10)
- **Line:** 10
- **Context:** `Unknown`
- **File:** [`src/lib/components/player/backgroundAudioHandoff.ts`](src/lib/components/player/backgroundAudioHandoff.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/utils/backgroundAudio.ts`](src/lib/utils/backgroundAudio.ts#L4)
- **Line:** 4
- **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#L68)
- **Line:** 68
- **Context:** `pub struct VideoSettingsWrapper(pub Mutex<VideoSettings>);`
- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L574)
- **Line:** 574
- **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/repository.rs`](src-tauri/src/commands/repository.rs#L494)
- **Line:** 494
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L82)
- **Line:** 82
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L435)
- **Line:** 435
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2093)
- **Line:** 2093
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2134)
- **Line:** 2134
- **Context:** `Unknown`
### UR-041
**Locations:** 1 file(s)
- **File:** [`src/lib/utils/pictureInPicture.ts`](src/lib/utils/pictureInPicture.ts#L4)
- **Line:** 4
- **Context:** `Unknown`
### UR-043
**Locations:** 2 file(s)
- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L10)
- **Line:** 10
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/connectivity.rs`](src-tauri/src/commands/connectivity.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### UR-048
**Locations:** 2 file(s)
- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/components/library/EpisodeFocusView.svelte`](src/lib/components/library/EpisodeFocusView.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### UR-049
**Locations:** 8 file(s)
- **File:** [`src/routes/library/+layout.svelte`](src/routes/library/+layout.svelte#L41)
- **Line:** 41
- **Context:** `Unknown`
- **File:** [`src/routes/search/+page.svelte`](src/routes/search/+page.svelte#L15)
- **Line:** 15
- **Context:** `Unknown`
- **File:** [`src/lib/components/search/SearchScopeChips.svelte`](src/lib/components/search/SearchScopeChips.svelte#L7)
- **Line:** 7
- **Context:** `Unknown`
- **File:** [`src/lib/stores/librarySearchScope.test.ts`](src/lib/stores/librarySearchScope.test.ts#L4)
- **Line:** 4
- **Context:** `Unknown`
- **File:** [`src/lib/stores/library.ts`](src/lib/stores/library.ts#L235)
- **Line:** 235
- **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#L39)
- **Line:** 39
- **Context:** `Unknown`
- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L50)
- **Line:** 50
- **Context:** `export function scopeItemTypes(scope: SearchScope): string[] | undefin...`
### UR-050
**Locations:** 7 file(s)
- **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#L117)
- **Line:** 117
- **Context:** `Unknown`
- **File:** [`src/lib/utils/searchScope.ts`](src/lib/utils/searchScope.ts#L161)
- **Line:** 161
- **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-052
**Locations:** 10 file(s)
- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
- **File:** [`src/lib/stores/connectivity.ts`](src/lib/stores/connectivity.ts#L10)
- **Line:** 10
- **Context:** `Unknown`
- **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
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L441)
- **Line:** 441
- **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/offline.rs`](src-tauri/src/repository/offline.rs#L24)
- **Line:** 24
- **Context:** `Unknown`
- **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#L2385)
- **Line:** 2385
- **Context:** `Unknown`
### UR-053
**Locations:** 17 file(s)
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L948)
- **Line:** 948
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L959)
- **Line:** 959
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1965)
- **Line:** 1965
- **Context:** `export type MergedMediaItem = { id: string; title: string; artist: str...`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1974)
- **Line:** 1974
- **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<DownloadManager>);`
- **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#L1299)
- **Line:** 1299
- **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/cache.rs`](src-tauri/src/download/cache.rs#L76)
- **Line:** 76
- **Context:** `Unknown`
- **File:** [`src-tauri/src/download/events.rs`](src-tauri/src/download/events.rs#L47)
- **Line:** 47
- **Context:** `Unknown`
### UR-054
**Locations:** 3 file(s)
- **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#L7)
- **Line:** 7
- **Context:** `Unknown`
- **File:** [`src/lib/utils/layoutShell.ts`](src/lib/utils/layoutShell.ts#L80)
- **Line:** 80
- **Context:** `Unknown`
### UR-055
**Locations:** 27 file(s)
- **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14)
- **Line:** 14
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L805)
- **Line:** 805
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1221)
- **Line:** 1221
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1229)
- **Line:** 1229
- **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/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L24)
- **Line:** 24
- **Context:** `Unknown`
- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L29)
- **Line:** 29
- **Context:** `Unknown`
- **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-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L1925)
- **Line:** 1925
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L203)
- **Line:** 203
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L218)
- **Line:** 218
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L143)
- **Line:** 143
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L154)
- **Line:** 154
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L538)
- **Line:** 538
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L565)
- **Line:** 565
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L669)
- **Line:** 669
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2686)
- **Line:** 2686
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2708)
- **Line:** 2708
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2742)
- **Line:** 2742
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2788)
- **Line:** 2788
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2809)
- **Line:** 2809
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2828)
- **Line:** 2828
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2889)
- **Line:** 2889
- **Context:** `Unknown`
### UR-056
**Locations:** 17 file(s)
- **File:** [`src/routes/downloads/+page.svelte`](src/routes/downloads/+page.svelte#L14)
- **Line:** 14
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1237)
- **Line:** 1237
- **Context:** `Unknown`
- **File:** [`src/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1718)
- **Line:** 1718
- **Context:** `Unknown`
- **File:** [`src/lib/api/repository-client.ts`](src/lib/api/repository-client.ts#L113)
- **Line:** 113
- **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#L18)
- **Line:** 18
- **Context:** `Unknown`
- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L29)
- **Line:** 29
- **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-tauri/src/commands/repository.rs`](src-tauri/src/commands/repository.rs#L235)
- **Line:** 235
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/hybrid.rs`](src-tauri/src/repository/hybrid.rs#L161)
- **Line:** 161
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/types.rs`](src-tauri/src/repository/types.rs#L259)
- **Line:** 259
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L720)
- **Line:** 720
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2850)
- **Line:** 2850
- **Context:** `Unknown`
### UR-057
**Locations:** 1 file(s)
- **File:** [`src/routes/settings/+page.svelte`](src/routes/settings/+page.svelte#L1)
- **Line:** 1
- **Context:** `Unknown`
### UR-058
**Locations:** 4 file(s)
- **File:** [`src/routes/library/[id]/+page.svelte`](src/routes/library/[id]/+page.svelte#L386)
- **Line:** 386
- **Context:** `Unknown`
- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L62)
- **Line:** 62
- **Context:** `Unknown`
- **File:** [`src/routes/+page.svelte`](src/routes/+page.svelte#L86)
- **Line:** 86
- **Context:** `Unknown`
- **File:** [`src/lib/components/library/MediaCard.svelte`](src/lib/components/library/MediaCard.svelte#L37)
- **Line:** 37
- **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#L574)
- **Line:** 574
- **Context:** `Unknown`
- **File:** [`src-tauri/src/commands/player/mod.rs`](src-tauri/src/commands/player/mod.rs#L664)
- **Line:** 664
- **Context:** `Unknown`
### IT-016
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2385)
- **Line:** 2385
- **Context:** `Unknown`
### IT-017
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/catalog.rs`](src-tauri/src/commands/catalog.rs#L441)
- **Line:** 441
- **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-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-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-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-014
**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<u64> {`
### UT-015
**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<u64> {`
### 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<u64> {`
### 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<u64> {`
### 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<u64> {`
### 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<u64> {`
### 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<u64> {`
### 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<u64> {`
### 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<u64> {`
### 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<u64> {`
### 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-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<u64> {`
### 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-031
**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-051
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2889)
- **Line:** 2889
- **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-059
**Locations:** 3 file(s)
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L435)
- **Line:** 435
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2093)
- **Line:** 2093
- **Context:** `Unknown`
- **File:** [`src-tauri/src/repository/online.rs`](src-tauri/src/repository/online.rs#L2134)
- **Line:** 2134
- **Context:** `Unknown`
### UT-060
**Locations:** 2 file(s)
- **File:** [`src/lib/components/player/backgroundAudioHandoff.test.ts`](src/lib/components/player/backgroundAudioHandoff.test.ts#L10)
- **Line:** 10
- **Context:** `Unknown`
- **File:** [`src/lib/components/player/backgroundAudioHandoff.ts`](src/lib/components/player/backgroundAudioHandoff.ts#L4)
- **Line:** 4
- **Context:** `Unknown`
### UT-061
**Locations:** 9 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/lib/api/bindings.ts`](src/lib/api/bindings.ts#L1319)
- **Line:** 1319
- **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/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#L574)
- **Line:** 574
- **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/repository.rs`](src-tauri/src/commands/repository.rs#L494)
- **Line:** 494
- **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-071
**Locations:** 1 file(s)
- **File:** [`src/lib/utils/formatBytes.test.ts`](src/lib/utils/formatBytes.test.ts#L4)
- **Line:** 4
- **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`
### 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-029
**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`
### 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-031
**Locations:** 2 file(s)
- **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`
### UR-032
**Locations:** 2 file(s)
- **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`
### UR-033
**Locations:** 7 file(s)
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L584)
- **Line:** 584
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L638)
- **Line:** 638
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L704)
- **Line:** 704
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L714)
- **Line:** 714
- **Context:** `Unknown`
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L759)
- **Line:** 759
- **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`
### UT-042
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2027)
- **Line:** 2027
- **Context:** `Unknown`
### UT-043
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/download/mod.rs`](src-tauri/src/commands/download/mod.rs#L2027)
- **Line:** 2027
- **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-067
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2385)
- **Line:** 2385
- **Context:** `Unknown`
### UT-072
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2686)
- **Line:** 2686
- **Context:** `Unknown`
### UT-073
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2809)
- **Line:** 2809
- **Context:** `Unknown`
### UT-074
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2828)
- **Line:** 2828
- **Context:** `Unknown`
### UT-075
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2850)
- **Line:** 2850
- **Context:** `Unknown`
### UT-076
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2708)
- **Line:** 2708
- **Context:** `Unknown`
### UT-077
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2742)
- **Line:** 2742
- **Context:** `Unknown`
### UT-078
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/repository/offline.rs`](src-tauri/src/repository/offline.rs#L2788)
- **Line:** 2788
- **Context:** `Unknown`
### UT-079
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L200)
- **Line:** 200
- **Context:** `Unknown`
### UT-080
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L229)
- **Line:** 229
- **Context:** `Unknown`
### UT-081
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L256)
- **Line:** 256
- **Context:** `Unknown`
### UT-082
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/settings.rs`](src-tauri/src/settings.rs#L267)
- **Line:** 267
- **Context:** `Unknown`
### UT-083
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L673)
- **Line:** 673
- **Context:** `Unknown`
### UT-084
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L685)
- **Line:** 685
- **Context:** `Unknown`
### UT-085
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L704)
- **Line:** 704
- **Context:** `Unknown`
### UT-086
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L714)
- **Line:** 714
- **Context:** `Unknown`
### UT-087
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/player/mpv_backend.rs`](src-tauri/src/player/mpv_backend.rs#L759)
- **Line:** 759
- **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-042
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/auth.rs`](src-tauri/src/commands/auth.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### UR-044
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/download/pinning.rs`](src-tauri/src/commands/download/pinning.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### UR-045
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/download/smart_cache.rs`](src-tauri/src/commands/download/smart_cache.rs#L3)
- **Line:** 3
- **Context:** `Unknown`
### UR-046
**Locations:** 1 file(s)
- **File:** [`src-tauri/src/commands/player/remote.rs`](src-tauri/src/commands/player/remote.rs#L3)
- **Line:** 3
- **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`