mirror of
https://github.com/hanzoai/dataroom.git
synced 2026-10-30 18:41:07 +00:00
47 lines
1.6 KiB
SQL
47 lines
1.6 KiB
SQL
-- CreateEnum
|
|
CREATE TYPE "CustomFieldType" AS ENUM ('SHORT_TEXT', 'LONG_TEXT', 'NUMBER', 'PHONE_NUMBER', 'URL', 'CHECKBOX', 'SELECT', 'MULTI_SELECT');
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "CustomField" (
|
|
"id" TEXT NOT NULL,
|
|
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" TIMESTAMP(3) NOT NULL,
|
|
"type" "CustomFieldType" NOT NULL,
|
|
"identifier" TEXT NOT NULL,
|
|
"label" TEXT NOT NULL,
|
|
"placeholder" TEXT,
|
|
"required" BOOLEAN NOT NULL DEFAULT false,
|
|
"disabled" BOOLEAN NOT NULL DEFAULT false,
|
|
"linkId" TEXT NOT NULL,
|
|
"orderIndex" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
CONSTRAINT "CustomField_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateTable
|
|
CREATE TABLE "CustomFieldResponse" (
|
|
"id" TEXT NOT NULL,
|
|
"data" JSONB NOT NULL,
|
|
"viewId" TEXT NOT NULL,
|
|
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
"updatedAt" TIMESTAMP(3) NOT NULL,
|
|
|
|
CONSTRAINT "CustomFieldResponse_pkey" PRIMARY KEY ("id")
|
|
);
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "CustomField_linkId_idx" ON "CustomField"("linkId");
|
|
|
|
-- CreateIndex
|
|
CREATE UNIQUE INDEX "CustomFieldResponse_viewId_key" ON "CustomFieldResponse"("viewId");
|
|
|
|
-- CreateIndex
|
|
CREATE INDEX "CustomFieldResponse_viewId_idx" ON "CustomFieldResponse"("viewId");
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "CustomField" ADD CONSTRAINT "CustomField_linkId_fkey" FOREIGN KEY ("linkId") REFERENCES "Link"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
|
|
-- AddForeignKey
|
|
ALTER TABLE "CustomFieldResponse" ADD CONSTRAINT "CustomFieldResponse_viewId_fkey" FOREIGN KEY ("viewId") REFERENCES "View"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
|
|