diff --git a/packages/app/src/components/Music/Playlist/index.jsx b/packages/app/src/components/Music/Playlist/index.jsx
index 5505ae86..e55e4a93 100755
--- a/packages/app/src/components/Music/Playlist/index.jsx
+++ b/packages/app/src/components/Music/Playlist/index.jsx
@@ -6,14 +6,6 @@ import { Icons } from "@components/Icons"
import "./index.less"
-const typeToNavigationType = {
- playlist: "playlist",
- album: "album",
- track: "track",
- single: "track",
- ep: "album",
-}
-
const Playlist = (props) => {
const [coverHover, setCoverHover] = React.useState(false)
@@ -28,13 +20,27 @@ const Playlist = (props) => {
return props.onClick(playlist)
}
- return app.location.push(`/music/list/${playlist._id}`)
+ const params = new URLSearchParams()
+
+ if (playlist.type) {
+ params.set("type", playlist.type)
+ }
+
+ if (playlist.service) {
+ params.set("service", playlist.service)
+ }
+
+ return app.location.push(
+ `/music/list/${playlist._id}?${params.toString()}`,
+ )
}
const onClickPlay = (e) => {
e.stopPropagation()
- app.cores.player.start(playlist.items)
+ if (playlist.items) {
+ app.cores.player.start(playlist.items)
+ }
}
return (
@@ -68,8 +74,16 @@ const Playlist = (props) => {
{playlist.title}
+
{props.row && (
+ {playlist.service === "tidal" && (
+
+
+ Tidal
+
+ )}
+
{playlist.type ?? "playlist"}
diff --git a/packages/app/src/components/Music/Playlist/index.less b/packages/app/src/components/Music/Playlist/index.less
index 6ebf2a82..464c2836 100755
--- a/packages/app/src/components/Music/Playlist/index.less
+++ b/packages/app/src/components/Music/Playlist/index.less
@@ -45,6 +45,13 @@
justify-content: center;
.playlist_info_title {
+ display: flex;
+ flex-direction: row;
+
+ align-items: center;
+
+ gap: 7px;
+
h1 {
word-break: break-all;
white-space: wrap;
diff --git a/packages/app/src/components/Music/PlaylistView/header.jsx b/packages/app/src/components/Music/PlaylistView/header.jsx
index b24893c4..654e2848 100644
--- a/packages/app/src/components/Music/PlaylistView/header.jsx
+++ b/packages/app/src/components/Music/PlaylistView/header.jsx
@@ -16,6 +16,7 @@ const typeToKind = {
ep: "releases",
compilation: "releases",
playlist: "playlists",
+ single: "tracks",
}
const PlaylistHeader = ({
@@ -77,7 +78,6 @@ const PlaylistHeader = ({
- {playlist.service === "tidal" && }{" "}
{typeof playlist.title === "function" ? (
playlist.title()
) : (
@@ -86,19 +86,24 @@ const PlaylistHeader = ({
+ {playlist.service === "tidal" && (
+
+ )}
{PlaylistTypeDecorators[playlistType] && (
{PlaylistTypeDecorators[playlistType]()}
)}
-
{playlist.total_items}{" "}
Items
-
{playlist.total_duration > 0 && (
@@ -107,7 +112,6 @@ const PlaylistHeader = ({
)}
-
{playlist.publisher && (