// Copyright 2022 Signal Messenger, LLC // SPDX-License-Identifier: AGPL-3.0-only import React from 'react'; import { useSelector } from 'react-redux'; import type { LocalizerType } from '../../types/Util'; import type { StateType } from '../reducer'; import type { PropsType as SmartStoryCreatorPropsType } from './StoryCreator'; import { SmartStoryCreator } from './StoryCreator'; import { Stories } from '../../components/Stories'; import { getMe } from '../selectors/conversations'; import { getIntl } from '../selectors/user'; import { getPreferredLeftPaneWidth } from '../selectors/items'; import { getStories } from '../selectors/stories'; import { saveAttachment } from '../../util/saveAttachment'; import { useConversationsActions } from '../ducks/conversations'; import { useGlobalModalActions } from '../ducks/globalModals'; import { useStoriesActions } from '../ducks/stories'; function renderStoryCreator({ onClose, }: SmartStoryCreatorPropsType): JSX.Element { return ; } export function SmartStories(): JSX.Element | null { const storiesActions = useStoriesActions(); const { showConversation, toggleHideStories } = useConversationsActions(); const { toggleForwardMessageModal } = useGlobalModalActions(); const i18n = useSelector(getIntl); const isShowingStoriesView = useSelector( (state: StateType) => state.stories.isShowingStoriesView ); const preferredWidthFromStorage = useSelector( getPreferredLeftPaneWidth ); const { hiddenStories, myStories, stories } = useSelector(getStories); const me = useSelector(getMe); if (!isShowingStoriesView) { return null; } return ( { toggleForwardMessageModal(storyId); }} onSaveStory={story => { if (story.attachment) { saveAttachment(story.attachment, story.timestamp); } }} preferredWidthFromStorage={preferredWidthFromStorage} renderStoryCreator={renderStoryCreator} showConversation={showConversation} stories={stories} toggleHideStories={toggleHideStories} {...storiesActions} /> ); }