diff --git a/_locales/en/messages.json b/_locales/en/messages.json index f2c949fc40..3544e4b801 100644 --- a/_locales/en/messages.json +++ b/_locales/en/messages.json @@ -4066,10 +4066,6 @@ "message": "You cannot send messages to that group.", "description": "Shown in toast when you attempt to forward a message to an announcement only group" }, - "GroupV2--add--missing-capability": { - "message": "These people cannot be added to the group until they upgrade Signal.", - "description": "Shown in a confirmation dialog when members who cannot view announcement only group cannot be added" - }, "GroupV2--cannot-start-group-call": { "message": "Only admins of the group can start a call.", "description": "Shown in toast when a non-admin starts a group call in an announcements only group" diff --git a/ts/components/conversation/conversation-details/ConversationDetails.stories.tsx b/ts/components/conversation/conversation-details/ConversationDetails.stories.tsx index 4cd8466fe3..2deb1625ef 100644 --- a/ts/components/conversation/conversation-details/ConversationDetails.stories.tsx +++ b/ts/components/conversation/conversation-details/ConversationDetails.stories.tsx @@ -8,7 +8,6 @@ import { action } from '@storybook/addon-actions'; import { times } from 'lodash'; import { setupI18n } from '../../../util/setupI18n'; -import { CapabilityError } from '../../../types/errors'; import enMessages from '../../../../_locales/en/messages.json'; import type { Props } from './ConversationDetails'; import { ConversationDetails } from './ConversationDetails'; @@ -189,16 +188,6 @@ story.add('Group Links On', () => { return ; }); -story.add('Group add with missing capabilities', () => ( - { - throw new CapabilityError('stories'); - }} - /> -)); - story.add('1:1', () => ( )); diff --git a/ts/components/conversation/conversation-details/ConversationDetails.tsx b/ts/components/conversation/conversation-details/ConversationDetails.tsx index 4c8978f777..4d74f69e20 100644 --- a/ts/components/conversation/conversation-details/ConversationDetails.tsx +++ b/ts/components/conversation/conversation-details/ConversationDetails.tsx @@ -16,7 +16,6 @@ import { getMutedUntilText } from '../../../util/getMutedUntilText'; import type { LocalizerType, ThemeType } from '../../../types/Util'; import type { MediaItemType } from '../../../types/MediaItem'; import type { BadgeType } from '../../../badges/types'; -import { CapabilityError } from '../../../types/errors'; import { missingCaseError } from '../../../util/missingCaseError'; import { DisappearingTimerSelect } from '../../DisappearingTimerSelect'; @@ -166,8 +165,6 @@ export const ConversationDetails: React.ComponentType = ({ useState(RequestState.Inactive); const [addGroupMembersRequestState, setAddGroupMembersRequestState] = useState(RequestState.Inactive); - const [membersMissingCapability, setMembersMissingCapability] = - useState(false); if (conversation === undefined) { throw new Error('ConversationDetails rendered without a conversation'); @@ -260,12 +257,7 @@ export const ConversationDetails: React.ComponentType = ({ setModalState(ModalState.NothingOpen); setAddGroupMembersRequestState(RequestState.Inactive); } catch (err) { - if (err instanceof CapabilityError) { - setMembersMissingCapability(true); - setAddGroupMembersRequestState(RequestState.InactiveWithError); - } else { - setAddGroupMembersRequestState(RequestState.InactiveWithError); - } + setAddGroupMembersRequestState(RequestState.InactiveWithError); } }} onClose={() => { @@ -317,16 +309,6 @@ export const ConversationDetails: React.ComponentType = ({ return (
- {membersMissingCapability && ( - setMembersMissingCapability(false)} - > - {i18n('GroupV2--add--missing-capability')} - - )} - ): Promise { - if (this.get('announcementsOnly')) { - const isEveryMemberCapable = conversationIds.every(conversationId => { - const model = window.ConversationController.get(conversationId); - return Boolean(model?.get('capabilities')?.announcementGroup); - }); - if (!isEveryMemberCapable) { - throw new CapabilityError( - 'addMembersV2: some or all members need to upgrade.' - ); - } - } - await this.modifyGroupV2({ name: 'addMembersV2', createGroupChange: () => @@ -3603,10 +3572,7 @@ export class ConversationModel extends window.Backbone return false; } - const members = getConversationMembers(this.attributes); - return members.every(conversationAttrs => - Boolean(conversationAttrs.capabilities?.announcementGroup) - ); + return true; } getMemberIds(): Array { diff --git a/ts/types/errors.ts b/ts/types/errors.ts index 5826026742..4c1f7234b7 100644 --- a/ts/types/errors.ts +++ b/ts/types/errors.ts @@ -17,6 +17,4 @@ export function toLogFormat(error: unknown): string { return String(error); } -export class CapabilityError extends Error {} - export class ProfileDecryptError extends Error {}