From cee363983ec22eabaf60d6f389f9375f41372031 Mon Sep 17 00:00:00 2001 From: myanzik Date: Tue, 15 Jul 2025 10:38:16 +0545 Subject: [PATCH] updated user schema --- prisma/schema.prisma | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/prisma/schema.prisma b/prisma/schema.prisma index e6fdb98..01e9bba 100755 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -20,7 +20,6 @@ model User { gender Gender @default(UNKNOWN) email String? phone String? - wallet String? extras Json? @db.JsonB() notes String? @db.Text() sessionId String? @@ -28,6 +27,7 @@ model User { Auth Auth[] UserRole UserRole[] Signup Signup[] + Wallets Wallet[] createdAt DateTime @default(now()) updatedAt DateTime? @updatedAt() @@ -45,6 +45,29 @@ enum Gender { UNKNOWN } +enum ChainType { + EVM // Ethereum, BSC, Polygon, etc. + SOLANA // Solana blockchain + STELLAR // Stellar blockchain + OTHER // For custom or unsupported chains +} + +model Wallet { + id Int @id @default(autoincrement()) + userId Int + address String + provider String? // Wallet provider (e.g., Rumsan, MetaMask, TrustWallet) - Optional + chainId String // Blockchain network identifier (e.g., "1" for Ethereum, "public" for Stellar) + chainType ChainType // Blockchain type (EVM, SOLANA, STELLAR) + createdAt DateTime @default(now()) + updatedAt DateTime? @updatedAt() + + User User @relation(fields: [userId], references: [id]) + + @@index([userId, chainId, chainType], name: "user_wallet_chainType_index") + @@map("tbl_wallets") +} + // ++++++++++++++++++ END: @rumsan/user - User +++++++++++++++++++++++++++++++ // ++++++++++++++++++ START: @rumsan/user - Role/Auth ++++++++++++++++++++++++