CREATE TABLE "garment_wears" ( "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "family_id" uuid NOT NULL, "garment_id" uuid NOT NULL, "worn_on" date NOT NULL, "memory_id" uuid, "created_at" timestamp with time zone DEFAULT now() NOT NULL ); --> statement-breakpoint CREATE TABLE "garments" ( "id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "family_id" uuid NOT NULL, "child_id" uuid NOT NULL, "name" text, "category" text NOT NULL, "size_label" text NOT NULL, "colors" text[] DEFAULT '{}', "seasons" text[] DEFAULT '{}', "occasion_tags" text[] DEFAULT '{}', "image_key" text NOT NULL, "thumb_key" text NOT NULL, "status" text DEFAULT 'active' NOT NULL, "acquired_via" text, "gift_from" text, "vision_metadata" jsonb, "created_at" timestamp with time zone DEFAULT now() NOT NULL, "updated_at" timestamp with time zone DEFAULT now() NOT NULL ); --> statement-breakpoint ALTER TABLE "garment_wears" ADD CONSTRAINT "garment_wears_family_id_families_id_fk" FOREIGN KEY ("family_id") REFERENCES "public"."families"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint ALTER TABLE "garment_wears" ADD CONSTRAINT "garment_wears_garment_id_garments_id_fk" FOREIGN KEY ("garment_id") REFERENCES "public"."garments"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint ALTER TABLE "garment_wears" ADD CONSTRAINT "garment_wears_memory_id_memories_id_fk" FOREIGN KEY ("memory_id") REFERENCES "public"."memories"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint ALTER TABLE "garments" ADD CONSTRAINT "garments_family_id_families_id_fk" FOREIGN KEY ("family_id") REFERENCES "public"."families"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint ALTER TABLE "garments" ADD CONSTRAINT "garments_child_id_children_id_fk" FOREIGN KEY ("child_id") REFERENCES "public"."children"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint CREATE INDEX "garment_wears_garment_idx" ON "garment_wears" USING btree ("garment_id");--> statement-breakpoint CREATE INDEX "garment_wears_family_idx" ON "garment_wears" USING btree ("family_id");--> statement-breakpoint CREATE INDEX "garments_family_idx" ON "garments" USING btree ("family_id");--> statement-breakpoint CREATE INDEX "garments_child_idx" ON "garments" USING btree ("child_id");--> statement-breakpoint CREATE INDEX "garments_status_idx" ON "garments" USING btree ("status");