From 657daa389f9a8fba224a300282eabda6d3447feb Mon Sep 17 00:00:00 2001 From: geoffrey45 Date: Fri, 8 Apr 2022 06:46:45 +0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=B7=20add=20Update=20playlist=20modal?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/PlaylistView/Header.vue | 67 +++++-- src/components/modal.vue | 10 +- src/components/modals/updatePlaylist.vue | 236 +++++++++++++++++++++++ src/stores/modal.ts | 14 +- src/stores/p.ptracks.ts | 3 + 5 files changed, 312 insertions(+), 18 deletions(-) create mode 100644 src/components/modals/updatePlaylist.vue diff --git a/src/components/PlaylistView/Header.vue b/src/components/PlaylistView/Header.vue index fd695b7..efa458f 100644 --- a/src/components/PlaylistView/Header.vue +++ b/src/components/PlaylistView/Header.vue @@ -1,12 +1,25 @@ @@ -26,23 +39,45 @@ diff --git a/src/components/modals/updatePlaylist.vue b/src/components/modals/updatePlaylist.vue new file mode 100644 index 0000000..349bcb3 --- /dev/null +++ b/src/components/modals/updatePlaylist.vue @@ -0,0 +1,236 @@ + + + + + diff --git a/src/stores/modal.ts b/src/stores/modal.ts index 2a4aa2f..3324816 100644 --- a/src/stores/modal.ts +++ b/src/stores/modal.ts @@ -1,8 +1,9 @@ import { defineStore } from "pinia"; -import { Track } from "../interfaces"; +import { Playlist, Track } from "../interfaces"; + enum ModalOptions { - newPlaylist, - editPlaylist, + newPlaylist = "newPlaylist", + updatePlaylist = "editPlaylist", } export default defineStore("newModal", { @@ -10,7 +11,7 @@ export default defineStore("newModal", { title: "", options: ModalOptions, component: "", - props: {}, + props: {}, visible: false, }), actions: { @@ -23,6 +24,11 @@ export default defineStore("newModal", { this.props.track = track; this.visible = true; }, + showEditPlaylistModal(playlist: Playlist) { + this.component = ModalOptions.updatePlaylist; + this.props = playlist; + this.visible = true; + }, hideModal() { this.visible = false; }, diff --git a/src/stores/p.ptracks.ts b/src/stores/p.ptracks.ts index 5c73d14..1ccda78 100644 --- a/src/stores/p.ptracks.ts +++ b/src/stores/p.ptracks.ts @@ -13,5 +13,8 @@ export default defineStore("playlist-tracks", { this.info = playlist.info; this.tracks = playlist.tracks; }, + updatePInfo(info: Playlist) { + this.info = info; + }, }, });