1+ CREATE TYPE "public "." credential_set_invitation_status" AS ENUM(' pending' , ' accepted' , ' expired' , ' cancelled' );-- > statement-breakpoint
2+ CREATE TYPE "public "." credential_set_member_status" AS ENUM(' active' , ' pending' , ' revoked' );-- > statement-breakpoint
3+ CREATE TABLE "credential_set " (
4+ " id" text PRIMARY KEY NOT NULL ,
5+ " organization_id" text NOT NULL ,
6+ " name" text NOT NULL ,
7+ " description" text ,
8+ " provider_id" text NOT NULL ,
9+ " created_by" text NOT NULL ,
10+ " created_at" timestamp DEFAULT now() NOT NULL ,
11+ " updated_at" timestamp DEFAULT now() NOT NULL
12+ );
13+ -- > statement-breakpoint
14+ CREATE TABLE "credential_set_invitation " (
15+ " id" text PRIMARY KEY NOT NULL ,
16+ " credential_set_id" text NOT NULL ,
17+ " email" text ,
18+ " token" text NOT NULL ,
19+ " invited_by" text NOT NULL ,
20+ " status" " credential_set_invitation_status" DEFAULT ' pending' NOT NULL ,
21+ " expires_at" timestamp NOT NULL ,
22+ " accepted_at" timestamp ,
23+ " accepted_by_user_id" text ,
24+ " created_at" timestamp DEFAULT now() NOT NULL ,
25+ CONSTRAINT " credential_set_invitation_token_unique" UNIQUE(" token" )
26+ );
27+ -- > statement-breakpoint
28+ CREATE TABLE "credential_set_member " (
29+ " id" text PRIMARY KEY NOT NULL ,
30+ " credential_set_id" text NOT NULL ,
31+ " user_id" text NOT NULL ,
32+ " status" " credential_set_member_status" DEFAULT ' pending' NOT NULL ,
33+ " joined_at" timestamp ,
34+ " invited_by" text ,
35+ " created_at" timestamp DEFAULT now() NOT NULL ,
36+ " updated_at" timestamp DEFAULT now() NOT NULL
37+ );
38+ -- > statement-breakpoint
39+ ALTER TABLE " webhook" ADD COLUMN " credential_set_id" text ;-- > statement-breakpoint
40+ ALTER TABLE " credential_set" ADD CONSTRAINT " credential_set_organization_id_organization_id_fk" FOREIGN KEY (" organization_id" ) REFERENCES " public" ." organization" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
41+ ALTER TABLE " credential_set" ADD CONSTRAINT " credential_set_created_by_user_id_fk" FOREIGN KEY (" created_by" ) REFERENCES " public" ." user" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
42+ ALTER TABLE " credential_set_invitation" ADD CONSTRAINT " credential_set_invitation_credential_set_id_credential_set_id_fk" FOREIGN KEY (" credential_set_id" ) REFERENCES " public" ." credential_set" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
43+ ALTER TABLE " credential_set_invitation" ADD CONSTRAINT " credential_set_invitation_invited_by_user_id_fk" FOREIGN KEY (" invited_by" ) REFERENCES " public" ." user" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
44+ ALTER TABLE " credential_set_invitation" ADD CONSTRAINT " credential_set_invitation_accepted_by_user_id_user_id_fk" FOREIGN KEY (" accepted_by_user_id" ) REFERENCES " public" ." user" (" id" ) ON DELETE set null ON UPDATE no action;-- > statement-breakpoint
45+ ALTER TABLE " credential_set_member" ADD CONSTRAINT " credential_set_member_credential_set_id_credential_set_id_fk" FOREIGN KEY (" credential_set_id" ) REFERENCES " public" ." credential_set" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
46+ ALTER TABLE " credential_set_member" ADD CONSTRAINT " credential_set_member_user_id_user_id_fk" FOREIGN KEY (" user_id" ) REFERENCES " public" ." user" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
47+ ALTER TABLE " credential_set_member" ADD CONSTRAINT " credential_set_member_invited_by_user_id_fk" FOREIGN KEY (" invited_by" ) REFERENCES " public" ." user" (" id" ) ON DELETE set null ON UPDATE no action;-- > statement-breakpoint
48+ CREATE INDEX "credential_set_organization_id_idx " ON " credential_set" USING btree (" organization_id" );-- > statement-breakpoint
49+ CREATE INDEX "credential_set_created_by_idx " ON " credential_set" USING btree (" created_by" );-- > statement-breakpoint
50+ CREATE UNIQUE INDEX "credential_set_org_name_unique " ON " credential_set" USING btree (" organization_id" ," name" );-- > statement-breakpoint
51+ CREATE INDEX "credential_set_provider_id_idx " ON " credential_set" USING btree (" provider_id" );-- > statement-breakpoint
52+ CREATE INDEX "credential_set_invitation_set_id_idx " ON " credential_set_invitation" USING btree (" credential_set_id" );-- > statement-breakpoint
53+ CREATE INDEX "credential_set_invitation_token_idx " ON " credential_set_invitation" USING btree (" token" );-- > statement-breakpoint
54+ CREATE INDEX "credential_set_invitation_status_idx " ON " credential_set_invitation" USING btree (" status" );-- > statement-breakpoint
55+ CREATE INDEX "credential_set_invitation_expires_at_idx " ON " credential_set_invitation" USING btree (" expires_at" );-- > statement-breakpoint
56+ CREATE INDEX "credential_set_member_set_id_idx " ON " credential_set_member" USING btree (" credential_set_id" );-- > statement-breakpoint
57+ CREATE INDEX "credential_set_member_user_id_idx " ON " credential_set_member" USING btree (" user_id" );-- > statement-breakpoint
58+ CREATE UNIQUE INDEX "credential_set_member_unique " ON " credential_set_member" USING btree (" credential_set_id" ," user_id" );-- > statement-breakpoint
59+ CREATE INDEX "credential_set_member_status_idx " ON " credential_set_member" USING btree (" status" );-- > statement-breakpoint
60+ ALTER TABLE " webhook" ADD CONSTRAINT " webhook_credential_set_id_credential_set_id_fk" FOREIGN KEY (" credential_set_id" ) REFERENCES " public" ." credential_set" (" id" ) ON DELETE set null ON UPDATE no action;-- > statement-breakpoint
61+ CREATE INDEX "webhook_credential_set_id_idx " ON " webhook" USING btree (" credential_set_id" );
0 commit comments