From e472817e2fbdf05977b4d1c2c1d8c52c1d55ee3d Mon Sep 17 00:00:00 2001 From: 7eliassen Date: Thu, 9 Jul 2026 17:00:47 +0300 Subject: [PATCH] feat: add check is member is current user --- src/presentation/components/team/MoreActions.vue | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/presentation/components/team/MoreActions.vue b/src/presentation/components/team/MoreActions.vue index 16bda254..efc3b054 100644 --- a/src/presentation/components/team/MoreActions.vue +++ b/src/presentation/components/team/MoreActions.vue @@ -18,9 +18,9 @@ import { type TeamMember } from '@/domain/entities/Team'; import { useI18n } from 'vue-i18n'; import { NoteId } from '@/domain/entities/Note'; import useNoteSettings from '@/application/services/useNoteSettings'; +import { useAppState } from '@/application/services/useAppState'; const { removeMemberByUserId } = useNoteSettings(); - const props = defineProps<{ /** * Team member data @@ -32,28 +32,31 @@ const props = defineProps<{ noteId: NoteId; }>(); +const { user } = useAppState(); const { t } = useI18n(); const { showPopover, hide } = usePopover(); const { confirm } = useConfirm(); const triggerButton = ref(); -const menuItems: ContextMenuItem[] = [ - { +const menuItems: ContextMenuItem[] = []; + +if (props.teamMember.user.email !== user.value?.email) { + menuItems.push({ title: t('noteSettings.team.contextMenu.remove'), onActivate: async () => { hide(); await handleRemove(props.teamMember); }, - }, -]; + }); +} const emit = defineEmits<{ teamMemberRemoved: [userId: TeamMember['user']['id']]; }>(); const handleButtonClick = (): void => { - if (triggerButton.value) { + if (triggerButton.value && menuItems.length > 0) { showPopover({ targetEl: triggerButton.value, with: {