diff --git a/app/layouts/admin.vue b/app/layouts/admin.vue index fe3dcb0..5746e30 100644 --- a/app/layouts/admin.vue +++ b/app/layouts/admin.vue @@ -18,6 +18,15 @@

Manage

+
diff --git a/app/pages/admin/albums.vue b/app/pages/admin/albums.vue index 17ee0b0..8e75250 100644 --- a/app/pages/admin/albums.vue +++ b/app/pages/admin/albums.vue @@ -14,7 +14,7 @@ const tableRows: Row[] = [ name: "file", displayName: "Cover", type: "image", - imagePrefix: `${import.meta.env.VITE_PUBLIC_BACKEND}/static/`, + prefix: `${BACKEND_SERVE}/static/`, }, { name: "name", diff --git a/app/pages/admin/artists.vue b/app/pages/admin/artists.vue index dba835b..5af9242 100644 --- a/app/pages/admin/artists.vue +++ b/app/pages/admin/artists.vue @@ -14,7 +14,7 @@ const tableRows: Row[] = [ name: "file", displayName: "Cover", type: "image", - imagePrefix: `${import.meta.env.VITE_PUBLIC_BACKEND}/static/`, + prefix: `${BACKEND_SERVE}/static/`, }, { name: "name", diff --git a/app/pages/admin/index.vue b/app/pages/admin/index.vue index 773d3dd..e519b41 100644 --- a/app/pages/admin/index.vue +++ b/app/pages/admin/index.vue @@ -1 +1,3 @@ - + + + diff --git a/app/pages/admin/songs.vue b/app/pages/admin/songs.vue index 2a3c1dd..b441a8e 100644 --- a/app/pages/admin/songs.vue +++ b/app/pages/admin/songs.vue @@ -2,17 +2,29 @@ import type { Field } from "~/components/Admin/ModalForm.vue" import type { Row } from "~/ui/Table.vue" -const { data, status } = useApiFetch("/all/tracks") +const { data, refresh } = useApiFetch("/all/tracks") +const toast = useToast() const tableRows: Row[] = [ { name: "_id", displayName: "ID", }, + { + name: "fileDir", + displayName: "Audio File", + type: "audio", + prefix: `${BACKEND_SERVE}/static/`, + suffix: "/original.m4a", + }, { name: "name", displayName: "Name", }, + { + name: "album.name", + displayName: "Album", + }, { name: "action", }, @@ -20,28 +32,76 @@ const tableRows: Row[] = [ import { type Option } from "~/ui/SearchSelect.vue" -const options: Option[] = [ - { label: "A", value: "a" }, - { label: "B", value: "b" }, -] +const { data: artistData } = useApiFetch("/all/artists") +const artistFetchOptions = async (q?: string): Promise => { + return artistData.value.map