♻️ Re-organize workspace folders
This commit is contained in:
@ -0,0 +1,201 @@
|
||||
-- CreateEnum
|
||||
CREATE TYPE "Plan" AS ENUM ('FREE', 'PRO', 'LIFETIME', 'OFFERED');
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Account" (
|
||||
"id" TEXT NOT NULL,
|
||||
"userId" TEXT NOT NULL,
|
||||
"type" TEXT NOT NULL,
|
||||
"provider" TEXT NOT NULL,
|
||||
"providerAccountId" TEXT NOT NULL,
|
||||
"refresh_token" TEXT,
|
||||
"access_token" TEXT,
|
||||
"expires_at" INTEGER,
|
||||
"token_type" TEXT,
|
||||
"scope" TEXT,
|
||||
"id_token" TEXT,
|
||||
"session_state" TEXT,
|
||||
"oauth_token_secret" TEXT,
|
||||
"oauth_token" TEXT,
|
||||
"refresh_token_expires_in" INTEGER,
|
||||
|
||||
CONSTRAINT "Account_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Session" (
|
||||
"id" TEXT NOT NULL,
|
||||
"sessionToken" TEXT NOT NULL,
|
||||
"userId" TEXT NOT NULL,
|
||||
"expires" TIMESTAMP(3) NOT NULL,
|
||||
|
||||
CONSTRAINT "Session_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "User" (
|
||||
"id" TEXT NOT NULL,
|
||||
"name" TEXT,
|
||||
"email" TEXT,
|
||||
"emailVerified" TIMESTAMP(3),
|
||||
"image" TEXT,
|
||||
"plan" "Plan" NOT NULL DEFAULT E'FREE',
|
||||
"stripeId" TEXT,
|
||||
|
||||
CONSTRAINT "User_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Credentials" (
|
||||
"id" TEXT NOT NULL,
|
||||
"ownerId" TEXT NOT NULL,
|
||||
"data" TEXT NOT NULL,
|
||||
"name" TEXT NOT NULL,
|
||||
"type" TEXT NOT NULL,
|
||||
"iv" TEXT NOT NULL,
|
||||
|
||||
CONSTRAINT "Credentials_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "VerificationToken" (
|
||||
"identifier" TEXT NOT NULL,
|
||||
"token" TEXT NOT NULL,
|
||||
"expires" TIMESTAMP(3) NOT NULL
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "DashboardFolder" (
|
||||
"id" TEXT NOT NULL,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"name" TEXT NOT NULL,
|
||||
"ownerId" TEXT NOT NULL,
|
||||
"parentFolderId" TEXT,
|
||||
|
||||
CONSTRAINT "DashboardFolder_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Typebot" (
|
||||
"id" TEXT NOT NULL,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"name" TEXT NOT NULL,
|
||||
"ownerId" TEXT NOT NULL,
|
||||
"publishedTypebotId" TEXT,
|
||||
"folderId" TEXT,
|
||||
"blocks" JSONB[],
|
||||
"variables" JSONB[],
|
||||
"edges" JSONB[],
|
||||
"theme" JSONB NOT NULL,
|
||||
"settings" JSONB NOT NULL,
|
||||
"publicId" TEXT,
|
||||
|
||||
CONSTRAINT "Typebot_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "PublicTypebot" (
|
||||
"id" TEXT NOT NULL,
|
||||
"typebotId" TEXT NOT NULL,
|
||||
"name" TEXT NOT NULL,
|
||||
"blocks" JSONB[],
|
||||
"variables" JSONB[],
|
||||
"edges" JSONB[],
|
||||
"theme" JSONB NOT NULL,
|
||||
"settings" JSONB NOT NULL,
|
||||
"publicId" TEXT,
|
||||
|
||||
CONSTRAINT "PublicTypebot_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Result" (
|
||||
"id" TEXT NOT NULL,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"typebotId" TEXT NOT NULL,
|
||||
"isCompleted" BOOLEAN NOT NULL,
|
||||
|
||||
CONSTRAINT "Result_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Answer" (
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"resultId" TEXT NOT NULL,
|
||||
"stepId" TEXT NOT NULL,
|
||||
"blockId" TEXT NOT NULL,
|
||||
"content" TEXT NOT NULL
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Coupon" (
|
||||
"userPropertiesToUpdate" JSONB NOT NULL,
|
||||
"code" TEXT NOT NULL,
|
||||
"dateRedeemed" TIMESTAMP(3),
|
||||
|
||||
CONSTRAINT "Coupon_pkey" PRIMARY KEY ("code")
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Account_provider_providerAccountId_key" ON "Account"("provider", "providerAccountId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Session_sessionToken_key" ON "Session"("sessionToken");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "User_email_key" ON "User"("email");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "User_stripeId_key" ON "User"("stripeId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Credentials_name_type_ownerId_key" ON "Credentials"("name", "type", "ownerId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "VerificationToken_token_key" ON "VerificationToken"("token");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "VerificationToken_identifier_token_key" ON "VerificationToken"("identifier", "token");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Typebot_publicId_key" ON "Typebot"("publicId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "PublicTypebot_typebotId_key" ON "PublicTypebot"("typebotId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "PublicTypebot_publicId_key" ON "PublicTypebot"("publicId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Answer_resultId_blockId_stepId_key" ON "Answer"("resultId", "blockId", "stepId");
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Account" ADD CONSTRAINT "Account_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Session" ADD CONSTRAINT "Session_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Credentials" ADD CONSTRAINT "Credentials_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "DashboardFolder" ADD CONSTRAINT "DashboardFolder_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "DashboardFolder" ADD CONSTRAINT "DashboardFolder_parentFolderId_fkey" FOREIGN KEY ("parentFolderId") REFERENCES "DashboardFolder"("id") ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Typebot" ADD CONSTRAINT "Typebot_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Typebot" ADD CONSTRAINT "Typebot_folderId_fkey" FOREIGN KEY ("folderId") REFERENCES "DashboardFolder"("id") ON DELETE SET NULL ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "PublicTypebot" ADD CONSTRAINT "PublicTypebot_typebotId_fkey" FOREIGN KEY ("typebotId") REFERENCES "Typebot"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Result" ADD CONSTRAINT "Result_typebotId_fkey" FOREIGN KEY ("typebotId") REFERENCES "Typebot"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Answer" ADD CONSTRAINT "Answer_resultId_fkey" FOREIGN KEY ("resultId") REFERENCES "Result"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
@ -0,0 +1,5 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "Answer" ADD COLUMN "variableId" TEXT;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Result" ADD COLUMN "prefilledVariables" JSONB[];
|
@ -0,0 +1,30 @@
|
||||
/*
|
||||
Warnings:
|
||||
|
||||
- A unique constraint covering the columns `[customDomain]` on the table `PublicTypebot` will be added. If there are existing duplicate values, this will fail.
|
||||
- A unique constraint covering the columns `[customDomain]` on the table `Typebot` will be added. If there are existing duplicate values, this will fail.
|
||||
|
||||
*/
|
||||
-- AlterTable
|
||||
ALTER TABLE "PublicTypebot" ADD COLUMN "customDomain" TEXT;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Typebot" ADD COLUMN "customDomain" TEXT;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "CustomDomain" (
|
||||
"ownerId" TEXT NOT NULL,
|
||||
"name" TEXT NOT NULL
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "CustomDomain_name_key" ON "CustomDomain"("name");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "PublicTypebot_customDomain_key" ON "PublicTypebot"("customDomain");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Typebot_customDomain_key" ON "Typebot"("customDomain");
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "CustomDomain" ADD CONSTRAINT "CustomDomain_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
@ -0,0 +1,16 @@
|
||||
/*
|
||||
Warnings:
|
||||
|
||||
- A unique constraint covering the columns `[code]` on the table `Coupon` will be added. If there are existing duplicate values, this will fail.
|
||||
- A unique constraint covering the columns `[id,ownerId]` on the table `DashboardFolder` will be added. If there are existing duplicate values, this will fail.
|
||||
- A unique constraint covering the columns `[id,ownerId]` on the table `Typebot` will be added. If there are existing duplicate values, this will fail.
|
||||
|
||||
*/
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Coupon_code_key" ON "Coupon"("code");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "DashboardFolder_id_ownerId_key" ON "DashboardFolder"("id", "ownerId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Typebot_id_ownerId_key" ON "Typebot"("id", "ownerId");
|
@ -0,0 +1,2 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "User" ADD COLUMN "apiToken" TEXT;
|
@ -0,0 +1,9 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "DashboardFolder" ADD COLUMN "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "PublicTypebot" ADD COLUMN "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
ADD COLUMN "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Result" ADD COLUMN "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
@ -0,0 +1,31 @@
|
||||
-- CreateEnum
|
||||
CREATE TYPE "CollaborationType" AS ENUM ('READ', 'WRITE');
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Invitation" (
|
||||
"email" TEXT NOT NULL,
|
||||
"typebotId" TEXT NOT NULL,
|
||||
"type" "CollaborationType" NOT NULL
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "CollaboratorsOnTypebots" (
|
||||
"userId" TEXT NOT NULL,
|
||||
"typebotId" TEXT NOT NULL,
|
||||
"type" "CollaborationType" NOT NULL
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Invitation_email_typebotId_key" ON "Invitation"("email", "typebotId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "CollaboratorsOnTypebots_userId_typebotId_key" ON "CollaboratorsOnTypebots"("userId", "typebotId");
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Invitation" ADD CONSTRAINT "Invitation_typebotId_fkey" FOREIGN KEY ("typebotId") REFERENCES "Typebot"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "CollaboratorsOnTypebots" ADD CONSTRAINT "CollaboratorsOnTypebots_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "CollaboratorsOnTypebots" ADD CONSTRAINT "CollaboratorsOnTypebots_typebotId_fkey" FOREIGN KEY ("typebotId") REFERENCES "Typebot"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
@ -0,0 +1,13 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "Credentials" ADD COLUMN "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "CustomDomain" ADD COLUMN "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Invitation" ADD COLUMN "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "User" ADD COLUMN "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
ADD COLUMN "lastActivityAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
ADD COLUMN "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
@ -0,0 +1,15 @@
|
||||
-- CreateTable
|
||||
CREATE TABLE "Webhook" (
|
||||
"id" TEXT NOT NULL,
|
||||
"url" TEXT,
|
||||
"method" TEXT NOT NULL,
|
||||
"queryParams" JSONB[],
|
||||
"headers" JSONB[],
|
||||
"body" TEXT,
|
||||
"typebotId" TEXT NOT NULL,
|
||||
|
||||
CONSTRAINT "Webhook_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Webhook" ADD CONSTRAINT "Webhook_typebotId_fkey" FOREIGN KEY ("typebotId") REFERENCES "Typebot"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
@ -0,0 +1,14 @@
|
||||
-- CreateTable
|
||||
CREATE TABLE "Log" (
|
||||
"id" TEXT NOT NULL,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"resultId" TEXT NOT NULL,
|
||||
"status" TEXT NOT NULL,
|
||||
"description" TEXT NOT NULL,
|
||||
"details" TEXT,
|
||||
|
||||
CONSTRAINT "Log_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Log" ADD CONSTRAINT "Log_resultId_fkey" FOREIGN KEY ("resultId") REFERENCES "Result"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
@ -0,0 +1,5 @@
|
||||
-- DropIndex
|
||||
DROP INDEX "CustomDomain_name_key";
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "CustomDomain" ADD CONSTRAINT "CustomDomain_pkey" PRIMARY KEY ("name");
|
@ -0,0 +1,3 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "User" ADD COLUMN "company" TEXT,
|
||||
ADD COLUMN "onboardingCategories" TEXT[];
|
@ -0,0 +1,3 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "Result"
|
||||
RENAME COLUMN "prefilledVariables" TO "variables"
|
@ -0,0 +1,2 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "Typebot" ADD COLUMN "icon" TEXT;
|
@ -0,0 +1,5 @@
|
||||
-- CreateEnum
|
||||
CREATE TYPE "GraphNavigation" AS ENUM ('MOUSE', 'TRACKPAD');
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "User" ADD COLUMN "graphNavigation" "GraphNavigation";
|
@ -0,0 +1,84 @@
|
||||
-- CreateEnum
|
||||
CREATE TYPE "WorkspaceRole" AS ENUM ('ADMIN', 'MEMBER', 'GUEST');
|
||||
|
||||
-- AlterEnum
|
||||
ALTER TYPE "CollaborationType" ADD VALUE 'FULL_ACCESS';
|
||||
|
||||
-- AlterEnum
|
||||
ALTER TYPE "Plan" ADD VALUE 'TEAM';
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Credentials" ADD COLUMN "workspaceId" TEXT,
|
||||
ALTER COLUMN "ownerId" DROP NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "CustomDomain" ADD COLUMN "workspaceId" TEXT,
|
||||
ALTER COLUMN "ownerId" DROP NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "DashboardFolder" ADD COLUMN "workspaceId" TEXT,
|
||||
ALTER COLUMN "ownerId" DROP NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Typebot" ADD COLUMN "workspaceId" TEXT,
|
||||
ALTER COLUMN "ownerId" DROP NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "User" ALTER COLUMN "plan" DROP NOT NULL;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "Workspace" (
|
||||
"id" TEXT NOT NULL,
|
||||
"name" TEXT NOT NULL,
|
||||
"icon" TEXT,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"plan" "Plan" NOT NULL DEFAULT E'FREE',
|
||||
"stripeId" TEXT,
|
||||
|
||||
CONSTRAINT "Workspace_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "MemberInWorkspace" (
|
||||
"userId" TEXT NOT NULL,
|
||||
"workspaceId" TEXT NOT NULL,
|
||||
"role" "WorkspaceRole" NOT NULL
|
||||
);
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "WorkspaceInvitation" (
|
||||
"id" TEXT NOT NULL,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"email" TEXT NOT NULL,
|
||||
"workspaceId" TEXT NOT NULL,
|
||||
"type" "WorkspaceRole" NOT NULL,
|
||||
|
||||
CONSTRAINT "WorkspaceInvitation_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Workspace_stripeId_key" ON "Workspace"("stripeId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "MemberInWorkspace_userId_workspaceId_key" ON "MemberInWorkspace"("userId", "workspaceId");
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "MemberInWorkspace" ADD CONSTRAINT "MemberInWorkspace_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "MemberInWorkspace" ADD CONSTRAINT "MemberInWorkspace_workspaceId_fkey" FOREIGN KEY ("workspaceId") REFERENCES "Workspace"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "WorkspaceInvitation" ADD CONSTRAINT "WorkspaceInvitation_workspaceId_fkey" FOREIGN KEY ("workspaceId") REFERENCES "Workspace"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "CustomDomain" ADD CONSTRAINT "CustomDomain_workspaceId_fkey" FOREIGN KEY ("workspaceId") REFERENCES "Workspace"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Credentials" ADD CONSTRAINT "Credentials_workspaceId_fkey" FOREIGN KEY ("workspaceId") REFERENCES "Workspace"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "DashboardFolder" ADD CONSTRAINT "DashboardFolder_workspaceId_fkey" FOREIGN KEY ("workspaceId") REFERENCES "Workspace"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Typebot" ADD CONSTRAINT "Typebot_workspaceId_fkey" FOREIGN KEY ("workspaceId") REFERENCES "Workspace"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
@ -0,0 +1,50 @@
|
||||
/*
|
||||
Warnings:
|
||||
|
||||
- You are about to drop the column `ownerId` on the `Credentials` table. All the data in the column will be lost.
|
||||
- You are about to drop the column `ownerId` on the `CustomDomain` table. All the data in the column will be lost.
|
||||
- You are about to drop the column `ownerId` on the `DashboardFolder` table. All the data in the column will be lost.
|
||||
- You are about to drop the column `ownerId` on the `Typebot` table. All the data in the column will be lost.
|
||||
- You are about to drop the column `plan` on the `User` table. All the data in the column will be lost.
|
||||
- You are about to drop the column `stripeId` on the `User` table. All the data in the column will be lost.
|
||||
|
||||
*/
|
||||
-- DropForeignKey
|
||||
ALTER TABLE "Credentials" DROP CONSTRAINT "Credentials_ownerId_fkey";
|
||||
|
||||
-- DropForeignKey
|
||||
ALTER TABLE "CustomDomain" DROP CONSTRAINT "CustomDomain_ownerId_fkey";
|
||||
|
||||
-- DropForeignKey
|
||||
ALTER TABLE "DashboardFolder" DROP CONSTRAINT "DashboardFolder_ownerId_fkey";
|
||||
|
||||
-- DropForeignKey
|
||||
ALTER TABLE "Typebot" DROP CONSTRAINT "Typebot_ownerId_fkey";
|
||||
|
||||
-- DropIndex
|
||||
DROP INDEX "Credentials_name_type_ownerId_key";
|
||||
|
||||
-- DropIndex
|
||||
DROP INDEX "DashboardFolder_id_ownerId_key";
|
||||
|
||||
-- DropIndex
|
||||
DROP INDEX "Typebot_id_ownerId_key";
|
||||
|
||||
-- DropIndex
|
||||
DROP INDEX "User_stripeId_key";
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Credentials" DROP COLUMN "ownerId";
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "CustomDomain" DROP COLUMN "ownerId";
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "DashboardFolder" DROP COLUMN "ownerId";
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Typebot" DROP COLUMN "ownerId";
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "User" DROP COLUMN "plan",
|
||||
DROP COLUMN "stripeId";
|
@ -0,0 +1,23 @@
|
||||
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "ApiToken" (
|
||||
"id" TEXT NOT NULL,
|
||||
"token" TEXT NOT NULL,
|
||||
"name" TEXT NOT NULL,
|
||||
"ownerId" TEXT NOT NULL,
|
||||
"lastUsedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
|
||||
CONSTRAINT "ApiToken_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "ApiToken_token_key" ON "ApiToken"("token");
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "ApiToken" ADD CONSTRAINT "ApiToken_ownerId_fkey" FOREIGN KEY ("ownerId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
||||
|
||||
INSERT INTO "ApiToken" (id, "ownerId", token, name) SELECT uuid_generate_v4(), u.id, u."apiToken", 'Default' FROM "User" u;
|
||||
|
||||
ALTER TABLE "User" DROP COLUMN "apiToken";
|
@ -0,0 +1,10 @@
|
||||
-- DropIndex
|
||||
DROP INDEX "PublicTypebot_customDomain_key";
|
||||
|
||||
-- DropIndex
|
||||
DROP INDEX "PublicTypebot_publicId_key";
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "PublicTypebot" DROP COLUMN "customDomain",
|
||||
DROP COLUMN "name",
|
||||
DROP COLUMN "publicId";
|
@ -0,0 +1,20 @@
|
||||
/*
|
||||
Warnings:
|
||||
|
||||
- Made the column `workspaceId` on table `Credentials` required. This step will fail if there are existing NULL values in that column.
|
||||
- Made the column `workspaceId` on table `CustomDomain` required. This step will fail if there are existing NULL values in that column.
|
||||
- Made the column `workspaceId` on table `DashboardFolder` required. This step will fail if there are existing NULL values in that column.
|
||||
- Made the column `workspaceId` on table `Typebot` required. This step will fail if there are existing NULL values in that column.
|
||||
|
||||
*/
|
||||
-- AlterTable
|
||||
ALTER TABLE "Credentials" ALTER COLUMN "workspaceId" SET NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "CustomDomain" ALTER COLUMN "workspaceId" SET NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "DashboardFolder" ALTER COLUMN "workspaceId" SET NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Typebot" ALTER COLUMN "workspaceId" SET NOT NULL;
|
@ -0,0 +1,33 @@
|
||||
DROP INDEX "Answer_resultId_blockId_stepId_key";
|
||||
|
||||
ALTER TABLE "Answer"
|
||||
RENAME COLUMN "stepId" TO "groupId";
|
||||
|
||||
ALTER TABLE "PublicTypebot"
|
||||
RENAME COLUMN "blocks" TO "groups";
|
||||
|
||||
ALTER TABLE "PublicTypebot"
|
||||
ALTER COLUMN groups TYPE JSONB USING to_json(groups);
|
||||
|
||||
ALTER TABLE "PublicTypebot"
|
||||
ALTER COLUMN edges TYPE JSONB USING to_json(edges);
|
||||
|
||||
ALTER TABLE "Typebot"
|
||||
RENAME COLUMN "blocks" TO "groups";
|
||||
|
||||
ALTER TABLE "Typebot"
|
||||
ALTER COLUMN groups TYPE JSONB USING to_json(groups);
|
||||
|
||||
ALTER TABLE "Typebot"
|
||||
ALTER COLUMN edges TYPE JSONB USING to_json(edges);
|
||||
|
||||
UPDATE "Typebot" t
|
||||
SET groups = REPLACE(REPLACE(REPLACE(t.groups::text, '"blockId":', '"groupId":'), '"steps":', '"blocks":'), '"stepId":', '"blockId":')::jsonb,
|
||||
edges = REPLACE(REPLACE(t.edges::text, '"blockId":', '"groupId":'), '"stepId":', '"blockId":')::jsonb;
|
||||
|
||||
UPDATE "PublicTypebot" t
|
||||
SET groups = REPLACE(REPLACE(REPLACE(t.groups::text, '"blockId":', '"groupId":'), '"steps":', '"blocks":'), '"stepId":', '"blockId":')::jsonb,
|
||||
edges = REPLACE(REPLACE(t.edges::text, '"blockId":', '"groupId":'), '"stepId":', '"blockId":')::jsonb;
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "Answer_resultId_blockId_groupId_key" ON "Answer"("resultId", "blockId", "groupId");
|
@ -0,0 +1,22 @@
|
||||
/*
|
||||
Warnings:
|
||||
|
||||
- Made the column `groups` on table `PublicTypebot` required. This step will fail if there are existing NULL values in that column.
|
||||
- Made the column `edges` on table `PublicTypebot` required. This step will fail if there are existing NULL values in that column.
|
||||
- Made the column `groups` on table `Typebot` required. This step will fail if there are existing NULL values in that column.
|
||||
- Made the column `edges` on table `Typebot` required. This step will fail if there are existing NULL values in that column.
|
||||
|
||||
*/
|
||||
-- AlterTable
|
||||
ALTER TABLE "Answer" ADD COLUMN "storageUsed" INTEGER;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "PublicTypebot" ALTER COLUMN "groups" SET NOT NULL,
|
||||
ALTER COLUMN "edges" SET NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Result" ADD COLUMN "hasStarted" BOOLEAN;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Typebot" ALTER COLUMN "groups" SET NOT NULL,
|
||||
ALTER COLUMN "edges" SET NOT NULL;
|
@ -0,0 +1,5 @@
|
||||
-- CreateIndex
|
||||
CREATE INDEX "Answer_resultId_idx" ON "Answer"("resultId");
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX "Log_resultId_idx" ON "Log"("resultId");
|
@ -0,0 +1,2 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "Result" ADD COLUMN "isArchived" BOOLEAN;
|
@ -0,0 +1,2 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "Typebot" ADD COLUMN "resultsTablePreferences" JSONB;
|
@ -0,0 +1,12 @@
|
||||
-- Update old answers
|
||||
UPDATE "Answer" a
|
||||
SET "blockId" = a."groupId",
|
||||
"groupId" = a."blockId"
|
||||
WHERE "createdAt" < '2022-06-10 22:00:00 UTC'
|
||||
AND NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM "Answer"
|
||||
WHERE "resultId" = a."resultId"
|
||||
AND "blockId" = a."groupId"
|
||||
AND "groupId" = a."blockId"
|
||||
);
|
@ -0,0 +1,18 @@
|
||||
BEGIN;
|
||||
UPDATE "Workspace" SET "plan" = 'PRO' WHERE "plan" = 'TEAM';
|
||||
CREATE TYPE "Plan_new" AS ENUM ('FREE', 'STARTER', 'PRO', 'LIFETIME', 'OFFERED');
|
||||
ALTER TABLE "Workspace" ALTER COLUMN "plan" DROP DEFAULT;
|
||||
ALTER TABLE "Workspace" ALTER COLUMN "plan" TYPE "Plan_new" USING ("plan"::text::"Plan_new");
|
||||
ALTER TYPE "Plan" RENAME TO "Plan_old";
|
||||
ALTER TYPE "Plan_new" RENAME TO "Plan";
|
||||
DROP TYPE "Plan_old";
|
||||
ALTER TABLE "Workspace" ALTER COLUMN "plan" SET DEFAULT 'FREE';
|
||||
UPDATE "Workspace" SET "plan" = 'STARTER' WHERE "plan" = 'PRO';
|
||||
COMMIT;
|
||||
|
||||
ALTER TABLE "Workspace" ADD COLUMN "additionalChatsIndex" INTEGER NOT NULL DEFAULT 0,
|
||||
ADD COLUMN "additionalStorageIndex" INTEGER NOT NULL DEFAULT 0,
|
||||
ADD COLUMN "chatsLimitFirstEmailSentAt" TIMESTAMP(3),
|
||||
ADD COLUMN "chatsLimitSecondEmailSentAt" TIMESTAMP(3),
|
||||
ADD COLUMN "storageLimitFirstEmailSentAt" TIMESTAMP(3),
|
||||
ADD COLUMN "storageLimitSecondEmailSentAt" TIMESTAMP(3);
|
@ -0,0 +1,5 @@
|
||||
-- DropForeignKey
|
||||
ALTER TABLE "Result" DROP CONSTRAINT "Result_typebotId_fkey";
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Result" ADD CONSTRAINT "Result_typebotId_fkey" FOREIGN KEY ("typebotId") REFERENCES "Typebot"("id") ON DELETE NO ACTION ON UPDATE CASCADE;
|
@ -0,0 +1,11 @@
|
||||
-- DropForeignKey
|
||||
ALTER TABLE "Result" DROP CONSTRAINT "Result_typebotId_fkey";
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Result" ALTER COLUMN "isArchived" SET DEFAULT false;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Typebot" ADD COLUMN "isArchived" BOOLEAN NOT NULL DEFAULT false;
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "Result" ADD CONSTRAINT "Result_typebotId_fkey" FOREIGN KEY ("typebotId") REFERENCES "Typebot"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
@ -0,0 +1,2 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "Typebot" ADD COLUMN "isClosed" BOOLEAN NOT NULL DEFAULT false;
|
@ -0,0 +1,2 @@
|
||||
-- DropIndex
|
||||
DROP INDEX "Answer_resultId_idx";
|
@ -0,0 +1,2 @@
|
||||
-- CreateIndex
|
||||
CREATE INDEX CONCURRENTLY "Result_typebotId_idx" ON "Result"("typebotId");
|
@ -0,0 +1,30 @@
|
||||
-- AlterEnum
|
||||
ALTER TYPE "Plan" ADD VALUE 'CUSTOM';
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Workspace" ADD COLUMN "customChatsLimit" INTEGER,
|
||||
ADD COLUMN "customSeatsLimit" INTEGER,
|
||||
ADD COLUMN "customStorageLimit" INTEGER;
|
||||
|
||||
-- CreateTable
|
||||
CREATE TABLE "ClaimableCustomPlan" (
|
||||
"id" TEXT NOT NULL,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"claimedAt" TIMESTAMP(3),
|
||||
"name" TEXT NOT NULL,
|
||||
"description" TEXT,
|
||||
"price" INTEGER NOT NULL,
|
||||
"currency" TEXT NOT NULL,
|
||||
"workspaceId" TEXT NOT NULL,
|
||||
"chatsLimit" INTEGER NOT NULL,
|
||||
"storageLimit" INTEGER NOT NULL,
|
||||
"seatsLimit" INTEGER NOT NULL,
|
||||
|
||||
CONSTRAINT "ClaimableCustomPlan_pkey" PRIMARY KEY ("id")
|
||||
);
|
||||
|
||||
-- CreateIndex
|
||||
CREATE UNIQUE INDEX "ClaimableCustomPlan_workspaceId_key" ON "ClaimableCustomPlan"("workspaceId");
|
||||
|
||||
-- AddForeignKey
|
||||
ALTER TABLE "ClaimableCustomPlan" ADD CONSTRAINT "ClaimableCustomPlan_workspaceId_fkey" FOREIGN KEY ("workspaceId") REFERENCES "Workspace"("id") ON DELETE CASCADE ON UPDATE CASCADE;
|
@ -0,0 +1,2 @@
|
||||
-- CreateIndex
|
||||
CREATE INDEX CONCURRENTLY "Answer_groupId_idx" ON "Answer"("groupId");
|
@ -0,0 +1,9 @@
|
||||
-- CreateTable
|
||||
CREATE TABLE "ChatSession" (
|
||||
"id" TEXT NOT NULL,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"state" JSONB NOT NULL,
|
||||
|
||||
CONSTRAINT "ChatSession_pkey" PRIMARY KEY ("id")
|
||||
);
|
@ -0,0 +1,2 @@
|
||||
-- CreateIndex
|
||||
CREATE INDEX CONCURRENTLY "Typebot_workspaceId_idx" ON "Typebot"("workspaceId");
|
@ -0,0 +1,2 @@
|
||||
-- CreateIndex
|
||||
CREATE INDEX CONCURRENTLY "Result_createdAt_idx" ON "Result"("createdAt");
|
@ -0,0 +1,2 @@
|
||||
-- CreateIndex
|
||||
CREATE INDEX CONCURRENTLY "Result_hasStarted_idx" ON "Result"("hasStarted");
|
@ -0,0 +1,23 @@
|
||||
-- DropIndex
|
||||
DROP INDEX IF EXISTS "Result_createdAt_idx";
|
||||
|
||||
-- DropIndex
|
||||
DROP INDEX IF EXISTS "Result_hasStarted_idx";
|
||||
|
||||
-- DropIndex
|
||||
DROP INDEX IF EXISTS "Result_typebotId_idx";
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX IF NOT EXISTS "Answer_storageUsed_idx" ON "Answer"("storageUsed")
|
||||
WHERE
|
||||
"storageUsed" IS NOT NULL;
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX IF NOT EXISTS "Result_typebotId_createdAt_idx" ON "Result"("typebotId", "createdAt" DESC NULLS LAST)
|
||||
WHERE
|
||||
"hasStarted" = true;
|
||||
|
||||
-- CreateIndex
|
||||
CREATE INDEX IF NOT EXISTS "Result_createdAt_typebotId_idx" ON "Result"("createdAt" DESC NULLS LAST, "typebotId")
|
||||
WHERE
|
||||
"hasStarted" = true;
|
@ -0,0 +1,2 @@
|
||||
-- CreateIndex
|
||||
CREATE INDEX IF NOT EXISTS "Result_typebotId_idx" ON "Result"("typebotId");
|
@ -0,0 +1,2 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "User" ADD COLUMN "preferredAppAppearance" TEXT;
|
@ -0,0 +1,16 @@
|
||||
-- Set background to white for all themes that have no background color set
|
||||
UPDATE
|
||||
"Typebot" t
|
||||
SET
|
||||
"theme" = jsonb_set(
|
||||
jsonb_set(
|
||||
t."theme",
|
||||
'{general,background,type}',
|
||||
'"Color"'
|
||||
),
|
||||
'{general,background,content}',
|
||||
'"#FFFFFF"'
|
||||
),
|
||||
"updatedAt" = now()
|
||||
WHERE
|
||||
t."theme" -> 'general' -> 'background' ->> 'type' = 'None'
|
@ -0,0 +1,2 @@
|
||||
-- AlterEnum
|
||||
ALTER TYPE "Plan" ADD VALUE 'UNLIMITED';
|
@ -0,0 +1,8 @@
|
||||
/*
|
||||
Warnings:
|
||||
|
||||
- You are about to drop the column `publishedTypebotId` on the `Typebot` table. All the data in the column will be lost.
|
||||
|
||||
*/
|
||||
-- AlterTable
|
||||
ALTER TABLE "Typebot" DROP COLUMN "publishedTypebotId";
|
@ -0,0 +1,26 @@
|
||||
ALTER TABLE
|
||||
"PublicTypebot"
|
||||
ALTER COLUMN
|
||||
variables TYPE JSONB USING array_to_json(variables);
|
||||
|
||||
ALTER TABLE
|
||||
"Result"
|
||||
ALTER COLUMN
|
||||
variables TYPE JSONB USING array_to_json(variables);
|
||||
|
||||
ALTER TABLE
|
||||
"Typebot"
|
||||
ALTER COLUMN
|
||||
variables TYPE JSONB USING array_to_json(variables);
|
||||
|
||||
ALTER TABLE
|
||||
"User"
|
||||
ALTER COLUMN
|
||||
"onboardingCategories" TYPE JSONB USING array_to_json("onboardingCategories");
|
||||
|
||||
ALTER TABLE
|
||||
"Webhook"
|
||||
ALTER COLUMN
|
||||
"queryParams" TYPE JSONB USING array_to_json("queryParams"),
|
||||
ALTER COLUMN
|
||||
"headers" TYPE JSONB USING array_to_json("headers");
|
@ -0,0 +1,25 @@
|
||||
set statement_timeout to 300000;
|
||||
|
||||
-- AlterTable
|
||||
UPDATE "PublicTypebot" SET "variables" = '[]' WHERE "variables" IS NULL;
|
||||
ALTER TABLE "PublicTypebot" ALTER COLUMN "variables" SET NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
UPDATE "Result" SET "variables" = '[]' WHERE "variables" IS NULL;
|
||||
ALTER TABLE "Result" ALTER COLUMN "variables" SET NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
UPDATE "Typebot" SET "variables" = '[]' WHERE "variables" IS NULL;
|
||||
ALTER TABLE "Typebot" ALTER COLUMN "variables" SET NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
UPDATE "User" SET "onboardingCategories" = '[]' WHERE "onboardingCategories" IS NULL;
|
||||
ALTER TABLE "User" ALTER COLUMN "onboardingCategories" SET NOT NULL;
|
||||
|
||||
-- AlterTable
|
||||
UPDATE "Webhook" SET "queryParams" = '[]' WHERE "queryParams" IS NULL;
|
||||
UPDATE "Webhook" SET "headers" = '[]' WHERE "headers" IS NULL;
|
||||
ALTER TABLE "Webhook" ADD COLUMN "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
ADD COLUMN "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
ALTER COLUMN "queryParams" SET NOT NULL,
|
||||
ALTER COLUMN "headers" SET NOT NULL;
|
@ -0,0 +1,25 @@
|
||||
/*
|
||||
Warnings:
|
||||
|
||||
- You are about to drop the column `lastUsedAt` on the `ApiToken` table. All the data in the column will be lost.
|
||||
|
||||
*/
|
||||
-- AlterTable
|
||||
ALTER TABLE "ApiToken" DROP COLUMN "lastUsedAt";
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "CollaboratorsOnTypebots" ADD COLUMN "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
ADD COLUMN "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Invitation" ADD COLUMN "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "MemberInWorkspace" ADD COLUMN "createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
ADD COLUMN "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "Workspace" ADD COLUMN "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE "WorkspaceInvitation" ADD COLUMN "updatedAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP;
|
@ -0,0 +1,11 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE
|
||||
"PublicTypebot"
|
||||
ADD
|
||||
COLUMN "version" TEXT;
|
||||
|
||||
-- AlterTable
|
||||
ALTER TABLE
|
||||
"Typebot"
|
||||
ADD
|
||||
COLUMN "version" TEXT;
|
@ -0,0 +1,2 @@
|
||||
-- AlterTable
|
||||
ALTER TABLE "Result" DROP COLUMN "updatedAt";
|
@ -0,0 +1,3 @@
|
||||
# Please do not edit this file manually
|
||||
# It should be added in your version-control system (i.e. Git)
|
||||
provider = "postgresql"
|
Reference in New Issue
Block a user