From ee5ae8af6259e40bc030a6bb4e501bbdbe5a3421 Mon Sep 17 00:00:00 2001 From: Kristaps Fabians Geikins Date: Thu, 11 Jul 2024 11:45:11 +0300 Subject: [PATCH] fix(fe2): accept invite before onboarding after sign up (#2491) * explicitly ordering global middlewares * various subscription fixes & WIP project invite middleware * SSR invite accept & toast notifs seem to work * backend support for mixpanel * mixpanel be logic -> shared * minor fix * finissh * lint fix * minor comment adjustments * better adblock handling --- packages/frontend-2/app.vue | 4 - .../error/page/GenericUnauthorizedBlock.vue | 4 +- .../error/page/ProjectAccessErrorBlock.vue | 5 +- .../error/page/ProjectInviteBanner.vue | 2 - .../components/projects/invite/Banner.vue | 58 +++------- .../components/projects/invite/Banners.vue | 11 +- packages/frontend-2/composables/env.ts | 8 +- .../lib/auth/composables/activeUser.ts | 8 +- .../lib/common/composables/toast.ts | 34 ++++-- packages/frontend-2/lib/common/helpers/mp.ts | 29 +++++ packages/frontend-2/lib/core/clients/mp.ts | 82 ++++++++++++++ .../frontend-2/lib/core/clients/mpServer.ts | 104 ++++++++++++++++++ .../frontend-2/lib/core/composables/mp.ts | 73 ------------ .../lib/projects/composables/invites.ts | 44 ++++++++ .../projects/composables/projectManagement.ts | 42 ++++--- .../middleware/001-fe2-header.global.ts | 7 ++ ...ects.global.ts => 002-redirects.global.ts} | 0 .../middleware/003-acceptInvites.global.ts | 40 +++++++ ...ing.global.ts => 004-onboarding.global.ts} | 6 +- packages/frontend-2/middleware/mp.global.ts | 12 -- packages/frontend-2/package.json | 3 + .../frontend-2/pages/projects/[id]/index.vue | 2 - .../frontend-2/plugins/007-mpClient.client.ts | 37 +++++++ .../frontend-2/plugins/007-mpServer.server.ts | 39 +++++++ packages/frontend-2/plugins/008-mp.client.ts | 25 +++++ packages/frontend-2/plugins/mp.ts | 83 -------------- .../activitystream/services/streamActivity.ts | 84 ++++++++++---- packages/server/modules/auth/strategies.js | 2 +- .../modules/automate/services/tracking.ts | 4 +- .../modules/core/graph/resolvers/projects.ts | 3 +- .../services/streams/streamAccessService.js | 3 +- .../modules/serverinvites/domain/types.ts | 3 +- .../graph/resolvers/serverInvites.ts | 3 +- .../services/inviteCreationService.ts | 5 +- .../services/inviteProcessingService.ts | 43 +++++--- .../server/modules/shared/middleware/index.ts | 2 +- .../server/modules/shared/utils/mixpanel.ts | 56 ++++------ packages/server/package.json | 2 + packages/shared/package.json | 5 + packages/shared/src/core/helpers/utility.ts | 4 +- packages/shared/src/observability/mixpanel.ts | 101 +++++++++++++++++ .../src/components/global/ToastRenderer.vue | 6 +- yarn.lock | 33 ++++++ 43 files changed, 774 insertions(+), 347 deletions(-) create mode 100644 packages/frontend-2/lib/common/helpers/mp.ts create mode 100644 packages/frontend-2/lib/core/clients/mp.ts create mode 100644 packages/frontend-2/lib/core/clients/mpServer.ts create mode 100644 packages/frontend-2/middleware/001-fe2-header.global.ts rename packages/frontend-2/middleware/{redirects.global.ts => 002-redirects.global.ts} (100%) create mode 100644 packages/frontend-2/middleware/003-acceptInvites.global.ts rename packages/frontend-2/middleware/{onboarding.global.ts => 004-onboarding.global.ts} (93%) delete mode 100644 packages/frontend-2/middleware/mp.global.ts create mode 100644 packages/frontend-2/plugins/007-mpClient.client.ts create mode 100644 packages/frontend-2/plugins/007-mpServer.server.ts create mode 100644 packages/frontend-2/plugins/008-mp.client.ts delete mode 100644 packages/frontend-2/plugins/mp.ts create mode 100644 packages/shared/src/observability/mixpanel.ts diff --git a/packages/frontend-2/app.vue b/packages/frontend-2/app.vue index f1a988d50..5eb5b5d04 100644 --- a/packages/frontend-2/app.vue +++ b/packages/frontend-2/app.vue @@ -12,7 +12,6 @@