* feat: start of library backends * feat: update backend routes and create initializer * feat: add legacy library creation * fix: resolve frontend type errors * fix: runtime errors * fix: lint
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
model ApplicationSettings {
|
||||
timestamp DateTime @id @default(now())
|
||||
|
||||
metadataProviders String[]
|
||||
metadataProviders String[]
|
||||
|
||||
saveSlotCountLimit Int @default(5)
|
||||
saveSlotSizeLimit Float @default(10) // MB
|
||||
@@ -13,3 +13,17 @@ enum Platform {
|
||||
Linux @map("linux")
|
||||
macOS @map("macos")
|
||||
}
|
||||
|
||||
enum LibraryBackend {
|
||||
Filesystem
|
||||
}
|
||||
|
||||
model Library {
|
||||
id String @id @default(uuid())
|
||||
name String
|
||||
|
||||
backend LibraryBackend
|
||||
options Json
|
||||
|
||||
games Game[]
|
||||
}
|
||||
|
||||
@@ -29,8 +29,13 @@ model Game {
|
||||
mImageCarouselObjectIds String[] // linked to below array
|
||||
mImageLibraryObjectIds String[] // linked to objects in s3
|
||||
|
||||
versions GameVersion[]
|
||||
libraryBasePath String @unique // Base dir for all the game versions
|
||||
versions GameVersion[]
|
||||
|
||||
// These fields will not be optional in the next version
|
||||
// Any game without a library ID will be assigned one at startup, based on the defaults
|
||||
libraryId String?
|
||||
library Library? @relation(fields: [libraryId], references: [id])
|
||||
libraryPath String
|
||||
|
||||
collections CollectionEntry[]
|
||||
saves SaveSlot[]
|
||||
@@ -42,6 +47,7 @@ model Game {
|
||||
publishers Company[] @relation(name: "publishers")
|
||||
|
||||
@@unique([metadataSource, metadataId], name: "metadataKey")
|
||||
@@unique([libraryId, libraryPath], name: "libraryKey")
|
||||
}
|
||||
|
||||
model GameRating {
|
||||
|
||||
Reference in New Issue
Block a user