From f9fe6a2d1163e8130cc61133ced930ca5155feeb Mon Sep 17 00:00:00 2001 From: Yuri Tatishchev Date: Mon, 9 Feb 2026 23:39:36 -0800 Subject: [PATCH] WIP: global player refactor pt. 2 --- src/lib/components/player/PlayerMobile.svelte | 20 ++++----- src/lib/components/player/PlayerRoot.svelte | 42 +++++++++---------- src/lib/components/player/Queue.svelte | 3 +- src/lib/components/player/ctx.svelte.ts | 2 - src/lib/db/import-amq.ts | 2 +- 5 files changed, 32 insertions(+), 37 deletions(-) diff --git a/src/lib/components/player/PlayerMobile.svelte b/src/lib/components/player/PlayerMobile.svelte index 05fa63b..af3780e 100644 --- a/src/lib/components/player/PlayerMobile.svelte +++ b/src/lib/components/player/PlayerMobile.svelte @@ -21,12 +21,13 @@
-
(open = true)} - > +
-
+
+ -
e.stopPropagation()} - > +
diff --git a/src/lib/components/player/PlayerRoot.svelte b/src/lib/components/player/PlayerRoot.svelte index eccaf3c..d1c43d1 100644 --- a/src/lib/components/player/PlayerRoot.svelte +++ b/src/lib/components/player/PlayerRoot.svelte @@ -26,14 +26,12 @@ // Setup MediaSession if ("mediaSession" in navigator) { - navigator.mediaSession.setActionHandler( - "play", - () => (audioCtx.paused = false), - ); - navigator.mediaSession.setActionHandler( - "pause", - () => (audioCtx.paused = true), - ); + navigator.mediaSession.setActionHandler("play", () => { + audioCtx.paused = false; + }); + navigator.mediaSession.setActionHandler("pause", () => { + audioCtx.paused = true; + }); navigator.mediaSession.setActionHandler("previoustrack", () => player.prev(), ); @@ -117,20 +115,20 @@
-
- -
- +
+ +
+
diff --git a/src/lib/components/player/Queue.svelte b/src/lib/components/player/Queue.svelte index 330a66e..cdb0bc6 100644 --- a/src/lib/components/player/Queue.svelte +++ b/src/lib/components/player/Queue.svelte @@ -2,12 +2,13 @@ import { Play, X } from "@lucide/svelte"; import { Button } from "$lib/components/ui/button"; import { player } from "$lib/player/store.svelte"; + import type { Track } from "$lib/player/types"; function onRemove(id: number) { player.remove(id); } - function onJump(track: any) { + function onJump(track: Track) { player.playNext(track); // Wait, jump usually means play immediately? // "Jump to track" -> set as current. diff --git a/src/lib/components/player/ctx.svelte.ts b/src/lib/components/player/ctx.svelte.ts index f0bf43c..4a61833 100644 --- a/src/lib/components/player/ctx.svelte.ts +++ b/src/lib/components/player/ctx.svelte.ts @@ -9,8 +9,6 @@ export class AudioContext { private audioEl: HTMLAudioElement | null = null; - constructor() {} - setElement(el: HTMLAudioElement) { this.audioEl = el; } diff --git a/src/lib/db/import-amq.ts b/src/lib/db/import-amq.ts index c35352e..1a555db 100644 --- a/src/lib/db/import-amq.ts +++ b/src/lib/db/import-amq.ts @@ -90,7 +90,7 @@ function zodErrorSummary(prefix: string, err: z.ZodError): string { return `${prefix}\n${lines.join("\n")}${more}`; } -function categoryNumberToText( +function _categoryNumberToText( v: number | string | null | undefined, ): string | null { if (v === null || v === undefined) return null;