@danielcok17/prisma-db 1.7.0 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/prisma/app.prisma +33 -5
- package/prisma/generated/app/edge.js +21 -3
- package/prisma/generated/app/index-browser.js +18 -0
- package/prisma/generated/app/index.d.ts +2765 -300
- package/prisma/generated/app/index.js +21 -3
- package/prisma/generated/app/package.json +1 -1
- package/prisma/generated/app/schema.prisma +28 -0
- package/prisma/generated/app/wasm.js +21 -3
- package/prisma/migrations/20260113205726_add_organization_invite/migration.sql +40 -0
package/package.json
CHANGED
package/prisma/app.prisma
CHANGED
|
@@ -58,10 +58,11 @@ model User {
|
|
|
58
58
|
messageCountResetAt DateTime? // Kedy sa má resetovať message count
|
|
59
59
|
adminGrantExpiresAt DateTime? // Kedy admin grant expiruje
|
|
60
60
|
// Relations
|
|
61
|
-
approvalRequest
|
|
62
|
-
stripeCustomer
|
|
63
|
-
ownedOrganizations
|
|
64
|
-
organizationMembers
|
|
61
|
+
approvalRequest UserApprovalRequest?
|
|
62
|
+
stripeCustomer StripeCustomer? // ✨ B2C Stripe customer
|
|
63
|
+
ownedOrganizations Organization[] @relation("OrganizationOwner")
|
|
64
|
+
organizationMembers OrganizationMember[]
|
|
65
|
+
createdInvites OrganizationInvite[] @relation("InviteCreator")
|
|
65
66
|
accounts Account[]
|
|
66
67
|
answers Answer[]
|
|
67
68
|
conversations Conversation[]
|
|
@@ -125,9 +126,10 @@ model Organization {
|
|
|
125
126
|
maxMembers Int @default(5) // Max počet členov podľa tieru
|
|
126
127
|
|
|
127
128
|
// Relations
|
|
128
|
-
owner User
|
|
129
|
+
owner User @relation("OrganizationOwner", fields: [ownerId], references: [id])
|
|
129
130
|
ownerId String
|
|
130
131
|
members OrganizationMember[]
|
|
132
|
+
invites OrganizationInvite[]
|
|
131
133
|
stripeCustomer StripeCustomer?
|
|
132
134
|
|
|
133
135
|
createdAt DateTime @default(now())
|
|
@@ -157,6 +159,32 @@ model OrganizationMember {
|
|
|
157
159
|
@@index([role])
|
|
158
160
|
}
|
|
159
161
|
|
|
162
|
+
// Organization Invite System
|
|
163
|
+
model OrganizationInvite {
|
|
164
|
+
id String @id @default(cuid())
|
|
165
|
+
organizationId String
|
|
166
|
+
token String @unique
|
|
167
|
+
email String? // Optional: specific email invite
|
|
168
|
+
role MemberRole @default(MEMBER)
|
|
169
|
+
createdBy String
|
|
170
|
+
expiresAt DateTime
|
|
171
|
+
maxUses Int @default(1) // For multi-use invites
|
|
172
|
+
currentUses Int @default(0)
|
|
173
|
+
isActive Boolean @default(true)
|
|
174
|
+
usedAt DateTime? // Last usage timestamp
|
|
175
|
+
usedBy String? // Last user who used it
|
|
176
|
+
createdAt DateTime @default(now())
|
|
177
|
+
updatedAt DateTime @updatedAt
|
|
178
|
+
|
|
179
|
+
organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
|
|
180
|
+
creator User @relation("InviteCreator", fields: [createdBy], references: [id])
|
|
181
|
+
|
|
182
|
+
@@index([token])
|
|
183
|
+
@@index([organizationId])
|
|
184
|
+
@@index([isActive])
|
|
185
|
+
@@index([expiresAt])
|
|
186
|
+
}
|
|
187
|
+
|
|
160
188
|
enum MemberRole {
|
|
161
189
|
OWNER // Zakladateľ/vlastník, plný prístup k billing a settings
|
|
162
190
|
ADMIN // Administrátor, môže pridávať/odoberať členov
|