refactor(schema): rename per-window tables to season_* prefix
Renames participants, participant_expected_values, participant_qualifying_totals, participant_results, participant_surface_elos to season_* prefixed names. Renames event_results.participant_id to season_participant_id. Phase 1a of canonical tournament layer migration. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
28244c5f43
commit
66145a9d78
1 changed files with 90 additions and 90 deletions
|
|
@ -249,7 +249,7 @@ export const draftPicks = pgTable("draft_picks", {
|
||||||
.references(() => teams.id, { onDelete: "cascade" }),
|
.references(() => teams.id, { onDelete: "cascade" }),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
pickNumber: integer("pick_number").notNull(),
|
pickNumber: integer("pick_number").notNull(),
|
||||||
round: integer("round").notNull(),
|
round: integer("round").notNull(),
|
||||||
pickInRound: integer("pick_in_round").notNull(),
|
pickInRound: integer("pick_in_round").notNull(),
|
||||||
|
|
@ -272,7 +272,7 @@ export const draftQueue = pgTable("draft_queue", {
|
||||||
.references(() => teams.id, { onDelete: "cascade" }),
|
.references(() => teams.id, { onDelete: "cascade" }),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
queuePosition: integer("queue_position").notNull(),
|
queuePosition: integer("queue_position").notNull(),
|
||||||
createdAt: timestamp("created_at").defaultNow().notNull(),
|
createdAt: timestamp("created_at").defaultNow().notNull(),
|
||||||
updatedAt: timestamp("updated_at").defaultNow().notNull(),
|
updatedAt: timestamp("updated_at").defaultNow().notNull(),
|
||||||
|
|
@ -288,7 +288,7 @@ export const watchlist = pgTable("watchlist", {
|
||||||
.references(() => teams.id, { onDelete: "cascade" }),
|
.references(() => teams.id, { onDelete: "cascade" }),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
createdAt: timestamp("created_at").defaultNow().notNull(),
|
createdAt: timestamp("created_at").defaultNow().notNull(),
|
||||||
}, (t) => ({
|
}, (t) => ({
|
||||||
uniqueWatch: uniqueIndex("watchlist_season_team_participant_unique").on(t.seasonId, t.teamId, t.participantId),
|
uniqueWatch: uniqueIndex("watchlist_season_team_participant_unique").on(t.seasonId, t.teamId, t.participantId),
|
||||||
|
|
@ -373,7 +373,7 @@ export const sportsSeasons = pgTable("sports_seasons", {
|
||||||
updatedAt: timestamp("updated_at").defaultNow().notNull(),
|
updatedAt: timestamp("updated_at").defaultNow().notNull(),
|
||||||
});
|
});
|
||||||
|
|
||||||
export const participants = pgTable("participants", {
|
export const seasonParticipants = pgTable("season_participants", {
|
||||||
id: uuid("id").primaryKey().defaultRandom(),
|
id: uuid("id").primaryKey().defaultRandom(),
|
||||||
sportsSeasonId: uuid("sports_season_id")
|
sportsSeasonId: uuid("sports_season_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
|
|
@ -411,11 +411,11 @@ export const seasonSports = pgTable("season_sports", {
|
||||||
createdAt: timestamp("created_at").defaultNow().notNull(),
|
createdAt: timestamp("created_at").defaultNow().notNull(),
|
||||||
});
|
});
|
||||||
|
|
||||||
export const participantResults = pgTable("participant_results", {
|
export const seasonParticipantResults = pgTable("season_participant_results", {
|
||||||
id: uuid("id").primaryKey().defaultRandom(),
|
id: uuid("id").primaryKey().defaultRandom(),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
sportsSeasonId: uuid("sports_season_id")
|
sportsSeasonId: uuid("sports_season_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
||||||
|
|
@ -460,9 +460,9 @@ export const eventResults = pgTable("event_results", {
|
||||||
scoringEventId: uuid("scoring_event_id")
|
scoringEventId: uuid("scoring_event_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => scoringEvents.id, { onDelete: "cascade" }),
|
.references(() => scoringEvents.id, { onDelete: "cascade" }),
|
||||||
participantId: uuid("participant_id")
|
seasonParticipantId: uuid("season_participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
// Placement in this specific event
|
// Placement in this specific event
|
||||||
placement: integer("placement"),
|
placement: integer("placement"),
|
||||||
// For qualifying events: QP awarded in this event
|
// For qualifying events: QP awarded in this event
|
||||||
|
|
@ -483,10 +483,10 @@ export const playoffMatches = pgTable("playoff_matches", {
|
||||||
.references(() => scoringEvents.id, { onDelete: "cascade" }),
|
.references(() => scoringEvents.id, { onDelete: "cascade" }),
|
||||||
round: varchar("round", { length: 50 }).notNull(), // "Quarterfinals", "Semifinals", "Finals"
|
round: varchar("round", { length: 50 }).notNull(), // "Quarterfinals", "Semifinals", "Finals"
|
||||||
matchNumber: integer("match_number").notNull(), // 1, 2, 3, 4 (for QF); 1, 2 (for SF); 1 (for F)
|
matchNumber: integer("match_number").notNull(), // 1, 2, 3, 4 (for QF); 1, 2 (for SF); 1 (for F)
|
||||||
participant1Id: uuid("participant1_id").references(() => participants.id, { onDelete: "set null" }),
|
participant1Id: uuid("participant1_id").references(() => seasonParticipants.id, { onDelete: "set null" }),
|
||||||
participant2Id: uuid("participant2_id").references(() => participants.id, { onDelete: "set null" }),
|
participant2Id: uuid("participant2_id").references(() => seasonParticipants.id, { onDelete: "set null" }),
|
||||||
winnerId: uuid("winner_id").references(() => participants.id, { onDelete: "set null" }),
|
winnerId: uuid("winner_id").references(() => seasonParticipants.id, { onDelete: "set null" }),
|
||||||
loserId: uuid("loser_id").references(() => participants.id, { onDelete: "set null" }),
|
loserId: uuid("loser_id").references(() => seasonParticipants.id, { onDelete: "set null" }),
|
||||||
isComplete: boolean("is_complete").notNull().default(false),
|
isComplete: boolean("is_complete").notNull().default(false),
|
||||||
// Optional detailed data
|
// Optional detailed data
|
||||||
participant1Score: decimal("participant1_score", { precision: 10, scale: 2 }),
|
participant1Score: decimal("participant1_score", { precision: 10, scale: 2 }),
|
||||||
|
|
@ -510,7 +510,7 @@ export const playoffMatchGames = pgTable("playoff_match_games", {
|
||||||
status: playoffMatchGameStatusEnum("status").notNull().default("scheduled"),
|
status: playoffMatchGameStatusEnum("status").notNull().default("scheduled"),
|
||||||
participant1Score: decimal("participant1_score", { precision: 10, scale: 2 }),
|
participant1Score: decimal("participant1_score", { precision: 10, scale: 2 }),
|
||||||
participant2Score: decimal("participant2_score", { precision: 10, scale: 2 }),
|
participant2Score: decimal("participant2_score", { precision: 10, scale: 2 }),
|
||||||
winnerId: uuid("winner_id").references(() => participants.id, { onDelete: "set null" }),
|
winnerId: uuid("winner_id").references(() => seasonParticipants.id, { onDelete: "set null" }),
|
||||||
notes: text("notes"),
|
notes: text("notes"),
|
||||||
createdAt: timestamp("created_at").defaultNow().notNull(),
|
createdAt: timestamp("created_at").defaultNow().notNull(),
|
||||||
updatedAt: timestamp("updated_at").defaultNow().notNull(),
|
updatedAt: timestamp("updated_at").defaultNow().notNull(),
|
||||||
|
|
@ -524,7 +524,7 @@ export const playoffMatchOdds = pgTable("playoff_match_odds", {
|
||||||
.references(() => playoffMatches.id, { onDelete: "cascade" }),
|
.references(() => playoffMatches.id, { onDelete: "cascade" }),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
moneylineOdds: integer("moneyline_odds"), // American format e.g. -110, +150
|
moneylineOdds: integer("moneyline_odds"), // American format e.g. -110, +150
|
||||||
impliedProbability: decimal("implied_probability", { precision: 6, scale: 4 }),
|
impliedProbability: decimal("implied_probability", { precision: 6, scale: 4 }),
|
||||||
oddsSource: varchar("odds_source", { length: 100 }),
|
oddsSource: varchar("odds_source", { length: 100 }),
|
||||||
|
|
@ -534,11 +534,11 @@ export const playoffMatchOdds = pgTable("playoff_match_odds", {
|
||||||
});
|
});
|
||||||
|
|
||||||
// Aggregated participant qualifying points (for qualifying_points sports)
|
// Aggregated participant qualifying points (for qualifying_points sports)
|
||||||
export const participantQualifyingTotals = pgTable("participant_qualifying_totals", {
|
export const seasonParticipantQualifyingTotals = pgTable("season_participant_qualifying_totals", {
|
||||||
id: uuid("id").primaryKey().defaultRandom(),
|
id: uuid("id").primaryKey().defaultRandom(),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
sportsSeasonId: uuid("sports_season_id")
|
sportsSeasonId: uuid("sports_season_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
||||||
|
|
@ -639,11 +639,11 @@ export const teamStandingsSnapshots = pgTable("team_standings_snapshots", {
|
||||||
}));
|
}));
|
||||||
|
|
||||||
// Expected value tracking (sports-season-specific)
|
// Expected value tracking (sports-season-specific)
|
||||||
export const participantExpectedValues = pgTable("participant_expected_values", {
|
export const seasonParticipantExpectedValues = pgTable("season_participant_expected_values", {
|
||||||
id: uuid("id").primaryKey().defaultRandom(),
|
id: uuid("id").primaryKey().defaultRandom(),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
sportsSeasonId: uuid("sports_season_id")
|
sportsSeasonId: uuid("sports_season_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
||||||
|
|
@ -688,7 +688,7 @@ export const tournamentGroupMembers = pgTable("tournament_group_members", {
|
||||||
.references(() => tournamentGroups.id, { onDelete: "cascade" }),
|
.references(() => tournamentGroups.id, { onDelete: "cascade" }),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
eliminated: boolean("eliminated").notNull().default(false),
|
eliminated: boolean("eliminated").notNull().default(false),
|
||||||
createdAt: timestamp("created_at").defaultNow().notNull(),
|
createdAt: timestamp("created_at").defaultNow().notNull(),
|
||||||
updatedAt: timestamp("updated_at").defaultNow().notNull(),
|
updatedAt: timestamp("updated_at").defaultNow().notNull(),
|
||||||
|
|
@ -701,10 +701,10 @@ export const groupStageMatches = pgTable("group_stage_matches", {
|
||||||
.references(() => tournamentGroups.id, { onDelete: "cascade" }),
|
.references(() => tournamentGroups.id, { onDelete: "cascade" }),
|
||||||
participant1Id: uuid("participant1_id")
|
participant1Id: uuid("participant1_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id),
|
.references(() => seasonParticipants.id),
|
||||||
participant2Id: uuid("participant2_id")
|
participant2Id: uuid("participant2_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id),
|
.references(() => seasonParticipants.id),
|
||||||
participant1Score: integer("participant1_score"),
|
participant1Score: integer("participant1_score"),
|
||||||
participant2Score: integer("participant2_score"),
|
participant2Score: integer("participant2_score"),
|
||||||
isComplete: boolean("is_complete").notNull().default(false),
|
isComplete: boolean("is_complete").notNull().default(false),
|
||||||
|
|
@ -723,7 +723,7 @@ export const participantSeasonResults = pgTable("participant_season_results", {
|
||||||
id: uuid("id").primaryKey().defaultRandom(),
|
id: uuid("id").primaryKey().defaultRandom(),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
sportsSeasonId: uuid("sports_season_id")
|
sportsSeasonId: uuid("sports_season_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
||||||
|
|
@ -737,7 +737,7 @@ export const participantEvSnapshots = pgTable("participant_ev_snapshots", {
|
||||||
id: uuid("id").primaryKey().defaultRandom(),
|
id: uuid("id").primaryKey().defaultRandom(),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
sportsSeasonId: uuid("sports_season_id")
|
sportsSeasonId: uuid("sports_season_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
||||||
|
|
@ -790,20 +790,20 @@ export const sportsSeasonsRelations = relations(sportsSeasons, ({ one, many }) =
|
||||||
fields: [sportsSeasons.sportId],
|
fields: [sportsSeasons.sportId],
|
||||||
references: [sports.id],
|
references: [sports.id],
|
||||||
}),
|
}),
|
||||||
participants: many(participants),
|
participants: many(seasonParticipants),
|
||||||
seasonTemplateSports: many(seasonTemplateSports),
|
seasonTemplateSports: many(seasonTemplateSports),
|
||||||
seasonSports: many(seasonSports),
|
seasonSports: many(seasonSports),
|
||||||
participantResults: many(participantResults),
|
participantResults: many(seasonParticipantResults),
|
||||||
regularSeasonStandings: many(regularSeasonStandings),
|
regularSeasonStandings: many(regularSeasonStandings),
|
||||||
pendingStandingsMappings: many(pendingStandingsMappings),
|
pendingStandingsMappings: many(pendingStandingsMappings),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
export const participantsRelations = relations(participants, ({ one, many }) => ({
|
export const seasonParticipantsRelations = relations(seasonParticipants, ({ one, many }) => ({
|
||||||
sportsSeason: one(sportsSeasons, {
|
sportsSeason: one(sportsSeasons, {
|
||||||
fields: [participants.sportsSeasonId],
|
fields: [seasonParticipants.sportsSeasonId],
|
||||||
references: [sportsSeasons.id],
|
references: [sportsSeasons.id],
|
||||||
}),
|
}),
|
||||||
results: many(participantResults),
|
results: many(seasonParticipantResults),
|
||||||
regularSeasonStandings: many(regularSeasonStandings),
|
regularSeasonStandings: many(regularSeasonStandings),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
@ -847,13 +847,13 @@ export const seasonSportsRelations = relations(seasonSports, ({ one }) => ({
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
export const participantResultsRelations = relations(participantResults, ({ one }) => ({
|
export const seasonParticipantResultsRelations = relations(seasonParticipantResults, ({ one }) => ({
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [participantResults.participantId],
|
fields: [seasonParticipantResults.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
sportsSeason: one(sportsSeasons, {
|
sportsSeason: one(sportsSeasons, {
|
||||||
fields: [participantResults.sportsSeasonId],
|
fields: [seasonParticipantResults.sportsSeasonId],
|
||||||
references: [sportsSeasons.id],
|
references: [sportsSeasons.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
@ -889,9 +889,9 @@ export const draftPicksRelations = relations(draftPicks, ({ one }) => ({
|
||||||
fields: [draftPicks.teamId],
|
fields: [draftPicks.teamId],
|
||||||
references: [teams.id],
|
references: [teams.id],
|
||||||
}),
|
}),
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [draftPicks.participantId],
|
fields: [draftPicks.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
@ -904,9 +904,9 @@ export const draftQueueRelations = relations(draftQueue, ({ one }) => ({
|
||||||
fields: [draftQueue.teamId],
|
fields: [draftQueue.teamId],
|
||||||
references: [teams.id],
|
references: [teams.id],
|
||||||
}),
|
}),
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [draftQueue.participantId],
|
fields: [draftQueue.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
@ -919,9 +919,9 @@ export const watchlistRelations = relations(watchlist, ({ one }) => ({
|
||||||
fields: [watchlist.teamId],
|
fields: [watchlist.teamId],
|
||||||
references: [teams.id],
|
references: [teams.id],
|
||||||
}),
|
}),
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [watchlist.participantId],
|
fields: [watchlist.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
@ -954,9 +954,9 @@ export const eventResultsRelations = relations(eventResults, ({ one }) => ({
|
||||||
fields: [eventResults.scoringEventId],
|
fields: [eventResults.scoringEventId],
|
||||||
references: [scoringEvents.id],
|
references: [scoringEvents.id],
|
||||||
}),
|
}),
|
||||||
participant: one(participants, {
|
seasonParticipant: one(seasonParticipants, {
|
||||||
fields: [eventResults.participantId],
|
fields: [eventResults.seasonParticipantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
@ -965,21 +965,21 @@ export const playoffMatchesRelations = relations(playoffMatches, ({ one, many })
|
||||||
fields: [playoffMatches.scoringEventId],
|
fields: [playoffMatches.scoringEventId],
|
||||||
references: [scoringEvents.id],
|
references: [scoringEvents.id],
|
||||||
}),
|
}),
|
||||||
participant1: one(participants, {
|
participant1: one(seasonParticipants, {
|
||||||
fields: [playoffMatches.participant1Id],
|
fields: [playoffMatches.participant1Id],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
participant2: one(participants, {
|
participant2: one(seasonParticipants, {
|
||||||
fields: [playoffMatches.participant2Id],
|
fields: [playoffMatches.participant2Id],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
winner: one(participants, {
|
winner: one(seasonParticipants, {
|
||||||
fields: [playoffMatches.winnerId],
|
fields: [playoffMatches.winnerId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
loser: one(participants, {
|
loser: one(seasonParticipants, {
|
||||||
fields: [playoffMatches.loserId],
|
fields: [playoffMatches.loserId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
games: many(playoffMatchGames),
|
games: many(playoffMatchGames),
|
||||||
odds: many(playoffMatchOdds),
|
odds: many(playoffMatchOdds),
|
||||||
|
|
@ -990,9 +990,9 @@ export const playoffMatchGamesRelations = relations(playoffMatchGames, ({ one })
|
||||||
fields: [playoffMatchGames.playoffMatchId],
|
fields: [playoffMatchGames.playoffMatchId],
|
||||||
references: [playoffMatches.id],
|
references: [playoffMatches.id],
|
||||||
}),
|
}),
|
||||||
winner: one(participants, {
|
winner: one(seasonParticipants, {
|
||||||
fields: [playoffMatchGames.winnerId],
|
fields: [playoffMatchGames.winnerId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
@ -1001,19 +1001,19 @@ export const playoffMatchOddsRelations = relations(playoffMatchOdds, ({ one }) =
|
||||||
fields: [playoffMatchOdds.playoffMatchId],
|
fields: [playoffMatchOdds.playoffMatchId],
|
||||||
references: [playoffMatches.id],
|
references: [playoffMatches.id],
|
||||||
}),
|
}),
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [playoffMatchOdds.participantId],
|
fields: [playoffMatchOdds.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
export const participantQualifyingTotalsRelations = relations(participantQualifyingTotals, ({ one }) => ({
|
export const seasonParticipantQualifyingTotalsRelations = relations(seasonParticipantQualifyingTotals, ({ one }) => ({
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [participantQualifyingTotals.participantId],
|
fields: [seasonParticipantQualifyingTotals.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
sportsSeason: one(sportsSeasons, {
|
sportsSeason: one(sportsSeasons, {
|
||||||
fields: [participantQualifyingTotals.sportsSeasonId],
|
fields: [seasonParticipantQualifyingTotals.sportsSeasonId],
|
||||||
references: [sportsSeasons.id],
|
references: [sportsSeasons.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
@ -1058,21 +1058,21 @@ export const teamStandingsSnapshotsRelations = relations(teamStandingsSnapshots,
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
export const participantExpectedValuesRelations = relations(participantExpectedValues, ({ one }) => ({
|
export const seasonParticipantExpectedValuesRelations = relations(seasonParticipantExpectedValues, ({ one }) => ({
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [participantExpectedValues.participantId],
|
fields: [seasonParticipantExpectedValues.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
sportsSeason: one(sportsSeasons, {
|
sportsSeason: one(sportsSeasons, {
|
||||||
fields: [participantExpectedValues.sportsSeasonId],
|
fields: [seasonParticipantExpectedValues.sportsSeasonId],
|
||||||
references: [sportsSeasons.id],
|
references: [sportsSeasons.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
export const participantSeasonResultsRelations = relations(participantSeasonResults, ({ one }) => ({
|
export const participantSeasonResultsRelations = relations(participantSeasonResults, ({ one }) => ({
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [participantSeasonResults.participantId],
|
fields: [participantSeasonResults.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
sportsSeason: one(sportsSeasons, {
|
sportsSeason: one(sportsSeasons, {
|
||||||
fields: [participantSeasonResults.sportsSeasonId],
|
fields: [participantSeasonResults.sportsSeasonId],
|
||||||
|
|
@ -1095,9 +1095,9 @@ export const tournamentGroupMembersRelations = relations(tournamentGroupMembers,
|
||||||
fields: [tournamentGroupMembers.tournamentGroupId],
|
fields: [tournamentGroupMembers.tournamentGroupId],
|
||||||
references: [tournamentGroups.id],
|
references: [tournamentGroups.id],
|
||||||
}),
|
}),
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [tournamentGroupMembers.participantId],
|
fields: [tournamentGroupMembers.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
@ -1106,22 +1106,22 @@ export const groupStageMatchesRelations = relations(groupStageMatches, ({ one })
|
||||||
fields: [groupStageMatches.tournamentGroupId],
|
fields: [groupStageMatches.tournamentGroupId],
|
||||||
references: [tournamentGroups.id],
|
references: [tournamentGroups.id],
|
||||||
}),
|
}),
|
||||||
participant1: one(participants, {
|
participant1: one(seasonParticipants, {
|
||||||
fields: [groupStageMatches.participant1Id],
|
fields: [groupStageMatches.participant1Id],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
relationName: "groupMatchParticipant1",
|
relationName: "groupMatchParticipant1",
|
||||||
}),
|
}),
|
||||||
participant2: one(participants, {
|
participant2: one(seasonParticipants, {
|
||||||
fields: [groupStageMatches.participant2Id],
|
fields: [groupStageMatches.participant2Id],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
relationName: "groupMatchParticipant2",
|
relationName: "groupMatchParticipant2",
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
export const participantEvSnapshotsRelations = relations(participantEvSnapshots, ({ one }) => ({
|
export const participantEvSnapshotsRelations = relations(participantEvSnapshots, ({ one }) => ({
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [participantEvSnapshots.participantId],
|
fields: [participantEvSnapshots.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
sportsSeason: one(sportsSeasons, {
|
sportsSeason: one(sportsSeasons, {
|
||||||
fields: [participantEvSnapshots.sportsSeasonId],
|
fields: [participantEvSnapshots.sportsSeasonId],
|
||||||
|
|
@ -1146,7 +1146,7 @@ export const regularSeasonStandings = pgTable("regular_season_standings", {
|
||||||
id: uuid("id").primaryKey().defaultRandom(),
|
id: uuid("id").primaryKey().defaultRandom(),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
sportsSeasonId: uuid("sports_season_id")
|
sportsSeasonId: uuid("sports_season_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
||||||
|
|
@ -1177,9 +1177,9 @@ export const regularSeasonStandings = pgTable("regular_season_standings", {
|
||||||
}));
|
}));
|
||||||
|
|
||||||
export const regularSeasonStandingsRelations = relations(regularSeasonStandings, ({ one }) => ({
|
export const regularSeasonStandingsRelations = relations(regularSeasonStandings, ({ one }) => ({
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [regularSeasonStandings.participantId],
|
fields: [regularSeasonStandings.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
sportsSeason: one(sportsSeasons, {
|
sportsSeason: one(sportsSeasons, {
|
||||||
fields: [regularSeasonStandings.sportsSeasonId],
|
fields: [regularSeasonStandings.sportsSeasonId],
|
||||||
|
|
@ -1216,11 +1216,11 @@ export const pendingStandingsMappingsRelations = relations(pendingStandingsMappi
|
||||||
// Stores surface-specific Elo ratings for tennis (and future surface-based sports).
|
// Stores surface-specific Elo ratings for tennis (and future surface-based sports).
|
||||||
// One row per (participantId, sportsSeasonId); nullable per surface.
|
// One row per (participantId, sportsSeasonId); nullable per surface.
|
||||||
|
|
||||||
export const participantSurfaceElos = pgTable("participant_surface_elos", {
|
export const seasonParticipantSurfaceElos = pgTable("season_participant_surface_elos", {
|
||||||
id: uuid("id").primaryKey().defaultRandom(),
|
id: uuid("id").primaryKey().defaultRandom(),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
sportsSeasonId: uuid("sports_season_id")
|
sportsSeasonId: uuid("sports_season_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
||||||
|
|
@ -1234,13 +1234,13 @@ export const participantSurfaceElos = pgTable("participant_surface_elos", {
|
||||||
.on(t.participantId, t.sportsSeasonId),
|
.on(t.participantId, t.sportsSeasonId),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
export const participantSurfaceElosRelations = relations(participantSurfaceElos, ({ one }) => ({
|
export const seasonParticipantSurfaceElosRelations = relations(seasonParticipantSurfaceElos, ({ one }) => ({
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [participantSurfaceElos.participantId],
|
fields: [seasonParticipantSurfaceElos.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
sportsSeason: one(sportsSeasons, {
|
sportsSeason: one(sportsSeasons, {
|
||||||
fields: [participantSurfaceElos.sportsSeasonId],
|
fields: [seasonParticipantSurfaceElos.sportsSeasonId],
|
||||||
references: [sportsSeasons.id],
|
references: [sportsSeasons.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
@ -1255,7 +1255,7 @@ export const participantGolfSkills = pgTable("participant_golf_skills", {
|
||||||
id: uuid("id").primaryKey().defaultRandom(),
|
id: uuid("id").primaryKey().defaultRandom(),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
sportsSeasonId: uuid("sports_season_id")
|
sportsSeasonId: uuid("sports_season_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
.references(() => sportsSeasons.id, { onDelete: "cascade" }),
|
||||||
|
|
@ -1275,9 +1275,9 @@ export const participantGolfSkills = pgTable("participant_golf_skills", {
|
||||||
}));
|
}));
|
||||||
|
|
||||||
export const participantGolfSkillsRelations = relations(participantGolfSkills, ({ one }) => ({
|
export const participantGolfSkillsRelations = relations(participantGolfSkills, ({ one }) => ({
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [participantGolfSkills.participantId],
|
fields: [participantGolfSkills.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
sportsSeason: one(sportsSeasons, {
|
sportsSeason: one(sportsSeasons, {
|
||||||
fields: [participantGolfSkills.sportsSeasonId],
|
fields: [participantGolfSkills.sportsSeasonId],
|
||||||
|
|
@ -1302,7 +1302,7 @@ export const cs2MajorStageResults = pgTable("cs2_major_stage_results", {
|
||||||
.references(() => scoringEvents.id, { onDelete: "cascade" }),
|
.references(() => scoringEvents.id, { onDelete: "cascade" }),
|
||||||
participantId: uuid("participant_id")
|
participantId: uuid("participant_id")
|
||||||
.notNull()
|
.notNull()
|
||||||
.references(() => participants.id, { onDelete: "cascade" }),
|
.references(() => seasonParticipants.id, { onDelete: "cascade" }),
|
||||||
stageEntry: integer("stage_entry").notNull(),
|
stageEntry: integer("stage_entry").notNull(),
|
||||||
stageEliminated: integer("stage_eliminated"),
|
stageEliminated: integer("stage_eliminated"),
|
||||||
stageEliminatedWins: integer("stage_eliminated_wins"),
|
stageEliminatedWins: integer("stage_eliminated_wins"),
|
||||||
|
|
@ -1319,9 +1319,9 @@ export const cs2MajorStageResultsRelations = relations(cs2MajorStageResults, ({
|
||||||
fields: [cs2MajorStageResults.scoringEventId],
|
fields: [cs2MajorStageResults.scoringEventId],
|
||||||
references: [scoringEvents.id],
|
references: [scoringEvents.id],
|
||||||
}),
|
}),
|
||||||
participant: one(participants, {
|
participant: one(seasonParticipants, {
|
||||||
fields: [cs2MajorStageResults.participantId],
|
fields: [cs2MajorStageResults.participantId],
|
||||||
references: [participants.id],
|
references: [seasonParticipants.id],
|
||||||
}),
|
}),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue