Files
multiverse/jumpa-iam/drizzle/migrations/0001_busy_puff_adder.sql
T

78 lines
3.1 KiB
SQL

CREATE TABLE "chat_broadcasts" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"tenant_id" uuid,
"sender_name" text NOT NULL,
"content" text NOT NULL,
"targets" text NOT NULL,
"scheduled_at" timestamp NOT NULL,
"is_sent" boolean DEFAULT false NOT NULL,
"created_at" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
CREATE TABLE "chat_statuses" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"tenant_id" uuid,
"sender" text NOT NULL,
"content" text NOT NULL,
"visibility" text DEFAULT 'tenant' NOT NULL,
"expires_at" timestamp NOT NULL,
"created_at" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
CREATE TABLE "guest_invites" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"room" text NOT NULL,
"host_id" text NOT NULL,
"pin" text NOT NULL,
"is_used" boolean DEFAULT false NOT NULL,
"created_at" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
CREATE TABLE "messages" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"room" text NOT NULL,
"sender" text NOT NULL,
"content" text NOT NULL,
"status" text DEFAULT 'sent' NOT NULL,
"is_edited" boolean DEFAULT false NOT NULL,
"created_at" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
CREATE TABLE "quantum_logs" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"actor" text NOT NULL,
"action" text NOT NULL,
"target_id" text NOT NULL,
"ip_address" text,
"user_agent" text,
"nano_timestamp" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
CREATE TABLE "saas_packages" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"name" text NOT NULL,
"price" text NOT NULL,
"features" text DEFAULT '["chat", "vc"]' NOT NULL,
"is_hidden" boolean DEFAULT false NOT NULL,
"is_active" boolean DEFAULT true NOT NULL,
"created_at" timestamp DEFAULT now() NOT NULL
);
--> statement-breakpoint
CREATE TABLE "system_features" (
"id" uuid PRIMARY KEY DEFAULT gen_random_uuid() NOT NULL,
"module" text DEFAULT 'IAM' NOT NULL,
"key" text NOT NULL,
"name" text NOT NULL,
"description" text,
"default_state" text DEFAULT 'UPSELL' NOT NULL,
"created_at" timestamp DEFAULT now() NOT NULL,
CONSTRAINT "system_features_key_unique" UNIQUE("key")
);
--> statement-breakpoint
ALTER TABLE "tenants" ADD COLUMN "licenses" text DEFAULT '["chat", "vc"]' NOT NULL;--> statement-breakpoint
ALTER TABLE "tenants" ADD COLUMN "allow_cross_group" boolean DEFAULT false NOT NULL;--> statement-breakpoint
ALTER TABLE "tenants" ADD COLUMN "brand_color" text DEFAULT '#00ff88';--> statement-breakpoint
ALTER TABLE "tenants" ADD COLUMN "platform_name" text DEFAULT 'JUMPA.ID';--> statement-breakpoint
ALTER TABLE "users" ADD COLUMN "licenses" text;--> statement-breakpoint
ALTER TABLE "chat_broadcasts" ADD CONSTRAINT "chat_broadcasts_tenant_id_tenants_id_fk" FOREIGN KEY ("tenant_id") REFERENCES "public"."tenants"("id") ON DELETE no action ON UPDATE no action;--> statement-breakpoint
ALTER TABLE "chat_statuses" ADD CONSTRAINT "chat_statuses_tenant_id_tenants_id_fk" FOREIGN KEY ("tenant_id") REFERENCES "public"."tenants"("id") ON DELETE no action ON UPDATE no action;