File size: 3,500 Bytes
60faa09 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 | datasource db {
provider = "sqlite"
}
generator client {
provider = "prisma-client-js"
}
model Account {
id String @id @default(cuid())
userId String
type String
provider String
providerAccountId String
refresh_token String?
access_token String?
expires_at Int?
token_type String?
scope String?
id_token String?
session_state String?
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
@@unique([provider, providerAccountId])
}
model Session {
id String @id @default(cuid())
sessionToken String @unique
userId String
expires DateTime
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
}
model User {
id String @id @default(cuid())
name String?
email String? @unique
emailVerified DateTime?
image String?
credits Int @default(50)
customApiKey String?
hfUsername String?
createdAt DateTime @default(now())
accounts Account[]
sessions Session[]
chats Chat[]
images UserImage[]
creations Creation[]
}
model UserImage {
id String @id @default(cuid())
userId String
url String
hfRepo String?
hfPath String?
createdAt DateTime @default(now())
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
@@index([userId])
}
model Character {
id String @id @default(cuid())
name String
avatar String
profileUrl String?
description String
personality String
systemPrompt String
greeting String
isCustom Boolean @default(true)
isPublic Boolean @default(true)
userId String?
createdAt DateTime @default(now())
chats Chat[]
@@index([isPublic])
@@index([userId])
}
model Chat {
id String @id @default(cuid())
characterId String
userId String
createdAt DateTime @default(now())
character Character @relation(fields: [characterId], references: [id], onDelete: Cascade)
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
messages Message[]
@@index([userId])
@@index([characterId])
}
model Message {
id String @id @default(cuid())
chatId String
role String
content String
imageUrl String?
model String?
promptTokens Int?
completionTokens Int?
createdAt DateTime @default(now())
chat Chat @relation(fields: [chatId], references: [id], onDelete: Cascade)
@@index([chatId])
}
model Creation {
id String @id @default(cuid())
prompt String?
imageUrl String?
aspectRatio String?
resolution String?
createdAt DateTime @default(now())
userId String
requestId String? @unique
status String @default("processing")
error String?
duration String?
inputImages String?
mode String?
modelId String?
title String?
type String?
url String?
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
}
model VerificationToken {
identifier String
token String @unique
expires DateTime
@@unique([identifier, token])
}
|