62 lines
1.2 KiB
Text
62 lines
1.2 KiB
Text
datasource db {
|
|
provider = "sqlite"
|
|
url = "file:dev.db"
|
|
}
|
|
|
|
generator client {
|
|
provider = "cargo prisma"
|
|
output = "../../crates/prisma/src/prisma"
|
|
module_path = "prisma"
|
|
client_format = "folder"
|
|
}
|
|
|
|
// todo: replace all `path` fields with a model with a checksum n shit
|
|
|
|
// represents a single minecraft instance
|
|
model Instance {
|
|
id Int @id @default(autoincrement())
|
|
name String?
|
|
path String?
|
|
hidden Boolean?
|
|
|
|
time_played DateTime
|
|
last_played DateTime
|
|
date_created DateTime
|
|
|
|
mods Mod[]
|
|
// java_instance JavaInstance
|
|
|
|
@@map("instance")
|
|
}
|
|
|
|
model JavaInstance {
|
|
id Int @id @default(autoincrement())
|
|
name String?
|
|
path String?
|
|
version String?
|
|
arch String?
|
|
|
|
/// @local
|
|
instance_id Int?
|
|
// instance Instance? @relation(fields: [instance_id], references: [id])
|
|
|
|
@@map("java_instance")
|
|
}
|
|
|
|
model Mod {
|
|
id Int @id @default(autoincrement())
|
|
|
|
name String?
|
|
path String?
|
|
enabled Boolean @default(true)
|
|
hidden Boolean?
|
|
date_added DateTime?
|
|
|
|
/// @local
|
|
instance_id Int?
|
|
instance Instance? @relation(fields: [instance_id], references: [id], onDelete: SetNull)
|
|
|
|
@@map("location")
|
|
}
|
|
|
|
// todo the rest of this shit loll
|