rebuild formbricks app folder structure, rename team -> workspace

This commit is contained in:
Matthias Nannt
2023-01-15 12:57:34 +01:00
parent 99c1d155e3
commit a86b9c6e19
142 changed files with 370 additions and 340 deletions
@@ -1,15 +0,0 @@
/*
Warnings:
- You are about to drop the column `teamId` on the `Submission` table. All the data in the column will be lost.
*/
-- DropForeignKey
ALTER TABLE "Submission" DROP CONSTRAINT "Submission_customerId_teamId_fkey";
-- AlterTable
ALTER TABLE "Submission" DROP COLUMN "teamId",
ADD COLUMN "customerTeamId" TEXT;
-- AddForeignKey
ALTER TABLE "Submission" ADD CONSTRAINT "Submission_customerId_customerTeamId_fkey" FOREIGN KEY ("customerId", "customerTeamId") REFERENCES "Customer"("id", "teamId") ON DELETE SET NULL ON UPDATE CASCADE;
@@ -1,2 +0,0 @@
-- AlterEnum
ALTER TYPE "PipelineType" ADD VALUE 'slackNotification';
@@ -1,5 +1,5 @@
-- CreateEnum
CREATE TYPE "PipelineType" AS ENUM ('webhook', 'emailNotification');
CREATE TYPE "PipelineType" AS ENUM ('webhook', 'emailNotification', 'slackNotification');
-- CreateEnum
CREATE TYPE "PipelineEvent" AS ENUM ('submissionCreated');
@@ -33,10 +33,10 @@ CREATE TABLE "Customer" (
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"teamId" TEXT NOT NULL,
"workspaceId" TEXT NOT NULL,
"data" JSONB NOT NULL DEFAULT '{}',
CONSTRAINT "Customer_pkey" PRIMARY KEY ("id","teamId")
CONSTRAINT "Customer_pkey" PRIMARY KEY ("id","workspaceId")
);
-- CreateTable
@@ -46,7 +46,7 @@ CREATE TABLE "Form" (
"updated_at" TIMESTAMP(3) NOT NULL,
"type" "FormType" NOT NULL,
"label" TEXT NOT NULL,
"teamId" TEXT NOT NULL,
"workspaceId" TEXT NOT NULL,
"schema" JSONB NOT NULL DEFAULT '{}',
CONSTRAINT "Form_pkey" PRIMARY KEY ("id")
@@ -60,7 +60,7 @@ CREATE TABLE "Submission" (
"archived" BOOLEAN NOT NULL DEFAULT false,
"formId" TEXT NOT NULL,
"customerId" TEXT,
"teamId" TEXT,
"customerWorkspaceId" TEXT,
"data" JSONB NOT NULL DEFAULT '{}',
"meta" JSONB NOT NULL DEFAULT '{}',
@@ -68,23 +68,23 @@ CREATE TABLE "Submission" (
);
-- CreateTable
CREATE TABLE "Team" (
CREATE TABLE "Workspace" (
"id" TEXT NOT NULL,
"created_at" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updated_at" TIMESTAMP(3) NOT NULL,
"name" TEXT NOT NULL,
CONSTRAINT "Team_pkey" PRIMARY KEY ("id")
CONSTRAINT "Workspace_pkey" PRIMARY KEY ("id")
);
-- CreateTable
CREATE TABLE "Membership" (
"teamId" TEXT NOT NULL,
"workspaceId" TEXT NOT NULL,
"userId" TEXT NOT NULL,
"accepted" BOOLEAN NOT NULL DEFAULT false,
"role" "MembershipRole" NOT NULL,
CONSTRAINT "Membership_pkey" PRIMARY KEY ("userId","teamId")
CONSTRAINT "Membership_pkey" PRIMARY KEY ("userId","workspaceId")
);
-- CreateTable
@@ -150,19 +150,19 @@ CREATE UNIQUE INDEX "User_email_key" ON "User"("email");
ALTER TABLE "Pipeline" ADD CONSTRAINT "Pipeline_formId_fkey" FOREIGN KEY ("formId") REFERENCES "Form"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "Customer" ADD CONSTRAINT "Customer_teamId_fkey" FOREIGN KEY ("teamId") REFERENCES "Team"("id") ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE "Customer" ADD CONSTRAINT "Customer_workspaceId_fkey" FOREIGN KEY ("workspaceId") REFERENCES "Workspace"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "Form" ADD CONSTRAINT "Form_teamId_fkey" FOREIGN KEY ("teamId") REFERENCES "Team"("id") ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE "Form" ADD CONSTRAINT "Form_workspaceId_fkey" FOREIGN KEY ("workspaceId") REFERENCES "Workspace"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "Submission" ADD CONSTRAINT "Submission_formId_fkey" FOREIGN KEY ("formId") REFERENCES "Form"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "Submission" ADD CONSTRAINT "Submission_customerId_teamId_fkey" FOREIGN KEY ("customerId", "teamId") REFERENCES "Customer"("id", "teamId") ON DELETE SET NULL ON UPDATE CASCADE;
ALTER TABLE "Submission" ADD CONSTRAINT "Submission_customerId_customerWorkspaceId_fkey" FOREIGN KEY ("customerId", "customerWorkspaceId") REFERENCES "Customer"("id", "workspaceId") ON DELETE SET NULL ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "Membership" ADD CONSTRAINT "Membership_teamId_fkey" FOREIGN KEY ("teamId") REFERENCES "Team"("id") ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE "Membership" ADD CONSTRAINT "Membership_workspaceId_fkey" FOREIGN KEY ("workspaceId") REFERENCES "Workspace"("id") ON DELETE CASCADE ON UPDATE CASCADE;
-- AddForeignKey
ALTER TABLE "Membership" ADD CONSTRAINT "Membership_userId_fkey" FOREIGN KEY ("userId") REFERENCES "User"("id") ON DELETE CASCADE ON UPDATE CASCADE;
+25 -25
View File
@@ -38,12 +38,12 @@ model Customer {
id String
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
team Team @relation(fields: [teamId], references: [id], onDelete: Cascade)
teamId String
workspace Workspace @relation(fields: [workspaceId], references: [id], onDelete: Cascade)
workspaceId String
submissions Submission[]
data Json @default("{}")
@@id([id, teamId])
@@id([id, workspaceId])
}
enum FormType {
@@ -56,28 +56,28 @@ model Form {
updatedAt DateTime @updatedAt @map(name: "updated_at")
type FormType
label String
team Team @relation(fields: [teamId], references: [id], onDelete: Cascade)
teamId String
workspace Workspace @relation(fields: [workspaceId], references: [id], onDelete: Cascade)
workspaceId String
schema Json @default("{}")
submissions Submission[]
pipelines Pipeline[]
}
model Submission {
id String @id @default(cuid())
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
archived Boolean @default(false)
form Form @relation(fields: [formId], references: [id], onDelete: Cascade)
formId String
customer Customer? @relation(fields: [customerId, customerTeamId], references: [id, teamId])
customerId String?
customerTeamId String?
data Json @default("{}")
meta Json @default("{}")
id String @id @default(cuid())
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
archived Boolean @default(false)
form Form @relation(fields: [formId], references: [id], onDelete: Cascade)
formId String
customer Customer? @relation(fields: [customerId, customerWorkspaceId], references: [id, workspaceId])
customerId String?
customerWorkspaceId String?
data Json @default("{}")
meta Json @default("{}")
}
model Team {
model Workspace {
id String @id @default(cuid())
createdAt DateTime @default(now()) @map(name: "created_at")
updatedAt DateTime @updatedAt @map(name: "updated_at")
@@ -94,14 +94,14 @@ enum MembershipRole {
}
model Membership {
team Team @relation(fields: [teamId], references: [id], onDelete: Cascade)
teamId String
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
userId String
accepted Boolean @default(false)
role MembershipRole
workspace Workspace @relation(fields: [workspaceId], references: [id], onDelete: Cascade)
workspaceId String
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
userId String
accepted Boolean @default(false)
role MembershipRole
@@id([userId, teamId])
@@id([userId, workspaceId])
}
model ApiKey {
@@ -149,7 +149,7 @@ model User {
password String?
identityProvider IdentityProvider @default(email)
identityProviderAccountId String?
teams Membership[]
workspaces Membership[]
accounts Account[]
apiKeys ApiKey[]
}
+1 -1
View File
@@ -4,7 +4,7 @@
window.formbricks = {
config: {
hqUrl: "http://localhost:3000",
formId: "clct71ckl0006yzy54f4gcv3x",
formId: "clcxavrfm0006yz11frfb0ms2",
divId: "test-div",
contact: {
name: "Peer",