diff --git a/ts/components/SendStoryModal.tsx b/ts/components/SendStoryModal.tsx index e8d6ead3c1..e578bcfd60 100644 --- a/ts/components/SendStoryModal.tsx +++ b/ts/components/SendStoryModal.tsx @@ -11,6 +11,13 @@ import type { ConversationType } from '../state/ducks/conversations'; import type { LocalizerType } from '../types/Util'; import type { PreferredBadgeSelectorType } from '../state/selectors/badges'; import type { PropsType as StoriesSettingsModalPropsType } from './StoriesSettingsModal'; +import { + getListViewers, + DistributionListSettingsModal, + EditDistributionListModal, + EditMyStoriesPrivacy, + Page as StoriesSettingsPage, +} from './StoriesSettingsModal'; import type { StoryDistributionListWithMembersDataType } from '../types/Stories'; import type { UUIDStringType } from '../types/UUID'; import { Alert } from './Alert'; @@ -19,12 +26,7 @@ import { Button, ButtonSize, ButtonVariant } from './Button'; import { Checkbox } from './Checkbox'; import { ConfirmationDialog } from './ConfirmationDialog'; import { ContextMenu } from './ContextMenu'; -import { - DistributionListSettingsModal, - EditDistributionListModal, - EditMyStoriesPrivacy, - Page as StoriesSettingsPage, -} from './StoriesSettingsModal'; + import { MY_STORIES_ID, getStoryDistributionListName } from '../types/Stories'; import type { RenderModalPage, ModalPropsType } from './Modal'; import { PagedModal, ModalPage } from './Modal'; @@ -113,22 +115,6 @@ function getKeyForMyStoryType(list: StoryDistributionListWithMembersDataType) { return 'StoriesSettings__mine__all--label'; } -export function getListViewers( - list: StoryDistributionListWithMembersDataType, - i18n: LocalizerType, - signalConnections: Array -): string { - let memberCount = list.members.length; - - if (list.id === MY_STORIES_ID && list.isBlockList) { - memberCount = list.isBlockList - ? signalConnections.length - list.members.length - : signalConnections.length; - } - - return i18n('icu:StoriesSettings__viewers', { count: memberCount }); -} - export const SendStoryModal = ({ draftAttachment, candidateConversations, diff --git a/ts/components/StoriesSettingsModal.tsx b/ts/components/StoriesSettingsModal.tsx index 7a22f8d69d..ca98654e3f 100644 --- a/ts/components/StoriesSettingsModal.tsx +++ b/ts/components/StoriesSettingsModal.tsx @@ -37,7 +37,6 @@ import { asyncShouldNeverBeCalled, } from '../util/shouldNeverBeCalled'; import { useConfirmDiscard } from '../hooks/useConfirmDiscard'; -import { getListViewers } from './SendStoryModal'; export type PropsType = { candidateConversations: Array; @@ -94,6 +93,22 @@ const modalCommonProps: Pick = moduleClassName: 'StoriesSettingsModal__modal', }; +export function getListViewers( + list: StoryDistributionListWithMembersDataType, + i18n: LocalizerType, + signalConnections: Array +): string { + let memberCount = list.members.length; + + if (list.id === MY_STORIES_ID && list.isBlockList) { + memberCount = list.isBlockList + ? signalConnections.length - list.members.length + : signalConnections.length; + } + + return i18n('icu:StoriesSettings__viewers', { count: memberCount }); +} + type DistributionListItemProps = { i18n: LocalizerType; distributionList: StoryDistributionListWithMembersDataType;