aboutsummaryrefslogtreecommitdiffstats
path: root/packages/db/prisma/schema.prisma
diff options
context:
space:
mode:
Diffstat (limited to 'packages/db/prisma/schema.prisma')
-rw-r--r--packages/db/prisma/schema.prisma129
1 files changed, 0 insertions, 129 deletions
diff --git a/packages/db/prisma/schema.prisma b/packages/db/prisma/schema.prisma
deleted file mode 100644
index 3b6063a3..00000000
--- a/packages/db/prisma/schema.prisma
+++ /dev/null
@@ -1,129 +0,0 @@
-// This is your Prisma schema file,
-// learn more about it in the docs: https://pris.ly/d/prisma-schema
-
-generator client {
- provider = "prisma-client-js"
-}
-
-datasource db {
- provider = "sqlite"
- url = env("DATABASE_URL")
-}
-
-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?
- password String?
- image String?
- accounts Account[]
- sessions Session[]
- tags BookmarkTags[]
- bookmarks Bookmark[]
- apiKeys ApiKey[]
-}
-
-model VerificationToken {
- identifier String
- token String @unique
- expires DateTime
-
- @@unique([identifier, token])
-}
-
-model ApiKey {
- id String @id @default(cuid())
- name String
- createdAt DateTime @default(now())
- keyId String @unique
- keyHash String
- userId String
- user User @relation(fields: [userId], references: [id], onDelete: Cascade)
-
- @@unique([name, userId])
-}
-
-model Bookmark {
- id String @id @default(cuid())
- createdAt DateTime @default(now())
- archived Boolean @default(false)
- favourited Boolean @default(false)
- userId String
-
- // Content relation
- link BookmarkedLink?
-
- // Other relations
- user User @relation(fields: [userId], references: [id], onDelete: Cascade)
- tags TagsOnBookmarks[]
-}
-
-model BookmarkedLink {
- id String @id
- url String
-
- // Crawled info
- title String?
- description String?
- imageUrl String?
- favicon String?
- crawledAt DateTime?
-
- // Relations
- parentBookmark Bookmark @relation(fields: [id], references: [id], onDelete: Cascade)
-}
-
-model BookmarkTags {
- id String @id @default(cuid())
- name String
- createdAt DateTime @default(now())
-
- userId String
-
- // Relations
- user User @relation(fields: [userId], references: [id], onDelete: Cascade)
- bookmarks TagsOnBookmarks[]
-
- @@unique([userId, name])
-}
-
-model TagsOnBookmarks {
- bookmark Bookmark @relation(fields: [bookmarkId], references: [id], onDelete: Cascade)
- bookmarkId String
-
- tag BookmarkTags @relation(fields: [tagId], references: [id], onDelete: Cascade)
- tagId String
-
- attachedAt DateTime @default(now())
- attachedBy String // "human" or "ai" (if only prisma sqlite supported enums)
-
- @@unique([bookmarkId, tagId])
-}