diff --git a/src/components/base/Header.astro b/src/components/base/Header.astro index 35300c1..02cff9f 100644 --- a/src/components/base/Header.astro +++ b/src/components/base/Header.astro @@ -18,10 +18,6 @@ const menu: MenuItem[] = [ name: 'Wiki', url: '/wiki/', }, - { - name: 'Songs', - url: '/songs/', - }, { name: 'Map', url: '/map/', diff --git a/src/content/config.ts b/src/content/config.ts index d9fa67b..cbd20d7 100644 --- a/src/content/config.ts +++ b/src/content/config.ts @@ -30,5 +30,10 @@ export const collections = { }) ) }) + }), + wiki: defineCollection({ + schema: z.object({ + title: z.string(), + }) }) } diff --git a/src/pages/songs/[circle].astro b/src/pages/songs/[circle].astro deleted file mode 100644 index 3e95e2c..0000000 --- a/src/pages/songs/[circle].astro +++ /dev/null @@ -1,37 +0,0 @@ ---- -import Base from "@layouts/Base.astro"; -import Grid from "@components/songs/AlbumGrid.astro"; -import Header from "@components/headers/Base.astro"; -import { CIRCLES } from "@utils/songs/data"; - - -export async function getStaticPaths() { - return Object.keys(CIRCLES) - .map(circle => ({ - params: { circle }, - props: { albums: CIRCLES[circle].albums } - })) -} - -interface Props { - albums: typeof CIRCLES[string]['albums']; -} - -const circle = Astro.params.circle!; -const albums = Astro.props.albums; -const items = Object.keys(albums) - .map(slug => ({ - title: albums[slug].title, - cover: albums[slug].cover, - url: `/songs/${circle}/${slug}/` - })) ---- - - -
-
-
- -
-
- diff --git a/src/pages/songs/[circle]/[cat].astro b/src/pages/songs/[circle]/[cat].astro deleted file mode 100644 index bd7f8a3..0000000 --- a/src/pages/songs/[circle]/[cat].astro +++ /dev/null @@ -1,55 +0,0 @@ ---- -import Base from "@layouts/Base.astro"; -import Header from '@components/headers/Base.astro'; -import { CollectionEntry, getCollection } from 'astro:content'; -import { ALBUMS, getAllCats, order } from "@utils/songs/data"; -import Info from "@components/songs/Info.astro"; - - -export async function getStaticPaths() { - const songs = await getCollection('songs'); - const cats = getAllCats(songs); - - return [...cats].map(cat => ({ - params: { circle: ALBUMS[cat].circle, cat }, - props: { - songs: songs - .filter(entry => cat in entry.data.album) - .sort(order(cat)) - .map(song => ({ - frontmatter: song.data, - slug: `/songs/${ALBUMS[cat].circle}/${cat}/${song.slug}/` - })) - } - })) -} - -interface Props { - songs: Array<{ - frontmatter: CollectionEntry<'songs'>['data'], - slug: string, - }> -} - -const cat = Astro.params.cat!; -const songs = Astro.props.songs; -const album = ALBUMS[cat]; ---- - - -
-
-
-
- {songs.map(song => [ - {song.frontmatter.album[cat].track} - {song.frontmatter.title} - ])} -
-
- - -
- diff --git a/src/pages/songs/[circle]/[cat]/[song].astro b/src/pages/songs/[circle]/[cat]/[song].astro index 2212ace..da3fdf3 100644 --- a/src/pages/songs/[circle]/[cat]/[song].astro +++ b/src/pages/songs/[circle]/[cat]/[song].astro @@ -8,13 +8,13 @@ import { ALBUMS } from "@utils/songs/data"; export async function getStaticPaths() { - return (await getCollection('songs')) + return []; /*(await getCollection('songs')) .map(song => Object.keys(song.data.album) .map(cat => ({ params: { circle: ALBUMS[cat].circle, cat, song: song.slug}, props: { song, cat } }))) - .flat() + .flat()*/ } diff --git a/src/pages/songs/index.astro b/src/pages/songs/index.astro deleted file mode 100644 index 6688e79..0000000 --- a/src/pages/songs/index.astro +++ /dev/null @@ -1,11 +0,0 @@ ---- -import List from "../../layouts/List.astro"; -import { CIRCLES } from "../../utils/songs/data"; - - -const pages = Object.keys(CIRCLES) - .map(slug => ({ title: CIRCLES[slug].name, slug: `/songs/${slug}/` })) - .sort((a, b) => a.title < b.title ? -1 : 1) ---- - -