diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 94fd6e25..000ae7bc 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -1,162 +1,162 @@ -// 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 = "mysql" - url = env("DATABASE_URL") -} - -model Chat { - pkId Int @id @default(autoincrement()) - sessionId String @db.VarChar(128) - archived Boolean? - contactPrimaryIdentityKey Bytes? - conversationTimestamp BigInt? - createdAt BigInt? - createdBy String? @db.VarChar(128) - description String? @db.VarChar(255) - disappearingMode Json? - displayName String? @db.VarChar(128) - endOfHistoryTransfer Boolean? - endOfHistoryTransferType Int? - ephemeralExpiration Int? - ephemeralSettingTimestamp BigInt? - id String @db.VarChar(128) - isDefaultSubgroup Boolean? - isParentGroup Boolean? - lastMsgTimestamp BigInt? - lidJid String? @db.VarChar(128) - markedAsUnread Boolean? - mediaVisibility Int? - messages Json? - muteEndTime BigInt? - name String? @db.VarChar(128) - newJid String? @db.VarChar(128) - notSpam Boolean? - oldJid String? @db.VarChar(128) - pHash String? @db.VarChar(128) - parentGroupId String? @db.VarChar(128) - participant Json? - pinned Int? - pnJid String? @db.VarChar(128) - pnhDuplicateLidThread Boolean? - readOnly Boolean? - shareOwnPn Boolean? - support Boolean? - suspended Boolean? - tcToken Bytes? - tcTokenSenderTimestamp BigInt? - tcTokenTimestamp BigInt? - terminated Boolean? - unreadCount Int? - unreadMentionCount Int? - wallpaper Json? - lastMessageRecvTimestamp Int? - - @@unique([sessionId, id], map: "unique_id_per_session_id") - @@index([sessionId]) -} - -model Contact { - pkId Int @id @default(autoincrement()) - sessionId String @db.VarChar(128) - id String @db.VarChar(128) - name String? @db.VarChar(128) - notify String? @db.VarChar(128) - verifiedName String? @db.VarChar(128) - imgUrl String? @db.VarChar(255) - status String? @db.VarChar(128) - - @@unique([sessionId, id], map: "unique_id_per_session_id") - @@index([sessionId]) -} - -model GroupMetadata { - pkId Int @id @default(autoincrement()) - sessionId String @db.VarChar(128) - id String @db.VarChar(128) - owner String? @db.VarChar(128) - subject String @db.VarChar(128) - subjectOwner String? @db.VarChar(128) - subjectTime Int? - creation Int? - desc String? @db.VarChar(255) - descOwner String? @db.VarChar(128) - descId String? @db.VarChar(128) - restrict Boolean? - announce Boolean? - size Int? - participants Json - ephemeralDuration Int? - inviteCode String? @db.VarChar(255) - - @@unique([sessionId, id], map: "unique_id_per_session_id") - @@index([sessionId]) -} - -model Message { - pkId Int @id @default(autoincrement()) - sessionId String @db.VarChar(128) - remoteJid String @db.VarChar(128) - id String @db.VarChar(128) - agentId String? @db.VarChar(128) - bizPrivacyStatus Int? - broadcast Boolean? - clearMedia Boolean? - duration Int? - ephemeralDuration Int? - ephemeralOffToOn Boolean? - ephemeralOutOfSync Boolean? - ephemeralStartTimestamp BigInt? - finalLiveLocation Json? - futureproofData Bytes? - ignore Boolean? - keepInChat Json? - key Json - labels Json? - mediaCiphertextSha256 Bytes? - mediaData Json? - message Json? - messageC2STimestamp BigInt? - messageSecret Bytes? - messageStubParameters Json? - messageStubType Int? - messageTimestamp BigInt? - multicast Boolean? - originalSelfAuthorUserJidString String? @db.VarChar(128) - participant String? @db.VarChar(128) - paymentInfo Json? - photoChange Json? - pollAdditionalMetadata Json? - pollUpdates Json? - pushName String? @db.VarChar(128) - quotedPaymentInfo Json? - quotedStickerData Json? - reactions Json? - revokeMessageTimestamp BigInt? - starred Boolean? - status Int? - statusAlreadyViewed Boolean? - statusPsa Json? - urlNumber Boolean? - urlText Boolean? - userReceipt Json? - verifiedBizName String? @db.VarChar(128) - - @@unique([sessionId, remoteJid, id], map: "unique_message_key_per_session_id") - @@index([sessionId]) -} - -model Session { - pkId Int @id @default(autoincrement()) - sessionId String @db.VarChar(128) - id String @db.VarChar(255) - data String @db.Text - - @@unique([sessionId, id], map: "unique_id_per_session_id") - @@index([sessionId]) -} +// 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 = "mongodb" + url = env("DATABASE_URL") +} + +model Chat { + pkId String @id @default(auto()) @map("_id") @db.ObjectId + sessionId String @db.ObjectId + archived Boolean? + contactPrimaryIdentityKey Bytes? + conversationTimestamp BigInt? + createdAt BigInt? + createdBy String? @db.String + description String? @db.String + disappearingMode Json? + displayName String? @db.String + endOfHistoryTransfer Boolean? + endOfHistoryTransferType Int? + ephemeralExpiration Int? + ephemeralSettingTimestamp BigInt? + id String @db.ObjectId + isDefaultSubgroup Boolean? + isParentGroup Boolean? + lastMsgTimestamp BigInt? + lidJid String? @db.String + markedAsUnread Boolean? + mediaVisibility Int? + messages Json? + muteEndTime BigInt? + name String? @db.String + newJid String? @db.String + notSpam Boolean? + oldJid String? @db.String + pHash String? @db.String + parentGroupId String? @db.String + participant Json? + pinned Int? + pnJid String? @db.String + pnhDuplicateLidThread Boolean? + readOnly Boolean? + shareOwnPn Boolean? + support Boolean? + suspended Boolean? + tcToken Bytes? + tcTokenSenderTimestamp BigInt? + tcTokenTimestamp BigInt? + terminated Boolean? + unreadCount Int? + unreadMentionCount Int? + wallpaper Json? + lastMessageRecvTimestamp Int? + + @@unique([sessionId, id], map: "unique_id_per_session_id") + @@index([sessionId]) +} + +model Contact { + pkId String @id @default(auto()) @map("_id") @db.ObjectId + sessionId String @db.ObjectId + id String @db.String + name String? @db.String + notify String? @db.String + verifiedName String? @db.String + imgUrl String? @db.String + status String? @db.String + + @@unique([sessionId, id], map: "unique_id_per_session_id") + @@index([sessionId]) +} + +model GroupMetadata { + pkId String @id @default(auto()) @map("_id") @db.ObjectId + sessionId String @db.ObjectId + id String @db.String + owner String? @db.String + subject String @db.String + subjectOwner String? @db.String + subjectTime Int? + creation Int? + desc String? @db.String + descOwner String? @db.String + descId String? @db.String + restrict Boolean? + announce Boolean? + size Int? + participants Json + ephemeralDuration Int? + inviteCode String? @db.String + + @@unique([sessionId, id], map: "unique_id_per_session_id") + @@index([sessionId]) +} + +model Message { + pkId String @id @default(auto()) @map("_id") @db.ObjectId + sessionId String @db.ObjectId + remoteJid String @db.String + id String @db.String + agentId String? @db.ObjectId + bizPrivacyStatus Int? + broadcast Boolean? + clearMedia Boolean? + duration Int? + ephemeralDuration Int? + ephemeralOffToOn Boolean? + ephemeralOutOfSync Boolean? + ephemeralStartTimestamp BigInt? + finalLiveLocation Json? + futureproofData Bytes? + ignore Boolean? + keepInChat Json? + key Json + labels Json? + mediaCiphertextSha256 Bytes? + mediaData Json? + message Json? + messageC2STimestamp BigInt? + messageSecret Bytes? + messageStubParameters Json? + messageStubType Int? + messageTimestamp BigInt? + multicast Boolean? + originalSelfAuthorUserJidString String? @db.String + participant String? @db.String + paymentInfo Json? + photoChange Json? + pollAdditionalMetadata Json? + pollUpdates Json? + pushName String? @db.String + quotedPaymentInfo Json? + quotedStickerData Json? + reactions Json? + revokeMessageTimestamp BigInt? + starred Boolean? + status Int? + statusAlreadyViewed Boolean? + statusPsa Json? + urlNumber Boolean? + urlText Boolean? + userReceipt Json? + verifiedBizName String? @db.String + + @@unique([sessionId, remoteJid, id], map: "unique_message_key_per_session_id") + @@index([sessionId]) +} + +model Session { + pkId String @id @default(auto()) @map("_id") @db.ObjectId + sessionId String @db.ObjectId + id String @db.String + data String @db.String + + @@unique([sessionId, id], map: "unique_id_per_session_id") + @@index([sessionId]) +}