From 3e4a8dd7dc544a36ab8f9dbc231c8b706da8549f Mon Sep 17 00:00:00 2001 From: geoffrey45 Date: Tue, 3 Jan 2023 22:03:16 +0300 Subject: [PATCH] + implement fav heart button in bottom bar + handle favoriting a song that's already in queue from another source --- src/assets/scss/Global/search-tabheaders.scss | 4 +-- src/components/BottomBar.vue | 28 ++++++++++++++----- src/components/shared/SongItem.vue | 2 +- src/composables/favoriteHandler.ts | 18 ++++++++---- src/composables/fetch/favorite.ts | 9 ++++++ src/config.ts | 1 + src/stores/queue.ts | 20 +++++++++++-- 7 files changed, 64 insertions(+), 18 deletions(-) diff --git a/src/assets/scss/Global/search-tabheaders.scss b/src/assets/scss/Global/search-tabheaders.scss index 7ee69fe0..e9c2feea 100644 --- a/src/assets/scss/Global/search-tabheaders.scss +++ b/src/assets/scss/Global/search-tabheaders.scss @@ -4,8 +4,8 @@ justify-content: space-around; margin: 1rem; width: max-content; - background: linear-gradient(37deg, $gray1, $gray2, $gray1); - height: 2rem; + background-color: $gray4; + height: 2.25rem; & > * { border-left: solid 1px $gray3; diff --git a/src/components/BottomBar.vue b/src/components/BottomBar.vue index 6f0e6656..77e177e4 100644 --- a/src/components/BottomBar.vue +++ b/src/components/BottomBar.vue @@ -18,7 +18,13 @@ alt="" /> - + +
@@ -72,10 +78,21 @@ import Progress from "@/components/LeftSidebar/NP/Progress.vue"; import ArtistName from "@/components/shared/ArtistName.vue"; import useQStore from "@/stores/queue"; -import HeartSvg from "@/assets/icons/heart.svg"; -// import PlusSvg from "@/assets/icons/plus.svg"; +import HeartSvg from "./shared/HeartSvg.vue"; // import PlusSvg from "@/assets/icons/plus.svg"; +import favoriteHandler from "@/composables/favoriteHandler"; +import { favType } from "@/composables/enums"; const queue = useQStore(); + +function handleFav() { + favoriteHandler( + queue.currenttrack?.is_favorite, + favType.track, + queue.currenttrack?.trackhash || "", + () => queue.toggleFav(queue.currentindex), + () => queue.toggleFav(queue.currentindex) + ); +}