CREATE TABLE "project_category" ( "category_id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "user_id" uuid, "category" text NOT NULL, "created_at" timestamp DEFAULT now(), "updated_at" timestamp DEFAULT now() ); --> statement-breakpoint CREATE TABLE "projects" ( "project_id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "userId" uuid, "category" uuid, "object" json, "name" text, "description" text, "is_public" boolean DEFAULT true NOT NULL, "preview_url" text, "created_at" timestamp DEFAULT now(), "updated_at" timestamp DEFAULT now() ); --> statement-breakpoint CREATE TABLE "shapes" ( "shape_id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "shapes" text NOT NULL, "created_at" timestamp DEFAULT now(), "updated_at" timestamp DEFAULT now() ); --> statement-breakpoint CREATE TABLE "uploads" ( "upload_id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "filename" text NOT NULL, "url" text NOT NULL, "projectId" uuid, "created_at" timestamp DEFAULT now(), "updated_at" timestamp DEFAULT now() ); --> statement-breakpoint CREATE TABLE "users" ( "user_id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL, "email" text NOT NULL, "name" text, "password" text NOT NULL, "is_active" boolean DEFAULT true NOT NULL, "is_verified" boolean DEFAULT false NOT NULL, "is_admin" boolean DEFAULT false NOT NULL, "refresh_token" text ); --> statement-breakpoint ALTER TABLE "project_category" ADD CONSTRAINT "project_category_user_id_users_user_id_fk" FOREIGN KEY ("user_id") REFERENCES "public"."users"("user_id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint ALTER TABLE "projects" ADD CONSTRAINT "projects_userId_users_user_id_fk" FOREIGN KEY ("userId") REFERENCES "public"."users"("user_id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint ALTER TABLE "projects" ADD CONSTRAINT "projects_category_project_category_category_id_fk" FOREIGN KEY ("category") REFERENCES "public"."project_category"("category_id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint ALTER TABLE "uploads" ADD CONSTRAINT "uploads_projectId_projects_project_id_fk" FOREIGN KEY ("projectId") REFERENCES "public"."projects"("project_id") ON DELETE no action ON UPDATE no action;