From d9e80ebef9754cb20b6378fe48d95b71365f4628 Mon Sep 17 00:00:00 2001 From: Balu Babu Date: Mon, 9 Jan 2023 12:15:21 +0530 Subject: [PATCH] feat: modified the prisma.schema file to add new tables for auth --- .../hoppscotch-backend/prisma/schema.prisma | 38 +++++++++++++++++-- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/packages/hoppscotch-backend/prisma/schema.prisma b/packages/hoppscotch-backend/prisma/schema.prisma index 947d158a8..cc22f509e 100644 --- a/packages/hoppscotch-backend/prisma/schema.prisma +++ b/packages/hoppscotch-backend/prisma/schema.prisma @@ -79,10 +79,40 @@ model TeamEnvironment { } model User { - uid String @id @default(cuid()) - displayName String? - email String? - photoURL String? + id String @id @default(cuid()) + name String? + email String? @unique + image String? + isAdmin Boolean @default(false) + refreshToken String? + accounts Account[] + createdOn DateTime @default(now()) @db.Timestamptz(3) + PasswordlessVerification PasswordlessVerification[] +} + +model Account { + id String @id @default(cuid()) + userId String + provider String + providerAccountId String + providerRefreshToken String? + providerAccessToken String? + providerScope String? + loggedIn DateTime @default(now()) @db.Timestamptz(3) + + user User @relation(fields: [userId], references: [id], onDelete: Cascade) + + @@unique(fields: [provider, providerAccountId], name: "verifyProviderAccount") +} + +model PasswordlessVerification { + deviceIdentifier String + token String @unique @default(cuid()) + userUid String + user User @relation(fields: [userUid], references: [id], onDelete: Cascade) + expiresOn DateTime @db.Timestamptz(3) + + @@unique(fields: [deviceIdentifier, token], name: "passwordless_deviceIdentifier_tokens") } enum TeamMemberRole {