diff options
author | metamuffin <metamuffin@disroot.org> | 2024-03-16 17:02:56 +0100 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2024-03-16 17:02:56 +0100 |
commit | a59f99195c0b4c73444c0a167bb2c3975bb22275 (patch) | |
tree | 6a9ae081bbe8766e0bf9dcd0192e0400833baa97 | |
parent | dc1228446996dc18579d399c65fd407ad1dd2a2b (diff) | |
download | jellything-a59f99195c0b4c73444c0a167bb2c3975bb22275.tar jellything-a59f99195c0b4c73444c0a167bb2c3975bb22275.tar.bz2 jellything-a59f99195c0b4c73444c0a167bb2c3975bb22275.tar.zst |
player: show messaage when no tracks are available
-rw-r--r-- | web/script/player/mod.ts | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/web/script/player/mod.ts b/web/script/player/mod.ts index fd2dd5c..0dc5d2d 100644 --- a/web/script/player/mod.ts +++ b/web/script/player/mod.ts @@ -116,10 +116,12 @@ function initialize_player(el: HTMLElement, node_id: string) { ...(kind == "audio" ? volume() : []), - player.active_tracks.map(_ => - e("ul", { class: "jsp-track-list" }, ...(player.tracks ?? []) + player.active_tracks.map(_ => { + const tracks_avail = (player.tracks ?? []) .map((track, index) => ({ index, track })) - .filter(({ track }) => get_track_kind(track.kind) == kind) + .filter(({ track }) => get_track_kind(track.kind) == kind); + if (!tracks_avail.length) return e("p", `No ${kind} tracks available.`) as HTMLElement; + return e("ul", { class: "jsp-track-list" }, ...tracks_avail .map(({ track, index }): HTMLElement => { const active = player.active_tracks.value.find(ts => ts.track_index == index) !== undefined const onclick = () => { @@ -132,7 +134,8 @@ function initialize_player(el: HTMLElement, node_id: string) { e("span", { class: "jsp-track-lang" }, `(${track.language})`) ) }) - )) + ) + }) ) ) return button |