From 69f393fe2f19d41f483febe75b62a9efe4c3fd32 Mon Sep 17 00:00:00 2001 From: fengmk2 Date: Fri, 28 Mar 2025 05:27:19 +0000 Subject: [PATCH] refactor(server): change invitation request link to workspace members tab (#11191) close CLOUD-184 --- .../__tests__/__snapshots__/mails.spec.ts.md | 59 ++++++++++++++---- .../__snapshots__/mails.spec.ts.snap | Bin 4415 -> 4443 bytes .../server/src/core/notification/service.ts | 17 ++++- .../server/src/core/utils/workspace.ts | 20 ++++++ .../mails/workspaces/invitation-accepted.tsx | 6 +- 5 files changed, 89 insertions(+), 13 deletions(-) create mode 100644 packages/backend/server/src/core/utils/workspace.ts diff --git a/packages/backend/server/src/__tests__/__snapshots__/mails.spec.ts.md b/packages/backend/server/src/__tests__/__snapshots__/mails.spec.ts.md index 96c52d35ab..4796d6973b 100644 --- a/packages/backend/server/src/__tests__/__snapshots__/mails.spec.ts.md +++ b/packages/backend/server/src/__tests__/__snapshots__/mails.spec.ts.md @@ -902,17 +902,54 @@ Generated by [AVA](https://avajs.dev). ␊ ␊ ␊ - ␊ - test@test.com has joined␊ - Test Workspace␊ -

␊ + ␊ + ␊ + ␊ + ␊ + test@test.com has joined␊ + Test Workspace␊ +

␊ + ␊ + ␊ + ␊ + ␊ + ␊ + ␊ + Open Workspace Members␊ + ␊ + ␊ + ␊ ␊ ␊ ␊ diff --git a/packages/backend/server/src/__tests__/__snapshots__/mails.spec.ts.snap b/packages/backend/server/src/__tests__/__snapshots__/mails.spec.ts.snap index 26be3d2f1a85b8cec106d32efdc512484d5f6d3f..97131d67b9b09cb13ea633e9371f238d5c4c8453 100644 GIT binary patch literal 4443 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 literal 4415 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 {user.email} accepted your invitation @@ -24,6 +26,7 @@ export default function InvitationAccepted(props: InvitationAcceptedProps) {

has joined

+ ); @@ -32,4 +35,5 @@ export default function InvitationAccepted(props: InvitationAcceptedProps) { InvitationAccepted.PreviewProps = { user: TEST_USER, workspace: TEST_WORKSPACE, + url: 'https://app.affine.pro', };