вложения, канальчики, бим-бим + бам-бам

This commit is contained in:
2026-04-25 00:51:12 +06:00
parent 0b75148a3f
commit ad477ee813
61 changed files with 14636 additions and 375 deletions

View File

@@ -1,11 +1,10 @@
datasource db {
provider = "sqlite"
url = env("DATABASE_URL")
}
generator client {
provider = "prisma-client-js"
// output = "./generated/client"
provider = "prisma-client"
output = "./generated-client"
}
model User {
@@ -18,6 +17,7 @@ model User {
Session Session[]
UserPreferences UserPreferences?
Messages Message[]
}
model Session {
@@ -25,16 +25,52 @@ model Session {
userId String
expiresAt DateTime
user User @relation(references: [id], fields: [userId], onDelete: Cascade)
user User @relation(references: [id], fields: [userId], onDelete: Cascade)
@@index([userId])
}
model UserPreferences {
userId String @id
userId String @id @unique
toggleInputHotkey String? @default("")
toggleOutputHotkey String? @default("")
volumes Json? @default("{}")
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
user User @relation(references: [id], fields: [userId], onDelete: Cascade)
}
model Attachment {
id String @id @default(uuid())
name String
mimetype String
size Int
createdAt DateTime @default(now())
message MessageAttachment[]
}
model Message {
id String @id @default(uuid())
text String
senderId String?
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt
sender User? @relation(references: [id], fields: [senderId], onDelete: SetNull)
attachments MessageAttachment[]
}
model MessageAttachment {
messageId String
attachmentId String
message Message @relation(fields: [messageId], references: [id])
attachment Attachment @relation(fields: [attachmentId], references: [id])
@@id([messageId, attachmentId])
}
model Channel {
id String @id @default(uuid())
name String
persistent Boolean
}