@bash-app/bash-common 30.221.0 → 30.222.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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bash-app/bash-common",
3
- "version": "30.221.0",
3
+ "version": "30.222.0",
4
4
  "description": "Common data and scripts to use on the frontend and backend",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -830,6 +830,7 @@ model BashEvent {
830
830
  groupUnlockOffers GroupUnlockOffer[]
831
831
 
832
832
  bashEventArtists BashEventArtist[]
833
+ vanityPaths EventVanityPath[]
833
834
 
834
835
  @@index([templateId])
835
836
  @@index([parentEventId])
@@ -2208,6 +2209,10 @@ model User {
2208
2209
  // Groups
2209
2210
  ownedGroups EventGroup[] @relation("OwnedGroups")
2210
2211
  groupMembers GroupMember[] @relation("GroupMemberships")
2212
+
2213
+ // Vanity paths
2214
+ requestedVanityPaths EventVanityPath[] @relation("VanityRequests")
2215
+ approvedVanityPaths EventVanityPath[] @relation("VanityApprovals")
2211
2216
  }
2212
2217
 
2213
2218
  model UserPreferences {
@@ -7723,3 +7728,36 @@ model PartnerAdSlot {
7723
7728
  @@index([isActive, wizardStep])
7724
7729
  @@index([brandId])
7725
7730
  }
7731
+
7732
+ // ============================================
7733
+ // EVENT VANITY PATHS
7734
+ // ============================================
7735
+
7736
+ /// Approved short paths for flagship events: bash.community/bash/{segment}
7737
+ /// Pending rows are visible only to admins; only Active rows resolve publicly.
7738
+ model EventVanityPath {
7739
+ id String @id @default(cuid())
7740
+ /// Lowercase URL segment, e.g. "bashfest". No slashes. Globally unique.
7741
+ segment String @unique
7742
+ bashEventId String
7743
+ status VanityPathStatus @default(Pending)
7744
+ requestedById String?
7745
+ approvedById String?
7746
+ approvedAt DateTime?
7747
+ createdAt DateTime @default(now())
7748
+ updatedAt DateTime @updatedAt
7749
+
7750
+ bashEvent BashEvent @relation(fields: [bashEventId], references: [id], onDelete: Cascade)
7751
+ requestedBy User? @relation("VanityRequests", fields: [requestedById], references: [id], onDelete: SetNull)
7752
+ approvedBy User? @relation("VanityApprovals", fields: [approvedById], references: [id], onDelete: SetNull)
7753
+
7754
+ @@index([status])
7755
+ @@index([bashEventId])
7756
+ @@map("event_vanity_paths")
7757
+ }
7758
+
7759
+ enum VanityPathStatus {
7760
+ Pending
7761
+ Active
7762
+ Revoked
7763
+ }