1
0
Fork 0
freesewing/sites/backend/prisma/schema.prisma

107 lines
2.8 KiB
Text
Raw Normal View History

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())
createdAt DateTime @default(now())
expiresAt DateTime
name String @default("")
level Int @default(0)
secret String
user User @relation(fields: [userId], references: [id])
userId Int
}
model Confirmation {
id String @id @default(uuid())
createdAt DateTime @default(now())
data String
2022-10-31 17:54:49 +01:00
type String
2022-11-05 22:02:51 +01:00
user User @relation(fields: [userId], references: [id])
userId Int
}
model Subscriber {
id String @id @default(uuid())
createdAt DateTime @default(now())
data String
ehash String @unique
email String
updatedAt DateTime @updatedAt
}
model User {
2022-11-05 22:02:51 +01:00
id Int @id @default(autoincrement())
apikeys Apikey[]
bio String @default("")
confirmations Confirmation[]
2022-11-05 22:02:51 +01:00
consent Int @default(0)
2022-11-14 18:45:45 +01:00
control Int @default(1)
2022-11-05 22:02:51 +01:00
createdAt DateTime @default(now())
ehash String @unique
email String
github String @default("")
2022-11-05 22:02:51 +01:00
ihash String
2022-11-12 20:36:47 +01:00
img String?
2022-11-05 22:02:51 +01:00
initial String
imperial Boolean @default(false)
language String @default("en")
2022-11-05 22:02:51 +01:00
lastLogin DateTime?
lusername String @unique
2022-11-17 20:41:21 +01:00
mfaSecret String @default("")
mfaEnabled Boolean @default(false)
2022-11-05 22:02:51 +01:00
newsletter Boolean @default(false)
password String
patron Int @default(0)
patterns Pattern[]
people Person[]
2022-11-05 22:02:51 +01:00
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())
2022-11-14 18:45:45 +01:00
data String
design String
2022-11-12 20:36:47 +01:00
img String?
name String @default("")
notes String
person Person? @relation(fields: [personId], references: [id])
personId Int?
public Boolean @default(false)
settings String
user User @relation(fields: [userId], references: [id])
userId Int
updatedAt DateTime @updatedAt
@@index([userId, personId])
}
model Person {
id Int @id @default(autoincrement())
createdAt DateTime @default(now())
2022-11-12 20:36:47 +01:00
img String?
imperial Boolean @default(false)
2022-11-12 17:33:55 +01:00
name String @default("")
notes String @default("")
user User @relation(fields: [userId], references: [id])
userId Int
measies String @default("{}")
2022-11-19 18:11:28 +01:00
patterns Pattern[]
2022-11-12 17:33:55 +01:00
public Boolean @default(false)
2022-11-19 18:11:28 +01:00
updatedAt DateTime @updatedAt
@@index([userId])
}