From 99f4a34a1d980d6081d6080b42a5d7a827b86967 Mon Sep 17 00:00:00 2001 From: Jeremy Wharton Date: Thu, 22 Jun 2023 23:52:31 -0500 Subject: [PATCH] web/satellite: add button for resending expired project invitations A button has been added to the Team page for resending expired project member invitations. It appears when one or more of such invitations have been selected. Additionally, styling for certain search fields and the Team page's header has been updated to align more closely with our designs. Resolves #5752 Change-Id: I623fed5f50e60beca2f82136f8771dde5aa684f4 --- satellite/analytics/service.go | 3 +- .../components/accessGrants/AccessGrants.vue | 20 +- .../createFlow/steps/ChoosePermissionStep.vue | 2 +- .../src/components/common/VButton.vue | 2 + .../src/components/common/VHeader.vue | 86 ------ .../src/components/common/VSearch.vue | 126 ++++----- .../common/VSearchAlternateStyling.vue | 78 ------ .../src/components/objects/BucketsTable.vue | 10 +- .../src/components/team/HeaderArea.vue | 251 ++++++++---------- .../components/team/ProjectMembersArea.vue | 22 +- .../src/store/modules/projectMembersStore.ts | 8 + web/satellite/src/types/projectMembers.ts | 12 - .../utils/constants/analyticsEventNames.ts | 1 + .../accessGrants/newCreateFlow/search.svg | 4 - web/satellite/static/images/common/search.png | Bin 594 -> 0 bytes web/satellite/static/images/common/search.svg | 4 + web/satellite/static/images/common/upload.svg | 3 + .../tests/unit/ignore/common/VHeader.spec.ts | 31 --- 18 files changed, 198 insertions(+), 465 deletions(-) delete mode 100644 web/satellite/src/components/common/VHeader.vue delete mode 100644 web/satellite/src/components/common/VSearchAlternateStyling.vue delete mode 100644 web/satellite/static/images/accessGrants/newCreateFlow/search.svg delete mode 100644 web/satellite/static/images/common/search.png create mode 100644 web/satellite/static/images/common/search.svg create mode 100644 web/satellite/static/images/common/upload.svg delete mode 100644 web/satellite/tests/unit/ignore/common/VHeader.spec.ts diff --git a/satellite/analytics/service.go b/satellite/analytics/service.go index e7f2454c3..e34d00870 100644 --- a/satellite/analytics/service.go +++ b/satellite/analytics/service.go @@ -89,6 +89,7 @@ const ( eventProjectInvitationAccepted = "Project Invitation Accepted" eventProjectInvitationDeclined = "Project Invitation Declined" eventGalleryViewClicked = "Gallery View Clicked" + eventResendInviteClicked = "Resend Invite Clicked" ) var ( @@ -158,7 +159,7 @@ func NewService(log *zap.Logger, config Config, satelliteName string) *Service { eventApplyNewCouponClicked, eventCreditCardRemoved, eventCouponCodeApplied, eventInvoiceDownloaded, eventCreditCardAddedFromBilling, eventStorjTokenAddedFromBilling, eventAddFundsClicked, eventProjectMembersInviteSent, eventError, eventProjectNameUpdated, eventProjectDescriptionUpdated, eventProjectStorageLimitUpdated, eventProjectBandwidthLimitUpdated, eventProjectInvitationAccepted, eventProjectInvitationDeclined, - eventGalleryViewClicked, + eventGalleryViewClicked, eventResendInviteClicked, } { service.clientEvents[name] = true } diff --git a/web/satellite/src/components/accessGrants/AccessGrants.vue b/web/satellite/src/components/accessGrants/AccessGrants.vue index 8b7e4d5fd..4981e148b 100644 --- a/web/satellite/src/components/accessGrants/AccessGrants.vue +++ b/web/satellite/src/components/accessGrants/AccessGrants.vue @@ -110,12 +110,7 @@

My Accesses

- +
@@ -175,8 +170,8 @@ import { MODALS } from '@/utils/constants/appStatePopUps'; import AccessGrantsItem from '@/components/accessGrants/AccessGrantsItem.vue'; import VButton from '@/components/common/VButton.vue'; import VLoader from '@/components/common/VLoader.vue'; -import VHeader from '@/components/common/VHeader.vue'; import VTable from '@/components/common/VTable.vue'; +import VSearch from '@/components/common/VSearch.vue'; import AccessGrantsIcon from '@/../static/images/accessGrants/accessGrantsIcon.svg'; import CLIIcon from '@/../static/images/accessGrants/cli.svg'; @@ -465,10 +460,6 @@ onBeforeUnmount(() => { .access-grants-items { padding-bottom: 55px; - @media screen and (width <= 1150px) { - margin-top: -45px; - } - &__content { margin-top: 20px; } @@ -505,12 +496,7 @@ onBeforeUnmount(() => { height: 1px; width: auto; background-color: #dadfe7; - margin-top: 10px; - } - - &__access-header-component { - height: 55px !important; - margin-top: 15px; + margin: 13px 0 16px; } } } diff --git a/web/satellite/src/components/accessGrants/createFlow/steps/ChoosePermissionStep.vue b/web/satellite/src/components/accessGrants/createFlow/steps/ChoosePermissionStep.vue index 7f91c96ee..570c0cdef 100644 --- a/web/satellite/src/components/accessGrants/createFlow/steps/ChoosePermissionStep.vue +++ b/web/satellite/src/components/accessGrants/createFlow/steps/ChoosePermissionStep.vue @@ -145,7 +145,7 @@ import EndDateSelection from '@/components/accessGrants/createFlow/components/En import Toggle from '@/components/accessGrants/createFlow/components/Toggle.vue'; import VButton from '@/components/common/VButton.vue'; -import SearchIcon from '@/../static/images/accessGrants/newCreateFlow/search.svg'; +import SearchIcon from '@/../static/images/common/search.svg'; import CloseIcon from '@/../static/images/accessGrants/newCreateFlow/close.svg'; const props = withDefaults(defineProps<{ diff --git a/web/satellite/src/components/common/VButton.vue b/web/satellite/src/components/common/VButton.vue index ebe13eacf..8db1fc35f 100644 --- a/web/satellite/src/components/common/VButton.vue +++ b/web/satellite/src/components/common/VButton.vue @@ -64,6 +64,7 @@ import DocumentIcon from '@/../static/images/common/documentIcon.svg'; import DownloadIcon from '@/../static/images/common/download.svg'; import FolderIcon from '@/../static/images/objects/newFolder.svg'; import ResourcesIcon from '@/../static/images/navigation/resources.svg'; +import UploadIcon from '@/../static/images/common/upload.svg'; const props = withDefaults(defineProps<{ link?: string; @@ -119,6 +120,7 @@ const icons = new Map([ ['resources', ResourcesIcon], ['addcircle', AddCircleIcon], ['add', WhitePlusIcon], + ['upload', UploadIcon], ]); const iconComponent = computed((): string | undefined => icons.get(props.icon.toLowerCase())); diff --git a/web/satellite/src/components/common/VHeader.vue b/web/satellite/src/components/common/VHeader.vue deleted file mode 100644 index 8691c0e60..000000000 --- a/web/satellite/src/components/common/VHeader.vue +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright (C) 2019 Storj Labs, Inc. -// See LICENSE for copying information. - - - - - - diff --git a/web/satellite/src/components/common/VSearch.vue b/web/satellite/src/components/common/VSearch.vue index ef3676d3a..9473ff575 100644 --- a/web/satellite/src/components/common/VSearch.vue +++ b/web/satellite/src/components/common/VSearch.vue @@ -2,76 +2,46 @@ // See LICENSE for copying information. diff --git a/web/satellite/src/components/common/VSearchAlternateStyling.vue b/web/satellite/src/components/common/VSearchAlternateStyling.vue deleted file mode 100644 index 44ca2794f..000000000 --- a/web/satellite/src/components/common/VSearchAlternateStyling.vue +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright (C) 2019 Storj Labs, Inc. -// See LICENSE for copying information. - - - - - - diff --git a/web/satellite/src/components/objects/BucketsTable.vue b/web/satellite/src/components/objects/BucketsTable.vue index b4bd1a823..b78558573 100644 --- a/web/satellite/src/components/objects/BucketsTable.vue +++ b/web/satellite/src/components/objects/BucketsTable.vue @@ -3,12 +3,7 @@