From 702df60076b5b2d55bbe3823c28e0d929fcb0825 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Fri, 13 Oct 2023 12:45:39 +1100 Subject: [PATCH] fix: add cascade delete for share links --- .../app/(dashboard)/documents/data-table-action-dropdown.tsx | 4 ++-- .../migration.sql | 5 +++++ packages/prisma/schema.prisma | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 packages/prisma/migrations/20231013012902_add_document_share_link_delete_cascade/migration.sql diff --git a/apps/web/src/app/(dashboard)/documents/data-table-action-dropdown.tsx b/apps/web/src/app/(dashboard)/documents/data-table-action-dropdown.tsx index 8963058a6..07ee64259 100644 --- a/apps/web/src/app/(dashboard)/documents/data-table-action-dropdown.tsx +++ b/apps/web/src/app/(dashboard)/documents/data-table-action-dropdown.tsx @@ -60,7 +60,7 @@ export const DataTableActionDropdown = ({ row }: DataTableActionDropdownProps) = const isOwner = row.User.id === session.user.id; // const isRecipient = !!recipient; - // const isDraft = row.status === DocumentStatus.DRAFT; + const isDraft = row.status === DocumentStatus.DRAFT; // const isPending = row.status === DocumentStatus.PENDING; const isComplete = row.status === DocumentStatus.COMPLETED; // const isSigned = recipient?.signingStatus === SigningStatus.SIGNED; @@ -165,7 +165,7 @@ export const DataTableActionDropdown = ({ row }: DataTableActionDropdownProps) = Resend - + {isCreatingShareLink ? ( ) : ( diff --git a/packages/prisma/migrations/20231013012902_add_document_share_link_delete_cascade/migration.sql b/packages/prisma/migrations/20231013012902_add_document_share_link_delete_cascade/migration.sql new file mode 100644 index 000000000..ca4142a1f --- /dev/null +++ b/packages/prisma/migrations/20231013012902_add_document_share_link_delete_cascade/migration.sql @@ -0,0 +1,5 @@ +-- DropForeignKey +ALTER TABLE "DocumentShareLink" DROP CONSTRAINT "DocumentShareLink_documentId_fkey"; + +-- AddForeignKey +ALTER TABLE "DocumentShareLink" ADD CONSTRAINT "DocumentShareLink_documentId_fkey" FOREIGN KEY ("documentId") REFERENCES "Document"("id") ON DELETE CASCADE ON UPDATE CASCADE; diff --git a/packages/prisma/schema.prisma b/packages/prisma/schema.prisma index c4f034ba2..340b98528 100644 --- a/packages/prisma/schema.prisma +++ b/packages/prisma/schema.prisma @@ -219,7 +219,7 @@ model DocumentShareLink { createdAt DateTime @default(now()) updatedAt DateTime @updatedAt - document Document @relation(fields: [documentId], references: [id]) + document Document @relation(fields: [documentId], references: [id], onDelete: Cascade) @@unique([documentId, email]) }