CREATE TYPE "public"."playoff_match_game_status" AS ENUM('scheduled', 'complete', 'postponed');--> statement-breakpoint DO $$ BEGIN IF NOT EXISTS ( SELECT 1 FROM pg_enum WHERE enumlabel = 'ucl_bracket' AND enumtypid = (SELECT oid FROM pg_type WHERE typname = 'simulator_type') ) THEN ALTER TYPE "public"."simulator_type" ADD VALUE 'ucl_bracket'; END IF; END $$;--> statement-breakpoint CREATE TABLE IF NOT EXISTS "playoff_match_games" ( "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "playoff_match_id" uuid NOT NULL, "game_number" integer NOT NULL, "scheduled_at" timestamp, "status" "playoff_match_game_status" DEFAULT 'scheduled' NOT NULL, "participant1_score" numeric(10, 2), "participant2_score" numeric(10, 2), "winner_id" uuid, "notes" text, "created_at" timestamp DEFAULT now() NOT NULL, "updated_at" timestamp DEFAULT now() NOT NULL ); --> statement-breakpoint CREATE TABLE IF NOT EXISTS "playoff_match_odds" ( "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "playoff_match_id" uuid NOT NULL, "participant_id" uuid NOT NULL, "moneyline_odds" integer, "implied_probability" numeric(6, 4), "odds_source" varchar(100), "recorded_at" timestamp DEFAULT now() NOT NULL, "created_at" timestamp DEFAULT now() NOT NULL, "updated_at" timestamp DEFAULT now() NOT NULL ); --> statement-breakpoint DO $$ BEGIN ALTER TABLE "playoff_match_games" ADD CONSTRAINT "playoff_match_games_playoff_match_id_playoff_matches_id_fk" FOREIGN KEY ("playoff_match_id") REFERENCES "public"."playoff_matches"("id") ON DELETE cascade ON UPDATE no action; EXCEPTION WHEN duplicate_object THEN null; END $$; --> statement-breakpoint DO $$ BEGIN ALTER TABLE "playoff_match_games" ADD CONSTRAINT "playoff_match_games_winner_id_participants_id_fk" FOREIGN KEY ("winner_id") REFERENCES "public"."participants"("id") ON DELETE set null ON UPDATE no action; EXCEPTION WHEN duplicate_object THEN null; END $$; --> statement-breakpoint DO $$ BEGIN ALTER TABLE "playoff_match_odds" ADD CONSTRAINT "playoff_match_odds_playoff_match_id_playoff_matches_id_fk" FOREIGN KEY ("playoff_match_id") REFERENCES "public"."playoff_matches"("id") ON DELETE cascade ON UPDATE no action; EXCEPTION WHEN duplicate_object THEN null; END $$; --> statement-breakpoint DO $$ BEGIN ALTER TABLE "playoff_match_odds" ADD CONSTRAINT "playoff_match_odds_participant_id_participants_id_fk" FOREIGN KEY ("participant_id") REFERENCES "public"."participants"("id") ON DELETE cascade ON UPDATE no action; EXCEPTION WHEN duplicate_object THEN null; END $$;