From 43d76e2ff6d1146eba8dd0f621c86b6c99dd5f36 Mon Sep 17 00:00:00 2001 From: florian <> Date: Sat, 25 May 2024 21:16:08 +0200 Subject: [PATCH] feat: Added display for currently playing song --- bun.lockb | Bin 179158 -> 179339 bytes .../AudioBlobList/AudioBlobList.tsx | 21 ++++++++++------- src/components/AudioPlayer.tsx | 2 +- src/components/BlobList/BlobList.css | 4 ++++ src/components/Layout/Layout.tsx | 4 ++-- src/pages/Home.tsx | 22 ++++++++++-------- 6 files changed, 32 insertions(+), 21 deletions(-) diff --git a/bun.lockb b/bun.lockb index df9993690010ff2ce2d924caef6dfc69b64fd8ee..d6fa5941a839226c7f8603023d36b8df9192baa1 100755 GIT binary patch delta 29209 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 b5qF9FMJLgfUriK43)2lV4NXuSoB6*0Puvb> delta 28941 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 { - const { dispatch } = useGlobalContext(); + const { dispatch, state } = useGlobalContext(); const audioFilesWithId3 = useQueries({ queries: audioFiles.map(af => ({ @@ -43,12 +44,16 @@ const AudioBlobList = ({ audioFiles, onDelete }: AudioBlobListProps) => { dispatch({ type: 'SET_CURRENT_SONG', song: { url: blob.data.url, id3: blob.data.id3 } }) } /> - - dispatch({ type: 'SET_CURRENT_SONG', song: { url: blob.data.url, id3: blob.data.id3 } }) - } - > + {state.currentSong?.url == blob.data.url ? ( + + ) : ( + + dispatch({ type: 'SET_CURRENT_SONG', song: { url: blob.data.url, id3: blob.data.id3 } }) + } + > + )} {blob.data.id3 && (
diff --git a/src/components/AudioPlayer.tsx b/src/components/AudioPlayer.tsx index 9da2ebc..8e25cce 100644 --- a/src/components/AudioPlayer.tsx +++ b/src/components/AudioPlayer.tsx @@ -1,6 +1,6 @@ import React, { useState, useRef, useEffect } from 'react'; import { useGlobalContext } from '../GlobalState'; -import { PauseIcon, PlayIcon, SpeakerWaveIcon, SpeakerXMarkIcon, XMarkIcon } from '@heroicons/react/24/outline'; +import { PauseIcon, PlayIcon, SpeakerWaveIcon, SpeakerXMarkIcon, XMarkIcon } from '@heroicons/react/24/solid'; import dayjs from 'dayjs'; import duration from 'dayjs/plugin/duration'; diff --git a/src/components/BlobList/BlobList.css b/src/components/BlobList/BlobList.css index bfc7f97..e8316da 100644 --- a/src/components/BlobList/BlobList.css +++ b/src/components/BlobList/BlobList.css @@ -29,3 +29,7 @@ .blob-list .cover-image .play-icon { @apply opacity-0 absolute text-white top-8 left-8 w-16 h-16 rounded-full bg-[rgba(0,0,0,.4)] p-2 cursor-pointer; } + +.blob-list .cover-image .pause-icon { + @apply absolute text-white top-8 left-8 w-16 h-16 rounded-full bg-[rgba(0,0,0,.4)] p-2 cursor-pointer; +} diff --git a/src/components/Layout/Layout.tsx b/src/components/Layout/Layout.tsx index 829ae5d..4c07c0e 100644 --- a/src/components/Layout/Layout.tsx +++ b/src/components/Layout/Layout.tsx @@ -47,7 +47,7 @@ export const Layout = () => { {' '} -
    +
      {navItems}
@@ -59,7 +59,7 @@ export const Layout = () => { bouquet -
{navItems}
+
{navItems}
diff --git a/src/pages/Home.tsx b/src/pages/Home.tsx index 0ab56d8..fda8e65 100644 --- a/src/pages/Home.tsx +++ b/src/pages/Home.tsx @@ -54,16 +54,18 @@ function Home() { return ( <> - navigate('/transfer/' + selectedServer)} - onCheck={() => navigate('/check/' + selectedServer)} - title={<>Servers} - manageServers={true} - withVirtualServers={true} - > + {Object.values(serverInfo).length > 1 && ( + navigate('/transfer/' + selectedServer)} + onCheck={() => navigate('/check/' + selectedServer)} + title={<>Servers} + manageServers={true} + withVirtualServers={true} + > + )} {selectedServer && serverInfo[selectedServer] && selectedServerBlobs && (