// Copyright 2021 Signal Messenger, LLC // SPDX-License-Identifier: AGPL-3.0-only import React from 'react'; import { action } from '@storybook/addon-actions'; import type { Meta } from '@storybook/react'; import type { NavTabsProps } from './NavTabs'; import { NavTabs } from './NavTabs'; import { NavTab } from '../types/Nav'; import { getDefaultConversation } from '../test-helpers/getDefaultConversation'; import { ThemeType } from '../types/Util'; const { i18n } = window.SignalContext; const createProps = ( overrideProps: Partial = {} ): NavTabsProps => ({ badge: overrideProps.badge, hasFailedStorySends: Boolean(overrideProps.hasFailedStorySends), hasPendingUpdate: Boolean(overrideProps.hasPendingUpdate), i18n, me: getDefaultConversation(), navTabsCollapsed: Boolean(overrideProps.navTabsCollapsed), onChangeLocation: action('onChangeLocation'), onDismissProfileMovedModal: action('onDismissProfileMovedModal'), onToggleNavTabsCollapse: action('onToggleNavTabsCollapse'), profileMovedModalNeeded: false, renderCallsTab: () =>
Calls Tab goes here
, renderChatsTab: () =>
Chats Tab goes here
, renderStoriesTab: () =>
Stories Tab goes here
, renderSettingsTab: () =>
Settings Tab goes here
, selectedNavTab: overrideProps.selectedNavTab ?? NavTab.Chats, shouldShowProfileIcon: Boolean(overrideProps.shouldShowProfileIcon), storiesEnabled: Boolean(overrideProps.storiesEnabled), theme: overrideProps.theme ?? ThemeType.light, unreadCallsCount: overrideProps.unreadCallsCount ?? 0, unreadConversationsStats: overrideProps.unreadConversationsStats ?? { unreadCount: 0, unreadMentionsCount: 0, markedUnread: false, }, unreadStoriesCount: overrideProps.unreadStoriesCount ?? 0, }); export default { title: 'Components/NavTabs', } satisfies Meta; export function HasPendingUpdate(): JSX.Element { return ( ); }