167 lines
4.7 KiB
Text
167 lines
4.7 KiB
Text
generator client {
|
|
provider = "prisma-client-js"
|
|
binaryTargets = ["native", "debian-openssl-1.1.x"]
|
|
}
|
|
|
|
datasource db {
|
|
provider = "sqlite"
|
|
url = env("BACKEND_DB_URL")
|
|
}
|
|
|
|
model Apikey {
|
|
id String @id @default(uuid())
|
|
aud String @default("")
|
|
calls Int @default(0)
|
|
createdAt DateTime @default(now())
|
|
expiresAt DateTime
|
|
name String @default("")
|
|
lastSeen DateTime?
|
|
level Int @default(0)
|
|
secret String
|
|
user User @relation(fields: [userId], references: [id])
|
|
userId Int
|
|
}
|
|
|
|
model Bookmark {
|
|
id Int @id @default(autoincrement())
|
|
type String @default("")
|
|
title String @default("")
|
|
url String @default("")
|
|
user User @relation(fields: [userId], references: [id])
|
|
userId Int
|
|
}
|
|
|
|
model Confirmation {
|
|
id String @id @default(uuid())
|
|
createdAt DateTime @default(now())
|
|
data String
|
|
type String
|
|
user User? @relation(fields: [userId], references: [id])
|
|
userId Int?
|
|
}
|
|
|
|
model Subscriber {
|
|
id String @id @default(uuid())
|
|
active Boolean @default(false)
|
|
createdAt DateTime @default(now())
|
|
ehash String @unique
|
|
email String
|
|
language String @default("en")
|
|
updatedAt DateTime @updatedAt
|
|
}
|
|
|
|
model User {
|
|
id Int @id @default(autoincrement())
|
|
apikeys Apikey[]
|
|
bio String @default("")
|
|
bookmarks Bookmark[]
|
|
compare Boolean @default(true)
|
|
confirmations Confirmation[]
|
|
consent Int @default(0)
|
|
control Int @default(1)
|
|
createdAt DateTime @default(now())
|
|
data String
|
|
ehash String @unique
|
|
email String
|
|
ihash String
|
|
initial String
|
|
imperial Boolean @default(false)
|
|
jwtCalls Int @default(0)
|
|
keyCalls Int @default(0)
|
|
language String @default("en")
|
|
lastSeen DateTime?
|
|
lusername String @unique
|
|
mfaSecret String @default("")
|
|
mfaEnabled Boolean @default(false)
|
|
newsletter Boolean @default(false)
|
|
password String
|
|
patron Int @default(0)
|
|
patterns Pattern[]
|
|
sets Set[]
|
|
role String @default("user")
|
|
status Int @default(0)
|
|
updatedAt DateTime? @updatedAt
|
|
username String
|
|
@@index([ihash])
|
|
}
|
|
|
|
model Pattern {
|
|
id Int @id @default(autoincrement())
|
|
createdAt DateTime @default(now())
|
|
data String
|
|
design String
|
|
img String?
|
|
name String @default("")
|
|
notes String
|
|
public Boolean @default(false)
|
|
settings String
|
|
user User @relation(fields: [userId], references: [id])
|
|
userId Int
|
|
updatedAt DateTime @updatedAt
|
|
|
|
@@index([userId, design])
|
|
}
|
|
|
|
model Set {
|
|
id Int @id @default(autoincrement())
|
|
createdAt DateTime @default(now())
|
|
img String?
|
|
imperial Boolean @default(false)
|
|
name String @default("")
|
|
notes String @default("")
|
|
user User @relation(fields: [userId], references: [id])
|
|
userId Int
|
|
measies String @default("{}")
|
|
public Boolean @default(false)
|
|
updatedAt DateTime @updatedAt
|
|
|
|
@@index([userId])
|
|
}
|
|
|
|
model CuratedSet {
|
|
id Int @id @default(autoincrement())
|
|
createdAt DateTime @default(now())
|
|
height Int @default(1)
|
|
info String @default("")
|
|
nameDe String @default("")
|
|
nameEn String @default("")
|
|
nameEs String @default("")
|
|
nameFr String @default("")
|
|
nameNl String @default("")
|
|
nameUk String @default("")
|
|
notesDe String @default("")
|
|
notesEn String @default("")
|
|
notesEs String @default("")
|
|
notesFr String @default("")
|
|
notesNl String @default("")
|
|
notesUk String @default("")
|
|
tags String @default("{}")
|
|
measies String @default("[]")
|
|
updatedAt DateTime @updatedAt
|
|
published Boolean @default(false)
|
|
}
|
|
|
|
model OptionPack {
|
|
id Int @id @default(autoincrement())
|
|
createdAt DateTime @default(now())
|
|
design String @default("")
|
|
img String?
|
|
info String @default("")
|
|
nameDe String @default("")
|
|
nameEn String @default("")
|
|
nameEs String @default("")
|
|
nameFr String @default("")
|
|
nameNl String @default("")
|
|
nameUk String @default("")
|
|
notesDe String @default("")
|
|
notesEn String @default("")
|
|
notesEs String @default("")
|
|
notesFr String @default("")
|
|
notesNl String @default("")
|
|
notesUk String @default("")
|
|
tags String @default("[]")
|
|
options String @default("{}")
|
|
updatedAt DateTime @updatedAt
|
|
}
|
|
|
|
|