diff --git a/ts/components/LeftPane.stories.tsx b/ts/components/LeftPane.stories.tsx index 97bc4d3beb..f2cabb6279 100644 --- a/ts/components/LeftPane.stories.tsx +++ b/ts/components/LeftPane.stories.tsx @@ -938,6 +938,7 @@ export function ChooseGroupMembersPartialPhoneNumber(): JSX.Element { isShowingRecommendedGroupSizeModal: false, isShowingMaximumGroupSizeModal: false, isUsernamesEnabled: true, + ourUsername: undefined, searchTerm: '+1(212) 555', regionCode: 'US', selectedContacts: [], @@ -960,6 +961,7 @@ export function ChooseGroupMembersValidPhoneNumber(): JSX.Element { isShowingRecommendedGroupSizeModal: false, isShowingMaximumGroupSizeModal: false, isUsernamesEnabled: true, + ourUsername: undefined, searchTerm: '+1(212) 555 5454', regionCode: 'US', selectedContacts: [], @@ -982,6 +984,7 @@ export function ChooseGroupMembersUsername(): JSX.Element { isShowingRecommendedGroupSizeModal: false, isShowingMaximumGroupSizeModal: false, isUsernamesEnabled: true, + ourUsername: undefined, searchTerm: '@signal', regionCode: 'US', selectedContacts: [], diff --git a/ts/components/conversation/conversation-details/AddGroupMembersModal.stories.tsx b/ts/components/conversation/conversation-details/AddGroupMembersModal.stories.tsx index 4ae78fb697..dc9f1f568d 100644 --- a/ts/components/conversation/conversation-details/AddGroupMembersModal.stories.tsx +++ b/ts/components/conversation/conversation-details/AddGroupMembersModal.stories.tsx @@ -64,6 +64,7 @@ const createProps = ( )} regionCode="US" getPreferredBadge={() => undefined} + ourUsername={undefined} theme={ThemeType.light} i18n={i18n} lookupConversationWithoutServiceId={lookupConversationWithoutServiceId} diff --git a/ts/components/conversation/conversation-details/AddGroupMembersModal/ChooseGroupMembersModal.tsx b/ts/components/conversation/conversation-details/AddGroupMembersModal/ChooseGroupMembersModal.tsx index 2d4125a246..4db439cce7 100644 --- a/ts/components/conversation/conversation-details/AddGroupMembersModal/ChooseGroupMembersModal.tsx +++ b/ts/components/conversation/conversation-details/AddGroupMembersModal/ChooseGroupMembersModal.tsx @@ -55,6 +55,7 @@ export type StatePropsType = { i18n: LocalizerType; theme: ThemeType; maxGroupSize: number; + ourUsername: string | undefined; searchTerm: string; selectedContacts: ReadonlyArray; @@ -85,6 +86,7 @@ export function ChooseGroupMembersModal({ i18n, maxGroupSize, onClose, + ourUsername, removeSelectedContact, searchTerm, selectedContacts, @@ -110,6 +112,7 @@ export function ChooseGroupMembersModal({ isUsernameVisible = Boolean(username) && + username !== ourUsername && candidateContacts.every(contact => contact.username !== username); } diff --git a/ts/components/conversation/conversation-details/ConversationDetails.stories.tsx b/ts/components/conversation/conversation-details/ConversationDetails.stories.tsx index 3bc57f7a34..9597b531ed 100644 --- a/ts/components/conversation/conversation-details/ConversationDetails.stories.tsx +++ b/ts/components/conversation/conversation-details/ConversationDetails.stories.tsx @@ -122,6 +122,7 @@ const createProps = ( theme={ThemeType.light} i18n={i18n} lookupConversationWithoutServiceId={makeFakeLookupConversationWithoutServiceId()} + ourUsername={undefined} showUserNotFoundModal={action('showUserNotFoundModal')} isUsernamesEnabled /> diff --git a/ts/components/leftPane/LeftPaneChooseGroupMembersHelper.tsx b/ts/components/leftPane/LeftPaneChooseGroupMembersHelper.tsx index c81d18309e..f539f49924 100644 --- a/ts/components/leftPane/LeftPaneChooseGroupMembersHelper.tsx +++ b/ts/components/leftPane/LeftPaneChooseGroupMembersHelper.tsx @@ -35,6 +35,7 @@ export type LeftPaneChooseGroupMembersPropsType = { isShowingRecommendedGroupSizeModal: boolean; isShowingMaximumGroupSizeModal: boolean; isUsernamesEnabled: boolean; + ourUsername: string | undefined; searchTerm: string; regionCode: string | undefined; selectedContacts: Array; @@ -74,6 +75,7 @@ export class LeftPaneChooseGroupMembersHelper extends LeftPaneHelper contact.username !== username); if (isUsernamesEnabled) { @@ -109,7 +112,11 @@ export class LeftPaneChooseGroupMembersHelper extends LeftPaneHelper contact.e164 === phoneNumber.e164); diff --git a/ts/state/smart/ChooseGroupMembersModal.tsx b/ts/state/smart/ChooseGroupMembersModal.tsx index 42fa3117e8..70515422d1 100644 --- a/ts/state/smart/ChooseGroupMembersModal.tsx +++ b/ts/state/smart/ChooseGroupMembersModal.tsx @@ -16,6 +16,7 @@ import { getUsernamesEnabled } from '../selectors/items'; import { getCandidateContactsForNewGroup, getConversationByIdSelector, + getMe, } from '../selectors/conversations'; import { getPreferredBadgeSelector } from '../selectors/badges'; @@ -54,6 +55,7 @@ const mapStateToProps = ( getPreferredBadge: getPreferredBadgeSelector(state), i18n: getIntl(state), theme: getTheme(state), + ourUsername: getMe(state).username, selectedContacts, lookupConversationWithoutServiceId, isUsernamesEnabled: getUsernamesEnabled(state), diff --git a/ts/state/smart/LeftPane.tsx b/ts/state/smart/LeftPane.tsx index d2818fc5ff..96db059bf4 100644 --- a/ts/state/smart/LeftPane.tsx +++ b/ts/state/smart/LeftPane.tsx @@ -58,6 +58,7 @@ import { getFilteredComposeGroups, getLeftPaneLists, getMaximumGroupSizeModalState, + getMe, getRecommendedGroupSizeModalState, getSelectedConversationId, getTargetedMessage, @@ -179,6 +180,7 @@ const getModeSpecificProps = ( OneTimeModalState.Showing, isShowingMaximumGroupSizeModal: getMaximumGroupSizeModalState(state) === OneTimeModalState.Showing, + ourUsername: getMe(state).username, regionCode: getRegionCode(state), searchTerm: getComposerConversationSearchTerm(state), selectedContacts: getComposeSelectedContacts(state), diff --git a/ts/test-node/components/leftPane/LeftPaneChooseGroupMembersHelper_test.ts b/ts/test-node/components/leftPane/LeftPaneChooseGroupMembersHelper_test.ts index 40d653d8f8..d3eda804d1 100644 --- a/ts/test-node/components/leftPane/LeftPaneChooseGroupMembersHelper_test.ts +++ b/ts/test-node/components/leftPane/LeftPaneChooseGroupMembersHelper_test.ts @@ -17,6 +17,7 @@ describe('LeftPaneChooseGroupMembersHelper', () => { isShowingRecommendedGroupSizeModal: false, isShowingMaximumGroupSizeModal: false, isUsernamesEnabled: true, + ourUsername: undefined, groupSizeRecommendedLimit: 22, groupSizeHardLimit: 33, searchTerm: '',