1+ CREATE TABLE "workflow_blocks " (
2+ " id" text PRIMARY KEY NOT NULL ,
3+ " workflow_id" text NOT NULL ,
4+ " type" text NOT NULL ,
5+ " name" text NOT NULL ,
6+ " position_x" integer NOT NULL ,
7+ " position_y" integer NOT NULL ,
8+ " enabled" boolean DEFAULT true NOT NULL ,
9+ " horizontal_handles" boolean DEFAULT true NOT NULL ,
10+ " is_wide" boolean DEFAULT false NOT NULL ,
11+ " height" integer DEFAULT 0 NOT NULL ,
12+ " sub_blocks" jsonb DEFAULT ' {}' NOT NULL ,
13+ " outputs" jsonb DEFAULT ' {}' NOT NULL ,
14+ " data" jsonb DEFAULT ' {}' ,
15+ " parent_id" text ,
16+ " extent" text ,
17+ " created_at" timestamp DEFAULT now() NOT NULL ,
18+ " updated_at" timestamp DEFAULT now() NOT NULL
19+ );
20+ -- > statement-breakpoint
21+ CREATE TABLE "workflow_edges " (
22+ " id" text PRIMARY KEY NOT NULL ,
23+ " workflow_id" text NOT NULL ,
24+ " source_block_id" text NOT NULL ,
25+ " target_block_id" text NOT NULL ,
26+ " source_handle" text ,
27+ " target_handle" text ,
28+ " created_at" timestamp DEFAULT now() NOT NULL
29+ );
30+ -- > statement-breakpoint
31+ CREATE TABLE "workflow_subflows " (
32+ " id" text PRIMARY KEY NOT NULL ,
33+ " workflow_id" text NOT NULL ,
34+ " type" text NOT NULL ,
35+ " config" jsonb DEFAULT ' {}' NOT NULL ,
36+ " created_at" timestamp DEFAULT now() NOT NULL ,
37+ " updated_at" timestamp DEFAULT now() NOT NULL
38+ );
39+ -- > statement-breakpoint
40+ ALTER TABLE " workflow_blocks" ADD CONSTRAINT " workflow_blocks_workflow_id_workflow_id_fk" FOREIGN KEY (" workflow_id" ) REFERENCES " public" ." workflow" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
41+ ALTER TABLE " workflow_blocks" ADD CONSTRAINT " workflow_blocks_parent_id_workflow_blocks_id_fk" FOREIGN KEY (" parent_id" ) REFERENCES " public" ." workflow_blocks" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
42+ ALTER TABLE " workflow_edges" ADD CONSTRAINT " workflow_edges_workflow_id_workflow_id_fk" FOREIGN KEY (" workflow_id" ) REFERENCES " public" ." workflow" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
43+ ALTER TABLE " workflow_edges" ADD CONSTRAINT " workflow_edges_source_block_id_workflow_blocks_id_fk" FOREIGN KEY (" source_block_id" ) REFERENCES " public" ." workflow_blocks" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
44+ ALTER TABLE " workflow_edges" ADD CONSTRAINT " workflow_edges_target_block_id_workflow_blocks_id_fk" FOREIGN KEY (" target_block_id" ) REFERENCES " public" ." workflow_blocks" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
45+ ALTER TABLE " workflow_subflows" ADD CONSTRAINT " workflow_subflows_workflow_id_workflow_id_fk" FOREIGN KEY (" workflow_id" ) REFERENCES " public" ." workflow" (" id" ) ON DELETE cascade ON UPDATE no action;-- > statement-breakpoint
46+ CREATE INDEX "workflow_blocks_workflow_id_idx " ON " workflow_blocks" USING btree (" workflow_id" );-- > statement-breakpoint
47+ CREATE INDEX "workflow_blocks_parent_id_idx " ON " workflow_blocks" USING btree (" parent_id" );-- > statement-breakpoint
48+ CREATE INDEX "workflow_blocks_workflow_parent_idx " ON " workflow_blocks" USING btree (" workflow_id" ," parent_id" );-- > statement-breakpoint
49+ CREATE INDEX "workflow_blocks_workflow_type_idx " ON " workflow_blocks" USING btree (" workflow_id" ," type" );-- > statement-breakpoint
50+ CREATE INDEX "workflow_edges_workflow_id_idx " ON " workflow_edges" USING btree (" workflow_id" );-- > statement-breakpoint
51+ CREATE INDEX "workflow_edges_source_block_idx " ON " workflow_edges" USING btree (" source_block_id" );-- > statement-breakpoint
52+ CREATE INDEX "workflow_edges_target_block_idx " ON " workflow_edges" USING btree (" target_block_id" );-- > statement-breakpoint
53+ CREATE INDEX "workflow_edges_workflow_source_idx " ON " workflow_edges" USING btree (" workflow_id" ," source_block_id" );-- > statement-breakpoint
54+ CREATE INDEX "workflow_edges_workflow_target_idx " ON " workflow_edges" USING btree (" workflow_id" ," target_block_id" );-- > statement-breakpoint
55+ CREATE INDEX "workflow_edges_source_block_fk_idx " ON " workflow_edges" USING btree (" source_block_id" );-- > statement-breakpoint
56+ CREATE INDEX "workflow_edges_target_block_fk_idx " ON " workflow_edges" USING btree (" target_block_id" );-- > statement-breakpoint
57+ CREATE INDEX "workflow_subflows_workflow_id_idx " ON " workflow_subflows" USING btree (" workflow_id" );-- > statement-breakpoint
58+ CREATE INDEX "workflow_subflows_workflow_type_idx " ON " workflow_subflows" USING btree (" workflow_id" ," type" );
0 commit comments