feat: add tags and links

This commit is contained in:
2026-02-04 19:49:27 -08:00
parent 9902c5ad45
commit b9f33bc055
21 changed files with 1873 additions and 31 deletions
+17
View File
@@ -13,6 +13,11 @@ datasource db {
url = env("DATABASE_URL")
}
type Link {
title String
url String
}
model Game {
id String @id @default(auto()) @map("_id") @db.ObjectId
title String
@@ -23,6 +28,8 @@ model Game {
rating Int? @db.Int @default(0)
notes String?
coverImage String?
tags String[]
links Link[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
comments Comment[]
@@ -45,6 +52,8 @@ model Book {
rating Int? @db.Int @default(0)
notes String?
coverImage String?
tags String[]
links Link[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
comments Comment[]
@@ -67,6 +76,8 @@ model Music {
rating Int? @db.Int @default(0)
notes String?
coverArt String?
tags String[]
links Link[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
comments Comment[]
@@ -90,6 +101,8 @@ model Art {
artist String
description String?
imageUrl String
tags String[]
links Link[]
dateAdded DateTime @default(now())
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
@@ -106,6 +119,8 @@ model Show {
rating Int? @db.Int @default(0)
notes String?
coverImage String?
tags String[]
links Link[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
comments Comment[]
@@ -134,6 +149,8 @@ model Manga {
rating Int? @db.Int @default(0)
notes String?
coverImage String?
tags String[]
links Link[]
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
comments Comment[]
+8
View File
@@ -23,6 +23,8 @@ export class ArtService {
return artPieces.map((art) => ({
...art,
description: art.description || undefined,
tags: art.tags ?? [],
links: art.links ?? [],
dateAdded: art.dateAdded,
createdAt: art.createdAt,
updatedAt: art.updatedAt,
@@ -42,6 +44,8 @@ export class ArtService {
return {
...art,
description: art.description || undefined,
tags: art.tags ?? [],
links: art.links ?? [],
dateAdded: art.dateAdded,
createdAt: art.createdAt,
updatedAt: art.updatedAt,
@@ -59,6 +63,8 @@ export class ArtService {
return {
...art,
description: art.description || undefined,
tags: art.tags ?? [],
links: art.links ?? [],
dateAdded: art.dateAdded,
createdAt: art.createdAt,
updatedAt: art.updatedAt,
@@ -77,6 +83,8 @@ export class ArtService {
return {
...art,
description: art.description || undefined,
tags: art.tags ?? [],
links: art.links ?? [],
dateAdded: art.dateAdded,
createdAt: art.createdAt,
updatedAt: art.updatedAt,
+8
View File
@@ -25,6 +25,8 @@ export class BookService {
status: book.status as unknown as BookStatus,
dateAdded: book.dateAdded,
dateFinished: book.dateFinished || undefined,
tags: book.tags ?? [],
links: book.links ?? [],
createdAt: book.createdAt,
updatedAt: book.updatedAt,
}));
@@ -45,6 +47,8 @@ export class BookService {
status: book.status as unknown as BookStatus,
dateAdded: book.dateAdded,
dateFinished: book.dateFinished || undefined,
tags: book.tags ?? [],
links: book.links ?? [],
createdAt: book.createdAt,
updatedAt: book.updatedAt,
};
@@ -66,6 +70,8 @@ export class BookService {
status: book.status as unknown as BookStatus,
dateAdded: book.dateAdded,
dateFinished: book.dateFinished || undefined,
tags: book.tags ?? [],
links: book.links ?? [],
createdAt: book.createdAt,
updatedAt: book.updatedAt,
};
@@ -90,6 +96,8 @@ export class BookService {
status: book.status as unknown as BookStatus,
dateAdded: book.dateAdded,
dateFinished: book.dateFinished || undefined,
tags: book.tags ?? [],
links: book.links ?? [],
createdAt: book.createdAt,
updatedAt: book.updatedAt,
};
+8
View File
@@ -25,6 +25,8 @@ export class GameService {
status: game.status as unknown as GameStatus,
dateAdded: game.dateAdded,
dateCompleted: game.dateCompleted || undefined,
tags: game.tags ?? [],
links: game.links ?? [],
createdAt: game.createdAt,
updatedAt: game.updatedAt,
}));
@@ -45,6 +47,8 @@ export class GameService {
status: game.status as unknown as GameStatus,
dateAdded: game.dateAdded,
dateCompleted: game.dateCompleted || undefined,
tags: game.tags ?? [],
links: game.links ?? [],
createdAt: game.createdAt,
updatedAt: game.updatedAt,
};
@@ -66,6 +70,8 @@ export class GameService {
status: game.status as unknown as GameStatus,
dateAdded: game.dateAdded,
dateCompleted: game.dateCompleted || undefined,
tags: game.tags ?? [],
links: game.links ?? [],
createdAt: game.createdAt,
updatedAt: game.updatedAt,
};
@@ -90,6 +96,8 @@ export class GameService {
status: game.status as unknown as GameStatus,
dateAdded: game.dateAdded,
dateCompleted: game.dateCompleted || undefined,
tags: game.tags ?? [],
links: game.links ?? [],
createdAt: game.createdAt,
updatedAt: game.updatedAt,
};
+8
View File
@@ -22,6 +22,8 @@ export class MangaService {
status: m.status as unknown as MangaStatus,
dateAdded: m.dateAdded,
dateCompleted: m.dateCompleted || undefined,
tags: m.tags ?? [],
links: m.links ?? [],
createdAt: m.createdAt,
updatedAt: m.updatedAt,
}));
@@ -39,6 +41,8 @@ export class MangaService {
status: manga.status as unknown as MangaStatus,
dateAdded: manga.dateAdded,
dateCompleted: manga.dateCompleted || undefined,
tags: manga.tags ?? [],
links: manga.links ?? [],
createdAt: manga.createdAt,
updatedAt: manga.updatedAt,
};
@@ -57,6 +61,8 @@ export class MangaService {
status: manga.status as unknown as MangaStatus,
dateAdded: manga.dateAdded,
dateCompleted: manga.dateCompleted || undefined,
tags: manga.tags ?? [],
links: manga.links ?? [],
createdAt: manga.createdAt,
updatedAt: manga.updatedAt,
};
@@ -78,6 +84,8 @@ export class MangaService {
status: manga.status as unknown as MangaStatus,
dateAdded: manga.dateAdded,
dateCompleted: manga.dateCompleted || undefined,
tags: manga.tags ?? [],
links: manga.links ?? [],
createdAt: manga.createdAt,
updatedAt: manga.updatedAt,
};
+8
View File
@@ -26,6 +26,8 @@ export class MusicService {
status: music.status as unknown as MusicStatus,
dateAdded: music.dateAdded,
dateCompleted: music.dateCompleted || undefined,
tags: music.tags ?? [],
links: music.links ?? [],
createdAt: music.createdAt,
updatedAt: music.updatedAt,
}));
@@ -47,6 +49,8 @@ export class MusicService {
status: music.status as unknown as MusicStatus,
dateAdded: music.dateAdded,
dateCompleted: music.dateCompleted || undefined,
tags: music.tags ?? [],
links: music.links ?? [],
createdAt: music.createdAt,
updatedAt: music.updatedAt,
};
@@ -70,6 +74,8 @@ export class MusicService {
status: music.status as unknown as MusicStatus,
dateAdded: music.dateAdded,
dateCompleted: music.dateCompleted || undefined,
tags: music.tags ?? [],
links: music.links ?? [],
createdAt: music.createdAt,
updatedAt: music.updatedAt,
};
@@ -98,6 +104,8 @@ export class MusicService {
status: music.status as unknown as MusicStatus,
dateAdded: music.dateAdded,
dateCompleted: music.dateCompleted || undefined,
tags: music.tags ?? [],
links: music.links ?? [],
createdAt: music.createdAt,
updatedAt: music.updatedAt,
};
+8
View File
@@ -23,6 +23,8 @@ export class ShowService {
status: show.status as unknown as ShowStatus,
dateAdded: show.dateAdded,
dateCompleted: show.dateCompleted || undefined,
tags: show.tags ?? [],
links: show.links ?? [],
createdAt: show.createdAt,
updatedAt: show.updatedAt,
}));
@@ -41,6 +43,8 @@ export class ShowService {
status: show.status as unknown as ShowStatus,
dateAdded: show.dateAdded,
dateCompleted: show.dateCompleted || undefined,
tags: show.tags ?? [],
links: show.links ?? [],
createdAt: show.createdAt,
updatedAt: show.updatedAt,
};
@@ -61,6 +65,8 @@ export class ShowService {
status: show.status as unknown as ShowStatus,
dateAdded: show.dateAdded,
dateCompleted: show.dateCompleted || undefined,
tags: show.tags ?? [],
links: show.links ?? [],
createdAt: show.createdAt,
updatedAt: show.updatedAt,
};
@@ -86,6 +92,8 @@ export class ShowService {
status: show.status as unknown as ShowStatus,
dateAdded: show.dateAdded,
dateCompleted: show.dateCompleted || undefined,
tags: show.tags ?? [],
links: show.links ?? [],
createdAt: show.createdAt,
updatedAt: show.updatedAt,
};